68 lines
4.0 MiB
68 lines
4.0 MiB
|
|
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
|
|
<title>TIC-80 tiny computer</title>
|
|
|
|
<style type="text/css">
|
|
.modal{display:none;position:fixed;z-index:1;padding-top:100px;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:#000;background-color:rgba(0,0,0,.4)}.modal-content{position:relative;background-color:#fefefe;margin:auto;padding:2px 16px;border:1px solid #888;width:500px;box-shadow:0 4px 8px 0 rgba(0,0,0,.2),0 6px 20px 0 rgba(0,0,0,.19);-webkit-animation-name:animatetop;-webkit-animation-duration:.4s;animation-name:animatetop;animation-duration:.4s}@keyframes animatetop{from{top:-300px;opacity:0}to{top:0;opacity:1}}.close{color:#000;float:right;font-size:28px;font-weight:700}.close:focus,.close:hover{color:#000;text-decoration:none;cursor:pointer}
|
|
</style>
|
|
</head>
|
|
<body style="margin:0; padding:0;">
|
|
|
|
<div>
|
|
<canvas style="margin: 0 auto; display: block;" id="canvas" oncontextmenu="event.preventDefault()" onmousedown="window.focus()"></canvas>
|
|
</div>
|
|
|
|
<div id="add-modal" class="modal">
|
|
<div class="modal-content">
|
|
<span class="close">×</span>
|
|
<p>Select a file to add to the computer</p>
|
|
<p><input type="file" id="upload-input"></input></p>
|
|
</div>
|
|
</div>
|
|
|
|
<script type="text/javascript">
|
|
var Module = {canvas: document.getElementById('canvas')};
|
|
</script>
|
|
|
|
<script type='text/javascript'>
|
|
var cartridge = [120,218,165,84,205,110,211,64,16,110,197,143,20,171,7,14,28,57,172,66,15,54,217,168,241,218,109,126,36,87,72,109,129,162,82,164,182,23,84,21,105,99,47,233,70,137,109,236,117,75,85,229,216,3,15,128,4,71,174,229,13,56,114,68,2,161,10,245,128,128,71,128,55,0,246,199,118,108,210,2,18,171,196,179,187,243,205,206,124,51,179,59,125,115,234,175,227,75,113,12,79,213,191,48,46,197,151,167,234,117,192,40,27,144,14,224,210,5,110,48,12,35,18,199,52,240,53,174,194,9,219,13,162,14,32,251,97,132,25,35,114,211,35,177,203,225,0,131,46,142,203,54,128,237,82,191,119,32,80,177,27,209,144,117,192,32,193,98,73,253,48,97,192,195,12,131,122,93,163,126,224,28,154,22,52,23,160,53,15,109,249,69,8,90,77,56,111,66,155,239,180,160,221,134,150,5,45,27,46,52,161,221,148,155,77,137,228,191,150,156,55,97,179,13,219,237,145,38,206,95,38,238,0,71,4,236,225,136,226,238,128,196,194,77,204,48,35,14,146,17,58,135,35,16,244,248,87,194,55,89,192,193,133,160,30,5,17,72,98,2,186,7,192,139,240,190,94,149,186,170,33,142,17,58,234,152,16,32,27,120,129,86,9,122,219,116,199,225,28,184,208,136,239,201,19,151,10,89,16,54,137,239,50,49,207,178,163,27,90,165,239,152,90,37,63,173,37,15,171,8,192,118,127,199,209,213,129,53,41,106,102,54,65,59,198,156,197,97,212,161,53,33,251,78,191,198,79,17,110,165,235,220,17,151,5,87,52,115,213,23,174,154,202,149,242,224,164,30,249,198,144,122,142,158,46,107,74,114,207,198,28,202,192,124,53,6,112,116,81,133,114,149,136,118,172,84,129,230,1,242,220,220,142,112,184,75,221,184,148,24,153,102,158,101,17,236,35,81,10,199,73,147,206,187,136,119,90,69,165,107,156,47,222,32,192,82,68,132,133,172,194,162,137,90,18,174,150,142,88,114,175,32,14,35,221,132,253,27,173,122,11,74,141,81,176,226,225,150,237,4,203,9,75,152,106,74,150,232,119,75,116,134,101,45,181,69,202,86,84,76,84,78,100,163,66,6,49,201,233,6,9,251,119,190,170,120,99,247,105,49,207,98,172,84,70,209,176,196,57,47,237,36,233,76,85,54,70,19,198,231,240,206,123,246,207,196,179,78,37,222,121,228,91,99,226,178,199,138,204,211,141,44,0,1,171,140,25,164,90,25,193,100,8,124,206,34,236,18,189,186,178,177,113,127,163,3,86,253,61,60,160,158,108,71,48,12,60,82,53,198,24,22,29,168,71,2,2,85,43,46,35,80,136,94,96,201,19,202,196,149,43,118,252,38,195,17,75,66,209,240,133,91,89,186,162,2,118,15,83,31,172,5,65,88,186,25,91,171,75,226,60,119,16,235,166,165,174,71,151,249,122,195,80,244,213,171,102,42,234,169,14,149,116,168,164,51,75,186,70,174,83,107,190,145,86,64,189,123,101,114,105,213,82,168,89,134,166,237,59,1,67,101,88,250,146,230,9,170,44,78,253,215,184,112,81,107,168,217,79,62,50,121,5,109,237,61,127,253,249,199,247,119,175,158,246,86,174,79,103,235,76,206,112,155,171,51,215,150,103,237,134,61,92,191,187,126,180,214,176,201,236,135,91,119,146,199,248,193,232,253,201,8,30,61,123,57,60,134,39,199,47,134,111,222,126,250,248,240,235,183,211,95,73,71,41,216,];
|
|
var Module=typeof Module!=="undefined"?Module:{};window.addEventListener("keydown",(function(e){if(e.ctrlKey&&[82].indexOf(e.keyCode)>-1||[8,27,33,34,35,36,37,38,39,40,122,58,59,60,61,62].indexOf(e.keyCode)>-1)e.preventDefault()}),false);Module.saveAs=Module.saveAs||(function(e){"use strict";if(typeof e==="undefined"||typeof navigator!=="undefined"&&/MSIE [1-9]\./.test(navigator.userAgent)){return}var t=e.document,n=(function(){return e.URL||e.webkitURL||e}),r=t.createElementNS("http://www.w3.org/1999/xhtml","a"),o="download"in r,i=(function(e){var t=new MouseEvent("click");e.dispatchEvent(t)}),a=/constructor/i.test(e.HTMLElement),f=/CriOS\/[\d]+/.test(navigator.userAgent),u=(function(t){(e.setImmediate||e.setTimeout)((function(){throw t}),0)}),d="application/octet-stream",s=1e3*40,c=(function(e){var t=(function(){if(typeof e==="string"){n().revokeObjectURL(e)}else{e.remove()}});setTimeout(t,s)}),l=(function(e,t,n){t=[].concat(t);var r=t.length;while(r--){var o=e["on"+t[r]];if(typeof o==="function"){try{o.call(e,n||e)}catch(i){u(i)}}}}),p=(function(e){if(/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)){return new Blob([String.fromCharCode(65279),e],{type:e.type})}return e}),v=(function(t,u,s){if(!s){t=p(t)}var v=this,w=t.type,m=w===d,y,h=(function(){l(v,"writestart progress write writeend".split(" "))}),S=(function(){if((f||m&&a)&&e.FileReader){var r=new FileReader;r.onloadend=(function(){var t=f?r.result:r.result.replace(/^data:[^;]*;/,"data:attachment/file;");var n=e.open(t,"_blank");if(!n)e.location.href=t;t=undefined;v.readyState=v.DONE;h()});r.readAsDataURL(t);v.readyState=v.INIT;return}if(!y){y=n().createObjectURL(t)}if(m){e.location.href=y}else{var o=e.open(y,"_blank");if(!o){e.location.href=y}}v.readyState=v.DONE;h();c(y)});v.readyState=v.INIT;if(o){y=n().createObjectURL(t);setTimeout((function(){r.href=y;r.download=u;i(r);h();c(y);v.readyState=v.DONE}));return}S()}),w=v.prototype,m=(function(e,t,n){return new v(e,t||e.name||"download",n)});if(typeof navigator!=="undefined"&&navigator.msSaveOrOpenBlob){return(function(e,t,n){t=t||e.name||"download";if(!n){e=p(e)}return navigator.msSaveOrOpenBlob(e,t)})}w.abort=(function(){});w.readyState=w.INIT=0;w.WRITING=1;w.DONE=2;w.error=w.onwritestart=w.onprogress=w.onwrite=w.onabort=w.onerror=w.onwriteend=null;return m})(typeof self!=="undefined"&&self||typeof window!=="undefined"&&window||this.content);if(typeof module!=="undefined"&&module.exports){module.exports.saveAs=saveAs}else if(typeof define!=="undefined"&&define!==null&&define.amd!==null){define([],(function(){return saveAs}))}Module.showAddPopup=(function(callback){var modal=document.getElementById("add-modal");var span=document.getElementsByClassName("close")[0];modal.style.display="block";function cancel(){modal.style.display="none";callback(null,null)}span.onclick=cancel;window.onclick=(function(event){if(event.target==modal)cancel()});var uploadInput=document.getElementById("upload-input");uploadInput.onchange=(function(){var file=uploadInput.files[0];if(!file)return;var reader=new FileReader;reader.onload=(function(event){var rom=new Uint8Array(event.target.result);callback(file.name,rom);uploadInput.value="";modal.style.display="none"});reader.readAsArrayBuffer(file)})});var moduleOverrides={};var key;for(key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=false;var ENVIRONMENT_IS_WORKER=false;var ENVIRONMENT_IS_NODE=false;var ENVIRONMENT_IS_SHELL=false;if(Module["ENVIRONMENT"]){if(Module["ENVIRONMENT"]==="WEB"){ENVIRONMENT_IS_WEB=true}else if(Module["ENVIRONMENT"]==="WORKER"){ENVIRONMENT_IS_WORKER=true}else if(Module["ENVIRONMENT"]==="NODE"){ENVIRONMENT_IS_NODE=true}else if(Module["ENVIRONMENT"]==="SHELL"){ENVIRONMENT_IS_SHELL=true}else{throw new Error("The provided Module['ENVIRONMENT'] value is not valid. It must be one of: WEB|WORKER|NODE|SHELL.")}}else{ENVIRONMENT_IS_WEB=typeof window==="object";ENVIRONMENT_IS_WORKER=typeof importScripts==="function";ENVIRONMENT_IS_NODE=typeof process==="object"&&typeof require==="function"&&!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_WORKER;ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER}if(ENVIRONMENT_IS_NODE){if(!Module["print"])Module["print"]=console.log;if(!Module["printErr"])Module["printErr"]=console.warn;var nodeFS;var nodePath;Module["read"]=function shell_read(filename,binary){var ret;ret=tryParseAsDataURI(filename);if(!ret){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);ret=nodeFS["readFileSync"](filename)}return binary?ret:ret.toString()};Module["readBinary"]=function readBinary(filename){var ret=Module["read"](filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};if(!Module["thisProgram"]){if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}else{Module["thisProgram"]="unknown-program"}}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));process["on"]("unhandledRejection",(function(reason,p){process["exit"](1)}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(!Module["print"])Module["print"]=print;if(typeof printErr!="undefined")Module["printErr"]=printErr;if(typeof read!="undefined"){Module["read"]=function shell_read(f){var data=tryParseAsDataURI(f);if(data){return intArrayToString(data)}return read(f)}}else{Module["read"]=function shell_read(){throw"no read() available"}}Module["readBinary"]=function readBinary(f){var data;data=tryParseAsDataURI(f);if(data){return data}if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof quit==="function"){Module["quit"]=(function(status,toThrow){quit(status)})}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){Module["read"]=function shell_read(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText}catch(err){var data=tryParseAsDataURI(url);if(data){return intArrayToString(data)}throw err}};if(ENVIRONMENT_IS_WORKER){Module["readBinary"]=function readBinary(url){try{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}catch(err){var data=tryParseAsDataURI(url);if(data){return data}throw err}}}Module["readAsync"]=function readAsync(url,onload,onerror){var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=function xhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}var data=tryParseAsDataURI(url);if(data){onload(data.buffer);return}onerror()};xhr.onerror=onerror;xhr.send(null)};if(typeof arguments!="undefined"){Module["arguments"]=arguments}if(typeof console!=="undefined"){if(!Module["print"])Module["print"]=function shell_print(x){console.log(x)};if(!Module["printErr"])Module["printErr"]=function shell_printErr(x){console.warn(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(typeof Module["setWindowTitle"]==="undefined"){Module["setWindowTitle"]=(function(title){document.title=title})}}else{throw new Error("Unknown runtime environment. Where are we?")}if(!Module["print"]){Module["print"]=(function(){})}if(!Module["printErr"]){Module["printErr"]=Module["print"]}if(!Module["arguments"]){Module["arguments"]=[]}if(!Module["thisProgram"]){Module["thisProgram"]="./this.program"}if(!Module["quit"]){Module["quit"]=(function(status,toThrow){throw toThrow})}Module.print=Module["print"];Module.printErr=Module["printErr"];Module["preRun"]=[];Module["postRun"]=[];for(key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=undefined;var Runtime={setTempRet0:(function(value){tempRet0=value;return value}),getTempRet0:(function(){return tempRet0}),stackSave:(function(){return STACKTOP}),stackRestore:(function(stackTop){STACKTOP=stackTop}),getNativeTypeSize:(function(type){switch(type){case"i1":case"i8":return 1;case"i16":return 2;case"i32":return 4;case"i64":return 8;case"float":return 4;case"double":return 8;default:{if(type[type.length-1]==="*"){return Runtime.QUANTUM_SIZE}else if(type[0]==="i"){var bits=parseInt(type.substr(1));assert(bits%8===0);return bits/8}else{return 0}}}}),getNativeFieldSize:(function(type){return Math.max(Runtime.getNativeTypeSize(type),Runtime.QUANTUM_SIZE)}),STACK_ALIGN:16,prepVararg:(function(ptr,type){if(type==="double"||type==="i64"){if(ptr&7){assert((ptr&7)===4);ptr+=4}}else{assert((ptr&3)===0)}return ptr}),getAlignSize:(function(type,size,vararg){if(!vararg&&(type=="i64"||type=="double"))return 8;if(!type)return Math.min(size,8);return Math.min(size||(type?Runtime.getNativeFieldSize(type):0),Runtime.QUANTUM_SIZE)}),dynCall:(function(sig,ptr,args){if(args&&args.length){return Module["dynCall_"+sig].apply(null,[ptr].concat(args))}else{return Module["dynCall_"+sig].call(null,ptr)}}),functionPointers:[],addFunction:(function(func){for(var i=0;i<Runtime.functionPointers.length;i++){if(!Runtime.functionPointers[i]){Runtime.functionPointers[i]=func;return 2*(1+i)}}throw"Finished up all reserved function pointers. Use a higher value for RESERVED_FUNCTION_POINTERS."}),removeFunction:(function(index){Runtime.functionPointers[(index-2)/2]=null}),warnOnce:(function(text){if(!Runtime.warnOnce.shown)Runtime.warnOnce.shown={};if(!Runtime.warnOnce.shown[text]){Runtime.warnOnce.shown[text]=1;Module.printErr(text)}}),funcWrappers:{},getFuncWrapper:(function(func,sig){if(!func)return;assert(sig);if(!Runtime.funcWrappers[sig]){Runtime.funcWrappers[sig]={}}var sigCache=Runtime.funcWrappers[sig];if(!sigCache[func]){if(sig.length===1){sigCache[func]=function dynCall_wrapper(){return Runtime.dynCall(sig,func)}}else if(sig.length===2){sigCache[func]=function dynCall_wrapper(arg){return Runtime.dynCall(sig,func,[arg])}}else{sigCache[func]=function dynCall_wrapper(){return Runtime.dynCall(sig,func,Array.prototype.slice.call(arguments))}}}return sigCache[func]}),getCompilerSetting:(function(name){throw"You must build with -s RETAIN_COMPILER_SETTINGS=1 for Runtime.getCompilerSetting or emscripten_get_compiler_setting to work"}),stackAlloc:(function(size){var ret=STACKTOP;STACKTOP=STACKTOP+size|0;STACKTOP=STACKTOP+15&-16;return ret}),staticAlloc:(function(size){var ret=STATICTOP;STATICTOP=STATICTOP+size|0;STATICTOP=STATICTOP+15&-16;return ret}),dynamicAlloc:(function(size){var ret=HEAP32[DYNAMICTOP_PTR>>2];var end=(ret+size+15|0)&-16;HEAP32[DYNAMICTOP_PTR>>2]=end;if(end>=TOTAL_MEMORY){var success=enlargeMemory();if(!success){HEAP32[DYNAMICTOP_PTR>>2]=ret;return 0}}return ret}),alignMemory:(function(size,quantum){var ret=size=Math.ceil(size/(quantum?quantum:16))*(quantum?quantum:16);return ret}),makeBigInt:(function(low,high,unsigned){var ret=unsigned?+(low>>>0)+ +(high>>>0)*+4294967296:+(low>>>0)+ +(high|0)*+4294967296;return ret}),GLOBAL_BASE:8,QUANTUM_SIZE:4,__dummy__:0};Module["Runtime"]=Runtime;var ABORT=0;var EXITSTATUS=0;function assert(condition,text){if(!condition){abort("Assertion failed: "+text)}}function getCFunc(ident){var func=Module["_"+ident];assert(func,"Cannot call unknown function "+ident+", make sure it is exported");return func}var JSfuncs={"stackSave":(function(){Runtime.stackSave()}),"stackRestore":(function(){Runtime.stackRestore()}),"arrayToC":(function(arr){var ret=Runtime.stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=Runtime.stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};function ccall(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;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){Runtime.stackRestore(stack)}return ret}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)}}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=[typeof _malloc==="function"?_malloc:Runtime.staticAlloc,Runtime.stackAlloc,Runtime.staticAlloc,Runtime.dynamicAlloc][allocator===undefined?ALLOC_STATIC:allocator](Math.max(size,singleType?1:types.length))}if(zeroinit){var stop;ptr=ret;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr<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}function getMemory(size){if(!staticSealed)return Runtime.staticAlloc(size);if(!runtimeInitialized)return Runtime.dynamicAlloc(size);return _malloc(size)}Module["getMemory"]=getMemory;function Pointer_stringify(ptr,length){if(length===0||!ptr)return"";var hasUtf=0;var t;var i=0;while(1){t=HEAPU8[ptr+i>>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return UTF8ToString(ptr)}Module["Pointer_stringify"]=Pointer_stringify;var UTF8Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(u8Array,idx){var endPtr=idx;while(u8Array[endPtr])++endPtr;if(endPtr-idx>16&&u8Array.subarray&&UTF8Decoder){return UTF8Decoder.decode(u8Array.subarray(idx,endPtr))}else{var u0,u1,u2,u3,u4,u5;var str="";while(1){u0=u8Array[idx++];if(!u0)return str;if(!(u0&128)){str+=String.fromCharCode(u0);continue}u1=u8Array[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}u2=u8Array[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u3=u8Array[idx++]&63;if((u0&248)==240){u0=(u0&7)<<18|u1<<12|u2<<6|u3}else{u4=u8Array[idx++]&63;if((u0&252)==248){u0=(u0&3)<<24|u1<<18|u2<<12|u3<<6|u4}else{u5=u8Array[idx++]&63;u0=(u0&1)<<30|u1<<24|u2<<18|u3<<12|u4<<6|u5}}}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}}}function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}function lengthBytesUTF8(str){var len=0;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}var HEAP,buffer,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateGlobalBufferViews(){Module["HEAP8"]=HEAP8=new Int8Array(buffer);Module["HEAP16"]=HEAP16=new Int16Array(buffer);Module["HEAP32"]=HEAP32=new Int32Array(buffer);Module["HEAPU8"]=HEAPU8=new Uint8Array(buffer);Module["HEAPU16"]=HEAPU16=new Uint16Array(buffer);Module["HEAPU32"]=HEAPU32=new Uint32Array(buffer);Module["HEAPF32"]=HEAPF32=new Float32Array(buffer);Module["HEAPF64"]=HEAPF64=new Float64Array(buffer)}var STATIC_BASE,STATICTOP,staticSealed;var STACK_BASE,STACKTOP,STACK_MAX;var DYNAMIC_BASE,DYNAMICTOP_PTR;STATIC_BASE=STATICTOP=STACK_BASE=STACKTOP=STACK_MAX=DYNAMIC_BASE=DYNAMICTOP_PTR=0;staticSealed=false;function abortOnCannotGrowMemory(){abort("Cannot enlarge memory arrays. Either (1) compile with -s TOTAL_MEMORY=X with X higher than the current value "+TOTAL_MEMORY+", (2) compile with -s ALLOW_MEMORY_GROWTH=1 which allows increasing the size at runtime but prevents some optimizations, (3) set Module.TOTAL_MEMORY to a higher value before the program runs, or (4) if you want malloc to return NULL (0) instead of this abort, compile with -s ABORTING_MALLOC=0 ")}function enlargeMemory(){abortOnCannotGrowMemory()}var TOTAL_STACK=Module["TOTAL_STACK"]||5242880;var TOTAL_MEMORY=Module["TOTAL_MEMORY"]||67108864;if(TOTAL_MEMORY<TOTAL_STACK)Module.printErr("TOTAL_MEMORY should be larger than TOTAL_STACK, was "+TOTAL_MEMORY+"! (TOTAL_STACK="+TOTAL_STACK+")");if(Module["buffer"]){buffer=Module["buffer"]}else{{buffer=new ArrayBuffer(TOTAL_MEMORY)}}updateGlobalBufferViews();function getTotalMemory(){return TOTAL_MEMORY}HEAP32[0]=1668509029;HEAP16[1]=25459;if(HEAPU8[2]!==115||HEAPU8[3]!==99)throw"Runtime error: expected the system to be little-endian!";Module["HEAP"]=HEAP;Module["buffer"]=buffer;Module["HEAP8"]=HEAP8;Module["HEAP16"]=HEAP16;Module["HEAP32"]=HEAP32;Module["HEAPU8"]=HEAPU8;Module["HEAPU16"]=HEAPU16;Module["HEAPU32"]=HEAPU32;Module["HEAPF32"]=HEAPF32;Module["HEAPF64"]=HEAPF64;function callRuntimeCallbacks(callbacks){while(callbacks.length>0){var callback=callbacks.shift();if(typeof callback=="function"){callback();continue}var func=callback.func;if(typeof func==="number"){if(callback.arg===undefined){Module["dynCall_v"](func)}else{Module["dynCall_vi"](func,callback.arg)}}else{func(callback.arg===undefined?null:callback.arg)}}}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeExited=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function ensureInitRuntime(){if(runtimeInitialized)return;runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){callRuntimeCallbacks(__ATEXIT__);runtimeExited=true}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}function writeArrayToMemory(array,buffer){HEAP8.set(array,buffer)}Module["writeArrayToMemory"]=writeArrayToMemory;function writeAsciiToMemory(str,buffer,dontAddNull){for(var i=0;i<str.length;++i){HEAP8[buffer++>>0]=str.charCodeAt(i)}if(!dontAddNull)HEAP8[buffer>>0]=0}assert(Math["imul"]&&Math["fround"]&&Math["clz32"]&&Math["trunc"],"this is a legacy browser, build with LEGACY_VM_SUPPORT");var Math_abs=Math.abs;var Math_cos=Math.cos;var Math_sin=Math.sin;var Math_tan=Math.tan;var Math_acos=Math.acos;var Math_asin=Math.asin;var Math_atan=Math.atan;var Math_atan2=Math.atan2;var Math_exp=Math.exp;var Math_log=Math.log;var Math_sqrt=Math.sqrt;var Math_ceil=Math.ceil;var Math_floor=Math.floor;var Math_pow=Math.pow;var Math_imul=Math.imul;var Math_fround=Math.fround;var Math_round=Math.round;var Math_min=Math.min;var Math_clz32=Math.clz32;var Math_trunc=Math.trunc;var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}Module["addRunDependency"]=addRunDependency;function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}Module["removeRunDependency"]=removeRunDependency;Module["preloadedImages"]={};Module["preloadedAudios"]={};var memoryInitializer=null;var ASM_CONSTS=[(function($0,$1){alert(UTF8ToString($0)+"\n\n"+UTF8ToString($1))}),(function(){if(typeof cartridge!="undefined"&&cartridge.length){var ptr=Module._malloc(cartridge.length);Module.writeArrayToMemory(cartridge,ptr);return ptr}else return 0}),(function(){return cartridge.length}),(function($0){Module._free($0)}),(function($0,$1,$2){var name=Pointer_stringify($0);var blob=new Blob([HEAPU8.subarray($1,$1+$2)],{type:"application/octet-stream"});Module.saveAs(blob,name)}),(function($0,$1){Module.showAddPopup((function(filename,rom){if(filename==null||rom==null){Runtime.dynCall("viiiii",$0,[0,0,0,$1,0])}else{var filePtr=Module._malloc(filename.length+1);stringToUTF8(filename,filePtr,filename.length+1);var dataPtr=Module._malloc(rom.length);writeArrayToMemory(rom,dataPtr);Runtime.dynCall("viiiii",$0,[filePtr,dataPtr,rom.length,$1,0]);Module._free(filePtr);Module._free(dataPtr)}}))}),(function(){FS.syncfs((function(){}))}),(function($0,$1,$2){var dir="";Module.Pointer_stringify($0).split("/").forEach((function(val){if(val.length){dir+="/"+val;FS.mkdir(dir)}}));FS.mount(IDBFS,{},dir);FS.syncfs(true,(function(error){if(error)console.log(error);else Runtime.dynCall("vi",$1,[$2])}))}),(function(){return screen.width}),(function(){return screen.height}),(function($0){if(typeof Module["setWindowTitle"]!=="undefined"){Module["setWindowTitle"](Module["Pointer_stringify"]($0))}return 0}),(function($0,$1,$2){var w=$0;var h=$1;var pixels=$2;if(!Module["SDL2"])Module["SDL2"]={};var SDL2=Module["SDL2"];if(SDL2.ctxCanvas!==Module["canvas"]){SDL2.ctx=Module["createContext"](Module["canvas"],false,true);SDL2.ctxCanvas=Module["canvas"]}if(SDL2.w!==w||SDL2.h!==h||SDL2.imageCtx!==SDL2.ctx){SDL2.image=SDL2.ctx.createImageData(w,h);SDL2.w=w;SDL2.h=h;SDL2.imageCtx=SDL2.ctx}var data=SDL2.image.data;var src=pixels>>2;var dst=0;var num;if(typeof CanvasPixelArray!=="undefined"&&data instanceof CanvasPixelArray){num=data.length;while(dst<num){var val=HEAP32[src];data[dst]=val&255;data[dst+1]=val>>8&255;data[dst+2]=val>>16&255;data[dst+3]=255;src++;dst+=4}}else{if(SDL2.data32Data!==data){SDL2.data32=new Int32Array(data.buffer);SDL2.data8=new Uint8Array(data.buffer)}var data32=SDL2.data32;num=data32.length;data32.set(HEAP32.subarray(src,src+num));var data8=SDL2.data8;var i=3;var j=i+4*num;if(num%8==0){while(i<j){data8[i]=255;i=i+4|0;data8[i]=255;i=i+4|0;data8[i]=255;i=i+4|0;data8[i]=255;i=i+4|0;data8[i]=255;i=i+4|0;data8[i]=255;i=i+4|0;data8[i]=255;i=i+4|0;data8[i]=255;i=i+4|0}}else{while(i<j){data8[i]=255;i=i+4|0}}}SDL2.ctx.putImageData(SDL2.image,0,0);return 0}),(function($0,$1,$2){var w=$0;var h=$1;var pixels=$2;var canvas=document.createElement("canvas");canvas.width=w;canvas.height=h;var ctx=canvas.getContext("2d");var image=ctx.createImageData(w,h);var data=image.data;var src=pixels>>2;var dst=0;var num;if(typeof CanvasPixelArray!=="undefined"&&data instanceof CanvasPixelArray){num=data.length;while(dst<num){var val=HEAP32[src];data[dst]=val&255;data[dst+1]=val>>8&255;data[dst+2]=val>>16&255;data[dst+3]=val>>24&255;src++;dst+=4}}else{var data32=new Int32Array(data.buffer);num=data32.length;data32.set(HEAP32.subarray(src,src+num))}ctx.putImageData(image,0,0);var url="url("+canvas.toDataURL()+"), auto";var urlBuf=_malloc(url.length+1);stringToUTF8(url,urlBuf,url.length+1);return urlBuf}),(function($0){if(Module["canvas"]){Module["canvas"].style["cursor"]=Module["Pointer_stringify"]($0)}return 0}),(function(){if(Module["canvas"]){Module["canvas"].style["cursor"]="none"}}),(function(){if(typeof AudioContext!=="undefined"){return 1}else if(typeof webkitAudioContext!=="undefined"){return 1}return 0}),(function(){if(typeof navigator.mediaDevices!=="undefined"&&typeof navigator.mediaDevices.getUserMedia!=="undefined"){return 1}else if(typeof navigator.webkitGetUserMedia!=="undefined"){return 1}return 0}),(function($0){if(typeof SDL2==="undefined"){SDL2={}}if(!$0){SDL2.audio={}}else{SDL2.capture={}}if(!SDL2.audioContext){if(typeof AudioContext!=="undefined"){SDL2.audioContext=new AudioContext}else if(typeof webkitAudioContext!=="undefined"){SDL2.audioContext=new webkitAudioContext}}return SDL2.audioContext===undefined?-1:0}),(function(){return SDL2.audioContext.sampleRate}),(function($0,$1,$2,$3){var have_microphone=(function(stream){if(SDL2.capture.silenceTimer!==undefined){clearTimeout(SDL2.capture.silenceTimer);SDL2.capture.silenceTimer=undefined}SDL2.capture.mediaStreamNode=SDL2.audioContext.createMediaStreamSource(stream);SDL2.capture.scriptProcessorNode=SDL2.audioContext.createScriptProcessor($1,$0,1);SDL2.capture.scriptProcessorNode.onaudioprocess=(function(audioProcessingEvent){if(SDL2===undefined||SDL2.capture===undefined){return}audioProcessingEvent.outputBuffer.getChannelData(0).fill(0);SDL2.capture.currentCaptureBuffer=audioProcessingEvent.inputBuffer;Runtime.dynCall("vi",$2,[$3])});SDL2.capture.mediaStreamNode.connect(SDL2.capture.scriptProcessorNode);SDL2.capture.scriptProcessorNode.connect(SDL2.audioContext.destination);SDL2.capture.stream=stream});var no_microphone=(function(error){});SDL2.capture.silenceBuffer=SDL2.audioContext.createBuffer($0,$1,SDL2.audioContext.sampleRate);SDL2.capture.silenceBuffer.getChannelData(0).fill(0);var silence_callback=(function(){SDL2.capture.currentCaptureBuffer=SDL2.capture.silenceBuffer;Runtime.dynCall("vi",$2,[$3])});SDL2.capture.silenceTimer=setTimeout(silence_callback,$1/SDL2.audioContext.sampleRate*1e3);if(navigator.mediaDevices!==undefined&&navigator.mediaDevices.getUserMedia!==undefined){navigator.mediaDevices.getUserMedia({audio:true,video:false}).then(have_microphone).catch(no_microphone)}else if(navigator.webkitGetUserMedia!==undefined){navigator.webkitGetUserMedia({audio:true,video:false},have_microphone,no_microphone)}}),(function($0,$1,$2,$3){SDL2.audio.scriptProcessorNode=SDL2.audioContext["createScriptProcessor"]($1,0,$0);SDL2.audio.scriptProcessorNode["onaudioprocess"]=(function(e){if(SDL2===undefined||SDL2.audio===undefined){return}SDL2.audio.currentOutputBuffer=e["outputBuffer"];Runtime.dynCall("vi",$2,[$3])});SDL2.audio.scriptProcessorNode["connect"](SDL2.audioContext["destination"])}),(function($0){if($0){if(SDL2.capture.silenceTimer!==undefined){clearTimeout(SDL2.capture.silenceTimer)}if(SDL2.capture.stream!==undefined){var tracks=SDL2.capture.stream.getAudioTracks();for(var i=0;i<tracks.length;i++){SDL2.capture.stream.removeTrack(tracks[i])}SDL2.capture.stream=undefined}if(SDL2.capture.scriptProcessorNode!==undefined){SDL2.capture.scriptProcessorNode.onaudioprocess=(function(audioProcessingEvent){});SDL2.capture.scriptProcessorNode.disconnect();SDL2.capture.scriptProcessorNode=undefined}if(SDL2.capture.mediaStreamNode!==undefined){SDL2.capture.mediaStreamNode.disconnect();SDL2.capture.mediaStreamNode=undefined}if(SDL2.capture.silenceBuffer!==undefined){SDL2.capture.silenceBuffer=undefined}SDL2.capture=undefined}else{if(SDL2.audio.scriptProcessorNode!=undefined){SDL2.audio.scriptProcessorNode.disconnect();SDL2.audio.scriptProcessorNode=undefined}SDL2.audio=undefined}if(SDL2.audioContext!==undefined&&SDL2.audio===undefined&&SDL2.capture===undefined){SDL2.audioContext.close();SDL2.audioContext=undefined}}),(function($0,$1){var numChannels=SDL2.capture.currentCaptureBuffer.numberOfChannels;if(numChannels==1){var channelData=SDL2.capture.currentCaptureBuffer.getChannelData(0);if(channelData.length!=$1){throw"Web Audio capture buffer length mismatch! Destination size: "+channelData.length+" samples vs expected "+$1+" samples!"}for(var j=0;j<$1;++j){setValue($0+j*4,channelData[j],"float")}}else{for(var c=0;c<numChannels;++c){var channelData=SDL2.capture.currentCaptureBuffer.getChannelData(c);if(channelData.length!=$1){throw"Web Audio capture buffer length mismatch! Destination size: "+channelData.length+" samples vs expected "+$1+" samples!"}for(var j=0;j<$1;++j){setValue($0+(j*numChannels+c)*4,channelData[j],"float")}}}}),(function($0,$1){var numChannels=SDL2.audio.currentOutputBuffer["numberOfChannels"];for(var c=0;c<numChannels;++c){var channelData=SDL2.audio.currentOutputBuffer["getChannelData"](c);if(channelData.length!=$1){throw"Web Audio output buffer length mismatch! Destination size: "+channelData.length+" samples vs expected "+$1+" samples!"}for(var j=0;j<$1;++j){channelData[j]=HEAPF32[$0+(j*numChannels+c<<2)>>2]}}}),(function($0,$1){Module.printErr("bad name in getProcAddress: "+[Pointer_stringify($0),Pointer_stringify($1)])})];function _emscripten_asm_const_i(code){return ASM_CONSTS[code]()}function _emscripten_asm_const_iii(code,a0,a1){return ASM_CONSTS[code](a0,a1)}function _emscripten_asm_const_iiiii(code,a0,a1,a2,a3){return ASM_CONSTS[code](a0,a1,a2,a3)}function _emscripten_asm_const_ii(code,a0){return ASM_CONSTS[code](a0)}function _emscripten_asm_const_iiii(code,a0,a1,a2){return ASM_CONSTS[code](a0,a1,a2)}STATIC_BASE=Runtime.GLOBAL_BASE;STATICTOP=STATIC_BASE+337136;__ATINIT__.push();memoryInitializer="data:application/octet-stream;base64,AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAAQAAAP//////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABSAAAAUQAAAFAAAABPAAAAHQAAABsAAAAEAAAAFgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAAAAAAAHB/QBOVAAAklQAAN5UAAEeVAABXlQAAAwAAAAQAAAAFAAAABwAAAAgAAABplQAAdZUAAIOVAACOlQAAmZUAAPCtAAD5rQAA0xwFAAmuAACmlQAACAAAAAkAAAAGAAAABQAAAAUAAAAAAAAAAQAAAAIAAAADAAAABAAAAOCVAADtlQAA+5UAAAqWAAAYlgAARKwAABCAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAABAAAAAAAAACMAAAAAAEAAAQAAAAAAAAABAAAAAgAAACIAAAACAAAAAQAAADwAAAAiAAAAAAAAAAAAAAACAAAAAgAAACIqwAAAAAAAKqrAAABAAAAuasAAAAAAAC9qwAAAgAAAIIDBADOqwAA06sAAAMAAACtCAQAAAAAAOirAAAEAAAABlAEAAAAAAD4qwAABQAAAAKsAAAAAAAAB6wAAAYAAAARrAAAAAAAABWsAAAHAAAAplEEAAAAAAAlrAAACAAAADWsAAA5rAAAPKwAAAkAAABPrAAAAAAAAFKsAAAKAAAAY6wAAAAAAABprAAACwAAAHisAAAAAAAAfKwAAAwAAACFrAAAAAAAAImsAAANAAAAjAgEAAAAAACXrAAADgAAAJMIBAAAAAAAsqwAAA8AAADLrAAAAAAAAM+sAAAQAAAAIQMEAAAAAADirAAAEQAAAO+sAAAAAAAA9KwAABIAAADGWwQAAAAAAAetAAATAAAAlF0EAAAAAAAXrQAAFAAAADCtAAAAAAAANa0AABUAAABGrQAAAAAAAEutAAAWAAAA8K0AAPmtAADTHAUACa4AAByuAADwrQAA+a0AANMcBQAJrgAAHK4AAJyxAAClsQAAgAIAACW0AAAutAAAIAMAAE63AABYtwAAzAMAACS7AAAsuwAACAQAADS/AABAvwAAWxAAAJvPAAClzwAAAjUAAKcEAQCvBAEAYAEAAA8GAQAaBgEAERUAACsbAQA5GwEAtCQAANMcBQDTHAUACa4AAO0/AQDEQwEAzUMBANMcBQDcQwEA60MBAPCtAAD5rQAA0xwFAAmuAAAsRAEAAAAAAFhFAQDAPwAAX0UBAPA/AABnRQEA+D8AAHNFAQD5PwAAekUBAPs/AACIRQEA/D8AAJ9iBAAAQAAAlUUBAABgAACbRQEAAIAAAKNFAQCA/wAAp0UBAIT/AACwRQEAiP8AALZFAQCM/wAAn2IEAJz/AAC/RQEA5P8AAM9FAQDkAAEA2UUBAGQRAQDdRQEAZD4BAOxFAQD8PwEA+UUBAABAAQCfYgQAj0ABAIdAAQBAAwQAq0YBADwDBACtAwQABYMEAAgAAAAIAAAABAAAAAIAAAAAAAAABAAAAAIAAAABAAAAAQAAAAIAAAADAAAABAAAAAUAAAAGAAAABwAAADQAAAAMAAAACAAAAAQAAAA0AAAAWAAAAAgAAAAEAAAAEAAAADAAAAAEAAAACAAAAFwAAAAwAAAABAAAAAgAAAAIAAAACQAAAAoAAAALAAAATEwBAFpMAQBoTAEAc0wBAAwAAAANAAAADgAAAA8AAAAxTAEAO0wBAMZMAQC1TAEAEAAAABEAAAASAAAAEwAAAAAAAAABAAAAAAAAAP//////////AAAAAAEAAAAAAAAAAAAAAAIAAAAEAAAABQAAAAcAAAAJAAAACwAAAAEAAAADAAAA/////wYAAAAIAAAACgAAAIJNAQCITQEAj00BAJVNAQCcTQEAok0BAKhNAQCvTQEAtU0BALxNAQDCTQEAyU0BAFlNAQBeTQEAZU0BAGxNAQAhTwEAJE8BACdPAQAqTwEALU8BADBPAQAzTwEANk8BADlPAQA8TwEAP08BAEJPAQDpTgEA9k4BAAlPAQAUTwEAFAAAABUAAAAWAAAAFwAAADhYAQA/WAEARlgBAE5YAQBSWAEAWlgBAF9YAQBjWAEAvlgBAMtYAQDZWAEA51gBAEhZAQBUWQEAX1kBANMcBQBuWQEAGAAAABkAAAAaAAAAAAAAABsAAAAAAAAAAAAAAPAAAACIAAAA1AkAAAAAAAAKAAAABAAAAGzXBAAAAAAA5AkAAPQJAAAECgAAFAoAAAAAAAAKAAAACgAAAITXBAAAAAAACgAAAAoAAACI1wQAEP///wAAAAAKAAAAjNcEAAAAAAAKAAAACgAAAJDXBAA8CgAAAAAAAAoAAAAEAAAAVNcEAAAAAABMCgAAXAoAAGwKAAB8CgAACgAAAAAAAAAKAAAAhNcEAAoAAAAAAAAACgAAAIjXBAAAAAAAEP///woAAACM1wQACgAAAAAAAAAKAAAAkNcEAPQKAAAAAAAACgAAAAIAAAD8CgAAAAAAALwKAAAAAAAACgAAAAIAAADECgAAAAAAAGwKAAB8CgAA3AoAAAAAAAAKAAAAAgAAAGzXBAAAAAAA5AoAABQKAADwAAAAAAAAAAoAAACM1wQAHAsAAHwKAAAUCwAAAAAAAAoAAAACAAAAbNcEAAAAAAAECgAAFAoAAAAAAADwAAAACgAAAIzXBAD///////////////8AAA8A/////wEAAAAcAAAAHQAAAAEAAAAXAAAAAgAAAAEAAADmXwEA6V8BAAAAAAAAAAAAmWIEAIALAAAbAAAA7AsAACYAAAA4YgQAPmIEAOxfAQD3XwEA/l8BAEFiBACtCAQAA2ABAIEIBAAHYAEAgWIEAA9gAQBbCAQAUWIEAGsIBACTYgQAFGABAFViBAAdYAEAhwgEAKiOBABjYgQAImABAChgAQBmYgQAfQgEAC9gAQAQAwQAFAMEAB0DBADsXQQAIQMEACUDBAA6UwQAa4QEACkDBAAvAwQAMwMEADcDBAA8AwQAQAMEAEQDBABJAwQATgMEAFMDBABYAwQAXgMEAGQDBABrAwQAcgMEAHgDBAB9AwQAggMEAIcDBACMAwQAkgMEAJcDBACdAwQAoQMEAKgDBACtAwQAswMEALgDBAABgwQAvgMEAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAGAAAAAgAAAAEAAAADAAAAAwAAAAQAAAAFAAAABQAAAAUAAAAGAAAABQAAAAcAAAAJAAAACAAAAAEAAAAJAAAAAwAAAAoAAAAGAAAACwAAAAkAAAAMAAAAAgAAAA0AAAADAAAADgAAAAEAAAAPAAAAAgAAABAAAAABAAAAEQAAAAIAAAASAAAAAwAAABMAAAADAAAAFAAAAAIAAAAVAAAAAgAAABYAAAAAAAAAFwAAAAAAAAAYAAAACAAAABkAAAAAAAAAGgAAAAQAAAAbAAAABAAAABwAAAAHAAAAHQAAAA4AAAAeAAAABAAAAB8AAAAEAAAAIAAAAAMAAAAhAAAAAAAAACIAAAABAAAAIwAAAAMAAAADAAAAHgAAAB8AAAACAAAAGAAAAAQAAAABAAAAAgMEAAcDBAAKAwQABwMEAA0DBAD0DQAAFgAAAEwOAAAmAAAANGIEADhiBAA+YgQAQWIEAEZiBABNYgQAnK8EAFFiBABVYgQAXmIEAGNiBABmYgQAaWIEAG9iBABzYgQAd2IEAHpiBACBYgQAiGIEAEqxBACNYgQAk2IEABADBAAUAwQAHQMEAOxdBAAhAwQAJQMEADpTBABrhAQAKQMEAC8DBAAzAwQANwMEADwDBABAAwQARAMEAEkDBABOAwQAUwMEAFgDBABeAwQAZAMEAGsDBAByAwQAeAMEAH0DBACCAwQAhwMEAIwDBACSAwQAlwMEAJ0DBAChAwQAqAMEAK0DBACzAwQAuAMEAAGDBAC+AwQAAAAAAAAAAAAAAAAAJAAAACUAAAAmAAAAJwAAACgAAAApAAAAKgAAACsAAAAsAAAALQAAAC4AAAAvAAAAMAAAADEAAAAyAAAAMwAAADQAAAA1AAAANgAAADcAAAA4AAAAOQAAADoAAAA7AAAAPAAAAD0AAAA+AAAAPwAAAEAAAABBAAAAQgAAAEMAAABEAAAARQAAAEYAAAAFAAAAHgAAAB8AAAACAAAAGAAAAAYAAAABAAAAAAAAAAAAAAAAAAAAAAAAAA0DBAC8DwAAHgAAAEwOAAAmAAAAnK8EAEqxBABvYgQAgWIEADhiBABbCAQAUWIEAJNiBABjYgQAQWIEAEZiBABkCAQAawgEAHIIBAA0YgQAd2IEAGZiBAA+YgQAc2IEAHcIBAB9CAQAgQgEAIcIBACMCAQAkwgEAIhiBACaCAQAnwgEAKUIBACtCAQAMBwEALlEBABpYgQANxwEABAAAAAQAAAAAgAAAAQAAAAIAAAAAAEAAAACAAABAAAAIAAAAEAAAACAAAAAuIkAALyJAADoiQAAAAAAAEcAAABIAAAASQAAAEoAAABLAAAATAAAAE0AAABOAAAATwAAAFAAAABRAAAAUgAAAFMAAABUAAAAVQAAAFYAAABXAAAAWAAAAFkAAABaAAAAWwAAAFwAAABdAAAAXgAAAF8AAABgAAAAYQAAAGIAAABjAAAAZAAAAGUAAABmAAAAZwAAAGgAAABpAAAAagAAAGsAAABsAAAAbQAAAG4AAABvAAAAcAAAAHEAAAByAAAAcwAAAHQAAAB1AAAAdgAAAHcAAAB4AAAAeQAAAHoAAAB7AAAAfAAAAH0AAAB+AAAAfwAAAIAAAACBAAAAggAAAIMAAACEAAAAhQAAAIYAAACHAAAAiAAAAIkAAACKAAAAiwAAAIwAAACNAAAAjgAAAI8AAACQAAAAkQAAAJIAAACTAAAAlAAAAJUAAACWAAAAlwAAAJgAAACZAAAAmgAAAJsAAACcAAAAnQAAAJ4AAACfAAAAoAAAAKEAAACiAAAAowAAAKQAAAClAAAApgAAAKcAAACoAAAAqQAAAKoAAACrAAAArAAAAK0AAACuAAAArwAAALAAAACxAAAAsgAAALMAAAC0AAAAtQAAALYAAAC3AAAAuAAAALkAAAC6AAAAuwAAALwAAAC9AAAAvgAAAL8AAADAAAAAwQAAAMIAAADDAAAAxAAAAMUAAADGAAAAxwAAAMgAAADJAAAAygAAAMsAAADMAAAAzQAAAM4AAADPAAAA0AAAANEAAADSAAAA0wAAANQAAADVAAAA1gAAANcAAADYAAAA2QAAANoAAADbAAAA3AAAAN0AAADeAAAA3wAAAOAAAADhAAAA4gAAAOMAAADkAAAA5QAAAOYAAADnAAAA6AAAAOkAAADqAAAA6wAAAOwAAADtAAAA7gAAAO8AAADwAAAA8QAAAPIAAADzAAAA9AAAAPUAAAAEAAAABAAAAAEAAAACAAAAAwAAAAgAAAAJAAAAAAAAAAUAAAAGAAAABwAAAJAAAACRAAAAnQAAAJUAAAABAAAAAgAAAAEAAAACAAAAAwAAAAQAAAAFAAAABgAAAAcAAAAIAAAACQAAAAoAAAALAAAADAAAAA0AAAAOAAAADwAAABAAAAARAAAAAQQCAAIEBAAHGAYACCAIABAgCgAgQAwAgCAQAH8CDgB/BC4Af4CAAP8BQQDeWAQAb2IEAPZKBAD+SgQAB0sEAOljBAAOSwQAVWIEAP5KBAAUSwQAG0sEAFVdBAD+WQQAImAEAC5TBAAnYAQAIUsEABZgBAA5YAQAEGAEACZLBAAcYAQALWAEACxLBAAzSwQAOksEAEBLBABHSwQATUsEADNgBABTSwQAWksEAF9LBABkSwQAbUsEANNPBAD2AAAA2k8EAPcAAADpTwQA+AAAAPBPBAD5AAAAhlIEAPoAAAD2TwQA+wAAAP1PBAD8AAAABlAEAP0AAAALUAQA/gAAABBQBAD/AAAAFlAEAAABAADsXQQAAQEAABxQBAACAQAAJVAEAAMBAAAsUAQABAEAADNQBAAFAQAAOlAEAAYBAADSUgQABwEAAEFQBAAIAQAASlAEAAkBAABTUAQACgEAAKhdBAAAAAAAv08EAAAAAADKTwQAAAAAAAAAAAAAAAAAAAAAAAEAAAACAAAAAwAAAAUAAAAGAAAABwAAAAkAAACfUQQACwEAAKZRBAAMAQAArVEEAA0BAAC1UQQADgEAALxRBAAPAQAAwVEEABABAADHUQQAEQEAAAAAAAAAAAAATlIEABIBAABUUgQAEwEAAGFSBAAUAQAAaVIEABUBAABxUgQAFgEAAHpSBAAXAQAAhlIEABgBAACTUgQAGQEAAJ5SBAAaAQAAqlIEABsBAAC0UgQAHAEAAMFSBAAdAQAAyVIEAB4BAADSUgQAHwEAAN9SBAAgAQAA6lIEACEBAAAAAAAAAAAAADVTBACBYgQAOlMEAD9TBABFUwQAYVQEACIBAABlVAQAIwEAAGpUBAAkAQAAb1QEACUBAAB0VAQAJgEAAHlUBAAnAQAAfVQEACgBAACBVAQAKQEAAIVUBAAqAQAAj1QEACsBAACVVAQALAEAAJpUBAAtAQAAnlQEAC4BAACiVAQALwEAAKZUBAAwAQAAqlQEADEBAACvVAQAMgEAALNUBAAzAQAAulQEADQBAADFVAQANQEAAMlUBAA2AQAAzlQEADcBAACoXQQAOAEAANJUBAAlAQAA2FQEADkBAADdVAQAOgEAAOJUBAA7AQAA51QEADwBAADrVAQAPQEAAPFUBAA+AQAA91QEAD8BAABDVAQAAAAAAEZUBAAAAAAAS1QEAAAAAABWVAQAAAAAAAAAAAAAAAAAXlUEAEABAABjVQQAQQEAAGhVBABCAQAAbVUEAEMBAABpagQARAEAAHJVBABFAQAAeVUEAEYBAAB+VQQARwEAAOZdBABIAQAAaV0EAEkBAACCVQQASgEAAIZVBABLAQAAjlUEAEwBAAD+XQQATQEAAL5ZBABOAQAAklUEAE8BAADDWQQAUAEAAAAAAAAAAAAAsFkEAFEBAAC3WQQAUgEAAL5ZBABTAQAAw1kEAFQBAADKWQQAVQEAANFZBABWAQAA1lkEAFcBAAAAAAAAAAAAABhdBABYAQAAIF0EAFkBAADlWwQAAAAAALVbBAAAAAAAa1sEAAAAAADKWgQAAAAAANVbBAAAAAAAAAAAAAAAAADtWwQAWgEAAAAAAAAAAAAAEGAEAFsBAAAWYAQAXAEAABxgBABdAQAAImAEAF4BAAAnYAQAXwEAAC1gBABgAQAAM2AEAGEBAAA5YAQAYgEAAAAAAAAAAAAAXV0EAGMBAABjXQQAZAEAAGldBABlAQAAFrUEAGYBAAA+tQQAZwEAABi1BABoAQAAb10EAGkBAAByXQQAagEAAHZdBABrAQAAeV0EAGwBAAB+XQQAbQEAAIFdBABuAQAAhF0EAG8BAACHXQQAcAEAAIpdBABxAQAAMrUEAHIBAAA4tQQAcwEAADa1BAB0AQAAjV0EAHUBAACUXQQAdgEAAJxdBAB3AQAAqF0EAHgBAAAAAAAAAAAAADRiBAA4YgQAPmIEAEFiBABGYgQATWIEAJyvBABRYgQAVWIEAF5iBABjYgQAZmIEAGliBABvYgQAc2IEAHdiBAB6YgQAgWIEAIhiBABKsQQAjWIEAJNiBACZYgQAnGIEAJ9iBACjYgQApmIEAKliBACsYgQAr2IEALJiBAC1YgQAuGIEAL5iBADHYgQA0WIEANhiBAATAAAAAAAAAJYwB3csYQ7uulEJmRnEbQeP9GpwNaVj6aOVZJ4yiNsOpLjceR7p1eCI2dKXK0y2Cb18sX4HLbjnkR2/kGQQtx3yILBqSHG5895BvoR91Noa6+TdbVG11PTHhdODVphsE8Coa2R6+WL97Mllik9cARTZbAZjYz0P+vUNCI3IIG47XhBpTORBYNVycWei0eQDPEfUBEv9hQ3Sa7UKpfqotTVsmLJC1sm720D5vKzjbNgydVzfRc8N1txZPdGrrDDZJjoA3lGAUdfIFmHQv7X0tCEjxLNWmZW6zw+lvbieuAIoCIgFX7LZDMYk6Quxh3xvLxFMaFirHWHBPS1mtpBB3HYGcdsBvCDSmCoQ1e+JhbFxH7W2BqXkv58z1LjooskHeDT5AA+OqAmWGJgO4bsNan8tPW0Il2xkkQFcY+b0UWtrYmFsHNgwZYVOAGLy7ZUGbHulARvB9AiCV8QP9cbZsGVQ6bcS6ri+i3yIufzfHd1iSS3aFfN804xlTNT7WGGyTc5RtTp0ALyj4jC71EGl30rXldg9bcTRpPv01tNq6WlD/NluNEaIZ63QuGDacy0EROUdAzNfTAqqyXwN3TxxBVCqQQInEBALvoYgDMkltWhXs4VvIAnUZrmf5GHODvneXpjJ2SkimNCwtKjXxxc9s1mBDbQuO1y9t61susAgg7jttrO/mgzitgOa0rF0OUfV6q930p0VJtsEgxbccxILY+OEO2SUPmptDahaanoLzw7knf8JkyeuAAqxngd9RJMP8NKjCIdo8gEe/sIGaV1XYvfLZ2WAcTZsGecGa252G9T+4CvTiVp62hDMSt1nb9+5+fnvvo5DvrcX1Y6wYOij1tZ+k9GhxMLYOFLy30/xZ7vRZ1e8pt0GtT9LNrJI2isN2EwbCq/2SgM2YHoEQcPvYN9V32eo745uMXm+aUaMs2HLGoNmvKDSbyU24mhSlXcMzANHC7u5FgIiLyYFVb47usUoC72yklq0KwRqs1yn/9fCMc/QtYue2Swdrt5bsMJkmybyY+yco2p1CpNtAqkGCZw/Ng7rhWcHchNXAAWCSr+VFHq44q4rsXs4G7YMm47Skg2+1eW379x8Id/bC9TS04ZC4tTx+LPdaG6D2h/NFr6BWya59uF3sG93R7cY5loIiHBqD//KOwZmXAsBEf+eZY9prmL40/9rYUXPbBZ44gqg7tIN11SDBE7CswM5YSZnp/cWYNBNR2lJ23duPkpq0a7cWtbZZgvfQPA72DdTrrypxZ673n/Pskfp/7UwHPK9vYrCusowk7NTpqO0JAU20LqTBtfNKVfeVL9n2SMuemazuEphxAIbaF2UK28qN74LtKGODMMb3wVaje8CLQAAAABBMRsZgmI2MsNTLSsExWxkRfR3fYanWlbHlkFPCIrZyEm7wtGK6O/6y9n04wxPtaxNfq61ji2Dns8cmIdREsJKECPZU9Nw9HiSQe9hVdeuLhTmtTfXtZgcloSDBVmYG4IYqQCb2/otsJrLNqldXXfmHGxs/98/QdSeDlrNoiSEleMVn4wgRrKnYXepvqbh6PHn0PPoJIPew2Wyxdqqrl1d659GRCjMa29p/XB2rmsxOe9aKiAsCQcLbTgcEvM2Rt+yB13GcVRw7TBla/T38yq7tsIxonWRHIk0oAeQ+7yfF7qNhA553qklOO+yPP9583O+SOhqfRvFQTwq3lgFT3nwRH5i6YctT8LGHFTbAYoVlEC7Do2D6COmwtk4vw3FoDhM9Lshj6eWCs6WjRMJAMxcSDHXRYti+m7KU+F3VF27uhVsoKPWP42Ilw6WkVCY194RqczH0vrh7JPL+vVc12JyHeZ5a961VECfhE9ZWBIOFhkjFQ/acDgkm0EjPadr/WXmWuZ8JQnLV2Q40E6jrpEB4p+KGCHMpzNg/bwqr+Ekre7QP7QtgxKfbLIJhqskSMnqFVPQKUZ++2h3ZeL2eT8vt0gkNnQbCR01KhIE8rxTS7ONSFJw3mV5Me9+YP7z5ue/wv3+fJHQ1T2gy8z6NoqDuweRmnhUvLE5ZaeoS5iDOwqpmCLJ+rUJiMuuEE9d718ObPRGzT/ZbYwOwnRDElrzAiNB6sFwbMGAQXfYR9c2lwbmLY7FtQClhIQbvBqKQXFbu1pomOh3Q9nZbFoeTy0VX342DJwtGyfdHAA+EgCYuVMxg6CQYq6L0VO1khbF9N1X9O/ElKfC79WW2fbpvAeuqI0ct2veMZwq7yqF7XlryqxIcNNvG134LipG4eE23magB8V/Y1ToVCJl803l87ICpMKpG2eRhDAmoJ8puK7F5Pmf3v06zPPWe/3oz7xrqYD9WrKZPgmfsn84hKuwJBws8RUHNTJGKh5zdzEHtOFwSPXQa1E2g0Z6d7JdY07X+ssP5uHSzLXM+Y2E1+BKEpavCyONtshwoJ2JQbuERl0jAwdsOBrEPxUxhQ4OKEKYT2cDqVR+wPp5VYHLYkwfxTiBXvQjmJ2nDrPclhWqGwBU5VoxT/yZYmLX2FN5zhdP4UlWfvpQlS3Xe9QczGITio0tUruWNJHoux/Q2aAG7PN+Xq3CZUdukUhsL6BTdeg2EjqpBwkjalQkCCtlPxHkeaeWpUi8j2YbkaQnKoq94LzL8qGN0Oti3v3AI+/m2b3hvBT80KcNP4OKJn6ykT+5JNBw+BXLaTtG5kJ6d/1btWtl3PRafsU3CVPudjhI97GuCbjwnxKhM8w/inL9JJMAAAAAN2rCAW7UhANZvkYC3KgJB+vCywayfI0EhRZPBbhREw6PO9EP1oWXDeHvVQxk+RoJU5PYCAotngo9R1wLcKMmHEfJ5B0ed6IfKR1gHqwLLxubYe0awt+rGPW1aRnI8jUS/5j3E6YmsRGRTHMQFFo8FSMw/hR6jrgWTeR6F+BGTTjXLI85jpLJO7n4Czo87kQ/C4SGPlI6wDxlUAI9WBdeNm99nDc2w9o1AakYNIS/VzGz1ZUw6mvTMt0BETOQ5Wskp4+pJf4x7yfJWy0mTE1iI3snoCIimeYgFfMkISi0eCof3rorRmD8KXEKPij0HHEtw3azLJrI9S6tojcvwI2acPfnWHGuWR5zmTPcchwlk3crT1F2cvEXdEWb1XV43Il+T7ZLfxYIDX0hYs98pHSAeZMeQnjKoAR6/crGe7AuvGyHRH5t3vo4b+mQ+m5shrVrW+x3agJSMWg1OPNpCH+vYj8VbWNmqythUcHpYNTXpmXjvWRkugMiZo1p4Gcgy9dIF6EVSU4fU0t5dZFK/GPeT8sJHE6St1pMpd2YTZiaxEav8AZH9k5ARcEkgkREMs1Bc1gPQCrmSUIdjItDUGjxVGcCM1U+vHVXCda3VozA+FO7qjpS4hR8UNV+vlHoOeJa31MgW4btZlmxh6RYNJHrXQP7KVxaRW9ebS+tX4AbNeG3cffg7s+x4tmlc+Ncszzma9n+5zJnuOUFDXrkOEom7w8g5O5WnqLsYfRg7eTiL+jTiO3pijar671caerwuBP9x9LR/J5sl/6pBlX/LBAa+ht62PtCxJ75da5c+EjpAPN/g8LyJj2E8BFXRvGUQQn0oyvL9fqVjffN/0/2YF142Vc3utgOifzaOeM+27z1cd6Ln7Pf0iH13eVLN9zYDGvX72ap1rbY79SBsi3VBKRi0DPOoNFqcObTXRok0hD+XsUnlJzEfiraxklAGMfMVlfC+zyVw6KC08GV6BHAqK9Ny5/Fj8rGe8nI8RELyXQHRMxDbYbNGtPAzy25As5Alq+Rd/xtkC5CK5IZKOmTnD6mlqtUZJfy6iKVxYDglPjHvJ/PrX6elhM4nKF5+p0kb7WYEwV3mUq7MZt90fOaMDWJjQdfS4xe4Q2OaYvPj+ydgIrb90KLgkkEibUjxoiIZJqDvw5YguawHoDR2tyBVMyThGOmUYU6GBeHDXLVhqDQ4qmXuiCozgRmqvlupKt8eOuuSxIprxKsb60lxq2sGIHxpy/rM6Z2VXWkQT+3pcQp+KDzQzqhqv18o52XvqLQc8S15xkGtL6nQLaJzYK3DNvNsjuxD7NiD0mxVWWLsGgi17tfSBW6BvZTuDGckbm0it68g+AcvdpeWr/tNJi+AAAAAGVnvLiLyAmq7q+1EleXYo8y8N433F9rJbk4153vKLTFik8IfWTgvW8BhwHXuL/WSt3YavIzd9/gVhBjWJ9XGVD6MKXoFJ8Q+nH4rELIwHvfrafHZ0MIcnUmb87NcH+tlRUYES37t6Q/ntAYhyfozxpCj3OirCDGsMlHegg+rzKgW8iOGLVnOwrQAIeyaThQLwxf7Jfi8FmFh5flPdGHhmW04DrdWk+Pzz8oM3eGEOTq43dYUg3Y7UBov1H4ofgr8MSfl0gqMCJaT1ee4vZvSX+TCPXHfadA1RjA/G1O0J81K7cjjcUYlp+gfyonGUf9unwgQQKSj/QQ9+hIqD1YFJtYP6gjtpAdMdP3oYlqz3YUD6jKrOEHf76EYMMG0nCgXrcXHOZZuKn0PN8VTIXnwtHggH5pDi/Le2tId8OiDw3Lx2ixcynHBGFMoLjZ9ZhvRJD/0/x+UGbuGzfaVk0nuQ4oQAW2xu+wpKOIDBwasNuBf9dnOZF40iv0H26TA/cmO2aQmoOIPy+R7ViTKVRgRLQxB/gM36hNHrrP8abs35L+ibguRmcXm1QCcCfsu0jwcd4vTMkwgPnbVedFY5ygP2v5x4PTF2g2wXIPinnLN13krlDhXED/VE4lmOj2c4iLrhbvNxb4QIIEnSc+vCQf6SFBeFWZr9fgi8qwXDM7tlntXtHlVbB+UEfVGez/bCE7YglGh9rn6TLIgo6OcNSe7Six+VGQX1bkgjoxWDqDCY+n5m4zHwjBhg1tpjq1pOFAvcGG/AUvKUkXSk71r/N2IjKWEZ6KeL4rmB3ZlyBLyfR4Lq5IwMAB/dKlZkFqHF6W93k5Kk+Xlp9d8vEj5QUZa01gftf1jtFi5+u23l9SjgnCN+m1etlGAGi8IbzQ6jHfiI9WYzBh+dYiBJ5qmr2mvQfYwQG/Nm60rVMJCBWaTnId/ynOpRGGe7d04ccPzdkQkqi+rCpGERk4I3algHVmxtgQAXpg/q7PcpvJc8oi8aRXR5YY76k5rf3MXhFFBu5NdmOJ8c6NJkTc6EH4ZFF5L/k0HpNB2rEmU7/WmuvpxvmzjKFFC2IO8BkHaUyhvlGbPNs2J4Q1mZKWUP4uLpm5VCb83uieEnFdjHcW4TTOLjapq0mKEUXmPwMggYO7dpHg4xP2XFv9WelJmD5V8SEGgmxEYT7Uqs6Lxs+pN344QX/WXSbDbrOJdnzW7srEb9YdWQqxoeHkHhTzgXmoS9dpyxOyDnerXKHCuTnGfgGA/qmc5ZkVJAs2oDZuURyOpxZmhsJx2j4s3m8sSbnTlPCBBAmV5rixe0kNox4usRtIPtJDLVlu+8P22+mmkWdRH6mwzHrODHSUYblm8QYF3gAAAAB3BzCW7g5hLJkJUboHbcQZcGr0j+ljpTWeZJWjDtuIMnncuKTg1ekel9LZiAm2TCt+sXy957gtB5C/HZEdtxBkarAg8vO5cUiEvkHeGtrUfW3d5Ov01LVRg9OFxxNsmFZka6jA/WL5eoplyewUAVxPYwZs2foPPWONCA31O24gyExpEF7VYEHkomdxcjwD5NFLBNRH0g2F/aUKtWs1taj6QrKYbNu7ydasvPlAMths40XfXHXc1g3Pq9E9WSbZMKxR3gA6yNdRgL/QYRYhtPS1VrPEI8+6lZm4vaUPKAK4nl8FiAjGDNmysQvpJC9vfIdYaEwRwWEdq7ZmLT123EGQAdtxBpjSILzv1RAqcbGFiQa2tR+fv+Sl6LjUM3gHyaIPAPk0lgmojuEOmBh/ag27CG09LZFkbJfmY1wBa2tR9BxsYWKFZTDY8mIATmwGle0bAaV7ggj0wfUPxFdlsNnGErfpUIu+uOr8uYh8Yt0d3xXaLUmM03zz+9RMZU2yYVg6tVHOo7wAdNS7MOJK36VBPdiV16TRxG3T1vT7Q2npajRu2fytZ4hG2mC40EQELXMzAx3lqgpMX90NfMlQBXE8JwJBqr4LEBDJDCCGV2i1JSBvhbO5ZtQJzmHkn17e+Q4p2cmYsNCYIsfXqLRZsz0XLrQNgbe9XDvAumyt7biDIJq/s7YDtuIMdLHSmurVRzmd0nevBNsmFXPcFoPjYwsSlGQ7hA1taj56alqo5A7PC5MJ/50KAK4nfQeesfAPk0SHCKPSHgHyaGkGwv73YlddgGVnyxlsNnFuawbn/tQbdonTK+AQ2npaZ91KzPm532+Ovu/5F7e+Q2CwjtXW1qPoodGTfjjYwsRP3/JS0btn8aa8V2c/tQbdSLI2S9gNK9qvChtMNgNK9kEEemDfYO/DqGffVTFuju9Gab55y2GzjLxmgxolb9KgUmjiNswMd5W7C0cDIgIWuVUFJi/Fuju+sr0LKCu0WpJcs2oEwtf/p7XQzzEs2Z6LW96uHZtkwrDsY/ImdWqjnAJtkwqcCQap6w42P3IHZ4UFAFcTlb9KguK4ehR7sSuuDLYbOJLSjpvl1b4NfNzvtwvb3yGG09LU8dTiQmjds/gf2oNugb4Wzfa5JltvsHfhGLdHd4gIWub/D2pwZgY7yhEBC1yPZZ7/+GKuaWFr/9MWbM9FoArieNcN0u5OBINUOQOzwqdnJmHQYBb3SWlHTT5ud9uu0WpK2dZa3EDfC2Y32DvwqbyuU967nsVHss9/MLX/6b298hzKusKKU7OTMCS0o6a60DYFzdcGk1TeVykj2We/s2Z6LsRhSrhdaBsCKm8rlLQLvjfDDI6hWgXfGy0C740AAAAAGRsxQTI2YoIrLVPDZGzFBH139EVWWqeGT0GWx8jZigjRwrtJ+u/oiuP02custU8Mta5+TZ6DLY6HmBzPSsISUVPZIxB49HDTYe9Bki6u11U3teYUHJi11wWDhJaCG5hZmwCpGLAt+tupNsua5nddXf9sbBzUQT/fzVoOnpWEJKKMnxXjp7JGIL6pd2Hx6OGm6PPQ58PegyTaxbJlXV2uqkRGn+tva8wodnD9aTkxa64gKlrvCwcJLBIcOG3fRjbzxl0Hsu1wVHH0a2Uwuyrz96IxwraJHJF1kAegNBefvPsOhI26JaneeTyy7zhz83n/auhIvkHFG31Y3io88HlPBelifkTCTy2H21QcxpQVigGNDrtApiPog7842cI4oMUNIbv0TAqWp48TjZbOXMwACUXXMUhu+mKLd+FTyrq7XVSjoGwViI0/1pGWDpfe15hQx8ypEezh+tL1+suTcmLXXGt55h1AVLXeWU+EnxYOElgPFSMZJDhw2j0jQZtl/WunfOZa5lfLCSVO0DhkAZGuoxiKn+Izp8whKrz9YK0k4a+0P9DunxKDLYYJsmzJSCSr0FMV6vt+RiniZXdoLz959jYkSLcdCRt0BBIqNUtTvPJSSI2zeWXecGB+7zHn5vP+/v3Cv9XQkXzMy6A9g4o2+pqRB7uxvFR4qKdlOTuDmEsimKkKCbX6yRCuy4hf711PRvRsDm3ZP810wg6M81oSQ+pBIwLBbHDB2HdBgJc210eOLeYGpQC1xbwbhIRxQYoaaFq7W0N36JhabNnZFS1PHgw2fl8nGy2cPgAc3bmYABKggzFTi65ikJK1U9Hd9MUWxO/0V+/Cp5T22ZbVrge86bccjaicMd5rhSrvKspree3TcEis+F0bb+FGKi5m3jbhf8UHoFToVGNN82UiArLz5RupwqQwhJFnKZ+gJuTFrrj93p/51vPMOs/o/XuAqWu8mbJa/bKfCT6rhDh/LBwksDUHFfEeKkYyBzF3c0hw4bRRa9D1ekaDNmNdsnfL+tdO0uHmD/nMtczg14SNr5YSSraNIwudoHDIhLtBiQMjXUYaOGwHMRU/xCgODoVnT5hCflSpA1V5+sBMYsuBgTjFH5gj9F6zDqedqhWW3OVUABv8TzFa12Jimc55U9hJ4U8XUPp+VnvXLZVizBzULY2KEzSWu1Ifu+iRBqDZ0F5+8+xHZcKtbEiRbnVToC86EjboIwkHqQgkVGoRP2Urlqd55I+8SKWkkRtmvYoqJ/LLvODr0I2hwP3eYtnm7yMUvOG9DafQ/CaKgz8/kbJ+cNAkuWnLFfhC5kY7W/13etxla7XFflr07lMJN/dIOHa4Ca6xoRKf8Io/zDOTJP1yAAAAAAHCajcDhNRuAka+WQcJqNwGy8LrBI18sgVPFoUOE1G4D9E7jw2XhdYMVe/hCRr5ZAjYk1MKni0KC1xHPRwmo3Ad5MlHH6J3Hh5gHSkbLwusGu1hmxir38IZabX1EjXyyBP3mP8RsSamEHNMkRU8WhQU/jAjFriOehd65E04TUbgOY8s1zvJko46C/i5P0TuPD6GhAs8wDpSPQJQZTZeF1g3nH1vNdrDNjQYqQExV7+EMJXVszLTa+ozEQHdJGvlkCWpj6cn7zH+Ji1bySNiTUwioCd7IOaZIiEk8xUqeLQoK7reHyn8YEYoPgpxLXEc9CyzdsMu9ciaLzeirXCajcBxWOf3cx5ZrnLcM5l3kyUcdlFPK3QX8XJ11ZtFfonceH9Ltk99DQgWfM9iIXmAdKR4Qh6TegSgynvGyv1svC6wbX5Eh284+t5u+pDpa7WGbGp37FtoMVICafM4NWKvfwhjbRU/YSurZmDpwVFlptfUZGS942YiA7pn4GmNSNfLIEkVoRdLUx9OSpF1eU/eY/xOHAnLTFq3kk2Y3aVGxJqYRwbwr0VATvZEgiTBQc0yREAPWHNCSeYqQ4uMHVTxaFBVMwJnV3W8Pla31glT+MCMUjqqu1B8FOJRvn7VWuI56FsgU99ZZu2GWKSHsV3rkTRcKfsDXm9FWl+tL23hNRuA4Pdxt+Kxz+7jc6XZ5jyzXOf+2WvluGcy5HoNBe8mSjju5CAP7KKeVu1g9GHoL+Lk6e2I0+urNorqaVy9/RO48PzR0sf+l2ye/1UGqfoaECz72Hob+Z7EQvhcrnXzAOlI8sKDf/CEPSbxRlcR9AlBlPXLK6P3jZX69k//zdl4XWDYujdX2vyJDts+4znecfW837Ofi931IdLcN0vl12sM2NapZu/U79i21S2ygdBipATRoM4z0+ZwatIkGl3FXv4QxJyUJ8baKn7HGEBJwldWzMOVPPvB04KiwBHolctNr6jKj8WfyMl7xskLEfHMRAd0zYZtQ8/A0xrOArktka+WQJBt/HeSK0Iuk+koGZamPpyXZFSrlSLq8pTggMWfvMf4nn6tz5w4E5ad+nmhmLVvJJl3BRObMbtKmvPRfY2JNTCMS18Hjg3hXo/Pi2mKgJ3si0L324kESYKIxiO1g5pkiIJYDr+AHrDmgdza0YSTzFSFUaZjhxcYOobVcg2p4tCgqCC6l6pmBM6rpG75rut4fK8pEkutb6wSrK3GJafxgRimM+svpHVVdqW3P0Gg+CnEoTpD86N8/aqivpedtcRz0LQGGee2QKe+t4LNibLN2wyzD7E7sUkPYrCLZVW71yJouhVIX7hT9ga5kZwxvN6KtL0c4IO/Wl7avpg07QAAAAC4vGdlqgnIixK1r+6PYpdXN97wMiVrX9yd1zi5xbQo730IT4pvveBk1wGHAUrWv7jyatjd4N93M1hjEFZQGVef6KUw+voQnxRCrPhx33vAyGfHp611cghDzc5vJpWtf3AtERgVP6S3+4cY0J4az+gnonOPQrDGIKwIekfJoDKvPhiOyFsKO2e1socA0C9QOGmX7F8MhVnw4j3ll4dlhofR3TrgtM+PT1p3Myg/6uQQhlJYd+NA7dgN+FG/aPAr+KFIl5/EWiIwKuKeV09/SW/2x/UIk9VAp31t/MAYNZ/QTo0jtyuflhjFJyp/oLr9RxkCQSB8EPSPkqhI6PebFFg9I6g/WDEdkLaJoffTFHbPaqzKqA++fwfhBsNghF6gcNLmHBe39Km4WUwV3zzRwueFaX6A4HvLLw7Dd0hryw0PonOxaMdhBMcp2bigTERvmPX80/+Q7mZQflbaNxsOuSdNtgVAKKSw78YcDIijgduwGjln138r0niRk24f9Dsm9wODmpBmkS8/iCmTWO20RGBUDPgHMR5NqN+m8c+6/pLf7EYuuIlUmxdn7CdwAnHwSLvJTC/e2/mAMGNF51VrP6Cc04PH+cE2aBd5ig9y5F03y1zhUK5OVP9A9uiYJa6LiHMWN+8WBIJA+Lw+J50h6R8kmVV4QYvg168zXLDK7Vm2O1Xl0V5HUH6w/+wZ1WI7IWzah0YJyDLp53COjoIo7Z7UkFH5sYLkVl86WDE6p48Jgx8zbuYNhsEItTqmbb1A4aQF/IbBF0kpL6/1TkoyInbzip4Rlpgrvnggl9kdePTJS8BIri7S/QHAakFmpfeWXhxPKjl5XZ+Wl+Uj8fJNaxkF9dd+YOdi0Y5f3rbrwgmOUnq16TdoAEbZ0LwhvIjfMeowY1aPItb5YZpqngQHvaa9vwHB2K20bjYVCAlTHXJOmqXOKf+3e4YRD8fhdJIQ2c0qrL6oOBkRRoCldiPYxmZ1YHoBEHLPrv7Kc8mbV6TxIu8Ylkf9rTmpRRFezHZN7gbO8Ylj3EQmjWT4Qej5L3lRQZMeNFMmsdrrmta/s/nG6QtFoYwZ8A5ioUxpBzybUb6EJzbblpKZNS4u/lAmVLmZnuje/IxdcRI04RZ3qTYuzhGKSasDP+ZFu4OBIOPgkXZbXPYTSelZ/fFVPphsggYh1D5hRMaLzqp+N6nP1n9BOG7DJl18domzxMru1lkd1m/hobEK8xQe5EuoeYETy2nXq3cOsrnCoVwBfsY5nKn+gCQVmeU2oDYLjhxRboZmFqc+2nHCLG/eLJTTuUkJBIHwsbjmlaMNSXsbsS4eQ9I+SPtuWS3p2/bDUWeRpsywqR90DM56ZrlhlN4FBvEIAAiAGQAAAAgAEAAaAAAACAAQgBsAAAAIABAQHAAAAAgAEJAdAAAACAAggB4AAAAIACCQHwAAAAgAIIEgAAAACAAgkSEAAAAIgAgAIgAAAAiAEAAjAAAACIAQgCQAAAAIgBAQJQAAAAiAEJAmAAAACIAggCcAAAAIgCCQKAAAAAiAIIEpAAAACIAgkSoAAAAQAAgAKwAAABAACIAsAAAAEAAQgC0AAAAQABAQLgAAABAAEJAvAAAAEAAggDAAAAAQACCQMQAAABAAIIEyAAAAEAAgkTMAAAAQgAgANAAAABCACIA1AAAAEIAQADYAAAAQgBAQNwAAABCAEJA4AAAAEIAggDkAAAAQgCCQOgAAABCAIIE7AAAAEIAgkTwAAAAQEAgAPQAAABAQCIA+AAAAEBAQAD8AAAAQEBCAQAAAABAQEJBBAAAAEBAggEIAAAAQECCQQwAAABAQIIFEAAAAEBAgkUUAAAAQkAgARgAAABCQCIBHAAAAEJAQAEgAAAAQkBCASQAAABCQEBBKAAAAEJAggEsAAAAQkCCQTAAAABCQIIFNAAAAEJAgkU4AAAAggAgATwAAACCACIBQAAAAIIAQAFEAAAAggBCAUgAAACCAEBBTAAAAIIAQkFQAAAAggCCQVQAAACCAIIFWAAAAIIAgkVcAAAAgkAgAWAAAACCQCIBZAAAAIJAQAFoAAAAgkBCAWwAAACCQEBBcAAAAIJAQkF0AAAAgkCCAXgAAACCQIIFfAAAAIJAgkWAAAAAggQgAYQAAACCBCIBiAAAAIIEQAGMAAAAggRCAZAAAACCBEBBlAAAAIIEQkGYAAAAggSCAZwAAACCBIJBoAAAAIIEgkWkAAAAgkQgAagAAACCRCIBrAAAAIJEQAGwAAAAgkRCAbQAAACCREBBuAAAAIJEQkG8AAAAgkSCAcAAAACCRIJBxAAAAIJEggXIAAAAAAAAAAAAAAAcAAADbZQQADgAAAAQAAAAEIDYWBCB2FgQYFhYEGFYWAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD/////BBgWFgQYFhYAAgAAAAAAACAAAAAEGBYWBBgWFnAAAAAAAAAAIQAAAAQYFhYEGBYWcAIAAAAAAAAiAAAABBgWFgQYFhYDAAAAAAAAACMAAAAEGBYWBBgWFgMCAAAAAAAAJAAAAAQYFhYEGBYWcwAAAAAAAAAlAAAABBgWFgQYFhZzAgAAAAAAACYAAAAEGBYWBBhWFgACAAAAAAAAJwAAAAQYFhYEGFYWcAAAAAAAAAAoAAAABBgWFgQYVhZwAgAAAAAAACkAAAAEGBYWBBhWFgMAAAAAAAAAKgAAAAQYFhYEGFYWAwIAAAAAAAArAAAABBgWFgQYVhZzAAAAAAAAACwAAAAEGBYWBBhWFnMCAAAAAAAALQAAAAQYFhYEIDYWAAIAAAAAAAAuAAAABBgWFgQgNhZwAAAAAAAAAC8AAAAEGBYWBCA2FnACAAAAAAAAMAAAAAQYFhYEIDYWAwAAAAAAAAAxAAAABBgWFgQgNhYDAgAAAAAAADIAAAAEGBYWBCA2FnMAAAAAAAAAMwAAAAQYFhYEIDYWcwIAAAAAAAA0AAAABBhWFgQYFhYAAgAAAAAAADUAAAAEGFYWBBgWFnAAAAAAAAAANgAAAAQYVhYEGBYWcAIAAAAAAAA3AAAABBhWFgQYFhYDAAAAAAAAADgAAAAEGFYWBBgWFgMCAAAAAAAAOQAAAAQYVhYEGBYWcwAAAAAAAAA6AAAABBhWFgQYFhZzAgAAAAAAADsAAAAEGFYWBBhWFgACAAAAAAAAPAAAAAQYVhYEGFYWcAAAAAAAAAA9AAAABBhWFgQYVhZwAgAAAAAAAD4AAAAEGFYWBBhWFgMAAAAAAAAAPwAAAAQYVhYEGFYWAwIAAAAAAABAAAAABBhWFgQYVhZzAAAAAAAAAEEAAAAEGFYWBBhWFnMCAAAAAAAAQgAAAAQYVhYEIDYWAAIAAAAAAABDAAAABBhWFgQgNhZwAAAAAAAAAEQAAAAEGFYWBCA2FnACAAAAAAAARQAAAAQYVhYEIDYWAwAAAAAAAABGAAAABBhWFgQgNhYDAgAAAAAAAEcAAAAEGFYWBCA2FnMAAAAAAAAASAAAAAQYVhYEIDYWcwIAAAAAAABJAAAABCA2FgQYFhYAAgAAAAAAAEoAAAAEIDYWBBgWFnAAAAAAAAAASwAAAAQgNhYEGBYWcAIAAAAAAABMAAAABCA2FgQYFhYDAAAAAAAAAE0AAAAEIDYWBBgWFgMCAAAAAAAATgAAAAQgNhYEGBYWcwAAAAAAAABPAAAABCA2FgQYFhZzAgAAAAAAAFAAAAAEIDYWBBhWFgACAAAAAAAAUQAAAAQgNhYEGFYWcAAAAAAAAABSAAAABCA2FgQYVhZwAgAAAAAAAFMAAAAEIDYWBBhWFgMAAAAAAAAAVAAAAAQgNhYEGFYWAwIAAAAAAABVAAAABCA2FgQYVhZzAAAAAAAAAFYAAAAEIDYWBBhWFnMCAAAAAAAAVwAAAAQgNhYEIDYWAAIAAAAAAABYAAAABCA2FgQgNhZwAAAAAAAAAFkAAAAEIDYWBCA2FnACAAAAAAAAWgAAAAQgNhYEIDYWAwAAAAAAAABbAAAABCA2FgQgNhYDAgAAAAAAAFwAAAAEIDYWBCA2FnMAAAAAAAAAXQAAAAQgNhYEIDYWcwIAAAAAAABeAAAABCBGFgQYFhYAAgAAAAAAAF8AAAAEIEYWBBgWFnAAAAAAAAAAYAAAAAQgRhYEGBYWcAIAAAAAAABhAAAABCBGFgQYFhYDAAAAAAAAAGIAAAAEIEYWBBgWFgMCAAAAAAAAYwAAAAQgRhYEGBYWcwAAAAAAAABkAAAABCBGFgQYFhZzAgAAAAAAAGUAAAAEIEYWBBhWFgACAAAAAAAAZgAAAAQgRhYEGFYWcAAAAAAAAABnAAAABCBGFgQYVhZwAgAAAAAAAGgAAAAEIEYWBBhWFgMAAAAAAAAAaQAAAAQgRhYEGFYWAwIAAAAAAABqAAAABCBGFgQYVhZzAAAAAAAAAGsAAAAEIEYWBBhWFnMCAAAAAAAAbAAAAAQgRhYEIDYWAAIAAAAAAABtAAAABCBGFgQgNhZwAAAAAAAAAG4AAAAEIEYWBCA2FnACAAAAAAAAbwAAAAQgRhYEIDYWAwAAAAAAAABwAAAABCBGFgQgNhYDAgAAAAAAAHEAAAAEIEYWBCA2FnMAAAAAAAAAcgAAAAQgRhYEIDYWcwIAAAAAAABzAAAABCB2FgQYFhYAAgAAAAAAAHQAAAAEIHYWBBgWFnAAAAAAAAAAdQAAAAQgdhYEGBYWcAIAAAAAAAB2AAAABCB2FgQYFhYDAAAAAAAAAHcAAAAEIHYWBBgWFgMCAAAAAAAAeAAAAAQgdhYEGBYWcwAAAAAAAAB5AAAABCB2FgQYFhZzAgAAAAAAAHoAAAAEIHYWBBhWFgACAAAAAAAAewAAAAQgdhYEGFYWcAAAAAAAAAB8AAAABCB2FgQYVhZwAgAAAAAAAH0AAAAEIHYWBBhWFgMAAAAAAAAAfgAAAAQgdhYEGFYWAwIAAAAAAAB/AAAABCB2FgQYVhZzAAAAAAAAAIAAAAAEIHYWBBhWFnMCAAAAAAAAgQAAAAQgdhYEIDYWAAIAAAAAAACCAAAABCB2FgQgNhZwAAAAAAAAAIMAAAAEIHYWBCA2FnACAAAAAAAAhAAAAAQgdhYEIDYWAwAAAAAAAACFAAAABCB2FgQgNhYDAgAAAAAAAIYAAAAEIHYWBCA2FnMAAAAAAAAAhwAAAAQgdhYEIDYWcwIAAAAAAACIAAAABCCGFgQYFhYAAgAAAAAAAIkAAAAEIIYWBBgWFnAAAAAAAAAAigAAAAQghhYEGBYWcAIAAAAAAACLAAAABCCGFgQYFhYDAAAAAAAAAIwAAAAEIIYWBBgWFgMCAAAAAAAAjQAAAAQghhYEGBYWcwAAAAAAAACOAAAABCCGFgQYFhZzAgAAAAAAAI8AAAAEIIYWBBhWFgACAAAAAAAAkAAAAAQghhYEGFYWcAAAAAAAAACRAAAABCCGFgQYVhZwAgAAAAAAAJIAAAAEIIYWBBhWFgMAAAAAAAAAkwAAAAQghhYEGFYWAwIAAAAAAACUAAAABCCGFgQYVhZzAAAAAAAAAJUAAAAEIIYWBBhWFnMCAAAAAAAAlgAAAAQghhYEIDYWAAIAAAAAAACXAAAABCCGFgQgNhZwAAAAAAAAAJgAAAAEIIYWBCA2FnACAAAAAAAAmQAAAAQghhYEIDYWAwAAAAAAAACaAAAABCCGFgQgNhYDAgAAAAAAAJsAAAAEIIYWBCA2FnMAAAAAAAAAnAAAAAQghhYEIDYWcwIAAAAAAACdAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABqaAQAamkEAOppBAAqagQASmoEAFpqBABiagQAZmoEAGhqBAD/////cEcAAJhHAABgSAAAiEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAngAAAAAAAAAA+AAA4AcAAB8AAAAEAAAAAAD/AAD/AAD/AAAAAAAAAJ8AAAAHAAAAAPgAAOAHAAAfAAAABAAAAP8AAAAA/wAAAAD/AAAAAACgAAAABwAAAAD4AADgBwAAHwAAAAQAAAAAAAD/AAD/AAD/AAAAAAAAoQAAAAcAAAAA+AAA4AcAAB8AAAAEAAAAAP8AAAAA/wAAAAD/AAAAAKIAAAAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACeAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAngAAAAAAAAAAAP8AAP8AAP8AAAACAAAAAPgAAOAHAAAfAAAAAAAAAKMAAAABAAAAAAD/AAD/AAD/AAAAAgAAAAB8AADgAwAAHwAAAAAAAACkAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAngAAAAAAAAAAAAAA/wAAAAAAAAj/ACAAAAAAEP8AQAAAAAAY/wBhAAAAACD/AIEAAAAAKf8AoQAAAAAx/wDCAAAAADn/AOIAAAAAQf8IAAAAAABK/wggAAAAAFL/CEAAAAAAWv8IYQAAAABi/wiBAAAAAGr/CKEAAAAAc/8IwgAAAAB7/wjiAAAAAIP/EAAAAAAAi/8QIAAAAACU/xBAAAAAAJz/EGEAAAAApP8QgQAAAACs/xChAAAAALT/EMIAAAAAvf8Q4gAAAADF/xgAAAAAAM3/GCAAAAAA1f8YQAAAAADe/xhhAAAAAOb/GIEAAAAA7v8YoQAAAAD2/xjCAAAAAP//GOIAAAAEAP8gAAAAAAQI/yAgAAAABBD/IEAAAAAEGP8gYQAAAAQg/yCBAAAABCn/IKEAAAAEMf8gwgAAAAQ5/yDiAAAABEH/KQAAAAAESv8pIAAAAARS/ylAAAAABFr/KWEAAAAEYv8pgQAAAARq/ymhAAAABHP/KcIAAAAEe/8p4gAAAASD/zEAAAAABIv/MSAAAAAElP8xQAAAAASc/zFhAAAABKT/MYEAAAAErP8xoQAAAAS0/zHCAAAABL3/MeIAAAAExf85AAAAAATN/zkgAAAABNX/OUAAAAAE3v85YQAAAATm/zmBAAAABO7/OaEAAAAE9v85wgAAAAT//zniAAAACAD/QQAAAAAICP9BIAAAAAgQ/0FAAAAACBj/QWEAAAAIIP9BgQAAAAgp/0GhAAAACDH/QcIAAAAIOf9B4gAAAAhB/0oAAAAACEr/SiAAAAAIUv9KQAAAAAha/0phAAAACGL/SoEAAAAIav9KoQAAAAhz/0rCAAAACHv/SuIAAAAIg/9SAAAAAAiL/1IgAAAACJT/UkAAAAAInP9SYQAAAAik/1KBAAAACKz/UqEAAAAItP9SwgAAAAi9/1LiAAAACMX/WgAAAAAIzf9aIAAAAAjV/1pAAAAACN7/WmEAAAAI5v9agQAAAAju/1qhAAAACPb/WsIAAAAI//9a4gAAAAwA/2IAAAAADAj/YiAAAAAMEP9iQAAAAAwY/2JhAAAADCD/YoEAAAAMKf9ioQAAAAwx/2LCAAAADDn/YuIAAAAMQf9qAAAAAAxK/2ogAAAADFL/akAAAAAMWv9qYQAAAAxi/2qBAAAADGr/aqEAAAAMc/9qwgAAAAx7/2riAAAADIP/cwAAAAAMi/9zIAAAAAyU/3NAAAAADJz/c2EAAAAMpP9zgQAAAAys/3OhAAAADLT/c8IAAAAMvf9z4gAAAAzF/3sAAAAADM3/eyAAAAAM1f97QAAAAAze/3thAAAADOb/e4EAAAAM7v97oQAAAAz2/3vCAAAADP//e+IAAAAQAP+DAAAAABAI/4MgAAAAEBD/g0AAAAAQGP+DYQAAABAg/4OBAAAAECn/g6EAAAAQMf+DwgAAABA5/4PiAAAAEEH/iwAAAAAQSv+LIAAAABBS/4tAAAAAEFr/i2EAAAAQYv+LgQAAABBq/4uhAAAAEHP/i8IAAAAQe/+L4gAAABCD/5QAAAAAEIv/lCAAAAAQlP+UQAAAABCc/5RhAAAAEKT/lIEAAAAQrP+UoQAAABC0/5TCAAAAEL3/lOIAAAAQxf+cAAAAABDN/5wgAAAAENX/nEAAAAAQ3v+cYQAAABDm/5yBAAAAEO7/nKEAAAAQ9v+cwgAAABD//5ziAAAAFAD/pAAAAAAUCP+kIAAAABQQ/6RAAAAAFBj/pGEAAAAUIP+kgQAAABQp/6ShAAAAFDH/pMIAAAAUOf+k4gAAABRB/6wAAAAAFEr/rCAAAAAUUv+sQAAAABRa/6xhAAAAFGL/rIEAAAAUav+soQAAABRz/6zCAAAAFHv/rOIAAAAUg/+0AAAAABSL/7QgAAAAFJT/tEAAAAAUnP+0YQAAABSk/7SBAAAAFKz/tKEAAAAUtP+0wgAAABS9/7TiAAAAFMX/vQAAAAAUzf+9IAAAABTV/71AAAAAFN7/vWEAAAAU5v+9gQAAABTu/72hAAAAFPb/vcIAAAAU//+94gAAABgA/8UAAAAAGAj/xSAAAAAYEP/FQAAAABgY/8VhAAAAGCD/xYEAAAAYKf/FoQAAABgx/8XCAAAAGDn/xeIAAAAYQf/NAAAAABhK/80gAAAAGFL/zUAAAAAYWv/NYQAAABhi/82BAAAAGGr/zaEAAAAYc//NwgAAABh7/83iAAAAGIP/1QAAAAAYi//VIAAAABiU/9VAAAAAGJz/1WEAAAAYpP/VgQAAABis/9WhAAAAGLT/1cIAAAAYvf/V4gAAABjF/94AAAAAGM3/3iAAAAAY1f/eQAAAABje/95hAAAAGOb/3oEAAAAY7v/eoQAAABj2/97CAAAAGP//3uIAAAAcAP/mAAAAABwI/+YgAAAAHBD/5kAAAAAcGP/mYQAAABwg/+aBAAAAHCn/5qEAAAAcMf/mwgAAABw5/+biAAAAHEH/7gAAAAAcSv/uIAAAABxS/+5AAAAAHFr/7mEAAAAcYv/ugQAAABxq/+6hAAAAHHP/7sIAAAAce//u4gAAAByD//YAAAAAHIv/9iAAAAAclP/2QAAAAByc//ZhAAAAHKT/9oEAAAAcrP/2oQAAABy0//bCAAAAHL3/9uIAAAAcxf//AAAAABzN//8gAAAAHNX//0AAAAAc3v//YQAAABzm//+BAAAAHO7//6EAAAAc9v//wgAAABz////iAP8AAAAAAAAA/wgAAAAAIAD/EAAAAABAAP8YAAAAAGEA/yAAAAAAgQD/KQAAAAChAP8xAAAAAMIA/zkAAAAA4gD/QQAAAAAACP9KAAAAACAI/1IAAAAAQAj/WgAAAABhCP9iAAAAAIEI/2oAAAAAoQj/cwAAAADCCP97AAAAAOII/4MAAAAAABD/iwAAAAAgEP+UAAAAAEAQ/5wAAAAAYRD/pAAAAACBEP+sAAAAAKEQ/7QAAAAAwhD/vQAAAADiEP/FAAAAAAAY/80AAAAAIBj/1QAAAABAGP/eAAAAAGEY/+YAAAAAgRj/7gAAAAChGP/2AAAAAMIY//8AAAAA4hj/AAQAAAAAIP8IBAAAACAg/xAEAAAAQCD/GAQAAABhIP8gBAAAAIEg/ykEAAAAoSD/MQQAAADCIP85BAAAAOIg/0EEAAAAACn/SgQAAAAgKf9SBAAAAEAp/1oEAAAAYSn/YgQAAACBKf9qBAAAAKEp/3MEAAAAwin/ewQAAADiKf+DBAAAAAAx/4sEAAAAIDH/lAQAAABAMf+cBAAAAGEx/6QEAAAAgTH/rAQAAAChMf+0BAAAAMIx/70EAAAA4jH/xQQAAAAAOf/NBAAAACA5/9UEAAAAQDn/3gQAAABhOf/mBAAAAIE5/+4EAAAAoTn/9gQAAADCOf//BAAAAOI5/wAIAAAAAEH/CAgAAAAgQf8QCAAAAEBB/xgIAAAAYUH/IAgAAACBQf8pCAAAAKFB/zEIAAAAwkH/OQgAAADiQf9BCAAAAABK/0oIAAAAIEr/UggAAABASv9aCAAAAGFK/2IIAAAAgUr/aggAAAChSv9zCAAAAMJK/3sIAAAA4kr/gwgAAAAAUv+LCAAAACBS/5QIAAAAQFL/nAgAAABhUv+kCAAAAIFS/6wIAAAAoVL/tAgAAADCUv+9CAAAAOJS/8UIAAAAAFr/zQgAAAAgWv/VCAAAAEBa/94IAAAAYVr/5ggAAACBWv/uCAAAAKFa//YIAAAAwlr//wgAAADiWv8ADAAAAABi/wgMAAAAIGL/EAwAAABAYv8YDAAAAGFi/yAMAAAAgWL/KQwAAAChYv8xDAAAAMJi/zkMAAAA4mL/QQwAAAAAav9KDAAAACBq/1IMAAAAQGr/WgwAAABhav9iDAAAAIFq/2oMAAAAoWr/cwwAAADCav97DAAAAOJq/4MMAAAAAHP/iwwAAAAgc/+UDAAAAEBz/5wMAAAAYXP/pAwAAACBc/+sDAAAAKFz/7QMAAAAwnP/vQwAAADic//FDAAAAAB7/80MAAAAIHv/1QwAAABAe//eDAAAAGF7/+YMAAAAgXv/7gwAAAChe//2DAAAAMJ7//8MAAAA4nv/ABAAAAAAg/8IEAAAACCD/xAQAAAAQIP/GBAAAABhg/8gEAAAAIGD/ykQAAAAoYP/MRAAAADCg/85EAAAAOKD/0EQAAAAAIv/ShAAAAAgi/9SEAAAAECL/1oQAAAAYYv/YhAAAACBi/9qEAAAAKGL/3MQAAAAwov/exAAAADii/+DEAAAAACU/4sQAAAAIJT/lBAAAABAlP+cEAAAAGGU/6QQAAAAgZT/rBAAAAChlP+0EAAAAMKU/70QAAAA4pT/xRAAAAAAnP/NEAAAACCc/9UQAAAAQJz/3hAAAABhnP/mEAAAAIGc/+4QAAAAoZz/9hAAAADCnP//EAAAAOKc/wAUAAAAAKT/CBQAAAAgpP8QFAAAAECk/xgUAAAAYaT/IBQAAACBpP8pFAAAAKGk/zEUAAAAwqT/ORQAAADipP9BFAAAAACs/0oUAAAAIKz/UhQAAABArP9aFAAAAGGs/2IUAAAAgaz/ahQAAAChrP9zFAAAAMKs/3sUAAAA4qz/gxQAAAAAtP+LFAAAACC0/5QUAAAAQLT/nBQAAABhtP+kFAAAAIG0/6wUAAAAobT/tBQAAADCtP+9FAAAAOK0/8UUAAAAAL3/zRQAAAAgvf/VFAAAAEC9/94UAAAAYb3/5hQAAACBvf/uFAAAAKG9//YUAAAAwr3//xQAAADivf8AGAAAAADF/wgYAAAAIMX/EBgAAABAxf8YGAAAAGHF/yAYAAAAgcX/KRgAAAChxf8xGAAAAMLF/zkYAAAA4sX/QRgAAAAAzf9KGAAAACDN/1IYAAAAQM3/WhgAAABhzf9iGAAAAIHN/2oYAAAAoc3/cxgAAADCzf97GAAAAOLN/4MYAAAAANX/ixgAAAAg1f+UGAAAAEDV/5wYAAAAYdX/pBgAAACB1f+sGAAAAKHV/7QYAAAAwtX/vRgAAADi1f/FGAAAAADe/80YAAAAIN7/1RgAAABA3v/eGAAAAGHe/+YYAAAAgd7/7hgAAACh3v/2GAAAAMLe//8YAAAA4t7/ABwAAAAA5v8IHAAAACDm/xAcAAAAQOb/GBwAAABh5v8gHAAAAIHm/ykcAAAAoeb/MRwAAADC5v85HAAAAOLm/0EcAAAAAO7/ShwAAAAg7v9SHAAAAEDu/1ocAAAAYe7/YhwAAACB7v9qHAAAAKHu/3McAAAAwu7/exwAAADi7v+DHAAAAAD2/4scAAAAIPb/lBwAAABA9v+cHAAAAGH2/6QcAAAAgfb/rBwAAACh9v+0HAAAAML2/70cAAAA4vb/xRwAAAAA///NHAAAACD//9UcAAAAQP//3hwAAABh///mHAAAAIH//+4cAAAAof//9hwAAADC////HAAAAOL/AAAA/wAAAAAAAAj/ACAAAAAAEP8AQAAAAAAY/wBhAAAAACD/AIEAAAAAKf8AoQAAAAAx/wDCAAAAADn/AOIAAAAAQf8IAAAAAABK/wggAAAAAFL/CEAAAAAAWv8IYQAAAABi/wiBAAAAAGr/CKEAAAAAc/8IwgAAAAB7/wjiAAAAAIP/EAAAAAAAi/8QIAAAAACU/xBAAAAAAJz/EGEAAAAApP8QgQAAAACs/xChAAAAALT/EMIAAAAAvf8Q4gAAAADF/xgAAAAAAM3/GCAAAAAA1f8YQAAAAADe/xhhAAAAAOb/GIEAAAAA7v8YoQAAAAD2/xjCAAAAAP//GOIAAAAEAP8gAAAAAAQI/yAgAAAABBD/IEAAAAAEGP8gYQAAAAQg/yCBAAAABCn/IKEAAAAEMf8gwgAAAAQ5/yDiAAAABEH/KQAAAAAESv8pIAAAAARS/ylAAAAABFr/KWEAAAAEYv8pgQAAAARq/ymhAAAABHP/KcIAAAAEe/8p4gAAAASD/zEAAAAABIv/MSAAAAAElP8xQAAAAASc/zFhAAAABKT/MYEAAAAErP8xoQAAAAS0/zHCAAAABL3/MeIAAAAExf85AAAAAATN/zkgAAAABNX/OUAAAAAE3v85YQAAAATm/zmBAAAABO7/OaEAAAAE9v85wgAAAAT//zniAAAACAD/QQAAAAAICP9BIAAAAAgQ/0FAAAAACBj/QWEAAAAIIP9BgQAAAAgp/0GhAAAACDH/QcIAAAAIOf9B4gAAAAhB/0oAAAAACEr/SiAAAAAIUv9KQAAAAAha/0phAAAACGL/SoEAAAAIav9KoQAAAAhz/0rCAAAACHv/SuIAAAAIg/9SAAAAAAiL/1IgAAAACJT/UkAAAAAInP9SYQAAAAik/1KBAAAACKz/UqEAAAAItP9SwgAAAAi9/1LiAAAACMX/WgAAAAAIzf9aIAAAAAjV/1pAAAAACN7/WmEAAAAI5v9agQAAAAju/1qhAAAACPb/WsIAAAAI//9a4gAAAAwA/2IAAAAADAj/YiAAAAAMEP9iQAAAAAwY/2JhAAAADCD/YoEAAAAMKf9ioQAAAAwx/2LCAAAADDn/YuIAAAAMQf9qAAAAAAxK/2ogAAAADFL/akAAAAAMWv9qYQAAAAxi/2qBAAAADGr/aqEAAAAMc/9qwgAAAAx7/2riAAAADIP/cwAAAAAMi/9zIAAAAAyU/3NAAAAADJz/c2EAAAAMpP9zgQAAAAys/3OhAAAADLT/c8IAAAAMvf9z4gAAAAzF/3sAAAAADM3/eyAAAAAM1f97QAAAAAze/3thAAAADOb/e4EAAAAM7v97oQAAAAz2/3vCAAAADP//e+IAAAAQAP+DAAAAABAI/4MgAAAAEBD/g0AAAAAQGP+DYQAAABAg/4OBAAAAECn/g6EAAAAQMf+DwgAAABA5/4PiAAAAEEH/iwAAAAAQSv+LIAAAABBS/4tAAAAAEFr/i2EAAAAQYv+LgQAAABBq/4uhAAAAEHP/i8IAAAAQe/+L4gAAABCD/5QAAAAAEIv/lCAAAAAQlP+UQAAAABCc/5RhAAAAEKT/lIEAAAAQrP+UoQAAABC0/5TCAAAAEL3/lOIAAAAQxf+cAAAAABDN/5wgAAAAENX/nEAAAAAQ3v+cYQAAABDm/5yBAAAAEO7/nKEAAAAQ9v+cwgAAABD//5ziAAAAFAD/pAAAAAAUCP+kIAAAABQQ/6RAAAAAFBj/pGEAAAAUIP+kgQAAABQp/6ShAAAAFDH/pMIAAAAUOf+k4gAAABRB/6wAAAAAFEr/rCAAAAAUUv+sQAAAABRa/6xhAAAAFGL/rIEAAAAUav+soQAAABRz/6zCAAAAFHv/rOIAAAAUg/+0AAAAABSL/7QgAAAAFJT/tEAAAAAUnP+0YQAAABSk/7SBAAAAFKz/tKEAAAAUtP+0wgAAABS9/7TiAAAAFMX/vQAAAAAUzf+9IAAAABTV/71AAAAAFN7/vWEAAAAU5v+9gQAAABTu/72hAAAAFPb/vcIAAAAU//+94gAAABgA/8UAAAAAGAj/xSAAAAAYEP/FQAAAABgY/8VhAAAAGCD/xYEAAAAYKf/FoQAAABgx/8XCAAAAGDn/xeIAAAAYQf/NAAAAABhK/80gAAAAGFL/zUAAAAAYWv/NYQAAABhi/82BAAAAGGr/zaEAAAAYc//NwgAAABh7/83iAAAAGIP/1QAAAAAYi//VIAAAABiU/9VAAAAAGJz/1WEAAAAYpP/VgQAAABis/9WhAAAAGLT/1cIAAAAYvf/V4gAAABjF/94AAAAAGM3/3iAAAAAY1f/eQAAAABje/95hAAAAGOb/3oEAAAAY7v/eoQAAABj2/97CAAAAGP//3uIAAAAcAP/mAAAAABwI/+YgAAAAHBD/5kAAAAAcGP/mYQAAABwg/+aBAAAAHCn/5qEAAAAcMf/mwgAAABw5/+biAAAAHEH/7gAAAAAcSv/uIAAAABxS/+5AAAAAHFr/7mEAAAAcYv/ugQAAABxq/+6hAAAAHHP/7sIAAAAce//u4gAAAByD//YAAAAAHIv/9iAAAAAclP/2QAAAAByc//ZhAAAAHKT/9oEAAAAcrP/2oQAAABy0//bCAAAAHL3/9uIAAAAcxf//AAAAABzN//8gAAAAHNX//0AAAAAc3v//YQAAABzm//+BAAAAHO7//6EAAAAc9v//wgAAABz////iAAAAAAAAAAAA/wgAAAAAIAD/EAAAAABAAP8YAAAAAGEA/yAAAAAAgQD/KQAAAAChAP8xAAAAAMIA/zkAAAAA4gD/QQAAAAAACP9KAAAAACAI/1IAAAAAQAj/WgAAAABhCP9iAAAAAIEI/2oAAAAAoQj/cwAAAADCCP97AAAAAOII/4MAAAAAABD/iwAAAAAgEP+UAAAAAEAQ/5wAAAAAYRD/pAAAAACBEP+sAAAAAKEQ/7QAAAAAwhD/vQAAAADiEP/FAAAAAAAY/80AAAAAIBj/1QAAAABAGP/eAAAAAGEY/+YAAAAAgRj/7gAAAAChGP/2AAAAAMIY//8AAAAA4hj/AAQAAAAAIP8IBAAAACAg/xAEAAAAQCD/GAQAAABhIP8gBAAAAIEg/ykEAAAAoSD/MQQAAADCIP85BAAAAOIg/0EEAAAAACn/SgQAAAAgKf9SBAAAAEAp/1oEAAAAYSn/YgQAAACBKf9qBAAAAKEp/3MEAAAAwin/ewQAAADiKf+DBAAAAAAx/4sEAAAAIDH/lAQAAABAMf+cBAAAAGEx/6QEAAAAgTH/rAQAAAChMf+0BAAAAMIx/70EAAAA4jH/xQQAAAAAOf/NBAAAACA5/9UEAAAAQDn/3gQAAABhOf/mBAAAAIE5/+4EAAAAoTn/9gQAAADCOf//BAAAAOI5/wAIAAAAAEH/CAgAAAAgQf8QCAAAAEBB/xgIAAAAYUH/IAgAAACBQf8pCAAAAKFB/zEIAAAAwkH/OQgAAADiQf9BCAAAAABK/0oIAAAAIEr/UggAAABASv9aCAAAAGFK/2IIAAAAgUr/aggAAAChSv9zCAAAAMJK/3sIAAAA4kr/gwgAAAAAUv+LCAAAACBS/5QIAAAAQFL/nAgAAABhUv+kCAAAAIFS/6wIAAAAoVL/tAgAAADCUv+9CAAAAOJS/8UIAAAAAFr/zQgAAAAgWv/VCAAAAEBa/94IAAAAYVr/5ggAAACBWv/uCAAAAKFa//YIAAAAwlr//wgAAADiWv8ADAAAAABi/wgMAAAAIGL/EAwAAABAYv8YDAAAAGFi/yAMAAAAgWL/KQwAAAChYv8xDAAAAMJi/zkMAAAA4mL/QQwAAAAAav9KDAAAACBq/1IMAAAAQGr/WgwAAABhav9iDAAAAIFq/2oMAAAAoWr/cwwAAADCav97DAAAAOJq/4MMAAAAAHP/iwwAAAAgc/+UDAAAAEBz/5wMAAAAYXP/pAwAAACBc/+sDAAAAKFz/7QMAAAAwnP/vQwAAADic//FDAAAAAB7/80MAAAAIHv/1QwAAABAe//eDAAAAGF7/+YMAAAAgXv/7gwAAAChe//2DAAAAMJ7//8MAAAA4nv/ABAAAAAAg/8IEAAAACCD/xAQAAAAQIP/GBAAAABhg/8gEAAAAIGD/ykQAAAAoYP/MRAAAADCg/85EAAAAOKD/0EQAAAAAIv/ShAAAAAgi/9SEAAAAECL/1oQAAAAYYv/YhAAAACBi/9qEAAAAKGL/3MQAAAAwov/exAAAADii/+DEAAAAACU/4sQAAAAIJT/lBAAAABAlP+cEAAAAGGU/6QQAAAAgZT/rBAAAAChlP+0EAAAAMKU/70QAAAA4pT/xRAAAAAAnP/NEAAAACCc/9UQAAAAQJz/3hAAAABhnP/mEAAAAIGc/+4QAAAAoZz/9hAAAADCnP//EAAAAOKc/wAUAAAAAKT/CBQAAAAgpP8QFAAAAECk/xgUAAAAYaT/IBQAAACBpP8pFAAAAKGk/zEUAAAAwqT/ORQAAADipP9BFAAAAACs/0oUAAAAIKz/UhQAAABArP9aFAAAAGGs/2IUAAAAgaz/ahQAAAChrP9zFAAAAMKs/3sUAAAA4qz/gxQAAAAAtP+LFAAAACC0/5QUAAAAQLT/nBQAAABhtP+kFAAAAIG0/6wUAAAAobT/tBQAAADCtP+9FAAAAOK0/8UUAAAAAL3/zRQAAAAgvf/VFAAAAEC9/94UAAAAYb3/5hQAAACBvf/uFAAAAKG9//YUAAAAwr3//xQAAADivf8AGAAAAADF/wgYAAAAIMX/EBgAAABAxf8YGAAAAGHF/yAYAAAAgcX/KRgAAAChxf8xGAAAAMLF/zkYAAAA4sX/QRgAAAAAzf9KGAAAACDN/1IYAAAAQM3/WhgAAABhzf9iGAAAAIHN/2oYAAAAoc3/cxgAAADCzf97GAAAAOLN/4MYAAAAANX/ixgAAAAg1f+UGAAAAEDV/5wYAAAAYdX/pBgAAACB1f+sGAAAAKHV/7QYAAAAwtX/vRgAAADi1f/FGAAAAADe/80YAAAAIN7/1RgAAABA3v/eGAAAAGHe/+YYAAAAgd7/7hgAAACh3v/2GAAAAMLe//8YAAAA4t7/ABwAAAAA5v8IHAAAACDm/xAcAAAAQOb/GBwAAABh5v8gHAAAAIHm/ykcAAAAoeb/MRwAAADC5v85HAAAAOLm/0EcAAAAAO7/ShwAAAAg7v9SHAAAAEDu/1ocAAAAYe7/YhwAAACB7v9qHAAAAKHu/3McAAAAwu7/exwAAADi7v+DHAAAAAD2/4scAAAAIPb/lBwAAABA9v+cHAAAAGH2/6QcAAAAgfb/rBwAAACh9v+0HAAAAML2/70cAAAA4vb/xRwAAAAA///NHAAAACD//9UcAAAAQP//3hwAAABh///mHAAAAIH//+4cAAAAof//9hwAAADC////HAAAAOL//wAAAAClAAAApgAAAKcAAACoAAAAAAAAAKkAAACqAAAAqwAAAKwAAAAAAAAArQAAAK4AAACvAAAAsAAAAAAAAACxAAAAsgAAALMAAAC0AAAAeQEAAHoBAAB7AQAAfAEAAAEAAACUagAAAAAAAAAAAAAAAAAAAQAAAIRqAAAAAAAAAAAAAAAAAAABAAAAdGoAAAAAAAAAAAAAAAAAAAEAAABkagAAAAAAAAAAAAAAAAAAAQAAAFRqAAAAAAAAAAAAAAAAAAABAAAARGoAAAAAAAAAAAAAAAAAAAEAAAA0agAAAAAAAAAAAAAAAAAAAQAAACRqAAAAAAAAAAAAAAAAAAABAAAAFGoAAAAAAAAAAAAAAAAAADCLAAD/////MwEAAJ9tBAAwiwAA/////3UBAADSbgQAMIsAAP////9XAQAAR3AEADCLAAD/////+wAAAJ5xBAAwiwAA/////3kAAACZcgQAMYsAAP////8zAgAAEnMEADCLAAD/////lwIAAEV1BAAwiwAA/////zoCAADcdwQAMIsAAP////86AgAAFnoEAAQAAAAGAAAAAwAAAAAAAAA9fwQARX8EAEt/BABQfwQAVX8EAFt/BAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAdq8EAAkAAAAIAAAABCA2FgQgdhYEIEYWBCCGFgQYFhYEGFYWAhAVFQIPExUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAiKwEAMiFBAABAAAAfQEAAAAAAAAAAAAAAAAAAJsAAAAAAAAAAAAAAHUAAAAAAAAAKgAAACsAAAAAAAAAAAAAAAAAAAAoAAAAAAAAAAAAAADhAAAA4AAAAOIAAABIAAAAOQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACkAAAAAAAAAAAAAAAAAAAAAAAAALAAAAEsAAABOAAAATQAAAEoAAABQAAAAUgAAAE8AAABRAAAAAAAAAAAAAAAAAAAAAAAAAEkAAABMAAAAAAAAACcAAAAeAAAAHwAAACAAAAAhAAAAIgAAACMAAAAkAAAAJQAAACYAAAAAAAAAMwAAAAAAAAAuAAAAAAAAAAAAAAAAAAAABAAAAAUAAAAGAAAABwAAAAgAAAAJAAAACgAAAAsAAAAMAAAADQAAAA4AAAAPAAAAEAAAABEAAAASAAAAEwAAABQAAAAVAAAAFgAAABcAAAAYAAAAGQAAABoAAAAbAAAAHAAAAB0AAADjAAAAAAAAAGUAAAAAAAAAAAAAAGIAAABZAAAAWgAAAFsAAABcAAAAXQAAAF4AAABfAAAAYAAAAGEAAABVAAAAVwAAAAAAAABWAAAAYwAAAFQAAAA6AAAAOwAAADwAAAA9AAAAPgAAAD8AAABAAAAAQQAAAEIAAABDAAAARAAAAEUAAABoAAAAaQAAAGoAAABrAAAAbAAAAG0AAABuAAAAbwAAAHAAAABxAAAAcgAAAHMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFMAAABHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALQAAAIEAAACAAAAAAgEAAAMBAAAAAAAABQEAAAAAAAAGAQAAgQAAAIAAAAAAAAAAAAAAADMAAAAuAAAANgAAAC0AAAA3AAAAOAAAADUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAC8AAAAxAAAAMAAAADQAAACIrAQAPJMEAH4BAAAAAAAANKoEAD2oBAACAAAAfwEAAGCpBABlqQQAgAEAAAEAAAA0qgQAOqoEAIEBAAABAAAA9G4AAARvAADUbgAAAAAAAEhrAADkbgAAAAAAAPA8AADwagAAAAAAAAAAAAAAAAAAAAAAAGEAAABiAAAAYwAAAGQAAABlAAAAZgAAAGcAAABoAAAAaQAAAGoAAABrAAAAbAAAAG0AAABuAAAAbwAAAHAAAABxAAAAcgAAAHMAAAB0AAAAdQAAAHYAAAB3AAAAeAAAAHkAAAB6AAAAMQAAADIAAAAzAAAANAAAADUAAAA2AAAANwAAADgAAAA5AAAAMAAAAA0AAAAbAAAACAAAAAkAAAAgAAAALQAAAD0AAABbAAAAXQAAAFwAAAAjAAAAOwAAACcAAABgAAAALAAAAC4AAAAvAAAAOQAAQDoAAEA7AABAPAAAQD0AAEA+AABAPwAAQEAAAEBBAABAQgAAQEMAAEBEAABARQAAQEYAAEBHAABASAAAQEkAAEBKAABASwAAQH8AAABNAABATgAAQE8AAEBQAABAUQAAQFIAAEBTAABAVAAAQFUAAEBWAABAVwAAQFgAAEBZAABAWgAAQFsAAEBcAABAXQAAQF4AAEBfAABAYAAAQGEAAEBiAABAYwAAQAAAAABlAABAZgAAQGcAAEBoAABAaQAAQGoAAEBrAABAbAAAQG0AAEBuAABAbwAAQHAAAEBxAABAcgAAQHMAAEB0AABAdQAAQHYAAEB3AABAeAAAQHkAAEB6AABAewAAQHwAAEB9AABAfgAAQH8AAECAAABAgQAAQAAAAAAAAAAAAAAAAIUAAECGAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAmQAAQJoAAECbAABAnAAAQJ0AAECeAABAnwAAQKAAAEChAABAogAAQKMAAECkAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAABAsQAAQLIAAECzAABAtAAAQLUAAEC2AABAtwAAQLgAAEC5AABAugAAQLsAAEC8AABAvQAAQL4AAEC/AABAwAAAQMEAAEDCAABAwwAAQMQAAEDFAABAxgAAQMcAAEDIAABAyQAAQMoAAEDLAABAzAAAQM0AAEDOAABAzwAAQNAAAEDRAABA0gAAQNMAAEDUAABA1QAAQNYAAEDXAABA2AAAQNkAAEDaAABA2wAAQNwAAEDdAABAAAAAAAAAAADgAABA4QAAQOIAAEDjAABA5AAAQOUAAEDmAABA5wAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQBAAgEAQAMBAEAEAQBABQEAQAYBAEAHAQBACAEAQAkBAEAKAQBACwEAQAwBAEANAQBADgEAQA8BAEAQAQBAEQEAQBIBAEATAQBAFAEAQBUBAEAWAQBAFwEAQBgBAEAZAQBAGgEAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFLUEABa1BAAYtQQAGrUEABy1BAAetQQAILUEACK1BAAktQQAJrUEACi1BAAqtQQALLUEAC61BAAwtQQAMrUEADS1BAA2tQQAOLUEADq1BAA8tQQAPrUEAEC1BABCtQQARLUEAEa1BABItQQASrUEAEy1BABOtQQAULUEAFK1BABUtQQAVrUEAFi1BABatQQAXLUEAGO1BABqtQQAdLUEAHi1BAB+tQQAgLUEAIK1BACEtQQAhrUEAIi1BACKtQQAjLUEAI61BACQtQQA8MsEAJK1BACUtQQAnbUEAKC1BACjtQQAprUEAKm1BACstQQAr7UEALK1BAC1tQQAuLUEALy1BADAtQQAxLUEANC1BADbtQQA4bUEAOi1BADttQQA9LUEAPu1BAD/tQQACLYEAA62BAATtgQAGLYEABu2BAAjtgQALLYEADW2BAA+tgQAR7YEAFS2BABdtgQAZrYEAG+2BAB4tgQAgbYEAIq2BACTtgQAnLYEAKW2BACutgQAAAAAALe2BADDtgQAybYEANK2BADWtgQA2rYEAN62BADitgQA5rYEAOq2BADutgQA8rYEAPa2BAD6tgQA/rYEAAK3BAAKtwQAD7cEABS3BAAbtwQAILcEACa3BAArtwQAL7cEADS3BAA6twQAP7cEAES3BABNtwQAAAAAAAAAAAAAAAAAWLcEAGG3BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABytwQAe7cEAIK3BACJtwQAj7cEAFy1BACVtwQAn7cEAKO3BACotwQAtrcEALy3BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMK3BADMtwQA17cEAOq3BAD7twQACLgEABi4BAAhuAQAKrgEADO4BAA8uAQAR7gEAFi4BABhuAQAargEAHO4BAB8uAQAhbgEAI64BACZuAQAorgEAKu4BAC0uAQAvbgEAMa4BADQuAQA2bgEAOO4BADsuAQA9bgEAAK5BAALuQQAFLkEACS5BAA1uQQARbkEAFO5BABmuQQAebkEAIq5BACVuQQAorkEALS5BADCuQQAz7kEAN65BAAAAAAAAAAAAPG5BAD7uQQABroEAA+6BAAYugQAI7oEAC+6BAA5ugQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEO6BABOugQAWLoEAGK6BABsugQAdroEAIC6BACMugQAkLoEAJW6BACgugQAqboEALO6BAC7ugQAw7oEAM66BADWugQA4boEAO66BAD9ugQACrsEABi7BAAnuwQANLsEAD+7BABFuwQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAMADAADABAAAwAUAAMAGAADABwAAwAgAAMAJAADACgAAwAsAAMAMAADADQAAwA4AAMAPAADAEAAAwBEAAMASAADAEwAAwBQAAMAVAADAFgAAwBcAAMAYAADAGQAAwBoAAMAbAADAHAAAwB0AAMAeAADAHwAAwAAAALMBAADDAgAAwwMAAMMEAADDBQAAwwYAAMMHAADDCAAAwwkAAMMKAADDCwAAwwwAAMMNAADTDgAAww8AAMMAAAy7AQAMwwIADMMDAAzDBAAM0wUAAAAAAAAAAAAAAIIBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAACAAAA3BwFAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAP//////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABD0BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQAAAAAAAAAAAAAAggEAAAAAAAAAAAAAAAAAAAAAAAADAAAAAAAAAAIAAADkHAUAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAIIBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAACAAAA7CAFAAAEAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAr/////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADwgQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA//////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAABkAAAA6AMAABAnAACghgEAQEIPAICWmAAA4fUFX3CJAP8JLw8rAI3/XgEY/nAEbvzlFh5SLACK/1wBJ/40BOH8mhQJUi0Ah/9YATr+8wNb/WISyFEuAIb/UAFR/q4D2/08EF1RLwCF/0cBbP5kA17+LQ7HUC8Ahv88AYn+GAPj/jQMCFAvAIj/LwGo/soCaf9UCiBPLgCL/yEByv56Au//jAgRTi4Ajv8RAe3+KQJ1AN4G20wsAJT//wAT/9cB9wBMBX9LKwCZ/+0AOf+GAXUB1QMASioAnv/aAGD/NgHvAXkCX0goAKX/xgCH/+cAYwI6AZ5GJgCs/7IAr/+ZANICFgC/RCQAtP+dANX/UAA4Aw//xEIiALz/hwD9/wgAlwMk/q5AIADD/3MAIgDE/+4DVf2BPh0AzP9eAEYAhf87BKL8PjwbANT/SQBqAEj/gAQJ/Og5GQDc/zUAiwAR/7sEivuCNxYA5f8iAKoA3v7tBCT7DjUUAOz/EADHALH+FQXW+o4yEgD0//3/4gCJ/jMFoPoFMA8A/P/t//oAZv5HBYD6di0NAAMA3f8QAUn+UQV1+uMqCwAJAM//JAEw/lIFfvpPKAkAEADB/zUBHf5KBZn6vCUHABYAtf9CARD+OQXF+i0jBgAaAKv/TQEI/iAFAPujIAQAHwCi/1UBBf7+BEv7IR4DACMAmv9bAQb+1gSh+6obAQAoAJL/XgEN/qYEA/xAGQAAKwCN/14BGP5wBG785RZfAF4AYQBZAL0DhftdAiv93wHB/Z4BEP50AUL+VgFl/kEBgP4wAZT+IwGm/hcBsv4MAb3+BAHI/vwA0P73ANj+8ADf/uwA5f7nAOr+4wDv/t8A9f7cAPn+2AD8/tUAAP/SAAP/0AAH/80ACv/LAAz/yQAP/8YAEf/EABP/wwAW/8EAGP+/ABr/vgAc/7wAHv+7AB//MDAwMTAyMDMwNDA1MDYwNzA4MDkwYTBiMGMwZDBlMGYxMDExMTIxMzE0MTUxNjE3MTgxOTFhMWIxYzFkMWUxZjIwMjEyMjIzMjQyNTI2MjcyODI5MmEyYjJjMmQyZTJmMzAzMTMyMzMzNDM1MzYzNzM4MzkzYTNiM2MzZDNlM2Y0MDQxNDI0MzQ0NDU0NjQ3NDg0OTRhNGI0YzRkNGU0ZjUwNTE1MjUzNTQ1NTU2NTc1ODU5NWE1YjVjNWQ1ZTVmNjA2MTYyNjM2NDY1NjY2NzY4Njk2YTZiNmM2ZDZlNmY3MDcxNzI3Mzc0NzU3Njc3Nzg3OTdhN2I3YzdkN2U3ZjgwODE4MjgzODQ4NTg2ODc4ODg5OGE4YjhjOGQ4ZThmOTA5MTkyOTM5NDk1OTY5Nzk4OTk5YTliOWM5ZDllOWZhMGExYTJhM2E0YTVhNmE3YThhOWFhYWJhY2FkYWVhZmIwYjFiMmIzYjRiNWI2YjdiOGI5YmFiYmJjYmRiZWJmYzBjMWMyYzNjNGM1YzZjN2M4YzljYWNiY2NjZGNlY2ZkMGQxZDJkM2Q0ZDVkNmQ3ZDhkOWRhZGJkY2RkZGVkZmUwZTFlMmUzZTRlNWU2ZTdlOGU5ZWFlYmVjZWRlZWVmZjBmMWYyZjNmNGY1ZjZmN2Y4ZjlmYWZiZmNmZGZlZmb///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8AABAAIAAwAEAAUABgAHAAgACQAP//////////////////oACwAMAA0ADgAPAA/////////////////////////////////////////////////////////////////////6AAsADAANAA4ADwAP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////zAAOQAJAA0AIAAgAKAAoACAFoAWDhgOGAAgCiAoICkgLyAvIF8gXyAAMAAw//7//jAAOQBBAFoAXwBfAGEAegAHAAMABwAYABgAYABgAIAAAAHQAFAAkADQAVABkAHAAMIIEAAAABAQABAUIAQgEHAAcBAwADAQQABAEFAAUBBgAGAQEgASECIAIhAyADIQQgBCEBAAEBAgACARMAEwMAABNAAAAQADAAcADwAfAD8AfwD/AP8B/wP/B/8PYAcAAAAIUAAACBAAFAhzABIHHwAACHAAAAgwAAAJwAAQBwoAAAhgAAAIIAAACaAAAAgAAAAIgAAACEAAAAngABAHBgAACFgAAAgYAAAJkAATBzsAAAh4AAAIOAAACdAAEQcRAAAIaAAACCgAAAmwAAAICAAACIgAAAhIAAAJ8AAQBwQAAAhUAAAIFAAVCOMAEwcrAAAIdAAACDQAAAnIABEHDQAACGQAAAgkAAAJqAAACAQAAAiEAAAIRAAACegAEAcIAAAIXAAACBwAAAmYABQHUwAACHwAAAg8AAAJ2AASBxcAAAhsAAAILAAACbgAAAgMAAAIjAAACEwAAAn4ABAHAwAACFIAAAgSABUIowATByMAAAhyAAAIMgAACcQAEQcLAAAIYgAACCIAAAmkAAAIAgAACIIAAAhCAAAJ5AAQBwcAAAhaAAAIGgAACZQAFAdDAAAIegAACDoAAAnUABIHEwAACGoAAAgqAAAJtAAACAoAAAiKAAAISgAACfQAEAcFAAAIVgAACBYAQAgAABMHMwAACHYAAAg2AAAJzAARBw8AAAhmAAAIJgAACawAAAgGAAAIhgAACEYAAAnsABAHCQAACF4AAAgeAAAJnAAUB2MAAAh+AAAIPgAACdwAEgcbAAAIbgAACC4AAAm8AAAIDgAACI4AAAhOAAAJ/ABgBwAAAAhRAAAIEQAVCIMAEgcfAAAIcQAACDEAAAnCABAHCgAACGEAAAghAAAJogAACAEAAAiBAAAIQQAACeIAEAcGAAAIWQAACBkAAAmSABMHOwAACHkAAAg5AAAJ0gARBxEAAAhpAAAIKQAACbIAAAgJAAAIiQAACEkAAAnyABAHBAAACFUAAAgVABAIAgETBysAAAh1AAAINQAACcoAEQcNAAAIZQAACCUAAAmqAAAIBQAACIUAAAhFAAAJ6gAQBwgAAAhdAAAIHQAACZoAFAdTAAAIfQAACD0AAAnaABIHFwAACG0AAAgtAAAJugAACA0AAAiNAAAITQAACfoAEAcDAAAIUwAACBMAFQjDABMHIwAACHMAAAgzAAAJxgARBwsAAAhjAAAIIwAACaYAAAgDAAAIgwAACEMAAAnmABAHBwAACFsAAAgbAAAJlgAUB0MAAAh7AAAIOwAACdYAEgcTAAAIawAACCsAAAm2AAAICwAACIsAAAhLAAAJ9gAQBwUAAAhXAAAIFwBACAAAEwczAAAIdwAACDcAAAnOABEHDwAACGcAAAgnAAAJrgAACAcAAAiHAAAIRwAACe4AEAcJAAAIXwAACB8AAAmeABQHYwAACH8AAAg/AAAJ3gASBxsAAAhvAAAILwAACb4AAAgPAAAIjwAACE8AAAn+AGAHAAAACFAAAAgQABQIcwASBx8AAAhwAAAIMAAACcEAEAcKAAAIYAAACCAAAAmhAAAIAAAACIAAAAhAAAAJ4QAQBwYAAAhYAAAIGAAACZEAEwc7AAAIeAAACDgAAAnRABEHEQAACGgAAAgoAAAJsQAACAgAAAiIAAAISAAACfEAEAcEAAAIVAAACBQAFQjjABMHKwAACHQAAAg0AAAJyQARBw0AAAhkAAAIJAAACakAAAgEAAAIhAAACEQAAAnpABAHCAAACFwAAAgcAAAJmQAUB1MAAAh8AAAIPAAACdkAEgcXAAAIbAAACCwAAAm5AAAIDAAACIwAAAhMAAAJ+QAQBwMAAAhSAAAIEgAVCKMAEwcjAAAIcgAACDIAAAnFABEHCwAACGIAAAgiAAAJpQAACAIAAAiCAAAIQgAACeUAEAcHAAAIWgAACBoAAAmVABQHQwAACHoAAAg6AAAJ1QASBxMAAAhqAAAIKgAACbUAAAgKAAAIigAACEoAAAn1ABAHBQAACFYAAAgWAEAIAAATBzMAAAh2AAAINgAACc0AEQcPAAAIZgAACCYAAAmtAAAIBgAACIYAAAhGAAAJ7QAQBwkAAAheAAAIHgAACZ0AFAdjAAAIfgAACD4AAAndABIHGwAACG4AAAguAAAJvQAACA4AAAiOAAAITgAACf0AYAcAAAAIUQAACBEAFQiDABIHHwAACHEAAAgxAAAJwwAQBwoAAAhhAAAIIQAACaMAAAgBAAAIgQAACEEAAAnjABAHBgAACFkAAAgZAAAJkwATBzsAAAh5AAAIOQAACdMAEQcRAAAIaQAACCkAAAmzAAAICQAACIkAAAhJAAAJ8wAQBwQAAAhVAAAIFQAQCAIBEwcrAAAIdQAACDUAAAnLABEHDQAACGUAAAglAAAJqwAACAUAAAiFAAAIRQAACesAEAcIAAAIXQAACB0AAAmbABQHUwAACH0AAAg9AAAJ2wASBxcAAAhtAAAILQAACbsAAAgNAAAIjQAACE0AAAn7ABAHAwAACFMAAAgTABUIwwATByMAAAhzAAAIMwAACccAEQcLAAAIYwAACCMAAAmnAAAIAwAACIMAAAhDAAAJ5wAQBwcAAAhbAAAIGwAACZcAFAdDAAAIewAACDsAAAnXABIHEwAACGsAAAgrAAAJtwAACAsAAAiLAAAISwAACfcAEAcFAAAIVwAACBcAQAgAABMHMwAACHcAAAg3AAAJzwARBw8AAAhnAAAIJwAACa8AAAgHAAAIhwAACEcAAAnvABAHCQAACF8AAAgfAAAJnwAUB2MAAAh/AAAIPwAACd8AEgcbAAAIbwAACC8AAAm/AAAIDwAACI8AAAhPAAAJ/wAQBQEAFwUBARMFEQAbBQEQEQUFABkFAQQVBUEAHQUBQBAFAwAYBQECFAUhABwFASASBQkAGgUBCBYFgQBABQAAEAUCABcFgQETBRkAGwUBGBEFBwAZBQEGFQVhAB0FAWAQBQQAGAUBAxQFMQAcBQEwEgUNABoFAQwWBcEAQAUAABAAEQASAAAACAAHAAkABgAKAAUACwAEAAwAAwANAAIADgABAA8AAQACAAMABAAFAAcACQANABEAGQAhADEAQQBhAIEAwQABAYEBAQIBAwEEAQYBCAEMARABGAEgATABQAFgAAAAAAMABAAFAAYABwAIAAkACgALAA0ADwARABMAFwAbAB8AIwArADMAOwBDAFMAYwBzAIMAowDDAOMAAgEAAAAAEAAQABAAEAARABEAEgASABMAEwAUABQAFQAVABYAFgAXABcAGAAYABkAGQAaABoAGwAbABwAHAAdAB0AQABAABAAEAAQABAAEAAQABAAEAARABEAEQARABIAEgASABIAEwATABMAEwAUABQAFAAUABUAFQAVABUAEABIAE4ACAAIgBCAEJAQABAQIIAgkCCBIJEIgAgAEIAQkBAAEBAggCCQIIEgkRCAEJAQABAQIIAgkCCBIJEIAAiAEJAQgBAQEAAgkCCAIJEggQgACIAQABAQEIAQkCCAIJAggSCRCAAIgBAQEAAQkBCAIJAggCCRIIEIAAiAIIAgkCCBIJEQgBCQEAAQEAgACIAgkCCAIJEggRCQEIAQEBAACAAIgCCBIJEggCCQEIAQkBAAEBAIAAiAIJEggSCQIIAQkBCAEBAQAAgACIAweDAwAP7+/v7+/v4AAGxERERsAAAAOFR8fFQAAABsbABsbAAAABg0dDQYAAAAPCQkbGwAAENPREUgRURJVE9SIFtmMV0AU1BSSVRFIEVESVRPUiBbZjJdAE1BUCBFRElUT1IgW2YzXQBTRlggRURJVE9SIFtmNF0ATVVTSUMgRURJVE9SIFtmNV0AQ09ERSBFRElUT1IAU1BSSVRFIEVESVRPUgBNQVAgRURJVE9SAFNGWCBFRElUT1IATVVTSUMgRURJVE9SAFRPIEVYSVQ/AGNhcnQudGljAAAoKBBsbAAAAHhIXHQcAAAAOER8bHwAAAAYMHwwGAAAADAYfBgwAABDVVQgW2N0cmwreF0AQ09QWSBbY3RybCtjXQBQQVNURSBbY3RybCt2XQBVTkRPIFtjdHJsK3pdAFJFRE8gW2N0cmwreV0AVElDLTgwIHRpbnkgY29tcHV0ZXIgMC42MC4zAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACVzIFslc10AVElDLTgwIHRpbnkgY29tcHV0ZXIgMC42MC4zAENPVkVSIElNQUdFIFNBVkVEIDopACVzIFNBVkVEIDopAFNBVkU6IE1JU1NJTkcgQ0FSVCBOQU1FIDp8AFNBVkUgRVJST1IgOigAAAAAAAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaHB0eHyAhIiMkGzIAMzEwJSYnKCkAKissLS4vPgAAAAAAAAAAAAAAAAAAADU4NjQ5Nz08OzoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/QEE/P0BBP1NETF9XSU5SVF9IQU5ETEVfQkFDS19CVVRUT04AU0RMX0FDQ0VMRVJPTUVURVJfQVNfSk9ZU1RJQ0sALmxvY2FsLwBzY3JlZW4uZ2lmAEdJRiBOT1QgRVhQT1JURUQgOnwAR0lGIEVYUE9SVEVEIDopAAogVElDLTgwIHRpbnkgY29tcHV0ZXIAIDAuNjAuMwoAIGh0dHA6Ly90aWMuY29tcHV0ZXIgKEMpIDIwMTcKAC50aWMALWNvZGUtd2F0Y2gALWNvZGUACiBjb2RlIGlzIGxhcmdlciB0aGFuICVpIHN5bWJvbHMKAC1zcHJpdGVzAC1tYXAALW5vc291bmQALXN1cmYALWZ1bGxzY3JlZW4ALXNraXAAcGFyYW1ldGVyIG9yIGZpbGUgbm90IHByb2Nlc3NlZDogJXMKAFdhcm5pbmcAaWYodHlwZW9mIGNhcnRyaWRnZSAhPSAndW5kZWZpbmVkJyAmJiBjYXJ0cmlkZ2UubGVuZ3RoKSB7IHZhciBwdHIgPSBNb2R1bGUuX21hbGxvYyhjYXJ0cmlkZ2UubGVuZ3RoKTsgTW9kdWxlLndyaXRlQXJyYXlUb01lbW9yeShjYXJ0cmlkZ2UsIHB0cik7IHJldHVybiBwdHI7IH0gZWxzZSByZXR1cm4gMDsAcmV0dXJuIGNhcnRyaWRnZS5sZW5ndGg7AHtNb2R1bGUuX2ZyZWUoJDApO30ACgB1bmtub3duIGNvbW1hbmQ6AD4ALmxvY2FsL2RlZmF1bHQudGljAHjaY1zAxEAI/PsPBEpKSv0dHR39IBrI7f//AY7//3//Tknp/7uOjg/vlJo+vPvf/+H/h/4PH2AYu/7/ePX/R9LPMAoGFIDjChR3YPgDzNYHxuN/hg//gXH7738/w39g3L3vB8ZfBxSD4pPhw/t3//+/e0epflYrRgZdXYWSzJKcVCsFhfTE3FQIhwsomlhakpFfZAURTUktS83JL0gtAsmkpBYnA5UrFAPlS8C8osyCksz8PJAkhGOlkFOayMVVYmvAVWFracZVaWtkwsWVVpqXDFKnEOLprKHJxcWZmaaQVJKnYaCpUJKRmqdQaVupa6iQmpcClzFEyGijyhhBZSpsK9D0GCNkoHq4OJNzijUMjTW5OIsLijQMtUtUzQz09Y0NtIx0KnQqdQxNdIx1DIDQSMcIqKagKDOvREPJw9XHx18h3D/Ix0VRScfCBIiAkiW2JdqGXGD77CiLfWYWLgMIC5SNYbSAUUjZjF13/r0/u7oz3VWZEcaH0TxAPSI8Mi4qJgYmuX5efq0+BiapKhfcPEoLEyNrz12q1WmdujB3lc6lVTNzD526dSXu3rtrAH7/P3oKIGhlbGxvISB0eXBlIABoZWxwACBmb3IgaGVscAoACiBsb2FkaW5nIGNhcnQuLi4Ac2hvdyB0aGlzIGluZm8AcmFtAHNob3cgbWVtb3J5IGluZm8AcXVpdABleGl0IHRoZSBhcHBsaWNhdGlvbgBjcmVhdGUgbmV3IGNhcnQAbG9hZCBjYXJ0AHNhdmUAc2F2ZSBjYXJ0AHJ1bgBydW4gbG9hZGVkIGNhcnQAcmVzdW1lIHJ1biBjYXJ0AGRpcgBscwBzaG93IGxpc3Qgb2YgZmlsZXMAY2QAY2hhbmdlIGRpcmVjdG9yeQBta2RpcgBtYWtlIGRpcmVjdG9yeQBhZGQAYWRkIGZpbGUAZ2V0AGRvd25sb2FkIGZpbGUAZXhwb3J0IGh0bWwgb3IgbmF0aXZlIGdhbWUAaW1wb3J0IHNwcml0ZXMgZnJvbSAuZ2lmAGRlbABkZWxldGUgZmlsZSBvciBkaXIAY2xlYXIgc2NyZWVuAGRlbW8AaW5zdGFsbCBkZW1vIGNhcnRzAGVkaXQgVElDIGNvbmZpZwBzaG93IHRoZSBjdXJyZW50IHZlcnNpb24AZWRpdABvcGVuIGNhcnQgZWRpdG9yAHN1cmYAb3BlbiBjYXJ0cyBicm93c2VyAApjb25maWd1cmF0aW9uIHJlc2V0IDopAGRlZmF1bHQgbHVhAGRlZmF1bHQgbW9vbgBkZWZhdWx0IG1vb25zY3JpcHQALmxvY2FsL2RlZmF1bHRfbW9vbi50aWMAZGVmYXVsdCBqcwAubG9jYWwvZGVmYXVsdF9qcy50aWMACnVua25vd24gcGFyYW1ldGVyOiAAWU9VIEhBVkUAVU5TQVZFRCBDSEFOR0VTAERPIFlPVSBSRUFMTFkgV0FOVABUTyBMT0FEIENBUlQ/AHjaY1zAxEAI/PsPBEpKSv0dHR39IBrI7f//AY7//3//Tknp/7uOjg/vlJo+vPvf/+H/h/4PH2AYu/7/ePX/R9LPMAoGFIDjChR3YPgDzNYHxuN/hg//gXH7738/w39g3L3vB8ZfBxSD4pPhw/t3//+/e0epflZpRgZ9fYWSzJKcVCsFhfTE3FQIhwsomlhakpFfZAURTUktS83JL0gtAsmkpBYnA5UrFAPlS8C8osyCksz8PJAkhGOlkFXMxVWWWKRQYmsApitsLc3AjEpbIxMurrTSvGSQFoUQT2cNTa5qLs7MNI2kkjwNA03NSl1dONcQyNXWhnONNDUrkGSNgVygLBdnck6xhqGxJhdncUGRhqG2hkaJqpmBpr6xQY2BppaRToVOpY6hiY6xjgEQGukYARUWFGXmlWgoebj6+PgrhPsH+bgoKulYmAARULIEaGgtF6cdZdHLzMJlAGGB8imMFjAKKZux686/92dXd6a7KjPC+DCaB6hHhEfGRcXEwCTXz8uv1cfAJFXlgptHaWFiZO25S7U6rVMX5q7SubRqZu6hU7euxN17dw0ATi40LHjaY1zAxEAI/PsPBEpKSv0dHR39IBrI7f//AY7//3//Tknp/7uOjg/vlJo+vPvf/+H/h/4PH2AYu/7/ePX/R9LPMAoGFIDjChR3YPgDzNYHxuN/hg//gXH7738/w39g3L3vB8ZfBxSD4pPhw/t3//+/e0epflZ+RgZdXYWSzJKcVCsFhfTE3FQIhwsomlhakpFfZAURTUktS83JL0gtAsmkpBYnA5UrFAPlS8C8osyCksz8PJAkhGOlkJsP5HOV2BpwVdhamnFV2hqZcHGlVhSAtIR4Otvq2nFxZqYpJJXkKRhwcXJW6toawgUMQQLaSAJGQIEKZBXGIAGQCi7O5JxiBUMgv7igSMFQW6NE1cxAU1/f2EDLSKdCp1LH0ETHWMcACI10gKYUFGXmlSgoebj6+PgrhPsH+bgoKulYmAARF2cJ2EY7yqKUmYXLAMIC5U0YLWAUUjZj151/78+u7kx3VWaE8WE0D1CPCI+Mi4qJgUmun5dfq4+BSarKBTeP0sLEyNpzl2p1WqcuzF2lc2nVzNxDp25dibv37hoAVDUuCgpjYXJ0IAAgbG9hZGVkIQoACmFkZGVkIGNhcnRzOgoKAGZpcmUudGljAHja7VNNb9QwEF0QIMUX/sK0FSjRJtl8bLe00sIBqNQbQnBCSLiOtzXNJpbtbROh/hXUE4de+Guce4Gxs9llKz7OSHi19sx7M2P7eXLn2d3B3wYZDK7Iw29X13Z8vf5y892uH52b43D8gw+/5Qf/xz89Pk9u/vS/v39vEEVghCn5AcBMKE7QpwtzWqsDOG7hUJRCytqiBdcMg1wUOnMHaqaENAdQLqh1RSUX6MEJnXNJC0LMNCHNNM0S0rqZSKqMYCWHKXy6RK/kxtnpONwPJ2EepkmY7l4SMltUzIi6AloUr5ZJfhO2AYGyZrQE2ZXwZNyg1VijRaO1RmGhOTWnsaJVUc/9KE1iLIxTMEp3cXFR7S+joiwY7boAgzwahh6XPBaV5sr4/QVCGRBeFT8dFOHVQQOPeFEklaiMv72zHcc7fV5AvO78GqXpzWxtM2vOagVnoUQ9QVKh9GrXAIqaeMuj2XkIKfq6v0hZn/gWHkGGV7VMhpQeZfbGHrNJTvJ3LppxUdrw0V4SvCcedFLaeQhWRLdT66C2g1qCmOIMdYibSGchMnbR+GOBJaNIYW+cc6jLAuqKa8TEzJ31KeRJAuaUV4gtVe2C16qe2UOjrh4K2C2bIr85eu5jCLE1j03lJ4ErCO20jVKwsT2TrpnhJpMtmWba3MrJ10yX4xH3kBdUSdCSMk48123wCLIxSuo6Dp00n3SRimtuVvXGy3r2vjbPfgJotr3p9ibe7Rb3bmE5tm6eWHjja8jSFU48Vmr/iX2BKHorC4pf1WN4oegF9NJqLLrRoi6WLZSuFVJSNHbvcM+pu+zcLTg8ev0StrbD/XE4GSNlpmaYujf5AfElWNtmb250LnRpYwB42u1WO28bMQxOC3S5qT9BzeQAydAUAQoDnTp16ZTbCggXW3bcnu/cezRu//fNrN4iJZ0ddG0k62SJovSRFEm9vnh78VJeykv5f0t5rkw8bW5ed6DbPLuhAwDHvedR++i5UvV6YlK9O8fMcK549Vo/MkTg9gzZSxpMiiL3A3uAwzwLEQLdNQPGk8MY6HqET2GXsqmPGWd0KOXiRIfndB5h1vzPKfSMAJh2lmrwSs0pvfMJzMjYwtlHYZ+5B17e6AyHFdMna1+yP9g12m76fgRdm300N4AXLOW3FC9LoBscEb4MfscT80dzYR9sitimzx0DmjC/En2yts/dAcLn9onsS+RH/uvlkw5kGvZFKr+xRagWD6aT/xY4T9QOdt52xn9xBUcO9udurbc1P0nn8f3WsYhTW5b03Ix8JUA+Bjr5MkR8f/zNtlO619Xqj880i0/zqyrHMLnIaVqgy2ZinzqL0In9sGzBPyL7RWEeHF5UJ8D6j/iRv+Dzwd0pSP1zTgmxfXL4c/Mof2B9af0BGH16/ZmM4nksXrDemdAjfD5eRbEVUPwjucU3SNNL+sfpLG0kPmdyzpkCmB/nu3kGsxgg8p809hL/J3EIHxf5T+x7cZzz9yiKTy7+5/RM+XkSxzGmjJ+QOJnYHkJ69T1tNB6FuOZ8pDwVACIBwL6dcAyI8kMef5Lno/yW40d6Oak/tGIicTaTweye5I2H1JbYb4rwpX7O5+hl9H4kccDGgPjNGrye24g9nd8f4vycef/g5AcZf5tNAJy+Px1P5m3o3r3/Ut4sXl3c3LBhN9RiydimbYZCjqtxeGy7Jfsq+of2qGbWol/JBUwcq/2hFuyxfWJDyzrRrEWn+dima/dseBRy1Ilt147NmvWHbjeIXu3Qr7rdYViyeqzUcNccRjli22ovDtW6KFZ1v3h/e1XU7aqq2SCOw6fLe7nbz3G3+sEeuvapkTsfvzXfx/2hZ+0vea46ra7+/GbrdvvusigUjoVivf4o690Vmfhwe32n54duFJR0J3+auKnqXlxLFMVmbFbDrm3Y/ZfPiyspZvEXh5vLqm11c2ljLnRpYwB42pWUT2zaVhzHH0uGwAkzrnLIoYfXNJNAJdoj8aItEhJr/iitthYRFm2Xyg6xASkGB0yAtelAo8N0B3LYJsgu22kNueRYBVRFOy0NWaNqqrpOSaft2iS00rqsa+M9GzQhdWzw+1j2e9/3fb/fe/6nY8D/B68HDMPrd3cFniQV8uFDpVolqwrJPCWrPAlkKiX39lKpSuUklcspuTt3lKOj3JGS632cO6Jy8qsmHRgYgFJAmuNGIHwvGgl44RgnhAisslHJHwqPQE84JASCmjTLRbzYBwXNKLCzHIwFJD/0RiNSSIAxdoHjQ2Ehonoj3nBAlEbgXJRVu4GgGMU96GMFTmRnCUJyICLusCOaSDgGaYLgo0GvFAgFoefcqMVKEMYAD2ekoGixXnUgKPm5YK2sBVkhF8QJjN65iMU+aCWMETFssZ+xSK8PI+sbQ8gWtyVsA3YbjYfEcCAoWfpc7vGpKTjlecftgZ6L0H1udPJUn42mbcOqSXJIZ+yEmtS4qcN31QwgQMAJXIABYlt0GNWnYgC9wALeApPgA+AH8bbo0J5rZ52eOv116DpjdTx1ZutIGF2XmiGJWcJ8jVnDbGB2WqRDyyBX5WoecwNzE/M95n6L1DK4fkFmiMxOMwNFKCLRybgY0bXkWnNuODfQjgrcgGtwCSVRCs2jGeeMc8r5vvO866KL0O7kE/jrk98e/57446M/Lz+7/NeV51deLL5YPL6q8bHyn3QTVQDmnz14/vZTV2Zly39/O/Gm7vP9Rz+VE/mtSvn6SnHZ3/Pl+lelSnl1c7eynF8vXh9eKKyXVrO+WD777VZlWY7jiaViIR7L5ItFfOUzK6USFmQchZViIZtRL+pQQc4XsnI8FovhkVrIuLu5f6wc7pazE6cpM3VqNLq+rygH26uJafr0CYrq427uK4fb5dXlbHyaPqEzSzceKXvlYlbOZ+O+8T7KjcdvJfhMvhD3YQPl/vngMx+/IOOaBTk2PSSZB+8dK1oc7k2Mjr9iwi+QATBGwHYBxgBYEjBdgNWDJAlYA0jqQQq3DSCFddzGHk1XPa379ZrHqCqsSavVCZImbVYnSHVqs7CO29ij6aqndb8BnNU+orPah/DpP+1avKy369c3nGu6vsH/st6u3wA++deftb6J3ugnm3i6GnRjm/kb/aYW8jcsLN2kULrJRtING0k3KZRuWFh7+Rv9pub5XxsCIFU7kBkfoKVQuhEAPd0nx/ppRAsXzl+49i6iuf6dicnoPPvh4g93F23XvvhGKNruFgvCd7cf/Hhp7+De30hp8X5wM2QudGljAHja7VXBbtw2EHULtKh4aT+BlwDSilqLktd2jLIXBwVybXtqYKAUV46VyJIgcTeSjP2XnHrIJb+Tv2jPvbQzlKjVbm201wIlbC3nzbwR+TgafvbN5yf/NMjJyXvy9e/vP+D4+OHXP/7E3zfGjGEY/5e/POk/+X/8Z8Zvmcu/+PTVSRBQnek8vaI0fkHX6X1JAJIbfVfWVzTp6PdZnlWVQddpoyBuHtioOqv0Fc03Es2sqDZg0dfyPq3kmhAtQkJUC0/V4aMXURiSKtuWWjwAzABlvQh3RBav8xRCqjIrdCMedqSSuXjgK8bP2HN2zi5ZxPiOkNtNoXRWFlTVqdTp9SZJXe0RJwheFpmmA5/eljVV4CLOPqGTl0rmNIcJFXRFfXov9d1SJo3rmlmTFa4+5WHoeQseepZQEQfTtSKIWUzXJXGM3c1sA/RzwHEq3GG7yNlgwuhENzd70c9NJWDHr878/mY3YFomebrMiiattTtsg1Ue+tJiTcYnPvD/77rU26eEidegDbgfESeDI5jpxEGoSaTVYpBJlQ3ItAKVvEGZjQguQgZ/fDXsfkhQT2xkmEkt1+4G1I3DUcSt4Cw+3zNHamuZeCQTc+t5+5Du0eRjiBW/5pO+KP7M7IW7OXVz7ofLC8/fnq68yTUcBPezZxc3O8ex8JPHAfJDUCYyn8/OY38gVbR2q3g91dNtuYW188tJ6TYEGyKWLdSkai3cWbhDuLNwb+Ee4X5KEq0Bx9wLTHgKcVOimauzLuIMDHz6lEchDQKVFjqt6TviDJTO+M4v6d53h8w61Zu6QCqDkKP6q0sN9Yc7ZgOHyZbJjsl+UkCyhKnJ4CzhTPHJjlgSMRVNdmzs2NoFZD5oHkxhAyGOtCqOa12CkomV0GIgo7L6WazHPUmsVrmYSgqWGySLqQjBpIQms6AR9ZMDDqTHGAXrURFO+MzdeYHkM3bnUXzzPG7EfXnIg1djVMJxqUmM02gW0HqBimYJWpNYzeNG3FeHPAL64p6iodCJUxgJhYzHaScSO+2FslP4RvA5lQKCR3XQNyV+KJxVkTfFVXzZf1dFIPlh8E8vr10PNMtuaaILN/Sovkuhl3VCdT6nptWNPj73BYe+yPpaodojXjz3HfHOrA+22B/xVnPfyANt88Y1d0QQXJuGOzZYpLn62fMw/PZsNW6DOMeXVZo36Qy1rdq8FlP+YL6hKSV2yresgvuVVjKrm7H9eNgyaVXD+dmPjpm7dX+pDMNcro+Cp9Hj8Bk2tuEtr97e4AdTO2Z9WCK4wp/pj3C8ZOyKw1EPPdGcuzdEvajlu3+1C8fJ2Bt8DfZKb6jFOlXaBRgu/3NWLZU3W4BZJdat+fVpuAxXsBihoQejin8BeliWCnBhbGV0dGUudGljAHjalVZ5IJXZ+1fTdm8100y7b6YbKnLx7ouiDAolFVNaGO/KDdd2ZUu7CqmmjC1ttCGypCwVLZMt0WqptItonchUM37nkqam+ed3Du8973OWz/N8nuW8/Q2kGoaGMpVC5SmYyGQ+jKegUgkyXvDylgI5E6By9/Yzkc0V/FnvILWEF/w5sFDm7h0oU3nL/AMVKs5dvY9R71MoZX4BSpXCS1Cv9ef8FD4qE5lnAKN+VSh9AsCbzI3xEnwYXir19OYYT9kiUwSDPo6tTWGUkKoX92rC8Lyf4O//cd7c0nKBKRSEzrSAerfPM59j5eho5SAzlYZKJaFKcLiptuVPMKEtl0h4RsWYasMYxMEchiEYiqEQihE8JmAMJlA4xnW/4wjGQxiBUSROwgSM0yTPCTxC8ghH4TTOwATPMAjHIwxD0wTPIRzDMzyGC7wgCDyhHSb/hDzPxsLekNKW9yBD3Y0UEBxHYR5hcRQXcRITGRZHUAKCACAsihCE8RRKEjQniiTJUKLIoBAEUFCOhCCBxAlR5DigAc3worpBCAaesEB9jmy+YK6V2urPkWEWIVAEgnCSwjAa5RCWAWYiCIZRNMywAphFERGjMAGFGUREBJaiUZjm1Z1BOQEhBYgQKZZFACFAObCB7dZA/BzZynJWN90f2aZRHhVREaFQhMTAiKYFMMZZihBxCMhQQByOshiGiQRJwRCA52GRpRGgnciKPFCKIzAeuIggEYQTKBFYK5AE8jWyOYGp3Sz53GbgUwwFdKMMDWPAxThGIzgBuIdoDIdYICNQCqIgkiIJHGeAahTOiTTHsCxMcxyHkRxPoyRKqXXBWZajMAg4muC+YNviP5CBZwHXGITCFI9D6k6xOIbQAAXCaIpCaWA9pe4Ui4o0MB64HKPF7o4JEEUDjmgCIUiWYHlW5ATyP2xeaGOBQNpy2RcRRiKANgxBMYplKFxkMZYgKAK4j4RA4FCAcwbHaUCpQNO8iAs0i1Aky3McCVM4j/EcjfAiRXK4+LGx0NfIFrPMAa7sC2SGgaDeEd7d1L+9M6LYI1E39QhENtMz0yNRz//z39N6R58jO8yxmWn1L5thBAGpqo4zGCYZBDQcRmEc52GURUgERBsLTKNwlOE4CoEpASJFigEUgwgmKA5GSI5kcQpmUYEiKIYSMB77GtnWbt5XNsM0DCHAnSiMgJBCBRIcT3AYoBNHMZYkCEwUeJTAQeQQjAiiHcQDSTPAdpbmCZYmWVrgEIFiYJ6ggC94MBJxERPYf7ENMvrLfEaAh3kYB5tBDDEoAWwWCIgQII4UAA6C8gQNeOVQHuMokFMYxgDrQVYzBMTi6k6A4MZIEqQ+CDoRBLr4tc3zHBbPUhv9ZSWBBYSGIBSFKIBLYiREYaBEYCDDMVA7UAQTcAQUUg4HRoOIRIFzIAJUGxBUgB0WVDaSwlkQ5SwJKgKDMSTHgtwmv6gkC+xnfeZnHqQpKLrAaBoTERbBSB4F2Ygi6jpKITiLwhhMQQwo7wSHsxxOwzhGgmqFCSTG8Cw4n6ZJlBVYIBMhlidJkeVFWl3DQDJ8gWzjMMd8ruUnuoHOCE4CqggcJBJEgR+QrhjHEDipjheChikYMMCC4OIpghQYUp3gPMbSFM+Cq4LmOQg4l+dQChQPHgYlDgQCyYiECGqoGjpM2nuHqUx7L0CFkheCTOHuKzDAB+gi9N6EUjFAyakU3kq1HMj09KWSnj3gxbT3FlzafYCzkdoKqUT09pMpTGG5DlgiR2S8t1Qi8fH2EPTU96iBwtiYmIKqf5CJqFzlrQzwYgU/PbDWxD+A1VPIFQawvhwm9AGSoOQlUvCQSj+h/6OQo42FWhupBCjtzih5T6HnrpdKFKKMVSl99CA5AslxfRmY7DHRDJap3AWlDCjUY3L30xBWC/6xrxv10yHwvw+ZpvPp8v+Pwwy+Pkz62WmYPiCne4Trd+8WghQqPf2Pq9RfOn5MoHrIefrrwXi3fT5+CqVKT9vBao6VhWPvl4e2nAAd6l7QTbh8hfo7yIdR+Pnr9Sqo/5H87gNWGKljTg4j4M9AMUW9WfJJv48YZuBYAz2VsTGMT0T0uxeqjZrSi9TjegdTGPlM3U+x8tHzkBzGAafd0GrJciBx6BVIPBVKQW+R4XJDxRQHubV8kdz641gBEHrU+aiTylRlAKvdPwTS0BgxZJylLgZhXnNt54bPgTBBt2amdYAvszjs8tUwefhv+73S5FfTErzOVTRcd2l8fvObJInGLJuZFMm81Niskfv/P0CuAZp6r0a/rpflNumnqdaqoi5Xva1x3J4j9Uc9ixAf+fnZXsZ85ouVL7riY2ruTyFE64vPBnia7K3Rc4tHCnfkTnSoeBZSrDWlouFcxfGlWSFVykh7PpbeOPfki84PTRmR45/YBhCjNcI1vtsYvnnT8IgtG3+IGLnj18ioEVujInckhOwJXblqtf86Qjpq+2/xW9Kit2Wk/xq3OTcrKzZ2b6H5/lVr1h6UHj6Sn1qQuO3oiYxN+XllmVdqiq7/sNLyzJqD+LnzF6oqSh8cq/7t9+0Pdx79/caz2uTiW4PvNGY+2ZUUk/q4+nLC7oLn+h6bnjgTC24139Apy9o/cL3vg4mOzVnJVi7e9xS7rF8lz4oa1lVuPeTQvLrSnUMslozVP8KTMVBgKnYuZ2tlHOw/qm2kr075rsEB0mdIrrUdNsN37pIA+8RD++dNHnH6Qa6woL8EOhr6eJvz9SMOlY55wbj5woxLh6qS3+BuTjT3ayweRWTk5j1qSF75XjszNt2pao/zcuPF1w6HvH09oiVQ4npWNXz2qLOBMWODt0347vK+aqcSrmNS5bJTOa+iLyXSt9ulcxfKlyS3O5q9C8xsqlpSHpwXanTC8ypmtysnbGm72U2PGwUdVeIJH+WFKO8xtbfGTai5VEzN6hze/Ox6fYJ38aUr7wPLtKbpDMwPcA3Se5jtuvVvrbW+i513td/6y8X2g+4fEwN+7OIH1ZFaiwYl+ycxz9vfnl9t3c+9cY1khPu+AV1BKyTuZXTzAJ+ZpuR3YScXB01wG/QgTmZ2I7hTttnR1+23NSMWuidHzTOPtwomb7g/jB44pbNe+f7eoA1b3V4279g2aUnQXiwj/OK2X01lNpt2TITr+bUXM0Y/ZhwXSlKckB1WOuFLTYLvefyC7FwUTzvZfBMrVSQ0RRRI6n+kDM/ZrEsquUTdXxOY1nLYYo1tHRcdrhl5f/sxrZBH8T6/6dcmbCAiS/rYz9Q/eMBM13ay6YpRIRqHPa5eHeu577VseWBUcmpL6hGztH2RVidMzqWvu5ioSDl+MzLZo4A40jrwVCLdHJyo1Gzryt6jG9qS016leTRL78Ro/eNlCxriDuYxFUfzalcsmZt5e92OK+aPzhbqpjyK3ZVGl2clZhay7v0yOd3lN9vyqg81iJPfijKv/OuxY4xLWswjbc5qjrt0LP9G38E+JcPeP8kQXkc32KUGushfpORrznxxuNB25ZLifkYrs/s0Pci7vdHbNu21zwgDz+yyw5oauSXKNIdjpzc1DnG+/HfhkKzq6QMlQuS8E8vfbLY+eQqtnkOaOjM3J3DIEYeUjvTUaW+TAi6Oz7x17YzBIsO6YmH89rzqoS/qA84yuR9OXK29bEfWtAwL82xU7uofWL+qy84P67w0rfPicbskn6uLopLyH5xPK0zuyrayMEque7jw79ePl7hVtjtvS68ac4uyV+L1m3e6mDRMGPb8XWOyseH7tlp8VYhZ80a3omP7z29tf95f1eJYUxlKfSjKaWokX5cbrDZaP3nqC7p11l0ldffsc+WMPo9CfQx23fd5fuuPxecMwjqvx43XXb8y5GnA6rbaljOvYkuNpz9j6lyKQvqfzg6XKx/o7O2b7pZ+Mds6rHO4a+ntG2eaX3mrcpbu6zv9ZQkRrr/6QMPdPlyc+dC/X5iN9UvqcFyk+Xx+Vej0wn3Pbd1/GvCtx/C0BYO3zuiEvz+kr/T7Y6+k9cS498/mrdN4HQ/N6LDoJ/XdrCHv84POgQslTj4bSlOYofbuhW1dqW7u7evvWQXlW45XSjZLbif3lbhmlgwdsqnOt3JEoKX5X87ZEbq6uzVryy4GX5HTfwbfm1fmbvXNAzgq5DbXZ1BJGaFUan47Qse6Kf6AycaXW91UyaNOlpXNXPKdpvP8+eW6NsN+QuCdwaeStEfXl5v1rYkRPX/Q3Ot+bmFIztri9UOXvuk7e07Fgp0Rt1MMvRNoM1hp+0vLwQnzI6x/nuIXf+HS0OzEB0Un9HKDnNruTvIYVOXeYRTmerReph88cXZHTdykxMeER73dItEoNK/uMbV4zLjR6zJZJKnRBK+b633I6Je2RFkfg/xLvxxCfNPbDk8Pn1RW1Md468iCSWa5EWdd0+Z37e83pmRnkE5FU5hlsknl5A8dBTO2fDsj5Y+HR5rcB1zZuCbGT/vgz5rhqTU7k1W+LhsSvy+1vkwn5G5pPr7dxLCiPLHh+Owz7zX1Hrdc3TPAdvGFXc0T8mwclZrtR/T905Klm6tSF15PwJ4dtstuKHm3e4uFy/IWTZd3JpGXs9LaRrQ62RfOJ73C7exfuf5YF1kUnxh9YGVM6zLvxIyiFVXRby3uaHW+O/22PCb2w6mnrq2F498fhFJDbywfaa+oEbXfJOzY3fbhUkPCH6fnZ1heabMfXP+zuGDk0dFDM9ynH2lY25C9r6XfJM+oKXVnd9yw3hK9f2m7pLas4+bJb4ZpeLWM1Q59mpG9qmuotmu524JHDY4aFf2VXvsrfk4t7EjfO9Rjakaoc9vyuAJYUxYoaWi4fIY4lW2a6Z3t4TK6/1ufPe1LfxKmOr27WWv+tv9d7nCl7Z8dtcX10bKQ8gONCiv8wHkthe/sirsF2p3F525lri8azBw7E3ByIZ4Vbpx0r61fXfbq3T6upbMbH+3Iv9B6DTr345Brg75z+v16xkunX7bcr0uiCtFo46jyyoc/2jeVEnPhzQ9N+NZR9WUR5jmbIor4h8TYAvtRMzTYU/ds8aCL4zJfxUxcJkijgkrtvy2JtdJ5/GLVmDOnTr9eee2oSFQ6+WHK1njvZU0jA3N/NzLKSWyVJxBFo0+96/+sK6HSoNn8WEJcoPJ/Q169b7SMeltteDknReJVZX3SqDrMLkflu8yVHp9/ZddGVVxxuzBt0+Jq5SEkycLz6fcpJjfK36jezhjqPH8gfTl+ErKbrGoJ7qvyyojFjoUXuU2sTiw/u+J1VsRf7vvHmJwcmHd8e0r0Y4XD1FmFq+7n6Ec3FzwLvDL5Bpan5eU5pdmgfu+qgCO7TJ+aPRlzZ23Tq0Itu4qYDe/3aG3FE/Z6CcrqP2+2zjRM/vuvZeLgpOp+pH/GlS0+ywduO5ze5PTDosrFnk9qb0fuoVLaT3vj6MiHpS5apwINX7hce197nOhMtXHxWxcWcz/cv3P/3aNerhbDa55mFlTNn//8+Rrl7RNxFzLmBfzPd3rXtGuNJ/J13v0V4WFsektW/OZauLMva+98P6U86FHMHb/doaeuLr7bcfPgnXa71VptP5f+eaB/W9ue0pXP7iinFt/9ds0gDY2p/wdCNOTvcXVlc3QudGljAHja7X1rbFvXmaCaznYjYbATut1INbAFzZ0BqPha4UMPSggzcC03NuLEGduZNht0UkoiJTYUKZOUKLpw17Yyzo07zqRox46C3Wy62o1d7WQy+2MXA+wDqVHU/VFgZMuOXQce3CsRtmRDFC/lp2Yl7vedx32Q91KU6iiS6yuTvPc8vnO+93ce9/hLVfaqR9fv9yW2vyHuaG8Xd/zhH4r3fvMb8V6hILYXCm88423/K5/oE4vzaV7hrzDNIl9k+UOQW5K/41ZB/LV3TtyxrR0yS+uPQv6OUe9QCfxIxLx/5Dotij/Fcj8VfbFO338peH+9a9vIL3/t87L8Ifw6JkKTvv80NHT6T4+Jvs7OX/7tiHdILLpOi7So770h8bTXK1pebVDVOzKk9u8rXxHvhUJq/5q97Uexf2ue/8VXT48oTg2L4jR+3hfN86dFcRg/Fvnvvk/z3y/K74lSmNOQN/22ST1o8/2sKGbfNqc579sUwp225g22k4Uy7w+zhCmALb4lvk1gvPWuOX5vkXI9PdMM/ykT/N/W0WfKmj7vUfg3/s66j6c7QRhHxPKXSf677wL8E6IYAvjhqPhA+P+XfymK/+tHQ+KfHx0SX/3R0Hdsf/ajf7AdpulavsjzRdthWsaYX1Qf0li2af6/PiyqBVT4H4riq//t2Hds/30U2veq7fMyr741JP67o0PfefLwj/7hZ3/2I/Evjx0z0OZHWG5I/E7r0NA/fPjKkHisKF9//Rz1t60M7ds0/hw9CvIMbUf+akgMvzXUYwu89S7SB9LXvf0/DXRoAzvnHxd9Xu/Q0PhHvqH5j3zHRtpOi2jBdfki2EPf+EdDmD800uY7NuQ7XVRfHML8OVIfKhvzof6Qj8D3Y/3Tx9D6svxj/vHTQ16vzzv+kVec/whEH+hv0f6x+Y9Ol8sfmf+oraR/rT9Bez409JOf+4Zu/LwUv9YRYu+HfjI6NHRjlPbfUH+Ewh8ZGRpqGy3FHz8s39c2OuQbaRs6PeQ7tlT7Xzj/R+dFsaZGFPPzYp1t4+G6TbYjomOTKDpRP4+I+nznBppft2GTWOeAIqgbLL8O65P8TaINQGw6olOlp86LdTWPic78+U11mzY6bBsOOx2HSzXushMqXT4iHrHQSCfkHXea5x7HLwfkOY+bwKV9vYwPW6DYZVbBWVyQonz58hFrs6ACYpeOPqJtoyhuskEZHf349Z9ZOQV+nU8V5ddRwHXcN7Cy9+atO3IaTFtbG2n/8Hvv1R3Jz2/YYNu4wbnJ5hCPbDL27733sH9HeL7tyKa6w6y1x/EPxODx731PfPyDD8g9iMWh94arjmH8UpzP8zBtiXwS/5nBPz1cLT7+5SoS/xXnh/A+NPxWCfx33jHtnxq1vXMI8t4Rfd/r9H1Q5f11zZdHPjldHP9Bk753IP5zkfjvg9EHEP9hH9Du+X7yE9R9cu8FPX9v2HtsfcR/8O/xQ/CD9Ku6LH7l6A7w7zsef6JqBzy/sXQ+XpZlKsivOiLWHbKJXzq0CfPqvnJ0qxPy6jbZIf8x0r7z8UNHdHW/SfKrIN/O4VNjUkfU6PBhp9PEuDBdc9YdofrJ1U5/1UFV1AyneFgzDnbonwP6d4T2b+Mx6J/DCXZwx+MbsH+HKPAjKOuAZ92xI6KN2KEddXWPWRiQ0tuVX0W0/Vdv7wA7iLQh/FmK/3VVT7xR94T9cF3Voa+J9kNvOKs2OOseg/5zElXZ39iwAfKfOPSGaD/8Rt2XnhCdX4L8uiMsv+qNuseewPqOOqhfV+V4w/klO9jCw6QM5EPeBvg88cd1djuUPQz5AHwD5KOprLL9cZ3NvqnuMWjfZn/D+YTd6XwMMpiDUPv3GLaP8DeIToS9QTONzsPMmJ477nReJnCPiBvqVBI7GcOPHMbHw5z3TucRB6mmEwOnniVH6sQjYC+hf5tsdbbDNnBs6N+cThAHtX30RxtsdaQ9h0jtug1bOqyJ5hSUaZiAzwzkvy1S+TCR0anDtNw3WDmza+ptDRbcF/MP6OMk/NnApGOdX6lUqhb+bClbLfydGj0F36mNp2ypU6mNkHcKPqn9tSnI3p8arcViP0v9rPZA6gDJSaUqGv9cFbPi5Wz28lTWcTXrcFyGz1QDfL7hcJDMqzCczF4WHdl/uupwZI/DR3Q4Jt52OOS3ydggdK8ghgqFnjsw+IfP0Xn4nffO9cxXuTC78NfwKfTAJ4afo4XCxxASfnz0y1Ufh7CPgFlt7Ub42GqfPLXx64Bvre3kh6dGu1MDKZZvg/xR8jv6842MEqOpUCpM8kmZVOrJUfg9GU6dsnWnB0Zp5YeA/4Db/tSp0f1wcyCV+hn9oWkHCH32AwU2QsYpGzwDHWqh7M8g5QCIx1Lwkccz39jkeDcLcVPWZrs6nbUdfzebFa8OZ0Eyhh1b5H86/2/kt6/asm/ZbNnf2rLvgyz89nh2+PLVYYgDewpfdonzhT/q+XD+457QnYLYE5qHD50I6BGP1rgKoVzh46O5j7/fA6wX50NHicjQL7EnNXBygMj2aC3y9cknR5+srT35ddupE6cIB08iFwlOwN9UN2B6cqD2RAgwOwEZJ9Mpfn0MBT74AH7//anUKTW1MvknVxbwGn47OyW+/f672bfeEoe1KY2jIfFXodBR/ITg0xMC/AAPwI9eV0FBLkNAffyyePmv4TsWOn45FDqO6Q+C/6lUSyKVGkmkWtpStfCTcqdSz4HQJ1O66+rBVOoS/B48mLoU+zR1KfQpSVvz8j1A9DtVu/FJ+P166tTG2hNUvz8cBXbDvxCkp0H/nxytfRJNQ20Y8rtB/1XUa2u7B0BooNxJqH9iAExg6tSByvjPYfxLuPTk5M8nu092t7ALn+HR8Myvk+07f6p+ht8fPtn+Ity3/xTzhoeH0zvb29Nft9nSwzbbjw35Nluq9sdf32/b2W77cXv718jnxczX+D2weT+Iv+3HqdTXzD4Qa3vbvN4R7+iod+TUgbaRkbY2/a+aP9LmHUml2hJUmNTP7/v8/1L2A6/n2tu3Pfenu/HT/tzw8M7nIAk/JNMLVGw7kGrxeskHn0+NjIBtHqXP8HtqdOOB2o0/21/rtu2v9br3134VPl7v/tRXv4q6DXW8jBvw1YIwSGrphbA/nofGdLmkijdx986d5s5QaKDzV5GB7t/8ZqD7H/+xGeEw6Uylsukfpt6/njK/AN5o4kCq7ZRp7mjgG98fDT05+v3ANz70yt8IwafT+1U3ipZXX26YXe14eb3tjanUtpQIePkPplqGhlJvilDcZ6TPF81/xOHASGpkdKRlBO/htmX0wEgLTT9A0kZbSBrB90ACHg+MjOJ9y2jLKAk+wBdD+FULqmyjD2CnQGsxJiG+C1P2g5u2YeZ+G1z7sYRaBjNtGMehJdy/H20C3JC8E6EToe5waOBk6GQIv4eHQ+HQcCrVfKKz+cQJzAVnGKL2DrhHrR6K0E+8JD916dIlIPybmHzp4NXUm4PiIClzhT6AtzgICSTt6qWDl8Q3B0lZ8CYpMZV6M3XpKtyInMWXaDI0czV16U0x9SZASQ2y7KuXUgdFBou0ReBchQTaPlSBfFr40sHUQWxqKf7YHDYYfWzagH9ws2GTzQa/GxwbHHBng2/IJ+mY78A8B/7bAI8bNthstJbN4XDgI6RBRSi2idxvgtq050a5Z08HUsu8zLQnkUh4W1Le5YICjYRaXjQIOliUtZzFqYSqvOSxpSiLpGPjCQYloSvE4ULvvKQxDXSL/jdRVN6rPicAsDdRXF7XDHQ+QYtfHUy9eXwwdek4SMDV46k3r4JsaDJFrjdRbFCYDlJJ4TKH8h0Ow9fwCQi9wvAXCp/Af/BIpB+SiBpg3gmSTbPC4fAw5pN/YawIRYdZNbyjaX/wWLRKkiSZfGT8ZyWJNFeS17/PkxRy5eFPuWCOMOApnT8vyfiRysICmsiyvNbx/Q//8X3lb04QtCVTLM6QPJl8SdYYQ94YwljTCAMWf/vR3yn/9X9AT3NnZEsJyClMEqj4E/mWjchKpBjSZG3j+7//z/9VPvyfOY5MsZoyPJXz7Beff6kwZsvkUwW4Y8ItuDB9LeObV/iVJ3jAt6THmGKiuy4CQoSbROcJ3hTd/Pzi4sLi/VtrG1+OKuMYoAJPOpGUpEsc09x4JoNMJTpM6ZAnEkzleH6xUFiEv9trWYNRDWmfLyk5gqaMish0k7ohiSGlTEzoTBrqsHQW/wACEOzO4sJCAThcuK2sbRMtS1QRVcXDW4qWdEVRzuVkmVmj8SJjxFhMTPeteeDuAnzuokJIVWv+krVeglJTBssKehii44DTZKbI9krKlSv4D2gxvwCsXcCv+2Cz5HWAr0HIlTFZZeAF/M7JJg6ambKcpNwpwIXmagGUeOG+Iq0vhGWGmUS91Lk8dUPF0YbM+AvF5+C6h/jehZ/CfUVed/iymPpXJEg8S/RXKglFctyBYWGCNKTcKxRuy+sKYekCxhf4l9d53hIc5DGSPcGNeZ4FJPcW1hmDJYNXpg7KZLAgK+MTv1XGJyVVKnJnxkDqQZtvS+tNnqkX4h/Jgi6ZzOSkrPPIVLDvLd5eV/yVz56trL9mpAD3Pb+wJH/ZqHuNuOKVBP1sygCc2fzCggl/9fMJgOzszMzsrLQWMCa2WF4+usqt3HkMTyGQvmsylNZNkEgyIDs+Nz4zk/2CPTWRMmqklq3zIMVY884CxJT5UnrJZzgRJTk7e3dOmcjM3ZuZ+SI9F4bJY9Q0LyckpCbtDkgxDoHnF+6iOTcTAB6gz8zepaZ/7N7MrPQFcRW/IDIibii3jGkZEOEMDJxywNfb84vXIIa+bS4cUl5iI7CZu2Pc3d2bXfVgGzq8gHEvDG8WFu7n6ai2UnnGgdXEpIITG3Nz84WFa4sgzbKFgkNYDnSUszO3qYPHYeTs7GoLtLxABnIF+EKEb/GJqkpDk1tKBiKM+zjiXwR87+bPSNZBzHmpSsrCwHKSTapMjs/Iq83eAg5rFnFugjD5NnK40jGsnJsv3M7h+Og2CPS1a9dwQGiJbw6DcGl2cpLNiYC1uJOVVlmYpXvI30LhGrsodyv0SDKq7RiMEe4qdxYL12AMDJDM57EJhiA20sz4hBqUT46vrjxLOJNzD5m7cA0kegF+b6M3ylXIYfnO4iIauTnA5t7iNdCIRQt8oaUM8VNgnoFCaLHgM7HKBlpS5PytecpYMgFVgDjol7Ll9HtJ/TsF1ACqjnP3yAzWojm+0uQEiWPA/d5n1nlSyayyA5Zzkkz0lhirApupIr05I1dEr7l7C7cnM3ky9ZzHIfCchanDabJPiEPKzt5H1VVyE/OzM6vrjsjQHj0R/KEL5qsElfIX9D83B/EFKO9tnO7KmYyT9dSRCKdns+DDYGgF6K6y+8XpWJlGG5KsTUKTRaMKPRIZB2J0hXDOlh0CSL+QKKez2dlxZXwmO7Pq0QaZlPlE+QXlqswiQSDDGUVajlrMzaHblcoRCUNzBh5DaCWb/QKWEyVZG9Trwl55eaNTUhwqy5NliCSd14SdToqtr2lMM5Q+kcupDlgpSUP+/JqcBGHLgBW7N2sBIJZQ1tzx2BpkL8jcFbwqtCvMIJmPFsgMNs+Xz+fXIH/ZWiex2uXmcfg8lhV/JWmCGEO9hctMymtQliXpLF7cohW7GxTTO9nZ2ZnbhCJW+GLwbLTF8vnJ82tOnoG35/nCPr8zIkQm2e/Nzt5VzhPPnTMfG8n5C0b2AsMnFWmtqa48xocxk3zR24gvqCXEDRNzc3yHgyl/0VRl8mCfJE0HspmJtbW3RZJhqHN7nKz7TmbGIfpT8rli/uJS98REhpPCIiiTsFA+T1eGibefzWZvL2vWaBVUt1CQ7o6NKWBoMhmy+quUyDMybnxifCIzmcvz7Tvm+KKAALUuglDDGB/QvatcVCYy8toR5sUFEGeU5wkqzIj0ReWCXunIXgiVEGQRxmqYQNwvU4oMyP8cTnll1gq+IHMLixKyAmR5ksj0BZyWYywkU+d8gDGeGSfL4pL1SEFGIkF2BnQ2r8xmJi7mc/Ozs5OZtbIRQJYWF0HVJHlCZQpuRNKGihfQFP8SFRLZrlgvqTF8ZSozOJs5A8KsKPPZGUlaM/sepMICYZaUKfVHClvjZhvOMtoYUrKKPHWTYVhkdiaTmZ2dXUO7PKRFFi6p8QYZ5NKFFvKbYzO2+JSD0STlfC5nOksgGTQbXNEkBCjZNTQ6khclNXyS1HhSukhjBoliK3GjBST4FZLhLNLkrInNknP6zR+ZWToGXUPOV16QNMtFxwsy3adEiHDRONkjkU1YOOEoo5pLZv5I58jW3rBXlguSYUKAMkdWLko8qjaE/jj1Jp1TlEu4Qc1kdUFiS45rdc+4vFiw2BosWc9gyXQLhNnSIN+pBd57TeLLzRVTT5kNW2VlpRG+zHaW5nNrJ6DSjcU1fCExf+4cGyXIuZWyR9I2Na2R6FGWLihjfJ0aog2+FH8GmHKFmSe57NxyWfAX2P7wtWGqZIkP9qijhGiSGRZJ3RnN1HBFHaYb8daMVZblM9ChxWsFsg+a2GPuf9nmaO6IViiRlS9HrRp3FxYK13DJmwwICiDP6o5vnFakcsjcyvK37uAWgIwZvjJ1dl+AMC8UFq7hIvBCXiksLujHdrIiaeiu6AUUZO+kLJfE1hIK1qpPy6JJuqgs0sXqhUUF/im6KUlJ+qVM38mQ+ehIXj6+eRhG5ZUJJJVEMWeb6vOrbrOpSaIrwPjCxYI67suTnuFDXjcygrHgCrwvmbSdwJ8x5dOLn8InMwlPdCwireYyEol5FdRdsFigxgsMO7aM9glHM8cm5JbPD753GiTk4sWLyGVkbWYin1MnAaXVlWcFES4savs31PkZsqyFDKBDwqqV4At1JZnPePKwRiIvR4zj36RyRlpdec59igzGXToFSu8LkqwOEmS965WlXyzTXpHxsokRRoOA84B5ZXVnomWJTTLjzosFxfCKGTEpdDj0yS8IY2RJWS66Y4jQmGy6ozIzSbdxrKbJIu/GKZ9Cu4WFT9mEHO/RObKr/4p8BWLo/DkSRP9imfgqYzjBaYYSMYdk7mR1w0yJeZpPP71Y5G7YOO6KrDmiZfN3LDP5299CvGExVZv7ApZF2dTUxU8vFmmaxD0uIciFlfBXnpycyExMjk3IltbyCxgzSfQqnlUilpmO4vm729Iyu4e7RCdxxt5qk9IafyUc7PPy8B1XrmSUK8r4On37n/JX5fiSzEGVwO2SY+sSX77iKYOTmSCvcy/ljZG/CvJXWo/MlcCxkIUWZXJyJpudnZyYkJfU3wtKxtI+r2nmyvJsdhK3XQASiO3MLLdDkuUwlvB3Yl3qrzyRnZnJzmYAt4lJwHZuYo64L7IIceWcxfEdythamqlbJr5Z5Opt8Mdwm+GLKjjVrigWQT/hb25d6q88mZkA/s7ev5WZnJjNZPiwVb6i5NU5rmK/KpO97BNrcnPZUuqLC/IYlQCPZ2YyE9w280Me2KwPi1CU6/R5fPKKklmP/AWbDEP1mZmJOeRyBrdk0JGFDBaYT8yQyBTGGGOfTd24Sadv9DO66yvSQHSzE8qns7MzEzgBl8dhniyzNdM8oERWiVnQfUMhRhuPrTgryetQfVGSZz6dzMyCL5rB9eALhKtsP/FZSV3hP8suaYywVVKU9YctdvvOzCRgOkMRo4MMepQMm//5BfsjK4Hq2+GyNLk+8ZXALE/OZmeRuzorxl8FYKv2SIGb7OygHDmVZXJ98reKzI4DznNzc3KRoEufKZ9J6tBSvoWH6RQu5OlkjbJe8SX8Q6tVbH0k405Ciby3tXCfoDuBq6nrEl+VmWa+Sh9uyIuFxbv3FsjZMkoub/FC4Xq+5Ot6/srS3Tnl1j181wxQBtmWHjaEweVMG3awXJ9fmFjE84OuXSss3J2THzb+5g0Lpbj/kqzN4NEFuDlalh86fPWLQDJI8l08Qahw99atC7fGzM4vWNfoyoaVcFlalNEpAX8Xr+Ey+n1FekjwlGiUQU8E40jh7lrcH4/6e3duIgM/Dwe+0hUYzLPdgrLGYKmAd7KMJ3EoyhSesfOQ8JedSEmXTNUtOPICm9TK0zdklYcEXdy+k8dTKz9RzilntGEQ368m070hY8rDYq0kdrKsxN5O4fKs7r+Uzyufre52hc8X3zO4YYueyDgmT3P+yvIinb2SpfU6VrCyz0Rv6cYH3SlSMowXyCB56jPl/EMUa8hXcjdvgFWSruTPnZO1iAOwB68rS9fJsQQPT/QMLJ0i9pnpsT6iBIylWwqMi4uiSVlav/pMFg9kdhh20TQVvsKEp+rQM0p1h9wpN5X1irGKJz2HovhdSjx6cwwndlRJl6QbN24oynVlfR4GL53LkUkqcgD2FePWDkm+qdwrLBTwCCHOYHLk+bSS/+eb61OpZbKswPRXMfJXUm5M3YQx/9054PL8An8jgAp4fvrMusR3DP0vPfIuV4zvdXKY3V3l5g3cy7ZAFh9uTpMjWG/mp9elRPOZaPmMMn0GBg5G/gJid67dB0LASBi8Ez8KAPGt9HietYo3PbPgrG47Bw2d71y7dp9gOIcHRv2/m2xq/vp07vp6DqrB7E4pU+hrJZ1q/7NyQbm3sHB9ii00SNJNwlkwWWCk1y9/JeJTr9/M3cjf1Mb8dHXhTqFw8xYeDo8Zsnx9+ibZWwxeaf1GXbJCWAh+BljKh7rsGK07eOb3bXUz4g3l5hgpqpxZt+hWydNTSn5q+iYiqEYS7JgS/qId25wn45kHJKpez0sO13P5sSlgce4mhNNTdPu6rBT9zxVM0ZXpaZCCm+t50ISW+Vdn4R9xxNPKDfbfFJh5WEicnlakdT3BA73PTU1fvzH92c3PQJWn6DlIVvZIWus7RCvBeIrYKvJ/qrDjgx62FZSicTAGj1PglJTrDzWi2qh27PoUeJmpMfn3AV86+stfR+Nc9ftxsf/3Sv4XE69XbdliT4aTkWCb3f5nL2/fu8/+rd177M/t2r3nlRrICvQne2LxNnt7sPN1e08y2df29NNdcN8QTnb2NIRjWKYrmOiE2vZ4rLs/GAm/HrR3B3qDmJPojIf7km32SH8AH8PRvn54Itl9ga4aTOuMRRPJQDSZqInEOgMR+7atL7z2bb+n0aV73uF3e5vZ8wtbX4J8d6vHpUuAAi6fj9fYvmuX31fDnpLhSDDh/0FN9fPbX/G7W5qFmuod27fu2Qf3LXD/0u59O3e/CA8+eNj70s7nt+99bcfWPS/s2r53L7ZiTIUUL6Rs27V77/b217bt/ta3tu+BtEZI2/3S9hf1aU1aufbduzGlWSvFUlq0Ms/t2bpvOyT5tEI8qRX78PzLgJTHhdnt2/c+D7cked/WfS9vf83t97hdCGv3rpdfeBEe3PiwZ+s2KOdGFF7Y+cLObRpeHrfXkAgJiAJQ6LVv7cKuedzY/a279m3Fe9LNHVt34r1Pa9UDj636aq+9tHPb89Dxl1+CHMT221t37cLOeRr5A9TxIOg/3/ki6banmT9gTgt/8MIDtvSt3bv3fXP31j1IsW8DYp5WQyI25EXEX9j6HKDyrV0v72xHqN6WojQA7vUVpUEb3lZCp1cAoV2vfXvH7l3b/Z4mty7tm3t2P78d2m1CIu7a+udbEXqTlz8A2KZG/gDwmppqDhKh7o7EOkD2BgLxcKAD5I/Lot9VreUmw71Bwd6fCHaBYtj37dzmrLf3BkHduljxzkCv/weDfpeQ9rsOsrTeWAdIM38KRMO9+6iA86RkPNCne+zoj0SCSV1CKBxPJPf0R/3JeH+whqpvR3+3vR8UJZwMq30N9Uc7k+FY1P5SPBxNtmMZZ6zj+8HOZH1NdSgWt4eFAex3XwAA8hx7V6ymGlHsw0qIuj0YCfYGUb2rq8MhezLdF3QO1P/Q7yC5DsCgS5fYEYtFgoFocTLvC00f+KE/GgZEe4JRAFoNCHcGnY5XHQ0N4YYGx3ftcDNQT7vB4MFDMJIIau37dU2Vg+McIC06kFYOOyDtCAUAkKOewSdICPZYNJK2h7sSZu0wPHkrjEmDST+0hAlIyrTwukbKAUZF6BGUgg90Iw0dEhzYaHUw2lWjz3N812HVe8hn/eQENOugRtxylNCKIUjSCfiqrq7hpbeUXFASy9Vsqfii/iASCSdQ8DojgYTqFXgqCnKNKptqcttzweT2ru5gwjkopIWU0AO9pDVT/hQyDp3CFjdP7PH3lCYO+gc3O0lSqv5pD09N+9MstYek1hANDiaRWvbeQB/yHZmHj0HsQTWvmYz17QqGkv5eKO0cfBphCGnyU68rsifc3cPKOAc3Q8tm5TpiyWSstwSaM725p96spDlQQ/Ga6ngw2R+P8m4KvC+C1pigg0Z5aUL5bT0QDuyNRcJdznC0a7BeBYxPfj/xvw3UEwDNUa6rUcjspfkeyC/N0jtI0wKaHzOvT5yiaRZ6UtMM7lfLZZr3lvhM837o/Uw5TDE4IJSyLEGDjGooU1rEEIeUZ1p7INodjJfhGvV4pn2l/s86y7sSVukiLdN8YziwEuuCDjOQLLYuKoG2QrYz0ReICqE4xKgJIRKL9am6RcLIasz24xdakGaMPqpJYT+5xQp+8kWcFPFj4DywLHEdgh3dRk84AYauK2hP9He+ntgE9ZLhztcpBIKwBjbhpz8I4QcHBWp8g11+Aq2m+iBqstr/RMPLfV2BZNCJsUV9NfO5cP+sP9GATZAO/dtEA4X5rEu1+VAu0YD9VlOqEw2kK076u9ld/ydqRZZP8eaJr/KC32XZho5Sz6MHTH+eUYGSvnEYiG5FzdHGSPepqGjwEBM77wbhAnOe7IeSxI/02ZxoQJZS6tpraAkDYfdA72K9O6EJJ3pA1hoIU09DnGQ51YbrTesHE2CN62s0/F01pVRi9ZguJlYu4hBUos5YizmGjc7OYCTyHQG/XxGwXpGok2w/+UZ+EKEkhUnaK2oaVvXjV6k8tocTfZFAmgpkDWMUKa8GcXaGLeUKzTXIMaT2IvESDbS/9PcVgRUlRK9/ILTD4NmcZPsgx0CucNfeQCgIP9SKrpByiB/C8bt96jMF6Hd7qDkg7fhZcySBFeA3mNhF7mL9CYNEeuq3uP06W4IkF1RjU954WNiORIPalGopNM2kvaRpWpdUC2BUOI67Ligtbi0aSy7ZIiVCcZtkdGPapFqeB7FLSKyF6D1AqaNjNHO5+ybJI1HtwKAwkC6Ss2SgG4YypIwDOQsxrCpbELmq9wOD/gEtZyDtH0gbtBcHiAJGtr2xAfBRJAgHs4S5kb6egN9HhCzMDRU+xZGO/sanSGgJz32xFEotuQX6wT2TtsG9yUA8qe8YTdB60NkfR5PEK4Qi4T6tHd4XLWUAYhgYVDEew3hAz74XAAEncX1kaJuEYakdAXLbMzD4Q7+LuwbSEqY94yLyRtyOi1kiCiIaHEza+2KJMBs/UepH0X0NbsaqWloa0tKYllZrd2KcRcYG2rgmphssqJWTESEZFzoiQkfcbzKqiQ4K0bRAhiFe9lNPGwGkUEtM4/FkpJ6rEfGSFqXilZTqqAhWB8DSlHTQHx2kd2l/NM3CDKrTnKucE1wEqE1PNKAcMj4EVeuxjVZyqkPQGjtcdKDfH+1KcB4jOxlccLMMDM15lswfbkESakV0abqyaQ1K2gglTaDsMEBJ+3VpODQ2sy16BMxJQREtpoZOH7VcY0ihqgmzfBbWrcjEazoC3UkF7YF4kA9mO8G+xQMaZUGumd4hGf2Q3TDIXMLgM/RxM5m8pSSgOWlaMM0facE0KUhpVcN6EbMnYjj7FY522wN0dI2hWCxEbtW4nc1ngJpiMrOcvcFAFJ0D1AvDPzIeV6maSALCnHOMdD9Ug3ONmiQO0/GAWDvNjXDkuTPT24gO0GGq5Si2ON1lT4WTPZiSQM2PdhHrocongkZLU6wGhkCIkJxaM7UhxivVliTUduzU5qr2hMTXNK1hcAuwSMtJazlpyElrOYkkDR8S++NJZ9fgX3g2d6X/wsOEFXKf8asSX6qQ1SrU9kBvoDvYBU6T+ASurRSFMGUo8R7IquBgZzAIFBAQbeLh7ZFwKMgZTzlsRIvgQ3yIESmCDU+HdsxweTbRQJtmaqtiYGfTWUsHBHpBso5iuViVKlwgTnpAxCQZA2bG48DUSNreRRsiMhzl80sqimQkNriFKFr9nxBNU/PSmJcmeWmat0P1d1RuNab1xZ1a70gUI2B0AaYGPb3gFqhbJCyF3mLfOkj8QRw9+XI3Mp7qCPa7BEC9sQ7z6OeFGG2aCpZZ7ANVywY+uvDFEOeEu3DiNhWIvC6AuUkGOuEX1BK+qPBC+Z5gIJLs8XuLgptQbMDfrEU98dhguDecTBPV2OIRiKoaIyU+ngchdZXGN/poxiQYop3TAaP90xK0mQMWdtEfrWxAhU6kLxQCjoLF6UjTtQIklRZhhyL9dCK7NxzdSppuDwI8P1lmqe4NDOoT3S6SmgARZtMfiT5QZr+rwbtZPw6pf8rV4C4dbhDj1jUodKXr9XZ0uTaUUqhUCSnMRBI6B4YzkgwkBCyUBmD9EcA/iGsvof4IUVfgUdcgvUv7u9LFFleLILtK4seulUaPXSWxIzb8uQWOHvazvgNHJv9WcSNqNI8b13iEaOZrqHYZ40OdfKszdVTHtYUwu6XztauTXcWkonDLhJTM9JQPKHl7gV4gcNLQcc4q3Ug+XDbM1WyvVZe49eNxGVsG7U36afuogW5alJlvfrMFCqnko0nPaIrcHmYhQLl5gaK4fSlkwsFyiOijSwBZwlDGzr5YOJpM+A1POFmJJrd8f9depK/a1GXF+uFokvUyoUaFGDCAYe/D+Ani+zRdPY2DK+yPBOI05E8sO+ZHb9GguW6DEuhSDB5YtTNs2Ts4gJ6rn9AeKa2ORyy7t7QjU11RKNAfSbaR2KVEEPXTZWUtJNY2wCVD7c5ILBGMIz21wQTpf5SG6jUWhkdTQrMRR5khx9JjDj7oADcbG9CWJWgqThOqsZeWqYb9gY4EQKvHYiQm4dRgMcezLiYJNBPIv4XdCy7VZBZBS1tAc0EAYw1Pg2ZcfGACl4ynkega67WBnDroMsWUBR9OOhzidK+3P2vXByOcYmRmlU2sasQy+JuiyVJ9/JZoMEaDMEQwRoL1egRxfI6bTDBogxLJorUf8yZc5jB1Fs4QGCFpVGdB1UiNdYv3WpQPkCj9IAql48eutOARVPEzXzDF6IgvT1oViS9ZpGNpKPqgqFpztcWUeTRkXcGQ9QGMWAOJZDDeVm7wuo0UMR/CloxtQTXYiPY1CtqBaUXjsFYXSSwah/lIKo5MfU9RV6uzGWyOHtO2xYPAWbqm4Ocd1S0ucIlACUFaAaZg4eLxcBeMjHv7QadZgQBbmLDTjV/Lj2JRkwMR9IdJwmiQJGQb9fqcRnwwqYv0ot0QllCbnAxEPUSGnJpz2YyYPu2pF1DutPRBnl6v8zzheIn1ZGZ8SyMaz0beT0I0PtfIEeZgOvxGsjrJyC4cR3sibCEoPEX62xlLOEn36w3JiXCUJZO+ke1iDeEoOOOkk23eEzq4ZLO4ojhKerDB/e+0lBVLJNo05bBY04JCljphpjJMMxC4mU40muqEh6SyUYCbPNCJCndTTbXeX/BAroatPdPZJQyT/GQ/iKdJ+IHb4xPcnlbB7XXBx32wHic7cKxJi7hNi1Rr0zdaKa8Hcr1Q0ndQIA3Xs6U1WkYt0gIfAOgFgI0AsNFtKM5CUNo/F9Rp9OhBls61GERUv5qoirFZXgdTDTV8o2lkMowNMEmKRrZqjCY1VNyAghtQ8LgoybTVPB1FGgHNJvg0a93H/nNB7FjhQLlYdRNMdxOa8kb7e/3NfBdm2O8WIIHvviT7dIJEou00SAF/l+gLpKL2ZhViKB7rteNuHojpQyFSz8R2lRovdWLMQ61AX1hXrpxlwn1Vdi/voJVpqsA2bWFzQss3UeVslBYCroqpejSZ+KAnE90QLLshWoZP3L2MCUVe3wP1PVAfPnGPZf0tamC2vFlJd2XTku7K5iUrK1YZNMC8sr55KutbZcUQ2ucxa/poRKEbUZgU3uJuxvJUjM0qPbi1MeoBrEcZL5F8dNulYwstdKJQSPD0ejCd8JNwqC9GjKBfHyg1sVBqh+6RzUG6rEOkZgxBmgV3i2lgBDFAq0U4BLELVLIIhDxuwQODca/gaRQ8TWXjH0+zDg6LflR7jUKU6O+DcJS9XsPp1N+HXsNPncdS/gRqRCgYsjkF5ZvW10qxzQkrNO8Wi/vgiDvD0FvdizR0jiAWiye0tknatlgoFCxJfR44riaVnyhm2w7Y7lTiv1wrnrc1TNuyKcW1NWtrMW0bZYHCiudsqyuYtF3uLG0gGqDbFjDSiNN3KVVbGksl7K+CLgkewfvdBnrx0IcWOmB/tZHnlF5qDAYlB+2vNlmXRDsB/KeodCSjzqZ6xh62qKIzHyyD2RndbnPd6oxamG0hYTZJvdviLlq1sT9r1zfB6FcKT+/PeF8b63l5Pn6wG/Jd9UUzu1vcRSXcxSWKC3iMBba4tQllVsJrLIEFHs1wlp/hNFAmGA32hoku0tcQ0TWqb8/h+5H8BTrD22TUutLFRf20PlIHKkE48Yy6mqXLTJPMNMtUu0o3MlGt4UqsW71k29x1tgGhWC3Nrm7glUj0E5/IDDhf6knYA5FUIJ2wXBQ0CZmAdn/i1FYCcdYtTRN2qAmlsZE6Q0t30HYNPuVlb9h56p/2CHQPbVfamIp/ZA63mEJmvhCnLfuQI7EYWcTqCQxQywmxD+6YWVJfNlNt2UzB4fpJxOwlLWreMKAy2DYSYdEfar3IFnIGl7+Lx8DTJ8OrWwi6XrcpPv6gmt5M33dcdg86Pifkjf0p24PPlwaVdMRMO81jLmZ2MJYjCkb9mKpXtPgKxJAa+754rCPQge9qp/0tLnXQXCKg9AVAlSzLE0FauV5vK9mMldvlqn9G1wd190mx397spjsqq8tIcpk+Viyrn09XO1ZMzjKy9MC6WkYxlkvS1eou+QbNiOCSFB0usA07Ia4h6hYDFi42FYNtsltroWGMU6yCaAp+V7uvnnJhbmk2L8fQm5yYUW+hKctudmnFMWvdTPJ/R4zNJGuJph8w1svpwQNa/9rxcnvxBA0L4CDHqS5o0VcYelkIRpalarRdYGzC5Rl/K9sKhodpOB2kWJujocFQSqDxV6NXHWcUw3m2lXjKYtjLAd5aBvgy4DQ1qXBwaBwPpPQhKA6x6UvAwf394T46dKULMy62FsiHgDgTAfEoZSk5zkfQwtCnwnTJn1UhAWi9nXK3CBz3zQZ49EggI0DPUyYgzSCieBrBgcQZYXmtYBF5M5eeF4KJRACNFNvcjatSVI5UhmAI3xUMQEjUE0vZe2kFPcMM28QQgGEHI3bY3dRIu/q0h3bWQx53aI8+OnKkhZt44XKlWlwWII2l3MWweDaTq1d2v2xv37m93aFC86hFN7t9upIv7dm+d6/9O/Z9u+1wtw9kQ6vD8MM6nmZtMEHJSFb6LIloQTDPcgjmrYRgzb5KCNbcWgHBvr3zRR29XA+GXiuwimTVFIPeIuHei+nfjMQ6DG9WF+0K6CWz2aQAVRxSSq9DULSX7RAAWA58Ml3Hdwk/8HoEr1fwNhbPU/sgq1HwNgneZsHbInh9JvPVTVCmVWh0CY1uweuxmrRu9Ahgixsby05XNzYZIRzEPrMpLA/es50KeFu6UYE5qF5Tg0Fo+lysIxKOPiiqdhNoDq1fHisS4zpAo09obDVbB2hyCU1W2yJAj6CSBUlBb0AQwdw0NZelalOLEcjBSkj17XggnOxZklRsW0plBEsRmNaCCDj5XILPLfhAa003kxiziymGyPq8gs9lRbFWl9DqFlo9Qqu3LMVaG4XWJh0coyQ2axxvxFu678NjLpS6gLz3d91t0lu626S3gt0mvkbBB9g0W2418bUIPp/ga7XYZ1KyYFdWwyLB3genYADMoaN8i0b55iLK4yY/vqHPWgmbG4XmJjPBam4WmlsslBA8D7gVcNjNjaaChRIDjrrFI7R4hZbyFq6lyQilIl18PoonTT0oqr5OoOnJirvAODHdGolbOF1bytK1CRWmWWg1XeRs9QmtVouc+Jpcq+Uqp9vlFtwuD3y88GmET/mlTrerWQfNhLLL883haDjJmNHnJnGlQMTRTX88JZzaCRWcNPbUXiiJ90fVl7JD4UQ8SXac1/DlLn7oYOlctXocoWpGcOweCQbi9HA9GLfzIw+rDacdVqsHHVbrzjhk9em2KG5E+tx+tkpOd8cK9PXN+hp9YcQcQMG3n+xPdHvY0Rb8t88NSBu2PmHHWCSuh9SLJ5qSKb7S0lrE427GlW0AWr9EuRZc/q6gHIR/zRWUA3BNFRSD3vloMctyLMiAgKi1PEBW0AuBQWUgm0ETvBXBbG4R3J5KsG4WWiopBu6jkmKtS6FMioH7rqhRwMFdCTgotxQBebuViUKFotWsidZS/ADHAPJQCecgvGlcCiiLzSAyb3RX1j7E7k1NldDIjdFkJWrlFporYQ5wptn7IMsBIi2VkQfwaFkCJCsJobmvQkJCINDaXBEjW9BlVcbzFurlluoARlagsG6XrxJOtoJauCpikUvX/BI9bUVfrNIfT/zEXiXsnT2B3g70KdRH+nU9JvucKXgz6LRCPavpKa3pK1vTsyQZMPKtgAoYwbiWoCuLw5Bgza0VlvWCoiwhBfqiTZXJttsDZoIbeMKI7+NbKBhqdPbHw7gXNq3GhoHBvfQkgppyOwPs9BwDWpTfbMb1eTYPy+cn2cG2vAhOavJ73pnOdCfdjUFOgqVbB9RtOqUbt8hZv36XQN4mJ7PSdKcCpg+y9B08nb8haDjPL8FXY7rp4Km+5KhOiyyPdZZX29agHZnuV88IxCEaCT69EHzqGxP04PUP3oN8ozik0TP6ik5PLNpDrgZ2BIp+I7kZqobDvk3RMhz9vWSJ5eNv6IFg0qZJ2udMFHqguimu9Hh166xK8feo+NPGBD14/cMDRJWdyWgp9kUn9psiqT9VthhTgO0nRzsilqYgS1MZAlBLd56g4bUOCIF8rqJi5BRHq0J6YhB8BfxeUhEMp/qby7l24G4FqBsBliRWhHhzJYi7Pb8b5vr/AsAUb+NJwZXgrgcpmAF5QNjj/9TgaawcfbJbKhFMks1Mlnqg263C9psl2OxaybYZdduZClnbklIOtm5ngQV0tmGgBD5bfjcFbrIea9qEWq4UfHFoxlaG3UBot6tJMJ6+Tf9Hh3oDALLw0x2nx8SxyjAw8nqM+yHICeSGxWLziSzi9bfjhuIEmydJIULwTLbtktjA2Gd6+gLbTw0CEO0Mknr9UegAHunewyvgqR24CEXX9dx4PIfb7X6KLnTTZV43HtLhdtMVy81qYhpKuhqLSqahpKuJl2RaUoZ65Oxybd0M+kDDWm1tkQarhoWySrihLcSltMNPgD2Bzh7tLTyNSoxZGg08jSY08DSV0sDrKiWB121KAb0I6A+hX9k6GDn3nuzjDke1E9nJ//pB8I73RxP0P5Kgc2h4gAIaEDRvyRiTVII7/t861bpZOGMWP2BPtyjMeQP3fVAY/8ORwZqi7dt9bo1nxv8jRF3315U2LoaalaevXwST+r2kWFNd9O8IdL7eHcfdpTXV5HUeP3JtC34Z9pTS3DTmpjHXuMGUTRcmnHgcai8e0Yyg6IYPUo/e0vVM9XYH/08QSDd1l/3ll9rxvxkwzpJWl+h0DT03pSNRfqSBgwq+A1fb96BNS2qZJIPNY5r89yosh21sRl7QhFfD39WxgXqTeBAXRdT3MsN8g42+TlGndCOePrV5cha22gOSRZAirq0IQDEZ23fufWnX1leK6WgymmFt4VHlaltqOEjbwyBS3QVdz16vqJj+xprFDNByzTjA3qs1YwMraga+cioWVSa1cQdRtX7PEE4KlOwCcevnncPRzjh9k073PwvByNqf3OxGM/WVL/9R1R89vvK/l6ro3/eq+qo+eObvqz5hf39f9c4fHHIdqjpU9U7VB+TvnapDzxyCUn1QltZ5dD26Hl2PrkfXo+vR9eh6dD26Hl2PrkfXo2s1rz+o+vL/Bxe0YrhzZngudGljAHjahZFtSsNAEIY3tlWzfiU3GCJCQlNMYlqhUKFIBBGqtAXtP9M0bQNpEpKNH0fwBt7BG3gHb+AdvIE6G82f9kfn2d2Zd+ZlWVjhnqwNuQgJNy8lidcCkWRCeF43k+XaTCCNBrCAhX4bIJs+UZRuzuZx2oaen43jojPxMw/nMI8fgcWQhO4zDC7usL+I+Tzz0iBhbQhzl8sgSnJUMHMXfuJOKGUdgwYTPOg0jzwWxBEML89VjVIxmMKYRYlqaMDmfsTfoAYTXXEatqJR0Q8zv7SYK5bWssVasZwuW05WLM3CEuE7RS/MVLOJMktS1ayr7MgytGPT0E3D0i1bN3Ubh0kaRExVbvrOYADd3gi6/f71LVw5I0Vv2XwZ6KIi67C6iQW/WzwjpEYqyEZB5Z8qUkM2kS2yTUSEkh1kF9kj+8gBUqlS4+/TfzDKLFnDh9f3z++vj7eXmXMolLrMv+H+gVp0ZXRyaXMudGljAHja7TxLbxvXuZFjOx2i7W3/wQGDAqQ1YjmU5CS+HqN+KI5uZcvQ4ya+hpEy1FAamJohOCNLguGg6MqLFuiiG2+KrrPpqqvsuzLQLrsxuu4m3Rco0u9xnvOgKNtBHffKHnLm+75zzvc+z+FcePatGf5+8IMf/jCouoLFxcWvv/7697//4otG1dWAwk+ePGm1ms0zVdcZwH/55Zf37m1vn6u6zgH+q6+++u1vnz71qi4P8M+ePRuNhsPzVdd5wD9//vxXv3ry5DtV13cAD/z//e9fffX9quv7jP/rX58//17V9b233oi/k+z7pz89e/bdquu7XP53v/vii39UXf+AwoAXotn8RdX1C3AOwN+5s739h6rrD+AcgP/1r58+/VvV9TdwDsD/7GfD4R+rrj+CcwD+5z9/8uQvVddfwDkA/5Of3Ljxm6rrN0+fPgX8n//8/Pk/q65/snxv9B+oYHX1xo2zVdfZs0f/pQnPzOm/M2+dkX/65tX//bsV48pbuKn+O/My2NdX3rfffnsOfGHu3Llzc+fPn59755136F5KhOg5RM0xCknPf5vlnQN5zuI3iIhCzb1Dt1pe+HduTso7x6RKXtIFqYoKg7Jka6+9vMA0szzH8rr21fIW7Ps2yX+W8OcI+prKq/NVjX3pQdmXxScU4M5a8VuQ97W1rwu17TtXjl8S3oS2a18Z+q+5faugL5KfKdU59n0989Wrkvfbkp+L0CKxK9F0LP2haZVzo9O/ofJqAMY9yUsp7T9IXrLv3P/b902TF1Oz7Ne+BfL+p+XnN1HeyrnpNzf/PffL228tLIg8zkfRJSHyKJ/EWQMg/YN8L51cEldHP+0fiL08H1/68Y/7owf9g06cD/Y6cYpUO1E2gGJiMOpnWTwQW1Re7Pb3I0Rng0k8zi+J0UEfH+NkfABPhB73dxqNUTroj8T1lbW1Tz8K37cfP4ZH+RxnH8aTLN+KB2E+OYg0dHN4tJ7YoCzv51HYVeVurdze/nTz+kbYvBUlB00JvXn11gpDbwIXCnrn6vamBN/pH2Qavv6/KxuGev1hNGm61X/4CVcPzKgymytrnxrkZjSKBnmcJgUq4oOrRzJVvUXxIeqBkB9Go5GFWFu9vcKItTiJCCExK7fubN39lBS4eWcjDCT4xupKYEHfM+CeBb6oarlxdeOn19a2VwxuUTG9sbJy24CXJPguANY/NvBlCd9YuWGAFyXQrVnxcm1j/WOr5ve1qDc/2nJLfKDY/CzK8s1BOkGTM2Q86h+DCh0YuGAUJbeSXfmMvrdJMEWQHiQ7iFfP/YcRudbqzpGpBYFYLwKDBjrzR9FoHE0ysbDQGB4kZGJxZxIn+VZ6HezVyqOj3B8c+YNjf5CO0km7IcaIZgQ7+QXAs/dfGBzP9xRhlEBs6EpvTPqHss5sPFnd4UqhOniSkIraZC0Y29H+OJ30J8eon0G0l452oompPhsetSQxy6ox2+MdCKhrSs2tDD+h3XhodH+ZgCLfA316lkkI3PCwWjHej/ZbtgZ9TVfd8Fra3zHNQouaXoTl2oykGETi5iTeKVaICIS3DuOdfM/fi+LdvRzqlcYNHwHvu4APk3jkNzyPyEL6FOlEBF0EcqmQvwh8EcH9JN6/EYHnhUG3qwBb8T64ID7F2VV4Dof9UQb6eNzwGp5Rfef6JAIVg4gePBAHj4BEDKF2qM/POrK1nRSqkiT3ju8TFZMdERmzSlQW2b2j+6GbEhCP2pKf9OEwhM7Wkg5WzYeobdd2VIsF8Nf5o4UAqpw/XgjaJ7JwdWendeQf++TaRjNSHoJWFWNvxYxI6mTTTqIMYrhWoaorwVLgWtSXVMsHfZyhkzf9ZEckaS4caUUYFtIwSexB0CCtLIrxIj4D4z8QrAupEq/BpBYZqRblgGs+kAZmr1IsY/1ZR/tdDh8tarVOEuFy7HYQVF2JK76bRPnBJEF2tAkKoTaJKMu0IMtsUm4SSXS4qUyprQKNypDwTudkoJyiulVTWl0Fl1EMEMrjxrXeHEH5c0Y599OH7G7YFN6gyvP+Z6Oow0jpF76N51qAIwRwGFcLKkkqQ5jZ5KbiJIsmuWoq8GW59nS+tXkgCUqK8SQdRFnGAyohDvfiUaSAMlwUCVmOXLU6ropmCmrM5NlaPOY48TyHEQZRpPA9SCUsw9XlEIiFPt5zVqCMICNQBw/FoDQ0VyaNkx6ig6ggomKH4oowESbm5QPlfSWPRRBCiYYWr+UMtEhMK4JVwDgx6ItSGWDR06JKtjPd9dHAez9OUh6KFztAjW7JrOp0fQTjzGp6P7vPo/txCtQwJPKPw+5jBGR7/TH3coJuAU3ww/5o9CAePLjZH6s+EEewdX3gLVQRJHxO9dBK5yg8wurp/jg8rnPlOLuejkZxBvcUgz5x4UMpk2qyvTDr3IzyTUS1iKBdk3M8MS3n7H2OgwPK+dkeJ5YrXSvjyCBKs0/Co3kSgv1Vw++GxwQ/Zvf1+BOqxjKXwy6OKPD2Cooi23cihSyOQSEriECbXPwul5GizFKIui0qRDGKddzHz0/uh4V00z6hPk6f09OoNHw5TNXw56RxiLIl+pttzs7LGBRK2jaFx+lm5WHMvHTRknV5eCPR0sjukIgDDOvCj7vtGsWVlVHyXy2A4VXZRuoku0df94s9N8hb2UJ6Iz3kKILcoKTGcJfiQtBLybDLGkNYwjUfQC2iYQ1uigHZkSHZtpIk5pFxg12xIUczlB9kwq9TQroWDfNTsHgELILBXorFOlY20MdOywuO3l4JK4U8uJN+LDOulQZtLwnDHmYXeb9U7vkaHCm7kLApVkwClxGD00iYQE5QbIwrKTGpwRJ7HmpwRBeiVlgWlWow8rLAOMvb4KZIB0QLQPpumESEJfQIVSgmR+AmOMqVPKLXWCwunJpFrMBkQcMhwmdjUI+gvUblnCvdSHMarbQGwPSDwziLfOlbnpv66Pu/2bSa1ngLU+EnzRR0hBn4QmDnZ51Glgp1qNKK4HJQIFiS1UxzZ1Ifqct2aIsZi8U6H64Lwevp+HgrpTk9a6qmwzc9RO1YtaaP8Gbo9a0OALt9p2twe37pb+SqNAPzqntf2UvM3DWsZmrlUOtBBnZtemGL1AwlC6nl/+oHjiVM3cqGJxUbLtIATw4p+cF4m5N1EGJ6suA+jlI971EA8xseenqPunAf6Hv4h4n2Mbm1KdnjkoIogsqSgSppl1u0y6kWy61XtLhkSgaVJQPNKw8CZ7HC5r/LCq5s2g62Bl2tnGyHegsGM9qh3Po0OwRTLHhaO6y9dnboOpoIXtgOFX49UzwEJa+ut0N9i6e1w/+8ZnYIarQymx2CqVo5nR2sOJohL5Vz1OnssPUa5qXuK4mH4KXtcFJequsfXiQeVl+lHZZsOyxNtUNvSl4q6MW1hdtjTLWN9GmnxElPdfaqa30an/U2lLZyLXfC0+nsuv6N2XV6fHWn9ftunJzSkjOWr7HdC7W+dNrypxiXjfuHCYy8neVUmDjk0X5Ga/uPy1tbxnC5ujM7XYUlfarIf6QJw0IRXrJ93K6aGBBv1k4Y1oUzVK703n4/3+tMYF6T7rfelcD2fbNOhICObq5Fj4rNKtXA3Ht7FffC8Q6POvA6NEIKSkNkCyfhalfcXolWqkOrAA0wjJ+414oQKgEw/kboMi0v0548K7vQ2GCvn+xGLVyFt1Sxg6sB8NlgR4E71gx8zwuklVNjglwRSj+8bqLoNZTnZ5r+sghcwkDY822Afc6tmzmxPIHQuTPqH28Oj1rq9Ei7at3HGLlPX7x5XKzCPoTCC+tsd2r5fueqLlq9/4rEtQ4pkTWLtnIlH2fVMZGKOBHjfjzJVAVtZ/c1HQ6zKAc9teKFoH0h64DFEUsuF2eb0Qh3XHEDSdpMolRj81wBTGulQ9XOlc1eEBriszwZt7pmZUK6Cu9Qy7UPoglKNCWSpTZ6I90uG2pjnzqONiLgXO7+Sy/mRZXS/g5GzSoqs3J7R2FbSX8/8rldP4tG10cT/GqruKAg8wASwoUsN680fYYAKQYB3+jQwvpC/CBi1HuTN3TALLyfQyceqMGQv8pZDy0laEtfWUiafjDS0SxXK6XBtb6ZqQ6zhRD7hA3Bfap3NGmbxSSl7wIx6eZovqfoOSyF6/smpIgdFokXgWRQS6uCF9tGLW/Ipbu7o8g1m7ikLVUaSjvkbMc4W08sY/rwBb5uMiaops7wIEAG6f3wNpouFIht0KbjekLnF+ALDCr3ZbIOQVOCNdeTJoGGQ4TBJwGHQ4KiKa/1M1rrpAcEstI0+Kp0gzrFajbUbux6QiMQU01ranbRXiSdOifVUdPApk7F2AaZzMYn0jPYGwgmtdTpNEWz02Fi4kfJarcp6szNR8oqujtG3Oon/d3iSMHt7gYHk0mU5CHt0FT1ZaOo/zAyrinpHd+UMJBzjYnFlG0DICSOZqpvhYnFlDM7slvwTtdn3Ey3UvJe02nwkb3abgO5JQppQ3Zvs0Av9STk2ryUAW3Nx/54aZXFOXF91To/YNRhgDVe6pIr0ExDSuJRKsTxlcSEMoUkSPNu0CxnW8UcN1firAQu2NbBOF5U0ysJ5zSl0yVJYZyMJWHqcC4lqn2shpNZq9eucNU0uR0d4kI31uWZI5x2B6rOebJHqWO+aOJq90+TTRw0Xacunb0XGXBGU5hEQoXRmUphN/EQYpTncbKbWfZleSgkdHpuAv90CrHpa1n8YKnddsgLnUCTGGz6Dju+y7esxKs2KeUxql4r6gQXJ+JZ/Nvb749bizhrgo/gPas0UQQAhP/L7foekg5a13gP4UruE0qIPq3dNvo+wX+upwnY6SB6UV+huivKWn48zfyqeTS/ui/b39Df6sccQlgAv5lY1JlZVJpZvCo7X5zZzlWGpmO51Xa+qUO5wszaLqgkOhyrz/ESKOPpd2im4Z5OutyNQjcfHen7UfQQRq0B3sLIZ7Q5jqKdcHm5q3EMWVq+EHS7XUXGR3k1jXkco4+ax1jvxKmDThVuRH5d5UfGpQUffdKVq4NodZ6p9//QWMUj29aJ+IpG1dsNtbVnehHBHiKEek+UR3C0k2kdqmvQPr7ud6UVGnZvzIe+Fv2uPA2nFW3OruKOPpekKqSx1bqGB/2ARNuLXVOGO2S97bGRhgA4Xe9au9MMDPXdvAgMh+QfhNRPC+g+05pFypbZyE/SQy1jxbiLNpq1NubtZi/TMUTDqSKigfQhM6m0K4/zsGnaxR1/48jztuOXWtBkpglLidOEHqT741HkTqUc5ymeQGkIh8je1pZCWHxZkSaPDJnjFkpQtzo+YGRVoRDWMQKtLMd5+cCUmmrw2WHp8e6Bcz7Qp9454TdQzHlu/MMz3KFaGyKKoEs0ciWB8D0bv1jGL9r45TJ+yca/L/HO0XJGhdLphWcNaNTikXrzqK1qryZT7yG1caCtGyIFmndA5pcuSE9qEAdWRsJDNNbTvHK5C/LlkdqzHyrehZUXnKVVc2zBt99BmlLCbLH77ktOU8qY7WC/8AbUlEJm79IvvWc1pZjZavNnLbJuFXHerppSxuwk+eVXr9onLWFRWGjrNLwp+btRlb0LvbdHINPr6r6hqr9w3/3y7O6+3N9Xdtdl2ZwBlsV3uXWVWXW3bR3MlOeA+llGZSyJFqwCnMCLws6rYnYOLww9pi50upnYM1KYdRKlB81wYUxRSK7W6qlc6zTjGsrlQqi6VRb9nNKoTjh61ZSGjl2zdtpVgMLyg3VADhO+r7oEas3UF/jL/nKpsNsXFsv0asrQWdOaMos1ZfhQqF3IMRpFR8WLCZ4cIkwZhDe8hYVr/cGD3QnmYOAFB+X2mBwJyPf1adRMZtgM4hly9jCdQLut5o+678GMUjjjQuHZC6VNgl4STdogu1hEU72A6NGgnxhTo029rouv69U2bb37V2gYK+J2l8rtYjEfLUxzDRJ4DYPF063qoVux2R42K2Or1ChVIqVdLDdLhVDYJWzYkztGZEoyzgc8hJW5jEC9Rb/XNgFWWldzRyB2Laa/q51GUaDWz6XoFeK6+ZQ13NcvTE9y9bBD7zAu08znpSbAdQsR2JiVw4ujCeeF6Jra1tQSqCl+DV8Nqinv1U+BK4bjnnobkBJrC1BXiOd50oxNcC1PwvK+j9zfo+IIJjrBaQKzu9Hh1Jcv1Zz7Azu+PT6E/cpDHLy6NsYB9w0Gea9XG+W9ngrz2ligJTC5qF5aQrVwhQV3dhu14k6re9ShwMPDdHQAZg+Wyyuq+Dqyvc6n/QCKm7eR5SvjbT39QPzlnjUj1u3BI29VaagcgtQtrxdXGoXFAYWrcPc86FQ7IgOxsICLlro9gvYQilsl+vR/SQzafKpdFxjGyc61Y9w2KS7do37tlXtWuL10j4CalXtlZurkat8msl9hKfIFHtcf7LUGabIT014Yb4mdhkFdtkUo6+S/2vkj8EyvMSvS4j46N+pLtCgXVklR7gMI66cK8M3Zkvo9pdnq6TWpTylHNSM3bIT5s89+4FZ3AuPnkA0mH0kP/Af1+vKkO52id2s1CK6O0nTLhkdSifJPBWdnE3Muyl89JNL5/lWqhlvWPFbb4w6/l2rFH+QMaLLrjKZ1BHoSnXU4tdiLEyVTKE8o2YI5w59ASeJsD+YvOlWIE+xg3FT9cV22KMBZ2SS1W5xYfGU4jAZ5ZcplVN3WlTlFQGy8G+BBAiFHQfjbLupNUSWoSszKEbvlxLwFvYXZnSqY63YKPT2rvorEcTMzHiNO5ARRs6LeVMefyljAg3yZiocTnUUyYDK0qrTSEZ1VK2Dlir00WRTKvIHjcG8/zAe1ITSD2HJxbZrUJSehdTZO4LpF+fM1zojUchhrtUm3EPZOsGhZV2ptDX87AFnu4vBFV+hzOX+xOPxyJTBH/fmXdep41ktfr5bnng+ThxLPvRl5tn5DqI7v4iDZML/40szDtHi5zPzCrNzL30eq49w6zGaY7r400zjXfGEn2YxGJ3BdOIb3KtX9IpwXz40nMS7dmRcg1Q9tlZOT9SNcener+DM9uPkpp2W40e8Ow82MrTic1ggcMelcUUTogCwiHK9vewWstk+xmG07Zl3Na/UhBZt5PenVlcpZdgnpbF0D1pxWgIqd/U77IINZBXVrMyQlVHG+7xAU5+ZTfuAJPcAUNFNkZ4ZuBj9VFcmJq1WNhLjxsrV6HSuWbueZpgz1vwBHNYTmYmVuY2htYXJrLnRpYwB42u16B1RT6dZoKAoEVFCxYIsIkkDoASIIhl4URIp0MQkhCYYkJicJoYzUUASkiDQLKtLsoiKOOqiIgIgoKiLYlaKOMkqxjOadkxAMjnPnvv9fb6375s5xnZxzdt/723t/RWQQ8rCav7iMTE3lTHk8U3ZltAX701HxDb5DMAgnFL59o6kpfJOWNvRGM3HojXDbkHBo29CQ5P4qBC9NTc1taWlp26An+Cm+h0T3j/iFf8k/9C/5h/6D+GH/4ZfmX1wifyHfRf8+iN4NQbgQNiQEY/NVuA0mBH1/uw30P238huIBG3r7Rih88+a/nf8/ffzBLB2aAV5/9pRfPAOm+i8v2N/u+sffv7u//zPcP/7+4+9/qL9SdTq5ZP/x9598/sff/2/9/XuvN364+vgb+vsvI/Hf5C9M9Z/6/bv4+12x/tfuj6ZozYPp6yMAKkAjWSIQdiQ6kRKJZ22Cg0A8B6AwWJYIdwadDZBYbGeGHYMRCWHCSGwiSI1gk7gkFp6GYJJY4QxWJJ5OJCEAEhtgQ0RsIovKBCwRNA4eDqcxiCAdi0OnU+lkH2okCWGNMBqHAlLvXr4eHo5eICAmDpLBZJHCqEQAT6CRECw8PYwRiYDAZCoXVEQhIdh4UBKbtJlDglRD1vBBXyJJEn1iFpE08btBJD4K/MYaGRlJIEQGhy42AfQBEWVthJYiDWMg4IhxOUFResYhIGEkHqAYiEFIYyMjlCH4AyfRw+DhHDoRoDLoCC8xkoua4J3QIv2pZwzhSQCHRZeoQErjtb8ZgoJU6yK4CJEiKAYkJpVGYrL5CB6eBQV13GU/8ReoKSgIbosQRYQdiaeJBolIogN4MgnBCEdQ6WFULjWMg6ex4ZF4PoIUBeKp4jCKJANUIhhZajSHRWLDwcAQaHjiJgYHYCN4FBIdomewSWEIgAEnklgAnkpH0KhkCoBg4gEwWehsBMgTTsOzKZA1IhTbAA53hNhAkSAfQsInzUEAlZBZoPNhoFI6Ag+mE43EpbKhqIIJRQI1g1QiC5g0PB/yG/SCxECQwUxgIyBPABaVTCax/tINUDOYQmySdChAC31EMCIDBEJjOVkmmI9cKoPDpvHhoIkkgEQEwBhIaeJHMgFGpMiVCa2Qi2D5QLJ4FAaCggeTlw4+qWyAAY4OOBhMFlWagcGaGF3QINdwBJ/BQUMi8XQ+gw4ZDEHA8OIjqTQ+KJANYuDfrJgwHuKBsBR8GFwiHdIHykFsAt1Gw0FSNocGiOUxKXw2lUjF0xEEElgLJEmIDeAhIaKc83VFsAFOePh4roGfYGkROSwWmFdrmZBGa+M4cYMIx0NiQQqoqEh4IkXUGL6ViK+rJQFqNkioRkD/6QBS0xM0j40I1EQbWxihjU3B2wzCgvKgtIBSJpJE54AQajiCANCZSAwKGkI6CEF86xx0Kg0EQGUC3SBzJJRkvq6TdEMwSBioXolIYyONwafSuBlrSICouUAGQy0LAZYilSYCEfAsBJWNCOfQaJpoI7TYQiW4kr6+mBkBZrc48nAlcYz4TNAkc6w+ErnM19WAIQoSWxeLMjRBidh4FDwAiWSDeQ4lk4RvUlRBEcZ6SJB/MlQbIS0UJRYYRmVDw4YYh8KVoAFgWBujpUjFbU2JyKCBONA8MF4gBnz7RhLECBEHmmFtPVkrFHHQPfCS8BubiT7BUIP0FLDUReUOFgbYvqCSgQZ1nEJJxM0G8CzQa0DCBtGxoagzwAqhAiQR/PtBVlJCIJQmRhk0M8gkRAwUK+aRxKUFpq+rh6uP2E5o+ER6QLI/9HsRFOQUCzWg0qkA4idRAk04iZjQaQmhoXSBmKDMkrJHSiaUihBW/CvyDiEZEoAUBYh8BUMCVgc4NpB2sSc/WUvUwpWkwGLJ1hPIyWCjcSVK7PGIgJOEgQFC01ITeiClacHJQ/IJTgaRoHrIFRKNTZrMDwFFMsXFwEZHMdF8Jlo01BAHn2nNZ+qBGSOikoyRkXiMEN+nqPX3AH3jyYzG/y6jnvFESUM17b3Oy0fcUcZ7kQgAdiMEPiwMSkkEGiFxFPw0iftW/RClZDAnzdoiBJgwopYENQUjlKQaeWD7p5GsEYChiRFYdibQOEN1xbeGGpX5+DJBDINWEJPSQoIE+xw1ChmlbYIxQvPRxub6SNFKgr2ZBSDFCvSQUbpRCD0EX5cPripMzVHaxuYo1Hc5NRECVw/7td7iIIzHQAz50yiYSUdBRPvjOIhR/08jIRbGnSgZhOidC/oujgmVLglJFEoCJDLYEiAf9SOubwT6fNQfRelHoX4wDlwoxn8SYi9HWweEn5erjyPCx9HbR5Jrnq7+jmu8/P480MZSgR4nlkRaMtmNr9MmJpFJIyDhEQ/BjyNv/L8LPR40UxQGPbFc9ERIxXgCiPf6tsYdx0Flu9LE7NusOxFNMJJ4CZWoq0iwRCqLSBDhMWi8nvEEjSjY411SOuZS4ZaKtnSwzf4i2H4/zOpxlCSr/6fVu9woKjwcdMbUBCxWPSQfnMqlKnSSJ1L7hHFX3G19XLxsPRzWukvnDrgX+fNu9Y3l+4IU28si/pnBkLnSWxUw3VHoSXsXsMFMBphBawhpF6DBo4Er0vH+4mLr6SjdX0zM/nQkxLSTbDaR2PynMYbUIb2kzPWSslTyDr5GLRfl0eRgMxHwiTB7/nu1CRJOstDY6C9NBPUgoZqFVqdYtH4UVL5G3xvDBmsc7MsTc5P4c/KY/7lV4+QTln0rWABsasaG0nZ9nw5/ajdoEtIYDTYNvYmuGKWHR+mCELQ5Vm+if0bpg0Bz7PcehYOmQhu5MAYgyQZPcA1HhbJDyq9/4dUE+bdOOAEyoIF7IfE2XaTwB0x/SH7RoYABmwFOnhNUaISEE4lHE1CSvTXegG9DMOBDDqHg4lUtEjA0BBNsubE1uIia6GYgQuqIYqWxuYHJ+EpQ3AHEEQbDCA5fGGOixYlNodLZJGljRE6hY6KspROab60//mlqgkITrcFlPTLK0BBMIW1jDAodzrY2MjDTGycxg44WDIziftQzxb/gguybPskidNlkE+AI+DfLv8N9axYg32RUUFSIJCZMA/5KyGWprg+FEGowTIMoNPjD12MahLNRoCMoMKCoSUFDQPzWEpofTRHQEvzbVGODNZo8v0zSpm+MhkT9UI9YF3S+IyKUgkPqpITo/btC9CYJGQ//5PfJgyKJCSgevInfl5FkUwaX2ouBaQ9SxWh6U/BMElsTLe6ccWgREOxQmmjwZ/xzvDWAROKXcfDEyGmiJ17HUX4QHcJbdHQCYkWT4DjKi4QXb9F+QOMlIXKHGoN4dCBDJJORNNZ7MwfPInkxGABoF7iGnoSj0u0ZkL2iNSWIgfZDkMHETSSWJhpavIayRY6DuDg4fNIuXrpRu3r4uNpLtUM2ID5EhB4i8MQ+7ttOCiFJYOmOKLXRmkiu74re/LuUkGa3ntRd9SQ4sP3Bv8+MyYJtjLEGRv+2YP1/JVi8gpSmh2YhY8l5yTfSb66DhvzB8W8opKTDTD6gFccWtEUUbNGmXEmJRSICSEjdCjS0gDZHTywOJRhwRpGSo2uMMQAhGPFRieia5AYbYEFHTKLzYwCpCXKKtGsbmIRrSstBoaHpy+Kbuv9bdsgy84kQ/XF4vh/1SSdUP2i/kg42+TRpvC+Dk4I1dL4r+gA36t9SWZLGExPZ+DkRNF2agntCwNB0PJ35K8fzhT++0f/j3oE/7o9Y2fjMZmNupGsidTL2nSPfnatIHAbtsh4vsx8sZ5Vs/nf/CyEnDzcSv0F/kip5qpr4cIvO9n59e/1gOtlxmYzkW/JUAXlmqyx00MIYYSI93DxS1hhhSFodTi6czfiAuPZbceiUgr2RNehbNcWRl1rv397w8M1dubsLYM6uTtgV+CFYGowHgy0VKns4+njbg13VxMBITgbUvfSjvLwsTAhDi/6IECRLBbWAosTyQeGgRlAdqBTUAqqDVMShQeGwf65/rr/jpSiEySgudDlWdjFJcZZucPOxvZdTVZe57XQ5vu/K1nmmEb3Nx/df3Yawz1joeqK8JR/pXRPccuLAtUIjYutO19qK66VY9sveltrKG3twSfBFbierbu53ydcNaT1Z3Vnpud9tmsbGmjsH/WsjSIFm+2AVcqcz7rhsfH1VNryzJi6Ne7inbsOs04cpuNcyZ6Lev3MomxsmWwb/pIv+vDnB/QJMVjl8Pvf1gytqr+BOO3OOrWlZpm//cE2HUf8NVVTSw8F6kl/WlgPmi69b4gcTShzzMb9jhy/WxwRtDd6lZnrl6Fn20/APlliXh1MSFoS2r2T82jfb22qn3qLnQ7lXVocfre7VTuz0urhEeLstZ6Vzt+4e+9cbAo44DMPfXlLIaajz+E27v2dGgPX7i19a9MM2OL9XwzzGNecmL3GHuTUuduxR81nEUPIANjo3mGE3OKjNub0UgMWeuZlok4vt4NRt9lnPU7c8GbIVZ0Yh2Bp56HRmzrdGekZoLPeZG/pl8F5+2EvHq54y2IxmzwS1O4q43Dm2rp5BX5TC4rfP8lWCZcDKUpfZytw+8CJbOU6pwjY4OqwC5z9Tp8zRzdInCOY1SvHcOVUpoKNk6WJMBe71l8GOFFVqVXmZxvy+53YKgO9z9ppP6ap7Ip8MPixVVO9AbI8013rqRz2STCnfkhLRb4vfUe9JVE4+q2N34aYw3bNc7qOgePuuOT4bqbEGKGrFTA2HKvvYwOgcmNk+7QU79DXP3gxR4laS92jW3/fkCDj9PUXnM27vrz3adGomQXk6Uos1ZZ9vj8wNtaYXiVtnBnSEFt2ENxxTVCwL4ASunweLqh60ym2Qe0D6tXbGb4q4kIOcuTDmElkFon/Gg+6q1GO2jaU5juudGzKxXk7+W7ofpnfs+wX+PAJ2khAQeAGWlgqT2f4bp0ym3DKg9PwKN61dsBPTECGlIXuxaHukVfkBWp570KY2m3eZOTA72TH18CnYRbkHAx/FaN7qCgw4ZqugUhrSNSU9Xe2+Z11WGSBY/LyctOUi2pNYwol+fFO2QBiO4+JDDr265G1+cslPdlcPe8q+rngwJ9B1ybDGnoOLPuCTb+52WxJZ2NdyU2bnfod4mOCLr6/MAdRoF/Hyi2kNEZxunYDBDfn1Z2zx+szAxEiDjkV03+ldkTBMIQ1hJ6BWfcS16gvLXyo8SIl6dJR87tOldzbucYX3lbWCNmd+nh7Pin2f8ki2iVsAI7xX8tx1W/64wqqeXuXGOvwJzSLP5wILa6ztu+48OxXTs/fmN5jIIxtgikyYQX074sG7h8/L2RqLbh7duMZO+QzFR/XSdgFF0aSzsO0ZJpqTTjomW1arNSv+5e/N7rcj1pLlcw4muOjww3rWba0xib+DRqCHlBpgQrinfZ2MLnFh483LTXMPtZ/rM1hwqDXJYRlMwH9rufrc3FBMf3HwRWdXHlU9Tstr71HFMr0ZnbtsH4fDPpelbfaV2RZ91q74mPxGg0rZ9o5zFobTvw5uRJ9cZKvSUXC2SGfzIzXELPVBowVzwrChxTl200/nfG3Q3xQaFOaUE3ZI52YmI5mWFl006mKudoSp/joo9V6/+QWfzPTXKOXrs1eoThl6Qbrwcnoo8qPW59ktNhU9M2erJ86bMQfGUkY0pOx+hiHtesd5vGLab8xK62vyx0yT6xFjihthXxcZrt096EakmCGK1eRlFLENevMVcM9dFVfa5blbKixr1td3i0tKzHrxlSv06Lv+cvsW/vWbDu/nyZdtyiy6Vdka0bW/q609V2j8Iv2evStcRnmjQrKabGwtbuhcX5HGoezsPGq8m7q8m9nq+HnTWAey1t9IO6Z2M/jCswtymArdyJWw0EuaP6fdfWlLKt76+QNS28iuxXTt6/6QbHPYDcRq5tFqYvyG1uWNuDVUJceBFXM3diaNVjvWtoXZebBhdjP73AJ/nRk43zGnt5uNOPz0lluKdvVUrncQYZraz4vZZkpfWjL1TsyRnT1Qr/qmGqsSu9eK7AJbYnL0OPbz0kQNv5Lah5Fb5dT23cPwV8p5uptQqt0ipnfsUS6Y7pI8qyF4ati83nNemfsi+/OHu82GhFdUt6g6Ti83Wn8v5fxm2JyFqnyN1Wd/aqIlKLrgnn5A3ny2VHAscr5uMHF9QfBvh037gx+92+5bs9xSHvtUC8dtnRn0mX8YZppP+9JUqHHp1js61uqmas/de883mwX7ngjPsnTSebzdvRK7+s4rc6xhKfx5aO5gXqEP1/L3WNp5YkgBORp7oOzhcdj+V4X8q2kLxj52RKmGrWM9ge+RKcsHFKo0p/HSH3bLbq2JW9hDDFPys4tojUu6Mwhz+fmC8Ry/kHN8FVW1sqY3+kDsHXdFy+Ixi5o7R9DNN/evIvrfSCiagTV9sTPuw/NuvjaiVP74C4GHz91Fv97mTTvECBg59dRmGlnYcmpZX251pk3SG//6cm2cbHxfW8vXTA8ZTx/Za5kOL5+skZGflSYbYdoo33GtwUi9jDVDBfkCk+2h7IIrUqEGZ5lHyGzaxQ5fEdPahEjvCLKL/NXNtD1szntOZPlSOVvnsF01PryYI27ceym1v1CcIhXUsipePaO8aPqUHVqx9qYAWSK3Y1oAZ69G6E3nJXt9fb2rTu13X6AYwelbEd77emMQTufKfV/jhJqQsguYO4HycS8wLaefPDq7qPvn+QP4TOJjP/MMU7lY/v7nb8ID3l1/WHB6XcKZA2szhFMsH6jjOpu9Kjo09B6ajjJvlEciTnTY2SxeLp9Ry8W0q9y/NFsutWKJ8LJR3teRAOBTOww+b19UnfXZxSwObIb38sHs6vsnvmySGVyIi512339uEGpXaPapjsvbjzolTCc7DPNk05rPLMw3r1fyySRTuc63ZAqjrvbmqqb3OpWY1dgMhnUV1vObDg0CwOCX9sKEg153jswAAkyPV6QVtm8Jqf5F4Xf8LduxgNt7O2tNnA07ft7d/fXx79nzR1+3JVOemp6G37dvK3nD/Fq3pdrn3Jndxd2cT5dPhJeUPn0w8GJr6vsK+vC1xs6Tz5J3bHZmj/QqtZm1dxYHH2IMF2lz9vwas+Xq7K1jT1vuYtp3Z53FmaoOvFn2fMaDq7ilrCAZlaME5RHf05mLjUKt+l4KB9ovNIS9rF8XcC2m545wBGg/58uTN8v3b7rzqNOzcyCLr37z9VtLxvArjBYMvpH7yFYneXZAzHLA2xkGj7fpq7Qqnbscf8n9LNsZz3J61hnoQiC0O205khpnXY6LPIm7cpqnHMbGpf6kfNvfXIFf/oyhdyZm3l3dJZ3+Zc8oLSmWrY3uCXdxDXMT9TEcBcDPXj5iS6GhdkEiOomNeb/I/YC3Xyrd7nKCwkCsdxfuRsE8PsFzqAupWAa7VsmOPp0UI9hwtTFxy2V31FRL9UKqT6fPap0NJdxE1A6PoH4rB2ezgU4fHNE7wdbl/oHgw7d8Htx2Mq1dd1cHKL8Tai3PbxReFmQmURpS0IZFHvDkza9qWQOOLg5N4d46sbXLHRq9Vx53MvV7KtjaFedN9kTt4K86yck+zRsYcV1lwUPNCYi0EPQsz+AlrxQmWpL645Ub2Q+GmVZIB5KzJeODsXmBmW0l9ZPA4wiZEHo38lMetew0tWZkUcWATctsLLYuA7ADHLTYctj4AgXLtVX0lnIvO1N/P6+0xeuzMVFrRtQSVWYnlrDIJBIh+QMTV0sOnrJFvcvd/VT6xbHEoUrUPHPB1WQezXkT/pKBSljS/v241ZWw64XBVIHrpX2Godw1xv0M7ZHk42QC8I45eFu3uCp4oHzNowS8dz8/y1FnvxwwIMTwQsaMWl1Ms7kc3+GU6jqObH9+8w7v9xV52v14NT+vuc0pIzppM88kn3ZwWVWXeL3Lzuo0dRWAd5gNXEhiy7QkjNg6qHwgeadqVVSRs/uyZmFNM5+xP1ahLB1Xuhc4fXpntKWW/MWC65tsNQ2TqnwPkHMNa8HEkzi8HTxnFtlTSwFzapS5NW2TbFHwQJJWQ+oG0rLExhFBK0lAKsi3c7aftwN7pTKwrt/Kxz4s4H2+5QHDLUmRgm573SZijZ/jy6lcK+4WOwtGWprHgM/6vS2RG+vi1AcYQlbax1v+0/wF8AZsq5/X6xME9KyAeXxcv7NOyRyK3ztmR7NX0hTBsLALl5WIRlfnsfziCqLWFFaGlO8X9J7hMYH4yO3UtAErBwx3YVWgXJR2qEWyArDtVRIhxolLV8RMc0nC8rgR/RGWnAgckdtRLygepSk1miwh5nx8amU2xutticHOj08aWbT5jn3VmHE0KiGleveHSjJPa1d5Z/rv4SX6KaX1OrG6Zi5K9+KGFQCjymz39A3AJWKro9kruZ+uYkzXfNh3OG9NeQpRuIOKreM/Gcspf8aMvutUMgcod8z7bS5lXpMB/HnRV6dtPs94z+8ih6iE8lRTe3n2qu28N83u58g7uOujY8hJdpXsYG0H2Xv+e5wTGC721shNF5UAzQGrYicdnnDOlqQpkeYHAj15B26gonAKyy0LDBcOWgnt0hLu6sqY5zAsc5TulZY0GWQGJtlrYdSuZqBdWI+7/A9h91TJ7TqbL+gOSBgKyHUw99efLdjmUuFQZXU/Nf9QM5g+FPcRY9/h0BHf6Jaw/JKPrtqkXTFKlhuLDBHd7oXzKTGCklF+uvkVk6Ll5QMHgmktkbb1hOzRfXJujlh+od1cji01pkwu5Uo47/OHRQq3Yx3kS2dYFEz/YLTPJSyDQp5LruqxKCHdtz9lXp6kfWC02ym2Mi5jzFXoZH+wLtb6dubuFGLryWILl9yysaNd2ErDAPaZJvdV1YduVe66wU90/JRYOcqeJhwMIPl6jdxkWznl2e2PIjkK5n+qPkq2xxAJvcPMdxb72rhb3Q9QjwhikFMjNAYjzAsNm7jlG7vCFp1at2I9W7POJmt90pTm5BkaeRZzs30KcQr126r6ea3b17Uko+PGQrMGKUvYhNFm7KcTxIwPFp1Uz1ezYBqoDQZnSkIrUmvq85YswzTuL6ghC8Y+HFtdVexJKUbWWEXPAXyTdzyd4qcyvGhfjJ/OaSLqbl5r8oaTldXP4KXOEd5LenR75sRtU44gtWya0bXOXsuhNDX64MA2GJ8gUI4IPpWbcdbGVAnzU6rNT6hIlfSoEbUiX5+85xkCrQ/MAPvKsh2FwjHjape0PcIpGznz6gabmNoKXvsUE6JKPWrUKZjkg9cz0HJulW0uRxWc0mRR1fFp2a/twsyRrKyUYgfeUbvKEsXKs6rIMyUErnxPbWwR2SCdM22YM5uvPZJLTeBdVOFd/Jya/HNMzYwkS+Xbm5QAP13OhbUv8P11MLmqmqUBWTLzK68pBUelob+oU2g1VfEZG+I+CCLmUtLT8Kuc6TaBZRmKVdvItIFy1EjuqsUCm6cuiaXpNjXakUGuYc4ZWtapcZaU5PNum9tKfgZWO9QFbhrZu2Yg37+mrgBTS7lXndsotyW79Ayty4k6kEd0MeuM2a3XHY/aKYAPU9mVcZ2veHPPxM8cM9ITRjm1z83l9J+3rj+/4h7yOXyfoGjNkAJwqDXHn0+Q19vc/ZmaXOFlTsrgrvcyXRb/pqdprPlw1fuCa66WT56x5NJONQTkUptMZPmXPoXHnUutfbOsWOhn7laCQ7ywsptXjbbwt1JunHqm7NwO4H66Vstni1v37FL7uQGt7GpaQdkcTmFdllwV4aHG8svh/JYDgTP8Klo4l9pHjQc0jlvdr/Ybu6Jb11jszJlZvAbo9nna/5PVjrOw5b/MLkk3jXI65txi/uLgeqXgo4PRJ80dyBhB25xjDXe8NvmbK2tUGqRTPAqjk67R7qTtsX7OQCkH8z7yW3zr20phcooJR/poR3sPdQn5HE4xPaLIbPGohV3qSdoCm9bn2bp3+MyryVl9R15dxv16367yKr2yft09nqFNbyG5vFb2XrZdPytEvTl6J2+qUvS2ntzAAJzMa365o5cLlruvZsfvEdydJWZfrhxd+bGl3J7PdWvYsYJ7xY9s8SHlybLSwavkxvv2wb8HxFpdUpp9eMmCTRfJxHISYZvuzqTT5LlwTPtp7upmHBwj+ALn5Lrf2DUA9H20KAxuML18OaM1izM1WPCx2rIpb1/XwUvBDQcz8LsHDpIcdRaH0BJaSj7crW93OVOAwmSaJsPWb04yNyURaX6XjrSuLg0p3ru992CvZcbpZPbVk4Bs4c5zzgkvhRVki/DVswMOTj3FyTLfFXOFGHwqtqHlMrYChWXn85zC8JoYun+aTAlhLA/rosnBDgY87Q/YrR4jR0+gbd1bdroyvZTwqKjHViH4+XlieAtWx/9gsHr1l6lxBamb10YRUhUfWTuklCg9+TC2G6N91qI+/WVa2v1TpXF6Z2/wtVFdO+LHOCHUTYMp9Cqlx409oScWVGuZnbdW7mpKa1rml580Emu2ouTQ9XiSTNrHj9wD8/N7r/oafDz81kWgm5rN6TscPiX4mbM9bGpE2VioyyZv5fZq5Ubiqs83uq/fwLW5k+ZunIqsiG7io/kx01wcGs4kpOlw5o1Gx2YfH+Ed2d1fFy3sugVHJRBamuXKYMaVdJuu1lnnq+q7cGhiqpVC3uDdyPKrh7xKsI8+uR7oZQIqOV8PHS9TyOJXnGtzC4QnF19RpMyooyAfADLUi2sqOz0qvWb/tI3zxV6tGOf+IYM8zJ3hXfkyLC6EnJxYdH7OSkuB8mbv6Fj0Tp51UXBz5WFPlb6MT60Dz4BpV3dnz+94OtKa5mQqU+RUOvWh1T1d5uCeXxQDXuknv+bbtUXlnk2qsejeYn6l2v11ANvFTKVtr6XvtbVmZ1hpt2LTMqvaDvuodFfCY9T8soB6PjnM08Fh93AcL7O22+p0o2v2vmMKSXKtFSnNJpV9ddvjLp6oCdY+X3tOuJ474JfpFhL7u+5Zcsi51tYEZbeTq27HT4sldzRVvbE3w1s+KjZPelFfdVDpbfmiLReUb5ybmzOtuJsWkD1y2LAkm3xA5cnX5sI2t8vL4rb7T8ecoW5OWn/Jo2rXZno3Oqlot+/B09t/1l5UmXsl993PmXuwW0tHdwZlkLOQjSS3FttfKxs14n2Ce1utc74oZyEt++YsrOaMHS4VnGJZHhG4bLuj8SuZJ1DjESOKsDPrbDx7S2bey6jazy1YW6mcVrxUaBi/vG9THU9+664NVy9xm4i3C6+9PnhyKCtcfV7JqvJoQx67aeztyJPa8rp1bte5vzTTBp4xag50e+pVX+p6/Ou1PE/hAKBXz3nVlv+177yjYups56qcGweephOMqMeGer1sx64hb7Ql+pdhM0ZXP3I/Onjh0tyxNkVVpekLPeMbGuKnyKtoueBgMgnyMqoGqkzYRZlkxdkLVRFlSx3k5WSjFj42CpORUZSf588sa8Btl5dd6GOE0EzIm0qe6uJS9gxsQ1FTHQdn2ibImippuXueiE+ATS99Nzun43HCFBXlxytzHj+5fEhbLhMIOPlCJkV5n4ZWxy1yYqGMjwYWNkJKTJKPsDlZ1aHXJBM3BZHSY04K2qE4TcVJlQVr3b5yip3PPFbf3RorZS2HCAwqsJjiSLepgen2VnndXB4cz0RuqsINOnGF8xoIr2RQ80+secy1TZC5OEUFF9+19HZu1KxDKxGbD63NhFtrUqpPL7t7nONYERtQoPn+8MweQrAnc2/ClZAX8McfS6uuX1GNtGhUBmzXy6qS6wrqH+M7a0pOVFcUz3npgkqKj2iHyZ5tzdLZujioAfaY+W7t8Ys5Giito5p2M3AnqzpvHHgYz3a1Gm56dxTXo8FGwSrC8lyrDpd9ur4s5R272jILuVJ3b7FgwUvESWzry71TrWiqyPLklzXGe3YTDGEC+Qjdalns7PRLvYeA44c/n5jZcGzriUxWbUZT9Muyx+bn3rqlTodt9LB8dfK9x8r3t9lrbT4Pv1+Lk1MHPO2UzYY9hQ6zfIF1Tgs4w+tclhUAXm56p4a91pjeAbw9rEaGvT3t1Tk+XqvNRnx8vH05vuuDOCO+/sQCzvrATadG1gez73D8NsSMjPhtTFLn+hO2mo36h+X7cgPCSzmjAZT5OdzAiIOnRgNptXe4QfSfR0aDmJfVecGsa2ZjwUCnLy+E28MZC4l6VsDbEP3q1NiG2Pd3eKGMvSNjofFy07fL2Bzclf84YXDn3faUGTvWP0ld5DQvXjCtAktIMqV/ICTrTz3zNGnFjqInaYZH2IQ0lEfx85y3O4seZ+PX+7/ICa3g9+3YfLe+bxfjax2xhLR+/kBqevtHUnH+w3nkCFeDaEo6sSnqZVle4ejHvqzSN92h27MElpRjju3zX5aPyEe/LjYOj4osXdt0tv/0b5lWG7c7jn6i1101sAovrKaveFUj5xz48uITm4BXh77ctly3re7Nz89PuaYEb8RFTl1IqH5/qJR4YdmMEuYxvd07WS2dR/hPGq7f3Um9gZ/68W3HzeUhPo3vbWJJPSHhX5inIsc0RrtXH4750HalLw7Izx978KTn1/aY94/3p2IQMKv/A4QcQOJUTyBERUxFVEUgRklMRT8ACmRpciBub3QgZGVsZXRlZAAKZGlyIHN1Y2Nlc3NmdWxseSBkZWxldGVkAApmaWxlIG5vdCBkZWxldGVkAApmaWxlIHN1Y2Nlc3NmdWxseSBkZWxldGVkAApuYW1lIGlzIG1pc3NpbmcACnVzYWdlOiBpbXBvcnQgc3ByaXRlc3xjb3ZlcnxtYXAAc3ByaXRlcwBjb3ZlcgAuZ2lmACBzdWNjZXNzZnVsbHkgaW1wb3J0ZWQACmNvdmVyIGltYWdlIHRvbyBiaWcgOigACmNvdmVyIGltYWdlIG11c3QgYmUgMjQweDEzNiA6KAAKZmlsZSBpbXBvcnRpbmcgZXJyb3IgOigACm9ubHkgLmdpZiBmaWxlcyBjYW4gYmUgaW1wb3J0ZWQgOnwACmZpbGUgbm90IGltcG9ydGVkIDp8AG1hcCBzdWNjZXNzZnVsbHkgaW1wb3J0ZWQALmdpZgBuYXRpdmUAaHRtbAAKd2ViL2FybSB2ZXJzaW9uIGRvZXNuJ3Qgc3VwcG9ydCBodG1sIG9yCm5hdGl2ZSBleHBvcnQACnVzYWdlOiBleHBvcnQgc3ByaXRlc3xjb3ZlcnxtYXAAc3ByaXRlcy5naWYACnNwcml0ZSBleHBvcnQgZXJyb3IgOigAd29ybGQubWFwAGNvdmVyLmdpZgAKY292ZXIgaW1hZ2UgaXMgZW1wdHksIHJ1biBnYW1lIGFuZApwcmVzcyBbRjddIHRvIGFzc2lnbiBjb3ZlciBpbWFnZQAKY292ZXIgaW1hZ2Ugbm90IGV4cG9ydGVkIDp8AApjb3ZlciBpbWFnZSBzdWNjZXNzZnVsbHkgZXhwb3J0ZWQgOikACm1hcCBub3QgZXhwb3J0ZWQgOnwACm1hcCBzdWNjZXNzZnVsbHkgZXhwb3J0ZWQgOikACnNwcml0ZXMgbm90IGV4cG9ydGVkIDp8AApzcHJpdGVzIHN1Y2Nlc3NmdWxseSBleHBvcnRlZCA6KQAKZmlsZSBuYW1lIGlzIG1pc3NpbmcACmZpbGUgbm90IGRvd25sb2FkZWQgOnwACmZpbGUgZG93bmxvYWRlZCA6KQBmaWxlIAAgYWxyZWFkeSBleGlzdHMgOnwAIGlzIHN1Y2Nlc3NmdWxseSBhZGRlZCA6KQBmaWxlIG5vdCBhZGRlZCA6KAAKaW52YWxpZCBkaXIgbmFtZQAKZGlyIGRvZXNuJ3QgZXhpc3QACgp1c2UgAEFERAAgb3IgAERFTU8AIGNvbW1hbmQgdG8gYWRkIGNhcnRzAFRIRSBDQVJUAEFMUkVBRFkgRVhJU1RTAERPIFlPVSBXQU5UIFRPAE9WRVJXUklURSBJVD8AIHNhdmVkIQoACmNhcnQgbmFtZSBpcyBtaXNzaW5nCgAKY2FydCBzYXZpbmcgZXJyb3IAVE8gQ1JFQVRFIE5FVyBDQVJUPwBsdWEACm5ldyBjYXJ0IGlzIGNyZWF0ZWQACistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKfCAgICAgICAgICAgODBLIFJBTSBMQVlPVVQgICAgICAgICAgfAorLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0rCnwgQUREUiAgfCBJTkZPICAgICAgICAgICAgICB8IFNJWkUgIHwKKy0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tKwAKfCAlMDVYIHwgJS0xN3MgfCAlLTVpIHwACistLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLSsAU0NSRUVOAFBBTEVUVEUAUEFMRVRURSBNQVAAQk9SREVSAFNDUkVFTiBPRkZTRVQATU9VU0UgQ1VSU09SAFRJTEVTAFNQUklURVMATUFQAEdBTUVQQURTAE1PVVNFAEtFWUJPQVJEAFNPVU5EIFJFR0lTVEVSUwBXQVZFRk9STVMAU0ZYAE1VU0lDIFBBVFRFUk5TAE1VU0lDIFRSQUNLUwBNVVNJQyBQT1MACmF2YWlsYWJsZSBjb21tYW5kczoKCgAKcHJlc3MgAEVTQwAgdG8gZW50ZXIgVUkgbW9kZQoAdW5rbm93biBlcnJvcgAlcyAlcwAgbG9hZGVkIGZyb20gAApjYXJ0IGxvYWRpbmcgZXJyb3IAIGxvYWRlZCEKdXNlIABSVU4AIGNvbW1hbmQgdG8gcnVuIGl0CgAKY2FydCBuYW1lIGlzIG1pc3NpbmcAY29kZQAlMDJ4AGRvZmlsZSgAY29kZSBpcyBsYXJnZXIgdGhhbiAlaSBzeW1ib2xzAGRvZmlsZTogZmlsZSAnJXMnIG5vdCBmb3VuZAB7IE1vZHVsZS5zaG93QWRkUG9wdXAoZnVuY3Rpb24oZmlsZW5hbWUsIHJvbSkgeyBpZihmaWxlbmFtZSA9PSBudWxsIHx8IHJvbSA9PSBudWxsKSB7IFJ1bnRpbWUuZHluQ2FsbCgndmlpaWlpJywgJDAsIFswLCAwLCAwLCAkMSwgMF0pOyB9IGVsc2UgeyB2YXIgZmlsZVB0ciA9IE1vZHVsZS5fbWFsbG9jKGZpbGVuYW1lLmxlbmd0aCArIDEpOyBzdHJpbmdUb1VURjgoZmlsZW5hbWUsIGZpbGVQdHIsIGZpbGVuYW1lLmxlbmd0aCArIDEpOyB2YXIgZGF0YVB0ciA9IE1vZHVsZS5fbWFsbG9jKHJvbS5sZW5ndGgpOyB3cml0ZUFycmF5VG9NZW1vcnkocm9tLCBkYXRhUHRyKTsgUnVudGltZS5keW5DYWxsKCd2aWlpaWknLCAkMCwgW2ZpbGVQdHIsIGRhdGFQdHIsIHJvbS5sZW5ndGgsICQxLCAwXSk7IE1vZHVsZS5fZnJlZShmaWxlUHRyKTsgTW9kdWxlLl9mcmVlKGRhdGFQdHIpOyB9IH0pOyB9AHsgdmFyIG5hbWUgPSBQb2ludGVyX3N0cmluZ2lmeSgkMCk7IHZhciBibG9iID0gbmV3IEJsb2IoW0hFQVBVOC5zdWJhcnJheSgkMSwgJDEgKyAkMildLCB7dHlwZTogImFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbSJ9KTsgTW9kdWxlLnNhdmVBcyhibG9iLCBuYW1lKTsgfQBORVRTQ0FQRTIuMAABAAB0aWMuY29tcHV0ZXIvcGxheQB0aWMuY29tcHV0ZXIvcGxheS8ARlMuc3luY2ZzKGZ1bmN0aW9uKCl7fSkALmxvY2FsL2NhY2hlLyVzLnRpYwAvY2FydC8lcy9jYXJ0LnRpYwAvY29tLm5lc2JveC50aWMvVElDLTgwLwB7IHZhciBkaXIgPSAiIjsgTW9kdWxlLlBvaW50ZXJfc3RyaW5naWZ5KCQwKS5zcGxpdCgiLyIpLmZvckVhY2goZnVuY3Rpb24odmFsKSB7IGlmKHZhbC5sZW5ndGgpIHsgZGlyICs9ICIvIiArIHZhbDsgRlMubWtkaXIoZGlyKTsgfSB9KTsgRlMubW91bnQoSURCRlMsIHt9LCBkaXIpOyBGUy5zeW5jZnModHJ1ZSwgZnVuY3Rpb24oZXJyb3IpIHsgaWYoZXJyb3IpIGNvbnNvbGUubG9nKGVycm9yKTsgZWxzZSBSdW50aW1lLmR5bkNhbGwoJ3ZpJywgJDEsIFskMl0pOyB9KTsgfQBUSUMtODAgdGlueSBjb21wdXRlcgAwLjYwLjMAaHR0cDovL3RpYy5jb21wdXRlciAoQykgMjAxNwAABpYAADhEREQ4AAAjMjU1AEJSVVNIIFNJWkUAEDh8/gAAAAD+fDgQAAAAABAwcPBwMBAAgMDg8ODAgABDT1BZIFBBTEVUVEUA8JC46DgAAABQQVNURSBQQUxFVFRFAHCI+Nj4AAAA4ODgAAAAAABGRgAlMDJYAEDAQAAAAAAAgMCAAAAAAADu1u7u7tbuAP7+ukS6/v4AOESVjoRAOAA+fyoqKio+AHw4EAAAAAAACBw+fLiQ4AA4OHwoKCgQAKoAggCCAKoACAQCf76ciABFRElUIFBBTEVUVEUAQP8AAv8AEP9DQU5WQVMgWk9PTQBUSUxFUyBbdGFiXQBGRwBTUFJJVEVTIFt0YWJdAEJSVVNIIFsxXQBDT0xPUiBQSUNLRVIgWzJdAEZMSVAgSE9SWiBbNV0ARkxJUCBWRVJUIFs2XQBST1RBVEUgWzddAEVSQVNFIFs4XQAlMDNpOiUwM2kAIzk5OQAjJTAzaQBTSE9XIFRJTEVTIFtzaGlmdF0AAAAQOHwAAAAAAHw4EAAAAEZJTEwgWzRdAAAIBD5cSAAAU0VMRUNUIFszXQAAVABEAFQAAERSQUcgTUFQIFsyXQAAGBxcPBgAAERSQVcgWzFdAAAIFChQYAAAU0hPVy9ISURFIEdSSUQgW2BdAAAofCh8KAAAV09STEQgTUFQIFt0YWJdAAAcIkkiHAAASURYAHgxNgBET1dOAHCIiIhwAAAAcPj4+HAAAABMT09QOgBPQ1QAV0FWRQBWT0xVTUUAQVJQRUdHAFBJVENIABAwcDAQAAAAQGBwYEAAAABDIFt6XQBDIyBbc10ARCBbeF0ARCMgW2RdAEUgW2NdAEYgW3ZdAEYjIFtnXQBHIFtiXQBHIyBbaF0AQSBbbl0AQSMgW2pdAEIgW21dAFBMQVkgU0ZYIFtzcGFjZV0AJXMlaQBXQVZFRk9STVMgW3RhYl0AADBJSUkGAAAAQERUVVUAAEVOVkVMT1BFUyBbdGFiXQBUUkFDSwBURU1QTwBTUEQAUk9XUwAAQGBwYEAAADk5ACUwMmkAIGDgYCAAAAAgMDgwIAAAAG9uL29mZiBjaGFubmVsAC0tLS0tLS0tACAgICAgIAAlcyVpJTAyaSUwMVgtLQALCQgHBQQCA1BJQU5PIE1PREUgLSBXT1JLIElOIFBST0dSRVNTLi4uAABw+Pj4cAAAAFBYXFhQAAAAIDA4MCAAAAB8fHx8fAAAUElBTk8gTU9ERQAAf1VVQX8AAABbAFsAWwAAVFJBQ0tFUiBNT0RFAFJFQ09SRCBNVVNJQwBQTEFZIEZSQU1FIFtlbnRlcl0AUExBWSBUUkFDSwBTVE9QIFtlbnRlcl0AQy0AQyMARC0ARCMARS0ARi0ARiMARy0ARyMAQS0AQSMAQi0AEDBwMBAAAABAYHBgQAAAAHja7VlNaBzJFS75Z3dnrLg0EJb8bOJhsgcZJCxLihMEE6KdaUuTlWbE/NgxhlW08rQjkDWJRk5IgmAxLExOysGBzGk2+KZcctElcxDJcSEhLCGHEHIJubbeyaxZcOVVdfVMdfWrkRY2CQRV683rqtfv1c/3XlW/1tgHr7CXAksulzvodDoHkmP1QMCAhDgJcjkRdDoQ5J5AIA5AwAFAREo/k8m0fN9vSY7VFupFJPUzGRH4PgSZDdRvQQAhnUCLCaVfLBZ73W63JzlWexwJdXtav1gUQbcLQfEp6vcg4EjQQ/2e1m80Gsf9fv9Ycqwq4oxLLvUbDRH0+xA0jlD/GG0eAzAkyT84PEwfyrLw7PBwbu5wYW7umaziz8LM3NzFSK7aUa6eS8ifaX3NsR6TL2j7C1p/Yaj/237/Sv/+Ub9/dD+kRkNxbLm/1mhc/p7vv+JnNnx/43Xf5Hj3+kQmM/Zep/Na58lkR9Hkk050j3eT2Vzuwi+63VT3aamrqFTEVZb8afcp/n67WLyk8JbYq+tjdX8D/UAwkGv7UhwwgdifHCD+HU3SHxicBEIEgcJbYu8/Ry4v37+GfjDQbwEg9opaPgjlB5mhvsJbYv/ixYtet9eT9xX0g4F+DwCxhxdIvS4I5QfFob7CWmLfl/wTdb+OfjDQP2YCsT85Rvz7mqQ/RPoMi8sHZLspt30gLk/6QExO+EAkd/mAbJdylw/Idil3+YBsl3KXD8h2Mn5V8Vst8dyOXyHxbElMkZ4jMTaRwb8MQ90JTbGC/csfdFX5SERjEb3TCIKjT/4VHPVDknWzsPPyHy3D+JX8uUjGL5Mxe4Kxq3zAjt8I5gh7BbD0B+kXCvsB1hr7sdAfdP/fmguC9o//OSBZN8uFD6+dg3Rezst5cRdhEDO4LvKUkuQqUiYEj/GYHNs4lxwreCMs+yhFobrRjMf1QzUG+MMh5JYBBqPmp+URWeaHbdxhi8v+uRq/5Lb+oA/BaJnZF3ePF8TpUAHXNqgJDlnCrsDWiBL9CN23iO7jFhRewLWdEOO4XA9Krg+47QuInmUJfWH0Y/vHsF9Gjt/sXzNy/uDQH7aH4CTkxppT62/LE/ga2ChwwI095QMxPcJ3wJg/Gb/ab7kII8s1f0Ui5Db+oWzIaX0XPnH/E8KNv8u/YnJi/qoduIGj6X7xudnzU8+P9H8+AFkQ/q1sSt/m2sft9bPJtg96bGqf5In9T9nn+hmgxj86vmPrL9zxEdfnI/ST6yei/U9Q/sGTi0Dh4xq/LePJ84Pz4RoKoPE35xmPXx6SOU4bf2NvsfED63yB5PFkxT4nz4TB+cOJ7R2S56LzjBCc3j9O0ZF7d7h/E/5r+QClr5aJJ/tn2qbL/sAHwfCj2AB4uPaaA6f3T67jiFkxKog9KDFBNjwDqfGbGz2n7Jv7I4GvSYyYf3Q2qvjnhHzU+K0Yps6Q0/cACx9wnAHE/mviT8a/jR0x/6hvl38Mxg6kenwPAGp9w3WJ/MzVPxD+k9gDBOE/3IhjkYzfBFHxLxzxz8IXYIDzVOW8nJfz8hkXe1/i/2f5P1hzhM84/9d66lzgp7xrjRirEPzseH3K/F+db9zxfsDj76BU/hDlxdyV/zOd/1P2Qb9Xjcj/udEPlV9Gcu7K/601SOrzGKfldP4fW3N+CiYUvmfI/6M1pXzg9PyfDdafjN8z5P9cXyEWyXc/rnHhjM7vYuElaP1hH278Xf5lyjlz9A/cwNF6NzTmlpwfj8W/0781UfsX1++lnMjT7Fc/QYxPwDD3T+qHcavkkJSDtb5U/Jprz5kbfzL/S+hzcv3BEb/2+pL5+4jxx2QwQl/nTvb5Y+oBiY9lm1PfF4ex53r/Z473//92/p8Yn2PPSeTYLCRGfD9QuZOWk/uj0tfdCGICI+wPvxFzrU989I6+K7jOVz0+ZpxFzvGT/wDQ/QKxVmAaCsnEKGzisT5GbgBA5/+R/1L5/8jxG/MHxskE3cYPTsWfO/QdrqTzeyp3TmAH1Bk32j8GcqDxN/cA6l11sC6RnzjsU/4z/MZuzOV/kv9fmmDstVT6yvjnrvIvfPFLX37jK1+9drlwgdWXvVUvn/5ZOlVoVGuVaj6dwvtUba1aqnv56ZtTWFkrfddbWV/zqre9Qj2/t/u4ia37U2nUqRS9rFZ5aykrS16p1OrVUnkJK/OyVm6svuVVsTYna2979+5WqsX8LVlZXCuFWkqtUFld9cr1/DeUjdJSWYlmZO3OYjV88OuyVsFxYz2vRDVvBQeWzSvr4TSyofXa8mKxcjcbG/PS4qq3tljUo65XGoVlvFeV1OLK2vJi/uY3ldn9UGM/nS4se4W318ve3fU7XrVWqpTz/sZ2u5kuV9ZrlUa5qKtLpdvrK155qb6cn53JTk9nt3ay7eZma+dBW8lqhcUVLz+bXi3Val5x/XYVR1LL30w3at76ndq9ckGNMz3tLmn/8c7m3lZrJ1svFSavp1Ob223JtlubG9vZ7Y13m9v5XP37W+0s/rV/0t5rPspi//7Ww8e7G0pvc2N3b3frwcNmLtJqb/20mf/B7tbO3qQyMDUzNX0LbZpNk7PzM9Pywes3bsxOTd6cu4WP4O31dHPnQer3jF1WF0/J64q61D07y3VBeelFeV3C61W8xi+Op1j8Grcu08JFNPEeu8qujl0dO1uf9nUpPROdgOE7iOQTs/Uf/ep3f3958sff/Pyh97WxqB7xcdT5/PgbxTfnZ+Yflb9Tfn9lZr755p9vLz/+4ca9/T99tD/1/i9//ehw6qPD7qM/fPi3v7zzj+Cv/wY2egQ+LmxvY2FsL2NvbmZpZyAwLjYwLjMudGljAEdJRl9MRU5HVEgAR0lGX1NDQUxFAENIRUNLX05FV19WRVJTSU9OAE5PX1NPVU5EAE1JU1NFRF9GUkFNRVMAVVNFX1ZTWU5DAFRIRU1FAENVUlNPUgBTUFJJVEUAUElYRUxfUEVSRkVDVABDT0RFAEJHAFNFTEVDVABTSEFET1cAR0FNRVBBRABUT1VDSABBTFBIQQBTVFJJTkcATlVNQkVSAEtFWVdPUkQAQVBJAENPTU1FTlQAU0lHTgBWQVIAT1RIRVIAbGluZSAlaS8laSBjb2wgJWkAJWkvJWkAIEZJTkQ6ACBHT1RPOgAgRlVOQzoAKGVtcHR5KQAAIDA4MCAAAAA4RDgQEAAAABAYfBgQAAAAfAB8AHwAAFJVTiBbY3RybCtyXQBGSU5EIFtjdHJsK2ZdAEdPVE8gW2N0cmwrZ10AT1VUTElORSBbY3RybCtvXQBXQVJOSU5HIQBZRVMATk8AgMDgwIAAAAAubG9jYWwva2V5bWFwLmRhdACAwODAgAAAAEJBQ0sAgMDgwIAAAAAjMQAjJWkAR0FNRSBNRU5VAFJFU1VNRSBHQU1FAFJFU0VUIEdBTUUAR0FNRVBBRCBDT05GSUcARVhJVCBUTyBUSUMtODAALmxvY2FsL2NhY2hlLwAubHVhAC5sb2NhbC9jYWNoZS8lcy5naWYAL2NhcnQvJXMvY292ZXIuZ2lmAFRJQy04MCBTVVJGAEJBQ0sALyVzAFlvdSBkb24ndCBoYXZlIGFueSBmaWxlcy4uLgAlcy8lcwBbJXNdACZhbXA7ACYjMzk7AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAwMAAwAAAAUFAAAAAAAABQ+FD4UAAAAHigcCjwAAAAiBAgQIgAAABAoGiQaAAAACBAAAAAAAAAIEBAQCAAAABAICAgQAAAACCocKggAAAAACBwIAAAAAAAAABgIEAAAAAAcAAAAAAAAAAAYGAAAAAIECBAgAAAAHDIyMhwAAAAMHAwMHgAAADwGHDA+AAAAPgYMJhwAAAAMHDQ+BAAAAD4wPAY8AAAAHDA8MhwAAAA+BgwYMAAAABwyHDIcAAAAHDIeAhwAAAAYGAAYGAAAABgYABgIEAAABAgQCAQAAAAAHAAcAAAAABAIBAgQAAAAHgYMAAwAAAAcKi4gHAAAABwyMj4yAAAAPDI8MjwAAAAcMjAyHAAAADwyMjI8AAAAPjA8MD4AAAA+MDwwMAAAAB4wNjIeAAAAMjI+MjIAAAAeDAwMHgAAAD4GBjYcAAAAMjQ4NDIAAAAwMDAwPgAAADY+PioiAAAAMjo+NjIAAAAcMjIyHAAAADwyMjwwAAAAHDIyMhwCAAA8MjI8MgAAAB44HA48AAAAHgwMDAwAAAAyMjIyHAAAADIyMhwIAAAAIio+PjYAAAAyMhwyMgAAABoaHgwMAAAAPgwYMD4AAAAYEBAQGAAAACAQCAQCAAAAGAgICBgAAAAIFCIAAAAAAAAAAAAeAAAAEAgAAAAAAAAAHiYmHgAAADA8MjI8AAAAAB44OB4AAAAGHiYmHgAAAAAcNjgcAAAADhg+GBgAAAAAHCY+BhwAADA8MjIyAAAADAAcDB4AAAAGAAYGJhwAADAyPDIyAAAAGBgYGA4AAAAAND4qKgAAAAA8MjIyAAAAABwyMhwAAAAAPDIyPDAAAAAeJiYeBgAAADwyMDAAAAAAHjgOPAAAABg+GBgOAAAAACYmJh4AAAAAMjI0OAAAAAAiKj42AAAAADYcHDYAAAAAJiYeBhwAAAA+DBg+AAAADAgYCAwAAAAICAgICAAAABgIDAgYAAAAAAoUAAAAAAAAAAAAAAAAAAhIlVua25vd24gdmFsdWUgb2Ygb3JpZW50YXRpb24gaW4gZHJhd1RpbGUiAHNyYy90aWMuYwBkcmF3VGlsZQBzY3JpcHQAbW9vbgBtb29uc2NyaXB0AGpzAGphdmFzY3JpcHQAJXMgJXM6ABQMHEQkNDA0bU5KToVMMDRlJNBGSHVxYVl9ztJ9LIWVoW2qLNKqmW3CytrUXt7u1mJhbmsgPj0gMCAmJiBiYW5rIDwgVElDX0JBTktTAGFwaV9zeW5jAHNhdmVpZABpbnB1dABnYW1lcGFkAGtleWJvYXJkAHRoZSBjb2RlIGlzIGVtcHR5AHNpemUgPj0gMAAuLi8zcmQtcGFydHkvYmxpcC1idWYvYmxpcF9idWYuYwBibGlwX25ldwAwIDw9IGZhY3RvciAtIG0tPmZhY3RvciAmJiBmYWN0b3IgLSBtLT5mYWN0b3IgPCAxAGJsaXBfc2V0X3JhdGVzAG0tPmF2YWlsIDw9IG0tPnNpemUAYmxpcF9lbmRfZnJhbWUAY291bnQgPj0gMABibGlwX3JlYWRfc2FtcGxlcwBvdXQgPD0gJlNBTVBMRVMoIG0gKSBbbS0+c2l6ZSArIGVuZF9mcmFtZV9leHRyYV0AYmxpcF9hZGRfZGVsdGEALyoAKi8AaW5zdGFuY2VvZgB0eXBlb2YAY2FzZQB2YXIAZmluYWxseQB2b2lkAGRlYnVnZ2VyAHRoaXMAdGhyb3cAZGVsZXRlAGNvbnN0AF9USUM4MABzcmMvanNhcGkuYwBwYWNrYWdlLnByZWxvYWRbJ21vb25zY3JpcHQudmVyc2lvbiddID0gZnVuY3Rpb24oKQogIGxvY2FsIHZlcnNpb24gPSAiMC41LjAiCiAgcmV0dXJuIHsKICAgIHZlcnNpb24gPSB2ZXJzaW9uLAogICAgcHJpbnRfdmVyc2lvbiA9IGZ1bmN0aW9uKCkKICAgICAgcmV0dXJuIHByaW50KCJNb29uU2NyaXB0IHZlcnNpb24gIiAuLiB0b3N0cmluZyh2ZXJzaW9uKSkKICAgIGVuZAogIH0KICAKZW5kCnBhY2thZ2UucHJlbG9hZFsnbW9vbnNjcmlwdC5lcnJvcnMnXSA9IGZ1bmN0aW9uKCkKICBsb2NhbCB1dGlsID0gcmVxdWlyZSgibW9vbnNjcmlwdC51dGlsIikKICBsb2NhbCBscGVnID0gcmVxdWlyZSgibHBlZyIpCiAgbG9jYWwgY29uY2F0LCBpbnNlcnQKICBkbwogICAgbG9jYWwgX29ial8wID0gdGFibGUKICAgIGNvbmNhdCwgaW5zZXJ0ID0gX29ial8wLmNvbmNhdCwgX29ial8wLmluc2VydAogIGVuZAogIGxvY2FsIHNwbGl0LCBwb3NfdG9fbGluZQogIHNwbGl0LCBwb3NfdG9fbGluZSA9IHV0aWwuc3BsaXQsIHV0aWwucG9zX3RvX2xpbmUKICBsb2NhbCB1c2VyX2Vycm9yCiAgdXNlcl9lcnJvciA9IGZ1bmN0aW9uKC4uLikKICAgIHJldHVybiBlcnJvcih7CiAgICAgICJ1c2VyLWVycm9yIiwKICAgICAgLi4uCiAgICB9KQogIGVuZAogIGxvY2FsIGxvb2t1cF9saW5lCiAgbG9va3VwX2xpbmUgPSBmdW5jdGlvbihmbmFtZSwgcG9zLCBjYWNoZSkKICAgIGlmIG5vdCBjYWNoZVtmbmFtZV0gdGhlbgogICAgICBkbwogICAgICAgIGxvY2FsIF93aXRoXzAgPSBhc3NlcnQoaW8ub3BlbihmbmFtZSkpCiAgICAgICAgY2FjaGVbZm5hbWVdID0gX3dpdGhfMDpyZWFkKCIqYSIpCiAgICAgICAgX3dpdGhfMDpjbG9zZSgpCiAgICAgIGVuZAogICAgZW5kCiAgICByZXR1cm4gcG9zX3RvX2xpbmUoY2FjaGVbZm5hbWVdLCBwb3MpCiAgZW5kCiAgbG9jYWwgcmV2ZXJzZV9saW5lX251bWJlcgogIHJldmVyc2VfbGluZV9udW1iZXIgPSBmdW5jdGlvbihmbmFtZSwgbGluZV90YWJsZSwgbGluZV9udW0sIGNhY2hlKQogICAgZm9yIGkgPSBsaW5lX251bSwgMCwgLTEgZG8KICAgICAgaWYgbGluZV90YWJsZVtpXSB0aGVuCiAgICAgICAgcmV0dXJuIGxvb2t1cF9saW5lKGZuYW1lLCBsaW5lX3RhYmxlW2ldLCBjYWNoZSkKICAgICAgZW5kCiAgICBlbmQKICAgIHJldHVybiAidW5rbm93biIKICBlbmQKICBsb2NhbCB0cnVuY2F0ZV90cmFjZWJhY2sKICB0cnVuY2F0ZV90cmFjZWJhY2sgPSBmdW5jdGlvbih0cmFjZWJhY2ssIGNodW5rX2Z1bmMpCiAgICBpZiBjaHVua19mdW5jID09IG5pbCB0aGVuCiAgICAgIGNodW5rX2Z1bmMgPSAibW9vbnNjcmlwdF9jaHVuayIKICAgIGVuZAogICAgdHJhY2ViYWNrID0gc3BsaXQodHJhY2ViYWNrLCAiXG4iKQogICAgbG9jYWwgc3RvcCA9ICN0cmFjZWJhY2sKICAgIHdoaWxlIHN0b3AgPiAxIGRvCiAgICAgIGlmIHRyYWNlYmFja1tzdG9wXTptYXRjaChjaHVua19mdW5jKSB0aGVuCiAgICAgICAgYnJlYWsKICAgICAgZW5kCiAgICAgIHN0b3AgPSBzdG9wIC0gMQogICAgZW5kCiAgICBkbwogICAgICBsb2NhbCBfYWNjdW1fMCA9IHsgfQogICAgICBsb2NhbCBfbGVuXzAgPSAxCiAgICAgIGxvY2FsIF9tYXhfMCA9IHN0b3AKICAgICAgZm9yIF9pbmRleF8wID0gMSwgX21heF8wIDwgMCBhbmQgI3RyYWNlYmFjayArIF9tYXhfMCBvciBfbWF4XzAgZG8KICAgICAgICBsb2NhbCB0ID0gdHJhY2ViYWNrW19pbmRleF8wXQogICAgICAgIF9hY2N1bV8wW19sZW5fMF0gPSB0CiAgICAgICAgX2xlbl8wID0gX2xlbl8wICsgMQogICAgICBlbmQKICAgICAgdHJhY2ViYWNrID0gX2FjY3VtXzAKICAgIGVuZAogICAgbG9jYWwgcmVwID0gImZ1bmN0aW9uICciIC4uIGNodW5rX2Z1bmMgLi4gIiciCiAgICB0cmFjZWJhY2tbI3RyYWNlYmFja10gPSB0cmFjZWJhY2tbI3RyYWNlYmFja106Z3N1YihyZXAsICJtYWluIGNodW5rIikKICAgIHJldHVybiBjb25jYXQodHJhY2ViYWNrLCAiXG4iKQogIGVuZAogIGxvY2FsIHJld3JpdGVfdHJhY2ViYWNrCiAgcmV3cml0ZV90cmFjZWJhY2sgPSBmdW5jdGlvbih0ZXh0LCBlcnIpCiAgICBsb2NhbCBsaW5lX3RhYmxlcyA9IHJlcXVpcmUoIm1vb25zY3JpcHQubGluZV90YWJsZXMiKQogICAgbG9jYWwgViwgUywgQ3QsIEMKICAgIFYsIFMsIEN0LCBDID0gbHBlZy5WLCBscGVnLlMsIGxwZWcuQ3QsIGxwZWcuQwogICAgbG9jYWwgaGVhZGVyX3RleHQgPSAic3RhY2sgdHJhY2ViYWNrOiIKICAgIGxvY2FsIEhlYWRlciwgTGluZSA9IFYoIkhlYWRlciIpLCBWKCJMaW5lIikKICAgIGxvY2FsIEJyZWFrID0gbHBlZy5TKCJcbiIpCiAgICBsb2NhbCBnID0gbHBlZy5QKHsKICAgICAgSGVhZGVyLAogICAgICBIZWFkZXIgPSBoZWFkZXJfdGV4dCAqIEJyZWFrICogQ3QoTGluZSBeIDEpLAogICAgICBMaW5lID0gIlx0IiAqIEMoKDEgLSBCcmVhaykgXiAwKSAqIChCcmVhayArIC0xKQogICAgfSkKICAgIGxvY2FsIGNhY2hlID0geyB9CiAgICBsb2NhbCByZXdyaXRlX3NpbmdsZQogICAgcmV3cml0ZV9zaW5nbGUgPSBmdW5jdGlvbih0cmFjZSkKICAgICAgbG9jYWwgZm5hbWUsIGxpbmUsIG1zZyA9IHRyYWNlOm1hdGNoKCdeKC4tKTooJWQrKTogKC4qKSQnKQogICAgICBsb2NhbCB0YmwgPSBsaW5lX3RhYmxlc1siQCIgLi4gdG9zdHJpbmcoZm5hbWUpXQogICAgICBpZiBmbmFtZSBhbmQgdGJsIHRoZW4KICAgICAgICByZXR1cm4gY29uY2F0KHsKICAgICAgICAgIGZuYW1lLAogICAgICAgICAgIjoiLAogICAgICAgICAgcmV2ZXJzZV9saW5lX251bWJlcihmbmFtZSwgdGJsLCBsaW5lLCBjYWNoZSksCiAgICAgICAgICAiOiAiLAogICAgICAgICAgIigiLAogICAgICAgICAgbGluZSwKICAgICAgICAgICIpICIsCiAgICAgICAgICBtc2cKICAgICAgICB9KQogICAgICBlbHNlCiAgICAgICAgcmV0dXJuIHRyYWNlCiAgICAgIGVuZAogICAgZW5kCiAgICBlcnIgPSByZXdyaXRlX3NpbmdsZShlcnIpCiAgICBsb2NhbCBtYXRjaCA9IGc6bWF0Y2godGV4dCkKICAgIGlmIG5vdCAobWF0Y2gpIHRoZW4KICAgICAgcmV0dXJuIG5pbAogICAgZW5kCiAgICBmb3IgaSwgdHJhY2UgaW4gaXBhaXJzKG1hdGNoKSBkbwogICAgICBtYXRjaFtpXSA9IHJld3JpdGVfc2luZ2xlKHRyYWNlKQogICAgZW5kCiAgICByZXR1cm4gY29uY2F0KHsKICAgICAgIm1vb246ICIgLi4gZXJyLAogICAgICBoZWFkZXJfdGV4dCwKICAgICAgIlx0IiAuLiBjb25jYXQobWF0Y2gsICJcblx0IikKICAgIH0sICJcbiIpCiAgZW5kCiAgcmV0dXJuIHsKICAgIHJld3JpdGVfdHJhY2ViYWNrID0gcmV3cml0ZV90cmFjZWJhY2ssCiAgICB0cnVuY2F0ZV90cmFjZWJhY2sgPSB0cnVuY2F0ZV90cmFjZWJhY2ssCiAgICB1c2VyX2Vycm9yID0gdXNlcl9lcnJvciwKICAgIHJldmVyc2VfbGluZV9udW1iZXIgPSByZXZlcnNlX2xpbmVfbnVtYmVyCiAgfQogIAplbmQKcGFja2FnZS5wcmVsb2FkWydtb29uc2NyaXB0LmNtZC5tb29uYyddID0gZnVuY3Rpb24oKQogIGxvY2FsIGxmcyA9IHJlcXVpcmUoImxmcyIpCiAgbG9jYWwgc3BsaXQKICBzcGxpdCA9IHJlcXVpcmUoIm1vb25zY3JpcHQudXRpbCIpLnNwbGl0CiAgbG9jYWwgZGlyc2VwLCBkaXJzZXBfY2hhcnMsIG1rZGlyLCBub3JtYWxpemVfZGlyLCBwYXJzZV9kaXIsIHBhcnNlX2ZpbGUsIGNvbnZlcnRfcGF0aCwgZm9ybWF0X3RpbWUsIGdldHRpbWUsIGNvbXBpbGVfZmlsZV90ZXh0LCB3cml0ZV9maWxlLCBjb21waWxlX2FuZF93cml0ZSwgaXNfYWJzX3BhdGgsIHBhdGhfdG9fdGFyZ2V0CiAgZGlyc2VwID0gcGFja2FnZS5jb25maWc6c3ViKDEsIDEpCiAgaWYgZGlyc2VwID09ICJcXCIgdGhlbgogICAgZGlyc2VwX2NoYXJzID0gIlxcLyIKICBlbHNlCiAgICBkaXJzZXBfY2hhcnMgPSBkaXJzZXAKICBlbmQKICBta2RpciA9IGZ1bmN0aW9uKHBhdGgpCiAgICBsb2NhbCBjaHVua3MgPSBzcGxpdChwYXRoLCBkaXJzZXApCiAgICBsb2NhbCBhY2N1bQogICAgZm9yIF9pbmRleF8wID0gMSwgI2NodW5rcyBkbwogICAgICBsb2NhbCBkaXIgPSBjaHVua3NbX2luZGV4XzBdCiAgICAgIGFjY3VtID0gYWNjdW0gYW5kIHRvc3RyaW5nKGFjY3VtKSAuLiB0b3N0cmluZyhkaXJzZXApIC4uIHRvc3RyaW5nKGRpcikgb3IgZGlyCiAgICAgIGxmcy5ta2RpcihhY2N1bSkKICAgIGVuZAogICAgcmV0dXJuIGxmcy5hdHRyaWJ1dGVzKHBhdGgsICJtb2RlIikKICBlbmQKICBub3JtYWxpemVfZGlyID0gZnVuY3Rpb24ocGF0aCkKICAgIHJldHVybiBwYXRoOm1hdGNoKCJeKC4tKVsiIC4uIHRvc3RyaW5nKGRpcnNlcF9jaGFycykgLi4gIl0qJCIpIC4uIGRpcnNlcAogIGVuZAogIHBhcnNlX2RpciA9IGZ1bmN0aW9uKHBhdGgpCiAgICByZXR1cm4gKHBhdGg6bWF0Y2goIl4oLi0pW14iIC4uIHRvc3RyaW5nKGRpcnNlcF9jaGFycykgLi4gIl0qJCIpKQogIGVuZAogIHBhcnNlX2ZpbGUgPSBmdW5jdGlvbihwYXRoKQogICAgcmV0dXJuIChwYXRoOm1hdGNoKCJeLi0oW14iIC4uIHRvc3RyaW5nKGRpcnNlcF9jaGFycykgLi4gIl0qKSQiKSkKICBlbmQKICBjb252ZXJ0X3BhdGggPSBmdW5jdGlvbihwYXRoKQogICAgbG9jYWwgbmV3X3BhdGggPSBwYXRoOmdzdWIoIiUubW9vbiQiLCAiLmx1YSIpCiAgICBpZiBuZXdfcGF0aCA9PSBwYXRoIHRoZW4KICAgICAgbmV3X3BhdGggPSBwYXRoIC4uICIubHVhIgogICAgZW5kCiAgICByZXR1cm4gbmV3X3BhdGgKICBlbmQKICBmb3JtYXRfdGltZSA9IGZ1bmN0aW9uKHRpbWUpCiAgICByZXR1cm4gKCIlLjNmbXMiKTpmb3JtYXQodGltZSAqIDEwMDApCiAgZW5kCiAgZG8KICAgIGxvY2FsIHNvY2tldAogICAgZ2V0dGltZSA9IGZ1bmN0aW9uKCkKICAgICAgaWYgc29ja2V0ID09IG5pbCB0aGVuCiAgICAgICAgcGNhbGwoZnVuY3Rpb24oKQogICAgICAgICAgc29ja2V0ID0gcmVxdWlyZSgic29ja2V0IikKICAgICAgICBlbmQpCiAgICAgICAgaWYgbm90IChzb2NrZXQpIHRoZW4KICAgICAgICAgIHNvY2tldCA9IGZhbHNlCiAgICAgICAgZW5kCiAgICAgIGVuZAogICAgICBpZiBzb2NrZXQgdGhlbgogICAgICAgIHJldHVybiBzb2NrZXQuZ2V0dGltZSgpCiAgICAgIGVsc2UKICAgICAgICByZXR1cm4gbmlsLCAiTHVhU29ja2V0IG5lZWRlZCBmb3IgYmVuY2htYXJrIgogICAgICBlbmQKICAgIGVuZAogIGVuZAogIGNvbXBpbGVfZmlsZV90ZXh0ID0gZnVuY3Rpb24odGV4dCwgb3B0cykKICAgIGlmIG9wdHMgPT0gbmlsIHRoZW4KICAgICAgb3B0cyA9IHsgfQogICAgZW5kCiAgICBsb2NhbCBwYXJzZSA9IHJlcXVpcmUoIm1vb25zY3JpcHQucGFyc2UiKQogICAgbG9jYWwgY29tcGlsZSA9IHJlcXVpcmUoIm1vb25zY3JpcHQuY29tcGlsZSIpCiAgICBsb2NhbCBwYXJzZV90aW1lCiAgICBpZiBvcHRzLmJlbmNobWFyayB0aGVuCiAgICAgIHBhcnNlX3RpbWUgPSBhc3NlcnQoZ2V0dGltZSgpKQogICAgZW5kCiAgICBsb2NhbCB0cmVlLCBlcnIgPSBwYXJzZS5zdHJpbmcodGV4dCkKICAgIGlmIG5vdCAodHJlZSkgdGhlbgogICAgICByZXR1cm4gbmlsLCBlcnIKICAgIGVuZAogICAgaWYgcGFyc2VfdGltZSB0aGVuCiAgICAgIHBhcnNlX3RpbWUgPSBnZXR0aW1lKCkgLSBwYXJzZV90aW1lCiAgICBlbmQKICAgIGlmIG9wdHMuc2hvd19wYXJzZV90cmVlIHRoZW4KICAgICAgbG9jYWwgZHVtcCA9IHJlcXVpcmUoIm1vb25zY3JpcHQuZHVtcCIpCiAgICAgIGR1bXAudHJlZSh0cmVlKQogICAgICByZXR1cm4gdHJ1ZQogICAgZW5kCiAgICBsb2NhbCBjb21waWxlX3RpbWUKICAgIGlmIG9wdHMuYmVuY2htYXJrIHRoZW4KICAgICAgY29tcGlsZV90aW1lID0gZ2V0dGltZSgpCiAgICBlbmQKICAgIGxvY2FsIGNvZGUsIHBvc21hcF9vcl9lcnIsIGVycl9wb3MgPSBjb21waWxlLnRyZWUodHJlZSkKICAgIGlmIG5vdCAoY29kZSkgdGhlbgogICAgICByZXR1cm4gbmlsLCBjb21waWxlLmZvcm1hdF9lcnJvcihwb3NtYXBfb3JfZXJyLCBlcnJfcG9zLCB0ZXh0KQogICAgZW5kCiAgICBpZiBjb21waWxlX3RpbWUgdGhlbgogICAgICBjb21waWxlX3RpbWUgPSBnZXR0aW1lKCkgLSBjb21waWxlX3RpbWUKICAgIGVuZAogICAgaWYgb3B0cy5zaG93X3Bvc21hcCB0aGVuCiAgICAgIGxvY2FsIGRlYnVnX3Bvc21hcAogICAgICBkZWJ1Z19wb3NtYXAgPSByZXF1aXJlKCJtb29uc2NyaXB0LnV0aWwiKS5kZWJ1Z19wb3NtYXAKICAgICAgcHJpbnQoIlBvcyIsICJMdWEiLCAiPj4iLCAiTW9vbiIpCiAgICAgIHByaW50KGRlYnVnX3Bvc21hcChwb3NtYXBfb3JfZXJyLCB0ZXh0LCBjb2RlKSkKICAgICAgcmV0dXJuIHRydWUKICAgIGVuZAogICAgaWYgb3B0cy5iZW5jaG1hcmsgdGhlbgogICAgICBwcmludCh0YWJsZS5jb25jYXQoewogICAgICAgIG9wdHMuZm5hbWUgb3IgInN0ZGluIiwKICAgICAgICAiUGFyc2UgdGltZSAgXHQiIC4uIGZvcm1hdF90aW1lKHBhcnNlX3RpbWUpLAogICAgICAgICJDb21waWxlIHRpbWVcdCIgLi4gZm9ybWF0X3RpbWUoY29tcGlsZV90aW1lKSwKICAgICAgICAiIgogICAgICB9LCAiXG4iKSkKICAgICAgcmV0dXJuIHRydWUKICAgIGVuZAogICAgcmV0dXJuIGNvZGUKICBlbmQKICB3cml0ZV9maWxlID0gZnVuY3Rpb24oZm5hbWUsIGNvZGUpCiAgICBta2RpcihwYXJzZV9kaXIoZm5hbWUpKQogICAgbG9jYWwgZiwgZXJyID0gaW8ub3BlbihmbmFtZSwgInciKQogICAgaWYgbm90IChmKSB0aGVuCiAgICAgIHJldHVybiBuaWwsIGVycgogICAgZW5kCiAgICBhc3NlcnQoZjp3cml0ZShjb2RlKSkKICAgIGFzc2VydChmOndyaXRlKCJcbiIpKQogICAgZjpjbG9zZSgpCiAgICByZXR1cm4gImJ1aWxkIgogIGVuZAogIGNvbXBpbGVfYW5kX3dyaXRlID0gZnVuY3Rpb24oc3JjLCBkZXN0LCBvcHRzKQogICAgaWYgb3B0cyA9PSBuaWwgdGhlbgogICAgICBvcHRzID0geyB9CiAgICBlbmQKICAgIGxvY2FsIGYgPSBpby5vcGVuKHNyYykKICAgIGlmIG5vdCAoZikgdGhlbgogICAgICByZXR1cm4gbmlsLCAiQ2FuJ3QgZmluZCBmaWxlIgogICAgZW5kCiAgICBsb2NhbCB0ZXh0ID0gYXNzZXJ0KGY6cmVhZCgiKmEiKSkKICAgIGY6Y2xvc2UoKQogICAgbG9jYWwgY29kZSwgZXJyID0gY29tcGlsZV9maWxlX3RleHQodGV4dCwgb3B0cykKICAgIGlmIG5vdCBjb2RlIHRoZW4KICAgICAgcmV0dXJuIG5pbCwgZXJyCiAgICBlbmQKICAgIGlmIGNvZGUgPT0gdHJ1ZSB0aGVuCiAgICAgIHJldHVybiB0cnVlCiAgICBlbmQKICAgIGlmIG9wdHMucHJpbnQgdGhlbgogICAgICBwcmludChjb2RlKQogICAgICByZXR1cm4gdHJ1ZQogICAgZW5kCiAgICByZXR1cm4gd3JpdGVfZmlsZShkZXN0LCBjb2RlKQogIGVuZAogIGlzX2Fic19wYXRoID0gZnVuY3Rpb24ocGF0aCkKICAgIGxvY2FsIGZpcnN0ID0gcGF0aDpzdWIoMSwgMSkKICAgIGlmIGRpcnNlcCA9PSAiXFwiIHRoZW4KICAgICAgcmV0dXJuIGZpcnN0ID09ICIvIiBvciBmaXJzdCA9PSAiXFwiIG9yIHBhdGg6c3ViKDIsIDEpID09ICI6IgogICAgZWxzZQogICAgICByZXR1cm4gZmlyc3QgPT0gZGlyc2VwCiAgICBlbmQKICBlbmQKICBwYXRoX3RvX3RhcmdldCA9IGZ1bmN0aW9uKHBhdGgsIHRhcmdldF9kaXIsIGJhc2VfZGlyKQogICAgaWYgdGFyZ2V0X2RpciA9PSBuaWwgdGhlbgogICAgICB0YXJnZXRfZGlyID0gbmlsCiAgICBlbmQKICAgIGlmIGJhc2VfZGlyID09IG5pbCB0aGVuCiAgICAgIGJhc2VfZGlyID0gbmlsCiAgICBlbmQKICAgIGxvY2FsIHRhcmdldCA9IGNvbnZlcnRfcGF0aChwYXRoKQogICAgaWYgdGFyZ2V0X2RpciB0aGVuCiAgICAgIHRhcmdldF9kaXIgPSBub3JtYWxpemVfZGlyKHRhcmdldF9kaXIpCiAgICBlbmQKICAgIGlmIGJhc2VfZGlyIGFuZCB0YXJnZXRfZGlyIHRoZW4KICAgICAgbG9jYWwgaGVhZCA9IGJhc2VfZGlyOm1hdGNoKCJeKC4tKVteIiAuLiB0b3N0cmluZyhkaXJzZXBfY2hhcnMpIC4uICJdKlsiIC4uIHRvc3RyaW5nKGRpcnNlcF9jaGFycykgLi4gIl0/JCIpCiAgICAgIGlmIGhlYWQgdGhlbgogICAgICAgIGxvY2FsIHN0YXJ0LCBzdG9wID0gdGFyZ2V0OmZpbmQoaGVhZCwgMSwgdHJ1ZSkKICAgICAgICBpZiBzdGFydCA9PSAxIHRoZW4KICAgICAgICAgIHRhcmdldCA9IHRhcmdldDpzdWIoc3RvcCArIDEpCiAgICAgICAgZW5kCiAgICAgIGVuZAogICAgZW5kCiAgICBpZiB0YXJnZXRfZGlyIHRoZW4KICAgICAgaWYgaXNfYWJzX3BhdGgodGFyZ2V0KSB0aGVuCiAgICAgICAgdGFyZ2V0ID0gcGFyc2VfZmlsZSh0YXJnZXQpCiAgICAgIGVuZAogICAgICB0YXJnZXQgPSB0YXJnZXRfZGlyIC4uIHRhcmdldAogICAgZW5kCiAgICByZXR1cm4gdGFyZ2V0CiAgZW5kCiAgcmV0dXJuIHsKICAgIGRpcnNlcCA9IGRpcnNlcCwKICAgIG1rZGlyID0gbWtkaXIsCiAgICBub3JtYWxpemVfZGlyID0gbm9ybWFsaXplX2RpciwKICAgIHBhcnNlX2RpciA9IHBhcnNlX2RpciwKICAgIHBhcnNlX2ZpbGUgPSBwYXJzZV9maWxlLAogICAgY29udmVydF9wYXRoID0gY29udmVydF9wYXRoLAogICAgZ2V0dGltZSA9IGdldHRpbWUsCiAgICBmb3JtYXRfdGltZSA9IGZvcm1hdF90aW1lLAogICAgcGF0aF90b190YXJnZXQgPSBwYXRoX3RvX3RhcmdldCwKICAgIGNvbXBpbGVfZmlsZV90ZXh0ID0gY29tcGlsZV9maWxlX3RleHQsCiAgICBjb21waWxlX2FuZF93cml0ZSA9IGNvbXBpbGVfYW5kX3dyaXRlCiAgfQogIAplbmQKcGFja2FnZS5wcmVsb2FkWydtb29uc2NyaXB0LmNtZC5hcmdzJ10gPSBmdW5jdGlvbigpCiAgbG9jYWwgdW5wYWNrCiAgdW5wYWNrID0gcmVxdWlyZSgibW9vbnNjcmlwdC51dGlsIikudW5wYWNrCiAgbG9jYWwgcGFyc2Vfc3BlYwogIHBhcnNlX3NwZWMgPSBmdW5jdGlvbihzcGVjKQogICAgbG9jYWwgZmxhZ3MsIHdvcmRzCiAgICBpZiB0eXBlKHNwZWMpID09ICJ0YWJsZSIgdGhlbgogICAgICBmbGFncywgd29yZHMgPSB1bnBhY2soc3BlYyksIHNwZWMKICAgIGVsc2UKICAgICAgZmxhZ3MsIHdvcmRzID0gc3BlYywgeyB9CiAgICBlbmQKICAgIGFzc2VydCgibm8gZmxhZ3MgZm9yIGFyZ3VtZW50cyIpCiAgICBsb2NhbCBvdXQgPSB7IH0KICAgIGZvciBwYXJ0IGluIGZsYWdzOmdtYXRjaCgiJXc6PyIpIGRvCiAgICAgIGlmIHBhcnQ6bWF0Y2goIjokIikgdGhlbgogICAgICAgIG91dFtwYXJ0OnN1YigxLCAxKV0gPSB7CiAgICAgICAgICB2YWx1ZSA9IHRydWUKICAgICAgICB9CiAgICAgIGVsc2UKICAgICAgICBvdXRbcGFydF0gPSB7IH0KICAgICAgZW5kCiAgICBlbmQKICAgIHJldHVybiBvdXQKICBlbmQKICBsb2NhbCBwYXJzZV9hcmd1bWVudHMKICBwYXJzZV9hcmd1bWVudHMgPSBmdW5jdGlvbihzcGVjLCBhcmdzKQogICAgc3BlYyA9IHBhcnNlX3NwZWMoc3BlYykKICAgIGxvY2FsIG91dCA9IHsgfQogICAgbG9jYWwgcmVtYWluaW5nID0geyB9CiAgICBsb2NhbCBsYXN0X2ZsYWcgPSBuaWwKICAgIGZvciBfaW5kZXhfMCA9IDEsICNhcmdzIGRvCiAgICAgIGxvY2FsIF9jb250aW51ZV8wID0gZmFsc2UKICAgICAgcmVwZWF0CiAgICAgICAgbG9jYWwgYXJnID0gYXJnc1tfaW5kZXhfMF0KICAgICAgICBsb2NhbCBncm91cCA9IHsgfQogICAgICAgIGlmIGxhc3RfZmxhZyB0aGVuCiAgICAgICAgICBvdXRbbGFzdF9mbGFnXSA9IGFyZwogICAgICAgICAgX2NvbnRpbnVlXzAgPSB0cnVlCiAgICAgICAgICBicmVhawogICAgICAgIGVuZAogICAgICAgIGRvCiAgICAgICAgICBsb2NhbCBmbGFnID0gYXJnOm1hdGNoKCItKCV3KykiKQogICAgICAgICAgaWYgZmxhZyB0aGVuCiAgICAgICAgICAgIGRvCiAgICAgICAgICAgICAgbG9jYWwgc2hvcnRfbmFtZSA9IHNwZWNbZmxhZ10KICAgICAgICAgICAgICBpZiBzaG9ydF9uYW1lIHRoZW4KICAgICAgICAgICAgICAgIG91dFtzaG9ydF9uYW1lXSA9IHRydWUKICAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICBmb3IgY2hhciBpbiBmbGFnOmdtYXRjaCgiLiIpIGRvCiAgICAgICAgICAgICAgICAgIG91dFtjaGFyXSA9IHRydWUKICAgICAgICAgICAgICAgIGVuZAogICAgICAgICAgICAgIGVuZAogICAgICAgICAgICBlbmQKICAgICAgICAgICAgX2NvbnRpbnVlXzAgPSB0cnVlCiAgICAgICAgICAgIGJyZWFrCiAgICAgICAgICBlbmQKICAgICAgICBlbmQKICAgICAgICB0YWJsZS5pbnNlcnQocmVtYWluaW5nLCBhcmcpCiAgICAgICAgX2NvbnRpbnVlXzAgPSB0cnVlCiAgICAgIHVudGlsIHRydWUKICAgICAgaWYgbm90IF9jb250aW51ZV8wIHRoZW4KICAgICAgICBicmVhawogICAgICBlbmQKICAgIGVuZAogICAgcmV0dXJuIG91dCwgcmVtYWluaW5nCiAgZW5kCiAgcmV0dXJuIHsKICAgIHBhcnNlX2FyZ3VtZW50cyA9IHBhcnNlX2FyZ3VtZW50cywKICAgIHBhcnNlX3NwZWMgPSBwYXJzZV9zcGVjCiAgfQogIAplbmQKcGFja2FnZS5wcmVsb2FkWydtb29uc2NyaXB0LmNtZC53YXRjaGVycyddID0gZnVuY3Rpb24oKQogIGxvY2FsIHJlbW92ZV9kdXBlcwogIHJlbW92ZV9kdXBlcyA9IGZ1bmN0aW9uKGxpc3QsIGtleV9mbikKICAgIGxvY2FsIHNlZW4gPSB7IH0KICAgIHJldHVybiAoZnVuY3Rpb24oKQogICAgICBsb2NhbCBfYWNjdW1fMCA9IHsgfQogICAgICBsb2NhbCBfbGVuXzAgPSAxCiAgICAgIGZvciBfaW5kZXhfMCA9IDEsICNsaXN0IGRvCiAgICAgICAgbG9jYWwgX2NvbnRpbnVlXzAgPSBmYWxzZQogICAgICAgIHJlcGVhdAogICAgICAgICAgbG9jYWwgaXRlbSA9IGxpc3RbX2luZGV4XzBdCiAgICAgICAgICBsb2NhbCBrZXkKICAgICAgICAgIGlmIGtleV9mbiB0aGVuCiAgICAgICAgICAgIGtleSA9IGtleV9mbihpdGVtKQogICAgICAgICAgZWxzZQogICAgICAgICAgICBrZXkgPSBpdGVtCiAgICAgICAgICBlbmQKICAgICAgICAgIGlmIHNlZW5ba2V5XSB0aGVuCiAgICAgICAgICAgIF9jb250aW51ZV8wID0gdHJ1ZQogICAgICAgICAgICBicmVhawogICAgICAgICAgZW5kCiAgICAgICAgICBzZWVuW2tleV0gPSB0cnVlCiAgICAgICAgICBsb2NhbCBfdmFsdWVfMCA9IGl0ZW0KICAgICAgICAgIF9hY2N1bV8wW19sZW5fMF0gPSBfdmFsdWVfMAogICAgICAgICAgX2xlbl8wID0gX2xlbl8wICsgMQogICAgICAgICAgX2NvbnRpbnVlXzAgPSB0cnVlCiAgICAgICAgdW50aWwgdHJ1ZQogICAgICAgIGlmIG5vdCBfY29udGludWVfMCB0aGVuCiAgICAgICAgICBicmVhawogICAgICAgIGVuZAogICAgICBlbmQKICAgICAgcmV0dXJuIF9hY2N1bV8wCiAgICBlbmQpKCkKICBlbmQKICBsb2NhbCBwbHVyYWwKICBwbHVyYWwgPSBmdW5jdGlvbihjb3VudCwgd29yZCkKICAgIHJldHVybiB0b3N0cmluZyhjb3VudCkgLi4gIiAiIC4uIHRvc3RyaW5nKHdvcmQpIC4uIHRvc3RyaW5nKGNvdW50ID09IDEgYW5kICIiIG9yICJzIikKICBlbmQKICBsb2NhbCBXYXRjaGVyCiAgZG8KICAgIGxvY2FsIF9jbGFzc18wCiAgICBsb2NhbCBfYmFzZV8wID0gewogICAgICBzdGFydF9tc2cgPSAiU3RhcnRpbmcgd2F0Y2ggbG9vcCAoQ3RybC1DIHRvIGV4aXQpIiwKICAgICAgcHJpbnRfc3RhcnQgPSBmdW5jdGlvbihzZWxmLCBtb2RlLCBtaXNjKQogICAgICAgIHJldHVybiBpby5zdGRlcnI6d3JpdGUodG9zdHJpbmcoc2VsZi5zdGFydF9tc2cpIC4uICIgd2l0aCAiIC4uIHRvc3RyaW5nKG1vZGUpIC4uICIgWyIgLi4gdG9zdHJpbmcobWlzYykgLi4gIl1cbiIpCiAgICAgIGVuZAogICAgfQogICAgX2Jhc2VfMC5fX2luZGV4ID0gX2Jhc2VfMAogICAgX2NsYXNzXzAgPSBzZXRtZXRhdGFibGUoewogICAgICBfX2luaXQgPSBmdW5jdGlvbihzZWxmLCBmaWxlX2xpc3QpCiAgICAgICAgc2VsZi5maWxlX2xpc3QgPSBmaWxlX2xpc3QKICAgICAgZW5kLAogICAgICBfX2Jhc2UgPSBfYmFzZV8wLAogICAgICBfX25hbWUgPSAiV2F0Y2hlciIKICAgIH0sIHsKICAgICAgX19pbmRleCA9IF9iYXNlXzAsCiAgICAgIF9fY2FsbCA9IGZ1bmN0aW9uKGNscywgLi4uKQogICAgICAgIGxvY2FsIF9zZWxmXzAgPSBzZXRtZXRhdGFibGUoe30sIF9iYXNlXzApCiAgICAgICAgY2xzLl9faW5pdChfc2VsZl8wLCAuLi4pCiAgICAgICAgcmV0dXJuIF9zZWxmXzAKICAgICAgZW5kCiAgICB9KQogICAgX2Jhc2VfMC5fX2NsYXNzID0gX2NsYXNzXzAKICAgIFdhdGNoZXIgPSBfY2xhc3NfMAogIGVuZAogIGxvY2FsIElub3RpZnlXYWNoZXIKICBkbwogICAgbG9jYWwgX2NsYXNzXzAKICAgIGxvY2FsIF9wYXJlbnRfMCA9IFdhdGNoZXIKICAgIGxvY2FsIF9iYXNlXzAgPSB7CiAgICAgIGdldF9kaXJzID0gZnVuY3Rpb24oc2VsZikKICAgICAgICBsb2NhbCBwYXJzZV9kaXIKICAgICAgICBwYXJzZV9kaXIgPSByZXF1aXJlKCJtb29uc2NyaXB0LmNtZC5tb29uYyIpLnBhcnNlX2RpcgogICAgICAgIGxvY2FsIGRpcnMKICAgICAgICBkbwogICAgICAgICAgbG9jYWwgX2FjY3VtXzAgPSB7IH0KICAgICAgICAgIGxvY2FsIF9sZW5fMCA9IDEKICAgICAgICAgIGxvY2FsIF9saXN0XzAgPSBzZWxmLmZpbGVfbGlzdAogICAgICAgICAgZm9yIF9pbmRleF8wID0gMSwgI19saXN0XzAgZG8KICAgICAgICAgICAgbG9jYWwgX2Rlc18wID0gX2xpc3RfMFtfaW5kZXhfMF0KICAgICAgICAgICAgbG9jYWwgZmlsZV9wYXRoCiAgICAgICAgICAgIGZpbGVfcGF0aCA9IF9kZXNfMFsxXQogICAgICAgICAgICBsb2NhbCBkaXIgPSBwYXJzZV9kaXIoZmlsZV9wYXRoKQogICAgICAgICAgICBpZiBkaXIgPT0gIiIgdGhlbgogICAgICAgICAgICAgIGRpciA9ICIuLyIKICAgICAgICAgICAgZW5kCiAgICAgICAgICAgIGxvY2FsIF92YWx1ZV8wID0gZGlyCiAgICAgICAgICAgIF9hY2N1bV8wW19sZW5fMF0gPSBfdmFsdWVfMAogICAgICAgICAgICBfbGVuXzAgPSBfbGVuXzAgKyAxCiAgICAgICAgICBlbmQKICAgICAgICAgIGRpcnMgPSBfYWNjdW1fMAogICAgICAgIGVuZAogICAgICAgIHJldHVybiByZW1vdmVfZHVwZXMoZGlycykKICAgICAgZW5kLAogICAgICBlYWNoX3VwZGF0ZSA9IGZ1bmN0aW9uKHNlbGYpCiAgICAgICAgcmV0dXJuIGNvcm91dGluZS53cmFwKGZ1bmN0aW9uKCkKICAgICAgICAgIGxvY2FsIGRpcnMgPSBzZWxmOmdldF9kaXJzKCkKICAgICAgICAgIHNlbGY6cHJpbnRfc3RhcnQoImlub3RpZnkiLCBwbHVyYWwoI2RpcnMsICJkaXIiKSkKICAgICAgICAgIGxvY2FsIHdkX3RhYmxlID0geyB9CiAgICAgICAgICBsb2NhbCBpbm90aWZ5ID0gcmVxdWlyZSgiaW5vdGlmeSIpCiAgICAgICAgICBsb2NhbCBoYW5kbGUgPSBpbm90aWZ5LmluaXQoKQogICAgICAgICAgZm9yIF9pbmRleF8wID0gMSwgI2RpcnMgZG8KICAgICAgICAgICAgbG9jYWwgZGlyID0gZGlyc1tfaW5kZXhfMF0KICAgICAgICAgICAgbG9jYWwgd2QgPSBoYW5kbGU6YWRkd2F0Y2goZGlyLCBpbm90aWZ5LklOX0NMT1NFX1dSSVRFLCBpbm90aWZ5LklOX01PVkVEX1RPKQogICAgICAgICAgICB3ZF90YWJsZVt3ZF0gPSBkaXIKICAgICAgICAgIGVuZAogICAgICAgICAgd2hpbGUgdHJ1ZSBkbwogICAgICAgICAgICBsb2NhbCBldmVudHMgPSBoYW5kbGU6cmVhZCgpCiAgICAgICAgICAgIGlmIG5vdCAoZXZlbnRzKSB0aGVuCiAgICAgICAgICAgICAgYnJlYWsKICAgICAgICAgICAgZW5kCiAgICAgICAgICAgIGZvciBfaW5kZXhfMCA9IDEsICNldmVudHMgZG8KICAgICAgICAgICAgICBsb2NhbCBfY29udGludWVfMCA9IGZhbHNlCiAgICAgICAgICAgICAgcmVwZWF0CiAgICAgICAgICAgICAgICBsb2NhbCBldiA9IGV2ZW50c1tfaW5kZXhfMF0KICAgICAgICAgICAgICAgIGxvY2FsIGZuYW1lID0gZXYubmFtZQogICAgICAgICAgICAgICAgaWYgbm90IChmbmFtZTptYXRjaCgiJS5tb29uJCIpKSB0aGVuCiAgICAgICAgICAgICAgICAgIF9jb250aW51ZV8wID0gdHJ1ZQogICAgICAgICAgICAgICAgICBicmVhawogICAgICAgICAgICAgICAgZW5kCiAgICAgICAgICAgICAgICBsb2NhbCBkaXIgPSB3ZF90YWJsZVtldi53ZF0KICAgICAgICAgICAgICAgIGlmIGRpciB+PSAiLi8iIHRoZW4KICAgICAgICAgICAgICAgICAgZm5hbWUgPSBkaXIgLi4gZm5hbWUKICAgICAgICAgICAgICAgIGVuZAogICAgICAgICAgICAgICAgY29yb3V0aW5lLnlpZWxkKGZuYW1lKQogICAgICAgICAgICAgICAgX2NvbnRpbnVlXzAgPSB0cnVlCiAgICAgICAgICAgICAgdW50aWwgdHJ1ZQogICAgICAgICAgICAgIGlmIG5vdCBfY29udGludWVfMCB0aGVuCiAgICAgICAgICAgICAgICBicmVhawogICAgICAgICAgICAgIGVuZAogICAgICAgICAgICBlbmQKICAgICAgICAgIGVuZAogICAgICAgIGVuZCkKICAgICAgZW5kCiAgICB9CiAgICBfYmFzZV8wLl9faW5kZXggPSBfYmFzZV8wCiAgICBzZXRtZXRhdGFibGUoX2Jhc2VfMCwgX3BhcmVudF8wLl9fYmFzZSkKICAgIF9jbGFzc18wID0gc2V0bWV0YXRhYmxlKHsKICAgICAgX19pbml0ID0gZnVuY3Rpb24oc2VsZiwgLi4uKQogICAgICAgIHJldHVybiBfY2xhc3NfMC5fX3BhcmVudC5fX2luaXQoc2VsZiwgLi4uKQogICAgICBlbmQsCiAgICAgIF9fYmFzZSA9IF9iYXNlXzAsCiAgICAgIF9fbmFtZSA9ICJJbm90aWZ5V2FjaGVyIiwKICAgICAgX19wYXJlbnQgPSBfcGFyZW50XzAKICAgIH0sIHsKICAgICAgX19pbmRleCA9IGZ1bmN0aW9uKGNscywgbmFtZSkKICAgICAgICBsb2NhbCB2YWwgPSByYXdnZXQoX2Jhc2VfMCwgbmFtZSkKICAgICAgICBpZiB2YWwgPT0gbmlsIHRoZW4KICAgICAgICAgIGxvY2FsIHBhcmVudCA9IHJhd2dldChjbHMsICJfX3BhcmVudCIpCiAgICAgICAgICBpZiBwYXJlbnQgdGhlbgogICAgICAgICAgICByZXR1cm4gcGFyZW50W25hbWVdCiAgICAgICAgICBlbmQKICAgICAgICBlbHNlCiAgICAgICAgICByZXR1cm4gdmFsCiAgICAgICAgZW5kCiAgICAgIGVuZCwKICAgICAgX19jYWxsID0gZnVuY3Rpb24oY2xzLCAuLi4pCiAgICAgICAgbG9jYWwgX3NlbGZfMCA9IHNldG1ldGF0YWJsZSh7fSwgX2Jhc2VfMCkKICAgICAgICBjbHMuX19pbml0KF9zZWxmXzAsIC4uLikKICAgICAgICByZXR1cm4gX3NlbGZfMAogICAgICBlbmQKICAgIH0pCiAgICBfYmFzZV8wLl9fY2xhc3MgPSBfY2xhc3NfMAogICAgbG9jYWwgc2VsZiA9IF9jbGFzc18wCiAgICBzZWxmLmF2YWlsYWJsZSA9IGZ1bmN0aW9uKHNlbGYpCiAgICAgIHJldHVybiBwY2FsbChmdW5jdGlvbigpCiAgICAgICAgcmV0dXJuIHJlcXVpcmUoImlub3RpZnkiKQogICAgICBlbmQpCiAgICBlbmQKICAgIGlmIF9wYXJlbnRfMC5fX2luaGVyaXRlZCB0aGVuCiAgICAgIF9wYXJlbnRfMC5fX2luaGVyaXRlZChfcGFyZW50XzAsIF9jbGFzc18wKQogICAgZW5kCiAgICBJbm90aWZ5V2FjaGVyID0gX2NsYXNzXzAKICBlbmQKICBsb2NhbCBTbGVlcFdhdGNoZXIKICBkbwogICAgbG9jYWwgX2NsYXNzXzAKICAgIGxvY2FsIF9wYXJlbnRfMCA9IFdhdGNoZXIKICAgIGxvY2FsIF9iYXNlXzAgPSB7CiAgICAgIHBvbGxpbmdfcmF0ZSA9IDEuMCwKICAgICAgZ2V0X3NsZWVwX2Z1bmMgPSBmdW5jdGlvbihzZWxmKQogICAgICAgIGxvY2FsIHNsZWVwCiAgICAgICAgcGNhbGwoZnVuY3Rpb24oKQogICAgICAgICAgc2xlZXAgPSByZXF1aXJlKCJzb2NrZXQiKS5zbGVlcAogICAgICAgIGVuZCkKICAgICAgICBzbGVlcCA9IHNsZWVwIG9yIHJlcXVpcmUoIm1vb25zY3JpcHQiKS5fc2xlZXAKICAgICAgICBpZiBub3QgKHNsZWVwKSB0aGVuCiAgICAgICAgICBlcnJvcigiTWlzc2luZyBzbGVlcCBmdW5jdGlvbjsgaW5zdGFsbCBMdWFTb2NrZXQiKQogICAgICAgIGVuZAogICAgICAgIHJldHVybiBzbGVlcAogICAgICBlbmQsCiAgICAgIGVhY2hfdXBkYXRlID0gZnVuY3Rpb24oc2VsZikKICAgICAgICByZXR1cm4gY29yb3V0aW5lLndyYXAoZnVuY3Rpb24oKQogICAgICAgICAgbG9jYWwgbGZzID0gcmVxdWlyZSgibGZzIikKICAgICAgICAgIGxvY2FsIHNsZWVwID0gc2VsZjpnZXRfc2xlZXBfZnVuYygpCiAgICAgICAgICBzZWxmOnByaW50X3N0YXJ0KCJwb2xsaW5nIiwgcGx1cmFsKCNzZWxmLmZpbGVfbGlzdCwgImZpbGVzIikpCiAgICAgICAgICBsb2NhbCBtb2RfdGltZSA9IHsgfQogICAgICAgICAgd2hpbGUgdHJ1ZSBkbwogICAgICAgICAgICBsb2NhbCBfbGlzdF8wID0gc2VsZi5maWxlX2xpc3QKICAgICAgICAgICAgZm9yIF9pbmRleF8wID0gMSwgI19saXN0XzAgZG8KICAgICAgICAgICAgICBsb2NhbCBfY29udGludWVfMCA9IGZhbHNlCiAgICAgICAgICAgICAgcmVwZWF0CiAgICAgICAgICAgICAgICBsb2NhbCBfZGVzXzAgPSBfbGlzdF8wW19pbmRleF8wXQogICAgICAgICAgICAgICAgbG9jYWwgZmlsZQogICAgICAgICAgICAgICAgZmlsZSA9IF9kZXNfMFsxXQogICAgICAgICAgICAgICAgbG9jYWwgdGltZSA9IGxmcy5hdHRyaWJ1dGVzKGZpbGUsICJtb2RpZmljYXRpb24iKQogICAgICAgICAgICAgICAgcHJpbnQoZmlsZSwgdGltZSkKICAgICAgICAgICAgICAgIGlmIG5vdCAodGltZSkgdGhlbgogICAgICAgICAgICAgICAgICBtb2RfdGltZVtmaWxlXSA9IG5pbAogICAgICAgICAgICAgICAgICBfY29udGludWVfMCA9IHRydWUKICAgICAgICAgICAgICAgICAgYnJlYWsKICAgICAgICAgICAgICAgIGVuZAogICAgICAgICAgICAgICAgaWYgbm90IChtb2RfdGltZVtmaWxlXSkgdGhlbgogICAgICAgICAgICAgICAgICBtb2RfdGltZVtmaWxlXSA9IHRpbWUKICAgICAgICAgICAgICAgICAgX2NvbnRpbnVlXzAgPSB0cnVlCiAgICAgICAgICAgICAgICAgIGJyZWFrCiAgICAgICAgICAgICAgICBlbmQKICAgICAgICAgICAgICAgIGlmIHRpbWUgPiBtb2RfdGltZVtmaWxlXSB0aGVuCiAgICAgICAgICAgICAgICAgIG1vZF90aW1lW2ZpbGVdID0gdGltZQogICAgICAgICAgICAgICAgICBjb3JvdXRpbmUueWllbGQoZmlsZSkKICAgICAgICAgICAgICAgIGVuZAogICAgICAgICAgICAgICAgX2NvbnRpbnVlXzAgPSB0cnVlCiAgICAgICAgICAgICAgdW50aWwgdHJ1ZQogICAgICAgICAgICAgIGlmIG5vdCBfY29udGludWVfMCB0aGVuCiAgICAgICAgICAgICAgICBicmVhawogICAgICAgICAgICAgIGVuZAogICAgICAgICAgICBlbmQKICAgICAgICAgICAgc2xlZXAoc2VsZi5wb2xsaW5nX3JhdGUpCiAgICAgICAgICBlbmQKICAgICAgICBlbmQpCiAgICAgIGVuZAogICAgfQogICAgX2Jhc2VfMC5fX2luZGV4ID0gX2Jhc2VfMAogICAgc2V0bWV0YXRhYmxlKF9iYXNlXzAsIF9wYXJlbnRfMC5fX2Jhc2UpCiAgICBfY2xhc3NfMCA9IHNldG1ldGF0YWJsZSh7CiAgICAgIF9faW5pdCA9IGZ1bmN0aW9uKHNlbGYsIC4uLikKICAgICAgICByZXR1cm4gX2NsYXNzXzAuX19wYXJlbnQuX19pbml0KHNlbGYsIC4uLikKICAgICAgZW5kLAogICAgICBfX2Jhc2UgPSBfYmFzZV8wLAogICAgICBfX25hbWUgPSAiU2xlZXBXYXRjaGVyIiwKICAgICAgX19wYXJlbnQgPSBfcGFyZW50XzAKICAgIH0sIHsKICAgICAgX19pbmRleCA9IGZ1bmN0aW9uKGNscywgbmFtZSkKICAgICAgICBsb2NhbCB2YWwgPSByYXdnZXQoX2Jhc2VfMCwgbmFtZSkKICAgICAgICBpZiB2YWwgPT0gbmlsIHRoZW4KICAgICAgICAgIGxvY2FsIHBhcmVudCA9IHJhd2dldChjbHMsICJfX3BhcmVudCIpCiAgICAgICAgICBpZiBwYXJlbnQgdGhlbgogICAgICAgICAgICByZXR1cm4gcGFyZW50W25hbWVdCiAgICAgICAgICBlbmQKICAgICAgICBlbHNlCiAgICAgICAgICByZXR1cm4gdmFsCiAgICAgICAgZW5kCiAgICAgIGVuZCwKICAgICAgX19jYWxsID0gZnVuY3Rpb24oY2xzLCAuLi4pCiAgICAgICAgbG9jYWwgX3NlbGZfMCA9IHNldG1ldGF0YWJsZSh7fSwgX2Jhc2VfMCkKICAgICAgICBjbHMuX19pbml0KF9zZWxmXzAsIC4uLikKICAgICAgICByZXR1cm4gX3NlbGZfMAogICAgICBlbmQKICAgIH0pCiAgICBfYmFzZV8wLl9fY2xhc3MgPSBfY2xhc3NfMAogICAgaWYgX3BhcmVudF8wLl9faW5oZXJpdGVkIHRoZW4KICAgICAgX3BhcmVudF8wLl9faW5oZXJpdGVkKF9wYXJlbnRfMCwgX2NsYXNzXzApCiAgICBlbmQKICAgIFNsZWVwV2F0Y2hlciA9IF9jbGFzc18wCiAgZW5kCiAgcmV0dXJuIHsKICAgIFdhdGNoZXIgPSBXYXRjaGVyLAogICAgU2xlZXBXYXRjaGVyID0gU2xlZXBXYXRjaGVyLAogICAgSW5vdGlmeVdhY2hlciA9IElub3RpZnlXYWNoZXIKICB9CiAgCmVuZApwYWNrYWdlLnByZWxvYWRbJ21vb25zY3JpcHQuY21kLmNvdmVyYWdlJ10gPSBmdW5jdGlvbigpCiAgbG9jYWwgbG9nCiAgbG9nID0gZnVuY3Rpb24oc3RyKQogICAgaWYgc3RyID09IG5pbCB0aGVuCiAgICAgIHN0ciA9ICIiCiAgICBlbmQKICAgIHJldHVybiBpby5zdGRlcnI6d3JpdGUoc3RyIC4uICJcbiIpCiAgZW5kCiAgbG9jYWwgY3JlYXRlX2NvdW50ZXIKICBjcmVhdGVfY291bnRlciA9IGZ1bmN0aW9uKCkKICAgIHJldHVybiBzZXRtZXRhdGFibGUoeyB9LCB7CiAgICAgIF9faW5kZXggPSBmdW5jdGlvbihzZWxmLCBuYW1lKQogICAgICAgIGRvCiAgICAgICAgICBsb2NhbCB0YmwgPSBzZXRtZXRhdGFibGUoeyB9LCB7CiAgICAgICAgICAgIF9faW5kZXggPSBmdW5jdGlvbihzZWxmKQogICAgICAgICAgICAgIHJldHVybiAwCiAgICAgICAgICAgIGVuZAogICAgICAgICAgfSkKICAgICAgICAgIHNlbGZbbmFtZV0gPSB0YmwKICAgICAgICAgIHJldHVybiB0YmwKICAgICAgICBlbmQKICAgICAgZW5kCiAgICB9KQogIGVuZAogIGxvY2FsIHBvc2l0aW9uX3RvX2xpbmVzCiAgcG9zaXRpb25fdG9fbGluZXMgPSBmdW5jdGlvbihmaWxlX2NvbnRlbnQsIHBvc2l0aW9ucykKICAgIGxvY2FsIGxpbmVzID0geyB9CiAgICBsb2NhbCBjdXJyZW50X3BvcyA9IDAKICAgIGxvY2FsIGxpbmVfbm8gPSAxCiAgICBmb3IgY2hhciBpbiBmaWxlX2NvbnRlbnQ6Z21hdGNoKCIuIikgZG8KICAgICAgZG8KICAgICAgICBsb2NhbCBjb3VudCA9IHJhd2dldChwb3NpdGlvbnMsIGN1cnJlbnRfcG9zKQogICAgICAgIGlmIGNvdW50IHRoZW4KICAgICAgICAgIGxpbmVzW2xpbmVfbm9dID0gY291bnQKICAgICAgICBlbmQKICAgICAgZW5kCiAgICAgIGlmIGNoYXIgPT0gIlxuIiB0aGVuCiAgICAgICAgbGluZV9ubyA9IGxpbmVfbm8gKyAxCiAgICAgIGVuZAogICAgICBjdXJyZW50X3BvcyA9IGN1cnJlbnRfcG9zICsgMQogICAgZW5kCiAgICByZXR1cm4gbGluZXMKICBlbmQKICBsb2NhbCBmb3JtYXRfZmlsZQogIGZvcm1hdF9maWxlID0gZnVuY3Rpb24oZm5hbWUsIHBvc2l0aW9ucykKICAgIGZuYW1lID0gZm5hbWU6Z3N1YigiXkAiLCAiIikKICAgIGxvY2FsIGZpbGUgPSBhc3NlcnQoaW8ub3BlbihmbmFtZSkpCiAgICBsb2NhbCBjb250ZW50ID0gZmlsZTpyZWFkKCIqYSIpCiAgICBmaWxlOmNsb3NlKCkKICAgIGxvY2FsIGxpbmVzID0gcG9zaXRpb25fdG9fbGluZXMoY29udGVudCwgcG9zaXRpb25zKQogICAgbG9nKCItLS0tLS18IEAiIC4uIHRvc3RyaW5nKGZuYW1lKSkKICAgIGxvY2FsIGxpbmVfbm8gPSAxCiAgICBmb3IgbGluZSBpbiAoY29udGVudCAuLiAiXG4iKTpnbWF0Y2goIiguLSlcbiIpIGRvCiAgICAgIGxvY2FsIGZvcmFtdHRlZF9ubyA9ICgiJSA1ZCIpOmZvcm1hdChsaW5lX25vKQogICAgICBsb2NhbCBzeW0gPSBsaW5lc1tsaW5lX25vXSBhbmQgIioiIG9yICIgIgogICAgICBsb2codG9zdHJpbmcoc3ltKSAuLiB0b3N0cmluZyhmb3JhbXR0ZWRfbm8pIC4uICJ8ICIgLi4gdG9zdHJpbmcobGluZSkpCiAgICAgIGxpbmVfbm8gPSBsaW5lX25vICsgMQogICAgZW5kCiAgICByZXR1cm4gbG9nKCkKICBlbmQKICBsb2NhbCBDb2RlQ292ZXJhZ2UKICBkbwogICAgbG9jYWwgX2NsYXNzXzAKICAgIGxvY2FsIF9iYXNlXzAgPSB7CiAgICAgIHJlc2V0ID0gZnVuY3Rpb24oc2VsZikKICAgICAgICBzZWxmLmxpbmVfY291bnRzID0gY3JlYXRlX2NvdW50ZXIoKQogICAgICBlbmQsCiAgICAgIHN0YXJ0ID0gZnVuY3Rpb24oc2VsZikKICAgICAgICByZXR1cm4gZGVidWcuc2V0aG9vaygoZnVuY3Rpb24oKQogICAgICAgICAgbG9jYWwgX2Jhc2VfMSA9IHNlbGYKICAgICAgICAgIGxvY2FsIF9mbl8wID0gX2Jhc2VfMS5wcm9jZXNzX2xpbmUKICAgICAgICAgIHJldHVybiBmdW5jdGlvbiguLi4pCiAgICAgICAgICAgIHJldHVybiBfZm5fMChfYmFzZV8xLCAuLi4pCiAgICAgICAgICBlbmQKICAgICAgICBlbmQpKCksICJsIikKICAgICAgZW5kLAogICAgICBzdG9wID0gZnVuY3Rpb24oc2VsZikKICAgICAgICByZXR1cm4gZGVidWcuc2V0aG9vaygpCiAgICAgIGVuZCwKICAgICAgcHJpbnRfcmVzdWx0cyA9IGZ1bmN0aW9uKHNlbGYpCiAgICAgICAgcmV0dXJuIHNlbGY6Zm9ybWF0X3Jlc3VsdHMoKQogICAgICBlbmQsCiAgICAgIHByb2Nlc3NfbGluZSA9IGZ1bmN0aW9uKHNlbGYsIF8sIGxpbmVfbm8pCiAgICAgICAgbG9jYWwgZGVidWdfZGF0YSA9IGRlYnVnLmdldGluZm8oMiwgIlMiKQogICAgICAgIGxvY2FsIHNvdXJjZSA9IGRlYnVnX2RhdGEuc291cmNlCiAgICAgICAgc2VsZi5saW5lX2NvdW50c1tzb3VyY2VdW2xpbmVfbm9dID0gc2VsZi5saW5lX2NvdW50c1tzb3VyY2VdW2xpbmVfbm9dICsgMQogICAgICBlbmQsCiAgICAgIGZvcm1hdF9yZXN1bHRzID0gZnVuY3Rpb24oc2VsZikKICAgICAgICBsb2NhbCBsaW5lX3RhYmxlID0gcmVxdWlyZSgibW9vbnNjcmlwdC5saW5lX3RhYmxlcyIpCiAgICAgICAgbG9jYWwgcG9zaXRpb25zID0gY3JlYXRlX2NvdW50ZXIoKQogICAgICAgIGZvciBmaWxlLCBsaW5lcyBpbiBwYWlycyhzZWxmLmxpbmVfY291bnRzKSBkbwogICAgICAgICAgbG9jYWwgX2NvbnRpbnVlXzAgPSBmYWxzZQogICAgICAgICAgcmVwZWF0CiAgICAgICAgICAgIGxvY2FsIGZpbGVfdGFibGUgPSBsaW5lX3RhYmxlW2ZpbGVdCiAgICAgICAgICAgIGlmIG5vdCAoZmlsZV90YWJsZSkgdGhlbgogICAgICAgICAgICAgIF9jb250aW51ZV8wID0gdHJ1ZQogICAgICAgICAgICAgIGJyZWFrCiAgICAgICAgICAgIGVuZAogICAgICAgICAgICBmb3IgbGluZSwgY291bnQgaW4gcGFpcnMobGluZXMpIGRvCiAgICAgICAgICAgICAgbG9jYWwgX2NvbnRpbnVlXzEgPSBmYWxzZQogICAgICAgICAgICAgIHJlcGVhdAogICAgICAgICAgICAgICAgbG9jYWwgcG9zaXRpb24gPSBmaWxlX3RhYmxlW2xpbmVdCiAgICAgICAgICAgICAgICBpZiBub3QgKHBvc2l0aW9uKSB0aGVuCiAgICAgICAgICAgICAgICAgIF9jb250aW51ZV8xID0gdHJ1ZQogICAgICAgICAgICAgICAgICBicmVhawogICAgICAgICAgICAgICAgZW5kCiAgICAgICAgICAgICAgICBwb3NpdGlvbnNbZmlsZV1bcG9zaXRpb25dID0gcG9zaXRpb25zW2ZpbGVdW3Bvc2l0aW9uXSArIGNvdW50CiAgICAgICAgICAgICAgICBfY29udGludWVfMSA9IHRydWUKICAgICAgICAgICAgICB1bnRpbCB0cnVlCiAgICAgICAgICAgICAgaWYgbm90IF9jb250aW51ZV8xIHRoZW4KICAgICAgICAgICAgICAgIGJyZWFrCiAgICAgICAgICAgICAgZW5kCiAgICAgICAgICAgIGVuZAogICAgICAgICAgICBfY29udGludWVfMCA9IHRydWUKICAgICAgICAgIHVudGlsIHRydWUKICAgICAgICAgIGlmIG5vdCBfY29udGludWVfMCB0aGVuCiAgICAgICAgICAgIGJyZWFrCiAgICAgICAgICBlbmQKICAgICAgICBlbmQKICAgICAgICBmb3IgZmlsZSwgcHMgaW4gcGFpcnMocG9zaXRpb25zKSBkbwogICAgICAgICAgZm9ybWF0X2ZpbGUoZmlsZSwgcHMpCiAgICAgICAgZW5kCiAgICAgIGVuZAogICAgfQogICAgX2Jhc2VfMC5fX2luZGV4ID0gX2Jhc2VfMAogICAgX2NsYXNzXzAgPSBzZXRtZXRhdGFibGUoewogICAgICBfX2luaXQgPSBmdW5jdGlvbihzZWxmKQogICAgICAgIHJldHVybiBzZWxmOnJlc2V0KCkKICAgICAgZW5kLAogICAgICBfX2Jhc2UgPSBfYmFzZV8wLAogICAgICBfX25hbWUgPSAiQ29kZUNvdmVyYWdlIgogICAgfSwgewogICAgICBfX2luZGV4ID0gX2Jhc2VfMCwKICAgICAgX19jYWxsID0gZnVuY3Rpb24oY2xzLCAuLi4pCiAgICAgICAgbG9jYWwgX3NlbGZfMCA9IHNldG1ldGF0YWJsZSh7fSwgX2Jhc2VfMCkKICAgICAgICBjbHMuX19pbml0KF9zZWxmXzAsIC4uLikKICAgICAgICByZXR1cm4gX3NlbGZfMAogICAgICBlbmQKICAgIH0pCiAgICBfYmFzZV8wLl9fY2xhc3MgPSBfY2xhc3NfMAogICAgQ29kZUNvdmVyYWdlID0gX2NsYXNzXzAKICBlbmQKICByZXR1cm4gewogICAgQ29kZUNvdmVyYWdlID0gQ29kZUNvdmVyYWdlCiAgfQogIAplbmQKcGFja2FnZS5wcmVsb2FkWydtb29uc2NyaXB0LmNtZC5saW50J10gPSBmdW5jdGlvbigpCiAgbG9jYWwgaW5zZXJ0CiAgaW5zZXJ0ID0gdGFibGUuaW5zZXJ0CiAgbG9jYWwgU2V0CiAgU2V0ID0gcmVxdWlyZSgibW9vbnNjcmlwdC5kYXRhIikuU2V0CiAgbG9jYWwgQmxvY2sKICBCbG9jayA9IHJlcXVpcmUoIm1vb25zY3JpcHQuY29tcGlsZSIpLkJsb2NrCiAgbG9jYWwgbXR5cGUKICBtdHlwZSA9IHJlcXVpcmUoIm1vb25zY3JpcHQudXRpbCIpLm1vb24udHlwZQogIGxvY2FsIGRlZmF1bHRfd2hpdGVsaXN0ID0gU2V0KHsKICAgICdfRycsCiAgICAnX1ZFUlNJT04nLAogICAgJ2Fzc2VydCcsCiAgICAnYml0MzInLAogICAgJ2NvbGxlY3RnYXJiYWdlJywKICAgICdjb3JvdXRpbmUnLAogICAgJ2RlYnVnJywKICAgICdkb2ZpbGUnLAogICAgJ2Vycm9yJywKICAgICdnZXRmZW52JywKICAgICdnZXRtZXRhdGFibGUnLAogICAgJ2lvJywKICAgICdpcGFpcnMnLAogICAgJ2xvYWQnLAogICAgJ2xvYWRmaWxlJywKICAgICdsb2Fkc3RyaW5nJywKICAgICdtYXRoJywKICAgICdtb2R1bGUnLAogICAgJ25leHQnLAogICAgJ29zJywKICAgICdwYWNrYWdlJywKICAgICdwYWlycycsCiAgICAncGNhbGwnLAogICAgJ3ByaW50JywKICAgICdyYXdlcXVhbCcsCiAgICAncmF3Z2V0JywKICAgICdyYXdsZW4nLAogICAgJ3Jhd3NldCcsCiAgICAncmVxdWlyZScsCiAgICAnc2VsZWN0JywKICAgICdzZXRmZW52JywKICAgICdzZXRtZXRhdGFibGUnLAogICAgJ3N0cmluZycsCiAgICAndGFibGUnLAogICAgJ3RvbnVtYmVyJywKICAgICd0b3N0cmluZycsCiAgICAndHlwZScsCiAgICAndW5wYWNrJywKICAgICd4cGNhbGwnLAogICAgIm5pbCIsCiAgICAidHJ1ZSIsCiAgICAiZmFsc2UiCiAgfSkKICBsb2NhbCBMaW50ZXJCbG9jawogIGRvCiAgICBsb2NhbCBfY2xhc3NfMAogICAgbG9jYWwgX3BhcmVudF8wID0gQmxvY2sKICAgIGxvY2FsIF9iYXNlXzAgPSB7CiAgICAgIGxpbnRfbWFya191c2VkID0gZnVuY3Rpb24oc2VsZiwgbmFtZSkKICAgICAgICBpZiBzZWxmLmxpbnRfdW51c2VkX25hbWVzIGFuZCBzZWxmLmxpbnRfdW51c2VkX25hbWVzW25hbWVdIHRoZW4KICAgICAgICAgIHNlbGYubGludF91bnVzZWRfbmFtZXNbbmFtZV0gPSBmYWxzZQogICAgICAgICAgcmV0dXJuIAogICAgICAgIGVuZAogICAgICAgIGlmIHNlbGYucGFyZW50IHRoZW4KICAgICAgICAgIHJldHVybiBzZWxmLnBhcmVudDpsaW50X21hcmtfdXNlZChuYW1lKQogICAgICAgIGVuZAogICAgICBlbmQsCiAgICAgIGxpbnRfY2hlY2tfdW51c2VkID0gZnVuY3Rpb24oc2VsZikKICAgICAgICBpZiBub3QgKHNlbGYubGludF91bnVzZWRfbmFtZXMgYW5kIG5leHQoc2VsZi5saW50X3VudXNlZF9uYW1lcykpIHRoZW4KICAgICAgICAgIHJldHVybiAKICAgICAgICBlbmQKICAgICAgICBsb2NhbCBuYW1lc19ieV9wb3NpdGlvbiA9IHsgfQogICAgICAgIGZvciBuYW1lLCBwb3MgaW4gcGFpcnMoc2VsZi5saW50X3VudXNlZF9uYW1lcykgZG8KICAgICAgICAgIGxvY2FsIF9jb250aW51ZV8wID0gZmFsc2UKICAgICAgICAgIHJlcGVhdAogICAgICAgICAgICBpZiBub3QgKHBvcykgdGhlbgogICAgICAgICAgICAgIF9jb250aW51ZV8wID0gdHJ1ZQogICAgICAgICAgICAgIGJyZWFrCiAgICAgICAgICAgIGVuZAogICAgICAgICAgICBuYW1lc19ieV9wb3NpdGlvbltwb3NdID0gbmFtZXNfYnlfcG9zaXRpb25bcG9zXSBvciB7IH0KICAgICAgICAgICAgaW5zZXJ0KG5hbWVzX2J5X3Bvc2l0aW9uW3Bvc10sIG5hbWUpCiAgICAgICAgICAgIF9jb250aW51ZV8wID0gdHJ1ZQogICAgICAgICAgdW50aWwgdHJ1ZQogICAgICAgICAgaWYgbm90IF9jb250aW51ZV8wIHRoZW4KICAgICAgICAgICAgYnJlYWsKICAgICAgICAgIGVuZAogICAgICAgIGVuZAogICAgICAgIGxvY2FsIHR1cGxlcwogICAgICAgIGRvCiAgICAgICAgICBsb2NhbCBfYWNjdW1fMCA9IHsgfQogICAgICAgICAgbG9jYWwgX2xlbl8wID0gMQogICAgICAgICAgZm9yIHBvcywgbmFtZXMgaW4gcGFpcnMobmFtZXNfYnlfcG9zaXRpb24pIGRvCiAgICAgICAgICAgIF9hY2N1bV8wW19sZW5fMF0gPSB7CiAgICAgICAgICAgICAgcG9zLAogICAgICAgICAgICAgIG5hbWVzCiAgICAgICAgICAgIH0KICAgICAgICAgICAgX2xlbl8wID0gX2xlbl8wICsgMQogICAgICAgICAgZW5kCiAgICAgICAgICB0dXBsZXMgPSBfYWNjdW1fMAogICAgICAgIGVuZAogICAgICAgIHRhYmxlLnNvcnQodHVwbGVzLCBmdW5jdGlvbihhLCBiKQogICAgICAgICAgcmV0dXJuIGFbMV0gPCBiWzFdCiAgICAgICAgZW5kKQogICAgICAgIGZvciBfaW5kZXhfMCA9IDEsICN0dXBsZXMgZG8KICAgICAgICAgIGxvY2FsIF9kZXNfMCA9IHR1cGxlc1tfaW5kZXhfMF0KICAgICAgICAgIGxvY2FsIHBvcywgbmFtZXMKICAgICAgICAgIHBvcywgbmFtZXMgPSBfZGVzXzBbMV0sIF9kZXNfMFsyXQogICAgICAgICAgaW5zZXJ0KHNlbGY6Z2V0X3Jvb3RfYmxvY2soKS5saW50X2Vycm9ycywgewogICAgICAgICAgICAiYXNzaWduZWQgYnV0IHVudXNlZCAiIC4uIHRvc3RyaW5nKHRhYmxlLmNvbmNhdCgoZnVuY3Rpb24oKQogICAgICAgICAgICAgIGxvY2FsIF9hY2N1bV8wID0geyB9CiAgICAgICAgICAgICAgbG9jYWwgX2xlbl8wID0gMQogICAgICAgICAgICAgIGZvciBfaW5kZXhfMSA9IDEsICNuYW1lcyBkbwogICAgICAgICAgICAgICAgbG9jYWwgbiA9IG5hbWVzW19pbmRleF8xXQogICAgICAgICAgICAgICAgX2FjY3VtXzBbX2xlbl8wXSA9ICJgIiAuLiB0b3N0cmluZyhuKSAuLiAiYCIKICAgICAgICAgICAgICAgIF9sZW5fMCA9IF9sZW5fMCArIDEKICAgICAgICAgICAgICBlbmQKICAgICAgICAgICAgICByZXR1cm4gX2FjY3VtXzAKICAgICAgICAgICAgZW5kKSgpLCAiLCAiKSksCiAgICAgICAgICAgIHBvcwogICAgICAgICAgfSkKICAgICAgICBlbmQKICAgICAgZW5kLAogICAgICByZW5kZXIgPSBmdW5jdGlvbihzZWxmLCAuLi4pCiAgICAgICAgc2VsZjpsaW50X2NoZWNrX3VudXNlZCgpCiAgICAgICAgcmV0dXJuIF9jbGFzc18wLl9fcGFyZW50Ll9fYmFzZS5yZW5kZXIoc2VsZiwgLi4uKQogICAgICBlbmQsCiAgICAgIGJsb2NrID0gZnVuY3Rpb24oc2VsZiwgLi4uKQogICAgICAgIGRvCiAgICAgICAgICBsb2NhbCBfd2l0aF8wID0gX2NsYXNzXzAuX19wYXJlbnQuX19iYXNlLmJsb2NrKHNlbGYsIC4uLikKICAgICAgICAgIF93aXRoXzAuYmxvY2sgPSBzZWxmLmJsb2NrCiAgICAgICAgICBfd2l0aF8wLnJlbmRlciA9IHNlbGYucmVuZGVyCiAgICAgICAgICBfd2l0aF8wLmdldF9yb290X2Jsb2NrID0gc2VsZi5nZXRfcm9vdF9ibG9jawogICAgICAgICAgX3dpdGhfMC5saW50X2NoZWNrX3VudXNlZCA9IHNlbGYubGludF9jaGVja191bnVzZWQKICAgICAgICAgIF93aXRoXzAubGludF9tYXJrX3VzZWQgPSBzZWxmLmxpbnRfbWFya191c2VkCiAgICAgICAgICBfd2l0aF8wLnZhbHVlX2NvbXBpbGVycyA9IHNlbGYudmFsdWVfY29tcGlsZXJzCiAgICAgICAgICBfd2l0aF8wLnN0YXRlbWVudF9jb21waWxlcnMgPSBzZWxmLnN0YXRlbWVudF9jb21waWxlcnMKICAgICAgICAgIHJldHVybiBfd2l0aF8wCiAgICAgICAgZW5kCiAgICAgIGVuZAogICAgfQogICAgX2Jhc2VfMC5fX2luZGV4ID0gX2Jhc2VfMAogICAgc2V0bWV0YXRhYmxlKF9iYXNlXzAsIF9wYXJlbnRfMC5fX2Jhc2UpCiAgICBfY2xhc3NfMCA9IHNldG1ldGF0YWJsZSh7CiAgICAgIF9faW5pdCA9IGZ1bmN0aW9uKHNlbGYsIHdoaXRlbGlzdF9nbG9iYWxzLCAuLi4pCiAgICAgICAgaWYgd2hpdGVsaXN0X2dsb2JhbHMgPT0gbmlsIHRoZW4KICAgICAgICAgIHdoaXRlbGlzdF9nbG9iYWxzID0gZGVmYXVsdF93aGl0ZWxpc3QKICAgICAgICBlbmQKICAgICAgICBfY2xhc3NfMC5fX3BhcmVudC5fX2luaXQoc2VsZiwgLi4uKQogICAgICAgIHNlbGYuZ2V0X3Jvb3RfYmxvY2sgPSBmdW5jdGlvbigpCiAgICAgICAgICByZXR1cm4gc2VsZgogICAgICAgIGVuZAogICAgICAgIHNlbGYubGludF9lcnJvcnMgPSB7IH0KICAgICAgICBsb2NhbCB2YyA9IHNlbGYudmFsdWVfY29tcGlsZXJzCiAgICAgICAgc2VsZi52YWx1ZV9jb21waWxlcnMgPSBzZXRtZXRhdGFibGUoewogICAgICAgICAgcmVmID0gZnVuY3Rpb24oYmxvY2ssIHZhbCkKICAgICAgICAgICAgbG9jYWwgbmFtZSA9IHZhbFsyXQogICAgICAgICAgICBpZiBub3QgKGJsb2NrOmhhc19uYW1lKG5hbWUpIG9yIHdoaXRlbGlzdF9nbG9iYWxzW25hbWVdIG9yIG5hbWU6bWF0Y2goIiUuIikpIHRoZW4KICAgICAgICAgICAgICBpbnNlcnQoc2VsZi5saW50X2Vycm9ycywgewogICAgICAgICAgICAgICAgImFjY2Vzc2luZyBnbG9iYWwgYCIgLi4gdG9zdHJpbmcobmFtZSkgLi4gImAiLAogICAgICAgICAgICAgICAgdmFsWy0xXQogICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIGVuZAogICAgICAgICAgICBibG9jazpsaW50X21hcmtfdXNlZChuYW1lKQogICAgICAgICAgICByZXR1cm4gdmMucmVmKGJsb2NrLCB2YWwpCiAgICAgICAgICBlbmQKICAgICAgICB9LCB7CiAgICAgICAgICBfX2luZGV4ID0gdmMKICAgICAgICB9KQogICAgICAgIGxvY2FsIHNjID0gc2VsZi5zdGF0ZW1lbnRfY29tcGlsZXJzCiAgICAgICAgc2VsZi5zdGF0ZW1lbnRfY29tcGlsZXJzID0gc2V0bWV0YXRhYmxlKHsKICAgICAgICAgIGFzc2lnbiA9IGZ1bmN0aW9uKGJsb2NrLCBub2RlKQogICAgICAgICAgICBsb2NhbCBuYW1lcyA9IG5vZGVbMl0KICAgICAgICAgICAgZm9yIF9pbmRleF8wID0gMSwgI25hbWVzIGRvCiAgICAgICAgICAgICAgbG9jYWwgX2NvbnRpbnVlXzAgPSBmYWxzZQogICAgICAgICAgICAgIHJlcGVhdAogICAgICAgICAgICAgICAgbG9jYWwgbmFtZSA9IG5hbWVzW19pbmRleF8wXQogICAgICAgICAgICAgICAgaWYgdHlwZShuYW1lKSA9PSAidGFibGUiIGFuZCBuYW1lWzFdID09ICJ0ZW1wX25hbWUiIHRoZW4KICAgICAgICAgICAgICAgICAgX2NvbnRpbnVlXzAgPSB0cnVlCiAgICAgICAgICAgICAgICAgIGJyZWFrCiAgICAgICAgICAgICAgICBlbmQKICAgICAgICAgICAgICAgIGxvY2FsIHJlYWxfbmFtZSwgaXNfbG9jYWwgPSBibG9jazpleHRyYWN0X2Fzc2lnbl9uYW1lKG5hbWUpCiAgICAgICAgICAgICAgICBpZiBub3QgKGlzX2xvY2FsIG9yIHJlYWxfbmFtZSBhbmQgbm90IGJsb2NrOmhhc19uYW1lKHJlYWxfbmFtZSwgdHJ1ZSkpIHRoZW4KICAgICAgICAgICAgICAgICAgX2NvbnRpbnVlXzAgPSB0cnVlCiAgICAgICAgICAgICAgICAgIGJyZWFrCiAgICAgICAgICAgICAgICBlbmQKICAgICAgICAgICAgICAgIGlmIHJlYWxfbmFtZSA9PSAiXyIgdGhlbgogICAgICAgICAgICAgICAgICBfY29udGludWVfMCA9IHRydWUKICAgICAgICAgICAgICAgICAgYnJlYWsKICAgICAgICAgICAgICAgIGVuZAogICAgICAgICAgICAgICAgYmxvY2subGludF91bnVzZWRfbmFtZXMgPSBibG9jay5saW50X3VudXNlZF9uYW1lcyBvciB7IH0KICAgICAgICAgICAgICAgIGJsb2NrLmxpbnRfdW51c2VkX25hbWVzW3JlYWxfbmFtZV0gPSBub2RlWy0xXSBvciAwCiAgICAgICAgICAgICAgICBfY29udGludWVfMCA9IHRydWUKICAgICAgICAgICAgICB1bnRpbCB0cnVlCiAgICAgICAgICAgICAgaWYgbm90IF9jb250aW51ZV8wIHRoZW4KICAgICAgICAgICAgICAgIGJyZWFrCiAgICAgICAgICAgICAgZW5kCiAgICAgICAgICAgIGVuZAogICAgICAgICAgICByZXR1cm4gc2MuYXNzaWduKGJsb2NrLCBub2RlKQogICAgICAgICAgZW5kCiAgICAgICAgfSwgewogICAgICAgICAgX19pbmRleCA9IHNjCiAgICAgICAgfSkKICAgICAgZW5kLAogICAgICBfX2Jhc2UgPSBfYmFzZV8wLAogICAgICBfX25hbWUgPSAiTGludGVyQmxvY2siLAogICAgICBfX3BhcmVudCA9IF9wYXJlbnRfMAogICAgfSwgewogICAgICBfX2luZGV4ID0gZnVuY3Rpb24oY2xzLCBuYW1lKQogICAgICAgIGxvY2FsIHZhbCA9IHJhd2dldChfYmFzZV8wLCBuYW1lKQogICAgICAgIGlmIHZhbCA9PSBuaWwgdGhlbgogICAgICAgICAgbG9jYWwgcGFyZW50ID0gcmF3Z2V0KGNscywgIl9fcGFyZW50IikKICAgICAgICAgIGlmIHBhcmVudCB0aGVuCiAgICAgICAgICAgIHJldHVybiBwYXJlbnRbbmFtZV0KICAgICAgICAgIGVuZAogICAgICAgIGVsc2UKICAgICAgICAgIHJldHVybiB2YWwKICAgICAgICBlbmQKICAgICAgZW5kLAogICAgICBfX2NhbGwgPSBmdW5jdGlvbihjbHMsIC4uLikKICAgICAgICBsb2NhbCBfc2VsZl8wID0gc2V0bWV0YXRhYmxlKHt9LCBfYmFzZV8wKQogICAgICAgIGNscy5fX2luaXQoX3NlbGZfMCwgLi4uKQogICAgICAgIHJldHVybiBfc2VsZl8wCiAgICAgIGVuZAogICAgfSkKICAgIF9iYXNlXzAuX19jbGFzcyA9IF9jbGFzc18wCiAgICBpZiBfcGFyZW50XzAuX19pbmhlcml0ZWQgdGhlbgogICAgICBfcGFyZW50XzAuX19pbmhlcml0ZWQoX3BhcmVudF8wLCBfY2xhc3NfMCkKICAgIGVuZAogICAgTGludGVyQmxvY2sgPSBfY2xhc3NfMAogIGVuZAogIGxvY2FsIGZvcm1hdF9saW50CiAgZm9ybWF0X2xpbnQgPSBmdW5jdGlvbihlcnJvcnMsIGNvZGUsIGhlYWRlcikKICAgIGlmIG5vdCAobmV4dChlcnJvcnMpKSB0aGVuCiAgICAgIHJldHVybiAKICAgIGVuZAogICAgbG9jYWwgcG9zX3RvX2xpbmUsIGdldF9saW5lCiAgICBkbwogICAgICBsb2NhbCBfb2JqXzAgPSByZXF1aXJlKCJtb29uc2NyaXB0LnV0aWwiKQogICAgICBwb3NfdG9fbGluZSwgZ2V0X2xpbmUgPSBfb2JqXzAucG9zX3RvX2xpbmUsIF9vYmpfMC5nZXRfbGluZQogICAgZW5kCiAgICBsb2NhbCBmb3JtYXR0ZWQKICAgIGRvCiAgICAgIGxvY2FsIF9hY2N1bV8wID0geyB9CiAgICAgIGxvY2FsIF9sZW5fMCA9IDEKICAgICAgZm9yIF9pbmRleF8wID0gMSwgI2Vycm9ycyBkbwogICAgICAgIGxvY2FsIF9kZXNfMCA9IGVycm9yc1tfaW5kZXhfMF0KICAgICAgICBsb2NhbCBtc2csIHBvcwogICAgICAgIG1zZywgcG9zID0gX2Rlc18wWzFdLCBfZGVzXzBbMl0KICAgICAgICBpZiBwb3MgdGhlbgogICAgICAgICAgbG9jYWwgbGluZSA9IHBvc190b19saW5lKGNvZGUsIHBvcykKICAgICAgICAgIG1zZyA9ICJsaW5lICIgLi4gdG9zdHJpbmcobGluZSkgLi4gIjogIiAuLiB0b3N0cmluZyhtc2cpCiAgICAgICAgICBsb2NhbCBsaW5lX3RleHQgPSAiPiAiIC4uIGdldF9saW5lKGNvZGUsIGxpbmUpCiAgICAgICAgICBsb2NhbCBzZXBfbGVuID0gbWF0aC5tYXgoI21zZywgI2xpbmVfdGV4dCkKICAgICAgICAgIF9hY2N1bV8wW19sZW5fMF0gPSB0YWJsZS5jb25jYXQoewogICAgICAgICAgICBtc2csCiAgICAgICAgICAgICgiPSIpOnJlcChzZXBfbGVuKSwKICAgICAgICAgICAgbGluZV90ZXh0CiAgICAgICAgICB9LCAiXG4iKQogICAgICAgIGVsc2UKICAgICAgICAgIF9hY2N1bV8wW19sZW5fMF0gPSBtc2cKICAgICAgICBlbmQKICAgICAgICBfbGVuXzAgPSBfbGVuXzAgKyAxCiAgICAgIGVuZAogICAgICBmb3JtYXR0ZWQgPSBfYWNjdW1fMAogICAgZW5kCiAgICBpZiBoZWFkZXIgdGhlbgogICAgICB0YWJsZS5pbnNlcnQoZm9ybWF0dGVkLCAxLCBoZWFkZXIpCiAgICBlbmQKICAgIHJldHVybiB0YWJsZS5jb25jYXQoZm9ybWF0dGVkLCAiXG5cbiIpCiAgZW5kCiAgbG9jYWwgd2hpdGVsaXN0X2Zvcl9maWxlCiAgZG8KICAgIGxvY2FsIGxpbnRfY29uZmlnCiAgICB3aGl0ZWxpc3RfZm9yX2ZpbGUgPSBmdW5jdGlvbihmbmFtZSkKICAgICAgaWYgbm90IChsaW50X2NvbmZpZykgdGhlbgogICAgICAgIGxpbnRfY29uZmlnID0geyB9CiAgICAgICAgcGNhbGwoZnVuY3Rpb24oKQogICAgICAgICAgbGludF9jb25maWcgPSByZXF1aXJlKCJsaW50X2NvbmZpZyIpCiAgICAgICAgZW5kKQogICAgICBlbmQKICAgICAgaWYgbm90IChsaW50X2NvbmZpZy53aGl0ZWxpc3RfZ2xvYmFscykgdGhlbgogICAgICAgIHJldHVybiBkZWZhdWx0X3doaXRlbGlzdAogICAgICBlbmQKICAgICAgbG9jYWwgZmluYWxfbGlzdCA9IHsgfQogICAgICBmb3IgcGF0dGVybiwgbGlzdCBpbiBwYWlycyhsaW50X2NvbmZpZy53aGl0ZWxpc3RfZ2xvYmFscykgZG8KICAgICAgICBpZiBmbmFtZTptYXRjaChwYXR0ZXJuKSB0aGVuCiAgICAgICAgICBmb3IgX2luZGV4XzAgPSAxLCAjbGlzdCBkbwogICAgICAgICAgICBsb2NhbCBpdGVtID0gbGlzdFtfaW5kZXhfMF0KICAgICAgICAgICAgaW5zZXJ0KGZpbmFsX2xpc3QsIGl0ZW0pCiAgICAgICAgICBlbmQKICAgICAgICBlbmQKICAgICAgZW5kCiAgICAgIHJldHVybiBzZXRtZXRhdGFibGUoU2V0KGZpbmFsX2xpc3QpLCB7CiAgICAgICAgX19pbmRleCA9IGRlZmF1bHRfd2hpdGVsaXN0CiAgICAgIH0pCiAgICBlbmQKICBlbmQKICBsb2NhbCBsaW50X2NvZGUKICBsaW50X2NvZGUgPSBmdW5jdGlvbihjb2RlLCBuYW1lLCB3aGl0ZWxpc3RfZ2xvYmFscykKICAgIGlmIG5hbWUgPT0gbmlsIHRoZW4KICAgICAgbmFtZSA9ICJzdHJpbmcgaW5wdXQiCiAgICBlbmQKICAgIGxvY2FsIHBhcnNlID0gcmVxdWlyZSgibW9vbnNjcmlwdC5wYXJzZSIpCiAgICBsb2NhbCB0cmVlLCBlcnIgPSBwYXJzZS5zdHJpbmcoY29kZSkKICAgIGlmIG5vdCAodHJlZSkgdGhlbgogICAgICByZXR1cm4gbmlsLCBlcnIKICAgIGVuZAogICAgbG9jYWwgc2NvcGUgPSBMaW50ZXJCbG9jayh3aGl0ZWxpc3RfZ2xvYmFscykKICAgIHNjb3BlOnN0bXModHJlZSkKICAgIHNjb3BlOmxpbnRfY2hlY2tfdW51c2VkKCkKICAgIHJldHVybiBmb3JtYXRfbGludChzY29wZS5saW50X2Vycm9ycywgY29kZSwgbmFtZSkKICBlbmQKICBsb2NhbCBsaW50X2ZpbGUKICBsaW50X2ZpbGUgPSBmdW5jdGlvbihmbmFtZSkKICAgIGxvY2FsIGYsIGVyciA9IGlvLm9wZW4oZm5hbWUpCiAgICBpZiBub3QgKGYpIHRoZW4KICAgICAgcmV0dXJuIG5pbCwgZXJyCiAgICBlbmQKICAgIHJldHVybiBsaW50X2NvZGUoZjpyZWFkKCIqYSIpLCBmbmFtZSwgd2hpdGVsaXN0X2Zvcl9maWxlKGZuYW1lKSkKICBlbmQKICByZXR1cm4gewogICAgbGludF9jb2RlID0gbGludF9jb2RlLAogICAgbGludF9maWxlID0gbGludF9maWxlCiAgfQogIAplbmQKcGFja2FnZS5wcmVsb2FkWydtb29uc2NyaXB0LnRyYW5zZm9ybSddID0gZnVuY3Rpb24oKQogIHJldHVybiB7CiAgICBTdGF0ZW1lbnQgPSByZXF1aXJlKCJtb29uc2NyaXB0LnRyYW5zZm9ybS5zdGF0ZW1lbnQiKSwKICAgIFZhbHVlID0gcmVxdWlyZSgibW9vbnNjcmlwdC50cmFuc2Zvcm0udmFsdWUiKQogIH0KICAKZW5kCnBhY2thZ2UucHJlbG9hZFsnbW9vbnNjcmlwdC5saW5lX3RhYmxlcyddID0gZnVuY3Rpb24oKQogIHJldHVybiB7IH0KICAKZW5kCnBhY2thZ2UucHJlbG9hZFsnbW9vbnNjcmlwdC5kYXRhJ10gPSBmdW5jdGlvbigpCiAgbG9jYWwgY29uY2F0LCByZW1vdmUsIGluc2VydAogIGRvCiAgICBsb2NhbCBfb2JqXzAgPSB0YWJsZQogICAgY29uY2F0LCByZW1vdmUsIGluc2VydCA9IF9vYmpfMC5jb25jYXQsIF9vYmpfMC5yZW1vdmUsIF9vYmpfMC5pbnNlcnQKICBlbmQKICBsb2NhbCBTZXQKICBTZXQgPSBmdW5jdGlvbihpdGVtcykKICAgIGxvY2FsIF90YmxfMCA9IHsgfQogICAgZm9yIF9pbmRleF8wID0gMSwgI2l0ZW1zIGRvCiAgICAgIGxvY2FsIGsgPSBpdGVtc1tfaW5kZXhfMF0KICAgICAgX3RibF8wW2tdID0gdHJ1ZQogICAgZW5kCiAgICByZXR1cm4gX3RibF8wCiAgZW5kCiAgbG9jYWwgU3RhY2sKICBkbwogICAgbG9jYWwgX2NsYXNzXzAKICAgIGxvY2FsIF9iYXNlXzAgPSB7CiAgICAgIF9fdG9zdHJpbmcgPSBmdW5jdGlvbihzZWxmKQogICAgICAgIHJldHVybiAiPFN0YWNrIHsiIC4uIGNvbmNhdChzZWxmLCAiLCAiKSAuLiAifT4iCiAgICAgIGVuZCwKICAgICAgcG9wID0gZnVuY3Rpb24oc2VsZikKICAgICAgICByZXR1cm4gcmVtb3ZlKHNlbGYpCiAgICAgIGVuZCwKICAgICAgcHVzaCA9IGZ1bmN0aW9uKHNlbGYsIHZhbHVlLCAuLi4pCiAgICAgICAgaW5zZXJ0KHNlbGYsIHZhbHVlKQogICAgICAgIGlmIC4uLiB0aGVuCiAgICAgICAgICByZXR1cm4gc2VsZjpwdXNoKC4uLikKICAgICAgICBlbHNlCiAgICAgICAgICByZXR1cm4gdmFsdWUKICAgICAgICBlbmQKICAgICAgZW5kLAogICAgICB0b3AgPSBmdW5jdGlvbihzZWxmKQogICAgICAgIHJldHVybiBzZWxmWyNzZWxmXQogICAgICBlbmQKICAgIH0KICAgIF9iYXNlXzAuX19pbmRleCA9IF9iYXNlXzAKICAgIF9jbGFzc18wID0gc2V0bWV0YXRhYmxlKHsKICAgICAgX19pbml0ID0gZnVuY3Rpb24oc2VsZiwgLi4uKQogICAgICAgIHNlbGY6cHVzaCguLi4pCiAgICAgICAgcmV0dXJuIG5pbAogICAgICBlbmQsCiAgICAgIF9fYmFzZSA9IF9iYXNlXzAsCiAgICAgIF9fbmFtZSA9ICJTdGFjayIKICAgIH0sIHsKICAgICAgX19pbmRleCA9IF9iYXNlXzAsCiAgICAgIF9fY2FsbCA9IGZ1bmN0aW9uKGNscywgLi4uKQogICAgICAgIGxvY2FsIF9zZWxmXzAgPSBzZXRtZXRhdGFibGUoe30sIF9iYXNlXzApCiAgICAgICAgY2xzLl9faW5pdChfc2VsZl8wLCAuLi4pCiAgICAgICAgcmV0dXJuIF9zZWxmXzAKICAgICAgZW5kCiAgICB9KQogICAgX2Jhc2VfMC5fX2NsYXNzID0gX2NsYXNzXzAKICAgIFN0YWNrID0gX2NsYXNzXzAKICBlbmQKICBsb2NhbCBsdWFfa2V5d29yZHMgPSBTZXQoewogICAgJ2FuZCcsCiAgICAnYnJlYWsnLAogICAgJ2RvJywKICAgICdlbHNlJywKICAgICdlbHNlaWYnLAogICAgJ2VuZCcsCiAgICAnZmFsc2UnLAogICAgJ2ZvcicsCiAgICAnZnVuY3Rpb24nLAogICAgJ2lmJywKICAgICdpbicsCiAgICAnbG9jYWwnLAogICAgJ25pbCcsCiAgICAnbm90JywKICAgICdvcicsCiAgICAncmVwZWF0JywKICAgICdyZXR1cm4nLAogICAgJ3RoZW4nLAogICAgJ3RydWUnLAogICAgJ3VudGlsJywKICAgICd3aGlsZScKICB9KQogIHJldHVybiB7CiAgICBTZXQgPSBTZXQsCiAgICBTdGFjayA9IFN0YWNrLAogICAgbHVhX2tleXdvcmRzID0gbHVhX2tleXdvcmRzCiAgfQogIAplbmQKcGFja2FnZS5wcmVsb2FkWydtb29uc2NyaXB0LnV0aWwnXSA9IGZ1bmN0aW9uKCkKICBsb2NhbCBjb25jYXQKICBjb25jYXQgPSB0YWJsZS5jb25jYXQKICBsb2NhbCB1bnBhY2sgPSB1bnBhY2sgb3IgdGFibGUudW5wYWNrCiAgbG9jYWwgdHlwZSA9IHR5cGUKICBsb2NhbCBtb29uID0gewogICAgaXNfb2JqZWN0ID0gZnVuY3Rpb24odmFsdWUpCiAgICAgIHJldHVybiB0eXBlKHZhbHVlKSA9PSAidGFibGUiIGFuZCB2YWx1ZS5fX2NsYXNzCiAgICBlbmQsCiAgICBpc19hID0gZnVuY3Rpb24odGhpbmcsIHQpCiAgICAgIGlmIG5vdCAodHlwZSh0aGluZykgPT0gInRhYmxlIikgdGhlbgogICAgICAgIHJldHVybiBmYWxzZQogICAgICBlbmQKICAgICAgbG9jYWwgY2xzID0gdGhpbmcuX19jbGFzcwogICAgICB3aGlsZSBjbHMgZG8KICAgICAgICBpZiBjbHMgPT0gdCB0aGVuCiAgICAgICAgICByZXR1cm4gdHJ1ZQogICAgICAgIGVuZAogICAgICAgIGNscyA9IGNscy5fX3BhcmVudAogICAgICBlbmQKICAgICAgcmV0dXJuIGZhbHNlCiAgICBlbmQsCiAgICB0eXBlID0gZnVuY3Rpb24odmFsdWUpCiAgICAgIGxvY2FsIGJhc2VfdHlwZSA9IHR5cGUodmFsdWUpCiAgICAgIGlmIGJhc2VfdHlwZSA9PSAidGFibGUiIHRoZW4KICAgICAgICBsb2NhbCBjbHMgPSB2YWx1ZS5fX2NsYXNzCiAgICAgICAgaWYgY2xzIHRoZW4KICAgICAgICAgIHJldHVybiBjbHMKICAgICAgICBlbmQKICAgICAgZW5kCiAgICAgIHJldHVybiBiYXNlX3R5cGUKICAgIGVuZAogIH0KICBsb2NhbCBwb3NfdG9fbGluZQogIHBvc190b19saW5lID0gZnVuY3Rpb24oc3RyLCBwb3MpCiAgICBsb2NhbCBsaW5lID0gMQogICAgZm9yIF8gaW4gc3RyOnN1YigxLCBwb3MpOmdtYXRjaCgiXG4iKSBkbwogICAgICBsaW5lID0gbGluZSArIDEKICAgIGVuZAogICAgcmV0dXJuIGxpbmUKICBlbmQKICBsb2NhbCB0cmltCiAgdHJpbSA9IGZ1bmN0aW9uKHN0cikKICAgIHJldHVybiBzdHI6bWF0Y2goIl4lcyooLi0pJXMqJCIpCiAgZW5kCiAgbG9jYWwgZ2V0X2xpbmUKICBnZXRfbGluZSA9IGZ1bmN0aW9uKHN0ciwgbGluZV9udW0pCiAgICBmb3IgbGluZSBpbiBzdHI6Z21hdGNoKCIoW15cbl0qKVxuPyIpIGRvCiAgICAgIGlmIGxpbmVfbnVtID09IDEgdGhlbgogICAgICAgIHJldHVybiBsaW5lCiAgICAgIGVuZAogICAgICBsaW5lX251bSA9IGxpbmVfbnVtIC0gMQogICAgZW5kCiAgZW5kCiAgbG9jYWwgZ2V0X2Nsb3Nlc3RfbGluZQogIGdldF9jbG9zZXN0X2xpbmUgPSBmdW5jdGlvbihzdHIsIGxpbmVfbnVtKQogICAgbG9jYWwgbGluZSA9IGdldF9saW5lKHN0ciwgbGluZV9udW0pCiAgICBpZiAobm90IGxpbmUgb3IgdHJpbShsaW5lKSA9PSAiIikgYW5kIGxpbmVfbnVtID4gMSB0aGVuCiAgICAgIHJldHVybiBnZXRfY2xvc2VzdF9saW5lKHN0ciwgbGluZV9udW0gLSAxKQogICAgZWxzZQogICAgICByZXR1cm4gbGluZSwgbGluZV9udW0KICAgIGVuZAogIGVuZAogIGxvY2FsIHNwbGl0CiAgc3BsaXQgPSBmdW5jdGlvbihzdHIsIGRlbGltKQogICAgaWYgc3RyID09ICIiIHRoZW4KICAgICAgcmV0dXJuIHsgfQogICAgZW5kCiAgICBzdHIgPSBzdHIgLi4gZGVsaW0KICAgIGxvY2FsIF9hY2N1bV8wID0geyB9CiAgICBsb2NhbCBfbGVuXzAgPSAxCiAgICBmb3IgbSBpbiBzdHI6Z21hdGNoKCIoLi0pIiAuLiBkZWxpbSkgZG8KICAgICAgX2FjY3VtXzBbX2xlbl8wXSA9IG0KICAgICAgX2xlbl8wID0gX2xlbl8wICsgMQogICAgZW5kCiAgICByZXR1cm4gX2FjY3VtXzAKICBlbmQKICBsb2NhbCBkdW1wCiAgZHVtcCA9IGZ1bmN0aW9uKHdoYXQpCiAgICBsb2NhbCBzZWVuID0geyB9CiAgICBsb2NhbCBfZHVtcAogICAgX2R1bXAgPSBmdW5jdGlvbih3aGF0LCBkZXB0aCkKICAgICAgaWYgZGVwdGggPT0gbmlsIHRoZW4KICAgICAgICBkZXB0aCA9IDAKICAgICAgZW5kCiAgICAgIGxvY2FsIHQgPSB0eXBlKHdoYXQpCiAgICAgIGlmIHQgPT0gInN0cmluZyIgdGhlbgogICAgICAgIHJldHVybiAnIicgLi4gd2hhdCAuLiAnIlxuJwogICAgICBlbHNlaWYgdCA9PSAidGFibGUiIHRoZW4KICAgICAgICBpZiBzZWVuW3doYXRdIHRoZW4KICAgICAgICAgIHJldHVybiAicmVjdXJzaW9uKCIgLi4gdG9zdHJpbmcod2hhdCkgLi4gIikuLi5cbiIKICAgICAgICBlbmQKICAgICAgICBzZWVuW3doYXRdID0gdHJ1ZQogICAgICAgIGRlcHRoID0gZGVwdGggKyAxCiAgICAgICAgbG9jYWwgbGluZXMKICAgICAgICBkbwogICAgICAgICAgbG9jYWwgX2FjY3VtXzAgPSB7IH0KICAgICAgICAgIGxvY2FsIF9sZW5fMCA9IDEKICAgICAgICAgIGZvciBrLCB2IGluIHBhaXJzKHdoYXQpIGRvCiAgICAgICAgICAgIF9hY2N1bV8wW19sZW5fMF0gPSAoIiAiKTpyZXAoZGVwdGggKiA0KSAuLiAiWyIgLi4gdG9zdHJpbmcoaykgLi4gIl0gPSAiIC4uIF9kdW1wKHYsIGRlcHRoKQogICAgICAgICAgICBfbGVuXzAgPSBfbGVuXzAgKyAxCiAgICAgICAgICBlbmQKICAgICAgICAgIGxpbmVzID0gX2FjY3VtXzAKICAgICAgICBlbmQKICAgICAgICBzZWVuW3doYXRdID0gZmFsc2UKICAgICAgICByZXR1cm4gIntcbiIgLi4gY29uY2F0KGxpbmVzKSAuLiAoIiAiKTpyZXAoKGRlcHRoIC0gMSkgKiA0KSAuLiAifVxuIgogICAgICBlbHNlCiAgICAgICAgcmV0dXJuIHRvc3RyaW5nKHdoYXQpIC4uICJcbiIKICAgICAgZW5kCiAgICBlbmQKICAgIHJldHVybiBfZHVtcCh3aGF0KQogIGVuZAogIGxvY2FsIGRlYnVnX3Bvc21hcAogIGRlYnVnX3Bvc21hcCA9IGZ1bmN0aW9uKHBvc21hcCwgbW9vbl9jb2RlLCBsdWFfY29kZSkKICAgIGxvY2FsIHR1cGxlcwogICAgZG8KICAgICAgbG9jYWwgX2FjY3VtXzAgPSB7IH0KICAgICAgbG9jYWwgX2xlbl8wID0gMQogICAgICBmb3IgaywgdiBpbiBwYWlycyhwb3NtYXApIGRvCiAgICAgICAgX2FjY3VtXzBbX2xlbl8wXSA9IHsKICAgICAgICAgIGssCiAgICAgICAgICB2CiAgICAgICAgfQogICAgICAgIF9sZW5fMCA9IF9sZW5fMCArIDEKICAgICAgZW5kCiAgICAgIHR1cGxlcyA9IF9hY2N1bV8wCiAgICBlbmQKICAgIHRhYmxlLnNvcnQodHVwbGVzLCBmdW5jdGlvbihhLCBiKQogICAgICByZXR1cm4gYVsxXSA8IGJbMV0KICAgIGVuZCkKICAgIGxvY2FsIGxpbmVzCiAgICBkbwogICAgICBsb2NhbCBfYWNjdW1fMCA9IHsgfQogICAgICBsb2NhbCBfbGVuXzAgPSAxCiAgICAgIGZvciBfaW5kZXhfMCA9IDEsICN0dXBsZXMgZG8KICAgICAgICBsb2NhbCBwYWlyID0gdHVwbGVzW19pbmRleF8wXQogICAgICAgIGxvY2FsIGx1YV9saW5lLCBwb3MgPSB1bnBhY2socGFpcikKICAgICAgICBsb2NhbCBtb29uX2xpbmUgPSBwb3NfdG9fbGluZShtb29uX2NvZGUsIHBvcykKICAgICAgICBsb2NhbCBsdWFfdGV4dCA9IGdldF9saW5lKGx1YV9jb2RlLCBsdWFfbGluZSkKICAgICAgICBsb2NhbCBtb29uX3RleHQgPSBnZXRfY2xvc2VzdF9saW5lKG1vb25fY29kZSwgbW9vbl9saW5lKQogICAgICAgIGxvY2FsIF92YWx1ZV8wID0gdG9zdHJpbmcocG9zKSAuLiAiXHQgIiAuLiB0b3N0cmluZyhsdWFfbGluZSkgLi4gIjpbICIgLi4gdG9zdHJpbmcodHJpbShsdWFfdGV4dCkpIC4uICIgXSA+PiAiIC4uIHRvc3RyaW5nKG1vb25fbGluZSkgLi4gIjpbICIgLi4gdG9zdHJpbmcodHJpbShtb29uX3RleHQpKSAuLiAiIF0iCiAgICAgICAgX2FjY3VtXzBbX2xlbl8wXSA9IF92YWx1ZV8wCiAgICAgICAgX2xlbl8wID0gX2xlbl8wICsgMQogICAgICBlbmQKICAgICAgbGluZXMgPSBfYWNjdW1fMAogICAgZW5kCiAgICByZXR1cm4gY29uY2F0KGxpbmVzLCAiXG4iKQogIGVuZAogIGxvY2FsIHNldGZlbnYgPSBzZXRmZW52IG9yIGZ1bmN0aW9uKGZuLCBlbnYpCiAgICBsb2NhbCBuYW1lCiAgICBsb2NhbCBpID0gMQogICAgd2hpbGUgdHJ1ZSBkbwogICAgICBuYW1lID0gZGVidWcuZ2V0dXB2YWx1ZShmbiwgaSkKICAgICAgaWYgbm90IG5hbWUgb3IgbmFtZSA9PSAiX0VOViIgdGhlbgogICAgICAgIGJyZWFrCiAgICAgIGVuZAogICAgICBpID0gaSArIDEKICAgIGVuZAogICAgaWYgbmFtZSB0aGVuCiAgICAgIGRlYnVnLnVwdmFsdWVqb2luKGZuLCBpLCAoZnVuY3Rpb24oKQogICAgICAgIHJldHVybiBlbnYKICAgICAgZW5kKSwgMSkKICAgIGVuZAogICAgcmV0dXJuIGZuCiAgZW5kCiAgbG9jYWwgZ2V0ZmVudiA9IGdldGZlbnYgb3IgZnVuY3Rpb24oZm4pCiAgICBsb2NhbCBpID0gMQogICAgd2hpbGUgdHJ1ZSBkbwogICAgICBsb2NhbCBuYW1lLCB2YWwgPSBkZWJ1Zy5nZXR1cHZhbHVlKGZuLCBpKQogICAgICBpZiBub3QgKG5hbWUpIHRoZW4KICAgICAgICBicmVhawogICAgICBlbmQKICAgICAgaWYgbmFtZSA9PSAiX0VOViIgdGhlbgogICAgICAgIHJldHVybiB2YWwKICAgICAgZW5kCiAgICAgIGkgPSBpICsgMQogICAgZW5kCiAgICByZXR1cm4gbmlsCiAgZW5kCiAgbG9jYWwgZ2V0X29wdGlvbnMKICBnZXRfb3B0aW9ucyA9IGZ1bmN0aW9uKC4uLikKICAgIGxvY2FsIGNvdW50ID0gc2VsZWN0KCIjIiwgLi4uKQogICAgbG9jYWwgb3B0cyA9IHNlbGVjdChjb3VudCwgLi4uKQogICAgaWYgdHlwZShvcHRzKSA9PSAidGFibGUiIHRoZW4KICAgICAgcmV0dXJuIG9wdHMsIHVucGFjayh7CiAgICAgICAgLi4uCiAgICAgIH0sIG5pbCwgY291bnQgLSAxKQogICAgZWxzZQogICAgICByZXR1cm4geyB9LCAuLi4KICAgIGVuZAogIGVuZAogIGxvY2FsIHNhZmVfbW9kdWxlCiAgc2FmZV9tb2R1bGUgPSBmdW5jdGlvbihuYW1lLCB0YmwpCiAgICByZXR1cm4gc2V0bWV0YXRhYmxlKHRibCwgewogICAgICBfX2luZGV4ID0gZnVuY3Rpb24oc2VsZiwga2V5KQogICAgICAgIHJldHVybiBlcnJvcigiQXR0ZW1wdGVkIHRvIGltcG9ydCBub24tZXhpc3RlbnQgYCIgLi4gdG9zdHJpbmcoa2V5KSAuLiAiYCBmcm9tICIgLi4gdG9zdHJpbmcobmFtZSkpCiAgICAgIGVuZAogICAgfSkKICBlbmQKICByZXR1cm4gewogICAgbW9vbiA9IG1vb24sCiAgICBwb3NfdG9fbGluZSA9IHBvc190b19saW5lLAogICAgZ2V0X2Nsb3Nlc3RfbGluZSA9IGdldF9jbG9zZXN0X2xpbmUsCiAgICBnZXRfbGluZSA9IGdldF9saW5lLAogICAgdHJpbSA9IHRyaW0sCiAgICBzcGxpdCA9IHNwbGl0LAogICAgZHVtcCA9IGR1bXAsCiAgICBkZWJ1Z19wb3NtYXAgPSBkZWJ1Z19wb3NtYXAsCiAgICBnZXRmZW52ID0gZ2V0ZmVudiwKICAgIHNldGZlbnYgPSBzZXRmZW52LAogICAgZ2V0X29wdGlvbnMgPSBnZXRfb3B0aW9ucywKICAgIHVucGFjayA9IHVucGFjaywKICAgIHNhZmVfbW9kdWxlID0gc2FmZV9tb2R1bGUKICB9CiAgCmVuZApwYWNrYWdlLnByZWxvYWRbJ21vb25zY3JpcHQuY29tcGlsZS5zdGF0ZW1lbnQnXSA9IGZ1bmN0aW9uKCkKICBsb2NhbCBudHlwZQogIG50eXBlID0gcmVxdWlyZSgibW9vbnNjcmlwdC50eXBlcyIpLm50eXBlCiAgbG9jYWwgY29uY2F0LCBpbnNlcnQKICBkbwogICAgbG9jYWwgX29ial8wID0gdGFibGUKICAgIGNvbmNhdCwgaW5zZXJ0ID0gX29ial8wLmNvbmNhdCwgX29ial8wLmluc2VydAogIGVuZAogIGxvY2FsIHVucGFjawogIHVucGFjayA9IHJlcXVpcmUoIm1vb25zY3JpcHQudXRpbCIpLnVucGFjawogIHJldHVybiB7CiAgICByYXcgPSBmdW5jdGlvbihzZWxmLCBub2RlKQogICAgICByZXR1cm4gc2VsZjphZGQobm9kZVsyXSkKICAgIGVuZCwKICAgIGxpbmVzID0gZnVuY3Rpb24oc2VsZiwgbm9kZSkKICAgICAgbG9jYWwgX2xpc3RfMCA9IG5vZGVbMl0KICAgICAgZm9yIF9pbmRleF8wID0gMSwgI19saXN0XzAgZG8KICAgICAgICBsb2NhbCBsaW5lID0gX2xpc3RfMFtfaW5kZXhfMF0KICAgICAgICBzZWxmOmFkZChsaW5lKQogICAgICBlbmQKICAgIGVuZCwKICAgIGRlY2xhcmUgPSBmdW5jdGlvbihzZWxmLCBub2RlKQogICAgICBsb2NhbCBuYW1lcyA9IG5vZGVbMl0KICAgICAgbG9jYWwgdW5kZWNsYXJlZCA9IHNlbGY6ZGVjbGFyZShuYW1lcykKICAgICAgaWYgI3VuZGVjbGFyZWQgPiAwIHRoZW4KICAgICAgICBkbwogICAgICAgICAgbG9jYWwgX3dpdGhfMCA9IHNlbGY6bGluZSgibG9jYWwgIikKICAgICAgICAgIF93aXRoXzA6YXBwZW5kX2xpc3QoKGZ1bmN0aW9uKCkKICAgICAgICAgICAgbG9jYWwgX2FjY3VtXzAgPSB7IH0KICAgICAgICAgICAgbG9jYWwgX2xlbl8wID0gMQogICAgICAgICAgICBmb3IgX2luZGV4XzAgPSAxLCAjdW5kZWNsYXJlZCBkbwogICAgICAgICAgICAgIGxvY2FsIG5hbWUgPSB1bmRlY2xhcmVkW19pbmRleF8wXQogICAgICAgICAgICAgIF9hY2N1bV8wW19sZW5fMF0gPSBzZWxmOm5hbWUobmFtZSkKICAgICAgICAgICAgICBfbGVuXzAgPSBfbGVuXzAgKyAxCiAgICAgICAgICAgIGVuZAogICAgICAgICAgICByZXR1cm4gX2FjY3VtXzAKICAgICAgICAgIGVuZCkoKSwgIiwgIikKICAgICAgICAgIHJldHVybiBfd2l0aF8wCiAgICAgICAgZW5kCiAgICAgIGVuZAogICAgZW5kLAogICAgZGVjbGFyZV93aXRoX3NoYWRvd3MgPSBmdW5jdGlvbihzZWxmLCBub2RlKQogICAgICBsb2NhbCBuYW1lcyA9IG5vZGVbMl0KICAgICAgc2VsZjpkZWNsYXJlKG5hbWVzKQogICAgICBkbwogICAgICAgIGxvY2FsIF93aXRoXzAgPSBzZWxmOmxpbmUoImxvY2FsICIpCiAgICAgICAgX3dpdGhfMDphcHBlbmRfbGlzdCgoZnVuY3Rpb24oKQogICAgICAgICAgbG9jYWwgX2FjY3VtXzAgPSB7IH0KICAgICAgICAgIGxvY2FsIF9sZW5fMCA9IDEKICAgICAgICAgIGZvciBfaW5kZXhfMCA9IDEsICNuYW1lcyBkbwogICAgICAgICAgICBsb2NhbCBuYW1lID0gbmFtZXNbX2luZGV4XzBdCiAgICAgICAgICAgIF9hY2N1bV8wW19sZW5fMF0gPSBzZWxmOm5hbWUobmFtZSkKICAgICAgICAgICAgX2xlbl8wID0gX2xlbl8wICsgMQogICAgICAgICAgZW5kCiAgICAgICAgICByZXR1cm4gX2FjY3VtXzAKICAgICAgICBlbmQpKCksICIsICIpCiAgICAgICAgcmV0dXJuIF93aXRoXzAKICAgICAgZW5kCiAgICBlbmQsCiAgICBhc3NpZ24gPSBmdW5jdGlvbihzZWxmLCBub2RlKQogICAgICBsb2NhbCBuYW1lcywgdmFsdWVzID0gdW5wYWNrKG5vZGUsIDIpCiAgICAgIGxvY2FsIHVuZGVjbGFyZWQgPSBzZWxmOmRlY2xhcmUobmFtZXMpCiAgICAgIGxvY2FsIGRlY2xhcmUgPSAibG9jYWwgIiAuLiBjb25jYXQodW5kZWNsYXJlZCwgIiwgIikKICAgICAgbG9jYWwgaGFzX2ZuZGVmID0gZmFsc2UKICAgICAgbG9jYWwgaSA9IDEKICAgICAgd2hpbGUgaSA8PSAjdmFsdWVzIGRvCiAgICAgICAgaWYgbnR5cGUodmFsdWVzW2ldKSA9PSAiZm5kZWYiIHRoZW4KICAgICAgICAgIGhhc19mbmRlZiA9IHRydWUKICAgICAgICBlbmQKICAgICAgICBpID0gaSArIDEKICAgICAgZW5kCiAgICAgIGRvCiAgICAgICAgbG9jYWwgX3dpdGhfMCA9IHNlbGY6bGluZSgpCiAgICAgICAgaWYgI3VuZGVjbGFyZWQgPT0gI25hbWVzIGFuZCBub3QgaGFzX2ZuZGVmIHRoZW4KICAgICAgICAgIF93aXRoXzA6YXBwZW5kKGRlY2xhcmUpCiAgICAgICAgZWxzZQogICAgICAgICAgaWYgI3VuZGVjbGFyZWQgPiAwIHRoZW4KICAgICAgICAgICAgc2VsZjphZGQoZGVjbGFyZSwgbm9kZVstMV0pCiAgICAgICAgICBlbmQKICAgICAgICAgIF93aXRoXzA6YXBwZW5kX2xpc3QoKGZ1bmN0aW9uKCkKICAgICAgICAgICAgbG9jYWwgX2FjY3VtXzAgPSB7IH0KICAgICAgICAgICAgbG9jYWwgX2xlbl8wID0gMQogICAgICAgICAgICBmb3IgX2luZGV4XzAgPSAxLCAjbmFtZXMgZG8KICAgICAgICAgICAgICBsb2NhbCBuYW1lID0gbmFtZXNbX2luZGV4XzBdCiAgICAgICAgICAgICAgX2FjY3VtXzBbX2xlbl8wXSA9IHNlbGY6dmFsdWUobmFtZSkKICAgICAgICAgICAgICBfbGVuXzAgPSBfbGVuXzAgKyAxCiAgICAgICAgICAgIGVuZAogICAgICAgICAgICByZXR1cm4gX2FjY3VtXzAKICAgICAgICAgIGVuZCkoKSwgIiwgIikKICAgICAgICBlbmQKICAgICAgICBfd2l0aF8wOmFwcGVuZCgiID0gIikKICAgICAgICBfd2l0aF8wOmFwcGVuZF9saXN0KChmdW5jdGlvbigpCiAgICAgICAgICBsb2NhbCBfYWNjdW1fMCA9IHsgfQogICAgICAgICAgbG9jYWwgX2xlbl8wID0gMQogICAgICAgICAgZm9yIF9pbmRleF8wID0gMSwgI3ZhbHVlcyBkbwogICAgICAgICAgICBsb2NhbCB2ID0gdmFsdWVzW19pbmRleF8wXQogICAgICAgICAgICBfYWNjdW1fMFtfbGVuXzBdID0gc2VsZjp2YWx1ZSh2KQogICAgICAgICAgICBfbGVuXzAgPSBfbGVuXzAgKyAxCiAgICAgICAgICBlbmQKICAgICAgICAgIHJldHVybiBfYWNjdW1fMAogICAgICAgIGVuZCkoKSwgIiwgIikKICAgICAgICByZXR1cm4gX3dpdGhfMAogICAgICBlbmQKICAgIGVuZCwKICAgIFsicmV0dXJuIl0gPSBmdW5jdGlvbihzZWxmLCBub2RlKQogICAgICByZXR1cm4gc2VsZjpsaW5lKCJyZXR1cm4gIiwgKGZ1bmN0aW9uKCkKICAgICAgICBpZiBub2RlWzJdIH49ICIiIHRoZW4KICAgICAgICAgIHJldHVybiBzZWxmOnZhbHVlKG5vZGVbMl0pCiAgICAgICAgZW5kCiAgICAgIGVuZCkoKSkKICAgIGVuZCwKICAgIFsiYnJlYWsiXSA9IGZ1bmN0aW9uKHNlbGYsIG5vZGUpCiAgICAgIHJldHVybiAiYnJlYWsiCiAgICBlbmQsCiAgICBbImlmIl0gPSBmdW5jdGlvbihzZWxmLCBub2RlKQogICAgICBsb2NhbCBjb25kLCBibG9jayA9IG5vZGVbMl0sIG5vZGVbM10KICAgICAgbG9jYWwgcm9vdAogICAgICBkbwogICAgICAgIGxvY2FsIF93aXRoXzAgPSBzZWxmOmJsb2NrKHNlbGY6bGluZSgiaWYgIiwgc2VsZjp2YWx1ZShjb25kKSwgIiB0aGVuIikpCiAgICAgICAgX3dpdGhfMDpzdG1zKGJsb2NrKQogICAgICAgIHJvb3QgPSBfd2l0aF8wCiAgICAgIGVuZAogICAgICBsb2NhbCBjdXJyZW50ID0gcm9vdAogICAgICBsb2NhbCBhZGRfY2xhdXNlCiAgICAgIGFkZF9jbGF1c2UgPSBmdW5jdGlvbihjbGF1c2UpCiAgICAgICAgbG9jYWwgdHlwZSA9IGNsYXVzZVsxXQogICAgICAgIGxvY2FsIGkgPSAyCiAgICAgICAgbG9jYWwgbmV4dAogICAgICAgIGlmIHR5cGUgPT0gImVsc2UiIHRoZW4KICAgICAgICAgIG5leHQgPSBzZWxmOmJsb2NrKCJlbHNlIikKICAgICAgICBlbHNlCiAgICAgICAgICBpID0gaSArIDEKICAgICAgICAgIG5leHQgPSBzZWxmOmJsb2NrKHNlbGY6bGluZSgiZWxzZWlmICIsIHNlbGY6dmFsdWUoY2xhdXNlWzJdKSwgIiB0aGVuIikpCiAgICAgICAgZW5kCiAgICAgICAgbmV4dDpzdG1zKGNsYXVzZVtpXSkKICAgICAgICBjdXJyZW50Lm5leHQgPSBuZXh0CiAgICAgICAgY3VycmVudCA9IG5leHQKICAgICAgZW5kCiAgICAgIGZvciBfaW5kZXhfMCA9IDQsICNub2RlIGRvCiAgICAgICAgbG9jYWwgY29uZCA9IG5vZGVbX2luZGV4XzBdCiAgICAgICAgYWRkX2NsYXVzZShjb25kKQogICAgICBlbmQKICAgICAgcmV0dXJuIHJvb3QKICAgIGVuZCwKICAgIFsicmVwZWF0Il0gPSBmdW5jdGlvbihzZWxmLCBub2RlKQogICAgICBsb2NhbCBjb25kLCBibG9jayA9IHVucGFjayhub2RlLCAyKQogICAgICBkbwogICAgICAgIGxvY2FsIF93aXRoXzAgPSBzZWxmOmJsb2NrKCJyZXBlYXQiLCBzZWxmOmxpbmUoInVudGlsICIsIHNlbGY6dmFsdWUoY29uZCkpKQogICAgICAgIF93aXRoXzA6c3RtcyhibG9jaykKICAgICAgICByZXR1cm4gX3dpdGhfMAogICAgICBlbmQKICAgIGVuZCwKICAgIFsid2hpbGUiXSA9IGZ1bmN0aW9uKHNlbGYsIG5vZGUpCiAgICAgIGxvY2FsIGNvbmQsIGJsb2NrID0gdW5wYWNrKG5vZGUsIDIpCiAgICAgIGRvCiAgICAgICAgbG9jYWwgX3dpdGhfMCA9IHNlbGY6YmxvY2soc2VsZjpsaW5lKCJ3aGlsZSAiLCBzZWxmOnZhbHVlKGNvbmQpLCAiIGRvIikpCiAgICAgICAgX3dpdGhfMDpzdG1zKGJsb2NrKQogICAgICAgIHJldHVybiBfd2l0aF8wCiAgICAgIGVuZAogICAgZW5kLAogICAgWyJmb3IiXSA9IGZ1bmN0aW9uKHNlbGYsIG5vZGUpCiAgICAgIGxvY2FsIG5hbWUsIGJvdW5kcywgYmxvY2sgPSB1bnBhY2sobm9kZSwgMikKICAgICAgbG9jYWwgbG9vcCA9IHNlbGY6bGluZSgiZm9yICIsIHNlbGY6bmFtZShuYW1lKSwgIiA9ICIsIHNlbGY6dmFsdWUoewogICAgICAgICJleHBsaXN0IiwKICAgICAgICB1bnBhY2soYm91bmRzKQogICAgICB9KSwgIiBkbyIpCiAgICAgIGRvCiAgICAgICAgbG9jYWwgX3dpdGhfMCA9IHNlbGY6YmxvY2sobG9vcCkKICAgICAgICBfd2l0aF8wOmRlY2xhcmUoewogICAgICAgICAgbmFtZQogICAgICAgIH0pCiAgICAgICAgX3dpdGhfMDpzdG1zKGJsb2NrKQogICAgICAgIHJldHVybiBfd2l0aF8wCiAgICAgIGVuZAogICAgZW5kLAogICAgZm9yZWFjaCA9IGZ1bmN0aW9uKHNlbGYsIG5vZGUpCiAgICAgIGxvY2FsIG5hbWVzLCBleHBzLCBibG9jayA9IHVucGFjayhub2RlLCAyKQogICAgICBsb2NhbCBsb29wCiAgICAgIGRvCiAgICAgICAgbG9jYWwgX3dpdGhfMCA9IHNlbGY6bGluZSgpCiAgICAgICAgX3dpdGhfMDphcHBlbmQoImZvciAiKQogICAgICAgIGxvb3AgPSBfd2l0aF8wCiAgICAgIGVuZAogICAgICBkbwogICAgICAgIGxvY2FsIF93aXRoXzAgPSBzZWxmOmJsb2NrKGxvb3ApCiAgICAgICAgbG9vcDphcHBlbmRfbGlzdCgoZnVuY3Rpb24oKQogICAgICAgICAgbG9jYWwgX2FjY3VtXzAgPSB7IH0KICAgICAgICAgIGxvY2FsIF9sZW5fMCA9IDEKICAgICAgICAgIGZvciBfaW5kZXhfMCA9IDEsICNuYW1lcyBkbwogICAgICAgICAgICBsb2NhbCBuYW1lID0gbmFtZXNbX2luZGV4XzBdCiAgICAgICAgICAgIF9hY2N1bV8wW19sZW5fMF0gPSBfd2l0aF8wOm5hbWUobmFtZSwgZmFsc2UpCiAgICAgICAgICAgIF9sZW5fMCA9IF9sZW5fMCArIDEKICAgICAgICAgIGVuZAogICAgICAgICAgcmV0dXJuIF9hY2N1bV8wCiAgICAgICAgZW5kKSgpLCAiLCAiKQogICAgICAgIGxvb3A6YXBwZW5kKCIgaW4gIikKICAgICAgICBsb29wOmFwcGVuZF9saXN0KChmdW5jdGlvbigpCiAgICAgICAgICBsb2NhbCBfYWNjdW1fMCA9IHsgfQogICAgICAgICAgbG9jYWwgX2xlbl8wID0gMQogICAgICAgICAgZm9yIF9pbmRleF8wID0gMSwgI2V4cHMgZG8KICAgICAgICAgICAgbG9jYWwgZXhwID0gZXhwc1tfaW5kZXhfMF0KICAgICAgICAgICAgX2FjY3VtXzBbX2xlbl8wXSA9IHNlbGY6dmFsdWUoZXhwKQogICAgICAgICAgICBfbGVuXzAgPSBfbGVuXzAgKyAxCiAgICAgICAgICBlbmQKICAgICAgICAgIHJldHVybiBfYWNjdW1fMAogICAgICAgIGVuZCkoKSwgIiwiKQogICAgICAgIGxvb3A6YXBwZW5kKCIgZG8iKQogICAgICAgIF93aXRoXzA6ZGVjbGFyZShuYW1lcykKICAgICAgICBfd2l0aF8wOnN0bXMoYmxvY2spCiAgICAgICAgcmV0dXJuIF93aXRoXzAKICAgICAgZW5kCiAgICBlbmQsCiAgICBleHBvcnQgPSBmdW5jdGlvbihzZWxmLCBub2RlKQogICAgICBsb2NhbCBuYW1lcyA9IHVucGFjayhub2RlLCAyKQogICAgICBpZiB0eXBlKG5hbWVzKSA9PSAic3RyaW5nIiB0aGVuCiAgICAgICAgaWYgbmFtZXMgPT0gIioiIHRoZW4KICAgICAgICAgIHNlbGYuZXhwb3J0X2FsbCA9IHRydWUKICAgICAgICBlbHNlaWYgbmFtZXMgPT0gIl4iIHRoZW4KICAgICAgICAgIHNlbGYuZXhwb3J0X3Byb3BlciA9IHRydWUKICAgICAgICBlbmQKICAgICAgZWxzZQogICAgICAgIHNlbGY6ZGVjbGFyZShuYW1lcykKICAgICAgZW5kCiAgICAgIHJldHVybiBuaWwKICAgIGVuZCwKICAgIHJ1biA9IGZ1bmN0aW9uKHNlbGYsIGNvZGUpCiAgICAgIGNvZGU6Y2FsbChzZWxmKQogICAgICByZXR1cm4gbmlsCiAgICBlbmQsCiAgICBncm91cCA9IGZ1bmN0aW9uKHNlbGYsIG5vZGUpCiAgICAgIHJldHVybiBzZWxmOnN0bXMobm9kZVsyXSkKICAgIGVuZCwKICAgIFsiZG8iXSA9IGZ1bmN0aW9uKHNlbGYsIG5vZGUpCiAgICAgIGRvCiAgICAgICAgbG9jYWwgX3dpdGhfMCA9IHNlbGY6YmxvY2soKQogICAgICAgIF93aXRoXzA6c3Rtcyhub2RlWzJdKQogICAgICAgIHJldHVybiBfd2l0aF8wCiAgICAgIGVuZAogICAgZW5kLAogICAgbm9vcCA9IGZ1bmN0aW9uKHNlbGYpIGVuZAogIH0KICAKZW5kCnBhY2thZ2UucHJlbG9hZFsnbW9vbnNjcmlwdC5jb21waWxlLnZhbHVlJ10gPSBmdW5jdGlvbigpCiAgbG9jYWwgdXRpbCA9IHJlcXVpcmUoIm1vb25zY3JpcHQudXRpbCIpCiAgbG9jYWwgZGF0YSA9IHJlcXVpcmUoIm1vb25zY3JpcHQuZGF0YSIpCiAgbG9jYWwgbnR5cGUKICBudHlwZSA9IHJlcXVpcmUoIm1vb25zY3JpcHQudHlwZXMiKS5udHlwZQogIGxvY2FsIHVzZXJfZXJyb3IKICB1c2VyX2Vycm9yID0gcmVxdWlyZSgibW9vbnNjcmlwdC5lcnJvcnMiKS51c2VyX2Vycm9yCiAgbG9jYWwgY29uY2F0LCBpbnNlcnQKICBkbwogICAgbG9jYWwgX29ial8wID0gdGFibGUKICAgIGNvbmNhdCwgaW5zZXJ0ID0gX29ial8wLmNvbmNhdCwgX29ial8wLmluc2VydAogIGVuZAogIGxvY2FsIHVucGFjawogIHVucGFjayA9IHV0aWwudW5wYWNrCiAgbG9jYWwgdGFibGVfZGVsaW0gPSAiLCIKICBsb2NhbCBzdHJpbmdfY2hhcnMgPSB7CiAgICBbIlxyIl0gPSAiXFxyIiwKICAgIFsiXG4iXSA9ICJcXG4iCiAgfQogIHJldHVybiB7CiAgICBzY29wZWQgPSBmdW5jdGlvbihzZWxmLCBub2RlKQogICAgICBsb2NhbCBfLCBiZWZvcmUsIHZhbHVlLCBhZnRlcgogICAgICBfLCBiZWZvcmUsIHZhbHVlLCBhZnRlciA9IG5vZGVbMV0sIG5vZGVbMl0sIG5vZGVbM10sIG5vZGVbNF0KICAgICAgXyA9IGJlZm9yZSBhbmQgYmVmb3JlOmNhbGwoc2VsZikKICAgICAgZG8KICAgICAgICBsb2NhbCBfd2l0aF8wID0gc2VsZjp2YWx1ZSh2YWx1ZSkKICAgICAgICBfID0gYWZ0ZXIgYW5kIGFmdGVyOmNhbGwoc2VsZikKICAgICAgICByZXR1cm4gX3dpdGhfMAogICAgICBlbmQKICAgIGVuZCwKICAgIGV4cCA9IGZ1bmN0aW9uKHNlbGYsIG5vZGUpCiAgICAgIGxvY2FsIF9jb21wCiAgICAgIF9jb21wID0gZnVuY3Rpb24oaSwgdmFsdWUpCiAgICAgICAgaWYgaSAlIDIgPT0gMSBhbmQgdmFsdWUgPT0gIiE9IiB0aGVuCiAgICAgICAgICB2YWx1ZSA9ICJ+PSIKICAgICAgICBlbmQKICAgICAgICByZXR1cm4gc2VsZjp2YWx1ZSh2YWx1ZSkKICAgICAgZW5kCiAgICAgIGRvCiAgICAgICAgbG9jYWwgX3dpdGhfMCA9IHNlbGY6bGluZSgpCiAgICAgICAgX3dpdGhfMDphcHBlbmRfbGlzdCgoZnVuY3Rpb24oKQogICAgICAgICAgbG9jYWwgX2FjY3VtXzAgPSB7IH0KICAgICAgICAgIGxvY2FsIF9sZW5fMCA9IDEKICAgICAgICAgIGZvciBpLCB2IGluIGlwYWlycyhub2RlKSBkbwogICAgICAgICAgICBpZiBpID4gMSB0aGVuCiAgICAgICAgICAgICAgX2FjY3VtXzBbX2xlbl8wXSA9IF9jb21wKGksIHYpCiAgICAgICAgICAgICAgX2xlbl8wID0gX2xlbl8wICsgMQogICAgICAgICAgICBlbmQKICAgICAgICAgIGVuZAogICAgICAgICAgcmV0dXJuIF9hY2N1bV8wCiAgICAgICAgZW5kKSgpLCAiICIpCiAgICAgICAgcmV0dXJuIF93aXRoXzAKICAgICAgZW5kCiAgICBlbmQsCiAgICBleHBsaXN0ID0gZnVuY3Rpb24oc2VsZiwgbm9kZSkKICAgICAgZG8KICAgICAgICBsb2NhbCBfd2l0aF8wID0gc2VsZjpsaW5lKCkKICAgICAgICBfd2l0aF8wOmFwcGVuZF9saXN0KChmdW5jdGlvbigpCiAgICAgICAgICBsb2NhbCBfYWNjdW1fMCA9IHsgfQogICAgICAgICAgbG9jYWwgX2xlbl8wID0gMQogICAgICAgICAgZm9yIF9pbmRleF8wID0gMiwgI25vZGUgZG8KICAgICAgICAgICAgbG9jYWwgdiA9IG5vZGVbX2luZGV4XzBdCiAgICAgICAgICAgIF9hY2N1bV8wW19sZW5fMF0gPSBzZWxmOnZhbHVlKHYpCiAgICAgICAgICAgIF9sZW5fMCA9IF9sZW5fMCArIDEKICAgICAgICAgIGVuZAogICAgICAgICAgcmV0dXJuIF9hY2N1bV8wCiAgICAgICAgZW5kKSgpLCAiLCAiKQogICAgICAgIHJldHVybiBfd2l0aF8wCiAgICAgIGVuZAogICAgZW5kLAogICAgcGFyZW5zID0gZnVuY3Rpb24oc2VsZiwgbm9kZSkKICAgICAgcmV0dXJuIHNlbGY6bGluZSgiKCIsIHNlbGY6dmFsdWUobm9kZVsyXSksICIpIikKICAgIGVuZCwKICAgIHN0cmluZyA9IGZ1bmN0aW9uKHNlbGYsIG5vZGUpCiAgICAgIGxvY2FsIGRlbGltLCBpbm5lciA9IHVucGFjayhub2RlLCAyKQogICAgICBsb2NhbCBlbmRfZGVsaW0gPSBkZWxpbTpnc3ViKCIlWyIsICJdIikKICAgICAgaWYgZGVsaW0gPT0gIiciIG9yIGRlbGltID09ICciJyB0aGVuCiAgICAgICAgaW5uZXIgPSBpbm5lcjpnc3ViKCJbXHJcbl0iLCBzdHJpbmdfY2hhcnMpCiAgICAgIGVuZAogICAgICByZXR1cm4gZGVsaW0gLi4gaW5uZXIgLi4gZW5kX2RlbGltCiAgICBlbmQsCiAgICBjaGFpbiA9IGZ1bmN0aW9uKHNlbGYsIG5vZGUpCiAgICAgIGxvY2FsIGNhbGxlZSA9IG5vZGVbMl0KICAgICAgbG9jYWwgY2FsbGVlX3R5cGUgPSBudHlwZShjYWxsZWUpCiAgICAgIGxvY2FsIGl0ZW1fb2Zmc2V0ID0gMwogICAgICBpZiBjYWxsZWVfdHlwZSA9PSAiZG90IiBvciBjYWxsZWVfdHlwZSA9PSAiY29sb24iIG9yIGNhbGxlZV90eXBlID09ICJpbmRleCIgdGhlbgogICAgICAgIGNhbGxlZSA9IHNlbGY6Z2V0KCJzY29wZV92YXIiKQogICAgICAgIGlmIG5vdCAoY2FsbGVlKSB0aGVuCiAgICAgICAgICB1c2VyX2Vycm9yKCJTaG9ydC1kb3Qgc3ludGF4IG11c3QgYmUgY2FsbGVkIHdpdGhpbiBhIHdpdGggYmxvY2siKQogICAgICAgIGVuZAogICAgICAgIGl0ZW1fb2Zmc2V0ID0gMgogICAgICBlbmQKICAgICAgaWYgY2FsbGVlX3R5cGUgPT0gInJlZiIgYW5kIGNhbGxlZVsyXSA9PSAic3VwZXIiIG9yIGNhbGxlZSA9PSAic3VwZXIiIHRoZW4KICAgICAgICBkbwogICAgICAgICAgbG9jYWwgc3VwID0gc2VsZjpnZXQoInN1cGVyIikKICAgICAgICAgIGlmIHN1cCB0aGVuCiAgICAgICAgICAgIHJldHVybiBzZWxmOnZhbHVlKHN1cChzZWxmLCBub2RlKSkKICAgICAgICAgIGVuZAogICAgICAgIGVuZAogICAgICBlbmQKICAgICAgbG9jYWwgY2hhaW5faXRlbQogICAgICBjaGFpbl9pdGVtID0gZnVuY3Rpb24obm9kZSkKICAgICAgICBsb2NhbCB0LCBhcmcgPSB1bnBhY2sobm9kZSkKICAgICAgICBpZiB0ID09ICJjYWxsIiB0aGVuCiAgICAgICAgICByZXR1cm4gIigiLCBzZWxmOnZhbHVlcyhhcmcpLCAiKSIKICAgICAgICBlbHNlaWYgdCA9PSAiaW5kZXgiIHRoZW4KICAgICAgICAgIHJldHVybiAiWyIsIHNlbGY6dmFsdWUoYXJnKSwgIl0iCiAgICAgICAgZWxzZWlmIHQgPT0gImRvdCIgdGhlbgogICAgICAgICAgcmV0dXJuICIuIiwgdG9zdHJpbmcoYXJnKQogICAgICAgIGVsc2VpZiB0ID09ICJjb2xvbiIgdGhlbgogICAgICAgICAgcmV0dXJuICI6IiwgdG9zdHJpbmcoYXJnKQogICAgICAgIGVsc2VpZiB0ID09ICJjb2xvbl9zdHViIiB0aGVuCiAgICAgICAgICByZXR1cm4gdXNlcl9lcnJvcigiVW5jYWxsZWQgY29sb24gc3R1YiIpCiAgICAgICAgZWxzZQogICAgICAgICAgcmV0dXJuIGVycm9yKCJVbmtub3duIGNoYWluIGFjdGlvbjogIiAuLiB0b3N0cmluZyh0KSkKICAgICAgICBlbmQKICAgICAgZW5kCiAgICAgIGlmIChjYWxsZWVfdHlwZSA9PSAic2VsZiIgb3IgY2FsbGVlX3R5cGUgPT0gInNlbGZfY2xhc3MiKSBhbmQgbm9kZVszXSBhbmQgbnR5cGUobm9kZVszXSkgPT0gImNhbGwiIHRoZW4KICAgICAgICBjYWxsZWVbMV0gPSBjYWxsZWVfdHlwZSAuLiAiX2NvbG9uIgogICAgICBlbmQKICAgICAgbG9jYWwgY2FsbGVlX3ZhbHVlID0gc2VsZjp2YWx1ZShjYWxsZWUpCiAgICAgIGlmIG50eXBlKGNhbGxlZSkgPT0gImV4cCIgdGhlbgogICAgICAgIGNhbGxlZV92YWx1ZSA9IHNlbGY6bGluZSgiKCIsIGNhbGxlZV92YWx1ZSwgIikiKQogICAgICBlbmQKICAgICAgbG9jYWwgYWN0aW9ucwogICAgICBkbwogICAgICAgIGxvY2FsIF93aXRoXzAgPSBzZWxmOmxpbmUoKQogICAgICAgIGZvciBfaW5kZXhfMCA9IGl0ZW1fb2Zmc2V0LCAjbm9kZSBkbwogICAgICAgICAgbG9jYWwgYWN0aW9uID0gbm9kZVtfaW5kZXhfMF0KICAgICAgICAgIF93aXRoXzA6YXBwZW5kKGNoYWluX2l0ZW0oYWN0aW9uKSkKICAgICAgICBlbmQKICAgICAgICBhY3Rpb25zID0gX3dpdGhfMAogICAgICBlbmQKICAgICAgcmV0dXJuIHNlbGY6bGluZShjYWxsZWVfdmFsdWUsIGFjdGlvbnMpCiAgICBlbmQsCiAgICBmbmRlZiA9IGZ1bmN0aW9uKHNlbGYsIG5vZGUpCiAgICAgIGxvY2FsIGFyZ3MsIHdoaXRlbGlzdCwgYXJyb3csIGJsb2NrID0gdW5wYWNrKG5vZGUsIDIpCiAgICAgIGxvY2FsIGRlZmF1bHRfYXJncyA9IHsgfQogICAgICBsb2NhbCBzZWxmX2FyZ3MgPSB7IH0KICAgICAgbG9jYWwgYXJnX25hbWVzCiAgICAgIGRvCiAgICAgICAgbG9jYWwgX2FjY3VtXzAgPSB7IH0KICAgICAgICBsb2NhbCBfbGVuXzAgPSAxCiAgICAgICAgZm9yIF9pbmRleF8wID0gMSwgI2FyZ3MgZG8KICAgICAgICAgIGxvY2FsIGFyZyA9IGFyZ3NbX2luZGV4XzBdCiAgICAgICAgICBsb2NhbCBuYW1lLCBkZWZhdWx0X3ZhbHVlID0gdW5wYWNrKGFyZykKICAgICAgICAgIGlmIHR5cGUobmFtZSkgPT0gInN0cmluZyIgdGhlbgogICAgICAgICAgICBuYW1lID0gbmFtZQogICAgICAgICAgZWxzZQogICAgICAgICAgICBpZiBuYW1lWzFdID09ICJzZWxmIiBvciBuYW1lWzFdID09ICJzZWxmX2NsYXNzIiB0aGVuCiAgICAgICAgICAgICAgaW5zZXJ0KHNlbGZfYXJncywgbmFtZSkKICAgICAgICAgICAgZW5kCiAgICAgICAgICAgIG5hbWUgPSBuYW1lWzJdCiAgICAgICAgICBlbmQKICAgICAgICAgIGlmIGRlZmF1bHRfdmFsdWUgdGhlbgogICAgICAgICAgICBpbnNlcnQoZGVmYXVsdF9hcmdzLCBhcmcpCiAgICAgICAgICBlbmQKICAgICAgICAgIGxvY2FsIF92YWx1ZV8wID0gbmFtZQogICAgICAgICAgX2FjY3VtXzBbX2xlbl8wXSA9IF92YWx1ZV8wCiAgICAgICAgICBfbGVuXzAgPSBfbGVuXzAgKyAxCiAgICAgICAgZW5kCiAgICAgICAgYXJnX25hbWVzID0gX2FjY3VtXzAKICAgICAgZW5kCiAgICAgIGlmIGFycm93ID09ICJmYXQiIHRoZW4KICAgICAgICBpbnNlcnQoYXJnX25hbWVzLCAxLCAic2VsZiIpCiAgICAgIGVuZAogICAgICBkbwogICAgICAgIGxvY2FsIF93aXRoXzAgPSBzZWxmOmJsb2NrKCkKICAgICAgICBpZiAjd2hpdGVsaXN0ID4gMCB0aGVuCiAgICAgICAgICBfd2l0aF8wOndoaXRlbGlzdF9uYW1lcyh3aGl0ZWxpc3QpCiAgICAgICAgZW5kCiAgICAgICAgZm9yIF9pbmRleF8wID0gMSwgI2FyZ19uYW1lcyBkbwogICAgICAgICAgbG9jYWwgbmFtZSA9IGFyZ19uYW1lc1tfaW5kZXhfMF0KICAgICAgICAgIF93aXRoXzA6cHV0X25hbWUobmFtZSkKICAgICAgICBlbmQKICAgICAgICBmb3IgX2luZGV4XzAgPSAxLCAjZGVmYXVsdF9hcmdzIGRvCiAgICAgICAgICBsb2NhbCBkZWZhdWx0ID0gZGVmYXVsdF9hcmdzW19pbmRleF8wXQogICAgICAgICAgbG9jYWwgbmFtZSwgdmFsdWUgPSB1bnBhY2soZGVmYXVsdCkKICAgICAgICAgIGlmIHR5cGUobmFtZSkgPT0gInRhYmxlIiB0aGVuCiAgICAgICAgICAgIG5hbWUgPSBuYW1lWzJdCiAgICAgICAgICBlbmQKICAgICAgICAgIF93aXRoXzA6c3RtKHsKICAgICAgICAgICAgJ2lmJywKICAgICAgICAgICAgewogICAgICAgICAgICAgICdleHAnLAogICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJyZWYiLAogICAgICAgICAgICAgICAgbmFtZQogICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgJz09JywKICAgICAgICAgICAgICAnbmlsJwogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgJ2Fzc2lnbicsCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgIG5hbWUKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgIHZhbHVlCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9KQogICAgICAgIGVuZAogICAgICAgIGxvY2FsIHNlbGZfYXJnX3ZhbHVlcwogICAgICAgIGRvCiAgICAgICAgICBsb2NhbCBfYWNjdW1fMCA9IHsgfQogICAgICAgICAgbG9jYWwgX2xlbl8wID0gMQogICAgICAgICAgZm9yIF9pbmRleF8wID0gMSwgI3NlbGZfYXJncyBkbwogICAgICAgICAgICBsb2NhbCBhcmcgPSBzZWxmX2FyZ3NbX2luZGV4XzBdCiAgICAgICAgICAgIF9hY2N1bV8wW19sZW5fMF0gPSBhcmdbMl0KICAgICAgICAgICAgX2xlbl8wID0gX2xlbl8wICsgMQogICAgICAgICAgZW5kCiAgICAgICAgICBzZWxmX2FyZ192YWx1ZXMgPSBfYWNjdW1fMAogICAgICAgIGVuZAogICAgICAgIGlmICNzZWxmX2FyZ3MgPiAwIHRoZW4KICAgICAgICAgIF93aXRoXzA6c3RtKHsKICAgICAgICAgICAgImFzc2lnbiIsCiAgICAgICAgICAgIHNlbGZfYXJncywKICAgICAgICAgICAgc2VsZl9hcmdfdmFsdWVzCiAgICAgICAgICB9KQogICAgICAgIGVuZAogICAgICAgIF93aXRoXzA6c3RtcyhibG9jaykKICAgICAgICBpZiAjYXJncyA+ICNhcmdfbmFtZXMgdGhlbgogICAgICAgICAgZG8KICAgICAgICAgICAgbG9jYWwgX2FjY3VtXzAgPSB7IH0KICAgICAgICAgICAgbG9jYWwgX2xlbl8wID0gMQogICAgICAgICAgICBmb3IgX2luZGV4XzAgPSAxLCAjYXJncyBkbwogICAgICAgICAgICAgIGxvY2FsIGFyZyA9IGFyZ3NbX2luZGV4XzBdCiAgICAgICAgICAgICAgX2FjY3VtXzBbX2xlbl8wXSA9IGFyZ1sxXQogICAgICAgICAgICAgIF9sZW5fMCA9IF9sZW5fMCArIDEKICAgICAgICAgICAgZW5kCiAgICAgICAgICAgIGFyZ19uYW1lcyA9IF9hY2N1bV8wCiAgICAgICAgICBlbmQKICAgICAgICBlbmQKICAgICAgICBfd2l0aF8wLmhlYWRlciA9ICJmdW5jdGlvbigiIC4uIGNvbmNhdChhcmdfbmFtZXMsICIsICIpIC4uICIpIgogICAgICAgIHJldHVybiBfd2l0aF8wCiAgICAgIGVuZAogICAgZW5kLAogICAgdGFibGUgPSBmdW5jdGlvbihzZWxmLCBub2RlKQogICAgICBsb2NhbCBpdGVtcyA9IHVucGFjayhub2RlLCAyKQogICAgICBkbwogICAgICAgIGxvY2FsIF93aXRoXzAgPSBzZWxmOmJsb2NrKCJ7IiwgIn0iKQogICAgICAgIGxvY2FsIGZvcm1hdF9saW5lCiAgICAgICAgZm9ybWF0X2xpbmUgPSBmdW5jdGlvbih0dXBsZSkKICAgICAgICAgIGlmICN0dXBsZSA9PSAyIHRoZW4KICAgICAgICAgICAgbG9jYWwga2V5LCB2YWx1ZSA9IHVucGFjayh0dXBsZSkKICAgICAgICAgICAgaWYgbnR5cGUoa2V5KSA9PSAia2V5X2xpdGVyYWwiIGFuZCBkYXRhLmx1YV9rZXl3b3Jkc1trZXlbMl1dIHRoZW4KICAgICAgICAgICAgICBrZXkgPSB7CiAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICciJywKICAgICAgICAgICAgICAgIGtleVsyXQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgZW5kCiAgICAgICAgICAgIGxvY2FsIGFzc2lnbgogICAgICAgICAgICBpZiBudHlwZShrZXkpID09ICJrZXlfbGl0ZXJhbCIgdGhlbgogICAgICAgICAgICAgIGFzc2lnbiA9IGtleVsyXQogICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgYXNzaWduID0gc2VsZjpsaW5lKCJbIiwgX3dpdGhfMDp2YWx1ZShrZXkpLCAiXSIpCiAgICAgICAgICAgIGVuZAogICAgICAgICAgICBsb2NhbCBvdXQgPSBzZWxmOmxpbmUoYXNzaWduLCAiID0gIiwgX3dpdGhfMDp2YWx1ZSh2YWx1ZSkpCiAgICAgICAgICAgIHJldHVybiBvdXQKICAgICAgICAgIGVsc2UKICAgICAgICAgICAgcmV0dXJuIHNlbGY6bGluZShfd2l0aF8wOnZhbHVlKHR1cGxlWzFdKSkKICAgICAgICAgIGVuZAogICAgICAgIGVuZAogICAgICAgIGlmIGl0ZW1zIHRoZW4KICAgICAgICAgIGxvY2FsIGNvdW50ID0gI2l0ZW1zCiAgICAgICAgICBmb3IgaSwgdHVwbGUgaW4gaXBhaXJzKGl0ZW1zKSBkbwogICAgICAgICAgICBsb2NhbCBsaW5lID0gZm9ybWF0X2xpbmUodHVwbGUpCiAgICAgICAgICAgIGlmIG5vdCAoY291bnQgPT0gaSkgdGhlbgogICAgICAgICAgICAgIGxpbmU6YXBwZW5kKHRhYmxlX2RlbGltKQogICAgICAgICAgICBlbmQKICAgICAgICAgICAgX3dpdGhfMDphZGQobGluZSkKICAgICAgICAgIGVuZAogICAgICAgIGVuZAogICAgICAgIHJldHVybiBfd2l0aF8wCiAgICAgIGVuZAogICAgZW5kLAogICAgbWludXMgPSBmdW5jdGlvbihzZWxmLCBub2RlKQogICAgICByZXR1cm4gc2VsZjpsaW5lKCItIiwgc2VsZjp2YWx1ZShub2RlWzJdKSkKICAgIGVuZCwKICAgIHRlbXBfbmFtZSA9IGZ1bmN0aW9uKHNlbGYsIG5vZGUsIC4uLikKICAgICAgcmV0dXJuIG5vZGU6Z2V0X25hbWUoc2VsZiwgLi4uKQogICAgZW5kLAogICAgbnVtYmVyID0gZnVuY3Rpb24oc2VsZiwgbm9kZSkKICAgICAgcmV0dXJuIG5vZGVbMl0KICAgIGVuZCwKICAgIGJpdG5vdCA9IGZ1bmN0aW9uKHNlbGYsIG5vZGUpCiAgICAgIHJldHVybiBzZWxmOmxpbmUoIn4iLCBzZWxmOnZhbHVlKG5vZGVbMl0pKQogICAgZW5kLAogICAgbGVuZ3RoID0gZnVuY3Rpb24oc2VsZiwgbm9kZSkKICAgICAgcmV0dXJuIHNlbGY6bGluZSgiIyIsIHNlbGY6dmFsdWUobm9kZVsyXSkpCiAgICBlbmQsCiAgICBbIm5vdCJdID0gZnVuY3Rpb24oc2VsZiwgbm9kZSkKICAgICAgcmV0dXJuIHNlbGY6bGluZSgibm90ICIsIHNlbGY6dmFsdWUobm9kZVsyXSkpCiAgICBlbmQsCiAgICBzZWxmID0gZnVuY3Rpb24oc2VsZiwgbm9kZSkKICAgICAgcmV0dXJuICJzZWxmLiIgLi4gc2VsZjpuYW1lKG5vZGVbMl0pCiAgICBlbmQsCiAgICBzZWxmX2NsYXNzID0gZnVuY3Rpb24oc2VsZiwgbm9kZSkKICAgICAgcmV0dXJuICJzZWxmLl9fY2xhc3MuIiAuLiBzZWxmOm5hbWUobm9kZVsyXSkKICAgIGVuZCwKICAgIHNlbGZfY29sb24gPSBmdW5jdGlvbihzZWxmLCBub2RlKQogICAgICByZXR1cm4gInNlbGY6IiAuLiBzZWxmOm5hbWUobm9kZVsyXSkKICAgIGVuZCwKICAgIHNlbGZfY2xhc3NfY29sb24gPSBmdW5jdGlvbihzZWxmLCBub2RlKQogICAgICByZXR1cm4gInNlbGYuX19jbGFzczoiIC4uIHNlbGY6bmFtZShub2RlWzJdKQogICAgZW5kLAogICAgcmVmID0gZnVuY3Rpb24oc2VsZiwgdmFsdWUpCiAgICAgIGRvCiAgICAgICAgbG9jYWwgc3VwID0gdmFsdWVbMl0gPT0gInN1cGVyIiBhbmQgc2VsZjpnZXQoInN1cGVyIikKICAgICAgICBpZiBzdXAgdGhlbgogICAgICAgICAgcmV0dXJuIHNlbGY6dmFsdWUoc3VwKHNlbGYpKQogICAgICAgIGVuZAogICAgICBlbmQKICAgICAgcmV0dXJuIHRvc3RyaW5nKHZhbHVlWzJdKQogICAgZW5kLAogICAgcmF3X3ZhbHVlID0gZnVuY3Rpb24oc2VsZiwgdmFsdWUpCiAgICAgIGlmIHZhbHVlID09ICIuLi4iIHRoZW4KICAgICAgICBzZWxmOnNlbmQoInZhcmFyZ3MiKQogICAgICBlbmQKICAgICAgcmV0dXJuIHRvc3RyaW5nKHZhbHVlKQogICAgZW5kCiAgfQogIAplbmQKcGFja2FnZS5wcmVsb2FkWydtb29uc2NyaXB0LmR1bXAnXSA9IGZ1bmN0aW9uKCkKICBsb2NhbCBmbGF0X3ZhbHVlCiAgZmxhdF92YWx1ZSA9IGZ1bmN0aW9uKG9wLCBkZXB0aCkKICAgIGlmIGRlcHRoID09IG5pbCB0aGVuCiAgICAgIGRlcHRoID0gMQogICAgZW5kCiAgICBpZiB0eXBlKG9wKSA9PSAic3RyaW5nIiB0aGVuCiAgICAgIHJldHVybiAnIicgLi4gb3AgLi4gJyInCiAgICBlbmQKICAgIGlmIHR5cGUob3ApIH49ICJ0YWJsZSIgdGhlbgogICAgICByZXR1cm4gdG9zdHJpbmcob3ApCiAgICBlbmQKICAgIGxvY2FsIGl0ZW1zCiAgICBkbwogICAgICBsb2NhbCBfYWNjdW1fMCA9IHsgfQogICAgICBsb2NhbCBfbGVuXzAgPSAxCiAgICAgIGZvciBfaW5kZXhfMCA9IDEsICNvcCBkbwogICAgICAgIGxvY2FsIGl0ZW0gPSBvcFtfaW5kZXhfMF0KICAgICAgICBfYWNjdW1fMFtfbGVuXzBdID0gZmxhdF92YWx1ZShpdGVtLCBkZXB0aCArIDEpCiAgICAgICAgX2xlbl8wID0gX2xlbl8wICsgMQogICAgICBlbmQKICAgICAgaXRlbXMgPSBfYWNjdW1fMAogICAgZW5kCiAgICBsb2NhbCBwb3MgPSBvcFstMV0KICAgIHJldHVybiAieyIgLi4gKHBvcyBhbmQgIlsiIC4uIHBvcyAuLiAiXSAiIG9yICIiKSAuLiB0YWJsZS5jb25jYXQoaXRlbXMsICIsICIpIC4uICJ9IgogIGVuZAogIGxvY2FsIHZhbHVlCiAgdmFsdWUgPSBmdW5jdGlvbihvcCkKICAgIHJldHVybiBmbGF0X3ZhbHVlKG9wKQogIGVuZAogIGxvY2FsIHRyZWUKICB0cmVlID0gZnVuY3Rpb24oYmxvY2spCiAgICBsb2NhbCBfbGlzdF8wID0gYmxvY2sKICAgIGZvciBfaW5kZXhfMCA9IDEsICNfbGlzdF8wIGRvCiAgICAgIGxvY2FsIHZhbHVlID0gX2xpc3RfMFtfaW5kZXhfMF0KICAgICAgcHJpbnQoZmxhdF92YWx1ZSh2YWx1ZSkpCiAgICBlbmQKICBlbmQKICByZXR1cm4gewogICAgdmFsdWUgPSB2YWx1ZSwKICAgIHRyZWUgPSB0cmVlCiAgfQogIAplbmQKcGFja2FnZS5wcmVsb2FkWydtb29uc2NyaXB0LnRyYW5zZm9ybS5zdGF0ZW1lbnQnXSA9IGZ1bmN0aW9uKCkKICBsb2NhbCBUcmFuc2Zvcm1lcgogIFRyYW5zZm9ybWVyID0gcmVxdWlyZSgibW9vbnNjcmlwdC50cmFuc2Zvcm0udHJhbnNmb3JtZXIiKS5UcmFuc2Zvcm1lcgogIGxvY2FsIE5hbWVQcm94eSwgTG9jYWxOYW1lLCBpc19uYW1lX3Byb3h5CiAgZG8KICAgIGxvY2FsIF9vYmpfMCA9IHJlcXVpcmUoIm1vb25zY3JpcHQudHJhbnNmb3JtLm5hbWVzIikKICAgIE5hbWVQcm94eSwgTG9jYWxOYW1lLCBpc19uYW1lX3Byb3h5ID0gX29ial8wLk5hbWVQcm94eSwgX29ial8wLkxvY2FsTmFtZSwgX29ial8wLmlzX25hbWVfcHJveHkKICBlbmQKICBsb2NhbCBSdW4sIHRyYW5zZm9ybV9sYXN0X3N0bSwgaW1wbGljaXRseV9yZXR1cm4sIGxhc3Rfc3RtCiAgZG8KICAgIGxvY2FsIF9vYmpfMCA9IHJlcXVpcmUoIm1vb25zY3JpcHQudHJhbnNmb3JtLnN0YXRlbWVudHMiKQogICAgUnVuLCB0cmFuc2Zvcm1fbGFzdF9zdG0sIGltcGxpY2l0bHlfcmV0dXJuLCBsYXN0X3N0bSA9IF9vYmpfMC5SdW4sIF9vYmpfMC50cmFuc2Zvcm1fbGFzdF9zdG0sIF9vYmpfMC5pbXBsaWNpdGx5X3JldHVybiwgX29ial8wLmxhc3Rfc3RtCiAgZW5kCiAgbG9jYWwgdHlwZXMgPSByZXF1aXJlKCJtb29uc2NyaXB0LnR5cGVzIikKICBsb2NhbCBidWlsZCwgbnR5cGUsIGlzX3ZhbHVlLCBzbWFydF9ub2RlLCB2YWx1ZV9pc19zaW5ndWxhciwgaXNfc2xpY2UsIE5PT1AKICBidWlsZCwgbnR5cGUsIGlzX3ZhbHVlLCBzbWFydF9ub2RlLCB2YWx1ZV9pc19zaW5ndWxhciwgaXNfc2xpY2UsIE5PT1AgPSB0eXBlcy5idWlsZCwgdHlwZXMubnR5cGUsIHR5cGVzLmlzX3ZhbHVlLCB0eXBlcy5zbWFydF9ub2RlLCB0eXBlcy52YWx1ZV9pc19zaW5ndWxhciwgdHlwZXMuaXNfc2xpY2UsIHR5cGVzLk5PT1AKICBsb2NhbCBpbnNlcnQKICBpbnNlcnQgPSB0YWJsZS5pbnNlcnQKICBsb2NhbCBkZXN0cnVjdHVyZSA9IHJlcXVpcmUoIm1vb25zY3JpcHQudHJhbnNmb3JtLmRlc3RydWN0dXJlIikKICBsb2NhbCBjb25zdHJ1Y3RfY29tcHJlaGVuc2lvbgogIGNvbnN0cnVjdF9jb21wcmVoZW5zaW9uID0gcmVxdWlyZSgibW9vbnNjcmlwdC50cmFuc2Zvcm0uY29tcHJlaGVuc2lvbiIpLmNvbnN0cnVjdF9jb21wcmVoZW5zaW9uCiAgbG9jYWwgdW5wYWNrCiAgdW5wYWNrID0gcmVxdWlyZSgibW9vbnNjcmlwdC51dGlsIikudW5wYWNrCiAgbG9jYWwgd2l0aF9jb250aW51ZV9saXN0ZW5lcgogIHdpdGhfY29udGludWVfbGlzdGVuZXIgPSBmdW5jdGlvbihib2R5KQogICAgbG9jYWwgY29udGludWVfbmFtZSA9IG5pbAogICAgcmV0dXJuIHsKICAgICAgUnVuKGZ1bmN0aW9uKHNlbGYpCiAgICAgICAgcmV0dXJuIHNlbGY6bGlzdGVuKCJjb250aW51ZSIsIGZ1bmN0aW9uKCkKICAgICAgICAgIGlmIG5vdCAoY29udGludWVfbmFtZSkgdGhlbgogICAgICAgICAgICBjb250aW51ZV9uYW1lID0gTmFtZVByb3h5KCJjb250aW51ZSIpCiAgICAgICAgICAgIHNlbGY6cHV0X25hbWUoY29udGludWVfbmFtZSkKICAgICAgICAgIGVuZAogICAgICAgICAgcmV0dXJuIGNvbnRpbnVlX25hbWUKICAgICAgICBlbmQpCiAgICAgIGVuZCksCiAgICAgIGJ1aWxkLmdyb3VwKGJvZHkpLAogICAgICBSdW4oZnVuY3Rpb24oc2VsZikKICAgICAgICBpZiBub3QgKGNvbnRpbnVlX25hbWUpIHRoZW4KICAgICAgICAgIHJldHVybiAKICAgICAgICBlbmQKICAgICAgICBsb2NhbCBsYXN0ID0gbGFzdF9zdG0oYm9keSkKICAgICAgICBsb2NhbCBlbmNsb3NlX2xpbmVzID0gdHlwZXMudGVybWluYXRpbmdbbGFzdCBhbmQgbnR5cGUobGFzdCldCiAgICAgICAgc2VsZjpwdXRfbmFtZShjb250aW51ZV9uYW1lLCBuaWwpCiAgICAgICAgcmV0dXJuIHNlbGY6c3BsaWNlKGZ1bmN0aW9uKGxpbmVzKQogICAgICAgICAgaWYgZW5jbG9zZV9saW5lcyB0aGVuCiAgICAgICAgICAgIGxpbmVzID0gewogICAgICAgICAgICAgICJkbyIsCiAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgbGluZXMKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIGVuZAogICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJhc3NpZ24iLAogICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIGNvbnRpbnVlX25hbWUKICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJmYWxzZSIKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAicmVwZWF0IiwKICAgICAgICAgICAgICAidHJ1ZSIsCiAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgbGluZXMsCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJhc3NpZ24iLAogICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgY29udGludWVfbmFtZQogICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgInRydWUiCiAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAiaWYiLAogICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJub3QiLAogICAgICAgICAgICAgICAgY29udGludWVfbmFtZQogICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAiYnJlYWsiCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgZW5kKQogICAgICBlbmQpCiAgICB9CiAgZW5kCiAgbG9jYWwgZXh0cmFjdF9kZWNsYXJhdGlvbnMKICBleHRyYWN0X2RlY2xhcmF0aW9ucyA9IGZ1bmN0aW9uKHNlbGYsIGJvZHksIHN0YXJ0LCBvdXQpCiAgICBpZiBib2R5ID09IG5pbCB0aGVuCiAgICAgIGJvZHkgPSBzZWxmLmN1cnJlbnRfc3RtcwogICAgZW5kCiAgICBpZiBzdGFydCA9PSBuaWwgdGhlbgogICAgICBzdGFydCA9IHNlbGYuY3VycmVudF9zdG1faSArIDEKICAgIGVuZAogICAgaWYgb3V0ID09IG5pbCB0aGVuCiAgICAgIG91dCA9IHsgfQogICAgZW5kCiAgICBmb3IgaSA9IHN0YXJ0LCAjYm9keSBkbwogICAgICBsb2NhbCBfY29udGludWVfMCA9IGZhbHNlCiAgICAgIHJlcGVhdAogICAgICAgIGxvY2FsIHN0bSA9IGJvZHlbaV0KICAgICAgICBpZiBzdG0gPT0gbmlsIHRoZW4KICAgICAgICAgIF9jb250aW51ZV8wID0gdHJ1ZQogICAgICAgICAgYnJlYWsKICAgICAgICBlbmQKICAgICAgICBzdG0gPSBzZWxmLnRyYW5zZm9ybS5zdGF0ZW1lbnQoc3RtKQogICAgICAgIGJvZHlbaV0gPSBzdG0KICAgICAgICBsb2NhbCBfZXhwXzAgPSBzdG1bMV0KICAgICAgICBpZiAiYXNzaWduIiA9PSBfZXhwXzAgb3IgImRlY2xhcmUiID09IF9leHBfMCB0aGVuCiAgICAgICAgICBsb2NhbCBfbGlzdF8wID0gc3RtWzJdCiAgICAgICAgICBmb3IgX2luZGV4XzAgPSAxLCAjX2xpc3RfMCBkbwogICAgICAgICAgICBsb2NhbCBuYW1lID0gX2xpc3RfMFtfaW5kZXhfMF0KICAgICAgICAgICAgaWYgbnR5cGUobmFtZSkgPT0gInJlZiIgdGhlbgogICAgICAgICAgICAgIGluc2VydChvdXQsIG5hbWUpCiAgICAgICAgICAgIGVsc2VpZiB0eXBlKG5hbWUpID09ICJzdHJpbmciIHRoZW4KICAgICAgICAgICAgICBpbnNlcnQob3V0LCBuYW1lKQogICAgICAgICAgICBlbmQKICAgICAgICAgIGVuZAogICAgICAgIGVsc2VpZiAiZ3JvdXAiID09IF9leHBfMCB0aGVuCiAgICAgICAgICBleHRyYWN0X2RlY2xhcmF0aW9ucyhzZWxmLCBzdG1bMl0sIDEsIG91dCkKICAgICAgICBlbmQKICAgICAgICBfY29udGludWVfMCA9IHRydWUKICAgICAgdW50aWwgdHJ1ZQogICAgICBpZiBub3QgX2NvbnRpbnVlXzAgdGhlbgogICAgICAgIGJyZWFrCiAgICAgIGVuZAogICAgZW5kCiAgICByZXR1cm4gb3V0CiAgZW5kCiAgbG9jYWwgZXhwYW5kX2Vsc2VpZl9hc3NpZ24KICBleHBhbmRfZWxzZWlmX2Fzc2lnbiA9IGZ1bmN0aW9uKGlmc3RtKQogICAgZm9yIGkgPSA0LCAjaWZzdG0gZG8KICAgICAgbG9jYWwgY2FzZSA9IGlmc3RtW2ldCiAgICAgIGlmIG50eXBlKGNhc2UpID09ICJlbHNlaWYiIGFuZCBudHlwZShjYXNlWzJdKSA9PSAiYXNzaWduIiB0aGVuCiAgICAgICAgbG9jYWwgc3BsaXQgPSB7CiAgICAgICAgICB1bnBhY2soaWZzdG0sIDEsIGkgLSAxKQogICAgICAgIH0KICAgICAgICBpbnNlcnQoc3BsaXQsIHsKICAgICAgICAgICJlbHNlIiwKICAgICAgICAgIHsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJpZiIsCiAgICAgICAgICAgICAgY2FzZVsyXSwKICAgICAgICAgICAgICBjYXNlWzNdLAogICAgICAgICAgICAgIHVucGFjayhpZnN0bSwgaSArIDEpCiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICB9KQogICAgICAgIHJldHVybiBzcGxpdAogICAgICBlbmQKICAgIGVuZAogICAgcmV0dXJuIGlmc3RtCiAgZW5kCiAgcmV0dXJuIFRyYW5zZm9ybWVyKHsKICAgIHRyYW5zZm9ybSA9IGZ1bmN0aW9uKHNlbGYsIHR1cGxlKQogICAgICBsb2NhbCBfLCBub2RlLCBmbgogICAgICBfLCBub2RlLCBmbiA9IHR1cGxlWzFdLCB0dXBsZVsyXSwgdHVwbGVbM10KICAgICAgcmV0dXJuIGZuKG5vZGUpCiAgICBlbmQsCiAgICByb290X3N0bXMgPSBmdW5jdGlvbihzZWxmLCBib2R5KQogICAgICByZXR1cm4gdHJhbnNmb3JtX2xhc3Rfc3RtKGJvZHksIGltcGxpY2l0bHlfcmV0dXJuKHNlbGYpKQogICAgZW5kLAogICAgWyJyZXR1cm4iXSA9IGZ1bmN0aW9uKHNlbGYsIG5vZGUpCiAgICAgIGxvY2FsIHJldF92YWwgPSBub2RlWzJdCiAgICAgIGxvY2FsIHJldF92YWxfdHlwZSA9IG50eXBlKHJldF92YWwpCiAgICAgIGlmIHJldF92YWxfdHlwZSA9PSAiZXhwbGlzdCIgYW5kICNyZXRfdmFsID09IDIgdGhlbgogICAgICAgIHJldF92YWwgPSByZXRfdmFsWzJdCiAgICAgICAgcmV0X3ZhbF90eXBlID0gbnR5cGUocmV0X3ZhbCkKICAgICAgZW5kCiAgICAgIGlmIHR5cGVzLmNhc2NhZGluZ1tyZXRfdmFsX3R5cGVdIHRoZW4KICAgICAgICByZXR1cm4gaW1wbGljaXRseV9yZXR1cm4oc2VsZikocmV0X3ZhbCkKICAgICAgZW5kCiAgICAgIGlmIHJldF92YWxfdHlwZSA9PSAiY2hhaW4iIG9yIHJldF92YWxfdHlwZSA9PSAiY29tcHJlaGVuc2lvbiIgb3IgcmV0X3ZhbF90eXBlID09ICJ0Ymxjb21wcmVoZW5zaW9uIiB0aGVuCiAgICAgICAgbG9jYWwgVmFsdWUgPSByZXF1aXJlKCJtb29uc2NyaXB0LnRyYW5zZm9ybS52YWx1ZSIpCiAgICAgICAgcmV0X3ZhbCA9IFZhbHVlOnRyYW5zZm9ybV9vbmNlKHNlbGYsIHJldF92YWwpCiAgICAgICAgaWYgbnR5cGUocmV0X3ZhbCkgPT0gImJsb2NrX2V4cCIgdGhlbgogICAgICAgICAgcmV0dXJuIGJ1aWxkLmdyb3VwKHRyYW5zZm9ybV9sYXN0X3N0bShyZXRfdmFsWzJdLCBmdW5jdGlvbihzdG0pCiAgICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgICAgInJldHVybiIsCiAgICAgICAgICAgICAgc3RtCiAgICAgICAgICAgIH0KICAgICAgICAgIGVuZCkpCiAgICAgICAgZW5kCiAgICAgIGVuZAogICAgICBub2RlWzJdID0gcmV0X3ZhbAogICAgICByZXR1cm4gbm9kZQogICAgZW5kLAogICAgZGVjbGFyZV9nbG9iID0gZnVuY3Rpb24oc2VsZiwgbm9kZSkKICAgICAgbG9jYWwgbmFtZXMgPSBleHRyYWN0X2RlY2xhcmF0aW9ucyhzZWxmKQogICAgICBpZiBub2RlWzJdID09ICJeIiB0aGVuCiAgICAgICAgZG8KICAgICAgICAgIGxvY2FsIF9hY2N1bV8wID0geyB9CiAgICAgICAgICBsb2NhbCBfbGVuXzAgPSAxCiAgICAgICAgICBmb3IgX2luZGV4XzAgPSAxLCAjbmFtZXMgZG8KICAgICAgICAgICAgbG9jYWwgX2NvbnRpbnVlXzAgPSBmYWxzZQogICAgICAgICAgICByZXBlYXQKICAgICAgICAgICAgICBsb2NhbCBuYW1lID0gbmFtZXNbX2luZGV4XzBdCiAgICAgICAgICAgICAgbG9jYWwgc3RyX25hbWUKICAgICAgICAgICAgICBpZiBudHlwZShuYW1lKSA9PSAicmVmIiB0aGVuCiAgICAgICAgICAgICAgICBzdHJfbmFtZSA9IG5hbWVbMl0KICAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICBzdHJfbmFtZSA9IG5hbWUKICAgICAgICAgICAgICBlbmQKICAgICAgICAgICAgICBpZiBub3QgKHN0cl9uYW1lOm1hdGNoKCJeJXUiKSkgdGhlbgogICAgICAgICAgICAgICAgX2NvbnRpbnVlXzAgPSB0cnVlCiAgICAgICAgICAgICAgICBicmVhawogICAgICAgICAgICAgIGVuZAogICAgICAgICAgICAgIGxvY2FsIF92YWx1ZV8wID0gbmFtZQogICAgICAgICAgICAgIF9hY2N1bV8wW19sZW5fMF0gPSBfdmFsdWVfMAogICAgICAgICAgICAgIF9sZW5fMCA9IF9sZW5fMCArIDEKICAgICAgICAgICAgICBfY29udGludWVfMCA9IHRydWUKICAgICAgICAgICAgdW50aWwgdHJ1ZQogICAgICAgICAgICBpZiBub3QgX2NvbnRpbnVlXzAgdGhlbgogICAgICAgICAgICAgIGJyZWFrCiAgICAgICAgICAgIGVuZAogICAgICAgICAgZW5kCiAgICAgICAgICBuYW1lcyA9IF9hY2N1bV8wCiAgICAgICAgZW5kCiAgICAgIGVuZAogICAgICByZXR1cm4gewogICAgICAgICJkZWNsYXJlIiwKICAgICAgICBuYW1lcwogICAgICB9CiAgICBlbmQsCiAgICBhc3NpZ24gPSBmdW5jdGlvbihzZWxmLCBub2RlKQogICAgICBsb2NhbCBuYW1lcywgdmFsdWVzID0gdW5wYWNrKG5vZGUsIDIpCiAgICAgIGxvY2FsIG51bV92YWx1ZXMgPSAjdmFsdWVzCiAgICAgIGxvY2FsIG51bV9uYW1lcyA9ICN2YWx1ZXMKICAgICAgaWYgbnVtX25hbWVzID09IDEgYW5kIG51bV92YWx1ZXMgPT0gMSB0aGVuCiAgICAgICAgbG9jYWwgZmlyc3RfdmFsdWUgPSB2YWx1ZXNbMV0KICAgICAgICBsb2NhbCBmaXJzdF9uYW1lID0gbmFtZXNbMV0KICAgICAgICBsb2NhbCBmaXJzdF90eXBlID0gbnR5cGUoZmlyc3RfdmFsdWUpCiAgICAgICAgaWYgZmlyc3RfdHlwZSA9PSAiY2hhaW4iIHRoZW4KICAgICAgICAgIGxvY2FsIFZhbHVlID0gcmVxdWlyZSgibW9vbnNjcmlwdC50cmFuc2Zvcm0udmFsdWUiKQogICAgICAgICAgZmlyc3RfdmFsdWUgPSBWYWx1ZTp0cmFuc2Zvcm1fb25jZShzZWxmLCBmaXJzdF92YWx1ZSkKICAgICAgICAgIGZpcnN0X3R5cGUgPSBudHlwZShmaXJzdF92YWx1ZSkKICAgICAgICBlbmQKICAgICAgICBsb2NhbCBfZXhwXzAgPSBudHlwZShmaXJzdF92YWx1ZSkKICAgICAgICBpZiAiYmxvY2tfZXhwIiA9PSBfZXhwXzAgdGhlbgogICAgICAgICAgbG9jYWwgYmxvY2tfYm9keSA9IGZpcnN0X3ZhbHVlWzJdCiAgICAgICAgICBsb2NhbCBpZHggPSAjYmxvY2tfYm9keQogICAgICAgICAgYmxvY2tfYm9keVtpZHhdID0gYnVpbGQuYXNzaWduX29uZShmaXJzdF9uYW1lLCBibG9ja19ib2R5W2lkeF0pCiAgICAgICAgICByZXR1cm4gYnVpbGQuZ3JvdXAoewogICAgICAgICAgICB7CiAgICAgICAgICAgICAgImRlY2xhcmUiLAogICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIGZpcnN0X25hbWUKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAiZG8iLAogICAgICAgICAgICAgIGJsb2NrX2JvZHkKICAgICAgICAgICAgfQogICAgICAgICAgfSkKICAgICAgICBlbHNlaWYgImNvbXByZWhlbnNpb24iID09IF9leHBfMCBvciAidGJsY29tcHJlaGVuc2lvbiIgPT0gX2V4cF8wIG9yICJmb3JlYWNoIiA9PSBfZXhwXzAgb3IgImZvciIgPT0gX2V4cF8wIG9yICJ3aGlsZSIgPT0gX2V4cF8wIHRoZW4KICAgICAgICAgIGxvY2FsIFZhbHVlID0gcmVxdWlyZSgibW9vbnNjcmlwdC50cmFuc2Zvcm0udmFsdWUiKQogICAgICAgICAgcmV0dXJuIGJ1aWxkLmFzc2lnbl9vbmUoZmlyc3RfbmFtZSwgVmFsdWU6dHJhbnNmb3JtX29uY2Uoc2VsZiwgZmlyc3RfdmFsdWUpKQogICAgICAgIGVsc2UKICAgICAgICAgIHZhbHVlc1sxXSA9IGZpcnN0X3ZhbHVlCiAgICAgICAgZW5kCiAgICAgIGVuZAogICAgICBsb2NhbCB0cmFuc2Zvcm1lZAogICAgICBpZiBudW1fdmFsdWVzID09IDEgdGhlbgogICAgICAgIGxvY2FsIHZhbHVlID0gdmFsdWVzWzFdCiAgICAgICAgbG9jYWwgdCA9IG50eXBlKHZhbHVlKQogICAgICAgIGlmIHQgPT0gImRlY29yYXRlZCIgdGhlbgogICAgICAgICAgdmFsdWUgPSBzZWxmLnRyYW5zZm9ybS5zdGF0ZW1lbnQodmFsdWUpCiAgICAgICAgICB0ID0gbnR5cGUodmFsdWUpCiAgICAgICAgZW5kCiAgICAgICAgaWYgdHlwZXMuY2FzY2FkaW5nW3RdIHRoZW4KICAgICAgICAgIGxvY2FsIHJldAogICAgICAgICAgcmV0ID0gZnVuY3Rpb24oc3RtKQogICAgICAgICAgICBpZiBpc192YWx1ZShzdG0pIHRoZW4KICAgICAgICAgICAgICByZXR1cm4gewogICAgICAgICAgICAgICAgImFzc2lnbiIsCiAgICAgICAgICAgICAgICBuYW1lcywKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgc3RtCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgcmV0dXJuIHN0bQogICAgICAgICAgICBlbmQKICAgICAgICAgIGVuZAogICAgICAgICAgdHJhbnNmb3JtZWQgPSBidWlsZC5ncm91cCh7CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAiZGVjbGFyZSIsCiAgICAgICAgICAgICAgbmFtZXMKICAgICAgICAgICAgfSwKICAgICAgICAgICAgc2VsZi50cmFuc2Zvcm0uc3RhdGVtZW50KHZhbHVlLCByZXQsIG5vZGUpCiAgICAgICAgICB9KQogICAgICAgIGVuZAogICAgICBlbmQKICAgICAgbm9kZSA9IHRyYW5zZm9ybWVkIG9yIG5vZGUKICAgICAgaWYgZGVzdHJ1Y3R1cmUuaGFzX2Rlc3RydWN0dXJlKG5hbWVzKSB0aGVuCiAgICAgICAgcmV0dXJuIGRlc3RydWN0dXJlLnNwbGl0X2Fzc2lnbihzZWxmLCBub2RlKQogICAgICBlbmQKICAgICAgcmV0dXJuIG5vZGUKICAgIGVuZCwKICAgIGNvbnRpbnVlID0gZnVuY3Rpb24oc2VsZiwgbm9kZSkKICAgICAgbG9jYWwgY29udGludWVfbmFtZSA9IHNlbGY6c2VuZCgiY29udGludWUiKQogICAgICBpZiBub3QgKGNvbnRpbnVlX25hbWUpIHRoZW4KICAgICAgICBlcnJvcigiY29udGludWUgbXVzdCBiZSBpbnNpZGUgb2YgYSBsb29wIikKICAgICAgZW5kCiAgICAgIHJldHVybiBidWlsZC5ncm91cCh7CiAgICAgICAgYnVpbGQuYXNzaWduX29uZShjb250aW51ZV9uYW1lLCAidHJ1ZSIpLAogICAgICAgIHsKICAgICAgICAgICJicmVhayIKICAgICAgICB9CiAgICAgIH0pCiAgICBlbmQsCiAgICBleHBvcnQgPSBmdW5jdGlvbihzZWxmLCBub2RlKQogICAgICBpZiAjbm9kZSA+IDIgdGhlbgogICAgICAgIGlmIG5vZGVbMl0gPT0gImNsYXNzIiB0aGVuCiAgICAgICAgICBsb2NhbCBjbHMgPSBzbWFydF9ub2RlKG5vZGVbM10pCiAgICAgICAgICByZXR1cm4gYnVpbGQuZ3JvdXAoewogICAgICAgICAgICB7CiAgICAgICAgICAgICAgImV4cG9ydCIsCiAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgY2xzLm5hbWUKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0sCiAgICAgICAgICAgIGNscwogICAgICAgICAgfSkKICAgICAgICBlbHNlCiAgICAgICAgICByZXR1cm4gYnVpbGQuZ3JvdXAoewogICAgICAgICAgICB7CiAgICAgICAgICAgICAgImV4cG9ydCIsCiAgICAgICAgICAgICAgbm9kZVsyXQogICAgICAgICAgICB9LAogICAgICAgICAgICBidWlsZC5hc3NpZ24oewogICAgICAgICAgICAgIG5hbWVzID0gbm9kZVsyXSwKICAgICAgICAgICAgICB2YWx1ZXMgPSBub2RlWzNdCiAgICAgICAgICAgIH0pCiAgICAgICAgICB9KQogICAgICAgIGVuZAogICAgICBlbHNlCiAgICAgICAgcmV0dXJuIG5pbAogICAgICBlbmQKICAgIGVuZCwKICAgIHVwZGF0ZSA9IGZ1bmN0aW9uKHNlbGYsIG5vZGUpCiAgICAgIGxvY2FsIG5hbWUsIG9wLCBleHAgPSB1bnBhY2sobm9kZSwgMikKICAgICAgbG9jYWwgb3BfZmluYWwgPSBvcDptYXRjaCgiXiguKyk9JCIpCiAgICAgIGlmIG5vdCBvcF9maW5hbCB0aGVuCiAgICAgICAgZXJyb3IoIlVua25vd24gb3A6ICIgLi4gb3ApCiAgICAgIGVuZAogICAgICBpZiBub3QgKHZhbHVlX2lzX3Npbmd1bGFyKGV4cCkpIHRoZW4KICAgICAgICBleHAgPSB7CiAgICAgICAgICAicGFyZW5zIiwKICAgICAgICAgIGV4cAogICAgICAgIH0KICAgICAgZW5kCiAgICAgIHJldHVybiBidWlsZC5hc3NpZ25fb25lKG5hbWUsIHsKICAgICAgICAiZXhwIiwKICAgICAgICBuYW1lLAogICAgICAgIG9wX2ZpbmFsLAogICAgICAgIGV4cAogICAgICB9KQogICAgZW5kLAogICAgaW1wb3J0ID0gZnVuY3Rpb24oc2VsZiwgbm9kZSkKICAgICAgbG9jYWwgbmFtZXMsIHNvdXJjZSA9IHVucGFjayhub2RlLCAyKQogICAgICBsb2NhbCB0YWJsZV92YWx1ZXMKICAgICAgZG8KICAgICAgICBsb2NhbCBfYWNjdW1fMCA9IHsgfQogICAgICAgIGxvY2FsIF9sZW5fMCA9IDEKICAgICAgICBmb3IgX2luZGV4XzAgPSAxLCAjbmFtZXMgZG8KICAgICAgICAgIGxvY2FsIG5hbWUgPSBuYW1lc1tfaW5kZXhfMF0KICAgICAgICAgIGxvY2FsIGRlc3RfbmFtZQogICAgICAgICAgaWYgbnR5cGUobmFtZSkgPT0gImNvbG9uIiB0aGVuCiAgICAgICAgICAgIGRlc3RfbmFtZSA9IG5hbWVbMl0KICAgICAgICAgIGVsc2UKICAgICAgICAgICAgZGVzdF9uYW1lID0gbmFtZQogICAgICAgICAgZW5kCiAgICAgICAgICBsb2NhbCBfdmFsdWVfMCA9IHsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJrZXlfbGl0ZXJhbCIsCiAgICAgICAgICAgICAgbmFtZQogICAgICAgICAgICB9LAogICAgICAgICAgICBkZXN0X25hbWUKICAgICAgICAgIH0KICAgICAgICAgIF9hY2N1bV8wW19sZW5fMF0gPSBfdmFsdWVfMAogICAgICAgICAgX2xlbl8wID0gX2xlbl8wICsgMQogICAgICAgIGVuZAogICAgICAgIHRhYmxlX3ZhbHVlcyA9IF9hY2N1bV8wCiAgICAgIGVuZAogICAgICBsb2NhbCBkZXN0ID0gewogICAgICAgICJ0YWJsZSIsCiAgICAgICAgdGFibGVfdmFsdWVzCiAgICAgIH0KICAgICAgcmV0dXJuIHsKICAgICAgICAiYXNzaWduIiwKICAgICAgICB7CiAgICAgICAgICBkZXN0CiAgICAgICAgfSwKICAgICAgICB7CiAgICAgICAgICBzb3VyY2UKICAgICAgICB9LAogICAgICAgIFstMV0gPSBub2RlWy0xXQogICAgICB9CiAgICBlbmQsCiAgICBjb21wcmVoZW5zaW9uID0gZnVuY3Rpb24oc2VsZiwgbm9kZSwgYWN0aW9uKQogICAgICBsb2NhbCBleHAsIGNsYXVzZXMgPSB1bnBhY2sobm9kZSwgMikKICAgICAgYWN0aW9uID0gYWN0aW9uIG9yIGZ1bmN0aW9uKGV4cCkKICAgICAgICByZXR1cm4gewogICAgICAgICAgZXhwCiAgICAgICAgfQogICAgICBlbmQKICAgICAgcmV0dXJuIGNvbnN0cnVjdF9jb21wcmVoZW5zaW9uKGFjdGlvbihleHApLCBjbGF1c2VzKQogICAgZW5kLAogICAgWyJkbyJdID0gZnVuY3Rpb24oc2VsZiwgbm9kZSwgcmV0KQogICAgICBpZiByZXQgdGhlbgogICAgICAgIG5vZGVbMl0gPSB0cmFuc2Zvcm1fbGFzdF9zdG0obm9kZVsyXSwgcmV0KQogICAgICBlbmQKICAgICAgcmV0dXJuIG5vZGUKICAgIGVuZCwKICAgIGRlY29yYXRlZCA9IGZ1bmN0aW9uKHNlbGYsIG5vZGUpCiAgICAgIGxvY2FsIHN0bSwgZGVjID0gdW5wYWNrKG5vZGUsIDIpCiAgICAgIGxvY2FsIHdyYXBwZWQKICAgICAgbG9jYWwgX2V4cF8wID0gZGVjWzFdCiAgICAgIGlmICJpZiIgPT0gX2V4cF8wIHRoZW4KICAgICAgICBsb2NhbCBjb25kLCBmYWlsID0gdW5wYWNrKGRlYywgMikKICAgICAgICBpZiBmYWlsIHRoZW4KICAgICAgICAgIGZhaWwgPSB7CiAgICAgICAgICAgICJlbHNlIiwKICAgICAgICAgICAgewogICAgICAgICAgICAgIGZhaWwKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIGVuZAogICAgICAgIHdyYXBwZWQgPSB7CiAgICAgICAgICAiaWYiLAogICAgICAgICAgY29uZCwKICAgICAgICAgIHsKICAgICAgICAgICAgc3RtCiAgICAgICAgICB9LAogICAgICAgICAgZmFpbAogICAgICAgIH0KICAgICAgZWxzZWlmICJ1bmxlc3MiID09IF9leHBfMCB0aGVuCiAgICAgICAgd3JhcHBlZCA9IHsKICAgICAgICAgICJ1bmxlc3MiLAogICAgICAgICAgZGVjWzJdLAogICAgICAgICAgewogICAgICAgICAgICBzdG0KICAgICAgICAgIH0KICAgICAgICB9CiAgICAgIGVsc2VpZiAiY29tcHJlaGVuc2lvbiIgPT0gX2V4cF8wIHRoZW4KICAgICAgICB3cmFwcGVkID0gewogICAgICAgICAgImNvbXByZWhlbnNpb24iLAogICAgICAgICAgc3RtLAogICAgICAgICAgZGVjWzJdCiAgICAgICAgfQogICAgICBlbHNlCiAgICAgICAgd3JhcHBlZCA9IGVycm9yKCJVbmtub3duIGRlY29yYXRvciAiIC4uIGRlY1sxXSkKICAgICAgZW5kCiAgICAgIGlmIG50eXBlKHN0bSkgPT0gImFzc2lnbiIgdGhlbgogICAgICAgIHdyYXBwZWQgPSBidWlsZC5ncm91cCh7CiAgICAgICAgICBidWlsZC5kZWNsYXJlKHsKICAgICAgICAgICAgbmFtZXMgPSAoZnVuY3Rpb24oKQogICAgICAgICAgICAgIGxvY2FsIF9hY2N1bV8wID0geyB9CiAgICAgICAgICAgICAgbG9jYWwgX2xlbl8wID0gMQogICAgICAgICAgICAgIGxvY2FsIF9saXN0XzAgPSBzdG1bMl0KICAgICAgICAgICAgICBmb3IgX2luZGV4XzAgPSAxLCAjX2xpc3RfMCBkbwogICAgICAgICAgICAgICAgbG9jYWwgbmFtZSA9IF9saXN0XzBbX2luZGV4XzBdCiAgICAgICAgICAgICAgICBpZiBudHlwZShuYW1lKSA9PSAicmVmIiB0aGVuCiAgICAgICAgICAgICAgICAgIF9hY2N1bV8wW19sZW5fMF0gPSBuYW1lCiAgICAgICAgICAgICAgICAgIF9sZW5fMCA9IF9sZW5fMCArIDEKICAgICAgICAgICAgICAgIGVuZAogICAgICAgICAgICAgIGVuZAogICAgICAgICAgICAgIHJldHVybiBfYWNjdW1fMAogICAgICAgICAgICBlbmQpKCkKICAgICAgICAgIH0pLAogICAgICAgICAgd3JhcHBlZAogICAgICAgIH0pCiAgICAgIGVuZAogICAgICByZXR1cm4gd3JhcHBlZAogICAgZW5kLAogICAgdW5sZXNzID0gZnVuY3Rpb24oc2VsZiwgbm9kZSkKICAgICAgbG9jYWwgY2xhdXNlID0gbm9kZVsyXQogICAgICBpZiBudHlwZShjbGF1c2UpID09ICJhc3NpZ24iIHRoZW4KICAgICAgICBpZiBkZXN0cnVjdHVyZS5oYXNfZGVzdHJ1Y3R1cmUoY2xhdXNlWzJdKSB0aGVuCiAgICAgICAgICBlcnJvcigiZGVzdHJ1Y3R1cmUgbm90IGFsbG93ZWQgaW4gdW5sZXNzIGFzc2lnbm1lbnQiKQogICAgICAgIGVuZAogICAgICAgIHJldHVybiBidWlsZFsiZG8iXSh7CiAgICAgICAgICBjbGF1c2UsCiAgICAgICAgICB7CiAgICAgICAgICAgICJpZiIsCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAibm90IiwKICAgICAgICAgICAgICBjbGF1c2VbMl1bMV0KICAgICAgICAgICAgfSwKICAgICAgICAgICAgdW5wYWNrKG5vZGUsIDMpCiAgICAgICAgICB9CiAgICAgICAgfSkKICAgICAgZWxzZQogICAgICAgIHJldHVybiB7CiAgICAgICAgICAiaWYiLAogICAgICAgICAgewogICAgICAgICAgICAibm90IiwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJwYXJlbnMiLAogICAgICAgICAgICAgIGNsYXVzZQogICAgICAgICAgICB9CiAgICAgICAgICB9LAogICAgICAgICAgdW5wYWNrKG5vZGUsIDMpCiAgICAgICAgfQogICAgICBlbmQKICAgIGVuZCwKICAgIFsiaWYiXSA9IGZ1bmN0aW9uKHNlbGYsIG5vZGUsIHJldCkKICAgICAgaWYgbnR5cGUobm9kZVsyXSkgPT0gImFzc2lnbiIgdGhlbgogICAgICAgIGxvY2FsIGFzc2lnbiwgYm9keSA9IHVucGFjayhub2RlLCAyKQogICAgICAgIGlmIGRlc3RydWN0dXJlLmhhc19kZXN0cnVjdHVyZShhc3NpZ25bMl0pIHRoZW4KICAgICAgICAgIGxvY2FsIG5hbWUgPSBOYW1lUHJveHkoImRlcyIpCiAgICAgICAgICBib2R5ID0gewogICAgICAgICAgICBkZXN0cnVjdHVyZS5idWlsZF9hc3NpZ24oc2VsZiwgYXNzaWduWzJdWzFdLCBuYW1lKSwKICAgICAgICAgICAgYnVpbGQuZ3JvdXAobm9kZVszXSkKICAgICAgICAgIH0KICAgICAgICAgIHJldHVybiBidWlsZFsiZG8iXSh7CiAgICAgICAgICAgIGJ1aWxkLmFzc2lnbl9vbmUobmFtZSwgYXNzaWduWzNdWzFdKSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJpZiIsCiAgICAgICAgICAgICAgbmFtZSwKICAgICAgICAgICAgICBib2R5LAogICAgICAgICAgICAgIHVucGFjayhub2RlLCA0KQogICAgICAgICAgICB9CiAgICAgICAgICB9KQogICAgICAgIGVsc2UKICAgICAgICAgIGxvY2FsIG5hbWUgPSBhc3NpZ25bMl1bMV0KICAgICAgICAgIHJldHVybiBidWlsZFsiZG8iXSh7CiAgICAgICAgICAgIGFzc2lnbiwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJpZiIsCiAgICAgICAgICAgICAgbmFtZSwKICAgICAgICAgICAgICB1bnBhY2sobm9kZSwgMykKICAgICAgICAgICAgfQogICAgICAgICAgfSkKICAgICAgICBlbmQKICAgICAgZW5kCiAgICAgIG5vZGUgPSBleHBhbmRfZWxzZWlmX2Fzc2lnbihub2RlKQogICAgICBpZiByZXQgdGhlbgogICAgICAgIHNtYXJ0X25vZGUobm9kZSkKICAgICAgICBub2RlWyd0aGVuJ10gPSB0cmFuc2Zvcm1fbGFzdF9zdG0obm9kZVsndGhlbiddLCByZXQpCiAgICAgICAgZm9yIGkgPSA0LCAjbm9kZSBkbwogICAgICAgICAgbG9jYWwgY2FzZSA9IG5vZGVbaV0KICAgICAgICAgIGxvY2FsIGJvZHlfaWR4ID0gI25vZGVbaV0KICAgICAgICAgIGNhc2VbYm9keV9pZHhdID0gdHJhbnNmb3JtX2xhc3Rfc3RtKGNhc2VbYm9keV9pZHhdLCByZXQpCiAgICAgICAgZW5kCiAgICAgIGVuZAogICAgICByZXR1cm4gbm9kZQogICAgZW5kLAogICAgd2l0aCA9IGZ1bmN0aW9uKHNlbGYsIG5vZGUsIHJldCkKICAgICAgbG9jYWwgZXhwLCBibG9jayA9IHVucGFjayhub2RlLCAyKQogICAgICBsb2NhbCBjb3B5X3Njb3BlID0gdHJ1ZQogICAgICBsb2NhbCBzY29wZV9uYW1lLCBuYW1lZF9hc3NpZ24KICAgICAgZG8KICAgICAgICBsb2NhbCBsYXN0ID0gbGFzdF9zdG0oYmxvY2spCiAgICAgICAgaWYgbGFzdCB0aGVuCiAgICAgICAgICBpZiB0eXBlcy50ZXJtaW5hdGluZ1tudHlwZShsYXN0KV0gdGhlbgogICAgICAgICAgICByZXQgPSBmYWxzZQogICAgICAgICAgZW5kCiAgICAgICAgZW5kCiAgICAgIGVuZAogICAgICBpZiBudHlwZShleHApID09ICJhc3NpZ24iIHRoZW4KICAgICAgICBsb2NhbCBuYW1lcywgdmFsdWVzID0gdW5wYWNrKGV4cCwgMikKICAgICAgICBsb2NhbCBmaXJzdF9uYW1lID0gbmFtZXNbMV0KICAgICAgICBpZiBudHlwZShmaXJzdF9uYW1lKSA9PSAicmVmIiB0aGVuCiAgICAgICAgICBzY29wZV9uYW1lID0gZmlyc3RfbmFtZQogICAgICAgICAgbmFtZWRfYXNzaWduID0gZXhwCiAgICAgICAgICBleHAgPSB2YWx1ZXNbMV0KICAgICAgICAgIGNvcHlfc2NvcGUgPSBmYWxzZQogICAgICAgIGVsc2UKICAgICAgICAgIHNjb3BlX25hbWUgPSBOYW1lUHJveHkoIndpdGgiKQogICAgICAgICAgZXhwID0gdmFsdWVzWzFdCiAgICAgICAgICB2YWx1ZXNbMV0gPSBzY29wZV9uYW1lCiAgICAgICAgICBuYW1lZF9hc3NpZ24gPSB7CiAgICAgICAgICAgICJhc3NpZ24iLAogICAgICAgICAgICBuYW1lcywKICAgICAgICAgICAgdmFsdWVzCiAgICAgICAgICB9CiAgICAgICAgZW5kCiAgICAgIGVsc2VpZiBzZWxmOmlzX2xvY2FsKGV4cCkgdGhlbgogICAgICAgIHNjb3BlX25hbWUgPSBleHAKICAgICAgICBjb3B5X3Njb3BlID0gZmFsc2UKICAgICAgZW5kCiAgICAgIHNjb3BlX25hbWUgPSBzY29wZV9uYW1lIG9yIE5hbWVQcm94eSgid2l0aCIpCiAgICAgIGxvY2FsIG91dCA9IGJ1aWxkWyJkbyJdKHsKICAgICAgICBjb3B5X3Njb3BlIGFuZCBidWlsZC5hc3NpZ25fb25lKHNjb3BlX25hbWUsIGV4cCkgb3IgTk9PUCwKICAgICAgICBuYW1lZF9hc3NpZ24gb3IgTk9PUCwKICAgICAgICBSdW4oZnVuY3Rpb24oc2VsZikKICAgICAgICAgIHJldHVybiBzZWxmOnNldCgic2NvcGVfdmFyIiwgc2NvcGVfbmFtZSkKICAgICAgICBlbmQpLAogICAgICAgIHVucGFjayhibG9jaykKICAgICAgfSkKICAgICAgaWYgcmV0IHRoZW4KICAgICAgICB0YWJsZS5pbnNlcnQob3V0WzJdLCByZXQoc2NvcGVfbmFtZSkpCiAgICAgIGVuZAogICAgICByZXR1cm4gb3V0CiAgICBlbmQsCiAgICBmb3JlYWNoID0gZnVuY3Rpb24oc2VsZiwgbm9kZSwgXykKICAgICAgc21hcnRfbm9kZShub2RlKQogICAgICBsb2NhbCBzb3VyY2UgPSB1bnBhY2sobm9kZS5pdGVyKQogICAgICBsb2NhbCBkZXN0cnVjdHVyZXMgPSB7IH0KICAgICAgZG8KICAgICAgICBsb2NhbCBfYWNjdW1fMCA9IHsgfQogICAgICAgIGxvY2FsIF9sZW5fMCA9IDEKICAgICAgICBmb3IgaSwgbmFtZSBpbiBpcGFpcnMobm9kZS5uYW1lcykgZG8KICAgICAgICAgIGlmIG50eXBlKG5hbWUpID09ICJ0YWJsZSIgdGhlbgogICAgICAgICAgICBkbwogICAgICAgICAgICAgIGxvY2FsIHByb3h5ID0gTmFtZVByb3h5KCJkZXMiKQogICAgICAgICAgICAgIGluc2VydChkZXN0cnVjdHVyZXMsIGRlc3RydWN0dXJlLmJ1aWxkX2Fzc2lnbihzZWxmLCBuYW1lLCBwcm94eSkpCiAgICAgICAgICAgICAgX2FjY3VtXzBbX2xlbl8wXSA9IHByb3h5CiAgICAgICAgICAgIGVuZAogICAgICAgICAgZWxzZQogICAgICAgICAgICBfYWNjdW1fMFtfbGVuXzBdID0gbmFtZQogICAgICAgICAgZW5kCiAgICAgICAgICBfbGVuXzAgPSBfbGVuXzAgKyAxCiAgICAgICAgZW5kCiAgICAgICAgbm9kZS5uYW1lcyA9IF9hY2N1bV8wCiAgICAgIGVuZAogICAgICBpZiBuZXh0KGRlc3RydWN0dXJlcykgdGhlbgogICAgICAgIGluc2VydChkZXN0cnVjdHVyZXMsIGJ1aWxkLmdyb3VwKG5vZGUuYm9keSkpCiAgICAgICAgbm9kZS5ib2R5ID0gZGVzdHJ1Y3R1cmVzCiAgICAgIGVuZAogICAgICBpZiBudHlwZShzb3VyY2UpID09ICJ1bnBhY2siIHRoZW4KICAgICAgICBsb2NhbCBsaXN0ID0gc291cmNlWzJdCiAgICAgICAgbG9jYWwgaW5kZXhfbmFtZSA9IE5hbWVQcm94eSgiaW5kZXgiKQogICAgICAgIGxvY2FsIGxpc3RfbmFtZSA9IHNlbGY6aXNfbG9jYWwobGlzdCkgYW5kIGxpc3Qgb3IgTmFtZVByb3h5KCJsaXN0IikKICAgICAgICBsb2NhbCBzbGljZV92YXIgPSBuaWwKICAgICAgICBsb2NhbCBib3VuZHMKICAgICAgICBpZiBpc19zbGljZShsaXN0KSB0aGVuCiAgICAgICAgICBsb2NhbCBzbGljZSA9IGxpc3RbI2xpc3RdCiAgICAgICAgICB0YWJsZS5yZW1vdmUobGlzdCkKICAgICAgICAgIHRhYmxlLnJlbW92ZShzbGljZSwgMSkKICAgICAgICAgIGlmIHNlbGY6aXNfbG9jYWwobGlzdCkgdGhlbgogICAgICAgICAgICBsaXN0X25hbWUgPSBsaXN0CiAgICAgICAgICBlbmQKICAgICAgICAgIGlmIHNsaWNlWzJdIGFuZCBzbGljZVsyXSB+PSAiIiB0aGVuCiAgICAgICAgICAgIGxvY2FsIG1heF90bXBfbmFtZSA9IE5hbWVQcm94eSgibWF4IikKICAgICAgICAgICAgc2xpY2VfdmFyID0gYnVpbGQuYXNzaWduX29uZShtYXhfdG1wX25hbWUsIHNsaWNlWzJdKQogICAgICAgICAgICBzbGljZVsyXSA9IHsKICAgICAgICAgICAgICAiZXhwIiwKICAgICAgICAgICAgICBtYXhfdG1wX25hbWUsCiAgICAgICAgICAgICAgIjwiLAogICAgICAgICAgICAgIDAsCiAgICAgICAgICAgICAgImFuZCIsCiAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgImxlbmd0aCIsCiAgICAgICAgICAgICAgICBsaXN0X25hbWUKICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICIrIiwKICAgICAgICAgICAgICBtYXhfdG1wX25hbWUsCiAgICAgICAgICAgICAgIm9yIiwKICAgICAgICAgICAgICBtYXhfdG1wX25hbWUKICAgICAgICAgICAgfQogICAgICAgICAgZWxzZQogICAgICAgICAgICBzbGljZVsyXSA9IHsKICAgICAgICAgICAgICAibGVuZ3RoIiwKICAgICAgICAgICAgICBsaXN0X25hbWUKICAgICAgICAgICAgfQogICAgICAgICAgZW5kCiAgICAgICAgICBib3VuZHMgPSBzbGljZQogICAgICAgIGVsc2UKICAgICAgICAgIGJvdW5kcyA9IHsKICAgICAgICAgICAgMSwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJsZW5ndGgiLAogICAgICAgICAgICAgIGxpc3RfbmFtZQogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICAgZW5kCiAgICAgICAgbG9jYWwgbmFtZXMKICAgICAgICBkbwogICAgICAgICAgbG9jYWwgX2FjY3VtXzAgPSB7IH0KICAgICAgICAgIGxvY2FsIF9sZW5fMCA9IDEKICAgICAgICAgIGxvY2FsIF9saXN0XzAgPSBub2RlLm5hbWVzCiAgICAgICAgICBmb3IgX2luZGV4XzAgPSAxLCAjX2xpc3RfMCBkbwogICAgICAgICAgICBsb2NhbCBuID0gX2xpc3RfMFtfaW5kZXhfMF0KICAgICAgICAgICAgX2FjY3VtXzBbX2xlbl8wXSA9IGlzX25hbWVfcHJveHkobikgYW5kIG4gb3IgTG9jYWxOYW1lKG4pIG9yIG4KICAgICAgICAgICAgX2xlbl8wID0gX2xlbl8wICsgMQogICAgICAgICAgZW5kCiAgICAgICAgICBuYW1lcyA9IF9hY2N1bV8wCiAgICAgICAgZW5kCiAgICAgICAgcmV0dXJuIGJ1aWxkLmdyb3VwKHsKICAgICAgICAgIGxpc3RfbmFtZSB+PSBsaXN0IGFuZCBidWlsZC5hc3NpZ25fb25lKGxpc3RfbmFtZSwgbGlzdCkgb3IgTk9PUCwKICAgICAgICAgIHNsaWNlX3ZhciBvciBOT09QLAogICAgICAgICAgYnVpbGRbImZvciJdKHsKICAgICAgICAgICAgbmFtZSA9IGluZGV4X25hbWUsCiAgICAgICAgICAgIGJvdW5kcyA9IGJvdW5kcywKICAgICAgICAgICAgYm9keSA9IHsKICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiYXNzaWduIiwKICAgICAgICAgICAgICAgIG5hbWVzLAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICBOYW1lUHJveHkuaW5kZXgobGlzdF9uYW1lLCBpbmRleF9uYW1lKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgYnVpbGQuZ3JvdXAobm9kZS5ib2R5KQogICAgICAgICAgICB9CiAgICAgICAgICB9KQogICAgICAgIH0pCiAgICAgIGVuZAogICAgICBub2RlLmJvZHkgPSB3aXRoX2NvbnRpbnVlX2xpc3RlbmVyKG5vZGUuYm9keSkKICAgIGVuZCwKICAgIFsid2hpbGUiXSA9IGZ1bmN0aW9uKHNlbGYsIG5vZGUpCiAgICAgIHNtYXJ0X25vZGUobm9kZSkKICAgICAgbm9kZS5ib2R5ID0gd2l0aF9jb250aW51ZV9saXN0ZW5lcihub2RlLmJvZHkpCiAgICBlbmQsCiAgICBbImZvciJdID0gZnVuY3Rpb24oc2VsZiwgbm9kZSkKICAgICAgc21hcnRfbm9kZShub2RlKQogICAgICBub2RlLmJvZHkgPSB3aXRoX2NvbnRpbnVlX2xpc3RlbmVyKG5vZGUuYm9keSkKICAgIGVuZCwKICAgIHN3aXRjaCA9IGZ1bmN0aW9uKHNlbGYsIG5vZGUsIHJldCkKICAgICAgbG9jYWwgZXhwLCBjb25kcyA9IHVucGFjayhub2RlLCAyKQogICAgICBsb2NhbCBleHBfbmFtZSA9IE5hbWVQcm94eSgiZXhwIikKICAgICAgbG9jYWwgY29udmVydF9jb25kCiAgICAgIGNvbnZlcnRfY29uZCA9IGZ1bmN0aW9uKGNvbmQpCiAgICAgICAgbG9jYWwgdCwgY2FzZV9leHBzLCBib2R5ID0gdW5wYWNrKGNvbmQpCiAgICAgICAgbG9jYWwgb3V0ID0geyB9CiAgICAgICAgaW5zZXJ0KG91dCwgdCA9PSAiY2FzZSIgYW5kICJlbHNlaWYiIG9yICJlbHNlIikKICAgICAgICBpZiB0IH49ICJlbHNlIiB0aGVuCiAgICAgICAgICBsb2NhbCBjb25kX2V4cCA9IHsgfQogICAgICAgICAgZm9yIGksIGNhc2UgaW4gaXBhaXJzKGNhc2VfZXhwcykgZG8KICAgICAgICAgICAgaWYgaSA9PSAxIHRoZW4KICAgICAgICAgICAgICBpbnNlcnQoY29uZF9leHAsICJleHAiKQogICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgaW5zZXJ0KGNvbmRfZXhwLCAib3IiKQogICAgICAgICAgICBlbmQKICAgICAgICAgICAgaWYgbm90ICh2YWx1ZV9pc19zaW5ndWxhcihjYXNlKSkgdGhlbgogICAgICAgICAgICAgIGNhc2UgPSB7CiAgICAgICAgICAgICAgICAicGFyZW5zIiwKICAgICAgICAgICAgICAgIGNhc2UKICAgICAgICAgICAgICB9CiAgICAgICAgICAgIGVuZAogICAgICAgICAgICBpbnNlcnQoY29uZF9leHAsIHsKICAgICAgICAgICAgICAiZXhwIiwKICAgICAgICAgICAgICBjYXNlLAogICAgICAgICAgICAgICI9PSIsCiAgICAgICAgICAgICAgZXhwX25hbWUKICAgICAgICAgICAgfSkKICAgICAgICAgIGVuZAogICAgICAgICAgaW5zZXJ0KG91dCwgY29uZF9leHApCiAgICAgICAgZWxzZQogICAgICAgICAgYm9keSA9IGNhc2VfZXhwcwogICAgICAgIGVuZAogICAgICAgIGlmIHJldCB0aGVuCiAgICAgICAgICBib2R5ID0gdHJhbnNmb3JtX2xhc3Rfc3RtKGJvZHksIHJldCkKICAgICAgICBlbmQKICAgICAgICBpbnNlcnQob3V0LCBib2R5KQogICAgICAgIHJldHVybiBvdXQKICAgICAgZW5kCiAgICAgIGxvY2FsIGZpcnN0ID0gdHJ1ZQogICAgICBsb2NhbCBpZl9zdG0gPSB7CiAgICAgICAgImlmIgogICAgICB9CiAgICAgIGZvciBfaW5kZXhfMCA9IDEsICNjb25kcyBkbwogICAgICAgIGxvY2FsIGNvbmQgPSBjb25kc1tfaW5kZXhfMF0KICAgICAgICBsb2NhbCBpZl9jb25kID0gY29udmVydF9jb25kKGNvbmQpCiAgICAgICAgaWYgZmlyc3QgdGhlbgogICAgICAgICAgZmlyc3QgPSBmYWxzZQogICAgICAgICAgaW5zZXJ0KGlmX3N0bSwgaWZfY29uZFsyXSkKICAgICAgICAgIGluc2VydChpZl9zdG0sIGlmX2NvbmRbM10pCiAgICAgICAgZWxzZQogICAgICAgICAgaW5zZXJ0KGlmX3N0bSwgaWZfY29uZCkKICAgICAgICBlbmQKICAgICAgZW5kCiAgICAgIHJldHVybiBidWlsZC5ncm91cCh7CiAgICAgICAgYnVpbGQuYXNzaWduX29uZShleHBfbmFtZSwgZXhwKSwKICAgICAgICBpZl9zdG0KICAgICAgfSkKICAgIGVuZCwKICAgIGNsYXNzID0gcmVxdWlyZSgibW9vbnNjcmlwdC50cmFuc2Zvcm0uY2xhc3MiKQogIH0pCiAgCmVuZApwYWNrYWdlLnByZWxvYWRbJ21vb25zY3JpcHQudHJhbnNmb3JtLmNsYXNzJ10gPSBmdW5jdGlvbigpCiAgbG9jYWwgTmFtZVByb3h5LCBMb2NhbE5hbWUKICBkbwogICAgbG9jYWwgX29ial8wID0gcmVxdWlyZSgibW9vbnNjcmlwdC50cmFuc2Zvcm0ubmFtZXMiKQogICAgTmFtZVByb3h5LCBMb2NhbE5hbWUgPSBfb2JqXzAuTmFtZVByb3h5LCBfb2JqXzAuTG9jYWxOYW1lCiAgZW5kCiAgbG9jYWwgUnVuCiAgUnVuID0gcmVxdWlyZSgibW9vbnNjcmlwdC50cmFuc2Zvcm0uc3RhdGVtZW50cyIpLlJ1bgogIGxvY2FsIENPTlNUUlVDVE9SX05BTUUgPSAibmV3IgogIGxvY2FsIGluc2VydAogIGluc2VydCA9IHRhYmxlLmluc2VydAogIGxvY2FsIGJ1aWxkLCBudHlwZSwgTk9PUAogIGRvCiAgICBsb2NhbCBfb2JqXzAgPSByZXF1aXJlKCJtb29uc2NyaXB0LnR5cGVzIikKICAgIGJ1aWxkLCBudHlwZSwgTk9PUCA9IF9vYmpfMC5idWlsZCwgX29ial8wLm50eXBlLCBfb2JqXzAuTk9PUAogIGVuZAogIGxvY2FsIHVucGFjawogIHVucGFjayA9IHJlcXVpcmUoIm1vb25zY3JpcHQudXRpbCIpLnVucGFjawogIGxvY2FsIHRyYW5zZm9ybV9zdXBlcgogIHRyYW5zZm9ybV9zdXBlciA9IGZ1bmN0aW9uKGNsc19uYW1lLCBvbl9iYXNlLCBibG9jaywgY2hhaW4pCiAgICBpZiBvbl9iYXNlID09IG5pbCB0aGVuCiAgICAgIG9uX2Jhc2UgPSB0cnVlCiAgICBlbmQKICAgIGxvY2FsIHJlbGF0aXZlX3BhcmVudCA9IHsKICAgICAgImNoYWluIiwKICAgICAgY2xzX25hbWUsCiAgICAgIHsKICAgICAgICAiZG90IiwKICAgICAgICAiX19wYXJlbnQiCiAgICAgIH0KICAgIH0KICAgIGlmIG5vdCAoY2hhaW4pIHRoZW4KICAgICAgcmV0dXJuIHJlbGF0aXZlX3BhcmVudAogICAgZW5kCiAgICBsb2NhbCBjaGFpbl90YWlsID0gewogICAgICB1bnBhY2soY2hhaW4sIDMpCiAgICB9CiAgICBsb2NhbCBoZWFkID0gY2hhaW5fdGFpbFsxXQogICAgaWYgaGVhZCA9PSBuaWwgdGhlbgogICAgICByZXR1cm4gcmVsYXRpdmVfcGFyZW50CiAgICBlbmQKICAgIGxvY2FsIG5ld19jaGFpbiA9IHJlbGF0aXZlX3BhcmVudAogICAgbG9jYWwgX2V4cF8wID0gaGVhZFsxXQogICAgaWYgImNhbGwiID09IF9leHBfMCB0aGVuCiAgICAgIGlmIG9uX2Jhc2UgdGhlbgogICAgICAgIGluc2VydChuZXdfY2hhaW4sIHsKICAgICAgICAgICJkb3QiLAogICAgICAgICAgIl9fYmFzZSIKICAgICAgICB9KQogICAgICBlbmQKICAgICAgbG9jYWwgY2FsbGluZ19uYW1lID0gYmxvY2s6Z2V0KCJjdXJyZW50X21ldGhvZCIpCiAgICAgIGFzc2VydChjYWxsaW5nX25hbWUsICJtaXNzaW5nIGNhbGxpbmcgbmFtZSIpCiAgICAgIGNoYWluX3RhaWxbMV0gPSB7CiAgICAgICAgImNhbGwiLAogICAgICAgIHsKICAgICAgICAgICJzZWxmIiwKICAgICAgICAgIHVucGFjayhoZWFkWzJdKQogICAgICAgIH0KICAgICAgfQogICAgICBpZiBudHlwZShjYWxsaW5nX25hbWUpID09ICJrZXlfbGl0ZXJhbCIgdGhlbgogICAgICAgIGluc2VydChuZXdfY2hhaW4sIHsKICAgICAgICAgICJkb3QiLAogICAgICAgICAgY2FsbGluZ19uYW1lWzJdCiAgICAgICAgfSkKICAgICAgZWxzZQogICAgICAgIGluc2VydChuZXdfY2hhaW4sIHsKICAgICAgICAgICJpbmRleCIsCiAgICAgICAgICBjYWxsaW5nX25hbWUKICAgICAgICB9KQogICAgICBlbmQKICAgIGVsc2VpZiAiY29sb24iID09IF9leHBfMCB0aGVuCiAgICAgIGxvY2FsIGNhbGwgPSBjaGFpbl90YWlsWzJdCiAgICAgIGlmIGNhbGwgYW5kIGNhbGxbMV0gPT0gImNhbGwiIHRoZW4KICAgICAgICBjaGFpbl90YWlsWzFdID0gewogICAgICAgICAgImRvdCIsCiAgICAgICAgICBoZWFkWzJdCiAgICAgICAgfQogICAgICAgIGNoYWluX3RhaWxbMl0gPSB7CiAgICAgICAgICAiY2FsbCIsCiAgICAgICAgICB7CiAgICAgICAgICAgICJzZWxmIiwKICAgICAgICAgICAgdW5wYWNrKGNhbGxbMl0pCiAgICAgICAgICB9CiAgICAgICAgfQogICAgICBlbmQKICAgIGVuZAogICAgZm9yIF9pbmRleF8wID0gMSwgI2NoYWluX3RhaWwgZG8KICAgICAgbG9jYWwgaXRlbSA9IGNoYWluX3RhaWxbX2luZGV4XzBdCiAgICAgIGluc2VydChuZXdfY2hhaW4sIGl0ZW0pCiAgICBlbmQKICAgIHJldHVybiBuZXdfY2hhaW4KICBlbmQKICBsb2NhbCBzdXBlcl9zY29wZQogIHN1cGVyX3Njb3BlID0gZnVuY3Rpb24odmFsdWUsIHQsIGtleSkKICAgIGxvY2FsIHByZXZfbWV0aG9kCiAgICByZXR1cm4gewogICAgICAic2NvcGVkIiwKICAgICAgUnVuKGZ1bmN0aW9uKHNlbGYpCiAgICAgICAgcHJldl9tZXRob2QgPSBzZWxmOmdldCgiY3VycmVudF9tZXRob2QiKQogICAgICAgIHNlbGY6c2V0KCJjdXJyZW50X21ldGhvZCIsIGtleSkKICAgICAgICByZXR1cm4gc2VsZjpzZXQoInN1cGVyIiwgdCkKICAgICAgZW5kKSwKICAgICAgdmFsdWUsCiAgICAgIFJ1bihmdW5jdGlvbihzZWxmKQogICAgICAgIHJldHVybiBzZWxmOnNldCgiY3VycmVudF9tZXRob2QiLCBwcmV2X21ldGhvZCkKICAgICAgZW5kKQogICAgfQogIGVuZAogIHJldHVybiBmdW5jdGlvbihzZWxmLCBub2RlLCByZXQsIHBhcmVudF9hc3NpZ24pCiAgICBsb2NhbCBuYW1lLCBwYXJlbnRfdmFsLCBib2R5ID0gdW5wYWNrKG5vZGUsIDIpCiAgICBpZiBwYXJlbnRfdmFsID09ICIiIHRoZW4KICAgICAgcGFyZW50X3ZhbCA9IG5pbAogICAgZW5kCiAgICBsb2NhbCBwYXJlbnRfY2xzX25hbWUgPSBOYW1lUHJveHkoInBhcmVudCIpCiAgICBsb2NhbCBiYXNlX25hbWUgPSBOYW1lUHJveHkoImJhc2UiKQogICAgbG9jYWwgc2VsZl9uYW1lID0gTmFtZVByb3h5KCJzZWxmIikKICAgIGxvY2FsIGNsc19uYW1lID0gTmFtZVByb3h5KCJjbGFzcyIpCiAgICBsb2NhbCBjbHNfaW5zdGFuY2Vfc3VwZXIKICAgIGNsc19pbnN0YW5jZV9zdXBlciA9IGZ1bmN0aW9uKC4uLikKICAgICAgcmV0dXJuIHRyYW5zZm9ybV9zdXBlcihjbHNfbmFtZSwgdHJ1ZSwgLi4uKQogICAgZW5kCiAgICBsb2NhbCBjbHNfc3VwZXIKICAgIGNsc19zdXBlciA9IGZ1bmN0aW9uKC4uLikKICAgICAgcmV0dXJuIHRyYW5zZm9ybV9zdXBlcihjbHNfbmFtZSwgZmFsc2UsIC4uLikKICAgIGVuZAogICAgbG9jYWwgc3RhdGVtZW50cyA9IHsgfQogICAgbG9jYWwgcHJvcGVydGllcyA9IHsgfQogICAgZm9yIF9pbmRleF8wID0gMSwgI2JvZHkgZG8KICAgICAgbG9jYWwgaXRlbSA9IGJvZHlbX2luZGV4XzBdCiAgICAgIGxvY2FsIF9leHBfMCA9IGl0ZW1bMV0KICAgICAgaWYgInN0bSIgPT0gX2V4cF8wIHRoZW4KICAgICAgICBpbnNlcnQoc3RhdGVtZW50cywgaXRlbVsyXSkKICAgICAgZWxzZWlmICJwcm9wcyIgPT0gX2V4cF8wIHRoZW4KICAgICAgICBmb3IgX2luZGV4XzEgPSAyLCAjaXRlbSBkbwogICAgICAgICAgbG9jYWwgdHVwbGUgPSBpdGVtW19pbmRleF8xXQogICAgICAgICAgaWYgbnR5cGUodHVwbGVbMV0pID09ICJzZWxmIiB0aGVuCiAgICAgICAgICAgIGxvY2FsIGssIHYKICAgICAgICAgICAgaywgdiA9IHR1cGxlWzFdLCB0dXBsZVsyXQogICAgICAgICAgICB2ID0gc3VwZXJfc2NvcGUodiwgY2xzX3N1cGVyLCB7CiAgICAgICAgICAgICAgImtleV9saXRlcmFsIiwKICAgICAgICAgICAgICBrWzJdCiAgICAgICAgICAgIH0pCiAgICAgICAgICAgIGluc2VydChzdGF0ZW1lbnRzLCBidWlsZC5hc3NpZ25fb25lKGssIHYpKQogICAgICAgICAgZWxzZQogICAgICAgICAgICBpbnNlcnQocHJvcGVydGllcywgdHVwbGUpCiAgICAgICAgICBlbmQKICAgICAgICBlbmQKICAgICAgZW5kCiAgICBlbmQKICAgIGxvY2FsIGNvbnN0cnVjdG9yCiAgICBkbwogICAgICBsb2NhbCBfYWNjdW1fMCA9IHsgfQogICAgICBsb2NhbCBfbGVuXzAgPSAxCiAgICAgIGZvciBfaW5kZXhfMCA9IDEsICNwcm9wZXJ0aWVzIGRvCiAgICAgICAgbG9jYWwgX2NvbnRpbnVlXzAgPSBmYWxzZQogICAgICAgIHJlcGVhdAogICAgICAgICAgbG9jYWwgdHVwbGUgPSBwcm9wZXJ0aWVzW19pbmRleF8wXQogICAgICAgICAgbG9jYWwga2V5ID0gdHVwbGVbMV0KICAgICAgICAgIGxvY2FsIF92YWx1ZV8wCiAgICAgICAgICBpZiBrZXlbMV0gPT0gImtleV9saXRlcmFsIiBhbmQga2V5WzJdID09IENPTlNUUlVDVE9SX05BTUUgdGhlbgogICAgICAgICAgICBjb25zdHJ1Y3RvciA9IHR1cGxlWzJdCiAgICAgICAgICAgIF9jb250aW51ZV8wID0gdHJ1ZQogICAgICAgICAgICBicmVhawogICAgICAgICAgZWxzZQogICAgICAgICAgICBsb2NhbCB2YWwKICAgICAgICAgICAga2V5LCB2YWwgPSB0dXBsZVsxXSwgdHVwbGVbMl0KICAgICAgICAgICAgX3ZhbHVlXzAgPSB7CiAgICAgICAgICAgICAga2V5LAogICAgICAgICAgICAgIHN1cGVyX3Njb3BlKHZhbCwgY2xzX2luc3RhbmNlX3N1cGVyLCBrZXkpCiAgICAgICAgICAgIH0KICAgICAgICAgIGVuZAogICAgICAgICAgX2FjY3VtXzBbX2xlbl8wXSA9IF92YWx1ZV8wCiAgICAgICAgICBfbGVuXzAgPSBfbGVuXzAgKyAxCiAgICAgICAgICBfY29udGludWVfMCA9IHRydWUKICAgICAgICB1bnRpbCB0cnVlCiAgICAgICAgaWYgbm90IF9jb250aW51ZV8wIHRoZW4KICAgICAgICAgIGJyZWFrCiAgICAgICAgZW5kCiAgICAgIGVuZAogICAgICBwcm9wZXJ0aWVzID0gX2FjY3VtXzAKICAgIGVuZAogICAgaWYgbm90IChjb25zdHJ1Y3RvcikgdGhlbgogICAgICBpZiBwYXJlbnRfdmFsIHRoZW4KICAgICAgICBjb25zdHJ1Y3RvciA9IGJ1aWxkLmZuZGVmKHsKICAgICAgICAgIGFyZ3MgPSB7CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAiLi4uIgogICAgICAgICAgICB9CiAgICAgICAgICB9LAogICAgICAgICAgYXJyb3cgPSAiZmF0IiwKICAgICAgICAgIGJvZHkgPSB7CiAgICAgICAgICAgIGJ1aWxkLmNoYWluKHsKICAgICAgICAgICAgICBiYXNlID0gInN1cGVyIiwKICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAiY2FsbCIsCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICIuLi4iCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KQogICAgICAgICAgfQogICAgICAgIH0pCiAgICAgIGVsc2UKICAgICAgICBjb25zdHJ1Y3RvciA9IGJ1aWxkLmZuZGVmKCkKICAgICAgZW5kCiAgICBlbmQKICAgIGxvY2FsIHJlYWxfbmFtZSA9IG5hbWUgb3IgcGFyZW50X2Fzc2lnbiBhbmQgcGFyZW50X2Fzc2lnblsyXVsxXQogICAgbG9jYWwgX2V4cF8wID0gbnR5cGUocmVhbF9uYW1lKQogICAgaWYgImNoYWluIiA9PSBfZXhwXzAgdGhlbgogICAgICBsb2NhbCBsYXN0ID0gcmVhbF9uYW1lWyNyZWFsX25hbWVdCiAgICAgIGxvY2FsIF9leHBfMSA9IG50eXBlKGxhc3QpCiAgICAgIGlmICJkb3QiID09IF9leHBfMSB0aGVuCiAgICAgICAgcmVhbF9uYW1lID0gewogICAgICAgICAgInN0cmluZyIsCiAgICAgICAgICAnIicsCiAgICAgICAgICBsYXN0WzJdCiAgICAgICAgfQogICAgICBlbHNlaWYgImluZGV4IiA9PSBfZXhwXzEgdGhlbgogICAgICAgIHJlYWxfbmFtZSA9IGxhc3RbMl0KICAgICAgZWxzZQogICAgICAgIHJlYWxfbmFtZSA9ICJuaWwiCiAgICAgIGVuZAogICAgZWxzZWlmICJuaWwiID09IF9leHBfMCB0aGVuCiAgICAgIHJlYWxfbmFtZSA9ICJuaWwiCiAgICBlbHNlCiAgICAgIGxvY2FsIG5hbWVfdCA9IHR5cGUocmVhbF9uYW1lKQogICAgICBsb2NhbCBmbGF0dGVuZWRfbmFtZQogICAgICBpZiBuYW1lX3QgPT0gInN0cmluZyIgdGhlbgogICAgICAgIGZsYXR0ZW5lZF9uYW1lID0gcmVhbF9uYW1lCiAgICAgIGVsc2VpZiBuYW1lX3QgPT0gInRhYmxlIiBhbmQgcmVhbF9uYW1lWzFdID09ICJyZWYiIHRoZW4KICAgICAgICBmbGF0dGVuZWRfbmFtZSA9IHJlYWxfbmFtZVsyXQogICAgICBlbHNlCiAgICAgICAgZmxhdHRlbmVkX25hbWUgPSBlcnJvcigiZG9uJ3Qga25vdyBob3cgdG8gZXh0cmFjdCBuYW1lIGZyb20gIiAuLiB0b3N0cmluZyhuYW1lX3QpKQogICAgICBlbmQKICAgICAgcmVhbF9uYW1lID0gewogICAgICAgICJzdHJpbmciLAogICAgICAgICciJywKICAgICAgICBmbGF0dGVuZWRfbmFtZQogICAgICB9CiAgICBlbmQKICAgIGxvY2FsIGNscyA9IGJ1aWxkLnRhYmxlKHsKICAgICAgewogICAgICAgICJfX2luaXQiLAogICAgICAgIHN1cGVyX3Njb3BlKGNvbnN0cnVjdG9yLCBjbHNfc3VwZXIsIHsKICAgICAgICAgICJrZXlfbGl0ZXJhbCIsCiAgICAgICAgICAiX19pbml0IgogICAgICAgIH0pCiAgICAgIH0sCiAgICAgIHsKICAgICAgICAiX19iYXNlIiwKICAgICAgICBiYXNlX25hbWUKICAgICAgfSwKICAgICAgewogICAgICAgICJfX25hbWUiLAogICAgICAgIHJlYWxfbmFtZQogICAgICB9LAogICAgICBwYXJlbnRfdmFsIGFuZCB7CiAgICAgICAgIl9fcGFyZW50IiwKICAgICAgICBwYXJlbnRfY2xzX25hbWUKICAgICAgfSBvciBuaWwKICAgIH0pCiAgICBsb2NhbCBjbGFzc19pbmRleAogICAgaWYgcGFyZW50X3ZhbCB0aGVuCiAgICAgIGxvY2FsIGNsYXNzX2xvb2t1cCA9IGJ1aWxkWyJpZiJdKHsKICAgICAgICBjb25kID0gewogICAgICAgICAgImV4cCIsCiAgICAgICAgICB7CiAgICAgICAgICAgICJyZWYiLAogICAgICAgICAgICAidmFsIgogICAgICAgICAgfSwKICAgICAgICAgICI9PSIsCiAgICAgICAgICAibmlsIgogICAgICAgIH0sCiAgICAgICAgWyJ0aGVuIl0gPSB7CiAgICAgICAgICBidWlsZC5hc3NpZ25fb25lKExvY2FsTmFtZSgicGFyZW50IiksIGJ1aWxkLmNoYWluKHsKICAgICAgICAgICAgYmFzZSA9ICJyYXdnZXQiLAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgImNhbGwiLAogICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInJlZiIsCiAgICAgICAgICAgICAgICAgICJjbHMiCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAic3RyaW5nIiwKICAgICAgICAgICAgICAgICAgJyInLAogICAgICAgICAgICAgICAgICAiX19wYXJlbnQiCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICB9KSksCiAgICAgICAgICBidWlsZFsiaWYiXSh7CiAgICAgICAgICAgIGNvbmQgPSBMb2NhbE5hbWUoInBhcmVudCIpLAogICAgICAgICAgICBbInRoZW4iXSA9IHsKICAgICAgICAgICAgICBidWlsZC5jaGFpbih7CiAgICAgICAgICAgICAgICBiYXNlID0gTG9jYWxOYW1lKCJwYXJlbnQiKSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgImluZGV4IiwKICAgICAgICAgICAgICAgICAgIm5hbWUiCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfQogICAgICAgICAgfSkKICAgICAgICB9CiAgICAgIH0pCiAgICAgIGluc2VydChjbGFzc19sb29rdXAsIHsKICAgICAgICAiZWxzZSIsCiAgICAgICAgewogICAgICAgICAgInZhbCIKICAgICAgICB9CiAgICAgIH0pCiAgICAgIGNsYXNzX2luZGV4ID0gYnVpbGQuZm5kZWYoewogICAgICAgIGFyZ3MgPSB7CiAgICAgICAgICB7CiAgICAgICAgICAgICJjbHMiCiAgICAgICAgICB9LAogICAgICAgICAgewogICAgICAgICAgICAibmFtZSIKICAgICAgICAgIH0KICAgICAgICB9LAogICAgICAgIGJvZHkgPSB7CiAgICAgICAgICBidWlsZC5hc3NpZ25fb25lKExvY2FsTmFtZSgidmFsIiksIGJ1aWxkLmNoYWluKHsKICAgICAgICAgICAgYmFzZSA9ICJyYXdnZXQiLAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgImNhbGwiLAogICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIGJhc2VfbmFtZSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInJlZiIsCiAgICAgICAgICAgICAgICAgICJuYW1lIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgfSkpLAogICAgICAgICAgY2xhc3NfbG9va3VwCiAgICAgICAgfQogICAgICB9KQogICAgZWxzZQogICAgICBjbGFzc19pbmRleCA9IGJhc2VfbmFtZQogICAgZW5kCiAgICBsb2NhbCBjbHNfbXQgPSBidWlsZC50YWJsZSh7CiAgICAgIHsKICAgICAgICAiX19pbmRleCIsCiAgICAgICAgY2xhc3NfaW5kZXgKICAgICAgfSwKICAgICAgewogICAgICAgICJfX2NhbGwiLAogICAgICAgIGJ1aWxkLmZuZGVmKHsKICAgICAgICAgIGFyZ3MgPSB7CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAiY2xzIgogICAgICAgICAgICB9LAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgIi4uLiIKICAgICAgICAgICAgfQogICAgICAgICAgfSwKICAgICAgICAgIGJvZHkgPSB7CiAgICAgICAgICAgIGJ1aWxkLmFzc2lnbl9vbmUoc2VsZl9uYW1lLCBidWlsZC5jaGFpbih7CiAgICAgICAgICAgICAgYmFzZSA9ICJzZXRtZXRhdGFibGUiLAogICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJjYWxsIiwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgInt9IiwKICAgICAgICAgICAgICAgICAgYmFzZV9uYW1lCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KSksCiAgICAgICAgICAgIGJ1aWxkLmNoYWluKHsKICAgICAgICAgICAgICBiYXNlID0gImNscy5fX2luaXQiLAogICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJjYWxsIiwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgc2VsZl9uYW1lLAogICAgICAgICAgICAgICAgICAiLi4uIgogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSksCiAgICAgICAgICAgIHNlbGZfbmFtZQogICAgICAgICAgfQogICAgICAgIH0pCiAgICAgIH0KICAgIH0pCiAgICBjbHMgPSBidWlsZC5jaGFpbih7CiAgICAgIGJhc2UgPSAic2V0bWV0YXRhYmxlIiwKICAgICAgewogICAgICAgICJjYWxsIiwKICAgICAgICB7CiAgICAgICAgICBjbHMsCiAgICAgICAgICBjbHNfbXQKICAgICAgICB9CiAgICAgIH0KICAgIH0pCiAgICBsb2NhbCB2YWx1ZSA9IG5pbAogICAgZG8KICAgICAgbG9jYWwgb3V0X2JvZHkgPSB7CiAgICAgICAgUnVuKGZ1bmN0aW9uKHNlbGYpCiAgICAgICAgICBpZiBuYW1lIHRoZW4KICAgICAgICAgICAgcmV0dXJuIHNlbGY6cHV0X25hbWUobmFtZSkKICAgICAgICAgIGVuZAogICAgICAgIGVuZCksCiAgICAgICAgewogICAgICAgICAgImRlY2xhcmUiLAogICAgICAgICAgewogICAgICAgICAgICBjbHNfbmFtZQogICAgICAgICAgfQogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgImRlY2xhcmVfZ2xvYiIsCiAgICAgICAgICAiKiIKICAgICAgICB9LAogICAgICAgIHBhcmVudF92YWwgYW5kIGJ1aWxkLmFzc2lnbl9vbmUocGFyZW50X2Nsc19uYW1lLCBwYXJlbnRfdmFsKSBvciBOT09QLAogICAgICAgIGJ1aWxkLmFzc2lnbl9vbmUoYmFzZV9uYW1lLCB7CiAgICAgICAgICAidGFibGUiLAogICAgICAgICAgcHJvcGVydGllcwogICAgICAgIH0pLAogICAgICAgIGJ1aWxkLmFzc2lnbl9vbmUoYmFzZV9uYW1lOmNoYWluKCJfX2luZGV4IiksIGJhc2VfbmFtZSksCiAgICAgICAgcGFyZW50X3ZhbCBhbmQgYnVpbGQuY2hhaW4oewogICAgICAgICAgYmFzZSA9ICJzZXRtZXRhdGFibGUiLAogICAgICAgICAgewogICAgICAgICAgICAiY2FsbCIsCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICBiYXNlX25hbWUsCiAgICAgICAgICAgICAgYnVpbGQuY2hhaW4oewogICAgICAgICAgICAgICAgYmFzZSA9IHBhcmVudF9jbHNfbmFtZSwKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgImRvdCIsCiAgICAgICAgICAgICAgICAgICJfX2Jhc2UiCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfQogICAgICAgICAgfQogICAgICAgIH0pIG9yIE5PT1AsCiAgICAgICAgYnVpbGQuYXNzaWduX29uZShjbHNfbmFtZSwgY2xzKSwKICAgICAgICBidWlsZC5hc3NpZ25fb25lKGJhc2VfbmFtZTpjaGFpbigiX19jbGFzcyIpLCBjbHNfbmFtZSksCiAgICAgICAgYnVpbGQuZ3JvdXAoKGZ1bmN0aW9uKCkKICAgICAgICAgIGlmICNzdGF0ZW1lbnRzID4gMCB0aGVuCiAgICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgICAgYnVpbGQuYXNzaWduX29uZShMb2NhbE5hbWUoInNlbGYiKSwgY2xzX25hbWUpLAogICAgICAgICAgICAgIGJ1aWxkLmdyb3VwKHN0YXRlbWVudHMpCiAgICAgICAgICAgIH0KICAgICAgICAgIGVuZAogICAgICAgIGVuZCkoKSksCiAgICAgICAgcGFyZW50X3ZhbCBhbmQgYnVpbGRbImlmIl0oewogICAgICAgICAgY29uZCA9IHsKICAgICAgICAgICAgImV4cCIsCiAgICAgICAgICAgIHBhcmVudF9jbHNfbmFtZTpjaGFpbigiX19pbmhlcml0ZWQiKQogICAgICAgICAgfSwKICAgICAgICAgIFsidGhlbiJdID0gewogICAgICAgICAgICBwYXJlbnRfY2xzX25hbWU6Y2hhaW4oIl9faW5oZXJpdGVkIiwgewogICAgICAgICAgICAgICJjYWxsIiwKICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBwYXJlbnRfY2xzX25hbWUsCiAgICAgICAgICAgICAgICBjbHNfbmFtZQogICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSkKICAgICAgICAgIH0KICAgICAgICB9KSBvciBOT09QLAogICAgICAgIGJ1aWxkLmdyb3VwKChmdW5jdGlvbigpCiAgICAgICAgICBpZiBuYW1lIHRoZW4KICAgICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgICBidWlsZC5hc3NpZ25fb25lKG5hbWUsIGNsc19uYW1lKQogICAgICAgICAgICB9CiAgICAgICAgICBlbmQKICAgICAgICBlbmQpKCkpLAogICAgICAgIChmdW5jdGlvbigpCiAgICAgICAgICBpZiByZXQgdGhlbgogICAgICAgICAgICByZXR1cm4gcmV0KGNsc19uYW1lKQogICAgICAgICAgZW5kCiAgICAgICAgZW5kKSgpCiAgICAgIH0KICAgICAgdmFsdWUgPSBidWlsZC5ncm91cCh7CiAgICAgICAgYnVpbGQuZ3JvdXAoKGZ1bmN0aW9uKCkKICAgICAgICAgIGlmIG50eXBlKG5hbWUpID09ICJ2YWx1ZSIgdGhlbgogICAgICAgICAgICByZXR1cm4gewogICAgICAgICAgICAgIGJ1aWxkLmRlY2xhcmUoewogICAgICAgICAgICAgICAgbmFtZXMgPSB7CiAgICAgICAgICAgICAgICAgIG5hbWUKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9CiAgICAgICAgICBlbmQKICAgICAgICBlbmQpKCkpLAogICAgICAgIGJ1aWxkWyJkbyJdKG91dF9ib2R5KQogICAgICB9KQogICAgZW5kCiAgICByZXR1cm4gdmFsdWUKICBlbmQKICAKZW5kCnBhY2thZ2UucHJlbG9hZFsnbW9vbnNjcmlwdC50cmFuc2Zvcm0uZGVzdHJ1Y3R1cmUnXSA9IGZ1bmN0aW9uKCkKICBsb2NhbCBudHlwZSwgbXR5cGUsIGJ1aWxkCiAgZG8KICAgIGxvY2FsIF9vYmpfMCA9IHJlcXVpcmUoIm1vb25zY3JpcHQudHlwZXMiKQogICAgbnR5cGUsIG10eXBlLCBidWlsZCA9IF9vYmpfMC5udHlwZSwgX29ial8wLm10eXBlLCBfb2JqXzAuYnVpbGQKICBlbmQKICBsb2NhbCBOYW1lUHJveHkKICBOYW1lUHJveHkgPSByZXF1aXJlKCJtb29uc2NyaXB0LnRyYW5zZm9ybS5uYW1lcyIpLk5hbWVQcm94eQogIGxvY2FsIGluc2VydAogIGluc2VydCA9IHRhYmxlLmluc2VydAogIGxvY2FsIHVucGFjawogIHVucGFjayA9IHJlcXVpcmUoIm1vb25zY3JpcHQudXRpbCIpLnVucGFjawogIGxvY2FsIHVzZXJfZXJyb3IKICB1c2VyX2Vycm9yID0gcmVxdWlyZSgibW9vbnNjcmlwdC5lcnJvcnMiKS51c2VyX2Vycm9yCiAgbG9jYWwgam9pbgogIGpvaW4gPSBmdW5jdGlvbiguLi4pCiAgICBkbwogICAgICBsb2NhbCBvdXQgPSB7IH0KICAgICAgbG9jYWwgaSA9IDEKICAgICAgbG9jYWwgX2xpc3RfMCA9IHsKICAgICAgICAuLi4KICAgICAgfQogICAgICBmb3IgX2luZGV4XzAgPSAxLCAjX2xpc3RfMCBkbwogICAgICAgIGxvY2FsIHRibCA9IF9saXN0XzBbX2luZGV4XzBdCiAgICAgICAgZm9yIF9pbmRleF8xID0gMSwgI3RibCBkbwogICAgICAgICAgbG9jYWwgdiA9IHRibFtfaW5kZXhfMV0KICAgICAgICAgIG91dFtpXSA9IHYKICAgICAgICAgIGkgPSBpICsgMQogICAgICAgIGVuZAogICAgICBlbmQKICAgICAgcmV0dXJuIG91dAogICAgZW5kCiAgZW5kCiAgbG9jYWwgaGFzX2Rlc3RydWN0dXJlCiAgaGFzX2Rlc3RydWN0dXJlID0gZnVuY3Rpb24obmFtZXMpCiAgICBmb3IgX2luZGV4XzAgPSAxLCAjbmFtZXMgZG8KICAgICAgbG9jYWwgbiA9IG5hbWVzW19pbmRleF8wXQogICAgICBpZiBudHlwZShuKSA9PSAidGFibGUiIHRoZW4KICAgICAgICByZXR1cm4gdHJ1ZQogICAgICBlbmQKICAgIGVuZAogICAgcmV0dXJuIGZhbHNlCiAgZW5kCiAgbG9jYWwgZXh0cmFjdF9hc3NpZ25fbmFtZXMKICBleHRyYWN0X2Fzc2lnbl9uYW1lcyA9IGZ1bmN0aW9uKG5hbWUsIGFjY3VtLCBwcmVmaXgpCiAgICBpZiBhY2N1bSA9PSBuaWwgdGhlbgogICAgICBhY2N1bSA9IHsgfQogICAgZW5kCiAgICBpZiBwcmVmaXggPT0gbmlsIHRoZW4KICAgICAgcHJlZml4ID0geyB9CiAgICBlbmQKICAgIGxvY2FsIGkgPSAxCiAgICBsb2NhbCBfbGlzdF8wID0gbmFtZVsyXQogICAgZm9yIF9pbmRleF8wID0gMSwgI19saXN0XzAgZG8KICAgICAgbG9jYWwgdHVwbGUgPSBfbGlzdF8wW19pbmRleF8wXQogICAgICBsb2NhbCB2YWx1ZSwgc3VmZml4CiAgICAgIGlmICN0dXBsZSA9PSAxIHRoZW4KICAgICAgICBsb2NhbCBzID0gewogICAgICAgICAgImluZGV4IiwKICAgICAgICAgIHsKICAgICAgICAgICAgIm51bWJlciIsCiAgICAgICAgICAgIGkKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaSA9IGkgKyAxCiAgICAgICAgdmFsdWUsIHN1ZmZpeCA9IHR1cGxlWzFdLCBzCiAgICAgIGVsc2UKICAgICAgICBsb2NhbCBrZXkgPSB0dXBsZVsxXQogICAgICAgIGxvY2FsIHMKICAgICAgICBpZiBudHlwZShrZXkpID09ICJrZXlfbGl0ZXJhbCIgdGhlbgogICAgICAgICAgbG9jYWwga2V5X25hbWUgPSBrZXlbMl0KICAgICAgICAgIGlmIG50eXBlKGtleV9uYW1lKSA9PSAiY29sb24iIHRoZW4KICAgICAgICAgICAgcyA9IGtleV9uYW1lCiAgICAgICAgICBlbHNlCiAgICAgICAgICAgIHMgPSB7CiAgICAgICAgICAgICAgImRvdCIsCiAgICAgICAgICAgICAga2V5X25hbWUKICAgICAgICAgICAgfQogICAgICAgICAgZW5kCiAgICAgICAgZWxzZQogICAgICAgICAgcyA9IHsKICAgICAgICAgICAgImluZGV4IiwKICAgICAgICAgICAga2V5CiAgICAgICAgICB9CiAgICAgICAgZW5kCiAgICAgICAgdmFsdWUsIHN1ZmZpeCA9IHR1cGxlWzJdLCBzCiAgICAgIGVuZAogICAgICBzdWZmaXggPSBqb2luKHByZWZpeCwgewogICAgICAgIHN1ZmZpeAogICAgICB9KQogICAgICBsb2NhbCBfZXhwXzAgPSBudHlwZSh2YWx1ZSkKICAgICAgaWYgInZhbHVlIiA9PSBfZXhwXzAgb3IgInJlZiIgPT0gX2V4cF8wIG9yICJjaGFpbiIgPT0gX2V4cF8wIG9yICJzZWxmIiA9PSBfZXhwXzAgdGhlbgogICAgICAgIGluc2VydChhY2N1bSwgewogICAgICAgICAgdmFsdWUsCiAgICAgICAgICBzdWZmaXgKICAgICAgICB9KQogICAgICBlbHNlaWYgInRhYmxlIiA9PSBfZXhwXzAgdGhlbgogICAgICAgIGV4dHJhY3RfYXNzaWduX25hbWVzKHZhbHVlLCBhY2N1bSwgc3VmZml4KQogICAgICBlbHNlCiAgICAgICAgdXNlcl9lcnJvcigiQ2FuJ3QgZGVzdHJ1Y3R1cmUgdmFsdWUgb2YgdHlwZTogIiAuLiB0b3N0cmluZyhudHlwZSh2YWx1ZSkpKQogICAgICBlbmQKICAgIGVuZAogICAgcmV0dXJuIGFjY3VtCiAgZW5kCiAgbG9jYWwgYnVpbGRfYXNzaWduCiAgYnVpbGRfYXNzaWduID0gZnVuY3Rpb24oc2NvcGUsIGRlc3RydWN0X2xpdGVyYWwsIHJlY2VpdmVyKQogICAgbG9jYWwgZXh0cmFjdGVkX25hbWVzID0gZXh0cmFjdF9hc3NpZ25fbmFtZXMoZGVzdHJ1Y3RfbGl0ZXJhbCkKICAgIGxvY2FsIG5hbWVzID0geyB9CiAgICBsb2NhbCB2YWx1ZXMgPSB7IH0KICAgIGxvY2FsIGlubmVyID0gewogICAgICAiYXNzaWduIiwKICAgICAgbmFtZXMsCiAgICAgIHZhbHVlcwogICAgfQogICAgbG9jYWwgb2JqCiAgICBpZiBzY29wZTppc19sb2NhbChyZWNlaXZlcikgb3IgI2V4dHJhY3RlZF9uYW1lcyA9PSAxIHRoZW4KICAgICAgb2JqID0gcmVjZWl2ZXIKICAgIGVsc2UKICAgICAgZG8KICAgICAgICBvYmogPSBOYW1lUHJveHkoIm9iaiIpCiAgICAgICAgaW5uZXIgPSBidWlsZFsiZG8iXSh7CiAgICAgICAgICBidWlsZC5hc3NpZ25fb25lKG9iaiwgcmVjZWl2ZXIpLAogICAgICAgICAgewogICAgICAgICAgICAiYXNzaWduIiwKICAgICAgICAgICAgbmFtZXMsCiAgICAgICAgICAgIHZhbHVlcwogICAgICAgICAgfQogICAgICAgIH0pCiAgICAgICAgb2JqID0gb2JqCiAgICAgIGVuZAogICAgZW5kCiAgICBmb3IgX2luZGV4XzAgPSAxLCAjZXh0cmFjdGVkX25hbWVzIGRvCiAgICAgIGxvY2FsIHR1cGxlID0gZXh0cmFjdGVkX25hbWVzW19pbmRleF8wXQogICAgICBpbnNlcnQobmFtZXMsIHR1cGxlWzFdKQogICAgICBsb2NhbCBjaGFpbgogICAgICBpZiBvYmogdGhlbgogICAgICAgIGNoYWluID0gTmFtZVByb3h5LmNoYWluKG9iaiwgdW5wYWNrKHR1cGxlWzJdKSkKICAgICAgZWxzZQogICAgICAgIGNoYWluID0gIm5pbCIKICAgICAgZW5kCiAgICAgIGluc2VydCh2YWx1ZXMsIGNoYWluKQogICAgZW5kCiAgICByZXR1cm4gYnVpbGQuZ3JvdXAoewogICAgICB7CiAgICAgICAgImRlY2xhcmUiLAogICAgICAgIG5hbWVzCiAgICAgIH0sCiAgICAgIGlubmVyCiAgICB9KQogIGVuZAogIGxvY2FsIHNwbGl0X2Fzc2lnbgogIHNwbGl0X2Fzc2lnbiA9IGZ1bmN0aW9uKHNjb3BlLCBhc3NpZ24pCiAgICBsb2NhbCBuYW1lcywgdmFsdWVzID0gdW5wYWNrKGFzc2lnbiwgMikKICAgIGxvY2FsIGcgPSB7IH0KICAgIGxvY2FsIHRvdGFsX25hbWVzID0gI25hbWVzCiAgICBsb2NhbCB0b3RhbF92YWx1ZXMgPSAjdmFsdWVzCiAgICBsb2NhbCBzdGFydCA9IDEKICAgIGZvciBpLCBuIGluIGlwYWlycyhuYW1lcykgZG8KICAgICAgaWYgbnR5cGUobikgPT0gInRhYmxlIiB0aGVuCiAgICAgICAgaWYgaSA+IHN0YXJ0IHRoZW4KICAgICAgICAgIGxvY2FsIHN0b3AgPSBpIC0gMQogICAgICAgICAgaW5zZXJ0KGcsIHsKICAgICAgICAgICAgImFzc2lnbiIsCiAgICAgICAgICAgIChmdW5jdGlvbigpCiAgICAgICAgICAgICAgbG9jYWwgX2FjY3VtXzAgPSB7IH0KICAgICAgICAgICAgICBsb2NhbCBfbGVuXzAgPSAxCiAgICAgICAgICAgICAgZm9yIGkgPSBzdGFydCwgc3RvcCBkbwogICAgICAgICAgICAgICAgX2FjY3VtXzBbX2xlbl8wXSA9IG5hbWVzW2ldCiAgICAgICAgICAgICAgICBfbGVuXzAgPSBfbGVuXzAgKyAxCiAgICAgICAgICAgICAgZW5kCiAgICAgICAgICAgICAgcmV0dXJuIF9hY2N1bV8wCiAgICAgICAgICAgIGVuZCkoKSwKICAgICAgICAgICAgKGZ1bmN0aW9uKCkKICAgICAgICAgICAgICBsb2NhbCBfYWNjdW1fMCA9IHsgfQogICAgICAgICAgICAgIGxvY2FsIF9sZW5fMCA9IDEKICAgICAgICAgICAgICBmb3IgaSA9IHN0YXJ0LCBzdG9wIGRvCiAgICAgICAgICAgICAgICBfYWNjdW1fMFtfbGVuXzBdID0gdmFsdWVzW2ldCiAgICAgICAgICAgICAgICBfbGVuXzAgPSBfbGVuXzAgKyAxCiAgICAgICAgICAgICAgZW5kCiAgICAgICAgICAgICAgcmV0dXJuIF9hY2N1bV8wCiAgICAgICAgICAgIGVuZCkoKQogICAgICAgICAgfSkKICAgICAgICBlbmQKICAgICAgICBpbnNlcnQoZywgYnVpbGRfYXNzaWduKHNjb3BlLCBuLCB2YWx1ZXNbaV0pKQogICAgICAgIHN0YXJ0ID0gaSArIDEKICAgICAgZW5kCiAgICBlbmQKICAgIGlmIHRvdGFsX25hbWVzID49IHN0YXJ0IG9yIHRvdGFsX3ZhbHVlcyA+PSBzdGFydCB0aGVuCiAgICAgIGxvY2FsIG5hbWVfc2xpY2UKICAgICAgaWYgdG90YWxfbmFtZXMgPCBzdGFydCB0aGVuCiAgICAgICAgbmFtZV9zbGljZSA9IHsKICAgICAgICAgICJfIgogICAgICAgIH0KICAgICAgZWxzZQogICAgICAgIGRvCiAgICAgICAgICBsb2NhbCBfYWNjdW1fMCA9IHsgfQogICAgICAgICAgbG9jYWwgX2xlbl8wID0gMQogICAgICAgICAgZm9yIGkgPSBzdGFydCwgdG90YWxfbmFtZXMgZG8KICAgICAgICAgICAgX2FjY3VtXzBbX2xlbl8wXSA9IG5hbWVzW2ldCiAgICAgICAgICAgIF9sZW5fMCA9IF9sZW5fMCArIDEKICAgICAgICAgIGVuZAogICAgICAgICAgbmFtZV9zbGljZSA9IF9hY2N1bV8wCiAgICAgICAgZW5kCiAgICAgIGVuZAogICAgICBsb2NhbCB2YWx1ZV9zbGljZQogICAgICBpZiB0b3RhbF92YWx1ZXMgPCBzdGFydCB0aGVuCiAgICAgICAgdmFsdWVfc2xpY2UgPSB7CiAgICAgICAgICAibmlsIgogICAgICAgIH0KICAgICAgZWxzZQogICAgICAgIGRvCiAgICAgICAgICBsb2NhbCBfYWNjdW1fMCA9IHsgfQogICAgICAgICAgbG9jYWwgX2xlbl8wID0gMQogICAgICAgICAgZm9yIGkgPSBzdGFydCwgdG90YWxfdmFsdWVzIGRvCiAgICAgICAgICAgIF9hY2N1bV8wW19sZW5fMF0gPSB2YWx1ZXNbaV0KICAgICAgICAgICAgX2xlbl8wID0gX2xlbl8wICsgMQogICAgICAgICAgZW5kCiAgICAgICAgICB2YWx1ZV9zbGljZSA9IF9hY2N1bV8wCiAgICAgICAgZW5kCiAgICAgIGVuZAogICAgICBpbnNlcnQoZywgewogICAgICAgICJhc3NpZ24iLAogICAgICAgIG5hbWVfc2xpY2UsCiAgICAgICAgdmFsdWVfc2xpY2UKICAgICAgfSkKICAgIGVuZAogICAgcmV0dXJuIGJ1aWxkLmdyb3VwKGcpCiAgZW5kCiAgcmV0dXJuIHsKICAgIGhhc19kZXN0cnVjdHVyZSA9IGhhc19kZXN0cnVjdHVyZSwKICAgIHNwbGl0X2Fzc2lnbiA9IHNwbGl0X2Fzc2lnbiwKICAgIGJ1aWxkX2Fzc2lnbiA9IGJ1aWxkX2Fzc2lnbiwKICAgIGV4dHJhY3RfYXNzaWduX25hbWVzID0gZXh0cmFjdF9hc3NpZ25fbmFtZXMKICB9CiAgCmVuZApwYWNrYWdlLnByZWxvYWRbJ21vb25zY3JpcHQudHJhbnNmb3JtLm5hbWVzJ10gPSBmdW5jdGlvbigpCiAgbG9jYWwgYnVpbGQKICBidWlsZCA9IHJlcXVpcmUoIm1vb25zY3JpcHQudHlwZXMiKS5idWlsZAogIGxvY2FsIHVucGFjawogIHVucGFjayA9IHJlcXVpcmUoIm1vb25zY3JpcHQudXRpbCIpLnVucGFjawogIGxvY2FsIExvY2FsTmFtZQogIGRvCiAgICBsb2NhbCBfY2xhc3NfMAogICAgbG9jYWwgX2Jhc2VfMCA9IHsKICAgICAgZ2V0X25hbWUgPSBmdW5jdGlvbihzZWxmKQogICAgICAgIHJldHVybiBzZWxmLm5hbWUKICAgICAgZW5kCiAgICB9CiAgICBfYmFzZV8wLl9faW5kZXggPSBfYmFzZV8wCiAgICBfY2xhc3NfMCA9IHNldG1ldGF0YWJsZSh7CiAgICAgIF9faW5pdCA9IGZ1bmN0aW9uKHNlbGYsIG5hbWUpCiAgICAgICAgc2VsZi5uYW1lID0gbmFtZQogICAgICAgIHNlbGZbMV0gPSAidGVtcF9uYW1lIgogICAgICBlbmQsCiAgICAgIF9fYmFzZSA9IF9iYXNlXzAsCiAgICAgIF9fbmFtZSA9ICJMb2NhbE5hbWUiCiAgICB9LCB7CiAgICAgIF9faW5kZXggPSBfYmFzZV8wLAogICAgICBfX2NhbGwgPSBmdW5jdGlvbihjbHMsIC4uLikKICAgICAgICBsb2NhbCBfc2VsZl8wID0gc2V0bWV0YXRhYmxlKHt9LCBfYmFzZV8wKQogICAgICAgIGNscy5fX2luaXQoX3NlbGZfMCwgLi4uKQogICAgICAgIHJldHVybiBfc2VsZl8wCiAgICAgIGVuZAogICAgfSkKICAgIF9iYXNlXzAuX19jbGFzcyA9IF9jbGFzc18wCiAgICBMb2NhbE5hbWUgPSBfY2xhc3NfMAogIGVuZAogIGxvY2FsIE5hbWVQcm94eQogIGRvCiAgICBsb2NhbCBfY2xhc3NfMAogICAgbG9jYWwgX2Jhc2VfMCA9IHsKICAgICAgZ2V0X25hbWUgPSBmdW5jdGlvbihzZWxmLCBzY29wZSwgZG9udF9wdXQpCiAgICAgICAgaWYgZG9udF9wdXQgPT0gbmlsIHRoZW4KICAgICAgICAgIGRvbnRfcHV0ID0gdHJ1ZQogICAgICAgIGVuZAogICAgICAgIGlmIG5vdCBzZWxmLm5hbWUgdGhlbgogICAgICAgICAgc2VsZi5uYW1lID0gc2NvcGU6ZnJlZV9uYW1lKHNlbGYucHJlZml4LCBkb250X3B1dCkKICAgICAgICBlbmQKICAgICAgICByZXR1cm4gc2VsZi5uYW1lCiAgICAgIGVuZCwKICAgICAgY2hhaW4gPSBmdW5jdGlvbihzZWxmLCAuLi4pCiAgICAgICAgbG9jYWwgaXRlbXMgPSB7CiAgICAgICAgICBiYXNlID0gc2VsZiwKICAgICAgICAgIC4uLgogICAgICAgIH0KICAgICAgICBmb3IgaywgdiBpbiBpcGFpcnMoaXRlbXMpIGRvCiAgICAgICAgICBpZiB0eXBlKHYpID09ICJzdHJpbmciIHRoZW4KICAgICAgICAgICAgaXRlbXNba10gPSB7CiAgICAgICAgICAgICAgImRvdCIsCiAgICAgICAgICAgICAgdgogICAgICAgICAgICB9CiAgICAgICAgICBlbHNlCiAgICAgICAgICAgIGl0ZW1zW2tdID0gdgogICAgICAgICAgZW5kCiAgICAgICAgZW5kCiAgICAgICAgcmV0dXJuIGJ1aWxkLmNoYWluKGl0ZW1zKQogICAgICBlbmQsCiAgICAgIGluZGV4ID0gZnVuY3Rpb24oc2VsZiwga2V5KQogICAgICAgIGlmIHR5cGUoa2V5KSA9PSAic3RyaW5nIiB0aGVuCiAgICAgICAgICBrZXkgPSB7CiAgICAgICAgICAgICJyZWYiLAogICAgICAgICAgICBrZXkKICAgICAgICAgIH0KICAgICAgICBlbmQKICAgICAgICByZXR1cm4gYnVpbGQuY2hhaW4oewogICAgICAgICAgYmFzZSA9IHNlbGYsCiAgICAgICAgICB7CiAgICAgICAgICAgICJpbmRleCIsCiAgICAgICAgICAgIGtleQogICAgICAgICAgfQogICAgICAgIH0pCiAgICAgIGVuZCwKICAgICAgX190b3N0cmluZyA9IGZ1bmN0aW9uKHNlbGYpCiAgICAgICAgaWYgc2VsZi5uYW1lIHRoZW4KICAgICAgICAgIHJldHVybiAoIm5hbWU8JXM+Iik6Zm9ybWF0KHNlbGYubmFtZSkKICAgICAgICBlbHNlCiAgICAgICAgICByZXR1cm4gKCJuYW1lPHByZWZpeCglcyk+Iik6Zm9ybWF0KHNlbGYucHJlZml4KQogICAgICAgIGVuZAogICAgICBlbmQKICAgIH0KICAgIF9iYXNlXzAuX19pbmRleCA9IF9iYXNlXzAKICAgIF9jbGFzc18wID0gc2V0bWV0YXRhYmxlKHsKICAgICAgX19pbml0ID0gZnVuY3Rpb24oc2VsZiwgcHJlZml4KQogICAgICAgIHNlbGYucHJlZml4ID0gcHJlZml4CiAgICAgICAgc2VsZlsxXSA9ICJ0ZW1wX25hbWUiCiAgICAgIGVuZCwKICAgICAgX19iYXNlID0gX2Jhc2VfMCwKICAgICAgX19uYW1lID0gIk5hbWVQcm94eSIKICAgIH0sIHsKICAgICAgX19pbmRleCA9IF9iYXNlXzAsCiAgICAgIF9fY2FsbCA9IGZ1bmN0aW9uKGNscywgLi4uKQogICAgICAgIGxvY2FsIF9zZWxmXzAgPSBzZXRtZXRhdGFibGUoe30sIF9iYXNlXzApCiAgICAgICAgY2xzLl9faW5pdChfc2VsZl8wLCAuLi4pCiAgICAgICAgcmV0dXJuIF9zZWxmXzAKICAgICAgZW5kCiAgICB9KQogICAgX2Jhc2VfMC5fX2NsYXNzID0gX2NsYXNzXzAKICAgIE5hbWVQcm94eSA9IF9jbGFzc18wCiAgZW5kCiAgbG9jYWwgaXNfbmFtZV9wcm94eQogIGlzX25hbWVfcHJveHkgPSBmdW5jdGlvbih2KQogICAgaWYgbm90ICh0eXBlKHYpID09ICJ0YWJsZSIpIHRoZW4KICAgICAgcmV0dXJuIGZhbHNlCiAgICBlbmQKICAgIGxvY2FsIF9leHBfMCA9IHYuX19jbGFzcwogICAgaWYgTG9jYWxOYW1lID09IF9leHBfMCBvciBOYW1lUHJveHkgPT0gX2V4cF8wIHRoZW4KICAgICAgcmV0dXJuIHRydWUKICAgIGVuZAogIGVuZAogIHJldHVybiB7CiAgICBOYW1lUHJveHkgPSBOYW1lUHJveHksCiAgICBMb2NhbE5hbWUgPSBMb2NhbE5hbWUsCiAgICBpc19uYW1lX3Byb3h5ID0gaXNfbmFtZV9wcm94eQogIH0KICAKZW5kCnBhY2thZ2UucHJlbG9hZFsnbW9vbnNjcmlwdC50cmFuc2Zvcm0udmFsdWUnXSA9IGZ1bmN0aW9uKCkKICBsb2NhbCBUcmFuc2Zvcm1lcgogIFRyYW5zZm9ybWVyID0gcmVxdWlyZSgibW9vbnNjcmlwdC50cmFuc2Zvcm0udHJhbnNmb3JtZXIiKS5UcmFuc2Zvcm1lcgogIGxvY2FsIGJ1aWxkLCBudHlwZSwgc21hcnRfbm9kZQogIGRvCiAgICBsb2NhbCBfb2JqXzAgPSByZXF1aXJlKCJtb29uc2NyaXB0LnR5cGVzIikKICAgIGJ1aWxkLCBudHlwZSwgc21hcnRfbm9kZSA9IF9vYmpfMC5idWlsZCwgX29ial8wLm50eXBlLCBfb2JqXzAuc21hcnRfbm9kZQogIGVuZAogIGxvY2FsIE5hbWVQcm94eQogIE5hbWVQcm94eSA9IHJlcXVpcmUoIm1vb25zY3JpcHQudHJhbnNmb3JtLm5hbWVzIikuTmFtZVByb3h5CiAgbG9jYWwgQWNjdW11bGF0b3IsIGRlZmF1bHRfYWNjdW11bGF0b3IKICBkbwogICAgbG9jYWwgX29ial8wID0gcmVxdWlyZSgibW9vbnNjcmlwdC50cmFuc2Zvcm0uYWNjdW11bGF0b3IiKQogICAgQWNjdW11bGF0b3IsIGRlZmF1bHRfYWNjdW11bGF0b3IgPSBfb2JqXzAuQWNjdW11bGF0b3IsIF9vYmpfMC5kZWZhdWx0X2FjY3VtdWxhdG9yCiAgZW5kCiAgbG9jYWwgbHVhX2tleXdvcmRzCiAgbHVhX2tleXdvcmRzID0gcmVxdWlyZSgibW9vbnNjcmlwdC5kYXRhIikubHVhX2tleXdvcmRzCiAgbG9jYWwgUnVuLCB0cmFuc2Zvcm1fbGFzdF9zdG0sIGltcGxpY2l0bHlfcmV0dXJuLCBjaGFpbl9pc19zdHViCiAgZG8KICAgIGxvY2FsIF9vYmpfMCA9IHJlcXVpcmUoIm1vb25zY3JpcHQudHJhbnNmb3JtLnN0YXRlbWVudHMiKQogICAgUnVuLCB0cmFuc2Zvcm1fbGFzdF9zdG0sIGltcGxpY2l0bHlfcmV0dXJuLCBjaGFpbl9pc19zdHViID0gX29ial8wLlJ1biwgX29ial8wLnRyYW5zZm9ybV9sYXN0X3N0bSwgX29ial8wLmltcGxpY2l0bHlfcmV0dXJuLCBfb2JqXzAuY2hhaW5faXNfc3R1YgogIGVuZAogIGxvY2FsIGNvbnN0cnVjdF9jb21wcmVoZW5zaW9uCiAgY29uc3RydWN0X2NvbXByZWhlbnNpb24gPSByZXF1aXJlKCJtb29uc2NyaXB0LnRyYW5zZm9ybS5jb21wcmVoZW5zaW9uIikuY29uc3RydWN0X2NvbXByZWhlbnNpb24KICBsb2NhbCBpbnNlcnQKICBpbnNlcnQgPSB0YWJsZS5pbnNlcnQKICBsb2NhbCB1bnBhY2sKICB1bnBhY2sgPSByZXF1aXJlKCJtb29uc2NyaXB0LnV0aWwiKS51bnBhY2sKICByZXR1cm4gVHJhbnNmb3JtZXIoewogICAgWyJmb3IiXSA9IGRlZmF1bHRfYWNjdW11bGF0b3IsCiAgICBbIndoaWxlIl0gPSBkZWZhdWx0X2FjY3VtdWxhdG9yLAogICAgZm9yZWFjaCA9IGRlZmF1bHRfYWNjdW11bGF0b3IsCiAgICBbImRvIl0gPSBmdW5jdGlvbihzZWxmLCBub2RlKQogICAgICByZXR1cm4gYnVpbGQuYmxvY2tfZXhwKG5vZGVbMl0pCiAgICBlbmQsCiAgICBkZWNvcmF0ZWQgPSBmdW5jdGlvbihzZWxmLCBub2RlKQogICAgICByZXR1cm4gc2VsZi50cmFuc2Zvcm0uc3RhdGVtZW50KG5vZGUpCiAgICBlbmQsCiAgICBjbGFzcyA9IGZ1bmN0aW9uKHNlbGYsIG5vZGUpCiAgICAgIHJldHVybiBidWlsZC5ibG9ja19leHAoewogICAgICAgIG5vZGUKICAgICAgfSkKICAgIGVuZCwKICAgIHN0cmluZyA9IGZ1bmN0aW9uKHNlbGYsIG5vZGUpCiAgICAgIGxvY2FsIGRlbGltID0gbm9kZVsyXQogICAgICBsb2NhbCBjb252ZXJ0X3BhcnQKICAgICAgY29udmVydF9wYXJ0ID0gZnVuY3Rpb24ocGFydCkKICAgICAgICBpZiB0eXBlKHBhcnQpID09ICJzdHJpbmciIG9yIHBhcnQgPT0gbmlsIHRoZW4KICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICBkZWxpbSwKICAgICAgICAgICAgcGFydCBvciAiIgogICAgICAgICAgfQogICAgICAgIGVsc2UKICAgICAgICAgIHJldHVybiBidWlsZC5jaGFpbih7CiAgICAgICAgICAgIGJhc2UgPSAidG9zdHJpbmciLAogICAgICAgICAgICB7CiAgICAgICAgICAgICAgImNhbGwiLAogICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHBhcnRbMl0KICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgIH0pCiAgICAgICAgZW5kCiAgICAgIGVuZAogICAgICBpZiAjbm9kZSA8PSAzIHRoZW4KICAgICAgICBpZiB0eXBlKG5vZGVbM10pID09ICJzdHJpbmciIHRoZW4KICAgICAgICAgIHJldHVybiBub2RlCiAgICAgICAgZWxzZQogICAgICAgICAgcmV0dXJuIGNvbnZlcnRfcGFydChub2RlWzNdKQogICAgICAgIGVuZAogICAgICBlbmQKICAgICAgbG9jYWwgZSA9IHsKICAgICAgICAiZXhwIiwKICAgICAgICBjb252ZXJ0X3BhcnQobm9kZVszXSkKICAgICAgfQogICAgICBmb3IgaSA9IDQsICNub2RlIGRvCiAgICAgICAgaW5zZXJ0KGUsICIuLiIpCiAgICAgICAgaW5zZXJ0KGUsIGNvbnZlcnRfcGFydChub2RlW2ldKSkKICAgICAgZW5kCiAgICAgIHJldHVybiBlCiAgICBlbmQsCiAgICBjb21wcmVoZW5zaW9uID0gZnVuY3Rpb24oc2VsZiwgbm9kZSkKICAgICAgbG9jYWwgYSA9IEFjY3VtdWxhdG9yKCkKICAgICAgbm9kZSA9IHNlbGYudHJhbnNmb3JtLnN0YXRlbWVudChub2RlLCBmdW5jdGlvbihleHApCiAgICAgICAgcmV0dXJuIGE6bXV0YXRlX2JvZHkoewogICAgICAgICAgZXhwCiAgICAgICAgfSkKICAgICAgZW5kKQogICAgICByZXR1cm4gYTp3cmFwKG5vZGUpCiAgICBlbmQsCiAgICB0Ymxjb21wcmVoZW5zaW9uID0gZnVuY3Rpb24oc2VsZiwgbm9kZSkKICAgICAgbG9jYWwgZXhwbGlzdCwgY2xhdXNlcyA9IHVucGFjayhub2RlLCAyKQogICAgICBsb2NhbCBrZXlfZXhwLCB2YWx1ZV9leHAgPSB1bnBhY2soZXhwbGlzdCkKICAgICAgbG9jYWwgYWNjdW0gPSBOYW1lUHJveHkoInRibCIpCiAgICAgIGxvY2FsIGlubmVyCiAgICAgIGlmIHZhbHVlX2V4cCB0aGVuCiAgICAgICAgbG9jYWwgZGVzdCA9IGJ1aWxkLmNoYWluKHsKICAgICAgICAgIGJhc2UgPSBhY2N1bSwKICAgICAgICAgIHsKICAgICAgICAgICAgImluZGV4IiwKICAgICAgICAgICAga2V5X2V4cAogICAgICAgICAgfQogICAgICAgIH0pCiAgICAgICAgaW5uZXIgPSB7CiAgICAgICAgICBidWlsZC5hc3NpZ25fb25lKGRlc3QsIHZhbHVlX2V4cCkKICAgICAgICB9CiAgICAgIGVsc2UKICAgICAgICBsb2NhbCBrZXlfbmFtZSwgdmFsX25hbWUgPSBOYW1lUHJveHkoImtleSIpLCBOYW1lUHJveHkoInZhbCIpCiAgICAgICAgbG9jYWwgZGVzdCA9IGJ1aWxkLmNoYWluKHsKICAgICAgICAgIGJhc2UgPSBhY2N1bSwKICAgICAgICAgIHsKICAgICAgICAgICAgImluZGV4IiwKICAgICAgICAgICAga2V5X25hbWUKICAgICAgICAgIH0KICAgICAgICB9KQogICAgICAgIGlubmVyID0gewogICAgICAgICAgYnVpbGQuYXNzaWduKHsKICAgICAgICAgICAgbmFtZXMgPSB7CiAgICAgICAgICAgICAga2V5X25hbWUsCiAgICAgICAgICAgICAgdmFsX25hbWUKICAgICAgICAgICAgfSwKICAgICAgICAgICAgdmFsdWVzID0gewogICAgICAgICAgICAgIGtleV9leHAKICAgICAgICAgICAgfQogICAgICAgICAgfSksCiAgICAgICAgICBidWlsZC5hc3NpZ25fb25lKGRlc3QsIHZhbF9uYW1lKQogICAgICAgIH0KICAgICAgZW5kCiAgICAgIHJldHVybiBidWlsZC5ibG9ja19leHAoewogICAgICAgIGJ1aWxkLmFzc2lnbl9vbmUoYWNjdW0sIGJ1aWxkLnRhYmxlKCkpLAogICAgICAgIGNvbnN0cnVjdF9jb21wcmVoZW5zaW9uKGlubmVyLCBjbGF1c2VzKSwKICAgICAgICBhY2N1bQogICAgICB9KQogICAgZW5kLAogICAgZm5kZWYgPSBmdW5jdGlvbihzZWxmLCBub2RlKQogICAgICBzbWFydF9ub2RlKG5vZGUpCiAgICAgIG5vZGUuYm9keSA9IHRyYW5zZm9ybV9sYXN0X3N0bShub2RlLmJvZHksIGltcGxpY2l0bHlfcmV0dXJuKHNlbGYpKQogICAgICBub2RlLmJvZHkgPSB7CiAgICAgICAgUnVuKGZ1bmN0aW9uKHNlbGYpCiAgICAgICAgICByZXR1cm4gc2VsZjpsaXN0ZW4oInZhcmFyZ3MiLCBmdW5jdGlvbigpIGVuZCkKICAgICAgICBlbmQpLAogICAgICAgIHVucGFjayhub2RlLmJvZHkpCiAgICAgIH0KICAgICAgcmV0dXJuIG5vZGUKICAgIGVuZCwKICAgIFsiaWYiXSA9IGZ1bmN0aW9uKHNlbGYsIG5vZGUpCiAgICAgIHJldHVybiBidWlsZC5ibG9ja19leHAoewogICAgICAgIG5vZGUKICAgICAgfSkKICAgIGVuZCwKICAgIHVubGVzcyA9IGZ1bmN0aW9uKHNlbGYsIG5vZGUpCiAgICAgIHJldHVybiBidWlsZC5ibG9ja19leHAoewogICAgICAgIG5vZGUKICAgICAgfSkKICAgIGVuZCwKICAgIHdpdGggPSBmdW5jdGlvbihzZWxmLCBub2RlKQogICAgICByZXR1cm4gYnVpbGQuYmxvY2tfZXhwKHsKICAgICAgICBub2RlCiAgICAgIH0pCiAgICBlbmQsCiAgICBzd2l0Y2ggPSBmdW5jdGlvbihzZWxmLCBub2RlKQogICAgICByZXR1cm4gYnVpbGQuYmxvY2tfZXhwKHsKICAgICAgICBub2RlCiAgICAgIH0pCiAgICBlbmQsCiAgICBjaGFpbiA9IGZ1bmN0aW9uKHNlbGYsIG5vZGUpCiAgICAgIGZvciBpID0gMiwgI25vZGUgZG8KICAgICAgICBsb2NhbCBwYXJ0ID0gbm9kZVtpXQogICAgICAgIGlmIG50eXBlKHBhcnQpID09ICJkb3QiIGFuZCBsdWFfa2V5d29yZHNbcGFydFsyXV0gdGhlbgogICAgICAgICAgbm9kZVtpXSA9IHsKICAgICAgICAgICAgImluZGV4IiwKICAgICAgICAgICAgewogICAgICAgICAgICAgICJzdHJpbmciLAogICAgICAgICAgICAgICciJywKICAgICAgICAgICAgICBwYXJ0WzJdCiAgICAgICAgICAgIH0KICAgICAgICAgIH0KICAgICAgICBlbmQKICAgICAgZW5kCiAgICAgIGlmIG50eXBlKG5vZGVbMl0pID09ICJzdHJpbmciIHRoZW4KICAgICAgICBub2RlWzJdID0gewogICAgICAgICAgInBhcmVucyIsCiAgICAgICAgICBub2RlWzJdCiAgICAgICAgfQogICAgICBlbmQKICAgICAgaWYgY2hhaW5faXNfc3R1Yihub2RlKSB0aGVuCiAgICAgICAgbG9jYWwgYmFzZV9uYW1lID0gTmFtZVByb3h5KCJiYXNlIikKICAgICAgICBsb2NhbCBmbl9uYW1lID0gTmFtZVByb3h5KCJmbiIpCiAgICAgICAgbG9jYWwgY29sb24gPSB0YWJsZS5yZW1vdmUobm9kZSkKICAgICAgICBsb2NhbCBpc19zdXBlciA9IG50eXBlKG5vZGVbMl0pID09ICJyZWYiIGFuZCBub2RlWzJdWzJdID09ICJzdXBlciIKICAgICAgICByZXR1cm4gYnVpbGQuYmxvY2tfZXhwKHsKICAgICAgICAgIGJ1aWxkLmFzc2lnbih7CiAgICAgICAgICAgIG5hbWVzID0gewogICAgICAgICAgICAgIGJhc2VfbmFtZQogICAgICAgICAgICB9LAogICAgICAgICAgICB2YWx1ZXMgPSB7CiAgICAgICAgICAgICAgbm9kZQogICAgICAgICAgICB9CiAgICAgICAgICB9KSwKICAgICAgICAgIGJ1aWxkLmFzc2lnbih7CiAgICAgICAgICAgIG5hbWVzID0gewogICAgICAgICAgICAgIGZuX25hbWUKICAgICAgICAgICAgfSwKICAgICAgICAgICAgdmFsdWVzID0gewogICAgICAgICAgICAgIGJ1aWxkLmNoYWluKHsKICAgICAgICAgICAgICAgIGJhc2UgPSBiYXNlX25hbWUsCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJkb3QiLAogICAgICAgICAgICAgICAgICBjb2xvblsyXQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIH0KICAgICAgICAgIH0pLAogICAgICAgICAgYnVpbGQuZm5kZWYoewogICAgICAgICAgICBhcmdzID0gewogICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICIuLi4iCiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9LAogICAgICAgICAgICBib2R5ID0gewogICAgICAgICAgICAgIGJ1aWxkLmNoYWluKHsKICAgICAgICAgICAgICAgIGJhc2UgPSBmbl9uYW1lLAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAiY2FsbCIsCiAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBpc19zdXBlciBhbmQgInNlbGYiIG9yIGJhc2VfbmFtZSwKICAgICAgICAgICAgICAgICAgICAiLi4uIgogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgfQogICAgICAgICAgfSkKICAgICAgICB9KQogICAgICBlbmQKICAgIGVuZCwKICAgIGJsb2NrX2V4cCA9IGZ1bmN0aW9uKHNlbGYsIG5vZGUpCiAgICAgIGxvY2FsIGJvZHkgPSB1bnBhY2sobm9kZSwgMikKICAgICAgbG9jYWwgZm4gPSBuaWwKICAgICAgbG9jYWwgYXJnX2xpc3QgPSB7IH0KICAgICAgZm4gPSBzbWFydF9ub2RlKGJ1aWxkLmZuZGVmKHsKICAgICAgICBib2R5ID0gewogICAgICAgICAgUnVuKGZ1bmN0aW9uKHNlbGYpCiAgICAgICAgICAgIHJldHVybiBzZWxmOmxpc3RlbigidmFyYXJncyIsIGZ1bmN0aW9uKCkKICAgICAgICAgICAgICBpbnNlcnQoYXJnX2xpc3QsICIuLi4iKQogICAgICAgICAgICAgIGluc2VydChmbi5hcmdzLCB7CiAgICAgICAgICAgICAgICAiLi4uIgogICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgcmV0dXJuIHNlbGY6dW5saXN0ZW4oInZhcmFyZ3MiKQogICAgICAgICAgICBlbmQpCiAgICAgICAgICBlbmQpLAogICAgICAgICAgdW5wYWNrKGJvZHkpCiAgICAgICAgfQogICAgICB9KSkKICAgICAgcmV0dXJuIGJ1aWxkLmNoYWluKHsKICAgICAgICBiYXNlID0gewogICAgICAgICAgInBhcmVucyIsCiAgICAgICAgICBmbgogICAgICAgIH0sCiAgICAgICAgewogICAgICAgICAgImNhbGwiLAogICAgICAgICAgYXJnX2xpc3QKICAgICAgICB9CiAgICAgIH0pCiAgICBlbmQKICB9KQogIAplbmQKcGFja2FnZS5wcmVsb2FkWydtb29uc2NyaXB0LnRyYW5zZm9ybS5hY2N1bXVsYXRvciddID0gZnVuY3Rpb24oKQogIGxvY2FsIHR5cGVzID0gcmVxdWlyZSgibW9vbnNjcmlwdC50eXBlcyIpCiAgbG9jYWwgYnVpbGQsIG50eXBlLCBOT09QCiAgYnVpbGQsIG50eXBlLCBOT09QID0gdHlwZXMuYnVpbGQsIHR5cGVzLm50eXBlLCB0eXBlcy5OT09QCiAgbG9jYWwgTmFtZVByb3h5CiAgTmFtZVByb3h5ID0gcmVxdWlyZSgibW9vbnNjcmlwdC50cmFuc2Zvcm0ubmFtZXMiKS5OYW1lUHJveHkKICBsb2NhbCBpbnNlcnQKICBpbnNlcnQgPSB0YWJsZS5pbnNlcnQKICBsb2NhbCBpc19zaW5ndWxhcgogIGlzX3Npbmd1bGFyID0gZnVuY3Rpb24oYm9keSkKICAgIGlmICNib2R5IH49IDEgdGhlbgogICAgICByZXR1cm4gZmFsc2UKICAgIGVuZAogICAgaWYgImdyb3VwIiA9PSBudHlwZShib2R5KSB0aGVuCiAgICAgIHJldHVybiBpc19zaW5ndWxhcihib2R5WzJdKQogICAgZWxzZQogICAgICByZXR1cm4gYm9keVsxXQogICAgZW5kCiAgZW5kCiAgbG9jYWwgdHJhbnNmb3JtX2xhc3Rfc3RtCiAgdHJhbnNmb3JtX2xhc3Rfc3RtID0gcmVxdWlyZSgibW9vbnNjcmlwdC50cmFuc2Zvcm0uc3RhdGVtZW50cyIpLnRyYW5zZm9ybV9sYXN0X3N0bQogIGxvY2FsIEFjY3VtdWxhdG9yCiAgZG8KICAgIGxvY2FsIF9jbGFzc18wCiAgICBsb2NhbCBfYmFzZV8wID0gewogICAgICBib2R5X2lkeCA9IHsKICAgICAgICBbImZvciJdID0gNCwKICAgICAgICBbIndoaWxlIl0gPSAzLAogICAgICAgIGZvcmVhY2ggPSA0CiAgICAgIH0sCiAgICAgIGNvbnZlcnQgPSBmdW5jdGlvbihzZWxmLCBub2RlKQogICAgICAgIGxvY2FsIGluZGV4ID0gc2VsZi5ib2R5X2lkeFtudHlwZShub2RlKV0KICAgICAgICBub2RlW2luZGV4XSA9IHNlbGY6bXV0YXRlX2JvZHkobm9kZVtpbmRleF0pCiAgICAgICAgcmV0dXJuIHNlbGY6d3JhcChub2RlKQogICAgICBlbmQsCiAgICAgIHdyYXAgPSBmdW5jdGlvbihzZWxmLCBub2RlLCBncm91cF90eXBlKQogICAgICAgIGlmIGdyb3VwX3R5cGUgPT0gbmlsIHRoZW4KICAgICAgICAgIGdyb3VwX3R5cGUgPSAiYmxvY2tfZXhwIgogICAgICAgIGVuZAogICAgICAgIHJldHVybiBidWlsZFtncm91cF90eXBlXSh7CiAgICAgICAgICBidWlsZC5hc3NpZ25fb25lKHNlbGYuYWNjdW1fbmFtZSwgYnVpbGQudGFibGUoKSksCiAgICAgICAgICBidWlsZC5hc3NpZ25fb25lKHNlbGYubGVuX25hbWUsIDEpLAogICAgICAgICAgbm9kZSwKICAgICAgICAgIGdyb3VwX3R5cGUgPT0gImJsb2NrX2V4cCIgYW5kIHNlbGYuYWNjdW1fbmFtZSBvciBOT09QCiAgICAgICAgfSkKICAgICAgZW5kLAogICAgICBtdXRhdGVfYm9keSA9IGZ1bmN0aW9uKHNlbGYsIGJvZHkpCiAgICAgICAgbG9jYWwgc2luZ2xlX3N0bSA9IGlzX3Npbmd1bGFyKGJvZHkpCiAgICAgICAgbG9jYWwgdmFsCiAgICAgICAgaWYgc2luZ2xlX3N0bSBhbmQgdHlwZXMuaXNfdmFsdWUoc2luZ2xlX3N0bSkgdGhlbgogICAgICAgICAgYm9keSA9IHsgfQogICAgICAgICAgdmFsID0gc2luZ2xlX3N0bQogICAgICAgIGVsc2UKICAgICAgICAgIGJvZHkgPSB0cmFuc2Zvcm1fbGFzdF9zdG0oYm9keSwgZnVuY3Rpb24obikKICAgICAgICAgICAgaWYgdHlwZXMuaXNfdmFsdWUobikgdGhlbgogICAgICAgICAgICAgIHJldHVybiBidWlsZC5hc3NpZ25fb25lKHNlbGYudmFsdWVfbmFtZSwgbikKICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgIHJldHVybiBidWlsZC5ncm91cCh7CiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICJkZWNsYXJlIiwKICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIHNlbGYudmFsdWVfbmFtZQogICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgbgogICAgICAgICAgICAgIH0pCiAgICAgICAgICAgIGVuZAogICAgICAgICAgZW5kKQogICAgICAgICAgdmFsID0gc2VsZi52YWx1ZV9uYW1lCiAgICAgICAgZW5kCiAgICAgICAgbG9jYWwgdXBkYXRlID0gewogICAgICAgICAgYnVpbGQuYXNzaWduX29uZShOYW1lUHJveHkuaW5kZXgoc2VsZi5hY2N1bV9uYW1lLCBzZWxmLmxlbl9uYW1lKSwgdmFsKSwKICAgICAgICAgIHsKICAgICAgICAgICAgInVwZGF0ZSIsCiAgICAgICAgICAgIHNlbGYubGVuX25hbWUsCiAgICAgICAgICAgICIrPSIsCiAgICAgICAgICAgIDEKICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgaW5zZXJ0KGJvZHksIGJ1aWxkLmdyb3VwKHVwZGF0ZSkpCiAgICAgICAgcmV0dXJuIGJvZHkKICAgICAgZW5kCiAgICB9CiAgICBfYmFzZV8wLl9faW5kZXggPSBfYmFzZV8wCiAgICBfY2xhc3NfMCA9IHNldG1ldGF0YWJsZSh7CiAgICAgIF9faW5pdCA9IGZ1bmN0aW9uKHNlbGYsIGFjY3VtX25hbWUpCiAgICAgICAgc2VsZi5hY2N1bV9uYW1lID0gTmFtZVByb3h5KCJhY2N1bSIpCiAgICAgICAgc2VsZi52YWx1ZV9uYW1lID0gTmFtZVByb3h5KCJ2YWx1ZSIpCiAgICAgICAgc2VsZi5sZW5fbmFtZSA9IE5hbWVQcm94eSgibGVuIikKICAgICAgZW5kLAogICAgICBfX2Jhc2UgPSBfYmFzZV8wLAogICAgICBfX25hbWUgPSAiQWNjdW11bGF0b3IiCiAgICB9LCB7CiAgICAgIF9faW5kZXggPSBfYmFzZV8wLAogICAgICBfX2NhbGwgPSBmdW5jdGlvbihjbHMsIC4uLikKICAgICAgICBsb2NhbCBfc2VsZl8wID0gc2V0bWV0YXRhYmxlKHt9LCBfYmFzZV8wKQogICAgICAgIGNscy5fX2luaXQoX3NlbGZfMCwgLi4uKQogICAgICAgIHJldHVybiBfc2VsZl8wCiAgICAgIGVuZAogICAgfSkKICAgIF9iYXNlXzAuX19jbGFzcyA9IF9jbGFzc18wCiAgICBBY2N1bXVsYXRvciA9IF9jbGFzc18wCiAgZW5kCiAgbG9jYWwgZGVmYXVsdF9hY2N1bXVsYXRvcgogIGRlZmF1bHRfYWNjdW11bGF0b3IgPSBmdW5jdGlvbihzZWxmLCBub2RlKQogICAgcmV0dXJuIEFjY3VtdWxhdG9yKCk6Y29udmVydChub2RlKQogIGVuZAogIHJldHVybiB7CiAgICBBY2N1bXVsYXRvciA9IEFjY3VtdWxhdG9yLAogICAgZGVmYXVsdF9hY2N1bXVsYXRvciA9IGRlZmF1bHRfYWNjdW11bGF0b3IKICB9CiAgCmVuZApwYWNrYWdlLnByZWxvYWRbJ21vb25zY3JpcHQudHJhbnNmb3JtLmNvbXByZWhlbnNpb24nXSA9IGZ1bmN0aW9uKCkKICBsb2NhbCBpc192YWx1ZQogIGlzX3ZhbHVlID0gcmVxdWlyZSgibW9vbnNjcmlwdC50eXBlcyIpLmlzX3ZhbHVlCiAgbG9jYWwgY29uc3RydWN0X2NvbXByZWhlbnNpb24KICBjb25zdHJ1Y3RfY29tcHJlaGVuc2lvbiA9IGZ1bmN0aW9uKGlubmVyLCBjbGF1c2VzKQogICAgbG9jYWwgY3VycmVudF9zdG1zID0gaW5uZXIKICAgIGZvciBpID0gI2NsYXVzZXMsIDEsIC0xIGRvCiAgICAgIGxvY2FsIGNsYXVzZSA9IGNsYXVzZXNbaV0KICAgICAgbG9jYWwgdCA9IGNsYXVzZVsxXQogICAgICBsb2NhbCBfZXhwXzAgPSB0CiAgICAgIGlmICJmb3IiID09IF9leHBfMCB0aGVuCiAgICAgICAgbG9jYWwgXywgbmFtZSwgYm91bmRzCiAgICAgICAgXywgbmFtZSwgYm91bmRzID0gY2xhdXNlWzFdLCBjbGF1c2VbMl0sIGNsYXVzZVszXQogICAgICAgIGN1cnJlbnRfc3RtcyA9IHsKICAgICAgICAgICJmb3IiLAogICAgICAgICAgbmFtZSwKICAgICAgICAgIGJvdW5kcywKICAgICAgICAgIGN1cnJlbnRfc3RtcwogICAgICAgIH0KICAgICAgZWxzZWlmICJmb3JlYWNoIiA9PSBfZXhwXzAgdGhlbgogICAgICAgIGxvY2FsIF8sIG5hbWVzLCBpdGVyCiAgICAgICAgXywgbmFtZXMsIGl0ZXIgPSBjbGF1c2VbMV0sIGNsYXVzZVsyXSwgY2xhdXNlWzNdCiAgICAgICAgY3VycmVudF9zdG1zID0gewogICAgICAgICAgImZvcmVhY2giLAogICAgICAgICAgbmFtZXMsCiAgICAgICAgICB7CiAgICAgICAgICAgIGl0ZXIKICAgICAgICAgIH0sCiAgICAgICAgICBjdXJyZW50X3N0bXMKICAgICAgICB9CiAgICAgIGVsc2VpZiAid2hlbiIgPT0gX2V4cF8wIHRoZW4KICAgICAgICBsb2NhbCBfLCBjb25kCiAgICAgICAgXywgY29uZCA9IGNsYXVzZVsxXSwgY2xhdXNlWzJdCiAgICAgICAgY3VycmVudF9zdG1zID0gewogICAgICAgICAgImlmIiwKICAgICAgICAgIGNvbmQsCiAgICAgICAgICBjdXJyZW50X3N0bXMKICAgICAgICB9CiAgICAgIGVsc2UKICAgICAgICBjdXJyZW50X3N0bXMgPSBlcnJvcigiVW5rbm93biBjb21wcmVoZW5zaW9uIGNsYXVzZTogIiAuLiB0KQogICAgICBlbmQKICAgICAgY3VycmVudF9zdG1zID0gewogICAgICAgIGN1cnJlbnRfc3RtcwogICAgICB9CiAgICBlbmQKICAgIHJldHVybiBjdXJyZW50X3N0bXNbMV0KICBlbmQKICBsb2NhbCBjb21wcmVoZW5zaW9uX2hhc192YWx1ZQogIGNvbXByZWhlbnNpb25faGFzX3ZhbHVlID0gZnVuY3Rpb24oY29tcCkKICAgIHJldHVybiBpc192YWx1ZShjb21wWzJdKQogIGVuZAogIHJldHVybiB7CiAgICBjb25zdHJ1Y3RfY29tcHJlaGVuc2lvbiA9IGNvbnN0cnVjdF9jb21wcmVoZW5zaW9uLAogICAgY29tcHJlaGVuc2lvbl9oYXNfdmFsdWUgPSBjb21wcmVoZW5zaW9uX2hhc192YWx1ZQogIH0KICAKZW5kCnBhY2thZ2UucHJlbG9hZFsnbW9vbnNjcmlwdC50cmFuc2Zvcm0udHJhbnNmb3JtZXInXSA9IGZ1bmN0aW9uKCkKICBsb2NhbCBudHlwZQogIG50eXBlID0gcmVxdWlyZSgibW9vbnNjcmlwdC50eXBlcyIpLm50eXBlCiAgbG9jYWwgVHJhbnNmb3JtZXIKICBkbwogICAgbG9jYWwgX2NsYXNzXzAKICAgIGxvY2FsIF9iYXNlXzAgPSB7CiAgICAgIHRyYW5zZm9ybV9vbmNlID0gZnVuY3Rpb24oc2VsZiwgc2NvcGUsIG5vZGUsIC4uLikKICAgICAgICBpZiBzZWxmLnNlZW5fbm9kZXNbbm9kZV0gdGhlbgogICAgICAgICAgcmV0dXJuIG5vZGUKICAgICAgICBlbmQKICAgICAgICBzZWxmLnNlZW5fbm9kZXNbbm9kZV0gPSB0cnVlCiAgICAgICAgbG9jYWwgdHJhbnNmb3JtZXIgPSBzZWxmLnRyYW5zZm9ybWVyc1tudHlwZShub2RlKV0KICAgICAgICBpZiB0cmFuc2Zvcm1lciB0aGVuCiAgICAgICAgICByZXR1cm4gdHJhbnNmb3JtZXIoc2NvcGUsIG5vZGUsIC4uLikgb3Igbm9kZQogICAgICAgIGVsc2UKICAgICAgICAgIHJldHVybiBub2RlCiAgICAgICAgZW5kCiAgICAgIGVuZCwKICAgICAgdHJhbnNmb3JtID0gZnVuY3Rpb24oc2VsZiwgc2NvcGUsIG5vZGUsIC4uLikKICAgICAgICBpZiBzZWxmLnNlZW5fbm9kZXNbbm9kZV0gdGhlbgogICAgICAgICAgcmV0dXJuIG5vZGUKICAgICAgICBlbmQKICAgICAgICBzZWxmLnNlZW5fbm9kZXNbbm9kZV0gPSB0cnVlCiAgICAgICAgd2hpbGUgdHJ1ZSBkbwogICAgICAgICAgbG9jYWwgdHJhbnNmb3JtZXIgPSBzZWxmLnRyYW5zZm9ybWVyc1tudHlwZShub2RlKV0KICAgICAgICAgIGxvY2FsIHJlcwogICAgICAgICAgaWYgdHJhbnNmb3JtZXIgdGhlbgogICAgICAgICAgICByZXMgPSB0cmFuc2Zvcm1lcihzY29wZSwgbm9kZSwgLi4uKSBvciBub2RlCiAgICAgICAgICBlbHNlCiAgICAgICAgICAgIHJlcyA9IG5vZGUKICAgICAgICAgIGVuZAogICAgICAgICAgaWYgcmVzID09IG5vZGUgdGhlbgogICAgICAgICAgICByZXR1cm4gbm9kZQogICAgICAgICAgZW5kCiAgICAgICAgICBub2RlID0gcmVzCiAgICAgICAgZW5kCiAgICAgICAgcmV0dXJuIG5vZGUKICAgICAgZW5kLAogICAgICBiaW5kID0gZnVuY3Rpb24oc2VsZiwgc2NvcGUpCiAgICAgICAgcmV0dXJuIGZ1bmN0aW9uKC4uLikKICAgICAgICAgIHJldHVybiBzZWxmOnRyYW5zZm9ybShzY29wZSwgLi4uKQogICAgICAgIGVuZAogICAgICBlbmQsCiAgICAgIF9fY2FsbCA9IGZ1bmN0aW9uKHNlbGYsIC4uLikKICAgICAgICByZXR1cm4gc2VsZjp0cmFuc2Zvcm0oLi4uKQogICAgICBlbmQsCiAgICAgIGNhbl90cmFuc2Zvcm0gPSBmdW5jdGlvbihzZWxmLCBub2RlKQogICAgICAgIHJldHVybiBzZWxmLnRyYW5zZm9ybWVyc1tudHlwZShub2RlKV0gfj0gbmlsCiAgICAgIGVuZAogICAgfQogICAgX2Jhc2VfMC5fX2luZGV4ID0gX2Jhc2VfMAogICAgX2NsYXNzXzAgPSBzZXRtZXRhdGFibGUoewogICAgICBfX2luaXQgPSBmdW5jdGlvbihzZWxmLCB0cmFuc2Zvcm1lcnMpCiAgICAgICAgc2VsZi50cmFuc2Zvcm1lcnMgPSB0cmFuc2Zvcm1lcnMKICAgICAgICBzZWxmLnNlZW5fbm9kZXMgPSBzZXRtZXRhdGFibGUoeyB9LCB7CiAgICAgICAgICBfX21vZGUgPSAiayIKICAgICAgICB9KQogICAgICBlbmQsCiAgICAgIF9fYmFzZSA9IF9iYXNlXzAsCiAgICAgIF9fbmFtZSA9ICJUcmFuc2Zvcm1lciIKICAgIH0sIHsKICAgICAgX19pbmRleCA9IF9iYXNlXzAsCiAgICAgIF9fY2FsbCA9IGZ1bmN0aW9uKGNscywgLi4uKQogICAgICAgIGxvY2FsIF9zZWxmXzAgPSBzZXRtZXRhdGFibGUoe30sIF9iYXNlXzApCiAgICAgICAgY2xzLl9faW5pdChfc2VsZl8wLCAuLi4pCiAgICAgICAgcmV0dXJuIF9zZWxmXzAKICAgICAgZW5kCiAgICB9KQogICAgX2Jhc2VfMC5fX2NsYXNzID0gX2NsYXNzXzAKICAgIFRyYW5zZm9ybWVyID0gX2NsYXNzXzAKICBlbmQKICByZXR1cm4gewogICAgVHJhbnNmb3JtZXIgPSBUcmFuc2Zvcm1lcgogIH0KICAKZW5kCnBhY2thZ2UucHJlbG9hZFsnbW9vbnNjcmlwdC50cmFuc2Zvcm0uc3RhdGVtZW50cyddID0gZnVuY3Rpb24oKQogIGxvY2FsIHR5cGVzID0gcmVxdWlyZSgibW9vbnNjcmlwdC50eXBlcyIpCiAgbG9jYWwgbnR5cGUsIG10eXBlLCBpc192YWx1ZSwgTk9PUAogIG50eXBlLCBtdHlwZSwgaXNfdmFsdWUsIE5PT1AgPSB0eXBlcy5udHlwZSwgdHlwZXMubXR5cGUsIHR5cGVzLmlzX3ZhbHVlLCB0eXBlcy5OT09QCiAgbG9jYWwgY29tcHJlaGVuc2lvbl9oYXNfdmFsdWUKICBjb21wcmVoZW5zaW9uX2hhc192YWx1ZSA9IHJlcXVpcmUoIm1vb25zY3JpcHQudHJhbnNmb3JtLmNvbXByZWhlbnNpb24iKS5jb21wcmVoZW5zaW9uX2hhc192YWx1ZQogIGxvY2FsIFJ1bgogIGRvCiAgICBsb2NhbCBfY2xhc3NfMAogICAgbG9jYWwgX2Jhc2VfMCA9IHsKICAgICAgY2FsbCA9IGZ1bmN0aW9uKHNlbGYsIHN0YXRlKQogICAgICAgIHJldHVybiBzZWxmLmZuKHN0YXRlKQogICAgICBlbmQKICAgIH0KICAgIF9iYXNlXzAuX19pbmRleCA9IF9iYXNlXzAKICAgIF9jbGFzc18wID0gc2V0bWV0YXRhYmxlKHsKICAgICAgX19pbml0ID0gZnVuY3Rpb24oc2VsZiwgZm4pCiAgICAgICAgc2VsZi5mbiA9IGZuCiAgICAgICAgc2VsZlsxXSA9ICJydW4iCiAgICAgIGVuZCwKICAgICAgX19iYXNlID0gX2Jhc2VfMCwKICAgICAgX19uYW1lID0gIlJ1biIKICAgIH0sIHsKICAgICAgX19pbmRleCA9IF9iYXNlXzAsCiAgICAgIF9fY2FsbCA9IGZ1bmN0aW9uKGNscywgLi4uKQogICAgICAgIGxvY2FsIF9zZWxmXzAgPSBzZXRtZXRhdGFibGUoe30sIF9iYXNlXzApCiAgICAgICAgY2xzLl9faW5pdChfc2VsZl8wLCAuLi4pCiAgICAgICAgcmV0dXJuIF9zZWxmXzAKICAgICAgZW5kCiAgICB9KQogICAgX2Jhc2VfMC5fX2NsYXNzID0gX2NsYXNzXzAKICAgIFJ1biA9IF9jbGFzc18wCiAgZW5kCiAgbG9jYWwgbGFzdF9zdG0KICBsYXN0X3N0bSA9IGZ1bmN0aW9uKHN0bXMpCiAgICBsb2NhbCBsYXN0X2V4cF9pZCA9IDAKICAgIGZvciBpID0gI3N0bXMsIDEsIC0xIGRvCiAgICAgIGxvY2FsIHN0bSA9IHN0bXNbaV0KICAgICAgaWYgc3RtIGFuZCBtdHlwZShzdG0pIH49IFJ1biB0aGVuCiAgICAgICAgaWYgbnR5cGUoc3RtKSA9PSAiZ3JvdXAiIHRoZW4KICAgICAgICAgIHJldHVybiBsYXN0X3N0bShzdG1bMl0pCiAgICAgICAgZW5kCiAgICAgICAgbGFzdF9leHBfaWQgPSBpCiAgICAgICAgYnJlYWsKICAgICAgZW5kCiAgICBlbmQKICAgIHJldHVybiBzdG1zW2xhc3RfZXhwX2lkXSwgbGFzdF9leHBfaWQsIHN0bXMKICBlbmQKICBsb2NhbCB0cmFuc2Zvcm1fbGFzdF9zdG0KICB0cmFuc2Zvcm1fbGFzdF9zdG0gPSBmdW5jdGlvbihzdG1zLCBmbikKICAgIGxvY2FsIF8sIGxhc3RfaWR4LCBfc3RtcyA9IGxhc3Rfc3RtKHN0bXMpCiAgICBpZiBfc3RtcyB+PSBzdG1zIHRoZW4KICAgICAgZXJyb3IoImNhbm5vdCB0cmFuc2Zvcm0gbGFzdCBub2RlIGluIGdyb3VwIikKICAgIGVuZAogICAgcmV0dXJuIChmdW5jdGlvbigpCiAgICAgIGxvY2FsIF9hY2N1bV8wID0geyB9CiAgICAgIGxvY2FsIF9sZW5fMCA9IDEKICAgICAgZm9yIGksIHN0bSBpbiBpcGFpcnMoc3RtcykgZG8KICAgICAgICBpZiBpID09IGxhc3RfaWR4IHRoZW4KICAgICAgICAgIF9hY2N1bV8wW19sZW5fMF0gPSB7CiAgICAgICAgICAgICJ0cmFuc2Zvcm0iLAogICAgICAgICAgICBzdG0sCiAgICAgICAgICAgIGZuCiAgICAgICAgICB9CiAgICAgICAgZWxzZQogICAgICAgICAgX2FjY3VtXzBbX2xlbl8wXSA9IHN0bQogICAgICAgIGVuZAogICAgICAgIF9sZW5fMCA9IF9sZW5fMCArIDEKICAgICAgZW5kCiAgICAgIHJldHVybiBfYWNjdW1fMAogICAgZW5kKSgpCiAgZW5kCiAgbG9jYWwgY2hhaW5faXNfc3R1YgogIGNoYWluX2lzX3N0dWIgPSBmdW5jdGlvbihjaGFpbikKICAgIGxvY2FsIHN0dWIgPSBjaGFpblsjY2hhaW5dCiAgICByZXR1cm4gc3R1YiBhbmQgbnR5cGUoc3R1YikgPT0gImNvbG9uIgogIGVuZAogIGxvY2FsIGltcGxpY2l0bHlfcmV0dXJuCiAgaW1wbGljaXRseV9yZXR1cm4gPSBmdW5jdGlvbihzY29wZSkKICAgIGxvY2FsIGlzX3RvcCA9IHRydWUKICAgIGxvY2FsIGZuCiAgICBmbiA9IGZ1bmN0aW9uKHN0bSkKICAgICAgbG9jYWwgdCA9IG50eXBlKHN0bSkKICAgICAgaWYgdCA9PSAiZGVjb3JhdGVkIiB0aGVuCiAgICAgICAgc3RtID0gc2NvcGUudHJhbnNmb3JtLnN0YXRlbWVudChzdG0pCiAgICAgICAgdCA9IG50eXBlKHN0bSkKICAgICAgZW5kCiAgICAgIGlmIHR5cGVzLmNhc2NhZGluZ1t0XSB0aGVuCiAgICAgICAgaXNfdG9wID0gZmFsc2UKICAgICAgICByZXR1cm4gc2NvcGUudHJhbnNmb3JtLnN0YXRlbWVudChzdG0sIGZuKQogICAgICBlbHNlaWYgdHlwZXMubWFudWFsX3JldHVyblt0XSBvciBub3QgaXNfdmFsdWUoc3RtKSB0aGVuCiAgICAgICAgaWYgaXNfdG9wIGFuZCB0ID09ICJyZXR1cm4iIGFuZCBzdG1bMl0gPT0gIiIgdGhlbgogICAgICAgICAgcmV0dXJuIE5PT1AKICAgICAgICBlbHNlCiAgICAgICAgICByZXR1cm4gc3RtCiAgICAgICAgZW5kCiAgICAgIGVsc2UKICAgICAgICBpZiB0ID09ICJjb21wcmVoZW5zaW9uIiBhbmQgbm90IGNvbXByZWhlbnNpb25faGFzX3ZhbHVlKHN0bSkgdGhlbgogICAgICAgICAgcmV0dXJuIHN0bQogICAgICAgIGVsc2UKICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgICJyZXR1cm4iLAogICAgICAgICAgICBzdG0KICAgICAgICAgIH0KICAgICAgICBlbmQKICAgICAgZW5kCiAgICBlbmQKICAgIHJldHVybiBmbgogIGVuZAogIHJldHVybiB7CiAgICBSdW4gPSBSdW4sCiAgICBsYXN0X3N0bSA9IGxhc3Rfc3RtLAogICAgdHJhbnNmb3JtX2xhc3Rfc3RtID0gdHJhbnNmb3JtX2xhc3Rfc3RtLAogICAgY2hhaW5faXNfc3R1YiA9IGNoYWluX2lzX3N0dWIsCiAgICBpbXBsaWNpdGx5X3JldHVybiA9IGltcGxpY2l0bHlfcmV0dXJuCiAgfQogIAplbmQKcGFja2FnZS5wcmVsb2FkWydtb29uc2NyaXB0LnBhcnNlLmVudiddID0gZnVuY3Rpb24oKQogIGxvY2FsIGdldGZlbnYsIHNldGZlbnYKICBkbwogICAgbG9jYWwgX29ial8wID0gcmVxdWlyZSgibW9vbnNjcmlwdC51dGlsIikKICAgIGdldGZlbnYsIHNldGZlbnYgPSBfb2JqXzAuZ2V0ZmVudiwgX29ial8wLnNldGZlbnYKICBlbmQKICBsb2NhbCB3cmFwX2VudgogIHdyYXBfZW52ID0gZnVuY3Rpb24oZGVidWcsIGZuKQogICAgbG9jYWwgViwgQ210CiAgICBkbwogICAgICBsb2NhbCBfb2JqXzAgPSByZXF1aXJlKCJscGVnIikKICAgICAgViwgQ210ID0gX29ial8wLlYsIF9vYmpfMC5DbXQKICAgIGVuZAogICAgbG9jYWwgZW52ID0gZ2V0ZmVudihmbikKICAgIGxvY2FsIHdyYXBfbmFtZSA9IFYKICAgIGlmIGRlYnVnIHRoZW4KICAgICAgbG9jYWwgaW5kZW50ID0gMAogICAgICBsb2NhbCBpbmRlbnRfY2hhciA9ICIgICIKICAgICAgbG9jYWwgaXByaW50CiAgICAgIGlwcmludCA9IGZ1bmN0aW9uKC4uLikKICAgICAgICBsb2NhbCBhcmdzID0gdGFibGUuY29uY2F0KChmdW5jdGlvbiguLi4pCiAgICAgICAgICBsb2NhbCBfYWNjdW1fMCA9IHsgfQogICAgICAgICAgbG9jYWwgX2xlbl8wID0gMQogICAgICAgICAgbG9jYWwgX2xpc3RfMCA9IHsKICAgICAgICAgICAgLi4uCiAgICAgICAgICB9CiAgICAgICAgICBmb3IgX2luZGV4XzAgPSAxLCAjX2xpc3RfMCBkbwogICAgICAgICAgICBsb2NhbCBhID0gX2xpc3RfMFtfaW5kZXhfMF0KICAgICAgICAgICAgX2FjY3VtXzBbX2xlbl8wXSA9IHRvc3RyaW5nKGEpCiAgICAgICAgICAgIF9sZW5fMCA9IF9sZW5fMCArIDEKICAgICAgICAgIGVuZAogICAgICAgICAgcmV0dXJuIF9hY2N1bV8wCiAgICAgICAgZW5kKSguLi4pLCAiLCAiKQogICAgICAgIHJldHVybiBpby5zdGRlcnI6d3JpdGUodG9zdHJpbmcoaW5kZW50X2NoYXI6cmVwKGluZGVudCkpIC4uIHRvc3RyaW5nKGFyZ3MpIC4uICJcbiIpCiAgICAgIGVuZAogICAgICB3cmFwX25hbWUgPSBmdW5jdGlvbihuYW1lKQogICAgICAgIGxvY2FsIHYgPSBWKG5hbWUpCiAgICAgICAgdiA9IENtdCgiIiwgZnVuY3Rpb24oc3RyLCBwb3MpCiAgICAgICAgICBsb2NhbCByZXN0ID0gc3RyOnN1Yihwb3MsIC0xKTptYXRjaCgiXihbXlxuXSopIikKICAgICAgICAgIGlwcmludCgiKiAiIC4uIHRvc3RyaW5nKG5hbWUpIC4uICIgKCIgLi4gdG9zdHJpbmcocmVzdCkgLi4gIikiKQogICAgICAgICAgaW5kZW50ID0gaW5kZW50ICsgMQogICAgICAgICAgcmV0dXJuIHRydWUKICAgICAgICBlbmQpICogQ210KHYsIGZ1bmN0aW9uKHN0ciwgcG9zLCAuLi4pCiAgICAgICAgICBpcHJpbnQobmFtZSwgdHJ1ZSkKICAgICAgICAgIGluZGVudCA9IGluZGVudCAtIDEKICAgICAgICAgIHJldHVybiB0cnVlLCAuLi4KICAgICAgICBlbmQpICsgQ210KCIiLCBmdW5jdGlvbigpCiAgICAgICAgICBpcHJpbnQobmFtZSwgZmFsc2UpCiAgICAgICAgICBpbmRlbnQgPSBpbmRlbnQgLSAxCiAgICAgICAgICByZXR1cm4gZmFsc2UKICAgICAgICBlbmQpCiAgICAgICAgcmV0dXJuIHYKICAgICAgZW5kCiAgICBlbmQKICAgIHJldHVybiBzZXRmZW52KGZuLCBzZXRtZXRhdGFibGUoeyB9LCB7CiAgICAgIF9faW5kZXggPSBmdW5jdGlvbihzZWxmLCBuYW1lKQogICAgICAgIGxvY2FsIHZhbHVlID0gZW52W25hbWVdCiAgICAgICAgaWYgdmFsdWUgfj0gbmlsIHRoZW4KICAgICAgICAgIHJldHVybiB2YWx1ZQogICAgICAgIGVuZAogICAgICAgIGlmIG5hbWU6bWF0Y2goIl5bQS1aXVtBLVphLXowLTldKiQiKSB0aGVuCiAgICAgICAgICBsb2NhbCB2ID0gd3JhcF9uYW1lKG5hbWUpCiAgICAgICAgICByZXR1cm4gdgogICAgICAgIGVuZAogICAgICAgIHJldHVybiBlcnJvcigidW5rbm93biB2YXJpYWJsZSByZWZlcmVuY2VkOiAiIC4uIHRvc3RyaW5nKG5hbWUpKQogICAgICBlbmQKICAgIH0pKQogIGVuZAogIHJldHVybiB7CiAgICB3cmFwX2VudiA9IHdyYXBfZW52CiAgfQogIAplbmQKcGFja2FnZS5wcmVsb2FkWydtb29uc2NyaXB0LnBhcnNlLnV0aWwnXSA9IGZ1bmN0aW9uKCkKICBsb2NhbCB1bnBhY2sKICB1bnBhY2sgPSByZXF1aXJlKCJtb29uc2NyaXB0LnV0aWwiKS51bnBhY2sKICBsb2NhbCBQLCBDLCBTLCBDcCwgQ210LCBWCiAgZG8KICAgIGxvY2FsIF9vYmpfMCA9IHJlcXVpcmUoImxwZWciKQogICAgUCwgQywgUywgQ3AsIENtdCwgViA9IF9vYmpfMC5QLCBfb2JqXzAuQywgX29ial8wLlMsIF9vYmpfMC5DcCwgX29ial8wLkNtdCwgX29ial8wLlYKICBlbmQKICBsb2NhbCBudHlwZQogIG50eXBlID0gcmVxdWlyZSgibW9vbnNjcmlwdC50eXBlcyIpLm50eXBlCiAgbG9jYWwgU3BhY2UKICBTcGFjZSA9IHJlcXVpcmUoIm1vb25zY3JpcHQucGFyc2UubGl0ZXJhbHMiKS5TcGFjZQogIGxvY2FsIEluZGVudCA9IEMoUygiXHQgIikgXiAwKSAvIGZ1bmN0aW9uKHN0cikKICAgIGRvCiAgICAgIGxvY2FsIHN1bSA9IDAKICAgICAgZm9yIHYgaW4gc3RyOmdtYXRjaCgiW1x0IF0iKSBkbwogICAgICAgIGxvY2FsIF9leHBfMCA9IHYKICAgICAgICBpZiAiICIgPT0gX2V4cF8wIHRoZW4KICAgICAgICAgIHN1bSA9IHN1bSArIDEKICAgICAgICBlbHNlaWYgIlx0IiA9PSBfZXhwXzAgdGhlbgogICAgICAgICAgc3VtID0gc3VtICsgNAogICAgICAgIGVuZAogICAgICBlbmQKICAgICAgcmV0dXJuIHN1bQogICAgZW5kCiAgZW5kCiAgbG9jYWwgQ3V0ID0gUChmdW5jdGlvbigpCiAgICByZXR1cm4gZmFsc2UKICBlbmQpCiAgbG9jYWwgZW5zdXJlCiAgZW5zdXJlID0gZnVuY3Rpb24ocGF0dCwgZmluYWxseSkKICAgIHJldHVybiBwYXR0ICogZmluYWxseSArIGZpbmFsbHkgKiBDdXQKICBlbmQKICBsb2NhbCBleHRyYWN0X2xpbmUKICBleHRyYWN0X2xpbmUgPSBmdW5jdGlvbihzdHIsIHN0YXJ0X3BvcykKICAgIHN0ciA9IHN0cjpzdWIoc3RhcnRfcG9zKQogICAgZG8KICAgICAgbG9jYWwgbSA9IHN0cjptYXRjaCgiXiguLSlcbiIpCiAgICAgIGlmIG0gdGhlbgogICAgICAgIHJldHVybiBtCiAgICAgIGVuZAogICAgZW5kCiAgICByZXR1cm4gc3RyOm1hdGNoKCJeLi0kIikKICBlbmQKICBsb2NhbCBzaG93X2xpbmVfcG9zaXRpb24KICBzaG93X2xpbmVfcG9zaXRpb24gPSBmdW5jdGlvbihzdHIsIHBvcywgY29udGV4dCkKICAgIGlmIGNvbnRleHQgPT0gbmlsIHRoZW4KICAgICAgY29udGV4dCA9IHRydWUKICAgIGVuZAogICAgbG9jYWwgbGluZXMgPSB7CiAgICAgIHsgfQogICAgfQogICAgZm9yIGMgaW4gc3RyOmdtYXRjaCgiLiIpIGRvCiAgICAgIGxpbmVzWyNsaW5lc10gPSBsaW5lc1sjbGluZXNdIG9yIHsgfQogICAgICB0YWJsZS5pbnNlcnQobGluZXNbI2xpbmVzXSwgYykKICAgICAgaWYgYyA9PSAiXG4iIHRoZW4KICAgICAgICBsaW5lc1sjbGluZXMgKyAxXSA9IHsgfQogICAgICBlbmQKICAgIGVuZAogICAgZm9yIGksIGxpbmUgaW4gaXBhaXJzKGxpbmVzKSBkbwogICAgICBsaW5lc1tpXSA9IHRhYmxlLmNvbmNhdChsaW5lKQogICAgZW5kCiAgICBsb2NhbCBvdXQKICAgIGxvY2FsIHJlbWFpbmluZyA9IHBvcyAtIDEKICAgIGZvciBrLCBsaW5lIGluIGlwYWlycyhsaW5lcykgZG8KICAgICAgaWYgcmVtYWluaW5nIDwgI2xpbmUgdGhlbgogICAgICAgIGxvY2FsIGxlZnQgPSBsaW5lOnN1YigxLCByZW1haW5pbmcpCiAgICAgICAgbG9jYWwgcmlnaHQgPSBsaW5lOnN1YihyZW1haW5pbmcgKyAxKQogICAgICAgIG91dCA9IHsKICAgICAgICAgIHRvc3RyaW5nKGxlZnQpIC4uICLil4kiIC4uIHRvc3RyaW5nKHJpZ2h0KQogICAgICAgIH0KICAgICAgICBpZiBjb250ZXh0IHRoZW4KICAgICAgICAgIGRvCiAgICAgICAgICAgIGxvY2FsIGJlZm9yZSA9IGxpbmVzW2sgLSAxXQogICAgICAgICAgICBpZiBiZWZvcmUgdGhlbgogICAgICAgICAgICAgIHRhYmxlLmluc2VydChvdXQsIDEsIGJlZm9yZSkKICAgICAgICAgICAgZW5kCiAgICAgICAgICBlbmQKICAgICAgICAgIGRvCiAgICAgICAgICAgIGxvY2FsIGFmdGVyID0gbGluZXNbayArIDFdCiAgICAgICAgICAgIGlmIGFmdGVyIHRoZW4KICAgICAgICAgICAgICB0YWJsZS5pbnNlcnQob3V0LCBhZnRlcikKICAgICAgICAgICAgZW5kCiAgICAgICAgICBlbmQKICAgICAgICBlbmQKICAgICAgICBicmVhawogICAgICBlbHNlCiAgICAgICAgcmVtYWluaW5nID0gcmVtYWluaW5nIC0gI2xpbmUKICAgICAgZW5kCiAgICBlbmQKICAgIGlmIG5vdCAob3V0KSB0aGVuCiAgICAgIHJldHVybiAiLSIKICAgIGVuZAogICAgb3V0ID0gdGFibGUuY29uY2F0KG91dCkKICAgIHJldHVybiAob3V0OmdzdWIoIlxuKiQiLCAiIikpCiAgZW5kCiAgbG9jYWwgbWFyawogIG1hcmsgPSBmdW5jdGlvbihuYW1lKQogICAgcmV0dXJuIGZ1bmN0aW9uKC4uLikKICAgICAgcmV0dXJuIHsKICAgICAgICBuYW1lLAogICAgICAgIC4uLgogICAgICB9CiAgICBlbmQKICBlbmQKICBsb2NhbCBwb3MKICBwb3MgPSBmdW5jdGlvbihwYXR0KQogICAgcmV0dXJuIChDcCgpICogcGF0dCkgLyBmdW5jdGlvbihwb3MsIHZhbHVlKQogICAgICBpZiB0eXBlKHZhbHVlKSA9PSAidGFibGUiIHRoZW4KICAgICAgICB2YWx1ZVstMV0gPSBwb3MKICAgICAgZW5kCiAgICAgIHJldHVybiB2YWx1ZQogICAgZW5kCiAgZW5kCiAgbG9jYWwgZ290CiAgZ290ID0gZnVuY3Rpb24od2hhdCwgY29udGV4dCkKICAgIGlmIGNvbnRleHQgPT0gbmlsIHRoZW4KICAgICAgY29udGV4dCA9IHRydWUKICAgIGVuZAogICAgcmV0dXJuIENtdCgiIiwgZnVuY3Rpb24oc3RyLCBwb3MpCiAgICAgIHByaW50KCIrKyBnb3QgIiAuLiB0b3N0cmluZyh3aGF0KSwgIlsiIC4uIHRvc3RyaW5nKHNob3dfbGluZV9wb3NpdGlvbihzdHIsIHBvcywgY29udGV4dCkpIC4uICJdIikKICAgICAgcmV0dXJuIHRydWUKICAgIGVuZCkKICBlbmQKICBsb2NhbCBmbGF0dGVuX29yX21hcmsKICBmbGF0dGVuX29yX21hcmsgPSBmdW5jdGlvbihuYW1lKQogICAgcmV0dXJuIGZ1bmN0aW9uKHRibCkKICAgICAgaWYgI3RibCA9PSAxIHRoZW4KICAgICAgICByZXR1cm4gdGJsWzFdCiAgICAgIGVuZAogICAgICB0YWJsZS5pbnNlcnQodGJsLCAxLCBuYW1lKQogICAgICByZXR1cm4gdGJsCiAgICBlbmQKICBlbmQKICBsb2NhbCBpc19hc3NpZ25hYmxlCiAgZG8KICAgIGxvY2FsIGNoYWluX2Fzc2lnbmFibGUgPSB7CiAgICAgIGluZGV4ID0gdHJ1ZSwKICAgICAgZG90ID0gdHJ1ZSwKICAgICAgc2xpY2UgPSB0cnVlCiAgICB9CiAgICBpc19hc3NpZ25hYmxlID0gZnVuY3Rpb24obm9kZSkKICAgICAgaWYgbm9kZSA9PSAiLi4uIiB0aGVuCiAgICAgICAgcmV0dXJuIGZhbHNlCiAgICAgIGVuZAogICAgICBsb2NhbCBfZXhwXzAgPSBudHlwZShub2RlKQogICAgICBpZiAicmVmIiA9PSBfZXhwXzAgb3IgInNlbGYiID09IF9leHBfMCBvciAidmFsdWUiID09IF9leHBfMCBvciAic2VsZl9jbGFzcyIgPT0gX2V4cF8wIG9yICJ0YWJsZSIgPT0gX2V4cF8wIHRoZW4KICAgICAgICByZXR1cm4gdHJ1ZQogICAgICBlbHNlaWYgImNoYWluIiA9PSBfZXhwXzAgdGhlbgogICAgICAgIHJldHVybiBjaGFpbl9hc3NpZ25hYmxlW250eXBlKG5vZGVbI25vZGVdKV0KICAgICAgZWxzZQogICAgICAgIHJldHVybiBmYWxzZQogICAgICBlbmQKICAgIGVuZAogIGVuZAogIGxvY2FsIGNoZWNrX2Fzc2lnbmFibGUKICBjaGVja19hc3NpZ25hYmxlID0gZnVuY3Rpb24oc3RyLCBwb3MsIHZhbHVlKQogICAgaWYgaXNfYXNzaWduYWJsZSh2YWx1ZSkgdGhlbgogICAgICByZXR1cm4gdHJ1ZSwgdmFsdWUKICAgIGVsc2UKICAgICAgcmV0dXJuIGZhbHNlCiAgICBlbmQKICBlbmQKICBsb2NhbCBmb3JtYXRfYXNzaWduCiAgZG8KICAgIGxvY2FsIGZsYXR0ZW5fZXhwbGlzdCA9IGZsYXR0ZW5fb3JfbWFyaygiZXhwbGlzdCIpCiAgICBmb3JtYXRfYXNzaWduID0gZnVuY3Rpb24obGhzX2V4cHMsIGFzc2lnbikKICAgICAgaWYgbm90IChhc3NpZ24pIHRoZW4KICAgICAgICByZXR1cm4gZmxhdHRlbl9leHBsaXN0KGxoc19leHBzKQogICAgICBlbmQKICAgICAgZm9yIF9pbmRleF8wID0gMSwgI2xoc19leHBzIGRvCiAgICAgICAgbG9jYWwgYXNzaWduX2V4cCA9IGxoc19leHBzW19pbmRleF8wXQogICAgICAgIGlmIG5vdCAoaXNfYXNzaWduYWJsZShhc3NpZ25fZXhwKSkgdGhlbgogICAgICAgICAgZXJyb3IoewogICAgICAgICAgICBhc3NpZ25fZXhwLAogICAgICAgICAgICAibGVmdCBoYW5kIGV4cHJlc3Npb24gaXMgbm90IGFzc2lnbmFibGUiCiAgICAgICAgICB9KQogICAgICAgIGVuZAogICAgICBlbmQKICAgICAgbG9jYWwgdCA9IG50eXBlKGFzc2lnbikKICAgICAgbG9jYWwgX2V4cF8wID0gdAogICAgICBpZiAiYXNzaWduIiA9PSBfZXhwXzAgdGhlbgogICAgICAgIHJldHVybiB7CiAgICAgICAgICAiYXNzaWduIiwKICAgICAgICAgIGxoc19leHBzLAogICAgICAgICAgdW5wYWNrKGFzc2lnbiwgMikKICAgICAgICB9CiAgICAgIGVsc2VpZiAidXBkYXRlIiA9PSBfZXhwXzAgdGhlbgogICAgICAgIHJldHVybiB7CiAgICAgICAgICAidXBkYXRlIiwKICAgICAgICAgIGxoc19leHBzWzFdLAogICAgICAgICAgdW5wYWNrKGFzc2lnbiwgMikKICAgICAgICB9CiAgICAgIGVsc2UKICAgICAgICByZXR1cm4gZXJyb3IoInVua25vd24gYXNzaWduIGV4cHJlc3Npb246ICIgLi4gdG9zdHJpbmcodCkpCiAgICAgIGVuZAogICAgZW5kCiAgZW5kCiAgbG9jYWwgZm9ybWF0X3NpbmdsZV9hc3NpZ24KICBmb3JtYXRfc2luZ2xlX2Fzc2lnbiA9IGZ1bmN0aW9uKGxocywgYXNzaWduKQogICAgaWYgYXNzaWduIHRoZW4KICAgICAgcmV0dXJuIGZvcm1hdF9hc3NpZ24oewogICAgICAgIGxocwogICAgICB9LCBhc3NpZ24pCiAgICBlbHNlCiAgICAgIHJldHVybiBsaHMKICAgIGVuZAogIGVuZAogIGxvY2FsIHN5bQogIHN5bSA9IGZ1bmN0aW9uKGNoYXJzKQogICAgcmV0dXJuIFNwYWNlICogY2hhcnMKICBlbmQKICBsb2NhbCBzeW14CiAgc3lteCA9IGZ1bmN0aW9uKGNoYXJzKQogICAgcmV0dXJuIGNoYXJzCiAgZW5kCiAgbG9jYWwgc2ltcGxlX3N0cmluZwogIHNpbXBsZV9zdHJpbmcgPSBmdW5jdGlvbihkZWxpbSwgYWxsb3dfaW50ZXJwb2xhdGlvbikKICAgIGxvY2FsIGlubmVyID0gUCgiXFwiIC4uIHRvc3RyaW5nKGRlbGltKSkgKyAiXFxcXCIgKyAoMSAtIFAoZGVsaW0pKQogICAgaWYgYWxsb3dfaW50ZXJwb2xhdGlvbiB0aGVuCiAgICAgIGxvY2FsIGludGVycCA9IHN5bXgoJyN7JykgKiBWKCJFeHAiKSAqIHN5bSgnfScpCiAgICAgIGlubmVyID0gKEMoKGlubmVyIC0gaW50ZXJwKSBeIDEpICsgaW50ZXJwIC8gbWFyaygiaW50ZXJwb2xhdGUiKSkgXiAwCiAgICBlbHNlCiAgICAgIGlubmVyID0gQyhpbm5lciBeIDApCiAgICBlbmQKICAgIHJldHVybiBDKHN5bXgoZGVsaW0pKSAqIGlubmVyICogc3ltKGRlbGltKSAvIG1hcmsoInN0cmluZyIpCiAgZW5kCiAgbG9jYWwgd3JhcF9mdW5jX2FyZwogIHdyYXBfZnVuY19hcmcgPSBmdW5jdGlvbih2YWx1ZSkKICAgIHJldHVybiB7CiAgICAgICJjYWxsIiwKICAgICAgewogICAgICAgIHZhbHVlCiAgICAgIH0KICAgIH0KICBlbmQKICBsb2NhbCBqb2luX2NoYWluCiAgam9pbl9jaGFpbiA9IGZ1bmN0aW9uKGNhbGxlZSwgYXJncykKICAgIGlmICNhcmdzID09IDAgdGhlbgogICAgICByZXR1cm4gY2FsbGVlCiAgICBlbmQKICAgIGFyZ3MgPSB7CiAgICAgICJjYWxsIiwKICAgICAgYXJncwogICAgfQogICAgaWYgbnR5cGUoY2FsbGVlKSA9PSAiY2hhaW4iIHRoZW4KICAgICAgdGFibGUuaW5zZXJ0KGNhbGxlZSwgYXJncykKICAgICAgcmV0dXJuIGNhbGxlZQogICAgZW5kCiAgICByZXR1cm4gewogICAgICAiY2hhaW4iLAogICAgICBjYWxsZWUsCiAgICAgIGFyZ3MKICAgIH0KICBlbmQKICBsb2NhbCB3cmFwX2RlY29yYXRvcgogIHdyYXBfZGVjb3JhdG9yID0gZnVuY3Rpb24oc3RtLCBkZWMpCiAgICBpZiBub3QgKGRlYykgdGhlbgogICAgICByZXR1cm4gc3RtCiAgICBlbmQKICAgIHJldHVybiB7CiAgICAgICJkZWNvcmF0ZWQiLAogICAgICBzdG0sCiAgICAgIGRlYwogICAgfQogIGVuZAogIGxvY2FsIGNoZWNrX2x1YV9zdHJpbmcKICBjaGVja19sdWFfc3RyaW5nID0gZnVuY3Rpb24oc3RyLCBwb3MsIHJpZ2h0LCBsZWZ0KQogICAgcmV0dXJuICNsZWZ0ID09ICNyaWdodAogIGVuZAogIGxvY2FsIHNlbGZfYXNzaWduCiAgc2VsZl9hc3NpZ24gPSBmdW5jdGlvbihuYW1lLCBwb3MpCiAgICByZXR1cm4gewogICAgICB7CiAgICAgICAgImtleV9saXRlcmFsIiwKICAgICAgICBuYW1lCiAgICAgIH0sCiAgICAgIHsKICAgICAgICAicmVmIiwKICAgICAgICBuYW1lLAogICAgICAgIFstMV0gPSBwb3MKICAgICAgfQogICAgfQogIGVuZAogIHJldHVybiB7CiAgICBJbmRlbnQgPSBJbmRlbnQsCiAgICBDdXQgPSBDdXQsCiAgICBlbnN1cmUgPSBlbnN1cmUsCiAgICBleHRyYWN0X2xpbmUgPSBleHRyYWN0X2xpbmUsCiAgICBtYXJrID0gbWFyaywKICAgIHBvcyA9IHBvcywKICAgIGZsYXR0ZW5fb3JfbWFyayA9IGZsYXR0ZW5fb3JfbWFyaywKICAgIGlzX2Fzc2lnbmFibGUgPSBpc19hc3NpZ25hYmxlLAogICAgY2hlY2tfYXNzaWduYWJsZSA9IGNoZWNrX2Fzc2lnbmFibGUsCiAgICBmb3JtYXRfYXNzaWduID0gZm9ybWF0X2Fzc2lnbiwKICAgIGZvcm1hdF9zaW5nbGVfYXNzaWduID0gZm9ybWF0X3NpbmdsZV9hc3NpZ24sCiAgICBzeW0gPSBzeW0sCiAgICBzeW14ID0gc3lteCwKICAgIHNpbXBsZV9zdHJpbmcgPSBzaW1wbGVfc3RyaW5nLAogICAgd3JhcF9mdW5jX2FyZyA9IHdyYXBfZnVuY19hcmcsCiAgICBqb2luX2NoYWluID0gam9pbl9jaGFpbiwKICAgIHdyYXBfZGVjb3JhdG9yID0gd3JhcF9kZWNvcmF0b3IsCiAgICBjaGVja19sdWFfc3RyaW5nID0gY2hlY2tfbHVhX3N0cmluZywKICAgIHNlbGZfYXNzaWduID0gc2VsZl9hc3NpZ24sCiAgICBnb3QgPSBnb3QsCiAgICBzaG93X2xpbmVfcG9zaXRpb24gPSBzaG93X2xpbmVfcG9zaXRpb24KICB9CiAgCmVuZApwYWNrYWdlLnByZWxvYWRbJ21vb25zY3JpcHQucGFyc2UubGl0ZXJhbHMnXSA9IGZ1bmN0aW9uKCkKICBsb2NhbCBzYWZlX21vZHVsZQogIHNhZmVfbW9kdWxlID0gcmVxdWlyZSgibW9vbnNjcmlwdC51dGlsIikuc2FmZV9tb2R1bGUKICBsb2NhbCBTLCBQLCBSLCBDCiAgZG8KICAgIGxvY2FsIF9vYmpfMCA9IHJlcXVpcmUoImxwZWciKQogICAgUywgUCwgUiwgQyA9IF9vYmpfMC5TLCBfb2JqXzAuUCwgX29ial8wLlIsIF9vYmpfMC5DCiAgZW5kCiAgbG9jYWwgbHBlZyA9IHJlcXVpcmUoImxwZWciKQogIGxvY2FsIEwgPSBscGVnLmx1dmVyc2lvbiBhbmQgbHBlZy5MIG9yIGZ1bmN0aW9uKHYpCiAgICByZXR1cm4gI3YKICBlbmQKICBsb2NhbCBXaGl0ZSA9IFMoIiBcdFxyXG4iKSBeIDAKICBsb2NhbCBwbGFpbl9zcGFjZSA9IFMoIiBcdCIpIF4gMAogIGxvY2FsIEJyZWFrID0gUCgiXHIiKSBeIC0xICogUCgiXG4iKQogIGxvY2FsIFN0b3AgPSBCcmVhayArIC0xCiAgbG9jYWwgQ29tbWVudCA9IFAoIi0tIikgKiAoMSAtIFMoIlxyXG4iKSkgXiAwICogTChTdG9wKQogIGxvY2FsIFNwYWNlID0gcGxhaW5fc3BhY2UgKiBDb21tZW50IF4gLTEKICBsb2NhbCBTb21lU3BhY2UgPSBTKCIgXHQiKSBeIDEgKiBDb21tZW50IF4gLTEKICBsb2NhbCBTcGFjZUJyZWFrID0gU3BhY2UgKiBCcmVhawogIGxvY2FsIEVtcHR5TGluZSA9IFNwYWNlQnJlYWsKICBsb2NhbCBBbHBoYU51bSA9IFIoImF6IiwgIkFaIiwgIjA5IiwgIl9fIikKICBsb2NhbCBOYW1lID0gQyhSKCJheiIsICJBWiIsICJfXyIpICogQWxwaGFOdW0gXiAwKQogIGxvY2FsIE51bSA9IFAoIjB4IikgKiBSKCIwOSIsICJhZiIsICJBRiIpIF4gMSAqIChTKCJ1VSIpIF4gLTEgKiBTKCJsTCIpIF4gMikgXiAtMSArIFIoIjA5IikgXiAxICogKFMoInVVIikgXiAtMSAqIFMoImxMIikgXiAyKSArIChSKCIwOSIpIF4gMSAqIChQKCIuIikgKiBSKCIwOSIpIF4gMSkgXiAtMSArIFAoIi4iKSAqIFIoIjA5IikgXiAxKSAqIChTKCJlRSIpICogUCgiLSIpIF4gLTEgKiBSKCIwOSIpIF4gMSkgXiAtMQogIGxvY2FsIFNoZWJhbmcgPSBQKCIjISIpICogUCgxIC0gU3RvcCkgXiAwCiAgcmV0dXJuIHNhZmVfbW9kdWxlKCJtb29uc2NyaXB0LnBhcnNlLmxpdGVyYWxzIiwgewogICAgTCA9IEwsCiAgICBXaGl0ZSA9IFdoaXRlLAogICAgQnJlYWsgPSBCcmVhaywKICAgIFN0b3AgPSBTdG9wLAogICAgQ29tbWVudCA9IENvbW1lbnQsCiAgICBTcGFjZSA9IFNwYWNlLAogICAgU29tZVNwYWNlID0gU29tZVNwYWNlLAogICAgU3BhY2VCcmVhayA9IFNwYWNlQnJlYWssCiAgICBFbXB0eUxpbmUgPSBFbXB0eUxpbmUsCiAgICBBbHBoYU51bSA9IEFscGhhTnVtLAogICAgTmFtZSA9IE5hbWUsCiAgICBOdW0gPSBOdW0sCiAgICBTaGViYW5nID0gU2hlYmFuZwogIH0pCiAgCmVuZApwYWNrYWdlLnByZWxvYWRbJ21vb25zY3JpcHQucGFyc2UnXSA9IGZ1bmN0aW9uKCkKICBsb2NhbCBkZWJ1Z19ncmFtbWFyID0gZmFsc2UKICBsb2NhbCBscGVnID0gcmVxdWlyZSgibHBlZyIpCiAgbHBlZy5zZXRtYXhzdGFjaygxMDAwMCkKICBsb2NhbCBlcnJfbXNnID0gIkZhaWxlZCB0byBwYXJzZTolc1xuIFslZF0gPj4gICAgJXMiCiAgbG9jYWwgU3RhY2sKICBTdGFjayA9IHJlcXVpcmUoIm1vb25zY3JpcHQuZGF0YSIpLlN0YWNrCiAgbG9jYWwgdHJpbSwgcG9zX3RvX2xpbmUsIGdldF9saW5lCiAgZG8KICAgIGxvY2FsIF9vYmpfMCA9IHJlcXVpcmUoIm1vb25zY3JpcHQudXRpbCIpCiAgICB0cmltLCBwb3NfdG9fbGluZSwgZ2V0X2xpbmUgPSBfb2JqXzAudHJpbSwgX29ial8wLnBvc190b19saW5lLCBfb2JqXzAuZ2V0X2xpbmUKICBlbmQKICBsb2NhbCB1bnBhY2sKICB1bnBhY2sgPSByZXF1aXJlKCJtb29uc2NyaXB0LnV0aWwiKS51bnBhY2sKICBsb2NhbCB3cmFwX2VudgogIHdyYXBfZW52ID0gcmVxdWlyZSgibW9vbnNjcmlwdC5wYXJzZS5lbnYiKS53cmFwX2VudgogIGxvY2FsIFIsIFMsIFYsIFAsIEMsIEN0LCBDbXQsIENnLCBDYiwgQ2MKICBSLCBTLCBWLCBQLCBDLCBDdCwgQ210LCBDZywgQ2IsIENjID0gbHBlZy5SLCBscGVnLlMsIGxwZWcuViwgbHBlZy5QLCBscGVnLkMsIGxwZWcuQ3QsIGxwZWcuQ210LCBscGVnLkNnLCBscGVnLkNiLCBscGVnLkNjCiAgbG9jYWwgV2hpdGUsIEJyZWFrLCBTdG9wLCBDb21tZW50LCBTcGFjZSwgU29tZVNwYWNlLCBTcGFjZUJyZWFrLCBFbXB0eUxpbmUsIEFscGhhTnVtLCBOdW0sIFNoZWJhbmcsIEwsIF9OYW1lCiAgZG8KICAgIGxvY2FsIF9vYmpfMCA9IHJlcXVpcmUoIm1vb25zY3JpcHQucGFyc2UubGl0ZXJhbHMiKQogICAgV2hpdGUsIEJyZWFrLCBTdG9wLCBDb21tZW50LCBTcGFjZSwgU29tZVNwYWNlLCBTcGFjZUJyZWFrLCBFbXB0eUxpbmUsIEFscGhhTnVtLCBOdW0sIFNoZWJhbmcsIEwsIF9OYW1lID0gX29ial8wLldoaXRlLCBfb2JqXzAuQnJlYWssIF9vYmpfMC5TdG9wLCBfb2JqXzAuQ29tbWVudCwgX29ial8wLlNwYWNlLCBfb2JqXzAuU29tZVNwYWNlLCBfb2JqXzAuU3BhY2VCcmVhaywgX29ial8wLkVtcHR5TGluZSwgX29ial8wLkFscGhhTnVtLCBfb2JqXzAuTnVtLCBfb2JqXzAuU2hlYmFuZywgX29ial8wLkwsIF9vYmpfMC5OYW1lCiAgZW5kCiAgbG9jYWwgU3BhY2VOYW1lID0gU3BhY2UgKiBfTmFtZQogIE51bSA9IFNwYWNlICogKE51bSAvIGZ1bmN0aW9uKHYpCiAgICByZXR1cm4gewogICAgICAibnVtYmVyIiwKICAgICAgdgogICAgfQogIGVuZCkKICBsb2NhbCBJbmRlbnQsIEN1dCwgZW5zdXJlLCBleHRyYWN0X2xpbmUsIG1hcmssIHBvcywgZmxhdHRlbl9vcl9tYXJrLCBpc19hc3NpZ25hYmxlLCBjaGVja19hc3NpZ25hYmxlLCBmb3JtYXRfYXNzaWduLCBmb3JtYXRfc2luZ2xlX2Fzc2lnbiwgc3ltLCBzeW14LCBzaW1wbGVfc3RyaW5nLCB3cmFwX2Z1bmNfYXJnLCBqb2luX2NoYWluLCB3cmFwX2RlY29yYXRvciwgY2hlY2tfbHVhX3N0cmluZywgc2VsZl9hc3NpZ24sIGdvdAogIGRvCiAgICBsb2NhbCBfb2JqXzAgPSByZXF1aXJlKCJtb29uc2NyaXB0LnBhcnNlLnV0aWwiKQogICAgSW5kZW50LCBDdXQsIGVuc3VyZSwgZXh0cmFjdF9saW5lLCBtYXJrLCBwb3MsIGZsYXR0ZW5fb3JfbWFyaywgaXNfYXNzaWduYWJsZSwgY2hlY2tfYXNzaWduYWJsZSwgZm9ybWF0X2Fzc2lnbiwgZm9ybWF0X3NpbmdsZV9hc3NpZ24sIHN5bSwgc3lteCwgc2ltcGxlX3N0cmluZywgd3JhcF9mdW5jX2FyZywgam9pbl9jaGFpbiwgd3JhcF9kZWNvcmF0b3IsIGNoZWNrX2x1YV9zdHJpbmcsIHNlbGZfYXNzaWduLCBnb3QgPSBfb2JqXzAuSW5kZW50LCBfb2JqXzAuQ3V0LCBfb2JqXzAuZW5zdXJlLCBfb2JqXzAuZXh0cmFjdF9saW5lLCBfb2JqXzAubWFyaywgX29ial8wLnBvcywgX29ial8wLmZsYXR0ZW5fb3JfbWFyaywgX29ial8wLmlzX2Fzc2lnbmFibGUsIF9vYmpfMC5jaGVja19hc3NpZ25hYmxlLCBfb2JqXzAuZm9ybWF0X2Fzc2lnbiwgX29ial8wLmZvcm1hdF9zaW5nbGVfYXNzaWduLCBfb2JqXzAuc3ltLCBfb2JqXzAuc3lteCwgX29ial8wLnNpbXBsZV9zdHJpbmcsIF9vYmpfMC53cmFwX2Z1bmNfYXJnLCBfb2JqXzAuam9pbl9jaGFpbiwgX29ial8wLndyYXBfZGVjb3JhdG9yLCBfb2JqXzAuY2hlY2tfbHVhX3N0cmluZywgX29ial8wLnNlbGZfYXNzaWduLCBfb2JqXzAuZ290CiAgZW5kCiAgbG9jYWwgYnVpbGRfZ3JhbW1hciA9IHdyYXBfZW52KGRlYnVnX2dyYW1tYXIsIGZ1bmN0aW9uKHJvb3QpCiAgICBsb2NhbCBfaW5kZW50ID0gU3RhY2soMCkKICAgIGxvY2FsIF9kb19zdGFjayA9IFN0YWNrKDApCiAgICBsb2NhbCBzdGF0ZSA9IHsKICAgICAgbGFzdF9wb3MgPSAwCiAgICB9CiAgICBsb2NhbCBjaGVja19pbmRlbnQKICAgIGNoZWNrX2luZGVudCA9IGZ1bmN0aW9uKHN0ciwgcG9zLCBpbmRlbnQpCiAgICAgIHN0YXRlLmxhc3RfcG9zID0gcG9zCiAgICAgIHJldHVybiBfaW5kZW50OnRvcCgpID09IGluZGVudAogICAgZW5kCiAgICBsb2NhbCBhZHZhbmNlX2luZGVudAogICAgYWR2YW5jZV9pbmRlbnQgPSBmdW5jdGlvbihzdHIsIHBvcywgaW5kZW50KQogICAgICBsb2NhbCB0b3AgPSBfaW5kZW50OnRvcCgpCiAgICAgIGlmIHRvcCB+PSAtMSBhbmQgaW5kZW50ID4gdG9wIHRoZW4KICAgICAgICBfaW5kZW50OnB1c2goaW5kZW50KQogICAgICAgIHJldHVybiB0cnVlCiAgICAgIGVuZAogICAgZW5kCiAgICBsb2NhbCBwdXNoX2luZGVudAogICAgcHVzaF9pbmRlbnQgPSBmdW5jdGlvbihzdHIsIHBvcywgaW5kZW50KQogICAgICBfaW5kZW50OnB1c2goaW5kZW50KQogICAgICByZXR1cm4gdHJ1ZQogICAgZW5kCiAgICBsb2NhbCBwb3BfaW5kZW50CiAgICBwb3BfaW5kZW50ID0gZnVuY3Rpb24oKQogICAgICBhc3NlcnQoX2luZGVudDpwb3AoKSwgInVuZXhwZWN0ZWQgb3V0ZGVudCIpCiAgICAgIHJldHVybiB0cnVlCiAgICBlbmQKICAgIGxvY2FsIGNoZWNrX2RvCiAgICBjaGVja19kbyA9IGZ1bmN0aW9uKHN0ciwgcG9zLCBkb19ub2RlKQogICAgICBsb2NhbCB0b3AgPSBfZG9fc3RhY2s6dG9wKCkKICAgICAgaWYgdG9wID09IG5pbCBvciB0b3AgdGhlbgogICAgICAgIHJldHVybiB0cnVlLCBkb19ub2RlCiAgICAgIGVuZAogICAgICByZXR1cm4gZmFsc2UKICAgIGVuZAogICAgbG9jYWwgZGlzYWJsZV9kbwogICAgZGlzYWJsZV9kbyA9IGZ1bmN0aW9uKCkKICAgICAgX2RvX3N0YWNrOnB1c2goZmFsc2UpCiAgICAgIHJldHVybiB0cnVlCiAgICBlbmQKICAgIGxvY2FsIHBvcF9kbwogICAgcG9wX2RvID0gZnVuY3Rpb24oKQogICAgICBhc3NlcnQoX2RvX3N0YWNrOnBvcCgpIH49IG5pbCwgInVuZXhwZWN0ZWQgZG8gcG9wIikKICAgICAgcmV0dXJuIHRydWUKICAgIGVuZAogICAgbG9jYWwgRGlzYWJsZURvID0gQ210KCIiLCBkaXNhYmxlX2RvKQogICAgbG9jYWwgUG9wRG8gPSBDbXQoIiIsIHBvcF9kbykKICAgIGxvY2FsIGtleXdvcmRzID0geyB9CiAgICBsb2NhbCBrZXkKICAgIGtleSA9IGZ1bmN0aW9uKGNoYXJzKQogICAgICBrZXl3b3Jkc1tjaGFyc10gPSB0cnVlCiAgICAgIHJldHVybiBTcGFjZSAqIGNoYXJzICogLUFscGhhTnVtCiAgICBlbmQKICAgIGxvY2FsIG9wCiAgICBvcCA9IGZ1bmN0aW9uKGNoYXJzKQogICAgICBsb2NhbCBwYXR0ID0gU3BhY2UgKiBDKGNoYXJzKQogICAgICBpZiBjaGFyczptYXRjaCgiXiV3KiQiKSB0aGVuCiAgICAgICAga2V5d29yZHNbY2hhcnNdID0gdHJ1ZQogICAgICAgIHBhdHQgPSBwYXR0ICogLUFscGhhTnVtCiAgICAgIGVuZAogICAgICByZXR1cm4gcGF0dAogICAgZW5kCiAgICBsb2NhbCBOYW1lID0gQ210KFNwYWNlTmFtZSwgZnVuY3Rpb24oc3RyLCBwb3MsIG5hbWUpCiAgICAgIGlmIGtleXdvcmRzW25hbWVdIHRoZW4KICAgICAgICByZXR1cm4gZmFsc2UKICAgICAgZW5kCiAgICAgIHJldHVybiB0cnVlCiAgICBlbmQpIC8gdHJpbQogICAgbG9jYWwgU2VsZk5hbWUgPSBTcGFjZSAqICJAIiAqICgiQCIgKiAoX05hbWUgLyBtYXJrKCJzZWxmX2NsYXNzIikgKyBDYygic2VsZi5fX2NsYXNzIikpICsgX05hbWUgLyBtYXJrKCJzZWxmIikgKyBDYygic2VsZiIpKQogICAgbG9jYWwgS2V5TmFtZSA9IFNlbGZOYW1lICsgU3BhY2UgKiBfTmFtZSAvIG1hcmsoImtleV9saXRlcmFsIikKICAgIGxvY2FsIFZhckFyZyA9IFNwYWNlICogUCgiLi4uIikgLyB0cmltCiAgICBsb2NhbCBnID0gUCh7CiAgICAgIHJvb3Qgb3IgRmlsZSwKICAgICAgRmlsZSA9IFNoZWJhbmcgXiAtMSAqIChCbG9jayArIEN0KCIiKSksCiAgICAgIEJsb2NrID0gQ3QoTGluZSAqIChCcmVhayBeIDEgKiBMaW5lKSBeIDApLAogICAgICBDaGVja0luZGVudCA9IENtdChJbmRlbnQsIGNoZWNrX2luZGVudCksCiAgICAgIExpbmUgPSAoQ2hlY2tJbmRlbnQgKiBTdGF0ZW1lbnQgKyBTcGFjZSAqIEwoU3RvcCkpLAogICAgICBTdGF0ZW1lbnQgPSBwb3MoSW1wb3J0ICsgV2hpbGUgKyBXaXRoICsgRm9yICsgRm9yRWFjaCArIFN3aXRjaCArIFJldHVybiArIExvY2FsICsgRXhwb3J0ICsgQnJlYWtMb29wICsgQ3QoRXhwTGlzdCkgKiAoVXBkYXRlICsgQXNzaWduKSBeIC0xIC8gZm9ybWF0X2Fzc2lnbikgKiBTcGFjZSAqICgoa2V5KCJpZiIpICogRXhwICogKGtleSgiZWxzZSIpICogRXhwKSBeIC0xICogU3BhY2UgLyBtYXJrKCJpZiIpICsga2V5KCJ1bmxlc3MiKSAqIEV4cCAvIG1hcmsoInVubGVzcyIpICsgQ29tcElubmVyIC8gbWFyaygiY29tcHJlaGVuc2lvbiIpKSAqIFNwYWNlKSBeIC0xIC8gd3JhcF9kZWNvcmF0b3IsCiAgICAgIEJvZHkgPSBTcGFjZSBeIC0xICogQnJlYWsgKiBFbXB0eUxpbmUgXiAwICogSW5CbG9jayArIEN0KFN0YXRlbWVudCksCiAgICAgIEFkdmFuY2UgPSBMKENtdChJbmRlbnQsIGFkdmFuY2VfaW5kZW50KSksCiAgICAgIFB1c2hJbmRlbnQgPSBDbXQoSW5kZW50LCBwdXNoX2luZGVudCksCiAgICAgIFByZXZlbnRJbmRlbnQgPSBDbXQoQ2MoLTEpLCBwdXNoX2luZGVudCksCiAgICAgIFBvcEluZGVudCA9IENtdCgiIiwgcG9wX2luZGVudCksCiAgICAgIEluQmxvY2sgPSBBZHZhbmNlICogQmxvY2sgKiBQb3BJbmRlbnQsCiAgICAgIExvY2FsID0ga2V5KCJsb2NhbCIpICogKChvcCgiKiIpICsgb3AoIl4iKSkgLyBtYXJrKCJkZWNsYXJlX2dsb2IiKSArIEN0KE5hbWVMaXN0KSAvIG1hcmsoImRlY2xhcmVfd2l0aF9zaGFkb3dzIikpLAogICAgICBJbXBvcnQgPSBrZXkoImltcG9ydCIpICogQ3QoSW1wb3J0TmFtZUxpc3QpICogU3BhY2VCcmVhayBeIDAgKiBrZXkoImZyb20iKSAqIEV4cCAvIG1hcmsoImltcG9ydCIpLAogICAgICBJbXBvcnROYW1lID0gKHN5bSgiXFwiKSAqIEN0KENjKCJjb2xvbiIpICogTmFtZSkgKyBOYW1lKSwKICAgICAgSW1wb3J0TmFtZUxpc3QgPSBTcGFjZUJyZWFrIF4gMCAqIEltcG9ydE5hbWUgKiAoKFNwYWNlQnJlYWsgXiAxICsgc3ltKCIsIikgKiBTcGFjZUJyZWFrIF4gMCkgKiBJbXBvcnROYW1lKSBeIDAsCiAgICAgIEJyZWFrTG9vcCA9IEN0KGtleSgiYnJlYWsiKSAvIHRyaW0pICsgQ3Qoa2V5KCJjb250aW51ZSIpIC8gdHJpbSksCiAgICAgIFJldHVybiA9IGtleSgicmV0dXJuIikgKiAoRXhwTGlzdExvdyAvIG1hcmsoImV4cGxpc3QiKSArIEMoIiIpKSAvIG1hcmsoInJldHVybiIpLAogICAgICBXaXRoRXhwID0gQ3QoRXhwTGlzdCkgKiBBc3NpZ24gXiAtMSAvIGZvcm1hdF9hc3NpZ24sCiAgICAgIFdpdGggPSBrZXkoIndpdGgiKSAqIERpc2FibGVEbyAqIGVuc3VyZShXaXRoRXhwLCBQb3BEbykgKiBrZXkoImRvIikgXiAtMSAqIEJvZHkgLyBtYXJrKCJ3aXRoIiksCiAgICAgIFN3aXRjaCA9IGtleSgic3dpdGNoIikgKiBEaXNhYmxlRG8gKiBlbnN1cmUoRXhwLCBQb3BEbykgKiBrZXkoImRvIikgXiAtMSAqIFNwYWNlIF4gLTEgKiBCcmVhayAqIFN3aXRjaEJsb2NrIC8gbWFyaygic3dpdGNoIiksCiAgICAgIFN3aXRjaEJsb2NrID0gRW1wdHlMaW5lIF4gMCAqIEFkdmFuY2UgKiBDdChTd2l0Y2hDYXNlICogKEJyZWFrIF4gMSAqIFN3aXRjaENhc2UpIF4gMCAqIChCcmVhayBeIDEgKiBTd2l0Y2hFbHNlKSBeIC0xKSAqIFBvcEluZGVudCwKICAgICAgU3dpdGNoQ2FzZSA9IGtleSgid2hlbiIpICogQ3QoRXhwTGlzdCkgKiBrZXkoInRoZW4iKSBeIC0xICogQm9keSAvIG1hcmsoImNhc2UiKSwKICAgICAgU3dpdGNoRWxzZSA9IGtleSgiZWxzZSIpICogQm9keSAvIG1hcmsoImVsc2UiKSwKICAgICAgSWZDb25kID0gRXhwICogQXNzaWduIF4gLTEgLyBmb3JtYXRfc2luZ2xlX2Fzc2lnbiwKICAgICAgSWZFbHNlID0gKEJyZWFrICogRW1wdHlMaW5lIF4gMCAqIENoZWNrSW5kZW50KSBeIC0xICoga2V5KCJlbHNlIikgKiBCb2R5IC8gbWFyaygiZWxzZSIpLAogICAgICBJZkVsc2VJZiA9IChCcmVhayAqIEVtcHR5TGluZSBeIDAgKiBDaGVja0luZGVudCkgXiAtMSAqIGtleSgiZWxzZWlmIikgKiBwb3MoSWZDb25kKSAqIGtleSgidGhlbiIpIF4gLTEgKiBCb2R5IC8gbWFyaygiZWxzZWlmIiksCiAgICAgIElmID0ga2V5KCJpZiIpICogSWZDb25kICoga2V5KCJ0aGVuIikgXiAtMSAqIEJvZHkgKiBJZkVsc2VJZiBeIDAgKiBJZkVsc2UgXiAtMSAvIG1hcmsoImlmIiksCiAgICAgIFVubGVzcyA9IGtleSgidW5sZXNzIikgKiBJZkNvbmQgKiBrZXkoInRoZW4iKSBeIC0xICogQm9keSAqIElmRWxzZUlmIF4gMCAqIElmRWxzZSBeIC0xIC8gbWFyaygidW5sZXNzIiksCiAgICAgIFdoaWxlID0ga2V5KCJ3aGlsZSIpICogRGlzYWJsZURvICogZW5zdXJlKEV4cCwgUG9wRG8pICoga2V5KCJkbyIpIF4gLTEgKiBCb2R5IC8gbWFyaygid2hpbGUiKSwKICAgICAgRm9yID0ga2V5KCJmb3IiKSAqIERpc2FibGVEbyAqIGVuc3VyZShOYW1lICogc3ltKCI9IikgKiBDdChFeHAgKiBzeW0oIiwiKSAqIEV4cCAqIChzeW0oIiwiKSAqIEV4cCkgXiAtMSksIFBvcERvKSAqIGtleSgiZG8iKSBeIC0xICogQm9keSAvIG1hcmsoImZvciIpLAogICAgICBGb3JFYWNoID0ga2V5KCJmb3IiKSAqIEN0KEFzc2lnbmFibGVOYW1lTGlzdCkgKiBrZXkoImluIikgKiBEaXNhYmxlRG8gKiBlbnN1cmUoQ3Qoc3ltKCIqIikgKiBFeHAgLyBtYXJrKCJ1bnBhY2siKSArIEV4cExpc3QpLCBQb3BEbykgKiBrZXkoImRvIikgXiAtMSAqIEJvZHkgLyBtYXJrKCJmb3JlYWNoIiksCiAgICAgIERvID0ga2V5KCJkbyIpICogQm9keSAvIG1hcmsoImRvIiksCiAgICAgIENvbXByZWhlbnNpb24gPSBzeW0oIlsiKSAqIEV4cCAqIENvbXBJbm5lciAqIHN5bSgiXSIpIC8gbWFyaygiY29tcHJlaGVuc2lvbiIpLAogICAgICBUYmxDb21wcmVoZW5zaW9uID0gc3ltKCJ7IikgKiBDdChFeHAgKiAoc3ltKCIsIikgKiBFeHApIF4gLTEpICogQ29tcElubmVyICogc3ltKCJ9IikgLyBtYXJrKCJ0Ymxjb21wcmVoZW5zaW9uIiksCiAgICAgIENvbXBJbm5lciA9IEN0KChDb21wRm9yRWFjaCArIENvbXBGb3IpICogQ29tcENsYXVzZSBeIDApLAogICAgICBDb21wRm9yRWFjaCA9IGtleSgiZm9yIikgKiBDdChBc3NpZ25hYmxlTmFtZUxpc3QpICoga2V5KCJpbiIpICogKHN5bSgiKiIpICogRXhwIC8gbWFyaygidW5wYWNrIikgKyBFeHApIC8gbWFyaygiZm9yZWFjaCIpLAogICAgICBDb21wRm9yID0ga2V5KCJmb3IiICogTmFtZSAqIHN5bSgiPSIpICogQ3QoRXhwICogc3ltKCIsIikgKiBFeHAgKiAoc3ltKCIsIikgKiBFeHApIF4gLTEpIC8gbWFyaygiZm9yIikpLAogICAgICBDb21wQ2xhdXNlID0gQ29tcEZvciArIENvbXBGb3JFYWNoICsga2V5KCJ3aGVuIikgKiBFeHAgLyBtYXJrKCJ3aGVuIiksCiAgICAgIEFzc2lnbiA9IHN5bSgiPSIpICogKEN0KFdpdGggKyBJZiArIFN3aXRjaCkgKyBDdChUYWJsZUJsb2NrICsgRXhwTGlzdExvdykpIC8gbWFyaygiYXNzaWduIiksCiAgICAgIFVwZGF0ZSA9ICgoc3ltKCIuLj0iKSArIHN5bSgiKz0iKSArIHN5bSgiLT0iKSArIHN5bSgiKj0iKSArIHN5bSgiLz0iKSArIHN5bSgiJT0iKSArIHN5bSgib3I9IikgKyBzeW0oImFuZD0iKSArIHN5bSgiJj0iKSArIHN5bSgifD0iKSArIHN5bSgiPj49IikgKyBzeW0oIjw8PSIpKSAvIHRyaW0pICogRXhwIC8gbWFyaygidXBkYXRlIiksCiAgICAgIENoYXJPcGVyYXRvcnMgPSBTcGFjZSAqIEMoUygiKy0qLyVePjx8JiIpKSwKICAgICAgV29yZE9wZXJhdG9ycyA9IG9wKCJvciIpICsgb3AoImFuZCIpICsgb3AoIjw9IikgKyBvcCgiPj0iKSArIG9wKCJ+PSIpICsgb3AoIiE9IikgKyBvcCgiPT0iKSArIG9wKCIuLiIpICsgb3AoIjw8IikgKyBvcCgiPj4iKSArIG9wKCIvLyIpLAogICAgICBCaW5hcnlPcGVyYXRvciA9IChXb3JkT3BlcmF0b3JzICsgQ2hhck9wZXJhdG9ycykgKiBTcGFjZUJyZWFrIF4gMCwKICAgICAgQXNzaWduYWJsZSA9IENtdChDaGFpbiwgY2hlY2tfYXNzaWduYWJsZSkgKyBOYW1lICsgU2VsZk5hbWUsCiAgICAgIEV4cCA9IEN0KFZhbHVlICogKEJpbmFyeU9wZXJhdG9yICogVmFsdWUpIF4gMCkgLyBmbGF0dGVuX29yX21hcmsoImV4cCIpLAogICAgICBTaW1wbGVWYWx1ZSA9IElmICsgVW5sZXNzICsgU3dpdGNoICsgV2l0aCArIENsYXNzRGVjbCArIEZvckVhY2ggKyBGb3IgKyBXaGlsZSArIENtdChEbywgY2hlY2tfZG8pICsgc3ltKCItIikgKiAtU29tZVNwYWNlICogRXhwIC8gbWFyaygibWludXMiKSArIHN5bSgiIyIpICogRXhwIC8gbWFyaygibGVuZ3RoIikgKyBzeW0oIn4iKSAqIEV4cCAvIG1hcmsoImJpdG5vdCIpICsga2V5KCJub3QiKSAqIEV4cCAvIG1hcmsoIm5vdCIpICsgVGJsQ29tcHJlaGVuc2lvbiArIFRhYmxlTGl0ICsgQ29tcHJlaGVuc2lvbiArIEZ1bkxpdCArIE51bSwKICAgICAgQ2hhaW5WYWx1ZSA9IChDaGFpbiArIENhbGxhYmxlKSAqIEN0KEludm9rZUFyZ3MgXiAtMSkgLyBqb2luX2NoYWluLAogICAgICBWYWx1ZSA9IHBvcyhTaW1wbGVWYWx1ZSArIEN0KEtleVZhbHVlTGlzdCkgLyBtYXJrKCJ0YWJsZSIpICsgQ2hhaW5WYWx1ZSArIFN0cmluZyksCiAgICAgIFNsaWNlVmFsdWUgPSBFeHAsCiAgICAgIFN0cmluZyA9IFNwYWNlICogRG91YmxlU3RyaW5nICsgU3BhY2UgKiBTaW5nbGVTdHJpbmcgKyBMdWFTdHJpbmcsCiAgICAgIFNpbmdsZVN0cmluZyA9IHNpbXBsZV9zdHJpbmcoIiciKSwKICAgICAgRG91YmxlU3RyaW5nID0gc2ltcGxlX3N0cmluZygnIicsIHRydWUpLAogICAgICBMdWFTdHJpbmcgPSBDZyhMdWFTdHJpbmdPcGVuLCAic3RyaW5nX29wZW4iKSAqIENiKCJzdHJpbmdfb3BlbiIpICogQnJlYWsgXiAtMSAqIEMoKDEgLSBDbXQoQyhMdWFTdHJpbmdDbG9zZSkgKiBDYigic3RyaW5nX29wZW4iKSwgY2hlY2tfbHVhX3N0cmluZykpIF4gMCkgKiBMdWFTdHJpbmdDbG9zZSAvIG1hcmsoInN0cmluZyIpLAogICAgICBMdWFTdHJpbmdPcGVuID0gc3ltKCJbIikgKiBQKCI9IikgXiAwICogIlsiIC8gdHJpbSwKICAgICAgTHVhU3RyaW5nQ2xvc2UgPSAiXSIgKiBQKCI9IikgXiAwICogIl0iLAogICAgICBDYWxsYWJsZSA9IHBvcyhOYW1lIC8gbWFyaygicmVmIikpICsgU2VsZk5hbWUgKyBWYXJBcmcgKyBQYXJlbnMgLyBtYXJrKCJwYXJlbnMiKSwKICAgICAgUGFyZW5zID0gc3ltKCIoIikgKiBTcGFjZUJyZWFrIF4gMCAqIEV4cCAqIFNwYWNlQnJlYWsgXiAwICogc3ltKCIpIiksCiAgICAgIEZuQXJncyA9IHN5bXgoIigiKSAqIFNwYWNlQnJlYWsgXiAwICogQ3QoRm5BcmdzRXhwTGlzdCBeIC0xKSAqIFNwYWNlQnJlYWsgXiAwICogc3ltKCIpIikgKyBzeW0oIiEiKSAqIC1QKCI9IikgKiBDdCgiIiksCiAgICAgIEZuQXJnc0V4cExpc3QgPSBFeHAgKiAoKEJyZWFrICsgc3ltKCIsIikpICogV2hpdGUgKiBFeHApIF4gMCwKICAgICAgQ2hhaW4gPSAoQ2FsbGFibGUgKyBTdHJpbmcgKyAtUygiLlxcIikpICogQ2hhaW5JdGVtcyAvIG1hcmsoImNoYWluIikgKyBTcGFjZSAqIChEb3RDaGFpbkl0ZW0gKiBDaGFpbkl0ZW1zIF4gLTEgKyBDb2xvbkNoYWluKSAvIG1hcmsoImNoYWluIiksCiAgICAgIENoYWluSXRlbXMgPSBDaGFpbkl0ZW0gXiAxICogQ29sb25DaGFpbiBeIC0xICsgQ29sb25DaGFpbiwKICAgICAgQ2hhaW5JdGVtID0gSW52b2tlICsgRG90Q2hhaW5JdGVtICsgU2xpY2UgKyBzeW14KCJbIikgKiBFeHAgLyBtYXJrKCJpbmRleCIpICogc3ltKCJdIiksCiAgICAgIERvdENoYWluSXRlbSA9IHN5bXgoIi4iKSAqIF9OYW1lIC8gbWFyaygiZG90IiksCiAgICAgIENvbG9uQ2hhaW5JdGVtID0gc3lteCgiXFwiKSAqIF9OYW1lIC8gbWFyaygiY29sb24iKSwKICAgICAgQ29sb25DaGFpbiA9IENvbG9uQ2hhaW5JdGVtICogKEludm9rZSAqIENoYWluSXRlbXMgXiAtMSkgXiAtMSwKICAgICAgU2xpY2UgPSBzeW14KCJbIikgKiAoU2xpY2VWYWx1ZSArIENjKDEpKSAqIHN5bSgiLCIpICogKFNsaWNlVmFsdWUgKyBDYygiIikpICogKHN5bSgiLCIpICogU2xpY2VWYWx1ZSkgXiAtMSAqIHN5bSgiXSIpIC8gbWFyaygic2xpY2UiKSwKICAgICAgSW52b2tlID0gRm5BcmdzIC8gbWFyaygiY2FsbCIpICsgU2luZ2xlU3RyaW5nIC8gd3JhcF9mdW5jX2FyZyArIERvdWJsZVN0cmluZyAvIHdyYXBfZnVuY19hcmcgKyBMKFAoIlsiKSkgKiBMdWFTdHJpbmcgLyB3cmFwX2Z1bmNfYXJnLAogICAgICBUYWJsZVZhbHVlID0gS2V5VmFsdWUgKyBDdChFeHApLAogICAgICBUYWJsZUxpdCA9IHN5bSgieyIpICogQ3QoVGFibGVWYWx1ZUxpc3QgXiAtMSAqIHN5bSgiLCIpIF4gLTEgKiAoU3BhY2VCcmVhayAqIFRhYmxlTGl0TGluZSAqIChzeW0oIiwiKSBeIC0xICogU3BhY2VCcmVhayAqIFRhYmxlTGl0TGluZSkgXiAwICogc3ltKCIsIikgXiAtMSkgXiAtMSkgKiBXaGl0ZSAqIHN5bSgifSIpIC8gbWFyaygidGFibGUiKSwKICAgICAgVGFibGVWYWx1ZUxpc3QgPSBUYWJsZVZhbHVlICogKHN5bSgiLCIpICogVGFibGVWYWx1ZSkgXiAwLAogICAgICBUYWJsZUxpdExpbmUgPSBQdXNoSW5kZW50ICogKChUYWJsZVZhbHVlTGlzdCAqIFBvcEluZGVudCkgKyAoUG9wSW5kZW50ICogQ3V0KSkgKyBTcGFjZSwKICAgICAgVGFibGVCbG9ja0lubmVyID0gQ3QoS2V5VmFsdWVMaW5lICogKFNwYWNlQnJlYWsgXiAxICogS2V5VmFsdWVMaW5lKSBeIDApLAogICAgICBUYWJsZUJsb2NrID0gU3BhY2VCcmVhayBeIDEgKiBBZHZhbmNlICogZW5zdXJlKFRhYmxlQmxvY2tJbm5lciwgUG9wSW5kZW50KSAvIG1hcmsoInRhYmxlIiksCiAgICAgIENsYXNzRGVjbCA9IGtleSgiY2xhc3MiKSAqIC1QKCI6IikgKiAoQXNzaWduYWJsZSArIENjKG5pbCkpICogKGtleSgiZXh0ZW5kcyIpICogUHJldmVudEluZGVudCAqIGVuc3VyZShFeHAsIFBvcEluZGVudCkgKyBDKCIiKSkgXiAtMSAqIChDbGFzc0Jsb2NrICsgQ3QoIiIpKSAvIG1hcmsoImNsYXNzIiksCiAgICAgIENsYXNzQmxvY2sgPSBTcGFjZUJyZWFrIF4gMSAqIEFkdmFuY2UgKiBDdChDbGFzc0xpbmUgKiAoU3BhY2VCcmVhayBeIDEgKiBDbGFzc0xpbmUpIF4gMCkgKiBQb3BJbmRlbnQsCiAgICAgIENsYXNzTGluZSA9IENoZWNrSW5kZW50ICogKChLZXlWYWx1ZUxpc3QgLyBtYXJrKCJwcm9wcyIpICsgU3RhdGVtZW50IC8gbWFyaygic3RtIikgKyBFeHAgLyBtYXJrKCJzdG0iKSkgKiBzeW0oIiwiKSBeIC0xKSwKICAgICAgRXhwb3J0ID0ga2V5KCJleHBvcnQiKSAqIChDYygiY2xhc3MiKSAqIENsYXNzRGVjbCArIG9wKCIqIikgKyBvcCgiXiIpICsgQ3QoTmFtZUxpc3QpICogKHN5bSgiPSIpICogQ3QoRXhwTGlzdExvdykpIF4gLTEpIC8gbWFyaygiZXhwb3J0IiksCiAgICAgIEtleVZhbHVlID0gKHN5bSgiOiIpICogLVNvbWVTcGFjZSAqIE5hbWUgKiBscGVnLkNwKCkpIC8gc2VsZl9hc3NpZ24gKyBDdCgoS2V5TmFtZSArIHN5bSgiWyIpICogRXhwICogc3ltKCJdIikgKyBTcGFjZSAqIERvdWJsZVN0cmluZyArIFNwYWNlICogU2luZ2xlU3RyaW5nKSAqIHN5bXgoIjoiKSAqIChFeHAgKyBUYWJsZUJsb2NrICsgU3BhY2VCcmVhayBeIDEgKiBFeHApKSwKICAgICAgS2V5VmFsdWVMaXN0ID0gS2V5VmFsdWUgKiAoc3ltKCIsIikgKiBLZXlWYWx1ZSkgXiAwLAogICAgICBLZXlWYWx1ZUxpbmUgPSBDaGVja0luZGVudCAqIEtleVZhbHVlTGlzdCAqIHN5bSgiLCIpIF4gLTEsCiAgICAgIEZuQXJnc0RlZiA9IHN5bSgiKCIpICogV2hpdGUgKiBDdChGbkFyZ0RlZkxpc3QgXiAtMSkgKiAoa2V5KCJ1c2luZyIpICogQ3QoTmFtZUxpc3QgKyBTcGFjZSAqICJuaWwiKSArIEN0KCIiKSkgKiBXaGl0ZSAqIHN5bSgiKSIpICsgQ3QoIiIpICogQ3QoIiIpLAogICAgICBGbkFyZ0RlZkxpc3QgPSBGbkFyZ0RlZiAqICgoc3ltKCIsIikgKyBCcmVhaykgKiBXaGl0ZSAqIEZuQXJnRGVmKSBeIDAgKiAoKHN5bSgiLCIpICsgQnJlYWspICogV2hpdGUgKiBDdChWYXJBcmcpKSBeIDAgKyBDdChWYXJBcmcpLAogICAgICBGbkFyZ0RlZiA9IEN0KChOYW1lICsgU2VsZk5hbWUpICogKHN5bSgiPSIpICogRXhwKSBeIC0xKSwKICAgICAgRnVuTGl0ID0gRm5BcmdzRGVmICogKHN5bSgiLT4iKSAqIENjKCJzbGltIikgKyBzeW0oIj0+IikgKiBDYygiZmF0IikpICogKEJvZHkgKyBDdCgiIikpIC8gbWFyaygiZm5kZWYiKSwKICAgICAgTmFtZUxpc3QgPSBOYW1lICogKHN5bSgiLCIpICogTmFtZSkgXiAwLAogICAgICBOYW1lT3JEZXN0cnVjdHVyZSA9IE5hbWUgKyBUYWJsZUxpdCwKICAgICAgQXNzaWduYWJsZU5hbWVMaXN0ID0gTmFtZU9yRGVzdHJ1Y3R1cmUgKiAoc3ltKCIsIikgKiBOYW1lT3JEZXN0cnVjdHVyZSkgXiAwLAogICAgICBFeHBMaXN0ID0gRXhwICogKHN5bSgiLCIpICogRXhwKSBeIDAsCiAgICAgIEV4cExpc3RMb3cgPSBFeHAgKiAoKHN5bSgiLCIpICsgc3ltKCI7IikpICogRXhwKSBeIDAsCiAgICAgIEludm9rZUFyZ3MgPSAtUCgiLSIpICogKEV4cExpc3QgKiAoc3ltKCIsIikgKiAoVGFibGVCbG9jayArIFNwYWNlQnJlYWsgKiBBZHZhbmNlICogQXJnQmxvY2sgKiBUYWJsZUJsb2NrIF4gLTEpICsgVGFibGVCbG9jaykgXiAtMSArIFRhYmxlQmxvY2spLAogICAgICBBcmdCbG9jayA9IEFyZ0xpbmUgKiAoc3ltKCIsIikgKiBTcGFjZUJyZWFrICogQXJnTGluZSkgXiAwICogUG9wSW5kZW50LAogICAgICBBcmdMaW5lID0gQ2hlY2tJbmRlbnQgKiBFeHBMaXN0CiAgICB9KQogICAgcmV0dXJuIGcsIHN0YXRlCiAgZW5kKQogIGxvY2FsIGZpbGVfcGFyc2VyCiAgZmlsZV9wYXJzZXIgPSBmdW5jdGlvbigpCiAgICBsb2NhbCBnLCBzdGF0ZSA9IGJ1aWxkX2dyYW1tYXIoKQogICAgbG9jYWwgZmlsZV9ncmFtbWFyID0gV2hpdGUgKiBnICogV2hpdGUgKiAtMQogICAgcmV0dXJuIHsKICAgICAgbWF0Y2ggPSBmdW5jdGlvbihzZWxmLCBzdHIpCiAgICAgICAgbG9jYWwgdHJlZQogICAgICAgIGxvY2FsIF8sIGVyciA9IHhwY2FsbCgoZnVuY3Rpb24oKQogICAgICAgICAgdHJlZSA9IGZpbGVfZ3JhbW1hcjptYXRjaChzdHIpCiAgICAgICAgZW5kKSwgZnVuY3Rpb24oZXJyKQogICAgICAgICAgcmV0dXJuIGRlYnVnLnRyYWNlYmFjayhlcnIsIDIpCiAgICAgICAgZW5kKQogICAgICAgIGlmIHR5cGUoZXJyKSA9PSAic3RyaW5nIiB0aGVuCiAgICAgICAgICByZXR1cm4gbmlsLCBlcnIKICAgICAgICBlbmQKICAgICAgICBpZiBub3QgKHRyZWUpIHRoZW4KICAgICAgICAgIGxvY2FsIG1zZwogICAgICAgICAgbG9jYWwgZXJyX3BvcyA9IHN0YXRlLmxhc3RfcG9zCiAgICAgICAgICBpZiBlcnIgdGhlbgogICAgICAgICAgICBsb2NhbCBub2RlCiAgICAgICAgICAgIG5vZGUsIG1zZyA9IHVucGFjayhlcnIpCiAgICAgICAgICAgIGlmIG1zZyB0aGVuCiAgICAgICAgICAgICAgbXNnID0gIiAiIC4uIG1zZwogICAgICAgICAgICBlbmQKICAgICAgICAgICAgZXJyX3BvcyA9IG5vZGVbLTFdCiAgICAgICAgICBlbmQKICAgICAgICAgIGxvY2FsIGxpbmVfbm8gPSBwb3NfdG9fbGluZShzdHIsIGVycl9wb3MpCiAgICAgICAgICBsb2NhbCBsaW5lX3N0ciA9IGdldF9saW5lKHN0ciwgbGluZV9ubykgb3IgIiIKICAgICAgICAgIHJldHVybiBuaWwsIGVycl9tc2c6Zm9ybWF0KG1zZyBvciAiIiwgbGluZV9ubywgdHJpbShsaW5lX3N0cikpCiAgICAgICAgZW5kCiAgICAgICAgcmV0dXJuIHRyZWUKICAgICAgZW5kCiAgICB9CiAgZW5kCiAgcmV0dXJuIHsKICAgIGV4dHJhY3RfbGluZSA9IGV4dHJhY3RfbGluZSwKICAgIGJ1aWxkX2dyYW1tYXIgPSBidWlsZF9ncmFtbWFyLAogICAgc3RyaW5nID0gZnVuY3Rpb24oc3RyKQogICAgICByZXR1cm4gZmlsZV9wYXJzZXIoKTptYXRjaChzdHIpCiAgICBlbmQKICB9CiAgCmVuZApwYWNrYWdlLnByZWxvYWRbJ21vb25zY3JpcHQudHlwZXMnXSA9IGZ1bmN0aW9uKCkKICBsb2NhbCB1dGlsID0gcmVxdWlyZSgibW9vbnNjcmlwdC51dGlsIikKICBsb2NhbCBTZXQKICBTZXQgPSByZXF1aXJlKCJtb29uc2NyaXB0LmRhdGEiKS5TZXQKICBsb2NhbCBpbnNlcnQKICBpbnNlcnQgPSB0YWJsZS5pbnNlcnQKICBsb2NhbCB1bnBhY2sKICB1bnBhY2sgPSB1dGlsLnVucGFjawogIGxvY2FsIG1hbnVhbF9yZXR1cm4gPSBTZXQoewogICAgImZvcmVhY2giLAogICAgImZvciIsCiAgICAid2hpbGUiLAogICAgInJldHVybiIKICB9KQogIGxvY2FsIGNhc2NhZGluZyA9IFNldCh7CiAgICAiaWYiLAogICAgInVubGVzcyIsCiAgICAid2l0aCIsCiAgICAic3dpdGNoIiwKICAgICJjbGFzcyIsCiAgICAiZG8iCiAgfSkKICBsb2NhbCB0ZXJtaW5hdGluZyA9IFNldCh7CiAgICAicmV0dXJuIiwKICAgICJicmVhayIKICB9KQogIGxvY2FsIG50eXBlCiAgbnR5cGUgPSBmdW5jdGlvbihub2RlKQogICAgbG9jYWwgX2V4cF8wID0gdHlwZShub2RlKQogICAgaWYgIm5pbCIgPT0gX2V4cF8wIHRoZW4KICAgICAgcmV0dXJuICJuaWwiCiAgICBlbHNlaWYgInRhYmxlIiA9PSBfZXhwXzAgdGhlbgogICAgICByZXR1cm4gbm9kZVsxXQogICAgZWxzZQogICAgICByZXR1cm4gInZhbHVlIgogICAgZW5kCiAgZW5kCiAgbG9jYWwgbXR5cGUKICBkbwogICAgbG9jYWwgbW9vbl90eXBlID0gdXRpbC5tb29uLnR5cGUKICAgIG10eXBlID0gZnVuY3Rpb24odmFsKQogICAgICBsb2NhbCBtdCA9IGdldG1ldGF0YWJsZSh2YWwpCiAgICAgIGlmIG10IGFuZCBtdC5zbWFydF9ub2RlIHRoZW4KICAgICAgICByZXR1cm4gInRhYmxlIgogICAgICBlbmQKICAgICAgcmV0dXJuIG1vb25fdHlwZSh2YWwpCiAgICBlbmQKICBlbmQKICBsb2NhbCB2YWx1ZV9jYW5fYmVfc3RhdGVtZW50CiAgdmFsdWVfY2FuX2JlX3N0YXRlbWVudCA9IGZ1bmN0aW9uKG5vZGUpCiAgICBpZiBub3QgKG50eXBlKG5vZGUpID09ICJjaGFpbiIpIHRoZW4KICAgICAgcmV0dXJuIGZhbHNlCiAgICBlbmQKICAgIHJldHVybiBudHlwZShub2RlWyNub2RlXSkgPT0gImNhbGwiCiAgZW5kCiAgbG9jYWwgaXNfdmFsdWUKICBpc192YWx1ZSA9IGZ1bmN0aW9uKHN0bSkKICAgIGxvY2FsIGNvbXBpbGUgPSByZXF1aXJlKCJtb29uc2NyaXB0LmNvbXBpbGUiKQogICAgbG9jYWwgdHJhbnNmb3JtID0gcmVxdWlyZSgibW9vbnNjcmlwdC50cmFuc2Zvcm0iKQogICAgcmV0dXJuIGNvbXBpbGUuQmxvY2s6aXNfdmFsdWUoc3RtKSBvciB0cmFuc2Zvcm0uVmFsdWU6Y2FuX3RyYW5zZm9ybShzdG0pCiAgZW5kCiAgbG9jYWwgdmFsdWVfaXNfc2luZ3VsYXIKICB2YWx1ZV9pc19zaW5ndWxhciA9IGZ1bmN0aW9uKG5vZGUpCiAgICByZXR1cm4gdHlwZShub2RlKSB+PSAidGFibGUiIG9yIG5vZGVbMV0gfj0gImV4cCIgb3IgI25vZGUgPT0gMgogIGVuZAogIGxvY2FsIGlzX3NsaWNlCiAgaXNfc2xpY2UgPSBmdW5jdGlvbihub2RlKQogICAgcmV0dXJuIG50eXBlKG5vZGUpID09ICJjaGFpbiIgYW5kIG50eXBlKG5vZGVbI25vZGVdKSA9PSAic2xpY2UiCiAgZW5kCiAgbG9jYWwgdCA9IHsgfQogIGxvY2FsIG5vZGVfdHlwZXMgPSB7CiAgICBjbGFzcyA9IHsKICAgICAgewogICAgICAgICJuYW1lIiwKICAgICAgICAiVG1wIgogICAgICB9LAogICAgICB7CiAgICAgICAgImJvZHkiLAogICAgICAgIHQKICAgICAgfQogICAgfSwKICAgIGZuZGVmID0gewogICAgICB7CiAgICAgICAgImFyZ3MiLAogICAgICAgIHQKICAgICAgfSwKICAgICAgewogICAgICAgICJ3aGl0ZWxpc3QiLAogICAgICAgIHQKICAgICAgfSwKICAgICAgewogICAgICAgICJhcnJvdyIsCiAgICAgICAgInNsaW0iCiAgICAgIH0sCiAgICAgIHsKICAgICAgICAiYm9keSIsCiAgICAgICAgdAogICAgICB9CiAgICB9LAogICAgZm9yZWFjaCA9IHsKICAgICAgewogICAgICAgICJuYW1lcyIsCiAgICAgICAgdAogICAgICB9LAogICAgICB7CiAgICAgICAgIml0ZXIiCiAgICAgIH0sCiAgICAgIHsKICAgICAgICAiYm9keSIsCiAgICAgICAgdAogICAgICB9CiAgICB9LAogICAgWyJmb3IiXSA9IHsKICAgICAgewogICAgICAgICJuYW1lIgogICAgICB9LAogICAgICB7CiAgICAgICAgImJvdW5kcyIsCiAgICAgICAgdAogICAgICB9LAogICAgICB7CiAgICAgICAgImJvZHkiLAogICAgICAgIHQKICAgICAgfQogICAgfSwKICAgIFsid2hpbGUiXSA9IHsKICAgICAgewogICAgICAgICJjb25kIiwKICAgICAgICB0CiAgICAgIH0sCiAgICAgIHsKICAgICAgICAiYm9keSIsCiAgICAgICAgdAogICAgICB9CiAgICB9LAogICAgYXNzaWduID0gewogICAgICB7CiAgICAgICAgIm5hbWVzIiwKICAgICAgICB0CiAgICAgIH0sCiAgICAgIHsKICAgICAgICAidmFsdWVzIiwKICAgICAgICB0CiAgICAgIH0KICAgIH0sCiAgICBkZWNsYXJlID0gewogICAgICB7CiAgICAgICAgIm5hbWVzIiwKICAgICAgICB0CiAgICAgIH0KICAgIH0sCiAgICBbImlmIl0gPSB7CiAgICAgIHsKICAgICAgICAiY29uZCIsCiAgICAgICAgdAogICAgICB9LAogICAgICB7CiAgICAgICAgInRoZW4iLAogICAgICAgIHQKICAgICAgfQogICAgfQogIH0KICBsb2NhbCBidWlsZF90YWJsZQogIGJ1aWxkX3RhYmxlID0gZnVuY3Rpb24oKQogICAgbG9jYWwga2V5X3RhYmxlID0geyB9CiAgICBmb3Igbm9kZV9uYW1lLCBhcmdzIGluIHBhaXJzKG5vZGVfdHlwZXMpIGRvCiAgICAgIGxvY2FsIGluZGV4ID0geyB9CiAgICAgIGZvciBpLCB0dXBsZSBpbiBpcGFpcnMoYXJncykgZG8KICAgICAgICBsb2NhbCBwcm9wX25hbWUgPSB0dXBsZVsxXQogICAgICAgIGluZGV4W3Byb3BfbmFtZV0gPSBpICsgMQogICAgICBlbmQKICAgICAga2V5X3RhYmxlW25vZGVfbmFtZV0gPSBpbmRleAogICAgZW5kCiAgICByZXR1cm4ga2V5X3RhYmxlCiAgZW5kCiAgbG9jYWwga2V5X3RhYmxlID0gYnVpbGRfdGFibGUoKQogIGxvY2FsIG1ha2VfYnVpbGRlcgogIG1ha2VfYnVpbGRlciA9IGZ1bmN0aW9uKG5hbWUpCiAgICBsb2NhbCBzcGVjID0gbm9kZV90eXBlc1tuYW1lXQogICAgaWYgbm90IHNwZWMgdGhlbgogICAgICBlcnJvcigiZG9uJ3Qga25vdyBob3cgdG8gYnVpbGQgbm9kZTogIiAuLiBuYW1lKQogICAgZW5kCiAgICByZXR1cm4gZnVuY3Rpb24ocHJvcHMpCiAgICAgIGlmIHByb3BzID09IG5pbCB0aGVuCiAgICAgICAgcHJvcHMgPSB7IH0KICAgICAgZW5kCiAgICAgIGxvY2FsIG5vZGUgPSB7CiAgICAgICAgbmFtZQogICAgICB9CiAgICAgIGZvciBpLCBhcmcgaW4gaXBhaXJzKHNwZWMpIGRvCiAgICAgICAgbG9jYWwga2V5LCBkZWZhdWx0X3ZhbHVlID0gdW5wYWNrKGFyZykKICAgICAgICBsb2NhbCB2YWwKICAgICAgICBpZiBwcm9wc1trZXldIHRoZW4KICAgICAgICAgIHZhbCA9IHByb3BzW2tleV0KICAgICAgICBlbHNlCiAgICAgICAgICB2YWwgPSBkZWZhdWx0X3ZhbHVlCiAgICAgICAgZW5kCiAgICAgICAgaWYgdmFsID09IHQgdGhlbgogICAgICAgICAgdmFsID0geyB9CiAgICAgICAgZW5kCiAgICAgICAgbm9kZVtpICsgMV0gPSB2YWwKICAgICAgZW5kCiAgICAgIHJldHVybiBub2RlCiAgICBlbmQKICBlbmQKICBsb2NhbCBidWlsZCA9IG5pbAogIGJ1aWxkID0gc2V0bWV0YXRhYmxlKHsKICAgIGdyb3VwID0gZnVuY3Rpb24oYm9keSkKICAgICAgaWYgYm9keSA9PSBuaWwgdGhlbgogICAgICAgIGJvZHkgPSB7IH0KICAgICAgZW5kCiAgICAgIHJldHVybiB7CiAgICAgICAgImdyb3VwIiwKICAgICAgICBib2R5CiAgICAgIH0KICAgIGVuZCwKICAgIFsiZG8iXSA9IGZ1bmN0aW9uKGJvZHkpCiAgICAgIHJldHVybiB7CiAgICAgICAgImRvIiwKICAgICAgICBib2R5CiAgICAgIH0KICAgIGVuZCwKICAgIGFzc2lnbl9vbmUgPSBmdW5jdGlvbihuYW1lLCB2YWx1ZSkKICAgICAgcmV0dXJuIGJ1aWxkLmFzc2lnbih7CiAgICAgICAgbmFtZXMgPSB7CiAgICAgICAgICBuYW1lCiAgICAgICAgfSwKICAgICAgICB2YWx1ZXMgPSB7CiAgICAgICAgICB2YWx1ZQogICAgICAgIH0KICAgICAgfSkKICAgIGVuZCwKICAgIHRhYmxlID0gZnVuY3Rpb24odGJsKQogICAgICBpZiB0YmwgPT0gbmlsIHRoZW4KICAgICAgICB0YmwgPSB7IH0KICAgICAgZW5kCiAgICAgIGZvciBfaW5kZXhfMCA9IDEsICN0YmwgZG8KICAgICAgICBsb2NhbCB0dXBsZSA9IHRibFtfaW5kZXhfMF0KICAgICAgICBpZiB0eXBlKHR1cGxlWzFdKSA9PSAic3RyaW5nIiB0aGVuCiAgICAgICAgICB0dXBsZVsxXSA9IHsKICAgICAgICAgICAgImtleV9saXRlcmFsIiwKICAgICAgICAgICAgdHVwbGVbMV0KICAgICAgICAgIH0KICAgICAgICBlbmQKICAgICAgZW5kCiAgICAgIHJldHVybiB7CiAgICAgICAgInRhYmxlIiwKICAgICAgICB0YmwKICAgICAgfQogICAgZW5kLAogICAgYmxvY2tfZXhwID0gZnVuY3Rpb24oYm9keSkKICAgICAgcmV0dXJuIHsKICAgICAgICAiYmxvY2tfZXhwIiwKICAgICAgICBib2R5CiAgICAgIH0KICAgIGVuZCwKICAgIGNoYWluID0gZnVuY3Rpb24ocGFydHMpCiAgICAgIGxvY2FsIGJhc2UgPSBwYXJ0cy5iYXNlIG9yIGVycm9yKCJleHBlY3RpbmcgYmFzZSBwcm9wZXJ0eSBmb3IgY2hhaW4iKQogICAgICBpZiB0eXBlKGJhc2UpID09ICJzdHJpbmciIHRoZW4KICAgICAgICBiYXNlID0gewogICAgICAgICAgInJlZiIsCiAgICAgICAgICBiYXNlCiAgICAgICAgfQogICAgICBlbmQKICAgICAgbG9jYWwgbm9kZSA9IHsKICAgICAgICAiY2hhaW4iLAogICAgICAgIGJhc2UKICAgICAgfQogICAgICBmb3IgX2luZGV4XzAgPSAxLCAjcGFydHMgZG8KICAgICAgICBsb2NhbCBwYXJ0ID0gcGFydHNbX2luZGV4XzBdCiAgICAgICAgaW5zZXJ0KG5vZGUsIHBhcnQpCiAgICAgIGVuZAogICAgICByZXR1cm4gbm9kZQogICAgZW5kCiAgfSwgewogICAgX19pbmRleCA9IGZ1bmN0aW9uKHNlbGYsIG5hbWUpCiAgICAgIHNlbGZbbmFtZV0gPSBtYWtlX2J1aWxkZXIobmFtZSkKICAgICAgcmV0dXJuIHJhd2dldChzZWxmLCBuYW1lKQogICAgZW5kCiAgfSkKICBsb2NhbCBzbWFydF9ub2RlX210ID0gc2V0bWV0YXRhYmxlKHsgfSwgewogICAgX19pbmRleCA9IGZ1bmN0aW9uKHNlbGYsIG5vZGVfdHlwZSkKICAgICAgbG9jYWwgaW5kZXggPSBrZXlfdGFibGVbbm9kZV90eXBlXQogICAgICBsb2NhbCBtdCA9IHsKICAgICAgICBzbWFydF9ub2RlID0gdHJ1ZSwKICAgICAgICBfX2luZGV4ID0gZnVuY3Rpb24obm9kZSwga2V5KQogICAgICAgICAgaWYgaW5kZXhba2V5XSB0aGVuCiAgICAgICAgICAgIHJldHVybiByYXdnZXQobm9kZSwgaW5kZXhba2V5XSkKICAgICAgICAgIGVsc2VpZiB0eXBlKGtleSkgPT0gInN0cmluZyIgdGhlbgogICAgICAgICAgICByZXR1cm4gZXJyb3IoInVua25vd24ga2V5OiBgIiAuLiBrZXkgLi4gImAgb24gbm9kZSB0eXBlOiBgIiAuLiBudHlwZShub2RlKSAuLiAiYCIpCiAgICAgICAgICBlbmQKICAgICAgICBlbmQsCiAgICAgICAgX19uZXdpbmRleCA9IGZ1bmN0aW9uKG5vZGUsIGtleSwgdmFsdWUpCiAgICAgICAgICBpZiBpbmRleFtrZXldIHRoZW4KICAgICAgICAgICAga2V5ID0gaW5kZXhba2V5XQogICAgICAgICAgZW5kCiAgICAgICAgICByZXR1cm4gcmF3c2V0KG5vZGUsIGtleSwgdmFsdWUpCiAgICAgICAgZW5kCiAgICAgIH0KICAgICAgc2VsZltub2RlX3R5cGVdID0gbXQKICAgICAgcmV0dXJuIG10CiAgICBlbmQKICB9KQogIGxvY2FsIHNtYXJ0X25vZGUKICBzbWFydF9ub2RlID0gZnVuY3Rpb24obm9kZSkKICAgIHJldHVybiBzZXRtZXRhdGFibGUobm9kZSwgc21hcnRfbm9kZV9tdFtudHlwZShub2RlKV0pCiAgZW5kCiAgbG9jYWwgTk9PUCA9IHsKICAgICJub29wIgogIH0KICByZXR1cm4gewogICAgbnR5cGUgPSBudHlwZSwKICAgIHNtYXJ0X25vZGUgPSBzbWFydF9ub2RlLAogICAgYnVpbGQgPSBidWlsZCwKICAgIGlzX3ZhbHVlID0gaXNfdmFsdWUsCiAgICBpc19zbGljZSA9IGlzX3NsaWNlLAogICAgbWFudWFsX3JldHVybiA9IG1hbnVhbF9yZXR1cm4sCiAgICBjYXNjYWRpbmcgPSBjYXNjYWRpbmcsCiAgICB2YWx1ZV9pc19zaW5ndWxhciA9IHZhbHVlX2lzX3Npbmd1bGFyLAogICAgdmFsdWVfY2FuX2JlX3N0YXRlbWVudCA9IHZhbHVlX2Nhbl9iZV9zdGF0ZW1lbnQsCiAgICBtdHlwZSA9IG10eXBlLAogICAgdGVybWluYXRpbmcgPSB0ZXJtaW5hdGluZywKICAgIE5PT1AgPSBOT09QCiAgfQogIAplbmQKcGFja2FnZS5wcmVsb2FkWydtb29uc2NyaXB0LmJhc2UnXSA9IGZ1bmN0aW9uKCkKICBsb2NhbCBjb21waWxlID0gcmVxdWlyZSgibW9vbnNjcmlwdC5jb21waWxlIikKICBsb2NhbCBwYXJzZSA9IHJlcXVpcmUoIm1vb25zY3JpcHQucGFyc2UiKQogIGxvY2FsIGNvbmNhdCwgaW5zZXJ0LCByZW1vdmUKICBkbwogICAgbG9jYWwgX29ial8wID0gdGFibGUKICAgIGNvbmNhdCwgaW5zZXJ0LCByZW1vdmUgPSBfb2JqXzAuY29uY2F0LCBfb2JqXzAuaW5zZXJ0LCBfb2JqXzAucmVtb3ZlCiAgZW5kCiAgbG9jYWwgc3BsaXQsIGR1bXAsIGdldF9vcHRpb25zLCB1bnBhY2sKICBkbwogICAgbG9jYWwgX29ial8wID0gcmVxdWlyZSgibW9vbnNjcmlwdC51dGlsIikKICAgIHNwbGl0LCBkdW1wLCBnZXRfb3B0aW9ucywgdW5wYWNrID0gX29ial8wLnNwbGl0LCBfb2JqXzAuZHVtcCwgX29ial8wLmdldF9vcHRpb25zLCBfb2JqXzAudW5wYWNrCiAgZW5kCiAgbG9jYWwgbHVhID0gewogICAgbG9hZHN0cmluZyA9IGxvYWRzdHJpbmcsCiAgICBsb2FkID0gbG9hZAogIH0KICBsb2NhbCBkaXJzZXAsIGxpbmVfdGFibGVzLCBjcmVhdGVfbW9vbnBhdGgsIHRvX2x1YSwgbW9vbl9sb2FkZXIsIGxvYWRzdHJpbmcsIGxvYWRmaWxlLCBkb2ZpbGUsIGluc2VydF9sb2FkZXIsIHJlbW92ZV9sb2FkZXIKICBkaXJzZXAgPSAiLyIKICBsaW5lX3RhYmxlcyA9IHJlcXVpcmUoIm1vb25zY3JpcHQubGluZV90YWJsZXMiKQogIGNyZWF0ZV9tb29ucGF0aCA9IGZ1bmN0aW9uKHBhY2thZ2VfcGF0aCkKICAgIGxvY2FsIG1vb25wYXRocwogICAgZG8KICAgICAgbG9jYWwgX2FjY3VtXzAgPSB7IH0KICAgICAgbG9jYWwgX2xlbl8wID0gMQogICAgICBsb2NhbCBfbGlzdF8wID0gc3BsaXQocGFja2FnZV9wYXRoLCAiOyIpCiAgICAgIGZvciBfaW5kZXhfMCA9IDEsICNfbGlzdF8wIGRvCiAgICAgICAgbG9jYWwgX2NvbnRpbnVlXzAgPSBmYWxzZQogICAgICAgIHJlcGVhdAogICAgICAgICAgbG9jYWwgcGF0aCA9IF9saXN0XzBbX2luZGV4XzBdCiAgICAgICAgICBsb2NhbCBwcmVmaXggPSBwYXRoOm1hdGNoKCJeKC4tKSUubHVhJCIpCiAgICAgICAgICBpZiBub3QgKHByZWZpeCkgdGhlbgogICAgICAgICAgICBfY29udGludWVfMCA9IHRydWUKICAgICAgICAgICAgYnJlYWsKICAgICAgICAgIGVuZAogICAgICAgICAgbG9jYWwgX3ZhbHVlXzAgPSBwcmVmaXggLi4gIi5tb29uIgogICAgICAgICAgX2FjY3VtXzBbX2xlbl8wXSA9IF92YWx1ZV8wCiAgICAgICAgICBfbGVuXzAgPSBfbGVuXzAgKyAxCiAgICAgICAgICBfY29udGludWVfMCA9IHRydWUKICAgICAgICB1bnRpbCB0cnVlCiAgICAgICAgaWYgbm90IF9jb250aW51ZV8wIHRoZW4KICAgICAgICAgIGJyZWFrCiAgICAgICAgZW5kCiAgICAgIGVuZAogICAgICBtb29ucGF0aHMgPSBfYWNjdW1fMAogICAgZW5kCiAgICByZXR1cm4gY29uY2F0KG1vb25wYXRocywgIjsiKQogIGVuZAogIHRvX2x1YSA9IGZ1bmN0aW9uKHRleHQsIG9wdGlvbnMpCiAgICBpZiBvcHRpb25zID09IG5pbCB0aGVuCiAgICAgIG9wdGlvbnMgPSB7IH0KICAgIGVuZAogICAgaWYgInN0cmluZyIgfj0gdHlwZSh0ZXh0KSB0aGVuCiAgICAgIGxvY2FsIHQgPSB0eXBlKHRleHQpCiAgICAgIHJldHVybiBuaWwsICJleHBlY3Rpbmcgc3RyaW5nIChnb3QgIiAuLiB0IC4uICIpIgogICAgZW5kCiAgICBsb2NhbCB0cmVlLCBlcnIgPSBwYXJzZS5zdHJpbmcodGV4dCkKICAgIGlmIG5vdCB0cmVlIHRoZW4KICAgICAgcmV0dXJuIG5pbCwgZXJyCiAgICBlbmQKICAgIGxvY2FsIGNvZGUsIGx0YWJsZSwgcG9zID0gY29tcGlsZS50cmVlKHRyZWUsIG9wdGlvbnMpCiAgICBpZiBub3QgY29kZSB0aGVuCiAgICAgIHJldHVybiBuaWwsIGNvbXBpbGUuZm9ybWF0X2Vycm9yKGx0YWJsZSwgcG9zLCB0ZXh0KQogICAgZW5kCiAgICByZXR1cm4gY29kZSwgbHRhYmxlCiAgZW5kCiAgbW9vbl9sb2FkZXIgPSBmdW5jdGlvbihuYW1lKQogICAgbG9jYWwgbmFtZV9wYXRoID0gbmFtZTpnc3ViKCIlLiIsIGRpcnNlcCkKICAgIGxvY2FsIGZpbGUsIGZpbGVfcGF0aAogICAgZm9yIHBhdGggaW4gcGFja2FnZS5tb29ucGF0aDpnbWF0Y2goIlteO10rIikgZG8KICAgICAgZmlsZV9wYXRoID0gcGF0aDpnc3ViKCI/IiwgbmFtZV9wYXRoKQogICAgICBmaWxlID0gaW8ub3BlbihmaWxlX3BhdGgpCiAgICAgIGlmIGZpbGUgdGhlbgogICAgICAgIGJyZWFrCiAgICAgIGVuZAogICAgZW5kCiAgICBpZiBmaWxlIHRoZW4KICAgICAgbG9jYWwgdGV4dCA9IGZpbGU6cmVhZCgiKmEiKQogICAgICBmaWxlOmNsb3NlKCkKICAgICAgbG9jYWwgcmVzLCBlcnIgPSBsb2Fkc3RyaW5nKHRleHQsICJAIiAuLiB0b3N0cmluZyhmaWxlX3BhdGgpKQogICAgICBpZiBub3QgcmVzIHRoZW4KICAgICAgICBlcnJvcihmaWxlX3BhdGggLi4gIjogIiAuLiBlcnIpCiAgICAgIGVuZAogICAgICByZXR1cm4gcmVzCiAgICBlbmQKICAgIHJldHVybiBuaWwsICJDb3VsZCBub3QgZmluZCBtb29uIGZpbGUiCiAgZW5kCiAgbG9hZHN0cmluZyA9IGZ1bmN0aW9uKC4uLikKICAgIGxvY2FsIG9wdGlvbnMsIHN0ciwgY2h1bmtfbmFtZSwgbW9kZSwgZW52ID0gZ2V0X29wdGlvbnMoLi4uKQogICAgY2h1bmtfbmFtZSA9IGNodW5rX25hbWUgb3IgIj0obW9vbnNjcmlwdC5sb2Fkc3RyaW5nKSIKICAgIGxvY2FsIGNvZGUsIGx0YWJsZV9vcl9lcnIgPSB0b19sdWEoc3RyLCBvcHRpb25zKQogICAgaWYgbm90IChjb2RlKSB0aGVuCiAgICAgIHJldHVybiBuaWwsIGx0YWJsZV9vcl9lcnIKICAgIGVuZAogICAgaWYgY2h1bmtfbmFtZSB0aGVuCiAgICAgIGxpbmVfdGFibGVzW2NodW5rX25hbWVdID0gbHRhYmxlX29yX2VycgogICAgZW5kCiAgICByZXR1cm4gKGx1YS5sb2Fkc3RyaW5nIG9yIGx1YS5sb2FkKShjb2RlLCBjaHVua19uYW1lLCB1bnBhY2soewogICAgICBtb2RlLAogICAgICBlbnYKICAgIH0pKQogIGVuZAogIGxvYWRmaWxlID0gZnVuY3Rpb24oZm5hbWUsIC4uLikKICAgIGxvY2FsIGZpbGUsIGVyciA9IGlvLm9wZW4oZm5hbWUpCiAgICBpZiBub3QgKGZpbGUpIHRoZW4KICAgICAgcmV0dXJuIG5pbCwgZXJyCiAgICBlbmQKICAgIGxvY2FsIHRleHQgPSBhc3NlcnQoZmlsZTpyZWFkKCIqYSIpKQogICAgZmlsZTpjbG9zZSgpCiAgICByZXR1cm4gbG9hZHN0cmluZyh0ZXh0LCAiQCIgLi4gdG9zdHJpbmcoZm5hbWUpLCAuLi4pCiAgZW5kCiAgZG9maWxlID0gZnVuY3Rpb24oLi4uKQogICAgbG9jYWwgZiA9IGFzc2VydChsb2FkZmlsZSguLi4pKQogICAgcmV0dXJuIGYoKQogIGVuZAogIGluc2VydF9sb2FkZXIgPSBmdW5jdGlvbihwb3MpCiAgICBpZiBwb3MgPT0gbmlsIHRoZW4KICAgICAgcG9zID0gMgogICAgZW5kCiAgICBpZiBub3QgcGFja2FnZS5tb29ucGF0aCB0aGVuCiAgICAgIHBhY2thZ2UubW9vbnBhdGggPSBjcmVhdGVfbW9vbnBhdGgocGFja2FnZS5wYXRoKQogICAgZW5kCiAgICBsb2NhbCBsb2FkZXJzID0gcGFja2FnZS5sb2FkZXJzIG9yIHBhY2thZ2Uuc2VhcmNoZXJzCiAgICBmb3IgX2luZGV4XzAgPSAxLCAjbG9hZGVycyBkbwogICAgICBsb2NhbCBsb2FkZXIgPSBsb2FkZXJzW19pbmRleF8wXQogICAgICBpZiBsb2FkZXIgPT0gbW9vbl9sb2FkZXIgdGhlbgogICAgICAgIHJldHVybiBmYWxzZQogICAgICBlbmQKICAgIGVuZAogICAgaW5zZXJ0KGxvYWRlcnMsIHBvcywgbW9vbl9sb2FkZXIpCiAgICByZXR1cm4gdHJ1ZQogIGVuZAogIHJlbW92ZV9sb2FkZXIgPSBmdW5jdGlvbigpCiAgICBsb2NhbCBsb2FkZXJzID0gcGFja2FnZS5sb2FkZXJzIG9yIHBhY2thZ2Uuc2VhcmNoZXJzCiAgICBmb3IgaSwgbG9hZGVyIGluIGlwYWlycyhsb2FkZXJzKSBkbwogICAgICBpZiBsb2FkZXIgPT0gbW9vbl9sb2FkZXIgdGhlbgogICAgICAgIHJlbW92ZShsb2FkZXJzLCBpKQogICAgICAgIHJldHVybiB0cnVlCiAgICAgIGVuZAogICAgZW5kCiAgICByZXR1cm4gZmFsc2UKICBlbmQKICByZXR1cm4gewogICAgX05BTUUgPSAibW9vbnNjcmlwdCIsCiAgICBpbnNlcnRfbG9hZGVyID0gaW5zZXJ0X2xvYWRlciwKICAgIHJlbW92ZV9sb2FkZXIgPSByZW1vdmVfbG9hZGVyLAogICAgdG9fbHVhID0gdG9fbHVhLAogICAgbW9vbl9sb2FkZXIgPSBtb29uX2xvYWRlciwKICAgIGRpcnNlcCA9IGRpcnNlcCwKICAgIGRvZmlsZSA9IGRvZmlsZSwKICAgIGxvYWRmaWxlID0gbG9hZGZpbGUsCiAgICBsb2Fkc3RyaW5nID0gbG9hZHN0cmluZywKICAgIGNyZWF0ZV9tb29ucGF0aCA9IGNyZWF0ZV9tb29ucGF0aAogIH0KICAKZW5kCnBhY2thZ2UucHJlbG9hZFsnbW9vbnNjcmlwdCddID0gZnVuY3Rpb24oKQogIGRvCiAgICBsb2NhbCBfd2l0aF8wID0gcmVxdWlyZSgibW9vbnNjcmlwdC5iYXNlIikKICAgIF93aXRoXzAuaW5zZXJ0X2xvYWRlcigpCiAgICByZXR1cm4gX3dpdGhfMAogIGVuZAogIAplbmQKcGFja2FnZS5wcmVsb2FkWydtb29uc2NyaXB0LmNvbXBpbGUnXSA9IGZ1bmN0aW9uKCkKICBsb2NhbCB1dGlsID0gcmVxdWlyZSgibW9vbnNjcmlwdC51dGlsIikKICBsb2NhbCBkdW1wID0gcmVxdWlyZSgibW9vbnNjcmlwdC5kdW1wIikKICBsb2NhbCB0cmFuc2Zvcm0gPSByZXF1aXJlKCJtb29uc2NyaXB0LnRyYW5zZm9ybSIpCiAgbG9jYWwgTmFtZVByb3h5LCBMb2NhbE5hbWUKICBkbwogICAgbG9jYWwgX29ial8wID0gcmVxdWlyZSgibW9vbnNjcmlwdC50cmFuc2Zvcm0ubmFtZXMiKQogICAgTmFtZVByb3h5LCBMb2NhbE5hbWUgPSBfb2JqXzAuTmFtZVByb3h5LCBfb2JqXzAuTG9jYWxOYW1lCiAgZW5kCiAgbG9jYWwgU2V0CiAgU2V0ID0gcmVxdWlyZSgibW9vbnNjcmlwdC5kYXRhIikuU2V0CiAgbG9jYWwgbnR5cGUsIHZhbHVlX2Nhbl9iZV9zdGF0ZW1lbnQKICBkbwogICAgbG9jYWwgX29ial8wID0gcmVxdWlyZSgibW9vbnNjcmlwdC50eXBlcyIpCiAgICBudHlwZSwgdmFsdWVfY2FuX2JlX3N0YXRlbWVudCA9IF9vYmpfMC5udHlwZSwgX29ial8wLnZhbHVlX2Nhbl9iZV9zdGF0ZW1lbnQKICBlbmQKICBsb2NhbCBzdGF0ZW1lbnRfY29tcGlsZXJzID0gcmVxdWlyZSgibW9vbnNjcmlwdC5jb21waWxlLnN0YXRlbWVudCIpCiAgbG9jYWwgdmFsdWVfY29tcGlsZXJzID0gcmVxdWlyZSgibW9vbnNjcmlwdC5jb21waWxlLnZhbHVlIikKICBsb2NhbCBjb25jYXQsIGluc2VydAogIGRvCiAgICBsb2NhbCBfb2JqXzAgPSB0YWJsZQogICAgY29uY2F0LCBpbnNlcnQgPSBfb2JqXzAuY29uY2F0LCBfb2JqXzAuaW5zZXJ0CiAgZW5kCiAgbG9jYWwgcG9zX3RvX2xpbmUsIGdldF9jbG9zZXN0X2xpbmUsIHRyaW0sIHVucGFjawogIHBvc190b19saW5lLCBnZXRfY2xvc2VzdF9saW5lLCB0cmltLCB1bnBhY2sgPSB1dGlsLnBvc190b19saW5lLCB1dGlsLmdldF9jbG9zZXN0X2xpbmUsIHV0aWwudHJpbSwgdXRpbC51bnBhY2sKICBsb2NhbCBtdHlwZSA9IHV0aWwubW9vbi50eXBlCiAgbG9jYWwgaW5kZW50X2NoYXIgPSAiICAiCiAgbG9jYWwgTGluZSwgRGVsYXllZExpbmUsIExpbmVzLCBCbG9jaywgUm9vdEJsb2NrCiAgZG8KICAgIGxvY2FsIF9jbGFzc18wCiAgICBsb2NhbCBfYmFzZV8wID0gewogICAgICBtYXJrX3BvcyA9IGZ1bmN0aW9uKHNlbGYsIHBvcywgbGluZSkKICAgICAgICBpZiBsaW5lID09IG5pbCB0aGVuCiAgICAgICAgICBsaW5lID0gI3NlbGYKICAgICAgICBlbmQKICAgICAgICBpZiBub3QgKHNlbGYucG9zbWFwW2xpbmVdKSB0aGVuCiAgICAgICAgICBzZWxmLnBvc21hcFtsaW5lXSA9IHBvcwogICAgICAgIGVuZAogICAgICBlbmQsCiAgICAgIGFkZCA9IGZ1bmN0aW9uKHNlbGYsIGl0ZW0pCiAgICAgICAgbG9jYWwgX2V4cF8wID0gbXR5cGUoaXRlbSkKICAgICAgICBpZiBMaW5lID09IF9leHBfMCB0aGVuCiAgICAgICAgICBpdGVtOnJlbmRlcihzZWxmKQogICAgICAgIGVsc2VpZiBCbG9jayA9PSBfZXhwXzAgdGhlbgogICAgICAgICAgaXRlbTpyZW5kZXIoc2VsZikKICAgICAgICBlbHNlCiAgICAgICAgICBzZWxmWyNzZWxmICsgMV0gPSBpdGVtCiAgICAgICAgZW5kCiAgICAgICAgcmV0dXJuIHNlbGYKICAgICAgZW5kLAogICAgICBmbGF0dGVuX3Bvc21hcCA9IGZ1bmN0aW9uKHNlbGYsIGxpbmVfbm8sIG91dCkKICAgICAgICBpZiBsaW5lX25vID09IG5pbCB0aGVuCiAgICAgICAgICBsaW5lX25vID0gMAogICAgICAgIGVuZAogICAgICAgIGlmIG91dCA9PSBuaWwgdGhlbgogICAgICAgICAgb3V0ID0geyB9CiAgICAgICAgZW5kCiAgICAgICAgbG9jYWwgcG9zbWFwID0gc2VsZi5wb3NtYXAKICAgICAgICBmb3IgaSwgbCBpbiBpcGFpcnMoc2VsZikgZG8KICAgICAgICAgIGxvY2FsIF9leHBfMCA9IG10eXBlKGwpCiAgICAgICAgICBpZiAic3RyaW5nIiA9PSBfZXhwXzAgb3IgRGVsYXllZExpbmUgPT0gX2V4cF8wIHRoZW4KICAgICAgICAgICAgbGluZV9ubyA9IGxpbmVfbm8gKyAxCiAgICAgICAgICAgIG91dFtsaW5lX25vXSA9IHBvc21hcFtpXQogICAgICAgICAgICBmb3IgXyBpbiBsOmdtYXRjaCgiXG4iKSBkbwogICAgICAgICAgICAgIGxpbmVfbm8gPSBsaW5lX25vICsgMQogICAgICAgICAgICBlbmQKICAgICAgICAgICAgb3V0W2xpbmVfbm9dID0gcG9zbWFwW2ldCiAgICAgICAgICBlbHNlaWYgTGluZXMgPT0gX2V4cF8wIHRoZW4KICAgICAgICAgICAgbG9jYWwgXwogICAgICAgICAgICBfLCBsaW5lX25vID0gbDpmbGF0dGVuX3Bvc21hcChsaW5lX25vLCBvdXQpCiAgICAgICAgICBlbHNlCiAgICAgICAgICAgIGVycm9yKCJVbmtub3duIGl0ZW0gaW4gTGluZXM6ICIgLi4gdG9zdHJpbmcobCkpCiAgICAgICAgICBlbmQKICAgICAgICBlbmQKICAgICAgICByZXR1cm4gb3V0LCBsaW5lX25vCiAgICAgIGVuZCwKICAgICAgZmxhdHRlbiA9IGZ1bmN0aW9uKHNlbGYsIGluZGVudCwgYnVmZmVyKQogICAgICAgIGlmIGluZGVudCA9PSBuaWwgdGhlbgogICAgICAgICAgaW5kZW50ID0gbmlsCiAgICAgICAgZW5kCiAgICAgICAgaWYgYnVmZmVyID09IG5pbCB0aGVuCiAgICAgICAgICBidWZmZXIgPSB7IH0KICAgICAgICBlbmQKICAgICAgICBmb3IgaSA9IDEsICNzZWxmIGRvCiAgICAgICAgICBsb2NhbCBsID0gc2VsZltpXQogICAgICAgICAgbG9jYWwgdCA9IG10eXBlKGwpCiAgICAgICAgICBpZiB0ID09IERlbGF5ZWRMaW5lIHRoZW4KICAgICAgICAgICAgbCA9IGw6cmVuZGVyKCkKICAgICAgICAgICAgdCA9ICJzdHJpbmciCiAgICAgICAgICBlbmQKICAgICAgICAgIGxvY2FsIF9leHBfMCA9IHQKICAgICAgICAgIGlmICJzdHJpbmciID09IF9leHBfMCB0aGVuCiAgICAgICAgICAgIGlmIGluZGVudCB0aGVuCiAgICAgICAgICAgICAgaW5zZXJ0KGJ1ZmZlciwgaW5kZW50KQogICAgICAgICAgICBlbmQKICAgICAgICAgICAgaW5zZXJ0KGJ1ZmZlciwgbCkKICAgICAgICAgICAgaWYgInN0cmluZyIgPT0gdHlwZShzZWxmW2kgKyAxXSkgdGhlbgogICAgICAgICAgICAgIGxvY2FsIGxjID0gbDpzdWIoLTEpCiAgICAgICAgICAgICAgaWYgKGxjID09ICIpIiBvciBsYyA9PSAiXSIpIGFuZCBzZWxmW2kgKyAxXTpzdWIoMSwgMSkgPT0gIigiIHRoZW4KICAgICAgICAgICAgICAgIGluc2VydChidWZmZXIsICI7IikKICAgICAgICAgICAgICBlbmQKICAgICAgICAgICAgZW5kCiAgICAgICAgICAgIGluc2VydChidWZmZXIsICJcbiIpCiAgICAgICAgICBlbHNlaWYgTGluZXMgPT0gX2V4cF8wIHRoZW4KICAgICAgICAgICAgbDpmbGF0dGVuKGluZGVudCBhbmQgaW5kZW50IC4uIGluZGVudF9jaGFyIG9yIGluZGVudF9jaGFyLCBidWZmZXIpCiAgICAgICAgICBlbHNlCiAgICAgICAgICAgIGVycm9yKCJVbmtub3duIGl0ZW0gaW4gTGluZXM6ICIgLi4gdG9zdHJpbmcobCkpCiAgICAgICAgICBlbmQKICAgICAgICBlbmQKICAgICAgICByZXR1cm4gYnVmZmVyCiAgICAgIGVuZCwKICAgICAgX190b3N0cmluZyA9IGZ1bmN0aW9uKHNlbGYpCiAgICAgICAgbG9jYWwgc3RyaXAKICAgICAgICBzdHJpcCA9IGZ1bmN0aW9uKHQpCiAgICAgICAgICBpZiAidGFibGUiID09IHR5cGUodCkgdGhlbgogICAgICAgICAgICBsb2NhbCBfYWNjdW1fMCA9IHsgfQogICAgICAgICAgICBsb2NhbCBfbGVuXzAgPSAxCiAgICAgICAgICAgIGZvciBfaW5kZXhfMCA9IDEsICN0IGRvCiAgICAgICAgICAgICAgbG9jYWwgdiA9IHRbX2luZGV4XzBdCiAgICAgICAgICAgICAgX2FjY3VtXzBbX2xlbl8wXSA9IHN0cmlwKHYpCiAgICAgICAgICAgICAgX2xlbl8wID0gX2xlbl8wICsgMQogICAgICAgICAgICBlbmQKICAgICAgICAgICAgcmV0dXJuIF9hY2N1bV8wCiAgICAgICAgICBlbHNlCiAgICAgICAgICAgIHJldHVybiB0CiAgICAgICAgICBlbmQKICAgICAgICBlbmQKICAgICAgICByZXR1cm4gIkxpbmVzPCIgLi4gdG9zdHJpbmcodXRpbC5kdW1wKHN0cmlwKHNlbGYpKTpzdWIoMSwgLTIpKSAuLiAiPiIKICAgICAgZW5kCiAgICB9CiAgICBfYmFzZV8wLl9faW5kZXggPSBfYmFzZV8wCiAgICBfY2xhc3NfMCA9IHNldG1ldGF0YWJsZSh7CiAgICAgIF9faW5pdCA9IGZ1bmN0aW9uKHNlbGYpCiAgICAgICAgc2VsZi5wb3NtYXAgPSB7IH0KICAgICAgZW5kLAogICAgICBfX2Jhc2UgPSBfYmFzZV8wLAogICAgICBfX25hbWUgPSAiTGluZXMiCiAgICB9LCB7CiAgICAgIF9faW5kZXggPSBfYmFzZV8wLAogICAgICBfX2NhbGwgPSBmdW5jdGlvbihjbHMsIC4uLikKICAgICAgICBsb2NhbCBfc2VsZl8wID0gc2V0bWV0YXRhYmxlKHt9LCBfYmFzZV8wKQogICAgICAgIGNscy5fX2luaXQoX3NlbGZfMCwgLi4uKQogICAgICAgIHJldHVybiBfc2VsZl8wCiAgICAgIGVuZAogICAgfSkKICAgIF9iYXNlXzAuX19jbGFzcyA9IF9jbGFzc18wCiAgICBMaW5lcyA9IF9jbGFzc18wCiAgZW5kCiAgZG8KICAgIGxvY2FsIF9jbGFzc18wCiAgICBsb2NhbCBfYmFzZV8wID0gewogICAgICBwb3MgPSBuaWwsCiAgICAgIGFwcGVuZF9saXN0ID0gZnVuY3Rpb24oc2VsZiwgaXRlbXMsIGRlbGltKQogICAgICAgIGZvciBpID0gMSwgI2l0ZW1zIGRvCiAgICAgICAgICBzZWxmOmFwcGVuZChpdGVtc1tpXSkKICAgICAgICAgIGlmIGkgPCAjaXRlbXMgdGhlbgogICAgICAgICAgICBpbnNlcnQoc2VsZiwgZGVsaW0pCiAgICAgICAgICBlbmQKICAgICAgICBlbmQKICAgICAgICByZXR1cm4gbmlsCiAgICAgIGVuZCwKICAgICAgYXBwZW5kID0gZnVuY3Rpb24oc2VsZiwgZmlyc3QsIC4uLikKICAgICAgICBpZiBMaW5lID09IG10eXBlKGZpcnN0KSB0aGVuCiAgICAgICAgICBpZiBub3QgKHNlbGYucG9zKSB0aGVuCiAgICAgICAgICAgIHNlbGYucG9zID0gZmlyc3QucG9zCiAgICAgICAgICBlbmQKICAgICAgICAgIGZvciBfaW5kZXhfMCA9IDEsICNmaXJzdCBkbwogICAgICAgICAgICBsb2NhbCB2YWx1ZSA9IGZpcnN0W19pbmRleF8wXQogICAgICAgICAgICBzZWxmOmFwcGVuZCh2YWx1ZSkKICAgICAgICAgIGVuZAogICAgICAgIGVsc2UKICAgICAgICAgIGluc2VydChzZWxmLCBmaXJzdCkKICAgICAgICBlbmQKICAgICAgICBpZiAuLi4gdGhlbgogICAgICAgICAgcmV0dXJuIHNlbGY6YXBwZW5kKC4uLikKICAgICAgICBlbmQKICAgICAgZW5kLAogICAgICByZW5kZXIgPSBmdW5jdGlvbihzZWxmLCBidWZmZXIpCiAgICAgICAgbG9jYWwgY3VycmVudCA9IHsgfQogICAgICAgIGxvY2FsIGFkZF9jdXJyZW50CiAgICAgICAgYWRkX2N1cnJlbnQgPSBmdW5jdGlvbigpCiAgICAgICAgICBidWZmZXI6YWRkKGNvbmNhdChjdXJyZW50KSkKICAgICAgICAgIHJldHVybiBidWZmZXI6bWFya19wb3Moc2VsZi5wb3MpCiAgICAgICAgZW5kCiAgICAgICAgZm9yIF9pbmRleF8wID0gMSwgI3NlbGYgZG8KICAgICAgICAgIGxvY2FsIGNodW5rID0gc2VsZltfaW5kZXhfMF0KICAgICAgICAgIGxvY2FsIF9leHBfMCA9IG10eXBlKGNodW5rKQogICAgICAgICAgaWYgQmxvY2sgPT0gX2V4cF8wIHRoZW4KICAgICAgICAgICAgbG9jYWwgX2xpc3RfMCA9IGNodW5rOnJlbmRlcihMaW5lcygpKQogICAgICAgICAgICBmb3IgX2luZGV4XzEgPSAxLCAjX2xpc3RfMCBkbwogICAgICAgICAgICAgIGxvY2FsIGJsb2NrX2NodW5rID0gX2xpc3RfMFtfaW5kZXhfMV0KICAgICAgICAgICAgICBpZiAic3RyaW5nIiA9PSB0eXBlKGJsb2NrX2NodW5rKSB0aGVuCiAgICAgICAgICAgICAgICBpbnNlcnQoY3VycmVudCwgYmxvY2tfY2h1bmspCiAgICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgYWRkX2N1cnJlbnQoKQogICAgICAgICAgICAgICAgYnVmZmVyOmFkZChibG9ja19jaHVuaykKICAgICAgICAgICAgICAgIGN1cnJlbnQgPSB7IH0KICAgICAgICAgICAgICBlbmQKICAgICAgICAgICAgZW5kCiAgICAgICAgICBlbHNlCiAgICAgICAgICAgIGluc2VydChjdXJyZW50LCBjaHVuaykKICAgICAgICAgIGVuZAogICAgICAgIGVuZAogICAgICAgIGlmIGN1cnJlbnRbMV0gdGhlbgogICAgICAgICAgYWRkX2N1cnJlbnQoKQogICAgICAgIGVuZAogICAgICAgIHJldHVybiBidWZmZXIKICAgICAgZW5kLAogICAgICBfX3Rvc3RyaW5nID0gZnVuY3Rpb24oc2VsZikKICAgICAgICByZXR1cm4gIkxpbmU8IiAuLiB0b3N0cmluZyh1dGlsLmR1bXAoc2VsZik6c3ViKDEsIC0yKSkgLi4gIj4iCiAgICAgIGVuZAogICAgfQogICAgX2Jhc2VfMC5fX2luZGV4ID0gX2Jhc2VfMAogICAgX2NsYXNzXzAgPSBzZXRtZXRhdGFibGUoewogICAgICBfX2luaXQgPSBmdW5jdGlvbigpIGVuZCwKICAgICAgX19iYXNlID0gX2Jhc2VfMCwKICAgICAgX19uYW1lID0gIkxpbmUiCiAgICB9LCB7CiAgICAgIF9faW5kZXggPSBfYmFzZV8wLAogICAgICBfX2NhbGwgPSBmdW5jdGlvbihjbHMsIC4uLikKICAgICAgICBsb2NhbCBfc2VsZl8wID0gc2V0bWV0YXRhYmxlKHt9LCBfYmFzZV8wKQogICAgICAgIGNscy5fX2luaXQoX3NlbGZfMCwgLi4uKQogICAgICAgIHJldHVybiBfc2VsZl8wCiAgICAgIGVuZAogICAgfSkKICAgIF9iYXNlXzAuX19jbGFzcyA9IF9jbGFzc18wCiAgICBMaW5lID0gX2NsYXNzXzAKICBlbmQKICBkbwogICAgbG9jYWwgX2NsYXNzXzAKICAgIGxvY2FsIF9iYXNlXzAgPSB7CiAgICAgIHByZXBhcmUgPSBmdW5jdGlvbigpIGVuZCwKICAgICAgcmVuZGVyID0gZnVuY3Rpb24oc2VsZikKICAgICAgICBzZWxmOnByZXBhcmUoKQogICAgICAgIHJldHVybiBjb25jYXQoc2VsZikKICAgICAgZW5kCiAgICB9CiAgICBfYmFzZV8wLl9faW5kZXggPSBfYmFzZV8wCiAgICBfY2xhc3NfMCA9IHNldG1ldGF0YWJsZSh7CiAgICAgIF9faW5pdCA9IGZ1bmN0aW9uKHNlbGYsIGZuKQogICAgICAgIHNlbGYucHJlcGFyZSA9IGZuCiAgICAgIGVuZCwKICAgICAgX19iYXNlID0gX2Jhc2VfMCwKICAgICAgX19uYW1lID0gIkRlbGF5ZWRMaW5lIgogICAgfSwgewogICAgICBfX2luZGV4ID0gX2Jhc2VfMCwKICAgICAgX19jYWxsID0gZnVuY3Rpb24oY2xzLCAuLi4pCiAgICAgICAgbG9jYWwgX3NlbGZfMCA9IHNldG1ldGF0YWJsZSh7fSwgX2Jhc2VfMCkKICAgICAgICBjbHMuX19pbml0KF9zZWxmXzAsIC4uLikKICAgICAgICByZXR1cm4gX3NlbGZfMAogICAgICBlbmQKICAgIH0pCiAgICBfYmFzZV8wLl9fY2xhc3MgPSBfY2xhc3NfMAogICAgRGVsYXllZExpbmUgPSBfY2xhc3NfMAogIGVuZAogIGRvCiAgICBsb2NhbCBfY2xhc3NfMAogICAgbG9jYWwgX2Jhc2VfMCA9IHsKICAgICAgaGVhZGVyID0gImRvIiwKICAgICAgZm9vdGVyID0gImVuZCIsCiAgICAgIGV4cG9ydF9hbGwgPSBmYWxzZSwKICAgICAgZXhwb3J0X3Byb3BlciA9IGZhbHNlLAogICAgICB2YWx1ZV9jb21waWxlcnMgPSB2YWx1ZV9jb21waWxlcnMsCiAgICAgIHN0YXRlbWVudF9jb21waWxlcnMgPSBzdGF0ZW1lbnRfY29tcGlsZXJzLAogICAgICBfX3Rvc3RyaW5nID0gZnVuY3Rpb24oc2VsZikKICAgICAgICBsb2NhbCBoCiAgICAgICAgaWYgInN0cmluZyIgPT0gdHlwZShzZWxmLmhlYWRlcikgdGhlbgogICAgICAgICAgaCA9IHNlbGYuaGVhZGVyCiAgICAgICAgZWxzZQogICAgICAgICAgaCA9IHVucGFjayhzZWxmLmhlYWRlcjpyZW5kZXIoeyB9KSkKICAgICAgICBlbmQKICAgICAgICByZXR1cm4gIkJsb2NrPCIgLi4gdG9zdHJpbmcoaCkgLi4gIj4gPC0gIiAuLiB0b3N0cmluZyhzZWxmLnBhcmVudCkKICAgICAgZW5kLAogICAgICBzZXQgPSBmdW5jdGlvbihzZWxmLCBuYW1lLCB2YWx1ZSkKICAgICAgICBzZWxmLl9zdGF0ZVtuYW1lXSA9IHZhbHVlCiAgICAgIGVuZCwKICAgICAgZ2V0ID0gZnVuY3Rpb24oc2VsZiwgbmFtZSkKICAgICAgICByZXR1cm4gc2VsZi5fc3RhdGVbbmFtZV0KICAgICAgZW5kLAogICAgICBnZXRfY3VycmVudCA9IGZ1bmN0aW9uKHNlbGYsIG5hbWUpCiAgICAgICAgcmV0dXJuIHJhd2dldChzZWxmLl9zdGF0ZSwgbmFtZSkKICAgICAgZW5kLAogICAgICBsaXN0ZW4gPSBmdW5jdGlvbihzZWxmLCBuYW1lLCBmbikKICAgICAgICBzZWxmLl9saXN0ZW5lcnNbbmFtZV0gPSBmbgogICAgICBlbmQsCiAgICAgIHVubGlzdGVuID0gZnVuY3Rpb24oc2VsZiwgbmFtZSkKICAgICAgICBzZWxmLl9saXN0ZW5lcnNbbmFtZV0gPSBuaWwKICAgICAgZW5kLAogICAgICBzZW5kID0gZnVuY3Rpb24oc2VsZiwgbmFtZSwgLi4uKQogICAgICAgIGRvCiAgICAgICAgICBsb2NhbCBmbiA9IHNlbGYuX2xpc3RlbmVyc1tuYW1lXQogICAgICAgICAgaWYgZm4gdGhlbgogICAgICAgICAgICByZXR1cm4gZm4oc2VsZiwgLi4uKQogICAgICAgICAgZW5kCiAgICAgICAgZW5kCiAgICAgIGVuZCwKICAgICAgZXh0cmFjdF9hc3NpZ25fbmFtZSA9IGZ1bmN0aW9uKHNlbGYsIG5vZGUpCiAgICAgICAgbG9jYWwgaXNfbG9jYWwgPSBmYWxzZQogICAgICAgIGxvY2FsIHJlYWxfbmFtZQogICAgICAgIGxvY2FsIF9leHBfMCA9IG10eXBlKG5vZGUpCiAgICAgICAgaWYgTG9jYWxOYW1lID09IF9leHBfMCB0aGVuCiAgICAgICAgICBpc19sb2NhbCA9IHRydWUKICAgICAgICAgIHJlYWxfbmFtZSA9IG5vZGU6Z2V0X25hbWUoc2VsZikKICAgICAgICBlbHNlaWYgTmFtZVByb3h5ID09IF9leHBfMCB0aGVuCiAgICAgICAgICByZWFsX25hbWUgPSBub2RlOmdldF9uYW1lKHNlbGYpCiAgICAgICAgZWxzZWlmICJ0YWJsZSIgPT0gX2V4cF8wIHRoZW4KICAgICAgICAgIHJlYWxfbmFtZSA9IG5vZGVbMV0gPT0gInJlZiIgYW5kIG5vZGVbMl0KICAgICAgICBlbHNlaWYgInN0cmluZyIgPT0gX2V4cF8wIHRoZW4KICAgICAgICAgIHJlYWxfbmFtZSA9IG5vZGUKICAgICAgICBlbmQKICAgICAgICByZXR1cm4gcmVhbF9uYW1lLCBpc19sb2NhbAogICAgICBlbmQsCiAgICAgIGRlY2xhcmUgPSBmdW5jdGlvbihzZWxmLCBuYW1lcykKICAgICAgICBsb2NhbCB1bmRlY2xhcmVkCiAgICAgICAgZG8KICAgICAgICAgIGxvY2FsIF9hY2N1bV8wID0geyB9CiAgICAgICAgICBsb2NhbCBfbGVuXzAgPSAxCiAgICAgICAgICBmb3IgX2luZGV4XzAgPSAxLCAjbmFtZXMgZG8KICAgICAgICAgICAgbG9jYWwgX2NvbnRpbnVlXzAgPSBmYWxzZQogICAgICAgICAgICByZXBlYXQKICAgICAgICAgICAgICBsb2NhbCBuYW1lID0gbmFtZXNbX2luZGV4XzBdCiAgICAgICAgICAgICAgbG9jYWwgcmVhbF9uYW1lLCBpc19sb2NhbCA9IHNlbGY6ZXh0cmFjdF9hc3NpZ25fbmFtZShuYW1lKQogICAgICAgICAgICAgIGlmIG5vdCAoaXNfbG9jYWwgb3IgcmVhbF9uYW1lIGFuZCBub3Qgc2VsZjpoYXNfbmFtZShyZWFsX25hbWUsIHRydWUpKSB0aGVuCiAgICAgICAgICAgICAgICBfY29udGludWVfMCA9IHRydWUKICAgICAgICAgICAgICAgIGJyZWFrCiAgICAgICAgICAgICAgZW5kCiAgICAgICAgICAgICAgc2VsZjpwdXRfbmFtZShyZWFsX25hbWUpCiAgICAgICAgICAgICAgaWYgc2VsZjpuYW1lX2V4cG9ydGVkKHJlYWxfbmFtZSkgdGhlbgogICAgICAgICAgICAgICAgX2NvbnRpbnVlXzAgPSB0cnVlCiAgICAgICAgICAgICAgICBicmVhawogICAgICAgICAgICAgIGVuZAogICAgICAgICAgICAgIGxvY2FsIF92YWx1ZV8wID0gcmVhbF9uYW1lCiAgICAgICAgICAgICAgX2FjY3VtXzBbX2xlbl8wXSA9IF92YWx1ZV8wCiAgICAgICAgICAgICAgX2xlbl8wID0gX2xlbl8wICsgMQogICAgICAgICAgICAgIF9jb250aW51ZV8wID0gdHJ1ZQogICAgICAgICAgICB1bnRpbCB0cnVlCiAgICAgICAgICAgIGlmIG5vdCBfY29udGludWVfMCB0aGVuCiAgICAgICAgICAgICAgYnJlYWsKICAgICAgICAgICAgZW5kCiAgICAgICAgICBlbmQKICAgICAgICAgIHVuZGVjbGFyZWQgPSBfYWNjdW1fMAogICAgICAgIGVuZAogICAgICAgIHJldHVybiB1bmRlY2xhcmVkCiAgICAgIGVuZCwKICAgICAgd2hpdGVsaXN0X25hbWVzID0gZnVuY3Rpb24oc2VsZiwgbmFtZXMpCiAgICAgICAgc2VsZi5fbmFtZV93aGl0ZWxpc3QgPSBTZXQobmFtZXMpCiAgICAgIGVuZCwKICAgICAgbmFtZV9leHBvcnRlZCA9IGZ1bmN0aW9uKHNlbGYsIG5hbWUpCiAgICAgICAgaWYgc2VsZi5leHBvcnRfYWxsIHRoZW4KICAgICAgICAgIHJldHVybiB0cnVlCiAgICAgICAgZW5kCiAgICAgICAgaWYgc2VsZi5leHBvcnRfcHJvcGVyIGFuZCBuYW1lOm1hdGNoKCJeJXUiKSB0aGVuCiAgICAgICAgICByZXR1cm4gdHJ1ZQogICAgICAgIGVuZAogICAgICBlbmQsCiAgICAgIHB1dF9uYW1lID0gZnVuY3Rpb24oc2VsZiwgbmFtZSwgLi4uKQogICAgICAgIGxvY2FsIHZhbHVlID0gLi4uCiAgICAgICAgaWYgc2VsZWN0KCIjIiwgLi4uKSA9PSAwIHRoZW4KICAgICAgICAgIHZhbHVlID0gdHJ1ZQogICAgICAgIGVuZAogICAgICAgIGlmIE5hbWVQcm94eSA9PSBtdHlwZShuYW1lKSB0aGVuCiAgICAgICAgICBuYW1lID0gbmFtZTpnZXRfbmFtZShzZWxmKQogICAgICAgIGVuZAogICAgICAgIHNlbGYuX25hbWVzW25hbWVdID0gdmFsdWUKICAgICAgZW5kLAogICAgICBoYXNfbmFtZSA9IGZ1bmN0aW9uKHNlbGYsIG5hbWUsIHNraXBfZXhwb3J0cykKICAgICAgICBpZiBub3Qgc2tpcF9leHBvcnRzIGFuZCBzZWxmOm5hbWVfZXhwb3J0ZWQobmFtZSkgdGhlbgogICAgICAgICAgcmV0dXJuIHRydWUKICAgICAgICBlbmQKICAgICAgICBsb2NhbCB5ZXMgPSBzZWxmLl9uYW1lc1tuYW1lXQogICAgICAgIGlmIHllcyA9PSBuaWwgYW5kIHNlbGYucGFyZW50IHRoZW4KICAgICAgICAgIGlmIG5vdCBzZWxmLl9uYW1lX3doaXRlbGlzdCBvciBzZWxmLl9uYW1lX3doaXRlbGlzdFtuYW1lXSB0aGVuCiAgICAgICAgICAgIHJldHVybiBzZWxmLnBhcmVudDpoYXNfbmFtZShuYW1lLCB0cnVlKQogICAgICAgICAgZW5kCiAgICAgICAgZWxzZQogICAgICAgICAgcmV0dXJuIHllcwogICAgICAgIGVuZAogICAgICBlbmQsCiAgICAgIGlzX2xvY2FsID0gZnVuY3Rpb24oc2VsZiwgbm9kZSkKICAgICAgICBsb2NhbCB0ID0gbXR5cGUobm9kZSkKICAgICAgICBpZiB0ID09ICJzdHJpbmciIHRoZW4KICAgICAgICAgIHJldHVybiBzZWxmOmhhc19uYW1lKG5vZGUsIGZhbHNlKQogICAgICAgIGVuZAogICAgICAgIGlmIHQgPT0gTmFtZVByb3h5IG9yIHQgPT0gTG9jYWxOYW1lIHRoZW4KICAgICAgICAgIHJldHVybiB0cnVlCiAgICAgICAgZW5kCiAgICAgICAgaWYgdCA9PSAidGFibGUiIHRoZW4KICAgICAgICAgIGlmIG5vZGVbMV0gPT0gInJlZiIgb3IgKG5vZGVbMV0gPT0gImNoYWluIiBhbmQgI25vZGUgPT0gMikgdGhlbgogICAgICAgICAgICByZXR1cm4gc2VsZjppc19sb2NhbChub2RlWzJdKQogICAgICAgICAgZW5kCiAgICAgICAgZW5kCiAgICAgICAgcmV0dXJuIGZhbHNlCiAgICAgIGVuZCwKICAgICAgZnJlZV9uYW1lID0gZnVuY3Rpb24oc2VsZiwgcHJlZml4LCBkb250X3B1dCkKICAgICAgICBwcmVmaXggPSBwcmVmaXggb3IgIm1vb24iCiAgICAgICAgbG9jYWwgc2VhcmNoaW5nID0gdHJ1ZQogICAgICAgIGxvY2FsIG5hbWUsIGkgPSBuaWwsIDAKICAgICAgICB3aGlsZSBzZWFyY2hpbmcgZG8KICAgICAgICAgIG5hbWUgPSBjb25jYXQoewogICAgICAgICAgICAiIiwKICAgICAgICAgICAgcHJlZml4LAogICAgICAgICAgICBpCiAgICAgICAgICB9LCAiXyIpCiAgICAgICAgICBpID0gaSArIDEKICAgICAgICAgIHNlYXJjaGluZyA9IHNlbGY6aGFzX25hbWUobmFtZSwgdHJ1ZSkKICAgICAgICBlbmQKICAgICAgICBpZiBub3QgZG9udF9wdXQgdGhlbgogICAgICAgICAgc2VsZjpwdXRfbmFtZShuYW1lKQogICAgICAgIGVuZAogICAgICAgIHJldHVybiBuYW1lCiAgICAgIGVuZCwKICAgICAgaW5pdF9mcmVlX3ZhciA9IGZ1bmN0aW9uKHNlbGYsIHByZWZpeCwgdmFsdWUpCiAgICAgICAgbG9jYWwgbmFtZSA9IHNlbGY6ZnJlZV9uYW1lKHByZWZpeCwgdHJ1ZSkKICAgICAgICBzZWxmOnN0bSh7CiAgICAgICAgICAiYXNzaWduIiwKICAgICAgICAgIHsKICAgICAgICAgICAgbmFtZQogICAgICAgICAgfSwKICAgICAgICAgIHsKICAgICAgICAgICAgdmFsdWUKICAgICAgICAgIH0KICAgICAgICB9KQogICAgICAgIHJldHVybiBuYW1lCiAgICAgIGVuZCwKICAgICAgYWRkID0gZnVuY3Rpb24oc2VsZiwgaXRlbSwgcG9zKQogICAgICAgIGRvCiAgICAgICAgICBsb2NhbCBfd2l0aF8wID0gc2VsZi5fbGluZXMKICAgICAgICAgIF93aXRoXzA6YWRkKGl0ZW0pCiAgICAgICAgICBpZiBwb3MgdGhlbgogICAgICAgICAgICBfd2l0aF8wOm1hcmtfcG9zKHBvcykKICAgICAgICAgIGVuZAogICAgICAgIGVuZAogICAgICAgIHJldHVybiBpdGVtCiAgICAgIGVuZCwKICAgICAgcmVuZGVyID0gZnVuY3Rpb24oc2VsZiwgYnVmZmVyKQogICAgICAgIGJ1ZmZlcjphZGQoc2VsZi5oZWFkZXIpCiAgICAgICAgYnVmZmVyOm1hcmtfcG9zKHNlbGYucG9zKQogICAgICAgIGlmIHNlbGYubmV4dCB0aGVuCiAgICAgICAgICBidWZmZXI6YWRkKHNlbGYuX2xpbmVzKQogICAgICAgICAgc2VsZi5uZXh0OnJlbmRlcihidWZmZXIpCiAgICAgICAgZWxzZQogICAgICAgICAgaWYgI3NlbGYuX2xpbmVzID09IDAgYW5kICJzdHJpbmciID09IHR5cGUoYnVmZmVyWyNidWZmZXJdKSB0aGVuCiAgICAgICAgICAgIGJ1ZmZlclsjYnVmZmVyXSA9IGJ1ZmZlclsjYnVmZmVyXSAuLiAoIiAiIC4uICh1bnBhY2soTGluZXMoKTphZGQoc2VsZi5mb290ZXIpKSkpCiAgICAgICAgICBlbHNlCiAgICAgICAgICAgIGJ1ZmZlcjphZGQoc2VsZi5fbGluZXMpCiAgICAgICAgICAgIGJ1ZmZlcjphZGQoc2VsZi5mb290ZXIpCiAgICAgICAgICAgIGJ1ZmZlcjptYXJrX3BvcyhzZWxmLnBvcykKICAgICAgICAgIGVuZAogICAgICAgIGVuZAogICAgICAgIHJldHVybiBidWZmZXIKICAgICAgZW5kLAogICAgICBibG9jayA9IGZ1bmN0aW9uKHNlbGYsIGhlYWRlciwgZm9vdGVyKQogICAgICAgIHJldHVybiBCbG9jayhzZWxmLCBoZWFkZXIsIGZvb3RlcikKICAgICAgZW5kLAogICAgICBsaW5lID0gZnVuY3Rpb24oc2VsZiwgLi4uKQogICAgICAgIGRvCiAgICAgICAgICBsb2NhbCBfd2l0aF8wID0gTGluZSgpCiAgICAgICAgICBfd2l0aF8wOmFwcGVuZCguLi4pCiAgICAgICAgICByZXR1cm4gX3dpdGhfMAogICAgICAgIGVuZAogICAgICBlbmQsCiAgICAgIGlzX3N0bSA9IGZ1bmN0aW9uKHNlbGYsIG5vZGUpCiAgICAgICAgcmV0dXJuIHNlbGYuc3RhdGVtZW50X2NvbXBpbGVyc1tudHlwZShub2RlKV0gfj0gbmlsCiAgICAgIGVuZCwKICAgICAgaXNfdmFsdWUgPSBmdW5jdGlvbihzZWxmLCBub2RlKQogICAgICAgIGxvY2FsIHQgPSBudHlwZShub2RlKQogICAgICAgIHJldHVybiBzZWxmLnZhbHVlX2NvbXBpbGVyc1t0XSB+PSBuaWwgb3IgdCA9PSAidmFsdWUiCiAgICAgIGVuZCwKICAgICAgbmFtZSA9IGZ1bmN0aW9uKHNlbGYsIG5vZGUsIC4uLikKICAgICAgICBpZiB0eXBlKG5vZGUpID09ICJzdHJpbmciIHRoZW4KICAgICAgICAgIHJldHVybiBub2RlCiAgICAgICAgZWxzZQogICAgICAgICAgcmV0dXJuIHNlbGY6dmFsdWUobm9kZSwgLi4uKQogICAgICAgIGVuZAogICAgICBlbmQsCiAgICAgIHZhbHVlID0gZnVuY3Rpb24oc2VsZiwgbm9kZSwgLi4uKQogICAgICAgIG5vZGUgPSBzZWxmLnRyYW5zZm9ybS52YWx1ZShub2RlKQogICAgICAgIGxvY2FsIGFjdGlvbgogICAgICAgIGlmIHR5cGUobm9kZSkgfj0gInRhYmxlIiB0aGVuCiAgICAgICAgICBhY3Rpb24gPSAicmF3X3ZhbHVlIgogICAgICAgIGVsc2UKICAgICAgICAgIGFjdGlvbiA9IG5vZGVbMV0KICAgICAgICBlbmQKICAgICAgICBsb2NhbCBmbiA9IHNlbGYudmFsdWVfY29tcGlsZXJzW2FjdGlvbl0KICAgICAgICBpZiBub3QgKGZuKSB0aGVuCiAgICAgICAgICBlcnJvcih7CiAgICAgICAgICAgICJjb21waWxlLWVycm9yIiwKICAgICAgICAgICAgIkZhaWxlZCB0byBmaW5kIHZhbHVlIGNvbXBpbGVyIGZvcjogIiAuLiBkdW1wLnZhbHVlKG5vZGUpLAogICAgICAgICAgICBub2RlWy0xXQogICAgICAgICAgfSkKICAgICAgICBlbmQKICAgICAgICBsb2NhbCBvdXQgPSBmbihzZWxmLCBub2RlLCAuLi4pCiAgICAgICAgaWYgdHlwZShub2RlKSA9PSAidGFibGUiIGFuZCBub2RlWy0xXSB0aGVuCiAgICAgICAgICBpZiB0eXBlKG91dCkgPT0gInN0cmluZyIgdGhlbgogICAgICAgICAgICBkbwogICAgICAgICAgICAgIGxvY2FsIF93aXRoXzAgPSBMaW5lKCkKICAgICAgICAgICAgICBfd2l0aF8wOmFwcGVuZChvdXQpCiAgICAgICAgICAgICAgb3V0ID0gX3dpdGhfMAogICAgICAgICAgICBlbmQKICAgICAgICAgIGVuZAogICAgICAgICAgb3V0LnBvcyA9IG5vZGVbLTFdCiAgICAgICAgZW5kCiAgICAgICAgcmV0dXJuIG91dAogICAgICBlbmQsCiAgICAgIHZhbHVlcyA9IGZ1bmN0aW9uKHNlbGYsIHZhbHVlcywgZGVsaW0pCiAgICAgICAgZGVsaW0gPSBkZWxpbSBvciAnLCAnCiAgICAgICAgZG8KICAgICAgICAgIGxvY2FsIF93aXRoXzAgPSBMaW5lKCkKICAgICAgICAgIF93aXRoXzA6YXBwZW5kX2xpc3QoKGZ1bmN0aW9uKCkKICAgICAgICAgICAgbG9jYWwgX2FjY3VtXzAgPSB7IH0KICAgICAgICAgICAgbG9jYWwgX2xlbl8wID0gMQogICAgICAgICAgICBmb3IgX2luZGV4XzAgPSAxLCAjdmFsdWVzIGRvCiAgICAgICAgICAgICAgbG9jYWwgdiA9IHZhbHVlc1tfaW5kZXhfMF0KICAgICAgICAgICAgICBfYWNjdW1fMFtfbGVuXzBdID0gc2VsZjp2YWx1ZSh2KQogICAgICAgICAgICAgIF9sZW5fMCA9IF9sZW5fMCArIDEKICAgICAgICAgICAgZW5kCiAgICAgICAgICAgIHJldHVybiBfYWNjdW1fMAogICAgICAgICAgZW5kKSgpLCBkZWxpbSkKICAgICAgICAgIHJldHVybiBfd2l0aF8wCiAgICAgICAgZW5kCiAgICAgIGVuZCwKICAgICAgc3RtID0gZnVuY3Rpb24oc2VsZiwgbm9kZSwgLi4uKQogICAgICAgIGlmIG5vdCBub2RlIHRoZW4KICAgICAgICAgIHJldHVybiAKICAgICAgICBlbmQKICAgICAgICBub2RlID0gc2VsZi50cmFuc2Zvcm0uc3RhdGVtZW50KG5vZGUpCiAgICAgICAgbG9jYWwgcmVzdWx0CiAgICAgICAgZG8KICAgICAgICAgIGxvY2FsIGZuID0gc2VsZi5zdGF0ZW1lbnRfY29tcGlsZXJzW250eXBlKG5vZGUpXQogICAgICAgICAgaWYgZm4gdGhlbgogICAgICAgICAgICByZXN1bHQgPSBmbihzZWxmLCBub2RlLCAuLi4pCiAgICAgICAgICBlbHNlCiAgICAgICAgICAgIGlmIHZhbHVlX2Nhbl9iZV9zdGF0ZW1lbnQobm9kZSkgdGhlbgogICAgICAgICAgICAgIHJlc3VsdCA9IHNlbGY6dmFsdWUobm9kZSkKICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgIHJlc3VsdCA9IHNlbGY6c3RtKHsKICAgICAgICAgICAgICAgICJhc3NpZ24iLAogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAiXyIKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgIG5vZGUKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICB9KQogICAgICAgICAgICBlbmQKICAgICAgICAgIGVuZAogICAgICAgIGVuZAogICAgICAgIGlmIHJlc3VsdCB0aGVuCiAgICAgICAgICBpZiB0eXBlKG5vZGUpID09ICJ0YWJsZSIgYW5kIHR5cGUocmVzdWx0KSA9PSAidGFibGUiIGFuZCBub2RlWy0xXSB0aGVuCiAgICAgICAgICAgIHJlc3VsdC5wb3MgPSBub2RlWy0xXQogICAgICAgICAgZW5kCiAgICAgICAgICBzZWxmOmFkZChyZXN1bHQpCiAgICAgICAgZW5kCiAgICAgICAgcmV0dXJuIG5pbAogICAgICBlbmQsCiAgICAgIHN0bXMgPSBmdW5jdGlvbihzZWxmLCBzdG1zLCByZXQpCiAgICAgICAgaWYgcmV0IHRoZW4KICAgICAgICAgIGVycm9yKCJkZXByZWNhdGVkIHN0bXMgY2FsbCwgdXNlIHRyYW5zZm9ybWVyIikKICAgICAgICBlbmQKICAgICAgICBsb2NhbCBjdXJyZW50X3N0bXMsIGN1cnJlbnRfc3RtX2kKICAgICAgICBjdXJyZW50X3N0bXMsIGN1cnJlbnRfc3RtX2kgPSBzZWxmLmN1cnJlbnRfc3Rtcywgc2VsZi5jdXJyZW50X3N0bV9pCiAgICAgICAgc2VsZi5jdXJyZW50X3N0bXMgPSBzdG1zCiAgICAgICAgZm9yIGkgPSAxLCAjc3RtcyBkbwogICAgICAgICAgc2VsZi5jdXJyZW50X3N0bV9pID0gaQogICAgICAgICAgc2VsZjpzdG0oc3Rtc1tpXSkKICAgICAgICBlbmQKICAgICAgICBzZWxmLmN1cnJlbnRfc3RtcyA9IGN1cnJlbnRfc3RtcwogICAgICAgIHNlbGYuY3VycmVudF9zdG1faSA9IGN1cnJlbnRfc3RtX2kKICAgICAgICByZXR1cm4gbmlsCiAgICAgIGVuZCwKICAgICAgc3BsaWNlID0gZnVuY3Rpb24oc2VsZiwgZm4pCiAgICAgICAgbG9jYWwgbGluZXMgPSB7CiAgICAgICAgICAibGluZXMiLAogICAgICAgICAgc2VsZi5fbGluZXMKICAgICAgICB9CiAgICAgICAgc2VsZi5fbGluZXMgPSBMaW5lcygpCiAgICAgICAgcmV0dXJuIHNlbGY6c3RtcyhmbihsaW5lcykpCiAgICAgIGVuZAogICAgfQogICAgX2Jhc2VfMC5fX2luZGV4ID0gX2Jhc2VfMAogICAgX2NsYXNzXzAgPSBzZXRtZXRhdGFibGUoewogICAgICBfX2luaXQgPSBmdW5jdGlvbihzZWxmLCBwYXJlbnQsIGhlYWRlciwgZm9vdGVyKQogICAgICAgIHNlbGYucGFyZW50LCBzZWxmLmhlYWRlciwgc2VsZi5mb290ZXIgPSBwYXJlbnQsIGhlYWRlciwgZm9vdGVyCiAgICAgICAgc2VsZi5fbGluZXMgPSBMaW5lcygpCiAgICAgICAgc2VsZi5fbmFtZXMgPSB7IH0KICAgICAgICBzZWxmLl9zdGF0ZSA9IHsgfQogICAgICAgIHNlbGYuX2xpc3RlbmVycyA9IHsgfQogICAgICAgIGRvCiAgICAgICAgICBzZWxmLnRyYW5zZm9ybSA9IHsKICAgICAgICAgICAgdmFsdWUgPSB0cmFuc2Zvcm0uVmFsdWU6YmluZChzZWxmKSwKICAgICAgICAgICAgc3RhdGVtZW50ID0gdHJhbnNmb3JtLlN0YXRlbWVudDpiaW5kKHNlbGYpCiAgICAgICAgICB9CiAgICAgICAgZW5kCiAgICAgICAgaWYgc2VsZi5wYXJlbnQgdGhlbgogICAgICAgICAgc2VsZi5yb290ID0gc2VsZi5wYXJlbnQucm9vdAogICAgICAgICAgc2VsZi5pbmRlbnQgPSBzZWxmLnBhcmVudC5pbmRlbnQgKyAxCiAgICAgICAgICBzZXRtZXRhdGFibGUoc2VsZi5fc3RhdGUsIHsKICAgICAgICAgICAgX19pbmRleCA9IHNlbGYucGFyZW50Ll9zdGF0ZQogICAgICAgICAgfSkKICAgICAgICAgIHJldHVybiBzZXRtZXRhdGFibGUoc2VsZi5fbGlzdGVuZXJzLCB7CiAgICAgICAgICAgIF9faW5kZXggPSBzZWxmLnBhcmVudC5fbGlzdGVuZXJzCiAgICAgICAgICB9KQogICAgICAgIGVsc2UKICAgICAgICAgIHNlbGYuaW5kZW50ID0gMAogICAgICAgIGVuZAogICAgICBlbmQsCiAgICAgIF9fYmFzZSA9IF9iYXNlXzAsCiAgICAgIF9fbmFtZSA9ICJCbG9jayIKICAgIH0sIHsKICAgICAgX19pbmRleCA9IF9iYXNlXzAsCiAgICAgIF9fY2FsbCA9IGZ1bmN0aW9uKGNscywgLi4uKQogICAgICAgIGxvY2FsIF9zZWxmXzAgPSBzZXRtZXRhdGFibGUoe30sIF9iYXNlXzApCiAgICAgICAgY2xzLl9faW5pdChfc2VsZl8wLCAuLi4pCiAgICAgICAgcmV0dXJuIF9zZWxmXzAKICAgICAgZW5kCiAgICB9KQogICAgX2Jhc2VfMC5fX2NsYXNzID0gX2NsYXNzXzAKICAgIEJsb2NrID0gX2NsYXNzXzAKICBlbmQKICBkbwogICAgbG9jYWwgX2NsYXNzXzAKICAgIGxvY2FsIF9wYXJlbnRfMCA9IEJsb2NrCiAgICBsb2NhbCBfYmFzZV8wID0gewogICAgICBfX3Rvc3RyaW5nID0gZnVuY3Rpb24oc2VsZikKICAgICAgICByZXR1cm4gIlJvb3RCbG9jazw+IgogICAgICBlbmQsCiAgICAgIHJvb3Rfc3RtcyA9IGZ1bmN0aW9uKHNlbGYsIHN0bXMpCiAgICAgICAgaWYgbm90IChzZWxmLm9wdGlvbnMuaW1wbGljaXRseV9yZXR1cm5fcm9vdCA9PSBmYWxzZSkgdGhlbgogICAgICAgICAgc3RtcyA9IHRyYW5zZm9ybS5TdGF0ZW1lbnQudHJhbnNmb3JtZXJzLnJvb3Rfc3RtcyhzZWxmLCBzdG1zKQogICAgICAgIGVuZAogICAgICAgIHJldHVybiBzZWxmOnN0bXMoc3RtcykKICAgICAgZW5kLAogICAgICByZW5kZXIgPSBmdW5jdGlvbihzZWxmKQogICAgICAgIGxvY2FsIGJ1ZmZlciA9IHNlbGYuX2xpbmVzOmZsYXR0ZW4oKQogICAgICAgIGlmIGJ1ZmZlclsjYnVmZmVyXSA9PSAiXG4iIHRoZW4KICAgICAgICAgIGJ1ZmZlclsjYnVmZmVyXSA9IG5pbAogICAgICAgIGVuZAogICAgICAgIHJldHVybiB0YWJsZS5jb25jYXQoYnVmZmVyKQogICAgICBlbmQKICAgIH0KICAgIF9iYXNlXzAuX19pbmRleCA9IF9iYXNlXzAKICAgIHNldG1ldGF0YWJsZShfYmFzZV8wLCBfcGFyZW50XzAuX19iYXNlKQogICAgX2NsYXNzXzAgPSBzZXRtZXRhdGFibGUoewogICAgICBfX2luaXQgPSBmdW5jdGlvbihzZWxmLCBvcHRpb25zKQogICAgICAgIHNlbGYub3B0aW9ucyA9IG9wdGlvbnMKICAgICAgICBzZWxmLnJvb3QgPSBzZWxmCiAgICAgICAgcmV0dXJuIF9jbGFzc18wLl9fcGFyZW50Ll9faW5pdChzZWxmKQogICAgICBlbmQsCiAgICAgIF9fYmFzZSA9IF9iYXNlXzAsCiAgICAgIF9fbmFtZSA9ICJSb290QmxvY2siLAogICAgICBfX3BhcmVudCA9IF9wYXJlbnRfMAogICAgfSwgewogICAgICBfX2luZGV4ID0gZnVuY3Rpb24oY2xzLCBuYW1lKQogICAgICAgIGxvY2FsIHZhbCA9IHJhd2dldChfYmFzZV8wLCBuYW1lKQogICAgICAgIGlmIHZhbCA9PSBuaWwgdGhlbgogICAgICAgICAgbG9jYWwgcGFyZW50ID0gcmF3Z2V0KGNscywgIl9fcGFyZW50IikKICAgICAgICAgIGlmIHBhcmVudCB0aGVuCiAgICAgICAgICAgIHJldHVybiBwYXJlbnRbbmFtZV0KICAgICAgICAgIGVuZAogICAgICAgIGVsc2UKICAgICAgICAgIHJldHVybiB2YWwKICAgICAgICBlbmQKICAgICAgZW5kLAogICAgICBfX2NhbGwgPSBmdW5jdGlvbihjbHMsIC4uLikKICAgICAgICBsb2NhbCBfc2VsZl8wID0gc2V0bWV0YXRhYmxlKHt9LCBfYmFzZV8wKQogICAgICAgIGNscy5fX2luaXQoX3NlbGZfMCwgLi4uKQogICAgICAgIHJldHVybiBfc2VsZl8wCiAgICAgIGVuZAogICAgfSkKICAgIF9iYXNlXzAuX19jbGFzcyA9IF9jbGFzc18wCiAgICBpZiBfcGFyZW50XzAuX19pbmhlcml0ZWQgdGhlbgogICAgICBfcGFyZW50XzAuX19pbmhlcml0ZWQoX3BhcmVudF8wLCBfY2xhc3NfMCkKICAgIGVuZAogICAgUm9vdEJsb2NrID0gX2NsYXNzXzAKICBlbmQKICBsb2NhbCBmb3JtYXRfZXJyb3IKICBmb3JtYXRfZXJyb3IgPSBmdW5jdGlvbihtc2csIHBvcywgZmlsZV9zdHIpCiAgICBsb2NhbCBsaW5lX21lc3NhZ2UKICAgIGlmIHBvcyB0aGVuCiAgICAgIGxvY2FsIGxpbmUgPSBwb3NfdG9fbGluZShmaWxlX3N0ciwgcG9zKQogICAgICBsb2NhbCBsaW5lX3N0cgogICAgICBsaW5lX3N0ciwgbGluZSA9IGdldF9jbG9zZXN0X2xpbmUoZmlsZV9zdHIsIGxpbmUpCiAgICAgIGxpbmVfc3RyID0gbGluZV9zdHIgb3IgIiIKICAgICAgbGluZV9tZXNzYWdlID0gKCIgWyVkXSA+PiAgICAlcyIpOmZvcm1hdChsaW5lLCB0cmltKGxpbmVfc3RyKSkKICAgIGVuZAogICAgcmV0dXJuIGNvbmNhdCh7CiAgICAgICJDb21waWxlIGVycm9yOiAiIC4uIG1zZywKICAgICAgbGluZV9tZXNzYWdlCiAgICB9LCAiXG4iKQogIGVuZAogIGxvY2FsIHZhbHVlCiAgdmFsdWUgPSBmdW5jdGlvbih2YWx1ZSkKICAgIGxvY2FsIG91dCA9IG5pbAogICAgZG8KICAgICAgbG9jYWwgX3dpdGhfMCA9IFJvb3RCbG9jaygpCiAgICAgIF93aXRoXzA6YWRkKF93aXRoXzA6dmFsdWUodmFsdWUpKQogICAgICBvdXQgPSBfd2l0aF8wOnJlbmRlcigpCiAgICBlbmQKICAgIHJldHVybiBvdXQKICBlbmQKICBsb2NhbCB0cmVlCiAgdHJlZSA9IGZ1bmN0aW9uKHRyZWUsIG9wdGlvbnMpCiAgICBpZiBvcHRpb25zID09IG5pbCB0aGVuCiAgICAgIG9wdGlvbnMgPSB7IH0KICAgIGVuZAogICAgYXNzZXJ0KHRyZWUsICJtaXNzaW5nIHRyZWUiKQogICAgbG9jYWwgc2NvcGUgPSAob3B0aW9ucy5zY29wZSBvciBSb290QmxvY2spKG9wdGlvbnMpCiAgICBsb2NhbCBydW5uZXIgPSBjb3JvdXRpbmUuY3JlYXRlKGZ1bmN0aW9uKCkKICAgICAgcmV0dXJuIHNjb3BlOnJvb3Rfc3Rtcyh0cmVlKQogICAgZW5kKQogICAgbG9jYWwgc3VjY2VzcywgZXJyID0gY29yb3V0aW5lLnJlc3VtZShydW5uZXIpCiAgICBpZiBub3QgKHN1Y2Nlc3MpIHRoZW4KICAgICAgbG9jYWwgZXJyb3JfbXNnLCBlcnJvcl9wb3MKICAgICAgaWYgdHlwZShlcnIpID09ICJ0YWJsZSIgdGhlbgogICAgICAgIGxvY2FsIF9leHBfMCA9IGVyclsxXQogICAgICAgIGlmICJ1c2VyLWVycm9yIiA9PSBfZXhwXzAgb3IgImNvbXBpbGUtZXJyb3IiID09IF9leHBfMCB0aGVuCiAgICAgICAgICBlcnJvcl9tc2csIGVycm9yX3BvcyA9IHVucGFjayhlcnIsIDIpCiAgICAgICAgZWxzZQogICAgICAgICAgZXJyb3JfbXNnLCBlcnJvcl9wb3MgPSBlcnJvcigiVW5rbm93biBlcnJvciB0aHJvd24iLCB1dGlsLmR1bXAoZXJyb3JfbXNnKSkKICAgICAgICBlbmQKICAgICAgZWxzZQogICAgICAgIGVycm9yX21zZywgZXJyb3JfcG9zID0gY29uY2F0KHsKICAgICAgICAgIGVyciwKICAgICAgICAgIGRlYnVnLnRyYWNlYmFjayhydW5uZXIpCiAgICAgICAgfSwgIlxuIikKICAgICAgZW5kCiAgICAgIHJldHVybiBuaWwsIGVycm9yX21zZywgZXJyb3JfcG9zIG9yIHNjb3BlLmxhc3RfcG9zCiAgICBlbmQKICAgIGxvY2FsIGx1YV9jb2RlID0gc2NvcGU6cmVuZGVyKCkKICAgIGxvY2FsIHBvc21hcCA9IHNjb3BlLl9saW5lczpmbGF0dGVuX3Bvc21hcCgpCiAgICByZXR1cm4gbHVhX2NvZGUsIHBvc21hcAogIGVuZAogIGRvCiAgICBsb2NhbCBkYXRhID0gcmVxdWlyZSgibW9vbnNjcmlwdC5kYXRhIikKICAgIGZvciBuYW1lLCBjbHMgaW4gcGFpcnMoewogICAgICBMaW5lID0gTGluZSwKICAgICAgTGluZXMgPSBMaW5lcywKICAgICAgRGVsYXllZExpbmUgPSBEZWxheWVkTGluZQogICAgfSkgZG8KICAgICAgZGF0YVtuYW1lXSA9IGNscwogICAgZW5kCiAgZW5kCiAgcmV0dXJuIHsKICAgIHRyZWUgPSB0cmVlLAogICAgdmFsdWUgPSB2YWx1ZSwKICAgIGZvcm1hdF9lcnJvciA9IGZvcm1hdF9lcnJvciwKICAgIEJsb2NrID0gQmxvY2ssCiAgICBSb290QmxvY2sgPSBSb290QmxvY2sKICB9CiAgCmVuZApwYWNrYWdlLnByZWxvYWRbJ21vb24uYWxsJ10gPSBmdW5jdGlvbigpCiAgbG9jYWwgbW9vbiA9IHJlcXVpcmUoIm1vb24iKQogIGZvciBrLCB2IGluIHBhaXJzKG1vb24pIGRvCiAgICBfR1trXSA9IHYKICBlbmQKICByZXR1cm4gbW9vbgogIAplbmQKcGFja2FnZS5wcmVsb2FkWydtb29uJ10gPSBmdW5jdGlvbigpCiAgbG9jYWwgbHVhID0gewogICAgZGVidWcgPSBkZWJ1ZywKICAgIHR5cGUgPSB0eXBlCiAgfQogIGxvY2FsIGdldGZlbnYsIHNldGZlbnYsIGR1bXAKICBkbwogICAgbG9jYWwgX29ial8wID0gcmVxdWlyZSgibW9vbnNjcmlwdC51dGlsIikKICAgIGdldGZlbnYsIHNldGZlbnYsIGR1bXAgPSBfb2JqXzAuZ2V0ZmVudiwgX29ial8wLnNldGZlbnYsIF9vYmpfMC5kdW1wCiAgZW5kCiAgbG9jYWwgcCwgaXNfb2JqZWN0LCB0eXBlLCBkZWJ1ZywgcnVuX3dpdGhfc2NvcGUsIGJpbmRfbWV0aG9kcywgZGVmYXVsdGJsLCBleHRlbmQsIGNvcHksIG1peGluLCBtaXhpbl9vYmplY3QsIG1peGluX3RhYmxlLCBmb2xkCiAgcCA9IGZ1bmN0aW9uKC4uLikKICAgIHJldHVybiBwcmludChkdW1wKC4uLikpCiAgZW5kCiAgaXNfb2JqZWN0ID0gZnVuY3Rpb24odmFsdWUpCiAgICByZXR1cm4gbHVhLnR5cGUodmFsdWUpID09ICJ0YWJsZSIgYW5kIHZhbHVlLl9fY2xhc3MKICBlbmQKICB0eXBlID0gZnVuY3Rpb24odmFsdWUpCiAgICBsb2NhbCBiYXNlX3R5cGUgPSBsdWEudHlwZSh2YWx1ZSkKICAgIGlmIGJhc2VfdHlwZSA9PSAidGFibGUiIHRoZW4KICAgICAgbG9jYWwgY2xzID0gdmFsdWUuX19jbGFzcwogICAgICBpZiBjbHMgdGhlbgogICAgICAgIHJldHVybiBjbHMKICAgICAgZW5kCiAgICBlbmQKICAgIHJldHVybiBiYXNlX3R5cGUKICBlbmQKICBkZWJ1ZyA9IHNldG1ldGF0YWJsZSh7CiAgICB1cHZhbHVlID0gZnVuY3Rpb24oZm4sIGssIHYpCiAgICAgIGxvY2FsIHVwdmFsdWVzID0geyB9CiAgICAgIGxvY2FsIGkgPSAxCiAgICAgIHdoaWxlIHRydWUgZG8KICAgICAgICBsb2NhbCBuYW1lID0gbHVhLmRlYnVnLmdldHVwdmFsdWUoZm4sIGkpCiAgICAgICAgaWYgbmFtZSA9PSBuaWwgdGhlbgogICAgICAgICAgYnJlYWsKICAgICAgICBlbmQKICAgICAgICB1cHZhbHVlc1tuYW1lXSA9IGkKICAgICAgICBpID0gaSArIDEKICAgICAgZW5kCiAgICAgIGlmIG5vdCB1cHZhbHVlc1trXSB0aGVuCiAgICAgICAgZXJyb3IoIkZhaWxlZCB0byBmaW5kIHVwdmFsdWU6ICIgLi4gdG9zdHJpbmcoaykpCiAgICAgIGVuZAogICAgICBpZiBub3QgdiB0aGVuCiAgICAgICAgbG9jYWwgXywgdmFsdWUgPSBsdWEuZGVidWcuZ2V0dXB2YWx1ZShmbiwgdXB2YWx1ZXNba10pCiAgICAgICAgcmV0dXJuIHZhbHVlCiAgICAgIGVsc2UKICAgICAgICByZXR1cm4gbHVhLmRlYnVnLnNldHVwdmFsdWUoZm4sIHVwdmFsdWVzW2tdLCB2KQogICAgICBlbmQKICAgIGVuZAogIH0sIHsKICAgIF9faW5kZXggPSBsdWEuZGVidWcKICB9KQogIHJ1bl93aXRoX3Njb3BlID0gZnVuY3Rpb24oZm4sIHNjb3BlLCAuLi4pCiAgICBsb2NhbCBvbGRfZW52ID0gZ2V0ZmVudihmbikKICAgIGxvY2FsIGVudiA9IHNldG1ldGF0YWJsZSh7IH0sIHsKICAgICAgX19pbmRleCA9IGZ1bmN0aW9uKHNlbGYsIG5hbWUpCiAgICAgICAgbG9jYWwgdmFsID0gc2NvcGVbbmFtZV0KICAgICAgICBpZiB2YWwgfj0gbmlsIHRoZW4KICAgICAgICAgIHJldHVybiB2YWwKICAgICAgICBlbHNlCiAgICAgICAgICByZXR1cm4gb2xkX2VudltuYW1lXQogICAgICAgIGVuZAogICAgICBlbmQKICAgIH0pCiAgICBzZXRmZW52KGZuLCBlbnYpCiAgICByZXR1cm4gZm4oLi4uKQogIGVuZAogIGJpbmRfbWV0aG9kcyA9IGZ1bmN0aW9uKG9iaikKICAgIHJldHVybiBzZXRtZXRhdGFibGUoeyB9LCB7CiAgICAgIF9faW5kZXggPSBmdW5jdGlvbihzZWxmLCBuYW1lKQogICAgICAgIGxvY2FsIHZhbCA9IG9ialtuYW1lXQogICAgICAgIGlmIHZhbCBhbmQgbHVhLnR5cGUodmFsKSA9PSAiZnVuY3Rpb24iIHRoZW4KICAgICAgICAgIGxvY2FsIGJvdW5kCiAgICAgICAgICBib3VuZCA9IGZ1bmN0aW9uKC4uLikKICAgICAgICAgICAgcmV0dXJuIHZhbChvYmosIC4uLikKICAgICAgICAgIGVuZAogICAgICAgICAgc2VsZltuYW1lXSA9IGJvdW5kCiAgICAgICAgICByZXR1cm4gYm91bmQKICAgICAgICBlbHNlCiAgICAgICAgICByZXR1cm4gdmFsCiAgICAgICAgZW5kCiAgICAgIGVuZAogICAgfSkKICBlbmQKICBkZWZhdWx0YmwgPSBmdW5jdGlvbih0LCBmbikKICAgIGlmIG5vdCBmbiB0aGVuCiAgICAgIGZuID0gdAogICAgICB0ID0geyB9CiAgICBlbmQKICAgIHJldHVybiBzZXRtZXRhdGFibGUodCwgewogICAgICBfX2luZGV4ID0gZnVuY3Rpb24oc2VsZiwgbmFtZSkKICAgICAgICBsb2NhbCB2YWwgPSBmbihzZWxmLCBuYW1lKQogICAgICAgIHJhd3NldChzZWxmLCBuYW1lLCB2YWwpCiAgICAgICAgcmV0dXJuIHZhbAogICAgICBlbmQKICAgIH0pCiAgZW5kCiAgZXh0ZW5kID0gZnVuY3Rpb24oLi4uKQogICAgbG9jYWwgdGJscyA9IHsKICAgICAgLi4uCiAgICB9CiAgICBpZiAjdGJscyA8IDIgdGhlbgogICAgICByZXR1cm4gCiAgICBlbmQKICAgIGZvciBpID0gMSwgI3RibHMgLSAxIGRvCiAgICAgIGxvY2FsIGEgPSB0YmxzW2ldCiAgICAgIGxvY2FsIGIgPSB0YmxzW2kgKyAxXQogICAgICBzZXRtZXRhdGFibGUoYSwgewogICAgICAgIF9faW5kZXggPSBiCiAgICAgIH0pCiAgICBlbmQKICAgIHJldHVybiB0YmxzWzFdCiAgZW5kCiAgY29weSA9IGZ1bmN0aW9uKHNlbGYpCiAgICBsb2NhbCBfdGJsXzAgPSB7IH0KICAgIGZvciBrZXksIHZhbCBpbiBwYWlycyhzZWxmKSBkbwogICAgICBfdGJsXzBba2V5XSA9IHZhbAogICAgZW5kCiAgICByZXR1cm4gX3RibF8wCiAgZW5kCiAgbWl4aW4gPSBmdW5jdGlvbihzZWxmLCBjbHMsIC4uLikKICAgIGZvciBrZXksIHZhbCBpbiBwYWlycyhjbHMuX19iYXNlKSBkbwogICAgICBpZiBub3Qga2V5Om1hdGNoKCJeX18iKSB0aGVuCiAgICAgICAgc2VsZltrZXldID0gdmFsCiAgICAgIGVuZAogICAgZW5kCiAgICByZXR1cm4gY2xzLl9faW5pdChzZWxmLCAuLi4pCiAgZW5kCiAgbWl4aW5fb2JqZWN0ID0gZnVuY3Rpb24oc2VsZiwgb2JqZWN0LCBtZXRob2RzKQogICAgZm9yIF9pbmRleF8wID0gMSwgI21ldGhvZHMgZG8KICAgICAgbG9jYWwgbmFtZSA9IG1ldGhvZHNbX2luZGV4XzBdCiAgICAgIHNlbGZbbmFtZV0gPSBmdW5jdGlvbihwYXJlbnQsIC4uLikKICAgICAgICByZXR1cm4gb2JqZWN0W25hbWVdKG9iamVjdCwgLi4uKQogICAgICBlbmQKICAgIGVuZAogIGVuZAogIG1peGluX3RhYmxlID0gZnVuY3Rpb24oc2VsZiwgdGJsLCBrZXlzKQogICAgaWYga2V5cyB0aGVuCiAgICAgIGZvciBfaW5kZXhfMCA9IDEsICNrZXlzIGRvCiAgICAgICAgbG9jYWwga2V5ID0ga2V5c1tfaW5kZXhfMF0KICAgICAgICBzZWxmW2tleV0gPSB0Ymxba2V5XQogICAgICBlbmQKICAgIGVsc2UKICAgICAgZm9yIGtleSwgdmFsIGluIHBhaXJzKHRibCkgZG8KICAgICAgICBzZWxmW2tleV0gPSB2YWwKICAgICAgZW5kCiAgICBlbmQKICBlbmQKICBmb2xkID0gZnVuY3Rpb24oaXRlbXMsIGZuKQogICAgbG9jYWwgbGVuID0gI2l0ZW1zCiAgICBpZiBsZW4gPiAxIHRoZW4KICAgICAgbG9jYWwgYWNjdW0gPSBmbihpdGVtc1sxXSwgaXRlbXNbMl0pCiAgICAgIGZvciBpID0gMywgbGVuIGRvCiAgICAgICAgYWNjdW0gPSBmbihhY2N1bSwgaXRlbXNbaV0pCiAgICAgIGVuZAogICAgICByZXR1cm4gYWNjdW0KICAgIGVsc2UKICAgICAgcmV0dXJuIGl0ZW1zWzFdCiAgICBlbmQKICBlbmQKICByZXR1cm4gewogICAgZHVtcCA9IGR1bXAsCiAgICBwID0gcCwKICAgIGlzX29iamVjdCA9IGlzX29iamVjdCwKICAgIHR5cGUgPSB0eXBlLAogICAgZGVidWcgPSBkZWJ1ZywKICAgIHJ1bl93aXRoX3Njb3BlID0gcnVuX3dpdGhfc2NvcGUsCiAgICBiaW5kX21ldGhvZHMgPSBiaW5kX21ldGhvZHMsCiAgICBkZWZhdWx0YmwgPSBkZWZhdWx0YmwsCiAgICBleHRlbmQgPSBleHRlbmQsCiAgICBjb3B5ID0gY29weSwKICAgIG1peGluID0gbWl4aW4sCiAgICBtaXhpbl9vYmplY3QgPSBtaXhpbl9vYmplY3QsCiAgICBtaXhpbl90YWJsZSA9IG1peGluX3RhYmxlLAogICAgZm9sZCA9IGZvbGQKICB9CiAgCmVuZApwYWNrYWdlLnByZWxvYWRbIm1vb25zY3JpcHQiXSgpCi0tW1sAXV0AW1sALS0AVElDAHNjYW5saW5lAE9WUgBjbHMAcGl4AHJlY3RiAHNwcgBidG4AYnRucABzZngAbWFwAG1nZXQAbXNldABwZWVrAHBva2UAcGVlazQAcG9rZTQAbWVtY3B5AG1lbXNldAB0cmFjZQBwbWVtAHRpbWUAZXhpdABmb250AG1vdXNlAGNpcmMAY2lyY2IAdHJpAHRleHRyaQBjbGlwAG11c2ljAHN5bmMAcmVzZXQAa2V5cABmdW5jdGlvbiAAJ2Z1bmN0aW9uIFRJQygpLi4uJyBpc24ndCBmb3VuZCA6KABjb3JvdXRpbmUAbWF0aABfVElDODAAdW5rbm93biBrZXlib2FyZCBjb2RlCgBpbnZhbGlkIHBhcmFtcywga2V5cCBbIGNvZGUgWyBob2xkIHBlcmlvZCBdIF0KAGludmFsaWQgcGFyYW1zLCBrZXkgW2NvZGVdCgBzeW5jKCkgZXJyb3IsIGludmFsaWQgYmFuawBpbnZhbGlkIHBhcmFtcywgdXNlIG11c2ljKHRyYWNrKQoAaW52YWxpZCBwYXJhbWV0ZXJzLCB1c2UgY2xpcCh4LHksdyxoKSBvciBjbGlwKCkKAGludmFsaWQgcGFyYW1ldGVycywgdGV4dHJpKHgxLHkxLHgyLHkyLHgzLHkzLHUxLHYxLHUyLHYyLHUzLHYzLFt1c2VfbWFwPWZhbHNlXSxbY2hyb21hPW9mZl0pCgBpbnZhbGlkIHBhcmFtZXRlcnMsIHRyaSh4MSx5MSx4Mix5Mix4Myx5Myxjb2xvcikKAGludmFsaWQgcGFyYW1ldGVycywgY2lyY2IoeCx5LHJhZGl1cyxjb2xvcikKAGludmFsaWQgcGFyYW1ldGVycywgY2lyYyh4LHkscmFkaXVzLGNvbG9yKQoAaW52YWxpZCBwZXJzaXN0ZW50IG1lbW9yeSBpbmRleAoAaW52YWxpZCBwYXJhbXMsIHBtZW0oaW5kZXggW3ZhbF0pIC0+IHZhbAoAaW52YWxpZCBwYXJhbXMsIG1lbXNldChkZXN0LHZhbCxzaXplKQoAaW52YWxpZCBwYXJhbXMsIG1lbWNweShkZXN0LHNyYyxzaXplKQoAaW52YWxpZCBwYXJhbWV0ZXJzLCBwb2tlNChhZGRyLHZhbHVlKQoAaW52YWxpZCBwYXJhbWV0ZXJzLCBwZWVrNChhZGRyKQoAaW52YWxpZCBwYXJhbXMsIG1nZXQoeCx5KQoAaW52YWxpZCBub3RlLCBzaG91bGQgYmUgbGlrZSBDIzQKAHVua25vd24gY2hhbm5lbAoAdW5rbm93biBzZnggaW5kZXgKAGludmFsaWQgc2Z4IHBhcmFtcwoAaW52YWxpZCBwYXJhbXMsIGJ0bnAgWyBpZCBbIGhvbGQgcGVyaW9kIF0gXQoAaW52YWxpZCBwYXJhbXMsIGJ0biBbIGlkIF0KAGludmFsaWQgcGFyYW1ldGVycywgcmVjdGIoeCx5LHcsaCxjb2xvcikKAGludmFsaWQgcGFyYW1ldGVycywgcmVjdCh4LHksdyxoLGNvbG9yKQoAaW52YWxpZCBwYXJhbWV0ZXJzLCBsaW5lKHgwLHkwLHgxLHkxLGNvbG9yKQoAaW52YWxpZCBwYXJhbWV0ZXJzLCBwaXgoeCB5IFtjb2xvcl0pCgBzY3JpcHQgZXhlY3V0aW9uIHdhcyBpbnRlcnJ1cHRlZAB1bmtub3duIG1ldGhvZDogImxvYWRmaWxlIgoAdW5rbm93biBtZXRob2Q6ICJkb2ZpbGUiCgBjb250aW51ZQB1bmxlc3MAc3dpdGNoAHdoZW4Ac3VwZXIAdHJ5AGNhdGNoAHdpdGgAZXhwb3J0AGltcG9ydABmcm9tAGNsYXNzAGV4dGVuZHMAbmV3AD0tPgBwYWNrYWdlAGxwZWcAbW9vbnNjcmlwdC5sdWEAZmFpbGVkIHRvIGxvYWQgbW9vbnNjcmlwdC5sdWEAbG9jYWwgZm4sIGVyciA9IHJlcXVpcmUoJ21vb25zY3JpcHQuYmFzZScpLmxvYWRzdHJpbmcoLi4uKSBpZiBub3QgZm4gdGhlbiByZXR1cm4gZXJyIGVuZCByZXR1cm4gZm4oKQBleGVjdXRlX21vb25zY3JpcHQAZmFpbGVkIHRvIGxvYWQgbW9vbnNjcmlwdCBjb21waWxlcgD5sLBQbwcvDy/+C8W/AEgCD3NCEzIHAiIC8EL0Mve5+WLxYwjxfzrwti8f8b8VEvUyDwEYGyMPAgLw7w/0nA8K8RoVBvBlCgQPCfCfOfBSfzjyZA8ECJ8B8AVzE/BiYgQ0DwIOEi8AHwVVE/BiYhISHxEyDwUvAoIi8GJiEkQPBA8BHwkMcxPwYmISRA8QEi8BDwMCVCI0EgIUFCS/CA8mciLwcvAEDwwmHxAFciLwcpJEDxICHwEfBHIi8ZMPAgYpLwpW8CTwgoIDbyzyAh1vLBIDEgMHMmIiAgMSMhoDQg8HPxIPMXLxTw1PZfG/Bg8CVTQEGCXNDwPxYgYD8bL/4D8jNiAjPxkjPxEjNiAjPi8pIz8z8X8A8C9GNU/+FePwEvCm87Sowj8A8C8A8C8Awi8B8k8VBQ819IlD8SIG82vw/yPw40zxxfCvKPB68l9ED0/x/wNvKfDuG/HPDPFPGyvxQ49SMjQa+w8y/+AINT8WNTcgICAvDz8lJiBCJkM1XGIm9mDg8Cz1cFA5IERwICAjKjNkUPA/Gf/pa/Hy8fL3VzQd8WIGA/KIDwLwemJiYmJiYmJvQg/+DJLwuIQ0X0ZyL0ojbxlPTvA/C/J/AP/g9P/wAIqPPP/wBAyPHP/jf/NfHj/9TwCx8G8f8C8PP0DxmD9XPxQn8xoiIy8H8P8k8A8i8wVAIN8Mvwfwvw2PH/Dg8CQptC8Z8JIn8G8HQE8iIEE0MCDwojqC1TU1piYvGym/Y/D//wAalt8HXyH/8AD/j/4GA/WvGG1GApLCQgISEvXPE//gXfBPMD8m8av2ZC938W8KfwrPSUU1NTLxWy8KLwMhLj3xT2vzfyX/3w1PIfIfEPAvC28Wvw4/FFck8c+O8E8UXxRfGJ8k+O/+Aprwa3+KUwLxwhQD8HvwevD/M/AyG/Br8K848ocfMg8BMiLwvx7w1PDfFXLwzw3ya/Br8D7wL2DznynyPvI//iBPJfPfHfEvCfDPFPG/E0DfIPAD8HAg8V8CLwn0ZiAjLimPH/GHMT8GJiEkQPBA1PkPJfBD8n8g8GEg+q8f8bPxbyDwYPLfG/R/Cv/gevMPEQ/+C08p/5gvFfAw8j8O/+Jk/+KM9Y9f8D+0/+mw/+Mh/+7F/+E5//ABCt/+Erjw/2Pw7wTyDwI/EfBW8D/+Jk81wPNM8yDxH/8ABt/wX/4eX/8AFAEf/q8vW2xIif/wAGWvRS83ITAxMysgJi8xIzcmLwwjJCBGL/4EY/CS8JLw8vCS8PLwkvDy8JLw8vCSf/7yj7Xy3zT/47Ay8LISAwKSMgIHBQICAiISAwICAgICEgMyYjIyApLwFiJC8B//AAA4//AJXJ8b/+8nz84//wAFdP/wAYUv/hEA//AAXhL/6WPxMz/+1yDwuPAC//AGWfn/8ASUTyX/4MAJD3hP/wAPHvXw/+Hz9g/+AHT/vx0gISEg86ryLw9w9XY1MSM58JDxDwv02vAZ8TjxQygiJPHS9q0vEfKCLwImsTnwMvKgJjEyoLE58DLyoCRRMkDwa0DC8qAnIiLwYTnwMvKgJjEykbE58EDy1EIjoPAJ8CPyxiIjgcE58DLyoCYiI4HBOfAy8sYiI6CxOfBB84BVICd5MfLwNtcp9JA1IcU58wF5wCAgUfI/BCFqLxSg9W8EKdNSIjZD6y7/4bMv/ipi8PLw8fEB8y8QoDnxMjn10fFA9otbufcp8vTyuS8NOnnwjfNE8h8ByfA40vEMOfHt8i8EmXn2gi8FUFJB+48mZP/hAB8jHwUPbcUEv/6vIvfw9S8Q/+EeX1sf/wBkeZ83BZ8SH0If/gBAQFDwlPSh8k8CuX8C8Anw5/C88ePyHfAZwLnyHdCROfEy8kAiMWEg8bRh/echOf/wA+GA/+HV8A8C8AQfCi+ynxcP/hsQ/UD4dP/gGZ/+RLIhY/GiUPlx/+QNLyfvEZ8BPx+vJ5cvFtKfJQ0vItokn0S3D5K2lz8qAmMTKgsTZE+y8CqfSPBNn8djjw0fRPAfAZ9DyZ9F5Z/+Can/4jlyfwKfKvBi3/8APJ2feE8tbwuf/i6/HvAj//ADv+H/8AA7pEWXNvED+GL/5H3yL/4PTydfIpDwAPCELv/kRGLwE2IST/55lvX2af/wwGmv4ACQA4ADALgHwAbAcCPyx+BASsAxIICigGxBAb2B/oMDrQOIBgdiByJEDwwOjEgeaBxwIEMAQQQAigCABAFYQUxTCfwJ+AYcgwQhBD4APhAgfEB8YDD5APlAgfMB84ED6APpAYfYB9oED7gP3QIfch/ICD7sP7QIfeB/4BD70P9QIffB/6BD9gP3AIf0B/YBD/AP9AIhcCFgIEmgSWxosMCwAXloAIUCarcBOgof6D/kJqIBAQEAMAJmAmQMBOgE5EAKWApRcBegF5BgMGAwQIBoQGgBgNoA2YIBzgHNEAO+A7wkB+QH4KARGBEQkCRwJGCgbiBuAID2QPYGAjCCMBEEiwSKNgmECYIcE0QTQYDwCPAEseoR6gYD6iPrIQsaCxnBlkCWQDIs7CzrBUyDTIBemgaaAHU5HTkQenM6cyP071TvIKnf6d+C08jTyAKnl6eWFU9rT2gIcBrQGsBAOKA4gMBxgHEBgPkA+IICgAGmBAfwB+4IscyxyBBgMQAw4IBuQG4BATNT1QIAMCPAI7BATSAywItJxDHBfzAC1A5wA/wF4ATEASQF/AFMBgAJDAZIBkQGVAfYBmQGYAZoCPQGeAiABqAGnAb8B9wHdAY4B8wHxAlAsbwJRLG0CUixwAlMBgQJUAYYCWQGPAlsBkAJcp6sCYAGTAmGnrAJjAZQCZaeNAmgBlwJrLGICbKetAnEsbgJyAZ0CdQGfAn0sZAKHp7ECiAGuAokCRAKMAkUCkgG3Ap2nsgKep7ADRQOZA3cDdgOsA4YDwgOjA8wDjAPQA5ID0QOYA9UDpgPWA6AD1wPPA/ADmgPxA6ED8gP5A/MDfwP1A5UEzwTAHIAEEhyBBBQcggQeHIUEIhyGBCochwRiHIimSh15p30dfSxjHpseYB++A5kf5R/sIU4hMiGEIYMsYSxgLGUCOixmAj4s8yzyp4yni6tTp7PMAb8AKYApgKTAV4AJwD4QAlAYYByGBzIGEAYCB2GB0oGEAYCCw8CmoKpD0tACQBmI9LwAqAYQPTEAK4GFD0zACyBhQ9NQAggV8PqEB0oGJj6lgdKBiYGAD6pgdKBiYGAj6tgdKBiYGhD8BD4QBzI/Aw+EgcyPwUPhQHMj8HD4WBzI/CQ+GAcyPwsPhoHMj8ND4cBzI/Dw+HgcyPxEPhAHMj8TD4SBzI/FQ+FAcyPxcPhYHMj8ZD4YBzI/Gw+GgcyPx0PhwHMj8fD4eBzI/IQ+UAcyPyMPlIHMj8lD5UBzI/Jw+VgcyPykPlgHMj8rD5aBzI/LQ+XAcyPy8Pl4HMj8xD5QBzI/Mw+UgcyPzUPlQHMj83D5WBzI/OQ+WAcyPzsPloHMj89D5cBzI/Pw+XgcyP0EPtAHMj9DD7SBzI/RQ+1AcyP0cPtYHMj9JD7YBzI/Sw+2gcyP00PtwHMj9PD7eBzI/UQ+0AcyP1MPtIHMj9VD7UBzI/Vw+1gcyP1kPtgHMj9bD7aBzI/XQ+3AcyP18Pt4HMj9lD90BzI/ZwHIgcyP2kBwwHMj9tAciBoQ/b4HIgaEBzI/eQHIgcyP4UP5QHMj+HAcuBzI/iQHEgcyP40By4GhD+PgcuBoQHMj+ZAcuBzI/pYHMgYQBgA/p4HMgYQBgI/rQHMgaEP6+BzIGEAaEP8WB0oGEAYAP8eB0oGEAYCP8kB0IGJj/NAdKBoQ/z4HSgYQBoQ/5Q/9AcyP+cB1IHMj/pAceBzI/7QHUgaEP++B1IGhAcyP/kB1IHM/YBACMAI32AwAjACT9gUAIwAmfYHgCMAIwAk/YJgCMAIwAmfYLACmAKn2DQApgCp9icCogKjfYpAqICmv2KwKiAp39i0CpwKjfYvAqICnoCYAwADgLgGwAfAcBiQJWBANiBRQIDiAOtBgccB5oIDkQOxIgdGB4YkD/QN7BggACKBAEEAQwQApiCsKYQoC0ATCdBVuFAT8BP4DD4QPgAgfGB8QDD5QPkAgfOB8wED6QPoAYfaB9gED8QPwAgfmB+QED9QP0AgfuB+wBD90PuAIfyB9yCD+wP6AIf2h92BD/QP8AIf6h96BD/wPvAIf+h98BELAQuBAktiTQNFgAWGC8sfgI/Bf5D/oJqMBAAEBMAJkAmYMBOQE6EAKUApZcBeQF6BgMEAwYIBoAGhBgNmA2gIBywHMEgO8A74kB8gHzBAPwA/JQCIgIjEgSMBI4UDcANxBAewB7IwEYARhIgkUCRZsEwQTCDgmgCaLAeAB4Blj1APULAfWR9RCFjOWNAMsgCyBZFnWWdgKmQKZBL00BTQI6nIqcjD05lTmZ+nead6BU79Tv4WnkKeRBU8tTy4qntKe1BDANMBQAIBrAGtBAOIA4wMBxQHGBAfuB/AIscixzBBgMOAxAIBuAG5BU9UBMwIAMBlgJpBAR2BHgIQxy0nBfvwF4AP8BgQJTAYYCVAGOAd0BjwJZAZACWwGRAZIBkwJgAZQCYwGXAmgBmAGZAZ0CcgGfAnUBpwGoAa4CiAG3ApIB8QHzAfYBlQH3Ab8CIAGeAjosZQI9AZoCPixmAkMBgAJEAokCRQKMA3YDdwN/A/MDhgOsA4wDzAPPA9cD9AO4A/kD8gTABM8engDfH7wfsx/MH8Mf7B/lH/wf8yEmA8khKgBrISsA5SEyIU4hgyGELGAsYSxiAmssYx19LGQCfSxtAlEsbgJxLG8CUCxwAlIs8izzp30deaeLp4ynjQJlp6sCXKesAmGnrQJsp7ACnqexAoensgKdp7OrUwICYQA0gYOBcA4BMB5P////////////////9////////////n9wAQ/+P//z//////////Afz////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////jwf///5P///////////////////////////////////////////////////////////////////////////////////////////////////////////////tidWZmZXIAZHVrX2FwaV9idWZmZXIuYwB3cm9uZyBidWZmZXIgdHlwZQBkdWtfaGJ1ZmZlcl9vcHMuYwBidWZmZXIgdG9vIGxvbmcAYWxsb2MgZmFpbGVkAGR1a19hcGlfY2FsbC5jAGR1a19hcGlfc3RhY2suYwBpbnZhbGlkIGNvdW50AGR1a19qc19jYWxsLmMAaW52YWxpZCB0aHJlYWQgc3RhdGUgKCVsZCkAaW52YWxpZCBDIGZ1bmN0aW9uIHJjAGR1a19ob2JqZWN0X3Byb3BzLmMAaW52YWxpZCBhcnJheSBsZW5ndGgAaW50ZXJuYWwgZXJyb3IAaW52YWxpZCBzdGFjayBpbmRleCAlbGQAMDEyMzQ1Njc4OWFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6dmFsc3RhY2sgbGltaXQAZHVrX2pzX29wcy5jAGNhbm5vdCBudW1iZXIgY29lcmNlIFN5bWJvbABjb2VyY2lvbiB0byBwcmltaXRpdmUgZmFpbGVkAHVuc3VwcG9ydGVkACVzIG5vdCBjYWxsYWJsZQAlcyBub3QgY29uc3RydWN0YWJsZQBvYmplY3QAIChsaW5lICVsZCkAc3RyaW5nIHRvbyBsb25nAGR1a19oZWFwX3N0cmluZ3RhYmxlLmMAY2Fubm90IHdyaXRlIHByb3BlcnR5ICVzIG9mICVzAHByb3h5IHJlamVjdGVkAHByb3RvdHlwZSBjaGFpbiBsaW1pdABub3QgZXh0ZW5zaWJsZQBub3Qgd3JpdGFibGUAbm90IGNvbmZpZ3VyYWJsZQBzZXR0ZXIgdW5kZWZpbmVkAGR1a19qc192YXIuYwBpZGVudGlmaWVyICclcycgdW5kZWZpbmVkAGludmFsaWQgYmFzZSB2YWx1ZQBkdWtfYXBpX3N0cmluZy5jAHJlc3VsdCB0b28gbG9uZwBpbnZhbGlkIHRyYXAgcmVzdWx0AHVuY2F1Z2h0OiAlcwBub25lAFtTeW1ib2wgACAADwQGBQMICgwODQkLBxsCHB0fIBAREhMUFRYXGBkaDw9bb2JqZWN0ICVzXQBbYnVmZmVyOiVsZF0AKCVzKQAAwODw+Pz+aGlkZGVuAHdlbGxrbm93bgBkdWtfanNfZXhlY3V0b3IuYwBkZWNsYXJhdGlvbiBmYWlsZWQAaW52YWxpZCBsdmFsdWUASU5WQUxJRCBvcGNvZGUgKCVsZCkAaW52YWxpZCBvcGNvZGUAZHVrX2JpX3Byb3h5LmMAZHVrX2hlYXBfbWVtb3J5LmMAY2Fubm90IGRlbGV0ZSBwcm9wZXJ0eSAlcyBvZiAlcwAlcyBub3QgY2FsbGFibGUgKHByb3BlcnR5ICVzIG9mICVzKQB1bmV4cGVjdGVkIHR5cGUAaW52YWxpZCBpbnN0YW5jZW9mIHJ2YWwAaW5zdGFuY2VvZiBydmFsIGhhcyBubyAucHJvdG90eXBlAGV4ZWN1dGlvbiB0aW1lb3V0AGR1a19hcGlfb2JqZWN0LmMAaW52YWxpZCBkZXNjcmlwdG9yAG5vdCBjYWxsYWJsZQBjYW5ub3Qgc3RyaW5nIGNvZXJjZSBTeW1ib2wAZnVuY3Rpb24gAGxpZ2h0XwBfJTA0eAAoKSB7IFtsaWdodGZ1bmMgY29kZV0gfQBjYWxsc3RhY2sgbGltaXQAaW52YWxpZCBsZW5ndGgAbm90IG9iamVjdCBjb2VyY2libGUAaW52YWxpZCBhcmdzAGNhbm5vdCByZWFkIHByb3BlcnR5ICVzIG9mICVzAGNhbm5vdCByZWFkIHN0cmljdCAnY2FsbGVyJwBkdWtfaGVhcF9zdHJpbmdjYWNoZS5jAEluZmluaXR5AEUsIx4bGRcWFBQUExMSEhERERAQEBAQDw8PDw8PDg4ODg4OZHVrX251bWNvbnYuYwBleHBvbmVudCB0b28gbGFyZ2UAZHVrX3VuaWNvZGVfc3VwcG9ydC5jAGVycm9yIChyYyAlbGQpAEMgY2FsbCBzdGFjayBkZXB0aCBsaW1pdABjYW5ub3QgcHVzaCBiZXlvbmQgYWxsb2NhdGVkIHN0YWNrACVzIHJlcXVpcmVkLCBmb3VuZCAlcyAoc3RhY2sgaW5kZXggJWxkKQBkdWtfdXRpbF9idWZ3cml0ZXIuYwBuYXRpdmVmdW5jdGlvbgBBQkNERUZHSElKS0xNTk9QUVJTVFVWV1hZWmFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6MDEyMzQ1Njc4OSsvZHVrX2FwaV9jb2RlYy5jAGJhc2U2NCBlbmNvZGUgZmFpbGVkAP////////////7+///+/////////////////////////v////////////8+////PzQ1Njc4OTo7PD3////9////AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBn///////8aGxwdHh8gISIjJCUmJygpKissLS4vMDEyM/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9iYXNlNjQgZGVjb2RlIGZhaWxlZAD///////////////////////////////////////////////////////////////8AAQIDBAUGBwgJ/////////woLDA0OD///////////////////////////////////CgsMDQ4P////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////aGV4IGRlY29kZSBmYWlsZWQAICAgICAgICAgIHsiX2J1ZiI6IgAoJXApAHsiX3B0ciI6IiVwIn0AeyJfcHRyIjoibnVsbCJ9AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAP////////////8AAAAAAAAAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAAAZHVrX2JpX2pzb24uYwBjeWNsaWMgaW5wdXQAanNvbiBlbmNvZGUgcmVjdXJzaW9uIGxpbWl0AICAgICAgICA4vTugObygICAgICAgICAgICAgICAgICAICGiIyQlJicoKSorLC0uLzAxMjM0NTY3ODk6Ozw9Pj9AQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVpb3F1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX6BgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYFudW1iZXIgb3V0c2lkZSByYW5nZQBpbnZhbGlkIGpzb24gKGF0IG9mZnNldCAlbGQpAAAAAAAAAAAAAAEBAAABAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAQABAQEBAQEBAQEBAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAanNvbiBkZWNvZGUgcmVjdXJzaW9uIGxpbWl0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAICEAIyQlJicoKSorLC0uLzAxMjM0NTY3ODk6Ozw9Pj9AQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVpbAF1eX2BhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX5/gIGCg4SFhoeIiYqLjI2Oj5CRkpOUlZaXmJmam5ydnp+goaKjpKWmp6ipqqusra6vsLGys7S1tre4ubq7vL2+v8DBwsPExcbHyMnKy8zNzs/Q0dLT1NXW19jZ2tvc3d7f4OHi4+Tl5ufo6err7O3u7/Dx8vP09fb3+Pn6+/z9/v9kdWtfYXBpX2NvbXBpbGUuYwBubyBzb3VyY2Vjb2RlAGR1a19qc19jb21waWxlci5jAGludmFsaWQgZ2V0dGVyL3NldHRlciBuYW1lAGZ1bmN0aW9uIG5hbWUgcmVxdWlyZWQAZXhwZWN0ZWQgaWRlbnRpZmllcgABIAAAAAAAAAAAAAAAAAAMDAAAACAAAAAAAAAAAAAAAAAAACAgIAAAAAAAAAAAAAAAACATIhIiEwADDAwMDAsLCwsODg8PDxAREQ0NDQoICQAABwYFAAQEBAQEBAQEBAQEBAQgICBwYXJzZSBlcnJvcgBkdWtfbGV4ZXIuYwBpbnZhbGlkIGVzY2FwZQB1bnRlcm1pbmF0ZWQgc3RyaW5nAHRva2VuIGxpbWl0AGludmFsaWQgdG9rZW4AaW52YWxpZCBudW1iZXIgbGl0ZXJhbAB1bnRlcm1pbmF0ZWQgcmVnZXhwAHVudGVybWluYXRlZCBjb21tZW50AGNvbXBpbGVyIHJlY3Vyc2lvbiBsaW1pdAB0ZW1wIGxpbWl0AHJlZ2lzdGVyIGxpbWl0AGludmFsaWQgYXJndW1lbnQgbmFtZQBieXRlY29kZSBsaW1pdABpbnZhbGlkIGZ1bmN0aW9uIG5hbWUAY29uc3QgbGltaXQAZnVuY3Rpb24gc3RhdGVtZW50IG5vdCBhbGxvd2VkAGVtcHR5IGV4cHJlc3Npb24gbm90IGFsbG93ZWQAaW52YWxpZCBmb3Igc3RhdGVtZW50AGludmFsaWQgbGFiZWwAaW52YWxpZCBicmVhay9jb250aW51ZSBsYWJlbABpbnZhbGlkIHJldHVybgB3aXRoIGluIHN0cmljdCBtb2RlAGludmFsaWQgc3dpdGNoIHN0YXRlbWVudABpbnZhbGlkIHRocm93AGludmFsaWQgdHJ5AHVzZSBzdHJpY3QAdXNlIGR1ayBub3RhaWwAdW50ZXJtaW5hdGVkIHN0YXRlbWVudAB0YXJnZXQAY2Fubm90IGRlbGV0ZSBpZGVudGlmaWVyAGludmFsaWQgbmV3LnRhcmdldABpbnZhbGlkIGV4cHJlc3Npb24AaW52YWxpZCBvYmplY3QgbGl0ZXJhbABpbnZhbGlkIGFycmF5IGxpdGVyYWwAKD86KQBkdWtfcmVnZXhwX2NvbXBpbGVyLmMAaW52YWxpZCByZWdleHAgZmxhZ3MAaW52YWxpZCBiYWNrcmVmZXJlbmNlKHMpAHJlZ2V4cCBjb21waWxlciByZWN1cnNpb24gbGltaXQAaW52YWxpZCByZWdleHAgZXNjYXBlAGludmFsaWQgcmVnZXhwIGdyb3VwAHF1YW50aWZpZXIgd2l0aG91dCBwcmVjZWRpbmcgYXRvbQBxdWFudGlmaWVyIHZhbHVlcyBpbnZhbGlkIChxbWluID4gcW1heCkAcXVhbnRpZmllciByZXF1aXJlcyB0b28gbWFueSBhdG9tIGNvcGllcwABCwRpbnZhbGlkIHJhbmdlAHVudGVybWluYXRlZCBjaGFyYWN0ZXIgY2xhc3MAdW5leHBlY3RlZCBjbG9zaW5nIHBhcmVudGhlc2lzAHVuZXhwZWN0ZWQgZW5kIG9mIHBhdHRlcm4AdW5leHBlY3RlZCB0b2tlbiBpbiByZWdleHAAaW52YWxpZCB2YXJpYWJsZSBkZWNsYXJhdGlvbgBmdW5jdGlvbiBsaW1pdABkdXBsaWNhdGUgbGFiZWwAc291cmNlIGRlY29kZSBmYWlsZWQATyjRkKhpBk42i1m5LDAuWngImowjZyNxwUkFNHC0aKaHNLwEYgwbkpxQ0x+Bc5ZANNxtGBJEnBgmQ3IkNwl3l4SMXRJxgJnJ1MnNAvgIxBjgaFKSKODBMHKoJZPENnscBGIMK5RDZ7HARiDEeUQ2exwSwMeQfARiDCuIbPR1uAjEGF8ohs9HW4CMQYVxDZ6elwEYgwvlENnp6XARiDDOFW4E9PS4CMQYZwq3AnranARiDBjLcECzccFPCNqbgyC4RtTcDQpSRPx7kNmSJuTPEgBkJUCy1AuhEWiiYArIwTmlQakQBWRRG0YSIArIRLkNdN3FuEBZOSnFDTHqBdCccVc3dpMUuzihplzd1EnS7OKGmXN3TMnLs4oaY0nUiIikGa6JOCBIiWUXNC0NIlYJT4hoyXKVYDSKhoyXS+Lpunh5Fic2U40FN0TsJKQDEOFzlkA0zaMCSJpTihpjSwwLlmcFJBTTRoyFQ0gx8aDjUcQ0qGonhPy3iGlQ1E8C+W6AflhfhW3t7e2X638u+XfLvrrOIbUC0D2+DBMiQRNRhGzkYQFrIQwgLWSJQPevCRObKcaCm4ZFkmTj4ueSM8DMSYzgkd1m8UTEnSJPj4um6eHk44qdrafF03bW0ibuSnFDTGm7qZOaSeHkIMEwGWRppnHIkyymAShPEpaGk42jAkirc5OIBEGCYCNAwiCoWTjQMId7kNmSJ9zkwRMSZdzjSXmnc4HEyCcMiNzhXRYBcj7nKgiwDz7nJOpEREbnHi0loaQm5xgHn3OVBEjaq3OFQ0C0ZJE25yoF0IcTmPQshUNfSaSRjwUSAmRBIx5M8XWGRtRnJcwQSJragk3EkT9/e2qNGQu986nGhPvrd/e2mgbvfOpxoT763f3tpDS73zqcaE++u397aahpd751ONCffXb+9tFo0W986nGhPvrN/aLRovnU40J99KGJAKIIEiFECYjoE5s0NoRAyBoYxInGQoKLmYZFkmQQ3EIuRDlQ0C14GV0UFo0U0OaJBRIapDZTA0RHFG0ljRJOkWmlZExHJM6JFmeLrDnHBp4eRxR1BEonNlMlXIGWx0LISyJnKJYJSIRtGGJd7ozOS8yNHIyGPdGZZUeSJG0Wsk40IUoFyIpDHrIwjZyShsyRKARBrJM7wCUAxDviioJkS+LpkFMgzPoFaBGlME0CLhBFjJCUad+gRDTkPgxoyKWENKfCimny/Dkc0zkSQDTuPiyKb6vxpBNXfR4hpxCRnwjTiAnhKgXwkYujowjTiArkQNMThIxdHThGnEB3IkKSJGiJwkYujqwjTiAvksNmC/CRi6OvCNOICeTw8nCRi6OzCNOICO0ignYxdHbhGjAAAVAdyZ4utyeHk4SMXRCETEIhCEIQhCEIQiIhmnAAAUn3I09b7cauwC8fF18RDTMTI11E2NGAAArArk8PIPgIxBgIa8AABWJ2G14AACsT414AACsULteAAArFHMa8AABWKWQ14AACsU9VrwAAFYqaLXgAAKxV2WvAAAVitvNWwWo0f0L5Ml58I0ThkjENH6oXyZLz4MgnDJGIQ4YLMQAAAAAAAAPh/zMAAAAAAAADwf8vEgGsE3hHChnEiHGinIjHKjnMkHOE8JUC+EjF0ToCuRA0xOEjF0TpDuRIUkSNEThIxdE6gvksNmC/CRi6J1hPJ4eThIxdE7AjtIoJ2MXRO1JPHyjyAfg6KmB5DuhePi6+DyYfkSFWQUzylo9FMPKzTy048zPPNUDzdE85SPO0zz1Q8/VPQVj0IvkyXnwjROGSJ6MXyZLz4MgnDJE9KLeSJXRYBoie9PGu5spQh4IyJxDZ59AU8EZE4VbgTzxAVEuNBxudIEIlwqGomTOECRkE4ZO0ijLEEhkE4ZO0igXXMe5pGzy5AkjROGTtIozBBIjROGTtIoF1zHuaRs8yQGJIQHkzRAijSSEB5NAQAEFwmDjEnx8XTdPDyccXlkmp6iIYMSfHWbx8XPJGeODJIUUPm6PEQJmJPjrN4+LnkjPHGgYSXIJAwJSQZvAXgYUSAmTgoDhkKhpOPi55Izxw2CAyFQ0nHxc8kZoJLhIBJEAvlEBixITJOUSEXxJUjZ8JeZGyQ5suSQIRLkiAWQfHIEIlwsXZI3jkgxEuEvMjZICsnGICKJiXIIKmJPjrN4+LnkjPHJYYFy5cglBIlxUAZNVn5fUIur6QGE6IGF6YA44JcdZvHxc8kZ45pA1EuPi6bp4eTji84go+LnkjPHES4RtGEiAKydAghtbQyFQ0nDEnMkdra5iBDa2hkKhpOSJOZI7W1zEQhtbS3OVR/DEnMkdra55BDa2lucqj+SJOZI7W1zySDBAcgD6vKgaPJIgQQFryh8CBQ0eTPkEF1+fWBtc+tAgxAQOiXARiDCkOQyhq5QGEgggYTmiBNj5g4JAN7nwgAj6SPDPgeJKkjIkUALI6CzjABZLQIkdAJJ0ZyCA0nrQIkleB6NkdBZyz4HQ0ZL8cVz6C1glPiGjJfjiufwAf/+FJUkcQDQEk5hIBpA5XR4QAjwDSg2AfANMGKhcyRgGnDRIOgiRD6C4kHQRORQY84h/AB//8GMCjCxczgjgjwThk8x8Gli5nBOGTj3IbPznxyKnChSqmr/AGF/AAYRwR4CfpIFCOCPBOGTgJ+ogWJwyce5DZ8BP1EgYTmiBP1nwOhoyX44vtNAtYJT4hoyX44vtNINW4QFk4JzHgiT3EBWAmI/vIDxI9YBE+KAaRAREf5EBZLQInzQCyetE/ogJlQMpxQ033QFzdxbrEjwQJE9ABGbuLcICycW6xI8ECRPQALm7lHvJHggSJ6AQjN3FuEBZOUe8keCBInoBAk4oZ+QA0SPICfwIFSmCM5csiZ/qaBBGjlyyJn+ppBCGiXQZJew0BpUDKcfshBkAOR04UZdXPBMLPAgyiAJ6wF9qoF0JA////////738T1iG7VQLoSAAgAAAAAAAAGYgAAAAAAAAfD+R690kTRUm0hpUNRPEAAAAAAAADwfyPWkMCaKk2kNKhqJ4gAAAAAAAAeH+OSU4UAAAAAAAAAAAIOr3pGE3ZGF3wAebuFRcg90QNm7hLvc0jZoAvckC5u4+JBIkhzd4RBmAwV4IyJXIB9pMVj+A2utWAclpwpAAAAAAAAHw/4nV3gBk3cGCZOSnFDTXgQZN3JoYTkpxQ014Fwl4GJTdxbhAWTgwTJyU4oaa8Dkpu4twgLJyaGE5KcUNNeCBhrwQcPeCFrLpGFvgBzEnyaGEvgCzEnwtFr5ggI2QhjjEn2kxF7Ra+YICNkIggxJ8Y5sz2QiizEn2kxM65sz2QjBzEnwYJkshHFGJPtJiH0EyWQkBjEnwYMWQkiTEn2kxD6DFkJQgxJ8O6kZWQlizEn2kxH66kZWQmCjEnxiG0mSVkJo0xJ9pMTOobSZJWQnCjEnyRBOaOVkJ40xJ9pMUukE5o5WQoDzEnxiFrRIgnNHKyFEkYk+0mJnULWiRBOaOVkKRExJ8mhhMuaTjilkSdoAPIk+TQwlwgfIk+MQtaJEE5o5WypkpEn2kxM6ha0SIJzRytlUFSJPkiCc0cra+qNkSfaTFLpBOaOVtfWFSJPjENpMkrb+uNkSfaTEzqG0mSVt/YESJPh3UjK3Psi5En2kxH66kZW59oPIk+DBMlsrYqRJ9pMQ+gmS2VwRIk+Mc2Z7a+6LkSfaTEzrmzPbX3hciT4Wi18wQEbb++OkSfaTEXtFr5ggI23+BDmJPmCAjZDBB5EnzBARtlg4M4BybBxkgAAAAAAAAAAMbn8IYnP4iXXz+IMVn8QmLz+IVghLkF4CAkySn4yNX5AINAByfA2pR8iUrY58bjjbZ8TijZ58XjBNXjwJ9ICgUV2op4SoF8JGLo5EpRPqAUCmu1FXIgaYnCRi6ORKUT6wFAqrtRdyJCkiRoicJGLo5EpRPsAUCuu1FfJYbMF+EjF0ciUon2gKBZXaink8PJwkYujkSlE+4BQLa7UUdpFBOxi6ORKUQQBwYPUkZIc2AAAAAAAF1poFs8lcPIwgiGldhyAYBTwJAIwsMQDKhuFHgMjRYQeAxkFgx4HE5jwCngiHMkDmTF1fXBML1wKALtYK+DdQKycJGLo5GDckYujtobtkjF0ds4GjWhphwBzLIKDiZOLI00zx8AABVAgWS0CJSRXMuwoOJk4sjTTPHwAAFUAoOJk44pZEnHwAAFWAYNClJGPgAAKkJYcxJ8Q2exRTGCDEnyiGz2KKWxBiT4hs9HWopjRJiT5RDZ6OtRS4IMSfENnp6VFMcJMSfKIbPT0qKXRRiT4VbgT09Kil4UYk+FW4E9bUopfDyJPiGz2KbYwRIk+UQ2exTa2IkSfENno61NsaJkSfKIbPR1qbXBEiT4hs9PSptjhMiT5RDZ6elTa6KkSfCrcCenpU2vCpEnwq3AnralNr+ZM0hHocTJLaeSO0RZGEbOAAAAAAAAB4H5mTNoR6HEyS2nkjtEWRhGzgAAAAAAAAeB+ZkziEehxMktp5I7RFkYRs4AAAAAAAAHgfmZM6hHocTJLaeSO0RZGEbOAAAAAAAAAAIBmTPIR6HEyS2nkjtEWRhGzgAAAAAAAAACAZkz6EehxMktp5I7RFkYRs4AAAAAAAAAggGZNAhHocTJLaeSO0RZGEbOAAAAAAAAAIIBmTQoR6HEyS2nkjtEWRhGzgAAAAAAAACCAZk0SEehxMktp5I7RFkYRs4AAAAAAAABAgGHNGYgTEgB9ojrZ7FFAREgB8Q2exRSWMiQA+0R1s9HW6slFEGRIAfaI62ejrdCSikQXEgB8Q2ejrdWSikwXEgB8Q2ejrdCSilQZEgB9ojrZ6el1ZKKKMiQA+0R1s9PS6ElFIouJAD4hs9PS6slFJouJAD4hs9PS6ElFKouJAD4VbgT6slFGFxIAfCrcCfQkopGGRIAfBuoFZOrJRRxkSAHwbqBWToSUUjiokAPtEdbPqyUWgCokAPtEdbPoSUWkCYkAPiGz6slFqAmJAD4hs+hJRawKtFEydojrZ7FNgTaKJk4hs9im0sbaKJk7RHWz0dbqyU2QbaKJk7RHWz0dboSU2iDLRRMnENno63VkptMGWiiZOIbPR1uhJTaoNtFEydojrZ6el1ZKbKNtFEydojrZ6el0JKbRRloomTiGz09LqyU2mjLRRMnENnp6XQkptVGWiiZOFW4E+rJTZhloomThVuBPoSU2jDbRRMnBuoFZOrJTZxtoomTg3UCsnQkptHF2iiZO0R1s+rJTiALtFEydojrZ9CSnEgVaKJk4hs+rJTigKtFEycQ2fQkpxY1e2Y1m1ACFQteyYDEhQC5UCA4nMeCJKBIEE5+NjAFktAiUkgBbRRMm3gcIgHhIDSrikWFX4KgBOrbo6EAWVbW7sWsCQAfVt0oHec/X8hF3MfhercbSJA/oIrZUcV9z8N1bjaOgSAHcpMKveXtn4Lr0QBgtRFT7IQlAD9lCM9Ha0oGadv7NPUHMfheyhGelAzTt/Zp6g9j8p+B5LDAuX8um7kpxQ03JgN//xSKoMAZaggIATpagkCAkhuoJQgJgbqCYKCYG6WrQCCDGeoKQEERC9QThRLzp6WjIBidLUFABku/UFBClW50dQUIKfD3T0i8CIZRelQBrcbUFDCLcbS1BSQq3G0dDUFKBsBfTLwGxDdOvAb3W1aIGiBo3M1IAWLqNHqCiBJIM3VEA5IbqCihJQjPUFGBzA3UFHCzjRotQUtwFCvBGRNCgJlOKGmQXGiYg3wb/YAACnQDRJKjCYAACmYDipGJGzwAAFKBBwIEEAcCRo+yy6TtIw4ZCoaTj4ueSM8cNk0vbQ03cXhgxJ8dZvHxc8kZ44MkhRQ+bo8REHGJPj4um6eHk44vLJdP3UBiJcJeZGyQFZOMSajkExF8SVI2fCXmRskObLkkmw7z81PURYOEBAyJcqglppEHCgQcyA4MKDiZOLI00zx8AABVAKDiZOOKWRJx8AABVgGDQpSRj4AACpBdhgAAK1ARKgQRiDFJEzGGEI9DiZJbTyR2iLIwjZwAAAAAAAAPA/MxhxCPQ4mSW08kdoiyMI2cAAAAAAAADwP1FAWtwuPWBDcAABXEB3rAhvHFwAAFeRmMQIR6HEyS2nkjtEWRhGzgAAAAAAAAeB+ZjEiEehxMktp5I7RFkYRs4AAAAAAAAAAgGYxQhHocTJLaeSO0RZGEbOAAAAAAAAAAIBmMWIR6HEyS2nkjtEWRhGzgAAAAAAAACCAZjGCEehxMktp5I7RFkYRs4AAAAAAAAAggGYxohHocTJLaeSO0RZGEbOAAAAAAAAAIIBmMcIR6HEyS2nkjtEWRhGzgAAAAAAAAECAQceEAMJzRAnr0BSJcI0ThoabaECES4GhSkjsyBQcTJxZGmmfXIBxOY8ESUEaDpQHNIggjROGhpu//BAxGicMn+EkHTgOaZhBGicNDTd/4AUoJgX3/gglBmuiToXM7/wVAwyCcMn7FDgIDa63VAGxsIHUgbiBwMiBhOCBlbXNjcmlwdGVuIGVtc2NyaXB0ZW4gY2xhbmcAZHVrX2JpX2J1ZmZlci5jAG5vdCBidWZmZXIAY29uc3RydWN0b3IgcmVxdWlyZXMgJ25ldycAKispLSwvLjAxFhcVGRgbGhwdZHVrX2JpX3Rocm93ZXIuYwBkdWtfYmlfdGhyZWFkLmMAaW52YWxpZCBzdGF0ZQBkdWtfaG9iamVjdF9hbGxvYy5jAHV0Zi04AGR1a19iaV9lbmNvZGluZy5jAIJDb250ZXh0AHN0cmVhbQB1dGYtOCBkZWNvZGUgZmFpbGVkAGZhdGFsAGlnbm9yZUJPTQBkdWtfYmlfc3RyaW5nLmMAZHVrX3JlZ2V4cF9leGVjdXRvci5jAHJlZ2V4cCBleGVjdXRvciByZWN1cnNpb24gbGltaXQAcmVnZXhwIHN0ZXAgbGltaXQAU3ltYm9sKAApAGR1a19iaV9yZWdleHAuYwBkdWtfYmlfcmVmbGVjdC5jAGR1a19iaV9wb2ludGVyLmMAZHVrX2JpX29iamVjdC5jAGR1a19ob2JqZWN0X21pc2MuYwBkdWtfYmlfbnVtYmVyLmMAbnVtYmVyIGV4cGVjdGVkAFtvYmplY3QgT2JqZWN0XQB1dGY4AGR1a19iaV9mdW5jdGlvbi5jAAAAAAAA7P8D////h/7//wdkdWtfYmlfZ2xvYmFsLmMAaW52YWxpZCBpbnB1dAAAAAAAgmf/A/7//4f+//9HAAAAANr//6////+H/v//RwAAAABYmACsAQAAAAAAAABmdW5jdGlvbiAlcygpIHsgW2VjbWFzY3JpcHQgY29kZV0gfQBmdW5jdGlvbiAlcygpIHsgW25hdGl2ZSBjb2RlXSB9AGZ1bmN0aW9uICVzKCkgeyBbYm91bmQgY29kZV0gfQBib3VuZCAAZnVuY3Rpb24oACl7AH0AYW5vbnltb3VzAEVycm9yADogAFthbm9uXQAgdGFpbGNhbGwAIGRpcmVjdGV2YWwAIGNvbnN0cnVjdAAgcHJldmVudHN5aWVsZAAgc3RyaWN0AGF0ICVzIGxpZ2h0JXMlcyVzJXMlcwBhdCAlcyAoJXMpIG5hdGl2ZSVzJXMlcyVzJXMAYXQgJXMgKCVzOiVsdSklcyVzJXMlcyVzAG51bGwAYXQgW2Fub25dICglczolbGQpIGludGVybmFsAGhwdHIAdHlwZQBpdGFnAHJlZmMAaGJ5dGVzAGNsYXNzAHBieXRlcwBlc2l6ZQBlbmV4dABhc2l6ZQBoc2l6ZQBiY2J5dGVzAGRieXRlcwB0c3RhdGUAdmFyaWFudAAAAGR1a19iaV9kdWt0YXBlLmMAZHVrX2JpX2RhdGUuYwBleHBlY3RlZCBEYXRlAEludmFsaWQgRGF0ZQAfHB8eHx4fHx4fHh81QTE9LTkpKjYmMj4uOiV4ACVYACVjACslMDZsZAAlMDdsZAAlMDRsZAArJTAyZDolMDJkAC0lMDJkOiUwMmQAJXMtJTAyZC0lMDJkJWMlMDJkOiUwMmQ6JTAyZC4lMDNkJXMAJXMtJTAyZC0lMDJkACUwMmQ6JTAyZDolMDJkLiUwM2QlcwABAgQECAAnKCkqKywtLi8wMWR1a19iaV9ib29sZWFuLmMAZHVrX2JpX2FycmF5LmMAMDEyMzQ1Njc4OV8ggoAieygqbm8gbmFtZSkAKCp0ZW1wb3JhcnkpACgqdmFyYXJnKQA9W0NdAD0/AG1haW4ATHVhAGZvciBpdGVyYXRvcgBtZXRhbWV0aG9kAGhvb2sAZ2xvYmFsAGZpZWxkAGNvbnN0YW50AHVwdmFsdWUAYXR0ZW1wdCB0byAlcyBhICVzIHZhbHVlJXMAJXM6JWQ6ICVzACAoJXMgJyVzJykAY29uY2F0ZW5hdGUAbnVtYmVyJXMgaGFzIG5vIGludGVnZXIgcmVwcmVzZW50YXRpb24AYXR0ZW1wdCB0byBjb21wYXJlIHR3byAlcyB2YWx1ZXMAYXR0ZW1wdCB0byBjb21wYXJlICVzIHdpdGggJXMAZXJyb3IgaW4gZXJyb3IgaGFuZGxpbmcAQyBzdGFjayBvdmVyZmxvdwBjYW5ub3QgcmVzdW1lIG5vbi1zdXNwZW5kZWQgY29yb3V0aW5lAGF0dGVtcHQgdG8geWllbGQgYWNyb3NzIGEgQy1jYWxsIGJvdW5kYXJ5AGF0dGVtcHQgdG8geWllbGQgZnJvbSBvdXRzaWRlIGEgY29yb3V0aW5lAGF0dGVtcHQgdG8gbG9hZCBhICVzIGNodW5rIChtb2RlIGlzICclcycpAGJpbmFyeQBubyBtZXNzYWdlAGVycm9yIGluIF9fZ2MgbWV0YW1ldGhvZCAoJXMpAHRvbyBtYW55ICVzIChsaW1pdCBpcyAlZCkAbWVtb3J5IGFsbG9jYXRpb24gZXJyb3I6IGJsb2NrIHRvbyBiaWcAAAECAgMDAwMEBAQEBAQEBAUFBQUFBQUFBQUFBQUFBQUGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcHBwcICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICG5OACVsbGQAJS4xNGcALTAxMjM0NTY3ODkAPFwlZD4AJXAAJQBpbnZhbGlkIG9wdGlvbiAnJSUlYycgdG8gJ2x1YV9wdXNoZnN0cmluZycAW3N0cmluZyAiACJdAGBxQVRQUFxsPBA8VGx8fHx8fHx8fHx8fHxgYGBgaCK8vLyE5FRUEGJiBGIUUVAXbGFiZWxzL2dvdG9zADwlcz4gYXQgbGluZSAlZCBub3QgaW5zaWRlIGEgbG9vcABubyB2aXNpYmxlIGxhYmVsICclcycgZm9yIDxnb3RvPiBhdCBsaW5lICVkADxnb3RvICVzPiBhdCBsaW5lICVkIGp1bXBzIGludG8gdGhlIHNjb3BlIG9mIGxvY2FsICclcycAJXMgZXhwZWN0ZWQAZnVuY3Rpb24gYXQgbGluZSAlZABtYWluIGZ1bmN0aW9uAHRvbyBtYW55ICVzIChsaW1pdCBpcyAlZCkgaW4gJXMAQyBsZXZlbHMAJXMgZXhwZWN0ZWQgKHRvIGNsb3NlICVzIGF0IGxpbmUgJWQpAChmb3IgaW5kZXgpAChmb3IgbGltaXQpAChmb3Igc3RlcCkAKGZvciBnZW5lcmF0b3IpAChmb3Igc3RhdGUpAChmb3IgY29udHJvbCkAJz0nIG9yICdpbicgZXhwZWN0ZWQAbGFiZWwgJyVzJyBhbHJlYWR5IGRlZmluZWQgb24gbGluZSAlZABzeW50YXggZXJyb3IAdW5leHBlY3RlZCBzeW1ib2wAZnVuY3Rpb24gYXJndW1lbnRzIGV4cGVjdGVkAGZ1bmN0aW9ucwBzZWxmADxuYW1lPiBvciAnLi4uJyBleHBlY3RlZABsb2NhbCB2YXJpYWJsZXMAY2Fubm90IHVzZSAnLi4uJyBvdXRzaWRlIGEgdmFyYXJnIGZ1bmN0aW9uAAoKCgoLCwsLDg0LCwsLBgYEBAUFBwcHBwkIAwMDAwMDAwMDAwMDAgIBAXVwdmFsdWVzAGludmFsaWQga2V5IHRvICduZXh0JwB0YWJsZSBvdmVyZmxvdwB0YWJsZSBpbmRleCBpcyBuaWwAdGFibGUgaW5kZXggaXMgTmFOAGJvb2xlYW4AdXNlcmRhdGEAbnVtYmVyAHRhYmxlAHRocmVhZABwcm90bwBfX2VxAF9fbW9kAF9faWRpdgBfX2JhbmQAX19ib3IAX19ieG9yAF9fc2hsAF9fc2hyAF9fYm5vdABfX2x0AF9fbGUAX19jb25jYXQAX19jYWxsAHBlcmZvcm0gYml0d2lzZSBvcGVyYXRpb24gb24AcGVyZm9ybSBhcml0aG1ldGljIG9uAGJpbmFyeSBzdHJpbmcAdHJ1bmNhdGVkABtMdWEAbm90IGEAdmVyc2lvbiBtaXNtYXRjaCBpbgBmb3JtYXQgbWlzbWF0Y2ggaW4AGZMNChoKAGNvcnJ1cHRlZAAlcyBzaXplIG1pc21hdGNoIGluAGludABzaXplX3QASW5zdHJ1Y3Rpb24AbHVhX0ludGVnZXIAbHVhX051bWJlcgBlbmRpYW5uZXNzIG1pc21hdGNoIGluAGZsb2F0IGZvcm1hdCBtaXNtYXRjaCBpbgAlczogJXMgcHJlY29tcGlsZWQgY2h1bmsAaW5kZXgAZ2V0dGFibGUgY2hhaW4gdG9vIGxvbmc7IHBvc3NpYmxlIGxvb3AAc2V0dGFibGUgY2hhaW4gdG9vIGxvbmc7IHBvc3NpYmxlIGxvb3AAc3RyaW5nIGxlbmd0aCBvdmVyZmxvdwBnZXQgbGVuZ3RoIG9mAGF0dGVtcHQgdG8gZGl2aWRlIGJ5IHplcm8AYXR0ZW1wdCB0byBwZXJmb3JtICduJSUwJwAnZm9yJyBsaW1pdCBtdXN0IGJlIGEgbnVtYmVyACdmb3InIHN0ZXAgbXVzdCBiZSBhIG51bWJlcgAnZm9yJyBpbml0aWFsIHZhbHVlIG11c3QgYmUgYSBudW1iZXIAc3RhY2sgdHJhY2ViYWNrOgAKCS4uLgBTbG50AAoJJXM6ACVkOgAgaW4gAGZ1bmN0aW9uICclcycAJXMgJyVzJwBtYWluIGNodW5rAGZ1bmN0aW9uIDwlczolZD4ACgkoLi4udGFpbCBjYWxscy4uLikAZgBfRy4AYmFkIGFyZ3VtZW50ICMlZCAoJXMpAG1ldGhvZABjYWxsaW5nICclcycgb24gYmFkIHNlbGYgKCVzKQBiYWQgYXJndW1lbnQgIyVkIHRvICclcycgKCVzKQBTbAAlczolZDogAF9fbmFtZQBsaWdodCB1c2VyZGF0YQAlcyBleHBlY3RlZCwgZ290ICVzAGludmFsaWQgb3B0aW9uICclcycAc3RhY2sgb3ZlcmZsb3cgKCVzKQBudW1iZXIgaGFzIG5vIGludGVnZXIgcmVwcmVzZW50YXRpb24AYnVmZmVyIHRvbyBsYXJnZQA9c3RkaW4AQCVzAGNhbm5vdCAlcyAlczogJXMAb3BlbgByZW9wZW4AcmVhZABvYmplY3QgbGVuZ3RoIGlzIG5vdCBhbiBpbnRlZ2VyAF9fdG9zdHJpbmcAJUkAJWYAJXM6ICVwAHRvbyBtYW55IHVwdmFsdWVzAFBBTklDOiB1bnByb3RlY3RlZCBlcnJvciBpbiBjYWxsIHRvIEx1YSBBUEkgKCVzKQoAbXVsdGlwbGUgTHVhIFZNcyBkZXRlY3RlZABfRwBMdWEgNS4zAF9WRVJTSU9OAGFzc2VydABjb2xsZWN0Z2FyYmFnZQBkb2ZpbGUAZXJyb3IAaXBhaXJzAGxvYWRmaWxlAGxvYWQAbmV4dABwYWlycwBwY2FsbAByYXdlcXVhbAByYXdsZW4AcmF3Z2V0AHJhd3NldABzZWxlY3QAdG9udW1iZXIAdG9zdHJpbmcAeHBjYWxsAGJhc2Ugb3V0IG9mIHJhbmdlACAMCg0JCwBfX21ldGF0YWJsZQBjYW5ub3QgY2hhbmdlIGEgcHJvdGVjdGVkIG1ldGF0YWJsZQBpbmRleCBvdXQgb2YgcmFuZ2UAdGFibGUgb3Igc3RyaW5nIGV4cGVjdGVkACd0b3N0cmluZycgbXVzdCByZXR1cm4gYSBzdHJpbmcgdG8gJ3ByaW50JwBfX3BhaXJzAGJ0AD0obG9hZCkAdG9vIG1hbnkgbmVzdGVkIGZ1bmN0aW9ucwByZWFkZXIgZnVuY3Rpb24gbXVzdCByZXR1cm4gYSBzdHJpbmcAX19pcGFpcnMAY29sbGVjdABzdG9wAHJlc3RhcnQAc3RlcABzZXRwYXVzZQBzZXRzdGVwbXVsAGlzcnVubmluZwBhc3NlcnRpb24gZmFpbGVkIQBjcmVhdGUAcmVzdW1lAHJ1bm5pbmcAc3RhdHVzAHdyYXAAeWllbGQAaXN5aWVsZGFibGUAdG9vIG1hbnkgYXJndW1lbnRzIHRvIHJlc3VtZQBjYW5ub3QgcmVzdW1lIGRlYWQgY29yb3V0aW5lAHRvbyBtYW55IHJlc3VsdHMgdG8gcmVzdW1lAHRocmVhZCBleHBlY3RlZABzdXNwZW5kZWQAbm9ybWFsAGRlYWQAZGVidWcAZ2V0dXNlcnZhbHVlAGdldGhvb2sAZ2V0aW5mbwBnZXRsb2NhbABnZXRyZWdpc3RyeQBnZXRtZXRhdGFibGUAZ2V0dXB2YWx1ZQB1cHZhbHVlam9pbgB1cHZhbHVlaWQAc2V0dXNlcnZhbHVlAHNldGhvb2sAc2V0bG9jYWwAc2V0bWV0YXRhYmxlAHNldHVwdmFsdWUAdHJhY2ViYWNrAG5pbCBvciB0YWJsZSBleHBlY3RlZABsZXZlbCBvdXQgb2YgcmFuZ2UAc3RhY2sgb3ZlcmZsb3cAawBfX21vZGUAY2FsbABsaW5lAGNvdW50AHRhaWwgY2FsbABpbnZhbGlkIHVwdmFsdWUgaW5kZXgATHVhIGZ1bmN0aW9uIGV4cGVjdGVkAGZsblN0dQA+JXMAaW52YWxpZCBvcHRpb24Ac291cmNlAHNob3J0X3NyYwBsaW5lZGVmaW5lZABsYXN0bGluZWRlZmluZWQAd2hhdABjdXJyZW50bGluZQBudXBzAG5wYXJhbXMAaXN2YXJhcmcAbmFtZXdoYXQAaXN0YWlsY2FsbABhY3RpdmVsaW5lcwBmdW5jAGV4dGVybmFsIGhvb2sAbHVhX2RlYnVnPiAAY29udAoAPShkZWJ1ZyBjb21tYW5kKQAlcwoAcGkAaHVnZQBtYXhpbnRlZ2VyAG1pbmludGVnZXIAYWJzAGFjb3MAYXNpbgBhdGFuAGNlaWwAY29zAGRlZwBleHAAdG9pbnRlZ2VyAGZsb29yAGZtb2QAdWx0AGxvZwBtYXgAbWluAG1vZGYAcmFkAHJhbmRvbQByYW5kb21zZWVkAHNpbgBzcXJ0AHRhbgBhdGFuMgBjb3NoAHNpbmgAdGFuaABwb3cAZnJleHAAbGRleHAAbG9nMTAAaW50ZWdlcgBmbG9hdAB3cm9uZyBudW1iZXIgb2YgYXJndW1lbnRzAGludGVydmFsIGlzIGVtcHR5AGludGVydmFsIHRvbyBsYXJnZQB2YWx1ZSBleHBlY3RlZAB6ZXJvAGJ5dGUAY2hhcgBkdW1wAGZpbmQAZ21hdGNoAGdzdWIAbGVuAHJlcAByZXZlcnNlAHN1YgBwYWNrc2l6ZQBpbml0aWFsIHBvc2l0aW9uIG91dCBvZiBzdHJpbmcAZGF0YSBzdHJpbmcgdG9vIHNob3J0AHRvbyBtYW55IHJlc3VsdHMAJWQtYnl0ZSBpbnRlZ2VyIGRvZXMgbm90IGZpdCBpbnRvIEx1YSBJbnRlZ2VyAGludmFsaWQgbmV4dCBvcHRpb24gZm9yIG9wdGlvbiAnWCcAZm9ybWF0IGFza3MgZm9yIGFsaWdubWVudCBub3QgcG93ZXIgb2YgMgBpbnRlZ3JhbCBzaXplICglZCkgb3V0IG9mIGxpbWl0cyBbMSwlZF0AbWlzc2luZyBzaXplIGZvciBmb3JtYXQgb3B0aW9uICdjJwBpbnZhbGlkIGZvcm1hdCBvcHRpb24gJyVjJwBmb3JtYXQgcmVzdWx0IHRvbyBsYXJnZQB2YXJpYWJsZS1sZW5ndGggZm9ybWF0AGludGVnZXIgb3ZlcmZsb3cAdW5zaWduZWQgb3ZlcmZsb3cAd3JvbmcgbGVuZ3RoAHN0cmluZyBsZW5ndGggZG9lcyBub3QgZml0IGluIGdpdmVuIHNpemUAc3RyaW5nIGNvbnRhaW5zIHplcm9zAHJlc3VsdGluZyBzdHJpbmcgdG9vIGxhcmdlAF4kKis/LihbJS0AaW52YWxpZCBjYXB0dXJlIGluZGV4ICUlJWQAdW5maW5pc2hlZCBjYXB0dXJlAHBhdHRlcm4gdG9vIGNvbXBsZXgAaW52YWxpZCBwYXR0ZXJuIGNhcHR1cmUAbWFsZm9ybWVkIHBhdHRlcm4gKG1pc3NpbmcgYXJndW1lbnRzIHRvICclJWInKQBtaXNzaW5nICdbJyBhZnRlciAnJSVmJyBpbiBwYXR0ZXJuAG1hbGZvcm1lZCBwYXR0ZXJuIChlbmRzIHdpdGggJyUlJykAbWFsZm9ybWVkIHBhdHRlcm4gKG1pc3NpbmcgJ10nKQBzdHJpbmcvZnVuY3Rpb24vdGFibGUgZXhwZWN0ZWQAaW52YWxpZCB1c2Ugb2YgJyVjJyBpbiByZXBsYWNlbWVudCBzdHJpbmcAaW52YWxpZCByZXBsYWNlbWVudCB2YWx1ZSAoYSAlcykAbm8gdmFsdWUALSsgIzAAaW52YWxpZCBmb3JtYXQgKHJlcGVhdGVkIGZsYWdzKQBpbnZhbGlkIGZvcm1hdCAod2lkdGggb3IgcHJlY2lzaW9uIHRvbyBsb25nKQBsbABcJWQAXCUwM2QAaW52YWxpZCBvcHRpb24gJyUlJWMnIHRvICdmb3JtYXQnAHVuYWJsZSB0byBkdW1wIGdpdmVuIGZ1bmN0aW9uAHZhbHVlIG91dCBvZiByYW5nZQBzdHJpbmcgc2xpY2UgdG9vIGxvbmcAY29uY2F0AGluc2VydABwYWNrAHVucGFjawByZW1vdmUAbW92ZQBzb3J0AGludmFsaWQgb3JkZXIgZnVuY3Rpb24gZm9yIHNvcnRpbmcAX19uZXdpbmRleAB0b28gbWFueSBlbGVtZW50cyB0byBtb3ZlAGRlc3RpbmF0aW9uIHdyYXAgYXJvdW5kAHBvc2l0aW9uIG91dCBvZiBib3VuZHMAdG9vIG1hbnkgcmVzdWx0cyB0byB1bnBhY2sAbgB3cm9uZyBudW1iZXIgb2YgYXJndW1lbnRzIHRvICdpbnNlcnQnAGludmFsaWQgdmFsdWUgKCVzKSBhdCBpbmRleCAlZCBpbiB0YWJsZSBmb3IgJ2NvbmNhdCcAc2VhcmNoZXJzAC91c3IvbG9jYWwvc2hhcmUvbHVhLzUuMy8/Lmx1YTsvdXNyL2xvY2FsL3NoYXJlL2x1YS81LjMvPy9pbml0Lmx1YTsvdXNyL2xvY2FsL2xpYi9sdWEvNS4zLz8ubHVhOy91c3IvbG9jYWwvbGliL2x1YS81LjMvPy9pbml0Lmx1YTsuLz8ubHVhOy4vPy9pbml0Lmx1YQBwYXRoAC91c3IvbG9jYWwvbGliL2x1YS81LjMvPy5zbzsvdXNyL2xvY2FsL2xpYi9sdWEvNS4zL2xvYWRhbGwuc287Li8/LnNvAGNwYXRoAC8KOwo/CiEKLQoAY29uZmlnAF9MT0FERUQAbG9hZGVkAF9QUkVMT0FEAHByZWxvYWQAcmVxdWlyZQAncGFja2FnZS5zZWFyY2hlcnMnIG11c3QgYmUgYSB0YWJsZQBtb2R1bGUgJyVzJyBub3QgZm91bmQ6JXMAJ3BhY2thZ2UuJXMnIG11c3QgYmUgYSBzdHJpbmcAZXJyb3IgbG9hZGluZyBtb2R1bGUgJyVzJyBmcm9tIGZpbGUgJyVzJzoKCSVzAAoJbm8gbW9kdWxlICclcycgaW4gZmlsZSAnJXMnAF8AbHVhb3Blbl8lcwBkeW5hbWljIGxpYnJhcmllcyBub3QgZW5hYmxlZDsgY2hlY2sgeW91ciBMdWEgaW5zdGFsbGF0aW9uAD8AcgAKCW5vIGZpbGUgJyVzJwAKCW5vIGZpZWxkIHBhY2thZ2UucHJlbG9hZFsnJXMnXQBsb2FkbGliAHNlYXJjaHBhdGgAYWJzZW50AGluaXQAAAAAAAABAgIBAQAAAgEBAQFscGVnLXBhdHRlcm4AX19pbmRleABwdHJlZQBwY29kZQBtYXRjaABDYwBDbXQAQ2IAQ2FyZwBDcABDcwBDdABDZgBDZwBsb2NhbGUAdmVyc2lvbgBzZXRtYXhzdGFjawB0eXBlAHBhdHRlcm4Ab3V0IG9mIHJhbmdlADEuMC4xAGFsbnVtAGFscGhhAGNudHJsAGRpZ2l0AGdyYXBoAGxvd2VyAHByaW50AHB1bmN0AHNwYWNlAHVwcGVyAHhkaWdpdAByYW5nZSBtdXN0IGhhdmUgdHdvIGNoYXJhY3RlcnMAZ3JhbW1hciBoYXMgbm8gaW5pdGlhbCBydWxlAGluaXRpYWwgcnVsZSAnJXMnIGlzIG5vdCBhIHBhdHRlcm4AKGEgJXMpAHJ1bGUgJyVzJyBpcyBub3QgYSBwYXR0ZXJuAGdyYW1tYXIgaGFzIHRvbyBtYW55IHJ1bGVzAHRvbyBtYW55IEx1YSB2YWx1ZXMgaW4gcGF0dGVybgBlbXB0eSBsb29wIGluIHJ1bGUgJyVzJwBydWxlICclcycgbWF5IGJlIGxlZnQgcmVjdXJzaXZlAHRvbyBtYW55IGxlZnQgY2FsbHMgaW4gZ3JhbW1hcgBydWxlICclcycgdW5kZWZpbmVkIGluIGdpdmVuIGdyYW1tYXIAcnVsZSAnJXMnIHVzZWQgb3V0c2lkZSBhIGdyYW1tYXIAaW52YWxpZCBhcmd1bWVudCBpbmRleABub24tbmlsIHZhbHVlIGV4cGVjdGVkAHBhdHRlcm4gbWF5IG5vdCBoYXZlIGZpeGVkIGxlbmd0aABwYXR0ZXJuIGhhdmUgY2FwdHVyZXMAcGF0dGVybiB0b28gbG9uZyB0byBsb29rIGJlaGluZABmdW5jdGlvbiBvbmx5IGltcGxlbWVudGVkIGluIGRlYnVnIG1vZGUAX19tdWwAX19hZGQAX19wb3cAX19nYwBfX2xlbgBfX2RpdgBfX3VubQBfX3N1YgBpbnZhbGlkIG51bWJlcgBpbnZhbGlkIHJlcGxhY2VtZW50IHZhbHVlAGxvb3AgYm9keSBtYXkgYWNjZXB0IGVtcHR5IHN0cmluZwBub3QgZW5vdWdoIG1lbW9yeQD//////////////////////////////////////////2NvbnRyb2wgc3RydWN0dXJlIHRvbyBsb25nAG9wY29kZXMAZnVuY3Rpb24gb3IgZXhwcmVzc2lvbiBuZWVkcyB0b28gbWFueSByZWdpc3RlcnMAY29uc3RhbnRzAGNvbnN0cnVjdG9yIHRvbyBsb25nAAAAAAAAAAAAAAAICAgICAAAAAAAAAAAAAAAAAAAAAAAAAwEBAQEBAQEBAQEBAQEBAQWFhYWFhYWFhYWBAQEBAQEBBUVFRUVFQUFBQUFBQUFBQUFBQUFBQUFBQUFBAQEBAUEFRUVFRUVBQUFBQUFBQUFBQUFBQUFBQUFBQUEBAQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAX0VOVgBhbmQAYnJlYWsAZG8AZWxzZQBlbHNlaWYAZW5kAGZvcgBmdW5jdGlvbgBnb3RvAGlmAGluAGxvY2FsAG5pbABub3QAb3IAcmVwZWF0AHJldHVybgB0aGVuAHVudGlsAHdoaWxlAC8vAC4uAC4uLgA9PQA+PQA8PQB+PQA8PAA+PgA6OgA8ZW9mPgA8bnVtYmVyPgA8aW50ZWdlcj4APG5hbWU+ADxzdHJpbmc+ACclYycAJyVzJwBsZXhpY2FsIGVsZW1lbnQgdG9vIGxvbmcAJXMgbmVhciAlcwBjaHVuayBoYXMgdG9vIG1hbnkgbGluZXMAaW52YWxpZCBsb25nIHN0cmluZyBkZWxpbWl0ZXIAdW5maW5pc2hlZCBzdHJpbmcAaGV4YWRlY2ltYWwgZGlnaXQgZXhwZWN0ZWQAbWlzc2luZyAneycAVVRGLTggdmFsdWUgdG9vIGxhcmdlAG1pc3NpbmcgJ30nAGludmFsaWQgZXNjYXBlIHNlcXVlbmNlAGRlY2ltYWwgZXNjYXBlIHRvbyBsYXJnZQBFZQBQcABtYWxmb3JtZWQgbnVtYmVyAHN0cmluZwBjb21tZW50AHVuZmluaXNoZWQgbG9uZyAlcyAoc3RhcnRpbmcgYXQgbGluZSAlZCkAaW52YWxpZCBwb3NpdGlvbiByZXR1cm5lZCBieSBtYXRjaC10aW1lIGNhcHR1cmUAdG9vIG1hbnkgcmVzdWx0cyBpbiBtYXRjaC10aW1lIGNhcHR1cmUAbHBlZy1tYXhzdGFjawBiYWNrdHJhY2sgc3RhY2sgb3ZlcmZsb3cgKGN1cnJlbnQgbGltaXQgaXMgJWQpAHRvbyBtYW55IHJ1bnRpbWUgY2FwdHVyZXMAdG9vIG1hbnkgY2FwdHVyZXMAcmVmZXJlbmNlIHRvIGFic2VudCBleHRyYSBhcmd1bWVudCAjJWQAcmVwbGFjZW1lbnQAYmFjayByZWZlcmVuY2UgJyVzJyBub3QgZm91bmQAbm8gY2FwdHVyZSAnJWQnAG5vIGluaXRpYWwgdmFsdWUgZm9yIGZvbGQgY2FwdHVyZQBpbnZhbGlkICVzIHZhbHVlIChhICVzKQBpbnZhbGlkIGNhcHR1cmUgaW5kZXggKCVkKQBjYXB0dXJlAG5vIHZhbHVlcyBpbiBjYXB0dXJlIGluZGV4ICVkAEdJRjg3YQBHSUY4OWEAAAEDBw8fP3//R0lGVkVSAG9wZW5nbGVzMgBDb3VsZG4ndCBsb2FkIEdMRVMyIGZ1bmN0aW9uICVzOiAlcwoAZ2VuZXJpYwBVTktOT1dOAEdMX09VVF9PRl9NRU1PUlkAR0xfSU5WQUxJRF9PUEVSQVRJT04AR0xfSU5WQUxJRF9WQUxVRQBHTF9JTlZBTElEX0VOVU0AJXM6ICVzICglZCk6ICVzICVzICgweCVYKQBDOlxVc2Vyc1xWYWRpbVwuZW1zY3JpcHRlbl9wb3J0c1xzZGwyXFNETDItdmVyc2lvbl8xM1xzcmNccmVuZGVyL29wZW5nbGVzMi9TRExfcmVuZGVyX2dsZXMyLmMAdm9pZCBHTEVTMl9SZXNldFN0YXRlKFNETF9SZW5kZXJlciAqKQBWaWRlbyBzdWJzeXN0ZW0gaGFzIG5vdCBiZWVuIGluaXRpYWxpemVkAFRoZSBzcGVjaWZpZWQgd2luZG93IGlzbid0IGFuIE9wZW5HTCB3aW5kb3cAVGhlIHNwZWNpZmllZCB3aW5kb3cgaGFzIG5vdCBiZWVuIG1hZGUgY3VycmVudABnbFJlYWRQaXhlbHMoKQBpbnQgR0xFUzJfUmVuZGVyUmVhZFBpeGVscyhTRExfUmVuZGVyZXIgKiwgY29uc3QgU0RMX1JlY3QgKiwgVWludDMyLCB2b2lkICosIGludCkAZHN0AGRzdF9waXRjaABVbmtub3duIEZPVVJDQyBwaXhlbCBmb3JtYXQASW5kZXhlZCBwaXhlbCBmb3JtYXRzIG5vdCBzdXBwb3J0ZWQAU0RMX0JMSVRfQ1BVX0ZFQVRVUkVTACV1AEJsaXQgY29tYmluYXRpb24gbm90IHN1cHBvcnRlZAAAAQIDBAUGBwgJCgsMDQ4PEBESExQVFhcYGRobHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2Nzg5Ojs8PT4/QEFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaW1xdXl9gYWJjZGVmZ2hpamtsbW5vcHFyc3R1dnd4eXp7fH1+f4CBgoOEhYaHiImKi4yNjo+QkZKTlJWWl5iZmpucnZ6foKGio6SlpqeoqaqrrK2ur7CxsrO0tba3uLm6u7y9vr/AwcLDxMXGx8jJysvMzc7P0NHS09TV1tfY2drb3N3e3+Dh4uPk5ebn6Onq6+zt7u/w8fLz9PX29/j5+vv8/f7/AAIEBggKDA4QEhQWGBocHiAiJCYoKiwuMDI0Njg6PD5AQkRGSEpMTlBSVFZYWlxeYGJkZmhqbG5wcnR2eHp8foCChIaIioyOkJKUlpianJ6goqSmqKqsrrCytLa4ury+wMLExsjKzM7Q0tTW2Nrc3uDi5Obo6uzu8PL09vj6/P8ABAgMEBQYHCAkKCwwNDg8QERITFBVWV1hZWltcXV5fYGFiY2RlZmdoaWqrrK2ur7CxsrO0tba3uLm6u7y9vr/AAgQGCApMTlBSlJaYmpze4OLlJykrLS9xc3V3ubu9v8AESIzRFVmd4iZqrvM3e7/ACRIbZG22v8AVar/AP//Zm9ybWF0AFNETF9TZXRQaXhlbEZvcm1hdFBhbGV0dGUoKSBwYXNzZWQgTlVMTCBmb3JtYXQAU0RMX1NldFBpeGVsRm9ybWF0UGFsZXR0ZSgpIHBhc3NlZCBhIHBhbGV0dGUgdGhhdCBkb2Vzbid0IG1hdGNoIHRoZSBmb3JtYXQAU0RMX0ZpbGxSZWN0KCk6IFVuc3VwcG9ydGVkIHN1cmZhY2UgZm9ybWF0AFNETF9GaWxsUmVjdCgpOiBZb3UgbXVzdCBsb2NrIHRoZSBzdXJmYWNlAEZPVVJDQyBwaXhlbCBmb3JtYXRzIGFyZSBub3Qgc3VwcG9ydGVkAEludmFsaWQgcmVuZGVyZXIASW52YWxpZCB0ZXh0dXJlAFJlbmRlcmVyIGRvZXNuJ3Qgc3VwcG9ydCBxdWVyeWluZyBvdXRwdXQgc2l6ZQBpbnQgR0xFUzJfUmVuZGVyQ29weUV4KFNETF9SZW5kZXJlciAqLCBTRExfVGV4dHVyZSAqLCBjb25zdCBTRExfUmVjdCAqLCBjb25zdCBTRExfRlJlY3QgKiwgY29uc3QgZG91YmxlLCBjb25zdCBTRExfRlBvaW50ICosIGNvbnN0IFNETF9SZW5kZXJlckZsaXApAFVuc3VwcG9ydGVkIHRleHR1cmUgZm9ybWF0AGFfcG9zaXRpb24AYV90ZXhDb29yZABhX2FuZ2xlAGFfY2VudGVyAEZhaWxlZCB0byBsaW5rIHNoYWRlciBwcm9ncmFtAHVfcHJvamVjdGlvbgB1X3RleHR1cmVfdgB1X3RleHR1cmVfdQB1X3RleHR1cmUAdV9tb2R1bGF0aW9uAHVfY29sb3IATm8gc2hhZGVyIG1hdGNoaW5nIHRoZSByZXF1ZXN0ZWQgY2hhcmFjdGVyaXN0aWNzIHdhcyBmb3VuZABUaGUgc3BlY2lmaWVkIHNoYWRlciBjYW5ub3QgYmUgbG9hZGVkIG9uIHRoZSBjdXJyZW50IHBsYXRmb3JtAEZhaWxlZCB0byBsb2FkIHRoZSBzaGFkZXI6ICVzAEZhaWxlZCB0byBsb2FkIHRoZSBzaGFkZXIAICAgICBwcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsgICAgIHVuaWZvcm0gc2FtcGxlcjJEIHVfdGV4dHVyZTsgICAgIHVuaWZvcm0gdmVjNCB1X21vZHVsYXRpb247ICAgICB2YXJ5aW5nIHZlYzIgdl90ZXhDb29yZDsgICAgICAgICB2b2lkIG1haW4oKSAgICAgeyAgICAgICAgIHZlYzQgYWJnciA9IHRleHR1cmUyRCh1X3RleHR1cmUsIHZfdGV4Q29vcmQpOyAgICAgICAgIGdsX0ZyYWdDb2xvciA9IGFiZ3I7ICAgICAgICAgZ2xfRnJhZ0NvbG9yLmEgPSAxLjA7ICAgICAgICAgZ2xfRnJhZ0NvbG9yICo9IHVfbW9kdWxhdGlvbjsgICAgIH0gACAgICAgcHJlY2lzaW9uIG1lZGl1bXAgZmxvYXQ7ICAgICB1bmlmb3JtIHNhbXBsZXIyRCB1X3RleHR1cmU7ICAgICB1bmlmb3JtIHZlYzQgdV9tb2R1bGF0aW9uOyAgICAgdmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7ICAgICAgICAgdm9pZCBtYWluKCkgICAgIHsgICAgICAgICB2ZWM0IGFiZ3IgPSB0ZXh0dXJlMkQodV90ZXh0dXJlLCB2X3RleENvb3JkKTsgICAgICAgICBnbF9GcmFnQ29sb3IgPSBhYmdyOyAgICAgICAgIGdsX0ZyYWdDb2xvci5yID0gYWJnci5iOyAgICAgICAgIGdsX0ZyYWdDb2xvci5iID0gYWJnci5yOyAgICAgICAgIGdsX0ZyYWdDb2xvci5hID0gMS4wOyAgICAgICAgIGdsX0ZyYWdDb2xvciAqPSB1X21vZHVsYXRpb247ICAgICB9IAAgICAgIHByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OyAgICAgdW5pZm9ybSBzYW1wbGVyMkQgdV90ZXh0dXJlOyAgICAgdW5pZm9ybSB2ZWM0IHVfbW9kdWxhdGlvbjsgICAgIHZhcnlpbmcgdmVjMiB2X3RleENvb3JkOyAgICAgICAgIHZvaWQgbWFpbigpICAgICB7ICAgICAgICAgdmVjNCBhYmdyID0gdGV4dHVyZTJEKHVfdGV4dHVyZSwgdl90ZXhDb29yZCk7ICAgICAgICAgZ2xfRnJhZ0NvbG9yID0gYWJncjsgICAgICAgICBnbF9GcmFnQ29sb3IuciA9IGFiZ3IuYjsgICAgICAgICBnbF9GcmFnQ29sb3IuYiA9IGFiZ3IucjsgICAgICAgICBnbF9GcmFnQ29sb3IgKj0gdV9tb2R1bGF0aW9uOyAgICAgfSAAICAgICBwcmVjaXNpb24gbWVkaXVtcCBmbG9hdDsgICAgIHVuaWZvcm0gc2FtcGxlcjJEIHVfdGV4dHVyZTsgICAgIHVuaWZvcm0gdmVjNCB1X21vZHVsYXRpb247ICAgICB2YXJ5aW5nIHZlYzIgdl90ZXhDb29yZDsgICAgICAgICB2b2lkIG1haW4oKSAgICAgeyAgICAgICAgIGdsX0ZyYWdDb2xvciA9IHRleHR1cmUyRCh1X3RleHR1cmUsIHZfdGV4Q29vcmQpOyAgICAgICAgIGdsX0ZyYWdDb2xvciAqPSB1X21vZHVsYXRpb247ICAgICB9IAAgICAgIHByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OyAgICAgdW5pZm9ybSB2ZWM0IHVfY29sb3I7ICAgICAgICAgdm9pZCBtYWluKCkgICAgIHsgICAgICAgICBnbF9GcmFnQ29sb3IgPSB1X2NvbG9yOyAgICAgfSAAICAgICB1bmlmb3JtIG1hdDQgdV9wcm9qZWN0aW9uOyAgICAgYXR0cmlidXRlIHZlYzIgYV9wb3NpdGlvbjsgICAgIGF0dHJpYnV0ZSB2ZWMyIGFfdGV4Q29vcmQ7ICAgICBhdHRyaWJ1dGUgZmxvYXQgYV9hbmdsZTsgICAgIGF0dHJpYnV0ZSB2ZWMyIGFfY2VudGVyOyAgICAgdmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7ICAgICAgICAgdm9pZCBtYWluKCkgICAgIHsgICAgICAgICBmbG9hdCBhbmdsZSA9IHJhZGlhbnMoYV9hbmdsZSk7ICAgICAgICAgZmxvYXQgYyA9IGNvcyhhbmdsZSk7ICAgICAgICAgZmxvYXQgcyA9IHNpbihhbmdsZSk7ICAgICAgICAgbWF0MiByb3RhdGlvbk1hdHJpeCA9IG1hdDIoYywgLXMsIHMsIGMpOyAgICAgICAgIHZlYzIgcG9zaXRpb24gPSByb3RhdGlvbk1hdHJpeCAqIChhX3Bvc2l0aW9uIC0gYV9jZW50ZXIpICsgYV9jZW50ZXI7ICAgICAgICAgdl90ZXhDb29yZCA9IGFfdGV4Q29vcmQ7ICAgICAgICAgZ2xfUG9zaXRpb24gPSB1X3Byb2plY3Rpb24gKiB2ZWM0KHBvc2l0aW9uLCAwLjAsIDEuMCk7ICAgICAgICBnbF9Qb2ludFNpemUgPSAxLjA7ICAgICB9IAAgICAgIHByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OyAgICAgdW5pZm9ybSBzYW1wbGVyMkQgdV90ZXh0dXJlOyAgICAgdW5pZm9ybSBzYW1wbGVyMkQgdV90ZXh0dXJlX3U7ICAgICB1bmlmb3JtIHNhbXBsZXIyRCB1X3RleHR1cmVfdjsgICAgIHVuaWZvcm0gdmVjNCB1X21vZHVsYXRpb247ICAgICB2YXJ5aW5nIHZlYzIgdl90ZXhDb29yZDsgICAgICAgICB2b2lkIG1haW4oKSAgICAgeyAgICAgICAgIG1lZGl1bXAgdmVjMyB5dXY7ICAgICAgICAgbG93cCB2ZWMzIHJnYjsgICAgICAgICB5dXYueCA9IHRleHR1cmUyRCh1X3RleHR1cmUsICAgdl90ZXhDb29yZCkucjsgICAgICAgICB5dXYueSA9IHRleHR1cmUyRCh1X3RleHR1cmVfdSwgdl90ZXhDb29yZCkuciAtIDAuNTsgICAgICAgICB5dXYueiA9IHRleHR1cmUyRCh1X3RleHR1cmVfdiwgdl90ZXhDb29yZCkuciAtIDAuNTsgICAgICAgICByZ2IgPSBtYXQzKCAxLCAgICAgICAgMSwgICAgICAgMSwgICAgICAgICAgICAgICAgICAgICAwLCAgICAgICAtMC4zOTQ2NSwgMi4wMzIxMSwgICAgICAgICAgICAgICAgICAgICAxLjEzOTgzLCAtMC41ODA2MCwgMCkgKiB5dXY7ICAgICAgICAgZ2xfRnJhZ0NvbG9yID0gdmVjNChyZ2IsIDEpOyAgICAgICAgIGdsX0ZyYWdDb2xvciAqPSB1X21vZHVsYXRpb247ICAgICB9IAAgICAgIHByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OyAgICAgdW5pZm9ybSBzYW1wbGVyMkQgdV90ZXh0dXJlOyAgICAgdW5pZm9ybSBzYW1wbGVyMkQgdV90ZXh0dXJlX3U7ICAgICB1bmlmb3JtIHZlYzQgdV9tb2R1bGF0aW9uOyAgICAgdmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7ICAgICAgICAgdm9pZCBtYWluKCkgICAgIHsgICAgICAgICBtZWRpdW1wIHZlYzMgeXV2OyAgICAgICAgIGxvd3AgdmVjMyByZ2I7ICAgICAgICAgeXV2LnggPSB0ZXh0dXJlMkQodV90ZXh0dXJlLCAgIHZfdGV4Q29vcmQpLnI7ICAgICAgICAgeXV2Lnl6ID0gdGV4dHVyZTJEKHVfdGV4dHVyZV91LCB2X3RleENvb3JkKS5yYSAtIDAuNTsgICAgICAgICByZ2IgPSBtYXQzKCAxLCAgICAgICAgMSwgICAgICAgMSwgICAgICAgICAgICAgICAgICAgICAwLCAgICAgICAtMC4zOTQ2NSwgMi4wMzIxMSwgICAgICAgICAgICAgICAgICAgICAxLjEzOTgzLCAtMC41ODA2MCwgMCkgKiB5dXY7ICAgICAgICAgZ2xfRnJhZ0NvbG9yID0gdmVjNChyZ2IsIDEpOyAgICAgICAgIGdsX0ZyYWdDb2xvciAqPSB1X21vZHVsYXRpb247ICAgICB9IAAgICAgIHByZWNpc2lvbiBtZWRpdW1wIGZsb2F0OyAgICAgdW5pZm9ybSBzYW1wbGVyMkQgdV90ZXh0dXJlOyAgICAgdW5pZm9ybSBzYW1wbGVyMkQgdV90ZXh0dXJlX3U7ICAgICB1bmlmb3JtIHZlYzQgdV9tb2R1bGF0aW9uOyAgICAgdmFyeWluZyB2ZWMyIHZfdGV4Q29vcmQ7ICAgICAgICAgdm9pZCBtYWluKCkgICAgIHsgICAgICAgICBtZWRpdW1wIHZlYzMgeXV2OyAgICAgICAgIGxvd3AgdmVjMyByZ2I7ICAgICAgICAgeXV2LnggPSB0ZXh0dXJlMkQodV90ZXh0dXJlLCAgIHZfdGV4Q29vcmQpLnI7ICAgICAgICAgeXV2Lnl6ID0gdGV4dHVyZTJEKHVfdGV4dHVyZV91LCB2X3RleENvb3JkKS5hciAtIDAuNTsgICAgICAgICByZ2IgPSBtYXQzKCAxLCAgICAgICAgMSwgICAgICAgMSwgICAgICAgICAgICAgICAgICAgICAwLCAgICAgICAtMC4zOTQ2NSwgMi4wMzIxMSwgICAgICAgICAgICAgICAgICAgICAxLjEzOTgzLCAtMC41ODA2MCwgMCkgKiB5dXY7ICAgICAgICAgZ2xfRnJhZ0NvbG9yID0gdmVjNChyZ2IsIDEpOyAgICAgICAgIGdsX0ZyYWdDb2xvciAqPSB1X21vZHVsYXRpb247ICAgICB9IABpbnQgR0xFUzJfUmVuZGVyQ29weShTRExfUmVuZGVyZXIgKiwgU0RMX1RleHR1cmUgKiwgY29uc3QgU0RMX1JlY3QgKiwgY29uc3QgU0RMX0ZSZWN0ICopAGludCBHTEVTMl9SZW5kZXJGaWxsUmVjdHMoU0RMX1JlbmRlcmVyICosIGNvbnN0IFNETF9GUmVjdCAqLCBpbnQpAGludCBHTEVTMl9SZW5kZXJEcmF3TGluZXMoU0RMX1JlbmRlcmVyICosIGNvbnN0IFNETF9GUG9pbnQgKiwgaW50KQBpbnQgR0xFUzJfVXBkYXRlVmlld3BvcnQoU0RMX1JlbmRlcmVyICopAGdsRnJhbWVidWZmZXJUZXh0dXJlMkQoKSBmYWlsZWQAZ2xUZXhTdWJJbWFnZTJEKCkAaW50IEdMRVMyX1VwZGF0ZVRleHR1cmVZVVYoU0RMX1JlbmRlcmVyICosIFNETF9UZXh0dXJlICosIGNvbnN0IFNETF9SZWN0ICosIGNvbnN0IFVpbnQ4ICosIGludCwgY29uc3QgVWludDggKiwgaW50LCBjb25zdCBVaW50OCAqLCBpbnQpAGludCBHTEVTMl9VcGRhdGVUZXh0dXJlKFNETF9SZW5kZXJlciAqLCBTRExfVGV4dHVyZSAqLCBjb25zdCBTRExfUmVjdCAqLCBjb25zdCB2b2lkICosIGludCkAVGV4dHVyZSBmb3JtYXQgbm90IHN1cHBvcnRlZABpbnQgR0xFUzJfQ3JlYXRlVGV4dHVyZShTRExfUmVuZGVyZXIgKiwgU0RMX1RleHR1cmUgKikAZ2xHZW5UZXh1cmVzKCkAZ2xUZXhJbWFnZTJEKCkATm8gT3BlbkdMIGNvbnRleHQgaGFzIGJlZW4gbWFkZSBjdXJyZW50AFNldHRpbmcgdGhlIHN3YXAgaW50ZXJ2YWwgaXMgbm90IHN1cHBvcnRlZAAlcwAlczogJXMKAFZFUkJPU0UAREVCVUcASU5GTwBXQVJOAEVSUk9SAENSSVRJQ0FMAE5vIEdMIGRyaXZlciBoYXMgYmVlbiBsb2FkZWQATm8gZHluYW1pYyBHTCBzdXBwb3J0IGluIHZpZGVvIGRyaXZlcgBpZAB2b2lkIEdMRVMyX0Rlc3Ryb3lSZW5kZXJlcihTRExfUmVuZGVyZXIgKikAT3V0IG9mIG1lbW9yeQBFcnJvciByZWFkaW5nIGZyb20gZGF0YXN0cmVhbQBFcnJvciB3cml0aW5nIHRvIGRhdGFzdHJlYW0ARXJyb3Igc2Vla2luZyBpbiBkYXRhc3RyZWFtAFRoYXQgb3BlcmF0aW9uIGlzIG5vdCBzdXBwb3J0ZWQATm8gT3BlbkdMIHN1cHBvcnQgaW4gdmlkZW8gZHJpdmVyAEVSUk9SOiBOdW1Qb2ludHMgPSAlaQoAVGhlIGV2ZW50IHN5c3RlbSBoYXMgYmVlbiBzaHV0IGRvd24ARXZlbnQgcXVldWUgaXMgZnVsbCAoJWQgZXZlbnRzKQBWaWRlbyBkcml2ZXIgZG9lc24ndCBzdXBwb3J0IGNoYW5naW5nIGRpc3BsYXkgbW9kZQBObyB2aWRlbyBtb2RlIGxhcmdlIGVub3VnaCBmb3IgJWR4JWQATWlzc2luZyBkZXNpcmVkIG1vZGUgb3IgY2xvc2VzdCBtb2RlIHBhcmFtZXRlcgBtb2RlAENvdWxkbid0IGZpbmQgZGlzcGxheSBtb2RlIG1hdGNoAENvdWxkbid0IGZpbmQgYW55IGRpc3BsYXlzAGRpc3BsYXlJbmRleCBtdXN0IGJlIGluIHRoZSByYW5nZSAwIC0gJWQAVW5rbm93biBPcGVuR0wgY29udGV4dCBwcm9maWxlICVkAFdpbmRvdyBzdXJmYWNlIGlzIGludmFsaWQsIHBsZWFzZSBjYWxsIFNETF9HZXRXaW5kb3dTdXJmYWNlKCkgdG8gZ2V0IGEgbmV3IHN1cmZhY2UAVHJpZWQgdG8gcmVhZCBvdXRzaWRlIG9mIHN1cmZhY2UgYm91bmRzAFNETF9SRU5ERVJfU0NBTEVfUVVBTElUWQBuZWFyZXN0AFNETF9VcHBlckJsaXQ6IHBhc3NlZCBhIE5VTEwgc3VyZmFjZQBTdXJmYWNlcyBtdXN0IG5vdCBiZSBsb2NrZWQgZHVyaW5nIGJsaXQARW1wdHkgZGVzdGluYXRpb24gcGFsZXR0ZQBVbmtub3duIHBpeGVsIGZvcm1hdABrZXkAcGFsZXR0ZQBuY29sb3JzAFNETF9VcHBlckJsaXRTY2FsZWQ6IHBhc3NlZCBhIE5VTEwgc3VyZmFjZQBPbmx5IHdvcmtzIHdpdGggc2FtZSBmb3JtYXQgc3VyZmFjZXMASW52YWxpZCBzb3VyY2UgYmxpdCByZWN0YW5nbGUASW52YWxpZCBkZXN0aW5hdGlvbiBibGl0IHJlY3RhbmdsZQBzdXJmYWNlAFNETF9CbGVuZEZpbGxSZWN0cygpOiBVbnN1cHBvcnRlZCBzdXJmYWNlIGZvcm1hdABTRExfQmxlbmRMaW5lcygpOiBQYXNzZWQgTlVMTCBkZXN0aW5hdGlvbiBzdXJmYWNlAFNETF9CbGVuZExpbmVzKCk6IFVuc3VwcG9ydGVkIHN1cmZhY2UgZm9ybWF0AFNETF9CbGVuZFBvaW50KCk6IFVuc3VwcG9ydGVkIHN1cmZhY2UgZm9ybWF0AHJlY3QAWDEAWTEAWDIAWTIAU0RMX0RyYXdMaW5lcygpOiBQYXNzZWQgTlVMTCBkZXN0aW5hdGlvbiBzdXJmYWNlAFNETF9EcmF3TGluZXMoKTogVW5zdXBwb3J0ZWQgc3VyZmFjZSBmb3JtYXQAUGFzc2VkIE5VTEwgZGVzdGluYXRpb24gc3VyZmFjZQBTRExfRHJhd1BvaW50KCk6IFVuc3VwcG9ydGVkIHN1cmZhY2UgZm9ybWF0AFNETF9CbGVuZFBvaW50cygpOiBVbnN1cHBvcnRlZCBzdXJmYWNlIGZvcm1hdABTRExfRHJhd1BvaW50cygpOiBVbnN1cHBvcnRlZCBzdXJmYWNlIGZvcm1hdABVbmtub3duIHRleHR1cmUgZm9ybWF0AFNvZnR3YXJlIHJlbmRlcmVyIGRvZXNuJ3QgaGF2ZSBhbiBvdXRwdXQgc3VyZmFjZQBTREwgZW1zY3JpcHRlbiB2aWRlbyBkcml2ZXIAU0RMX1ZJREVPX01JTklNSVpFX09OX0ZPQ1VTX0xPU1MARUdMIG5vdCBpbml0aWFsaXplZABVbmFibGUgdG8gc2V0IHRoZSBFR0wgc3dhcCBpbnRlcnZhbABPcGVuR0wgbm90IGluaXRpYWxpemVkAFVuYWJsZSB0byBtYWtlIEVHTCBjb250ZXh0IGN1cnJlbnQAQ291bGQgbm90IGNyZWF0ZSBFR0wgY29udGV4dCAoY29udGV4dCBhdHRyaWJ1dGVzIGFyZSBub3Qgc3VwcG9ydGVkKQBDb3VsZCBub3QgY3JlYXRlIEVHTCBjb250ZXh0AENvdWxkIG5vdCBtYWtlIEVHTCBjb250ZXh0IGN1cnJlbnQARmFpbGVkIGxvYWRpbmcgJXM6ICVzAENvdWxkIG5vdCBnZXQgRUdMIGRpc3BsYXkAQ291bGQgbm90IGluaXRpYWxpemUgRUdMAENvdWxkbid0IGZpbmQgZnJhbWVidWZmZXIgc3VyZmFjZSBmb3Igd2luZG93AHsgdmFyIHcgPSAkMDsgdmFyIGggPSAkMTsgdmFyIHBpeGVscyA9ICQyOyBpZiAoIU1vZHVsZVsnU0RMMiddKSBNb2R1bGVbJ1NETDInXSA9IHt9OyB2YXIgU0RMMiA9IE1vZHVsZVsnU0RMMiddOyBpZiAoU0RMMi5jdHhDYW52YXMgIT09IE1vZHVsZVsnY2FudmFzJ10pIHsgU0RMMi5jdHggPSBNb2R1bGVbJ2NyZWF0ZUNvbnRleHQnXShNb2R1bGVbJ2NhbnZhcyddLCBmYWxzZSwgdHJ1ZSk7IFNETDIuY3R4Q2FudmFzID0gTW9kdWxlWydjYW52YXMnXTsgfSBpZiAoU0RMMi53ICE9PSB3IHx8IFNETDIuaCAhPT0gaCB8fCBTREwyLmltYWdlQ3R4ICE9PSBTREwyLmN0eCkgeyBTREwyLmltYWdlID0gU0RMMi5jdHguY3JlYXRlSW1hZ2VEYXRhKHcsIGgpOyBTREwyLncgPSB3OyBTREwyLmggPSBoOyBTREwyLmltYWdlQ3R4ID0gU0RMMi5jdHg7IH0gdmFyIGRhdGEgPSBTREwyLmltYWdlLmRhdGE7IHZhciBzcmMgPSBwaXhlbHMgPj4gMjsgdmFyIGRzdCA9IDA7IHZhciBudW07IGlmICh0eXBlb2YgQ2FudmFzUGl4ZWxBcnJheSAhPT0gJ3VuZGVmaW5lZCcgJiYgZGF0YSBpbnN0YW5jZW9mIENhbnZhc1BpeGVsQXJyYXkpIHsgbnVtID0gZGF0YS5sZW5ndGg7IHdoaWxlIChkc3QgPCBudW0pIHsgdmFyIHZhbCA9IEhFQVAzMltzcmNdOyBkYXRhW2RzdCBdID0gdmFsICYgMHhmZjsgZGF0YVtkc3QrMV0gPSAodmFsID4+IDgpICYgMHhmZjsgZGF0YVtkc3QrMl0gPSAodmFsID4+IDE2KSAmIDB4ZmY7IGRhdGFbZHN0KzNdID0gMHhmZjsgc3JjKys7IGRzdCArPSA0OyB9IH0gZWxzZSB7IGlmIChTREwyLmRhdGEzMkRhdGEgIT09IGRhdGEpIHsgU0RMMi5kYXRhMzIgPSBuZXcgSW50MzJBcnJheShkYXRhLmJ1ZmZlcik7IFNETDIuZGF0YTggPSBuZXcgVWludDhBcnJheShkYXRhLmJ1ZmZlcik7IH0gdmFyIGRhdGEzMiA9IFNETDIuZGF0YTMyOyBudW0gPSBkYXRhMzIubGVuZ3RoOyBkYXRhMzIuc2V0KEhFQVAzMi5zdWJhcnJheShzcmMsIHNyYyArIG51bSkpOyB2YXIgZGF0YTggPSBTREwyLmRhdGE4OyB2YXIgaSA9IDM7IHZhciBqID0gaSArIDQqbnVtOyBpZiAobnVtICUgOCA9PSAwKSB7IHdoaWxlIChpIDwgaikgeyBkYXRhOFtpXSA9IDB4ZmY7IGkgPSBpICsgNCB8IDA7IGRhdGE4W2ldID0gMHhmZjsgaSA9IGkgKyA0IHwgMDsgZGF0YThbaV0gPSAweGZmOyBpID0gaSArIDQgfCAwOyBkYXRhOFtpXSA9IDB4ZmY7IGkgPSBpICsgNCB8IDA7IGRhdGE4W2ldID0gMHhmZjsgaSA9IGkgKyA0IHwgMDsgZGF0YThbaV0gPSAweGZmOyBpID0gaSArIDQgfCAwOyBkYXRhOFtpXSA9IDB4ZmY7IGkgPSBpICsgNCB8IDA7IGRhdGE4W2ldID0gMHhmZjsgaSA9IGkgKyA0IHwgMDsgfSB9IGVsc2UgeyB3aGlsZSAoaSA8IGopIHsgZGF0YThbaV0gPSAweGZmOyBpID0gaSArIDQgfCAwOyB9IH0gfSBTREwyLmN0eC5wdXRJbWFnZURhdGEoU0RMMi5pbWFnZSwgMCwgMCk7IHJldHVybiAwOyB9ACNjYW52YXMAI2RvY3VtZW50ACN3aW5kb3cAU0RMX0VNU0NSSVBURU5fS0VZQk9BUkRfRUxFTUVOVAB7IGlmICh0eXBlb2YgTW9kdWxlWydzZXRXaW5kb3dUaXRsZSddICE9PSAndW5kZWZpbmVkJykgeyBNb2R1bGVbJ3NldFdpbmRvd1RpdGxlJ10oTW9kdWxlWydQb2ludGVyX3N0cmluZ2lmeSddKCQwKSk7IH0gcmV0dXJuIDA7IH0AQ291bGQgbm90IGNyZWF0ZSBHTEVTIHdpbmRvdyBzdXJmYWNlAFVua25vd24gdG91Y2ggZGV2aWNlAEVHTCBpbXBsZW1lbnRhdGlvbiBkb2VzIG5vdCBzdXBwb3J0IHNSR0Igc3lzdGVtIGZyYW1lYnVmZmVycwBDb3VsZG4ndCBmaW5kIG1hdGNoaW5nIEVHTCBjb25maWcAeyByZXR1cm4gc2NyZWVuLndpZHRoOyB9AHsgcmV0dXJuIHNjcmVlbi5oZWlnaHQ7IH0AZGVmYXVsdABwb2ludGVyAG5vdC1hbGxvd2VkAG5zLXJlc2l6ZQBldy1yZXNpemUAbmVzdy1yZXNpemUAbndzZS1yZXNpemUAcHJvZ3Jlc3MAY3Jvc3NoYWlyAHdhaXQAdGV4dAB7IGlmIChNb2R1bGVbJ2NhbnZhcyddKSB7IE1vZHVsZVsnY2FudmFzJ10uc3R5bGVbJ2N1cnNvciddID0gTW9kdWxlWydQb2ludGVyX3N0cmluZ2lmeSddKCQwKTsgfSByZXR1cm4gMDsgfQBpZiAoTW9kdWxlWydjYW52YXMnXSkgeyBNb2R1bGVbJ2NhbnZhcyddLnN0eWxlWydjdXJzb3InXSA9ICdub25lJzsgfQB7IHZhciB3ID0gJDA7IHZhciBoID0gJDE7IHZhciBwaXhlbHMgPSAkMjsgdmFyIGNhbnZhcyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImNhbnZhcyIpOyBjYW52YXMud2lkdGggPSB3OyBjYW52YXMuaGVpZ2h0ID0gaDsgdmFyIGN0eCA9IGNhbnZhcy5nZXRDb250ZXh0KCIyZCIpOyB2YXIgaW1hZ2UgPSBjdHguY3JlYXRlSW1hZ2VEYXRhKHcsIGgpOyB2YXIgZGF0YSA9IGltYWdlLmRhdGE7IHZhciBzcmMgPSBwaXhlbHMgPj4gMjsgdmFyIGRzdCA9IDA7IHZhciBudW07IGlmICh0eXBlb2YgQ2FudmFzUGl4ZWxBcnJheSAhPT0gJ3VuZGVmaW5lZCcgJiYgZGF0YSBpbnN0YW5jZW9mIENhbnZhc1BpeGVsQXJyYXkpIHsgbnVtID0gZGF0YS5sZW5ndGg7IHdoaWxlIChkc3QgPCBudW0pIHsgdmFyIHZhbCA9IEhFQVAzMltzcmNdOyBkYXRhW2RzdCBdID0gdmFsICYgMHhmZjsgZGF0YVtkc3QrMV0gPSAodmFsID4+IDgpICYgMHhmZjsgZGF0YVtkc3QrMl0gPSAodmFsID4+IDE2KSAmIDB4ZmY7IGRhdGFbZHN0KzNdID0gKHZhbCA+PiAyNCkgJiAweGZmOyBzcmMrKzsgZHN0ICs9IDQ7IH0gfSBlbHNlIHsgdmFyIGRhdGEzMiA9IG5ldyBJbnQzMkFycmF5KGRhdGEuYnVmZmVyKTsgbnVtID0gZGF0YTMyLmxlbmd0aDsgZGF0YTMyLnNldChIRUFQMzIuc3ViYXJyYXkoc3JjLCBzcmMgKyBudW0pKTsgfSBjdHgucHV0SW1hZ2VEYXRhKGltYWdlLCAwLCAwKTsgdmFyIHVybCA9ICJ1cmwoIiArIGNhbnZhcy50b0RhdGFVUkwoKSArICIpLCBhdXRvIjsgdmFyIHVybEJ1ZiA9IF9tYWxsb2ModXJsLmxlbmd0aCArIDEpOyBzdHJpbmdUb1VURjgodXJsLCB1cmxCdWYsIHVybC5sZW5ndGggKyAxKTsgcmV0dXJuIHVybEJ1ZjsgfQAwMTIzNDU2Nzg5QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVpTREwgZW1zY3JpcHRlbiBhdWRpbyBkcml2ZXIAeyBpZiAodHlwZW9mKEF1ZGlvQ29udGV4dCkgIT09ICd1bmRlZmluZWQnKSB7IHJldHVybiAxOyB9IGVsc2UgaWYgKHR5cGVvZih3ZWJraXRBdWRpb0NvbnRleHQpICE9PSAndW5kZWZpbmVkJykgeyByZXR1cm4gMTsgfSByZXR1cm4gMDsgfQBObyBhdWRpbyBjb250ZXh0IGF2YWlsYWJsZQB7IGlmICgodHlwZW9mKG5hdmlnYXRvci5tZWRpYURldmljZXMpICE9PSAndW5kZWZpbmVkJykgJiYgKHR5cGVvZihuYXZpZ2F0b3IubWVkaWFEZXZpY2VzLmdldFVzZXJNZWRpYSkgIT09ICd1bmRlZmluZWQnKSkgeyByZXR1cm4gMTsgfSBlbHNlIGlmICh0eXBlb2YobmF2aWdhdG9yLndlYmtpdEdldFVzZXJNZWRpYSkgIT09ICd1bmRlZmluZWQnKSB7IHJldHVybiAxOyB9IHJldHVybiAwOyB9AHsgaWYgKCQwKSB7IGlmIChTREwyLmNhcHR1cmUuc2lsZW5jZVRpbWVyICE9PSB1bmRlZmluZWQpIHsgY2xlYXJUaW1lb3V0KFNETDIuY2FwdHVyZS5zaWxlbmNlVGltZXIpOyB9IGlmIChTREwyLmNhcHR1cmUuc3RyZWFtICE9PSB1bmRlZmluZWQpIHsgdmFyIHRyYWNrcyA9IFNETDIuY2FwdHVyZS5zdHJlYW0uZ2V0QXVkaW9UcmFja3MoKTsgZm9yICh2YXIgaSA9IDA7IGkgPCB0cmFja3MubGVuZ3RoOyBpKyspIHsgU0RMMi5jYXB0dXJlLnN0cmVhbS5yZW1vdmVUcmFjayh0cmFja3NbaV0pOyB9IFNETDIuY2FwdHVyZS5zdHJlYW0gPSB1bmRlZmluZWQ7IH0gaWYgKFNETDIuY2FwdHVyZS5zY3JpcHRQcm9jZXNzb3JOb2RlICE9PSB1bmRlZmluZWQpIHsgU0RMMi5jYXB0dXJlLnNjcmlwdFByb2Nlc3Nvck5vZGUub25hdWRpb3Byb2Nlc3MgPSBmdW5jdGlvbihhdWRpb1Byb2Nlc3NpbmdFdmVudCkge307IFNETDIuY2FwdHVyZS5zY3JpcHRQcm9jZXNzb3JOb2RlLmRpc2Nvbm5lY3QoKTsgU0RMMi5jYXB0dXJlLnNjcmlwdFByb2Nlc3Nvck5vZGUgPSB1bmRlZmluZWQ7IH0gaWYgKFNETDIuY2FwdHVyZS5tZWRpYVN0cmVhbU5vZGUgIT09IHVuZGVmaW5lZCkgeyBTREwyLmNhcHR1cmUubWVkaWFTdHJlYW1Ob2RlLmRpc2Nvbm5lY3QoKTsgU0RMMi5jYXB0dXJlLm1lZGlhU3RyZWFtTm9kZSA9IHVuZGVmaW5lZDsgfSBpZiAoU0RMMi5jYXB0dXJlLnNpbGVuY2VCdWZmZXIgIT09IHVuZGVmaW5lZCkgeyBTREwyLmNhcHR1cmUuc2lsZW5jZUJ1ZmZlciA9IHVuZGVmaW5lZCB9IFNETDIuY2FwdHVyZSA9IHVuZGVmaW5lZDsgfSBlbHNlIHsgaWYgKFNETDIuYXVkaW8uc2NyaXB0UHJvY2Vzc29yTm9kZSAhPSB1bmRlZmluZWQpIHsgU0RMMi5hdWRpby5zY3JpcHRQcm9jZXNzb3JOb2RlLmRpc2Nvbm5lY3QoKTsgU0RMMi5hdWRpby5zY3JpcHRQcm9jZXNzb3JOb2RlID0gdW5kZWZpbmVkOyB9IFNETDIuYXVkaW8gPSB1bmRlZmluZWQ7IH0gaWYgKChTREwyLmF1ZGlvQ29udGV4dCAhPT0gdW5kZWZpbmVkKSAmJiAoU0RMMi5hdWRpbyA9PT0gdW5kZWZpbmVkKSAmJiAoU0RMMi5jYXB0dXJlID09PSB1bmRlZmluZWQpKSB7IFNETDIuYXVkaW9Db250ZXh0LmNsb3NlKCk7IFNETDIuYXVkaW9Db250ZXh0ID0gdW5kZWZpbmVkOyB9IH0AeyBpZih0eXBlb2YoU0RMMikgPT09ICd1bmRlZmluZWQnKSB7IFNETDIgPSB7fTsgfSBpZiAoISQwKSB7IFNETDIuYXVkaW8gPSB7fTsgfSBlbHNlIHsgU0RMMi5jYXB0dXJlID0ge307IH0gaWYgKCFTREwyLmF1ZGlvQ29udGV4dCkgeyBpZiAodHlwZW9mKEF1ZGlvQ29udGV4dCkgIT09ICd1bmRlZmluZWQnKSB7IFNETDIuYXVkaW9Db250ZXh0ID0gbmV3IEF1ZGlvQ29udGV4dCgpOyB9IGVsc2UgaWYgKHR5cGVvZih3ZWJraXRBdWRpb0NvbnRleHQpICE9PSAndW5kZWZpbmVkJykgeyBTREwyLmF1ZGlvQ29udGV4dCA9IG5ldyB3ZWJraXRBdWRpb0NvbnRleHQoKTsgfSB9IHJldHVybiBTREwyLmF1ZGlvQ29udGV4dCA9PT0gdW5kZWZpbmVkID8gLTEgOiAwOyB9AFdlYiBBdWRpbyBBUEkgaXMgbm90IGF2YWlsYWJsZSEATm8gY29tcGF0aWJsZSBhdWRpbyBmb3JtYXQhAHsgcmV0dXJuIFNETDIuYXVkaW9Db250ZXh0LnNhbXBsZVJhdGU7IH0AeyB2YXIgaGF2ZV9taWNyb3Bob25lID0gZnVuY3Rpb24oc3RyZWFtKSB7IGlmIChTREwyLmNhcHR1cmUuc2lsZW5jZVRpbWVyICE9PSB1bmRlZmluZWQpIHsgY2xlYXJUaW1lb3V0KFNETDIuY2FwdHVyZS5zaWxlbmNlVGltZXIpOyBTREwyLmNhcHR1cmUuc2lsZW5jZVRpbWVyID0gdW5kZWZpbmVkOyB9IFNETDIuY2FwdHVyZS5tZWRpYVN0cmVhbU5vZGUgPSBTREwyLmF1ZGlvQ29udGV4dC5jcmVhdGVNZWRpYVN0cmVhbVNvdXJjZShzdHJlYW0pOyBTREwyLmNhcHR1cmUuc2NyaXB0UHJvY2Vzc29yTm9kZSA9IFNETDIuYXVkaW9Db250ZXh0LmNyZWF0ZVNjcmlwdFByb2Nlc3NvcigkMSwgJDAsIDEpOyBTREwyLmNhcHR1cmUuc2NyaXB0UHJvY2Vzc29yTm9kZS5vbmF1ZGlvcHJvY2VzcyA9IGZ1bmN0aW9uKGF1ZGlvUHJvY2Vzc2luZ0V2ZW50KSB7IGlmICgoU0RMMiA9PT0gdW5kZWZpbmVkKSB8fCAoU0RMMi5jYXB0dXJlID09PSB1bmRlZmluZWQpKSB7IHJldHVybjsgfSBhdWRpb1Byb2Nlc3NpbmdFdmVudC5vdXRwdXRCdWZmZXIuZ2V0Q2hhbm5lbERhdGEoMCkuZmlsbCgwLjApOyBTREwyLmNhcHR1cmUuY3VycmVudENhcHR1cmVCdWZmZXIgPSBhdWRpb1Byb2Nlc3NpbmdFdmVudC5pbnB1dEJ1ZmZlcjsgUnVudGltZS5keW5DYWxsKCd2aScsICQyLCBbJDNdKTsgfTsgU0RMMi5jYXB0dXJlLm1lZGlhU3RyZWFtTm9kZS5jb25uZWN0KFNETDIuY2FwdHVyZS5zY3JpcHRQcm9jZXNzb3JOb2RlKTsgU0RMMi5jYXB0dXJlLnNjcmlwdFByb2Nlc3Nvck5vZGUuY29ubmVjdChTREwyLmF1ZGlvQ29udGV4dC5kZXN0aW5hdGlvbik7IFNETDIuY2FwdHVyZS5zdHJlYW0gPSBzdHJlYW07IH07IHZhciBub19taWNyb3Bob25lID0gZnVuY3Rpb24oZXJyb3IpIHsgfTsgU0RMMi5jYXB0dXJlLnNpbGVuY2VCdWZmZXIgPSBTREwyLmF1ZGlvQ29udGV4dC5jcmVhdGVCdWZmZXIoJDAsICQxLCBTREwyLmF1ZGlvQ29udGV4dC5zYW1wbGVSYXRlKTsgU0RMMi5jYXB0dXJlLnNpbGVuY2VCdWZmZXIuZ2V0Q2hhbm5lbERhdGEoMCkuZmlsbCgwLjApOyB2YXIgc2lsZW5jZV9jYWxsYmFjayA9IGZ1bmN0aW9uKCkgeyBTREwyLmNhcHR1cmUuY3VycmVudENhcHR1cmVCdWZmZXIgPSBTREwyLmNhcHR1cmUuc2lsZW5jZUJ1ZmZlcjsgUnVudGltZS5keW5DYWxsKCd2aScsICQyLCBbJDNdKTsgfTsgU0RMMi5jYXB0dXJlLnNpbGVuY2VUaW1lciA9IHNldFRpbWVvdXQoc2lsZW5jZV9jYWxsYmFjaywgKCQxIC8gU0RMMi5hdWRpb0NvbnRleHQuc2FtcGxlUmF0ZSkgKiAxMDAwKTsgaWYgKChuYXZpZ2F0b3IubWVkaWFEZXZpY2VzICE9PSB1bmRlZmluZWQpICYmIChuYXZpZ2F0b3IubWVkaWFEZXZpY2VzLmdldFVzZXJNZWRpYSAhPT0gdW5kZWZpbmVkKSkgeyBuYXZpZ2F0b3IubWVkaWFEZXZpY2VzLmdldFVzZXJNZWRpYSh7IGF1ZGlvOiB0cnVlLCB2aWRlbzogZmFsc2UgfSkudGhlbihoYXZlX21pY3JvcGhvbmUpLmNhdGNoKG5vX21pY3JvcGhvbmUpOyB9IGVsc2UgaWYgKG5hdmlnYXRvci53ZWJraXRHZXRVc2VyTWVkaWEgIT09IHVuZGVmaW5lZCkgeyBuYXZpZ2F0b3Iud2Via2l0R2V0VXNlck1lZGlhKHsgYXVkaW86IHRydWUsIHZpZGVvOiBmYWxzZSB9LCBoYXZlX21pY3JvcGhvbmUsIG5vX21pY3JvcGhvbmUpOyB9IH0AeyBTREwyLmF1ZGlvLnNjcmlwdFByb2Nlc3Nvck5vZGUgPSBTREwyLmF1ZGlvQ29udGV4dFsnY3JlYXRlU2NyaXB0UHJvY2Vzc29yJ10oJDEsIDAsICQwKTsgU0RMMi5hdWRpby5zY3JpcHRQcm9jZXNzb3JOb2RlWydvbmF1ZGlvcHJvY2VzcyddID0gZnVuY3Rpb24gKGUpIHsgaWYgKChTREwyID09PSB1bmRlZmluZWQpIHx8IChTREwyLmF1ZGlvID09PSB1bmRlZmluZWQpKSB7IHJldHVybjsgfSBTREwyLmF1ZGlvLmN1cnJlbnRPdXRwdXRCdWZmZXIgPSBlWydvdXRwdXRCdWZmZXInXTsgUnVudGltZS5keW5DYWxsKCd2aScsICQyLCBbJDNdKTsgfTsgU0RMMi5hdWRpby5zY3JpcHRQcm9jZXNzb3JOb2RlWydjb25uZWN0J10oU0RMMi5hdWRpb0NvbnRleHRbJ2Rlc3RpbmF0aW9uJ10pOyB9AHsgdmFyIG51bUNoYW5uZWxzID0gU0RMMi5hdWRpby5jdXJyZW50T3V0cHV0QnVmZmVyWydudW1iZXJPZkNoYW5uZWxzJ107IGZvciAodmFyIGMgPSAwOyBjIDwgbnVtQ2hhbm5lbHM7ICsrYykgeyB2YXIgY2hhbm5lbERhdGEgPSBTREwyLmF1ZGlvLmN1cnJlbnRPdXRwdXRCdWZmZXJbJ2dldENoYW5uZWxEYXRhJ10oYyk7IGlmIChjaGFubmVsRGF0YS5sZW5ndGggIT0gJDEpIHsgdGhyb3cgJ1dlYiBBdWRpbyBvdXRwdXQgYnVmZmVyIGxlbmd0aCBtaXNtYXRjaCEgRGVzdGluYXRpb24gc2l6ZTogJyArIGNoYW5uZWxEYXRhLmxlbmd0aCArICcgc2FtcGxlcyB2cyBleHBlY3RlZCAnICsgJDEgKyAnIHNhbXBsZXMhJzsgfSBmb3IgKHZhciBqID0gMDsgaiA8ICQxOyArK2opIHsgY2hhbm5lbERhdGFbal0gPSBIRUFQRjMyWyQwICsgKChqKm51bUNoYW5uZWxzICsgYykgPDwgMikgPj4gMl07IH0gfSB9AE5vIGJ1ZmZlciBhbGxvY2F0ZWQgZm9yIGNvbnZlcnNpb24AeyB2YXIgbnVtQ2hhbm5lbHMgPSBTREwyLmNhcHR1cmUuY3VycmVudENhcHR1cmVCdWZmZXIubnVtYmVyT2ZDaGFubmVsczsgaWYgKG51bUNoYW5uZWxzID09IDEpIHsgdmFyIGNoYW5uZWxEYXRhID0gU0RMMi5jYXB0dXJlLmN1cnJlbnRDYXB0dXJlQnVmZmVyLmdldENoYW5uZWxEYXRhKDApOyBpZiAoY2hhbm5lbERhdGEubGVuZ3RoICE9ICQxKSB7IHRocm93ICdXZWIgQXVkaW8gY2FwdHVyZSBidWZmZXIgbGVuZ3RoIG1pc21hdGNoISBEZXN0aW5hdGlvbiBzaXplOiAnICsgY2hhbm5lbERhdGEubGVuZ3RoICsgJyBzYW1wbGVzIHZzIGV4cGVjdGVkICcgKyAkMSArICcgc2FtcGxlcyEnOyB9IGZvciAodmFyIGogPSAwOyBqIDwgJDE7ICsraikgeyBzZXRWYWx1ZSgkMCArIChqICogNCksIGNoYW5uZWxEYXRhW2pdLCAnZmxvYXQnKTsgfSB9IGVsc2UgeyBmb3IgKHZhciBjID0gMDsgYyA8IG51bUNoYW5uZWxzOyArK2MpIHsgdmFyIGNoYW5uZWxEYXRhID0gU0RMMi5jYXB0dXJlLmN1cnJlbnRDYXB0dXJlQnVmZmVyLmdldENoYW5uZWxEYXRhKGMpOyBpZiAoY2hhbm5lbERhdGEubGVuZ3RoICE9ICQxKSB7IHRocm93ICdXZWIgQXVkaW8gY2FwdHVyZSBidWZmZXIgbGVuZ3RoIG1pc21hdGNoISBEZXN0aW5hdGlvbiBzaXplOiAnICsgY2hhbm5lbERhdGEubGVuZ3RoICsgJyBzYW1wbGVzIHZzIGV4cGVjdGVkICcgKyAkMSArICcgc2FtcGxlcyEnOyB9IGZvciAodmFyIGogPSAwOyBqIDwgJDE7ICsraikgeyBzZXRWYWx1ZSgkMCArICgoKGogKiBudW1DaGFubmVscykgKyBjKSAqIDQpLCBjaGFubmVsRGF0YVtqXSwgJ2Zsb2F0Jyk7IH0gfSB9IH0AU0RMIGR1bW15IHZpZGVvIGRyaXZlcgBfU0RMX0R1bW15U3VyZmFjZQBuYW1lAENvdWxkbid0IGZpbmQgZHVtbXkgc3VyZmFjZSBmb3Igd2luZG93AFNETF9WSURFT19EVU1NWV9TQVZFX0ZSQU1FUwBTRExfd2luZG93JWQtJTguOGQuYm1wACVkIGJwcCBCTVAgZmlsZXMgbm90IHN1cHBvcnRlZABDb3VsZG4ndCBjb252ZXJ0IGltYWdlIHRvICVkIGJwcABTRExfQk1QX1NBVkVfTEVHQUNZX0ZPUk1BVABTRExfUldGcm9tRmlsZSgpOiBObyBmaWxlIG9yIG5vIG1vZGUgc3BlY2lmaWVkAENvdWxkbid0IG9wZW4gJXMAZGlzawBkaXJlY3QtdG8tZGlzayBhdWRpbwBzZGxhdWRpby1pbi5yYXcAc2RsYXVkaW8ucmF3AFNETF9ESVNLQVVESU9GSUxFSU4AU0RMX0RJU0tBVURJT0ZJTEUAU0RMX0RJU0tBVURJT0RFTEFZAHJiAHdiAFJlYWRpbmcgZnJvbQBXcml0aW5nIHRvAFdBUk5JTkc6IFlvdSBhcmUgdXNpbmcgdGhlIFNETCBkaXNrIGkvbyBhdWRpbyBkcml2ZXIhCiAlcyBmaWxlIFslc10uCgBkdW1teQBTREwgZHVtbXkgYXVkaW8gZHJpdmVyAFNETCBub3QgYnVpbHQgd2l0aCBoYXB0aWMgKGZvcmNlIGZlZWRiYWNrKSBzdXBwb3J0AGVtc2NyaXB0ZW4sU3RhbmRhcmQgR2FtZXBhZCxhOmIwLGI6YjEsYmFjazpiOCxkcGRvd246YjEzLGRwbGVmdDpiMTQsZHByaWdodDpiMTUsZHB1cDpiMTIsZ3VpZGU6YjE2LGxlZnRzaG91bGRlcjpiNCxsZWZ0c3RpY2s6YjEwLGxlZnR0cmlnZ2VyOmI2LGxlZnR4OmEwLGxlZnR5OmExLHJpZ2h0c2hvdWxkZXI6YjUscmlnaHRzdGljazpiMTEscmlnaHR0cmlnZ2VyOmI3LHJpZ2h0eDphMixyaWdodHk6YTMsc3RhcnQ6YjkseDpiMix5OmIzLABTRExfR0FNRUNPTlRST0xMRVJDT05GSUcAWGJveABYLUJveABUaGVyZSBhcmUgJWQgam95c3RpY2tzIGF2YWlsYWJsZQBTRExfR2FtZUNvbnRyb2xsZXJFdmVudFdhdGNoZXI6IEF4aXMgaW5kZXggJWQgdG9vIGxhcmdlLCBpZ25vcmluZyBtb3Rpb24AU0RMX0dhbWVDb250cm9sbGVyRXZlbnRXYXRjaGVyOiBCdXR0b24gaW5kZXggJWQgdG9vIGxhcmdlLCBpZ25vcmluZyB1cGRhdGUAbWFwcGluZ1N0cmluZwBDb3VsZG4ndCBwYXJzZSBHVUlEIGZyb20gJXMAeGlucHV0AGVtc2NyaXB0ZW4AQ291bGRuJ3QgcGFyc2UgbmFtZSBmcm9tICVzAENvdWxkbid0IHBhcnNlICVzAEJ1dHRvbiBuYW1lIHRvbyBsYXJnZTogJXMASm95c3RpY2sgYnV0dG9uIG5hbWUgdG9vIGxhcmdlOiAlcwBBeGlzIGluZGV4IHRvbyBsYXJnZTogJWQAQnV0dG9uIGluZGV4IHRvbyBsYXJnZTogJWQASGF0IGluZGV4IHRvbyBsYXJnZTogJWQAbGVmdHgAbGVmdHkAcmlnaHR4AHJpZ2h0eQBsZWZ0dHJpZ2dlcgByaWdodHRyaWdnZXIAYQBiAHgAeQBiYWNrAGd1aWRlAHN0YXJ0AGxlZnRzdGljawByaWdodHN0aWNrAGxlZnRzaG91bGRlcgByaWdodHNob3VsZGVyAGRwdXAAZHBkb3duAGRwbGVmdABkcHJpZ2h0AFNETF9KT1lTVElDS19BTExPV19CQUNLR1JPVU5EX0VWRU5UUwBDb3VsZCBub3Qgc2V0IGdhbWVwYWQgZGlzY29ubmVjdCBjYWxsYmFjawBDb3VsZCBub3Qgc2V0IGdhbWVwYWQgY29ubmVjdCBjYWxsYmFjawBHYW1lcGFkcyBub3Qgc3VwcG9ydGVkAFNETF9BVURJT0RSSVZFUgBBdWRpbyB0YXJnZXQgJyVzJyBub3QgYXZhaWxhYmxlAE5vIGF2YWlsYWJsZSBhdWRpbyBkZXZpY2UAU3lzdGVtIGF1ZGlvIG91dHB1dCBkZXZpY2UAU3lzdGVtIGF1ZGlvIGNhcHR1cmUgZGV2aWNlAFNETCBub3QgYnVpbHQgd2l0aCB0aHJlYWQgc3VwcG9ydABTRExfVklERU9EUklWRVIAJXMgbm90IGF2YWlsYWJsZQBObyBhdmFpbGFibGUgdmlkZW8gZGV2aWNlAFRoZSB2aWRlbyBkcml2ZXIgZGlkIG5vdCBhZGQgYW55IGRpc3BsYXlzAHNvZnR3YXJlAFNETF9GUkFNRUJVRkZFUl9BQ0NFTEVSQVRJT04AZmFsc2UAU0RMX1ZJREVPX0FMTE9XX1NDUkVFTlNBVkVSAF9TRExfV2luZG93VGV4dHVyZURhdGEAX1NETF9XaW5kb3dSZW5kZXJEYXRhAFRleHR1cmUgd2FzIG5vdCBjcmVhdGVkIHdpdGggdGhpcyByZW5kZXJlcgBUZXh0dXJlIG5vdCBjcmVhdGVkIHdpdGggU0RMX1RFWFRVUkVBQ0NFU1NfVEFSR0VUAE5vIHdpbmRvdyB0ZXh0dXJlIGRhdGEAcGl4ZWxzAHBpdGNoAEludmFsaWQgdGFyZ2V0IHBpeGVsIGZvcm1hdABVbnN1cHBvcnRlZCBZVVYgZGVzdGluYXRpb24gZm9ybWF0AFVuc3VwcG9ydGVkIFlVViBmb3JtYXQgaW4gY29weQBTRExfTG9ja1RleHR1cmUoKTogdGV4dHVyZSBtdXN0IGJlIHN0cmVhbWluZwBZVjEyIGFuZCBJWVVWIHRleHR1cmVzIG9ubHkgc3VwcG9ydCBmdWxsIHN1cmZhY2UgbG9ja3MAd2lkdGgAaGVpZ2h0AHJlY3RzAG51bXJlY3RzAHRydWUATm8gaGFyZHdhcmUgYWNjZWxlcmF0ZWQgcmVuZGVyZXJzIGF2YWlsYWJsZQBJbnZhbGlkIHRleHR1cmUgZm9ybWF0AFBhbGV0dGl6ZWQgdGV4dHVyZXMgYXJlIG5vdCBzdXBwb3J0ZWQAVGV4dHVyZSBkaW1lbnNpb25zIGNhbid0IGJlIDAAVGV4dHVyZSBkaW1lbnNpb25zIGFyZSBsaW1pdGVkIHRvICVkeCVkAFVuc3VwcG9ydGVkIFlVViBmb3JtYXQASW52YWxpZCB3aW5kb3cAUmVuZGVyZXIgYWxyZWFkeSBhc3NvY2lhdGVkIHdpdGggd2luZG93AFNETF9SRU5ERVJfVlNZTkMAU0RMX1JFTkRFUl9EUklWRVIAQ291bGRuJ3QgZmluZCBtYXRjaGluZyByZW5kZXIgZHJpdmVyAGluZGV4IG11c3QgYmUgLTEgb3IgaW4gdGhlIHJhbmdlIG9mIDAgLSAlZABDcmVhdGVkIHJlbmRlcmVyOiAlcwBTRExfRVZFTlRfUVVFVUVfU1RBVElTVElDUwBTREwgRVZFTlQgUVVFVUU6IE1heGltdW0gZXZlbnRzIGluLWZsaWdodDogJWQKAFNETF9OT19TSUdOQUxfSEFORExFUlMASW52YWxpZCBhdWRpbyBkZXZpY2UgSUQAVGhpcyBpcyBhIGNhcHR1cmUgZGV2aWNlLCBxdWV1ZWluZyBub3QgYWxsb3dlZABBdWRpbyBkZXZpY2UgaGFzIGEgY2FsbGJhY2ssIHF1ZXVlaW5nIG5vdCBhbGxvd2VkAEF1ZGlvIHN1YnN5c3RlbSBpcyBub3QgaW5pdGlhbGl6ZWQAVG9vIG1hbnkgb3BlbiBhdWRpbyBkZXZpY2VzAFNETF9BVURJT19TQU1QTEVTAFNETF9BVURJT19ERVZJQ0VfTkFNRQBBdWRpbyBkZXZpY2UgYWxyZWFkeSBvcGVuAE5vIHN1Y2ggZGV2aWNlLgBDb3VsZG4ndCBjcmVhdGUgbWl4ZXIgbG9jawBTRExBdWRpb0RldiVkAENvdWxkbid0IGNyZWF0ZSBhdWRpbyB0aHJlYWQASW52YWxpZCBkZXN0aW5hdGlvbiBmb3JtYXQAU291cmNlIG9yIGRlc3RpbmF0aW9uIGNoYW5uZWxzIGlzIHplcm8AU291cmNlIG9yIGRlc3RpbmF0aW9uIHJhdGUgaXMgemVybwBObyBjb252ZXJzaW9uIGF2YWlsYWJsZSBmb3IgdGhlc2UgZm9ybWF0cwBBAEIAQwBEAEUARgBHAEgASQBKAEsATABNAE4ATwBQAFEAUgBTAFQAVQBWAFcAWABZAFoAMQAyADMANAA1ADYANwA4ADkAMABSZXR1cm4ARXNjYXBlAEJhY2tzcGFjZQBUYWIAU3BhY2UALQA9AFsAXQBcACMAOwAnAGAALAAvAENhcHNMb2NrAEYxAEYyAEYzAEY0AEY1AEY2AEY3AEY4AEY5AEYxMABGMTEARjEyAFByaW50U2NyZWVuAFNjcm9sbExvY2sAUGF1c2UASW5zZXJ0AEhvbWUAUGFnZVVwAERlbGV0ZQBFbmQAUGFnZURvd24AUmlnaHQATGVmdABEb3duAFVwAE51bWxvY2sAS2V5cGFkIC8AS2V5cGFkICoAS2V5cGFkIC0AS2V5cGFkICsAS2V5cGFkIEVudGVyAEtleXBhZCAxAEtleXBhZCAyAEtleXBhZCAzAEtleXBhZCA0AEtleXBhZCA1AEtleXBhZCA2AEtleXBhZCA3AEtleXBhZCA4AEtleXBhZCA5AEtleXBhZCAwAEtleXBhZCAuAEFwcGxpY2F0aW9uAFBvd2VyAEtleXBhZCA9AEYxMwBGMTQARjE1AEYxNgBGMTcARjE4AEYxOQBGMjAARjIxAEYyMgBGMjMARjI0AEV4ZWN1dGUASGVscABNZW51AFNlbGVjdABTdG9wAEFnYWluAFVuZG8AQ3V0AENvcHkAUGFzdGUARmluZABNdXRlAFZvbHVtZVVwAFZvbHVtZURvd24AS2V5cGFkICwAS2V5cGFkID0gKEFTNDAwKQBBbHRFcmFzZQBTeXNSZXEAQ2FuY2VsAENsZWFyAFByaW9yAFNlcGFyYXRvcgBPdXQAT3BlcgBDbGVhciAvIEFnYWluAENyU2VsAEV4U2VsAEtleXBhZCAwMABLZXlwYWQgMDAwAFRob3VzYW5kc1NlcGFyYXRvcgBEZWNpbWFsU2VwYXJhdG9yAEN1cnJlbmN5VW5pdABDdXJyZW5jeVN1YlVuaXQAS2V5cGFkICgAS2V5cGFkICkAS2V5cGFkIHsAS2V5cGFkIH0AS2V5cGFkIFRhYgBLZXlwYWQgQmFja3NwYWNlAEtleXBhZCBBAEtleXBhZCBCAEtleXBhZCBDAEtleXBhZCBEAEtleXBhZCBFAEtleXBhZCBGAEtleXBhZCBYT1IAS2V5cGFkIF4AS2V5cGFkICUAS2V5cGFkIDwAS2V5cGFkID4AS2V5cGFkICYAS2V5cGFkICYmAEtleXBhZCB8AEtleXBhZCB8fABLZXlwYWQgOgBLZXlwYWQgIwBLZXlwYWQgU3BhY2UAS2V5cGFkIEAAS2V5cGFkICEAS2V5cGFkIE1lbVN0b3JlAEtleXBhZCBNZW1SZWNhbGwAS2V5cGFkIE1lbUNsZWFyAEtleXBhZCBNZW1BZGQAS2V5cGFkIE1lbVN1YnRyYWN0AEtleXBhZCBNZW1NdWx0aXBseQBLZXlwYWQgTWVtRGl2aWRlAEtleXBhZCArLy0AS2V5cGFkIENsZWFyAEtleXBhZCBDbGVhckVudHJ5AEtleXBhZCBCaW5hcnkAS2V5cGFkIE9jdGFsAEtleXBhZCBEZWNpbWFsAEtleXBhZCBIZXhhZGVjaW1hbABMZWZ0IEN0cmwATGVmdCBTaGlmdABMZWZ0IEFsdABMZWZ0IEdVSQBSaWdodCBDdHJsAFJpZ2h0IFNoaWZ0AFJpZ2h0IEFsdABSaWdodCBHVUkATW9kZVN3aXRjaABBdWRpb05leHQAQXVkaW9QcmV2AEF1ZGlvU3RvcABBdWRpb1BsYXkAQXVkaW9NdXRlAE1lZGlhU2VsZWN0AFdXVwBNYWlsAENhbGN1bGF0b3IAQ29tcHV0ZXIAQUMgU2VhcmNoAEFDIEhvbWUAQUMgQmFjawBBQyBGb3J3YXJkAEFDIFN0b3AAQUMgUmVmcmVzaABBQyBCb29rbWFya3MAQnJpZ2h0bmVzc0Rvd24AQnJpZ2h0bmVzc1VwAERpc3BsYXlTd2l0Y2gAS0JESWxsdW1Ub2dnbGUAS0JESWxsdW1Eb3duAEtCRElsbHVtVXAARWplY3QAU2xlZXAAUGFyYW1ldGVyICclcycgaXMgaW52YWxpZABzY2FuY29kZQBDdXJzb3Igbm90IGFzc29jaWF0ZWQgd2l0aCB0aGUgY3VycmVudCBtb3VzZQBDcmVhdGVTeXN0ZW1DdXJzb3IgaXMgbm90IGN1cnJlbnRseSBzdXBwb3J0ZWQAVW5rbm93biB0b3VjaCBmaW5nZXIATm8gc3VjaCBkZXZpY2UASm95c3RpY2sgYWxyZWFkeSBvcGVuZWQASm95c3RpY2sgb25seSBoYXMgJWQgYnV0dG9ucwBKb3lzdGljayBvbmx5IGhhcyAlZCBheGVzAEpveXN0aWNrIG9ubHkgaGFzICVkIGhhdHMAVmlkZW8gc3Vic3lzdGVtIG11c3QgYmUgaW5pdGlhbGl6ZWQgdG8gc2V0IGNsaXBib2FyZCB0ZXh0AFZpZGVvIHN1YnN5c3RlbSBtdXN0IGJlIGluaXRpYWxpemVkIHRvIGdldCBjbGlwYm9hcmQgdGV4dABWaWRlbyBzdWJzeXN0ZW0gbXVzdCBiZSBpbml0aWFsaXplZCB0byBjaGVjayBjbGlwYm9hcmQgdGV4dAB7IGFsZXJ0KFVURjhUb1N0cmluZygkMCkgKyAiXG5cbiIgKyBVVEY4VG9TdHJpbmcoJDEpKTsgfQBFWFQAQVJCAE9FUwBBTkdMRQBnbENyZWF0ZVByb2dyYW1PYmplY3QAZ2xDcmVhdGVQcm9ncmFtAGdsVXNlUHJvZ3JhbU9iamVjdABnbFVzZVByb2dyYW0AZ2xDcmVhdGVTaGFkZXJPYmplY3QAZ2xDcmVhdGVTaGFkZXIAZ2xBdHRhY2hPYmplY3QAZ2xBdHRhY2hTaGFkZXIAZ2xEZXRhY2hPYmplY3QAZ2xEZXRhY2hTaGFkZXIAZ2xQaXhlbFN0b3JlaQBnbEdldFN0cmluZwBnbEdldEludGVnZXJ2AGdsR2V0RmxvYXR2AGdsR2V0Qm9vbGVhbnYAZ2xHZW5UZXh0dXJlcwBnbERlbGV0ZVRleHR1cmVzAGdsQ29tcHJlc3NlZFRleEltYWdlMkQAZ2xDb21wcmVzc2VkVGV4U3ViSW1hZ2UyRABnbFRleEltYWdlMkQAZ2xUZXhTdWJJbWFnZTJEAGdsUmVhZFBpeGVscwBnbEJpbmRUZXh0dXJlAGdsR2V0VGV4UGFyYW1ldGVyZnYAZ2xHZXRUZXhQYXJhbWV0ZXJpdgBnbFRleFBhcmFtZXRlcmZ2AGdsVGV4UGFyYW1ldGVyaXYAZ2xJc1RleHR1cmUAZ2xHZW5CdWZmZXJzAGdsRGVsZXRlQnVmZmVycwBnbEdldEJ1ZmZlclBhcmFtZXRlcml2AGdsQnVmZmVyRGF0YQBnbEJ1ZmZlclN1YkRhdGEAZ2xJc0J1ZmZlcgBnbEdlblJlbmRlcmJ1ZmZlcnMAZ2xEZWxldGVSZW5kZXJidWZmZXJzAGdsQmluZFJlbmRlcmJ1ZmZlcgBnbEdldFJlbmRlcmJ1ZmZlclBhcmFtZXRlcml2AGdsSXNSZW5kZXJidWZmZXIAZ2xHZXRVbmlmb3JtZnYAZ2xHZXRVbmlmb3JtaXYAZ2xHZXRVbmlmb3JtTG9jYXRpb24AZ2xHZXRWZXJ0ZXhBdHRyaWJmdgBnbEdldFZlcnRleEF0dHJpYml2AGdsR2V0VmVydGV4QXR0cmliUG9pbnRlcnYAZ2xHZXRBY3RpdmVVbmlmb3JtAGdsVW5pZm9ybTFmAGdsVW5pZm9ybTJmAGdsVW5pZm9ybTNmAGdsVW5pZm9ybTRmAGdsVW5pZm9ybTFpAGdsVW5pZm9ybTJpAGdsVW5pZm9ybTNpAGdsVW5pZm9ybTRpAGdsVW5pZm9ybTFpdgBnbFVuaWZvcm0yaXYAZ2xVbmlmb3JtM2l2AGdsVW5pZm9ybTRpdgBnbFVuaWZvcm0xZnYAZ2xVbmlmb3JtMmZ2AGdsVW5pZm9ybTNmdgBnbFVuaWZvcm00ZnYAZ2xVbmlmb3JtTWF0cml4MmZ2AGdsVW5pZm9ybU1hdHJpeDNmdgBnbFVuaWZvcm1NYXRyaXg0ZnYAZ2xCaW5kQnVmZmVyAGdsVmVydGV4QXR0cmliMWZ2AGdsVmVydGV4QXR0cmliMmZ2AGdsVmVydGV4QXR0cmliM2Z2AGdsVmVydGV4QXR0cmliNGZ2AGdsR2V0QXR0cmliTG9jYXRpb24AZ2xHZXRBY3RpdmVBdHRyaWIAZ2xEZWxldGVTaGFkZXIAZ2xHZXRBdHRhY2hlZFNoYWRlcnMAZ2xTaGFkZXJTb3VyY2UAZ2xHZXRTaGFkZXJTb3VyY2UAZ2xDb21waWxlU2hhZGVyAGdsR2V0U2hhZGVySW5mb0xvZwBnbEdldFNoYWRlcml2AGdsR2V0UHJvZ3JhbWl2AGdsSXNTaGFkZXIAZ2xEZWxldGVQcm9ncmFtAGdsR2V0U2hhZGVyUHJlY2lzaW9uRm9ybWF0AGdsTGlua1Byb2dyYW0AZ2xHZXRQcm9ncmFtSW5mb0xvZwBnbFZhbGlkYXRlUHJvZ3JhbQBnbElzUHJvZ3JhbQBnbEJpbmRBdHRyaWJMb2NhdGlvbgBnbEJpbmRGcmFtZWJ1ZmZlcgBnbEdlbkZyYW1lYnVmZmVycwBnbERlbGV0ZUZyYW1lYnVmZmVycwBnbEZyYW1lYnVmZmVyUmVuZGVyYnVmZmVyAGdsRnJhbWVidWZmZXJUZXh0dXJlMkQAZ2xHZXRGcmFtZWJ1ZmZlckF0dGFjaG1lbnRQYXJhbWV0ZXJpdgBnbElzRnJhbWVidWZmZXIAZ2xEZWxldGVPYmplY3QAZ2xHZXRPYmplY3RQYXJhbWV0ZXJpdgBnbEdldEluZm9Mb2cAZ2xCaW5kUHJvZ3JhbQBnbEdldFBvaW50ZXJ2AGdsRHJhd1JhbmdlRWxlbWVudHMAZ2xFbmFibGVDbGllbnRTdGF0ZQBnbFZlcnRleFBvaW50ZXIAZ2xUZXhDb29yZFBvaW50ZXIAZ2xOb3JtYWxQb2ludGVyAGdsQ29sb3JQb2ludGVyAGdsQ2xpZW50QWN0aXZlVGV4dHVyZQBnbElzVmVydGV4QXJyYXkAZ2xHZW5WZXJ0ZXhBcnJheXMAZ2xEZWxldGVWZXJ0ZXhBcnJheXMAZ2xCaW5kVmVydGV4QXJyYXkAZ2xNYXRyaXhNb2RlAGdsTG9hZElkZW50aXR5AGdsTG9hZE1hdHJpeGYAZ2xGcnVzdHVtAGdsUm90YXRlZgBnbFZlcnRleEF0dHJpYlBvaW50ZXIAZ2xFbmFibGVWZXJ0ZXhBdHRyaWJBcnJheQBnbERpc2FibGVWZXJ0ZXhBdHRyaWJBcnJheQBnbERyYXdBcnJheXMAZ2xEcmF3RWxlbWVudHMAZ2xTaGFkZXJCaW5hcnkAZ2xSZWxlYXNlU2hhZGVyQ29tcGlsZXIAZ2xHZXRFcnJvcgBnbFZlcnRleEF0dHJpYkRpdmlzb3IAZ2xEcmF3QXJyYXlzSW5zdGFuY2VkAGdsRHJhd0VsZW1lbnRzSW5zdGFuY2VkAGdsRmluaXNoAGdsRmx1c2gAZ2xDbGVhckRlcHRoAGdsQ2xlYXJEZXB0aGYAZ2xEZXB0aEZ1bmMAZ2xFbmFibGUAZ2xEaXNhYmxlAGdsRnJvbnRGYWNlAGdsQ3VsbEZhY2UAZ2xDbGVhcgBnbExpbmVXaWR0aABnbENsZWFyU3RlbmNpbABnbERlcHRoTWFzawBnbFN0ZW5jaWxNYXNrAGdsQ2hlY2tGcmFtZWJ1ZmZlclN0YXR1cwBnbEdlbmVyYXRlTWlwbWFwAGdsQWN0aXZlVGV4dHVyZQBnbEJsZW5kRXF1YXRpb24AZ2xJc0VuYWJsZWQAZ2xCbGVuZEZ1bmMAZ2xCbGVuZEVxdWF0aW9uU2VwYXJhdGUAZ2xEZXB0aFJhbmdlAGdsRGVwdGhSYW5nZWYAZ2xTdGVuY2lsTWFza1NlcGFyYXRlAGdsSGludABnbFBvbHlnb25PZmZzZXQAZ2xWZXJ0ZXhBdHRyaWIxZgBnbFNhbXBsZUNvdmVyYWdlAGdsVGV4UGFyYW1ldGVyaQBnbFRleFBhcmFtZXRlcmYAZ2xWZXJ0ZXhBdHRyaWIyZgBnbFN0ZW5jaWxGdW5jAGdsU3RlbmNpbE9wAGdsVmlld3BvcnQAZ2xDbGVhckNvbG9yAGdsU2Npc3NvcgBnbFZlcnRleEF0dHJpYjNmAGdsQ29sb3JNYXNrAGdsUmVuZGVyYnVmZmVyU3RvcmFnZQBnbEJsZW5kRnVuY1NlcGFyYXRlAGdsQmxlbmRDb2xvcgBnbFN0ZW5jaWxGdW5jU2VwYXJhdGUAZ2xTdGVuY2lsT3BTZXBhcmF0ZQBnbFZlcnRleEF0dHJpYjRmAGdsQ29weVRleEltYWdlMkQAZ2xDb3B5VGV4U3ViSW1hZ2UyRABnbERyYXdCdWZmZXJzAE1vZHVsZS5wcmludEVycignYmFkIG5hbWUgaW4gZ2V0UHJvY0FkZHJlc3M6ICcgKyBbUG9pbnRlcl9zdHJpbmdpZnkoJDApLCBQb2ludGVyX3N0cmluZ2lmeSgkMSldKQD/////////////////////////////////////////////////////////////////AAECAwQFBgcICf////////8KCwwNDg8QERITFBUWFxgZGhscHR4fICEiI////////woLDA0ODxAREhMUFRYXGBkaGxwdHh8gISIj/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wABAgQHAwYFABEACgAREREAAAAABQAAAAAAAAkAAAAACwAAAAAAAAAAEQAPChEREQMKBwABEwkLCwAACQYLAAALAAYRAAAAERERAAAAAAAAAAAAAAAAAAAAAAsAAAAAAAAAABEACgoREREACgAAAgAJCwAAAAkACwAACwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAMAAAAAAwAAAAACQwAAAAAAAwAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAADQAAAAQNAAAAAAkOAAAAAAAOAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAA8AAAAADwAAAAAJEAAAAAAAEAAAEAAAEgAAABISEgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAASAAAAEhISAAAAAAAACQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAAAAAAAAAACgAAAAAKAAAAAAkLAAAAAAALAAALAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAAAwAAAAADAAAAAAJDAAAAAAADAAADAAALSsgICAwWDB4AChudWxsKQAtMFgrMFggMFgtMHgrMHggMHgAaW5mAElORgBOQU4AMDEyMzQ1Njc4OUFCQ0RFRi4AVCEiGQ0BAgMRSxwMEAQLHRIeJ2hub3BxYiAFBg8TFBUaCBYHKCQXGAkKDhsfJSODgn0mKis8PT4/Q0dKTVhZWltcXV5fYGFjZGVmZ2lqa2xyc3R5ent8AElsbGVnYWwgYnl0ZSBzZXF1ZW5jZQBEb21haW4gZXJyb3IAUmVzdWx0IG5vdCByZXByZXNlbnRhYmxlAE5vdCBhIHR0eQBQZXJtaXNzaW9uIGRlbmllZABPcGVyYXRpb24gbm90IHBlcm1pdHRlZABObyBzdWNoIGZpbGUgb3IgZGlyZWN0b3J5AE5vIHN1Y2ggcHJvY2VzcwBGaWxlIGV4aXN0cwBWYWx1ZSB0b28gbGFyZ2UgZm9yIGRhdGEgdHlwZQBObyBzcGFjZSBsZWZ0IG9uIGRldmljZQBPdXQgb2YgbWVtb3J5AFJlc291cmNlIGJ1c3kASW50ZXJydXB0ZWQgc3lzdGVtIGNhbGwAUmVzb3VyY2UgdGVtcG9yYXJpbHkgdW5hdmFpbGFibGUASW52YWxpZCBzZWVrAENyb3NzLWRldmljZSBsaW5rAFJlYWQtb25seSBmaWxlIHN5c3RlbQBEaXJlY3Rvcnkgbm90IGVtcHR5AENvbm5lY3Rpb24gcmVzZXQgYnkgcGVlcgBPcGVyYXRpb24gdGltZWQgb3V0AENvbm5lY3Rpb24gcmVmdXNlZABIb3N0IGlzIGRvd24ASG9zdCBpcyB1bnJlYWNoYWJsZQBBZGRyZXNzIGluIHVzZQBCcm9rZW4gcGlwZQBJL08gZXJyb3IATm8gc3VjaCBkZXZpY2Ugb3IgYWRkcmVzcwBCbG9jayBkZXZpY2UgcmVxdWlyZWQATm8gc3VjaCBkZXZpY2UATm90IGEgZGlyZWN0b3J5AElzIGEgZGlyZWN0b3J5AFRleHQgZmlsZSBidXN5AEV4ZWMgZm9ybWF0IGVycm9yAEludmFsaWQgYXJndW1lbnQAQXJndW1lbnQgbGlzdCB0b28gbG9uZwBTeW1ib2xpYyBsaW5rIGxvb3AARmlsZW5hbWUgdG9vIGxvbmcAVG9vIG1hbnkgb3BlbiBmaWxlcyBpbiBzeXN0ZW0ATm8gZmlsZSBkZXNjcmlwdG9ycyBhdmFpbGFibGUAQmFkIGZpbGUgZGVzY3JpcHRvcgBObyBjaGlsZCBwcm9jZXNzAEJhZCBhZGRyZXNzAEZpbGUgdG9vIGxhcmdlAFRvbyBtYW55IGxpbmtzAE5vIGxvY2tzIGF2YWlsYWJsZQBSZXNvdXJjZSBkZWFkbG9jayB3b3VsZCBvY2N1cgBTdGF0ZSBub3QgcmVjb3ZlcmFibGUAUHJldmlvdXMgb3duZXIgZGllZABPcGVyYXRpb24gY2FuY2VsZWQARnVuY3Rpb24gbm90IGltcGxlbWVudGVkAE5vIG1lc3NhZ2Ugb2YgZGVzaXJlZCB0eXBlAElkZW50aWZpZXIgcmVtb3ZlZABEZXZpY2Ugbm90IGEgc3RyZWFtAE5vIGRhdGEgYXZhaWxhYmxlAERldmljZSB0aW1lb3V0AE91dCBvZiBzdHJlYW1zIHJlc291cmNlcwBMaW5rIGhhcyBiZWVuIHNldmVyZWQAUHJvdG9jb2wgZXJyb3IAQmFkIG1lc3NhZ2UARmlsZSBkZXNjcmlwdG9yIGluIGJhZCBzdGF0ZQBOb3QgYSBzb2NrZXQARGVzdGluYXRpb24gYWRkcmVzcyByZXF1aXJlZABNZXNzYWdlIHRvbyBsYXJnZQBQcm90b2NvbCB3cm9uZyB0eXBlIGZvciBzb2NrZXQAUHJvdG9jb2wgbm90IGF2YWlsYWJsZQBQcm90b2NvbCBub3Qgc3VwcG9ydGVkAFNvY2tldCB0eXBlIG5vdCBzdXBwb3J0ZWQATm90IHN1cHBvcnRlZABQcm90b2NvbCBmYW1pbHkgbm90IHN1cHBvcnRlZABBZGRyZXNzIGZhbWlseSBub3Qgc3VwcG9ydGVkIGJ5IHByb3RvY29sAEFkZHJlc3Mgbm90IGF2YWlsYWJsZQBOZXR3b3JrIGlzIGRvd24ATmV0d29yayB1bnJlYWNoYWJsZQBDb25uZWN0aW9uIHJlc2V0IGJ5IG5ldHdvcmsAQ29ubmVjdGlvbiBhYm9ydGVkAE5vIGJ1ZmZlciBzcGFjZSBhdmFpbGFibGUAU29ja2V0IGlzIGNvbm5lY3RlZABTb2NrZXQgbm90IGNvbm5lY3RlZABDYW5ub3Qgc2VuZCBhZnRlciBzb2NrZXQgc2h1dGRvd24AT3BlcmF0aW9uIGFscmVhZHkgaW4gcHJvZ3Jlc3MAT3BlcmF0aW9uIGluIHByb2dyZXNzAFN0YWxlIGZpbGUgaGFuZGxlAFJlbW90ZSBJL08gZXJyb3IAUXVvdGEgZXhjZWVkZWQATm8gbWVkaXVtIGZvdW5kAFdyb25nIG1lZGl1bSB0eXBlAE5vIGVycm9yIGluZm9ybWF0aW9uAAAvcHJvYy9zZWxmL2ZkLwBpbmZpbml0eQBuYW4Acndh";var tempDoublePtr=STATICTOP;STATICTOP+=16;function ___assert_fail(condition,filename,line,func){ABORT=true;throw"Assertion failed: "+Pointer_stringify(condition)+", at: "+[filename?Pointer_stringify(filename):"unknown filename",line,func?Pointer_stringify(func):"unknown function"]+" at "+stackTrace()}var 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_STATIC);function ___lock(){}var ERRNO_CODES={EPERM:1,ENOENT:2,ESRCH:3,EINTR:4,EIO:5,ENXIO:6,E2BIG:7,ENOEXEC:8,EBADF:9,ECHILD:10,EAGAIN:11,EWOULDBLOCK:11,ENOMEM:12,EACCES:13,EFAULT:14,ENOTBLK:15,EBUSY:16,EEXIST:17,EXDEV:18,ENODEV:19,ENOTDIR:20,EISDIR:21,EINVAL:22,ENFILE:23,EMFILE:24,ENOTTY:25,ETXTBSY:26,EFBIG:27,ENOSPC:28,ESPIPE:29,EROFS:30,EMLINK:31,EPIPE:32,EDOM:33,ERANGE:34,ENOMSG:42,EIDRM:43,ECHRNG:44,EL2NSYNC:45,EL3HLT:46,EL3RST:47,ELNRNG:48,EUNATCH:49,ENOCSI:50,EL2HLT:51,EDEADLK:35,ENOLCK:37,EBADE:52,EBADR:53,EXFULL:54,ENOANO:55,EBADRQC:56,EBADSLT:57,EDEADLOCK:35,EBFONT:59,ENOSTR:60,ENODATA:61,ETIME:62,ENOSR:63,ENONET:64,ENOPKG:65,EREMOTE:66,ENOLINK:67,EADV:68,ESRMNT:69,ECOMM:70,EPROTO:71,EMULTIHOP:72,EDOTDOT:73,EBADMSG:74,ENOTUNIQ:76,EBADFD:77,EREMCHG:78,ELIBACC:79,ELIBBAD:80,ELIBSCN:81,ELIBMAX:82,ELIBEXEC:83,ENOSYS:38,ENOTEMPTY:39,ENAMETOOLONG:36,ELOOP:40,EOPNOTSUPP:95,EPFNOSUPPORT:96,ECONNRESET:104,ENOBUFS:105,EAFNOSUPPORT:97,EPROTOTYPE:91,ENOTSOCK:88,ENOPROTOOPT:92,ESHUTDOWN:108,ECONNREFUSED:111,EADDRINUSE:98,ECONNABORTED:103,ENETUNREACH:101,ENETDOWN:100,ETIMEDOUT:110,EHOSTDOWN:112,EHOSTUNREACH:113,EINPROGRESS:115,EALREADY:114,EDESTADDRREQ:89,EMSGSIZE:90,EPROTONOSUPPORT:93,ESOCKTNOSUPPORT:94,EADDRNOTAVAIL:99,ENETRESET:102,EISCONN:106,ENOTCONN:107,ETOOMANYREFS:109,EUSERS:87,EDQUOT:122,ESTALE:116,ENOTSUP:95,ENOMEDIUM:123,EILSEQ:84,EOVERFLOW:75,ECANCELED:125,ENOTRECOVERABLE:131,EOWNERDEAD:130,ESTRPIPE:86};var ERRNO_MESSAGES={0:"Success",1:"Not super-user",2:"No such file or directory",3:"No such process",4:"Interrupted system call",5:"I/O error",6:"No such device or address",7:"Arg list too long",8:"Exec format error",9:"Bad file number",10:"No children",11:"No more processes",12:"Not enough core",13:"Permission denied",14:"Bad address",15:"Block device required",16:"Mount device busy",17:"File exists",18:"Cross-device link",19:"No such device",20:"Not a directory",21:"Is a directory",22:"Invalid argument",23:"Too many open files in system",24:"Too many open files",25:"Not a typewriter",26:"Text file busy",27:"File too large",28:"No space left on device",29:"Illegal seek",30:"Read only file system",31:"Too many links",32:"Broken pipe",33:"Math arg out of domain of func",34:"Math result not representable",35:"File locking deadlock error",36:"File or path name too long",37:"No record locks available",38:"Function not implemented",39:"Directory not empty",40:"Too many symbolic links",42:"No message of desired type",43:"Identifier removed",44:"Channel number out of range",45:"Level 2 not synchronized",46:"Level 3 halted",47:"Level 3 reset",48:"Link number out of range",49:"Protocol driver not attached",50:"No CSI structure available",51:"Level 2 halted",52:"Invalid exchange",53:"Invalid request descriptor",54:"Exchange full",55:"No anode",56:"Invalid request code",57:"Invalid slot",59:"Bad font file fmt",60:"Device not a stream",61:"No data (for no delay io)",62:"Timer expired",63:"Out of streams resources",64:"Machine is not on the network",65:"Package not installed",66:"The object is remote",67:"The link has been severed",68:"Advertise error",69:"Srmount error",70:"Communication error on send",71:"Protocol error",72:"Multihop attempted",73:"Cross mount point (not really error)",74:"Trying to read unreadable message",75:"Value too large for defined data type",76:"Given log. name not unique",77:"f.d. invalid for this operation",78:"Remote address changed",79:"Can access a needed shared lib",80:"Accessing a corrupted shared lib",81:".lib section in a.out corrupted",82:"Attempting to link in too many libs",83:"Attempting to exec a shared library",84:"Illegal byte sequence",86:"Streams pipe error",87:"Too many users",88:"Socket operation on non-socket",89:"Destination address required",90:"Message too long",91:"Protocol wrong type for socket",92:"Protocol not available",93:"Unknown protocol",94:"Socket type not supported",95:"Not supported",96:"Protocol family not supported",97:"Address family not supported by protocol family",98:"Address already in use",99:"Address not available",100:"Network interface is not configured",101:"Network is unreachable",102:"Connection reset by network",103:"Connection aborted",104:"Connection reset by peer",105:"No buffer space available",106:"Socket is already connected",107:"Socket is not connected",108:"Can't send after socket shutdown",109:"Too many references",110:"Connection timed out",111:"Connection refused",112:"Host is down",113:"Host is unreachable",114:"Socket already connected",115:"Connection already in progress",116:"Stale file handle",122:"Quota exceeded",123:"No medium (in tape drive)",125:"Operation canceled",130:"Previous owner died",131:"State not recoverable"};function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;return value}var PATH={splitPath:(function(filename){var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)}),normalizeArray:(function(parts,allowAboveRoot){var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts}),normalize:(function(path){var isAbsolute=path.charAt(0)==="/",trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path}),dirname:(function(path){var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir}),basename:(function(path){if(path==="/")return"/";var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)}),extname:(function(path){return PATH.splitPath(path)[3]}),join:(function(){var paths=Array.prototype.slice.call(arguments,0);return PATH.normalize(paths.join("/"))}),join2:(function(l,r){return PATH.normalize(l+"/"+r)}),resolve:(function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!=="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=path.charAt(0)==="/"}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter((function(p){return!!p})),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."}),relative:(function(from,to){from=PATH.resolve(from).substr(1);to=PATH.resolve(to).substr(1);function trim(arr){var start=0;for(;start<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){stream.tty.ops.flush(stream.tty)}),flush:(function(stream){stream.tty.ops.flush(stream.tty)}),read:(function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.get_char){throw new FS.ErrnoError(ERRNO_CODES.ENXIO)}var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=stream.tty.ops.get_char(stream.tty)}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EIO)}if(result===undefined&&bytesRead===0){throw new FS.ErrnoError(ERRNO_CODES.EAGAIN)}if(result===null||result===undefined)break;bytesRead++;buffer[offset+i]=result}if(bytesRead){stream.node.timestamp=Date.now()}return bytesRead}),write:(function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.put_char){throw new FS.ErrnoError(ERRNO_CODES.ENXIO)}for(var i=0;i<length;i++){try{stream.tty.ops.put_char(stream.tty,buffer[offset+i])}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EIO)}}if(length){stream.node.timestamp=Date.now()}return i})},default_tty_ops:{get_char:(function(tty){if(!tty.input.length){var result=null;if(ENVIRONMENT_IS_NODE){var BUFSIZE=256;var buf=new Buffer(BUFSIZE);var bytesRead=0;var isPosixPlatform=process.platform!="win32";var fd=process.stdin.fd;if(isPosixPlatform){var usingDevice=false;try{fd=fs.openSync("/dev/stdin","r");usingDevice=true}catch(e){}}try{bytesRead=fs.readSync(fd,buf,0,BUFSIZE,null)}catch(e){if(e.toString().indexOf("EOF")!=-1)bytesRead=0;else throw e}if(usingDevice){fs.closeSync(fd)}if(bytesRead>0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()}),put_char:(function(tty,val){if(val===null||val===10){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["print"](UTF8ArrayToString(tty.output,0));tty.output=[]}})},default_tty1_ops:{put_char:(function(tty,val){if(val===null||val===10){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}}),flush:(function(tty){if(tty.output&&tty.output.length>0){Module["printErr"](UTF8ArrayToString(tty.output,0));tty.output=[]}})}};var MEMFS={ops_table:null,mount:(function(mount){return MEMFS.createNode(null,"/",16384|511,0)}),createNode:(function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node}return node}),getFileDataAsRegularArray:(function(node){if(node.contents&&node.contents.subarray){var arr=[];for(var i=0;i<node.usedBytes;++i)arr.push(node.contents[i]);return arr}return node.contents}),getFileDataAsTypedArray:(function(node){if(!node.contents)return new Uint8Array;if(node.contents.subarray)return node.contents.subarray(0,node.usedBytes);return new Uint8Array(node.contents)}),expandFileStorage:(function(node,newCapacity){if(node.contents&&node.contents.subarray&&newCapacity>node.contents.length){node.contents=MEMFS.getFileDataAsRegularArray(node);node.usedBytes=node.contents.length}if(!node.contents||node.contents.subarray){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity<CAPACITY_DOUBLING_MAX?2:1.125)|0);if(prevCapacity!=0)newCapacity=Math.max(newCapacity,256);var oldContents=node.contents;node.contents=new Uint8Array(newCapacity);if(node.usedBytes>0)node.contents.set(oldContents.subarray(0,node.usedBytes),0);return}if(!node.contents&&newCapacity>0)node.contents=[];while(node.contents.length<newCapacity)node.contents.push(0)}),resizeFileStorage:(function(node,newSize){if(node.usedBytes==newSize)return;if(newSize==0){node.contents=null;node.usedBytes=0;return}if(!node.contents||node.contents.subarray){var oldContents=node.contents;node.contents=new Uint8Array(new ArrayBuffer(newSize));if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize;return}if(!node.contents)node.contents=[];if(node.contents.length>newSize)node.contents.length=newSize;else while(node.contents.length<newSize)node.contents.push(0);node.usedBytes=newSize}),node_ops:{getattr:(function(node){var attr={};attr.dev=FS.isChrdev(node.mode)?node.id:1;attr.ino=node.id;attr.mode=node.mode;attr.nlink=1;attr.uid=0;attr.gid=0;attr.rdev=node.rdev;if(FS.isDir(node.mode)){attr.size=4096}else if(FS.isFile(node.mode)){attr.size=node.usedBytes}else if(FS.isLink(node.mode)){attr.size=node.link.length}else{attr.size=0}attr.atime=new Date(node.timestamp);attr.mtime=new Date(node.timestamp);attr.ctime=new Date(node.timestamp);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr}),setattr:(function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}}),lookup:(function(parent,name){throw FS.genericErrors[ERRNO_CODES.ENOENT]}),mknod:(function(parent,name,mode,dev){return MEMFS.createNode(parent,name,mode,dev)}),rename:(function(old_node,new_dir,new_name){if(FS.isDir(old_node.mode)){var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(new_node){for(var i in new_node.contents){throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY)}}}delete old_node.parent.contents[old_node.name];old_node.name=new_name;new_dir.contents[new_name]=old_node;old_node.parent=new_dir}),unlink:(function(parent,name){delete parent.contents[name]}),rmdir:(function(parent,name){var node=FS.lookupNode(parent,name);for(var i in node.contents){throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY)}delete parent.contents[name]}),readdir:(function(node){var entries=[".",".."];for(var key in node.contents){if(!node.contents.hasOwnProperty(key)){continue}entries.push(key)}return entries}),symlink:(function(parent,newname,oldpath){var node=MEMFS.createNode(parent,newname,511|40960,0);node.link=oldpath;return node}),readlink:(function(node){if(!FS.isLink(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return node.link})},stream_ops:{read:(function(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);assert(size>=0);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i<size;i++)buffer[offset+i]=contents[position+i]}return size}),write:(function(stream,buffer,offset,length,position,canOwn){if(!length)return 0;var node=stream.node;node.timestamp=Date.now();if(buffer.subarray&&(!node.contents||node.contents.subarray)){if(canOwn){node.contents=buffer.subarray(offset,offset+length);node.usedBytes=length;return length}else if(node.usedBytes===0&&position===0){node.contents=new Uint8Array(buffer.subarray(offset,offset+length));node.usedBytes=length;return length}else if(position+length<=node.usedBytes){node.contents.set(buffer.subarray(offset,offset+length),position);return length}}MEMFS.expandFileStorage(node,position+length);if(node.contents.subarray&&buffer.subarray)node.contents.set(buffer.subarray(offset,offset+length),position);else{for(var i=0;i<length;i++){node.contents[position+i]=buffer[offset+i]}}node.usedBytes=Math.max(node.usedBytes,position+length);return length}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.usedBytes}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position}),allocate:(function(stream,offset,length){MEMFS.expandFileStorage(stream.node,offset+length);stream.node.usedBytes=Math.max(stream.node.usedBytes,offset+length)}),mmap:(function(stream,buffer,offset,length,position,prot,flags){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}var ptr;var allocated;var contents=stream.node.contents;if(!(flags&2)&&(contents.buffer===buffer||contents.buffer===buffer.buffer)){allocated=false;ptr=contents.byteOffset}else{if(position>0||position+length<stream.node.usedBytes){if(contents.subarray){contents=contents.subarray(position,position+length)}else{contents=Array.prototype.slice.call(contents,position,position+length)}}allocated=true;ptr=_malloc(length);if(!ptr){throw new FS.ErrnoError(ERRNO_CODES.ENOMEM)}buffer.set(contents,ptr)}return{ptr:ptr,allocated:allocated}}),msync:(function(stream,buffer,offset,length,mmapFlags){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}if(mmapFlags&2){return 0}var bytesWritten=MEMFS.stream_ops.write(stream,buffer,0,length,offset,false);return 0})}};var IDBFS={dbs:{},indexedDB:(function(){if(typeof indexedDB!=="undefined")return indexedDB;var ret=null;if(typeof window==="object")ret=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB;assert(ret,"IDBFS used, but indexedDB not supported");return ret}),DB_VERSION:21,DB_STORE_NAME:"FILE_DATA",mount:(function(mount){return MEMFS.mount.apply(null,arguments)}),syncfs:(function(mount,populate,callback){IDBFS.getLocalSet(mount,(function(err,local){if(err)return callback(err);IDBFS.getRemoteSet(mount,(function(err,remote){if(err)return callback(err);var src=populate?remote:local;var dst=populate?local:remote;IDBFS.reconcile(src,dst,callback)}))}))}),getDB:(function(name,callback){var db=IDBFS.dbs[name];if(db){return callback(null,db)}var req;try{req=IDBFS.indexedDB().open(name,IDBFS.DB_VERSION)}catch(e){return callback(e)}if(!req){return callback("Unable to connect to IndexedDB")}req.onupgradeneeded=(function(e){var db=e.target.result;var transaction=e.target.transaction;var fileStore;if(db.objectStoreNames.contains(IDBFS.DB_STORE_NAME)){fileStore=transaction.objectStore(IDBFS.DB_STORE_NAME)}else{fileStore=db.createObjectStore(IDBFS.DB_STORE_NAME)}if(!fileStore.indexNames.contains("timestamp")){fileStore.createIndex("timestamp","timestamp",{unique:false})}});req.onsuccess=(function(){db=req.result;IDBFS.dbs[name]=db;callback(null,db)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),getLocalSet:(function(mount,callback){var entries={};function isRealDir(p){return p!=="."&&p!==".."}function toAbsolute(root){return(function(p){return PATH.join2(root,p)})}var check=FS.readdir(mount.mountpoint).filter(isRealDir).map(toAbsolute(mount.mountpoint));while(check.length){var path=check.pop();var stat;try{stat=FS.stat(path)}catch(e){return callback(e)}if(FS.isDir(stat.mode)){check.push.apply(check,FS.readdir(path).filter(isRealDir).map(toAbsolute(path)))}entries[path]={timestamp:stat.mtime}}return callback(null,{type:"local",entries:entries})}),getRemoteSet:(function(mount,callback){var entries={};IDBFS.getDB(mount.mountpoint,(function(err,db){if(err)return callback(err);try{var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readonly");transaction.onerror=(function(e){callback(this.error);e.preventDefault()});var store=transaction.objectStore(IDBFS.DB_STORE_NAME);var index=store.index("timestamp");index.openKeyCursor().onsuccess=(function(event){var cursor=event.target.result;if(!cursor){return callback(null,{type:"remote",db:db,entries:entries})}entries[cursor.primaryKey]={timestamp:cursor.key};cursor.continue()})}catch(e){return callback(e)}}))}),loadLocalEntry:(function(path,callback){var stat,node;try{var lookup=FS.lookupPath(path);node=lookup.node;stat=FS.stat(path)}catch(e){return callback(e)}if(FS.isDir(stat.mode)){return callback(null,{timestamp:stat.mtime,mode:stat.mode})}else if(FS.isFile(stat.mode)){node.contents=MEMFS.getFileDataAsTypedArray(node);return callback(null,{timestamp:stat.mtime,mode:stat.mode,contents:node.contents})}else{return callback(new Error("node type not supported"))}}),storeLocalEntry:(function(path,entry,callback){try{if(FS.isDir(entry.mode)){FS.mkdir(path,entry.mode)}else if(FS.isFile(entry.mode)){FS.writeFile(path,entry.contents,{encoding:"binary",canOwn:true})}else{return callback(new Error("node type not supported"))}FS.chmod(path,entry.mode);FS.utime(path,entry.timestamp,entry.timestamp)}catch(e){return callback(e)}callback(null)}),removeLocalEntry:(function(path,callback){try{var lookup=FS.lookupPath(path);var stat=FS.stat(path);if(FS.isDir(stat.mode)){FS.rmdir(path)}else if(FS.isFile(stat.mode)){FS.unlink(path)}}catch(e){return callback(e)}callback(null)}),loadRemoteEntry:(function(store,path,callback){var req=store.get(path);req.onsuccess=(function(event){callback(null,event.target.result)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),storeRemoteEntry:(function(store,path,entry,callback){var req=store.put(entry,path);req.onsuccess=(function(){callback(null)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),removeRemoteEntry:(function(store,path,callback){var req=store.delete(path);req.onsuccess=(function(){callback(null)});req.onerror=(function(e){callback(this.error);e.preventDefault()})}),reconcile:(function(src,dst,callback){var total=0;var create=[];Object.keys(src.entries).forEach((function(key){var e=src.entries[key];var e2=dst.entries[key];if(!e2||e.timestamp>e2.timestamp){create.push(key);total++}}));var remove=[];Object.keys(dst.entries).forEach((function(key){var e=dst.entries[key];var e2=src.entries[key];if(!e2){remove.push(key);total++}}));if(!total){return callback(null)}var completed=0;var db=src.type==="remote"?src.db:dst.db;var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readwrite");var store=transaction.objectStore(IDBFS.DB_STORE_NAME);function done(err){if(err){if(!done.errored){done.errored=true;return callback(err)}return}if(++completed>=total){return callback(null)}}transaction.onerror=(function(e){done(this.error);e.preventDefault()});create.sort().forEach((function(path){if(dst.type==="local"){IDBFS.loadRemoteEntry(store,path,(function(err,entry){if(err)return done(err);IDBFS.storeLocalEntry(path,entry,done)}))}else{IDBFS.loadLocalEntry(path,(function(err,entry){if(err)return done(err);IDBFS.storeRemoteEntry(store,path,entry,done)}))}}));remove.sort().reverse().forEach((function(path){if(dst.type==="local"){IDBFS.removeLocalEntry(path,done)}else{IDBFS.removeRemoteEntry(store,path,done)}}))})};var NODEFS={isWindows:false,staticInit:(function(){NODEFS.isWindows=!!process.platform.match(/^win/)}),mount:(function(mount){assert(ENVIRONMENT_IS_NODE);return NODEFS.createNode(null,"/",NODEFS.getMode(mount.opts.root),0)}),createNode:(function(parent,name,mode,dev){if(!FS.isDir(mode)&&!FS.isFile(mode)&&!FS.isLink(mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=FS.createNode(parent,name,mode);node.node_ops=NODEFS.node_ops;node.stream_ops=NODEFS.stream_ops;return node}),getMode:(function(path){var stat;try{stat=fs.lstatSync(path);if(NODEFS.isWindows){stat.mode=stat.mode|(stat.mode&146)>>1}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return stat.mode}),realPath:(function(node){var parts=[];while(node.parent!==node){parts.push(node.name);node=node.parent}parts.push(node.mount.opts.root);parts.reverse();return PATH.join.apply(null,parts)}),flagsToPermissionStringMap:{0:"r",1:"r+",2:"r+",64:"r",65:"r+",66:"r+",129:"rx+",193:"rx+",514:"w+",577:"w",578:"w+",705:"wx",706:"wx+",1024:"a",1025:"a",1026:"a+",1089:"a",1090:"a+",1153:"ax",1154:"ax+",1217:"ax",1218:"ax+",4096:"rs",4098:"rs+"},flagsToPermissionString:(function(flags){flags&=~2097152;flags&=~2048;flags&=~32768;flags&=~524288;if(flags in NODEFS.flagsToPermissionStringMap){return NODEFS.flagsToPermissionStringMap[flags]}else{throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}}),node_ops:{getattr:(function(node){var path=NODEFS.realPath(node);var stat;try{stat=fs.lstatSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(NODEFS.isWindows&&!stat.blksize){stat.blksize=4096}if(NODEFS.isWindows&&!stat.blocks){stat.blocks=(stat.size+stat.blksize-1)/stat.blksize|0}return{dev:stat.dev,ino:stat.ino,mode:stat.mode,nlink:stat.nlink,uid:stat.uid,gid:stat.gid,rdev:stat.rdev,size:stat.size,atime:stat.atime,mtime:stat.mtime,ctime:stat.ctime,blksize:stat.blksize,blocks:stat.blocks}}),setattr:(function(node,attr){var path=NODEFS.realPath(node);try{if(attr.mode!==undefined){fs.chmodSync(path,attr.mode);node.mode=attr.mode}if(attr.timestamp!==undefined){var date=new Date(attr.timestamp);fs.utimesSync(path,date,date)}if(attr.size!==undefined){fs.truncateSync(path,attr.size)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),lookup:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);var mode=NODEFS.getMode(path);return NODEFS.createNode(parent,name,mode)}),mknod:(function(parent,name,mode,dev){var node=NODEFS.createNode(parent,name,mode,dev);var path=NODEFS.realPath(node);try{if(FS.isDir(node.mode)){fs.mkdirSync(path,node.mode)}else{fs.writeFileSync(path,"",{mode:node.mode})}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}return node}),rename:(function(oldNode,newDir,newName){var oldPath=NODEFS.realPath(oldNode);var newPath=PATH.join2(NODEFS.realPath(newDir),newName);try{fs.renameSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),unlink:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.unlinkSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),rmdir:(function(parent,name){var path=PATH.join2(NODEFS.realPath(parent),name);try{fs.rmdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readdir:(function(node){var path=NODEFS.realPath(node);try{return fs.readdirSync(path)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),symlink:(function(parent,newName,oldPath){var newPath=PATH.join2(NODEFS.realPath(parent),newName);try{fs.symlinkSync(oldPath,newPath)}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),readlink:(function(node){var path=NODEFS.realPath(node);try{path=fs.readlinkSync(path);path=NODEJS_PATH.relative(NODEJS_PATH.resolve(node.mount.opts.root),path);return path}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}})},stream_ops:{open:(function(stream){var path=NODEFS.realPath(stream.node);try{if(FS.isFile(stream.node.mode)){stream.nfd=fs.openSync(path,NODEFS.flagsToPermissionString(stream.flags))}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),close:(function(stream){try{if(FS.isFile(stream.node.mode)&&stream.nfd){fs.closeSync(stream.nfd)}}catch(e){if(!e.code)throw e;throw new FS.ErrnoError(ERRNO_CODES[e.code])}}),read:(function(stream,buffer,offset,length,position){if(length===0)return 0;var nbuffer=new Buffer(length);var res;try{res=fs.readSync(stream.nfd,nbuffer,0,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}if(res>0){for(var i=0;i<res;i++){buffer[offset+i]=nbuffer[i]}}return res}),write:(function(stream,buffer,offset,length,position){var nbuffer=new Buffer(buffer.subarray(offset,offset+length));var res;try{res=fs.writeSync(stream.nfd,nbuffer,0,length,position)}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}return res}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){try{var stat=fs.fstatSync(stream.nfd);position+=stat.size}catch(e){throw new FS.ErrnoError(ERRNO_CODES[e.code])}}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};var WORKERFS={DIR_MODE:16895,FILE_MODE:33279,reader:null,mount:(function(mount){assert(ENVIRONMENT_IS_WORKER);if(!WORKERFS.reader)WORKERFS.reader=new FileReaderSync;var root=WORKERFS.createNode(null,"/",WORKERFS.DIR_MODE,0);var createdParents={};function ensureParent(path){var parts=path.split("/");var parent=root;for(var i=0;i<parts.length-1;i++){var curr=parts.slice(0,i+1).join("/");if(!createdParents[curr]){createdParents[curr]=WORKERFS.createNode(parent,parts[i],WORKERFS.DIR_MODE,0)}parent=createdParents[curr]}return parent}function base(path){var parts=path.split("/");return parts[parts.length-1]}Array.prototype.forEach.call(mount.opts["files"]||[],(function(file){WORKERFS.createNode(ensureParent(file.name),base(file.name),WORKERFS.FILE_MODE,0,file,file.lastModifiedDate)}));(mount.opts["blobs"]||[]).forEach((function(obj){WORKERFS.createNode(ensureParent(obj["name"]),base(obj["name"]),WORKERFS.FILE_MODE,0,obj["data"])}));(mount.opts["packages"]||[]).forEach((function(pack){pack["metadata"].files.forEach((function(file){var name=file.filename.substr(1);WORKERFS.createNode(ensureParent(name),base(name),WORKERFS.FILE_MODE,0,pack["blob"].slice(file.start,file.end))}))}));return root}),createNode:(function(parent,name,mode,dev,contents,mtime){var node=FS.createNode(parent,name,mode);node.mode=mode;node.node_ops=WORKERFS.node_ops;node.stream_ops=WORKERFS.stream_ops;node.timestamp=(mtime||new Date).getTime();assert(WORKERFS.FILE_MODE!==WORKERFS.DIR_MODE);if(mode===WORKERFS.FILE_MODE){node.size=contents.size;node.contents=contents}else{node.size=4096;node.contents={}}if(parent){parent.contents[name]=node}return node}),node_ops:{getattr:(function(node){return{dev:1,ino:undefined,mode:node.mode,nlink:1,uid:0,gid:0,rdev:undefined,size:node.size,atime:new Date(node.timestamp),mtime:new Date(node.timestamp),ctime:new Date(node.timestamp),blksize:4096,blocks:Math.ceil(node.size/4096)}}),setattr:(function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}}),lookup:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}),mknod:(function(parent,name,mode,dev){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rename:(function(oldNode,newDir,newName){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),unlink:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),rmdir:(function(parent,name){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),readdir:(function(node){var entries=[".",".."];for(var key in node.contents){if(!node.contents.hasOwnProperty(key)){continue}entries.push(key)}return entries}),symlink:(function(parent,newName,oldPath){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}),readlink:(function(node){throw new FS.ErrnoError(ERRNO_CODES.EPERM)})},stream_ops:{read:(function(stream,buffer,offset,length,position){if(position>=stream.node.size)return 0;var chunk=stream.node.contents.slice(position,position+length);var ab=WORKERFS.reader.readAsArrayBuffer(chunk);buffer.set(new Uint8Array(ab),offset);return chunk.size}),write:(function(stream,buffer,offset,length,position){throw new FS.ErrnoError(ERRNO_CODES.EIO)}),llseek:(function(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.size}}if(position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return position})}};STATICTOP+=16;STATICTOP+=16;STATICTOP+=16;var FS={root:null,mounts:[],devices:[null],streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,trackingDelegate:{},tracking:{openFlags:{READ:1,WRITE:2}},ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,handleFSError:(function(e){if(!(e instanceof FS.ErrnoError))throw e+" : "+stackTrace();return ___setErrNo(e.errno)}),lookupPath:(function(path,opts){path=PATH.resolve(FS.cwd(),path);opts=opts||{};if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};for(var key in defaults){if(opts[key]===undefined){opts[key]=defaults[key]}}if(opts.recurse_count>8){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}var parts=PATH.normalizeArray(path.split("/").filter((function(p){return!!p})),false);var current=FS.root;var current_path="/";for(var i=0;i<parts.length;i++){var islast=i===parts.length-1;if(islast&&opts.parent){break}current=FS.lookupNode(current,parts[i]);current_path=PATH.join2(current_path,parts[i]);if(FS.isMountpoint(current)){if(!islast||islast&&opts.follow_mount){current=current.mounted.root}}if(!islast||opts.follow){var count=0;while(FS.isLink(current.mode)){var link=FS.readlink(current_path);current_path=PATH.resolve(PATH.dirname(current_path),link);var lookup=FS.lookupPath(current_path,{recurse_count:opts.recurse_count});current=lookup.node;if(count++>40){throw new FS.ErrnoError(ERRNO_CODES.ELOOP)}}}}return{path:current_path,node:current}}),getPath:(function(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?mount+"/"+path:mount+path}path=path?node.name+"/"+path:node.name;node=node.parent}}),hashName:(function(parentid,name){var hash=0;for(var i=0;i<name.length;i++){hash=(hash<<5)-hash+name.charCodeAt(i)|0}return(parentid+hash>>>0)%FS.nameTable.length}),hashAddNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node}),hashRemoveNode:(function(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}}),lookupNode:(function(parent,name){var err=FS.mayLookup(parent);if(err){throw new FS.ErrnoError(err,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)}),createNode:(function(parent,name,mode,rdev){if(!FS.FSNode){FS.FSNode=(function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev});FS.FSNode.prototype={};var readMode=292|73;var writeMode=146;Object.defineProperties(FS.FSNode.prototype,{read:{get:(function(){return(this.mode&readMode)===readMode}),set:(function(val){val?this.mode|=readMode:this.mode&=~readMode})},write:{get:(function(){return(this.mode&writeMode)===writeMode}),set:(function(val){val?this.mode|=writeMode:this.mode&=~writeMode})},isFolder:{get:(function(){return FS.isDir(this.mode)})},isDevice:{get:(function(){return FS.isChrdev(this.mode)})}})}var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node}),destroyNode:(function(node){FS.hashRemoveNode(node)}),isRoot:(function(node){return node===node.parent}),isMountpoint:(function(node){return!!node.mounted}),isFile:(function(mode){return(mode&61440)===32768}),isDir:(function(mode){return(mode&61440)===16384}),isLink:(function(mode){return(mode&61440)===40960}),isChrdev:(function(mode){return(mode&61440)===8192}),isBlkdev:(function(mode){return(mode&61440)===24576}),isFIFO:(function(mode){return(mode&61440)===4096}),isSocket:(function(mode){return(mode&49152)===49152}),flagModes:{"r":0,"rs":1052672,"r+":2,"w":577,"wx":705,"xw":705,"w+":578,"wx+":706,"xw+":706,"a":1089,"ax":1217,"xa":1217,"a+":1090,"ax+":1218,"xa+":1218},modeStringToFlags:(function(str){var flags=FS.flagModes[str];if(typeof flags==="undefined"){throw new Error("Unknown file open mode: "+str)}return flags}),flagsToPermissionString:(function(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms}),nodePermissions:(function(node,perms){if(FS.ignorePermissions){return 0}if(perms.indexOf("r")!==-1&&!(node.mode&292)){return ERRNO_CODES.EACCES}else if(perms.indexOf("w")!==-1&&!(node.mode&146)){return ERRNO_CODES.EACCES}else if(perms.indexOf("x")!==-1&&!(node.mode&73)){return ERRNO_CODES.EACCES}return 0}),mayLookup:(function(dir){var err=FS.nodePermissions(dir,"x");if(err)return err;if(!dir.node_ops.lookup)return ERRNO_CODES.EACCES;return 0}),mayCreate:(function(dir,name){try{var node=FS.lookupNode(dir,name);return ERRNO_CODES.EEXIST}catch(e){}return FS.nodePermissions(dir,"wx")}),mayDelete:(function(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var err=FS.nodePermissions(dir,"wx");if(err){return err}if(isdir){if(!FS.isDir(node.mode)){return ERRNO_CODES.ENOTDIR}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return ERRNO_CODES.EBUSY}}else{if(FS.isDir(node.mode)){return ERRNO_CODES.EISDIR}}return 0}),mayOpen:(function(node,flags){if(!node){return ERRNO_CODES.ENOENT}if(FS.isLink(node.mode)){return ERRNO_CODES.ELOOP}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return ERRNO_CODES.EISDIR}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))}),MAX_OPEN_FDS:4096,nextfd:(function(fd_start,fd_end){fd_start=fd_start||0;fd_end=fd_end||FS.MAX_OPEN_FDS;for(var fd=fd_start;fd<=fd_end;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(ERRNO_CODES.EMFILE)}),getStream:(function(fd){return FS.streams[fd]}),createStream:(function(stream,fd_start,fd_end){if(!FS.FSStream){FS.FSStream=(function(){});FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:(function(){return this.node}),set:(function(val){this.node=val})},isRead:{get:(function(){return(this.flags&2097155)!==1})},isWrite:{get:(function(){return(this.flags&2097155)!==0})},isAppend:{get:(function(){return this.flags&1024})}})}var newStream=new FS.FSStream;for(var p in stream){newStream[p]=stream[p]}stream=newStream;var fd=FS.nextfd(fd_start,fd_end);stream.fd=fd;FS.streams[fd]=stream;return stream}),closeStream:(function(fd){FS.streams[fd]=null}),chrdev_stream_ops:{open:(function(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}}),llseek:(function(){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)})},major:(function(dev){return dev>>8}),minor:(function(dev){return dev&255}),makedev:(function(ma,mi){return ma<<8|mi}),registerDevice:(function(dev,ops){FS.devices[dev]={stream_ops:ops}}),getDevice:(function(dev){return FS.devices[dev]}),getMounts:(function(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts}),syncfs:(function(populate,callback){if(typeof populate==="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){console.log("warning: "+FS.syncFSRequests+" FS.syncfs operations in flight at once, probably just doing extra work")}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(err){assert(FS.syncFSRequests>0);FS.syncFSRequests--;return callback(err)}function done(err){if(err){if(!done.errored){done.errored=true;return doCallback(err)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach((function(mount){if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)}))}),mount:(function(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot}),unmount:(function(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach((function(hash){var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.indexOf(current.mount)!==-1){FS.destroyNode(current)}current=next}}));node.mounted=null;var idx=node.mount.mounts.indexOf(mount);assert(idx!==-1);node.mount.mounts.splice(idx,1)}),lookup:(function(parent,name){return parent.node_ops.lookup(parent,name)}),mknod:(function(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var err=FS.mayCreate(parent,name);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return parent.node_ops.mknod(parent,name,mode,dev)}),create:(function(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)}),mkdir:(function(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)}),mkdirTree:(function(path,mode){var dirs=path.split("/");var d="";for(var i=0;i<dirs.length;++i){if(!dirs[i])continue;d+="/"+dirs[i];try{FS.mkdir(d,mode)}catch(e){if(e.errno!=ERRNO_CODES.EEXIST)throw e}}}),mkdev:(function(path,mode,dev){if(typeof dev==="undefined"){dev=mode;mode=438}mode|=8192;return FS.mknod(path,mode,dev)}),symlink:(function(oldpath,newpath){if(!PATH.resolve(oldpath)){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}var lookup=FS.lookupPath(newpath,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}var newname=PATH.basename(newpath);var err=FS.mayCreate(parent,newname);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.symlink){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return parent.node_ops.symlink(parent,newname,oldpath)}),rename:(function(old_path,new_path){var old_dirname=PATH.dirname(old_path);var new_dirname=PATH.dirname(new_path);var old_name=PATH.basename(old_path);var new_name=PATH.basename(new_path);var lookup,old_dir,new_dir;try{lookup=FS.lookupPath(old_path,{parent:true});old_dir=lookup.node;lookup=FS.lookupPath(new_path,{parent:true});new_dir=lookup.node}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(!old_dir||!new_dir)throw new FS.ErrnoError(ERRNO_CODES.ENOENT);if(old_dir.mount!==new_dir.mount){throw new FS.ErrnoError(ERRNO_CODES.EXDEV)}var old_node=FS.lookupNode(old_dir,old_name);var relative=PATH.relative(old_path,new_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}relative=PATH.relative(new_path,old_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(ERRNO_CODES.ENOTEMPTY)}var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(old_node===new_node){return}var isdir=FS.isDir(old_node.mode);var err=FS.mayDelete(old_dir,old_name,isdir);if(err){throw new FS.ErrnoError(err)}err=new_node?FS.mayDelete(new_dir,new_name,isdir):FS.mayCreate(new_dir,new_name);if(err){throw new FS.ErrnoError(err)}if(!old_dir.node_ops.rename){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isMountpoint(old_node)||new_node&&FS.isMountpoint(new_node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}if(new_dir!==old_dir){err=FS.nodePermissions(old_dir,"w");if(err){throw new FS.ErrnoError(err)}}try{if(FS.trackingDelegate["willMovePath"]){FS.trackingDelegate["willMovePath"](old_path,new_path)}}catch(e){console.log("FS.trackingDelegate['willMovePath']('"+old_path+"', '"+new_path+"') threw an exception: "+e.message)}FS.hashRemoveNode(old_node);try{old_dir.node_ops.rename(old_node,new_dir,new_name)}catch(e){throw e}finally{FS.hashAddNode(old_node)}try{if(FS.trackingDelegate["onMovePath"])FS.trackingDelegate["onMovePath"](old_path,new_path)}catch(e){console.log("FS.trackingDelegate['onMovePath']('"+old_path+"', '"+new_path+"') threw an exception: "+e.message)}}),rmdir:(function(path){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var err=FS.mayDelete(parent,name,true);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.rmdir){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}try{if(FS.trackingDelegate["willDeletePath"]){FS.trackingDelegate["willDeletePath"](path)}}catch(e){console.log("FS.trackingDelegate['willDeletePath']('"+path+"') threw an exception: "+e.message)}parent.node_ops.rmdir(parent,name);FS.destroyNode(node);try{if(FS.trackingDelegate["onDeletePath"])FS.trackingDelegate["onDeletePath"](path)}catch(e){console.log("FS.trackingDelegate['onDeletePath']('"+path+"') threw an exception: "+e.message)}}),readdir:(function(path){var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;if(!node.node_ops.readdir){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}return node.node_ops.readdir(node)}),unlink:(function(path){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var err=FS.mayDelete(parent,name,false);if(err){throw new FS.ErrnoError(err)}if(!parent.node_ops.unlink){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(ERRNO_CODES.EBUSY)}try{if(FS.trackingDelegate["willDeletePath"]){FS.trackingDelegate["willDeletePath"](path)}}catch(e){console.log("FS.trackingDelegate['willDeletePath']('"+path+"') threw an exception: "+e.message)}parent.node_ops.unlink(parent,name);FS.destroyNode(node);try{if(FS.trackingDelegate["onDeletePath"])FS.trackingDelegate["onDeletePath"](path)}catch(e){console.log("FS.trackingDelegate['onDeletePath']('"+path+"') threw an exception: "+e.message)}}),readlink:(function(path){var lookup=FS.lookupPath(path);var link=lookup.node;if(!link){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(!link.node_ops.readlink){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}return PATH.resolve(FS.getPath(link.parent),link.node_ops.readlink(link))}),stat:(function(path,dontFollow){var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(!node.node_ops.getattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}return node.node_ops.getattr(node)}),lstat:(function(path){return FS.stat(path,true)}),chmod:(function(path,mode,dontFollow){var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}node.node_ops.setattr(node,{mode:mode&4095|node.mode&~4095,timestamp:Date.now()})}),lchmod:(function(path,mode){FS.chmod(path,mode,true)}),fchmod:(function(fd,mode){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}FS.chmod(stream.node,mode)}),chown:(function(path,uid,gid,dontFollow){var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}node.node_ops.setattr(node,{timestamp:Date.now()})}),lchown:(function(path,uid,gid){FS.chown(path,uid,gid,true)}),fchown:(function(fd,uid,gid){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}FS.chown(stream.node,uid,gid)}),truncate:(function(path,len){if(len<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var node;if(typeof path==="string"){var lookup=FS.lookupPath(path,{follow:true});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(ERRNO_CODES.EPERM)}if(FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EISDIR)}if(!FS.isFile(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var err=FS.nodePermissions(node,"w");if(err){throw new FS.ErrnoError(err)}node.node_ops.setattr(node,{size:len,timestamp:Date.now()})}),ftruncate:(function(fd,len){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}FS.truncate(stream.node,len)}),utime:(function(path,atime,mtime){var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;node.node_ops.setattr(node,{timestamp:Math.max(atime,mtime)})}),open:(function(path,flags,mode,fd_start,fd_end){if(path===""){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}flags=typeof flags==="string"?FS.modeStringToFlags(flags):flags;mode=typeof mode==="undefined"?438:mode;if(flags&64){mode=mode&4095|32768}else{mode=0}var node;if(typeof path==="object"){node=path}else{path=PATH.normalize(path);try{var lookup=FS.lookupPath(path,{follow:!(flags&131072)});node=lookup.node}catch(e){}}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(ERRNO_CODES.EEXIST)}}else{node=FS.mknod(path,mode,0);created=true}}if(!node){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(FS.isChrdev(node.mode)){flags&=~512}if(flags&65536&&!FS.isDir(node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}if(!created){var err=FS.mayOpen(node,flags);if(err){throw new FS.ErrnoError(err)}}if(flags&512){FS.truncate(node,0)}flags&=~(128|512);var stream=FS.createStream({node:node,path:FS.getPath(node),flags:flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false},fd_start,fd_end);if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(Module["logReadFiles"]&&!(flags&1)){if(!FS.readFiles)FS.readFiles={};if(!(path in FS.readFiles)){FS.readFiles[path]=1;Module["printErr"]("read file: "+path)}}try{if(FS.trackingDelegate["onOpenFile"]){var trackingFlags=0;if((flags&2097155)!==1){trackingFlags|=FS.tracking.openFlags.READ}if((flags&2097155)!==0){trackingFlags|=FS.tracking.openFlags.WRITE}FS.trackingDelegate["onOpenFile"](path,trackingFlags)}}catch(e){console.log("FS.trackingDelegate['onOpenFile']('"+path+"', flags) threw an exception: "+e.message)}return stream}),close:(function(stream){if(stream.getdents)stream.getdents=null;try{if(stream.stream_ops.close){stream.stream_ops.close(stream)}}catch(e){throw e}finally{FS.closeStream(stream.fd)}}),llseek:(function(stream,offset,whence){if(!stream.seekable||!stream.stream_ops.llseek){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}stream.position=stream.stream_ops.llseek(stream,offset,whence);stream.ungotten=[];return stream.position}),read:(function(stream,buffer,offset,length,position){if(length<0||position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EISDIR)}if(!stream.stream_ops.read){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}var seeking=true;if(typeof position==="undefined"){position=stream.position;seeking=false}else if(!stream.seekable){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}var bytesRead=stream.stream_ops.read(stream,buffer,offset,length,position);if(!seeking)stream.position+=bytesRead;return bytesRead}),write:(function(stream,buffer,offset,length,position,canOwn){if(length<0||position<0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.EISDIR)}if(!stream.stream_ops.write){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if(stream.flags&1024){FS.llseek(stream,0,2)}var seeking=true;if(typeof position==="undefined"){position=stream.position;seeking=false}else if(!stream.seekable){throw new FS.ErrnoError(ERRNO_CODES.ESPIPE)}var bytesWritten=stream.stream_ops.write(stream,buffer,offset,length,position,canOwn);if(!seeking)stream.position+=bytesWritten;try{if(stream.path&&FS.trackingDelegate["onWriteToFile"])FS.trackingDelegate["onWriteToFile"](stream.path)}catch(e){console.log("FS.trackingDelegate['onWriteToFile']('"+path+"') threw an exception: "+e.message)}return bytesWritten}),allocate:(function(stream,offset,length){if(offset<0||length<=0){throw new FS.ErrnoError(ERRNO_CODES.EINVAL)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(ERRNO_CODES.EBADF)}if(!FS.isFile(stream.node.mode)&&!FS.isDir(stream.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}if(!stream.stream_ops.allocate){throw new FS.ErrnoError(ERRNO_CODES.EOPNOTSUPP)}stream.stream_ops.allocate(stream,offset,length)}),mmap:(function(stream,buffer,offset,length,position,prot,flags){if((stream.flags&2097155)===1){throw new FS.ErrnoError(ERRNO_CODES.EACCES)}if(!stream.stream_ops.mmap){throw new FS.ErrnoError(ERRNO_CODES.ENODEV)}return stream.stream_ops.mmap(stream,buffer,offset,length,position,prot,flags)}),msync:(function(stream,buffer,offset,length,mmapFlags){if(!stream||!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)}),munmap:(function(stream){return 0}),ioctl:(function(stream,cmd,arg){if(!stream.stream_ops.ioctl){throw new FS.ErrnoError(ERRNO_CODES.ENOTTY)}return stream.stream_ops.ioctl(stream,cmd,arg)}),readFile:(function(path,opts){opts=opts||{};opts.flags=opts.flags||"r";opts.encoding=opts.encoding||"binary";if(opts.encoding!=="utf8"&&opts.encoding!=="binary"){throw new Error('Invalid encoding type "'+opts.encoding+'"')}var ret;var stream=FS.open(path,opts.flags);var stat=FS.stat(path);var length=stat.size;var buf=new Uint8Array(length);FS.read(stream,buf,0,length,0);if(opts.encoding==="utf8"){ret=UTF8ArrayToString(buf,0)}else if(opts.encoding==="binary"){ret=buf}FS.close(stream);return ret}),writeFile:(function(path,data,opts){opts=opts||{};opts.flags=opts.flags||"w";opts.encoding=opts.encoding||"utf8";if(opts.encoding!=="utf8"&&opts.encoding!=="binary"){throw new Error('Invalid encoding type "'+opts.encoding+'"')}var stream=FS.open(path,opts.flags,opts.mode);if(opts.encoding==="utf8"){var buf=new Uint8Array(lengthBytesUTF8(data)+1);var actualNumBytes=stringToUTF8Array(data,buf,0,buf.length);FS.write(stream,buf,0,actualNumBytes,0,opts.canOwn)}else if(opts.encoding==="binary"){FS.write(stream,data,0,data.length,0,opts.canOwn)}FS.close(stream)}),cwd:(function(){return FS.currentPath}),chdir:(function(path){var lookup=FS.lookupPath(path,{follow:true});if(lookup.node===null){throw new FS.ErrnoError(ERRNO_CODES.ENOENT)}if(!FS.isDir(lookup.node.mode)){throw new FS.ErrnoError(ERRNO_CODES.ENOTDIR)}var err=FS.nodePermissions(lookup.node,"x");if(err){throw new FS.ErrnoError(err)}FS.currentPath=lookup.path}),createDefaultDirectories:(function(){FS.mkdir("/tmp");FS.mkdir("/home");FS.mkdir("/home/web_user")}),createDefaultDevices:(function(){FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:(function(){return 0}),write:(function(stream,buffer,offset,length,pos){return length})});FS.mkdev("/dev/null",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev("/dev/tty",FS.makedev(5,0));FS.mkdev("/dev/tty1",FS.makedev(6,0));var random_device;if(typeof crypto!=="undefined"){var randomBuffer=new Uint8Array(1);random_device=(function(){crypto.getRandomValues(randomBuffer);return randomBuffer[0]})}else if(ENVIRONMENT_IS_NODE){random_device=(function(){return require("crypto")["randomBytes"](1)[0]})}else{random_device=(function(){return Math.random()*256|0})}FS.createDevice("/dev","random",random_device);FS.createDevice("/dev","urandom",random_device);FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")}),createSpecialDirectories:(function(){FS.mkdir("/proc");FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd");FS.mount({mount:(function(){var node=FS.createNode("/proc/self","fd",16384|511,73);node.node_ops={lookup:(function(parent,name){var fd=+name;var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);var ret={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:(function(){return stream.path})}};ret.parent=ret;return ret})};return node})},{},"/proc/self/fd")}),createStandardStreams:(function(){if(Module["stdin"]){FS.createDevice("/dev","stdin",Module["stdin"])}else{FS.symlink("/dev/tty","/dev/stdin")}if(Module["stdout"]){FS.createDevice("/dev","stdout",null,Module["stdout"])}else{FS.symlink("/dev/tty","/dev/stdout")}if(Module["stderr"]){FS.createDevice("/dev","stderr",null,Module["stderr"])}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin","r");assert(stdin.fd===0,"invalid handle for stdin ("+stdin.fd+")");var stdout=FS.open("/dev/stdout","w");assert(stdout.fd===1,"invalid handle for stdout ("+stdout.fd+")");var stderr=FS.open("/dev/stderr","w");assert(stderr.fd===2,"invalid handle for stderr ("+stderr.fd+")")}),ensureErrnoError:(function(){if(FS.ErrnoError)return;FS.ErrnoError=function ErrnoError(errno,node){this.node=node;this.setErrno=(function(errno){this.errno=errno;for(var key in ERRNO_CODES){if(ERRNO_CODES[key]===errno){this.code=key;break}}});this.setErrno(errno);this.message=ERRNO_MESSAGES[errno];if(this.stack)Object.defineProperty(this,"stack",{value:(new Error).stack})};FS.ErrnoError.prototype=new Error;FS.ErrnoError.prototype.constructor=FS.ErrnoError;[ERRNO_CODES.ENOENT].forEach((function(code){FS.genericErrors[code]=new FS.ErrnoError(code);FS.genericErrors[code].stack="<generic error, no stack>"}))}),staticInit:(function(){FS.ensureErrnoError();FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={"MEMFS":MEMFS,"IDBFS":IDBFS,"NODEFS":NODEFS,"WORKERFS":WORKERFS}}),init:(function(input,output,error){assert(!FS.init.initialized,"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)");FS.init.initialized=true;FS.ensureErrnoError();Module["stdin"]=input||Module["stdin"];Module["stdout"]=output||Module["stdout"];Module["stderr"]=error||Module["stderr"];FS.createStandardStreams()}),quit:(function(){FS.init.initialized=false;var fflush=Module["_fflush"];if(fflush)fflush(0);for(var i=0;i<FS.streams.length;i++){var stream=FS.streams[i];if(!stream){continue}FS.close(stream)}}),getMode:(function(canRead,canWrite){var mode=0;if(canRead)mode|=292|73;if(canWrite)mode|=146;return mode}),joinPath:(function(parts,forceRelative){var path=PATH.join.apply(null,parts);if(forceRelative&&path[0]=="/")path=path.substr(1);return path}),absolutePath:(function(relative,base){return PATH.resolve(base,relative)}),standardizePath:(function(path){return PATH.normalize(path)}),findObject:(function(path,dontResolveLastLink){var ret=FS.analyzePath(path,dontResolveLastLink);if(ret.exists){return ret.object}else{___setErrNo(ret.error);return null}}),analyzePath:(function(path,dontResolveLastLink){try{var lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});path=lookup.path}catch(e){}var ret={isRoot:false,exists:false,error:0,name:null,path:null,object:null,parentExists:false,parentPath:null,parentObject:null};try{var lookup=FS.lookupPath(path,{parent:true});ret.parentExists=true;ret.parentPath=lookup.path;ret.parentObject=lookup.node;ret.name=PATH.basename(path);lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});ret.exists=true;ret.path=lookup.path;ret.object=lookup.node;ret.name=lookup.node.name;ret.isRoot=lookup.path==="/"}catch(e){ret.error=e.errno}return ret}),createFolder:(function(parent,name,canRead,canWrite){var path=PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name);var mode=FS.getMode(canRead,canWrite);return FS.mkdir(path,mode)}),createPath:(function(parent,path,canRead,canWrite){parent=typeof parent==="string"?parent:FS.getPath(parent);var parts=path.split("/").reverse();while(parts.length){var part=parts.pop();if(!part)continue;var current=PATH.join2(parent,part);try{FS.mkdir(current)}catch(e){}parent=current}return current}),createFile:(function(parent,name,properties,canRead,canWrite){var path=PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name);var mode=FS.getMode(canRead,canWrite);return FS.create(path,mode)}),createDataFile:(function(parent,name,data,canRead,canWrite,canOwn){var path=name?PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name):parent;var mode=FS.getMode(canRead,canWrite);var node=FS.create(path,mode);if(data){if(typeof data==="string"){var arr=new Array(data.length);for(var i=0,len=data.length;i<len;++i)arr[i]=data.charCodeAt(i);data=arr}FS.chmod(node,mode|146);var stream=FS.open(node,"w");FS.write(stream,data,0,data.length,0,canOwn);FS.close(stream);FS.chmod(node,mode)}return node}),createDevice:(function(parent,name,input,output){var path=PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name);var mode=FS.getMode(!!input,!!output);if(!FS.createDevice.major)FS.createDevice.major=64;var dev=FS.makedev(FS.createDevice.major++,0);FS.registerDevice(dev,{open:(function(stream){stream.seekable=false}),close:(function(stream){if(output&&output.buffer&&output.buffer.length){output(10)}}),read:(function(stream,buffer,offset,length,pos){var bytesRead=0;for(var i=0;i<length;i++){var result;try{result=input()}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EIO)}if(result===undefined&&bytesRead===0){throw new FS.ErrnoError(ERRNO_CODES.EAGAIN)}if(result===null||result===undefined)break;bytesRead++;buffer[offset+i]=result}if(bytesRead){stream.node.timestamp=Date.now()}return bytesRead}),write:(function(stream,buffer,offset,length,pos){for(var i=0;i<length;i++){try{output(buffer[offset+i])}catch(e){throw new FS.ErrnoError(ERRNO_CODES.EIO)}}if(length){stream.node.timestamp=Date.now()}return i})});return FS.mkdev(path,mode,dev)}),createLink:(function(parent,name,target,canRead,canWrite){var path=PATH.join2(typeof parent==="string"?parent:FS.getPath(parent),name);return FS.symlink(target,path)}),forceLoadFile:(function(obj){if(obj.isDevice||obj.isFolder||obj.link||obj.contents)return true;var success=true;if(typeof XMLHttpRequest!=="undefined"){throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.")}else if(Module["read"]){try{obj.contents=intArrayFromString(Module["read"](obj.url),true);obj.usedBytes=obj.contents.length}catch(e){success=false}}else{throw new Error("Cannot load without read() or XMLHttpRequest.")}if(!success)___setErrNo(ERRNO_CODES.EIO);return success}),createLazyFile:(function(parent,name,url,canRead,canWrite){function LazyUint8Array(){this.lengthKnown=false;this.chunks=[]}LazyUint8Array.prototype.get=function LazyUint8Array_get(idx){if(idx>this.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(function(from,to){if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);if(typeof Uint8Array!="undefined")xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}else{return intArrayFromString(xhr.responseText||"",true)}});var lazyArray=this;lazyArray.setDataGetter((function(chunkNum){var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]==="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]==="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]}));if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;console.log("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!=="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._length})},chunkSize:{get:(function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize})}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:(function(){return this.contents.length})}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach((function(key){var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}return fn.apply(null,arguments)}}));stream_ops.read=function stream_ops_read(stream,buffer,offset,length,position){if(!FS.forceLoadFile(node)){throw new FS.ErrnoError(ERRNO_CODES.EIO)}var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);assert(size>=0);if(contents.slice){for(var i=0;i<size;i++){buffer[offset+i]=contents[position+i]}}else{for(var i=0;i<size;i++){buffer[offset+i]=contents.get(position+i)}}return size};node.stream_ops=stream_ops;return node}),createPreloadedFile:(function(parent,name,url,canRead,canWrite,onload,onerror,dontCreateFile,canOwn,preFinish){Browser.init();var fullname=name?PATH.resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency("cp "+fullname);function processData(byteArray){function finish(byteArray){if(preFinish)preFinish();if(!dontCreateFile){FS.createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}if(onload)onload();removeRunDependency(dep)}var handled=false;Module["preloadPlugins"].forEach((function(plugin){if(handled)return;if(plugin["canHandle"](fullname)){plugin["handle"](byteArray,fullname,finish,(function(){if(onerror)onerror();removeRunDependency(dep)}));handled=true}}));if(!handled)finish(byteArray)}addRunDependency(dep);if(typeof url=="string"){Browser.asyncLoad(url,(function(byteArray){processData(byteArray)}),onerror)}else{processData(url)}}),indexedDB:(function(){return window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB}),DB_NAME:(function(){return"EM_FS_"+window.location.pathname}),DB_VERSION:20,DB_STORE_NAME:"FILE_DATA",saveFilesToDB:(function(paths,onload,onerror){onload=onload||(function(){});onerror=onerror||(function(){});var indexedDB=FS.indexedDB();try{var openRequest=indexedDB.open(FS.DB_NAME(),FS.DB_VERSION)}catch(e){return onerror(e)}openRequest.onupgradeneeded=function openRequest_onupgradeneeded(){console.log("creating db");var db=openRequest.result;db.createObjectStore(FS.DB_STORE_NAME)};openRequest.onsuccess=function openRequest_onsuccess(){var db=openRequest.result;var transaction=db.transaction([FS.DB_STORE_NAME],"readwrite");var files=transaction.objectStore(FS.DB_STORE_NAME);var ok=0,fail=0,total=paths.length;function finish(){if(fail==0)onload();else onerror()}paths.forEach((function(path){var putRequest=files.put(FS.analyzePath(path).object.contents,path);putRequest.onsuccess=function putRequest_onsuccess(){ok++;if(ok+fail==total)finish()};putRequest.onerror=function putRequest_onerror(){fail++;if(ok+fail==total)finish()}}));transaction.onerror=onerror};openRequest.onerror=onerror}),loadFilesFromDB:(function(paths,onload,onerror){onload=onload||(function(){});onerror=onerror||(function(){});var indexedDB=FS.indexedDB();try{var openRequest=indexedDB.open(FS.DB_NAME(),FS.DB_VERSION)}catch(e){return onerror(e)}openRequest.onupgradeneeded=onerror;openRequest.onsuccess=function openRequest_onsuccess(){var db=openRequest.result;try{var transaction=db.transaction([FS.DB_STORE_NAME],"readonly")}catch(e){onerror(e);return}var files=transaction.objectStore(FS.DB_STORE_NAME);var ok=0,fail=0,total=paths.length;function finish(){if(fail==0)onload();else onerror()}paths.forEach((function(path){var getRequest=files.get(path);getRequest.onsuccess=function getRequest_onsuccess(){if(FS.analyzePath(path).exists){FS.unlink(path)}FS.createDataFile(PATH.dirname(path),PATH.basename(path),getRequest.result,true,true,true);ok++;if(ok+fail==total)finish()};getRequest.onerror=function getRequest_onerror(){fail++;if(ok+fail==total)finish()}}));transaction.onerror=onerror};openRequest.onerror=onerror})};var SYSCALLS={DEFAULT_POLLMASK:5,mappings:{},umask:511,calculateAt:(function(dirfd,path){if(path[0]!=="/"){var dir;if(dirfd===-100){dir=FS.cwd()}else{var dirstream=FS.getStream(dirfd);if(!dirstream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);dir=dirstream.path}path=PATH.join2(dir,path)}return path}),doStat:(function(func,path,buf){try{var stat=func(path)}catch(e){if(e&&e.node&&PATH.normalize(path)!==PATH.normalize(FS.getPath(e.node))){return-ERRNO_CODES.ENOTDIR}throw e}HEAP32[buf>>2]=stat.dev;HEAP32[buf+4>>2]=0;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAP32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;HEAP32[buf+32>>2]=0;HEAP32[buf+36>>2]=stat.size;HEAP32[buf+40>>2]=4096;HEAP32[buf+44>>2]=stat.blocks;HEAP32[buf+48>>2]=stat.atime.getTime()/1e3|0;HEAP32[buf+52>>2]=0;HEAP32[buf+56>>2]=stat.mtime.getTime()/1e3|0;HEAP32[buf+60>>2]=0;HEAP32[buf+64>>2]=stat.ctime.getTime()/1e3|0;HEAP32[buf+68>>2]=0;HEAP32[buf+72>>2]=stat.ino;return 0}),doMsync:(function(addr,stream,len,flags){var buffer=new Uint8Array(HEAPU8.subarray(addr,addr+len));FS.msync(stream,buffer,0,len,flags)}),doMkdir:(function(path,mode){path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0}),doMknod:(function(path,mode,dev){switch(mode&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-ERRNO_CODES.EINVAL}FS.mknod(path,mode,dev);return 0}),doReadlink:(function(path,buf,bufsize){if(bufsize<=0)return-ERRNO_CODES.EINVAL;var ret=FS.readlink(path);var len=Math.min(bufsize,lengthBytesUTF8(ret));var endChar=HEAP8[buf+len];stringToUTF8(ret,buf,bufsize+1);HEAP8[buf+len]=endChar;return len}),doAccess:(function(path,amode){if(amode&~7){return-ERRNO_CODES.EINVAL}var node;var lookup=FS.lookupPath(path,{follow:true});node=lookup.node;var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-ERRNO_CODES.EACCES}return 0}),doDup:(function(path,flags,suggestFD){var suggest=FS.getStream(suggestFD);if(suggest)FS.close(suggest);return FS.open(path,flags,0,suggestFD,suggestFD).fd}),doReadv:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr<len)break}return ret}),doWritev:(function(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr}return ret}),varargs:0,get:(function(varargs){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret}),getStr:(function(){var ret=Pointer_stringify(SYSCALLS.get());return ret}),getStreamFromFD:(function(){var stream=FS.getStream(SYSCALLS.get());if(!stream)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return stream}),getSocketFromFD:(function(){var socket=SOCKFS.getSocket(SYSCALLS.get());if(!socket)throw new FS.ErrnoError(ERRNO_CODES.EBADF);return socket}),getSocketAddress:(function(allowNull){var addrp=SYSCALLS.get(),addrlen=SYSCALLS.get();if(allowNull&&addrp===0)return null;var info=__read_sockaddr(addrp,addrlen);if(info.errno)throw new FS.ErrnoError(info.errno);info.addr=DNS.lookup_addr(info.addr)||info.addr;return info}),get64:(function(){var low=SYSCALLS.get(),high=SYSCALLS.get();if(low>=0)assert(high===0);else assert(high===-1);return low}),getZero:(function(){assert(SYSCALLS.get()===0)})};function ___syscall10(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr();FS.unlink(path);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall145(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doReadv(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();return SYSCALLS.doWritev(stream,iov,iovcnt)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall15(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),mode=SYSCALLS.get();FS.chmod(path,mode);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall195(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,path,buf)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall197(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),buf=SYSCALLS.get();return SYSCALLS.doStat(FS.stat,stream.path,buf)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall220(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),dirp=SYSCALLS.get(),count=SYSCALLS.get();if(!stream.getdents){stream.getdents=FS.readdir(stream.path)}var pos=0;while(stream.getdents.length>0&&pos+268<=count){var id;var type;var name=stream.getdents.pop();if(name[0]==="."){id=1;type=4}else{var child=FS.lookupNode(stream.node,name);id=child.id;type=FS.isChrdev(child.mode)?2:FS.isDir(child.mode)?4:FS.isLink(child.mode)?10:8}HEAP32[dirp+pos>>2]=id;HEAP32[dirp+pos+4>>2]=stream.position;HEAP16[dirp+pos+8>>1]=268;HEAP8[dirp+pos+10>>0]=type;stringToUTF8(name,dirp+pos+11,256);pos+=268}return pos}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall221(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),cmd=SYSCALLS.get();switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-ERRNO_CODES.EINVAL}var newStream;newStream=FS.open(stream.path,stream.flags,0,arg);return newStream.fd};case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0};case 12:case 12:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0};case 13:case 14:case 13:case 14:return 0;case 16:case 8:return-ERRNO_CODES.EINVAL;case 9:___setErrNo(ERRNO_CODES.EINVAL);return-1;default:{return-ERRNO_CODES.EINVAL}}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall330(which,varargs){SYSCALLS.varargs=varargs;try{var old=SYSCALLS.getStreamFromFD(),suggestFD=SYSCALLS.get(),flags=SYSCALLS.get();assert(!flags);if(old.fd===suggestFD)return-ERRNO_CODES.EINVAL;return SYSCALLS.doDup(old.path,old.flags,suggestFD)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall39(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),mode=SYSCALLS.get();return SYSCALLS.doMkdir(path,mode)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall40(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr();FS.rmdir(path);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall5(which,varargs){SYSCALLS.varargs=varargs;try{var pathname=SYSCALLS.getStr(),flags=SYSCALLS.get(),mode=SYSCALLS.get();var stream=FS.open(pathname,flags,mode);return stream.fd}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),op=SYSCALLS.get();switch(op){case 21505:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21506:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};case 21519:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;var argp=SYSCALLS.get();HEAP32[argp>>2]=0;return 0};case 21520:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return-ERRNO_CODES.EINVAL};case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)};case 21523:{if(!stream.tty)return-ERRNO_CODES.ENOTTY;return 0};default:abort("bad ioctl syscall "+op)}}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall6(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD();FS.close(stream);return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall63(which,varargs){SYSCALLS.varargs=varargs;try{var old=SYSCALLS.getStreamFromFD(),suggestFD=SYSCALLS.get();if(old.fd===suggestFD)return suggestFD;return SYSCALLS.doDup(old.path,old.flags,suggestFD)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall85(which,varargs){SYSCALLS.varargs=varargs;try{var path=SYSCALLS.getStr(),buf=SYSCALLS.get(),bufsize=SYSCALLS.get();return SYSCALLS.doReadlink(path,buf,bufsize)}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___unlock(){}function _abort(){Module["abort"]()}function _emscripten_get_now(){abort()}function _emscripten_get_now_is_monotonic(){return ENVIRONMENT_IS_NODE||typeof dateNow!=="undefined"||(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)&&self["performance"]&&self["performance"]["now"]}function _clock_gettime(clk_id,tp){var now;if(clk_id===0){now=Date.now()}else if(clk_id===1&&_emscripten_get_now_is_monotonic()){now=_emscripten_get_now()}else{___setErrNo(ERRNO_CODES.EINVAL);return-1}HEAP32[tp>>2]=now/1e3|0;HEAP32[tp+4>>2]=now%1e3*1e3*1e3|0;return 0}function _difftime(time1,time0){return time1-time0}var DLFCN={error:null,errorMsg:null,loadedLibs:{},loadedLibNames:{}};function _dlclose(handle){if(!DLFCN.loadedLibs[handle]){DLFCN.errorMsg="Tried to dlclose() unopened handle: "+handle;return 1}else{var lib_record=DLFCN.loadedLibs[handle];if(--lib_record.refcount==0){if(lib_record.module.cleanups){lib_record.module.cleanups.forEach((function(cleanup){cleanup()}))}delete DLFCN.loadedLibNames[lib_record.name];delete DLFCN.loadedLibs[handle]}return 0}}function _dlerror(){if(DLFCN.errorMsg===null){return 0}else{if(DLFCN.error)_free(DLFCN.error);var msgArr=intArrayFromString(DLFCN.errorMsg);DLFCN.error=allocate(msgArr,"i8",ALLOC_NORMAL);DLFCN.errorMsg=null;return DLFCN.error}}function _dlsym(handle,symbol){symbol=Pointer_stringify(symbol);if(!DLFCN.loadedLibs[handle]){DLFCN.errorMsg="Tried to dlsym() from an unopened handle: "+handle;return 0}else{var lib=DLFCN.loadedLibs[handle];symbol="_"+symbol;if(lib.cached_functions.hasOwnProperty(symbol)){return lib.cached_functions[symbol]}if(!lib.module.hasOwnProperty(symbol)){DLFCN.errorMsg='Tried to lookup unknown symbol "'+symbol+'" in dynamic lib: '+lib.name;return 0}else{var result=lib.module[symbol];if(typeof result=="function"){result=Runtime.addFunction(result);lib.cached_functions=result}return result}}}function _emscripten_set_main_loop_timing(mode,value){Browser.mainLoop.timingMode=mode;Browser.mainLoop.timingValue=value;if(!Browser.mainLoop.func){return 1}if(mode==0){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setTimeout(){var timeUntilNextTick=Math.max(0,Browser.mainLoop.tickStartTime+value-_emscripten_get_now())|0;setTimeout(Browser.mainLoop.runner,timeUntilNextTick)};Browser.mainLoop.method="timeout"}else if(mode==1){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_rAF(){Browser.requestAnimationFrame(Browser.mainLoop.runner)};Browser.mainLoop.method="rAF"}else if(mode==2){if(typeof setImmediate==="undefined"){var setImmediates=[];var emscriptenMainLoopMessageId="setimmediate";function Browser_setImmediate_messageHandler(event){if(event.data===emscriptenMainLoopMessageId||event.data.target===emscriptenMainLoopMessageId){event.stopPropagation();setImmediates.shift()()}}addEventListener("message",Browser_setImmediate_messageHandler,true);setImmediate=function Browser_emulated_setImmediate(func){setImmediates.push(func);if(ENVIRONMENT_IS_WORKER){if(Module["setImmediates"]===undefined)Module["setImmediates"]=[];Module["setImmediates"].push(func);postMessage({target:emscriptenMainLoopMessageId})}else postMessage(emscriptenMainLoopMessageId,"*")}}Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setImmediate(){setImmediate(Browser.mainLoop.runner)};Browser.mainLoop.method="immediate"}return 0}function _emscripten_set_main_loop(func,fps,simulateInfiniteLoop,arg,noSetTiming){Module["noExitRuntime"]=true;assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters.");Browser.mainLoop.func=func;Browser.mainLoop.arg=arg;var browserIterationFunc;if(typeof arg!=="undefined"){browserIterationFunc=(function(){Module["dynCall_vi"](func,arg)})}else{browserIterationFunc=(function(){Module["dynCall_v"](func)})}var thisMainLoopId=Browser.mainLoop.currentlyRunningMainloop;Browser.mainLoop.runner=function Browser_mainLoop_runner(){if(ABORT)return;if(Browser.mainLoop.queue.length>0){var start=Date.now();var blocker=Browser.mainLoop.queue.shift();blocker.func(blocker.arg);if(Browser.mainLoop.remainingBlockers){var remaining=Browser.mainLoop.remainingBlockers;var next=remaining%1==0?remaining-1:Math.floor(remaining);if(blocker.counted){Browser.mainLoop.remainingBlockers=next}else{next=next+.5;Browser.mainLoop.remainingBlockers=(8*remaining+next)/9}}console.log('main loop blocker "'+blocker.name+'" took '+(Date.now()-start)+" ms");Browser.mainLoop.updateStatus();if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;setTimeout(Browser.mainLoop.runner,0);return}if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;Browser.mainLoop.currentFrameNumber=Browser.mainLoop.currentFrameNumber+1|0;if(Browser.mainLoop.timingMode==1&&Browser.mainLoop.timingValue>1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}else if(Browser.mainLoop.timingMode==0){Browser.mainLoop.tickStartTime=_emscripten_get_now()}if(Browser.mainLoop.method==="timeout"&&Module.ctx){Module.printErr("Looks like you are rendering without using requestAnimationFrame for the main loop. You should use 0 for the frame rate in emscripten_set_main_loop in order to use requestAnimationFrame, as that can greatly improve your frame rates!");Browser.mainLoop.method=""}Browser.mainLoop.runIter(browserIterationFunc);if(thisMainLoopId<Browser.mainLoop.currentlyRunningMainloop)return;if(typeof SDL==="object"&&SDL.audio&&SDL.audio.queueNewAudioData)SDL.audio.queueNewAudioData();Browser.mainLoop.scheduler()};if(!noSetTiming){if(fps&&fps>0)_emscripten_set_main_loop_timing(0,1e3/fps);else _emscripten_set_main_loop_timing(1,1);Browser.mainLoop.scheduler()}if(simulateInfiniteLoop){throw"SimulateInfiniteLoop"}}var Browser={mainLoop:{scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:(function(){Browser.mainLoop.scheduler=null;Browser.mainLoop.currentlyRunningMainloop++}),resume:(function(){Browser.mainLoop.currentlyRunningMainloop++;var timingMode=Browser.mainLoop.timingMode;var timingValue=Browser.mainLoop.timingValue;var func=Browser.mainLoop.func;Browser.mainLoop.func=null;_emscripten_set_main_loop(func,0,false,Browser.mainLoop.arg,true);_emscripten_set_main_loop_timing(timingMode,timingValue);Browser.mainLoop.scheduler()}),updateStatus:(function(){if(Module["setStatus"]){var message=Module["statusMessage"]||"Please wait...";var remaining=Browser.mainLoop.remainingBlockers;var expected=Browser.mainLoop.expectedBlockers;if(remaining){if(remaining<expected){Module["setStatus"](message+" ("+(expected-remaining)+"/"+expected+")")}else{Module["setStatus"](message)}}else{Module["setStatus"]("")}}}),runIter:(function(func){if(ABORT)return;if(Module["preMainLoop"]){var preRet=Module["preMainLoop"]();if(preRet===false){return}}try{func()}catch(e){if(e instanceof ExitStatus){return}else{if(e&&typeof e==="object"&&e.stack)Module.printErr("exception thrown: "+[e,e.stack]);throw e}}if(Module["postMainLoop"])Module["postMainLoop"]()})},isFullscreen:false,pointerLock:false,moduleContextCreatedCallbacks:[],workers:[],init:(function(){if(!Module["preloadPlugins"])Module["preloadPlugins"]=[];if(Browser.initted)return;Browser.initted=true;try{new Blob;Browser.hasBlobConstructor=true}catch(e){Browser.hasBlobConstructor=false;console.log("warning: no blob constructor, cannot create blobs with mimetypes")}Browser.BlobBuilder=typeof MozBlobBuilder!="undefined"?MozBlobBuilder:typeof WebKitBlobBuilder!="undefined"?WebKitBlobBuilder:!Browser.hasBlobConstructor?console.log("warning: no BlobBuilder"):null;Browser.URLObject=typeof window!="undefined"?window.URL?window.URL:window.webkitURL:undefined;if(!Module.noImageDecoding&&typeof Browser.URLObject==="undefined"){console.log("warning: Browser does not support creating object URLs. Built-in browser image decoding will not be available.");Module.noImageDecoding=true}var imagePlugin={};imagePlugin["canHandle"]=function imagePlugin_canHandle(name){return!Module.noImageDecoding&&/\.(jpg|jpeg|png|bmp)$/i.test(name)};imagePlugin["handle"]=function imagePlugin_handle(byteArray,name,onload,onerror){var b=null;if(Browser.hasBlobConstructor){try{b=new Blob([byteArray],{type:Browser.getMimetype(name)});if(b.size!==byteArray.length){b=new Blob([(new Uint8Array(byteArray)).buffer],{type:Browser.getMimetype(name)})}}catch(e){Runtime.warnOnce("Blob constructor present but fails: "+e+"; falling back to blob builder")}}if(!b){var bb=new Browser.BlobBuilder;bb.append((new Uint8Array(byteArray)).buffer);b=bb.getBlob()}var url=Browser.URLObject.createObjectURL(b);var img=new Image;img.onload=function img_onload(){assert(img.complete,"Image "+name+" could not be decoded");var canvas=document.createElement("canvas");canvas.width=img.width;canvas.height=img.height;var ctx=canvas.getContext("2d");ctx.drawImage(img,0,0);Module["preloadedImages"][name]=canvas;Browser.URLObject.revokeObjectURL(url);if(onload)onload(byteArray)};img.onerror=function img_onerror(event){console.log("Image "+url+" could not be decoded");if(onerror)onerror()};img.src=url};Module["preloadPlugins"].push(imagePlugin);var audioPlugin={};audioPlugin["canHandle"]=function audioPlugin_canHandle(name){return!Module.noAudioDecoding&&name.substr(-4)in{".ogg":1,".wav":1,".mp3":1}};audioPlugin["handle"]=function audioPlugin_handle(byteArray,name,onload,onerror){var done=false;function finish(audio){if(done)return;done=true;Module["preloadedAudios"][name]=audio;if(onload)onload(byteArray)}function fail(){if(done)return;done=true;Module["preloadedAudios"][name]=new Audio;if(onerror)onerror()}if(Browser.hasBlobConstructor){try{var b=new Blob([byteArray],{type:Browser.getMimetype(name)})}catch(e){return fail()}var url=Browser.URLObject.createObjectURL(b);var audio=new Audio;audio.addEventListener("canplaythrough",(function(){finish(audio)}),false);audio.onerror=function audio_onerror(event){if(done)return;console.log("warning: browser could not fully decode audio "+name+", trying slower base64 approach");function encode64(data){var BASE="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";var PAD="=";var ret="";var leftchar=0;var leftbits=0;for(var i=0;i<data.length;i++){leftchar=leftchar<<8|data[i];leftbits+=8;while(leftbits>=6){var curr=leftchar>>leftbits-6&63;leftbits-=6;ret+=BASE[curr]}}if(leftbits==2){ret+=BASE[(leftchar&3)<<4];ret+=PAD+PAD}else if(leftbits==4){ret+=BASE[(leftchar&15)<<2];ret+=PAD}return ret}audio.src="data:audio/x-"+name.substr(-3)+";base64,"+encode64(byteArray);finish(audio)};audio.src=url;Browser.safeSetTimeout((function(){finish(audio)}),1e4)}else{return fail()}};Module["preloadPlugins"].push(audioPlugin);function pointerLockChange(){Browser.pointerLock=document["pointerLockElement"]===Module["canvas"]||document["mozPointerLockElement"]===Module["canvas"]||document["webkitPointerLockElement"]===Module["canvas"]||document["msPointerLockElement"]===Module["canvas"]}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);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&&Module["canvas"].requestPointerLock){Module["canvas"].requestPointerLock();ev.preventDefault()}}),false)}}}),createContext:(function(canvas,useWebGL,setInModule,webGLContextAttributes){if(useWebGL&&Module.ctx&&canvas==Module.canvas)return Module.ctx;var ctx;var contextHandle;if(useWebGL){var contextAttributes={antialias:false,alpha:false};if(webGLContextAttributes){for(var attribute in webGLContextAttributes){contextAttributes[attribute]=webGLContextAttributes[attribute]}}contextHandle=GL.createContext(canvas,contextAttributes);if(contextHandle){ctx=GL.getContext(contextHandle).GLctx}}else{ctx=canvas.getContext("2d")}if(!ctx)return null;if(setInModule){if(!useWebGL)assert(typeof GLctx==="undefined","cannot set in module if GLctx is used, but we are a non-GL context that would replace it");Module.ctx=ctx;if(useWebGL)GL.makeContextCurrent(contextHandle);Module.useWebGL=useWebGL;Browser.moduleContextCreatedCallbacks.forEach((function(callback){callback()}));Browser.init()}return ctx}),destroyContext:(function(canvas,useWebGL,setInModule){}),fullscreenHandlersInstalled:false,lockPointer:undefined,resizeCanvas:undefined,requestFullscreen:(function(lockPointer,resizeCanvas,vrDevice){Browser.lockPointer=lockPointer;Browser.resizeCanvas=resizeCanvas;Browser.vrDevice=vrDevice;if(typeof Browser.lockPointer==="undefined")Browser.lockPointer=true;if(typeof Browser.resizeCanvas==="undefined")Browser.resizeCanvas=false;if(typeof Browser.vrDevice==="undefined")Browser.vrDevice=null;var canvas=Module["canvas"];function fullscreenChange(){Browser.isFullscreen=false;var canvasContainer=canvas.parentNode;if((document["fullscreenElement"]||document["mozFullScreenElement"]||document["msFullscreenElement"]||document["webkitFullscreenElement"]||document["webkitCurrentFullScreenElement"])===canvasContainer){canvas.exitFullscreen=document["exitFullscreen"]||document["cancelFullScreen"]||document["mozCancelFullScreen"]||document["msExitFullscreen"]||document["webkitCancelFullScreen"]||(function(){});canvas.exitFullscreen=canvas.exitFullscreen.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);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["webkitRequestFullScreen"]?(function(){canvasContainer["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"])}):null);if(vrDevice){canvasContainer.requestFullscreen({vrDisplay:vrDevice})}else{canvasContainer.requestFullscreen()}}),requestFullScreen:(function(lockPointer,resizeCanvas,vrDevice){Module.printErr("Browser.requestFullScreen() is deprecated. Please call Browser.requestFullscreen instead.");Browser.requestFullScreen=(function(lockPointer,resizeCanvas,vrDevice){return Browser.requestFullscreen(lockPointer,resizeCanvas,vrDevice)});return Browser.requestFullscreen(lockPointer,resizeCanvas,vrDevice)}),nextRAF:0,fakeRequestAnimationFrame:(function(func){var now=Date.now();if(Browser.nextRAF===0){Browser.nextRAF=now+1e3/60}else{while(now+2>=Browser.nextRAF){Browser.nextRAF+=1e3/60}}var delay=Math.max(Browser.nextRAF-now,0);setTimeout(func,delay)}),requestAnimationFrame:function requestAnimationFrame(func){if(typeof window==="undefined"){Browser.fakeRequestAnimationFrame(func)}else{if(!window.requestAnimationFrame){window.requestAnimationFrame=window["requestAnimationFrame"]||window["mozRequestAnimationFrame"]||window["webkitRequestAnimationFrame"]||window["msRequestAnimationFrame"]||window["oRequestAnimationFrame"]||Browser.fakeRequestAnimationFrame}window.requestAnimationFrame(func)}},safeCallback:(function(func){return(function(){if(!ABORT)return func.apply(null,arguments)})}),allowAsyncCallbacks:true,queuedAsyncCallbacks:[],pauseAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=false}),resumeAsyncCallbacks:(function(){Browser.allowAsyncCallbacks=true;if(Browser.queuedAsyncCallbacks.length>0){var callbacks=Browser.queuedAsyncCallbacks;Browser.queuedAsyncCallbacks=[];callbacks.forEach((function(func){func()}))}}),safeRequestAnimationFrame:(function(func){return Browser.requestAnimationFrame((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}))}),safeSetTimeout:(function(func,timeout){Module["noExitRuntime"]=true;return setTimeout((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}else{Browser.queuedAsyncCallbacks.push(func)}}),timeout)}),safeSetInterval:(function(func,timeout){Module["noExitRuntime"]=true;return setInterval((function(){if(ABORT)return;if(Browser.allowAsyncCallbacks){func()}}),timeout)}),getMimetype:(function(name){return{"jpg":"image/jpeg","jpeg":"image/jpeg","png":"image/png","bmp":"image/bmp","ogg":"audio/ogg","wav":"audio/wav","mp3":"audio/mpeg"}[name.substr(name.lastIndexOf(".")+1)]}),getUserMedia:(function(func){if(!window.getUserMedia){window.getUserMedia=navigator["getUserMedia"]||navigator["mozGetUserMedia"]}window.getUserMedia(func)}),getMovementX:(function(event){return event["movementX"]||event["mozMovementX"]||event["webkitMovementX"]||0}),getMovementY:(function(event){return event["movementY"]||event["mozMovementY"]||event["webkitMovementY"]||0}),getMouseWheelDelta:(function(event){var delta=0;switch(event.type){case"DOMMouseScroll":delta=event.detail;break;case"mousewheel":delta=event.wheelDelta;break;case"wheel":delta=event["deltaY"];break;default:throw"unrecognized mouse wheel event: "+event.type}return delta}),mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:(function(event){if(Browser.pointerLock){if(event.type!="mousemove"&&"mozMovementX"in event){Browser.mouseMovementX=Browser.mouseMovementY=0}else{Browser.mouseMovementX=Browser.getMovementX(event);Browser.mouseMovementY=Browser.getMovementY(event)}if(typeof SDL!="undefined"){Browser.mouseX=SDL.mouseX+Browser.mouseMovementX;Browser.mouseY=SDL.mouseY+Browser.mouseMovementY}else{Browser.mouseX+=Browser.mouseMovementX;Browser.mouseY+=Browser.mouseMovementY}}else{var rect=Module["canvas"].getBoundingClientRect();var cw=Module["canvas"].width;var ch=Module["canvas"].height;var scrollX=typeof window.scrollX!=="undefined"?window.scrollX:window.pageXOffset;var scrollY=typeof window.scrollY!=="undefined"?window.scrollY:window.pageYOffset;if(event.type==="touchstart"||event.type==="touchend"||event.type==="touchmove"){var touch=event.touch;if(touch===undefined){return}var adjustedX=touch.pageX-(scrollX+rect.left);var adjustedY=touch.pageY-(scrollY+rect.top);adjustedX=adjustedX*(cw/rect.width);adjustedY=adjustedY*(ch/rect.height);var coords={x:adjustedX,y:adjustedY};if(event.type==="touchstart"){Browser.lastTouches[touch.identifier]=coords;Browser.touches[touch.identifier]=coords}else if(event.type==="touchend"||event.type==="touchmove"){var last=Browser.touches[touch.identifier];if(!last)last=coords;Browser.lastTouches[touch.identifier]=last;Browser.touches[touch.identifier]=coords}return}var x=event.pageX-(scrollX+rect.left);var y=event.pageY-(scrollY+rect.top);x=x*(cw/rect.width);y=y*(ch/rect.height);Browser.mouseMovementX=x-Browser.mouseX;Browser.mouseMovementY=y-Browser.mouseY;Browser.mouseX=x;Browser.mouseY=y}}),asyncLoad:(function(url,onload,onerror,noRunDep){var dep=!noRunDep?getUniqueRunDependency("al "+url):"";Module["readAsync"](url,(function(arrayBuffer){assert(arrayBuffer,'Loading data file "'+url+'" failed (no arrayBuffer).');onload(new Uint8Array(arrayBuffer));if(dep)removeRunDependency(dep)}),(function(event){if(onerror){onerror()}else{throw'Loading data file "'+url+'" failed.'}}));if(dep)addRunDependency(dep)}),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["fullscreenElement"]||document["mozFullScreenElement"]||document["msFullscreenElement"]||document["webkitFullscreenElement"]||document["webkitCurrentFullScreenElement"])===canvas.parentNode&&typeof screen!="undefined"){var factor=Math.min(screen.width/w,screen.height/h);w=Math.round(w*factor);h=Math.round(h*factor)}if(Browser.resizeCanvas){if(canvas.width!=w)canvas.width=w;if(canvas.height!=h)canvas.height=h;if(typeof canvas.style!="undefined"){canvas.style.removeProperty("width");canvas.style.removeProperty("height")}}else{if(canvas.width!=wNative)canvas.width=wNative;if(canvas.height!=hNative)canvas.height=hNative;if(typeof canvas.style!="undefined"){if(w!=wNative||h!=hNative){canvas.style.setProperty("width",w+"px","important");canvas.style.setProperty("height",h+"px","important")}else{canvas.style.removeProperty("width");canvas.style.removeProperty("height")}}}}),wgetRequests:{},nextWgetRequestHandle:0,getNextWgetRequestHandle:(function(){var handle=Browser.nextWgetRequestHandle;Browser.nextWgetRequestHandle++;return handle})};var EGL={errorCode:12288,defaultDisplayInitialized:false,currentContext:0,currentReadSurface:0,currentDrawSurface:0,stringCache:{},setErrorCode:(function(code){EGL.errorCode=code}),chooseConfig:(function(display,attribList,config,config_size,numConfigs){if(display!=62e3){EGL.setErrorCode(12296);return 0}if((!config||!config_size)&&!numConfigs){EGL.setErrorCode(12300);return 0}if(numConfigs){HEAP32[numConfigs>>2]=1}if(config&&config_size>0){HEAP32[config>>2]=62002}EGL.setErrorCode(12288);return 1})};function _eglWaitClient(){EGL.setErrorCode(12288);return 1}function _eglBindAPI(api){if(api==12448){EGL.setErrorCode(12288);return 1}else{EGL.setErrorCode(12300);return 0}}function _eglChooseConfig(display,attrib_list,configs,config_size,numConfigs){return EGL.chooseConfig(display,attrib_list,configs,config_size,numConfigs)}var GLUT={initTime:null,idleFunc:null,displayFunc:null,keyboardFunc:null,keyboardUpFunc:null,specialFunc:null,specialUpFunc:null,reshapeFunc:null,motionFunc:null,passiveMotionFunc:null,mouseFunc:null,buttons:0,modifiers:0,initWindowWidth:256,initWindowHeight:256,initDisplayMode:18,windowX:0,windowY:0,windowWidth:0,windowHeight:0,requestedAnimationFrame:false,saveModifiers:(function(event){GLUT.modifiers=0;if(event["shiftKey"])GLUT.modifiers+=1;if(event["ctrlKey"])GLUT.modifiers+=2;if(event["altKey"])GLUT.modifiers+=4}),onMousemove:(function(event){var lastX=Browser.mouseX;var lastY=Browser.mouseY;Browser.calculateMouseEvent(event);var newX=Browser.mouseX;var newY=Browser.mouseY;if(newX==lastX&&newY==lastY)return;if(GLUT.buttons==0&&event.target==Module["canvas"]&&GLUT.passiveMotionFunc){event.preventDefault();GLUT.saveModifiers(event);Module["dynCall_vii"](GLUT.passiveMotionFunc,lastX,lastY)}else if(GLUT.buttons!=0&&GLUT.motionFunc){event.preventDefault();GLUT.saveModifiers(event);Module["dynCall_vii"](GLUT.motionFunc,lastX,lastY)}}),getSpecialKey:(function(keycode){var key=null;switch(keycode){case 8:key=120;break;case 46:key=111;break;case 112:key=1;break;case 113:key=2;break;case 114:key=3;break;case 115:key=4;break;case 116:key=5;break;case 117:key=6;break;case 118:key=7;break;case 119:key=8;break;case 120:key=9;break;case 121:key=10;break;case 122:key=11;break;case 123:key=12;break;case 37:key=100;break;case 38:key=101;break;case 39:key=102;break;case 40:key=103;break;case 33:key=104;break;case 34:key=105;break;case 36:key=106;break;case 35:key=107;break;case 45:key=108;break;case 16:case 5:key=112;break;case 6:key=113;break;case 17:case 3:key=114;break;case 4:key=115;break;case 18:case 2:key=116;break;case 1:key=117;break}return key}),getASCIIKey:(function(event){if(event["ctrlKey"]||event["altKey"]||event["metaKey"])return null;var keycode=event["keyCode"];if(48<=keycode&&keycode<=57)return keycode;if(65<=keycode&&keycode<=90)return event["shiftKey"]?keycode:keycode+32;if(96<=keycode&&keycode<=105)return keycode-48;if(106<=keycode&&keycode<=111)return keycode-106+42;switch(keycode){case 9:case 13:case 27:case 32:case 61:return keycode}var s=event["shiftKey"];switch(keycode){case 186:return s?58:59;case 187:return s?43:61;case 188:return s?60:44;case 189:return s?95:45;case 190:return s?62:46;case 191:return s?63:47;case 219:return s?123:91;case 220:return s?124:47;case 221:return s?125:93;case 222:return s?34:39}return null}),onKeydown:(function(event){if(GLUT.specialFunc||GLUT.keyboardFunc){var key=GLUT.getSpecialKey(event["keyCode"]);if(key!==null){if(GLUT.specialFunc){event.preventDefault();GLUT.saveModifiers(event);Module["dynCall_viii"](GLUT.specialFunc,key,Browser.mouseX,Browser.mouseY)}}else{key=GLUT.getASCIIKey(event);if(key!==null&&GLUT.keyboardFunc){event.preventDefault();GLUT.saveModifiers(event);Module["dynCall_viii"](GLUT.keyboardFunc,key,Browser.mouseX,Browser.mouseY)}}}}),onKeyup:(function(event){if(GLUT.specialUpFunc||GLUT.keyboardUpFunc){var key=GLUT.getSpecialKey(event["keyCode"]);if(key!==null){if(GLUT.specialUpFunc){event.preventDefault();GLUT.saveModifiers(event);Module["dynCall_viii"](GLUT.specialUpFunc,key,Browser.mouseX,Browser.mouseY)}}else{key=GLUT.getASCIIKey(event);if(key!==null&&GLUT.keyboardUpFunc){event.preventDefault();GLUT.saveModifiers(event);Module["dynCall_viii"](GLUT.keyboardUpFunc,key,Browser.mouseX,Browser.mouseY)}}}}),touchHandler:(function(event){if(event.target!=Module["canvas"]){return}var touches=event.changedTouches,main=touches[0],type="";switch(event.type){case"touchstart":type="mousedown";break;case"touchmove":type="mousemove";break;case"touchend":type="mouseup";break;default:return}var simulatedEvent=document.createEvent("MouseEvent");simulatedEvent.initMouseEvent(type,true,true,window,1,main.screenX,main.screenY,main.clientX,main.clientY,false,false,false,false,0,null);main.target.dispatchEvent(simulatedEvent);event.preventDefault()}),onMouseButtonDown:(function(event){Browser.calculateMouseEvent(event);GLUT.buttons|=1<<event["button"];if(event.target==Module["canvas"]&&GLUT.mouseFunc){try{event.target.setCapture()}catch(e){}event.preventDefault();GLUT.saveModifiers(event);Module["dynCall_viiii"](GLUT.mouseFunc,event["button"],0,Browser.mouseX,Browser.mouseY)}}),onMouseButtonUp:(function(event){Browser.calculateMouseEvent(event);GLUT.buttons&=~(1<<event["button"]);if(GLUT.mouseFunc){event.preventDefault();GLUT.saveModifiers(event);Module["dynCall_viiii"](GLUT.mouseFunc,event["button"],1,Browser.mouseX,Browser.mouseY)}}),onMouseWheel:(function(event){Browser.calculateMouseEvent(event);var e=window.event||event;var delta=-Browser.getMouseWheelDelta(event);delta=delta==0?0:delta>0?Math.max(delta,1):Math.min(delta,-1);var button=3;if(delta<0){button=4}if(GLUT.mouseFunc){event.preventDefault();GLUT.saveModifiers(event);Module["dynCall_viiii"](GLUT.mouseFunc,button,0,Browser.mouseX,Browser.mouseY)}}),onFullscreenEventChange:(function(event){var width;var height;if(document["fullscreen"]||document["fullScreen"]||document["mozFullScreen"]||document["webkitIsFullScreen"]){width=screen["width"];height=screen["height"]}else{width=GLUT.windowWidth;height=GLUT.windowHeight;document.removeEventListener("fullscreenchange",GLUT.onFullscreenEventChange,true);document.removeEventListener("mozfullscreenchange",GLUT.onFullscreenEventChange,true);document.removeEventListener("webkitfullscreenchange",GLUT.onFullscreenEventChange,true)}Browser.setCanvasSize(width,height);if(GLUT.reshapeFunc){Module["dynCall_vii"](GLUT.reshapeFunc,width,height)}_glutPostRedisplay()}),requestFullscreen:(function(){Browser.requestFullscreen(false,false)}),requestFullScreen:(function(){Module.printErr("GLUT.requestFullScreen() is deprecated. Please call GLUT.requestFullscreen instead.");GLUT.requestFullScreen=(function(){return GLUT.requestFullscreen()});return GLUT.requestFullscreen()}),exitFullscreen:(function(){var CFS=document["exitFullscreen"]||document["cancelFullScreen"]||document["mozCancelFullScreen"]||document["webkitCancelFullScreen"]||(function(){});CFS.apply(document,[])}),cancelFullScreen:(function(){Module.printErr("GLUT.cancelFullScreen() is deprecated. Please call GLUT.exitFullscreen instead.");GLUT.cancelFullScreen=(function(){return GLUT.exitFullscreen()});return GLUT.exitFullscreen()})};function _glutInitDisplayMode(mode){GLUT.initDisplayMode=mode}function _glutCreateWindow(name){var contextAttributes={antialias:(GLUT.initDisplayMode&128)!=0,depth:(GLUT.initDisplayMode&16)!=0,stencil:(GLUT.initDisplayMode&32)!=0,alpha:(GLUT.initDisplayMode&8)!=0};Module.ctx=Browser.createContext(Module["canvas"],true,true,contextAttributes);return Module.ctx?1:0}var GL={counter:1,lastError:0,buffers:[],mappedBuffers:{},programs:[],framebuffers:[],renderbuffers:[],textures:[],uniforms:[],shaders:[],vaos:[],contexts:[],currentContext:null,offscreenCanvases:{},timerQueriesEXT:[],byteSizeByTypeRoot:5120,byteSizeByType:[1,1,2,2,4,4,4,2,3,4,8],programInfos:{},stringCache:{},tempFixedLengthArray:[],packAlignment:4,unpackAlignment:4,init:(function(){GL.miniTempBuffer=new Float32Array(GL.MINI_TEMP_BUFFER_SIZE);for(var i=0;i<GL.MINI_TEMP_BUFFER_SIZE;i++){GL.miniTempBufferViews[i]=GL.miniTempBuffer.subarray(0,i+1)}for(var i=0;i<32;i++){GL.tempFixedLengthArray.push(new Array(i))}}),recordError:function recordError(errorCode){if(!GL.lastError){GL.lastError=errorCode}},getNewId:(function(table){var ret=GL.counter++;for(var i=table.length;i<ret;i++){table[i]=null}return ret}),MINI_TEMP_BUFFER_SIZE:256,miniTempBuffer:null,miniTempBufferViews:[0],getSource:(function(shader,count,string,length){var source="";for(var i=0;i<count;++i){var frag;if(length){var len=HEAP32[length+i*4>>2];if(len<0){frag=Pointer_stringify(HEAP32[string+i*4>>2])}else{frag=Pointer_stringify(HEAP32[string+i*4>>2],len)}}else{frag=Pointer_stringify(HEAP32[string+i*4>>2])}source+=frag}return source}),createContext:(function(canvas,webGLContextAttributes){if(typeof webGLContextAttributes["majorVersion"]==="undefined"&&typeof webGLContextAttributes["minorVersion"]==="undefined"){webGLContextAttributes["majorVersion"]=1;webGLContextAttributes["minorVersion"]=0}var ctx;var errorInfo="?";function onContextCreationError(event){errorInfo=event.statusMessage||errorInfo}try{canvas.addEventListener("webglcontextcreationerror",onContextCreationError,false);try{if(webGLContextAttributes["majorVersion"]==1&&webGLContextAttributes["minorVersion"]==0){ctx=canvas.getContext("webgl",webGLContextAttributes)||canvas.getContext("experimental-webgl",webGLContextAttributes)}else if(webGLContextAttributes["majorVersion"]==2&&webGLContextAttributes["minorVersion"]==0){ctx=canvas.getContext("webgl2",webGLContextAttributes)}else{throw"Unsupported WebGL context version "+majorVersion+"."+minorVersion+"!"}}finally{canvas.removeEventListener("webglcontextcreationerror",onContextCreationError,false)}if(!ctx)throw":("}catch(e){Module.print("Could not create canvas: "+[errorInfo,e,JSON.stringify(webGLContextAttributes)]);return 0}if(!ctx)return 0;var context=GL.registerContext(ctx,webGLContextAttributes);return context}),registerContext:(function(ctx,webGLContextAttributes){var handle=GL.getNewId(GL.contexts);var context={handle:handle,attributes:webGLContextAttributes,version:webGLContextAttributes["majorVersion"],GLctx:ctx};if(ctx.canvas)ctx.canvas.GLctxObject=context;GL.contexts[handle]=context;if(typeof webGLContextAttributes["enableExtensionsByDefault"]==="undefined"||webGLContextAttributes["enableExtensionsByDefault"]){GL.initExtensions(context)}return handle}),makeContextCurrent:(function(contextHandle){var context=GL.contexts[contextHandle];if(!context)return false;GLctx=Module.ctx=context.GLctx;GL.currentContext=context;return true}),getContext:(function(contextHandle){return GL.contexts[contextHandle]}),deleteContext:(function(contextHandle){if(GL.currentContext===GL.contexts[contextHandle])GL.currentContext=null;if(typeof JSEvents==="object")JSEvents.removeAllHandlersOnTarget(GL.contexts[contextHandle].GLctx.canvas);if(GL.contexts[contextHandle]&&GL.contexts[contextHandle].GLctx.canvas)GL.contexts[contextHandle].GLctx.canvas.GLctxObject=undefined;GL.contexts[contextHandle]=null}),initExtensions:(function(context){if(!context)context=GL.currentContext;if(context.initExtensionsDone)return;context.initExtensionsDone=true;var GLctx=context.GLctx;context.maxVertexAttribs=GLctx.getParameter(GLctx.MAX_VERTEX_ATTRIBS);if(context.version<2){var instancedArraysExt=GLctx.getExtension("ANGLE_instanced_arrays");if(instancedArraysExt){GLctx["vertexAttribDivisor"]=(function(index,divisor){instancedArraysExt["vertexAttribDivisorANGLE"](index,divisor)});GLctx["drawArraysInstanced"]=(function(mode,first,count,primcount){instancedArraysExt["drawArraysInstancedANGLE"](mode,first,count,primcount)});GLctx["drawElementsInstanced"]=(function(mode,count,type,indices,primcount){instancedArraysExt["drawElementsInstancedANGLE"](mode,count,type,indices,primcount)})}var vaoExt=GLctx.getExtension("OES_vertex_array_object");if(vaoExt){GLctx["createVertexArray"]=(function(){return vaoExt["createVertexArrayOES"]()});GLctx["deleteVertexArray"]=(function(vao){vaoExt["deleteVertexArrayOES"](vao)});GLctx["bindVertexArray"]=(function(vao){vaoExt["bindVertexArrayOES"](vao)});GLctx["isVertexArray"]=(function(vao){return vaoExt["isVertexArrayOES"](vao)})}var drawBuffersExt=GLctx.getExtension("WEBGL_draw_buffers");if(drawBuffersExt){GLctx["drawBuffers"]=(function(n,bufs){drawBuffersExt["drawBuffersWEBGL"](n,bufs)})}}GLctx.disjointTimerQueryExt=GLctx.getExtension("EXT_disjoint_timer_query");var automaticallyEnabledExtensions=["OES_texture_float","OES_texture_half_float","OES_standard_derivatives","OES_vertex_array_object","WEBGL_compressed_texture_s3tc","WEBGL_depth_texture","OES_element_index_uint","EXT_texture_filter_anisotropic","ANGLE_instanced_arrays","OES_texture_float_linear","OES_texture_half_float_linear","WEBGL_compressed_texture_atc","WEBKIT_WEBGL_compressed_texture_pvrtc","WEBGL_compressed_texture_pvrtc","EXT_color_buffer_half_float","WEBGL_color_buffer_float","EXT_frag_depth","EXT_sRGB","WEBGL_draw_buffers","WEBGL_shared_resources","EXT_shader_texture_lod","EXT_color_buffer_float"];var exts=GLctx.getSupportedExtensions();if(exts&&exts.length>0){GLctx.getSupportedExtensions().forEach((function(ext){if(automaticallyEnabledExtensions.indexOf(ext)!=-1){GLctx.getExtension(ext)}}))}}),populateUniformTable:(function(program){var p=GL.programs[program];GL.programInfos[program]={uniforms:{},maxUniformLength:0,maxAttributeLength:-1,maxUniformBlockNameLength:-1};var ptable=GL.programInfos[program];var utable=ptable.uniforms;var numUniforms=GLctx.getProgramParameter(p,GLctx.ACTIVE_UNIFORMS);for(var i=0;i<numUniforms;++i){var u=GLctx.getActiveUniform(p,i);var name=u.name;ptable.maxUniformLength=Math.max(ptable.maxUniformLength,name.length+1);if(name.indexOf("]",name.length-1)!==-1){var ls=name.lastIndexOf("[");name=name.slice(0,ls)}var loc=GLctx.getUniformLocation(p,name);if(loc!=null){var id=GL.getNewId(GL.uniforms);utable[name]=[u.size,id];GL.uniforms[id]=loc;for(var j=1;j<u.size;++j){var n=name+"["+j+"]";loc=GLctx.getUniformLocation(p,n);id=GL.getNewId(GL.uniforms);GL.uniforms[id]=loc}}}})};function _eglCreateContext(display,config,hmm,contextAttribs){if(display!=62e3){EGL.setErrorCode(12296);return 0}var glesContextVersion=1;for(;;){var param=HEAP32[contextAttribs>>2];if(param==12440){glesContextVersion=HEAP32[contextAttribs+4>>2]}else if(param==12344){break}else{EGL.setErrorCode(12292);return 0}contextAttribs+=8}if(glesContextVersion!=2){EGL.setErrorCode(12293);return 0}_glutInitDisplayMode(178);EGL.windowID=_glutCreateWindow();if(EGL.windowID!=0){EGL.setErrorCode(12288);return 62004}else{EGL.setErrorCode(12297);return 0}}function _eglCreateWindowSurface(display,config,win,attrib_list){if(display!=62e3){EGL.setErrorCode(12296);return 0}if(config!=62002){EGL.setErrorCode(12293);return 0}EGL.setErrorCode(12288);return 62006}function _glutDestroyWindow(name){Module.ctx=Browser.destroyContext(Module["canvas"],true,true);return 1}function _eglDestroyContext(display,context){if(display!=62e3){EGL.setErrorCode(12296);return 0}if(context!=62004){EGL.setErrorCode(12294);return 0}EGL.setErrorCode(12288);return 1}function _eglDestroySurface(display,surface){if(display!=62e3){EGL.setErrorCode(12296);return 0}if(surface!=62006){EGL.setErrorCode(12301);return 1}if(EGL.currentReadSurface==surface){EGL.currentReadSurface=0}if(EGL.currentDrawSurface==surface){EGL.currentDrawSurface=0}EGL.setErrorCode(12288);return 1}function _eglGetConfigAttrib(display,config,attribute,value){if(display!=62e3){EGL.setErrorCode(12296);return 0}if(config!=62002){EGL.setErrorCode(12293);return 0}if(!value){EGL.setErrorCode(12300);return 0}EGL.setErrorCode(12288);switch(attribute){case 12320:HEAP32[value>>2]=32;return 1;case 12321:HEAP32[value>>2]=8;return 1;case 12322:HEAP32[value>>2]=8;return 1;case 12323:HEAP32[value>>2]=8;return 1;case 12324:HEAP32[value>>2]=8;return 1;case 12325:HEAP32[value>>2]=24;return 1;case 12326:HEAP32[value>>2]=8;return 1;case 12327:HEAP32[value>>2]=12344;return 1;case 12328:HEAP32[value>>2]=62002;return 1;case 12329:HEAP32[value>>2]=0;return 1;case 12330:HEAP32[value>>2]=4096;return 1;case 12331:HEAP32[value>>2]=16777216;return 1;case 12332:HEAP32[value>>2]=4096;return 1;case 12333:HEAP32[value>>2]=0;return 1;case 12334:HEAP32[value>>2]=0;return 1;case 12335:HEAP32[value>>2]=12344;return 1;case 12337:HEAP32[value>>2]=4;return 1;case 12338:HEAP32[value>>2]=1;return 1;case 12339:HEAP32[value>>2]=4;return 1;case 12340:HEAP32[value>>2]=12344;return 1;case 12341:case 12342:case 12343:HEAP32[value>>2]=-1;return 1;case 12345:case 12346:HEAP32[value>>2]=0;return 1;case 12347:case 12348:HEAP32[value>>2]=1;return 1;case 12349:case 12350:HEAP32[value>>2]=0;return 1;case 12351:HEAP32[value>>2]=12430;return 1;case 12352:HEAP32[value>>2]=4;return 1;case 12354:HEAP32[value>>2]=0;return 1;default:EGL.setErrorCode(12292);return 0}}function _eglGetDisplay(nativeDisplayType){EGL.setErrorCode(12288);return 62e3}function _eglGetProcAddress(name_){return _emscripten_GetProcAddress(name_)}function _eglInitialize(display,majorVersion,minorVersion){if(display==62e3){if(majorVersion){HEAP32[majorVersion>>2]=1}if(minorVersion){HEAP32[minorVersion>>2]=4}EGL.defaultDisplayInitialized=true;EGL.setErrorCode(12288);return 1}else{EGL.setErrorCode(12296);return 0}}function _eglMakeCurrent(display,draw,read,context){if(display!=62e3){EGL.setErrorCode(12296);return 0}if(context!=0&&context!=62004){EGL.setErrorCode(12294);return 0}if(read!=0&&read!=62006||draw!=0&&draw!=62006){EGL.setErrorCode(12301);return 0}EGL.currentContext=context;EGL.currentDrawSurface=draw;EGL.currentReadSurface=read;EGL.setErrorCode(12288);return 1}function _eglSwapBuffers(){if(!EGL.defaultDisplayInitialized){EGL.setErrorCode(12289)}else if(!Module.ctx){EGL.setErrorCode(12290)}else if(Module.ctx.isContextLost()){EGL.setErrorCode(12302)}else{EGL.setErrorCode(12288);return 1}return 0}function _eglSwapInterval(display,interval){if(display!=62e3){EGL.setErrorCode(12296);return 0}if(interval==0)_emscripten_set_main_loop_timing(0,0);else _emscripten_set_main_loop_timing(1,interval);EGL.setErrorCode(12288);return 1}function _eglTerminate(display){if(display!=62e3){EGL.setErrorCode(12296);return 0}EGL.currentContext=0;EGL.currentReadSurface=0;EGL.currentDrawSurface=0;EGL.defaultDisplayInitialized=false;EGL.setErrorCode(12288);return 1}function _eglWaitGL(){return _eglWaitClient.apply(null,arguments)}function _eglWaitNative(nativeEngineId){EGL.setErrorCode(12288);return 1}function _emscripten_async_wget(url,file,onload,onerror){Module["noExitRuntime"]=true;var _url=Pointer_stringify(url);var _file=Pointer_stringify(file);_file=PATH.resolve(FS.cwd(),_file);function doCallback(callback){if(callback){var stack=Runtime.stackSave();Module["dynCall_vi"](callback,allocate(intArrayFromString(_file),"i8",ALLOC_STACK));Runtime.stackRestore(stack)}}var destinationDirectory=PATH.dirname(_file);FS.createPreloadedFile(destinationDirectory,PATH.basename(_file),_url,true,true,(function(){doCallback(onload)}),(function(){doCallback(onerror)}),false,false,(function(){try{FS.unlink(_file)}catch(e){}FS.mkdirTree(destinationDirectory)}))}function _emscripten_cancel_main_loop(){Browser.mainLoop.pause();Browser.mainLoop.func=null}var JSEvents={keyEvent:0,mouseEvent:0,wheelEvent:0,uiEvent:0,focusEvent:0,deviceOrientationEvent:0,deviceMotionEvent:0,fullscreenChangeEvent:0,pointerlockChangeEvent:0,visibilityChangeEvent:0,touchEvent:0,lastGamepadState:null,lastGamepadStateFrame:null,numGamepadsConnected:0,previousFullscreenElement:null,previousScreenX:null,previousScreenY:null,removeEventListenersRegistered:false,staticInit:(function(){if(typeof window!=="undefined"){window.addEventListener("gamepadconnected",(function(){++JSEvents.numGamepadsConnected}));window.addEventListener("gamepaddisconnected",(function(){--JSEvents.numGamepadsConnected}));var firstState=navigator.getGamepads?navigator.getGamepads():navigator.webkitGetGamepads?navigator.webkitGetGamepads():null;if(firstState){JSEvents.numGamepadsConnected=firstState.length}}}),registerRemoveEventListeners:(function(){if(!JSEvents.removeEventListenersRegistered){__ATEXIT__.push((function(){for(var i=JSEvents.eventHandlers.length-1;i>=0;--i){JSEvents._removeHandler(i)}}));JSEvents.removeEventListenersRegistered=true}}),findEventTarget:(function(target){if(target){if(typeof target=="number"){target=Pointer_stringify(target)}if(target=="#window")return window;else if(target=="#document")return document;else if(target=="#screen")return window.screen;else if(target=="#canvas")return Module["canvas"];if(typeof target=="string")return document.getElementById(target);else return target}else{return window}}),deferredCalls:[],deferCall:(function(targetFunction,precedence,argsList){function arraysHaveEqualContent(arrA,arrB){if(arrA.length!=arrB.length)return false;for(var i in arrA){if(arrA[i]!=arrB[i])return false}return true}for(var i in JSEvents.deferredCalls){var call=JSEvents.deferredCalls[i];if(call.targetFunction==targetFunction&&arraysHaveEqualContent(call.argsList,argsList)){return}}JSEvents.deferredCalls.push({targetFunction:targetFunction,precedence:precedence,argsList:argsList});JSEvents.deferredCalls.sort((function(x,y){return x.precedence<y.precedence}))}),removeDeferredCalls:(function(targetFunction){for(var i=0;i<JSEvents.deferredCalls.length;++i){if(JSEvents.deferredCalls[i].targetFunction==targetFunction){JSEvents.deferredCalls.splice(i,1);--i}}}),canPerformEventHandlerRequests:(function(){return JSEvents.inEventHandler&&JSEvents.currentEventHandler.allowsDeferredCalls}),runDeferredCalls:(function(){if(!JSEvents.canPerformEventHandlerRequests()){return}for(var i=0;i<JSEvents.deferredCalls.length;++i){var call=JSEvents.deferredCalls[i];JSEvents.deferredCalls.splice(i,1);--i;call.targetFunction.apply(this,call.argsList)}}),inEventHandler:0,currentEventHandler:null,eventHandlers:[],isInternetExplorer:(function(){return navigator.userAgent.indexOf("MSIE")!==-1||navigator.appVersion.indexOf("Trident/")>0}),removeAllHandlersOnTarget:(function(target,eventTypeString){for(var i=0;i<JSEvents.eventHandlers.length;++i){if(JSEvents.eventHandlers[i].target==target&&(!eventTypeString||eventTypeString==JSEvents.eventHandlers[i].eventTypeString)){JSEvents._removeHandler(i--)}}}),_removeHandler:(function(i){var h=JSEvents.eventHandlers[i];h.target.removeEventListener(h.eventTypeString,h.eventListenerFunc,h.useCapture);JSEvents.eventHandlers.splice(i,1)}),registerOrRemoveHandler:(function(eventHandler){var jsEventHandler=function jsEventHandler(event){++JSEvents.inEventHandler;JSEvents.currentEventHandler=eventHandler;JSEvents.runDeferredCalls();eventHandler.handlerFunc(event);JSEvents.runDeferredCalls();--JSEvents.inEventHandler};if(eventHandler.callbackfunc){eventHandler.eventListenerFunc=jsEventHandler;eventHandler.target.addEventListener(eventHandler.eventTypeString,jsEventHandler,eventHandler.useCapture);JSEvents.eventHandlers.push(eventHandler);JSEvents.registerRemoveEventListeners()}else{for(var i=0;i<JSEvents.eventHandlers.length;++i){if(JSEvents.eventHandlers[i].target==eventHandler.target&&JSEvents.eventHandlers[i].eventTypeString==eventHandler.eventTypeString){JSEvents._removeHandler(i--)}}}}),registerKeyEventCallback:(function(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString){if(!JSEvents.keyEvent){JSEvents.keyEvent=_malloc(164)}var handlerFunc=(function(event){var e=event||window.event;stringToUTF8(e.key?e.key:"",JSEvents.keyEvent+0,32);stringToUTF8(e.code?e.code:"",JSEvents.keyEvent+32,32);HEAP32[JSEvents.keyEvent+64>>2]=e.location;HEAP32[JSEvents.keyEvent+68>>2]=e.ctrlKey;HEAP32[JSEvents.keyEvent+72>>2]=e.shiftKey;HEAP32[JSEvents.keyEvent+76>>2]=e.altKey;HEAP32[JSEvents.keyEvent+80>>2]=e.metaKey;HEAP32[JSEvents.keyEvent+84>>2]=e.repeat;stringToUTF8(e.locale?e.locale:"",JSEvents.keyEvent+88,32);stringToUTF8(e.char?e.char:"",JSEvents.keyEvent+120,32);HEAP32[JSEvents.keyEvent+152>>2]=e.charCode;HEAP32[JSEvents.keyEvent+156>>2]=e.keyCode;HEAP32[JSEvents.keyEvent+160>>2]=e.which;var shouldCancel=Module["dynCall_iiii"](callbackfunc,eventTypeId,JSEvents.keyEvent,userData);if(shouldCancel){e.preventDefault()}});var eventHandler={target:JSEvents.findEventTarget(target),allowsDeferredCalls:JSEvents.isInternetExplorer()?false:true,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:handlerFunc,useCapture:useCapture};JSEvents.registerOrRemoveHandler(eventHandler)}),getBoundingClientRectOrZeros:(function(target){return target.getBoundingClientRect?target.getBoundingClientRect():{left:0,top:0}}),fillMouseEventData:(function(eventStruct,e,target){HEAPF64[eventStruct>>3]=JSEvents.tick();HEAP32[eventStruct+8>>2]=e.screenX;HEAP32[eventStruct+12>>2]=e.screenY;HEAP32[eventStruct+16>>2]=e.clientX;HEAP32[eventStruct+20>>2]=e.clientY;HEAP32[eventStruct+24>>2]=e.ctrlKey;HEAP32[eventStruct+28>>2]=e.shiftKey;HEAP32[eventStruct+32>>2]=e.altKey;HEAP32[eventStruct+36>>2]=e.metaKey;HEAP16[eventStruct+40>>1]=e.button;HEAP16[eventStruct+42>>1]=e.buttons;HEAP32[eventStruct+44>>2]=e["movementX"]||e["mozMovementX"]||e["webkitMovementX"]||e.screenX-JSEvents.previousScreenX;HEAP32[eventStruct+48>>2]=e["movementY"]||e["mozMovementY"]||e["webkitMovementY"]||e.screenY-JSEvents.previousScreenY;if(Module["canvas"]){var rect=Module["canvas"].getBoundingClientRect();HEAP32[eventStruct+60>>2]=e.clientX-rect.left;HEAP32[eventStruct+64>>2]=e.clientY-rect.top}else{HEAP32[eventStruct+60>>2]=0;HEAP32[eventStruct+64>>2]=0}if(target){var rect=JSEvents.getBoundingClientRectOrZeros(target);HEAP32[eventStruct+52>>2]=e.clientX-rect.left;HEAP32[eventStruct+56>>2]=e.clientY-rect.top}else{HEAP32[eventStruct+52>>2]=0;HEAP32[eventStruct+56>>2]=0}if(e.type!=="wheel"&&e.type!=="mousewheel"){JSEvents.previousScreenX=e.screenX;JSEvents.previousScreenY=e.screenY}}),registerMouseEventCallback:(function(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString){if(!JSEvents.mouseEvent){JSEvents.mouseEvent=_malloc(72)}target=JSEvents.findEventTarget(target);var handlerFunc=(function(event){var e=event||window.event;JSEvents.fillMouseEventData(JSEvents.mouseEvent,e,target);var shouldCancel=Module["dynCall_iiii"](callbackfunc,eventTypeId,JSEvents.mouseEvent,userData);if(shouldCancel){e.preventDefault()}});var eventHandler={target:target,allowsDeferredCalls:eventTypeString!="mousemove"&&eventTypeString!="mouseenter"&&eventTypeString!="mouseleave",eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:handlerFunc,useCapture:useCapture};if(JSEvents.isInternetExplorer()&&eventTypeString=="mousedown")eventHandler.allowsDeferredCalls=false;JSEvents.registerOrRemoveHandler(eventHandler)}),registerWheelEventCallback:(function(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString){if(!JSEvents.wheelEvent){JSEvents.wheelEvent=_malloc(104)}target=JSEvents.findEventTarget(target);var wheelHandlerFunc=(function(event){var e=event||window.event;JSEvents.fillMouseEventData(JSEvents.wheelEvent,e,target);HEAPF64[JSEvents.wheelEvent+72>>3]=e["deltaX"];HEAPF64[JSEvents.wheelEvent+80>>3]=e["deltaY"];HEAPF64[JSEvents.wheelEvent+88>>3]=e["deltaZ"];HEAP32[JSEvents.wheelEvent+96>>2]=e["deltaMode"];var shouldCancel=Module["dynCall_iiii"](callbackfunc,eventTypeId,JSEvents.wheelEvent,userData);if(shouldCancel){e.preventDefault()}});var mouseWheelHandlerFunc=(function(event){var e=event||window.event;JSEvents.fillMouseEventData(JSEvents.wheelEvent,e,target);HEAPF64[JSEvents.wheelEvent+72>>3]=e["wheelDeltaX"]||0;HEAPF64[JSEvents.wheelEvent+80>>3]=-(e["wheelDeltaY"]?e["wheelDeltaY"]:e["wheelDelta"]);HEAPF64[JSEvents.wheelEvent+88>>3]=0;HEAP32[JSEvents.wheelEvent+96>>2]=0;var shouldCancel=Module["dynCall_iiii"](callbackfunc,eventTypeId,JSEvents.wheelEvent,userData);if(shouldCancel){e.preventDefault()}});var eventHandler={target:target,allowsDeferredCalls:true,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:eventTypeString=="wheel"?wheelHandlerFunc:mouseWheelHandlerFunc,useCapture:useCapture};JSEvents.registerOrRemoveHandler(eventHandler)}),pageScrollPos:(function(){if(window.pageXOffset>0||window.pageYOffset>0){return[window.pageXOffset,window.pageYOffset]}if(typeof document.documentElement.scrollLeft!=="undefined"||typeof document.documentElement.scrollTop!=="undefined"){return[document.documentElement.scrollLeft,document.documentElement.scrollTop]}return[document.body.scrollLeft|0,document.body.scrollTop|0]}),registerUiEventCallback:(function(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString){if(!JSEvents.uiEvent){JSEvents.uiEvent=_malloc(36)}if(eventTypeString=="scroll"&&!target){target=document}else{target=JSEvents.findEventTarget(target)}var handlerFunc=(function(event){var e=event||window.event;if(e.target!=target){return}var scrollPos=JSEvents.pageScrollPos();HEAP32[JSEvents.uiEvent>>2]=e.detail;HEAP32[JSEvents.uiEvent+4>>2]=document.body.clientWidth;HEAP32[JSEvents.uiEvent+8>>2]=document.body.clientHeight;HEAP32[JSEvents.uiEvent+12>>2]=window.innerWidth;HEAP32[JSEvents.uiEvent+16>>2]=window.innerHeight;HEAP32[JSEvents.uiEvent+20>>2]=window.outerWidth;HEAP32[JSEvents.uiEvent+24>>2]=window.outerHeight;HEAP32[JSEvents.uiEvent+28>>2]=scrollPos[0];HEAP32[JSEvents.uiEvent+32>>2]=scrollPos[1];var shouldCancel=Module["dynCall_iiii"](callbackfunc,eventTypeId,JSEvents.uiEvent,userData);if(shouldCancel){e.preventDefault()}});var eventHandler={target:target,allowsDeferredCalls:false,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:handlerFunc,useCapture:useCapture};JSEvents.registerOrRemoveHandler(eventHandler)}),getNodeNameForTarget:(function(target){if(!target)return"";if(target==window)return"#window";if(target==window.screen)return"#screen";return target&&target.nodeName?target.nodeName:""}),registerFocusEventCallback:(function(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString){if(!JSEvents.focusEvent){JSEvents.focusEvent=_malloc(256)}var handlerFunc=(function(event){var e=event||window.event;var nodeName=JSEvents.getNodeNameForTarget(e.target);var id=e.target.id?e.target.id:"";stringToUTF8(nodeName,JSEvents.focusEvent+0,128);stringToUTF8(id,JSEvents.focusEvent+128,128);var shouldCancel=Module["dynCall_iiii"](callbackfunc,eventTypeId,JSEvents.focusEvent,userData);if(shouldCancel){e.preventDefault()}});var eventHandler={target:JSEvents.findEventTarget(target),allowsDeferredCalls:false,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:handlerFunc,useCapture:useCapture};JSEvents.registerOrRemoveHandler(eventHandler)}),tick:(function(){if(window["performance"]&&window["performance"]["now"])return window["performance"]["now"]();else return Date.now()}),registerDeviceOrientationEventCallback:(function(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString){if(!JSEvents.deviceOrientationEvent){JSEvents.deviceOrientationEvent=_malloc(40)}var handlerFunc=(function(event){var e=event||window.event;HEAPF64[JSEvents.deviceOrientationEvent>>3]=JSEvents.tick();HEAPF64[JSEvents.deviceOrientationEvent+8>>3]=e.alpha;HEAPF64[JSEvents.deviceOrientationEvent+16>>3]=e.beta;HEAPF64[JSEvents.deviceOrientationEvent+24>>3]=e.gamma;HEAP32[JSEvents.deviceOrientationEvent+32>>2]=e.absolute;var shouldCancel=Module["dynCall_iiii"](callbackfunc,eventTypeId,JSEvents.deviceOrientationEvent,userData);if(shouldCancel){e.preventDefault()}});var eventHandler={target:JSEvents.findEventTarget(target),allowsDeferredCalls:false,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:handlerFunc,useCapture:useCapture};JSEvents.registerOrRemoveHandler(eventHandler)}),registerDeviceMotionEventCallback:(function(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString){if(!JSEvents.deviceMotionEvent){JSEvents.deviceMotionEvent=_malloc(80)}var handlerFunc=(function(event){var e=event||window.event;HEAPF64[JSEvents.deviceMotionEvent>>3]=JSEvents.tick();HEAPF64[JSEvents.deviceMotionEvent+8>>3]=e.acceleration.x;HEAPF64[JSEvents.deviceMotionEvent+16>>3]=e.acceleration.y;HEAPF64[JSEvents.deviceMotionEvent+24>>3]=e.acceleration.z;HEAPF64[JSEvents.deviceMotionEvent+32>>3]=e.accelerationIncludingGravity.x;HEAPF64[JSEvents.deviceMotionEvent+40>>3]=e.accelerationIncludingGravity.y;HEAPF64[JSEvents.deviceMotionEvent+48>>3]=e.accelerationIncludingGravity.z;HEAPF64[JSEvents.deviceMotionEvent+56>>3]=e.rotationRate.alpha;HEAPF64[JSEvents.deviceMotionEvent+64>>3]=e.rotationRate.beta;HEAPF64[JSEvents.deviceMotionEvent+72>>3]=e.rotationRate.gamma;var shouldCancel=Module["dynCall_iiii"](callbackfunc,eventTypeId,JSEvents.deviceMotionEvent,userData);if(shouldCancel){e.preventDefault()}});var eventHandler={target:JSEvents.findEventTarget(target),allowsDeferredCalls:false,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:handlerFunc,useCapture:useCapture};JSEvents.registerOrRemoveHandler(eventHandler)}),screenOrientation:(function(){if(!window.screen)return undefined;return window.screen.orientation||window.screen.mozOrientation||window.screen.webkitOrientation||window.screen.msOrientation}),fillOrientationChangeEventData:(function(eventStruct,e){var orientations=["portrait-primary","portrait-secondary","landscape-primary","landscape-secondary"];var orientations2=["portrait","portrait","landscape","landscape"];var orientationString=JSEvents.screenOrientation();var orientation=orientations.indexOf(orientationString);if(orientation==-1){orientation=orientations2.indexOf(orientationString)}HEAP32[eventStruct>>2]=1<<orientation;HEAP32[eventStruct+4>>2]=window.orientation}),registerOrientationChangeEventCallback:(function(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString){if(!JSEvents.orientationChangeEvent){JSEvents.orientationChangeEvent=_malloc(8)}if(!target){target=window.screen}else{target=JSEvents.findEventTarget(target)}var handlerFunc=(function(event){var e=event||window.event;JSEvents.fillOrientationChangeEventData(JSEvents.orientationChangeEvent,e);var shouldCancel=Module["dynCall_iiii"](callbackfunc,eventTypeId,JSEvents.orientationChangeEvent,userData);if(shouldCancel){e.preventDefault()}});if(eventTypeString=="orientationchange"&&window.screen.mozOrientation!==undefined){eventTypeString="mozorientationchange"}var eventHandler={target:target,allowsDeferredCalls:false,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:handlerFunc,useCapture:useCapture};JSEvents.registerOrRemoveHandler(eventHandler)}),fullscreenEnabled:(function(){return document.fullscreenEnabled||document.mozFullScreenEnabled||document.webkitFullscreenEnabled||document.msFullscreenEnabled}),fillFullscreenChangeEventData:(function(eventStruct,e){var fullscreenElement=document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.msFullscreenElement;var isFullscreen=!!fullscreenElement;HEAP32[eventStruct>>2]=isFullscreen;HEAP32[eventStruct+4>>2]=JSEvents.fullscreenEnabled();var reportedElement=isFullscreen?fullscreenElement:JSEvents.previousFullscreenElement;var nodeName=JSEvents.getNodeNameForTarget(reportedElement);var id=reportedElement&&reportedElement.id?reportedElement.id:"";stringToUTF8(nodeName,eventStruct+8,128);stringToUTF8(id,eventStruct+136,128);HEAP32[eventStruct+264>>2]=reportedElement?reportedElement.clientWidth:0;HEAP32[eventStruct+268>>2]=reportedElement?reportedElement.clientHeight:0;HEAP32[eventStruct+272>>2]=screen.width;HEAP32[eventStruct+276>>2]=screen.height;if(isFullscreen){JSEvents.previousFullscreenElement=fullscreenElement}}),registerFullscreenChangeEventCallback:(function(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString){if(!JSEvents.fullscreenChangeEvent){JSEvents.fullscreenChangeEvent=_malloc(280)}if(!target){target=document}else{target=JSEvents.findEventTarget(target)}var handlerFunc=(function(event){var e=event||window.event;JSEvents.fillFullscreenChangeEventData(JSEvents.fullscreenChangeEvent,e);var shouldCancel=Module["dynCall_iiii"](callbackfunc,eventTypeId,JSEvents.fullscreenChangeEvent,userData);if(shouldCancel){e.preventDefault()}});var eventHandler={target:target,allowsDeferredCalls:false,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:handlerFunc,useCapture:useCapture};JSEvents.registerOrRemoveHandler(eventHandler)}),resizeCanvasForFullscreen:(function(target,strategy){var restoreOldStyle=__registerRestoreOldStyle(target);var cssWidth=strategy.softFullscreen?window.innerWidth:screen.width;var cssHeight=strategy.softFullscreen?window.innerHeight:screen.height;var rect=target.getBoundingClientRect();var windowedCssWidth=rect.right-rect.left;var windowedCssHeight=rect.bottom-rect.top;var windowedRttWidth=target.width;var windowedRttHeight=target.height;if(strategy.scaleMode==3){__setLetterbox(target,(cssHeight-windowedCssHeight)/2,(cssWidth-windowedCssWidth)/2);cssWidth=windowedCssWidth;cssHeight=windowedCssHeight}else if(strategy.scaleMode==2){if(cssWidth*windowedRttHeight<windowedRttWidth*cssHeight){var desiredCssHeight=windowedRttHeight*cssWidth/windowedRttWidth;__setLetterbox(target,(cssHeight-desiredCssHeight)/2,0);cssHeight=desiredCssHeight}else{var desiredCssWidth=windowedRttWidth*cssHeight/windowedRttHeight;__setLetterbox(target,0,(cssWidth-desiredCssWidth)/2);cssWidth=desiredCssWidth}}if(!target.style.backgroundColor)target.style.backgroundColor="black";if(!document.body.style.backgroundColor)document.body.style.backgroundColor="black";target.style.width=cssWidth+"px";target.style.height=cssHeight+"px";if(strategy.filteringMode==1){target.style.imageRendering="optimizeSpeed";target.style.imageRendering="-moz-crisp-edges";target.style.imageRendering="-o-crisp-edges";target.style.imageRendering="-webkit-optimize-contrast";target.style.imageRendering="optimize-contrast";target.style.imageRendering="crisp-edges";target.style.imageRendering="pixelated"}var dpiScale=strategy.canvasResolutionScaleMode==2?window.devicePixelRatio:1;if(strategy.canvasResolutionScaleMode!=0){target.width=cssWidth*dpiScale;target.height=cssHeight*dpiScale;if(target.GLctxObject)target.GLctxObject.GLctx.viewport(0,0,target.width,target.height)}return restoreOldStyle}),requestFullscreen:(function(target,strategy){if(strategy.scaleMode!=0||strategy.canvasResolutionScaleMode!=0){JSEvents.resizeCanvasForFullscreen(target,strategy)}if(target.requestFullscreen){target.requestFullscreen()}else if(target.msRequestFullscreen){target.msRequestFullscreen()}else if(target.mozRequestFullScreen){target.mozRequestFullScreen()}else if(target.mozRequestFullscreen){target.mozRequestFullscreen()}else if(target.webkitRequestFullscreen){target.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT)}else{if(typeof JSEvents.fullscreenEnabled()==="undefined"){return-1}else{return-3}}if(strategy.canvasResizedCallback){Module["dynCall_iiii"](strategy.canvasResizedCallback,37,0,strategy.canvasResizedCallbackUserData)}return 0}),fillPointerlockChangeEventData:(function(eventStruct,e){var pointerLockElement=document.pointerLockElement||document.mozPointerLockElement||document.webkitPointerLockElement||document.msPointerLockElement;var isPointerlocked=!!pointerLockElement;HEAP32[eventStruct>>2]=isPointerlocked;var nodeName=JSEvents.getNodeNameForTarget(pointerLockElement);var id=pointerLockElement&&pointerLockElement.id?pointerLockElement.id:"";stringToUTF8(nodeName,eventStruct+4,128);stringToUTF8(id,eventStruct+132,128)}),registerPointerlockChangeEventCallback:(function(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString){if(!JSEvents.pointerlockChangeEvent){JSEvents.pointerlockChangeEvent=_malloc(260)}if(!target){target=document}else{target=JSEvents.findEventTarget(target)}var handlerFunc=(function(event){var e=event||window.event;JSEvents.fillPointerlockChangeEventData(JSEvents.pointerlockChangeEvent,e);var shouldCancel=Module["dynCall_iiii"](callbackfunc,eventTypeId,JSEvents.pointerlockChangeEvent,userData);if(shouldCancel){e.preventDefault()}});var eventHandler={target:target,allowsDeferredCalls:false,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:handlerFunc,useCapture:useCapture};JSEvents.registerOrRemoveHandler(eventHandler)}),registerPointerlockErrorEventCallback:(function(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString){if(!target){target=document}else{target=JSEvents.findEventTarget(target)}var handlerFunc=(function(event){var e=event||window.event;var shouldCancel=Module["dynCall_iiii"](callbackfunc,eventTypeId,0,userData);if(shouldCancel){e.preventDefault()}});var eventHandler={target:target,allowsDeferredCalls:false,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:handlerFunc,useCapture:useCapture};JSEvents.registerOrRemoveHandler(eventHandler)}),requestPointerLock:(function(target){if(target.requestPointerLock){target.requestPointerLock()}else if(target.mozRequestPointerLock){target.mozRequestPointerLock()}else if(target.webkitRequestPointerLock){target.webkitRequestPointerLock()}else if(target.msRequestPointerLock){target.msRequestPointerLock()}else{if(document.body.requestPointerLock||document.body.mozRequestPointerLock||document.body.webkitRequestPointerLock||document.body.msRequestPointerLock){return-3}else{return-1}}return 0}),fillVisibilityChangeEventData:(function(eventStruct,e){var visibilityStates=["hidden","visible","prerender","unloaded"];var visibilityState=visibilityStates.indexOf(document.visibilityState);HEAP32[eventStruct>>2]=document.hidden;HEAP32[eventStruct+4>>2]=visibilityState}),registerVisibilityChangeEventCallback:(function(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString){if(!JSEvents.visibilityChangeEvent){JSEvents.visibilityChangeEvent=_malloc(8)}if(!target){target=document}else{target=JSEvents.findEventTarget(target)}var handlerFunc=(function(event){var e=event||window.event;JSEvents.fillVisibilityChangeEventData(JSEvents.visibilityChangeEvent,e);var shouldCancel=Module["dynCall_iiii"](callbackfunc,eventTypeId,JSEvents.visibilityChangeEvent,userData);if(shouldCancel){e.preventDefault()}});var eventHandler={target:target,allowsDeferredCalls:false,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:handlerFunc,useCapture:useCapture};JSEvents.registerOrRemoveHandler(eventHandler)}),registerTouchEventCallback:(function(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString){if(!JSEvents.touchEvent){JSEvents.touchEvent=_malloc(1684)}target=JSEvents.findEventTarget(target);var handlerFunc=(function(event){var e=event||window.event;var touches={};for(var i=0;i<e.touches.length;++i){var touch=e.touches[i];touches[touch.identifier]=touch}for(var i=0;i<e.changedTouches.length;++i){var touch=e.changedTouches[i];touches[touch.identifier]=touch;touch.changed=true}for(var i=0;i<e.targetTouches.length;++i){var touch=e.targetTouches[i];touches[touch.identifier].onTarget=true}var ptr=JSEvents.touchEvent;HEAP32[ptr+4>>2]=e.ctrlKey;HEAP32[ptr+8>>2]=e.shiftKey;HEAP32[ptr+12>>2]=e.altKey;HEAP32[ptr+16>>2]=e.metaKey;ptr+=20;var canvasRect=Module["canvas"]?Module["canvas"].getBoundingClientRect():undefined;var targetRect=JSEvents.getBoundingClientRectOrZeros(target);var numTouches=0;for(var i in touches){var t=touches[i];HEAP32[ptr>>2]=t.identifier;HEAP32[ptr+4>>2]=t.screenX;HEAP32[ptr+8>>2]=t.screenY;HEAP32[ptr+12>>2]=t.clientX;HEAP32[ptr+16>>2]=t.clientY;HEAP32[ptr+20>>2]=t.pageX;HEAP32[ptr+24>>2]=t.pageY;HEAP32[ptr+28>>2]=t.changed;HEAP32[ptr+32>>2]=t.onTarget;if(canvasRect){HEAP32[ptr+44>>2]=t.clientX-canvasRect.left;HEAP32[ptr+48>>2]=t.clientY-canvasRect.top}else{HEAP32[ptr+44>>2]=0;HEAP32[ptr+48>>2]=0}HEAP32[ptr+36>>2]=t.clientX-targetRect.left;HEAP32[ptr+40>>2]=t.clientY-targetRect.top;ptr+=52;if(++numTouches>=32){break}}HEAP32[JSEvents.touchEvent>>2]=numTouches;var shouldCancel=Module["dynCall_iiii"](callbackfunc,eventTypeId,JSEvents.touchEvent,userData);if(shouldCancel){e.preventDefault()}});var eventHandler={target:target,allowsDeferredCalls:eventTypeString=="touchstart"||eventTypeString=="touchend",eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:handlerFunc,useCapture:useCapture};JSEvents.registerOrRemoveHandler(eventHandler)}),fillGamepadEventData:(function(eventStruct,e){HEAPF64[eventStruct>>3]=e.timestamp;for(var i=0;i<e.axes.length;++i){HEAPF64[eventStruct+i*8+16>>3]=e.axes[i]}for(var i=0;i<e.buttons.length;++i){if(typeof e.buttons[i]==="object"){HEAPF64[eventStruct+i*8+528>>3]=e.buttons[i].value}else{HEAPF64[eventStruct+i*8+528>>3]=e.buttons[i]}}for(var i=0;i<e.buttons.length;++i){if(typeof e.buttons[i]==="object"){HEAP32[eventStruct+i*4+1040>>2]=e.buttons[i].pressed}else{HEAP32[eventStruct+i*4+1040>>2]=e.buttons[i]==1}}HEAP32[eventStruct+1296>>2]=e.connected;HEAP32[eventStruct+1300>>2]=e.index;HEAP32[eventStruct+8>>2]=e.axes.length;HEAP32[eventStruct+12>>2]=e.buttons.length;stringToUTF8(e.id,eventStruct+1304,64);stringToUTF8(e.mapping,eventStruct+1368,64)}),registerGamepadEventCallback:(function(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString){if(!JSEvents.gamepadEvent){JSEvents.gamepadEvent=_malloc(1432)}var handlerFunc=(function(event){var e=event||window.event;JSEvents.fillGamepadEventData(JSEvents.gamepadEvent,e.gamepad);var shouldCancel=Module["dynCall_iiii"](callbackfunc,eventTypeId,JSEvents.gamepadEvent,userData);if(shouldCancel){e.preventDefault()}});var eventHandler={target:JSEvents.findEventTarget(target),allowsDeferredCalls:true,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:handlerFunc,useCapture:useCapture};JSEvents.registerOrRemoveHandler(eventHandler)}),registerBeforeUnloadEventCallback:(function(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString){var handlerFunc=(function(event){var e=event||window.event;var confirmationMessage=Module["dynCall_iiii"](callbackfunc,eventTypeId,0,userData);if(confirmationMessage){confirmationMessage=Pointer_stringify(confirmationMessage)}if(confirmationMessage){e.preventDefault();e.returnValue=confirmationMessage;return confirmationMessage}});var eventHandler={target:JSEvents.findEventTarget(target),allowsDeferredCalls:false,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:handlerFunc,useCapture:useCapture};JSEvents.registerOrRemoveHandler(eventHandler)}),battery:(function(){return navigator.battery||navigator.mozBattery||navigator.webkitBattery}),fillBatteryEventData:(function(eventStruct,e){HEAPF64[eventStruct>>3]=e.chargingTime;HEAPF64[eventStruct+8>>3]=e.dischargingTime;HEAPF64[eventStruct+16>>3]=e.level;HEAP32[eventStruct+24>>2]=e.charging}),registerBatteryEventCallback:(function(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString){if(!JSEvents.batteryEvent){JSEvents.batteryEvent=_malloc(32)}var handlerFunc=(function(event){var e=event||window.event;JSEvents.fillBatteryEventData(JSEvents.batteryEvent,JSEvents.battery());var shouldCancel=Module["dynCall_iiii"](callbackfunc,eventTypeId,JSEvents.batteryEvent,userData);if(shouldCancel){e.preventDefault()}});var eventHandler={target:JSEvents.findEventTarget(target),allowsDeferredCalls:false,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:handlerFunc,useCapture:useCapture};JSEvents.registerOrRemoveHandler(eventHandler)}),registerWebGlEventCallback:(function(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString){if(!target){target=Module["canvas"]}var handlerFunc=(function(event){var e=event||window.event;var shouldCancel=Module["dynCall_iiii"](callbackfunc,eventTypeId,0,userData);if(shouldCancel){e.preventDefault()}});var eventHandler={target:JSEvents.findEventTarget(target),allowsDeferredCalls:false,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:handlerFunc,useCapture:useCapture};JSEvents.registerOrRemoveHandler(eventHandler)})};var __currentFullscreenStrategy={};function _emscripten_exit_fullscreen(){if(typeof JSEvents.fullscreenEnabled()==="undefined")return-1;JSEvents.removeDeferredCalls(JSEvents.requestFullscreen);if(document.exitFullscreen){document.exitFullscreen()}else if(document.msExitFullscreen){document.msExitFullscreen()}else if(document.mozCancelFullScreen){document.mozCancelFullScreen()}else if(document.webkitExitFullscreen){document.webkitExitFullscreen()}else{return-1}if(__currentFullscreenStrategy.canvasResizedCallback){Module["dynCall_iiii"](__currentFullscreenStrategy.canvasResizedCallback,37,0,__currentFullscreenStrategy.canvasResizedCallbackUserData)}return 0}function _emscripten_exit_pointerlock(){JSEvents.removeDeferredCalls(JSEvents.requestPointerLock);if(document.exitPointerLock){document.exitPointerLock()}else if(document.msExitPointerLock){document.msExitPointerLock()}else if(document.mozExitPointerLock){document.mozExitPointerLock()}else if(document.webkitExitPointerLock){document.webkitExitPointerLock()}else{return-1}return 0}function _emscripten_get_device_pixel_ratio(){return window.devicePixelRatio||1}function _emscripten_get_element_css_size(target,width,height){if(!target){target=Module["canvas"]}else{target=JSEvents.findEventTarget(target)}if(!target)return-4;if(target.getBoundingClientRect){var rect=target.getBoundingClientRect();HEAPF64[width>>3]=rect.right-rect.left;HEAPF64[height>>3]=rect.bottom-rect.top}else{HEAPF64[width>>3]=target.clientWidth;HEAPF64[height>>3]=target.clientHeight}return 0}function __emscripten_sample_gamepad_data(){if(!JSEvents.numGamepadsConnected)return;if(Browser.mainLoop.currentFrameNumber!==JSEvents.lastGamepadStateFrame||!Browser.mainLoop.currentFrameNumber){JSEvents.lastGamepadState=navigator.getGamepads?navigator.getGamepads():navigator.webkitGetGamepads?navigator.webkitGetGamepads:null;JSEvents.lastGamepadStateFrame=Browser.mainLoop.currentFrameNumber}}function _emscripten_get_gamepad_status(index,gamepadState){__emscripten_sample_gamepad_data();if(!JSEvents.lastGamepadState)return-1;if(index<0||index>=JSEvents.lastGamepadState.length)return-5;if(!JSEvents.lastGamepadState[index])return-7;JSEvents.fillGamepadEventData(gamepadState,JSEvents.lastGamepadState[index]);return 0}function _emscripten_get_num_gamepads(){if(!JSEvents.numGamepadsConnected)return 0;__emscripten_sample_gamepad_data();if(!JSEvents.lastGamepadState)return-1;return JSEvents.lastGamepadState.length}function _emscripten_get_pointerlock_status(pointerlockStatus){if(pointerlockStatus)JSEvents.fillPointerlockChangeEventData(pointerlockStatus);if(!document.body||!document.body.requestPointerLock&&!document.body.mozRequestPointerLock&&!document.body.webkitRequestPointerLock&&!document.body.msRequestPointerLock){return-1}return 0}function _emscripten_glActiveTexture(x0){GLctx["activeTexture"](x0)}function _emscripten_glAttachShader(program,shader){GLctx.attachShader(GL.programs[program],GL.shaders[shader])}function _emscripten_glBindAttribLocation(program,index,name){name=Pointer_stringify(name);GLctx.bindAttribLocation(GL.programs[program],index,name)}function _emscripten_glBindBuffer(target,buffer){var bufferObj=buffer?GL.buffers[buffer]:null;GLctx.bindBuffer(target,bufferObj)}function _emscripten_glBindFramebuffer(target,framebuffer){GLctx.bindFramebuffer(target,framebuffer?GL.framebuffers[framebuffer]:null)}function _emscripten_glBindProgramARB(){Module["printErr"]("missing function: emscripten_glBindProgramARB");abort(-1)}function _emscripten_glBindRenderbuffer(target,renderbuffer){GLctx.bindRenderbuffer(target,renderbuffer?GL.renderbuffers[renderbuffer]:null)}function _emscripten_glBindTexture(target,texture){GLctx.bindTexture(target,texture?GL.textures[texture]:null)}function _emscripten_glBindVertexArray(vao){GLctx["bindVertexArray"](GL.vaos[vao])}function _emscripten_glBlendColor(x0,x1,x2,x3){GLctx["blendColor"](x0,x1,x2,x3)}function _emscripten_glBlendEquation(x0){GLctx["blendEquation"](x0)}function _emscripten_glBlendEquationSeparate(x0,x1){GLctx["blendEquationSeparate"](x0,x1)}function _emscripten_glBlendFunc(x0,x1){GLctx["blendFunc"](x0,x1)}function _emscripten_glBlendFuncSeparate(x0,x1,x2,x3){GLctx["blendFuncSeparate"](x0,x1,x2,x3)}function _emscripten_glBufferData(target,size,data,usage){if(!data){GLctx.bufferData(target,size,usage)}else{GLctx.bufferData(target,HEAPU8.subarray(data,data+size),usage)}}function _emscripten_glBufferSubData(target,offset,size,data){GLctx.bufferSubData(target,offset,HEAPU8.subarray(data,data+size))}function _emscripten_glCheckFramebufferStatus(x0){return GLctx["checkFramebufferStatus"](x0)}function _emscripten_glClear(x0){GLctx["clear"](x0)}function _emscripten_glClearColor(x0,x1,x2,x3){GLctx["clearColor"](x0,x1,x2,x3)}function _emscripten_glClearDepth(x0){GLctx["clearDepth"](x0)}function _emscripten_glClearDepthf(x0){GLctx["clearDepth"](x0)}function _emscripten_glClearStencil(x0){GLctx["clearStencil"](x0)}function _emscripten_glClientActiveTexture(){Module["printErr"]("missing function: emscripten_glClientActiveTexture");abort(-1)}function _emscripten_glColorMask(red,green,blue,alpha){GLctx.colorMask(!!red,!!green,!!blue,!!alpha)}function _emscripten_glColorPointer(){Module["printErr"]("missing function: emscripten_glColorPointer");abort(-1)}function _emscripten_glCompileShader(shader){GLctx.compileShader(GL.shaders[shader])}function _emscripten_glCompressedTexImage2D(target,level,internalFormat,width,height,border,imageSize,data){GLctx["compressedTexImage2D"](target,level,internalFormat,width,height,border,data?HEAPU8.subarray(data,data+imageSize):null)}function _emscripten_glCompressedTexSubImage2D(target,level,xoffset,yoffset,width,height,format,imageSize,data){GLctx["compressedTexSubImage2D"](target,level,xoffset,yoffset,width,height,format,data?HEAPU8.subarray(data,data+imageSize):null)}function _emscripten_glCopyTexImage2D(x0,x1,x2,x3,x4,x5,x6,x7){GLctx["copyTexImage2D"](x0,x1,x2,x3,x4,x5,x6,x7)}function _emscripten_glCopyTexSubImage2D(x0,x1,x2,x3,x4,x5,x6,x7){GLctx["copyTexSubImage2D"](x0,x1,x2,x3,x4,x5,x6,x7)}function _emscripten_glCreateProgram(){var id=GL.getNewId(GL.programs);var program=GLctx.createProgram();program.name=id;GL.programs[id]=program;return id}function _emscripten_glCreateShader(shaderType){var id=GL.getNewId(GL.shaders);GL.shaders[id]=GLctx.createShader(shaderType);return id}function _emscripten_glCullFace(x0){GLctx["cullFace"](x0)}function _emscripten_glDeleteBuffers(n,buffers){for(var i=0;i<n;i++){var id=HEAP32[buffers+i*4>>2];var buffer=GL.buffers[id];if(!buffer)continue;GLctx.deleteBuffer(buffer);buffer.name=0;GL.buffers[id]=null;if(id==GL.currArrayBuffer)GL.currArrayBuffer=0;if(id==GL.currElementArrayBuffer)GL.currElementArrayBuffer=0}}function _emscripten_glDeleteFramebuffers(n,framebuffers){for(var i=0;i<n;++i){var id=HEAP32[framebuffers+i*4>>2];var framebuffer=GL.framebuffers[id];if(!framebuffer)continue;GLctx.deleteFramebuffer(framebuffer);framebuffer.name=0;GL.framebuffers[id]=null}}function _emscripten_glDeleteObjectARB(){Module["printErr"]("missing function: emscripten_glDeleteObjectARB");abort(-1)}function _emscripten_glDeleteProgram(id){if(!id)return;var program=GL.programs[id];if(!program){GL.recordError(1281);return}GLctx.deleteProgram(program);program.name=0;GL.programs[id]=null;GL.programInfos[id]=null}function _emscripten_glDeleteRenderbuffers(n,renderbuffers){for(var i=0;i<n;i++){var id=HEAP32[renderbuffers+i*4>>2];var renderbuffer=GL.renderbuffers[id];if(!renderbuffer)continue;GLctx.deleteRenderbuffer(renderbuffer);renderbuffer.name=0;GL.renderbuffers[id]=null}}function _emscripten_glDeleteShader(id){if(!id)return;var shader=GL.shaders[id];if(!shader){GL.recordError(1281);return}GLctx.deleteShader(shader);GL.shaders[id]=null}function _emscripten_glDeleteTextures(n,textures){for(var i=0;i<n;i++){var id=HEAP32[textures+i*4>>2];var texture=GL.textures[id];if(!texture)continue;GLctx.deleteTexture(texture);texture.name=0;GL.textures[id]=null}}function _emscripten_glDeleteVertexArrays(n,vaos){for(var i=0;i<n;i++){var id=HEAP32[vaos+i*4>>2];GLctx["deleteVertexArray"](GL.vaos[id]);GL.vaos[id]=null}}function _emscripten_glDepthFunc(x0){GLctx["depthFunc"](x0)}function _emscripten_glDepthMask(flag){GLctx.depthMask(!!flag)}function _emscripten_glDepthRange(x0,x1){GLctx["depthRange"](x0,x1)}function _emscripten_glDepthRangef(x0,x1){GLctx["depthRange"](x0,x1)}function _emscripten_glDetachShader(program,shader){GLctx.detachShader(GL.programs[program],GL.shaders[shader])}function _emscripten_glDisable(x0){GLctx["disable"](x0)}function _emscripten_glDisableVertexAttribArray(index){GLctx.disableVertexAttribArray(index)}function _emscripten_glDrawArrays(mode,first,count){GLctx.drawArrays(mode,first,count)}function _emscripten_glDrawArraysInstanced(mode,first,count,primcount){GLctx["drawArraysInstanced"](mode,first,count,primcount)}function _emscripten_glDrawBuffers(n,bufs){var bufArray=GL.tempFixedLengthArray[n];for(var i=0;i<n;i++){bufArray[i]=HEAP32[bufs+i*4>>2]}GLctx["drawBuffers"](bufArray)}function _emscripten_glDrawElements(mode,count,type,indices){GLctx.drawElements(mode,count,type,indices)}function _emscripten_glDrawElementsInstanced(mode,count,type,indices,primcount){GLctx["drawElementsInstanced"](mode,count,type,indices,primcount)}function _emscripten_glDrawRangeElements(){Module["printErr"]("missing function: emscripten_glDrawRangeElements");abort(-1)}function _emscripten_glEnable(x0){GLctx["enable"](x0)}function _emscripten_glEnableClientState(){Module["printErr"]("missing function: emscripten_glEnableClientState");abort(-1)}function _emscripten_glEnableVertexAttribArray(index){GLctx.enableVertexAttribArray(index)}function _emscripten_glFinish(){GLctx["finish"]()}function _emscripten_glFlush(){GLctx["flush"]()}function _emscripten_glFramebufferRenderbuffer(target,attachment,renderbuffertarget,renderbuffer){GLctx.framebufferRenderbuffer(target,attachment,renderbuffertarget,GL.renderbuffers[renderbuffer])}function _emscripten_glFramebufferTexture2D(target,attachment,textarget,texture,level){GLctx.framebufferTexture2D(target,attachment,textarget,GL.textures[texture],level)}function _emscripten_glFrontFace(x0){GLctx["frontFace"](x0)}function _emscripten_glFrustum(){Module["printErr"]("missing function: emscripten_glFrustum");abort(-1)}function _emscripten_glGenBuffers(n,buffers){for(var i=0;i<n;i++){var buffer=GLctx.createBuffer();if(!buffer){GL.recordError(1282);while(i<n)HEAP32[buffers+i++*4>>2]=0;return}var id=GL.getNewId(GL.buffers);buffer.name=id;GL.buffers[id]=buffer;HEAP32[buffers+i*4>>2]=id}}function _emscripten_glGenFramebuffers(n,ids){for(var i=0;i<n;++i){var framebuffer=GLctx.createFramebuffer();if(!framebuffer){GL.recordError(1282);while(i<n)HEAP32[ids+i++*4>>2]=0;return}var id=GL.getNewId(GL.framebuffers);framebuffer.name=id;GL.framebuffers[id]=framebuffer;HEAP32[ids+i*4>>2]=id}}function _emscripten_glGenRenderbuffers(n,renderbuffers){for(var i=0;i<n;i++){var renderbuffer=GLctx.createRenderbuffer();if(!renderbuffer){GL.recordError(1282);while(i<n)HEAP32[renderbuffers+i++*4>>2]=0;return}var id=GL.getNewId(GL.renderbuffers);renderbuffer.name=id;GL.renderbuffers[id]=renderbuffer;HEAP32[renderbuffers+i*4>>2]=id}}function _emscripten_glGenTextures(n,textures){for(var i=0;i<n;i++){var texture=GLctx.createTexture();if(!texture){GL.recordError(1282);while(i<n)HEAP32[textures+i++*4>>2]=0;return}var id=GL.getNewId(GL.textures);texture.name=id;GL.textures[id]=texture;HEAP32[textures+i*4>>2]=id}}function _emscripten_glGenVertexArrays(n,arrays){for(var i=0;i<n;i++){var vao=GLctx["createVertexArray"]();if(!vao){GL.recordError(1282);while(i<n)HEAP32[arrays+i++*4>>2]=0;return}var id=GL.getNewId(GL.vaos);vao.name=id;GL.vaos[id]=vao;HEAP32[arrays+i*4>>2]=id}}function _emscripten_glGenerateMipmap(x0){GLctx["generateMipmap"](x0)}function _emscripten_glGetActiveAttrib(program,index,bufSize,length,size,type,name){program=GL.programs[program];var info=GLctx.getActiveAttrib(program,index);if(!info)return;if(bufSize>0&&name){var numBytesWrittenExclNull=stringToUTF8(info.name,name,bufSize);if(length)HEAP32[length>>2]=numBytesWrittenExclNull}else{if(length)HEAP32[length>>2]=0}if(size)HEAP32[size>>2]=info.size;if(type)HEAP32[type>>2]=info.type}function _emscripten_glGetActiveUniform(program,index,bufSize,length,size,type,name){program=GL.programs[program];var info=GLctx.getActiveUniform(program,index);if(!info)return;if(bufSize>0&&name){var numBytesWrittenExclNull=stringToUTF8(info.name,name,bufSize);if(length)HEAP32[length>>2]=numBytesWrittenExclNull}else{if(length)HEAP32[length>>2]=0}if(size)HEAP32[size>>2]=info.size;if(type)HEAP32[type>>2]=info.type}function _emscripten_glGetAttachedShaders(program,maxCount,count,shaders){var result=GLctx.getAttachedShaders(GL.programs[program]);var len=result.length;if(len>maxCount){len=maxCount}HEAP32[count>>2]=len;for(var i=0;i<len;++i){var id=GL.shaders.indexOf(result[i]);HEAP32[shaders+i*4>>2]=id}}function _emscripten_glGetAttribLocation(program,name){program=GL.programs[program];name=Pointer_stringify(name);return GLctx.getAttribLocation(program,name)}function emscriptenWebGLGet(name_,p,type){if(!p){GL.recordError(1281);return}var ret=undefined;switch(name_){case 36346:ret=1;break;case 36344:if(type!=="Integer"&&type!=="Integer64"){GL.recordError(1280)}return;case 36345:ret=0;break;case 34466:var formats=GLctx.getParameter(34467);ret=formats.length;break}if(ret===undefined){var result=GLctx.getParameter(name_);switch(typeof result){case"number":ret=result;break;case"boolean":ret=result?1:0;break;case"string":GL.recordError(1280);return;case"object":if(result===null){switch(name_){case 34964:case 35725:case 34965:case 36006:case 36007:case 32873:case 34068:{ret=0;break};default:{GL.recordError(1280);return}}}else if(result instanceof Float32Array||result instanceof Uint32Array||result instanceof Int32Array||result instanceof Array){for(var i=0;i<result.length;++i){switch(type){case"Integer":HEAP32[p+i*4>>2]=result[i];break;case"Float":HEAPF32[p+i*4>>2]=result[i];break;case"Boolean":HEAP8[p+i>>0]=result[i]?1:0;break;default:throw"internal glGet error, bad type: "+type}}return}else if(result instanceof WebGLBuffer||result instanceof WebGLProgram||result instanceof WebGLFramebuffer||result instanceof WebGLRenderbuffer||result instanceof WebGLTexture){ret=result.name|0}else{GL.recordError(1280);return}break;default:GL.recordError(1280);return}}switch(type){case"Integer64":tempI64=[ret>>>0,(tempDouble=ret,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[p>>2]=tempI64[0],HEAP32[p+4>>2]=tempI64[1];break;case"Integer":HEAP32[p>>2]=ret;break;case"Float":HEAPF32[p>>2]=ret;break;case"Boolean":HEAP8[p>>0]=ret?1:0;break;default:throw"internal glGet error, bad type: "+type}}function _emscripten_glGetBooleanv(name_,p){emscriptenWebGLGet(name_,p,"Boolean")}function _emscripten_glGetBufferParameteriv(target,value,data){if(!data){GL.recordError(1281);return}HEAP32[data>>2]=GLctx.getBufferParameter(target,value)}function _emscripten_glGetError(){if(GL.lastError){var error=GL.lastError;GL.lastError=0;return error}else{return GLctx.getError()}}function _emscripten_glGetFloatv(name_,p){emscriptenWebGLGet(name_,p,"Float")}function _emscripten_glGetFramebufferAttachmentParameteriv(target,attachment,pname,params){var result=GLctx.getFramebufferAttachmentParameter(target,attachment,pname);HEAP32[params>>2]=result}function _emscripten_glGetInfoLogARB(){Module["printErr"]("missing function: emscripten_glGetInfoLogARB");abort(-1)}function _emscripten_glGetIntegerv(name_,p){emscriptenWebGLGet(name_,p,"Integer")}function _emscripten_glGetObjectParameterivARB(){Module["printErr"]("missing function: emscripten_glGetObjectParameterivARB");abort(-1)}function _emscripten_glGetPointerv(){Module["printErr"]("missing function: emscripten_glGetPointerv");abort(-1)}function _emscripten_glGetProgramInfoLog(program,maxLength,length,infoLog){var log=GLctx.getProgramInfoLog(GL.programs[program]);if(log===null)log="(unknown error)";if(maxLength>0&&infoLog){var numBytesWrittenExclNull=stringToUTF8(log,infoLog,maxLength);if(length)HEAP32[length>>2]=numBytesWrittenExclNull}else{if(length)HEAP32[length>>2]=0}}function _emscripten_glGetProgramiv(program,pname,p){if(!p){GL.recordError(1281);return}if(program>=GL.counter){GL.recordError(1281);return}var ptable=GL.programInfos[program];if(!ptable){GL.recordError(1282);return}if(pname==35716){var log=GLctx.getProgramInfoLog(GL.programs[program]);if(log===null)log="(unknown error)";HEAP32[p>>2]=log.length+1}else if(pname==35719){HEAP32[p>>2]=ptable.maxUniformLength}else if(pname==35722){if(ptable.maxAttributeLength==-1){program=GL.programs[program];var numAttribs=GLctx.getProgramParameter(program,GLctx.ACTIVE_ATTRIBUTES);ptable.maxAttributeLength=0;for(var i=0;i<numAttribs;++i){var activeAttrib=GLctx.getActiveAttrib(program,i);ptable.maxAttributeLength=Math.max(ptable.maxAttributeLength,activeAttrib.name.length+1)}}HEAP32[p>>2]=ptable.maxAttributeLength}else if(pname==35381){if(ptable.maxUniformBlockNameLength==-1){program=GL.programs[program];var numBlocks=GLctx.getProgramParameter(program,GLctx.ACTIVE_UNIFORM_BLOCKS);ptable.maxUniformBlockNameLength=0;for(var i=0;i<numBlocks;++i){var activeBlockName=GLctx.getActiveUniformBlockName(program,i);ptable.maxUniformBlockNameLength=Math.max(ptable.maxUniformBlockNameLength,activeBlockName.length+1)}}HEAP32[p>>2]=ptable.maxUniformBlockNameLength}else{HEAP32[p>>2]=GLctx.getProgramParameter(GL.programs[program],pname)}}function _emscripten_glGetRenderbufferParameteriv(target,pname,params){if(!params){GL.recordError(1281);return}HEAP32[params>>2]=GLctx.getRenderbufferParameter(target,pname)}function _emscripten_glGetShaderInfoLog(shader,maxLength,length,infoLog){var log=GLctx.getShaderInfoLog(GL.shaders[shader]);if(log===null)log="(unknown error)";if(maxLength>0&&infoLog){var numBytesWrittenExclNull=stringToUTF8(log,infoLog,maxLength);if(length)HEAP32[length>>2]=numBytesWrittenExclNull}else{if(length)HEAP32[length>>2]=0}}function _emscripten_glGetShaderPrecisionFormat(shaderType,precisionType,range,precision){var result=GLctx.getShaderPrecisionFormat(shaderType,precisionType);HEAP32[range>>2]=result.rangeMin;HEAP32[range+4>>2]=result.rangeMax;HEAP32[precision>>2]=result.precision}function _emscripten_glGetShaderSource(shader,bufSize,length,source){var result=GLctx.getShaderSource(GL.shaders[shader]);if(!result)return;if(bufSize>0&&source){var numBytesWrittenExclNull=stringToUTF8(result,source,bufSize);if(length)HEAP32[length>>2]=numBytesWrittenExclNull}else{if(length)HEAP32[length>>2]=0}}function _emscripten_glGetShaderiv(shader,pname,p){if(!p){GL.recordError(1281);return}if(pname==35716){var log=GLctx.getShaderInfoLog(GL.shaders[shader]);if(log===null)log="(unknown error)";HEAP32[p>>2]=log.length+1}else if(pname==35720){var source=GLctx.getShaderSource(GL.shaders[shader]);var sourceLength=source===null||source.length==0?0:source.length+1;HEAP32[p>>2]=sourceLength}else{HEAP32[p>>2]=GLctx.getShaderParameter(GL.shaders[shader],pname)}}function _emscripten_glGetString(name_){if(GL.stringCache[name_])return GL.stringCache[name_];var ret;switch(name_){case 7936:case 7937:case 37445:case 37446:ret=allocate(intArrayFromString(GLctx.getParameter(name_)),"i8",ALLOC_NORMAL);break;case 7938:var glVersion=GLctx.getParameter(GLctx.VERSION);{glVersion="OpenGL ES 2.0 ("+glVersion+")"}ret=allocate(intArrayFromString(glVersion),"i8",ALLOC_NORMAL);break;case 7939:var exts=GLctx.getSupportedExtensions();var gl_exts=[];for(var i=0;i<exts.length;++i){gl_exts.push(exts[i]);gl_exts.push("GL_"+exts[i])}ret=allocate(intArrayFromString(gl_exts.join(" ")),"i8",ALLOC_NORMAL);break;case 35724:var glslVersion=GLctx.getParameter(GLctx.SHADING_LANGUAGE_VERSION);var ver_re=/^WebGL GLSL ES ([0-9]\.[0-9][0-9]?)(?:$| .*)/;var ver_num=glslVersion.match(ver_re);if(ver_num!==null){if(ver_num[1].length==3)ver_num[1]=ver_num[1]+"0";glslVersion="OpenGL ES GLSL ES "+ver_num[1]+" ("+glslVersion+")"}ret=allocate(intArrayFromString(glslVersion),"i8",ALLOC_NORMAL);break;default:GL.recordError(1280);return 0}GL.stringCache[name_]=ret;return ret}function _emscripten_glGetTexParameterfv(target,pname,params){if(!params){GL.recordError(1281);return}HEAPF32[params>>2]=GLctx.getTexParameter(target,pname)}function _emscripten_glGetTexParameteriv(target,pname,params){if(!params){GL.recordError(1281);return}HEAP32[params>>2]=GLctx.getTexParameter(target,pname)}function _emscripten_glGetUniformLocation(program,name){name=Pointer_stringify(name);var arrayOffset=0;if(name.indexOf("]",name.length-1)!==-1){var ls=name.lastIndexOf("[");var arrayIndex=name.slice(ls+1,-1);if(arrayIndex.length>0){arrayOffset=parseInt(arrayIndex);if(arrayOffset<0){return-1}}name=name.slice(0,ls)}var ptable=GL.programInfos[program];if(!ptable){return-1}var utable=ptable.uniforms;var uniformInfo=utable[name];if(uniformInfo&&arrayOffset<uniformInfo[0]){return uniformInfo[1]+arrayOffset}else{return-1}}function emscriptenWebGLGetUniform(program,location,params,type){if(!params){GL.recordError(1281);return}var data=GLctx.getUniform(GL.programs[program],GL.uniforms[location]);if(typeof data=="number"||typeof data=="boolean"){switch(type){case"Integer":HEAP32[params>>2]=data;break;case"Float":HEAPF32[params>>2]=data;break;default:throw"internal emscriptenWebGLGetUniform() error, bad type: "+type}}else{for(var i=0;i<data.length;i++){switch(type){case"Integer":HEAP32[params+i*4>>2]=data[i];break;case"Float":HEAPF32[params+i*4>>2]=data[i];break;default:throw"internal emscriptenWebGLGetUniform() error, bad type: "+type}}}}function _emscripten_glGetUniformfv(program,location,params){emscriptenWebGLGetUniform(program,location,params,"Float")}function _emscripten_glGetUniformiv(program,location,params){emscriptenWebGLGetUniform(program,location,params,"Integer")}function _emscripten_glGetVertexAttribPointerv(index,pname,pointer){if(!pointer){GL.recordError(1281);return}HEAP32[pointer>>2]=GLctx.getVertexAttribOffset(index,pname)}function emscriptenWebGLGetVertexAttrib(index,pname,params,type){if(!params){GL.recordError(1281);return}var data=GLctx.getVertexAttrib(index,pname);if(pname==34975){HEAP32[params>>2]=data["name"]}else if(typeof data=="number"||typeof data=="boolean"){switch(type){case"Integer":HEAP32[params>>2]=data;break;case"Float":HEAPF32[params>>2]=data;break;case"FloatToInteger":HEAP32[params>>2]=Math.fround(data);break;default:throw"internal emscriptenWebGLGetVertexAttrib() error, bad type: "+type}}else{for(var i=0;i<data.length;i++){switch(type){case"Integer":HEAP32[params+i*4>>2]=data[i];break;case"Float":HEAPF32[params+i*4>>2]=data[i];break;case"FloatToInteger":HEAP32[params+i*4>>2]=Math.fround(data[i]);break;default:throw"internal emscriptenWebGLGetVertexAttrib() error, bad type: "+type}}}}function _emscripten_glGetVertexAttribfv(index,pname,params){emscriptenWebGLGetVertexAttrib(index,pname,params,"Float")}function _emscripten_glGetVertexAttribiv(index,pname,params){emscriptenWebGLGetVertexAttrib(index,pname,params,"FloatToInteger")}function _emscripten_glHint(x0,x1){GLctx["hint"](x0,x1)}function _emscripten_glIsBuffer(buffer){var b=GL.buffers[buffer];if(!b)return 0;return GLctx.isBuffer(b)}function _emscripten_glIsEnabled(x0){return GLctx["isEnabled"](x0)}function _emscripten_glIsFramebuffer(framebuffer){var fb=GL.framebuffers[framebuffer];if(!fb)return 0;return GLctx.isFramebuffer(fb)}function _emscripten_glIsProgram(program){program=GL.programs[program];if(!program)return 0;return GLctx.isProgram(program)}function _emscripten_glIsRenderbuffer(renderbuffer){var rb=GL.renderbuffers[renderbuffer];if(!rb)return 0;return GLctx.isRenderbuffer(rb)}function _emscripten_glIsShader(shader){var s=GL.shaders[shader];if(!s)return 0;return GLctx.isShader(s)}function _emscripten_glIsTexture(texture){var texture=GL.textures[texture];if(!texture)return 0;return GLctx.isTexture(texture)}function _emscripten_glIsVertexArray(array){var vao=GL.vaos[array];if(!vao)return 0;return GLctx["isVertexArray"](vao)}function _emscripten_glLineWidth(x0){GLctx["lineWidth"](x0)}function _emscripten_glLinkProgram(program){GLctx.linkProgram(GL.programs[program]);GL.programInfos[program]=null;GL.populateUniformTable(program)}function _emscripten_glLoadIdentity(){throw"Legacy GL function (glLoadIdentity) called. If you want legacy GL emulation, you need to compile with -s LEGACY_GL_EMULATION=1 to enable legacy GL emulation."}function _emscripten_glLoadMatrixf(){Module["printErr"]("missing function: emscripten_glLoadMatrixf");abort(-1)}function _emscripten_glMatrixMode(){throw"Legacy GL function (glMatrixMode) called. If you want legacy GL emulation, you need to compile with -s LEGACY_GL_EMULATION=1 to enable legacy GL emulation."}function _emscripten_glNormalPointer(){Module["printErr"]("missing function: emscripten_glNormalPointer");abort(-1)}function _emscripten_glPixelStorei(pname,param){if(pname==3333){GL.packAlignment=param}else if(pname==3317){GL.unpackAlignment=param}GLctx.pixelStorei(pname,param)}function _emscripten_glPolygonOffset(x0,x1){GLctx["polygonOffset"](x0,x1)}function emscriptenWebGLComputeImageSize(width,height,sizePerPixel,alignment){function roundedToNextMultipleOf(x,y){return Math.floor((x+y-1)/y)*y}var plainRowSize=width*sizePerPixel;var alignedRowSize=roundedToNextMultipleOf(plainRowSize,alignment);return height<=0?0:(height-1)*alignedRowSize+plainRowSize}function emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,internalFormat){var sizePerPixel;var numChannels;switch(format){case 6406:case 6409:case 6402:numChannels=1;break;case 6410:numChannels=2;break;case 6407:case 35904:numChannels=3;break;case 6408:case 35906:numChannels=4;break;default:GL.recordError(1280);return null}switch(type){case 5121:sizePerPixel=numChannels*1;break;case 5123:case 36193:sizePerPixel=numChannels*2;break;case 5125:case 5126:sizePerPixel=numChannels*4;break;case 34042:sizePerPixel=4;break;case 33635:case 32819:case 32820:sizePerPixel=2;break;default:GL.recordError(1280);return null}var bytes=emscriptenWebGLComputeImageSize(width,height,sizePerPixel,GL.unpackAlignment);switch(type){case 5121:return HEAPU8.subarray(pixels,pixels+bytes);case 5126:return HEAPF32.subarray(pixels>>2,pixels+bytes>>2);case 5125:case 34042:return HEAPU32.subarray(pixels>>2,pixels+bytes>>2);case 5123:case 33635:case 32819:case 32820:case 36193:return HEAPU16.subarray(pixels>>1,pixels+bytes>>1);default:GL.recordError(1280);return null}}function _emscripten_glReadPixels(x,y,width,height,format,type,pixels){var pixelData=emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,format);if(!pixelData){GL.recordError(1280);return}GLctx.readPixels(x,y,width,height,format,type,pixelData)}function _emscripten_glReleaseShaderCompiler(){}function _emscripten_glRenderbufferStorage(x0,x1,x2,x3){GLctx["renderbufferStorage"](x0,x1,x2,x3)}function _emscripten_glRotatef(){Module["printErr"]("missing function: emscripten_glRotatef");abort(-1)}function _emscripten_glSampleCoverage(value,invert){GLctx.sampleCoverage(value,!!invert)}function _emscripten_glScissor(x0,x1,x2,x3){GLctx["scissor"](x0,x1,x2,x3)}function _emscripten_glShaderBinary(){GL.recordError(1280)}function _emscripten_glShaderSource(shader,count,string,length){var source=GL.getSource(shader,count,string,length);GLctx.shaderSource(GL.shaders[shader],source)}function _emscripten_glStencilFunc(x0,x1,x2){GLctx["stencilFunc"](x0,x1,x2)}function _emscripten_glStencilFuncSeparate(x0,x1,x2,x3){GLctx["stencilFuncSeparate"](x0,x1,x2,x3)}function _emscripten_glStencilMask(x0){GLctx["stencilMask"](x0)}function _emscripten_glStencilMaskSeparate(x0,x1){GLctx["stencilMaskSeparate"](x0,x1)}function _emscripten_glStencilOp(x0,x1,x2){GLctx["stencilOp"](x0,x1,x2)}function _emscripten_glStencilOpSeparate(x0,x1,x2,x3){GLctx["stencilOpSeparate"](x0,x1,x2,x3)}function _emscripten_glTexCoordPointer(){Module["printErr"]("missing function: emscripten_glTexCoordPointer");abort(-1)}function _emscripten_glTexImage2D(target,level,internalFormat,width,height,border,format,type,pixels){var pixelData=null;if(pixels)pixelData=emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,internalFormat);GLctx.texImage2D(target,level,internalFormat,width,height,border,format,type,pixelData)}function _emscripten_glTexParameterf(x0,x1,x2){GLctx["texParameterf"](x0,x1,x2)}function _emscripten_glTexParameterfv(target,pname,params){var param=HEAPF32[params>>2];GLctx.texParameterf(target,pname,param)}function _emscripten_glTexParameteri(x0,x1,x2){GLctx["texParameteri"](x0,x1,x2)}function _emscripten_glTexParameteriv(target,pname,params){var param=HEAP32[params>>2];GLctx.texParameteri(target,pname,param)}function _emscripten_glTexSubImage2D(target,level,xoffset,yoffset,width,height,format,type,pixels){var pixelData=null;if(pixels)pixelData=emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,0);GLctx.texSubImage2D(target,level,xoffset,yoffset,width,height,format,type,pixelData)}function _emscripten_glUniform1f(location,v0){GLctx.uniform1f(GL.uniforms[location],v0)}function _emscripten_glUniform1fv(location,count,value){var view;if(count<=GL.MINI_TEMP_BUFFER_SIZE){view=GL.miniTempBufferViews[count-1];for(var i=0;i<count;++i){view[i]=HEAPF32[value+4*i>>2]}}else{view=HEAPF32.subarray(value>>2,value+count*4>>2)}GLctx.uniform1fv(GL.uniforms[location],view)}function _emscripten_glUniform1i(location,v0){GLctx.uniform1i(GL.uniforms[location],v0)}function _emscripten_glUniform1iv(location,count,value){GLctx.uniform1iv(GL.uniforms[location],HEAP32.subarray(value>>2,value+count*4>>2))}function _emscripten_glUniform2f(location,v0,v1){GLctx.uniform2f(GL.uniforms[location],v0,v1)}function _emscripten_glUniform2fv(location,count,value){var view;if(2*count<=GL.MINI_TEMP_BUFFER_SIZE){view=GL.miniTempBufferViews[2*count-1];for(var i=0;i<2*count;i+=2){view[i]=HEAPF32[value+4*i>>2];view[i+1]=HEAPF32[value+(4*i+4)>>2]}}else{view=HEAPF32.subarray(value>>2,value+count*8>>2)}GLctx.uniform2fv(GL.uniforms[location],view)}function _emscripten_glUniform2i(location,v0,v1){GLctx.uniform2i(GL.uniforms[location],v0,v1)}function _emscripten_glUniform2iv(location,count,value){GLctx.uniform2iv(GL.uniforms[location],HEAP32.subarray(value>>2,value+count*8>>2))}function _emscripten_glUniform3f(location,v0,v1,v2){GLctx.uniform3f(GL.uniforms[location],v0,v1,v2)}function _emscripten_glUniform3fv(location,count,value){var view;if(3*count<=GL.MINI_TEMP_BUFFER_SIZE){view=GL.miniTempBufferViews[3*count-1];for(var i=0;i<3*count;i+=3){view[i]=HEAPF32[value+4*i>>2];view[i+1]=HEAPF32[value+(4*i+4)>>2];view[i+2]=HEAPF32[value+(4*i+8)>>2]}}else{view=HEAPF32.subarray(value>>2,value+count*12>>2)}GLctx.uniform3fv(GL.uniforms[location],view)}function _emscripten_glUniform3i(location,v0,v1,v2){GLctx.uniform3i(GL.uniforms[location],v0,v1,v2)}function _emscripten_glUniform3iv(location,count,value){GLctx.uniform3iv(GL.uniforms[location],HEAP32.subarray(value>>2,value+count*12>>2))}function _emscripten_glUniform4f(location,v0,v1,v2,v3){GLctx.uniform4f(GL.uniforms[location],v0,v1,v2,v3)}function _emscripten_glUniform4fv(location,count,value){var view;if(4*count<=GL.MINI_TEMP_BUFFER_SIZE){view=GL.miniTempBufferViews[4*count-1];for(var i=0;i<4*count;i+=4){view[i]=HEAPF32[value+4*i>>2];view[i+1]=HEAPF32[value+(4*i+4)>>2];view[i+2]=HEAPF32[value+(4*i+8)>>2];view[i+3]=HEAPF32[value+(4*i+12)>>2]}}else{view=HEAPF32.subarray(value>>2,value+count*16>>2)}GLctx.uniform4fv(GL.uniforms[location],view)}function _emscripten_glUniform4i(location,v0,v1,v2,v3){GLctx.uniform4i(GL.uniforms[location],v0,v1,v2,v3)}function _emscripten_glUniform4iv(location,count,value){GLctx.uniform4iv(GL.uniforms[location],HEAP32.subarray(value>>2,value+count*16>>2))}function _emscripten_glUniformMatrix2fv(location,count,transpose,value){var view;if(4*count<=GL.MINI_TEMP_BUFFER_SIZE){view=GL.miniTempBufferViews[4*count-1];for(var i=0;i<4*count;i+=4){view[i]=HEAPF32[value+4*i>>2];view[i+1]=HEAPF32[value+(4*i+4)>>2];view[i+2]=HEAPF32[value+(4*i+8)>>2];view[i+3]=HEAPF32[value+(4*i+12)>>2]}}else{view=HEAPF32.subarray(value>>2,value+count*16>>2)}GLctx.uniformMatrix2fv(GL.uniforms[location],!!transpose,view)}function _emscripten_glUniformMatrix3fv(location,count,transpose,value){var view;if(9*count<=GL.MINI_TEMP_BUFFER_SIZE){view=GL.miniTempBufferViews[9*count-1];for(var i=0;i<9*count;i+=9){view[i]=HEAPF32[value+4*i>>2];view[i+1]=HEAPF32[value+(4*i+4)>>2];view[i+2]=HEAPF32[value+(4*i+8)>>2];view[i+3]=HEAPF32[value+(4*i+12)>>2];view[i+4]=HEAPF32[value+(4*i+16)>>2];view[i+5]=HEAPF32[value+(4*i+20)>>2];view[i+6]=HEAPF32[value+(4*i+24)>>2];view[i+7]=HEAPF32[value+(4*i+28)>>2];view[i+8]=HEAPF32[value+(4*i+32)>>2]}}else{view=HEAPF32.subarray(value>>2,value+count*36>>2)}GLctx.uniformMatrix3fv(GL.uniforms[location],!!transpose,view)}function _emscripten_glUniformMatrix4fv(location,count,transpose,value){var view;if(16*count<=GL.MINI_TEMP_BUFFER_SIZE){view=GL.miniTempBufferViews[16*count-1];for(var i=0;i<16*count;i+=16){view[i]=HEAPF32[value+4*i>>2];view[i+1]=HEAPF32[value+(4*i+4)>>2];view[i+2]=HEAPF32[value+(4*i+8)>>2];view[i+3]=HEAPF32[value+(4*i+12)>>2];view[i+4]=HEAPF32[value+(4*i+16)>>2];view[i+5]=HEAPF32[value+(4*i+20)>>2];view[i+6]=HEAPF32[value+(4*i+24)>>2];view[i+7]=HEAPF32[value+(4*i+28)>>2];view[i+8]=HEAPF32[value+(4*i+32)>>2];view[i+9]=HEAPF32[value+(4*i+36)>>2];view[i+10]=HEAPF32[value+(4*i+40)>>2];view[i+11]=HEAPF32[value+(4*i+44)>>2];view[i+12]=HEAPF32[value+(4*i+48)>>2];view[i+13]=HEAPF32[value+(4*i+52)>>2];view[i+14]=HEAPF32[value+(4*i+56)>>2];view[i+15]=HEAPF32[value+(4*i+60)>>2]}}else{view=HEAPF32.subarray(value>>2,value+count*64>>2)}GLctx.uniformMatrix4fv(GL.uniforms[location],!!transpose,view)}function _emscripten_glUseProgram(program){GLctx.useProgram(program?GL.programs[program]:null)}function _emscripten_glValidateProgram(program){GLctx.validateProgram(GL.programs[program])}function _emscripten_glVertexAttrib1f(x0,x1){GLctx["vertexAttrib1f"](x0,x1)}function _emscripten_glVertexAttrib1fv(index,v){GLctx.vertexAttrib1f(index,HEAPF32[v>>2])}function _emscripten_glVertexAttrib2f(x0,x1,x2){GLctx["vertexAttrib2f"](x0,x1,x2)}function _emscripten_glVertexAttrib2fv(index,v){GLctx.vertexAttrib2f(index,HEAPF32[v>>2],HEAPF32[v+4>>2])}function _emscripten_glVertexAttrib3f(x0,x1,x2,x3){GLctx["vertexAttrib3f"](x0,x1,x2,x3)}function _emscripten_glVertexAttrib3fv(index,v){GLctx.vertexAttrib3f(index,HEAPF32[v>>2],HEAPF32[v+4>>2],HEAPF32[v+8>>2])}function _emscripten_glVertexAttrib4f(x0,x1,x2,x3,x4){GLctx["vertexAttrib4f"](x0,x1,x2,x3,x4)}function _emscripten_glVertexAttrib4fv(index,v){GLctx.vertexAttrib4f(index,HEAPF32[v>>2],HEAPF32[v+4>>2],HEAPF32[v+8>>2],HEAPF32[v+12>>2])}function _emscripten_glVertexAttribDivisor(index,divisor){GLctx["vertexAttribDivisor"](index,divisor)}function _emscripten_glVertexAttribPointer(index,size,type,normalized,stride,ptr){GLctx.vertexAttribPointer(index,size,type,!!normalized,stride,ptr)}function _emscripten_glVertexPointer(){throw"Legacy GL function (glVertexPointer) called. If you want legacy GL emulation, you need to compile with -s LEGACY_GL_EMULATION=1 to enable legacy GL emulation."}function _emscripten_glViewport(x0,x1,x2,x3){GLctx["viewport"](x0,x1,x2,x3)}function __setLetterbox(element,topBottom,leftRight){if(JSEvents.isInternetExplorer()){element.style.marginLeft=element.style.marginRight=leftRight+"px";element.style.marginTop=element.style.marginBottom=topBottom+"px"}else{element.style.paddingLeft=element.style.paddingRight=leftRight+"px";element.style.paddingTop=element.style.paddingBottom=topBottom+"px"}}function _emscripten_do_request_fullscreen(target,strategy){if(typeof JSEvents.fullscreenEnabled()==="undefined")return-1;if(!JSEvents.fullscreenEnabled())return-3;if(!target)target="#canvas";target=JSEvents.findEventTarget(target);if(!target)return-4;if(!target.requestFullscreen&&!target.msRequestFullscreen&&!target.mozRequestFullScreen&&!target.mozRequestFullscreen&&!target.webkitRequestFullscreen){return-3}var canPerformRequests=JSEvents.canPerformEventHandlerRequests();if(!canPerformRequests){if(strategy.deferUntilInEventHandler){JSEvents.deferCall(JSEvents.requestFullscreen,1,[target,strategy]);return 1}else{return-2}}return JSEvents.requestFullscreen(target,strategy)}function __registerRestoreOldStyle(canvas){var oldWidth=canvas.width;var oldHeight=canvas.height;var oldCssWidth=canvas.style.width;var oldCssHeight=canvas.style.height;var oldBackgroundColor=canvas.style.backgroundColor;var oldDocumentBackgroundColor=document.body.style.backgroundColor;var oldPaddingLeft=canvas.style.paddingLeft;var oldPaddingRight=canvas.style.paddingRight;var oldPaddingTop=canvas.style.paddingTop;var oldPaddingBottom=canvas.style.paddingBottom;var oldMarginLeft=canvas.style.marginLeft;var oldMarginRight=canvas.style.marginRight;var oldMarginTop=canvas.style.marginTop;var oldMarginBottom=canvas.style.marginBottom;var oldDocumentBodyMargin=document.body.style.margin;var oldDocumentOverflow=document.documentElement.style.overflow;var oldDocumentScroll=document.body.scroll;var oldImageRendering=canvas.style.imageRendering;function restoreOldStyle(){var fullscreenElement=document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.msFullscreenElement;if(!fullscreenElement){document.removeEventListener("fullscreenchange",restoreOldStyle);document.removeEventListener("mozfullscreenchange",restoreOldStyle);document.removeEventListener("webkitfullscreenchange",restoreOldStyle);document.removeEventListener("MSFullscreenChange",restoreOldStyle);canvas.width=oldWidth;canvas.height=oldHeight;canvas.style.width=oldCssWidth;canvas.style.height=oldCssHeight;canvas.style.backgroundColor=oldBackgroundColor;if(!oldDocumentBackgroundColor)document.body.style.backgroundColor="white";document.body.style.backgroundColor=oldDocumentBackgroundColor;canvas.style.paddingLeft=oldPaddingLeft;canvas.style.paddingRight=oldPaddingRight;canvas.style.paddingTop=oldPaddingTop;canvas.style.paddingBottom=oldPaddingBottom;canvas.style.marginLeft=oldMarginLeft;canvas.style.marginRight=oldMarginRight;canvas.style.marginTop=oldMarginTop;canvas.style.marginBottom=oldMarginBottom;document.body.style.margin=oldDocumentBodyMargin;document.documentElement.style.overflow=oldDocumentOverflow;document.body.scroll=oldDocumentScroll;canvas.style.imageRendering=oldImageRendering;if(canvas.GLctxObject)canvas.GLctxObject.GLctx.viewport(0,0,oldWidth,oldHeight);if(__currentFullscreenStrategy.canvasResizedCallback){Module["dynCall_iiii"](__currentFullscreenStrategy.canvasResizedCallback,37,0,__currentFullscreenStrategy.canvasResizedCallbackUserData)}}}document.addEventListener("fullscreenchange",restoreOldStyle);document.addEventListener("mozfullscreenchange",restoreOldStyle);document.addEventListener("webkitfullscreenchange",restoreOldStyle);document.addEventListener("MSFullscreenChange",restoreOldStyle);return restoreOldStyle}function _emscripten_request_fullscreen_strategy(target,deferUntilInEventHandler,fullscreenStrategy){var strategy={};strategy.scaleMode=HEAP32[fullscreenStrategy>>2];strategy.canvasResolutionScaleMode=HEAP32[fullscreenStrategy+4>>2];strategy.filteringMode=HEAP32[fullscreenStrategy+8>>2];strategy.deferUntilInEventHandler=deferUntilInEventHandler;strategy.canvasResizedCallback=HEAP32[fullscreenStrategy+12>>2];strategy.canvasResizedCallbackUserData=HEAP32[fullscreenStrategy+16>>2];__currentFullscreenStrategy=strategy;return _emscripten_do_request_fullscreen(target,strategy)}function _emscripten_request_pointerlock(target,deferUntilInEventHandler){if(!target)target="#canvas";target=JSEvents.findEventTarget(target);if(!target)return-4;if(!target.requestPointerLock&&!target.mozRequestPointerLock&&!target.webkitRequestPointerLock&&!target.msRequestPointerLock){return-1}var canPerformRequests=JSEvents.canPerformEventHandlerRequests();if(!canPerformRequests){if(deferUntilInEventHandler){JSEvents.deferCall(JSEvents.requestPointerLock,2,[target]);return 1}else{return-2}}return JSEvents.requestPointerLock(target)}function _emscripten_set_blur_callback(target,userData,useCapture,callbackfunc){JSEvents.registerFocusEventCallback(target,userData,useCapture,callbackfunc,12,"blur");return 0}function _emscripten_set_canvas_size(width,height){Browser.setCanvasSize(width,height)}function _emscripten_set_element_css_size(target,width,height){if(!target){target=Module["canvas"]}else{target=JSEvents.findEventTarget(target)}if(!target)return-4;target.style.setProperty("width",width+"px");target.style.setProperty("height",height+"px");return 0}function _emscripten_set_focus_callback(target,userData,useCapture,callbackfunc){JSEvents.registerFocusEventCallback(target,userData,useCapture,callbackfunc,13,"focus");return 0}function _emscripten_set_fullscreenchange_callback(target,userData,useCapture,callbackfunc){if(typeof JSEvents.fullscreenEnabled()==="undefined")return-1;if(!target)target=document;else{target=JSEvents.findEventTarget(target);if(!target)return-4}JSEvents.registerFullscreenChangeEventCallback(target,userData,useCapture,callbackfunc,19,"fullscreenchange");JSEvents.registerFullscreenChangeEventCallback(target,userData,useCapture,callbackfunc,19,"mozfullscreenchange");JSEvents.registerFullscreenChangeEventCallback(target,userData,useCapture,callbackfunc,19,"webkitfullscreenchange");JSEvents.registerFullscreenChangeEventCallback(target,userData,useCapture,callbackfunc,19,"msfullscreenchange");return 0}function _emscripten_set_gamepadconnected_callback(userData,useCapture,callbackfunc){if(!navigator.getGamepads&&!navigator.webkitGetGamepads)return-1;JSEvents.registerGamepadEventCallback(window,userData,useCapture,callbackfunc,26,"gamepadconnected");return 0}function _emscripten_set_gamepaddisconnected_callback(userData,useCapture,callbackfunc){if(!navigator.getGamepads&&!navigator.webkitGetGamepads)return-1;JSEvents.registerGamepadEventCallback(window,userData,useCapture,callbackfunc,27,"gamepaddisconnected");return 0}function _emscripten_set_keydown_callback(target,userData,useCapture,callbackfunc){JSEvents.registerKeyEventCallback(target,userData,useCapture,callbackfunc,2,"keydown");return 0}function _emscripten_set_keypress_callback(target,userData,useCapture,callbackfunc){JSEvents.registerKeyEventCallback(target,userData,useCapture,callbackfunc,1,"keypress");return 0}function _emscripten_set_keyup_callback(target,userData,useCapture,callbackfunc){JSEvents.registerKeyEventCallback(target,userData,useCapture,callbackfunc,3,"keyup");return 0}function _emscripten_set_mousedown_callback(target,userData,useCapture,callbackfunc){JSEvents.registerMouseEventCallback(target,userData,useCapture,callbackfunc,5,"mousedown");return 0}function _emscripten_set_mouseenter_callback(target,userData,useCapture,callbackfunc){JSEvents.registerMouseEventCallback(target,userData,useCapture,callbackfunc,33,"mouseenter");return 0}function _emscripten_set_mouseleave_callback(target,userData,useCapture,callbackfunc){JSEvents.registerMouseEventCallback(target,userData,useCapture,callbackfunc,34,"mouseleave");return 0}function _emscripten_set_mousemove_callback(target,userData,useCapture,callbackfunc){JSEvents.registerMouseEventCallback(target,userData,useCapture,callbackfunc,8,"mousemove");return 0}function _emscripten_set_mouseup_callback(target,userData,useCapture,callbackfunc){JSEvents.registerMouseEventCallback(target,userData,useCapture,callbackfunc,6,"mouseup");return 0}function _emscripten_set_resize_callback(target,userData,useCapture,callbackfunc){JSEvents.registerUiEventCallback(target,userData,useCapture,callbackfunc,10,"resize");return 0}function _emscripten_set_touchcancel_callback(target,userData,useCapture,callbackfunc){JSEvents.registerTouchEventCallback(target,userData,useCapture,callbackfunc,25,"touchcancel");return 0}function _emscripten_set_touchend_callback(target,userData,useCapture,callbackfunc){JSEvents.registerTouchEventCallback(target,userData,useCapture,callbackfunc,23,"touchend");return 0}function _emscripten_set_touchmove_callback(target,userData,useCapture,callbackfunc){JSEvents.registerTouchEventCallback(target,userData,useCapture,callbackfunc,24,"touchmove");return 0}function _emscripten_set_touchstart_callback(target,userData,useCapture,callbackfunc){JSEvents.registerTouchEventCallback(target,userData,useCapture,callbackfunc,22,"touchstart");return 0}function _emscripten_set_visibilitychange_callback(userData,useCapture,callbackfunc){JSEvents.registerVisibilityChangeEventCallback(document,userData,useCapture,callbackfunc,21,"visibilitychange");return 0}function _emscripten_set_wheel_callback(target,userData,useCapture,callbackfunc){target=JSEvents.findEventTarget(target);if(typeof target.onwheel!=="undefined"){JSEvents.registerWheelEventCallback(target,userData,useCapture,callbackfunc,9,"wheel");return 0}else if(typeof target.onmousewheel!=="undefined"){JSEvents.registerWheelEventCallback(target,userData,useCapture,callbackfunc,9,"mousewheel");return 0}else{return-1}}function __exit(status){Module["exit"](status)}function _exit(status){__exit(status)}var _environ=STATICTOP;STATICTOP+=16;function ___buildEnvironment(env){var MAX_ENV_VALUES=64;var TOTAL_ENV_SIZE=1024;var poolPtr;var envPtr;if(!___buildEnvironment.called){___buildEnvironment.called=true;ENV["USER"]=ENV["LOGNAME"]="web_user";ENV["PATH"]="/";ENV["PWD"]="/";ENV["HOME"]="/home/web_user";ENV["LANG"]="C.UTF-8";ENV["_"]=Module["thisProgram"];poolPtr=allocate(TOTAL_ENV_SIZE,"i8",ALLOC_STATIC);envPtr=allocate(MAX_ENV_VALUES*4,"i8*",ALLOC_STATIC);HEAP32[envPtr>>2]=poolPtr;HEAP32[_environ>>2]=envPtr}else{envPtr=HEAP32[_environ>>2];poolPtr=HEAP32[envPtr>>2]}var strings=[];var totalSize=0;for(var key in env){if(typeof env[key]==="string"){var line=key+"="+env[key];strings.push(line);totalSize+=line.length}}if(totalSize>TOTAL_ENV_SIZE){throw new Error("Environment size exceeded TOTAL_ENV_SIZE!")}var ptrSize=4;for(var i=0;i<strings.length;i++){var line=strings[i];writeAsciiToMemory(line,poolPtr);HEAP32[envPtr+i*ptrSize>>2]=poolPtr;poolPtr+=line.length+1}HEAP32[envPtr+strings.length*ptrSize>>2]=0}var ENV={};function _getenv(name){if(name===0)return 0;name=Pointer_stringify(name);if(!ENV.hasOwnProperty(name))return 0;if(_getenv.ret)_free(_getenv.ret);_getenv.ret=allocate(intArrayFromString(ENV[name]),"i8",ALLOC_NORMAL);return _getenv.ret}function _gettimeofday(ptr){var now=Date.now();HEAP32[ptr>>2]=now/1e3|0;HEAP32[ptr+4>>2]=now%1e3*1e3|0;return 0}function _glClear(x0){GLctx["clear"](x0)}var ___tm_timezone=allocate(intArrayFromString("GMT"),"i8",ALLOC_STATIC);function _gmtime_r(time,tmPtr){var date=new Date(HEAP32[time>>2]*1e3);HEAP32[tmPtr>>2]=date.getUTCSeconds();HEAP32[tmPtr+4>>2]=date.getUTCMinutes();HEAP32[tmPtr+8>>2]=date.getUTCHours();HEAP32[tmPtr+12>>2]=date.getUTCDate();HEAP32[tmPtr+16>>2]=date.getUTCMonth();HEAP32[tmPtr+20>>2]=date.getUTCFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getUTCDay();HEAP32[tmPtr+36>>2]=0;HEAP32[tmPtr+32>>2]=0;var start=Date.UTC(date.getUTCFullYear(),0,1,0,0,0,0);var yday=(date.getTime()-start)/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr+40>>2]=___tm_timezone;return tmPtr}function _llvm_exp2_f32(x){return Math.pow(2,x)}function _llvm_exp2_f64(){return _llvm_exp2_f32.apply(null,arguments)}var _llvm_pow_f64=Math_pow;var _tzname=STATICTOP;STATICTOP+=16;var _daylight=STATICTOP;STATICTOP+=16;var _timezone=STATICTOP;STATICTOP+=16;function _tzset(){if(_tzset.called)return;_tzset.called=true;HEAP32[_timezone>>2]=-(new Date).getTimezoneOffset()*60;var winter=new Date(2e3,0,1);var summer=new Date(2e3,6,1);HEAP32[_daylight>>2]=Number(winter.getTimezoneOffset()!=summer.getTimezoneOffset());function extractZone(date){var match=date.toTimeString().match(/\(([A-Za-z ]+)\)$/);return match?match[1]:"GMT"}var winterName=extractZone(winter);var summerName=extractZone(summer);var winterNamePtr=allocate(intArrayFromString(winterName),"i8",ALLOC_NORMAL);var summerNamePtr=allocate(intArrayFromString(summerName),"i8",ALLOC_NORMAL);if(summer.getTimezoneOffset()<winter.getTimezoneOffset()){HEAP32[_tzname>>2]=winterNamePtr;HEAP32[_tzname+4>>2]=summerNamePtr}else{HEAP32[_tzname>>2]=summerNamePtr;HEAP32[_tzname+4>>2]=winterNamePtr}}function _localtime_r(time,tmPtr){_tzset();var date=new Date(HEAP32[time>>2]*1e3);HEAP32[tmPtr>>2]=date.getSeconds();HEAP32[tmPtr+4>>2]=date.getMinutes();HEAP32[tmPtr+8>>2]=date.getHours();HEAP32[tmPtr+12>>2]=date.getDate();HEAP32[tmPtr+16>>2]=date.getMonth();HEAP32[tmPtr+20>>2]=date.getFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getDay();var start=new Date(date.getFullYear(),0,1);var yday=(date.getTime()-start.getTime())/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr+36>>2]=-(date.getTimezoneOffset()*60);var summerOffset=(new Date(2e3,6,1)).getTimezoneOffset();var winterOffset=start.getTimezoneOffset();var dst=(summerOffset!=winterOffset&&date.getTimezoneOffset()==Math.min(winterOffset,summerOffset))|0;HEAP32[tmPtr+32>>2]=dst;var zonePtr=HEAP32[_tzname+(dst?Runtime.QUANTUM_SIZE:0)>>2];HEAP32[tmPtr+40>>2]=zonePtr;return tmPtr}function _longjmp(env,value){Module["setThrew"](env,value||1);throw"longjmp"}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}function _mktime(tmPtr){_tzset();var date=new Date(HEAP32[tmPtr+20>>2]+1900,HEAP32[tmPtr+16>>2],HEAP32[tmPtr+12>>2],HEAP32[tmPtr+8>>2],HEAP32[tmPtr+4>>2],HEAP32[tmPtr>>2],0);var dst=HEAP32[tmPtr+32>>2];var guessedOffset=date.getTimezoneOffset();var start=new Date(date.getFullYear(),0,1);var summerOffset=(new Date(2e3,6,1)).getTimezoneOffset();var winterOffset=start.getTimezoneOffset();var dstOffset=Math.min(winterOffset,summerOffset);if(dst<0){HEAP32[tmPtr+32>>2]=Number(summerOffset!=winterOffset&&dstOffset==guessedOffset)}else if(dst>0!=(dstOffset==guessedOffset)){var nonDstOffset=Math.max(winterOffset,summerOffset);var trueOffset=dst>0?dstOffset:nonDstOffset;date.setTime(date.getTime()+(trueOffset-guessedOffset)*6e4)}HEAP32[tmPtr+24>>2]=date.getDay();var yday=(date.getTime()-start.getTime())/(1e3*60*60*24)|0;HEAP32[tmPtr+28>>2]=yday;return date.getTime()/1e3|0}function _usleep(useconds){var msec=useconds/1e3;if((ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)&&self["performance"]&&self["performance"]["now"]){var start=self["performance"]["now"]();while(self["performance"]["now"]()-start<msec){}}else{var start=Date.now();while(Date.now()-start<msec){}}return 0}function _nanosleep(rqtp,rmtp){var seconds=HEAP32[rqtp>>2];var nanoseconds=HEAP32[rqtp+4>>2];if(rmtp!==0){HEAP32[rmtp>>2]=0;HEAP32[rmtp+4>>2]=0}return _usleep(seconds*1e6+nanoseconds/1e3)}function _sigaction(signum,act,oldact){return 0}var __sigalrm_handler=0;function _signal(sig,func){if(sig==14){__sigalrm_handler=func}else{}return 0}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 tm_zone=HEAP32[tm+40>>2];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],tm_gmtoff:HEAP32[tm+36>>2],tm_zone:tm_zone?Pointer_stringify(tm_zone):""};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(year/100|0,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){var twelveHour=date.tm_hour;if(twelveHour==0)twelveHour=12;else if(twelveHour>12)twelveHour-=12;return leadingNulls(twelveHour,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<12){return"AM"}else{return"PM"}}),"%S":(function(date){return leadingNulls(date.tm_sec,2)}),"%t":(function(){return"\t"}),"%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){var off=date.tm_gmtoff;var ahead=off>=0;off=Math.abs(off)/60;off=off/60*100+off%60;return(ahead?"+":"-")+String("0000"+off).slice(-4)}),"%Z":(function(date){return date.tm_zone}),"%%":(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 _strptime(buf,format,tm){var pattern=Pointer_stringify(format);var SPECIAL_CHARS="\\!@#$^&*()+=-[]/{}|:<>?,.";for(var i=0,ii=SPECIAL_CHARS.length;i<ii;++i){pattern=pattern.replace(new RegExp("\\"+SPECIAL_CHARS[i],"g"),"\\"+SPECIAL_CHARS[i])}var EQUIVALENT_MATCHERS={"%A":"%a","%B":"%b","%c":"%x\\s+%X","%D":"%m\\/%d\\/%y","%e":"%d","%h":"%b","%R":"%H\\:%M","%r":"%I\\:%M\\:%S\\s%p","%T":"%H\\:%M\\:%S","%x":"%m\\/%d\\/(?:%y|%Y)","%X":"%H\\:%M\\:%S"};for(var matcher in EQUIVALENT_MATCHERS){pattern=pattern.replace(matcher,EQUIVALENT_MATCHERS[matcher])}var DATE_PATTERNS={"%a":"(?:Sun(?:day)?)|(?:Mon(?:day)?)|(?:Tue(?:sday)?)|(?:Wed(?:nesday)?)|(?:Thu(?:rsday)?)|(?:Fri(?:day)?)|(?:Sat(?:urday)?)","%b":"(?:Jan(?:uary)?)|(?:Feb(?:ruary)?)|(?:Mar(?:ch)?)|(?:Apr(?:il)?)|May|(?:Jun(?:e)?)|(?:Jul(?:y)?)|(?:Aug(?:ust)?)|(?:Sep(?:tember)?)|(?:Oct(?:ober)?)|(?:Nov(?:ember)?)|(?:Dec(?:ember)?)","%C":"\\d\\d","%d":"0[1-9]|[1-9](?!\\d)|1\\d|2\\d|30|31","%H":"\\d(?!\\d)|[0,1]\\d|20|21|22|23","%I":"\\d(?!\\d)|0\\d|10|11|12","%j":"00[1-9]|0?[1-9](?!\\d)|0?[1-9]\\d(?!\\d)|[1,2]\\d\\d|3[0-6]\\d","%m":"0[1-9]|[1-9](?!\\d)|10|11|12","%M":"0\\d|\\d(?!\\d)|[1-5]\\d","%n":"\\s","%p":"AM|am|PM|pm|A\\.M\\.|a\\.m\\.|P\\.M\\.|p\\.m\\.","%S":"0\\d|\\d(?!\\d)|[1-5]\\d|60","%U":"0\\d|\\d(?!\\d)|[1-4]\\d|50|51|52|53","%W":"0\\d|\\d(?!\\d)|[1-4]\\d|50|51|52|53","%w":"[0-6]","%y":"\\d\\d","%Y":"\\d\\d\\d\\d","%%":"%","%t":"\\s"};var MONTH_NUMBERS={JAN:0,FEB:1,MAR:2,APR:3,MAY:4,JUN:5,JUL:6,AUG:7,SEP:8,OCT:9,NOV:10,DEC:11};var DAY_NUMBERS_SUN_FIRST={SUN:0,MON:1,TUE:2,WED:3,THU:4,FRI:5,SAT:6};var DAY_NUMBERS_MON_FIRST={MON:0,TUE:1,WED:2,THU:3,FRI:4,SAT:5,SUN:6};for(var datePattern in DATE_PATTERNS){pattern=pattern.replace(datePattern,"("+datePattern+DATE_PATTERNS[datePattern]+")")}var capture=[];for(var i=pattern.indexOf("%");i>=0;i=pattern.indexOf("%")){capture.push(pattern[i+1]);pattern=pattern.replace(new RegExp("\\%"+pattern[i+1],"g"),"")}var matches=(new RegExp("^"+pattern,"i")).exec(Pointer_stringify(buf));function initDate(){function fixup(value,min,max){return typeof value!=="number"||isNaN(value)?min:value>=min?value<=max?value:max:min}return{year:fixup(HEAP32[tm+20>>2]+1900,1970,9999),month:fixup(HEAP32[tm+16>>2],0,11),day:fixup(HEAP32[tm+12>>2],1,31),hour:fixup(HEAP32[tm+8>>2],0,23),min:fixup(HEAP32[tm+4>>2],0,59),sec:fixup(HEAP32[tm>>2],0,59)}}if(matches){var date=initDate();var value;function getMatch(symbol){var pos=capture.indexOf(symbol);if(pos>=0){return matches[pos+1]}return}if(value=getMatch("S")){date.sec=parseInt(value)}if(value=getMatch("M")){date.min=parseInt(value)}if(value=getMatch("H")){date.hour=parseInt(value)}else if(value=getMatch("I")){var hour=parseInt(value);if(value=getMatch("p")){hour+=value.toUpperCase()[0]==="P"?12:0}date.hour=hour}if(value=getMatch("Y")){date.year=parseInt(value)}else if(value=getMatch("y")){var year=parseInt(value);if(value=getMatch("C")){year+=parseInt(value)*100}else{year+=year<69?2e3:1900}date.year=year}if(value=getMatch("m")){date.month=parseInt(value)-1}else if(value=getMatch("b")){date.month=MONTH_NUMBERS[value.substring(0,3).toUpperCase()]||0}if(value=getMatch("d")){date.day=parseInt(value)}else if(value=getMatch("j")){var day=parseInt(value);var leapYear=__isLeapYear(date.year);for(var month=0;month<12;++month){var daysUntilMonth=__arraySum(leapYear?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,month-1);if(day<=daysUntilMonth+(leapYear?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR)[month]){date.day=day-daysUntilMonth}}}else if(value=getMatch("a")){var weekDay=value.substring(0,3).toUpperCase();if(value=getMatch("U")){var weekDayNumber=DAY_NUMBERS_SUN_FIRST[weekDay];var weekNumber=parseInt(value);var janFirst=new Date(date.year,0,1);var endDate;if(janFirst.getDay()===0){endDate=__addDays(janFirst,weekDayNumber+7*(weekNumber-1))}else{endDate=__addDays(janFirst,7-janFirst.getDay()+weekDayNumber+7*(weekNumber-1))}date.day=endDate.getDate();date.month=endDate.getMonth()}else if(value=getMatch("W")){var weekDayNumber=DAY_NUMBERS_MON_FIRST[weekDay];var weekNumber=parseInt(value);var janFirst=new Date(date.year,0,1);var endDate;if(janFirst.getDay()===1){endDate=__addDays(janFirst,weekDayNumber+7*(weekNumber-1))}else{endDate=__addDays(janFirst,7-janFirst.getDay()+1+weekDayNumber+7*(weekNumber-1))}date.day=endDate.getDate();date.month=endDate.getMonth()}}var fullDate=new Date(date.year,date.month,date.day,date.hour,date.min,date.sec,0);HEAP32[tm>>2]=fullDate.getSeconds();HEAP32[tm+4>>2]=fullDate.getMinutes();HEAP32[tm+8>>2]=fullDate.getHours();HEAP32[tm+12>>2]=fullDate.getDate();HEAP32[tm+16>>2]=fullDate.getMonth();HEAP32[tm+20>>2]=fullDate.getFullYear()-1900;HEAP32[tm+24>>2]=fullDate.getDay();HEAP32[tm+28>>2]=__arraySum(__isLeapYear(fullDate.getFullYear())?__MONTH_DAYS_LEAP:__MONTH_DAYS_REGULAR,fullDate.getMonth()-1)+fullDate.getDate()-1;HEAP32[tm+32>>2]=0;return buf+intArrayFromString(matches[0]).length-1}return 0}function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){HEAP32[ptr>>2]=ret}return ret}FS.staticInit();__ATINIT__.unshift((function(){if(!Module["noFSInit"]&&!FS.init.initialized)FS.init()}));__ATMAIN__.push((function(){FS.ignorePermissions=false}));__ATEXIT__.push((function(){FS.quit()}));Module["FS_createFolder"]=FS.createFolder;Module["FS_createPath"]=FS.createPath;Module["FS_createDataFile"]=FS.createDataFile;Module["FS_createPreloadedFile"]=FS.createPreloadedFile;Module["FS_createLazyFile"]=FS.createLazyFile;Module["FS_createLink"]=FS.createLink;Module["FS_createDevice"]=FS.createDevice;Module["FS_unlink"]=FS.unlink;__ATINIT__.unshift((function(){TTY.init()}));__ATEXIT__.push((function(){TTY.shutdown()}));if(ENVIRONMENT_IS_NODE){var fs=require("fs");var NODEJS_PATH=require("path");NODEFS.staticInit()}if(ENVIRONMENT_IS_NODE){_emscripten_get_now=function _emscripten_get_now_actual(){var t=process["hrtime"]();return t[0]*1e3+t[1]/1e6}}else if(typeof dateNow!=="undefined"){_emscripten_get_now=dateNow}else if(typeof self==="object"&&self["performance"]&&typeof self["performance"]["now"]==="function"){_emscripten_get_now=(function(){return self["performance"]["now"]()})}else if(typeof performance==="object"&&typeof performance["now"]==="function"){_emscripten_get_now=(function(){return performance["now"]()})}else{_emscripten_get_now=Date.now}Module["requestFullScreen"]=function Module_requestFullScreen(lockPointer,resizeCanvas,vrDevice){Module.printErr("Module.requestFullScreen is deprecated. Please call Module.requestFullscreen instead.");Module["requestFullScreen"]=Module["requestFullscreen"];Browser.requestFullScreen(lockPointer,resizeCanvas,vrDevice)};Module["requestFullscreen"]=function Module_requestFullscreen(lockPointer,resizeCanvas,vrDevice){Browser.requestFullscreen(lockPointer,resizeCanvas,vrDevice)};Module["requestAnimationFrame"]=function Module_requestAnimationFrame(func){Browser.requestAnimationFrame(func)};Module["setCanvasSize"]=function Module_setCanvasSize(width,height,noUpdates){Browser.setCanvasSize(width,height,noUpdates)};Module["pauseMainLoop"]=function Module_pauseMainLoop(){Browser.mainLoop.pause()};Module["resumeMainLoop"]=function Module_resumeMainLoop(){Browser.mainLoop.resume()};Module["getUserMedia"]=function Module_getUserMedia(){Browser.getUserMedia()};Module["createContext"]=function Module_createContext(canvas,useWebGL,setInModule,webGLContextAttributes){return Browser.createContext(canvas,useWebGL,setInModule,webGLContextAttributes)};var GLctx;GL.init();JSEvents.staticInit();___buildEnvironment(ENV);DYNAMICTOP_PTR=Runtime.staticAlloc(4);STACK_BASE=STACKTOP=Runtime.alignMemory(STATICTOP);STACK_MAX=STACK_BASE+TOTAL_STACK;DYNAMIC_BASE=Runtime.alignMemory(STACK_MAX);HEAP32[DYNAMICTOP_PTR>>2]=DYNAMIC_BASE;staticSealed=true;var ASSERTIONS=false;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}function intArrayToString(array){var ret=[];for(var i=0;i<array.length;i++){var chr=array[i];if(chr>255){if(ASSERTIONS){assert(false,"Character code "+chr+" ("+String.fromCharCode(chr)+") at offset "+i+" not in 0x00-0xFF.")}chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var decodeBase64=typeof atob==="function"?atob:(function(input){var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i<input.length);return output});function intArrayFromBase64(s){if(typeof ENVIRONMENT_IS_NODE==="boolean"&&ENVIRONMENT_IS_NODE){var buf;try{buf=Buffer.from(s,"base64")}catch(_){buf=new Buffer(s,"base64")}return new Uint8Array(buf.buffer,buf.byteOffset,buf.byteLength)}try{var decoded=decodeBase64(s);var bytes=new Uint8Array(decoded.length);for(var i=0;i<decoded.length;++i){bytes[i]=decoded.charCodeAt(i)}return bytes}catch(_){throw new Error("Converting base64 string to bytes failed.")}}function tryParseAsDataURI(filename){var dataURIPrefix="data:application/octet-stream;base64,";if(!(String.prototype.startsWith?filename.startsWith(dataURIPrefix):filename.indexOf(dataURIPrefix)===0)){return}return intArrayFromBase64(filename.slice(dataURIPrefix.length))}function invoke_dd(index,a1){try{return Module["dynCall_dd"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_ddd(index,a1,a2){try{return Module["dynCall_ddd"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_di(index,a1){try{return Module["dynCall_di"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_i(index){try{return Module["dynCall_i"](index)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["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;Module["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;Module["setThrew"](1,0)}}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;Module["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;Module["setThrew"](1,0)}}function invoke_iiiiidii(index,a1,a2,a3,a4,a5,a6,a7){try{return Module["dynCall_iiiiidii"](index,a1,a2,a3,a4,a5,a6,a7)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["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;Module["setThrew"](1,0)}}function invoke_iiiiiiii(index,a1,a2,a3,a4,a5,a6,a7){try{return Module["dynCall_iiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["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;Module["setThrew"](1,0)}}function invoke_iiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9){try{return Module["dynCall_iiiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_v(index){try{Module["dynCall_v"](index)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_vd(index,a1){try{Module["dynCall_vd"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_vdd(index,a1,a2){try{Module["dynCall_vdd"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_vdddd(index,a1,a2,a3,a4){try{Module["dynCall_vdddd"](index,a1,a2,a3,a4)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_vdddddd(index,a1,a2,a3,a4,a5,a6){try{Module["dynCall_vdddddd"](index,a1,a2,a3,a4,a5,a6)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_vdi(index,a1,a2){try{Module["dynCall_vdi"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_vi(index,a1){try{Module["dynCall_vi"](index,a1)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_vid(index,a1,a2){try{Module["dynCall_vid"](index,a1,a2)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_vidd(index,a1,a2,a3){try{Module["dynCall_vidd"](index,a1,a2,a3)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_viddd(index,a1,a2,a3,a4){try{Module["dynCall_viddd"](index,a1,a2,a3,a4)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_vidddd(index,a1,a2,a3,a4,a5){try{Module["dynCall_vidddd"](index,a1,a2,a3,a4,a5)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_viddddddddddddii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15){try{Module["dynCall_viddddddddddddii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["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;Module["setThrew"](1,0)}}function invoke_viid(index,a1,a2,a3){try{Module["dynCall_viid"](index,a1,a2,a3)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["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;Module["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;Module["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;Module["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;Module["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;Module["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;Module["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;Module["setThrew"](1,0)}}function invoke_viiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11){try{Module["dynCall_viiiiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_viiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12){try{Module["dynCall_viiiiiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}function invoke_viiiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13){try{Module["dynCall_viiiiiiiiiiiii"](index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13)}catch(e){if(typeof e!=="number"&&e!=="longjmp")throw e;Module["setThrew"](1,0)}}Module.asmGlobalArg={"Math":Math,"Int8Array":Int8Array,"Int16Array":Int16Array,"Int32Array":Int32Array,"Uint8Array":Uint8Array,"Uint16Array":Uint16Array,"Uint32Array":Uint32Array,"Float32Array":Float32Array,"Float64Array":Float64Array,"NaN":NaN,"Infinity":Infinity};Module.asmLibraryArg={"abort":abort,"assert":assert,"enlargeMemory":enlargeMemory,"getTotalMemory":getTotalMemory,"abortOnCannotGrowMemory":abortOnCannotGrowMemory,"invoke_dd":invoke_dd,"invoke_ddd":invoke_ddd,"invoke_di":invoke_di,"invoke_i":invoke_i,"invoke_ii":invoke_ii,"invoke_iii":invoke_iii,"invoke_iiii":invoke_iiii,"invoke_iiiii":invoke_iiiii,"invoke_iiiiidii":invoke_iiiiidii,"invoke_iiiiii":invoke_iiiiii,"invoke_iiiiiiii":invoke_iiiiiiii,"invoke_iiiiiiiii":invoke_iiiiiiiii,"invoke_iiiiiiiiii":invoke_iiiiiiiiii,"invoke_v":invoke_v,"invoke_vd":invoke_vd,"invoke_vdd":invoke_vdd,"invoke_vdddd":invoke_vdddd,"invoke_vdddddd":invoke_vdddddd,"invoke_vdi":invoke_vdi,"invoke_vi":invoke_vi,"invoke_vid":invoke_vid,"invoke_vidd":invoke_vidd,"invoke_viddd":invoke_viddd,"invoke_vidddd":invoke_vidddd,"invoke_viddddddddddddii":invoke_viddddddddddddii,"invoke_vii":invoke_vii,"invoke_viid":invoke_viid,"invoke_viii":invoke_viii,"invoke_viiii":invoke_viiii,"invoke_viiiii":invoke_viiiii,"invoke_viiiiii":invoke_viiiiii,"invoke_viiiiiii":invoke_viiiiiii,"invoke_viiiiiiii":invoke_viiiiiiii,"invoke_viiiiiiiii":invoke_viiiiiiiii,"invoke_viiiiiiiiiii":invoke_viiiiiiiiiii,"invoke_viiiiiiiiiiii":invoke_viiiiiiiiiiii,"invoke_viiiiiiiiiiiii":invoke_viiiiiiiiiiiii,"___assert_fail":___assert_fail,"___buildEnvironment":___buildEnvironment,"___lock":___lock,"___setErrNo":___setErrNo,"___syscall10":___syscall10,"___syscall140":___syscall140,"___syscall145":___syscall145,"___syscall146":___syscall146,"___syscall15":___syscall15,"___syscall195":___syscall195,"___syscall197":___syscall197,"___syscall220":___syscall220,"___syscall221":___syscall221,"___syscall330":___syscall330,"___syscall39":___syscall39,"___syscall40":___syscall40,"___syscall5":___syscall5,"___syscall54":___syscall54,"___syscall6":___syscall6,"___syscall63":___syscall63,"___syscall85":___syscall85,"___unlock":___unlock,"__addDays":__addDays,"__arraySum":__arraySum,"__emscripten_sample_gamepad_data":__emscripten_sample_gamepad_data,"__exit":__exit,"__isLeapYear":__isLeapYear,"__registerRestoreOldStyle":__registerRestoreOldStyle,"__setLetterbox":__setLetterbox,"_abort":_abort,"_clock_gettime":_clock_gettime,"_difftime":_difftime,"_dlclose":_dlclose,"_dlerror":_dlerror,"_dlsym":_dlsym,"_eglBindAPI":_eglBindAPI,"_eglChooseConfig":_eglChooseConfig,"_eglCreateContext":_eglCreateContext,"_eglCreateWindowSurface":_eglCreateWindowSurface,"_eglDestroyContext":_eglDestroyContext,"_eglDestroySurface":_eglDestroySurface,"_eglGetConfigAttrib":_eglGetConfigAttrib,"_eglGetDisplay":_eglGetDisplay,"_eglGetProcAddress":_eglGetProcAddress,"_eglInitialize":_eglInitialize,"_eglMakeCurrent":_eglMakeCurrent,"_eglSwapBuffers":_eglSwapBuffers,"_eglSwapInterval":_eglSwapInterval,"_eglTerminate":_eglTerminate,"_eglWaitClient":_eglWaitClient,"_eglWaitGL":_eglWaitGL,"_eglWaitNative":_eglWaitNative,"_emscripten_asm_const_i":_emscripten_asm_const_i,"_emscripten_asm_const_ii":_emscripten_asm_const_ii,"_emscripten_asm_const_iii":_emscripten_asm_const_iii,"_emscripten_asm_const_iiii":_emscripten_asm_const_iiii,"_emscripten_asm_const_iiiii":_emscripten_asm_const_iiiii,"_emscripten_async_wget":_emscripten_async_wget,"_emscripten_cancel_main_loop":_emscripten_cancel_main_loop,"_emscripten_do_request_fullscreen":_emscripten_do_request_fullscreen,"_emscripten_exit_fullscreen":_emscripten_exit_fullscreen,"_emscripten_exit_pointerlock":_emscripten_exit_pointerlock,"_emscripten_get_device_pixel_ratio":_emscripten_get_device_pixel_ratio,"_emscripten_get_element_css_size":_emscripten_get_element_css_size,"_emscripten_get_gamepad_status":_emscripten_get_gamepad_status,"_emscripten_get_now":_emscripten_get_now,"_emscripten_get_now_is_monotonic":_emscripten_get_now_is_monotonic,"_emscripten_get_num_gamepads":_emscripten_get_num_gamepads,"_emscripten_get_pointerlock_status":_emscripten_get_pointerlock_status,"_emscripten_glActiveTexture":_emscripten_glActiveTexture,"_emscripten_glAttachShader":_emscripten_glAttachShader,"_emscripten_glBindAttribLocation":_emscripten_glBindAttribLocation,"_emscripten_glBindBuffer":_emscripten_glBindBuffer,"_emscripten_glBindFramebuffer":_emscripten_glBindFramebuffer,"_emscripten_glBindProgramARB":_emscripten_glBindProgramARB,"_emscripten_glBindRenderbuffer":_emscripten_glBindRenderbuffer,"_emscripten_glBindTexture":_emscripten_glBindTexture,"_emscripten_glBindVertexArray":_emscripten_glBindVertexArray,"_emscripten_glBlendColor":_emscripten_glBlendColor,"_emscripten_glBlendEquation":_emscripten_glBlendEquation,"_emscripten_glBlendEquationSeparate":_emscripten_glBlendEquationSeparate,"_emscripten_glBlendFunc":_emscripten_glBlendFunc,"_emscripten_glBlendFuncSeparate":_emscripten_glBlendFuncSeparate,"_emscripten_glBufferData":_emscripten_glBufferData,"_emscripten_glBufferSubData":_emscripten_glBufferSubData,"_emscripten_glCheckFramebufferStatus":_emscripten_glCheckFramebufferStatus,"_emscripten_glClear":_emscripten_glClear,"_emscripten_glClearColor":_emscripten_glClearColor,"_emscripten_glClearDepth":_emscripten_glClearDepth,"_emscripten_glClearDepthf":_emscripten_glClearDepthf,"_emscripten_glClearStencil":_emscripten_glClearStencil,"_emscripten_glClientActiveTexture":_emscripten_glClientActiveTexture,"_emscripten_glColorMask":_emscripten_glColorMask,"_emscripten_glColorPointer":_emscripten_glColorPointer,"_emscripten_glCompileShader":_emscripten_glCompileShader,"_emscripten_glCompressedTexImage2D":_emscripten_glCompressedTexImage2D,"_emscripten_glCompressedTexSubImage2D":_emscripten_glCompressedTexSubImage2D,"_emscripten_glCopyTexImage2D":_emscripten_glCopyTexImage2D,"_emscripten_glCopyTexSubImage2D":_emscripten_glCopyTexSubImage2D,"_emscripten_glCreateProgram":_emscripten_glCreateProgram,"_emscripten_glCreateShader":_emscripten_glCreateShader,"_emscripten_glCullFace":_emscripten_glCullFace,"_emscripten_glDeleteBuffers":_emscripten_glDeleteBuffers,"_emscripten_glDeleteFramebuffers":_emscripten_glDeleteFramebuffers,"_emscripten_glDeleteObjectARB":_emscripten_glDeleteObjectARB,"_emscripten_glDeleteProgram":_emscripten_glDeleteProgram,"_emscripten_glDeleteRenderbuffers":_emscripten_glDeleteRenderbuffers,"_emscripten_glDeleteShader":_emscripten_glDeleteShader,"_emscripten_glDeleteTextures":_emscripten_glDeleteTextures,"_emscripten_glDeleteVertexArrays":_emscripten_glDeleteVertexArrays,"_emscripten_glDepthFunc":_emscripten_glDepthFunc,"_emscripten_glDepthMask":_emscripten_glDepthMask,"_emscripten_glDepthRange":_emscripten_glDepthRange,"_emscripten_glDepthRangef":_emscripten_glDepthRangef,"_emscripten_glDetachShader":_emscripten_glDetachShader,"_emscripten_glDisable":_emscripten_glDisable,"_emscripten_glDisableVertexAttribArray":_emscripten_glDisableVertexAttribArray,"_emscripten_glDrawArrays":_emscripten_glDrawArrays,"_emscripten_glDrawArraysInstanced":_emscripten_glDrawArraysInstanced,"_emscripten_glDrawBuffers":_emscripten_glDrawBuffers,"_emscripten_glDrawElements":_emscripten_glDrawElements,"_emscripten_glDrawElementsInstanced":_emscripten_glDrawElementsInstanced,"_emscripten_glDrawRangeElements":_emscripten_glDrawRangeElements,"_emscripten_glEnable":_emscripten_glEnable,"_emscripten_glEnableClientState":_emscripten_glEnableClientState,"_emscripten_glEnableVertexAttribArray":_emscripten_glEnableVertexAttribArray,"_emscripten_glFinish":_emscripten_glFinish,"_emscripten_glFlush":_emscripten_glFlush,"_emscripten_glFramebufferRenderbuffer":_emscripten_glFramebufferRenderbuffer,"_emscripten_glFramebufferTexture2D":_emscripten_glFramebufferTexture2D,"_emscripten_glFrontFace":_emscripten_glFrontFace,"_emscripten_glFrustum":_emscripten_glFrustum,"_emscripten_glGenBuffers":_emscripten_glGenBuffers,"_emscripten_glGenFramebuffers":_emscripten_glGenFramebuffers,"_emscripten_glGenRenderbuffers":_emscripten_glGenRenderbuffers,"_emscripten_glGenTextures":_emscripten_glGenTextures,"_emscripten_glGenVertexArrays":_emscripten_glGenVertexArrays,"_emscripten_glGenerateMipmap":_emscripten_glGenerateMipmap,"_emscripten_glGetActiveAttrib":_emscripten_glGetActiveAttrib,"_emscripten_glGetActiveUniform":_emscripten_glGetActiveUniform,"_emscripten_glGetAttachedShaders":_emscripten_glGetAttachedShaders,"_emscripten_glGetAttribLocation":_emscripten_glGetAttribLocation,"_emscripten_glGetBooleanv":_emscripten_glGetBooleanv,"_emscripten_glGetBufferParameteriv":_emscripten_glGetBufferParameteriv,"_emscripten_glGetError":_emscripten_glGetError,"_emscripten_glGetFloatv":_emscripten_glGetFloatv,"_emscripten_glGetFramebufferAttachmentParameteriv":_emscripten_glGetFramebufferAttachmentParameteriv,"_emscripten_glGetInfoLogARB":_emscripten_glGetInfoLogARB,"_emscripten_glGetIntegerv":_emscripten_glGetIntegerv,"_emscripten_glGetObjectParameterivARB":_emscripten_glGetObjectParameterivARB,"_emscripten_glGetPointerv":_emscripten_glGetPointerv,"_emscripten_glGetProgramInfoLog":_emscripten_glGetProgramInfoLog,"_emscripten_glGetProgramiv":_emscripten_glGetProgramiv,"_emscripten_glGetRenderbufferParameteriv":_emscripten_glGetRenderbufferParameteriv,"_emscripten_glGetShaderInfoLog":_emscripten_glGetShaderInfoLog,"_emscripten_glGetShaderPrecisionFormat":_emscripten_glGetShaderPrecisionFormat,"_emscripten_glGetShaderSource":_emscripten_glGetShaderSource,"_emscripten_glGetShaderiv":_emscripten_glGetShaderiv,"_emscripten_glGetString":_emscripten_glGetString,"_emscripten_glGetTexParameterfv":_emscripten_glGetTexParameterfv,"_emscripten_glGetTexParameteriv":_emscripten_glGetTexParameteriv,"_emscripten_glGetUniformLocation":_emscripten_glGetUniformLocation,"_emscripten_glGetUniformfv":_emscripten_glGetUniformfv,"_emscripten_glGetUniformiv":_emscripten_glGetUniformiv,"_emscripten_glGetVertexAttribPointerv":_emscripten_glGetVertexAttribPointerv,"_emscripten_glGetVertexAttribfv":_emscripten_glGetVertexAttribfv,"_emscripten_glGetVertexAttribiv":_emscripten_glGetVertexAttribiv,"_emscripten_glHint":_emscripten_glHint,"_emscripten_glIsBuffer":_emscripten_glIsBuffer,"_emscripten_glIsEnabled":_emscripten_glIsEnabled,"_emscripten_glIsFramebuffer":_emscripten_glIsFramebuffer,"_emscripten_glIsProgram":_emscripten_glIsProgram,"_emscripten_glIsRenderbuffer":_emscripten_glIsRenderbuffer,"_emscripten_glIsShader":_emscripten_glIsShader,"_emscripten_glIsTexture":_emscripten_glIsTexture,"_emscripten_glIsVertexArray":_emscripten_glIsVertexArray,"_emscripten_glLineWidth":_emscripten_glLineWidth,"_emscripten_glLinkProgram":_emscripten_glLinkProgram,"_emscripten_glLoadIdentity":_emscripten_glLoadIdentity,"_emscripten_glLoadMatrixf":_emscripten_glLoadMatrixf,"_emscripten_glMatrixMode":_emscripten_glMatrixMode,"_emscripten_glNormalPointer":_emscripten_glNormalPointer,"_emscripten_glPixelStorei":_emscripten_glPixelStorei,"_emscripten_glPolygonOffset":_emscripten_glPolygonOffset,"_emscripten_glReadPixels":_emscripten_glReadPixels,"_emscripten_glReleaseShaderCompiler":_emscripten_glReleaseShaderCompiler,"_emscripten_glRenderbufferStorage":_emscripten_glRenderbufferStorage,"_emscripten_glRotatef":_emscripten_glRotatef,"_emscripten_glSampleCoverage":_emscripten_glSampleCoverage,"_emscripten_glScissor":_emscripten_glScissor,"_emscripten_glShaderBinary":_emscripten_glShaderBinary,"_emscripten_glShaderSource":_emscripten_glShaderSource,"_emscripten_glStencilFunc":_emscripten_glStencilFunc,"_emscripten_glStencilFuncSeparate":_emscripten_glStencilFuncSeparate,"_emscripten_glStencilMask":_emscripten_glStencilMask,"_emscripten_glStencilMaskSeparate":_emscripten_glStencilMaskSeparate,"_emscripten_glStencilOp":_emscripten_glStencilOp,"_emscripten_glStencilOpSeparate":_emscripten_glStencilOpSeparate,"_emscripten_glTexCoordPointer":_emscripten_glTexCoordPointer,"_emscripten_glTexImage2D":_emscripten_glTexImage2D,"_emscripten_glTexParameterf":_emscripten_glTexParameterf,"_emscripten_glTexParameterfv":_emscripten_glTexParameterfv,"_emscripten_glTexParameteri":_emscripten_glTexParameteri,"_emscripten_glTexParameteriv":_emscripten_glTexParameteriv,"_emscripten_glTexSubImage2D":_emscripten_glTexSubImage2D,"_emscripten_glUniform1f":_emscripten_glUniform1f,"_emscripten_glUniform1fv":_emscripten_glUniform1fv,"_emscripten_glUniform1i":_emscripten_glUniform1i,"_emscripten_glUniform1iv":_emscripten_glUniform1iv,"_emscripten_glUniform2f":_emscripten_glUniform2f,"_emscripten_glUniform2fv":_emscripten_glUniform2fv,"_emscripten_glUniform2i":_emscripten_glUniform2i,"_emscripten_glUniform2iv":_emscripten_glUniform2iv,"_emscripten_glUniform3f":_emscripten_glUniform3f,"_emscripten_glUniform3fv":_emscripten_glUniform3fv,"_emscripten_glUniform3i":_emscripten_glUniform3i,"_emscripten_glUniform3iv":_emscripten_glUniform3iv,"_emscripten_glUniform4f":_emscripten_glUniform4f,"_emscripten_glUniform4fv":_emscripten_glUniform4fv,"_emscripten_glUniform4i":_emscripten_glUniform4i,"_emscripten_glUniform4iv":_emscripten_glUniform4iv,"_emscripten_glUniformMatrix2fv":_emscripten_glUniformMatrix2fv,"_emscripten_glUniformMatrix3fv":_emscripten_glUniformMatrix3fv,"_emscripten_glUniformMatrix4fv":_emscripten_glUniformMatrix4fv,"_emscripten_glUseProgram":_emscripten_glUseProgram,"_emscripten_glValidateProgram":_emscripten_glValidateProgram,"_emscripten_glVertexAttrib1f":_emscripten_glVertexAttrib1f,"_emscripten_glVertexAttrib1fv":_emscripten_glVertexAttrib1fv,"_emscripten_glVertexAttrib2f":_emscripten_glVertexAttrib2f,"_emscripten_glVertexAttrib2fv":_emscripten_glVertexAttrib2fv,"_emscripten_glVertexAttrib3f":_emscripten_glVertexAttrib3f,"_emscripten_glVertexAttrib3fv":_emscripten_glVertexAttrib3fv,"_emscripten_glVertexAttrib4f":_emscripten_glVertexAttrib4f,"_emscripten_glVertexAttrib4fv":_emscripten_glVertexAttrib4fv,"_emscripten_glVertexAttribDivisor":_emscripten_glVertexAttribDivisor,"_emscripten_glVertexAttribPointer":_emscripten_glVertexAttribPointer,"_emscripten_glVertexPointer":_emscripten_glVertexPointer,"_emscripten_glViewport":_emscripten_glViewport,"_emscripten_memcpy_big":_emscripten_memcpy_big,"_emscripten_request_fullscreen_strategy":_emscripten_request_fullscreen_strategy,"_emscripten_request_pointerlock":_emscripten_request_pointerlock,"_emscripten_set_blur_callback":_emscripten_set_blur_callback,"_emscripten_set_canvas_size":_emscripten_set_canvas_size,"_emscripten_set_element_css_size":_emscripten_set_element_css_size,"_emscripten_set_focus_callback":_emscripten_set_focus_callback,"_emscripten_set_fullscreenchange_callback":_emscripten_set_fullscreenchange_callback,"_emscripten_set_gamepadconnected_callback":_emscripten_set_gamepadconnected_callback,"_emscripten_set_gamepaddisconnected_callback":_emscripten_set_gamepaddisconnected_callback,"_emscripten_set_keydown_callback":_emscripten_set_keydown_callback,"_emscripten_set_keypress_callback":_emscripten_set_keypress_callback,"_emscripten_set_keyup_callback":_emscripten_set_keyup_callback,"_emscripten_set_main_loop":_emscripten_set_main_loop,"_emscripten_set_main_loop_timing":_emscripten_set_main_loop_timing,"_emscripten_set_mousedown_callback":_emscripten_set_mousedown_callback,"_emscripten_set_mouseenter_callback":_emscripten_set_mouseenter_callback,"_emscripten_set_mouseleave_callback":_emscripten_set_mouseleave_callback,"_emscripten_set_mousemove_callback":_emscripten_set_mousemove_callback,"_emscripten_set_mouseup_callback":_emscripten_set_mouseup_callback,"_emscripten_set_resize_callback":_emscripten_set_resize_callback,"_emscripten_set_touchcancel_callback":_emscripten_set_touchcancel_callback,"_emscripten_set_touchend_callback":_emscripten_set_touchend_callback,"_emscripten_set_touchmove_callback":_emscripten_set_touchmove_callback,"_emscripten_set_touchstart_callback":_emscripten_set_touchstart_callback,"_emscripten_set_visibilitychange_callback":_emscripten_set_visibilitychange_callback,"_emscripten_set_wheel_callback":_emscripten_set_wheel_callback,"_exit":_exit,"_getenv":_getenv,"_gettimeofday":_gettimeofday,"_glClear":_glClear,"_glutCreateWindow":_glutCreateWindow,"_glutDestroyWindow":_glutDestroyWindow,"_glutInitDisplayMode":_glutInitDisplayMode,"_gmtime_r":_gmtime_r,"_llvm_exp2_f32":_llvm_exp2_f32,"_llvm_exp2_f64":_llvm_exp2_f64,"_llvm_pow_f64":_llvm_pow_f64,"_localtime_r":_localtime_r,"_longjmp":_longjmp,"_mktime":_mktime,"_nanosleep":_nanosleep,"_sigaction":_sigaction,"_signal":_signal,"_strftime":_strftime,"_strptime":_strptime,"_time":_time,"_tzset":_tzset,"_usleep":_usleep,"emscriptenWebGLComputeImageSize":emscriptenWebGLComputeImageSize,"emscriptenWebGLGet":emscriptenWebGLGet,"emscriptenWebGLGetTexPixelData":emscriptenWebGLGetTexPixelData,"emscriptenWebGLGetUniform":emscriptenWebGLGetUniform,"emscriptenWebGLGetVertexAttrib":emscriptenWebGLGetVertexAttrib,"DYNAMICTOP_PTR":DYNAMICTOP_PTR,"tempDoublePtr":tempDoublePtr,"ABORT":ABORT,"STACKTOP":STACKTOP,"STACK_MAX":STACK_MAX,"cttz_i8":cttz_i8};// EMSCRIPTEN_START_ASM
|
|
var asm=(/** @suppress {uselessCode} */ 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.DYNAMICTOP_PTR|0;var j=env.tempDoublePtr|0;var k=env.ABORT|0;var l=env.STACKTOP|0;var m=env.STACK_MAX|0;var n=env.cttz_i8|0;var o=0;var p=0;var q=0;var r=0;var s=global.NaN,t=global.Infinity;var u=0,v=0,w=0,x=0,y=0.0;var z=0;var A=global.Math.floor;var B=global.Math.abs;var C=global.Math.sqrt;var D=global.Math.pow;var E=global.Math.cos;var F=global.Math.sin;var G=global.Math.tan;var H=global.Math.acos;var I=global.Math.asin;var J=global.Math.atan;var K=global.Math.atan2;var L=global.Math.exp;var M=global.Math.log;var N=global.Math.ceil;var O=global.Math.imul;var P=global.Math.min;var Q=global.Math.max;var R=global.Math.clz32;var S=env.abort;var T=env.assert;var U=env.enlargeMemory;var V=env.getTotalMemory;var W=env.abortOnCannotGrowMemory;var X=env.invoke_dd;var Y=env.invoke_ddd;var Z=env.invoke_di;var _=env.invoke_i;var $=env.invoke_ii;var aa=env.invoke_iii;var ba=env.invoke_iiii;var ca=env.invoke_iiiii;var da=env.invoke_iiiiidii;var ea=env.invoke_iiiiii;var fa=env.invoke_iiiiiiii;var ga=env.invoke_iiiiiiiii;var ha=env.invoke_iiiiiiiiii;var ia=env.invoke_v;var ja=env.invoke_vd;var ka=env.invoke_vdd;var la=env.invoke_vdddd;var ma=env.invoke_vdddddd;var na=env.invoke_vdi;var oa=env.invoke_vi;var pa=env.invoke_vid;var qa=env.invoke_vidd;var ra=env.invoke_viddd;var sa=env.invoke_vidddd;var ta=env.invoke_viddddddddddddii;var ua=env.invoke_vii;var va=env.invoke_viid;var wa=env.invoke_viii;var xa=env.invoke_viiii;var ya=env.invoke_viiiii;var za=env.invoke_viiiiii;var Aa=env.invoke_viiiiiii;var Ba=env.invoke_viiiiiiii;var Ca=env.invoke_viiiiiiiii;var Da=env.invoke_viiiiiiiiiii;var Ea=env.invoke_viiiiiiiiiiii;var Fa=env.invoke_viiiiiiiiiiiii;var Ga=env.___assert_fail;var Ha=env.___buildEnvironment;var Ia=env.___lock;var Ja=env.___setErrNo;var Ka=env.___syscall10;var La=env.___syscall140;var Ma=env.___syscall145;var Na=env.___syscall146;var Oa=env.___syscall15;var Pa=env.___syscall195;var Qa=env.___syscall197;var Ra=env.___syscall220;var Sa=env.___syscall221;var Ta=env.___syscall330;var Ua=env.___syscall39;var Va=env.___syscall40;var Wa=env.___syscall5;var Xa=env.___syscall54;var Ya=env.___syscall6;var Za=env.___syscall63;var _a=env.___syscall85;var $a=env.___unlock;var ab=env.__addDays;var bb=env.__arraySum;var cb=env.__emscripten_sample_gamepad_data;var db=env.__exit;var eb=env.__isLeapYear;var fb=env.__registerRestoreOldStyle;var gb=env.__setLetterbox;var hb=env._abort;var ib=env._clock_gettime;var jb=env._difftime;var kb=env._dlclose;var lb=env._dlerror;var mb=env._dlsym;var nb=env._eglBindAPI;var ob=env._eglChooseConfig;var pb=env._eglCreateContext;var qb=env._eglCreateWindowSurface;var rb=env._eglDestroyContext;var sb=env._eglDestroySurface;var tb=env._eglGetConfigAttrib;var ub=env._eglGetDisplay;var vb=env._eglGetProcAddress;var wb=env._eglInitialize;var xb=env._eglMakeCurrent;var yb=env._eglSwapBuffers;var zb=env._eglSwapInterval;var Ab=env._eglTerminate;var Bb=env._eglWaitClient;var Cb=env._eglWaitGL;var Db=env._eglWaitNative;var Eb=env._emscripten_asm_const_i;var Fb=env._emscripten_asm_const_ii;var Gb=env._emscripten_asm_const_iii;var Hb=env._emscripten_asm_const_iiii;var Ib=env._emscripten_asm_const_iiiii;var Jb=env._emscripten_async_wget;var Kb=env._emscripten_cancel_main_loop;var Lb=env._emscripten_do_request_fullscreen;var Mb=env._emscripten_exit_fullscreen;var Nb=env._emscripten_exit_pointerlock;var Ob=env._emscripten_get_device_pixel_ratio;var Pb=env._emscripten_get_element_css_size;var Qb=env._emscripten_get_gamepad_status;var Rb=env._emscripten_get_now;var Sb=env._emscripten_get_now_is_monotonic;var Tb=env._emscripten_get_num_gamepads;var Ub=env._emscripten_get_pointerlock_status;var Vb=env._emscripten_glActiveTexture;var Wb=env._emscripten_glAttachShader;var Xb=env._emscripten_glBindAttribLocation;var Yb=env._emscripten_glBindBuffer;var Zb=env._emscripten_glBindFramebuffer;var _b=env._emscripten_glBindProgramARB;var $b=env._emscripten_glBindRenderbuffer;var ac=env._emscripten_glBindTexture;var bc=env._emscripten_glBindVertexArray;var cc=env._emscripten_glBlendColor;var dc=env._emscripten_glBlendEquation;var ec=env._emscripten_glBlendEquationSeparate;var fc=env._emscripten_glBlendFunc;var gc=env._emscripten_glBlendFuncSeparate;var hc=env._emscripten_glBufferData;var ic=env._emscripten_glBufferSubData;var jc=env._emscripten_glCheckFramebufferStatus;var kc=env._emscripten_glClear;var lc=env._emscripten_glClearColor;var mc=env._emscripten_glClearDepth;var nc=env._emscripten_glClearDepthf;var oc=env._emscripten_glClearStencil;var pc=env._emscripten_glClientActiveTexture;var qc=env._emscripten_glColorMask;var rc=env._emscripten_glColorPointer;var sc=env._emscripten_glCompileShader;var tc=env._emscripten_glCompressedTexImage2D;var uc=env._emscripten_glCompressedTexSubImage2D;var vc=env._emscripten_glCopyTexImage2D;var wc=env._emscripten_glCopyTexSubImage2D;var xc=env._emscripten_glCreateProgram;var yc=env._emscripten_glCreateShader;var zc=env._emscripten_glCullFace;var Ac=env._emscripten_glDeleteBuffers;var Bc=env._emscripten_glDeleteFramebuffers;var Cc=env._emscripten_glDeleteObjectARB;var Dc=env._emscripten_glDeleteProgram;var Ec=env._emscripten_glDeleteRenderbuffers;var Fc=env._emscripten_glDeleteShader;var Gc=env._emscripten_glDeleteTextures;var Hc=env._emscripten_glDeleteVertexArrays;var Ic=env._emscripten_glDepthFunc;var Jc=env._emscripten_glDepthMask;var Kc=env._emscripten_glDepthRange;var Lc=env._emscripten_glDepthRangef;var Mc=env._emscripten_glDetachShader;var Nc=env._emscripten_glDisable;var Oc=env._emscripten_glDisableVertexAttribArray;var Pc=env._emscripten_glDrawArrays;var Qc=env._emscripten_glDrawArraysInstanced;var Rc=env._emscripten_glDrawBuffers;var Sc=env._emscripten_glDrawElements;var Tc=env._emscripten_glDrawElementsInstanced;var Uc=env._emscripten_glDrawRangeElements;var Vc=env._emscripten_glEnable;var Wc=env._emscripten_glEnableClientState;var Xc=env._emscripten_glEnableVertexAttribArray;var Yc=env._emscripten_glFinish;var Zc=env._emscripten_glFlush;var _c=env._emscripten_glFramebufferRenderbuffer;var $c=env._emscripten_glFramebufferTexture2D;var ad=env._emscripten_glFrontFace;var bd=env._emscripten_glFrustum;var cd=env._emscripten_glGenBuffers;var dd=env._emscripten_glGenFramebuffers;var ed=env._emscripten_glGenRenderbuffers;var fd=env._emscripten_glGenTextures;var gd=env._emscripten_glGenVertexArrays;var hd=env._emscripten_glGenerateMipmap;var id=env._emscripten_glGetActiveAttrib;var jd=env._emscripten_glGetActiveUniform;var kd=env._emscripten_glGetAttachedShaders;var ld=env._emscripten_glGetAttribLocation;var md=env._emscripten_glGetBooleanv;var nd=env._emscripten_glGetBufferParameteriv;var od=env._emscripten_glGetError;var pd=env._emscripten_glGetFloatv;var qd=env._emscripten_glGetFramebufferAttachmentParameteriv;var rd=env._emscripten_glGetInfoLogARB;var sd=env._emscripten_glGetIntegerv;var td=env._emscripten_glGetObjectParameterivARB;var ud=env._emscripten_glGetPointerv;var vd=env._emscripten_glGetProgramInfoLog;var wd=env._emscripten_glGetProgramiv;var xd=env._emscripten_glGetRenderbufferParameteriv;var yd=env._emscripten_glGetShaderInfoLog;var zd=env._emscripten_glGetShaderPrecisionFormat;var Ad=env._emscripten_glGetShaderSource;var Bd=env._emscripten_glGetShaderiv;var Cd=env._emscripten_glGetString;var Dd=env._emscripten_glGetTexParameterfv;var Ed=env._emscripten_glGetTexParameteriv;var Fd=env._emscripten_glGetUniformLocation;var Gd=env._emscripten_glGetUniformfv;var Hd=env._emscripten_glGetUniformiv;var Id=env._emscripten_glGetVertexAttribPointerv;var Jd=env._emscripten_glGetVertexAttribfv;var Kd=env._emscripten_glGetVertexAttribiv;var Ld=env._emscripten_glHint;var Md=env._emscripten_glIsBuffer;var Nd=env._emscripten_glIsEnabled;var Od=env._emscripten_glIsFramebuffer;var Pd=env._emscripten_glIsProgram;var Qd=env._emscripten_glIsRenderbuffer;var Rd=env._emscripten_glIsShader;var Sd=env._emscripten_glIsTexture;var Td=env._emscripten_glIsVertexArray;var Ud=env._emscripten_glLineWidth;var Vd=env._emscripten_glLinkProgram;var Wd=env._emscripten_glLoadIdentity;var Xd=env._emscripten_glLoadMatrixf;var Yd=env._emscripten_glMatrixMode;var Zd=env._emscripten_glNormalPointer;var _d=env._emscripten_glPixelStorei;var $d=env._emscripten_glPolygonOffset;var ae=env._emscripten_glReadPixels;var be=env._emscripten_glReleaseShaderCompiler;var ce=env._emscripten_glRenderbufferStorage;var de=env._emscripten_glRotatef;var ee=env._emscripten_glSampleCoverage;var fe=env._emscripten_glScissor;var ge=env._emscripten_glShaderBinary;var he=env._emscripten_glShaderSource;var ie=env._emscripten_glStencilFunc;var je=env._emscripten_glStencilFuncSeparate;var ke=env._emscripten_glStencilMask;var le=env._emscripten_glStencilMaskSeparate;var me=env._emscripten_glStencilOp;var ne=env._emscripten_glStencilOpSeparate;var oe=env._emscripten_glTexCoordPointer;var pe=env._emscripten_glTexImage2D;var qe=env._emscripten_glTexParameterf;var re=env._emscripten_glTexParameterfv;var se=env._emscripten_glTexParameteri;var te=env._emscripten_glTexParameteriv;var ue=env._emscripten_glTexSubImage2D;var ve=env._emscripten_glUniform1f;var we=env._emscripten_glUniform1fv;var xe=env._emscripten_glUniform1i;var ye=env._emscripten_glUniform1iv;var ze=env._emscripten_glUniform2f;var Ae=env._emscripten_glUniform2fv;var Be=env._emscripten_glUniform2i;var Ce=env._emscripten_glUniform2iv;var De=env._emscripten_glUniform3f;var Ee=env._emscripten_glUniform3fv;var Fe=env._emscripten_glUniform3i;var Ge=env._emscripten_glUniform3iv;var He=env._emscripten_glUniform4f;var Ie=env._emscripten_glUniform4fv;var Je=env._emscripten_glUniform4i;var Ke=env._emscripten_glUniform4iv;var Le=env._emscripten_glUniformMatrix2fv;var Me=env._emscripten_glUniformMatrix3fv;var Ne=env._emscripten_glUniformMatrix4fv;var Oe=env._emscripten_glUseProgram;var Pe=env._emscripten_glValidateProgram;var Qe=env._emscripten_glVertexAttrib1f;var Re=env._emscripten_glVertexAttrib1fv;var Se=env._emscripten_glVertexAttrib2f;var Te=env._emscripten_glVertexAttrib2fv;var Ue=env._emscripten_glVertexAttrib3f;var Ve=env._emscripten_glVertexAttrib3fv;var We=env._emscripten_glVertexAttrib4f;var Xe=env._emscripten_glVertexAttrib4fv;var Ye=env._emscripten_glVertexAttribDivisor;var Ze=env._emscripten_glVertexAttribPointer;var _e=env._emscripten_glVertexPointer;var $e=env._emscripten_glViewport;var af=env._emscripten_memcpy_big;var bf=env._emscripten_request_fullscreen_strategy;var cf=env._emscripten_request_pointerlock;var df=env._emscripten_set_blur_callback;var ef=env._emscripten_set_canvas_size;var ff=env._emscripten_set_element_css_size;var gf=env._emscripten_set_focus_callback;var hf=env._emscripten_set_fullscreenchange_callback;var jf=env._emscripten_set_gamepadconnected_callback;var kf=env._emscripten_set_gamepaddisconnected_callback;var lf=env._emscripten_set_keydown_callback;var mf=env._emscripten_set_keypress_callback;var nf=env._emscripten_set_keyup_callback;var of=env._emscripten_set_main_loop;var pf=env._emscripten_set_main_loop_timing;var qf=env._emscripten_set_mousedown_callback;var rf=env._emscripten_set_mouseenter_callback;var sf=env._emscripten_set_mouseleave_callback;var tf=env._emscripten_set_mousemove_callback;var uf=env._emscripten_set_mouseup_callback;var vf=env._emscripten_set_resize_callback;var wf=env._emscripten_set_touchcancel_callback;var xf=env._emscripten_set_touchend_callback;var yf=env._emscripten_set_touchmove_callback;var zf=env._emscripten_set_touchstart_callback;var Af=env._emscripten_set_visibilitychange_callback;var Bf=env._emscripten_set_wheel_callback;var Cf=env._exit;var Df=env._getenv;var Ef=env._gettimeofday;var Ff=env._glClear;var Gf=env._glutCreateWindow;var Hf=env._glutDestroyWindow;var If=env._glutInitDisplayMode;var Jf=env._gmtime_r;var Kf=env._llvm_exp2_f32;var Lf=env._llvm_exp2_f64;var Mf=env._llvm_pow_f64;var Nf=env._localtime_r;var Of=env._longjmp;var Pf=env._mktime;var Qf=env._nanosleep;var Rf=env._sigaction;var Sf=env._signal;var Tf=env._strftime;var Uf=env._strptime;var Vf=env._time;var Wf=env._tzset;var Xf=env._usleep;var Yf=env.emscriptenWebGLComputeImageSize;var Zf=env.emscriptenWebGLGet;var _f=env.emscriptenWebGLGetTexPixelData;var $f=env.emscriptenWebGLGetUniform;var ag=env.emscriptenWebGLGetVertexAttrib;var bg=0.0;
|
|
// EMSCRIPTEN_START_FUNCS
|
|
function Sx(e){e=e|0;var f=0,g=0,i=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0.0;pb=l;l=l+80|0;kb=pb+64|0;ob=pb+56|0;nb=pb+48|0;mb=pb+40|0;lb=pb+32|0;jb=pb+24|0;ib=pb+16|0;hb=pb;X=e+16|0;qa=e+108|0;Wa=e+12|0;rb=e+8|0;ab=hb+8|0;cb=hb+8|0;db=hb+8|0;eb=hb+8|0;gb=hb+8|0;Y=hb+8|0;Z=hb+8|0;_=hb+8|0;$=hb+8|0;aa=hb+8|0;ba=hb+8|0;ca=hb+8|0;da=hb+8|0;ea=hb+8|0;ja=hb+8|0;ra=hb+8|0;ya=hb+8|0;Ha=hb+8|0;Ma=hb+8|0;Qa=e+24|0;qb=e+100|0;W=hb+8|0;V=hb+8|0;U=hb+8|0;T=hb+8|0;S=hb+8|0;R=hb+8|0;Q=hb+8|0;O=hb+8|0;M=hb+8|0;L=hb+8|0;Ra=e+32|0;Sa=e+106|0;Ua=hb+8|0;Va=e+40|0;Xa=e+92|0;Ya=e+28|0;Za=e+20|0;_a=e+6|0;$a=e+96|0;o=c[X>>2]|0;a:while(1){F=c[c[o>>2]>>2]|0;K=F+12|0;G=c[(c[K>>2]|0)+44>>2]|0;H=o+16|0;I=o+20|0;J=o+4|0;f=c[H>>2]|0;b:while(1){i=c[I>>2]|0;c[I>>2]=i+4;i=c[i>>2]|0;g=a[qa>>0]|0;if((g&12)!=0?(bb=(c[qb>>2]|0)+-1|0,c[qb>>2]=bb,!((bb|0)!=0&(g&4)==0)):0){v=c[X>>2]|0;f=g&255;if((f&8|0)!=0&(bb|0)==0){c[qb>>2]=c[$a>>2];t=1}else t=0;u=v+34|0;g=d[u>>0]|0;if(!(g&64)){if(t)tw(e,3,-1);do if(!(f&4)){g=v+20|0;f=g}else{p=c[(c[c[v>>2]>>2]|0)+12>>2]|0;s=v+20|0;f=c[s>>2]|0;g=c[p+48>>2]|0;k=(f-g>>2)+-1|0;p=c[p+56>>2]|0;q=(p|0)==0;if(q)r=-1;else r=c[p+(k<<2)>>2]|0;if(k|0?(fb=c[Za>>2]|0,f>>>0>fb>>>0):0){if(q)f=-1;else f=c[p+((fb-g>>2)+-1<<2)>>2]|0;if((r|0)==(f|0)){f=s;g=s;break}}tw(e,2,r);f=s;g=s}while(0);f=c[f>>2]|0;c[Za>>2]=f;if((a[_a>>0]|0)==1){E=22;break a}}else a[u>>0]=g&191;C=c[H>>2]|0}else C=f;y=i>>>6&255;x=C+(y<<4)|0;do switch(i&63){case 38:{E=602;break b}case 0:{f=C+(i>>>23<<4)|0;c[x>>2]=c[f>>2];c[x+4>>2]=c[f+4>>2];c[x+8>>2]=c[f+8>>2];c[x+12>>2]=c[f+12>>2];f=C;continue b}case 1:{f=G+(i>>>14<<4)|0;c[x>>2]=c[f>>2];c[x+4>>2]=c[f+4>>2];c[x+8>>2]=c[f+8>>2];c[x+12>>2]=c[f+12>>2];f=C;continue b}case 2:{f=c[I>>2]|0;c[I>>2]=f+4;f=G+((c[f>>2]|0)>>>6<<4)|0;c[x>>2]=c[f>>2];c[x+4>>2]=c[f+4>>2];c[x+8>>2]=c[f+8>>2];c[x+12>>2]=c[f+12>>2];f=C;continue b}case 3:{c[x>>2]=i>>>23;c[C+(y<<4)+8>>2]=1;if(!(i&8372224)){f=C;continue b}c[I>>2]=(c[I>>2]|0)+4;f=C;continue b}case 4:{g=i>>>23;f=x;while(1){c[f+8>>2]=0;if(!g){f=C;continue b}else{g=g+-1|0;f=f+16|0}}}case 5:{f=c[c[F+16+(i>>>23<<2)>>2]>>2]|0;c[x>>2]=c[f>>2];c[x+4>>2]=c[f+4>>2];c[x+8>>2]=c[f+8>>2];c[x+12>>2]=c[f+12>>2];f=C;continue b}case 6:{f=i>>>14;Kx(e,c[c[F+16+(i>>>23<<2)>>2]>>2]|0,(f&256|0)==0?C+((f&511)<<4)|0:G+((f&255)<<4)|0,x);f=c[H>>2]|0;continue b}case 7:{f=i>>>14;Kx(e,C+(i>>>23<<4)|0,(f&256|0)==0?C+((f&511)<<4)|0:G+((f&255)<<4)|0,x);f=c[H>>2]|0;continue b}case 8:{x=i>>>23;f=i>>>14;Lx(e,c[c[F+16+(y<<2)>>2]>>2]|0,(x&256|0)==0?C+(x<<4)|0:G+((x&255)<<4)|0,(f&256|0)==0?C+((f&511)<<4)|0:G+((f&255)<<4)|0);f=c[H>>2]|0;continue b}case 9:{y=c[F+16+(i>>>23<<2)>>2]|0;f=c[y>>2]|0;c[f>>2]=c[x>>2];c[f+4>>2]=c[x+4>>2];c[f+8>>2]=c[x+8>>2];c[f+12>>2]=c[x+12>>2];f=c[y>>2]|0;if(!((f|0)==(y+8|0)?(c[f+8>>2]&64|0)!=0:0)){f=C;continue b}g=c[Wa>>2]|0;f=c[f>>2]|0;if((d[g+61>>0]|0)>=2){f=C;continue b}if(!(a[f+5>>0]&3)){f=C;continue b}Iw(g,f);f=C;continue b}case 10:{y=i>>>23;f=i>>>14;Lx(e,x,(y&256|0)==0?C+(y<<4)|0:G+((y&255)<<4)|0,(f&256|0)==0?C+((f&511)<<4)|0:G+((f&255)<<4)|0);f=c[H>>2]|0;continue b}case 11:{k=i>>>23;r=i>>>14;f=r&511;q=c[Wa>>2]|0;g=q+4|0;p=jg[c[q>>2]&31](c[g>>2]|0,0,5,32)|0;if(!p){if(!(c[q+140>>2]|0)){E=46;break a}Tw(e,1);g=jg[c[q>>2]&31](c[g>>2]|0,0,5,32)|0;if(!g){E=46;break a}else p=g}w=q+12|0;c[w>>2]=(c[w>>2]|0)+32;a[p+5>>0]=a[q+60>>0]&3;a[p+4>>0]=5;w=q+64|0;c[p>>2]=c[w>>2];c[w>>2]=p;c[p+24>>2]=0;a[p+6>>0]=-1;c[p+12>>2]=0;c[p+8>>2]=0;c[p+16>>2]=316360;a[p+7>>0]=0;c[p+20>>2]=316360;c[x>>2]=p;c[C+(y<<4)+8>>2]=69;if(f|k|0){g=i>>>26&31;if(g)k=(k&7|8)<<g+-1;g=i>>>17&31;if(g)f=(r&7|8)<<g+-1;Ax(e,p,k,f)}if((c[(c[Wa>>2]|0)+12>>2]|0)>0){c[rb>>2]=C+(y+1<<4);Sw(e);c[rb>>2]=c[J>>2]}f=c[H>>2]|0;continue b}case 12:{w=C+(i>>>23<<4)|0;f=C+(y+1<<4)|0;c[f>>2]=c[w>>2];c[f+4>>2]=c[w+4>>2];c[f+8>>2]=c[w+8>>2];c[f+12>>2]=c[w+12>>2];f=i>>>14;Kx(e,w,(f&256|0)==0?C+((f&511)<<4)|0:G+((f&255)<<4)|0,x);f=c[H>>2]|0;continue b}case 13:{k=i>>>23;k=(k&256|0)==0?C+(k<<4)|0:G+((k&255)<<4)|0;i=i>>>14;i=(i&256|0)==0?C+((i&511)<<4)|0:G+((i&255)<<4)|0;f=c[k+8>>2]|0;c:do switch(f|0){case 19:if((c[i+8>>2]|0)==19){w=k;f=i;w=yQ(c[f>>2]|0,c[f+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;f=x;c[f>>2]=w;c[f+4>>2]=z;c[C+(y<<4)+8>>2]=19;f=C;continue b}else{E=k;m=+((c[E>>2]|0)>>>0)+4294967296.0*+(c[E+4>>2]|0);E=69;break c}case 3:{n=+h[k>>3];E=70;break}default:if((f&15|0)==4){g=Ww((c[k>>2]|0)+16|0,hb)|0;f=c[k>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)==(f+1|0)){v=(c[cb>>2]|0)==19;E=hb;w=c[E>>2]|0;E=c[E+4>>2]|0;c[j>>2]=w;c[j+4>>2]=E;m=v?+(w>>>0)+4294967296.0*+(E|0):+h[j>>3];E=69;break c}}}while(0);if((E|0)==69){n=m;E=70}d:do if((E|0)==70){E=0;f=c[i+8>>2]|0;if((f|0)==3)m=+h[i>>3];else do if((f|0)==19){w=i;m=+((c[w>>2]|0)>>>0)+4294967296.0*+(c[w+4>>2]|0)}else{if((f&15|0)==4){g=Ww((c[i>>2]|0)+16|0,hb)|0;f=c[i>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)==(f+1|0)){u=(c[ab>>2]|0)==19;w=hb;v=c[w>>2]|0;w=c[w+4>>2]|0;c[j>>2]=v;c[j+4>>2]=w;m=u?+(v>>>0)+4294967296.0*+(w|0):+h[j>>3];break}}break d}while(0);h[x>>3]=n+m;c[C+(y<<4)+8>>2]=3;f=C;continue b}while(0);if(!(Fx(e,k,i,x,6)|0)){E=84;break a}f=c[H>>2]|0;continue b}case 14:{k=i>>>23;k=(k&256|0)==0?C+(k<<4)|0:G+((k&255)<<4)|0;i=i>>>14;i=(i&256|0)==0?C+((i&511)<<4)|0:G+((i&255)<<4)|0;f=c[k+8>>2]|0;e:do switch(f|0){case 19:if((c[i+8>>2]|0)==19){f=k;w=i;w=zQ(c[f>>2]|0,c[f+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;f=x;c[f>>2]=w;c[f+4>>2]=z;c[C+(y<<4)+8>>2]=19;f=C;continue b}else{E=k;m=+((c[E>>2]|0)>>>0)+4294967296.0*+(c[E+4>>2]|0);E=98;break e}case 3:{n=+h[k>>3];E=99;break}default:if((f&15|0)==4){g=Ww((c[k>>2]|0)+16|0,hb)|0;f=c[k>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)==(f+1|0)){v=(c[eb>>2]|0)==19;E=hb;w=c[E>>2]|0;E=c[E+4>>2]|0;c[j>>2]=w;c[j+4>>2]=E;m=v?+(w>>>0)+4294967296.0*+(E|0):+h[j>>3];E=98;break e}}}while(0);if((E|0)==98){n=m;E=99}f:do if((E|0)==99){E=0;f=c[i+8>>2]|0;if((f|0)==3)m=+h[i>>3];else do if((f|0)==19){w=i;m=+((c[w>>2]|0)>>>0)+4294967296.0*+(c[w+4>>2]|0)}else{if((f&15|0)==4){g=Ww((c[i>>2]|0)+16|0,hb)|0;f=c[i>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)==(f+1|0)){u=(c[db>>2]|0)==19;w=hb;v=c[w>>2]|0;w=c[w+4>>2]|0;c[j>>2]=v;c[j+4>>2]=w;m=u?+(v>>>0)+4294967296.0*+(w|0):+h[j>>3];break}}break f}while(0);h[x>>3]=n-m;c[C+(y<<4)+8>>2]=3;f=C;continue b}while(0);if(!(Fx(e,k,i,x,7)|0)){E=113;break a}f=c[H>>2]|0;continue b}case 15:{k=i>>>23;k=(k&256|0)==0?C+(k<<4)|0:G+((k&255)<<4)|0;i=i>>>14;i=(i&256|0)==0?C+((i&511)<<4)|0:G+((i&255)<<4)|0;f=c[k+8>>2]|0;g:do switch(f|0){case 19:if((c[i+8>>2]|0)==19){w=k;f=i;w=EQ(c[f>>2]|0,c[f+4>>2]|0,c[w>>2]|0,c[w+4>>2]|0)|0;f=x;c[f>>2]=w;c[f+4>>2]=z;c[C+(y<<4)+8>>2]=19;f=C;continue b}else{E=k;m=+((c[E>>2]|0)>>>0)+4294967296.0*+(c[E+4>>2]|0);E=127;break g}case 3:{n=+h[k>>3];E=128;break}default:if((f&15|0)==4){g=Ww((c[k>>2]|0)+16|0,hb)|0;f=c[k>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)==(f+1|0)){v=(c[Y>>2]|0)==19;E=hb;w=c[E>>2]|0;E=c[E+4>>2]|0;c[j>>2]=w;c[j+4>>2]=E;m=v?+(w>>>0)+4294967296.0*+(E|0):+h[j>>3];E=127;break g}}}while(0);if((E|0)==127){n=m;E=128}h:do if((E|0)==128){E=0;f=c[i+8>>2]|0;if((f|0)==3)m=+h[i>>3];else do if((f|0)==19){w=i;m=+((c[w>>2]|0)>>>0)+4294967296.0*+(c[w+4>>2]|0)}else{if((f&15|0)==4){g=Ww((c[i>>2]|0)+16|0,hb)|0;f=c[i>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)==(f+1|0)){u=(c[gb>>2]|0)==19;w=hb;v=c[w>>2]|0;w=c[w+4>>2]|0;c[j>>2]=v;c[j+4>>2]=w;m=u?+(v>>>0)+4294967296.0*+(w|0):+h[j>>3];break}}break h}while(0);h[x>>3]=n*m;c[C+(y<<4)+8>>2]=3;f=C;continue b}while(0);if(!(Fx(e,k,i,x,8)|0)){E=142;break a}f=c[H>>2]|0;continue b}case 18:{k=i>>>23;k=(k&256|0)==0?C+(k<<4)|0:G+((k&255)<<4)|0;i=i>>>14;i=(i&256|0)==0?C+((i&511)<<4)|0:G+((i&255)<<4)|0;f=c[k+8>>2]|0;i:do if((f|0)==3){m=+h[k>>3];E=156}else{do if((f|0)==19){E=k;m=+((c[E>>2]|0)>>>0)+4294967296.0*+(c[E+4>>2]|0)}else{if((f&15|0)==4){g=Ww((c[k>>2]|0)+16|0,hb)|0;f=c[k>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)==(f+1|0)){v=(c[_>>2]|0)==19;E=hb;w=c[E>>2]|0;E=c[E+4>>2]|0;c[j>>2]=w;c[j+4>>2]=E;m=v?+(w>>>0)+4294967296.0*+(E|0):+h[j>>3];break}}break i}while(0);E=156}while(0);j:do if((E|0)==156){E=0;f=c[i+8>>2]|0;if((f|0)==3)n=+h[i>>3];else do if((f|0)==19){w=i;n=+((c[w>>2]|0)>>>0)+4294967296.0*+(c[w+4>>2]|0)}else{if((f&15|0)==4){g=Ww((c[i>>2]|0)+16|0,hb)|0;f=c[i>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)==(f+1|0)){u=(c[Z>>2]|0)==19;w=hb;v=c[w>>2]|0;w=c[w+4>>2]|0;c[j>>2]=v;c[j+4>>2]=w;n=u?+(v>>>0)+4294967296.0*+(w|0):+h[j>>3];break}}break j}while(0);h[x>>3]=m/n;c[C+(y<<4)+8>>2]=3;f=C;continue b}while(0);if(!(Fx(e,k,i,x,11)|0)){E=170;break a}f=c[H>>2]|0;continue b}case 20:{r=i>>>23;r=(r&256|0)==0?C+(r<<4)|0:G+((r&255)<<4)|0;q=i>>>14;q=(q&256|0)==0?C+((q&511)<<4)|0:G+((q&255)<<4)|0;f=c[r+8>>2]|0;do if((f|0)!=19){i=r;k:while(1){switch(f|0){case 3:{E=176;break k}case 19:{E=179;break k}default:{}}if((f&15|0)!=4){E=186;break}g=Ww((c[i>>2]|0)+16|0,hb)|0;f=c[i>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)!=(f+1|0)){E=186;break}i=hb;f=c[V>>2]|0}if((E|0)==176){n=+h[i>>3];m=+A(+n);if(!(n!=m)?m>=-9223372036854775808.0&m<9223372036854775808.0:0){f=~~m>>>0;g=+B(m)>=1.0?(m>0.0?~~+P(+A(m/4294967296.0),4294967295.0)>>>0:~~+N((m-+(~~m>>>0))/4294967296.0)>>>0):0;E=187}else E=186}else if((E|0)==179){g=i;f=c[g>>2]|0;g=c[g+4>>2]|0;E=187}if((E|0)==186){E=0;break}else if((E|0)==187){p=f;E=188;break}}else{g=r;p=c[g>>2]|0;g=c[g+4>>2]|0;E=188}while(0);l:do if((E|0)==188){E=0;f=c[q+8>>2]|0;do if((f|0)!=19){k=q;m:while(1){switch(f|0){case 3:{E=192;break m}case 19:{E=195;break m}default:{}}if((f&15|0)!=4){E=202;break}i=Ww((c[k>>2]|0)+16|0,hb)|0;f=c[k>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)!=(f+1|0)){E=202;break}k=hb;f=c[W>>2]|0}if((E|0)==192){n=+h[k>>3];m=+A(+n);if(!(n!=m)?m>=-9223372036854775808.0&m<9223372036854775808.0:0){i=~~m>>>0;f=+B(m)>=1.0?(m>0.0?~~+P(+A(m/4294967296.0),4294967295.0)>>>0:~~+N((m-+(~~m>>>0))/4294967296.0)>>>0):0;E=203}else E=202}else if((E|0)==195){f=k;i=c[f>>2]|0;f=c[f+4>>2]|0;E=203}if((E|0)==202){E=0;break l}else if((E|0)==203){E=0;break}}else{f=q;i=c[f>>2]|0;f=c[f+4>>2]|0}while(0);c[x>>2]=i&p;c[x+4>>2]=f&g;c[C+(y<<4)+8>>2]=19;f=C;continue b}while(0);Gx(e,r,q,x,13);f=c[H>>2]|0;continue b}case 21:{r=i>>>23;r=(r&256|0)==0?C+(r<<4)|0:G+((r&255)<<4)|0;q=i>>>14;q=(q&256|0)==0?C+((q&511)<<4)|0:G+((q&255)<<4)|0;f=c[r+8>>2]|0;do if((f|0)!=19){i=r;n:while(1){switch(f|0){case 3:{E=210;break n}case 19:{E=213;break n}default:{}}if((f&15|0)!=4){E=220;break}g=Ww((c[i>>2]|0)+16|0,hb)|0;f=c[i>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)!=(f+1|0)){E=220;break}i=hb;f=c[T>>2]|0}if((E|0)==210){n=+h[i>>3];m=+A(+n);if(!(n!=m)?m>=-9223372036854775808.0&m<9223372036854775808.0:0){f=~~m>>>0;g=+B(m)>=1.0?(m>0.0?~~+P(+A(m/4294967296.0),4294967295.0)>>>0:~~+N((m-+(~~m>>>0))/4294967296.0)>>>0):0;E=221}else E=220}else if((E|0)==213){g=i;f=c[g>>2]|0;g=c[g+4>>2]|0;E=221}if((E|0)==220){E=0;break}else if((E|0)==221){p=f;E=222;break}}else{g=r;p=c[g>>2]|0;g=c[g+4>>2]|0;E=222}while(0);o:do if((E|0)==222){E=0;f=c[q+8>>2]|0;do if((f|0)!=19){k=q;p:while(1){switch(f|0){case 3:{E=226;break p}case 19:{E=229;break p}default:{}}if((f&15|0)!=4){E=236;break}i=Ww((c[k>>2]|0)+16|0,hb)|0;f=c[k>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)!=(f+1|0)){E=236;break}k=hb;f=c[U>>2]|0}if((E|0)==226){n=+h[k>>3];m=+A(+n);if(!(n!=m)?m>=-9223372036854775808.0&m<9223372036854775808.0:0){i=~~m>>>0;f=+B(m)>=1.0?(m>0.0?~~+P(+A(m/4294967296.0),4294967295.0)>>>0:~~+N((m-+(~~m>>>0))/4294967296.0)>>>0):0;E=237}else E=236}else if((E|0)==229){f=k;i=c[f>>2]|0;f=c[f+4>>2]|0;E=237}if((E|0)==236){E=0;break o}else if((E|0)==237){E=0;break}}else{f=q;i=c[f>>2]|0;f=c[f+4>>2]|0}while(0);c[x>>2]=i|p;c[x+4>>2]=f|g;c[C+(y<<4)+8>>2]=19;f=C;continue b}while(0);Gx(e,r,q,x,14);f=c[H>>2]|0;continue b}case 22:{r=i>>>23;r=(r&256|0)==0?C+(r<<4)|0:G+((r&255)<<4)|0;q=i>>>14;q=(q&256|0)==0?C+((q&511)<<4)|0:G+((q&255)<<4)|0;f=c[r+8>>2]|0;do if((f|0)!=19){i=r;q:while(1){switch(f|0){case 3:{E=244;break q}case 19:{E=247;break q}default:{}}if((f&15|0)!=4){E=254;break}g=Ww((c[i>>2]|0)+16|0,hb)|0;f=c[i>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)!=(f+1|0)){E=254;break}i=hb;f=c[R>>2]|0}if((E|0)==244){n=+h[i>>3];m=+A(+n);if(!(n!=m)?m>=-9223372036854775808.0&m<9223372036854775808.0:0){f=~~m>>>0;g=+B(m)>=1.0?(m>0.0?~~+P(+A(m/4294967296.0),4294967295.0)>>>0:~~+N((m-+(~~m>>>0))/4294967296.0)>>>0):0;E=255}else E=254}else if((E|0)==247){g=i;f=c[g>>2]|0;g=c[g+4>>2]|0;E=255}if((E|0)==254){E=0;break}else if((E|0)==255){p=f;k=g;E=256;break}}else{k=r;p=c[k>>2]|0;k=c[k+4>>2]|0;E=256}while(0);r:do if((E|0)==256){E=0;f=c[q+8>>2]|0;do if((f|0)!=19){i=q;s:while(1){switch(f|0){case 3:{E=260;break s}case 19:{E=263;break s}default:{}}if((f&15|0)!=4){E=270;break}g=Ww((c[i>>2]|0)+16|0,hb)|0;f=c[i>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)!=(f+1|0)){E=270;break}i=hb;f=c[S>>2]|0}if((E|0)==260){n=+h[i>>3];m=+A(+n);if(!(n!=m)?m>=-9223372036854775808.0&m<9223372036854775808.0:0){g=~~m>>>0;f=+B(m)>=1.0?(m>0.0?~~+P(+A(m/4294967296.0),4294967295.0)>>>0:~~+N((m-+(~~m>>>0))/4294967296.0)>>>0):0;E=271}else E=270}else if((E|0)==263){f=i;g=c[f>>2]|0;f=c[f+4>>2]|0;E=271}if((E|0)==270){E=0;break r}else if((E|0)==271){E=0;break}}else{f=q;g=c[f>>2]|0;f=c[f+4>>2]|0}while(0);c[x>>2]=g^p;c[x+4>>2]=f^k;c[C+(y<<4)+8>>2]=19;f=C;continue b}while(0);Gx(e,r,q,x,15);f=c[H>>2]|0;continue b}case 23:{r=i>>>23;r=(r&256|0)==0?C+(r<<4)|0:G+((r&255)<<4)|0;q=i>>>14;q=(q&256|0)==0?C+((q&511)<<4)|0:G+((q&255)<<4)|0;f=c[r+8>>2]|0;do if((f|0)!=19){i=r;t:while(1){switch(f|0){case 3:{E=278;break t}case 19:{E=281;break t}default:{}}if((f&15|0)!=4){E=288;break}g=Ww((c[i>>2]|0)+16|0,hb)|0;f=c[i>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)!=(f+1|0)){E=288;break}i=hb;f=c[O>>2]|0}if((E|0)==278){n=+h[i>>3];m=+A(+n);if(!(n!=m)?m>=-9223372036854775808.0&m<9223372036854775808.0:0){f=~~m>>>0;g=+B(m)>=1.0?(m>0.0?~~+P(+A(m/4294967296.0),4294967295.0)>>>0:~~+N((m-+(~~m>>>0))/4294967296.0)>>>0):0;E=289}else E=288}else if((E|0)==281){g=i;f=c[g>>2]|0;g=c[g+4>>2]|0;E=289}if((E|0)==288){E=0;break}else if((E|0)==289){p=f;k=g;E=290;break}}else{k=r;p=c[k>>2]|0;k=c[k+4>>2]|0;E=290}while(0);u:do if((E|0)==290){E=0;f=c[q+8>>2]|0;do if((f|0)!=19){i=q;v:while(1){switch(f|0){case 3:{E=294;break v}case 19:{E=297;break v}default:{}}if((f&15|0)!=4){E=304;break}g=Ww((c[i>>2]|0)+16|0,hb)|0;f=c[i>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)!=(f+1|0)){E=304;break}i=hb;f=c[Q>>2]|0}if((E|0)==294){n=+h[i>>3];m=+A(+n);if(!(n!=m)?m>=-9223372036854775808.0&m<9223372036854775808.0:0){f=~~m>>>0;g=+B(m)>=1.0?(m>0.0?~~+P(+A(m/4294967296.0),4294967295.0)>>>0:~~+N((m-+(~~m>>>0))/4294967296.0)>>>0):0;E=305}else E=304}else if((E|0)==297){g=i;f=c[g>>2]|0;g=c[g+4>>2]|0;E=305}if((E|0)==304){E=0;break u}else if((E|0)==305){E=0;break}}else{f=q;g=c[f+4>>2]|0;f=c[f>>2]|0}while(0);if((g|0)<0){w=(g|0)<-1|(g|0)==-1&f>>>0<4294967233;f=zQ(0,0,f|0,g|0)|0;f=JQ(p|0,k|0,f|0)|0;f=w?0:f;g=w?0:z}else{g=(g|0)>0|(g|0)==0&f>>>0>63;f=KQ(p|0,k|0,f|0)|0;f=g?0:f;g=g?0:z}c[x>>2]=f;c[x+4>>2]=g;c[C+(y<<4)+8>>2]=19;f=C;continue b}while(0);Gx(e,r,q,x,16);f=c[H>>2]|0;continue b}case 24:{r=i>>>23;r=(r&256|0)==0?C+(r<<4)|0:G+((r&255)<<4)|0;q=i>>>14;q=(q&256|0)==0?C+((q&511)<<4)|0:G+((q&255)<<4)|0;f=c[r+8>>2]|0;do if((f|0)!=19){i=r;w:while(1){switch(f|0){case 3:{E=315;break w}case 19:{E=318;break w}default:{}}if((f&15|0)!=4){E=325;break}g=Ww((c[i>>2]|0)+16|0,hb)|0;f=c[i>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)!=(f+1|0)){E=325;break}i=hb;f=c[L>>2]|0}if((E|0)==315){n=+h[i>>3];m=+A(+n);if(!(n!=m)?m>=-9223372036854775808.0&m<9223372036854775808.0:0){f=~~m>>>0;g=+B(m)>=1.0?(m>0.0?~~+P(+A(m/4294967296.0),4294967295.0)>>>0:~~+N((m-+(~~m>>>0))/4294967296.0)>>>0):0;E=326}else E=325}else if((E|0)==318){g=i;f=c[g>>2]|0;g=c[g+4>>2]|0;E=326}if((E|0)==325){E=0;break}else if((E|0)==326){p=f;k=g;E=327;break}}else{k=r;p=c[k>>2]|0;k=c[k+4>>2]|0;E=327}while(0);x:do if((E|0)==327){E=0;f=c[q+8>>2]|0;do if((f|0)!=19){i=q;y:while(1){switch(f|0){case 3:{E=331;break y}case 19:{E=334;break y}default:{}}if((f&15|0)!=4){E=341;break}g=Ww((c[i>>2]|0)+16|0,hb)|0;f=c[i>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)!=(f+1|0)){E=341;break}i=hb;f=c[M>>2]|0}if((E|0)==331){n=+h[i>>3];m=+A(+n);if(!(n!=m)?m>=-9223372036854775808.0&m<9223372036854775808.0:0){f=~~m>>>0;g=+B(m)>=1.0?(m>0.0?~~+P(+A(m/4294967296.0),4294967295.0)>>>0:~~+N((m-+(~~m>>>0))/4294967296.0)>>>0):0;E=342}else E=341}else if((E|0)==334){g=i;f=c[g>>2]|0;g=c[g+4>>2]|0;E=342}if((E|0)==341){E=0;break x}else if((E|0)==342){E=0;break}}else{f=q;g=c[f+4>>2]|0;f=c[f>>2]|0}while(0);if((g|0)>0|(g|0)==0&f>>>0>0){g=(g|0)>0|(g|0)==0&f>>>0>63;f=JQ(p|0,k|0,f|0)|0;f=g?0:f;g=g?0:z}else{w=zQ(0,0,f|0,g|0)|0;g=(g|0)<-1|(g|0)==-1&f>>>0<4294967233;f=KQ(p|0,k|0,w|0)|0;f=g?0:f;g=g?0:z}c[x>>2]=f;c[x+4>>2]=g;c[C+(y<<4)+8>>2]=19;f=C;continue b}while(0);Gx(e,r,q,x,17);f=c[H>>2]|0;continue b}case 16:{k=i>>>23;k=(k&256|0)==0?C+(k<<4)|0:G+((k&255)<<4)|0;p=i>>>14;p=(p&256|0)==0?C+((p&511)<<4)|0:G+((p&255)<<4)|0;f=c[k+8>>2]|0;z:do switch(f|0){case 19:{if((c[p+8>>2]|0)!=19){E=k;m=+((c[E>>2]|0)>>>0)+4294967296.0*+(c[E+4>>2]|0);E=364;break z}i=c[k>>2]|0;k=c[k+4>>2]|0;g=p;f=c[g>>2]|0;g=c[g+4>>2]|0;w=yQ(f|0,g|0,1,0)|0;v=z;if(v>>>0<0|(v|0)==0&w>>>0<2)if((f|0)==0&(g|0)==0){E=352;break a}else{f=0;g=0}else{v=FQ(i|0,k|0,f|0,g|0)|0;w=z;u=(g^k|0)<0&((v|0)!=0|(w|0)!=0);f=yQ((u?f:0)|0,(u?g:0)|0,v|0,w|0)|0;g=z}c[x>>2]=f;c[x+4>>2]=g;c[C+(y<<4)+8>>2]=19;f=C;continue b}case 3:{n=+h[k>>3];E=365;break}default:if((f&15|0)==4){g=Ww((c[k>>2]|0)+16|0,hb)|0;f=c[k>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)==(f+1|0)){v=(c[aa>>2]|0)==19;E=hb;w=c[E>>2]|0;E=c[E+4>>2]|0;c[j>>2]=w;c[j+4>>2]=E;m=v?+(w>>>0)+4294967296.0*+(E|0):+h[j>>3];E=364;break z}}}while(0);if((E|0)==364){n=m;E=365}A:do if((E|0)==365){E=0;f=c[p+8>>2]|0;if((f|0)==3)m=+h[p>>3];else do if((f|0)==19){w=p;m=+((c[w>>2]|0)>>>0)+4294967296.0*+(c[w+4>>2]|0)}else{if((f&15|0)==4){g=Ww((c[p>>2]|0)+16|0,hb)|0;f=c[p>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)==(f+1|0)){u=(c[$>>2]|0)==19;w=hb;v=c[w>>2]|0;w=c[w+4>>2]|0;c[j>>2]=v;c[j+4>>2]=w;m=u?+(v>>>0)+4294967296.0*+(w|0):+h[j>>3];break}}break A}while(0);n=+TO(n,m);h[x>>3]=m*n<0.0?m+n:n;c[C+(y<<4)+8>>2]=3;f=C;continue b}while(0);if(!(Fx(e,k,p,x,9)|0)){E=379;break a}f=c[H>>2]|0;continue b}case 19:{k=i>>>23;k=(k&256|0)==0?C+(k<<4)|0:G+((k&255)<<4)|0;i=i>>>14;i=(i&256|0)==0?C+((i&511)<<4)|0:G+((i&255)<<4)|0;f=c[k+8>>2]|0;B:do switch(f|0){case 19:{if((c[i+8>>2]|0)!=19){E=k;m=+((c[E>>2]|0)>>>0)+4294967296.0*+(c[E+4>>2]|0);E=399;break B}q=k;p=c[q>>2]|0;q=c[q+4>>2]|0;k=i;i=c[k>>2]|0;k=c[k+4>>2]|0;w=yQ(i|0,k|0,1,0)|0;v=z;if(!(v>>>0<0|(v|0)==0&w>>>0<2)){g=CQ(p|0,q|0,i|0,k|0)|0;f=z;if((k^q|0)<0){w=FQ(p|0,q|0,i|0,k|0)|0;w=((w|0)!=0|(z|0)!=0)<<31>>31;g=yQ(w|0,((w|0)<0)<<31>>31|0,g|0,f|0)|0;f=z}}else{if((i|0)==0&(k|0)==0){E=385;break a}g=zQ(0,0,p|0,q|0)|0;f=z}c[x>>2]=g;c[x+4>>2]=f;c[C+(y<<4)+8>>2]=19;f=C;continue b}case 3:{n=+h[k>>3];E=400;break}default:if((f&15|0)==4){g=Ww((c[k>>2]|0)+16|0,hb)|0;f=c[k>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)==(f+1|0)){v=(c[ca>>2]|0)==19;E=hb;w=c[E>>2]|0;E=c[E+4>>2]|0;c[j>>2]=w;c[j+4>>2]=E;m=v?+(w>>>0)+4294967296.0*+(E|0):+h[j>>3];E=399;break B}}}while(0);if((E|0)==399){n=m;E=400}C:do if((E|0)==400){E=0;f=c[i+8>>2]|0;if((f|0)==3)m=+h[i>>3];else do if((f|0)==19){w=i;m=+((c[w>>2]|0)>>>0)+4294967296.0*+(c[w+4>>2]|0)}else{if((f&15|0)==4){g=Ww((c[i>>2]|0)+16|0,hb)|0;f=c[i>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)==(f+1|0)){u=(c[ba>>2]|0)==19;w=hb;v=c[w>>2]|0;w=c[w+4>>2]|0;c[j>>2]=v;c[j+4>>2]=w;m=u?+(v>>>0)+4294967296.0*+(w|0):+h[j>>3];break}}break C}while(0);h[x>>3]=+A(+(n/m));c[C+(y<<4)+8>>2]=3;f=C;continue b}while(0);if(!(Fx(e,k,i,x,12)|0)){E=414;break a}f=c[H>>2]|0;continue b}case 17:{k=i>>>23;k=(k&256|0)==0?C+(k<<4)|0:G+((k&255)<<4)|0;i=i>>>14;i=(i&256|0)==0?C+((i&511)<<4)|0:G+((i&255)<<4)|0;f=c[k+8>>2]|0;D:do if((f|0)==3){m=+h[k>>3];E=428}else{do if((f|0)==19){E=k;m=+((c[E>>2]|0)>>>0)+4294967296.0*+(c[E+4>>2]|0)}else{if((f&15|0)==4){g=Ww((c[k>>2]|0)+16|0,hb)|0;f=c[k>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)==(f+1|0)){v=(c[ea>>2]|0)==19;E=hb;w=c[E>>2]|0;E=c[E+4>>2]|0;c[j>>2]=w;c[j+4>>2]=E;m=v?+(w>>>0)+4294967296.0*+(E|0):+h[j>>3];break}}break D}while(0);E=428}while(0);E:do if((E|0)==428){E=0;f=c[i+8>>2]|0;if((f|0)==3)n=+h[i>>3];else do if((f|0)==19){w=i;n=+((c[w>>2]|0)>>>0)+4294967296.0*+(c[w+4>>2]|0)}else{if((f&15|0)==4){g=Ww((c[i>>2]|0)+16|0,hb)|0;f=c[i>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)==(f+1|0)){u=(c[da>>2]|0)==19;w=hb;v=c[w>>2]|0;w=c[w+4>>2]|0;c[j>>2]=v;c[j+4>>2]=w;n=u?+(v>>>0)+4294967296.0*+(w|0):+h[j>>3];break}}break E}while(0);h[x>>3]=+D(+m,+n);c[C+(y<<4)+8>>2]=3;f=C;continue b}while(0);if(!(Fx(e,k,i,x,10)|0)){E=442;break a}f=c[H>>2]|0;continue b}case 25:{f=i>>>23;i=C+(f<<4)|0;f=c[C+(f<<4)+8>>2]|0;F:do switch(f|0){case 19:{w=i;f=x;c[f>>2]=zQ(0,0,c[w>>2]|0,c[w+4>>2]|0)|0;c[f+4>>2]=z;c[C+(y<<4)+8>>2]=19;f=C;continue b}case 3:{m=+h[i>>3];break}default:{if((f&15|0)==4){g=Ww((c[i>>2]|0)+16|0,hb)|0;f=c[i>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)==(f+1|0)){u=(c[ja>>2]|0)==19;w=hb;v=c[w>>2]|0;w=c[w+4>>2]|0;c[j>>2]=v;c[j+4>>2]=w;m=u?+(v>>>0)+4294967296.0*+(w|0):+h[j>>3];break F}}if(!(Fx(e,i,i,x,18)|0)){E=455;break a}f=c[H>>2]|0;continue b}}while(0);h[x>>3]=-m;c[C+(y<<4)+8>>2]=3;f=C;continue b}case 26:{w=i>>>23;k=C+(w<<4)|0;do if((c[C+(w<<4)+8>>2]|0)!=19){g=k;G:while(1){f=c[g+8>>2]|0;switch(f|0){case 3:{E=461;break G}case 19:{E=464;break G}default:{}}if((f&15|0)!=4){E=472;break}i=Ww((c[g>>2]|0)+16|0,hb)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0))g=hb;else{E=472;break}}if((E|0)==461){n=+h[g>>3];m=+A(+n);if(!(n!=m)?m>=-9223372036854775808.0&m<9223372036854775808.0:0){g=~~m>>>0;f=+B(m)>=1.0?(m>0.0?~~+P(+A(m/4294967296.0),4294967295.0)>>>0:~~+N((m-+(~~m>>>0))/4294967296.0)>>>0):0;E=470}else E=472}else if((E|0)==464){f=g;g=c[f>>2]|0;f=c[f+4>>2]|0;E=470}if((E|0)==470){E=0;break}else if((E|0)==472){E=0;Gx(e,k,k,x,19);f=c[H>>2]|0;continue b}}else{f=k;g=c[f>>2]|0;f=c[f+4>>2]|0}while(0);c[x>>2]=~g;c[x+4>>2]=~f;c[C+(y<<4)+8>>2]=19;f=C;continue b}case 27:{f=i>>>23;switch(c[C+(f<<4)+8>>2]|0){case 0:{f=1;break}case 1:{f=(c[C+(f<<4)>>2]|0)==0;break}default:f=0}c[x>>2]=f&1;c[C+(y<<4)+8>>2]=1;f=C;continue b}case 28:{Qx(e,x,C+(i>>>23<<4)|0);f=c[H>>2]|0;continue b}case 29:{k=i>>>23;f=i>>>14&511;c[rb>>2]=C+(f+1<<4);Px(e,1-k+f|0);f=c[H>>2]|0;C=f+(y<<4)|0;g=f+(k<<4)|0;c[C>>2]=c[g>>2];c[C+4>>2]=c[g+4>>2];c[C+8>>2]=c[g+8>>2];c[C+12>>2]=c[g+12>>2];if((c[(c[Wa>>2]|0)+12>>2]|0)>0){c[rb>>2]=y>>>0>=k>>>0?f+(y+1<<4)|0:g;Sw(e);f=c[J>>2]|0;c[rb>>2]=f}else f=c[J>>2]|0;C=c[H>>2]|0;c[rb>>2]=f;f=C;continue b}case 30:{H:do if(y|0?(fa=(c[H>>2]|0)+(y+-1<<4)|0,ga=c[Ra>>2]|0,ga|0):0){g=ga;do{f=c[g>>2]|0;if(f>>>0<fa>>>0)break H;k=g+8|0;c[Ra>>2]=c[k>>2];if(c[g+4>>2]|0){c[k>>2]=c[f>>2];c[k+4>>2]=c[f+4>>2];c[k+8>>2]=c[f+8>>2];c[k+12>>2]=c[f+12>>2];c[g>>2]=k;if((c[g+16>>2]&64|0?(ha=c[Wa>>2]|0,ia=c[k>>2]|0,(d[ha+61>>0]|0)<2):0)?a[ia+5>>0]&3:0)Iw(ha,ia)}else{y=c[Wa>>2]|0;jg[c[y>>2]&31](c[y+4>>2]|0,g,24,0)|0;y=y+12|0;c[y>>2]=(g|0?-24:0)+(c[y>>2]|0)}g=c[Ra>>2]|0}while((g|0)!=0)}while(0);c[I>>2]=(c[I>>2]|0)+((i>>>14)+-131071<<2);f=C;continue b}case 31:{x=i>>>23;f=i>>>14;C=(Ox(e,(x&256|0)==0?C+(x<<4)|0:G+((x&255)<<4)|0,(f&256|0)==0?C+((f&511)<<4)|0:G+((f&255)<<4)|0)|0)==(y|0);f=c[I>>2]|0;if(C){k=c[f>>2]|0;g=k>>>6&255;if((g|0)!=0?(ka=(c[H>>2]|0)+(g+-1<<4)|0,la=c[Ra>>2]|0,(la|0)!=0):0){g=la;do{f=c[g>>2]|0;if(f>>>0<ka>>>0)break;i=g+8|0;c[Ra>>2]=c[i>>2];if(c[g+4>>2]|0){c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2];c[g>>2]=i;if((c[g+16>>2]&64|0?(ma=c[Wa>>2]|0,na=c[i>>2]|0,(d[ma+61>>0]|0)<2):0)?a[na+5>>0]&3:0)Iw(ma,na)}else{C=c[Wa>>2]|0;jg[c[C>>2]&31](c[C+4>>2]|0,g,24,0)|0;C=C+12|0;c[C>>2]=(g|0?-24:0)+(c[C>>2]|0)}g=c[Ra>>2]|0}while((g|0)!=0);f=c[I>>2]|0}f=f+((k>>>14)+-131070<<2)|0}else f=f+4|0;c[I>>2]=f;f=c[H>>2]|0;continue b}case 32:{x=i>>>23;f=i>>>14;C=(Mx(e,(x&256|0)==0?C+(x<<4)|0:G+((x&255)<<4)|0,(f&256|0)==0?C+((f&511)<<4)|0:G+((f&255)<<4)|0)|0)==(y|0);f=c[I>>2]|0;if(C){k=c[f>>2]|0;g=k>>>6&255;if((g|0)!=0?(oa=(c[H>>2]|0)+(g+-1<<4)|0,pa=c[Ra>>2]|0,(pa|0)!=0):0){g=pa;do{f=c[g>>2]|0;if(f>>>0<oa>>>0)break;i=g+8|0;c[Ra>>2]=c[i>>2];if(c[g+4>>2]|0){c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2];c[g>>2]=i;if((c[g+16>>2]&64|0?(sa=c[Wa>>2]|0,ta=c[i>>2]|0,(d[sa+61>>0]|0)<2):0)?a[ta+5>>0]&3:0)Iw(sa,ta)}else{C=c[Wa>>2]|0;jg[c[C>>2]&31](c[C+4>>2]|0,g,24,0)|0;C=C+12|0;c[C>>2]=(g|0?-24:0)+(c[C>>2]|0)}g=c[Ra>>2]|0}while((g|0)!=0);f=c[I>>2]|0}f=f+((k>>>14)+-131070<<2)|0}else f=f+4|0;c[I>>2]=f;f=c[H>>2]|0;continue b}case 33:{x=i>>>23;f=i>>>14;C=(Nx(e,(x&256|0)==0?C+(x<<4)|0:G+((x&255)<<4)|0,(f&256|0)==0?C+((f&511)<<4)|0:G+((f&255)<<4)|0)|0)==(y|0);f=c[I>>2]|0;if(C){k=c[f>>2]|0;g=k>>>6&255;if((g|0)!=0?(ua=(c[H>>2]|0)+(g+-1<<4)|0,va=c[Ra>>2]|0,(va|0)!=0):0){g=va;do{f=c[g>>2]|0;if(f>>>0<ua>>>0)break;i=g+8|0;c[Ra>>2]=c[i>>2];if(c[g+4>>2]|0){c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2];c[g>>2]=i;if((c[g+16>>2]&64|0?(wa=c[Wa>>2]|0,xa=c[i>>2]|0,(d[wa+61>>0]|0)<2):0)?a[xa+5>>0]&3:0)Iw(wa,xa)}else{C=c[Wa>>2]|0;jg[c[C>>2]&31](c[C+4>>2]|0,g,24,0)|0;C=C+12|0;c[C>>2]=(g|0?-24:0)+(c[C>>2]|0)}g=c[Ra>>2]|0}while((g|0)!=0);f=c[I>>2]|0}f=f+((k>>>14)+-131070<<2)|0}else f=f+4|0;c[I>>2]=f;f=c[H>>2]|0;continue b}case 34:{f=c[C+(y<<4)+8>>2]|0;g=(f|0)==0;if(!(i&8372224)){if(!g)if(!((f|0)==1?!(c[x>>2]|0):0))E=545}else if(!g){if((f|0)==1?(c[x>>2]|0)==0:0)E=545}else E=545;if((E|0)==545){E=0;c[I>>2]=(c[I>>2]|0)+4;f=C;continue b}f=c[I>>2]|0;k=c[f>>2]|0;g=k>>>6&255;if((g|0)!=0?(za=(c[H>>2]|0)+(g+-1<<4)|0,Aa=c[Ra>>2]|0,(Aa|0)!=0):0){g=Aa;do{f=c[g>>2]|0;if(f>>>0<za>>>0)break;i=g+8|0;c[Ra>>2]=c[i>>2];if(c[g+4>>2]|0){c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2];c[g>>2]=i;if((c[g+16>>2]&64|0?(Ba=c[Wa>>2]|0,Ca=c[i>>2]|0,(d[Ba+61>>0]|0)<2):0)?a[Ca+5>>0]&3:0)Iw(Ba,Ca)}else{y=c[Wa>>2]|0;jg[c[y>>2]&31](c[y+4>>2]|0,g,24,0)|0;y=y+12|0;c[y>>2]=(g|0?-24:0)+(c[y>>2]|0)}g=c[Ra>>2]|0}while((g|0)!=0);f=c[I>>2]|0}c[I>>2]=f+((k>>>14)+-131070<<2);f=C;continue b}case 35:{g=i>>>23;f=C+(g<<4)|0;g=c[C+(g<<4)+8>>2]|0;k=(g|0)==0;if(!(i&8372224)){if(!k)if(!((g|0)==1?!(c[f>>2]|0):0))E=565}else if(!k){if((g|0)==1?(c[f>>2]|0)==0:0)E=565}else E=565;if((E|0)==565){E=0;c[I>>2]=(c[I>>2]|0)+4;f=C;continue b};c[x>>2]=c[f>>2];c[x+4>>2]=c[f+4>>2];c[x+8>>2]=c[f+8>>2];c[x+12>>2]=c[f+12>>2];f=c[I>>2]|0;k=c[f>>2]|0;g=k>>>6&255;if((g|0)!=0?(Da=(c[H>>2]|0)+(g+-1<<4)|0,Ea=c[Ra>>2]|0,(Ea|0)!=0):0){g=Ea;do{f=c[g>>2]|0;if(f>>>0<Da>>>0)break;i=g+8|0;c[Ra>>2]=c[i>>2];if(c[g+4>>2]|0){c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2];c[g>>2]=i;if((c[g+16>>2]&64|0?(Fa=c[Wa>>2]|0,Ga=c[i>>2]|0,(d[Fa+61>>0]|0)<2):0)?a[Ga+5>>0]&3:0)Iw(Fa,Ga)}else{y=c[Wa>>2]|0;jg[c[y>>2]&31](c[y+4>>2]|0,g,24,0)|0;y=y+12|0;c[y>>2]=(g|0?-24:0)+(c[y>>2]|0)}g=c[Ra>>2]|0}while((g|0)!=0);f=c[I>>2]|0}c[I>>2]=f+((k>>>14)+-131070<<2);f=C;continue b}case 36:{g=i>>>23;f=i>>>14&511;if(g|0)c[rb>>2]=C+(y+g<<4);if(!(uw(e,x,f+-1|0)|0)){E=584;break b}if(f|0)c[rb>>2]=c[J>>2];f=c[H>>2]|0;continue b}case 37:{f=i>>>23;if(f|0)c[rb>>2]=C+(y+f<<4);if(!(uw(e,x,-1)|0)){E=589;break b}f=c[H>>2]|0;continue b}case 39:{f=C+(y+2<<4)|0;if((c[C+(y<<4)+8>>2]|0)==19){v=f;w=c[v>>2]|0;v=c[v+4>>2]|0;f=x;f=yQ(c[f>>2]|0,c[f+4>>2]|0,w|0,v|0)|0;g=z;p=C+(y+1<<4)|0;k=c[p>>2]|0;p=c[p+4>>2]|0;if((v|0)>0|(v|0)==0&w>>>0>0){if((g|0)>(p|0)|(g|0)==(p|0)&f>>>0>k>>>0){f=C;continue b}}else if((p|0)>(g|0)|(p|0)==(g|0)&k>>>0>f>>>0){f=C;continue b}c[I>>2]=(c[I>>2]|0)+((i>>>14)+-131071<<2);c[x>>2]=f;c[x+4>>2]=g;y=y+3|0;x=C+(y<<4)|0;c[x>>2]=f;c[x+4>>2]=g;c[C+(y<<4)+8>>2]=19;f=C;continue b}else{sb=+h[f>>3];m=sb+ +h[x>>3];n=+h[C+(y+1<<4)>>3];if(sb>0.0){if(!(m<=n)){f=C;continue b}}else if(!(n<=m)){f=C;continue b}c[I>>2]=(c[I>>2]|0)+((i>>>14)+-131071<<2);h[x>>3]=m;f=y+3|0;h[C+(f<<4)>>3]=m;c[C+(f<<4)+8>>2]=3;f=C;continue b}}case 40:{s=y+1|0;u=C+(s<<4)|0;t=y+2|0;v=C+(t<<4)|0;w=C+(y<<4)+8|0;I:do if((c[w>>2]|0)==19?(c[C+(t<<4)+8>>2]|0)==19:0){q=v;p=c[q>>2]|0;q=c[q+4>>2]|0;r=(q|0)<0;g=u;J:while(1){f=c[g+8>>2]|0;switch(f|0){case 3:{E=632;break J}case 19:{E=634;break J}default:{}}if((f&15|0)!=4){E=641;break}k=Ww((c[g>>2]|0)+16|0,hb)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((k|0)==(f+1|0))g=hb;else{E=641;break}}if((E|0)==632){sb=+h[g>>3];m=+A(+sb);m=r&sb!=m?m+1.0:m;if(m>=-9223372036854775808.0&m<9223372036854775808.0){k=~~m>>>0;g=+B(m)>=1.0?(m>0.0?~~+P(+A(m/4294967296.0),4294967295.0)>>>0:~~+N((m-+(~~m>>>0))/4294967296.0)>>>0):0;E=640}else E=641}else if((E|0)==634){k=c[g>>2]|0;g=c[g+4>>2]|0;E=640}do if((E|0)==640){f=C+(s<<4)+8|0;E=656}else if((E|0)==641){E=0;f=C+(s<<4)+8|0;g=c[f>>2]|0;if((g|0)==3)m=+h[u>>3];else do if((g|0)==19){y=u;m=+((c[y>>2]|0)>>>0)+4294967296.0*+(c[y+4>>2]|0)}else{if((g&15|0)==4){k=Ww((c[u>>2]|0)+16|0,hb)|0;g=c[u>>2]|0;if((a[g+4>>0]|0)==4)g=d[g+7>>0]|0;else g=c[g+12>>2]|0;if((k|0)==(g+1|0)){s=(c[ra>>2]|0)==19;y=hb;t=c[y>>2]|0;y=c[y+4>>2]|0;c[j>>2]=t;c[j+4>>2]=y;m=s?+(t>>>0)+4294967296.0*+(y|0):+h[j>>3];break}}E=658;break I}while(0);if(m>0.0)if(r){q=-1;g=2147483647;k=0;p=0;break}else{k=-1;g=2147483647;E=656;break}else if((q|0)>-1|(q|0)==-1&p>>>0>4294967295){q=0;g=-2147483648;k=0;p=0;break}else{k=0;g=-2147483648;E=656;break}}while(0);if((E|0)==656){E=0;p=x;q=k;k=c[p>>2]|0;p=c[p+4>>2]|0}y=u;c[y>>2]=q;c[y+4>>2]=g;c[f>>2]=19;y=v;y=zQ(k|0,p|0,c[y>>2]|0,c[y+4>>2]|0)|0;f=x;c[f>>2]=y;c[f+4>>2]=z;f=19}else E=658;while(0);if((E|0)==658){E=0;k=C+(s<<4)+8|0;f=c[k>>2]|0;if((f|0)==3){f=u;m=+h[u>>3]}else{if((f|0)==19){y=u;m=+((c[y>>2]|0)>>>0)+4294967296.0*+(c[y+4>>2]|0)}else{if((f&15|0)!=4){E=669;break a}g=Ww((c[u>>2]|0)+16|0,hb)|0;f=c[u>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)!=(f+1|0)){E=669;break a}r=(c[Ma>>2]|0)==19;y=hb;s=c[y>>2]|0;y=c[y+4>>2]|0;c[j>>2]=s;c[j+4>>2]=y;m=r?+(s>>>0)+4294967296.0*+(y|0):+h[j>>3]}f=u}h[f>>3]=m;c[k>>2]=3;k=C+(t<<4)+8|0;f=c[k>>2]|0;if((f|0)==3){f=v;n=+h[v>>3]}else{if((f|0)==19){y=v;m=+((c[y>>2]|0)>>>0)+4294967296.0*+(c[y+4>>2]|0)}else{if((f&15|0)!=4){E=681;break a}g=Ww((c[v>>2]|0)+16|0,hb)|0;f=c[v>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)!=(f+1|0)){E=681;break a}t=(c[Ha>>2]|0)==19;y=hb;u=c[y>>2]|0;y=c[y+4>>2]|0;c[j>>2]=u;c[j+4>>2]=y;m=t?+(u>>>0)+4294967296.0*+(y|0):+h[j>>3]}f=v;n=m}h[f>>3]=n;c[k>>2]=3;f=c[w>>2]|0;if((f|0)==3){f=x;m=+h[x>>3]}else{if((f|0)==19){y=x;m=+((c[y>>2]|0)>>>0)+4294967296.0*+(c[y+4>>2]|0)}else{if((f&15|0)!=4){E=693;break a}g=Ww((c[x>>2]|0)+16|0,hb)|0;f=c[x>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)!=(f+1|0)){E=693;break a}u=(c[ya>>2]|0)==19;y=hb;v=c[y>>2]|0;y=c[y+4>>2]|0;c[j>>2]=v;c[j+4>>2]=y;m=u?+(v>>>0)+4294967296.0*+(y|0):+h[j>>3]}f=x}h[f>>3]=m-n;f=3}c[w>>2]=f;c[I>>2]=(c[I>>2]|0)+((i>>>14)+-131071<<2);f=C;continue b}case 41:{k=C+(y+3<<4)|0;f=C+(y+5<<4)|0;g=C+(y+2<<4)|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[f+12>>2]=c[g+12>>2];f=C+(y+4<<4)|0;g=C+(y+1<<4)|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[f+12>>2]=c[g+12>>2];c[k>>2]=c[x>>2];c[k+4>>2]=c[x+4>>2];c[k+8>>2]=c[x+8>>2];c[k+12>>2]=c[x+12>>2];c[rb>>2]=C+(y+6<<4);f=i>>>14&511;g=(b[Sa>>1]|0)+1<<16>>16;b[Sa>>1]=g;if((g&65535)>199){if(g<<16>>16==200){E=698;break a}if((g&65535)>224){E=700;break a}}if(!(uw(e,k,f)|0))Sx(e);b[Sa>>1]=(b[Sa>>1]|0)+-1<<16>>16;C=c[H>>2]|0;c[rb>>2]=c[J>>2];g=c[I>>2]|0;c[I>>2]=g+4;g=c[g>>2]|0;f=C;i=g;g=C+((g>>>6&255)<<4)|0;break}case 42:{f=C;g=x;break}case 43:{f=i>>>23;g=i>>>14&511;if(!f)f=((c[rb>>2]|0)-x>>4)+-1|0;if(!g){g=c[I>>2]|0;c[I>>2]=g+4;g=(c[g>>2]|0)>>>6}x=c[x>>2]|0;i=f+-50+(g*50|0)|0;w=x+8|0;if(i>>>0>(c[w>>2]|0)>>>0){if((c[x+16>>2]|0)==316360)g=0;else g=1<<d[x+7>>0];Ax(e,x,i,g)}if((f|0)>0){r=x+5|0;s=x+12|0;t=x+28|0;u=x+7|0;v=x+16|0;while(1){p=f+y|0;q=C+(p<<4)|0;g=yQ(i|0,0,-1,-1)|0;E=z;K:do if(E>>>0<0|((E|0)==0?g>>>0<(c[w>>2]|0)>>>0:0)){g=(c[s>>2]|0)+(g<<4)|0;E=724}else{g=(c[v>>2]|0)+(((1<<d[u>>0])+-1&i)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(E=g+16|0,(c[E+4>>2]|0)==0?(c[E>>2]|0)==(i|0):0):0)break;k=c[g+28>>2]|0;if(!k){E=725;break K}g=g+(k<<5)|0}E=724}while(0);if((E|0)==724){E=0;if((g|0)==316344)E=725}if((E|0)==725){E=0;g=hb;c[g>>2]=i;c[g+4>>2]=0;c[Ua>>2]=19;g=Bx(e,x,hb)|0};i=i+-1|0;c[g>>2]=c[q>>2];c[g+4>>2]=c[q+4>>2];c[g+8>>2]=c[q+8>>2];c[g+12>>2]=c[q+12>>2];if((c[C+(p<<4)+8>>2]&64|0?(Ta=a[r>>0]|0,Ta&4):0)?a[(c[q>>2]|0)+5>>0]&3:0){q=c[Wa>>2]|0;a[r>>0]=Ta&-5;q=q+80|0;c[t>>2]=c[q>>2];c[q>>2]=x}if((f|0)<=1)break;else f=f+-1|0}}c[rb>>2]=c[J>>2];f=C;continue b}case 44:{u=c[(c[(c[K>>2]|0)+52>>2]|0)+(i>>>14<<2)>>2]|0;v=u+68|0;g=c[v>>2]|0;s=c[u+12>>2]|0;t=c[u+64>>2]|0;L:do if(!g)E=739;else{if((s|0)>0){i=0;do{f=d[t+(i<<3)+5>>0]|0;if(!(a[t+(i<<3)+4>>0]|0))f=c[c[F+16+(f<<2)>>2]>>2]|0;else f=C+(f<<4)|0;if((c[c[g+16+(i<<2)>>2]>>2]|0)!=(f|0)){E=739;break L}i=i+1|0}while((i|0)<(s|0))}c[x>>2]=g;c[C+(y<<4)+8>>2]=70}while(0);if((E|0)==739){E=0;i=(s<<2)+16|0;k=c[Wa>>2]|0;f=k+4|0;g=jg[c[k>>2]&31](c[f>>2]|0,0,6,i)|0;if((i|0)!=0&(g|0)==0){if(!(c[k+140>>2]|0)){E=742;break a}Tw(e,1);f=jg[c[k>>2]&31](c[f>>2]|0,0,6,i)|0;if(!f){E=742;break a}else g=f}w=k+12|0;c[w>>2]=i+(c[w>>2]|0);a[g+5>>0]=a[k+60>>0]&3;a[g+4>>0]=6;i=k+64|0;c[g>>2]=c[i>>2];c[i>>2]=g;i=g+12|0;c[i>>2]=0;a[g+6>>0]=s;if(s){k=g+16|0;f=s;do{f=f+-1|0;c[k+(f<<2)>>2]=0}while((f|0)!=0);c[i>>2]=u;c[x>>2]=g;c[C+(y<<4)+8>>2]=70;if((s|0)>0){r=0;do{f=d[t+(r<<3)+5>>0]|0;if(!(a[t+(r<<3)+4>>0]|0)){f=c[F+16+(f<<2)>>2]|0;c[g+16+(r<<2)>>2]=f}else{q=C+(f<<4)|0;f=c[Ra>>2]|0;M:do if(!f){i=Ra;E=753}else{i=Ra;while(1){k=c[f>>2]|0;if(k>>>0<q>>>0){E=753;break M}if((k|0)==(q|0))break M;i=f+8|0;f=c[i>>2]|0;if(!f){E=753;break}}}while(0);if((E|0)==753){E=0;p=c[Wa>>2]|0;k=p+4|0;f=jg[c[p>>2]&31](c[k>>2]|0,0,0,24)|0;if(!f){if(!(c[p+140>>2]|0)){E=756;break a}Tw(e,1);f=jg[c[p>>2]&31](c[k>>2]|0,0,0,24)|0;if(!f){E=756;break a}}x=p+12|0;c[x>>2]=(c[x>>2]|0)+24;c[f+4>>2]=0;c[f+8>>2]=c[i>>2];c[f+12>>2]=1;c[i>>2]=f;c[f>>2]=q;if((c[Va>>2]|0)==(e|0)){x=(c[Wa>>2]|0)+104|0;c[Va>>2]=c[x>>2];c[x>>2]=e}}c[g+16+(r<<2)>>2]=f}x=f+4|0;c[x>>2]=(c[x>>2]|0)+1;r=r+1|0}while((r|0)!=(s|0))}}else{c[i>>2]=u;c[x>>2]=g;c[C+(y<<4)+8>>2]=70}if(!(a[u+5>>0]&4))c[v>>2]=g}if((c[(c[Wa>>2]|0)+12>>2]|0)>0){c[rb>>2]=C+(y+1<<4);Sw(e);c[rb>>2]=c[J>>2]}f=c[H>>2]|0;continue b}case 45:{x=i>>>23;g=x+-1|0;i=(C-(c[o>>2]|0)>>4)-(d[(c[K>>2]|0)+6>>0]|0)|0;q=i+-1|0;if(!x){f=c[rb>>2]|0;if(((c[Qa>>2]|0)-f>>4|0)<(i|0)){g=c[Xa>>2]|0;if((g|0)>1e6){E=771;break a}C=i+4+(f-(c[Ya>>2]|0)>>4)|0;f=g<<1;f=(f|0)<1e6?f:1e6;f=(f|0)<(C|0)?C:f;if((f|0)>1e6){E=773;break a}sw(e,f)}f=c[H>>2]|0;c[rb>>2]=f+(q+y<<4);g=q}else f=C;if((g|0)<=0)continue b;p=1-i|0;i=0;while(1){k=i+y|0;if((i|0)<(q|0)){C=f+(k<<4)|0;x=f+(p+i<<4)|0;c[C>>2]=c[x>>2];c[C+4>>2]=c[x+4>>2];c[C+8>>2]=c[x+8>>2];c[C+12>>2]=c[x+12>>2]}else c[f+(k<<4)+8>>2]=0;i=i+1|0;if((i|0)==(g|0))continue b}}default:{f=C;continue b}}while(0);if(!(c[g+24>>2]|0))continue;C=g+16|0;c[g>>2]=c[C>>2];c[g+4>>2]=c[C+4>>2];c[g+8>>2]=c[C+8>>2];c[g+12>>2]=c[C+12>>2];c[I>>2]=(c[I>>2]|0)+((i>>>14)+-131071<<2)}if((E|0)==584){E=0;o=c[X>>2]|0;K=o+34|0;a[K>>0]=a[K>>0]|8;continue}else if((E|0)==589){E=0;k=c[X>>2]|0;o=c[k+8>>2]|0;p=c[k>>2]|0;q=c[o>>2]|0;r=k+16|0;s=(c[r>>2]|0)+(d[(c[(c[p>>2]|0)+12>>2]|0)+6>>0]<<4)|0;N:do if((c[(c[K>>2]|0)+28>>2]|0)>0?(Ia=c[o+16>>2]|0,Ja=c[Ra>>2]|0,Ja|0):0){g=Ja;do{f=c[g>>2]|0;if(f>>>0<Ia>>>0)break N;i=g+8|0;c[Ra>>2]=c[i>>2];if(c[g+4>>2]|0){c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2];c[g>>2]=i;if((c[g+16>>2]&64|0?(Ka=c[Wa>>2]|0,La=c[i>>2]|0,(d[Ka+61>>0]|0)<2):0)?a[La+5>>0]&3:0)Iw(Ka,La)}else{K=c[Wa>>2]|0;jg[c[K>>2]&31](c[K+4>>2]|0,g,24,0)|0;K=K+12|0;c[K>>2]=(g|0?-24:0)+(c[K>>2]|0)}g=c[Ra>>2]|0}while((g|0)!=0)}while(0);if(p>>>0<s>>>0){f=p;g=0;do{K=q+(g<<4)|0;c[K>>2]=c[f>>2];c[K+4>>2]=c[f+4>>2];c[K+8>>2]=c[f+8>>2];c[K+12>>2]=c[f+12>>2];g=g+1|0;f=p+(g<<4)|0}while(f>>>0<s>>>0)}K=p;c[o+16>>2]=q+((c[r>>2]|0)-K>>4<<4);K=q+((c[rb>>2]|0)-K>>4<<4)|0;c[rb>>2]=K;c[o+4>>2]=K;c[o+20>>2]=c[k+20>>2];K=o+34|0;a[K>>0]=a[K>>0]|32;c[X>>2]=o;continue}else if((E|0)==602){E=0;k=i>>>23;O:do if((c[(c[K>>2]|0)+28>>2]|0)>0?(Na=c[Ra>>2]|0,Na|0):0){g=Na;do{f=c[g>>2]|0;if(f>>>0<C>>>0)break O;i=g+8|0;c[Ra>>2]=c[i>>2];if(c[g+4>>2]|0){c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2];c[g>>2]=i;if((c[g+16>>2]&64|0?(Oa=c[Wa>>2]|0,Pa=c[i>>2]|0,(d[Oa+61>>0]|0)<2):0)?a[Pa+5>>0]&3:0)Iw(Oa,Pa)}else{K=c[Wa>>2]|0;jg[c[K>>2]&31](c[K+4>>2]|0,g,24,0)|0;K=K+12|0;c[K>>2]=(g|0?-24:0)+(c[K>>2]|0)}g=c[Ra>>2]|0}while((g|0)!=0)}while(0);if(!k)f=(c[rb>>2]|0)-x>>4;else f=k+-1|0;g=vw(e,x,f)|0;if(!(a[o+34>>0]&8)){E=616;break}f=c[X>>2]|0;if(!g){o=f;continue}c[rb>>2]=c[f+4>>2];o=f;continue}}switch(E|0){case 22:{if(!t){pb=f+-4|0;c[g>>2]=pb;pb=a[u>>0]|0;pb=pb|64;a[u>>0]=pb;pb=c[rb>>2]|0;pb=pb+-16|0;c[v>>2]=pb;qw(e,1)}c[qb>>2]=1;qb=f+-4|0;c[g>>2]=qb;qb=a[u>>0]|0;qb=qb|64;a[u>>0]=qb;rb=c[rb>>2]|0;rb=rb+-16|0;c[v>>2]=rb;qw(e,1);break}case 46:{qw(e,4);break}case 84:{ow(e,k,i,281489);break}case 113:{ow(e,k,i,281489);break}case 142:{ow(e,k,i,281489);break}case 170:{ow(e,k,i,281489);break}case 352:{mw(e,281888,ib);break}case 379:{ow(e,k,p,281489);break}case 385:{mw(e,281862,jb);break}case 414:{ow(e,k,i,281489);break}case 442:{ow(e,k,i,281489);break}case 455:{ow(e,i,i,281489);break}case 616:{l=pb;return}case 669:{mw(e,281914,lb);break}case 681:{mw(e,281943,mb);break}case 693:{mw(e,281971,nb);break}case 698:{mw(e,279953,ob);break}case 700:{qw(e,6);break}case 742:{qw(e,4);break}case 756:{qw(e,4);break}case 771:{qw(e,6);break}case 773:{sw(e,1000200);mw(e,283421,kb);break}}}function Tx(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p;o=b+8|0;h=b+16|0;i=(c[o>>2]|0)-((c[c[h>>2]>>2]|0)+16)|0;k=i>>4;iw(b,282122,d)|0;j=b+12|0;f=c[j>>2]|0;g=c[o>>2]|0;e=f+280+(((285645>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(JN(285645,d+16|0)|0){d=xx(b,285645,7)|0;c[e>>2]=d}c[g>>2]=d;c[g+8>>2]=(a[d+4>>0]|64)&255;g=c[o>>2]|0;c[o>>2]=g+16;Kx(b,f+40|0,g,g);f=k+1|0;if(!(Ux(b,f,2)|0)){if((i|0)<=-16){n=0;b=(c[o>>2]|0)+(f<<4)|0;c[o>>2]=b;l=p;return n|0}d=c[c[h>>2]>>2]|0;g=c[o>>2]|0;f=d+(f<<4)|0;if(g>>>0>=f>>>0){n=0;b=f;c[o>>2]=b;l=p;return n|0}d=(d+(k<<4)+8+4+(3-g)|0)>>>4;e=g;do{c[e+8>>2]=0;e=e+16|0}while(e>>>0<f>>>0);c[o>>2]=g+(d+1<<4);n=0;b=f;c[o>>2]=b;l=p;return n|0}d=c[o>>2]|0;switch(c[d+-8>>2]&15){case 4:{d=d+-16|0;m=9;break}case 3:{if((c[(c[j>>2]|0)+12>>2]|0)>0){Sw(b);d=c[o>>2]|0}d=d+-16|0;Xw(b,d);m=9;break}default:d=0}if((m|0)==9)d=(c[d>>2]|0)+16|0;if(!(LN(d,282124,3)|0)){Uv(b,d+3|0);e=c[o>>2]|0;d=e+-16|0;e=e+-32|0;do{c[n>>2]=c[e>>2];c[n+4>>2]=c[e+4>>2];c[n+8>>2]=c[e+8>>2];c[n+12>>2]=c[e+12>>2];c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];c[d>>2]=c[n>>2];c[d+4>>2]=c[n+4>>2];c[d+8>>2]=c[n+8>>2];c[d+12>>2]=c[n+12>>2];e=e+16|0;d=d+-16|0}while(e>>>0<d>>>0);c[o>>2]=(c[o>>2]|0)+-16}Rv(b,f);n=1;b=(c[o>>2]|0)+-32|0;c[o>>2]=b;l=p;return n|0}function Ux(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+16|0;u=v;if(!f){u=0;l=v;return u|0}s=b+8|0;g=c[s>>2]|0;if((g+-16|0)==316344){u=0;l=v;return u|0}if((c[g+-8>>2]&15|0)!=5){u=0;l=v;return u|0}c[g+8>>2]=0;c[s>>2]=g+16;if(!(ew(b,-2)|0)){u=0;l=v;return u|0}h=f+-1|0;i=b+16|0;j=(e|0)>0;k=(e|0)<-1000999;m=(e|0)==-1001e3;t=b+12|0;n=-1001e3-e|0;o=n+-1|0;while(1){g=c[s>>2]|0;if((g+-32|0)!=316344?(c[g+-24>>2]&15|0)==4:0){f=c[i>>2]|0;do if(!j){if(!k){p=g+(e<<4)|0;r=16;break}if(m){p=(c[t>>2]|0)+40|0;r=16;break}f=c[f>>2]|0;if((c[f+8>>2]|0)!=22){p=c[f>>2]|0;p=(n|0)>(d[p+6>>0]|0|0)?316344:p+16+(o<<4)|0;r=16}}else{p=(c[f>>2]|0)+(e<<4)|0;p=p>>>0<g>>>0?p:316344;r=16}while(0);if(((r|0)==16?(r=0,q=g+-16|0,(p|0)!=316344&(q|0)!=316344):0)?Ox(0,p,q)|0:0){r=18;break}f=(Ux(b,e,h)|0)==0;g=c[s>>2]|0;if(!f){r=20;break}}c[s>>2]=g+-16;if(!(ew(b,-2)|0)){g=0;r=33;break}}if((r|0)==18){c[s>>2]=(c[s>>2]|0)+-16;u=1;l=v;return u|0}else if((r|0)==20){f=g+-16|0;g=g+-32|0;do{c[u>>2]=c[g>>2];c[u+4>>2]=c[g+4>>2];c[u+8>>2]=c[g+8>>2];c[u+12>>2]=c[g+12>>2];c[g>>2]=c[f>>2];c[g+4>>2]=c[f+4>>2];c[g+8>>2]=c[f+8>>2];c[g+12>>2]=c[f+12>>2];c[f>>2]=c[u>>2];c[f+4>>2]=c[u+4>>2];c[f+8>>2]=c[u+8>>2];c[f+12>>2]=c[u+12>>2];g=g+16|0;f=f+-16|0}while(g>>>0<f>>>0);c[s>>2]=(c[s>>2]|0)+-16;g=c[t>>2]|0;if((c[g+12>>2]|0)>0){Sw(b);g=c[t>>2]|0}f=g+280+(((314352>>>0)%127|0)<<2)|0;g=c[f>>2]|0;if(JN(314352,g+16|0)|0){g=xx(b,314352,1)|0;c[f>>2]=g}f=c[s>>2]|0;c[f>>2]=g;c[f+8>>2]=(a[g+4>>0]|64)&255;f=c[s>>2]|0;c[s>>2]=f+16;g=f;f=f+-16|0;do{c[u>>2]=c[f>>2];c[u+4>>2]=c[f+4>>2];c[u+8>>2]=c[f+8>>2];c[u+12>>2]=c[f+12>>2];c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[f+12>>2]=c[g+12>>2];c[g>>2]=c[u>>2];c[g+4>>2]=c[u+4>>2];c[g+8>>2]=c[u+8>>2];c[g+12>>2]=c[u+12>>2];f=f+16|0;g=g+-16|0}while(f>>>0<g>>>0);if((c[(c[t>>2]|0)+12>>2]|0)>0)Sw(b);Px(b,3);u=1;l=v;return u|0}else if((r|0)==33){l=v;return g|0}return 0}function Vx(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+128|0;i=j+16|0;g=j+8|0;f=j;h=j+28|0;e=c[a+16>>2]|0;if((e|0)==(a+48|0)){c[f>>2]=b;c[f+4>>2]=d;Wx(a,282128,f);l=j;return 0}c[h+96>>2]=e;iw(a,285293,h)|0;if(!(JN(c[h+8>>2]|0,282150)|0)){b=b+-1|0;if(!b){c[g>>2]=c[h+4>>2];c[g+4>>2]=d;Wx(a,282157,g);l=j;return 0}else g=b}else g=b;f=h+4|0;b=c[f>>2]|0;if(!b){a:do if(!(Tx(a,h)|0))b=285924;else{e=a+8|0;b=c[e>>2]|0;switch(c[b+-8>>2]&15){case 4:{b=b+-16|0;break}case 3:{if((c[(c[a+12>>2]|0)+12>>2]|0)>0){Sw(a);b=c[e>>2]|0}b=b+-16|0;Xw(a,b);break}default:{b=0;break a}}b=(c[b>>2]|0)+16|0}while(0);c[f>>2]=b}c[i>>2]=g;c[i+4>>2]=b;c[i+8>>2]=d;Wx(a,282187,i);l=j;return 0}function Wx(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+128|0;j=k;h=k+24|0;k=k+8|0;c[k>>2]=e;f=c[b+16>>2]|0;e=b+48|0;if(((f|0)!=(e|0)?(i=c[f+8>>2]|0,(i|0)!=(e|0)):0)?(c[h+96>>2]=i,iw(b,282217,h)|0,g=c[h+20>>2]|0,(g|0)>0):0){c[j>>2]=h+36;c[j+4>>2]=g;Vv(b,282220,j)|0;e=b+12|0}else{e=b+12|0;f=c[e>>2]|0;if((c[f+12>>2]|0)>0){Sw(b);f=c[e>>2]|0}g=f+280+(((335059>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(335059,f+16|0)|0){f=xx(b,335059,0)|0;c[g>>2]=f}j=b+8|0;i=c[j>>2]|0;c[i>>2]=f;c[i+8>>2]=(a[f+4>>0]|64)&255;c[j>>2]=(c[j>>2]|0)+16}if((c[(c[e>>2]|0)+12>>2]|0)<=0){Yw(b,d,k)|0;fw(b,2);nw(b)}Sw(b);Yw(b,d,k)|0;fw(b,2);nw(b)}function Xx(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;j=c[b+16>>2]|0;h=(e|0)>0;do if(!h){if((e|0)>=-1000999){f=(c[b+8>>2]|0)+(e<<4)|0;break}if((e|0)==-1001e3){f=(c[b+12>>2]|0)+40|0;break}f=-1001e3-e|0;g=c[j>>2]|0;if((c[g+8>>2]|0)==22)f=316344;else{l=c[g>>2]|0;f=(f|0)>(d[l+6>>0]|0|0)?316344:l+16+(f+-1<<4)|0}}else{f=(c[j>>2]|0)+(e<<4)|0;f=f>>>0<(c[b+8>>2]|0)>>>0?f:316344}while(0);switch(c[f+8>>2]&15){case 7:{l=(c[f>>2]|0)+24|0;i=12;break}case 2:{f=c[f>>2]|0;if(f|0){l=f;i=12}break}default:{}}do if((i|0)==12){do if(!h){if((e|0)>=-1000999){f=(c[b+8>>2]|0)+(e<<4)|0;break}if((e|0)==-1001e3){f=(c[b+12>>2]|0)+40|0;break}g=-1001e3-e|0;f=c[j>>2]|0;if((c[f+8>>2]|0)==22)f=316344;else{f=c[f>>2]|0;f=(g|0)>(d[f+6>>0]|0|0)?316344:f+16+(g+-1<<4)|0}}else{f=(c[j>>2]|0)+(e<<4)|0;f=f>>>0<(c[b+8>>2]|0)>>>0?f:316344}while(0);g=c[f+8>>2]|0;switch(g&15){case 5:{f=(c[f>>2]|0)+24|0;break}case 7:{f=(c[f>>2]|0)+8|0;break}default:f=(c[b+12>>2]|0)+244+((g&15)<<2)|0}f=c[f>>2]|0;if(f|0){k=b+8|0;h=c[k>>2]|0;c[h>>2]=f;c[h+8>>2]=69;h=c[k>>2]|0;i=h+16|0;c[k>>2]=i;j=c[b+12>>2]|0;g=j+280+(((286024>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(286024,f+16|0)|0){f=xx(b,286024,12)|0;c[g>>2]=f}c[i>>2]=f;c[h+24>>2]=(a[f+4>>0]|64)&255;g=c[k>>2]|0;c[k>>2]=g+16;Kx(b,j+40|0,g,g);g=c[k>>2]|0;f=g+-16|0;g=g+-32|0;if(!((f|0)!=316344&(g|0)!=316344)){c[k>>2]=g;break}j=(Ox(0,f,g)|0)==0;c[k>>2]=(c[k>>2]|0)+-32;if(!j){e=l;return e|0}}}while(0);Yx(b,e,286024);e=0;return e|0}function Yx(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;q=r+16|0;m=r;n=b+16|0;g=c[n>>2]|0;o=(e|0)>0;do if(!o){if((e|0)>=-1000999){g=(c[b+8>>2]|0)+(e<<4)|0;break}if((e|0)==-1001e3){g=(c[b+12>>2]|0)+40|0;break}h=-1001e3-e|0;g=c[g>>2]|0;if((c[g+8>>2]|0)==22)g=316344;else{g=c[g>>2]|0;g=(h|0)>(d[g+6>>0]|0|0)?316344:g+16+(h+-1<<4)|0}}else{g=(c[g>>2]|0)+(e<<4)|0;g=g>>>0<(c[b+8>>2]|0)>>>0?g:316344}while(0);h=c[g+8>>2]|0;switch(h&15){case 5:{g=(c[g>>2]|0)+24|0;break}case 7:{g=(c[g>>2]|0)+8|0;break}default:g=(c[b+12>>2]|0)+244+((h&15)<<2)|0}g=c[g>>2]|0;do if(g|0){k=b+8|0;j=c[k>>2]|0;c[j>>2]=g;c[j+8>>2]=69;c[k>>2]=(c[k>>2]|0)+16;j=b+12|0;g=c[j>>2]|0;if((c[g+12>>2]|0)>0){Sw(b);g=c[j>>2]|0}h=g+280+(((282228>>>0)%127|0)<<2)|0;g=c[h>>2]|0;if(JN(282228,g+16|0)|0){g=xx(b,282228,6)|0;c[h>>2]=g}i=c[k>>2]|0;c[i>>2]=g;c[i+8>>2]=(a[g+4>>0]|64)&255;g=c[k>>2]|0;c[k>>2]=g+16;i=Cx(c[g+-16>>2]|0,g)|0;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];g=c[k>>2]|0;i=c[g+-8>>2]&15;if(!i){c[k>>2]=g+-32;break}h=g+-16|0;g=g+-32|0;do{c[m>>2]=c[g>>2];c[m+4>>2]=c[g+4>>2];c[m+8>>2]=c[g+8>>2];c[m+12>>2]=c[g+12>>2];c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];c[g+8>>2]=c[h+8>>2];c[g+12>>2]=c[h+12>>2];c[h>>2]=c[m>>2];c[h+4>>2]=c[m+4>>2];c[h+8>>2]=c[m+8>>2];c[h+12>>2]=c[m+12>>2];g=g+16|0;h=h+-16|0}while(g>>>0<h>>>0);h=c[k>>2]|0;g=h+-16|0;c[k>>2]=g;if((i|0)==4){switch(c[h+-24>>2]&15){case 4:{g=h+-32|0;break}case 3:{p=25;break}default:{p=0;c[q>>2]=f;f=q+4|0;c[f>>2]=p;q=Vv(b,282250,q)|0;Vx(b,e,q)|0;l=r;return}}if((p|0)==25){if((c[(c[j>>2]|0)+12>>2]|0)>0){Sw(b);g=c[k>>2]|0}g=g+-16|0;Xw(b,g)}p=(c[g>>2]|0)+16|0;c[q>>2]=f;f=q+4|0;c[f>>2]=p;q=Vv(b,282250,q)|0;Vx(b,e,q)|0;l=r;return}}while(0);j=c[n>>2]|0;do if(o){i=c[j>>2]|0;g=i+(e<<4)|0;h=c[b+8>>2]|0;if(g>>>0<h>>>0)p=37;else{g=i;p=41}}else{if((e|0)>=-1000999){g=(c[b+8>>2]|0)+(e<<4)|0;p=37;break}if((e|0)==-1001e3){g=(c[b+12>>2]|0)+40|0;p=37;break}i=-1001e3-e|0;g=c[j>>2]|0;if((c[g+8>>2]|0)!=22){h=c[g>>2]|0;if((i|0)>(d[h+6>>0]|0|0)){h=i;p=47}else{g=h+16+(i+-1<<4)|0;p=37}}else g=0}while(0);do if((p|0)==37){if((g|0)!=316344?(c[g+8>>2]&15|0)==2:0){p=282235;c[q>>2]=f;f=q+4|0;c[f>>2]=p;q=Vv(b,282250,q)|0;Vx(b,e,q)|0;l=r;return}if(o){g=c[j>>2]|0;h=c[b+8>>2]|0;p=41;break}if((e|0)>=-1000999){g=(c[b+8>>2]|0)+(e<<4)|0;p=48;break}if((e|0)!=-1001e3){g=c[j>>2]|0;if((c[g+8>>2]|0)==22){g=0;break}else{h=-1001e3-e|0;p=47;break}}else{g=(c[b+12>>2]|0)+40|0;p=48;break}}while(0);if((p|0)==41){g=g+(e<<4)|0;if(g>>>0<h>>>0)p=48;else g=0}else if((p|0)==47){g=c[g>>2]|0;if((h|0)>(d[g+6>>0]|0|0))g=0;else{g=g+16+(h+-1<<4)|0;p=48}}if((p|0)==48)if((g|0)==316344)g=0;else g=(c[g+8>>2]&15)+1|0;p=c[5104+(g<<2)>>2]|0;c[q>>2]=f;f=q+4|0;c[f>>2]=p;q=Vv(b,282250,q)|0;Vx(b,e,q)|0;l=r;return}function Zx(b,e){b=b|0;e=e|0;var f=0.0,g=0,i=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;g=c[b+16>>2]|0;do if((e|0)<=0){if((e|0)>=-1000999){i=(c[b+8>>2]|0)+(e<<4)|0;break}if((e|0)==-1001e3){i=(c[b+12>>2]|0)+40|0;break}i=-1001e3-e|0;g=c[g>>2]|0;if((c[g+8>>2]|0)==22)i=316344;else{k=c[g>>2]|0;i=(i|0)>(d[k+6>>0]|0)?316344:k+16+(i+-1<<4)|0}}else{i=(c[g>>2]|0)+(e<<4)|0;i=i>>>0<(c[b+8>>2]|0)>>>0?i:316344}while(0);g=c[i+8>>2]|0;if((g|0)==3){f=+h[i>>3];l=n;return +f}do if((g|0)==19){m=i;f=+((c[m>>2]|0)>>>0)+4294967296.0*+(c[m+4>>2]|0)}else{if((g&15|0)==4){k=Ww((c[i>>2]|0)+16|0,m)|0;g=c[i>>2]|0;if((a[g+4>>0]|0)==4)g=d[g+7>>0]|0;else g=c[g+12>>2]|0;if((k|0)==(g+1|0)){b=(c[m+8>>2]|0)==19;e=c[m>>2]|0;m=c[m+4>>2]|0;c[j>>2]=e;c[j+4>>2]=m;f=b?+(e>>>0)+4294967296.0*+(m|0):+h[j>>3];break}}Yx(b,e,281351);f=0.0;l=n;return +f}while(0);l=n;return +f}function _x(b,e){b=b|0;e=e|0;var f=0,g=0,i=0,j=0.0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+16|0;n=o;i=b+16|0;f=c[i>>2]|0;k=(e|0)>0;do if(!k){if((e|0)>=-1000999){f=(c[b+8>>2]|0)+(e<<4)|0;break}if((e|0)==-1001e3){f=(c[b+12>>2]|0)+40|0;break}g=-1001e3-e|0;f=c[f>>2]|0;if((c[f+8>>2]|0)==22)f=316344;else{f=c[f>>2]|0;f=(g|0)>(d[f+6>>0]|0)?316344:f+16+(g+-1<<4)|0}}else{f=(c[f>>2]|0)+(e<<4)|0;f=f>>>0<(c[b+8>>2]|0)>>>0?f:316344}while(0);g=c[f+8>>2]|0;if((g|0)==19){e=f;b=c[e+4>>2]|0;e=c[e>>2]|0;z=b;l=o;return e|0}a:while(1){switch(g|0){case 3:{m=13;break a}case 19:{m=16;break a}default:{}}if((g&15|0)!=4)break;g=Ww((c[f>>2]|0)+16|0,n)|0;f=c[f>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)!=(f+1|0))break;f=n;g=c[n+8>>2]|0}if((m|0)==13){p=+h[f>>3];j=+A(+p);if(!(p!=j)?j>=-9223372036854775808.0&j<9223372036854775808.0:0){g=~~j>>>0;f=+B(j)>=1.0?(j>0.0?~~+P(+A(j/4294967296.0),4294967295.0)>>>0:~~+N((j-+(~~j>>>0))/4294967296.0)>>>0):0;m=23}}else if((m|0)==16){g=c[f>>2]|0;f=c[f+4>>2]|0;m=23}if((m|0)==23){b=f;e=g;z=b;l=o;return e|0}f=c[i>>2]|0;do if(!k){if((e|0)>=-1000999){g=(c[b+8>>2]|0)+(e<<4)|0;break}if((e|0)==-1001e3){g=(c[b+12>>2]|0)+40|0;break}g=-1001e3-e|0;f=c[f>>2]|0;if((c[f+8>>2]|0)==22)g=316344;else{m=c[f>>2]|0;g=(g|0)>(d[m+6>>0]|0)?316344:m+16+(g+-1<<4)|0}}else{g=(c[f>>2]|0)+(e<<4)|0;g=g>>>0<(c[b+8>>2]|0)>>>0?g:316344}while(0);f=c[g+8>>2]|0;if((f|0)!=3)do if((f|0)!=19){if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,n)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0))break}Yx(b,e,281351);b=0;e=0;z=b;l=o;return e|0}while(0);Vx(b,e,282310)|0;b=0;e=0;z=b;l=o;return e|0}function $x(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0;r=l;l=l+16|0;q=r;n=b+16|0;m=c[n>>2]|0;o=(e|0)>0;do if(o){i=(c[m>>2]|0)+(e<<4)|0;if(i>>>0>=(c[b+8>>2]|0)>>>0){b=g;e=f;z=b;l=r;return e|0}}else{if((e|0)>=-1000999){i=(c[b+8>>2]|0)+(e<<4)|0;break}if((e|0)==-1001e3){i=(c[b+12>>2]|0)+40|0;break}j=-1001e3-e|0;i=c[m>>2]|0;if((c[i+8>>2]|0)==22){b=g;e=f;z=b;l=r;return e|0}i=c[i>>2]|0;if((j|0)>(d[i+6>>0]|0)){b=g;e=f;z=b;l=r;return e|0}else i=i+16+(j+-1<<4)|0}while(0);if((i|0)==316344){b=g;e=f;z=b;l=r;return e|0}if(!(c[i+8>>2]&15)){b=g;e=f;z=b;l=r;return e|0}do if(!o){if((e|0)>=-1000999){i=(c[b+8>>2]|0)+(e<<4)|0;break}if((e|0)==-1001e3){i=(c[b+12>>2]|0)+40|0;break}j=-1001e3-e|0;i=c[m>>2]|0;if((c[i+8>>2]|0)==22)i=316344;else{i=c[i>>2]|0;i=(j|0)>(d[i+6>>0]|0)?316344:i+16+(j+-1<<4)|0}}else{i=(c[m>>2]|0)+(e<<4)|0;i=i>>>0<(c[b+8>>2]|0)>>>0?i:316344}while(0);j=c[i+8>>2]|0;if((j|0)==19){e=i;b=c[e+4>>2]|0;e=c[e>>2]|0;z=b;l=r;return e|0}a:while(1){switch(j|0){case 3:{p=23;break a}case 19:{p=26;break a}default:{}}if((j&15|0)!=4)break;j=Ww((c[i>>2]|0)+16|0,q)|0;i=c[i>>2]|0;if((a[i+4>>0]|0)==4)i=d[i+7>>0]|0;else i=c[i+12>>2]|0;if((j|0)!=(i+1|0))break;i=q;j=c[q+8>>2]|0}if((p|0)==23){s=+h[i>>3];k=+A(+s);if(!(s!=k)?k>=-9223372036854775808.0&k<9223372036854775808.0:0){j=~~k>>>0;i=+B(k)>=1.0?(k>0.0?~~+P(+A(k/4294967296.0),4294967295.0)>>>0:~~+N((k-+(~~k>>>0))/4294967296.0)>>>0):0;p=33}}else if((p|0)==26){j=c[i>>2]|0;i=c[i+4>>2]|0;p=33}if((p|0)==33){b=i;e=j;z=b;l=r;return e|0}i=c[n>>2]|0;do if(!o){if((e|0)>=-1000999){j=(c[b+8>>2]|0)+(e<<4)|0;break}if((e|0)==-1001e3){j=(c[b+12>>2]|0)+40|0;break}j=-1001e3-e|0;i=c[i>>2]|0;if((c[i+8>>2]|0)==22)j=316344;else{p=c[i>>2]|0;j=(j|0)>(d[p+6>>0]|0)?316344:p+16+(j+-1<<4)|0}}else{j=(c[i>>2]|0)+(e<<4)|0;j=j>>>0<(c[b+8>>2]|0)>>>0?j:316344}while(0);i=c[j+8>>2]|0;if((i|0)!=3)do if((i|0)!=19){if((i&15|0)==4){f=Ww((c[j>>2]|0)+16|0,q)|0;i=c[j>>2]|0;if((a[i+4>>0]|0)==4)i=d[i+7>>0]|0;else i=c[i+12>>2]|0;if((f|0)==(i+1|0))break}Yx(b,e,281351);b=0;e=0;z=b;l=r;return e|0}while(0);Vx(b,e,282310)|0;b=0;e=0;z=b;l=r;return e|0}function ay(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;k=m;f=c[a+12>>2]|0;i=a+4|0;d=c[i>>2]|0;j=a+8|0;e=c[j>>2]|0;if((d-e|0)>>>0>=b>>>0){a=c[a>>2]|0;k=e;k=a+k|0;l=m;return k|0}h=d<<1;h=(h-e|0)>>>0<b>>>0?e+b|0:h;if(h>>>0<e>>>0|(h-e|0)>>>0<b>>>0)Wx(f,282347,m+16|0);g=gw(f,h)|0;PQ(g|0,c[a>>2]|0,c[j>>2]|0)|0;if((c[a>>2]|0)!=(a+16|0)){b=f+8|0;e=c[b>>2]|0;d=e+-16|0;e=e+-32|0;do{c[k>>2]=c[e>>2];c[k+4>>2]=c[e+4>>2];c[k+8>>2]=c[e+8>>2];c[k+12>>2]=c[e+12>>2];c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];c[d>>2]=c[k>>2];c[d+4>>2]=c[k+4>>2];c[d+8>>2]=c[k+8>>2];c[d+12>>2]=c[k+12>>2];e=e+16|0;d=d+-16|0}while(e>>>0<d>>>0);c[b>>2]=(c[b>>2]|0)+-16}c[a>>2]=g;c[i>>2]=h;a=g;k=c[j>>2]|0;k=a+k|0;l=m;return k|0}function by(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;k=m;f=c[b+12>>2]|0;j=f+8|0;e=c[j>>2]|0;switch(c[e+-8>>2]&15){case 4:{e=e+-16|0;g=5;break}case 3:{if((c[(c[f+12>>2]|0)+12>>2]|0)>0){Sw(f);e=c[j>>2]|0}e=e+-16|0;Xw(f,e);g=5;break}default:{i=0;f=0}}if((g|0)==5){e=c[e>>2]|0;if((a[e+4>>0]|0)==4)f=d[e+7>>0]|0;else f=c[e+12>>2]|0;i=e+16|0}h=b+16|0;if((c[b>>2]|0)!=(h|0)){g=c[j>>2]|0;e=g+-16|0;g=g+-32|0;do{c[k>>2]=c[g>>2];c[k+4>>2]=c[g+4>>2];c[k+8>>2]=c[g+8>>2];c[k+12>>2]=c[g+12>>2];c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];c[e>>2]=c[k>>2];c[e+4>>2]=c[k+4>>2];c[e+8>>2]=c[k+8>>2];c[e+12>>2]=c[k+12>>2];g=g+16|0;e=e+-16|0}while(g>>>0<e>>>0)}PQ(ay(b,f)|0,i|0,f|0)|0;g=b+8|0;c[g>>2]=(c[g>>2]|0)+f;b=(c[b>>2]|0)!=(h|0);g=b?-2:-1;h=c[j>>2]|0;f=h+-16|0;e=h+(g<<4)|0;g=g+1|0;if((g|0)<-1){i=f;g=h+(g<<4)|0;do{c[k>>2]=c[g>>2];c[k+4>>2]=c[g+4>>2];c[k+8>>2]=c[g+8>>2];c[k+12>>2]=c[g+12>>2];c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];c[i>>2]=c[k>>2];c[i+4>>2]=c[k+4>>2];c[i+8>>2]=c[k+8>>2];c[i+12>>2]=c[k+12>>2];g=g+16|0;i=i+-16|0}while(g>>>0<i>>>0)}if(!b){k=c[j>>2]|0;k=k+-16|0;c[j>>2]=k;l=m;return}do{c[k>>2]=c[e>>2];c[k+4>>2]=c[e+4>>2];c[k+8>>2]=c[e+8>>2];c[k+12>>2]=c[e+12>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];c[f+8>>2]=c[k+8>>2];c[f+12>>2]=c[k+12>>2];e=e+16|0;f=f+-16|0}while(e>>>0<f>>>0);k=c[j>>2]|0;k=k+-16|0;c[j>>2]=k;l=m;return}function cy(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+1120|0;r=w+56|0;o=w+40|0;k=w+24|0;g=w+16|0;p=w;n=w+72|0;j=w+1104|0;v=b+8|0;q=b+16|0;s=(c[v>>2]|0)-((c[c[q>>2]>>2]|0)+16)|0;t=s>>4;u=t+1|0;if(e){c[g>>2]=e;Vv(b,282371,g)|0;i=oP(e,285926)|0;c[n+4>>2]=i;if(!i){g=YN(c[8240]|0)|0;h=(Tv(b,u,0)|0)+1|0;c[k>>2]=282392;c[k+4>>2]=h;c[k+8>>2]=g;Vv(b,282375,k)|0;g=c[v>>2]|0;h=g+-16|0;j=c[q>>2]|0;do if((s|0)<=-16){if((u|0)>=-1000999){g=g+(u<<4)|0;break}if((u|0)==-1001e3){g=(c[b+12>>2]|0)+40|0;break}i=-1001001-t|0;g=c[j>>2]|0;if((c[g+8>>2]|0)==22)g=316344;else{g=c[g>>2]|0;g=(i|0)>(d[g+6>>0]|0|0)?316344:g+16+(i+-1<<4)|0}}else{b=(c[j>>2]|0)+(u<<4)|0;g=b>>>0<g>>>0?b:316344}while(0);i=g+16|0;if(i>>>0<h>>>0){j=h;do{c[k>>2]=c[i>>2];c[k+4>>2]=c[i+4>>2];c[k+8>>2]=c[i+8>>2];c[k+12>>2]=c[i+12>>2];c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];c[j+8>>2]=c[k+8>>2];c[j+12>>2]=c[k+12>>2];i=i+16|0;j=j+-16|0}while(i>>>0<j>>>0)}if(g>>>0<h>>>0)do{c[k>>2]=c[g>>2];c[k+4>>2]=c[g+4>>2];c[k+8>>2]=c[g+8>>2];c[k+12>>2]=c[g+12>>2];c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];c[g+8>>2]=c[h+8>>2];c[g+12>>2]=c[h+12>>2];c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];c[h+8>>2]=c[k+8>>2];c[h+12>>2]=c[k+12>>2];g=g+16|0;h=h+-16|0}while(g>>>0<h>>>0);b=7;u=c[v>>2]|0;u=u+-16|0;c[v>>2]=u;l=w;return b|0}}else{h=b+12|0;g=c[h>>2]|0;if((c[g+12>>2]|0)>0){Sw(b);g=c[h>>2]|0}h=g+280+(((282364>>>0)%127|0)<<2)|0;g=c[h>>2]|0;if(JN(282364,g+16|0)|0){g=xx(b,282364,6)|0;c[h>>2]=g}k=c[v>>2]|0;c[k>>2]=g;c[k+8>>2]=(a[g+4>>0]|64)&255;c[v>>2]=(c[v>>2]|0)+16;c[n+4>>2]=33140}if(dy(n,j)|0){k=c[n>>2]|0;c[n>>2]=k+1;a[n+8+k>>0]=10}g=c[j>>2]|0;i=(e|0)!=0;do if(i&(g|0)==27){h=n+4|0;k=jQ(e,c[h>>2]|0)|0;c[h>>2]=k;if(k|0){dy(n,j)|0;g=c[j>>2]|0;break}g=YN(c[8240]|0)|0;h=(Tv(b,u,0)|0)+1|0;c[o>>2]=282397;c[o+4>>2]=h;c[o+8>>2]=g;Vv(b,282375,o)|0;g=c[v>>2]|0;h=g+-16|0;j=c[q>>2]|0;do if((s|0)<=-16){if((u|0)>=-1000999){g=g+(u<<4)|0;break}if((u|0)==-1001e3){g=(c[b+12>>2]|0)+40|0;break}i=-1001001-t|0;g=c[j>>2]|0;if((c[g+8>>2]|0)==22)g=316344;else{g=c[g>>2]|0;g=(i|0)>(d[g+6>>0]|0|0)?316344:g+16+(i+-1<<4)|0}}else{b=(c[j>>2]|0)+(u<<4)|0;g=b>>>0<g>>>0?b:316344}while(0);i=g+16|0;if(i>>>0<h>>>0){j=h;do{c[o>>2]=c[i>>2];c[o+4>>2]=c[i+4>>2];c[o+8>>2]=c[i+8>>2];c[o+12>>2]=c[i+12>>2];c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];c[j>>2]=c[o>>2];c[j+4>>2]=c[o+4>>2];c[j+8>>2]=c[o+8>>2];c[j+12>>2]=c[o+12>>2];i=i+16|0;j=j+-16|0}while(i>>>0<j>>>0)}if(g>>>0<h>>>0)do{c[o>>2]=c[g>>2];c[o+4>>2]=c[g+4>>2];c[o+8>>2]=c[g+8>>2];c[o+12>>2]=c[g+12>>2];c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];c[g+8>>2]=c[h+8>>2];c[g+12>>2]=c[h+12>>2];c[h>>2]=c[o>>2];c[h+4>>2]=c[o+4>>2];c[h+8>>2]=c[o+8>>2];c[h+12>>2]=c[o+12>>2];g=g+16|0;h=h+-16|0}while(g>>>0<h>>>0);b=7;u=c[v>>2]|0;u=u+-16|0;c[v>>2]=u;l=w;return b|0}while(0);if((g|0)!=-1){o=c[n>>2]|0;c[n>>2]=o+1;a[n+8+o>>0]=g}g=c[v>>2]|0;switch(c[g+-8>>2]&15){case 4:{g=g+-16|0;m=46;break}case 3:{if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);g=c[v>>2]|0}g=g+-16|0;Xw(b,g);m=46;break}default:g=0}if((m|0)==46)g=(c[g>>2]|0)+16|0;e=dw(b,15,n,g,f)|0;g=c[n+4>>2]|0;h=zP(g)|0;if(i)uP(g)|0;if(!h){g=c[v>>2]|0;h=g+-16|0;j=c[q>>2]|0;do if((s|0)<=-16){if((u|0)>=-1000999){g=g+(u<<4)|0;break}if((u|0)==-1001e3){g=(c[b+12>>2]|0)+40|0;break}i=-1001001-t|0;g=c[j>>2]|0;if((c[g+8>>2]|0)==22)g=316344;else{g=c[g>>2]|0;g=(i|0)>(d[g+6>>0]|0|0)?316344:g+16+(i+-1<<4)|0}}else{b=(c[j>>2]|0)+(u<<4)|0;g=b>>>0<g>>>0?b:316344}while(0);i=g+16|0;if(i>>>0<h>>>0){j=h;do{c[p>>2]=c[i>>2];c[p+4>>2]=c[i+4>>2];c[p+8>>2]=c[i+8>>2];c[p+12>>2]=c[i+12>>2];c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];c[j>>2]=c[p>>2];c[j+4>>2]=c[p+4>>2];c[j+8>>2]=c[p+8>>2];c[j+12>>2]=c[p+12>>2];i=i+16|0;j=j+-16|0}while(i>>>0<j>>>0)}if(g>>>0<h>>>0)do{c[p>>2]=c[g>>2];c[p+4>>2]=c[g+4>>2];c[p+8>>2]=c[g+8>>2];c[p+12>>2]=c[g+12>>2];c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];c[g+8>>2]=c[h+8>>2];c[g+12>>2]=c[h+12>>2];c[h>>2]=c[p>>2];c[h+4>>2]=c[p+4>>2];c[h+8>>2]=c[p+8>>2];c[h+12>>2]=c[p+12>>2];g=g+16|0;h=h+-16|0}while(g>>>0<h>>>0);b=e;u=c[v>>2]|0;u=u+-16|0;c[v>>2]=u;l=w;return b|0}if((s|0)>-32){h=c[c[q>>2]>>2]|0;j=c[v>>2]|0;g=h+(t+2<<4)|0;if(j>>>0<g>>>0){h=(h+(u<<4)+8+4+(3-j)|0)>>>4;i=j;do{c[i+8>>2]=0;i=i+16|0}while(i>>>0<g>>>0);c[v>>2]=j+(h+1<<4)}}else g=(c[v>>2]|0)+(t+2<<4)|0;c[v>>2]=g;g=YN(c[8240]|0)|0;h=(Tv(b,u,0)|0)+1|0;c[r>>2]=282404;c[r+4>>2]=h;c[r+8>>2]=g;Vv(b,282375,r)|0;g=c[v>>2]|0;h=g+-16|0;j=c[q>>2]|0;do if((s|0)<=-16){if((u|0)>=-1000999){g=g+(u<<4)|0;break}if((u|0)==-1001e3){g=(c[b+12>>2]|0)+40|0;break}i=-1001001-t|0;g=c[j>>2]|0;if((c[g+8>>2]|0)==22)g=316344;else{g=c[g>>2]|0;g=(i|0)>(d[g+6>>0]|0|0)?316344:g+16+(i+-1<<4)|0}}else{b=(c[j>>2]|0)+(u<<4)|0;g=b>>>0<g>>>0?b:316344}while(0);i=g+16|0;if(i>>>0<h>>>0){j=h;do{c[r>>2]=c[i>>2];c[r+4>>2]=c[i+4>>2];c[r+8>>2]=c[i+8>>2];c[r+12>>2]=c[i+12>>2];c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];c[j>>2]=c[r>>2];c[j+4>>2]=c[r+4>>2];c[j+8>>2]=c[r+8>>2];c[j+12>>2]=c[r+12>>2];i=i+16|0;j=j+-16|0}while(i>>>0<j>>>0)}if(g>>>0<h>>>0)do{c[r>>2]=c[g>>2];c[r+4>>2]=c[g+4>>2];c[r+8>>2]=c[g+8>>2];c[r+12>>2]=c[g+12>>2];c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];c[g+8>>2]=c[h+8>>2];c[g+12>>2]=c[h+12>>2];c[h>>2]=c[r>>2];c[h+4>>2]=c[r+4>>2];c[h+8>>2]=c[r+8>>2];c[h+12>>2]=c[r+12>>2];g=g+16|0;h=h+-16|0}while(g>>>0<h>>>0);b=7;u=c[v>>2]|0;u=u+-16|0;c[v>>2]=u;l=w;return b|0}function dy(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;c[b>>2]=0;f=b+4|0;e=_P(c[f>>2]|0)|0;a:do switch(e|0){case -1:{b=0;e=-1;break}case 239:{e=c[b>>2]|0;c[b>>2]=e+1;a[b+8+e>>0]=-17;e=_P(c[f>>2]|0)|0;switch(e|0){case -1:{b=0;e=-1;break a}case 187:break;default:{g=5;break a}}e=c[b>>2]|0;c[b>>2]=e+1;a[b+8+e>>0]=-69;e=_P(c[f>>2]|0)|0;switch(e|0){case -1:{b=0;e=-1;break a}case 191:break;default:{g=5;break a}}a[(c[b>>2]|0)+(b+8)>>0]=-65;c[b>>2]=0;e=_P(c[f>>2]|0)|0;g=5;break}default:g=5}while(0);if((g|0)==5){c[d>>2]=e;if((e|0)!=35){g=0;return g|0}b:while(1)switch(_P(c[f>>2]|0)|0){case 10:case -1:break b;default:{}}b=1;e=_P(c[f>>2]|0)|0}c[d>>2]=e;g=b;return g|0}function ey(a,b,d){a=a|0;b=b|0;d=d|0;a=c[b>>2]|0;if((a|0)>0){c[d>>2]=a;c[b>>2]=0;b=b+8|0;return b|0}a=b+4|0;if(yP(c[a>>2]|0)|0){b=0;return b|0}b=b+8|0;c[d>>2]=iQ(b,1,1024,c[a>>2]|0)|0;return b|0}function fy(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;a=b+4|0;e=c[a>>2]|0;if(!e){b=0;return b|0}c[d>>2]=e;c[a>>2]=0;b=c[b>>2]|0;return b|0}function gy(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;i=j;f=c[a+16>>2]|0;do if((b|0)<=0){if((b|0)>=-1000999){b=(c[a+8>>2]|0)+(b<<4)|0;break}if((b|0)==-1001e3){b=(c[a+12>>2]|0)+40|0;break}g=-1001e3-b|0;b=c[f>>2]|0;if((c[b+8>>2]|0)==22)b=316344;else{b=c[b>>2]|0;b=(g|0)>(d[b+6>>0]|0|0)?316344:b+16+(g+-1<<4)|0}}else{b=(c[f>>2]|0)+(b<<4)|0;b=b>>>0<(c[a+8>>2]|0)>>>0?b:316344}while(0);f=c[b+8>>2]|0;switch(f&15){case 5:{b=(c[b>>2]|0)+24|0;break}case 7:{b=(c[b>>2]|0)+8|0;break}default:b=(c[a+12>>2]|0)+244+((f&15)<<2)|0}b=c[b>>2]|0;if(!b){i=0;l=j;return i|0}h=a+8|0;f=c[h>>2]|0;c[f>>2]=b;c[f+8>>2]=69;c[h>>2]=(c[h>>2]|0)+16;Uv(a,e);f=c[h>>2]|0;b=f+-16|0;f=Cx(c[f+-32>>2]|0,b)|0;c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];b=c[h>>2]|0;f=c[b+-8>>2]&15;if(!f){f=0;b=b+-32|0}else{g=b+-16|0;b=b+-32|0;do{c[i>>2]=c[b>>2];c[i+4>>2]=c[b+4>>2];c[i+8>>2]=c[b+8>>2];c[i+12>>2]=c[b+12>>2];c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];b=b+16|0;g=g+-16|0}while(b>>>0<g>>>0);b=(c[h>>2]|0)+-16|0}c[h>>2]=b;i=f;l=j;return i|0}function hy(b){b=b|0;var e=0,f=0.0,g=0,i=0,j=0,k=0,m=0,n=0,o=0.0;n=l;l=l+32|0;k=n+16|0;j=n;g=(c[c[b+16>>2]>>2]|0)+16|0;m=b+8|0;e=c[m>>2]|0;Qx(b,e,g>>>0<e>>>0?g:316344);g=c[m>>2]|0;c[m>>2]=g+16;e=c[g+8>>2]|0;if((e|0)==19){k=g;b=c[k+4>>2]|0;k=c[k>>2]|0;j=c[m>>2]|0;j=j+-16|0;c[m>>2]=j;z=b;l=n;return k|0}a:while(1){switch(e|0){case 3:{i=5;break a}case 19:{i=8;break a}default:{}}if((e&15|0)!=4){i=16;break}i=Ww((c[g>>2]|0)+16|0,j)|0;e=c[g>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((i|0)!=(e+1|0)){i=16;break}g=j;e=c[j+8>>2]|0}if((i|0)==5){o=+h[g>>3];f=+A(+o);if(!(o!=f)?f>=-9223372036854775808.0&f<9223372036854775808.0:0){g=~~f>>>0;e=+B(f)>=1.0?(f>0.0?~~+P(+A(f/4294967296.0),4294967295.0)>>>0:~~+N((f-+(~~f>>>0))/4294967296.0)>>>0):0;i=15}else i=16}else if((i|0)==8){e=g;g=c[e>>2]|0;e=c[e+4>>2]|0;i=15}if((i|0)==15){b=e;k=g;j=c[m>>2]|0;j=j+-16|0;c[m>>2]=j;z=b;l=n;return k|0}else if((i|0)==16){Wx(b,282409,k);b=0;k=0;j=c[m>>2]|0;j=j+-16|0;c[m>>2]=j;z=b;l=n;return k|0}return 0}function iy(e,f,g){e=e|0;f=f|0;g=g|0;var i=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,C=0,D=0,E=0.0;D=l;l=l+48|0;x=D+40|0;w=D+32|0;y=D+24|0;v=D+16|0;z=D;if((f+1000999|0)>>>0>1000999){n=e+16|0;q=n;r=f;n=c[n>>2]|0}else{q=e+16|0;n=c[q>>2]|0;r=((c[e+8>>2]|0)-(c[n>>2]|0)>>4)+f|0}t=(r|0)>0;do if(!t){if((r|0)>=-1000999){i=(c[e+8>>2]|0)+(r<<4)|0;break}if((r|0)==-1001e3){i=(c[e+12>>2]|0)+40|0;break}i=-1001e3-r|0;k=c[n>>2]|0;if((c[k+8>>2]|0)==22)i=316344;else{p=c[k>>2]|0;i=(i|0)>(d[p+6>>0]|0)?316344:p+16+(i+-1<<4)|0}}else{i=(c[n>>2]|0)+(r<<4)|0;i=i>>>0<(c[e+8>>2]|0)>>>0?i:316344}while(0);k=c[i+8>>2]|0;switch(k&15){case 5:{i=(c[i>>2]|0)+24|0;break}case 7:{i=(c[i>>2]|0)+8|0;break}default:i=(c[e+12>>2]|0)+244+((k&15)<<2)|0}i=c[i>>2]|0;do if(!i){q=n;C=42}else{p=e+8|0;o=c[p>>2]|0;c[o>>2]=i;c[o+8>>2]=69;c[p>>2]=(c[p>>2]|0)+16;o=e+12|0;i=c[o>>2]|0;if((c[i+12>>2]|0)>0){Sw(e);i=c[o>>2]|0}k=i+280+(((282441>>>0)%127|0)<<2)|0;i=c[k>>2]|0;if(JN(282441,i+16|0)|0){i=xx(e,282441,10)|0;c[k>>2]=i}n=c[p>>2]|0;c[n>>2]=i;c[n+8>>2]=(a[i+4>>0]|64)&255;i=c[p>>2]|0;c[p>>2]=i+16;n=Cx(c[i+-16>>2]|0,i)|0;c[i>>2]=c[n>>2];c[i+4>>2]=c[n+4>>2];c[i+8>>2]=c[n+8>>2];c[i+12>>2]=c[n+12>>2];i=c[p>>2]|0;if(!(c[i+-8>>2]&15)){c[p>>2]=i+-32;q=c[q>>2]|0;C=42;break}k=i+-16|0;i=i+-32|0;do{c[z>>2]=c[i>>2];c[z+4>>2]=c[i+4>>2];c[z+8>>2]=c[i+8>>2];c[z+12>>2]=c[i+12>>2];c[i>>2]=c[k>>2];c[i+4>>2]=c[k+4>>2];c[i+8>>2]=c[k+8>>2];c[i+12>>2]=c[k+12>>2];c[k>>2]=c[z>>2];c[k+4>>2]=c[z+4>>2];c[k+8>>2]=c[z+8>>2];c[k+12>>2]=c[z+12>>2];i=i+16|0;k=k+-16|0}while(i>>>0<k>>>0);n=(c[p>>2]|0)+-16|0;c[p>>2]=n;i=c[q>>2]|0;do if(!t){if((r|0)>=-1000999){i=n+(r<<4)|0;break}if((r|0)==-1001e3){i=(c[o>>2]|0)+40|0;break}k=-1001e3-r|0;i=c[i>>2]|0;if((c[i+8>>2]|0)==22)i=316344;else{i=c[i>>2]|0;i=(k|0)>(d[i+6>>0]|0)?316344:i+16+(k+-1<<4)|0}}else{i=(c[i>>2]|0)+(r<<4)|0;i=i>>>0<n>>>0?i:316344}while(0);c[n>>2]=c[i>>2];c[n+4>>2]=c[i+4>>2];c[n+8>>2]=c[i+8>>2];c[n+12>>2]=c[i+12>>2];k=c[p>>2]|0;c[p>>2]=k+16;k=k+-16|0;n=e+106|0;i=(b[n>>1]|0)+1<<16>>16;b[n>>1]=i;if((i&65535)>199){if(i<<16>>16==200)mw(e,279953,v);if((i&65535)>224)qw(e,6)}i=e+104|0;b[i>>1]=(b[i>>1]|0)+1<<16>>16;if(!(uw(e,k,1)|0))Sx(e);b[i>>1]=(b[i>>1]|0)+-1<<16>>16;b[n>>1]=(b[n>>1]|0)+-1<<16>>16}while(0);a:do if((C|0)==42){p=(f|0)>0;do if(p){i=(c[q>>2]|0)+(f<<4)|0;k=c[e+8>>2]|0;if(i>>>0<k>>>0)C=50;else C=136}else{if((f|0)>=-1000999){i=(c[e+8>>2]|0)+(f<<4)|0;C=50;break}if((f|0)==-1001e3){i=(c[e+12>>2]|0)+40|0;C=50;break}n=-1001e3-f|0;i=c[q>>2]|0;if((c[i+8>>2]|0)!=22?(s=c[i>>2]|0,(n|0)<=(d[s+6>>0]|0)):0){i=s+16+(n+-1<<4)|0;C=50}else C=142}while(0);do if((C|0)==50){b:do if((i|0)!=316344)switch(c[i+8>>2]&15){case 3:{do if(!p){if((f|0)>=-1000999){i=(c[e+8>>2]|0)+(f<<4)|0;break}if((f|0)==-1001e3){i=(c[e+12>>2]|0)+40|0;break}i=-1001e3-f|0;k=c[q>>2]|0;if((c[k+8>>2]|0)==22)i=316344;else{C=c[k>>2]|0;i=(i|0)>(d[C+6>>0]|0)?316344:C+16+(i+-1<<4)|0}}else{i=(c[q>>2]|0)+(f<<4)|0;i=i>>>0<(c[e+8>>2]|0)>>>0?i:316344}while(0);if((c[i+8>>2]|0)!=19){do if(!p){if((f|0)>=-1000999){k=(c[e+8>>2]|0)+(f<<4)|0;break}if((f|0)==-1001e3){k=(c[e+12>>2]|0)+40|0;break}k=-1001e3-f|0;i=c[q>>2]|0;if((c[i+8>>2]|0)==22)k=316344;else{C=c[i>>2]|0;k=(k|0)>(d[C+6>>0]|0)?316344:C+16+(k+-1<<4)|0}}else{k=(c[q>>2]|0)+(f<<4)|0;k=k>>>0<(c[e+8>>2]|0)>>>0?k:316344}while(0);i=c[k+8>>2]|0;c:do if((i|0)==3)m=+h[k>>3];else d:do if((i|0)==19){C=k;m=+((c[C>>2]|0)>>>0)+4294967296.0*+(c[C+4>>2]|0)}else{do if((i&15|0)==4){n=Ww((c[k>>2]|0)+16|0,z)|0;i=c[k>>2]|0;if((a[i+4>>0]|0)==4)i=d[i+7>>0]|0;else i=c[i+12>>2]|0;if((n|0)!=(i+1|0))break;y=(c[z+8>>2]|0)==19;C=z;z=c[C>>2]|0;C=c[C+4>>2]|0;c[j>>2]=z;c[j+4>>2]=C;m=y?+(z>>>0)+4294967296.0*+(C|0):+h[j>>3];break d}while(0);m=0.0;break c}while(0);while(0);h[w>>3]=m;Vv(e,282455,w)|0;break a}do if(!p){if((f|0)>=-1000999){i=(c[e+8>>2]|0)+(f<<4)|0;break}if((f|0)==-1001e3){i=(c[e+12>>2]|0)+40|0;break}k=-1001e3-f|0;i=c[q>>2]|0;if((c[i+8>>2]|0)==22)i=316344;else{i=c[i>>2]|0;i=(k|0)>(d[i+6>>0]|0)?316344:i+16+(k+-1<<4)|0}}else{i=(c[q>>2]|0)+(f<<4)|0;i=i>>>0<(c[e+8>>2]|0)>>>0?i:316344}while(0);k=c[i+8>>2]|0;do if((k|0)!=19){e:while(1){switch(k|0){case 3:{C=73;break e}case 19:{C=76;break e}default:{}}if((k&15|0)!=4){C=84;break}k=Ww((c[i>>2]|0)+16|0,z)|0;i=c[i>>2]|0;if((a[i+4>>0]|0)==4)i=d[i+7>>0]|0;else i=c[i+12>>2]|0;if((k|0)!=(i+1|0)){C=84;break}i=z;k=c[z+8>>2]|0}if((C|0)==73){E=+h[i>>3];m=+A(+E);if(!(E!=m)?m>=-9223372036854775808.0&m<9223372036854775808.0:0){k=~~m>>>0;i=+B(m)>=1.0?(m>0.0?~~+P(+A(m/4294967296.0),4294967295.0)>>>0:~~+N((m-+(~~m>>>0))/4294967296.0)>>>0):0;C=83}else C=84}else if((C|0)==76){k=c[i>>2]|0;i=c[i+4>>2]|0;C=83}if((C|0)==83)break;else if((C|0)==84){k=0;i=0;break}}else{k=c[i>>2]|0;i=c[i+4>>2]|0}while(0);C=y;c[C>>2]=k;c[C+4>>2]=i;Vv(e,282452,y)|0;break a}case 4:{n=e+8|0;o=c[n>>2]|0;do if(!p){if((f|0)>=-1000999){i=o+(f<<4)|0;break}if((f|0)==-1001e3){i=(c[e+12>>2]|0)+40|0;break}k=-1001e3-f|0;i=c[q>>2]|0;if((c[i+8>>2]|0)==22)i=316344;else{i=c[i>>2]|0;i=(k|0)>(d[i+6>>0]|0)?316344:i+16+(k+-1<<4)|0}}else{i=(c[q>>2]|0)+(f<<4)|0;i=i>>>0<o>>>0?i:316344}while(0);c[o>>2]=c[i>>2];c[o+4>>2]=c[i+4>>2];c[o+8>>2]=c[i+8>>2];c[o+12>>2]=c[i+12>>2];c[n>>2]=(c[n>>2]|0)+16;break a}case 1:{do if(!p){if((f|0)>=-1000999){i=(c[e+8>>2]|0)+(f<<4)|0;break}if((f|0)==-1001e3){i=(c[e+12>>2]|0)+40|0;break}k=-1001e3-f|0;i=c[q>>2]|0;if((c[i+8>>2]|0)==22)i=316344;else{i=c[i>>2]|0;i=(k|0)>(d[i+6>>0]|0)?316344:i+16+(k+-1<<4)|0}}else{i=(c[q>>2]|0)+(f<<4)|0;i=i>>>0<(c[e+8>>2]|0)>>>0?i:316344}while(0);switch(c[i+8>>2]|0){case 0:{i=307100;break}case 1:{i=c[i>>2]|0?307530:307100;break}default:i=307530}Uv(e,i);break a}case 0:{k=e+12|0;i=c[k>>2]|0;if((c[i+12>>2]|0)>0){Sw(e);i=c[k>>2]|0}k=i+280+(((287343>>>0)%127|0)<<2)|0;i=c[k>>2]|0;if(JN(287343,i+16|0)|0){i=xx(e,287343,3)|0;c[k>>2]=i}C=e+8|0;z=c[C>>2]|0;c[z>>2]=i;c[z+8>>2]=(a[i+4>>0]|64)&255;c[C>>2]=(c[C>>2]|0)+16;break a}default:break b}while(0);if(p){k=c[e+8>>2]|0;C=136;break}if((f|0)>=-1000999){i=(c[e+8>>2]|0)+(f<<4)|0;C=144;break}if((f|0)==-1001e3){i=(c[e+12>>2]|0)+40|0;C=144;break}else{n=-1001e3-f|0;C=142;break}}while(0);if((C|0)==136){i=(c[q>>2]|0)+(f<<4)|0;if(i>>>0<k>>>0)C=144;else{i=k;k=284894;C=148}}else if((C|0)==142){i=c[q>>2]|0;if((c[i+8>>2]|0)!=22?(u=c[i>>2]|0,(n|0)<=(d[u+6>>0]|0)):0){i=u+16+(n+-1<<4)|0;C=144}else{k=284894;C=154}}do if((C|0)==144){if((i|0)==316344)i=0;else i=(c[i+8>>2]&15)+1|0;k=c[5104+(i<<2)>>2]|0;if(p){i=c[e+8>>2]|0;C=148;break}if((f|0)>=-1000999){i=(c[e+8>>2]|0)+(f<<4)|0;break}if((f|0)==-1001e3){i=(c[e+12>>2]|0)+40|0;break}else{n=-1001e3-f|0;C=154;break}}while(0);if((C|0)==148){C=(c[q>>2]|0)+(f<<4)|0;i=C>>>0<i>>>0?C:316344}else if((C|0)==154){i=c[q>>2]|0;if((c[i+8>>2]|0)==22)i=316344;else{i=c[i>>2]|0;i=(n|0)>(d[i+6>>0]|0)?316344:i+16+(n+-1<<4)|0}}switch(c[i+8>>2]&63){case 5:{i=c[i>>2]|0;break}case 6:{i=c[i>>2]|0;break}case 38:{i=c[i>>2]|0;break}case 22:{i=c[i>>2]|0;break}case 8:{i=c[i>>2]|0;break}case 7:{i=(c[i>>2]|0)+24|0;break}case 2:{i=c[i>>2]|0;break}default:i=0}c[x>>2]=k;c[x+4>>2]=i;Vv(e,282458,x)|0}while(0);k=e+8|0;i=c[k>>2]|0;switch(c[i+-8>>2]&15){case 4:{i=i+-16|0;break}case 3:{if((c[(c[e+12>>2]|0)+12>>2]|0)>0){Sw(e);i=c[k>>2]|0}i=i+-16|0;Xw(e,i);break}default:{if(!g){g=0;l=D;return g|0}c[g>>2]=0;g=0;l=D;return g|0}}if(!g)i=c[i>>2]|0;else{i=c[i>>2]|0;if((a[i+4>>0]|0)==4)k=d[i+7>>0]|0;else k=c[i+12>>2]|0;c[g>>2]=k}g=i+16|0;l=D;return g|0}function jy(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=l;l=l+16|0;p=t;f=t+4|0;g=e+20|0;c[f>>2]=g;r=a+16|0;m=c[r>>2]|0;s=a+8|0;n=c[s>>2]|0;o=n;do if(((c[a+24>>2]|0)-o>>4|0)>(g|0)){j=n;k=g;q=5}else{if(((o-(c[a+28>>2]|0)>>4)+5|0)<=(999980-e|0)?(rw(a,166,f)|0)==0:0){j=c[s>>2]|0;k=c[f>>2]|0;q=5;break}c[p>>2]=282465;Wx(a,282290,p)}while(0);if((q|0)==5?(h=m+4|0,i=j+(k<<4)|0,(c[h>>2]|0)>>>0<i>>>0):0)c[h>>2]=i;a:do if(c[b>>2]|0){p=-2-e|0;q=0-e|0;if((e|0)<=0){i=(e|0)==0;j=a+12|0;while(1){f=c[b+4>>2]|0;if(i){o=c[s>>2]|0;c[o>>2]=f;g=22;f=o}else{if((c[(c[j>>2]|0)+12>>2]|0)>0)Sw(a);h=Ew(a,e)|0;c[h+12>>2]=f;f=(c[s>>2]|0)+(q<<4)|0;c[s>>2]=f;g=e;do{g=g+-1|0;o=h+16+(g<<4)|0;n=f+(g<<4)|0;c[o>>2]=c[n>>2];c[o+4>>2]=c[n+4>>2];c[o+8>>2]=c[n+8>>2];c[o+12>>2]=c[n+12>>2];f=c[s>>2]|0}while((g|0)!=0);c[f>>2]=h;g=102}c[f+8>>2]=g;c[s>>2]=(c[s>>2]|0)+16;Zv(a,p,c[b>>2]|0);b=b+8|0;if(!(c[b>>2]|0))break a}}j=(e|0)>1000999;k=(q|0)==-1001e3;m=a+12|0;n=e+-1001e3|0;o=e+-1001001|0;do{i=c[s>>2]|0;h=i;g=0;while(1){f=c[r>>2]|0;do if(j){if(k){f=(c[m>>2]|0)+40|0;break}f=c[f>>2]|0;if((c[f+8>>2]|0)==22)f=316344;else{f=c[f>>2]|0;f=(n|0)>(d[f+6>>0]|0|0)?316344:f+16+(o<<4)|0}}else f=h+(q<<4)|0;while(0);c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2];f=(c[s>>2]|0)+16|0;c[s>>2]=f;g=g+1|0;if((g|0)==(e|0))break;else{h=f;i=f}}f=c[b+4>>2]|0;if((c[(c[m>>2]|0)+12>>2]|0)>0)Sw(a);h=Ew(a,e)|0;c[h+12>>2]=f;g=(c[s>>2]|0)+(q<<4)|0;c[s>>2]=g;f=e;do{f=f+-1|0;i=h+16+(f<<4)|0;u=g+(f<<4)|0;c[i>>2]=c[u>>2];c[i+4>>2]=c[u+4>>2];c[i+8>>2]=c[u+8>>2];c[i+12>>2]=c[u+12>>2];g=c[s>>2]|0}while((f|0)!=0);c[g>>2]=h;c[g+8>>2]=102;c[s>>2]=(c[s>>2]|0)+16;Zv(a,p,c[b>>2]|0);b=b+8|0}while((c[b>>2]|0)!=0)}while(0);if((e|0)>=0){u=(c[s>>2]|0)+(0-e<<4)|0;c[s>>2]=u;l=t;return}f=c[c[r>>2]>>2]|0;h=c[s>>2]|0;b=f+(0-e<<4)|0;if(h>>>0>=b>>>0){u=b;c[s>>2]=u;l=t;return}f=(f+(~e<<4)+8+4+(3-h)|0)>>>4;g=h;do{c[g+8>>2]=0;g=g+16|0}while(g>>>0<b>>>0);c[s>>2]=h+(f+1<<4);u=b;c[s>>2]=u;l=t;return}function ky(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;j=b+12|0;g=c[j>>2]|0;l=b+8|0;h=c[l>>2]|0;k=(d>>>0)%127|0;f=g+280+(k<<2)|0;e=c[f>>2]|0;if(JN(d,e+16|0)|0){e=xx(b,d,WO(d)|0)|0;c[f>>2]=e}c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;e=c[l>>2]|0;c[l>>2]=e+16;Kx(b,g+40|0,e,e);e=c[l>>2]|0;if((c[e+-8>>2]&15|0)==5)return;c[l>>2]=e+-16;if((c[(c[j>>2]|0)+12>>2]|0)>0)Sw(b);h=Dx(b)|0;i=c[l>>2]|0;c[i>>2]=h;c[i+8>>2]=69;i=c[l>>2]|0;h=i+16|0;c[l>>2]=h;c[h>>2]=c[i>>2];c[h+4>>2]=c[i+4>>2];c[h+8>>2]=c[i+8>>2];c[h+12>>2]=c[i+12>>2];h=c[l>>2]|0;i=h+16|0;c[l>>2]=i;g=c[j>>2]|0;f=g+280+(k<<2)|0;e=c[f>>2]|0;if(JN(d,e+16|0)|0){e=xx(b,d,WO(d)|0)|0;c[f>>2]=e}c[i>>2]=e;c[h+24>>2]=(a[e+4>>0]|64)&255;d=c[l>>2]|0;c[l>>2]=d+16;Lx(b,g+40|0,d,d+-16|0);c[l>>2]=(c[l>>2]|0)+-32;return}function ly(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;n=r+16|0;q=r;o=d+12|0;i=c[o>>2]|0;p=d+8|0;j=c[p>>2]|0;h=i+280+(((285645>>>0)%127|0)<<2)|0;g=c[h>>2]|0;if(JN(285645,g+16|0)|0){g=xx(d,285645,7)|0;c[h>>2]=g}c[j>>2]=g;c[j+8>>2]=(a[g+4>>0]|64)&255;g=c[p>>2]|0;c[p>>2]=g+16;Kx(d,i+40|0,g,g);g=c[p>>2]|0;if((c[g+-8>>2]&15|0)!=5){c[p>>2]=g+-16;if((c[(c[o>>2]|0)+12>>2]|0)>0)Sw(d);i=Dx(d)|0;j=c[p>>2]|0;c[j>>2]=i;c[j+8>>2]=69;j=c[p>>2]|0;i=j+16|0;c[p>>2]=i;c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];i=c[p>>2]|0;j=i+16|0;c[p>>2]=j;k=c[o>>2]|0;h=k+280+(((285645>>>0)%127|0)<<2)|0;g=c[h>>2]|0;if(JN(285645,g+16|0)|0){g=xx(d,285645,7)|0;c[h>>2]=g}c[j>>2]=g;c[i+24>>2]=(a[g+4>>0]|64)&255;g=c[p>>2]|0;c[p>>2]=g+16;Lx(d,k+40|0,g,g+-16|0);g=(c[p>>2]|0)+-32|0;c[p>>2]=g}k=(e>>>0)%127|0;i=(c[o>>2]|0)+280+(k<<2)|0;h=c[i>>2]|0;if(JN(e,h+16|0)|0){h=xx(d,e,WO(e)|0)|0;c[i>>2]=h}c[g>>2]=h;c[g+8>>2]=(a[h+4>>0]|64)&255;h=c[p>>2]|0;c[p>>2]=h+16;Kx(d,g+-16|0,h,h);g=c[p>>2]|0;h=g+-16|0;i=g+-8|0;switch(c[i>>2]|0){case 0:{m=16;break}case 1:{if(!(c[h>>2]|0))m=16;break}default:{}}if((m|0)==16){c[p>>2]=h;c[h>>2]=f;c[i>>2]=22;c[p>>2]=(c[p>>2]|0)+16;Uv(d,e);h=(c[p>>2]|0)+-32|0;i=d+106|0;g=(b[i>>1]|0)+1<<16>>16;b[i>>1]=g;if((g&65535)>199){if(g<<16>>16==200)mw(d,279953,n);if((g&65535)>224)qw(d,6)}g=d+104|0;b[g>>1]=(b[g>>1]|0)+1<<16>>16;if(!(uw(d,h,1)|0))Sx(d);b[g>>1]=(b[g>>1]|0)+-1<<16>>16;b[i>>1]=(b[i>>1]|0)+-1<<16>>16;i=c[p>>2]|0;j=i+-16|0;c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];i=c[p>>2]|0;j=i+16|0;c[p>>2]=j;h=(c[o>>2]|0)+280+(k<<2)|0;g=c[h>>2]|0;if(JN(e,g+16|0)|0){g=xx(d,e,WO(e)|0)|0;c[h>>2]=g}c[j>>2]=g;c[i+24>>2]=(a[g+4>>0]|64)&255;g=c[p>>2]|0;c[p>>2]=g+16;Lx(d,i+-32|0,g,g+-16|0);g=(c[p>>2]|0)+-32|0;c[p>>2]=g}h=g+-16|0;g=g+-32|0;do{c[q>>2]=c[g>>2];c[q+4>>2]=c[g+4>>2];c[q+8>>2]=c[g+8>>2];c[q+12>>2]=c[g+12>>2];c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];c[g+8>>2]=c[h+8>>2];c[g+12>>2]=c[h+12>>2];c[h>>2]=c[q>>2];c[h+4>>2]=c[q+4>>2];c[h+8>>2]=c[q+8>>2];c[h+12>>2]=c[q+12>>2];g=g+16|0;h=h+-16|0}while(g>>>0<h>>>0);o=c[p>>2]|0;q=o+-16|0;c[p>>2]=q;o=o+-32|0;c[q>>2]=c[o>>2];c[q+4>>2]=c[o+4>>2];c[q+8>>2]=c[o+8>>2];c[q+12>>2]=c[o+12>>2];c[p>>2]=(c[p>>2]|0)+16;Yv(d,e);l=r;return}function my(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=l;l=l+8256|0;r=z+32|0;q=z+24|0;p=z+16|0;x=z;w=z+40|0;o=WO(e)|0;t=w+12|0;c[t>>2]=b;v=w+16|0;c[w>>2]=v;u=w+8|0;c[u>>2]=0;s=w+4|0;c[s>>2]=8192;j=MP(d,e)|0;if(!j){m=d;g=8192;d=0;h=b}else{i=d;g=8192;d=0;h=b;do{n=j-i|0;if((g-d|0)>>>0<n>>>0){m=g<<1;m=(m-d|0)>>>0<n>>>0?d+n|0:m;if(m>>>0<d>>>0|(m-d|0)>>>0<n>>>0)Wx(h,282347,p);g=gw(h,m)|0;PQ(g|0,c[w>>2]|0,c[u>>2]|0)|0;if((c[w>>2]|0)!=(v|0)){k=h+8|0;h=c[k>>2]|0;d=h+-16|0;h=h+-32|0;do{c[x>>2]=c[h>>2];c[x+4>>2]=c[h+4>>2];c[x+8>>2]=c[h+8>>2];c[x+12>>2]=c[h+12>>2];c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];c[h+8>>2]=c[d+8>>2];c[h+12>>2]=c[d+12>>2];c[d>>2]=c[x>>2];c[d+4>>2]=c[x+4>>2];c[d+8>>2]=c[x+8>>2];c[d+12>>2]=c[x+12>>2];h=h+16|0;d=d+-16|0}while(h>>>0<d>>>0);c[k>>2]=(c[k>>2]|0)+-16}c[w>>2]=g;c[s>>2]=m;d=c[u>>2]|0}else g=c[w>>2]|0;PQ(g+d|0,i|0,n|0)|0;d=(c[u>>2]|0)+n|0;c[u>>2]=d;m=WO(f)|0;h=c[t>>2]|0;g=c[s>>2]|0;if((g-d|0)>>>0<m>>>0){k=g<<1;k=(k-d|0)>>>0<m>>>0?d+m|0:k;if(k>>>0<d>>>0|(k-d|0)>>>0<m>>>0)Wx(h,282347,q);g=gw(h,k)|0;PQ(g|0,c[w>>2]|0,c[u>>2]|0)|0;if((c[w>>2]|0)!=(v|0)){i=h+8|0;h=c[i>>2]|0;d=h+-16|0;h=h+-32|0;do{c[x>>2]=c[h>>2];c[x+4>>2]=c[h+4>>2];c[x+8>>2]=c[h+8>>2];c[x+12>>2]=c[h+12>>2];c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];c[h+8>>2]=c[d+8>>2];c[h+12>>2]=c[d+12>>2];c[d>>2]=c[x>>2];c[d+4>>2]=c[x+4>>2];c[d+8>>2]=c[x+8>>2];c[d+12>>2]=c[x+12>>2];h=h+16|0;d=d+-16|0}while(h>>>0<d>>>0);c[i>>2]=(c[i>>2]|0)+-16}c[w>>2]=g;c[s>>2]=k;d=c[u>>2]|0}else g=c[w>>2]|0;PQ(g+d|0,f|0,m|0)|0;d=(c[u>>2]|0)+m|0;c[u>>2]=d;i=j+o|0;j=MP(i,e)|0;h=c[t>>2]|0;g=c[s>>2]|0}while((j|0)!=0);m=i}k=WO(m)|0;if((g-d|0)>>>0<k>>>0){j=g<<1;j=(j-d|0)>>>0<k>>>0?d+k|0:j;if(j>>>0<d>>>0|(j-d|0)>>>0<k>>>0)Wx(h,282347,r);g=gw(h,j)|0;PQ(g|0,c[w>>2]|0,c[u>>2]|0)|0;if((c[w>>2]|0)!=(v|0)){i=h+8|0;h=c[i>>2]|0;d=h+-16|0;h=h+-32|0;do{c[x>>2]=c[h>>2];c[x+4>>2]=c[h+4>>2];c[x+8>>2]=c[h+8>>2];c[x+12>>2]=c[h+12>>2];c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];c[h+8>>2]=c[d+8>>2];c[h+12>>2]=c[d+12>>2];c[d>>2]=c[x>>2];c[d+4>>2]=c[x+4>>2];c[d+8>>2]=c[x+8>>2];c[d+12>>2]=c[x+12>>2];h=h+16|0;d=d+-16|0}while(h>>>0<d>>>0);c[i>>2]=(c[i>>2]|0)+-16}c[w>>2]=g;c[s>>2]=j;d=c[u>>2]|0}else g=c[w>>2]|0;PQ(g+d|0,m|0,k|0)|0;h=(c[u>>2]|0)+k|0;c[u>>2]=h;d=c[t>>2]|0;g=c[w>>2]|0;if((c[(c[d+12>>2]|0)+12>>2]|0)>0)Sw(d);u=xx(d,g,h)|0;h=d+8|0;d=c[h>>2]|0;c[d>>2]=u;c[d+8>>2]=(a[u+4>>0]|64)&255;d=c[h>>2]|0;c[h>>2]=d+16;if((c[w>>2]|0)!=(v|0)){g=d;d=d+-16|0;do{c[x>>2]=c[d>>2];c[x+4>>2]=c[d+4>>2];c[x+8>>2]=c[d+8>>2];c[x+12>>2]=c[d+12>>2];c[d>>2]=c[g>>2];c[d+4>>2]=c[g+4>>2];c[d+8>>2]=c[g+8>>2];c[d+12>>2]=c[g+12>>2];c[g>>2]=c[x>>2];c[g+4>>2]=c[x+4>>2];c[g+8>>2]=c[x+8>>2];c[g+12>>2]=c[x+12>>2];d=d+16|0;g=g+-16|0}while(d>>>0<g>>>0);c[h>>2]=(c[h>>2]|0)+-16}g=b+8|0;d=c[g>>2]|0;switch(c[d+-8>>2]&15){case 4:{d=d+-16|0;break}case 3:{y=38;break}default:{y=0;l=z;return y|0}}if((y|0)==38){if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);d=c[g>>2]|0}d=d+-16|0;Xw(b,d)}y=(c[d>>2]|0)+16|0;l=z;return y|0}function ny(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;if(!d){fN(b);a=0;return a|0}else{a=gN(b,d)|0;return a|0}return 0}function oy(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=l;l=l+16|0;f=g;d=a+8|0;b=c[d>>2]|0;switch(c[b+-8>>2]&15){case 4:{b=b+-16|0;e=5;break}case 3:{if((c[(c[a+12>>2]|0)+12>>2]|0)>0){Sw(a);b=c[d>>2]|0}b=b+-16|0;Xw(a,b);e=5;break}default:b=0}if((e|0)==5)b=(c[b>>2]|0)+16|0;c[f>>2]=b;JP(0,282483,f);vP(32772)|0;l=g;return 0}function py(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b+12|0;k=b+8|0;g=c[k>>2]|0;e=c[(c[j>>2]|0)+40>>2]|0;a:do if((c[e+8>>2]|0)>>>0>1)e=(c[e+12>>2]|0)+16|0;else{e=(c[e+16>>2]|0)+(((1<<(d[e+7>>0]|0))+3&2)<<5)|0;while(1){if((c[e+24>>2]|0)==19?(h=e+16|0,(c[h>>2]|0)==2&(c[h+4>>2]|0)==0):0)break;f=c[e+28>>2]|0;if(!f){e=316344;break a}e=e+(f<<5)|0}}while(0);c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];c[k>>2]=(c[k>>2]|0)+16;jy(b,5244,0);g=c[k>>2]|0;h=g+-16|0;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];c[g+8>>2]=c[h+8>>2];c[g+12>>2]=c[h+12>>2];g=c[k>>2]|0;h=g+16|0;c[k>>2]=h;f=(c[j>>2]|0)+280+(((282559>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(282559,e+16|0)|0){e=xx(b,282559,2)|0;c[f>>2]=e}c[h>>2]=e;c[g+24>>2]=(a[e+4>>0]|64)&255;e=c[k>>2]|0;c[k>>2]=e+16;Lx(b,g+-16|0,e,e+-16|0);c[k>>2]=(c[k>>2]|0)+-32;e=c[j>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[j>>2]|0}f=e+280+(((282562>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(282562,e+16|0)|0){e=xx(b,282562,7)|0;c[f>>2]=e}g=c[k>>2]|0;c[g>>2]=e;c[g+8>>2]=(a[e+4>>0]|64)&255;g=c[k>>2]|0;h=g+16|0;c[k>>2]=h;f=(c[j>>2]|0)+280+(((282570>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(282570,e+16|0)|0){e=xx(b,282570,8)|0;c[f>>2]=e}c[h>>2]=e;c[g+24>>2]=(a[e+4>>0]|64)&255;e=c[k>>2]|0;c[k>>2]=e+16;Lx(b,g+-16|0,e,e+-16|0);c[k>>2]=(c[k>>2]|0)+-32;e=c[j>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[j>>2]|0}f=e+280+(((287343>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(287343,e+16|0)|0){e=xx(b,287343,3)|0;c[f>>2]=e}h=c[k>>2]|0;c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;c[k>>2]=(c[k>>2]|0)+16;e=c[j>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[j>>2]|0}f=e+280+(((281334>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(281334,e+16|0)|0){e=xx(b,281334,7)|0;c[f>>2]=e}h=c[k>>2]|0;c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;c[k>>2]=(c[k>>2]|0)+16;e=c[j>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[j>>2]|0}f=e+280+(((281342>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(281342,e+16|0)|0){e=xx(b,281342,8)|0;c[f>>2]=e}h=c[k>>2]|0;c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;c[k>>2]=(c[k>>2]|0)+16;e=c[j>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[j>>2]|0}f=e+280+(((281351>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(281351,e+16|0)|0){e=xx(b,281351,6)|0;c[f>>2]=e}h=c[k>>2]|0;c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;c[k>>2]=(c[k>>2]|0)+16;e=c[j>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[j>>2]|0}f=e+280+(((287721>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(287721,e+16|0)|0){e=xx(b,287721,6)|0;c[f>>2]=e}h=c[k>>2]|0;c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;c[k>>2]=(c[k>>2]|0)+16;e=c[j>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[j>>2]|0}f=e+280+(((281358>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(281358,e+16|0)|0){e=xx(b,281358,5)|0;c[f>>2]=e}h=c[k>>2]|0;c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;c[k>>2]=(c[k>>2]|0)+16;e=c[j>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[j>>2]|0}f=e+280+(((287317>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(287317,e+16|0)|0){e=xx(b,287317,8)|0;c[f>>2]=e}h=c[k>>2]|0;c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;c[k>>2]=(c[k>>2]|0)+16;e=c[j>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[j>>2]|0}f=e+280+(((281342>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(281342,e+16|0)|0){e=xx(b,281342,8)|0;c[f>>2]=e}h=c[k>>2]|0;c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;c[k>>2]=(c[k>>2]|0)+16;e=c[j>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[j>>2]|0}f=e+280+(((281364>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(281364,e+16|0)|0){e=xx(b,281364,6)|0;c[f>>2]=e}h=c[k>>2]|0;c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;c[k>>2]=(c[k>>2]|0)+16;e=c[j>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[j>>2]|0}f=e+4|0;g=jg[c[e>>2]&31](c[f>>2]|0,0,6,160)|0;do if(!g){if(!(c[e+140>>2]|0))qw(b,4);Tw(b,1);f=jg[c[e>>2]&31](c[f>>2]|0,0,6,160)|0;if(f|0){i=f;break}qw(b,4)}else i=g;while(0);g=e+12|0;c[g>>2]=(c[g>>2]|0)+160;a[i+5>>0]=a[e+60>>0]&3;a[i+4>>0]=38;g=e+64|0;c[i>>2]=c[g>>2];c[g>>2]=i;a[i+6>>0]=9;c[i+12>>2]=401;g=c[k>>2]|0;c[k>>2]=g+-144;h=i+144|0;g=g+-16|0;c[h>>2]=c[g>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[h+12>>2]=c[g+12>>2];h=i+128|0;g=(c[k>>2]|0)+112|0;c[h>>2]=c[g>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[h+12>>2]=c[g+12>>2];h=i+112|0;g=(c[k>>2]|0)+96|0;c[h>>2]=c[g>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[h+12>>2]=c[g+12>>2];h=i+96|0;g=(c[k>>2]|0)+80|0;c[h>>2]=c[g>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[h+12>>2]=c[g+12>>2];h=i+80|0;g=(c[k>>2]|0)+64|0;c[h>>2]=c[g>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[h+12>>2]=c[g+12>>2];h=i+64|0;g=(c[k>>2]|0)+48|0;c[h>>2]=c[g>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[h+12>>2]=c[g+12>>2];h=i+48|0;g=(c[k>>2]|0)+32|0;c[h>>2]=c[g>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[h+12>>2]=c[g+12>>2];h=i+32|0;g=(c[k>>2]|0)+16|0;c[h>>2]=c[g>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[h+12>>2]=c[g+12>>2];h=c[k>>2]|0;g=i+16|0;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];c[g+8>>2]=c[h+8>>2];c[g+12>>2]=c[h+12>>2];g=c[k>>2]|0;c[g>>2]=i;c[g+8>>2]=102;g=c[k>>2]|0;h=g+16|0;c[k>>2]=h;i=g+-16|0;e=(c[j>>2]|0)+280+(((286120>>>0)%127|0)<<2)|0;f=c[e>>2]|0;if(!(JN(286120,f+16|0)|0)){j=f;c[h>>2]=j;j=j+4|0;j=a[j>>0]|0;j=j|64;j=j&255;h=g+24|0;c[h>>2]=j;h=c[k>>2]|0;j=h+16|0;c[k>>2]=j;j=h+-16|0;Lx(b,i,h,j);b=c[k>>2]|0;b=b+-32|0;c[k>>2]=b;return 1}else{j=xx(b,286120,4)|0;c[e>>2]=j;c[h>>2]=j;j=j+4|0;j=a[j>>0]|0;j=j|64;j=j&255;h=g+24|0;c[h>>2]=j;h=c[k>>2]|0;j=h+16|0;c[k>>2]=j;j=h+-16|0;Lx(b,i,h,j);b=c[k>>2]|0;b=b+-32|0;c[k>>2]=b;return 1}return 0}function qy(a){a=a|0;var b=0,e=0,f=0,g=0,h=0;e=a+16|0;f=c[c[e>>2]>>2]|0;g=f+16|0;h=a+8|0;b=c[h>>2]|0;if(g>>>0>=b>>>0|(g|0)==316344){Vx(a,1,283978)|0;g=c[h>>2]|0;f=c[c[e>>2]>>2]|0}else g=b;e=f+16|0;if(e>>>0>=g>>>0|(e|0)==316344)b=-1;else b=c[f+24>>2]&15;b=-1001001-b|0;do if((b|0)<=0){if((b|0)>=-1000999){b=g+(b<<4)|0;break}if((b|0)==-1001e3){b=(c[a+12>>2]|0)+40|0;break}b=-1001e3-b|0;if((c[f+8>>2]|0)==22)b=316344;else{a=c[f>>2]|0;b=(b|0)>(d[a+6>>0]|0|0)?316344:a+16+(b+-1<<4)|0}}else{b=f+(b<<4)|0;b=b>>>0<g>>>0?b:316344}while(0);c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];c[h>>2]=(c[h>>2]|0)+16;return 1}function ry(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;k=o;m=b+16|0;d=c[c[m>>2]>>2]|0;g=d+16|0;n=b+8|0;f=c[n>>2]|0;h=g>>>0<f>>>0;e=h?g:316344;i=f;switch(c[e+8>>2]|0){case 0:break;case 1:{if(c[e>>2]|0)j=3;break}default:j=3}if((j|0)==3){b=i-g>>4;l=o;return b|0}if((g|0)==316344|h^1){Vx(b,1,283978)|0;f=c[n>>2]|0;d=c[c[m>>2]>>2]|0}e=f+-16|0;d=d+16|0;d=d>>>0<f>>>0?d:316344;f=d+16|0;if(f>>>0<e>>>0){g=e;do{c[k>>2]=c[f>>2];c[k+4>>2]=c[f+4>>2];c[k+8>>2]=c[f+8>>2];c[k+12>>2]=c[f+12>>2];c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[f+12>>2]=c[g+12>>2];c[g>>2]=c[k>>2];c[g+4>>2]=c[k+4>>2];c[g+8>>2]=c[k+8>>2];c[g+12>>2]=c[k+12>>2];f=f+16|0;g=g+-16|0}while(f>>>0<g>>>0)}if(d>>>0<e>>>0)do{c[k>>2]=c[d>>2];c[k+4>>2]=c[d+4>>2];c[k+8>>2]=c[d+8>>2];c[k+12>>2]=c[d+12>>2];c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];c[e>>2]=c[k>>2];c[e+4>>2]=c[k+4>>2];c[e+8>>2]=c[k+8>>2];c[e+12>>2]=c[k+12>>2];d=d+16|0;e=e+-16|0}while(d>>>0<e>>>0);c[n>>2]=(c[n>>2]|0)+-16;e=b+12|0;d=c[e>>2]|0;if((c[d+12>>2]|0)>0){Sw(b);d=c[e>>2]|0}e=d+280+(((283021>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(JN(283021,d+16|0)|0){d=xx(b,283021,17)|0;c[e>>2]=d}g=c[n>>2]|0;c[g>>2]=d;c[g+8>>2]=(a[d+4>>0]|64)&255;g=(c[n>>2]|0)+16|0;c[n>>2]=g;d=c[c[m>>2]>>2]|0;f=d+32|0;if(g>>>0<f>>>0){d=(d+24+4+(3-g)|0)>>>4;e=g;do{c[e+8>>2]=0;e=e+16|0}while(e>>>0<f>>>0);c[n>>2]=g+(d+1<<4)}c[n>>2]=f;uy(b)|0;b=0;l=o;return b|0}function sy(b){b=b|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;m=o;g=b+16|0;f=c[c[g>>2]>>2]|0;i=f+16|0;n=b+8|0;e=c[n>>2]|0;a:do if(!(i>>>0>=e>>>0|(i|0)==316344)?(j=c[f+24>>2]|0,(j&15|0)!=0):0){switch(j&15){case 4:{e=i;break}case 3:{k=4;break}default:{Yx(b,1,287721);e=0;break a}}if((k|0)==4){if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);f=c[c[g>>2]>>2]|0;e=c[n>>2]|0}k=f+16|0;e=k>>>0<e>>>0?k:316344;Xw(b,e)}e=(c[e>>2]|0)+16|0}else e=282965;while(0);if(JN(282973,e)|0)if(JN(282978,e)|0)if(JN(282965,e)|0)if(JN(283455,e)|0)if(JN(282986,e)|0)if(JN(282991,e)|0)if(JN(283e3,e)|0)if(!(JN(283011,e)|0))e=7;else{c[m>>2]=e;e=Vx(b,1,Vv(b,282270,m)|0)|0}else e=6;else e=5;else e=4;else e=3;else e=2;else e=1;else e=0;m=c[5444+(e<<2)>>2]|0;e=$x(b,2,0,0)|0;f=c[b+12>>2]|0;b:do switch(m|0){case 0:{a[f+63>>0]=0;e=0;k=27;break}case 1:{e=f+12|0;k=f+8|0;c[k>>2]=(c[e>>2]|0)+(c[k>>2]|0);c[e>>2]=0;a[f+63>>0]=1;e=0;k=27;break}case 2:{Tw(b,0);e=0;k=27;break}case 3:{k=c[f+8>>2]|0;m=c[f+12>>2]|0;b=c[n>>2]|0;h[b>>3]=+((m+k|0)>>>10|0)+ +(m+k&1023|0)*.0009765625;k=3;m=b+8|0;c[m>>2]=k;b=b+16|0;c[n>>2]=b;l=o;return 1}case 4:{e=(c[f+12>>2]|0)+(c[f+8>>2]|0)&1023;k=27;break}case 5:{g=f+63|0;i=a[g>>0]|0;a[g>>0]=1;do if(e){e=e<<10;k=f+12|0;m=(c[k>>2]|0)+e|0;j=f+8|0;c[j>>2]=(c[j>>2]|0)-e;c[k>>2]=m;if((m|0)>0){Sw(b);break}else{a[g>>0]=i;e=0;k=26;break b}}else{m=f+12|0;k=f+8|0;c[k>>2]=(c[m>>2]|0)+1600+(c[k>>2]|0);c[m>>2]=-1600;Sw(b)}while(0);a[g>>0]=i;e=(a[f+61>>0]|0)==7&1;k=26;break}case 6:{b=f+124|0;k=c[b>>2]|0;c[b>>2]=e;e=k;k=27;break}case 7:{b=f+128|0;k=c[b>>2]|0;c[b>>2]=(e|0)>40?e:40;e=k;k=27;break}case 9:{e=d[f+63>>0]|0;k=26;break}default:{e=-1;k=27}}while(0);if((k|0)==26){b=c[n>>2]|0;c[b>>2]=(e|0)!=0&1;k=1;m=b+8|0;c[m>>2]=k;b=b+16|0;c[n>>2]=b;l=o;return 1}else if((k|0)==27){b=c[n>>2]|0;k=b;c[k>>2]=e;c[k+4>>2]=((e|0)<0)<<31>>31;k=19;m=b+8|0;c[m>>2]=k;b=b+16|0;c[n>>2]=b;l=o;return 1}return 0}function ty(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;j=n+8|0;i=n;k=a+16|0;e=c[c[k>>2]>>2]|0;f=e+16|0;m=a+8|0;d=c[m>>2]|0;a:do if(!(f>>>0>=d>>>0|(f|0)==316344)?(g=c[e+24>>2]|0,(g&15|0)!=0):0){switch(g&15){case 4:{d=f;break}case 3:{h=4;break}default:{Yx(a,1,287721);f=0;break a}}if((h|0)==4){if((c[(c[a+12>>2]|0)+12>>2]|0)>0){Sw(a);e=c[c[k>>2]>>2]|0;d=c[m>>2]|0}h=e+16|0;d=h>>>0<d>>>0?h:316344;Xw(a,d)}f=(c[d>>2]|0)+16|0}else f=0;while(0);d=c[c[k>>2]>>2]|0;g=c[m>>2]|0;h=d+32|0;if(g>>>0<h>>>0){d=(d+24+4+(3-g)|0)>>>4;e=g;do{c[e+8>>2]=0;e=e+16|0}while(e>>>0<h>>>0);c[m>>2]=g+(d+1<<4)}c[m>>2]=h;if(cy(a,f,0)|0)nw(a);h=(c[m>>2]|0)+-16|0;f=a+104|0;g=b[f>>1]|0;if(!(g<<16>>16)){d=c[k>>2]|0;c[d+16>>2]=16;c[d+24>>2]=0;d=a+106|0;e=(b[d>>1]|0)+1<<16>>16;b[d>>1]=e;if((e&65535)>199){if(e<<16>>16==200)mw(a,279953,i);if((e&65535)>224)qw(a,6)}if(!(uw(a,h,-1)|0))Sx(a)}else{d=a+106|0;e=(b[d>>1]|0)+1<<16>>16;b[d>>1]=e;if((e&65535)>199){if(e<<16>>16==200)mw(a,279953,j);if((e&65535)>224)qw(a,6)}b[f>>1]=g+1<<16>>16;if(!(uw(a,h,-1)|0))Sx(a);b[f>>1]=(b[f>>1]|0)+-1<<16>>16}b[d>>1]=(b[d>>1]|0)+-1<<16>>16;f=c[k>>2]|0;g=f+4|0;d=c[m>>2]|0;e=d;if((c[g>>2]|0)>>>0>=d>>>0){m=c[f>>2]|0;m=m+16|0;m=e-m|0;m=m>>4;m=m+-1|0;l=n;return m|0}c[g>>2]=d;m=c[f>>2]|0;m=m+16|0;m=e-m|0;m=m>>4;m=m+-1|0;l=n;return m|0}function uy(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;k=l;l=l+112|0;m=k;k=k+8|0;e=$x(b,2,1,0)|0;o=b+16|0;g=c[c[o>>2]>>2]|0;p=b+8|0;h=c[p>>2]|0;i=g+32|0;if(h>>>0<i>>>0){d=(g+24+4+(3-h)|0)>>>4;f=h;do{c[f+8>>2]=0;f=f+16|0}while(f>>>0<i>>>0);c[p>>2]=h+(d+1<<4)}c[p>>2]=i;if(!((e|0)>0?((c[g+24>>2]&15)+-3|0)>>>0<2:0))nw(b);d=c[o>>2]|0;f=b+48|0;if((e|0)!=0&(d|0)!=(f|0)){do{i=e;e=e+-1|0;d=c[d+8>>2]|0}while((i|0)>1&(d|0)!=(f|0));if(!((e|0)!=0|(d|0)==(f|0))?(c[k+96>>2]=d,iw(b,282217,k)|0,j=c[k+20>>2]|0,(j|0)>0):0){c[m>>2]=k+36;c[m+4>>2]=j;Vv(b,282220,m)|0;f=c[p>>2]|0;d=b+12|0;e=f}else n=11}else n=11;if((n|0)==11){f=b+12|0;d=c[f>>2]|0;if((c[d+12>>2]|0)>0){Sw(b);d=c[f>>2]|0}e=d+280+(((335059>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(JN(335059,d+16|0)|0){d=xx(b,335059,0)|0;c[e>>2]=d}n=c[p>>2]|0;c[n>>2]=d;c[n+8>>2]=(a[d+4>>0]|64)&255;n=(c[p>>2]|0)+16|0;c[p>>2]=n;d=f;e=n;f=n}o=(c[c[o>>2]>>2]|0)+16|0;o=o>>>0<e>>>0?o:316344;c[f>>2]=c[o>>2];c[f+4>>2]=c[o+4>>2];c[f+8>>2]=c[o+8>>2];c[f+12>>2]=c[o+12>>2];c[p>>2]=(c[p>>2]|0)+16;if((c[(c[d>>2]|0)+12>>2]|0)>0)Sw(b);Px(b,2);nw(b);return 0}function vy(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;e=a+16|0;b=c[c[e>>2]>>2]|0;f=b+16|0;g=a+8|0;d=c[g>>2]|0;if(f>>>0>=d>>>0|(f|0)==316344){Vx(a,1,283978)|0;f=c[g>>2]|0;b=c[c[e>>2]>>2]|0}else f=d;b=b+16|0;b=b>>>0<f>>>0?b:316344;d=c[b+8>>2]|0;switch(d&15){case 5:{b=(c[b>>2]|0)+24|0;break}case 7:{b=(c[b>>2]|0)+8|0;break}default:b=(c[a+12>>2]|0)+244+((d&15)<<2)|0}b=c[b>>2]|0;if(!b){c[f+8>>2]=0;c[g>>2]=f+16;return 1}else{c[f>>2]=b;c[f+8>>2]=69;c[g>>2]=(c[g>>2]|0)+16;gy(a,1,282739)|0;return 1}return 0}function wy(a){a=a|0;var b=0;b=(gy(a,1,286037)|0)!=0;Ny(a,282956,1,b?403:402);return 3}function xy(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;k=m;i=a+16|0;d=c[c[i>>2]>>2]|0;b=d+16|0;j=a+8|0;f=c[j>>2]|0;a:do if(!(b>>>0>=f>>>0|(b|0)==316344)?(e=c[d+24>>2]|0,(e&15|0)!=0):0){switch(e&15){case 4:break;case 3:{h=4;break}default:{Yx(a,1,287721);f=0;break a}}if((h|0)==4){if((c[(c[a+12>>2]|0)+12>>2]|0)>0){Sw(a);d=c[c[i>>2]>>2]|0;b=c[j>>2]|0}else b=f;f=d+16|0;b=f>>>0<b>>>0?f:316344;Xw(a,b)}f=(c[b>>2]|0)+16|0}else f=0;while(0);d=c[c[i>>2]>>2]|0;e=d+32|0;b=c[j>>2]|0;b:do if(!(e>>>0>=b>>>0|(e|0)==316344)?(g=c[d+40>>2]|0,(g&15|0)!=0):0){switch(g&15){case 4:{b=e;break}case 3:{h=12;break}default:{Yx(a,2,287721);b=0;break b}}if((h|0)==12){if((c[(c[a+12>>2]|0)+12>>2]|0)>0){Sw(a);d=c[c[i>>2]>>2]|0;b=c[j>>2]|0}h=d+32|0;b=h>>>0<b>>>0?h:316344;Xw(a,b)}b=(c[b>>2]|0)+16|0}else b=0;while(0);e=(c[c[i>>2]>>2]|0)+48|0;e=(e|0)!=316344?e>>>0<(c[j>>2]|0)>>>0:0;d=e?3:0;if(cy(a,f,b)|0){d=c[j>>2]|0;c[d+8>>2]=0;c[j>>2]=d+16;b=d;d=d+-16|0;do{c[k>>2]=c[d>>2];c[k+4>>2]=c[d+4>>2];c[k+8>>2]=c[d+8>>2];c[k+12>>2]=c[d+12>>2];c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];c[b>>2]=c[k>>2];c[b+4>>2]=c[k+4>>2];c[b+8>>2]=c[k+8>>2];c[b+12>>2]=c[k+12>>2];d=d+16|0;b=b+-16|0}while(d>>>0<b>>>0);k=2;l=m;return k|0}if(!e){k=1;l=m;return k|0}k=c[j>>2]|0;i=(c[c[i>>2]>>2]|0)+(d<<4)|0;i=i>>>0<k>>>0?i:316344;c[k>>2]=c[i>>2];c[k+4>>2]=c[i+4>>2];c[k+8>>2]=c[i+8>>2];c[k+12>>2]=c[i+12>>2];c[j>>2]=(c[j>>2]|0)+16;if(hw(a,-2,1)|0){k=1;l=m;return k|0}c[j>>2]=(c[j>>2]|0)+-16;k=1;l=m;return k|0}function yy(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+16|0;t=u;r=b+16|0;f=c[c[r>>2]>>2]|0;g=f+16|0;s=b+8|0;e=c[s>>2]|0;g=g>>>0<e>>>0?g:316344;switch(c[g+8>>2]&15){case 4:{e=g;q=5;break}case 3:{if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);f=c[c[r>>2]>>2]|0;e=c[s>>2]|0}q=f+16|0;e=q>>>0<e>>>0?q:316344;Xw(b,e);q=5;break}default:{j=0;g=0}}if((q|0)==5){e=c[e>>2]|0;if((a[e+4>>0]|0)==4)g=d[e+7>>0]|0;else g=c[e+12>>2]|0;j=e+16|0;f=c[c[r>>2]>>2]|0;e=c[s>>2]|0}h=f+48|0;a:do if(!(h>>>0>=e>>>0|(h|0)==316344)?(i=c[f+56>>2]|0,(i&15|0)!=0):0){switch(i&15){case 4:{e=h;break}case 3:{q=12;break}default:{Yx(b,3,287721);k=0;break a}}if((q|0)==12){if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);f=c[c[r>>2]>>2]|0;e=c[s>>2]|0}n=f+48|0;e=n>>>0<e>>>0?n:316344;Xw(b,e)}k=(c[e>>2]|0)+16|0}else k=282882;while(0);f=c[c[r>>2]>>2]|0;n=f+64|0;e=c[s>>2]|0;if(n>>>0>=e>>>0|(n|0)==316344)h=-1;else h=c[f+72>>2]&15;m=(h|0)!=-1;n=m?4:0;h=f+32|0;i=h>>>0>=e>>>0|(h|0)==316344;if(!j){b:do if(!i?(p=c[f+40>>2]|0,(p&15|0)!=0):0){switch(p&15){case 4:{e=h;break}case 3:{q=32;break}default:{Yx(b,2,287721);i=0;break b}}if((q|0)==32){if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);f=c[c[r>>2]>>2]|0;e=c[s>>2]|0}q=f+32|0;e=q>>>0<e>>>0?q:316344;Xw(b,e)}i=(c[e>>2]|0)+16|0}else i=282885;while(0);e=c[c[r>>2]>>2]|0;q=e+16|0;f=c[s>>2]|0;if(!(!(q>>>0>=f>>>0|(q|0)==316344)?(c[e+24>>2]&15|0)==6:0)){Yx(b,1,287317);e=c[c[r>>2]>>2]|0;f=c[s>>2]|0}h=e+96|0;if(f>>>0<h>>>0){e=(e+88+4+(3-f)|0)>>>4;g=f;do{c[g+8>>2]=0;g=g+16|0}while(g>>>0<h>>>0);c[s>>2]=f+(e+1<<4)}c[s>>2]=h;e=dw(b,17,0,i,k)|0}else{c:do if(!i?(o=c[f+40>>2]|0,(o&15|0)!=0):0){switch(o&15){case 4:{e=h;break}case 3:{q=23;break}default:{Yx(b,2,287721);e=0;break c}}if((q|0)==23){if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);f=c[c[r>>2]>>2]|0;e=c[s>>2]|0}q=f+32|0;e=q>>>0<e>>>0?q:316344;Xw(b,e)}e=(c[e>>2]|0)+16|0}else e=j;while(0);c[t>>2]=j;c[t+4>>2]=g;e=dw(b,7,t,e,k)|0}if(e|0){f=c[s>>2]|0;c[f+8>>2]=0;c[s>>2]=f+16;e=f;f=f+-16|0;do{c[t>>2]=c[f>>2];c[t+4>>2]=c[f+4>>2];c[t+8>>2]=c[f+8>>2];c[t+12>>2]=c[f+12>>2];c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[e>>2]=c[t>>2];c[e+4>>2]=c[t+4>>2];c[e+8>>2]=c[t+8>>2];c[e+12>>2]=c[t+12>>2];f=f+16|0;e=e+-16|0}while(f>>>0<e>>>0);t=2;l=u;return t|0}if(!m){t=1;l=u;return t|0}t=c[s>>2]|0;r=(c[c[r>>2]>>2]|0)+(n<<4)|0;r=r>>>0<t>>>0?r:316344;c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[t+8>>2]=c[r+8>>2];c[t+12>>2]=c[r+12>>2];c[s>>2]=(c[s>>2]|0)+16;if(hw(b,-2,1)|0){t=1;l=u;return t|0}c[s>>2]=(c[s>>2]|0)+-16;t=1;l=u;return t|0}function zy(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=a+16|0;d=c[c[b>>2]>>2]|0;f=d+16|0;g=a+8|0;e=c[g>>2]|0;if(!(!(f>>>0>=e>>>0|(f|0)==316344)?(c[d+24>>2]&15|0)==5:0)){Yx(a,1,281358);d=c[c[b>>2]>>2]|0;e=c[g>>2]|0}f=d+48|0;if(e>>>0<f>>>0){b=(d+40+4+(3-e)|0)>>>4;d=e;do{c[d+8>>2]=0;d=d+16|0}while(d>>>0<f>>>0);c[g>>2]=e+(b+1<<4)}c[g>>2]=f;if(ew(a,1)|0){a=2;return a|0}a=c[g>>2]|0;c[a+8>>2]=0;c[g>>2]=a+16;a=1;return a|0}function Ay(a){a=a|0;Ny(a,282874,0,254);return 3}function By(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;i=j;g=a+16|0;b=c[c[g>>2]>>2]|0;f=b+16|0;h=a+8|0;d=c[h>>2]|0;if(f>>>0>=d>>>0|(f|0)==316344){Vx(a,1,283978)|0;b=c[c[g>>2]>>2]|0;d=c[h>>2]|0}c[d>>2]=1;c[d+8>>2]=1;c[h>>2]=d+16;b=b>>>0<d>>>0?b+16|0:316344;e=d+-16|0;if(b>>>0<e>>>0){f=b;do{c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2];c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[e>>2]=c[i>>2];c[e+4>>2]=c[i+4>>2];c[e+8>>2]=c[i+8>>2];c[e+12>>2]=c[i+12>>2];f=f+16|0;e=e+-16|0}while(f>>>0<e>>>0)}if(b>>>0<d>>>0)do{c[i>>2]=c[b>>2];c[i+4>>2]=c[b+4>>2];c[i+8>>2]=c[b+8>>2];c[i+12>>2]=c[b+12>>2];c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[d>>2]=c[i>>2];c[d+4>>2]=c[i+4>>2];c[d+8>>2]=c[i+8>>2];c[d+12>>2]=c[i+12>>2];b=b+16|0;d=d+-16|0}while(b>>>0<d>>>0);if((bw(a,((c[h>>2]|0)-((c[c[g>>2]>>2]|0)+16)>>4)+-2|0,-1,0,0,18)|0)>>>0>1){a=c[h>>2]|0;c[a>>2]=0;c[a+8>>2]=1;i=a+16|0;c[h>>2]=i;a=a+-16|0;c[i>>2]=c[a>>2];c[i+4>>2]=c[a+4>>2];c[i+8>>2]=c[a+8>>2];c[i+12>>2]=c[a+12>>2];c[h>>2]=(c[h>>2]|0)+16;i=2;l=j;return i|0}else{i=(c[h>>2]|0)-((c[c[g>>2]>>2]|0)+16)>>4;l=j;return i|0}return 0}function Cy(e){e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+16|0;s=t+8|0;r=t;n=e+8|0;j=c[n>>2]|0;o=e+16|0;m=j-((c[c[o>>2]>>2]|0)+16)|0;p=m>>4;q=e+12|0;i=c[q>>2]|0;f=c[i+40>>2]|0;k=j;a:do if((c[f+8>>2]|0)>>>0>1)h=(c[f+12>>2]|0)+16|0;else{g=(c[f+16>>2]|0)+(((1<<d[f+7>>0])+3&2)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(h=g+16|0,(c[h>>2]|0)==2&(c[h+4>>2]|0)==0):0)break;f=c[g+28>>2]|0;if(!f){h=316344;break a}g=g+(f<<5)|0}h=g}while(0);g=i+280+(((282698>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(282698,f+16|0)|0){f=xx(e,282698,8)|0;c[g>>2]=f}c[j>>2]=f;c[k+8>>2]=(a[f+4>>0]|64)&255;k=c[n>>2]|0;c[n>>2]=k+16;Kx(e,h,k,k);b:do if((m|0)>=16){h=e+106|0;i=e+104|0;f=c[n>>2]|0;j=1;c:while(1){g=f+-16|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[f+12>>2]=c[g+12>>2];f=(c[n>>2]|0)+16|0;c[n>>2]=f;g=(c[c[o>>2]>>2]|0)+(j<<4)|0;g=g>>>0<f>>>0?g:316344;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[f+12>>2]=c[g+12>>2];f=c[n>>2]|0;c[n>>2]=f+16;f=f+-16|0;g=(b[h>>1]|0)+1<<16>>16;b[h>>1]=g;if((g&65535)>199){if(g<<16>>16==200){f=16;break}if((g&65535)>224){f=18;break}}b[i>>1]=(b[i>>1]|0)+1<<16>>16;if(!(uw(e,f,1)|0))Sx(e);b[i>>1]=(b[i>>1]|0)+-1<<16>>16;b[h>>1]=(b[h>>1]|0)+-1<<16>>16;f=c[n>>2]|0;switch(c[f+-8>>2]&15){case 4:{f=f+-16|0;break}case 3:{if((c[(c[q>>2]|0)+12>>2]|0)>0){Sw(e);f=c[n>>2]|0}f=f+-16|0;Xw(e,f);break}default:{f=29;break c}}g=c[f>>2]|0;if((a[g+4>>0]|0)==4)f=d[g+7>>0]|0;else f=c[g+12>>2]|0;if((j|0)>1)hQ(9,33264);jP(g+16|0,1,f,33264)|0;f=(c[n>>2]|0)+-16|0;c[n>>2]=f;if((j|0)>=(p|0))break b;else j=j+1|0}if((f|0)==16)mw(e,279953,r);else if((f|0)==18)qw(e,6);else if((f|0)==29){Wx(e,282831,s);l=t;return 0}}while(0);hQ(10,33264);vP(33264)|0;l=t;return 0}function Dy(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;d=a+16|0;b=c[c[d>>2]>>2]|0;g=b+16|0;f=a+8|0;e=c[f>>2]|0;if(g>>>0>=e>>>0|(g|0)==316344){Vx(a,1,283978)|0;e=c[f>>2]|0;b=c[c[d>>2]>>2]|0}g=b+32|0;if(g>>>0>=e>>>0|(g|0)==316344){Vx(a,2,283978)|0;b=c[c[d>>2]>>2]|0;e=c[f>>2]|0}d=b+16|0;d=d>>>0<e>>>0?d:316344;b=b+32|0;b=b>>>0<e>>>0?b:316344;if(!((d|0)!=316344&(b|0)!=316344)){a=0;g=e;a=a&1;c[g>>2]=a;a=g+8|0;c[a>>2]=1;g=g+16|0;c[f>>2]=g;return 1}a=(Ox(0,d,b)|0)!=0;g=c[f>>2]|0;a=a&1;c[g>>2]=a;a=g+8|0;c[a>>2]=1;g=g+16|0;c[f>>2]=g;return 1}function Ey(a){a=a|0;var b=0,e=0,f=0,g=0,h=0;e=a+16|0;b=c[c[e>>2]>>2]|0;h=b+16|0;g=a+8|0;f=c[g>>2]|0;if(!(h>>>0>=f>>>0|(h|0)==316344)?(c[b+24>>2]&14|0)==4:0)e=f;else{Vx(a,1,282806)|0;b=c[c[e>>2]>>2]|0;e=c[g>>2]|0}b=b+16|0;b=b>>>0<e>>>0?b:316344;switch(c[b+8>>2]&63){case 4:{b=d[(c[b>>2]|0)+7>>0]|0;break}case 20:{b=c[(c[b>>2]|0)+12>>2]|0;break}case 7:{b=c[(c[b>>2]|0)+12>>2]|0;break}case 5:{b=Ex(c[b>>2]|0)|0;break}default:b=0}h=e;c[h>>2]=b;c[h+4>>2]=0;c[e+8>>2]=19;c[g>>2]=e+16;return 1}function Fy(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;e=a+16|0;b=c[c[e>>2]>>2]|0;f=b+16|0;g=a+8|0;d=c[g>>2]|0;if(!(!(f>>>0>=d>>>0|(f|0)==316344)?(c[b+24>>2]&15|0)==5:0)){Yx(a,1,281358);b=c[c[e>>2]>>2]|0;d=c[g>>2]|0}f=b+32|0;if(f>>>0>=d>>>0|(f|0)==316344){Vx(a,2,283978)|0;b=c[c[e>>2]>>2]|0;d=c[g>>2]|0}e=b+48|0;if(d>>>0<e>>>0){a=(b+40+4+(3-d)|0)>>>4;f=d;do{c[f+8>>2]=0;f=f+16|0}while(f>>>0<e>>>0);c[g>>2]=d+(a+1<<4)}c[g>>2]=e;g=b+32|0;f=Cx(c[b+16>>2]|0,g)|0;c[g>>2]=c[f>>2];c[g+4>>2]=c[f+4>>2];c[g+8>>2]=c[f+8>>2];c[g+12>>2]=c[f+12>>2];return 1}function Gy(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;f=b+16|0;d=c[c[f>>2]>>2]|0;h=d+16|0;i=b+8|0;e=c[i>>2]|0;if(!(!(h>>>0>=e>>>0|(h|0)==316344)?(c[d+24>>2]&15|0)==5:0)){Yx(b,1,281358);d=c[c[f>>2]>>2]|0;e=c[i>>2]|0}h=d+32|0;if(h>>>0>=e>>>0|(h|0)==316344){Vx(b,2,283978)|0;d=c[c[f>>2]>>2]|0;e=c[i>>2]|0}h=d+48|0;if(h>>>0>=e>>>0|(h|0)==316344){Vx(b,3,283978)|0;d=c[c[f>>2]>>2]|0;e=c[i>>2]|0}f=d+64|0;if(e>>>0<f>>>0){g=(d+56+4+(3-e)|0)>>>4;h=e;do{c[h+8>>2]=0;h=h+16|0}while(h>>>0<f>>>0);c[i>>2]=e+(g+1<<4)}c[i>>2]=f;g=c[d+16>>2]|0;e=d+32|0;d=Cx(g,e)|0;if((d|0)==316344)d=Bx(b,g,e)|0;h=(c[i>>2]|0)+-16|0;c[d>>2]=c[h>>2];c[d+4>>2]=c[h+4>>2];c[d+8>>2]=c[h+8>>2];c[d+12>>2]=c[h+12>>2];a[g+6>>0]=0;d=c[i>>2]|0;if(!(c[d+-8>>2]&64)){b=d+-32|0;c[i>>2]=b;return 1}e=g+5|0;f=a[e>>0]|0;if(!(f&4)){b=d+-32|0;c[i>>2]=b;return 1}if(!(a[(c[d+-16>>2]|0)+5>>0]&3)){b=d+-32|0;c[i>>2]=b;return 1}b=c[b+12>>2]|0;a[e>>0]=f&-5;b=b+80|0;c[g+28>>2]=c[b>>2];c[b>>2]=g;b=d+-32|0;c[i>>2]=b;return 1}function Hy(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=b+8|0;d=c[j>>2]|0;g=b+16|0;e=c[c[g>>2]>>2]|0;h=e+16|0;k=d-h>>4;if(!(h>>>0>=d>>>0|(h|0)==316344)?(f=c[e+24>>2]|0,(f&15|0)==4):0){switch(f&15){case 4:{d=h;i=7;break}case 3:{if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);e=c[c[g>>2]>>2]|0;d=c[j>>2]|0}i=e+16|0;d=i>>>0<d>>>0?i:316344;Xw(b,d);i=7;break}default:d=0}if((i|0)==7)d=(c[d>>2]|0)+16|0;if((a[d>>0]|0)==35){i=k+-1|0;b=c[j>>2]|0;k=b;c[k>>2]=i;c[k+4>>2]=((i|0)<0)<<31>>31;c[b+8>>2]=19;c[j>>2]=b+16;b=1;return b|0}}d=_x(b,1)|0;j=z;g=(j|0)<0;i=((k|0)<0)<<31>>31;f=yQ(d|0,j|0,k|0,i|0)|0;h=(j|0)>(i|0)|(j|0)==(i|0)&d>>>0>k>>>0;d=g?f:h?k:d;j=g?z:h?i:j;if(!((j|0)>0|(j|0)==0&d>>>0>0))Vx(b,1,282787)|0;b=k-d|0;return b|0}function Iy(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i;b=a+16|0;e=c[c[b>>2]>>2]|0;d=e+32|0;h=a+8|0;f=c[h>>2]|0;if(d>>>0>=f>>>0|(d|0)==316344)d=-1;else d=c[e+40>>2]&15;j=e+16|0;if(!(!(j>>>0>=f>>>0|(j|0)==316344)?(c[e+24>>2]&15|0)==5:0))Yx(a,1,281358);switch(d|0){case 0:case 5:break;default:Vx(a,2,283380)|0}if(gy(a,1,282739)|0){Wx(a,282751,g);l=i;return 1}b=c[c[b>>2]>>2]|0;e=c[h>>2]|0;f=b+48|0;if(e>>>0<f>>>0){b=(b+40+4+(3-e)|0)>>>4;d=e;do{c[d+8>>2]=0;d=d+16|0}while(d>>>0<f>>>0);c[h>>2]=e+(b+1<<4)}c[h>>2]=f;aw(a,1);l=i;return 1}function Jy(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=b+16|0;f=c[c[j>>2]>>2]|0;m=f+32|0;o=b+8|0;e=c[o>>2]|0;if(!(m>>>0>=e>>>0|(m|0)==316344)?(c[f+40>>2]&15|0)!=0:0){m=_x(b,2)|0;h=z;f=c[c[j>>2]>>2]|0;l=f+16|0;e=c[o>>2]|0;if(!(!(l>>>0>=e>>>0|(l|0)==316344)?(c[f+24>>2]&15|0)==4:0)){Yx(b,1,287721);f=c[c[j>>2]>>2]|0;e=c[o>>2]|0}g=f+16|0;g=g>>>0<e>>>0?g:316344;switch(c[g+8>>2]&15){case 4:{e=g;n=28;break}case 3:{if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);f=c[c[j>>2]>>2]|0;e=c[o>>2]|0}n=f+16|0;e=n>>>0<e>>>0?n:316344;Xw(b,e);n=28;break}default:{Yx(b,1,287721);l=0;k=0}}if((n|0)==28){e=c[e>>2]|0;if((a[e+4>>0]|0)==4)f=d[e+7>>0]|0;else f=c[e+12>>2]|0;l=e+16|0;k=f}j=yQ(m|0,h|0,-2,-1)|0;i=z;if(!(i>>>0<0|(i|0)==0&j>>>0<35))Vx(b,2,282714)|0;e=ZP(l,282732)|0;f=l+e|0;switch(a[f>>0]|0){case 45:{f=l+(e+1)|0;b=1;break}case 43:{f=l+(e+1)|0;b=0;break}default:b=0}e=a[f>>0]|0;a:do if(!(nO(e&255)|0)){g=0;f=0;e=0}else{i=((m|0)<0)<<31>>31;h=0;j=0;while(1){g=e&255;if((g+-48|0)>>>0<10)e=(e<<24>>24)+-48|0;else e=(BN(g)|0)+-55|0;if((e|0)>=(m|0)){g=0;f=0;e=0;break a}g=EQ(h|0,j|0,m|0,i|0)|0;h=yQ(e|0,((e|0)<0)<<31>>31|0,g|0,z|0)|0;j=z;g=f+1|0;e=a[g>>0]|0;if(!(nO(e&255)|0))break;else f=g}g=f+((ZP(g,282732)|0)+1)|0;e=(b|0)!=0;f=zQ(0,0,h|0,j|0)|0;f=e?f:h;e=e?z:j}while(0);if((g|0)==(l+k|0)){m=c[o>>2]|0;l=m;c[l>>2]=f;c[l+4>>2]=e;c[m+8>>2]=19;e=m+16|0}else n=48}else n=3;b:do if((n|0)==3){m=f+16|0;if(m>>>0>=e>>>0|(m|0)==316344){Vx(b,1,283978)|0;f=c[c[j>>2]>>2]|0;i=c[o>>2]|0}else i=e;e=f+16|0;g=e>>>0<i>>>0;if(!((e|0)==316344|g^1)?(h=f+24|0,(c[h>>2]&15|0)==3):0){e=f+32|0;if(i>>>0>=e>>>0)break;f=(h+4+(3-i)|0)>>>4;g=i;do{c[g+8>>2]=0;g=g+16|0}while(g>>>0<e>>>0);c[o>>2]=i+(f+1<<4);break}e=g?e:316344;switch(c[e+8>>2]&15){case 4:break;case 3:{if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);f=c[c[j>>2]>>2]|0;e=c[o>>2]|0}else e=i;n=f+16|0;e=n>>>0<e>>>0?n:316344;Xw(b,e);break}default:{n=48;break b}}e=c[e>>2]|0;if((a[e+4>>0]|0)==4)f=d[e+7>>0]|0;else f=c[e+12>>2]|0;e=Ww(e+16|0,c[o>>2]|0)|0;if(e|0)c[o>>2]=(c[o>>2]|0)+16;if((e|0)==(f+1|0))return 1;else n=48}while(0);if((n|0)==48){e=c[o>>2]|0;c[e+8>>2]=0;e=e+16|0}c[o>>2]=e;return 1}function Ky(a){a=a|0;var b=0;b=(c[c[a+16>>2]>>2]|0)+16|0;if(!((b|0)==316344?1:b>>>0>=(c[a+8>>2]|0)>>>0)){iy(a,1,0)|0;return 1}Vx(a,1,283978)|0;iy(a,1,0)|0;return 1}function Ly(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;g=a+8|0;b=c[g>>2]|0;h=a+16|0;d=c[c[h>>2]>>2]|0;i=b-(d+16)>>4;f=d+32|0;if(!(!(f>>>0>=b>>>0|(f|0)==316344)?(c[d+40>>2]&15|0)==6:0)){Yx(a,2,287317);b=c[g>>2]|0;d=c[c[h>>2]>>2]|0}c[b>>2]=1;c[b+8>>2]=1;e=b+16|0;c[g>>2]=e;d=d>>>0<b>>>0?d+16|0:316344;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];d=c[g>>2]|0;e=d+16|0;c[g>>2]=e;b=(c[c[h>>2]>>2]|0)+48|0;b=b>>>0<e>>>0?b:316344;e=d+-32|0;if(b>>>0<e>>>0){f=b;do{c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];c[j+8>>2]=c[f+8>>2];c[j+12>>2]=c[f+12>>2];c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[e>>2]=c[j>>2];c[e+4>>2]=c[j+4>>2];c[e+8>>2]=c[j+8>>2];c[e+12>>2]=c[j+12>>2];f=f+16|0;e=e+-16|0}while(f>>>0<e>>>0)}e=d;f=d+-16|0;do{c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];c[j+8>>2]=c[f+8>>2];c[j+12>>2]=c[f+12>>2];c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[e>>2]=c[j>>2];c[e+4>>2]=c[j+4>>2];c[e+8>>2]=c[j+8>>2];c[e+12>>2]=c[j+12>>2];f=f+16|0;e=e+-16|0}while(f>>>0<e>>>0);if(b>>>0<d>>>0)do{c[j>>2]=c[b>>2];c[j+4>>2]=c[b+4>>2];c[j+8>>2]=c[b+8>>2];c[j+12>>2]=c[b+12>>2];c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[d>>2]=c[j>>2];c[d+4>>2]=c[j+4>>2];c[d+8>>2]=c[j+8>>2];c[d+12>>2]=c[j+12>>2];b=b+16|0;d=d+-16|0}while(b>>>0<d>>>0);if((bw(a,i+-2|0,-1,2,2,18)|0)>>>0>1){a=c[g>>2]|0;c[a>>2]=0;c[a+8>>2]=1;j=a+16|0;c[g>>2]=j;a=a+-16|0;c[j>>2]=c[a>>2];c[j+4>>2]=c[a+4>>2];c[j+8>>2]=c[a+8>>2];c[j+12>>2]=c[a+12>>2];c[g>>2]=(c[g>>2]|0)+16;j=2;l=k;return j|0}else{j=((c[g>>2]|0)-((c[c[h>>2]>>2]|0)+16)>>4)+-2|0;l=k;return j|0}return 0}function My(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=a+8|0;if(b>>>0>1){d=c[e>>2]|0;c[d>>2]=0;c[d+8>>2]=1;b=d+16|0;c[e>>2]=b;d=d+-16|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[e>>2]=(c[e>>2]|0)+16;b=2;return b|0}else{b=((c[e>>2]|0)-((c[c[a+16>>2]>>2]|0)+16)>>4)-d|0;return b|0}return 0}function Ny(a,d,e,f){a=a|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;i=j;if(!(gy(a,1,d)|0)){g=a+16|0;i=c[c[g>>2]>>2]|0;k=i+16|0;h=a+8|0;d=c[h>>2]|0;if(!(!(k>>>0>=d>>>0|(k|0)==316344)?(c[i+24>>2]&15|0)==5:0)){Yx(a,1,281358);d=c[h>>2]|0}c[d>>2]=f;c[d+8>>2]=22;k=c[h>>2]|0;d=k+16|0;c[h>>2]=d;g=c[c[g>>2]>>2]|0;g=g>>>0<k>>>0?g+16|0:316344;c[d>>2]=c[g>>2];c[d+4>>2]=c[g+4>>2];c[d+8>>2]=c[g+8>>2];c[d+12>>2]=c[g+12>>2];d=c[h>>2]|0;g=d+16|0;c[h>>2]=g;if(!e){c[d+24>>2]=0;c[h>>2]=d+32;l=j;return}else{k=g;c[k>>2]=0;c[k+4>>2]=0;c[d+24>>2]=19;c[h>>2]=d+32;l=j;return}}h=a+8|0;g=c[h>>2]|0;d=(c[c[a+16>>2]>>2]|0)+16|0;d=d>>>0<g>>>0?d:316344;c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];g=c[h>>2]|0;c[h>>2]=g+16;g=g+-16|0;h=a+106|0;d=(b[h>>1]|0)+1<<16>>16;b[h>>1]=d;if((d&65535)>199){if(d<<16>>16==200)mw(a,279953,i);if((d&65535)>224)qw(a,6)}d=a+104|0;b[d>>1]=(b[d>>1]|0)+1<<16>>16;if(!(uw(a,g,3)|0))Sx(a);b[d>>1]=(b[d>>1]|0)+-1<<16>>16;b[h>>1]=(b[h>>1]|0)+-1<<16>>16;l=j;return}function Oy(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;o=r+16|0;n=r+8|0;i=r;j=r+20|0;c[j>>2]=22;p=e+16|0;k=c[p>>2]|0;q=e+8|0;f=c[q>>2]|0;h=f;do if(((c[e+24>>2]|0)-h|0)>352){i=f;f=22;m=5}else{if(((h-(c[e+28>>2]|0)>>4)+5|0)<=999978?(rw(e,166,j)|0)==0:0){i=c[q>>2]|0;f=c[j>>2]|0;m=5;break}c[i>>2]=282893;Wx(e,282290,i);f=c[q>>2]|0;h=f}while(0);if((m|0)==5){h=k+4|0;f=i+(f<<4)|0;if((c[h>>2]|0)>>>0<f>>>0)c[h>>2]=f;h=i;f=i}i=(c[c[p>>2]>>2]|0)+16|0;h=i>>>0<h>>>0?i:316344;c[f>>2]=c[h>>2];c[f+4>>2]=c[h+4>>2];c[f+8>>2]=c[h+8>>2];c[f+12>>2]=c[h+12>>2];h=c[q>>2]|0;c[q>>2]=h+16;i=e+106|0;f=(b[i>>1]|0)+1<<16>>16;b[i>>1]=f;if((f&65535)>199){if(f<<16>>16==200)mw(e,279953,n);if((f&65535)>224)qw(e,6)}f=e+104|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;if(!(uw(e,h,1)|0))Sx(e);b[f>>1]=(b[f>>1]|0)+-1<<16>>16;b[i>>1]=(b[i>>1]|0)+-1<<16>>16;f=c[q>>2]|0;i=f+-16|0;h=c[f+-8>>2]|0;if((i|0)!=316344&(h&15|0)==0){c[q>>2]=i;c[g>>2]=0;g=0;l=r;return g|0}if(((h&15)+-3|0)>>>0>=2){Wx(e,282919,o);f=c[q>>2]|0}h=f+-16|0;i=(c[c[p>>2]>>2]|0)+80|0;i=i>>>0<f>>>0?i:316344;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];c[i+12>>2]=c[h+12>>2];i=(c[q>>2]|0)+-16|0;c[q>>2]=i;h=c[c[p>>2]>>2]|0;f=h+80|0;f=f>>>0<i>>>0?f:316344;switch(c[f+8>>2]&15){case 4:break;case 3:{if((c[(c[e+12>>2]|0)+12>>2]|0)>0){Sw(e);h=c[c[p>>2]>>2]|0;f=c[q>>2]|0}else f=i;q=h+80|0;f=q>>>0<f>>>0?q:316344;Xw(e,f);break}default:{if(!g){g=0;l=r;return g|0}c[g>>2]=0;g=0;l=r;return g|0}}if(!g)f=c[f>>2]|0;else{f=c[f>>2]|0;if((a[f+4>>0]|0)==4)h=d[f+7>>0]|0;else h=c[f+12>>2]|0;c[g>>2]=h}g=f+16|0;l=r;return g|0}function Py(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;i=_x(a,2)|0;i=yQ(i|0,z|0,1,0)|0;h=z;b=a+8|0;f=c[b>>2]|0;d=f;c[d>>2]=i;c[d+4>>2]=h;c[f+8>>2]=19;d=f+16|0;e=c[c[a+16>>2]>>2]|0;g=d;c[g>>2]=i;c[g+4>>2]=h;c[f+24>>2]=19;c[b>>2]=f+32;Kx(a,e>>>0<f>>>0?e+16|0:316344,d,d);return ((c[(c[b>>2]|0)+-8>>2]&15|0)==0?1:2)|0}function Qy(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;g=_x(a,2)|0;h=z;i=yQ(g|0,h|0,1,0)|0;j=z;f=a+16|0;b=c[c[f>>2]>>2]|0;l=b+16|0;k=a+8|0;e=c[k>>2]|0;if(!(!(l>>>0>=e>>>0|(l|0)==316344)?(c[b+24>>2]&15|0)==5:0)){Yx(a,1,281358);e=c[k>>2]|0;b=c[c[f>>2]>>2]|0}a=e;c[a>>2]=i;c[a+4>>2]=j;c[e+8>>2]=19;a=e+16|0;c[k>>2]=a;b=c[(b>>>0<e>>>0?b+16|0:316344)>>2]|0;a:do if(h>>>0<0|((h|0)==0?g>>>0<(c[b+8>>2]|0)>>>0:0))b=(c[b+12>>2]|0)+(g<<4)|0;else{b=(c[b+16>>2]|0)+(((1<<(d[b+7>>0]|0))+-1&i)<<5)|0;while(1){if((c[b+24>>2]|0)==19?(l=b+16|0,(c[l>>2]|0)==(i|0)?(c[l+4>>2]|0)==(j|0):0):0)break;e=c[b+28>>2]|0;if(!e){b=316344;break a}b=b+(e<<5)|0}}while(0);c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];l=c[k>>2]|0;c[k>>2]=l+16;return ((c[l+8>>2]&15|0)==0?1:2)|0}function Ry(a,b,d){a=a|0;b=b|0;d=d|0;return ((c[a+8>>2]|0)-((c[c[a+16>>2]>>2]|0)+16)>>4)+-1|0}function Sy(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(a|0?(c[(c[a+12>>2]|0)+140>>2]|0)!=952:0)Wx(a,282533,b);if((c[(c[a+12>>2]|0)+12>>2]|0)>0)Sw(a);b=Dx(a)|0;e=a+8|0;f=c[e>>2]|0;c[f>>2]=b;c[f+8>>2]=69;c[e>>2]=(c[e>>2]|0)+16;Ax(a,b,0,7);jy(a,5476,0);l=d;return 1}function Ty(a){a=a|0;var b=0,d=0,e=0,f=0;b=a+16|0;d=c[c[b>>2]>>2]|0;f=d+16|0;e=a+8|0;if(!(!((f|0)==316344?1:f>>>0>=(c[e>>2]|0)>>>0)?(c[d+24>>2]&15|0)==6:0))Yx(a,1,287317);d=sx(a)|0;f=c[e>>2]|0;b=(c[c[b>>2]>>2]|0)+16|0;b=b>>>0<f>>>0?b:316344;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];b=c[e>>2]|0;c[e>>2]=b+16;if((d|0)==(a|0))return 1;c[e>>2]=b;f=d+8|0;a=c[f>>2]|0;c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[f>>2]=(c[f>>2]|0)+16;return 1}function Uy(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;i=a+16|0;f=c[c[i>>2]>>2]|0;e=f+16|0;h=a+8|0;g=c[h>>2]|0;e=e>>>0<g>>>0?e:316344;if((c[e+8>>2]|0)==72?(b=c[e>>2]|0,(b|0)!=0):0)e=g;else{Vx(a,1,283176)|0;f=c[c[i>>2]>>2]|0;e=c[h>>2]|0;b=0}f=$y(a,b,(e-(f+16)>>4)+-1|0)|0;g=c[h>>2]|0;if((f|0)<0){c[g>>2]=0;c[g+8>>2]=1;c[h>>2]=g+16;e=g;b=g+-16|0;do{c[j>>2]=c[b>>2];c[j+4>>2]=c[b+4>>2];c[j+8>>2]=c[b+8>>2];c[j+12>>2]=c[b+12>>2];c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];c[e>>2]=c[j>>2];c[e+4>>2]=c[j+4>>2];c[e+8>>2]=c[j+8>>2];c[e+12>>2]=c[j+12>>2];b=b+16|0;e=e+-16|0}while(b>>>0<e>>>0);j=2;l=k;return j|0}c[g>>2]=1;c[g+8>>2]=1;e=g+16|0;c[h>>2]=e;h=f+1|0;b=c[i>>2]|0;do if((f|0)>1000998){if((f|0)==1000999){b=(c[a+12>>2]|0)+40|0;break}b=c[b>>2]|0;if((c[b+8>>2]|0)==22)b=316344;else{b=c[b>>2]|0;b=(f+-1000999|0)>(d[b+6>>0]|0|0)?316344:b+16+(f+-1001e3<<4)|0}}else b=e+(~f<<4)|0;while(0);e=g+-16|0;if(b>>>0<e>>>0){f=b;do{c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];c[j+8>>2]=c[f+8>>2];c[j+12>>2]=c[f+12>>2];c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[e>>2]=c[j>>2];c[e+4>>2]=c[j+4>>2];c[e+8>>2]=c[j+8>>2];c[e+12>>2]=c[j+12>>2];f=f+16|0;e=e+-16|0}while(f>>>0<e>>>0)}if(b>>>0<g>>>0){e=g;do{c[j>>2]=c[b>>2];c[j+4>>2]=c[b+4>>2];c[j+8>>2]=c[b+8>>2];c[j+12>>2]=c[b+12>>2];c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];c[e>>2]=c[j>>2];c[e+4>>2]=c[j+4>>2];c[e+8>>2]=c[j+8>>2];c[e+12>>2]=c[j+12>>2];b=b+16|0;e=e+-16|0}while(b>>>0<e>>>0)}j=h;l=k;return j|0}function Vy(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;c[d>>2]=a;c[d+8>>2]=72;d=c[b>>2]|0;c[d+16>>2]=(c[(c[a+12>>2]|0)+136>>2]|0)==(a|0)&1;c[d+24>>2]=1;c[b>>2]=d+32;return 2}function Wy(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=(c[c[b+16>>2]>>2]|0)+16|0;i=b+8|0;d=d>>>0<(c[i>>2]|0)>>>0?d:316344;if(!((c[d+8>>2]|0)==72?(e=c[d>>2]|0,(e|0)!=0):0)){Vx(b,1,283176)|0;e=0}a:do if((e|0)==(b|0)){e=b+12|0;d=c[e>>2]|0;if((c[d+12>>2]|0)>0){Sw(b);d=c[e>>2]|0}e=d+280+(((283053>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(!(JN(283053,d+16|0)|0))break;else{d=xx(b,283053,7)|0;c[e>>2]=d;break}}else switch(a[e+6>>0]|0){case 1:{e=b+12|0;d=c[e>>2]|0;if((c[d+12>>2]|0)>0){Sw(b);d=c[e>>2]|0}e=d+280+(((283192>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(!(JN(283192,d+16|0)|0))break a;else{d=xx(b,283192,9)|0;c[e>>2]=d;break a}}case 0:{h=c[e+16>>2]|0;if((h|0)!=(e+48|0)){e=b+12|0;d=c[e>>2]|0;if((c[d+12>>2]|0)>0){Sw(b);d=c[e>>2]|0}e=d+280+(((283202>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(!(JN(283202,d+16|0)|0))break a;else{d=xx(b,283202,6)|0;c[e>>2]=d;break a}}f=b+12|0;d=c[f>>2]|0;g=(c[d+12>>2]|0)>0;if((c[e+8>>2]|0)==((c[h>>2]|0)+16|0)){if(g){Sw(b);d=c[f>>2]|0}e=d+280+(((283209>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(!(JN(283209,d+16|0)|0))break a;else{d=xx(b,283209,4)|0;c[e>>2]=d;break a}}else{if(g){Sw(b);d=c[f>>2]|0}e=d+280+(((283192>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(!(JN(283192,d+16|0)|0))break a;else{d=xx(b,283192,9)|0;c[e>>2]=d;break a}}}default:{e=b+12|0;d=c[e>>2]|0;if((c[d+12>>2]|0)>0){Sw(b);d=c[e>>2]|0}e=d+280+(((283209>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(!(JN(283209,d+16|0)|0))break a;else{d=xx(b,283209,4)|0;c[e>>2]=d;break a}}}while(0);b=c[i>>2]|0;c[b>>2]=d;c[b+8>>2]=(a[d+4>>0]|64)&255;c[i>>2]=(c[i>>2]|0)+16;return 1}function Xy(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=b+16|0;f=c[c[d>>2]>>2]|0;e=f+16|0;g=b+8|0;if(!(!((e|0)==316344?1:e>>>0>=(c[g>>2]|0)>>>0)?(c[f+24>>2]&15|0)==6:0))Yx(b,1,287317);e=sx(b)|0;f=c[g>>2]|0;d=(c[c[d>>2]>>2]|0)+16|0;d=d>>>0<f>>>0?d:316344;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];d=c[g>>2]|0;c[g>>2]=d+16;if((e|0)!=(b|0)){c[g>>2]=d;f=e+8|0;e=c[f>>2]|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];c[f>>2]=(c[f>>2]|0)+16}d=b+12|0;e=c[d>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[d>>2]|0}d=e+4|0;f=jg[c[e>>2]&31](c[d>>2]|0,0,6,32)|0;if(!f){if(!(c[e+140>>2]|0))qw(b,4);Tw(b,1);d=jg[c[e>>2]&31](c[d>>2]|0,0,6,32)|0;if(!d)qw(b,4);else h=d}else h=f;f=e+12|0;c[f>>2]=(c[f>>2]|0)+32;a[h+5>>0]=a[e+60>>0]&3;a[h+4>>0]=38;f=e+64|0;c[h>>2]=c[f>>2];c[f>>2]=h;a[h+6>>0]=1;c[h+12>>2]=404;f=(c[g>>2]|0)+-16|0;c[g>>2]=f;b=h+16|0;c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];b=c[g>>2]|0;c[b>>2]=h;c[b+8>>2]=102;c[g>>2]=(c[g>>2]|0)+16;return 1}function Yy(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;j=k+8|0;i=k;e=c[d+8>>2]|0;f=c[d+16>>2]|0;g=c[f>>2]|0;h=e-(g+16)>>4;if(!(b[d+104>>1]|0)){a[d+6>>0]=1;c[f+28>>2]=g-(c[d+28>>2]|0);if(!(a[f+34>>0]&2)){c[f+16>>2]=0;c[f>>2]=e+(~h<<4);qw(d,1)}else{l=k;return 0}}else if((c[(c[d+12>>2]|0)+136>>2]|0)==(d|0))mw(d,280050,j);else mw(d,280008,i);return 0}function Zy(a){a=a|0;var d=0,e=0;d=a+8|0;e=c[d>>2]|0;c[e>>2]=(b[a+104>>1]|0)==0&1;c[e+8>>2]=1;c[d>>2]=e+16;return 1}function _y(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;g=l;l=l+112|0;j=g+104|0;m=g;f=b+16|0;e=c[c[f>>2]>>2]|0;if((c[e+8>>2]|0)==22)d=316344;else{d=c[e>>2]|0;d=(a[d+6>>0]|0)==0?316344:d+16|0}if((c[d+8>>2]|0)==72)d=c[d>>2]|0;else d=0;k=b+8|0;d=$y(b,d,(c[k>>2]|0)-(e+16)>>4)|0;if((d|0)>=0){l=g;return d|0}if(((c[(c[k>>2]|0)+-8>>2]&15)+-3|0)>>>0>=2)nw(b);e=c[f>>2]|0;d=b+48|0;if(((e|0)!=(d|0)?(i=c[e+8>>2]|0,(i|0)!=(d|0)):0)?(c[m+96>>2]=i,iw(b,282217,m)|0,h=c[m+20>>2]|0,(h|0)>0):0){c[j>>2]=m+36;c[j+4>>2]=h;Vv(b,282220,j)|0;d=c[k>>2]|0}else{e=b+12|0;d=c[e>>2]|0;if((c[d+12>>2]|0)>0){Sw(b);d=c[e>>2]|0}e=d+280+(((335059>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(JN(335059,d+16|0)|0){d=xx(b,335059,0)|0;c[e>>2]=d}j=c[k>>2]|0;c[j>>2]=d;c[j+8>>2]=(a[d+4>>0]|64)&255;d=(c[k>>2]|0)+16|0;c[k>>2]=d}e=d+-16|0;d=d+-32|0;do{c[m>>2]=c[d>>2];c[m+4>>2]=c[d+4>>2];c[m+8>>2]=c[d+8>>2];c[m+12>>2]=c[d+12>>2];c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];d=d+16|0;e=e+-16|0}while(d>>>0<e>>>0);if((c[(c[b+12>>2]|0)+12>>2]|0)>0)Sw(b);Px(b,2);nw(b);return 0}function $y(f,g,h){f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;J=l;l=l+16|0;G=J+4|0;E=J;c[G>>2]=h;H=g+16|0;m=c[H>>2]|0;I=g+8|0;j=c[I>>2]|0;k=j;do if(((c[g+24>>2]|0)-k>>4|0)>(h|0)){n=h;o=k}else{if(((k-(c[g+28>>2]|0)>>4)+5|0)<=(1e6-h|0)?(rw(g,166,G)|0)==0:0){o=c[I>>2]|0;j=o;n=c[G>>2]|0;break}j=f+12|0;i=c[j>>2]|0;if((c[i+12>>2]|0)>0){Sw(f);i=c[j>>2]|0}j=i+280+(((283091>>>0)%127|0)<<2)|0;i=c[j>>2]|0;if(JN(283091,i+16|0)|0){i=xx(f,283091,28)|0;c[j>>2]=i}f=f+8|0;I=c[f>>2]|0;c[I>>2]=i;c[I+8>>2]=(a[i+4>>0]|64)&255;c[f>>2]=(c[f>>2]|0)+16;f=-1;l=J;return f|0}while(0);k=m+4|0;j=j+(n<<4)|0;if((c[k>>2]|0)>>>0<j>>>0)c[k>>2]=j;A=g+6|0;if((a[A>>0]|0)==0?(o|0)==((c[c[H>>2]>>2]|0)+16|0):0){j=f+12|0;i=c[j>>2]|0;if((c[i+12>>2]|0)>0){Sw(f);i=c[j>>2]|0}j=i+280+(((283120>>>0)%127|0)<<2)|0;i=c[j>>2]|0;if(JN(283120,i+16|0)|0){i=xx(f,283120,28)|0;c[j>>2]=i}f=f+8|0;I=c[f>>2]|0;c[I>>2]=i;c[I+8>>2]=(a[i+4>>0]|64)&255;c[f>>2]=(c[f>>2]|0)+16;f=-1;l=J;return f|0}F=(f|0)==(g|0);if((!F?(q=f+8|0,p=(c[q>>2]|0)+(0-h<<4)|0,c[q>>2]=p,(h|0)>0):0)?(i=c[I>>2]|0,c[i>>2]=c[p>>2],c[i+4>>2]=c[p+4>>2],c[i+8>>2]=c[p+8>>2],c[i+12>>2]=c[p+12>>2],i=(c[I>>2]|0)+16|0,c[I>>2]=i,(h|0)!=1):0){j=1;do{z=(c[q>>2]|0)+(j<<4)|0;c[i>>2]=c[z>>2];c[i+4>>2]=c[z+4>>2];c[i+8>>2]=c[z+8>>2];c[i+12>>2]=c[z+12>>2];i=(c[I>>2]|0)+16|0;c[I>>2]=i;j=j+1|0}while((j|0)!=(h|0))}c[G>>2]=h;x=g+104|0;y=b[x>>1]|0;if(!f)i=1;else i=(e[f+106>>1]|0)+1&65535;z=g+106|0;b[z>>1]=i;b[x>>1]=0;i=rw(g,167,G)|0;c[E>>2]=i;a:do if((i|0)!=-1){if((i|0)>1){r=g+28|0;s=g+109|0;t=g+92|0;u=g+88|0;w=g+12|0;v=g+32|0;b:while(1){j=c[H>>2]|0;if(!j)break;while(1){o=j+34|0;if(a[o>>0]&16)break;j=c[j+8>>2]|0;if(!j){D=59;break b}}p=c[r>>2]|0;q=c[j+28>>2]|0;h=p+q|0;k=c[v>>2]|0;c:do if(k|0)do{m=c[k>>2]|0;if(m>>>0<h>>>0)break c;n=k+8|0;c[v>>2]=c[n>>2];if(c[k+4>>2]|0){c[n>>2]=c[m>>2];c[n+4>>2]=c[m+4>>2];c[n+8>>2]=c[m+8>>2];c[n+12>>2]=c[m+12>>2];c[k>>2]=n;if((c[k+16>>2]&64|0?(B=c[w>>2]|0,C=c[n>>2]|0,(d[B+61>>0]|0)<2):0)?a[C+5>>0]&3:0)Iw(B,C)}else{n=c[w>>2]|0;jg[c[n>>2]&31](c[n+4>>2]|0,k,24,0)|0;n=n+12|0;c[n>>2]=(k|0?-24:0)+(c[n>>2]|0)}k=c[v>>2]|0}while((k|0)!=0);while(0);switch(i|0){case 4:{n=c[(c[w>>2]|0)+144>>2]|0;c[h>>2]=n;c[p+(q+8)>>2]=(a[n+4>>0]|64)&255;break}case 6:{n=xx(g,279929,23)|0;c[h>>2]=n;c[p+(q+8)>>2]=(a[n+4>>0]|64)&255;break}default:{n=(c[I>>2]|0)+-16|0;c[h>>2]=c[n>>2];c[h+4>>2]=c[n+4>>2];c[h+8>>2]=c[n+8>>2];c[h+12>>2]=c[n+12>>2]}}k=p+(q+16)|0;c[I>>2]=k;c[H>>2]=j;a[s>>0]=a[o>>0]&1;b[x>>1]=0;i=j;do{h=c[i+4>>2]|0;k=k>>>0<h>>>0?h:k;i=c[i+8>>2]|0}while((i|0)!=0);p=k-(c[r>>2]|0)|0;o=(p>>4)+1|0;o=((o|0)/8|0)+10+o|0;o=(o|0)<1e6?o:1e6;k=j+12|0;i=c[k>>2]|0;d:do if((c[t>>2]|0)>1e6){c[k>>2]=0;if(i|0)do{q=i;i=c[i+12>>2]|0;h=c[w>>2]|0;jg[c[h>>2]&31](c[h+4>>2]|0,q,36,0)|0;h=h+12|0;c[h>>2]=(q|0?-36:0)+(c[h>>2]|0)}while((i|0)!=0)}else if(i|0){m=j;do{n=m;m=c[i+12>>2]|0;if(!m)break d;h=c[w>>2]|0;jg[c[h>>2]&31](c[h+4>>2]|0,i,36,0)|0;h=h+12|0;c[h>>2]=(i|0?-36:0)+(c[h>>2]|0);c[k>>2]=m;c[m+8>>2]=n;k=m+12|0;i=c[k>>2]|0}while((i|0)!=0)}while(0);if((p|0)<=15999984?(o|0)<(c[t>>2]|0):0)sw(g,o);c[u>>2]=c[j+20>>2];i=rw(g,168,E)|0;c[E>>2]=i;if((i|0)<=1)break a}if((D|0)==59?(i|0)<=1:0)break;a[A>>0]=i;j=c[I>>2]|0;switch(i|0){case 4:{i=c[(c[w>>2]|0)+144>>2]|0;c[j>>2]=i;c[j+8>>2]=(a[i+4>>0]|64)&255;i=4;break}case 6:{i=xx(g,279929,23)|0;c[j>>2]=i;c[j+8>>2]=(a[i+4>>0]|64)&255;i=c[E>>2]|0;break}default:{E=j+-16|0;c[j>>2]=c[E>>2];c[j+4>>2]=c[E+4>>2];c[j+8>>2]=c[E+8>>2];c[j+12>>2]=c[E+12>>2]}}E=j+16|0;c[I>>2]=E;c[(c[H>>2]|0)+4>>2]=E}}else{c[E>>2]=2;i=2}while(0);b[x>>1]=y;b[z>>1]=(b[z>>1]|0)+-1<<16>>16;if(i>>>0>=2){if(F){f=-1;l=J;return f|0}H=(c[I>>2]|0)+-16|0;c[I>>2]=H;f=f+8|0;I=c[f>>2]|0;c[I>>2]=c[H>>2];c[I+4>>2]=c[H+4>>2];c[I+8>>2]=c[H+8>>2];c[I+12>>2]=c[H+12>>2];c[f>>2]=(c[f>>2]|0)+16;f=-1;l=J;return f|0}o=(c[I>>2]|0)-((c[c[H>>2]>>2]|0)+16)|0;i=o>>4;j=i+1|0;c[G>>2]=j;n=c[f+16>>2]|0;p=f+8|0;m=c[p>>2]|0;k=m;do if(((c[f+24>>2]|0)-k>>4|0)<=(j|0)){if(((k-(c[f+28>>2]|0)>>4)+5|0)<=(999999-i|0)?(rw(f,166,G)|0)==0:0){m=c[p>>2]|0;j=c[G>>2]|0;break}k=~i;if((o|0)<0){j=c[c[H>>2]>>2]|0;m=c[I>>2]|0;i=j+(0-i<<4)|0;if(m>>>0<i>>>0){j=(j+(k<<4)+8+4+(3-m)|0)>>>4;k=m;do{c[k+8>>2]=0;k=k+16|0}while(k>>>0<i>>>0);c[I>>2]=m+(j+1<<4)}}else i=(c[I>>2]|0)+(0-i<<4)|0;c[I>>2]=i;j=f+12|0;i=c[j>>2]|0;if((c[i+12>>2]|0)>0){Sw(f);i=c[j>>2]|0}j=i+280+(((283149>>>0)%127|0)<<2)|0;i=c[j>>2]|0;if(JN(283149,i+16|0)|0){i=xx(f,283149,26)|0;c[j>>2]=i}f=c[p>>2]|0;c[f>>2]=i;c[f+8>>2]=(a[i+4>>0]|64)&255;c[p>>2]=(c[p>>2]|0)+16;f=-1;l=J;return f|0}while(0);k=n+4|0;j=m+(j<<4)|0;if((c[k>>2]|0)>>>0<j>>>0)c[k>>2]=j;if(F){f=i;l=J;return f|0}j=(c[I>>2]|0)+(0-i<<4)|0;c[I>>2]=j;if((o|0)<=0){f=i;l=J;return f|0}f=c[p>>2]|0;c[f>>2]=c[j>>2];c[f+4>>2]=c[j+4>>2];c[f+8>>2]=c[j+8>>2];c[f+12>>2]=c[j+12>>2];j=(c[p>>2]|0)+16|0;c[p>>2]=j;if((i|0)==1){f=1;l=J;return f|0}else k=1;do{f=(c[I>>2]|0)+(k<<4)|0;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];c[j+8>>2]=c[f+8>>2];c[j+12>>2]=c[f+12>>2];j=(c[p>>2]|0)+16|0;c[p>>2]=j;k=k+1|0}while((k|0)!=(i|0));l=J;return i|0}function az(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(a|0?(c[(c[a+12>>2]|0)+140>>2]|0)!=952:0)Wx(a,282533,b);if((c[(c[a+12>>2]|0)+12>>2]|0)>0)Sw(a);b=Dx(a)|0;e=a+8|0;f=c[e>>2]|0;c[f>>2]=b;c[f+8>>2]=69;c[e>>2]=(c[e>>2]|0)+16;Ax(a,b,0,16);jy(a,5540,0);l=d;return 1}function bz(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+272|0;r=s;q=s+8|0;p=s+16|0;jP(283676,11,1,32772)|0;vP(32772)|0;if(!(xP(p,250)|0)){l=s;return 0}i=q+4|0;j=a+8|0;k=q+4|0;m=a+28|0;n=a+16|0;o=a+12|0;while(1){if(!(JN(p,283688)|0)){h=17;break}g=WO(p)|0;c[q>>2]=p;c[i>>2]=g;if(!((dw(a,7,q,283694,0)|0)==0?(g=(c[j>>2]|0)+-16|0,c[q>>2]=g,c[k>>2]=0,!(Aw(a,147,q,g-(c[m>>2]|0)|0,0)|0)):0)){b=c[j>>2]|0;switch(c[b+-8>>2]&15){case 4:{b=b+-16|0;h=10;break}case 3:{if((c[(c[o>>2]|0)+12>>2]|0)>0){Sw(a);b=c[j>>2]|0}b=b+-16|0;Xw(a,b);h=10;break}default:b=0}if((h|0)==10){h=0;b=(c[b>>2]|0)+16|0}c[r>>2]=b;JP(0,283711,r);vP(32772)|0}b=c[c[n>>2]>>2]|0;d=c[j>>2]|0;e=b+16|0;if(d>>>0<e>>>0){f=(b+8+4+(3-d)|0)>>>4;g=d;while(1){c[g+8>>2]=0;if(g>>>0<b>>>0)g=g+16|0;else break}c[j>>2]=d+(f+1<<4)}c[j>>2]=e;jP(283676,11,1,32772)|0;vP(32772)|0;if(!(xP(p,250)|0)){h=17;break}}if((h|0)==17){l=s;return 0}return 0}function cz(a){a=a|0;var b=0,e=0,f=0,g=0,h=0;f=c[c[a+16>>2]>>2]|0;e=f+16|0;a=a+8|0;b=c[a>>2]|0;if(!(e>>>0>=b>>>0|(e|0)==316344)?(c[f+24>>2]&15|0)==7:0){f=c[e>>2]|0;h=f+16|0;g=c[h+4>>2]|0;e=b;c[e>>2]=c[h>>2];c[e+4>>2]=g;c[b+8>>2]=d[f+6>>0];f=c[a>>2]|0;f=f+16|0;c[a>>2]=f;return 1}c[b+8>>2]=0;h=b;h=h+16|0;c[a>>2]=h;return 1}function dz(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;j=r+16|0;m=r;q=r+20|0;f=c[c[b+16>>2]>>2]|0;g=f+16|0;p=b+8|0;h=c[p>>2]|0;if(!(g>>>0>=h>>>0|(g|0)==316344)?(e=c[f+24>>2]|0,(e&15|0)==8):0)if((e|0)==72)o=c[g>>2]|0;else o=0;else o=b;n=d[o+108>>0]|0;e=c[o+84>>2]|0;do if(!e){c[h+8>>2]=0;e=h+16|0}else{if((e|0)!=169){f=b+12|0;e=c[f>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[f>>2]|0}f=e+280+(((283662>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(283662,e+16|0)|0){e=xx(b,283662,13)|0;c[f>>2]=e}m=c[p>>2]|0;c[m>>2]=e;c[m+8>>2]=(a[e+4>>0]|64)&255;e=(c[p>>2]|0)+16|0;break}k=(c[b+12>>2]|0)+40|0;c[m>>2]=320064;c[m+8>>2]=2;k=Cx(c[k>>2]|0,m)|0;c[h>>2]=c[k>>2];c[h+4>>2]=c[k+4>>2];c[h+8>>2]=c[k+8>>2];c[h+12>>2]=c[k+12>>2];c[p>>2]=(c[p>>2]|0)+16;k=(o|0)==(b|0);a:do if(k)e=o+8|0;else{c[m>>2]=1;i=c[o+16>>2]|0;e=o+8|0;f=c[e>>2]|0;g=f;do if(((c[o+24>>2]|0)-g|0)>16)h=1;else{if(((g-(c[o+28>>2]|0)>>4)+5|0)<=999999?(rw(o,166,m)|0)==0:0){f=c[e>>2]|0;h=c[m>>2]|0;break}Wx(b,283421,j);break a}while(0);g=i+4|0;f=f+(h<<4)|0;if((c[g>>2]|0)>>>0<f>>>0)c[g>>2]=f}while(0);f=c[e>>2]|0;c[f>>2]=o;c[f+8>>2]=72;f=c[e>>2]|0;c[e>>2]=f+16;if(k)e=c[p>>2]|0;else{c[e>>2]=f;e=c[p>>2]|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];e=(c[p>>2]|0)+16|0;c[p>>2]=e}f=e+-16|0;e=Cx(c[e+-32>>2]|0,f)|0;c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];f=c[p>>2]|0;e=f+-16|0;f=f+-32|0;do{c[m>>2]=c[f>>2];c[m+4>>2]=c[f+4>>2];c[m+8>>2]=c[f+8>>2];c[m+12>>2]=c[f+12>>2];c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];f=f+16|0;e=e+-16|0}while(f>>>0<e>>>0);e=(c[p>>2]|0)+-16|0}while(0);c[p>>2]=e;if(!(n&1))e=0;else{a[q>>0]=99;e=1}if(n&2){a[q+e>>0]=114;e=e+1|0}if(n&4){a[q+e>>0]=108;e=e+1|0}a[q+e>>0]=0;f=b+12|0;e=c[f>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[f>>2]|0}e=e+280+(((q>>>0)%127|0)<<2)|0;f=c[e>>2]|0;if(!(JN(q,f+16|0)|0)){m=f;q=c[p>>2]|0;c[q>>2]=m;m=m+4|0;m=a[m>>0]|0;m=m|64;m=m&255;q=q+8|0;c[q>>2]=m;q=c[p>>2]|0;m=o+96|0;m=c[m>>2]|0;o=(m|0)<0;o=o<<31>>31;b=q+16|0;n=b;c[n>>2]=m;b=b+4|0;c[b>>2]=o;b=q+24|0;c[b>>2]=19;q=q+32|0;c[p>>2]=q;l=r;return 3}else{m=xx(b,q,WO(q)|0)|0;c[e>>2]=m;q=c[p>>2]|0;c[q>>2]=m;m=m+4|0;m=a[m>>0]|0;m=m|64;m=m&255;q=q+8|0;c[q>>2]=m;q=c[p>>2]|0;m=o+96|0;m=c[m>>2]|0;o=(m|0)<0;o=o<<31>>31;b=q+16|0;n=b;c[n>>2]=m;b=b+4|0;c[b>>2]=o;b=q+24|0;c[b>>2]=19;q=q+32|0;c[p>>2]=q;l=r;return 3}return 0}function ez(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+128|0;n=t+24|0;k=t+16|0;r=t;q=t+28|0;o=b+16|0;f=c[c[o>>2]>>2]|0;g=f+16|0;s=b+8|0;e=c[s>>2]|0;a:do if(!(g>>>0>=e>>>0|(g|0)==316344)?(h=c[f+24>>2]|0,(h&15|0)==8):0){if((h|0)==72)m=c[g>>2]|0;else m=0;g=f+48|0;b:do if(!(g>>>0>=e>>>0|(g|0)==316344)?(j=c[f+56>>2]|0,(j&15|0)!=0):0){switch(j&15){case 4:{e=g;break}case 3:{p=16;break}default:{Yx(b,3,287721);i=0;break b}}if((p|0)==16){if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);f=c[c[o>>2]>>2]|0;e=c[s>>2]|0}j=f+48|0;e=j>>>0<e>>>0?j:316344;Xw(b,e)}i=(c[e>>2]|0)+16|0}else i=283515;while(0);if((m|0)==(b|0)){m=b;j=3;k=1;e=2}else{c[r>>2]=3;h=c[m+16>>2]|0;f=m+8|0;e=c[f>>2]|0;g=e;do if(((c[m+24>>2]|0)-g|0)>48)g=3;else{if(((g-(c[m+28>>2]|0)>>4)+5|0)<=999997?(rw(m,166,r)|0)==0:0){e=c[f>>2]|0;g=c[r>>2]|0;break}Wx(b,283421,k);j=3;k=0;e=2;break a}while(0);f=h+4|0;e=e+(g<<4)|0;if((c[f>>2]|0)>>>0<e>>>0)c[f>>2]=e;j=3;k=0;e=2}}else p=3;while(0);c:do if((p|0)==3){g=f+32|0;if(!(g>>>0>=e>>>0|(g|0)==316344)?(i=c[f+40>>2]|0,(i&15|0)!=0):0){switch(i&15){case 4:break;case 3:{p=6;break}default:{Yx(b,2,287721);m=b;j=2;k=1;e=1;i=0;break c}}if((p|0)==6){if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);f=c[c[o>>2]>>2]|0;e=c[s>>2]|0}g=f+32|0;g=g>>>0<e>>>0?g:316344;Xw(b,g)}m=b;j=2;k=1;e=1;i=(c[g>>2]|0)+16|0}else{m=b;j=2;k=1;e=1;i=283515}}while(0);h=c[c[o>>2]>>2]|0;g=h+(e<<4)|0;if(!((g|0)==316344?1:g>>>0>=(c[s>>2]|0)>>>0)?(c[h+(e<<4)+8>>2]&15|0)==6:0){c[n>>2]=i;f=Vv(b,283522,n)|0;n=c[s>>2]|0;e=(c[c[o>>2]>>2]|0)+(e<<4)|0;e=e>>>0<n>>>0?e:316344;c[n>>2]=c[e>>2];c[n+4>>2]=c[e+4>>2];c[n+8>>2]=c[e+8>>2];c[n+12>>2]=c[e+12>>2];e=c[s>>2]|0;c[s>>2]=e+16;if((m|0)==(b|0))i=f;else{c[s>>2]=e;i=m+8|0;o=c[i>>2]|0;c[o>>2]=c[e>>2];c[o+4>>2]=c[e+4>>2];c[o+8>>2]=c[e+8>>2];c[o+12>>2]=c[e+12>>2];c[i>>2]=(c[i>>2]|0)+16;i=f}}else p=34;do if((p|0)==34){e=_x(b,e)|0;if((e|0)>=0){f=c[m+16>>2]|0;h=m+48|0;if((e|0)!=0&(f|0)!=(h|0)){g=e;while(1){e=g+-1|0;f=c[f+8>>2]|0;if((g|0)>1&(f|0)!=(h|0))g=e;else break}}if(!((e|0)!=0|(f|0)==(h|0))){c[q+96>>2]=f;break}}b=c[s>>2]|0;c[b+8>>2]=0;c[s>>2]=b+16;b=1;l=t;return b|0}while(0);if(!(iw(m,i,q)|0)){b=Vx(b,j,283526)|0;l=t;return b|0}j=b+12|0;if((c[(c[j>>2]|0)+12>>2]|0)>0)Sw(b);p=Dx(b)|0;g=c[s>>2]|0;c[g>>2]=p;c[g+8>>2]=69;g=(c[s>>2]|0)+16|0;c[s>>2]=g;if(XO(i,83)|0){Uv(b,c[q+16>>2]|0);g=c[s>>2]|0;f=(c[j>>2]|0)+280+(((283541>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(283541,e+16|0)|0){e=xx(b,283541,6)|0;c[f>>2]=e}c[g>>2]=e;c[g+8>>2]=(a[e+4>>0]|64)&255;e=c[s>>2]|0;c[s>>2]=e+16;Lx(b,g+-32|0,e,e+-16|0);c[s>>2]=(c[s>>2]|0)+-32;g=q+36|0;e=c[j>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[j>>2]|0}f=e+280+(((g>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(g,e+16|0)|0){e=xx(b,g,WO(g)|0)|0;c[f>>2]=e}g=c[s>>2]|0;c[g>>2]=e;c[g+8>>2]=(a[e+4>>0]|64)&255;g=c[s>>2]|0;h=g+16|0;c[s>>2]=h;f=(c[j>>2]|0)+280+(((283548>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(283548,e+16|0)|0){e=xx(b,283548,9)|0;c[f>>2]=e}c[h>>2]=e;c[g+24>>2]=(a[e+4>>0]|64)&255;f=c[s>>2]|0;c[s>>2]=f+16;Lx(b,g+-16|0,f,f+-16|0);g=c[s>>2]|0;f=c[q+24>>2]|0;h=g+-32|0;c[h>>2]=f;c[h+4>>2]=((f|0)<0)<<31>>31;c[g+-24>>2]=19;h=g+-16|0;c[s>>2]=h;f=(c[j>>2]|0)+280+(((283558>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(283558,e+16|0)|0){e=xx(b,283558,11)|0;c[f>>2]=e}c[h>>2]=e;c[g+-8>>2]=(a[e+4>>0]|64)&255;f=c[s>>2]|0;c[s>>2]=f+16;Lx(b,g+-48|0,f,f+-16|0);g=c[s>>2]|0;f=c[q+28>>2]|0;h=g+-32|0;c[h>>2]=f;c[h+4>>2]=((f|0)<0)<<31>>31;c[g+-24>>2]=19;h=g+-16|0;c[s>>2]=h;f=(c[j>>2]|0)+280+(((283570>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(283570,e+16|0)|0){e=xx(b,283570,15)|0;c[f>>2]=e}c[h>>2]=e;c[g+-8>>2]=(a[e+4>>0]|64)&255;f=c[s>>2]|0;c[s>>2]=f+16;Lx(b,g+-48|0,f,f+-16|0);c[s>>2]=(c[s>>2]|0)+-32;Uv(b,c[q+12>>2]|0);g=c[s>>2]|0;f=(c[j>>2]|0)+280+(((283586>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(283586,e+16|0)|0){e=xx(b,283586,4)|0;c[f>>2]=e}c[g>>2]=e;c[g+8>>2]=(a[e+4>>0]|64)&255;p=c[s>>2]|0;c[s>>2]=p+16;Lx(b,g+-32|0,p,p+-16|0);g=(c[s>>2]|0)+-32|0;c[s>>2]=g}if(XO(i,108)|0){f=c[q+20>>2]|0;h=g;c[h>>2]=f;c[h+4>>2]=((f|0)<0)<<31>>31;c[g+8>>2]=19;h=g+16|0;c[s>>2]=h;f=(c[j>>2]|0)+280+(((283591>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(283591,e+16|0)|0){e=xx(b,283591,11)|0;c[f>>2]=e}c[h>>2]=e;c[g+24>>2]=(a[e+4>>0]|64)&255;p=c[s>>2]|0;c[s>>2]=p+16;Lx(b,g+-16|0,p,p+-16|0);g=(c[s>>2]|0)+-32|0;c[s>>2]=g}if(XO(i,117)|0){h=g;c[h>>2]=d[q+32>>0];c[h+4>>2]=0;c[g+8>>2]=19;h=g+16|0;c[s>>2]=h;f=(c[j>>2]|0)+280+(((283603>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(283603,e+16|0)|0){e=xx(b,283603,4)|0;c[f>>2]=e}c[h>>2]=e;c[g+24>>2]=(a[e+4>>0]|64)&255;h=c[s>>2]|0;c[s>>2]=h+16;Lx(b,g+-16|0,h,h+-16|0);g=c[s>>2]|0;h=g+-32|0;c[h>>2]=d[q+33>>0];c[h+4>>2]=0;c[g+-24>>2]=19;h=g+-16|0;c[s>>2]=h;f=(c[j>>2]|0)+280+(((283608>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(283608,e+16|0)|0){e=xx(b,283608,7)|0;c[f>>2]=e}c[h>>2]=e;c[g+-8>>2]=(a[e+4>>0]|64)&255;h=c[s>>2]|0;c[s>>2]=h+16;Lx(b,g+-48|0,h,h+-16|0);g=c[s>>2]|0;c[g+-32>>2]=(a[q+34>>0]|0)!=0&1;c[g+-24>>2]=1;h=g+-16|0;c[s>>2]=h;f=(c[j>>2]|0)+280+(((283616>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(283616,e+16|0)|0){e=xx(b,283616,8)|0;c[f>>2]=e}c[h>>2]=e;c[g+-8>>2]=(a[e+4>>0]|64)&255;p=c[s>>2]|0;c[s>>2]=p+16;Lx(b,g+-48|0,p,p+-16|0);g=(c[s>>2]|0)+-32|0;c[s>>2]=g}if(XO(i,110)|0){Uv(b,c[q+4>>2]|0);g=c[s>>2]|0;f=(c[j>>2]|0)+280+(((305254>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(305254,e+16|0)|0){e=xx(b,305254,4)|0;c[f>>2]=e}c[g>>2]=e;c[g+8>>2]=(a[e+4>>0]|64)&255;f=c[s>>2]|0;c[s>>2]=f+16;Lx(b,g+-32|0,f,f+-16|0);c[s>>2]=(c[s>>2]|0)+-32;Uv(b,c[q+8>>2]|0);g=c[s>>2]|0;f=(c[j>>2]|0)+280+(((283625>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(283625,e+16|0)|0){e=xx(b,283625,8)|0;c[f>>2]=e}c[g>>2]=e;c[g+8>>2]=(a[e+4>>0]|64)&255;p=c[s>>2]|0;c[s>>2]=p+16;Lx(b,g+-32|0,p,p+-16|0);g=(c[s>>2]|0)+-32|0;c[s>>2]=g}if(XO(i,116)|0){c[g>>2]=(a[q+35>>0]|0)!=0&1;c[g+8>>2]=1;h=g+16|0;c[s>>2]=h;f=(c[j>>2]|0)+280+(((283634>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(283634,e+16|0)|0){e=xx(b,283634,10)|0;c[f>>2]=e}c[h>>2]=e;c[g+24>>2]=(a[e+4>>0]|64)&255;q=c[s>>2]|0;c[s>>2]=q+16;Lx(b,g+-16|0,q,q+-16|0);g=(c[s>>2]|0)+-32|0;c[s>>2]=g}if(XO(i,76)|0){if(!k){if((m|0)!=(b|0)){g=m+8|0;q=(c[g>>2]|0)+-16|0;c[g>>2]=q;g=c[s>>2]|0;c[g>>2]=c[q>>2];c[g+4>>2]=c[q+4>>2];c[g+8>>2]=c[q+8>>2];c[g+12>>2]=c[q+12>>2];g=(c[s>>2]|0)+16|0;c[s>>2]=g}}else{f=g+-16|0;e=g+-32|0;do{c[r>>2]=c[e>>2];c[r+4>>2]=c[e+4>>2];c[r+8>>2]=c[e+8>>2];c[r+12>>2]=c[e+12>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[f>>2]=c[r>>2];c[f+4>>2]=c[r+4>>2];c[f+8>>2]=c[r+8>>2];c[f+12>>2]=c[r+12>>2];e=e+16|0;f=f+-16|0}while(e>>>0<f>>>0);g=c[s>>2]|0}f=(c[j>>2]|0)+280+(((283645>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(283645,e+16|0)|0){e=xx(b,283645,11)|0;c[f>>2]=e}c[g>>2]=e;c[g+8>>2]=(a[e+4>>0]|64)&255;q=c[s>>2]|0;c[s>>2]=q+16;Lx(b,g+-32|0,q,q+-16|0);g=(c[s>>2]|0)+-32|0;c[s>>2]=g}if(!(XO(i,102)|0)){b=1;l=t;return b|0}if(!k){if((m|0)!=(b|0)){g=m+8|0;r=(c[g>>2]|0)+-16|0;c[g>>2]=r;g=c[s>>2]|0;c[g>>2]=c[r>>2];c[g+4>>2]=c[r+4>>2];c[g+8>>2]=c[r+8>>2];c[g+12>>2]=c[r+12>>2];g=(c[s>>2]|0)+16|0;c[s>>2]=g}}else{f=g+-16|0;e=g+-32|0;do{c[r>>2]=c[e>>2];c[r+4>>2]=c[e+4>>2];c[r+8>>2]=c[e+8>>2];c[r+12>>2]=c[e+12>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[f>>2]=c[r>>2];c[f+4>>2]=c[r+4>>2];c[f+8>>2]=c[r+8>>2];c[f+12>>2]=c[r+12>>2];e=e+16|0;f=f+-16|0}while(e>>>0<f>>>0);g=c[s>>2]|0}f=(c[j>>2]|0)+280+(((283657>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(283657,e+16|0)|0){e=xx(b,283657,4)|0;c[f>>2]=e}c[g>>2]=e;c[g+8>>2]=(a[e+4>>0]|64)&255;r=c[s>>2]|0;c[s>>2]=r+16;Lx(b,g+-32|0,r,r+-16|0);c[s>>2]=(c[s>>2]|0)+-32;b=1;l=t;return b|0}function fz(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+32|0;n=v+16|0;u=v;m=b+16|0;f=c[c[m>>2]>>2]|0;g=f+16|0;t=b+8|0;if(!((g|0)==316344?1:g>>>0>=(c[t>>2]|0)>>>0)?(e=c[f+24>>2]|0,(e&15|0)==8):0)if((e|0)==72){s=c[g>>2]|0;f=1}else{s=0;f=1}else{s=b;f=0}e=_x(b,f|2)|0;j=f+1|0;r=c[c[m>>2]>>2]|0;f=r+(j<<4)|0;g=c[t>>2]|0;if(!(f>>>0>=g>>>0|(f|0)==316344)?(c[r+(j<<4)+8>>2]&15|0)==6:0){f=f>>>0<g>>>0?f:316344;c[g>>2]=c[f>>2];c[g+4>>2]=c[f+4>>2];c[g+8>>2]=c[f+8>>2];c[g+12>>2]=c[f+12>>2];f=c[t>>2]|0;c[t>>2]=f+16;h=(a[b+6>>0]|0)==1;if(h){r=c[m>>2]|0;s=c[r>>2]|0;t=c[b+28>>2]|0;u=r+28|0;c[r>>2]=t+(c[u>>2]|0);c[u>>2]=s-t}a:do if((c[f+8>>2]|0)==70?(i=c[(c[f>>2]|0)+12>>2]|0,k=c[i+32>>2]|0,(k|0)>0):0){g=c[i+60>>2]|0;f=0;while(1){if((c[g+(f*12|0)+4>>2]|0)>0){e=0;break a}if((c[g+(f*12|0)+8>>2]|0)>0){e=e+-1|0;if(!e)break}f=f+1|0;if((f|0)>=(k|0)){e=0;break a}}e=(c[g+(f*12|0)>>2]|0)+16|0}else e=0;while(0);if(h){r=c[m>>2]|0;s=c[r>>2]|0;t=c[b+28>>2]|0;u=r+28|0;c[r>>2]=t+(c[u>>2]|0);c[u>>2]=s-t}Uv(b,e);b=1;l=v;return b|0}f=_x(b,j)|0;if((f|0)>=0){r=s+16|0;k=c[r>>2]|0;i=s+48|0;if((f|0)!=0&(k|0)!=(i|0)){h=f;g=k;while(1){f=h+-1|0;g=c[g+8>>2]|0;if((h|0)>1&(g|0)!=(i|0))h=f;else{o=g;break}}}else o=k;if(!((f|0)!=0|(o|0)==(i|0))){p=(s|0)==(b|0);b:do if(!p){c[u>>2]=1;h=s+8|0;f=c[h>>2]|0;g=f;do if(((c[s+24>>2]|0)-g|0)>16)h=1;else{if(((g-(c[s+28>>2]|0)>>4)+5|0)<=999999?(rw(s,166,u)|0)==0:0){f=c[h>>2]|0;h=c[u>>2]|0;break}Wx(b,283421,n);break b}while(0);g=k+4|0;f=f+(h<<4)|0;if((c[g>>2]|0)>>>0<f>>>0)c[g>>2]=f}while(0);n=s+6|0;m=a[n>>0]|0;if(m<<24>>24==1){h=c[r>>2]|0;i=c[h>>2]|0;j=c[s+28>>2]|0;k=h+28|0;c[h>>2]=j+(c[k>>2]|0);c[k>>2]=i-j}c:do if(a[o+34>>0]&2){if((e|0)<0){g=c[o>>2]|0;h=d[(c[(c[g>>2]|0)+12>>2]|0)+6>>0]|0;if((((c[o+16>>2]|0)-g>>4)-h|0)<=(0-e|0)){e=m;g=0;break}f=279681;e=g+(h-e<<4)|0;q=53;break}g=c[o+16>>2]|0;f=c[(c[c[o>>2]>>2]|0)+12>>2]|0;i=(c[o+20>>2]|0)-(c[f+48>>2]|0)>>2;j=c[f+32>>2]|0;if((j|0)>0){k=c[f+60>>2]|0;f=e;h=0;while(1){if((c[k+(h*12|0)+4>>2]|0)>=(i|0)){q=48;break c}if((c[k+(h*12|0)+8>>2]|0)>=(i|0)){f=f+-1|0;if(!f)break}h=h+1|0;if((h|0)>=(j|0)){q=48;break c}}f=(c[k+(h*12|0)>>2]|0)+16|0;q=52}else q=48}else{g=(c[o>>2]|0)+16|0;q=48}while(0);if((q|0)==48){if((c[r>>2]|0)==(o|0))f=s+8|0;else f=c[o+12>>2]|0;if((e|0)>0?((c[f>>2]|0)-g>>4|0)>=(e|0):0){f=279668;q=52}else{e=m;g=0}}if((q|0)==52){e=g+(e+-1<<4)|0;q=53}if((q|0)==53){g=s+8|0;q=c[g>>2]|0;c[q>>2]=c[e>>2];c[q+4>>2]=c[e+4>>2];c[q+8>>2]=c[e+8>>2];c[q+12>>2]=c[e+12>>2];c[g>>2]=(c[g>>2]|0)+16;e=a[n>>0]|0;g=f}if(e<<24>>24==1){n=c[r>>2]|0;o=c[n>>2]|0;q=c[s+28>>2]|0;r=n+28|0;c[n>>2]=q+(c[r>>2]|0);c[r>>2]=o-q}if(!g){b=c[t>>2]|0;c[b+8>>2]=0;c[t>>2]=b+16;b=1;l=v;return b|0}if(!p){s=s+8|0;r=(c[s>>2]|0)+-16|0;c[s>>2]=r;s=c[t>>2]|0;c[s>>2]=c[r>>2];c[s+4>>2]=c[r+4>>2];c[s+8>>2]=c[r+8>>2];c[s+12>>2]=c[r+12>>2];c[t>>2]=(c[t>>2]|0)+16}f=b+12|0;e=c[f>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[f>>2]|0}f=e+280+(((g>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(g,e+16|0)|0){e=xx(b,g,WO(g)|0)|0;c[f>>2]=e}f=c[t>>2]|0;c[f>>2]=e;c[f+8>>2]=(a[e+4>>0]|64)&255;f=c[t>>2]|0;c[t>>2]=f+16;e=f;f=f+-16|0;do{c[u>>2]=c[f>>2];c[u+4>>2]=c[f+4>>2];c[u+8>>2]=c[f+8>>2];c[u+12>>2]=c[f+12>>2];c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[e>>2]=c[u>>2];c[e+4>>2]=c[u+4>>2];c[e+8>>2]=c[u+8>>2];c[e+12>>2]=c[u+12>>2];f=f+16|0;e=e+-16|0}while(f>>>0<e>>>0);b=2;l=v;return b|0}}b=Vx(b,j,283402)|0;l=v;return b|0}function gz(a){a=a|0;var b=0,d=0;b=a+8|0;d=c[b>>2]|0;a=(c[a+12>>2]|0)+40|0;c[d>>2]=c[a>>2];c[d+4>>2]=c[a+4>>2];c[d+8>>2]=c[a+8>>2];c[d+12>>2]=c[a+12>>2];c[b>>2]=(c[b>>2]|0)+16;return 1}function hz(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;e=a+16|0;b=c[c[e>>2]>>2]|0;f=b+16|0;g=a+8|0;d=c[g>>2]|0;if(f>>>0>=d>>>0|(f|0)==316344){Vx(a,1,283978)|0;f=c[g>>2]|0;b=c[c[e>>2]>>2]|0}else f=d;b=b+16|0;b=b>>>0<f>>>0?b:316344;d=c[b+8>>2]|0;switch(d&15){case 5:{b=(c[b>>2]|0)+24|0;break}case 7:{b=(c[b>>2]|0)+8|0;break}default:b=(c[a+12>>2]|0)+244+((d&15)<<2)|0}b=c[b>>2]|0;if(!b){c[f+8>>2]=0;f=f+16|0;c[g>>2]=f;return 1}else{c[f>>2]=b;c[f+8>>2]=69;f=c[g>>2]|0;f=f+16|0;c[g>>2]=f;return 1}return 0}function iz(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;j=k;h=_x(b,2)|0;g=b+16|0;e=c[c[g>>2]>>2]|0;m=e+16|0;i=b+8|0;f=c[i>>2]|0;if(!(!(m>>>0>=f>>>0|(m|0)==316344)?(c[e+24>>2]&15|0)==6:0)){Yx(b,1,287317);f=c[i>>2]|0;e=c[c[g>>2]>>2]|0}e=e+16|0;e=e>>>0<f>>>0?e:316344;a:do switch(c[e+8>>2]&63){case 38:{e=c[e>>2]|0;if((h|0)<=0){m=0;l=k;return m|0}if((d[e+6>>0]|0|0)<(h|0)){m=0;l=k;return m|0}else{g=335059;e=e+16+(h+-1<<4)|0;break a}}case 6:{e=c[e>>2]|0;g=c[e+12>>2]|0;if((h|0)<=0){m=0;l=k;return m|0}if((c[g+12>>2]|0)<(h|0)){m=0;l=k;return m|0}m=h+-1|0;h=c[c[e+16+(m<<2)>>2]>>2]|0;e=c[(c[g+64>>2]|0)+(m<<3)>>2]|0;if(!e){g=279657;e=h}else{g=e+16|0;e=h}break}default:{m=0;l=k;return m|0}}while(0);m=e;c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[i>>2]=(c[i>>2]|0)+16;if(!g){m=0;l=k;return m|0}f=b+12|0;e=c[f>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[f>>2]|0}f=e+280+(((g>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(g,e+16|0)|0){e=xx(b,g,WO(g)|0)|0;c[f>>2]=e}f=c[i>>2]|0;c[f>>2]=e;c[f+8>>2]=(a[e+4>>0]|64)&255;f=c[i>>2]|0;c[i>>2]=f+16;e=f;f=f+-16|0;do{c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];c[j+8>>2]=c[f+8>>2];c[j+12>>2]=c[f+12>>2];c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[e>>2]=c[j>>2];c[e+4>>2]=c[j+4>>2];c[e+8>>2]=c[j+8>>2];c[e+12>>2]=c[j+12>>2];f=f+16|0;e=e+-16|0}while(f>>>0<e>>>0);m=2;l=k;return m|0}function jz(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=_x(b,2)|0;k=b+16|0;e=c[c[k>>2]>>2]|0;j=e+16|0;l=b+8|0;f=c[l>>2]|0;if(!(!(j>>>0>=f>>>0|(j|0)==316344)?(c[e+24>>2]&15|0)==6:0)){Yx(b,1,287317);f=c[l>>2]|0;e=c[c[k>>2]>>2]|0}e=e+16|0;e=e>>>0<f>>>0?e:316344;switch(c[e+8>>2]&63){case 38:{e=c[e>>2]|0;if((m|0)>0?(d[e+6>>0]|0|0)>=(m|0):0){g=335059;e=e+16+(m+-1<<4)|0;h=12}else h=13;break}case 6:{e=c[e>>2]|0;g=c[e+12>>2]|0;if((m|0)>0?(c[g+12>>2]|0)>=(m|0):0){j=m+-1|0;h=c[c[e+16+(j<<2)>>2]>>2]|0;e=c[(c[g+64>>2]|0)+(j<<3)>>2]|0;if(!e){g=279657;e=h;h=12}else{g=e+16|0;e=h;h=12}}else h=13;break}default:h=13}if((h|0)==12?(j=e,c[f>>2]=c[j>>2],c[f+4>>2]=c[j+4>>2],c[f+8>>2]=c[j+8>>2],c[f+12>>2]=c[j+12>>2],c[l>>2]=(c[l>>2]|0)+16,(g|0)==0):0)h=13;if((h|0)==13)Vx(b,2,283471)|0;j=_x(b,4)|0;f=c[c[k>>2]>>2]|0;i=f+48|0;e=c[l>>2]|0;if(!(i>>>0>=e>>>0|(i|0)==316344)?(c[f+56>>2]&15|0)==6:0){i=e;e=f}else{Yx(b,3,287317);i=c[l>>2]|0;e=c[c[k>>2]>>2]|0}e=e+48|0;e=e>>>0<i>>>0?e:316344;switch(c[e+8>>2]&63){case 38:{e=c[e>>2]|0;if((j|0)>0?(d[e+6>>0]|0|0)>=(j|0):0){f=335059;e=e+16+(j+-1<<4)|0;h=25}else h=26;break}case 6:{e=c[e>>2]|0;f=c[e+12>>2]|0;if((j|0)>0?(c[f+12>>2]|0)>=(j|0):0){h=j+-1|0;g=c[c[e+16+(h<<2)>>2]>>2]|0;e=c[(c[f+64>>2]|0)+(h<<3)>>2]|0;if(!e){f=279657;e=g;h=25}else{f=e+16|0;e=g;h=25}}else h=26;break}default:h=26}if((h|0)==25){c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];c[i+8>>2]=c[e+8>>2];c[i+12>>2]=c[e+12>>2];e=(c[l>>2]|0)+16|0;c[l>>2]=e;if(!f)h=26}if((h|0)==26){Vx(b,4,283471)|0;e=c[l>>2]|0}f=c[c[k>>2]>>2]|0;i=f+16|0;i=c[(i>>>0<e>>>0?i:316344)+8>>2]|0;if(!((i|0)==22^(i|0)!=102)){Vx(b,1,283493)|0;f=c[c[k>>2]>>2]|0;e=c[l>>2]|0}i=f+48|0;i=c[(i>>>0<e>>>0?i:316344)+8>>2]|0;if(!((i|0)==22^(i|0)!=102)){Vx(b,3,283493)|0;f=c[c[k>>2]>>2]|0;e=c[l>>2]|0}g=f+16|0;g=(c[(g>>>0<e>>>0?g:316344)>>2]|0)+16+(m+-1<<2)|0;f=f+48|0;e=(c[(f>>>0<e>>>0?f:316344)>>2]|0)+16+(j+-1<<2)|0;f=c[g>>2]|0;l=f+4|0;m=(c[l>>2]|0)+-1|0;c[l>>2]=m;if((m|0)==0?(c[f>>2]|0)==(f+8|0):0){m=c[b+12>>2]|0;jg[c[m>>2]&31](c[m+4>>2]|0,f,24,0)|0;m=m+12|0;c[m>>2]=(f|0?-24:0)+(c[m>>2]|0)}f=c[e>>2]|0;c[g>>2]=f;g=f+4|0;c[g>>2]=(c[g>>2]|0)+1;g=c[f>>2]|0;e=f+8|0;if((g|0)!=(e|0))c[e+4>>2]=1;if(!((g|0)==(f+8|0)?(c[g+8>>2]&64|0)!=0:0))return 0;f=c[b+12>>2]|0;e=c[g>>2]|0;if((d[f+61>>0]|0)>=2)return 0;if(!(a[e+5>>0]&3))return 0;Iw(f,e);return 0}function kz(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=_x(a,2)|0;i=a+16|0;b=c[c[i>>2]>>2]|0;h=b+16|0;k=a+8|0;e=c[k>>2]|0;if(!(!(h>>>0>=e>>>0|(h|0)==316344)?(c[b+24>>2]&15|0)==6:0)){Yx(a,1,287317);e=c[k>>2]|0;b=c[c[i>>2]>>2]|0}b=b+16|0;b=b>>>0<e>>>0?b:316344;switch(c[b+8>>2]&63){case 38:{b=c[b>>2]|0;if((j|0)>0?(d[b+6>>0]|0|0)>=(j|0):0){h=335059;b=b+16+(j+-1<<4)|0;f=12}else f=13;break}case 6:{b=c[b>>2]|0;f=c[b+12>>2]|0;if((j|0)>0?(c[f+12>>2]|0)>=(j|0):0){h=j+-1|0;g=c[c[b+16+(h<<2)>>2]>>2]|0;b=c[(c[f+64>>2]|0)+(h<<3)>>2]|0;if(!b){h=279657;b=g;f=12}else{h=b+16|0;b=g;f=12}}else f=13;break}default:f=13}if((f|0)==12){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];b=(c[k>>2]|0)+16|0;c[k>>2]=b;if(!h)f=13;else g=b}if((f|0)==13){Vx(a,2,283471)|0;g=c[k>>2]|0}e=(c[c[i>>2]>>2]|0)+16|0;f=e>>>0<g>>>0;b=f?e:316344;switch(c[b+8>>2]&63){case 6:{j=c[(c[(f?e:316344)>>2]|0)+16+(j+-1<<2)>>2]|0;c[g>>2]=j;j=g+8|0;c[j>>2]=2;j=c[k>>2]|0;j=j+16|0;c[k>>2]=j;return 1}case 38:{j=(c[b>>2]|0)+16+(j+-1<<4)|0;c[g>>2]=j;j=g+8|0;c[j>>2]=2;j=c[k>>2]|0;j=j+16|0;c[k>>2]=j;return 1}default:{j=0;c[g>>2]=j;j=g+8|0;c[j>>2]=2;j=c[k>>2]|0;j=j+16|0;c[k>>2]=j;return 1}}return 0}function lz(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=b+16|0;e=c[c[g>>2]>>2]|0;i=e+16|0;j=b+8|0;f=c[j>>2]|0;if(!(!(i>>>0>=f>>>0|(i|0)==316344)?(c[e+24>>2]&15|0)==7:0)){Yx(b,1,281342);e=c[c[g>>2]>>2]|0;f=c[j>>2]|0}i=e+32|0;if(i>>>0>=f>>>0|(i|0)==316344){Vx(b,2,283978)|0;e=c[c[g>>2]>>2]|0;f=c[j>>2]|0}g=e+48|0;if(f>>>0<g>>>0){h=(e+40+4+(3-f)|0)>>>4;i=f;do{c[i+8>>2]=0;i=i+16|0}while(i>>>0<g>>>0);c[j>>2]=f+(h+1<<4)}c[j>>2]=g;f=e+16|0;i=c[f>>2]|0;k=e+32|0;g=c[k+4>>2]|0;h=i+16|0;c[h>>2]=c[k>>2];c[h+4>>2]=g;a[i+6>>0]=c[e+40>>2];i=c[j>>2]|0;if(!(c[i+-8>>2]&64)){k=i;k=k+-16|0;c[j>>2]=k;return 1}f=(c[f>>2]|0)+5|0;g=a[f>>0]|0;if(!(g&4)){k=i;k=k+-16|0;c[j>>2]=k;return 1}h=c[i+-16>>2]|0;if(!(a[h+5>>0]&3)){k=i;k=k+-16|0;c[j>>2]=k;return 1}e=c[b+12>>2]|0;if((d[e+61>>0]|0)<2){Iw(e,h);k=c[j>>2]|0;k=k+-16|0;c[j>>2]=k;return 1}else{a[f>>0]=a[e+60>>0]&3|g&-8;k=i;k=k+-16|0;c[j>>2]=k;return 1}return 0}function mz(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;m=y+16|0;n=y;t=b+16|0;g=c[c[t>>2]>>2]|0;d=g+16|0;w=b+8|0;h=c[w>>2]|0;if(!(d>>>0>=h>>>0|(d|0)==316344)?(e=c[g+24>>2]|0,(e&15|0)==8):0)if((e|0)==72){x=c[d>>2]|0;f=1}else{x=0;f=1}else{x=b;f=0}q=f+1|0;s=g+(q<<4)|0;if(!(s>>>0>=h>>>0|(s|0)==316344)?(c[g+(q<<4)+8>>2]&15|0)!=0:0){d=f|2;e=Tv(b,d,0)|0;if(!e)Yx(b,d,287721);s=c[c[t>>2]>>2]|0;r=s+(q<<4)|0;if(!(!((r|0)==316344?1:r>>>0>=(c[w>>2]|0)>>>0)?(c[s+(q<<4)+8>>2]&15|0)==6:0))Yx(b,q,287317);o=$x(b,f+3|0,0,0)|0;s=(XO(e,99)|0)!=0&1;k=(XO(e,114)|0)==0;s=k?s:s|2;k=(XO(e,108)|0)==0;s=k?s:s|4;k=w;f=c[w>>2]|0;r=o;p=169;s=(o|0)>0?s|8:s}else{f=g+((f|2)<<4)|0;if(h>>>0<f>>>0){d=(g+(q<<4)+8+4+(3-h)|0)>>>4;e=h;do{c[e+8>>2]=0;e=e+16|0}while(e>>>0<f>>>0);c[w>>2]=h+(d+1<<4)}c[w>>2]=f;k=w;r=0;p=0;s=0}o=b+12|0;h=(c[o>>2]|0)+40|0;c[n>>2]=320064;c[n+8>>2]=2;h=Cx(c[h>>2]|0,n)|0;c[f>>2]=c[h>>2];c[f+4>>2]=c[h+4>>2];c[f+8>>2]=c[h+8>>2];c[f+12>>2]=c[h+12>>2];h=c[w>>2]|0;c[w>>2]=h+16;if(!(c[h+8>>2]&15)){if((c[(c[o>>2]|0)+12>>2]|0)>0)Sw(b);e=Dx(b)|0;d=c[w>>2]|0;c[d>>2]=e;c[d+8>>2]=69;c[w>>2]=(c[w>>2]|0)+16;Ax(b,e,0,2);e=c[k>>2]|0;d=e+-16|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];c[w>>2]=(c[w>>2]|0)+16;e=c[(c[o>>2]|0)+40>>2]|0;c[n>>2]=320064;c[n+8>>2]=2;d=Cx(e,n)|0;if((d|0)==316344)d=Bx(b,e,n)|0;h=(c[w>>2]|0)+-16|0;c[d>>2]=c[h>>2];c[d+4>>2]=c[h+4>>2];c[d+8>>2]=c[h+8>>2];c[d+12>>2]=c[h+12>>2];d=c[w>>2]|0;if((c[d+-8>>2]&64|0?(i=e+5|0,j=a[i>>0]|0,j&4):0)?a[(c[d+-16>>2]|0)+5>>0]&3:0){h=c[o>>2]|0;a[i>>0]=j&-5;j=h+80|0;c[e+28>>2]=c[j>>2];c[j>>2]=e}c[w>>2]=d+-16;d=c[o>>2]|0;if((c[d+12>>2]|0)>0){Sw(b);d=c[o>>2]|0}e=d+280+(((283436>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(JN(283436,d+16|0)|0){d=xx(b,283436,1)|0;c[e>>2]=d}f=c[w>>2]|0;c[f>>2]=d;c[f+8>>2]=(a[d+4>>0]|64)&255;f=c[w>>2]|0;g=f+16|0;c[w>>2]=g;e=(c[o>>2]|0)+280+(((283438>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(JN(283438,d+16|0)|0){d=xx(b,283438,6)|0;c[e>>2]=d}c[g>>2]=d;c[f+24>>2]=(a[d+4>>0]|64)&255;i=c[w>>2]|0;c[w>>2]=i+16;Lx(b,f+-16|0,i,i+-16|0);i=c[w>>2]|0;j=i+-32|0;c[w>>2]=j;i=i+-48|0;c[j>>2]=c[i>>2];c[j+4>>2]=c[i+4>>2];c[j+8>>2]=c[i+8>>2];c[j+12>>2]=c[i+12>>2];c[w>>2]=(c[w>>2]|0)+16;aw(b,-2)}i=(x|0)==(b|0);a:do if(i)d=x+8|0;else{c[n>>2]=1;h=c[x+16>>2]|0;d=x+8|0;e=c[d>>2]|0;f=e;do if(((c[x+24>>2]|0)-f|0)>16){g=e;e=1}else{if(((f-(c[x+28>>2]|0)>>4)+5|0)<=999999?(rw(x,166,n)|0)==0:0){g=c[d>>2]|0;e=c[n>>2]|0;break}Wx(b,283421,m);break a}while(0);f=h+4|0;e=g+(e<<4)|0;if((c[f>>2]|0)>>>0<e>>>0)c[f>>2]=e}while(0);e=c[d>>2]|0;c[e>>2]=x;c[e+8>>2]=72;e=c[d>>2]|0;c[d>>2]=e+16;if(i){e=c[k>>2]|0;d=e}else{c[d>>2]=e;d=c[k>>2]|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];e=(c[w>>2]|0)+16|0;c[w>>2]=e;d=e}f=(c[c[t>>2]>>2]|0)+(q<<4)|0;f=f>>>0<d>>>0?f:316344;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];e=c[w>>2]|0;c[w>>2]=e+16;f=c[e+-32>>2]|0;e=e+-16|0;d=Cx(f,e)|0;if((d|0)==316344)d=Bx(b,f,e)|0;b=(c[w>>2]|0)+-16|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];a[f+6>>0]=0;d=c[w>>2]|0;if((c[d+-8>>2]&64|0?(u=f+5|0,v=a[u>>0]|0,v&4):0)?a[(c[d+-16>>2]|0)+5>>0]&3:0){b=c[o>>2]|0;a[u>>0]=v&-5;v=b+80|0;c[f+28>>2]=c[v>>2];c[v>>2]=f}c[w>>2]=d+-32;f=(p|0)==0|(s|0)==0;d=f?0:p;e=c[x+16>>2]|0;if(!(a[e+34>>0]&2)){w=x+84|0;c[w>>2]=d;w=x+96|0;c[w>>2]=r;w=x+100|0;c[w>>2]=r;w=s&255;w=f?0:w;x=x+108|0;a[x>>0]=w;l=y;return 0}c[x+20>>2]=c[e+20>>2];w=x+84|0;c[w>>2]=d;w=x+96|0;c[w>>2]=r;w=x+100|0;c[w>>2]=r;w=s&255;w=f?0:w;x=x+108|0;a[x>>0]=w;l=y;return 0}function nz(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+16|0;m=u;n=u+4|0;k=b+16|0;f=c[c[k>>2]>>2]|0;g=f+16|0;o=b+8|0;if(!((g|0)==316344?1:g>>>0>=(c[o>>2]|0)>>>0)?(e=c[f+24>>2]|0,(e&15|0)==8):0)if((e|0)==72){s=c[g>>2]|0;j=1}else{s=0;j=1}else{s=b;j=0}h=j+1|0;e=_x(b,h)|0;r=_x(b,j|2)|0;if((e|0)>=0){t=s+16|0;f=c[t>>2]|0;i=s+48|0;if((e|0)!=0&(f|0)!=(i|0)){g=e;while(1){e=g+-1|0;f=c[f+8>>2]|0;if((g|0)>1&(f|0)!=(i|0))g=e;else{p=f;break}}}else p=f;if(!((e|0)!=0|(p|0)==(i|0))){i=j+3|0;e=c[c[k>>2]>>2]|0;h=e+(i<<4)|0;f=c[o>>2]|0;if(h>>>0>=f>>>0|(h|0)==316344){Vx(b,i,283978)|0;e=c[c[k>>2]>>2]|0;h=c[o>>2]|0}else h=f;g=e+((j|4)<<4)|0;if(h>>>0<g>>>0){e=(e+(i<<4)+8+4+(3-h)|0)>>>4;f=h;do{c[f+8>>2]=0;f=f+16|0}while(f>>>0<g>>>0);c[o>>2]=h+(e+1<<4)}c[o>>2]=g;if((s|0)!=(b|0)){c[n>>2]=1;h=c[t>>2]|0;e=s+8|0;g=c[e>>2]|0;f=g;do if(((c[s+24>>2]|0)-f|0)>16){e=1;q=21}else{if(((f-(c[s+28>>2]|0)>>4)+5|0)<=999999?(rw(s,166,n)|0)==0:0){g=c[e>>2]|0;e=c[n>>2]|0;q=21;break}Wx(b,283421,m)}while(0);do if((q|0)==21){f=h+4|0;e=g+(e<<4)|0;if((c[f>>2]|0)>>>0<e>>>0){c[f>>2]=e;break}else break}while(0);m=(c[o>>2]|0)+-16|0;c[o>>2]=m;o=s+8|0;n=c[o>>2]|0;c[n>>2]=c[m>>2];c[n+4>>2]=c[m+4>>2];c[n+8>>2]=c[m+8>>2];c[n+12>>2]=c[m+12>>2];c[o>>2]=(c[o>>2]|0)+16}m=s+6|0;e=a[m>>0]|0;if(e<<24>>24==1){j=c[t>>2]|0;k=c[j>>2]|0;n=c[s+28>>2]|0;o=j+28|0;c[j>>2]=n+(c[o>>2]|0);c[o>>2]=k-n}a:do if(a[p+34>>0]&2){if((r|0)<0){g=c[p>>2]|0;h=d[(c[(c[g>>2]|0)+12>>2]|0)+6>>0]|0;if((((c[p+16>>2]|0)-g>>4)-h|0)<=(0-r|0)){f=0;break}f=279681;e=g+(h-r<<4)|0;q=45;break}g=c[p+16>>2]|0;f=c[(c[c[p>>2]>>2]|0)+12>>2]|0;i=(c[p+20>>2]|0)-(c[f+48>>2]|0)>>2;j=c[f+32>>2]|0;if((j|0)>0){k=c[f+60>>2]|0;f=r;h=0;while(1){if((c[k+(h*12|0)+4>>2]|0)>=(i|0)){q=40;break a}if((c[k+(h*12|0)+8>>2]|0)>=(i|0)){f=f+-1|0;if(!f)break}h=h+1|0;if((h|0)>=(j|0)){q=40;break a}}f=(c[k+(h*12|0)>>2]|0)+16|0;q=44}else q=40}else{g=(c[p>>2]|0)+16|0;q=40}while(0);if((q|0)==40){if((c[t>>2]|0)==(p|0))f=s+8|0;else f=c[p+12>>2]|0;if((r|0)>0?((c[f>>2]|0)-g>>4|0)>=(r|0):0){f=279668;q=44}else f=0}if((q|0)==44){e=g+(r+-1<<4)|0;q=45}if((q|0)==45){r=s+8|0;q=(c[r>>2]|0)+-16|0;c[e>>2]=c[q>>2];c[e+4>>2]=c[q+4>>2];c[e+8>>2]=c[q+8>>2];c[e+12>>2]=c[q+12>>2];c[r>>2]=(c[r>>2]|0)+-16;e=a[m>>0]|0}if(e<<24>>24==1){p=c[t>>2]|0;q=c[p>>2]|0;r=c[s+28>>2]|0;t=p+28|0;c[p>>2]=r+(c[t>>2]|0);c[t>>2]=q-r}if(!f){t=s+8|0;c[t>>2]=(c[t>>2]|0)+-16}Uv(b,f);b=1;l=u;return b|0}}b=Vx(b,h,283402)|0;l=u;return b|0}function oz(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+16|0;d=c[c[b>>2]>>2]|0;f=d+32|0;h=a+8|0;e=c[h>>2]|0;if(f>>>0>=e>>>0|(f|0)==316344)g=3;else switch(c[d+40>>2]&15){case 0:case 5:{f=e;break}default:g=3}if((g|0)==3){Vx(a,2,283380)|0;d=c[c[b>>2]>>2]|0;f=c[h>>2]|0}e=d+48|0;if(f>>>0>=e>>>0){c[h>>2]=e;aw(a,1);return 1}b=(d+40+4+(3-f)|0)>>>4;d=f;do{c[d+8>>2]=0;d=d+16|0}while(d>>>0<e>>>0);c[h>>2]=f+(b+1<<4);c[h>>2]=e;aw(a,1);return 1}function pz(b){b=b|0;var d=0,e=0,f=0,g=0;d=b+16|0;f=(c[c[d>>2]>>2]|0)+48|0;g=b+8|0;if((f|0)==316344?1:f>>>0>=(c[g>>2]|0)>>>0)Vx(b,3,283978)|0;e=_x(b,2)|0;f=c[c[d>>2]>>2]|0;d=f+16|0;if(!(!((d|0)==316344?1:d>>>0>=(c[g>>2]|0)>>>0)?(c[f+24>>2]&15|0)==6:0))Yx(b,1,287317);f=hw(b,1,e)|0;if(!f){g=0;return g|0}e=b+12|0;d=c[e>>2]|0;if((c[d+12>>2]|0)>0){Sw(b);d=c[e>>2]|0}e=d+280+(((f>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(JN(f,d+16|0)|0){d=xx(b,f,WO(f)|0)|0;c[e>>2]=d}b=c[g>>2]|0;c[b>>2]=d;c[b+8>>2]=(a[d+4>>0]|64)&255;c[g>>2]=(c[g>>2]|0)+16;g=1;return g|0}function qz(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;I=l;l=l+176|0;D=I+56|0;C=I+48|0;F=I+40|0;E=I+32|0;B=I+24|0;n=I+16|0;A=I;z=I+64|0;G=b+16|0;d=c[c[G>>2]>>2]|0;e=d+16|0;H=b+8|0;if(!((e|0)==316344?1:e>>>0>=(c[H>>2]|0)>>>0)?(f=c[d+24>>2]|0,(f&15|0)==8):0)if((f|0)==72){x=c[e>>2]|0;e=1}else{x=0;e=1}else{x=b;e=0}d=e+1|0;k=Tv(b,d,0)|0;m=(k|0)==0;if((m?(g=c[c[G>>2]>>2]|0,h=g+(d<<4)|0,i=c[H>>2]|0,!(h>>>0>=i>>>0|(h|0)==316344)):0)?c[g+(d<<4)+8>>2]&15|0:0){b=h>>>0<i>>>0?h:316344;c[i>>2]=c[b>>2];c[i+4>>2]=c[b+4>>2];c[i+8>>2]=c[b+8>>2];c[i+12>>2]=c[b+12>>2];c[H>>2]=(c[H>>2]|0)+16;l=I;return 1}o=$x(b,e|2,(x|0)==(b|0)&1,0)|0;w=(c[H>>2]|0)-((c[c[G>>2]>>2]|0)+16)>>4;u=x+16|0;v=x+48|0;d=1;h=1;while(1){if((d|0)<0)break;e=c[u>>2]|0;if((d|0)!=0&(e|0)!=(v|0)){g=d;while(1){f=g+-1|0;e=c[e+8>>2]|0;if((g|0)>1&(e|0)!=(v|0))g=f;else break}}else f=d;if((f|0)!=0|(e|0)==(v|0))break;h=d;d=d<<1}if((h|0)<(d|0)){j=h;do{e=d+j|0;i=(e|0)/2|0;if((e|0)<-1)e=1;else{g=c[u>>2]|0;if((e+1|0)>>>0>2&(g|0)!=(v|0)){h=i;e=g;while(1){f=h+-1|0;e=c[e+8>>2]|0;if((h|0)>1&(e|0)!=(v|0))h=f;else break}}else{f=i;e=g}e=(f|0)!=0|(e|0)==(v|0)}d=e?i:d;j=e?j:i+1|0}while((j|0)<(d|0));i=d}else i=d;s=(i+-1|0)>22?12:0;if(!m){c[n>>2]=k;Vv(b,283711,n)|0}t=b+12|0;d=c[t>>2]|0;if((c[d+12>>2]|0)>0){Sw(b);d=c[t>>2]|0}e=d+280+(((282008>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(JN(282008,d+16|0)|0){d=xx(b,282008,16)|0;c[e>>2]=d}e=c[H>>2]|0;c[e>>2]=d;c[e+8>>2]=(a[d+4>>0]|64)&255;e=(c[H>>2]|0)+16|0;c[H>>2]=e;d=e;if((o|0)>=0){f=c[u>>2]|0;if((o|0)!=0&(f|0)!=(v|0)){h=o;while(1){g=h+-1|0;f=c[f+8>>2]|0;if((h|0)>1&(f|0)!=(v|0))h=g;else break}}else g=o;if(!((g|0)!=0|(f|0)==(v|0))){r=z+96|0;c[r>>2]=f;h=i+-11|0;i=z+36|0;j=z+20|0;k=z+8|0;m=z+12|0;n=z+24|0;p=z+4|0;q=z+35|0;d=o;while(1){d=d+1|0;do if((d|0)==(s|0)){d=c[t>>2]|0;if((c[d+12>>2]|0)>0){Sw(b);d=c[t>>2]|0}e=d+280+(((282025>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(JN(282025,d+16|0)|0){d=xx(b,282025,5)|0;c[e>>2]=d}o=c[H>>2]|0;c[o>>2]=d;c[o+8>>2]=(a[d+4>>0]|64)&255;c[H>>2]=(c[H>>2]|0)+16;d=h}else{iw(x,282031,z)|0;c[B>>2]=i;Vv(b,282036,B)|0;e=c[j>>2]|0;if((e|0)>0){c[E>>2]=e;Vv(b,282042,E)|0}e=c[t>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[t>>2]|0}f=e+280+(((282046>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(282046,e+16|0)|0){e=xx(b,282046,4)|0;c[f>>2]=e}o=c[H>>2]|0;c[o>>2]=e;c[o+8>>2]=(a[e+4>>0]|64)&255;c[H>>2]=(c[H>>2]|0)+16;a:do if(!(Tx(b,z)|0)){e=c[k>>2]|0;if(a[e>>0]|0){o=c[p>>2]|0;c[C>>2]=e;c[C+4>>2]=o;Vv(b,282065,C)|0;break}switch(a[c[m>>2]>>0]|0){case 109:{e=c[t>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[t>>2]|0}f=e+280+(((282073>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(282073,e+16|0)|0){e=xx(b,282073,10)|0;c[f>>2]=e}o=c[H>>2]|0;c[o>>2]=e;c[o+8>>2]=(a[e+4>>0]|64)&255;c[H>>2]=(c[H>>2]|0)+16;break a}case 67:{e=c[t>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[t>>2]|0}f=e+280+(((285924>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(285924,e+16|0)|0){e=xx(b,285924,1)|0;c[f>>2]=e}o=c[H>>2]|0;c[o>>2]=e;c[o+8>>2]=(a[e+4>>0]|64)&255;c[H>>2]=(c[H>>2]|0)+16;break a}default:{o=c[n>>2]|0;c[D>>2]=i;c[D+4>>2]=o;Vv(b,282084,D)|0;break a}}}else{e=c[H>>2]|0;switch(c[e+-8>>2]&15){case 4:{e=e+-16|0;y=52;break}case 3:{if((c[(c[t>>2]|0)+12>>2]|0)>0){Sw(b);e=c[H>>2]|0}e=e+-16|0;Xw(b,e);y=52;break}default:e=0}if((y|0)==52){y=0;e=(c[e>>2]|0)+16|0}c[F>>2]=e;Vv(b,282051,F)|0;f=c[H>>2]|0;e=f+-16|0;f=f+-32|0;do{c[A>>2]=c[f>>2];c[A+4>>2]=c[f+4>>2];c[A+8>>2]=c[f+8>>2];c[A+12>>2]=c[f+12>>2];c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[e>>2]=c[A>>2];c[e+4>>2]=c[A+4>>2];c[e+8>>2]=c[A+8>>2];c[e+12>>2]=c[A+12>>2];f=f+16|0;e=e+-16|0}while(f>>>0<e>>>0);c[H>>2]=(c[H>>2]|0)+-16}while(0);if(!(a[q>>0]|0)){f=c[H>>2]|0;e=f}else{e=c[t>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[t>>2]|0}f=e+280+(((282101>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(282101,e+16|0)|0){e=xx(b,282101,20)|0;c[f>>2]=e}f=c[H>>2]|0;c[f>>2]=e;c[f+8>>2]=(a[e+4>>0]|64)&255;f=(c[H>>2]|0)+16|0;c[H>>2]=f;e=f}e=(e-((c[c[G>>2]>>2]|0)+16)>>4)-w|0;if((e|0)<=1){if(e|0)break;o=xx(b,335059,0)|0;c[f>>2]=o;c[f+8>>2]=(a[o+4>>0]|64)&255;c[H>>2]=(c[H>>2]|0)+16;break}if((c[(c[t>>2]|0)+12>>2]|0)>0)Sw(b);Px(b,e)}while(0);if((d|0)<0)break;e=c[u>>2]|0;if((d|0)!=0&(e|0)!=(v|0)){g=d;while(1){f=g+-1|0;e=c[e+8>>2]|0;if((g|0)>1&(e|0)!=(v|0))g=f;else break}}else f=d;if((f|0)!=0|(e|0)==(v|0))break;c[r>>2]=e}e=c[H>>2]|0;d=e}}d=(d-((c[c[G>>2]>>2]|0)+16)>>4)-w|0;if((d|0)<=1){if(!d){b=xx(b,335059,0)|0;c[e>>2]=b;c[e+8>>2]=(a[b+4>>0]|64)&255;c[H>>2]=(c[H>>2]|0)+16}}else{if((c[(c[t>>2]|0)+12>>2]|0)>0)Sw(b);Px(b,d)}l=I;return 1}function rz(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;h=l;l=l+32|0;g=h+16|0;i=h;j=(c[a+12>>2]|0)+40|0;c[i>>2]=320064;c[i+8>>2]=2;f=a+8|0;e=c[f>>2]|0;i=Cx(c[j>>2]|0,i)|0;c[e>>2]=c[i>>2];c[e+4>>2]=c[i+4>>2];c[e+8>>2]=c[i+8>>2];c[e+12>>2]=c[i+12>>2];e=c[f>>2]|0;i=e+16|0;c[f>>2]=i;c[i>>2]=a;c[e+24>>2]=72;e=c[f>>2]|0;c[f>>2]=e+16;i=Cx(c[e+-16>>2]|0,e)|0;c[e>>2]=c[i>>2];c[e+4>>2]=c[i+4>>2];c[e+8>>2]=c[i+8>>2];c[e+12>>2]=c[i+12>>2];if((c[(c[f>>2]|0)+-8>>2]&15|0)!=6){l=h;return}Uv(a,c[5676+(c[d>>2]<<2)>>2]|0);d=c[d+20>>2]|0;if((d|0)>-1){e=c[f>>2]|0;j=e;c[j>>2]=d;c[j+4>>2]=((d|0)<0)<<31>>31;d=19}else{d=0;e=c[f>>2]|0}c[e+8>>2]=d;c[f>>2]=e+16;e=e+-32|0;f=a+106|0;d=(b[f>>1]|0)+1<<16>>16;b[f>>1]=d;if((d&65535)>199){if(d<<16>>16==200)mw(a,279953,g);if((d&65535)>224)qw(a,6)}d=a+104|0;b[d>>1]=(b[d>>1]|0)+1<<16>>16;if(!(uw(a,e,0)|0))Sx(a);b[d>>1]=(b[d>>1]|0)+-1<<16>>16;b[f>>1]=(b[f>>1]|0)+-1<<16>>16;l=h;return}function sz(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;d=m;if(b|0?(c[(c[b+12>>2]|0)+140>>2]|0)!=952:0)Wx(b,282533,d);j=b+12|0;if((c[(c[j>>2]|0)+12>>2]|0)>0)Sw(b);f=Dx(b)|0;k=b+8|0;g=c[k>>2]|0;c[g>>2]=f;c[g+8>>2]=69;c[k>>2]=(c[k>>2]|0)+16;Ax(b,f,0,35);jy(b,5696,0);f=c[k>>2]|0;h[f>>3]=3.141592653589793;c[f+8>>2]=3;g=f+16|0;c[k>>2]=g;e=(c[j>>2]|0)+280+(((283715>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(JN(283715,d+16|0)|0){d=xx(b,283715,2)|0;c[e>>2]=d}c[g>>2]=d;c[f+24>>2]=(a[d+4>>0]|64)&255;g=c[k>>2]|0;c[k>>2]=g+16;Lx(b,f+-16|0,g,g+-16|0);f=c[k>>2]|0;h[f+-32>>3]=t;c[f+-24>>2]=3;g=f+-16|0;c[k>>2]=g;e=(c[j>>2]|0)+280+(((283718>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(JN(283718,d+16|0)|0){d=xx(b,283718,4)|0;c[e>>2]=d}c[g>>2]=d;c[f+-8>>2]=(a[d+4>>0]|64)&255;g=c[k>>2]|0;c[k>>2]=g+16;Lx(b,f+-48|0,g,g+-16|0);f=c[k>>2]|0;g=f+-32|0;c[g>>2]=-1;c[g+4>>2]=2147483647;c[f+-24>>2]=19;g=f+-16|0;c[k>>2]=g;e=(c[j>>2]|0)+280+(((283723>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(JN(283723,d+16|0)|0){d=xx(b,283723,10)|0;c[e>>2]=d}c[g>>2]=d;c[f+-8>>2]=(a[d+4>>0]|64)&255;g=c[k>>2]|0;c[k>>2]=g+16;Lx(b,f+-48|0,g,g+-16|0);f=c[k>>2]|0;g=f+-32|0;c[g>>2]=0;c[g+4>>2]=-2147483648;c[f+-24>>2]=19;g=f+-16|0;c[k>>2]=g;i=f+-48|0;d=(c[j>>2]|0)+280+(((283734>>>0)%127|0)<<2)|0;e=c[d>>2]|0;if(!(JN(283734,e+16|0)|0)){j=e;c[g>>2]=j;j=j+4|0;j=a[j>>0]|0;j=j|64;j=j&255;g=f+-8|0;c[g>>2]=j;g=c[k>>2]|0;j=g+16|0;c[k>>2]=j;j=g+-16|0;Lx(b,i,g,j);b=c[k>>2]|0;b=b+-32|0;c[k>>2]=b;l=m;return 1}else{j=xx(b,283734,10)|0;c[d>>2]=j;c[g>>2]=j;j=j+4|0;j=a[j>>0]|0;j=j|64;j=j&255;g=f+-8|0;c[g>>2]=j;g=c[k>>2]|0;j=g+16|0;c[k>>2]=j;j=g+-16|0;Lx(b,i,g,j);b=c[k>>2]|0;b=b+-32|0;c[k>>2]=b;l=m;return 1}return 0}function tz(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0.0;b=(c[c[a+16>>2]>>2]|0)+16|0;d=a+8|0;e=c[d>>2]|0;b=b>>>0<e>>>0?b:316344;if((c[b+8>>2]|0)==19){a=b;g=c[a>>2]|0;a=c[a+4>>2]|0;f=(a|0)<0;i=zQ(0,0,g|0,a|0)|0;b=e;c[b>>2]=f?i:g;c[b+4>>2]=f?z:a;b=19;a=e;e=a+8|0;c[e>>2]=b;a=a+16|0;c[d>>2]=a;return 1}else{j=+B(+(+Zx(a,1)));i=c[d>>2]|0;h[i>>3]=j;f=3;g=i+8|0;c[g>>2]=f;i=i+16|0;c[d>>2]=i;return 1}return 0}function uz(a){a=a|0;var b=0,d=0.0;d=+H(+(+Zx(a,1)));a=a+8|0;b=c[a>>2]|0;h[b>>3]=d;c[b+8>>2]=3;c[a>>2]=b+16;return 1}function vz(a){a=a|0;var b=0,d=0.0;d=+I(+(+Zx(a,1)));a=a+8|0;b=c[a>>2]|0;h[b>>3]=d;c[b+8>>2]=3;c[a>>2]=b+16;return 1}function wz(b){b=b|0;var e=0.0,f=0,g=0,i=0,k=0,m=0,n=0.0,o=0,p=0;p=l;l=l+16|0;m=p;n=+Zx(b,1);i=c[c[b+16>>2]>>2]|0;k=i+32|0;o=b+8|0;a:do if(!((k|0)==316344?1:k>>>0>=(c[o>>2]|0)>>>0)?(f=c[i+40>>2]|0,g=f&15,(g|0)!=0):0){if((f|0)==3){e=+h[k>>3];break}do if((f|0)==19){m=k;e=+((c[m>>2]|0)>>>0)+4294967296.0*+(c[m+4>>2]|0)}else{if((g|0)==4){g=Ww((c[k>>2]|0)+16|0,m)|0;f=c[k>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)==(f+1|0)){k=(c[m+8>>2]|0)==19;b=c[m>>2]|0;m=c[m+4>>2]|0;c[j>>2]=b;c[j+4>>2]=m;e=k?+(b>>>0)+4294967296.0*+(m|0):+h[j>>3];break}}Yx(b,2,281351);e=0.0;break a}while(0)}else e=1.0;while(0);n=+K(+n,+e);m=c[o>>2]|0;h[m>>3]=n;c[m+8>>2]=3;c[o>>2]=m+16;l=p;return 1}function xz(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=c[c[a+16>>2]>>2]|0;e=d+16|0;g=a+8|0;f=c[g>>2]|0;if((c[(e>>>0<f>>>0?e:316344)+8>>2]|0)!=19){b=+N(+(+Zx(a,1)));if(b>=-9223372036854775808.0&b<9223372036854775808.0){d=+B(b)>=1.0?(b>0.0?~~+P(+A(b/4294967296.0),4294967295.0)>>>0:~~+N((b-+(~~b>>>0))/4294967296.0)>>>0):0;f=c[g>>2]|0;e=f;c[e>>2]=~~b>>>0;c[e+4>>2]=d;c[f+8>>2]=19;f=f+16|0;c[g>>2]=f;return 1}else{f=c[g>>2]|0;h[f>>3]=b;c[f+8>>2]=3;f=f+16|0;c[g>>2]=f;return 1}}e=d+32|0;if(f>>>0>=e>>>0){f=e;c[g>>2]=f;return 1}a=(d+24+4+(3-f)|0)>>>4;d=f;do{c[d+8>>2]=0;d=d+16|0}while(d>>>0<e>>>0);c[g>>2]=f+(a+1<<4);f=e;c[g>>2]=f;return 1}function yz(a){a=a|0;var b=0,d=0.0;d=+E(+(+Zx(a,1)));a=a+8|0;b=c[a>>2]|0;h[b>>3]=d;c[b+8>>2]=3;c[a>>2]=b+16;return 1}function zz(a){a=a|0;var b=0,d=0.0;d=+Zx(a,1)*57.29577951308232;a=a+8|0;b=c[a>>2]|0;h[b>>3]=d;c[b+8>>2]=3;c[a>>2]=b+16;return 1}function Az(a){a=a|0;var b=0,d=0.0;d=+L(+(+Zx(a,1)));a=a+8|0;b=c[a>>2]|0;h[b>>3]=d;c[b+8>>2]=3;c[a>>2]=b+16;return 1}function Bz(b){b=b|0;var e=0,f=0,g=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+16|0;j=o;k=b+16|0;f=(c[c[k>>2]>>2]|0)+16|0;n=b+8|0;i=c[n>>2]|0;f=f>>>0<i>>>0?f:316344;e=c[f+8>>2]|0;do if((e|0)==19){e=f;f=c[e>>2]|0;e=c[e+4>>2]|0}else{a:while(1){switch(e|0){case 3:{m=5;break a}case 19:{m=8;break a}default:{}}if((e&15|0)!=4)break;i=Ww((c[f>>2]|0)+16|0,j)|0;e=c[f>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((i|0)!=(e+1|0))break;f=j;e=c[j+8>>2]|0}if((m|0)==5){p=+h[f>>3];g=+A(+p);if(!(p!=g)?g>=-9223372036854775808.0&g<9223372036854775808.0:0){f=~~g>>>0;e=+B(g)>=1.0?(g>0.0?~~+P(+A(g/4294967296.0),4294967295.0)>>>0:~~+N((g-+(~~g>>>0))/4294967296.0)>>>0):0;m=15}}else if((m|0)==8){e=f;f=c[e>>2]|0;e=c[e+4>>2]|0;m=15}if((m|0)==15){i=c[n>>2]|0;break}m=(c[c[k>>2]>>2]|0)+16|0;e=c[n>>2]|0;if(!(m>>>0>=e>>>0|(m|0)==316344)){k=0;m=e;b=m+8|0;c[b>>2]=k;m=m+16|0;c[n>>2]=m;l=o;return 1}Vx(b,1,283978)|0;k=0;m=c[n>>2]|0;b=m+8|0;c[b>>2]=k;m=m+16|0;c[n>>2]=m;l=o;return 1}while(0);k=i;c[k>>2]=f;c[k+4>>2]=e;k=19;m=i;b=m+8|0;c[b>>2]=k;m=m+16|0;c[n>>2]=m;l=o;return 1}function Cz(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0;d=c[c[a+16>>2]>>2]|0;e=d+16|0;g=a+8|0;f=c[g>>2]|0;if((c[(e>>>0<f>>>0?e:316344)+8>>2]|0)!=19){b=+A(+(+Zx(a,1)));if(b>=-9223372036854775808.0&b<9223372036854775808.0){d=+B(b)>=1.0?(b>0.0?~~+P(+A(b/4294967296.0),4294967295.0)>>>0:~~+N((b-+(~~b>>>0))/4294967296.0)>>>0):0;f=c[g>>2]|0;e=f;c[e>>2]=~~b>>>0;c[e+4>>2]=d;c[f+8>>2]=19;f=f+16|0;c[g>>2]=f;return 1}else{f=c[g>>2]|0;h[f>>3]=b;c[f+8>>2]=3;f=f+16|0;c[g>>2]=f;return 1}}e=d+32|0;if(f>>>0>=e>>>0){f=e;c[g>>2]=f;return 1}a=(d+24+4+(3-f)|0)>>>4;d=f;do{c[d+8>>2]=0;d=d+16|0}while(d>>>0<e>>>0);c[g>>2]=f+(a+1<<4);f=e;c[g>>2]=f;return 1}function Dz(b){b=b|0;var e=0,f=0.0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0;p=l;l=l+16|0;k=p;i=c[c[b+16>>2]>>2]|0;j=i+16|0;o=b+8|0;e=c[o>>2]|0;if((c[(j>>>0<e>>>0?j:316344)+8>>2]|0)==19?(g=i+32|0,g=g>>>0<e>>>0?g:316344,(c[g+8>>2]|0)==19):0){n=g;m=c[n>>2]|0;n=c[n+4>>2]|0;i=yQ(m|0,n|0,1,0)|0;g=z;if(g>>>0<0|(g|0)==0&i>>>0<2){if((m|0)==0&(n|0)==0){Vx(b,2,283993)|0;e=c[o>>2]|0}k=e;c[k>>2]=0;c[k+4>>2]=0;k=19;n=e;m=n+8|0;c[m>>2]=k;n=n+16|0;c[o>>2]=n;l=p;return 1}e=j>>>0<e>>>0?j:316344;g=c[e+8>>2]|0;do if((g|0)!=19){a:while(1){switch(g|0){case 3:{i=11;break a}case 19:{i=14;break a}default:{}}if((g&15|0)!=4){i=22;break}g=Ww((c[e>>2]|0)+16|0,k)|0;e=c[e>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((g|0)!=(e+1|0)){i=22;break}e=k;g=c[k+8>>2]|0}if((i|0)==11){q=+h[e>>3];f=+A(+q);if(!(q!=f)?f>=-9223372036854775808.0&f<9223372036854775808.0:0){g=~~f>>>0;e=+B(f)>=1.0?(f>0.0?~~+P(+A(f/4294967296.0),4294967295.0)>>>0:~~+N((f-+(~~f>>>0))/4294967296.0)>>>0):0;i=21}else i=22}else if((i|0)==14){g=c[e>>2]|0;e=c[e+4>>2]|0;i=21}if((i|0)==21)break;else if((i|0)==22){g=0;e=0;break}}else{g=c[e>>2]|0;e=c[e+4>>2]|0}while(0);m=FQ(g|0,e|0,m|0,n|0)|0;n=c[o>>2]|0;k=n;c[k>>2]=m;c[k+4>>2]=z;k=19;m=n+8|0;c[m>>2]=k;n=n+16|0;c[o>>2]=n;l=p;return 1}q=+Zx(b,1);q=+TO(q,+Zx(b,2));n=c[o>>2]|0;h[n>>3]=q;k=3;m=n+8|0;c[m>>2]=k;n=n+16|0;c[o>>2]=n;l=p;return 1}function Ez(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;e=_x(a,1)|0;g=z;d=_x(a,2)|0;f=z;a=a+8|0;b=c[a>>2]|0;c[b>>2]=(g>>>0<f>>>0|(g|0)==(f|0)&e>>>0<d>>>0)&1;c[b+8>>2]=1;c[a>>2]=b+16;return 1}function Fz(a){a=a|0;var b=0.0,d=0.0,e=0,f=0,g=0,i=0;d=+Zx(a,1);g=c[c[a+16>>2]>>2]|0;i=g+32|0;e=a+8|0;do if(!((i|0)==316344?1:i>>>0>=(c[e>>2]|0)>>>0)?(c[g+40>>2]&15|0)!=0:0){b=+Zx(a,2);if(b==2.0){b=+fP(d);break}if(b==10.0){b=+eP(d);break}else{b=+M(+d)/+M(+b);break}}else f=3;while(0);if((f|0)==3)b=+M(+d);i=c[e>>2]|0;h[i>>3]=b;c[i+8>>2]=3;c[e>>2]=i+16;return 1}function Gz(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0;h=a+8|0;e=c[h>>2]|0;g=a+16|0;b=c[g>>2]|0;j=e-((c[b>>2]|0)+16)|0;f=j>>4;do if((j|0)>0)if((f|0)!=1){b=2;e=1;while(1){j=(Sv(a,e,b,1)|0)==0;e=j?e:b;if((b|0)==(f|0))break;else b=b+1|0}b=c[h>>2]|0;g=c[g>>2]|0;if((e|0)<=0){if((e|0)>=-1000999){e=b+(e<<4)|0;break}if((e|0)==-1001e3){e=(c[a+12>>2]|0)+40|0;break}f=-1001e3-e|0;e=c[g>>2]|0;if((c[e+8>>2]|0)==22)e=316344;else{e=c[e>>2]|0;e=(f|0)>(d[e+6>>0]|0|0)?316344:e+16+(f+-1<<4)|0}}else{f=b;i=7}}else i=5;else{Vx(a,1,283978)|0;b=c[g>>2]|0;e=c[h>>2]|0;i=5}while(0);if((i|0)==5){g=b;f=e;b=e;e=1;i=7}if((i|0)==7){e=(c[g>>2]|0)+(e<<4)|0;e=e>>>0<f>>>0?e:316344};c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];c[h>>2]=(c[h>>2]|0)+16;return 1}function Hz(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0;h=a+8|0;e=c[h>>2]|0;g=a+16|0;b=c[g>>2]|0;j=e-((c[b>>2]|0)+16)|0;f=j>>4;do if((j|0)>0)if((f|0)!=1){b=2;e=1;while(1){j=(Sv(a,b,e,1)|0)==0;e=j?e:b;if((b|0)==(f|0))break;else b=b+1|0}b=c[h>>2]|0;g=c[g>>2]|0;if((e|0)<=0){if((e|0)>=-1000999){e=b+(e<<4)|0;break}if((e|0)==-1001e3){e=(c[a+12>>2]|0)+40|0;break}f=-1001e3-e|0;e=c[g>>2]|0;if((c[e+8>>2]|0)==22)e=316344;else{e=c[e>>2]|0;e=(f|0)>(d[e+6>>0]|0|0)?316344:e+16+(f+-1<<4)|0}}else{f=b;i=7}}else i=5;else{Vx(a,1,283978)|0;b=c[g>>2]|0;e=c[h>>2]|0;i=5}while(0);if((i|0)==5){g=b;f=e;b=e;e=1;i=7}if((i|0)==7){e=(c[g>>2]|0)+(e<<4)|0;e=e>>>0<f>>>0?e:316344};c[b>>2]=c[e>>2];c[b+4>>2]=c[e+4>>2];c[b+8>>2]=c[e+8>>2];c[b+12>>2]=c[e+12>>2];c[h>>2]=(c[h>>2]|0)+16;return 1}function Iz(a){a=a|0;var b=0,d=0.0,e=0.0,f=0,g=0,i=0,j=0;g=c[c[a+16>>2]>>2]|0;f=g+16|0;j=a+8|0;i=c[j>>2]|0;if((c[(f>>>0<i>>>0?f:316344)+8>>2]|0)==19){a=g+32|0;if(i>>>0<a>>>0){b=(g+24+4+(3-i)|0)>>>4;f=i;do{c[f+8>>2]=0;f=f+16|0}while(f>>>0<a>>>0);c[j>>2]=i+(b+1<<4)}h[a>>3]=0.0;c[g+40>>2]=3;i=g+48|0;c[j>>2]=i;return 2}d=+Zx(a,1);if(d<0.0)e=+N(+d);else e=+A(+d);if(e>=-9223372036854775808.0&e<9223372036854775808.0){i=+B(e)>=1.0?(e>0.0?~~+P(+A(e/4294967296.0),4294967295.0)>>>0:~~+N((e-+(~~e>>>0))/4294967296.0)>>>0):0;b=c[j>>2]|0;a=b;c[a>>2]=~~e>>>0;c[a+4>>2]=i;a=19}else{b=c[j>>2]|0;h[b>>3]=e;a=3}c[b+8>>2]=a;i=b+16|0;c[j>>2]=i;h[i>>3]=d==e?0.0:d-e;c[b+24>>2]=3;i=b+32|0;c[j>>2]=i;return 2}function Jz(a){a=a|0;var b=0,d=0.0;d=+Zx(a,1)*.017453292519943295;a=a+8|0;b=c[a>>2]|0;h[b>>3]=d;c[b+8>>2]=3;c[a>>2]=b+16;return 1}function Kz(a){a=a|0;var b=0,d=0,e=0,f=0,g=0.0,i=0,j=0,k=0,m=0;j=l;l=l+16|0;g=+(cQ()|0)*4.656612873077393e-10;i=a+8|0;d=c[i>>2]|0;b=d;switch(d-((c[c[a+16>>2]>>2]|0)+16)>>4|0){case 0:{h[d>>3]=g;c[b+8>>2]=3;c[i>>2]=b+16;l=j;return 1}case 1:{b=1;e=0;f=1;break}case 2:{f=_x(a,1)|0;b=2;e=z;break}default:{Wx(a,283915,j);l=j;return 1}}b=_x(a,b)|0;d=z;if((d|0)<(e|0)|(d|0)==(e|0)&b>>>0<f>>>0)Vx(a,1,283941)|0;k=yQ(f|0,e|0,-1,2147483647)|0;m=z;if((e|0)<0&((d|0)>(m|0)|(d|0)==(m|0)&b>>>0>k>>>0))Vx(a,1,283959)|0;a=zQ(b|0,d|0,f|0,e|0)|0;g=g*(+(a>>>0)+4294967296.0*+(z|0)+1.0);a=yQ(~~g>>>0|0,(+B(g)>=1.0?(g>0.0?~~+P(+A(g/4294967296.0),4294967295.0)>>>0:~~+N((g-+(~~g>>>0))/4294967296.0)>>>0):0)|0,f|0,e|0)|0;m=c[i>>2]|0;k=m;c[k>>2]=a;c[k+4>>2]=z;c[m+8>>2]=19;c[i>>2]=m+16;l=j;return 1}function Lz(a){a=a|0;a=~~+Zx(a,1)>>>0;bQ(a);cQ()|0;return 0}function Mz(a){a=a|0;var b=0,d=0.0;d=+F(+(+Zx(a,1)));a=a+8|0;b=c[a>>2]|0;h[b>>3]=d;c[b+8>>2]=3;c[a>>2]=b+16;return 1}function Nz(a){a=a|0;var b=0,d=0.0;d=+C(+(+Zx(a,1)));a=a+8|0;b=c[a>>2]|0;h[b>>3]=d;c[b+8>>2]=3;c[a>>2]=b+16;return 1}function Oz(a){a=a|0;var b=0,d=0.0;d=+G(+(+Zx(a,1)));a=a+8|0;b=c[a>>2]|0;h[b>>3]=d;c[b+8>>2]=3;c[a>>2]=b+16;return 1}function Pz(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;e=c[c[b+16>>2]>>2]|0;f=e+16|0;i=b+8|0;d=c[i>>2]|0;g=f>>>0<d>>>0;if(!((f|0)==316344|g^1)?(h=c[e+24>>2]|0,(h&15|0)==3):0){e=b+12|0;d=c[e>>2]|0;f=(c[d+12>>2]|0)>0;if((h|0)==19){if(f){Sw(b);d=c[e>>2]|0}e=d+280+(((283901>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(JN(283901,d+16|0)|0){d=xx(b,283901,7)|0;c[e>>2]=d}b=c[i>>2]|0;c[b>>2]=d;c[b+8>>2]=(a[d+4>>0]|64)&255;b=c[i>>2]|0;b=b+16|0;c[i>>2]=b;return 1}else{if(f){Sw(b);d=c[e>>2]|0}e=d+280+(((283909>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(JN(283909,d+16|0)|0){d=xx(b,283909,5)|0;c[e>>2]=d}b=c[i>>2]|0;c[b>>2]=d;c[b+8>>2]=(a[d+4>>0]|64)&255;b=c[i>>2]|0;b=b+16|0;c[i>>2]=b;return 1}}if((f|0)==316344|g^1){Vx(b,1,283978)|0;d=c[i>>2]|0}c[d+8>>2]=0;b=d;b=b+16|0;c[i>>2]=b;return 1}function Qz(a){a=a|0;var b=0,d=0.0;d=+EN(+Zx(a,1));a=a+8|0;b=c[a>>2]|0;h[b>>3]=d;c[b+8>>2]=3;c[a>>2]=b+16;return 1}function Rz(a){a=a|0;var b=0,d=0.0;d=+FN(+Zx(a,1));a=a+8|0;b=c[a>>2]|0;h[b>>3]=d;c[b+8>>2]=3;c[a>>2]=b+16;return 1}function Sz(a){a=a|0;var b=0,d=0.0;d=+gP(+Zx(a,1));a=a+8|0;b=c[a>>2]|0;h[b>>3]=d;c[b+8>>2]=3;c[a>>2]=b+16;return 1}function Tz(a){a=a|0;var b=0,d=0.0;d=+Zx(a,1);d=+D(+d,+(+Zx(a,2)));a=a+8|0;b=c[a>>2]|0;h[b>>3]=d;c[b+8>>2]=3;c[a>>2]=b+16;return 1}function Uz(a){a=a|0;var b=0,d=0,e=0,f=0,g=0.0;b=l;l=l+16|0;f=b;g=+dO(+Zx(a,1),f);a=a+8|0;d=c[a>>2]|0;h[d>>3]=g;c[d+8>>2]=3;f=c[f>>2]|0;e=d+16|0;c[e>>2]=f;c[e+4>>2]=((f|0)<0)<<31>>31;c[d+24>>2]=19;c[a>>2]=d+32;l=b;return 2}function Vz(a){a=a|0;var b=0,d=0.0;d=+Zx(a,1);b=_x(a,2)|0;d=+dP(d,b);a=a+8|0;b=c[a>>2]|0;h[b>>3]=d;c[b+8>>2]=3;c[a>>2]=b+16;return 1}function Wz(a){a=a|0;var b=0,d=0.0;d=+eP(+Zx(a,1));a=a+8|0;b=c[a>>2]|0;h[b>>3]=d;c[b+8>>2]=3;c[a>>2]=b+16;return 1}function Xz(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;d=k;if(b|0?(c[(c[b+12>>2]|0)+140>>2]|0)!=952:0)Wx(b,282533,d);i=b+12|0;if((c[(c[i>>2]|0)+12>>2]|0)>0)Sw(b);h=Dx(b)|0;j=b+8|0;g=c[j>>2]|0;c[g>>2]=h;c[g+8>>2]=69;c[j>>2]=(c[j>>2]|0)+16;Ax(b,h,0,17);jy(b,5984,0);if((c[(c[i>>2]|0)+12>>2]|0)>0)Sw(b);d=Dx(b)|0;h=c[j>>2]|0;c[h>>2]=d;c[h+8>>2]=69;c[j>>2]=(c[j>>2]|0)+16;Ax(b,d,0,1);d=c[i>>2]|0;if((c[d+12>>2]|0)>0){Sw(b);d=c[i>>2]|0}e=d+280+(((335059>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(JN(335059,d+16|0)|0){d=xx(b,335059,0)|0;c[e>>2]=d}f=c[j>>2]|0;c[f>>2]=d;c[f+8>>2]=(a[d+4>>0]|64)&255;f=c[j>>2]|0;g=f+16|0;c[j>>2]=g;f=f+-16|0;c[g>>2]=c[f>>2];c[g+4>>2]=c[f+4>>2];c[g+8>>2]=c[f+8>>2];c[g+12>>2]=c[f+12>>2];c[j>>2]=(c[j>>2]|0)+16;aw(b,-2);g=c[j>>2]|0;f=g+-16|0;c[j>>2]=f;g=g+-48|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[f+12>>2]=c[g+12>>2];f=c[j>>2]|0;g=f+16|0;c[j>>2]=g;h=f+-16|0;d=(c[i>>2]|0)+280+(((286037>>>0)%127|0)<<2)|0;e=c[d>>2]|0;if(!(JN(286037,e+16|0)|0)){i=e;c[g>>2]=i;i=i+4|0;i=a[i>>0]|0;i=i|64;i=i&255;g=f+24|0;c[g>>2]=i;g=c[j>>2]|0;i=g+16|0;c[j>>2]=i;i=g+-16|0;Lx(b,h,g,i);b=c[j>>2]|0;b=b+-48|0;c[j>>2]=b;l=k;return 1}else{i=xx(b,286037,7)|0;c[d>>2]=i;c[g>>2]=i;i=i+4|0;i=a[i>>0]|0;i=i|64;i=i&255;g=f+24|0;c[g>>2]=i;g=c[j>>2]|0;i=g+16|0;c[j>>2]=i;i=g+-16|0;Lx(b,h,g,i);b=c[j>>2]|0;b=b+-48|0;c[j>>2]=b;l=k;return 1}return 0}function Yz(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;w=y+8|0;n=y;r=y+12|0;p=b+16|0;f=c[c[p>>2]>>2]|0;g=f+16|0;x=b+8|0;e=c[x>>2]|0;g=g>>>0<e>>>0?g:316344;switch(c[g+8>>2]&15){case 4:{e=g;q=5;break}case 3:{if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);f=c[c[p>>2]>>2]|0;e=c[x>>2]|0}q=f+16|0;e=q>>>0<e>>>0?q:316344;Xw(b,e);q=5;break}default:{Yx(b,1,287721);o=0;f=0}}if((q|0)==5){e=c[e>>2]|0;if((a[e+4>>0]|0)==4)f=d[e+7>>0]|0;else f=c[e+12>>2]|0;o=e+16|0}e=$x(b,2,1,0)|0;g=z;if(!((g|0)>-1|(g|0)==-1&e>>>0>4294967295))if(f>>>0<(0-e|0)>>>0){e=0;g=0}else{e=yQ(e|0,g|0,1,0)|0;e=yQ(e|0,z|0,f|0,0)|0;g=z}i=$x(b,3,e,g)|0;h=z;if(!((h|0)>-1|(h|0)==-1&i>>>0>4294967295))if(f>>>0<(0-i|0)>>>0){h=0;i=0}else{i=yQ(i|0,h|0,1,0)|0;i=yQ(i|0,z|0,f|0,0)|0;h=z}k=(g|0)>0|(g|0)==0&e>>>0>1;m=k?e:1;k=k?g:0;e=(h|0)>0|(h|0)==0&i>>>0>f>>>0;f=e?f:i;e=e?0:h;if((e|0)<(k|0)|(e|0)==(k|0)&f>>>0<m>>>0){x=0;l=y;return x|0}j=zQ(f|0,e|0,m|0,k|0)|0;i=z;if((i|0)>0|(i|0)==0&j>>>0>2147483646){Wx(b,285082,n);x=0;l=y;return x|0}e=j+1|0;i=j+21|0;c[r>>2]=i;f=c[p>>2]|0;g=c[x>>2]|0;h=g;do if(((c[b+24>>2]|0)-h>>4|0)>(i|0)){u=g;v=i;q=23}else{if(((h-(c[b+28>>2]|0)>>4)+5|0)<=(999979-j|0)?(rw(b,166,r)|0)==0:0){u=c[x>>2]|0;v=c[r>>2]|0;q=23;break}c[w>>2]=285082;Wx(b,282290,w)}while(0);if((q|0)==23?(s=f+4|0,t=u+(v<<4)|0,(c[s>>2]|0)>>>0<t>>>0):0)c[s>>2]=t;if((j|0)<=-1){x=e;l=y;return x|0}f=yQ(m|0,k|0,-1,0)|0;g=z;h=c[x>>2]|0;i=0;while(1){b=yQ(f|0,g|0,i|0,0)|0;w=h;c[w>>2]=d[o+b>>0];c[w+4>>2]=0;c[h+8>>2]=19;h=h+16|0;c[x>>2]=h;if((i|0)>=(j|0))break;else i=i+1|0}l=y;return e|0}function Zz(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+8224|0;q=r;p=r+16|0;h=b+8|0;j=(c[h>>2]|0)-((c[c[b+16>>2]>>2]|0)+16)|0;k=j>>4;n=p+12|0;c[n>>2]=b;o=p+16|0;c[p>>2]=o;m=p+8|0;c[m>>2]=0;i=p+4|0;c[i>>2]=8192;if(k>>>0>8192){d=k>>>0>16384?k:16384;f=gw(b,d)|0;PQ(f|0,c[p>>2]|0,c[m>>2]|0)|0;if((c[p>>2]|0)!=(o|0)){g=c[h>>2]|0;e=g+-16|0;g=g+-32|0;do{c[q>>2]=c[g>>2];c[q+4>>2]=c[g+4>>2];c[q+8>>2]=c[g+8>>2];c[q+12>>2]=c[g+12>>2];c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];c[e>>2]=c[q>>2];c[e+4>>2]=c[q+4>>2];c[e+8>>2]=c[q+8>>2];c[e+12>>2]=c[q+12>>2];g=g+16|0;e=e+-16|0}while(g>>>0<e>>>0);c[h>>2]=(c[h>>2]|0)+-16}c[p>>2]=f;c[i>>2]=d;d=c[m>>2]|0}else{f=o;d=0}g=f+d|0;if((j|0)>=16){e=1;while(1){d=_x(b,e)|0;if(!((d&255|0)==(d|0)&0==(z|0)))Vx(b,e,285063)|0;a[g+(e+-1)>>0]=d;if((e|0)==(k|0))break;else e=e+1|0}d=c[m>>2]|0;f=c[p>>2]|0}e=d+k|0;c[m>>2]=e;d=c[n>>2]|0;if((c[(c[d+12>>2]|0)+12>>2]|0)>0)Sw(d);n=xx(d,f,e)|0;f=d+8|0;d=c[f>>2]|0;c[d>>2]=n;c[d+8>>2]=(a[n+4>>0]|64)&255;d=c[f>>2]|0;c[f>>2]=d+16;if((c[p>>2]|0)==(o|0)){l=r;return 1}e=d;d=d+-16|0;do{c[q>>2]=c[d>>2];c[q+4>>2]=c[d+4>>2];c[q+8>>2]=c[d+8>>2];c[q+12>>2]=c[d+12>>2];c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];c[e>>2]=c[q>>2];c[e+4>>2]=c[q+4>>2];c[e+8>>2]=c[q+8>>2];c[e+12>>2]=c[q+12>>2];d=d+16|0;e=e+-16|0}while(d>>>0<e>>>0);c[f>>2]=(c[f>>2]|0)+-16;l=r;return 1}function _z(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+8256|0;s=w+16|0;v=w;r=w+8232|0;u=w+24|0;e=b+16|0;f=c[c[e>>2]>>2]|0;d=f+32|0;j=b+8|0;g=c[j>>2]|0;d=d>>>0<g>>>0?d:316344;switch(c[d+8>>2]|0){case 0:{d=0;break}case 1:{d=(c[d>>2]|0)!=0;break}default:d=1}k=d&1;q=f+16|0;if(!(q>>>0>=g>>>0|(q|0)==316344)?(c[f+24>>2]&15|0)==6:0)e=g;else{Yx(b,1,287317);f=c[c[e>>2]>>2]|0;e=c[j>>2]|0}d=f+32|0;if(e>>>0<d>>>0){g=(f+24+4+(3-e)|0)>>>4;i=e;do{c[i+8>>2]=0;i=i+16|0}while(i>>>0<d>>>0);c[j>>2]=e+(g+1<<4)}c[j>>2]=d;o=u+12|0;c[o>>2]=b;q=u+16|0;c[u>>2]=q;p=u+8|0;c[p>>2]=0;c[u+4>>2]=8192;if((c[f+24>>2]|0)==70){j=c[(c[f+16>>2]|0)+12>>2]|0;c[r>>2]=b;m=r+4|0;c[m>>2]=5;n=r+8|0;c[n>>2]=u;c[r+12>>2]=k;i=r+16|0;c[q>>2]=1635077147;c[p>>2]=4;c[i>>2]=0;a[u+20>>0]=83;c[p>>2]=5;a[v>>0]=0;e=c[m>>2]|0;f=c[r>>2]|0;g=c[n>>2]|0;d=jg[e&31](f,v,1,g)|0;c[i>>2]=d;if(!d){d=jg[e&31](f,281585,6,g)|0;c[i>>2]=d;a[v>>0]=4;if(!d){d=jg[c[m>>2]&31](c[r>>2]|0,v,1,c[n>>2]|0)|0;c[i>>2]=d;a[v>>0]=4;if(!d){d=jg[c[m>>2]&31](c[r>>2]|0,v,1,c[n>>2]|0)|0;c[i>>2]=d;a[v>>0]=4;if(!d){d=jg[c[m>>2]&31](c[r>>2]|0,v,1,c[n>>2]|0)|0;c[i>>2]=d;a[v>>0]=8;if(!d){d=jg[c[m>>2]&31](c[r>>2]|0,v,1,c[n>>2]|0)|0;c[i>>2]=d;a[v>>0]=8;if(!d){d=jg[c[m>>2]&31](c[r>>2]|0,v,1,c[n>>2]|0)|0;c[i>>2]=d;k=v;c[k>>2]=22136;c[k+4>>2]=0;if(!d){d=jg[c[m>>2]&31](c[r>>2]|0,v,8,c[n>>2]|0)|0;c[i>>2]=d;h[v>>3]=370.5;if(!d){d=jg[c[m>>2]&31](c[r>>2]|0,v,8,c[n>>2]|0)|0;c[i>>2]=d}}else t=25}else t=23}else t=21}else t=19}else t=17}else t=15}else{a[v>>0]=4;t=15}if((t|0)==15){a[v>>0]=4;t=17}if((t|0)==17){a[v>>0]=4;t=19}if((t|0)==19){a[v>>0]=8;t=21}if((t|0)==21){a[v>>0]=8;t=23}if((t|0)==23){k=v;c[k>>2]=22136;c[k+4>>2]=0;t=25}if((t|0)==25)h[v>>3]=370.5;a[v>>0]=c[j+12>>2];if(!d)c[i>>2]=jg[c[m>>2]&31](c[r>>2]|0,v,1,c[n>>2]|0)|0;Cw(j,0,r);if(!(c[i>>2]|0)){e=c[o>>2]|0;f=c[u>>2]|0;d=c[p>>2]|0;if((c[(c[e+12>>2]|0)+12>>2]|0)>0)Sw(e);t=xx(e,f,d)|0;f=e+8|0;d=c[f>>2]|0;c[d>>2]=t;c[d+8>>2]=(a[t+4>>0]|64)&255;d=c[f>>2]|0;c[f>>2]=d+16;if((c[u>>2]|0)==(q|0)){l=w;return 1}e=d;d=d+-16|0;do{c[v>>2]=c[d>>2];c[v+4>>2]=c[d+4>>2];c[v+8>>2]=c[d+8>>2];c[v+12>>2]=c[d+12>>2];c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];c[e>>2]=c[v>>2];c[e+4>>2]=c[v+4>>2];c[e+8>>2]=c[v+8>>2];c[e+12>>2]=c[v+12>>2];d=d+16|0;e=e+-16|0}while(d>>>0<e>>>0);c[f>>2]=(c[f>>2]|0)+-16;l=w;return 1}}Wx(b,285033,s);l=w;return 1}function $z(a){a=a|0;return qA(a,1)|0}function aA(b){b=b|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,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;da=l;l=l+8432|0;Z=da+160|0;Y=da+152|0;X=da+144|0;W=da+136|0;V=da+128|0;T=da+120|0;S=da+112|0;R=da+104|0;Q=da+96|0;P=da+88|0;O=da+80|0;N=da+72|0;M=da+64|0;aa=da+56|0;$=da+48|0;_=da+40|0;U=da+32|0;L=da+24|0;K=da+16|0;ca=da;J=da+8376|0;G=da+8384|0;ba=da+168|0;H=da+8400|0;I=da+8380|0;w=b+8|0;e=c[w>>2]|0;i=b+16|0;f=c[c[i>>2]>>2]|0;g=f+16|0;F=e-g>>4;g=g>>>0<e>>>0?g:316344;switch(c[g+8>>2]&15){case 4:{e=g;v=5;break}case 3:{if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);f=c[c[i>>2]>>2]|0;e=c[w>>2]|0}v=f+16|0;e=v>>>0<e>>>0?v:316344;Xw(b,e);v=5;break}default:{Yx(b,1,287721);e=0;f=0}}if((v|0)==5){e=c[e>>2]|0;if((a[e+4>>0]|0)==4)f=d[e+7>>0]|0;else f=c[e+12>>2]|0;e=e+16|0}q=e+f|0;t=ba+12|0;c[t>>2]=b;u=ba+16|0;c[ba>>2]=u;r=ba+8|0;c[r>>2]=0;s=ba+4|0;c[s>>2]=8192;a:do if((f|0)>0){o=H+1|0;p=1;n=e;b:while(1){k=n;while(1){f=a[k>>0]|0;if(f<<24>>24==37){n=k+1|0;if((a[n>>0]|0)!=37)break;e=c[r>>2]|0;f=c[s>>2]|0;if(e>>>0>=f>>>0?(E=c[t>>2]|0,(f|0)==(e|0)):0){j=e<<1;j=(j|0)==(e|0)?e+1|0:j;if(j>>>0<e>>>0)Wx(E,282347,L);g=gw(E,j)|0;PQ(g|0,c[ba>>2]|0,c[r>>2]|0)|0;if((c[ba>>2]|0)!=(u|0)){i=E+8|0;f=c[i>>2]|0;e=f+-16|0;f=f+-32|0;do{c[ca>>2]=c[f>>2];c[ca+4>>2]=c[f+4>>2];c[ca+8>>2]=c[f+8>>2];c[ca+12>>2]=c[f+12>>2];c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[e>>2]=c[ca>>2];c[e+4>>2]=c[ca+4>>2];c[e+8>>2]=c[ca+8>>2];c[e+12>>2]=c[ca+12>>2];f=f+16|0;e=e+-16|0}while(f>>>0<e>>>0);c[i>>2]=(c[i>>2]|0)+-16}c[ba>>2]=g;c[s>>2]=j;g=a[n>>0]|0;e=c[r>>2]|0;f=2}else{g=37;f=2}}else{e=c[r>>2]|0;g=c[s>>2]|0;if(e>>>0>=g>>>0?(D=c[t>>2]|0,(g|0)==(e|0)):0){j=e<<1;j=(j|0)==(e|0)?e+1|0:j;if(j>>>0<e>>>0)Wx(D,282347,K);g=gw(D,j)|0;PQ(g|0,c[ba>>2]|0,c[r>>2]|0)|0;if((c[ba>>2]|0)!=(u|0)){i=D+8|0;f=c[i>>2]|0;e=f+-16|0;f=f+-32|0;do{c[ca>>2]=c[f>>2];c[ca+4>>2]=c[f+4>>2];c[ca+8>>2]=c[f+8>>2];c[ca+12>>2]=c[f+12>>2];c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[e>>2]=c[ca>>2];c[e+4>>2]=c[ca+4>>2];c[e+8>>2]=c[ca+8>>2];c[e+12>>2]=c[ca+12>>2];f=f+16|0;e=e+-16|0}while(f>>>0<e>>>0);c[i>>2]=(c[i>>2]|0)+-16}c[ba>>2]=g;c[s>>2]=j;g=a[k>>0]|0;e=c[r>>2]|0;f=1}else{g=f;f=1}}k=k+f|0;c[r>>2]=e+1;a[(c[ba>>2]|0)+e>>0]=g;if(k>>>0>=q>>>0){v=132;break b}}g=c[t>>2]|0;f=c[s>>2]|0;e=c[r>>2]|0;if((f-e|0)>>>0<428){j=f<<1;j=(j-e|0)>>>0<428?e+428|0:j;if(j>>>0<e>>>0|(j-e|0)>>>0<428)Wx(g,282347,U);f=gw(g,j)|0;PQ(f|0,c[ba>>2]|0,c[r>>2]|0)|0;if((c[ba>>2]|0)!=(u|0)){i=g+8|0;g=c[i>>2]|0;e=g+-16|0;g=g+-32|0;do{c[ca>>2]=c[g>>2];c[ca+4>>2]=c[g+4>>2];c[ca+8>>2]=c[g+8>>2];c[ca+12>>2]=c[g+12>>2];c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];c[e>>2]=c[ca>>2];c[e+4>>2]=c[ca+4>>2];c[e+8>>2]=c[ca+8>>2];c[e+12>>2]=c[ca+12>>2];g=g+16|0;e=e+-16|0}while(g>>>0<e>>>0);c[i>>2]=(c[i>>2]|0)+-16}c[ba>>2]=f;c[s>>2]=j;e=c[r>>2]|0}else f=c[ba>>2]|0;m=f+e|0;k=p;p=p+1|0;if((k|0)>=(F|0))Vx(b,p,284894)|0;e=a[n>>0]|0;c:do if(!(e<<24>>24)){e=0;f=n}else{f=n;while(1){if(!(ZN(284903,e<<24>>24,6)|0))break c;f=f+1|0;e=a[f>>0]|0;if(!(e<<24>>24)){e=0;break}}}while(0);k=n;if((f-k|0)>>>0>5){Wx(b,284909,_);e=a[f>>0]|0}j=((e&255)+-48|0)>>>0<10?f+1|0:f;j=((d[j>>0]|0)+-48|0)>>>0<10?j+1|0:j;e=a[j>>0]|0;if(e<<24>>24==46){g=j+1|0;i=((d[g>>0]|0)+-48|0)>>>0<10;f=i?j+2|0:g;e=a[f>>0]|0;if(((e&255)+-48|0)>>>0<10){f=(i?g:j)+2|0;e=a[f>>0]|0}}else f=j;if(((e&255)+-48|0)>>>0<10)Wx(b,284941,$);a[H>>0]=37;e=f-k|0;PQ(o|0,n|0,e+1|0)|0;a[H+(e+2)>>0]=0;n=f+1|0;e=a[f>>0]|0;d:do switch(e|0){case 99:{c[aa>>2]=_x(b,p)|0;e=MN(m,H,aa)|0;break}case 88:case 120:case 117:case 111:case 105:case 100:{j=_x(b,p)|0;k=z;e=WO(H)|0;g=H+(e+-1)|0;i=a[g>>0]|0;a[g>>0]=a[284986]|0;a[g+1>>0]=a[284987]|0;a[g+2>>0]=a[284988]|0;a[H+(e+1)>>0]=i;a[H+(e+2)>>0]=0;e=M;c[e>>2]=j;c[e+4>>2]=k;e=MN(m,H,M)|0;break}case 65:case 97:{a[H+(WO(H)|0)>>0]=0;h[N>>3]=+Zx(b,p);e=MN(m,H,N)|0;break}case 71:case 103:case 102:case 69:case 101:{a[H+(WO(H)|0)>>0]=0;h[O>>3]=+Zx(b,p);e=MN(m,H,O)|0;break}case 113:{k=Tv(b,p,J)|0;if(!k)Yx(b,p,287721);e=c[r>>2]|0;f=c[s>>2]|0;if(e>>>0>=f>>>0?(x=c[t>>2]|0,(f|0)==(e|0)):0){j=e<<1;j=(j|0)==(e|0)?e+1|0:j;if(j>>>0<e>>>0)Wx(x,282347,P);g=gw(x,j)|0;PQ(g|0,c[ba>>2]|0,c[r>>2]|0)|0;if((c[ba>>2]|0)!=(u|0)){i=x+8|0;f=c[i>>2]|0;e=f+-16|0;f=f+-32|0;do{c[ca>>2]=c[f>>2];c[ca+4>>2]=c[f+4>>2];c[ca+8>>2]=c[f+8>>2];c[ca+12>>2]=c[f+12>>2];c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[e>>2]=c[ca>>2];c[e+4>>2]=c[ca+4>>2];c[e+8>>2]=c[ca+8>>2];c[e+12>>2]=c[ca+12>>2];f=f+16|0;e=e+-16|0}while(f>>>0<e>>>0);c[i>>2]=(c[i>>2]|0)+-16}c[ba>>2]=g;c[s>>2]=j;e=c[r>>2]|0}c[r>>2]=e+1;a[(c[ba>>2]|0)+e>>0]=34;m=c[J>>2]|0;c[J>>2]=m+-1;e:do if(m|0)while(1){e=a[k>>0]|0;switch(e<<24>>24){case 10:case 92:case 34:{e=c[r>>2]|0;f=c[s>>2]|0;if(e>>>0>=f>>>0?(y=c[t>>2]|0,(f|0)==(e|0)):0){j=e<<1;j=(j|0)==(e|0)?e+1|0:j;if(j>>>0<e>>>0)Wx(y,282347,Q);g=gw(y,j)|0;PQ(g|0,c[ba>>2]|0,c[r>>2]|0)|0;if((c[ba>>2]|0)!=(u|0)){i=y+8|0;f=c[i>>2]|0;e=f+-16|0;f=f+-32|0;do{c[ca>>2]=c[f>>2];c[ca+4>>2]=c[f+4>>2];c[ca+8>>2]=c[f+8>>2];c[ca+12>>2]=c[f+12>>2];c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[e>>2]=c[ca>>2];c[e+4>>2]=c[ca+4>>2];c[e+8>>2]=c[ca+8>>2];c[e+12>>2]=c[ca+12>>2];f=f+16|0;e=e+-16|0}while(f>>>0<e>>>0);c[i>>2]=(c[i>>2]|0)+-16}c[ba>>2]=g;c[s>>2]=j;e=c[r>>2]|0}c[r>>2]=e+1;a[(c[ba>>2]|0)+e>>0]=92;e=c[r>>2]|0;f=c[s>>2]|0;if(e>>>0>=f>>>0?(A=c[t>>2]|0,(f|0)==(e|0)):0){j=e<<1;j=(j|0)==(e|0)?e+1|0:j;if(j>>>0<e>>>0)Wx(A,282347,R);g=gw(A,j)|0;PQ(g|0,c[ba>>2]|0,c[r>>2]|0)|0;if((c[ba>>2]|0)!=(u|0)){i=A+8|0;f=c[i>>2]|0;e=f+-16|0;f=f+-32|0;do{c[ca>>2]=c[f>>2];c[ca+4>>2]=c[f+4>>2];c[ca+8>>2]=c[f+8>>2];c[ca+12>>2]=c[f+12>>2];c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[e>>2]=c[ca>>2];c[e+4>>2]=c[ca+4>>2];c[e+8>>2]=c[ca+8>>2];c[e+12>>2]=c[ca+12>>2];f=f+16|0;e=e+-16|0}while(f>>>0<e>>>0);c[i>>2]=(c[i>>2]|0)+-16}c[ba>>2]=g;c[s>>2]=j;e=c[r>>2]|0}m=a[k>>0]|0;c[r>>2]=e+1;a[(c[ba>>2]|0)+e>>0]=m;break}case 0:{e=0;v=93;break}default:if(!(pO(e&255)|0)){g=c[r>>2]|0;f=c[s>>2]|0;if(g>>>0>=f>>>0?(B=c[t>>2]|0,(f|0)==(g|0)):0){j=g<<1;j=(j|0)==(g|0)?g+1|0:j;if(j>>>0<g>>>0)Wx(B,282347,W);g=gw(B,j)|0;PQ(g|0,c[ba>>2]|0,c[r>>2]|0)|0;if((c[ba>>2]|0)!=(u|0)){i=B+8|0;f=c[i>>2]|0;e=f+-16|0;f=f+-32|0;do{c[ca>>2]=c[f>>2];c[ca+4>>2]=c[f+4>>2];c[ca+8>>2]=c[f+8>>2];c[ca+12>>2]=c[f+12>>2];c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[e>>2]=c[ca>>2];c[e+4>>2]=c[ca+4>>2];c[e+8>>2]=c[ca+8>>2];c[e+12>>2]=c[ca+12>>2];f=f+16|0;e=e+-16|0}while(f>>>0<e>>>0);c[i>>2]=(c[i>>2]|0)+-16}c[ba>>2]=g;c[s>>2]=j;f=c[r>>2]|0;e=a[k>>0]|0}else f=g;c[r>>2]=f+1;a[(c[ba>>2]|0)+f>>0]=e}else v=93}if((v|0)==93){v=0;e=e&255;if(((d[k+1>>0]|0)+-48|0)>>>0<10){c[T>>2]=e;MN(G,284993,T)|0}else{c[S>>2]=e;MN(G,284989,S)|0}m=WO(G)|0;g=c[t>>2]|0;f=c[s>>2]|0;e=c[r>>2]|0;if((f-e|0)>>>0<m>>>0){j=f<<1;j=(j-e|0)>>>0<m>>>0?e+m|0:j;if(j>>>0<e>>>0|(j-e|0)>>>0<m>>>0)Wx(g,282347,V);f=gw(g,j)|0;PQ(f|0,c[ba>>2]|0,c[r>>2]|0)|0;if((c[ba>>2]|0)!=(u|0)){i=g+8|0;g=c[i>>2]|0;e=g+-16|0;g=g+-32|0;do{c[ca>>2]=c[g>>2];c[ca+4>>2]=c[g+4>>2];c[ca+8>>2]=c[g+8>>2];c[ca+12>>2]=c[g+12>>2];c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];c[e>>2]=c[ca>>2];c[e+4>>2]=c[ca+4>>2];c[e+8>>2]=c[ca+8>>2];c[e+12>>2]=c[ca+12>>2];g=g+16|0;e=e+-16|0}while(g>>>0<e>>>0);c[i>>2]=(c[i>>2]|0)+-16}c[ba>>2]=f;c[s>>2]=j;e=c[r>>2]|0}else f=c[ba>>2]|0;PQ(f+e|0,G|0,m|0)|0;c[r>>2]=(c[r>>2]|0)+m}m=c[J>>2]|0;c[J>>2]=m+-1;if(!m)break e;else k=k+1|0}while(0);e=c[r>>2]|0;f=c[s>>2]|0;if(e>>>0>=f>>>0?(C=c[t>>2]|0,(f|0)==(e|0)):0){j=e<<1;j=(j|0)==(e|0)?e+1|0:j;if(j>>>0<e>>>0)Wx(C,282347,X);g=gw(C,j)|0;PQ(g|0,c[ba>>2]|0,c[r>>2]|0)|0;if((c[ba>>2]|0)!=(u|0)){i=C+8|0;f=c[i>>2]|0;e=f+-16|0;f=f+-32|0;do{c[ca>>2]=c[f>>2];c[ca+4>>2]=c[f+4>>2];c[ca+8>>2]=c[f+8>>2];c[ca+12>>2]=c[f+12>>2];c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[e>>2]=c[ca>>2];c[e+4>>2]=c[ca+4>>2];c[e+8>>2]=c[ca+8>>2];c[e+12>>2]=c[ca+12>>2];f=f+16|0;e=e+-16|0}while(f>>>0<e>>>0);c[i>>2]=(c[i>>2]|0)+-16}c[ba>>2]=g;c[s>>2]=j;e=c[r>>2]|0}c[r>>2]=e+1;a[(c[ba>>2]|0)+e>>0]=34;e=0;break}case 115:{e=iy(b,p,I)|0;k=(XO(H,46)|0)==0;if(k&(c[I>>2]|0)>>>0>99){by(ba);e=0;break d}else{c[Y>>2]=e;e=MN(m,H,Y)|0;c[w>>2]=(c[w>>2]|0)+-16;break d}}default:break b}while(0);g=(c[r>>2]|0)+e|0;c[r>>2]=g;if(n>>>0>=q>>>0)break a}if((v|0)==132){g=c[r>>2]|0;break}c[Z>>2]=e;Wx(b,284999,Z);l=da;return 1}else g=0;while(0);e=c[t>>2]|0;f=c[ba>>2]|0;if((c[(c[e+12>>2]|0)+12>>2]|0)>0)Sw(e);aa=xx(e,f,g)|0;g=e+8|0;e=c[g>>2]|0;c[e>>2]=aa;c[e+8>>2]=(a[aa+4>>0]|64)&255;e=c[g>>2]|0;c[g>>2]=e+16;if((c[ba>>2]|0)==(u|0)){l=da;return 1}f=e;e=e+-16|0;do{c[ca>>2]=c[e>>2];c[ca+4>>2]=c[e+4>>2];c[ca+8>>2]=c[e+8>>2];c[ca+12>>2]=c[e+12>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[f>>2]=c[ca>>2];c[f+4>>2]=c[ca+4>>2];c[f+8>>2]=c[ca+8>>2];c[f+12>>2]=c[ca+12>>2];e=e+16|0;f=f+-16|0}while(e>>>0<f>>>0);c[g>>2]=(c[g>>2]|0)+-16;l=da;return 1}function bA(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;f=b+16|0;e=c[c[f>>2]>>2]|0;h=e+16|0;i=b+8|0;d=c[i>>2]|0;switch(c[(h>>>0<d>>>0?h:316344)+8>>2]&15){case 4:break;case 3:{if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);e=c[c[f>>2]>>2]|0;d=c[i>>2]|0}h=e+16|0;Xw(b,h>>>0<d>>>0?h:316344);break}default:Yx(b,1,287721)}d=c[c[f>>2]>>2]|0;h=d+32|0;e=c[i>>2]|0;switch(c[(h>>>0<e>>>0?h:316344)+8>>2]&15){case 4:break;case 3:{if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);d=c[c[f>>2]>>2]|0;e=c[i>>2]|0}h=d+32|0;Xw(b,h>>>0<e>>>0?h:316344);break}default:Yx(b,2,287721)}d=c[c[f>>2]>>2]|0;e=c[i>>2]|0;f=d+48|0;if(e>>>0<f>>>0){g=(d+40+4+(3-e)|0)>>>4;h=e;do{c[h+8>>2]=0;h=h+16|0}while(h>>>0<f>>>0);c[i>>2]=e+(g+1<<4)}e=f;c[e>>2]=0;c[e+4>>2]=0;c[d+56>>2]=19;c[i>>2]=d+64;d=b+12|0;e=c[d>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[d>>2]|0}d=e+4|0;f=jg[c[e>>2]&31](c[d>>2]|0,0,6,64)|0;if(!f){if(!(c[e+140>>2]|0))qw(b,4);Tw(b,1);d=jg[c[e>>2]&31](c[d>>2]|0,0,6,64)|0;if(!d)qw(b,4);else j=d}else j=f;b=e+12|0;c[b>>2]=(c[b>>2]|0)+64;a[j+5>>0]=a[e+60>>0]&3;a[j+4>>0]=38;b=e+64|0;c[j>>2]=c[b>>2];c[b>>2]=j;a[j+6>>0]=3;c[j+12>>2]=405;b=c[i>>2]|0;c[i>>2]=b+-48;h=j+48|0;b=b+-16|0;c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];c[h+12>>2]=c[b+12>>2];h=j+32|0;b=(c[i>>2]|0)+16|0;c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];c[h+12>>2]=c[b+12>>2];h=c[i>>2]|0;b=j+16|0;c[b>>2]=c[h>>2];c[b+4>>2]=c[h+4>>2];c[b+8>>2]=c[h+8>>2];c[b+12>>2]=c[h+12>>2];b=c[i>>2]|0;c[b>>2]=j;c[b+8>>2]=102;c[i>>2]=(c[i>>2]|0)+16;return 1}function cA(e){e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,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;fa=l;l=l+8592|0;ba=fa+88|0;Y=fa+80|0;X=fa+72|0;W=fa+64|0;V=fa+56|0;$=fa+48|0;_=fa+40|0;Z=fa+32|0;U=fa+24|0;T=fa+16|0;ea=fa;S=fa+8304|0;ca=fa+96|0;j=e+16|0;g=c[c[j>>2]>>2]|0;h=g+16|0;da=e+8|0;f=c[da>>2]|0;h=h>>>0<f>>>0?h:316344;switch(c[h+8>>2]&15){case 4:{f=h;H=5;break}case 3:{if((c[(c[e+12>>2]|0)+12>>2]|0)>0){Sw(e);g=c[c[j>>2]>>2]|0;f=c[da>>2]|0}H=g+16|0;f=H>>>0<f>>>0?H:316344;Xw(e,f);H=5;break}default:{Yx(e,1,287721);k=0;g=0}}if((H|0)==5){f=c[f>>2]|0;if((a[f+4>>0]|0)==4)g=d[f+7>>0]|0;else g=c[f+12>>2]|0;k=f+16|0}h=c[c[j>>2]>>2]|0;i=h+32|0;f=c[da>>2]|0;i=i>>>0<f>>>0?i:316344;switch(c[i+8>>2]&15){case 4:{f=i;H=14;break}case 3:{if((c[(c[e+12>>2]|0)+12>>2]|0)>0){Sw(e);h=c[c[j>>2]>>2]|0;f=c[da>>2]|0}H=h+32|0;f=H>>>0<f>>>0?H:316344;Xw(e,f);H=14;break}default:{Yx(e,2,287721);i=0;h=0}}if((H|0)==14){f=c[f>>2]|0;if((a[f+4>>0]|0)==4)h=d[f+7>>0]|0;else h=c[f+12>>2]|0;i=f+16|0}f=c[c[j>>2]>>2]|0;aa=f+48|0;if((aa|0)==316344?1:aa>>>0>=(c[da>>2]|0)>>>0)F=-1;else F=c[f+56>>2]&15;C=$x(e,4,g+1|0,0)|0;D=z;E=(a[i>>0]|0)==94;if((F+-3|0)>>>0>=4)Vx(e,3,284788)|0;J=ca+12|0;c[J>>2]=e;aa=ca+16|0;c[ca>>2]=aa;K=ca+8|0;c[K>>2]=0;I=ca+4|0;c[I>>2]=8192;B=E?i+1|0:i;A=S+16|0;c[A>>2]=e;c[S>>2]=200;y=S+4|0;c[y>>2]=k;G=S+8|0;c[G>>2]=k+g;c[S+12>>2]=B+(h+(E<<31>>31));v=S+20|0;w=S+28|0;x=S+24|0;m=0;n=0;a:while(1){if(!((m|0)<(D|0)|(m|0)==(D|0)&n>>>0<C>>>0)){H=127;break}c[v>>2]=0;u=rA(S,k,B)|0;if(u){n=yQ(n|0,m|0,1,0)|0;m=z;t=c[A>>2]|0;b:do switch(F|0){case 6:{f=t+8|0;p=c[f>>2]|0;g=(c[c[t+16>>2]>>2]|0)+48|0;g=g>>>0<p>>>0?g:316344;c[p>>2]=c[g>>2];c[p+4>>2]=c[g+4>>2];c[p+8>>2]=c[g+8>>2];c[p+12>>2]=c[g+12>>2];c[f>>2]=(c[f>>2]|0)+16;p=c[v>>2]|0;p=(k|0)!=0&(p|0)==0?1:p;g=c[A>>2]|0;h=p+20|0;c[ea>>2]=h;i=c[g+16>>2]|0;j=g+8|0;e=c[j>>2]|0;o=e;do if(((c[g+24>>2]|0)-o>>4|0)>(h|0)){N=e;O=h;H=31}else{if(((o-(c[g+28>>2]|0)>>4)+5|0)<=(999980-p|0)?(rw(g,166,ea)|0)==0:0){N=c[j>>2]|0;O=c[ea>>2]|0;H=31;break}c[T>>2]=287951;Wx(g,282290,T)}while(0);if((H|0)==31?(0,L=i+4|0,M=N+(O<<4)|0,(c[L>>2]|0)>>>0<M>>>0):0)c[L>>2]=M;if((p|0)>0){g=0;do{sA(S,g,k,u);g=g+1|0}while((g|0)!=(p|0))}h=(c[f>>2]|0)+(~p<<4)|0;i=t+106|0;g=(b[i>>1]|0)+1<<16>>16;b[i>>1]=g;if((g&65535)>199){if(g<<16>>16==200){H=39;break a}if((g&65535)>224){H=41;break a}}g=t+104|0;b[g>>1]=(b[g>>1]|0)+1<<16>>16;if(!(uw(t,h,1)|0))Sx(t);b[g>>1]=(b[g>>1]|0)+-1<<16>>16;b[i>>1]=(b[i>>1]|0)+-1<<16>>16;H=105;break}case 5:{do if((c[v>>2]|0)>0){g=c[w>>2]|0;if((g|0)!=-1){f=c[x>>2]|0;if((g|0)==-2){s=f+1-(c[y>>2]|0)|0;f=t+8|0;g=c[f>>2]|0;H=g;c[H>>2]=s;c[H+4>>2]=((s|0)<0)<<31>>31;c[g+8>>2]=19;g=g+16|0;c[f>>2]=g;break}else h=t}else{Wx(t,284576,Z);h=c[A>>2]|0;f=c[x>>2]|0}if((c[(c[h+12>>2]|0)+12>>2]|0)>0)Sw(h);H=xx(h,f,g)|0;g=h+8|0;f=c[g>>2]|0;c[f>>2]=H;c[f+8>>2]=(a[H+4>>0]|64)&255;c[g>>2]=(c[g>>2]|0)+16;g=t+8|0;f=g;g=c[g>>2]|0}else{if((c[(c[t+12>>2]|0)+12>>2]|0)>0)Sw(t);H=xx(t,k,u-k|0)|0;f=t+8|0;g=c[f>>2]|0;c[g>>2]=H;c[g+8>>2]=(a[H+4>>0]|64)&255;g=(c[f>>2]|0)+16|0;c[f>>2]=g}while(0);s=(c[c[t+16>>2]>>2]|0)+48|0;H=g+-16|0;Kx(t,s>>>0<g>>>0?s:316344,H,H);H=105;break}default:{h=t+16|0;g=c[c[h>>2]>>2]|0;f=g+48|0;s=t+8|0;i=c[s>>2]|0;f=f>>>0<i>>>0?f:316344;switch(c[f+8>>2]&15){case 4:break;case 3:{if((c[(c[t+12>>2]|0)+12>>2]|0)>0){Sw(t);g=c[c[h>>2]>>2]|0;f=c[s>>2]|0}else f=i;r=g+48|0;f=r>>>0<f>>>0?r:316344;Xw(t,f);break}default:break b}f=c[f>>2]|0;if((a[f+4>>0]|0)==4)r=d[f+7>>0]|0;else r=c[f+12>>2]|0;p=f+16|0;if(r|0){q=u-k|0;f=0;do{o=p+f|0;g=a[o>>0]|0;do if(g<<24>>24==37){f=f+1|0;o=p+f|0;g=a[o>>0]|0;h=g<<24>>24;if(((g&255)+-48|0)>>>0>=10){if(g<<24>>24!=37){c[$>>2]=37;Wx(t,284819,$)}g=c[K>>2]|0;h=c[I>>2]|0;if(g>>>0>=h>>>0?(Q=c[J>>2]|0,(h|0)==(g|0)):0){e=g<<1;e=(e|0)==(g|0)?g+1|0:e;if(e>>>0<g>>>0)Wx(Q,282347,V);i=gw(Q,e)|0;PQ(i|0,c[ca>>2]|0,c[K>>2]|0)|0;if((c[ca>>2]|0)!=(aa|0)){j=Q+8|0;h=c[j>>2]|0;g=h+-16|0;h=h+-32|0;do{c[ea>>2]=c[h>>2];c[ea+4>>2]=c[h+4>>2];c[ea+8>>2]=c[h+8>>2];c[ea+12>>2]=c[h+12>>2];c[h>>2]=c[g>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[h+12>>2]=c[g+12>>2];c[g>>2]=c[ea>>2];c[g+4>>2]=c[ea+4>>2];c[g+8>>2]=c[ea+8>>2];c[g+12>>2]=c[ea+12>>2];h=h+16|0;g=g+-16|0}while(h>>>0<g>>>0);c[j>>2]=(c[j>>2]|0)+-16}c[ca>>2]=i;c[I>>2]=e;g=c[K>>2]|0}o=a[o>>0]|0;c[K>>2]=g+1;a[(c[ca>>2]|0)+g>>0]=o;break}if(g<<24>>24!=48){sA(S,h+-49|0,k,u);iy(t,-1,0)|0;h=c[s>>2]|0;g=h+-16|0;h=h+-32|0;do{c[ea>>2]=c[h>>2];c[ea+4>>2]=c[h+4>>2];c[ea+8>>2]=c[h+8>>2];c[ea+12>>2]=c[h+12>>2];c[h>>2]=c[g>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[h+12>>2]=c[g+12>>2];c[g>>2]=c[ea>>2];c[g+4>>2]=c[ea+4>>2];c[g+8>>2]=c[ea+8>>2];c[g+12>>2]=c[ea+12>>2];h=h+16|0;g=g+-16|0}while(h>>>0<g>>>0);c[s>>2]=(c[s>>2]|0)+-16;by(ca);break}i=c[J>>2]|0;h=c[I>>2]|0;g=c[K>>2]|0;if((h-g|0)>>>0<q>>>0){e=h<<1;e=(e-g|0)>>>0<q>>>0?g+q|0:e;if(e>>>0<g>>>0|(e-g|0)>>>0<q>>>0)Wx(i,282347,W);h=gw(i,e)|0;PQ(h|0,c[ca>>2]|0,c[K>>2]|0)|0;if((c[ca>>2]|0)!=(aa|0)){j=i+8|0;i=c[j>>2]|0;g=i+-16|0;i=i+-32|0;do{c[ea>>2]=c[i>>2];c[ea+4>>2]=c[i+4>>2];c[ea+8>>2]=c[i+8>>2];c[ea+12>>2]=c[i+12>>2];c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];c[g>>2]=c[ea>>2];c[g+4>>2]=c[ea+4>>2];c[g+8>>2]=c[ea+8>>2];c[g+12>>2]=c[ea+12>>2];i=i+16|0;g=g+-16|0}while(i>>>0<g>>>0);c[j>>2]=(c[j>>2]|0)+-16}c[ca>>2]=h;c[I>>2]=e;g=c[K>>2]|0}else h=c[ca>>2]|0;PQ(h+g|0,k|0,q|0)|0;c[K>>2]=(c[K>>2]|0)+q}else{i=c[K>>2]|0;h=c[I>>2]|0;if(i>>>0>=h>>>0?(P=c[J>>2]|0,(h|0)==(i|0)):0){e=i<<1;e=(e|0)==(i|0)?i+1|0:e;if(e>>>0<i>>>0)Wx(P,282347,_);i=gw(P,e)|0;PQ(i|0,c[ca>>2]|0,c[K>>2]|0)|0;if((c[ca>>2]|0)!=(aa|0)){j=P+8|0;h=c[j>>2]|0;g=h+-16|0;h=h+-32|0;do{c[ea>>2]=c[h>>2];c[ea+4>>2]=c[h+4>>2];c[ea+8>>2]=c[h+8>>2];c[ea+12>>2]=c[h+12>>2];c[h>>2]=c[g>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[h+12>>2]=c[g+12>>2];c[g>>2]=c[ea>>2];c[g+4>>2]=c[ea+4>>2];c[g+8>>2]=c[ea+8>>2];c[g+12>>2]=c[ea+12>>2];h=h+16|0;g=g+-16|0}while(h>>>0<g>>>0);c[j>>2]=(c[j>>2]|0)+-16}c[ca>>2]=i;c[I>>2]=e;h=c[K>>2]|0;g=a[o>>0]|0}else h=i;c[K>>2]=h+1;a[(c[ca>>2]|0)+h>>0]=g}while(0);f=f+1|0}while(f>>>0<r>>>0)}}}while(0);if((H|0)==105){H=0;g=c[f>>2]|0;h=g+-16|0;g=c[g+-8>>2]|0;switch(g|0){case 0:{H=108;break}case 1:{if(!(c[h>>2]|0))H=108;else{f=g&15;H=112}break}default:{f=g&15;if((f+-3|0)>>>0>=2)H=112}}if((H|0)==108){H=0;c[f>>2]=h;if((c[(c[t+12>>2]|0)+12>>2]|0)>0)Sw(t);s=xx(t,k,u-k|0)|0;t=c[f>>2]|0;c[t>>2]=s;c[t+8>>2]=(a[s+4>>0]|64)&255;c[f>>2]=(c[f>>2]|0)+16}else if((H|0)==112){H=0;c[X>>2]=c[5104+(((h|0)==316344?0:f+1|0)<<2)>>2];Wx(t,284861,X)}by(ca)}if(u>>>0>k>>>0)k=u;else H=115}else H=115;if((H|0)==115){H=0;if(k>>>0>=(c[G>>2]|0)>>>0){H=127;break}f=c[K>>2]|0;g=c[I>>2]|0;if(f>>>0>=g>>>0?(R=c[J>>2]|0,(g|0)==(f|0)):0){j=f<<1;j=(j|0)==(f|0)?f+1|0:j;if(j>>>0<f>>>0)Wx(R,282347,Y);h=gw(R,j)|0;PQ(h|0,c[ca>>2]|0,c[K>>2]|0)|0;if((c[ca>>2]|0)!=(aa|0)){i=R+8|0;g=c[i>>2]|0;f=g+-16|0;g=g+-32|0;do{c[ea>>2]=c[g>>2];c[ea+4>>2]=c[g+4>>2];c[ea+8>>2]=c[g+8>>2];c[ea+12>>2]=c[g+12>>2];c[g>>2]=c[f>>2];c[g+4>>2]=c[f+4>>2];c[g+8>>2]=c[f+8>>2];c[g+12>>2]=c[f+12>>2];c[f>>2]=c[ea>>2];c[f+4>>2]=c[ea+4>>2];c[f+8>>2]=c[ea+8>>2];c[f+12>>2]=c[ea+12>>2];g=g+16|0;f=f+-16|0}while(g>>>0<f>>>0);c[i>>2]=(c[i>>2]|0)+-16}c[ca>>2]=h;c[I>>2]=j;f=c[K>>2]|0}u=a[k>>0]|0;c[K>>2]=f+1;a[(c[ca>>2]|0)+f>>0]=u;k=k+1|0}if(E){H=127;break}}if((H|0)==39)mw(t,279953,U);else if((H|0)==41)qw(t,6);else if((H|0)==127){e=(c[G>>2]|0)-k|0;h=c[J>>2]|0;g=c[I>>2]|0;f=c[K>>2]|0;if((g-f|0)>>>0<e>>>0){j=g<<1;j=(j-f|0)>>>0<e>>>0?f+e|0:j;if(j>>>0<f>>>0|(j-f|0)>>>0<e>>>0)Wx(h,282347,ba);g=gw(h,j)|0;PQ(g|0,c[ca>>2]|0,c[K>>2]|0)|0;if((c[ca>>2]|0)!=(aa|0)){i=h+8|0;h=c[i>>2]|0;f=h+-16|0;h=h+-32|0;do{c[ea>>2]=c[h>>2];c[ea+4>>2]=c[h+4>>2];c[ea+8>>2]=c[h+8>>2];c[ea+12>>2]=c[h+12>>2];c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];c[f>>2]=c[ea>>2];c[f+4>>2]=c[ea+4>>2];c[f+8>>2]=c[ea+8>>2];c[f+12>>2]=c[ea+12>>2];h=h+16|0;f=f+-16|0}while(h>>>0<f>>>0);c[i>>2]=(c[i>>2]|0)+-16}c[ca>>2]=g;c[I>>2]=j;f=c[K>>2]|0}else g=c[ca>>2]|0;PQ(g+f|0,k|0,e|0)|0;h=(c[K>>2]|0)+e|0;c[K>>2]=h;f=c[J>>2]|0;g=c[ca>>2]|0;if((c[(c[f+12>>2]|0)+12>>2]|0)>0)Sw(f);ba=xx(f,g,h)|0;h=f+8|0;f=c[h>>2]|0;c[f>>2]=ba;c[f+8>>2]=(a[ba+4>>0]|64)&255;f=c[h>>2]|0;c[h>>2]=f+16;if((c[ca>>2]|0)==(aa|0)){ea=c[da>>2]|0;ca=ea;ba=ca;c[ba>>2]=n;ca=ca+4|0;c[ca>>2]=m;ca=ea+8|0;c[ca>>2]=19;ea=ea+16|0;c[da>>2]=ea;l=fa;return 2}g=f;f=f+-16|0;do{c[ea>>2]=c[f>>2];c[ea+4>>2]=c[f+4>>2];c[ea+8>>2]=c[f+8>>2];c[ea+12>>2]=c[f+12>>2];c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[f+12>>2]=c[g+12>>2];c[g>>2]=c[ea>>2];c[g+4>>2]=c[ea+4>>2];c[g+8>>2]=c[ea+8>>2];c[g+12>>2]=c[ea+12>>2];f=f+16|0;g=g+-16|0}while(f>>>0<g>>>0);c[h>>2]=(c[h>>2]|0)+-16;ea=c[da>>2]|0;ca=ea;ba=ca;c[ba>>2]=n;ca=ca+4|0;c[ca>>2]=m;ca=ea+8|0;c[ca>>2]=19;ea=ea+16|0;c[da>>2]=ea;l=fa;return 2}return 0}function dA(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;g=b+16|0;f=c[c[g>>2]>>2]|0;e=f+16|0;j=b+8|0;h=c[j>>2]|0;e=e>>>0<h>>>0?e:316344;switch(c[e+8>>2]&15){case 4:{i=5;break}case 3:{if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);f=c[c[g>>2]>>2]|0;e=c[j>>2]|0}else e=h;i=f+16|0;e=i>>>0<e>>>0?i:316344;Xw(b,e);i=5;break}default:{Yx(b,1,287721);e=0}}do if((i|0)==5){e=c[e>>2]|0;if((a[e+4>>0]|0)==4){e=d[e+7>>0]|0;break}else{e=c[e+12>>2]|0;break}}while(0);i=c[j>>2]|0;b=i;c[b>>2]=e;c[b+4>>2]=0;c[i+8>>2]=19;c[j>>2]=i+16;return 1}function eA(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+8224|0;r=s;q=s+16|0;h=b+16|0;f=c[c[h>>2]>>2]|0;g=f+16|0;o=b+8|0;e=c[o>>2]|0;g=g>>>0<e>>>0?g:316344;switch(c[g+8>>2]&15){case 4:{e=g;i=5;break}case 3:{if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);f=c[c[h>>2]>>2]|0;e=c[o>>2]|0}i=f+16|0;e=i>>>0<e>>>0?i:316344;Xw(b,e);i=5;break}default:{Yx(b,1,287721);k=0;f=0}}if((i|0)==5){e=c[e>>2]|0;if((a[e+4>>0]|0)==4)f=d[e+7>>0]|0;else f=c[e+12>>2]|0;k=e+16|0}m=q+12|0;c[m>>2]=b;p=q+16|0;c[q>>2]=p;n=q+8|0;c[n>>2]=0;j=q+4|0;c[j>>2]=8192;if(f>>>0>8192){i=f>>>0>16384?f:16384;g=gw(b,i)|0;PQ(g|0,c[q>>2]|0,c[n>>2]|0)|0;if((c[q>>2]|0)!=(p|0)){h=c[o>>2]|0;e=h+-16|0;h=h+-32|0;do{c[r>>2]=c[h>>2];c[r+4>>2]=c[h+4>>2];c[r+8>>2]=c[h+8>>2];c[r+12>>2]=c[h+12>>2];c[h>>2]=c[e>>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[e>>2]=c[r>>2];c[e+4>>2]=c[r+4>>2];c[e+8>>2]=c[r+8>>2];c[e+12>>2]=c[r+12>>2];h=h+16|0;e=e+-16|0}while(h>>>0<e>>>0);c[o>>2]=(c[o>>2]|0)+-16}c[q>>2]=g;c[j>>2]=i;e=c[n>>2]|0}else{g=p;e=0}h=g+e|0;if(!f)f=0;else{e=0;do{a[h+e>>0]=rN(d[k+e>>0]|0)|0;e=e+1|0}while((e|0)!=(f|0));e=c[n>>2]|0;g=c[q>>2]|0}f=e+f|0;c[n>>2]=f;e=c[m>>2]|0;if((c[(c[e+12>>2]|0)+12>>2]|0)>0)Sw(e);o=xx(e,g,f)|0;g=e+8|0;e=c[g>>2]|0;c[e>>2]=o;c[e+8>>2]=(a[o+4>>0]|64)&255;e=c[g>>2]|0;c[g>>2]=e+16;if((c[q>>2]|0)==(p|0)){l=s;return 1}f=e;e=e+-16|0;do{c[r>>2]=c[e>>2];c[r+4>>2]=c[e+4>>2];c[r+8>>2]=c[e+8>>2];c[r+12>>2]=c[e+12>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[f>>2]=c[r>>2];c[f+4>>2]=c[r+4>>2];c[f+8>>2]=c[r+8>>2];c[f+12>>2]=c[r+12>>2];e=e+16|0;f=f+-16|0}while(e>>>0<f>>>0);c[g>>2]=(c[g>>2]|0)+-16;l=s;return 1}function fA(a){a=a|0;return qA(a,0)|0}function gA(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+8240|0;n=y+16|0;x=y;w=y+24|0;k=b+16|0;f=c[c[k>>2]>>2]|0;g=f+16|0;v=b+8|0;e=c[v>>2]|0;g=g>>>0<e>>>0?g:316344;switch(c[g+8>>2]&15){case 4:{e=g;j=5;break}case 3:{if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);f=c[c[k>>2]>>2]|0;e=c[v>>2]|0}j=f+16|0;e=j>>>0<e>>>0?j:316344;Xw(b,e);j=5;break}default:{Yx(b,1,287721);u=0;f=0}}if((j|0)==5){e=c[e>>2]|0;if((a[e+4>>0]|0)==4)f=d[e+7>>0]|0;else f=c[e+12>>2]|0;u=e+16|0}t=_x(b,2)|0;i=z;g=c[c[k>>2]>>2]|0;h=g+48|0;e=c[v>>2]|0;a:do if(!(h>>>0>=e>>>0|(h|0)==316344)?(m=c[g+56>>2]|0,(m&15|0)!=0):0){switch(m&15){case 4:{e=h;break}case 3:{j=13;break}default:{Yx(b,3,287721);r=0;g=0;break a}}if((j|0)==13){if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);g=c[c[k>>2]>>2]|0;e=c[v>>2]|0}s=g+48|0;e=s>>>0<e>>>0?s:316344;Xw(b,e)}e=c[e>>2]|0;if((a[e+4>>0]|0)==4)g=d[e+7>>0]|0;else g=c[e+12>>2]|0;r=e+16|0}else{r=335059;g=0}while(0);if((i|0)<0|(i|0)==0&t>>>0<1){f=b+12|0;e=c[f>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[f>>2]|0}f=e+280+(((335059>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(335059,e+16|0)|0){e=xx(b,335059,0)|0;c[f>>2]=e}x=c[v>>2]|0;c[x>>2]=e;c[x+8>>2]=(a[e+4>>0]|64)&255;c[v>>2]=(c[v>>2]|0)+16;l=y;return 1}o=g+f|0;if(o>>>0>=f>>>0?(s=CQ(2147483647,0,t|0,i|0)|0,q=z,!(0>(q|0)|0==(q|0)&o>>>0>s>>>0)):0){n=O(f,t)|0;p=yQ(t|0,i|0,-1,0)|0;n=(O(g,p)|0)+n|0;p=w+12|0;c[p>>2]=b;s=w+16|0;c[w>>2]=s;q=w+8|0;c[q>>2]=0;m=w+4|0;c[m>>2]=8192;if(n>>>0>8192){k=n>>>0>16384?n:16384;e=gw(b,k)|0;PQ(e|0,c[w>>2]|0,c[q>>2]|0)|0;if((c[w>>2]|0)!=(s|0)){j=c[v>>2]|0;h=j+-16|0;j=j+-32|0;do{c[x>>2]=c[j>>2];c[x+4>>2]=c[j+4>>2];c[x+8>>2]=c[j+8>>2];c[x+12>>2]=c[j+12>>2];c[j>>2]=c[h>>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];c[h>>2]=c[x>>2];c[h+4>>2]=c[x+4>>2];c[h+8>>2]=c[x+8>>2];c[h+12>>2]=c[x+12>>2];j=j+16|0;h=h+-16|0}while(j>>>0<h>>>0);c[v>>2]=(c[v>>2]|0)+-16}c[w>>2]=e;c[m>>2]=k;h=c[q>>2]|0}else{e=s;h=0}h=e+h|0;PQ(h|0,u|0,f|0)|0;if((i|0)>0|(i|0)==0&t>>>0>1){k=(g|0)==0;j=t;while(1){j=yQ(j|0,i|0,-1,-1)|0;i=z;e=h+f|0;if(!k){PQ(e|0,r|0,g|0)|0;e=h+o|0}PQ(e|0,u|0,f|0)|0;if(!((i|0)>0|(i|0)==0&j>>>0>1))break;else h=e}}g=(c[q>>2]|0)+n|0;c[q>>2]=g;e=c[p>>2]|0;f=c[w>>2]|0;if((c[(c[e+12>>2]|0)+12>>2]|0)>0)Sw(e);v=xx(e,f,g)|0;g=e+8|0;e=c[g>>2]|0;c[e>>2]=v;c[e+8>>2]=(a[v+4>>0]|64)&255;e=c[g>>2]|0;c[g>>2]=e+16;if((c[w>>2]|0)!=(s|0)){f=e;e=e+-16|0;do{c[x>>2]=c[e>>2];c[x+4>>2]=c[e+4>>2];c[x+8>>2]=c[e+8>>2];c[x+12>>2]=c[e+12>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[f>>2]=c[x>>2];c[f+4>>2]=c[x+4>>2];c[f+8>>2]=c[x+8>>2];c[f+12>>2]=c[x+12>>2];e=e+16|0;f=f+-16|0}while(e>>>0<f>>>0);c[g>>2]=(c[g>>2]|0)+-16}l=y;return 1}Wx(b,284511,n);l=y;return 1}function hA(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+8224|0;r=s;q=s+16|0;h=b+16|0;f=c[c[h>>2]>>2]|0;g=f+16|0;o=b+8|0;e=c[o>>2]|0;g=g>>>0<e>>>0?g:316344;switch(c[g+8>>2]&15){case 4:{e=g;i=5;break}case 3:{if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);f=c[c[h>>2]>>2]|0;e=c[o>>2]|0}i=f+16|0;e=i>>>0<e>>>0?i:316344;Xw(b,e);i=5;break}default:{Yx(b,1,287721);k=0;f=0}}if((i|0)==5){e=c[e>>2]|0;if((a[e+4>>0]|0)==4)f=d[e+7>>0]|0;else f=c[e+12>>2]|0;k=e+16|0}m=q+12|0;c[m>>2]=b;p=q+16|0;c[q>>2]=p;n=q+8|0;c[n>>2]=0;j=q+4|0;c[j>>2]=8192;if(f>>>0>8192){i=f>>>0>16384?f:16384;g=gw(b,i)|0;PQ(g|0,c[q>>2]|0,c[n>>2]|0)|0;if((c[q>>2]|0)!=(p|0)){h=c[o>>2]|0;e=h+-16|0;h=h+-32|0;do{c[r>>2]=c[h>>2];c[r+4>>2]=c[h+4>>2];c[r+8>>2]=c[h+8>>2];c[r+12>>2]=c[h+12>>2];c[h>>2]=c[e>>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[e>>2]=c[r>>2];c[e+4>>2]=c[r+4>>2];c[e+8>>2]=c[r+8>>2];c[e+12>>2]=c[r+12>>2];h=h+16|0;e=e+-16|0}while(h>>>0<e>>>0);c[o>>2]=(c[o>>2]|0)+-16}c[q>>2]=g;c[j>>2]=i;e=c[n>>2]|0}else{g=p;e=0}h=g+e|0;if(!f)f=0;else{e=0;do{a[h+e>>0]=a[k+(f+~e)>>0]|0;e=e+1|0}while((e|0)!=(f|0));e=c[n>>2]|0;g=c[q>>2]|0}f=e+f|0;c[n>>2]=f;e=c[m>>2]|0;if((c[(c[e+12>>2]|0)+12>>2]|0)>0)Sw(e);o=xx(e,g,f)|0;g=e+8|0;e=c[g>>2]|0;c[e>>2]=o;c[e+8>>2]=(a[o+4>>0]|64)&255;e=c[g>>2]|0;c[g>>2]=e+16;if((c[q>>2]|0)==(p|0)){l=s;return 1}f=e;e=e+-16|0;do{c[r>>2]=c[e>>2];c[r+4>>2]=c[e+4>>2];c[r+8>>2]=c[e+8>>2];c[r+12>>2]=c[e+12>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[f>>2]=c[r>>2];c[f+4>>2]=c[r+4>>2];c[f+8>>2]=c[r+8>>2];c[f+12>>2]=c[r+12>>2];e=e+16|0;f=f+-16|0}while(e>>>0<f>>>0);c[g>>2]=(c[g>>2]|0)+-16;l=s;return 1}function iA(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;h=b+16|0;f=c[c[h>>2]>>2]|0;g=f+16|0;l=b+8|0;e=c[l>>2]|0;g=g>>>0<e>>>0?g:316344;switch(c[g+8>>2]&15){case 4:{e=g;i=5;break}case 3:{if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);f=c[c[h>>2]>>2]|0;e=c[l>>2]|0}i=f+16|0;e=i>>>0<e>>>0?i:316344;Xw(b,e);i=5;break}default:{Yx(b,1,287721);k=0;f=0}}if((i|0)==5){e=c[e>>2]|0;if((a[e+4>>0]|0)==4)f=d[e+7>>0]|0;else f=c[e+12>>2]|0;k=e+16|0}g=_x(b,2)|0;e=z;if(!((e|0)>-1|(e|0)==-1&g>>>0>4294967295))if(f>>>0<(0-g|0)>>>0){e=0;g=0}else{g=yQ(g|0,e|0,1,0)|0;g=yQ(g|0,z|0,f|0,0)|0;e=z}i=$x(b,3,-1,-1)|0;h=z;if(!((h|0)>-1|(h|0)==-1&i>>>0>4294967295))if(f>>>0<(0-i|0)>>>0){h=0;i=0}else{i=yQ(i|0,h|0,1,0)|0;i=yQ(i|0,z|0,f|0,0)|0;h=z}m=(e|0)>0|(e|0)==0&g>>>0>1;j=m?g:1;g=m?e:0;e=(h|0)>0|(h|0)==0&i>>>0>f>>>0;f=e?f:i;e=e?0:h;if(!((e|0)<(g|0)|(e|0)==(g|0)&f>>>0<j>>>0)){e=zQ(f|0,e|0,j|0,g|0)|0;if((c[(c[b+12>>2]|0)+12>>2]|0)>0)Sw(b);b=xx(b,k+(j+-1)|0,e+1|0)|0;m=c[l>>2]|0;c[m>>2]=b;b=b+4|0;b=a[b>>0]|0;b=b|64;b=b&255;m=m+8|0;c[m>>2]=b;m=c[l>>2]|0;m=m+16|0;c[l>>2]=m;return 1}f=b+12|0;e=c[f>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[f>>2]|0}e=e+280+(((335059>>>0)%127|0)<<2)|0;f=c[e>>2]|0;if(!(JN(335059,f+16|0)|0)){b=f;m=c[l>>2]|0;c[m>>2]=b;b=b+4|0;b=a[b>>0]|0;b=b|64;b=b&255;m=m+8|0;c[m>>2]=b;m=c[l>>2]|0;m=m+16|0;c[l>>2]=m;return 1}else{b=xx(b,335059,0)|0;c[e>>2]=b;m=c[l>>2]|0;c[m>>2]=b;b=b+4|0;b=a[b>>0]|0;b=b|64;b=b&255;m=m+8|0;c[m>>2]=b;m=c[l>>2]|0;m=m+16|0;c[l>>2]=m;return 1}return 0}function jA(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+8224|0;r=s;q=s+16|0;h=b+16|0;f=c[c[h>>2]>>2]|0;g=f+16|0;o=b+8|0;e=c[o>>2]|0;g=g>>>0<e>>>0?g:316344;switch(c[g+8>>2]&15){case 4:{e=g;i=5;break}case 3:{if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);f=c[c[h>>2]>>2]|0;e=c[o>>2]|0}i=f+16|0;e=i>>>0<e>>>0?i:316344;Xw(b,e);i=5;break}default:{Yx(b,1,287721);k=0;f=0}}if((i|0)==5){e=c[e>>2]|0;if((a[e+4>>0]|0)==4)f=d[e+7>>0]|0;else f=c[e+12>>2]|0;k=e+16|0}m=q+12|0;c[m>>2]=b;p=q+16|0;c[q>>2]=p;n=q+8|0;c[n>>2]=0;j=q+4|0;c[j>>2]=8192;if(f>>>0>8192){i=f>>>0>16384?f:16384;g=gw(b,i)|0;PQ(g|0,c[q>>2]|0,c[n>>2]|0)|0;if((c[q>>2]|0)!=(p|0)){h=c[o>>2]|0;e=h+-16|0;h=h+-32|0;do{c[r>>2]=c[h>>2];c[r+4>>2]=c[h+4>>2];c[r+8>>2]=c[h+8>>2];c[r+12>>2]=c[h+12>>2];c[h>>2]=c[e>>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[e>>2]=c[r>>2];c[e+4>>2]=c[r+4>>2];c[e+8>>2]=c[r+8>>2];c[e+12>>2]=c[r+12>>2];h=h+16|0;e=e+-16|0}while(h>>>0<e>>>0);c[o>>2]=(c[o>>2]|0)+-16}c[q>>2]=g;c[j>>2]=i;e=c[n>>2]|0}else{g=p;e=0}h=g+e|0;if(!f)f=0;else{e=0;do{a[h+e>>0]=BN(d[k+e>>0]|0)|0;e=e+1|0}while((e|0)!=(f|0));e=c[n>>2]|0;g=c[q>>2]|0}f=e+f|0;c[n>>2]=f;e=c[m>>2]|0;if((c[(c[e+12>>2]|0)+12>>2]|0)>0)Sw(e);o=xx(e,g,f)|0;g=e+8|0;e=c[g>>2]|0;c[e>>2]=o;c[e+8>>2]=(a[o+4>>0]|64)&255;e=c[g>>2]|0;c[g>>2]=e+16;if((c[q>>2]|0)==(p|0)){l=s;return 1}f=e;e=e+-16|0;do{c[r>>2]=c[e>>2];c[r+4>>2]=c[e+4>>2];c[r+8>>2]=c[e+8>>2];c[r+12>>2]=c[e+12>>2];c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[f>>2]=c[r>>2];c[f+4>>2]=c[r+4>>2];c[f+8>>2]=c[r+8>>2];c[f+12>>2]=c[r+12>>2];e=e+16|0;f=f+-16|0}while(e>>>0<f>>>0);c[g>>2]=(c[g>>2]|0)+-16;l=s;return 1}function kA(b){b=b|0;var d=0,e=0,f=0,i=0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,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;Y=l;l=l+8384|0;R=Y+128|0;Q=Y+120|0;P=Y+112|0;O=Y+104|0;V=Y+96|0;U=Y+88|0;T=Y+80|0;S=Y+72|0;N=Y+64|0;M=Y+56|0;X=Y+40|0;W=Y+136|0;F=Y+8368|0;E=Y+8364|0;K=Y+8360|0;J=Y+8356|0;L=Y;G=Y+8352|0;H=Y+8348|0;I=Y+8344|0;i=b+16|0;e=c[c[i>>2]>>2]|0;f=e+16|0;k=b+8|0;d=c[k>>2]|0;f=f>>>0<d>>>0?f:316344;switch(c[f+8>>2]&15){case 4:{d=f;u=5;break}case 3:{if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);e=c[c[i>>2]>>2]|0;d=c[k>>2]|0}u=e+16|0;d=u>>>0<d>>>0?u:316344;Xw(b,d);u=5;break}default:{Yx(b,1,287721);d=0}}if((u|0)==5)d=(c[d>>2]|0)+16|0;c[E>>2]=d;c[F>>2]=b;x=F+4|0;c[x>>2]=1;c[F+8>>2]=1;v=c[k>>2]|0;c[v+8>>2]=0;c[k>>2]=v+16;v=W+12|0;c[v>>2]=b;A=W+16|0;c[W>>2]=A;y=W+8|0;c[y>>2]=0;w=W+4|0;c[w>>2]=8192;if(!(a[d>>0]|0)){e=A;d=0}else{q=1;e=0;while(1){p=nA(F,e,E,K,J)|0;o=c[J>>2]|0;r=c[K>>2]|0;t=o+e+r|0;d=o+-1|0;c[J>>2]=d;if((o|0)>0){n=0-o|0;while(1){e=c[y>>2]|0;f=c[w>>2]|0;if(e>>>0>=f>>>0?(B=c[v>>2]|0,(f|0)==(e|0)):0){m=e<<1;m=(m|0)==(e|0)?e+1|0:m;if(m>>>0<e>>>0)Wx(B,282347,M);i=gw(B,m)|0;PQ(i|0,c[W>>2]|0,c[y>>2]|0)|0;if((c[W>>2]|0)!=(A|0)){k=B+8|0;f=c[k>>2]|0;e=f+-16|0;f=f+-32|0;do{c[X>>2]=c[f>>2];c[X+4>>2]=c[f+4>>2];c[X+8>>2]=c[f+8>>2];c[X+12>>2]=c[f+12>>2];c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[e>>2]=c[X>>2];c[e+4>>2]=c[X+4>>2];c[e+8>>2]=c[X+8>>2];c[e+12>>2]=c[X+12>>2];f=f+16|0;e=e+-16|0}while(f>>>0<e>>>0);c[k>>2]=(c[k>>2]|0)+-16}c[W>>2]=i;c[w>>2]=m;e=c[y>>2]|0}c[y>>2]=e+1;a[(c[W>>2]|0)+e>>0]=0;if((d|0)>0)d=d+-1|0;else break}c[J>>2]=(n|0)>-1?o+-2|0:-1}s=q+1|0;switch(p|0){case 0:{o=_x(b,s)|0;p=z;if((r|0)<8?(q=KQ(1,0,(r<<3)+-1|0)|0,n=z,m=zQ(0,0,q|0,n|0)|0,k=z,!(((p|0)>(k|0)|(p|0)==(k|0)&o>>>0>=m>>>0)&((p|0)<(n|0)|(p|0)==(n|0)&o>>>0<q>>>0))):0)Vx(b,s,284400)|0;n=c[x>>2]|0;f=c[v>>2]|0;e=c[w>>2]|0;d=c[y>>2]|0;if((e-d|0)>>>0<r>>>0){k=e<<1;k=(k-d|0)>>>0<r>>>0?d+r|0:k;if(k>>>0<d>>>0|(k-d|0)>>>0<r>>>0)Wx(f,282347,N);e=gw(f,k)|0;PQ(e|0,c[W>>2]|0,c[y>>2]|0)|0;if((c[W>>2]|0)!=(A|0)){i=f+8|0;f=c[i>>2]|0;d=f+-16|0;f=f+-32|0;do{c[X>>2]=c[f>>2];c[X+4>>2]=c[f+4>>2];c[X+8>>2]=c[f+8>>2];c[X+12>>2]=c[f+12>>2];c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[d>>2]=c[X>>2];c[d+4>>2]=c[X+4>>2];c[d+8>>2]=c[X+8>>2];c[d+12>>2]=c[X+12>>2];f=f+16|0;d=d+-16|0}while(f>>>0<d>>>0);c[i>>2]=(c[i>>2]|0)+-16}c[W>>2]=e;c[w>>2]=k;d=c[y>>2]|0}else e=c[W>>2]|0;m=e+d|0;i=(n|0)!=0;k=r+-1|0;a[m+(i?0:k)>>0]=o;do if((r|0)>1){if(i){d=o;e=p;f=1;while(1){d=JQ(d|0,e|0,8)|0;a[m+f>>0]=d;f=f+1|0;if((f|0)==(r|0))break;else e=z}}else{d=o;e=p;f=1;while(1){d=JQ(d|0,e|0,8)|0;a[m+(k-f)>>0]=d;f=f+1|0;if((f|0)==(r|0))break;else e=z}}if((p|0)<0&(r|0)>8)if(i){RQ(m+8|0,-1,r+-8|0)|0;break}else{d=8;do{a[m+(k-d)>>0]=-1;d=d+1|0}while((d|0)!=(r|0))}}while(0);c[y>>2]=(c[y>>2]|0)+r;d=s;e=t;break}case 1:{f=_x(b,s)|0;d=z;if((r|0)<8?(q=KQ(1,0,r<<3|0)|0,p=z,!(d>>>0<p>>>0|(d|0)==(p|0)&f>>>0<q>>>0)):0)Vx(b,s,284417)|0;o=c[x>>2]|0;k=c[v>>2]|0;i=c[w>>2]|0;e=c[y>>2]|0;if((i-e|0)>>>0<r>>>0){n=i<<1;n=(n-e|0)>>>0<r>>>0?e+r|0:n;if(n>>>0<e>>>0|(n-e|0)>>>0<r>>>0)Wx(k,282347,S);i=gw(k,n)|0;PQ(i|0,c[W>>2]|0,c[y>>2]|0)|0;if((c[W>>2]|0)!=(A|0)){m=k+8|0;k=c[m>>2]|0;e=k+-16|0;k=k+-32|0;do{c[X>>2]=c[k>>2];c[X+4>>2]=c[k+4>>2];c[X+8>>2]=c[k+8>>2];c[X+12>>2]=c[k+12>>2];c[k>>2]=c[e>>2];c[k+4>>2]=c[e+4>>2];c[k+8>>2]=c[e+8>>2];c[k+12>>2]=c[e+12>>2];c[e>>2]=c[X>>2];c[e+4>>2]=c[X+4>>2];c[e+8>>2]=c[X+8>>2];c[e+12>>2]=c[X+12>>2];k=k+16|0;e=e+-16|0}while(k>>>0<e>>>0);c[m>>2]=(c[m>>2]|0)+-16}c[W>>2]=i;c[w>>2]=n;e=c[y>>2]|0}else i=c[W>>2]|0;k=i+e|0;e=(o|0)!=0;i=r+-1|0;a[k+(e?0:i)>>0]=f;if((r|0)>1)if(e){e=1;while(1){f=JQ(f|0,d|0,8)|0;a[k+e>>0]=f;e=e+1|0;if((e|0)==(r|0))break;else d=z}}else{e=1;while(1){f=JQ(f|0,d|0,8)|0;a[k+(i-e)>>0]=f;e=e+1|0;if((e|0)==(r|0))break;else d=z}}c[y>>2]=(c[y>>2]|0)+r;d=s;e=t;break}case 2:{f=c[v>>2]|0;e=c[w>>2]|0;d=c[y>>2]|0;if((e-d|0)>>>0<r>>>0){k=e<<1;k=(k-d|0)>>>0<r>>>0?d+r|0:k;if(k>>>0<d>>>0|(k-d|0)>>>0<r>>>0)Wx(f,282347,T);e=gw(f,k)|0;PQ(e|0,c[W>>2]|0,c[y>>2]|0)|0;if((c[W>>2]|0)!=(A|0)){i=f+8|0;f=c[i>>2]|0;d=f+-16|0;f=f+-32|0;do{c[X>>2]=c[f>>2];c[X+4>>2]=c[f+4>>2];c[X+8>>2]=c[f+8>>2];c[X+12>>2]=c[f+12>>2];c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[d>>2]=c[X>>2];c[d+4>>2]=c[X+4>>2];c[d+8>>2]=c[X+8>>2];c[d+12>>2]=c[X+12>>2];f=f+16|0;d=d+-16|0}while(f>>>0<d>>>0);c[i>>2]=(c[i>>2]|0)+-16}c[W>>2]=e;c[w>>2]=k;d=c[y>>2]|0}else e=c[W>>2]|0;d=e+d|0;j=+Zx(b,s);if((r|0)==4)g[L>>2]=j;else h[L>>3]=j;e=(r|0)==0;if((c[x>>2]|0)==1){if(!e){e=r;f=L;while(1){e=e+-1|0;a[d>>0]=a[f>>0]|0;if(!e)break;else{f=f+1|0;d=d+1|0}}}}else if(!e){f=d+(r+-1)|0;d=r;e=L;while(1){d=d+-1|0;a[f>>0]=a[e>>0]|0;if(!d)break;else{f=f+-1|0;e=e+1|0}}}c[y>>2]=(c[y>>2]|0)+(c[K>>2]|0);d=s;e=t;break}case 3:{m=Tv(b,s,G)|0;if(!m)Yx(b,s,287721);if((c[G>>2]|0)!=(r|0))Vx(b,s,284435)|0;f=c[v>>2]|0;e=c[w>>2]|0;d=c[y>>2]|0;if((e-d|0)>>>0<r>>>0){k=e<<1;k=(k-d|0)>>>0<r>>>0?d+r|0:k;if(k>>>0<d>>>0|(k-d|0)>>>0<r>>>0)Wx(f,282347,U);e=gw(f,k)|0;PQ(e|0,c[W>>2]|0,c[y>>2]|0)|0;if((c[W>>2]|0)!=(A|0)){i=f+8|0;f=c[i>>2]|0;d=f+-16|0;f=f+-32|0;do{c[X>>2]=c[f>>2];c[X+4>>2]=c[f+4>>2];c[X+8>>2]=c[f+8>>2];c[X+12>>2]=c[f+12>>2];c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[d>>2]=c[X>>2];c[d+4>>2]=c[X+4>>2];c[d+8>>2]=c[X+8>>2];c[d+12>>2]=c[X+12>>2];f=f+16|0;d=d+-16|0}while(f>>>0<d>>>0);c[i>>2]=(c[i>>2]|0)+-16}c[W>>2]=e;c[w>>2]=k;d=c[y>>2]|0}else e=c[W>>2]|0;PQ(e+d|0,m|0,r|0)|0;c[y>>2]=(c[y>>2]|0)+r;d=s;e=t;break}case 4:{o=Tv(b,s,H)|0;if(!o)Yx(b,s,287721);if((r|0)<=3?(c[H>>2]|0)>>>0>=1<<(r<<3)>>>0:0)Vx(b,s,284448)|0;n=c[H>>2]|0;m=c[x>>2]|0;f=c[v>>2]|0;e=c[w>>2]|0;d=c[y>>2]|0;if((e-d|0)>>>0<r>>>0){k=e<<1;k=(k-d|0)>>>0<r>>>0?d+r|0:k;if(k>>>0<d>>>0|(k-d|0)>>>0<r>>>0)Wx(f,282347,V);e=gw(f,k)|0;PQ(e|0,c[W>>2]|0,c[y>>2]|0)|0;if((c[W>>2]|0)!=(A|0)){i=f+8|0;f=c[i>>2]|0;d=f+-16|0;f=f+-32|0;do{c[X>>2]=c[f>>2];c[X+4>>2]=c[f+4>>2];c[X+8>>2]=c[f+8>>2];c[X+12>>2]=c[f+12>>2];c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[d>>2]=c[X>>2];c[d+4>>2]=c[X+4>>2];c[d+8>>2]=c[X+8>>2];c[d+12>>2]=c[X+12>>2];f=f+16|0;d=d+-16|0}while(f>>>0<d>>>0);c[i>>2]=(c[i>>2]|0)+-16}c[W>>2]=e;c[w>>2]=k;d=c[y>>2]|0}else e=c[W>>2]|0;k=e+d|0;d=(m|0)!=0;i=r+-1|0;a[k+(d?0:i)>>0]=n;if((r|0)>1)if(d){d=n;e=0;f=1;while(1){d=JQ(d|0,e|0,8)|0;a[k+f>>0]=d;f=f+1|0;if((f|0)==(r|0))break;else e=z}}else{d=n;e=0;f=1;while(1){d=JQ(d|0,e|0,8)|0;a[k+(i-f)>>0]=d;f=f+1|0;if((f|0)==(r|0))break;else e=z}}d=(c[y>>2]|0)+r|0;c[y>>2]=d;m=c[H>>2]|0;f=c[v>>2]|0;e=c[w>>2]|0;if((e-d|0)>>>0<m>>>0){k=e<<1;k=(k-d|0)>>>0<m>>>0?d+m|0:k;if(k>>>0<d>>>0|(k-d|0)>>>0<m>>>0)Wx(f,282347,O);e=gw(f,k)|0;PQ(e|0,c[W>>2]|0,c[y>>2]|0)|0;if((c[W>>2]|0)!=(A|0)){i=f+8|0;f=c[i>>2]|0;d=f+-16|0;f=f+-32|0;do{c[X>>2]=c[f>>2];c[X+4>>2]=c[f+4>>2];c[X+8>>2]=c[f+8>>2];c[X+12>>2]=c[f+12>>2];c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];c[d>>2]=c[X>>2];c[d+4>>2]=c[X+4>>2];c[d+8>>2]=c[X+8>>2];c[d+12>>2]=c[X+12>>2];f=f+16|0;d=d+-16|0}while(f>>>0<d>>>0);c[i>>2]=(c[i>>2]|0)+-16}c[W>>2]=e;c[w>>2]=k;d=c[y>>2]|0}else e=c[W>>2]|0;PQ(e+d|0,o|0,m|0)|0;c[y>>2]=(c[y>>2]|0)+m;d=s;e=(c[H>>2]|0)+t|0;break}case 5:{n=Tv(b,s,I)|0;if(!n)Yx(b,s,287721);d=WO(n)|0;if((d|0)!=(c[I>>2]|0)){Vx(b,s,284489)|0;d=c[I>>2]|0}i=c[v>>2]|0;f=c[w>>2]|0;e=c[y>>2]|0;if((f-e|0)>>>0<d>>>0){m=f<<1;m=(m-e|0)>>>0<d>>>0?e+d|0:m;if(m>>>0<e>>>0|(m-e|0)>>>0<d>>>0)Wx(i,282347,P);f=gw(i,m)|0;PQ(f|0,c[W>>2]|0,c[y>>2]|0)|0;if((c[W>>2]|0)!=(A|0)){k=i+8|0;i=c[k>>2]|0;e=i+-16|0;i=i+-32|0;do{c[X>>2]=c[i>>2];c[X+4>>2]=c[i+4>>2];c[X+8>>2]=c[i+8>>2];c[X+12>>2]=c[i+12>>2];c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];c[i+8>>2]=c[e+8>>2];c[i+12>>2]=c[e+12>>2];c[e>>2]=c[X>>2];c[e+4>>2]=c[X+4>>2];c[e+8>>2]=c[X+8>>2];c[e+12>>2]=c[X+12>>2];i=i+16|0;e=e+-16|0}while(i>>>0<e>>>0);c[k>>2]=(c[k>>2]|0)+-16}c[W>>2]=f;c[w>>2]=m;e=c[y>>2]|0}else f=c[W>>2]|0;PQ(f+e|0,n|0,d|0)|0;d=(c[y>>2]|0)+d|0;c[y>>2]=d;e=c[w>>2]|0;if(d>>>0>=e>>>0?(C=c[v>>2]|0,(e|0)==(d|0)):0){k=d<<1;k=(k|0)==(d|0)?d+1|0:k;if(k>>>0<d>>>0)Wx(C,282347,Q);f=gw(C,k)|0;PQ(f|0,c[W>>2]|0,c[y>>2]|0)|0;if((c[W>>2]|0)!=(A|0)){i=C+8|0;e=c[i>>2]|0;d=e+-16|0;e=e+-32|0;do{c[X>>2]=c[e>>2];c[X+4>>2]=c[e+4>>2];c[X+8>>2]=c[e+8>>2];c[X+12>>2]=c[e+12>>2];c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];c[d>>2]=c[X>>2];c[d+4>>2]=c[X+4>>2];c[d+8>>2]=c[X+8>>2];c[d+12>>2]=c[X+12>>2];e=e+16|0;d=d+-16|0}while(e>>>0<d>>>0);c[i>>2]=(c[i>>2]|0)+-16}c[W>>2]=f;c[w>>2]=k;d=c[y>>2]|0}c[y>>2]=d+1;a[(c[W>>2]|0)+d>>0]=0;d=s;e=t+1+(c[I>>2]|0)|0;break}case 6:{d=c[y>>2]|0;e=c[w>>2]|0;if(d>>>0>=e>>>0?(D=c[v>>2]|0,(e|0)==(d|0)):0){k=d<<1;k=(k|0)==(d|0)?d+1|0:k;if(k>>>0<d>>>0)Wx(D,282347,R);f=gw(D,k)|0;PQ(f|0,c[W>>2]|0,c[y>>2]|0)|0;if((c[W>>2]|0)!=(A|0)){i=D+8|0;e=c[i>>2]|0;d=e+-16|0;e=e+-32|0;do{c[X>>2]=c[e>>2];c[X+4>>2]=c[e+4>>2];c[X+8>>2]=c[e+8>>2];c[X+12>>2]=c[e+12>>2];c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];c[d>>2]=c[X>>2];c[d+4>>2]=c[X+4>>2];c[d+8>>2]=c[X+8>>2];c[d+12>>2]=c[X+12>>2];e=e+16|0;d=d+-16|0}while(e>>>0<d>>>0);c[i>>2]=(c[i>>2]|0)+-16}c[W>>2]=f;c[w>>2]=k;d=c[y>>2]|0}c[y>>2]=d+1;a[(c[W>>2]|0)+d>>0]=0;u=156;break}case 8:case 7:{u=156;break}default:{d=s;e=t}}if((u|0)==156){u=0;d=q;e=t}if(!(a[c[E>>2]>>0]|0))break;else q=d}b=c[v>>2]|0;e=c[W>>2]|0;d=c[y>>2]|0}if((c[(c[b+12>>2]|0)+12>>2]|0)>0)Sw(b);V=xx(b,e,d)|0;e=b+8|0;d=c[e>>2]|0;c[d>>2]=V;c[d+8>>2]=(a[V+4>>0]|64)&255;d=c[e>>2]|0;c[e>>2]=d+16;if((c[W>>2]|0)==(A|0)){l=Y;return 1}b=d;d=d+-16|0;do{c[X>>2]=c[d>>2];c[X+4>>2]=c[d+4>>2];c[X+8>>2]=c[d+8>>2];c[X+12>>2]=c[d+12>>2];c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];c[b>>2]=c[X>>2];c[b+4>>2]=c[X+4>>2];c[b+8>>2]=c[X+8>>2];c[b+12>>2]=c[X+12>>2];d=d+16|0;b=b+-16|0}while(d>>>0<b>>>0);c[e>>2]=(c[e>>2]|0)+-16;l=Y;return 1}function lA(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;k=o+12|0;j=o+8|0;n=o+4|0;m=o;g=b+16|0;e=c[c[g>>2]>>2]|0;f=e+16|0;i=b+8|0;d=c[i>>2]|0;f=f>>>0<d>>>0?f:316344;switch(c[f+8>>2]&15){case 4:{d=f;h=5;break}case 3:{if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);e=c[c[g>>2]>>2]|0;d=c[i>>2]|0}h=e+16|0;d=h>>>0<d>>>0?h:316344;Xw(b,d);h=5;break}default:{Yx(b,1,287721);d=0}}if((h|0)==5)d=(c[d>>2]|0)+16|0;c[j>>2]=d;c[k>>2]=b;c[k+4>>2]=1;c[k+8>>2]=1;if(!(a[d>>0]|0)){b=0;k=0;n=c[i>>2]|0;m=n;j=m;c[j>>2]=b;m=m+4|0;c[m>>2]=k;m=n+8|0;c[m>>2]=19;n=n+16|0;c[i>>2]=n;l=o;return 1}else f=0;do{d=nA(k,f,j,n,m)|0;e=(c[n>>2]|0)+(c[m>>2]|0)|0;c[n>>2]=e;if(f>>>0>(2147483647-e|0)>>>0)Vx(b,1,284353)|0;f=e+f|0;if((d&-2|0)==4)Vx(b,1,284377)|0}while((a[c[j>>2]>>0]|0)!=0);b=f;k=0;n=c[i>>2]|0;m=n;j=m;c[j>>2]=b;m=m+4|0;c[m>>2]=k;m=n+8|0;c[m>>2]=19;n=n+16|0;c[i>>2]=n;l=o;return 1}function mA(b){b=b|0;var e=0,f=0,i=0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;J=l;l=l+80|0;H=J+40|0;w=J;E=J+56|0;D=J+52|0;G=J+48|0;F=J+44|0;x=b+16|0;f=c[c[x>>2]>>2]|0;i=f+16|0;I=b+8|0;e=c[I>>2]|0;i=i>>>0<e>>>0?i:316344;switch(c[i+8>>2]&15){case 4:{e=i;v=5;break}case 3:{if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);f=c[c[x>>2]>>2]|0;e=c[I>>2]|0}v=f+16|0;e=v>>>0<e>>>0?v:316344;Xw(b,e);v=5;break}default:{Yx(b,1,287721);k=0}}if((v|0)==5)k=(c[e>>2]|0)+16|0;c[D>>2]=k;f=c[c[x>>2]>>2]|0;i=f+32|0;e=c[I>>2]|0;i=i>>>0<e>>>0?i:316344;switch(c[i+8>>2]&15){case 4:{e=i;v=11;break}case 3:{if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);f=c[c[x>>2]>>2]|0;e=c[I>>2]|0}v=f+32|0;e=v>>>0<e>>>0?v:316344;Xw(b,e);v=11;break}default:{Yx(b,2,287721);u=0;t=0}}if((v|0)==11){e=c[e>>2]|0;if((a[e+4>>0]|0)==4)f=d[e+7>>0]|0;else f=c[e+12>>2]|0;u=e+16|0;t=f}e=$x(b,3,1,0)|0;f=z;if(!((f|0)>-1|(f|0)==-1&e>>>0>4294967295))if(t>>>0<(0-e|0)>>>0)e=0;else{e=yQ(e|0,f|0,1,0)|0;e=yQ(e|0,z|0,t|0,0)|0}e=e+-1|0;if(e>>>0>t>>>0)Vx(b,3,284059)|0;c[E>>2]=b;s=E+4|0;c[s>>2]=1;c[E+8>>2]=1;if(!(a[k>>0]|0)){H=0;D=e;D=D+1|0;G=c[I>>2]|0;F=G;E=F;c[E>>2]=D;F=F+4|0;c[F>>2]=0;F=G+8|0;c[F>>2]=19;G=G+16|0;c[I>>2]=G;I=H+1|0;l=J;return I|0}p=b+24|0;q=b+12|0;r=b+28|0;n=0;while(1){m=nA(E,e,D,G,F)|0;i=c[F>>2]|0;k=c[G>>2]|0;o=i+e|0;if((k+i|0)>>>0>~e>>>0|(o+k|0)>>>0>t>>>0)Vx(b,2,284090)|0;c[w>>2]=22;e=c[x>>2]|0;f=c[I>>2]|0;i=f;do if(((c[p>>2]|0)-i|0)>352){B=f;C=22;v=29}else{if(((i-(c[r>>2]|0)>>4)+5|0)<=999978?(rw(b,166,w)|0)==0:0){B=c[I>>2]|0;C=c[w>>2]|0;v=29;break}c[H>>2]=284112;Wx(b,282290,H)}while(0);if((v|0)==29?(v=0,y=e+4|0,A=B+(C<<4)|0,(c[y>>2]|0)>>>0<A>>>0):0)c[y>>2]=A;f=n+1|0;switch(m|0){case 1:case 0:{m=oA(b,u+o|0,c[s>>2]|0,k,(m|0)==0&1)|0;e=c[I>>2]|0;n=e;c[n>>2]=m;c[n+4>>2]=z;c[e+8>>2]=19;c[I>>2]=e+16;e=o;break}case 2:{e=u+o|0;i=(k|0)==0;if((c[s>>2]|0)==1){if(!i){i=w;while(1){k=k+-1|0;a[i>>0]=a[e>>0]|0;if(!k)break;else{e=e+1|0;i=i+1|0}}}}else if(!i){i=w+(k+-1)|0;while(1){k=k+-1|0;a[i>>0]=a[e>>0]|0;if(!k)break;else{i=i+-1|0;e=e+1|0}}}e=c[G>>2]|0;if((e|0)==4)j=+g[w>>2];else j=+h[w>>3];k=c[I>>2]|0;h[k>>3]=j;c[k+8>>2]=3;c[I>>2]=k+16;k=e;e=o;break}case 3:{if((c[(c[q>>2]|0)+12>>2]|0)>0)Sw(b);n=xx(b,u+o|0,k)|0;e=c[I>>2]|0;c[e>>2]=n;c[e+8>>2]=(a[n+4>>0]|64)&255;c[I>>2]=(c[I>>2]|0)+16;e=o;break}case 4:{i=oA(b,u+o|0,c[s>>2]|0,k,0)|0;e=i+o|0;if((e+k|0)>>>0>t>>>0)Vx(b,2,284090)|0;if((c[(c[q>>2]|0)+12>>2]|0)>0)Sw(b);n=xx(b,u+(k+o)|0,i)|0;o=c[I>>2]|0;c[o>>2]=n;c[o+8>>2]=(a[n+4>>0]|64)&255;c[I>>2]=(c[I>>2]|0)+16;break}case 5:{e=u+o|0;i=WO(e)|0;if((c[(c[q>>2]|0)+12>>2]|0)>0)Sw(b);n=xx(b,e,i)|0;e=c[I>>2]|0;c[e>>2]=n;c[e+8>>2]=(a[n+4>>0]|64)&255;c[I>>2]=(c[I>>2]|0)+16;e=o+1+i|0;break}case 8:case 6:case 7:{f=n;e=o;break}default:e=o}e=k+e|0;if(!(a[c[D>>2]>>0]|0))break;else n=f}E=e+1|0;H=c[I>>2]|0;G=H;F=G;c[F>>2]=E;G=G+4|0;c[G>>2]=0;G=H+8|0;c[G>>2]=19;H=H+16|0;c[I>>2]=H;I=f+1|0;l=J;return I|0}function nA(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0;k=l;l=l+16|0;i=k;j=pA(b,e,f)|0;h=c[f>>2]|0;c[i>>2]=h;do if((j|0)==7){if(a[c[e>>2]>>0]|0){e=(pA(b,e,i)|0)==3;h=c[i>>2]|0;if(!(e|(h|0)==0))break}Vx(c[b>>2]|0,1,284175)|0}while(0);if((j|0)==3|(h|0)<2){d=0;c[g>>2]=d;l=k;return j|0}f=c[b+8>>2]|0;if((h|0)>(f|0)){c[i>>2]=f;h=f}f=h+-1|0;if(f&h|0)Vx(c[b>>2]|0,1,284210)|0;d=h-(f&d)&f;c[g>>2]=d;l=k;return j|0}function oA(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;p=q+8|0;o=q;k=(f|0)>8;i=k?8:f;j=i+-1|0;if((f|0)>0){m=(e|0)==0;n=f+-1|0;if(m){e=0;h=0;while(1){e=KQ(e|0,h|0,8)|0;h=z;e=d[b+(n-j)>>0]|0|e;if((j|0)>0)j=j+-1|0;else break}}else{e=0;h=0;while(1){e=KQ(e|0,h|0,8)|0;h=z;e=d[b+j>>0]|0|e;if((j|0)>0)j=j+-1|0;else break}}if((f|0)>=8){if(!k){b=h;f=e;z=b;l=q;return f|0}j=(g|0)==0|((h|0)>-1|(h|0)==-1&e>>>0>4294967295)?0:255;if(m){do{if((d[b+(n-i)>>0]|0|0)!=(j|0)){c[o>>2]=f;Wx(a,284129,o)}i=i+1|0}while((i|0)<(f|0));z=h;l=q;return e|0}else{do{if((d[b+i>>0]|0|0)!=(j|0)){c[p>>2]=f;Wx(a,284129,p)}i=i+1|0}while((i|0)<(f|0));z=h;l=q;return e|0}}}else{e=0;h=0}if(!g){b=h;f=e;z=b;l=q;return f|0}b=KQ(1,0,(f<<3)+-1|0)|0;f=z;f=zQ(e^b|0,h^f|0,b|0,f|0)|0;b=z;z=b;l=q;return f|0}function pA(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;h=o+40|0;k=o+32|0;j=o+24|0;n=o+16|0;m=o+8|0;i=o;f=c[d>>2]|0;g=f+1|0;c[d>>2]=g;f=a[f>>0]|0;c[e>>2]=0;do switch(f|0){case 98:{c[e>>2]=1;e=0;l=o;return e|0}case 66:{c[e>>2]=1;e=1;l=o;return e|0}case 104:{c[e>>2]=2;e=0;l=o;return e|0}case 72:{c[e>>2]=2;e=1;l=o;return e|0}case 108:{c[e>>2]=4;e=0;l=o;return e|0}case 76:{c[e>>2]=4;e=1;l=o;return e|0}case 106:{c[e>>2]=8;e=0;l=o;return e|0}case 74:{c[e>>2]=8;e=1;l=o;return e|0}case 84:{c[e>>2]=4;e=1;l=o;return e|0}case 102:{c[e>>2]=4;e=2;l=o;return e|0}case 100:{c[e>>2]=8;e=2;l=o;return e|0}case 110:{c[e>>2]=8;e=2;l=o;return e|0}case 105:{if(((a[g>>0]|0)+-48|0)>>>0<10){f=0;do{n=g;g=g+1|0;c[d>>2]=g;f=(f*10|0)+-48+(a[n>>0]|0)|0}while((f|0)<214748364&((a[g>>0]|0)+-48|0)>>>0<10);if((f+-1|0)>>>0>15){b=c[b>>2]|0;c[i>>2]=f;c[i+4>>2]=16;Wx(b,284251,i)}}else f=4;c[e>>2]=f;e=0;l=o;return e|0}case 73:{if(((a[g>>0]|0)+-48|0)>>>0<10){f=0;do{n=g;g=g+1|0;c[d>>2]=g;f=(f*10|0)+-48+(a[n>>0]|0)|0}while((f|0)<214748364&((a[g>>0]|0)+-48|0)>>>0<10);if((f+-1|0)>>>0>15){b=c[b>>2]|0;c[m>>2]=f;c[m+4>>2]=16;Wx(b,284251,m)}}else f=4;c[e>>2]=f;e=1;l=o;return e|0}case 115:{if(((a[g>>0]|0)+-48|0)>>>0<10){f=0;do{m=g;g=g+1|0;c[d>>2]=g;f=(f*10|0)+-48+(a[m>>0]|0)|0}while((f|0)<214748364&((a[g>>0]|0)+-48|0)>>>0<10);if((f+-1|0)>>>0>15){b=c[b>>2]|0;c[n>>2]=f;c[n+4>>2]=16;Wx(b,284251,n)}}else f=4;c[e>>2]=f;e=4;l=o;return e|0}case 99:{if(((a[g>>0]|0)+-48|0)>>>0<10){f=0;do{n=g;g=g+1|0;c[d>>2]=g;f=(f*10|0)+-48+(a[n>>0]|0)|0}while((f|0)<214748364&((a[g>>0]|0)+-48|0)>>>0<10);c[e>>2]=f;if((f|0)!=-1){e=3;l=o;return e|0}}else c[e>>2]=-1;Wx(c[b>>2]|0,284291,j);e=3;l=o;return e|0}case 120:{c[e>>2]=1;e=6;l=o;return e|0}case 88:{e=7;l=o;return e|0}case 32:break;case 60:{c[b+4>>2]=1;break}case 62:{c[b+4>>2]=0;break}case 61:{c[b+4>>2]=1;break}case 33:{if(((a[g>>0]|0)+-48|0)>>>0<10){f=0;do{e=g;g=g+1|0;c[d>>2]=g;f=(f*10|0)+-48+(a[e>>0]|0)|0}while((f|0)<214748364&((a[g>>0]|0)+-48|0)>>>0<10);if((f+-1|0)>>>0>15){e=c[b>>2]|0;c[k>>2]=f;c[k+4>>2]=16;Wx(e,284251,k)}}else f=8;c[b+8>>2]=f;break}case 122:{e=5;l=o;return e|0}default:{e=c[b>>2]|0;c[h>>2]=f;Wx(e,284326,h)}}while(0);e=8;l=o;return e|0}function qA(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=l;l=l+304|0;B=G+8|0;A=G;D=G+296|0;E=G+16|0;m=b+16|0;g=c[c[m>>2]>>2]|0;h=g+16|0;C=b+8|0;f=c[C>>2]|0;h=h>>>0<f>>>0?h:316344;switch(c[h+8>>2]&15){case 4:{f=h;F=5;break}case 3:{if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);g=c[c[m>>2]>>2]|0;f=c[C>>2]|0}F=g+16|0;f=F>>>0<f>>>0?F:316344;Xw(b,f);F=5;break}default:{Yx(b,1,287721);q=0;n=0}}if((F|0)==5){f=c[f>>2]|0;if((a[f+4>>0]|0)==4)g=d[f+7>>0]|0;else g=c[f+12>>2]|0;q=f+16|0;n=g}g=c[c[m>>2]>>2]|0;h=g+32|0;f=c[C>>2]|0;h=h>>>0<f>>>0?h:316344;switch(c[h+8>>2]&15){case 4:{f=h;F=14;break}case 3:{if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);g=c[c[m>>2]>>2]|0;f=c[C>>2]|0}F=g+32|0;f=F>>>0<f>>>0?F:316344;Xw(b,f);F=14;break}default:{Yx(b,2,287721);j=0;p=0}}if((F|0)==14){f=c[f>>2]|0;if((a[f+4>>0]|0)==4)g=d[f+7>>0]|0;else g=c[f+12>>2]|0;j=f+16|0;p=g}g=$x(b,3,1,0)|0;f=z;if(!((f|0)>-1|(f|0)==-1&g>>>0>4294967295))if(n>>>0<(0-g|0)>>>0)i=1;else{g=yQ(g|0,f|0,1,0)|0;g=yQ(g|0,z|0,n|0,0)|0;f=z;F=22}else F=22;if((F|0)==22)if(!((f|0)<0|(f|0)==0&g>>>0<1)){o=yQ(n|0,0,1,0)|0;k=z;if((f|0)>(k|0)|(f|0)==(k|0)&g>>>0>o>>>0){F=c[C>>2]|0;c[F+8>>2]=0;c[C>>2]=F+16;F=1;l=G;return F|0}else i=g}else i=1;k=(e|0)!=0;a:do if(k){g=(c[c[m>>2]>>2]|0)+64|0;f=c[C>>2]|0;g=g>>>0<f>>>0?g:316344;switch(c[g+8>>2]|0){case 0:{h=0;F=28;break}case 1:{if(!(c[g>>2]|0)){h=0;F=28}break}default:{}}if((F|0)==28)while(1){F=0;g=j+h|0;if(vQ(g,284538)|0){F=39;break a}h=h+1+(WO(g)|0)|0;if(h>>>0>p>>>0)break;else F=28}g=q+(i+-1)|0;h=n-i+1|0;b:do if(!p){if(!g)break a}else{if(p>>>0>h>>>0)break a;m=p+-1|0;if((h|0)==(m|0))break a;n=a[j>>0]|0;k=j+1|0;e=h-m|0;while(1){h=ZN(g,n,e)|0;if(!h)break a;i=g;g=h+1|0;if(!(KN(g,k,m)|0)){g=h;break b}j=g;h=i+e|0;if((h|0)==(j|0))break a;else e=h-j|0}}while(0);E=g-q|0;D=E+1|0;F=f;c[F>>2]=D;c[F+4>>2]=((D|0)<0)<<31>>31;c[f+8>>2]=19;F=f+16|0;c[F>>2]=E+p;c[F+4>>2]=0;c[f+24>>2]=19;c[C>>2]=f+32;F=2;l=G;return F|0}else F=39;while(0);do if((F|0)==39){f=q+(i+-1)|0;m=(a[j>>0]|0)==94;e=m?j+1|0:j;o=E+16|0;c[o>>2]=b;c[E>>2]=200;c[E+4>>2]=q;i=E+8|0;c[i>>2]=q+n;c[E+12>>2]=e+(p+(m<<31>>31));j=E+20|0;c[j>>2]=0;g=rA(E,f,e)|0;h=(g|0)==0;c:do if(m)if(h)F=67;else{n=g;m=f}else if(h)while(1){if(f>>>0>=(c[i>>2]|0)>>>0){F=67;break c}f=f+1|0;c[j>>2]=0;g=rA(E,f,e)|0;if(g){n=g;m=f;break}}else{n=g;m=f}while(0);if((F|0)==67){f=c[C>>2]|0;break}if(!k){f=c[j>>2]|0;f=(m|0)!=0&(f|0)==0?1:f;g=c[o>>2]|0;h=f+20|0;c[D>>2]=h;i=c[g+16>>2]|0;j=g+8|0;e=c[j>>2]|0;k=e;do if(((c[g+24>>2]|0)-k>>4|0)>(h|0)){x=e;y=h;F=58}else{if(((k-(c[g+28>>2]|0)>>4)+5|0)<=(999980-f|0)?(rw(g,166,D)|0)==0:0){x=c[j>>2]|0;y=c[D>>2]|0;F=58;break}c[B>>2]=287951;Wx(g,282290,B)}while(0);if((F|0)==58?(v=i+4|0,w=x+(y<<4)|0,(c[v>>2]|0)>>>0<w>>>0):0)c[v>>2]=w;if((f|0)>0){g=0;do{sA(E,g,m,n);g=g+1|0}while((g|0)!=(f|0))}}else{g=q;h=1-g+m|0;k=c[C>>2]|0;f=k;c[f>>2]=h;c[f+4>>2]=((h|0)<0)<<31>>31;c[k+8>>2]=19;g=n-g|0;f=k+16|0;c[f>>2]=g;c[f+4>>2]=((g|0)<0)<<31>>31;c[k+24>>2]=19;c[C>>2]=k+32;k=c[j>>2]|0;f=c[o>>2]|0;g=k+20|0;c[D>>2]=g;h=c[f+16>>2]|0;i=f+8|0;j=c[i>>2]|0;e=j;do if(((c[f+24>>2]|0)-e>>4|0)>(g|0)){t=j;u=g;F=47}else{if(((e-(c[f+28>>2]|0)>>4)+5|0)<=(999980-k|0)?(rw(f,166,D)|0)==0:0){t=c[i>>2]|0;u=c[D>>2]|0;F=47;break}c[A>>2]=287951;Wx(f,282290,A)}while(0);if((F|0)==47?(r=h+4|0,s=t+(u<<4)|0,(c[r>>2]|0)>>>0<s>>>0):0)c[r>>2]=s;if((k|0)>0){f=0;do{sA(E,f,0,0);f=f+1|0}while((f|0)!=(k|0))}f=k+2|0}F=f;l=G;return F|0}while(0);c[f+8>>2]=0;c[C>>2]=f+16;F=1;l=G;return F|0}function rA(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0;X=l;l=l+96|0;L=X+80|0;K=X+72|0;J=X+64|0;I=X+56|0;H=X+48|0;N=X+40|0;M=X+32|0;R=X+24|0;P=X+16|0;O=X+8|0;W=c[b>>2]|0;c[b>>2]=W+-1;if(!W)Wx(c[b+16>>2]|0,284595,X);F=b+12|0;g=c[F>>2]|0;a:do if((g|0)!=(f|0)){W=b+8|0;T=b+16|0;G=b+4|0;S=b+20|0;A=b+24+(0<<3)+4|0;b:while(1){y=e+1|0;x=e+-1|0;z=f;c:while(1){f=a[z>>0]|0;d:do switch(f<<24>>24|0){case 40:{Q=7;break b}case 41:{Q=16;break b}case 36:{f=z+1|0;if((f|0)==(g|0)){Q=23;break b}else{v=f;w=f;Q=89}break}case 37:{f=z+1|0;i=a[f>>0]|0;switch(i<<24>>24|0){case 98:{Q=25;break c}case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:case 49:case 48:{Q=70;break c}case 102:break;default:{if((f|0)==(g|0))Wx(c[T>>2]|0,284721,K);v=z+2|0;w=f;Q=89;break d}}h=z+2|0;if((a[h>>0]|0)==91)f=91;else{Wx(c[T>>2]|0,284686,N);f=a[h>>0]|0}i=z+3|0;switch(f<<24>>24|0){case 37:{if((i|0)==(c[F>>2]|0))Wx(c[T>>2]|0,284721,H);v=z+4|0;break}case 91:{f=(a[i>>0]|0)==94?z+4|0:i;do{if((f|0)==(c[F>>2]|0))Wx(c[T>>2]|0,284756,I);g=f+1|0;if((a[f>>0]|0)==37)f=g>>>0<(c[F>>2]|0)>>>0?f+2|0:g;else f=g}while((a[f>>0]|0)!=93);v=f+1|0;break}default:v=i}if((e|0)==(c[G>>2]|0))g=0;else g=a[x>>0]|0;q=g&255;u=v+-1|0;t=(a[i>>0]|0)==94;r=t?i:h;t=t&1;f=t^1;n=r+1|0;s=n>>>0<u>>>0;e:do if(s){o=g&255;g=r;p=n;while(1){h=a[p>>0]|0;i=g+2|0;j=a[i>>0]|0;do if(h<<24>>24==37)if(!(tA(q,j&255)|0))g=i;else{g=f;break e}else{if(j<<24>>24==45?(B=g+3|0,B>>>0<u>>>0):0){if((h&255)>>>0>q>>>0){g=B;break}if((d[B>>0]|0)>>>0<q>>>0){g=B;break}else{g=f;break e}}if(h<<24>>24==o<<24>>24){g=f;break e}else g=p}while(0);p=g+1|0;if(p>>>0>=u>>>0){g=t;break}}}else g=t;while(0);if(g|0){e=0;break a}o=a[e>>0]|0;p=o&255;f:do if(s){g=r;while(1){h=a[n>>0]|0;i=g+2|0;j=a[i>>0]|0;do if(h<<24>>24==37)if(!(tA(p,j&255)|0))g=i;else break f;else{if(j<<24>>24==45?(C=g+3|0,C>>>0<u>>>0):0){if((h&255)>(o&255)){g=C;break}if((d[C>>0]|0)<(o&255)){g=C;break}else break f}if(h<<24>>24==o<<24>>24)break f;else g=n}while(0);n=g+1|0;if(n>>>0>=u>>>0){f=t;break}}}else f=t;while(0);if(!f){e=0;break a}else f=v;break}default:{h=z+1|0;if(f<<24>>24==91){f=(a[h>>0]|0)==94?z+2|0:h;while(1){if((f|0)==(g|0))Wx(c[T>>2]|0,284756,L);g=f+1|0;if((a[f>>0]|0)==37)f=g>>>0<(c[F>>2]|0)>>>0?f+2|0:g;else f=g;if((a[f>>0]|0)==93)break;g=c[F>>2]|0}v=f+1|0;w=h;Q=89}else{v=h;w=h;Q=89}}}while(0);g:do if((Q|0)==89){Q=0;u=c[W>>2]|0;do if(u>>>0>e>>>0){q=a[e>>0]|0;r=q&255;s=a[z>>0]|0;t=s<<24>>24;h:do switch(t|0){case 46:{f=a[v>>0]|0;break}case 37:{g=tA(r,d[w>>0]|0)|0;Q=104;break}case 91:{o=v+-1|0;p=(a[w>>0]|0)==94;f=p?w:z;p=p&1;g=p^1;h=f+1|0;if(h>>>0<o>>>0)while(1){i=a[h>>0]|0;j=f+2|0;n=a[j>>0]|0;do if(i<<24>>24==37)if(!(tA(r,n&255)|0))f=j;else{Q=104;break h}else{if(n<<24>>24==45?(E=f+3|0,E>>>0<o>>>0):0){if((i&255)>(q&255)){f=E;break}if((d[E>>0]|0)<(q&255)){f=E;break}else{Q=104;break h}}if(i<<24>>24==q<<24>>24){Q=104;break h}else f=h}while(0);h=f+1|0;if(h>>>0>=o>>>0){g=p;Q=104;break}}else{g=p;Q=104}break}default:{g=s<<24>>24==q<<24>>24&1;Q=104}}while(0);if((Q|0)==104){Q=0;f=a[v>>0]|0;if(!g)break}switch(f<<24>>24|0){case 43:{e=y;break b}case 42:{Q=112;break b}case 45:{Q=109;break b}case 63:break;default:{e=y;f=v;break c}}f=v+1|0;g=rA(b,y,f)|0;if(!g)break g;else{e=g;break a}}else f=a[v>>0]|0;while(0);switch(f<<24>>24){case 45:case 63:case 42:break;default:{e=0;break a}}f=v+1|0}while(0);g=c[F>>2]|0;if((f|0)==(g|0))break a;else z=f}if((Q|0)==25){Q=0;f=z+2|0;if((g+-1|0)>>>0<=f>>>0)Wx(c[T>>2]|0,284639,M);n=a[e>>0]|0;if(n<<24>>24!=(a[f>>0]|0)){e=0;break a}i=a[z+3>>0]|0;j=c[W>>2]|0;if(y>>>0<j>>>0){h=y;f=1}else{e=0;break a}while(1){g=a[h>>0]|0;if(g<<24>>24==i<<24>>24){f=f+-1|0;if(!f)break}else f=(g<<24>>24==n<<24>>24&1)+f|0;e=h+1|0;if(e>>>0<j>>>0){y=h;h=e;e=y}else{e=0;break a}}e=e+2|0;f=z+4|0}else if((Q|0)==70){Q=0;f=i&255;h=f+-49|0;if(((i&255)>=49?(h|0)<(c[S>>2]|0):0)?(D=c[b+24+(h<<3)+4>>2]|0,(D|0)!=-1):0)f=D;else{y=c[T>>2]|0;c[J>>2]=f+-48;Wx(y,284549,J);f=c[A>>2]|0}if(((c[W>>2]|0)-e|0)>>>0<f>>>0){e=0;break a}g=e+f|0;if((g|0)==0|(KN(c[b+24+(h<<3)>>2]|0,e,f)|0)!=0){e=0;break a}e=g;f=z+2|0}g=c[F>>2]|0;if((f|0)==(g|0))break a}if((Q|0)==7){g=z+1|0;if((a[g>>0]|0)==41){f=c[S>>2]|0;if((f|0)>31)Wx(c[T>>2]|0,287951,O);c[b+24+(f<<3)>>2]=e;c[b+24+(f<<3)+4>>2]=-2;c[S>>2]=f+1;e=rA(b,e,z+2|0)|0;if(e|0)break;c[S>>2]=(c[S>>2]|0)+-1;e=0;break}else{f=c[S>>2]|0;if((f|0)>31)Wx(c[T>>2]|0,287951,P);c[b+24+(f<<3)>>2]=e;c[b+24+(f<<3)+4>>2]=-1;c[S>>2]=f+1;e=rA(b,e,g)|0;if(e|0)break;c[S>>2]=(c[S>>2]|0)+-1;e=0;break}}else if((Q|0)==16){h=z+1|0;g=c[S>>2]|0;do{W=g;g=g+-1|0;if((W|0)<=0){Q=19;break}f=b+24+(g<<3)+4|0}while((c[f>>2]|0)!=-1);if((Q|0)==19){Wx(c[T>>2]|0,284615,R);f=b+24+(g<<3)+4|0}c[f>>2]=e-(c[b+24+(g<<3)>>2]|0);e=rA(b,e,h)|0;if(e|0)break;c[f>>2]=-1;e=0;break}else if((Q|0)==23){e=(e|0)==(c[W>>2]|0)?e:0;break}else if((Q|0)==109){q=v+1|0;f=rA(b,e,q)|0;if(f|0){e=f;break}p=v+-1|0;while(1){if((c[W>>2]|0)>>>0<=e>>>0){e=0;break a}n=a[e>>0]|0;o=n&255;f=a[z>>0]|0;i:do switch(f<<24>>24|0){case 46:break;case 37:{k=tA(o,d[w>>0]|0)|0;Q=146;break}case 91:{m=(a[w>>0]|0)==94;f=m?w:z;m=m&1;k=m^1;g=f+1|0;if(g>>>0<p>>>0)while(1){h=a[g>>0]|0;i=f+2|0;j=a[i>>0]|0;do if(h<<24>>24==37)if(!(tA(o,j&255)|0))f=i;else{Q=146;break i}else{if(j<<24>>24==45?(V=f+3|0,V>>>0<p>>>0):0){if((h&255)>(n&255)){f=V;break}if((d[V>>0]|0)<(n&255)){f=V;break}else{Q=146;break i}}if(h<<24>>24==n<<24>>24){Q=146;break i}else f=g}while(0);g=f+1|0;if(g>>>0>=p>>>0){k=m;Q=146;break}}else{k=m;Q=146}break}default:{k=f<<24>>24==n<<24>>24&1;Q=146}}while(0);if((Q|0)==146?(Q=0,(k|0)==0):0){e=0;break a}e=e+1|0;f=rA(b,e,q)|0;if(f|0){e=f;break a}}}if(u>>>0>e>>>0){q=v+-1|0;g=e;f=0;do{o=a[g>>0]|0;p=o&255;j:do switch(t|0){case 46:break;case 37:{m=tA(p,d[w>>0]|0)|0;Q=129;break}case 91:{n=(a[w>>0]|0)==94;g=n?w:z;n=n&1;m=n^1;h=g+1|0;if(h>>>0<q>>>0)while(1){i=a[h>>0]|0;j=g+2|0;k=a[j>>0]|0;do if(i<<24>>24==37)if(!(tA(p,k&255)|0))g=j;else{Q=129;break j}else{if(k<<24>>24==45?(U=g+3|0,U>>>0<q>>>0):0){if((i&255)>(o&255)){g=U;break}if((d[U>>0]|0)<(o&255)){g=U;break}else{Q=129;break j}}if(i<<24>>24==o<<24>>24){Q=129;break j}else g=h}while(0);h=g+1|0;if(h>>>0>=q>>>0){m=n;Q=129;break}}else{m=n;Q=129}break}default:{m=s<<24>>24==o<<24>>24&1;Q=129}}while(0);if((Q|0)==129?(Q=0,(m|0)==0):0)break;f=f+1|0;g=e+f|0}while(u>>>0>g>>>0);if((f|0)<=-1){e=0;break}}else f=0;h=v+1|0;while(1){g=rA(b,e+f|0,h)|0;if(g|0){e=g;break a}if((f|0)>0)f=f+-1|0;else{e=0;break}}}while(0);c[b>>2]=(c[b>>2]|0)+1;l=X;return e|0}function sA(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=l;l=l+16|0;g=i+8|0;h=i;if((c[b+20>>2]|0)<=(d|0)){g=c[b+16>>2]|0;if(d|0){c[h>>2]=d+1;Wx(g,284549,h);l=i;return}if((c[(c[g+12>>2]|0)+12>>2]|0)>0)Sw(g);h=xx(g,e,f-e|0)|0;b=g+8|0;d=c[b>>2]|0;c[d>>2]=h;c[d+8>>2]=(a[h+4>>0]|64)&255;c[b>>2]=(c[b>>2]|0)+16;l=i;return}e=c[b+24+(d<<3)+4>>2]|0;if((e|0)!=-1){f=c[b+16>>2]|0;g=c[b+24+(d<<3)>>2]|0;if((e|0)==-2){e=g+1-(c[b+4>>2]|0)|0;b=f+8|0;d=c[b>>2]|0;h=d;c[h>>2]=e;c[h+4>>2]=((e|0)<0)<<31>>31;c[d+8>>2]=19;c[b>>2]=d+16;l=i;return}}else{f=b+16|0;Wx(c[f>>2]|0,284576,g);f=c[f>>2]|0;g=c[b+24+(d<<3)>>2]|0}if((c[(c[f+12>>2]|0)+12>>2]|0)>0)Sw(f);h=xx(f,g,e)|0;b=f+8|0;d=c[b>>2]|0;c[d>>2]=h;c[d+8>>2]=(a[h+4>>0]|64)&255;c[b>>2]=(c[b>>2]|0)+16;l=i;return}function tA(a,b){a=a|0;b=b|0;do switch(rN(b)|0){case 97:{a=oO(a)|0;break}case 99:{a=pO(a)|0;break}case 100:{a=(a+-48|0)>>>0<10&1;break}case 103:{a=qO(a)|0;break}case 108:{a=CN(a)|0;break}case 112:{a=sO(a)|0;break}case 115:{a=xN(a)|0;break}case 117:{a=sN(a)|0;break}case 119:{a=nO(a)|0;break}case 120:{a=tO(a)|0;break}case 122:{a=(a|0)==0&1;break}default:{b=(b|0)==(a|0)&1;return b|0}}while(0);b=(CN(b)|0)==0;b=b?(a|0)==0&1:a;return b|0}function uA(b){b=b|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0.0;G=l;l=l+304|0;E=G+16|0;x=G;F=G+24|0;t=b+16|0;g=c[c[t>>2]>>2]|0;f=c[g+8>>2]|0;if((f|0)==22)e=316344;else{e=c[g>>2]|0;e=(a[e+6>>0]|0)==0?316344:e+16|0}switch(c[e+8>>2]&15){case 4:{s=9;break}case 3:{if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);e=c[c[t>>2]>>2]|0;f=c[e+8>>2]|0}else e=g;if((f|0)==22)e=316344;else{e=c[e>>2]|0;e=(a[e+6>>0]|0)==0?316344:e+16|0}Xw(b,e);s=9;break}default:{r=0;i=g;g=0}}if((s|0)==9){e=c[e>>2]|0;if((a[e+4>>0]|0)==4)g=d[e+7>>0]|0;else g=c[e+12>>2]|0;i=c[c[t>>2]>>2]|0;r=e+16|0;f=c[i+8>>2]|0}if((f|0)==22)e=316344;else{e=c[i>>2]|0;e=(d[e+6>>0]|0)<2?316344:e+32|0}switch(c[e+8>>2]&15){case 4:{s=21;break}case 3:{if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);e=c[c[t>>2]>>2]|0;f=c[e+8>>2]|0}else e=i;if((f|0)==22)e=316344;else{e=c[e>>2]|0;e=(d[e+6>>0]|0)<2?316344:e+32|0}Xw(b,e);s=21;break}default:{m=0;e=i;i=0}}if((s|0)==21){e=c[e>>2]|0;if((a[e+4>>0]|0)==4)i=d[e+7>>0]|0;else i=c[e+12>>2]|0;q=c[c[t>>2]>>2]|0;m=e+16|0;f=c[q+8>>2]|0;e=q}q=F+16|0;c[q>>2]=b;c[F>>2]=200;c[F+4>>2]=r;k=F+8|0;c[k>>2]=r+g;c[F+12>>2]=m+i;if((f|0)==22)f=316344;else{f=c[e>>2]|0;f=(d[f+6>>0]|0)<3?316344:f+48|0}e=c[f+8>>2]|0;do if((e|0)!=19){a:while(1){switch(e|0){case 3:{s=31;break a}case 19:{s=34;break a}default:{}}if((e&15|0)!=4){s=42;break}i=Ww((c[f>>2]|0)+16|0,x)|0;e=c[f>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((i|0)!=(e+1|0)){s=42;break}f=x;e=c[x+8>>2]|0}if((s|0)==31){H=+h[f>>3];n=+A(+H);if(!(H!=n)?n>=-9223372036854775808.0&n<9223372036854775808.0:0){e=~~n>>>0;s=41}else s=42}else if((s|0)==34){e=f;e=c[e>>2]|0;s=41}if((s|0)==41)break;else if((s|0)==42){e=0;break}}else e=c[f>>2]|0;while(0);if((e|0)>(g|0)){F=0;l=G;return F|0}j=F+20|0;p=r+e|0;while(1){c[j>>2]=0;o=rA(F,p,m)|0;if(o|0)break;e=p+1|0;if(e>>>0>(c[k>>2]|0)>>>0){e=0;s=65;break}else p=e}if((s|0)==65){l=G;return e|0}e=o-r|0;e=yQ(e|0,((e|0)<0)<<31>>31|0,(o|0)==(p|0)|0,0)|0;i=b+8|0;f=c[i>>2]|0;g=f;c[g>>2]=e;c[g+4>>2]=z;g=f+8|0;c[g>>2]=19;c[i>>2]=f+16;e=c[c[t>>2]>>2]|0;if((c[e+8>>2]|0)==22)e=316344;else{e=c[e>>2]|0;e=(d[e+6>>0]|0)<3?316344:e+48|0};c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];do if((c[g>>2]&64|0?(u=(c[c[c[t>>2]>>2]>>2]|0)+5|0,v=a[u>>0]|0,v&4):0)?(w=c[f>>2]|0,a[w+5>>0]&3):0){e=c[b+12>>2]|0;if((d[e+61>>0]|0)<2){Iw(e,w);break}else{a[u>>0]=a[e+60>>0]&3|v&-8;break}}while(0);c[i>>2]=(c[i>>2]|0)+-16;e=c[j>>2]|0;e=(p|0)!=0&(e|0)==0?1:e;f=c[q>>2]|0;g=e+20|0;c[x>>2]=g;i=c[f+16>>2]|0;j=f+8|0;k=c[j>>2]|0;m=k;do if(((c[f+24>>2]|0)-m>>4|0)>(g|0)){C=k;D=g;s=58}else{if(((m-(c[f+28>>2]|0)>>4)+5|0)<=(999980-e|0)?(rw(f,166,x)|0)==0:0){C=c[j>>2]|0;D=c[x>>2]|0;s=58;break}c[E>>2]=287951;Wx(f,282290,E)}while(0);if((s|0)==58?(y=i+4|0,B=C+(D<<4)|0,(c[y>>2]|0)>>>0<B>>>0):0)c[y>>2]=B;if((e|0)>0)f=0;else{F=e;l=G;return F|0}do{sA(F,f,p,o);f=f+1|0}while((f|0)!=(e|0));l=G;return e|0}function vA(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;PQ(ay(e,d)|0,b|0,d|0)|0;b=e+8|0;c[b>>2]=(c[b>>2]|0)+d;return 0}function wA(a){a=a|0;var b=0,d=0,e=0,f=0;d=l;l=l+16|0;b=d;if(a|0?(c[(c[a+12>>2]|0)+140>>2]|0)!=952:0)Wx(a,282533,b);if((c[(c[a+12>>2]|0)+12>>2]|0)>0)Sw(a);b=Dx(a)|0;e=a+8|0;f=c[e>>2]|0;c[f>>2]=b;c[f+8>>2]=69;c[e>>2]=(c[e>>2]|0)+16;Ax(a,b,0,7);jy(a,6128,0);l=d;return 1}function xA(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0;C=l;l=l+8272|0;y=C+40|0;w=C+32|0;v=C+16|0;B=C;j=C+8264|0;A=C+56|0;i=b+16|0;f=c[c[i>>2]>>2]|0;e=f+32|0;x=b+8|0;h=c[x>>2]|0;a:do if(!(e>>>0>=h>>>0|(e|0)==316344)?(g=c[f+40>>2]|0,(g&15|0)!=0):0){switch(g&15){case 4:break;case 3:{k=4;break}default:{Yx(b,2,287721);p=0;f=0;break a}}if((k|0)==4){if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);f=c[c[i>>2]>>2]|0;e=c[x>>2]|0}else e=h;u=f+32|0;e=u>>>0<e>>>0?u:316344;Xw(b,e)}e=c[e>>2]|0;if((a[e+4>>0]|0)==4)f=d[e+7>>0]|0;else f=c[e+12>>2]|0;p=e+16|0}else{p=335059;f=0}while(0);EA(b,j);g=$x(b,3,1,0)|0;h=z;u=c[c[i>>2]>>2]|0;t=u+64|0;if(!((t|0)==316344?1:t>>>0>=(c[x>>2]|0)>>>0)?(c[u+72>>2]&15|0)!=0:0){s=_x(b,4)|0;r=z}else{s=hy(b)|0;r=z}q=A+12|0;c[q>>2]=b;u=A+16|0;c[A>>2]=u;t=A+8|0;c[t>>2]=0;o=A+4|0;c[o>>2]=8192;if(!((h|0)<(r|0)|(h|0)==(r|0)&g>>>0<s>>>0))if((g|0)==(s|0)&(h|0)==(r|0)){e=c[j>>2]|0;k=32}else{f=u;e=0}else{e=c[j>>2]|0;n=g;m=h;do{jg[e&31](b,1,n,m)|0;g=c[x>>2]|0;h=c[g+-8>>2]&15;if((h+-3|0)>>>0>=2){c[v>>2]=c[5104+(((g+-16|0)==316344?0:h+1|0)<<2)>>2];k=v+8|0;c[k>>2]=n;c[k+4>>2]=m;Wx(b,285333,v)}by(A);i=c[q>>2]|0;h=c[o>>2]|0;g=c[t>>2]|0;if((h-g|0)>>>0<f>>>0){k=h<<1;k=(k-g|0)>>>0<f>>>0?g+f|0:k;if(k>>>0<g>>>0|(k-g|0)>>>0<f>>>0)Wx(i,282347,w);h=gw(i,k)|0;PQ(h|0,c[A>>2]|0,c[t>>2]|0)|0;if((c[A>>2]|0)!=(u|0)){j=i+8|0;i=c[j>>2]|0;g=i+-16|0;i=i+-32|0;do{c[B>>2]=c[i>>2];c[B+4>>2]=c[i+4>>2];c[B+8>>2]=c[i+8>>2];c[B+12>>2]=c[i+12>>2];c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];c[g>>2]=c[B>>2];c[g+4>>2]=c[B+4>>2];c[g+8>>2]=c[B+8>>2];c[g+12>>2]=c[B+12>>2];i=i+16|0;g=g+-16|0}while(i>>>0<g>>>0);c[j>>2]=(c[j>>2]|0)+-16}c[A>>2]=h;c[o>>2]=k;g=c[t>>2]|0}else h=c[A>>2]|0;PQ(h+g|0,p|0,f|0)|0;c[t>>2]=(c[t>>2]|0)+f;n=yQ(n|0,m|0,1,0)|0;m=z}while((m|0)<(r|0)|(m|0)==(r|0)&n>>>0<s>>>0);k=32}if((k|0)==32){jg[e&31](b,1,s,r)|0;e=c[x>>2]|0;f=c[e+-8>>2]&15;if((f+-3|0)>>>0>=2){c[y>>2]=c[5104+(((e+-16|0)==316344?0:f+1|0)<<2)>>2];x=y+8|0;c[x>>2]=s;c[x+4>>2]=r;Wx(b,285333,y)}by(A);b=c[q>>2]|0;f=c[A>>2]|0;e=c[t>>2]|0}if((c[(c[b+12>>2]|0)+12>>2]|0)>0)Sw(b);y=xx(b,f,e)|0;f=b+8|0;e=c[f>>2]|0;c[e>>2]=y;c[e+8>>2]=(a[y+4>>0]|64)&255;e=c[f>>2]|0;c[f>>2]=e+16;if((c[A>>2]|0)==(u|0)){l=C;return 1}b=e;e=e+-16|0;do{c[B>>2]=c[e>>2];c[B+4>>2]=c[e+4>>2];c[B+8>>2]=c[e+8>>2];c[B+12>>2]=c[e+12>>2];c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];c[b>>2]=c[B>>2];c[b+4>>2]=c[B+4>>2];c[b+8>>2]=c[B+8>>2];c[b+12>>2]=c[B+12>>2];e=e+16|0;b=b+-16|0}while(e>>>0<b>>>0);c[f>>2]=(c[f>>2]|0)+-16;l=C;return 1}function yA(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;j=k+8|0;EA(a,j);f=hy(a)|0;g=z;i=yQ(f|0,g|0,1,0)|0;e=z;switch((c[a+8>>2]|0)-((c[c[a+16>>2]>>2]|0)+16)>>4|0){case 2:{d=i;b=e;break}case 3:{h=2;break}default:{Wx(a,285295,k);l=k;return 0}}if((h|0)==2){d=_x(a,2)|0;b=z;if((b|0)<0|(b|0)==0&d>>>0<1|((b|0)>(e|0)|(b|0)==(e|0)&d>>>0>i>>>0))Vx(a,2,285243)|0;if(!((g|0)<(b|0)|(g|0)==(b|0)&f>>>0<d>>>0)){g=c[j>>2]|0;h=c[j+4>>2]|0;f=i;do{m=f;f=yQ(f|0,e|0,-1,-1)|0;i=e;e=z;jg[g&31](a,1,f,e)|0;Eg[h&63](a,1,m,i)}while((e|0)>(b|0)|(e|0)==(b|0)&f>>>0>d>>>0)}}Eg[c[j+4>>2]&63](a,1,d,b);l=k;return 0}function zA(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k;i=a+8|0;b=a+16|0;g=(c[i>>2]|0)-((c[c[b>>2]>>2]|0)+16)|0;j=g>>4;if((c[(c[a+12>>2]|0)+12>>2]|0)>0)Sw(a);e=Dx(a)|0;d=c[i>>2]|0;c[d>>2]=e;c[d+8>>2]=69;c[i>>2]=(c[i>>2]|0)+16;Ax(a,e,j,1);e=c[i>>2]|0;d=e+-16|0;b=(c[c[b>>2]>>2]|0)+16|0;b=b>>>0<e>>>0?b:316344;e=e+-32|0;if(b>>>0<e>>>0){f=b;do{c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[e+8>>2]=c[h+8>>2];c[e+12>>2]=c[h+12>>2];f=f+16|0;e=e+-16|0}while(f>>>0<e>>>0)}if(b>>>0<d>>>0)do{c[h>>2]=c[b>>2];c[h+4>>2]=c[b+4>>2];c[h+8>>2]=c[b+8>>2];c[h+12>>2]=c[b+12>>2];c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[d>>2]=c[h>>2];c[d+4>>2]=c[h+4>>2];c[d+8>>2]=c[h+8>>2];c[d+12>>2]=c[h+12>>2];b=b+16|0;d=d+-16|0}while(b>>>0<d>>>0);if((g|0)>0)b=j;else{g=(j|0)<0;g=g<<31>>31;h=c[i>>2]|0;f=h;e=f;c[e>>2]=j;j=f+4|0;c[j>>2]=g;j=h+8|0;c[j>>2]=19;j=h+16|0;c[i>>2]=j;Zv(a,1,285293);l=k;return 1}while(1){$v(a,1,b,((b|0)<0)<<31>>31);if((b|0)>1)b=b+-1|0;else break}g=(j|0)<0;g=g<<31>>31;h=c[i>>2]|0;f=h;e=f;c[e>>2]=j;j=f+4|0;c[j>>2]=g;j=h+8|0;c[j>>2]=19;j=h+16|0;c[i>>2]=j;Zv(a,1,285293);l=k;return 1}function AA(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;j=p;k=p+16|0;m=p+8|0;EA(a,m);e=$x(a,2,1,0)|0;d=z;g=a+16|0;o=c[c[g>>2]>>2]|0;n=o+48|0;i=a+8|0;if(!((n|0)==316344?1:n>>>0>=(c[i>>2]|0)>>>0)?(c[o+56>>2]&15|0)!=0:0){o=_x(a,3)|0;n=z}else{o=hy(a)|0;n=z}if((n|0)<(d|0)|(n|0)==(d|0)&o>>>0<e>>>0){a=0;l=p;return a|0}b=zQ(o|0,n|0,e|0,d|0)|0;f=z;a:do if(!(f>>>0>0|(f|0)==0&b>>>0>2147483646)){b=yQ(b|0,f|0,1,0)|0;c[k>>2]=b;g=c[g>>2]|0;h=c[i>>2]|0;f=h;do if(((c[a+24>>2]|0)-f>>4|0)>(b|0))f=b;else{if(((f-(c[a+28>>2]|0)>>4)+5|0)<=(1e6-b|0)?(rw(a,166,k)|0)==0:0){h=c[i>>2]|0;f=c[k>>2]|0;break}break a}while(0);g=g+4|0;f=h+(f<<4)|0;if((c[g>>2]|0)>>>0<f>>>0)c[g>>2]=f;f=c[m>>2]|0;while(1){jg[f&31](a,1,e,d)|0;m=e;e=yQ(e|0,d|0,1,0)|0;if(!((d|0)<(n|0)|(d|0)==(n|0)&m>>>0<o>>>0))break;else d=z}l=p;return b|0}while(0);Wx(a,285266,j);a=0;l=p;return a|0}function BA(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+16|0;f=i;EA(a,f);d=hy(a)|0;b=z;g=$x(a,2,d,b)|0;e=z;if(!((g|0)==(d|0)&(e|0)==(b|0))?(h=yQ(d|0,b|0,1,0)|0,j=z,(e|0)<0|(e|0)==0&g>>>0<1|((e|0)>(j|0)|(e|0)==(j|0)&g>>>0>h>>>0)):0)Vx(a,1,285243)|0;h=c[f>>2]|0;jg[h&31](a,1,g,e)|0;f=c[f+4>>2]|0;if(!((e|0)<(b|0)|(e|0)==(b|0)&g>>>0<d>>>0)){h=g;j=e;g=a+8|0;e=c[g>>2]|0;d=e+8|0;c[d>>2]=0;e=e+16|0;c[g>>2]=e;Eg[f&63](a,1,h,j);l=i;return 1}do{k=g;g=yQ(g|0,e|0,1,0)|0;j=e;e=z;jg[h&31](a,1,g,e)|0;Eg[f&63](a,1,k,j)}while((e|0)<(b|0)|(e|0)==(b|0)&g>>>0<d>>>0);k=a+8|0;j=c[k>>2]|0;h=j+8|0;c[h>>2]=0;j=j+16|0;c[k>>2]=j;Eg[f&63](a,1,d,b);l=i;return 1}function CA(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;j=_x(a,2)|0;k=z;d=_x(a,3)|0;e=z;m=_x(a,4)|0;n=z;o=a+16|0;b=c[c[o>>2]>>2]|0;i=b+80|0;l=a+8|0;if((i|0)==316344?1:i>>>0>=(c[l>>2]|0)>>>0)g=1;else g=c[b+88>>2]&15|0?5:1;do if(!((e|0)<(k|0)|(e|0)==(k|0)&d>>>0<j>>>0)){do if(!(gy(a,1,286037)|0)){i=c[c[o>>2]>>2]|0;h=i+16|0;if(!((h|0)==316344?1:h>>>0>=(c[l>>2]|0)>>>0)?(c[i+24>>2]&15|0)==5:0){h=7;break}Yx(a,1,281358);h=7}else h=6;while(0);do if(!(gy(a,g,285182)|0)){i=c[c[o>>2]>>2]|0;f=i+(g<<4)|0;if(!((f|0)==316344?1:f>>>0>=(c[l>>2]|0)>>>0)?(c[i+(g<<4)+8>>2]&15|0)==5:0){i=19;break}Yx(a,g,281358);i=19}else i=18;while(0);f=yQ(j|0,k|0,-1,2147483647)|0;b=z;if(!((k|0)>0|(k|0)==0&j>>>0>0|((e|0)<(b|0)|(e|0)==(b|0)&d>>>0<f>>>0)))Vx(a,3,285193)|0;f=zQ(d|0,e|0,j|0,k|0)|0;b=z;e=zQ(-1,2147483647,f|0,b|0)|0;d=z;if((n|0)>(d|0)|(n|0)==(d|0)&m>>>0>e>>>0)Vx(a,4,285219)|0;d=(b|0)>-1|(b|0)==-1&f>>>0>4294967295;if((n|0)>(k|0)|(n|0)==(k|0)&m>>>0>j>>>0){if(d)d=f;else break;while(1){f=yQ(d|0,b|0,j|0,k|0)|0;jg[h&31](a,1,f,z)|0;f=yQ(d|0,b|0,m|0,n|0)|0;Eg[i&63](a,g,f,z);f=d;d=yQ(d|0,b|0,-1,-1)|0;if(!((b|0)>0|(b|0)==0&f>>>0>0))break;else b=z}}else{if(d){d=0;e=0}else break;while(1){p=yQ(d|0,e|0,j|0,k|0)|0;jg[h&31](a,1,p,z)|0;p=yQ(d|0,e|0,m|0,n|0)|0;Eg[i&63](a,g,p,z);p=d;d=yQ(d|0,e|0,1,0)|0;if(!((e|0)<(b|0)|(e|0)==(b|0)&p>>>0<f>>>0))break;else e=z}}}while(0);p=c[l>>2]|0;a=(c[c[o>>2]>>2]|0)+(g<<4)|0;a=a>>>0<p>>>0?a:316344;c[p>>2]=c[a>>2];c[p+4>>2]=c[a+4>>2];c[p+8>>2]=c[a+8>>2];c[p+12>>2]=c[a+12>>2];c[l>>2]=(c[l>>2]|0)+16;return 1}function DA(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;e=n;f=n+16|0;m=n+8|0;EA(a,m);j=hy(a)|0;c[f>>2]=70;i=a+16|0;g=c[i>>2]|0;k=a+8|0;b=c[k>>2]|0;d=b;do if(((c[a+24>>2]|0)-d|0)>1120){e=b;b=70;h=5}else{if(((d-(c[a+28>>2]|0)>>4)+5|0)<=999930?(rw(a,166,f)|0)==0:0){e=c[k>>2]|0;b=c[f>>2]|0;h=5;break}c[e>>2]=335059;Wx(a,282290,e);d=c[k>>2]|0}while(0);if((h|0)==5){d=g+4|0;b=e+(b<<4)|0;if((c[d>>2]|0)>>>0<b>>>0)c[d>>2]=b;d=e}b=c[c[i>>2]>>2]|0;h=b+32|0;a:do if(h>>>0>=d>>>0|(h|0)==316344)f=d;else{switch(c[b+40>>2]&15){case 6:case 0:{f=d;break a}default:{}}Yx(a,2,287317);b=c[c[i>>2]>>2]|0;f=c[k>>2]|0}while(0);e=b+48|0;if(f>>>0>=e>>>0){c[k>>2]=e;FA(a,m,1,j);l=n;return 0}b=(b+40+4+(3-f)|0)>>>4;d=f;do{c[d+8>>2]=0;d=d+16|0}while(d>>>0<e>>>0);c[k>>2]=f+(b+1<<4);c[k>>2]=e;FA(a,m,1,j);l=n;return 0}function EA(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;c[d>>2]=0;j=d+4|0;c[j>>2]=0;i=b+16|0;e=(c[c[i>>2]>>2]|0)+16|0;h=b+8|0;f=c[h>>2]|0;e=e>>>0<f>>>0?e:316344;g=c[e+8>>2]|0;switch(g&15){case 5:{e=(c[e>>2]|0)+24|0;break}case 7:{e=(c[e>>2]|0)+8|0;break}default:e=(c[b+12>>2]|0)+244+((g&15)<<2)|0}e=c[e>>2]|0;if(e){c[f>>2]=e;c[f+8>>2]=69;c[h>>2]=(c[h>>2]|0)+16;g=b+12|0;e=c[g>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[g>>2]|0}f=e+280+(((286037>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286037,e+16|0)|0){e=xx(b,286037,7)|0;c[f>>2]=e}f=c[h>>2]|0;c[f>>2]=e;c[f+8>>2]=(a[e+4>>0]|64)&255;f=c[h>>2]|0;c[h>>2]=f+16;e=Cx(c[f+-16>>2]|0,f)|0;c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];if(c[(c[h>>2]|0)+-8>>2]&15|0)c[d>>2]=6;e=c[g>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[g>>2]|0}f=e+280+(((285182>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(285182,e+16|0)|0){e=xx(b,285182,10)|0;c[f>>2]=e}g=c[h>>2]|0;c[g>>2]=e;c[g+8>>2]=(a[e+4>>0]|64)&255;e=c[h>>2]|0;c[h>>2]=e+16;g=Cx(c[e+-32>>2]|0,e)|0;c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];c[e+8>>2]=c[g+8>>2];c[e+12>>2]=c[g+12>>2];e=c[h>>2]|0;if(c[e+-8>>2]&15|0)c[j>>2]=18;f=e+-48|0;c[h>>2]=f;e=c[d>>2]|0;if((e|0)!=0?(c[j>>2]|0)!=0:0)return}else e=0;i=c[c[i>>2]>>2]|0;h=i+16|0;if(!(!(h>>>0>=f>>>0|(h|0)==316344)?(c[i+24>>2]&15|0)==5:0)){Yx(b,1,281358);e=c[d>>2]|0}if(!e)c[d>>2]=7;if(c[j>>2]|0)return;c[j>>2]=19;return}function FA(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+16|0;u=v+8|0;t=v;if((e|0)<=(d|0)){l=v;return}r=b+4|0;s=a+8|0;while(1){g=((d|0)<0)<<31>>31;jg[c[b>>2]&31](a,1,d,g)|0;h=((e|0)<0)<<31>>31;jg[c[b>>2]&31](a,1,e,h)|0;if(!(GA(a,-1,-2)|0))c[s>>2]=(c[s>>2]|0)+-32;else{Eg[c[r>>2]&63](a,1,d,g);Eg[c[r>>2]&63](a,1,e,h)}f=e-d|0;if((f|0)==1){d=25;break}i=(e+d|0)/2|0;j=((i|0)<0)<<31>>31;jg[c[b>>2]&31](a,1,i,j)|0;jg[c[b>>2]&31](a,1,d,g)|0;do if(!(GA(a,-2,-1)|0)){c[s>>2]=(c[s>>2]|0)+-16;jg[c[b>>2]&31](a,1,e,h)|0;if(!(GA(a,-1,-2)|0)){c[s>>2]=(c[s>>2]|0)+-32;break}else{Eg[c[r>>2]&63](a,1,i,j);Eg[c[r>>2]&63](a,1,e,h);break}}else{Eg[c[r>>2]&63](a,1,i,j);Eg[c[r>>2]&63](a,1,d,g)}while(0);if((f|0)==2){d=25;break}jg[c[b>>2]&31](a,1,i,j)|0;p=c[s>>2]|0;q=p+-16|0;c[p>>2]=c[q>>2];c[p+4>>2]=c[q+4>>2];c[p+8>>2]=c[q+8>>2];c[p+12>>2]=c[q+12>>2];c[s>>2]=(c[s>>2]|0)+16;p=e+-1|0;q=((p|0)<0)<<31>>31;jg[c[b>>2]&31](a,1,p,q)|0;Eg[c[r>>2]&63](a,1,i,j);Eg[c[r>>2]&63](a,1,p,q);h=d;j=p;while(1){f=h+1|0;g=((f|0)<0)<<31>>31;jg[c[b>>2]&31](a,1,f,g)|0;if(!(GA(a,-1,-2)|0)){o=f;n=f;f=h}else while(1){if((e|0)<=(f|0))Wx(a,285147,t);c[s>>2]=(c[s>>2]|0)+-16;g=f+1|0;h=((g|0)<0)<<31>>31;jg[c[b>>2]&31](a,1,g,h)|0;if(!(GA(a,-1,-2)|0)){o=g;n=g;g=h;break}else f=g}h=j+-1|0;i=((h|0)<0)<<31>>31;jg[c[b>>2]&31](a,1,h,i)|0;if(!(GA(a,-3,-1)|0)){m=h;k=h;h=j}else while(1){if((h|0)<=(d|0))Wx(a,285147,u);c[s>>2]=(c[s>>2]|0)+-16;i=h+-1|0;j=((i|0)<0)<<31>>31;jg[c[b>>2]&31](a,1,i,j)|0;if(!(GA(a,-3,-1)|0)){m=i;k=i;i=j;break}else h=i}if((h|0)<=(o|0))break;Eg[c[r>>2]&63](a,1,n,g);Eg[c[r>>2]&63](a,1,k,i);h=o;j=m}c[s>>2]=(c[s>>2]|0)+-48;jg[c[b>>2]&31](a,1,p,q)|0;jg[c[b>>2]&31](a,1,n,g)|0;Eg[c[r>>2]&63](a,1,p,q);Eg[c[r>>2]&63](a,1,n,g);p=(o-d|0)<(e-o|0);o=f+2|0;n=d;d=p?o:d;q=e;e=p?e:f;FA(a,b,p?n:o,p?f:q);if((e|0)<=(d|0)){d=25;break}}if((d|0)==25){l=v;return}}function GA(a,e,f){a=a|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;m=o;k=a+16|0;j=c[c[k>>2]>>2]|0;g=j+32|0;n=a+8|0;h=c[n>>2]|0;if(!(g>>>0>=h>>>0|(g|0)==316344)?(c[j+40>>2]&15|0)==0:0){n=Sv(a,e,f,1)|0;l=o;return n|0}j=g>>>0<h>>>0?g:316344;c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[h+8>>2]=c[j+8>>2];c[h+12>>2]=c[j+12>>2];j=(c[n>>2]|0)+16|0;c[n>>2]=j;g=e+-1|0;i=c[k>>2]|0;do if((e|0)<=1){if((e|0)>=-1000998){g=j+(g<<4)|0;break}if((g|0)==-1001e3){g=(c[a+12>>2]|0)+40|0;break}h=-1000999-e|0;g=c[i>>2]|0;if((c[g+8>>2]|0)==22)g=316344;else{g=c[g>>2]|0;g=(h|0)>(d[g+6>>0]|0|0)?316344:g+16+(h+-1<<4)|0}}else{g=(c[i>>2]|0)+(g<<4)|0;g=g>>>0<j>>>0?g:316344}while(0);c[j>>2]=c[g>>2];c[j+4>>2]=c[g+4>>2];c[j+8>>2]=c[g+8>>2];c[j+12>>2]=c[g+12>>2];e=(c[n>>2]|0)+16|0;c[n>>2]=e;g=f+-2|0;i=c[k>>2]|0;do if((f|0)<=2){if((g|0)>=-1000999){g=e+(g<<4)|0;break}if((g|0)==-1001e3){g=(c[a+12>>2]|0)+40|0;break}h=-1000998-f|0;g=c[i>>2]|0;if((c[g+8>>2]|0)==22)g=316344;else{g=c[g>>2]|0;g=(h|0)>(d[g+6>>0]|0|0)?316344:g+16+(h+-1<<4)|0}}else{g=(c[i>>2]|0)+(g<<4)|0;g=g>>>0<e>>>0?g:316344}while(0);c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];c[e+8>>2]=c[g+8>>2];c[e+12>>2]=c[g+12>>2];h=c[n>>2]|0;c[n>>2]=h+16;h=h+-32|0;i=a+106|0;g=(b[i>>1]|0)+1<<16>>16;b[i>>1]=g;if((g&65535)>199){if(g<<16>>16==200)mw(a,279953,m);if((g&65535)>224)qw(a,6)}g=a+104|0;b[g>>1]=(b[g>>1]|0)+1<<16>>16;if(!(uw(a,h,1)|0))Sx(a);b[g>>1]=(b[g>>1]|0)+-1<<16>>16;b[i>>1]=(b[i>>1]|0)+-1<<16>>16;a=c[n>>2]|0;g=a+-16|0;switch(c[a+-8>>2]|0){case 0:{h=0;break}case 1:{h=(c[g>>2]|0)!=0;break}default:h=1}c[n>>2]=g;n=h&1;l=o;return n|0}function HA(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+32|0;m=u+16|0;i=u;r=b+12|0;if((c[(c[r>>2]|0)+12>>2]|0)>0)Sw(b);g=Dx(b)|0;s=b+8|0;h=c[s>>2]|0;c[h>>2]=g;c[h+8>>2]=69;c[s>>2]=(c[s>>2]|0)+16;if((c[(c[r>>2]|0)+12>>2]|0)>0)Sw(b);g=Dx(b)|0;h=c[s>>2]|0;c[h>>2]=g;c[h+8>>2]=69;c[s>>2]=(c[s>>2]|0)+16;Ax(b,g,0,1);g=c[s>>2]|0;c[g>>2]=406;c[g+8>>2]=22;g=c[s>>2]|0;h=g+16|0;c[s>>2]=h;f=(c[r>>2]|0)+280+(((286754>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286754,e+16|0)|0){e=xx(b,286754,4)|0;c[f>>2]=e}c[h>>2]=e;c[g+24>>2]=(a[e+4>>0]|64)&255;f=c[s>>2]|0;c[s>>2]=f+16;Lx(b,g+-16|0,f,f+-16|0);c[s>>2]=(c[s>>2]|0)+-32;aw(b,-2);f=c[(c[r>>2]|0)+40>>2]|0;c[i>>2]=320068;c[i+8>>2]=2;e=Cx(f,i)|0;if((e|0)==316344)e=Bx(b,f,i)|0;i=(c[s>>2]|0)+-16|0;c[e>>2]=c[i>>2];c[e+4>>2]=c[i+4>>2];c[e+8>>2]=c[i+8>>2];c[e+12>>2]=c[i+12>>2];e=c[s>>2]|0;if((c[e+-8>>2]&64|0?(j=f+5|0,k=a[j>>0]|0,k&4):0)?a[(c[e+-16>>2]|0)+5>>0]&3:0){i=c[r>>2]|0;a[j>>0]=k&-5;k=i+80|0;c[f+28>>2]=c[k>>2];c[k>>2]=f}c[s>>2]=e+-16;e=c[r>>2]|0;if((c[e+140>>2]|0)!=952){Wx(b,282533,m);e=c[r>>2]|0}if((c[e+12>>2]|0)>0)Sw(b);m=Dx(b)|0;k=c[s>>2]|0;c[k>>2]=m;c[k+8>>2]=69;c[s>>2]=(c[s>>2]|0)+16;Ax(b,m,0,7);jy(b,6192,0);if((c[(c[r>>2]|0)+12>>2]|0)>0)Sw(b);e=Dx(b)|0;m=c[s>>2]|0;c[m>>2]=e;c[m+8>>2]=69;c[s>>2]=(c[s>>2]|0)+16;Ax(b,e,4,0);e=c[s>>2]|0;m=e+-32|0;c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[s>>2]=(c[s>>2]|0)+16;e=c[r>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[r>>2]|0}f=e+4|0;g=jg[c[e>>2]&31](c[f>>2]|0,0,6,32)|0;if(!g){if(!(c[e+140>>2]|0))qw(b,4);Tw(b,1);f=jg[c[e>>2]&31](c[f>>2]|0,0,6,32)|0;if(!f)qw(b,4);else n=f}else n=g;m=e+12|0;c[m>>2]=(c[m>>2]|0)+32;a[n+5>>0]=a[e+60>>0]&3;a[n+4>>0]=38;m=e+64|0;c[n>>2]=c[m>>2];c[m>>2]=n;a[n+6>>0]=1;c[n+12>>2]=407;m=(c[s>>2]|0)+-16|0;c[s>>2]=m;e=n+16|0;c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];e=c[s>>2]|0;c[e>>2]=n;c[e+8>>2]=102;c[s>>2]=(c[s>>2]|0)+16;$v(b,-2,1,0);e=c[s>>2]|0;n=e+-32|0;c[e>>2]=c[n>>2];c[e+4>>2]=c[n+4>>2];c[e+8>>2]=c[n+8>>2];c[e+12>>2]=c[n+12>>2];c[s>>2]=(c[s>>2]|0)+16;e=c[r>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[r>>2]|0}f=e+4|0;g=jg[c[e>>2]&31](c[f>>2]|0,0,6,32)|0;if(!g){if(!(c[e+140>>2]|0))qw(b,4);Tw(b,1);f=jg[c[e>>2]&31](c[f>>2]|0,0,6,32)|0;if(!f)qw(b,4);else o=f}else o=g;n=e+12|0;c[n>>2]=(c[n>>2]|0)+32;a[o+5>>0]=a[e+60>>0]&3;a[o+4>>0]=38;n=e+64|0;c[o>>2]=c[n>>2];c[n>>2]=o;a[o+6>>0]=1;c[o+12>>2]=408;n=(c[s>>2]|0)+-16|0;c[s>>2]=n;e=o+16|0;c[e>>2]=c[n>>2];c[e+4>>2]=c[n+4>>2];c[e+8>>2]=c[n+8>>2];c[e+12>>2]=c[n+12>>2];e=c[s>>2]|0;c[e>>2]=o;c[e+8>>2]=102;c[s>>2]=(c[s>>2]|0)+16;$v(b,-2,2,0);e=c[s>>2]|0;o=e+-32|0;c[e>>2]=c[o>>2];c[e+4>>2]=c[o+4>>2];c[e+8>>2]=c[o+8>>2];c[e+12>>2]=c[o+12>>2];c[s>>2]=(c[s>>2]|0)+16;e=c[r>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[r>>2]|0}f=e+4|0;g=jg[c[e>>2]&31](c[f>>2]|0,0,6,32)|0;if(!g){if(!(c[e+140>>2]|0))qw(b,4);Tw(b,1);f=jg[c[e>>2]&31](c[f>>2]|0,0,6,32)|0;if(!f)qw(b,4);else p=f}else p=g;o=e+12|0;c[o>>2]=(c[o>>2]|0)+32;a[p+5>>0]=a[e+60>>0]&3;a[p+4>>0]=38;o=e+64|0;c[p>>2]=c[o>>2];c[o>>2]=p;a[p+6>>0]=1;c[p+12>>2]=409;o=(c[s>>2]|0)+-16|0;c[s>>2]=o;e=p+16|0;c[e>>2]=c[o>>2];c[e+4>>2]=c[o+4>>2];c[e+8>>2]=c[o+8>>2];c[e+12>>2]=c[o+12>>2];e=c[s>>2]|0;c[e>>2]=p;c[e+8>>2]=102;c[s>>2]=(c[s>>2]|0)+16;$v(b,-2,3,0);e=c[s>>2]|0;p=e+-32|0;c[e>>2]=c[p>>2];c[e+4>>2]=c[p+4>>2];c[e+8>>2]=c[p+8>>2];c[e+12>>2]=c[p+12>>2];c[s>>2]=(c[s>>2]|0)+16;e=c[r>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[r>>2]|0}f=e+4|0;g=jg[c[e>>2]&31](c[f>>2]|0,0,6,32)|0;if(!g){if(!(c[e+140>>2]|0))qw(b,4);Tw(b,1);f=jg[c[e>>2]&31](c[f>>2]|0,0,6,32)|0;if(!f)qw(b,4);else q=f}else q=g;f=e+12|0;c[f>>2]=(c[f>>2]|0)+32;a[q+5>>0]=a[e+60>>0]&3;a[q+4>>0]=38;f=e+64|0;c[q>>2]=c[f>>2];c[f>>2]=q;a[q+6>>0]=1;c[q+12>>2]=410;f=(c[s>>2]|0)+-16|0;c[s>>2]=f;g=q+16|0;c[g>>2]=c[f>>2];c[g+4>>2]=c[f+4>>2];c[g+8>>2]=c[f+8>>2];c[g+12>>2]=c[f+12>>2];g=c[s>>2]|0;c[g>>2]=q;c[g+8>>2]=102;c[s>>2]=(c[s>>2]|0)+16;$v(b,-2,4,0);g=c[s>>2]|0;f=(c[r>>2]|0)+280+(((285386>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(285386,e+16|0)|0){e=xx(b,285386,9)|0;c[f>>2]=e}c[g>>2]=e;c[g+8>>2]=(a[e+4>>0]|64)&255;e=c[s>>2]|0;c[s>>2]=e+16;Lx(b,g+-32|0,e,e+-16|0);c[s>>2]=(c[s>>2]|0)+-32;e=c[r>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[r>>2]|0}f=e+280+(((285396>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(285396,e+16|0)|0){e=xx(b,285396,150)|0;c[f>>2]=e}g=c[s>>2]|0;c[g>>2]=e;c[g+8>>2]=(a[e+4>>0]|64)&255;g=c[s>>2]|0;h=g+16|0;c[s>>2]=h;f=(c[r>>2]|0)+280+(((285547>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(285547,e+16|0)|0){e=xx(b,285547,4)|0;c[f>>2]=e}c[h>>2]=e;c[g+24>>2]=(a[e+4>>0]|64)&255;e=c[s>>2]|0;c[s>>2]=e+16;Lx(b,g+-16|0,e,e+-16|0);c[s>>2]=(c[s>>2]|0)+-32;e=c[r>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[r>>2]|0}f=e+280+(((285552>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(285552,e+16|0)|0){e=xx(b,285552,68)|0;c[f>>2]=e}g=c[s>>2]|0;c[g>>2]=e;c[g+8>>2]=(a[e+4>>0]|64)&255;g=c[s>>2]|0;h=g+16|0;c[s>>2]=h;f=(c[r>>2]|0)+280+(((285621>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(285621,e+16|0)|0){e=xx(b,285621,5)|0;c[f>>2]=e}c[h>>2]=e;c[g+24>>2]=(a[e+4>>0]|64)&255;e=c[s>>2]|0;c[s>>2]=e+16;Lx(b,g+-16|0,e,e+-16|0);c[s>>2]=(c[s>>2]|0)+-32;e=c[r>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[r>>2]|0}f=e+280+(((285627>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(285627,e+16|0)|0){e=xx(b,285627,10)|0;c[f>>2]=e}g=c[s>>2]|0;c[g>>2]=e;c[g+8>>2]=(a[e+4>>0]|64)&255;g=c[s>>2]|0;h=g+16|0;c[s>>2]=h;f=(c[r>>2]|0)+280+(((285638>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(285638,e+16|0)|0){e=xx(b,285638,6)|0;c[f>>2]=e}c[h>>2]=e;c[g+24>>2]=(a[e+4>>0]|64)&255;f=c[s>>2]|0;c[s>>2]=f+16;Lx(b,g+-16|0,f,f+-16|0);c[s>>2]=(c[s>>2]|0)+-32;ky(b,285645);g=c[s>>2]|0;f=(c[r>>2]|0)+280+(((285653>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(285653,e+16|0)|0){e=xx(b,285653,6)|0;c[f>>2]=e}c[g>>2]=e;c[g+8>>2]=(a[e+4>>0]|64)&255;f=c[s>>2]|0;c[s>>2]=f+16;Lx(b,g+-32|0,f,f+-16|0);c[s>>2]=(c[s>>2]|0)+-32;ky(b,285660);g=c[s>>2]|0;f=(c[r>>2]|0)+280+(((285669>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(285669,e+16|0)|0){e=xx(b,285669,7)|0;c[f>>2]=e}c[g>>2]=e;c[g+8>>2]=(a[e+4>>0]|64)&255;e=c[s>>2]|0;c[s>>2]=e+16;Lx(b,g+-32|0,e,e+-16|0);g=(c[s>>2]|0)+-32|0;c[s>>2]=g;e=c[(c[r>>2]|0)+40>>2]|0;if((c[e+8>>2]|0)>>>0>1){r=(c[e+12>>2]|0)+16|0;c[g>>2]=c[r>>2];c[g+4>>2]=c[r+4>>2];c[g+8>>2]=c[r+8>>2];c[g+12>>2]=c[r+12>>2];r=c[s>>2]|0;t=r+16|0;c[s>>2]=t;r=r+-16|0;c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[t+8>>2]=c[r+8>>2];c[t+12>>2]=c[r+12>>2];t=c[s>>2]|0;t=t+16|0;c[s>>2]=t;jy(b,6256,1);t=c[s>>2]|0;t=t+-16|0;c[s>>2]=t;l=u;return 1}f=(c[e+16>>2]|0)+(((1<<(d[e+7>>0]|0))+3&2)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(r=f+16|0,(c[r>>2]|0)==2&(c[r+4>>2]|0)==0):0)break;e=c[f+28>>2]|0;if(!e){e=316344;t=85;break}f=f+(e<<5)|0}if((t|0)==85){c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];r=c[s>>2]|0;t=r+16|0;c[s>>2]=t;r=r+-16|0;c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[t+8>>2]=c[r+8>>2];c[t+12>>2]=c[r+12>>2];t=c[s>>2]|0;t=t+16|0;c[s>>2]=t;jy(b,6256,1);t=c[s>>2]|0;t=t+-16|0;c[s>>2]=t;l=u;return 1}r=f;c[g>>2]=c[r>>2];c[g+4>>2]=c[r+4>>2];c[g+8>>2]=c[r+8>>2];c[g+12>>2]=c[r+12>>2];r=c[s>>2]|0;t=r+16|0;c[s>>2]=t;r=r+-16|0;c[t>>2]=c[r>>2];c[t+4>>2]=c[r+4>>2];c[t+8>>2]=c[r+8>>2];c[t+12>>2]=c[r+12>>2];t=c[s>>2]|0;t=t+16|0;c[s>>2]=t;jy(b,6256,1);t=c[s>>2]|0;t=t+-16|0;c[s>>2]=t;l=u;return 1}function IA(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;b=hy(a)|0;e=z;if(!((e|0)>0|(e|0)==0&b>>>0>0))return 0;k=a+16|0;j=a+8|0;do{a=(c[c[k>>2]>>2]|0)+16|0;g=c[j>>2]|0;a=c[(a>>>0<g>>>0?a:316344)>>2]|0;h=b;b=yQ(b|0,e|0,-1,-1)|0;i=e;e=z;a:do if(e>>>0<0|((e|0)==0?b>>>0<(c[a+8>>2]|0)>>>0:0))a=(c[a+12>>2]|0)+(b<<4)|0;else{a=(c[a+16>>2]|0)+(((1<<(d[a+7>>0]|0))+-1&h)<<5)|0;while(1){if((c[a+24>>2]|0)==19?(f=a+16|0,(c[f>>2]|0)==(h|0)?(c[f+4>>2]|0)==(i|0):0):0)break;f=c[a+28>>2]|0;if(!f){a=316344;break a}a=a+(f<<5)|0}}while(0);c[g>>2]=c[a>>2];c[g+4>>2]=c[a+4>>2];c[g+8>>2]=c[a+8>>2];c[g+12>>2]=c[a+12>>2]}while((i|0)>0|(i|0)==0&h>>>0>1);return 0}function JA(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;k=m;g=b+16|0;e=c[c[g>>2]>>2]|0;f=e+16|0;j=b+8|0;d=c[j>>2]|0;f=f>>>0<d>>>0?f:316344;switch(c[f+8>>2]&15){case 4:{d=f;h=5;break}case 3:{if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);e=c[c[g>>2]>>2]|0;d=c[j>>2]|0}h=e+16|0;d=h>>>0<d>>>0?h:316344;Xw(b,d);h=5;break}default:{Yx(b,1,287721);i=0}}if((h|0)==5)i=(c[d>>2]|0)+16|0;h=b+12|0;f=c[h>>2]|0;g=c[j>>2]|0;e=f+280+(((285660>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(JN(285660,d+16|0)|0){d=xx(b,285660,8)|0;c[e>>2]=d}c[g>>2]=d;c[g+8>>2]=(a[d+4>>0]|64)&255;e=c[j>>2]|0;c[j>>2]=e+16;Kx(b,f+40|0,e,e);f=c[j>>2]|0;e=(c[h>>2]|0)+280+(((i>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(JN(i,d+16|0)|0){d=xx(b,i,WO(i)|0)|0;c[e>>2]=d}c[f>>2]=d;c[f+8>>2]=(a[d+4>>0]|64)&255;h=c[j>>2]|0;c[j>>2]=h+16;Kx(b,f+-16|0,h,h);if(c[(c[j>>2]|0)+-8>>2]&15|0){l=m;return 1}c[k>>2]=i;Vv(b,285943,k)|0;l=m;return 1}function KA(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;n=p+8|0;i=p;j=b+16|0;e=c[c[j>>2]>>2]|0;f=e+16|0;o=b+8|0;d=c[o>>2]|0;f=f>>>0<d>>>0?f:316344;switch(c[f+8>>2]&15){case 4:{d=f;m=5;break}case 3:{if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);e=c[c[j>>2]>>2]|0;d=c[o>>2]|0}m=e+16|0;d=m>>>0<d>>>0?m:316344;Xw(b,d);m=5;break}default:{Yx(b,1,287721);h=0}}if((m|0)==5)h=(c[d>>2]|0)+16|0;d=c[c[j>>2]>>2]|0;if((c[d+8>>2]|0)==22)f=316344;else{f=c[d>>2]|0;f=(a[f+6>>0]|0)==0?316344:f+16|0}g=c[o>>2]|0;k=b+12|0;e=(c[k>>2]|0)+280+(((285547>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(JN(285547,d+16|0)|0){d=xx(b,285547,4)|0;c[e>>2]=d}c[g>>2]=d;c[g+8>>2]=(a[d+4>>0]|64)&255;d=c[o>>2]|0;c[o>>2]=d+16;Kx(b,f,d,d);d=c[o>>2]|0;switch(c[d+-8>>2]&15){case 4:{d=d+-16|0;m=16;break}case 3:{if((c[(c[k>>2]|0)+12>>2]|0)>0){Sw(b);d=c[o>>2]|0}d=d+-16|0;Xw(b,d);m=16;break}default:{c[i>>2]=285547;Wx(b,285746,i);d=0}}if((m|0)==16)d=(c[d>>2]|0)+16|0;g=OA(b,h,d,314352,308626)|0;if(!g){b=1;l=p;return b|0}if(!(cy(b,g,0)|0)){d=c[k>>2]|0;if((c[d+12>>2]|0)>0){Sw(b);d=c[k>>2]|0}e=d+280+(((g>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(JN(g,d+16|0)|0){d=xx(b,g,WO(g)|0)|0;c[e>>2]=d}b=c[o>>2]|0;c[b>>2]=d;c[b+8>>2]=(a[d+4>>0]|64)&255;c[o>>2]=(c[o>>2]|0)+16;b=2;l=p;return b|0}e=c[c[j>>2]>>2]|0;f=e+16|0;d=c[o>>2]|0;f=f>>>0<d>>>0?f:316344;switch(c[f+8>>2]&15){case 4:{e=f;m=30;break}case 3:{if((c[(c[k>>2]|0)+12>>2]|0)>0){Sw(b);e=c[c[j>>2]>>2]|0;d=c[o>>2]|0}e=e+16|0;e=e>>>0<d>>>0?e:316344;Xw(b,e);d=c[o>>2]|0;m=30;break}default:e=0}if((m|0)==30)e=(c[e>>2]|0)+16|0;switch(c[d+-8>>2]&15){case 4:{d=d+-16|0;m=35;break}case 3:{if((c[(c[k>>2]|0)+12>>2]|0)>0){Sw(b);d=c[o>>2]|0}d=d+-16|0;Xw(b,d);m=35;break}default:d=0}if((m|0)==35)d=(c[d>>2]|0)+16|0;c[n>>2]=e;c[n+4>>2]=g;c[n+8>>2]=d;Wx(b,285776,n);b=0;l=p;return b|0}function LA(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;n=p+8|0;i=p;j=b+16|0;e=c[c[j>>2]>>2]|0;f=e+16|0;o=b+8|0;d=c[o>>2]|0;f=f>>>0<d>>>0?f:316344;switch(c[f+8>>2]&15){case 4:{d=f;m=5;break}case 3:{if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);e=c[c[j>>2]>>2]|0;d=c[o>>2]|0}m=e+16|0;d=m>>>0<d>>>0?m:316344;Xw(b,d);m=5;break}default:{Yx(b,1,287721);h=0}}if((m|0)==5)h=(c[d>>2]|0)+16|0;d=c[c[j>>2]>>2]|0;if((c[d+8>>2]|0)==22)f=316344;else{f=c[d>>2]|0;f=(a[f+6>>0]|0)==0?316344:f+16|0}g=c[o>>2]|0;k=b+12|0;e=(c[k>>2]|0)+280+(((285621>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(JN(285621,d+16|0)|0){d=xx(b,285621,5)|0;c[e>>2]=d}c[g>>2]=d;c[g+8>>2]=(a[d+4>>0]|64)&255;d=c[o>>2]|0;c[o>>2]=d+16;Kx(b,f,d,d);d=c[o>>2]|0;switch(c[d+-8>>2]&15){case 4:{d=d+-16|0;m=16;break}case 3:{if((c[(c[k>>2]|0)+12>>2]|0)>0){Sw(b);d=c[o>>2]|0}d=d+-16|0;Xw(b,d);m=16;break}default:{c[i>>2]=285621;Wx(b,285746,i);d=0}}if((m|0)==16)d=(c[d>>2]|0)+16|0;g=OA(b,h,d,314352,308626)|0;if(!g){b=1;l=p;return b|0}if(!(PA(b,g,h)|0)){d=c[k>>2]|0;if((c[d+12>>2]|0)>0){Sw(b);d=c[k>>2]|0}e=d+280+(((g>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(JN(g,d+16|0)|0){d=xx(b,g,WO(g)|0)|0;c[e>>2]=d}b=c[o>>2]|0;c[b>>2]=d;c[b+8>>2]=(a[d+4>>0]|64)&255;c[o>>2]=(c[o>>2]|0)+16;b=2;l=p;return b|0}e=c[c[j>>2]>>2]|0;f=e+16|0;d=c[o>>2]|0;f=f>>>0<d>>>0?f:316344;switch(c[f+8>>2]&15){case 4:{e=f;m=30;break}case 3:{if((c[(c[k>>2]|0)+12>>2]|0)>0){Sw(b);e=c[c[j>>2]>>2]|0;d=c[o>>2]|0}e=e+16|0;e=e>>>0<d>>>0?e:316344;Xw(b,e);d=c[o>>2]|0;m=30;break}default:e=0}if((m|0)==30)e=(c[e>>2]|0)+16|0;switch(c[d+-8>>2]&15){case 4:{d=d+-16|0;m=35;break}case 3:{if((c[(c[k>>2]|0)+12>>2]|0)>0){Sw(b);d=c[o>>2]|0}d=d+-16|0;Xw(b,d);m=35;break}default:d=0}if((m|0)==35)d=(c[d>>2]|0)+16|0;c[n>>2]=e;c[n+4>>2]=g;c[n+8>>2]=d;Wx(b,285776,n);b=0;l=p;return b|0}function MA(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;k=r+24|0;p=r+8|0;j=r;m=b+16|0;e=c[c[m>>2]>>2]|0;f=e+16|0;q=b+8|0;d=c[q>>2]|0;f=f>>>0<d>>>0?f:316344;switch(c[f+8>>2]&15){case 4:{d=f;o=5;break}case 3:{if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);e=c[c[m>>2]>>2]|0;d=c[q>>2]|0}o=e+16|0;d=o>>>0<d>>>0?o:316344;Xw(b,d);o=5;break}default:{Yx(b,1,287721);i=0}}if((o|0)==5)i=(c[d>>2]|0)+16|0;d=XO(i,46)|0;if(!d){b=0;l=r;return b|0}n=b+12|0;if((c[(c[n>>2]|0)+12>>2]|0)>0)Sw(b);d=xx(b,i,d-i|0)|0;e=c[q>>2]|0;c[e>>2]=d;c[e+8>>2]=(a[d+4>>0]|64)&255;e=c[q>>2]|0;d=e+16|0;c[q>>2]=d;switch(c[e+8>>2]&15){case 4:{d=e;o=14;break}case 3:{if((c[(c[n>>2]|0)+12>>2]|0)>0){Sw(b);d=c[q>>2]|0}d=d+-16|0;Xw(b,d);o=14;break}default:h=0}if((o|0)==14)h=(c[d>>2]|0)+16|0;d=c[c[m>>2]>>2]|0;if((c[d+8>>2]|0)==22)f=316344;else{f=c[d>>2]|0;f=(a[f+6>>0]|0)==0?316344:f+16|0}g=c[q>>2]|0;e=(c[n>>2]|0)+280+(((285621>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(JN(285621,d+16|0)|0){d=xx(b,285621,5)|0;c[e>>2]=d}c[g>>2]=d;c[g+8>>2]=(a[d+4>>0]|64)&255;d=c[q>>2]|0;c[q>>2]=d+16;Kx(b,f,d,d);d=c[q>>2]|0;switch(c[d+-8>>2]&15){case 4:{d=d+-16|0;o=24;break}case 3:{if((c[(c[n>>2]|0)+12>>2]|0)>0){Sw(b);d=c[q>>2]|0}d=d+-16|0;Xw(b,d);o=24;break}default:{c[j>>2]=285621;Wx(b,285746,j);d=0}}if((o|0)==24)d=(c[d>>2]|0)+16|0;g=OA(b,h,d,314352,308626)|0;if(!g){b=1;l=r;return b|0}switch(PA(b,g,i)|0){case 0:{d=c[n>>2]|0;if((c[d+12>>2]|0)>0){Sw(b);d=c[n>>2]|0}e=d+280+(((g>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(JN(g,d+16|0)|0){d=xx(b,g,WO(g)|0)|0;c[e>>2]=d}b=c[q>>2]|0;c[b>>2]=d;c[b+8>>2]=(a[d+4>>0]|64)&255;c[q>>2]=(c[q>>2]|0)+16;b=2;l=r;return b|0}case 2:{c[k>>2]=i;c[k+4>>2]=g;Vv(b,285822,k)|0;b=1;l=r;return b|0}default:{e=c[c[m>>2]>>2]|0;f=e+16|0;d=c[q>>2]|0;f=f>>>0<d>>>0?f:316344;switch(c[f+8>>2]&15){case 4:{e=f;o=32;break}case 3:{if((c[(c[n>>2]|0)+12>>2]|0)>0){Sw(b);d=c[q>>2]|0;e=c[c[m>>2]>>2]|0}e=e+16|0;e=e>>>0<d>>>0?e:316344;Xw(b,e);d=c[q>>2]|0;o=32;break}default:e=0}if((o|0)==32)e=(c[e>>2]|0)+16|0;switch(c[d+-8>>2]&15){case 4:{d=d+-16|0;o=37;break}case 3:{if((c[(c[n>>2]|0)+12>>2]|0)>0){Sw(b);d=c[q>>2]|0}d=d+-16|0;Xw(b,d);o=37;break}default:d=0}if((o|0)==37)d=(c[d>>2]|0)+16|0;c[p>>2]=e;c[p+4>>2]=g;c[p+8>>2]=d;Wx(b,285776,p);b=0;l=r;return b|0}}return 0}function NA(e){e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0;C=l;l=l+8256|0;x=C+40|0;v=C+32|0;u=C+24|0;k=C+16|0;w=C;t=C+48|0;A=e+16|0;g=c[c[A>>2]>>2]|0;h=g+16|0;B=e+8|0;f=c[B>>2]|0;h=h>>>0<f>>>0?h:316344;switch(c[h+8>>2]&15){case 4:{f=h;r=5;break}case 3:{if((c[(c[e+12>>2]|0)+12>>2]|0)>0){Sw(e);g=c[c[A>>2]>>2]|0;f=c[B>>2]|0}r=g+16|0;f=r>>>0<f>>>0?r:316344;Xw(e,f);r=5;break}default:{Yx(e,1,287721);y=0}}if((r|0)==5)y=(c[f>>2]|0)+16|0;i=c[c[A>>2]>>2]|0;f=c[B>>2]|0;j=i+32|0;if(f>>>0<j>>>0){g=(i+24+4+(3-f)|0)>>>4;h=f;do{c[h+8>>2]=0;h=h+16|0}while(h>>>0<j>>>0);c[B>>2]=f+(g+1<<4)}c[B>>2]=j;s=e+12|0;h=c[s>>2]|0;g=h+280+(((285645>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(285645,f+16|0)|0){f=xx(e,285645,7)|0;c[g>>2]=f}c[j>>2]=f;c[i+40>>2]=(a[f+4>>0]|64)&255;i=c[B>>2]|0;c[B>>2]=i+16;Kx(e,h+40|0,i,i);h=(c[c[A>>2]>>2]|0)+32|0;i=c[B>>2]|0;q=(y>>>0)%127|0;g=(c[s>>2]|0)+280+(q<<2)|0;f=c[g>>2]|0;if(JN(y,f+16|0)|0){f=xx(e,y,WO(y)|0)|0;c[g>>2]=f}c[i>>2]=f;c[i+8>>2]=(a[f+4>>0]|64)&255;j=c[B>>2]|0;c[B>>2]=j+16;Kx(e,h>>>0<i>>>0?h:316344,j,j);i=c[B>>2]|0;j=i+-16|0;switch(c[i+-8>>2]|0){case 0:break;case 1:{r=18;break}default:{l=C;return 1}}if((r|0)==18?c[j>>2]|0:0){l=C;return 1}c[B>>2]=j;n=t+12|0;c[n>>2]=e;o=t+16|0;c[t>>2]=o;p=t+8|0;c[p>>2]=0;c[t+4>>2]=8192;f=c[c[A>>2]>>2]|0;if((c[f+8>>2]|0)==22)h=316344;else{h=c[f>>2]|0;h=(a[h+6>>0]|0)==0?316344:h+16|0}g=(c[s>>2]|0)+280+(((285386>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(285386,f+16|0)|0){f=xx(e,285386,9)|0;c[g>>2]=f}c[j>>2]=f;c[i+-8>>2]=(a[f+4>>0]|64)&255;m=c[B>>2]|0;c[B>>2]=m+16;Kx(e,h,m,m);if((c[(c[B>>2]|0)+-8>>2]&15|0)!=5)Wx(e,285685,k);k=e+106|0;m=e+104|0;j=1;while(1){h=((j|0)<0)<<31>>31;f=(c[c[A>>2]>>2]|0)+48|0;i=c[B>>2]|0;f=c[(f>>>0<i>>>0?f:316344)>>2]|0;g=yQ(j|0,h|0,-1,-1)|0;D=z;a:do if(D>>>0<0|((D|0)==0?g>>>0<(c[f+8>>2]|0)>>>0:0))f=(c[f+12>>2]|0)+(g<<4)|0;else{f=(c[f+16>>2]|0)+(((1<<d[f+7>>0])+-1&j)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(D=f+16|0,(c[D>>2]|0)==(j|0)?(c[D+4>>2]|0)==(h|0):0):0)break;g=c[f+28>>2]|0;if(!g){f=316344;break a}f=f+(g<<5)|0}}while(0);c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2];f=c[B>>2]|0;c[B>>2]=f+16;if(!(c[f+8>>2]&15)){c[B>>2]=f;f=c[n>>2]|0;g=c[t>>2]|0;h=c[p>>2]|0;if((c[(c[f+12>>2]|0)+12>>2]|0)>0)Sw(f);D=xx(f,g,h)|0;h=f+8|0;f=c[h>>2]|0;c[f>>2]=D;c[f+8>>2]=(a[D+4>>0]|64)&255;f=c[h>>2]|0;c[h>>2]=f+16;if((c[t>>2]|0)!=(o|0)){g=f;f=f+-16|0;do{c[w>>2]=c[f>>2];c[w+4>>2]=c[f+4>>2];c[w+8>>2]=c[f+8>>2];c[w+12>>2]=c[f+12>>2];c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[f+12>>2]=c[g+12>>2];c[g>>2]=c[w>>2];c[g+4>>2]=c[w+4>>2];c[g+8>>2]=c[w+8>>2];c[g+12>>2]=c[w+12>>2];f=f+16|0;g=g+-16|0}while(f>>>0<g>>>0);c[h>>2]=(c[h>>2]|0)+-16}f=c[B>>2]|0;switch(c[f+-8>>2]&15){case 4:{f=f+-16|0;r=46;break}case 3:{if((c[(c[s>>2]|0)+12>>2]|0)>0){Sw(e);f=c[B>>2]|0}f=f+-16|0;Xw(e,f);r=46;break}default:f=0}if((r|0)==46){r=0;f=(c[f>>2]|0)+16|0}c[u>>2]=y;c[u+4>>2]=f;Wx(e,285721,u)}Uv(e,y);f=(c[B>>2]|0)+-32|0;g=(b[k>>1]|0)+1<<16>>16;b[k>>1]=g;if((g&65535)>199){if(g<<16>>16==200){r=50;break}if((g&65535)>224){r=52;break}}b[m>>1]=(b[m>>1]|0)+1<<16>>16;if(!(uw(e,f,2)|0))Sx(e);b[m>>1]=(b[m>>1]|0)+-1<<16>>16;b[k>>1]=(b[k>>1]|0)+-1<<16>>16;g=c[B>>2]|0;h=g+-32|0;f=c[g+-24>>2]|0;if((h|0)!=316344&(f&15|0)==6){r=60;break}if(((f&15)+-3|0)>>>0<2){c[B>>2]=g+-16;by(t)}else c[B>>2]=h;j=j+1|0}if((r|0)==50)mw(e,279953,v);else if((r|0)==52)qw(e,6);else if((r|0)==60){Uv(e,y);g=c[B>>2]|0;f=g+-16|0;g=g+-32|0;do{c[w>>2]=c[g>>2];c[w+4>>2]=c[g+4>>2];c[w+8>>2]=c[g+8>>2];c[w+12>>2]=c[g+12>>2];c[g>>2]=c[f>>2];c[g+4>>2]=c[f+4>>2];c[g+8>>2]=c[f+8>>2];c[g+12>>2]=c[f+12>>2];c[f>>2]=c[w>>2];c[f+4>>2]=c[w+4>>2];c[f+8>>2]=c[w+8>>2];c[f+12>>2]=c[w+12>>2];g=g+16|0;f=f+-16|0}while(g>>>0<f>>>0);f=(c[B>>2]|0)+-48|0;g=(b[k>>1]|0)+1<<16>>16;b[k>>1]=g;if((g&65535)>199){if(g<<16>>16==200)mw(e,279953,x);if((g&65535)>224)qw(e,6)}b[m>>1]=(b[m>>1]|0)+1<<16>>16;if(!(uw(e,f,1)|0))Sx(e);b[m>>1]=(b[m>>1]|0)+-1<<16>>16;b[k>>1]=(b[k>>1]|0)+-1<<16>>16;f=c[B>>2]|0;if((f+-16|0)!=316344?(c[f+-8>>2]&15|0)==0:0)i=f;else{Zv(e,2,y);i=c[B>>2]|0}h=(c[c[A>>2]>>2]|0)+32|0;g=(c[s>>2]|0)+280+(q<<2)|0;f=c[g>>2]|0;if(JN(y,f+16|0)|0){f=xx(e,y,WO(y)|0)|0;c[g>>2]=f}c[i>>2]=f;c[i+8>>2]=(a[f+4>>0]|64)&255;f=c[B>>2]|0;c[B>>2]=f+16;Kx(e,h>>>0<i>>>0?h:316344,f,f);f=c[B>>2]|0;if(c[f+-8>>2]&15|0){l=C;return 1}c[f>>2]=1;c[f+8>>2]=1;D=f+16|0;c[B>>2]=D;c[D>>2]=c[f>>2];c[D+4>>2]=c[f+4>>2];c[D+8>>2]=c[f+8>>2];c[D+12>>2]=c[f+12>>2];c[B>>2]=(c[B>>2]|0)+16;Zv(e,2,y);l=C;return 1}return 0}function OA(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+8240|0;n=s+16|0;r=s;q=s+24|0;m=q+12|0;c[m>>2]=b;p=q+16|0;c[q>>2]=p;o=q+8|0;c[o>>2]=0;c[q+4>>2]=8192;if(a[f>>0]|0)d=my(b,d,f,g)|0;i=b+12|0;j=b+8|0;f=e;a:while(1){switch(a[f>>0]|0){case 0:break a;case 59:{f=f+1|0;continue a}default:{}}g=XO(f,59)|0;if(!g)h=f+(WO(f)|0)|0;else h=g;if((c[(c[i>>2]|0)+12>>2]|0)>0)Sw(b);g=xx(b,f,h-f|0)|0;f=c[j>>2]|0;c[f>>2]=g;c[f+8>>2]=(a[g+4>>0]|64)&255;f=c[j>>2]|0;g=f+16|0;c[j>>2]=g;if(!h)break;switch(c[f+8>>2]&15){case 4:{g=f;k=15;break}case 3:{if((c[(c[i>>2]|0)+12>>2]|0)>0){Sw(b);g=c[j>>2]|0}g=g+-16|0;Xw(b,g);k=15;break}default:g=0}if((k|0)==15){k=0;g=(c[g>>2]|0)+16|0}e=my(b,g,285924,d)|0;f=c[j>>2]|0;g=f+-16|0;f=f+-32|0;do{c[r>>2]=c[f>>2];c[r+4>>2]=c[f+4>>2];c[r+8>>2]=c[f+8>>2];c[r+12>>2]=c[f+12>>2];c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[f+12>>2]=c[g+12>>2];c[g>>2]=c[r>>2];c[g+4>>2]=c[r+4>>2];c[g+8>>2]=c[r+8>>2];c[g+12>>2]=c[r+12>>2];f=f+16|0;g=g+-16|0}while(f>>>0<g>>>0);c[j>>2]=(c[j>>2]|0)+-16;g=oP(e,285926)|0;if(g|0){k=19;break}c[n>>2]=e;Vv(b,285928,n)|0;f=c[j>>2]|0;g=f+-16|0;f=f+-32|0;do{c[r>>2]=c[f>>2];c[r+4>>2]=c[f+4>>2];c[r+8>>2]=c[f+8>>2];c[r+12>>2]=c[f+12>>2];c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[f+12>>2]=c[g+12>>2];c[g>>2]=c[r>>2];c[g+4>>2]=c[r+4>>2];c[g+8>>2]=c[r+8>>2];c[g+12>>2]=c[r+12>>2];f=f+16|0;g=g+-16|0}while(f>>>0<g>>>0);c[j>>2]=(c[j>>2]|0)+-16;by(q);f=h}if((k|0)==19){uP(g)|0;r=e;l=s;return r|0}d=c[m>>2]|0;f=c[q>>2]|0;g=c[o>>2]|0;if((c[(c[d+12>>2]|0)+12>>2]|0)>0)Sw(d);o=xx(d,f,g)|0;f=d+8|0;g=c[f>>2]|0;c[g>>2]=o;c[g+8>>2]=(a[o+4>>0]|64)&255;g=c[f>>2]|0;c[f>>2]=g+16;if((c[q>>2]|0)==(p|0)){r=0;l=s;return r|0}d=g;g=g+-16|0;do{c[r>>2]=c[g>>2];c[r+4>>2]=c[g+4>>2];c[r+8>>2]=c[g+8>>2];c[r+12>>2]=c[g+12>>2];c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];c[d>>2]=c[r>>2];c[d+4>>2]=c[r+4>>2];c[d+8>>2]=c[r+8>>2];c[d+12>>2]=c[r+12>>2];g=g+16|0;d=d+-16|0}while(g>>>0<d>>>0);c[f>>2]=(c[f>>2]|0)+-16;r=0;l=s;return r|0}function PA(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+16|0;h=i+8|0;g=i;e=my(b,e,314352,285852)|0;f=XO(e,45)|0;do if(f){if((c[(c[b+12>>2]|0)+12>>2]|0)>0)Sw(b);e=xx(b,e,f-e|0)|0;j=b+8|0;k=c[j>>2]|0;c[k>>2]=e;c[k+8>>2]=(a[e+4>>0]|64)&255;c[j>>2]=(c[j>>2]|0)+16;c[g>>2]=e+16;e=QA(b,d,Vv(b,285854,g)|0)|0;if((e|0)==2){e=f+1|0;break}else{k=e;l=i;return k|0}}while(0);c[h>>2]=e;k=QA(b,d,Vv(b,285854,h)|0)|0;l=i;return k|0}function QA(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;i=n;k=b+12|0;g=(c[k>>2]|0)+40|0;c[i>>2]=320068;c[i+8>>2]=2;m=b+8|0;h=c[m>>2]|0;i=Cx(c[g>>2]|0,i)|0;c[h>>2]=c[i>>2];c[h+4>>2]=c[i+4>>2];c[h+8>>2]=c[i+8>>2];c[h+12>>2]=c[i+12>>2];h=c[m>>2]|0;i=h+16|0;c[m>>2]=i;g=(c[k>>2]|0)+280+(((d>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(d,f+16|0)|0){f=xx(b,d,WO(d)|0)|0;c[g>>2]=f}c[i>>2]=f;c[h+24>>2]=(a[f+4>>0]|64)&255;g=c[m>>2]|0;c[m>>2]=g+16;Kx(b,h,g,g);g=c[m>>2]|0;switch(c[g+-8>>2]&15){case 7:{f=g+-32|0;c[m>>2]=f;break}case 2:{i=c[g+-16>>2]|0;f=g+-32|0;c[m>>2]=f;if(!i)j=8;break}default:{c[m>>2]=g+-32;j=8}}if((j|0)==8){f=c[k>>2]|0;if((c[f+12>>2]|0)>0){Sw(b);f=c[k>>2]|0}g=f+280+(((285865>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(285865,f+16|0)|0){f=xx(b,285865,58)|0;c[g>>2]=f}b=c[m>>2]|0;c[b>>2]=f;c[b+8>>2]=(a[f+4>>0]|64)&255;b=1;k=(c[m>>2]|0)+16|0;c[m>>2]=k;l=n;return b|0}if((a[e>>0]|0)==42){c[f>>2]=1;c[g+-24>>2]=1;b=0;k=g+-16|0;c[m>>2]=k;l=n;return b|0}f=c[k>>2]|0;if((c[f+12>>2]|0)>0){Sw(b);f=c[k>>2]|0}g=f+280+(((285865>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(285865,f+16|0)|0){f=xx(b,285865,58)|0;c[g>>2]=f}b=c[m>>2]|0;c[b>>2]=f;c[b+8>>2]=(a[f+4>>0]|64)&255;b=2;k=(c[m>>2]|0)+16|0;c[m>>2]=k;l=n;return b|0}function RA(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;g=a+16|0;d=c[c[g>>2]>>2]|0;e=d+16|0;i=a+8|0;b=c[i>>2]|0;e=e>>>0<b>>>0?e:316344;switch(c[e+8>>2]&15){case 4:{b=e;h=5;break}case 3:{if((c[(c[a+12>>2]|0)+12>>2]|0)>0){Sw(a);d=c[c[g>>2]>>2]|0;b=c[i>>2]|0}h=d+16|0;b=h>>>0<b>>>0?h:316344;Xw(a,b);h=5;break}default:{Yx(a,1,287721);f=0}}if((h|0)==5)f=(c[b>>2]|0)+16|0;d=c[c[g>>2]>>2]|0;e=d+32|0;b=c[i>>2]|0;e=e>>>0<b>>>0?e:316344;switch(c[e+8>>2]&15){case 4:{b=e;h=11;break}case 3:{if((c[(c[a+12>>2]|0)+12>>2]|0)>0){Sw(a);d=c[c[g>>2]>>2]|0;b=c[i>>2]|0}h=d+32|0;b=h>>>0<b>>>0?h:316344;Xw(a,b);h=11;break}default:{Yx(a,2,287721);b=0}}if((h|0)==11)b=(c[b>>2]|0)+16|0;e=QA(a,f,b)|0;if(!e){j=1;l=k;return j|0}d=c[i>>2]|0;c[d+8>>2]=0;c[i>>2]=d+16;b=d;d=d+-16|0;do{c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];c[b+8>>2]=c[j+8>>2];c[b+12>>2]=c[j+12>>2];d=d+16|0;b=b+-16|0}while(d>>>0<b>>>0);Uv(a,(e|0)==1?285995:286002);j=3;l=k;return j|0}function SA(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;n=o;j=a+16|0;d=c[c[j>>2]>>2]|0;e=d+16|0;m=a+8|0;b=c[m>>2]|0;e=e>>>0<b>>>0?e:316344;switch(c[e+8>>2]&15){case 4:{b=e;h=5;break}case 3:{if((c[(c[a+12>>2]|0)+12>>2]|0)>0){Sw(a);d=c[c[j>>2]>>2]|0;b=c[m>>2]|0}h=d+16|0;b=h>>>0<b>>>0?h:316344;Xw(a,b);h=5;break}default:{Yx(a,1,287721);i=0}}if((h|0)==5)i=(c[b>>2]|0)+16|0;d=c[c[j>>2]>>2]|0;e=d+32|0;b=c[m>>2]|0;e=e>>>0<b>>>0?e:316344;switch(c[e+8>>2]&15){case 4:{b=e;h=11;break}case 3:{if((c[(c[a+12>>2]|0)+12>>2]|0)>0){Sw(a);d=c[c[j>>2]>>2]|0;b=c[m>>2]|0}h=d+32|0;b=h>>>0<b>>>0?h:316344;Xw(a,b);h=11;break}default:{Yx(a,2,287721);g=0}}if((h|0)==11)g=(c[b>>2]|0)+16|0;d=c[c[j>>2]>>2]|0;b=d+48|0;e=c[m>>2]|0;a:do if(!(b>>>0>=e>>>0|(b|0)==316344)?(f=c[d+56>>2]|0,(f&15|0)!=0):0){switch(f&15){case 4:break;case 3:{h=16;break}default:{Yx(a,3,287721);f=0;break a}}if((h|0)==16){if((c[(c[a+12>>2]|0)+12>>2]|0)>0){Sw(a);d=c[c[j>>2]>>2]|0;b=c[m>>2]|0}else b=e;f=d+48|0;b=f>>>0<b>>>0?f:316344;Xw(a,b)}f=(c[b>>2]|0)+16|0}else f=314352;while(0);d=c[c[j>>2]>>2]|0;e=d+64|0;b=c[m>>2]|0;b:do if(!(e>>>0>=b>>>0|(e|0)==316344)?(k=c[d+72>>2]|0,(k&15|0)!=0):0){switch(k&15){case 4:{b=e;break}case 3:{h=24;break}default:{Yx(a,4,287721);b=0;break b}}if((h|0)==24){if((c[(c[a+12>>2]|0)+12>>2]|0)>0){Sw(a);d=c[c[j>>2]>>2]|0;b=c[m>>2]|0}k=d+64|0;b=k>>>0<b>>>0?k:316344;Xw(a,b)}b=(c[b>>2]|0)+16|0}else b=308626;while(0);if(OA(a,i,g,f,b)|0){n=1;l=o;return n|0}d=c[m>>2]|0;c[d+8>>2]=0;c[m>>2]=d+16;b=d;d=d+-16|0;do{c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];c[n+12>>2]=c[d+12>>2];c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];c[b>>2]=c[n>>2];c[b+4>>2]=c[n+4>>2];c[b+8>>2]=c[n+8>>2];c[b+12>>2]=c[n+12>>2];d=d+16|0;b=b+-16|0}while(d>>>0<b>>>0);n=2;l=o;return n|0}function TA(a){a=a|0;var b=0,d=0;b=Xx(a,1)|0;d=c[a+12>>2]|0;a=b+4|0;c[b>>2]=jg[c[d>>2]&31](c[d+4>>2]|0,c[b>>2]|0,c[a>>2]<<2,0)|0;c[a>>2]=0;return 0}function UA(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;j=m+8|0;i=m;e=oB(a,1,0)|0;f=c[c[a+16>>2]>>2]|0;b=f+32|0;g=a+8|0;h=c[g>>2]|0;b=b>>>0<h>>>0?b:316344;switch(c[b+8>>2]|0){case 1:{k=2;break}case 0:{Wx(a,286696,i);Wx(a,286696,j);l=m;return 0}default:{}}if((k|0)==2?(c[b>>2]|0)==0:0){Wx(a,286696,i);Wx(a,286696,j);l=m;return 0}k=f+16|0;k=c[(k>>>0<h>>>0?k:316344)>>2]|0;n=k+16|0;b=c[n+4>>2]|0;f=h;c[f>>2]=c[n>>2];c[f+4>>2]=b;c[h+8>>2]=d[k+6>>0];c[g>>2]=(c[g>>2]|0)+16;qB(a,0,0,e);c[g>>2]=(c[g>>2]|0)+-16;Wx(a,286696,i);Wx(a,286696,j);l=m;return 0}function VA(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;f=l;l=l+16|0;e=f+8|0;b=Xx(a,1)|0;Wx(a,286696,f);if(c[b>>2]|0){Wx(a,286696,e);l=f;return 0}i=(c[c[a+16>>2]>>2]|0)+16|0;g=a+8|0;h=c[g>>2]|0;i=c[(i>>>0<h>>>0?i:316344)>>2]|0;m=i+16|0;k=c[m+4>>2]|0;j=h;c[j>>2]=c[m>>2];c[j+4>>2]=k;c[h+8>>2]=d[i+6>>0];c[g>>2]=(c[g>>2]|0)+16;qB(a,0,0,b+8|0);c[g>>2]=(c[g>>2]|0)+-16;FB(a,b)|0;Wx(a,286696,e);l=f;return 0}function WA(f){f=f|0;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,O=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.0;na=l;l=l+5168|0;ja=na+64|0;ia=na+56|0;ha=na+48|0;ga=na+40|0;fa=na+32|0;ea=na+24|0;ma=na;n=na+360|0;da=na+352|0;ca=na+328|0;m=na+72|0;oB(f,1,0)|0;g=Xx(f,1)|0;i=c[g>>2]|0;if(!i){Y=f+16|0;X=(c[c[Y>>2]>>2]|0)+16|0;la=f+8|0;i=c[la>>2]|0;X=c[(X>>>0<i>>>0?X:316344)>>2]|0;T=X+16|0;U=c[T+4>>2]|0;V=i;c[V>>2]=c[T>>2];c[V+4>>2]=U;c[i+8>>2]=d[X+6>>0];c[la>>2]=(c[la>>2]|0)+16;qB(f,0,0,g+8|0);c[la>>2]=(c[la>>2]|0)+-16;i=FB(f,g)|0}else{Y=f+16|0;la=f+8|0}j=c[c[Y>>2]>>2]|0;k=j+32|0;g=c[la>>2]|0;k=k>>>0<g>>>0?k:316344;switch(c[k+8>>2]&15){case 4:{g=k;W=8;break}case 3:{if((c[(c[f+12>>2]|0)+12>>2]|0)>0){Sw(f);j=c[c[Y>>2]>>2]|0;g=c[la>>2]|0}W=j+32|0;g=W>>>0<g>>>0?W:316344;Xw(f,g);W=8;break}default:{Yx(f,2,287721);X=0;j=0}}if((W|0)==8){g=c[g>>2]|0;if((a[g+4>>0]|0)==4)j=d[g+7>>0]|0;else j=c[g+12>>2]|0;X=g+16|0}g=$x(f,3,1,0)|0;k=z;if((k|0)>0|(k|0)==0&g>>>0>0)g=g>>>0>j>>>0?j:g+-1|0;else{g=zQ(0,0,g|0,k|0)|0;g=j>>>0<g>>>0?0:j-g|0}R=c[la>>2]|0;T=R-((c[c[Y>>2]>>2]|0)+16)|0;V=T>>4;c[R+8>>2]=0;k=R+16|0;c[la>>2]=k;c[k>>2]=m;c[R+24>>2]=2;R=c[la>>2]|0;k=R+16|0;c[la>>2]=k;U=c[c[Y>>2]>>2]|0;U=c[(U>>>0<R>>>0?U+16|0:316344)>>2]|0;F=U+16|0;E=c[F+4>>2]|0;c[k>>2]=c[F>>2];c[k+4>>2]=E;c[R+24>>2]=d[U+6>>0];R=c[la>>2]|0;U=R+16|0;c[la>>2]=U;k=X+g|0;E=X+j|0;c[da>>2]=n+4800;c[n+4>>2]=6676;c[n>>2]=k;c[n+8>>2]=0;c[U>>2]=n;c[R+24>>2]=2;c[la>>2]=(c[la>>2]|0)+16;R=V+2|0;U=X;F=ca+16|0;G=ca+8|0;H=ca+4|0;I=ca+12|0;J=((j|0)<0)<<31>>31;K=ca+20|0;L=f+24|0;M=f+106|0;O=f+104|0;S=f+12|0;Q=f+28|0;D=32;t=0;u=0;g=n+12|0;a:while(1){b:do switch(a[i>>0]|0){case 9:{W=20;break a}case 20:{n=(d[i+1>>0]|0)>>>4;a[m+(t<<3)+7>>0]=n+1;n=k+(0-n)|0;W=201;break}case 8:{v=u;w=t;x=D;y=m;C=k;i=c[g+-8>>2]|0;g=g+-12|0;u=v;t=w;D=x;m=y;k=C;continue a}case 0:{if(k>>>0<E>>>0){v=g;w=u;x=t;y=D;C=m;k=k+1|0;i=i+4|0;g=v;u=w;t=x;D=y;m=C;continue a}else i=t;break}case 3:if(k>>>0<E>>>0){s=g;v=u;w=t;x=D;y=m;C=k;i=i+8|0;g=s;u=v;t=w;D=x;m=y;k=C;continue a}else{s=g;v=u;w=t;x=D;y=m;C=k;i=i+(c[i+4>>2]<<2)|0;g=s;u=v;t=w;D=x;m=y;k=C;continue a}case 1:{if(k>>>0<E>>>0?(a[k>>0]|0)==(a[i+1>>0]|0):0){v=g;w=u;x=t;y=D;C=m;k=k+1|0;i=i+4|0;g=v;u=w;t=x;D=y;m=C;continue a}else i=t;break}case 4:if(k>>>0<E>>>0?(a[k>>0]|0)==(a[i+1>>0]|0):0){s=g;v=u;w=t;x=D;y=m;C=k;i=i+8|0;g=s;u=v;t=w;D=x;m=y;k=C;continue a}else{s=g;v=u;w=t;x=D;y=m;C=k;i=i+(c[i+4>>2]<<2)|0;g=s;u=v;t=w;D=x;m=y;k=C;continue a}case 2:{C=d[k>>0]|0;if(k>>>0<E>>>0?(1<<(C&7)&d[i+4+(C>>>3)>>0]|0)!=0:0){v=g;w=u;x=t;y=D;C=m;k=k+1|0;i=i+36|0;g=v;u=w;t=x;D=y;m=C;continue a}else i=t;break}case 5:{C=d[k>>0]|0;if(k>>>0<E>>>0?(1<<(C&7)&d[i+8+(C>>>3)>>0]|0)!=0:0){s=g;v=u;w=t;x=D;y=m;C=k;i=i+40|0;g=s;u=v;t=w;D=x;m=y;k=C;continue a}else{s=g;v=u;w=t;x=D;y=m;C=k;i=i+(c[i+4>>2]<<2)|0;g=s;u=v;t=w;D=x;m=y;k=C;continue a}}case 7:{n=d[i+1>>0]|0;if((n|0)>(k-U|0))i=t;else{v=g;w=u;x=t;y=D;C=m;k=k+(0-n)|0;i=i+4|0;g=v;u=w;t=x;D=y;m=C;continue a}break}case 6:{c:do if(k>>>0<E>>>0){n=i+4|0;do{C=d[k>>0]|0;if(!(1<<(C&7)&d[n+(C>>>3)>>0]))break c;k=k+1|0}while(k>>>0<E>>>0)}while(0);v=g;w=u;x=t;y=D;C=m;i=i+36|0;g=v;u=w;t=x;D=y;m=C;continue a}case 11:{s=g;v=u;w=t;x=D;y=m;C=k;i=i+(c[i+4>>2]<<2)|0;g=s;u=v;t=w;D=x;m=y;k=C;continue a}case 10:{if((g|0)==(c[da>>2]|0))g=gC(f,da,V)|0;c[g+4>>2]=i+(c[i+4>>2]<<2);c[g>>2]=k;c[g+8>>2]=t;v=u;w=t;x=D;y=m;C=k;i=i+8|0;g=g+12|0;u=v;t=w;D=x;m=y;k=C;continue a}case 12:{if((g|0)==(c[da>>2]|0))g=gC(f,da,V)|0;c[g>>2]=0;c[g+4>>2]=i+8;v=u;w=t;x=D;y=m;C=k;i=i+(c[i+4>>2]<<2)|0;g=g+12|0;u=v;t=w;D=x;m=y;k=C;continue a}case 14:{v=u;w=t;x=D;y=m;C=k;i=i+(c[i+4>>2]<<2)|0;g=g+-12|0;u=v;t=w;D=x;m=y;k=C;continue a}case 15:{c[g+-12>>2]=k;c[g+-4>>2]=t;s=g;v=u;w=t;x=D;y=m;C=k;i=i+(c[i+4>>2]<<2)|0;g=s;u=v;t=w;D=x;m=y;k=C;continue a}case 16:{w=g+-12|0;x=u;y=D;C=m;k=c[w>>2]|0;t=c[g+-4>>2]|0;i=i+(c[i+4>>2]<<2)|0;g=w;u=x;D=y;m=C;continue a}case 17:{i=t;g=g+-12|0;break}case 18:{i=t;break}case 23:{q=c[la>>2]|0;r=c[Y>>2]|0;w=q-((c[r>>2]|0)+16)>>4;c[F>>2]=X;c[G>>2]=f;c[H>>2]=m;c[I>>2]=V;C=m+(t<<3)|0;n=C;o=0;while(1){x=n;while(1){n=x;x=x+-8|0;if(!(a[n+-2>>0]|0)){W=71;break}if(!(a[n+-1>>0]|0)){W=73;break}}if((W|0)==71){n=x;o=o+1|0;continue}else if((W|0)==73){W=0;if(!o)break;else{n=x;o=o+-1|0;continue}}}y=w+1|0;o=q;d:do if(x>>>0<C>>>0){n=x;while(1){if((a[n+6>>0]|0)==13)break;n=n+8|0;if(n>>>0>=C>>>0){v=0;break d}}v=e[n+4>>1]|0}else v=0;while(0);a[m+(t<<3)+6>>0]=0;c[C>>2]=k;c[ca>>2]=x;c[K>>2]=0;c[ma>>2]=24;do if(((c[L>>2]|0)-q|0)>384){$=o;aa=24;W=82}else{if(((q-(c[Q>>2]|0)>>4)+5|0)<=999976?(rw(f,166,ma)|0)==0:0){$=c[la>>2]|0;aa=c[ma>>2]|0;W=82;break}c[ea>>2]=287925;Wx(f,282290,ea)}while(0);if((W|0)==82?(W=0,Z=r+4|0,_=$+(aa<<4)|0,(c[Z>>2]|0)>>>0<_>>>0):0)c[Z>>2]=_;Xv(c[G>>2]|0,(c[I>>2]|0)+3|0,e[(c[ca>>2]|0)+4>>1]|0,0)|0;r=c[la>>2]|0;q=(c[c[Y>>2]>>2]|0)+32|0;q=q>>>0<r>>>0?q:316344;c[r>>2]=c[q>>2];c[r+4>>2]=c[q+4>>2];c[r+8>>2]=c[q+8>>2];c[r+12>>2]=c[q+12>>2];r=c[la>>2]|0;q=k+1-(c[F>>2]|0)|0;n=r+16|0;c[n>>2]=q;c[n+4>>2]=((q|0)<0)<<31>>31;c[r+24>>2]=19;c[la>>2]=r+32;r=c[ca>>2]|0;n=r+8|0;c[ca>>2]=n;q=a[r+7>>0]|0;if(!(q<<24>>24)){if(a[r+14>>0]|0){n=0;do{n=(hC(ca)|0)+n|0;o=c[ca>>2]|0}while((a[o+6>>0]|0)!=0);if(!n){n=o;W=93}}else W=93;if((W|0)==93){W=0;q=c[G>>2]|0;o=c[r>>2]|0;n=(c[n>>2]|0)-o|0;if((c[(c[q+12>>2]|0)+12>>2]|0)>0)Sw(q);s=xx(q,o,n)|0;o=q+8|0;n=c[o>>2]|0;c[n>>2]=s;c[n+8>>2]=(a[s+4>>0]|64)&255;c[o>>2]=(c[o>>2]|0)+16;o=c[ca>>2]|0;n=1}c[ca>>2]=o+8}else{o=c[G>>2]|0;n=c[r>>2]|0;if((c[(c[o+12>>2]|0)+12>>2]|0)>0)Sw(o);r=xx(o,n,(q&255)+-1|0)|0;n=o+8|0;s=c[n>>2]|0;c[s>>2]=r;c[s+8>>2]=(a[r+4>>0]|64)&255;c[n>>2]=(c[n>>2]|0)+16;n=1}n=(c[la>>2]|0)+(-3-n<<4)|0;o=(b[M>>1]|0)+1<<16>>16;b[M>>1]=o;if((o&65535)>199){if(o<<16>>16==200){W=99;break a}if((o&65535)>224){W=101;break a}}b[O>>1]=(b[O>>1]|0)+1<<16>>16;if(!(uw(f,n,-1)|0))Sx(f);b[O>>1]=(b[O>>1]|0)+-1<<16>>16;b[M>>1]=(b[M>>1]|0)+-1<<16>>16;o=c[Y>>2]|0;q=o+4|0;n=c[la>>2]|0;if((c[q>>2]|0)>>>0<n>>>0)c[q>>2]=n;if(!v){q=o;r=n;n=0}else{if((v|0)<=(w|0)){s=v;while(1){o=n+-16|0;q=(c[c[Y>>2]>>2]|0)+(v<<4)|0;n=q>>>0<n>>>0?q:316344;q=n+16|0;if(q>>>0<o>>>0){r=o;do{c[ma>>2]=c[q>>2];c[ma+4>>2]=c[q+4>>2];c[ma+8>>2]=c[q+8>>2];c[ma+12>>2]=c[q+12>>2];c[q>>2]=c[r>>2];c[q+4>>2]=c[r+4>>2];c[q+8>>2]=c[r+8>>2];c[q+12>>2]=c[r+12>>2];c[r>>2]=c[ma>>2];c[r+4>>2]=c[ma+4>>2];c[r+8>>2]=c[ma+8>>2];c[r+12>>2]=c[ma+12>>2];q=q+16|0;r=r+-16|0}while(q>>>0<r>>>0)}if(n>>>0<o>>>0)do{c[ma>>2]=c[n>>2];c[ma+4>>2]=c[n+4>>2];c[ma+8>>2]=c[n+8>>2];c[ma+12>>2]=c[n+12>>2];c[n>>2]=c[o>>2];c[n+4>>2]=c[o+4>>2];c[n+8>>2]=c[o+8>>2];c[n+12>>2]=c[o+12>>2];c[o>>2]=c[ma>>2];c[o+4>>2]=c[ma+4>>2];c[o+8>>2]=c[ma+8>>2];c[o+12>>2]=c[ma+12>>2];n=n+16|0;o=o+-16|0}while(n>>>0<o>>>0);n=(c[la>>2]|0)+-16|0;c[la>>2]=n;if((s|0)>=(w|0))break;else s=s+1|0}o=c[Y>>2]|0}q=o;r=n;n=y-v|0}w=t-(C-x>>3)|0;u=u-n|0;v=y-n|0;s=k-U|0;t=(v|0)>0;do if(!t){if((v|0)>=-1000999){k=r+(v<<4)|0;break}if((v|0)==-1001e3){k=(c[S>>2]|0)+40|0;break}k=-1001e3-v|0;n=c[q>>2]|0;if((c[n+8>>2]|0)==22)k=316344;else{C=c[n>>2]|0;k=(k|0)>(d[C+6>>0]|0)?316344:C+16+(k+-1<<4)|0}}else{k=(c[q>>2]|0)+(v<<4)|0;k=k>>>0<r>>>0?k:316344}while(0);switch(c[k+8>>2]|0){case 0:{W=125;break}case 1:{if(!(c[k>>2]|0))W=125;break}default:{}}if((W|0)==125){W=0;if(!t){c[la>>2]=r+(v<<4);i=w;break b}i=c[q>>2]|0;n=i+(v<<4)|0;if(r>>>0<n>>>0){i=(i+(v+-1<<4)+8+4+(3-r)|0)>>>4;k=r;do{c[k+8>>2]=0;k=k+16|0}while(k>>>0<n>>>0);c[la>>2]=r+(i+1<<4)}c[la>>2]=n;i=w;break b}do if(t){k=c[q>>2]|0;n=k+(v<<4)|0;if(n>>>0<r>>>0){k=n;W=140}else W=144}else{if((v|0)>=-1000999){k=r+(v<<4)|0;W=140;break}if((v|0)==-1001e3){k=(c[S>>2]|0)+40|0;W=140;break}n=-1001e3-v|0;k=c[q>>2]|0;if((c[k+8>>2]|0)!=22){o=c[k>>2]|0;if((n|0)>(d[o+6>>0]|0))W=150;else{k=o+16+(n+-1<<4)|0;W=140}}else{n=316344;W=151}}while(0);do if((W|0)==140){W=0;if((k|0)!=316344?(c[k+8>>2]&15|0)==1:0){k=s;break}if(t){k=c[q>>2]|0;W=144;break}if((v|0)>=-1000999){n=r+(v<<4)|0;W=151;break}if((v|0)!=-1001e3){k=c[q>>2]|0;if((c[k+8>>2]|0)==22){n=316344;W=151;break}else{n=-1001e3-v|0;W=150;break}}else{n=(c[S>>2]|0)+40|0;W=151;break}}while(0);if((W|0)==144){n=k+(v<<4)|0;n=n>>>0<r>>>0?n:316344;W=151}else if((W|0)==150){C=c[k>>2]|0;n=(n|0)>(d[C+6>>0]|0)?316344:C+16+(n+-1<<4)|0;W=151}do if((W|0)==151){W=0;k=c[n+8>>2]|0;do if((k|0)!=19){e:while(1){switch(k|0){case 3:{W=155;break e}case 19:{W=158;break e}default:{}}if((k&15|0)!=4){W=166;break}o=Ww((c[n>>2]|0)+16|0,ma)|0;k=c[n>>2]|0;if((a[k+4>>0]|0)==4)k=d[k+7>>0]|0;else k=c[k+12>>2]|0;if((o|0)!=(k+1|0)){W=166;break}n=ma;k=c[ma+8>>2]|0}if((W|0)==155){oa=+h[n>>3];p=+A(+oa);if(!(oa!=p)?p>=-9223372036854775808.0&p<9223372036854775808.0:0){k=~~p>>>0;n=+B(p)>=1.0?(p>0.0?~~+P(+A(p/4294967296.0),4294967295.0)>>>0:~~+N((p-+(~~p>>>0))/4294967296.0)>>>0):0;W=165}else W=166}else if((W|0)==158){k=c[n>>2]|0;n=c[n+4>>2]|0;W=165}if((W|0)==165){W=0;o=k;break}else if((W|0)==166){W=0;o=0;n=0;break}}else{o=c[n>>2]|0;n=c[n+4>>2]|0}while(0);k=yQ(o|0,n|0,-1,-1)|0;C=z;y=((s|0)<0)<<31>>31;if((n|0)>(y|0)|(n|0)==(y|0)&o>>>0>s>>>0?!((C|0)>(J|0)|(C|0)==(J|0)&k>>>0>j>>>0):0)break;Wx(f,287777,ga)}while(0);n=c[la>>2]|0;o=n+-16|0;r=c[Y>>2]|0;do if(!t){if((v|0)>=-1000999){n=n+(v<<4)|0;break}if((v|0)==-1001e3){n=(c[S>>2]|0)+40|0;break}q=-1001e3-v|0;n=c[r>>2]|0;if((c[n+8>>2]|0)==22)n=316344;else{n=c[n>>2]|0;n=(q|0)>(d[n+6>>0]|0)?316344:n+16+(q+-1<<4)|0}}else{C=(c[r>>2]|0)+(v<<4)|0;n=C>>>0<n>>>0?C:316344}while(0);q=n+16|0;if(q>>>0<o>>>0){r=o;do{c[ma>>2]=c[q>>2];c[ma+4>>2]=c[q+4>>2];c[ma+8>>2]=c[q+8>>2];c[ma+12>>2]=c[q+12>>2];c[q>>2]=c[r>>2];c[q+4>>2]=c[r+4>>2];c[q+8>>2]=c[r+8>>2];c[q+12>>2]=c[r+12>>2];c[r>>2]=c[ma>>2];c[r+4>>2]=c[ma+4>>2];c[r+8>>2]=c[ma+8>>2];c[r+12>>2]=c[ma+12>>2];q=q+16|0;r=r+-16|0}while(q>>>0<r>>>0)}if(n>>>0<o>>>0)do{c[ma>>2]=c[n>>2];c[ma+4>>2]=c[n+4>>2];c[ma+8>>2]=c[n+8>>2];c[ma+12>>2]=c[n+12>>2];c[n>>2]=c[o>>2];c[n+4>>2]=c[o+4>>2];c[n+8>>2]=c[o+8>>2];c[n+12>>2]=c[o+12>>2];c[o>>2]=c[ma>>2];c[o+4>>2]=c[ma+4>>2];c[o+8>>2]=c[ma+8>>2];c[o+12>>2]=c[ma+12>>2];n=n+16|0;o=o+-16|0}while(n>>>0<o>>>0);n=(c[la>>2]|0)+-16|0;c[la>>2]=n;if((k|0)==-1)i=w;else{k=X+k|0;n=n-((c[c[Y>>2]>>2]|0)+16)|0;q=(n>>4)-v|0;u=u+1+q|0;if((q|0)>-1){if((n|0)>524240)Wx(f,287825,ha);n=w+3+q|0;if((n|0)<(D|0))o=D;else{if((n|0)>134217726)Wx(f,287951,ia);o=gw(f,n<<4)|0;PQ(o|0,m|0,w<<3|0)|0;Rv(f,R);c[la>>2]=(c[la>>2]|0)+-16;m=o;o=n<<1}a[m+(w<<3)+6>>0]=14;a[m+(w<<3)+7>>0]=0;b[m+(w<<3)+4>>1]=0;t=v+65535|0;s=q+2|0;r=w+1|0;q=1;while(1){a[m+(r<<3)+6>>0]=13;D=q+w|0;a[m+(D<<3)+7>>0]=1;b[m+(D<<3)+4>>1]=t+q;c[m+(D<<3)>>2]=k;q=q+1|0;if((q|0)==(s|0))break;else r=q+w|0}D=s+w|0;a[m+(D<<3)+6>>0]=0;a[m+(D<<3)+7>>0]=1;c[m+(D<<3)>>2]=k}else{o=D;n=w}C=g;D=o;t=n;i=i+4|0;g=C;continue a}break}case 22:{n=t+-1|0;o=m+(n<<3)+7|0;if((a[o>>0]|0)==0?(ba=k-(c[m+(n<<3)>>2]|0)|0,(ba|0)<255):0){a[o>>0]=ba+1;s=g;v=u;w=t;x=D;y=m;C=k;i=i+4|0;g=s;u=v;t=w;D=x;m=y;k=C;continue a}a[m+(t<<3)+7>>0]=1;n=k;W=201;break}case 21:{a[m+(t<<3)+7>>0]=0;n=k;W=201;break}default:{ka=0;break a}}while(0);if((W|0)==201){W=0;c[m+(t<<3)>>2]=n;b[m+(t<<3)+4>>1]=b[i+2>>1]|0;a[m+(t<<3)+6>>0]=a[i+1>>0]&15;o=t+1|0;if((o|0)<(D|0))n=D;else{if((t|0)>134217725)Wx(f,287951,ja);n=gw(f,o<<4)|0;PQ(n|0,m|0,o<<3|0)|0;Rv(f,R);c[la>>2]=(c[la>>2]|0)+-16;m=n;n=o<<1}x=g;y=u;C=k;D=n;t=o;i=i+4|0;g=x;u=y;k=C;continue}v=g;while(1){g=v+-12|0;k=c[g>>2]|0;if(!k)v=g;else break}t=c[v+-4>>2]|0;if((u|0)>0){n=m+(i<<3)|0;f:do if((t|0)<(i|0)){i=m+(t<<3)|0;while(1){if((a[i+6>>0]|0)==13)break;i=i+8|0;if(i>>>0>=n>>>0){i=0;break f}}C=b[i+4>>1]|0;o=C&65535;if(C<<16>>16){i=c[la>>2]|0;n=c[c[Y>>2]>>2]|0;q=i-(n+16)>>4;r=i;s=n+(o<<4)|0;if(r>>>0<s>>>0){i=(n+(o+-1<<4)+8+4+(3-i)|0)>>>4;n=r;do{c[n+8>>2]=0;n=n+16|0}while(n>>>0<s>>>0);c[la>>2]=r+(i+1<<4)}c[la>>2]=s;i=1-o+q|0}else i=0}else i=0;while(0);i=u-i|0}else i=u;y=D;C=m;u=i;i=c[v+-8>>2]|0;D=y;m=C}if((W|0)==20){a[m+(t<<3)+6>>0]=0;c[m+(t<<3)>>2]=0;ka=k}else if((W|0)==99)mw(f,279953,fa);else if((W|0)==101)qw(f,6);if(!ka){ma=c[la>>2]|0;c[ma+8>>2]=0;c[la>>2]=ma+16;ma=1;l=na;return ma|0}g=c[Y>>2]|0;do if((T|0)<=-32){if((R|0)>=-1000999){g=(c[la>>2]|0)+(R<<4)|0;break}if((R|0)==-1001e3){g=(c[S>>2]|0)+40|0;break}i=-1001002-V|0;g=c[g>>2]|0;if((c[g+8>>2]|0)==22)g=316344;else{g=c[g>>2]|0;g=(i|0)>(d[g+6>>0]|0)?316344:g+16+(i+-1<<4)|0}}else{g=(c[g>>2]|0)+(R<<4)|0;g=g>>>0<(c[la>>2]|0)>>>0?g:316344}while(0);switch(c[g+8>>2]&15){case 7:{g=(c[g>>2]|0)+24|0;break}case 2:{g=c[g>>2]|0;break}default:g=0}if(a[g+6>>0]|0){c[ma>>2]=g;c[ma+4>>2]=g;c[ma+8>>2]=f;c[ma+16>>2]=X;c[ma+20>>2]=0;c[ma+12>>2]=V;g=0;do g=(hC(ma)|0)+g|0;while((a[(c[ma>>2]|0)+6>>0]|0)!=0);if(!g)W=223}else W=223;if((W|0)==223){ka=1-U+ka|0;g=c[la>>2]|0;ma=g;c[ma>>2]=ka;c[ma+4>>2]=((ka|0)<0)<<31>>31;c[g+8>>2]=19;c[la>>2]=g+16;g=1}ma=g;l=na;return ma|0}function XA(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=l;l=l+16|0;n=s;e=oB(b,1,0)|0;r=EB(e)|0;if((r|0)<=-1)Vx(b,1,286608)|0;if(CB(e)|0)Vx(b,1,286642)|0;if((r|0)>=256)Vx(b,1,286664)|0;k=oB(b,1,n)|0;p=gw(b,(c[n>>2]<<3)+16|0)|0;o=b+12|0;g=c[o>>2]|0;q=b+8|0;h=c[q>>2]|0;f=g+280+(((286024>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286024,e+16|0)|0){e=xx(b,286024,12)|0;c[f>>2]=e}c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;h=c[q>>2]|0;c[q>>2]=h+16;Kx(b,g+40|0,h,h);h=c[q>>2]|0;f=h+-16|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];h=c[q>>2]|0;c[q>>2]=h+16;f=h+-32|0;e=c[f>>2]|0;u=h;t=c[u+4>>2]|0;g=e+16|0;c[g>>2]=c[u>>2];c[g+4>>2]=t;a[e+6>>0]=c[h+8>>2];e=c[q>>2]|0;do if(((c[e+-8>>2]&64|0)!=0?(i=(c[f>>2]|0)+5|0,j=a[i>>0]|0,(j&4)!=0):0)?(m=c[e+-16>>2]|0,(a[m+5>>0]&3)!=0):0){f=c[o>>2]|0;if((d[f+61>>0]|0)<2){Iw(f,m);e=c[q>>2]|0;break}else{a[i>>0]=a[f+60>>0]&3|j&-8;break}}while(0);c[q>>2]=e+-16;aw(b,-2);c[p>>2]=0;c[p+4>>2]=0;a[p+8>>0]=14;PQ(p+16|0,k|0,c[n>>2]<<3|0)|0;e=(c[c[b+16>>2]>>2]|0)+16|0;u=c[q>>2]|0;e=c[(e>>>0<u>>>0?e:316344)>>2]|0;n=e+16|0;b=c[n+4>>2]|0;i=u;c[i>>2]=c[n>>2];c[i+4>>2]=b;c[u+8>>2]=d[e+6>>0];u=c[q>>2]|0;c[q>>2]=u+16;e=u+-16|0;i=c[e>>2]|0;b=u;n=c[b+4>>2]|0;t=i+16|0;c[t>>2]=c[b>>2];c[t+4>>2]=n;a[i+6>>0]=c[u+8>>2];i=c[q>>2]|0;if(!(c[i+-8>>2]&64)){u=i;u=u+-16|0;c[q>>2]=u;u=p+12|0;c[u>>2]=r;l=s;return 1}f=(c[e>>2]|0)+5|0;g=a[f>>0]|0;if(!(g&4)){u=i;u=u+-16|0;c[q>>2]=u;u=p+12|0;c[u>>2]=r;l=s;return 1}h=c[i+-16>>2]|0;if(!(a[h+5>>0]&3)){u=i;u=u+-16|0;c[q>>2]=u;u=p+12|0;c[u>>2]=r;l=s;return 1}e=c[o>>2]|0;if((d[e+61>>0]|0)<2){Iw(e,h);u=c[q>>2]|0;u=u+-16|0;c[q>>2]=u;u=p+12|0;c[u>>2]=r;l=s;return 1}else{a[f>>0]=a[e+60>>0]&3|g&-8;u=i;u=u+-16|0;c[q>>2]=u;u=p+12|0;c[u>>2]=r;l=s;return 1}return 0}function YA(e){e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=gw(e,16)|0;m=e+12|0;h=c[m>>2]|0;o=e+8|0;i=c[o>>2]|0;g=h+280+(((286024>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(286024,f+16|0)|0){f=xx(e,286024,12)|0;c[g>>2]=f}c[i>>2]=f;c[i+8>>2]=(a[f+4>>0]|64)&255;i=c[o>>2]|0;c[o>>2]=i+16;Kx(e,h+40|0,i,i);i=c[o>>2]|0;g=i+-16|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];i=c[o>>2]|0;c[o>>2]=i+16;g=i+-32|0;f=c[g>>2]|0;q=i;p=c[q+4>>2]|0;h=f+16|0;c[h>>2]=c[q>>2];c[h+4>>2]=p;a[f+6>>0]=c[i+8>>2];f=c[o>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(j=(c[g>>2]|0)+5|0,k=a[j>>0]|0,(k&4)!=0):0)?(l=c[f+-16>>2]|0,(a[l+5>>0]&3)!=0):0){g=c[m>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,l);f=c[o>>2]|0;break}else{a[j>>0]=a[g+60>>0]&3|k&-8;break}}while(0);c[o>>2]=f+-16;aw(e,-2);c[n>>2]=0;c[n+4>>2]=0;a[n+8>>0]=11;q=c[c[e+16>>2]>>2]|0;p=q+16|0;if(!(!((p|0)==316344?1:p>>>0>=(c[o>>2]|0)>>>0)?(c[q+24>>2]&15|0)!=0:0))Vx(e,1,286585)|0;if((c[(c[m>>2]|0)+12>>2]|0)>0)Sw(e);q=Dx(e)|0;f=c[o>>2]|0;c[f>>2]=q;c[f+8>>2]=69;c[o>>2]=(c[o>>2]|0)+16;Ax(e,q,1,0);q=c[o>>2]|0;f=q+-32|0;j=c[f>>2]|0;k=q+-16|0;l=c[k+4>>2]|0;p=j+16|0;c[p>>2]=c[k>>2];c[p+4>>2]=l;a[j+6>>0]=c[q+-8>>2];j=c[o>>2]|0;if(!(c[j+-8>>2]&64)){p=j;p=p+-16|0;c[o>>2]=p;p=tB(e,1)|0;p=p&65535;q=n+10|0;b[q>>1]=p;return 1}g=(c[f>>2]|0)+5|0;h=a[g>>0]|0;if(!(h&4)){p=j;p=p+-16|0;c[o>>2]=p;p=tB(e,1)|0;p=p&65535;q=n+10|0;b[q>>1]=p;return 1}i=c[j+-16>>2]|0;if(!(a[i+5>>0]&3)){p=j;p=p+-16|0;c[o>>2]=p;p=tB(e,1)|0;p=p&65535;q=n+10|0;b[q>>1]=p;return 1}f=c[m>>2]|0;if((d[f+61>>0]|0)<2){Iw(f,i);p=c[o>>2]|0;p=p+-16|0;c[o>>2]=p;p=tB(e,1)|0;p=p&65535;q=n+10|0;b[q>>1]=p;return 1}else{a[g>>0]=a[f+60>>0]&3|h&-8;p=j;p=p+-16|0;c[o>>2]=p;p=tB(e,1)|0;p=p&65535;q=n+10|0;b[q>>1]=p;return 1}return 0}function ZA(e){e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=l;l=l+16|0;o=s;n=oB(e,1,o)|0;q=gw(e,(c[o>>2]<<3)+16|0)|0;p=e+12|0;h=c[p>>2]|0;r=e+8|0;i=c[r>>2]|0;g=h+280+(((286024>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(286024,f+16|0)|0){f=xx(e,286024,12)|0;c[g>>2]=f}c[i>>2]=f;c[i+8>>2]=(a[f+4>>0]|64)&255;i=c[r>>2]|0;c[r>>2]=i+16;Kx(e,h+40|0,i,i);i=c[r>>2]|0;g=i+-16|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];i=c[r>>2]|0;c[r>>2]=i+16;g=i+-32|0;f=c[g>>2]|0;u=i;t=c[u+4>>2]|0;h=f+16|0;c[h>>2]=c[u>>2];c[h+4>>2]=t;a[f+6>>0]=c[i+8>>2];f=c[r>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(j=(c[g>>2]|0)+5|0,k=a[j>>0]|0,(k&4)!=0):0)?(m=c[f+-16>>2]|0,(a[m+5>>0]&3)!=0):0){g=c[p>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,m);f=c[r>>2]|0;break}else{a[j>>0]=a[g+60>>0]&3|k&-8;break}}while(0);c[r>>2]=f+-16;aw(e,-2);c[q>>2]=0;c[q+4>>2]=0;a[q+8>>0]=15;PQ(q+16|0,n|0,c[o>>2]<<3|0)|0;f=(c[c[e+16>>2]>>2]|0)+16|0;u=c[r>>2]|0;f=c[(f>>>0<u>>>0?f:316344)>>2]|0;o=f+16|0;e=c[o+4>>2]|0;j=u;c[j>>2]=c[o>>2];c[j+4>>2]=e;c[u+8>>2]=d[f+6>>0];u=c[r>>2]|0;c[r>>2]=u+16;f=u+-16|0;j=c[f>>2]|0;e=u;o=c[e+4>>2]|0;t=j+16|0;c[t>>2]=c[e>>2];c[t+4>>2]=o;a[j+6>>0]=c[u+8>>2];j=c[r>>2]|0;if(!(c[j+-8>>2]&64)){u=j;u=u+-16|0;c[r>>2]=u;u=q+9|0;a[u>>0]=5;u=q+10|0;b[u>>1]=0;l=s;return 1}g=(c[f>>2]|0)+5|0;h=a[g>>0]|0;if(!(h&4)){u=j;u=u+-16|0;c[r>>2]=u;u=q+9|0;a[u>>0]=5;u=q+10|0;b[u>>1]=0;l=s;return 1}i=c[j+-16>>2]|0;if(!(a[i+5>>0]&3)){u=j;u=u+-16|0;c[r>>2]=u;u=q+9|0;a[u>>0]=5;u=q+10|0;b[u>>1]=0;l=s;return 1}f=c[p>>2]|0;if((d[f+61>>0]|0)<2){Iw(f,i);u=c[r>>2]|0;u=u+-16|0;c[r>>2]=u;u=q+9|0;a[u>>0]=5;u=q+10|0;b[u>>1]=0;l=s;return 1}else{a[g>>0]=a[f+60>>0]&3|h&-8;u=j;u=u+-16|0;c[r>>2]=u;u=q+9|0;a[u>>0]=5;u=q+10|0;b[u>>1]=0;l=s;return 1}return 0}function _A(e){e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=e+8|0;A=(c[B>>2]|0)-((c[c[e+16>>2]>>2]|0)+16)|0;g=A>>4;switch(g|0){case 0:{k=gw(e,16)|0;j=e+12|0;h=c[j>>2]|0;i=c[B>>2]|0;g=h+280+(((286024>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(286024,f+16|0)|0){f=xx(e,286024,12)|0;c[g>>2]=f}c[i>>2]=f;c[i+8>>2]=(a[f+4>>0]|64)&255;A=c[B>>2]|0;c[B>>2]=A+16;Kx(e,h+40|0,A,A);A=c[B>>2]|0;g=A+-16|0;c[A>>2]=c[g>>2];c[A+4>>2]=c[g+4>>2];c[A+8>>2]=c[g+8>>2];c[A+12>>2]=c[g+12>>2];A=c[B>>2]|0;c[B>>2]=A+16;g=A+-32|0;f=c[g>>2]|0;x=A;y=c[x+4>>2]|0;z=f+16|0;c[z>>2]=c[x>>2];c[z+4>>2]=y;a[f+6>>0]=c[A+8>>2];f=c[B>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(r=(c[g>>2]|0)+5|0,s=a[r>>0]|0,(s&4)!=0):0)?(t=c[f+-16>>2]|0,(a[t+5>>0]&3)!=0):0){g=c[j>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,t);f=c[B>>2]|0;break}else{a[r>>0]=a[g+60>>0]&3|s&-8;break}}while(0);c[B>>2]=f+-16;aw(e,-2);c[k>>2]=0;c[k+4>>2]=0;a[k+8>>0]=3;return 1}case 1:{k=gw(e,24)|0;j=e+12|0;h=c[j>>2]|0;i=c[B>>2]|0;g=h+280+(((286024>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(286024,f+16|0)|0){f=xx(e,286024,12)|0;c[g>>2]=f}c[i>>2]=f;c[i+8>>2]=(a[f+4>>0]|64)&255;A=c[B>>2]|0;c[B>>2]=A+16;Kx(e,h+40|0,A,A);A=c[B>>2]|0;g=A+-16|0;c[A>>2]=c[g>>2];c[A+4>>2]=c[g+4>>2];c[A+8>>2]=c[g+8>>2];c[A+12>>2]=c[g+12>>2];A=c[B>>2]|0;c[B>>2]=A+16;g=A+-32|0;f=c[g>>2]|0;x=A;y=c[x+4>>2]|0;z=f+16|0;c[z>>2]=c[x>>2];c[z+4>>2]=y;a[f+6>>0]=c[A+8>>2];f=c[B>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(l=(c[g>>2]|0)+5|0,m=a[l>>0]|0,(m&4)!=0):0)?(n=c[f+-16>>2]|0,(a[n+5>>0]&3)!=0):0){g=c[j>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,n);f=c[B>>2]|0;break}else{a[l>>0]=a[g+60>>0]&3|m&-8;break}}while(0);c[B>>2]=f+-16;aw(e,-2);c[k>>2]=0;c[k+4>>2]=0;a[k+8>>0]=15;a[k+9>>0]=2;a[k+16>>0]=3;if((c[(c[j>>2]|0)+12>>2]|0)>0)Sw(e);A=Dx(e)|0;g=c[B>>2]|0;c[g>>2]=A;c[g+8>>2]=69;c[B>>2]=(c[B>>2]|0)+16;Ax(e,A,1,0);A=c[B>>2]|0;g=A+-32|0;f=c[g>>2]|0;x=A+-16|0;y=c[x+4>>2]|0;z=f+16|0;c[z>>2]=c[x>>2];c[z+4>>2]=y;a[f+6>>0]=c[A+-8>>2];f=c[B>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(u=(c[g>>2]|0)+5|0,v=a[u>>0]|0,(v&4)!=0):0)?(w=c[f+-16>>2]|0,(a[w+5>>0]&3)!=0):0){g=c[j>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,w);f=c[B>>2]|0;break}else{a[u>>0]=a[g+60>>0]&3|v&-8;break}}while(0);c[B>>2]=f+-16;b[k+10>>1]=tB(e,1)|0;return 1}default:{l=gw(e,(g*24|0)+8|0)|0;k=e+12|0;i=c[k>>2]|0;j=c[B>>2]|0;h=i+280+(((286024>>>0)%127|0)<<2)|0;f=c[h>>2]|0;if(JN(286024,f+16|0)|0){f=xx(e,286024,12)|0;c[h>>2]=f}c[j>>2]=f;c[j+8>>2]=(a[f+4>>0]|64)&255;w=c[B>>2]|0;c[B>>2]=w+16;Kx(e,i+40|0,w,w);w=c[B>>2]|0;h=w+-16|0;c[w>>2]=c[h>>2];c[w+4>>2]=c[h+4>>2];c[w+8>>2]=c[h+8>>2];c[w+12>>2]=c[h+12>>2];w=c[B>>2]|0;c[B>>2]=w+16;h=w+-32|0;f=c[h>>2]|0;t=w;u=c[t+4>>2]|0;v=f+16|0;c[v>>2]=c[t>>2];c[v+4>>2]=u;a[f+6>>0]=c[w+8>>2];f=c[B>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(o=(c[h>>2]|0)+5|0,p=a[o>>0]|0,(p&4)!=0):0)?(q=c[f+-16>>2]|0,(a[q+5>>0]&3)!=0):0){h=c[k>>2]|0;if((d[h+61>>0]|0)<2){Iw(h,q);f=c[B>>2]|0;break}else{a[o>>0]=a[h+60>>0]&3|p&-8;break}}while(0);c[B>>2]=f+-16;aw(e,-2);c[l>>2]=0;c[l+4>>2]=0;j=l+8|0;if((c[(c[k>>2]|0)+12>>2]|0)>0)Sw(e);f=Dx(e)|0;h=c[B>>2]|0;c[h>>2]=f;c[h+8>>2]=69;h=(c[B>>2]|0)+16|0;c[B>>2]=h;if((A|0)>0){Ax(e,f,g,0);h=c[B>>2]|0}i=h+-32|0;f=c[i>>2]|0;u=h+-16|0;v=c[u+4>>2]|0;w=f+16|0;c[w>>2]=c[u>>2];c[w+4>>2]=v;a[f+6>>0]=c[h+-8>>2];f=c[B>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(x=(c[i>>2]|0)+5|0,y=a[x>>0]|0,(y&4)!=0):0)?(z=c[f+-16>>2]|0,(a[z+5>>0]&3)!=0):0){h=c[k>>2]|0;if((d[h+61>>0]|0)<2){Iw(h,z);f=c[B>>2]|0;break}else{a[x>>0]=a[h+60>>0]&3|y&-8;break}}while(0);c[B>>2]=f+-16;a[j>>0]=15;a[l+9>>0]=14;b[l+10>>1]=0;f=l+16|0;if((A|0)<32){h=f;g=1}else{h=f;i=1;while(1){a[h>>0]=6;B=f+4|0;c[B>>2]=3;a[f+8>>0]=15;a[f+9>>0]=2;a[f+16>>0]=3;b[f+10>>1]=tB(e,i)|0;f=f+(c[B>>2]<<3)|0;i=i+1|0;if((i|0)==(g|0)){h=f;break}else h=f}}a[h>>0]=15;a[f+1>>0]=2;a[f+8>>0]=3;b[f+2>>1]=tB(e,g)|0;return 1}}return 0}function $A(e){e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0;D=l;l=l+16|0;A=D;o=D+4|0;w=e+16|0;B=c[c[w>>2]>>2]|0;s=B+32|0;C=e+8|0;if(!(!((s|0)==316344?1:s>>>0>=(c[C>>2]|0)>>>0)?(c[B+40>>2]&15|0)==6:0))Yx(e,2,287317);n=oB(e,1,o)|0;B=gw(e,(c[o>>2]<<3)+16|0)|0;s=e+12|0;h=c[s>>2]|0;i=c[C>>2]|0;g=h+280+(((286024>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(286024,f+16|0)|0){f=xx(e,286024,12)|0;c[g>>2]=f}c[i>>2]=f;c[i+8>>2]=(a[f+4>>0]|64)&255;i=c[C>>2]|0;c[C>>2]=i+16;Kx(e,h+40|0,i,i);i=c[C>>2]|0;g=i+-16|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];i=c[C>>2]|0;c[C>>2]=i+16;g=i+-32|0;f=c[g>>2]|0;F=i;E=c[F+4>>2]|0;h=f+16|0;c[h>>2]=c[F>>2];c[h+4>>2]=E;a[f+6>>0]=c[i+8>>2];f=c[C>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(j=(c[g>>2]|0)+5|0,k=a[j>>0]|0,(k&4)!=0):0)?(m=c[f+-16>>2]|0,(a[m+5>>0]&3)!=0):0){g=c[s>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,m);f=c[C>>2]|0;break}else{a[j>>0]=a[g+60>>0]&3|k&-8;break}}while(0);c[C>>2]=f+-16;aw(e,-2);c[B>>2]=0;c[B+4>>2]=0;a[B+8>>0]=16;PQ(B+16|0,n|0,c[o>>2]<<3|0)|0;g=(c[c[w>>2]>>2]|0)+16|0;F=c[C>>2]|0;g=c[(g>>>0<F>>>0?g:316344)>>2]|0;o=g+16|0;n=c[o+4>>2]|0;f=F;c[f>>2]=c[o>>2];c[f+4>>2]=n;c[F+8>>2]=d[g+6>>0];F=c[C>>2]|0;c[C>>2]=F+16;g=F+-16|0;f=c[g>>2]|0;n=F;o=c[n+4>>2]|0;E=f+16|0;c[E>>2]=c[n>>2];c[E+4>>2]=o;a[f+6>>0]=c[F+8>>2];f=c[C>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(p=(c[g>>2]|0)+5|0,q=a[p>>0]|0,(q&4)!=0):0)?(r=c[f+-16>>2]|0,(a[r+5>>0]&3)!=0):0){g=c[s>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,r);f=c[C>>2]|0;break}else{a[p>>0]=a[g+60>>0]&3|q&-8;break}}while(0);c[C>>2]=f+-16;if((c[(c[s>>2]|0)+12>>2]|0)>0)Sw(e);F=Dx(e)|0;g=c[C>>2]|0;c[g>>2]=F;c[g+8>>2]=69;c[C>>2]=(c[C>>2]|0)+16;Ax(e,F,1,0);F=c[C>>2]|0;g=F+-32|0;f=c[g>>2]|0;q=F+-16|0;r=c[q+4>>2]|0;E=f+16|0;c[E>>2]=c[q>>2];c[E+4>>2]=r;a[f+6>>0]=c[F+-8>>2];f=c[C>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(t=(c[g>>2]|0)+5|0,u=a[t>>0]|0,(u&4)!=0):0)?(v=c[f+-16>>2]|0,(a[v+5>>0]&3)!=0):0){g=c[s>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,v);f=c[C>>2]|0;break}else{a[t>>0]=a[g+60>>0]&3|u&-8;break}}while(0);E=f+-16|0;c[C>>2]=E;g=c[f+-32>>2]|0;v=g+16|0;F=c[v+4>>2]|0;c[E>>2]=c[v>>2];c[E+4>>2]=F;c[f+-8>>2]=d[g+6>>0];g=c[C>>2]|0;E=g+16|0;c[C>>2]=E;F=c[c[w>>2]>>2]|0;F=c[(F>>>0<g>>>0?F+16|0:316344)>>2]|0;v=F+16|0;w=c[v+4>>2]|0;c[E>>2]=c[v>>2];c[E+4>>2]=w;c[g+24>>2]=d[F+6>>0];g=c[C>>2]|0;c[C>>2]=g+16;a:do if((g|0)!=316344?(x=c[g+8>>2]|0,(x&15|0)==5):0)switch(x&63){case 4:{m=d[(c[g>>2]|0)+7>>0]|0;break a}case 20:{m=c[(c[g>>2]|0)+12>>2]|0;break a}case 7:{m=c[(c[g>>2]|0)+12>>2]|0;break a}case 5:{m=Ex(c[g>>2]|0)|0;break a}default:{m=0;break a}}else m=0;while(0);f=g+-16|0;b:do if((f|0)!=316344?(y=c[g+-8>>2]|0,(y&15|0)==5):0)switch(y&63){case 4:{f=d[(c[f>>2]|0)+7>>0]|0;break b}case 20:{f=c[(c[f>>2]|0)+12>>2]|0;break b}case 7:{f=c[(c[f>>2]|0)+12>>2]|0;break b}case 5:{f=Ex(c[f>>2]|0)|0;break b}default:{f=0;break b}}else f=0;while(0);if((f+m|0)>65535)Wx(e,286374,A);if(!m){E=0;F=c[C>>2]|0;F=F+-32|0;c[C>>2]=F;pB(0,E);E=tB(e,2)|0;E=E&65535;F=B+10|0;b[F>>1]=E;l=D;return 1}if((m|0)<1){E=f;F=c[C>>2]|0;F=F+-32|0;c[C>>2]=F;pB(0,E);E=tB(e,2)|0;E=E&65535;F=B+10|0;b[F>>1]=E;l=D;return 1}else k=1;while(1){i=((k|0)<0)<<31>>31;j=c[C>>2]|0;g=c[j+-16>>2]|0;h=yQ(k|0,i|0,-1,-1)|0;F=z;c:do if(F>>>0<0|((F|0)==0?h>>>0<(c[g+8>>2]|0)>>>0:0))g=(c[g+12>>2]|0)+(h<<4)|0;else{g=(c[g+16>>2]|0)+(((1<<(d[g+7>>0]|0))+-1&k)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(F=g+16|0,(c[F>>2]|0)==(k|0)?(c[F+4>>2]|0)==(i|0):0):0)break;h=c[g+28>>2]|0;if(!h){g=316344;break c}g=g+(h<<5)|0}}while(0);c[j>>2]=c[g>>2];c[j+4>>2]=c[g+4>>2];c[j+8>>2]=c[g+8>>2];c[j+12>>2]=c[g+12>>2];c[C>>2]=(c[C>>2]|0)+16;F=k+f|0;$v(e,-3,F,((F|0)<0)<<31>>31);if((k|0)==(m|0))break;else k=k+1|0}E=c[C>>2]|0;E=E+-32|0;c[C>>2]=E;pB(0,f);E=tB(e,2)|0;E=E&65535;F=B+10|0;b[F>>1]=E;l=D;return 1}function aB(e){e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=(c[c[e+16>>2]>>2]|0)+16|0;n=e+8|0;if((o|0)==316344?1:o>>>0>=(c[n>>2]|0)>>>0)Vx(e,1,283978)|0;o=gw(e,24)|0;m=e+12|0;h=c[m>>2]|0;i=c[n>>2]|0;g=h+280+(((286024>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(286024,f+16|0)|0){f=xx(e,286024,12)|0;c[g>>2]=f}c[i>>2]=f;c[i+8>>2]=(a[f+4>>0]|64)&255;i=c[n>>2]|0;c[n>>2]=i+16;Kx(e,h+40|0,i,i);i=c[n>>2]|0;g=i+-16|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];i=c[n>>2]|0;c[n>>2]=i+16;g=i+-32|0;f=c[g>>2]|0;q=i;p=c[q+4>>2]|0;h=f+16|0;c[h>>2]=c[q>>2];c[h+4>>2]=p;a[f+6>>0]=c[i+8>>2];f=c[n>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(j=(c[g>>2]|0)+5|0,k=a[j>>0]|0,(k&4)!=0):0)?(l=c[f+-16>>2]|0,(a[l+5>>0]&3)!=0):0){g=c[m>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,l);f=c[n>>2]|0;break}else{a[j>>0]=a[g+60>>0]&3|k&-8;break}}while(0);c[n>>2]=f+-16;aw(e,-2);c[o>>2]=0;c[o+4>>2]=0;a[o+8>>0]=15;a[o+9>>0]=3;a[o+16>>0]=3;if((c[(c[m>>2]|0)+12>>2]|0)>0)Sw(e);q=Dx(e)|0;f=c[n>>2]|0;c[f>>2]=q;c[f+8>>2]=69;c[n>>2]=(c[n>>2]|0)+16;Ax(e,q,1,0);q=c[n>>2]|0;f=q+-32|0;j=c[f>>2]|0;k=q+-16|0;l=c[k+4>>2]|0;p=j+16|0;c[p>>2]=c[k>>2];c[p+4>>2]=l;a[j+6>>0]=c[q+-8>>2];j=c[n>>2]|0;if(!(c[j+-8>>2]&64)){p=j;p=p+-16|0;c[n>>2]=p;p=tB(e,1)|0;p=p&65535;q=o+10|0;b[q>>1]=p;return 1}g=(c[f>>2]|0)+5|0;h=a[g>>0]|0;if(!(h&4)){p=j;p=p+-16|0;c[n>>2]=p;p=tB(e,1)|0;p=p&65535;q=o+10|0;b[q>>1]=p;return 1}i=c[j+-16>>2]|0;if(!(a[i+5>>0]&3)){p=j;p=p+-16|0;c[n>>2]=p;p=tB(e,1)|0;p=p&65535;q=o+10|0;b[q>>1]=p;return 1}f=c[m>>2]|0;if((d[f+61>>0]|0)<2){Iw(f,i);p=c[n>>2]|0;p=p+-16|0;c[n>>2]=p;p=tB(e,1)|0;p=p&65535;q=o+10|0;b[q>>1]=p;return 1}else{a[g>>0]=a[f+60>>0]&3|h&-8;p=j;p=p+-16|0;c[n>>2]=p;p=tB(e,1)|0;p=p&65535;q=o+10|0;b[q>>1]=p;return 1}return 0}function bB(e){e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=_x(e,1)|0;o=gw(e,24)|0;j=e+12|0;h=c[j>>2]|0;p=e+8|0;i=c[p>>2]|0;g=h+280+(((286024>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(286024,f+16|0)|0){f=xx(e,286024,12)|0;c[g>>2]=f}c[i>>2]=f;c[i+8>>2]=(a[f+4>>0]|64)&255;i=c[p>>2]|0;c[p>>2]=i+16;Kx(e,h+40|0,i,i);i=c[p>>2]|0;g=i+-16|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];i=c[p>>2]|0;c[p>>2]=i+16;g=i+-32|0;f=c[g>>2]|0;r=i;q=c[r+4>>2]|0;h=f+16|0;c[h>>2]=c[r>>2];c[h+4>>2]=q;a[f+6>>0]=c[i+8>>2];f=c[p>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(k=(c[g>>2]|0)+5|0,l=a[k>>0]|0,(l&4)!=0):0)?(m=c[f+-16>>2]|0,(a[m+5>>0]&3)!=0):0){g=c[j>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,m);f=c[p>>2]|0;break}else{a[k>>0]=a[g+60>>0]&3|l&-8;break}}while(0);c[p>>2]=f+-16;aw(e,-2);c[o>>2]=0;c[o+4>>2]=0;a[o+8>>0]=15;a[o+9>>0]=4;a[o+16>>0]=3;b[o+10>>1]=n;if((n+-1|0)>>>0<32767)return 1;Vx(e,1,286562)|0;return 1}function cB(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=gw(b,24)|0;i=b+12|0;g=c[i>>2]|0;n=b+8|0;h=c[n>>2]|0;f=g+280+(((286024>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286024,e+16|0)|0){e=xx(b,286024,12)|0;c[f>>2]=e}c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;h=c[n>>2]|0;c[n>>2]=h+16;Kx(b,g+40|0,h,h);h=c[n>>2]|0;f=h+-16|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];h=c[n>>2]|0;c[n>>2]=h+16;f=h+-32|0;e=c[f>>2]|0;p=h;o=c[p+4>>2]|0;g=e+16|0;c[g>>2]=c[p>>2];c[g+4>>2]=o;a[e+6>>0]=c[h+8>>2];e=c[n>>2]|0;do if(((c[e+-8>>2]&64|0)!=0?(j=(c[f>>2]|0)+5|0,k=a[j>>0]|0,(k&4)!=0):0)?(l=c[e+-16>>2]|0,(a[l+5>>0]&3)!=0):0){f=c[i>>2]|0;if((d[f+61>>0]|0)<2){Iw(f,l);e=c[n>>2]|0;break}else{a[j>>0]=a[f+60>>0]&3|k&-8;break}}while(0);c[n>>2]=e+-16;aw(b,-2);c[m>>2]=0;c[m+4>>2]=0;a[m+8>>0]=15;a[m+9>>0]=1;a[m+16>>0]=3;return 1}function dB(e){e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=l;l=l+16|0;o=s;n=oB(e,1,o)|0;q=gw(e,(c[o>>2]<<3)+16|0)|0;p=e+12|0;h=c[p>>2]|0;r=e+8|0;i=c[r>>2]|0;g=h+280+(((286024>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(286024,f+16|0)|0){f=xx(e,286024,12)|0;c[g>>2]=f}c[i>>2]=f;c[i+8>>2]=(a[f+4>>0]|64)&255;i=c[r>>2]|0;c[r>>2]=i+16;Kx(e,h+40|0,i,i);i=c[r>>2]|0;g=i+-16|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];i=c[r>>2]|0;c[r>>2]=i+16;g=i+-32|0;f=c[g>>2]|0;u=i;t=c[u+4>>2]|0;h=f+16|0;c[h>>2]=c[u>>2];c[h+4>>2]=t;a[f+6>>0]=c[i+8>>2];f=c[r>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(j=(c[g>>2]|0)+5|0,k=a[j>>0]|0,(k&4)!=0):0)?(m=c[f+-16>>2]|0,(a[m+5>>0]&3)!=0):0){g=c[p>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,m);f=c[r>>2]|0;break}else{a[j>>0]=a[g+60>>0]&3|k&-8;break}}while(0);c[r>>2]=f+-16;aw(e,-2);c[q>>2]=0;c[q+4>>2]=0;a[q+8>>0]=15;PQ(q+16|0,n|0,c[o>>2]<<3|0)|0;f=(c[c[e+16>>2]>>2]|0)+16|0;u=c[r>>2]|0;f=c[(f>>>0<u>>>0?f:316344)>>2]|0;o=f+16|0;e=c[o+4>>2]|0;j=u;c[j>>2]=c[o>>2];c[j+4>>2]=e;c[u+8>>2]=d[f+6>>0];u=c[r>>2]|0;c[r>>2]=u+16;f=u+-16|0;j=c[f>>2]|0;e=u;o=c[e+4>>2]|0;t=j+16|0;c[t>>2]=c[e>>2];c[t+4>>2]=o;a[j+6>>0]=c[u+8>>2];j=c[r>>2]|0;if(!(c[j+-8>>2]&64)){u=j;u=u+-16|0;c[r>>2]=u;u=q+9|0;a[u>>0]=11;u=q+10|0;b[u>>1]=0;l=s;return 1}g=(c[f>>2]|0)+5|0;h=a[g>>0]|0;if(!(h&4)){u=j;u=u+-16|0;c[r>>2]=u;u=q+9|0;a[u>>0]=11;u=q+10|0;b[u>>1]=0;l=s;return 1}i=c[j+-16>>2]|0;if(!(a[i+5>>0]&3)){u=j;u=u+-16|0;c[r>>2]=u;u=q+9|0;a[u>>0]=11;u=q+10|0;b[u>>1]=0;l=s;return 1}f=c[p>>2]|0;if((d[f+61>>0]|0)<2){Iw(f,i);u=c[r>>2]|0;u=u+-16|0;c[r>>2]=u;u=q+9|0;a[u>>0]=11;u=q+10|0;b[u>>1]=0;l=s;return 1}else{a[g>>0]=a[f+60>>0]&3|h&-8;u=j;u=u+-16|0;c[r>>2]=u;u=q+9|0;a[u>>0]=11;u=q+10|0;b[u>>1]=0;l=s;return 1}return 0}function eB(e){e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=l;l=l+16|0;o=s;n=oB(e,1,o)|0;q=gw(e,(c[o>>2]<<3)+16|0)|0;p=e+12|0;h=c[p>>2]|0;r=e+8|0;i=c[r>>2]|0;g=h+280+(((286024>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(286024,f+16|0)|0){f=xx(e,286024,12)|0;c[g>>2]=f}c[i>>2]=f;c[i+8>>2]=(a[f+4>>0]|64)&255;i=c[r>>2]|0;c[r>>2]=i+16;Kx(e,h+40|0,i,i);i=c[r>>2]|0;g=i+-16|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];i=c[r>>2]|0;c[r>>2]=i+16;g=i+-32|0;f=c[g>>2]|0;u=i;t=c[u+4>>2]|0;h=f+16|0;c[h>>2]=c[u>>2];c[h+4>>2]=t;a[f+6>>0]=c[i+8>>2];f=c[r>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(j=(c[g>>2]|0)+5|0,k=a[j>>0]|0,(k&4)!=0):0)?(m=c[f+-16>>2]|0,(a[m+5>>0]&3)!=0):0){g=c[p>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,m);f=c[r>>2]|0;break}else{a[j>>0]=a[g+60>>0]&3|k&-8;break}}while(0);c[r>>2]=f+-16;aw(e,-2);c[q>>2]=0;c[q+4>>2]=0;a[q+8>>0]=15;PQ(q+16|0,n|0,c[o>>2]<<3|0)|0;f=(c[c[e+16>>2]>>2]|0)+16|0;u=c[r>>2]|0;f=c[(f>>>0<u>>>0?f:316344)>>2]|0;o=f+16|0;e=c[o+4>>2]|0;j=u;c[j>>2]=c[o>>2];c[j+4>>2]=e;c[u+8>>2]=d[f+6>>0];u=c[r>>2]|0;c[r>>2]=u+16;f=u+-16|0;j=c[f>>2]|0;e=u;o=c[e+4>>2]|0;t=j+16|0;c[t>>2]=c[e>>2];c[t+4>>2]=o;a[j+6>>0]=c[u+8>>2];j=c[r>>2]|0;if(!(c[j+-8>>2]&64)){u=j;u=u+-16|0;c[r>>2]=u;u=q+9|0;a[u>>0]=6;u=q+10|0;b[u>>1]=0;l=s;return 1}g=(c[f>>2]|0)+5|0;h=a[g>>0]|0;if(!(h&4)){u=j;u=u+-16|0;c[r>>2]=u;u=q+9|0;a[u>>0]=6;u=q+10|0;b[u>>1]=0;l=s;return 1}i=c[j+-16>>2]|0;if(!(a[i+5>>0]&3)){u=j;u=u+-16|0;c[r>>2]=u;u=q+9|0;a[u>>0]=6;u=q+10|0;b[u>>1]=0;l=s;return 1}f=c[p>>2]|0;if((d[f+61>>0]|0)<2){Iw(f,i);u=c[r>>2]|0;u=u+-16|0;c[r>>2]=u;u=q+9|0;a[u>>0]=6;u=q+10|0;b[u>>1]=0;l=s;return 1}else{a[g>>0]=a[f+60>>0]&3|h&-8;u=j;u=u+-16|0;c[r>>2]=u;u=q+9|0;a[u>>0]=6;u=q+10|0;b[u>>1]=0;l=s;return 1}return 0}function fB(e){e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0;D=l;l=l+16|0;A=D;o=D+4|0;w=e+16|0;B=c[c[w>>2]>>2]|0;s=B+32|0;C=e+8|0;if(!(!((s|0)==316344?1:s>>>0>=(c[C>>2]|0)>>>0)?(c[B+40>>2]&15|0)==6:0))Yx(e,2,287317);n=oB(e,1,o)|0;B=gw(e,(c[o>>2]<<3)+16|0)|0;s=e+12|0;h=c[s>>2]|0;i=c[C>>2]|0;g=h+280+(((286024>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(286024,f+16|0)|0){f=xx(e,286024,12)|0;c[g>>2]=f}c[i>>2]=f;c[i+8>>2]=(a[f+4>>0]|64)&255;i=c[C>>2]|0;c[C>>2]=i+16;Kx(e,h+40|0,i,i);i=c[C>>2]|0;g=i+-16|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];i=c[C>>2]|0;c[C>>2]=i+16;g=i+-32|0;f=c[g>>2]|0;F=i;E=c[F+4>>2]|0;h=f+16|0;c[h>>2]=c[F>>2];c[h+4>>2]=E;a[f+6>>0]=c[i+8>>2];f=c[C>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(j=(c[g>>2]|0)+5|0,k=a[j>>0]|0,(k&4)!=0):0)?(m=c[f+-16>>2]|0,(a[m+5>>0]&3)!=0):0){g=c[s>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,m);f=c[C>>2]|0;break}else{a[j>>0]=a[g+60>>0]&3|k&-8;break}}while(0);c[C>>2]=f+-16;aw(e,-2);c[B>>2]=0;c[B+4>>2]=0;a[B+8>>0]=15;PQ(B+16|0,n|0,c[o>>2]<<3|0)|0;g=(c[c[w>>2]>>2]|0)+16|0;F=c[C>>2]|0;g=c[(g>>>0<F>>>0?g:316344)>>2]|0;o=g+16|0;n=c[o+4>>2]|0;f=F;c[f>>2]=c[o>>2];c[f+4>>2]=n;c[F+8>>2]=d[g+6>>0];F=c[C>>2]|0;c[C>>2]=F+16;g=F+-16|0;f=c[g>>2]|0;n=F;o=c[n+4>>2]|0;E=f+16|0;c[E>>2]=c[n>>2];c[E+4>>2]=o;a[f+6>>0]=c[F+8>>2];f=c[C>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(p=(c[g>>2]|0)+5|0,q=a[p>>0]|0,(q&4)!=0):0)?(r=c[f+-16>>2]|0,(a[r+5>>0]&3)!=0):0){g=c[s>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,r);f=c[C>>2]|0;break}else{a[p>>0]=a[g+60>>0]&3|q&-8;break}}while(0);c[C>>2]=f+-16;a[B+9>>0]=12;if((c[(c[s>>2]|0)+12>>2]|0)>0)Sw(e);F=Dx(e)|0;g=c[C>>2]|0;c[g>>2]=F;c[g+8>>2]=69;c[C>>2]=(c[C>>2]|0)+16;Ax(e,F,1,0);F=c[C>>2]|0;g=F+-32|0;f=c[g>>2]|0;q=F+-16|0;r=c[q+4>>2]|0;E=f+16|0;c[E>>2]=c[q>>2];c[E+4>>2]=r;a[f+6>>0]=c[F+-8>>2];f=c[C>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(t=(c[g>>2]|0)+5|0,u=a[t>>0]|0,(u&4)!=0):0)?(v=c[f+-16>>2]|0,(a[v+5>>0]&3)!=0):0){g=c[s>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,v);f=c[C>>2]|0;break}else{a[t>>0]=a[g+60>>0]&3|u&-8;break}}while(0);E=f+-16|0;c[C>>2]=E;g=c[f+-32>>2]|0;v=g+16|0;F=c[v+4>>2]|0;c[E>>2]=c[v>>2];c[E+4>>2]=F;c[f+-8>>2]=d[g+6>>0];g=c[C>>2]|0;E=g+16|0;c[C>>2]=E;F=c[c[w>>2]>>2]|0;F=c[(F>>>0<g>>>0?F+16|0:316344)>>2]|0;v=F+16|0;w=c[v+4>>2]|0;c[E>>2]=c[v>>2];c[E+4>>2]=w;c[g+24>>2]=d[F+6>>0];g=c[C>>2]|0;c[C>>2]=g+16;a:do if((g|0)!=316344?(x=c[g+8>>2]|0,(x&15|0)==5):0)switch(x&63){case 4:{m=d[(c[g>>2]|0)+7>>0]|0;break a}case 20:{m=c[(c[g>>2]|0)+12>>2]|0;break a}case 7:{m=c[(c[g>>2]|0)+12>>2]|0;break a}case 5:{m=Ex(c[g>>2]|0)|0;break a}default:{m=0;break a}}else m=0;while(0);f=g+-16|0;b:do if((f|0)!=316344?(y=c[g+-8>>2]|0,(y&15|0)==5):0)switch(y&63){case 4:{f=d[(c[f>>2]|0)+7>>0]|0;break b}case 20:{f=c[(c[f>>2]|0)+12>>2]|0;break b}case 7:{f=c[(c[f>>2]|0)+12>>2]|0;break b}case 5:{f=Ex(c[f>>2]|0)|0;break b}default:{f=0;break b}}else f=0;while(0);if((f+m|0)>65535)Wx(e,286374,A);if(!m){E=0;F=c[C>>2]|0;F=F+-32|0;c[C>>2]=F;pB(0,E);E=tB(e,2)|0;E=E&65535;F=B+10|0;b[F>>1]=E;l=D;return 1}if((m|0)<1){E=f;F=c[C>>2]|0;F=F+-32|0;c[C>>2]=F;pB(0,E);E=tB(e,2)|0;E=E&65535;F=B+10|0;b[F>>1]=E;l=D;return 1}else k=1;while(1){i=((k|0)<0)<<31>>31;j=c[C>>2]|0;g=c[j+-16>>2]|0;h=yQ(k|0,i|0,-1,-1)|0;F=z;c:do if(F>>>0<0|((F|0)==0?h>>>0<(c[g+8>>2]|0)>>>0:0))g=(c[g+12>>2]|0)+(h<<4)|0;else{g=(c[g+16>>2]|0)+(((1<<(d[g+7>>0]|0))+-1&k)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(F=g+16|0,(c[F>>2]|0)==(k|0)?(c[F+4>>2]|0)==(i|0):0):0)break;h=c[g+28>>2]|0;if(!h){g=316344;break c}g=g+(h<<5)|0}}while(0);c[j>>2]=c[g>>2];c[j+4>>2]=c[g+4>>2];c[j+8>>2]=c[g+8>>2];c[j+12>>2]=c[g+12>>2];c[C>>2]=(c[C>>2]|0)+16;F=k+f|0;$v(e,-3,F,((F|0)<0)<<31>>31);if((k|0)==(m|0))break;else k=k+1|0}E=c[C>>2]|0;E=E+-32|0;c[C>>2]=E;pB(0,f);E=tB(e,2)|0;E=E&65535;F=B+10|0;b[F>>1]=E;l=D;return 1}function gB(e){e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+16|0;E=H;D=H+4|0;F=e+16|0;j=c[c[F>>2]>>2]|0;i=j+32|0;G=e+8|0;if(!((i|0)==316344?1:i>>>0>=(c[G>>2]|0)>>>0)?c[j+40>>2]&15|0:0){j=oB(e,1,D)|0;p=gw(e,(c[D>>2]<<3)+16|0)|0;o=e+12|0;h=c[o>>2]|0;i=c[G>>2]|0;g=h+280+(((286024>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(286024,f+16|0)|0){f=xx(e,286024,12)|0;c[g>>2]=f}c[i>>2]=f;c[i+8>>2]=(a[f+4>>0]|64)&255;t=c[G>>2]|0;c[G>>2]=t+16;Kx(e,h+40|0,t,t);t=c[G>>2]|0;g=t+-16|0;c[t>>2]=c[g>>2];c[t+4>>2]=c[g+4>>2];c[t+8>>2]=c[g+8>>2];c[t+12>>2]=c[g+12>>2];t=c[G>>2]|0;c[G>>2]=t+16;g=t+-32|0;f=c[g>>2]|0;q=t;r=c[q+4>>2]|0;s=f+16|0;c[s>>2]=c[q>>2];c[s+4>>2]=r;a[f+6>>0]=c[t+8>>2];f=c[G>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(k=(c[g>>2]|0)+5|0,m=a[k>>0]|0,(m&4)!=0):0)?(n=c[f+-16>>2]|0,(a[n+5>>0]&3)!=0):0){g=c[o>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,n);f=c[G>>2]|0;break}else{a[k>>0]=a[g+60>>0]&3|m&-8;break}}while(0);c[G>>2]=f+-16;aw(e,-2);c[p>>2]=0;c[p+4>>2]=0;a[p+8>>0]=15;PQ(p+16|0,j|0,c[D>>2]<<3|0)|0;g=(c[c[F>>2]>>2]|0)+16|0;D=c[G>>2]|0;g=c[(g>>>0<D>>>0?g:316344)>>2]|0;s=g+16|0;r=c[s+4>>2]|0;f=D;c[f>>2]=c[s>>2];c[f+4>>2]=r;c[D+8>>2]=d[g+6>>0];D=c[G>>2]|0;c[G>>2]=D+16;g=D+-16|0;f=c[g>>2]|0;r=D;s=c[r+4>>2]|0;t=f+16|0;c[t>>2]=c[r>>2];c[t+4>>2]=s;a[f+6>>0]=c[D+8>>2];f=c[G>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(u=(c[g>>2]|0)+5|0,v=a[u>>0]|0,(v&4)!=0):0)?(w=c[f+-16>>2]|0,(a[w+5>>0]&3)!=0):0){g=c[o>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,w);f=c[G>>2]|0;break}else{a[u>>0]=a[g+60>>0]&3|v&-8;break}}while(0);c[G>>2]=f+-16;a[p+9>>0]=14;if((c[(c[o>>2]|0)+12>>2]|0)>0)Sw(e);D=Dx(e)|0;g=c[G>>2]|0;c[g>>2]=D;c[g+8>>2]=69;c[G>>2]=(c[G>>2]|0)+16;Ax(e,D,1,0);D=c[G>>2]|0;g=D+-32|0;f=c[g>>2]|0;u=D+-16|0;v=c[u+4>>2]|0;w=f+16|0;c[w>>2]=c[u>>2];c[w+4>>2]=v;a[f+6>>0]=c[D+-8>>2];f=c[G>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(x=(c[g>>2]|0)+5|0,y=a[x>>0]|0,(y&4)!=0):0)?(A=c[f+-16>>2]|0,(a[A+5>>0]&3)!=0):0){g=c[o>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,A);f=c[G>>2]|0;break}else{a[x>>0]=a[g+60>>0]&3|y&-8;break}}while(0);D=f+-16|0;c[G>>2]=D;g=c[f+-32>>2]|0;A=g+16|0;y=c[A+4>>2]|0;c[D>>2]=c[A>>2];c[D+4>>2]=y;c[f+-8>>2]=d[g+6>>0];g=c[G>>2]|0;D=g+16|0;c[G>>2]=D;F=c[c[F>>2]>>2]|0;F=c[(F>>>0<g>>>0?F+16|0:316344)>>2]|0;y=F+16|0;A=c[y+4>>2]|0;c[D>>2]=c[y>>2];c[D+4>>2]=A;c[g+24>>2]=d[F+6>>0];g=c[G>>2]|0;c[G>>2]=g+16;a:do if((g|0)!=316344?(B=c[g+8>>2]|0,(B&15|0)==5):0)switch(B&63){case 4:{m=d[(c[g>>2]|0)+7>>0]|0;break a}case 20:{m=c[(c[g>>2]|0)+12>>2]|0;break a}case 7:{m=c[(c[g>>2]|0)+12>>2]|0;break a}case 5:{m=Ex(c[g>>2]|0)|0;break a}default:{m=0;break a}}else m=0;while(0);f=g+-16|0;b:do if((f|0)!=316344?(C=c[g+-8>>2]|0,(C&15|0)==5):0)switch(C&63){case 4:{f=d[(c[f>>2]|0)+7>>0]|0;break b}case 20:{f=c[(c[f>>2]|0)+12>>2]|0;break b}case 7:{f=c[(c[f>>2]|0)+12>>2]|0;break b}case 5:{f=Ex(c[f>>2]|0)|0;break b}default:{f=0;break b}}else f=0;while(0);if((f+m|0)>65535)Wx(e,286374,E);if(m){if((m|0)>=1){k=1;while(1){i=((k|0)<0)<<31>>31;j=c[G>>2]|0;g=c[j+-16>>2]|0;h=yQ(k|0,i|0,-1,-1)|0;F=z;c:do if(F>>>0<0|((F|0)==0?h>>>0<(c[g+8>>2]|0)>>>0:0))g=(c[g+12>>2]|0)+(h<<4)|0;else{g=(c[g+16>>2]|0)+(((1<<(d[g+7>>0]|0))+-1&k)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(F=g+16|0,(c[F>>2]|0)==(k|0)?(c[F+4>>2]|0)==(i|0):0):0)break;h=c[g+28>>2]|0;if(!h){g=316344;break c}g=g+(h<<5)|0}}while(0);c[j>>2]=c[g>>2];c[j+4>>2]=c[g+4>>2];c[j+8>>2]=c[g+8>>2];c[j+12>>2]=c[g+12>>2];c[G>>2]=(c[G>>2]|0)+16;F=k+f|0;$v(e,-3,F,((F|0)<0)<<31>>31);if((k|0)==(m|0))break;else k=k+1|0}}}else f=0;c[G>>2]=(c[G>>2]|0)+-32;pB(0,f);G=p;e=(tB(e,2)|0)&65535;G=G+10|0;b[G>>1]=e;l=H;return 1}j=oB(e,1,D)|0;m=gw(e,(c[D>>2]<<3)+16|0)|0;k=e+12|0;h=c[k>>2]|0;i=c[G>>2]|0;g=h+280+(((286024>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(286024,f+16|0)|0){f=xx(e,286024,12)|0;c[g>>2]=f}c[i>>2]=f;c[i+8>>2]=(a[f+4>>0]|64)&255;E=c[G>>2]|0;c[G>>2]=E+16;Kx(e,h+40|0,E,E);E=c[G>>2]|0;g=E+-16|0;c[E>>2]=c[g>>2];c[E+4>>2]=c[g+4>>2];c[E+8>>2]=c[g+8>>2];c[E+12>>2]=c[g+12>>2];E=c[G>>2]|0;c[G>>2]=E+16;g=E+-32|0;f=c[g>>2]|0;A=E;B=c[A+4>>2]|0;C=f+16|0;c[C>>2]=c[A>>2];c[C+4>>2]=B;a[f+6>>0]=c[E+8>>2];f=c[G>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(o=(c[g>>2]|0)+5|0,p=a[o>>0]|0,(p&4)!=0):0)?(q=c[f+-16>>2]|0,(a[q+5>>0]&3)!=0):0){g=c[k>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,q);f=c[G>>2]|0;break}else{a[o>>0]=a[g+60>>0]&3|p&-8;break}}while(0);c[G>>2]=f+-16;aw(e,-2);c[m>>2]=0;c[m+4>>2]=0;a[m+8>>0]=15;PQ(m+16|0,j|0,c[D>>2]<<3|0)|0;g=(c[c[F>>2]>>2]|0)+16|0;e=c[G>>2]|0;g=c[(g>>>0<e>>>0?g:316344)>>2]|0;E=g+16|0;D=c[E+4>>2]|0;f=e;c[f>>2]=c[E>>2];c[f+4>>2]=D;c[e+8>>2]=d[g+6>>0];e=c[G>>2]|0;c[G>>2]=e+16;g=e+-16|0;f=c[g>>2]|0;D=e;E=c[D+4>>2]|0;F=f+16|0;c[F>>2]=c[D>>2];c[F+4>>2]=E;a[f+6>>0]=c[e+8>>2];f=c[G>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(r=(c[g>>2]|0)+5|0,s=a[r>>0]|0,(s&4)!=0):0)?(t=c[f+-16>>2]|0,(a[t+5>>0]&3)!=0):0){g=c[k>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,t);f=c[G>>2]|0;break}else{a[r>>0]=a[g+60>>0]&3|s&-8;break}}while(0);c[G>>2]=f+-16;a[m+9>>0]=14;G=m;e=0;G=G+10|0;b[G>>1]=e;l=H;return 1}function hB(a){a=a|0;var b=0,d=0,e=0,f=0;b=a+16|0;e=(c[c[b>>2]>>2]|0)+16|0;f=a+8|0;if((e|0)==316344?1:e>>>0>=(c[f>>2]|0)>>>0)Vx(a,1,283978)|0;oB(a,1,0)|0;b=c[c[b>>2]>>2]|0;d=c[f>>2]|0;e=b+32|0;if(d>>>0>=e>>>0){c[f>>2]=e;return 1}b=(b+24+4+(3-d)|0)>>>4;a=d;do{c[a+8>>2]=0;a=a+16|0}while(a>>>0<e>>>0);c[f>>2]=d+(b+1<<4);c[f>>2]=e;return 1}function iB(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;h=b+16|0;f=c[c[h>>2]>>2]|0;g=f+16|0;p=b+8|0;e=c[p>>2]|0;g=g>>>0<e>>>0?g:316344;switch(c[g+8>>2]&15){case 4:{e=g;i=5;break}case 3:{if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);f=c[c[h>>2]>>2]|0;e=c[p>>2]|0}i=f+16|0;e=i>>>0<e>>>0?i:316344;Xw(b,e);i=5;break}default:{Yx(b,1,287721);e=0;f=0}}if((i|0)==5){e=c[e>>2]|0;if((a[e+4>>0]|0)==4)f=d[e+7>>0]|0;else f=c[e+12>>2]|0;e=e+16|0}l=gw(b,48)|0;k=b+12|0;i=c[k>>2]|0;j=c[p>>2]|0;h=i+280+(((286024>>>0)%127|0)<<2)|0;g=c[h>>2]|0;if(JN(286024,g+16|0)|0){g=xx(b,286024,12)|0;c[h>>2]=g}c[j>>2]=g;c[j+8>>2]=(a[g+4>>0]|64)&255;j=c[p>>2]|0;c[p>>2]=j+16;Kx(b,i+40|0,j,j);j=c[p>>2]|0;h=j+-16|0;c[j>>2]=c[h>>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];j=c[p>>2]|0;c[p>>2]=j+16;h=j+-32|0;g=c[h>>2]|0;r=j;q=c[r+4>>2]|0;i=g+16|0;c[i>>2]=c[r>>2];c[i+4>>2]=q;a[g+6>>0]=c[j+8>>2];g=c[p>>2]|0;do if(((c[g+-8>>2]&64|0)!=0?(m=(c[h>>2]|0)+5|0,n=a[m>>0]|0,(n&4)!=0):0)?(o=c[g+-16>>2]|0,(a[o+5>>0]&3)!=0):0){h=c[k>>2]|0;if((d[h+61>>0]|0)<2){Iw(h,o);g=c[p>>2]|0;break}else{a[m>>0]=a[h+60>>0]&3|n&-8;break}}while(0);c[p>>2]=g+-16;aw(b,-2);c[l>>2]=0;c[l+4>>2]=0;a[l+8>>0]=1;g=l+16|0;h=g+32|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0));if(!f)return 1;while(1){f=f+-1|0;q=d[e>>0]|0;r=l+((q>>>3)+16)|0;a[r>>0]=1<<(q&7)|d[r>>0];if(!f)break;else e=e+1|0}return 1}function jB(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;s=l;l=l+16|0;r=s;n=b+8|0;o=(c[n>>2]|0)-((c[c[b+16>>2]>>2]|0)+16)|0;p=o>>4;q=gw(b,48)|0;i=b+12|0;g=c[i>>2]|0;h=c[n>>2]|0;f=g+280+(((286024>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286024,e+16|0)|0){e=xx(b,286024,12)|0;c[f>>2]=e}c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;h=c[n>>2]|0;c[n>>2]=h+16;Kx(b,g+40|0,h,h);h=c[n>>2]|0;f=h+-16|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];h=c[n>>2]|0;c[n>>2]=h+16;f=h+-32|0;e=c[f>>2]|0;u=h;t=c[u+4>>2]|0;g=e+16|0;c[g>>2]=c[u>>2];c[g+4>>2]=t;a[e+6>>0]=c[h+8>>2];e=c[n>>2]|0;do if(((c[e+-8>>2]&64|0)!=0?(j=(c[f>>2]|0)+5|0,k=a[j>>0]|0,(k&4)!=0):0)?(m=c[e+-16>>2]|0,(a[m+5>>0]&3)!=0):0){f=c[i>>2]|0;if((d[f+61>>0]|0)<2){Iw(f,m);e=c[n>>2]|0;break}else{a[j>>0]=a[f+60>>0]&3|k&-8;break}}while(0);c[n>>2]=e+-16;aw(b,-2);c[q>>2]=0;c[q+4>>2]=0;a[q+8>>0]=1;e=q+16|0;f=e+32|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(f|0));if((o|0)<16){l=s;return 1}else h=1;while(1){e=Tv(b,h,r)|0;if(!e)Yx(b,h,287721);if((c[r>>2]|0)!=2)Vx(b,h,286219)|0;f=a[e>>0]|0;g=e+1|0;if((f&255)<=(d[g>>0]|0)){e=f&255;while(1){u=q+((e>>3)+16)|0;a[u>>0]=d[u>>0]|0|1<<(e&7);if((e|0)<(d[g>>0]|0|0))e=e+1|0;else break}}if((h|0)==(p|0))break;else h=h+1|0}l=s;return 1}
|
|
function Zj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;f=b+65712|0;if(!(c[f>>2]|0))c[f>>2]=eN(880)|0;k=b+65652|0;i=c[k>>2]|0;if(i|0){fN(c[i+8>>2]|0);f=c[i>>2]|0;while(1){g=c[f+4>>2]|0;if(!g)break;else f=g}if(f|0)do{g=f;f=c[f>>2]|0;h=c[g+8>>2]|0;if(h|0)fN(h);fN(g)}while((f|0)!=0);fN(i)}j=b+65656|0;i=c[j>>2]|0;if(i|0){fN(c[i+8>>2]|0);f=c[i>>2]|0;while(1){g=c[f+4>>2]|0;if(!g)break;else f=g}if(f|0)do{g=f;f=c[f>>2]|0;h=c[g+8>>2]|0;if(h|0)fN(h);fN(g)}while((f|0)!=0);fN(i)}c[b>>2]=d;d=b+4|0;c[d>>2]=e;c[b+8>>2]=e;h=b+12|0;c[h>>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[b+36>>2]=8;c[b+40>>2]=240;c[b+44>>2]=122;RQ(b+48|0,0,65612)|0;c[b+65660>>2]=1;h=b+65664|0;i=h+44|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));c[b+65708>>2]=-1;c[b+65716>>2]=0;c[b+65720>>2]=200;c[b+65724>>2]=201;c[b+65728>>2]=148;c[b+65732>>2]=202;g=eN(16)|0;c[g+12>>2]=e;c[g+4>>2]=65536;f=eN(65536)|0;c[g+8>>2]=f;PQ(f|0,e|0,65536)|0;f=eN(20)|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[g>>2]=f;c[k>>2]=g;g=b+8|0;f=eN(16)|0;c[f+12>>2]=g;c[f+4>>2]=24;h=eN(24)|0;c[f+8>>2]=h;i=h+24|0;do{a[h>>0]=a[g>>0]|0;h=h+1|0;g=g+1|0}while((h|0)<(i|0));h=eN(20)|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[h+16>>2]=0;c[f>>2]=h;c[j>>2]=f;ck(b);h=b+68|0;RQ(h|0,a[(c[225]|0)+22>>0]|0,65536)|0;f=c[b>>2]|0;f=gg[c[f+2439828>>2]&511](f)|0;g=c[f+24>>2]|0;if(!g)return;Eg[g&63](f,c[d>>2]|0,h,(c[225]|0)+16|0);return}function _j(d){d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0;aa=l;l=l+16|0;J=aa;V=aa+8|0;W=aa+4|0;f=d+28|0;g=c[f>>2]|0;if(g|0)c[f>>2]=g+-1;Y=d+16|0;c[Y>>2]=(c[Y>>2]|0)+1;Y=d+65660|0;a:do switch(c[Y>>2]|0){case 0:{dh();break}case 1:{f=eh()|0;b:do if(f|0){q=d+52|0;r=d+48|0;o=d+4|0;p=d+8|0;s=d+20|0;t=d+12|0;u=d+65652|0;v=d+65656|0;w=d+68|0;x=d+65664|0;y=d+8|0;z=d+65700|0;A=d+65704|0;B=d+65708|0;C=d+8|0;while(1){c:do switch(c[f>>2]|0){case 1027:{i=((c[f+20>>2]|0)>0?-3:3)+(c[q>>2]|0)|0;c[q>>2]=i;if((c[r>>2]|0)<0)c[r>>2]=0;if((i|0)>=0){g=c[o>>2]|0;h=a[g>>0]|0;if(!(h<<24>>24))f=0;else{f=0;do{g=g+1|0;f=(h<<24>>24==10&1)+f|0;h=a[g>>0]|0}while(h<<24>>24!=0)}if((i|0)<=(f|0))break c}else f=0;c[q>>2]=f;break}case 768:{k=c[f+16+4>>2]|0;switch(k|0){case 1073742054:case 1073742050:case 1073742053:case 1073742049:case 1073742052:case 1073742048:break c;default:{}}f=e[160638]|0;d:do if(!(f&3264)){if(f&3|0)switch(((k|0)==127?1:((k|0)==1073741897)<<31>>31)&3){case 1:{X=20;break}case 2:{X=21;break}case 3:{X=35;break}default:{}}}else{if((k|0)<120)switch(k|0){case 99:{X=21;break d}case 118:{X=35;break d}default:break d}if((k|0)<1073741897)switch(k|0){case 120:{X=20;break d}default:break d}else switch(k|0){case 1073741897:{X=21;break d}default:break d}}while(0);if((X|0)==20){X=0;dk(d)}else if((X|0)==21){X=0;f=c[p>>2]|0;h=c[t>>2]|0;e:do if((h|0)==0|(h|0)==(f|0)){g=c[o>>2]|0;if(g>>>0<f>>>0){h=g;do{n=h;h=h+1|0;g=(a[n>>0]|0)==10?h:g}while((h|0)!=(f|0))}do{h=a[f>>0]|0;if(!(h<<24>>24))break e;f=f+1|0}while(h<<24>>24!=10)}else{g=h>>>0<f>>>0?h:f;f=h>>>0>f>>>0?h:f}while(0);f=f-g|0;h=eN(f+1|0)|0;if(h|0){PQ(h|0,g|0,f|0)|0;a[h+f>>0]=0;f=c[80021]|0;do if(f){g=c[f+240>>2]|0;if(!g){n=f+288|0;fN(c[n>>2]|0);c[n>>2]=nP(h)|0;break}else{hg[g&63](f,h)|0;break}}else mE(310358,J);while(0);fN(h)}}else if((X|0)==35){X=0;ek(d)}f=e[160638]|0;f:do switch(k|0){case 1073741902:case 1073741899:case 1073741901:case 1073741898:case 1073741903:case 1073741904:case 1073741905:case 1073741906:{if(!(f&3)){c[t>>2]=0;break f}if(!(c[t>>2]|0))c[t>>2]=c[p>>2];break}default:{}}while(0);g:do if(f&3264){h:do if(!(f&192)){if(f&3072|0){if((k|0)<121)switch(k|0){case 97:{X=61;break h}case 102:{X=86;break h}case 103:{X=91;break h}case 47:{X=95;break h}case 111:{X=93;break h}default:break g}if((k|0)<1073741901){if((k|0)<122)switch(k|0){case 121:{X=76;break h}default:break g}if((k|0)<1073741898)switch(k|0){case 122:{X=62;break h}default:break g}else switch(k|0){case 1073741898:{X=113;break h}default:break g}}switch(k|0){case 1073741901:{X=114;break h}case 1073741904:{g=c[o>>2]|0;i=c[p>>2]|0;if(g>>>0<i>>>0){h=g;f=g;do{n=h;h=h+1|0;f=(a[n>>0]|0)==10?h:f}while((h|0)!=(i|0));h=f}else h=g;c[p>>2]=h;f=h;if(g>>>0<h>>>0){i=g;do{n=i;i=i+1|0;g=(a[n>>0]|0)==10?i:g}while((i|0)!=(h|0))}break}case 1073741903:{g=c[o>>2]|0;i=c[p>>2]|0;if(g>>>0<i>>>0){h=g;f=g;do{n=h;h=h+1|0;f=(a[n>>0]|0)==10?h:f}while((h|0)!=(i|0));j=f}else j=g;n=a[j>>0]|0;h=n<<24>>24==10;if(n<<24>>24!=0&(h^1)){i=j;f=0;do{i=h?i:i+1|0;f=f+1|0;n=a[i>>0]|0;h=n<<24>>24==10}while(n<<24>>24!=0&(h^1))}else f=0;i=j+f|0;c[p>>2]=i;f=i;if(g>>>0<i>>>0){h=g;do{n=h;h=h+1|0;g=(a[n>>0]|0)==10?h:g}while((h|0)!=(i|0))}break}default:break g}c[s>>2]=f-g}if((k|0)<111)switch(k|0){case 97:{X=61;break h}case 102:{X=86;break h}case 103:{X=91;break h}case 47:{X=95;break h}default:break g}if((k|0)<122)switch(k|0){case 111:{X=93;break h}case 121:{X=76;break h}default:break g}if((k|0)<1073741898)switch(k|0){case 122:{X=62;break h}default:break g}else switch(k|0){case 1073741901:{X=114;break h}case 1073741898:{X=113;break h}default:break g}}else{if((k|0)<121){switch(k|0){case 97:{X=61;break h}case 102:{X=86;break h}case 103:{X=91;break h}case 111:{X=93;break h}case 47:{X=95;break h}case 9:break;default:break g}hk(d,(f&3|0)!=0,1);break g}if((k|0)>=1073741901)switch(k|0){case 1073741901:{X=114;break h}case 1073741904:{fk(d);break g}case 1073741903:{gk(d);break g}default:break g}if((k|0)<122)switch(k|0){case 121:{X=76;break h}default:break g}if((k|0)<1073741898)switch(k|0){case 122:{X=62;break h}default:break g}else switch(k|0){case 1073741898:{X=113;break h}default:break g}}while(0);if((X|0)==61){X=0;n=c[o>>2]|0;c[t>>2]=n;c[p>>2]=n+(WO(n)|0);break}else if((X|0)==62){X=0;k=c[u>>2]|0;f=c[k>>2]|0;if(c[f+4>>2]|0){g=c[f+12>>2]|0;j=f+16|0;if(g>>>0<(c[j>>2]|0)>>>0){h=f+8|0;i=k+8|0;f=g;g=0;while(1){n=(c[i>>2]|0)+f|0;a[n>>0]=a[n>>0]^a[(c[h>>2]|0)+g>>0];f=f+1|0;if(f>>>0>=(c[j>>2]|0)>>>0)break;else g=g+1|0}f=c[k>>2]|0}c[k>>2]=c[f+4>>2]}PQ(c[k+12>>2]|0,c[k+8>>2]|0,c[k+4>>2]|0)|0;k=c[v>>2]|0;f=c[k>>2]|0;if(c[f+4>>2]|0){g=c[f+12>>2]|0;j=f+16|0;if(g>>>0<(c[j>>2]|0)>>>0){h=f+8|0;i=k+8|0;f=g;g=0;while(1){n=(c[i>>2]|0)+f|0;a[n>>0]=a[n>>0]^a[(c[h>>2]|0)+g>>0];f=f+1|0;if(f>>>0>=(c[j>>2]|0)>>>0)break;else g=g+1|0}f=c[k>>2]|0}c[k>>2]=c[f+4>>2]}PQ(c[k+12>>2]|0,c[k+8>>2]|0,c[k+4>>2]|0)|0;ck(d);RQ(w|0,a[(c[225]|0)+22>>0]|0,65536)|0;f=c[d>>2]|0;f=gg[c[f+2439828>>2]&511](f)|0;g=c[f+24>>2]|0;if(!g)break;Eg[g&63](f,c[o>>2]|0,w,(c[225]|0)+16|0);break}else if((X|0)==76){X=0;j=c[u>>2]|0;f=c[c[j>>2]>>2]|0;if(f|0?(c[j>>2]=f,D=c[f+12>>2]|0,E=f+16|0,D>>>0<(c[E>>2]|0)>>>0):0){h=f+8|0;i=j+8|0;f=D;g=0;while(1){n=(c[i>>2]|0)+f|0;a[n>>0]=a[n>>0]^a[(c[h>>2]|0)+g>>0];f=f+1|0;if(f>>>0>=(c[E>>2]|0)>>>0)break;else g=g+1|0}}PQ(c[j+12>>2]|0,c[j+8>>2]|0,c[j+4>>2]|0)|0;j=c[v>>2]|0;f=c[c[j>>2]>>2]|0;if(f|0?(c[j>>2]=f,F=c[f+12>>2]|0,G=f+16|0,F>>>0<(c[G>>2]|0)>>>0):0){h=f+8|0;i=j+8|0;f=F;g=0;while(1){n=(c[i>>2]|0)+f|0;a[n>>0]=a[n>>0]^a[(c[h>>2]|0)+g>>0];f=f+1|0;if(f>>>0>=(c[G>>2]|0)>>>0)break;else g=g+1|0}}PQ(c[j+12>>2]|0,c[j+8>>2]|0,c[j+4>>2]|0)|0;ck(d);RQ(w|0,a[(c[225]|0)+22>>0]|0,65536)|0;f=c[d>>2]|0;f=gg[c[f+2439828>>2]&511](f)|0;g=c[f+24>>2]|0;if(!g)break;Eg[g&63](f,c[o>>2]|0,w,(c[225]|0)+16|0);break}else if((X|0)==86){X=0;if((c[Y>>2]|0)==2)break;a[x>>0]=0;g=c[y>>2]|0;c[z>>2]=g;n=c[t>>2]|0;c[A>>2]=n;f=n;if(n|0?(H=c[(g>>>0<f>>>0?p:t)>>2]|0,I=(c[(g>>>0>f>>>0?p:t)>>2]|0)-H|0,(I+-1|0)>>>0<32):0){RQ(d+65664+I|0,0,34-I|0)|0;PQ(x|0,H|0,I|0)|0}c[Y>>2]=2;break}else if((X|0)==91){X=0;if((c[Y>>2]|0)==3)break;a[x>>0]=0;c[z>>2]=c[y>>2];c[A>>2]=c[t>>2];c[B>>2]=-1;c[Y>>2]=3;break}else if((X|0)==93){X=0;if((c[Y>>2]|0)==4)break;a[x>>0]=0;c[z>>2]=c[y>>2];c[A>>2]=c[t>>2];ik(d);c[Y>>2]=4;break}else if((X|0)==95){X=0;m=c[d>>2]|0;m=c[(gg[c[m+2439828>>2]&511](m)|0)+44>>2]|0;n=WO(m)|0;k=c[o>>2]|0;h=c[p>>2]|0;if(k>>>0<h>>>0){g=k;f=k;do{j=g;g=g+1|0;f=(a[j>>0]|0)==10?g:f}while((g|0)!=(h|0))}else f=k;j=a[f>>0]|0;h=j<<24>>24==10;if(j<<24>>24!=0&(h^1)){i=f;g=0;do{i=h?i:i+1|0;g=g+1|0;ba=a[i>>0]|0;h=ba<<24>>24==10}while(ba<<24>>24!=0&(h^1))}else g=0;h=f+g|0;g=f;f=j;i:while(1){switch(f<<24>>24){case 9:case 32:break;default:break i}if(g>>>0>=h>>>0)break;f=g+1|0;g=f;f=a[f>>0]|0}if(!(KN(g,m,n)|0)){ba=g+n|0;QQ(g|0,ba|0,(WO(ba)|0)+1|0)|0;f=c[p>>2]|0;if(f>>>0>ba>>>0)c[p>>2]=f+(0-n)}else{if(((WO(k)|0)+n|0)>>>0>65535)break;QQ(g+n|0,g|0,(WO(g)|0)+1|0)|0;PQ(g|0,m|0,n|0)|0;f=c[p>>2]|0;if(f>>>0>g>>>0)c[p>>2]=f+n}c[t>>2]=0;if(Tj(c[u>>2]|0)|0)Tj(c[v>>2]|0)|0;RQ(w|0,a[(c[225]|0)+22>>0]|0,65536)|0;f=c[d>>2]|0;f=gg[c[f+2439828>>2]&511](f)|0;g=c[f+24>>2]|0;if(!g)break;Eg[g&63](f,c[o>>2]|0,w,(c[225]|0)+16|0);break}else if((X|0)==113){X=0;c[C>>2]=c[o>>2];c[s>>2]=0;break}else if((X|0)==114){X=0;f=c[o>>2]|0;ba=WO(f)|0;h=f+ba|0;c[p>>2]=h;i=h;if((ba|0)>0){g=f;do{ba=g;g=g+1|0;f=(a[ba>>0]|0)==10?g:f}while((g|0)!=(h|0))}c[s>>2]=i-f;break}}else{if(f&768|0)switch(k|0){case 1073741904:{fk(d);break g}case 1073741903:{gk(d);break g}default:break g}if((k|0)>=1073741901)switch(k|0){case 1073741906:{f=c[o>>2]|0;m=c[p>>2]|0;if(f>>>0<m>>>0){g=f;h=f;i=f;while(1){j=h+1|0;k=(a[h>>0]|0)==10;f=k?i:g;if((j|0)==(m|0)){i=f;break}else{g=f;h=j;i=k?j:i}}}else i=f;ba=a[i>>0]|0;g=ba<<24>>24==10;if(ba<<24>>24!=0&(g^1)){h=i;f=0;do{h=g?h:h+1|0;f=f+1|0;ba=a[h>>0]|0;g=ba<<24>>24==10}while(ba<<24>>24!=0&(g^1))}else f=0;ba=c[s>>2]|0;c[p>>2]=i+(f>>>0>ba>>>0?ba:f);break g}case 1073741905:{f=c[p>>2]|0;while(1){g=a[f>>0]|0;if(!(g<<24>>24)){g=0;break}f=f+1|0;if(g<<24>>24==10){X=130;break}}if((X|0)==130){X=0;ba=a[f>>0]|0;h=ba<<24>>24==10;if(ba<<24>>24!=0&(h^1)){i=f;g=0;do{i=h?i:i+1|0;g=g+1|0;ba=a[i>>0]|0;h=ba<<24>>24==10}while(ba<<24>>24!=0&(h^1))}else g=0}ba=c[s>>2]|0;c[p>>2]=f+(g>>>0>ba>>>0?ba:g);break g}case 1073741904:{f=c[o>>2]|0;g=c[p>>2]|0;if(g>>>0<=f>>>0)break g;h=g+-1|0;c[p>>2]=h;i=h;if(f>>>0<h>>>0){g=f;do{ba=g;g=g+1|0;f=(a[ba>>0]|0)==10?g:f}while((g|0)!=(h|0))}c[s>>2]=i-f;break g}case 1073741903:{h=c[p>>2]|0;if(!(a[h>>0]|0))break g;ba=h+1|0;c[p>>2]=ba;i=ba;f=c[o>>2]|0;if(f>>>0<ba>>>0){g=f;do{ba=g;g=g+1|0;f=(a[ba>>0]|0)==10?g:f}while((ba|0)!=(h|0))}c[s>>2]=i-f;break g}case 1073741901:{f=c[o>>2]|0;i=c[p>>2]|0;if(f>>>0<i>>>0){h=f;g=f;do{ba=h;h=h+1|0;g=(a[ba>>0]|0)==10?h:g}while((h|0)!=(i|0));j=g}else j=f;ba=a[j>>0]|0;h=ba<<24>>24==10;if(ba<<24>>24!=0&(h^1)){i=j;g=0;do{i=h?i:i+1|0;g=g+1|0;ba=a[i>>0]|0;h=ba<<24>>24==10}while(ba<<24>>24!=0&(h^1))}else g=0;h=j+g|0;c[p>>2]=h;i=h;if(f>>>0<h>>>0){g=f;do{ba=g;g=g+1|0;f=(a[ba>>0]|0)==10?g:f}while((g|0)!=(h|0))}c[s>>2]=i-f;break g}case 1073741902:{c[V>>2]=0;c[W>>2]=0;h=c[o>>2]|0;g=a[h>>0]|0;if(!(g<<24>>24)){g=0;h=0;f=0}else{j=c[p>>2]|0;i=h;f=g;while(1){if((j|0)==(i|0)){f=0;break}if(f<<24>>24==10){c[V>>2]=0;f=W}else f=V;c[f>>2]=(c[f>>2]|0)+1;i=i+1|0;f=a[i>>0]|0;if(!(f<<24>>24)){f=0;break}}do{h=h+1|0;f=(g<<24>>24==10&1)+f|0;g=a[h>>0]|0}while(g<<24>>24!=0);g=c[W>>2]|0;h=c[V>>2]|0}jk(d,h,(g|0)<(f+-17|0)?g+17|0:f);break g}default:break g}if((k|0)<127)switch(k|0){case 8:{f=c[p>>2]|0;g=c[t>>2]|0;if(!((g|0)==0|(g|0)==(f|0))){ba=g>>>0<f>>>0?g:f;n=g>>>0>f>>>0?g:f;QQ(ba|0,n|0,(WO(n)|0)+1|0)|0;c[p>>2]=ba;c[t>>2]=0;if(Tj(c[u>>2]|0)|0)Tj(c[v>>2]|0)|0;RQ(w|0,a[(c[225]|0)+22>>0]|0,65536)|0;f=c[d>>2]|0;f=gg[c[f+2439828>>2]&511](f)|0;g=c[f+24>>2]|0;if(!g)break g;Eg[g&63](f,c[o>>2]|0,w,(c[225]|0)+16|0);break g}if(f>>>0<=(c[o>>2]|0)>>>0)break g;ba=f+-1|0;c[p>>2]=ba;QQ(ba|0,f|0,WO(ba)|0)|0;if(Tj(c[u>>2]|0)|0)Tj(c[v>>2]|0)|0;RQ(w|0,a[(c[225]|0)+22>>0]|0,65536)|0;f=c[d>>2]|0;f=gg[c[f+2439828>>2]&511](f)|0;g=c[f+24>>2]|0;if(!g)break g;Eg[g&63](f,c[o>>2]|0,w,(c[225]|0)+16|0);break g}case 13:{h=c[p>>2]|0;f=c[t>>2]|0;if(!((f|0)==0|(f|0)==(h|0))){ba=f>>>0<h>>>0?f:h;n=f>>>0>h>>>0?f:h;QQ(ba|0,n|0,(WO(n)|0)+1|0)|0;c[p>>2]=ba;c[t>>2]=0;if(Tj(c[u>>2]|0)|0)Tj(c[v>>2]|0)|0;RQ(w|0,a[(c[225]|0)+22>>0]|0,65536)|0;f=c[d>>2]|0;f=gg[c[f+2439828>>2]&511](f)|0;g=c[f+24>>2]|0;if(!g)break g;Eg[g&63](f,c[o>>2]|0,w,(c[225]|0)+16|0);break g}f=c[o>>2]|0;if(f>>>0<h>>>0){g=f;do{ba=g;g=g+1|0;f=(a[ba>>0]|0)==10?g:f}while((g|0)!=(h|0));g=0}else g=0;j:while(1){switch(a[f>>0]|0){case 9:case 32:break;default:break j}g=g+1|0;f=f+1|0}g=(f>>>0>h>>>0?h-f|0:0)+g|0;kk(d,10);if(!g)break g;else f=0;while(1){kk(d,9);f=f+1|0;if((f|0)==(g|0))break g}}case 9:{hk(d,(f&3|0)!=0,(f&192|0)!=0);break g}default:break g}if((k|0)<1073741898){switch(k|0){case 127:break;default:break g}f=c[p>>2]|0;g=c[t>>2]|0;if((g|0)==0|(g|0)==(f|0)){QQ(f|0,f+1|0,WO(f)|0)|0;if(Tj(c[u>>2]|0)|0)Tj(c[v>>2]|0)|0;RQ(w|0,a[(c[225]|0)+22>>0]|0,65536)|0;f=c[d>>2]|0;f=gg[c[f+2439828>>2]&511](f)|0;g=c[f+24>>2]|0;if(!g)break;Eg[g&63](f,c[o>>2]|0,w,(c[225]|0)+16|0);break}else{ba=g>>>0<f>>>0?g:f;n=g>>>0>f>>>0?g:f;QQ(ba|0,n|0,(WO(n)|0)+1|0)|0;c[p>>2]=ba;c[t>>2]=0;if(Tj(c[u>>2]|0)|0)Tj(c[v>>2]|0)|0;RQ(w|0,a[(c[225]|0)+22>>0]|0,65536)|0;f=c[d>>2]|0;f=gg[c[f+2439828>>2]&511](f)|0;g=c[f+24>>2]|0;if(!g)break;Eg[g&63](f,c[o>>2]|0,w,(c[225]|0)+16|0);break}}switch(k|0){case 1073741898:{f=c[o>>2]|0;i=c[p>>2]|0;if(f>>>0<i>>>0){h=f;g=f;do{ba=h;h=h+1|0;g=(a[ba>>0]|0)==10?h:g}while((h|0)!=(i|0))}else g=f;c[p>>2]=g;i=g;if(f>>>0<g>>>0){h=f;do{ba=h;h=h+1|0;f=(a[ba>>0]|0)==10?h:f}while((h|0)!=(g|0))}c[s>>2]=i-f;break g}case 1073741899:break;default:break g}c[V>>2]=0;c[W>>2]=0;f=c[o>>2]|0;g=a[f>>0]|0;if(!(g<<24>>24)){f=0;g=0}else{i=c[p>>2]|0;h=f;f=g;do{if((i|0)==(h|0))break;if(f<<24>>24==10){c[V>>2]=0;f=W}else f=V;c[f>>2]=(c[f>>2]|0)+1;h=h+1|0;f=a[h>>0]|0}while(f<<24>>24!=0);f=c[W>>2]|0;g=c[V>>2]|0}jk(d,g,(f|0)>17?f+-17|0:0)}while(0);ck(d);break}case 771:{f=f+12|0;if((WO(f)|0)==1){kk(d,a[f>>0]|0);ck(d)}break}default:{}}while(0);f=eh()|0;if(!f)break b}}while(0);do if(!(a[284]|0))a[d+65>>0]=0;else{g=276;f=c[g>>2]|0;g=c[g+4>>2]|0;h=d+48|0;i=d+65|0;if(!(a[i>>0]|0)){c[d+56>>2]=((c[h>>2]|0)*6|0)+f;c[d+60>>2]=((c[d+52>>2]|0)*7|0)+g;a[i>>0]=1;break}ba=(c[d+56>>2]|0)-f|0;c[h>>2]=(ba|0)/6|0;f=(c[d+60>>2]|0)-g|0;i=(f|0)/7|0;j=d+52|0;c[j>>2]=i;if((ba|0)<-5)c[d+48>>2]=0;if((f|0)>=-6){g=c[d+4>>2]|0;h=a[g>>0]|0;if(!(h<<24>>24))f=0;else{f=0;do{g=g+1|0;f=(h<<24>>24==10&1)+f|0;h=a[g>>0]|0}while(h<<24>>24!=0)}if((i|0)<=(f|0))break}else f=0;c[j>>2]=f}while(0);h=c[48]|0;j=d+32|0;i=c[j>>2]|0;do if((((h|0)>=(i|0)?(O=d+40|0,K=(c[O>>2]|0)+i|0,(h|0)<(K|0)):0)?(M=c[49]|0,P=d+36|0,N=c[P>>2]|0,(M|0)>=(N|0)):0)?(Q=d+44|0,L=(c[Q>>2]|0)+N|0,(M|0)<(L|0)):0){c[68]=1;k=d+64|0;if(a[k>>0]|0){if((a[244]|0?(ba=c[62]|0,(ba|0)>=(i|0)&(ba|0)<(K|0)):0)?(ba=c[63]|0,(ba|0)>=(N|0)&(ba|0)<(L|0)):0){c[d+48>>2]=((c[d+56>>2]|0)-h|0)/6|0;f=(c[d+60>>2]|0)-M|0;i=(f|0)/7|0;j=d+52|0;c[j>>2]=i;g=d+48|0;if((c[g>>2]|0)<0)c[g>>2]=0;if((f|0)>=-6){g=c[d+4>>2]|0;h=a[g>>0]|0;if(!(h<<24>>24))f=0;else{f=0;do{g=g+1|0;f=(h<<24>>24==10&1)+f|0;h=a[g>>0]|0}while(h<<24>>24!=0)}if((i|0)<=(f|0))break}else f=0;c[j>>2]=f;break}a[k>>0]=0;break}do if(((a[204]|0)!=0?(ba=c[52]|0,(ba|0)>=(i|0)&(ba|0)<(K|0)):0)?(ba=c[53]|0,(ba|0)>=(N|0)&(ba|0)<(L|0)):0){g=d+8|0;f=c[g>>2]|0;jk(d,(c[d+48>>2]|0)+((h-i|0)/6|0)|0,(c[d+52>>2]|0)+((M-N|0)/7|0)|0);if(b[160638]&3){c[d+12>>2]=c[g>>2];c[g>>2]=f;break}f=d+24|0;if(!(c[f>>2]|0)){ba=c[g>>2]|0;c[d+12>>2]=ba;c[f>>2]=ba}}else X=239;while(0);if((X|0)==239){f=d+24|0;if((c[f>>2]|0)==(c[d+8>>2]|0))c[d+12>>2]=0;c[f>>2]=0}if((((a[244]|0?(R=c[62]|0,S=c[j>>2]|0,(R|0)>=(S|0)):0)?(R|0)<((c[O>>2]|0)+S|0):0)?(T=c[63]|0,U=c[P>>2]|0,(T|0)>=(U|0)):0)?(T|0)<((c[Q>>2]|0)+U|0):0){a[k>>0]=1;c[d+56>>2]=((c[d+48>>2]|0)*6|0)+(c[48]|0);c[d+60>>2]=((c[d+52>>2]|0)*7|0)+(c[49]|0)}}while(0);ba=c[d>>2]|0;Bg[c[ba+2439672>>2]&255](ba,a[(c[225]|0)+24>>0]|0);lk(d,1);ba=c[d>>2]|0;Gg[c[ba+2439688>>2]&7](ba,0,129,240,7,15);ba=c[d>>2]|0;lg[c[ba+2439664>>2]&31](ba,d+65604|0,0,130,a[(c[225]|0)+24>>0]|0)|0;break}case 2:{f=eh()|0;k:do if(f|0){g=d+65664|0;h=d+8|0;i=d+65700|0;j=d+12|0;k=d+65704|0;m=d+8|0;n=d+4|0;while(1){l:do switch(c[f>>2]|0){case 768:{f=c[f+16+4>>2]|0;m:do if((f|0)<1073741904){if((f|0)<13){switch(f|0){case 8:break;default:break l}if(!(a[g>>0]|0))break l;a[(WO(g)|0)+-1+(d+65664)>>0]=0;ok(d,MP(c[n>>2]|0,g)|0);break l}if((f|0)>=1073741903)switch(f|0){case 1073741903:break m;default:break l}switch(f|0){case 13:break;default:break l}if((c[Y>>2]|0)==1)break l;a[g>>0]=0;c[i>>2]=c[h>>2];c[k>>2]=c[j>>2];c[Y>>2]=1;break l}else switch(f|0){case 1073741905:case 1073741904:case 1073741906:break;default:break l}while(0);if(a[g>>0]|0){V=(f|2|0)==1073741906;W=c[m>>2]|0;ba=c[j>>2]|0;ok(d,ig[(V?9:8)&63](c[n>>2]|0,(V?W>>>0<ba>>>0:W>>>0>ba>>>0)?W:ba,g)|0)}break}case 771:{f=f+12|0;if((WO(f)|0)==1?((WO(g)|0)+1|0)>>>0<34:0){uQ(g,f)|0;ok(d,MP(c[n>>2]|0,g)|0)}break}default:{}}while(0);f=eh()|0;if(!f)break k}}while(0);ba=c[d>>2]|0;Bg[c[ba+2439672>>2]&255](ba,a[(c[225]|0)+24>>0]|0);lk(d,0);pk(d,88193);ba=c[d>>2]|0;Gg[c[ba+2439688>>2]&7](ba,0,129,240,7,15);ba=c[d>>2]|0;lg[c[ba+2439664>>2]&31](ba,d+65604|0,0,130,a[(c[225]|0)+24>>0]|0)|0;break}case 3:{g=eh()|0;n:do if(!g)f=d+65708|0;else{m=d+65664|0;n=d+8|0;o=d+65700|0;p=d+12|0;q=d+65704|0;k=d+4|0;f=d+65708|0;r=d+48|0;s=d+52|0;t=d+8|0;while(1){o:do switch(c[g>>2]|0){case 768:{switch(c[g+16+4>>2]|0){case 13:break;case 8:{if(!(a[m>>0]|0))break o;a[(WO(m)|0)+-1+(d+65664)>>0]=0;j=sQ(m)|0;j=(j|0)==0?0:j+-1|0;h=c[k>>2]|0;i=a[h>>0]|0;if(!(i<<24>>24))g=0;else{g=0;do{h=h+1|0;g=(i<<24>>24==10&1)+g|0;i=a[h>>0]|0}while(i<<24>>24!=0)}i=(j|0)>(g|0)?g:j;c[p>>2]=0;jk(d,0,i);c[f>>2]=i;c[V>>2]=0;c[W>>2]=0;i=c[k>>2]|0;g=a[i>>0]|0;if(g<<24>>24){j=c[t>>2]|0;h=i;do{if((j|0)==(h|0))break;if(g<<24>>24==10){c[V>>2]=0;g=W}else g=V;c[g>>2]=(c[g>>2]|0)+1;h=h+1|0;g=a[h>>0]|0}while(g<<24>>24!=0);ba=c[V>>2]|0;g=(c[W>>2]|0)+-8|0;c[r>>2]=ba+-20;c[s>>2]=g;if((ba|0)<20)X=301;else j=g}else{c[r>>2]=-20;c[s>>2]=-8;g=-8;X=301}if((X|0)==301){X=0;c[r>>2]=0;j=g}if((j|0)>=0){h=a[i>>0]|0;if(!(h<<24>>24))g=0;else{g=0;do{i=i+1|0;g=(h<<24>>24==10&1)+g|0;h=a[i>>0]|0}while(h<<24>>24!=0)}if((j|0)>(g|0))X=306}else{g=0;X=306}if((X|0)==306){X=0;c[s>>2]=g}ck(d);break o}default:break o}if(a[m>>0]|0){j=sQ(m)|0;j=(j|0)==0?0:j+-1|0;h=c[k>>2]|0;i=a[h>>0]|0;if(!(i<<24>>24))g=0;else{g=0;do{h=h+1|0;g=(i<<24>>24==10&1)+g|0;i=a[h>>0]|0}while(i<<24>>24!=0)}i=(j|0)>(g|0)?g:j;c[p>>2]=0;jk(d,0,i);c[f>>2]=i;c[V>>2]=0;c[W>>2]=0;i=c[k>>2]|0;g=a[i>>0]|0;if(g<<24>>24){j=c[t>>2]|0;h=i;do{if((j|0)==(h|0))break;if(g<<24>>24==10){c[V>>2]=0;g=W}else g=V;c[g>>2]=(c[g>>2]|0)+1;h=h+1|0;g=a[h>>0]|0}while(g<<24>>24!=0);ba=c[V>>2]|0;g=(c[W>>2]|0)+-8|0;c[r>>2]=ba+-20;c[s>>2]=g;if((ba|0)<20)X=281;else j=g}else{c[r>>2]=-20;c[s>>2]=-8;g=-8;X=281}if((X|0)==281){X=0;c[r>>2]=0;j=g}if((j|0)>=0){h=a[i>>0]|0;if(!(h<<24>>24))g=0;else{g=0;do{i=i+1|0;g=(h<<24>>24==10&1)+g|0;h=a[i>>0]|0}while(h<<24>>24!=0)}if((j|0)>(g|0))X=286}else{g=0;X=286}if((X|0)==286){X=0;c[s>>2]=g}ck(d)}if((c[Y>>2]|0)!=1){a[m>>0]=0;c[o>>2]=c[n>>2];c[q>>2]=c[p>>2];c[Y>>2]=1}break}case 771:{g=g+12|0;if(((WO(g)|0)==1?((WO(m)|0)+1|0)>>>0<34:0)?((a[g>>0]|0)+-48&255)<10:0){uQ(m,g)|0;j=sQ(m)|0;j=(j|0)==0?0:j+-1|0;h=c[k>>2]|0;i=a[h>>0]|0;if(!(i<<24>>24))g=0;else{g=0;do{h=h+1|0;g=(i<<24>>24==10&1)+g|0;i=a[h>>0]|0}while(i<<24>>24!=0)}i=(j|0)>(g|0)?g:j;c[p>>2]=0;jk(d,0,i);c[f>>2]=i;c[V>>2]=0;c[W>>2]=0;i=c[k>>2]|0;g=a[i>>0]|0;if(g<<24>>24){j=c[t>>2]|0;h=i;do{if((j|0)==(h|0))break;if(g<<24>>24==10){c[V>>2]=0;g=W}else g=V;c[g>>2]=(c[g>>2]|0)+1;h=h+1|0;g=a[h>>0]|0}while(g<<24>>24!=0);ba=c[V>>2]|0;g=(c[W>>2]|0)+-8|0;c[r>>2]=ba+-20;c[s>>2]=g;if((ba|0)<20)X=321;else j=g}else{c[r>>2]=-20;c[s>>2]=-8;g=-8;X=321}if((X|0)==321){X=0;c[r>>2]=0;j=g}if((j|0)>=0){h=a[i>>0]|0;if(!(h<<24>>24))g=0;else{g=0;do{i=i+1|0;g=(h<<24>>24==10&1)+g|0;h=a[i>>0]|0}while(h<<24>>24!=0)}if((j|0)>(g|0))X=326}else{g=0;X=326}if((X|0)==326){X=0;c[s>>2]=g}ck(d)}break}default:{}}while(0);g=eh()|0;if(!g)break n}}while(0);ba=c[d>>2]|0;Bg[c[ba+2439672>>2]&255](ba,a[(c[225]|0)+24>>0]|0);f=c[f>>2]|0;if((f|0)>-1){ba=c[d>>2]|0;Gg[c[ba+2439688>>2]&7](ba,0,((f-(c[d+52>>2]|0)|0)*6|0)+8|0,240,7,a[(c[225]|0)+25>>0]|0)}lk(d,0);pk(d,88200);ba=c[d>>2]|0;Gg[c[ba+2439688>>2]&7](ba,0,129,240,7,15);ba=c[d>>2]|0;lg[c[ba+2439664>>2]&31](ba,d+65604|0,0,130,a[(c[225]|0)+24>>0]|0)|0;break}case 4:{f=eh()|0;p:do if(f|0){k=d+65716|0;m=d+65712|0;n=d+4|0;o=d+8|0;p=d+12|0;q=d+48|0;r=d+52|0;s=d+8|0;t=d+65664|0;u=d+8|0;v=d+65700|0;w=d+65704|0;while(1){q:do switch(c[f>>2]|0){case 768:{f=c[f+16+4>>2]|0;if((f|0)<1073741905){switch(f|0){case 13:break;case 8:{if(!(a[t>>0]|0))break q;a[(WO(t)|0)+-1+(d+65664)>>0]=0;ik(d);break q}default:break q}f=c[m>>2]|0;g=c[k>>2]|0;h=c[f+(g*44|0)+40>>2]|0;if(!h){j=c[n>>2]|0;c[o>>2]=j;h=j;f=0}else{c[s>>2]=h;f=h+(WO(f+(g*44|0)|0)|0)|0;j=c[n>>2]|0}c[p>>2]=f;c[V>>2]=0;c[W>>2]=0;f=a[j>>0]|0;if(f<<24>>24){g=j;do{if((h|0)==(g|0))break;if(f<<24>>24==10){c[V>>2]=0;f=W}else f=V;c[f>>2]=(c[f>>2]|0)+1;g=g+1|0;f=a[g>>0]|0}while(f<<24>>24!=0);ba=c[V>>2]|0;f=(c[W>>2]|0)+-8|0;c[q>>2]=ba+-20;c[r>>2]=f;if((ba|0)<20)X=380;else i=f}else{c[q>>2]=-20;c[r>>2]=-8;f=-8;X=380}if((X|0)==380){X=0;c[q>>2]=0;i=f}if((i|0)>=0){g=a[j>>0]|0;if(!(g<<24>>24))f=0;else{f=0;h=j;do{h=h+1|0;f=(g<<24>>24==10&1)+f|0;g=a[h>>0]|0}while(g<<24>>24!=0)}if((i|0)>(f|0))X=385}else{f=0;X=385}if((X|0)==385){X=0;c[r>>2]=f}ck(d);if((c[Y>>2]|0)==1)break q;a[t>>0]=0;c[v>>2]=c[u>>2];c[w>>2]=c[p>>2];c[Y>>2]=1;break q}switch(f|0){case 1073741906:break;case 1073741905:{f=c[k>>2]|0;if((f|0)>=19)break q;g=c[m>>2]|0;f=f+1|0;i=c[g+(f*44|0)+40>>2]|0;if(!i)break q;c[k>>2]=f;c[s>>2]=i;f=i+(WO(g+(f*44|0)|0)|0)|0;h=c[n>>2]|0;c[p>>2]=f;c[V>>2]=0;c[W>>2]=0;f=a[h>>0]|0;if(f<<24>>24){g=h;do{if((i|0)==(g|0))break;if(f<<24>>24==10){c[V>>2]=0;f=W}else f=V;c[f>>2]=(c[f>>2]|0)+1;g=g+1|0;f=a[g>>0]|0}while(f<<24>>24!=0);ba=c[V>>2]|0;f=(c[W>>2]|0)+-8|0;c[q>>2]=ba+-20;c[r>>2]=f;if((ba|0)<20)X=363;else i=f}else{c[q>>2]=-20;c[r>>2]=-8;f=-8;X=363}if((X|0)==363){X=0;c[q>>2]=0;i=f}if((i|0)>=0){g=a[h>>0]|0;if(!(g<<24>>24))f=0;else{f=0;do{h=h+1|0;f=(g<<24>>24==10&1)+f|0;g=a[h>>0]|0}while(g<<24>>24!=0)}if((i|0)>(f|0))X=368}else{f=0;X=368}if((X|0)==368){X=0;c[r>>2]=f}ck(d);break q}default:break q}f=c[k>>2]|0;if((f|0)>0){f=f+-1|0;c[k>>2]=f;g=c[m>>2]|0;h=c[g+(f*44|0)+40>>2]|0;if(!h){j=c[n>>2]|0;c[o>>2]=j;h=j;f=0}else{c[s>>2]=h;f=h+(WO(g+(f*44|0)|0)|0)|0;j=c[n>>2]|0}c[p>>2]=f;c[V>>2]=0;c[W>>2]=0;f=a[j>>0]|0;if(f<<24>>24){g=j;do{if((h|0)==(g|0))break;if(f<<24>>24==10){c[V>>2]=0;f=W}else f=V;c[f>>2]=(c[f>>2]|0)+1;g=g+1|0;f=a[g>>0]|0}while(f<<24>>24!=0);ba=c[V>>2]|0;f=(c[W>>2]|0)+-8|0;c[q>>2]=ba+-20;c[r>>2]=f;if((ba|0)<20)X=347;else i=f}else{c[q>>2]=-20;c[r>>2]=-8;f=-8;X=347}if((X|0)==347){X=0;c[q>>2]=0;i=f}if((i|0)>=0){g=a[j>>0]|0;if(!(g<<24>>24))f=0;else{f=0;h=j;do{h=h+1|0;f=(g<<24>>24==10&1)+f|0;g=a[h>>0]|0}while(g<<24>>24!=0)}if((i|0)>(f|0))X=352}else{f=0;X=352}if((X|0)==352){X=0;c[r>>2]=f}ck(d)}break}case 771:{f=f+12|0;if((WO(f)|0)==1?((WO(t)|0)+1|0)>>>0<34:0){uQ(t,f)|0;ik(d)}break}default:{}}while(0);f=eh()|0;if(!f)break p}}while(0);ba=c[d>>2]|0;Bg[c[ba+2439672>>2]&255](ba,a[(c[225]|0)+24>>0]|0);lk(d,0);pk(d,88207);ba=c[d>>2]|0;Gg[c[ba+2439688>>2]&7](ba,0,129,240,7,15);ba=c[d>>2]|0;lg[c[ba+2439664>>2]&31](ba,d+65604|0,0,130,a[(c[225]|0)+24>>0]|0)|0;if(((((c[48]|0)+-168|0)>>>0<72?(x=c[49]|0,(x+-14|0)>>>0<122):0)?(ba=x+-14|0,y=(ba|0)/7|0,(ba|0)<140):0)?(z=c[d+65712>>2]|0,A=c[z+(y*44|0)+40>>2]|0,A|0):0){c[68]=11;if((a[204]|0?((c[52]|0)+-168|0)>>>0<72:0)?((c[53]|0)+-14|0)>>>0<122:0){c[d+65716>>2]=y;c[d+8>>2]=A;f=A+(WO(z+(y*44|0)|0)|0)|0;i=c[d+4>>2]|0;c[d+12>>2]=f;c[V>>2]=0;c[W>>2]=0;f=a[i>>0]|0;if(f<<24>>24){g=i;do{if((A|0)==(g|0))break;if(f<<24>>24==10){c[V>>2]=0;f=W}else f=V;c[f>>2]=(c[f>>2]|0)+1;g=g+1|0;f=a[g>>0]|0}while(f<<24>>24!=0);ba=c[V>>2]|0;f=(c[W>>2]|0)+-8|0;g=d+48|0;c[g>>2]=ba+-20;h=d+52|0;c[h>>2]=f;if((ba|0)<20)X=407;else j=f}else{g=d+48|0;c[g>>2]=-20;h=d+52|0;c[h>>2]=-8;f=-8;X=407}if((X|0)==407){c[g>>2]=0;j=f}if((j|0)>=0){g=a[i>>0]|0;if(!(g<<24>>24))f=0;else{f=0;do{i=i+1|0;f=(g<<24>>24==10&1)+f|0;g=a[i>>0]|0}while(g<<24>>24!=0)}if((j|0)>(f|0))X=412}else{f=0;X=412}if((X|0)==412)c[h>>2]=f;ck(d)}if(((((a[205]|0?((c[52]|0)+-168|0)>>>0<72:0)?((c[53]|0)+-14|0)>>>0<122:0)?((c[54]|0)+-168|0)>>>0<72:0)?((c[55]|0)+-14|0)>>>0<122:0)?(a[205]=0,(c[Y>>2]|0)!=1):0){a[d+65664>>0]=0;c[d+65700>>2]=c[d+8>>2];c[d+65704>>2]=c[d+12>>2];c[Y>>2]=1}}f=c[d>>2]|0;Gg[c[f+2439688>>2]&7](f,167,14,73,122,8);f=c[d+65712>>2]|0;g=f+40|0;h=c[d>>2]|0;if(!(c[g>>2]|0)){lg[c[h+2439664>>2]&31](h,88214,168,15,15)|0;break a}Gg[c[h+2439688>>2]&7](h,167,((c[d+65716>>2]|0)*7|0)+14|0,73,7,6);if(c[g>>2]|0){g=15;while(1){ba=c[d>>2]|0;lg[c[ba+2439664>>2]&31](ba,f,168,g,15)|0;if(!(c[f+84>>2]|0))break;else{g=g+7|0;f=f+44|0}}}break}default:{}}while(0);k=c[d>>2]|0;Gg[c[k+2439688>>2]&7](k,0,0,240,7,15);k=d+65724|0;m=d+65664|0;n=d+8|0;o=d+65700|0;p=d+12|0;q=d+65704|0;r=d+8|0;s=d+65708|0;j=0;do{f=j*7|0;t=f+212|0;g=c[48]|0;do if((g|0)>=(t|0)?(Z=f+219|0,(g|0)<(Z|0)&(c[49]|0)>>>0<7):0){c[68]=11;XP(804,c[2420+(j<<2)>>2]|0,39)|0;if(((a[205]|0)!=0?(ba=c[52]|0,(ba|0)>=(t|0)&(ba|0)<(Z|0)&(c[53]|0)>>>0<7):0)?(ba=c[54]|0,(ba|0)>=(t|0)&(ba|0)<(Z|0)&(c[55]|0)>>>0<7):0){a[205]=0;if(!j){dh();f=3;break}f=j+1|0;if((c[Y>>2]|0)==(f|0)){vg[c[k>>2]&511](d);f=3;X=442;break}a[m>>0]=0;i=c[n>>2]|0;c[o>>2]=i;g=c[p>>2]|0;c[q>>2]=g;h=g;switch(j|0){case 1:{if(g|0?(_=c[(i>>>0<h>>>0?r:p)>>2]|0,$=(c[(i>>>0>h>>>0?r:p)>>2]|0)-_|0,($+-1|0)>>>0<32):0){RQ(d+65664+$|0,0,34-$|0)|0;PQ(m|0,_|0,$|0)|0}break}case 2:{c[s>>2]=-1;break}case 3:{ik(d);break}default:{}}c[Y>>2]=f;f=3;X=442}else{f=3;X=442}}else{f=10;X=442}while(0);if((X|0)==442){X=0;if(j|0?(j|0)==((c[Y>>2]|0)+-1|0):0){f=c[d>>2]|0;Gg[c[f+2439688>>2]&7](f,t,0,7,7,8);f=15}}Xg(t,0,88222+(j<<3)|0,f&255);j=j+1|0}while((j|0)!=4);Vg(c[d>>2]|0,a[(c[225]|0)+24>>0]|0);ba=d+65648|0;c[ba>>2]=(c[ba>>2]|0)+1;l=aa;return}function $j(a){a=a|0;var b=0,d=0,e=0;b=a+65660|0;if((c[b>>2]|0)==1)return;e=a+65700|0;c[a+8>>2]=c[e>>2];d=a+65704|0;c[a+12>>2]=c[d>>2];c[e>>2]=0;c[d>>2]=0;c[b>>2]=1;ck(a);return}function ak(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+16|0;g=m;switch(d|0){case 0:{dk(b);l=m;return}case 1:{d=c[b+8>>2]|0;f=c[b+12>>2]|0;a:do if((f|0)==0|(f|0)==(d|0)){e=c[b+4>>2]|0;if(e>>>0<d>>>0){f=e;do{b=f;f=f+1|0;e=(a[b>>0]|0)==10?f:e}while((f|0)!=(d|0))}do{f=a[d>>0]|0;if(!(f<<24>>24))break a;d=d+1|0}while(f<<24>>24!=10)}else{e=f>>>0<d>>>0?f:d;d=f>>>0>d>>>0?f:d}while(0);d=d-e|0;f=eN(d+1|0)|0;if(!f){l=m;return}PQ(f|0,e|0,d|0)|0;a[f+d>>0]=0;e=c[80021]|0;do if(e){d=c[e+240>>2]|0;if(!d){b=e+288|0;fN(c[b>>2]|0);c[b>>2]=nP(f)|0;break}else{hg[d&63](e,f)|0;break}}else mE(310358,g);while(0);fN(f);l=m;return}case 2:{ek(b);l=m;return}case 3:{i=c[b+65652>>2]|0;d=c[i>>2]|0;if(c[d+4>>2]|0){e=c[d+12>>2]|0;h=d+16|0;if(e>>>0<(c[h>>2]|0)>>>0){f=d+8|0;g=i+8|0;d=e;e=0;while(1){k=(c[g>>2]|0)+d|0;a[k>>0]=a[k>>0]^a[(c[f>>2]|0)+e>>0];d=d+1|0;if(d>>>0>=(c[h>>2]|0)>>>0)break;else e=e+1|0}d=c[i>>2]|0}c[i>>2]=c[d+4>>2]}PQ(c[i+12>>2]|0,c[i+8>>2]|0,c[i+4>>2]|0)|0;i=c[b+65656>>2]|0;d=c[i>>2]|0;if(c[d+4>>2]|0){e=c[d+12>>2]|0;h=d+16|0;if(e>>>0<(c[h>>2]|0)>>>0){f=d+8|0;g=i+8|0;d=e;e=0;while(1){k=(c[g>>2]|0)+d|0;a[k>>0]=a[k>>0]^a[(c[f>>2]|0)+e>>0];d=d+1|0;if(d>>>0>=(c[h>>2]|0)>>>0)break;else e=e+1|0}d=c[i>>2]|0}c[i>>2]=c[d+4>>2]}PQ(c[i+12>>2]|0,c[i+8>>2]|0,c[i+4>>2]|0)|0;ck(b);d=b+68|0;RQ(d|0,a[(c[225]|0)+22>>0]|0,65536)|0;e=c[b>>2]|0;e=gg[c[e+2439828>>2]&511](e)|0;f=c[e+24>>2]|0;if(!f){l=m;return}Eg[f&63](e,c[b+4>>2]|0,d,(c[225]|0)+16|0);l=m;return}case 4:{h=c[b+65652>>2]|0;d=c[c[h>>2]>>2]|0;if(d|0?(c[h>>2]=d,e=c[d+12>>2]|0,i=d+16|0,e>>>0<(c[i>>2]|0)>>>0):0){f=d+8|0;g=h+8|0;d=e;e=0;while(1){n=(c[g>>2]|0)+d|0;a[n>>0]=a[n>>0]^a[(c[f>>2]|0)+e>>0];d=d+1|0;if(d>>>0>=(c[i>>2]|0)>>>0)break;else e=e+1|0}}PQ(c[h+12>>2]|0,c[h+8>>2]|0,c[h+4>>2]|0)|0;h=c[b+65656>>2]|0;d=c[c[h>>2]>>2]|0;if(d|0?(c[h>>2]=d,j=c[d+12>>2]|0,k=d+16|0,j>>>0<(c[k>>2]|0)>>>0):0){f=d+8|0;g=h+8|0;d=j;e=0;while(1){n=(c[g>>2]|0)+d|0;a[n>>0]=a[n>>0]^a[(c[f>>2]|0)+e>>0];d=d+1|0;if(d>>>0>=(c[k>>2]|0)>>>0)break;else e=e+1|0}}PQ(c[h+12>>2]|0,c[h+8>>2]|0,c[h+4>>2]|0)|0;ck(b);d=b+68|0;RQ(d|0,a[(c[225]|0)+22>>0]|0,65536)|0;e=c[b>>2]|0;e=gg[c[e+2439828>>2]&511](e)|0;f=c[e+24>>2]|0;if(!f){l=m;return}Eg[f&63](e,c[b+4>>2]|0,d,(c[225]|0)+16|0);l=m;return}default:{l=m;return}}}function bk(b){b=b|0;var d=0,e=0,f=0;ck(b);d=b+68|0;RQ(d|0,a[(c[225]|0)+22>>0]|0,65536)|0;f=c[b>>2]|0;f=gg[c[f+2439828>>2]&511](f)|0;e=c[f+24>>2]|0;if(!e)return;Eg[e&63](f,c[b+4>>2]|0,d,(c[225]|0)+16|0);return}function ck(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+80|0;p=q+16|0;o=q;g=q+28|0;h=q+24|0;m=q+32|0;c[g>>2]=0;c[h>>2]=0;n=b+4|0;k=c[n>>2]|0;d=a[k>>0]|0;if(!(d<<24>>24))j=0;else{f=c[b+8>>2]|0;e=k;do{if((f|0)==(e|0))break;if(d<<24>>24==10){c[g>>2]=0;d=h}else d=g;c[d>>2]=(c[d>>2]|0)+1;e=e+1|0;d=a[e>>0]|0}while(d<<24>>24!=0);j=c[g>>2]|0}e=b+48|0;d=c[e>>2]|0;if((j|0)>=(d|0)){if((j|0)>=(d+40|0)){d=j+-39|0;i=11}}else{d=j;i=11}if((i|0)==11)c[e>>2]=d;h=c[h>>2]|0;e=b+52|0;d=c[e>>2]|0;if((h|0)>=(d|0)){if((h|0)>=(d+17|0)){d=h+-16|0;i=15}}else{d=h;i=15}if((i|0)==15)c[e>>2]=d;c[b+28>>2]=30;g=b+65604|0;d=g;e=d+40|0;do{c[d>>2]=538976288;d=d+4|0}while((d|0)<(e|0));d=a[k>>0]|0;if(!(d<<24>>24))d=1;else{f=0;e=k;do{e=e+1|0;f=(d<<24>>24==10&1)+f|0;d=a[e>>0]|0}while(d<<24>>24!=0);d=f+1|0}c[o>>2]=h+1;c[o+4>>2]=d;c[o+8>>2]=j+1;MN(m,88169,o)|0;PQ(g|0,m|0,WO(m)|0)|0;o=WO(c[n>>2]|0)|0;c[p>>2]=o;c[p+4>>2]=65536;MN(m,88187,p)|0;RQ((c[n>>2]|0)+o|0,0,65536-o|0)|0;p=WO(m)|0;PQ(b+65645+(0-p)+-1|0,m|0,p|0)|0;l=q;return}function dk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;g=j;h=b+8|0;d=c[h>>2]|0;i=b+12|0;f=c[i>>2]|0;a:do if((f|0)==0|(f|0)==(d|0)){e=c[b+4>>2]|0;if(e>>>0<d>>>0){f=e;do{k=f;f=f+1|0;e=(a[k>>0]|0)==10?f:e}while((f|0)!=(d|0))}do{f=a[d>>0]|0;if(!(f<<24>>24))break a;d=d+1|0}while(f<<24>>24!=10)}else{e=f>>>0<d>>>0?f:d;d=f>>>0>d>>>0?f:d}while(0);d=d-e|0;f=eN(d+1|0)|0;if(f|0){PQ(f|0,e|0,d|0)|0;a[f+d>>0]=0;e=c[80021]|0;do if(e){d=c[e+240>>2]|0;if(!d){k=e+288|0;fN(c[k>>2]|0);c[k>>2]=nP(f)|0;break}else{hg[d&63](e,f)|0;break}}else mE(310358,g);while(0);fN(f)}d=c[h>>2]|0;e=c[i>>2]|0;if(!((e|0)==0|(e|0)==(d|0))){k=e>>>0<d>>>0?e:d;d=e>>>0>d>>>0?e:d;QQ(k|0,d|0,(WO(d)|0)+1|0)|0;c[h>>2]=k;c[i>>2]=0;d=b+65652|0;if(Tj(c[d>>2]|0)|0)Tj(c[b+65656>>2]|0)|0;e=b+68|0;RQ(e|0,a[(c[225]|0)+22>>0]|0,65536)|0;f=c[b>>2]|0;f=gg[c[f+2439828>>2]&511](f)|0;g=c[f+24>>2]|0;if(g)Eg[g&63](f,c[b+4>>2]|0,e,(c[225]|0)+16|0)}else d=b+65652|0;if(!(Tj(c[d>>2]|0)|0)){l=j;return}Tj(c[b+65656>>2]|0)|0;l=j;return}function ek(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;g=k+8|0;f=c[80021]|0;if(!f){mE(310474,k);l=k;return}e=c[f+248>>2]|0;if(!e){e=c[f+288>>2]|0;if(!e){l=k;return}if(!(a[e>>0]|0)){l=k;return}else h=9}else{if(!(gg[e&511](f)|0)){l=k;return}e=c[80021]|0;if(!e){mE(310416,g);j=nP(335059)|0}else{f=e;h=9}}do if((h|0)==9){e=c[f+244>>2]|0;if(!e){j=c[f+288>>2]|0;j=nP(j|0?j:335059)|0;break}else{j=gg[e&511](f)|0;break}}while(0);if(!j){l=k;return}e=a[j>>0]|0;if(e<<24>>24?(i=j+1|0,d=j+(e<<24>>24!=13&1)|0,h=a[i>>0]|0,a[d>>0]=h,h<<24>>24):0){e=i;do{i=e;e=e+1|0;d=d+((a[i>>0]|0)!=13&1)|0;i=a[e>>0]|0;a[d>>0]=i}while(i<<24>>24!=0)}d=WO(j)|0;if(d|0){h=b+8|0;e=c[h>>2]|0;f=b+12|0;g=c[f>>2]|0;if(!((g|0)==0|(g|0)==(e|0))){i=g>>>0<e>>>0?g:e;g=g>>>0>e>>>0?g:e;QQ(i|0,g|0,(WO(g)|0)+1|0)|0;c[h>>2]=i;c[f>>2]=0;if(Tj(c[b+65652>>2]|0)|0)Tj(c[b+65656>>2]|0)|0;e=b+68|0;RQ(e|0,a[(c[225]|0)+22>>0]|0,65536)|0;f=c[b>>2]|0;f=gg[c[f+2439828>>2]&511](f)|0;g=c[f+24>>2]|0;if(g|0)Eg[g&63](f,c[b+4>>2]|0,e,(c[225]|0)+16|0)}f=c[h>>2]|0;g=b+4|0;i=WO(c[g>>2]|0)|0;e=65536-i|0;if((i+d|0)>>>0>65536){a[j+e>>0]=0;d=e}QQ(f+d|0,f|0,(WO(f)|0)+1|0)|0;PQ(f|0,j|0,d|0)|0;c[h>>2]=(c[h>>2]|0)+d;if(Tj(c[b+65652>>2]|0)|0)Tj(c[b+65656>>2]|0)|0;f=b+68|0;RQ(f|0,a[(c[225]|0)+22>>0]|0,65536)|0;e=c[b>>2]|0;e=gg[c[e+2439828>>2]&511](e)|0;d=c[e+24>>2]|0;if(d|0)Eg[d&63](e,c[g>>2]|0,f,(c[225]|0)+16|0)}fN(j);l=k;return}function fk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=c[b+4>>2]|0;g=b+8|0;e=(c[g>>2]|0)+-1|0;if(e>>>0<=d>>>0)return;f=a[e>>0]|0;a:do if(f<<24>>24==95|(nO(f<<24>>24)|0)!=0)while(1){if(e>>>0<=d>>>0)break a;f=e+-1|0;h=a[f>>0]|0;if(h<<24>>24==95|(nO(h<<24>>24)|0)!=0)e=f;else break}else while(1){if(e>>>0<=d>>>0)break a;f=e+-1|0;h=a[f>>0]|0;if(h<<24>>24==95|(nO(h<<24>>24)|0)!=0)break;else e=f}while(0);c[g>>2]=e;g=e;if(d>>>0<e>>>0){f=d;do{h=f;f=f+1|0;d=(a[h>>0]|0)==10?f:d}while((f|0)!=(e|0))}c[b+20>>2]=g-d;return}function gk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=c[b+4>>2]|0;f=d+(WO(d)|0)|0;g=b+8|0;e=c[g>>2]|0;if(e>>>0>=f>>>0)return;h=a[e>>0]|0;a:do if(h<<24>>24==95|(nO(h<<24>>24)|0)!=0)do{e=e+1|0;if(e>>>0>=f>>>0)break a;h=a[e>>0]|0}while(h<<24>>24==95|(nO(h<<24>>24)|0)!=0);else do{e=e+1|0;if(e>>>0>=f>>>0)break a;h=a[e>>0]|0}while(!(h<<24>>24==95|(nO(h<<24>>24)|0)!=0));while(0);c[g>>2]=e;g=e;if(d>>>0<e>>>0){f=d;do{h=f;f=f+1|0;d=(a[h>>0]|0)==10?f:d}while((f|0)!=(e|0))}c[b+20>>2]=g-d;return}function hk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;f=b+8|0;g=c[f>>2]|0;n=b+12|0;h=c[n>>2]|0;i=(h|0)!=0;l=i&(h|0)!=(g|0);if(!(d|e|l)){qk(b,9);return}j=i&h>>>0<g>>>0?h:g;e=i&h>>>0>g>>>0?h:g;m=b+4|0;g=c[m>>2]|0;if(g>>>0<j>>>0){h=g;do{k=h;h=h+1|0;g=(a[k>>0]|0)==10?h:g}while((h|0)!=(j|0));k=g}else k=g;if(!k)return;if(d){g=k;h=0;do{switch(a[g>>0]|0){case 32:case 9:{QQ(g|0,g+1|0,(WO(g)|0)+1|0)|0;h=1;e=e+-1|0;break}default:{}}do{i=a[g>>0]|0;if(!(i<<24>>24))break;g=g+1|0}while(i<<24>>24!=10)}while(g>>>0<e>>>0&(g|0)!=0);if(!(h&1))return}else{g=k;while(1){QQ(g+1|0,g|0,(WO(g)|0)+1|0)|0;a[g>>0]=9;j=e+1|0;i=9;while(1){h=g+1|0;if(i<<24>>24==10)break;i=a[h>>0]|0;if(!(i<<24>>24))break;else g=h}if(g>>>0<e>>>0){g=h;e=j}else{e=j;break}}}if(!l){if(k>>>0<=e>>>0)o=20}else{c[f>>2]=k;f=n;o=20}if((o|0)==20)c[f>>2]=e;if(Tj(c[b+65652>>2]|0)|0)Tj(c[b+65656>>2]|0)|0;g=b+68|0;RQ(g|0,a[(c[225]|0)+22>>0]|0,65536)|0;f=c[b>>2]|0;f=gg[c[f+2439828>>2]&511](f)|0;e=c[f+24>>2]|0;if(!e)return;Eg[e&63](f,c[m>>2]|0,g,(c[225]|0)+16|0);return}function ik(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+96|0;s=v+48|0;t=v+8|0;m=v;r=b+65716|0;c[r>>2]=0;p=b+65712|0;RQ(c[p>>2]|0,0,880)|0;q=c[p>>2]|0;f=c[b>>2]|0;g=s;h=g+40|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0));k=b+65664|0;d=WO(k)|0;d=d>>>0<39?d:39;RQ(t+d|0,0,40-d|0)|0;PQ(t|0,k|0,d|0)|0;a[t+d>>0]=0;d=a[t>>0]|0;if(d<<24>>24){e=t;do{a[e>>0]=rN(d&255)|0;e=e+1|0;d=a[e>>0]|0}while(d<<24>>24!=0)}d=c[(gg[c[f+2439828>>2]&511](f)|0)+20>>2]|0;if(d|0?(c[m>>2]=0,n=b+4|0,o=hg[d&63](c[n>>2]|0,m)|0,(c[m>>2]|0)>0):0){k=a[t>>0]|0;d=0;j=0;do{e=(c[n>>2]|0)+(c[o+(j<<3)>>2]|0)|0;i=q+(d*44|0)+40|0;c[i>>2]=e;f=q+(d*44|0)|0;g=f;h=g+40|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(h|0));h=c[o+(j<<3)+4>>2]|0;PQ(f|0,e|0,((h|0)<39?h:39)|0)|0;do if(k<<24>>24){e=WO(f)|0;e=e>>>0<39?e:39;PQ(s|0,f|0,e|0)|0;a[s+e>>0]=0;e=a[s>>0]|0;if(e<<24>>24){f=s;do{a[f>>0]=rN(e&255)|0;f=f+1|0;e=a[f>>0]|0}while(e<<24>>24!=0)}if(!(MP(s,t)|0)){c[i>>2]=0;break}else{d=d+1|0;break}}else d=d+1|0;while(0);j=j+1|0}while((d|0)<20?(j|0)<(c[m>>2]|0):0)}DO(c[p>>2]|0,20,44,9);f=c[p>>2]|0;d=c[r>>2]|0;e=c[f+(d*44|0)+40>>2]|0;if(!e){g=c[b+4>>2]|0;c[b+8>>2]=g;e=g;d=0}else{c[b+8>>2]=e;d=e+(WO(f+(d*44|0)|0)|0)|0;g=c[b+4>>2]|0}c[b+12>>2]=d;c[s>>2]=0;c[t>>2]=0;d=a[g>>0]|0;if(d<<24>>24){f=g;do{if((e|0)==(f|0))break;if(d<<24>>24==10){c[s>>2]=0;d=t}else d=s;c[d>>2]=(c[d>>2]|0)+1;f=f+1|0;d=a[f>>0]|0}while(d<<24>>24!=0);s=c[s>>2]|0;e=(c[t>>2]|0)+-8|0;d=b+48|0;c[d>>2]=s+-20;f=b+52|0;c[f>>2]=e;if((s|0)<20)u=25;else h=f}else{d=b+48|0;c[d>>2]=-20;f=b+52|0;c[f>>2]=-8;e=-8;u=25}if((u|0)==25){c[d>>2]=0;h=f}if((e|0)>=0){f=a[g>>0]|0;if(!(f<<24>>24))d=0;else{d=0;do{g=g+1|0;d=(f<<24>>24==10&1)+d|0;f=a[g>>0]|0}while(f<<24>>24!=0)}if((e|0)<=(d|0)){ck(b);l=v;return}}else d=0;c[h>>2]=d;ck(b);l=v;return}function jk(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;f=c[b+4>>2]|0;g=a[f>>0]|0;a:do if(g<<24>>24){k=0;j=0;h=f;while(1){i=(k|0)==(e|0);if((j|0)==(d|0)&i){g=3;break}if(g<<24>>24==10){if((j|0)<(d|0)&i){g=8;break}i=k+1|0;j=0}else{i=k;j=j+1|0}h=h+1|0;g=a[h>>0]|0;if(!(g<<24>>24))break a;else k=i}if((g|0)==3){c[b+8>>2]=h;i=h;if(f>>>0<h>>>0){g=f;do{e=g;g=g+1|0;f=(a[e>>0]|0)==10?g:f}while((g|0)!=(h|0))}c[b+20>>2]=i-f;ck(b);return}else if((g|0)==8){c[b+8>>2]=h;i=h;if(f>>>0<h>>>0){g=f;do{e=g;g=g+1|0;f=(a[e>>0]|0)==10?g:f}while((g|0)!=(h|0))}c[b+20>>2]=i-f;ck(b);return}}else h=f;while(0);c[b+8>>2]=h;i=h;if(f>>>0<h>>>0){g=f;do{e=g;g=g+1|0;f=(a[e>>0]|0)==10?g:f}while((g|0)!=(h|0))}c[b+20>>2]=i-f;ck(b);return}function kk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=b+8|0;f=c[e>>2]|0;g=b+12|0;h=c[g>>2]|0;if((h|0)==0|(h|0)==(f|0)){qk(b,d);return}i=h>>>0<f>>>0?h:f;h=h>>>0>f>>>0?h:f;QQ(i|0,h|0,(WO(h)|0)+1|0)|0;c[e>>2]=i;c[g>>2]=0;if(Tj(c[b+65652>>2]|0)|0)Tj(c[b+65656>>2]|0)|0;e=b+68|0;RQ(e|0,a[(c[225]|0)+22>>0]|0,65536)|0;f=c[b>>2]|0;f=gg[c[f+2439828>>2]&511](f)|0;g=c[f+24>>2]|0;if(!g){qk(b,d);return}Eg[g&63](f,c[b+4>>2]|0,e,(c[225]|0)+16|0);qk(b,d);return}function lk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=(O(c[b+48>>2]|0,-6)|0)+(c[b+32>>2]|0)|0;f=(O(c[b+52>>2]|0,-7)|0)+(c[b+36>>2]|0)|0;g=c[b+4>>2]|0;o=b+12|0;r=c[o>>2]|0;p=b+8|0;e=c[p>>2]|0;q=r>>>0<e>>>0?r:e;r=r>>>0>e>>>0?r:e;l=a[g>>0]|0;if(!(l<<24>>24)){k=s;j=f;h=-1;i=0;f=-1}else{j=f;n=b+68|0;k=s;h=-1;i=0;f=-1;while(1){m=k+6|0;if((j+6|0)>>>0<142&m>>>0<246){if(!(g>>>0<r>>>0&(g>>>0>=q>>>0&(c[o>>2]|0)!=0))){if(a[(c[225]|0)+27>>0]|0){e=c[b>>2]|0;lg[c[e+2439656>>2]&31](e,l,k+1|0,j+1|0,0)|0}}else{e=c[b>>2]|0;Gg[c[e+2439688>>2]&7](e,k+-1|0,j+-1|0,7,7,a[(c[225]|0)+25>>0]|0)}e=c[b>>2]|0;lg[c[e+2439656>>2]&31](e,l,k,j,a[n>>0]|0)|0;e=c[p>>2]|0}t=(e|0)==(g|0);i=t?l:i;f=t?j:f;h=t?k:h;k=l<<24>>24==10;j=k?j+7|0:j;k=k?s:m;g=g+1|0;l=a[g>>0]|0;if(!(l<<24>>24))break;else n=n+1|0}}e=(e|0)==(g|0);f=e?j:f;e=e?k:h;if(!((e|f|0)>-1&d))return;if((c[b+28>>2]|0)==0?(((c[b+65648>>2]|0)>>>0)%60|0)>>>0>=30:0)return;t=c[b>>2]|0;Gg[c[t+2439688>>2]&7](t,e+-1|0,f+-1|0,7,7,a[(c[225]|0)+26>>0]|0);if(!(i<<24>>24))return;t=c[b>>2]|0;lg[c[t+2439656>>2]&31](t,i,e,f,a[(c[225]|0)+24>>0]|0)|0;return}function mk(a,b,c){a=a|0;b=b|0;c=c|0;var d=0;d=WO(c)|0;a:do if(!d)b=0;else do{b=b+-1|0;if(b>>>0<a>>>0){b=0;break a}}while((KN(b,c,d)|0)!=0);while(0);return b|0}function nk(a,b,c){a=a|0;b=b|0;c=c|0;return MP(b,c)|0}function ok(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;h=k+4|0;i=k;if(!d){l=k;return}c[b+8>>2]=d;c[b+12>>2]=d+(WO(b+65664|0)|0);c[h>>2]=0;c[i>>2]=0;g=c[b+4>>2]|0;e=a[g>>0]|0;if(e<<24>>24){f=g;do{if((f|0)==(d|0))break;if(e<<24>>24==10){c[h>>2]=0;e=i}else e=h;c[e>>2]=(c[e>>2]|0)+1;f=f+1|0;e=a[f>>0]|0}while(e<<24>>24!=0);h=c[h>>2]|0;e=(c[i>>2]|0)+-8|0;f=b+48|0;c[f>>2]=h+-20;d=b+52|0;c[d>>2]=e;if((h|0)<20)j=9;else h=e}else{f=b+48|0;c[f>>2]=-20;d=b+52|0;c[d>>2]=-8;e=-8;j=9}if((j|0)==9){c[f>>2]=0;h=e}if((h|0)>=0){f=a[g>>0]|0;if(!(f<<24>>24))e=0;else{e=0;do{g=g+1|0;e=(f<<24>>24==10&1)+e|0;f=a[g>>0]|0}while(f<<24>>24!=0)}if((h|0)>(e|0))j=14}else{e=0;j=14}if((j|0)==14)c[d>>2]=e;ck(b);l=k;return}function pk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=c[b>>2]|0;Gg[c[g+2439688>>2]&7](g,0,7,240,7,8);g=c[b>>2]|0;lg[c[g+2439664>>2]&31](g,d,0,8,15)|0;g=c[b>>2]|0;h=c[g+2439664>>2]|0;e=b+65664|0;f=(WO(d)|0)*6|0;lg[h&31](g,e,f,8,15)|0;d=WO(d)|0;d=((WO(e)|0)+d|0)*6|0;if((c[b+28>>2]|0)==0?(((c[b+65648>>2]|0)>>>0)%60|0)>>>0>=30:0)return;h=c[b>>2]|0;Gg[c[h+2439688>>2]&7](h,d+-1|0,7,7,7,a[(c[225]|0)+26>>0]|0);h=c[b>>2]|0;lg[c[h+2439656>>2]&31](h,32,d,8,a[(c[225]|0)+24>>0]|0)|0;return}function qk(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=b+4|0;if((WO(c[h>>2]|0)|0)>>>0>65535)return;f=b+8|0;g=c[f>>2]|0;QQ(g+1|0,g|0,(WO(g)|0)+1|0)|0;g=c[f>>2]|0;c[f>>2]=g+1;a[g>>0]=d;if(Tj(c[b+65652>>2]|0)|0)Tj(c[b+65656>>2]|0)|0;g=c[b+8>>2]|0;d=c[h>>2]|0;f=g;if(d>>>0<f>>>0){e=d;do{i=e;e=e+1|0;d=(a[i>>0]|0)==10?e:d}while((e|0)!=(f|0))}c[b+20>>2]=g-d;f=b+68|0;RQ(f|0,a[(c[225]|0)+22>>0]|0,65536)|0;d=c[b>>2]|0;d=gg[c[d+2439828>>2]&511](d)|0;e=c[d+24>>2]|0;if(!e)return;Eg[e&63](d,c[h>>2]|0,f,(c[225]|0)+16|0);return}function rk(a,b){a=a|0;b=b|0;if(!(c[a+40>>2]|0)){b=1;return b|0}if(!(c[b+40>>2]|0)){b=-1;return b|0}b=VO(a,b)|0;return b|0}function sk(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=l;l=l+16|0;r=s;e=eh()|0;if(e|0){g=b+28|0;h=b+12|0;i=b+16|0;do{a:do if((c[e>>2]|0)==768)switch(c[e+16>>2]|0){case 80:{c[g>>2]=c[g>>2]&1^1;m=c[3]|0;n=m+1309748|0;n=d[n>>0]|d[n+1>>0]<<8;Ig[c[m+2439748>>2]&7](m,2,(n&65535)>>>8&15,n&7,-1,0,15,0);break a}case 43:case 79:{c[g>>2]=c[g>>2]&1^1;m=c[3]|0;n=m+1309748|0;n=d[n>>0]|d[n+1>>0]<<8;Ig[c[m+2439748>>2]&7](m,2,(n&65535)>>>8&15,n&7,-1,0,15,0);break a}case 44:case 40:{e=c[h>>2]|0;f=c[i>>2]|0;if(!(c[g>>2]|0)){Bg[e&255](1,f);e=c[47]|0;if((e|0)==2){n=c[3]|0;vg[c[n+2439788>>2]&511](n);c[45]=2;break a}else{Wg(e);break a}}else{Bg[e&255](0,f);e=c[47]|0;if((e|0)==2){n=c[3]|0;vg[c[n+2439788>>2]&511](n);c[45]=2;break a}else{Wg(e);break a}}}default:break a}while(0);e=eh()|0}while((e|0)!=0)}e=b+4|0;if(!(a[e>>0]|0)){m=c[3]|0;n=m+1309616|0;n=d[n>>0]|d[n+1>>0]<<8;Ig[c[m+2439748>>2]&7](m,0,(n&65535)>>>8&15,n&7,-1,0,15,0);a[e>>0]=1}PQ(c[b>>2]|0,c[b+8>>2]|0,16320)|0;k=c[b>>2]|0;h=b+32|0;e=c[h>>2]|0;m=60-e|0;i=b+36|0;f=c[i>>2]|0;n=37-f|0;j=n+-6|0;g=c[48]|0;if(((((((g|0)>=(m|0)?(o=m+120|0,(g|0)<(o|0)):0)?(p=c[49]|0,!((p|0)<(j|0)|(p|0)>(n|0))):0)?(c[68]=11,a[204]|0):0)?(t=c[52]|0,(t|0)>=(m|0)&(t|0)<(o|0)):0)?(t=c[53]|0,!((t|0)<(j|0)|(t|0)>(n|0))):0)?(q=b+48|0,(a[q>>0]|0)==0):0){c[b+40>>2]=e+g;c[b+44>>2]=f+p;a[q>>0]=1}e=b+48|0;if(a[e>>0]|0?(c[68]=11,c[h>>2]=(c[b+40>>2]|0)-(c[48]|0),c[i>>2]=(c[b+44>>2]|0)-(c[49]|0),!((a[204]|0)!=0&(c[52]|0)>>>0<240&(c[53]|0)>>>0<136)):0)a[e>>0]=0;t=k+2439688|0;Gg[c[t>>2]&7](k,m,n,120,61,8);Gg[c[k+2439692>>2]&7](k,m,n,120,61,15);h=k+2439684|0;f=n+61|0;Gg[c[h>>2]&7](k,m,f,m+119|0,f,0);f=n+-5|0;Gg[c[t>>2]&7](k,m,f,120,5,15);Gg[c[h>>2]&7](k,m+1|0,j,m+118|0,j,15);h=k+2439660|0;t=lg[c[h>>2]&31](k,88312,0,-6,0)|0;lg[c[h>>2]&31](k,88312,((120-t|0)/2|0)+m|0,f,7)|0;a[r>>0]=14;Lg[c[k+2439700>>2]&1](k,k+1260276|0,2,m+6|0,n+-4|0,2,2,r,1,1,0,0);f=b+24|0;if((c[f>>2]|0)<=0){r=m+34|0;t=n+45|0;vk(b,88321,r,t,1,6,203,0);r=m+66|0;vk(b,88325,r,t,5,11,204,1);l=s;return}g=b+20|0;e=0;do{r=((120-(lg[c[h>>2]&31](k,c[(c[g>>2]|0)+(e<<2)>>2]|0,0,-6,0)|0)|0)/2|0)+m|0;q=e;e=e+1|0;t=(e*7|0)+n|0;lg[c[h>>2]&31](k,c[(c[g>>2]|0)+(q<<2)>>2]|0,r,t+1|0,0)|0;lg[c[h>>2]&31](k,c[(c[g>>2]|0)+(q<<2)>>2]|0,r,t,15)|0}while((e|0)<(c[f>>2]|0));r=m+34|0;t=n+45|0;vk(b,88321,r,t,1,6,203,0);r=m+66|0;vk(b,88325,r,t,5,11,204,1);l=s;return}function tk(a){a=a|0;Bg[c[a+12>>2]&255](0,c[a+16>>2]|0);a=c[47]|0;if((a|0)==2){a=c[3]|0;vg[c[a+2439788>>2]&511](a);c[45]=2;return}else{Wg(a);return}}function uk(a){a=a|0;Bg[c[a+12>>2]&255](1,c[a+16>>2]|0);a=c[47]|0;if((a|0)==2){a=c[3]|0;vg[c[a+2439788>>2]&511](a);c[45]=2;return}else{Wg(a);return}}function vk(b,d,e,f,g,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0;o=c[b>>2]|0;l=c[48]|0;do if((((l|0)>=(e|0)?(m=e+20|0,(l|0)<(m|0)):0)?(k=c[49]|0,(k|0)>=(f|0)):0)?(n=f+9|0,(k|0)<(n|0)):0){c[68]=11;if(((a[204]|0)!=0?(l=c[52]|0,(l|0)>=(e|0)&(l|0)<(m|0)):0)?(l=c[53]|0,(l|0)>=(f|0)&(l|0)<(n|0)):0){c[b+28>>2]=j;k=1}else k=0;if(((((a[205]|0)!=0?(l=c[52]|0,(l|0)>=(e|0)&(l|0)<(m|0)):0)?(l=c[53]|0,(l|0)>=(f|0)&(l|0)<(n|0)):0)?(l=c[54]|0,(l|0)>=(e|0)&(l|0)<(m|0)):0)?(m=c[55]|0,(m|0)>=(f|0)&(m|0)<(n|0)):0){a[205]=0;vg[i&511](b);l=o+2439688|0;m=c[l>>2]|0;g=f+1|0;if(k)l=m;else{p=18;break}}else p=16;if((p|0)==16){l=o+2439688|0;m=c[l>>2]|0;g=f+1|0;if(k)l=m;else{p=18;break}}Gg[l&7](o,e,g,20,9,15)}else p=15;while(0);if((p|0)==15){l=o+2439688|0;h=g;k=0;m=c[l>>2]|0;g=f+1|0;p=18}if((p|0)==18){Gg[m&7](o,e,g,20,9,0);Gg[c[l>>2]&7](o,e,f,20,9,15)}i=o+2439660|0;p=lg[c[i>>2]&31](o,d,0,-6,0)|0;lg[c[i>>2]&31](o,d,((21-p|0)/2|0)+e|0,(k?3:2)+f|0,h)|0;if((c[b+28>>2]|0)!=(j|0))return;p=e+-5|0;Xg(p,f+3|0,88328,0);Xg(p,f+2|0,88328,15);return}function wk(a){a=a|0;Bg[c[a+12>>2]&255](0,c[a+16>>2]|0);a=c[47]|0;if((a|0)==2){a=c[3]|0;vg[c[a+2439788>>2]&511](a);c[45]=2;return}else{Wg(a);return}}function xk(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=l;l=l+4144|0;F=G+8|0;E=G;y=G+48|0;z=G+16|0;D=b+16|0;c[D>>2]=(c[D>>2]|0)+1;e=eh()|0;if(e|0){h=b+28|0;f=b+4|0;do{if((c[e>>2]|0)==769?(g=c[h>>2]|0,(g|0)>=0):0){e=c[e+16>>2]|0;if((e|0)!=41){c[292+(g<<2)>>2]=e;w=c[f>>2]|0;x=w+4096|0;aP(y,x)|0;RQ(x|0,0,4096)|0;Di(w,88336,292,384,1)|0;aP(x,y)|0}c[h>>2]=-1}e=eh()|0}while((e|0)!=0)}if((c[45]|0)!=10){l=G;return}e=b+8|0;if(!(a[e>>0]|0)){w=c[3]|0;x=w+1309616|0;x=d[x>>0]|d[x+1>>0]<<8;Ig[c[w+2439748>>2]&7](w,0,(x&65535)>>>8&15,x&7,-1,0,15,0);a[e>>0]=1}PQ(c[b>>2]|0,c[b+12>>2]|0,16320)|0;f=b+52|0;switch(c[f>>2]|0){case 0:{F=c[b>>2]|0;if(jg[c[F+2439796>>2]&31](F,0,30,5)|0){e=b+20|0;f=c[e>>2]|0;do{f=(f|0)<1?4:(f+-1|0)%5|0;c[e>>2]=f}while(!(a[c[2436+(f<<2)>>2]>>0]|0));E=c[3]|0;F=E+1309748|0;F=d[F>>0]|d[F+1>>0]<<8;Ig[c[E+2439748>>2]&7](E,2,(F&65535)>>>8&15,F&7,-1,0,15,0)}F=c[b>>2]|0;s=b+20|0;if(jg[c[F+2439796>>2]&31](F,1,30,5)|0){e=c[s>>2]|0;do{e=(e+1|0)%5|0;c[s>>2]=e}while(!(a[c[2436+(e<<2)>>2]>>0]|0));E=c[3]|0;F=E+1309748|0;F=d[F>>0]|d[F+1>>0]<<8;Ig[c[E+2439748>>2]&7](E,2,(F&65535)>>>8&15,F&7,-1,0,15,0)}F=c[b>>2]|0;if(jg[c[F+2439796>>2]&31](F,4,-1,-1)|0)vg[c[2456+(c[s>>2]<<2)>>2]&511](b);m=c[b>>2]|0;yk(b);n=82-(c[b+32>>2]|0)|0;o=53-(c[b+36>>2]|0)|0;p=m+2439660|0;q=n+-7|0;r=n+86|0;e=0;while(1){j=c[2436+(e<<2)>>2]|0;if(a[j>>0]|0){k=o+(e*7|0)|0;F=c[48]|0;if(((F|0)>=(n|0)&(F|0)<(r|0)?(t=c[49]|0,(t|0)>=(k|0)):0)?(u=k+7|0,(t|0)<(u|0)):0){c[68]=11;if(((a[204]|0)!=0?(F=c[52]|0,(F|0)>=(n|0)&(F|0)<(r|0)):0)?(F=c[53]|0,(F|0)>=(k|0)&(F|0)<(u|0)):0){c[s>>2]=e;f=1}else f=0;if((((a[205]|0?(F=c[52]|0,(F|0)>=(n|0)&(F|0)<(r|0)):0)?(F=c[53]|0,(F|0)>=(k|0)&(F|0)<(u|0)):0)?(F=c[54]|0,(F|0)>=(n|0)&(F|0)<(r|0)):0)?(F=c[55]|0,(F|0)>=(k|0)&(F|0)<(u|0)):0)break;g=c[p>>2]|0;i=k+1|0;if(f)lg[g&31](m,j,n,i,10)|0;else{h=10;f=i;v=40}}else{h=15;g=c[p>>2]|0;f=k+1|0;v=40}if((v|0)==40){v=0;lg[g&31](m,j,n,f,0)|0;lg[c[p>>2]&31](m,j,n,k,h)|0}if((e|0)==(c[s>>2]|0)){Xg(q,k+1|0,88354,0);Xg(q,k,88354,15)}}e=e+1|0;if(e>>>0>=5){v=108;break}}if((v|0)==108){l=G;return}a[205]=0;vg[c[2456+(e<<2)>>2]&511](b);l=G;return}case 1:{x=b+28|0;if((c[x>>2]|0)<0?(w=c[b>>2]|0,jg[c[w+2439796>>2]&31](w,4,-1,-1)|0):0){c[f>>2]=0;u=c[3]|0;w=u+1309748|0;w=d[w>>0]|d[w+1>>0]<<8;Ig[c[u+2439748>>2]&7](u,2,(w&65535)>>>8&15,w&7,-1,0,15,0)}yk(b);i=c[b>>2]|0;n=60-(c[b+32>>2]|0)|0;q=37-(c[b+36>>2]|0)|0;j=n+25|0;k=q+49|0;e=c[48]|0;if((((e|0)>=(j|0)?(o=n+49|0,(e|0)<(o|0)):0)?(m=c[49]|0,(m|0)>=(k|0)):0)?(p=q+55|0,(m|0)<(p|0)):0){c[68]=11;if((a[204]|0)!=0?(w=c[52]|0,(w|0)>=(j|0)&(w|0)<(o|0)):0){h=c[53]|0;h=(h|0)<(p|0)&(h|0)>=(k|0)}else h=0;if((((a[205]|0?(w=c[52]|0,(w|0)>=(j|0)&(w|0)<(o|0)):0)?(w=c[53]|0,(w|0)>=(k|0)&(w|0)<(p|0)):0)?(w=c[54]|0,(w|0)>=(j|0)&(w|0)<(o|0)):0)?(w=c[55]|0,(w|0)>=(k|0)&(w|0)<(p|0)):0){a[205]=0;c[x>>2]=-1;c[f>>2]=0;E=c[3]|0;F=E+1309748|0;F=d[F>>0]|d[F+1>>0]<<8;Ig[c[E+2439748>>2]&7](E,2,(F&65535)>>>8&15,F&7,-1,0,15,0);l=G;return}f=i+2439660|0;g=c[f>>2]|0;e=q+50|0;if(h)lg[g&31](i,88362,j,e,10)|0;else{h=10;v=64}}else{f=i+2439660|0;h=15;e=q+50|0;g=c[f>>2]|0;v=64}if((v|0)==64){lg[g&31](i,88362,j,e,0)|0;lg[c[f>>2]&31](i,88362,j,k,h)|0}u=n+18|0;Xg(u,e,88367,0);Xg(u,k,88367,15);u=q+4|0;w=c[b>>2]|0;v=w+2439688|0;Gg[c[v>>2]&7](w,j,u,90,41,15);p=w+2439676|0;Eg[c[p>>2]&63](w,j,u,8);o=n+114|0;Eg[c[p>>2]&63](w,o,u,8);u=q+44|0;Eg[c[p>>2]&63](w,j,u,0);Eg[c[p>>2]&63](w,o,u,0);Gg[c[v>>2]&7](w,n+26|0,q+45|0,88,1,0);w=b+24|0;v=q+47|0;Eg[((c[w>>2]|0)==0?6:5)&63](b,n+98|0,v,0);Eg[((c[w>>2]|0)==1?6:5)&63](b,n+82|0,v,1);Eg[((c[w>>2]|0)==2?6:5)&63](b,n+66|0,v,2);Eg[((c[w>>2]|0)==3?6:5)&63](b,n+50|0,v,3);v=n+28|0;u=q+7|0;n=c[b>>2]|0;a[y>>0]=0;o=n+2439700|0;p=n+1260276|0;q=z+5|0;r=n+2439660|0;m=0;do{s=v+(((m|0)/4|0)*43|0)|0;t=u+(((m|0)%4|0)*9|0)|0;f=(c[w>>2]<<3)+m|0;e=c[48]|0;if((((e|0)>=(s|0)?(A=s+41|0,(e|0)<(A|0)):0)?(B=c[49]|0,(B|0)>=(t|0)):0)?(C=t+8|0,(B|0)<(C|0)):0){c[68]=11;if(((((a[205]|0)!=0?(b=c[52]|0,(b|0)>=(s|0)&(b|0)<(A|0)):0)?(b=c[53]|0,(b|0)>=(t|0)&(b|0)<(C|0)):0)?(b=c[54]|0,(b|0)>=(s|0)&(b|0)<(A|0)):0)?(b=c[55]|0,(b|0)>=(t|0)&(b|0)<(C|0)):0){a[205]=0;c[x>>2]=(c[x>>2]|0)!=(f|0)?f:-1;k=7}else k=7}else k=0;if(!((c[x>>2]|0)==(f|0)?((c[D>>2]|0)%60|0|0)<30:0)){Lg[c[o>>2]&1](n,p,m+8|0,s,t,1,1,y,1,1,0,0);e=c[292+(f<<2)>>2]|0;a:do if(!e)e=287391;else{b:do if(e>>>0>511){c[E>>2]=310117;mE(310091,E);e=0}else{e=c[321792+(e<<2)>>2]|0;if(e&1073741824|0){e=e&-1073741825;if(e>>>0>511){c[F>>2]=310117;mE(310091,F);e=335059;break a}else{e=c[30520+(e<<2)>>2]|0;e=(e|0)==0?335059:e;break a}}switch(e|0){case 13:{e=308572;break a}case 27:{e=308579;break a}case 8:{e=308586;break a}case 9:{e=308596;break a}case 32:{e=308600;break a}case 127:{e=308724;break a}default:break b}}while(0);i=(e+-97|0)>>>0<26?e+-32|0:e;do if(i>>>0>=128){e=i>>>6;j=(i&63|128)&255;if(i>>>0<2048){a[335051]=e&31|192;a[335052]=j;e=2;break}f=i>>>12;h=(e&63|128)&255;if(i>>>0<65536){a[335051]=f&15|224;a[335052]=h;a[335053]=j;e=3;break}e=i>>>18;f=(f&63|128)&255;if(i>>>0<2097152){a[335051]=e&7|240;a[335052]=f;a[335053]=h;a[335054]=j;e=4;break}g=i>>>24;e=(e&63|128)&255;if(i>>>0<67108864){a[335051]=g&3|248;a[335052]=e;a[335053]=f;a[335054]=h;a[335055]=j;e=5;break}else{a[335051]=i>>>30&1|252;a[335052]=g&63|128;a[335053]=e;a[335054]=f;a[335055]=h;a[335056]=j;e=6;break}}else{a[335051]=i;e=1}while(0);a[335051+e>>0]=0;e=335051}while(0);aP(z,e)|0;if((WO(z)|0)>>>0>5)a[q>>0]=0;lg[c[r>>2]&31](n,z,s+10|0,t+2|0,k)|0}m=m+1|0}while((m|0)!=8);l=G;return}default:{l=G;return}}}function yk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+16|0;p=r;n=b+32|0;e=c[n>>2]|0;o=b+36|0;d=c[o>>2]|0;g=60-e|0;q=c[b>>2]|0;i=31-d|0;m=c[48]|0;if((((((((m|0)>=(g|0)?(j=g+120|0,(m|0)<(j|0)):0)?(k=c[49]|0,(k|0)>=(i|0)):0)?(f=i+7|0,(k|0)<(f|0)):0)?(c[68]=11,a[204]|0):0)?(s=c[52]|0,(s|0)>=(g|0)&(s|0)<(j|0)):0)?(s=c[53]|0,(s|0)>=(i|0)&(s|0)<(f|0)):0)?(h=b+48|0,(a[h>>0]|0)==0):0){c[b+40>>2]=e+m;c[b+44>>2]=d+k;a[h>>0]=1}f=b+48|0;if(a[f>>0]|0){c[68]=11;e=(c[b+40>>2]|0)-m|0;c[n>>2]=e;d=(c[b+44>>2]|0)-(c[49]|0)|0;c[o>>2]=d;if(!((a[204]|0)!=0&(c[52]|0)>>>0<240&(c[53]|0)>>>0<136))a[f>>0]=0}o=60-e|0;s=37-d|0;m=q+2439688|0;Gg[c[m>>2]&7](q,o,s,120,61,8);Gg[c[q+2439692>>2]&7](q,o,s,120,61,15);n=q+2439684|0;b=s+61|0;Gg[c[n>>2]&7](q,o,b,o+119|0,b,0);b=s+-5|0;Gg[c[m>>2]&7](q,o,b,120,5,15);m=s+-6|0;Gg[c[n>>2]&7](q,o+1|0,m,o+118|0,m,15);m=q+2439660|0;n=lg[c[m>>2]&31](q,88382,0,-6,0)|0;lg[c[m>>2]&31](q,88382,((120-n|0)/2|0)+o|0,b,7)|0;a[p>>0]=14;Lg[c[q+2439700>>2]&1](q,q+1260276|0,0,o+6|0,s+-4|0,2,2,p,1,1,0,0);l=r;return}function zk(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;g=l;l=l+16|0;i=g;h=g+4|0;b=c[b>>2]|0;j=b+2439688|0;Gg[c[j>>2]&7](b,d,e+-2|0,15,9,15);m=b+2439676|0;k=e+6|0;Eg[c[m>>2]&63](b,d,k,0);Eg[c[m>>2]&63](b,d+14|0,k,0);Gg[c[j>>2]&7](b,d+1|0,e+7|0,13,1,0);a[h>>0]=a[88375]|0;a[h+1>>0]=a[88376]|0;a[h+2>>0]=a[88377]|0;c[i>>2]=f+1;MN(h,88378,i)|0;lg[c[b+2439664>>2]&31](b,h,d+2|0,e,7)|0;l=g;return}function Ak(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;o=p;m=p+4|0;n=c[b>>2]|0;j=b+24|0;if(((((c[j>>2]|0)!=(f|0)?(k=c[48]|0,(k|0)>=(d|0)):0)?(g=d+15|0,(k|0)<(g|0)):0)?(h=c[49]|0,(h|0)>=(e|0)):0)?(i=e+7|0,(h|0)<(i|0)):0){c[68]=11;if(((a[204]|0)!=0?(k=c[52]|0,(k|0)>=(d|0)&(k|0)<(g|0)):0)?(k=c[53]|0,(k|0)>=(e|0)&(k|0)<(i|0)):0){c[j>>2]=f;c[b+28>>2]=-1;l=p;return}else b=10}else b=7;Gg[c[n+2439688>>2]&7](n,d,e+-1|0,15,8,3);j=n+2439676|0;k=e+6|0;Eg[c[j>>2]&63](n,d,k,8);Eg[c[j>>2]&63](n,d+14|0,k,8);a[m>>0]=a[88375]|0;a[m+1>>0]=a[88376]|0;a[m+2>>0]=a[88377]|0;c[o>>2]=f+1;MN(m,88378,o)|0;lg[c[n+2439664>>2]&31](n,m,d+2|0,e,b)|0;l=p;return}function Bk(a){a=a|0;a=c[3]|0;vg[c[a+2439788>>2]&511](a);c[45]=2;return}function Ck(a){a=a|0;var b=0;a=c[a>>2]|0;vg[c[a+2439780>>2]&511](a);a=c[45]|0;switch(a|0){case 10:case 9:case 1:case 0:break;case 11:{c[46]=3;break}case 2:return;default:c[46]=a}ki(c[223]|0,c[222]|0,c[3]|0);c[45]=2;b=c[80021]|0;if(!b)return;a=c[b+224>>2]|0;if(!a)return;if(!(gg[a&511](b)|0))return;if((c[45]|2|0)!=3)return;aN();return}function Dk(a){a=a|0;var b=0,e=0;e=c[3]|0;b=e+1309748|0;b=d[b>>0]|d[b+1>>0]<<8;Ig[c[e+2439748>>2]&7](e,2,(b&65535)>>>8&15,b&7,-1,0,15,0);c[a+52>>2]=1;c[a+24>>2]=0;return}function Ek(b){b=b|0;var d=0,e=0;b=c[45]|0;a:do if((c[46]|0)==11){b:do switch(b|0){case 11:break a;case 2:{e=c[3]|0;vg[c[e+2439784>>2]&511](e);e=c[3]|0;vg[c[e+2439780>>2]&511](e);break}default:{e=c[3]|0;vg[c[e+2439780>>2]&511](e);switch(b|0){case 9:case 10:case 1:case 0:break b;default:{}}c[46]=b}}while(0);b=c[228]|0;vg[c[b+48>>2]&511](b);c[45]=11;b=c[80021]|0;if(((b|0?(d=c[b+224>>2]|0,d|0):0)?gg[d&511](b)|0:0)?(c[45]|2|0)==3:0)aN()}else{c:do switch(b|0){case 1:break a;case 2:{d=c[3]|0;vg[c[d+2439784>>2]&511](d);d=c[3]|0;vg[c[d+2439780>>2]&511](d);break}default:{d=c[3]|0;vg[c[d+2439780>>2]&511](d);switch(b|0){case 9:case 10:case 0:break c;case 11:{c[46]=3;break c}default:{c[46]=b;break c}}}}while(0);c[45]=1;b=c[80021]|0;if(((b|0?(e=c[b+224>>2]|0,e|0):0)?gg[e&511](b)|0:0)?(c[45]|2|0)==3:0)aN()}while(0);a[(c[222]|0)+13125>>0]=0;return}function Fk(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+12304|0;D=E+4104|0;r=E+4096|0;w=E;C=E+4112|0;p=E+8208|0;s=E+4108|0;g=b+20|0;if(!(a[g>>0]|0)){Hk(b);c[b+16>>2]=2492;c[624]=0;if((c[626]|0)>0){f=c[623]|0;e=0;do{B=c[f+(e<<2)>>2]|0;c[c[B+12>>2]>>2]=c[B>>2];e=e+1|0}while((e|0)<(c[626]|0))}c[624]=0;c[628]=0;a[g>>0]=1}e=b+24|0;c[e>>2]=(c[e>>2]|0)+1;do{}while((eh()|0)!=0);o=c[b>>2]|0;Bg[c[o+2439672>>2]&255](o,0);n=c[b>>2]|0;i=(c[e>>2]|0)%16|0;j=n+1260276|0;k=n+2439700|0;f=0;g=0;while(1){m=(f<<4)-i|0;e=0;h=g;while(1){if(h&1|0)Lg[c[k>>2]&1](n,j,34,(e<<4)-i|0,m,2,2,0,0,1,0,0);e=e+1|0;if((e|0)==17)break;else h=h+1|0}f=f+1|0;if((f|0)==10)break;else g=g+17|0}B=b+40|0;if((c[B>>2]|0)<=0){C=o+2439660|0;D=lg[c[C>>2]&31](o,88524,0,-6,15)|0;lg[c[C>>2]&31](o,88524,(240-D|0)/2|0,65,15)|0;l=E;return}o=b+16|0;f=c[o>>2]|0;e=c[f+4>>2]|0;do if((e|0)>(c[f+8>>2]|0)){e=c[f+20>>2]|0;if(e){vg[e&511](b);f=c[o>>2]|0}i=c[f+16>>2]|0;if(!i){e=c[f+4>>2]|0;break}c[o>>2]=i;f=i+4|0;c[f>>2]=0;g=i+12|0;if((c[g>>2]|0)>0){h=c[i>>2]|0;e=0;do{y=c[h+(e<<2)>>2]|0;c[c[y+12>>2]>>2]=c[y>>2];e=e+1|0}while((e|0)<(c[g>>2]|0))}c[f>>2]=0;c[i+20>>2]=0;e=0;f=i}while(0);m=f+12|0;n=f+4|0;if((c[m>>2]|0)>0){k=c[f>>2]|0;j=0;do{i=c[k+(j<<2)>>2]|0;g=c[i+8>>2]|0;h=c[i+4>>2]|0;if((e|0)<(g|0)){y=c[i>>2]|0;e=((O(h-y|0,e)|0)/(g|0)|0)+y|0}else e=h;c[c[i+12>>2]>>2]=e;j=j+1|0;e=c[n>>2]|0}while((j|0)<(c[m>>2]|0))}c[n>>2]=e+1;g=b+28|0;y=b+32|0;e=c[y>>2]|0;do if(e|0){e=e+(e>>31|1)|0;c[y>>2]=e;if((e|0)<-9){c[y>>2]=0;v=c[g>>2]|0;c[g>>2]=v+-1;if((v|0)>=1)break;c[g>>2]=(c[B>>2]|0)+-1;break}else{if((e|0)<=9)break;c[y>>2]=0;v=(c[g>>2]|0)+1|0;c[g>>2]=(v|0)<(c[B>>2]|0)?v:0;break}}while(0);if((f|0)==317292){g=c[b>>2]|0;h=g+2439796|0;if(jg[c[h>>2]&31](g,0,20,10)|0){c[y>>2]=-1;u=c[3]|0;v=u+1309748|0;v=d[v>>0]|d[v+1>>0]<<8;Ig[c[u+2439748>>2]&7](u,2,(v&65535)>>>8&15,v&7,-1,0,15,0)}if(jg[c[h>>2]&31](g,1,20,10)|0){c[y>>2]=1;u=c[3]|0;v=u+1309748|0;v=d[v>>0]|d[v+1>>0]<<8;Ig[c[u+2439748>>2]&7](u,2,(v&65535)>>>8&15,v&7,-1,0,15,0)}do if(jg[c[h>>2]&31](g,4,-1,-1)|0){e=c[b+36>>2]|0;f=c[b+28>>2]|0;if(a[e+(f*24|0)+20>>0]|0){Ik(b,c[e+(f*24|0)+4>>2]|0);break}c[o>>2]=2596;c[650]=0;if((c[652]|0)>0){f=c[649]|0;e=0;do{v=c[f+(e<<2)>>2]|0;c[c[v+12>>2]>>2]=c[v>>2];e=e+1|0}while((e|0)<(c[652]|0))}c[650]=0;c[654]=205}while(0);if(jg[c[h>>2]&31](g,5,-1,-1)|0)Ik(b,287388)}i=c[b>>2]|0;t=b+36|0;j=c[t>>2]|0;u=b+28|0;k=c[u>>2]|0;v=b+4|0;f=c[v>>2]|0;e=f+4096|0;if((JN(e,84322)|0)!=0?(KN(e,84340,18)|0)!=0:0){c[C>>2]=0;e=j+(k*24|0)+4|0;g=Bi(f,c[e>>2]|0,C)|0;if(g|0){h=eN(1178356)|0;if(h|0){e=c[e>>2]|0;o=(JN(e+(WO(e)|0)+-4|0,88459)|0)==0;f=c[C>>2]|0;if(o){o=c[b+8>>2]|0;lg[c[o+13136>>2]&31](o,e,g,f,h)|0}else Eg[c[i+2439808>>2]&63](h,g,f,1);if(c[h+1047792>>2]|0)Kk(c[b>>2]|0,c[u>>2]|0,c[t>>2]|0,h+1047796|0);fN(h)}fN(g)}}else x=61;if(((x|0)==61?(q=c[j+(k*24|0)+8>>2]|0,q|0):0)?(c[j+(k*24|0)+16>>2]|0)==0:0){c[s>>2]=0;RQ(C|0,0,4096)|0;c[w>>2]=q;MN(C,88464,w)|0;e=c[v>>2]|0;o=e+4096|0;aP(w,o)|0;RQ(o|0,0,4096)|0;e=Bi(e,C,s)|0;aP(o,w)|0;do if(!e){RQ(p|0,0,4096)|0;c[r>>2]=q;MN(p,88484,r)|0;e=eN(0)|0;c[s>>2]=0;if(!e)break;else{s=c[v>>2]|0;x=s+4096|0;aP(w,x)|0;RQ(x|0,0,4096)|0;Di(s,C,e,0,0)|0;aP(x,w)|0;x=68;break}}else x=68;while(0);if((x|0)==68){Kk(c[b>>2]|0,c[u>>2]|0,c[t>>2]|0,e);fN(e)}}f=c[(c[t>>2]|0)+((c[u>>2]|0)*24|0)+16>>2]|0;if(f|0){g=c[b>>2]|0;e=0;do{i=e*120|0;h=g+i|0;i=f+i|0;j=h+120|0;do{a[h>>0]=a[i>>0]|0;h=h+1|0;i=i+1|0}while((h|0)<(j|0));e=e+1|0}while((e|0)!=136);if(c[(c[t>>2]|0)+((c[u>>2]|0)*24|0)+16>>2]|0){m=c[79331]|0;s=c[b>>2]|0;e=c[79332]|0;if(e|0?(x=10-e|0,A=((x|0)/2|0)+62|0,x=(x|0)<-125,z=x?0:A,A=e+2+(x?A:0)+z|0,A=(A|0)<136?A:136,(z|0)<(A|0)):0){i=z;do{j=i*240|0;h=0;do{z=h+j|0;k=s+(z>>>1)|0;z=z&1;f=d[k>>0]|0;e=f&15;g=z|0?f>>>4:f;if(!z){e=f&240;a[k>>0]=e;f=g&3}else{a[k>>0]=e;f=g<<4&48}a[k>>0]=f|e;h=h+1|0}while((h|0)!=240);i=i+1|0}while((i|0)<(A|0))}if((c[B>>2]|0)>0){r=s+2439660|0;q=(m|0)<-3?0:m+3|0;m=m+4|0;n=0;do{o=63-(c[y>>2]|0)+((n-(c[u>>2]|0)|0)*10|0)|0;p=lg[c[r>>2]&31](s,c[(c[t>>2]|0)+(n*24|0)>>2]|0,0,-6,0)|0;e=(o|0)<-1?0:o+1|0;p=m+p|0;o=o+9|0;p=(p|0)<240?p:240;o=(o|0)<136?o:136;if((e|0)<(o|0)&(q|0)<(p|0))do{j=e*240|0;i=q;do{A=i+j|0;k=s+(A>>>1)|0;A=A&1;g=d[k>>0]|0;f=g&15;h=A|0?g>>>4:g;if(!A){f=g&240;a[k>>0]=f;g=h&3}else{a[k>>0]=f;g=h<<4&48}a[k>>0]=g|f;i=i+1|0}while((i|0)<(p|0));e=e+1|0}while((e|0)<(o|0));n=n+1|0}while((n|0)<(c[B>>2]|0))}}}e=c[79331]|0;g=c[b>>2]|0;A=c[79332]|0;Gg[c[g+2439688>>2]&7](g,0,((10-A|0)/2|0)+63|0,240,A,6);if((c[B>>2]|0)>0){h=g+2439660|0;f=e+4|0;e=0;do{z=c[(c[t>>2]|0)+(e*24|0)>>2]|0;A=63-(c[y>>2]|0)+((e-(c[u>>2]|0)|0)*10|0)|0;lg[c[h>>2]&31](g,z,f,A+3|0,0)|0;lg[c[h>>2]&31](g,z,f,A+2|0,15)|0;e=e+1|0}while((e|0)<(c[B>>2]|0))}f=c[79329]|0;e=c[b>>2]|0;h=e+2439688|0;Gg[c[h>>2]&7](e,0,f+-10|0,240,10,8);Gg[c[h>>2]&7](e,0,f,240,1,0);h=C;i=88503;j=h+12|0;do{a[h>>0]=a[i>>0]|0;h=h+1|0;i=i+1|0}while((h|0)<(j|0));B=f+-8|0;A=e+2439660|0;z=f+-7|0;lg[c[A>>2]&31](e,C,4,z,0)|0;lg[c[A>>2]&31](e,C,4,B,15)|0;a[C>>0]=0;w=e+2439700|0;x=e+1260276|0;y=f+-9|0;Lg[c[w>>2]&1](e,x,12,150,y,1,1,C,1,1,0,0);lg[c[A>>2]&31](e,88086,160,z,0)|0;lg[c[A>>2]&31](e,88086,160,B,15)|0;Lg[c[w>>2]&1](e,x,13,204,y,1,1,C,1,1,0,0);lg[c[A>>2]&31](e,88515,214,z,0)|0;lg[c[A>>2]&31](e,88515,214,B,15)|0;B=136-(c[79330]|0)|0;b=c[b>>2]|0;A=b+2439688|0;Gg[c[A>>2]&7](b,0,B,240,10,8);Gg[c[A>>2]&7](b,0,B+10|0,240,1,0);c[D>>2]=(c[v>>2]|0)+4096;MN(C,88520,D)|0;D=b+2439660|0;lg[c[D>>2]&31](b,C,4,B+3|0,0)|0;lg[c[D>>2]&31](b,C,4,B+2|0,15)|0;l=E;return}function Gk(a){a=a|0;var b=0,d=0;c[a+16>>2]=2492;c[624]=0;if((c[626]|0)<=0){c[624]=0;c[628]=0;return}b=c[623]|0;a=0;do{d=c[b+(a<<2)>>2]|0;c[c[d+12>>2]>>2]=c[d>>2];a=a+1|0}while((a|0)<(c[626]|0));c[624]=0;c[628]=0;return}function Hk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+4112|0;k=m;h=m+16|0;i=m+4|0;j=b+36|0;e=c[j>>2]|0;if(e|0){g=b+40|0;if((c[g>>2]|0)>0){d=0;while(1){fN(c[e+(d*24|0)+4>>2]|0);e=c[j>>2]|0;f=c[e+(d*24|0)+8>>2]|0;if(f){fN(f);e=c[j>>2]|0}f=c[e+(d*24|0)+16>>2]|0;if(f){fN(f);e=c[j>>2]|0}e=c[e+(d*24|0)>>2]|0;if(e|0)fN(e);d=d+1|0;if((d|0)>=(c[g>>2]|0))break;e=c[j>>2]|0}d=c[j>>2]|0}else d=e;fN(d);c[j>>2]=0;c[g>>2]=0}c[b+28>>2]=0;c[b+32>>2]=0;d=eN(6144)|0;c[i>>2]=d;e=i+4|0;c[e>>2]=0;c[i+8>>2]=b;f=b+4|0;g=c[f>>2]|0;if(!(a[g+4096>>0]|0)){k=g;xi(k,4,i);k=c[i>>2]|0;c[j>>2]=k;j=c[e>>2]|0;k=b+40|0;c[k>>2]=j;l=m;return}c[e>>2]=1;c[d+4>>2]=nP(287388)|0;c[k>>2]=287388;MN(h,88558,k)|0;c[d>>2]=nP(h)|0;c[d+8>>2]=0;c[d+12>>2]=0;a[d+20>>0]=1;c[d+16>>2]=0;a[d+21>>0]=0;k=c[f>>2]|0;xi(k,4,i);k=c[i>>2]|0;c[j>>2]=k;j=c[e>>2]|0;k=b+40|0;c[k>>2]=j;l=m;return}function Ik(b,e){b=b|0;e=e|0;var f=0,g=0;g=(JN(e,287388)|0)==0;f=c[b+4>>2]|0;if(g){if(!(a[f+4096>>0]|0))return;f=c[3]|0;g=f+1309748|0;g=d[g>>0]|d[g+1>>0]<<8;Ig[c[f+2439748>>2]&7](f,2,(g&65535)>>>8&15,g&7,-1,0,15,0);c[b+16>>2]=2700;c[676]=0;if((c[678]|0)>0){e=c[675]|0;b=0;do{g=c[e+(b<<2)>>2]|0;c[c[g+12>>2]>>2]=c[g>>2];b=b+1|0}while((b|0)<(c[678]|0))}c[676]=0;c[680]=206;return}else{if(!(zi(f,e)|0))return;f=c[3]|0;g=f+1309748|0;g=d[g>>0]|d[g+1>>0]<<8;Ig[c[f+2439748>>2]&7](f,2,(g&65535)>>>8&15,g&7,-1,0,15,0);c[b+16>>2]=2724;c[682]=0;if((c[684]|0)>0){e=c[681]|0;b=0;do{g=c[e+(b<<2)>>2]|0;c[c[g+12>>2]>>2]=c[g>>2];b=b+1|0}while((b|0)<(c[684]|0))}c[682]=0;c[686]=207;return}}function Jk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;d=h;e=c[b+36>>2]|0;f=c[b+28>>2]|0;if(a[e+(f*24|0)+21>>0]|0){g=eN(1178356)|0;if(g|0){c[d>>2]=0;e=e+(f*24|0)+4|0;f=Bi(c[b+4>>2]|0,c[e>>2]|0,d)|0;i=c[b+8>>2]|0;lg[c[i+13136>>2]&31](i,c[e>>2]|0,f,c[d>>2]|0,g)|0;PQ((c[b>>2]|0)+81920|0,g|0,1178356)|0;bh();fN(g)}}else{i=c[b+8>>2]|0;Bg[c[i+13132>>2]&255](i,c[e+(f*24|0)+4>>2]|0)}b=c[3]|0;vg[c[b+2439780>>2]&511](b);b=c[45]|0;switch(b|0){case 10:case 9:case 1:case 0:break;case 11:{c[46]=3;break}case 2:{c[46]=11;l=h;return}default:c[46]=b}ki(c[223]|0,c[222]|0,c[3]|0);c[45]=2;b=c[80021]|0;if(!b){c[46]=11;l=h;return}d=c[b+224>>2]|0;if(!d){c[46]=11;l=h;return}if(!(gg[d&511](b)|0)){c[46]=11;l=h;return}if((c[45]|2|0)!=3){c[46]=11;l=h;return}aN();c[46]=11;l=h;return}function Kk(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=f+(e*24|0)+16|0;c[o>>2]=eN(16320)|0;p=ti(g)|0;if(!p)return;if((c[p+8>>2]|0)==240?(c[p+12>>2]|0)==136:0){n=p+4|0;m=0;do{l=c[n>>2]|0;i=d[(c[p>>2]|0)+m>>0]|0;g=d[l+(i*3|0)>>0]|0;h=d[l+(i*3|0)+1>>0]|0;i=d[l+(i*3|0)+2>>0]|0;l=0;e=0;f=-1;while(1){k=g-(d[b+2308020+(e*3|0)>>0]|0)|0;q=h-(d[b+2308020+(e*3|0)+1>>0]|0)|0;j=i-(d[b+2308020+(e*3|0)+2>>0]|0)|0;j=(O(q,q)|0)+(O(k,k)|0)+(O(j,j)|0)|0;k=j>>>0<f>>>0;l=k?e:l;e=e+1|0;if((e|0)==16)break;else f=k?j:f}g=(c[o>>2]|0)+(m>>>1)|0;e=d[g>>0]|0;if(!(m&1)){f=e&240;a[g>>0]=f;e=l&15}else{f=e&15;a[g>>0]=f;e=l<<4&4080}a[g>>0]=e|f;m=m+1|0}while((m|0)!=32640)}e=c[p>>2]|0;if(e|0)fN(e);e=c[p+4>>2]|0;if(e|0)fN(e);fN(p);return}function Lk(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+8208|0;m=o;j=o+4104|0;k=o+8|0;f=b+4|0;aP(j,(c[f>>2]|0)+4096|0)|0;d=c[f>>2]|0;e=d+4096|0;if(!(JN(e,84322)|0))RQ(e|0,0,4096)|0;else{i=WO(e)|0;d=d+4096+i|0;a:do if((i|0)>0)do{if((a[d>>0]|0)==47)break a;d=d+-1|0}while(d>>>0>e>>>0);while(0);a[d>>0]=0}Hk(b);g=(c[f>>2]|0)+4096|0;h=b+40|0;d=c[h>>2]|0;if((d|0)<=0){l=o;return}i=b+36|0;e=0;while(1){f=c[i>>2]|0;if(a[f+(e*24|0)+20>>0]|0){d=c[f+(e*24|0)+4>>2]|0;if(!(a[g>>0]|0))aP(k,d)|0;else{c[m>>2]=g;c[m+4>>2]=d;MN(k,88552,m)|0}if(!(JN(k,j)|0))break;d=c[h>>2]|0}e=e+1|0;if((e|0)>=(d|0)){n=17;break}}if((n|0)==17){l=o;return}c[b+28>>2]=e;l=o;return}function Mk(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[b+4>>2]|0;g=c[(c[b+36>>2]|0)+((c[b+28>>2]|0)*24|0)+4>>2]|0;if(!(zi(f,g)|0)){Hk(b);return}d=f+4096|0;e=WO(d)|0;if(e|0){f=f+4096+e|0;a[f>>0]=47;a[f+1>>0]=0}uQ(d,g)|0;Hk(b);return}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,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+4112|0;i=p;h=p+8|0;o=g&1;if(!g?JN(b+(WO(b)|0)+-4|0,43053)|0:0){o=f+4|0;o=c[o>>2]|0;o=(o|0)<256;l=p;return o|0}n=c[f>>2]|0;k=f+4|0;m=c[k>>2]|0;c[k>>2]=m+1;j=n+(m*24|0)|0;c[n+(m*24|0)+4>>2]=nP(b)|0;if(!g){f=nP(b)|0;c[j>>2]=f;if(!(JN(b+(WO(b)|0)+-4|0,43053)|0)){a[f+((WO(f)|0)+-4)>>0]=0;g=0;f=c[j>>2]|0}else g=1;h=MP(f,88563)|0;if(!h)h=f;else{do{aP(h,h+4|0)|0;a[h>>0]=38;h=MP(f,88563)|0}while((h|0)!=0);h=c[j>>2]|0}f=MP(h,88569)|0;if(f)do{aP(f,f+4|0)|0;a[f>>0]=39;f=MP(h,88569)|0}while((f|0)!=0)}else{c[i>>2]=b;MN(h,88558,i)|0;c[j>>2]=nP(h)|0;g=0}if(!d)f=0;else f=nP(d)|0;c[n+(m*24|0)+8>>2]=f;c[n+(m*24|0)+12>>2]=e;a[n+(m*24|0)+20>>0]=o;c[n+(m*24|0)+16>>2]=0;a[n+(m*24|0)+21>>0]=g&1;o=k;o=c[o>>2]|0;o=(o|0)<256;l=p;return o|0}function Ok(b,c,d,e,f,g,h,i){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0;g=l;l=l+16|0;j=g;a[j>>0]=h;Pk(b,b+24576+((c&255)<<5)|0,d,e,j,1,i,0,0);i=O(i,f)|0;l=g;return i|0}function Pk(b,e,f,g,h,i,j,k,l){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;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;m=0;do{y=d[(m>>>1)+(b+16368)>>0]|0;a[332889+m>>0]=m&1|0?y>>>4:y&15;m=m+1|0}while((m|0)!=16);if((i|0)>0){m=0;do{a[332889+(d[h+m>>0]|0)>>0]=-1;m=m+1|0}while((m|0)!=(i|0))}h=l&1;m=k&3;switch(l&3){case 1:{m=m^1;break}case 2:{m=m^3;break}case 3:{m=m^2;break}default:{}}m=(h|2|0)==3?m|4:m;if((j|0)!=1){x=(m&1|0)!=0;y=(m&2|0)!=0;r=(m&4|0)==0;s=b+2589048|0;t=b+2589056|0;u=b+2589044|0;v=b+2589052|0;w=b+2589360|0;q=(j|0)<1;p=0;do{o=y?7-p|0:p;n=g;g=g+j|0;l=0;m=f;do{k=x?7-l|0:l;k=((r?o:k)<<3)+(r?k:o)|0;h=d[e+(k>>>1)>>0]|0;h=k&1|0?h>>>4:h&15;if(!((a[332889+h>>0]|0)==-1|q)){i=(h>>>1)+(b+16368)|0;k=m+j|0;if(!(h&1)){h=n;do{if((c[s>>2]|0)<=(h|0)?(c[t>>2]|0)>(h|0):0){A=c[u>>2]|0;z=c[v>>2]|0;Fg[c[w>>2]&15](b,(A|0)<(m|0)?m:A,(k|0)<(z|0)?k:z,h,a[i>>0]&15)}h=h+1|0}while((h|0)<(g|0));m=k}else{h=n;do{if((c[s>>2]|0)<=(h|0)?(c[t>>2]|0)>(h|0):0){z=c[u>>2]|0;A=c[v>>2]|0;Fg[c[w>>2]&15](b,(z|0)<(m|0)?m:z,(k|0)<(A|0)?k:A,h,(d[i>>0]|0)>>>4)}h=h+1|0}while((h|0)<(g|0));m=k}}else m=m+j|0;l=l+1|0}while((l|0)!=8);p=p+1|0}while((p|0)!=8);return}p=(c[b+2589044>>2]|0)-f|0;p=(p|0)>0?p:0;l=(c[b+2589048>>2]|0)-g|0;l=(l|0)>0?l:0;q=(c[b+2589052>>2]|0)-f|0;q=(q|0)<8?q:8;r=(c[b+2589056>>2]|0)-g|0;r=(r|0)<8?r:8;i=l+g|0;o=p+f|0;switch(m|0){case 4:{if((l|0)>=(r|0))return;g=b+2589352|0;if((p|0)>=(q|0))return;while(1){m=p;h=o;while(1){A=(m<<3)+l|0;k=d[e+(A>>>1)>>0]|0;k=a[332889+(A&1|0?k>>>4:k&15)>>0]|0;if(k<<24>>24!=-1)Eg[c[g>>2]&63](b,h,i,k);m=m+1|0;if((m|0)>=(q|0))break;else h=h+1|0}l=l+1|0;if((l|0)>=(r|0))break;else i=i+1|0}return}case 6:{if((l|0)>=(r|0))return;n=b+2589352|0;if((p|0)>=(q|0))return;while(1){k=7-l|0;m=p;h=o;while(1){A=(m<<3)+k|0;g=d[e+(A>>>1)>>0]|0;g=a[332889+(A&1|0?g>>>4:g&15)>>0]|0;if(g<<24>>24!=-1)Eg[c[n>>2]&63](b,h,i,g);m=m+1|0;if((m|0)>=(q|0))break;else h=h+1|0}l=l+1|0;if((l|0)>=(r|0))break;else i=i+1|0}return}case 5:{if((l|0)>=(r|0))return;g=b+2589352|0;if((p|0)>=(q|0))return;while(1){m=p;h=o;while(1){A=(7-m<<3)+l|0;k=d[e+(A>>>1)>>0]|0;k=a[332889+(A&1|0?k>>>4:k&15)>>0]|0;if(k<<24>>24!=-1)Eg[c[g>>2]&63](b,h,i,k);m=m+1|0;if((m|0)>=(q|0))break;else h=h+1|0}l=l+1|0;if((l|0)>=(r|0))break;else i=i+1|0}return}case 7:{if((l|0)>=(r|0))return;n=b+2589352|0;if((p|0)>=(q|0))return;while(1){k=7-l|0;m=p;h=o;while(1){A=(7-m<<3)+k|0;g=d[e+(A>>>1)>>0]|0;g=a[332889+(A&1|0?g>>>4:g&15)>>0]|0;if(g<<24>>24!=-1)Eg[c[n>>2]&63](b,h,i,g);m=m+1|0;if((m|0)>=(q|0))break;else h=h+1|0}l=l+1|0;if((l|0)>=(r|0))break;else i=i+1|0}return}case 0:{if((l|0)>=(r|0))return;n=b+2589352|0;if((p|0)>=(q|0))return;while(1){k=l<<3;m=p;h=o;while(1){A=m+k|0;g=d[e+(A>>>1)>>0]|0;g=a[332889+(A&1|0?g>>>4:g&15)>>0]|0;if(g<<24>>24!=-1)Eg[c[n>>2]&63](b,h,i,g);m=m+1|0;if((m|0)>=(q|0))break;else h=h+1|0}l=l+1|0;if((l|0)>=(r|0))break;else i=i+1|0}return}case 2:{if((l|0)>=(r|0))return;n=b+2589352|0;if((p|0)>=(q|0))return;while(1){k=7-l<<3;m=p;h=o;while(1){A=m+k|0;g=d[e+(A>>>1)>>0]|0;g=a[332889+(A&1|0?g>>>4:g&15)>>0]|0;if(g<<24>>24!=-1)Eg[c[n>>2]&63](b,h,i,g);m=m+1|0;if((m|0)>=(q|0))break;else h=h+1|0}l=l+1|0;if((l|0)>=(r|0))break;else i=i+1|0}return}case 1:{if((l|0)>=(r|0))return;n=b+2589352|0;if((p|0)>=(q|0))return;while(1){g=l<<3;m=p;h=o;while(1){A=7-m+g|0;k=d[e+(A>>>1)>>0]|0;k=a[332889+(A&1|0?k>>>4:k&15)>>0]|0;if(k<<24>>24!=-1)Eg[c[n>>2]&63](b,h,i,k);m=m+1|0;if((m|0)>=(q|0))break;else h=h+1|0}l=l+1|0;if((l|0)>=(r|0))break;else i=i+1|0}return}case 3:{if((l|0)>=(r|0))return;n=b+2589352|0;if((p|0)>=(q|0))return;while(1){k=7-l<<3;m=p;h=o;while(1){A=7-m+k|0;g=d[e+(A>>>1)>>0]|0;g=a[332889+(A&1|0?g>>>4:g&15)>>0]|0;if(g<<24>>24!=-1)Eg[c[n>>2]&63](b,h,i,g);m=m+1|0;if((m|0)>=(q|0))break;else h=h+1|0}l=l+1|0;if((l|0)>=(r|0))break;else i=i+1|0}return}default:Ga(89599,89643,324,89653)}}function Qk(b,e,f,g,h,i,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;A=e&255;i=0;while(1){z=d[(i>>>1)+(b+24576+(A<<5))>>0]|0;if(((i&1|0?z>>>4:z&15)&255)<<24>>24!=j<<24>>24){l=7;e=8;m=4;break}y=i+8|0;z=d[(y>>>1)+(b+24576+(A<<5))>>0]|0;if(((y&1|0?z>>>4:z&15)&255)<<24>>24!=j<<24>>24){l=7;e=8;m=4;break}y=i+16|0;z=d[(y>>>1)+(b+24576+(A<<5))>>0]|0;if(((y&1|0?z>>>4:z&15)&255)<<24>>24!=j<<24>>24){l=7;e=8;m=4;break}y=i+24|0;z=d[(y>>>1)+(b+24576+(A<<5))>>0]|0;if(((y&1|0?z>>>4:z&15)&255)<<24>>24!=j<<24>>24){l=7;e=8;m=4;break}y=i+32|0;z=d[(y>>>1)+(b+24576+(A<<5))>>0]|0;if(((y&1|0?z>>>4:z&15)&255)<<24>>24!=j<<24>>24){l=7;e=8;m=4;break}y=i+40|0;z=d[(y>>>1)+(b+24576+(A<<5))>>0]|0;if(((y&1|0?z>>>4:z&15)&255)<<24>>24!=j<<24>>24){l=7;e=8;m=4;break}y=i+48|0;z=d[(y>>>1)+(b+24576+(A<<5))>>0]|0;if(((y&1|0?z>>>4:z&15)&255)<<24>>24!=j<<24>>24){l=7;e=8;m=4;break}y=i+56|0;z=d[(y>>>1)+(b+24576+(A<<5))>>0]|0;if(((y&1|0?z>>>4:z&15)&255)<<24>>24!=j<<24>>24){l=7;e=8;m=4;break}i=i+1|0;if((i|0)>=8){e=8;break}}a:do if((m|0)==4)while(1){z=d[(l>>>1)+(b+24576+(A<<5))>>0]|0;if(((l&1|0?z>>>4:z&15)&255)<<24>>24!=j<<24>>24)break a;y=l+8|0;z=d[(y>>>1)+(b+24576+(A<<5))>>0]|0;if(((y&1|0?z>>>4:z&15)&255)<<24>>24!=j<<24>>24)break a;y=l+16|0;z=d[(y>>>1)+(b+24576+(A<<5))>>0]|0;if(((y&1|0?z>>>4:z&15)&255)<<24>>24!=j<<24>>24)break a;y=l+24|0;z=d[(y>>>1)+(b+24576+(A<<5))>>0]|0;if(((y&1|0?z>>>4:z&15)&255)<<24>>24!=j<<24>>24)break a;y=l+32|0;z=d[(y>>>1)+(b+24576+(A<<5))>>0]|0;if(((y&1|0?z>>>4:z&15)&255)<<24>>24!=j<<24>>24)break a;y=l+40|0;z=d[(y>>>1)+(b+24576+(A<<5))>>0]|0;if(((y&1|0?z>>>4:z&15)&255)<<24>>24!=j<<24>>24)break a;y=l+48|0;z=d[(y>>>1)+(b+24576+(A<<5))>>0]|0;if(((y&1|0?z>>>4:z&15)&255)<<24>>24!=j<<24>>24)break a;y=l+56|0;z=d[(y>>>1)+(b+24576+(A<<5))>>0]|0;if(((y&1|0?z>>>4:z&15)&255)<<24>>24!=j<<24>>24)break a;e=e+-1|0;if((l|0)>(i|0)){l=l+-1|0;m=4}else break}while(0);t=(e|0)>(i|0);u=(k|0)>0;v=b+2589048|0;w=b+2589056|0;x=b+2589044|0;y=b+2589052|0;z=b+2589360|0;l=g;s=0;do{if(t){q=s<<3;r=l+k|0;if(u){m=f;p=i;do{o=p+q|0;g=d[(o>>>1)+(b+24576+(A<<5))>>0]|0;g=o&1|0?g>>>4:g&15;if((g&255)<<24>>24!=j<<24>>24){n=(g>>>1)+(b+16368)|0;o=m+k|0;if(!(g&1)){g=l;do{if((c[v>>2]|0)<=(g|0)?(c[w>>2]|0)>(g|0):0){C=c[x>>2]|0;B=c[y>>2]|0;Fg[c[z>>2]&15](b,(C|0)<(m|0)?m:C,(o|0)<(B|0)?o:B,g,a[n>>0]&15)}g=g+1|0}while((g|0)<(r|0));m=o}else{g=l;do{if((c[v>>2]|0)<=(g|0)?(c[w>>2]|0)>(g|0):0){B=c[x>>2]|0;C=c[y>>2]|0;Fg[c[z>>2]&15](b,(B|0)<(m|0)?m:B,(o|0)<(C|0)?o:C,g,(d[n>>0]|0)>>>4)}g=g+1|0}while((g|0)<(r|0));m=o}}else m=m+k|0;p=p+1|0}while((p|0)!=(e|0));l=r}else l=r}else l=l+k|0;s=s+1|0}while((s|0)!=8);C=e-i|0;return O(C|0?C+1|0:h,k)|0}function Rk(a){a=a|0;var b=0,d=0,e=0.0,f=0.0,g=0,h=0,i=0,j=0,k=0.0;g=eN(2672096)|0;RQ(g|0,0,2672096)|0;c[g+2588580>>2]=g+65508;c[g+2588584>>2]=g+69988;c[g+2439656>>2]=5;c[g+2439660>>2]=6;c[g+2439664>>2]=7;c[g+2439668>>2]=1;c[g+2439672>>2]=149;c[g+2439676>>2]=7;c[g+2439680>>2]=10;c[g+2439684>>2]=1;c[g+2439688>>2]=2;c[g+2439692>>2]=3;c[g+2439696>>2]=1;c[g+2439700>>2]=1;c[g+2439704>>2]=1;c[g+2439708>>2]=1;c[g+2439712>>2]=3;c[g+2439716>>2]=2;c[g+2439720>>2]=4;c[g+2439724>>2]=5;c[g+2439728>>2]=1;c[g+2439732>>2]=1;c[g+2439736>>2]=6;c[g+2439740>>2]=4;c[g+2439744>>2]=150;c[g+2439748>>2]=2;c[g+2439752>>2]=11;c[g+2439756>>2]=7;c[g+2439760>>2]=8;c[g+2439764>>2]=1;c[g+2439768>>2]=151;c[g+2439772>>2]=12;c[g+2439776>>2]=152;h=g+2439780|0;c[h>>2]=208;c[g+2439784>>2]=209;c[g+2439788>>2]=210;c[g+2439792>>2]=8;c[g+2439796>>2]=3;c[g+2439800>>2]=10;c[g+2439804>>2]=4;c[g+2439808>>2]=9;c[g+2439812>>2]=11;c[g+2439816>>2]=13;c[g+2439820>>2]=211;c[g+2439824>>2]=10;c[g+2439828>>2]=391;c[g+2588576>>2]=a;b=((a|0)/60|0)<<1;c[g+2440928>>2]=b;c[g+2440924>>2]=eN(b)|0;b=(a|0)/10|0;if((a|0)<=-10)Ga(89841,89851,115,89884);d=b<<2;i=eN(d+104|0)|0;if(i|0){j=i;c[j>>2]=0;c[j+4>>2]=1;c[i+20>>2]=b;b=i+8|0;c[b>>2]=-2147483648;c[b+4>>2]=0;c[i+16>>2]=0;c[i+24>>2]=0;RQ(i+32|0,0,d+72|0)|0}c[g+2588572>>2]=i;e=+(a|0)*4503599627370496.0/18.0e5;a=~~e>>>0;b=+B(e)>=1.0?(e>0.0?~~+P(+A(e/4294967296.0),4294967295.0)>>>0:~~+N((e-+(~~e>>>0))/4294967296.0)>>>0):0;j=i;c[j>>2]=a;c[j+4>>2]=b;f=+(a>>>0)+4294967296.0*+(b>>>0);k=e-f;if(!(k>=0.0&k<1.0))Ga(89893,89851,144,89943);if(!(f<e)){j=c[h>>2]|0;vg[j&511](g);return g|0}d=yQ(a|0,b|0,1,0)|0;j=i;c[j>>2]=d;c[j+4>>2]=z;j=c[h>>2]|0;vg[j&511](g);return g|0}function Sk(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return Vl(a,b,c,d,6,6,e,1)|0}function Tk(b,c,d,e,f){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=d;a:while(1){h=d;b:while(1){g=c+1|0;c=a[c>>0]|0;switch(c<<24>>24){case 0:break a;case 10:break b;default:{}}h=(Wl(b,c,h,e,6,6,f,1)|0)+h|0;c=g}i=(h|0)>(i|0)?h:i;c=g;e=e+6|0}return ((h|0)>(i|0)?h:i)-d|0}function Uk(b,c,d,e,f){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=d;a:while(1){h=d;b:while(1){g=c+1|0;c=a[c>>0]|0;switch(c<<24>>24){case 0:break a;case 10:break b;default:{}}h=(Vl(b,c,h,e,6,6,f,1)|0)+h|0;c=g}i=(h|0)>(i|0)?h:i;c=g;e=e+6|0}return ((h|0)>(i|0)?h:i)-d|0}function Vk(b,c,d,e,f,g,h){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0;l=g?2:1;m=h*6|0;k=d;a:while(1){j=d;b:while(1){i=c+1|0;g=a[c>>0]|0;switch(g<<24>>24){case 0:break a;case 10:break b;default:{}}j=(ng[l&15](b,g,j,e,6,6,f,h)|0)+j|0;c=i}k=(j|0)>(k|0)?j:k;c=i;e=e+m|0}return ((j|0)>(k|0)?j:k)-d|0}function Wk(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=b+2589044|0;if(!(KN(m,2476,16)|0)){RQ(b|0,e&15|e<<4&255|0,16320)|0;return}n=c[m>>2]|0;o=b+2589048|0;f=c[o>>2]|0;i=b+2589052|0;j=c[i>>2]|0;k=b+2589056|0;l=c[k>>2]|0;if((l|0)<=(f|0))return;e=e&15;g=(e>>>1)+(b+16368)|0;h=b+2589360|0;if(!(e&1)){e=f;while(1){if((f|0)<=(e|0)?(c[k>>2]|0)>(e|0):0){p=c[m>>2]|0;f=c[i>>2]|0;Fg[c[h>>2]&15](b,(p|0)<(n|0)?n:p,(j|0)<(f|0)?j:f,e,a[g>>0]&15)}e=e+1|0;if((e|0)==(l|0))break;f=c[o>>2]|0}return}else{e=f;while(1){if((f|0)<=(e|0)?(c[k>>2]|0)>(e|0):0){f=c[m>>2]|0;p=c[i>>2]|0;Fg[c[h>>2]&15](b,(f|0)<(n|0)?n:f,(j|0)<(p|0)?j:p,e,(d[g>>0]|0)>>>4)}e=e+1|0;if((e|0)==(l|0))break;f=c[o>>2]|0}return}}function Xk(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0;if((c[a+2589044>>2]|0)>(b|0))return;if((c[a+2589048>>2]|0)>(e|0))return;if((c[a+2589052>>2]|0)<=(b|0))return;if((c[a+2589056>>2]|0)<=(e|0))return;g=f&15;f=d[(g>>>1)+(a+16368)>>0]|0;Eg[c[a+2589352>>2]&63](a,b,e,(g&1|0?f>>>4:f&15)&255);return}function Yk(a,b,d){a=a|0;b=b|0;d=d|0;if((d|0)>135|((b|0)>239|(d|b|0)<0)){d=0;return d|0}d=ig[c[a+2589356>>2]&63](a,b,d)|0;return d|0}function Zk(b,e,f,g,h,i){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;u=g-e|0;u=(u|0)>-1?u:0-u|0;v=(g|0)>(e|0)?1:-1;l=h-f|0;l=(l|0)>-1?l:0-l|0;m=(h|0)>(f|0)?1:-1;n=b+2589044|0;if((((c[n>>2]|0)<=(e|0)?(c[b+2589048>>2]|0)<=(f|0):0)?(c[b+2589052>>2]|0)>(e|0):0)?(c[b+2589056>>2]|0)>(f|0):0){s=i&15;t=d[(s>>>1)+(b+16368)>>0]|0;Eg[c[b+2589352>>2]&63](b,e,f,(s&1|0?t>>>4:t&15)&255)}if((g|0)==(e|0)&(h|0)==(f|0))return;o=0-l|0;j=(((u|0)>(l|0)?u:o)|0)/2|0;p=0-u|0;q=b+2589048|0;r=b+2589052|0;s=b+2589056|0;t=b+2589352|0;i=i&15;k=(i>>>1)+(b+16368)|0;if(!(i&1)){i=f;do{w=(j|0)>(p|0);e=(w?v:0)+e|0;f=(j|0)<(l|0);i=(f?m:0)+i|0;j=(w?o:0)+j+(f?u:0)|0;if((((c[n>>2]|0)<=(e|0)?(c[q>>2]|0)<=(i|0):0)?(c[r>>2]|0)>(e|0):0)?(c[s>>2]|0)>(i|0):0)Eg[c[t>>2]&63](b,e,i,a[k>>0]&15)}while(!((i|0)==(h|0)&(e|0)==(g|0)));return}else{i=f;do{f=(j|0)>(p|0);e=(f?v:0)+e|0;w=(j|0)<(l|0);i=(w?m:0)+i|0;j=(f?o:0)+j+(w?u:0)|0;if((((c[n>>2]|0)<=(e|0)?(c[q>>2]|0)<=(i|0):0)?(c[r>>2]|0)>(e|0):0)?(c[s>>2]|0)>(i|0):0)Eg[c[t>>2]&63](b,e,i,(d[k>>0]|0)>>>4)}while(!((i|0)==(h|0)&(e|0)==(g|0)));return}}function _k(b,e,f,g,h,i){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=h+f|0;if((h|0)<=0)return;m=b+2589048|0;n=b+2589056|0;h=i&15;k=(h>>>1)+(b+16368)|0;l=b+2589044|0;i=g+e|0;g=b+2589052|0;j=b+2589360|0;if(!(h&1)){h=f;do{if((c[m>>2]|0)<=(h|0)?(c[n>>2]|0)>(h|0):0){p=c[l>>2]|0;f=c[g>>2]|0;Fg[c[j>>2]&15](b,(p|0)<(e|0)?e:p,(i|0)<(f|0)?i:f,h,a[k>>0]&15)}h=h+1|0}while((h|0)<(o|0));return}else{h=f;do{if((c[m>>2]|0)<=(h|0)?(c[n>>2]|0)>(h|0):0){f=c[l>>2]|0;p=c[g>>2]|0;Fg[c[j>>2]&15](b,(f|0)<(e|0)?e:f,(i|0)<(p|0)?i:p,h,(d[k>>0]|0)>>>4)}h=h+1|0}while((h|0)<(o|0));return}}function $k(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;i=a+2589048|0;j=c[i>>2]|0;if((j|0)<=(e|0)?(c[a+2589056>>2]|0)>(e|0):0){k=h&15;j=d[(k>>>1)+(a+16368)>>0]|0;n=c[a+2589044>>2]|0;m=f+b|0;l=c[a+2589052>>2]|0;Fg[c[a+2589360>>2]&15](a,(n|0)<(b|0)?b:n,(m|0)<(l|0)?m:l,e,(k&1|0?j>>>4:j&15)&255);j=c[i>>2]|0}i=g+e|0;if((j|0)>=(i|0)){Ul(a,b,e,g,h);n=b+-1|0;n=n+f|0;Ul(a,n,e,g,h);return}if((c[a+2589056>>2]|0)<(i|0)){Ul(a,b,e,g,h);n=b+-1|0;n=n+f|0;Ul(a,n,e,g,h);return}m=h&15;n=d[(m>>>1)+(a+16368)>>0]|0;j=c[a+2589044>>2]|0;k=f+b|0;l=c[a+2589052>>2]|0;Fg[c[a+2589360>>2]&15](a,(j|0)<(b|0)?b:j,(k|0)<(l|0)?k:l,i+-1|0,(m&1|0?n>>>4:n&15)&255);Ul(a,b,e,g,h);n=b+-1|0;n=n+f|0;Ul(a,n,e,g,h);return}function al(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;if((c|0)>=512)return;Pk(a,b+(c<<5)|0,d,e,f,g,1,0,0);return}function bl(a,b,c,d,e,f,g,h,i,j,k,l){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;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;t=j<<3;if((f|0)<=0)return;u=(g|0)>0;v=(k|2|0)==3;w=f+-1|0;x=(k|1|0)==3;y=g+-1|0;z=(l|2|0)==2;C=(l|0)==3;s=0;do{a:do if(u){q=v?w-s|0:s;B=O(s,t)|0;A=B+d|0;B=B+e|0;r=w-q|0;switch(l|0){case 2:{n=r+c|0;m=0;do{o=n+(y-(x?y-m|0:m)<<4)|0;p=O(m,t)|0;q=(o|0)<512;if(z){if(q)Pk(a,b+(o<<5)|0,A,p+e|0,h,i,j,k,2)}else if(q)Pk(a,b+(o<<5)|0,p+d|0,B,h,i,j,k,2);m=m+1|0}while((m|0)!=(g|0));break}case 1:{p=0;while(1){m=x?y-p|0:p;switch(k|0){case 0:case 3:{m=y-m|0;n=q;break}default:n=r}m=n+c+(m<<4)|0;n=O(p,t)|0;o=(m|0)<512;if(z){if(o)Pk(a,b+(m<<5)|0,A,n+e|0,h,i,j,k,1)}else if(o)Pk(a,b+(m<<5)|0,n+d|0,B,h,i,j,k,1);p=p+1|0;if((p|0)==(g|0))break a}}default:{p=0;do{m=x?y-p|0:p;b:do if(C){switch(k|0){case 0:case 3:{n=r;break b}default:{}}m=y-m|0;n=q}else n=q;while(0);m=n+c+(m<<4)|0;n=O(p,t)|0;o=(m|0)<512;if(z){if(o)Pk(a,b+(m<<5)|0,A,n+e|0,h,i,j,k,l)}else if(o)Pk(a,b+(m<<5)|0,n+d|0,B,h,i,j,k,l);p=p+1|0}while((p|0)!=(g|0))}}}while(0);s=s+1|0}while((s|0)!=(f|0));return}function cl(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;Tl(a,b,c,d,e,f,g,h,i,j,k,0,0);return}function dl(a,b,c,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;Tl(a,b,c,d,e,f,g,h,i,j,k,l,m);return}function el(b,c,d,e,f){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;if(d>>>0>239|e>>>0>135)return;a[c+(e*240|0)+d>>0]=f;return}function fl(b,c,d,e){b=b|0;c=c|0;d=d|0;e=e|0;if(d>>>0>239|e>>>0>135){e=0;return e|0}e=a[c+(e*240|0)+d>>0]|0;return e|0}function gl(a,e,f,g,h){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0;RQ(317332,-1,272)|0;i=0;do{b[317604+(i<<1)>>1]=240;i=i+1|0}while((i|0)!=136);m=0-g|0;n=0;l=2-(g<<1)|0;while(1){k=e-m|0;i=n+f|0;if(i>>>0<136){j=317604+(i<<1)|0;if((b[j>>1]|0)>(k|0))b[j>>1]=k;i=317332+(i<<1)|0;if((b[i>>1]|0)<(k|0))b[i>>1]=k}k=e-n|0;i=f-m|0;if(i>>>0<136){j=317604+(i<<1)|0;if((b[j>>1]|0)>(k|0))b[j>>1]=k;i=317332+(i<<1)|0;if((b[i>>1]|0)<(k|0))b[i>>1]=k}k=m+e|0;i=f-n|0;if(i>>>0<136){j=317604+(i<<1)|0;if((b[j>>1]|0)>(k|0))b[j>>1]=k;i=317332+(i<<1)|0;if((b[i>>1]|0)<(k|0))b[i>>1]=k}k=n+e|0;i=m+f|0;if(i>>>0<136){j=317604+(i<<1)|0;if((b[j>>1]|0)>(k|0))b[j>>1]=k;i=317332+(i<<1)|0;if((b[i>>1]|0)<(k|0))b[i>>1]=k}i=(l|0)>(n|0);j=n+1|0;k=(i?0:j<<1|1)+l|0;n=i?n:j;j=(l|0)>(m|0)|(k|0)>(n|0);i=m+1|0;m=j?i:m;if((m|0)>=0)break;else l=(j?i<<1|1:0)+k|0}n=c[a+2589048>>2]|0;i=f-g|0;i=(n|0)>(i|0)?n:i;n=c[a+2589056>>2]|0;j=g+f|0;n=(n|0)>(j|0)?j+1|0:n;h=h&15;j=d[(h>>>1)+(a+16368)>>0]|0;j=(h&1|0?j>>>4:j&15)&255;if((i|0)>=(n|0))return;k=a+2589044|0;l=a+2589052|0;m=a+2589360|0;do{e=b[317604+(i<<1)>>1]|0;f=c[k>>2]|0;g=(b[317332+(i<<1)>>1]|0)+1|0;h=c[l>>2]|0;Fg[c[m>>2]&15](a,(e|0)>(f|0)?e:f,(g|0)<(h|0)?g:h,i,j);i=i+1|0}while((i|0)<(n|0));return}function hl(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=a+2589044|0;r=a+2589048|0;n=a+2589052|0;o=a+2589056|0;p=a+2589352|0;m=g&15;l=(m>>>1)+(a+16368)|0;m=(m&1|0)!=0;i=2-(f<<1)|0;k=0;j=0-f|0;while(1){g=b-j|0;f=k+e|0;h=c[q>>2]|0;if((((h|0)<=(g|0)?(c[r>>2]|0)<=(f|0):0)?(c[n>>2]|0)>(g|0):0)?(c[o>>2]|0)>(f|0):0){h=d[l>>0]|0;Eg[c[p>>2]&63](a,g,f,(m?h>>>4:h&15)&255);h=c[q>>2]|0}g=b-k|0;f=e-j|0;if((((h|0)<=(g|0)?(c[r>>2]|0)<=(f|0):0)?(c[n>>2]|0)>(g|0):0)?(c[o>>2]|0)>(f|0):0){h=d[l>>0]|0;Eg[c[p>>2]&63](a,g,f,(m?h>>>4:h&15)&255);h=c[q>>2]|0}g=j+b|0;f=e-k|0;if((((h|0)<=(g|0)?(c[r>>2]|0)<=(f|0):0)?(c[n>>2]|0)>(g|0):0)?(c[o>>2]|0)>(f|0):0){h=d[l>>0]|0;Eg[c[p>>2]&63](a,g,f,(m?h>>>4:h&15)&255);h=c[q>>2]|0}g=k+b|0;f=j+e|0;if((((h|0)<=(g|0)?(c[r>>2]|0)<=(f|0):0)?(c[n>>2]|0)>(g|0):0)?(c[o>>2]|0)>(f|0):0){h=d[l>>0]|0;Eg[c[p>>2]&63](a,g,f,(m?h>>>4:h&15)&255)}f=(i|0)>(k|0);h=k+1|0;k=f?k:h;h=(f?0:h<<1|1)+i|0;f=(i|0)>(j|0)|(h|0)>(k|0);g=j+1|0;j=f?g:j;if((j|0)>=0)break;else i=(f?g<<1|1:0)+h|0}return}function il(a,e,f,g,h,i,j,k){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;RQ(317332,-1,272)|0;l=0;do{b[317604+(l<<1)>>1]=240;l=l+1|0}while((l|0)!=136);r=g-e|0;r=(r|0)>-1?r:0-r|0;s=(g|0)>(e|0)?1:-1;t=h-f|0;t=(t|0)>-1?t:0-t|0;u=(h|0)>(f|0)?1:-1;if(f>>>0<136){l=317604+(f<<1)|0;if((b[l>>1]|0)>(e|0))b[l>>1]=e;l=317332+(f<<1)|0;if((b[l>>1]|0)<(e|0))b[l>>1]=e}if(!((g|0)==(e|0)&(h|0)==(f|0))){p=0-t|0;q=0-r|0;m=(((r|0)>(t|0)?r:p)|0)/2|0;n=f;o=e;do{l=(m|0)>(q|0);o=(l?s:0)+o|0;v=(m|0)<(t|0);n=(v?u:0)+n|0;m=(l?p:0)+m+(v?r:0)|0;if(n>>>0<136){l=317604+(n<<1)|0;if((b[l>>1]|0)>(o|0))b[l>>1]=o;l=317332+(n<<1)|0;if((b[l>>1]|0)<(o|0))b[l>>1]=o}}while(!((n|0)==(h|0)&(o|0)==(g|0)))}r=i-g|0;r=(r|0)>-1?r:0-r|0;s=(i|0)>(g|0)?1:-1;t=j-h|0;t=(t|0)>-1?t:0-t|0;v=(j|0)>(h|0);u=v?1:-1;if(h>>>0<136){l=317604+(h<<1)|0;if((b[l>>1]|0)>(g|0))b[l>>1]=g;l=317332+(h<<1)|0;if((b[l>>1]|0)<(g|0))b[l>>1]=g}if(!((i|0)==(g|0)&(j|0)==(h|0))){p=0-t|0;q=0-r|0;n=(((r|0)>(t|0)?r:p)|0)/2|0;o=h;m=g;do{l=(n|0)>(q|0);m=(l?s:0)+m|0;g=(n|0)<(t|0);o=(g?u:0)+o|0;n=(l?p:0)+n+(g?r:0)|0;if(o>>>0<136){l=317604+(o<<1)|0;if((b[l>>1]|0)>(m|0))b[l>>1]=m;l=317332+(o<<1)|0;if((b[l>>1]|0)<(m|0))b[l>>1]=m}}while(!((o|0)==(j|0)&(m|0)==(i|0)))}t=e-i|0;t=(t|0)>-1?t:0-t|0;q=(e|0)>(i|0)?1:-1;r=f-j|0;r=(r|0)>-1?r:0-r|0;s=(f|0)>(j|0)?1:-1;if(j>>>0<136){l=317604+(j<<1)|0;if((b[l>>1]|0)>(i|0))b[l>>1]=i;l=317332+(j<<1)|0;if((b[l>>1]|0)<(i|0))b[l>>1]=i}if(!((e|0)==(i|0)&(f|0)==(j|0))){o=0-r|0;p=0-t|0;m=(((t|0)>(r|0)?t:o)|0)/2|0;n=j;do{u=(m|0)>(p|0);i=(u?q:0)+i|0;g=(m|0)<(r|0);n=(g?s:0)+n|0;m=(u?o:0)+m+(g?t:0)|0;if(n>>>0<136){l=317604+(n<<1)|0;if((b[l>>1]|0)>(i|0))b[l>>1]=i;l=317332+(n<<1)|0;if((b[l>>1]|0)<(i|0))b[l>>1]=i}}while(!((n|0)==(f|0)&(i|0)==(e|0)))}l=k&15;p=d[(l>>>1)+(a+16368)>>0]|0;p=(l&1|0?p>>>4:p&15)&255;l=v?h:j;l=(l|0)>(f|0)?f:l;l=(l|0)>0?l:0;i=(j|0)<(h|0)?h:j;i=(i|0)<(f|0)?f:i;i=(i|0)>135?136:i+1|0;if((l|0)>=(i|0))return;m=a+2589044|0;n=a+2589052|0;o=a+2589360|0;do{k=b[317604+(l<<1)>>1]|0;f=c[m>>2]|0;h=(b[317332+(l<<1)>>1]|0)+1|0;j=c[n>>2]|0;Fg[c[o>>2]&15](a,(k|0)>(f|0)?k:f,(h|0)<(j|0)?h:j,l,p);l=l+1|0}while((l|0)<(i|0));return}function jl(a,e,f,h,i,j,k,m,n,o,p,q,r,s,t){a=a|0;e=+e;f=+f;h=+h;i=+i;j=+j;k=+k;m=+m;n=+n;o=+o;p=+p;q=+q;r=+r;s=s|0;t=t|0;var u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0.0,F=0.0,G=0.0,H=0.0,I=0,J=0,K=0;I=l;l=l+48|0;v=I+32|0;w=I+16|0;x=I;g[v>>2]=e;g[v+4>>2]=f;g[v+8>>2]=m;g[v+12>>2]=n;g[w>>2]=h;g[w+4>>2]=i;g[w+8>>2]=o;g[w+12>>2]=p;g[x>>2]=j;g[x+4>>2]=k;g[x+8>>2]=q;g[x+12>>2]=r;RQ(317332,-1,272)|0;u=0;do{b[317604+(u<<1)>>1]=240;u=u+1|0}while((u|0)!=136);Sl(v,w);Sl(w,x);Sl(x,v);y=a+2589044|0;z=a+2589048|0;A=a+2589052|0;B=a+2589056|0;C=a+2589352|0;x=0;do{D=317332+(x<<1)|0;u=b[D>>1]|0;v=b[317604+(x<<1)>>1]|0;w=v<<16>>16;J=(u<<16>>16)-w|0;e=+(J|0);if((J|0)>0?(E=+g[318420+(x<<2)>>2],F=(+g[317876+(x<<2)>>2]-E)/e,G=+g[319508+(x<<2)>>2],H=(+g[318964+(x<<2)>>2]-G)/e,v<<16>>16<=u<<16>>16):0){e=E;p=G;while(1){do if(w>>>0<240){u=~~p;v=~~e;if(s){K=(v|0)%1920|0;J=((K|0)>0?K:0)+1919-K|0;v=(u|0)%1088|0;u=((v|0)>0?v:0)+1087-v|0;J=K+(J-((J>>>0)%1920|0))|0;u=v+(u-((u>>>0)%1088|0))|0;u=d[(d[((u>>>3)*240|0)+(J>>3)+(a+32768)>>0]<<5)+(a+16384)+((u<<3&56|J&6)>>>1)>>0]|0;u=J&1|0?u>>>4:u&15;if((u&255)<<24>>24==t<<24>>24)break;if((c[y>>2]|0)>(w|0))break;if((c[z>>2]|0)>(x|0))break;if((c[A>>2]|0)<=(w|0))break;if((c[B>>2]|0)<=(x|0))break;K=d[(u>>>1)+(a+16368)>>0]|0;Eg[c[C>>2]&63](a,w,x,(u&1|0?K>>>4:K&15)&255);break}else{u=d[((v>>>3&15|u<<1&496)<<5)+(a+16384)+((v&6|u<<3&56)>>>1)>>0]|0;u=v&1|0?u>>>4:u&15;if((u&255)<<24>>24==t<<24>>24)break;if((c[y>>2]|0)>(w|0))break;if((c[z>>2]|0)>(x|0))break;if((c[A>>2]|0)<=(w|0))break;if((c[B>>2]|0)<=(x|0))break;K=d[(u>>>1)+(a+16368)>>0]|0;Eg[c[C>>2]&63](a,w,x,(u&1|0?K>>>4:K&15)&255);break}}while(0);if((w|0)<(b[D>>1]|0)){e=F+e;p=H+p;w=w+1|0}else break}}x=x+1|0}while((x|0)!=136);l=I;return}function kl(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;i=a+2589044|0;c[i>>2]=b;j=a+2589048|0;c[j>>2]=d;g=e+b|0;h=a+2589052|0;c[h>>2]=g;f=f+d|0;e=a+2589056|0;c[e>>2]=f;if((b|0)<0)c[i>>2]=0;if((d|0)<0)c[j>>2]=0;if((g|0)>240)c[h>>2]=240;if((f|0)<=136)return;c[e>>2]=136;return}function ll(e,f,g,h,i,j){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0;k=e+2589108|0;l=k+(j*20|0)+14|0;m=a[l>>0]|15;a[l>>0]=m;if((f|0)>-1){e=(c[e+2588580>>2]|0)+256+(f*66|0)+60|0;a[l>>0]=(d[e>>0]|d[e+1>>0]<<8)&112|m&-113}m=~~+SQ(+(+Lf(+((+(g+-8+(h*12|0)|0)+-49.0)/12.0))*440.0));c[k+(j*20|0)+16>>2]=i;b[k+(j*20|0)+12>>1]=m;c[k+(j*20|0)+8>>2]=f;c[k+(j*20|0)+4>>2]=-1;c[k+(j*20|0)>>2]=-1;return}function ml(d,e){d=d|0;e=e|0;var f=0;d=d+2589108|0;f=d+(e*20|0)+14|0;a[f>>0]=a[f>>0]|15;c[d+(e*20|0)+16>>2]=-1;b[d+(e*20|0)+12>>1]=16;c[d+(e*20|0)+8>>2]=-1;c[d+(e*20|0)+4>>2]=-1;c[d+(e*20|0)>>2]=-1;return}function nl(e,f,g,h,i,j,k,l){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0;n=e+2589108|0;m=n+(j*20|0)+14|0;k=a[m>>0]&-16|k&15;a[m>>0]=k;if((f|0)>-1){if((l<<29>>29|0)!=(l|0)){l=(c[e+2588580>>2]|0)+256+(f*66|0)+60|0;l=(((d[l>>0]|d[l+1>>0]<<8)<<9&65535)<<16>>16>>13&65535)<<24>>24}a[m>>0]=(l&255)<<4&112|k&-113}h=~~+SQ(+(+Lf(+((+(g+-8+(h*12|0)|0)+-49.0)/12.0))*440.0));c[n+(j*20|0)+16>>2]=i;b[n+(j*20|0)+12>>1]=h;c[n+(j*20|0)+8>>2]=f;c[n+(j*20|0)+4>>2]=-1;c[n+(j*20|0)>>2]=-1;return}function ol(b,c,e){b=b|0;c=c|0;e=e|0;e=c+2589108+(e*20|0)+4|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;a[b>>0]=e;a[b+1>>0]=e>>8;a[b+2>>0]=e>>16;a[b+3>>0]=e>>24;return}function pl(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;Rl(a,b,d,e,f);if((b|0)<=-1)return;c[a+2589188>>2]=2;return}function ql(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;Rl(a,b,d,e,f);if((b|0)<=-1)return;c[a+2589188>>2]=1;return}function rl(a){a=a|0;var b=0.0,d=0,e=0;a=a+2588588|0;e=fg[c[(c[a>>2]|0)+16>>2]&7]()|0;a=c[a>>2]|0;d=a+24|0;d=zQ(e|0,z|0,c[d>>2]|0,c[d+4>>2]|0)|0;d=EQ(d|0,z|0,1e3,0)|0;b=+(d>>>0)+4294967296.0*+(z>>>0);a=fg[c[a+20>>2]&7]()|0;return +(b/(+(a>>>0)+4294967296.0*+(z>>>0)))}function sl(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;g=b+2588588|0;c[g>>2]=e;t=b+2589368|0;do if((a[t>>0]|0)==0?(u=eN(524288)|0,u|0):0){RQ(u|0,0,524288)|0;f=b+1064128|0;if(WO(f)|0)uQ(u,f)|0;f=b+933160|0;if(WO(f)|0)uQ(u,f)|0;f=b+802192|0;if(WO(f)|0)uQ(u,f)|0;f=b+671224|0;if(WO(f)|0)uQ(u,f)|0;f=b+540256|0;if(WO(f)|0)uQ(u,f)|0;f=b+409288|0;if(WO(f)|0)uQ(u,f)|0;f=b+278320|0;if(WO(f)|0)uQ(u,f)|0;f=b+147352|0;if(WO(f)|0)uQ(u,f)|0;f=c[e+32>>2]|0;if(f|0)Bg[f&255](c[e+36>>2]|0,u);if(!(a[u>>0]|0)){t=c[g>>2]|0;Bg[c[t+4>>2]&255](c[t+36>>2]|0,89823);fN(u);return}r=Il(u)|0;f=b+2589364|0;g=c[f>>2]|0;h=g&63^63;if(h&1|0)PQ(b+16384|0,b+81920|0,8192)|0;if(h&2|0)PQ(b+24576|0,b+90112|0,8192)|0;if(h&4|0)PQ(b+32768|0,b+98304|0,32640)|0;if(h&8|0)PQ(b+65508|0,b+130944|0,4480)|0;if(h&16|0)PQ(b+69988|0,b+135424|0,11928)|0;if(h&32|0){i=b+16320|0;j=b+1129664|0;k=i+48|0;do{c[i>>2]=c[j>>2];i=i+4|0;j=j+4|0}while((i|0)<(k|0))}c[f>>2]=h|g;do if(c[b+1129712>>2]|0){q=ti(b+1129716|0)|0;if(!q)break;do if((c[q+8>>2]|0)==240){if((c[q+12>>2]|0)!=136)break;o=c[q+4>>2]|0;p=c[q>>2]|0;n=0;do{j=d[p+n>>0]|0;h=d[o+(j*3|0)>>0]|0;i=d[o+(j*3|0)+1>>0]|0;j=d[o+(j*3|0)+2>>0]|0;m=0;f=0;g=-1;while(1){l=h-(d[b+1129664+(f*3|0)>>0]|0)|0;v=i-(d[b+1129664+(f*3|0)+1>>0]|0)|0;k=j-(d[b+1129664+(f*3|0)+2>>0]|0)|0;k=(O(v,v)|0)+(O(l,l)|0)+(O(k,k)|0)|0;l=k>>>0<g>>>0;m=l?f:m;f=f+1|0;if((f|0)==16)break;else g=l?k:g}h=b+(n>>>1)|0;f=d[h>>0]|0;if(!(n&1)){g=f&240;a[h>>0]=g;f=m&15}else{g=f&15;a[h>>0]=g;f=m<<4&4080}a[h>>0]=f|g;n=n+1|0}while((n|0)!=32640)}while(0);f=c[q>>2]|0;if(f|0)fN(f);f=c[q+4>>2]|0;if(f|0)fN(f);fN(q)}while(0);h=b+2440920|0;a[h>>0]=0;g=r+44|0;f=Jl(u,89800,c[g>>2]|0)|0;do if(!f)s=39;else{v=(JN(f,263052)|0)==0;fN(f);if(!v){s=39;break}f=a[h>>0]|2}while(0);a:do if((s|0)==39){f=Jl(u,89800,c[g>>2]|0)|0;do if(f|0){v=(JN(f,89806)|0)==0;fN(f);if(!v)break;f=a[h>>0]|1;break a}while(0);f=Jl(u,89800,c[g>>2]|0)|0;if(!f){f=-1;break}v=(JN(f,89814)|0)==0;fN(f);if(!v){f=-1;break}f=a[h>>0]|4}while(0);a[h>>0]=f;s=fg[c[e+16>>2]&7]()|0;v=e+24|0;c[v>>2]=s;c[v+4>>2]=z;v=hg[c[r>>2]&63](b,u)|0;fN(u);if(v){c[b+2589276>>2]=c[r+8>>2];c[b+2589280>>2]=c[r+12>>2];c[b+2589284>>2]=c[r+16>>2];a[t>>0]=1;break}else return}while(0);vg[c[b+2589276>>2]&511](b);return}function tl(b,d,e){b=b|0;d=d|0;e=e|0;if(!(a[b+2589368>>0]|0))return;Dg[c[b+2589280>>2]&63](b,d,e);return}function ul(b,d){b=b|0;d=d|0;if(!(a[b+2589368>>0]|0))return;Bg[c[b+2589284>>2]&255](b,d);return}function vl(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=d+16320|0;e=d+1129664|0;j=i+48|0;do{c[i>>2]=c[e>>2];i=i+4|0;e=e+4|0}while((i|0)<(j|0));i=d+16368|0;h=i;a[h>>0]=16;a[h+1>>0]=50;a[h+2>>0]=84;a[h+3>>0]=118;i=i+4|0;a[i>>0]=-19088744;a[i+1>>0]=-19088744>>8;a[i+2>>0]=-19088744>>16;a[i+3>>0]=-19088744>>24;c[d+16376>>2]=0;c[d+2589044>>2]=0;c[d+2589048>>2]=0;c[d+2589052>>2]=240;c[d+2589056>>2]=136;i=d+2589108|0;h=d+2589196|0;e=d+2589060|0;c[i>>2]=c[715];c[i+4>>2]=c[716];c[i+8>>2]=c[717];c[i+12>>2]=c[718];c[i+16>>2]=c[719];c[h>>2]=c[715];c[h+4>>2]=c[716];c[h+8>>2]=c[717];c[h+12>>2]=c[718];i=d+65436|0;j=i+18|0;do{b[i>>1]=0;i=i+2|0}while((i|0)<(j|0));c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;e=d+2589128|0;c[e>>2]=c[715];c[e+4>>2]=c[716];c[e+8>>2]=c[717];c[e+12>>2]=c[718];c[e+16>>2]=c[719];e=d+2589216|0;c[e>>2]=c[715];c[e+4>>2]=c[716];c[e+8>>2]=c[717];c[e+12>>2]=c[718];i=d+65454|0;j=i+18|0;do{b[i>>1]=0;i=i+2|0}while((i|0)<(j|0));f=d+2589072|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;f=d+2589148|0;c[f>>2]=c[715];c[f+4>>2]=c[716];c[f+8>>2]=c[717];c[f+12>>2]=c[718];c[f+16>>2]=c[719];f=d+2589236|0;c[f>>2]=c[715];c[f+4>>2]=c[716];c[f+8>>2]=c[717];c[f+12>>2]=c[718];i=d+65472|0;j=i+18|0;do{b[i>>1]=0;i=i+2|0}while((i|0)<(j|0));g=d+2589084|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;g=d+2589168|0;c[g>>2]=c[715];c[g+4>>2]=c[716];c[g+8>>2]=c[717];c[g+12>>2]=c[718];c[g+16>>2]=c[719];g=d+2589256|0;c[g>>2]=c[715];c[g+4>>2]=c[716];c[g+8>>2]=c[717];c[g+12>>2]=c[718];i=d+65490|0;j=i+18|0;do{b[i>>1]=0;i=i+2|0}while((i|0)<(j|0));i=d+2589096|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;a[d+81916>>0]=-1;c[d+2589188>>2]=0;a[d+2589210>>0]=15;c[d+2589212>>2]=-1;b[d+2589208>>1]=16;c[d+2589204>>2]=-1;c[d+2589200>>2]=-1;c[h>>2]=-1;a[d+2589230>>0]=15;c[d+2589232>>2]=-1;b[d+2589228>>1]=16;c[d+2589224>>2]=-1;c[d+2589220>>2]=-1;c[e>>2]=-1;a[d+2589250>>0]=15;c[d+2589252>>2]=-1;b[d+2589248>>1]=16;c[d+2589244>>2]=-1;c[d+2589240>>2]=-1;c[f>>2]=-1;a[d+2589270>>0]=15;c[d+2589272>>2]=-1;b[d+2589268>>1]=16;c[d+2589264>>2]=-1;c[d+2589260>>2]=-1;c[g>>2]=-1;RQ(c[d+2440924>>2]|0,0,c[d+2440928>>2]|0)|0;a[d+2589368>>0]=0;c[d+2589280>>2]=0;c[d+2589284>>2]=0;c[d+2589352>>2]=11;c[d+2589356>>2]=11;c[d+2589360>>2]=9;f=d+2440856|0;i=f;j=i+64|0;do{c[i>>2]=0;i=i+4|0}while((i|0)<(j|0));e=d+147352|0;e=Jl(e,89793,c[(Il(e)|0)+44>>2]|0)|0;if(!e)return;XP(f,e,63)|0;fN(e);return}function wl(a){a=a|0;var b=0,d=0,e=0,f=0;PQ(a+2589376|0,a+2588592|0,780)|0;PQ(a+2590156|0,a|0,81920)|0;b=c[a+2588588>>2]|0;f=b+24|0;e=c[f+4>>2]|0;d=a+2672080|0;c[d>>2]=c[f>>2];c[d+4>>2]=e;b=fg[c[b+16>>2]&7]()|0;a=a+2672088|0;c[a>>2]=b;c[a+4>>2]=z;return}function xl(a){a=a|0;var b=0,d=0,e=0,f=0;b=a+2588588|0;d=c[b>>2]|0;if(!d)return;PQ(a+2588592|0,a+2589376|0,780)|0;PQ(a|0,a+2590156|0,81920)|0;e=a+2672080|0;f=c[e>>2]|0;e=c[e+4>>2]|0;d=fg[c[d+16>>2]&7]()|0;d=yQ(d|0,z|0,f|0,e|0)|0;a=a+2672088|0;a=zQ(d|0,z|0,c[a>>2]|0,c[a+4>>2]|0)|0;d=(c[b>>2]|0)+24|0;c[d>>2]=a;c[d+4>>2]=z;return}function yl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=a+2589364|0;f=(c[g>>2]&63^63)&((b|0)==0?63:b);if(d>>>0>=8)Ga(89754,89643,1435,89784);b=(f&1|0)==0;if(e){if(!b)PQ(a+81920+(d*130968|0)|0,a+16384|0,8192)|0;if(f&2|0)PQ(a+81920+(d*130968|0)+8192|0,a+24576|0,8192)|0;if(f&4|0)PQ(a+81920+(d*130968|0)+16384|0,a+32768|0,32640)|0;if(f&8|0)PQ(a+81920+(d*130968|0)+49024|0,a+65508|0,4480)|0;if(f&16|0)PQ(a+81920+(d*130968|0)+53504|0,a+69988|0,11928)|0}else{if(!b)PQ(a+16384|0,a+81920+(d*130968|0)|0,8192)|0;if(f&2|0)PQ(a+24576|0,a+81920+(d*130968|0)+8192|0,8192)|0;if(f&4|0)PQ(a+32768|0,a+81920+(d*130968|0)+16384|0,32640)|0;if(f&8|0)PQ(a+65508|0,a+81920+(d*130968|0)+49024|0,4480)|0;if(f&16|0)PQ(a+69988|0,a+81920+(d*130968|0)+53504|0,11928)|0}if(!(f&32)){a=c[g>>2]|0;f=a|f;c[g>>2]=f;return}if(e){e=a+1129664|0;b=a+16320|0;d=e+48|0;do{c[e>>2]=c[b>>2];e=e+4|0;b=b+4|0}while((e|0)<(d|0));a=c[g>>2]|0;f=a|f;c[g>>2]=f;return}else{e=a+16320|0;b=a+1129664|0;d=e+48|0;do{c[e>>2]=c[b>>2];e=e+4|0;b=b+4|0}while((e|0)<(d|0));a=c[g>>2]|0;f=a|f;c[g>>2]=f;return}}function zl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if((b|0)<0){b=c[a+65408>>2]&~c[a+2588592>>2];return b|0}f=a+2588592|0;if((e|d|0)<0){b=1<<b&~c[f>>2]&c[a+65408>>2];return b|0}g=c[a+2588596+(b<<2)>>2]|0;if(g>>>0>=d>>>0)if((e|0)!=0?((g>>>0)%(e>>>0)|0|0)!=0:0)f=c[f>>2]|0;else f=0;else f=c[f>>2]|0;b=1<<b&~f&c[a+65408>>2];return b|0}function Al(b,d){b=b|0;d=d|0;b=b+65416|0;if(!(d<<24>>24)){d=c[b>>2]|0;d=(d|0)!=0;return d|0}if(((a[b>>0]|0)!=d<<24>>24?(a[b+1>>0]|0)!=d<<24>>24:0)?(a[b+2>>0]|0)!=d<<24>>24:0)b=(a[b+3>>0]|0)==d<<24>>24;else b=1;d=b&1;d=(d|0)!=0;return d|0}function Bl(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=d&255;if(d<<24>>24){g=b+2588724|0;if((f|e|0)>-1?(h=c[b+2588728+(i<<2)>>2]|0,h>>>0>=e>>>0):0)if((f|0)!=0?((h>>>0)%(f>>>0)|0|0)!=0:0)if(((a[g>>0]|0)!=d<<24>>24?(a[b+2588725>>0]|0)!=d<<24>>24:0)?(a[b+2588726>>0]|0)!=d<<24>>24:0)h=(a[b+2588727>>0]|0)==d<<24>>24;else h=1;else h=0;else if(((a[g>>0]|0)!=d<<24>>24?(a[b+2588725>>0]|0)!=d<<24>>24:0)?(a[b+2588726>>0]|0)!=d<<24>>24:0)h=(a[b+2588727>>0]|0)==d<<24>>24;else h=1;g=b+65416|0;if((a[g>>0]|0)==d<<24>>24){d=1;b=h^1;b=d&b;return b|0}if((a[g+1>>0]|0)==d<<24>>24){d=1;b=h^1;b=d&b;return b|0}if((a[g+2>>0]|0)==d<<24>>24){d=1;b=h^1;b=d&b;return b|0}d=(a[g+3>>0]|0)==d<<24>>24;b=h^1;b=d&b;return b|0}g=b+65416|0;h=b+2588724|0;d=a[g>>0]|0;if((((d<<24>>24?(a[h>>0]|0)!=d<<24>>24:0)?(a[b+2588725>>0]|0)!=d<<24>>24:0)?(a[b+2588726>>0]|0)!=d<<24>>24:0)?(a[b+2588727>>0]|0)!=d<<24>>24:0){b=1;return b|0}d=a[g+1>>0]|0;if((((d<<24>>24?(a[h>>0]|0)!=d<<24>>24:0)?(a[b+2588725>>0]|0)!=d<<24>>24:0)?(a[b+2588726>>0]|0)!=d<<24>>24:0)?(a[b+2588727>>0]|0)!=d<<24>>24:0){b=1;return b|0}d=a[g+2>>0]|0;if((((d<<24>>24?(a[h>>0]|0)!=d<<24>>24:0)?(a[b+2588725>>0]|0)!=d<<24>>24:0)?(a[b+2588726>>0]|0)!=d<<24>>24:0)?(a[b+2588727>>0]|0)!=d<<24>>24:0){b=1;return b|0}d=a[g+3>>0]|0;if((((d<<24>>24?(a[h>>0]|0)!=d<<24>>24:0)?(a[b+2588725>>0]|0)!=d<<24>>24:0)?(a[b+2588726>>0]|0)!=d<<24>>24:0)?(a[b+2588727>>0]|0)!=d<<24>>24:0){b=1;return b|0}b=0;return b|0}function Cl(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;l=e+f|0;RQ(b|0,0,1178356)|0;if(g){h=b+1047744|0;i=89706;j=h+48|0;do{a[h>>0]=a[i>>0]|0;h=h+1|0;i=i+1|0}while((h|0)<(j|0))}if((f|0)<=0)return;i=b+1047744|0;j=b+1047796|0;k=b+1047792|0;if(!g){do{f=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;h=e+4|0;do switch(f&31){case 1:{e=f>>>8&65535;PQ(b+((f>>>5&7)*130968|0)|0,h|0,(e>>>0<8192?e:8192)|0)|0;break}case 2:{e=f>>>8&65535;PQ(b+((f>>>5&7)*130968|0)+8192|0,h|0,(e>>>0<8192?e:8192)|0)|0;break}case 4:{e=f>>>8&65535;PQ(b+((f>>>5&7)*130968|0)+16384|0,h|0,(e>>>0<32640?e:32640)|0)|0;break}case 5:{e=f>>>8&65535;PQ(b+((f>>>5&7)*130968|0)+65432|0,h|0,e|0)|0;break}case 9:{e=f>>>8&65535;PQ(b+((f>>>5&7)*130968|0)+49280|0,h|0,(e>>>0<4224?e:4224)|0)|0;break}case 10:{e=f>>>8&65535;PQ(b+((f>>>5&7)*130968|0)+49024|0,h|0,(e>>>0<256?e:256)|0)|0;break}case 14:{e=f>>>8&65535;PQ(b+((f>>>5&7)*130968|0)+65024|0,h|0,(e>>>0<408?e:408)|0)|0;break}case 13:{e=f>>>8&65535;PQ(b+((f>>>5&7)*130968|0)+53504|0,h|0,(e>>>0<11520?e:11520)|0)|0;break}case 3:{e=f>>>8&65535;PQ(j|0,h|0,e|0)|0;c[k>>2]=e;break}default:e=f>>>8&65535}while(0);e=h+e|0}while(e>>>0<l>>>0);return}do{f=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;h=e+4|0;do switch(f&31){case 1:{e=f>>>8&65535;PQ(b+((f>>>5&7)*130968|0)|0,h|0,(e>>>0<8192?e:8192)|0)|0;break}case 2:{e=f>>>8&65535;PQ(b+((f>>>5&7)*130968|0)+8192|0,h|0,(e>>>0<8192?e:8192)|0)|0;break}case 4:{e=f>>>8&65535;PQ(b+((f>>>5&7)*130968|0)+16384|0,h|0,(e>>>0<32640?e:32640)|0)|0;break}case 5:{e=f>>>8&65535;PQ(b+((f>>>5&7)*130968|0)+65432|0,h|0,e|0)|0;break}case 9:{e=f>>>8&65535;PQ(b+((f>>>5&7)*130968|0)+49280|0,h|0,(e>>>0<4224?e:4224)|0)|0;break}case 10:{e=f>>>8&65535;PQ(b+((f>>>5&7)*130968|0)+49024|0,h|0,(e>>>0<256?e:256)|0)|0;break}case 14:{e=f>>>8&65535;PQ(b+((f>>>5&7)*130968|0)+65024|0,h|0,(e>>>0<408?e:408)|0)|0;break}case 13:{e=f>>>8&65535;PQ(b+((f>>>5&7)*130968|0)+53504|0,h|0,(e>>>0<11520?e:11520)|0)|0;break}case 12:{e=f>>>8&65535;PQ(i|0,h|0,(e>>>0<48?e:48)|0)|0;break}case 3:{e=f>>>8&65535;PQ(j|0,h|0,e|0)|0;c[k>>2]=e;break}default:e=f>>>8&65535}while(0);e=h+e|0}while(e>>>0<l>>>0);return}function Dl(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=0;e=d;do{h=b+(i*130968|0)|0;g=b+(i*130968|0)+8191|0;f=8192;do{if(a[g>>0]|0)break;f=f+-1|0;g=g+-1|0}while(g>>>0>=h>>>0);g=e+4|0;if(f){j=i<<5|f<<8&16776960|1;a[e>>0]=j;a[e+1>>0]=j>>8;a[e+2>>0]=j>>16;a[e+3>>0]=j>>24;PQ(g|0,h|0,f|0)|0;e=g+f|0}h=b+(i*130968|0)+8192|0;g=b+(i*130968|0)+16383|0;f=8192;do{if(a[g>>0]|0)break;f=f+-1|0;g=g+-1|0}while(g>>>0>=h>>>0);g=e+4|0;if(f){j=i<<5|f<<8&16776960|2;a[e>>0]=j;a[e+1>>0]=j>>8;a[e+2>>0]=j>>16;a[e+3>>0]=j>>24;PQ(g|0,h|0,f|0)|0;e=g+f|0}h=b+(i*130968|0)+16384|0;g=b+(i*130968|0)+49023|0;f=32640;do{if(a[g>>0]|0)break;f=f+-1|0;g=g+-1|0}while(g>>>0>=h>>>0);g=e+4|0;if(f){j=i<<5|f<<8&16776960|4;a[e>>0]=j;a[e+1>>0]=j>>8;a[e+2>>0]=j>>16;a[e+3>>0]=j>>24;PQ(g|0,h|0,f|0)|0;e=g+f|0}h=b+(i*130968|0)+65432|0;g=b+(i*130968|0)+130967|0;f=65536;do{if(a[g>>0]|0)break;f=f+-1|0;g=g+-1|0}while(g>>>0>=h>>>0);g=e+4|0;if(f){j=i<<5|f<<8&16776960|5;a[e>>0]=j;a[e+1>>0]=j>>8;a[e+2>>0]=j>>16;a[e+3>>0]=j>>24;PQ(g|0,h|0,f|0)|0;e=g+f|0}h=b+(i*130968|0)+49280|0;g=b+(i*130968|0)+53503|0;f=4224;do{if(a[g>>0]|0)break;f=f+-1|0;g=g+-1|0}while(g>>>0>=h>>>0);g=e+4|0;if(f){j=i<<5|f<<8&16776960|9;a[e>>0]=j;a[e+1>>0]=j>>8;a[e+2>>0]=j>>16;a[e+3>>0]=j>>24;PQ(g|0,h|0,f|0)|0;e=g+f|0}h=b+(i*130968|0)+49024|0;g=b+(i*130968|0)+49279|0;f=256;do{if(a[g>>0]|0)break;f=f+-1|0;g=g+-1|0}while(g>>>0>=h>>>0);g=e+4|0;if(f){j=i<<5|f<<8&16776960|10;a[e>>0]=j;a[e+1>>0]=j>>8;a[e+2>>0]=j>>16;a[e+3>>0]=j>>24;PQ(g|0,h|0,f|0)|0;e=g+f|0}h=b+(i*130968|0)+53504|0;g=b+(i*130968|0)+65023|0;f=11520;do{if(a[g>>0]|0)break;f=f+-1|0;g=g+-1|0}while(g>>>0>=h>>>0);g=e+4|0;if(f){j=i<<5|f<<8&16776960|13;a[e>>0]=j;a[e+1>>0]=j>>8;a[e+2>>0]=j>>16;a[e+3>>0]=j>>24;PQ(g|0,h|0,f|0)|0;e=g+f|0}h=b+(i*130968|0)+65024|0;g=b+(i*130968|0)+65431|0;f=408;do{if(a[g>>0]|0)break;f=f+-1|0;g=g+-1|0}while(g>>>0>=h>>>0);g=e+4|0;if(f){j=i<<5|f<<8&16776960|14;a[e>>0]=j;a[e+1>>0]=j>>8;a[e+2>>0]=j>>16;a[e+3>>0]=j>>24;PQ(g|0,h|0,f|0)|0;e=g+f|0}i=i+1|0}while((i|0)!=8);h=b+1047744|0;g=47;f=48;while(1){if(a[h+g>>0]|0)break;f=f+-1|0;if((g|0)<1)break;else g=g+-1|0}g=e+4|0;if(f){j=f<<8&16776960|12;a[e>>0]=j;a[e+1>>0]=j>>8;a[e+2>>0]=j>>16;a[e+3>>0]=j>>24;PQ(g|0,h|0,f|0)|0;e=g+f|0}f=c[b+1047792>>2]|0;g=e+4|0;if(!f){b=e;j=d;j=b-j|0;return j|0}j=f<<8&16776960|3;a[e>>0]=j;a[e+1>>0]=j>>8;a[e+2>>0]=j>>16;a[e+3>>0]=j>>24;PQ(g|0,b+1047796|0,f|0)|0;b=g+f|0;j=d;j=b-j|0;return j|0}function El(f,g,h){f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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,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;$=f+2588580|0;c[$>>2]=g;P=f+2588584|0;c[P>>2]=h;ba=f+65436|0;g=ba;i=g+72|0;do{b[g>>1]=0;g=g+2|0}while((g|0)<(i|0));L=f+2589188|0;i=c[L>>2]|0;a:do if(i|0){M=f+81916|0;N=a[M>>0]|0;aa=f+2589192|0;g=O((c[aa>>2]|0)*6|0,(a[h+11520+(N*51|0)+48>>0]|0)+150|0)|0;g=((g|0)/((a[h+11520+(N*51|0)+50>>0]|0)+6|0)|0|0)/900|0;b:do if((g|0)>=(64-(d[h+11520+(N*51|0)+49>>0]|0)|0)){c[aa>>2]=0;j=f+2589196|0;k=f+2589210|0;l=a[k>>0]|15;a[k>>0]=l;m=f+2589212|0;c[m>>2]=-1;n=f+2589208|0;b[n>>1]=16;o=f+2589204|0;c[o>>2]=-1;p=f+2589200|0;c[p>>2]=-1;c[j>>2]=-1;q=f+2589230|0;r=a[q>>0]|15;a[q>>0]=r;s=f+2589232|0;c[s>>2]=-1;t=f+2589228|0;b[t>>1]=16;u=f+2589224|0;c[u>>2]=-1;v=f+2589220|0;c[v>>2]=-1;w=f+2589216|0;c[w>>2]=-1;x=f+2589250|0;y=a[x>>0]|15;a[x>>0]=y;z=f+2589252|0;c[z>>2]=-1;A=f+2589248|0;b[A>>1]=16;B=f+2589244|0;c[B>>2]=-1;C=f+2589240|0;c[C>>2]=-1;D=f+2589236|0;c[D>>2]=-1;E=f+2589270|0;F=a[E>>0]|15;a[E>>0]=F;G=f+2589272|0;c[G>>2]=-1;H=f+2589268|0;b[H>>1]=16;I=f+2589264|0;c[I>>2]=-1;J=f+2589260|0;c[J>>2]=-1;K=f+2589256|0;c[K>>2]=-1;switch(i|0){case 2:break;case 1:{if(a[f+81919>>0]&1){g=0;break b}a[M>>0]=-1;c[L>>2]=0;a[k>>0]=l;c[m>>2]=-1;b[n>>1]=16;c[o>>2]=-1;c[p>>2]=-1;c[j>>2]=-1;a[q>>0]=r;c[s>>2]=-1;b[t>>1]=16;c[u>>2]=-1;c[v>>2]=-1;c[w>>2]=-1;a[x>>0]=y;c[z>>2]=-1;b[A>>1]=16;c[B>>2]=-1;c[C>>2]=-1;c[D>>2]=-1;a[E>>0]=F;c[G>>2]=-1;b[H>>1]=16;c[I>>2]=-1;c[J>>2]=-1;c[K>>2]=-1;break a}default:{g=0;break b}}g=f+81917|0;i=(a[g>>0]|0)+1<<24>>24;a[g>>0]=i;if(i<<24>>24>15)if(!(a[f+81919>>0]&1)){a[M>>0]=-1;c[L>>2]=0;a[k>>0]=l;c[m>>2]=-1;b[n>>1]=16;c[o>>2]=-1;c[p>>2]=-1;c[j>>2]=-1;a[q>>0]=r;c[s>>2]=-1;b[t>>1]=16;c[u>>2]=-1;c[v>>2]=-1;c[w>>2]=-1;a[x>>0]=y;c[z>>2]=-1;b[A>>1]=16;c[B>>2]=-1;c[C>>2]=-1;c[D>>2]=-1;a[E>>0]=F;c[G>>2]=-1;b[H>>1]=16;c[I>>2]=-1;c[J>>2]=-1;c[K>>2]=-1;break a}else{a[g>>0]=0;g=0;break}ca=(i<<24>>24)*3|0;da=a[h+11520+(N*51|0)+ca>>0]|0;i=d[ca+1+(h+11520+(N*51|0))>>0]<<8;ca=d[ca+2+(h+11520+(N*51|0))>>0]|0;if((ca>>>2|0)==(0-((da&63)+((i|da&255)>>>6&63)+((ca<<16|i)>>>12&63))|0))if(!(a[f+81919>>0]&1)){a[M>>0]=-1;c[L>>2]=0;a[k>>0]=l;c[m>>2]=-1;b[n>>1]=16;c[o>>2]=-1;c[p>>2]=-1;c[j>>2]=-1;a[q>>0]=r;c[s>>2]=-1;b[t>>1]=16;c[u>>2]=-1;c[v>>2]=-1;c[w>>2]=-1;a[x>>0]=y;c[z>>2]=-1;b[A>>1]=16;c[B>>2]=-1;c[C>>2]=-1;c[D>>2]=-1;a[E>>0]=F;c[G>>2]=-1;b[H>>1]=16;c[I>>2]=-1;c[J>>2]=-1;c[K>>2]=-1;break a}else{a[g>>0]=0;g=0;break}else g=0}while(0);k=f+81918|0;if((g|0)==(a[k>>0]|0))i=f+2589196|0;else{a[k>>0]=g;l=f+81917|0;i=f+2589196|0;j=0;do{m=(a[l>>0]|0)*3|0;m=(d[m+2+(h+11520+(N*51|0))>>0]<<16|(d[m+1+(h+11520+(N*51|0))>>0]<<8|d[h+11520+(N*51|0)+m>>0]))>>>(j*6|0)&63;if((m|0?(Q=c[P>>2]|0,R=m+-1|0,S=Q+(R*192|0)+((a[k>>0]|0)*3|0)|0,S=((d[S>>0]|d[S+1>>0]<<8)&65535|d[S+2>>0]<<16)&15,T=S&16777215,S&16777215|0):0)?(U=i+(j*20|0)+14|0,V=a[U>>0]|0,a[U>>0]=V|15,W=i+(j*20|0)+16|0,c[W>>2]=-1,X=i+(j*20|0)+12|0,b[X>>1]=16,Y=i+(j*20|0)+8|0,c[Y>>2]=-1,Z=i+(j*20|0)+4|0,c[Z>>2]=-1,_=i+(j*20|0)|0,c[_>>2]=-1,(S&16777215)>>>0>3):0){ca=Q+(R*192|0)+((a[k>>0]|0)*3|0)|0;ca=(d[ca>>0]|d[ca+1>>0]<<8)&65535|d[ca+2>>0]<<16;da=Q+(R*192|0)+(g*3|0)|0;da=(d[da>>0]|d[da+1>>0]<<8)&65535|d[da+2>>0]<<16;da=((da&16777215)>>>10&32|(da&16777215)>>>16&31)&16777215;M=((ca&16777215)>>>4&15|V&-16)^15;a[U>>0]=M;L=(c[$>>2]|0)+256+(da*66|0)+60|0;a[U>>0]=(d[L>>0]|d[L+1>>0]<<8)&112|M&-113;ca=~~+SQ(+(+Lf(+(+(T+-61+(((ca&16777215)>>>21)*12&16777215)|0)/12.0))*440.0));c[W>>2]=-1;b[X>>1]=ca;c[Y>>2]=da;c[Z>>2]=-1;c[_>>2]=-1}j=j+1|0}while((j|0)!=4)}g=c[i+8>>2]|0;if((g|0)>-1)Nl(f,g,e[i+12>>1]|0,i,ba);g=c[i+28>>2]|0;if((g|0)>-1)Nl(f,g,e[i+32>>1]|0,i+20|0,f+65454|0);g=c[i+48>>2]|0;if((g|0)>-1)Nl(f,g,e[i+52>>1]|0,i+40|0,f+65472|0);g=c[i+68>>2]|0;if((g|0)>-1)Nl(f,g,e[i+72>>1]|0,i+60|0,f+65490|0);c[aa>>2]=(c[aa>>2]|0)+1}while(0);g=c[f+2589116>>2]|0;if((g|0)>-1)Nl(f,g,e[f+2589120>>1]|0,f+2589108|0,ba);g=c[f+2589136>>2]|0;if((g|0)>-1)Nl(f,g,e[f+2589140>>1]|0,f+2589128|0,f+65454|0);g=c[f+2589156>>2]|0;if((g|0)>-1)Nl(f,g,e[f+2589160>>1]|0,f+2589148|0,f+65472|0);g=c[f+2589176>>2]|0;if((g|0)>-1)Nl(f,g,e[f+2589180>>1]|0,f+2589168|0,f+65490|0);i=f+2588592|0;k=f+2588596|0;l=f+65408|0;g=0;do{da=1<<g;ca=c[i>>2]&da;j=k+(g<<2)|0;if((ca|0)!=0?(ca|0)==(c[l>>2]&da|0):0)m=(c[j>>2]|0)+1|0;else m=0;c[j>>2]=m;g=g+1|0}while((g|0)!=32);l=f+2588724|0;m=f+65416|0;n=f+2588728|0;o=m+1|0;p=m+2|0;q=m+3|0;r=f+2588725|0;s=f+2588726|0;t=f+2588727|0;k=0;do{g=k&255;if(((a[l>>0]|0)!=g<<24>>24?(a[r>>0]|0)!=g<<24>>24:0)?(a[s>>0]|0)!=g<<24>>24:0)j=(a[t>>0]|0)==g<<24>>24;else j=1;if(((a[m>>0]|0)!=g<<24>>24?(a[o>>0]|0)!=g<<24>>24:0)?(a[p>>0]|0)!=g<<24>>24:0)g=(a[q>>0]|0)==g<<24>>24;else g=1;i=n+(k<<2)|0;if(j&g)g=(c[i>>2]|0)+1|0;else g=0;c[i>>2]=g;k=k+1|0}while((k|0)!=79);c[f+2589352>>2]=11;c[f+2589356>>2]=11;c[f+2589364>>2]=0;c[f+2589360>>2]=9;return}function Fl(a){a=a|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;c[a+2588592>>2]=c[a+65408>>2];c[a+2588724>>2]=c[a+65416>>2];o=a+2589060|0;p=a+2588572|0;n=0;do{l=a+65436+(n*18|0)|0;g=o+(n*12|0)|0;k=(KN(332905,a+65436+(n*18|0)+2|0,16)|0)==0;m=c[p>>2]|0;a:do if(k){k=o+(n*12|0)+4|0;f=c[k>>2]|0;if(!f){c[k>>2]=1;h=1}else h=f;f=b[l>>1]&4095;if(!(f<<16>>16))i=4096;else{i=~~+SQ(+(112500.0/+(f&65535)+-1.0));i=(i|0)<10?10:(i|0)<4096?i:4096}f=c[g>>2]|0;if((f|0)<3e4){j=o+(n*12|0)+8|0;while(1){q=h>>1;c[k>>2]=0-(h&1)&24576^q;q=((O(q&1|0?16380:0,(e[l>>1]|0)>>>12&65535)|0)>>>0)/15|0;h=q-(c[j>>2]|0)|0;c[j>>2]=q;Yl(m,f,h);f=(c[g>>2]|0)+i|0;c[g>>2]=f;if((f|0)>=3e4)break a;h=c[k>>2]|0}}}else{f=b[l>>1]<<1&8190;if(!(f<<16>>16))h=4096;else{h=~~+SQ(+(112500.0/+(f&65535)+-1.0));h=(h|0)<10?10:(h|0)<4096?h:4096}f=c[g>>2]|0;if((f|0)<3e4){i=o+(n*12|0)+4|0;j=o+(n*12|0)+8|0;do{q=((c[i>>2]|0)+1|0)%32|0;c[i>>2]=q;k=d[(q>>>1)+(a+65436+(n*18|0)+2)>>0]|0;k=((O((q&1|0?k>>>4:k&15)*1092|0,(e[l>>1]|0)>>>12&65535)|0)>>>0)/15|0;q=k-(c[j>>2]|0)|0;c[j>>2]=k;Yl(m,f,q);f=(c[g>>2]|0)+h|0;c[g>>2]=f}while((f|0)<3e4)}}while(0);c[g>>2]=f+-3e4;n=n+1|0}while((n|0)!=4);g=c[p>>2]|0;p=g;p=EQ(c[p>>2]|0,c[p+4>>2]|0,3e4,0)|0;q=g+8|0;m=q;m=yQ(p|0,z|0,c[m>>2]|0,c[m+4>>2]|0)|0;p=z;o=JQ(m|0,p|0,52)|0;n=g+16|0;o=yQ(c[n>>2]|0,0,o|0,z|0)|0;c[n>>2]=o;c[q>>2]=m;c[q+4>>2]=p&1048575;if((o|0)>(c[g+20>>2]|0))Ga(89958,89851,190,89978);i=c[a+2440924>>2]|0;q=c[a+2588576>>2]|0;f=(q|0)/60|0;if((q|0)<=-60)Ga(89993,89851,210,90004);k=(o|0)<(f|0)?o:f;if(!k){f=a+2589352|0;c[f>>2]=12;f=a+2589356|0;c[f>>2]=12;f=a+2589360|0;c[f>>2]=10;f=a+2589288|0;g=a+1129664|0;Ji(g);g=317196;h=f+64|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(h|0));return}l=g+32|0;m=l+(k<<2)|0;j=g+24|0;h=c[j>>2]|0;f=i;g=l;while(1){q=h>>15;p=(c[g>>2]|0)+h|0;g=g+4|0;q=(q<<16>>16|0)==(q|0)?q:h>>31^32767;b[f>>1]=q;h=p-(q<<6)|0;if((g|0)==(m|0))break;else f=f+2|0}c[j>>2]=h;f=o+(18-k)|0;c[n>>2]=o-k;QQ(l|0,m|0,f<<2|0)|0;RQ(l+(f<<2)|0,0,k<<2|0)|0;f=a+2589352|0;c[f>>2]=12;f=a+2589356|0;c[f>>2]=12;f=a+2589360|0;c[f>>2]=10;f=a+2589288|0;g=a+1129664|0;Ji(g);g=317196;h=f+64|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(h|0));return}function Gl(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;n=b+16320|0;Ji(n);k=(e|0)!=0;if(k){Dg[e&63](b,0,g);Ji(n)}q=b+16376|0;j=c[317196+((a[q>>0]&15)<<2)>>2]|0;h=256;i=b+2440932|0;while(1){c[i>>2]=j;c[i+4>>2]=j;c[i+8>>2]=j;c[i+12>>2]=j;h=h+-1|0;if(!h)break;else i=i+16|0}h=b+2445028|0;o=b+16378|0;p=b+16377|0;if(k){k=0;while(1){l=c[317196+((a[q>>0]&15)<<2)>>2]|0;c[h>>2]=l;c[h+4>>2]=l;c[h+8>>2]=l;c[h+12>>2]=l;c[h+16>>2]=l;c[h+20>>2]=l;c[h+24>>2]=l;c[h+28>>2]=l;l=h+32|0;m=((k+136+(a[o>>0]|0)|0)%136|0)*240>>1;i=0;j=(240-(a[p>>0]|0)|0)%240|0;while(1){r=d[b+(i+m)>>0]|0;c[l+(((j>>>0)%240|0)<<2)>>2]=c[317196+((r&15)<<2)>>2];c[l+((((j+1|0)>>>0)%240|0)<<2)>>2]=c[317196+(r>>>4<<2)>>2];i=i+1|0;if((i|0)==120)break;else j=j+2|0}r=c[317196+((a[q>>0]&15)<<2)>>2]|0;c[h+992>>2]=r;c[h+996>>2]=r;c[h+1e3>>2]=r;c[h+1004>>2]=r;c[h+1008>>2]=r;c[h+1012>>2]=r;c[h+1016>>2]=r;c[h+1020>>2]=r;r=k;k=k+1|0;if((r|0)<135){Dg[e&63](b,k,g);Ji(n)}if((k|0)==136)break;else h=h+1024|0}}else{k=0;while(1){l=c[317196+((a[q>>0]&15)<<2)>>2]|0;c[h>>2]=l;c[h+4>>2]=l;c[h+8>>2]=l;c[h+12>>2]=l;c[h+16>>2]=l;c[h+20>>2]=l;c[h+24>>2]=l;c[h+28>>2]=l;l=h+32|0;m=((k+136+(a[o>>0]|0)|0)%136|0)*240>>1;i=0;j=(240-(a[p>>0]|0)|0)%240|0;while(1){r=d[b+(i+m)>>0]|0;c[l+(((j>>>0)%240|0)<<2)>>2]=c[317196+((r&15)<<2)>>2];c[l+((((j+1|0)>>>0)%240|0)<<2)>>2]=c[317196+(r>>>4<<2)>>2];i=i+1|0;if((i|0)==120)break;else j=j+2|0}r=c[317196+((a[q>>0]&15)<<2)>>2]|0;c[h+992>>2]=r;c[h+996>>2]=r;c[h+1e3>>2]=r;c[h+1004>>2]=r;c[h+1008>>2]=r;c[h+1012>>2]=r;c[h+1016>>2]=r;c[h+1020>>2]=r;k=k+1|0;if((k|0)==136)break;else h=h+1024|0}}j=c[317196+((a[q>>0]&15)<<2)>>2]|0;h=256;i=b+2584292|0;while(1){c[i>>2]=j;c[i+4>>2]=j;c[i+8>>2]=j;c[i+12>>2]=j;h=h+-1|0;if(!h)break;else i=i+16|0}if(!f)return;Bg[f&255](b,g);return}function Hl(a){a=a|0;return Il(a+147352|0)|0}function Il(a){a=a|0;var b=0,c=0;b=Jl(a,89662,262925)|0;if(b|0?(c=(JN(b,89669)|0)==0,fN(b),c):0){c=3964;return c|0}b=Jl(a,89662,262925)|0;if(b|0?(c=(JN(b,89674)|0)==0,fN(b),c):0){c=3964;return c|0}b=Jl(a,89662,287385)|0;if(b|0?(c=(JN(b,89685)|0)==0,fN(b),c):0){c=2880;return c|0}b=Jl(a,89662,287385)|0;if(b|0?(c=(JN(b,89688)|0)==0,fN(b),c):0){c=2880;return c|0}c=3508;return c|0}function Jl(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;f=h;g=WO(89699)|0;g=eN((WO(d)|0)+g|0)|0;if(!g){g=0;l=h;return g|0}c[f>>2]=e;c[f+4>>2]=d;MN(g,89699,f)|0;b=MP(b,g)|0;if(!b){fN(g);g=0;l=h;return g|0}d=b+(WO(g)|0)|0;fN(g);if(!d){g=0;l=h;return g|0}b=XO(d,10)|0;if(!b){g=0;l=h;return g|0}while(1)if(d>>>0<b>>>0&(a[d>>0]|0)<33)d=d+1|0;else break;while(1){e=b+-1|0;if(b>>>0>d>>>0&(a[e>>0]|0)<33)b=e;else break}b=b-d|0;e=eN(b+1|0)|0;if(!e){g=0;l=h;return g|0}RQ(e+b|0,0,(b|0)!=-1|0)|0;PQ(e|0,d|0,b|0)|0;g=e;l=h;return g|0}function Kl(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;c[a+2440932+(b<<2)+(d<<8<<2)+4128>>2]=c[a+2589288+((e&255)<<2)>>2];return}function Ll(a,b,d){a=a|0;b=b|0;d=d|0;b=c[a+2440932+(b<<2)+(d<<8<<2)+4128>>2]|0;if((c[a+2589288>>2]|0)==(b|0)){a=0;return a|0}if((c[a+2589292>>2]|0)==(b|0)){a=1;return a|0}if((c[a+2589296>>2]|0)==(b|0)){a=2;return a|0}if((c[a+2589300>>2]|0)==(b|0)){a=3;return a|0}if((c[a+2589304>>2]|0)==(b|0)){a=4;return a|0}if((c[a+2589308>>2]|0)==(b|0)){a=5;return a|0}if((c[a+2589312>>2]|0)==(b|0)){a=6;return a|0}if((c[a+2589316>>2]|0)==(b|0)){a=7;return a|0}if((c[a+2589320>>2]|0)==(b|0)){a=8;return a|0}if((c[a+2589324>>2]|0)==(b|0)){a=9;return a|0}if((c[a+2589328>>2]|0)==(b|0)){a=10;return a|0}if((c[a+2589332>>2]|0)==(b|0)){a=11;return a|0}if((c[a+2589336>>2]|0)==(b|0)){a=12;return a|0}if((c[a+2589340>>2]|0)==(b|0)){a=13;return a|0}if((c[a+2589344>>2]|0)==(b|0)){a=14;return a|0}else return ((c[a+2589348>>2]|0)==(b|0)?15:0)|0;return 0}function Ml(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=c[a+2589288+((f&255)<<2)>>2]|0;if((b|0)>=(d|0))return;f=e<<8;do{c[a+2440932+(b<<2)+(f<<2)+4128>>2]=g;b=b+1|0}while((b|0)!=(d|0));return}function Nl(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;k=h+16|0;j=c[k>>2]|0;if((j|0)>0){j=j+-1|0;c[k>>2]=j}if((f|0)<0|(j|0)==0){c[h+4>>2]=-1;c[h>>2]=-1;return}s=e+2588580|0;r=c[s>>2]|0;j=(c[h>>2]|0)+1|0;c[h>>2]=j;p=a[h+14>>0]|0;k=(p<<1&255)<<24>>24>>5;do if(k<<24>>24){e=k<<24>>24;if(k<<24>>24>0){o=O(e+1|0,j)|0;break}else{o=(j|0)/(1-e|0)|0;break}}else o=j;while(0);n=r+256+(f*66|0)+62|0;q=h+4|0;j=(o|0)<29?o:29;k=a[n>>0]|0;e=(k&255)>15;if((o|0)>0){if(e){l=k&15;h=(l+((k&255)>>>4)&255)+-1|0;l=l&255;k=0;e=0;do{k=(k|0)<(h|0)?k+1|0:l;e=e+1|0}while((e|0)!=(o|0))}else k=j;a[q>>0]=k;k=a[n+1>>0]|0;if((k&255)>15){l=k&15;h=(l+((k&255)>>>4)&255)+-1|0;l=l&255;k=0;e=0;do{k=(k|0)<(h|0)?k+1|0:l;e=e+1|0}while((e|0)!=(o|0))}else k=j;m=k&255;a[q+1>>0]=m;k=a[n+2>>0]|0;if((k&255)>15){l=k&15;h=(l+((k&255)>>>4)&255)+-1|0;l=l&255;k=0;e=0;do{k=(k|0)<(h|0)?k+1|0:l;e=e+1|0}while((e|0)!=(o|0))}else k=j;k=k&255;a[q+2>>0]=k;e=a[n+3>>0]|0;if((e&255)>15){l=e&15;h=(l+((e&255)>>>4)&255)+-1|0;l=l&255;j=0;e=0;do{j=(j|0)<(h|0)?j+1|0:l;e=e+1|0}while((e|0)!=(o|0))}h=j&255;j=m}else{h=j&255;a[q>>0]=e?0:h;j=(d[n+1>>0]|0)>15?0:h;a[q+1>>0]=j;k=(d[n+2>>0]|0)>15?0:h;a[q+2>>0]=k;h=(d[n+3>>0]|0)>15?0:h}a[q+3>>0]=h;e=r+256+(f*66|0)+(j<<24>>24<<1)|0;e=O(((d[e>>0]|d[e+1>>0]<<8)&15^15)&65535,p&15)|0;if(e>>>0<=14)return;j=r+256+(f*66|0)+(k<<24>>24<<1)|0;k=r+256+(f*66|0)+60|0;k=d[k>>0]|d[k+1>>0]<<8;j=O(((k&128)>>>6^2)+-1|0,((d[j>>0]|d[j+1>>0]<<8)&65535)>>>8&15)|0;if(!((j&255)<<24>>24))j=g;else j=~~+SQ(+(+Lf(+((+(j<<24>>24|0)+(+fP(+(g|0)/440.0)*12.0+49.0)+-49.0)/12.0))*440.0));g=r+256+(f*66|0)+(h<<24>>24<<1)|0;b[i>>1]=(O(((d[g>>0]|d[g+1>>0]<<8)<<16>>16>>12&65535)<<24>>24,k&8?16:1)|0)+j&4095|(((e>>>0)/15|0)&65535)<<12&65535;j=r+256+(f*66|0)+(a[q>>0]<<1)|0;e=i+2|0;j=(c[s>>2]|0)+((((d[j>>0]|d[j+1>>0]<<8)&65535)>>>4&15)<<4)|0;k=e+16|0;do{a[e>>0]=a[j>>0]|0;e=e+1|0;j=j+1|0}while((e|0)<(k|0));return}function Ol(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0;g=(e*240|0)+c|0;e=b+(g>>>1)|0;c=d[e>>0]|0;b=f&255;if(!(g&1)){g=c&240;a[e>>0]=g;f=b&15;g=f|g;g=g&255;a[e>>0]=g;return}else{g=c&15;a[e>>0]=g;f=b<<4;g=f|g;g=g&255;a[e>>0]=g;return}}function Pl(a,b,c){a=a|0;b=b|0;c=c|0;b=(c*240|0)+b|0;c=d[a+(b>>>1)>>0]|0;return (b&1|0?c>>>4:c&15)&255|0}function Ql(b,c,e,f,g){b=b|0;c=c|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;k=g&255;l=k<<4|k;j=l&255;if((c|0)>=(e|0))return;i=f*240|0;if(!(c&1))g=c;else{f=i+c|0;h=b+(f>>>1)|0;g=d[h>>0]|0;if(!(f&1)){f=g&240;a[h>>0]=f;g=k&15}else{f=g&15;a[h>>0]=f;g=l<<4&4080}a[h>>0]=g|f;g=c+1|0}f=e-g>>1;if((f|0)>0)RQ(b+(g+i>>1)|0,j|0,f|0)|0;if(!(e&1))return;e=e+-1+i|0;h=b+(e>>>1)|0;g=d[h>>0]|0;if(!(e&1)){f=g&240;a[h>>0]=f;g=k&15}else{f=g&15;a[h>>0]=f;g=l<<4&4080}a[h>>0]=g|f;return}function Rl(d,e,f,g,h){d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;a[d+81916>>0]=e;if((e|0)<0){c[d+2589188>>2]=0;g=d+2589210|0;a[g>>0]=a[g>>0]|15;c[d+2589212>>2]=-1;b[d+2589208>>1]=16;c[d+2589204>>2]=-1;c[d+2589200>>2]=-1;c[d+2589196>>2]=-1;g=d+2589230|0;a[g>>0]=a[g>>0]|15;c[d+2589232>>2]=-1;b[d+2589228>>1]=16;c[d+2589224>>2]=-1;c[d+2589220>>2]=-1;c[d+2589216>>2]=-1;g=d+2589250|0;a[g>>0]=a[g>>0]|15;c[d+2589252>>2]=-1;b[d+2589248>>1]=16;c[d+2589244>>2]=-1;c[d+2589240>>2]=-1;c[d+2589236>>2]=-1;g=d+2589270|0;a[g>>0]=a[g>>0]|15;c[d+2589272>>2]=-1;b[d+2589268>>1]=16;c[d+2589264>>2]=-1;c[d+2589260>>2]=-1;c[d+2589256>>2]=-1;return}a[d+81918>>0]=g;a[d+81917>>0]=(f|0)>0?f:0;f=d+81919|0;a[f>>0]=a[f>>0]&-2|h&1;c[d+2589188>>2]=2;f=c[d+2588584>>2]|0;if((g|0)>-1){g=O(g*900|0,(a[f+11520+(e*51|0)+50>>0]|0)+6|0)|0;f=((g|0)/((a[f+11520+(e*51|0)+48>>0]|0)+150|0)|0|0)/6|0}else f=0;c[d+2589192>>2]=f;return}function Sl(a,c){a=a|0;c=c|0;var d=0.0,e=0.0,f=0,h=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0;o=+g[c+4>>2]<+g[a+4>>2];f=o?a:c;a=o?c:a;k=+g[f+4>>2];i=+g[a+4>>2];d=k-i;if(!~~d)return;j=+g[a>>2];m=(+g[f>>2]-j)/d;h=+g[a+8>>2];n=(+g[f+8>>2]-h)/d;e=+g[a+12>>2];l=(+g[f+12>>2]-e)/d;d=0.0-i;if(i<0.0){e=e+d*l;h=h+d*n;i=0.0;d=j+d*m}else d=j;o=~~k;j=+(((o|0)<136?o:136)|0);if(!(i<j))return;while(1){c=~~d;f=~~i;if(f>>>0<136){a=317604+(f<<1)|0;if((b[a>>1]|0)>(c|0)){b[a>>1]=c;g[318420+(f<<2)>>2]=h;g[319508+(f<<2)>>2]=e}a=317332+(f<<1)|0;if((b[a>>1]|0)<(c|0)){b[a>>1]=c;g[317876+(f<<2)>>2]=h;g[318964+(f<<2)>>2]=e}}i=i+1.0;if(!(i<j))break;else{e=l+e;h=n+h;d=m+d}}return}function Tl(b,e,f,g,h,i,j,k,m,n,o,p,q){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=n|0;o=o|0;p=p|0;q=q|0;var r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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;K=l;l=l+16|0;I=K+12|0;J=K;a[I>>0]=n;G=o<<3;H=j+h|0;if((j|0)<=0){l=K;return}F=i+g|0;y=(i|0)>0;z=J+4|0;A=J+8|0;B=(p|0)==0;C=239-g|0;D=~g;E=g+240|0;v=h;w=135-h|0;x=~h;u=h+136|0;while(1){t=((v|0)>0?v:0)+w|0;t=t-((t>>>0)%136|0)|0;j=x-t|0;j=((j|0)>-136?j:-136)+u+t|0;j=v+t+(((j>>>0)%136|0)-j)|0;if(y){t=j*240|0;if(B){n=k;j=g;i=C;h=D;r=E;while(1){L=((j|0)>0?j:0)+i|0;L=L-((L>>>0)%240|0)|0;s=h-L|0;s=((s|0)>-240?s:-240)+r+L|0;s=a[e+(t+(j+L+(((s>>>0)%240|0)-s)))>>0]|0;a[J>>0]=s;c[z>>2]=0;c[A>>2]=0;Pk(b,f+((s&255)<<5)|0,n,m,I,1,o,0,0);j=j+1|0;if((j|0)>=(F|0))break;else{n=n+G|0;i=i+-1|0;h=h+-1|0;r=r+1|0}}}else{n=k;i=g;h=C;r=D;s=E;while(1){M=((i|0)>0?i:0)+h|0;M=M-((M>>>0)%240|0)|0;L=r-M|0;L=((L|0)>-240?L:-240)+s+M|0;L=i+M+(((L>>>0)%240|0)-L)|0;a[J>>0]=a[e+(t+L)>>0]|0;c[z>>2]=0;c[A>>2]=0;Eg[p&63](q,L,j,J);Pk(b,f+((d[J>>0]|0)<<5)|0,n,m,I,1,o,c[z>>2]|0,c[A>>2]|0);i=i+1|0;if((i|0)>=(F|0))break;else{n=n+G|0;h=h+-1|0;r=r+-1|0;s=s+1|0}}}}v=v+1|0;if((v|0)>=(H|0))break;else{m=m+G|0;w=w+-1|0;x=x+-1|0;u=u+1|0}}l=K;return}function Ul(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;if(e>>>0>239)return;o=(f|0)>0?f:0;i=g+f|0;i=(i|0)<136?i:136;if((o|0)>=(i|0))return;j=b+2589044|0;k=b+2589048|0;l=b+2589052|0;m=b+2589056|0;n=b+2589352|0;h=h&15;g=(h>>>1)+(b+16368)|0;if(!(h&1)){f=o;do{if((((c[j>>2]|0)<=(e|0)?(c[k>>2]|0)<=(f|0):0)?(c[l>>2]|0)>(e|0):0)?(c[m>>2]|0)>(f|0):0)Eg[c[n>>2]&63](b,e,f,a[g>>0]&15);f=f+1|0}while((f|0)<(i|0));return}else{f=o;do{if((((c[j>>2]|0)<=(e|0)?(c[k>>2]|0)<=(f|0):0)?(c[l>>2]|0)>(e|0):0)?(c[m>>2]|0)>(f|0):0)Eg[c[n>>2]&63](b,e,f,(d[g>>0]|0)>>>4);f=f+1|0}while((f|0)<(i|0));return}}function Vl(b,c,d,e,f,g,h,i){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0;j=d+-2+(i*7|0)|0;k=j-i|0;l=k-i|0;m=l-i|0;n=m-i|0;o=n-i|0;g=0;f=((c&255)<<3)+(b+2438632)|0;while(1){d=a[f>>0]|0;if(d&4){_k(b,j,e,i,i,h);d=a[f>>0]|0}if(d&8){_k(b,k,e,i,i,h);d=a[f>>0]|0}if(d&16){_k(b,l,e,i,i,h);d=a[f>>0]|0}if(d&32){_k(b,m,e,i,i,h);d=a[f>>0]|0}if(d&64){_k(b,n,e,i,i,h);d=a[f>>0]|0}if(d<<24>>24<=-1)_k(b,o,e,i,i,h);g=g+1|0;if((g|0)==6)break;else{e=e+i|0;f=f+1|0}}return i*6|0}function Wl(b,e,f,g,h,i,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=((e&255)<<3)+(b+2438632)|0;q=d[z>>0]|0;r=z+1|0;s=z+2|0;t=z+3|0;u=z+4|0;v=z+5|0;if((((((q&128|0)==0?(p=a[r>>0]|0,p<<24>>24>-1):0)?(l=a[s>>0]|0,l<<24>>24>-1):0)?(m=a[t>>0]|0,m<<24>>24>-1):0)?(n=a[u>>0]|0,n<<24>>24>-1):0)?(o=a[v>>0]|0,o<<24>>24>-1):0)if((q&64|0)==0?((p|l|m|n|o)&64)==0:0)if((q&32|0)==0?((p|l|m|n|o)&32)==0:0)if((q&16|0)==0?((p|l|m|n|o)&16)==0:0)if((q&8|0)==0?((p|l|m|n|o)&8)==0:0)if((q&4|0)==0?((p|l|m|n|o)&4)==0:0){e=6;l=6}else{l=5;w=3}else{l=4;w=3}else{l=3;w=3}else{l=2;w=3}else{l=1;w=3}else{l=0;w=3}a:do if((w|0)==3){i=5;e=6;while(1){h=128>>>i;if(q&h|0)break a;if((d[r>>0]|0)&h|0)break a;if((d[s>>0]|0)&h|0)break a;if((d[t>>0]|0)&h|0)break a;if((d[u>>0]|0)&h|0)break a;if((d[v>>0]|0)&h|0)break a;e=e+-1|0;if((i|0)>(l|0))i=i+-1|0;else break}}while(0);x=b+2589048|0;y=b+2589056|0;s=j&15;r=(s>>>1)+(b+16368)|0;s=(s&1|0)==0;t=b+2589044|0;u=b+2589052|0;v=b+2589360|0;w=(e|0)<=(l|0)|(k|0)<1;q=0;n=z;while(1){m=g;g=g+k|0;if(!w){i=l;o=f;do{p=o;o=o+k|0;if((d[n>>0]|0)&128>>>i|0)if(s){h=m;do{if((c[x>>2]|0)<=(h|0)?(c[y>>2]|0)>(h|0):0){j=c[t>>2]|0;z=c[u>>2]|0;Fg[c[v>>2]&15](b,(j|0)<(p|0)?p:j,(o|0)<(z|0)?o:z,h,a[r>>0]&15)}h=h+1|0}while((h|0)<(g|0))}else{h=m;do{if((c[x>>2]|0)<=(h|0)?(c[y>>2]|0)>(h|0):0){j=c[t>>2]|0;z=c[u>>2]|0;Fg[c[v>>2]&15](b,(j|0)<(p|0)?p:j,(o|0)<(z|0)?o:z,h,(d[r>>0]|0)>>>4)}h=h+1|0}while((h|0)<(g|0))}i=i+1|0}while((i|0)!=(e|0))}q=q+1|0;if((q|0)==6)break;else n=n+1|0}f=e-l|0;return O(f|0?f+1|0:4,k)|0}function Xl(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;D=b+28|0;E=b+36|0;F=b+44|0;G=f+7|0;H=d;I=f+5|0;q=f+1|0;r=b+52|0;s=b+60|0;t=b+56|0;u=f+3|0;x=b+48|0;z=f+2|0;B=f+4|0;C=b+40|0;o=b+32|0;g=d;b=0;d=0;h=0;i=0;m=0;n=0;a:while(1){l=a[g>>0]|0;if(b|0){L=c[o>>2]|0;J=MP(g,L)|0;K=(J|0)==0;L=(K?b:J)+(WO(K?b:L)|0)|0;K=b;RQ(e+(K-H)|0,a[B>>0]|0,L-K|0)|0;K=n;J=m;j=i;k=h;l=d;g=L;b=0;n=K;m=J;i=j;h=k;d=l;continue}if(d|0){b=c[C>>2]|0;J=MP(g,b)|0;l=(J|0)==0;b=(l?d:J)+(WO(l?d:b)|0)|0;l=d;RQ(e+(l-H)|0,a[f>>0]|0,b-l|0)|0;l=n;J=m;K=i;L=h;g=b;b=0;d=0;n=l;m=J;i=K;h=L;continue}if(h|0){b=a[h>>0]|0;d=h;while(1){d=XO(d+1|0,b)|0;if(!d){p=12;break}if((a[d+-1>>0]|0)!=92){p=11;break}if((a[d+-2>>0]|0)==92){p=11;break}}if((p|0)==11){p=0;b=d+1|0}else if((p|0)==12){p=0;b=h+(WO(h)|0)|0}J=h;RQ(e+(J-H)|0,a[f>>0]|0,b-J|0)|0;J=n;K=m;L=i;g=b;b=0;d=0;h=0;n=J;m=K;i=L;continue}if(i|0){d=g;b=l;b:while(1){switch(b<<24>>24){case 0:case 10:break b;default:{}}b=d+1|0;d=b;b=a[b>>0]|0}K=i;RQ(e+(K-H)|0,a[B>>0]|0,d-K|0)|0;K=n;L=m;g=d;b=0;d=0;h=0;i=0;n=K;m=L;continue}if(m|0){k=g;b=l;c:while(1){switch(b<<24>>24){case 0:case 10:break c;default:{}}if(!(b<<24>>24==95|(nO(b<<24>>24)|0)!=0))break;b=k+1|0;k=b;b=a[b>>0]|0}i=m;j=k-i|0;d=c[r>>2]|0;d:do if((d|0)>0){g=c[x>>2]|0;b=0;while(1){h=c[g+(b<<2)>>2]|0;if((j|0)==(WO(h)|0)?(KN(m,h,j)|0)==0:0)break;b=b+1|0;if((b|0)>=(d|0))break d}RQ(e+(i-H)|0,a[z>>0]|0,j|0)|0;L=n;g=k;b=0;d=0;h=0;i=0;m=0;n=L;continue a}while(0);g=c[s>>2]|0;if((g|0)<=0){L=n;g=k;b=0;d=0;h=0;i=0;m=0;n=L;continue}h=c[t>>2]|0;b=0;while(1){d=c[h+(b<<2)>>2]|0;if((j|0)==(WO(d)|0)?(KN(m,d,j)|0)==0:0)break;b=b+1|0;if((b|0)>=(g|0)){L=n;g=k;b=0;d=0;h=0;i=0;m=0;n=L;continue a}}RQ(e+(i-H)|0,a[u>>0]|0,j|0)|0;L=n;g=k;b=0;d=0;h=0;i=0;m=0;n=L;continue}if(n|0){h=n+1|0;i=n+2|0;j=n;b=l;e:while(1){switch(b<<24>>24){case 0:case 10:break e;default:{}}d=b<<24>>24;f:do if((d+-48|0)>>>0>=10){g:do if((a[n>>0]|0)==48){switch(a[h>>0]|0){case 88:case 120:break;default:break g}if(tO(a[i>>0]|0)|0){if((g-j|0)>=2?(tO(d)|0)==0:0)break e;b=g+1|0;break f}}while(0);switch(b<<24>>24){case 69:case 101:case 46:break;default:break e}b=g+1|0;if(((a[b>>0]|0)+-48|0)>>>0>=10)break e}else b=g+1|0;while(0);g=b;b=a[b>>0]|0}RQ(e+(j-H)|0,a[q>>0]|0,g-j|0)|0;b=0;d=0;h=0;i=0;m=0;n=0;continue}b=c[D>>2]|0;if(b|0?(v=WO(b)|0,(KN(g,b,v)|0)==0):0){b=g;g=g+v|0;d=0;h=0;i=0;m=0;n=0;continue}b=c[E>>2]|0;if(b|0?(w=WO(b)|0,(KN(g,b,w)|0)==0):0){d=g;g=g+w|0;b=0;h=0;i=0;m=0;n=0;continue}b=l<<24>>24;switch(l<<24>>24){case 39:case 34:{h=g;g=g+1|0;b=0;d=0;i=0;m=0;n=0;continue a}default:{}}d=c[F>>2]|0;if(d|0?(y=WO(d)|0,(KN(g,d,y)|0)==0):0){i=g;g=g+y|0;b=0;d=0;h=0;m=0;n=0;continue}if(l<<24>>24==95|(oO(b)|0)!=0){m=g;g=g+1|0;b=0;d=0;h=0;i=0;n=0;continue}if((b+-48|0)>>>0<10){n=g;g=g+1|0;b=0;d=0;h=0;i=0;m=0;continue}if(l<<24>>24==46?(A=g+1|0,((a[A>>0]|0)+-48|0)>>>0<10):0){n=g;g=A;b=0;d=0;h=0;i=0;m=0;continue}if(!(sO(b)|0)){if(pO(b)|0){b=G;p=68}}else{b=I;p=68}if((p|0)==68){p=0;a[e+(g-H)>>0]=a[b>>0]|0}if(!(l<<24>>24))break;else{g=g+1|0;b=0;d=0;h=0;i=0;m=0;n=0}}return}function Yl(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;i=a;i=EQ(c[i>>2]|0,c[i+4>>2]|0,d|0,0)|0;g=a+8|0;g=yQ(i|0,z|0,c[g>>2]|0,c[g+4>>2]|0)|0;i=z;j=a+32|0;h=j+(c[a+16>>2]<<2)|0;f=JQ(g|0,i|0,52)|0;f=h+(f<<2)|0;g=JQ(g|0,i|0,47)|0;g=g&31;h=32-g|0;i=(O(i&32767,e)|0)>>15;d=e-i|0;if(f>>>0>(j+((c[a+20>>2]|0)+2<<2)|0)>>>0)Ga(90022,89851,309,90071);else{a=O(b[33556+(g<<4)>>1]|0,d)|0;e=O(b[33556+(g<<4)+16>>1]|0,i)|0;c[f>>2]=(c[f>>2]|0)+a+e;e=O(b[33556+(g<<4)+2>>1]|0,d)|0;a=O(b[33556+(g<<4)+18>>1]|0,i)|0;j=f+4|0;c[j>>2]=(c[j>>2]|0)+e+a;j=O(b[33556+(g<<4)+4>>1]|0,d)|0;a=O(b[33556+(g<<4)+20>>1]|0,i)|0;e=f+8|0;c[e>>2]=(c[e>>2]|0)+j+a;e=O(b[33556+(g<<4)+6>>1]|0,d)|0;a=O(b[33556+(g<<4)+22>>1]|0,i)|0;j=f+12|0;c[j>>2]=(c[j>>2]|0)+e+a;j=O(b[33556+(g<<4)+8>>1]|0,d)|0;a=O(b[33556+(g<<4)+24>>1]|0,i)|0;e=f+16|0;c[e>>2]=(c[e>>2]|0)+j+a;e=O(b[33556+(g<<4)+10>>1]|0,d)|0;a=O(b[33556+(g<<4)+26>>1]|0,i)|0;j=f+20|0;c[j>>2]=(c[j>>2]|0)+e+a;j=O(b[33556+(g<<4)+12>>1]|0,d)|0;a=O(b[33556+(g<<4)+28>>1]|0,i)|0;e=f+24|0;c[e>>2]=(c[e>>2]|0)+j+a;e=O(b[33556+(g<<4)+14>>1]|0,d)|0;a=O(b[33556+(g<<4)+30>>1]|0,i)|0;j=f+28|0;c[j>>2]=(c[j>>2]|0)+e+a;j=O(b[33556+(h<<4)+14>>1]|0,d)|0;a=O(b[33556+(h<<4)+-2>>1]|0,i)|0;g=f+32|0;c[g>>2]=(c[g>>2]|0)+j+a;g=O(b[33556+(h<<4)+12>>1]|0,d)|0;a=O(b[33556+(h<<4)+-4>>1]|0,i)|0;j=f+36|0;c[j>>2]=(c[j>>2]|0)+g+a;j=O(b[33556+(h<<4)+10>>1]|0,d)|0;a=O(b[33556+(h<<4)+-6>>1]|0,i)|0;g=f+40|0;c[g>>2]=(c[g>>2]|0)+j+a;g=O(b[33556+(h<<4)+8>>1]|0,d)|0;a=O(b[33556+(h<<4)+-8>>1]|0,i)|0;j=f+44|0;c[j>>2]=(c[j>>2]|0)+g+a;j=O(b[33556+(h<<4)+6>>1]|0,d)|0;a=O(b[33556+(h<<4)+-10>>1]|0,i)|0;g=f+48|0;c[g>>2]=(c[g>>2]|0)+j+a;g=O(b[33556+(h<<4)+4>>1]|0,d)|0;a=O(b[33556+(h<<4)+-12>>1]|0,i)|0;j=f+52|0;c[j>>2]=(c[j>>2]|0)+g+a;j=O(b[33556+(h<<4)+2>>1]|0,d)|0;a=O(b[33556+(h<<4)+-14>>1]|0,i)|0;g=f+56|0;c[g>>2]=(c[g>>2]|0)+j+a;g=O(b[33556+(h<<4)>>1]|0,d)|0;a=O(b[33556+(h<<4)+-16>>1]|0,i)|0;j=f+60|0;c[j>>2]=(c[j>>2]|0)+g+a;return}}function Zl(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,C=0,D=0,E=0.0;D=l;l=l+48|0;C=D;o=D+20|0;y=b+2588564|0;f=c[y>>2]|0;if(f|0){Ar(c[f+44>>2]|0);c[y>>2]=0}u=316336;c[u>>2]=0;c[u+4>>2]=0;u=eN(896)|0;v=u;a:do if(!u)h=0;else{RQ(u|0,0,896)|0;s=u+4|0;c[s>>2]=12;c[u+8>>2]=13;r=u+12|0;c[r>>2]=153;t=u+16|0;c[t>>2]=b;c[u+20>>2]=154;w=u+60|0;c[w>>2]=1;x=u+64|0;c[x>>2]=1;c[u+140>>2]=0;c[u+144>>2]=1e3;k=u+148|0;c[k>>2]=v^5381;c[u+96>>2]=2;c[u+112>>2]=2;f=eN(4096)|0;m=u+176|0;c[m>>2]=f;b:do if(f|0){c[u+184>>2]=1024;n=u+180|0;c[n>>2]=1023;RQ(f|0,0,4096)|0;j=C+4|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[C>>2]=273512;c[C+8>>2]=892;j=0;do{i=xr(C,o)|0;f=c[k>>2]^i;h=(i>>>5)+1|0;if(h>>>0>i>>>0)g=f;else{g=i;do{f=(d[o+(g+-1)>>0]|0)+(f*33|0)|0;g=g-h|0}while(g>>>0>=h>>>0);g=f}f=c[(c[m>>2]|0)+((c[n>>2]&g)<<2)>>2]|0;c:do if(!f)q=13;else while(1){if(((c[f+12>>2]|0)==(g|0)?(c[f+20>>2]|0)==(i|0):0)?(KN(o,f+28|0,i)|0)==0:0)break c;f=c[f+8>>2]|0;if(!f){q=13;break}}while(0);if((q|0)==13){q=0;f=no(u,o,i,g)|0;if(!f){q=19;break}}switch(j|0){case 33:case 67:{c[f>>2]=c[f>>2]|8192;break}default:if(j>>>0>116?(p=c[f>>2]|0,c[f>>2]=p|2048,j>>>0>152):0)c[f>>2]=p|6144}i=f+4|0;c[i>>2]=(c[i>>2]|0)+1;c[u+244+(j<<2)>>2]=f;j=j+1|0}while(j>>>0<162);if((q|0)==19)break;h=yr(u,308)|0;if(h|0){g=h+4|0;RQ(g|0,0,304)|0;c[h>>2]=-1879048063;j=u+24|0;f=c[j>>2]|0;if(f|0)c[f+12>>2]=h;c[h+12>>2]=0;c[h+8>>2]=f;c[j>>2]=h;c[h+44>>2]=u;a[h+49>>0]=1;c[h+304>>2]=u+244;k=u+128|0;c[k>>2]=h;c[g>>2]=1;f=yr(u,1536)|0;g=h+52|0;c[g>>2]=f;if(!f){Bg[c[r>>2]&255](c[t>>2]|0,0);c[g>>2]=0;break}RQ(f|0,0,1536)|0;g=c[g>>2]|0;c[h+56>>2]=g+1024;c[h+60>>2]=g+1536;f=g;c[h+64>>2]=f;c[h+68>>2]=f;f=0;do{c[g+(f<<4)>>2]=2;f=f+1|0}while((f|0)!=96);zr(h);f=c[h+240>>2]|0;c[h+20>>2]=f;if(f|0){r=f+4|0;c[r>>2]=(c[r>>2]|0)+1}q=u+44|0;r=c[q>>2]|0;c[q>>2]=r+-1;if((r|0)<1)Ln(u,2);f=hg[c[s>>2]&63](c[t>>2]|0,40)|0;do if(!f){Ln(u,0);f=hg[c[s>>2]&63](c[t>>2]|0,40)|0;if(!f){Ln(u,0);f=hg[c[s>>2]&63](c[t>>2]|0,40)|0;if(!f){Ln(u,1);f=hg[c[s>>2]&63](c[t>>2]|0,40)|0;if(!f){Ln(u,1);f=hg[c[s>>2]&63](c[t>>2]|0,40)|0;if(!f){Ln(u,1);f=hg[c[s>>2]&63](c[t>>2]|0,40)|0;if(!f){Ln(u,1);f=hg[c[s>>2]&63](c[t>>2]|0,40)|0;if(!f){Ln(u,1);f=hg[c[s>>2]&63](c[t>>2]|0,40)|0;if(!f){Ln(u,1);f=hg[c[s>>2]&63](c[t>>2]|0,40)|0;if(!f){Ln(u,1);f=hg[c[s>>2]&63](c[t>>2]|0,40)|0;if(f|0)break;Ln(u,1);f=hg[c[s>>2]&63](c[t>>2]|0,40)|0;if(f|0)break;c[u+136>>2]=0;break b}}}}}}}}}while(0);i=f+4|0;g=i;h=g+36|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0));c[f>>2]=134234241;g=c[j>>2]|0;if(g|0)c[g+12>>2]=f;c[f+12>>2]=0;c[f+8>>2]=g;c[j>>2]=f;c[u+136>>2]=f;c[i>>2]=1;if(!(Ef(C|0,0)|0)){E=+(c[C>>2]|0)*1.0e3+ +(c[C+4>>2]|0)/1.0e3;f=~~E>>>0;g=+B(E)>=1.0?(E>0.0?~~+P(+A(E/4294967296.0),4294967295.0)>>>0:~~+N((E-+(~~E>>>0))/4294967296.0)>>>0):0}else{f=0;g=0}h=u+152|0;c[h>>2]=f;c[h+4>>2]=g;g=c[(c[k>>2]|0)+44>>2]|0;h=g+152|0;j=h;f=0;i=c[j>>2]|0;j=c[j+4>>2]|0;do{i=yQ(i|0,j|0,2135587861,-1640531527)|0;j=z;s=JQ(i|0,j|0,30)|0;s=EQ(s^i|0,z^j|0,484763065,-1084733587)|0;r=z;q=JQ(s|0,r|0,27)|0;r=EQ(q^s|0,z^r|0,321982955,-1798288965)|0;s=z;q=JQ(r|0,s|0,31)|0;t=g+152+((f&1)<<3)|0;c[t>>2]=q^r;c[t+4>>2]=z^s;f=f+1|0}while((f|0)!=64);s=u+160|0;n=s;q=c[n+4>>2]|0;c[s>>2]=c[n>>2]^v;c[s+4>>2]=q;s=g+160|0;q=h;n=c[q>>2]|0;q=c[q+4>>2]|0;u=s;v=c[u>>2]^n;u=c[u+4>>2]^q;r=KQ(n|0,q|0,55)|0;o=z;q=JQ(n|0,q|0,9)|0;r=(q|r)^v;o=(z|o)^u;q=KQ(v|0,u|0,14)|0;q=r^q;n=o^z;p=KQ(v|0,u|0,36)|0;t=z;u=JQ(v|0,u|0,28)|0;p=(u|p)^q;t=(z|t)^n;o=KQ(r|0,o|0,55)|0;r=z;n=JQ(q|0,n|0,9)|0;o=(n|o)^p;r=(z|r)^t;n=KQ(p|0,t|0,14)|0;n=o^n;q=r^z;u=KQ(p|0,t|0,36)|0;v=z;t=JQ(p|0,t|0,28)|0;u=n^(t|u);v=q^(z|v);r=KQ(o|0,r|0,55)|0;o=z;q=JQ(n|0,q|0,9)|0;r=(q|r)^u;o=(z|o)^v;q=KQ(u|0,v|0,14)|0;q=r^q;n=o^z;t=KQ(u|0,v|0,36)|0;p=z;v=JQ(u|0,v|0,28)|0;t=q^(v|t);p=n^(z|p);o=KQ(r|0,o|0,55)|0;r=z;n=JQ(q|0,n|0,9)|0;o=(n|o)^t;r=(z|r)^p;n=KQ(t|0,p|0,14)|0;n=o^n;q=r^z;v=KQ(t|0,p|0,36)|0;u=z;p=JQ(t|0,p|0,28)|0;v=n^(p|v);u=q^(z|u);r=KQ(o|0,r|0,55)|0;o=z;q=JQ(n|0,q|0,9)|0;r=(q|r)^v;o=(z|o)^u;q=KQ(v|0,u|0,14)|0;q=r^q;n=o^z;p=KQ(v|0,u|0,36)|0;t=z;u=JQ(v|0,u|0,28)|0;p=q^(u|p);t=n^(z|t);o=KQ(r|0,o|0,55)|0;r=z;n=JQ(q|0,n|0,9)|0;o=(n|o)^p;r=(z|r)^t;n=KQ(p|0,t|0,14)|0;n=o^n;q=r^z;u=KQ(p|0,t|0,36)|0;v=z;t=JQ(p|0,t|0,28)|0;u=n^(t|u);v=q^(z|v);r=KQ(o|0,r|0,55)|0;o=z;q=JQ(n|0,q|0,9)|0;r=(q|r)^u;o=(z|o)^v;q=KQ(u|0,v|0,14)|0;q=r^q;n=o^z;t=KQ(u|0,v|0,36)|0;p=z;v=JQ(u|0,v|0,28)|0;t=q^(v|t);p=n^(z|p);o=KQ(r|0,o|0,55)|0;r=z;n=JQ(q|0,n|0,9)|0;o=(n|o)^t;r=(z|r)^p;n=KQ(t|0,p|0,14)|0;n=o^n;q=r^z;v=KQ(t|0,p|0,36)|0;u=z;p=JQ(t|0,p|0,28)|0;v=n^(p|v);u=q^(z|u);r=KQ(o|0,r|0,55)|0;o=z;q=JQ(n|0,q|0,9)|0;r=(q|r)^v;o=(z|o)^u;q=KQ(v|0,u|0,14)|0;q=r^q;n=o^z;p=KQ(v|0,u|0,36)|0;t=z;u=JQ(v|0,u|0,28)|0;p=q^(u|p);t=n^(z|t);o=KQ(r|0,o|0,55)|0;r=z;n=JQ(q|0,n|0,9)|0;r=(z|r)^t;q=KQ(p|0,t|0,14)|0;r=r^z;u=KQ(p|0,t|0,36)|0;v=z;t=JQ(p|0,t|0,28)|0;c[h>>2]=(n|o)^p^q;c[h+4>>2]=r;h=s;c[h>>2]=t|u;c[h+4>>2]=z|v;c[w>>2]=0;c[x>>2]=0;h=c[k>>2]|0;break a}}while(0);if(c[u+128>>2]|0){c[w>>2]=0;c[x>>2]=0}Ar(u);h=0}while(0);c[y>>2]=h;Pv(h);g=h+68|0;f=c[g>>2]|0;if(f>>>0>=(c[h+56>>2]|0)>>>0)Un(h,4341);c[g>>2]=f+16;c[f>>2]=5;c[f+8>>2]=b;Tu(h,90165);f=c[g>>2]|0;if((f|0)==(c[h+64>>2]|0))Jn(h,268620,50337407,268636);w=f+-16|0;c[g>>2]=w;x=c[f+-16>>2]|0;f=c[f+-8>>2]|0;c[w>>2]=2;if(x&8|0?(w=f+4|0,x=(c[w>>2]|0)+-1|0,c[w>>2]=x,(x|0)==0):0)Yn(c[h+44>>2]|0,f);m=0;while(1){if(m>>>0>=3){aq(c[y>>2]|0,c[3204+(m<<3)>>2]|0,c[3204+(m<<3)+4>>2]|0,403133312,6);n=c[y>>2]|0;j=c[3052+(m<<2)>>2]|0;f=c[n+100>>2]|0;k=n+68|0;g=c[k>>2]|0;if(g>>>0>=(c[n+56>>2]|0)>>>0){q=64;break}c[k>>2]=g+16;c[g>>2]=9;c[g+8>>2]=f;i=f+4|0;c[i>>2]=(c[i>>2]|0)+1;i=n+64|0;f=c[i>>2]|0;g=(c[k>>2]|0)-f>>4;if(g>>>0<=1){q=66;break}h=f+(g+-2<<4)|0;f=f+(g+-1<<4)|0;g=f-h|0;if(g|0){c[C>>2]=c[f>>2];c[C+4>>2]=c[f+4>>2];c[C+8>>2]=c[f+8>>2];c[C+12>>2]=c[f+12>>2];QQ(h+16|0,h|0,g|0)|0;c[h>>2]=c[C>>2];c[h+4>>2]=c[C+4>>2];c[h+8>>2]=c[C+8>>2];c[h+12>>2]=c[C+12>>2]}Tu(n,j);f=c[k>>2]|0;if((f|0)==(c[i>>2]|0)){q=70;break}w=f+-16|0;c[k>>2]=w;x=c[f+-16>>2]|0;f=c[f+-8>>2]|0;c[w>>2]=2;if(x&8|0?(w=f+4|0,x=(c[w>>2]|0)+-1|0,c[w>>2]=x,(x|0)==0):0)Yn(c[n+44>>2]|0,f)}m=m+1|0;if((m|0)==38){q=75;break}}if((q|0)==64)Un(n,4153);else if((q|0)==66)jo(n,376,-2);else if((q|0)==70)Jn(n,268620,50337407,268636);else if((q|0)==75){k=c[y>>2]|0;g=(e|0)==0;if(g)f=0;else f=WO(e)|0;c[C+4>>2]=e;c[C>>2]=f;c[C+8>>2]=3712;i=k+68|0;f=c[i>>2]|0;j=k+64|0;if(f>>>0<(c[j>>2]|0)>>>0)Vn(k,268605,315);h=k+56|0;if((c[h>>2]|0)>>>0<(f+16|0)>>>0)Vn(k,268605,315);if(!(Xn(k,13,C,0,1)|0)){if(g)f=0;else f=WO(e)|0;c[C+4>>2]=e;c[C>>2]=f;c[C+8>>2]=3720;f=c[i>>2]|0;if(f>>>0<(c[j>>2]|0)>>>0)Vn(k,268605,315);if((c[h>>2]|0)>>>0<(f+16|0)>>>0)Vn(k,268605,315);if(!(Xn(k,13,C,0,1)|0)){f=c[k+100>>2]|0;g=c[i>>2]|0;if(g>>>0>=(c[h>>2]|0)>>>0)Un(k,4153);c[i>>2]=g+16;c[g>>2]=9;c[g+8>>2]=f;f=f+4|0;c[f>>2]=(c[f>>2]|0)+1;c[C>>2]=0;c[C+4>>2]=0;f=c[i>>2]|0;if(f>>>0<((c[j>>2]|0)+32|0)>>>0)Vn(k,268605,315);if(((c[h>>2]|0)+32|0)>>>0<(f+16|0)>>>0)Vn(k,268605,315);if(!(Xn(k,14,C,2,1)|0)){C=1;l=D;return C|0}}}C=c[b+2588588>>2]|0;b=c[C+4>>2]|0;C=c[C+36>>2]|0;f=rr(k)|0;Bg[b&255](C,f);f=c[i>>2]|0;if((f|0)==(c[j>>2]|0))Jn(k,268620,50337407,268636);b=f+-16|0;c[i>>2]=b;C=c[f+-16>>2]|0;f=c[f+-8>>2]|0;c[b>>2]=2;if(!(C&8)){C=0;l=D;return C|0}b=f+4|0;C=(c[b>>2]|0)+-1|0;c[b>>2]=C;if(C|0){C=0;l=D;return C|0}Yn(c[k+44>>2]|0,f);C=0;l=D;return C|0}return 0}function _l(a){a=a|0;var b=0;a=a+2588564|0;b=c[a>>2]|0;if(!b)return;Ar(c[b+44>>2]|0);c[a>>2]=0;return}function $l(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;e=h;g=c[a+2588564>>2]|0;if(!g){l=h;return}if(Ov(g,262928)|0){c[e>>2]=0;c[e+4>>2]=0;b=g+68|0;f=c[b>>2]|0;d=g+64|0;if(f>>>0<((c[d>>2]|0)+16|0)>>>0)Vn(g,268605,315);if((c[g+56>>2]|0)>>>0<f>>>0)Vn(g,268605,315);if(Xn(g,15,e,1,1)|0){e=c[a+2588588>>2]|0;a=c[e+4>>2]|0;e=c[e+36>>2]|0;f=rr(g)|0;Bg[a&255](e,f)}}else{d=c[a+2588588>>2]|0;Bg[c[d+4>>2]&255](c[d+36>>2]|0,263117);d=g+64|0;b=g+68|0}a=c[b>>2]|0;if((a|0)==(c[d>>2]|0))Jn(g,268620,50337407,268636);e=a+-16|0;c[b>>2]=e;f=c[a+-16>>2]|0;b=c[a+-8>>2]|0;c[e>>2]=2;if(!(f&8)){l=h;return}e=b+4|0;f=(c[e>>2]|0)+-1|0;c[e>>2]=f;if(f|0){l=h;return}Yn(c[g+44>>2]|0,b);l=h;return}function am(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;f=k;j=c[a+2588564>>2]|0;i=j+68|0;if(Ov(j,262932)|0){g=c[i>>2]|0;e=c[j+56>>2]|0;if(g>>>0>=e>>>0)Un(j,4244);m=g+16|0;c[i>>2]=m;c[g>>2]=0;h[g+8>>3]=+(b|0);c[f>>2]=1;c[f+4>>2]=0;d=j+64|0;if(e>>>0<g>>>0?1:m>>>0<((c[d>>2]|0)+32|0)>>>0)Vn(j,268605,315);if(Xn(j,15,f,2,1)|0){a=c[a+2588588>>2]|0;g=c[a+4>>2]|0;a=c[a+36>>2]|0;m=rr(j)|0;Bg[g&255](a,m)}}else d=j+64|0;b=c[i>>2]|0;if((b|0)==(c[d>>2]|0))Jn(j,268620,50337407,268636);a=b+-16|0;c[i>>2]=a;m=c[b+-16>>2]|0;d=c[b+-8>>2]|0;c[a>>2]=2;if(!(m&8)){l=k;return}i=d+4|0;m=(c[i>>2]|0)+-1|0;c[i>>2]=m;if(m|0){l=k;return}Yn(c[j+44>>2]|0,d);l=k;return}function bm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;d=h;g=c[a+2588564>>2]|0;if(Ov(g,262941)|0){c[d>>2]=0;c[d+4>>2]=0;b=g+68|0;f=c[b>>2]|0;e=g+64|0;if(f>>>0<((c[e>>2]|0)+16|0)>>>0)Vn(g,268605,315);if((c[g+56>>2]|0)>>>0<f>>>0)Vn(g,268605,315);if(Xn(g,15,d,1,1)|0){f=c[a+2588588>>2]|0;d=c[f+4>>2]|0;f=c[f+36>>2]|0;a=rr(g)|0;Bg[d&255](f,a)}}else{e=g+64|0;b=g+68|0}d=c[b>>2]|0;if((d|0)==(c[e>>2]|0))Jn(g,268620,50337407,268636);f=d+-16|0;c[b>>2]=f;a=c[d+-16>>2]|0;b=c[d+-8>>2]|0;c[f>>2]=2;if(!(a&8)){l=h;return}f=b+4|0;a=(c[f>>2]|0)+-1|0;c[f>>2]=a;if(a|0){l=h;return}Yn(c[g+44>>2]|0,b);l=h;return}function cm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;c[d>>2]=0;e=c[80013]|0;if(e|0){fN(e);c[80013]=0}g=MP(b,269735)|0;if(!g){n=0;return n|0}f=0;h=0;e=0;do{m=g+9|0;j=9;while(1){i=g+j|0;l=a[i>>0]|0;if(!(l<<24>>24)){g=i;break}i=l<<24>>24==95|(nO(l<<24>>24)|0)!=0;k=(i&1)+j|0;if(i)j=k;else{n=8;break}}if((n|0)==8){n=0;i=l<<24>>24==40?j:9;g=g+k|0;if((i|0)>9){if(!f)f=eN(8)|0;else f=gN(h,(c[d>>2]<<3)+8|0)|0;c[80013]=f;e=c[d>>2]|0;c[f+(e<<3)>>2]=m-b;c[f+(e<<3)+4>>2]=i+-9;c[d>>2]=(c[d>>2]|0)+1;e=f;h=f}}g=MP(g,269735)|0}while((g|0)!=0);return e|0}function dm(a){a=a|0;var b=0,d=0,e=0,f=0.0,g=0,i=0.0,j=0,k=0.0,l=0,m=0,n=0.0,o=0,p=0,q=0;Pv(a);Ru(a,-1,90165)|0;p=_u(a,-1)|0;uq(a);q=a+68|0;d=c[q>>2]|0;m=a+64|0;b=c[m>>2]|0;o=(d|0)!=(b|0)?b:0;if((c[((o|0)==0?936:o)>>2]&-2|0)==2)o=335059;else{o=Eo(a,0)|0;b=c[m>>2]|0;d=c[q>>2]|0}l=d-b>>4>>>0>1?b+16|0:0;if((c[((l|0)==0?936:l)>>2]&-2|0)!=2){Wq(a,1);d=c[q>>2]|0;b=c[m>>2]|0;e=d-b>>4>>>0>1?b+16|0:0;e=(e|0)==0?936:e;if((c[e>>2]|0)==0?(f=+h[e+8>>3],(iP(f)|0)!=0):0)if(!(f<-2147483648.0))if(f>2147483647.0)l=2147483647;else l=~~f;else l=-2147483648;else l=0}else l=0;j=d-b>>4>>>0>2?b+32|0:0;if((c[((j|0)==0?936:j)>>2]&-2|0)!=2){Wq(a,2);d=c[q>>2]|0;b=c[m>>2]|0;e=d-b>>4>>>0>2?b+32|0:0;e=(e|0)==0?936:e;if((c[e>>2]|0)==0?(i=+h[e+8>>3],(iP(i)|0)!=0):0)if(!(i<-2147483648.0))if(i>2147483647.0)j=2147483647;else j=~~i;else j=-2147483648;else j=0}else j=0;g=d-b>>4>>>0>3?b+48|0:0;if((c[((g|0)==0?936:g)>>2]&-2|0)!=2){Wq(a,3);d=c[q>>2]|0;b=c[m>>2]|0;e=d-b>>4>>>0>3?b+48|0:0;e=(e|0)==0?936:e;if((c[e>>2]|0)==0?(k=+h[e+8>>3],!((iP(k)|0)==0|k<-2147483648.0)):0)if(k>2147483647.0)g=-1;else g=~~k&255;else g=0}else g=15;e=d-b>>4>>>0>4?b+64|0:0;if((c[((e|0)==0?936:e)>>2]&-2|0)==2)e=0;else{e=(Ro(a,4)|0)!=0;d=c[q>>2]|0;b=c[m>>2]|0}d=d-b>>4>>>0>5?b+80|0:0;if((c[((d|0)==0?936:d)>>2]&-2|0)!=2){Wq(a,5);b=c[m>>2]|0;b=(c[q>>2]|0)-b>>4>>>0>5?b+80|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(n=+h[b+8>>3],(iP(n)|0)!=0):0)if(!(n<-2147483648.0))if(n>2147483647.0)b=2147483647;else b=~~n;else b=-2147483648;else b=0}else b=1;b=mg[c[p+2439668>>2]&7](p,o|0?o:287343,l,j,g,e,b)|0;d=c[q>>2]|0;if(d>>>0<(c[a+56>>2]|0)>>>0){c[q>>2]=d+16;c[d>>2]=0;h[d+8>>3]=+(b>>>0);return 1}else Un(a,4274);return 0}function em(a){a=a|0;var b=0,d=0.0,e=0,f=0,g=0,i=0,j=0;Pv(a);Ru(a,-1,90165)|0;g=_u(a,-1)|0;uq(a);i=c[g+2439672>>2]|0;e=a+68|0;f=a+64|0;j=c[f>>2]|0;j=(c[e>>2]|0)!=(j|0)?j:0;if(((c[((j|0)==0?936:j)>>2]&-2|0)!=2?(Wq(a,0),b=c[f>>2]|0,b=(c[e>>2]|0)!=(b|0)?b:0,b=(b|0)==0?936:b,(c[b>>2]|0)==0):0)?(d=+h[b+8>>3],!((iP(d)|0)==0|d<-2147483648.0)):0)if(d>2147483647.0)b=-1;else b=~~d&255;else b=0;Bg[i&255](g,b);return 0}function fm(a){a=a|0;var b=0,d=0,e=0.0,f=0.0,g=0,i=0,j=0,k=0.0,l=0;Wq(a,0);l=a+68|0;j=a+64|0;b=c[j>>2]|0;b=(c[l>>2]|0)!=(b|0)?b:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(e=+h[b+8>>3],(iP(e)|0)!=0):0)if(!(e<-2147483648.0))if(e>2147483647.0)i=2147483647;else i=~~e;else i=-2147483648;else i=0;Wq(a,1);b=c[j>>2]|0;b=(c[l>>2]|0)-b>>4>>>0>1?b+16|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(f=+h[b+8>>3],(iP(f)|0)!=0):0)if(!(f<-2147483648.0))if(f>2147483647.0)d=2147483647;else d=~~f;else d=-2147483648;else d=0;Pv(a);Ru(a,-1,90165)|0;g=_u(a,-1)|0;uq(a);b=c[j>>2]|0;b=(c[l>>2]|0)-b>>4>>>0>2?b+32|0:0;if((c[((b|0)==0?936:b)>>2]&-2|0)==2){b=ig[c[g+2439680>>2]&63](g,i,d)|0;d=c[l>>2]|0;if(d>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4274);c[l>>2]=d+16;c[d>>2]=0;h[d+8>>3]=+(b&255);l=1;return l|0}Wq(a,2);b=c[j>>2]|0;b=(c[l>>2]|0)-b>>4>>>0>2?b+32|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(k=+h[b+8>>3],!((iP(k)|0)==0|k<-2147483648.0)):0)if(k>2147483647.0)b=-1;else b=~~k&255;else b=0;Eg[c[g+2439676>>2]&63](g,i,d,b);l=0;return l|0}function gm(a){a=a|0;var b=0,d=0.0,e=0,f=0.0,g=0,i=0.0,j=0,k=0.0,l=0,m=0,n=0,o=0.0;Wq(a,0);m=a+68|0;n=a+64|0;b=c[n>>2]|0;b=(c[m>>2]|0)!=(b|0)?b:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(d=+h[b+8>>3],(iP(d)|0)!=0):0)if(!(d<-2147483648.0))if(d>2147483647.0)l=2147483647;else l=~~d;else l=-2147483648;else l=0;Wq(a,1);b=c[n>>2]|0;b=(c[m>>2]|0)-b>>4>>>0>1?b+16|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(f=+h[b+8>>3],(iP(f)|0)!=0):0)if(!(f<-2147483648.0))if(f>2147483647.0)j=2147483647;else j=~~f;else j=-2147483648;else j=0;Wq(a,2);b=c[n>>2]|0;b=(c[m>>2]|0)-b>>4>>>0>2?b+32|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(i=+h[b+8>>3],(iP(i)|0)!=0):0)if(!(i<-2147483648.0))if(i>2147483647.0)g=2147483647;else g=~~i;else g=-2147483648;else g=0;Wq(a,3);b=c[n>>2]|0;b=(c[m>>2]|0)-b>>4>>>0>3?b+48|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(k=+h[b+8>>3],(iP(k)|0)!=0):0)if(!(k<-2147483648.0))if(k>2147483647.0)e=2147483647;else e=~~k;else e=-2147483648;else e=0;Wq(a,4);b=c[n>>2]|0;b=(c[m>>2]|0)-b>>4>>>0>4?b+64|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(o=+h[b+8>>3],!((iP(o)|0)==0|o<-2147483648.0)):0)if(o>2147483647.0)b=-1;else b=~~o&255;else b=0;Pv(a);Ru(a,-1,90165)|0;n=_u(a,-1)|0;uq(a);Gg[c[n+2439684>>2]&7](n,l,j,g,e,b);return 0}function hm(a){a=a|0;var b=0,d=0.0,e=0,f=0.0,g=0,i=0.0,j=0,k=0.0,l=0,m=0,n=0,o=0.0;Wq(a,0);m=a+68|0;n=a+64|0;b=c[n>>2]|0;b=(c[m>>2]|0)!=(b|0)?b:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(d=+h[b+8>>3],(iP(d)|0)!=0):0)if(!(d<-2147483648.0))if(d>2147483647.0)l=2147483647;else l=~~d;else l=-2147483648;else l=0;Wq(a,1);b=c[n>>2]|0;b=(c[m>>2]|0)-b>>4>>>0>1?b+16|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(f=+h[b+8>>3],(iP(f)|0)!=0):0)if(!(f<-2147483648.0))if(f>2147483647.0)j=2147483647;else j=~~f;else j=-2147483648;else j=0;Wq(a,2);b=c[n>>2]|0;b=(c[m>>2]|0)-b>>4>>>0>2?b+32|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(i=+h[b+8>>3],(iP(i)|0)!=0):0)if(!(i<-2147483648.0))if(i>2147483647.0)g=2147483647;else g=~~i;else g=-2147483648;else g=0;Wq(a,3);b=c[n>>2]|0;b=(c[m>>2]|0)-b>>4>>>0>3?b+48|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(k=+h[b+8>>3],(iP(k)|0)!=0):0)if(!(k<-2147483648.0))if(k>2147483647.0)e=2147483647;else e=~~k;else e=-2147483648;else e=0;Wq(a,4);b=c[n>>2]|0;b=(c[m>>2]|0)-b>>4>>>0>4?b+64|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(o=+h[b+8>>3],!((iP(o)|0)==0|o<-2147483648.0)):0)if(o>2147483647.0)b=-1;else b=~~o&255;else b=0;Pv(a);Ru(a,-1,90165)|0;n=_u(a,-1)|0;uq(a);Gg[c[n+2439688>>2]&7](n,l,j,g,e,b);return 0}function im(a){a=a|0;var b=0,d=0.0,e=0,f=0.0,g=0,i=0.0,j=0,k=0.0,l=0,m=0,n=0,o=0.0;Wq(a,0);m=a+68|0;n=a+64|0;b=c[n>>2]|0;b=(c[m>>2]|0)!=(b|0)?b:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(d=+h[b+8>>3],(iP(d)|0)!=0):0)if(!(d<-2147483648.0))if(d>2147483647.0)l=2147483647;else l=~~d;else l=-2147483648;else l=0;Wq(a,1);b=c[n>>2]|0;b=(c[m>>2]|0)-b>>4>>>0>1?b+16|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(f=+h[b+8>>3],(iP(f)|0)!=0):0)if(!(f<-2147483648.0))if(f>2147483647.0)j=2147483647;else j=~~f;else j=-2147483648;else j=0;Wq(a,2);b=c[n>>2]|0;b=(c[m>>2]|0)-b>>4>>>0>2?b+32|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(i=+h[b+8>>3],(iP(i)|0)!=0):0)if(!(i<-2147483648.0))if(i>2147483647.0)g=2147483647;else g=~~i;else g=-2147483648;else g=0;Wq(a,3);b=c[n>>2]|0;b=(c[m>>2]|0)-b>>4>>>0>3?b+48|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(k=+h[b+8>>3],(iP(k)|0)!=0):0)if(!(k<-2147483648.0))if(k>2147483647.0)e=2147483647;else e=~~k;else e=-2147483648;else e=0;Wq(a,4);b=c[n>>2]|0;b=(c[m>>2]|0)-b>>4>>>0>4?b+64|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(o=+h[b+8>>3],!((iP(o)|0)==0|o<-2147483648.0)):0)if(o>2147483647.0)b=-1;else b=~~o&255;else b=0;Pv(a);Ru(a,-1,90165)|0;n=_u(a,-1)|0;uq(a);Gg[c[n+2439692>>2]&7](n,l,j,g,e,b);return 0}function jm(b){b=b|0;var d=0,e=0.0,f=0,g=0,i=0,j=0,k=0,l=0.0,m=0.0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,s=0,t=0.0,u=0,v=0,w=0.0,x=0,y=0;x=b+68|0;f=c[x>>2]|0;y=b+64|0;d=c[y>>2]|0;v=(f|0)!=(d|0)?d:0;if((c[((v|0)==0?936:v)>>2]&-2|0)!=2){Wq(b,0);f=c[x>>2]|0;d=c[y>>2]|0;g=(f|0)!=(d|0)?d:0;g=(g|0)==0?936:g;if((c[g>>2]|0)==0?(e=+h[g+8>>3],(iP(e)|0)!=0):0)if(!(e<-2147483648.0))if(e>2147483647.0)v=2147483647;else v=~~e;else v=-2147483648;else v=0}else v=0;u=f-d>>4>>>0>1?d+16|0:0;if((c[((u|0)==0?936:u)>>2]&-2|0)!=2){Wq(b,1);f=c[x>>2]|0;d=c[y>>2]|0;g=f-d>>4>>>0>1?d+16|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)==0?(l=+h[g+8>>3],(iP(l)|0)!=0):0)if(!(l<-2147483648.0))if(l>2147483647.0)u=2147483647;else u=~~l;else u=-2147483648;else u=0}else u=0;s=f-d>>4>>>0>2?d+32|0:0;if((c[((s|0)==0?936:s)>>2]&-2|0)!=2){Wq(b,2);f=c[x>>2]|0;d=c[y>>2]|0;g=f-d>>4>>>0>2?d+32|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)==0?(m=+h[g+8>>3],(iP(m)|0)!=0):0)if(!(m<-2147483648.0))if(m>2147483647.0)s=2147483647;else s=~~m;else s=-2147483648;else s=0}else s=0;d=f-d>>4>>>0>3?d+48|0:0;d=(d|0)==0?936:d;f=c[d>>2]|0;a:do if((f&-2|0)==2)j=0;else{if(((f|0)==9?(i=c[d+8>>2]|0,i|0):0)?(c[i>>2]&-134217728|0)==268435456:0){k=b+44|0;j=0;while(1){Np(b,3,j)|0;i=c[x>>2]|0;g=c[y>>2]|0;f=i-g>>4;f=f|0?g+(f+-1<<4)|0:0;if((c[((f|0)==0?936:f)>>2]&-2|0)==2)break;Wq(b,-1);f=c[y>>2]|0;d=(c[x>>2]|0)-f>>4;d=d|0?f+(d+-1<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==0?(p=+h[d+8>>3],(iP(p)|0)!=0):0)if(!(p<-2147483648.0))if(p>2147483647.0)d=2147483647;else d=~~p;else d=-2147483648;else d=0;a[332921+j>>0]=d;f=j+1|0;d=c[x>>2]|0;if((d|0)==(c[y>>2]|0)){n=36;break}i=d+-16|0;c[x>>2]=i;j=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[i>>2]=2;if(j&8|0?(i=d+4|0,j=(c[i>>2]|0)+-1|0,c[i>>2]=j,(j|0)==0):0)Yn(c[k>>2]|0,d);if((f|0)<16)j=f;else{j=f;break a}}if((n|0)==36)Jn(b,268620,50337407,268636);if((i|0)==(g|0))Jn(b,268620,50337407,268636);g=i+-16|0;c[x>>2]=g;n=c[i+-16>>2]|0;d=c[i+-8>>2]|0;c[g>>2]=2;if(!(n&8))break;i=d+4|0;n=(c[i>>2]|0)+-1|0;c[i>>2]=n;if(n|0)break;Yn(c[k>>2]|0,d);break}Wq(b,3);d=c[y>>2]|0;d=(c[x>>2]|0)-d>>4>>>0>3?d+48|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==0?(o=+h[d+8>>3],(iP(o)|0)!=0):0)if(!(o<-2147483648.0))if(o>2147483647.0)d=2147483647;else d=~~o;else d=-2147483648;else d=0;a[332921]=d;j=1}while(0);f=c[x>>2]|0;d=c[y>>2]|0;n=f-d>>4>>>0>4?d+64|0:0;if((c[((n|0)==0?936:n)>>2]&-2|0)!=2){Wq(b,4);g=c[x>>2]|0;d=c[y>>2]|0;f=g-d>>4>>>0>4?d+64|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)==0?(q=+h[f+8>>3],(iP(q)|0)!=0):0)if(!(q<-2147483648.0))if(q>2147483647.0){f=g;n=2147483647}else{f=g;n=~~q}else{f=g;n=-2147483648}else{f=g;n=0}}else n=1;k=f-d>>4>>>0>5?d+80|0:0;if((c[((k|0)==0?936:k)>>2]&-2|0)!=2){Wq(b,5);g=c[x>>2]|0;d=c[y>>2]|0;f=g-d>>4>>>0>5?d+80|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)==0?(r=+h[f+8>>3],(iP(r)|0)!=0):0)if(!(r<-2147483648.0))if(r>2147483647.0){f=g;k=2147483647}else{f=g;k=~~r}else{f=g;k=-2147483648}else{f=g;k=0}}else k=0;i=f-d>>4>>>0>6?d+96|0:0;if((c[((i|0)==0?936:i)>>2]&-2|0)!=2){Wq(b,6);g=c[x>>2]|0;d=c[y>>2]|0;f=g-d>>4>>>0>6?d+96|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)==0?(t=+h[f+8>>3],(iP(t)|0)!=0):0)if(!(t<-2147483648.0))if(t>2147483647.0){f=g;i=2147483647}else{f=g;i=~~t}else{f=g;i=-2147483648}else{f=g;i=0}}else i=0;g=f-d>>4>>>0>7?d+112|0:0;if((c[((g|0)==0?936:g)>>2]&-2|0)!=2){Wq(b,7);g=c[x>>2]|0;d=c[y>>2]|0;f=g-d>>4>>>0>7?d+112|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)==0?(w=+h[f+8>>3],(iP(w)|0)!=0):0)if(!(w<-2147483648.0))if(w>2147483647.0){f=g;g=2147483647}else{f=g;g=~~w}else{f=g;g=-2147483648}else{f=g;g=0}}else g=1;f=f-d>>4>>>0>8?d+128|0:0;if((c[((f|0)==0?936:f)>>2]&-2|0)==2){y=1;Pv(b);Ru(b,-1,90165)|0;x=_u(b,-1)|0;uq(b);f=x+2439700|0;f=c[f>>2]|0;b=x+16384|0;Lg[f&1](x,b,v,u,s,g,y,332921,j,n,k,i);return 0}Wq(b,8);d=c[y>>2]|0;d=(c[x>>2]|0)-d>>4>>>0>8?d+128|0:0;d=(d|0)==0?936:d;if(c[d>>2]|0){y=0;Pv(b);Ru(b,-1,90165)|0;x=_u(b,-1)|0;uq(b);f=x+2439700|0;f=c[f>>2]|0;b=x+16384|0;Lg[f&1](x,b,v,u,s,g,y,332921,j,n,k,i);return 0}e=+h[d+8>>3];if(!(iP(e)|0)){y=0;Pv(b);Ru(b,-1,90165)|0;x=_u(b,-1)|0;uq(b);f=x+2439700|0;f=c[f>>2]|0;b=x+16384|0;Lg[f&1](x,b,v,u,s,g,y,332921,j,n,k,i);return 0}if(e<-2147483648.0){y=-2147483648;Pv(b);Ru(b,-1,90165)|0;x=_u(b,-1)|0;uq(b);f=x+2439700|0;f=c[f>>2]|0;b=x+16384|0;Lg[f&1](x,b,v,u,s,g,y,332921,j,n,k,i);return 0}if(e>2147483647.0){y=2147483647;Pv(b);Ru(b,-1,90165)|0;x=_u(b,-1)|0;uq(b);f=x+2439700|0;f=c[f>>2]|0;b=x+16384|0;Lg[f&1](x,b,v,u,s,g,y,332921,j,n,k,i);return 0}y=~~e;Pv(b);Ru(b,-1,90165)|0;x=_u(b,-1)|0;uq(b);f=x+2439700|0;f=c[f>>2]|0;b=x+16384|0;Lg[f&1](x,b,v,u,s,g,y,332921,j,n,k,i);return 0}function km(a){a=a|0;var b=0,d=0,e=0.0,f=0,g=0,i=0;Pv(a);Ru(a,-1,90165)|0;f=_u(a,-1)|0;uq(a);g=a+68|0;b=c[g>>2]|0;d=a+64|0;i=c[d>>2]|0;i=(b|0)!=(i|0)?i:0;if((c[((i|0)==0?936:i)>>2]&-2|0)==2){if(b>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4274);e=+((c[f+65408>>2]|0)>>>0);c[g>>2]=b+16;c[b>>2]=0;h[b+8>>3]=e;return 1}Wq(a,0);i=c[g>>2]|0;b=c[d>>2]|0;b=(i|0)!=(b|0)?b:0;b=(b|0)==0?936:b;d=i;if((c[b>>2]|0)==0?(e=+h[b+8>>3],!((iP(e)|0)==0|e<-2147483648.0)):0)if(e>2147483647.0)b=31;else b=~~e&31;else b=0;if(d>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4185);i=(1<<b&c[f+65408>>2]|0)!=0&1;c[g>>2]=d+16;c[d>>2]=4;c[d+8>>2]=i;return 1}function lm(a){a=a|0;var b=0,d=0,e=0,f=0.0,g=0.0,i=0.0,j=0,k=0.0,l=0,m=0,n=0;Pv(a);Ru(a,-1,90165)|0;l=_u(a,-1)|0;uq(a);m=a+68|0;b=c[m>>2]|0;j=a+64|0;e=c[j>>2]|0;d=e;n=(b|0)!=(d|0)?e:0;if((c[((n|0)==0?936:n)>>2]&-2|0)==2){b=jg[c[l+2439796>>2]&31](l,-1,-1,-1)|0;d=c[m>>2]|0;if(d>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4274);c[m>>2]=d+16;c[d>>2]=0;h[d+8>>3]=+(b>>>0);return 1}b=b-d>>4;n=b>>>0>1?e+16|0:0;if((c[((n|0)==0?936:n)>>2]&-2|0)==2?(n=b>>>0>2?e+32|0:0,(c[((n|0)==0?936:n)>>2]&-2|0)==2):0){Wq(a,0);b=c[j>>2]|0;b=(c[m>>2]|0)!=(b|0)?b:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(f=+h[b+8>>3],!((iP(f)|0)==0|f<-2147483648.0)):0)if(f>2147483647.0)b=31;else b=~~f&31;else b=0;b=jg[c[l+2439796>>2]&31](l,b,-1,-1)|0;d=c[m>>2]|0;if(d>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4185);c[m>>2]=d+16;c[d>>2]=4;c[d+8>>2]=(b|0)!=0&1;return 1}Wq(a,0);b=c[j>>2]|0;b=(c[m>>2]|0)!=(b|0)?b:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(g=+h[b+8>>3],!((iP(g)|0)==0|g<-2147483648.0)):0)if(g>2147483647.0)e=31;else e=~~g&31;else e=0;Wq(a,1);b=c[j>>2]|0;b=(c[m>>2]|0)-b>>4>>>0>1?b+16|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(i=+h[b+8>>3],(iP(i)|0)!=0):0)if(!(i<-2147483648.0))if(i>2147483647.0)d=2147483647;else d=~~i;else d=-2147483648;else d=0;Wq(a,2);b=c[j>>2]|0;b=(c[m>>2]|0)-b>>4>>>0>2?b+32|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(k=+h[b+8>>3],(iP(k)|0)!=0):0)if(!(k<-2147483648.0))if(k>2147483647.0)b=2147483647;else b=~~k;else b=-2147483648;else b=0;b=jg[c[l+2439796>>2]&31](l,e,d,b)|0;d=c[m>>2]|0;if(d>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4185);c[m>>2]=d+16;c[d>>2]=4;c[d+8>>2]=(b|0)!=0&1;return 1}function mm(a){a=a|0;var b=0,e=0,f=0,g=0,i=0.0,j=0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0,r=0,s=0,t=0.0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;x=y+16|0;g=y+8|0;j=y;u=y+24|0;v=y+20|0;Pv(a);Ru(a,-1,90165)|0;w=_u(a,-1)|0;uq(a);r=a+68|0;e=c[r>>2]|0;s=a+64|0;f=c[s>>2]|0;q=(e|0)!=(f|0)?f:0;if((c[((q|0)==0?936:q)>>2]&-2|0)!=2){Wq(a,0);e=c[r>>2]|0;f=c[s>>2]|0;b=(e|0)!=(f|0)?f:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(i=+h[b+8>>3],(iP(i)|0)!=0):0)if(!(i<-2147483648.0))if(i>2147483647.0)q=2147483647;else q=~~i;else q=-2147483648;else q=0}else q=-1;c[u>>2]=-1;c[v>>2]=-1;if((q|0)>=64)gq(a,1,90172,343,263918,g);do if((q|0)>-1){b=w+65764+(q*66|0)+60|0;b=d[b>>0]|d[b+1>>0]<<8;c[u>>2]=(b&65535)>>>8&15;c[v>>2]=b&7;b=((b<<9&65535)<<16>>16>>13&65535)<<24>>24;g=e-f>>4>>>0>1?f+16|0:0;g=c[((g|0)==0?936:g)>>2]|0;if((g&-2|0)!=2){if((g|0)==8)if(Ii(Eo(a,1)|0,u,v)|0){f=c[s>>2]|0;e=c[r>>2]|0;break}else gq(a,1,90172,328,263867,j);Wq(a,1);e=c[r>>2]|0;f=c[s>>2]|0;g=e-f>>4>>>0>1?f+16|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)==0?(k=+h[g+8>>3],(iP(k)|0)!=0):0)if(!(k<-2147483648.0))if(k>2147483647.0)g=2147483647;else g=~~k;else g=-2147483648;else g=0;c[u>>2]=(g|0)%12|0;c[v>>2]=(g|0)/12|0}}else b=8;while(0);m=e-f>>4>>>0>2?f+32|0:0;if((c[((m|0)==0?936:m)>>2]&-2|0)!=2){Wq(a,2);e=c[r>>2]|0;f=c[s>>2]|0;g=e-f>>4>>>0>2?f+32|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)==0?(n=+h[g+8>>3],(iP(n)|0)!=0):0)if(!(n<-2147483648.0))if(n>2147483647.0)m=2147483647;else m=~~n;else m=-2147483648;else m=0}else m=-1;j=e-f>>4>>>0>3?f+48|0:0;if((c[((j|0)==0?936:j)>>2]&-2|0)!=2){Wq(a,3);e=c[r>>2]|0;f=c[s>>2]|0;g=e-f>>4>>>0>3?f+48|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)==0?(o=+h[g+8>>3],(iP(o)|0)!=0):0)if(!(o<-2147483648.0))if(o>2147483647.0)j=2147483647;else j=~~o;else j=-2147483648;else j=0}else j=0;g=e-f>>4>>>0>4?f+64|0:0;if((c[((g|0)==0?936:g)>>2]&-2|0)!=2){Wq(a,4);e=c[r>>2]|0;f=c[s>>2]|0;g=e-f>>4>>>0>4?f+64|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)==0?(p=+h[g+8>>3],!((iP(p)|0)==0|p<-2147483648.0)):0)if(p>2147483647.0)g=15;else g=~~p&15;else g=0}else g=15;f=e-f>>4>>>0>5?f+80|0:0;if((c[((f|0)==0?936:f)>>2]&-2|0)!=2){Wq(a,5);b=c[s>>2]|0;b=(c[r>>2]|0)-b>>4>>>0>5?b+80|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(t=+h[b+8>>3],(iP(t)|0)!=0):0)if(!(t<-2147483648.0))if(t>2147483647.0)b=2147483647;else b=~~t;else b=-2147483648;else b=0}if(j>>>0<4){Bg[c[w+2439744>>2]&255](w,j);Ig[c[w+2439748>>2]&7](w,q,c[u>>2]|0,c[v>>2]|0,m,j,g,b);l=y;return 0}else gq(a,1,90172,359,263901,x);return 0}function nm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0.0,i=0,j=0.0,k=0,m=0.0,n=0,o=0.0,p=0,q=0.0,r=0,s=0.0,t=0,u=0.0,v=0.0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+16|0;z=A;w=a+68|0;b=c[w>>2]|0;x=a+64|0;d=c[x>>2]|0;y=(b|0)!=(d|0)?d:0;if((c[((y|0)==0?936:y)>>2]&-2|0)!=2){Wq(a,0);e=c[w>>2]|0;d=c[x>>2]|0;b=(e|0)!=(d|0)?d:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(g=+h[b+8>>3],(iP(g)|0)!=0):0)if(!(g<-2147483648.0))if(g>2147483647.0){y=2147483647;b=e}else{y=~~g;b=e}else{y=-2147483648;b=e}else{y=0;b=e}}else y=0;t=b-d>>4>>>0>1?d+16|0:0;if((c[((t|0)==0?936:t)>>2]&-2|0)!=2){Wq(a,1);e=c[w>>2]|0;d=c[x>>2]|0;b=e-d>>4>>>0>1?d+16|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(j=+h[b+8>>3],(iP(j)|0)!=0):0)if(!(j<-2147483648.0))if(j>2147483647.0){t=2147483647;b=e}else{t=~~j;b=e}else{t=-2147483648;b=e}else{t=0;b=e}}else t=0;r=b-d>>4>>>0>2?d+32|0:0;if((c[((r|0)==0?936:r)>>2]&-2|0)!=2){Wq(a,2);e=c[w>>2]|0;d=c[x>>2]|0;b=e-d>>4>>>0>2?d+32|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(m=+h[b+8>>3],(iP(m)|0)!=0):0)if(!(m<-2147483648.0))if(m>2147483647.0){r=2147483647;b=e}else{r=~~m;b=e}else{r=-2147483648;b=e}else{r=0;b=e}}else r=30;p=b-d>>4>>>0>3?d+48|0:0;if((c[((p|0)==0?936:p)>>2]&-2|0)!=2){Wq(a,3);e=c[w>>2]|0;d=c[x>>2]|0;b=e-d>>4>>>0>3?d+48|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(o=+h[b+8>>3],(iP(o)|0)!=0):0)if(!(o<-2147483648.0))if(o>2147483647.0){b=e;p=2147483647}else{b=e;p=~~o}else{b=e;p=-2147483648}else{b=e;p=0}}else p=17;n=b-d>>4>>>0>4?d+64|0:0;if((c[((n|0)==0?936:n)>>2]&-2|0)!=2){Wq(a,4);e=c[w>>2]|0;d=c[x>>2]|0;b=e-d>>4>>>0>4?d+64|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(q=+h[b+8>>3],(iP(q)|0)!=0):0)if(!(q<-2147483648.0))if(q>2147483647.0){b=e;n=2147483647}else{b=e;n=~~q}else{b=e;n=-2147483648}else{b=e;n=0}}else n=0;k=b-d>>4>>>0>5?d+80|0:0;if((c[((k|0)==0?936:k)>>2]&-2|0)!=2){Wq(a,5);e=c[w>>2]|0;d=c[x>>2]|0;b=e-d>>4>>>0>5?d+80|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(s=+h[b+8>>3],(iP(s)|0)!=0):0)if(!(s<-2147483648.0))if(s>2147483647.0){b=e;k=2147483647}else{b=e;k=~~s}else{b=e;k=-2147483648}else{b=e;k=0}}else k=0;i=b-d>>4>>>0>6?d+96|0:0;if((c[((i|0)==0?936:i)>>2]&-2|0)!=2){Wq(a,6);e=c[w>>2]|0;d=c[x>>2]|0;b=e-d>>4>>>0>6?d+96|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(u=+h[b+8>>3],!((iP(u)|0)==0|u<-2147483648.0)):0)if(u>2147483647.0){b=e;i=-1}else{b=e;i=~~u&255}else{b=e;i=0}}else i=-1;f=b-d>>4>>>0>7?d+112|0:0;if((c[((f|0)==0?936:f)>>2]&-2|0)!=2){Wq(a,7);b=c[x>>2]|0;b=(c[w>>2]|0)-b>>4>>>0>7?b+112|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(v=+h[b+8>>3],(iP(v)|0)!=0):0)if(!(v<-2147483648.0))if(v>2147483647.0)f=2147483647;else f=~~v;else f=-2147483648;else f=0}else f=1;Pv(a);Ru(a,-1,90165)|0;e=_u(a,-1)|0;uq(a);b=c[x>>2]|0;b=(c[w>>2]|0)-b>>4>>>0>8?b+128|0:0;b=(b|0)==0?936:b;d=c[b>>2]|0;if((d&-2|0)==2){Kg[c[e+2439704>>2]&15](e,e+32768|0,e+16384|0,y,t,r,p,n,k,i,f);l=A;return 0}if(!(d&8))b=0;else b=c[b+8>>2]|0;c[z>>2]=a;c[z+4>>2]=b;w=c[e+2439708>>2]|0;Pv(a);Ru(a,-1,90165)|0;x=_u(a,-1)|0;uq(a);Mg[w&1](x,e+32768|0,e+16384|0,y,t,r,p,n,k,i,f,13,z);l=A;return 0}function om(a){a=a|0;var b=0,d=0,e=0,f=0.0,g=0,i=0,j=0.0,k=0;k=a+68|0;d=c[k>>2]|0;i=a+64|0;b=c[i>>2]|0;e=(d|0)!=(b|0)?b:0;if((c[((e|0)==0?936:e)>>2]&-2|0)!=2){Wq(a,0);e=c[k>>2]|0;b=c[i>>2]|0;d=(e|0)!=(b|0)?b:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==0?(f=+h[d+8>>3],(iP(f)|0)!=0):0)if(!(f<-2147483648.0))if(f>2147483647.0){d=e;e=2147483647}else{d=e;e=~~f}else{d=e;e=-2147483648}else{d=e;e=0}}else e=0;d=d-b>>4>>>0>1?b+16|0:0;if(((c[((d|0)==0?936:d)>>2]&-2|0)!=2?(Wq(a,1),g=c[i>>2]|0,g=(c[k>>2]|0)-g>>4>>>0>1?g+16|0:0,g=(g|0)==0?936:g,(c[g>>2]|0)==0):0)?(j=+h[g+8>>3],(iP(j)|0)!=0):0)if(!(j<-2147483648.0))if(j>2147483647.0)b=2147483647;else b=~~j;else b=-2147483648;else b=0;Pv(a);Ru(a,-1,90165)|0;d=_u(a,-1)|0;uq(a);b=jg[c[d+2439716>>2]&31](d,d+32768|0,e,b)|0;d=c[k>>2]|0;if(d>>>0<(c[a+56>>2]|0)>>>0){c[k>>2]=d+16;c[d>>2]=0;h[d+8>>3]=+(b&255);return 1}else Un(a,4274);return 0}function pm(a){a=a|0;var b=0,d=0,e=0,f=0.0,g=0,i=0.0,j=0,k=0,l=0,m=0.0;k=a+68|0;d=c[k>>2]|0;l=a+64|0;b=c[l>>2]|0;g=(d|0)!=(b|0)?b:0;if((c[((g|0)==0?936:g)>>2]&-2|0)!=2){Wq(a,0);e=c[k>>2]|0;b=c[l>>2]|0;d=(e|0)!=(b|0)?b:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==0?(f=+h[d+8>>3],(iP(f)|0)!=0):0)if(!(f<-2147483648.0))if(f>2147483647.0){d=e;g=2147483647}else{d=e;g=~~f}else{d=e;g=-2147483648}else{d=e;g=0}}else g=0;e=d-b>>4>>>0>1?b+16|0:0;if((c[((e|0)==0?936:e)>>2]&-2|0)!=2){Wq(a,1);e=c[k>>2]|0;b=c[l>>2]|0;d=e-b>>4>>>0>1?b+16|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==0?(i=+h[d+8>>3],(iP(i)|0)!=0):0)if(!(i<-2147483648.0))if(i>2147483647.0){d=e;e=2147483647}else{d=e;e=~~i}else{d=e;e=-2147483648}else{d=e;e=0}}else e=0;d=d-b>>4>>>0>2?b+32|0:0;if(((c[((d|0)==0?936:d)>>2]&-2|0)!=2?(Wq(a,2),j=c[l>>2]|0,j=(c[k>>2]|0)-j>>4>>>0>2?j+32|0:0,j=(j|0)==0?936:j,(c[j>>2]|0)==0):0)?(m=+h[j+8>>3],!((iP(m)|0)==0|m<-2147483648.0)):0)if(m>2147483647.0)b=-1;else b=~~m&255;else b=0;Pv(a);Ru(a,-1,90165)|0;l=_u(a,-1)|0;uq(a);Fg[c[l+2439712>>2]&15](l,l+32768|0,g,e,b);return 1}function qm(a){a=a|0;var b=0,e=0.0,f=0,g=0,i=0;Wq(a,0);i=a+68|0;b=c[a+64>>2]|0;b=(c[i>>2]|0)!=(b|0)?b:0;b=(b|0)==0?936:b;do if((c[b>>2]|0)==0?(e=+h[b+8>>3],(iP(e)|0)!=0):0)if(e<-2147483648.0|e>2147483647.0){i=0;return i|0}else{b=~~e;break}else b=0;while(0);if(!((b|0)>-1&b>>>0<81920)){i=0;return i|0}Pv(a);Ru(a,-1,90165)|0;f=_u(a,-1)|0;uq(a);g=c[i>>2]|0;if(g>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4274);e=+(d[f+b>>0]|0);c[i>>2]=g+16;c[g>>2]=0;h[g+8>>3]=e;i=1;return i|0}function rm(b){b=b|0;var d=0,e=0.0,f=0,g=0,i=0,j=0.0;Wq(b,0);g=b+68|0;i=b+64|0;d=c[i>>2]|0;d=(c[g>>2]|0)!=(d|0)?d:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==0?(e=+h[d+8>>3],(iP(e)|0)!=0):0)if(!(e<-2147483648.0))if(e>2147483647.0)f=2147483647;else f=~~e;else f=-2147483648;else f=0;Wq(b,1);d=c[i>>2]|0;d=(c[g>>2]|0)-d>>4>>>0>1?d+16|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==0?(j=+h[d+8>>3],!((iP(j)|0)==0|j<-2147483648.0)):0)if(j>2147483647.0)d=-1;else d=~~j&255;else d=0;if(!((f|0)>-1&f>>>0<81920))return 0;Pv(b);Ru(b,-1,90165)|0;i=_u(b,-1)|0;uq(b);a[i+f>>0]=d;return 0}function sm(a){a=a|0;var b=0,e=0.0,f=0,g=0,i=0;Wq(a,0);i=a+68|0;b=c[a+64>>2]|0;b=(c[i>>2]|0)!=(b|0)?b:0;b=(b|0)==0?936:b;do if((c[b>>2]|0)==0?(e=+h[b+8>>3],(iP(e)|0)!=0):0)if(e<-2147483648.0|e>2147483647.0){i=0;return i|0}else{b=~~e;break}else b=0;while(0);if(!((b|0)>-1&b>>>0<163840)){i=0;return i|0}Pv(a);Ru(a,-1,90165)|0;f=_u(a,-1)|0;uq(a);f=d[f+(b>>>1)>>0]|0;g=c[i>>2]|0;if(g>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4274);c[i>>2]=g+16;c[g>>2]=0;h[g+8>>3]=+((b&1|0?f>>>4:f&15)>>>0);i=1;return i|0}function tm(b){b=b|0;var e=0,f=0,g=0.0,i=0,j=0.0,k=0;Wq(b,0);f=b+68|0;i=b+64|0;e=c[i>>2]|0;e=(c[f>>2]|0)!=(e|0)?e:0;e=(e|0)==0?936:e;if((c[e>>2]|0)==0?(g=+h[e+8>>3],(iP(g)|0)!=0):0)if(!(g<-2147483648.0))if(g>2147483647.0)k=2147483647;else k=~~g;else k=-2147483648;else k=0;Wq(b,1);e=c[i>>2]|0;e=(c[f>>2]|0)-e>>4>>>0>1?e+16|0:0;e=(e|0)==0?936:e;if((c[e>>2]|0)==0?(j=+h[e+8>>3],(iP(j)|0)!=0):0)if(!(j<-2147483648.0))if(j>2147483647.0)f=2147483647;else f=~~j;else f=-2147483648;else f=0;if(!((k|0)>-1&k>>>0<163840))return 0;Pv(b);Ru(b,-1,90165)|0;i=_u(b,-1)|0;uq(b);i=i+(k>>>1)|0;e=d[i>>0]|0;if(!(k&1)){b=e&240;a[i>>0]=b;e=f&15;f=b}else{b=e&15;a[i>>0]=b;e=f<<4&4080;f=b}a[i>>0]=e|f;return 0}function um(a){a=a|0;var b=0,d=0.0,e=0,f=0.0,g=0,i=0,j=0,k=0.0;Wq(a,0);i=a+68|0;j=a+64|0;b=c[j>>2]|0;b=(c[i>>2]|0)!=(b|0)?b:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(d=+h[b+8>>3],(iP(d)|0)!=0):0)if(!(d<-2147483648.0))if(d>2147483647.0)g=2147483647;else g=~~d;else g=-2147483648;else g=0;Wq(a,1);b=c[j>>2]|0;b=(c[i>>2]|0)-b>>4>>>0>1?b+16|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(f=+h[b+8>>3],(iP(f)|0)!=0):0)if(!(f<-2147483648.0))if(f>2147483647.0)e=2147483647;else e=~~f;else e=-2147483648;else e=0;Wq(a,2);b=c[j>>2]|0;b=(c[i>>2]|0)-b>>4>>>0>2?b+32|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(k=+h[b+8>>3],(iP(k)|0)!=0):0)if(!(k<-2147483648.0))if(k>2147483647.0)b=2147483647;else b=~~k;else b=-2147483648;else b=0;j=81920-b|0;if((e|0)>(j|0)|((g|0)>(j|0)|(b>>>0>81920|(e|g|b|0)<0)))return 0;Pv(a);Ru(a,-1,90165)|0;j=_u(a,-1)|0;uq(a);PQ(j+g|0,j+e|0,b|0)|0;return 0}function vm(a){a=a|0;var b=0,d=0.0,e=0,f=0.0,g=0,i=0,j=0,k=0.0;Wq(a,0);i=a+68|0;j=a+64|0;b=c[j>>2]|0;b=(c[i>>2]|0)!=(b|0)?b:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(d=+h[b+8>>3],(iP(d)|0)!=0):0)if(!(d<-2147483648.0))if(d>2147483647.0)g=2147483647;else g=~~d;else g=-2147483648;else g=0;Wq(a,1);b=c[j>>2]|0;b=(c[i>>2]|0)-b>>4>>>0>1?b+16|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(f=+h[b+8>>3],!((iP(f)|0)==0|f<-2147483648.0)):0)if(f>2147483647.0)e=-1;else e=~~f&255;else e=0;Wq(a,2);b=c[j>>2]|0;b=(c[i>>2]|0)-b>>4>>>0>2?b+32|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(k=+h[b+8>>3],(iP(k)|0)!=0):0)if(!(k<-2147483648.0))if(k>2147483647.0)b=2147483647;else b=~~k;else b=-2147483648;else b=0;if((g|0)>(81920-b|0)|(b>>>0>81920|(b|g|0)<0))return 0;Pv(a);Ru(a,-1,90165)|0;j=_u(a,-1)|0;uq(a);RQ(j+g|0,e|0,b|0)|0;return 0}function wm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0.0,j=0;Pv(a);Ru(a,-1,90165)|0;j=_u(a,-1)|0;uq(a);e=a+68|0;d=c[e>>2]|0;f=a+64|0;b=c[f>>2]|0;g=(d|0)!=(b|0)?b:0;if((c[((g|0)==0?936:g)>>2]&-2|0)==2)g=335059;else{g=Eo(a,0)|0;b=c[f>>2]|0;d=c[e>>2]|0}d=d-b>>4>>>0>1?b+16|0:0;if((c[((d|0)==0?936:d)>>2]&-2|0)!=2){Wq(a,1);b=c[f>>2]|0;b=(c[e>>2]|0)-b>>4>>>0>1?b+16|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(i=+h[b+8>>3],!((iP(i)|0)==0|i<-2147483648.0)):0)if(i>2147483647.0)b=-1;else b=~~i&255;else b=0}else b=15;j=c[j+2588588>>2]|0;Dg[c[j>>2]&63](c[j+36>>2]|0,g|0?g:287343,b);return 0}function xm(a){a=a|0;var b=0,d=0,e=0.0,f=0,g=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0;p=l;l=l+16|0;i=p;Pv(a);Ru(a,-1,90165)|0;g=_u(a,-1)|0;uq(a);Wq(a,0);o=a+68|0;b=c[o>>2]|0;m=a+64|0;j=c[m>>2]|0;k=j;d=(b|0)!=(k|0)?j:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==0?(e=+h[d+8>>3],(iP(e)|0)!=0):0){if(e<-2147483648.0|e>2147483647.0)gq(a,1,90172,580,263615,i);d=~~e;if(d>>>0<256)f=d;else gq(a,1,90172,580,263615,i)}else f=0;f=g+2439832+(f<<2)|0;g=c[f>>2]|0;k=b-k>>4>>>0>1?j+16|0:0;if((c[((k|0)==0?936:k)>>2]&-2|0)!=2){Wq(a,1);b=c[o>>2]|0;d=c[m>>2]|0;d=b-d>>4>>>0>1?d+16|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==0?(n=+h[d+8>>3],(iP(n)|0)!=0):0)if(!(n<-2147483648.0))if(n>2147483647.0)d=2147483647;else d=~~n;else d=-2147483648;else d=0;c[f>>2]=d}if(b>>>0<(c[a+56>>2]|0)>>>0){c[o>>2]=b+16;c[b>>2]=0;h[b+8>>3]=+(g|0);l=p;return 1}else Un(a,4244);return 0}function ym(a){a=a|0;var b=0.0,d=0,e=0;Pv(a);Ru(a,-1,90165)|0;d=_u(a,-1)|0;uq(a);b=+eg[c[d+2439764>>2]&1](d);d=a+68|0;e=c[d>>2]|0;if(e>>>0<(c[a+56>>2]|0)>>>0){c[d>>2]=e+16;c[e>>2]=0;h[e+8>>3]=b;return 1}else Un(a,4215);return 0}function zm(a){a=a|0;var b=0;Pv(a);Ru(a,-1,90165)|0;b=_u(a,-1)|0;uq(a);a=c[b+2588588>>2]|0;vg[c[a+8>>2]&511](c[a+36>>2]|0);return 0}function Am(b){b=b|0;var d=0,e=0.0,f=0,g=0.0,i=0,j=0,k=0,l=0,m=0.0,n=0.0,o=0,p=0,q=0.0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;Pv(b);Ru(b,-1,90165)|0;x=_u(b,-1)|0;uq(b);v=Eo(b,0)|0;Wq(b,1);z=b+68|0;k=b+64|0;d=c[k>>2]|0;d=(c[z>>2]|0)-d>>4>>>0>1?d+16|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==0?(e=+h[d+8>>3],(iP(e)|0)!=0):0)if(!(e<-2147483648.0))if(e>2147483647.0)w=2147483647;else w=~~e;else w=-2147483648;else w=0;Wq(b,2);d=c[k>>2]|0;d=(c[z>>2]|0)-d>>4>>>0>2?d+32|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==0?(g=+h[d+8>>3],(iP(g)|0)!=0):0)if(!(g<-2147483648.0))if(g>2147483647.0)r=2147483647;else r=~~g;else r=-2147483648;else r=0;Wq(b,3);d=c[z>>2]|0;f=c[k>>2]|0;j=d-f>>4;i=j>>>0>3?f+48|0:0;i=(i|0)==0?936:i;if((c[i>>2]|0)==0?(m=+h[i+8>>3],!((iP(m)|0)==0|m<-2147483648.0)):0)if(m>2147483647.0)u=-1;else u=~~m&255;else u=0;t=j>>>0>4?f+64|0:0;if((c[((t|0)==0?936:t)>>2]&-2|0)!=2){Wq(b,4);i=c[z>>2]|0;f=c[k>>2]|0;d=i-f>>4>>>0>4?f+64|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==0?(n=+h[d+8>>3],(iP(n)|0)!=0):0)if(!(n<-2147483648.0))if(n>2147483647.0){t=2147483647;d=i}else{t=~~n;d=i}else{t=-2147483648;d=i}else{t=0;d=i}}else t=8;p=d-f>>4>>>0>5?f+80|0:0;if((c[((p|0)==0?936:p)>>2]&-2|0)!=2){Wq(b,5);i=c[z>>2]|0;f=c[k>>2]|0;d=i-f>>4>>>0>5?f+80|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==0?(q=+h[d+8>>3],(iP(q)|0)!=0):0)if(!(q<-2147483648.0))if(q>2147483647.0){d=i;p=2147483647}else{d=i;p=~~q}else{d=i;p=-2147483648}else{d=i;p=0}}else p=8;o=d-f>>4>>>0>6?f+96|0:0;if((c[((o|0)==0?936:o)>>2]&-2|0)==2)o=3;else{o=(Ro(b,6)|0)!=0;f=c[k>>2]|0;d=c[z>>2]|0;o=o?4:3}l=d-f>>4>>>0>7?f+112|0:0;do if((c[((l|0)==0?936:l)>>2]&-2|0)!=2){Wq(b,7);f=c[z>>2]|0;d=c[k>>2]|0;d=f-d>>4>>>0>7?d+112|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==0?(s=+h[d+8>>3],iP(s)|0):0){if(s<-2147483648.0){y=-2147483648;break}if(s>2147483647.0){y=2147483647;break}d=~~s;if(d|0){y=d;break}}if(f>>>0<(c[b+56>>2]|0)>>>0){s=0.0;b=f;y=b+16|0;c[z>>2]=y;c[b>>2]=0;z=b+8|0;h[z>>3]=s;return 1}else Un(b,4244)}else y=1;while(0);k=O(y,p)|0;l=w;d=v;i=r;a:while(1){j=w;b:while(1){f=d+1|0;d=a[d>>0]|0;switch(d<<24>>24){case 0:break a;case 10:break b;default:{}}j=(ng[o&15](x,d,j,i,t,p,u,y)|0)+j|0;d=f}l=(j|0)>(l|0)?j:l;d=f;i=i+k|0}d=c[z>>2]|0;if(d>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4244);s=+(((j|0)>(l|0)?j:l)-w|0);b=d;y=b+16|0;c[z>>2]=y;c[b>>2]=0;z=b+8|0;h[z>>3]=s;return 1}function Bm(a){a=a|0;var f=0,g=0,i=0,j=0,k=0,l=0,m=0.0;Pv(a);Ru(a,-1,90165)|0;j=_u(a,-1)|0;uq(a);i=vo(a,48)|0;f=c[a+44>>2]|0;c[i>>2]=272679041;f=f+24|0;g=c[f>>2]|0;if(g|0)c[g+12>>2]=i;c[i+12>>2]=0;c[i+8>>2]=g;c[f>>2]=i;f=c[a+132>>2]|0;c[i+20>>2]=f;if(f|0){l=f+4|0;c[l>>2]=(c[l>>2]|0)+1}l=a+68|0;f=c[l>>2]|0;c[f>>2]=9;c[f+8>>2]=i;f=i+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[l>>2]|0;i=f-(c[a+64>>2]|0)>>4;g=f+16|0;c[l>>2]=g;k=a+56|0;if(g>>>0>=(c[k>>2]|0)>>>0)Un(a,4244);m=+(d[j+65412>>0]|0);c[l>>2]=f+32;c[g>>2]=0;h[f+24>>3]=m;mq(a,i,0);f=c[l>>2]|0;if(f>>>0>=(c[k>>2]|0)>>>0)Un(a,4244);m=+(d[j+65413>>0]|0);c[l>>2]=f+16;c[f>>2]=0;h[f+8>>3]=m;mq(a,i,1);g=j+65414|0;f=c[l>>2]|0;if(f>>>0>=(c[k>>2]|0)>>>0)Un(a,4185);j=b[g>>1]&1;c[l>>2]=f+16;c[f>>2]=4;c[f+8>>2]=j;mq(a,i,2);f=c[l>>2]|0;if(f>>>0>=(c[k>>2]|0)>>>0)Un(a,4185);j=(e[g>>1]|0)>>>1&1;c[l>>2]=f+16;c[f>>2]=4;c[f+8>>2]=j;mq(a,i,3);f=c[l>>2]|0;if(f>>>0<(c[k>>2]|0)>>>0){k=(e[g>>1]|0)>>>2&1;c[l>>2]=f+16;c[f>>2]=4;c[f+8>>2]=k;mq(a,i,4);return 1}else Un(a,4185);return 0}function Cm(a){a=a|0;var b=0,d=0.0,e=0,f=0,g=0.0,i=0,j=0.0,k=0,l=0,m=0.0;Wq(a,2);k=a+68|0;l=a+64|0;b=c[l>>2]|0;b=(c[k>>2]|0)-b>>4>>>0>2?b+32|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(d=+h[b+8>>3],(iP(d)|0)!=0):0){if(d<-2147483648.0)return 0;if(!(d>2147483647.0)){b=~~d;if((b|0)<0)return 0;else i=b}else i=2147483647}else i=0;Wq(a,0);b=c[l>>2]|0;b=(c[k>>2]|0)!=(b|0)?b:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(g=+h[b+8>>3],(iP(g)|0)!=0):0)if(!(g<-2147483648.0))if(g>2147483647.0)f=2147483647;else f=~~g;else f=-2147483648;else f=0;Wq(a,1);b=c[l>>2]|0;b=(c[k>>2]|0)-b>>4>>>0>1?b+16|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(j=+h[b+8>>3],(iP(j)|0)!=0):0)if(!(j<-2147483648.0))if(j>2147483647.0)e=2147483647;else e=~~j;else e=-2147483648;else e=0;Wq(a,3);b=c[l>>2]|0;b=(c[k>>2]|0)-b>>4>>>0>3?b+48|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(m=+h[b+8>>3],!((iP(m)|0)==0|m<-2147483648.0)):0)if(m>2147483647.0)b=-1;else b=~~m&255;else b=0;Pv(a);Ru(a,-1,90165)|0;l=_u(a,-1)|0;uq(a);Fg[c[l+2439720>>2]&15](l,f,e,i,b);return 0}function Dm(a){a=a|0;var b=0,d=0.0,e=0,f=0,g=0.0,i=0,j=0.0,k=0,l=0,m=0.0;Wq(a,2);k=a+68|0;l=a+64|0;b=c[l>>2]|0;b=(c[k>>2]|0)-b>>4>>>0>2?b+32|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(d=+h[b+8>>3],(iP(d)|0)!=0):0){if(d<-2147483648.0)return 0;if(!(d>2147483647.0)){b=~~d;if((b|0)<0)return 0;else i=b}else i=2147483647}else i=0;Wq(a,0);b=c[l>>2]|0;b=(c[k>>2]|0)!=(b|0)?b:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(g=+h[b+8>>3],(iP(g)|0)!=0):0)if(!(g<-2147483648.0))if(g>2147483647.0)f=2147483647;else f=~~g;else f=-2147483648;else f=0;Wq(a,1);b=c[l>>2]|0;b=(c[k>>2]|0)-b>>4>>>0>1?b+16|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(j=+h[b+8>>3],(iP(j)|0)!=0):0)if(!(j<-2147483648.0))if(j>2147483647.0)e=2147483647;else e=~~j;else e=-2147483648;else e=0;Wq(a,3);b=c[l>>2]|0;b=(c[k>>2]|0)-b>>4>>>0>3?b+48|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(m=+h[b+8>>3],!((iP(m)|0)==0|m<-2147483648.0)):0)if(m>2147483647.0)b=-1;else b=~~m&255;else b=0;Pv(a);Ru(a,-1,90165)|0;l=_u(a,-1)|0;uq(a);Fg[c[l+2439724>>2]&15](l,f,e,i,b);return 0}function Em(a){a=a|0;var b=0,d=0.0,e=0,f=0.0,g=0,i=0.0,j=0,k=0.0,l=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0.0;Wq(a,0);q=a+68|0;r=a+64|0;b=c[r>>2]|0;b=(c[q>>2]|0)!=(b|0)?b:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(d=+h[b+8>>3],(iP(d)|0)!=0):0)if(!(d<-2147483648.0))if(d>2147483647.0)p=2147483647;else p=~~d;else p=-2147483648;else p=0;Wq(a,1);b=c[r>>2]|0;b=(c[q>>2]|0)-b>>4>>>0>1?b+16|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(f=+h[b+8>>3],(iP(f)|0)!=0):0)if(!(f<-2147483648.0))if(f>2147483647.0)n=2147483647;else n=~~f;else n=-2147483648;else n=0;Wq(a,2);b=c[r>>2]|0;b=(c[q>>2]|0)-b>>4>>>0>2?b+32|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(i=+h[b+8>>3],(iP(i)|0)!=0):0)if(!(i<-2147483648.0))if(i>2147483647.0)l=2147483647;else l=~~i;else l=-2147483648;else l=0;Wq(a,3);b=c[r>>2]|0;b=(c[q>>2]|0)-b>>4>>>0>3?b+48|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(k=+h[b+8>>3],(iP(k)|0)!=0):0)if(!(k<-2147483648.0))if(k>2147483647.0)j=2147483647;else j=~~k;else j=-2147483648;else j=0;Wq(a,4);b=c[r>>2]|0;b=(c[q>>2]|0)-b>>4>>>0>4?b+64|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(m=+h[b+8>>3],(iP(m)|0)!=0):0)if(!(m<-2147483648.0))if(m>2147483647.0)g=2147483647;else g=~~m;else g=-2147483648;else g=0;Wq(a,5);b=c[r>>2]|0;b=(c[q>>2]|0)-b>>4>>>0>5?b+80|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(o=+h[b+8>>3],(iP(o)|0)!=0):0)if(!(o<-2147483648.0))if(o>2147483647.0)e=2147483647;else e=~~o;else e=-2147483648;else e=0;Wq(a,6);b=c[r>>2]|0;b=(c[q>>2]|0)-b>>4>>>0>6?b+96|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(s=+h[b+8>>3],!((iP(s)|0)==0|s<-2147483648.0)):0)if(s>2147483647.0)b=-1;else b=~~s&255;else b=0;Pv(a);Ru(a,-1,90165)|0;r=_u(a,-1)|0;uq(a);Ig[c[r+2439728>>2]&7](r,p,n,l,j,g,e,b);return 0}function Fm(a){a=a|0;var b=0,d=0,e=0.0,f=0.0,g=0.0,i=0.0,j=0.0,k=0.0,l=0.0,m=0.0,n=0.0,o=0.0,p=0,q=0.0,r=0,s=0.0,t=0.0,u=0,v=0,w=0;u=a+68|0;v=a+64|0;b=c[v>>2]|0;if((c[u>>2]|0)==(b|0))jo(a,300,0);e=+ho(a,b);d=c[v>>2]|0;r=c[d>>2]|0;p=d+8|0;b=c[p>>2]|0;c[d>>2]=0;h[p>>3]=e;if((r&8|0)!=0?(p=b+4|0,r=(c[p>>2]|0)+-1|0,c[p>>2]=r,(r|0)==0):0){Yn(c[a+44>>2]|0,b);d=c[v>>2]|0}if((c[u>>2]|0)-d>>4>>>0<=1)jo(a,300,1);f=+ho(a,d+16|0);d=c[v>>2]|0;w=d+16|0;r=c[w>>2]|0;p=d+24|0;b=c[p>>2]|0;c[w>>2]=0;h[p>>3]=f;if((r&8|0)!=0?(r=b+4|0,w=(c[r>>2]|0)+-1|0,c[r>>2]=w,(w|0)==0):0){Yn(c[a+44>>2]|0,b);d=c[v>>2]|0}if((c[u>>2]|0)-d>>4>>>0<=2)jo(a,300,2);g=+ho(a,d+32|0);d=c[v>>2]|0;p=d+32|0;w=c[p>>2]|0;r=d+40|0;b=c[r>>2]|0;c[p>>2]=0;h[r>>3]=g;if((w&8|0)!=0?(r=b+4|0,w=(c[r>>2]|0)+-1|0,c[r>>2]=w,(w|0)==0):0){Yn(c[a+44>>2]|0,b);d=c[v>>2]|0}if((c[u>>2]|0)-d>>4>>>0<=3)jo(a,300,3);i=+ho(a,d+48|0);d=c[v>>2]|0;p=d+48|0;w=c[p>>2]|0;r=d+56|0;b=c[r>>2]|0;c[p>>2]=0;h[r>>3]=i;if((w&8|0)!=0?(r=b+4|0,w=(c[r>>2]|0)+-1|0,c[r>>2]=w,(w|0)==0):0){Yn(c[a+44>>2]|0,b);d=c[v>>2]|0}if((c[u>>2]|0)-d>>4>>>0<=4)jo(a,300,4);j=+ho(a,d+64|0);d=c[v>>2]|0;p=d+64|0;w=c[p>>2]|0;r=d+72|0;b=c[r>>2]|0;c[p>>2]=0;h[r>>3]=j;if((w&8|0)!=0?(r=b+4|0,w=(c[r>>2]|0)+-1|0,c[r>>2]=w,(w|0)==0):0){Yn(c[a+44>>2]|0,b);d=c[v>>2]|0}if((c[u>>2]|0)-d>>4>>>0<=5)jo(a,300,5);k=+ho(a,d+80|0);d=c[v>>2]|0;p=d+80|0;w=c[p>>2]|0;r=d+88|0;b=c[r>>2]|0;c[p>>2]=0;h[r>>3]=k;if((w&8|0)!=0?(r=b+4|0,w=(c[r>>2]|0)+-1|0,c[r>>2]=w,(w|0)==0):0){Yn(c[a+44>>2]|0,b);b=c[v>>2]|0}else b=d;if((c[u>>2]|0)-b>>4>>>0<=6)jo(a,300,6);l=+ho(a,b+96|0);d=c[v>>2]|0;p=d+96|0;w=c[p>>2]|0;r=d+104|0;b=c[r>>2]|0;c[p>>2]=0;h[r>>3]=l;if((w&8|0)!=0?(r=b+4|0,w=(c[r>>2]|0)+-1|0,c[r>>2]=w,(w|0)==0):0){Yn(c[a+44>>2]|0,b);d=c[v>>2]|0}if((c[u>>2]|0)-d>>4>>>0<=7)jo(a,300,7);m=+ho(a,d+112|0);d=c[v>>2]|0;p=d+112|0;w=c[p>>2]|0;r=d+120|0;b=c[r>>2]|0;c[p>>2]=0;h[r>>3]=m;if((w&8|0)!=0?(r=b+4|0,w=(c[r>>2]|0)+-1|0,c[r>>2]=w,(w|0)==0):0){Yn(c[a+44>>2]|0,b);d=c[v>>2]|0}if((c[u>>2]|0)-d>>4>>>0<=8)jo(a,300,8);n=+ho(a,d+128|0);d=c[v>>2]|0;p=d+128|0;w=c[p>>2]|0;r=d+136|0;b=c[r>>2]|0;c[p>>2]=0;h[r>>3]=n;if((w&8|0)!=0?(r=b+4|0,w=(c[r>>2]|0)+-1|0,c[r>>2]=w,(w|0)==0):0){Yn(c[a+44>>2]|0,b);d=c[v>>2]|0}if((c[u>>2]|0)-d>>4>>>0<=9)jo(a,300,9);o=+ho(a,d+144|0);d=c[v>>2]|0;p=d+144|0;w=c[p>>2]|0;r=d+152|0;b=c[r>>2]|0;c[p>>2]=0;h[r>>3]=o;do if(w&8){r=b+4|0;w=(c[r>>2]|0)+-1|0;c[r>>2]=w;if(w|0)break;Yn(c[a+44>>2]|0,b);d=c[v>>2]|0}while(0);t=o;if((c[u>>2]|0)-d>>4>>>0<=10)jo(a,300,10);o=+ho(a,d+160|0);d=c[v>>2]|0;p=d+160|0;w=c[p>>2]|0;r=d+168|0;b=c[r>>2]|0;c[p>>2]=0;h[r>>3]=o;do if(w&8){r=b+4|0;w=(c[r>>2]|0)+-1|0;c[r>>2]=w;if(w|0)break;Yn(c[a+44>>2]|0,b);d=c[v>>2]|0}while(0);s=o;if((c[u>>2]|0)-d>>4>>>0<=11)jo(a,300,11);o=+ho(a,d+176|0);r=c[v>>2]|0;p=r+176|0;w=c[p>>2]|0;r=r+184|0;b=c[r>>2]|0;c[p>>2]=0;h[r>>3]=o;do if(w&8|0){r=b+4|0;w=(c[r>>2]|0)+-1|0;c[r>>2]=w;if(w|0)break;Yn(c[a+44>>2]|0,b)}while(0);q=o;Pv(a);Ru(a,-1,90165)|0;r=_u(a,-1)|0;uq(a);d=c[u>>2]|0;b=c[v>>2]|0;w=d-b>>4>>>0>12?b+192|0:0;if((c[((w|0)==0?936:w)>>2]&-2|0)==2)p=0;else{p=(Ro(a,12)|0)!=0;b=c[v>>2]|0;d=c[u>>2]|0}w=d-b>>4>>>0>13?b+208|0:0;if((c[((w|0)==0?936:w)>>2]&-2|0)==2){w=-1;v=r+2439732|0;v=c[v>>2]|0;Ag[v&1](r,e,f,g,i,j,k,l,m,n,t,s,q,p,w);return 0}Wq(a,13);b=c[v>>2]|0;b=(c[u>>2]|0)-b>>4>>>0>13?b+208|0:0;b=(b|0)==0?936:b;if(c[b>>2]|0){w=0;v=r+2439732|0;v=c[v>>2]|0;Ag[v&1](r,e,f,g,i,j,k,l,m,n,t,s,q,p,w);return 0}o=+h[b+8>>3];if((iP(o)|0)==0|o<-2147483648.0){w=0;v=r+2439732|0;v=c[v>>2]|0;Ag[v&1](r,e,f,g,i,j,k,l,m,n,t,s,q,p,w);return 0}if(o>2147483647.0){w=-1;v=r+2439732|0;v=c[v>>2]|0;Ag[v&1](r,e,f,g,i,j,k,l,m,n,t,s,q,p,w);return 0}w=~~o&255;v=r+2439732|0;v=c[v>>2]|0;Ag[v&1](r,e,f,g,i,j,k,l,m,n,t,s,q,p,w);return 0}function Gm(a){a=a|0;var b=0,d=0.0,e=0,f=0,g=0,i=0.0,j=0,k=0.0,l=0,m=0,n=0,o=0.0;Wq(a,0);m=a+68|0;n=a+64|0;b=c[n>>2]|0;b=(c[m>>2]|0)!=(b|0)?b:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(d=+h[b+8>>3],(iP(d)|0)!=0):0)if(!(d<-2147483648.0))if(d>2147483647.0)l=2147483647;else l=~~d;else l=-2147483648;else l=0;Wq(a,1);b=c[m>>2]|0;e=c[n>>2]|0;g=b-e>>4;f=g>>>0>1?e+16|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)==0?(i=+h[f+8>>3],(iP(i)|0)!=0):0)if(!(i<-2147483648.0))if(i>2147483647.0)j=2147483647;else j=~~i;else j=-2147483648;else j=0;g=g>>>0>2?e+32|0:0;if((c[((g|0)==0?936:g)>>2]&-2|0)!=2){Wq(a,2);f=c[m>>2]|0;e=c[n>>2]|0;b=f-e>>4>>>0>2?e+32|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(k=+h[b+8>>3],(iP(k)|0)!=0):0)if(!(k<-2147483648.0))if(k>2147483647.0){b=f;f=2147483647}else{b=f;f=~~k}else{b=f;f=-2147483648}else{b=f;f=0}}else f=240;g=b-e>>4>>>0>3?e+48|0:0;if((c[((g|0)==0?936:g)>>2]&-2|0)!=2){Wq(a,3);b=c[n>>2]|0;b=(c[m>>2]|0)-b>>4>>>0>3?b+48|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(o=+h[b+8>>3],(iP(o)|0)!=0):0)if(!(o<-2147483648.0))if(o>2147483647.0)b=2147483647;else b=~~o;else b=-2147483648;else b=0}else b=136;Pv(a);Ru(a,-1,90165)|0;n=_u(a,-1)|0;uq(a);Fg[c[n+2439736>>2]&15](n,l,j,f,b);return 0}function Hm(a){a=a|0;var b=0,d=0.0,e=0,f=0,g=0.0,i=0,j=0,k=0,l=0,m=0,n=0.0,o=0;Pv(a);Ru(a,-1,90165)|0;o=_u(a,-1)|0;uq(a);j=a+68|0;k=a+64|0;m=c[k>>2]|0;m=(c[j>>2]|0)!=(m|0)?m:0;if((c[((m|0)==0?936:m)>>2]&-2|0)!=2){Wq(a,0);b=c[k>>2]|0;b=(c[j>>2]|0)!=(b|0)?b:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(d=+h[b+8>>3],(iP(d)|0)!=0):0)if(!(d<-2147483648.0))if(d>2147483647.0)m=2147483647;else m=~~d;else m=-2147483648;else m=0}else m=-1;l=o+2439756|0;Fg[c[l>>2]&15](o,-1,0,0,0);if((m|0)<=-1)return 0;b=c[j>>2]|0;e=c[k>>2]|0;i=b-e>>4>>>0>1?e+16|0:0;if((c[((i|0)==0?936:i)>>2]&-2|0)!=2){Wq(a,1);b=c[j>>2]|0;e=c[k>>2]|0;f=b-e>>4>>>0>1?e+16|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)==0?(g=+h[f+8>>3],(iP(g)|0)!=0):0)if(!(g<-2147483648.0))if(g>2147483647.0)i=2147483647;else i=~~g;else i=-2147483648;else i=0}else i=-1;f=b-e>>4>>>0>2?e+32|0:0;if((c[((f|0)==0?936:f)>>2]&-2|0)!=2){Wq(a,2);f=c[j>>2]|0;e=c[k>>2]|0;b=f-e>>4>>>0>2?e+32|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(n=+h[b+8>>3],(iP(n)|0)!=0):0)if(!(n<-2147483648.0))if(n>2147483647.0){b=f;f=2147483647}else{b=f;f=~~n}else{b=f;f=-2147483648}else{b=f;f=0}}else f=-1;k=b-e>>4>>>0>3?e+48|0:0;if((c[((k|0)==0?936:k)>>2]&-2|0)==2)b=1;else b=(Ro(a,3)|0)!=0;Fg[c[l>>2]&15](o,m,i,f,b);return 0}function Im(a){a=a|0;var b=0,d=0,e=0,f=0.0,g=0,i=0,j=0,k=0.0,m=0,n=0,o=0;o=l;l=l+16|0;n=o;Pv(a);Ru(a,-1,90165)|0;m=_u(a,-1)|0;uq(a);g=a+68|0;b=c[g>>2]|0;i=a+64|0;d=c[i>>2]|0;j=(b|0)!=(d|0)?d:0;if((c[((j|0)==0?936:j)>>2]&-2|0)!=2){Wq(a,0);b=c[g>>2]|0;d=c[i>>2]|0;e=(b|0)!=(d|0)?d:0;e=(e|0)==0?936:e;if((c[e>>2]|0)==0?(f=+h[e+8>>3],(iP(f)|0)!=0):0)if(!(f<-2147483648.0))if(f>2147483647.0)j=2147483647;else j=~~f;else j=-2147483648;else j=0}else j=0;e=b-d>>4>>>0>1?d+16|0:0;if((c[((e|0)==0?936:e)>>2]&-2|0)!=2){Wq(a,1);e=c[g>>2]|0;d=c[i>>2]|0;b=e-d>>4>>>0>1?d+16|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(k=+h[b+8>>3],(iP(k)|0)!=0):0)if(!(k<-2147483648.0))if(k>2147483647.0){b=e;e=2147483647}else{b=e;e=~~k}else{b=e;e=-2147483648}else{b=e;e=0}}else e=0;i=b-d>>4>>>0>2?d+32|0:0;if((c[((i|0)==0?936:i)>>2]&-2|0)==2)b=0;else b=Ro(a,2)|0;if(e>>>0<8){Eg[c[m+2439792>>2]&63](m,j,e,(b|0)!=0);l=o;return 0}else gq(a,1,90172,765,263272,n);return 0}function Jm(b){b=b|0;var c=0;Pv(b);Ru(b,-1,90165)|0;c=_u(b,-1)|0;uq(b);a[c+2589368>>0]=0;return 0}function Km(a){a=a|0;var b=0,d=0,e=0,f=0.0,g=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;Pv(a);Ru(a,-1,90165)|0;i=_u(a,-1)|0;uq(a);k=a+68|0;e=a+64|0;d=c[e>>2]|0;d=(c[k>>2]|0)!=(d|0)?d:0;if((c[((d|0)==0?936:d)>>2]&-2|0)==2){b=hg[c[i+2439800>>2]&63](i,0)|0;d=c[k>>2]|0;if(d>>>0<(c[a+56>>2]|0)>>>0){j=d;a=b;a=a&1;i=j+16|0;c[k>>2]=i;c[j>>2]=4;k=j+8|0;c[k>>2]=a;l=m;return 1}else Un(a,4185)}Wq(a,0);b=c[e>>2]|0;b=(c[k>>2]|0)!=(b|0)?b:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(f=+h[b+8>>3],(iP(f)|0)!=0):0)if(!(f<-2147483648.0)){if(f>2147483647.0)gq(a,1,90172,255,263174,j);b=~~f;if((b&255)>>>0<79)g=b;else gq(a,1,90172,255,263174,j)}else g=-2147483648;else g=0;b=hg[c[i+2439800>>2]&63](i,g&255)|0;d=c[k>>2]|0;if(d>>>0<(c[a+56>>2]|0)>>>0){j=d;a=b;a=a&1;i=j+16|0;c[k>>2]=i;c[j>>2]=4;k=j+8|0;c[k>>2]=a;l=m;return 1}else Un(a,4185);return 0}function Lm(a){a=a|0;var b=0,d=0,e=0,f=0,g=0.0,i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;i=q;Pv(a);Ru(a,-1,90165)|0;n=_u(a,-1)|0;uq(a);p=a+68|0;k=a+64|0;f=c[k>>2]|0;f=(c[p>>2]|0)!=(f|0)?f:0;if((c[((f|0)==0?936:f)>>2]&-2|0)==2){b=jg[c[n+2439804>>2]&31](n,0,-1,-1)|0;d=c[p>>2]|0;if(d>>>0<(c[a+56>>2]|0)>>>0){o=d;a=b;a=a&1;n=o+16|0;c[p>>2]=n;c[o>>2]=4;p=o+8|0;c[p>>2]=a;l=q;return 1}else Un(a,4185)}Wq(a,0);d=c[p>>2]|0;f=c[k>>2]|0;e=f;b=(d|0)!=(e|0)?f:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(g=+h[b+8>>3],!((iP(g)|0)==0|g<-2147483648.0)):0){if(g>2147483647.0)gq(a,1,90172,278,263174,i);b=~~g;if((b&255)>>>0>78)gq(a,1,90172,278,263174,i);else o=b&255}else o=0;b=d-e>>4;i=b>>>0>1?f+16|0:0;if((c[((i|0)==0?936:i)>>2]&-2|0)==2?(i=b>>>0>2?f+32|0:0,(c[((i|0)==0?936:i)>>2]&-2|0)==2):0){b=jg[c[n+2439804>>2]&31](n,o,-1,-1)|0;d=c[p>>2]|0;if(d>>>0<(c[a+56>>2]|0)>>>0){o=d;a=b;a=a&1;n=o+16|0;c[p>>2]=n;c[o>>2]=4;p=o+8|0;c[p>>2]=a;l=q;return 1}else Un(a,4185)}Wq(a,1);b=c[k>>2]|0;b=(c[p>>2]|0)-b>>4>>>0>1?b+16|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(j=+h[b+8>>3],(iP(j)|0)!=0):0)if(!(j<-2147483648.0))if(j>2147483647.0)d=2147483647;else d=~~j;else d=-2147483648;else d=0;Wq(a,2);b=c[k>>2]|0;b=(c[p>>2]|0)-b>>4>>>0>2?b+32|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(m=+h[b+8>>3],(iP(m)|0)!=0):0)if(!(m<-2147483648.0))if(m>2147483647.0)b=2147483647;else b=~~m;else b=-2147483648;else b=0;b=jg[c[n+2439804>>2]&31](n,o,d,b)|0;d=c[p>>2]|0;if(d>>>0<(c[a+56>>2]|0)>>>0){o=d;a=b;a=a&1;n=o+16|0;c[p>>2]=n;c[o>>2]=4;p=o+8|0;c[p>>2]=a;l=q;return 1}else Un(a,4185);return 0}function Mm(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0,B=0,C=0.0;B=l;l=l+16|0;t=B;A=c[b>>2]|0;q=c[b+4>>2]|0;z=A+68|0;r=c[z>>2]|0;s=A+56|0;j=c[s>>2]|0;if(r>>>0>=j>>>0)Un(A,5493);b=r+16|0;c[z>>2]=b;if(!q)k=b;else{b=c[q>>2]|0;if(!(b&16)){i=q+4|0;j=i;i=c[i>>2]|0}else{b=b&-49;c[q>>2]=b;j=q+4|0;i=(c[j>>2]|0)+-1|0;c[j>>2]=i;n=c[A+44>>2]|0;o=q+8|0;k=c[o>>2]|0;p=q+12|0;m=c[p>>2]|0;if(k|0)c[k+12>>2]=m;if(!m)c[n+32>>2]=k;else c[m+8>>2]=k;k=n+24|0;m=c[k>>2]|0;if(m|0)c[m+12>>2]=q;c[p>>2]=0;c[o>>2]=m;c[k>>2]=q}k=b&255;c[r>>2]=(k&3)==0?8:(k&3)==1?9:10;c[r+8>>2]=q;c[j>>2]=i+1;k=c[z>>2]|0;j=c[s>>2]|0}if(k>>>0>=j>>>0)Un(A,4244);C=+(d[g>>0]|0);b=k+16|0;c[z>>2]=b;c[k>>2]=0;h[k+8>>3]=C;if(b>>>0>=j>>>0)Un(A,4244);i=k+32|0;c[z>>2]=i;c[b>>2]=0;h[k+24>>3]=+(e|0);if(i>>>0>=j>>>0)Un(A,4244);e=k+48|0;c[z>>2]=e;c[i>>2]=0;h[k+40>>3]=+(f|0);c[t>>2]=3;c[t+4>>2]=0;m=A+64|0;if(j>>>0<k>>>0?1:e>>>0<((c[m>>2]|0)+64|0)>>>0)Vn(A,268605,315);Xn(A,15,t,4,1)|0;t=c[m>>2]|0;b=(c[z>>2]|0)-t>>4;b=b|0?t+(b+-1<<4)|0:0;b=(b|0)==0?936:b;if(((c[b>>2]|0)==9?(u=c[b+8>>2]|0,(u|0)!=0):0)?(c[u>>2]&-134217728|0)==268435456:0){Np(A,-1,0)|0;Wq(A,-1);j=c[z>>2]|0;i=c[m>>2]|0;b=j-i>>4;b=b|0?i+(b+-1<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(w=+h[b+8>>3],!((iP(w)|0)==0|w<-2147483648.0)):0)if(w>2147483647.0)b=-1;else b=~~w&255;else b=0;a[g>>0]=b;if((j|0)==(i|0))Jn(A,268620,50337407,268636);t=j+-16|0;c[z>>2]=t;u=c[j+-16>>2]|0;b=c[j+-8>>2]|0;c[t>>2]=2;if(u&8|0?(t=b+4|0,u=(c[t>>2]|0)+-1|0,c[t>>2]=u,(u|0)==0):0)Yn(c[A+44>>2]|0,b);Np(A,-1,1)|0;Wq(A,-1);i=c[z>>2]|0;j=c[m>>2]|0;b=i-j>>4;b=b|0?j+(b+-1<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(x=+h[b+8>>3],(iP(x)|0)!=0):0)if(!(x<-2147483648.0))if(x>2147483647.0)b=2147483647;else b=~~x;else b=-2147483648;else b=0;c[g+4>>2]=b;if((i|0)==(j|0))Jn(A,268620,50337407,268636);t=i+-16|0;c[z>>2]=t;u=c[i+-16>>2]|0;b=c[i+-8>>2]|0;c[t>>2]=2;if(u&8|0?(t=b+4|0,u=(c[t>>2]|0)+-1|0,c[t>>2]=u,(u|0)==0):0)Yn(c[A+44>>2]|0,b);Np(A,-1,2)|0;Wq(A,-1);k=c[z>>2]|0;b=c[m>>2]|0;i=k-b>>4;i=i|0?b+(i+-1<<4)|0:0;i=(i|0)==0?936:i;do if((c[i>>2]|0)==0?(y=+h[i+8>>3],(iP(y)|0)!=0):0)if(y<-2147483648.0)i=-2147483648;else{if(y>2147483647.0){i=2147483647;break}i=~~y}else i=0;while(0);c[g+8>>2]=i;if((k|0)==(b|0))Jn(A,268620,50337407,268636);j=k+-16|0;c[z>>2]=j;g=c[k+-16>>2]|0;i=c[k+-8>>2]|0;c[j>>2]=2;if((g&8|0)!=0?(u=i+4|0,g=(c[u>>2]|0)+-1|0,c[u>>2]=g,(g|0)==0):0){Yn(c[A+44>>2]|0,i);j=c[z>>2]|0;b=c[m>>2]|0}}else{Wq(A,-1);j=c[z>>2]|0;b=c[m>>2]|0;i=j-b>>4;i=i|0?b+(i+-1<<4)|0:0;i=(i|0)==0?936:i;if((c[i>>2]|0)==0?(v=+h[i+8>>3],!((iP(v)|0)==0|v<-2147483648.0)):0)if(v>2147483647.0)i=-1;else i=~~v&255;else i=0;a[g>>0]=i}if((j|0)==(b|0))Jn(A,268620,50337407,268636);g=j+-16|0;c[z>>2]=g;z=c[j+-16>>2]|0;b=c[j+-8>>2]|0;c[g>>2]=2;if(!(z&8)){l=B;return}g=b+4|0;z=(c[g>>2]|0)+-1|0;c[g>>2]=z;if(z|0){l=B;return}Yn(c[A+44>>2]|0,b);l=B;return}function Nm(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;j=o;e=a+2588568|0;d=c[e>>2]|0;if(d|0){vx(c[(c[d+12>>2]|0)+136>>2]|0);c[e>>2]=0}d=tx(1,0)|0;if(d|0)c[(c[d+12>>2]|0)+132>>2]=390;c[e>>2]=d;ly(d,282559,392);m=d+8|0;c[m>>2]=(c[m>>2]|0)+-16;ly(d,263152,393);c[m>>2]=(c[m>>2]|0)+-16;ly(d,281358,394);c[m>>2]=(c[m>>2]|0)+-16;ly(d,287721,395);c[m>>2]=(c[m>>2]|0)+-16;ly(d,263162,396);c[m>>2]=(c[m>>2]|0)+-16;Tm(a);m=c[e>>2]|0;i=m+16|0;d=c[c[i>>2]>>2]|0;k=m+8|0;e=c[k>>2]|0;f=d+16|0;if(e>>>0<f>>>0){g=(d+8+4+(3-e)|0)>>>4;h=e;while(1){c[h+8>>2]=0;if(h>>>0<d>>>0)h=h+16|0;else break}c[k>>2]=e+(g+1<<4)}c[k>>2]=f;h=WO(b)|0;c[j>>2]=b;c[j+4>>2]=h;if(!(dw(m,7,j,b,0)|0)){f=(c[k>>2]|0)+-16|0;c[j>>2]=f;c[j+4>>2]=-1;f=Aw(m,147,j,f-(c[m+28>>2]|0)|0,0)|0;e=(c[i>>2]|0)+4|0;d=c[k>>2]|0;if((c[e>>2]|0)>>>0<d>>>0)c[e>>2]=d;if(!f){n=1;l=o;return n|0}}else d=c[k>>2]|0;f=c[a+2588588>>2]|0;e=c[f+4>>2]|0;f=c[f+36>>2]|0;switch(c[d+-8>>2]&15){case 4:{d=d+-16|0;n=18;break}case 3:{if((c[(c[m+12>>2]|0)+12>>2]|0)>0){Sw(m);d=c[k>>2]|0}d=d+-16|0;Xw(m,d);n=18;break}default:d=0}if((n|0)==18)d=(c[d>>2]|0)+16|0;Bg[e&255](f,d);n=0;l=o;return n|0}function Om(a){a=a|0;var b=0;a=a+2588568|0;b=c[a>>2]|0;if(!b)return;vx(c[(c[b+12>>2]|0)+136>>2]|0);c[a>>2]=0;return}function Pm(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;j=o;m=c[b+2588568>>2]|0;if(!m){l=o;return}k=m+12|0;g=c[k>>2]|0;e=c[g+40>>2]|0;a:do if((c[e+8>>2]|0)>>>0>1)f=(c[e+12>>2]|0)+16|0;else{f=(c[e+16>>2]|0)+(((1<<(d[e+7>>0]|0))+3&2)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(i=f+16|0,(c[i>>2]|0)==2&(c[i+4>>2]|0)==0):0)break;e=c[f+28>>2]|0;if(!e){f=316344;break a}f=f+(e<<5)|0}}while(0);i=m+8|0;h=c[i>>2]|0;g=g+280+(((262928>>>0)%127|0)<<2)|0;e=c[g>>2]|0;if(JN(262928,e+16|0)|0){e=xx(m,262928,3)|0;c[g>>2]=e}c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;h=c[i>>2]|0;c[i>>2]=h+16;Kx(m,f,h,h);h=c[i>>2]|0;e=h+-16|0;if((e|0)!=316344?(c[h+-8>>2]&15|0)==6:0){c[j>>2]=e;c[j+4>>2]=0;if(!(Aw(m,147,j,e-(c[m+28>>2]|0)|0,0)|0)){l=o;return}g=c[b+2588588>>2]|0;f=c[g+4>>2]|0;g=c[g+36>>2]|0;e=c[i>>2]|0;switch(c[e+-8>>2]&15){case 4:{e=e+-16|0;n=20;break}case 3:{if((c[(c[k>>2]|0)+12>>2]|0)>0){Sw(m);e=c[i>>2]|0}e=e+-16|0;Xw(m,e);n=20;break}default:e=0}if((n|0)==20)e=(c[e>>2]|0)+16|0;Bg[f&255](g,e);l=o;return}c[i>>2]=e;n=c[b+2588588>>2]|0;Bg[c[n+4>>2]&255](c[n+36>>2]|0,263117);l=o;return}function Qm(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;k=p;n=c[b+2588568>>2]|0;if(!n){l=p;return}m=n+12|0;h=c[m>>2]|0;f=c[h+40>>2]|0;a:do if((c[f+8>>2]|0)>>>0>1)g=(c[f+12>>2]|0)+16|0;else{g=(c[f+16>>2]|0)+(((1<<(d[f+7>>0]|0))+3&2)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(j=g+16|0,(c[j>>2]|0)==2&(c[j+4>>2]|0)==0):0)break;f=c[g+28>>2]|0;if(!f){g=316344;break a}g=g+(f<<5)|0}}while(0);j=n+8|0;i=c[j>>2]|0;h=h+280+(((262932>>>0)%127|0)<<2)|0;f=c[h>>2]|0;if(JN(262932,f+16|0)|0){f=xx(n,262932,8)|0;c[h>>2]=f}c[i>>2]=f;c[i+8>>2]=(a[f+4>>0]|64)&255;f=c[j>>2]|0;c[j>>2]=f+16;Kx(n,g,f,f);f=c[j>>2]|0;g=f+-16|0;if((g|0)!=316344?(c[f+-8>>2]&15|0)==6:0){i=f;c[i>>2]=e;c[i+4>>2]=((e|0)<0)<<31>>31;c[f+8>>2]=19;c[j>>2]=f+16;c[k>>2]=g;c[k+4>>2]=0;if(!(Aw(n,147,k,g-(c[n+28>>2]|0)|0,0)|0)){l=p;return}h=c[b+2588588>>2]|0;g=c[h+4>>2]|0;h=c[h+36>>2]|0;f=c[j>>2]|0;switch(c[f+-8>>2]&15){case 4:{f=f+-16|0;o=20;break}case 3:{if((c[(c[m>>2]|0)+12>>2]|0)>0){Sw(n);f=c[j>>2]|0}f=f+-16|0;Xw(n,f);o=20;break}default:f=0}if((o|0)==20)f=(c[f>>2]|0)+16|0;Bg[g&255](h,f);l=p;return}c[j>>2]=g;l=p;return}function Rm(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;j=o;m=c[b+2588568>>2]|0;if(!m){l=o;return}k=m+12|0;g=c[k>>2]|0;e=c[g+40>>2]|0;a:do if((c[e+8>>2]|0)>>>0>1)f=(c[e+12>>2]|0)+16|0;else{f=(c[e+16>>2]|0)+(((1<<(d[e+7>>0]|0))+3&2)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(i=f+16|0,(c[i>>2]|0)==2&(c[i+4>>2]|0)==0):0)break;e=c[f+28>>2]|0;if(!e){f=316344;break a}f=f+(e<<5)|0}}while(0);i=m+8|0;h=c[i>>2]|0;g=g+280+(((262941>>>0)%127|0)<<2)|0;e=c[g>>2]|0;if(JN(262941,e+16|0)|0){e=xx(m,262941,3)|0;c[g>>2]=e}c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;h=c[i>>2]|0;c[i>>2]=h+16;Kx(m,f,h,h);h=c[i>>2]|0;e=h+-16|0;if((e|0)!=316344?(c[h+-8>>2]&15|0)==6:0){c[j>>2]=e;c[j+4>>2]=0;if(!(Aw(m,147,j,e-(c[m+28>>2]|0)|0,0)|0)){l=o;return}g=c[b+2588588>>2]|0;f=c[g+4>>2]|0;g=c[g+36>>2]|0;e=c[i>>2]|0;switch(c[e+-8>>2]&15){case 4:{e=e+-16|0;n=20;break}case 3:{if((c[(c[k>>2]|0)+12>>2]|0)>0){Sw(m);e=c[i>>2]|0}e=e+-16|0;Xw(m,e);n=20;break}default:e=0}if((n|0)==20)e=(c[e>>2]|0)+16|0;Bg[f&255](g,e);l=o;return}c[i>>2]=e;l=o;return}function Sm(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;c[d>>2]=0;e=c[80014]|0;if(e|0){fN(e);c[80014]=0}f=MP(b,263107)|0;if(!f){n=0;return n|0}g=0;h=0;e=0;do{m=f+9|0;i=a[m>>0]|0;if(i<<24>>24){l=9;k=9;a:while(1){j=(nO(i<<24>>24)|0)!=0;o=i<<24>>24==58|(i<<24>>24==95|j);l=o?l:i<<24>>24==40?k:l;k=(o&1)+k|0;if(!j)switch(i<<24>>24){case 58:case 95:break;default:{n=9;break a}}j=f+k|0;i=a[j>>0]|0;if(!(i<<24>>24)){f=j;break}}if((n|0)==9){n=0;f=f+k|0}if((l|0)>9){if(!g)g=eN(8)|0;else g=gN(h,(c[d>>2]<<3)+8|0)|0;c[80014]=g;e=c[d>>2]|0;c[g+(e<<3)>>2]=m-b;c[g+(e<<3)+4>>2]=l+-9;c[d>>2]=(c[d>>2]|0)+1;e=g;h=g}}else f=m;f=MP(f,263107)|0}while((f|0)!=0);return e|0}function Tm(b){b=b|0;var d=0,e=0,f=0,g=0;d=b+2588568|0;e=(c[d>>2]|0)+8|0;f=c[e>>2]|0;c[f>>2]=b;c[f+8>>2]=2;c[e>>2]=(c[e>>2]|0)+16;Yv(c[d>>2]|0,263167);b=0;do{if((b+-3|0)>>>0<35){f=c[3660+(b<<2)>>2]|0;e=(c[d>>2]|0)+8|0;g=c[e>>2]|0;c[g>>2]=c[3812+(b<<2)>>2];c[g+8>>2]=22;c[e>>2]=(c[e>>2]|0)+16;Yv(c[d>>2]|0,f)}b=b+1|0}while((b|0)!=38);b=(c[d>>2]|0)+8|0;g=c[b>>2]|0;c[g>>2]=397;c[g+8>>2]=22;c[b>>2]=(c[b>>2]|0)+16;Yv(c[d>>2]|0,282601);b=(c[d>>2]|0)+8|0;g=c[b>>2]|0;c[g>>2]=398;c[g+8>>2]=22;c[b>>2]=(c[b>>2]|0)+16;Yv(c[d>>2]|0,282621);b=c[d>>2]|0;d=c[b+16>>2]|0;if(!(a[d+34>>0]&2)){g=b+84|0;c[g>>2]=155;g=b+96|0;c[g>>2]=1e8;g=b+100|0;c[g>>2]=1e8;g=b+108|0;a[g>>0]=8;return}c[b+20>>2]=c[d+20>>2];g=b+84|0;c[g>>2]=155;g=b+96|0;c[g>>2]=1e8;g=b+100|0;c[g>>2]=1e8;g=b+108|0;a[g>>0]=8;return}function Um(a){a=a|0;var b=0;b=l;l=l+16|0;Wx(a,264257,b);l=b;return 0}function Vm(a){a=a|0;var b=0;b=l;l=l+16|0;Wx(a,264229,b);l=b;return 0}function Wm(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;g=c[b+12>>2]|0;e=c[g+40>>2]|0;a:do if((c[e+8>>2]|0)>>>0>1)f=(c[e+12>>2]|0)+16|0;else{f=(c[e+16>>2]|0)+(((1<<(d[e+7>>0]|0))+3&2)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(i=f+16|0,(c[i>>2]|0)==2&(c[i+4>>2]|0)==0):0)break;e=c[f+28>>2]|0;if(!e){f=316344;break a}f=f+(e<<5)|0}}while(0);i=b+8|0;h=c[i>>2]|0;g=g+280+(((263167>>>0)%127|0)<<2)|0;e=c[g>>2]|0;if(JN(263167,e+16|0)|0){e=xx(b,263167,6)|0;c[g>>2]=e}c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;h=c[i>>2]|0;c[i>>2]=h+16;Kx(b,f,h,h);h=c[i>>2]|0;f=h+-16|0;switch(c[h+-8>>2]&15){case 7:{e=(c[f>>2]|0)+24|0;break}case 2:{e=c[f>>2]|0;break}default:e=0}c[i>>2]=f;e=c[e+2588588>>2]|0;f=c[e+12>>2]|0;if(!f){l=k;return}if(!(gg[f&511](c[e+36>>2]|0)|0)){l=k;return}Wx(b,264196,j);l=k;return}function Xm(e){e=e|0;var f=0,g=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;p=y+16|0;v=y;x=e+8|0;o=c[x>>2]|0;r=e+16|0;s=o-((c[c[r>>2]>>2]|0)+16)|0;t=s>>4;n=o;if((s|0)<=0){x=0;l=y;return x|0}q=e+12|0;m=c[q>>2]|0;f=c[m+40>>2]|0;a:do if((c[f+8>>2]|0)>>>0>1)k=(c[f+12>>2]|0)+16|0;else{g=(c[f+16>>2]|0)+(((1<<d[f+7>>0])+3&2)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(u=g+16|0,(c[u>>2]|0)==2&(c[u+4>>2]|0)==0):0)break;f=c[g+28>>2]|0;if(!f){k=316344;break a}g=g+(f<<5)|0}k=g}while(0);g=m+280+(((263167>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(263167,f+16|0)|0){f=xx(e,263167,6)|0;c[g>>2]=f}c[o>>2]=f;c[n+8>>2]=(a[f+4>>0]|64)&255;n=c[x>>2]|0;c[x>>2]=n+16;Kx(e,k,n,n);n=c[x>>2]|0;o=n+-16|0;switch(c[n+-8>>2]&15){case 7:{u=(c[o>>2]|0)+24|0;break}case 2:{u=c[o>>2]|0;break}default:u=0}c[x>>2]=o;m=c[q>>2]|0;f=c[m+40>>2]|0;b:do if((c[f+8>>2]|0)>>>0>1)k=(c[f+12>>2]|0)+16|0;else{g=(c[f+16>>2]|0)+(((1<<d[f+7>>0])+3&2)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(k=g+16|0,(c[k>>2]|0)==2&(c[k+4>>2]|0)==0):0)break;f=c[g+28>>2]|0;if(!f){k=316344;break b}g=g+(f<<5)|0}k=g}while(0);g=m+280+(((282698>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(282698,f+16|0)|0){f=xx(e,282698,8)|0;c[g>>2]=f}c[o>>2]=f;c[n+-8>>2]=(a[f+4>>0]|64)&255;f=c[x>>2]|0;c[x>>2]=f+16;Kx(e,k,f,f);f=c[x>>2]|0;g=f+-16|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[f+12>>2]=c[g+12>>2];f=c[x>>2]|0;g=f+16|0;c[x>>2]=g;k=c[c[r>>2]>>2]|0;k=k>>>0<f>>>0?k+16|0:316344;c[g>>2]=c[k>>2];c[g+4>>2]=c[k+4>>2];c[g+8>>2]=c[k+8>>2];c[g+12>>2]=c[k+12>>2];g=c[x>>2]|0;c[x>>2]=g+16;g=g+-16|0;k=e+106|0;f=(b[k>>1]|0)+1<<16>>16;b[k>>1]=f;if((f&65535)>199){if(f<<16>>16==200)mw(e,279953,p);if((f&65535)>224)qw(e,6)}f=e+104|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;if(!(uw(e,g,1)|0))Sx(e);b[f>>1]=(b[f>>1]|0)+-1<<16>>16;b[k>>1]=(b[k>>1]|0)+-1<<16>>16;f=c[x>>2]|0;switch(c[f+-8>>2]&15){case 4:{g=f;f=f+-16|0;w=38;break}case 3:{if((c[(c[q>>2]|0)+12>>2]|0)>0){Sw(e);f=c[x>>2]|0}f=f+-16|0;Xw(e,f);g=c[x>>2]|0;w=38;break}default:q=0}if((w|0)==38){q=(c[f>>2]|0)+16|0;f=g}f=f+-32|0;c[x>>2]=f;if((s|0)>32){g=(c[c[r>>2]>>2]|0)+32|0;g=g>>>0<f>>>0?g:316344;f=c[g+8>>2]|0;c:do if((f|0)==3)i=+h[g>>3];else do if((f|0)==19){e=g;i=+((c[e>>2]|0)>>>0)+4294967296.0*+(c[e+4>>2]|0)}else{if((f&15|0)==4){k=Ww((c[g>>2]|0)+16|0,v)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((k|0)==(f+1|0)){o=(c[v+8>>2]|0)==19;e=v;p=c[e>>2]|0;e=c[e+4>>2]|0;c[j>>2]=p;c[j+4>>2]=e;i=o?+(p>>>0)+4294967296.0*+(e|0):+h[j>>3];break}}i=0.0;break c}while(0);while(0);p=~~i;g=(c[c[r>>2]>>2]|0)+48|0;g=g>>>0<(c[x>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;d:do if((f|0)==3)i=+h[g>>3];else do if((f|0)==19){e=g;i=+((c[e>>2]|0)>>>0)+4294967296.0*+(c[e+4>>2]|0)}else{if((f&15|0)==4){k=Ww((c[g>>2]|0)+16|0,v)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((k|0)==(f+1|0)){n=(c[v+8>>2]|0)==19;e=v;o=c[e>>2]|0;e=c[e+4>>2]|0;c[j>>2]=o;c[j+4>>2]=e;i=n?+(o>>>0)+4294967296.0*+(e|0):+h[j>>3];break}}i=0.0;break d}while(0);while(0);f=~~i;if((t|0)!=3){k=(c[c[r>>2]>>2]|0)+64|0;k=k>>>0<(c[x>>2]|0)>>>0?k:316344;g=c[k+8>>2]|0;e:do if((g|0)==3)i=+h[k>>3];else do if((g|0)==19){e=k;i=+((c[e>>2]|0)>>>0)+4294967296.0*+(c[e+4>>2]|0)}else{if((g&15|0)==4){m=Ww((c[k>>2]|0)+16|0,v)|0;g=c[k>>2]|0;if((a[g+4>>0]|0)==4)g=d[g+7>>0]|0;else g=c[g+12>>2]|0;if((m|0)==(g+1|0)){n=(c[v+8>>2]|0)==19;e=v;o=c[e>>2]|0;e=c[e+4>>2]|0;c[j>>2]=o;c[j+4>>2]=e;i=n?+(o>>>0)+4294967296.0*+(e|0):+h[j>>3];break}}i=0.0;break e}while(0);while(0);g=(~~i|0)%16|0;if((s|0)>64){n=c[c[r>>2]>>2]|0;k=n+80|0;o=c[x>>2]|0;k=k>>>0<o>>>0?k:316344;switch(c[k+8>>2]|0){case 0:{m=0;break}case 1:{m=(c[k>>2]|0)!=0;break}default:m=1}if((t|0)!=5){n=n+96|0;n=n>>>0<o>>>0?n:316344;k=c[n+8>>2]|0;f:do if((k|0)==3)i=+h[n>>3];else g:do if((k|0)==19){v=n;i=+((c[v>>2]|0)>>>0)+4294967296.0*+(c[v+4>>2]|0)}else{do if((k&15|0)==4){o=Ww((c[n>>2]|0)+16|0,v)|0;k=c[n>>2]|0;if((a[k+4>>0]|0)==4)k=d[k+7>>0]|0;else k=c[k+12>>2]|0;if((o|0)!=(k+1|0))break;s=(c[v+8>>2]|0)==19;t=c[v>>2]|0;v=c[v+4>>2]|0;c[j>>2]=t;c[j+4>>2]=v;i=s?+(t>>>0)+4294967296.0*+(v|0):+h[j>>3];break g}while(0);i=0.0;break f}while(0);while(0);k=~~i;if(!k){f=0;g=0}else{n=p;w=95}}else{n=p;k=1;w=95}}else{n=p;k=1;m=0;w=95}}else{n=p;k=1;m=0;g=15;w=95}}else{n=0;k=1;m=0;g=15;f=0;w=95}if((w|0)==95){g=mg[c[u+2439668>>2]&7](u,q|0?q:287343,n,f,g&255,m,k)|0;f=g;g=((g|0)<0)<<31>>31}w=c[x>>2]|0;v=w;c[v>>2]=f;c[v+4>>2]=g;c[w+8>>2]=19;c[x>>2]=w+16;x=1;l=y;return x|0}function Ym(b){b=b|0;var e=0.0,f=0,g=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+16|0;r=s;o=b+8|0;n=c[o>>2]|0;p=b+16|0;q=n-((c[c[p>>2]>>2]|0)+16)|0;k=c[b+12>>2]|0;f=c[k+40>>2]|0;m=n;a:do if((c[f+8>>2]|0)>>>0>1)i=(c[f+12>>2]|0)+16|0;else{g=(c[f+16>>2]|0)+(((1<<d[f+7>>0])+3&2)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(i=g+16|0,(c[i>>2]|0)==2&(c[i+4>>2]|0)==0):0)break;f=c[g+28>>2]|0;if(!f){i=316344;break a}g=g+(f<<5)|0}i=g}while(0);g=k+280+(((263167>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(263167,f+16|0)|0){f=xx(b,263167,6)|0;c[g>>2]=f}c[n>>2]=f;c[m+8>>2]=(a[f+4>>0]|64)&255;n=c[o>>2]|0;c[o>>2]=n+16;Kx(b,i,n,n);n=c[o>>2]|0;f=n+-16|0;switch(c[n+-8>>2]&15){case 7:{b=(c[f>>2]|0)+24|0;break}case 2:{b=c[f>>2]|0;break}default:b=0}c[o>>2]=f;k=c[b+2439672>>2]|0;if((q|0)!=16){r=0;Bg[k&255](b,r);l=s;return 0}g=(c[c[p>>2]>>2]|0)+16|0;g=g>>>0<f>>>0?g:316344;f=c[g+8>>2]|0;b:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){r=g;e=+((c[r>>2]|0)>>>0)+4294967296.0*+(c[r+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,r)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){p=(c[r+8>>2]|0)==19;q=c[r>>2]|0;r=c[r+4>>2]|0;c[j>>2]=q;c[j+4>>2]=r;e=p?+(q>>>0)+4294967296.0*+(r|0):+h[j>>3];break}}e=0.0;break b}while(0);while(0);r=~~e&255;Bg[k&255](b,r);l=s;return 0}function Zm(b){b=b|0;var e=0.0,f=0,g=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+32|0;r=s;o=b+8|0;f=c[o>>2]|0;p=b+16|0;g=(c[c[p>>2]>>2]|0)+16|0;q=f-g|0;if((q|0)<=16){Wx(b,264158,s+16|0);r=0;l=s;return r|0}g=g>>>0<f>>>0?g:316344;f=c[g+8>>2]|0;a:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){n=g;e=+((c[n>>2]|0)>>>0)+4294967296.0*+(c[n+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,r)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){k=(c[r+8>>2]|0)==19;n=r;m=c[n>>2]|0;n=c[n+4>>2]|0;c[j>>2]=m;c[j+4>>2]=n;e=k?+(m>>>0)+4294967296.0*+(n|0):+h[j>>3];break}}e=0.0;break a}while(0);while(0);n=~~e;g=(c[c[p>>2]>>2]|0)+32|0;g=g>>>0<(c[o>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;b:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){m=g;e=+((c[m>>2]|0)>>>0)+4294967296.0*+(c[m+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,r)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){i=(c[r+8>>2]|0)==19;m=r;k=c[m>>2]|0;m=c[m+4>>2]|0;c[j>>2]=k;c[j+4>>2]=m;e=i?+(k>>>0)+4294967296.0*+(m|0):+h[j>>3];break}}e=0.0;break b}while(0);while(0);m=~~e;i=c[b+12>>2]|0;f=c[i+40>>2]|0;c:do if((c[f+8>>2]|0)>>>0>1)g=(c[f+12>>2]|0)+16|0;else{g=(c[f+16>>2]|0)+(((1<<d[f+7>>0])+3&2)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(k=g+16|0,(c[k>>2]|0)==2&(c[k+4>>2]|0)==0):0)break;f=c[g+28>>2]|0;if(!f){g=316344;break c}g=g+(f<<5)|0}}while(0);k=c[o>>2]|0;i=i+280+(((263167>>>0)%127|0)<<2)|0;f=c[i>>2]|0;if(JN(263167,f+16|0)|0){f=xx(b,263167,6)|0;c[i>>2]=f}c[k>>2]=f;c[k+8>>2]=(a[f+4>>0]|64)&255;f=c[o>>2]|0;c[o>>2]=f+16;Kx(b,g,f,f);b=c[o>>2]|0;f=b+-16|0;switch(c[b+-8>>2]&15){case 7:{k=(c[f>>2]|0)+24|0;break}case 2:{k=c[f>>2]|0;break}default:k=0}c[o>>2]=f;if((q|0)==32){p=(ig[c[k+2439680>>2]&63](k,n,m)|0)&255;r=c[o>>2]|0;q=r;c[q>>2]=p;c[q+4>>2]=0;c[r+8>>2]=19;c[o>>2]=r+16;r=1;l=s;return r|0}g=(c[c[p>>2]>>2]|0)+48|0;g=g>>>0<f>>>0?g:316344;f=c[g+8>>2]|0;d:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){r=g;e=+((c[r>>2]|0)>>>0)+4294967296.0*+(c[r+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,r)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){p=(c[r+8>>2]|0)==19;q=c[r>>2]|0;r=c[r+4>>2]|0;c[j>>2]=q;c[j+4>>2]=r;e=p?+(q>>>0)+4294967296.0*+(r|0):+h[j>>3];break}}e=0.0;break d}while(0);while(0);Eg[c[k+2439676>>2]&63](k,n,m,~~e&255);r=0;l=s;return r|0}function _m(b){b=b|0;var e=0.0,f=0,g=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+32|0;m=s;r=b+8|0;f=c[r>>2]|0;k=b+16|0;g=(c[c[k>>2]>>2]|0)+16|0;if((f-g|0)!=80){Wx(b,264113,s+16|0);l=s;return 0}g=g>>>0<f>>>0?g:316344;f=c[g+8>>2]|0;a:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){q=g;e=+((c[q>>2]|0)>>>0)+4294967296.0*+(c[q+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){o=(c[m+8>>2]|0)==19;q=m;p=c[q>>2]|0;q=c[q+4>>2]|0;c[j>>2]=p;c[j+4>>2]=q;e=o?+(p>>>0)+4294967296.0*+(q|0):+h[j>>3];break}}e=0.0;break a}while(0);while(0);q=~~e;g=(c[c[k>>2]>>2]|0)+32|0;g=g>>>0<(c[r>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;b:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){p=g;e=+((c[p>>2]|0)>>>0)+4294967296.0*+(c[p+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){n=(c[m+8>>2]|0)==19;p=m;o=c[p>>2]|0;p=c[p+4>>2]|0;c[j>>2]=o;c[j+4>>2]=p;e=n?+(o>>>0)+4294967296.0*+(p|0):+h[j>>3];break}}e=0.0;break b}while(0);while(0);p=~~e;g=(c[c[k>>2]>>2]|0)+48|0;g=g>>>0<(c[r>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;c:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){o=g;e=+((c[o>>2]|0)>>>0)+4294967296.0*+(c[o+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){i=(c[m+8>>2]|0)==19;o=m;n=c[o>>2]|0;o=c[o+4>>2]|0;c[j>>2]=n;c[j+4>>2]=o;e=i?+(n>>>0)+4294967296.0*+(o|0):+h[j>>3];break}}e=0.0;break c}while(0);while(0);o=~~e;g=(c[c[k>>2]>>2]|0)+64|0;g=g>>>0<(c[r>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;d:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){n=g;e=+((c[n>>2]|0)>>>0)+4294967296.0*+(c[n+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){g=(c[m+8>>2]|0)==19;n=m;i=c[n>>2]|0;n=c[n+4>>2]|0;c[j>>2]=i;c[j+4>>2]=n;e=g?+(i>>>0)+4294967296.0*+(n|0):+h[j>>3];break}}e=0.0;break d}while(0);while(0);n=~~e;g=(c[c[k>>2]>>2]|0)+80|0;g=g>>>0<(c[r>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;e:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){m=g;e=+((c[m>>2]|0)>>>0)+4294967296.0*+(c[m+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){i=(c[m+8>>2]|0)==19;k=c[m>>2]|0;m=c[m+4>>2]|0;c[j>>2]=k;c[j+4>>2]=m;e=i?+(k>>>0)+4294967296.0*+(m|0):+h[j>>3];break}}e=0.0;break e}while(0);while(0);m=~~e;i=c[b+12>>2]|0;f=c[i+40>>2]|0;f:do if((c[f+8>>2]|0)>>>0>1)g=(c[f+12>>2]|0)+16|0;else{g=(c[f+16>>2]|0)+(((1<<d[f+7>>0])+3&2)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(k=g+16|0,(c[k>>2]|0)==2&(c[k+4>>2]|0)==0):0)break;f=c[g+28>>2]|0;if(!f){g=316344;break f}g=g+(f<<5)|0}}while(0);k=c[r>>2]|0;i=i+280+(((263167>>>0)%127|0)<<2)|0;f=c[i>>2]|0;if(JN(263167,f+16|0)|0){f=xx(b,263167,6)|0;c[i>>2]=f}c[k>>2]=f;c[k+8>>2]=(a[f+4>>0]|64)&255;k=c[r>>2]|0;c[r>>2]=k+16;Kx(b,g,k,k);b=c[r>>2]|0;g=b+-16|0;switch(c[b+-8>>2]&15){case 7:{f=(c[g>>2]|0)+24|0;break}case 2:{f=c[g>>2]|0;break}default:f=0}c[r>>2]=g;Gg[c[f+2439684>>2]&7](f,q,p,o,n,m&255);l=s;return 0}function $m(b){b=b|0;var e=0.0,f=0,g=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+32|0;m=s;r=b+8|0;f=c[r>>2]|0;k=b+16|0;g=(c[c[k>>2]>>2]|0)+16|0;if((f-g|0)!=80){Wx(b,264072,s+16|0);l=s;return 0}g=g>>>0<f>>>0?g:316344;f=c[g+8>>2]|0;a:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){q=g;e=+((c[q>>2]|0)>>>0)+4294967296.0*+(c[q+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){o=(c[m+8>>2]|0)==19;q=m;p=c[q>>2]|0;q=c[q+4>>2]|0;c[j>>2]=p;c[j+4>>2]=q;e=o?+(p>>>0)+4294967296.0*+(q|0):+h[j>>3];break}}e=0.0;break a}while(0);while(0);q=~~e;g=(c[c[k>>2]>>2]|0)+32|0;g=g>>>0<(c[r>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;b:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){p=g;e=+((c[p>>2]|0)>>>0)+4294967296.0*+(c[p+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){n=(c[m+8>>2]|0)==19;p=m;o=c[p>>2]|0;p=c[p+4>>2]|0;c[j>>2]=o;c[j+4>>2]=p;e=n?+(o>>>0)+4294967296.0*+(p|0):+h[j>>3];break}}e=0.0;break b}while(0);while(0);p=~~e;g=(c[c[k>>2]>>2]|0)+48|0;g=g>>>0<(c[r>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;c:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){o=g;e=+((c[o>>2]|0)>>>0)+4294967296.0*+(c[o+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){i=(c[m+8>>2]|0)==19;o=m;n=c[o>>2]|0;o=c[o+4>>2]|0;c[j>>2]=n;c[j+4>>2]=o;e=i?+(n>>>0)+4294967296.0*+(o|0):+h[j>>3];break}}e=0.0;break c}while(0);while(0);o=~~e;g=(c[c[k>>2]>>2]|0)+64|0;g=g>>>0<(c[r>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;d:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){n=g;e=+((c[n>>2]|0)>>>0)+4294967296.0*+(c[n+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){g=(c[m+8>>2]|0)==19;n=m;i=c[n>>2]|0;n=c[n+4>>2]|0;c[j>>2]=i;c[j+4>>2]=n;e=g?+(i>>>0)+4294967296.0*+(n|0):+h[j>>3];break}}e=0.0;break d}while(0);while(0);n=~~e;g=(c[c[k>>2]>>2]|0)+80|0;g=g>>>0<(c[r>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;e:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){m=g;e=+((c[m>>2]|0)>>>0)+4294967296.0*+(c[m+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){i=(c[m+8>>2]|0)==19;k=c[m>>2]|0;m=c[m+4>>2]|0;c[j>>2]=k;c[j+4>>2]=m;e=i?+(k>>>0)+4294967296.0*+(m|0):+h[j>>3];break}}e=0.0;break e}while(0);while(0);m=~~e;i=c[b+12>>2]|0;f=c[i+40>>2]|0;f:do if((c[f+8>>2]|0)>>>0>1)g=(c[f+12>>2]|0)+16|0;else{g=(c[f+16>>2]|0)+(((1<<d[f+7>>0])+3&2)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(k=g+16|0,(c[k>>2]|0)==2&(c[k+4>>2]|0)==0):0)break;f=c[g+28>>2]|0;if(!f){g=316344;break f}g=g+(f<<5)|0}}while(0);k=c[r>>2]|0;i=i+280+(((263167>>>0)%127|0)<<2)|0;f=c[i>>2]|0;if(JN(263167,f+16|0)|0){f=xx(b,263167,6)|0;c[i>>2]=f}c[k>>2]=f;c[k+8>>2]=(a[f+4>>0]|64)&255;k=c[r>>2]|0;c[r>>2]=k+16;Kx(b,g,k,k);b=c[r>>2]|0;g=b+-16|0;switch(c[b+-8>>2]&15){case 7:{f=(c[g>>2]|0)+24|0;break}case 2:{f=c[g>>2]|0;break}default:f=0}c[r>>2]=g;Gg[c[f+2439688>>2]&7](f,q,p,o,n,m&255);l=s;return 0}function an(b){b=b|0;var e=0.0,f=0,g=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+32|0;m=s;r=b+8|0;f=c[r>>2]|0;k=b+16|0;g=(c[c[k>>2]>>2]|0)+16|0;if((f-g|0)!=80){Wx(b,264030,s+16|0);l=s;return 0}g=g>>>0<f>>>0?g:316344;f=c[g+8>>2]|0;a:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){q=g;e=+((c[q>>2]|0)>>>0)+4294967296.0*+(c[q+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){o=(c[m+8>>2]|0)==19;q=m;p=c[q>>2]|0;q=c[q+4>>2]|0;c[j>>2]=p;c[j+4>>2]=q;e=o?+(p>>>0)+4294967296.0*+(q|0):+h[j>>3];break}}e=0.0;break a}while(0);while(0);q=~~e;g=(c[c[k>>2]>>2]|0)+32|0;g=g>>>0<(c[r>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;b:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){p=g;e=+((c[p>>2]|0)>>>0)+4294967296.0*+(c[p+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){n=(c[m+8>>2]|0)==19;p=m;o=c[p>>2]|0;p=c[p+4>>2]|0;c[j>>2]=o;c[j+4>>2]=p;e=n?+(o>>>0)+4294967296.0*+(p|0):+h[j>>3];break}}e=0.0;break b}while(0);while(0);p=~~e;g=(c[c[k>>2]>>2]|0)+48|0;g=g>>>0<(c[r>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;c:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){o=g;e=+((c[o>>2]|0)>>>0)+4294967296.0*+(c[o+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){i=(c[m+8>>2]|0)==19;o=m;n=c[o>>2]|0;o=c[o+4>>2]|0;c[j>>2]=n;c[j+4>>2]=o;e=i?+(n>>>0)+4294967296.0*+(o|0):+h[j>>3];break}}e=0.0;break c}while(0);while(0);o=~~e;g=(c[c[k>>2]>>2]|0)+64|0;g=g>>>0<(c[r>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;d:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){n=g;e=+((c[n>>2]|0)>>>0)+4294967296.0*+(c[n+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){g=(c[m+8>>2]|0)==19;n=m;i=c[n>>2]|0;n=c[n+4>>2]|0;c[j>>2]=i;c[j+4>>2]=n;e=g?+(i>>>0)+4294967296.0*+(n|0):+h[j>>3];break}}e=0.0;break d}while(0);while(0);n=~~e;g=(c[c[k>>2]>>2]|0)+80|0;g=g>>>0<(c[r>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;e:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){m=g;e=+((c[m>>2]|0)>>>0)+4294967296.0*+(c[m+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){i=(c[m+8>>2]|0)==19;k=c[m>>2]|0;m=c[m+4>>2]|0;c[j>>2]=k;c[j+4>>2]=m;e=i?+(k>>>0)+4294967296.0*+(m|0):+h[j>>3];break}}e=0.0;break e}while(0);while(0);m=~~e;i=c[b+12>>2]|0;f=c[i+40>>2]|0;f:do if((c[f+8>>2]|0)>>>0>1)g=(c[f+12>>2]|0)+16|0;else{g=(c[f+16>>2]|0)+(((1<<d[f+7>>0])+3&2)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(k=g+16|0,(c[k>>2]|0)==2&(c[k+4>>2]|0)==0):0)break;f=c[g+28>>2]|0;if(!f){g=316344;break f}g=g+(f<<5)|0}}while(0);k=c[r>>2]|0;i=i+280+(((263167>>>0)%127|0)<<2)|0;f=c[i>>2]|0;if(JN(263167,f+16|0)|0){f=xx(b,263167,6)|0;c[i>>2]=f}c[k>>2]=f;c[k+8>>2]=(a[f+4>>0]|64)&255;k=c[r>>2]|0;c[r>>2]=k+16;Kx(b,g,k,k);b=c[r>>2]|0;g=b+-16|0;switch(c[b+-8>>2]&15){case 7:{f=(c[g>>2]|0)+24|0;break}case 2:{f=c[g>>2]|0;break}default:f=0}c[r>>2]=g;Gg[c[f+2439692>>2]&7](f,q,p,o,n,m&255);l=s;return 0}function bn(b){b=b|0;var e=0.0,f=0,g=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0;A=l;l=l+16|0;x=A;y=b+8|0;f=c[y>>2]|0;w=b+16|0;g=(c[c[w>>2]>>2]|0)+16|0;v=f-g|0;s=v>>4;if((v|0)>0){g=g>>>0<f>>>0?g:316344;f=c[g+8>>2]|0;a:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){u=g;e=+((c[u>>2]|0)>>>0)+4294967296.0*+(c[u+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,x)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){q=(c[x+8>>2]|0)==19;u=x;t=c[u>>2]|0;u=c[u+4>>2]|0;c[j>>2]=t;c[j+4>>2]=u;e=q?+(t>>>0)+4294967296.0*+(u|0):+h[j>>3];break}}e=0.0;break a}while(0);while(0);u=~~e;if((v|0)>32){g=(c[c[w>>2]>>2]|0)+32|0;g=g>>>0<(c[y>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;b:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){t=g;e=+((c[t>>2]|0)>>>0)+4294967296.0*+(c[t+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,x)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){p=(c[x+8>>2]|0)==19;t=x;q=c[t>>2]|0;t=c[t+4>>2]|0;c[j>>2]=q;c[j+4>>2]=t;e=p?+(q>>>0)+4294967296.0*+(t|0):+h[j>>3];break}}e=0.0;break b}while(0);while(0);n=~~e;g=(c[c[w>>2]>>2]|0)+48|0;g=g>>>0<(c[y>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;c:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){t=g;e=+((c[t>>2]|0)>>>0)+4294967296.0*+(c[t+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,x)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){p=(c[x+8>>2]|0)==19;t=x;q=c[t>>2]|0;t=c[t+4>>2]|0;c[j>>2]=q;c[j+4>>2]=t;e=p?+(q>>>0)+4294967296.0*+(t|0):+h[j>>3];break}}e=0.0;break c}while(0);while(0);o=~~e;if((s|0)!=3){i=c[c[w>>2]>>2]|0;f=i+64|0;k=c[y>>2]|0;g=f>>>0<k>>>0;d:do if(!((f|0)==316344|g^1)?(c[i+72>>2]&15|0)==5:0){q=x+8|0;p=1;g=0;while(1){m=((p|0)<0)<<31>>31;f=i+64|0;f=c[(f>>>0<k>>>0?f:316344)>>2]|0;i=yQ(p|0,m|0,-1,-1)|0;t=z;e:do if(t>>>0<0|((t|0)==0?i>>>0<(c[f+8>>2]|0)>>>0:0))f=(c[f+12>>2]|0)+(i<<4)|0;else{f=(c[f+16>>2]|0)+(((1<<d[f+7>>0])+-1&p)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(t=f+16|0,(c[t>>2]|0)==(p|0)?(c[t+4>>2]|0)==(m|0):0):0)break;i=c[f+28>>2]|0;if(!i){f=316344;break e}f=f+(i<<5)|0}}while(0);c[k>>2]=c[f>>2];c[k+4>>2]=c[f+4>>2];c[k+8>>2]=c[f+8>>2];c[k+12>>2]=c[f+12>>2];k=c[y>>2]|0;f=k+16|0;c[y>>2]=f;i=c[k+8>>2]|0;if((i|0)!=3)if((i|0)!=19){if((i&15|0)!=4)break;m=Ww((c[k>>2]|0)+16|0,x)|0;f=c[k>>2]|0;if((a[f+4>>0]|0)==4)i=d[f+7>>0]|0;else i=c[f+12>>2]|0;f=c[y>>2]|0;if((m|0)!=(i+1|0))break}i=f+-16|0;f=c[f+-8>>2]|0;f:do if((f|0)==3)e=+h[i>>3];else g:do if((f|0)==19){t=i;e=+((c[t>>2]|0)>>>0)+4294967296.0*+(c[t+4>>2]|0)}else{do if((f&15|0)==4){k=Ww((c[i>>2]|0)+16|0,x)|0;f=c[i>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((k|0)!=(f+1|0))break;k=(c[q>>2]|0)==19;t=x;m=c[t>>2]|0;t=c[t+4>>2]|0;c[j>>2]=m;c[j+4>>2]=t;e=k?+(m>>>0)+4294967296.0*+(t|0):+h[j>>3];break g}while(0);e=0.0;break f}while(0);while(0);a[332937+(p+-1)>>0]=~~e;g=g+1|0;k=(c[y>>2]|0)+-16|0;c[y>>2]=k;f=p+1|0;if((f|0)>=17){m=g;break d}p=f;i=c[c[w>>2]>>2]|0}c[y>>2]=f+-16;m=g}else r=74;while(0);if((r|0)==74){g=g?f:316344;f=c[g+8>>2]|0;h:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){t=g;e=+((c[t>>2]|0)>>>0)+4294967296.0*+(c[t+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,x)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){q=(c[x+8>>2]|0)==19;t=x;r=c[t>>2]|0;t=c[t+4>>2]|0;c[j>>2]=r;c[j+4>>2]=t;e=q?+(r>>>0)+4294967296.0*+(t|0):+h[j>>3];break}}e=0.0;break h}while(0);while(0);a[332937]=~~e;m=1}if((v|0)>64){g=(c[c[w>>2]>>2]|0)+80|0;g=g>>>0<(c[y>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;i:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){t=g;e=+((c[t>>2]|0)>>>0)+4294967296.0*+(c[t+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,x)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){q=(c[x+8>>2]|0)==19;t=x;r=c[t>>2]|0;t=c[t+4>>2]|0;c[j>>2]=r;c[j+4>>2]=t;e=q?+(r>>>0)+4294967296.0*+(t|0):+h[j>>3];break}}e=0.0;break i}while(0);while(0);r=~~e;if((s|0)!=5){g=(c[c[w>>2]>>2]|0)+96|0;g=g>>>0<(c[y>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;j:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){t=g;e=+((c[t>>2]|0)>>>0)+4294967296.0*+(c[t+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,x)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){q=(c[x+8>>2]|0)==19;t=x;s=c[t>>2]|0;t=c[t+4>>2]|0;c[j>>2]=s;c[j+4>>2]=t;e=q?+(s>>>0)+4294967296.0*+(t|0):+h[j>>3];break}}e=0.0;break j}while(0);while(0);s=~~e;if((v|0)>96){g=(c[c[w>>2]>>2]|0)+112|0;g=g>>>0<(c[y>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;k:do if((f|0)==3)e=+h[g>>3];else l:do if((f|0)==19){t=g;e=+((c[t>>2]|0)>>>0)+4294967296.0*+(c[t+4>>2]|0)}else{do if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,x)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)!=(f+1|0))break;p=(c[x+8>>2]|0)==19;t=x;q=c[t>>2]|0;t=c[t+4>>2]|0;c[j>>2]=q;c[j+4>>2]=t;e=p?+(q>>>0)+4294967296.0*+(t|0):+h[j>>3];break l}while(0);e=0.0;break k}while(0);while(0);t=~~e;if((v|0)>128){g=(c[c[w>>2]>>2]|0)+128|0;g=g>>>0<(c[y>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;m:do if((f|0)==3)e=+h[g>>3];else n:do if((f|0)==19){v=g;e=+((c[v>>2]|0)>>>0)+4294967296.0*+(c[v+4>>2]|0)}else{do if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,x)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)!=(f+1|0))break;p=(c[x+8>>2]|0)==19;v=x;q=c[v>>2]|0;v=c[v+4>>2]|0;c[j>>2]=q;c[j+4>>2]=v;e=p?+(q>>>0)+4294967296.0*+(v|0):+h[j>>3];break n}while(0);e=0.0;break m}while(0);while(0);p=~~e;g=(c[c[w>>2]>>2]|0)+144|0;g=g>>>0<(c[y>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;o:do if((f|0)==3)e=+h[g>>3];else p:do if((f|0)==19){x=g;e=+((c[x>>2]|0)>>>0)+4294967296.0*+(c[x+4>>2]|0)}else{do if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,x)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)!=(f+1|0))break;v=(c[x+8>>2]|0)==19;w=c[x>>2]|0;x=c[x+4>>2]|0;c[j>>2]=w;c[j+4>>2]=x;e=v?+(w>>>0)+4294967296.0*+(x|0):+h[j>>3];break p}while(0);e=0.0;break o}while(0);while(0);q=~~e}else{q=1;p=1}}else{t=0;q=1;p=1}}else{t=0;s=0;q=1;p=1}}else{t=0;s=0;r=1;q=1;p=1}}else{t=0;s=0;r=1;q=1;p=1;m=0}}else{t=0;s=0;r=1;q=1;p=1;o=0;n=0;m=0}}else{u=0;t=0;s=0;r=1;q=1;p=1;o=0;n=0;m=0}i=c[b+12>>2]|0;f=c[i+40>>2]|0;q:do if((c[f+8>>2]|0)>>>0>1)g=(c[f+12>>2]|0)+16|0;else{g=(c[f+16>>2]|0)+(((1<<d[f+7>>0])+3&2)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(x=g+16|0,(c[x>>2]|0)==2&(c[x+4>>2]|0)==0):0)break;f=c[g+28>>2]|0;if(!f){g=316344;break q}g=g+(f<<5)|0}}while(0);k=c[y>>2]|0;i=i+280+(((263167>>>0)%127|0)<<2)|0;f=c[i>>2]|0;if(JN(263167,f+16|0)|0){f=xx(b,263167,6)|0;c[i>>2]=f}c[k>>2]=f;c[k+8>>2]=(a[f+4>>0]|64)&255;f=c[y>>2]|0;c[y>>2]=f+16;Kx(b,g,f,f);b=c[y>>2]|0;f=b+-16|0;switch(c[b+-8>>2]&15){case 7:{b=(c[f>>2]|0)+24|0;c[y>>2]=f;x=b+2439700|0;x=c[x>>2]|0;y=b+16384|0;Lg[x&1](b,y,u,n,o,p,q,332937,m,r,s,t);l=A;return 0}case 2:{b=c[f>>2]|0;c[y>>2]=f;x=b+2439700|0;x=c[x>>2]|0;y=b+16384|0;Lg[x&1](b,y,u,n,o,p,q,332937,m,r,s,t);l=A;return 0}default:{b=0;c[y>>2]=f;x=b+2439700|0;x=c[x>>2]|0;y=b+16384|0;Lg[x&1](b,y,u,n,o,p,q,332937,m,r,s,t);l=A;return 0}}return 0}function cn(b){b=b|0;var e=0.0,f=0,g=0,i=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;m=p+16|0;o=p;i=c[b+12>>2]|0;f=c[i+40>>2]|0;a:do if((c[f+8>>2]|0)>>>0>1)g=(c[f+12>>2]|0)+16|0;else{g=(c[f+16>>2]|0)+(((1<<d[f+7>>0])+3&2)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(n=g+16|0,(c[n>>2]|0)==2&(c[n+4>>2]|0)==0):0)break;f=c[g+28>>2]|0;if(!f){g=316344;break a}g=g+(f<<5)|0}}while(0);n=b+8|0;k=c[n>>2]|0;i=i+280+(((263167>>>0)%127|0)<<2)|0;f=c[i>>2]|0;if(JN(263167,f+16|0)|0){f=xx(b,263167,6)|0;c[i>>2]=f}c[k>>2]=f;c[k+8>>2]=(a[f+4>>0]|64)&255;f=c[n>>2]|0;c[n>>2]=f+16;Kx(b,g,f,f);f=c[n>>2]|0;g=f+-16|0;switch(c[f+-8>>2]&15){case 7:{k=(c[g>>2]|0)+24|0;break}case 2:{k=c[g>>2]|0;break}default:k=0}c[n>>2]=g;i=(c[c[b+16>>2]>>2]|0)+16|0;switch(g-i>>4|0){case 0:{o=g;c[o>>2]=c[k+65408>>2];c[o+4>>2]=0;c[f+-8>>2]=19;c[n>>2]=f;o=1;l=p;return o|0}case 1:{g=i>>>0<g>>>0?i:316344;f=c[g+8>>2]|0;b:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){o=g;e=+((c[o>>2]|0)>>>0)+4294967296.0*+(c[o+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,o)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){b=(c[o+8>>2]|0)==19;m=c[o>>2]|0;o=c[o+4>>2]|0;c[j>>2]=m;c[j+4>>2]=o;e=b?+(m>>>0)+4294967296.0*+(o|0):+h[j>>3];break}}e=0.0;break b}while(0);while(0);o=c[n>>2]|0;c[o>>2]=(1<<(~~e&31)&c[k+65408>>2]|0)!=0&1;c[o+8>>2]=1;c[n>>2]=o+16;o=1;l=p;return o|0}default:{Wx(b,264002,m);o=0;l=p;return o|0}}return 0}function dn(b){b=b|0;var e=0.0,f=0,g=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;m=r+16|0;p=r;i=c[b+12>>2]|0;f=c[i+40>>2]|0;a:do if((c[f+8>>2]|0)>>>0>1)g=(c[f+12>>2]|0)+16|0;else{g=(c[f+16>>2]|0)+(((1<<d[f+7>>0])+3&2)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(q=g+16|0,(c[q>>2]|0)==2&(c[q+4>>2]|0)==0):0)break;f=c[g+28>>2]|0;if(!f){g=316344;break a}g=g+(f<<5)|0}}while(0);q=b+8|0;k=c[q>>2]|0;i=i+280+(((263167>>>0)%127|0)<<2)|0;f=c[i>>2]|0;if(JN(263167,f+16|0)|0){f=xx(b,263167,6)|0;c[i>>2]=f}c[k>>2]=f;c[k+8>>2]=(a[f+4>>0]|64)&255;o=c[q>>2]|0;c[q>>2]=o+16;Kx(b,g,o,o);o=c[q>>2]|0;f=o+-16|0;switch(c[o+-8>>2]&15){case 7:{o=(c[f>>2]|0)+24|0;break}case 2:{o=c[f>>2]|0;break}default:o=0}c[q>>2]=f;n=b+16|0;g=(c[c[n>>2]>>2]|0)+16|0;switch(f-g>>4|0){case 0:{n=jg[c[o+2439796>>2]&31](o,-1,-1,-1)|0;p=c[q>>2]|0;o=p;c[o>>2]=n;c[o+4>>2]=0;c[p+8>>2]=19;c[q>>2]=p+16;q=1;l=r;return q|0}case 1:{g=g>>>0<f>>>0?g:316344;f=c[g+8>>2]|0;b:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){p=g;e=+((c[p>>2]|0)>>>0)+4294967296.0*+(c[p+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,p)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){m=(c[p+8>>2]|0)==19;n=c[p>>2]|0;p=c[p+4>>2]|0;c[j>>2]=n;c[j+4>>2]=p;e=m?+(n>>>0)+4294967296.0*+(p|0):+h[j>>3];break}}e=0.0;break b}while(0);while(0);o=jg[c[o+2439796>>2]&31](o,~~e&31,-1,-1)|0;p=c[q>>2]|0;c[p>>2]=(o|0)!=0&1;c[p+8>>2]=1;c[q>>2]=p+16;q=1;l=r;return q|0}case 3:{g=g>>>0<f>>>0?g:316344;f=c[g+8>>2]|0;c:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){m=g;e=+((c[m>>2]|0)>>>0)+4294967296.0*+(c[m+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,p)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){k=(c[p+8>>2]|0)==19;m=p;b=c[m>>2]|0;m=c[m+4>>2]|0;c[j>>2]=b;c[j+4>>2]=m;e=k?+(b>>>0)+4294967296.0*+(m|0):+h[j>>3];break}}e=0.0;break c}while(0);while(0);b=~~e&31;g=(c[c[n>>2]>>2]|0)+32|0;g=g>>>0<(c[q>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;d:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){m=g;e=+((c[m>>2]|0)>>>0)+4294967296.0*+(c[m+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,p)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){i=(c[p+8>>2]|0)==19;m=p;k=c[m>>2]|0;m=c[m+4>>2]|0;c[j>>2]=k;c[j+4>>2]=m;e=i?+(k>>>0)+4294967296.0*+(m|0):+h[j>>3];break}}e=0.0;break d}while(0);while(0);k=~~e;g=(c[c[n>>2]>>2]|0)+48|0;g=g>>>0<(c[q>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;e:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){p=g;e=+((c[p>>2]|0)>>>0)+4294967296.0*+(c[p+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,p)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){m=(c[p+8>>2]|0)==19;n=c[p>>2]|0;p=c[p+4>>2]|0;c[j>>2]=n;c[j+4>>2]=p;e=m?+(n>>>0)+4294967296.0*+(p|0):+h[j>>3];break}}e=0.0;break e}while(0);while(0);o=jg[c[o+2439796>>2]&31](o,b,k,~~e)|0;p=c[q>>2]|0;c[p>>2]=(o|0)!=0&1;c[p+8>>2]=1;c[q>>2]=p+16;q=1;l=r;return q|0}default:{Wx(b,263957,m);q=0;l=r;return q|0}}return 0}function en(b){b=b|0;var e=0,f=0,g=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=l;l=l+64|0;o=C+32|0;z=C+24|0;r=C+16|0;y=C;A=C+48|0;B=C+44|0;v=b+8|0;n=c[v>>2]|0;w=b+16|0;s=n-((c[c[w>>2]>>2]|0)+16)|0;u=s>>4;m=n;if((s|0)<=0){Wx(b,263937,C+40|0);l=C;return 0}p=b+12|0;k=c[p>>2]|0;e=c[k+40>>2]|0;a:do if((c[e+8>>2]|0)>>>0>1)i=(c[e+12>>2]|0)+16|0;else{f=(c[e+16>>2]|0)+(((1<<d[e+7>>0])+3&2)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(x=f+16|0,(c[x>>2]|0)==2&(c[x+4>>2]|0)==0):0)break;e=c[f+28>>2]|0;if(!e){i=316344;break a}f=f+(e<<5)|0}i=f}while(0);f=k+280+(((263167>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(263167,e+16|0)|0){e=xx(b,263167,6)|0;c[f>>2]=e}c[n>>2]=e;c[m+8>>2]=(a[e+4>>0]|64)&255;x=c[v>>2]|0;c[v>>2]=x+16;Kx(b,i,x,x);x=c[v>>2]|0;e=x+-16|0;switch(c[x+-8>>2]&15){case 7:{x=(c[e>>2]|0)+24|0;break}case 2:{x=c[e>>2]|0;break}default:x=0}c[v>>2]=e;c[A>>2]=-1;c[B>>2]=-1;f=(c[c[w>>2]>>2]|0)+16|0;f=f>>>0<e>>>0?f:316344;e=c[f+8>>2]|0;b:do if((e|0)==3)g=+h[f>>3];else do if((e|0)==19){t=f;g=+((c[t>>2]|0)>>>0)+4294967296.0*+(c[t+4>>2]|0)}else{if((e&15|0)==4){i=Ww((c[f>>2]|0)+16|0,y)|0;e=c[f>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((i|0)==(e+1|0)){m=(c[y+8>>2]|0)==19;t=y;n=c[t>>2]|0;t=c[t+4>>2]|0;c[j>>2]=n;c[j+4>>2]=t;g=m?+(n>>>0)+4294967296.0*+(t|0):+h[j>>3];break}}g=0.0;break b}while(0);while(0);t=~~g;if((t|0)>=64){Wx(b,263918,o);l=C;return 0}if((t|0)>-1){e=x+65764+(t*66|0)+60|0;e=d[e>>0]|d[e+1>>0]<<8;c[A>>2]=(e&65535)>>>8&15;c[B>>2]=e&7;e=((e<<9&65535)<<16>>16>>13&65535)<<24>>24}else e=8;if((s|0)>16){i=c[c[w>>2]>>2]|0;k=i+32|0;f=c[v>>2]|0;k=k>>>0<f>>>0?k:316344;m=c[k+8>>2]|0;if((m|0)!=19){if(((m&15)+-3|0)>>>0<2){switch(m&15){case 4:{f=k;q=39;break}case 3:{if((c[(c[p>>2]|0)+12>>2]|0)>0){Sw(b);i=c[c[w>>2]>>2]|0;f=c[v>>2]|0}q=i+32|0;f=q>>>0<f>>>0?q:316344;Xw(b,f);q=39;break}default:f=0}if((q|0)==39)f=(c[f>>2]|0)+16|0;if(!(Ii(f,A,B)|0)){Wx(b,263867,r);l=C;return 0}}}else{r=c[k>>2]|0;c[A>>2]=(r|0)%12|0;c[B>>2]=(r|0)/12|0}if((s|0)>32){i=(c[c[w>>2]>>2]|0)+48|0;i=i>>>0<(c[v>>2]|0)>>>0?i:316344;f=c[i+8>>2]|0;c:do if((f|0)==3)g=+h[i>>3];else do if((f|0)==19){r=i;g=+((c[r>>2]|0)>>>0)+4294967296.0*+(c[r+4>>2]|0)}else{if((f&15|0)==4){k=Ww((c[i>>2]|0)+16|0,y)|0;f=c[i>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((k|0)==(f+1|0)){p=(c[y+8>>2]|0)==19;r=y;q=c[r>>2]|0;r=c[r+4>>2]|0;c[j>>2]=q;c[j+4>>2]=r;g=p?+(q>>>0)+4294967296.0*+(r|0):+h[j>>3];break}}g=0.0;break c}while(0);while(0);k=~~g;if((u|0)!=3){i=(c[c[w>>2]>>2]|0)+64|0;i=i>>>0<(c[v>>2]|0)>>>0?i:316344;f=c[i+8>>2]|0;d:do if((f|0)==3)g=+h[i>>3];else do if((f|0)==19){r=i;g=+((c[r>>2]|0)>>>0)+4294967296.0*+(c[r+4>>2]|0)}else{if((f&15|0)==4){m=Ww((c[i>>2]|0)+16|0,y)|0;f=c[i>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((m|0)==(f+1|0)){p=(c[y+8>>2]|0)==19;r=y;q=c[r>>2]|0;r=c[r+4>>2]|0;c[j>>2]=q;c[j+4>>2]=r;g=p?+(q>>>0)+4294967296.0*+(r|0):+h[j>>3];break}}g=0.0;break d}while(0);while(0);i=~~g;if((s|0)>64){m=(c[c[w>>2]>>2]|0)+80|0;m=m>>>0<(c[v>>2]|0)>>>0?m:316344;f=c[m+8>>2]|0;e:do if((f|0)==3)g=+h[m>>3];else f:do if((f|0)==19){s=m;g=+((c[s>>2]|0)>>>0)+4294967296.0*+(c[s+4>>2]|0)}else{do if((f&15|0)==4){n=Ww((c[m>>2]|0)+16|0,y)|0;f=c[m>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((n|0)!=(f+1|0))break;q=(c[y+8>>2]|0)==19;s=y;r=c[s>>2]|0;s=c[s+4>>2]|0;c[j>>2]=r;c[j+4>>2]=s;g=q?+(r>>>0)+4294967296.0*+(s|0):+h[j>>3];break f}while(0);g=0.0;break e}while(0);while(0);f=~~g;if((u|0)!=5){m=(c[c[w>>2]>>2]|0)+96|0;m=m>>>0<(c[v>>2]|0)>>>0?m:316344;e=c[m+8>>2]|0;g:do if((e|0)==3)g=+h[m>>3];else h:do if((e|0)==19){y=m;g=+((c[y>>2]|0)>>>0)+4294967296.0*+(c[y+4>>2]|0)}else{do if((e&15|0)==4){n=Ww((c[m>>2]|0)+16|0,y)|0;e=c[m>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((n|0)!=(e+1|0))break;v=(c[y+8>>2]|0)==19;w=c[y>>2]|0;y=c[y+4>>2]|0;c[j>>2]=w;c[j+4>>2]=y;g=v?+(w>>>0)+4294967296.0*+(y|0):+h[j>>3];break h}while(0);g=0.0;break g}while(0);while(0);e=~~g}}else f=15;if(i>>>0>=4){Wx(b,263901,z);l=C;return 0}}else{i=0;f=15}}else{k=-1;i=0;f=15}}else{k=-1;i=0;f=15}Bg[c[x+2439744>>2]&255](x,i);Ig[c[x+2439748>>2]&7](x,t,c[A>>2]|0,c[B>>2]|0,k,i,f&15,e);l=C;return 0}function fn(b){b=b|0;var e=0,f=0,g=0,i=0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,B=0,C=0,D=0,E=0.0;D=l;l=l+16|0;B=D;C=b+8|0;e=c[C>>2]|0;m=b+16|0;f=(c[c[m>>2]>>2]|0)+16|0;i=e-f|0;o=i>>4;if((i|0)>16){f=f>>>0<e>>>0?f:316344;e=c[f+8>>2]|0;a:do if((e|0)==3)k=+h[f>>3];else do if((e|0)==19){y=f;k=+((c[y>>2]|0)>>>0)+4294967296.0*+(c[y+4>>2]|0)}else{if((e&15|0)==4){g=Ww((c[f>>2]|0)+16|0,B)|0;e=c[f>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((g|0)==(e+1|0)){w=(c[B+8>>2]|0)==19;y=B;x=c[y>>2]|0;y=c[y+4>>2]|0;c[j>>2]=x;c[j+4>>2]=y;k=w?+(x>>>0)+4294967296.0*+(y|0):+h[j>>3];break}}k=0.0;break a}while(0);while(0);y=~~k;f=(c[c[m>>2]>>2]|0)+32|0;f=f>>>0<(c[C>>2]|0)>>>0?f:316344;e=c[f+8>>2]|0;b:do if((e|0)==3)k=+h[f>>3];else do if((e|0)==19){x=f;k=+((c[x>>2]|0)>>>0)+4294967296.0*+(c[x+4>>2]|0)}else{if((e&15|0)==4){g=Ww((c[f>>2]|0)+16|0,B)|0;e=c[f>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((g|0)==(e+1|0)){v=(c[B+8>>2]|0)==19;x=B;w=c[x>>2]|0;x=c[x+4>>2]|0;c[j>>2]=w;c[j+4>>2]=x;k=v?+(w>>>0)+4294967296.0*+(x|0):+h[j>>3];break}}k=0.0;break b}while(0);while(0);x=~~k;if((i|0)>48){f=(c[c[m>>2]>>2]|0)+48|0;f=f>>>0<(c[C>>2]|0)>>>0?f:316344;e=c[f+8>>2]|0;c:do if((e|0)==3)k=+h[f>>3];else do if((e|0)==19){w=f;k=+((c[w>>2]|0)>>>0)+4294967296.0*+(c[w+4>>2]|0)}else{if((e&15|0)==4){g=Ww((c[f>>2]|0)+16|0,B)|0;e=c[f>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((g|0)==(e+1|0)){u=(c[B+8>>2]|0)==19;w=B;v=c[w>>2]|0;w=c[w+4>>2]|0;c[j>>2]=v;c[j+4>>2]=w;k=u?+(v>>>0)+4294967296.0*+(w|0):+h[j>>3];break}}k=0.0;break c}while(0);while(0);w=~~k;f=(c[c[m>>2]>>2]|0)+64|0;f=f>>>0<(c[C>>2]|0)>>>0?f:316344;e=c[f+8>>2]|0;d:do if((e|0)==3)k=+h[f>>3];else do if((e|0)==19){v=f;k=+((c[v>>2]|0)>>>0)+4294967296.0*+(c[v+4>>2]|0)}else{if((e&15|0)==4){g=Ww((c[f>>2]|0)+16|0,B)|0;e=c[f>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((g|0)==(e+1|0)){t=(c[B+8>>2]|0)==19;v=B;u=c[v>>2]|0;v=c[v+4>>2]|0;c[j>>2]=u;c[j+4>>2]=v;k=t?+(u>>>0)+4294967296.0*+(v|0):+h[j>>3];break}}k=0.0;break d}while(0);while(0);r=~~k;if((i|0)>80){f=(c[c[m>>2]>>2]|0)+80|0;f=f>>>0<(c[C>>2]|0)>>>0?f:316344;e=c[f+8>>2]|0;e:do if((e|0)==3)k=+h[f>>3];else do if((e|0)==19){v=f;k=+((c[v>>2]|0)>>>0)+4294967296.0*+(c[v+4>>2]|0)}else{if((e&15|0)==4){g=Ww((c[f>>2]|0)+16|0,B)|0;e=c[f>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((g|0)==(e+1|0)){t=(c[B+8>>2]|0)==19;v=B;u=c[v>>2]|0;v=c[v+4>>2]|0;c[j>>2]=u;c[j+4>>2]=v;k=t?+(u>>>0)+4294967296.0*+(v|0):+h[j>>3];break}}k=0.0;break e}while(0);while(0);s=~~k;f=(c[c[m>>2]>>2]|0)+96|0;f=f>>>0<(c[C>>2]|0)>>>0?f:316344;e=c[f+8>>2]|0;f:do if((e|0)==3)k=+h[f>>3];else do if((e|0)==19){v=f;k=+((c[v>>2]|0)>>>0)+4294967296.0*+(c[v+4>>2]|0)}else{if((e&15|0)==4){g=Ww((c[f>>2]|0)+16|0,B)|0;e=c[f>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((g|0)==(e+1|0)){t=(c[B+8>>2]|0)==19;v=B;u=c[v>>2]|0;v=c[v+4>>2]|0;c[j>>2]=u;c[j+4>>2]=v;k=t?+(u>>>0)+4294967296.0*+(v|0):+h[j>>3];break}}k=0.0;break f}while(0);while(0);t=~~k;if((o|0)!=6){f=(c[c[m>>2]>>2]|0)+112|0;f=f>>>0<(c[C>>2]|0)>>>0?f:316344;e=c[f+8>>2]|0;g:do if((e|0)==3)k=+h[f>>3];else do if((e|0)==19){v=f;k=+((c[v>>2]|0)>>>0)+4294967296.0*+(c[v+4>>2]|0)}else{if((e&15|0)==4){g=Ww((c[f>>2]|0)+16|0,B)|0;e=c[f>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((g|0)==(e+1|0)){g=(c[B+8>>2]|0)==19;v=B;u=c[v>>2]|0;v=c[v+4>>2]|0;c[j>>2]=u;c[j+4>>2]=v;k=g?+(u>>>0)+4294967296.0*+(v|0):+h[j>>3];break}}k=0.0;break g}while(0);while(0);u=~~k&255;if((i|0)>112){f=(c[c[m>>2]>>2]|0)+128|0;f=f>>>0<(c[C>>2]|0)>>>0?f:316344;e=c[f+8>>2]|0;h:do if((e|0)==3)k=+h[f>>3];else i:do if((e|0)==19){v=f;k=+((c[v>>2]|0)>>>0)+4294967296.0*+(c[v+4>>2]|0)}else{do if((e&15|0)==4){g=Ww((c[f>>2]|0)+16|0,B)|0;e=c[f>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((g|0)!=(e+1|0))break;g=(c[B+8>>2]|0)==19;v=B;i=c[v>>2]|0;v=c[v+4>>2]|0;c[j>>2]=i;c[j+4>>2]=v;k=g?+(i>>>0)+4294967296.0*+(v|0):+h[j>>3];break i}while(0);k=0.0;break h}while(0);while(0);v=~~k;if(((o|0)!=8?(n=c[c[m>>2]>>2]|0,o=n+144|0,p=c[C>>2]|0,!(o>>>0>=p>>>0|(o|0)==316344)):0)?(c[n+152>>2]&15|0)==6:0){e=p+-16|0;if((e|0)!=316344?(c[p+-8>>2]&15|0)==0:0){c[C>>2]=e;e=-1;n=b+12|0}else{n=b+12|0;e=c[(c[(c[n>>2]|0)+40>>2]|0)+16>>2]|0;while(1){if((c[e+24>>2]|0)==19?(o=e+16|0,(c[o>>2]|0)==0&(c[o+4>>2]|0)==0):0){q=111;break}f=c[e+28>>2]|0;if(!f){e=316344;break}e=e+(f<<5)|0}c[p>>2]=c[e>>2];c[p+4>>2]=c[e+4>>2];c[p+8>>2]=c[e+8>>2];c[p+12>>2]=c[e+12>>2];e=c[C>>2]|0;c[C>>2]=e+16;f=c[e+8>>2]|0;do if((f|0)!=19){j:while(1){switch(f|0){case 3:{q=118;break j}case 19:{q=121;break j}default:{}}if((f&15|0)!=4){q=129;break}f=Ww((c[e>>2]|0)+16|0,B)|0;e=c[e>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((f|0)!=(e+1|0)){q=129;break}e=B;f=c[B+8>>2]|0}do if((q|0)==118){E=+h[e>>3];k=+A(+E);if(E!=k){q=129;break}if(!(k>=-9223372036854775808.0&k<9223372036854775808.0)){q=129;break}e=~~k>>>0;q=128}else if((q|0)==121){e=c[e>>2]|0;q=128}while(0);if((q|0)==128){q=130;break}else if((q|0)==129){c[C>>2]=(c[C>>2]|0)+-16;q=140;break}}else{e=c[e>>2]|0;q=130}while(0);do if((q|0)==130){m=(c[C>>2]|0)+-16|0;c[C>>2]=m;if(!e){q=140;break}i=((e|0)<0)<<31>>31;f=c[(c[n>>2]|0)+40>>2]|0;g=yQ(e|0,i|0,-1,-1)|0;p=z;k:do if(p>>>0<0|((p|0)==0?g>>>0<(c[f+8>>2]|0)>>>0:0))f=(c[f+12>>2]|0)+(g<<4)|0;else{f=(c[f+16>>2]|0)+(((1<<d[f+7>>0])+-1&e)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(p=f+16|0,(c[p>>2]|0)==(e|0)?(c[p+4>>2]|0)==(i|0):0):0)break;g=c[f+28>>2]|0;if(!g){f=316344;break k}f=f+(g<<5)|0}}while(0);c[m>>2]=c[f>>2];c[m+4>>2]=c[f+4>>2];c[m+8>>2]=c[f+8>>2];c[m+12>>2]=c[f+12>>2];c[C>>2]=(c[C>>2]|0)+16;$v(b,-1001e3,0,0)}while(0);if((q|0)==140){p=c[n>>2]|0;e=p+40|0;switch(c[p+48>>2]&63){case 4:{e=d[(c[e>>2]|0)+7>>0]|0;break}case 20:{e=c[(c[e>>2]|0)+12>>2]|0;break}case 7:{e=c[(c[e>>2]|0)+12>>2]|0;break}case 5:{e=Ex(c[e>>2]|0)|0;break}default:e=0}e=e+1|0}$v(b,-1001e3,e,((e|0)<0)<<31>>31)}c[B>>2]=b;m=B+4|0;c[m>>2]=e;g=c[n>>2]|0;e=c[g+40>>2]|0;l:do if((c[e+8>>2]|0)>>>0>1)f=(c[e+12>>2]|0)+16|0;else{f=(c[e+16>>2]|0)+(((1<<d[e+7>>0])+3&2)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(p=f+16|0,(c[p>>2]|0)==2&(c[p+4>>2]|0)==0):0)break;e=c[f+28>>2]|0;if(!e){f=316344;break l}f=f+(e<<5)|0}}while(0);i=c[C>>2]|0;g=g+280+(((263167>>>0)%127|0)<<2)|0;e=c[g>>2]|0;if(JN(263167,e+16|0)|0){e=xx(b,263167,6)|0;c[g>>2]=e}c[i>>2]=e;c[i+8>>2]=(a[e+4>>0]|64)&255;p=c[C>>2]|0;c[C>>2]=p+16;Kx(b,f,p,p);p=c[C>>2]|0;f=p+-16|0;switch(c[p+-8>>2]&15){case 7:{e=(c[f>>2]|0)+24|0;break}case 2:{e=c[f>>2]|0;break}default:e=0}c[C>>2]=f;Mg[c[e+2439708>>2]&1](e,e+32768|0,e+16384|0,y,x,w,r,s,t,u,v,14,B);g=c[m>>2]|0;if((g|0)>-1){i=c[C>>2]|0;e=c[(c[(c[n>>2]|0)+40>>2]|0)+16>>2]|0;while(1){if((c[e+24>>2]|0)==19?(B=e+16|0,(c[B>>2]|0)==0&(c[B+4>>2]|0)==0):0){q=165;break}f=c[e+28>>2]|0;if(!f){e=316344;break}e=e+(f<<5)|0}c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];c[i+8>>2]=c[e+8>>2];c[i+12>>2]=c[e+12>>2];c[C>>2]=(c[C>>2]|0)+16;x=((g|0)<0)<<31>>31;$v(b,-1001e3,g,x);B=c[C>>2]|0;y=B;c[y>>2]=g;c[y+4>>2]=x;c[B+8>>2]=19;c[C>>2]=B+16;$v(b,-1001e3,0,0)}l=D;return 0}}else v=1}else{v=1;u=-1}}else{v=1;u=-1;t=0;s=0}}else{w=30;v=1;u=-1;t=0;s=0;r=17}}else{y=0;x=0;w=30;v=1;u=-1;t=0;s=0;r=17}o=b+12|0;g=c[o>>2]|0;e=c[g+40>>2]|0;m:do if((c[e+8>>2]|0)>>>0>1)f=(c[e+12>>2]|0)+16|0;else{f=(c[e+16>>2]|0)+(((1<<d[e+7>>0])+3&2)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(B=f+16|0,(c[B>>2]|0)==2&(c[B+4>>2]|0)==0):0)break;e=c[f+28>>2]|0;if(!e){f=316344;break m}f=f+(e<<5)|0}}while(0);i=c[C>>2]|0;g=g+280+(((263167>>>0)%127|0)<<2)|0;e=c[g>>2]|0;if(JN(263167,e+16|0)|0){e=xx(b,263167,6)|0;c[g>>2]=e}c[i>>2]=e;c[i+8>>2]=(a[e+4>>0]|64)&255;m=c[C>>2]|0;c[C>>2]=m+16;Kx(b,f,m,m);m=c[C>>2]|0;n=m+-16|0;switch(c[m+-8>>2]&15){case 7:{p=(c[n>>2]|0)+24|0;break}case 2:{p=c[n>>2]|0;break}default:p=0}c[C>>2]=n;q=c[p+2439704>>2]|0;i=c[o>>2]|0;e=c[i+40>>2]|0;n:do if((c[e+8>>2]|0)>>>0>1)g=(c[e+12>>2]|0)+16|0;else{f=(c[e+16>>2]|0)+(((1<<d[e+7>>0])+3&2)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(B=f+16|0,(c[B>>2]|0)==2&(c[B+4>>2]|0)==0):0)break;e=c[f+28>>2]|0;if(!e){g=316344;break n}f=f+(e<<5)|0}g=f}while(0);f=i+280+(((263167>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(263167,e+16|0)|0){e=xx(b,263167,6)|0;c[f>>2]=e}c[n>>2]=e;c[m+-8>>2]=(a[e+4>>0]|64)&255;f=c[C>>2]|0;c[C>>2]=f+16;Kx(b,g,f,f);b=c[C>>2]|0;f=b+-16|0;switch(c[b+-8>>2]&15){case 7:{e=(c[f>>2]|0)+24|0;break}case 2:{e=c[f>>2]|0;break}default:e=0}c[C>>2]=f;Kg[q&15](e,p+32768|0,p+16384|0,y,x,w,r,s,t,u,v);l=D;return 0}function gn(b){b=b|0;var e=0.0,f=0,g=0,i=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;m=p;o=b+8|0;f=c[o>>2]|0;k=b+16|0;g=(c[c[k>>2]>>2]|0)+16|0;if((f-g|0)!=32){Wx(b,263840,p+16|0);o=0;l=p;return o|0}g=g>>>0<f>>>0?g:316344;f=c[g+8>>2]|0;a:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){n=g;e=+((c[n>>2]|0)>>>0)+4294967296.0*+(c[n+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){g=(c[m+8>>2]|0)==19;n=m;i=c[n>>2]|0;n=c[n+4>>2]|0;c[j>>2]=i;c[j+4>>2]=n;e=g?+(i>>>0)+4294967296.0*+(n|0):+h[j>>3];break}}e=0.0;break a}while(0);while(0);n=~~e;g=(c[c[k>>2]>>2]|0)+32|0;g=g>>>0<(c[o>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;b:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){m=g;e=+((c[m>>2]|0)>>>0)+4294967296.0*+(c[m+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){i=(c[m+8>>2]|0)==19;k=c[m>>2]|0;m=c[m+4>>2]|0;c[j>>2]=k;c[j+4>>2]=m;e=i?+(k>>>0)+4294967296.0*+(m|0):+h[j>>3];break}}e=0.0;break b}while(0);while(0);m=~~e;i=c[b+12>>2]|0;f=c[i+40>>2]|0;c:do if((c[f+8>>2]|0)>>>0>1)g=(c[f+12>>2]|0)+16|0;else{g=(c[f+16>>2]|0)+(((1<<d[f+7>>0])+3&2)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(k=g+16|0,(c[k>>2]|0)==2&(c[k+4>>2]|0)==0):0)break;f=c[g+28>>2]|0;if(!f){g=316344;break c}g=g+(f<<5)|0}}while(0);k=c[o>>2]|0;i=i+280+(((263167>>>0)%127|0)<<2)|0;f=c[i>>2]|0;if(JN(263167,f+16|0)|0){f=xx(b,263167,6)|0;c[i>>2]=f}c[k>>2]=f;c[k+8>>2]=(a[f+4>>0]|64)&255;k=c[o>>2]|0;c[o>>2]=k+16;Kx(b,g,k,k);b=c[o>>2]|0;g=b+-16|0;switch(c[b+-8>>2]&15){case 7:{f=(c[g>>2]|0)+24|0;break}case 2:{f=c[g>>2]|0;break}default:f=0}c[o>>2]=g;m=(jg[c[f+2439716>>2]&31](f,f+32768|0,n,m)|0)&255;b=c[o>>2]|0;n=b;c[n>>2]=m;c[n+4>>2]=0;c[b+8>>2]=19;c[o>>2]=b+16;o=1;l=p;return o|0}function hn(b){b=b|0;var e=0.0,f=0,g=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+32|0;m=q;p=b+8|0;f=c[p>>2]|0;k=b+16|0;g=(c[c[k>>2]>>2]|0)+16|0;if((f-g|0)!=48){Wx(b,263840,q+16|0);l=q;return 0}g=g>>>0<f>>>0?g:316344;f=c[g+8>>2]|0;a:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){o=g;e=+((c[o>>2]|0)>>>0)+4294967296.0*+(c[o+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){i=(c[m+8>>2]|0)==19;o=m;n=c[o>>2]|0;o=c[o+4>>2]|0;c[j>>2]=n;c[j+4>>2]=o;e=i?+(n>>>0)+4294967296.0*+(o|0):+h[j>>3];break}}e=0.0;break a}while(0);while(0);o=~~e;g=(c[c[k>>2]>>2]|0)+32|0;g=g>>>0<(c[p>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;b:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){n=g;e=+((c[n>>2]|0)>>>0)+4294967296.0*+(c[n+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){g=(c[m+8>>2]|0)==19;n=m;i=c[n>>2]|0;n=c[n+4>>2]|0;c[j>>2]=i;c[j+4>>2]=n;e=g?+(i>>>0)+4294967296.0*+(n|0):+h[j>>3];break}}e=0.0;break b}while(0);while(0);n=~~e;g=(c[c[k>>2]>>2]|0)+48|0;g=g>>>0<(c[p>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;c:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){m=g;e=+((c[m>>2]|0)>>>0)+4294967296.0*+(c[m+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){i=(c[m+8>>2]|0)==19;k=c[m>>2]|0;m=c[m+4>>2]|0;c[j>>2]=k;c[j+4>>2]=m;e=i?+(k>>>0)+4294967296.0*+(m|0):+h[j>>3];break}}e=0.0;break c}while(0);while(0);m=~~e&255;i=c[b+12>>2]|0;f=c[i+40>>2]|0;d:do if((c[f+8>>2]|0)>>>0>1)g=(c[f+12>>2]|0)+16|0;else{g=(c[f+16>>2]|0)+(((1<<d[f+7>>0])+3&2)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(k=g+16|0,(c[k>>2]|0)==2&(c[k+4>>2]|0)==0):0)break;f=c[g+28>>2]|0;if(!f){g=316344;break d}g=g+(f<<5)|0}}while(0);k=c[p>>2]|0;i=i+280+(((263167>>>0)%127|0)<<2)|0;f=c[i>>2]|0;if(JN(263167,f+16|0)|0){f=xx(b,263167,6)|0;c[i>>2]=f}c[k>>2]=f;c[k+8>>2]=(a[f+4>>0]|64)&255;k=c[p>>2]|0;c[p>>2]=k+16;Kx(b,g,k,k);b=c[p>>2]|0;g=b+-16|0;switch(c[b+-8>>2]&15){case 7:{f=(c[g>>2]|0)+24|0;break}case 2:{f=c[g>>2]|0;break}default:f=0}c[p>>2]=g;Fg[c[f+2439712>>2]&15](f,f+32768|0,o,n,m);l=q;return 0}function jn(b){b=b|0;var e=0,f=0.0,g=0,i=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;n=o;i=c[b+12>>2]|0;e=c[i+40>>2]|0;a:do if((c[e+8>>2]|0)>>>0>1)g=(c[e+12>>2]|0)+16|0;else{g=(c[e+16>>2]|0)+(((1<<d[e+7>>0])+3&2)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(m=g+16|0,(c[m>>2]|0)==2&(c[m+4>>2]|0)==0):0)break;e=c[g+28>>2]|0;if(!e){g=316344;break a}g=g+(e<<5)|0}}while(0);m=b+8|0;k=c[m>>2]|0;i=i+280+(((263167>>>0)%127|0)<<2)|0;e=c[i>>2]|0;if(JN(263167,e+16|0)|0){e=xx(b,263167,6)|0;c[i>>2]=e}c[k>>2]=e;c[k+8>>2]=(a[e+4>>0]|64)&255;k=c[m>>2]|0;c[m>>2]=k+16;Kx(b,g,k,k);k=c[m>>2]|0;e=k+-16|0;switch(c[k+-8>>2]&15){case 7:{k=(c[e>>2]|0)+24|0;break}case 2:{k=c[e>>2]|0;break}default:k=0}c[m>>2]=e;g=(c[c[b+16>>2]>>2]|0)+16|0;g=g>>>0<e>>>0?g:316344;e=c[g+8>>2]|0;b:do if((e|0)==3)f=+h[g>>3];else do if((e|0)==19){n=g;f=+((c[n>>2]|0)>>>0)+4294967296.0*+(c[n+4>>2]|0)}else{if((e&15|0)==4){i=Ww((c[g>>2]|0)+16|0,n)|0;e=c[g>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((i|0)==(e+1|0)){i=(c[n+8>>2]|0)==19;b=c[n>>2]|0;n=c[n+4>>2]|0;c[j>>2]=b;c[j+4>>2]=n;f=i?+(b>>>0)+4294967296.0*+(n|0):+h[j>>3];break}}f=0.0;break b}while(0);while(0);e=~~f;if(!((e|0)>-1&e>>>0<81920)){n=0;l=o;return n|0}n=c[m>>2]|0;b=n;c[b>>2]=d[k+e>>0];c[b+4>>2]=0;c[n+8>>2]=19;c[m>>2]=n+16;n=1;l=o;return n|0}function kn(b){b=b|0;var e=0.0,f=0,g=0,i=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;o=p;i=c[b+12>>2]|0;f=c[i+40>>2]|0;a:do if((c[f+8>>2]|0)>>>0>1)g=(c[f+12>>2]|0)+16|0;else{g=(c[f+16>>2]|0)+(((1<<d[f+7>>0])+3&2)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(n=g+16|0,(c[n>>2]|0)==2&(c[n+4>>2]|0)==0):0)break;f=c[g+28>>2]|0;if(!f){g=316344;break a}g=g+(f<<5)|0}}while(0);m=b+8|0;k=c[m>>2]|0;i=i+280+(((263167>>>0)%127|0)<<2)|0;f=c[i>>2]|0;if(JN(263167,f+16|0)|0){f=xx(b,263167,6)|0;c[i>>2]=f}c[k>>2]=f;c[k+8>>2]=(a[f+4>>0]|64)&255;n=c[m>>2]|0;c[m>>2]=n+16;Kx(b,g,n,n);n=c[m>>2]|0;f=n+-16|0;switch(c[n+-8>>2]&15){case 7:{n=(c[f>>2]|0)+24|0;break}case 2:{n=c[f>>2]|0;break}default:n=0}c[m>>2]=f;b=b+16|0;g=(c[c[b>>2]>>2]|0)+16|0;g=g>>>0<f>>>0?g:316344;f=c[g+8>>2]|0;b:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){k=g;e=+((c[k>>2]|0)>>>0)+4294967296.0*+(c[k+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,o)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){g=(c[o+8>>2]|0)==19;k=o;i=c[k>>2]|0;k=c[k+4>>2]|0;c[j>>2]=i;c[j+4>>2]=k;e=g?+(i>>>0)+4294967296.0*+(k|0):+h[j>>3];break}}e=0.0;break b}while(0);while(0);k=~~e;g=(c[c[b>>2]>>2]|0)+32|0;g=g>>>0<(c[m>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;c:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){o=g;e=+((c[o>>2]|0)>>>0)+4294967296.0*+(c[o+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,o)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){b=(c[o+8>>2]|0)==19;m=c[o>>2]|0;o=c[o+4>>2]|0;c[j>>2]=m;c[j+4>>2]=o;e=b?+(m>>>0)+4294967296.0*+(o|0):+h[j>>3];break}}e=0.0;break c}while(0);while(0);if(!((k|0)>-1&k>>>0<81920)){l=p;return 0}a[n+k>>0]=~~e;l=p;return 0}function ln(b){b=b|0;var e=0.0,f=0,g=0,i=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;k=o;n=b+8|0;f=c[n>>2]|0;g=(c[c[b+16>>2]>>2]|0)+16|0;if((f-g|0)!=16){Wx(b,263807,o+16|0);n=0;l=o;return n|0}g=g>>>0<f>>>0?g:316344;f=c[g+8>>2]|0;a:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){m=g;e=+((c[m>>2]|0)>>>0)+4294967296.0*+(c[m+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,k)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){i=(c[k+8>>2]|0)==19;m=k;k=c[m>>2]|0;m=c[m+4>>2]|0;c[j>>2]=k;c[j+4>>2]=m;e=i?+(k>>>0)+4294967296.0*+(m|0):+h[j>>3];break}}e=0.0;break a}while(0);while(0);m=~~e;if(!((m|0)>-1&m>>>0<163840)){n=0;l=o;return n|0}i=c[b+12>>2]|0;f=c[i+40>>2]|0;b:do if((c[f+8>>2]|0)>>>0>1)g=(c[f+12>>2]|0)+16|0;else{g=(c[f+16>>2]|0)+(((1<<d[f+7>>0])+3&2)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(k=g+16|0,(c[k>>2]|0)==2&(c[k+4>>2]|0)==0):0)break;f=c[g+28>>2]|0;if(!f){g=316344;break b}g=g+(f<<5)|0}}while(0);k=c[n>>2]|0;i=i+280+(((263167>>>0)%127|0)<<2)|0;f=c[i>>2]|0;if(JN(263167,f+16|0)|0){f=xx(b,263167,6)|0;c[i>>2]=f}c[k>>2]=f;c[k+8>>2]=(a[f+4>>0]|64)&255;i=c[n>>2]|0;c[n>>2]=i+16;Kx(b,g,i,i);g=c[n>>2]|0;i=g+-16|0;switch(c[g+-8>>2]&15){case 7:{f=(c[i>>2]|0)+24|0;break}case 2:{f=c[i>>2]|0;break}default:f=0}c[n>>2]=i;k=d[f+(m>>>1)>>0]|0;b=i;c[b>>2]=m&1|0?k>>>4:k&15;c[b+4>>2]=0;c[g+-8>>2]=19;c[n>>2]=g;n=1;l=o;return n|0}function mn(b){b=b|0;var e=0,f=0,g=0.0,i=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+32|0;m=p;o=b+8|0;e=c[o>>2]|0;k=b+16|0;f=(c[c[k>>2]>>2]|0)+16|0;if((e-f|0)!=32){Wx(b,263768,p+16|0);l=p;return 0}f=f>>>0<e>>>0?f:316344;e=c[f+8>>2]|0;a:do if((e|0)==3)g=+h[f>>3];else do if((e|0)==19){n=f;g=+((c[n>>2]|0)>>>0)+4294967296.0*+(c[n+4>>2]|0)}else{if((e&15|0)==4){i=Ww((c[f>>2]|0)+16|0,m)|0;e=c[f>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((i|0)==(e+1|0)){f=(c[m+8>>2]|0)==19;n=m;i=c[n>>2]|0;n=c[n+4>>2]|0;c[j>>2]=i;c[j+4>>2]=n;g=f?+(i>>>0)+4294967296.0*+(n|0):+h[j>>3];break}}g=0.0;break a}while(0);while(0);n=~~g;f=(c[c[k>>2]>>2]|0)+32|0;f=f>>>0<(c[o>>2]|0)>>>0?f:316344;e=c[f+8>>2]|0;b:do if((e|0)==3)g=+h[f>>3];else do if((e|0)==19){m=f;g=+((c[m>>2]|0)>>>0)+4294967296.0*+(c[m+4>>2]|0)}else{if((e&15|0)==4){i=Ww((c[f>>2]|0)+16|0,m)|0;e=c[f>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((i|0)==(e+1|0)){i=(c[m+8>>2]|0)==19;k=c[m>>2]|0;m=c[m+4>>2]|0;c[j>>2]=k;c[j+4>>2]=m;g=i?+(k>>>0)+4294967296.0*+(m|0):+h[j>>3];break}}g=0.0;break b}while(0);while(0);if(!((n|0)>-1&n>>>0<163840)){l=p;return 0}m=~~g;i=c[b+12>>2]|0;e=c[i+40>>2]|0;c:do if((c[e+8>>2]|0)>>>0>1)f=(c[e+12>>2]|0)+16|0;else{f=(c[e+16>>2]|0)+(((1<<d[e+7>>0])+3&2)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(k=f+16|0,(c[k>>2]|0)==2&(c[k+4>>2]|0)==0):0)break;e=c[f+28>>2]|0;if(!e){f=316344;break c}f=f+(e<<5)|0}}while(0);k=c[o>>2]|0;i=i+280+(((263167>>>0)%127|0)<<2)|0;e=c[i>>2]|0;if(JN(263167,e+16|0)|0){e=xx(b,263167,6)|0;c[i>>2]=e}c[k>>2]=e;c[k+8>>2]=(a[e+4>>0]|64)&255;k=c[o>>2]|0;c[o>>2]=k+16;Kx(b,f,k,k);b=c[o>>2]|0;f=b+-16|0;switch(c[b+-8>>2]&15){case 7:{e=(c[f>>2]|0)+24|0;break}case 2:{e=c[f>>2]|0;break}default:e=0}c[o>>2]=f;i=e+(n>>>1)|0;e=d[i>>0]|0;if(!(n&1)){f=e&240;a[i>>0]=f;e=m&15}else{f=e&15;a[i>>0]=f;e=m<<4&4080}a[i>>0]=e|f;l=p;return 0}function nn(b){b=b|0;var e=0,f=0,g=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;o=r+16|0;m=r;q=b+8|0;e=c[q>>2]|0;k=b+16|0;f=(c[c[k>>2]>>2]|0)+16|0;if((e-f|0)==48){f=f>>>0<e>>>0?f:316344;e=c[f+8>>2]|0;a:do if((e|0)==3)g=+h[f>>3];else do if((e|0)==19){p=f;g=+((c[p>>2]|0)>>>0)+4294967296.0*+(c[p+4>>2]|0)}else{if((e&15|0)==4){i=Ww((c[f>>2]|0)+16|0,m)|0;e=c[f>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((i|0)==(e+1|0)){i=(c[m+8>>2]|0)==19;p=m;n=c[p>>2]|0;p=c[p+4>>2]|0;c[j>>2]=n;c[j+4>>2]=p;g=i?+(n>>>0)+4294967296.0*+(p|0):+h[j>>3];break}}g=0.0;break a}while(0);while(0);p=~~g;f=(c[c[k>>2]>>2]|0)+32|0;f=f>>>0<(c[q>>2]|0)>>>0?f:316344;e=c[f+8>>2]|0;b:do if((e|0)==3)g=+h[f>>3];else do if((e|0)==19){n=f;g=+((c[n>>2]|0)>>>0)+4294967296.0*+(c[n+4>>2]|0)}else{if((e&15|0)==4){i=Ww((c[f>>2]|0)+16|0,m)|0;e=c[f>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((i|0)==(e+1|0)){f=(c[m+8>>2]|0)==19;n=m;i=c[n>>2]|0;n=c[n+4>>2]|0;c[j>>2]=i;c[j+4>>2]=n;g=f?+(i>>>0)+4294967296.0*+(n|0):+h[j>>3];break}}g=0.0;break b}while(0);while(0);n=~~g;f=(c[c[k>>2]>>2]|0)+48|0;f=f>>>0<(c[q>>2]|0)>>>0?f:316344;e=c[f+8>>2]|0;c:do if((e|0)==3)g=+h[f>>3];else do if((e|0)==19){m=f;g=+((c[m>>2]|0)>>>0)+4294967296.0*+(c[m+4>>2]|0)}else{if((e&15|0)==4){i=Ww((c[f>>2]|0)+16|0,m)|0;e=c[f>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((i|0)==(e+1|0)){i=(c[m+8>>2]|0)==19;k=c[m>>2]|0;m=c[m+4>>2]|0;c[j>>2]=k;c[j+4>>2]=m;g=i?+(k>>>0)+4294967296.0*+(m|0):+h[j>>3];break}}g=0.0;break c}while(0);while(0);m=~~g;k=81920-m|0;if(!((n|0)>(k|0)|((p|0)>(k|0)|(m>>>0>81920|(n|p|m|0)<0)))){i=c[b+12>>2]|0;e=c[i+40>>2]|0;d:do if((c[e+8>>2]|0)>>>0>1)f=(c[e+12>>2]|0)+16|0;else{f=(c[e+16>>2]|0)+(((1<<d[e+7>>0])+3&2)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(o=f+16|0,(c[o>>2]|0)==2&(c[o+4>>2]|0)==0):0)break;e=c[f+28>>2]|0;if(!e){f=316344;break d}f=f+(e<<5)|0}}while(0);k=c[q>>2]|0;i=i+280+(((263167>>>0)%127|0)<<2)|0;e=c[i>>2]|0;if(JN(263167,e+16|0)|0){e=xx(b,263167,6)|0;c[i>>2]=e}c[k>>2]=e;c[k+8>>2]=(a[e+4>>0]|64)&255;o=c[q>>2]|0;c[q>>2]=o+16;Kx(b,f,o,o);b=c[q>>2]|0;f=b+-16|0;switch(c[b+-8>>2]&15){case 7:{e=(c[f>>2]|0)+24|0;break}case 2:{e=c[f>>2]|0;break}default:e=0}c[q>>2]=f;PQ(e+p|0,e+n|0,m|0)|0;l=r;return 0}}Wx(b,263729,o);l=r;return 0}function on(b){b=b|0;var e=0,f=0,g=0.0,i=0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+32|0;p=s+16|0;n=s;r=b+8|0;e=c[r>>2]|0;k=b+16|0;f=(c[c[k>>2]>>2]|0)+16|0;if((e-f|0)==48){f=f>>>0<e>>>0?f:316344;e=c[f+8>>2]|0;a:do if((e|0)==3)g=+h[f>>3];else do if((e|0)==19){q=f;g=+((c[q>>2]|0)>>>0)+4294967296.0*+(c[q+4>>2]|0)}else{if((e&15|0)==4){i=Ww((c[f>>2]|0)+16|0,n)|0;e=c[f>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((i|0)==(e+1|0)){i=(c[n+8>>2]|0)==19;q=n;o=c[q>>2]|0;q=c[q+4>>2]|0;c[j>>2]=o;c[j+4>>2]=q;g=i?+(o>>>0)+4294967296.0*+(q|0):+h[j>>3];break}}g=0.0;break a}while(0);while(0);q=~~g;f=(c[c[k>>2]>>2]|0)+32|0;f=f>>>0<(c[r>>2]|0)>>>0?f:316344;e=c[f+8>>2]|0;b:do if((e|0)==3)m=+h[f>>3];else{do if((e|0)==19){o=f;g=+((c[o>>2]|0)>>>0)+4294967296.0*+(c[o+4>>2]|0)}else{if((e&15|0)==4){i=Ww((c[f>>2]|0)+16|0,n)|0;e=c[f>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((i|0)==(e+1|0)){f=(c[n+8>>2]|0)==19;o=n;i=c[o>>2]|0;o=c[o+4>>2]|0;c[j>>2]=i;c[j+4>>2]=o;g=f?+(i>>>0)+4294967296.0*+(o|0):+h[j>>3];break}}m=0.0;break b}while(0);m=g}while(0);f=(c[c[k>>2]>>2]|0)+48|0;f=f>>>0<(c[r>>2]|0)>>>0?f:316344;e=c[f+8>>2]|0;c:do if((e|0)==3)g=+h[f>>3];else do if((e|0)==19){o=f;g=+((c[o>>2]|0)>>>0)+4294967296.0*+(c[o+4>>2]|0)}else{if((e&15|0)==4){i=Ww((c[f>>2]|0)+16|0,n)|0;e=c[f>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((i|0)==(e+1|0)){k=(c[n+8>>2]|0)==19;o=n;n=c[o>>2]|0;o=c[o+4>>2]|0;c[j>>2]=n;c[j+4>>2]=o;g=k?+(n>>>0)+4294967296.0*+(o|0):+h[j>>3];break}}g=0.0;break c}while(0);while(0);o=~~g;if(!((q|0)>(81920-o|0)|(o>>>0>81920|(o|q|0)<0))){n=~~m&255;i=c[b+12>>2]|0;e=c[i+40>>2]|0;d:do if((c[e+8>>2]|0)>>>0>1)f=(c[e+12>>2]|0)+16|0;else{f=(c[e+16>>2]|0)+(((1<<d[e+7>>0])+3&2)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(p=f+16|0,(c[p>>2]|0)==2&(c[p+4>>2]|0)==0):0)break;e=c[f+28>>2]|0;if(!e){f=316344;break d}f=f+(e<<5)|0}}while(0);k=c[r>>2]|0;i=i+280+(((263167>>>0)%127|0)<<2)|0;e=c[i>>2]|0;if(JN(263167,e+16|0)|0){e=xx(b,263167,6)|0;c[i>>2]=e}c[k>>2]=e;c[k+8>>2]=(a[e+4>>0]|64)&255;p=c[r>>2]|0;c[r>>2]=p+16;Kx(b,f,p,p);b=c[r>>2]|0;f=b+-16|0;switch(c[b+-8>>2]&15){case 7:{e=(c[f>>2]|0)+24|0;break}case 2:{e=c[f>>2]|0;break}default:e=0}c[r>>2]=f;RQ(e+q|0,n|0,o|0)|0;l=s;return 0}}Wx(b,263690,p);l=s;return 0}function pn(e){e=e|0;var f=0,g=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+32|0;p=x+16|0;w=x;t=e+8|0;o=c[t>>2]|0;u=e+16|0;v=o-((c[c[u>>2]>>2]|0)+16)|0;q=e+12|0;m=c[q>>2]|0;f=c[m+40>>2]|0;n=o;a:do if((c[f+8>>2]|0)>>>0>1)k=(c[f+12>>2]|0)+16|0;else{i=(c[f+16>>2]|0)+(((1<<d[f+7>>0])+3&2)<<5)|0;while(1){if((c[i+24>>2]|0)==19?(r=i+16|0,(c[r>>2]|0)==2&(c[r+4>>2]|0)==0):0)break;f=c[i+28>>2]|0;if(!f){k=316344;break a}i=i+(f<<5)|0}k=i}while(0);i=m+280+(((263167>>>0)%127|0)<<2)|0;f=c[i>>2]|0;if(JN(263167,f+16|0)|0){f=xx(e,263167,6)|0;c[i>>2]=f}c[o>>2]=f;c[n+8>>2]=(a[f+4>>0]|64)&255;n=c[t>>2]|0;c[t>>2]=n+16;Kx(e,k,n,n);n=c[t>>2]|0;o=n+-16|0;switch(c[n+-8>>2]&15){case 7:{r=(c[o>>2]|0)+24|0;break}case 2:{r=c[o>>2]|0;break}default:r=0}c[t>>2]=o;if((v|0)<=0){l=x;return 0}m=c[q>>2]|0;f=c[m+40>>2]|0;b:do if((c[f+8>>2]|0)>>>0>1)k=(c[f+12>>2]|0)+16|0;else{i=(c[f+16>>2]|0)+(((1<<d[f+7>>0])+3&2)<<5)|0;while(1){if((c[i+24>>2]|0)==19?(k=i+16|0,(c[k>>2]|0)==2&(c[k+4>>2]|0)==0):0)break;f=c[i+28>>2]|0;if(!f){k=316344;break b}i=i+(f<<5)|0}k=i}while(0);i=m+280+(((282698>>>0)%127|0)<<2)|0;f=c[i>>2]|0;if(JN(282698,f+16|0)|0){f=xx(e,282698,8)|0;c[i>>2]=f}c[o>>2]=f;c[n+-8>>2]=(a[f+4>>0]|64)&255;f=c[t>>2]|0;c[t>>2]=f+16;Kx(e,k,f,f);f=c[t>>2]|0;i=f+-16|0;c[f>>2]=c[i>>2];c[f+4>>2]=c[i+4>>2];c[f+8>>2]=c[i+8>>2];c[f+12>>2]=c[i+12>>2];f=c[t>>2]|0;i=f+16|0;c[t>>2]=i;k=c[c[u>>2]>>2]|0;k=k>>>0<f>>>0?k+16|0:316344;c[i>>2]=c[k>>2];c[i+4>>2]=c[k+4>>2];c[i+8>>2]=c[k+8>>2];c[i+12>>2]=c[k+12>>2];i=c[t>>2]|0;c[t>>2]=i+16;i=i+-16|0;k=e+106|0;f=(b[k>>1]|0)+1<<16>>16;b[k>>1]=f;if((f&65535)>199){if(f<<16>>16==200)mw(e,279953,p);if((f&65535)>224)qw(e,6)}f=e+104|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;if(!(uw(e,i,1)|0))Sx(e);b[f>>1]=(b[f>>1]|0)+-1<<16>>16;b[k>>1]=(b[k>>1]|0)+-1<<16>>16;f=c[t>>2]|0;switch(c[f+-8>>2]&15){case 4:{i=f;f=f+-16|0;s=38;break}case 3:{if((c[(c[q>>2]|0)+12>>2]|0)>0){Sw(e);f=c[t>>2]|0}f=f+-16|0;Xw(e,f);i=c[t>>2]|0;s=38;break}default:m=0}if((s|0)==38){m=(c[f>>2]|0)+16|0;f=i}f=f+-32|0;c[t>>2]=f;if((v|0)==16)f=15;else{i=(c[c[u>>2]>>2]|0)+32|0;i=i>>>0<f>>>0?i:316344;f=c[i+8>>2]|0;c:do if((f|0)==3)g=+h[i>>3];else do if((f|0)==19){w=i;g=+((c[w>>2]|0)>>>0)+4294967296.0*+(c[w+4>>2]|0)}else{if((f&15|0)==4){k=Ww((c[i>>2]|0)+16|0,w)|0;f=c[i>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((k|0)==(f+1|0)){u=(c[w+8>>2]|0)==19;v=c[w>>2]|0;w=c[w+4>>2]|0;c[j>>2]=v;c[j+4>>2]=w;g=u?+(v>>>0)+4294967296.0*+(w|0):+h[j>>3];break}}g=0.0;break c}while(0);while(0);f=~~g&255}w=c[r+2588588>>2]|0;Dg[c[w>>2]&63](c[w+36>>2]|0,m|0?m:287343,f);l=x;return 0}function qn(b){b=b|0;var e=0.0,f=0,g=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+32|0;o=u+24|0;p=u+16|0;s=u;t=b+8|0;n=c[t>>2]|0;q=b+16|0;r=n-((c[c[q>>2]>>2]|0)+16)|0;k=c[b+12>>2]|0;f=c[k+40>>2]|0;m=n;a:do if((c[f+8>>2]|0)>>>0>1)i=(c[f+12>>2]|0)+16|0;else{g=(c[f+16>>2]|0)+(((1<<d[f+7>>0])+3&2)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(i=g+16|0,(c[i>>2]|0)==2&(c[i+4>>2]|0)==0):0)break;f=c[g+28>>2]|0;if(!f){i=316344;break a}g=g+(f<<5)|0}i=g}while(0);g=k+280+(((263167>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(263167,f+16|0)|0){f=xx(b,263167,6)|0;c[g>>2]=f}c[n>>2]=f;c[m+8>>2]=(a[f+4>>0]|64)&255;n=c[t>>2]|0;c[t>>2]=n+16;Kx(b,i,n,n);n=c[t>>2]|0;f=n+-16|0;switch(c[n+-8>>2]&15){case 7:{k=(c[f>>2]|0)+24|0;break}case 2:{k=c[f>>2]|0;break}default:k=0}c[t>>2]=f;if((r|0)<=0){Wx(b,263648,o);t=0;l=u;return t|0}g=(c[c[q>>2]>>2]|0)+16|0;g=g>>>0<f>>>0?g:316344;f=c[g+8>>2]|0;b:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){o=g;e=+((c[o>>2]|0)>>>0)+4294967296.0*+(c[o+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,s)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){m=(c[s+8>>2]|0)==19;o=s;n=c[o>>2]|0;o=c[o+4>>2]|0;c[j>>2]=n;c[j+4>>2]=o;e=m?+(n>>>0)+4294967296.0*+(o|0):+h[j>>3];break}}e=0.0;break b}while(0);while(0);f=~~e;if(f>>>0>=256){Wx(b,263615,p);t=0;l=u;return t|0}k=k+2439832+(f<<2)|0;m=c[k>>2]|0;if((r|0)>16){g=(c[c[q>>2]>>2]|0)+32|0;g=g>>>0<(c[t>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;c:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){s=g;e=+((c[s>>2]|0)>>>0)+4294967296.0*+(c[s+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,s)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){q=(c[s+8>>2]|0)==19;r=c[s>>2]|0;s=c[s+4>>2]|0;c[j>>2]=r;c[j+4>>2]=s;e=q?+(r>>>0)+4294967296.0*+(s|0):+h[j>>3];break}}e=0.0;break c}while(0);while(0);c[k>>2]=~~e}s=c[t>>2]|0;r=s;c[r>>2]=m;c[r+4>>2]=((m|0)<0)<<31>>31;c[s+8>>2]=19;c[t>>2]=s+16;t=1;l=u;return t|0}function rn(b){b=b|0;var e=0,f=0,g=0,i=0,j=0,k=0.0;g=c[b+12>>2]|0;e=c[g+40>>2]|0;a:do if((c[e+8>>2]|0)>>>0>1)f=(c[e+12>>2]|0)+16|0;else{f=(c[e+16>>2]|0)+(((1<<(d[e+7>>0]|0))+3&2)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(j=f+16|0,(c[j>>2]|0)==2&(c[j+4>>2]|0)==0):0)break;e=c[f+28>>2]|0;if(!e){f=316344;break a}f=f+(e<<5)|0}}while(0);j=b+8|0;i=c[j>>2]|0;g=g+280+(((263167>>>0)%127|0)<<2)|0;e=c[g>>2]|0;if(JN(263167,e+16|0)|0){e=xx(b,263167,6)|0;c[g>>2]=e}c[i>>2]=e;c[i+8>>2]=(a[e+4>>0]|64)&255;i=c[j>>2]|0;c[j>>2]=i+16;Kx(b,f,i,i);b=c[j>>2]|0;f=b+-16|0;switch(c[b+-8>>2]&15){case 7:{e=(c[f>>2]|0)+24|0;break}case 2:{e=c[f>>2]|0;break}default:e=0}c[j>>2]=f;k=+eg[c[e+2439764>>2]&1](e);b=c[j>>2]|0;h[b>>3]=k;c[b+8>>2]=3;c[j>>2]=b+16;return 1}function sn(b){b=b|0;var e=0,f=0,g=0,h=0,i=0;g=c[b+12>>2]|0;e=c[g+40>>2]|0;a:do if((c[e+8>>2]|0)>>>0>1)f=(c[e+12>>2]|0)+16|0;else{f=(c[e+16>>2]|0)+(((1<<(d[e+7>>0]|0))+3&2)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(i=f+16|0,(c[i>>2]|0)==2&(c[i+4>>2]|0)==0):0)break;e=c[f+28>>2]|0;if(!e){f=316344;break a}f=f+(e<<5)|0}}while(0);i=b+8|0;h=c[i>>2]|0;g=g+280+(((263167>>>0)%127|0)<<2)|0;e=c[g>>2]|0;if(JN(263167,e+16|0)|0){e=xx(b,263167,6)|0;c[g>>2]=e}c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;h=c[i>>2]|0;c[i>>2]=h+16;Kx(b,f,h,h);b=c[i>>2]|0;f=b+-16|0;switch(c[b+-8>>2]&15){case 7:{e=(c[f>>2]|0)+24|0;break}case 2:{e=c[f>>2]|0;break}default:e=0}c[i>>2]=f;b=c[e+2588588>>2]|0;vg[c[b+8>>2]&511](c[b+36>>2]|0);return 0}function tn(e){e=e|0;var f=0,g=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=l;l=l+32|0;p=B+16|0;x=B;q=e+12|0;k=c[q>>2]|0;f=c[k+40>>2]|0;a:do if((c[f+8>>2]|0)>>>0>1)g=(c[f+12>>2]|0)+16|0;else{g=(c[f+16>>2]|0)+(((1<<d[f+7>>0])+3&2)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(A=g+16|0,(c[A>>2]|0)==2&(c[A+4>>2]|0)==0):0)break;f=c[g+28>>2]|0;if(!f){g=316344;break a}g=g+(f<<5)|0}}while(0);A=e+8|0;m=c[A>>2]|0;k=k+280+(((263167>>>0)%127|0)<<2)|0;f=c[k>>2]|0;if(JN(263167,f+16|0)|0){f=xx(e,263167,6)|0;c[k>>2]=f}c[m>>2]=f;c[m+8>>2]=(a[f+4>>0]|64)&255;n=c[A>>2]|0;c[A>>2]=n+16;Kx(e,g,n,n);n=c[A>>2]|0;o=n+-16|0;switch(c[n+-8>>2]&15){case 7:{y=(c[o>>2]|0)+24|0;break}case 2:{y=c[o>>2]|0;break}default:y=0}c[A>>2]=o;u=e+16|0;w=o-((c[c[u>>2]>>2]|0)+16)|0;v=w>>4;if((w|0)<=0){A=0;l=B;return A|0}m=c[q>>2]|0;f=c[m+40>>2]|0;b:do if((c[f+8>>2]|0)>>>0>1)k=(c[f+12>>2]|0)+16|0;else{g=(c[f+16>>2]|0)+(((1<<d[f+7>>0])+3&2)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(t=g+16|0,(c[t>>2]|0)==2&(c[t+4>>2]|0)==0):0)break;f=c[g+28>>2]|0;if(!f){k=316344;break b}g=g+(f<<5)|0}k=g}while(0);g=m+280+(((282698>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(282698,f+16|0)|0){f=xx(e,282698,8)|0;c[g>>2]=f}c[o>>2]=f;c[n+-8>>2]=(a[f+4>>0]|64)&255;f=c[A>>2]|0;c[A>>2]=f+16;Kx(e,k,f,f);f=c[A>>2]|0;g=f+-16|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[f+12>>2]=c[g+12>>2];f=c[A>>2]|0;g=f+16|0;c[A>>2]=g;k=c[c[u>>2]>>2]|0;k=k>>>0<f>>>0?k+16|0:316344;c[g>>2]=c[k>>2];c[g+4>>2]=c[k+4>>2];c[g+8>>2]=c[k+8>>2];c[g+12>>2]=c[k+12>>2];g=c[A>>2]|0;c[A>>2]=g+16;g=g+-16|0;k=e+106|0;f=(b[k>>1]|0)+1<<16>>16;b[k>>1]=f;if((f&65535)>199){if(f<<16>>16==200)mw(e,279953,p);if((f&65535)>224)qw(e,6)}f=e+104|0;b[f>>1]=(b[f>>1]|0)+1<<16>>16;if(!(uw(e,g,1)|0))Sx(e);b[f>>1]=(b[f>>1]|0)+-1<<16>>16;b[k>>1]=(b[k>>1]|0)+-1<<16>>16;f=c[A>>2]|0;switch(c[f+-8>>2]&15){case 4:{g=f;f=f+-16|0;z=38;break}case 3:{if((c[(c[q>>2]|0)+12>>2]|0)>0){Sw(e);f=c[A>>2]|0}f=f+-16|0;Xw(e,f);g=c[A>>2]|0;z=38;break}default:m=0}if((z|0)==38){m=(c[f>>2]|0)+16|0;f=g}f=f+-32|0;c[A>>2]=f;if((w|0)>32){g=(c[c[u>>2]>>2]|0)+32|0;g=g>>>0<f>>>0?g:316344;f=c[g+8>>2]|0;c:do if((f|0)==3)i=+h[g>>3];else do if((f|0)==19){t=g;i=+((c[t>>2]|0)>>>0)+4294967296.0*+(c[t+4>>2]|0)}else{if((f&15|0)==4){k=Ww((c[g>>2]|0)+16|0,x)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((k|0)==(f+1|0)){r=(c[x+8>>2]|0)==19;t=x;s=c[t>>2]|0;t=c[t+4>>2]|0;c[j>>2]=s;c[j+4>>2]=t;i=r?+(s>>>0)+4294967296.0*+(t|0):+h[j>>3];break}}i=0.0;break c}while(0);while(0);e=~~i;g=(c[c[u>>2]>>2]|0)+48|0;g=g>>>0<(c[A>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;d:do if((f|0)==3)i=+h[g>>3];else do if((f|0)==19){t=g;i=+((c[t>>2]|0)>>>0)+4294967296.0*+(c[t+4>>2]|0)}else{if((f&15|0)==4){k=Ww((c[g>>2]|0)+16|0,x)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((k|0)==(f+1|0)){r=(c[x+8>>2]|0)==19;t=x;s=c[t>>2]|0;t=c[t+4>>2]|0;c[j>>2]=s;c[j+4>>2]=t;i=r?+(s>>>0)+4294967296.0*+(t|0):+h[j>>3];break}}i=0.0;break d}while(0);while(0);n=~~i;if((v|0)!=3){g=(c[c[u>>2]>>2]|0)+64|0;g=g>>>0<(c[A>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;e:do if((f|0)==3)i=+h[g>>3];else do if((f|0)==19){t=g;i=+((c[t>>2]|0)>>>0)+4294967296.0*+(c[t+4>>2]|0)}else{if((f&15|0)==4){k=Ww((c[g>>2]|0)+16|0,x)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((k|0)==(f+1|0)){r=(c[x+8>>2]|0)==19;t=x;s=c[t>>2]|0;t=c[t+4>>2]|0;c[j>>2]=s;c[j+4>>2]=t;i=r?+(s>>>0)+4294967296.0*+(t|0):+h[j>>3];break}}i=0.0;break e}while(0);while(0);t=~~i&255;if((w|0)>80){g=(c[c[u>>2]>>2]|0)+80|0;g=g>>>0<(c[A>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;f:do if((f|0)==3)i=+h[g>>3];else g:do if((f|0)==19){s=g;i=+((c[s>>2]|0)>>>0)+4294967296.0*+(c[s+4>>2]|0)}else{do if((f&15|0)==4){k=Ww((c[g>>2]|0)+16|0,x)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((k|0)!=(f+1|0))break;q=(c[x+8>>2]|0)==19;s=x;r=c[s>>2]|0;s=c[s+4>>2]|0;c[j>>2]=r;c[j+4>>2]=s;i=q?+(r>>>0)+4294967296.0*+(s|0):+h[j>>3];break g}while(0);i=0.0;break f}while(0);while(0);r=~~i;g=(c[c[u>>2]>>2]|0)+96|0;g=g>>>0<(c[A>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;h:do if((f|0)==3)i=+h[g>>3];else i:do if((f|0)==19){s=g;i=+((c[s>>2]|0)>>>0)+4294967296.0*+(c[s+4>>2]|0)}else{do if((f&15|0)==4){k=Ww((c[g>>2]|0)+16|0,x)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((k|0)!=(f+1|0))break;p=(c[x+8>>2]|0)==19;s=x;q=c[s>>2]|0;s=c[s+4>>2]|0;c[j>>2]=q;c[j+4>>2]=s;i=p?+(q>>>0)+4294967296.0*+(s|0):+h[j>>3];break i}while(0);i=0.0;break h}while(0);while(0);s=~~i;if((v|0)!=6){g=c[c[u>>2]>>2]|0;f=g+112|0;k=c[A>>2]|0;f=f>>>0<k>>>0?f:316344;switch(c[f+8>>2]|0){case 0:{q=3;break}case 1:{q=c[f>>2]|0?4:3;break}default:q=4}if((w|0)>112){g=g+128|0;g=g>>>0<k>>>0?g:316344;f=c[g+8>>2]|0;j:do if((f|0)==3)i=+h[g>>3];else k:do if((f|0)==19){x=g;i=+((c[x>>2]|0)>>>0)+4294967296.0*+(c[x+4>>2]|0)}else{do if((f&15|0)==4){k=Ww((c[g>>2]|0)+16|0,x)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((k|0)!=(f+1|0))break;v=(c[x+8>>2]|0)==19;w=c[x>>2]|0;x=c[x+4>>2]|0;c[j>>2]=w;c[j+4>>2]=x;i=v?+(w>>>0)+4294967296.0*+(x|0):+h[j>>3];break k}while(0);i=0.0;break j}while(0);while(0);f=~~i;if(!f){f=0;g=0}else z=120}else{f=1;z=120}}else{f=1;q=3;z=120}}else{f=1;s=8;r=8;q=3;z=120}}else{f=1;t=0;s=8;r=8;q=3;z=120}}else{f=1;t=0;s=8;r=8;n=0;e=0;q=3;z=120}if((z|0)==120){p=O(f,s)|0;o=e;g=m;l:while(1){m=e;m:while(1){k=g+1|0;g=a[g>>0]|0;switch(g<<24>>24){case 0:break l;case 10:break m;default:{}}m=(ng[q&15](y,g,m,n,r,s,t,f)|0)+m|0;g=k}o=(m|0)>(o|0)?m:o;g=k;n=n+p|0}g=((m|0)>(o|0)?m:o)-e|0;f=g;g=((g|0)<0)<<31>>31}z=c[A>>2]|0;y=z;c[y>>2]=f;c[y+4>>2]=g;c[z+8>>2]=19;c[A>>2]=z+16;A=1;l=B;return A|0}function un(f){f=f|0;var g=0,h=0,i=0,j=0,k=0;i=c[f+12>>2]|0;g=c[i+40>>2]|0;a:do if((c[g+8>>2]|0)>>>0>1)h=(c[g+12>>2]|0)+16|0;else{h=(c[g+16>>2]|0)+(((1<<(d[g+7>>0]|0))+3&2)<<5)|0;while(1){if((c[h+24>>2]|0)==19?(k=h+16|0,(c[k>>2]|0)==2&(c[k+4>>2]|0)==0):0)break;g=c[h+28>>2]|0;if(!g){h=316344;break a}h=h+(g<<5)|0}}while(0);k=f+8|0;j=c[k>>2]|0;i=i+280+(((263167>>>0)%127|0)<<2)|0;g=c[i>>2]|0;if(JN(263167,g+16|0)|0){g=xx(f,263167,6)|0;c[i>>2]=g}c[j>>2]=g;c[j+8>>2]=(a[g+4>>0]|64)&255;i=c[k>>2]|0;c[k>>2]=i+16;Kx(f,h,i,i);h=c[k>>2]|0;i=h+-16|0;j=h+-8|0;switch(c[j>>2]&15){case 7:{g=(c[i>>2]|0)+24|0;break}case 2:{g=c[i>>2]|0;break}default:g=0}f=i;c[f>>2]=d[g+65412>>0];c[f+4>>2]=0;c[j>>2]=19;f=h;c[f>>2]=d[g+65413>>0];c[f+4>>2]=0;c[h+8>>2]=19;f=h+16|0;c[k>>2]=f;j=g+65414|0;c[f>>2]=b[j>>1]&1;c[h+24>>2]=1;f=h+32|0;c[k>>2]=f;c[f>>2]=(e[j>>1]|0)>>>1&1;c[h+40>>2]=1;f=h+48|0;c[k>>2]=f;c[f>>2]=(e[j>>1]|0)>>>2&1;c[h+56>>2]=1;c[k>>2]=h+64;return 5}function vn(b){b=b|0;var e=0.0,f=0,g=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;m=r;q=b+8|0;f=c[q>>2]|0;k=b+16|0;g=c[c[k>>2]>>2]|0;if((f-(g+16)|0)!=64){Wx(b,263571,r+16|0);l=r;return 0}g=g+48|0;g=g>>>0<f>>>0?g:316344;f=c[g+8>>2]|0;a:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){p=g;e=+((c[p>>2]|0)>>>0)+4294967296.0*+(c[p+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){n=(c[m+8>>2]|0)==19;p=m;o=c[p>>2]|0;p=c[p+4>>2]|0;c[j>>2]=o;c[j+4>>2]=p;e=n?+(o>>>0)+4294967296.0*+(p|0):+h[j>>3];break}}e=0.0;break a}while(0);while(0);p=~~e;if((p|0)<0){l=r;return 0}g=(c[c[k>>2]>>2]|0)+16|0;g=g>>>0<(c[q>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;b:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){o=g;e=+((c[o>>2]|0)>>>0)+4294967296.0*+(c[o+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){i=(c[m+8>>2]|0)==19;o=m;n=c[o>>2]|0;o=c[o+4>>2]|0;c[j>>2]=n;c[j+4>>2]=o;e=i?+(n>>>0)+4294967296.0*+(o|0):+h[j>>3];break}}e=0.0;break b}while(0);while(0);o=~~e;g=(c[c[k>>2]>>2]|0)+32|0;g=g>>>0<(c[q>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;c:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){n=g;e=+((c[n>>2]|0)>>>0)+4294967296.0*+(c[n+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){g=(c[m+8>>2]|0)==19;n=m;i=c[n>>2]|0;n=c[n+4>>2]|0;c[j>>2]=i;c[j+4>>2]=n;e=g?+(i>>>0)+4294967296.0*+(n|0):+h[j>>3];break}}e=0.0;break c}while(0);while(0);n=~~e;g=(c[c[k>>2]>>2]|0)+64|0;g=g>>>0<(c[q>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;d:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){m=g;e=+((c[m>>2]|0)>>>0)+4294967296.0*+(c[m+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){i=(c[m+8>>2]|0)==19;k=c[m>>2]|0;m=c[m+4>>2]|0;c[j>>2]=k;c[j+4>>2]=m;e=i?+(k>>>0)+4294967296.0*+(m|0):+h[j>>3];break}}e=0.0;break d}while(0);while(0);m=~~e;i=c[b+12>>2]|0;f=c[i+40>>2]|0;e:do if((c[f+8>>2]|0)>>>0>1)g=(c[f+12>>2]|0)+16|0;else{g=(c[f+16>>2]|0)+(((1<<d[f+7>>0])+3&2)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(k=g+16|0,(c[k>>2]|0)==2&(c[k+4>>2]|0)==0):0)break;f=c[g+28>>2]|0;if(!f){g=316344;break e}g=g+(f<<5)|0}}while(0);k=c[q>>2]|0;i=i+280+(((263167>>>0)%127|0)<<2)|0;f=c[i>>2]|0;if(JN(263167,f+16|0)|0){f=xx(b,263167,6)|0;c[i>>2]=f}c[k>>2]=f;c[k+8>>2]=(a[f+4>>0]|64)&255;k=c[q>>2]|0;c[q>>2]=k+16;Kx(b,g,k,k);b=c[q>>2]|0;g=b+-16|0;switch(c[b+-8>>2]&15){case 7:{f=(c[g>>2]|0)+24|0;break}case 2:{f=c[g>>2]|0;break}default:f=0}c[q>>2]=g;Fg[c[f+2439720>>2]&15](f,o,n,p,m&255);l=r;return 0}function wn(b){b=b|0;var e=0.0,f=0,g=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;m=r;q=b+8|0;f=c[q>>2]|0;k=b+16|0;g=c[c[k>>2]>>2]|0;if((f-(g+16)|0)!=64){Wx(b,263526,r+16|0);l=r;return 0}g=g+48|0;g=g>>>0<f>>>0?g:316344;f=c[g+8>>2]|0;a:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){p=g;e=+((c[p>>2]|0)>>>0)+4294967296.0*+(c[p+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){n=(c[m+8>>2]|0)==19;p=m;o=c[p>>2]|0;p=c[p+4>>2]|0;c[j>>2]=o;c[j+4>>2]=p;e=n?+(o>>>0)+4294967296.0*+(p|0):+h[j>>3];break}}e=0.0;break a}while(0);while(0);p=~~e;if((p|0)<0){l=r;return 0}g=(c[c[k>>2]>>2]|0)+16|0;g=g>>>0<(c[q>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;b:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){o=g;e=+((c[o>>2]|0)>>>0)+4294967296.0*+(c[o+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){i=(c[m+8>>2]|0)==19;o=m;n=c[o>>2]|0;o=c[o+4>>2]|0;c[j>>2]=n;c[j+4>>2]=o;e=i?+(n>>>0)+4294967296.0*+(o|0):+h[j>>3];break}}e=0.0;break b}while(0);while(0);o=~~e;g=(c[c[k>>2]>>2]|0)+32|0;g=g>>>0<(c[q>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;c:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){n=g;e=+((c[n>>2]|0)>>>0)+4294967296.0*+(c[n+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){g=(c[m+8>>2]|0)==19;n=m;i=c[n>>2]|0;n=c[n+4>>2]|0;c[j>>2]=i;c[j+4>>2]=n;e=g?+(i>>>0)+4294967296.0*+(n|0):+h[j>>3];break}}e=0.0;break c}while(0);while(0);n=~~e;g=(c[c[k>>2]>>2]|0)+64|0;g=g>>>0<(c[q>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;d:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){m=g;e=+((c[m>>2]|0)>>>0)+4294967296.0*+(c[m+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){i=(c[m+8>>2]|0)==19;k=c[m>>2]|0;m=c[m+4>>2]|0;c[j>>2]=k;c[j+4>>2]=m;e=i?+(k>>>0)+4294967296.0*+(m|0):+h[j>>3];break}}e=0.0;break d}while(0);while(0);m=~~e;i=c[b+12>>2]|0;f=c[i+40>>2]|0;e:do if((c[f+8>>2]|0)>>>0>1)g=(c[f+12>>2]|0)+16|0;else{g=(c[f+16>>2]|0)+(((1<<d[f+7>>0])+3&2)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(k=g+16|0,(c[k>>2]|0)==2&(c[k+4>>2]|0)==0):0)break;f=c[g+28>>2]|0;if(!f){g=316344;break e}g=g+(f<<5)|0}}while(0);k=c[q>>2]|0;i=i+280+(((263167>>>0)%127|0)<<2)|0;f=c[i>>2]|0;if(JN(263167,f+16|0)|0){f=xx(b,263167,6)|0;c[i>>2]=f}c[k>>2]=f;c[k+8>>2]=(a[f+4>>0]|64)&255;k=c[q>>2]|0;c[q>>2]=k+16;Kx(b,g,k,k);b=c[q>>2]|0;g=b+-16|0;switch(c[b+-8>>2]&15){case 7:{f=(c[g>>2]|0)+24|0;break}case 2:{f=c[g>>2]|0;break}default:f=0}c[q>>2]=g;Fg[c[f+2439724>>2]&15](f,o,n,p,m&255);l=r;return 0}function xn(b){b=b|0;var e=0.0,f=0,g=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+32|0;m=u;t=b+8|0;f=c[t>>2]|0;k=b+16|0;g=(c[c[k>>2]>>2]|0)+16|0;if((f-g|0)!=112){Wx(b,263476,u+16|0);l=u;return 0}g=g>>>0<f>>>0?g:316344;f=c[g+8>>2]|0;a:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){s=g;e=+((c[s>>2]|0)>>>0)+4294967296.0*+(c[s+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){q=(c[m+8>>2]|0)==19;s=m;r=c[s>>2]|0;s=c[s+4>>2]|0;c[j>>2]=r;c[j+4>>2]=s;e=q?+(r>>>0)+4294967296.0*+(s|0):+h[j>>3];break}}e=0.0;break a}while(0);while(0);s=~~e;g=(c[c[k>>2]>>2]|0)+32|0;g=g>>>0<(c[t>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;b:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){r=g;e=+((c[r>>2]|0)>>>0)+4294967296.0*+(c[r+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){p=(c[m+8>>2]|0)==19;r=m;q=c[r>>2]|0;r=c[r+4>>2]|0;c[j>>2]=q;c[j+4>>2]=r;e=p?+(q>>>0)+4294967296.0*+(r|0):+h[j>>3];break}}e=0.0;break b}while(0);while(0);r=~~e;g=(c[c[k>>2]>>2]|0)+48|0;g=g>>>0<(c[t>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;c:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){q=g;e=+((c[q>>2]|0)>>>0)+4294967296.0*+(c[q+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){o=(c[m+8>>2]|0)==19;q=m;p=c[q>>2]|0;q=c[q+4>>2]|0;c[j>>2]=p;c[j+4>>2]=q;e=o?+(p>>>0)+4294967296.0*+(q|0):+h[j>>3];break}}e=0.0;break c}while(0);while(0);q=~~e;g=(c[c[k>>2]>>2]|0)+64|0;g=g>>>0<(c[t>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;d:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){p=g;e=+((c[p>>2]|0)>>>0)+4294967296.0*+(c[p+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){n=(c[m+8>>2]|0)==19;p=m;o=c[p>>2]|0;p=c[p+4>>2]|0;c[j>>2]=o;c[j+4>>2]=p;e=n?+(o>>>0)+4294967296.0*+(p|0):+h[j>>3];break}}e=0.0;break d}while(0);while(0);p=~~e;g=(c[c[k>>2]>>2]|0)+80|0;g=g>>>0<(c[t>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;e:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){o=g;e=+((c[o>>2]|0)>>>0)+4294967296.0*+(c[o+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){i=(c[m+8>>2]|0)==19;o=m;n=c[o>>2]|0;o=c[o+4>>2]|0;c[j>>2]=n;c[j+4>>2]=o;e=i?+(n>>>0)+4294967296.0*+(o|0):+h[j>>3];break}}e=0.0;break e}while(0);while(0);o=~~e;g=(c[c[k>>2]>>2]|0)+96|0;g=g>>>0<(c[t>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;f:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){n=g;e=+((c[n>>2]|0)>>>0)+4294967296.0*+(c[n+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){g=(c[m+8>>2]|0)==19;n=m;i=c[n>>2]|0;n=c[n+4>>2]|0;c[j>>2]=i;c[j+4>>2]=n;e=g?+(i>>>0)+4294967296.0*+(n|0):+h[j>>3];break}}e=0.0;break f}while(0);while(0);n=~~e;g=(c[c[k>>2]>>2]|0)+112|0;g=g>>>0<(c[t>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;g:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){m=g;e=+((c[m>>2]|0)>>>0)+4294967296.0*+(c[m+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,m)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){i=(c[m+8>>2]|0)==19;k=c[m>>2]|0;m=c[m+4>>2]|0;c[j>>2]=k;c[j+4>>2]=m;e=i?+(k>>>0)+4294967296.0*+(m|0):+h[j>>3];break}}e=0.0;break g}while(0);while(0);m=~~e;i=c[b+12>>2]|0;f=c[i+40>>2]|0;h:do if((c[f+8>>2]|0)>>>0>1)g=(c[f+12>>2]|0)+16|0;else{g=(c[f+16>>2]|0)+(((1<<d[f+7>>0])+3&2)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(k=g+16|0,(c[k>>2]|0)==2&(c[k+4>>2]|0)==0):0)break;f=c[g+28>>2]|0;if(!f){g=316344;break h}g=g+(f<<5)|0}}while(0);k=c[t>>2]|0;i=i+280+(((263167>>>0)%127|0)<<2)|0;f=c[i>>2]|0;if(JN(263167,f+16|0)|0){f=xx(b,263167,6)|0;c[i>>2]=f}c[k>>2]=f;c[k+8>>2]=(a[f+4>>0]|64)&255;k=c[t>>2]|0;c[t>>2]=k+16;Kx(b,g,k,k);b=c[t>>2]|0;g=b+-16|0;switch(c[b+-8>>2]&15){case 7:{f=(c[g>>2]|0)+24|0;break}case 2:{f=c[g>>2]|0;break}default:f=0}c[t>>2]=g;Ig[c[f+2439728>>2]&7](f,s,r,q,p,o,n,m&255);l=u;return 0}function yn(b){b=b|0;var e=0.0,f=0,g=0,i=0.0,k=0.0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0.0,u=0.0,v=0,w=0.0,x=0.0,y=0,z=0,A=0,B=0,C=0;C=l;l=l+32|0;B=C;y=b+8|0;f=c[y>>2]|0;z=b+16|0;g=(c[c[z>>2]>>2]|0)+16|0;v=f-g|0;A=v>>4;if((v|0)<=176){Wx(b,263382,C+16|0);l=C;return 0}g=g>>>0<f>>>0?g:316344;f=c[g+8>>2]|0;a:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){v=g;e=+((c[v>>2]|0)>>>0)+4294967296.0*+(c[v+4>>2]|0)}else{if((f&15|0)==4){m=Ww((c[g>>2]|0)+16|0,B)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((m|0)==(f+1|0)){g=(c[B+8>>2]|0)==19;v=B;m=c[v>>2]|0;v=c[v+4>>2]|0;c[j>>2]=m;c[j+4>>2]=v;e=g?+(m>>>0)+4294967296.0*+(v|0):+h[j>>3];break}}e=0.0;break a}while(0);while(0);g=(c[c[z>>2]>>2]|0)+32|0;g=g>>>0<(c[y>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;b:do if((f|0)==3)i=+h[g>>3];else do if((f|0)==19){v=g;i=+((c[v>>2]|0)>>>0)+4294967296.0*+(c[v+4>>2]|0)}else{if((f&15|0)==4){m=Ww((c[g>>2]|0)+16|0,B)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((m|0)==(f+1|0)){g=(c[B+8>>2]|0)==19;v=B;m=c[v>>2]|0;v=c[v+4>>2]|0;c[j>>2]=m;c[j+4>>2]=v;i=g?+(m>>>0)+4294967296.0*+(v|0):+h[j>>3];break}}i=0.0;break b}while(0);while(0);g=(c[c[z>>2]>>2]|0)+48|0;g=g>>>0<(c[y>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;c:do if((f|0)==3)k=+h[g>>3];else do if((f|0)==19){v=g;k=+((c[v>>2]|0)>>>0)+4294967296.0*+(c[v+4>>2]|0)}else{if((f&15|0)==4){m=Ww((c[g>>2]|0)+16|0,B)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((m|0)==(f+1|0)){g=(c[B+8>>2]|0)==19;v=B;m=c[v>>2]|0;v=c[v+4>>2]|0;c[j>>2]=m;c[j+4>>2]=v;k=g?+(m>>>0)+4294967296.0*+(v|0):+h[j>>3];break}}k=0.0;break c}while(0);while(0);g=(c[c[z>>2]>>2]|0)+64|0;g=g>>>0<(c[y>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;d:do if((f|0)==3)n=+h[g>>3];else do if((f|0)==19){v=g;n=+((c[v>>2]|0)>>>0)+4294967296.0*+(c[v+4>>2]|0)}else{if((f&15|0)==4){m=Ww((c[g>>2]|0)+16|0,B)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((m|0)==(f+1|0)){g=(c[B+8>>2]|0)==19;v=B;m=c[v>>2]|0;v=c[v+4>>2]|0;c[j>>2]=m;c[j+4>>2]=v;n=g?+(m>>>0)+4294967296.0*+(v|0):+h[j>>3];break}}n=0.0;break d}while(0);while(0);g=(c[c[z>>2]>>2]|0)+80|0;g=g>>>0<(c[y>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;e:do if((f|0)==3)o=+h[g>>3];else do if((f|0)==19){v=g;o=+((c[v>>2]|0)>>>0)+4294967296.0*+(c[v+4>>2]|0)}else{if((f&15|0)==4){m=Ww((c[g>>2]|0)+16|0,B)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((m|0)==(f+1|0)){g=(c[B+8>>2]|0)==19;v=B;m=c[v>>2]|0;v=c[v+4>>2]|0;c[j>>2]=m;c[j+4>>2]=v;o=g?+(m>>>0)+4294967296.0*+(v|0):+h[j>>3];break}}o=0.0;break e}while(0);while(0);g=(c[c[z>>2]>>2]|0)+96|0;g=g>>>0<(c[y>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;f:do if((f|0)==3)p=+h[g>>3];else do if((f|0)==19){v=g;p=+((c[v>>2]|0)>>>0)+4294967296.0*+(c[v+4>>2]|0)}else{if((f&15|0)==4){m=Ww((c[g>>2]|0)+16|0,B)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((m|0)==(f+1|0)){g=(c[B+8>>2]|0)==19;v=B;m=c[v>>2]|0;v=c[v+4>>2]|0;c[j>>2]=m;c[j+4>>2]=v;p=g?+(m>>>0)+4294967296.0*+(v|0):+h[j>>3];break}}p=0.0;break f}while(0);while(0);g=(c[c[z>>2]>>2]|0)+112|0;g=g>>>0<(c[y>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;g:do if((f|0)==3)q=+h[g>>3];else do if((f|0)==19){v=g;q=+((c[v>>2]|0)>>>0)+4294967296.0*+(c[v+4>>2]|0)}else{if((f&15|0)==4){m=Ww((c[g>>2]|0)+16|0,B)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((m|0)==(f+1|0)){g=(c[B+8>>2]|0)==19;v=B;m=c[v>>2]|0;v=c[v+4>>2]|0;c[j>>2]=m;c[j+4>>2]=v;q=g?+(m>>>0)+4294967296.0*+(v|0):+h[j>>3];break}}q=0.0;break g}while(0);while(0);g=(c[c[z>>2]>>2]|0)+128|0;g=g>>>0<(c[y>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;h:do if((f|0)==3)r=+h[g>>3];else do if((f|0)==19){v=g;r=+((c[v>>2]|0)>>>0)+4294967296.0*+(c[v+4>>2]|0)}else{if((f&15|0)==4){m=Ww((c[g>>2]|0)+16|0,B)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((m|0)==(f+1|0)){g=(c[B+8>>2]|0)==19;v=B;m=c[v>>2]|0;v=c[v+4>>2]|0;c[j>>2]=m;c[j+4>>2]=v;r=g?+(m>>>0)+4294967296.0*+(v|0):+h[j>>3];break}}r=0.0;break h}while(0);while(0);g=(c[c[z>>2]>>2]|0)+144|0;g=g>>>0<(c[y>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;i:do if((f|0)==3)s=+h[g>>3];else do if((f|0)==19){v=g;s=+((c[v>>2]|0)>>>0)+4294967296.0*+(c[v+4>>2]|0)}else{if((f&15|0)==4){m=Ww((c[g>>2]|0)+16|0,B)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((m|0)==(f+1|0)){g=(c[B+8>>2]|0)==19;v=B;m=c[v>>2]|0;v=c[v+4>>2]|0;c[j>>2]=m;c[j+4>>2]=v;s=g?+(m>>>0)+4294967296.0*+(v|0):+h[j>>3];break}}s=0.0;break i}while(0);while(0);g=(c[c[z>>2]>>2]|0)+160|0;g=g>>>0<(c[y>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;j:do if((f|0)==3)t=+h[g>>3];else do if((f|0)==19){v=g;t=+((c[v>>2]|0)>>>0)+4294967296.0*+(c[v+4>>2]|0)}else{if((f&15|0)==4){m=Ww((c[g>>2]|0)+16|0,B)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((m|0)==(f+1|0)){g=(c[B+8>>2]|0)==19;v=B;m=c[v>>2]|0;v=c[v+4>>2]|0;c[j>>2]=m;c[j+4>>2]=v;t=g?+(m>>>0)+4294967296.0*+(v|0):+h[j>>3];break}}t=0.0;break j}while(0);while(0);g=(c[c[z>>2]>>2]|0)+176|0;g=g>>>0<(c[y>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;k:do if((f|0)==3)u=+h[g>>3];else do if((f|0)==19){v=g;u=+((c[v>>2]|0)>>>0)+4294967296.0*+(c[v+4>>2]|0)}else{if((f&15|0)==4){m=Ww((c[g>>2]|0)+16|0,B)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((m|0)==(f+1|0)){g=(c[B+8>>2]|0)==19;v=B;m=c[v>>2]|0;v=c[v+4>>2]|0;c[j>>2]=m;c[j+4>>2]=v;u=g?+(m>>>0)+4294967296.0*+(v|0):+h[j>>3];break}}u=0.0;break k}while(0);while(0);x=u;g=(c[c[z>>2]>>2]|0)+192|0;g=g>>>0<(c[y>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;l:do if((f|0)==3)u=+h[g>>3];else do if((f|0)==19){v=g;u=+((c[v>>2]|0)>>>0)+4294967296.0*+(c[v+4>>2]|0)}else{if((f&15|0)==4){m=Ww((c[g>>2]|0)+16|0,B)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((m|0)==(f+1|0)){g=(c[B+8>>2]|0)==19;v=B;m=c[v>>2]|0;v=c[v+4>>2]|0;c[j>>2]=m;c[j+4>>2]=v;u=g?+(m>>>0)+4294967296.0*+(v|0):+h[j>>3];break}}u=0.0;break l}while(0);while(0);w=u;m=c[b+12>>2]|0;f=c[m+40>>2]|0;m:do if((c[f+8>>2]|0)>>>0>1)g=(c[f+12>>2]|0)+16|0;else{g=(c[f+16>>2]|0)+(((1<<d[f+7>>0])+3&2)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(v=g+16|0,(c[v>>2]|0)==2&(c[v+4>>2]|0)==0):0)break;f=c[g+28>>2]|0;if(!f){g=316344;break m}g=g+(f<<5)|0}}while(0);v=c[y>>2]|0;m=m+280+(((263167>>>0)%127|0)<<2)|0;f=c[m>>2]|0;if(JN(263167,f+16|0)|0){f=xx(b,263167,6)|0;c[m>>2]=f}c[v>>2]=f;c[v+8>>2]=(a[f+4>>0]|64)&255;v=c[y>>2]|0;c[y>>2]=v+16;Kx(b,g,v,v);b=c[y>>2]|0;v=b+-16|0;switch(c[b+-8>>2]&15){case 7:{b=(c[v>>2]|0)+24|0;break}case 2:{b=c[v>>2]|0;break}default:b=0}c[y>>2]=v;if((A|0)!=12){m=c[c[z>>2]>>2]|0;f=m+208|0;f=f>>>0<v>>>0?f:316344;switch(c[f+8>>2]|0){case 0:{g=0;break}case 1:{g=(c[f>>2]|0)!=0;break}default:g=1}if((A|0)==13)f=-1;else{m=m+224|0;m=m>>>0<v>>>0?m:316344;f=c[m+8>>2]|0;n:do if((f|0)==3)u=+h[m>>3];else o:do if((f|0)==19){B=m;u=+((c[B>>2]|0)>>>0)+4294967296.0*+(c[B+4>>2]|0)}else{do if((f&15|0)==4){v=Ww((c[m>>2]|0)+16|0,B)|0;f=c[m>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((v|0)!=(f+1|0))break;z=(c[B+8>>2]|0)==19;A=c[B>>2]|0;B=c[B+4>>2]|0;c[j>>2]=A;c[j+4>>2]=B;u=z?+(A>>>0)+4294967296.0*+(B|0):+h[j>>3];break o}while(0);u=0.0;break n}while(0);while(0);f=~~u&255}}else{g=0;f=-1}Ag[c[b+2439732>>2]&1](b,e,i,k,n,o,p,q,r,s,t,x,w,g,f);l=C;return 0}function zn(b){b=b|0;var e=0,f=0,g=0.0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+32|0;f=v+16|0;o=v;u=b+8|0;n=c[u>>2]|0;k=b+16|0;e=(c[c[k>>2]>>2]|0)+16|0;m=n;switch(n-e>>4|0){case 0:{k=c[b+12>>2]|0;e=c[k+40>>2]|0;a:do if((c[e+8>>2]|0)>>>0>1)i=(c[e+12>>2]|0)+16|0;else{f=(c[e+16>>2]|0)+(((1<<d[e+7>>0])+3&2)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(t=f+16|0,(c[t>>2]|0)==2&(c[t+4>>2]|0)==0):0)break;e=c[f+28>>2]|0;if(!e){i=316344;break a}f=f+(e<<5)|0}i=f}while(0);f=k+280+(((263167>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(263167,e+16|0)|0){e=xx(b,263167,6)|0;c[f>>2]=e}c[n>>2]=e;c[m+8>>2]=(a[e+4>>0]|64)&255;f=c[u>>2]|0;c[u>>2]=f+16;Kx(b,i,f,f);b=c[u>>2]|0;f=b+-16|0;switch(c[b+-8>>2]&15){case 7:{e=(c[f>>2]|0)+24|0;break}case 2:{e=c[f>>2]|0;break}default:e=0}c[u>>2]=f;Fg[c[e+2439736>>2]&15](e,0,0,240,136);l=v;return 0}case 4:{f=e>>>0<m>>>0?e:316344;e=c[f+8>>2]|0;b:do if((e|0)==3)g=+h[f>>3];else do if((e|0)==19){t=f;g=+((c[t>>2]|0)>>>0)+4294967296.0*+(c[t+4>>2]|0)}else{if((e&15|0)==4){i=Ww((c[f>>2]|0)+16|0,o)|0;e=c[f>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((i|0)==(e+1|0)){r=(c[o+8>>2]|0)==19;t=o;s=c[t>>2]|0;t=c[t+4>>2]|0;c[j>>2]=s;c[j+4>>2]=t;g=r?+(s>>>0)+4294967296.0*+(t|0):+h[j>>3];break}}g=0.0;break b}while(0);while(0);t=~~g;f=(c[c[k>>2]>>2]|0)+32|0;f=f>>>0<(c[u>>2]|0)>>>0?f:316344;e=c[f+8>>2]|0;c:do if((e|0)==3)g=+h[f>>3];else do if((e|0)==19){s=f;g=+((c[s>>2]|0)>>>0)+4294967296.0*+(c[s+4>>2]|0)}else{if((e&15|0)==4){i=Ww((c[f>>2]|0)+16|0,o)|0;e=c[f>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((i|0)==(e+1|0)){q=(c[o+8>>2]|0)==19;s=o;r=c[s>>2]|0;s=c[s+4>>2]|0;c[j>>2]=r;c[j+4>>2]=s;g=q?+(r>>>0)+4294967296.0*+(s|0):+h[j>>3];break}}g=0.0;break c}while(0);while(0);s=~~g;f=(c[c[k>>2]>>2]|0)+48|0;f=f>>>0<(c[u>>2]|0)>>>0?f:316344;e=c[f+8>>2]|0;d:do if((e|0)==3)g=+h[f>>3];else do if((e|0)==19){r=f;g=+((c[r>>2]|0)>>>0)+4294967296.0*+(c[r+4>>2]|0)}else{if((e&15|0)==4){i=Ww((c[f>>2]|0)+16|0,o)|0;e=c[f>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((i|0)==(e+1|0)){p=(c[o+8>>2]|0)==19;r=o;q=c[r>>2]|0;r=c[r+4>>2]|0;c[j>>2]=q;c[j+4>>2]=r;g=p?+(q>>>0)+4294967296.0*+(r|0):+h[j>>3];break}}g=0.0;break d}while(0);while(0);r=~~g;f=(c[c[k>>2]>>2]|0)+64|0;f=f>>>0<(c[u>>2]|0)>>>0?f:316344;e=c[f+8>>2]|0;e:do if((e|0)==3)g=+h[f>>3];else do if((e|0)==19){q=f;g=+((c[q>>2]|0)>>>0)+4294967296.0*+(c[q+4>>2]|0)}else{if((e&15|0)==4){i=Ww((c[f>>2]|0)+16|0,o)|0;e=c[f>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((i|0)==(e+1|0)){n=(c[o+8>>2]|0)==19;q=o;p=c[q>>2]|0;q=c[q+4>>2]|0;c[j>>2]=p;c[j+4>>2]=q;g=n?+(p>>>0)+4294967296.0*+(q|0):+h[j>>3];break}}g=0.0;break e}while(0);while(0);q=~~g;o=b+12|0;i=c[o>>2]|0;e=c[i+40>>2]|0;f:do if((c[e+8>>2]|0)>>>0>1)f=(c[e+12>>2]|0)+16|0;else{f=(c[e+16>>2]|0)+(((1<<d[e+7>>0])+3&2)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(p=f+16|0,(c[p>>2]|0)==2&(c[p+4>>2]|0)==0):0)break;e=c[f+28>>2]|0;if(!e){f=316344;break f}f=f+(e<<5)|0}}while(0);k=c[u>>2]|0;i=i+280+(((263167>>>0)%127|0)<<2)|0;e=c[i>>2]|0;if(JN(263167,e+16|0)|0){e=xx(b,263167,6)|0;c[i>>2]=e}c[k>>2]=e;c[k+8>>2]=(a[e+4>>0]|64)&255;m=c[u>>2]|0;c[u>>2]=m+16;Kx(b,f,m,m);m=c[u>>2]|0;n=m+-16|0;switch(c[m+-8>>2]&15){case 7:{e=(c[n>>2]|0)+24|0;break}case 2:{e=c[n>>2]|0;break}default:e=0}c[u>>2]=n;p=c[e+2439736>>2]|0;k=c[o>>2]|0;e=c[k+40>>2]|0;g:do if((c[e+8>>2]|0)>>>0>1)i=(c[e+12>>2]|0)+16|0;else{f=(c[e+16>>2]|0)+(((1<<d[e+7>>0])+3&2)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(o=f+16|0,(c[o>>2]|0)==2&(c[o+4>>2]|0)==0):0)break;e=c[f+28>>2]|0;if(!e){i=316344;break g}f=f+(e<<5)|0}i=f}while(0);f=k+280+(((263167>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(263167,e+16|0)|0){e=xx(b,263167,6)|0;c[f>>2]=e}c[n>>2]=e;c[m+-8>>2]=(a[e+4>>0]|64)&255;f=c[u>>2]|0;c[u>>2]=f+16;Kx(b,i,f,f);b=c[u>>2]|0;f=b+-16|0;switch(c[b+-8>>2]&15){case 7:{e=(c[f>>2]|0)+24|0;break}case 2:{e=c[f>>2]|0;break}default:e=0}c[u>>2]=f;Fg[p&15](e,t,s,r,q);l=v;return 0}default:{Wx(b,263333,f);l=v;return 0}}return 0}function An(b){b=b|0;var e=0,f=0,g=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+32|0;o=v+16|0;r=v;s=b+8|0;n=c[s>>2]|0;t=b+16|0;p=n-((c[c[t>>2]>>2]|0)+16)|0;u=p>>4;k=c[b+12>>2]|0;e=c[k+40>>2]|0;m=n;a:do if((c[e+8>>2]|0)>>>0>1)g=(c[e+12>>2]|0)+16|0;else{f=(c[e+16>>2]|0)+(((1<<d[e+7>>0])+3&2)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(q=f+16|0,(c[q>>2]|0)==2&(c[q+4>>2]|0)==0):0)break;e=c[f+28>>2]|0;if(!e){g=316344;break a}f=f+(e<<5)|0}g=f}while(0);f=k+280+(((263167>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(263167,e+16|0)|0){e=xx(b,263167,6)|0;c[f>>2]=e}c[n>>2]=e;c[m+8>>2]=(a[e+4>>0]|64)&255;q=c[s>>2]|0;c[s>>2]=q+16;Kx(b,g,q,q);q=c[s>>2]|0;e=q+-16|0;switch(c[q+-8>>2]&15){case 7:{q=(c[e>>2]|0)+24|0;break}case 2:{q=c[e>>2]|0;break}default:q=0}c[s>>2]=e;if(!u){Fg[c[q+2439756>>2]&15](q,-1,0,0,0);l=v;return 0}if((p|0)<=0){Wx(b,263299,o);l=v;return 0}n=q+2439756|0;Fg[c[n>>2]&15](q,-1,0,0,0);f=(c[c[t>>2]>>2]|0)+16|0;f=f>>>0<(c[s>>2]|0)>>>0?f:316344;e=c[f+8>>2]|0;b:do if((e|0)==3)i=+h[f>>3];else do if((e|0)==19){o=f;i=+((c[o>>2]|0)>>>0)+4294967296.0*+(c[o+4>>2]|0)}else{if((e&15|0)==4){g=Ww((c[f>>2]|0)+16|0,r)|0;e=c[f>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((g|0)==(e+1|0)){m=(c[r+8>>2]|0)==19;o=r;b=c[o>>2]|0;o=c[o+4>>2]|0;c[j>>2]=b;c[j+4>>2]=o;i=m?+(b>>>0)+4294967296.0*+(o|0):+h[j>>3];break}}i=0.0;break b}while(0);while(0);m=~~i;c:do if((u|0)!=1){f=(c[c[t>>2]>>2]|0)+32|0;f=f>>>0<(c[s>>2]|0)>>>0?f:316344;e=c[f+8>>2]|0;d:do if((e|0)==3)i=+h[f>>3];else do if((e|0)==19){o=f;i=+((c[o>>2]|0)>>>0)+4294967296.0*+(c[o+4>>2]|0)}else{if((e&15|0)==4){g=Ww((c[f>>2]|0)+16|0,r)|0;e=c[f>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((g|0)==(e+1|0)){k=(c[r+8>>2]|0)==19;o=r;b=c[o>>2]|0;o=c[o+4>>2]|0;c[j>>2]=b;c[j+4>>2]=o;i=k?+(b>>>0)+4294967296.0*+(o|0):+h[j>>3];break}}i=0.0;break d}while(0);while(0);e=~~i;if((p|0)>32){g=(c[c[t>>2]>>2]|0)+48|0;g=g>>>0<(c[s>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;e:do if((f|0)==3)i=+h[g>>3];else do if((f|0)==19){r=g;i=+((c[r>>2]|0)>>>0)+4294967296.0*+(c[r+4>>2]|0)}else{if((f&15|0)==4){k=Ww((c[g>>2]|0)+16|0,r)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((k|0)==(f+1|0)){o=(c[r+8>>2]|0)==19;p=c[r>>2]|0;r=c[r+4>>2]|0;c[j>>2]=p;c[j+4>>2]=r;i=o?+(p>>>0)+4294967296.0*+(r|0):+h[j>>3];break}}i=0.0;break e}while(0);while(0);k=~~i;if((u|0)==3){g=1;f=k}else{f=(c[c[t>>2]>>2]|0)+64|0;f=f>>>0<(c[s>>2]|0)>>>0?f:316344;switch(c[f+8>>2]|0){case 0:{g=0;f=k;break c}case 1:{g=(c[f>>2]|0)!=0;f=k;break c}default:{g=1;f=k;break c}}}}else{g=1;f=-1}}else{g=1;f=-1;e=-1}while(0);Fg[c[n>>2]&15](q,m,e,f,g);l=v;return 0}function Bn(b){b=b|0;var e=0,f=0,g=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;q=r+16|0;o=r;g=c[b+12>>2]|0;e=c[g+40>>2]|0;a:do if((c[e+8>>2]|0)>>>0>1)f=(c[e+12>>2]|0)+16|0;else{f=(c[e+16>>2]|0)+(((1<<d[e+7>>0])+3&2)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(p=f+16|0,(c[p>>2]|0)==2&(c[p+4>>2]|0)==0):0)break;e=c[f+28>>2]|0;if(!e){f=316344;break a}f=f+(e<<5)|0}}while(0);n=b+8|0;k=c[n>>2]|0;g=g+280+(((263167>>>0)%127|0)<<2)|0;e=c[g>>2]|0;if(JN(263167,e+16|0)|0){e=xx(b,263167,6)|0;c[g>>2]=e}c[k>>2]=e;c[k+8>>2]=(a[e+4>>0]|64)&255;p=c[n>>2]|0;c[n>>2]=p+16;Kx(b,f,p,p);p=c[n>>2]|0;e=p+-16|0;switch(c[p+-8>>2]&15){case 7:{p=(c[e>>2]|0)+24|0;break}case 2:{p=c[e>>2]|0;break}default:p=0}c[n>>2]=e;m=b+16|0;f=(c[c[m>>2]>>2]|0)+16|0;if((e-f|0)>0){f=f>>>0<e>>>0?f:316344;e=c[f+8>>2]|0;b:do if((e|0)==3)i=+h[f>>3];else do if((e|0)==19){k=f;i=+((c[k>>2]|0)>>>0)+4294967296.0*+(c[k+4>>2]|0)}else{if((e&15|0)==4){g=Ww((c[f>>2]|0)+16|0,o)|0;e=c[f>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((g|0)==(e+1|0)){f=(c[o+8>>2]|0)==19;k=o;g=c[k>>2]|0;k=c[k+4>>2]|0;c[j>>2]=g;c[j+4>>2]=k;i=f?+(g>>>0)+4294967296.0*+(k|0):+h[j>>3];break}}i=0.0;break b}while(0);while(0);g=~~i;e=c[n>>2]|0;f=c[c[m>>2]>>2]|0;if((e-(f+16)|0)>16){f=f+32|0;f=f>>>0<e>>>0?f:316344;e=c[f+8>>2]|0;c:do if((e|0)==3)i=+h[f>>3];else do if((e|0)==19){o=f;i=+((c[o>>2]|0)>>>0)+4294967296.0*+(c[o+4>>2]|0)}else{if((e&15|0)==4){k=Ww((c[f>>2]|0)+16|0,o)|0;e=c[f>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((k|0)==(e+1|0)){f=(c[o+8>>2]|0)==19;k=c[o>>2]|0;o=c[o+4>>2]|0;c[j>>2]=k;c[j+4>>2]=o;i=f?+(k>>>0)+4294967296.0*+(o|0):+h[j>>3];break}}i=0.0;break c}while(0);while(0);e=~~i;k=c[n>>2]|0;f=c[c[m>>2]>>2]|0;d:do if((k-(f+16)|0)>32){f=f+48|0;f=f>>>0<k>>>0?f:316344;switch(c[f+8>>2]|0){case 0:{f=0;break d}case 1:{f=(c[f>>2]|0)!=0;break d}default:{f=1;break d}}}else f=0;while(0);if(e>>>0>=8){Wx(b,263272,q);l=r;return 0}}else{f=0;e=0}}else{g=0;f=0;e=0}Eg[c[p+2439792>>2]&63](p,g,e,f);l=r;return 0}function Cn(b){b=b|0;var e=0,f=0,g=0,h=0,i=0;g=c[b+12>>2]|0;e=c[g+40>>2]|0;a:do if((c[e+8>>2]|0)>>>0>1)f=(c[e+12>>2]|0)+16|0;else{f=(c[e+16>>2]|0)+(((1<<(d[e+7>>0]|0))+3&2)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(i=f+16|0,(c[i>>2]|0)==2&(c[i+4>>2]|0)==0):0)break;e=c[f+28>>2]|0;if(!e){f=316344;break a}f=f+(e<<5)|0}}while(0);i=b+8|0;h=c[i>>2]|0;g=g+280+(((263167>>>0)%127|0)<<2)|0;e=c[g>>2]|0;if(JN(263167,e+16|0)|0){e=xx(b,263167,6)|0;c[g>>2]=e}c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;e=c[i>>2]|0;c[i>>2]=e+16;Kx(b,f,e,e);b=c[i>>2]|0;e=b+-16|0;switch(c[b+-8>>2]&15){case 7:{b=(c[e>>2]|0)+24|0;c[i>>2]=e;b=b+2589368|0;a[b>>0]=0;return 0}case 2:{b=c[e>>2]|0;c[i>>2]=e;b=b+2589368|0;a[b>>0]=0;return 0}default:{b=0;c[i>>2]=e;b=b+2589368|0;a[b>>0]=0;return 0}}return 0}function Dn(b){b=b|0;var e=0,f=0.0,g=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+32|0;m=q+24|0;p=q+16|0;o=q;i=c[b+12>>2]|0;e=c[i+40>>2]|0;a:do if((c[e+8>>2]|0)>>>0>1)g=(c[e+12>>2]|0)+16|0;else{g=(c[e+16>>2]|0)+(((1<<d[e+7>>0])+3&2)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(n=g+16|0,(c[n>>2]|0)==2&(c[n+4>>2]|0)==0):0)break;e=c[g+28>>2]|0;if(!e){g=316344;break a}g=g+(e<<5)|0}}while(0);n=b+8|0;k=c[n>>2]|0;i=i+280+(((263167>>>0)%127|0)<<2)|0;e=c[i>>2]|0;if(JN(263167,e+16|0)|0){e=xx(b,263167,6)|0;c[i>>2]=e}c[k>>2]=e;c[k+8>>2]=(a[e+4>>0]|64)&255;k=c[n>>2]|0;c[n>>2]=k+16;Kx(b,g,k,k);k=c[n>>2]|0;e=k+-16|0;switch(c[k+-8>>2]&15){case 7:{k=(c[e>>2]|0)+24|0;break}case 2:{k=c[e>>2]|0;break}default:k=0}c[n>>2]=e;g=(c[c[b+16>>2]>>2]|0)+16|0;switch(e-g>>4|0){case 0:{b=hg[c[k+2439800>>2]&63](k,0)|0;p=c[n>>2]|0;c[p>>2]=b&1;c[p+8>>2]=1;c[n>>2]=p+16;p=1;l=q;return p|0}case 1:{g=g>>>0<e>>>0?g:316344;e=c[g+8>>2]|0;b:do if((e|0)==3)f=+h[g>>3];else do if((e|0)==19){o=g;f=+((c[o>>2]|0)>>>0)+4294967296.0*+(c[o+4>>2]|0)}else{if((e&15|0)==4){i=Ww((c[g>>2]|0)+16|0,o)|0;e=c[g>>2]|0;if((a[e+4>>0]|0)==4)e=d[e+7>>0]|0;else e=c[e+12>>2]|0;if((i|0)==(e+1|0)){i=(c[o+8>>2]|0)==19;m=c[o>>2]|0;o=c[o+4>>2]|0;c[j>>2]=m;c[j+4>>2]=o;f=i?+(m>>>0)+4294967296.0*+(o|0):+h[j>>3];break}}f=0.0;break b}while(0);while(0);e=~~f;if((e&255)>>>0<79){b=hg[c[k+2439800>>2]&63](k,e&255)|0;p=c[n>>2]|0;c[p>>2]=b&1;c[p+8>>2]=1;c[n>>2]=p+16;p=1;l=q;return p|0}else{Wx(b,263174,p);p=0;l=q;return p|0}}default:{Wx(b,263244,m);p=0;l=q;return p|0}}return 0}function En(b){b=b|0;var e=0.0,f=0,g=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+32|0;p=t+24|0;o=t+16|0;s=t;i=c[b+12>>2]|0;f=c[i+40>>2]|0;a:do if((c[f+8>>2]|0)>>>0>1)g=(c[f+12>>2]|0)+16|0;else{g=(c[f+16>>2]|0)+(((1<<d[f+7>>0])+3&2)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(r=g+16|0,(c[r>>2]|0)==2&(c[r+4>>2]|0)==0):0)break;f=c[g+28>>2]|0;if(!f){g=316344;break a}g=g+(f<<5)|0}}while(0);r=b+8|0;k=c[r>>2]|0;i=i+280+(((263167>>>0)%127|0)<<2)|0;f=c[i>>2]|0;if(JN(263167,f+16|0)|0){f=xx(b,263167,6)|0;c[i>>2]=f}c[k>>2]=f;c[k+8>>2]=(a[f+4>>0]|64)&255;q=c[r>>2]|0;c[r>>2]=q+16;Kx(b,g,q,q);q=c[r>>2]|0;f=q+-16|0;switch(c[q+-8>>2]&15){case 7:{q=(c[f>>2]|0)+24|0;break}case 2:{q=c[f>>2]|0;break}default:q=0}c[r>>2]=f;n=b+16|0;g=(c[c[n>>2]>>2]|0)+16|0;k=f-g>>4;if(!k){q=jg[c[q+2439804>>2]&31](q,0,-1,-1)|0;s=c[r>>2]|0;c[s>>2]=q&1;c[s+8>>2]=1;c[r>>2]=s+16;s=1;l=t;return s|0}g=g>>>0<f>>>0?g:316344;f=c[g+8>>2]|0;b:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){m=g;e=+((c[m>>2]|0)>>>0)+4294967296.0*+(c[m+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,s)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){g=(c[s+8>>2]|0)==19;m=s;i=c[m>>2]|0;m=c[m+4>>2]|0;c[j>>2]=i;c[j+4>>2]=m;e=g?+(i>>>0)+4294967296.0*+(m|0):+h[j>>3];break}}e=0.0;break b}while(0);while(0);i=~~e;m=i&255;if((i&255)>>>0>78){Wx(b,263174,o);s=1;l=t;return s|0}switch(k|0){case 1:{q=jg[c[q+2439804>>2]&31](q,m,-1,-1)|0;s=c[r>>2]|0;c[s>>2]=q&1;c[s+8>>2]=1;c[r>>2]=s+16;s=1;l=t;return s|0}case 3:{g=(c[c[n>>2]>>2]|0)+32|0;g=g>>>0<(c[r>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;c:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){p=g;e=+((c[p>>2]|0)>>>0)+4294967296.0*+(c[p+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,s)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){b=(c[s+8>>2]|0)==19;p=s;o=c[p>>2]|0;p=c[p+4>>2]|0;c[j>>2]=o;c[j+4>>2]=p;e=b?+(o>>>0)+4294967296.0*+(p|0):+h[j>>3];break}}e=0.0;break c}while(0);while(0);k=~~e;g=(c[c[n>>2]>>2]|0)+48|0;g=g>>>0<(c[r>>2]|0)>>>0?g:316344;f=c[g+8>>2]|0;d:do if((f|0)==3)e=+h[g>>3];else do if((f|0)==19){s=g;e=+((c[s>>2]|0)>>>0)+4294967296.0*+(c[s+4>>2]|0)}else{if((f&15|0)==4){i=Ww((c[g>>2]|0)+16|0,s)|0;f=c[g>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((i|0)==(f+1|0)){o=(c[s+8>>2]|0)==19;p=c[s>>2]|0;s=c[s+4>>2]|0;c[j>>2]=p;c[j+4>>2]=s;e=o?+(p>>>0)+4294967296.0*+(s|0):+h[j>>3];break}}e=0.0;break d}while(0);while(0);q=jg[c[q+2439804>>2]&31](q,m,k,~~e)|0;s=c[r>>2]|0;c[s>>2]=q&1;c[s+8>>2]=1;c[r>>2]=s+16;s=1;l=t;return s|0}default:{Wx(b,263197,p);s=0;l=t;return s|0}}return 0}function Fn(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=l;l=l+16|0;r=s;p=c[b>>2]|0;m=c[b+4>>2]|0;n=((m|0)<0)<<31>>31;q=p+8|0;o=c[q>>2]|0;b=c[(c[p+12>>2]|0)+40>>2]|0;k=yQ(m|0,n|0,-1,-1)|0;t=z;a:do if(t>>>0<0|((t|0)==0?k>>>0<(c[b+8>>2]|0)>>>0:0))b=(c[b+12>>2]|0)+(k<<4)|0;else{b=(c[b+16>>2]|0)+(((1<<d[b+7>>0])+-1&m)<<5)|0;while(1){if((c[b+24>>2]|0)==19?(t=b+16|0,(c[t>>2]|0)==(m|0)?(c[t+4>>2]|0)==(n|0):0):0)break;k=c[b+28>>2]|0;if(!k){b=316344;break a}b=b+(k<<5)|0}}while(0);c[o>>2]=c[b>>2];c[o+4>>2]=c[b+4>>2];c[o+8>>2]=c[b+8>>2];c[o+12>>2]=c[b+12>>2];b=c[q>>2]|0;k=b+16|0;c[k>>2]=d[g>>0];c[k+4>>2]=0;c[b+24>>2]=19;k=b+32|0;c[k>>2]=e;c[k+4>>2]=((e|0)<0)<<31>>31;c[b+40>>2]=19;k=b+48|0;c[k>>2]=f;c[k+4>>2]=((f|0)<0)<<31>>31;c[b+56>>2]=19;c[q>>2]=b+64;c[r>>2]=b;c[r+4>>2]=3;Aw(p,147,r,b-(c[p+28>>2]|0)|0,0)|0;b=c[q>>2]|0;k=b+-48|0;b=c[b+-40>>2]|0;b:do if((b|0)==3)i=+h[k>>3];else do if((b|0)==19){t=k;i=+((c[t>>2]|0)>>>0)+4294967296.0*+(c[t+4>>2]|0)}else{if((b&15|0)==4){m=Ww((c[k>>2]|0)+16|0,r)|0;b=c[k>>2]|0;if((a[b+4>>0]|0)==4)b=d[b+7>>0]|0;else b=c[b+12>>2]|0;if((m|0)==(b+1|0)){f=(c[r+8>>2]|0)==19;t=r;p=c[t>>2]|0;t=c[t+4>>2]|0;c[j>>2]=p;c[j+4>>2]=t;i=f?+(p>>>0)+4294967296.0*+(t|0):+h[j>>3];break}}i=0.0;break b}while(0);while(0);a[g>>0]=~~i;b=c[q>>2]|0;k=b+-32|0;b=c[b+-24>>2]|0;c:do if((b|0)==3)i=+h[k>>3];else do if((b|0)==19){t=k;i=+((c[t>>2]|0)>>>0)+4294967296.0*+(c[t+4>>2]|0)}else{if((b&15|0)==4){m=Ww((c[k>>2]|0)+16|0,r)|0;b=c[k>>2]|0;if((a[b+4>>0]|0)==4)b=d[b+7>>0]|0;else b=c[b+12>>2]|0;if((m|0)==(b+1|0)){f=(c[r+8>>2]|0)==19;t=r;p=c[t>>2]|0;t=c[t+4>>2]|0;c[j>>2]=p;c[j+4>>2]=t;i=f?+(p>>>0)+4294967296.0*+(t|0):+h[j>>3];break}}i=0.0;break c}while(0);while(0);c[g+4>>2]=~~i;b=c[q>>2]|0;k=b+-16|0;b=c[b+-8>>2]|0;if((b|0)==3){i=+h[k>>3];r=~~i;t=g+8|0;c[t>>2]=r;l=s;return}do if((b|0)==19){t=k;i=+((c[t>>2]|0)>>>0)+4294967296.0*+(c[t+4>>2]|0)}else{if((b&15|0)==4){m=Ww((c[k>>2]|0)+16|0,r)|0;b=c[k>>2]|0;if((a[b+4>>0]|0)==4)b=d[b+7>>0]|0;else b=c[b+12>>2]|0;if((m|0)==(b+1|0)){q=(c[r+8>>2]|0)==19;t=r;r=c[t>>2]|0;t=c[t+4>>2]|0;c[j>>2]=r;c[j+4>>2]=t;i=q?+(r>>>0)+4294967296.0*+(t|0):+h[j>>3];break}}i=0.0;r=~~i;t=g+8|0;c[t>>2]=r;l=s;return}while(0);r=~~i;t=g+8|0;c[t>>2]=r;l=s;return}function Gn(e,f){e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+32|0;v=y+8|0;n=y;w=y+16|0;u=e+2588568|0;g=c[u>>2]|0;if(g|0){vx(c[(c[g+12>>2]|0)+136>>2]|0);c[u>>2]=0}s=tx(1,0)|0;r=s+12|0;if(s|0)c[(c[r>>2]|0)+132>>2]=390;c[u>>2]=s;ly(s,282559,392);t=s+8|0;c[t>>2]=(c[t>>2]|0)+-16;ly(s,264373,399);c[t>>2]=(c[t>>2]|0)+-16;ly(s,263152,393);c[t>>2]=(c[t>>2]|0)+-16;ly(s,281358,394);c[t>>2]=(c[t>>2]|0)+-16;ly(s,287721,395);c[t>>2]=(c[t>>2]|0)+-16;ly(s,263162,396);c[t>>2]=(c[t>>2]|0)+-16;ly(s,283214,400);j=c[t>>2]|0;k=j+-16|0;c[t>>2]=k;m=c[r>>2]|0;i=m+280+(((286024>>>0)%127|0)<<2)|0;g=c[i>>2]|0;if(JN(286024,g+16|0)|0){g=xx(s,286024,12)|0;c[i>>2]=g}c[k>>2]=g;c[j+-8>>2]=(a[g+4>>0]|64)&255;g=c[t>>2]|0;c[t>>2]=g+16;Kx(s,m+40|0,g,g);g=c[t>>2]|0;if(!(c[g+-8>>2]&15)){c[t>>2]=g+-16;if((c[(c[r>>2]|0)+12>>2]|0)>0)Sw(s);q=Dx(s)|0;g=c[t>>2]|0;c[g>>2]=q;c[g+8>>2]=69;c[t>>2]=(c[t>>2]|0)+16;g=c[r>>2]|0;if((c[g+12>>2]|0)>0){Sw(s);g=c[r>>2]|0}i=g+280+(((286024>>>0)%127|0)<<2)|0;g=c[i>>2]|0;if(JN(286024,g+16|0)|0){g=xx(s,286024,12)|0;c[i>>2]=g}j=c[t>>2]|0;c[j>>2]=g;c[j+8>>2]=(a[g+4>>0]|64)&255;j=c[t>>2]|0;k=j+16|0;c[t>>2]=k;i=(c[r>>2]|0)+280+(((282228>>>0)%127|0)<<2)|0;g=c[i>>2]|0;if(JN(282228,g+16|0)|0){g=xx(s,282228,6)|0;c[i>>2]=g}c[k>>2]=g;c[j+24>>2]=(a[g+4>>0]|64)&255;k=c[t>>2]|0;c[t>>2]=k+16;Lx(s,j+-16|0,k,k+-16|0);k=c[t>>2]|0;j=k+-32|0;c[t>>2]=j;k=k+-48|0;c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];c[j+8>>2]=c[k+8>>2];c[j+12>>2]=c[k+12>>2];j=c[t>>2]|0;k=j+16|0;c[t>>2]=k;m=c[r>>2]|0;i=m+280+(((286024>>>0)%127|0)<<2)|0;g=c[i>>2]|0;if(JN(286024,g+16|0)|0){g=xx(s,286024,12)|0;c[i>>2]=g}c[k>>2]=g;c[j+24>>2]=(a[g+4>>0]|64)&255;g=c[t>>2]|0;c[t>>2]=g+16;Lx(s,m+40|0,g,g+-16|0);g=(c[t>>2]|0)+-32|0;c[t>>2]=g}h[g>>3]=400.0;c[g+8>>2]=3;k=g+16|0;c[t>>2]=k;m=c[r>>2]|0;j=m+280+(((287864>>>0)%127|0)<<2)|0;i=c[j>>2]|0;if(JN(287864,i+16|0)|0){i=xx(s,287864,13)|0;c[j>>2]=i}c[k>>2]=i;c[g+24>>2]=(a[i+4>>0]|64)&255;g=c[t>>2]|0;c[t>>2]=g+16;Lx(s,m+40|0,g,g+-16|0);c[t>>2]=(c[t>>2]|0)+-32;jy(s,6272,0);g=c[r>>2]|0;if((c[g+140>>2]|0)!=952){Wx(s,282533,n);g=c[r>>2]|0}if((c[g+12>>2]|0)>0)Sw(s);j=Dx(s)|0;k=c[t>>2]|0;c[k>>2]=j;c[k+8>>2]=69;c[t>>2]=(c[t>>2]|0)+16;Ax(s,j,0,22);jy(s,6344,0);j=c[t>>2]|0;k=j+-16|0;c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];c[j+8>>2]=c[k+8>>2];c[j+12>>2]=c[k+12>>2];j=c[t>>2]|0;k=j+16|0;c[t>>2]=k;i=(c[r>>2]|0)+280+(((286037>>>0)%127|0)<<2)|0;g=c[i>>2]|0;if(JN(286037,g+16|0)|0){g=xx(s,286037,7)|0;c[i>>2]=g}c[k>>2]=g;c[j+24>>2]=(a[g+4>>0]|64)&255;m=c[t>>2]|0;c[t>>2]=m+16;Lx(s,j+-32|0,m,m+-16|0);m=c[t>>2]|0;n=m+-32|0;c[t>>2]=n;o=s+16|0;p=n-((c[c[o>>2]>>2]|0)+16)|0;q=p>>4;k=c[r>>2]|0;g=c[k+40>>2]|0;a:do if((c[g+8>>2]|0)>>>0>1)j=(c[g+12>>2]|0)+16|0;else{i=(c[g+16>>2]|0)+(((1<<(d[g+7>>0]|0))+3&2)<<5)|0;while(1){if((c[i+24>>2]|0)==19?(j=i+16|0,(c[j>>2]|0)==2&(c[j+4>>2]|0)==0):0)break;g=c[i+28>>2]|0;if(!g){j=316344;break a}i=i+(g<<5)|0}j=i}while(0);i=k+280+(((264373>>>0)%127|0)<<2)|0;g=c[i>>2]|0;if(JN(264373,g+16|0)|0){g=xx(s,264373,7)|0;c[i>>2]=g}c[n>>2]=g;c[m+-24>>2]=(a[g+4>>0]|64)&255;i=c[t>>2]|0;c[t>>2]=i+16;Kx(s,j,i,i);j=c[t>>2]|0;i=(c[r>>2]|0)+280+(((285653>>>0)%127|0)<<2)|0;g=c[i>>2]|0;if(JN(285653,g+16|0)|0){g=xx(s,285653,6)|0;c[i>>2]=g}c[j>>2]=g;c[j+8>>2]=(a[g+4>>0]|64)&255;i=c[t>>2]|0;c[t>>2]=i+16;Kx(s,j+-16|0,i,i);j=c[t>>2]|0;i=(c[r>>2]|0)+280+(((264381>>>0)%127|0)<<2)|0;g=c[i>>2]|0;if(JN(264381,g+16|0)|0){g=xx(s,264381,4)|0;c[i>>2]=g}c[j>>2]=g;c[j+8>>2]=(a[g+4>>0]|64)&255;g=c[t>>2]|0;c[t>>2]=g+16;Kx(s,j+-16|0,g,g);g=c[t>>2]|0;j=g+-16|0;if((j|0)!=316344?(c[g+-8>>2]&15|0)==0:0){c[t>>2]=j;g=c[o>>2]|0;do if((p|0)<=0){if((p|0)>=-16015984){g=j+(q<<4)|0;break}if((q|0)==-1001e3){g=(c[r>>2]|0)+40|0;break}i=-1001e3-q|0;g=c[g>>2]|0;if((c[g+8>>2]|0)==22)g=316344;else{g=c[g>>2]|0;g=(i|0)>(d[g+6>>0]|0|0)?316344:g+16+(i+-1<<4)|0}}else{g=(c[g>>2]|0)+(q<<4)|0;g=g>>>0<j>>>0?g:316344}while(0);c[j>>2]=c[g>>2];c[j+4>>2]=c[g+4>>2];c[j+8>>2]=c[g+8>>2];c[j+12>>2]=c[g+12>>2];j=c[t>>2]|0;k=j+16|0;c[t>>2]=k;i=(c[r>>2]|0)+280+(((264381>>>0)%127|0)<<2)|0;g=c[i>>2]|0;if(JN(264381,g+16|0)|0){g=xx(s,264381,4)|0;c[i>>2]=g}c[k>>2]=g;c[j+24>>2]=(a[g+4>>0]|64)&255;k=c[t>>2]|0;c[t>>2]=k+16;Lx(s,j+-16|0,k,k+-16|0);k=(c[t>>2]|0)+-32|0;c[t>>2]=k}else k=g;if((p|0)>-16){i=c[c[o>>2]>>2]|0;g=i+(q+1<<4)|0;if(k>>>0<g>>>0){i=(i+(q<<4)+8+4+(3-k)|0)>>>4;j=k;do{c[j+8>>2]=0;j=j+16|0}while(j>>>0<g>>>0);c[t>>2]=k+(i+1<<4)}}else g=k+(q+1<<4)|0;c[t>>2]=g;Tm(e);o=c[u>>2]|0;g=c[c[o+16>>2]>>2]|0;n=o+8|0;i=c[n>>2]|0;j=g+16|0;if(i>>>0<j>>>0){k=(g+8+4+(3-i)|0)>>>4;m=i;while(1){c[m+8>>2]=0;if(m>>>0<g>>>0)m=m+16|0;else break}c[n>>2]=i+(k+1<<4)}c[n>>2]=j;c[w>>2]=90184;c[w+4>>2]=172730;if(dw(o,7,w,264386,0)|0){e=c[e+2588588>>2]|0;Bg[c[e+4>>2]&255](c[e+36>>2]|0,264401);e=0;l=y;return e|0}i=(c[n>>2]|0)+-16|0;j=o+106|0;g=(b[j>>1]|0)+1<<16>>16;b[j>>1]=g;if((g&65535)>199){if(g<<16>>16==200)mw(o,279953,v);if((g&65535)>224)qw(o,6)}g=o+104|0;b[g>>1]=(b[g>>1]|0)+1<<16>>16;if(!(uw(o,i,0)|0))Sx(o);b[g>>1]=(b[g>>1]|0)+-1<<16>>16;b[j>>1]=(b[j>>1]|0)+-1<<16>>16;c[w>>2]=264431;c[w+4>>2]=100;if(dw(o,7,w,264532,0)|0){e=c[e+2588588>>2]|0;Bg[c[e+4>>2]&255](c[e+36>>2]|0,264551);e=0;l=y;return e|0}Uv(o,f);f=(c[n>>2]|0)+-32|0;c[w>>2]=f;c[w+4>>2]=1;if(!(Aw(o,147,w,f-(c[o+28>>2]|0)|0,0)|0)){e=1;l=y;return e|0}g=c[n>>2]|0;switch(c[g+-8>>2]&15){case 4:{g=g+-16|0;break}case 3:{x=87;break}default:{e=1;l=y;return e|0}}if((x|0)==87){if((c[(c[o+12>>2]|0)+12>>2]|0)>0){Sw(o);g=c[n>>2]|0}g=g+-16|0;Xw(o,g)}e=c[e+2588588>>2]|0;Bg[c[e+4>>2]&255](c[e+36>>2]|0,(c[g>>2]|0)+16|0);e=0;l=y;return e|0}function Hn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;c[d>>2]=0;e=c[80015]|0;if(e|0){fN(e);c[80015]=0}f=MP(b,264369)|0;if(!f){d=0;return d|0}l=b;g=0;j=0;e=0;while(1){k=f+3|0;a:do if(f>>>0>=b>>>0)do{i=a[f>>0]|0;if(i<<24>>24==95|(nO(i<<24>>24)|0)!=0)break a;f=f+-1|0}while(f>>>0>=b>>>0);while(0);i=f+-1|0;b:do if(i>>>0<b>>>0)h=f;else{h=f;do{m=a[i>>0]|0;if(!(m<<24>>24==95|(nO(m<<24>>24)|0)!=0))break b;h=h+-1|0;i=i+-1|0}while(i>>>0>=b>>>0)}while(0);if(f>>>0>h>>>0){if(!g)g=eN(8)|0;else g=gN(j,(c[d>>2]<<3)+8|0)|0;c[80015]=g;e=c[d>>2]|0;c[g+(e<<3)>>2]=h-l;c[g+(e<<3)+4>>2]=f+1-h;c[d>>2]=(c[d>>2]|0)+1;e=g;h=g}else h=j;f=MP(k,264369)|0;if(!f)break;else j=h}return e|0}function In(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;f=l;l=l+16|0;h=c[a+64>>2]|0;i=(c[a+68>>2]|0)-h>>4;g=((d|0)<0?i:0)+d|0;g=fp(a,g>>>0<i>>>0?h+(g<<4)|0:0,0)|0;c[f>>2]=e;c[f+4>>2]=g;c[f+8>>2]=d;_n(a,268620,b|100663296,270102,f)}function Jn(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;hq(a,c>>>24,d,b,c&16777215)}function Kn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;if(d>>>0>2147483646)Jn(a,268558,50331674,268576);h=c[a+44>>2]|0;i=h+44|0;l=c[i>>2]|0;c[i>>2]=l+-1;if((l|0)<1)Ln(h,2);f=h+8|0;g=h+16|0;l=b+20|0;e=ig[c[f>>2]&63](c[g>>2]|0,c[l>>2]|0,d)|0;i=(d|0)==0;if(!(i|(e|0)!=0)){Ln(h,0);e=ig[c[f>>2]&63](c[g>>2]|0,c[l>>2]|0,d)|0;if(!e){Ln(h,0);e=ig[c[f>>2]&63](c[g>>2]|0,c[l>>2]|0,d)|0;if(!e){Ln(h,1);e=ig[c[f>>2]&63](c[g>>2]|0,c[l>>2]|0,d)|0;if(!e){Ln(h,1);e=ig[c[f>>2]&63](c[g>>2]|0,c[l>>2]|0,d)|0;if(!e){Ln(h,1);e=ig[c[f>>2]&63](c[g>>2]|0,c[l>>2]|0,d)|0;if(!e){Ln(h,1);e=ig[c[f>>2]&63](c[g>>2]|0,c[l>>2]|0,d)|0;if(!e){Ln(h,1);e=ig[c[f>>2]&63](c[g>>2]|0,c[l>>2]|0,d)|0;if(!e){Ln(h,1);e=ig[c[f>>2]&63](c[g>>2]|0,c[l>>2]|0,d)|0;if(!e){Ln(h,1);e=ig[c[f>>2]&63](c[g>>2]|0,c[l>>2]|0,d)|0;if(!e){Ln(h,1);e=ig[c[f>>2]&63](c[g>>2]|0,c[l>>2]|0,d)|0;if(!e){e=0;j=8}else k=e}else k=e}else k=e}else k=e}else k=e}else k=e}else k=e}else k=e}else k=e}else k=e}else j=8;if((j|0)==8)if(i|(e|0)!=0)k=e;else Mn(a,268558,63);e=b+16|0;f=c[e>>2]|0;if(f>>>0>=d>>>0){c[e>>2]=d;c[l>>2]=k;return}RQ(k+f|0,0,d-f|0)|0;c[e>>2]=d;c[l>>2]=k;return}
|
|
function Ng(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Og(){return l|0}function Pg(a){a=a|0;l=a}function Qg(a,b){a=a|0;b=b|0;l=a;m=b}function Rg(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function Sg(a){a=a|0;z=a}function Tg(){return z|0}function Ug(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;i=o+8|0;m=o+12|0;if(!b){n=0;l=o;return n|0}h=c[80021]|0;if(!h){mE(310474,o);n=0;l=o;return n|0}g=c[h+248>>2]|0;if(!g){g=c[h+288>>2]|0;if(!g){n=0;l=o;return n|0}if(!(a[g>>0]|0)){n=0;l=o;return n|0}else j=10}else{if(!(gg[g&511](h)|0)){n=0;l=o;return n|0}g=c[80021]|0;if(!g){mE(310416,i);k=nP(335059)|0}else{h=g;j=10}}do if((j|0)==10){g=c[h+244>>2]|0;if(!g){k=c[h+288>>2]|0;k=nP(k|0?k:335059)|0;break}else{k=gg[g&511](h)|0;break}}while(0);if(!k){n=0;l=o;return n|0}if(f){j=WO(k)|0;if((j|0)>0){g=0;i=0;do{h=a[k+i>>0]|0;if(!(xN(h<<24>>24)|0)){a[k+g>>0]=h;g=g+1|0}i=i+1|0}while((i|0)!=(j|0))}else g=0;a[k+g>>0]=0}g=WO(k)|0;f=(g|0)==(d<<1|0);if(f?(a[m>>0]=a[38110]|0,a[m+1>>0]=a[38111]|0,a[m+2>>0]=a[38112]|0,a[m+3>>0]=a[38113]|0,a[m+4>>0]=a[38114]|0,n=(g|0)/2|0,(g|0)>1):0){j=m+(e?3:2)|0;i=m+(e?2:3)|0;g=k;h=0;while(1){a[j>>0]=a[g>>0]|0;a[i>>0]=a[g+1>>0]|0;a[b+h>>0]=AN(m)|0;h=h+1|0;if((h|0)>=(n|0))break;else g=g+2|0}}fN(k);n=f;l=o;return n|0}function Vg(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;h=0;l=-1;do{j=h*7|0;g=c[48]|0;e=j+7|0;if(!((g|0)>=(e|0)|(g|0)<(j|0)|(c[49]|0)>>>0>6)){c[68]=11;XP(804,c[960+(h<<2)>>2]|0,39)|0;if((((a[205]|0)!=0?(i=c[52]|0,(i|0)>=(j|0)):0)?(i|0)<(e|0)&(c[53]|0)>>>0<7:0)?(g=c[54]|0,(g|0)>=(j|0)&(g|0)<(e|0)&(c[55]|0)>>>0<7):0){a[205]=0;Wg(c[980+(h<<2)>>2]|0);e=3}else e=3}else e=10;l=(c[45]|0)==(c[980+(h<<2)>>2]|0)?h:l;f=(l|0)==(h|0);if(f){Xg(j,0,38115,d);g=h<<3;Xg(j,1,38123+g|0,0)}else g=h<<3;Xg(j,0,38123+g|0,f?15:e);h=h+1|0}while((h|0)!=5);if((l|0)>-1)g=0;else return;do{f=g*7|0;h=f+144|0;j=c[48]|0;f=f+151|0;a:do if(!((c[49]|0)>>>0>6|((j|0)>=(f|0)|(j|0)<(h|0)))){c[68]=11;e=c[1040+(g<<2)>>2]&255;XP(804,c[1080+(g<<2)>>2]|0,39)|0;if(a[204]|0?(j=c[52]|0,!((j|0)>=(f|0)|(j|0)<(h|0)|(c[53]|0)>>>0>6)):0){f=15;break}if((((a[205]|0)!=0?(k=c[52]|0,(k|0)>=(h|0)):0)?(k|0)<(f|0)&(c[53]|0)>>>0<7:0)?(j=c[54]|0,(j|0)>=(h|0)&(j|0)<(f|0)&(c[55]|0)>>>0<7):0){a[205]=0;f=c[1060+(g<<2)>>2]|0;switch(c[45]|0){case 3:{j=c[864+((a[754]|0)*20|0)>>2]|0;Bg[c[j+65728>>2]&255](j,f);f=e;e=15;break a}case 4:{j=c[864+((a[755]|0)*20|0)+4>>2]|0;Bg[c[j+68>>2]&255](j,f);f=e;e=15;break a}case 5:{j=c[864+((a[756]|0)*20|0)+8>>2]|0;Bg[c[j+120>>2]&255](j,f);f=e;e=15;break a}case 7:{j=c[864+((a[757]|0)*20|0)+12>>2]|0;Bg[c[j+40>>2]&255](j,f);f=e;e=15;break a}case 8:{j=c[864+((a[758]|0)*20|0)+16>>2]|0;Bg[c[j+96>>2]&255](j,f);f=e;e=15;break a}default:{f=e;e=15;break a}}}else{f=e;e=15}}else{f=10;e=15}while(0);Gg[c[(c[12>>2]|0)+2439688>>2]&7](b,h,0,7,7,e);Xg(h,0,38328+(g<<3)|0,f);g=g+1|0}while((g|0)!=5);if(a[752]|0)return;k=(WO(804)|0)==0;e=c[(c[3]|0)+2439660>>2]|0;if(k){lg[e&31](b,c[1e3+(l<<2)>>2]|0,42,1,3)|0;return}else{lg[e&31](b,804,42,1,0)|0;return}}function Wg(b){b=b|0;var d=0,e=0;d=c[45]|0;if((d|0)==(b|0))return;if((d|0)==2){e=c[3]|0;vg[c[e+2439784>>2]&511](e)}if((b|0)!=2){e=c[3]|0;vg[c[e+2439780>>2]&511](e)}switch(d|0){case 10:case 9:case 2:case 1:case 0:break;case 11:{c[46]=3;break}default:c[46]=d}switch(b|0){case 6:{Uj(c[224]|0,c[3]|0,c[864+((a[756]|0)*20|0)+8>>2]|0);break}case 2:{ki(c[223]|0,c[222]|0,c[3]|0);break}case 11:{e=c[228]|0;vg[c[e+48>>2]&511](e);break}default:{}}c[45]=b;b=c[80021]|0;if(!b)return;d=c[b+224>>2]|0;if(!d)return;if(!(gg[d&511](b)|0))return;if((c[45]|2|0)!=3)return;aN();return}function Xg(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;k=b+7|0;l=b+1|0;m=b+2|0;n=b+3|0;o=b+4|0;p=b+5|0;j=b+6|0;i=0;while(1){h=i+d|0;g=a[e>>0]|0;if(g&1){g=c[3]|0;Eg[c[g+2439676>>2]&63](g,k,h,f);g=a[e>>0]|0}if(g&2){g=c[3]|0;Eg[c[g+2439676>>2]&63](g,j,h,f);g=a[e>>0]|0}if(g&4){g=c[3]|0;Eg[c[g+2439676>>2]&63](g,p,h,f);g=a[e>>0]|0}if(g&8){g=c[3]|0;Eg[c[g+2439676>>2]&63](g,o,h,f);g=a[e>>0]|0}if(g&16){g=c[3]|0;Eg[c[g+2439676>>2]&63](g,n,h,f);g=a[e>>0]|0}if(g&32){g=c[3]|0;Eg[c[g+2439676>>2]&63](g,m,h,f);g=a[e>>0]|0}if(g&64){g=c[3]|0;Eg[c[g+2439676>>2]&63](g,l,h,f);g=a[e>>0]|0}if(g<<24>>24<=-1){g=c[3]|0;Eg[c[g+2439676>>2]&63](g,b,h,f)}i=i+1|0;if((i|0)==8)break;else e=e+1|0}return}function Yg(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+176|0;h=n;i=n+152|0;if(c[45]|0){f=(c[3]|0)+81920|0;c[h+8>>2]=1732584193;c[h+12>>2]=-271733879;c[h+16>>2]=-1732584194;c[h+20>>2]=271733878;c[h>>2]=0;j=h+4|0;c[j>>2]=0;k=h+24|0;g=1178356;e=0;d=0;while(1){b=(g|0)<512?g:512;o=e+b&536870911;c[h>>2]=o;if(o>>>0<e>>>0){d=d+1|0;c[j>>2]=d}c[j>>2]=d+(b>>>29);d=e&63;do if(d){e=64-d|0;d=h+24+d|0;if(b>>>0<e>>>0){PQ(d|0,f|0,b|0)|0;break}else{PQ(d|0,f|0,e|0)|0;ri(h,k,64)|0;d=f+e|0;b=b-e|0;m=9;break}}else{d=f;m=9}while(0);if((m|0)==9){m=0;if(b>>>0>63){d=ri(h,d,b&-64)|0;b=b&63}PQ(k|0,d|0,b|0)|0}if((g|0)<=512)break;f=f+512|0;g=g+-512|0;e=c[h>>2]|0;d=c[j>>2]|0}si(i,h);if(KN(i,16,16)|0){if((c[45]|0)==9){l=n;return}b=c[226]|0;e=c[3]|0;d=b+8|0;o=c[d>>2]|0;c[b>>2]=e;a[b+4>>0]=0;c[b+12>>2]=115;c[b+16>>2]=0;c[b+20>>2]=1020;c[b+24>>2]=5;k=b+28|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;a[k+20>>0]=0;c[b+52>>2]=181;c[b+56>>2]=182;b=o;if(!o){b=eN(16320)|0;c[d>>2]=b;if(b|0)m=18}else m=18;if((m|0)==18)PQ(b|0,e|0,16320)|0;b=c[45]|0;c[47]=b;a:do switch(b|0){case 2:{o=c[3]|0;vg[c[o+2439784>>2]&511](o);o=c[3]|0;vg[c[o+2439780>>2]&511](o);break}case 9:{l=n;return}default:{o=c[3]|0;vg[c[o+2439780>>2]&511](o);switch(b|0){case 10:case 1:case 0:break a;case 11:{c[46]=3;break a}default:{c[46]=b;break a}}}}while(0);c[45]=9;b=c[80021]|0;if(!b){l=n;return}d=c[b+224>>2]|0;if(!d){l=n;return}if(!(gg[d&511](b)|0)){l=n;return}if((c[45]|2|0)!=3){l=n;return}aN();l=n;return}}a[920]=1;l=n;return}function Zg(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;if((c[45]|0)==9)return;j=c[226]|0;g=c[3]|0;f=j+8|0;i=c[f>>2]|0;c[j>>2]=g;a[j+4>>0]=0;c[j+12>>2]=116;c[j+16>>2]=e;c[j+20>>2]=b;c[j+24>>2]=d;b=j+28|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;a[b+20>>0]=0;c[j+52>>2]=181;c[j+56>>2]=182;b=i;if(!i){b=eN(16320)|0;c[f>>2]=b;if(b|0)h=4}else h=4;if((h|0)==4)PQ(b|0,g|0,16320)|0;b=c[45]|0;c[47]=b;a:do switch(b|0){case 2:{j=c[3]|0;vg[c[j+2439784>>2]&511](j);j=c[3]|0;vg[c[j+2439780>>2]&511](j);break}case 9:return;default:{j=c[3]|0;vg[c[j+2439780>>2]&511](j);switch(b|0){case 10:case 1:case 0:break a;case 11:{c[46]=3;break a}default:{c[46]=b;break a}}}}while(0);c[45]=9;b=c[80021]|0;if(!b)return;d=c[b+224>>2]|0;if(!d)return;if(!(gg[d&511](b)|0))return;if((c[45]|2|0)!=3)return;aN();return}function _g(b,c){b=b|0;c=c|0;a[920]=b&1;return}function $g(){var b=0,d=0,e=0,f=0,g=0;b=c[228]|0;d=c[3]|0;e=c[222]|0;f=c[e+4916>>2]|0;if((c[79298]|0)==0?(g=Sf(13,1)|0,g|0):0)Sf(13,g|0)|0;c[79298]=(c[79298]|0)+1;g=eN(4104)|0;RQ(g|0,0,4104)|0;c[b>>2]=d;c[b+4>>2]=f;c[b+8>>2]=e;c[b+12>>2]=g;c[b+16>>2]=317268;a[b+20>>0]=0;g=b+24|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[g+16>>2]=0;c[b+44>>2]=183;c[b+48>>2]=184;Gi(f,88445);b=c[45]|0;a:do switch(b|0){case 2:{g=c[3]|0;vg[c[g+2439784>>2]&511](g);g=c[3]|0;vg[c[g+2439780>>2]&511](g);break}case 11:return;default:{g=c[3]|0;vg[c[g+2439780>>2]&511](g);switch(b|0){case 9:case 10:case 1:case 0:break a;default:{}}c[46]=b}}while(0);b=c[228]|0;vg[c[b+48>>2]&511](b);c[45]=11;b=c[80021]|0;if(!b)return;d=c[b+224>>2]|0;if(!d)return;if(!(gg[d&511](b)|0))return;if((c[45]|2|0)!=3)return;aN();return}function ah(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+4128|0;d=k+16|0;b=k;i=k+24|0;PQ(i|0,38438,4096)|0;a=(c[222]|0)+4920|0;if(WO(a)|0){c[b>>2]=42542;c[b+4>>2]=a;MN(i,42534,b)|0}e=c[10]|0;a=c[80021]|0;do if(!a)mE(288511,k+8|0);else{if(e|0?(c[e>>2]|0)==(a+280|0):0){a=e+8|0;b=c[a>>2]|0;if((b|0)==(i|0))break;fN(b);c[a>>2]=nP(i)|0;a=c[80021]|0;b=c[a+40>>2]|0;if(!b)break;Bg[b&255](a,e);break}mE(307733,d)}while(0);e=(c[3]|0)+81920|0;c[i+8>>2]=1732584193;c[i+12>>2]=-271733879;c[i+16>>2]=-1732584194;c[i+20>>2]=271733878;c[i>>2]=0;g=i+4|0;c[g>>2]=0;h=i+24|0;f=1178356;d=0;b=0;while(1){a=(f|0)<512?f:512;m=d+a&536870911;c[i>>2]=m;if(m>>>0<d>>>0){b=b+1|0;c[g>>2]=b}c[g>>2]=b+(a>>>29);b=d&63;do if(b){d=64-b|0;b=i+24+b|0;if(a>>>0<d>>>0){PQ(b|0,e|0,a|0)|0;break}else{PQ(b|0,e|0,d|0)|0;ri(i,h,64)|0;b=e+d|0;a=a-d|0;j=18;break}}else{b=e;j=18}while(0);if((j|0)==18){j=0;if(a>>>0>63){b=ri(i,b,a&-64)|0;a=a&63}PQ(h|0,b|0,a|0)|0}if((f|0)<=512)break;e=e+512|0;f=f+-512|0;d=c[i>>2]|0;b=c[g>>2]|0}si(16,i);j=c[222]|0;j=Fi(c[j+4916>>2]|0,j+4920|0)|0;m=32;c[m>>2]=j;c[m+4>>2]=z;l=k;return}function bh(){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+4128|0;f=n+16|0;e=n;k=n+24|0;d=c[3]|0;b[377]=0;b[378]=0;a[758]=0;Zj(c[216]|0,d,d+147352|0);Oi(c[217]|0,c[3]|0,d+81920|0);hj(c[218]|0,c[3]|0,d+98304|0);uj(c[219]|0,c[3]|0,d+130944|0);Ej(c[220]|0,c[3]|0,d+135424|0);Uj(c[224]|0,c[3]|0,c[864+((a[756]|0)*20|0)+8>>2]|0);PQ(k|0,38438,4096)|0;d=(c[222]|0)+4920|0;if(WO(d)|0){c[e>>2]=42542;c[e+4>>2]=d;MN(k,42534,e)|0}g=c[10]|0;d=c[80021]|0;do if(!d)mE(288511,n+8|0);else{if(g|0?(c[g>>2]|0)==(d+280|0):0){d=g+8|0;e=c[d>>2]|0;if((e|0)==(k|0))break;fN(e);c[d>>2]=nP(k)|0;d=c[80021]|0;e=c[d+40>>2]|0;if(!e)break;Bg[e&255](d,g);break}mE(307733,f)}while(0);g=(c[3]|0)+81920|0;c[k+8>>2]=1732584193;c[k+12>>2]=-271733879;c[k+16>>2]=-1732584194;c[k+20>>2]=271733878;c[k>>2]=0;i=k+4|0;c[i>>2]=0;j=k+24|0;h=1178356;f=0;e=0;while(1){d=(h|0)<512?h:512;o=f+d&536870911;c[k>>2]=o;if(o>>>0<f>>>0){e=e+1|0;c[i>>2]=e}c[i>>2]=e+(d>>>29);e=f&63;do if(e){f=64-e|0;e=k+24+e|0;if(d>>>0<f>>>0){PQ(e|0,g|0,d|0)|0;break}else{PQ(e|0,g|0,f|0)|0;ri(k,j,64)|0;e=g+f|0;d=d-f|0;m=18;break}}else{e=g;m=18}while(0);if((m|0)==18){m=0;if(d>>>0>63){e=ri(k,e,d&-64)|0;d=d&63}PQ(j|0,e|0,d|0)|0}if((h|0)<=512)break;g=g+512|0;h=h+-512|0;f=c[k>>2]|0;e=c[i>>2]|0}si(16,k);m=c[222]|0;m=Fi(c[m+4916>>2]|0,m+4920|0)|0;o=32;c[o>>2]=m;c[o+4>>2]=z;l=n;return}function ch(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+176|0;g=m;h=m+152|0;e=(c[3]|0)+81920|0;c[g+8>>2]=1732584193;c[g+12>>2]=-271733879;c[g+16>>2]=-1732584194;c[g+20>>2]=271733878;c[g>>2]=0;i=g+4|0;c[i>>2]=0;j=g+24|0;f=1178356;d=0;b=0;while(1){a=(f|0)<512?f:512;n=d+a&536870911;c[g>>2]=n;if(n>>>0<d>>>0){b=b+1|0;c[i>>2]=b}c[i>>2]=b+(a>>>29);b=d&63;do if(b){d=64-b|0;b=g+24+b|0;if(a>>>0<d>>>0){PQ(b|0,e|0,a|0)|0;break}else{PQ(b|0,e|0,d|0)|0;ri(g,j,64)|0;b=e+d|0;a=a-d|0;k=8;break}}else{b=e;k=8}while(0);if((k|0)==8){k=0;if(a>>>0>63){b=ri(g,b,a&-64)|0;a=a&63}PQ(j|0,b|0,a|0)|0}if((f|0)<=512)break;e=e+512|0;f=f+-512|0;d=c[g>>2]|0;b=c[i>>2]|0}si(h,g);n=(KN(h,16,16)|0)!=0;l=m;return n|0}function dh(){var a=0,b=0;a=c[3]|0;vg[c[a+2439780>>2]&511](a);a=c[45]|0;switch(a|0){case 2:{ki(c[223]|0,c[222]|0,c[3]|0);return}case 10:case 9:case 1:case 0:break;case 11:{c[46]=3;break}default:c[46]=a}ki(c[223]|0,c[222]|0,c[3]|0);c[45]=2;a=c[80021]|0;if(!a)return;b=c[a+224>>2]|0;if(!b)return;if(!(gg[b&511](a)|0))return;if((c[45]|2|0)!=3)return;aN();return}function eh(){var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,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;ea=l;l=l+4320|0;ba=ea+4312|0;aa=ea+4304|0;$=ea+4296|0;_=ea+4288|0;W=ea+4280|0;V=ea+4272|0;U=ea+4264|0;T=ea+4256|0;Q=ea+4248|0;P=ea+4240|0;S=ea+4232|0;A=ea+4224|0;C=ea+4216|0;B=ea+4208|0;Z=ea+4200|0;Y=ea+4192|0;X=ea+4184|0;R=ea+4176|0;D=ea+4168|0;M=ea+4160|0;L=ea+4152|0;K=ea+4144|0;N=ea+4136|0;E=ea+4128|0;J=ea+4120|0;I=ea+4112|0;H=ea+4104|0;G=ea+4096|0;F=ea;f=c[80021]|0;if(f|0)vg[c[f+204>>2]&511](f);if(!(((((((((((((((c[80061]|0)!=0?(o=c[80061]|0,(o|0)!=0):0)?(c[o>>2]&1|0)!=0:0)?(n=c[80061]|0,(n|0)!=0):0)?(c[n>>2]&2|0)!=0:0)?(h=c[80061]|0,(h|0)!=0):0)?(c[h>>2]&4|0)!=0:0)?(i=c[80061]|0,(i|0)!=0):0)?(c[i>>2]&8|0)!=0:0)?(j=c[80061]|0,(j|0)!=0):0)?(c[j>>2]&16|0)!=0:0)?(k=c[80061]|0,(k|0)!=0):0)?(c[k>>2]&32|0)!=0:0)?(m=c[80061]|0,(m|0)!=0):0)?(c[m>>2]&64|0)!=0:0))da=7;if((da|0)==7?(p=c[81020]|0,p|0):0){q=F+8|0;r=F+12|0;s=F+13|0;t=F+8|0;u=F+12|0;v=F+13|0;w=F+4|0;x=F+4|0;do{n=p;p=c[p+60>>2]|0;c[81021]=n;_M(n);o=n+52|0;if(c[o>>2]|0){h=n+8|0;if((c[h>>2]|0)>0){i=n+16|0;f=0;do{$M(n,f&255,b[(c[i>>2]|0)+(f<<1)>>1]|0);f=f+1|0}while((f|0)<(c[h>>2]|0))}k=n+36|0;f=c[k>>2]|0;if((f|0)>0){m=n+40|0;j=0;do{h=j&255;c[F>>2]=1540;i=j&255;do if((i|0)<(f|0)?(y=(c[m>>2]|0)+i|0,a[y>>0]|0):0){a[y>>0]=0;i=c[F>>2]|0;f=c[320220+((i>>>8&255)<<2)>>2]|0;if(f|0?c[f+((i>>>5&7)<<2)>>2]&1<<(i&31)|0:0)break;c[t>>2]=c[n>>2];a[u>>0]=h;a[v>>0]=0;c[w>>2]=II()|0;f=c[80311]|0;if(f|0)do{hg[c[f>>2]&63](c[f+4>>2]|0,F)|0;f=c[f+8>>2]|0}while((f|0)!=0);if((JI(F,1,0,0,0)|0)>=1)KI(F)}while(0);j=j+1|0;f=c[k>>2]|0}while((j|0)<(f|0))}k=n+20|0;f=c[k>>2]|0;if((f|0)>0){m=n+24|0;j=0;do{h=j&255;i=j&255;do if((i|0)<(f|0)?(z=(c[m>>2]|0)+i|0,a[z>>0]|0):0){a[z>>0]=0;i=c[80061]|0;if(i|0?c[i>>2]&4|0:0)break;c[F>>2]=1538;c[q>>2]=c[n>>2];a[r>>0]=h;a[s>>0]=0;c[x>>2]=II()|0;f=c[80311]|0;if(f|0)do{hg[c[f>>2]&63](c[f+4>>2]|0,F)|0;f=c[f+8>>2]|0}while((f|0)!=0);if((JI(F,1,0,0,0)|0)>=1)KI(F)}while(0);j=j+1|0;f=c[k>>2]|0}while((j|0)<(f|0))}c[o>>2]=0}c[81021]=0;if((c[n+48>>2]|0)<1)QM(n)}while((p|0)!=0)}do if(c[80054]|0){c[80054]=0;z=c[80056]|0;if(z|0?c[z>>2]&1|0:0)break;c[F>>2]=256;c[F+4>>2]=II()|0;f=c[80311]|0;if(f|0)do{hg[c[f>>2]&63](c[f+4>>2]|0,F)|0;f=c[f+8>>2]|0}while((f|0)!=0);if((JI(F,1,0,0,0)|0)>=1)KI(F)}while(0);switch(JI(316280,1,2,0,65535)|0){case 0:case -1:{a:do if((c[45]|0)==2)da=358;else{f=c[80960]|0;if((f|0)<=0){mE(298497,A);f=c[80960]|0;if((f|0)>0){o=0;p=0;da=336}}else{p=c[c[80961]>>2]|0;o=c[p>>2]|0;p=c[p+4>>2]|0;da=336}b:do if((da|0)==336){k=c[80961]|0;h=0;while(1){i=c[k+(h<<2)>>2]|0;Z=i;if((c[Z>>2]|0)==(o|0)?(c[Z+4>>2]|0)==(p|0):0)break;h=h+1|0;if((h|0)>=(f|0))break b}if((h|0)>-1&(h|0)<(f|0)){if(!i){da=358;break a}if((c[i+8>>2]|0)==2)h=0;else{da=358;break a}while(1){i=c[k+(h<<2)>>2]|0;Z=i;if((c[Z>>2]|0)==(o|0)?(c[Z+4>>2]|0)==(p|0):0)break;j=h+1|0;if((j|0)<(f|0))h=j;else{da=346;break}}if((da|0)==346)mE(298497,P);if(!((h|0)>-1&(h|0)<(f|0)))mE(298497,P);if((c[i+8>>2]|0)<=0)mE(310217,Q);i=c[c[i+16>>2]>>2]|0;h=~~(+g[i+8>>2]*240.0);i=~~(+g[i+12>>2]*136.0);j=c[80960]|0;if((j|0)<=0)mE(298497,T);k=c[80961]|0;f=0;while(1){m=c[k+(f<<2)>>2]|0;Z=m;if((c[Z>>2]|0)==(o|0)?(c[Z+4>>2]|0)==(p|0):0)break;n=f+1|0;if((n|0)<(j|0))f=n;else{da=354;break}}if((da|0)==354)mE(298497,T);if(!((f|0)>-1&(f|0)<(j|0)))mE(298497,T);if((c[m+8>>2]|0)>0){Y=c[c[m+16>>2]>>2]|0;Z=(~~(+g[Y+12>>2]*136.0)+i|0)/2|0;c[69]=(~~(+g[Y+8>>2]*240.0)+h|0)/2|0;c[70]=Z;a[284]=1;break a}else mE(310217,U)}}while(0);mE(298497,S);da=358}while(0);do if((da|0)==358?(a[284]|0)==0:0){c[48]=c[80038];c[49]=c[80039];c[50]=c[80044];h=c[10]|0;f=c[80021]|0;do if(!f){mE(288511,V);i=0;j=0}else{if(h|0?(c[h>>2]|0)==(f+280|0):0){i=c[h+24>>2]|0;j=c[h+28>>2]|0;break}mE(307733,W);i=0;j=0}while(0);do if((i*136|0)<(j*240|0)){h=(i|0)%240|0;f=i-h|0;k=(f*136|0)/240|0;h=(h|0)/2|0;if((i|0)>(j|0)){m=k;i=(j-k|0)/2|0;break}else{m=k;i=(f|0)/30|0;break}}else{da=(j|0)%136|0;m=j-da|0;f=(m*240|0)/136|0;h=(i-f|0)/2|0;i=(da|0)/2|0}while(0);if(f|0)c[48]=(((c[48]|0)-h|0)*240|0)/(f|0)|0;f=c[49]|0;if(m){f=((f-i|0)*136|0)/(m|0)|0;c[49]=f}i=c[50]|0;j=c[48]|0;h=(i&1|0)==0;if(!(a[204]|0)){if(!h){a[204]=1;c[52]=j;c[53]=f}}else if(h){c[54]=j;c[55]=f;a[205]=1;a[204]=0}h=(i&2|0)==0;if(!(a[224]|0)){if(!h){a[224]=1;c[57]=j;c[58]=f}}else if(h){c[59]=j;c[60]=f;a[225]=1;a[224]=0}h=(i&4|0)==0;if(!(a[244]|0)){if(h)break;a[244]=1;c[62]=j;c[63]=f;break}else{if(!h)break;c[64]=j;c[65]=f;a[245]=1;a[244]=0;break}}while(0);if((c[45]|0)!=2){lh();da=0;l=ea;return da|0}f=c[3]|0;h=a[f+2440920>>0]|0;if(h&1){lh();h=c[3]|0;f=h;h=a[h+2440920>>0]|0}if(h&2){f=c[41]|0;c:do if((f|0)!=0?(c[f+44>>2]|0)!=0:0){j=f+36|0;k=c[j>>2]|0;if((k|0)>5){h=f+40|0;f=5;do{i=c[j>>2]|0;if((i|0)>(f|0)){if(a[(c[h>>2]|0)+f>>0]|0){da=401;break c}}else{c[_>>2]=i;mE(310277,_)}f=f+1|0}while((f|0)<(k|0))}a[704]=0;f=1;da=410}else{f=0;da=410}while(0);d:do if((da|0)==410){h=c[42]|0;if((h|0)!=0?(c[h+44>>2]|0)!=0:0)if((f|0)==0|685!=0){k=h+36|0;m=c[k>>2]|0;if((m|0)>5){i=h+40|0;h=5;do{j=c[k>>2]|0;if((j|0)>(h|0)){if(a[(c[i>>2]|0)+h>>0]|0){da=401;break d}}else{c[$>>2]=j;mE(310277,$)}h=h+1|0}while((h|0)<(m|0))}a[704]=0;f=f+1|0}else f=1;h=c[43]|0;e:do if((h|0)!=0?(c[h+44>>2]|0)!=0:0){switch(f|0){case 0:break;case 1:{if(!685){f=1;break e}break}default:break e}k=h+36|0;m=c[k>>2]|0;if((m|0)>5){i=h+40|0;h=5;do{j=c[k>>2]|0;if((j|0)>(h|0)){if(a[(c[i>>2]|0)+h>>0]|0){da=401;break d}}else{c[aa>>2]=j;mE(310277,aa)}h=h+1|0}while((h|0)<(m|0))}a[704]=0;f=f+1|0}while(0);h=c[44]|0;if(h|0?c[h+44>>2]|0:0){switch(f|0){case 0:break;case 1:{if(!685)break d;break}default:break d}j=h+36|0;k=c[j>>2]|0;if((k|0)>5){h=h+40|0;f=5;do{i=c[j>>2]|0;if((i|0)>(f|0)){if(a[(c[h>>2]|0)+f>>0]|0){da=401;break d}}else{c[ba>>2]=i;mE(310277,ba)}f=f+1|0}while((f|0)<(k|0))}a[704]=0}}while(0);f:do if((da|0)==401?(a[704]|0)==0:0){g:do switch(c[45]|0){case 2:{if(!(a[(c[222]|0)+13125>>0]|0))break f;f=c[3]|0;vg[c[f+2439784>>2]&511](f);f=c[3]|0;vg[c[f+2439780>>2]&511](f);f=c[227]|0;i=c[3]|0;ba=c[229]|0;h=f+12|0;da=c[h>>2]|0;c[f>>2]=i;c[f+4>>2]=ba;a[f+8>>0]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[f+24>>2]=0;c[f+28>>2]=-1;ba=f+32|0;c[ba>>2]=0;c[ba+4>>2]=0;c[ba+8>>2]=0;c[ba+12>>2]=0;a[ba+16>>0]=0;c[f+52>>2]=0;c[f+56>>2]=185;f=da;if(!da){f=eN(16320)|0;c[h>>2]=f;if(!f){f=10;break g}}PQ(f|0,i|0,16320)|0;f=10;break}case 10:{f=c[3]|0;vg[c[f+2439788>>2]&511](f);f=2;break}default:break f}while(0);c[45]=f;a[704]=1}while(0);da=c[48]|0;h=c[49]|0;da=(da|0)>0?da:0;h=(h|0)>0?h:0;f=c[3]|0;a[f+65412>>0]=(da|0)<239?da:239;a[f+65413>>0]=(h|0)<135?h:135;h=f+65414|0;b[h>>1]=b[h>>1]&-8|d[204]|a[224]<<1&255|a[244]<<2&255;h=a[f+2440920>>0]|0}if(!(h&4)){da=0;l=ea;return da|0}i=f+65416|0;c[i>>2]=0;c[72]=321278;h=0;f=0;do{if((a[321278+h>>0]|0)!=0?(ca=a[42644+h>>0]|0,ca<<24>>24!=0):0){a[i+f>>0]=ca;f=f+1|0}h=h+1|0}while(h>>>0<232&f>>>0<4);f=0;l=ea;return f|0}default:{}}switch(c[79070]|0){case 768:{if(a[316293]|0){da=316280;l=ea;return da|0}h=e[158152]|0;i=c[45]|0;h:do switch(i|0){case 1:if(!(a[(c[222]|0)+13124>>0]|0)){da=0;l=ea;return da|0}else{f=c[79075]|0;break h}case 2:{f=c[79075]|0;if(a[(c[222]|0)+13125>>0]|0)da=56;break}case 0:{da=0;l=ea;return da|0}default:{f=c[79075]|0;if((i|0)==10)da=56}}while(0);i:do if((da|0)==56){j:do if((f|0)<1073741889){if((f|0)>=27){if((f|0)<1073741888){switch(f|0){case 27:break j;default:f=316280}l=ea;return f|0}switch(f|0){case 1073741888:break;default:{da=316280;l=ea;return da|0}}f=c[3]|0;if((i|0)!=2){da=0;l=ea;return da|0}Eg[c[f+2439824>>2]&63](f,c[f+2439772>>2]|0,c[f+2439776>>2]|0,0);j=eN(130560)|0;if(!j){da=0;l=ea;return da|0}i=0;f=f+2445028|0;h=j;while(1){PQ(h|0,f+32|0,960)|0;i=i+1|0;if((i|0)==136)break;else{f=f+1024|0;h=h+960|0}}h=c[3]|0;wi(h+1129716|0,h+1129712|0,240,136,j,1,1);fN(j);c[190]=120;h=764;f=42570;i=h+21|0;do{a[h>>0]=a[f>>0]|0;h=h+1|0;f=f+1|0}while((h|0)<(i|0));da=0;l=ea;return da|0}switch(f|0){case 13:break;default:{da=316280;l=ea;return da|0}}if(!(h&512)){f=13;break i}k=a[860]|0;a[860]=k^1;j=c[10]|0;k=k<<24>>24==0?4097:0;f=c[80021]|0;if(!f){mE(288511,I);da=0;l=ea;return da|0}if(j|0?(c[j>>2]|0)==(f+280|0):0){f=j+48|0;h=c[f>>2]|0;i=h&4097;if((k|0)==(i|0)){da=0;l=ea;return da|0}c[f>>2]=h&-4098|k;if(!(GI(j,(k&1|0)!=0&(h&68|0)==4&1)|0)){da=0;l=ea;return da|0}c[f>>2]=c[f>>2]&-4098|i;da=0;l=ea;return da|0}mE(307733,J);da=0;l=ea;return da|0}else switch(f|0){case 1073742094:break j;case 1073741892:{k=a[860]|0;a[860]=k^1;j=c[10]|0;k=k<<24>>24==0?4097:0;f=c[80021]|0;if(!f){mE(288511,G);da=0;l=ea;return da|0}if(j|0?(c[j>>2]|0)==(f+280|0):0){f=j+48|0;h=c[f>>2]|0;i=h&4097;if((k|0)==(i|0)){da=0;l=ea;return da|0}c[f>>2]=h&-4098|k;if(!(GI(j,(k&1|0)!=0&(h&68|0)==4&1)|0)){da=0;l=ea;return da|0}c[f>>2]=c[f>>2]&-4098|i;da=0;l=ea;return da|0}mE(307733,H);da=0;l=ea;return da|0}case 1073741889:{c[213]=1;da=eN(147456)|0;c[212]=da;if(!da){da=0;l=ea;return da|0}a[844]=1;c[214]=0;da=0;l=ea;return da|0}default:{da=316280;l=ea;return da|0}}while(0);f=c[3]|0;do if((i|0)==10){vg[c[f+2439788>>2]&511](f);f=2}else{vg[c[f+2439784>>2]&511](f);f=c[3]|0;vg[c[f+2439780>>2]&511](f);f=c[227]|0;i=c[3]|0;ca=c[229]|0;h=f+12|0;da=c[h>>2]|0;c[f>>2]=i;c[f+4>>2]=ca;a[f+8>>0]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[f+24>>2]=0;c[f+28>>2]=-1;ca=f+32|0;c[ca>>2]=0;c[ca+4>>2]=0;c[ca+8>>2]=0;c[ca+12>>2]=0;a[ca+16>>0]=0;c[f+52>>2]=0;c[f+56>>2]=185;f=da;if(!da){f=eN(16320)|0;c[h>>2]=f;if(!f){f=10;break}}PQ(f|0,i|0,16320)|0;f=10}while(0);c[45]=f;a[704]=1;da=0;l=ea;return da|0}while(0);k:do if(!(h&256)){if((f|0)<1073741884){if((f|0)<114){switch(f|0){case 27:{da=253;break k}case 113:{da=207;break k}case 13:{da=234;break k}default:f=316280}l=ea;return f|0}if((f|0)<1073741882){switch(f|0){case 114:{da=209;break k}case 115:{da=219;break k}default:f=316280}l=ea;return f|0}switch(f|0){case 1073741882:{l:do switch(i|0){case 2:{da=c[3]|0;vg[c[da+2439784>>2]&511](da);da=c[3]|0;vg[c[da+2439780>>2]&511](da);break}case 3:{da=0;l=ea;return da|0}default:{da=c[3]|0;vg[c[da+2439780>>2]&511](da);switch(i|0){case 10:case 9:case 1:case 0:break l;case 11:{c[46]=3;break l}default:{c[46]=i;break l}}}}while(0);c[45]=3;f=c[80021]|0;if(!f){da=0;l=ea;return da|0}h=c[f+224>>2]|0;if(!h){da=0;l=ea;return da|0}if(!(gg[h&511](f)|0)){da=0;l=ea;return da|0}if((c[45]|2|0)!=3){da=0;l=ea;return da|0}aN();da=0;l=ea;return da|0}case 1073741883:{m:do switch(i|0){case 2:{da=c[3]|0;vg[c[da+2439784>>2]&511](da);da=c[3]|0;vg[c[da+2439780>>2]&511](da);break}case 4:{da=0;l=ea;return da|0}default:{da=c[3]|0;vg[c[da+2439780>>2]&511](da);switch(i|0){case 9:case 1:case 10:break m;case 11:{c[46]=3;break m}default:{c[46]=i;break m}}}}while(0);c[45]=4;f=c[80021]|0;if(!f){da=0;l=ea;return da|0}h=c[f+224>>2]|0;if(!h){da=0;l=ea;return da|0}if(!(gg[h&511](f)|0)){da=0;l=ea;return da|0}if((c[45]|2|0)!=3){da=0;l=ea;return da|0}aN();da=0;l=ea;return da|0}default:{da=316280;l=ea;return da|0}}}switch(f|0){case 1073741892:{da=226;break k}case 1073742094:{da=253;break k}case 1073741884:{n:do switch(i|0){case 2:{da=c[3]|0;vg[c[da+2439784>>2]&511](da);da=c[3]|0;vg[c[da+2439780>>2]&511](da);break}case 5:{da=0;l=ea;return da|0}default:{da=c[3]|0;vg[c[da+2439780>>2]&511](da);switch(i|0){case 9:case 1:case 10:break n;case 11:{c[46]=3;break n}default:{c[46]=i;break n}}}}while(0);c[45]=5;f=c[80021]|0;if(!f){da=0;l=ea;return da|0}h=c[f+224>>2]|0;if(!h){da=0;l=ea;return da|0}if(!(gg[h&511](f)|0)){da=0;l=ea;return da|0}if((c[45]|2|0)!=3){da=0;l=ea;return da|0}aN();da=0;l=ea;return da|0}case 1073741885:{o:do switch(i|0){case 2:{da=c[3]|0;vg[c[da+2439784>>2]&511](da);da=c[3]|0;vg[c[da+2439780>>2]&511](da);break}case 7:{da=0;l=ea;return da|0}default:{da=c[3]|0;vg[c[da+2439780>>2]&511](da);switch(i|0){case 9:case 1:case 10:break o;case 11:{c[46]=3;break o}default:{c[46]=i;break o}}}}while(0);c[45]=7;f=c[80021]|0;if(!f){da=0;l=ea;return da|0}h=c[f+224>>2]|0;if(!h){da=0;l=ea;return da|0}if(!(gg[h&511](f)|0)){da=0;l=ea;return da|0}if((c[45]|2|0)!=3){da=0;l=ea;return da|0}aN();da=0;l=ea;return da|0}case 1073741886:{p:do switch(i|0){case 2:{da=c[3]|0;vg[c[da+2439784>>2]&511](da);da=c[3]|0;vg[c[da+2439780>>2]&511](da);break}case 8:{da=0;l=ea;return da|0}default:{da=c[3]|0;vg[c[da+2439780>>2]&511](da);switch(i|0){case 9:case 1:case 10:break p;case 11:{c[46]=3;break p}default:{c[46]=i;break p}}}}while(0);c[45]=8;f=c[80021]|0;if(!f){da=0;l=ea;return da|0}h=c[f+224>>2]|0;if(!h){da=0;l=ea;return da|0}if(!(gg[h&511](f)|0)){da=0;l=ea;return da|0}if((c[45]|2|0)!=3){da=0;l=ea;return da|0}aN();da=0;l=ea;return da|0}case 1073741888:{f=c[3]|0;if((i|0)!=2){da=0;l=ea;return da|0}Eg[c[f+2439824>>2]&63](f,c[f+2439772>>2]|0,c[f+2439776>>2]|0,0);j=eN(130560)|0;if(!j){da=0;l=ea;return da|0}i=0;f=f+2445028|0;h=j;while(1){PQ(h|0,f+32|0,960)|0;i=i+1|0;if((i|0)==136)break;else{f=f+1024|0;h=h+960|0}}h=c[3]|0;wi(h+1129716|0,h+1129712|0,240,136,j,1,1);fN(j);c[190]=120;h=764;f=42570;i=h+21|0;do{a[h>>0]=a[f>>0]|0;h=h+1|0;f=f+1|0}while((h|0)<(i|0));da=0;l=ea;return da|0}case 1073741889:{c[213]=1;da=eN(147456)|0;c[212]=da;if(!da){da=0;l=ea;return da|0}a[844]=1;c[214]=0;da=0;l=ea;return da|0}default:{da=316280;l=ea;return da|0}}}else{if((f|0)>=53){if((f|0)>=114)if((f|0)<1073741892){switch(f|0){case 114:{da=209;break k}case 115:{da=219;break k}default:f=316280}l=ea;return f|0}else{switch(f|0){case 1073742094:{da=253;break k}case 1073741892:{da=226;break k}default:f=316280}l=ea;return f|0}switch(f|0){case 113:{da=207;break k}case 96:{q:do switch(i|0){case 2:{da=c[3]|0;vg[c[da+2439784>>2]&511](da);da=c[3]|0;vg[c[da+2439780>>2]&511](da);break}case 1:{da=0;l=ea;return da|0}default:{da=c[3]|0;vg[c[da+2439780>>2]&511](da);switch(i|0){case 10:case 9:break q;case 11:{c[46]=3;break q}default:{c[46]=i;break q}}}}while(0);c[45]=1;f=c[80021]|0;if(!f){da=0;l=ea;return da|0}h=c[f+224>>2]|0;if(!h){da=0;l=ea;return da|0}if(!(gg[h&511](f)|0)){da=0;l=ea;return da|0}if((c[45]|2|0)!=3){da=0;l=ea;return da|0}aN();da=0;l=ea;return da|0}case 53:{r:do switch(i|0){case 2:{da=c[3]|0;vg[c[da+2439784>>2]&511](da);da=c[3]|0;vg[c[da+2439780>>2]&511](da);break}case 8:{da=0;l=ea;return da|0}default:{da=c[3]|0;vg[c[da+2439780>>2]&511](da);switch(i|0){case 9:case 1:case 10:break r;case 11:{c[46]=3;break r}default:{c[46]=i;break r}}}}while(0);c[45]=8;f=c[80021]|0;if(!f){da=0;l=ea;return da|0}h=c[f+224>>2]|0;if(!h){da=0;l=ea;return da|0}if(!(gg[h&511](f)|0)){da=0;l=ea;return da|0}if((c[45]|2|0)!=3){da=0;l=ea;return da|0}aN();da=0;l=ea;return da|0}default:{da=316280;l=ea;return da|0}}}switch(f|0){case 13:{da=234;break k}case 27:{da=253;break k}case 49:{s:do switch(i|0){case 2:{da=c[3]|0;vg[c[da+2439784>>2]&511](da);da=c[3]|0;vg[c[da+2439780>>2]&511](da);break}case 3:{da=0;l=ea;return da|0}default:{da=c[3]|0;vg[c[da+2439780>>2]&511](da);switch(i|0){case 10:case 9:case 1:case 0:break s;case 11:{c[46]=3;break s}default:{c[46]=i;break s}}}}while(0);c[45]=3;f=c[80021]|0;if(!f){da=0;l=ea;return da|0}h=c[f+224>>2]|0;if(!h){da=0;l=ea;return da|0}if(!(gg[h&511](f)|0)){da=0;l=ea;return da|0}if((c[45]|2|0)!=3){da=0;l=ea;return da|0}aN();da=0;l=ea;return da|0}case 50:{t:do switch(i|0){case 2:{da=c[3]|0;vg[c[da+2439784>>2]&511](da);da=c[3]|0;vg[c[da+2439780>>2]&511](da);break}case 4:{da=0;l=ea;return da|0}default:{da=c[3]|0;vg[c[da+2439780>>2]&511](da);switch(i|0){case 9:case 1:case 10:break t;case 11:{c[46]=3;break t}default:{c[46]=i;break t}}}}while(0);c[45]=4;f=c[80021]|0;if(!f){da=0;l=ea;return da|0}h=c[f+224>>2]|0;if(!h){da=0;l=ea;return da|0}if(!(gg[h&511](f)|0)){da=0;l=ea;return da|0}if((c[45]|2|0)!=3){da=0;l=ea;return da|0}aN();da=0;l=ea;return da|0}case 51:{u:do switch(i|0){case 2:{da=c[3]|0;vg[c[da+2439784>>2]&511](da);da=c[3]|0;vg[c[da+2439780>>2]&511](da);break}case 5:{da=0;l=ea;return da|0}default:{da=c[3]|0;vg[c[da+2439780>>2]&511](da);switch(i|0){case 9:case 1:case 10:break u;case 11:{c[46]=3;break u}default:{c[46]=i;break u}}}}while(0);c[45]=5;f=c[80021]|0;if(!f){da=0;l=ea;return da|0}h=c[f+224>>2]|0;if(!h){da=0;l=ea;return da|0}if(!(gg[h&511](f)|0)){da=0;l=ea;return da|0}if((c[45]|2|0)!=3){da=0;l=ea;return da|0}aN();da=0;l=ea;return da|0}case 52:{v:do switch(i|0){case 2:{da=c[3]|0;vg[c[da+2439784>>2]&511](da);da=c[3]|0;vg[c[da+2439780>>2]&511](da);break}case 7:{da=0;l=ea;return da|0}default:{da=c[3]|0;vg[c[da+2439780>>2]&511](da);switch(i|0){case 9:case 1:case 10:break v;case 11:{c[46]=3;break v}default:{c[46]=i;break v}}}}while(0);c[45]=7;f=c[80021]|0;if(!f){da=0;l=ea;return da|0}h=c[f+224>>2]|0;if(!h){da=0;l=ea;return da|0}if(!(gg[h&511](f)|0)){da=0;l=ea;return da|0}if((c[45]|2|0)!=3){da=0;l=ea;return da|0}aN();da=0;l=ea;return da|0}default:{da=316280;l=ea;return da|0}}}while(0);if((da|0)==207){if(!(h&3264)){da=316280;l=ea;return da|0}Yg();da=0;l=ea;return da|0}else if((da|0)==209){if(!(h&3264)){da=316280;l=ea;return da|0}f=c[3]|0;vg[c[f+2439780>>2]&511](f);f=c[45]|0;switch(f|0){case 2:{ki(c[223]|0,c[222]|0,c[3]|0);da=0;l=ea;return da|0}case 10:case 9:case 1:case 0:break;case 11:{c[46]=3;break}default:c[46]=f}ki(c[223]|0,c[222]|0,c[3]|0);c[45]=2;f=c[80021]|0;if(!f){da=0;l=ea;return da|0}h=c[f+224>>2]|0;if(!h){da=0;l=ea;return da|0}if(!(gg[h&511](f)|0)){da=0;l=ea;return da|0}if((c[45]|2|0)!=3){da=0;l=ea;return da|0}aN();da=0;l=ea;return da|0}else if((da|0)==219){if(!(h&3264)){da=316280;l=ea;return da|0}da=c[222]|0;switch(gg[c[da+13156>>2]&511](da)|0){case 0:{c[E>>2]=(c[222]|0)+4920;MN(F,42591,E)|0;if((WO(F)|0)>0){f=0;do{da=F+f|0;a[da>>0]=BN(a[da>>0]|0)|0;f=f+1|0}while((f|0)<(WO(F)|0))}c[190]=120;aP(764,F)|0;da=0;l=ea;return da|0}case 2:{c[190]=120;h=764;f=42603;i=h+27|0;do{a[h>>0]=a[f>>0]|0;h=h+1|0;f=f+1|0}while((h|0)<(i|0));da=0;l=ea;return da|0}default:{c[190]=120;h=764;f=42630;i=h+14|0;do{a[h>>0]=a[f>>0]|0;h=h+1|0;f=f+1|0}while((h|0)<(i|0));da=0;l=ea;return da|0}}}else if((da|0)==226){k=a[860]|0;a[860]=k^1;j=c[10]|0;k=k<<24>>24==0?4097:0;f=c[80021]|0;if(!f){mE(288511,N);da=0;l=ea;return da|0}if(j|0?(c[j>>2]|0)==(f+280|0):0){f=j+48|0;h=c[f>>2]|0;i=h&4097;if((k|0)==(i|0)){da=0;l=ea;return da|0}c[f>>2]=h&-4098|k;if(!(GI(j,(k&1|0)!=0&(h&68|0)==4&1)|0)){da=0;l=ea;return da|0}c[f>>2]=c[f>>2]&-4098|i;da=0;l=ea;return da|0}mE(307733,K);da=0;l=ea;return da|0}else if((da|0)==234){if(h&512|0){k=a[860]|0;a[860]=k^1;j=c[10]|0;k=k<<24>>24==0?4097:0;f=c[80021]|0;if(!f){mE(288511,L);da=0;l=ea;return da|0}if(j|0?(c[j>>2]|0)==(f+280|0):0){f=j+48|0;h=c[f>>2]|0;i=h&4097;if((k|0)==(i|0)){da=0;l=ea;return da|0}c[f>>2]=h&-4098|k;if(!(GI(j,(k&1|0)!=0&(h&68|0)==4&1)|0)){da=0;l=ea;return da|0}c[f>>2]=c[f>>2]&-4098|i;da=0;l=ea;return da|0}mE(307733,M);da=0;l=ea;return da|0}if(!(h&3264)){da=316280;l=ea;return da|0}f=c[3]|0;vg[c[f+2439780>>2]&511](f);f=c[45]|0;switch(f|0){case 2:{ki(c[223]|0,c[222]|0,c[3]|0);da=0;l=ea;return da|0}case 10:case 9:case 1:case 0:break;case 11:{c[46]=3;break}default:c[46]=f}ki(c[223]|0,c[222]|0,c[3]|0);c[45]=2;f=c[80021]|0;if(!f){da=0;l=ea;return da|0}h=c[f+224>>2]|0;if(!h){da=0;l=ea;return da|0}if(!(gg[h&511](f)|0)){da=0;l=ea;return da|0}if((c[45]|2|0)!=3){da=0;l=ea;return da|0}aN();da=0;l=ea;return da|0}else if((da|0)==253){f=c[864+((a[754]|0)*20|0)>>2]|0;switch(i|0){case 3:{da=254;break}case 9:{da=c[226]|0;vg[c[da+56>>2]&511](da);da=0;l=ea;return da|0}default:{}}if((da|0)==254?(c[f+65660>>2]|0)!=1:0){vg[c[f+65724>>2]&511](f);da=0;l=ea;return da|0}Wg((i|0)==1?c[46]|0:1);da=0;l=ea;return da|0}break}case 1541:{q=c[79072]|0;if(q>>>0>=4){da=316280;l=ea;return da|0}r=164+(q<<2)|0;f=c[r>>2]|0;if(f|0)QM(f);f=c[80997]|0;w:do if((f|0)>(q|0)){f=c[81020]|0;x:do if(f|0){j=c[80996]|0;k=(q|0)>0;while(1){if(k){i=q;h=j;while(1){h=c[h+1320>>2]|0;if((i|0)>1)i=i+-1|0;else break}}else h=j;if((c[h+12>>2]|0)==(c[f>>2]|0))break;f=c[f+60>>2]|0;if(!f)break x}da=f+48|0;c[da>>2]=(c[da>>2]|0)+1;break w}while(0);f=eN(64)|0;if(!f){mE(294869,R);f=0;break}h=f;i=h+64|0;do{a[h>>0]=0;h=h+1|0}while((h|0)<(i|0));h=c[80996]|0;k=(q|0)>0;if(k){j=q;i=h;while(1){i=c[i+1320>>2]|0;if((j|0)>1)j=j+-1|0;else{j=i;break}}}else j=h;do if(!j)mE(310238,X);else{i=j+16|0;if(c[i>>2]|0){mE(310253,Y);break}c[f>>2]=c[j+12>>2];c[f+44>>2]=j;c[i>>2]=f;n=f+20|0;c[n>>2]=0;o=f+28|0;c[o>>2]=0;p=f+36|0;c[p>>2]=c[j+20>>2];j=c[j+24>>2]|0;m=f+8|0;c[m>>2]=j;if(k){i=q;while(1){h=c[h+1320>>2]|0;if((i|0)>1)i=i+-1|0;else break}}h=c[h+4>>2]|0;if(!h){i=0;h=j}else{i=nP(h)|0;h=c[m>>2]|0}c[f+4>>2]=i;if((h|0)>0){c[f+12>>2]=eN(h<<1)|0;c[f+16>>2]=eN(c[m>>2]<<1)|0}h=c[n>>2]|0;if((h|0)>0)c[f+24>>2]=eN(h)|0;h=c[o>>2]|0;if((h|0)>0)c[f+32>>2]=eN(h<<3)|0;h=c[p>>2]|0;if((h|0)>0)c[f+40>>2]=eN(h)|0;i=c[m>>2]|0;if(!((i|0)>0?!(c[f+12>>2]|0):0))da=293;do if((da|0)==293){if((c[n>>2]|0)>0?(c[f+24>>2]|0)==0:0)break;if((c[o>>2]|0)>0?(c[f+32>>2]|0)==0:0)break;if((c[p>>2]|0)>0?(c[f+40>>2]|0)==0:0)break;h=c[f+12>>2]|0;if(h|0){RQ(h|0,0,i<<1|0)|0;RQ(c[f+16>>2]|0,0,c[m>>2]<<1|0)|0}h=c[f+24>>2]|0;if(h|0)RQ(h|0,0,c[n>>2]|0)|0;h=c[f+32>>2]|0;if(h|0)RQ(h|0,0,c[o>>2]<<3|0)|0;h=c[f+40>>2]|0;if(h|0)RQ(h|0,0,c[p>>2]|0)|0;c[f+56>>2]=-1;da=f+48|0;c[da>>2]=(c[da>>2]|0)+1;c[f+60>>2]=c[81020];c[81020]=f;_M(f);break w}while(0);mE(294869,Z);QM(f);f=0;break w}while(0);fN(f);f=0}else{c[D>>2]=f;mE(306082,D);f=0}while(0);c[r>>2]=f;da=316280;l=ea;return da|0}case 1542:{f=c[79072]|0;if(f>>>0>=4){da=316280;l=ea;return da|0}f=164+(f<<2)|0;h=c[f>>2]|0;if(!h){da=316280;l=ea;return da|0}QM(h);c[f>>2]=0;da=316280;l=ea;return da|0}case 512:switch(a[316292]|0){case 5:{h=c[10]|0;f=c[80021]|0;do if(!f){mE(288511,B);f=0;h=0;da=320}else{if(h|0?(c[h>>2]|0)==(f+280|0):0){f=c[h+24>>2]|0;h=c[h+28>>2]|0;if((f|0)<(h|0)){da=320;break}i=(f|0)/15|0;j=2;break}mE(307733,C);f=0;h=0;da=320}while(0);if((da|0)==320){i=(f|0)/6|0;j=3;h=h<<1}aa=O(i,-3)|0;da=(h+aa|0)/(j|0)|0;c[177]=i;c[178]=0;c[179]=da;ba=i<<1;ca=f-ba|0;c[180]=ca;c[181]=da+ba;ba=da+i|0;c[182]=f-i;c[183]=ba;c[184]=aa+f;c[185]=ba;c[186]=ca;c[187]=da;da=316280;l=ea;return da|0}case 12:{f=c[864+((a[754]|0)*20|0)>>2]|0;da=c[222]|0;Bg[c[da+4128>>2]&255](da,c[f+4>>2]|0);if(!(a[(c[222]|0)+4124>>0]|0)){da=316280;l=ea;return da|0}h=c[f+65732>>2]|0;if(!h){da=316280;l=ea;return da|0}vg[h&511](f);da=316280;l=ea;return da|0}default:{da=316280;l=ea;return da|0}}case 1793:{f=c[80021]|0;if(!f){da=316280;l=ea;return da|0}h=c[f+224>>2]|0;if(!h){da=316280;l=ea;return da|0}if(!(gg[h&511](f)|0)){da=316280;l=ea;return da|0}if((c[45]|2|0)!=3){da=316280;l=ea;return da|0}aN();da=316280;l=ea;return da|0}case 256:{Yg();da=316280;l=ea;return da|0}default:{da=316280;l=ea;return da|0}}return 0}function fh(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=c[864+((a[754]|0)*20|0)>>2]|0;d=c[b+65732>>2]|0;if(d|0)vg[d&511](b);mh();i=c[3]|0;RQ(i+2438632|0,0,1024)|0;g=0;do{j=g<<3;f=0;do{h=f;f=f+1|0;e=f<<3;h=h+j+(i+2438632)|0;d=((e+-1|0)>>>1)+(i+1268468+(g<<5))|0;b=a[d>>0]|0;if((b&255)>=16){a[h>>0]=a[h>>0]|1;b=a[d>>0]|0}if(b&15)a[h>>0]=a[h>>0]|2;d=((e+-3|0)>>>1)+(i+1268468+(g<<5))|0;b=a[d>>0]|0;if((b&255)>=16){a[h>>0]=a[h>>0]|4;b=a[d>>0]|0}if(b&15)a[h>>0]=a[h>>0]|8;d=((e+-5|0)>>>1)+(i+1268468+(g<<5))|0;b=a[d>>0]|0;if((b&255)>=16){a[h>>0]=a[h>>0]|16;b=a[d>>0]|0}if(b&15)a[h>>0]=a[h>>0]|32;d=((e+-7|0)>>>1)+(i+1268468+(g<<5))|0;b=a[d>>0]|0;if((b&255)>=16){a[h>>0]=a[h>>0]|64;b=a[d>>0]|0}if(b&15)a[h>>0]=a[h>>0]|-128}while((f|0)!=8);g=g+1|0}while((g|0)!=128);return}function gh(f,g,h){f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0;Ma=l;l=l+16|0;sa=Ma;La=eN(10485760)|0;if(!La){La=0;l=Ma;return La|0}Ka=vC(1,7116)|0;a:do if(!Ka)i=10485760;else{Ja=Ka+52|0;c[Ja>>2]=0;ya=Ka+36|0;Ga=Ka+8|0;c[Ga>>2]=1;c[ya>>2]=15;Ba=Ka+40|0;c[Ba>>2]=0;Da=Ka+44|0;c[Da>>2]=0;Aa=Ka+48|0;c[Aa>>2]=0;Fa=Ka+28|0;c[Fa>>2]=0;c[Ka>>2]=0;P=Ka+4|0;c[P>>2]=0;Q=Ka+12|0;c[Q>>2]=0;R=Ka+20|0;c[R>>2]=32768;S=Ka+32|0;c[S>>2]=0;va=Ka+56|0;c[va>>2]=0;wa=Ka+60|0;c[wa>>2]=0;T=Ka+1328|0;V=Ka+108|0;c[V>>2]=T;W=Ka+80|0;c[W>>2]=T;X=Ka+76|0;c[X>>2]=T;Y=Ka+7104|0;c[Y>>2]=1;$=Ka+7108|0;c[$>>2]=-1;b:do if((g|0)!=0|(h|0)==0){Ia=Ka+24|0;ca=sa+1|0;Ha=Ka+16|0;da=Ka+64|0;ea=Ka+84|0;fa=Ka+88|0;ga=Ka+72|0;ha=Ka+7112|0;ia=Ka+68|0;ja=sa+2|0;ka=sa+3|0;la=Ka+104|0;ma=Ka+96|0;na=Ka+100|0;oa=Ka+624|0;pa=Ka+112|0;qa=Ka+752|0;ra=Ka+92|0;M=La;q=0;i=0;o=h;h=0;j=10485760;n=g;s=10485760;g=0;O=0;c:while(1){d:do switch(q|0){case 28:{g=1;N=341;break c}case 29:{Ea=j;ua=i;ta=h;za=s;Ca=-3;xa=O;break c}case 0:{p=c[Ga>>2]|0;if(!p){c[Ka>>2]=12;k=o;t=j;m=n;n=M;p=O;break d}if(i>>>0<16){k=o;while(1){if(!k){Ea=j;ua=i;ta=h;za=s;Ca=g;xa=O;break c}k=k+-1|0;m=n+1|0;h=(d[n>>0]<<i)+h|0;i=i+8|0;if(i>>>0<16)n=m;else{q=h;break}}}else{k=o;q=h;m=n}if((q|0)==35615&(p&2|0)!=0){c[Ia>>2]=0;a[sa>>0]=31;a[ca>>0]=-117;c[Ia>>2]=yC(0,sa,2)|0;c[Ka>>2]=1;i=0;h=0;t=j;n=M;p=O;break d}c[Ha>>2]=0;h=c[S>>2]|0;if(h|0)c[h+48>>2]=-1;if(p&1|0?((((q<<8&65280)+(q>>>8)|0)>>>0)%31|0|0)==0:0){if((q&15|0)!=8){c[Ka>>2]=29;h=q;t=j;n=M;p=O;break d}h=q>>>4;i=i+-4|0;n=h&15;o=n+8|0;p=c[ya>>2]|0;if(p){if(o>>>0>p>>>0){c[Ka>>2]=29;t=j;n=M;p=O;break d}}else c[ya>>2]=o;c[R>>2]=256<<n;c[Ia>>2]=1;c[Ka>>2]=q>>>12&2^11;i=0;h=0;t=j;n=M;p=O;break d}c[Ka>>2]=29;h=q;t=j;n=M;p=O;break}case 1:{if(i>>>0<16){k=o;while(1){if(!k){Ea=j;ua=i;ta=h;za=s;Ca=g;xa=O;break c}k=k+-1|0;m=n+1|0;h=(d[n>>0]<<i)+h|0;i=i+8|0;if(i>>>0<16)n=m;else break}}else{k=o;m=n}c[Ha>>2]=h;if((h&255|0)!=8){c[Ka>>2]=29;t=j;n=M;p=O;break d}if(h&57344|0){c[Ka>>2]=29;t=j;n=M;p=O;break d}i=c[S>>2]|0;if(i|0)c[i>>2]=h>>>8&1;if(h&512|0){a[sa>>0]=h;a[ca>>0]=h>>>8;c[Ia>>2]=yC(c[Ia>>2]|0,sa,2)|0}c[Ka>>2]=2;i=0;h=0;N=49;break}case 2:{if(i>>>0<32){k=o;m=n;N=49}else{k=o;N=51}break}case 3:{if(i>>>0<16){k=o;N=57}else{k=o;N=59}break}case 4:{p=c[Ha>>2]|0;k=o;N=64;break}case 5:{m=c[Ha>>2]|0;k=o;N=75;break}case 6:{m=c[Ha>>2]|0;k=o;p=n;N=85;break}case 7:{m=c[Ha>>2]|0;k=o;p=n;N=98;break}case 8:{m=c[Ha>>2]|0;k=o;N=111;break}case 9:{if(i>>>0<32){k=o;while(1){if(!k){Ea=j;ua=i;ta=h;za=s;Ca=g;xa=O;break c}k=k+-1|0;m=n+1|0;h=(d[n>>0]<<i)+h|0;i=i+8|0;if(i>>>0>=32)break;else n=m}}else{k=o;m=n}c[Ia>>2]=MQ(h|0)|0;c[Ka>>2]=10;i=0;h=0;N=123;break}case 10:{k=o;m=n;N=123;break}case 12:case 11:{k=o;m=n;N=126;break}case 13:{L=i&7;h=h>>>L;i=i-L|0;if(i>>>0<32){k=o;m=n;while(1){if(!k){Ea=j;ua=i;ta=h;za=s;Ca=g;xa=O;break c}k=k+-1|0;n=m+1|0;h=(d[m>>0]<<i)+h|0;i=i+8|0;if(i>>>0<32)m=n;else break}}else k=o;m=h&65535;if((m|0)==(h>>>16^65535|0)){c[da>>2]=m;c[Ka>>2]=14;i=0;h=0;N=143;break d}else{c[Ka>>2]=29;t=j;m=n;n=M;p=O;break d}}case 14:{k=o;N=143;break}case 15:{k=o;N=144;break}case 16:{if(i>>>0<14){k=o;while(1){if(!k){Ea=j;ua=i;ta=h;za=s;Ca=g;xa=O;break c}k=k+-1|0;m=n+1|0;h=(d[n>>0]<<i)+h|0;i=i+8|0;if(i>>>0<14)n=m;else{o=k;break}}}else m=n;K=(h&31)+257|0;c[ma>>2]=K;L=(h>>>5&31)+1|0;c[na>>2]=L;n=(h>>>10&15)+4|0;c[ra>>2]=n;h=h>>>14;i=i+-14|0;if(K>>>0>286|L>>>0>30){c[Ka>>2]=29;k=o;t=j;n=M;p=O;break d}else{c[la>>2]=0;c[Ka>>2]=17;k=0;q=n;N=154;break d}}case 17:{k=c[la>>2]|0;m=c[ra>>2]|0;if(k>>>0<m>>>0){q=m;m=n;N=154}else{g=k;k=o;m=n;N=155}break}case 18:{p=c[la>>2]|0;k=o;m=n;N=165;break}case 19:{k=o;m=n;N=199;break}case 20:{k=o;m=n;N=200;break}case 21:{p=c[ga>>2]|0;k=o;m=n;N=278;break}case 22:{k=o;m=n;N=285;break}case 23:{p=c[ga>>2]|0;k=o;m=n;N=297;break}case 24:{k=o;m=n;N=303;break}case 25:{if(!j){j=0;N=341;break c}a[M>>0]=c[da>>2];c[Ka>>2]=20;k=o;t=j+-1|0;m=n;n=M+1|0;p=O;break}case 26:{t=c[Ga>>2]|0;if(t){if(i>>>0<32){k=o;while(1){if(!k){Ea=j;ua=i;ta=h;za=s;Ca=g;xa=O;break c}k=k+-1|0;m=n+1|0;h=(d[n>>0]<<i)+h|0;i=i+8|0;if(i>>>0<32)n=m;else break}}else{k=o;m=n}q=s-j|0;r=O+q|0;c[Fa>>2]=(c[Fa>>2]|0)+q;if((s|0)==(j|0)){o=c[Ha>>2]|0;n=c[Ia>>2]|0}else{o=c[Ha>>2]|0;n=c[Ia>>2]|0;p=M+(0-q)|0;if(!o)n=xC(n,p,q)|0;else n=yC(n,p,q)|0;c[Ia>>2]=n}O=MQ(h|0)|0;if((((o|0)==0?O:h)|0)==(n|0)){i=0;h=0;o=j;n=r}else{c[Ka>>2]=29;t=j;s=j;n=M;p=r;break d}}else{k=o;m=n;o=s;n=O}c[Ka>>2]=27;q=t;p=n;N=333;break}case 27:{q=c[Ga>>2]|0;k=o;m=n;o=s;p=O;N=333;break}default:{N=363;break b}}while(0);if((N|0)==49)while(1){N=0;if(!k){Ea=j;ua=i;ta=h;za=s;Ca=g;xa=O;break c}k=k+-1|0;n=m+1|0;h=(d[m>>0]<<i)+h|0;i=i+8|0;if(i>>>0>=32){N=51;break}else{m=n;N=49}}else if((N|0)==123){if(!(c[Q>>2]|0)){N=124;break}c[Ia>>2]=1;c[Ka>>2]=11;N=126}else if((N|0)==143){c[Ka>>2]=15;N=144}else if((N|0)==154){N=0;n=o;while(1){if(i>>>0<3){if(!n){Ea=j;ua=i;ta=h;za=s;Ca=g;xa=O;break c}o=i+8|0;p=n+-1|0;h=(d[m>>0]<<i)+h|0;m=m+1|0}else{o=i;p=n}n=k+1|0;c[la>>2]=n;b[Ka+112+(e[37620+(k<<1)>>1]<<1)>>1]=h&7;h=h>>>3;i=o+-3|0;if(n>>>0<q>>>0){k=n;n=p}else{g=n;k=p;N=155;break}}}else if((N|0)==333){N=0;if(!q){N=340;break}if(!(c[Ha>>2]|0)){N=340;break}if(i>>>0<32){n=m;while(1){if(!k){Ea=j;ua=i;ta=h;za=o;Ca=g;xa=p;break c}k=k+-1|0;m=n+1|0;h=(d[n>>0]<<i)+h|0;i=i+8|0;if(i>>>0<32)n=m;else break}}if((h|0)==(c[Fa>>2]|0)){i=0;h=0;N=340;break}c[Ka>>2]=29;t=j;s=o;n=M}do if((N|0)==51){i=c[S>>2]|0;if(i|0)c[i+4>>2]=h;if(c[Ha>>2]&512|0){a[sa>>0]=h;a[ca>>0]=h>>>8;a[ja>>0]=h>>>16;a[ka>>0]=h>>>24;c[Ia>>2]=yC(c[Ia>>2]|0,sa,4)|0}c[Ka>>2]=3;i=0;h=0;N=57}else if((N|0)==126){N=0;if(c[P>>2]|0){t=i&7;c[Ka>>2]=26;i=i-t|0;h=h>>>t;t=j;n=M;p=O;break}if(i>>>0<3){if(!k){N=341;break c}n=i+8|0;k=k+-1|0;h=(d[m>>0]<<i)+h|0;m=m+1|0}else n=i;c[P>>2]=h&1;switch(h>>>1&3){case 0:{i=13;break}case 1:{c[X>>2]=35444;c[ea>>2]=9;c[W>>2]=37492;c[fa>>2]=5;i=19;break}case 2:{i=16;break}case 3:{i=29;break}default:{N=135;break c}}c[Ka>>2]=i;i=n+-3|0;h=h>>>3;t=j;n=M;p=O}else if((N|0)==144){N=0;m=c[da>>2]|0;if(!m){c[Ka>>2]=11;t=j;m=n;n=M;p=O;break}o=m>>>0>k>>>0?k:m;o=o>>>0>j>>>0?j:o;if(!o){N=341;break c}PQ(M|0,n|0,o|0)|0;c[da>>2]=(c[da>>2]|0)-o;k=k-o|0;t=j-o|0;m=n+o|0;n=M+o|0;p=O}else if((N|0)==155){N=0;if(g>>>0<19){do{b[Ka+112+(e[37620+(g<<1)>>1]<<1)>>1]=0;g=g+1|0}while((g|0)!=19);c[la>>2]=19}c[V>>2]=T;c[X>>2]=T;c[ea>>2]=7;g=uC(0,pa,19,V,ea,qa)|0;if(!g){c[la>>2]=0;c[Ka>>2]=18;p=0;g=0;N=165;break}else{c[Ka>>2]=29;t=j;n=M;p=O;break}}while(0);e:do if((N|0)==57)while(1){N=0;if(!k){Ea=j;ua=i;ta=h;za=s;Ca=g;xa=O;break c}k=k+-1|0;m=n+1|0;h=(d[n>>0]<<i)+h|0;i=i+8|0;if(i>>>0>=16){n=m;N=59;break}else{n=m;N=57}}else if((N|0)==165){N=0;o=c[ma>>2]|0;n=c[na>>2]|0;do if(p>>>0<(n+o|0)>>>0){u=p;t=o;f:while(1){q=(1<<c[ea>>2])+-1|0;p=q&h;r=c[X>>2]|0;o=d[r+(p<<2)+1>>0]|0;if(i>>>0<o>>>0){o=m;while(1){if(!k){Ea=j;ua=i;ta=h;za=s;Ca=g;xa=O;break c}k=k+-1|0;m=o+1|0;h=(d[o>>0]<<i)+h|0;i=i+8|0;p=q&h;o=d[r+(p<<2)+1>>0]|0;if(i>>>0<o>>>0)o=m;else{q=o;break}}}else q=o;o=b[r+(p<<2)+2>>1]|0;if((o&65535)>=16){switch(o<<16>>16){case 16:{p=q+2|0;if(i>>>0<p>>>0){o=m;while(1){if(!k){Ea=j;ua=i;ta=h;za=s;Ca=g;xa=O;break c}k=k+-1|0;m=o+1|0;h=(d[o>>0]<<i)+h|0;i=i+8|0;if(i>>>0<p>>>0)o=m;else break}}h=h>>>q;i=i-q|0;if(!u){N=179;break f}i=i+-2|0;p=(h&3)+3|0;h=h>>>2;o=e[Ka+112+(u+-1<<1)>>1]|0;break}case 17:{p=q+3|0;if(i>>>0<p>>>0){o=m;while(1){if(!k){Ea=j;ua=i;ta=h;za=s;Ca=g;xa=O;break c}k=k+-1|0;m=o+1|0;h=(d[o>>0]<<i)+h|0;i=i+8|0;if(i>>>0<p>>>0)o=m;else break}}h=h>>>q;i=-3-q+i|0;p=(h&7)+3|0;h=h>>>3;o=0;break}default:{p=q+7|0;if(i>>>0<p>>>0){o=m;while(1){if(!k){Ea=j;ua=i;ta=h;za=s;Ca=g;xa=O;break c}k=k+-1|0;m=o+1|0;h=(d[o>>0]<<i)+h|0;i=i+8|0;if(i>>>0<p>>>0)o=m;else break}}h=h>>>q;i=-7-q+i|0;p=(h&127)+11|0;h=h>>>7;o=0}}if((u+p|0)>>>0>(n+t|0)>>>0){N=189;break}o=o&65535;n=p+-1|0;c[la>>2]=u+1;b[Ka+112+(u<<1)>>1]=o;if(n)do{L=c[la>>2]|0;n=n+-1|0;c[la>>2]=L+1;b[Ka+112+(L<<1)>>1]=o}while((n|0)!=0)}else{c[la>>2]=u+1;b[Ka+112+(u<<1)>>1]=o;i=i-q|0;h=h>>>q}u=c[la>>2]|0;t=c[ma>>2]|0;n=c[na>>2]|0;if(u>>>0>=(n+t|0)>>>0){N=191;break}}if((N|0)==179){N=0;c[Ka>>2]=29;t=j;n=M;p=O;break e}else if((N|0)==189){N=0;c[Ka>>2]=29;t=j;n=M;p=O;break e}else if((N|0)==191){N=0;if((c[Ka>>2]|0)==29){t=j;n=M;p=O;break e}else{o=t;break}}}while(0);if(!(b[oa>>1]|0)){c[Ka>>2]=29;t=j;n=M;p=O;break}c[V>>2]=T;c[X>>2]=T;c[ea>>2]=9;g=uC(1,pa,o,V,ea,qa)|0;if(g|0){c[Ka>>2]=29;t=j;n=M;p=O;break}c[W>>2]=c[V>>2];c[fa>>2]=6;g=uC(2,Ka+112+(c[ma>>2]<<1)|0,c[na>>2]|0,V,fa,qa)|0;if(!g){c[Ka>>2]=19;g=0;N=199;break}else{c[Ka>>2]=29;t=j;n=M;p=O;break}}while(0);if((N|0)==59){i=c[S>>2]|0;if(i|0){c[i+8>>2]=h&255;c[i+12>>2]=h>>>8}i=c[Ha>>2]|0;if(i&512|0){a[sa>>0]=h;a[ca>>0]=h>>>8;c[Ia>>2]=yC(c[Ia>>2]|0,sa,2)|0}c[Ka>>2]=4;p=i;i=0;h=0;N=64}else if((N|0)==199){c[Ka>>2]=20;N=200}do if((N|0)==64){N=0;if(!(p&1024)){m=c[S>>2]|0;if(m)c[m+16>>2]=0}else{if(i>>>0<16){m=n;while(1){if(!k){Ea=j;ua=i;ta=h;za=s;Ca=g;xa=O;break c}k=k+-1|0;n=m+1|0;h=(d[m>>0]<<i)+h|0;i=i+8|0;if(i>>>0>=16)break;else m=n}}c[da>>2]=h;i=c[S>>2]|0;if(i|0)c[i+20>>2]=h;if(!(p&512)){i=0;h=0}else{a[sa>>0]=h;a[ca>>0]=h>>>8;c[Ia>>2]=yC(c[Ia>>2]|0,sa,2)|0;i=0;h=0}}c[Ka>>2]=5;m=p;N=75}else if((N|0)==200){N=0;if(!(j>>>0>257&k>>>0>5)){c[$>>2]=0;q=(1<<c[ea>>2])+-1|0;p=q&h;t=c[X>>2]|0;n=a[t+(p<<2)+1>>0]|0;o=n&255;if(o>>>0>i>>>0){n=m;while(1){if(!k){Ea=j;ua=i;ta=h;za=s;Ca=g;xa=O;break c}k=k+-1|0;m=n+1|0;h=(d[n>>0]<<i)+h|0;i=i+8|0;p=q&h;n=a[t+(p<<2)+1>>0]|0;o=n&255;if(o>>>0>i>>>0)n=m;else break}}q=a[t+(p<<2)>>0]|0;r=b[t+(p<<2)+2>>1]|0;p=q&255;if(q<<24>>24!=0&(p&240|0)==0){r=r&65535;q=(1<<o+p)+-1|0;p=((h&q)>>>o)+r|0;n=a[t+(p<<2)+1>>0]|0;if(((n&255)+o|0)>>>0>i>>>0){n=m;while(1){if(!k){Ea=j;ua=i;ta=h;za=s;Ca=g;xa=O;break c}k=k+-1|0;m=n+1|0;h=(d[n>>0]<<i)+h|0;i=i+8|0;p=((h&q)>>>o)+r|0;n=a[t+(p<<2)+1>>0]|0;if(((n&255)+o|0)>>>0>i>>>0)n=m;else break}}r=b[t+(p<<2)+2>>1]|0;q=a[t+(p<<2)>>0]|0;c[$>>2]=o;p=o;i=i-o|0;h=h>>>o}else p=0;n=n&255;h=h>>>n;i=i-n|0;c[$>>2]=p+n;c[da>>2]=r&65535;n=q&255;if(!(q<<24>>24)){c[Ka>>2]=25;t=j;n=M;p=O;break}if(n&32|0){c[$>>2]=-1;c[Ka>>2]=11;t=j;n=M;p=O;break}if(!(n&64)){p=n&15;c[ga>>2]=p;c[Ka>>2]=21;N=278;break}else{c[Ka>>2]=29;t=j;n=M;p=O;break}}c[va>>2]=h;c[wa>>2]=i;K=m+(k+-6)|0;L=M+(j+-258)|0;D=c[Da>>2]|0;E=c[Aa>>2]|0;F=c[Ja>>2]|0;G=c[X>>2]|0;H=c[W>>2]|0;I=(1<<c[ea>>2])+-1|0;J=(1<<c[fa>>2])+-1|0;u=M+(j+~s)|0;v=F+-1|0;w=(E|0)==0;x=(c[Ba>>2]|0)+-1|0;y=x+E|0;z=E+-1|0;A=u+-1|0;B=u-E|0;C=u+-2|0;k=m+-1|0;j=M+-1|0;g:while(1){if(i>>>0<15){M=k+2|0;o=i+16|0;h=(d[k+1>>0]<<i)+h+(d[M>>0]<<i+8)|0;k=M}else o=i;i=h&I;n=a[G+(i<<2)>>0]|0;m=b[G+(i<<2)+2>>1]|0;i=d[G+(i<<2)+1>>0]|0;h=h>>>i;i=o-i|0;do if(!(n<<24>>24)){m=m&255;N=207}else{n=n&255;while(1){if(n&16|0)break;if(n&64|0){N=256;break g}M=(h&(1<<n)+-1)+(m&65535)|0;n=a[G+(M<<2)>>0]|0;m=b[G+(M<<2)+2>>1]|0;M=d[G+(M<<2)+1>>0]|0;h=h>>>M;i=i-M|0;if(!(n<<24>>24)){N=206;break}else n=n&255}if((N|0)==206){m=m&255;N=207;break}p=m&65535;o=n&15;if(!o)n=h;else{if(i>>>0<o>>>0){k=k+1|0;m=i+8|0;h=(d[k>>0]<<i)+h|0}else m=i;i=m-o|0;n=h>>>o;p=(h&(1<<o)+-1)+p|0}if(i>>>0<15){q=k+2|0;m=i+16|0;i=(d[k+1>>0]<<i)+n+(d[q>>0]<<i+8)|0}else{m=i;i=n;q=k}M=i&J;k=b[H+(M<<2)+2>>1]|0;t=d[H+(M<<2)+1>>0]|0;h=i>>>t;i=m-t|0;m=d[H+(M<<2)>>0]|0;if(!(m&16))do{if(m&64|0){N=253;break g}m=(h&(1<<m)+-1)+(k&65535)|0;k=b[H+(m<<2)+2>>1]|0;M=d[H+(m<<2)+1>>0]|0;h=h>>>M;i=i-M|0;m=d[H+(m<<2)>>0]|0}while((m&16|0)==0);n=k&65535;o=m&15;if(i>>>0<o>>>0){k=q+1|0;h=(d[k>>0]<<i)+h|0;m=i+8|0;if(m>>>0<o>>>0){k=q+2|0;i=i+16|0;h=(d[k>>0]<<m)+h|0}else i=m}else k=q;t=(h&(1<<o)+-1)+n|0;h=h>>>o;i=i-o|0;r=j;m=r-u|0;if(t>>>0<=m>>>0){q=2-p|0;q=p+(q>>>0>4294967293?q:-3)|0;q=q-((q>>>0)%3|0)|0;m=j+(0-t)|0;n=p;o=j;do{a[o+1>>0]=a[m+1>>0]|0;a[o+2>>0]=a[m+2>>0]|0;m=m+3|0;o=o+3|0;a[o>>0]=a[m>>0]|0;n=n+-3|0}while(n>>>0>2);n=q-t|0;m=p+-3|0;if((m|0)==(q|0)){j=j+(q+3)|0;break}o=j+(q+4)|0;a[o>>0]=a[j+(n+4)>>0]|0;if((m-q|0)>>>0<=1){j=o;break}M=j+(q+5)|0;a[M>>0]=a[j+(n+5)>>0]|0;j=M;break}q=t-m|0;if(q>>>0>D>>>0?c[Y>>2]|0:0){N=222;break g}do if(w){m=F+(x-q)|0;if(p>>>0<=q>>>0){o=m;n=p;break}n=p-q|0;o=q;p=j;do{m=m+1|0;p=p+1|0;a[p>>0]=a[m>>0]|0;o=o+-1|0}while((o|0)!=0);M=t-r|0;o=j+(A+M+(1-t))|0;j=j+(u+M)|0}else{if(q>>>0<=E>>>0){m=F+(z-q)|0;if(p>>>0<=q>>>0){o=m;n=p;break}n=p-q|0;o=q;p=j;do{m=m+1|0;p=p+1|0;a[p>>0]=a[m>>0]|0;o=o+-1|0}while((o|0)!=0);M=t-r|0;o=j+(A+M+(1-t))|0;j=j+(u+M)|0;break}o=F+(y-q)|0;m=q-E|0;if(p>>>0<=m>>>0){n=p;break}n=p-m|0;p=j;do{o=o+1|0;p=p+1|0;a[p>>0]=a[o>>0]|0;m=m+-1|0}while((m|0)!=0);q=t-r|0;m=j+(B+q)|0;if(n>>>0>E>>>0){o=v;p=E}else{o=v;j=m;break}do{o=o+1|0;m=m+1|0;a[m>>0]=a[o>>0]|0;p=p+-1|0}while((p|0)!=0);o=j+(C+q+(2-t))|0;n=n-E|0;j=j+(u+q)|0}while(0);if(n>>>0>2){q=n+-3|0;m=(q>>>0)%3|0;r=o;p=j;do{a[p+1>>0]=a[r+1>>0]|0;a[p+2>>0]=a[r+2>>0]|0;r=r+3|0;p=p+3|0;a[p>>0]=a[r>>0]|0;n=n+-3|0}while(n>>>0>2);M=q-m+3|0;o=o+M|0;j=j+M|0}else m=n;if(!m)break;n=j+1|0;a[n>>0]=a[o+1>>0]|0;if((m|0)==1){j=n;break}j=j+2|0;a[j>>0]=a[o+2>>0]|0}while(0);if((N|0)==207){N=0;j=j+1|0;a[j>>0]=m}if(!(j>>>0<L>>>0&k>>>0<K>>>0)){N=260;break}}do if((N|0)==222){N=0;c[Ka>>2]=29;o=29}else if((N|0)==253){N=0;c[Ka>>2]=29;o=29;k=q}else if((N|0)==256){N=0;if(!(n&32)){c[Ka>>2]=29;o=29;break}else{c[Ka>>2]=11;o=11;break}}else if((N|0)==260){N=0;o=c[Ka>>2]|0}while(0);M=i>>>3;i=i-(M<<3)|0;h=(1<<i)+-1&h;m=k+(1-M)|0;n=j+1|0;k=K+5-(k+(0-M))|0;j=L+257-j|0;c[va>>2]=h;c[wa>>2]=i;if((o|0)==11){c[$>>2]=-1;t=j;p=O}else{t=j;p=O}}while(0);if((N|0)==75){if(m&1024){p=c[da>>2]|0;q=p>>>0>k>>>0?k:p;if(q){o=c[S>>2]|0;if((o|0)!=0?(U=c[o+16>>2]|0,(U|0)!=0):0){m=(c[o+20>>2]|0)-p|0;N=c[o+24>>2]|0;PQ(U+m|0,n|0,((m+q|0)>>>0>N>>>0?N-m|0:q)|0)|0;m=c[Ha>>2]|0}if(m&512|0)c[Ia>>2]=yC(c[Ia>>2]|0,n,q)|0;p=(c[da>>2]|0)-q|0;c[da>>2]=p;k=k-q|0;n=n+q|0}if(p){N=341;break}}c[da>>2]=0;c[Ka>>2]=6;p=n;N=85}else if((N|0)==278){N=0;if(!p)n=c[da>>2]|0;else{if(i>>>0<p>>>0){n=m;while(1){if(!k){Ea=j;ua=i;ta=h;za=s;Ca=g;xa=O;break c}k=k+-1|0;m=n+1|0;h=(d[n>>0]<<i)+h|0;i=i+8|0;if(i>>>0<p>>>0)n=m;else break}}n=(c[da>>2]|0)+((1<<p)+-1&h)|0;c[da>>2]=n;c[$>>2]=(c[$>>2]|0)+p;i=i-p|0;h=h>>>p}c[ha>>2]=n;c[Ka>>2]=22;N=285}do if((N|0)==85){if(!(m&2048)){n=c[S>>2]|0;if(!n)n=p;else{c[n+28>>2]=0;n=p}}else{if(!k){N=341;break c}else o=0;do{m=o;o=o+1|0;m=a[p+m>>0]|0;n=c[S>>2]|0;if((n|0?(Z=c[n+28>>2]|0,Z|0):0)?(_=c[da>>2]|0,_>>>0<(c[n+32>>2]|0)>>>0):0){c[da>>2]=_+1;a[Z+_>>0]=m}n=m<<24>>24!=0}while(n&k>>>0>o>>>0);m=c[Ha>>2]|0;if(m&512|0)c[Ia>>2]=yC(c[Ia>>2]|0,p,o)|0;if(n){N=341;break c}else{k=k-o|0;n=p+o|0}}c[da>>2]=0;c[Ka>>2]=7;p=n;N=98}else if((N|0)==285){N=0;q=(1<<c[fa>>2])+-1|0;p=q&h;t=c[W>>2]|0;n=a[t+(p<<2)+1>>0]|0;o=n&255;if(o>>>0>i>>>0){n=m;while(1){if(!k){Ea=j;ua=i;ta=h;za=s;Ca=g;xa=O;break c}k=k+-1|0;m=n+1|0;h=(d[n>>0]<<i)+h|0;i=i+8|0;p=q&h;n=a[t+(p<<2)+1>>0]|0;o=n&255;if(o>>>0>i>>>0)n=m;else break}}q=a[t+(p<<2)>>0]|0;r=b[t+(p<<2)+2>>1]|0;p=q&255;if(!(p&240)){r=r&65535;q=(1<<o+p)+-1|0;p=((h&q)>>>o)+r|0;n=a[t+(p<<2)+1>>0]|0;if(((n&255)+o|0)>>>0>i>>>0){n=m;while(1){if(!k){Ea=j;ua=i;ta=h;za=s;Ca=g;xa=O;break c}k=k+-1|0;m=n+1|0;h=(d[n>>0]<<i)+h|0;i=i+8|0;p=((h&q)>>>o)+r|0;n=a[t+(p<<2)+1>>0]|0;if(((n&255)+o|0)>>>0>i>>>0)n=m;else break}}r=b[t+(p<<2)+2>>1]|0;q=a[t+(p<<2)>>0]|0;p=(c[$>>2]|0)+o|0;c[$>>2]=p;i=i-o|0;h=h>>>o}else p=c[$>>2]|0;n=n&255;h=h>>>n;i=i-n|0;c[$>>2]=p+n;n=q&255;if(!(n&64)){c[ia>>2]=r&65535;p=n&15;c[ga>>2]=p;c[Ka>>2]=23;N=297;break}else{c[Ka>>2]=29;t=j;n=M;p=O;break}}while(0);if((N|0)==98){if(!(m&4096)){n=c[S>>2]|0;if(!n)n=p;else{c[n+36>>2]=0;n=p}}else{if(!k){N=341;break}else o=0;do{m=o;o=o+1|0;m=a[p+m>>0]|0;n=c[S>>2]|0;if((n|0?(aa=c[n+36>>2]|0,aa|0):0)?(ba=c[da>>2]|0,ba>>>0<(c[n+40>>2]|0)>>>0):0){c[da>>2]=ba+1;a[aa+ba>>0]=m}n=m<<24>>24!=0}while(n&k>>>0>o>>>0);m=c[Ha>>2]|0;if(m&512|0)c[Ia>>2]=yC(c[Ia>>2]|0,p,o)|0;if(n){N=341;break}else{k=k-o|0;n=p+o|0}}c[Ka>>2]=8;N=111}else if((N|0)==297){N=0;if(p){if(i>>>0<p>>>0){n=m;while(1){if(!k){Ea=j;ua=i;ta=h;za=s;Ca=g;xa=O;break c}k=k+-1|0;m=n+1|0;h=(d[n>>0]<<i)+h|0;i=i+8|0;if(i>>>0<p>>>0)n=m;else break}}c[ia>>2]=(c[ia>>2]|0)+((1<<p)+-1&h);c[$>>2]=(c[$>>2]|0)+p;i=i-p|0;h=h>>>p}c[Ka>>2]=24;N=303}do if((N|0)==111){N=0;if(m&512){if(i>>>0<16){o=n;while(1){if(!k){Ea=j;ua=i;ta=h;za=s;Ca=g;xa=O;break c}k=k+-1|0;n=o+1|0;h=(d[o>>0]<<i)+h|0;i=i+8|0;if(i>>>0<16)o=n;else break}}if((h|0)==(c[Ia>>2]&65535|0)){i=0;h=0;o=n}else{c[Ka>>2]=29;t=j;m=n;n=M;p=O;break}}else o=n;n=c[S>>2]|0;if(n|0){c[n+44>>2]=m>>>9&1;c[n+48>>2]=1}c[Ia>>2]=0;c[Ka>>2]=11;t=j;m=o;n=M;p=O}else if((N|0)==303){N=0;if(!j){j=0;N=341;break c}n=s-j|0;o=c[ia>>2]|0;if(o>>>0>n>>>0){o=o-n|0;if(o>>>0>(c[Da>>2]|0)>>>0?c[Y>>2]|0:0){c[Ka>>2]=29;t=j;n=M;p=O;break}n=c[Aa>>2]|0;if(o>>>0>n>>>0){o=o-n|0;n=(c[Ba>>2]|0)-o|0}else n=n-o|0;p=c[da>>2]|0;q=p;p=o>>>0>p>>>0?p:o;n=(c[Ja>>2]|0)+n|0}else{p=c[da>>2]|0;q=p;n=M+(0-o)|0}r=p>>>0>j>>>0?j:p;c[da>>2]=q-r;p=r;o=M;while(1){a[o>>0]=a[n>>0]|0;p=p+-1|0;if(!p)break;else{n=n+1|0;o=o+1|0}}j=j-r|0;n=M+r|0;if(!(c[da>>2]|0)){c[Ka>>2]=20;t=j;p=O}else{t=j;p=O}}while(0);M=n;q=c[Ka>>2]|0;o=k;j=t;n=m;O=p}if((N|0)==124){c[va>>2]=h;c[wa>>2]=i;N=363;break}else if((N|0)!=135)if((N|0)==340){c[Ka>>2]=28;Ea=j;ua=i;ta=h;za=o;Ca=1;xa=p}else if((N|0)==341){Ea=j;ua=i;ta=h;za=s;Ca=g;xa=O}c[va>>2]=ta;c[wa>>2]=ua;i=c[Ba>>2]|0;if(!i){if((za|0)!=(Ea|0)?(c[Ka>>2]|0)>>>0<26:0)N=345}else N=345;do if((N|0)==345){g=za-Ea|0;h=c[Ja>>2]|0;do if(!h){h=vC(1<<c[ya>>2],1)|0;c[Ja>>2]=h;if(!h){c[Ka>>2]=30;N=363;break b}else{i=c[Ba>>2]|0;break}}while(0);if(!i){i=1<<c[ya>>2];c[Ba>>2]=i;c[Aa>>2]=0;c[Da>>2]=0}if(i>>>0<=g>>>0){PQ(h|0,M+(0-i)|0,i|0)|0;c[Aa>>2]=0;c[Da>>2]=c[Ba>>2];break}wa=c[Aa>>2]|0;ya=i-wa|0;i=ya>>>0>g>>>0?g:ya;PQ(h+wa|0,M+(0-g)|0,i|0)|0;i=g-i|0;if(ya>>>0<g>>>0){PQ(c[Ja>>2]|0,M+(0-i)|0,i|0)|0;c[Aa>>2]=i;c[Da>>2]=c[Ba>>2];break}i=(c[Aa>>2]|0)+g|0;Ba=c[Ba>>2]|0;c[Aa>>2]=(i|0)==(Ba|0)?0:i;i=c[Da>>2]|0;if(i>>>0<Ba>>>0)c[Da>>2]=i+g}while(0);j=za-Ea|0;i=xa+j|0;c[Fa>>2]=(c[Fa>>2]|0)+j;if((za|0)!=(Ea|0)&(c[Ga>>2]|0)!=0){g=c[Ia>>2]|0;h=M+(0-j)|0;if(!(c[Ha>>2]|0))h=xC(g,h,j)|0;else h=yC(g,h,j)|0;c[Ia>>2]=h}if(Ca){if((Ca|0)==1){h=c[Ja>>2]|0;if(h|0)wC(h);wC(Ka);Ka=eN(i+1|0)|0;c[f>>2]=Ka;PQ(Ka|0,La|0,i|0)|0;a[Ka+i>>0]=0;break a}}else N=363}else N=363;while(0);i=c[Ja>>2]|0;if(i|0)wC(i);wC(Ka);i=10485760}while(0);fN(La);La=i;l=Ma;return La|0}function hh(a){a=a|0;c[(c[233]|0)+4>>2]=38319;Hi();return}function ih(e){e=e|0;var f=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0;ca=l;l=l+4608|0;y=ca+240|0;ba=ca+232|0;aa=ca+224|0;$=ca+216|0;_=ca+208|0;Y=ca+200|0;X=ca+192|0;T=ca+184|0;S=ca+176|0;R=ca+168|0;Q=ca+160|0;P=ca+152|0;N=ca+144|0;M=ca+136|0;L=ca+128|0;K=ca+120|0;J=ca+112|0;I=ca+104|0;H=ca+96|0;G=ca+88|0;F=ca+80|0;E=ca+72|0;D=ca+64|0;C=ca+56|0;B=ca+48|0;z=ca+40|0;x=ca+32|0;w=ca+24|0;v=ca+16|0;u=ca+8|0;i=ca;Z=ca+504|0;W=ca+248|0;c[229]=e;$J(42876,308552);$J(42905,308570);HL(560)|0;if((c[80021]|0)==0?(IL()|0)<0:0)f=0;else V=3;do if((V|0)==3){f=eN(156)|0;if(!f){mE(294869,i);f=0;break}if(c[f+-4>>2]&3|0)RQ(f|0,0,156)|0;p=c[80021]|0;c[f>>2]=p+280;p=p+284|0;o=c[p>>2]|0;c[p>>2]=o+1;c[f+4>>2]=o;o=f+16|0;c[o>>2]=805240832;p=f+20|0;c[p>>2]=805240832;q=f+24|0;c[q>>2]=768;t=f+28|0;c[t>>2]=432;i=PI(f)|0;k=c[80021]|0;if((i|0)>-1)m=(c[k+268>>2]|0)+(i*68|0)|0;else m=0;n=c[k+264>>2]|0;a:do if((n|0)>0){k=c[k+268>>2]|0;i=0;while(1){if((k+(i*68|0)|0)==(m|0))break a;i=i+1|0;if((i|0)>=(n|0)){i=0;break}}}else i=0;while(0);TI(i,Z);m=(((c[Z+8>>2]|0)+-768|0)/2|0)+(c[Z>>2]|0)|0;c[o>>2]=m;k=(((c[Z+12>>2]|0)+-432|0)/2|0)+(c[Z+4>>2]|0)|0;c[p>>2]=k;n=c[t>>2]|0;i=c[q>>2]|0;c[f+56>>2]=m;c[f+60>>2]=k;c[f+64>>2]=i;c[f+68>>2]=n;n=f+48|0;c[n>>2]=40;c[f+52>>2]=40;g[f+92>>2]=1.0;g[f+96>>2]=1.0;i=c[80021]|0;k=i+272|0;m=c[k>>2]|0;c[f+152>>2]=m;c[f+120>>2]=0;if(m|0)c[m+148>>2]=f;c[k>>2]=f;k=c[i+32>>2]|0;if(k){if((hg[k&63](i,f)|0)<0){NM(f);f=0;break}i=c[80021]|0;if(!i){mE(288511,u);V=25}else V=20}else V=20;do if((V|0)==20){if((c[f>>2]|0)!=(i+280|0)){mE(307733,v);V=25;break}i=f+8|0;k=c[i>>2]|0;if((k|0)!=42542){fN(k);c[i>>2]=nP(42542)|0;i=c[80021]|0;k=c[i+40>>2]|0;if(!k)k=i;else{Bg[k&255](i,f);V=25}}else V=25}while(0);if((V|0)==25)k=c[80021]|0;do if(k){if((c[f>>2]|0)!=(k+280|0)){mE(307733,x);break}if(!(c[n>>2]&4)){i=c[k+80>>2]|0;if(i|0)Bg[i&255](k,f);HI(f,1,0,0)}}else mE(288511,w);while(0);GI(f,(c[n>>2]&69|0)==5&1)|0}while(0);c[10]=f;b:do if(!(a[335023]|0)){mE(308142,z);f=0}else{if(c[81003]|0)if(c[81004]|0)if(c[81005]|0)if(c[81006]|0)if(c[81007]|0)if(c[81008]|0)if(c[81009]|0)if(c[81010]|0)if(c[81011]|0)if(c[81012]|0)if(c[81013]|0)if(c[81014]|0)if(c[81015]|0)if(c[81016]|0)if(!(c[81017]|0))p=15;else{mE(308177,y);f=0;break}else p=14;else p=13;else p=12;else p=11;else p=10;else p=9;else p=8;else p=7;else p=6;else p=5;else p=4;else p=3;else p=2;else p=1;c[13]=c[275];c[14]=c[276];c[15]=c[277];c[16]=c[278];c[17]=c[279];c[18]=c[280];f=Df(308205)|0;if((f|0)!=0?(A=sQ(f)|0,(A&65535|0)!=0):0){i=A;f=A&65535}else{i=2048;f=2048}b[30]=f;a[59]=0;c[16]=i<<1&131070;k=Df(308223)|0;f=(k|0)!=0;c:do if(!(c[80983]|0))if(f){f=c[80991]|0;if(!f)i=0;else while(1){i=c[f>>2]|0;if(i|0?(JN(f+8|0,k)|0)==0:0)break c;f=c[f+4>>2]|0;if(!f){i=0;break}}}else{k=0;i=0}else{if(f?JN(k,306872)|0:0){mE(310238,B);f=0;break b}U=c[81002]|0;if(!((U|0)!=0?!(c[U+144>>2]|0):0))V=49;do if((V|0)==49){U=c[81003]|0;if(U|0?(c[U+144>>2]|0)==0:0)break;U=c[81004]|0;if(U|0?(c[U+144>>2]|0)==0:0)break;U=c[81005]|0;if(U|0?(c[U+144>>2]|0)==0:0)break;U=c[81006]|0;if(U|0?(c[U+144>>2]|0)==0:0)break;U=c[81007]|0;if(U|0?(c[U+144>>2]|0)==0:0)break;U=c[81008]|0;if(U|0?(c[U+144>>2]|0)==0:0)break;U=c[81009]|0;if(U|0?(c[U+144>>2]|0)==0:0)break;U=c[81010]|0;if(U|0?(c[U+144>>2]|0)==0:0)break;U=c[81011]|0;if(U|0?(c[U+144>>2]|0)==0:0)break;U=c[81012]|0;if(U|0?(c[U+144>>2]|0)==0:0)break;U=c[81013]|0;if(U|0?(c[U+144>>2]|0)==0:0)break;U=c[81014]|0;if(U|0?(c[U+144>>2]|0)==0:0)break;U=c[81015]|0;if(U|0?(c[U+144>>2]|0)==0:0)break;U=c[81016]|0;if(U|0?(c[U+144>>2]|0)==0:0)break;f=c[81017]|0;if(!f){k=0;i=0;break c}if(c[f+144>>2]|0){k=0;i=0;break c}}while(0);mE(308245,C);f=0;break b}while(0);if((c[80985]|0)==0?(i|0)==0&(k|0)!=0:0){mE(308271,D);f=0;break}o=eN(188)|0;if(!o){mE(294869,E);f=0;break}if(c[o+-4>>2]&3|0)RQ(o|0,0,188)|0;c[o>>2]=p+1;f=o+4|0;c[f>>2]=c[13];c[f+4>>2]=c[14];c[f+8>>2]=c[15];c[f+12>>2]=c[16];c[f+16>>2]=c[17];c[f+20>>2]=c[18];c[o+144>>2]=0;c[o+184>>2]=i;c[o+132>>2]=0;c[o+140>>2]=1;c[o+136>>2]=1;if(!(c[80981]|0)){f=eN(12)|0;if(!f)mE(294869,G);else{mE(306927,F);fN(f)}c[o+152>>2]=0;hM(o);mE(308287,H);f=0;break}if((jg[c[323864>>2]&31](o,i,k,0)|0)<0){hM(o);f=0;break}f=c[f>>2]|0;if((c[13]|0)!=(f|0))c[13]=f;f=b[28]|0;i=b[o+8>>1]|0;if(f<<16>>16!=i<<16>>16){b[28]=i;f=i}i=a[58]|0;k=a[o+10>>0]|0;if(i<<24>>24!=k<<24>>24){a[58]=k;i=k}k=b[o+12>>1]|0;if(k<<16>>16!=(b[30]|0)){b[30]=k;a[59]=f<<16>>16==8?-128:0;c[16]=O(O(i&255,(f&65535)>>>3&31)|0,k&65535)|0}i=o+20|0;if(!(c[i>>2]|0)){k=c[(c[o+28>>2]|0?o+48|0:o+16|0)>>2]<<1;k=(k&8190|0?8192:0)+((k|0)/8192|0)|0;if((k|0)>0){m=o+172|0;f=0;do{n=eN(8204)|0;if(n|0){c[n+8192>>2]=0;c[n+8196>>2]=0;c[n+8200>>2]=c[m>>2];c[m>>2]=n}f=f+1|0}while((f|0)!=(k|0))}c[i>>2]=3;c[o+24>>2]=o}c[324008+(p<<2)>>2]=o;if(c[80980]|0){f=c[o>>2]|0;break}if(!(c[o+28>>2]|0))f=0;else f=c[o+52>>2]|0;U=c[o+16>>2]|0;U=eN(U>>>0>f>>>0?U:f)|0;c[o+148>>2]=U;if(!U){hM(o);mE(294869,I);f=0;break}c[J>>2]=c[o>>2];EI(Z,64,308314,J)|0;k=eN(808)|0;do if(k){RQ(k|0,0,808)|0;c[k+8>>2]=-1;c[k+12>>2]=0;U=nP(Z)|0;f=k+792|0;c[f>>2]=U;if(!U){mE(294869,L);fN(k);break}i=eN(16)|0;if(!i){mE(294869,M);f=c[f>>2]|0;if(f|0)fN(f);fN(k);break}else{c[i>>2]=387;c[i+4>>2]=o;c[i+8>>2]=k;mE(306927,N);c[i+12>>2]=0;f=c[f>>2]|0;if(f|0)fN(f);fN(k);fN(i);break}}else mE(294869,K);while(0);c[o+156>>2]=0;hM(o);mE(308328,P);f=0}while(0);c[19]=f;f=c[13]|0;p=b[28]|0;o=a[58]|0;U=p&65535;d:do if(!((U&255)>>>0>16&(U&32768|0)==0)){n=o&255;if(!(o<<24>>24)){mE(308384,R);break}if(!f){mE(308423,S);break}q=96;t=q+64|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(t|0));b[42]=-32752;b[43]=p;c[20]=0;c[40]=0;c[30]=0;c[27]=1;h[j>>3]=1.0;c[28]=c[j>>2];c[29]=c[j+4>>2];s=+(f|0);h[j>>3]=s/s;c[22]=c[j>>2];c[23]=c[j+4>>2];do if(p<<16>>16!=-32752){k=p&255;i=0;f=25;while(1){if((b[14872+(i<<3)>>1]|0)==-32752?(b[14872+(i<<3)+2>>1]|0)==p<<16>>16:0)break;i=i+1|0;f=c[14872+(i<<3)+4>>2]|0;if(!f){V=146;break}}if((V|0)==146){mE(308458,T);break d}c[40]=1;c[30]=f;if((k&65535)>16){i=(k&65535)>>>4;c[27]=i&65535;r=+(i&65535);h[j>>3]=r;c[28]=c[j>>2];c[29]=c[j+4>>2];f=1;i=i<<1&65535;break}if(k<<16>>16==16){f=1;i=2;r=1.0}else{r=1.0/+((16/(k&65535)|0)&65535);h[j>>3]=r;c[28]=c[j>>2];c[29]=c[j+4>>2];f=1;i=2}}else{f=0;i=2;r=1.0}while(0);if(o<<24>>24!=1){c[40]=f+1;c[120+(f<<2)>>2]=117;c[27]=i;r=r*2.0;h[j>>3]=r;c[28]=c[j>>2];c[29]=c[j+4>>2];switch(o<<24>>24){case 6:{f=c[40]|0;c[40]=f+1;c[120+(f<<2)>>2]=118;i=i*3|0;c[27]=i;f=6;m=0;s=3.0;V=151;break}case 4:{f=c[40]|0;c[40]=f+1;c[120+(f<<2)>>2]=119;i=i<<1;c[27]=i;f=4;m=1;s=2.0;V=151;break}default:{f=2;k=i;m=0}}while(1){if((V|0)==151){r=s*r;h[j>>3]=r;c[28]=c[j>>2];c[29]=c[j+4>>2];k=i}i=(f&255)<<1;if(i>>>0>n>>>0)break;V=c[40]|0;c[40]=V+1;c[120+(V<<2)>>2]=117;V=k<<1;c[27]=V;f=i&255;s=2.0;i=V;V=151}i=f<<24>>24==6;if(!((o&255)<3&i))if(m&i){f=4;i=124;V=157}else V=158;else{f=c[40]|0;c[40]=f+1;c[120+(f<<2)>>2]=120;r=r/3.0;h[j>>3]=r;c[28]=c[j>>2];c[29]=c[j+4>>2];f=2;V=159}while(1)if((V|0)==157){U=c[40]|0;c[40]=U+1;c[120+(U<<2)>>2]=i;r=r*.5;h[j>>3]=r;c[28]=c[j>>2];c[29]=c[j+4>>2];V=158;continue}else if((V|0)==158){V=0;if(!(f&1)){V=159;continue}else break}else if((V|0)==159){V=0;f=(f&255)>>>1;if((f&255)<(o&255))break;else{i=125;V=157;continue}}}f=c[40]|0;if(f|0){c[20]=1;b[42]=-32752;b[43]=p;c[25]=0;c[24]=0;c[120+(f<<2)>>2]=0}}else mE(308357,Q);while(0);if(c[20]|0){U=(c[13]<<1>>>0)/60|0;c[25]=U;c[24]=eN(O(U,c[27]|0)|0)|0}i=c[13]|0;f=eN(72)|0;if(!f)f=0;else{q=f;t=q+72|0;do{c[q>>2]=0;q=q+4|0}while((q|0)<(t|0));U=Rk(i)|0;c[f+24>>2]=U;PQ(U+2438632|0,88575,1024)|0}c[2]=f;c[3]=c[f+24>>2];f=eN(65736)|0;if(f|0?c[f+-4>>2]&3|0:0)RQ(f|0,0,65736)|0;c[216]=f;f=eN(76)|0;if(f|0?c[f+-4>>2]&3|0:0){q=f;t=q+76|0;do{a[q>>0]=0;q=q+1|0}while((q|0)<(t|0))}c[217]=f;f=eN(128)|0;if(f|0?c[f+-4>>2]&3|0:0){q=f;t=q+128|0;do{a[q>>0]=0;q=q+1|0}while((q|0)<(t|0))}c[218]=f;f=eN(44)|0;if(f|0?c[f+-4>>2]&3|0:0){q=f;t=q+44|0;do{a[q>>0]=0;q=q+1|0}while((q|0)<(t|0))}c[219]=f;f=eN(100)|0;if(f|0?c[f+-4>>2]&3|0:0){q=f;t=q+100|0;do{a[q>>0]=0;q=q+1|0}while((q|0)<(t|0))}c[220]=f;f=eN(24)|0;if(f|0?c[f+-4>>2]&3|0:0){q=f;t=q+24|0;do{a[q>>0]=0;q=q+1|0}while((q|0)<(t|0))}c[221]=f;f=eN(13160)|0;if(f|0?c[f+-4>>2]&3|0:0)RQ(f|0,0,13160)|0;c[222]=f;f=eN(1144)|0;if(f|0?c[f+-4>>2]&3|0:0)RQ(f|0,0,1144)|0;c[223]=f;f=eN(16)|0;if(f|0?c[f+-4>>2]&3|0:0){q=f;t=q+16|0;do{a[q>>0]=0;q=q+1|0}while((q|0)<(t|0))}c[224]=f;f=eN(56)|0;if(f|0?c[f+-4>>2]&3|0:0){q=f;t=q+56|0;do{a[q>>0]=0;q=q+1|0}while((q|0)<(t|0))}c[225]=f;f=eN(60)|0;if(f|0?c[f+-4>>2]&3|0:0){q=f;t=q+60|0;do{a[q>>0]=0;q=q+1|0}while((q|0)<(t|0))}c[226]=f;f=eN(60)|0;if(f|0?c[f+-4>>2]&3|0:0){q=f;t=q+60|0;do{a[q>>0]=0;q=q+1|0}while((q|0)<(t|0))}c[227]=f;f=eN(52)|0;if(f|0?c[f+-4>>2]&3|0:0){q=f;t=q+52|0;do{a[q>>0]=0;q=q+1|0}while((q|0)<(t|0))}c[228]=f;Gi(e,42935);n=c[225]|0;o=c[3]|0;k=c[229]|0;c[n>>2]=o;m=n+4|0;c[m>>2]=k;c[n+48>>2]=186;c[n+52>>2]=187;q=n+8|0;t=q+40|0;do{a[q>>0]=0;q=q+1|0}while((q|0)<(t|0));c[Z>>2]=0;f=gh(Z,85845,2102)|0;i=c[Z>>2]|0;if(i|0){U=c[n>>2]|0;Eg[c[U+2439808>>2]&63](U+1260276|0,i,f,1);Yj(n);fh();fN(i)}c[W>>2]=0;U=k+4096|0;aP(Z,U)|0;RQ(U|0,0,4096)|0;f=Bi(k,87947,W)|0;aP(U,Z)|0;do if(!f){f=eN(1178356)|0;if(!f)break;e=c[n>>2]|0;e=hg[c[e+2439812>>2]&63](e+1260276|0,f)|0;T=c[m>>2]|0;U=T+4096|0;aP(Z,U)|0;RQ(U|0,0,4096)|0;Di(T,87947,f,e,0)|0;aP(U,Z)|0;fN(f)}else{U=c[n>>2]|0;Eg[c[U+2439808>>2]&63](U+1260276|0,f,c[W>>2]|0,1);Yj(n);fh();fN(f)}while(0);vg[c[o+2439780>>2]&511](o);f=c[229]|0;c[Z>>2]=0;f=Bi(f,88336,Z)|0;if(f|0){if((c[Z>>2]|0)==384)PQ(292,f|0,384)|0;fN(f)}N=c[221]|0;c[N>>2]=c[3];a[N+4>>0]=0;c[N+8>>2]=1;c[N+12>>2]=0;a[N+16>>0]=0;c[N+20>>2]=188;N=c[222]|0;U=c[3]|0;n=c[229]|0;Q=c[225]|0;S=c[232]|0;T=c[233]|0;k=N+4140|0;if(!(c[k>>2]|0))c[k>>2]=eN(48640)|0;o=N+4144|0;f=c[o>>2]|0;if(!f){f=eN(48640)|0;c[o>>2]=f}e=N+4136|0;i=c[e>>2]|0;if(!i){i=eN(1178356)|0;c[e>>2]=i;m=o;f=c[o>>2]|0}else m=o;I=c[k>>2]|0;c[N>>2]=Q;R=N+4|0;J=N+25|0;c[R>>2]=0;c[R+4>>2]=0;c[R+8>>2]=0;c[R+12>>2]=0;c[R+16>>2]=0;a[R+20>>0]=0;a[J>>0]=0;a[J+1>>0]=0;a[J+2>>0]=0;J=N+4124|0;a[J>>0]=0;R=N+4125|0;a[R>>0]=0;a[R+1>>0]=0;a[R+2>>0]=0;c[N+4128>>2]=121;R=N+4132|0;a[R>>0]=0;p=N+4133|0;a[p>>0]=0;a[p+1>>0]=0;a[p+2>>0]=0;c[e>>2]=i;c[m>>2]=f;i=N+4912|0;RQ(N+4148|0,0,764)|0;c[i>>2]=U;c[N+4916>>2]=n;p=N+4920|0;P=N+13124|0;K=N+13126|0;L=N+13127|0;M=N+13128|0;H=N+13129|0;RQ(p|0,0,8209)|0;a[H>>0]=0;a[H+1>>0]=0;a[H+2>>0]=0;c[N+13132>>2]=122;H=N+13136|0;c[H>>2]=0;c[H+4>>2]=0;c[N+13144>>2]=123;c[N+13148>>2]=4;c[N+13152>>2]=189;c[N+13156>>2]=388;RQ(I|0,0,48640)|0;RQ(c[o>>2]|0,0,48640)|0;I=N+28|0;RQ(I|0,0,4096)|0;if(S|0)aP(N+9016|0,c[T>>2]|0)|0;yh(N,42990,15);yh(N,43013,3);yh(N,43022,3);if((S|0)>1){q=(c[e>>2]|0)+1047744|0;f=U+2308020|0;t=q+48|0;do{c[q>>2]=c[f>>2];q=q+4|0;f=f+4|0}while((q|0)<(t|0));n=1;while(1){k=c[T+(n<<2)>>2]|0;c[W>>2]=0;o=Ei(k,W)|0;if(o){if(!(JN(k+(WO(k)|0)+-4|0,43053)|0)){V=229;break}fN(o)}f=n+1|0;if((f|0)<(S|0))n=f;else{f=1;break}}if((V|0)==229){Eg[c[(c[i>>2]|0)+2439808>>2]&63](c[e>>2]|0,o,c[W>>2]|0,1);m=RP(k)|0;i=RP(k)|0;do if(!(mP(i,Z)|0)){e:do if((c[Z+12>>2]&61440|0)==32768){f=WO(i)|0;if((f|0)<0)break;f=i+f|0;while(1){if((a[f>>0]|0)==47)break;f=f+-1|0;if(f>>>0<i>>>0)break e}a[f>>0]=0}while(0);if(!i){f=0;break}f=WO(i)|0;if((a[i+(f+-1)>>0]|0)!=47){V=i+f|0;a[V>>0]=47;a[V+1>>0]=0}f=RP(k)|0;do if(!(mP(f,Z)|0)){f:do if((c[Z+12>>2]&61440|0)==32768){i=WO(f)|0;if((i|0)<0)break;i=f+i|0;while(1){if((a[i>>0]|0)==47)break;i=i+-1|0;if(i>>>0<f>>>0)break f}a[i>>0]=0}while(0);if(!f){f=0;break}i=WO(f)|0;if((a[f+(i+-1)>>0]|0)==47)break;V=f+i|0;a[V>>0]=47;a[V+1>>0]=0}else f=0;while(0);f=m+(WO(f)|0)|0}else f=0;while(0);if((p|0)!=(f|0))aP(p,f)|0;a[R>>0]=1;fN(o);f=1<<n|1}H=S+-1|0;if((H|0)>1){i=1;do{G=3<<i;g:do if(!(G&~f))i=i+1|0;else{k=c[T+(i<<2)>>2]|0;i=i+1|0;p=c[T+(i<<2)>>2]|0;m=(JN(k,43058)|0)==0;if(!m?(JN(k,43070)|0)!=0:0)V=270;else V=264;do if((V|0)==264){V=0;n=(c[e>>2]|0)+65432|0;c[Z>>2]=0;o=Ei(p,Z)|0;if(!o){V=270;break}RQ(n|0,0,65536)|0;k=c[Z>>2]|0;if((k|0)>65536){c[X>>2]=65536;MN(W,43076,X)|0;yh(N,W,6)}PQ(n|0,o|0,((k|0)<65535?k:65535)|0)|0;fN(o);a[R>>0]=1;a[L>>0]=1;if(!m)break;a[J>>0]=1;aP(I,p)|0}while(0);h:do if((V|0)==270){do if(!(JN(k,43110)|0)){c[Z>>2]=0;F=Ei(p,Z)|0;if(!F)break;E=ti(F)|0;if(E|0){B=E+8|0;k=c[B>>2]|0;A=(k|0)<128?k:128;V=c[E+12>>2]|0;C=(V|0)<256?V:256;do if((V|0)>0){D=E+4|0;if((k|0)>0)w=0;else{k=E;break}do{y=((w|0)/8|0)<<4;z=((w|0)%8|0)<<3;x=0;do{q=a[(c[E>>2]|0)+((O(c[B>>2]|0,w)|0)+x)>>0]|0;v=c[D>>2]|0;q=q&255;n=c[e>>2]|0;o=d[v+(q*3|0)>>0]|0;p=d[v+(q*3|0)+1>>0]|0;q=d[v+(q*3|0)+2>>0]|0;v=0;k=0;m=-1;while(1){u=o-(d[n+1047744+(k*3|0)>>0]|0)|0;V=p-(d[n+1047744+(k*3|0)+1>>0]|0)|0;t=q-(d[n+1047744+(k*3|0)+2>>0]|0)|0;t=(O(V,V)|0)+(O(u,u)|0)+(O(t,t)|0)|0;u=t>>>0<m>>>0;v=u?k:v;k=k+1|0;if((k|0)==16)break;else m=u?t:m}V=z+((x|0)%8|0)|0;n=(V>>>1)+(n+(y+((x|0)/8|0)<<5))|0;k=d[n>>0]|0;if(!(V&1)){m=k&240;a[n>>0]=m;k=v&15}else{m=k&15;a[n>>0]=m;k=v<<4&4080}a[n>>0]=k|m;x=x+1|0}while((x|0)<(A|0));w=w+1|0}while((w|0)<(C|0));k=E}else k=E;while(0);k=c[k>>2]|0;if(k|0)fN(k);k=c[E+4>>2]|0;if(k|0)fN(k);fN(E)}fN(F);a[R>>0]=1;a[L>>0]=1;break h}while(0);if(JN(k,43119)|0)break g;c[Z>>2]=0;k=Ei(p,Z)|0;if(!k)break g;m=c[Z>>2]|0;if(m>>>0<32641){F=c[3]|0;V=a[756]|0;RQ(F+81920+(V*130968|0)+16384+m|0,0,32640-m|0)|0;PQ(F+81920+(V*130968|0)+16384|0,k|0,m|0)|0;a[R>>0]=1;a[L>>0]=1;fN(k);break}else{fN(k);break g}}while(0);f=G|f}while(0)}while((i|0)!=(H|0))}n=Q+41|0;m=1;while(1){i=1<<m;i:do if(!(i&f)){k=c[T+(m<<2)>>2]|0;do if(!(JN(k,43124)|0))a[n>>0]=1;else{if(!(JN(k,43133)|0)){a[K>>0]=1;break}if(!(JN(k,43139)|0)){a[M>>0]=1;break}if(JN(k,43151)|0){i=f;break i}a[L>>0]=1}while(0);i=i|f}else i=f;while(0);m=m+1|0;if((m|0)==(S|0))break;else f=i}f=1;do{if(!(1<<f&i)){c[Y>>2]=c[T+(f<<2)>>2];MN(Z,43157,Y)|0;Gb(0,43194,Z|0)|0}f=f+1|0}while((f|0)!=(S|0))}do if(!(a[R>>0]|0)){Y=Eb(1)|0;f=Y;if(!Y)break;a[R>>0]=1;Y=Eb(2)|0;c[Z>>2]=0;Y=gh(Z,f,Y)|0;Z=c[Z>>2]|0;Eg[c[U+2439808>>2]&63](c[e>>2]|0,Z,Y,1);fN(Z);Fb(3,f|0)|0}while(0);a[P>>0]=a[R>>0]^1;f=c[228]|0;i=c[3]|0;k=c[222]|0;m=c[k+4916>>2]|0;do if(!(c[79298]|0)){n=Sf(13,1)|0;if(!n)break;Sf(13,n|0)|0}while(0);c[79298]=(c[79298]|0)+1;Z=eN(4104)|0;RQ(Z|0,0,4104)|0;c[f>>2]=i;c[f+4>>2]=m;c[f+8>>2]=k;c[f+12>>2]=Z;c[f+16>>2]=317268;a[f+20>>0]=0;Z=f+24|0;c[Z>>2]=0;c[Z+4>>2]=0;c[Z+8>>2]=0;c[Z+12>>2]=0;c[Z+16>>2]=0;c[f+44>>2]=183;c[f+48>>2]=184;Gi(m,88445);ki(c[223]|0,c[222]|0,c[3]|0);Z=c[3]|0;b[377]=0;b[378]=0;a[758]=0;Zj(c[216]|0,Z,Z+147352|0);Oi(c[217]|0,c[3]|0,Z+81920|0);hj(c[218]|0,c[3]|0,Z+98304|0);uj(c[219]|0,c[3]|0,Z+130944|0);Ej(c[220]|0,c[3]|0,Z+135424|0);Uj(c[224]|0,c[3]|0,c[864+((a[756]|0)*20|0)+8>>2]|0);j:do if(a[(c[222]|0)+13127>>0]|0){f=c[45]|0;k:do switch(f|0){case 1:break j;case 2:{Z=c[3]|0;vg[c[Z+2439784>>2]&511](Z);Z=c[3]|0;vg[c[Z+2439780>>2]&511](Z);break}default:{Z=c[3]|0;vg[c[Z+2439780>>2]&511](Z);switch(f|0){case 9:case 10:case 0:break k;case 11:{c[46]=3;break k}default:{c[46]=f;break k}}}}while(0);c[45]=1;f=c[80021]|0;if(!f)break;i=c[f+224>>2]|0;if(!i)break;if(!(gg[i&511](f)|0))break;if((c[45]|2|0)!=3)break;aN()}while(0);l:do if(a[(c[222]|0)+13128>>0]|0){n=a[860]|0;a[860]=n^1;m=c[10]|0;n=n<<24>>24==0?4097:0;f=c[80021]|0;if(!f){mE(288511,_);break}do if(m|0){if((c[m>>2]|0)!=(f+280|0))break;f=m+48|0;i=c[f>>2]|0;k=i&4097;if((n|0)==(k|0))break l;c[f>>2]=i&-4098|n;if(!(GI(m,(n&1|0)!=0&(i&68|0)==4&1)|0))break l;c[f>>2]=c[f>>2]&-4098|k;break l}while(0);mE(307733,$)}while(0);t=c[3]|0;Bg[c[t+2439672>>2]&255](t,0);t=eN(16384)|0;Ji((c[3]|0)+2308020|0);o=c[3]|0;i=0;m=0;while(1){p=((m|0)/32|0)<<4;q=(((m|0)/4|0|0)%8|0)<<3;k=0;n=i;while(1){$=(((k|0)/4|0|0)%8|0)+q|0;f=d[($>>>1)+(o+1260276+(((k|0)/32|0)+p<<5))>>0]|0;f=$&1|0?f>>>4:f&15;if((f|0)==14)f=0;else f=c[317196+(f<<2)>>2]|0;c[t+(n<<2)>>2]=f;k=k+1|0;if((k|0)==64)break;else n=n+1|0}m=m+1|0;if((m|0)==64)break;else i=i+64|0}f=yJ(0,0,372645892)|0;if(!f)f=0;else{c[f>>2]=c[f>>2]|1;c[f+20>>2]=t;c[f+8>>2]=64;c[f+12>>2]=64;c[f+16>>2]=256;c[f+36>>2]=0;c[f+40>>2]=0;c[f+44>>2]=64;c[f+48>>2]=64}p=c[10]|0;i=c[80021]|0;if(!i){mE(288511,aa);ME(f);fN(t);aa=c[10]|0;ba=c[225]|0;ba=ba+42|0;ba=a[ba>>0]|0;ba=ba<<24>>24!=0;ba=ba?6:2;ba=JM(aa,-1,ba)|0;c[11]=ba;ba=KM(ba,372645892,256,256)|0;c[12]=ba;mh();l=ca;return}do if(p|0){if((c[p>>2]|0)!=(i+280|0))break;if(!f){ME(f);fN(t);aa=c[10]|0;ba=c[225]|0;ba=ba+42|0;ba=a[ba>>0]|0;ba=ba<<24>>24!=0;ba=ba?6:2;ba=JM(aa,-1,ba)|0;c[11]=ba;ba=KM(ba,372645892,256,256)|0;c[12]=ba;mh();l=ca;return}m=p+12|0;ME(c[m>>2]|0);n=wJ(372645892)|0;if(!n){c[m>>2]=0;ME(f);fN(t);aa=c[10]|0;ba=c[225]|0;ba=ba+42|0;ba=a[ba>>0]|0;ba=ba<<24>>24!=0;ba=ba?6:2;ba=JM(aa,-1,ba)|0;c[11]=ba;ba=KM(ba,372645892,256,256)|0;c[12]=ba;mh();l=ca;return}o=tJ(f,n,0)|0;aa=n+36|0;ba=c[aa>>2]|0;c[aa>>2]=ba+-1;if((ba|0)<=1){i=c[80023]|0;m:do if((i|0)==(n|0))c[80023]=c[n+40>>2];else{if(!i)break;do{k=i+40|0;i=c[k>>2]|0;if(!i)break m}while((i|0)!=(n|0));c[k>>2]=c[n+40>>2]}while(0);i=c[n+4>>2]|0;do if(i|0){aa=i+12|0;ba=c[aa>>2]|0;c[aa>>2]=ba+-1;if((ba|0)>1)break;fN(c[i+4>>2]|0);fN(i)}while(0);fN(n)}c[m>>2]=o;if(!o){ME(f);fN(t);aa=c[10]|0;ba=c[225]|0;ba=ba+42|0;ba=a[ba>>0]|0;ba=ba<<24>>24!=0;ba=ba?6:2;ba=JM(aa,-1,ba)|0;c[11]=ba;ba=KM(ba,372645892,256,256)|0;c[12]=ba;mh();l=ca;return}i=c[80021]|0;k=c[i+44>>2]|0;if(!k){ME(f);fN(t);aa=c[10]|0;ba=c[225]|0;ba=ba+42|0;ba=a[ba>>0]|0;ba=ba<<24>>24!=0;ba=ba?6:2;ba=JM(aa,-1,ba)|0;c[11]=ba;ba=KM(ba,372645892,256,256)|0;c[12]=ba;mh();l=ca;return}Dg[k&63](i,p,o);ME(f);fN(t);aa=c[10]|0;ba=c[225]|0;ba=ba+42|0;ba=a[ba>>0]|0;ba=ba<<24>>24!=0;ba=ba?6:2;ba=JM(aa,-1,ba)|0;c[11]=ba;ba=KM(ba,372645892,256,256)|0;c[12]=ba;mh();l=ca;return}while(0);mE(307733,ba);ME(f);fN(t);aa=c[10]|0;ba=c[225]|0;ba=ba+42|0;ba=a[ba>>0]|0;ba=ba<<24>>24!=0;ba=ba?6:2;ba=JM(aa,-1,ba)|0;c[11]=ba;ba=KM(ba,372645892,256,256)|0;c[12]=ba;mh();l=ca;return}function jh(a){a=a|0;return}function kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+16|0;oQ();c[232]=b;c[233]=d;if((b|0)==2)Jb(c[d+4>>2]|0,38319,190,191);else Hi();of(1,60,1);fN(c[(c[228]|0)+12>>2]|0);b=c[79298]|0;if((b|0?(d=b+-1|0,c[79298]=d,(d|0)==0):0)?(f=Sf(13,0)|0,(f|0)!=1):0)Sf(13,f|0)|0;fN(c[216]|0);fN(c[217]|0);fN(c[218]|0);fN(c[219]|0);fN(c[220]|0);fN(c[221]|0);fN(c[222]|0);fN(c[223]|0);fN(c[224]|0);fN(c[225]|0);fN(c[226]|0);fN(c[227]|0);fN(c[228]|0);b=c[2]|0;if(b|0){d=c[b+24>>2]|0;a[d+2589368>>0]=0;Om(d);Om(d);_l(d);f=c[d+2588572>>2]|0;if(f|0)fN(f);fN(c[d+2440924>>2]|0);fN(d);fN(b)}b=c[24]|0;if(b|0)fN(b);mM(c[172]|0);mM(c[12]|0);b=c[66]|0;if(b|0)mM(b);nM(c[11]|0);NM(c[10]|0);b=(c[19]|0)+-1|0;if(!(b>>>0<=15?(e=c[324008+(b<<2)>>2]|0,(e|0)!=0):0)){mE(308021,g);e=0}hM(e);c[81019]=1;MM(29233);c[80312]=0;e=c[80024]|0;if(e|0)do{c[80024]=c[e+16>>2];fN(c[e>>2]|0);fN(c[e+4>>2]|0);b=c[e+12>>2]|0;if(b|0)do{g=b;b=c[b+8>>2]|0;fN(g)}while((b|0)!=0);fN(e);e=c[80024]|0}while((e|0)!=0);e=c[80025]|0;if(!e){e=335019;b=e+32|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(b|0));c[81019]=0;Cf(0)}else h=e;do{c[80025]=c[h+8>>2];fN(h);h=c[80025]|0}while((h|0)!=0);e=335019;b=e+32|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(b|0));c[81019]=0;Cf(0);return 0}function lh(){var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+48|0;s=x+40|0;r=x+32|0;u=x+24|0;t=x+16|0;q=x+8|0;p=x;c[72]=321278;c[169]=0;g=0;f=0;while(1){e=1<<g|f;if(!(a[321278+(c[292+(g<<2)>>2]|0)>>0]|0))e=f;else c[169]=e;g=g+1|0;if((g|0)==96)break;else f=e}c[171]=0;o=0;e=0;a:while(1){n=c[164+(o<<2)>>2]|0;b:do if((n|0)!=0?(c[n+44>>2]|0)!=0:0){switch(e|0){case 0:{m=684;break}case 1:{if(!685){e=1;break b}else m=685;break}default:break b}i=n+8|0;j=c[i>>2]|0;if((j|0)>0){k=n+12|0;h=0;f=0;do{g=c[i>>2]|0;c:do if((g|0)>(h|0)){g=b[(c[k>>2]|0)+(h<<1)>>1]|0;if(g<<16>>16)switch(h|0){case 0:if(g<<16>>16>16384){f=f|2;break c}else{f=g<<16>>16<-16384?f|8:f;break c}case 1:if(g<<16>>16>16384){f=f|4;break c}else{f=g<<16>>16<-16384|f;break c}default:break c}}else{c[p>>2]=g;mE(310306,p)}while(0);h=h+1|0}while((h|0)!=(j|0))}else f=0;i=f>>>1;f=(i&2|f&1|i&4|f<<2&8|d[m>>0])&255;a[m>>0]=f;i=n+20|0;g=c[i>>2]|0;if((g|0)>0){j=n+24|0;h=0;do{if((g|0)>(h|0))g=a[(c[j>>2]|0)+h>>0]|0;else{c[q>>2]=g;mE(310332,q);g=0;f=a[m>>0]|0}g=g&255;k=g>>>1;f=(f&255|g&1|k&2|k&4|g<<2&8)&255;a[m>>0]=f;h=h+1|0;g=c[i>>2]|0}while((h|0)<(g|0))}i=n+36|0;j=c[i>>2]|0;if((j|0)>1){h=((a[c[n+40>>2]>>0]|0)!=0&1)<<4&255|f&-17;a[m>>0]=h;f=c[i>>2]|0;if((f|0)>1){g=a[(c[n+40>>2]|0)+1>>0]|0;f=h}else{c[t>>2]=f;mE(310277,t);g=0;f=a[m>>0]|0}f=(g<<24>>24!=0&1)<<5&255|f&-33;a[m>>0]=f;if((j|0)>3){g=c[i>>2]|0;if((g|0)>2)g=a[(c[n+40>>2]|0)+2>>0]|0;else{c[u>>2]=g;mE(310277,u);g=0;f=a[m>>0]|0}h=(g<<24>>24!=0&1)<<6&255|f&-65;a[m>>0]=h;f=c[i>>2]|0;if((f|0)>3){g=a[(c[n+40>>2]|0)+3>>0]|0;f=h}else{c[r>>2]=f;mE(310277,r);g=0;f=a[m>>0]|0}a[m>>0]=(g<<24>>24!=0&1)<<7&255|f&127;if((j|0)>5){g=n+40|0;f=5;do{h=c[i>>2]|0;if((h|0)>(f|0)){if(a[(c[g>>2]|0)+f>>0]|0){e=46;break a}}else{c[s>>2]=h;mE(310277,s)}f=f+1|0}while((f|0)<(j|0))}a[704]=0}}e=e+1|0}while(0);o=o+1|0;if(o>>>0>=4){e=57;break}}d:do if((e|0)==46){if(!(a[704]|0)){e:do switch(c[45]|0){case 2:{if(!(a[(c[222]|0)+13125>>0]|0))break d;e=c[3]|0;vg[c[e+2439784>>2]&511](e);e=c[3]|0;vg[c[e+2439780>>2]&511](e);e=c[227]|0;g=c[3]|0;v=c[229]|0;f=e+12|0;w=c[f>>2]|0;c[e>>2]=g;c[e+4>>2]=v;a[e+8>>0]=0;c[e+16>>2]=0;c[e+20>>2]=0;c[e+24>>2]=0;c[e+28>>2]=-1;v=e+32|0;c[v>>2]=0;c[v+4>>2]=0;c[v+8>>2]=0;c[v+12>>2]=0;a[v+16>>0]=0;c[e+52>>2]=0;c[e+56>>2]=185;e=w;if(!w){e=eN(16320)|0;c[f>>2]=e;if(!e){e=10;break e}}PQ(e|0,g|0,16320)|0;e=10;break}case 10:{e=c[3]|0;vg[c[e+2439788>>2]&511](e);e=2;break}default:break d}while(0);c[45]=e;a[704]=1}}else if((((((e|0)==57?(c[45]|0)==1&(c[171]|0)!=0:0)?(c[171]=0,v=c[3]|0,vg[c[v+2439780>>2]&511](v),v=c[228]|0,vg[c[v+48>>2]&511](v),c[45]=11,v=c[80021]|0,v|0):0)?(w=c[v+224>>2]|0,w|0):0)?gg[w&511](v)|0:0)?(c[45]|2|0)==3:0)aN();while(0);c[(c[3]|0)+65408>>2]=c[170]|c[169]|c[171];l=x;return}function mh(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;m=o+16|0;k=o+8|0;g=o;h=o+24|0;i=o+20|0;if(!(c[11]|0)){l=o;return}b=c[3]|0;Kg[c[b+2439704>>2]&15](b,b+1276660|0,b+1260276|0,0,0,30,17,0,0,-1,1);b=c[172]|0;if(!b){d=KM(c[11]|0,372645892,256,256)|0;c[172]=d;while(1){if(!d){n=6;break}if((c[d>>2]|0)!=332970){n=6;break}c[d+24>>2]=1;b=c[d+36>>2]|0;if(!b){n=8;break}else d=b}if((n|0)==6)mE(289655,g);else if((n|0)==8?(e=c[d+32>>2]|0,f=c[e+24>>2]|0,f|0):0)hg[f&63](e,d)|0;b=c[172]|0}c[h>>2]=0;c[i>>2]=0;tM(b,0,h,i)|0;f=c[h>>2]|0;j=c[i>>2]|0;h=c[3]|0;i=h+16320|0;Ji(h+2308020|0);j=(j>>>2)+-240|0;g=0;while(1){d=a[h>>0]|0;b=d&15;d=(d&255)>>>4;if(!(b<<24>>24))b=0;else b=c[317196+((b&255)<<2)>>2]|-16777216;c[f>>2]=b;if(!(d<<24>>24))b=0;else b=c[317196+((d&255)<<2)>>2]|-16777216;e=f+8|0;c[f+4>>2]=b;h=h+1|0;b=g+2|0;d=(b|0)==240;if((h|0)==(i|0))break;else{g=d?0:b;f=d?e+(j<<2)|0:e}}vM(c[172]|0);d=c[10]|0;b=c[80021]|0;do if(!b){mE(288511,k);b=0;d=0;n=23}else{if(d|0?(c[d>>2]|0)==(b+280|0):0){b=c[d+24>>2]|0;d=c[d+28>>2]|0;if((b|0)<(d|0)){n=23;break}e=(b|0)/15|0;f=2;break}mE(307733,m);b=0;d=0;n=23}while(0);if((n|0)==23){e=(b|0)/6|0;f=3;d=d<<1}j=O(e,-3)|0;n=(d+j|0)/(f|0)|0;c[177]=e;c[178]=0;c[179]=n;k=e<<1;m=b-k|0;c[180]=m;c[181]=n+k;k=n+e|0;c[182]=b-e;c[183]=k;c[184]=j+b;c[185]=k;c[186]=m;c[187]=n;l=o;return}function nh(){var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=l;l=l+48|0;r=s+40|0;q=s+32|0;o=s+24|0;m=s+16|0;k=s+8|0;e=s;if(!(c[229]|0)){l=s;return}if(a[920]|0){r=c[3]|0;Bg[c[r+2439672>>2]&255](r,0);oh();Kb();l=s;return}j=c[68]|0;c[68]=0;d=c[11]|0;if((d|0)!=0?(c[d>>2]|0)==332969:0){if(!(c[d+192>>2]|0))gg[c[d+56>>2]&511](d)|0}else mE(289638,e);g=c[3]|0;e=804;f=e+36|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));b[420]=0;a[842]=0;a[284]=0;c[49]=-1;c[48]=-1;a[205]=0;a[225]=0;a[245]=0;switch(c[45]|0){case 2:{d=g+65508|0;e=g+69988|0;break}case 11:case 10:case 9:case 0:{d=g+1309300|0;e=g+1313780|0;break}default:{d=g+81920+((a[757]|0)*130968|0)+49024|0;e=g+81920+((a[758]|0)*130968|0)+53504|0}}Dg[c[g+2439816>>2]&63](g,d,e);do switch(c[45]|0){case 0:{f=c[221]|0;vg[c[f+20>>2]&511](f);break}case 1:{f=c[222]|0;vg[c[f+13152>>2]&511](f);break}case 2:{f=c[223]|0;vg[c[f+1140>>2]&511](f);break}case 3:{f=c[864+((a[754]|0)*20|0)>>2]|0;vg[c[f+65720>>2]&511](f);break}case 4:{f=c[864+((a[755]|0)*20|0)+4>>2]|0;vg[c[f+64>>2]&511](f);break}case 5:{f=c[864+((a[756]|0)*20|0)+8>>2]|0;vg[c[f+116>>2]&511](f);break}case 7:{f=c[864+((a[757]|0)*20|0)+12>>2]|0;vg[c[f+36>>2]&511](f);break}case 8:{f=c[864+((a[758]|0)*20|0)+16>>2]|0;vg[c[f+92>>2]&511](f);break}case 6:{f=c[224]|0;vg[c[f+12>>2]&511](f);break}case 9:{f=c[226]|0;vg[c[f+52>>2]&511](f);break}case 10:{f=c[227]|0;vg[c[f+56>>2]&511](f);break}case 11:{f=c[228]|0;vg[c[f+44>>2]&511](f);break}default:{}}while(0);d=c[190]|0;if((d|0)>0){e=d+-1|0;c[190]=e;if((d|0)>=31)if((e|0)>89)d=((91-d|0)*7|0)/30|0;else d=0;else d=((31-d|0)*7|0)/-30|0;e=c[3]|0;Gg[c[e+2439688>>2]&7](e,0,d,240,7,6);e=c[3]|0;t=c[e+2439660>>2]|0;f=((O(WO(764)|0,-6)|0)+240|0)/2|0;lg[t&31](e,764,f,d+1|0,15)|0}if(a[(c[225]|0)+41>>0]|0){e=g+65436|0;f=e+72|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(f|0))}t=c[3]|0;vg[c[t+2439820>>2]&511](t);if((c[45]|0)!=2){d=c[3]|0;e=d+16320|0;d=d+2308020|0;f=e+48|0;do{c[e>>2]=c[d>>2];e=e+4|0;d=d+4|0}while((e|0)<(f|0))}oh();do if((c[45]|0)==2){d=c[3]|0;if(!(a[d+2440920>>0]&2)){t=c[80052]|0;c[80052]=0;if(!t)break;d=c[80028]|0;if(!d)break;gg[d&511](0)|0;break}e=a[d+16379>>0]|0;if(e<<24>>24){t=c[80052]|0;c[80052]=0;if((t|0)!=0?(h=c[80028]|0,(h|0)!=0):0){gg[h&511](0)|0;d=c[3]|0;e=a[d+16379>>0]|0}qh(d+24576+((e&255)<<5)|0)}else n=46}else n=46;while(0);if((n|0)==46){d=c[(c[225]|0)+8>>2]|0;t=c[80052]|0;h=d>>>31;c[80052]=h;do if((h|0)!=(t|0)){e=(c[80037]|0)==0?c[80050]|0:c[80051]|0;f=c[80028]|0;g=(f|0)==0;if((e|0)!=0&(d|0)<0&(c[80045]|0)==0){if(g)break;gg[f&511](e)|0;break}else{if(g)break;gg[f&511](0)|0;break}}while(0);d=c[(c[225]|0)+8>>2]|0;if((d|0)>-1)qh((c[3]|0)+1260276+(d<<5)|0)}d=c[45]|0;if((d|0)==2){if(a[(c[3]|0)+2440920>>0]&1){rh();i=c[45]|0;n=57}}else{i=d;n=57}if((n|0)==57?(i|1|0)==11:0)rh();e=c[68]|0;do if((e|0)!=(j|0)){d=c[80027]|0;if(d){f=gg[d&511](e)|0;if(!f)n=69;else{c[f>>2]=c[80049];c[80049]=f;if((c[80050]|0)!=(f|0)){d=f;while(1){e=(d|0)!=0;if((d|0)==(f|0)|e^1)break;d=c[d>>2]|0}if(!e){mE(310126,m);break}}c[80051]=f}}else{mE(310171,k);n=69}do if((n|0)==69)if(!(c[80037]|0)){f=c[80050]|0;break}else{f=c[80051]|0;break}while(0);d=c[80028]|0;e=(d|0)==0;if((f|0)!=0&(c[80052]|0)!=0&(c[80045]|0)==0){if(e)break;gg[d&511](f)|0;break}else{if(e)break;gg[d&511](0)|0;break}}while(0);d=c[11]|0;if((d|0)!=0?(c[d>>2]|0)==332969:0){if(!(c[d+192>>2]|0))vg[c[d+84>>2]&511](d)}else mE(289638,o);d=(c[19]|0)+-1|0;if(d>>>0<=15?(p=c[324008+(d<<2)>>2]|0,(p|0)!=0):0){vg[c[323904>>2]&511](p);c[p+140>>2]=0;vg[c[323908>>2]&511](p)}else mE(308021,q);e=c[3]|0;d=c[e+2440928>>2]|0;e=c[e+2440924>>2]|0;if(!(c[20]|0)){RM(c[19]|0,e,d);l=s;return}PQ(c[24]|0,e|0,d|0)|0;if(c[24]|0){c[26]=c[25];d=c[30]|0;if(d|0){c[40]=0;Bg[d&255](80,b[42]|0)}}else mE(304359,r);RM(c[19]|0,c[24]|0,c[26]|0);l=s;return}function oh(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+128|0;v=w+56|0;u=w+48|0;p=w+40|0;o=w+32|0;m=w+24|0;k=w+16|0;e=w+8|0;q=w+104|0;r=w+88|0;j=w+84|0;g=w+80|0;s=w+64|0;i=c[3]|0;c[r>>2]=0;c[r+4>>2]=0;c[r+8>>2]=0;c[r+12>>2]=0;b=c[10]|0;h=r+8|0;t=r+12|0;d=c[80021]|0;do if(!d)mE(288511,w);else{if(b|0?(c[b>>2]|0)==(d+280|0):0){c[h>>2]=c[b+24>>2];c[t>>2]=c[b+28>>2];break}mE(307733,e)}while(0);b=c[h>>2]|0;d=c[t>>2]|0;do if((b*136|0)<(d*240|0)){n=(b|0)%240|0;f=b-n|0;e=(f*136|0)/240|0;c[r>>2]=(n|0)/2|0;if((b|0)>(d|0)){d=(d-e|0)/2|0;b=f;break}else{d=(f|0)/30|0;b=f;break}}else{f=(d|0)%136|0;e=d-f|0;n=(e*240|0)/136|0;c[r>>2]=(b-n|0)/2|0;d=(f|0)/2|0;b=n}while(0);n=r+4|0;c[n>>2]=d;c[h>>2]=b;c[t>>2]=e;c[j>>2]=0;c[g>>2]=0;tM(c[12]|0,0,j,g)|0;switch(c[45]|0){case 2:{b=c[i+2439772>>2]|0;d=c[i+2439776>>2]|0;e=0;break}case 4:{e=c[864+((a[755]|0)*20|0)+4>>2]|0;b=0;d=c[e+72>>2]|0;break}case 5:{e=c[864+((a[756]|0)*20|0)+8>>2]|0;b=0;d=c[e+124>>2]|0;break}default:{b=0;d=0;e=0}}Eg[c[i+2439824>>2]&63](i,b,d,e);g=c[j>>2]|0;PQ(g|0,i+2440932|0,147456)|0;do if(a[844]|0){b=c[214]|0;d=c[212]|0;if((b|0)>=(c[213]|0)){if(d|0){c[q>>2]=0;e=eN(b*147456|0)|0;wi(e,q,256,144,c[212]|0,c[214]|0,c[(c[225]|0)+32>>2]|0);f=c[q>>2]|0;i=eN(12)|0;c[i>>2]=126;g=i+4|0;c[g>>2]=0;h=i+8|0;c[h>>2]=e;Hb(4,42943,e|0,f|0)|0;Bg[c[i>>2]&255](1,c[g>>2]|0);fN(c[h>>2]|0);fN(i);fN(c[212]|0);c[212]=0}a[844]=0;break}e=0;f=g;d=d+(b*36864<<2)|0;while(1){PQ(d|0,f|0,1024)|0;e=e+1|0;if((e|0)==144)break;else{f=f+1024|0;d=d+1024|0}}if(((b|0)%60|0|0)<30){Ji((c[3]|0)+2308020|0);b=0;do{if(1<<b&29491|0)c[g+(2279-b<<2)>>2]=c[79305];b=b+1|0}while((b|0)!=16);b=0;do{if(1<<b&64164|0)c[g+(2535-b<<2)>>2]=c[79305];b=b+1|0}while((b|0)!=16);b=0;do{if(1<<b&64308|0)c[g+(2791-b<<2)>>2]=c[79305];b=b+1|0}while((b|0)!=16);b=0;do{if(1<<b&64164|0)c[g+(3047-b<<2)>>2]=c[79305];b=b+1|0}while((b|0)!=16);b=0;do{if(1<<b&29363|0)c[g+(3303-b<<2)>>2]=c[79305];b=b+1|0}while((b|0)!=16);b=c[214]|0}c[214]=b+1}while(0);d=c[j>>2]|0;if((c[231]|0)>=(c[(c[225]|0)+44>>2]|0)){Ji((c[3]|0)+2308020|0);b=0;do{if(1<<b&27283|0)c[d+(2279-b<<2)>>2]=c[79305];b=b+1|0}while((b|0)!=16);b=0;do{if(1<<b&35540|0)c[d+(2535-b<<2)>>2]=c[79305];b=b+1|0}while((b|0)!=16);b=0;do{if(1<<b&61108|0)c[d+(2791-b<<2)>>2]=c[79305];b=b+1|0}while((b|0)!=16);b=0;do{if(1<<b&8852|0)c[d+(3047-b<<2)>>2]=c[79305];b=b+1|0}while((b|0)!=16);b=0;do{if(1<<b&52371|0)c[d+(3303-b<<2)>>2]=c[79305];b=b+1|0}while((b|0)!=16)}vM(c[12]|0);c[q>>2]=c[281];c[q+4>>2]=c[282];c[q+8>>2]=c[283];c[q+12>>2]=c[284];c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;b=c[10]|0;d=s+8|0;e=s+12|0;f=c[80021]|0;do if(!f)mE(288511,k);else{if(b|0?(c[b>>2]|0)==(f+280|0):0){c[d>>2]=c[b+24>>2];c[e>>2]=c[b+28>>2];break}mE(307733,m)}while(0);c[e>>2]=c[n>>2];sM(c[11]|0,c[12]|0,q,s)|0;c[q>>2]=c[285];c[q+4>>2]=c[286];c[q+8>>2]=c[287];c[q+12>>2]=c[288];c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;b=c[10]|0;d=s+8|0;e=s+12|0;f=c[80021]|0;do if(!f)mE(288511,o);else{if(b|0?(c[b>>2]|0)==(f+280|0):0){c[d>>2]=c[b+24>>2];c[e>>2]=c[b+28>>2];break}mE(307733,p)}while(0);b=c[n>>2]|0;c[s+4>>2]=(c[t>>2]|0)+b;c[e>>2]=b;sM(c[11]|0,c[12]|0,q,s)|0;c[q>>2]=c[289];c[q+4>>2]=c[290];c[q+8>>2]=c[291];c[q+12>>2]=c[292];c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;b=c[10]|0;d=s+8|0;e=s+12|0;f=c[80021]|0;if(!f){mE(288511,u);u=c[n>>2]|0;v=s+4|0;c[v>>2]=u;v=c[t>>2]|0;c[e>>2]=v;v=c[11]|0;u=c[12]|0;sM(v,u,q,s)|0;c[q>>2]=c[293];c[q+4>>2]=c[294];c[q+8>>2]=c[295];c[q+12>>2]=c[296];u=c[11]|0;v=c[12]|0;sM(u,v,q,r)|0;l=w;return}if(b|0?(c[b>>2]|0)==(f+280|0):0){c[d>>2]=c[b+24>>2];c[e>>2]=c[b+28>>2];u=c[n>>2]|0;v=s+4|0;c[v>>2]=u;v=c[t>>2]|0;c[e>>2]=v;v=c[11]|0;u=c[12]|0;sM(v,u,q,s)|0;c[q>>2]=c[293];c[q+4>>2]=c[294];c[q+8>>2]=c[295];c[q+12>>2]=c[296];u=c[11]|0;v=c[12]|0;sM(u,v,q,r)|0;l=w;return}mE(307733,v);u=c[n>>2]|0;v=s+4|0;c[v>>2]=u;v=c[t>>2]|0;c[e>>2]=v;v=c[11]|0;u=c[12]|0;sM(v,u,q,s)|0;c[q>>2]=c[293];c[q+4>>2]=c[294];c[q+8>>2]=c[295];c[q+12>>2]=c[296];u=c[11]|0;v=c[12]|0;sM(u,v,q,r)|0;l=w;return}function ph(b,d){b=b|0;d=d|0;var e=0;switch(b|0){case 0:{c[190]=120;b=764;d=42954;e=b+20|0;do{a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}while((b|0)<(e|0));return}case 1:{c[190]=120;b=764;d=42974;e=b+16|0;do{a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}while((b|0)<(e|0));return}default:return}}function qh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+80|0;n=o+32|0;m=o+24|0;i=o+16|0;h=o+8|0;e=o;j=o+56|0;k=o+40|0;do if(!(c[66]|0)){g=KM(c[11]|0,372645892,8,8)|0;c[66]=g;while(1){if(!g){f=5;break}if((c[g>>2]|0)!=332970){f=5;break}c[g+24>>2]=1;d=c[g+36>>2]|0;if(!d)break;else g=d}if((f|0)==5){mE(289655,e);break}d=c[g+32>>2]|0;e=c[d+24>>2]|0;if(e|0)hg[e&63](d,g)|0}while(0);if((c[67]|0)!=(b|0)){c[67]=b;c[j>>2]=0;c[k>>2]=0;tM(c[66]|0,0,j,k)|0;Ji((c[3]|0)+16320|0);f=0;g=c[j>>2]|0;while(1){e=a[b+f>>0]|0;d=e&15;e=(e&255)>>>4;if(!(d<<24>>24))d=0;else d=c[317196+((d&255)<<2)>>2]|-16777216;c[g>>2]=d;if(!(e<<24>>24))d=0;else d=c[317196+((e&255)<<2)>>2]|-16777216;c[g+4>>2]=d;f=f+1|0;if((f|0)==32)break;else g=g+8|0}vM(c[66]|0)}f=c[10]|0;d=c[80021]|0;do if(!d){mE(288511,h);e=0;f=0}else{if(f|0?(c[f>>2]|0)==(d+280|0):0){e=c[f+28>>2]|0;f=c[f+24>>2]|0;break}mE(307733,i);e=0;f=0}while(0);do if((f*136|0)<(e*240|0)){g=(f|0)%240|0;d=f-g|0;g=(g|0)/2|0;if((f|0)>(e|0)){h=(e-((d*136|0)/240|0)|0)/2|0;break}else{h=(d|0)/30|0;break}}else{h=(e|0)%136|0;d=((e-h|0)*240|0)/136|0;h=(h|0)/2|0;g=(f-d|0)/2|0}while(0);d=(d|0)/240|0;c[j>>2]=c[297];c[j+4>>2]=c[298];c[j+8>>2]=c[299];c[j+12>>2]=c[300];e=k+4|0;f=d<<3;c[k+8>>2]=f;c[k+12>>2]=f;f=c[80038]|0;c[k>>2]=f;b=c[80039]|0;c[e>>2]=b;if(a[(c[225]|0)+12>>0]|0){c[k>>2]=f-((f-g|0)%(d|0)|0);c[e>>2]=b-((b-h|0)%(d|0)|0)}d=c[10]|0;e=c[80021]|0;if(!e){mE(288511,m);l=o;return}if(d|0?(c[d>>2]|0)==(e+280|0):0){if(!(c[d+48>>2]&1024)){l=o;return}sM(c[11]|0,c[66]|0,j,k)|0;l=o;return}mE(307733,n);l=o;return}function rh(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+144|0;r=t;e=t+40|0;f=t+24|0;g=t+8|0;if(!((a[692]|0)!=0|(c[175]|0)!=0)){l=t;return}o=c[177]|0;k=c[178]|0;b=c[179]|0;h=a[(c[3]|0)+65408>>0]|0;p=h&1;a[e>>0]=p;q=k+o|0;c[e+4>>2]=q;c[e+8>>2]=b;a[e+12>>0]=(h&255)>>>1&1;c[e+16>>2]=q;j=o<<1;c[e+20>>2]=b+j;a[e+24>>0]=(h&255)>>>2&1;c[e+28>>2]=k;i=b+o|0;c[e+32>>2]=i;a[e+36>>0]=(h&255)>>>3&1;c[e+40>>2]=k+j;c[e+44>>2]=i;a[e+48>>0]=(h&255)>>>4&1;c[e+52>>2]=c[180];c[e+56>>2]=c[181];a[e+60>>0]=(h&255)>>>5&1;c[e+64>>2]=c[182];c[e+68>>2]=c[183];a[e+72>>0]=(h&255)>>>6&1;c[e+76>>2]=c[184];c[e+80>>2]=c[185];a[e+84>>0]=(h&255)>>>7;c[e+88>>2]=c[186];c[e+92>>2]=c[187];h=f+4|0;i=f+8|0;j=f+12|0;k=g+4|0;m=g+8|0;n=g+12|0;d=0;while(1){c[f>>2]=(p<<24>>24?d+8|0:d)<<3;c[h>>2]=0;c[i>>2]=8;c[j>>2]=8;c[g>>2]=q;c[k>>2]=b;c[m>>2]=o;c[n>>2]=o;sM(c[11]|0,c[172]|0,f,g)|0;b=d+1|0;if((b|0)==8)break;d=b;p=a[e+(b*12|0)>>0]|0;q=c[e+(b*12|0)+4>>2]|0;b=c[e+(b*12|0)+8>>2]|0}q=c[175]|0;b=q+-3|0;b=(b|0)>0?b:0;do if((a[692]|0)==0&(q|0)!=0){c[175]=b;e=c[172]|0;d=b&255;a:do if(d<<24>>24==-1){b=e;while(1){if(!b){s=12;break a}if((c[b>>2]|0)!=332970){s=12;break a}d=b+20|0;c[d>>2]=c[d>>2]&-3;a[b+31>>0]=-1;d=c[b+36>>2]|0;if(!d){e=b;break}else b=d}}else while(1){if(!e){s=12;break a}if((c[e>>2]|0)!=332970){s=12;break a}b=e+20|0;c[b>>2]=c[b>>2]|2;a[e+31>>0]=d;b=c[e+36>>2]|0;if(!b)break;else e=b}while(0);if((s|0)==12){mE(289655,r);break}b=c[e+32>>2]|0;d=c[b+20>>2]|0;if(d|0)hg[d&63](b,e)|0}while(0);s=c[170]|0?0:(c[174]|0)+1|0;c[174]=s;if((s|0)>299)a[692]=0;l=t;return}function sh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+272|0;h=i;e=i+4|0;f=i+8|0;if(!(a[b+4124>>0]|0)){l=i;return}c[e>>2]=0;g=Ei(b+28|0,e)|0;if(g|0){RQ(d|0,0,65536)|0;e=c[e>>2]|0;if((e|0)>65536){c[h>>2]=65536;MN(f,43076,h)|0;yh(b,f,6)}PQ(d|0,g|0,((e|0)<65535?e:65535)|0)|0;fN(g)}l=i;return}function th(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+4176|0;p=s;q=s+4104|0;n=s+4096|0;if(!d){yh(b,83605,3);e=b+4916|0}else{f=q;h=f+64|0;do{a[f>>0]=0;f=f+1|0}while((f|0)<(h|0));e=b+4916|0;r=b+4912|0;m=0;f=0;do{k=c[1928+(m<<2)>>2]|0;c[p>>2]=43053;c[p+4>>2]=k;MN(q,83527,p)|0;g=MP(d,q)|0;if(g){a[g+4>>0]=0;aP(324664,d)|0;g=WO(324664)|0;if(g>>>0>4){g=324664+g|0;if(((MP(324664,43053)|0)+4|0)!=(g|0))o=7}else{g=324664+g|0;o=7}if((o|0)==7){o=0;a[g>>0]=a[43053]|0;a[g+1>>0]=a[43054]|0;a[g+2>>0]=a[43055]|0;a[g+3>>0]=a[43056]|0;a[g+4>>0]=a[43057]|0}c[n>>2]=0;j=Bi(c[e>>2]|0,324664,n)|0;if(!j)yh(b,83547,3);else{i=eN(1178356)|0;if(i){Eg[c[(c[r>>2]|0)+2439808>>2]&63](i,j,c[n>>2]|0,1);f=c[r>>2]|0;switch(m|0){case 0:{PQ(f+1129712|0,i+1047792|0,130564)|0;break}case 1:{PQ(f+81920|0,i|0,16384)|0;break}case 2:{PQ(f+98304|0,i+16384|0,32640)|0;break}case 3:{PQ(f+147352|0,i+65432|0,65536)|0;break}case 4:{PQ(f+130944|0,i+49024|0,4480)|0;break}case 5:{PQ(f+135424|0,i+53504|0,11928)|0;break}case 6:{f=f+1129664|0;g=i+1047744|0;h=f+48|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(h|0));break}default:{}}bh();yh(b,43421,0);yh(b,k,15);yh(b,83533,3);yh(b,324664,15);yh(b,43421,0);fN(i);f=1}fN(j)}yh(b,43421,0);g=(c[e>>2]|0)+4096|0;if(a[g>>0]|0)yh(b,g,3);yh(b,43440,15)}m=m+1|0}while((m|0)!=7);if(f&1){l=s;return}c[q>>2]=0;aP(324664,d)|0;f=WO(324664)|0;if(f>>>0>4){f=324664+f|0;if(((MP(324664,43053)|0)+4|0)!=(f|0))o=29}else{f=324664+f|0;o=29}if((o|0)==29){a[f>>0]=a[43053]|0;a[f+1>>0]=a[43054]|0;a[f+2>>0]=a[43055]|0;a[f+3>>0]=a[43056]|0;a[f+4>>0]=a[43057]|0}o=(JN(324664,87947)|0)==0;f=c[e>>2]|0;if(o){o=f+4096|0;aP(p,o)|0;RQ(o|0,0,4096)|0;g=Bi(f,324664,q)|0;aP(o,p)|0}else g=Bi(f,324664,q)|0;if(!g)yh(b,83547,3);else{f=(c[e>>2]|0)+4096|0;if(!(JN(f,84322)|0))f=1;else f=(KN(f,84340,18)|0)==0&1;a[b+13125>>0]=f;f=c[r>>2]|0;Eg[c[f+2439808>>2]&63](f+81920|0,g,c[q>>2]|0,1);vg[c[f+2439780>>2]&511](f);f=b+4920|0;if((f|0)!=324664)aP(f,324664)|0;bh();yh(b,45435,3);yh(b,f,15);yh(b,83567,3);yh(b,83581,15);yh(b,83585,3);fN(g)}}yh(b,43421,0);e=(c[e>>2]|0)+4096|0;if(a[e>>0]|0)yh(b,e,3);yh(b,43440,15);l=s;return}function uh(b,d){b=b|0;d=d|0;yh(b,d|0?d:83513,6);yh(b,43421,0);d=(c[b+4916>>2]|0)+4096|0;if(!(a[d>>0]|0)){yh(b,43440,15);return}yh(b,d,3);yh(b,43440,15);return}function vh(b,d,e){b=b|0;d=d|0;e=e|0;yh(b,d,e);yh(b,43421,0);d=(c[b+4916>>2]|0)+4096|0;if(!(a[d>>0]|0)){yh(b,43440,15);return}yh(b,d,3);yh(b,43440,15);return}function wh(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;F=l;l=l+8208|0;A=F+4104|0;B=F+8|0;y=F+4|0;z=F;d=eh()|0;a:do if(d|0){v=b+16|0;w=b+8|0;x=b+4140|0;n=b+4144|0;o=b+12|0;p=b+13112|0;q=b+13116|0;r=b+4148|0;s=b+4908|0;u=b+4916|0;while(1){switch(c[d>>2]|0){case 1027:{k=((c[d+20>>2]|0)>0?-3:3)+(c[v>>2]|0)|0;k=(k|0)>0?k:0;j=c[w>>2]|0;c[v>>2]=(k|0)>(j|0)?j:k;break}case 768:{d=c[d+16+4>>2]|0;b:do if((d|0)<1073741901){if((d|0)<13){switch(d|0){case 8:{k=c[s>>2]|0;d=k+-1|0;e=b+4148+d|0;if(!k)break b;c[s>>2]=d;QQ(e|0,e+1|0,WO(e)|0)|0;break b}case 9:break;default:break b}f=WO(r)|0;if(!f)break;d=XO(r,32)|0;if((d|0)!=0?(t=d+1|0,(WO(t)|0)!=0):0){xi(c[u>>2]|0,1,t);c[s>>2]=WO(r)|0;break}else d=0;while(1){e=c[1204+(d<<4)>>2]|0;d=d+1|0;if(!(LN(e,r,f)|0))break;if(d>>>0>=22)break b}aP(r,e)|0;c[s>>2]=WO(r)|0;break}if((d|0)>=127)if((d|0)<1073741898){switch(d|0){case 127:break;default:break b}k=(c[s>>2]|0)+(b+4148)|0;QQ(k|0,k+1|0,WO(k)|0)|0;break}else{switch(d|0){case 1073741898:break;default:break b}c[s>>2]=0;break}switch(d|0){case 13:break;default:break b}c[s>>2]=0;if(!(WO(r)|0)){yh(b,43421,0);d=(c[u>>2]|0)+4096|0;if(a[d>>0]|0)yh(b,d,3);yh(b,43440,15);break}yh(b,r,15);d=eN(12)|0;c[d>>2]=nP(r)|0;e=d+8|0;c[e>>2]=0;c[d+4>>2]=0;f=c[q>>2]|0;if(!f){c[q>>2]=d;m=r}else{c[f+4>>2]=d;c[e>>2]=f;c[q>>2]=d;c[p>>2]=0;m=r}while(1)if((a[m>>0]|0)==32)m=m+1|0;else break;d=m+(WO(m)|0)+-1|0;if((a[d>>0]|0)==32&d>>>0>m>>>0)do{a[d>>0]=0;d=d+-1|0}while(d>>>0>m>>>0&(a[d>>0]|0)==32);d=XO(m,32)|0;if(!d)k=0;else{k=d+1|0;a[d>>0]=0;k=(a[k>>0]|0)==0?0:k}i=a[m>>0]|0;j=i<<24>>24==0;d=0;c:while(1){e=c[1204+(d<<4)>>2]|0;d:do if(j){f=e;e=0}else{h=m;f=e;e=i;while(1){g=a[f>>0]|0;if(!(g<<24>>24))break d;e=BN(e&255)|0;if(((BN(g&255)|0)^e)&255|0)break;g=h+1|0;f=f+1|0;e=a[g>>0]|0;if(!(e<<24>>24)){e=0;break d}else h=g}e=a[h>>0]|0}while(0);h=BN(e<<24>>24)|0;if(!(((BN(a[f>>0]|0)|0)^h)&255)){m=41;break}switch(d|0){case 2:case 8:{f=c[1204+(d<<4)+4>>2]|0;e=a[m>>0]|0;e:do if(!(e<<24>>24))e=0;else{h=m;while(1){g=a[f>>0]|0;if(!(g<<24>>24))break e;G=BN(e&255)|0;if(((BN(g&255)|0)^G)&255|0)break e;h=h+1|0;f=f+1|0;e=a[h>>0]|0;if(!(e<<24>>24)){e=0;break}}}while(0);G=BN(e<<24>>24)|0;if(!(((BN(a[f>>0]|0)|0)^G)&255)){m=41;break c}break}default:{}}d=d+1|0;if(d>>>0>=22){m=43;break}}if((m|0)==41){m=0;Bg[c[1204+(d<<4)+12>>2]&255](b,k)}else if((m|0)==43){m=0;yh(b,43421,0);yh(b,43423,6);yh(b,r,6);yh(b,43421,0);d=(c[u>>2]|0)+4096|0;if(a[d>>0]|0)yh(b,d,3);yh(b,43440,15)}RQ(r|0,0,760)|0}else switch(d|0){case 1073741906:{d=c[p>>2]|0;if(!d){d=c[q>>2]|0;c[p>>2]=d;if(!d)break b}else{e=c[d+8>>2]|0;if(e){c[p>>2]=e;d=e}}RQ(r|0,0,760)|0;aP(r,c[d>>2]|0)|0;c[s>>2]=WO(r)|0;break b}case 1073741905:{d=c[p>>2]|0;if(!d)break b;e=c[d+4>>2]|0;if(e){c[p>>2]=e;d=e}RQ(r|0,0,760)|0;aP(r,c[d>>2]|0)|0;c[s>>2]=WO(r)|0;break b}case 1073741903:{G=(c[s>>2]|0)+1|0;c[s>>2]=G;k=WO(r)|0;c[s>>2]=G>>>0>k>>>0?k:G;break b}case 1073741904:{d=c[s>>2]|0;if(!d)break b;c[s>>2]=d+-1;break b}case 1073741901:{c[s>>2]=WO(r)|0;break b}default:break b}while(0);d=c[w>>2]|0;if((d|0)>1215)do{h=c[x>>2]|0;QQ(h|0,h+40|0,48600)|0;h=h+48600|0;i=h+40|0;do{a[h>>0]=0;h=h+1|0}while((h|0)<(i|0));h=c[n>>2]|0;QQ(h|0,h+40|0,48600)|0;h=h+48600|0;i=h+40|0;do{a[h>>0]=0;h=h+1|0}while((h|0)<(i|0));d=(c[w>>2]|0)+-1|0;c[w>>2]=d}while((d|0)>1215);d=d+-18|0;if((c[v>>2]|0)<(d|0))c[v>>2]=d;c[o>>2]=30;break}case 771:{d=d+12|0;if((WO(d)|0)==1?(WO(r)|0)>>>0<760:0){G=a[d>>0]|0;k=(c[s>>2]|0)+(b+4148)|0;QQ(k+1|0,k|0,WO(k)|0)|0;a[(c[s>>2]|0)+(b+4148)>>0]=G;c[s>>2]=(c[s>>2]|0)+1}c[o>>2]=30;break}default:{}}d=eh()|0;if(!d)break a}}while(0);do if(a[284]|0){d=c[70]|0;e=b+24|0;if(!(a[e>>0]|0)){c[b+20>>2]=((c[b+16>>2]|0)*7|0)+d;a[e>>0]=1;break}G=((c[b+20>>2]|0)-d|0)/7|0;e=b+16|0;d=(G|0)>0?G:0;if((c[e>>2]|0)!=(G|0)){G=c[b+8>>2]|0;c[e>>2]=(d|0)>(G|0)?G:d}}else a[b+24>>0]=0;while(0);o=b+13120|0;do if(!(c[o>>2]|0)){if(a[b+4132>>0]|0){yh(b,43928,3);break}c[z>>2]=0;RQ(B+19|0,0,4077)|0;h=B;d=43442;i=h+19|0;do{a[h>>0]=a[d>>0]|0;h=h+1|0;d=d+1|0}while((h|0)<(i|0));g=b+4916|0;e=c[g>>2]|0;d=e+4096|0;aP(A,d)|0;RQ(d|0,0,4096)|0;e=Bi(e,B,z)|0;aP(d,A)|0;d=c[z>>2]|0;do if((e|0)==0|(d|0)==0){c[y>>2]=0;d=gh(y,43461,436)|0;c[z>>2]=d;e=c[y>>2]|0;if(!e)break;else{G=c[g>>2]|0;m=G+4096|0;aP(A,m)|0;RQ(m|0,0,4096)|0;Di(G,B,e,d,0)|0;aP(m,A)|0;m=84;break}}else m=84;while(0);if((m|0)==84){f=c[b+4912>>2]|0;Eg[c[f+2439808>>2]&63](f+81920|0,e,d,0);h=f+1129664|0;d=f+2308020|0;i=h+48|0;do{c[h>>2]=c[d>>2];h=h+4|0;d=d+4|0}while((h|0)<(i|0));vg[c[f+2439780>>2]&511](f);fN(e)}RQ(b+4920|0,0,4096)|0;bh();yh(b,43897,3);yh(b,43912,15);yh(b,43917,3);if(a[(c[225]|0)+40>>0]|0){if((c[79298]|0)==0?(C=Sf(13,1)|0,C|0):0)Sf(13,C|0)|0;c[79298]=(c[79298]|0)+1;d=eN(4104)|0;RQ(d|0,0,4104)|0;if(d|0){eN(0)|0;fN(d)}}yh(b,43421,0);d=(c[g>>2]|0)+4096|0;if(a[d>>0]|0)yh(b,d,3);yh(b,43440,15)}while(0);n=b+4912|0;i=c[n>>2]|0;Bg[c[i+2439672>>2]&255](i,0);i=c[b+4140>>2]|0;j=b+16|0;d=(c[j>>2]|0)*40|0;if((d|0)<48640){h=d;f=(c[b+4144>>2]|0)+d|0;g=0;d=0;while(1){e=a[i+h>>0]|0;h=h+1|0;if(e<<24>>24){G=c[n>>2]|0;lg[c[G+2439656>>2]&31](G,e,d*6|0,g*7|0,a[f>>0]|0)|0}d=d+1|0;e=(d|0)==40;if((h|0)==48640)break;else{f=f+1|0;g=(e&1)+g|0;d=e?0:d}}}f=b+4132|0;if(!(a[f>>0]|0)){m=b+12|0;d=c[m>>2]|0;if(d|0)c[m>>2]=d+-1;if((c[45]|0)!=1){l=F;return}f=(c[b+4>>2]|0)*6|0;e=((c[b+8>>2]|0)-(c[j>>2]|0)|0)*7|0;g=b+4148|0;G=WO(g)|0;j=b+4148+G|0;k=b+4908|0;d=(c[k>>2]|0)==0;if(G){i=0;do{h=a[g>>0]|0;g=g+1|0;if(d){if((c[m>>2]|0)==0?(((c[o>>2]|0)>>>0)%60|0)>>>0>=30:0)d=15;else{d=c[n>>2]|0;Gg[c[d+2439688>>2]&7](d,f+-1|0,e+-1|0,7,7,6);d=0}G=c[n>>2]|0;lg[c[G+2439656>>2]&31](G,h,f,e,d)|0}else{G=c[n>>2]|0;lg[c[G+2439656>>2]&31](G,h,f,e,15)|0}i=i+1|0;f=f+6|0;d=(f|0)==240;e=d?e+7|0:e;f=d?0:f;d=(c[k>>2]|0)==(i|0)}while((g|0)!=(j|0))}if(d){if((c[m>>2]|0)==0?(((c[o>>2]|0)>>>0)%60|0)>>>0>=30:0)d=15;else{d=c[n>>2]|0;Gg[c[d+2439688>>2]&7](d,f+-1|0,e+-1|0,7,7,6);d=0}G=c[n>>2]|0;lg[c[G+2439656>>2]&31](G,32,f,e,d)|0}}else{e=b+13127|0;d=(a[e>>0]|0)!=0;if((c[o>>2]|0)>>>0>=(d?1:60)>>>0){if(!d)a[b+13125>>0]=1;PQ((c[n>>2]|0)+81920|0,c[b+4136>>2]|0,1178356)|0;d=c[45]|0;switch(d|0){case 2:break;case 10:case 9:case 1:case 0:{m=107;break}case 11:{c[46]=3;m=107;break}default:{c[46]=d;m=107}}if(((((m|0)==107?(ki(c[223]|0,c[222]|0,c[3]|0),c[45]=2,D=c[80021]|0,D|0):0)?(E=c[D+224>>2]|0,E|0):0)?gg[E&511](D)|0:0)?(c[45]|2|0)==3:0)aN();a[f>>0]=0;a[e>>0]=0;bh();d=c[n>>2]|0;vg[c[d+2439780>>2]&511](d);yh(b,43421,0);yh(b,43421,0);d=(c[b+4916>>2]|0)+4096|0;if(a[d>>0]|0)yh(b,d,3);yh(b,43440,15);a[b+13124>>0]=1;l=F;return}}c[o>>2]=(c[o>>2]|0)+1;d=b+13126|0;if(!(a[d>>0]|0)){l=F;return}a[d>>0]=0;$g();l=F;return}function xh(a){a=a|0;return zh(a,0)|0}function yh(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;n=p;c[n>>2]=d;mQ(0,n);n=WO(d)|0;i=d+n|0;if(!n){l=p;return}j=b+8|0;k=b+4140|0;m=b+4144|0;n=b+16|0;h=b+4|0;do{g=a[d>>0]|0;d=d+1|0;b=c[j>>2]|0;if((b|0)>1215)do{b=c[k>>2]|0;QQ(b|0,b+40|0,48600)|0;b=b+48600|0;f=b+40|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(f|0));b=c[m>>2]|0;QQ(b|0,b+40|0,48600)|0;b=b+48600|0;f=b+40|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(f|0));b=(c[j>>2]|0)+-1|0;c[j>>2]=b}while((b|0)>1215);f=b+-18|0;if((c[n>>2]|0)<(f|0))c[n>>2]=f;if(g<<24>>24!=10){f=(c[h>>2]|0)+(b*40|0)|0;a[(c[k>>2]|0)+f>>0]=g;a[(c[m>>2]|0)+f>>0]=e;g=c[h>>2]|0;c[h>>2]=g+1;if((g|0)>38){c[h>>2]=0;b=c[j>>2]|0;o=10}}else{c[h>>2]=0;o=10}if((o|0)==10){o=0;c[j>>2]=b+1}}while((d|0)!=(i|0));l=p;return}function zh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=b+4920|0;while(1){if(d|0?a[d>>0]|0:0)break;if(!(WO(f)|0)){d=2;h=19;break}else d=f}if((h|0)==19)return d|0;e=c[b+4912>>2]|0;g=eN(3535068)|0;if(!g)d=0;else{if(!(JN(d,87947)|0)){h=c[b>>2]|0;vg[c[h+48>>2]&511](h);ah();h=0;return h|0}aP(324664,d)|0;d=WO(324664)|0;if(d>>>0>4){d=324664+d|0;if(((MP(324664,43053)|0)+4|0)!=(d|0))h=9}else{d=324664+d|0;h=9}if((h|0)==9){a[d>>0]=a[43053]|0;a[d+1>>0]=a[43054]|0;a[d+2>>0]=a[43055]|0;a[d+3>>0]=a[43056]|0;a[d+4>>0]=a[43057]|0}d=hg[c[e+2439812>>2]&63](e+81920|0,g)|0;if((d|0)!=0?Di(c[b+4916>>2]|0,324664,g,d,1)|0:0){if((f|0)!=324664)aP(f,324664)|0;ah();d=1}else d=0;fN(g)}h=d&1^1;return h|0}function Ah(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;if(LN(a,d,WO(d)|0)|0){e=1;return e|0}aP(d,a)|0;e=0;return e|0}function Bh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+64|0;j=k;yh(b,83459,3);i=0;e=0;do{d=WO(c[1204+(e<<4)>>2]|0)|0;switch(e|0){case 2:case 8:{d=d+1+(WO(c[1204+(e<<4)+4>>2]|0)|0)|0;break}default:{}}i=d>>>0>i>>>0?d:i;e=e+1|0}while((e|0)!=22);h=0;do{g=c[1204+(h<<4)>>2]|0;aP(j,g)|0;d=a[j>>0]|0;if(d<<24>>24){e=j;do{a[e>>0]=BN(d<<24>>24)|0;e=e+1|0;d=a[e>>0]|0}while(d<<24>>24!=0)}yh(b,j,15);f=c[1204+(h<<4)+4>>2]|0;switch(h|0){case 2:case 8:{aP(j,f)|0;d=a[j>>0]|0;if(d<<24>>24){e=j;do{a[e>>0]=BN(d<<24>>24)|0;e=e+1|0;d=a[e>>0]|0}while(d<<24>>24!=0)}yh(b,308626,3);yh(b,j,15);break}default:{}}e=i-(WO(g)|0)|0;switch(h|0){case 2:case 8:{d=WO(f)|0;break}default:d=-1}d=e-d|0;if(d|0)do{d=d+-1|0;yh(b,269289,3)}while((d|0)!=0);yh(b,c[1204+(h<<4)+8>>2]|0,3);yh(b,43421,0);h=h+1|0}while((h|0)!=22);yh(b,83482,3);yh(b,83490,15);yh(b,83494,3);yh(b,43421,0);d=(c[b+4916>>2]|0)+4096|0;if(!(a[d>>0]|0)){yh(b,43440,15);l=k;return}yh(b,d,3);yh(b,43440,15);l=k;return}function Ch(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+80|0;h=i+16|0;g=i;f=i+32|0;yh(b,43421,0);ji(b,83033);d=0;e=0;do{k=c[1760+(d<<3)+4>>2]|0;d=d+1|0;j=e;e=c[1760+(d<<3)>>2]|0;c[h>>2]=j;c[h+4>>2]=k;c[h+8>>2]=e-j;MN(f,83224,h)|0;ji(b,f)}while((d|0)!=20);c[g>>2]=81920;c[g+4>>2]=287391;c[g+8>>2]=0;MN(f,83224,g)|0;ji(b,f);ji(b,83249);yh(b,43421,0);yh(b,43421,0);d=(c[b+4916>>2]|0)+4096|0;if(!(a[d>>0]|0)){yh(b,43440,15);l=i;return}yh(b,d,3);yh(b,43440,15);l=i;return}function Dh(b,d){b=b|0;d=d|0;Yg();yh(b,43421,0);d=(c[b+4916>>2]|0)+4096|0;if(!(a[d>>0]|0)){yh(b,43440,15);return}yh(b,d,3);yh(b,43440,15);return}function Eh(a,b){a=a|0;b=b|0;var d=0;if(!(ch()|0)){ii(a,b);return}d=eN(12)|0;c[d>>2]=a;if(!b)a=0;else a=nP(b)|0;c[d+4>>2]=a;c[d+8>>2]=127;Zg(1740,5,d);return}function Fh(a,b){a=a|0;b=b|0;var d=0;if(!(ch()|0)){th(a,b);return}d=eN(12)|0;c[d>>2]=a;if(!b)a=0;else a=nP(b)|0;c[d+4>>2]=a;c[d+8>>2]=122;Zg(1556,5,d);return}function Gh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+80|0;h=i;if(d|0?a[d>>0]|0:0){f=c[b+4916>>2]|0;aP(324664,d)|0;e=WO(324664)|0;if(e>>>0>4){e=324664+e|0;if(((MP(324664,43053)|0)+4|0)!=(e|0))g=6}else{e=324664+e|0;g=6}if((g|0)==6){a[e>>0]=a[43053]|0;a[e+1>>0]=a[43054]|0;a[e+2>>0]=a[43055]|0;a[e+3>>0]=a[43056]|0;a[e+4>>0]=a[43057]|0}aP(328793,f)|0;e=f+4096|0;if(WO(e)|0){uQ(328793,e)|0;g=328793+(WO(328793)|0)|0;a[g>>0]=47;a[g+1>>0]=0}uQ(328793,324664)|0;if(!(mP(328793,h)|0)){h=eN(12)|0;c[h>>2]=b;c[h+4>>2]=nP(d)|0;c[h+8>>2]=128;Zg(1720,5,h);l=i;return}}hi(b,d);l=i;return}function Hh(b,d){b=b|0;d=d|0;yh(b,43421,0);d=(c[b+4916>>2]|0)+4096|0;if(a[d>>0]|0)yh(b,d,3);yh(b,43440,15);d=c[b+4912>>2]|0;vg[c[d+2439780>>2]&511](d);d=c[45]|0;switch(d|0){case 10:case 9:case 1:case 0:break;case 11:{c[46]=3;break}case 2:return;default:c[46]=d}ki(c[223]|0,c[222]|0,c[3]|0);c[45]=2;d=c[80021]|0;if(!d)return;b=c[d+224>>2]|0;if(!b)return;if(!(gg[b&511](d)|0))return;if((c[45]|2|0)!=3)return;aN();return}function Ih(b,d){b=b|0;d=d|0;yh(b,43421,0);d=(c[b+4916>>2]|0)+4096|0;if(a[d>>0]|0)yh(b,d,3);yh(b,43440,15);b=c[b+4912>>2]|0;vg[c[b+2439788>>2]&511](b);c[45]=2;return}function Jh(b,d){b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=0;c[f+4>>2]=b;yh(b,43421,0);d=b+4916|0;xi(c[d>>2]|0,2,f);if(!(c[f>>2]|0)){yh(b,82841,3);yh(b,82848,15);yh(b,82852,3);yh(b,82857,15);yh(b,82862,3)}yh(b,43421,0);yh(b,43421,0);d=(c[d>>2]|0)+4096|0;if(!(a[d>>0]|0)){yh(b,43440,15);l=e;return}yh(b,d,3);yh(b,43440,15);l=e;return}function Kh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;do if((d|0)!=0?(a[d>>0]|0)!=0:0){if(!(JN(d,308626)|0)){e=b+4916|0;RQ((c[e>>2]|0)+4096|0,0,4096)|0;break}h=(JN(d,287388)|0)==0;e=b+4916|0;f=c[e>>2]|0;if(h){g=f+4096|0;if(!(JN(g,84322)|0)){RQ(g|0,0,4096)|0;break}d=WO(g)|0;f=f+4096+d|0;a:do if((d|0)>0)do{if((a[f>>0]|0)==47)break a;f=f+-1|0}while(f>>>0>g>>>0);while(0);a[f>>0]=0;break}else{if(!(zi(f,d)|0)){yh(b,82822,3);break}f=c[e>>2]|0;if(!(zi(f,d)|0))break;g=f+4096|0;h=WO(g)|0;if(h|0){h=f+4096+h|0;a[h>>0]=47;a[h+1>>0]=0}uQ(g,d)|0;break}}else i=18;while(0);if((i|0)==18){yh(b,82804,3);e=b+4916|0}yh(b,43421,0);e=(c[e>>2]|0)+4096|0;if(!(a[e>>0]|0)){yh(b,43440,15);return}yh(b,e,3);yh(b,43440,15);return}function Lh(b,d){b=b|0;d=d|0;var e=0;if((d|0)!=0?(a[d>>0]|0)!=0:0){e=b+4916|0;Gi(c[e>>2]|0,d);d=e}else{yh(b,82804,3);d=b+4916|0}yh(b,43421,0);d=(c[d>>2]|0)+4096|0;if(!(a[d>>0]|0)){yh(b,43440,15);return}yh(b,d,3);yh(b,43440,15);return}function Mh(a,b){a=a|0;b=b|0;var d=0;d=c[a+4916>>2]|0;b=eN(12)|0;c[b>>2]=d;c[b+4>>2]=5;c[b+8>>2]=a;Gb(5,1,b|0)|0;return}function Nh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+80|0;i=m+4|0;j=m;if(!d){yh(b,82669,3);yh(b,43421,0);e=(c[b+4916>>2]|0)+4096|0;if(a[e>>0]|0)yh(b,e,3);yh(b,43440,15);l=m;return}e=b+4916|0;g=c[e>>2]|0;c[j>>2]=0;k=Bi(g,d,j)|0;if(!k){yh(b,82691,3);yh(b,43421,0);e=(c[e>>2]|0)+4096|0;if(a[e>>0]|0)yh(b,e,3);yh(b,43440,15)}else{h=eN(12)|0;c[h>>2]=129;f=h+4|0;c[f>>2]=b;b=h+8|0;c[b>>2]=k;aP(328793,g)|0;e=g+4096|0;if(WO(e)|0){uQ(328793,e)|0;g=328793+(WO(328793)|0)|0;a[g>>0]=47;a[g+1>>0]=0}uQ(328793,d)|0;mP(328793,i)|0;Hb(4,d|0,k|0,c[j>>2]|0)|0;Bg[c[h>>2]&255](1,c[f>>2]|0);fN(c[b>>2]|0);fN(h)}l=m;return}function Oh(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+16|0;p=t+12|0;j=t+8|0;k=t;if((e|0?JN(e,82267)|0:0)?JN(e,82274)|0:0){if(JN(e,82055)|0){if(!(JN(e,262976)|0)){e=eN(32640)|0;if(!e){l=t;return}PQ(e|0,(c[3]|0)+81920+((a[756]|0)*130968|0)+16384|0,32640)|0;s=eN(12)|0;c[s>>2]=131;r=s+4|0;c[r>>2]=b;b=s+8|0;c[b>>2]=e;Hb(4,82403,e|0,32640)|0;Bg[c[s>>2]&255](1,c[r>>2]|0);fN(c[b>>2]|0);fN(s);l=t;return}if(JN(e,82063)|0){yh(b,44507,6);yh(b,e,6);yh(b,43421,0);e=(c[b+4916>>2]|0)+4096|0;if(a[e>>0]|0)yh(b,e,3);yh(b,43440,15);l=t;return}e=c[b+4912>>2]|0;f=e+1129712|0;g=c[f>>2]|0;if(g|0){p=eN(g)|0;PQ(p|0,e+1129716|0,c[f>>2]|0)|0;q=c[f>>2]|0;s=eN(12)|0;c[s>>2]=132;r=s+4|0;c[r>>2]=b;b=s+8|0;c[b>>2]=p;Hb(4,82413,p|0,q|0)|0;Bg[c[s>>2]&255](1,c[r>>2]|0);fN(c[b>>2]|0);fN(s);l=t;return}yh(b,82423,3);yh(b,43421,0);e=(c[b+4916>>2]|0)+4096|0;if(a[e>>0]|0)yh(b,e,3);yh(b,43440,15);l=t;return}q=eN(98304)|0;if(!q){l=t;return}r=eN(32768)|0;if(!r){l=t;return}else e=0;do{g=e<<7;h=((e|0)/8|0)<<4;i=((e|0)%8|0)<<3;f=0;do{n=i+((f|0)%8|0)|0;o=d[(n>>>1)+((c[3]|0)+81920+((a[755]|0)*130968|0)+(h+((f|0)/8|0)<<5))>>0]|0;a[r+(f+g)>>0]=n&1|0?o>>>4:o&15;f=f+1|0}while((f|0)!=128);e=e+1|0}while((e|0)!=256);e=c[b+4912>>2]|0;o=eN(48)|0;if(o){f=0;e=e+1129664|0;while(1){a[o+(f*3|0)>>0]=a[e>>0]|0;a[o+(f*3|0)+1>>0]=a[e+1>>0]|0;a[o+(f*3|0)+2>>0]=a[e+2>>0]|0;f=f+1|0;if((f|0)==16)break;else e=e+3|0}c[j>>2]=0;c[k>>2]=q;n=k+4|0;c[n>>2]=0;m=lC(k,j)|0;c[p>>2]=0;if(m|0){f=eN(16)|0;do if(!f){k=0;h=0}else{e=eN(48)|0;if(!e){fN(f);k=0;h=0;break}if(c[e+-4>>2]&3|0){i=e;j=i+48|0;do{a[i>>0]=0;i=i+1|0}while((i|0)<(j|0))}c[f+12>>2]=e;c[f>>2]=16;c[f+4>>2]=4;a[f+8>>0]=0;k=f;h=f}while(0);g=k+12|0;i=c[g>>2]|0;e=o;j=i+48|0;do{a[i>>0]=a[e>>0]|0;i=i+1|0;e=e+1|0}while((i|0)<(j|0));a:do if(mC(m,128,256,4,k)|0?nC(m,128,256,0)|0:0){e=r;f=0;while(1){if(!(qC(m,e,128)|0))break;f=f+1|0;if((f|0)>=256)break a;else e=e+128|0}c[p>>2]=c[m+64>>2]}while(0);rC(m,p);if(k|0){fN(c[g>>2]|0);fN(h)}}e=c[n>>2]|0;fN(o);if(e){p=eN(12)|0;c[p>>2]=130;o=p+4|0;c[o>>2]=b;b=p+8|0;c[b>>2]=q;Hb(4,82367,q|0,e|0)|0;Bg[c[p>>2]&255](1,c[o>>2]|0);fN(c[b>>2]|0);fN(p)}else s=32}else s=32;if((s|0)==32){yh(b,82379,6);yh(b,43421,0);e=(c[b+4916>>2]|0)+4096|0;if(a[e>>0]|0)yh(b,e,3);yh(b,43440,15);fN(q)}fN(r);l=t;return}yh(b,82279,3);yh(b,82334,3);yh(b,43421,0);e=(c[b+4916>>2]|0)+4096|0;if(a[e>>0]|0)yh(b,e,3);yh(b,43440,15);l=t;return}function Ph(b,d){b=b|0;d=d|0;if(!d){yh(b,82022,3);yh(b,43421,0);d=(c[b+4916>>2]|0)+4096|0;if(a[d>>0]|0)yh(b,d,3);yh(b,43440,15);return}if(!(JN(d,82055)|0)){d=eN(8)|0;c[d>>2]=2;c[d+4>>2]=b;Gb(5,2,d|0)|0;return}if(!(JN(d,262976)|0)){d=eN(8)|0;c[d>>2]=3;c[d+4>>2]=b;Gb(5,2,d|0)|0;return}if(!(JN(d,82063)|0)){d=eN(8)|0;c[d>>2]=4;c[d+4>>2]=b;Gb(5,2,d|0)|0;return}yh(b,44507,6);yh(b,d,6);yh(b,43421,0);d=(c[b+4916>>2]|0)+4096|0;if(a[d>>0]|0)yh(b,d,3);yh(b,43440,15);return}function Qh(a,b){a=a|0;b=b|0;var d=0;d=eN(12)|0;c[d>>2]=a;if(!b)a=0;else a=nP(b)|0;c[d+4>>2]=a;c[d+8>>2]=133;Zg(1704,4,d);return}function Rh(b,d){b=b|0;d=d|0;RQ(c[b+4140>>2]|0,0,48640)|0;RQ(c[b+4144>>2]|0,0,48640)|0;c[b+16>>2]=0;c[b+8>>2]=0;c[b+4>>2]=0;d=(c[b+4916>>2]|0)+4096|0;if(!(a[d>>0]|0)){yh(b,43440,15);return}yh(b,d,3);yh(b,43440,15);return}function Sh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;h=l;l=l+16|0;e=h;f=b+4916|0;g=c[f>>2]|0;yh(b,45452,3);d=0;do{i=c[1596+(d*12|0)>>2]|0;j=c[1596+(d*12|0)+4>>2]|0;k=c[1596+(d*12|0)+8>>2]|0;c[e>>2]=0;k=gh(e,j,k)|0;j=c[e>>2]|0;Di(g,i,j,k,1)|0;fN(j);yh(b,i,15);yh(b,43421,15);d=d+1|0}while((d|0)!=9);yh(b,43421,0);d=(c[f>>2]|0)+4096|0;if(!(a[d>>0]|0)){yh(b,43440,15);l=h;return}yh(b,d,3);yh(b,43440,15);l=h;return}function Th(b,d){b=b|0;d=d|0;if(!d)if(ch()|0){d=eN(12)|0;c[d>>2]=b;c[d+4>>2]=nP(87947)|0;c[d+8>>2]=122;Zg(1556,5,d);return}else{th(b,87947);return}do if(JN(d,263096)|0){if(JN(d,298664)|0?JN(d,44406)|0:0){if(JN(d,44418)|0?JN(d,44431)|0:0){if(JN(d,44474)|0){yh(b,44507,6);yh(b,d,6);break}if(ch()|0){d=eN(12)|0;c[d>>2]=b;c[d+4>>2]=nP(44485)|0;c[d+8>>2]=134;Zg(1576,5,d);break}else{Yh(b,44485);break}}if(ch()|0){d=eN(12)|0;c[d>>2]=b;c[d+4>>2]=nP(44450)|0;c[d+8>>2]=134;Zg(1576,5,d);break}else{Yh(b,44450);break}}if(ch()|0){d=eN(12)|0;c[d>>2]=b;c[d+4>>2]=nP(43442)|0;c[d+8>>2]=134;Zg(1576,5,d);break}else{Yh(b,43442);break}}else{d=c[b>>2]|0;vg[c[d+52>>2]&511](d);yh(b,44382,3)}while(0);yh(b,43421,0);d=(c[b+4916>>2]|0)+4096|0;if(a[d>>0]|0)yh(b,d,3);yh(b,43440,15);return}function Uh(b,d){b=b|0;d=d|0;yh(b,43421,3);yh(b,84736,3);yh(b,43421,0);d=(c[b+4916>>2]|0)+4096|0;if(!(a[d>>0]|0)){yh(b,43440,15);return}yh(b,d,3);yh(b,43440,15);return}function Vh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;d=c[45]|0;a:do switch(d|0){case 3:break;case 2:{g=c[3]|0;vg[c[g+2439784>>2]&511](g);g=c[3]|0;vg[c[g+2439780>>2]&511](g);g=6;break}default:{g=c[3]|0;vg[c[g+2439780>>2]&511](g);switch(d|0){case 10:case 9:case 1:case 0:{g=6;break a}case 11:{c[46]=3;g=6;break a}default:{c[46]=d;g=6;break a}}}}while(0);if(((((g|0)==6?(c[45]=3,e=c[80021]|0,e|0):0)?(f=c[e+224>>2]|0,f|0):0)?gg[f&511](e)|0:0)?(c[45]|2|0)==3:0)aN();yh(b,43421,0);d=(c[b+4916>>2]|0)+4096|0;if(!(a[d>>0]|0)){yh(b,43440,15);return}yh(b,d,3);yh(b,43440,15);return}function Wh(b,d){b=b|0;d=d|0;$g();yh(b,43421,0);d=(c[b+4916>>2]|0)+4096|0;if(!(a[d>>0]|0)){yh(b,43440,15);return}yh(b,d,3);yh(b,43440,15);return}function Xh(b,d){b=b|0;d=d|0;var e=0;e=c[d>>2]|0;if(b){b=d+4|0;Bg[c[d+8>>2]&255](e,c[b>>2]|0)}else{yh(e,43421,0);b=(c[e+4916>>2]|0)+4096|0;if(a[b>>0]|0)yh(e,b,3);yh(e,43440,15);b=d+4|0}b=c[b>>2]|0;if(!b){fN(d);return}fN(b);fN(d);return}function Yh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+8208|0;m=o+4104|0;h=o+8|0;j=o+4|0;k=o;c[k>>2]=0;a[b+13125>>0]=0;do if(JN(d,43442)|0){if(!(JN(d,44450)|0)){RQ(h+24|0,0,4072)|0;e=h;f=44450;g=e+24|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));g=1;n=7;break}if(!(JN(d,44485)|0)){RQ(h+22|0,0,4074)|0;e=h;f=44485;g=e+22|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));g=2;n=7}else{g=0;f=0}}else{RQ(h+19|0,0,4077)|0;e=h;f=43442;g=e+19|0;do{a[e>>0]=a[f>>0]|0;e=e+1|0;f=f+1|0}while((e|0)<(g|0));g=0;n=7}while(0);if((n|0)==7){i=b+4916|0;e=c[i>>2]|0;f=e+4096|0;aP(m,f)|0;RQ(f|0,0,4096)|0;e=Bi(e,h,k)|0;aP(f,m)|0;f=c[k>>2]|0;if((e|0)==0|(f|0)==0){switch(g&3){case 0:{e=436;f=43461;break}case 1:{e=417;f=45018;break}case 2:{e=432;f=44586;break}default:{e=0;f=0}}c[j>>2]=0;f=gh(j,f,e)|0;c[k>>2]=f;e=c[j>>2]|0;if(!e)e=0;else{j=c[i>>2]|0;k=j+4096|0;aP(m,k)|0;RQ(k|0,0,4096)|0;Di(j,h,e,f,0)|0;aP(k,m)|0}}g=e}aP(324664,d)|0;e=WO(324664)|0;if(e>>>0>4){e=324664+e|0;if(((MP(324664,43053)|0)+4|0)!=(e|0))n=19}else{e=324664+e|0;n=19}if((n|0)==19){a[e>>0]=a[43053]|0;a[e+1>>0]=a[43054]|0;a[e+2>>0]=a[43055]|0;a[e+3>>0]=a[43056]|0;a[e+4>>0]=a[43057]|0}e=b+4920|0;if((e|0)==324664){n=b+4912|0;n=c[n>>2]|0;d=n+81920|0;m=n+2439808|0;m=c[m>>2]|0;Eg[m&63](d,g,f,1);d=n+2439780|0;d=c[d>>2]|0;vg[d&511](n);bh();yh(b,45435,3);yh(b,e,15);yh(b,45442,3);fN(g);l=o;return}aP(e,324664)|0;n=b+4912|0;n=c[n>>2]|0;d=n+81920|0;m=n+2439808|0;m=c[m>>2]|0;Eg[m&63](d,g,f,1);d=n+2439780|0;d=c[d>>2]|0;vg[d&511](n);bh();yh(b,45435,3);yh(b,e,15);yh(b,45442,3);fN(g);l=o;return}function Zh(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;do if((d|0)!=0?(a[d>>0]|0)!=0:0){e=b+4916|0;i=zi(c[e>>2]|0,d)|0;g=c[e>>2]|0;aP(328793,g)|0;g=g+4096|0;f=(WO(g)|0)==0;if(i){if(!f){uQ(328793,g)|0;i=328793+(WO(328793)|0)|0;a[i>>0]=47;a[i+1>>0]=0}uQ(328793,d)|0;i=(wQ()|0)!=0;Eb(6)|0;yh(b,i?81917:81934,3);break}else{if(!f){uQ(328793,g)|0;i=328793+(WO(328793)|0)|0;a[i>>0]=47;a[i+1>>0]=0}uQ(328793,d)|0;i=(nQ()|0)!=0;Eb(6)|0;yh(b,i?81960:81978,3);break}}else h=10;while(0);if((h|0)==10){yh(b,82005,3);e=b+4916|0}yh(b,43421,0);e=(c[e>>2]|0)+4096|0;if(!(a[e>>0]|0)){yh(b,43440,15);return}yh(b,e,3);yh(b,43440,15);return}function _h(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;do if(!b)yh(g,82214,3);else{f=MP(b,82262)|0;if(f|0?(JN(f,82262)|0)==0:0){x=ti(e)|0;if(!x){yh(g,82153,6);break}t=x+8|0;f=c[t>>2]|0;s=(f|0)<128?f:128;r=c[x+12>>2]|0;u=(r|0)<256?r:256;if((r|0)>0?(v=x+4|0,w=g+4912|0,(f|0)>0):0){p=0;do{q=((p|0)/8|0)<<4;r=((p|0)%8|0)<<3;o=0;do{k=a[(c[x>>2]|0)+((O(c[t>>2]|0,p)|0)+o)>>0]|0;n=c[v>>2]|0;k=k&255;h=c[w>>2]|0;i=d[n+(k*3|0)>>0]|0;j=d[n+(k*3|0)+1>>0]|0;k=d[n+(k*3|0)+2>>0]|0;n=0;f=0;e=-1;while(1){m=i-(d[h+1129664+(f*3|0)>>0]|0)|0;y=j-(d[h+1129664+(f*3|0)+1>>0]|0)|0;l=k-(d[h+1129664+(f*3|0)+2>>0]|0)|0;l=(O(y,y)|0)+(O(m,m)|0)+(O(l,l)|0)|0;m=l>>>0<e>>>0;n=m?f:n;f=f+1|0;if((f|0)==16)break;else e=m?l:e}y=r+((o|0)%8|0)|0;h=(y>>>1)+((c[3]|0)+81920+((a[755]|0)*130968|0)+(q+((o|0)/8|0)<<5))|0;f=d[h>>0]|0;if(!(y&1)){e=f&240;a[h>>0]=e;f=n&15}else{e=f&15;a[h>>0]=e;f=n<<4&4080}a[h>>0]=f|e;o=o+1|0}while((o|0)<(s|0));p=p+1|0}while((p|0)<(u|0));f=x}else f=x;f=c[f>>2]|0;if(f|0)fN(f);f=c[x+4>>2]|0;if(f|0)fN(f);fN(x);yh(g,43421,0);yh(g,b,3);yh(g,82074,3);break}yh(g,82178,3)}while(0);yh(g,43421,0);f=(c[g+4916>>2]|0)+4096|0;if(!(a[f>>0]|0)){yh(g,43440,15);return}yh(g,f,3);yh(g,43440,15);return}function $h(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;if((b|0)!=0&(d|0)!=0&e>>>0<32641){g=c[3]|0;b=a[756]|0;e=(e|0)<32640?e:32640;RQ(g+81920+(b*130968|0)+16384+e|0,0,(e>>>0>32639?0:32640-e|0)|0)|0;PQ(g+81920+(b*130968|0)+16384|0,d|0,e|0)|0;yh(f,43421,0);yh(f,82236,3)}else yh(f,82214,3);yh(f,43421,0);b=(c[f+4916>>2]|0)+4096|0;if(!(a[b>>0]|0)){yh(f,43440,15);return}yh(f,b,3);yh(f,43440,15);return}function ai(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;do if(!b)yh(f,82214,3);else{g=MP(b,82069)|0;if(g|0?(JN(g,82069)|0)==0:0){i=ti(d)|0;if(!i){yh(f,82153,6);break}do if((c[i+8>>2]|0)==240?(c[i+12>>2]|0)==136:0)if(e>>>0<130561){g=c[f+4912>>2]|0;c[g+1129712>>2]=e;PQ(g+1129716|0,d|0,e|0)|0;yh(f,43421,0);yh(f,b,3);yh(f,82074,3);break}else{yh(f,82097,6);break}else h=10;while(0);if((h|0)==10)yh(f,82121,6);g=c[i>>2]|0;if(g|0)fN(g);g=c[i+4>>2]|0;if(g|0)fN(g);fN(i);break}yh(f,82178,3)}while(0);yh(f,43421,0);g=(c[f+4916>>2]|0)+4096|0;if(!(a[g>>0]|0)){yh(f,43440,15);return}yh(f,g,3);yh(f,43440,15);return}function bi(b,d){b=b|0;d=d|0;switch(b|0){case 0:{yh(d,82610,3);break}case 1:{yh(d,82635,3);break}default:{}}yh(d,43421,0);b=(c[d+4916>>2]|0)+4096|0;if(!(a[b>>0]|0)){yh(d,43440,15);return}yh(d,b,3);yh(d,43440,15);return}function ci(b,d){b=b|0;d=d|0;switch(b|0){case 0:{yh(d,82559,3);break}case 1:{yh(d,82580,3);break}default:{}}yh(d,43421,0);b=(c[d+4916>>2]|0)+4096|0;if(!(a[b>>0]|0)){yh(d,43440,15);return}yh(d,b,3);yh(d,43440,15);return}function di(b,d){b=b|0;d=d|0;switch(b|0){case 0:{yh(d,82492,3);break}case 1:{yh(d,82521,3);break}default:{}}yh(d,43421,0);b=(c[d+4916>>2]|0)+4096|0;if(!(a[b>>0]|0)){yh(d,43440,15);return}yh(d,b,3);yh(d,43440,15);return}function ei(b,d){b=b|0;d=d|0;switch(b|0){case 0:{yh(d,82691,3);break}case 1:{yh(d,82715,3);break}default:{}}yh(d,43421,0);b=(c[d+4916>>2]|0)+4096|0;if(!(a[b>>0]|0)){yh(d,43440,15);return}yh(d,b,3);yh(d,43440,15);return}function fi(b,d,e){b=b|0;d=d|0;e=e|0;yh(e,43421,0);switch(d|0){case 2:{yh(e,82735,3);yh(e,b,15);yh(e,82741,3);break}case 1:{yh(e,82735,3);yh(e,b,15);yh(e,82760,3);break}default:yh(e,82786,3)}yh(e,43421,0);b=(c[e+4916>>2]|0)+4096|0;if(!(a[b>>0]|0)){yh(e,43440,15);return}yh(e,b,3);yh(e,43440,15);return}function gi(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;b=c[e+4>>2]|0;yh(b,43421,0);if(f){yh(b,308610,3);yh(b,a,3);yh(b,308612,3);return 1}else{yh(b,a,15);c[e>>2]=(c[e>>2]|0)+1;return 1}return 0}function hi(b,d){b=b|0;d=d|0;switch(zh(b,d)|0){case 0:{yh(b,45435,3);yh(b,b+4920|0,15);yh(b,82937,3);break}case 2:{yh(b,82946,3);break}default:yh(b,82969,3)}yh(b,43421,0);d=(c[b+4916>>2]|0)+4096|0;if(!(a[d>>0]|0)){yh(b,43440,15);return}yh(b,d,3);yh(b,43440,15);return}function ii(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+8208|0;k=o+4104|0;m=o+8|0;g=o+4|0;j=o;do if((d|0)!=0?(a[d>>0]|0)!=0:0){if(!(JN(d,83008)|0)){c[j>>2]=0;RQ(m+19|0,0,4077)|0;e=m;h=43442;i=e+19|0;do{a[e>>0]=a[h>>0]|0;e=e+1|0;h=h+1|0}while((e|0)<(i|0));d=b+4916|0;f=c[d>>2]|0;e=f+4096|0;aP(k,e)|0;RQ(e|0,0,4096)|0;f=Bi(f,m,j)|0;aP(e,k)|0;e=c[j>>2]|0;do if((f|0)==0|(e|0)==0){c[g>>2]=0;e=gh(g,43461,436)|0;c[j>>2]=e;f=c[g>>2]|0;if(!f)break;else{j=c[d>>2]|0;n=j+4096|0;aP(k,n)|0;RQ(n|0,0,4096)|0;Di(j,m,f,e,0)|0;aP(n,k)|0;n=9;break}}else n=9;while(0);if((n|0)==9){g=c[b+4912>>2]|0;Eg[c[g+2439808>>2]&63](g+81920|0,f,e,0);e=g+1129664|0;h=g+2308020|0;i=e+48|0;do{c[e>>2]=c[h>>2];e=e+4|0;h=h+4|0}while((e|0)<(i|0));vg[c[g+2439780>>2]&511](g);fN(f)}RQ(b+4920|0,0,4096)|0;bh();break}if(JN(d,89669)|0?JN(d,89674)|0:0){if(JN(d,89685)|0?JN(d,89688)|0:0){yh(b,44507,6);yh(b,d,6);yh(b,43421,0);d=(c[b+4916>>2]|0)+4096|0;if(a[d>>0]|0)yh(b,d,3);yh(b,43440,15);l=o;return}c[j>>2]=0;RQ(m+22|0,0,4074)|0;e=m;h=44485;i=e+22|0;do{a[e>>0]=a[h>>0]|0;e=e+1|0;h=h+1|0}while((e|0)<(i|0));d=b+4916|0;f=c[d>>2]|0;e=f+4096|0;aP(k,e)|0;RQ(e|0,0,4096)|0;f=Bi(f,m,j)|0;aP(e,k)|0;e=c[j>>2]|0;do if((f|0)==0|(e|0)==0){c[g>>2]=0;e=gh(g,44586,432)|0;c[j>>2]=e;f=c[g>>2]|0;if(!f)break;else{j=c[d>>2]|0;n=j+4096|0;aP(k,n)|0;RQ(n|0,0,4096)|0;Di(j,m,f,e,0)|0;aP(n,k)|0;n=27;break}}else n=27;while(0);if((n|0)==27){g=c[b+4912>>2]|0;Eg[c[g+2439808>>2]&63](g+81920|0,f,e,0);e=g+1129664|0;h=g+2308020|0;i=e+48|0;do{c[e>>2]=c[h>>2];e=e+4|0;h=h+4|0}while((e|0)<(i|0));vg[c[g+2439780>>2]&511](g);fN(f)}RQ(b+4920|0,0,4096)|0;bh();break}c[j>>2]=0;RQ(m+24|0,0,4072)|0;e=m;h=44450;i=e+24|0;do{a[e>>0]=a[h>>0]|0;e=e+1|0;h=h+1|0}while((e|0)<(i|0));d=b+4916|0;f=c[d>>2]|0;e=f+4096|0;aP(k,e)|0;RQ(e|0,0,4096)|0;f=Bi(f,m,j)|0;aP(e,k)|0;e=c[j>>2]|0;do if((f|0)==0|(e|0)==0){c[g>>2]=0;e=gh(g,45018,417)|0;c[j>>2]=e;f=c[g>>2]|0;if(!f)break;else{j=c[d>>2]|0;n=j+4096|0;aP(k,n)|0;RQ(n|0,0,4096)|0;Di(j,m,f,e,0)|0;aP(n,k)|0;n=18;break}}else n=18;while(0);if((n|0)==18){g=c[b+4912>>2]|0;Eg[c[g+2439808>>2]&63](g+81920|0,f,e,0);e=g+1129664|0;h=g+2308020|0;i=e+48|0;do{c[e>>2]=c[h>>2];e=e+4|0;h=h+4|0}while((e|0)<(i|0));vg[c[g+2439780>>2]&511](g);fN(f)}RQ(b+4920|0,0,4096)|0;bh()}else n=32;while(0);if((n|0)==32){c[j>>2]=0;RQ(m+19|0,0,4077)|0;e=m;h=43442;i=e+19|0;do{a[e>>0]=a[h>>0]|0;e=e+1|0;h=h+1|0}while((e|0)<(i|0));d=b+4916|0;f=c[d>>2]|0;e=f+4096|0;aP(k,e)|0;RQ(e|0,0,4096)|0;f=Bi(f,m,j)|0;aP(e,k)|0;e=c[j>>2]|0;do if((f|0)==0|(e|0)==0){c[g>>2]=0;e=gh(g,43461,436)|0;c[j>>2]=e;f=c[g>>2]|0;if(!f)break;else{j=c[d>>2]|0;n=j+4096|0;aP(k,n)|0;RQ(n|0,0,4096)|0;Di(j,m,f,e,0)|0;aP(n,k)|0;n=37;break}}else n=37;while(0);if((n|0)==37){g=c[b+4912>>2]|0;Eg[c[g+2439808>>2]&63](g+81920|0,f,e,0);e=g+1129664|0;h=g+2308020|0;i=e+48|0;do{c[e>>2]=c[h>>2];e=e+4|0;h=h+4|0}while((e|0)<(i|0));vg[c[g+2439780>>2]&511](g);fN(f)}RQ(b+4920|0,0,4096)|0;bh()}yh(b,83012,3);yh(b,43421,0);d=(c[d>>2]|0)+4096|0;if(a[d>>0]|0)yh(b,d,3);yh(b,43440,15);l=o;return}function ji(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;m=o;c[m>>2]=d;mQ(0,m);m=WO(d)|0;h=d+m|0;if(!m){l=o;return}i=b+8|0;j=b+4140|0;k=b+4144|0;m=b+16|0;g=b+4|0;do{f=a[d>>0]|0;d=d+1|0;b=c[i>>2]|0;if((b|0)>1215)do{b=c[j>>2]|0;QQ(b|0,b+40|0,48600)|0;b=b+48600|0;e=b+40|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(e|0));b=c[k>>2]|0;QQ(b|0,b+40|0,48600)|0;b=b+48600|0;e=b+40|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(e|0));b=(c[i>>2]|0)+-1|0;c[i>>2]=b}while((b|0)>1215);e=b+-18|0;if((c[m>>2]|0)<(e|0))c[m>>2]=e;if(f<<24>>24!=10){e=(c[g>>2]|0)+(b*40|0)|0;a[(c[j>>2]|0)+e>>0]=f;switch(f<<24>>24|0){case 45:case 124:case 43:{b=7;break}default:b=15}a[(c[k>>2]|0)+e>>0]=b;f=c[g>>2]|0;c[g>>2]=f+1;if((f|0)>38){c[g>>2]=0;b=c[i>>2]|0;n=12}}else{c[g>>2]=0;n=12}if((n|0)==12){n=0;c[i>>2]=b+1}}while((d|0)!=(h|0));l=o;return}function ki(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+4272|0;p=r;q=r+4096|0;o=r+4248|0;c[b>>2]=f;n=b+4|0;c[n>>2]=e;c[b+8>>2]=6;c[b+12>>2]=135;c[b+16>>2]=192;c[b+20>>2]=389;c[b+24>>2]=3;c[b+28>>2]=4;e=b+32|0;c[e>>2]=0;c[e+4>>2]=0;c[b+40>>2]=136;c[b+44>>2]=b;a[b+48>>0]=0;RQ(b+49|0,0,1091)|0;c[b+1140>>2]=193;RQ(f+2439832|0,0,1024)|0;e=c[b>>2]|0;f=e+2440856|0;j=(WO(f)|0)!=0;e=j?f:e+147352|0;f=WO(e)|0;c[q+8>>2]=1732584193;c[q+12>>2]=-271733879;c[q+16>>2]=-1732584194;c[q+20>>2]=271733878;c[q>>2]=0;j=q+4|0;c[j>>2]=0;a:do if((f|0)>0){k=q+24|0;i=0;h=0;while(1){g=(f|0)<512?f:512;s=i+g&536870911;c[q>>2]=s;if(s>>>0<i>>>0){h=h+1|0;c[j>>2]=h}c[j>>2]=h+(g>>>29);h=i&63;do if(h){i=64-h|0;h=q+24+h|0;if(g>>>0<i>>>0){PQ(h|0,e|0,g|0)|0;break}else{PQ(h|0,e|0,i|0)|0;ri(q,k,64)|0;h=e+i|0;g=g-i|0;m=9;break}}else{h=e;m=9}while(0);if((m|0)==9){m=0;if(g>>>0>63){h=ri(q,h,g&-64)|0;g=g&63}PQ(k|0,h|0,g|0)|0}if((f|0)<=512)break a;e=e+512|0;f=f+-512|0;i=c[q>>2]|0;h=c[j>>2]|0}}while(0);si(o,q);e=0;do{c[p>>2]=d[o+e>>0];_O(328760+(e<<1)|0,32,83632,p);e=e+1|0}while((e|0)!=16);f=b+1076|0;s=f;e=s;a[e>>0]=46;a[e+1>>0]=108;a[e+2>>0]=111;a[e+3>>0]=99;s=s+4|0;a[s>>0]=97;a[s+1>>0]=108;a[s+2>>0]=47;a[s+3>>0]=0;uQ(f,328760)|0;c[q>>2]=0;s=c[(c[n>>2]|0)+4916>>2]|0;e=s+4096|0;aP(p,e)|0;RQ(e|0,0,4096)|0;f=Bi(s,f,q)|0;aP(e,p)|0;e=c[q>>2]|0;if((e|0)>1024){c[q>>2]=1024;e=1024}if(!f){s=Vf(0)|0;bQ(s);cQ()|0;l=r;return}PQ((c[b>>2]|0)+2439832|0,f|0,e|0)|0;PQ(b+52|0,f|0,e|0)|0;fN(f);s=Vf(0)|0;bQ(s);cQ()|0;l=r;return}function li(a,b,d){a=a|0;b=b|0;d=d|0;a=c[a+4>>2]|0;Dg[c[a+13148>>2]&63](a,b,d);return}function mi(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;f=c[45]|0;a:do switch(f|0){case 1:break;case 2:{g=c[3]|0;vg[c[g+2439784>>2]&511](g);g=c[3]|0;vg[c[g+2439780>>2]&511](g);g=6;break}default:{g=c[3]|0;vg[c[g+2439780>>2]&511](g);switch(f|0){case 9:case 10:case 0:{g=6;break a}case 11:{c[46]=3;g=6;break a}default:{c[46]=f;g=6;break a}}}}while(0);if(((((g|0)==6?(c[45]=1,d=c[80021]|0,d|0):0)?(e=c[d+224>>2]|0,e|0):0)?gg[e&511](d)|0:0)?(c[45]|2|0)==3:0)aN();g=c[a+4>>2]|0;Bg[c[g+13144>>2]&255](g,b);return}function ni(b){b=b|0;a[b+48>>0]=1;return}function oi(a){a=a|0;do{}while((eh()|0)!=0);return (c[45]|0)!=2|0}function pi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+4368|0;k=t+8|0;o=t;i=t+272|0;j=t+12|0;r=t+16|0;g=c[b>>2]|0;if(KN(g+147352|0,83637,7)|0){l=t;return}h=g+147359|0;e=XO(h,41)|0;if(!e){l=t;return}f=a[h>>0]|0;if(f<<24>>24!=(a[e+-1>>0]|0)){l=t;return}switch(f<<24>>24){case 39:case 34:break;default:{l=t;return}}f=-2-h+e|0;RQ(i+f|0,0,(f>>>0>4095?0:4096-f|0)|0)|0;PQ(i|0,g+147360|0,f|0)|0;RQ(d|0,0,65536)|0;c[j>>2]=0;f=Ei(i,j)|0;if(!f){c[k>>2]=i;MN(r,83676,k)|0;e=c[45]|0;a:do switch(e|0){case 1:break;case 2:{s=c[3]|0;vg[c[s+2439784>>2]&511](s);s=c[3]|0;vg[c[s+2439780>>2]&511](s);s=25;break}default:{s=c[3]|0;vg[c[s+2439780>>2]&511](s);switch(e|0){case 9:case 10:case 0:{s=25;break a}case 11:{c[46]=3;s=25;break a}default:{c[46]=e;s=25;break a}}}}while(0);if(((((s|0)==25?(c[45]=1,m=c[80021]|0,m|0):0)?(n=c[m+224>>2]|0,n|0):0)?gg[n&511](m)|0:0)?(c[45]|2|0)==3:0)aN();s=c[b+4>>2]|0;Bg[c[s+13144>>2]&255](s,r);l=t;return}e=c[j>>2]|0;if((e|0)<=0){l=t;return}if((e|0)<=65536){PQ(d|0,f|0,e|0)|0;l=t;return}c[o>>2]=65536;MN(r,83645,o)|0;e=c[45]|0;b:do switch(e|0){case 1:break;case 2:{s=c[3]|0;vg[c[s+2439784>>2]&511](s);s=c[3]|0;vg[c[s+2439780>>2]&511](s);s=13;break}default:{s=c[3]|0;vg[c[s+2439780>>2]&511](s);switch(e|0){case 9:case 10:case 0:{s=13;break b}case 11:{c[46]=3;s=13;break b}default:{c[46]=e;s=13;break b}}}}while(0);if(((((s|0)==13?(c[45]=1,p=c[80021]|0,p|0):0)?(q=c[p+224>>2]|0,q|0):0)?gg[q&511](p)|0:0)?(c[45]|2|0)==3:0)aN();s=c[b+4>>2]|0;Bg[c[s+13144>>2]&255](s,r);l=t;return}function qi(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=l;l=l+4096|0;d=g;do{}while((eh()|0)!=0);if((c[45]|0)!=2){l=g;return}e=c[b>>2]|0;Bg[c[e+2439768>>2]&255](e,b+8|0);e=(c[b>>2]|0)+2439832|0;f=b+52|0;if(KN(e,f,1024)|0){i=c[(c[b+4>>2]|0)+4916>>2]|0;h=i+4096|0;aP(d,h)|0;RQ(h|0,0,4096)|0;Di(i,b+1076|0,e,1024,1)|0;aP(h,d)|0;PQ(f|0,(c[b>>2]|0)+2439832|0,1024)|0}if(!(a[b+48>>0]|0)){l=g;return}b=c[45]|0;a:do switch(b|0){case 2:{i=c[3]|0;vg[c[i+2439784>>2]&511](i);i=c[3]|0;vg[c[i+2439780>>2]&511](i);break}case 1:{l=g;return}default:{i=c[3]|0;vg[c[i+2439780>>2]&511](i);switch(b|0){case 9:case 10:case 0:break a;case 11:{c[46]=3;break a}default:{c[46]=b;break a}}}}while(0);c[45]=1;b=c[80021]|0;if(!b){l=g;return}d=c[b+224>>2]|0;if(!d){l=g;return}if(!(gg[d&511](b)|0)){l=g;return}if((c[45]|2|0)!=3){l=g;return}aN();l=g;return}function ri(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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;y=a+8|0;z=a+12|0;A=a+16|0;B=a+20|0;j=a+88|0;k=a+92|0;l=a+96|0;m=a+100|0;n=a+104|0;o=a+108|0;p=a+112|0;q=a+116|0;r=a+120|0;s=a+124|0;t=a+128|0;u=a+132|0;v=a+136|0;w=a+140|0;x=a+144|0;i=a+148|0;a=c[y>>2]|0;f=c[z>>2]|0;g=c[B>>2]|0;h=c[A>>2]|0;do{E=(d[b+1>>0]|0)<<8|(d[b>>0]|0)|(d[b+2>>0]|0)<<16|(d[b+3>>0]|0)<<24;c[j>>2]=E;E=a+-680876936+(f&(g^h)^g)+E|0;E=(E<<7|E>>>25)+f|0;D=(d[b+5>>0]|0)<<8|(d[b+4>>0]|0)|(d[b+6>>0]|0)<<16|(d[b+7>>0]|0)<<24;c[k>>2]=D;D=g+-389564586+D+(E&(f^h)^h)|0;D=(D<<12|D>>>20)+E|0;W=(d[b+9>>0]|0)<<8|(d[b+8>>0]|0)|(d[b+10>>0]|0)<<16|(d[b+11>>0]|0)<<24;c[l>>2]=W;W=h+606105819+W+(D&(E^f)^f)|0;W=(W<<17|W>>>15)+D|0;F=(d[b+13>>0]|0)<<8|(d[b+12>>0]|0)|(d[b+14>>0]|0)<<16|(d[b+15>>0]|0)<<24;c[m>>2]=F;F=f+-1044525330+F+(W&(D^E)^E)|0;F=(F<<22|F>>>10)+W|0;M=(d[b+17>>0]|0)<<8|(d[b+16>>0]|0)|(d[b+18>>0]|0)<<16|(d[b+19>>0]|0)<<24;c[n>>2]=M;M=E+-176418897+M+(F&(W^D)^D)|0;M=(M<<7|M>>>25)+F|0;E=(d[b+21>>0]|0)<<8|(d[b+20>>0]|0)|(d[b+22>>0]|0)<<16|(d[b+23>>0]|0)<<24;c[o>>2]=E;E=D+1200080426+E+(M&(F^W)^W)|0;E=(E<<12|E>>>20)+M|0;D=(d[b+25>>0]|0)<<8|(d[b+24>>0]|0)|(d[b+26>>0]|0)<<16|(d[b+27>>0]|0)<<24;c[p>>2]=D;D=W+-1473231341+D+(E&(M^F)^F)|0;D=(D<<17|D>>>15)+E|0;W=(d[b+29>>0]|0)<<8|(d[b+28>>0]|0)|(d[b+30>>0]|0)<<16|(d[b+31>>0]|0)<<24;c[q>>2]=W;W=F+-45705983+W+(D&(E^M)^M)|0;W=(W<<22|W>>>10)+D|0;F=(d[b+33>>0]|0)<<8|(d[b+32>>0]|0)|(d[b+34>>0]|0)<<16|(d[b+35>>0]|0)<<24;c[r>>2]=F;F=M+1770035416+F+(W&(D^E)^E)|0;F=(F<<7|F>>>25)+W|0;M=(d[b+37>>0]|0)<<8|(d[b+36>>0]|0)|(d[b+38>>0]|0)<<16|(d[b+39>>0]|0)<<24;c[s>>2]=M;E=M+-1958414417+E+(F&(W^D)^D)|0;E=(E<<12|E>>>20)+F|0;M=(d[b+41>>0]|0)<<8|(d[b+40>>0]|0)|(d[b+42>>0]|0)<<16|(d[b+43>>0]|0)<<24;c[t>>2]=M;D=M+-42063+D+(E&(F^W)^W)|0;D=(D<<17|D>>>15)+E|0;M=(d[b+45>>0]|0)<<8|(d[b+44>>0]|0)|(d[b+46>>0]|0)<<16|(d[b+47>>0]|0)<<24;c[u>>2]=M;W=M+-1990404162+W+(D&(E^F)^F)|0;W=(W<<22|W>>>10)+D|0;M=(d[b+49>>0]|0)<<8|(d[b+48>>0]|0)|(d[b+50>>0]|0)<<16|(d[b+51>>0]|0)<<24;c[v>>2]=M;F=M+1804603682+F+(W&(D^E)^E)|0;F=(F<<7|F>>>25)+W|0;M=(d[b+53>>0]|0)<<8|(d[b+52>>0]|0)|(d[b+54>>0]|0)<<16|(d[b+55>>0]|0)<<24;c[w>>2]=M;E=M+-40341101+E+(F&(W^D)^D)|0;E=(E<<12|E>>>20)+F|0;M=(d[b+57>>0]|0)<<8|(d[b+56>>0]|0)|(d[b+58>>0]|0)<<16|(d[b+59>>0]|0)<<24;c[x>>2]=M;D=M+-1502002290+D+(E&(F^W)^W)|0;D=(D<<17|D>>>15)+E|0;M=(d[b+61>>0]|0)<<8|(d[b+60>>0]|0)|(d[b+62>>0]|0)<<16|(d[b+63>>0]|0)<<24;c[i>>2]=M;W=M+1236535329+W+(D&(E^F)^F)|0;W=(W<<22|W>>>10)+D|0;O=c[k>>2]|0;F=O+-165796510+F+((W^D)&E^D)|0;F=(F<<5|F>>>27)+W|0;L=c[p>>2]|0;E=L+-1069501632+E+((F^W)&D^W)|0;E=(E<<9|E>>>23)+F|0;I=c[u>>2]|0;D=I+643717713+D+((E^F)&W^F)|0;D=(D<<14|D>>>18)+E|0;V=c[j>>2]|0;W=V+-373897302+W+((D^E)&F^E)|0;W=(W<<20|W>>>12)+D|0;S=c[o>>2]|0;F=S+-701558691+F+((W^D)&E^D)|0;F=(F<<5|F>>>27)+W|0;P=c[t>>2]|0;E=P+38016083+E+((F^W)&D^W)|0;E=(E<<9|E>>>23)+F|0;D=M+-660478335+D+((E^F)&W^F)|0;D=(D<<14|D>>>18)+E|0;J=c[n>>2]|0;W=J+-405537848+W+((D^E)&F^E)|0;W=(W<<20|W>>>12)+D|0;G=c[s>>2]|0;F=G+568446438+F+((W^D)&E^D)|0;F=(F<<5|F>>>27)+W|0;T=c[x>>2]|0;E=T+-1019803690+E+((F^W)&D^W)|0;E=(E<<9|E>>>23)+F|0;Q=c[m>>2]|0;D=Q+-187363961+D+((E^F)&W^F)|0;D=(D<<14|D>>>18)+E|0;N=c[r>>2]|0;W=N+1163531501+W+((D^E)&F^E)|0;W=(W<<20|W>>>12)+D|0;K=c[w>>2]|0;F=K+-1444681467+F+((W^D)&E^D)|0;F=(F<<5|F>>>27)+W|0;H=c[l>>2]|0;E=H+-51403784+E+((F^W)&D^W)|0;E=(E<<9|E>>>23)+F|0;U=c[q>>2]|0;D=U+1735328473+D+((E^F)&W^F)|0;D=(D<<14|D>>>18)+E|0;R=c[v>>2]|0;W=R+-1926607734+W+((D^E)&F^E)|0;W=(W<<20|W>>>12)+D|0;C=W^D;F=S+-378558+F+(C^E)|0;F=(F<<4|F>>>28)+W|0;C=N+-2022574463+E+(F^C)|0;C=(C<<11|C>>>21)+F|0;E=C^F;D=I+1839030562+D+(E^W)|0;D=(D<<16|D>>>16)+C|0;E=T+-35309556+W+(D^E)|0;E=(E<<23|E>>>9)+D|0;W=E^D;F=O+-1530992060+F+(W^C)|0;F=(F<<4|F>>>28)+E|0;W=J+1272893353+C+(F^W)|0;W=(W<<11|W>>>21)+F|0;C=W^F;D=U+-155497632+D+(C^E)|0;D=(D<<16|D>>>16)+W|0;C=P+-1094730640+E+(D^C)|0;C=(C<<23|C>>>9)+D|0;E=C^D;F=K+681279174+F+(E^W)|0;F=(F<<4|F>>>28)+C|0;E=V+-358537222+W+(F^E)|0;E=(E<<11|E>>>21)+F|0;W=E^F;D=Q+-722521979+D+(W^C)|0;D=(D<<16|D>>>16)+E|0;W=L+76029189+C+(D^W)|0;W=(W<<23|W>>>9)+D|0;C=W^D;F=G+-640364487+F+(C^E)|0;F=(F<<4|F>>>28)+W|0;C=R+-421815835+E+(F^C)|0;C=(C<<11|C>>>21)+F|0;E=C^F;D=M+530742520+D+(E^W)|0;D=(D<<16|D>>>16)+C|0;E=H+-995338651+W+(D^E)|0;E=(E<<23|E>>>9)+D|0;F=V+-198630844+F+((E|~C)^D)|0;F=(F<<6|F>>>26)+E|0;C=U+1126891415+C+((F|~D)^E)|0;C=(C<<10|C>>>22)+F|0;D=T+-1416354905+D+((C|~E)^F)|0;D=(D<<15|D>>>17)+C|0;E=S+-57434055+E+((D|~F)^C)|0;E=(E<<21|E>>>11)+D|0;F=R+1700485571+F+((E|~C)^D)|0;F=(F<<6|F>>>26)+E|0;C=Q+-1894986606+C+((F|~D)^E)|0;C=(C<<10|C>>>22)+F|0;D=P+-1051523+D+((C|~E)^F)|0;D=(D<<15|D>>>17)+C|0;E=O+-2054922799+E+((D|~F)^C)|0;E=(E<<21|E>>>11)+D|0;F=N+1873313359+F+((E|~C)^D)|0;F=(F<<6|F>>>26)+E|0;C=M+-30611744+C+((F|~D)^E)|0;C=(C<<10|C>>>22)+F|0;D=L+-1560198380+D+((C|~E)^F)|0;D=(D<<15|D>>>17)+C|0;E=K+1309151649+E+((D|~F)^C)|0;E=(E<<21|E>>>11)+D|0;F=J+-145523070+F+((E|~C)^D)|0;F=(F<<6|F>>>26)+E|0;C=I+-1120210379+C+((F|~D)^E)|0;C=(C<<10|C>>>22)+F|0;D=H+718787259+D+((C|~E)^F)|0;D=(D<<15|D>>>17)+C|0;E=G+-343485551+E+((D|~F)^C)|0;a=F+a|0;f=D+f+(E<<21|E>>>11)|0;h=D+h|0;g=C+g|0;b=b+64|0;e=e+-64|0}while((e|0)!=0);c[y>>2]=a;c[z>>2]=f;c[A>>2]=h;c[B>>2]=g;return b|0}function si(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=c[d>>2]&63;e=f+1|0;a[d+24+f>>0]=-128;f=f^63;g=d+24|0;if(f>>>0<8){RQ(d+24+e|0,0,f|0)|0;ri(d,g,64)|0;f=56;e=0}else f=f+-8|0;RQ(d+24+e|0,0,f|0)|0;f=c[d>>2]|0;e=f<<3;c[d>>2]=e;a[d+80>>0]=e;a[d+81>>0]=f>>>5;a[d+82>>0]=f>>>13;a[d+83>>0]=f>>>21;f=c[d+4>>2]|0;a[d+84>>0]=f;a[d+85>>0]=f>>>8;a[d+86>>0]=f>>>16;a[d+87>>0]=f>>>24;ri(d,g,64)|0;g=d+8|0;a[b>>0]=c[g>>2];a[b+1>>0]=(c[g>>2]|0)>>>8;a[b+2>>0]=(c[g>>2]|0)>>>16;a[b+3>>0]=(c[g>>2]|0)>>>24;g=d+12|0;a[b+4>>0]=c[g>>2];a[b+5>>0]=(c[g>>2]|0)>>>8;a[b+6>>0]=(c[g>>2]|0)>>>16;a[b+7>>0]=(c[g>>2]|0)>>>24;g=d+16|0;a[b+8>>0]=c[g>>2];a[b+9>>0]=(c[g>>2]|0)>>>8;a[b+10>>0]=(c[g>>2]|0)>>>16;a[b+11>>0]=(c[g>>2]|0)>>>24;g=d+20|0;a[b+12>>0]=c[g>>2];a[b+13>>0]=(c[g>>2]|0)>>>8;a[b+14>>0]=(c[g>>2]|0)>>>16;a[b+15>>0]=(c[g>>2]|0)>>>24;RQ(d|0,0,152)|0;return}function ti(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+32|0;D=H+18|0;C=H+15|0;o=H+8|0;g=H;c[g>>2]=b;f=g+4|0;c[f>>2]=0;G=eN(76)|0;do if(G|0){b=G;e=b+76|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(e|0));n=eN(24908)|0;if(!n){fN(G);break}if(c[n+-4>>2]&3|0)RQ(n|0,0,24908)|0;RQ(n+8|0,0,24900)|0;m=G+72|0;c[m>>2]=n;c[n+4>>2]=0;c[n+56>>2]=0;c[n>>2]=8;c[n+60>>2]=6;c[G+68>>2]=g;B=c[f>>2]|0;A=(c[g>>2]|0)+B|0;a[o>>0]=a[A>>0]|0;a[o+1>>0]=a[A+1>>0]|0;a[o+2>>0]=a[A+2>>0]|0;a[o+3>>0]=a[A+3>>0]|0;a[o+4>>0]=a[A+4>>0]|0;a[o+5>>0]=a[A+5>>0]|0;c[f>>2]=B+6;a[o+6>>0]=0;if(LN(288212,o,3)|0){fN(n);fN(G);break}a:do if(!(c[n>>2]&8))c[G+64>>2]=111;else{b=c[n+60>>2]|0;if(!b)b=iQ(D,1,2,c[n+56>>2]|0)|0;else b=ig[b&63](G,D,2)|0;if((b|0)!=2){c[G+64>>2]=102;break}f=D+1|0;c[G>>2]=d[f>>0]<<8|d[D>>0];b=c[m>>2]|0;e=c[b+60>>2]|0;if(!e)b=iQ(D,1,2,c[b+56>>2]|0)|0;else b=ig[e&63](G,D,2)|0;if((b|0)!=2){c[G+64>>2]=102;break}c[G+4>>2]=d[f>>0]<<8|d[D>>0];b=c[m>>2]|0;e=c[b+60>>2]|0;if(!e)b=iQ(C,1,3,c[b+56>>2]|0)|0;else b=ig[e&63](G,C,3)|0;if((b|0)!=3){c[G+64>>2]=102;b=G+20|0;e=c[b>>2]|0;if(e|0){fN(c[e+12>>2]|0);fN(e)}c[b>>2]=0;break}B=a[C>>0]|0;f=B&255;c[G+8>>2]=(f>>>4&7)+1;i=C+1|0;c[G+12>>2]=d[i>>0];j=C+2|0;a[G+16>>0]=a[j>>0]|0;b:do if(B<<24>>24<0){h=2<<(f&7);e=1;while(1){b=1<<e;if((e|0)<9&(b|0)<(h|0))e=e+1|0;else break}do if((b|0)==(h|0)?(k=eN(16)|0,(k|0)!=0):0){b=h*3|0;e=eN(b)|0;if(!e){fN(k);E=38;break}if(c[e+-4>>2]&3|0)RQ(e|0,0,b|0)|0;c[k+12>>2]=e;c[k>>2]=h;b=1;while(1)if((b|0)<9&(1<<b|0)<(h|0))b=b+1|0;else break;c[k+4>>2]=b;a[k+8>>0]=0;g=G+20|0;c[g>>2]=k;if(!k)break;a[k+8>>0]=f>>>3&1;if((h|0)>0)f=0;else break b;while(1){b=c[m>>2]|0;e=c[b+60>>2]|0;if(!e)b=iQ(C,1,3,c[b+56>>2]|0)|0;else b=ig[e&63](G,C,3)|0;if((b|0)!=3)break;B=c[g>>2]|0;A=c[B+12>>2]|0;a[A+(f*3|0)>>0]=a[C>>0]|0;a[A+(f*3|0)+1>>0]=a[i>>0]|0;a[A+(f*3|0)+2>>0]=a[j>>0]|0;f=f+1|0;if((f|0)>=(c[B>>2]|0))break b}b=c[g>>2]|0;if(b|0){fN(c[b+12>>2]|0);fN(b)}c[g>>2]=0;c[G+64>>2]=102;break a}else E=38;while(0);if((E|0)==38)c[G+20>>2]=0;c[G+64>>2]=109;break a}else c[G+20>>2]=0;while(0);c[G+64>>2]=0;a[n+24904>>0]=(a[o+3>>0]|0)==57&1;B=G+4|0;b=c[B>>2]|0;do if(((b|0)>0?(p=c[G>>2]|0,(p|0)>0):0)?(q=O(p,b)|0,F=eN(q)|0,(F|0)!=0):0){RQ(F|0,c[G+12>>2]&255|0,q|0)|0;z=G+64|0;o=G+32|0;p=G+28|0;q=G+36|0;r=G+40|0;s=G+44|0;t=G+72|0;u=G+28|0;v=D+1|0;A=G+48|0;w=C+1|0;x=C+2|0;y=G+52|0;n=G+24|0;c:while(1){b=c[t>>2]|0;if(!(c[b>>2]&8)){b=111;E=65;break}e=c[b+60>>2]|0;if(!e)b=iQ(D,1,1,c[b+56>>2]|0)|0;else b=ig[e&63](G,D,1)|0;if((b|0)!=1){b=102;E=65;break}switch(a[D>>0]|0){case 44:{m=2;break}case 33:{m=3;break}case 59:{m=4;break}default:{b=107;E=65;break c}}d:do switch(m&7){case 2:{k=c[t>>2]|0;e:do if(!(c[k>>2]&8)){c[z>>2]=111;E=154}else{b=c[k+60>>2]|0;if(!b)b=iQ(D,1,2,c[k+56>>2]|0)|0;else b=ig[b&63](G,D,2)|0;if((b|0)!=2){c[z>>2]=102;E=154;break}c[u>>2]=d[v>>0]<<8|d[D>>0];b=c[t>>2]|0;e=c[b+60>>2]|0;if(!e)b=iQ(D,1,2,c[b+56>>2]|0)|0;else b=ig[e&63](G,D,2)|0;if((b|0)!=2){c[z>>2]=102;E=154;break}c[o>>2]=d[v>>0]<<8|d[D>>0];b=c[t>>2]|0;e=c[b+60>>2]|0;if(!e)b=iQ(D,1,2,c[b+56>>2]|0)|0;else b=ig[e&63](G,D,2)|0;if((b|0)!=2){c[z>>2]=102;E=154;break}c[q>>2]=d[v>>0]<<8|d[D>>0];b=c[t>>2]|0;e=c[b+60>>2]|0;if(!e)b=iQ(D,1,2,c[b+56>>2]|0)|0;else b=ig[e&63](G,D,2)|0;if((b|0)!=2){c[z>>2]=102;E=154;break}c[r>>2]=d[v>>0]<<8|d[D>>0];b=c[t>>2]|0;e=c[b+60>>2]|0;if(!e)b=iQ(C,1,1,c[b+56>>2]|0)|0;else b=ig[e&63](G,C,1)|0;if((b|0)!=1){c[z>>2]=102;b=c[A>>2]|0;if(b|0){fN(c[b+12>>2]|0);fN(b)}c[A>>2]=0;E=154;break}b=a[C>>0]|0;f=b&255;a[s>>0]=f>>>6&1;e=c[A>>2]|0;if(e){fN(c[e+12>>2]|0);fN(e);c[A>>2]=0;b=a[C>>0]|0}f:do if(b<<24>>24<0){g=2<<(f&7);e=1;while(1){b=1<<e;if((e|0)<9&(b|0)<(g|0))e=e+1|0;else break}do if((b|0)==(g|0)){f=eN(16)|0;if(!f){E=109;break}b=g*3|0;e=eN(b)|0;if(!e){fN(f);E=109;break}if(c[e+-4>>2]&3|0)RQ(e|0,0,b|0)|0;c[f+12>>2]=e;c[f>>2]=g;b=1;while(1)if((b|0)<9&(1<<b|0)<(g|0))b=b+1|0;else break;c[f+4>>2]=b;a[f+8>>0]=0;c[A>>2]=f;if(!f)break;else f=0;while(1){b=c[t>>2]|0;e=c[b+60>>2]|0;if(!e)b=iQ(C,1,3,c[b+56>>2]|0)|0;else b=ig[e&63](G,C,3)|0;if((b|0)!=3)break;j=c[A>>2]|0;i=c[j+12>>2]|0;a[i+(f*3|0)>>0]=a[C>>0]|0;a[i+(f*3|0)+1>>0]=a[w>>0]|0;a[i+(f*3|0)+2>>0]=a[x>>0]|0;f=f+1|0;if(f>>>0>=(c[j>>2]|0)>>>0)break f}b=c[A>>2]|0;if(b|0){fN(c[b+12>>2]|0);fN(b)}c[z>>2]=102;c[A>>2]=0;E=154;break e}else E=109;while(0);if((E|0)==109)c[A>>2]=0;c[z>>2]=109;E=154;break e}while(0);b=c[y>>2]|0;g:do if(!b){b=eN(36)|0;c[y>>2]=b;if(b|0)break;c[z>>2]=109;E=154;break e}else{e=(c[n>>2]|0)+1|0;do if(e>>>0>119304647)c[8240]=12;else{b=gN(b,e*36|0)|0;if(!b)break;c[y>>2]=b;break g}while(0);c[z>>2]=109;E=154;break e}while(0);i=c[n>>2]|0;e=b+(i*36|0)|0;c[e>>2]=c[u>>2];c[e+4>>2]=c[u+4>>2];c[e+8>>2]=c[u+8>>2];c[e+12>>2]=c[u+12>>2];c[e+16>>2]=c[u+16>>2];c[e+20>>2]=c[u+20>>2];e=c[A>>2]|0;h:do if(e|0){j=c[e>>2]|0;h=c[e+12>>2]|0;f=1;while(1){e=1<<f;if((f|0)<9&(e|0)<(j|0))f=f+1|0;else break}do if((e|0)==(j|0)){g=eN(16)|0;if(!g)break;do if(!j)e=0;else{e=j*3|0;if(j>>>0<=65535)break;e=((e>>>0)/(j>>>0)|0|0)==3?e:-1}while(0);f=eN(e)|0;if(!f){fN(g);break}if(c[f+-4>>2]&3|0)RQ(f|0,0,e|0)|0;c[g+12>>2]=f;c[g>>2]=j;e=1;while(1)if((e|0)<9&(1<<e|0)<(j|0))e=e+1|0;else break;c[g+4>>2]=e;a[g+8>>0]=0;if(h|0)PQ(f|0,h|0,j*3|0)|0;c[b+(i*36|0)+20>>2]=g;break h}while(0);c[b+(i*36|0)+20>>2]=0;c[z>>2]=109;E=154;break e}while(0);c[b+(i*36|0)+24>>2]=0;c[b+(i*36|0)+28>>2]=0;c[b+(i*36|0)+32>>2]=0;c[n>>2]=(c[n>>2]|0)+1;c[k+52>>2]=O(c[r>>2]|0,c[q>>2]|0)|0;e=c[t>>2]|0;b=c[e+60>>2]|0;if(!b)b=iQ(D,1,1,c[e+56>>2]|0)|0;else b=ig[b&63](G,D,1)|0;do if(b|0){k=a[D>>0]|0;b=k&255;if((k&255)>8){c[z>>2]=102;break}a[e+68>>0]=0;c[e+8>>2]=b;k=1<<b;c[e+12>>2]=k;c[e+16>>2]=k+1;c[e+20>>2]=k+2;c[e+24>>2]=b+1;c[e+28>>2]=2<<b;c[e+40>>2]=0;c[e+32>>2]=4098;c[e+44>>2]=0;c[e+48>>2]=0;b=0;do{c[e+8516+(b<<2)>>2]=4098;b=b+1|0}while((b|0)!=4096);b=0;break e}while(0);E=157}while(0);if((E|0)==154)E=157;if((E|0)==157){E=0;b=c[z>>2]|0}e=c[o>>2]|0;i=c[p>>2]|0;j=c[q>>2]|0;g=c[r>>2]|0;f=c[G>>2]|0;if(!((j+i|0)<=(f|0)?(g+e|0)<=(c[B>>2]|0):0))b=1;if(!(a[s>>0]|0)){if((g|0)<=0)break d;if(sC(G,F+(O(e,f)|0)+i|0,j)|0){f=0;do{f=f+1|0;if((f|0)>=(g|0))break d;e=e+1|0}while((sC(G,F+(O(e,c[G>>2]|0)|0)+i|0,j)|0)!=0)}b=c[z>>2]|0;break d}h=g+e|0;f=e;g=1972;while(1){f=(c[g>>2]|0)+f|0;if((f|0)>=(h|0))break;if(!(sC(G,F+(O(c[G>>2]|0,f)|0)+i|0,j)|0)){E=167;break}else g=1956}if((E|0)==167){E=0;b=c[z>>2]|0}f=e;g=1972;while(1){f=(c[g+4>>2]|0)+f|0;if((f|0)>=(h|0))break;if(!(sC(G,F+(O(c[G>>2]|0,f)|0)+i|0,j)|0)){E=235;break}else g=1956}if((E|0)==235){E=0;b=c[z>>2]|0}f=e;g=1972;while(1){f=(c[g+8>>2]|0)+f|0;if((f|0)>=(h|0))break;if(!(sC(G,F+(O(c[G>>2]|0,f)|0)+i|0,j)|0)){E=239;break}else g=1956}if((E|0)==239){E=0;b=c[z>>2]|0}f=1972;while(1){e=(c[f+12>>2]|0)+e|0;if((e|0)>=(h|0))break d;if(!(sC(G,F+(O(c[G>>2]|0,e)|0)+i|0,j)|0))break;else f=1956}b=c[z>>2]|0;break}case 3:{b=c[t>>2]|0;if(!(c[b>>2]&8)){b=111;E=186;break c}e=c[b+60>>2]|0;if(!e)b=iQ(C,1,1,c[b+56>>2]|0)|0;else b=ig[e&63](G,C,1)|0;if((b|0)!=1){b=102;E=186;break c}f=c[t>>2]|0;b=c[f+60>>2]|0;if(!b)b=iQ(D,1,1,c[f+56>>2]|0)|0;else b=ig[b&63](G,D,1)|0;if((b|0)!=1){E=187;break c}e=a[D>>0]|0;if(e<<24>>24){b=f+68|0;a[b>>0]=e;g=c[t>>2]|0;h=c[g+60>>2]|0;f=f+69|0;e=e&255;if(!h)e=iQ(f,1,e,c[g+56>>2]|0)|0;else e=ig[h&63](G,f,e)|0;if((e|0)!=(d[D>>0]|0)){E=187;break c}}else b=0;while(1){if(!b){b=0;break d}f=c[t>>2]|0;b=c[f+60>>2]|0;if(!b)b=iQ(D,1,1,c[f+56>>2]|0)|0;else b=ig[b&63](G,D,1)|0;if((b|0)!=1){E=200;break c}e=a[D>>0]|0;if(e<<24>>24){b=f+68|0;a[b>>0]=e;g=c[t>>2]|0;h=c[g+60>>2]|0;f=f+69|0;e=e&255;if(!h)e=iQ(f,1,e,c[g+56>>2]|0)|0;else e=ig[h&63](G,f,e)|0;if((e|0)!=(d[D>>0]|0)){E=200;break c}}else b=0}}default:b=0}while(0);if(!((b|0)==0&(m|0)!=4)){E=202;break}}if((E|0)==65)c[z>>2]=b;else if((E|0)==186)c[z>>2]=b;else if((E|0)==187)c[z>>2]=102;else if((E|0)==200)c[z>>2]=102;else if((E|0)==202?(b|0)==0:0){b=eN(20)|0;if(!b){k=G;n=b;break}c[b>>2]=F;c[b+8>>2]=c[G>>2];c[b+12>>2]=c[B>>2];n=c[(c[A>>2]|0?A:G+20|0)>>2]|0;k=c[n>>2]|0;c[b+16>>2]=k;k=k*3|0;F=eN(k)|0;c[b+4>>2]=F;PQ(F|0,c[n+12>>2]|0,k|0)|0;k=G;n=b;break}fN(F);k=G;n=0}else{k=G;n=0}while(0);m=k+72|0;if(!(c[m>>2]|0)){G=n;l=H;return G|0}b=k+48|0;e=c[b>>2]|0;if(e|0){fN(c[e+12>>2]|0);fN(e);c[b>>2]=0}b=k+20|0;e=c[b>>2]|0;if(e|0){fN(c[e+12>>2]|0);fN(e);c[b>>2]=0}j=k+52|0;b=c[j>>2]|0;if(b|0){i=k+24|0;if((c[i>>2]|0)>0){do{e=b+20|0;f=c[e>>2]|0;if(f|0){fN(c[f+12>>2]|0);fN(f);c[e>>2]=0}e=c[b+24>>2]|0;if(e|0)fN(e);g=b+28|0;h=b+32|0;e=c[h>>2]|0;if(e|0){if((c[g>>2]|0)>0){do{fN(c[e+4>>2]|0);e=e+12|0;f=c[h>>2]|0}while(e>>>0<(f+((c[g>>2]|0)*12|0)|0)>>>0);e=f}fN(e);c[h>>2]=0;c[g>>2]=0}b=b+36|0;e=c[j>>2]|0}while(b>>>0<(e+((c[i>>2]|0)*36|0)|0)>>>0);b=e}fN(b);c[j>>2]=0}g=k+56|0;f=k+60|0;b=c[f>>2]|0;if(b|0){if((c[g>>2]|0)>0){do{fN(c[b+4>>2]|0);b=b+12|0;e=c[f>>2]|0}while(b>>>0<(e+((c[g>>2]|0)*12|0)|0)>>>0);b=e}fN(b);c[f>>2]=0;c[g>>2]=0}b=c[m>>2]|0;if(!(c[b>>2]&8)){fN(b);fN(G);G=n;l=H;return G|0}e=c[b+56>>2]|0;do if(e){F=(uP(e)|0)==0;b=c[m>>2]|0;if(F)break;fN(b);fN(G);G=n;l=H;return G|0}while(0);fN(b);fN(G);G=n;l=H;return G|0}while(0);fN(n);fN(G)}while(0);G=0;l=H;return G|0}function ui(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[a+68>>2]|0;a=e+4|0;PQ(b|0,(c[e>>2]|0)+(c[a>>2]|0)|0,d|0)|0;c[a>>2]=(c[a>>2]|0)+d;return d|0}function vi(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=c[a+68>>2]|0;a=e+4|0;PQ((c[e>>2]|0)+(c[a>>2]|0)|0,b|0,d|0)|0;c[a>>2]=(c[a>>2]|0)+d;return d|0}function wi(b,d,e,f,g,h,i){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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,P=0,Q=0,R=0,S=0;S=l;l=l+32|0;Q=S+16|0;N=S+8|0;I=S;P=S+12|0;K=O(i,e)|0;L=O(i,f)|0;M=O(f,e)|0;c[N>>2]=0;c[I>>2]=b;H=I+4|0;c[H>>2]=0;I=lC(I,N)|0;if(!I){l=S;return}J=I+72|0;a[(c[J>>2]|0)+24904>>0]=1;if(mC(I,K,L,8,0)|0){b=c[J>>2]|0;do if(c[b>>2]&1){a[Q>>0]=33;a[Q+1>>0]=-1;j=c[b+64>>2]|0;if(!j){jP(Q,1,2,c[b+56>>2]|0)|0;break}else{ig[j&63](I,Q,2)|0;break}}else c[I+64>>2]=10;while(0);b=c[J>>2]|0;do if(c[b>>2]&1){a[Q>>0]=11;j=c[b+64>>2]|0;if(!j)hQ(11,c[b+56>>2]|0);else ig[j&63](I,Q,1)|0;b=c[J>>2]|0;j=c[b+64>>2]|0;if(!j){jP(84307,1,11,c[b+56>>2]|0)|0;break}else{ig[j&63](I,84307,11)|0;break}}else c[I+64>>2]=10;while(0);b=c[J>>2]|0;do if(c[b>>2]&1){a[Q>>0]=3;j=c[b+64>>2]|0;if(!j)hQ(3,c[b+56>>2]|0);else ig[j&63](I,Q,1)|0;b=c[J>>2]|0;j=c[b+64>>2]|0;if(!j){jP(84319,1,3,c[b+56>>2]|0)|0;break}else{ig[j&63](I,84319,3)|0;break}}else c[I+64>>2]=10;while(0);b=c[J>>2]|0;do if(c[b>>2]&1){a[Q>>0]=0;j=c[b+64>>2]|0;if(!j){hQ(0,c[b+56>>2]|0);break}else{ig[j&63](I,Q,1)|0;break}}else c[I+64>>2]=10;while(0);r=eN(768)|0;s=eN(M)|0;t=eN(K)|0;a:do if((h|0)>0){u=M<<2;v=(M|0)<1;w=(f|0)>0;x=(e|0)>0;y=(i|0)>0;z=I+64|0;A=Q+2|0;B=Q+1|0;C=P+1|0;D=P+2|0;E=P+3|0;F=Q+1|0;G=Q+2|0;p=0;q=0;while(1){b=(q*240|1|0)/200|0;if((b|0)>=(h|0))break a;m=g+(O(u,b)|0)|0;RQ(r|0,0,768)|0;RQ(s|0,0,M|0)|0;if(v)b=0;else{k=0;b=0;do{o=m+(k<<2)|0;a[A>>0]=a[o>>0]|0;a[B>>0]=a[o+1>>0]|0;a[Q>>0]=a[o+2>>0]|0;b:do if((b|0)>0){j=0;while(1){if(!(KN(r+(j*3|0)|0,Q,3)|0))break;j=j+1|0;if((j|0)>=(b|0)){R=37;break b}}a[s+k>>0]=j}else R=37;while(0);if((R|0)==37){R=0;a[s+k>>0]=b;o=r+(b*3|0)|0;a[o>>0]=a[Q>>0]|0;a[o+1>>0]=a[Q+1>>0]|0;a[o+2>>0]=a[Q+2>>0]|0;b=b+1|0}k=k+1|0}while(!((b|0)>255|(k|0)>=(M|0)))}a[P>>0]=4;a[C>>0]=2;a[D>>0]=0;a[E>>0]=-1;j=c[J>>2]|0;do if(c[j>>2]&1){a[Q>>0]=33;a[F>>0]=-7;a[G>>0]=4;k=c[j+64>>2]|0;if(!k)jP(Q,1,3,c[j+56>>2]|0)|0;else ig[k&63](I,Q,3)|0;j=c[J>>2]|0;k=c[j+64>>2]|0;if(!k)jP(P,1,4,c[j+56>>2]|0)|0;else ig[k&63](I,P,4)|0;a[Q>>0]=0;j=c[J>>2]|0;k=c[j+64>>2]|0;if(!k){hQ(0,c[j+56>>2]|0);break}else{ig[k&63](I,Q,1)|0;break}}else c[z>>2]=10;while(0);k=eN(16)|0;do if(!k){o=0;n=0}else{j=eN(768)|0;if(!j){fN(k);o=0;n=0;break}if(c[j+-4>>2]&3|0)RQ(j|0,0,768)|0;c[k+12>>2]=j;c[k>>2]=256;c[k+4>>2]=8;a[k+8>>0]=0;o=k;n=k}while(0);m=o+12|0;RQ(c[m>>2]|0,0,768)|0;PQ(c[m>>2]|0,r|0,b*3|0)|0;if(!(nC(I,K,L,o)|0))b=p;else{c:do if(w){if(x)k=0;else{j=0;while(1){d:do if(y){b=0;while(1){b=b+1|0;if(!(qC(I,t,K)|0))break;if((b|0)>=(i|0)){R=72;break d}}b=c[z>>2]|0;c[N>>2]=b}else R=72;while(0);if((R|0)==72){R=0;b=c[N>>2]|0}j=j+1|0;if(!((b|0)==0&(j|0)<(f|0)))break c}}do{e:do if(y){b=O(k,e)|0;j=0;while(1){p=t+(O(j,i)|0)|0;RQ(p|0,a[s+b>>0]|0,i|0)|0;j=j+1|0;if((j|0)==(e|0)){b=0;break}else b=b+1|0}while(1){b=b+1|0;if(!(qC(I,t,K)|0))break;if((b|0)>=(i|0)){R=63;break e}}b=c[z>>2]|0;c[N>>2]=b}else R=63;while(0);if((R|0)==63){R=0;b=c[N>>2]|0}k=k+1|0}while((b|0)==0&(k|0)<(f|0))}else b=c[N>>2]|0;while(0);c[d>>2]=c[H>>2];b=(b|0)==0&1}if(o|0){fN(c[m>>2]|0);fN(n)}q=q+1|0;if(!((b&1)!=0&(q|0)<(h|0)))break;else p=b}}while(0);fN(t);fN(s);fN(r)}rC(I,N);c[d>>2]=c[H>>2];l=S;return}function xi(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;aP(328793,b)|0;b=b+4096|0;if(WO(b)|0){uQ(328793,b)|0;e=328793+(WO(328793)|0)|0;a[e>>0]=47;a[e+1>>0]=0}e=AO()|0;if(e|0){b=CO(e)|0;a:do if(b|0)do{if(((a[b+10>>0]|0)==4?(f=b+11|0,(a[f>>0]|0)!=46):0)?!(lg[c&31](f,0,0,d,1)|0):0)break a;b=CO(e)|0}while((b|0)!=0);while(0);wO(e)}e=AO()|0;if(!e)return;b=CO(e)|0;b:do if(b|0)do{if((a[b+10>>0]|0)==8?!(lg[c&31](b+11|0,0,0,d,0)|0):0)break b;b=CO(e)|0}while((b|0)!=0);while(0);wO(e);return}function yi(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=c[f>>2]|0;if(!b){Dg[c[f+4>>2]&63](0,0,c[f+8>>2]|0);fN(f);return}aP(328793,i)|0;j=i+4096|0;if(WO(j)|0){uQ(328793,j)|0;h=328793+(WO(328793)|0)|0;a[h>>0]=47;a[h+1>>0]=0}uQ(328793,b)|0;h=oP(328793,305616)|0;if(h|0){uP(h)|0;Dg[c[f+4>>2]&63](b,2,c[f+8>>2]|0);fN(f);return}aP(328793,i)|0;if(WO(j)|0){uQ(328793,j)|0;j=328793+(WO(328793)|0)|0;a[j>>0]=47;a[j+1>>0]=0}uQ(328793,b)|0;h=oP(328793,305619)|0;if(!h){fN(f);return}jP(d,1,e,h)|0;uP(h)|0;if(g|0)dQ(g);Eb(6)|0;Dg[c[f+4>>2]&63](b,1,c[f+8>>2]|0);fN(f);return}function zi(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+80|0;e=f;if((a[d>>0]|0)==46){e=0;l=f;return e|0}aP(328793,b)|0;b=b+4096|0;if(WO(b)|0){uQ(328793,b)|0;b=328793+(WO(328793)|0)|0;a[b>>0]=47;a[b+1>>0]=0}uQ(328793,d)|0;if(!(mP(328793,e)|0))b=(c[e+12>>2]&61440|0)==16384;else b=0;e=b;l=f;return e|0}function Ai(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;Eg[c[e>>2]&63](a,b,d,c[e+4>>2]|0);fN(e);return}function Bi(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16400|0;i=n+4096|0;m=n;g=n+4100|0;j=n+12296|0;h=n+8200|0;k=b+4096|0;if(JN(k,84322)|0?KN(k,84340,18)|0:0){aP(328793,b)|0;if(WO(k)|0){uQ(328793,k)|0;m=328793+(WO(328793)|0)|0;a[m>>0]=47;a[m+1>>0]=0}uQ(328793,d)|0;f=oP(328793,305616)|0;if(!f){e=0;l=n;return e|0}IP(f,0,2)|0;c[e>>2]=lQ(f)|0;IP(f,0,0)|0;d=eN(c[e>>2]|0)|0;if(!d)d=0;else{e=(iQ(d,c[e>>2]|0,1,f)|0)==0;d=e?0:d}uP(f)|0;e=d;l=n;return e|0}RQ(g|0,0,4100)|0;c[g>>2]=d;f=g+4|0;a[f>>0]=0;xi(b,3,g);if(!(WO(f)|0)){e=0;l=n;return e|0}RQ(j|0,0,4096)|0;c[m>>2]=f;MN(j,84383,m)|0;aP(m,k)|0;RQ(k|0,0,4096)|0;d=Bi(b,j,e)|0;aP(k,m)|0;if(!d){RQ(h|0,0,4096)|0;c[i>>2]=f;MN(h,84403,i)|0;d=eN(0)|0;c[e>>2]=0;if(d|0){aP(m,k)|0;RQ(k|0,0,4096)|0;Di(b,j,d,0,0)|0;aP(k,m)|0}}e=d;l=n;return e|0}function Ci(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;if(!((d|0)!=0&(JN(b,c[f>>2]|0)|0)==0)){g=1;return g|0}if(!(a[d>>0]|0)){g=1;return g|0}aP(f+4|0,d)|0;g=0;return g|0}function Di(b,c,d,e,f){b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=l;l=l+80|0;g=h;if(!f){aP(328793,b)|0;f=b+4096|0;if(WO(f)|0){uQ(328793,f)|0;i=328793+(WO(328793)|0)|0;a[i>>0]=47;a[i+1>>0]=0}uQ(328793,c)|0;if(!(mP(328793,g)|0)){i=0;l=h;return i|0}}else f=b+4096|0;aP(328793,b)|0;if(a[f>>0]|0){uQ(328793,f)|0;i=328793+(WO(328793)|0)|0;a[i>>0]=47;a[i+1>>0]=0}uQ(328793,c)|0;f=oP(328793,305619)|0;if(!f){i=0;l=h;return i|0}jP(d,1,e,f)|0;uP(f)|0;Eb(6)|0;i=1;l=h;return i|0}function Ei(a,b){a=a|0;b=b|0;var d=0;a=oP(a,305616)|0;if(!a){b=0;return b|0}IP(a,0,2)|0;c[b>>2]=lQ(a)|0;IP(a,0,0)|0;d=eN(c[b>>2]|0)|0;if(d|0)iQ(d,c[b>>2]|0,1,a)|0;uP(a)|0;b=d;return b|0}function Fi(b,d){b=b|0;d=d|0;var e=0,f=0;f=l;l=l+80|0;e=f;aP(328793,b)|0;b=b+4096|0;if(WO(b)|0){uQ(328793,b)|0;b=328793+(WO(328793)|0)|0;a[b>>0]=47;a[b+1>>0]=0}uQ(328793,d)|0;if(mP(328793,e)|0){d=0;e=0;z=d;l=f;return e|0}if((c[e+12>>2]&61440|0)!=32768){d=0;e=0;z=d;l=f;return e|0}e=c[e+56>>2]|0;d=((e|0)<0)<<31>>31;z=d;l=f;return e|0}function Gi(b,c){b=b|0;c=c|0;aP(328793,b)|0;b=b+4096|0;if(WO(b)|0){uQ(328793,b)|0;b=328793+(WO(328793)|0)|0;a[b>>0]=47;a[b+1>>0]=0}uQ(328793,c)|0;eQ();Eb(6)|0;return}function Hi(){var b=0,d=0,e=0,f=0;f=eN(8196)|0;RQ(f|0,0,8196)|0;if((c[79298]|0)==0?(b=Sf(13,1)|0,b|0):0)Sf(13,b|0)|0;c[79298]=(c[79298]|0)+1;b=eN(4104)|0;RQ(b|0,0,4104)|0;c[f+8192>>2]=b;b=f;d=84421;e=b+24|0;do{a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}while((b|0)<(e|0));Hb(7,f|0,194,f|0)|0;return}function Ii(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;if(!b){e=0;return e|0}if((WO(b)|0)!=3){e=0;return e|0}if(KN(85793,b,2)|0)if(KN(85796,b,2)|0)if(KN(85799,b,2)|0)if(KN(85802,b,2)|0)if(KN(85805,b,2)|0)if(KN(85808,b,2)|0)if(KN(85811,b,2)|0)if(KN(85814,b,2)|0)if(KN(85817,b,2)|0)if(KN(85820,b,2)|0)if(KN(85823,b,2)|0)if(!(KN(85826,b,2)|0))f=11;else{e=1;return e|0}else f=10;else f=9;else f=8;else f=7;else f=6;else f=5;else f=4;else f=3;else f=2;else f=1;else f=0;c[d>>2]=f;c[e>>2]=(a[b+2>>0]|0)+-49;e=1;return e|0}function Ji(b){b=b|0;var d=0,e=0;d=317196;e=d+64|0;do{c[d>>2]=-1;d=d+4|0}while((d|0)<(e|0));a[317196]=a[b+2>>0]|0;a[317197]=a[b+1>>0]|0;a[317198]=a[b>>0]|0;a[317200]=a[b+5>>0]|0;a[317201]=a[b+4>>0]|0;a[317202]=a[b+3>>0]|0;a[317204]=a[b+8>>0]|0;a[317205]=a[b+7>>0]|0;a[317206]=a[b+6>>0]|0;a[317208]=a[b+11>>0]|0;a[317209]=a[b+10>>0]|0;a[317210]=a[b+9>>0]|0;a[317212]=a[b+14>>0]|0;a[317213]=a[b+13>>0]|0;a[317214]=a[b+12>>0]|0;a[317216]=a[b+17>>0]|0;a[317217]=a[b+16>>0]|0;a[317218]=a[b+15>>0]|0;a[317220]=a[b+20>>0]|0;a[317221]=a[b+19>>0]|0;a[317222]=a[b+18>>0]|0;a[317224]=a[b+23>>0]|0;a[317225]=a[b+22>>0]|0;a[317226]=a[b+21>>0]|0;a[317228]=a[b+26>>0]|0;a[317229]=a[b+25>>0]|0;a[317230]=a[b+24>>0]|0;a[317232]=a[b+29>>0]|0;a[317233]=a[b+28>>0]|0;a[317234]=a[b+27>>0]|0;a[317236]=a[b+32>>0]|0;a[317237]=a[b+31>>0]|0;a[317238]=a[b+30>>0]|0;a[317240]=a[b+35>>0]|0;a[317241]=a[b+34>>0]|0;a[317242]=a[b+33>>0]|0;a[317244]=a[b+38>>0]|0;a[317245]=a[b+37>>0]|0;a[317246]=a[b+36>>0]|0;a[317248]=a[b+41>>0]|0;a[317249]=a[b+40>>0]|0;a[317250]=a[b+39>>0]|0;a[317252]=a[b+44>>0]|0;a[317253]=a[b+43>>0]|0;a[317254]=a[b+42>>0]|0;a[317256]=a[b+47>>0]|0;a[317257]=a[b+46>>0]|0;a[317258]=a[b+45>>0]|0;return}function Ki(b){b=b|0;var d=0;d=b+4|0;if(!(a[d>>0]|0)){c[b+8>>2]=1;c[b+12>>2]=0;a[d>>0]=1}do{}while((eh()|0)!=0);d=c[b>>2]|0;Bg[c[d+2439672>>2]&255](d,0);d=b+12|0;vg[c[1988+((((c[d>>2]|0)>>>0)/60|0)<<2)>>2]&511](b);c[d>>2]=(c[d>>2]|0)+1;return}function Li(b){b=b|0;var d=0;d=c[b>>2]|0;Bg[c[d+2439672>>2]&255](d,0);RQ(d+16384|0,a[84772+(((((c[b+12>>2]|0)>>>0)%60|0)>>>0)/15|0)>>0]|0,32)|0;b=c[b>>2]|0;Kg[c[b+2439704>>2]&15](b,b+32768|0,b+16384|0,0,0,30,17,0,0,-1,1);return}function Mi(b){b=b|0;var e=0,f=0,g=0;e=b+16|0;if(!(a[e>>0]|0)){g=c[3]|0;f=g+1309682|0;f=d[f>>0]|d[f+1>>0]<<8;Ig[c[g+2439748>>2]&7](g,1,(f&65535)>>>8&15,f&7,-1,0,15,0);a[e>>0]=1}g=c[b>>2]|0;lg[c[g+2439664>>2]&31](g,84715,6,7,15)|0;g=c[b>>2]|0;lg[c[g+2439664>>2]&31](g,84736,132,7,3)|0;g=c[b>>2]|0;lg[c[g+2439664>>2]&31](g,84743,6,14,3)|0;return}function Ni(b){b=b|0;var d=0,e=0;d=b+16|0;if(a[d>>0]|0){e=c[b>>2]|0;Bg[c[e+2439744>>2]&255](e,0);a[d>>0]=0}e=c[b>>2]|0;lg[c[e+2439664>>2]&31](e,84715,6,7,15)|0;e=c[b>>2]|0;lg[c[e+2439664>>2]&31](e,84736,132,7,3)|0;b=c[b>>2]|0;lg[c[b+2439664>>2]&31](b,84743,6,14,3)|0;b=c[45]|0;a:do switch(b|0){case 2:{e=c[3]|0;vg[c[e+2439784>>2]&511](e);e=c[3]|0;vg[c[e+2439780>>2]&511](e);break}case 1:return;default:{e=c[3]|0;vg[c[e+2439780>>2]&511](e);switch(b|0){case 9:case 10:case 0:break a;case 11:{c[46]=3;break a}default:{c[46]=b;break a}}}}while(0);c[45]=1;b=c[80021]|0;if(!b)return;d=c[b+224>>2]|0;if(!d)return;if(!(gg[d&511](b)|0))return;if((c[45]|2|0)!=3)return;aN();return}function Oi(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;o=r;q=d+48|0;if(!(c[q>>2]|0))c[q>>2]=eN(4096)|0;k=d+52|0;g=c[k>>2]|0;if(!g){g=eN(4096)|0;c[k>>2]=g}p=d+60|0;j=c[p>>2]|0;if(!j)n=k;else{fN(c[j+8>>2]|0);g=c[j>>2]|0;while(1){h=c[g+4>>2]|0;if(!h)break;else g=h}if(g|0)do{h=g;g=c[g>>2]|0;i=c[h+8>>2]|0;if(i|0)fN(i);fN(h)}while((g|0)!=0);fN(j);n=k;g=c[k>>2]|0}k=o+1|0;m=k+24|0;do{a[k>>0]=0;k=k+1|0}while((k|0)<(m|0));i=c[q>>2]|0;j=eN(16)|0;c[j+12>>2]=f;c[j+4>>2]=16384;k=eN(16384)|0;c[j+8>>2]=k;PQ(k|0,f|0,16384)|0;k=eN(20)|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;c[k+16>>2]=0;c[j>>2]=k;c[d>>2]=e;c[d+4>>2]=f;c[d+8>>2]=0;b[d+12>>1]=0;a[d+14>>0]=1;a[d+15>>0]=0;a[d+16>>0]=8;a[d+17>>0]=1;a[d+18>>0]=0;k=d+19|0;h=o;m=k+25|0;do{a[k>>0]=a[h>>0]|0;k=k+1|0;h=h+1|0}while((k|0)<(m|0));a[d+44>>0]=0;f=d+45|0;a[f>>0]=0;a[f+1>>0]=0;a[f+2>>0]=0;c[q>>2]=i;c[n>>2]=g;c[d+56>>2]=0;c[p>>2]=j;c[d+64>>2]=195;c[d+68>>2]=137;c[d+72>>2]=138;l=r;return}function Pi(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0;aa=l;l=l+48|0;W=aa+24|0;X=aa+16|0;Y=aa+8|0;H=aa;O=aa+28|0;g=eh()|0;N=f+56|0;a:do if(g|0){x=f+28|0;y=f+32|0;z=f+24|0;C=f+16|0;D=f+20|0;E=f+18|0;t=f+17|0;r=f+12|0;u=f+20|0;v=f+60|0;w=f+15|0;s=f+4|0;while(1){b:do switch(c[g>>2]|0){case 768:{q=c[g+16+4>>2]|0;g=e[160638]|0;c:do if(!(g&3264)){if(g&3|0)switch(((q|0)==127?1:((q|0)==1073741897)<<31>>31)&3){case 1:{Z=9;break}case 2:{Z=10;break}case 3:{Z=11;break}default:{}}}else{if((q|0)<120)switch(q|0){case 99:{Z=10;break c}case 118:{Z=11;break c}default:break c}if((q|0)<1073741897)switch(q|0){case 120:{Z=9;break c}default:break c}else switch(q|0){case 1073741897:{Z=10;break c}default:break c}}while(0);if((Z|0)==9){Z=0;Ti(f)}else if((Z|0)==10){Z=0;Ui(f)}else if((Z|0)==11){Z=0;Vi(f)}if(b[160638]&3264){switch(q|0){case 122:break;case 121:{k=c[v>>2]|0;g=c[c[k>>2]>>2]|0;if(g|0?(c[k>>2]=g,A=c[g+12>>2]|0,B=g+16|0,A>>>0<(c[B>>2]|0)>>>0):0){i=g+8|0;j=k+8|0;g=A;h=0;while(1){q=(c[j>>2]|0)+g|0;a[q>>0]=a[q>>0]^a[(c[i>>2]|0)+h>>0];g=g+1|0;if(g>>>0>=(c[B>>2]|0)>>>0)break;else h=h+1|0}}PQ(c[k+12>>2]|0,c[k+8>>2]|0,c[k+4>>2]|0)|0;break b}default:break b}m=c[v>>2]|0;g=c[m>>2]|0;if(c[g+4>>2]|0){h=c[g+12>>2]|0;k=g+16|0;if(h>>>0<(c[k>>2]|0)>>>0){i=g+8|0;j=m+8|0;g=h;h=0;while(1){q=(c[j>>2]|0)+g|0;a[q>>0]=a[q>>0]^a[(c[i>>2]|0)+h>>0];g=g+1|0;if(g>>>0>=(c[k>>2]|0)>>>0)break;else h=h+1|0}g=c[m>>2]|0}c[m>>2]=c[g+4>>2]}PQ(c[m+12>>2]|0,c[m+8>>2]|0,c[m+4>>2]|0)|0;break b}if(((c[N>>2]|0)==2?(F=c[x>>2]|0,F|0):0)?(G=c[y>>2]|0,G|0):0){if((q|0)<1073741904){if((q|0)<1073741903){switch(q|0){case 127:break;default:break b}Xi(f);break b}switch(q|0){case 1073741903:break;default:break b}g=c[D>>2]|0;if((g+F|0)<(d[C>>0]|0))c[D>>2]=g+1;Wi(f);break b}switch(q|0){case 1073741906:{g=c[z>>2]|0;if((g|0)>0)c[z>>2]=g+-1;Wi(f);break b}case 1073741905:{g=c[z>>2]|0;if((g+G|0)<(d[C>>0]|0))c[z>>2]=g+1;Wi(f);break b}case 1073741904:{g=c[D>>2]|0;if((g|0)>0)c[D>>2]=g+-1;Wi(f);break b}default:break b}}d:do if((q|0)<1073741904){if((q|0)<127){switch(q|0){case 9:break;default:break d}o=b[r>>1]|0;b[r>>1]=((o&65535)<256?256:65280)+(o&65535);o=u;p=o+16|0;do{a[o>>0]=0;o=o+1|0}while((o|0)<(p|0));break}if((q|0)>=1073741903){switch(q|0){case 1073741903:break;default:break d}g=b[r>>1]|0;if((g<<3&120|0)>=(128-(d[C>>0]|0)|0))break;b[r>>1]=g+1<<16>>16;break}switch(q|0){case 127:break;default:break d}g=b[r>>1]|0;m=a[C>>0]|0;n=g<<3&120;g=(g&65535)>>>1&120;p=m&255;o=n+p|0;p=g+p|0;if(m<<24>>24)do{k=g+128|0;j=n;do{m=(e[r>>1]|0)>255?k:g;ba=(((m|0)%8|0)<<3)+((j|0)%8|0)|0;m=(ba>>>1)+((c[s>>2]|0)+((((m|0)/8|0)<<4)+((j|0)/8|0)<<5))|0;h=d[m>>0]|0;i=d[w>>0]|0;if(!(ba&1)){ba=h&240;a[m>>0]=ba;h=i&15;i=ba}else{ba=h&15;a[m>>0]=ba;h=i<<4;i=ba}a[m>>0]=h|i;j=j+1|0}while((j|0)<(o|0));g=g+1|0}while((g|0)<(p|0));o=u;p=o+16|0;do{a[o>>0]=0;o=o+1|0}while((o|0)<(p|0));Tj(c[v>>2]|0)|0}else switch(q|0){case 1073741906:{g=b[r>>1]|0;if(!(g&240))break d;b[r>>1]=(g&65535)+65520;break d}case 1073741905:{g=b[r>>1]|0;if(((g&65535)>>>1&120|0)>=(128-(d[C>>0]|0)|0))break d;b[r>>1]=(g&65535)+16;break d}case 1073741904:{g=b[r>>1]|0;if(!(g&15))break d;b[r>>1]=g+-1<<16>>16;break d}default:break d}while(0);if(!(a[E>>0]|0)){switch(q|0){case 52:case 51:case 50:case 49:{g=q+-49|0;c[N>>2]=g;break}case 56:case 55:case 54:case 53:{vg[c[2e3+(q+-53<<2)>>2]&511](f);Z=65;break}default:Z=65}if((Z|0)==65){Z=0;g=c[N>>2]|0}if(!g)switch(q|0){case 91:{g=a[t>>0]|0;if((g&255)<=1)break b;a[t>>0]=g+-1<<24>>24;break b}case 93:{g=a[t>>0]|0;if((g&255)>=4)break b;a[t>>0]=g+1<<24>>24;break b}default:break b}}break}case 1027:{q=a[C>>0]|0;ba=q&255;g=(c[g+20>>2]|0)>0?ba<<((q&255)<64&1):ba>>>((q&255)>8&1);if((ba|0)!=(g|0)){a[C>>0]=g;q=b[r>>1]|0;ba=q<<3&120;o=(q&65535)>>>1&120;p=128-(g&255)|0;b[r>>1]=(q&65535)-(q&255)+((((ba|0)>(p|0)?p:ba)|0)/8|0)+(((((o|0)>(p|0)?p:o)|0)/8|0)<<4);o=u;p=o+16|0;do{a[o>>0]=0;o=o+1|0}while((o|0)<(p|0))}break}default:{}}while(0);g=eh()|0;if(!g)break a}}while(0);ba=c[f>>2]|0;Bg[c[ba+2439672>>2]&255](ba,7);if(!(((c[N>>2]|0)==2?(c[f+28>>2]|0)!=0:0)?(c[f+32>>2]|0)!=0:0)){a[O>>0]=a[84784]|0;a[O+1>>0]=a[84785]|0;a[O+2>>0]=a[84786]|0;a[O+3>>0]=a[84787]|0;a[O+4>>0]=a[84788]|0;c[H>>2]=e[f+12>>1];MN(O,85132,H)|0;ba=c[f>>2]|0;lg[c[ba+2439660>>2]&31](ba,O,44,11,0)|0;ba=c[f>>2]|0;lg[c[ba+2439660>>2]&31](ba,O,44,10,15)|0}q=c[f>>2]|0;Gg[c[q+2439692>>2]&7](q,23,19,66,66,15);q=c[f>>2]|0;Gg[c[q+2439688>>2]&7](q,24,20,64,64,0);q=c[f>>2]|0;Gg[c[q+2439688>>2]&7](q,23,85,66,1,0);q=f+18|0;if(!(a[q>>0]|0)){g=c[N>>2]|0;if(!g){if(((c[48]|0)+-9|0)>>>0<5?((c[49]|0)+-40|0)>>>0<24:0){c[68]=11;XP(804,84789,39)|0;if(((a[204]|0)!=0?((c[52]|0)+-9|0)>>>0<5:0)?((c[53]|0)+-40|0)>>>0<24:0){a[f+17>>0]=4-(((c[49]|0)+-40|0)/6|0);g=15}else g=15}else g=7;Z=c[f>>2]|0;Gg[c[Z+2439688>>2]&7](Z,10,40,3,20,0);Z=c[f>>2]|0;Gg[c[Z+2439688>>2]&7](Z,9,40,5,5,0);Z=c[f>>2]|0;Gg[c[Z+2439688>>2]&7](Z,15,42,4,1,0);Z=c[f>>2]|0;Gg[c[Z+2439688>>2]&7](Z,9,46,5,5,0);Z=c[f>>2]|0;Gg[c[Z+2439688>>2]&7](Z,15,48,3,1,0);Z=c[f>>2]|0;Gg[c[Z+2439688>>2]&7](Z,9,52,5,5,0);Z=c[f>>2]|0;Gg[c[Z+2439688>>2]&7](Z,15,54,2,1,0);Z=c[f>>2]|0;Gg[c[Z+2439688>>2]&7](Z,9,58,5,5,0);Z=c[f>>2]|0;Gg[c[Z+2439688>>2]&7](Z,15,60,1,1,0);Z=c[f>>2]|0;Gg[c[Z+2439688>>2]&7](Z,11,41,1,21,g);Z=(4-(d[f+17>>0]|0)|0)*6|0;ba=c[f>>2]|0;Gg[c[ba+2439688>>2]&7](ba,9,Z+40|0,5,5,0);ba=c[f>>2]|0;Gg[c[ba+2439688>>2]&7](ba,10,Z+41|0,3,3,g);Z=87}}else Z=87;if((Z|0)==87)g=c[N>>2]|0;if(((g|0)==2?c[f+28>>2]|0:0)?c[f+32>>2]|0:0){j=0;do{g=c[48]|0;k=c[2016+(j<<4)>>2]|0;if((((g|0)>=(k|0)?(I=(c[2016+(j<<4)+8>>2]|0)+k|0,(g|0)<(I|0)):0)?(J=c[49]|0,K=c[2016+(j<<4)+4>>2]|0,(J|0)>=(K|0)):0)?(L=(c[2016+(j<<4)+12>>2]|0)+K|0,(J|0)<(L|0)):0){c[68]=11;if((a[204]|0)!=0?(ba=c[52]|0,(ba|0)>=(k|0)&(ba|0)<(I|0)):0){g=c[53]|0;g=(g|0)<(L|0)&(g|0)>=(K|0)}else g=0;if(((((a[205]|0)!=0?(ba=c[52]|0,(ba|0)>=(k|0)&(ba|0)<(I|0)):0)?(ba=c[53]|0,(ba|0)>=(K|0)&(ba|0)<(L|0)):0)?(ba=c[54]|0,(ba|0)>=(k|0)&(ba|0)<(I|0)):0)?(ba=c[55]|0,(ba|0)>=(K|0)&(ba|0)<(L|0)):0){a[205]=0;vg[c[2080+(j<<2)>>2]&511](f)}}else g=0;h=c[2016+(j<<4)+4>>2]|0;i=84800+(j<<3)|0;Xg(k,h+1|0,i,g?15:0);if(!g)Xg(k,h,i,15);j=j+1|0}while((j|0)!=4)}e:do if(!(a[q>>0]|0)){n=f+20|0;i=0;do{g=i*11|0;j=g+12|0;h=c[48]|0;if(((h|0)>=(j|0)?(M=g+20|0,(h|0)<(M|0)):0)?(c[49]&-8|0)==96:0){c[68]=11;XP(804,c[2128+(i<<2)>>2]|0,39)|0;if(((((a[205]|0)!=0?(ba=c[52]|0,(ba|0)>=(j|0)&(ba|0)<(M|0)):0)?(c[53]&-8|0)==96:0)?(ba=c[54]|0,(ba|0)>=(j|0)&(ba|0)<(M|0)):0)?(c[55]&-8|0)==96:0){a[205]=0;c[N>>2]=i;o=n;p=o+16|0;do{a[o>>0]=0;o=o+1|0}while((o|0)<(p|0));g=10}else g=10}else g=15;if((i|0)==(c[N>>2]|0)){Xg(j,92,84939,0);Xg(j,91,84939,15);Xg(j,97,84947+(i<<3)|0,g)}else{ba=84947+(i<<3)|0;Xg(j,97,ba,0);Xg(j,96,ba,g)}i=i+1|0}while((i|0)!=4);j=f+28|0;k=f+32|0;i=0;do{g=i*11|0;m=g+57|0;h=c[48]|0;f:do if(((h|0)>=(m|0)?(V=g+65|0,(h|0)<(V|0)):0)?(c[49]&-8|0)==96:0){c[68]=11;XP(804,c[2096+(i<<2)>>2]|0,39)|0;if((a[204]|0)!=0?(ba=c[52]|0,(ba|0)>=(m|0)&(ba|0)<(V|0)):0)h=(c[53]&-8|0)==96;else h=0;g:do if(((((a[205]|0)!=0?(ba=c[52]|0,(ba|0)>=(m|0)&(ba|0)<(V|0)):0)?(c[53]&-8|0)==96:0)?(ba=c[54]|0,(ba|0)>=(m|0)&(ba|0)<(V|0)):0)?(c[55]&-8|0)==96:0){a[205]=0;do if((c[N>>2]|0)==2){if(!(c[j>>2]|0))break;if(!(c[k>>2]|0))break;vg[c[2112+(i<<2)>>2]&511](f);g=84907+(i<<3)|0;if(h)break g;else{h=10;Z=206;break f}}while(0);vg[c[2e3+(i<<2)>>2]&511](f);o=n;p=o+16|0;do{a[o>>0]=0;o=o+1|0}while((o|0)<(p|0));g=84907+(i<<3)|0;if(!h){h=10;Z=206;break f}}else Z=204;while(0);if((Z|0)==204){Z=0;g=84907+(i<<3)|0;if(!h){h=10;Z=206;break}}Xg(m,97,g,10)}else Z=190;while(0);if((Z|0)==190){h=15;g=84907+(i<<3)|0;Z=206}if((Z|0)==206){Z=0;Xg(m,97,g,0);Xg(m,96,g,h)}i=i+1|0}while((i|0)!=4)}else{p=f+14|0;o=(c[f>>2]|0)+1129664+((d[p>>0]|0)*3|0)|0;n=0;do{j=n*6|0;g=j+91|0;k=o+n|0;i=j+89|0;h=c[48]|0;if((((((h+-24|0)>>>0<64?(P=c[49]|0,(P|0)>=(i|0)):0)?(Q=j+94|0,(P|0)<(Q|0)):0)?(c[68]=11,a[204]|0):0)?((c[52]|0)+-24|0)>>>0<64:0)?(ba=c[53]|0,(ba|0)>=(i|0)&(ba|0)<(Q|0)):0)a[k>>0]=((h*255|0)+-6120|0)/63|0;ba=c[f>>2]|0;Gg[c[ba+2439688>>2]&7](ba,24,j+92|0,64,1,0);ba=c[f>>2]|0;Gg[c[ba+2439688>>2]&7](ba,24,g,64,1,15);ba=((((d[k>>0]|0)*63|0)>>>0)/255|0)+23|0;Xg(ba,g,84875,0);m=j+90|0;Xg(ba,m,84875,15);a[O>>0]=a[84883]|0;a[O+1>>0]=a[84884]|0;a[O+2>>0]=a[84885]|0;c[W>>2]=d[k>>0];MN(O,84886,W)|0;ba=c[f>>2]|0;lg[c[ba+2439660>>2]&31](ba,O,6,i,3)|0;do if(((c[48]&-2|0)==20?(R=c[49]|0,(R|0)>=(m|0)):0)?(S=j+93|0,(R|0)<(S|0)):0){c[68]=11;if((a[204]|0)!=0?(c[52]&-2|0)==20:0){h=c[53]|0;h=(h|0)<(S|0)&(h|0)>=(m|0)}else h=0;if(((((a[205]|0)!=0?(c[52]&-2|0)==20:0)?(ba=c[53]|0,(ba|0)>=(m|0)&(ba|0)<(S|0)):0)?(c[54]&-2|0)==20:0)?(ba=c[55]|0,(ba|0)>=(m|0)&(ba|0)<(S|0)):0){a[205]=0;a[k>>0]=(a[k>>0]|0)+-1<<24>>24;g=j+91|0;if(!h){Z=167;break}}else{g=j+91|0;if(!h){Z=167;break}}Xg(20,g,84891,15)}else Z=155;while(0);if((Z|0)==155){g=j+91|0;Z=167}if((Z|0)==167){Z=0;Xg(20,g,84891,0);Xg(20,m,84891,15)}do if(((c[48]&-2|0)==90?(T=c[49]|0,(T|0)>=(m|0)):0)?(U=j+93|0,(T|0)<(U|0)):0){c[68]=11;if((a[204]|0)!=0?(c[52]&-2|0)==90:0){h=c[53]|0;h=(h|0)<(U|0)&(h|0)>=(m|0)}else h=0;if(((((a[205]|0)!=0?(c[52]&-2|0)==90:0)?(ba=c[53]|0,(ba|0)>=(m|0)&(ba|0)<(U|0)):0)?(c[54]&-2|0)==90:0)?(ba=c[55]|0,(ba|0)>=(m|0)&(ba|0)<(U|0)):0){a[205]=0;a[k>>0]=(a[k>>0]|0)+1<<24>>24;g=j+91|0;if(!h){Z=183;break}}else{g=j+91|0;if(!h){Z=183;break}}Xg(90,g,84899,15)}else Z=171;while(0);if((Z|0)==171){g=j+91|0;Z=183}if((Z|0)==183){Z=0;Xg(90,g,84899,0);Xg(90,m,84899,15)}n=n+1|0}while((n|0)!=3);do if(((c[48]|0)+-6|0)>>>0<5?((c[49]|0)+-117|0)>>>0<5:0){c[68]=11;XP(804,84832,39)|0;if((a[204]|0)!=0?((c[52]|0)+-6|0)>>>0<5:0)k=((c[53]|0)+-117|0)>>>0<5;else k=0;if(((((a[205]|0)!=0?((c[52]|0)+-6|0)>>>0<5:0)?((c[53]|0)+-117|0)>>>0<5:0)?((c[54]|0)+-6|0)>>>0<5:0)?((c[55]|0)+-117|0)>>>0<5:0){a[205]=0;i=(c[f>>2]|0)+1129664|0;j=eN(97)|0;if(j|0){g=0;h=j;while(1){c[X>>2]=d[i+g>>0];MN(h,83632,X)|0;g=g+1|0;if((g|0)==48)break;else h=h+2|0}h=c[80021]|0;do if(h){g=c[h+240>>2]|0;if(!g){ba=h+288|0;fN(c[ba>>2]|0);c[ba>>2]=nP(j)|0;break}else{hg[g&63](h,j)|0;break}}else mE(310358,Y);while(0);fN(j)}if(!k){g=10;Z=130;break}}else Z=128;if((Z|0)==128?!k:0){g=10;Z=130;break}Xg(6,118,84845,10)}else{g=15;Z=130}while(0);if((Z|0)==130){Xg(6,118,84845,0);Xg(6,117,84845,g)}do if(((c[48]|0)+-14|0)>>>0<5?((c[49]|0)+-117|0)>>>0<5:0){c[68]=11;XP(804,84853,39)|0;if((a[204]|0)!=0?((c[52]|0)+-14|0)>>>0<5:0)g=((c[53]|0)+-117|0)>>>0<5;else g=0;if(((((a[205]|0)!=0?((c[52]|0)+-14|0)>>>0<5:0)?((c[53]|0)+-117|0)>>>0<5:0)?((c[54]|0)+-14|0)>>>0<5:0)?((c[55]|0)+-117|0)>>>0<5:0){a[205]=0;Ug((c[f>>2]|0)+1129664|0,48,0,1)|0;Ug((c[f>>2]|0)+1129664+((d[p>>0]|0)*3|0)|0,3,0,1)|0;if(!g){g=10;break}}else Z=142;if((Z|0)==142?!g:0){g=10;break}Xg(14,118,84867,10);break e}else g=15;while(0);Xg(14,118,84867,0);Xg(14,117,84867,g)}while(0);g=c[48]|0;if((g+-24|0)>>>0<63?(_=c[49]|0,(_+-112|0)>>>0<15):0){c[68]=11;if((a[204]|0)!=0?((c[52]|0)+-24|0)>>>0<63:0)h=((c[53]|0)+-112|0)>>>0<15;else h=0;if((a[244]|0)!=0?((c[62]|0)+-24|0)>>>0<63:0)i=((c[63]|0)+-112|0)>>>0<15;else i=0;if(h|i){g=(((_+-112|0)/8|0)<<3)+((g+-24|0)/8|0)|0;if(h)a[f+14>>0]=g;if(i)a[f+15>>0]=g}}g=c[f>>2]|0;Gg[c[g+2439688>>2]&7](g,23,111,65,17,15);g=c[f>>2]|0;Gg[c[g+2439688>>2]&7](g,23,128,65,1,0);g=a[f+14>>0]|0;if((g&255)>7){ba=c[f>>2]|0;Gg[c[ba+2439688>>2]&7](ba,(g<<3&56)+22&255,129,11,1,0)}if(((c[48]|0)+-91|0)>>>0<8?((c[49]|0)+-115|0)>>>0<8:0){c[68]=11;XP(804,84979,39)|0;if((a[204]|0)!=0?((c[52]|0)+-91|0)>>>0<8:0)g=((c[53]|0)+-115|0)>>>0<8;else g=0;if(((((a[205]|0)!=0?((c[52]|0)+-91|0)>>>0<8:0)?((c[53]|0)+-115|0)>>>0<8:0)?((c[54]|0)+-91|0)>>>0<8:0)?((c[55]|0)+-115|0)>>>0<8:0){a[205]=0;a[q>>0]=a[q>>0]^1;h=10}else h=10}else{h=15;g=0}if(g|(a[q>>0]|0)!=0)Xg(91,116,84992,h);else{Xg(91,116,84992,0);Xg(91,115,84992,h)}g=c[f>>2]|0;Gg[c[g+2439692>>2]&7](g,110,6,130,130,15);g=c[f>>2]|0;Gg[c[g+2439688>>2]&7](g,111,7,128,128,0);g=c[48]|0;if(((((g+-111|0)>>>0<128?($=c[49]|0,($+-7|0)>>>0<128):0)?(c[68]=11,a[204]|0):0)?((c[52]|0)+-111|0)>>>0<128:0)?((c[53]|0)+-7|0)>>>0<128:0){ba=d[f+16>>0]|0;p=(ba+-8|0)/-2|0;o=g+-111+p|0;p=$+-7+p|0;ba=128-ba|0;$=(o|0)>0?o:0;p=(p|0)>0?p:0;o=f+12|0;_=b[o>>1]|0;b[o>>1]=(_&65535)-(_&255)+(((($|0)>(ba|0)?ba:$)|0)/8|0)+(((((p|0)>(ba|0)?ba:p)|0)/8|0)<<4);o=f+20|0;p=o+16|0;do{a[o>>0]=0;o=o+1|0}while((o|0)<(p|0))}ba=c[f>>2]|0;Gg[c[ba+2439688>>2]&7](ba,0,0,240,7,15);if((((((c[48]|0)+-182|0)>>>0<23?((c[49]|0)+-1|0)>>>0<5:0)?(c[68]=11,XP(804,85e3,39)|0,a[204]|0):0)?((c[52]|0)+-182|0)>>>0<23:0)?((c[53]|0)+-1|0)>>>0<5:0){g=c[48]|0;if((g+-177|0)>>>0<11)g=8;else{h=1;g=(g+-182|0)/6|0;while(1){g=g+-1|0;if(!g)break;else h=h<<1}g=h<<4}h=f+16|0;if((d[h>>0]|0)!=(g|0)){a[h>>0]=g;o=f+12|0;_=b[o>>1]|0;$=_<<3&120;p=(_&65535)>>>1&120;ba=128-(g&248)|0;b[o>>1]=(_&65535)-(_&255)+(((($|0)>(ba|0)?ba:$)|0)/8|0)+(((((p|0)>(ba|0)?ba:p)|0)/8|0)<<4);o=f+20|0;p=o+16|0;do{a[o>>0]=0;o=o+1|0}while((o|0)<(p|0))}}g=c[f>>2]|0;Gg[c[g+2439688>>2]&7](g,182,1,5,5,0);g=c[f>>2]|0;Gg[c[g+2439688>>2]&7](g,188,1,5,5,0);g=c[f>>2]|0;Gg[c[g+2439688>>2]&7](g,194,1,5,5,0);g=c[f>>2]|0;Gg[c[g+2439688>>2]&7](g,200,1,5,5,0);g=c[f>>2]|0;Gg[c[g+2439688>>2]&7](g,182,2,23,3,0);g=c[f>>2]|0;Gg[c[g+2439688>>2]&7](g,183,3,21,1,15);g=0;h=(d[f+16>>0]|0)>>>3&255;while(1){h=h>>1;if(!h)break;else g=g+1|0}h=c[f>>2]|0;g=g*6|0;Gg[c[h+2439688>>2]&7](h,g+182|0,1,5,5,0);h=c[f>>2]|0;Gg[c[h+2439688>>2]&7](h,(g|1)+182|0,2,3,3,15);g=f+12|0;h=(e[g>>1]|0)<256;ba=c[f>>2]|0;Gg[c[ba+2439688>>2]&7](ba,226,0,13,7,h?0:7);ba=c[f>>2]|0;lg[c[ba+2439664>>2]&31](ba,88083,227,1,15)|0;if(((((c[48]|0)+-226|0)>>>0<13&(c[49]|0)>>>0<7?(c[68]=11,XP(804,85012,39)|0,!(h|(a[205]|0)==0)):0)?((c[52]|0)+-226|0)>>>0<13&(c[53]|0)>>>0<7:0)?((c[54]|0)+-226|0)>>>0<13&(c[55]|0)>>>0<7:0){a[205]=0;b[g>>1]=(e[g>>1]|0)+65280;o=f+20|0;p=o+16|0;do{a[o>>0]=0;o=o+1|0}while((o|0)<(p|0))}ba=c[f>>2]|0;Gg[c[ba+2439688>>2]&7](ba,212,0,13,7,h?7:0);ba=c[f>>2]|0;lg[c[ba+2439664>>2]&31](ba,85024,213,1,15)|0;if(!(((c[48]|0)+-212|0)>>>0<13&(c[49]|0)>>>0<7)){ba=c[f>>2]|0;Vg(ba,7);ba=f+8|0;f=c[ba>>2]|0;f=f+1|0;c[ba>>2]=f;l=aa;return}c[68]=11;XP(804,85027,39)|0;if((a[205]|0)==0|h^1){ba=c[f>>2]|0;Vg(ba,7);ba=f+8|0;f=c[ba>>2]|0;f=f+1|0;c[ba>>2]=f;l=aa;return}if(!(((c[52]|0)+-212|0)>>>0<13&(c[53]|0)>>>0<7)){ba=c[f>>2]|0;Vg(ba,7);ba=f+8|0;f=c[ba>>2]|0;f=f+1|0;c[ba>>2]=f;l=aa;return}if(!(((c[54]|0)+-212|0)>>>0<13&(c[55]|0)>>>0<7)){ba=c[f>>2]|0;Vg(ba,7);ba=f+8|0;f=c[ba>>2]|0;f=f+1|0;c[ba>>2]=f;l=aa;return}a[205]=0;b[g>>1]=(e[g>>1]|0)+256;o=f+20|0;p=o+16|0;do{a[o>>0]=0;o=o+1|0}while((o|0)<(p|0));ba=c[f>>2]|0;Vg(ba,7);ba=f+8|0;f=c[ba>>2]|0;f=f+1|0;c[ba>>2]=f;l=aa;return}function Qi(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;switch(d|0){case 0:{Ti(b);return}case 1:{Ui(b);return}case 2:{Vi(b);return}case 3:{h=c[b+60>>2]|0;b=c[h>>2]|0;if(c[b+4>>2]|0){d=c[b+12>>2]|0;g=b+16|0;if(d>>>0<(c[g>>2]|0)>>>0){e=b+8|0;f=h+8|0;b=d;d=0;while(1){i=(c[f>>2]|0)+b|0;a[i>>0]=a[i>>0]^a[(c[e>>2]|0)+d>>0];b=b+1|0;if(b>>>0>=(c[g>>2]|0)>>>0)break;else d=d+1|0}b=c[h>>2]|0}c[h>>2]=c[b+4>>2]}PQ(c[h+12>>2]|0,c[h+8>>2]|0,c[h+4>>2]|0)|0;return}case 4:{g=c[b+60>>2]|0;b=c[c[g>>2]>>2]|0;if(b|0?(c[g>>2]=b,h=c[b+12>>2]|0,i=b+16|0,h>>>0<(c[i>>2]|0)>>>0):0){e=b+8|0;f=g+8|0;b=h;d=0;while(1){h=(c[f>>2]|0)+b|0;a[h>>0]=a[h>>0]^a[(c[e>>2]|0)+d>>0];b=b+1|0;if(b>>>0>=(c[i>>2]|0)>>>0)break;else d=d+1|0}}PQ(c[g+12>>2]|0,c[g+8>>2]|0,c[g+4>>2]|0)|0;return}default:return}}function Ri(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;t=g+18|0;if(a[t>>0]|0){x=c[g>>2]|0;A=g+14|0;y=a[A>>0]|0;z=x+1129664+((y&255)*3|0)|0;Eg[c[x+2439676>>2]&63](x,((((d[z>>0]|0)*63|0)>>>0)/255|0)+24|0,91,y);y=c[g>>2]|0;Eg[c[y+2439676>>2]&63](y,((((d[z+1>>0]|0)*63|0)>>>0)/255|0)+24|0,97,a[A>>0]|0);y=c[g>>2]|0;Eg[c[y+2439676>>2]&63](y,((((d[z+2>>0]|0)*63|0)>>>0)/255|0)+24|0,103,a[A>>0]|0)}z=g+12|0;x=b[z>>1]|0;A=g+16|0;s=a[A>>0]|0;w=x<<3&120;x=(x&65535)>>>1&120;y=s&255;l=w+y|0;m=x+y|0;y=64/(y>>>0)|0;if(s<<24>>24){k=g+4|0;f=x;h=20;while(1){n=f+128|0;i=24;j=w;while(1){q=c[g>>2]|0;s=(e[z>>1]|0)>255?n:f;r=(((s|0)%8|0)<<3)+((j|0)%8|0)|0;s=d[(r>>>1)+((c[k>>2]|0)+((((s|0)/8|0)<<4)+((j|0)/8|0)<<5))>>0]|0;Gg[c[q+2439688>>2]&7](q,i,h,y,y,(r&1|0?s>>>4:s&15)&255);j=j+1|0;if((j|0)>=(l|0))break;else i=i+y|0}f=f+1|0;if((f|0)>=(m|0))break;else h=h+y|0}}q=g+56|0;if(((c[q>>2]|0)==2?(o=c[g+28>>2]|0,o|0):0)?(p=c[g+32>>2]|0,p|0):0){r=(O(c[g+20>>2]|0,y)|0)+23|0;s=(O(c[g+24>>2]|0,y)|0)+19|0;o=O(o,y)|0;m=o+2|0;k=O(p,y)|0;n=k+2|0;f=((c[g+8>>2]|0)>>>0)/10|0;j=r+m|0;h=f+1|0;if((o|0)>-2){i=r;while(1){p=c[g>>2]|0;Eg[c[p+2439676>>2]&63](p,i,s,(f|0)%3|0|0?15:0);i=i+1|0;f=h+1|0;if((i|0)>=(j|0))break;else{p=h;h=f;f=p}}}else f=h;l=s+n|0;i=f+1|0;j=j+-1|0;if((k|0)>-2){h=s;while(1){p=c[g>>2]|0;Eg[c[p+2439676>>2]&63](p,j,h,(f|0)%3|0|0?15:0);h=h+1|0;f=i+1|0;if((h|0)>=(l|0)){i=f;break}else{p=i;i=f;f=p}}}f=i+1|0;h=l+-1|0;if((m|0)>=1)while(1){p=c[g>>2]|0;Eg[c[p+2439676>>2]&63](p,j,h,(i|0)%3|0|0?15:0);i=f+1|0;if((j|0)>(r|0)){p=f;j=j+-1|0;f=i;i=p}else{f=i;break}}if((n|0)>=1)while(1){p=c[g>>2]|0;Eg[c[p+2439676>>2]&63](p,r,h,(f|0)%3|0|0?15:0);if((h|0)>(s|0)){h=h+-1|0;f=f+1|0}else break}}a:do if(!(a[t>>0]|0))switch(c[q>>2]|0){case 0:{j=64/((d[A>>0]|0)>>>0)|0;f=c[48]|0;if((f+-24|0)>>>0>=64)break a;h=c[49]|0;if((h+-20|0)>>>0>=64)break a;c[68]=11;k=g+17|0;v=O(d[k>>0]|0,j)|0;i=(v-j|0)/-2|0;f=f+-24+i|0;i=h+-20+i|0;f=f-((f|0)%(j|0)|0)|0;i=i-((i|0)%(j|0)|0)|0;f=(f|0)>0?f:0;i=(i|0)>0?i:0;u=64-v|0;f=(f+v|0)>>>0>63?u:f;i=(i+v|0)>>>0>63?u:i;u=c[g>>2]|0;Gg[c[u+2439692>>2]&7](u,f+24|0,i+20|0,v,v,0);u=c[g>>2]|0;v=v+2|0;Gg[c[u+2439692>>2]&7](u,f+23|0,i+19|0,v,v,15);if((a[204]|0)!=0?((c[52]|0)+-24|0)>>>0<64:0)l=((c[53]|0)+-20|0)>>>0<64;else l=0;if((a[244]|0)!=0?((c[62]|0)+-24|0)>>>0<64:0)h=((c[63]|0)+-20|0)>>>0<64;else h=0;if(!(l|h))break a;p=((f|0)/(j|0)|0)+w|0;o=((i|0)/(j|0)|0)+x|0;v=a[k>>0]|0;n=v&255;if(v<<24>>24){m=g+4|0;j=d[(l?g+14|0:g+15|0)>>0]|0;i=j&15;j=j<<4;h=0;do{k=o+h|0;l=k+128|0;f=0;do{v=p+f|0;t=(e[z>>1]|0)>255?l:k;u=(((t|0)%8|0)<<3)+((v|0)%8|0)|0;v=(u>>>1)+((c[m>>2]|0)+((((t|0)/8|0)<<4)+((v|0)/8|0)<<5))|0;u=(u&1|0)==0;a[v>>0]=(u?i:j)|d[v>>0]&(u?240:15);f=f+1|0}while((f|0)!=(n|0));h=h+1|0}while((h|0)!=(n|0))}Tj(c[g+60>>2]|0)|0;break a}case 1:{j=64/((d[A>>0]|0)>>>0)|0;f=c[48]|0;if((f+-24|0)>>>0>=64)break a;h=c[49]|0;if((h+-20|0)>>>0>=64)break a;c[68]=11;i=f+-24|0;f=h+-20|0;t=i-((i|0)%(j|0)|0)|0;u=f-((f|0)%(j|0)|0)|0;s=c[g>>2]|0;Gg[c[s+2439692>>2]&7](s,t+24|0,u+20|0,j,j,0);s=c[g>>2]|0;v=j+2|0;Gg[c[s+2439692>>2]&7](s,t+23|0,u+19|0,v,v,15);if((a[204]|0?((c[52]|0)+-24|0)>>>0<64:0)?((c[53]|0)+-20|0)>>>0<64:0){v=((i|0)/(j|0)|0)+w|0;t=((f|0)/(j|0)|0)+x|0;t=(e[z>>1]|0)>255?t+128|0:t;u=(((t|0)%8|0)<<3)+((v|0)%8|0)|0;v=d[(u>>>1)+((c[g+4>>2]|0)+((((t|0)/8|0)<<4)+((v|0)/8|0)<<5))>>0]|0;a[g+14>>0]=u&1|0?v>>>4:v&15}if(!(a[244]|0))break a;if(((c[62]|0)+-24|0)>>>0>=64)break a;if(((c[63]|0)+-20|0)>>>0>=64)break a;v=((i|0)/(j|0)|0)+w|0;t=((f|0)/(j|0)|0)+x|0;t=(e[z>>1]|0)>255?t+128|0:t;u=(((t|0)%8|0)<<3)+((v|0)%8|0)|0;v=d[(u>>>1)+((c[g+4>>2]|0)+((((t|0)/8|0)<<4)+((v|0)/8|0)<<5))>>0]|0;a[g+15>>0]=u&1|0?v>>>4:v&15;break a}case 2:{l=64/((d[A>>0]|0)>>>0)|0;f=c[48]|0;if((f+-24|0)>>>0>=64)break a;h=c[49]|0;if((h+-20|0)>>>0>=64)break a;c[68]=11;j=f+-24|0;h=h+-20|0;r=j-((j|0)%(l|0)|0)|0;s=h-((h|0)%(l|0)|0)|0;q=c[g>>2]|0;Gg[c[q+2439692>>2]&7](q,r+24|0,s+20|0,l,l,0);q=c[g>>2]|0;t=l+2|0;Gg[c[q+2439692>>2]&7](q,r+23|0,s+19|0,t,t,15);do if(((a[204]|0)!=0?((c[52]|0)+-24|0)>>>0<64:0)?(u=c[53]|0,(u|0)>=20):0){f=g+44|0;k=(a[f>>0]|0)!=0;if((u|0)>=84)if(k)break;else break a;i=(h|0)/(l|0)|0;h=(j|0)/(l|0)|0;if(k){t=c[g+36>>2]|0;s=(h|0)<(t|0)?h:t;v=c[g+40>>2]|0;u=(i|0)<(v|0)?i:v;c[g+20>>2]=s;c[g+24>>2]=u;c[g+28>>2]=1-s+((h|0)>(t|0)?h:t);c[g+32>>2]=1-u+((i|0)>(v|0)?i:v);break a}else{a[f>>0]=1;c[g+36>>2]=h;c[g+40>>2]=i;c[g+20>>2]=h;c[g+24>>2]=i;c[g+28>>2]=1;c[g+32>>2]=1;break a}}else v=55;while(0);if((v|0)==55){f=g+44|0;if(!(a[f>>0]|0))break a}h=b[z>>1]|0;v=a[A>>0]|0;m=h<<3&120;h=(h&65535)>>>1&120;o=v&255;n=m+o|0;o=h+o|0;if(v<<24>>24){l=g+4|0;p=g+48|0;i=0;do{k=h+128|0;j=m;do{u=(e[z>>1]|0)>255?k:h;t=(((u|0)%8|0)<<3)+((j|0)%8|0)|0;u=d[(t>>>1)+((c[l>>2]|0)+((((u|0)/8|0)<<4)+((j|0)/8|0)<<5))>>0]|0;v=i;i=i+1|0;a[(c[p>>2]|0)+v>>0]=t&1|0?u>>>4:u&15;j=j+1|0}while((j|0)<(n|0));h=h+1|0}while((h|0)<(o|0))}o=g+52|0;RQ(c[o>>2]|0,0,4096)|0;p=g+24|0;q=g+32|0;h=c[q>>2]|0;if((h|0)>0){k=c[p>>2]|0;r=g+20|0;s=g+28|0;t=g+48|0;u=g+15|0;l=0;n=k;j=c[s>>2]|0;i=c[r>>2]|0;while(1){if((j|0)>0){h=l;do{l=(c[t>>2]|0)+((O(d[A>>0]|0,n)|0)+i)|0;j=h;h=h+1|0;a[(c[o>>2]|0)+j>>0]=a[l>>0]|0;a[l>>0]=a[u>>0]|0;i=i+1|0;l=c[r>>2]|0;j=c[s>>2]|0}while((i|0)<(j+l|0));m=h;k=c[p>>2]|0;h=c[q>>2]|0;i=l}else m=l;n=n+1|0;if((n|0)>=(k+h|0))break;else l=m}}a[f>>0]=0;break a}case 3:{i=64/((d[A>>0]|0)>>>0)|0;f=c[48]|0;if((f+-24|0)>>>0>=64)break a;h=c[49]|0;if((h+-20|0)>>>0>=64)break a;c[68]=11;f=f+-24|0;h=h+-20|0;s=f-((f|0)%(i|0)|0)|0;t=h-((h|0)%(i|0)|0)|0;r=c[g>>2]|0;Gg[c[r+2439692>>2]&7](r,s+24|0,t+20|0,i,i,0);r=c[g>>2]|0;u=i+2|0;Gg[c[r+2439692>>2]&7](r,s+23|0,t+19|0,u,u,15);if(((((a[205]|0)!=0?((c[52]|0)+-24|0)>>>0<64:0)?((c[53]|0)+-20|0)>>>0<64:0)?((c[54]|0)+-24|0)>>>0<64:0)?((c[55]|0)+-20|0)>>>0<64:0){a[205]=0;j=1}else j=0;if(((((a[245]|0)!=0?((c[62]|0)+-24|0)>>>0<64:0)?((c[63]|0)+-20|0)>>>0<64:0)?((c[64]|0)+-24|0)>>>0<64:0)?((c[65]|0)+-20|0)>>>0<64:0)a[245]=0;else v=87;if((v|0)==87?!j:0)break a;k=((f|0)/(i|0)|0)+w|0;h=((h|0)/(i|0)|0)+x|0;r=g+4|0;s=(e[z>>1]|0)>255?h+128|0:h;f=(((s|0)%8|0)<<3)+((k|0)%8|0)|0;s=d[(f>>>1)+((c[r>>2]|0)+((((s|0)/8|0)<<4)+((k|0)/8|0)<<5))>>0]|0;s=(f&1|0?s>>>4:s&15)&255;f=a[(j?g+14|0:g+15|0)>>0]|0;do if(s<<24>>24!=f<<24>>24){q=d[A>>0]|0;p=w+-1+q|0;q=x+-1+q|0;if(!(b[160638]&3264)){Si(g,w,x,p,q,k,h,s,f);break}if((q|0)>(x|0)&(p|0)>(w|0)){j=f&255;i=j&15;j=j<<4;f=x;do{k=f+128|0;h=w;do{l=(e[z>>1]|0)>255?k:f;m=(((l|0)%8|0)<<3)+((h|0)%8|0)|0;l=(m>>>1)+((c[r>>2]|0)+((((l|0)/8|0)<<4)+((h|0)/8|0)<<5))|0;m=m&1;n=d[l>>0]|0;o=n&15;if(((m|0?n>>>4:o)&255)<<24>>24==s<<24>>24)a[l>>0]=(m|0)==0?i|n&240:j|o;h=h+1|0}while((h|0)!=(p|0));f=f+1|0}while((f|0)!=(q|0))}}while(0);Tj(c[g+60>>2]|0)|0;break a}default:break a}while(0);if((a[224]|0?((c[57]|0)+-24|0)>>>0<64:0)?((c[58]|0)+-20|0)>>>0<64:0){w=(((c[48]|0)+-24|0)/(y|0)|0)+w|0;y=(((c[49]|0)+-20|0)/(y|0)|0)+x|0;y=(e[z>>1]|0)>255?y+128|0:y;x=(((y|0)%8|0)<<3)+((w|0)%8|0)|0;y=d[(x>>>1)+((c[g+4>>2]|0)+((((y|0)/8|0)<<4)+((w|0)/8|0)<<5))>>0]|0;a[g+14>>0]=x&1|0?y>>>4:y&15}f=0;h=0;while(1){y=(h<<3)+112|0;v=c[g>>2]|0;w=f|1;Gg[c[v+2439688>>2]&7](v,24,y,7,7,f&255);v=c[g>>2]|0;Gg[c[v+2439688>>2]&7](v,32,y,7,7,w&255);v=c[g>>2]|0;x=f|3;Gg[c[v+2439688>>2]&7](v,40,y,7,7,w+1&255);w=c[g>>2]|0;Gg[c[w+2439688>>2]&7](w,48,y,7,7,x&255);w=c[g>>2]|0;Gg[c[w+2439688>>2]&7](w,56,y,7,7,x+1&255);w=c[g>>2]|0;Gg[c[w+2439688>>2]&7](w,64,y,7,7,x+2&255);w=c[g>>2]|0;Gg[c[w+2439688>>2]&7](w,72,y,7,7,x+3&255);x=c[g>>2]|0;Gg[c[x+2439688>>2]&7](x,80,y,7,7,(f|7)&255);h=h+1|0;if((h|0)==2)break;else f=f+8|0}i=a[g+14>>0]|0;k=i<<3&56;f=i&-8&255;y=c[g>>2]|0;Gg[c[y+2439688>>2]&7](y,k+23&255,f+111|0,9,9,i);i=c[g>>2]|0;Gg[c[i+2439692>>2]&7](i,k+22&255,f+110|0,11,11,15);f=a[g+15>>0]|0;Xg((f<<3&56)+24&255,(f&-8&255)+112|0,84776,f<<24>>24==15?0:15);f=b[z>>1]|0;k=g+4|0;f=(f&65535)-(f&255)|0;i=0;while(1){l=i|7;h=0;j=f;while(1){y=c[g>>2]|0;Hg[c[y+2439696>>2]&7](y,c[k>>2]|0,j,h+111|0,l,0,0);h=h+8|0;if((h|0)>=128)break;else j=j+1|0}i=i+8|0;if((i|0)>=128)break;else f=f+16|0}z=b[z>>1]|0;y=c[g>>2]|0;g=(d[A>>0]|0)+2|0;Gg[c[y+2439692>>2]&7](y,(z<<3&120)+110&65535,((z&65535)>>>1&120|6)&65535,g,g,15);return}function Si(e,f,g,h,i,j,k,l,m){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;r=e+4|0;o=c[r>>2]|0;s=e+12|0;p=b[s>>1]|0;n=k+128|0;y=(p&65535)>255?n:k;t=(j|0)/8|0;u=(j|0)%8|0;x=(((y|0)%8|0)<<3)+u|0;y=d[(x>>>1)+(o+((((y|0)/8|0)<<4)+t<<5))>>0]|0;if(((x&1|0?y>>>4:y&15)&255)<<24>>24!=l<<24>>24)return;q=j+-1|0;v=(j|0)<(h|0);w=j+1|0;y=m&255;x=y&15;y=y<<4;if((j|0)>(f|0)){while(1){p=(p&65535)>255?n:k;n=(((p|0)%8|0)<<3)+u|0;p=(n>>>1)+(o+((((p|0)/8|0)<<4)+t<<5))|0;o=(n&1|0)==0;a[p>>0]=(o?x:y)|(d[p>>0]|0)&(o?240:15);Si(e,f,g,h,i,q,k,l,m);if(v)Si(e,f,g,h,i,w,k,l,m);if((k|0)>(g|0))Si(e,f,g,h,i,j,k+-1|0,l,m);n=k;k=k+1|0;if((n|0)>=(i|0)){n=15;break}o=c[r>>2]|0;p=b[s>>1]|0;n=n+129|0;z=(p&65535)>255?n:k;A=(((z|0)%8|0)<<3)+u|0;z=d[(A>>>1)+(o+((((z|0)/8|0)<<4)+t<<5))>>0]|0;if(((A&1|0?z>>>4:z&15)&255)<<24>>24!=l<<24>>24){n=15;break}}if((n|0)==15)return}else{while(1){A=(p&65535)>255?n:k;z=(((A|0)%8|0)<<3)+u|0;A=(z>>>1)+(o+((((A|0)/8|0)<<4)+t<<5))|0;z=(z&1|0)==0;a[A>>0]=(z?x:y)|(d[A>>0]|0)&(z?240:15);if(v)Si(e,f,g,h,i,w,k,l,m);if((k|0)>(g|0))Si(e,f,g,h,i,j,k+-1|0,l,m);n=k;k=k+1|0;if((n|0)>=(i|0)){n=15;break}o=c[r>>2]|0;p=b[s>>1]|0;n=n+129|0;A=(p&65535)>255?n:k;z=(((A|0)%8|0)<<3)+u|0;A=d[(z>>>1)+(o+((((A|0)/8|0)<<4)+t<<5))>>0]|0;if(((z&1|0?A>>>4:A&15)&255)<<24>>24!=l<<24>>24){n=15;break}}if((n|0)==15)return}}function Ti(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;Ui(f);m=f+12|0;g=b[m>>1]|0;o=a[f+16>>0]|0;p=g<<3&120;g=(g&65535)>>>1&120;r=o&255;q=p+r|0;r=g+r|0;if(!(o<<24>>24)){g=f+20|0;h=g+16|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0));f=f+60|0;f=c[f>>2]|0;Tj(f)|0;return}o=f+15|0;n=f+4|0;do{k=g+128|0;j=p;do{l=(e[m>>1]|0)>255?k:g;s=(((l|0)%8|0)<<3)+((j|0)%8|0)|0;l=(s>>>1)+((c[n>>2]|0)+((((l|0)/8|0)<<4)+((j|0)/8|0)<<5))|0;h=d[l>>0]|0;i=d[o>>0]|0;if(!(s&1)){s=h&240;a[l>>0]=s;h=i&15;i=s}else{s=h&15;a[l>>0]=s;h=i<<4;i=s}a[l>>0]=h|i;j=j+1|0}while((j|0)<(q|0));g=g+1|0}while((g|0)<(r|0));g=f+20|0;h=g+16|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0));s=f+60|0;s=c[s>>2]|0;Tj(s)|0;return}function Ui(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;x=l;l=l+16|0;v=x+8|0;u=x;g=f+16|0;s=d[g>>0]|0;s=O(s,s)|0;t=s>>>1;w=eN(t)|0;if(!w){l=x;return}r=f+12|0;q=b[r>>1]|0;n=a[g>>0]|0;o=q<<3&120;g=(q&65535)>>>1&120;q=n&255;p=o+q|0;q=g+q|0;if(n<<24>>24){n=f+4|0;f=0;do{m=g+128|0;k=o;do{y=f;f=f+1|0;h=(e[r>>1]|0)>255?m:g;j=(((h|0)%8|0)<<3)+((k|0)%8|0)|0;h=d[(j>>>1)+((c[n>>2]|0)+((((h|0)/8|0)<<4)+((k|0)/8|0)<<5))>>0]|0;h=j&1|0?h>>>4:h&15;j=w+(y>>>1)|0;i=d[j>>0]|0;if(!(y&1)){i=i&240;a[j>>0]=i}else{i=i&15;a[j>>0]=i;h=h<<4}a[j>>0]=i|h;k=k+1|0}while((k|0)<(p|0));g=g+1|0}while((g|0)<(q|0))}h=eN(s|1)|0;if(h|0){if(t|0){g=0;f=h;while(1){c[u>>2]=d[w+g>>0];MN(f,83632,u)|0;s=a[f>>0]|0;y=f+1|0;a[f>>0]=a[y>>0]|0;a[y>>0]=s;g=g+1|0;if((g|0)==(t|0))break;else f=f+2|0}}f=c[80021]|0;do if(f){g=c[f+240>>2]|0;if(!g){y=f+288|0;fN(c[y>>2]|0);c[y>>2]=nP(h)|0;break}else{hg[g&63](f,h)|0;break}}else mE(310358,v);while(0);fN(h)}fN(w);l=x;return}function Vi(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;if(a[f+18>>0]|0){Ug((c[f>>2]|0)+1129664|0,48,0,1)|0;Ug((c[f>>2]|0)+1129664+((d[f+14>>0]|0)*3|0)|0,3,0,1)|0}h=f+16|0;g=d[h>>0]|0;g=(O(g,g)|0)>>>1;s=eN(g)|0;if(!s)return;if(Ug(s,g,1,0)|0){r=f+12|0;g=b[r>>1]|0;n=a[h>>0]|0;o=g<<3&120;g=(g&65535)>>>1&120;q=n&255;p=o+q|0;q=g+q|0;if(n<<24>>24){n=f+4|0;h=0;do{m=g+128|0;l=o;do{k=h;h=h+1|0;i=d[s+(k>>>1)>>0]|0;i=k&1|0?i>>>4:i&15;k=(e[r>>1]|0)>255?m:g;t=(((k|0)%8|0)<<3)+((l|0)%8|0)|0;k=(t>>>1)+((c[n>>2]|0)+((((k|0)/8|0)<<4)+((l|0)/8|0)<<5))|0;j=d[k>>0]|0;if(!(t&1)){j=j&240;a[k>>0]=j}else{j=j&15;a[k>>0]=j;i=i<<4}a[k>>0]=i|j;l=l+1|0}while((l|0)<(p|0));g=g+1|0}while((g|0)<(q|0))}Tj(c[f+60>>2]|0)|0}fN(s);return}function Wi(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=f+12|0;s=b[t>>1]|0;r=s<<3&120;s=(s&65535)>>>1&120;q=a[f+16>>0]|0;o=q&255;n=r+o|0;o=s+o|0;if(q<<24>>24){p=f+48|0;m=f+4|0;g=0;l=s;do{q=l+128|0;k=r;do{i=g;g=g+1|0;j=(e[t>>1]|0)>255?q:l;u=(((j|0)%8|0)<<3)+((k|0)%8|0)|0;j=(u>>>1)+((c[m>>2]|0)+((((j|0)/8|0)<<4)+((k|0)/8|0)<<5))|0;h=d[j>>0]|0;i=d[(c[p>>2]|0)+i>>0]|0;if(!(u&1)){u=h&240;a[j>>0]=u;h=i&15;i=u}else{u=h&15;a[j>>0]=u;h=i<<4;i=u}a[j>>0]=h|i;k=k+1|0}while((k|0)<(n|0));l=l+1|0}while((l|0)<(o|0))}r=(c[f+20>>2]|0)+r|0;h=(c[f+24>>2]|0)+s|0;g=c[f+28>>2]|0;o=g+r|0;u=c[f+32>>2]|0;p=u+h|0;if((u|0)<=0){u=f+60|0;u=c[u>>2]|0;Tj(u)|0;return}q=f+52|0;n=f+4|0;if((g|0)>0)g=0;else{u=f+60|0;u=c[u>>2]|0;Tj(u)|0;return}do{m=h+128|0;l=r;do{j=g;g=g+1|0;k=(e[t>>1]|0)>255?m:h;u=(((k|0)%8|0)<<3)+((l|0)%8|0)|0;k=(u>>>1)+((c[n>>2]|0)+((((k|0)/8|0)<<4)+((l|0)/8|0)<<5))|0;i=d[k>>0]|0;j=d[(c[q>>2]|0)+j>>0]|0;if(!(u&1)){u=i&240;a[k>>0]=u;i=j&15;j=u}else{u=i&15;a[k>>0]=u;i=j<<4;j=u}a[k>>0]=i|j;l=l+1|0}while((l|0)<(o|0));h=h+1|0}while((h|0)<(p|0));u=f+60|0;u=c[u>>2]|0;Tj(u)|0;return}function Xi(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;m=f+12|0;g=b[m>>1]|0;r=(g<<3&120)+(c[f+20>>2]|0)|0;g=((g&65535)>>>1&120)+(c[f+24>>2]|0)|0;h=c[f+28>>2]|0;o=r+h|0;l=c[f+32>>2]|0;p=g+l|0;if((l|0)>0?(q=f+15|0,n=f+4|0,(h|0)>0):0)do{k=g+128|0;j=r;do{l=(e[m>>1]|0)>255?k:g;s=(((l|0)%8|0)<<3)+((j|0)%8|0)|0;l=(s>>>1)+((c[n>>2]|0)+((((l|0)/8|0)<<4)+((j|0)/8|0)<<5))|0;h=d[l>>0]|0;i=d[q>>0]|0;if(!(s&1)){s=h&240;a[l>>0]=s;h=i&15;i=s}else{s=h&15;a[l>>0]=s;h=i<<4;i=s}a[l>>0]=h|i;j=j+1|0}while((j|0)<(o|0));g=g+1|0}while((g|0)<(p|0));g=f+20|0;h=g+16|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0));Tj(c[f+60>>2]|0)|0;return}function Yi(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;r=f+12|0;g=b[r>>1]|0;w=g<<3&120;x=f+20|0;h=c[x>>2]|0;t=f+28|0;u=w+h+((c[t>>2]|0)/2|0)|0;g=((g&65535)>>>1&120)+(c[f+24>>2]|0)|0;s=c[f+32>>2]|0;v=g+s|0;if((s|0)<=0){x=f+60|0;x=c[x>>2]|0;Tj(x)|0;return}s=f+4|0;while(1){h=h+w|0;if((h|0)<(u|0)){q=g+128|0;p=h+(c[t>>2]|0)|0;do{p=p+-1|0;A=c[s>>2]|0;z=(e[r>>1]|0)>255?q:g;k=((z|0)/8|0)<<4;z=((z|0)%8|0)<<3;y=z+((h|0)%8|0)|0;m=(y>>>1)+(A+(k+((h|0)/8|0)<<5))|0;y=y&1;l=d[m>>0]|0;j=l&15;i=y|0?l>>>4:j;n=(p|0)/8|0;o=(p|0)%8|0;z=z+o|0;k=d[(z>>>1)+(A+(k+n<<5))>>0]|0;k=z&1|0?k>>>4:k&15;if(!y){j=l&240;a[m>>0]=j}else{a[m>>0]=j;k=k<<4}a[m>>0]=k|j;k=(e[r>>1]|0)>255?q:g;A=(((k|0)%8|0)<<3)+o|0;k=(A>>>1)+((c[s>>2]|0)+((((k|0)/8|0)<<4)+n<<5))|0;j=d[k>>0]|0;if(!(A&1)){j=j&240;a[k>>0]=j}else{j=j&15;a[k>>0]=j;i=i<<4}a[k>>0]=i|j;h=h+1|0}while((h|0)!=(u|0))}g=g+1|0;if((g|0)>=(v|0))break;h=c[x>>2]|0}A=f+60|0;A=c[A>>2]|0;Tj(A)|0;return}function Zi(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;s=f+12|0;h=b[s>>1]|0;w=h<<3&120;x=f+20|0;i=c[x>>2]|0;u=(c[f+28>>2]|0)+i+w|0;h=((h&65535)>>>1&120)+(c[f+24>>2]|0)|0;g=c[f+32>>2]|0;v=((g|0)/2|0)+h|0;if((g|0)<=1){x=f+60|0;x=c[x>>2]|0;Tj(x)|0;return}t=f+4|0;j=h+g|0;g=h;h=i;while(1){r=j+-1|0;h=h+w|0;if((h|0)<(u|0)){q=g+128|0;p=j+127|0;do{A=c[t>>2]|0;k=(e[s>>1]|0)>255;o=k?q:g;m=(h|0)/8|0;n=(h|0)%8|0;y=(((o|0)%8|0)<<3)+n|0;o=(y>>>1)+(A+((((o|0)/8|0)<<4)+m<<5))|0;y=y&1;l=d[o>>0]|0;j=l&15;i=y|0?l>>>4:j;k=k?p:r;z=(((k|0)%8|0)<<3)+n|0;k=d[(z>>>1)+(A+((((k|0)/8|0)<<4)+m<<5))>>0]|0;k=z&1|0?k>>>4:k&15;if(!y){j=l&240;a[o>>0]=j}else{a[o>>0]=j;k=k<<4}a[o>>0]=k|j;k=(e[s>>1]|0)>255?p:r;A=(((k|0)%8|0)<<3)+n|0;k=(A>>>1)+((c[t>>2]|0)+((((k|0)/8|0)<<4)+m<<5))|0;j=d[k>>0]|0;if(!(A&1)){j=j&240;a[k>>0]=j}else{j=j&15;a[k>>0]=j;i=i<<4}a[k>>0]=i|j;h=h+1|0}while((h|0)!=(u|0))}g=g+1|0;if((g|0)>=(v|0))break;j=r;h=c[x>>2]|0}A=f+60|0;A=c[A>>2]|0;Tj(A)|0;return}function _i(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=eN(4096)|0;if(!p)return;n=b+28|0;i=c[n>>2]|0;o=b+32|0;j=c[o>>2]|0;m=O(j,i)|0;if((i|0)>0?(k=b+52|0,(j|0)>0):0){f=0;g=0;while(1){l=g+m|0;e=0;h=f;while(1){e=e+1|0;q=O(e,i)|0;a[p+h>>0]=a[(c[k>>2]|0)+(l-q)>>0]|0;if((e|0)==(j|0))break;else h=h+1|0}g=g+1|0;if((g|0)==(i|0))break;else f=j+f|0}}if((m|0)>0){f=b+52|0;e=0;do{a[(c[f>>2]|0)+e>>0]=a[p+e>>0]|0;e=e+1|0}while((e|0)!=(m|0))}h=b+20|0;e=c[h>>2]|0;i=b+24|0;q=c[i>>2]|0;j=c[n>>2]|0;k=c[o>>2]|0;f=(k|0)/2|0;c[n>>2]=k;c[o>>2]=j;e=((j|0)/2|0)+e-f|0;c[h>>2]=e;f=((j|0)/-2|0)+q+f|0;c[i>>2]=f;if((e|0)<0){c[h>>2]=0;e=0}if((f|0)<0){c[i>>2]=0;f=0}g=d[b+16>>0]|0;if((g|0)<=(e+k|0))c[h>>2]=g-k;if((g|0)<=(f+j|0))c[i>>2]=g-j;Wi(b);Tj(c[b+60>>2]|0)|0;fN(p);return}function $i(a){a=a|0;var b=0,d=0;b=a+24|0;d=c[b>>2]|0;if((d|0)>0)c[b>>2]=d+-1;Wi(a);return}function aj(a){a=a|0;var b=0,e=0;b=a+24|0;e=c[b>>2]|0;if(((c[a+32>>2]|0)+e|0)>=(d[a+16>>0]|0|0)){Wi(a);return}c[b>>2]=e+1;Wi(a);return}function bj(a){a=a|0;var b=0,d=0;b=a+20|0;d=c[b>>2]|0;if((d|0)>0)c[b>>2]=d+-1;Wi(a);return}function cj(a){a=a|0;var b=0,e=0;b=a+20|0;e=c[b>>2]|0;if(((c[a+28>>2]|0)+e|0)>=(d[a+16>>0]|0|0)){Wi(a);return}c[b>>2]=e+1;Wi(a);return}function dj(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;t=f+12|0;h=b[t>>1]|0;s=a[f+16>>0]|0;v=h<<3&120;h=(h&65535)>>>1&120;g=s&255;i=(s&255)>>>1;w=v+(i&255)|0;u=h+g|0;if(!(s<<24>>24)){w=f+60|0;w=c[w>>2]|0;Tj(w)|0;return}s=v+g|0;r=f+4|0;if(!(i<<24>>24)){w=f+60|0;w=c[w>>2]|0;Tj(w)|0;return}do{q=h+128|0;o=s;p=v;do{o=o+-1|0;z=c[r>>2]|0;y=(e[t>>1]|0)>255?q:h;j=((y|0)/8|0)<<4;y=((y|0)%8|0)<<3;x=y+((p|0)%8|0)|0;l=(x>>>1)+(z+(j+((p|0)/8|0)<<5))|0;x=x&1;k=d[l>>0]|0;i=k&15;g=x|0?k>>>4:i;m=(o|0)/8|0;n=(o|0)%8|0;y=y+n|0;j=d[(y>>>1)+(z+(j+m<<5))>>0]|0;j=y&1|0?j>>>4:j&15;if(!x){i=k&240;a[l>>0]=i}else{a[l>>0]=i;j=j<<4}a[l>>0]=j|i;j=(e[t>>1]|0)>255?q:h;z=(((j|0)%8|0)<<3)+n|0;j=(z>>>1)+((c[r>>2]|0)+((((j|0)/8|0)<<4)+m<<5))|0;i=d[j>>0]|0;if(!(z&1)){i=i&240;a[j>>0]=i}else{i=i&15;a[j>>0]=i;g=g<<4}a[j>>0]=g|i;p=p+1|0}while((p|0)<(w|0));h=h+1|0}while((h|0)<(u|0));z=f+60|0;z=c[z>>2]|0;Tj(z)|0;return}function ej(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;s=f+12|0;i=b[s>>1]|0;g=a[f+16>>0]|0;v=i<<3&120;i=(i&65535)>>>1&120;h=g&255;w=v+h|0;t=(g&255)>>>1;u=i+(t&255)|0;if(!(t<<24>>24)){w=f+60|0;w=c[w>>2]|0;Tj(w)|0;return}t=f+4|0;if(!(g<<24>>24)){w=f+60|0;w=c[w>>2]|0;Tj(w)|0;return}r=i+h|0;do{p=i+128|0;q=r+127|0;r=r+-1|0;o=v;do{z=c[t>>2]|0;j=(e[s>>1]|0)>255;n=j?p:i;l=(o|0)/8|0;m=(o|0)%8|0;x=(((n|0)%8|0)<<3)+m|0;n=(x>>>1)+(z+((((n|0)/8|0)<<4)+l<<5))|0;x=x&1;k=d[n>>0]|0;h=k&15;g=x|0?k>>>4:h;j=j?q:r;y=(((j|0)%8|0)<<3)+m|0;j=d[(y>>>1)+(z+((((j|0)/8|0)<<4)+l<<5))>>0]|0;j=y&1|0?j>>>4:j&15;if(!x){h=k&240;a[n>>0]=h}else{a[n>>0]=h;j=j<<4}a[n>>0]=j|h;j=(e[s>>1]|0)>255?q:r;z=(((j|0)%8|0)<<3)+m|0;j=(z>>>1)+((c[t>>2]|0)+((((j|0)/8|0)<<4)+l<<5))|0;h=d[j>>0]|0;if(!(z&1)){h=h&240;a[j>>0]=h}else{h=h&15;a[j>>0]=h;g=g<<4}a[j>>0]=g|h;o=o+1|0}while((o|0)<(w|0));i=i+1|0}while((i|0)<(u|0));z=f+60|0;z=c[z>>2]|0;Tj(z)|0;return}function fj(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;g=f+16|0;u=d[g>>0]|0;v=eN(O(u,u)|0)|0;if(!v)return;t=f+12|0;k=b[t>>1]|0;p=a[g>>0]|0;s=k<<3&120;k=(k&65535)>>>1&120;r=p&255;q=s+r|0;r=k+r|0;if(p<<24>>24){p=f+4|0;g=0;i=k;do{j=i+128|0;h=s;do{n=(e[t>>1]|0)>255?j:i;m=(((n|0)%8|0)<<3)+((h|0)%8|0)|0;n=d[(m>>>1)+((c[p>>2]|0)+((((n|0)/8|0)<<4)+((h|0)/8|0)<<5))>>0]|0;o=g;g=g+1|0;a[v+o>>0]=m&1|0?n>>>4:n&15;h=h+1|0}while((h|0)<(q|0));i=i+1|0}while((i|0)<(r|0));o=u+-1|0;n=0;while(1){l=k+128|0;i=s;j=0;while(1){h=a[v+((O(o-j|0,u)|0)+n)>>0]|0;m=(e[t>>1]|0)>255?l:k;w=(((m|0)%8|0)<<3)+((i|0)%8|0)|0;m=(w>>>1)+((c[p>>2]|0)+((((m|0)/8|0)<<4)+((i|0)/8|0)<<5))|0;g=d[m>>0]|0;h=h&255;if(!(w&1)){w=g&240;a[m>>0]=w;g=h&15;h=w}else{w=g&15;a[m>>0]=w;g=h<<4;h=w}a[m>>0]=g|h;i=i+1|0;if((i|0)>=(q|0))break;else j=j+1|0}k=k+1|0;if((k|0)>=(r|0))break;else n=n+1|0}}Tj(c[f+60>>2]|0)|0;fN(v);return}function gj(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;m=f+12|0;g=b[m>>1]|0;o=a[f+16>>0]|0;p=g<<3&120;g=(g&65535)>>>1&120;r=o&255;q=p+r|0;r=g+r|0;if(!(o<<24>>24)){g=f+20|0;h=g+16|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0));f=f+60|0;f=c[f>>2]|0;Tj(f)|0;return}o=f+15|0;n=f+4|0;do{k=g+128|0;j=p;do{l=(e[m>>1]|0)>255?k:g;s=(((l|0)%8|0)<<3)+((j|0)%8|0)|0;l=(s>>>1)+((c[n>>2]|0)+((((l|0)/8|0)<<4)+((j|0)/8|0)<<5))|0;h=d[l>>0]|0;i=d[o>>0]|0;if(!(s&1)){s=h&240;a[l>>0]=s;h=i&15;i=s}else{s=h&15;a[l>>0]=s;h=i<<4;i=s}a[l>>0]=h|i;j=j+1|0}while((j|0)<(q|0));g=g+1|0}while((g|0)<(r|0));g=f+20|0;h=g+16|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0));s=f+60|0;s=c[s>>2]|0;Tj(s)|0;return}function hj(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;m=o+19|0;g=o;n=d+112|0;k=c[n>>2]|0;if(k|0){fN(c[k+8>>2]|0);h=c[k>>2]|0;while(1){i=c[h+4>>2]|0;if(!i)break;else h=i}if(h|0)do{i=h;h=c[h>>2]|0;j=c[i+8>>2]|0;if(j|0)fN(j);fN(i)}while((h|0)!=0);fN(k)}j=g+3|0;k=j+16|0;do{a[j>>0]=0;j=j+1|0}while((j|0)<(k|0));i=eN(16)|0;c[i+12>>2]=f;c[i+4>>2]=32640;j=eN(32640)|0;c[i+8>>2]=j;PQ(j|0,f|0,32640)|0;j=eN(20)|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[j+16>>2]=0;c[i>>2]=j;c[d>>2]=e;c[d+4>>2]=f;c[d+8>>2]=0;c[d+12>>2]=0;a[d+16>>0]=1;a[d+17>>0]=0;c[d+20>>2]=0;c[d+24>>2]=0;a[d+28>>0]=0;j=d+29|0;a[j>>0]=a[m>>0]|0;a[j+1>>0]=a[m+1>>0]|0;a[j+2>>0]=a[m+2>>0]|0;c[d+32>>2]=0;c[d+36>>2]=0;c[d+40>>2]=1;c[d+44>>2]=1;c[d+48>>2]=0;c[d+52>>2]=0;a[d+56>>0]=0;j=d+57|0;k=j+19|0;do{a[j>>0]=a[g>>0]|0;j=j+1|0;g=g+1|0}while((j|0)<(k|0));a[d+76>>0]=0;a[d+77>>0]=0;b[d+78>>1]=0;g=d+80|0;h=d+105|0;j=g;k=j+24|0;do{b[j>>1]=0;j=j+2|0}while((j|0)<(k|0));a[g+24>>0]=0;a[h>>0]=0;a[h+1>>0]=0;a[h+2>>0]=0;c[d+108>>2]=0;c[n>>2]=i;c[d+116>>2]=196;c[d+120>>2]=139;c[d+124>>2]=140;j=d+60|0;i=d+64|0;g=c[j>>2]|0;if((g|0)<0){d=(g|0)>-1920?g:-1920;g=d+3839-(((1919-g+d|0)>>>0)%1920|0)|0;c[j>>2]=g}h=c[i>>2]|0;if((h|0)<0){d=(h|0)>-1088?h:-1088;h=d+2175-(((1087-h+d|0)>>>0)%1088|0)|0;c[i>>2]=h}if((g|0)>1919)c[j>>2]=((g+-1920|0)>>>0)%1920|0;if((h|0)<=1087){l=o;return}c[i>>2]=((h+-1088|0)>>>0)%1088|0;l=o;return}function ij(d){d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;E=l;l=l+16|0;D=E;C=E+4|0;f=d+8|0;c[f>>2]=(c[f>>2]|0)+1;f=eh()|0;a:do if(f|0){v=d+12|0;w=d+88|0;x=d+92|0;n=d+84|0;o=d+80|0;p=d+4|0;q=d+112|0;r=d+16|0;s=d+28|0;while(1){switch(c[f>>2]|0){case 768:{f=c[f+16+4>>2]|0;m=e[160638]|0;g=(m&3264|0)==0;b:do if(g)if(!(m&3))B=26;else switch(((f|0)==127?1:((f|0)==1073741897)<<31>>31)&3){case 1:{B=9;break}case 2:{B=10;break}case 3:{B=11;break}default:B=26}else{if((f|0)<121)switch(f|0){case 99:{B=10;break b}case 120:{B=9;break b}case 118:{B=11;break b}default:break b}if((f|0)<122)switch(f|0){case 121:{B=21;break b}default:break b}if((f|0)<1073741897)switch(f|0){case 122:{B=14;break b}default:break b}else switch(f|0){case 1073741897:{B=10;break b}default:break b}}while(0);if((B|0)==9){rj(d);B=12}else if((B|0)==10){sj(d);c[o>>2]=0;c[o+4>>2]=0;c[o+8>>2]=0;c[o+12>>2]=0;B=12}else if((B|0)==11){tj(d);B=12}if((B|0)==12){B=0;if(g)B=26;else switch(f|0){case 122:{B=14;break}case 121:{B=21;break}default:{}}}c:do if((B|0)==14){B=0;k=c[q>>2]|0;f=c[k>>2]|0;if(c[f+4>>2]|0){g=c[f+12>>2]|0;j=f+16|0;if(g>>>0<(c[j>>2]|0)>>>0){h=f+8|0;i=k+8|0;f=g;g=0;while(1){F=(c[i>>2]|0)+f|0;a[F>>0]=a[F>>0]^a[(c[h>>2]|0)+g>>0];f=f+1|0;if(f>>>0>=(c[j>>2]|0)>>>0)break;else g=g+1|0}f=c[k>>2]|0}c[k>>2]=c[f+4>>2]}PQ(c[k+12>>2]|0,c[k+8>>2]|0,c[k+4>>2]|0)|0}else if((B|0)==21){B=0;j=c[q>>2]|0;f=c[c[j>>2]>>2]|0;if(f|0?(c[j>>2]=f,t=c[f+12>>2]|0,u=f+16|0,t>>>0<(c[u>>2]|0)>>>0):0){h=f+8|0;i=j+8|0;f=t;g=0;while(1){F=(c[i>>2]|0)+f|0;a[F>>0]=a[F>>0]^a[(c[h>>2]|0)+g>>0];f=f+1|0;if(f>>>0>=(c[u>>2]|0)>>>0)break;else g=g+1|0}}PQ(c[j+12>>2]|0,c[j+8>>2]|0,c[j+4>>2]|0)|0}else if((B|0)==26){B=0;switch(f|0){case 9:{Wg(6);break c}case 52:case 51:case 50:case 49:{c[v>>2]=f+-49;break c}case 127:{h=c[w>>2]|0;if((h|0)<=0)break c;f=c[x>>2]|0;if((f|0)<=0)break c;i=c[n>>2]|0;j=i;g=c[o>>2]|0;do{if((h|0)>0){f=(j|0)>-136?j:-136;f=f+271-(((135-j+f|0)>>>0)%136|0)|0;if((j|0)<0){i=((f|0)>135?((f+-136|0)>>>0)%136|0:f)*240|0;h=g;do{f=(h|0)>-240?h:-240;if((h|0)<0)f=f+479-(((239-h+f|0)>>>0)%240|0)|0;else f=h;a[(c[p>>2]|0)+(((f|0)>239?((f+-240|0)>>>0)%240|0:f)+i)>>0]=0;h=h+1|0;g=c[o>>2]|0;f=c[w>>2]|0}while((h|0)<(f+g|0));h=f}else{i=((j|0)>135?((j+-136|0)>>>0)%136|0:j)*240|0;h=g;do{f=(h|0)>-240?h:-240;if((h|0)<0)f=f+479-(((239-h+f|0)>>>0)%240|0)|0;else f=h;a[(c[p>>2]|0)+(((f|0)>239?((f+-240|0)>>>0)%240|0:f)+i)>>0]=0;h=h+1|0;g=c[o>>2]|0;f=c[w>>2]|0}while((h|0)<(f+g|0));h=f}i=c[n>>2]|0;f=c[x>>2]|0}j=j+1|0}while((j|0)<(i+f|0));Tj(c[q>>2]|0)|0;break c}case 96:{a[r>>0]=a[r>>0]^1;break c}default:break c}}while(0);if(m&3|0)a[s>>0]=1;break}case 769:{if(!(b[160638]&3))a[s>>0]=0;break}default:{}}f=eh()|0;if(!f)break a}}while(0);f=c[72]|0;g=f+82|0;if(a[g>>0]|0){F=d+64|0;c[F>>2]=(c[F>>2]|0)+-1}h=f+81|0;if(a[h>>0]|0){F=d+64|0;c[F>>2]=(c[F>>2]|0)+1}i=f+80|0;if(a[i>>0]|0){F=d+60|0;c[F>>2]=(c[F>>2]|0)+-1}f=f+79|0;if(a[f>>0]|0){F=d+60|0;c[F>>2]=(c[F>>2]|0)+1}if(!((((a[g>>0]|0)==0?(a[h>>0]|0)==0:0)?(a[i>>0]|0)==0:0)?!(a[f>>0]|0):0)){i=d+60|0;j=d+64|0;f=c[i>>2]|0;g=(f|0)>-1920?f:-1920;if((f|0)<0){f=g+3839-(((1919-f+g|0)>>>0)%1920|0)|0;c[i>>2]=f}g=c[j>>2]|0;h=(g|0)>-1088?g:-1088;if((g|0)<0){g=h+2175-(((1087-g+h|0)>>>0)%1088|0)|0;c[j>>2]=g}if((f|0)>1919)c[i>>2]=((f+-1920|0)>>>0)%1920|0;if((g|0)>1087)c[j>>2]=((g+-1088|0)>>>0)%1088|0}do if(a[284]|0){h=276;f=c[h>>2]|0;h=c[h+4>>2]|0;k=d+60|0;g=d+77|0;if(!(a[g>>0]|0)){c[d+68>>2]=(c[k>>2]|0)+f;c[d+72>>2]=(c[d+64>>2]|0)+h;a[g>>0]=1;break}i=(c[d+68>>2]|0)-f|0;c[k>>2]=i;f=(c[d+72>>2]|0)-h|0;j=d+64|0;c[j>>2]=f;g=(i|0)>-1920?i:-1920;if((i|0)<0){h=g+3839-(((1919-i+g|0)>>>0)%1920|0)|0;c[k>>2]=h}else h=i;g=(f|0)>-1088?f:-1088;if((f|0)<0){f=g+2175-(((1087-f+g|0)>>>0)%1088|0)|0;c[j>>2]=f}if((h|0)>1919)c[k>>2]=((h+-1920|0)>>>0)%1920|0;if((f|0)>1087)c[j>>2]=((f+-1088|0)>>>0)%1088|0}else a[d+77>>0]=0;while(0);i=c[d>>2]|0;Bg[c[i+2439672>>2]&255](i,0);i=d+28|0;if(a[i>>0]|0){F=c[d>>2]|0;Gg[c[F+2439692>>2]&7](F,110,6,130,130,15)}f=c[d>>2]|0;Gg[c[f+2439688>>2]&7](f,0,0,240,7,15);f=c[48]|0;if(!(a[i>>0]|0)){if(f>>>0<240?(A=c[49]|0,(A+-7|0)>>>0<129):0){h=(c[d+60>>2]|0)+f+(((c[d+40>>2]<<3)+-8|0)/-2|0)|0;f=(((c[d+44>>2]<<3)+-8|0)/-2|0)+A+(c[d+64>>2]|0)|0;g=(h|0)>-1920?h:-1920;if((h|0)<0)h=g+3839-(((1919-h+g|0)>>>0)%1920|0)|0;g=(f|0)>-1088?f:-1088;if((f|0)<0)f=g+2175-(((1087-f+g|0)>>>0)%1088|0)|0;B=c[d>>2]|0;f=(jg[c[B+2439716>>2]&31](B,c[d+4>>2]|0,(((h|0)>1919?((h+-1920|0)>>>0)%1920|0:h)|0)/8|0,(((f|0)>1087?((f+-1088|0)>>>0)%1088|0:f)|0)/8|0)|0)&255;B=95}}else if(((f+-111|0)>>>0<128?(y=c[49]|0,(y+-7|0)>>>0<128):0)?(z=(((y+-7|0)/8|0)<<4)+((f+-111|0)/8|0)|0,(z|0)>-1):0){f=z;B=95}if((B|0)==95){a[C>>0]=a[85127]|0;a[C+1>>0]=a[85128]|0;a[C+2>>0]=a[85129]|0;a[C+3>>0]=a[85130]|0;a[C+4>>0]=a[85131]|0;c[D>>2]=f;MN(C,85132,D)|0;f=c[d>>2]|0;lg[c[f+2439660>>2]&31](f,C,114,1,10)|0;f=c[48]|0}if((f+-233|0)>>>0<7&(c[49]|0)>>>0<7){c[68]=11;XP(804,85138,39)|0;if(((a[205]|0)!=0?((c[52]|0)+-233|0)>>>0<7&(c[53]|0)>>>0<7:0)?((c[54]|0)+-233|0)>>>0<7&(c[55]|0)>>>0<7:0){a[205]=0;a[i>>0]=a[i>>0]^1;f=3}else f=3}else f=10;Xg(233,0,a[i>>0]|0?85157:85165,f);if(((c[48]|0)+-225|0)>>>0<8&(c[49]|0)>>>0<7){c[68]=11;XP(804,85173,39)|0;if(((a[205]|0)!=0?((c[52]|0)+-225|0)>>>0<8&(c[53]|0)>>>0<7:0)?((c[54]|0)+-225|0)>>>0<8&(c[55]|0)>>>0<7:0){a[205]=0;c[d+12>>2]=3;f=3}else f=3}else f=10;g=d+12|0;Xg(225,0,85182,(c[g>>2]|0)==3?0:f);if(((c[48]|0)+-218|0)>>>0<7&(c[49]|0)>>>0<7){c[68]=11;XP(804,85190,39)|0;if(((a[205]|0)!=0?((c[52]|0)+-218|0)>>>0<7&(c[53]|0)>>>0<7:0)?((c[54]|0)+-218|0)>>>0<7&(c[55]|0)>>>0<7:0){a[205]=0;c[g>>2]=2;f=3}else f=3}else f=10;Xg(218,0,85201,(c[g>>2]|0)==2?0:f);if(((c[48]|0)+-211|0)>>>0<7&(c[49]|0)>>>0<7){c[68]=11;XP(804,85209,39)|0;if(((a[205]|0)!=0?((c[52]|0)+-211|0)>>>0<7&(c[53]|0)>>>0<7:0)?((c[54]|0)+-211|0)>>>0<7&(c[55]|0)>>>0<7:0){a[205]=0;c[g>>2]=1;f=3}else f=3}else f=10;Xg(211,0,85222,(c[g>>2]|0)==1?0:f);if(((c[48]|0)+-204|0)>>>0<7&(c[49]|0)>>>0<7){c[68]=11;XP(804,85230,39)|0;if(((a[205]|0)!=0?((c[52]|0)+-204|0)>>>0<7&(c[53]|0)>>>0<7:0)?((c[54]|0)+-204|0)>>>0<7&(c[55]|0)>>>0<7:0){a[205]=0;c[g>>2]=0;f=3}else f=3}else f=10;Xg(204,0,85239,(c[g>>2]|0)==0?0:f);if(((c[48]|0)+-192|0)>>>0<7&(c[49]|0)>>>0<7){c[68]=11;XP(804,85247,39)|0;if(((a[205]|0)!=0?((c[52]|0)+-192|0)>>>0<7&(c[53]|0)>>>0<7:0)?((c[54]|0)+-192|0)>>>0<7&(c[55]|0)>>>0<7:0){a[205]=0;f=d+16|0;a[f>>0]=a[f>>0]^1;f=3}else f=3}else f=10;Xg(192,0,85266,(a[d+16>>0]|0)==0?f:0);if(!((c[48]&-8|0)==184&(c[49]|0)>>>0<7)){F=10;Xg(184,0,85290,F);F=c[d>>2]|0;Vg(F,0);l=E;return}c[68]=11;XP(804,85274,39)|0;if(!(a[205]|0)){F=3;Xg(184,0,85290,F);F=c[d>>2]|0;Vg(F,0);l=E;return}if(!((c[52]&-8|0)==184&(c[53]|0)>>>0<7)){F=3;Xg(184,0,85290,F);F=c[d>>2]|0;Vg(F,0);l=E;return}if(!((c[54]&-8|0)==184&(c[55]|0)>>>0<7)){F=3;Xg(184,0,85290,F);F=c[d>>2]|0;Vg(F,0);l=E;return}a[205]=0;Wg(6);F=3;Xg(184,0,85290,F);F=c[d>>2]|0;Vg(F,0);l=E;return}function jj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;switch(d|0){case 0:{rj(b);return}case 1:{sj(b);i=b+80|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;return}case 2:{tj(b);return}case 3:{h=c[b+112>>2]|0;b=c[h>>2]|0;if(c[b+4>>2]|0){d=c[b+12>>2]|0;g=b+16|0;if(d>>>0<(c[g>>2]|0)>>>0){e=b+8|0;f=h+8|0;b=d;d=0;while(1){i=(c[f>>2]|0)+b|0;a[i>>0]=a[i>>0]^a[(c[e>>2]|0)+d>>0];b=b+1|0;if(b>>>0>=(c[g>>2]|0)>>>0)break;else d=d+1|0}b=c[h>>2]|0}c[h>>2]=c[b+4>>2]}PQ(c[h+12>>2]|0,c[h+8>>2]|0,c[h+4>>2]|0)|0;return}case 4:{g=c[b+112>>2]|0;b=c[c[g>>2]>>2]|0;if(b|0?(c[g>>2]=b,h=c[b+12>>2]|0,i=b+16|0,h>>>0<(c[i>>2]|0)>>>0):0){e=b+8|0;f=g+8|0;b=h;d=0;while(1){h=(c[f>>2]|0)+b|0;a[h>>0]=a[h>>0]^a[(c[e>>2]|0)+d>>0];b=b+1|0;if(b>>>0>=(c[i>>2]|0)>>>0)break;else d=d+1|0}}PQ(c[g+12>>2]|0,c[g+8>>2]|0,c[g+4>>2]|0)|0;return}default:return}}function kj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;q=b+2439736|0;t=d+28|0;Fg[c[q>>2]&15](b,0,7,a[t>>0]|0?110:240,129);r=d+60|0;k=c[r>>2]|0;o=d+64|0;l=c[o>>2]|0;j=c[d>>2]|0;Kg[c[j+2439704>>2]&15](j,c[d+4>>2]|0,(c[3]|0)+81920+((a[755]|0)*130968|0)|0,(k|0)/8|0,(l|0)/8|0,31,18,0-((k|0)%8|0)|0,0-((l|0)%8|0)|0,-1,1);if(!((a[d+16>>0]|0)==0?!(a[d+76>>0]|0):0)){k=c[d>>2]|0;j=(c[r>>2]|0)%8|0;l=(c[o>>2]|0)%8|0;e=0-l|0;g=136-l|0;if((g|0)>=(e|0)){h=k+2439680|0;i=k+2439676|0;do{if(e>>>0<136){f=0;do{u=ig[c[h>>2]&63](k,f,e)|0;Eg[c[i>>2]&63](k,f,e,(u&255)+1&15);f=f+1|0}while((f|0)!=240)}e=e+8|0}while((e|0)<=(g|0))}f=0-j|0;g=240-j|0;if((g|0)>=(f|0)){h=k+2439680|0;i=k+2439676|0;do{if(f>>>0<240){e=0;do{if(e+l&7|0){u=ig[c[h>>2]&63](k,f,e)|0;Eg[c[i>>2]&63](k,f,e,(u&255)+1&15)}e=e+1|0}while((e|0)!=136)}f=f+8|0}while((f|0)<=(g|0))}}u=(c[r>>2]|0)%240|0;k=c[d>>2]|0;l=136-((c[o>>2]|0)%136|0)|0;Gg[c[k+2439684>>2]&7](k,0,l,240,l,7);l=c[d>>2]|0;u=240-u|0;Gg[c[l+2439684>>2]&7](l,u,0,u,136,7);do if(((a[t>>0]|0)==0?(m=c[48]|0,m>>>0<240):0)?(n=c[49]|0,(n+-7|0)>>>0<129):0)if(!(a[(c[72]|0)+44>>0]|0)){u=d+12|0;vg[c[2144+(c[u>>2]<<2)>>2]&511](d);if((c[u>>2]|0)==1)break;if((a[244]|0)!=0&(c[62]|0)>>>0<240)h=((c[63]|0)+-7|0)>>>0<129;else h=0;e=d+76|0;if(!(a[e>>0]|0)){f=c[48]|0;if(f>>>0>=240)break;g=c[49]|0;if(!((g+-7|0)>>>0<129&h))break;a[e>>0]=1;c[d+68>>2]=(c[r>>2]|0)+f;c[d+72>>2]=(c[o>>2]|0)+g;break}if(!h){a[e>>0]=0;break}f=(c[d+68>>2]|0)-(c[48]|0)|0;c[r>>2]=f;e=(c[d+72>>2]|0)-(c[49]|0)|0;c[o>>2]=e;g=(f|0)>-1920?f:-1920;if((f|0)<0){f=g+3839-(((1919-f+g|0)>>>0)%1920|0)|0;c[r>>2]=f}g=(e|0)>-1088?e:-1088;if((e|0)<0){e=g+2175-(((1087-e+g|0)>>>0)%1088|0)|0;c[o>>2]=e}if((f|0)>1919)c[r>>2]=((f+-1920|0)>>>0)%1920|0;if((e|0)>1087)c[o>>2]=((e+-1088|0)>>>0)%1088|0;c[68]=11;break}else{if((a[204]|0)!=0&(c[52]|0)>>>0<240?((c[53]|0)+-7|0)>>>0<129:0)f=1;else if((a[244]|0)!=0&(c[62]|0)>>>0<240)f=((c[63]|0)+-7|0)>>>0<129;else f=0;e=d+76|0;if(!(a[e>>0]|0)){if(!f)break;a[e>>0]=1;c[d+68>>2]=(c[r>>2]|0)+m;c[d+72>>2]=(c[o>>2]|0)+n;break}if(!f){a[e>>0]=0;break}g=(c[d+68>>2]|0)-m|0;c[r>>2]=g;e=(c[d+72>>2]|0)-n|0;c[o>>2]=e;f=(g|0)>-1920?g:-1920;if((g|0)<0){g=f+3839-(((1919-g+f|0)>>>0)%1920|0)|0;c[r>>2]=g}f=(e|0)>-1088?e:-1088;if((e|0)<0){e=f+2175-(((1087-e+f|0)>>>0)%1088|0)|0;c[o>>2]=e}if((g|0)>1919)c[r>>2]=((g+-1920|0)>>>0)%1920|0;if((e|0)>1087)c[o>>2]=((e+-1088|0)>>>0)%1088|0;c[68]=11;break}while(0);e=c[d+88>>2]|0;if((e|0)>0?(p=c[d+92>>2]|0,(p|0)>0):0){j=c[d+80>>2]<<3;k=c[r>>2]|0;n=c[o>>2]|0;r=e<<3;m=j+r|0;m=1919-r-j+((m-k|0)>0?m:k)|0;l=c[d+84>>2]<<3;u=p<<3;m=j-k+m-((m>>>0)%1920|0)|0;o=l+u|0;o=1087-u-l+((o-n|0)>0?o:n)|0;o=l-n+o-((o>>>0)%1088|0)|0;n=~m-r|0;n=r+1920+m+((n|0)>-1920?n:-1920)|0;p=~o-u|0;p=u+1088+o+((p|0)>-1088?p:-1088)|0;lj(d,m+-1-n+((n>>>0)%1920|0)|0,o+-1-p+((p>>>0)%1088|0)|0,r|2,u|2)}Fg[c[q>>2]&15](b,0,0,240,136);if(!(a[t>>0]|0))return;e=c[48]|0;do if((e+-111|0)>>>0<128?(s=c[49]|0,(s+-7|0)>>>0<128):0){c[68]=11;if((a[204]|0?((c[52]|0)+-111|0)>>>0<128:0)?((c[53]|0)+-7|0)>>>0<128:0){g=(e+-111|0)/8|0;e=(s+-7|0)/8|0;f=d+56|0;if(!(a[f>>0]|0)){a[f>>0]=1;c[d+48>>2]=g;c[d+52>>2]=e;e=0;f=0;break}else{t=c[d+48>>2]|0;s=(g|0)<(t|0)?g:t;f=c[d+52>>2]|0;u=(e|0)<(f|0)?e:f;c[d+32>>2]=s;c[d+36>>2]=u;c[d+40>>2]=1-s+((g|0)>(t|0)?g:t);c[d+44>>2]=1-u+((e|0)>(f|0)?e:f);c[d+12>>2]=0;e=0;f=0;break}}e=d+56|0;if(a[e>>0]|0)a[t>>0]=0;a[e>>0]=0;e=0;f=0}else{e=0;f=0}while(0);do{i=e|7;g=0;h=f;f=f+16|0;while(1){u=c[d>>2]|0;Hg[c[u+2439696>>2]&7](u,(c[3]|0)+81920+((a[755]|0)*130968|0)|0,h,g+111|0,i,0,0);h=h+1|0;if((h|0)==(f|0))break;else g=g+8|0}e=e+8|0}while((e|0)<128);u=c[d>>2]|0;Gg[c[u+2439692>>2]&7](u,(c[d+32>>2]<<3)+110|0,c[d+36>>2]<<3|6,c[d+40>>2]<<3|2,c[d+44>>2]<<3|2,15);return}function lj(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;h=(c[a+8>>2]|0)/10|0;k=e+b|0;g=h+1|0;if((e|0)>0){j=b;i=g;while(1){g=c[a>>2]|0;Eg[c[g+2439676>>2]&63](g,j,d,(h|0)%3|0|0?15:0);j=j+1|0;g=i+1|0;if((j|0)>=(k|0))break;else{h=i;i=g}}}l=f+d|0;i=g+1|0;j=k+-1|0;if((f|0)>0){h=d;while(1){k=c[a>>2]|0;Eg[c[k+2439676>>2]&63](k,j,h,(g|0)%3|0|0?15:0);h=h+1|0;g=i+1|0;if((h|0)>=(l|0)){i=g;break}else{k=i;i=g;g=k}}}g=i+1|0;h=l+-1|0;if((e|0)>=1)while(1){e=c[a>>2]|0;Eg[c[e+2439676>>2]&63](e,j,h,(i|0)%3|0|0?15:0);i=g+1|0;if((j|0)>(b|0)){e=g;j=j+-1|0;g=i;i=e}else{g=i;break}}if((f|0)<1)return;while(1){f=c[a>>2]|0;Eg[c[f+2439676>>2]&63](f,b,h,(g|0)%3|0|0?15:0);if((h|0)>(d|0)){h=h+-1|0;g=g+1|0}else break}return}function mj(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;c[68]=11;qj(b);do if((a[204]|0)!=0&(c[52]|0)>>>0<240?((c[53]|0)+-7|0)>>>0<129:0){o=b+40|0;i=c[o>>2]|0;p=b+44|0;g=c[p>>2]|0;e=(c[b+60>>2]|0)+(c[48]|0)+(((i<<3)+-8|0)/-2|0)|0;d=(((g<<3)+-8|0)/-2|0)+(c[49]|0)+(c[b+64>>2]|0)|0;f=(e|0)>-1920?e:-1920;if((e|0)<0)e=f+3839-(((1919-e+f|0)>>>0)%1920|0)|0;f=(d|0)>-1088?d:-1088;if((d|0)<0)d=f+2175-(((1087-d+f|0)>>>0)%1088|0)|0;n=(((e|0)>1919?((e+-1920|0)>>>0)%1920|0:e)|0)/8|0;m=(((d|0)>1087?((d+-1088|0)>>>0)%1088|0:d)|0)/8|0;d=b+17|0;if(!(a[d>>0]|0)){a[d>>0]=1;c[b+20>>2]=n;c[b+24>>2]=m;break}if(((n-(c[b+20>>2]|0)|0)%(i|0)|0|0)==0?((m-(c[b+24>>2]|0)|0)%(g|0)|0|0)==0:0){j=c[b+32>>2]|0;k=c[b+36>>2]|0;if((g|0)>0){l=b+4|0;h=0;e=g;d=i;do{if((d|0)>0){f=(h+m|0)%136|0;g=(h+k<<4)+j|0;e=0;do{d=c[b>>2]|0;Fg[c[d+2439712>>2]&15](d,c[l>>2]|0,(e+n|0)%240|0,f,g+e&255);e=e+1|0;d=c[o>>2]|0}while((e|0)<(d|0));e=c[p>>2]|0}h=h+1|0}while((h|0)<(e|0))}Tj(c[b+112>>2]|0)|0}}else q=19;while(0);if((q|0)==19)a[b+17>>0]=0;if(!((a[224]|0)!=0&(c[57]|0)>>>0<240))return;if(((c[58]|0)+-7|0)>>>0>=129)return;g=b+40|0;h=b+44|0;e=(c[b+60>>2]|0)+(c[48]|0)+(((c[g>>2]<<3)+-8|0)/-2|0)|0;d=(((c[h>>2]<<3)+-8|0)/-2|0)+(c[49]|0)+(c[b+64>>2]|0)|0;f=(e|0)>-1920?e:-1920;if((e|0)<0)e=f+3839-(((1919-e+f|0)>>>0)%1920|0)|0;f=(d|0)>-1088?d:-1088;if((d|0)<0)d=f+2175-(((1087-d+f|0)>>>0)%1088|0)|0;q=c[b>>2]|0;q=jg[c[q+2439716>>2]&31](q,c[b+4>>2]|0,(((e|0)>1919?((e+-1920|0)>>>0)%1920|0:e)|0)/8|0,(((d|0)>1087?((d+-1088|0)>>>0)%1088|0:d)|0)/8|0)|0;c[b+32>>2]=q&15;c[b+36>>2]=(q&255)>>>4&255;c[g>>2]=1;c[h>>2]=1;return}function nj(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;if((a[204]|0)!=0&(c[52]|0)>>>0<240?((c[53]|0)+-7|0)>>>0<129:0)g=1;else if((a[244]|0)!=0&(c[62]|0)>>>0<240)g=((c[63]|0)+-7|0)>>>0<129;else g=0;h=b+60|0;d=b+76|0;if(!(a[d>>0]|0)){e=c[48]|0;if(e>>>0>=240)return;f=c[49]|0;if(!((f+-7|0)>>>0<129&g))return;a[d>>0]=1;c[b+68>>2]=(c[h>>2]|0)+e;c[b+72>>2]=(c[b+64>>2]|0)+f;return}if(!g){a[d>>0]=0;return}e=(c[b+68>>2]|0)-(c[48]|0)|0;c[h>>2]=e;d=(c[b+72>>2]|0)-(c[49]|0)|0;f=b+64|0;c[f>>2]=d;if((e|0)<0){b=(e|0)>-1920?e:-1920;e=b+3839-(((1919-e+b|0)>>>0)%1920|0)|0;c[h>>2]=e}if((d|0)<0){b=(d|0)>-1088?d:-1088;d=b+2175-(((1087-d+b|0)>>>0)%1088|0)|0;c[f>>2]=d}if((e|0)>1919)c[h>>2]=((e+-1920|0)>>>0)%1920|0;if((d|0)>1087)c[f>>2]=((d+-1088|0)>>>0)%1088|0;c[68]=11;return}function oj(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=c[48]|0;if(f>>>0>=240)return;i=c[49]|0;if((i+-7|0)>>>0>=129)return;o=b+108|0;e=c[o>>2]|0;if(!e){if((a[204]|0)!=0&(c[52]|0)>>>0<240?((c[53]|0)+-7|0)>>>0<129:0){s=(c[b+60>>2]|0)+f|0;h=(c[b+64>>2]|0)+i|0;f=(s|0)/8|0;e=(h|0)/8|0;g=(f|0)>-240?f:-240;if((s|0)<-7)f=g+479-(((239-f+g|0)>>>0)%240|0)|0;g=(e|0)>-136?e:-136;if((h|0)<-7)e=g+271-(((135-e+g|0)>>>0)%136|0)|0;i=(f|0)>239?((f+-240|0)>>>0)%240|0:f;f=(e|0)>135?((e+-136|0)>>>0)%136|0:e;e=b+104|0;if(!(a[e>>0]|0)){a[e>>0]=1;c[b+96>>2]=i;c[b+100>>2]=f;g=1;h=1;e=i}else{h=c[b+96>>2]|0;e=(i|0)<(h|0)?i:h;g=c[b+100>>2]|0;s=(f|0)<(g|0)?f:g;g=1-s+((f|0)>(g|0)?f:g)|0;h=1-e+((i|0)>(h|0)?i:h)|0;f=s}c[b+80>>2]=e;c[b+84>>2]=f;c[b+88>>2]=h;c[b+92>>2]=g;return}e=b+104|0;if(!(a[e>>0]|0))return;a[e>>0]=0;if((c[b+88>>2]|0)>=2)return;if((c[b+92>>2]|0)>=2)return;b=b+80|0;c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;return}n=a[e>>0]|0;s=n&255;m=a[e+1>>0]|0;r=m&255;q=e+2|0;h=c[b+60>>2]|0;l=s<<3;g=h+f+((l+-8|0)/-2|0)|0;f=c[b+64>>2]|0;k=r<<3;e=f+i+((k+-8|0)/-2|0)|0;if(((a[205]|0)!=0&(c[52]|0)>>>0<240?((c[53]|0)+-7|0)>>>0<129&(c[54]|0)>>>0<240:0)?((c[55]|0)+-7|0)>>>0<129:0){a[205]=0;f=(g|0)>-1920?g:-1920;if((g|0)<0)g=f+3839-(((1919-g+f|0)>>>0)%1920|0)|0;f=(e|0)>-1088?e:-1088;if((e|0)<0)e=f+2175-(((1087-e+f|0)>>>0)%1088|0)|0;j=(((g|0)>1919?((g+-1920|0)>>>0)%1920|0:g)|0)/8|0;i=(((e|0)>1087?((e+-1088|0)>>>0)%1088|0:e)|0)/8|0;if(m<<24>>24?(p=b+4|0,n<<24>>24):0){f=0;do{g=(f+i|0)%136|0;h=O(f,s)|0;e=0;do{n=c[b>>2]|0;Fg[c[n+2439712>>2]&15](n,c[p>>2]|0,(e+j|0)%240|0,g,a[q+(e+h)>>0]|0);e=e+1|0}while((e|0)!=(s|0));f=f+1|0}while((f|0)!=(r|0))}Tj(c[b+112>>2]|0)|0;fN(c[o>>2]|0);c[o>>2]=0;return}j=g-((g|0)%8|0)-h|0;i=e-((e|0)%8|0)-f|0;lj(b,j+-1|0,i+-1|0,l|2,k|2);if(!(m<<24>>24))return;if(!(n<<24>>24))return;else e=0;do{g=O(e,s)|0;h=(e<<3)+i|0;f=0;do{p=c[b>>2]|0;Hg[c[p+2439696>>2]&7](p,(c[3]|0)+81920+((a[755]|0)*130968|0)|0,d[q+(f+g)>>0]|0,(f<<3)+j|0,h,0,0);f=f+1|0}while((f|0)!=(s|0));e=e+1|0}while((e|0)!=(r|0));return}function pj(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;c[68]=11;qj(b);if(!((a[205]|0)!=0&(c[52]|0)>>>0<240))return;if(!(((c[53]|0)+-7|0)>>>0<129&(c[54]|0)>>>0<240))return;if(((c[55]|0)+-7|0)>>>0>=129)return;a[205]=0;w=b+40|0;x=b+44|0;e=(c[b+60>>2]|0)+(c[48]|0)+(((c[w>>2]<<3)+-8|0)/-2|0)|0;d=(((c[x>>2]<<3)+-8|0)/-2|0)+(c[49]|0)+(c[b+64>>2]|0)|0;f=(e|0)>-1920?e:-1920;if((e|0)<0)e=f+3839-(((1919-e+f|0)>>>0)%1920|0)|0;f=(d|0)>-1088?d:-1088;if((d|0)<0)d=f+2175-(((1087-d+f|0)>>>0)%1088|0)|0;j=(((e|0)>1919?((e+-1920|0)>>>0)%1920|0:e)|0)/8|0;i=(((d|0)>1087?((d+-1088|0)>>>0)%1088|0:d)|0)/8|0;v=c[b>>2]|0;u=b+4|0;v=jg[c[v+2439716>>2]&31](v,c[u>>2]|0,j,i)|0;g=b+32|0;h=c[g>>2]|0;e=b+36|0;f=c[e>>2]|0;a:do if((v&255|0)!=((f<<4)+h|0)){d=c[79315]|0;if(!d){k=eN(261120)|0;c[79315]=k;f=c[e>>2]|0;h=c[g>>2]|0}else k=d;c[79316]=k;c[k>>2]=j;c[k+4>>2]=i;d=c[b+88>>2]|0;if((d|0)>0?(l=c[b+92>>2]|0,(l|0)>0):0){r=c[b+80>>2]|0;q=c[b+84>>2]|0;s=r;t=q;r=r+d|0;q=q+l|0}else{s=0;t=0;r=240;q=136}e=k;d=k;while(1){if(e>>>0<=d>>>0)if((e|0)==(d|0))d=0;else break a;else d=e+-8|0;p=c[e+4>>2]|0;o=c[e>>2]|0;c[79316]=d;e=c[x>>2]|0;d=c[w>>2]|0;if((e|0)>0){j=0;do{if((d|0)>0){g=j+p|0;i=(j+f<<4)+h|0;e=0;do{d=c[b>>2]|0;Fg[c[d+2439712>>2]&15](d,c[u>>2]|0,e+o|0,g,i+e&255);e=e+1|0;d=c[w>>2]|0}while((e|0)<(d|0));e=c[x>>2]|0}j=j+1|0}while((j|0)<(e|0));n=0}else n=0;do{l=(O(c[2160+(n<<2)>>2]|0,d)|0)+o|0;m=(O(c[2176+(n<<2)>>2]|0,e)|0)+p|0;do if((m|0)<(q|0)&(((l|0)>=(r|0)|(l|0)<(s|0)|(m|0)<(t|0))^1)){if((e|0)>0){k=0;j=1;while(1){if((d|0)>0){i=k+m|0;g=0;e=j;do{d=c[b>>2]|0;e=e&(jg[c[d+2439716>>2]&31](d,c[u>>2]|0,g+l|0,i)|0)<<24>>24==v<<24>>24;g=g+1|0;d=c[w>>2]|0}while((g|0)<(d|0));g=e;e=c[x>>2]|0}else g=j;k=k+1|0;if((k|0)>=(e|0))break;else j=g}if(g)i=e;else break}else i=e;e=c[79316]|0;g=c[79315]|0;if(!e){c[79316]=g;c[g>>2]=l;e=g+4|0}else{if(e>>>0>=(g+261112|0)>>>0)break a;k=e+8|0;c[79316]=k;c[k>>2]=l;e=e+12|0}c[e>>2]=m;e=i}while(0);n=n+1|0}while(n>>>0<4);e=c[79316]|0;d=c[79315]|0}}while(0);Tj(c[b+112>>2]|0)|0;return}function qj(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+16|0;t=u+8|0;q=u;if(a[b+76>>0]|0){l=u;return}j=b+40|0;k=b+44|0;n=c[j>>2]<<3;m=c[k>>2]<<3;o=b+60|0;r=c[o>>2]|0;e=r+(c[48]|0)+((n+-8|0)/-2|0)|0;p=b+64|0;s=c[p>>2]|0;d=((m+-8|0)/-2|0)+(c[49]|0)+s|0;r=e-((e|0)%8|0)-r|0;s=d-((d|0)%8|0)-s|0;d=c[b>>2]|0;Gg[c[d+2439692>>2]&7](d,r+-1|0,s+-1|0,n|2,m|2,15);m=c[b+32>>2]|0;n=c[b+36>>2]|0;d=c[k>>2]|0;e=c[j>>2]|0;if((d|0)>0){h=s;i=0;while(1){if((e|0)>0){g=(i+n<<4)+m|0;d=0;f=r;while(1){e=c[b>>2]|0;Hg[c[e+2439696>>2]&7](e,(c[3]|0)+81920+((a[755]|0)*130968|0)|0,g+d|0,f,h,0,0);d=d+1|0;e=c[j>>2]|0;if((d|0)>=(e|0))break;else f=f+8|0}d=c[k>>2]|0}i=i+1|0;if((i|0)>=(d|0))break;else h=h+8|0}}f=q;c[f>>2]=976828729;c[f+4>>2]=3750201;f=(c[o>>2]|0)+(c[48]|0)+(((e<<3)+-8|0)/-2|0)|0;d=(((d<<3)+-8|0)/-2|0)+(c[49]|0)+(c[p>>2]|0)|0;e=(f|0)>-1920?f:-1920;if((f|0)<0)f=e+3839-(((1919-f+e|0)>>>0)%1920|0)|0;e=(d|0)>-1088?d:-1088;if((d|0)<0)d=e+2175-(((1087-d+e|0)>>>0)%1088|0)|0;c[t>>2]=(((f|0)>1919?((f+-1920|0)>>>0)%1920|0:f)|0)/8|0;c[t+4>>2]=(((d|0)>1087?((d+-1088|0)>>>0)%1088|0:d)|0)/8|0;MN(q,85117,t)|0;p=c[b>>2]|0;p=lg[c[p+2439660>>2]&31](p,q,240,0,7)|0;t=r+11|0;r=(p+t|0)>239?r+-2-p|0:t;t=s+-8|0;t=(t|0)<8?s+11|0:t;s=c[b>>2]|0;Gg[c[s+2439688>>2]&7](s,r+-1|0,t+-1|0,p+1|0,7,15);s=c[b>>2]|0;lg[c[s+2439660>>2]&31](s,q,r,t,10)|0;l=u;return}function rj(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;sj(b);i=b+88|0;d=c[i>>2]|0;if((d|0)<=0){m=b+80|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;return}k=b+92|0;e=c[k>>2]|0;if((e|0)<=0){m=b+80|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;return}l=b+84|0;g=c[l>>2]|0;m=b+80|0;j=b+4|0;h=g;f=c[m>>2]|0;do{if((d|0)>0){d=(h|0)>-136?h:-136;d=d+271-(((135-h+d|0)>>>0)%136|0)|0;if((h|0)<0){g=((d|0)>135?((d+-136|0)>>>0)%136|0:d)*240|0;e=f;do{d=(e|0)>-240?e:-240;if((e|0)<0)d=d+479-(((239-e+d|0)>>>0)%240|0)|0;else d=e;a[(c[j>>2]|0)+(g+((d|0)>239?((d+-240|0)>>>0)%240|0:d))>>0]=0;e=e+1|0;f=c[m>>2]|0;d=c[i>>2]|0}while((e|0)<(d+f|0))}else{g=((h|0)>135?((h+-136|0)>>>0)%136|0:h)*240|0;e=f;do{d=(e|0)>-240?e:-240;if((e|0)<0)d=d+479-(((239-e+d|0)>>>0)%240|0)|0;else d=e;a[(c[j>>2]|0)+(g+((d|0)>239?((d+-240|0)>>>0)%240|0:d))>>0]=0;e=e+1|0;f=c[m>>2]|0;d=c[i>>2]|0}while((e|0)<(d+f|0))}g=c[l>>2]|0;e=c[k>>2]|0}h=h+1|0}while((h|0)<(g+e|0));Tj(c[b+112>>2]|0)|0;m=b+80|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;return}function sj(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+16|0;u=v+8|0;t=v;p=b+88|0;e=c[p>>2]|0;if((e|0)<=0){l=v;return}q=b+92|0;f=c[q>>2]|0;if((f|0)<=0){l=v;return}o=O(f,e)|0;r=o+2|0;s=eN(r)|0;if(!s){l=v;return}a[s>>0]=c[p>>2];n=c[q>>2]|0;a[s+1>>0]=n;m=b+84|0;if((n|0)>0){n=b+80|0;k=b+4|0;j=c[m>>2]|0;f=s+2|0;g=c[n>>2]|0;e=c[p>>2]|0;while(1){if((e|0)>0){e=(j|0)>-136?j:-136;e=e+271-(((135-j+e|0)>>>0)%136|0)|0;if((j|0)<0){h=((e|0)>135?((e+-136|0)>>>0)%136|0:e)*240|0;b=f;while(1){e=(g|0)>-240?g:-240;if((g|0)<0)e=e+479-(((239-g+e|0)>>>0)%240|0)|0;else e=g;f=b+1|0;a[b>>0]=a[(c[k>>2]|0)+(h+((e|0)>239?((e+-240|0)>>>0)%240|0:e))>>0]|0;g=g+1|0;e=c[n>>2]|0;b=c[p>>2]|0;if((g|0)>=(b+e|0))break;else b=f}}else{i=((j|0)>135?((j+-136|0)>>>0)%136|0:j)*240|0;h=g;while(1){e=(h|0)>-240?h:-240;if((h|0)<0)e=e+479-(((239-h+e|0)>>>0)%240|0)|0;else e=h;g=f+1|0;a[f>>0]=a[(c[k>>2]|0)+(i+((e|0)>239?((e+-240|0)>>>0)%240|0:e))>>0]|0;h=h+1|0;e=c[n>>2]|0;b=c[p>>2]|0;if((h|0)>=(b+e|0)){f=g;break}else f=g}}}else{b=e;e=g}j=j+1|0;if((j|0)>=((c[q>>2]|0)+(c[m>>2]|0)|0))break;else{g=e;e=b}}}b=eN(r<<1|1)|0;if(b|0){if((o|0)>-2){e=0;f=b;while(1){c[t>>2]=d[s+e>>0];MN(f,83632,t)|0;p=a[f>>0]|0;q=f+1|0;a[f>>0]=a[q>>0]|0;a[q>>0]=p;e=e+1|0;if((e|0)==(r|0))break;else f=f+2|0}}f=c[80021]|0;do if(f){e=c[f+240>>2]|0;if(!e){u=f+288|0;fN(c[u>>2]|0);c[u>>2]=nP(b)|0;break}else{hg[e&63](f,b)|0;break}}else mE(310358,u);while(0);fN(b)}fN(s);l=v;return}function tj(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;g=o+8|0;n=o+12|0;f=c[80021]|0;if(!f){mE(310474,o);l=o;return}e=c[f+248>>2]|0;if(!e){e=c[f+288>>2]|0;if(!e){l=o;return}if(!(a[e>>0]|0)){l=o;return}else h=9}else{if(!(gg[e&511](f)|0)){l=o;return}e=c[80021]|0;if(!e){mE(310416,g);m=nP(335059)|0}else{f=e;h=9}}do if((h|0)==9){e=c[f+244>>2]|0;if(!e){m=c[f+288>>2]|0;m=nP(m|0?m:335059)|0;break}else{m=gg[e&511](f)|0;break}}while(0);if(!m){l=o;return}k=WO(m)|0;g=k>>>1;do if(k>>>0>5){h=eN(g)|0;k=WO(m)|0;a[n>>0]=a[38110]|0;a[n+1>>0]=a[38111]|0;a[n+2>>0]=a[38112]|0;a[n+3>>0]=a[38113]|0;a[n+4>>0]=a[38114]|0;i=(k|0)/2|0;if((k|0)>1){j=n+3|0;k=n+2|0;e=m;f=0;while(1){a[j>>0]=a[e>>0]|0;a[k>>0]=a[e+1>>0]|0;a[h+f>>0]=AN(n)|0;f=f+1|0;if((f|0)>=(i|0))break;else e=e+2|0}}if((O(d[h+1>>0]|0,d[h>>0]|0)|0)==(g+-2|0)){c[b+108>>2]=h;c[b+12>>2]=2;break}else{fN(h);break}}while(0);fN(m);l=o;return}function uj(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;j=o+6|0;k=o+3|0;i=o;m=b+32|0;n=c[m>>2]|0;if(n|0){fN(c[n+8>>2]|0);f=c[n>>2]|0;while(1){g=c[f+4>>2]|0;if(!g)break;else f=g}if(f|0)do{g=f;f=c[f>>2]|0;h=c[g+8>>2]|0;if(h|0)fN(h);fN(g)}while((f|0)!=0);fN(n)}n=eN(16)|0;c[n+12>>2]=e;c[n+4>>2]=4480;h=eN(4480)|0;c[n+8>>2]=h;PQ(h|0,e|0,4480)|0;h=eN(20)|0;c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=0;c[h+12>>2]=0;c[h+16>>2]=0;c[n>>2]=h;c[b>>2]=d;c[b+4>>2]=e;a[b+8>>0]=0;e=b+9|0;a[e>>0]=a[j>>0]|0;a[e+1>>0]=a[j+1>>0]|0;a[e+2>>0]=a[j+2>>0]|0;a[b+12>>0]=0;e=b+13|0;a[e>>0]=a[k>>0]|0;a[e+1>>0]=a[k+1>>0]|0;a[e+2>>0]=a[k+2>>0]|0;c[b+16>>2]=-1;c[b+20>>2]=0;a[b+24>>0]=0;e=b+25|0;a[e>>0]=a[i>>0]|0;a[e+1>>0]=a[i+1>>0]|0;a[e+2>>0]=a[i+2>>0]|0;c[b+28>>2]=1;c[m>>2]=n;c[b+36>>2]=197;c[b+40>>2]=141;l=o;return}function vj(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,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;ua=l;l=l+272|0;A=ua+56|0;z=ua+48|0;y=ua+40|0;D=ua+32|0;C=ua+24|0;B=ua+16|0;x=ua+8|0;w=ua;sa=ua+64|0;ta=f+12|0;a[ta>>0]=0;pa=f+28|0;switch(c[pa>>2]|0){case 0:{g=eh()|0;if(g|0){o=f+24|0;n=f+4|0;p=f+32|0;do{a:do if((c[g>>2]|0)==768){k=c[g+16+4>>2]|0;g=e[160638]|0;b:do if(!(g&3264)){if(g&3|0)switch(((k|0)==127?1:((k|0)==1073741897)<<31>>31)&3){case 1:{ra=10;break}case 2:{ra=20;break}case 3:{ra=29;break}default:{}}}else{if((k|0)<120)switch(k|0){case 99:{ra=20;break b}case 118:{ra=29;break b}default:break b}if((k|0)<1073741897)switch(k|0){case 120:{ra=10;break b}default:break b}else switch(k|0){case 1073741897:{ra=20;break b}default:break b}}while(0);if((ra|0)==10){ra=0;i=c[n>>2]|0;j=a[o>>0]&15;if(i+(j<<4)|0?(s=eN(33)|0,s|0):0){g=0;h=s;while(1){c[w>>2]=d[i+(j<<4)+g>>0];MN(h,83632,w)|0;oa=a[h>>0]|0;qa=h+1|0;a[h>>0]=a[qa>>0]|0;a[qa>>0]=oa;g=g+1|0;if((g|0)==16)break;else h=h+2|0}g=c[80021]|0;do if(g){h=c[g+240>>2]|0;if(!h){qa=g+288|0;fN(c[qa>>2]|0);c[qa>>2]=nP(s)|0;break}else{hg[h&63](g,s)|0;break}}else mE(310358,x);while(0);fN(s)}g=(c[n>>2]|0)+((a[o>>0]&15)<<4)|0;h=g+16|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0));Tj(c[p>>2]|0)|0}else if((ra|0)==20){ra=0;i=c[n>>2]|0;j=a[o>>0]&15;if(i+(j<<4)|0?(v=eN(33)|0,v|0):0){g=0;h=v;while(1){c[B>>2]=d[i+(j<<4)+g>>0];MN(h,83632,B)|0;oa=a[h>>0]|0;qa=h+1|0;a[h>>0]=a[qa>>0]|0;a[qa>>0]=oa;g=g+1|0;if((g|0)==16)break;else h=h+2|0}g=c[80021]|0;do if(g){h=c[g+240>>2]|0;if(!h){qa=g+288|0;fN(c[qa>>2]|0);c[qa>>2]=nP(v)|0;break}else{hg[h&63](g,v)|0;break}}else mE(310358,C);while(0);fN(v)}}else if((ra|0)==29?(ra=0,Ug((c[n>>2]|0)+((a[o>>0]&15)<<4)|0,16,1,0)|0):0)Tj(c[p>>2]|0)|0;c:do if(!(b[160638]&3264))if((k|0)<1073741903)switch(k|0){case 9:{ra=46;break c}case 127:{ra=49;break c}default:break a}else switch(k|0){case 1073741904:{ra=47;break c}case 1073741903:{ra=48;break c}default:break a}else{if((k|0)>=127)if((k|0)<1073741903)switch(k|0){case 127:{ra=49;break c}default:break a}else switch(k|0){case 1073741904:{ra=47;break c}case 1073741903:{ra=48;break c}default:break a}switch(k|0){case 9:{ra=46;break c}case 122:break;case 121:{k=c[p>>2]|0;g=c[c[k>>2]>>2]|0;if(g|0?(c[k>>2]=g,q=c[g+12>>2]|0,r=g+16|0,q>>>0<(c[r>>2]|0)>>>0):0){i=g+8|0;j=k+8|0;g=q;h=0;while(1){qa=(c[j>>2]|0)+g|0;a[qa>>0]=a[qa>>0]^a[(c[i>>2]|0)+h>>0];g=g+1|0;if(g>>>0>=(c[r>>2]|0)>>>0)break;else h=h+1|0}}PQ(c[k+12>>2]|0,c[k+8>>2]|0,c[k+4>>2]|0)|0;break a}default:break a}m=c[p>>2]|0;g=c[m>>2]|0;if(c[g+4>>2]|0){h=c[g+12>>2]|0;k=g+16|0;if(h>>>0<(c[k>>2]|0)>>>0){i=g+8|0;j=m+8|0;g=h;h=0;while(1){qa=(c[j>>2]|0)+g|0;a[qa>>0]=a[qa>>0]^a[(c[i>>2]|0)+h>>0];g=g+1|0;if(g>>>0>=(c[k>>2]|0)>>>0)break;else h=h+1|0}g=c[m>>2]|0}c[m>>2]=c[g+4>>2]}PQ(c[m+12>>2]|0,c[m+8>>2]|0,c[m+4>>2]|0)|0;break a}while(0);if((ra|0)==46){ra=0;c[pa>>2]=1;break}else if((ra|0)==47){ra=0;qa=a[o>>0]|0;a[o>>0]=qa+15&15|qa&-16;break}else if((ra|0)==48){ra=0;qa=a[o>>0]|0;a[o>>0]=qa+1&15|qa&-16;break}else if((ra|0)==49){ra=0;g=(c[n>>2]|0)+((a[o>>0]&15)<<4)|0;h=g+16|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0));Tj(c[p>>2]|0)|0;break}}while(0);g=eh()|0}while((g|0)!=0)}xj(f);g=c[f>>2]|0;Bg[c[g+2439672>>2]&255](g,0);yj(f);Vg(c[f>>2]|0,0);g=c[f>>2]|0;Gg[c[g+2439688>>2]&7](g,23,11,192,96,1);g=0;do{qa=c[f>>2]|0;ra=g+11|0;Gg[c[qa+2439684>>2]&7](qa,23,ra,215,ra,0);g=g+6|0}while((g|0)<96);g=0;do{qa=c[f>>2]|0;ra=g+23|0;Gg[c[qa+2439684>>2]&7](qa,ra,11,ra,203,0);g=g+6|0}while((g|0)<192);g=c[48]|0;if(((((g+-23|0)>>>0<192?(E=c[49]|0,(E+-11|0)>>>0<96):0)?(c[68]=11,a[204]|0):0)?((c[52]|0)+-23|0)>>>0<192:0)?((c[53]|0)+-11|0)>>>0<96:0){ra=(g+-23|0)/6|0;g=16-((E+-11|0)/6|0)+255|0;i=(ra>>>1)+((c[f+4>>2]|0)+((a[f+24>>0]&15)<<4))|0;h=d[i>>0]|0;if(!(ra&1)){h=h&240;a[i>>0]=h;g=g&15}else{h=h&15;a[i>>0]=h;g=g<<4&4080}a[i>>0]=g|h;Tj(c[f+32>>2]|0)|0}q=f+4|0;h=c[q>>2]|0;r=f+24|0;i=a[r>>0]&15;g=0;do{ra=d[(g>>>1)+(h+(i<<4))>>0]|0;qa=c[f>>2]|0;ra=(O(g&1|0?ra>>>4:ra&15,-6)|0)+102|0;Gg[c[qa+2439688>>2]&7](qa,(g*6|0)+24|0,ra,5,5,6);g=g+1|0}while((g|0)!=32);n=f+8|0;m=0;do{j=((m|0)%8|0)*21|0;o=j+36|0;k=((m|0)/8|0)*13|0;p=k+110|0;g=c[48]|0;if(((((((((g|0)>=(o|0)?(fa=j+54|0,(g|0)<(fa|0)):0)?(ga=c[49]|0,(ga|0)>=(p|0)):0)?(ha=k+120|0,(ga|0)<(ha|0)):0)?(c[68]=11,a[205]|0):0)?(ra=c[52]|0,(ra|0)>=(o|0)&(ra|0)<(fa|0)):0)?(ra=c[53]|0,(ra|0)>=(p|0)&(ra|0)<(ha|0)):0)?(ra=c[54]|0,(ra|0)>=(o|0)&(ra|0)<(fa|0)):0)?(ra=c[55]|0,(ra|0)>=(p|0)&(ra|0)<(ha|0)):0){a[205]=0;a[r>>0]=a[r>>0]&-16|m&15}do if(a[ta>>0]|0){g=c[f>>2]|0;Dg[c[g+2439752>>2]&63](sa,g,0);g=a[sa>>0]|0;if(g<<24>>24>-1){i=(c[q>>2]|0)+256+((a[n>>0]&63)*66|0)+(g<<24>>24<<1)|0;h=c[f>>2]|0;g=c[h+2439688>>2]|0;i=(((d[i>>0]|d[i+1>>0]<<8)&65535)>>>4&15|0)==(m|0)?6:15;break}else{h=c[f>>2]|0;g=c[h+2439688>>2]|0;i=15;break}}else{h=c[f>>2]|0;g=c[h+2439688>>2]|0;i=15}while(0);Gg[g&7](h,o,p,18,10,i);if((a[r>>0]&15|0)==(m|0)){ra=c[f>>2]|0;Gg[c[ra+2439692>>2]&7](ra,j+34|0,k+108|0,22,14,15)}h=c[q>>2]|0;g=0;do{qa=c[f>>2]|0;ra=g;g=g+1|0;Eg[c[qa+2439676>>2]&63](qa,o+g|0,8-((d[h+(m<<4)+ra>>0]|0)>>>1&7)+p|0,0)}while((g|0)!=16);m=m+1|0}while((m|0)!=16);ra=349;break}case 1:{g=eh()|0;if(!g){s=f+4|0;r=f+8|0}else{p=f+8|0;n=f+4|0;o=f+32|0;while(1){d:do if((c[g>>2]|0)==768){k=c[g+16+4>>2]|0;g=e[160638]|0;e:do if(!(g&3264)){if(g&3|0)switch(((k|0)==127?1:((k|0)==1073741897)<<31>>31)&3){case 1:{ra=94;break}case 2:{ra=103;break}case 3:{ra=111;break}default:{}}}else{if((k|0)<120)switch(k|0){case 99:{ra=103;break e}case 118:{ra=111;break e}default:break e}if((k|0)<1073741897)switch(k|0){case 120:{ra=94;break e}default:break e}else switch(k|0){case 1073741897:{ra=103;break e}default:break e}}while(0);if((ra|0)==94){ra=0;i=(c[n>>2]|0)+256+((a[p>>0]&63)*66|0)|0;j=eN(133)|0;if(j|0){g=0;h=j;while(1){c[D>>2]=d[i+g>>0];MN(h,83632,D)|0;ga=a[h>>0]|0;ha=h+1|0;a[h>>0]=a[ha>>0]|0;a[ha>>0]=ga;g=g+1|0;if((g|0)==66)break;else h=h+2|0}g=c[80021]|0;do if(g){h=c[g+240>>2]|0;if(!h){ha=g+288|0;fN(c[ha>>2]|0);c[ha>>2]=nP(j)|0;break}else{hg[h&63](g,j)|0;break}}else mE(310358,y);while(0);fN(j)}g=(c[n>>2]|0)+256+((a[p>>0]&63)*66|0)|0;h=g+66|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0));Tj(c[o>>2]|0)|0}else if((ra|0)==103){ra=0;i=(c[n>>2]|0)+256+((a[p>>0]&63)*66|0)|0;j=eN(133)|0;if(j|0){g=0;h=j;while(1){c[z>>2]=d[i+g>>0];MN(h,83632,z)|0;ga=a[h>>0]|0;ha=h+1|0;a[h>>0]=a[ha>>0]|0;a[ha>>0]=ga;g=g+1|0;if((g|0)==66)break;else h=h+2|0}g=c[80021]|0;do if(g){h=c[g+240>>2]|0;if(!h){ha=g+288|0;fN(c[ha>>2]|0);c[ha>>2]=nP(j)|0;break}else{hg[h&63](g,j)|0;break}}else mE(310358,A);while(0);fN(j)}}else if((ra|0)==111?(ra=0,Ug((c[n>>2]|0)+256+((a[p>>0]&63)*66|0)|0,66,1,0)|0):0)Tj(c[o>>2]|0)|0;f:do if(!(b[160638]&3264))if((k|0)<1073741903)switch(k|0){case 9:{ra=128;break f}case 127:{ra=131;break f}default:break d}else switch(k|0){case 1073741904:{ra=129;break f}case 1073741903:{ra=130;break f}default:break d}else{if((k|0)>=127)if((k|0)<1073741903)switch(k|0){case 127:{ra=131;break f}default:break d}else switch(k|0){case 1073741904:{ra=129;break f}case 1073741903:{ra=130;break f}default:break d}switch(k|0){case 9:{ra=128;break f}case 122:break;case 121:{k=c[o>>2]|0;g=c[c[k>>2]>>2]|0;if(g|0?(c[k>>2]=g,t=c[g+12>>2]|0,u=g+16|0,t>>>0<(c[u>>2]|0)>>>0):0){i=g+8|0;j=k+8|0;g=t;h=0;while(1){ha=(c[j>>2]|0)+g|0;a[ha>>0]=a[ha>>0]^a[(c[i>>2]|0)+h>>0];g=g+1|0;if(g>>>0>=(c[u>>2]|0)>>>0)break;else h=h+1|0}}PQ(c[k+12>>2]|0,c[k+8>>2]|0,c[k+4>>2]|0)|0;break d}default:break d}m=c[o>>2]|0;g=c[m>>2]|0;if(c[g+4>>2]|0){h=c[g+12>>2]|0;k=g+16|0;if(h>>>0<(c[k>>2]|0)>>>0){i=g+8|0;j=m+8|0;g=h;h=0;while(1){ha=(c[j>>2]|0)+g|0;a[ha>>0]=a[ha>>0]^a[(c[i>>2]|0)+h>>0];g=g+1|0;if(g>>>0>=(c[k>>2]|0)>>>0)break;else h=h+1|0}g=c[m>>2]|0}c[m>>2]=c[g+4>>2]}PQ(c[m+12>>2]|0,c[m+8>>2]|0,c[m+4>>2]|0)|0;break d}while(0);if((ra|0)==128){ra=0;c[pa>>2]=0;break}else if((ra|0)==129){ra=0;ha=a[p>>0]|0;a[p>>0]=ha+63&63|ha&-64;break}else if((ra|0)==130){ra=0;ha=a[p>>0]|0;a[p>>0]=ha+1&63|ha&-64;break}else if((ra|0)==131){ra=0;g=(c[n>>2]|0)+256+((a[p>>0]&63)*66|0)|0;h=g+66|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0));Tj(c[o>>2]|0)|0;break}}while(0);g=eh()|0;if(!g){s=n;r=p;break}}}xj(f);k=c[f>>2]|0;Bg[c[k+2439672>>2]&255](k,0);k=c[s>>2]|0;h=a[r>>0]|0;g=0;do{ha=(g|0)<7;c[sa+(g<<4)>>2]=(ha?40:-24)+(g*10|0);c[sa+(g<<4)+4>>2]=117;c[sa+(g<<4)+8>>2]=ha?10:7;c[sa+(g<<4)+12>>2]=ha?16:8;g=g+1|0}while((g|0)!=13);j=h&63;g=c[48]|0;g:do if((g+-40|0)>>>0<70?(F=c[49]|0,(F+-117|0)>>>0<16):0){c[68]=11;h=sa+192|0;ra=c[h>>2]|0;if((((g|0)>=(ra|0)?(g|0)<((c[sa+200>>2]|0)+ra|0):0)?(G=c[sa+196>>2]|0,(F|0)>=(G|0)):0)?(F|0)<((c[sa+204>>2]|0)+G|0):0){g=12;ra=141}else ra=142;do if((ra|0)==142){ha=c[sa+176>>2]|0;if((((g|0)>=(ha|0)?(g|0)<((c[sa+184>>2]|0)+ha|0):0)?(H=c[sa+180>>2]|0,(F|0)>=(H|0)):0)?(F|0)<((c[sa+188>>2]|0)+H|0):0){g=11;ra=141;break}ha=c[sa+160>>2]|0;if((((g|0)>=(ha|0)?(g|0)<((c[sa+168>>2]|0)+ha|0):0)?(I=c[sa+164>>2]|0,(F|0)>=(I|0)):0)?(F|0)<((c[sa+172>>2]|0)+I|0):0){g=10;ra=141;break}ha=c[sa+128>>2]|0;if((((g|0)>=(ha|0)?(g|0)<((c[sa+136>>2]|0)+ha|0):0)?(J=c[sa+132>>2]|0,(F|0)>=(J|0)):0)?(F|0)<((c[sa+140>>2]|0)+J|0):0){g=8;ra=141;break}ha=c[sa+112>>2]|0;if((((g|0)>=(ha|0)?(g|0)<((c[sa+120>>2]|0)+ha|0):0)?(K=c[sa+116>>2]|0,(F|0)>=(K|0)):0)?(F|0)<((c[sa+124>>2]|0)+K|0):0){g=7;ra=141;break}ha=c[sa+96>>2]|0;if((((g|0)>=(ha|0)?(g|0)<((c[sa+104>>2]|0)+ha|0):0)?(L=c[sa+100>>2]|0,(F|0)>=(L|0)):0)?(F|0)<((c[sa+108>>2]|0)+L|0):0){g=6;ra=141;break}ha=c[sa+80>>2]|0;if((((g|0)>=(ha|0)?(g|0)<((c[sa+88>>2]|0)+ha|0):0)?(M=c[sa+84>>2]|0,(F|0)>=(M|0)):0)?(F|0)<((c[sa+92>>2]|0)+M|0):0){g=5;ra=141;break}ha=c[sa+64>>2]|0;if((((g|0)>=(ha|0)?(g|0)<((c[sa+72>>2]|0)+ha|0):0)?(N=c[sa+68>>2]|0,(F|0)>=(N|0)):0)?(F|0)<((c[sa+76>>2]|0)+N|0):0){g=4;ra=141;break}ha=c[sa+48>>2]|0;if((((g|0)>=(ha|0)?(g|0)<((c[sa+56>>2]|0)+ha|0):0)?(P=c[sa+52>>2]|0,(F|0)>=(P|0)):0)?(F|0)<((c[sa+60>>2]|0)+P|0):0){g=3;ra=141;break}ha=c[sa+32>>2]|0;if((((g|0)>=(ha|0)?(g|0)<((c[sa+40>>2]|0)+ha|0):0)?(Q=c[sa+36>>2]|0,(F|0)>=(Q|0)):0)?(F|0)<((c[sa+44>>2]|0)+Q|0):0){g=2;ra=141;break}ha=c[sa+16>>2]|0;if((((g|0)>=(ha|0)?(g|0)<((c[sa+24>>2]|0)+ha|0):0)?(R=c[sa+20>>2]|0,(F|0)>=(R|0)):0)?(F|0)<((c[sa+28>>2]|0)+R|0):0){g=1;ra=141;break}ha=c[sa>>2]|0;if((((g|0)>=(ha|0)?(g|0)<((c[sa+8>>2]|0)+ha|0):0)?(S=c[sa+4>>2]|0,(F|0)>=(S|0)):0)?(F|0)<((c[sa+12>>2]|0)+S|0):0){g=0;ra=141}}while(0);if((ra|0)==141)XP(804,c[2244+(c[2192+(g<<2)>>2]<<2)>>2]|0,39)|0;if((a[204]|0?((c[52]|0)+-40|0)>>>0<70:0)?((c[53]|0)+-117|0)>>>0<16:0){i=c[48]|0;ha=c[h>>2]|0;if((((i|0)>=(ha|0)?(i|0)<((c[sa+200>>2]|0)+ha|0):0)?(T=c[49]|0,U=c[sa+196>>2]|0,(T|0)>=(U|0)):0)?(T|0)<((c[sa+204>>2]|0)+U|0):0)g=12;else ra=159;h:do if((ra|0)==159){ha=c[sa+176>>2]|0;if((((i|0)>=(ha|0)?(i|0)<((c[sa+184>>2]|0)+ha|0):0)?(V=c[49]|0,W=c[sa+180>>2]|0,(V|0)>=(W|0)):0)?(V|0)<((c[sa+188>>2]|0)+W|0):0){g=11;break}ha=c[sa+160>>2]|0;if((((i|0)>=(ha|0)?(i|0)<((c[sa+168>>2]|0)+ha|0):0)?(X=c[49]|0,Y=c[sa+164>>2]|0,(X|0)>=(Y|0)):0)?(X|0)<((c[sa+172>>2]|0)+Y|0):0){g=10;break}ha=c[sa+128>>2]|0;if((((i|0)>=(ha|0)?(i|0)<((c[sa+136>>2]|0)+ha|0):0)?(Z=c[49]|0,_=c[sa+132>>2]|0,(Z|0)>=(_|0)):0)?(Z|0)<((c[sa+140>>2]|0)+_|0):0){g=8;break}ha=c[sa+112>>2]|0;if((((i|0)>=(ha|0)?(i|0)<((c[sa+120>>2]|0)+ha|0):0)?($=c[49]|0,aa=c[sa+116>>2]|0,($|0)>=(aa|0)):0)?($|0)<((c[sa+124>>2]|0)+aa|0):0){g=7;break}ha=c[sa+96>>2]|0;if((((i|0)>=(ha|0)?(i|0)<((c[sa+104>>2]|0)+ha|0):0)?(ba=c[49]|0,ca=c[sa+100>>2]|0,(ba|0)>=(ca|0)):0)?(ba|0)<((c[sa+108>>2]|0)+ca|0):0){g=6;break}ha=c[sa+80>>2]|0;if((((i|0)>=(ha|0)?(i|0)<((c[sa+88>>2]|0)+ha|0):0)?(da=c[49]|0,ea=c[sa+84>>2]|0,(da|0)>=(ea|0)):0)?(da|0)<((c[sa+92>>2]|0)+ea|0):0){g=5;break}ha=c[sa+64>>2]|0;do if((i|0)>=(ha|0)?(i|0)<((c[sa+72>>2]|0)+ha|0):0){g=c[49]|0;h=c[sa+68>>2]|0;if((g|0)<(h|0))break;if((g|0)<((c[sa+76>>2]|0)+h|0)){g=4;break h}}while(0);g=c[sa+48>>2]|0;do if((i|0)>=(g|0)){if((i|0)>=((c[sa+56>>2]|0)+g|0))break;g=c[49]|0;h=c[sa+52>>2]|0;if((g|0)<(h|0))break;if((g|0)<((c[sa+60>>2]|0)+h|0)){g=3;break h}}while(0);g=c[sa+32>>2]|0;do if((i|0)>=(g|0)){if((i|0)>=((c[sa+40>>2]|0)+g|0))break;g=c[49]|0;h=c[sa+36>>2]|0;if((g|0)<(h|0))break;if((g|0)<((c[sa+44>>2]|0)+h|0)){g=2;break h}}while(0);g=c[sa+16>>2]|0;do if((i|0)>=(g|0)){if((i|0)>=((c[sa+24>>2]|0)+g|0))break;g=c[49]|0;h=c[sa+20>>2]|0;if((g|0)<(h|0))break;if((g|0)<((c[sa+28>>2]|0)+h|0)){g=1;break h}}while(0);g=c[sa>>2]|0;if((i|0)<(g|0))break g;if((i|0)>=((c[sa+8>>2]|0)+g|0))break g;g=c[49]|0;h=c[sa+4>>2]|0;if((g|0)<(h|0))break g;if((g|0)<((c[sa+12>>2]|0)+h|0))g=0;else break g}while(0);ha=k+256+(j*66|0)+60|0;ga=(c[2192+(g<<2)>>2]&65535)<<8&3840|(d[ha>>0]|d[ha+1>>0]<<8)&-3841;a[ha>>0]=ga;a[ha+1>>0]=ga>>8;a[ta>>0]=1}}while(0);j=k+256+(j*66|0)+60|0;i=0;while(1){g=(i|0)<7;h=c[2192+(i<<2)>>2]|0;if((i|0)==9){i=10;continue}k=c[f>>2]|0;m=c[k+2439688>>2]|0;n=c[sa+(i<<4)>>2]|0;o=c[sa+(i<<4)+4>>2]|0;p=(c[sa+(i<<4)+8>>2]|0)-(g&1)|0;q=c[sa+(i<<4)+12>>2]|0;if((a[ta>>0]|0)!=0?(((d[j>>0]|d[j+1>>0]<<8)&65535)>>>8&15|0)==(h|0):0)g=6;else g=g?15:0;Gg[m&7](k,n,o,p,q,g&255);i=i+1|0;if((i|0)==13)break}yj(f);Vg(c[f>>2]|0,0);Aj(f,40,10,85298,a[r>>0]&63,142);o=(c[s>>2]|0)+256+((a[r>>0]&63)*66|0)+60|0;Aj(f,88,10,85537,(((d[o>>0]|d[o+1>>0]<<8)<<9&65535)<<16>>16>>13&65535)<<24>>24,143);o=f+20|0;g=0;h=18;while(1){j=c[f>>2]|0;i=c[2292+(g<<2)>>2]|0;j=37-(lg[c[j+2439660>>2]&31](j,i,0,-6,0)|0)|0;ha=c[48]|0;if((((((((ha|0)>=(j|0)&(ha|0)<37?(ia=c[49]|0,(ia|0)>=(h|0)):0)?(ja=h+6|0,(ia|0)<(ja|0)):0)?(c[68]=11,a[205]|0):0)?(ha=c[52]|0,(ha|0)>=(j|0)&(ha|0)<37):0)?(ha=c[53]|0,(ha|0)>=(h|0)&(ha|0)<(ja|0)):0)?(ha=c[54]|0,(ha|0)>=(j|0)&(ha|0)<37):0)?(ha=c[55]|0,(ha|0)>=(h|0)&(ha|0)<(ja|0)):0){a[205]=0;c[o>>2]=g}ha=c[f>>2]|0;lg[c[ha+2439660>>2]&31](ha,i,j,h,(g|0)==(c[o>>2]|0)?15:3)|0;g=g+1|0;if((g|0)==4)break;else h=h+8|0}h=c[s>>2]|0;i=a[r>>0]&63;g=c[o>>2]|0;switch(g|0){case 3:{do if(((c[48]|0)+-9|0)>>>0<18?((c[49]|0)+-66|0)>>>0<6:0){c[68]=11;if((((a[205]|0?((c[52]|0)+-9|0)>>>0<18:0)?((c[53]|0)+-66|0)>>>0<6:0)?((c[54]|0)+-9|0)>>>0<18:0)?((c[55]|0)+-66|0)>>>0<6:0){a[205]=0;g=h+256+(i*66|0)+60|0;ja=(d[g>>0]|d[g+1>>0]<<8)^8;a[g>>0]=ja;a[g+1>>0]=ja>>8;break}g=h+256+(i*66|0)+60|0}else ra=257;while(0);if((ra|0)==257)g=h+256+(i*66|0)+60|0;ra=c[f>>2]|0;lg[c[ra+2439664>>2]&31](ra,85302,9,66,(d[g>>0]|d[g+1>>0]<<8)&8?15:3)|0;ra=277;break}case 2:{do if(((c[48]|0)+-6|0)>>>0<24?((c[49]|0)+-66|0)>>>0<6:0){c[68]=11;if((((a[205]|0?((c[52]|0)+-6|0)>>>0<24:0)?((c[53]|0)+-66|0)>>>0<6:0)?((c[54]|0)+-6|0)>>>0<24:0)?((c[55]|0)+-66|0)>>>0<6:0){a[205]=0;g=h+256+(i*66|0)+60|0;ja=(d[g>>0]|d[g+1>>0]<<8)^128;a[g>>0]=ja;a[g+1>>0]=ja>>8;break}g=h+256+(i*66|0)+60|0}else ra=268;while(0);if((ra|0)==268)g=h+256+(i*66|0)+60|0;ra=c[f>>2]|0;lg[c[ra+2439660>>2]&31](ra,85306,6,66,(d[g>>0]|d[g+1>>0]<<8)&128?15:3)|0;ra=277;break}default:{}}if((ra|0)==277)g=c[o>>2]|0;i:do if(!g){g=0;do{m=(16-g|0)*6|0;n=m+12|0;if((((c[48]|0)+-222|0)>>>0<10?(ma=c[49]|0,(ma|0)>=(n|0)):0)?(na=m+17|0,(ma|0)<(na|0)):0){c[68]=11;if(((((a[205]|0)!=0?((c[52]|0)+-222|0)>>>0<10:0)?(ja=c[53]|0,(ja|0)>=(n|0)&(ja|0)<(na|0)):0)?((c[54]|0)+-222|0)>>>0<10:0)?(ja=c[55]|0,(ja|0)>=(n|0)&(ja|0)<(na|0)):0){ra=304;break}else i=7}else i=3;do if(a[ta>>0]|0){h=c[f>>2]|0;Dg[c[h+2439752>>2]&63](sa,h,0);h=a[sa>>0]|0;if(h<<24>>24>-1){h=(c[s>>2]|0)+256+((a[r>>0]&63)*66|0)+(h<<24>>24<<1)|0;k=c[f>>2]|0;j=c[k+2439688>>2]|0;h=(((d[h>>0]|d[h+1>>0]<<8)&65535)>>>4&15|0)==(g|0)?6:i;break}else{k=c[f>>2]|0;j=c[k+2439688>>2]|0;h=i;break}}else{k=c[f>>2]|0;j=c[k+2439688>>2]|0;h=i}while(0);Gg[j&7](k,222,n,10,5,h);if((((c[48]|0)+-234|0)>>>0<5?(ka=c[49]|0,(ka|0)>=(n|0)):0)?(la=m+17|0,(ka|0)<(la|0)):0){c[68]=11;if(((((a[205]|0)!=0?((c[52]|0)+-234|0)>>>0<5:0)?(ja=c[53]|0,(ja|0)>=(n|0)&(ja|0)<(la|0)):0)?((c[54]|0)+-234|0)>>>0<5:0)?(ja=c[55]|0,(ja|0)>=(n|0)&(ja|0)<(la|0)):0){a[205]=0;i=c[s>>2]|0;j=a[r>>0]&63;k=(g&65535)<<4&240;h=0;do{ja=i+256+(j*66|0)+(h<<1)|0;ia=(d[ja>>0]|d[ja+1>>0]<<8)&-241|k;a[ja>>0]=ia;a[ja+1>>0]=ia>>8;h=h+1|0}while((h|0)!=30);h=7}else h=7}else h=3;Xg(234,n,85311,h);ja=c[s>>2]|0;ia=c[f>>2]|0;Eg[c[ia+2439676>>2]&63](ia,223,(((d[ja+(g<<4)>>0]|0)>>>2&3^3)&255)+n|0,15);ia=c[f>>2]|0;Eg[c[ia+2439676>>2]&63](ia,224,(((d[ja+(g<<4)+2>>0]|0)>>>2&3^3)&255)+n|0,15);ia=c[f>>2]|0;Eg[c[ia+2439676>>2]&63](ia,225,(((d[ja+(g<<4)+4>>0]|0)>>>2&3^3)&255)+n|0,15);ia=c[f>>2]|0;Eg[c[ia+2439676>>2]&63](ia,226,(((d[ja+(g<<4)+6>>0]|0)>>>2&3^3)&255)+n|0,15);ia=c[f>>2]|0;Eg[c[ia+2439676>>2]&63](ia,227,(((d[ja+(g<<4)+8>>0]|0)>>>2&3^3)&255)+n|0,15);ia=c[f>>2]|0;Eg[c[ia+2439676>>2]&63](ia,228,(((d[ja+(g<<4)+10>>0]|0)>>>2&3^3)&255)+n|0,15);ia=c[f>>2]|0;Eg[c[ia+2439676>>2]&63](ia,229,(((d[ja+(g<<4)+12>>0]|0)>>>2&3^3)&255)+n|0,15);ia=c[f>>2]|0;Eg[c[ia+2439676>>2]&63](ia,230,(((d[ja+(g<<4)+14>>0]|0)>>>2&3^3)&255)+n|0,15);g=g+1|0}while((g|0)<16);if((ra|0)==304){a[205]=0;na=f+24|0;a[na>>0]=a[na>>0]&-16|g&15;c[pa>>2]=0;break}h=c[s>>2]|0;i=a[r>>0]&63;j=h+256+(i*66|0)|0;j=((d[j>>0]|d[j+1>>0]<<8)&65535)>>>4&15;k=j&65535;g=1;do{pa=h+256+(i*66|0)+(g<<1)|0;g=g+1|0;if((((d[pa>>0]|d[pa+1>>0]<<8)&65535)>>>4&15)!=j<<16>>16)break i}while((g|0)<30);Xg(234,((16-k|0)*6|0)+12|0,85319,15)}while(0);g=c[f>>2]|0;lg[c[g+2439660>>2]&31](g,85327,3,108,3)|0;g=(c[s>>2]|0)+256+((a[r>>0]&63)*66|0)+62+(c[o>>2]|0)|0;Aj(f,3,116,335059,(d[g>>0]|0)>>>4&255,144);Aj(f,3,124,335059,a[g>>0]&15,145);g=c[f>>2]|0;Gg[c[g+2439688>>2]&7](g,39,17,180,96,1);g=0;do{na=c[f>>2]|0;pa=g+17|0;Gg[c[na+2439684>>2]&7](na,39,pa,219,pa,0);g=g+6|0}while((g|0)<96);g=0;do{na=c[f>>2]|0;pa=g+39|0;Gg[c[na+2439684>>2]&7](na,pa,17,pa,113,0);g=g+6|0}while((g|0)<180);g=c[f>>2]|0;Dg[c[g+2439752>>2]&63](sa,g,0);g=a[sa+(c[o>>2]|0)>>0]|0;if(g<<24>>24>-1){sa=c[f>>2]|0;Gg[c[sa+2439688>>2]&7](sa,((g<<24>>24)*6|0)+39|0,17,7,97,15)}m=c[s>>2]|0;n=a[r>>0]&63;g=c[48]|0;if(((((g+-39|0)>>>0<180?(oa=c[49]|0,(oa+-17|0)>>>0<96):0)?(c[68]=11,a[204]|0):0)?((c[52]|0)+-39|0)>>>0<180:0)?((c[53]|0)+-17|0)>>>0<96:0){g=(g+-39|0)/6|0;j=(oa+-17|0)/6|0;switch(c[o>>2]|0){case 1:{i=m+256+(n*66|0)+(g<<1)|0;h=i;i=(d[i>>0]|d[i+1>>0]<<8)&-16;g=j&15;ra=324;break}case 2:{i=m+256+(n*66|0)+(g<<1)|0;h=i;i=(d[i>>0]|d[i+1>>0]<<8)&-3841;g=(31-j&65535)<<8&3840;ra=324;break}case 3:{i=m+256+(n*66|0)+(g<<1)|0;h=i;i=(d[i>>0]|d[i+1>>0]<<8)&4095;g=(23-j&65535)<<12&65535;ra=324;break}case 0:{i=m+256+(n*66|0)+(g<<1)|0;h=i;i=(d[i>>0]|d[i+1>>0]<<8)&-241;g=(31-j&65535)<<4&240;ra=324;break}default:{}}if((ra|0)==324){sa=i|g;a[h>>0]=sa;a[h+1>>0]=sa>>8}Tj(c[f+32>>2]|0)|0}k=0;g=c[o>>2]|0;do{switch(g|0){case 1:{i=m+256+(n*66|0)+(k<<1)|0;j=(k*6|0)+40|0;g=90;h=1;while(1){sa=c[f>>2]|0;Gg[c[sa+2439688>>2]&7](sa,j,g+18|0,5,5,6);if((h|0)<(16-((d[i>>0]|d[i+1>>0]<<8)&15)|0)){g=g+-6|0;h=h+1|0}else break}break}case 2:{ra=c[f>>2]|0;sa=m+256+(n*66|0)+(k<<1)|0;Gg[c[ra+2439688>>2]&7](ra,(k*6|0)+40|0,114-(((((d[sa>>0]|d[sa+1>>0]<<8)&65535)>>>8&15)*6|0)+6&65535)|0,5,5,6);break}case 3:{h=m+256+(n*66|0)+(k<<1)|0;ra=((d[h>>0]|d[h+1>>0]<<8)<<16>>16>>12&65535)<<24;sa=ra>>24;g=(ra|0)>0?0:sa;if((g|0)<=(((ra|0)<0?0:sa)|0)){i=(k*6|0)+40|0;do{pa=c[f>>2]|0;ra=g;g=g+1|0;sa=(O(g,-6)|0)+66|0;Gg[c[pa+2439688>>2]&7](pa,i,sa,5,5,6);sa=((d[h>>0]|d[h+1>>0]<<8)<<16>>16>>12&65535)<<24}while((ra|0)<(((sa|0)<0?0:sa>>24)|0))}break}case 0:{ra=c[f>>2]|0;sa=m+256+(n*66|0)+(k<<1)|0;Gg[c[ra+2439688>>2]&7](ra,(k*6|0)+40|0,114-(((((d[sa>>0]|d[sa+1>>0]<<8)&65535)>>>4&15)*6|0)+6&65535)|0,5,5,6);break}default:{}}k=k+1|0;g=c[o>>2]|0}while((k|0)!=30);i=m+256+(n*66|0)+62+g|0;g=a[i>>0]|0;if((g&255)>15){h=0;do{sa=c[f>>2]|0;Gg[c[sa+2439688>>2]&7](sa,(((g&15)+h|0)*6|0)+40|0,111,5,2,14);h=h+1|0;g=a[i>>0]|0}while((h|0)<((g&255)>>>4&255|0))}g=c[s>>2]|0;h=a[r>>0]&63;sa=c[f>>2]|0;lg[c[sa+2439660>>2]&31](sa,85333,115,122,15)|0;h=g+256+(h*66|0)+60|0;g=0;do{i=g*11|0;j=i+139|0;k=c[48]|0;if((((((((k|0)>=(j|0)?(qa=i+145|0,(k|0)<(qa|0)):0)?((c[49]|0)+-122|0)>>>0<6:0)?(c[68]=11,a[205]|0):0)?(sa=c[52]|0,(sa|0)>=(j|0)&(sa|0)<(qa|0)):0)?((c[53]|0)+-122|0)>>>0<6:0)?(sa=c[54]|0,(sa|0)>=(j|0)&(sa|0)<(qa|0)):0)?((c[55]|0)+-122|0)>>>0<6:0){a[205]=0;sa=(d[h>>0]|d[h+1>>0]<<8)&-8|g&7;a[h>>0]=sa;a[h+1>>0]=sa>>8}sa=c[f>>2]|0;lg[c[sa+2439656>>2]&31](sa,g+49&255,j,122,(g|0)==((d[h>>0]|d[h+1>>0]<<8)&7|0)?15:3)|0;g=g+1|0}while((g|0)!=8);ra=349;break}default:{}}if((ra|0)==349?a[ta>>0]|0:0){g=f+8|0;h=f+16|0;i=(c[f+4>>2]|0)+256+((a[g>>0]&63)*66|0)+60|0;j=((d[i>>0]|d[i+1>>0]<<8)&65535)>>>8&15;if((c[h>>2]|0)==(j|0)){l=ua;return}c[h>>2]=j;ta=c[f>>2]|0;Bg[c[ta+2439744>>2]&255](ta,0);ta=c[f>>2]|0;f=d[i>>0]|d[i+1>>0]<<8;Gg[c[ta+2439740>>2]&7](ta,a[g>>0]&63,(f&65535)>>>8&15,f&7,-1,0);l=ua;return}c[f+16>>2]=-1;f=c[f>>2]|0;Bg[c[f+2439744>>2]&255](f,0);l=ua;return}function wj(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+64|0;k=v+56|0;i=v+48|0;t=v+40|0;r=v+32|0;q=v+24|0;m=v+16|0;s=v+8|0;p=v;switch(c[b+28>>2]|0){case 0:switch(e|0){case 0:{i=b+4|0;g=c[i>>2]|0;j=b+24|0;h=a[j>>0]&15;if(g+(h<<4)|0?(u=eN(33)|0,u|0):0){e=0;f=u;while(1){c[p>>2]=d[g+(h<<4)+e>>0];MN(f,83632,p)|0;r=a[f>>0]|0;t=f+1|0;a[f>>0]=a[t>>0]|0;a[t>>0]=r;e=e+1|0;if((e|0)==16)break;else f=f+2|0}f=c[80021]|0;do if(f){e=c[f+240>>2]|0;if(!e){t=f+288|0;fN(c[t>>2]|0);c[t>>2]=nP(u)|0;break}else{hg[e&63](f,u)|0;break}}else mE(310358,s);while(0);fN(u)}e=(c[i>>2]|0)+((a[j>>0]&15)<<4)|0;f=e+16|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(f|0));Tj(c[b+32>>2]|0)|0;l=v;return}case 1:{h=c[b+4>>2]|0;g=a[b+24>>0]&15;if(!(h+(g<<4)|0)){l=v;return}i=eN(33)|0;if(!i){l=v;return}else{e=0;f=i}while(1){c[m>>2]=d[h+(g<<4)+e>>0];MN(f,83632,m)|0;u=a[f>>0]|0;b=f+1|0;a[f>>0]=a[b>>0]|0;a[b>>0]=u;e=e+1|0;if((e|0)==16)break;else f=f+2|0}f=c[80021]|0;do if(f){e=c[f+240>>2]|0;if(!e){b=f+288|0;fN(c[b>>2]|0);c[b>>2]=nP(i)|0;break}else{hg[e&63](f,i)|0;break}}else mE(310358,q);while(0);fN(i);l=v;return}case 2:{if(!(Ug((c[b+4>>2]|0)+((a[b+24>>0]&15)<<4)|0,16,1,0)|0)){l=v;return}Tj(c[b+32>>2]|0)|0;l=v;return}case 3:{j=c[b+32>>2]|0;e=c[j>>2]|0;if(c[e+4>>2]|0){f=c[e+12>>2]|0;i=e+16|0;if(f>>>0<(c[i>>2]|0)>>>0){g=e+8|0;h=j+8|0;e=f;f=0;while(1){b=(c[h>>2]|0)+e|0;a[b>>0]=a[b>>0]^a[(c[g>>2]|0)+f>>0];e=e+1|0;if(e>>>0>=(c[i>>2]|0)>>>0)break;else f=f+1|0}e=c[j>>2]|0}c[j>>2]=c[e+4>>2]}PQ(c[j+12>>2]|0,c[j+8>>2]|0,c[j+4>>2]|0)|0;l=v;return}case 4:{i=c[b+32>>2]|0;e=c[c[i>>2]>>2]|0;if(e|0?(c[i>>2]=e,j=c[e+12>>2]|0,o=e+16|0,j>>>0<(c[o>>2]|0)>>>0):0){g=e+8|0;h=i+8|0;e=j;f=0;while(1){b=(c[h>>2]|0)+e|0;a[b>>0]=a[b>>0]^a[(c[g>>2]|0)+f>>0];e=e+1|0;if(e>>>0>=(c[o>>2]|0)>>>0)break;else f=f+1|0}}PQ(c[i+12>>2]|0,c[i+8>>2]|0,c[i+4>>2]|0)|0;l=v;return}default:{l=v;return}}case 1:switch(e|0){case 0:{h=b+4|0;i=b+8|0;g=(c[h>>2]|0)+256+((a[i>>0]&63)*66|0)|0;j=eN(133)|0;if(j|0){e=0;f=j;while(1){c[r>>2]=d[g+e>>0];MN(f,83632,r)|0;s=a[f>>0]|0;u=f+1|0;a[f>>0]=a[u>>0]|0;a[u>>0]=s;e=e+1|0;if((e|0)==66)break;else f=f+2|0}f=c[80021]|0;do if(f){e=c[f+240>>2]|0;if(!e){u=f+288|0;fN(c[u>>2]|0);c[u>>2]=nP(j)|0;break}else{hg[e&63](f,j)|0;break}}else mE(310358,t);while(0);fN(j)}e=(c[h>>2]|0)+256+((a[i>>0]&63)*66|0)|0;f=e+66|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(f|0));Tj(c[b+32>>2]|0)|0;l=v;return}case 1:{g=(c[b+4>>2]|0)+256+((a[b+8>>0]&63)*66|0)|0;h=eN(133)|0;if(!h){l=v;return}else{e=0;f=h}while(1){c[i>>2]=d[g+e>>0];MN(f,83632,i)|0;u=a[f>>0]|0;b=f+1|0;a[f>>0]=a[b>>0]|0;a[b>>0]=u;e=e+1|0;if((e|0)==66)break;else f=f+2|0}f=c[80021]|0;do if(f){e=c[f+240>>2]|0;if(!e){b=f+288|0;fN(c[b>>2]|0);c[b>>2]=nP(h)|0;break}else{hg[e&63](f,h)|0;break}}else mE(310358,k);while(0);fN(h);l=v;return}case 2:{if(!(Ug((c[b+4>>2]|0)+256+((a[b+8>>0]&63)*66|0)|0,66,1,0)|0)){l=v;return}Tj(c[b+32>>2]|0)|0;l=v;return}case 3:{j=c[b+32>>2]|0;e=c[j>>2]|0;if(c[e+4>>2]|0){f=c[e+12>>2]|0;i=e+16|0;if(f>>>0<(c[i>>2]|0)>>>0){g=e+8|0;h=j+8|0;e=f;f=0;while(1){b=(c[h>>2]|0)+e|0;a[b>>0]=a[b>>0]^a[(c[g>>2]|0)+f>>0];e=e+1|0;if(e>>>0>=(c[i>>2]|0)>>>0)break;else f=f+1|0}e=c[j>>2]|0}c[j>>2]=c[e+4>>2]}PQ(c[j+12>>2]|0,c[j+8>>2]|0,c[j+4>>2]|0)|0;l=v;return}case 4:{i=c[b+32>>2]|0;e=c[c[i>>2]>>2]|0;if(e|0?(c[i>>2]=e,f=c[e+12>>2]|0,n=e+16|0,f>>>0<(c[n>>2]|0)>>>0):0){g=e+8|0;h=i+8|0;e=f;f=0;while(1){b=(c[h>>2]|0)+e|0;a[b>>0]=a[b>>0]^a[(c[g>>2]|0)+f>>0];e=e+1|0;if(e>>>0>=(c[n>>2]|0)>>>0)break;else f=f+1|0}}PQ(c[i+12>>2]|0,c[i+8>>2]|0,c[i+4>>2]|0)|0;l=v;return}default:{l=v;return}}default:{l=v;return}}}function xj(e){e=e|0;var f=0,g=0,h=0;g=c[72]|0;do if(!(b[160638]&3264)){f=(a[g+13>>0]|0)==0?((a[g+17>>0]|0)==0?((a[g+11>>0]|0)==0?((a[g+5>>0]|0)==0?((a[g+10>>0]|0)==0?((a[g+25>>0]|0)==0?((a[g+6>>0]|0)==0?((a[g+7>>0]|0)==0?((a[g+27>>0]|0)==0?((a[g+22>>0]|0)==0?((a[g+29>>0]|0)==0)<<31>>31:1):2):3):4):5):6):7):8):9):10;if(!(a[g+16>>0]|0)){if((f|0)<=-1)break}else f=11;h=(c[e+4>>2]|0)+256+((a[e+8>>0]&63)*66|0)+60|0;f=(d[h>>0]|d[h+1>>0]<<8)&-3841|(f&65535)<<8&3840;a[h>>0]=f;a[h+1>>0]=f>>8;a[e+12>>0]=1}while(0);if(!(a[g+44>>0]|0))return;a[e+12>>0]=1;return}function yj(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;g=i;f=i+8|0;h=c[b>>2]|0;Gg[c[h+2439688>>2]&7](h,0,0,240,7,15);if(((c[48]|0)+-198|0)>>>0<18?((c[49]|0)+-1|0)>>>0<6:0){c[68]=11;XP(804,85455,39)|0;if(((a[204]|0)!=0?((c[52]|0)+-198|0)>>>0<18:0)?((c[53]|0)+-1|0)>>>0<6:0){a[b+12>>0]=1;e=3}else e=3}else e=10;j=c[b+4>>2]|0;h=a[b+8>>0]&63;c[f>>2]=3416899;h=j+256+(h*66|0)+60|0;h=d[h>>0]|d[h+1>>0]<<8;c[g>>2]=c[2308+(((h&65535)>>>8&15)<<2)>>2];c[g+4>>2]=(h&7)+1&65535;MN(f,85472,g)|0;h=c[b>>2]|0;lg[c[h+2439664>>2]&31](h,f,198,1,e)|0;h=b+28|0;if(((c[48]|0)+-222|0)>>>0<9&(c[49]|0)>>>0<7){c[68]=11;XP(804,85477,39)|0;if(((a[205]|0)!=0?((c[52]|0)+-222|0)>>>0<9&(c[53]|0)>>>0<7:0)?((c[54]|0)+-222|0)>>>0<9&(c[55]|0)>>>0<7:0){a[205]=0;c[h>>2]=0;e=3;g=13}else{e=3;g=12}}else{e=10;g=12}if((g|0)==12){f=c[h>>2]|0;if(!f)g=13}if((g|0)==13){f=c[b>>2]|0;Gg[c[f+2439688>>2]&7](f,222,0,9,7,0);f=c[h>>2]|0}Xg(222,0,85493,(f|0)==0?15:e);if(((c[48]|0)+-231|0)>>>0<9&(c[49]|0)>>>0<7){c[68]=11;XP(804,85509,39)|0;if(((a[205]|0)!=0?((c[52]|0)+-231|0)>>>0<9&(c[53]|0)>>>0<7:0)?((c[54]|0)+-231|0)>>>0<9&(c[55]|0)>>>0<7:0){a[205]=0;c[h>>2]=1;e=3}else{e=3;g=19}}else{e=10;g=19}if((g|0)==19){f=c[h>>2]|0;if((f|0)!=1){j=e;b=f;b=(b|0)==1;j=b?15:j;Xg(231,0,85501,j);l=i;return}}j=c[b>>2]|0;Gg[c[j+2439688>>2]&7](j,231,0,9,7,0);j=e;b=c[h>>2]|0;b=(b|0)==1;j=b?15:j;Xg(231,0,85501,j);l=i;return}function zj(b,c){b=b|0;c=c|0;var d=0;b=b+8|0;d=a[b>>0]|0;a[b>>0]=(d&255)+c&63|d&-64;return}function Aj(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+16|0;n=r;m=r+4|0;i=c[b>>2]|0;lg[c[i+2439660>>2]&31](i,f,d,e,15)|0;i=((WO(f)|0)*6|0)+d|0;f=c[48]|0;d=i+6|0;if((((((((f|0)>=(i|0)&(f|0)<(d|0)?(j=c[49]|0,(j|0)>=(e|0)):0)?(k=e+6|0,(j|0)<(k|0)):0)?(c[68]=11,a[205]|0):0)?(j=c[52]|0,(j|0)>=(i|0)&(j|0)<(d|0)):0)?(j=c[53]|0,(j|0)>=(e|0)&(j|0)<(k|0)):0)?(j=c[54]|0,(j|0)>=(i|0)&(j|0)<(d|0)):0)?(j=c[55]|0,(j|0)>=(e|0)&(j|0)<(k|0)):0){a[205]=0;Bg[h&255](b,-1)}Xg(i,e,85362,3);a[m>>0]=a[85554]|0;a[m+1>>0]=a[85555]|0;a[m+2>>0]=a[85556]|0;c[n>>2]=g;MN(m,85557,n)|0;f=c[b>>2]|0;lg[c[f+2439664>>2]&31](f,m,d,e,15)|0;d=i+18|0;f=c[48]|0;if(((((((((f|0)>=(d|0)?(o=i+24|0,(f|0)<(o|0)):0)?(p=c[49]|0,(p|0)>=(e|0)):0)?(q=e+6|0,(p|0)<(q|0)):0)?(c[68]=11,a[205]|0):0)?(p=c[52]|0,(p|0)>=(d|0)&(p|0)<(o|0)):0)?(p=c[53]|0,(p|0)>=(e|0)&(p|0)<(q|0)):0)?(p=c[54]|0,(p|0)>=(d|0)&(p|0)<(o|0)):0)?(p=c[55]|0,(p|0)>=(e|0)&(p|0)<(q|0)):0){a[205]=0;Bg[h&255](b,1)}Xg(d,e,85370,3);l=r;return}function Bj(b,e){b=b|0;e=e|0;var f=0,g=0;f=(c[b+4>>2]|0)+256+((a[b+8>>0]&63)*66|0)+60|0;g=d[f>>0]|d[f+1>>0]<<8;e=(((g&65535)>>>4&65535)+e&65535)<<4&112|g&-113;a[f>>0]=e;a[f+1>>0]=e>>8;Tj(c[b+32>>2]|0)|0;return}function Cj(b,d){b=b|0;d=d|0;var e=0,f=0;e=(c[b+4>>2]|0)+256+((a[b+8>>0]&63)*66|0)+62+(c[b+20>>2]|0)|0;f=a[e>>0]|0;a[e>>0]=(((f&255)>>>4&255)+d&255)<<4&255|f&15;Tj(c[b+32>>2]|0)|0;return}function Dj(b,d){b=b|0;d=d|0;var e=0,f=0;e=(c[b+4>>2]|0)+256+((a[b+8>>0]&63)*66|0)+62+(c[b+20>>2]|0)|0;f=a[e>>0]|0;a[e>>0]=(f&255)+d&15|f&-16;Tj(c[b+32>>2]|0)|0;return}function Ej(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=b+88|0;i=c[k>>2]|0;if(i|0){fN(c[i+8>>2]|0);f=c[i>>2]|0;while(1){g=c[f+4>>2]|0;if(!g)break;else f=g}if(f|0)do{g=f;f=c[f>>2]|0;h=c[g+8>>2]|0;if(h|0)fN(h);fN(g)}while((f|0)!=0);fN(i)}h=eN(16)|0;c[h+12>>2]=e;c[h+4>>2]=11928;f=eN(11928)|0;c[h+8>>2]=f;PQ(f|0,e|0,11928)|0;f=eN(20)|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[h>>2]=f;c[b>>2]=d;c[b+4>>2]=e;a[b+8>>0]=0;f=b+9|0;a[f>>0]=a[j>>0]|0;a[f+1>>0]=a[j+1>>0]|0;a[f+2>>0]=a[j+2>>0]|0;a[b+12>>0]=0;f=b+13|0;g=f+23|0;do{a[f>>0]=0;f=f+1|0}while((f|0)<(g|0));c[b+36>>2]=-1;c[b+40>>2]=3;d=b+44|0;e=b+77|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;c[d+20>>2]=0;c[d+24>>2]=0;c[d+28>>2]=0;a[d+32>>0]=0;a[e>>0]=0;a[e+1>>0]=0;a[e+2>>0]=0;c[b+80>>2]=16843009;c[b+84>>2]=0;c[k>>2]=h;c[b+92>>2]=198;c[b+96>>2]=146;c[b+52>>2]=-1;c[b+56>>2]=-1;k=b+60|0;c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=0;c[k+12>>2]=0;l=m;return}function Fj(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=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;na=l;l=l+64|0;ka=na+32|0;ja=na+16|0;T=na+8|0;ea=na;$=na+48|0;h=c[f>>2]|0;da=f+80|0;g=h+65436|0;if(!(a[da>>0]|0))b[g>>1]=b[g>>1]&4095;_=f+81|0;g=h+65454|0;if(!(a[_>>0]|0))b[g>>1]=b[g>>1]&4095;Z=f+82|0;g=h+65472|0;if(!(a[Z>>0]|0))b[g>>1]=b[g>>1]&4095;U=f+83|0;g=h+65490|0;if(!(a[U>>0]|0))b[g>>1]=b[g>>1]&4095;ma=f+84|0;switch(c[ma>>2]|0){case 0:{h=eh()|0;a:do if(!h)g=f+12|0;else{x=f+32|0;q=f+4|0;r=f+8|0;y=f+24|0;z=f+20|0;u=f+64|0;w=f+72|0;A=f+28|0;B=f+88|0;C=f+52|0;s=f+56|0;D=f+40|0;E=f+48|0;F=f+44|0;g=f+12|0;t=f+60|0;v=f+68|0;G=f+16|0;H=f+36|0;while(1){b:do switch(c[h>>2]|0){case 1027:{i=(c[h+20>>2]|0)>0;if(!(b[160638]&3264)){h=(c[x>>2]|0)+(i?-4:4)|0;c[x>>2]=h;i=64-(d[(c[q>>2]|0)+11520+((a[r>>0]&7)*51|0)+49>>0]|0)|0;if((h|0)<0){c[x>>2]=0;h=0}i=i+-16|0;if((h|0)<=(i|0))break b;c[x>>2]=i;break b}o=c[q>>2]|0;Y=a[r>>0]&7;h=(c[z>>2]|0)*3|0;h=(d[h+2+(o+11520+(Y*51|0))>>0]<<16|(d[h+1+(o+11520+(Y*51|0))>>0]<<8|d[o+11520+(Y*51|0)+h>>0]))>>>(((c[y>>2]|0)/8|0)*6|0)&63;if(h|0?(P=h+-1|0,o+(P*192|0)|0):0){Y=c[w>>2]|0;h=(Y|0)<1;Y=h?1:Y;h=c[(h?A:u)>>2]|0;n=Y+h|0;if((Y|0)>0){m=i?-3:-5;do{i=o+(P*192|0)+(h*3|0)|0;j=(d[i>>0]|d[i+1>>0]<<8)&65535|d[i+2>>0]<<16;k=((((j&16777215)>>>21)*12|0)+(j&15)&16777215)+m|0;if(k>>>0<96){Y=((k>>>0)/12|0)<<21|j&2097136|((k>>>0)%12|0)+4&15;X=Y&65535;a[i>>0]=X;a[i+1>>0]=X>>8;a[i+2>>0]=Y>>>16}h=h+1|0}while((h|0)<(n|0))}Tj(c[B>>2]|0)|0}break}case 768:{j=h+16|0;k=j+4|0;i=c[k>>2]|0;h=e[160638]|0;c:do if(!(h&3264)){if(h&3|0)switch(((i|0)==127?1:((i|0)==1073741897)<<31>>31)&3){case 1:{fa=26;break}case 2:{fa=27;break}case 3:{fa=28;break}default:{}}}else{if((i|0)<120)switch(i|0){case 99:{fa=27;break c}case 118:{fa=28;break c}default:break c}if((i|0)<1073741897)switch(i|0){case 120:{fa=26;break c}default:break c}else switch(i|0){case 1073741897:{fa=27;break c}default:break c}}while(0);if((fa|0)==26){fa=0;Hj(f,1)}else if((fa|0)==27){fa=0;Hj(f,0)}else if((fa|0)==28){fa=0;Ij(f)}h=b[160638]|0;if(h&3264){if((i|0)<122){switch(i|0){case 97:{Y=c[y>>2]|0;Y=Y-((Y|0)%8|0)|0;c[C>>2]=Y;c[s>>2]=0;c[y>>2]=Y+7;c[A>>2]=63;c[t>>2]=Y;c[u>>2]=0;c[v>>2]=8;c[w>>2]=64;if(((Y|0)%8|0|0)<=0)break b;c[C>>2]=-1;c[s>>2]=-1;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;break b}case 121:break;default:break b}m=c[B>>2]|0;h=c[c[m>>2]>>2]|0;if(h|0?(c[m>>2]=h,K=c[h+12>>2]|0,L=h+16|0,K>>>0<(c[L>>2]|0)>>>0):0){j=h+8|0;k=m+8|0;h=K;i=0;while(1){Y=(c[k>>2]|0)+h|0;a[Y>>0]=a[Y>>0]^a[(c[j>>2]|0)+i>>0];h=h+1|0;if(h>>>0>=(c[L>>2]|0)>>>0)break;else i=i+1|0}}PQ(c[m+12>>2]|0,c[m+8>>2]|0,c[m+4>>2]|0)|0;break b}if((i|0)>=1073741905)switch(i|0){case 1073741906:{Y=c[z>>2]|0;c[z>>2]=(Y|0)<1?0:Y+-1|0;break b}case 1073741905:{Y=c[z>>2]|0;c[z>>2]=(Y|0)>14?15:Y+1|0;break b}default:break b}switch(i|0){case 122:break;default:break b}n=c[B>>2]|0;h=c[n>>2]|0;if(c[h+4>>2]|0){i=c[h+12>>2]|0;m=h+16|0;if(i>>>0<(c[m>>2]|0)>>>0){j=h+8|0;k=n+8|0;h=i;i=0;while(1){Y=(c[k>>2]|0)+h|0;a[Y>>0]=a[Y>>0]^a[(c[j>>2]|0)+i>>0];h=h+1|0;if(h>>>0>=(c[m>>2]|0)>>>0)break;else i=i+1|0}h=c[n>>2]|0}c[n>>2]=c[h+4>>2]}PQ(c[n+12>>2]|0,c[n+8>>2]|0,c[n+4>>2]|0)|0;break b}m=c[A>>2]|0;if((m|0)<=-1){h=c[k>>2]|0;i=c[y>>2]|0;j=(i|0)/8|0;d:do if((h|0)<1073741903){switch(h|0){case 13:{fa=290;break d}case 127:{X=c[q>>2]|0;Y=a[r>>0]&7;p=(c[z>>2]|0)*3|0;V=X+11520+(Y*51|0)+p|0;W=p+1+(X+11520+(Y*51|0))|0;Y=p+2+(X+11520+(Y*51|0))|0;X=(d[W>>0]<<8|d[V>>0]|d[Y>>0]<<16)&~(63<<j*6);a[V>>0]=X;a[W>>0]=X>>>8;a[Y>>0]=X>>>16;Tj(c[B>>2]|0)|0;break b}case 9:break;default:break d}if((i|0)>=24)break b;c[y>>2]=(j<<3)+8;c[G>>2]=0;break b}else switch(h|0){case 1073741912:case 1073741905:{fa=290;break d}case 1073741904:{h=c[G>>2]|0;if((h|0)>0)h=h+-1|0;else{if((i|0)<=7)break b;c[y>>2]=i+-8&-8;h=1}c[G>>2]=h;break b}case 1073741903:{h=c[G>>2]|0;if((h|0)<1)h=h+1|0;else{if((i|0)>=24)break b;c[y>>2]=(j<<3)+8;h=0}c[G>>2]=h;break b}default:break d}while(0);if((fa|0)==290){fa=0;c[A>>2]=c[x>>2];break b}Y=h+-48|0;h=(h|0)==1073741922?0:(h+-1073741913|0)>>>0<9?h+-1073741912|0:Y>>>0<10?Y:-1;if((h|0)<=-1)break b;p=c[q>>2]|0;o=a[r>>0]&7;k=(c[z>>2]|0)*3|0;m=p+11520+(o*51|0)+k|0;n=k+1+(p+11520+(o*51|0))|0;o=k+2+(p+11520+(o*51|0))|0;p=d[o>>0]<<16|(d[n>>0]<<8|d[m>>0]);k=j*6|0;i=p>>>k&63;if(!(c[G>>2]|0)){j=h*10|0;h=i}else j=i-((i>>>0)%10|0)|0;h=j+((h|0)%10|0)|0;if((h|0)>=61)break b;Y=(h|0)<0?60:h;Y=p&~(63<<k)|((Y|0)>60?0:Y)<<k;a[m>>0]=Y;a[n>>0]=Y>>>8;a[o>>0]=Y>>>16;Tj(c[B>>2]|0)|0;if(c[G>>2]|0)break b;c[G>>2]=1;break b}o=c[j>>2]|0;p=c[k>>2]|0;n=(h&3)!=0;e:do if(n){f:do if((p|0)<1073741901){if((p|0)<127)switch(p|0){case 13:{fa=148;break e}case 32:{fa=147;break e}case 9:break f;default:break e}if((p|0)<1073741898)switch(p|0){case 127:{fa=131;break e}default:break e}else switch(p|0){case 1073741899:case 1073741898:break f;default:break e}}else switch(p|0){case 1073741912:{fa=148;break e}case 1073741902:case 1073741901:case 1073741903:case 1073741904:case 1073741905:case 1073741906:break;default:break e}while(0);if((c[C>>2]|0)>=0?(c[s>>2]|0)>=0:0){fa=53;break}c[C>>2]=c[y>>2];c[s>>2]=m;fa=53}else fa=53;while(0);g:do if((fa|0)==53){fa=0;if((p|0)<1073741901){if((p|0)<127){switch(p|0){case 13:{fa=148;break g}case 32:{fa=147;break g}case 9:break;default:{fa=153;break g}}h=c[y>>2]|0;c[y>>2]=(((((h|0)/8|0)+1|0)%4|0)<<3)+((h|0)%8|0);h=c[x>>2]|0;do if((m|0)<(h|0)){h=m;fa=124}else{if((m|0)<(h+16|0))break;h=m+-15|0;fa=124}while(0);if((fa|0)==124)c[x>>2]=h;j=64-(d[(c[q>>2]|0)+11520+((a[r>>0]&7)*51|0)+49>>0]|0)|0;if((m|0)>=(j|0))c[A>>2]=j+-1;if((h|0)<0){c[x>>2]=0;i=0}else i=h;h=j+-16|0;if((i|0)<=(h|0)){fa=153;break}c[x>>2]=h;fa=153;break}if((p|0)<1073741898)switch(p|0){case 127:{fa=131;break g}default:{fa=153;break g}}switch(p|0){case 1073741898:{fa=c[y>>2]|0;c[y>>2]=fa-((fa|0)%8|0);fa=153;break g}case 1073741899:break;default:{fa=153;break g}}i=(m|0)<16?0:m+-16|0;c[A>>2]=i;h=c[x>>2]|0;do if((i|0)<(h|0)){h=i;fa=104}else{if((i|0)<(h+16|0))break;h=i+-15|0;fa=104}while(0);if((fa|0)==104)c[x>>2]=h;j=64-(d[(c[q>>2]|0)+11520+((a[r>>0]&7)*51|0)+49>>0]|0)|0;if((i|0)>=(j|0))c[A>>2]=j+-1;if((h|0)<0){c[x>>2]=0;i=0}else i=h;h=j+-16|0;if((i|0)<=(h|0)){fa=153;break}c[x>>2]=h;fa=153;break}switch(p|0){case 1073741912:{fa=148;break g}case 1073741906:{h=m+-1|0;c[A>>2]=h;i=c[x>>2]|0;if((m|0)>(i|0))if((m|0)>(i+16|0)){h=m+-16|0;fa=57}else h=i;else fa=57;if((fa|0)==57)c[x>>2]=h;j=64-(d[(c[q>>2]|0)+11520+((a[r>>0]&7)*51|0)+49>>0]|0)|0;if((m|0)>(j|0))c[A>>2]=j+-1;if((h|0)<0){c[x>>2]=0;i=0}else i=h;h=j+-16|0;if((i|0)<=(h|0)){fa=153;break g}c[x>>2]=h;fa=153;break g}case 1073741905:{h=a[r>>0]&7;if((a[(c[f>>2]|0)+81916>>0]|0)==(h|0)?a[g>>0]|0:0){fa=153;break g}h=d[(c[q>>2]|0)+11520+(h*51|0)+49>>0]|0;if((m|0)>=(63-h|0)){fa=153;break g}j=m+1|0;c[A>>2]=j;i=c[x>>2]|0;do if((j|0)<(i|0)){i=j;fa=70}else{if((m|0)<(i+15|0))break;i=m+-14|0;fa=70}while(0);if((fa|0)==70)c[x>>2]=i;h=64-h|0;if((j|0)>=(h|0))c[A>>2]=h+-1;if((i|0)<0){c[x>>2]=0;i=0}h=h+-16|0;if((i|0)<=(h|0)){fa=153;break g}c[x>>2]=h;fa=153;break g}case 1073741904:{h=c[y>>2]|0;if((h|0)<=0){fa=153;break g}c[y>>2]=h+-1;h=c[x>>2]|0;if((m|0)>=(h|0)){if((m|0)>=(h+16|0)){h=m+-15|0;fa=81}}else{h=m;fa=81}if((fa|0)==81)c[x>>2]=h;j=64-(d[(c[q>>2]|0)+11520+((a[r>>0]&7)*51|0)+49>>0]|0)|0;if((m|0)>=(j|0))c[A>>2]=j+-1;if((h|0)<0){c[x>>2]=0;i=0}else i=h;h=j+-16|0;if((i|0)<=(h|0)){fa=153;break g}c[x>>2]=h;fa=153;break g}case 1073741903:{h=c[y>>2]|0;if((h|0)>=31){fa=153;break g}c[y>>2]=h+1;h=c[x>>2]|0;if((m|0)>=(h|0)){if((m|0)>=(h+16|0)){h=m+-15|0;fa=92}}else{h=m;fa=92}if((fa|0)==92)c[x>>2]=h;j=64-(d[(c[q>>2]|0)+11520+((a[r>>0]&7)*51|0)+49>>0]|0)|0;if((m|0)>=(j|0))c[A>>2]=j+-1;if((h|0)<0){c[x>>2]=0;i=0}else i=h;h=j+-16|0;if((i|0)<=(h|0)){fa=153;break g}c[x>>2]=h;fa=153;break g}case 1073741901:{fa=c[y>>2]|0;c[y>>2]=fa+7-((fa|0)%8|0);fa=153;break g}case 1073741902:{j=d[(c[q>>2]|0)+11520+((a[r>>0]&7)*51|0)+49>>0]|0;X=(m|0)<(63-j|0);h=X?m+16|0:m;j=64-j|0;Y=(h|0)<(j|0);h=Y?h:j+-1|0;if(X|Y^1)c[A>>2]=h;i=c[x>>2]|0;if((h|0)>=(i|0))if((h|0)<(i+16|0))h=i;else{h=h+-15|0;fa=116}else fa=116;if((fa|0)==116)c[x>>2]=h;if((h|0)<0){c[x>>2]=0;i=0}else i=h;h=j+-16|0;if((i|0)<=(h|0)){fa=153;break g}c[x>>2]=h;fa=153;break g}default:{fa=153;break g}}}while(0);do if((fa|0)==131){fa=0;h=c[q>>2]|0;Y=a[r>>0]&7;i=(c[z>>2]|0)*3|0;i=(d[i+2+(h+11520+(Y*51|0))>>0]<<16|(d[i+1+(h+11520+(Y*51|0))>>0]<<8|d[h+11520+(Y*51|0)+i>>0]))>>>(((c[y>>2]|0)/8|0)*6|0)&63;if(i|0?(M=i+-1|0,h+(M*192|0)|0):0){Y=c[w>>2]|0;X=(Y|0)<1;RQ(h+(M*192|0)+((c[(X?A:u)>>2]|0)*3|0)|0,0,(X?3:Y*3|0)|0)|0}Tj(c[B>>2]|0)|0;h=a[r>>0]&7;if((a[(c[f>>2]|0)+81916>>0]|0)==(h|0)?a[g>>0]|0:0){fa=153;break}j=c[A>>2]|0;h=d[(c[q>>2]|0)+11520+(h*51|0)+49>>0]|0;if((j|0)<(63-h|0)){k=j+1|0;c[A>>2]=k;i=c[x>>2]|0;if((k|0)>=(i|0)){if((j|0)>=(i+15|0)){i=j+-14|0;fa=140}}else{i=k;fa=140}if((fa|0)==140)c[x>>2]=i;h=64-h|0;if((k|0)>=(h|0))c[A>>2]=h+-1;if((i|0)<0){c[x>>2]=0;i=0}h=h+-16|0;if((i|0)<=(h|0)){fa=153;break}c[x>>2]=h;fa=153}else fa=153}else if((fa|0)==147){Jj(f);fa=153}else if((fa|0)==148){h=c[f>>2]|0;if((a[h+81916>>0]|0)>=0){Fg[c[h+2439756>>2]&15](h,-1,-1,-1,0);fa=153;break}i=c[h+2439760>>2]|0;j=a[r>>0]&7;k=c[z>>2]|0;if(n){Fg[i&15](h,j,k,m,1);fa=154;break}else{Fg[i&15](h,j,k,-1,1);fa=157;break}}while(0);if((fa|0)==153)if(n)fa=154;else fa=157;h:do if((fa|0)==154){fa=0;i:do if((p|0)<1073741902){if((p|0)>=1073741899)switch(p|0){case 1073741899:case 1073741901:break i;default:break h}if((p|0)<1073741898)switch(p|0){case 9:break i;default:break h}else switch(p|0){case 1073741898:break i;default:break h}}else switch(p|0){case 1073741902:case 1073741903:case 1073741904:case 1073741905:case 1073741906:break;default:break h}while(0);m=c[y>>2]|0;X=c[C>>2]|0;Y=(m|0)<(X|0)?m:X;V=c[A>>2]|0;W=c[s>>2]|0;n=(V|0)<(W|0)?V:W;X=((m|0)>(X|0)?m:X)-Y+1|0;c[t>>2]=Y;c[u>>2]=n;c[v>>2]=X;c[w>>2]=1-n+((V|0)>(W|0)?V:W);if((X+((Y|0)%8|0)|0)>8){c[C>>2]=-1;c[s>>2]=-1;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0}}else if((fa|0)==157){fa=0;c[C>>2]=-1;c[s>>2]=-1;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0}while(0);h=c[y>>2]|0;n=c[q>>2]|0;Y=a[r>>0]&7;i=(c[z>>2]|0)*3|0;i=(d[i+2+(n+11520+(Y*51|0))>>0]<<16|(d[i+1+(n+11520+(Y*51|0))>>0]<<8|d[n+11520+(Y*51|0)+i>>0]))>>>(((h|0)/8|0)*6|0)&63;if(i|0?(N=i+-1|0,n+(N*192|0)|0):0){j=(h|0)%8|0;j:do switch(j|0){case 1:case 0:{do switch(o|0){case 4:case 30:{h=n+(N*192|0)+((c[A>>2]|0)*3|0)|0;Y=((d[h>>0]|d[h+1>>0]<<8)&65535|d[h+2>>0]<<16)&16777200|1;X=Y&65535;a[h>>0]=X;a[h+1>>0]=X>>8;a[h+2>>0]=Y>>>16;h=n+(N*192|0)+((c[A>>2]|0)*3|0)|0;Y=((d[h>>0]|d[h+1>>0]<<8)&65535|d[h+2>>0]<<16)&2097151;X=Y&65535;a[h>>0]=X;a[h+1>>0]=X>>8;a[h+2>>0]=Y>>>16;h=a[r>>0]&7;if((a[(c[f>>2]|0)+81916>>0]|0)==(h|0)?a[g>>0]|0:0)break j;i=c[A>>2]|0;j=d[(c[q>>2]|0)+11520+(h*51|0)+49>>0]|0;if((i|0)>=(63-j|0))break j;k=i+1|0;c[A>>2]=k;h=c[x>>2]|0;do if((k|0)<(h|0)){h=k;fa=168}else{if((i|0)<(h+15|0))break;h=i+-14|0;fa=168}while(0);if((fa|0)==168){fa=0;c[x>>2]=h}j=64-j|0;if((k|0)>=(j|0))c[A>>2]=j+-1;if((h|0)<0){c[x>>2]=0;i=0}else i=h;h=j+-16|0;if((i|0)<=(h|0))break j;c[x>>2]=h;break j}case 29:{h=0;break}case 22:{h=1;break}case 27:{h=2;break}case 7:{h=3;break}case 6:{h=4;break}case 25:{h=5;break}case 10:{h=6;break}case 5:{h=7;break}case 11:{h=8;break}case 17:{h=9;break}case 13:{h=10;break}case 16:{h=11;break}case 20:{h=12;break}case 31:{h=13;break}case 26:{h=14;break}case 32:{h=15;break}case 8:{h=16;break}case 21:{h=17;break}case 34:{h=18;break}case 23:{h=19;break}case 35:{h=20;break}case 28:{h=21;break}case 36:{h=22;break}case 24:{h=23;break}default:break j}while(0);i=(h>>>0)%12|0;j=n+(N*192|0)+((c[A>>2]|0)*3|0)|0;k=(d[j>>0]|d[j+1>>0]<<8)&65535|d[j+2>>0]<<16;if(!(k&15)){V=(c[D>>2]|0)+((h>>>0)/12|0)|0;W=c[E>>2]|0;X=c[F>>2]|0;Y=k&16777200|i+4&15;p=Y&65535;a[j>>0]=p;a[j+1>>0]=p>>8;a[j+2>>0]=Y>>>16;Y=n+(N*192|0)+((c[A>>2]|0)*3|0)|0;V=((d[Y>>0]|d[Y+1>>0]<<8)&65535|d[Y+2>>0]<<16)&2097151|V<<21;p=V&65535;a[Y>>0]=p;a[Y+1>>0]=p>>8;a[Y+2>>0]=V>>>16;Y=n+(N*192|0)+((c[A>>2]|0)*3|0)|0;W=((d[Y>>0]|d[Y+1>>0]<<8)&65535|d[Y+2>>0]<<16)&16776975|W<<4&240;V=W&65535;a[Y>>0]=V;a[Y+1>>0]=V>>8;a[Y+2>>0]=W>>>16;X=(X|0)<63?X:63;Y=n+(N*192|0)+((c[A>>2]|0)*3|0)|0;X=X<<16&2031616|X<<10&32768|((d[Y>>0]|d[Y+1>>0]<<8)&65535|d[Y+2>>0]<<16)&14712831;W=X&65535;a[Y>>0]=W;a[Y+1>>0]=W>>8;a[Y+2>>0]=X>>>16;Jj(f)}else{Y=i+4&15|k&16777200;X=Y&65535;a[j>>0]=X;a[j+1>>0]=X>>8;a[j+2>>0]=Y>>>16;Jj(f)}h=a[r>>0]&7;if((a[(c[f>>2]|0)+81916>>0]|0)==(h|0)?a[g>>0]|0:0)break j;i=c[A>>2]|0;j=d[(c[q>>2]|0)+11520+(h*51|0)+49>>0]|0;if((i|0)<(63-j|0)){k=i+1|0;c[A>>2]=k;h=c[x>>2]|0;do if((k|0)<(h|0)){h=k;fa=207}else{if((i|0)<(h+15|0))break;h=i+-14|0;fa=207}while(0);if((fa|0)==207){fa=0;c[x>>2]=h}j=64-j|0;if((k|0)>=(j|0))c[A>>2]=j+-1;if((h|0)<0){c[x>>2]=0;i=0}else i=h;h=j+-16|0;if((i|0)<=(h|0))break j;c[x>>2]=h}break}case 2:{h=n+(N*192|0)+((c[A>>2]|0)*3|0)|0;i=(d[h>>0]|d[h+1>>0]<<8)&65535|d[h+2>>0]<<16;if(((i&15)+-4|0)>-1?(O=p+-49|0,Y=p+-1073741913|0,O=Y>>>0<8?Y:O>>>0<8?O:-1,(O|0)>-1):0){Y=i&2097151|O<<21;X=Y&65535;a[h>>0]=X;a[h+1>>0]=X>>8;a[h+2>>0]=Y>>>16;c[D>>2]=O;Jj(f);h=a[r>>0]&7;if((a[(c[f>>2]|0)+81916>>0]|0)==(h|0)?a[g>>0]|0:0)break j;i=c[A>>2]|0;j=d[(c[q>>2]|0)+11520+(h*51|0)+49>>0]|0;if((i|0)<(63-j|0)){k=i+1|0;c[A>>2]=k;h=c[x>>2]|0;do if((k|0)<(h|0)){h=k;fa=222}else{if((i|0)<(h+15|0))break;h=i+-14|0;fa=222}while(0);if((fa|0)==222){fa=0;c[x>>2]=h}j=64-j|0;if((k|0)>=(j|0))c[A>>2]=j+-1;if((h|0)<0){c[x>>2]=0;i=0}else i=h;h=j+-16|0;if((i|0)<=(h|0))break j;c[x>>2]=h}}break}case 4:case 3:{k=c[A>>2]|0;m=n+(N*192|0)+(k*3|0)|0;m=(d[m>>0]|d[m+1>>0]<<8)&65535|d[m+2>>0]<<16;if(((m&15)+-4|0)>-1?(I=p+-48|0,I=(p|0)==1073741922?0:(p+-1073741913|0)>>>0<9?p+-1073741912|0:I>>>0<10?I:-1,(I|0)>-1):0){i=(m&16777215)>>>10&32|(m&16777215)>>>16&31;h=i&16777215;j=(j|0)==3;if(j)i=I*10|0;else{i=h-((((i&16777215)>>>0)%10|0)&16777215)|0;h=I}Y=i+((h|0)%10|0)|0;Y=(Y|0)<63?Y:63;k=n+(N*192|0)+(k*3|0)|0;Y=Y<<16&2031616|Y<<10&32768|m&14712831;X=Y&65535;a[k>>0]=X;a[k+1>>0]=X>>8;a[k+2>>0]=Y>>>16;k=c[A>>2]|0;Y=n+(N*192|0)+(k*3|0)|0;Y=(d[Y>>0]|d[Y+1>>0]<<8)&65535|d[Y+2>>0]<<16;c[F>>2]=((Y&16777215)>>>10&32|(Y&16777215)>>>16&31)&16777215;if(j){h=c[y>>2]|0;if((h|0)>=31)break j;c[y>>2]=h+1;h=c[x>>2]|0;do if((k|0)<(h|0)){h=k;fa=239}else{if((k|0)<(h+16|0))break;h=k+-15|0;fa=239}while(0);if((fa|0)==239){fa=0;c[x>>2]=h}i=64-(d[(c[q>>2]|0)+11520+((a[r>>0]&7)*51|0)+49>>0]|0)|0;if((k|0)>=(i|0))c[A>>2]=i+-1;if((h|0)<0){c[x>>2]=0;h=0}i=i+-16|0;if((h|0)<=(i|0))break j;c[x>>2]=i;break j}m=a[r>>0]&7;if((a[(c[f>>2]|0)+81916>>0]|0)==(m|0)?(a[g>>0]|0)!=0:0)i=k;else fa=248;do if((fa|0)==248){fa=0;i=d[(c[q>>2]|0)+11520+(m*51|0)+49>>0]|0;if((k|0)>=(63-i|0)){i=k;break}j=k+1|0;c[A>>2]=j;h=c[x>>2]|0;do if((j|0)<(h|0)){h=j;fa=252}else{if((k|0)<(h+15|0))break;h=k+-14|0;fa=252}while(0);if((fa|0)==252){fa=0;c[x>>2]=h}k=64-i|0;i=k+-1|0;if((j|0)>=(k|0)){c[A>>2]=i;j=i}if((h|0)<0){c[x>>2]=0;h=0}i=k+-16|0;if((h|0)<=(i|0)){i=j;break}c[x>>2]=i;i=j}while(0);h=c[y>>2]|0;if((h|0)<=0)break j;c[y>>2]=h+-1;h=c[x>>2]|0;do if((i|0)<(h|0)){h=i;fa=263}else{if((i|0)<(h+16|0))break;h=i+-15|0;fa=263}while(0);if((fa|0)==263){fa=0;c[x>>2]=h}j=64-(d[(c[q>>2]|0)+11520+(m*51|0)+49>>0]|0)|0;if((i|0)>=(j|0))c[A>>2]=j+-1;if((h|0)<0){c[x>>2]=0;i=0}else i=h;h=j+-16|0;if((i|0)<=(h|0))break j;c[x>>2]=h}break}case 5:{h=n+(N*192|0)+((c[A>>2]|0)*3|0)|0;i=(d[h>>0]|d[h+1>>0]<<8)&65535|d[h+2>>0]<<16;if(((i&15)+-4|0)>-1?(J=p+-48|0,J=(p|0)==1073741922?0:(p+-1073741913|0)>>>0<9?p+-1073741912|0:(p+-97|0)>>>0<6?p+-87|0:J>>>0<10?J:-1,(J|0)>-1):0){Y=15-J|0;X=i&16776975|Y<<4&240;W=X&65535;a[h>>0]=W;a[h+1>>0]=W>>8;a[h+2>>0]=X>>>16;c[E>>2]=Y;Jj(f);h=a[r>>0]&7;if((a[(c[f>>2]|0)+81916>>0]|0)==(h|0)?a[g>>0]|0:0)break j;i=c[A>>2]|0;j=d[(c[q>>2]|0)+11520+(h*51|0)+49>>0]|0;if((i|0)<(63-j|0)){k=i+1|0;c[A>>2]=k;h=c[x>>2]|0;do if((k|0)<(h|0)){h=k;fa=278}else{if((i|0)<(h+15|0))break;h=i+-14|0;fa=278}while(0);if((fa|0)==278){fa=0;c[x>>2]=h}j=64-j|0;if((k|0)>=(j|0))c[A>>2]=j+-1;if((h|0)<0){c[x>>2]=0;i=0}else i=h;h=j+-16|0;if((i|0)<=(h|0))break j;c[x>>2]=h}}break}default:{}}while(0);Tj(c[B>>2]|0)|0}break}case 769:{c[H>>2]=-1;Y=c[f>>2]|0;Bg[c[Y+2439744>>2]&255](Y,(c[y>>2]|0)/8|0);break}default:{}}while(0);h=eh()|0;if(!h)break a}}while(0);m=c[f>>2]|0;if(a[g>>0]|0){g=a[m+81916>>0]|0;k=f+8|0;if(((g|0)==(a[k>>0]&7|0)?(R=f+28|0,(c[R>>2]|0)>-1):0)?(Q=a[m+81918>>0]|0,Q<<24>>24>-1):0){i=Q<<24>>24;c[f+20>>2]=a[m+81917>>0];c[R>>2]=i;j=f+32|0;h=c[j>>2]|0;if((i|0)>=(h|0)){if((i|0)>=(h+16|0)){h=i+-15|0;fa=317}}else{h=i;fa=317}if((fa|0)==317)c[j>>2]=h;g=64-(d[(c[f+4>>2]|0)+11520+(g*51|0)+49>>0]|0)|0;if((i|0)>=(g|0))c[R>>2]=g+-1;if((h|0)<0){c[j>>2]=0;h=0}g=g+-16|0;if((h|0)>(g|0))c[j>>2]=g}}else k=f+8|0;Bg[c[m+2439672>>2]&255](m,7);Y=f+4|0;W=c[Y>>2]|0;X=a[k>>0]&7;Lj(f,7,85525,X,7);Lj(f,67,85531,(a[W+11520+(X*51|0)+48>>0]|0)+150|0,8);Lj(f,133,85537,(a[W+11520+(X*51|0)+50>>0]|0)+6|0,9);Lj(f,181,85541,64-(d[W+11520+(X*51|0)+49>>0]|0)|0,10);if((((((c[48]|0)+-6|0)>>>0<13?(S=c[49]|0,(S+-34|0)>>>0<97):0)?(c[68]=11,a[204]|0):0)?((c[52]|0)+-6|0)>>>0<13:0)?((c[53]|0)+-34|0)>>>0<97:0)c[f+20>>2]=(S+-35|0)/6|0;X=c[f>>2]|0;Gg[c[X+2439688>>2]&7](X,6,34,13,97,0);X=c[f>>2]|0;i=X+2439688|0;Gg[c[i>>2]&7](X,6,33,13,1,3);Gg[c[i>>2]&7](X,5,34,1,97,3);Gg[c[i>>2]&7](X,6,131,13,1,10);Gg[c[i>>2]&7](X,19,34,1,97,10);X=f+20|0;i=0;do{h=c[f>>2]|0;if((a[h+81916>>0]|0)==(a[k>>0]&7|0)){g=i*6|0;if((a[h+81917>>0]|0)==(i|0)){Xg(0,g+35|0,85546,0);Xg(0,g+34|0,85546,15)}}else g=i*6|0;if((i|0)==(c[X>>2]|0)){W=c[f>>2]|0;Gg[c[W+2439688>>2]&7](W,6,g+34|0,13,7,15)};a[$>>0]=a[85554]|0;a[$+1>>0]=a[85555]|0;a[$+2>>0]=a[85556]|0;c[ea>>2]=i;MN($,85557,ea)|0;W=c[f>>2]|0;lg[c[W+2439664>>2]&31](W,$,7,g+35|0,3)|0;i=i+1|0}while((i|0)!=16);W=f+28|0;g=c[W>>2]|0;if((g|0)>-1){a[ea>>0]=a[85554]|0;a[ea+1>>0]=a[85555]|0;a[ea+2>>0]=a[85556]|0;c[T>>2]=g;MN(ea,85557,T)|0;V=c[f>>2]|0;lg[c[V+2439664>>2]&31](V,ea,7,25,0)|0;V=c[f>>2]|0;lg[c[V+2439664>>2]&31](V,ea,7,24,15)|0}s=f+88|0;V=f+24|0;t=f+16|0;r=0;do{i=c[Y>>2]|0;p=a[k>>0]&7;j=(c[X>>2]|0)*3|0;m=j+1|0;n=j+2|0;q=r*6|0;p=(d[i+11520+(p*51|0)+n>>0]<<16|(d[i+11520+(p*51|0)+m>>0]<<8|d[i+11520+(p*51|0)+j>>0]))>>>q&63;u=r*54|0;o=u+37|0;g=c[48]|0;k:do if(((g|0)>=(o|0)?(aa=u+43|0,(g|0)<(aa|0)):0)?((c[49]|0)+-24|0)>>>0<6:0){c[68]=11;if((a[204]|0)!=0?(T=c[52]|0,(T|0)>=(o|0)&(T|0)<(aa|0)):0)h=((c[53]|0)+-24|0)>>>0<6;else h=0;do if((((a[205]|0)!=0?(T=c[52]|0,(T|0)>=(o|0)&(T|0)<(aa|0)):0)?((c[53]|0)+-24|0)>>>0<6:0)?(T=c[54]|0,(T|0)>=(o|0)&(T|0)<(aa|0)):0){if(((c[55]|0)+-24|0)>>>0>=6){g=10;fa=354;break}a[205]=0;T=a[k>>0]&7;Q=i+11520+(T*51|0)+j|0;R=i+11520+(T*51|0)+m|0;T=i+11520+(T*51|0)+n|0;S=d[R>>0]<<8|d[Q>>0]|d[T>>0]<<16;P=S>>>q&63;P=(P|0)==0?60:P+-1|0;S=((P|0)>60?0:P)<<q|S&~(63<<q);a[Q>>0]=S;a[R>>0]=S>>>8;a[T>>0]=S>>>16;Tj(c[s>>2]|0)|0;if(h)g=10;else{g=10;h=24;break k}}else{g=10;fa=354}while(0);if((fa|0)==354){fa=0;if(!h){h=24;break}}h=25}else{g=3;h=24}while(0);Xg(o,h,85562,g);h=u+43|0;i=u+42|0;j=c[48]|0;g=u+55|0;if(((((((j|0)>=(i|0)&(j|0)<(g|0)?((c[49]|0)+-23|0)>>>0<7:0)?(c[68]=11,a[205]|0):0)?(T=c[52]|0,(T|0)>=(i|0)&(T|0)<(g|0)):0)?((c[53]|0)+-23|0)>>>0<7:0)?(T=c[54]|0,(T|0)>=(i|0)&(T|0)<(g|0)):0)?((c[55]|0)+-23|0)>>>0<7:0){a[205]=0;c[W>>2]=-1;c[V>>2]=r<<3;c[t>>2]=(j-i|0)/6|0}T=c[f>>2]|0;Gg[c[T+2439688>>2]&7](T,i,23,13,7,0);T=c[f>>2]|0;S=T+2439688|0;Gg[c[S>>2]&7](T,i,22,13,1,3);Gg[c[S>>2]&7](T,u+41|0,23,1,7,3);Gg[c[S>>2]&7](T,i,30,13,1,10);Gg[c[S>>2]&7](T,g,23,1,7,10);if((c[W>>2]|0)==-1?((c[V>>2]|0)/8|0|0)==(r|0):0){T=c[f>>2]|0;Gg[c[T+2439688>>2]&7](T,((c[t>>2]|0)*6|0)+i|0,23,7,7,6)};a[$>>0]=a[85554]|0;a[$+1>>0]=a[85555]|0;a[$+2>>0]=a[85556]|0;c[ja>>2]=p;MN($,85557,ja)|0;i=c[f>>2]|0;lg[c[i+2439664>>2]&31](i,$,h,24,15)|0;i=u+55|0;g=c[48]|0;l:do if(((g|0)>=(i|0)?(ba=u+61|0,(g|0)<(ba|0)):0)?((c[49]|0)+-24|0)>>>0<6:0){c[68]=11;if((a[204]|0)!=0?(T=c[52]|0,(T|0)>=(i|0)&(T|0)<(ba|0)):0)h=((c[53]|0)+-24|0)>>>0<6;else h=0;do if(a[205]|0){T=c[52]|0;if(!((T|0)>=(i|0)&(T|0)<(ba|0))){g=10;fa=379;break}if(((c[53]|0)+-24|0)>>>0>=6){g=10;fa=379;break}T=c[54]|0;if(!((T|0)>=(i|0)&(T|0)<(ba|0))){g=10;fa=379;break}if(((c[55]|0)+-24|0)>>>0>=6){g=10;fa=379;break}a[205]=0;S=c[Y>>2]|0;T=a[k>>0]&7;P=(c[X>>2]|0)*3|0;Q=S+11520+(T*51|0)+P|0;R=P+1+(S+11520+(T*51|0))|0;T=P+2+(S+11520+(T*51|0))|0;S=d[R>>0]<<8|d[Q>>0]|d[T>>0]<<16;P=(S>>>q&63)+1|0;S=(P>>>0>60?0:P)<<q|S&~(63<<q);a[Q>>0]=S;a[R>>0]=S>>>8;a[T>>0]=S>>>16;Tj(c[s>>2]|0)|0;if(h)g=10;else{g=10;h=24;break l}}else{g=10;fa=379}while(0);if((fa|0)==379){fa=0;if(!h){h=24;break}}h=25}else{g=3;h=24}while(0);Xg(i,h,85570,g);g=u+67|0;h=c[f>>2]|0;i=c[48]|0;do if(((((i|0)>=(g|0)?(ca=u+72|0,(i|0)<(ca|0)):0)?((c[49]|0)+-24|0)>>>0<5:0)?(c[68]=11,XP(804,85578,39)|0,a[205]|0):0)?(T=c[52]|0,(T|0)>=(g|0)&(T|0)<(ca|0)):0){if(((c[53]|0)+-24|0)>>>0>=5)break;T=c[54]|0;if(!((T|0)>=(g|0)&(T|0)<(ca|0)))break;if(((c[55]|0)+-24|0)>>>0>=5)break;a[205]=0;if(!(b[160638]&192)){T=f+80+r|0;a[T>>0]=a[T>>0]^1;break}else{a[da>>0]=(r|0)==0&1;a[_>>0]=(r|0)==1&1;a[Z>>0]=(r|0)==2&1;a[U>>0]=(r|0)==3&1;break}}while(0);a[ea>>0]=14;Hg[c[h+2439696>>2]&7](h,h+1260276|0,a[f+80+r>>0]|0?36:52,g,24,ea,1);r=r+1|0}while((r|0)!=4);J=f+32|0;K=f+76|0;E=f+52|0;G=f+56|0;D=f+60|0;F=f+64|0;H=f+68|0;I=f+72|0;L=ja+1|0;M=ja+2|0;N=ja+3|0;O=ja+4|0;P=ja+5|0;Q=ja+6|0;R=ja+7|0;C=0;do{i=C*54|0;S=i+25|0;T=c[f>>2]|0;U=i+24|0;g=c[48]|0;do if((((((g|0)>=(U|0)?(ga=i+73|0,(g|0)<(ga|0)):0)?(ha=c[49]|0,(ha+-34|0)>>>0<97):0)?(c[68]=11,(a[204]|0)!=0):0)?(fa=c[52]|0,(fa|0)>=(U|0)&(fa|0)<(ga|0)):0)?((c[53]|0)+-34|0)>>>0<97:0){g=((g+-1-U|0)/6|0)+(C<<3)|0;c[V>>2]=g;h=((ha+-35|0)/6|0)+(c[J>>2]|0)|0;c[W>>2]=h;if(!(a[K>>0]|0)){c[D>>2]=0;c[D+4>>2]=0;c[D+8>>2]=0;c[D+12>>2]=0;c[E>>2]=g;c[G>>2]=h;a[K>>0]=1;fa=404;break}ea=c[E>>2]|0;fa=(g|0)<(ea|0)?g:ea;da=c[G>>2]|0;ca=(h|0)<(da|0)?h:da;ea=((g|0)>(ea|0)?g:ea)-fa+1|0;c[D>>2]=fa;c[F>>2]=ca;c[H>>2]=ea;c[I>>2]=1-ca+((h|0)>(da|0)?h:da);if((ea+((fa|0)%8|0)|0)>8){c[E>>2]=-1;c[G>>2]=-1;c[D>>2]=0;c[D+4>>2]=0;c[D+8>>2]=0;c[D+12>>2]=0;fa=403}else fa=403}else fa=403;while(0);if((fa|0)==403?(fa=0,a[K>>0]|0):0)fa=404;if((fa|0)==404?(0,!((a[204]|0)!=0&(c[52]|0)>>>0<240&(c[53]|0)>>>0<136)):0)a[K>>0]=0;q=T+2439688|0;Gg[c[q>>2]&7](T,U,34,49,97,0);j=c[f>>2]|0;r=j+2439688|0;Gg[c[r>>2]&7](j,U,33,49,1,3);Gg[c[r>>2]&7](j,i+23|0,34,1,97,3);Gg[c[r>>2]&7](j,U,131,49,1,10);Gg[c[r>>2]&7](j,i+73|0,34,1,97,10);j=c[J>>2]|0;r=((c[D>>2]|0)/8|0|0)==(C|0);t=c[Y>>2]|0;u=a[k>>0]&7;s=(c[X>>2]|0)*3|0;s=(d[s+2+(t+11520+(u*51|0))>>0]<<16|(d[s+1+(t+11520+(u*51|0))>>0]<<8|d[t+11520+(u*51|0)+s>>0]))>>>(C*6|0)&63;s=(s|0)==0?0:t+((s+-1|0)*192|0)|0;t=(s|0)==0;u=i+21|0;v=j+15|0;w=i+31|0;x=i+37|0;y=i+43|0;z=i+49|0;A=i+55|0;B=i+61|0;n=i+67|0;m=0;while(1){o=m*6|0;p=o+35|0;if((j|0)==(c[W>>2]|0)){fa=c[f>>2]|0;Gg[c[fa+2439688>>2]&7](fa,U,o+34|0,49,7,1)}if(r?(fa=c[F>>2]|0,ea=c[I>>2]|0,(j|0)>=(fa|0)&(ea|0)>1&(j|0)<(ea+fa|0)):0)Gg[c[q>>2]&7](T,U,o+34|0,49,7,14);g=c[f>>2]|0;if(((a[g+81916>>0]|0)==(a[k>>0]&7|0)?(a[g+81917>>0]|0)==(c[X>>2]|0):0)?(a[g+81918>>0]|0)==(j|0):0)Gg[c[g+2439688>>2]&7](g,U,o+34|0,49,7,15);g=ja;h=85593;i=g+9|0;do{a[g>>0]=a[h>>0]|0;g=g+1|0;h=h+1|0}while((g|0)<(i|0));do if(!t){g=s+(j*3|0)|0;g=(d[g>>0]|d[g+1>>0]<<8)&65535|d[g+2>>0]<<16;h=g&15;if((h&16777215|0)==1){a[ja>>0]=a[85602]|0;a[ja+1>>0]=a[85603]|0;a[ja+2>>0]=a[85604]|0;a[ja+3>>0]=a[85605]|0;a[ja+4>>0]=a[85606]|0;a[ja+5>>0]=a[85607]|0;a[ja+6>>0]=a[85608]|0;break}if((h&16777215)>>>0>3){c[ka>>2]=c[2308+((h&16777215)+-4<<2)>>2];c[ka+4>>2]=((g&16777215)>>>21)+1&16777215;c[ka+8>>2]=((g&16777215)>>>10&32|(g&16777215)>>>16&31)&16777215;c[ka+12>>2]=((g&16777215)>>>4&15^15)&16777215;MN(ja,85609,ka)|0;g=a[ja>>0]|0}else g=45;if(!(j&3)){fa=c[f>>2]|0;lg[c[fa+2439656>>2]&31](fa,g,S,p,11)|0;fa=c[f>>2]|0;lg[c[fa+2439656>>2]&31](fa,a[L>>0]|0,w,p,11)|0;fa=c[f>>2]|0;lg[c[fa+2439656>>2]&31](fa,a[M>>0]|0,x,p,11)|0;fa=c[f>>2]|0;lg[c[fa+2439656>>2]&31](fa,a[N>>0]|0,y,p,9)|0;fa=c[f>>2]|0;lg[c[fa+2439656>>2]&31](fa,a[O>>0]|0,z,p,9)|0;fa=c[f>>2]|0;lg[c[fa+2439656>>2]&31](fa,a[P>>0]|0,A,p,8)|0;fa=c[f>>2]|0;lg[c[fa+2439656>>2]&31](fa,a[Q>>0]|0,B,p,7)|0;fa=c[f>>2]|0;lg[c[fa+2439656>>2]&31](fa,a[R>>0]|0,n,p,7)|0;break}else{fa=c[f>>2]|0;lg[c[fa+2439656>>2]&31](fa,g,S,p,g<<24>>24!=45?11:5)|0;fa=a[L>>0]|0;ea=c[f>>2]|0;lg[c[ea+2439656>>2]&31](ea,fa,w,p,fa<<24>>24!=45?11:5)|0;fa=a[M>>0]|0;ea=c[f>>2]|0;lg[c[ea+2439656>>2]&31](ea,fa,x,p,fa<<24>>24!=45?11:5)|0;fa=a[N>>0]|0;ea=c[f>>2]|0;lg[c[ea+2439656>>2]&31](ea,fa,y,p,a[(fa<<24>>24!=45?85624:85628)+1>>0]|0)|0;fa=a[O>>0]|0;ea=c[f>>2]|0;lg[c[ea+2439656>>2]&31](ea,fa,z,p,a[(fa<<24>>24!=45?85624:85628)+1>>0]|0)|0;fa=a[P>>0]|0;ea=c[f>>2]|0;lg[c[ea+2439656>>2]&31](ea,fa,A,p,a[(fa<<24>>24!=45?85624:85628)+2>>0]|0)|0;fa=a[Q>>0]|0;ea=c[f>>2]|0;lg[c[ea+2439656>>2]&31](ea,fa,B,p,a[(fa<<24>>24!=45?85624:85628)+3>>0]|0)|0;fa=a[R>>0]|0;ea=c[f>>2]|0;lg[c[ea+2439656>>2]&31](ea,fa,n,p,a[(fa<<24>>24!=45?85624:85628)+3>>0]|0)|0;break}}else{fa=c[f>>2]|0;lg[c[fa+2439664>>2]&31](fa,ja,S,p,3)|0}while(0);if((j|0)==(c[W>>2]|0)?(ia=c[V>>2]|0,((ia|0)/8|0|0)==(C|0)):0){ea=(ia|0)%8|0;fa=ea*6|0;da=c[f>>2]|0;Gg[c[da+2439688>>2]&7](da,fa+U|0,o+34|0,7,7,6);da=c[f>>2]|0;lg[c[da+2439656>>2]&31](da,a[ja+ea>>0]|0,fa+S|0,p,0)|0}if(!(j&3)){fa=c[f>>2]|0;Eg[c[fa+2439676>>2]&63](fa,u,o+37|0,0)}if((j|0)<(v|0)){j=j+1|0;m=m+1|0}else break}C=C+1|0}while((C|0)!=4);break}case 1:{do{}while((eh()|0)!=0);ka=c[f>>2]|0;Bg[c[ka+2439672>>2]&255](ka,7);ka=c[f>>2]|0;lg[c[ka+2439664>>2]&31](ka,85632,24,68,15)|0;break}default:{}}j=c[f>>2]|0;Gg[c[j+2439688>>2]&7](j,0,0,240,7,15);j=f+12|0;i=0;while(1){g=i*7|0;k=g+188|0;h=c[48]|0;if((h|0)>=(k|0)?(la=g+195|0,(h|0)<(la|0)&(c[49]|0)>>>0<7):0){c[68]=11;XP(804,c[2356+(i<<2)>>2]|0,39)|0;if(((a[205]|0)!=0?(ka=c[52]|0,(ka|0)>=(k|0)&(ka|0)<(la|0)&(c[53]|0)>>>0<7):0)?(ka=c[54]|0,(ka|0)>=(k|0)&(ka|0)<(la|0)&(c[55]|0)>>>0<7):0){a[205]=0;vg[c[2372+(i<<2)>>2]&511](f);g=1}else g=1}else g=0;h=i<<3;if((i|0)==0?a[j>>0]|0:0){Xg(k,0,85665+h|0,g?12:6);i=1;continue}Xg(k,0,85665+h|0,g?3:10);i=i+1|0;if((i|0)==4)break}if(((c[48]|0)+-222|0)>>>0<9&(c[49]|0)>>>0<7){c[68]=11;XP(804,85697,39)|0;if(((a[205]|0)!=0?((c[52]|0)+-222|0)>>>0<9&(c[53]|0)>>>0<7:0)?((c[54]|0)+-222|0)>>>0<9&(c[55]|0)>>>0<7:0){a[205]=0;c[ma>>2]=1;g=3;fa=451}else{g=3;fa=450}}else{g=10;fa=450}if((fa|0)==450){h=c[ma>>2]|0;if((h|0)==1)fa=451}if((fa|0)==451){h=c[f>>2]|0;Gg[c[h+2439688>>2]&7](h,222,0,9,7,7);Xg(222,1,85708,0);h=c[ma>>2]|0}Xg(222,0,85708,(h|0)==1?15:g);if(((c[48]|0)+-231|0)>>>0<9&(c[49]|0)>>>0<7){c[68]=11;XP(804,85724,39)|0;if(((a[205]|0)!=0?((c[52]|0)+-231|0)>>>0<9&(c[53]|0)>>>0<7:0)?((c[54]|0)+-231|0)>>>0<9&(c[55]|0)>>>0<7:0){a[205]=0;c[ma>>2]=0;g=3}else{g=3;fa=457}}else{g=10;fa=457}if((fa|0)==457){h=c[ma>>2]|0;if(h){ma=g;la=h;la=(la|0)==0;ma=la?15:ma;Xg(231,0,85716,ma);f=c[f>>2]|0;Vg(f,7);l=na;return}}la=c[f>>2]|0;Gg[c[la+2439688>>2]&7](la,231,0,9,7,7);Xg(231,1,85716,0);la=g;ma=c[ma>>2]|0;ma=(ma|0)==0;ma=ma?15:la;Xg(231,0,85716,ma);f=c[f>>2]|0;Vg(f,7);l=na;return}function Gj(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;switch(d|0){case 0:{Hj(b,1);return}case 1:{Hj(b,0);return}case 2:{Ij(b);return}case 3:{h=c[b+88>>2]|0;b=c[h>>2]|0;if(c[b+4>>2]|0){d=c[b+12>>2]|0;g=b+16|0;if(d>>>0<(c[g>>2]|0)>>>0){e=b+8|0;f=h+8|0;b=d;d=0;while(1){i=(c[f>>2]|0)+b|0;a[i>>0]=a[i>>0]^a[(c[e>>2]|0)+d>>0];b=b+1|0;if(b>>>0>=(c[g>>2]|0)>>>0)break;else d=d+1|0}b=c[h>>2]|0}c[h>>2]=c[b+4>>2]}PQ(c[h+12>>2]|0,c[h+8>>2]|0,c[h+4>>2]|0)|0;return}case 4:{g=c[b+88>>2]|0;b=c[c[g>>2]>>2]|0;if(b|0?(c[g>>2]=b,h=c[b+12>>2]|0,i=b+16|0,h>>>0<(c[i>>2]|0)>>>0):0){e=b+8|0;f=g+8|0;b=h;d=0;while(1){h=(c[f>>2]|0)+b|0;a[h>>0]=a[h>>0]^a[(c[e>>2]|0)+d>>0];b=b+1|0;if(b>>>0>=(c[i>>2]|0)>>>0)break;else d=d+1|0}}PQ(c[g+12>>2]|0,c[g+8>>2]|0,c[g+4>>2]|0)|0;return}default:return}}function Hj(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+16|0;o=x+8|0;m=x;t=b+24|0;p=b+4|0;j=c[p>>2]|0;q=b+8|0;u=a[q>>0]&7;v=b+20|0;f=(c[v>>2]|0)*3|0;f=((d[f+2+(j+11520+(u*51|0))>>0]|0)<<16|((d[f+1+(j+11520+(u*51|0))>>0]|0)<<8|(d[j+11520+(u*51|0)+f>>0]|0)))>>>(((c[t>>2]|0)/8|0)*6|0)&63;if(!f){l=x;return}h=f+-1|0;if(!(j+(h*192|0)|0)){l=x;return}r=b+64|0;s=b+72|0;f=c[s>>2]|0;g=(f|0)<1;u=b+28|0;f=g?1:f;g=c[(g?u:r)>>2]|0;i=f*3|0;k=i+1|0;n=eN(k)|0;if(!n){l=x;return}a[n>>0]=f;PQ(n+1|0,j+(h*192|0)+(g*3|0)|0,i|0)|0;h=eN(k<<1|1)|0;if(h|0){f=0;g=h;while(1){c[m>>2]=d[n+f>>0];MN(g,83632,m)|0;i=a[g>>0]|0;j=g+1|0;a[g>>0]=a[j>>0]|0;a[j>>0]=i;f=f+1|0;if((f|0)==(k|0))break;else g=g+2|0}g=c[80021]|0;do if(g){f=c[g+240>>2]|0;if(!f){o=g+288|0;fN(c[o>>2]|0);c[o>>2]=nP(h)|0;break}else{hg[f&63](g,h)|0;break}}else mE(310358,o);while(0);fN(h)}fN(n);if(e){g=c[p>>2]|0;q=a[q>>0]&7;f=(c[v>>2]|0)*3|0;f=((d[f+2+(g+11520+(q*51|0))>>0]|0)<<16|((d[f+1+(g+11520+(q*51|0))>>0]|0)<<8|(d[g+11520+(q*51|0)+f>>0]|0)))>>>(((c[t>>2]|0)/8|0)*6|0)&63;if(f|0?(w=f+-1|0,g+(w*192|0)|0):0){v=c[s>>2]|0;t=(v|0)<1;RQ(g+(w*192|0)+((c[(t?u:r)>>2]|0)*3|0)|0,0,(t?3:v*3|0)|0)|0}Tj(c[b+88>>2]|0)|0}c[b+52>>2]=-1;c[b+56>>2]=-1;w=b+60|0;c[w>>2]=0;c[w+4>>2]=0;c[w+8>>2]=0;c[w+12>>2]=0;l=x;return}function Ij(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+32|0;g=q+8|0;n=q+12|0;p=c[b+4>>2]|0;o=a[b+8>>0]&7;e=(c[b+20>>2]|0)*3|0;e=(d[e+2+(p+11520+(o*51|0))>>0]<<16|(d[e+1+(p+11520+(o*51|0))>>0]<<8|d[p+11520+(o*51|0)+e>>0]))>>>(((c[b+24>>2]|0)/8|0)*6|0)&63;if(!e){l=q;return}o=e+-1|0;if(!(p+(o*192|0)|0)){l=q;return}f=c[80021]|0;if(!f){mE(310474,q);l=q;return}e=c[f+248>>2]|0;if(!e){e=c[f+288>>2]|0;if(!e){l=q;return}if(!(a[e>>0]|0)){l=q;return}else h=11}else{if(!(gg[e&511](f)|0)){l=q;return}e=c[80021]|0;if(!e){mE(310416,g);m=nP(335059)|0}else{f=e;h=11}}do if((h|0)==11){e=c[f+244>>2]|0;if(!e){m=c[f+288>>2]|0;m=nP(m|0?m:335059)|0;break}else{m=gg[e&511](f)|0;break}}while(0);if(!m){l=q;return}k=WO(m)|0;j=k>>>1;if(k>>>0>3){k=eN(j)|0;i=WO(m)|0;a[n>>0]=a[38110]|0;a[n+1>>0]=a[38111]|0;a[n+2>>0]=a[38112]|0;a[n+3>>0]=a[38113]|0;a[n+4>>0]=a[38114]|0;g=(i|0)/2|0;if((i|0)>1){h=n+3|0;i=n+2|0;e=m;f=0;while(1){a[h>>0]=a[e>>0]|0;a[i>>0]=a[e+1>>0]|0;a[k+f>>0]=AN(n)|0;f=f+1|0;if((f|0)>=(g|0))break;else e=e+2|0}}e=a[k>>0]|0;f=e&255;if((f*3|0)==(j+-1|0)){n=c[b+28>>2]|0;PQ(p+(o*192|0)+(n*3|0)|0,k+1|0,(((n+f|0)>64?64-n&255:e)&255)*3|0)|0;Tj(c[b+88>>2]|0)|0}fN(k)}fN(m);l=q;return}function Jj(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;j=b+24|0;k=(c[j>>2]|0)/8|0;h=b+4|0;f=c[h>>2]|0;i=b+8|0;g=a[i>>0]&7;l=b+20|0;e=(c[l>>2]|0)*3|0;e=((d[e+2+(f+11520+(g*51|0))>>0]|0)<<16|((d[e+1+(f+11520+(g*51|0))>>0]|0)<<8|(d[f+11520+(g*51|0)+e>>0]|0)))>>>(k*6|0)&63;if(!e)return;e=e+-1|0;if(!(f+(e*192|0)|0))return;g=b+28|0;e=f+(e*192|0)+((c[g>>2]|0)*3|0)|0;e=(((d[e>>0]|d[e+1>>0]<<8)&65535|(d[e+2>>0]|0)<<16)&15)+-4|0;if((e|0)<=-1)return;f=b+36|0;if((c[f>>2]|0)==(e|0))return;c[f>>2]=e;f=c[b>>2]|0;Bg[c[f+2439744>>2]&255](f,k);b=c[b>>2]|0;h=c[h>>2]|0;i=a[i>>0]&7;l=(c[l>>2]|0)*3|0;l=h+(((((d[l+2+(h+11520+(i*51|0))>>0]|0)<<16|((d[l+1+(h+11520+(i*51|0))>>0]|0)<<8|(d[h+11520+(i*51|0)+l>>0]|0)))>>>(((c[j>>2]|0)/8|0)*6|0)&63)+-1|0)*192|0)+((c[g>>2]|0)*3|0)|0;l=(d[l>>0]|d[l+1>>0]<<8)&65535|(d[l+2>>0]|0)<<16;Ig[c[b+2439748>>2]&7](b,((l&16777215)>>>10&32|(l&16777215)>>>16&31)&16777215,e,(l&16777215)>>>21&16777215,-1,k,((l&16777215)>>>4&15^15)&16777215,0);return}function Kj(b,c,d){b=b|0;c=c|0;d=d|0;d=b+8|0;b=a[d>>0]|0;a[d>>0]=(b&255)+c&7|b&-8;return}function Lj(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;k=n;j=n+4|0;i=c[b>>2]|0;lg[c[i+2439660>>2]&31](i,e,d,12,0)|0;i=c[b>>2]|0;lg[c[i+2439660>>2]&31](i,e,d,11,15)|0;i=((WO(e)|0)*6|0)+d|0;e=c[48]|0;h=i+6|0;do if((e|0)>=(i|0)&(e|0)<(h|0)?((c[49]|0)+-11|0)>>>0<6:0){c[68]=11;if((a[204]|0)!=0?(e=c[52]|0,(e|0)>=(i|0)&(e|0)<(h|0)):0)e=((c[53]|0)+-11|0)>>>0<6;else e=0;if(((((a[205]|0)!=0?(d=c[52]|0,(d|0)>=(i|0)&(d|0)<(h|0)):0)?((c[53]|0)+-11|0)>>>0<6:0)?(d=c[54]|0,(d|0)>=(i|0)&(d|0)<(h|0)):0)?((c[55]|0)+-11|0)>>>0<6:0){a[205]=0;Dg[g&63](b,-1,0);if(e)d=10;else{d=10;e=11;break}}else{d=10;m=12}if((m|0)==12)if(!e){e=11;break}e=12}else{d=3;e=11}while(0);Xg(i,e,85829,d);c[j>>2]=3750201;c[k>>2]=f;MN(j,85557,k)|0;i=c[b>>2]|0;lg[c[i+2439664>>2]&31](i,j,h,12,0)|0;i=c[b>>2]|0;lg[c[i+2439664>>2]&31](i,j,h,11,15)|0;i=h+((f|0)>99?18:12)|0;d=c[48]|0;if((d|0)<(i|0)){m=3;g=11;Xg(i,g,85837,m);l=n;return}h=i+6|0;if((d|0)>=(h|0)){m=3;g=11;Xg(i,g,85837,m);l=n;return}if(((c[49]|0)+-11|0)>>>0>=6){m=3;g=11;Xg(i,g,85837,m);l=n;return}c[68]=11;if((a[204]|0)!=0?(k=c[52]|0,(k|0)>=(i|0)&(k|0)<(h|0)):0)e=((c[53]|0)+-11|0)>>>0<6;else e=0;if(((((a[205]|0)!=0?(k=c[52]|0,(k|0)>=(i|0)&(k|0)<(h|0)):0)?((c[53]|0)+-11|0)>>>0<6:0)?(k=c[54]|0,(k|0)>=(i|0)&(k|0)<(h|0)):0)?((c[55]|0)+-11|0)>>>0<6:0){a[205]=0;Dg[g&63](b,1,0);if(e)d=10;else{m=10;g=11;Xg(i,g,85837,m);l=n;return}}else{d=10;m=26}if((m|0)==26)if(!e){m=d;g=11;Xg(i,g,85837,m);l=n;return}m=d;g=12;Xg(i,g,85837,m);l=n;return}function Mj(b,d,e){b=b|0;d=d|0;e=e|0;e=(c[b+4>>2]|0)+11520+((a[b+8>>0]&7)*51|0)+48|0;d=(a[e>>0]|0)+(d*10|0)|0;d=(d|0)<100?d:100;a[e>>0]=(d|0)>-110?d:-110;Tj(c[b+88>>2]|0)|0;return}function Nj(b,d,e){b=b|0;d=d|0;e=e|0;e=(c[b+4>>2]|0)+11520+((a[b+8>>0]&7)*51|0)+50|0;d=(a[e>>0]|0)+d|0;d=(d|0)<25?d:25;a[e>>0]=(d|0)>-5?d:-5;Tj(c[b+88>>2]|0)|0;return}function Oj(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;f=c[b+4>>2]|0;g=b+8|0;h=f+11520+((a[g>>0]&7)*51|0)+49|0;i=(d[h>>0]|0)-e|0;i=(i|0)>0?i:0;a[h>>0]=(i|0)<48?i:48;h=b+28|0;i=c[h>>2]|0;k=b+32|0;e=c[k>>2]|0;if((i|0)>=(e|0)){if((i|0)>=(e+16|0)){e=i+-15|0;j=4}}else{e=i;j=4}if((j|0)==4)c[k>>2]=e;f=64-(d[f+11520+((a[g>>0]&7)*51|0)+49>>0]|0)|0;if((i|0)>=(f|0))c[h>>2]=f+-1;if((e|0)<0){c[k>>2]=0;e=0}f=f+-16|0;if((e|0)<=(f|0)){b=b+88|0;b=c[b>>2]|0;Tj(b)|0;return}c[k>>2]=f;b=b+88|0;b=c[b>>2]|0;Tj(b)|0;return}function Pj(b){b=b|0;b=b+12|0;a[b>>0]=a[b>>0]^1;return}function Qj(b){b=b|0;var d=0;d=c[b>>2]|0;Fg[c[d+2439760>>2]&15](d,a[b+8>>0]&7,c[b+20>>2]|0,-1,1);return}function Rj(b){b=b|0;var d=0;d=c[b>>2]|0;Fg[c[d+2439756>>2]&15](d,a[b+8>>0]&7,-1,-1,1);return}function Sj(a){a=a|0;a=c[a>>2]|0;Fg[c[a+2439756>>2]&15](a,-1,-1,-1,0);return}function Tj(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=b+8|0;h=c[l>>2]|0;n=b+12|0;e=c[n>>2]|0;m=b+4|0;f=c[m>>2]|0;if(!(KN(h,e,f)|0)){n=0;return n|0}a:do if(f){d=0;do{k=h+d|0;a[k>>0]=a[k>>0]^a[e+d>>0];d=d+1|0;h=c[l>>2]|0}while((d|0)!=(f|0));d=c[m>>2]|0;if(!d){d=0;g=0;e=0}else{e=0;while(1){if(a[h+e>>0]|0)break;e=e+1|0;if(e>>>0>=d>>>0){e=d;break}}f=0;while(1){g=d-f|0;f=f+1|0;if(a[h+(g+-1)>>0]|0)break a;if(f>>>0>=d>>>0){g=0;break}}}}else{d=0;g=0;e=0}while(0);i=g-e|0;f=eN(i)|0;PQ(f|0,h+e|0,i|0)|0;i=c[b>>2]|0;k=eN(20)|0;c[k>>2]=0;j=k+4|0;c[j>>2]=0;c[k+8>>2]=f;c[k+12>>2]=e;c[k+16>>2]=g;if(!i)e=h;else{e=c[i>>2]|0;if(!e)e=h;else{d=e;do{e=d;d=c[d>>2]|0;f=c[e+8>>2]|0;if(f|0)fN(f);fN(e)}while((d|0)!=0);e=c[l>>2]|0;d=c[m>>2]|0}c[i>>2]=k;c[j>>2]=i}c[b>>2]=k;PQ(e|0,c[n>>2]|0,d|0)|0;n=1;return n|0}function Uj(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;B=l;l=l+64|0;z=B;A=b+8|0;g=c[A>>2]|0;if(!g){g=eN(16320)|0;c[A>>2]=g}c[b>>2]=e;c[b+4>>2]=f;c[A>>2]=g;c[b+12>>2]=199;RQ(g|0,0,16320)|0;y=z+4|0;j=z+8|0;k=z+12|0;m=z+16|0;n=z+20|0;o=z+24|0;p=z+28|0;q=z+32|0;r=z+36|0;s=z+40|0;t=z+44|0;u=z+48|0;v=z+52|0;w=z+56|0;x=z+60|0;i=0;do{h=c[3]|0;e=a[h+81920+((a[756]|0)*130968|0)+16384+i>>0]|0;if(e<<24>>24){g=z;b=g+64|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(b|0));f=a[755]|0;b=e&255;g=0;do{C=d[(g>>>1)+(h+81920+(f*130968|0)+(b<<5))>>0]|0;C=g&1|0?C>>>4:C&15;e=z+(C<<2)|0;if(C|0)c[e>>2]=(c[e>>2]|0)+1;g=g+1|0}while((g|0)!=64);g=(c[y>>2]|0)>(c[z>>2]|0)&1;g=(c[j>>2]|0)>(c[z+(g<<2)>>2]|0)?2:g;g=(c[k>>2]|0)>(c[z+(g<<2)>>2]|0)?3:g;g=(c[m>>2]|0)>(c[z+(g<<2)>>2]|0)?4:g;g=(c[n>>2]|0)>(c[z+(g<<2)>>2]|0)?5:g;g=(c[o>>2]|0)>(c[z+(g<<2)>>2]|0)?6:g;g=(c[p>>2]|0)>(c[z+(g<<2)>>2]|0)?7:g;g=(c[q>>2]|0)>(c[z+(g<<2)>>2]|0)?8:g;g=(c[r>>2]|0)>(c[z+(g<<2)>>2]|0)?9:g;g=(c[s>>2]|0)>(c[z+(g<<2)>>2]|0)?10:g;g=(c[t>>2]|0)>(c[z+(g<<2)>>2]|0)?11:g;g=(c[u>>2]|0)>(c[z+(g<<2)>>2]|0)?12:g;g=(c[v>>2]|0)>(c[z+(g<<2)>>2]|0)?13:g;g=(c[w>>2]|0)>(c[z+(g<<2)>>2]|0)?14:g;g=(c[x>>2]|0)>(c[z+(g<<2)>>2]|0)?15:g;e=(c[A>>2]|0)+(i>>>1)|0;b=d[e>>0]|0;if(!(i&1)){b=b&240;a[e>>0]=b;g=g&15}else{b=b&15;a[e>>0]=b;g=g<<4&4080}a[e>>0]=g|b}i=i+1|0}while((i|0)!=32640);l=B;return}function Vj(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=eh()|0;if(d|0)do{a:do if((c[d>>2]|0)==768?(c[d+16+4>>2]|0)==9:0){d=c[45]|0;b:do switch(d|0){case 5:break a;case 2:{d=c[3]|0;vg[c[d+2439784>>2]&511](d);d=c[3]|0;vg[c[d+2439780>>2]&511](d);break}default:{h=c[3]|0;vg[c[h+2439780>>2]&511](h);switch(d|0){case 10:case 9:case 1:case 0:break b;case 11:{c[46]=3;break b}default:{c[46]=d;break b}}}}while(0);c[45]=5;d=c[80021]|0;if(((d|0?(e=c[d+224>>2]|0,e|0):0)?gg[e&511](d)|0:0)?(c[45]|2|0)==3:0)aN()}while(0);d=eh()|0}while((d|0)!=0);PQ(c[b>>2]|0,c[b+8>>2]|0,16320)|0;e=c[b+4>>2]|0;d=c[b>>2]|0;Gg[c[d+2439684>>2]&7](d,0,0,0,136,10);d=c[b>>2]|0;Gg[c[d+2439684>>2]&7](d,30,0,30,136,10);d=c[b>>2]|0;Gg[c[d+2439684>>2]&7](d,60,0,60,136,10);d=c[b>>2]|0;Gg[c[d+2439684>>2]&7](d,90,0,90,136,10);d=c[b>>2]|0;Gg[c[d+2439684>>2]&7](d,120,0,120,136,10);d=c[b>>2]|0;Gg[c[d+2439684>>2]&7](d,150,0,150,136,10);d=c[b>>2]|0;Gg[c[d+2439684>>2]&7](d,180,0,180,136,10);d=c[b>>2]|0;Gg[c[d+2439684>>2]&7](d,210,0,210,136,10);d=c[b>>2]|0;Gg[c[d+2439684>>2]&7](d,0,0,240,0,10);d=c[b>>2]|0;Gg[c[d+2439684>>2]&7](d,0,17,240,17,10);d=c[b>>2]|0;Gg[c[d+2439684>>2]&7](d,0,34,240,34,10);d=c[b>>2]|0;Gg[c[d+2439684>>2]&7](d,0,51,240,51,10);d=c[b>>2]|0;Gg[c[d+2439684>>2]&7](d,0,68,240,68,10);d=c[b>>2]|0;Gg[c[d+2439684>>2]&7](d,0,85,240,85,10);d=c[b>>2]|0;Gg[c[d+2439684>>2]&7](d,0,102,240,102,10);d=c[b>>2]|0;Gg[c[d+2439684>>2]&7](d,0,119,240,119,10);d=c[b>>2]|0;Gg[c[d+2439692>>2]&7](d,0,0,240,136,10);d=c[48]|0;c:do if(d>>>0<240?(f=c[49]|0,f>>>0<136):0){c[68]=11;if((a[204]|0)!=0&(c[52]|0)>>>0<240&(c[53]|0)>>>0<136){c[e+60>>2]=(d<<3)+-120;c[e+64>>2]=(f<<3)+-64}if((a[205]|0)!=0&(c[52]|0)>>>0<240?(c[53]|0)>>>0<136&(c[54]|0)>>>0<240&(c[55]|0)>>>0<136:0){a[205]=0;d=c[45]|0;d:do switch(d|0){case 5:break c;case 2:{h=c[3]|0;vg[c[h+2439784>>2]&511](h);h=c[3]|0;vg[c[h+2439780>>2]&511](h);break}default:{h=c[3]|0;vg[c[h+2439780>>2]&511](h);switch(d|0){case 10:case 9:case 1:case 0:break d;case 11:{c[46]=3;break d}default:{c[46]=d;break d}}}}while(0);c[45]=5;d=c[80021]|0;if(((d|0?(g=c[d+224>>2]|0,g|0):0)?gg[g&511](d)|0:0)?(c[45]|2|0)==3:0)aN()}}while(0);h=c[b>>2]|0;Gg[c[h+2439692>>2]&7](h,(c[e+60>>2]|0)/8|0,(c[e+64>>2]|0)/8|0,31,18,6);return}function Wj(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;e=l;l=l+4096|0;b=e;d=c[a>>2]|0;PQ(d+1260276|0,d+81920|0,1178356)|0;Yj(a);d=eN(1178356)|0;if(!d){fh();l=e;return}f=c[a>>2]|0;f=hg[c[f+2439812>>2]&63](f+1260276|0,d)|0;g=c[a+4>>2]|0;a=g+4096|0;aP(b,a)|0;RQ(a|0,0,4096)|0;Di(g,87947,d,f,1)|0;aP(a,b)|0;fN(d);fh();l=e;return}function Xj(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+4096|0;f=g;d=b+8|0;e=d+40|0;do{a[d>>0]=0;d=d+1|0}while((d|0)<(e|0));c[f>>2]=0;d=gh(f,85845,2102)|0;e=c[f>>2]|0;if(e|0){h=c[b>>2]|0;Eg[c[h+2439808>>2]&63](h+1260276|0,e,d,1);Yj(b);fh();fN(e)}d=eN(1178356)|0;if(!d){l=g;return}e=c[b>>2]|0;e=hg[c[e+2439812>>2]&63](e+1260276|0,d)|0;b=c[b+4>>2]|0;h=b+4096|0;aP(f,h)|0;RQ(h|0,0,4096)|0;Di(b,87947,d,e,1)|0;aP(h,f)|0;fN(d);l=g;return}function Yj(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;e=q;n=tx(1,0)|0;if(!n){l=q;return}p=n+12|0;c[(c[p>>2]|0)+132>>2]=390;o=(c[b>>2]|0)+1325708|0;j=WO(o)|0;c[e>>2]=o;c[e+4>>2]=j;if(!(dw(n,7,e,o,0)|0)){o=n+8|0;f=(c[o>>2]|0)+-16|0;c[e>>2]=f;c[e+4>>2]=-1;e=Aw(n,147,e,f-(c[n+28>>2]|0)|0,0)|0;f=(c[n+16>>2]|0)+4|0;i=c[o>>2]|0;if((c[f>>2]|0)>>>0<i>>>0)c[f>>2]=i;if(!e){h=c[p>>2]|0;e=c[h+40>>2]|0;a:do if((c[e+8>>2]|0)>>>0>1)g=(c[e+12>>2]|0)+16|0;else{f=(c[e+16>>2]|0)+(((1<<(d[e+7>>0]|0))+3&2)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(j=f+16|0,(c[j>>2]|0)==2&(c[j+4>>2]|0)==0):0)break;e=c[f+28>>2]|0;if(!e){g=316344;break a}f=f+(e<<5)|0}g=f}while(0);f=h+280+(((87972>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(87972,e+16|0)|0){e=xx(n,87972,10)|0;c[f>>2]=e}c[i>>2]=e;c[i+8>>2]=(a[e+4>>0]|64)&255;i=c[o>>2]|0;c[o>>2]=i+16;Kx(n,g,i,i);i=c[o>>2]|0;if((c[i+-8>>2]|0)==19)c[b+36>>2]=c[i+-16>>2];j=i+-16|0;c[o>>2]=j;h=c[p>>2]|0;e=c[h+40>>2]|0;b:do if((c[e+8>>2]|0)>>>0>1)g=(c[e+12>>2]|0)+16|0;else{f=(c[e+16>>2]|0)+(((1<<(d[e+7>>0]|0))+3&2)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(g=f+16|0,(c[g>>2]|0)==2&(c[g+4>>2]|0)==0):0)break;e=c[f+28>>2]|0;if(!e){g=316344;break b}f=f+(e<<5)|0}g=f}while(0);f=h+280+(((87983>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(87983,e+16|0)|0){e=xx(n,87983,9)|0;c[f>>2]=e}c[j>>2]=e;c[i+-8>>2]=(a[e+4>>0]|64)&255;i=c[o>>2]|0;c[o>>2]=i+16;Kx(n,g,i,i);i=c[o>>2]|0;if((c[i+-8>>2]|0)==19)c[b+32>>2]=c[i+-16>>2];j=i+-16|0;c[o>>2]=j;h=c[p>>2]|0;e=c[h+40>>2]|0;c:do if((c[e+8>>2]|0)>>>0>1)g=(c[e+12>>2]|0)+16|0;else{f=(c[e+16>>2]|0)+(((1<<(d[e+7>>0]|0))+3&2)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(g=f+16|0,(c[g>>2]|0)==2&(c[g+4>>2]|0)==0):0)break;e=c[f+28>>2]|0;if(!e){g=316344;break c}f=f+(e<<5)|0}g=f}while(0);f=h+280+(((87993>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(87993,e+16|0)|0){e=xx(n,87993,17)|0;c[f>>2]=e}c[j>>2]=e;c[i+-8>>2]=(a[e+4>>0]|64)&255;i=c[o>>2]|0;c[o>>2]=i+16;Kx(n,g,i,i);i=c[o>>2]|0;j=i+-16|0;if((j|0)!=316344?(k=c[i+-8>>2]|0,(k&15|0)==1):0){switch(k|0){case 0:{e=0;break}case 1:{e=(c[j>>2]|0)!=0;break}default:e=1}a[b+40>>0]=e&1}c[o>>2]=j;h=c[p>>2]|0;e=c[h+40>>2]|0;d:do if((c[e+8>>2]|0)>>>0>1)g=(c[e+12>>2]|0)+16|0;else{f=(c[e+16>>2]|0)+(((1<<(d[e+7>>0]|0))+3&2)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(k=f+16|0,(c[k>>2]|0)==2&(c[k+4>>2]|0)==0):0)break;e=c[f+28>>2]|0;if(!e){g=316344;break d}f=f+(e<<5)|0}g=f}while(0);f=h+280+(((88011>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(88011,e+16|0)|0){e=xx(n,88011,8)|0;c[f>>2]=e}c[j>>2]=e;c[i+-8>>2]=(a[e+4>>0]|64)&255;i=c[o>>2]|0;c[o>>2]=i+16;Kx(n,g,i,i);i=c[o>>2]|0;j=i+-16|0;if((j|0)!=316344?(m=c[i+-8>>2]|0,(m&15|0)==1):0){switch(m|0){case 0:{e=0;break}case 1:{e=(c[j>>2]|0)!=0;break}default:e=1}a[b+41>>0]=e&1}c[o>>2]=j;h=c[p>>2]|0;e=c[h+40>>2]|0;e:do if((c[e+8>>2]|0)>>>0>1)g=(c[e+12>>2]|0)+16|0;else{f=(c[e+16>>2]|0)+(((1<<(d[e+7>>0]|0))+3&2)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(m=f+16|0,(c[m>>2]|0)==2&(c[m+4>>2]|0)==0):0)break;e=c[f+28>>2]|0;if(!e){g=316344;break e}f=f+(e<<5)|0}g=f}while(0);f=h+280+(((88020>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(88020,e+16|0)|0){e=xx(n,88020,13)|0;c[f>>2]=e}c[j>>2]=e;c[i+-8>>2]=(a[e+4>>0]|64)&255;i=c[o>>2]|0;c[o>>2]=i+16;Kx(n,g,i,i);i=c[o>>2]|0;if((c[i+-8>>2]|0)==19)c[b+44>>2]=c[i+-16>>2];j=i+-16|0;c[o>>2]=j;h=c[p>>2]|0;e=c[h+40>>2]|0;f:do if((c[e+8>>2]|0)>>>0>1)g=(c[e+12>>2]|0)+16|0;else{f=(c[e+16>>2]|0)+(((1<<(d[e+7>>0]|0))+3&2)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(m=f+16|0,(c[m>>2]|0)==2&(c[m+4>>2]|0)==0):0)break;e=c[f+28>>2]|0;if(!e){g=316344;break f}f=f+(e<<5)|0}g=f}while(0);f=h+280+(((88034>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(88034,e+16|0)|0){e=xx(n,88034,9)|0;c[f>>2]=e}c[j>>2]=e;c[i+-8>>2]=(a[e+4>>0]|64)&255;i=c[o>>2]|0;c[o>>2]=i+16;Kx(n,g,i,i);i=c[o>>2]|0;j=i+-16|0;do if((j|0)!=316344){e=c[i+-8>>2]|0;if((e&15|0)!=1)break;switch(e|0){case 0:{e=0;break}case 1:{e=(c[j>>2]|0)!=0;break}default:e=1}a[b+42>>0]=e&1}while(0);c[o>>2]=j;h=c[p>>2]|0;e=c[h+40>>2]|0;g:do if((c[e+8>>2]|0)>>>0>1)g=(c[e+12>>2]|0)+16|0;else{f=(c[e+16>>2]|0)+(((1<<(d[e+7>>0]|0))+3&2)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(m=f+16|0,(c[m>>2]|0)==2&(c[m+4>>2]|0)==0):0)break;e=c[f+28>>2]|0;if(!e){g=316344;break g}f=f+(e<<5)|0}g=f}while(0);f=h+280+(((88044>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(88044,e+16|0)|0){e=xx(n,88044,5)|0;c[f>>2]=e}c[j>>2]=e;c[i+-8>>2]=(a[e+4>>0]|64)&255;e=c[o>>2]|0;c[o>>2]=e+16;Kx(n,g,e,e);e=c[o>>2]|0;h=e+-16|0;do if((h|0)!=316344){if((c[e+-8>>2]&15|0)!=5)break;g=(c[p>>2]|0)+280+(((88050>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(88050,f+16|0)|0){f=xx(n,88050,6)|0;c[g>>2]=f}c[e>>2]=f;c[e+8>>2]=(a[f+4>>0]|64)&255;g=c[o>>2]|0;c[o>>2]=g+16;Kx(n,h,g,g);g=c[o>>2]|0;h=g+-16|0;do if((h|0)==316344)f=g;else{if((c[g+-8>>2]&15|0)!=5){f=g;break}f=(c[p>>2]|0)+280+(((88057>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(88057,e+16|0)|0){e=xx(n,88057,6)|0;c[f>>2]=e}c[g>>2]=e;c[g+8>>2]=(a[e+4>>0]|64)&255;g=c[o>>2]|0;c[o>>2]=g+16;Kx(n,h,g,g);g=c[o>>2]|0;if((c[g+-8>>2]|0)==19)c[b+8>>2]=c[g+-16>>2];h=g+-16|0;c[o>>2]=h;f=(c[p>>2]|0)+280+(((88064>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(88064,e+16|0)|0){e=xx(n,88064,13)|0;c[f>>2]=e}c[h>>2]=e;c[g+-8>>2]=(a[e+4>>0]|64)&255;e=c[o>>2]|0;c[o>>2]=e+16;Kx(n,g+-32|0,e,e);e=c[o>>2]|0;f=e+-16|0;do if((f|0)!=316344){e=c[e+-8>>2]|0;if((e&15|0)!=1)break;switch(e|0){case 0:{e=0;break}case 1:{e=(c[f>>2]|0)!=0;break}default:e=1}a[b+12>>0]=e&1}while(0);c[o>>2]=f}while(0);h=f+-16|0;c[o>>2]=h;g=(c[p>>2]|0)+280+(((88078>>>0)%127|0)<<2)|0;e=c[g>>2]|0;if(JN(88078,e+16|0)|0){e=xx(n,88078,4)|0;c[g>>2]=e}c[h>>2]=e;c[f+-8>>2]=(a[e+4>>0]|64)&255;e=c[o>>2]|0;c[o>>2]=e+16;Kx(n,f+-32|0,e,e);e=c[o>>2]|0;do if((e+-16|0)==316344)f=e;else{if((c[e+-8>>2]&15|0)!=5){f=e;break}j=b+16|0;i=0;do{g=c[2388+(i<<2)>>2]|0;h=(c[p>>2]|0)+280+(((g>>>0)%127|0)<<2)|0;f=c[h>>2]|0;if(JN(g,f+16|0)|0){f=xx(n,g,WO(g)|0)|0;c[h>>2]=f}c[e>>2]=f;c[e+8>>2]=(a[f+4>>0]|64)&255;m=c[o>>2]|0;c[o>>2]=m+16;Kx(n,e+-16|0,m,m);e=c[o>>2]|0;if((c[e+-8>>2]|0)==19){a[j+i>>0]=c[e+-16>>2];h=c[o>>2]|0}else h=e;e=h+-16|0;c[o>>2]=e;i=i+1|0}while((i|0)!=8);i=b+24|0;g=(c[p>>2]|0)+280+(((88083>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(88083,f+16|0)|0){f=xx(n,88083,2)|0;c[g>>2]=f}c[e>>2]=f;c[h+-8>>2]=(a[f+4>>0]|64)&255;e=c[o>>2]|0;c[o>>2]=e+16;Kx(n,h+-32|0,e,e);e=c[o>>2]|0;if((c[e+-8>>2]|0)==19){a[i>>0]=c[e+-16>>2];e=c[o>>2]|0}h=e+-16|0;c[o>>2]=h;g=(c[p>>2]|0)+280+(((88086>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(88086,f+16|0)|0){f=xx(n,88086,6)|0;c[g>>2]=f}c[h>>2]=f;c[e+-8>>2]=(a[f+4>>0]|64)&255;m=c[o>>2]|0;c[o>>2]=m+16;Kx(n,e+-32|0,m,m);e=c[o>>2]|0;if((c[e+-8>>2]|0)==19){a[i+1>>0]=c[e+-16>>2];e=c[o>>2]|0}h=e+-16|0;c[o>>2]=h;g=(c[p>>2]|0)+280+(((88050>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(88050,f+16|0)|0){f=xx(n,88050,6)|0;c[g>>2]=f}c[h>>2]=f;c[e+-8>>2]=(a[f+4>>0]|64)&255;m=c[o>>2]|0;c[o>>2]=m+16;Kx(n,e+-32|0,m,m);e=c[o>>2]|0;if((c[e+-8>>2]|0)==19){a[i+2>>0]=c[e+-16>>2];e=c[o>>2]|0}h=e+-16|0;c[o>>2]=h;g=(c[p>>2]|0)+280+(((88093>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(88093,f+16|0)|0){f=xx(n,88093,6)|0;c[g>>2]=f}c[h>>2]=f;c[e+-8>>2]=(a[f+4>>0]|64)&255;f=c[o>>2]|0;c[o>>2]=f+16;Kx(n,e+-32|0,f,f);e=c[o>>2]|0;f=e+-16|0;do if((f|0)!=316344){e=c[e+-8>>2]|0;if((e&15|0)!=1)break;switch(e|0){case 0:{e=0;break}case 1:{e=(c[f>>2]|0)!=0&1;break}default:e=1}a[b+27>>0]=e}while(0);c[o>>2]=f}while(0);h=f+-16|0;c[o>>2]=h;g=(c[p>>2]|0)+280+(((88100>>>0)%127|0)<<2)|0;e=c[g>>2]|0;if(JN(88100,e+16|0)|0){e=xx(n,88100,7)|0;c[g>>2]=e}c[h>>2]=e;c[f+-8>>2]=(a[e+4>>0]|64)&255;e=c[o>>2]|0;c[o>>2]=e+16;Kx(n,f+-32|0,e,e);e=c[o>>2]|0;h=e+-16|0;do if((h|0)!=316344){if((c[e+-8>>2]&15|0)!=5)break;g=(c[p>>2]|0)+280+(((88108>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(88108,f+16|0)|0){f=xx(n,88108,5)|0;c[g>>2]=f}c[e>>2]=f;c[e+8>>2]=(a[f+4>>0]|64)&255;e=c[o>>2]|0;c[o>>2]=e+16;Kx(n,h,e,e);e=c[o>>2]|0;h=e+-16|0;do if((h|0)!=316344){if((c[e+-8>>2]&15|0)!=5)break;g=(c[p>>2]|0)+280+(((88114>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(88114,f+16|0)|0){f=xx(n,88114,5)|0;c[g>>2]=f}c[e>>2]=f;c[e+8>>2]=(a[f+4>>0]|64)&255;e=c[o>>2]|0;c[o>>2]=e+16;Kx(n,h,e,e);e=c[o>>2]|0;if((c[e+-8>>2]|0)==19)a[b+28>>0]=c[e+-16>>2];e=e+-16|0;c[o>>2]=e}while(0);e=e+-16|0;c[o>>2]=e}while(0);e=e+-16|0;c[o>>2]=e}while(0);c[o>>2]=e+-16}}vx(c[(c[p>>2]|0)+136>>2]|0);l=q;return}
|
|
function zr(e){e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0.0,J=0,K=0;H=l;l=l+288|0;x=H;y=H+256|0;A=y+4|0;c[A>>2]=0;c[A+4>>2]=0;c[A+8>>2]=0;c[A+12>>2]=0;c[y>>2]=274404;B=y+8|0;c[B>>2]=3972;F=e+68|0;g=c[e+52>>2]|0;f=(c[F>>2]|0)-g+1728|0;g=g+f|0;D=e+56|0;do if((c[D>>2]|0)>>>0<g>>>0)if((c[e+60>>2]|0)>>>0<g>>>0){lo(e,f,1)|0;break}else{c[D>>2]=g;break}while(0);v=y+16|0;w=y+12|0;C=e+44|0;G=e+64|0;E=e+304|0;r=e+132|0;f=0;m=0;a:while(1){g=c[w>>2]|0;if((m|0)<2){k=c[B>>2]|0;i=c[A>>2]|0;j=m;do{g=g<<8;c[w>>2]=g;if(i>>>0<k>>>0){t=c[y>>2]|0;u=i+1|0;c[A>>2]=u;g=d[t+i>>0]|0|g;c[w>>2]=g;i=u}j=j+8|0;c[v>>2]=j}while((j|0)<2);m=m+8+(1-m&-8)|0}i=m+-2|0;c[v>>2]=i;b:do switch(g>>>i&3){case 0:{q=0;break}case 1:{if((i|0)<2){k=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<k>>>0){t=c[y>>2]|0;u=j+1|0;c[A>>2]=u;g=d[t+j>>0]|0|g;c[w>>2]=g;j=u}i=i+8|0;c[v>>2]=i}while((i|0)<2);i=m+6+(3-m&-8)|0}i=i+-2|0;c[v>>2]=i;q=(g>>>i&3)+1|0;break}case 2:{if((i|0)<5){k=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<k>>>0){t=c[y>>2]|0;u=j+1|0;c[A>>2]=u;g=d[t+j>>0]|0|g;c[w>>2]=g;j=u}i=i+8|0;c[v>>2]=i}while((i|0)<5);i=m+6+(6-m&-8)|0}i=i+-5|0;c[v>>2]=i;q=(g>>>i&31)+5|0;break}default:{if((i|0)<7){k=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<k>>>0){t=c[y>>2]|0;u=j+1|0;c[A>>2]=u;g=d[t+j>>0]|0|g;c[w>>2]=g;j=u}i=i+8|0;c[v>>2]=i}while((i|0)<7);m=m+6+(8-m&-8)|0}else m=i;i=m+-7|0;j=g>>>i&127;c[v>>2]=i;if(j|0){q=j+36|0;break b}if((i|0)<20){k=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<k>>>0){t=c[y>>2]|0;u=j+1|0;c[A>>2]=u;g=d[t+j>>0]|0|g;c[w>>2]=g;j=u}i=i+8|0;c[v>>2]=i}while((i|0)<20);i=m+1+(26-m&-8)|0}i=i+-20|0;c[v>>2]=i;q=g>>>i&1048575}}while(0);if((i|0)<1){m=c[B>>2]|0;j=c[A>>2]|0;k=i;do{g=g<<8;c[w>>2]=g;if(j>>>0<m>>>0){t=c[y>>2]|0;u=j+1|0;c[A>>2]=u;g=d[t+j>>0]|0|g;c[w>>2]=g;j=u}k=k+8|0;c[v>>2]=k}while((k|0)<1);i=i+8+(0-i&-8)|0}k=i+-1|0;c[v>>2]=k;if(!(1<<k&g))p=-1;else{if((i|0)<4){m=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<m>>>0){t=c[y>>2]|0;u=j+1|0;c[A>>2]=u;g=d[t+j>>0]|0|g;c[w>>2]=g;j=u}k=k+8|0;c[v>>2]=k}while((k|0)<3);i=i+7+(3-i&-8)|0}else i=k;k=i+-3|0;c[v>>2]=k;p=g>>>k&7}switch(q|0){case 3:{if((k|0)<2){m=c[B>>2]|0;i=c[A>>2]|0;j=k;do{g=g<<8;c[w>>2]=g;if(i>>>0<m>>>0){t=c[y>>2]|0;u=i+1|0;c[A>>2]=u;g=d[t+i>>0]|0|g;c[w>>2]=g;i=u}j=j+8|0;c[v>>2]=j}while((j|0)<2);k=k+8+(1-k&-8)|0}i=k+-2|0;c[v>>2]=i;c:do switch(g>>>i&3){case 0:{j=0;break}case 1:{if((i|0)<2){m=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<m>>>0){t=c[y>>2]|0;u=j+1|0;c[A>>2]=u;g=d[t+j>>0]|0|g;c[w>>2]=g;j=u}i=i+8|0;c[v>>2]=i}while((i|0)<2);i=k+6+(3-k&-8)|0}i=i+-2|0;c[v>>2]=i;j=(g>>>i&3)+1|0;break}case 2:{if((i|0)<5){m=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<m>>>0){t=c[y>>2]|0;u=j+1|0;c[A>>2]=u;g=d[t+j>>0]|0|g;c[w>>2]=g;j=u}i=i+8|0;c[v>>2]=i}while((i|0)<5);i=k+6+(6-k&-8)|0}i=i+-5|0;c[v>>2]=i;j=(g>>>i&31)+5|0;break}default:{if((i|0)<7){m=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<m>>>0){t=c[y>>2]|0;u=j+1|0;c[A>>2]=u;g=d[t+j>>0]|0|g;c[w>>2]=g;j=u}i=i+8|0;c[v>>2]=i}while((i|0)<7);m=k+6+(8-k&-8)|0}else m=i;i=m+-7|0;j=g>>>i&127;c[v>>2]=i;if(j|0){j=j+36|0;break c}if((i|0)<20){k=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<k>>>0){t=c[y>>2]|0;u=j+1|0;c[A>>2]=u;g=d[t+j>>0]|0|g;c[w>>2]=g;j=u}i=i+8|0;c[v>>2]=i}while((i|0)<20);i=m+1+(26-m&-8)|0}i=i+-20|0;c[v>>2]=i;j=g>>>i&1048575}}while(0);n=c[4220+(j<<2)>>2]|0;if((i|0)<1){m=c[B>>2]|0;j=c[A>>2]|0;k=i;do{g=g<<8;c[w>>2]=g;if(j>>>0<m>>>0){t=c[y>>2]|0;u=j+1|0;c[A>>2]=u;g=d[t+j>>0]|0|g;c[w>>2]=g;j=u}k=k+8|0;c[v>>2]=k}while((k|0)<1);i=i+8+(0-i&-8)|0}j=i+-1|0;c[v>>2]=j;if(!(1<<j&g))g=p;else{if((i|0)<4){m=c[B>>2]|0;k=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(k>>>0<m>>>0){t=c[y>>2]|0;u=k+1|0;c[A>>2]=u;g=d[t+k>>0]|0|g;c[w>>2]=g;k=u}j=j+8|0;c[v>>2]=j}while((j|0)<3);i=i+7+(3-i&-8)|0}else i=j;u=i+-3|0;c[v>>2]=u;g=g>>>u&7}aq(e,n,(g|0)==7?-1:g,403133312,5);n=c[F>>2]|0;o=c[n+-8>>2]|0;m=c[v>>2]|0;g=c[w>>2]|0;if((m|0)<2){k=c[B>>2]|0;i=c[A>>2]|0;j=m;do{g=g<<8;c[w>>2]=g;if(i>>>0<k>>>0){t=c[y>>2]|0;u=i+1|0;c[A>>2]=u;g=d[t+i>>0]|0|g;c[w>>2]=g;i=u}j=j+8|0;c[v>>2]=j}while((j|0)<2);m=m+8+(1-m&-8)|0}i=m+-2|0;c[v>>2]=i;d:do switch(g>>>i&3){case 0:{t=144;break}case 1:{if((i|0)<2){k=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<k>>>0){t=c[y>>2]|0;u=j+1|0;c[A>>2]=u;g=d[t+j>>0]|0|g;c[w>>2]=g;j=u}i=i+8|0;c[v>>2]=i}while((i|0)<2);i=m+6+(3-m&-8)|0}t=i+-2|0;c[v>>2]=t;g=(g>>>t&3)+1|0;t=149;break}case 2:{if((i|0)<5){k=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<k>>>0){t=c[y>>2]|0;u=j+1|0;c[A>>2]=u;g=d[t+j>>0]|0|g;c[w>>2]=g;j=u}i=i+8|0;c[v>>2]=i}while((i|0)<5);i=m+6+(6-m&-8)|0}t=i+-5|0;c[v>>2]=t;g=(g>>>t&31)+5|0;t=149;break}default:{if((i|0)<7){k=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<k>>>0){t=c[y>>2]|0;u=j+1|0;c[A>>2]=u;g=d[t+j>>0]|0|g;c[w>>2]=g;j=u}i=i+8|0;c[v>>2]=i}while((i|0)<7);m=m+6+(8-m&-8)|0}else m=i;i=m+-7|0;j=g>>>i&127;c[v>>2]=i;if(j|0){g=j+36|0;t=149;break d}if((i|0)<20){k=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<k>>>0){t=c[y>>2]|0;u=j+1|0;c[A>>2]=u;g=d[t+j>>0]|0|g;c[w>>2]=g;j=u}i=i+8|0;c[v>>2]=i}while((i|0)<20);i=m+1+(26-m&-8)|0}u=i+-20|0;g=g>>>u&1048575;c[v>>2]=u;if(!g)t=144;else t=149}}while(0);if((t|0)==144){g=xr(y,x)|0;if((c[F>>2]|0)>>>0>=(c[D>>2]|0)>>>0){t=145;break a}if((g|0)<0){t=147;break a}u=Oo(e,x,g)|0;t=c[F>>2]|0;c[F>>2]=t+16;c[t>>2]=8;c[t+8>>2]=u;u=u+4|0;c[u>>2]=(c[u>>2]|0)+1}else if((t|0)==149){g=c[(c[E>>2]|0)+(g+-1<<2)>>2]|0;if(n>>>0>=(c[D>>2]|0)>>>0){t=150;break a}c[F>>2]=n+16;c[n>>2]=8;c[n+8>>2]=g;u=g+4|0;c[u>>2]=(c[u>>2]|0)+1}u=c[G>>2]|0;g=(c[F>>2]|0)-u>>4;g=g>>>0>1?u+(g+-2<<4)|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)!=9){t=154;break a}g=c[g+8>>2]|0;if(!g){t=154;break a}fo(e,g,c[(c[E>>2]|0)+352>>2]|0,4);m=c[v>>2]|0;g=c[w>>2]|0;if((m|0)<1){k=c[B>>2]|0;i=c[A>>2]|0;j=m;do{g=g<<8;c[w>>2]=g;if(i>>>0<k>>>0){t=c[y>>2]|0;u=i+1|0;c[A>>2]=u;g=d[t+i>>0]|0|g;c[w>>2]=g;i=u}j=j+8|0;c[v>>2]=j}while((j|0)<1);m=m+8+(0-m&-8)|0}i=m+-1|0;c[v>>2]=i;if(!(1<<i&g))c[o>>2]=c[o>>2]&-257;if((m|0)<3){k=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<k>>>0){t=c[y>>2]|0;u=j+1|0;c[A>>2]=u;g=d[t+j>>0]|0|g;c[w>>2]=g;j=u}i=i+8|0;c[v>>2]=i}while((i|0)<2);m=m+7+(2-m&-8)|0}else m=i;i=m+-2|0;c[v>>2]=i;e:do switch(g>>>i&3){case 0:{g=0;break}case 1:{if((i|0)<2){k=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<k>>>0){t=c[y>>2]|0;u=j+1|0;c[A>>2]=u;g=d[t+j>>0]|0|g;c[w>>2]=g;j=u}i=i+8|0;c[v>>2]=i}while((i|0)<2);i=m+6+(3-m&-8)|0}u=i+-2|0;c[v>>2]=u;g=(g>>>u&3)+1|0;break}case 2:{if((i|0)<5){k=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<k>>>0){t=c[y>>2]|0;u=j+1|0;c[A>>2]=u;g=d[t+j>>0]|0|g;c[w>>2]=g;j=u}i=i+8|0;c[v>>2]=i}while((i|0)<5);i=m+6+(6-m&-8)|0}u=i+-5|0;c[v>>2]=u;g=(g>>>u&31)+5|0;break}default:{if((i|0)<7){k=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<k>>>0){t=c[y>>2]|0;u=j+1|0;c[A>>2]=u;g=d[t+j>>0]|0|g;c[w>>2]=g;j=u}i=i+8|0;c[v>>2]=i}while((i|0)<7);m=m+6+(8-m&-8)|0}else m=i;i=m+-7|0;j=g>>>i&127;c[v>>2]=i;if(j|0){g=j+36|0;break e}if((i|0)<20){k=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<k>>>0){t=c[y>>2]|0;u=j+1|0;c[A>>2]=u;g=d[t+j>>0]|0|g;c[w>>2]=g;j=u}i=i+8|0;c[v>>2]=i}while((i|0)<20);i=m+1+(26-m&-8)|0}u=i+-20|0;c[v>>2]=u;g=g>>>u&1048575}}while(0);b[o+46>>1]=g;break}case 2:{j=vo(e,48)|0;g=c[C>>2]|0;c[j>>2]=272679041;g=g+24|0;i=c[g>>2]|0;if(i|0)c[i+12>>2]=j;c[j+12>>2]=0;c[j+8>>2]=i;c[g>>2]=j;g=c[r>>2]|0;c[j+20>>2]=g;if(g|0){u=g+4|0;c[u>>2]=(c[u>>2]|0)+1}u=c[F>>2]|0;c[u>>2]=9;c[u+8>>2]=j;u=j+4|0;c[u>>2]=(c[u>>2]|0)+1;c[F>>2]=(c[F>>2]|0)+16;break}case 15:{j=vo(e,48)|0;g=c[C>>2]|0;c[j>>2]=2013266049;g=g+24|0;i=c[g>>2]|0;if(i|0)c[i+12>>2]=j;c[j+12>>2]=0;c[j+8>>2]=i;c[g>>2]=j;g=c[F>>2]|0;if(g>>>0>=(c[D>>2]|0)>>>0){t=208;break a}c[F>>2]=g+16;c[g>>2]=9;c[g+8>>2]=j;u=j+4|0;c[u>>2]=(c[u>>2]|0)+1;u=c[(c[G>>2]|0)+8>>2]|0;c[j+40>>2]=u;u=u+4|0;c[u>>2]=(c[u>>2]|0)+1;break}default:{if((c[F>>2]|0)>>>0>=(c[D>>2]|0)>>>0){t=211;break a}g=vo(e,40)|0;i=c[C>>2]|0;c[g>>2]=16513;i=i+24|0;j=c[i>>2]|0;if(j|0)c[j+12>>2]=g;c[g+12>>2]=0;c[g+8>>2]=j;c[i>>2]=g;u=c[F>>2]|0;c[u>>2]=9;c[u+8>>2]=g;u=g+4|0;c[u>>2]=(c[u>>2]|0)+1;c[F>>2]=(c[F>>2]|0)+16}}i=c[(c[F>>2]|0)+-8>>2]|0;c[i>>2]=c[i>>2]&134217727|q<<27;g=i+4|0;if(f>>>0<51){c[e+100+(f<<2)>>2]=i;c[g>>2]=(c[g>>2]|0)+1}if((p|0)>-1){g=c[F>>2]|0;if(g>>>0>=(c[D>>2]|0)>>>0){t=219;break}t=g+16|0;c[F>>2]=t;c[g>>2]=0;h[g+8>>3]=+(p|0);u=c[G>>2]|0;g=t-u>>4;g=g>>>0>1?u+(g+-2<<4)|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)!=9){t=222;break}g=c[g+8>>2]|0;if(!g){t=222;break}fo(e,g,c[(c[E>>2]|0)+328>>2]|0,4)}if((q|0)==12)c[i>>2]=c[i>>2]|8388608;f=f+1|0;if(f>>>0>=76){t=6;break}m=c[v>>2]|0}if((t|0)==6){u=e+120|0;f=0;f:while(1){n=c[(c[G>>2]|0)+(f<<4)+8>>2]|0;m=c[v>>2]|0;g=c[w>>2]|0;if((m|0)<2){k=c[B>>2]|0;i=c[A>>2]|0;j=m;do{g=g<<8;c[w>>2]=g;if(i>>>0<k>>>0){s=c[y>>2]|0;t=i+1|0;c[A>>2]=t;g=d[s+i>>0]|0|g;c[w>>2]=g;i=t}j=j+8|0;c[v>>2]=j}while((j|0)<2);m=m+8+(1-m&-8)|0}i=m+-2|0;c[v>>2]=i;g:do switch(g>>>i&3){case 0:{t=269;break}case 1:{if((i|0)<2){k=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<k>>>0){s=c[y>>2]|0;t=j+1|0;c[A>>2]=t;g=d[s+j>>0]|0|g;c[w>>2]=g;j=t}i=i+8|0;c[v>>2]=i}while((i|0)<2);i=m+6+(3-m&-8)|0}t=i+-2|0;c[v>>2]=t;g=(g>>>t&3)+1|0;t=264;break}case 2:{if((i|0)<5){k=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<k>>>0){s=c[y>>2]|0;t=j+1|0;c[A>>2]=t;g=d[s+j>>0]|0|g;c[w>>2]=g;j=t}i=i+8|0;c[v>>2]=i}while((i|0)<5);i=m+6+(6-m&-8)|0}t=i+-5|0;c[v>>2]=t;g=(g>>>t&31)+5|0;t=264;break}default:{if((i|0)<7){k=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<k>>>0){s=c[y>>2]|0;t=j+1|0;c[A>>2]=t;g=d[s+j>>0]|0|g;c[w>>2]=g;j=t}i=i+8|0;c[v>>2]=i}while((i|0)<7);m=m+6+(8-m&-8)|0}else m=i;i=m+-7|0;j=g>>>i&127;c[v>>2]=i;if(j|0){g=j+36|0;t=264;break g}if((i|0)<20){k=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<k>>>0){s=c[y>>2]|0;t=j+1|0;c[A>>2]=t;g=d[s+j>>0]|0|g;c[w>>2]=g;j=t}i=i+8|0;c[v>>2]=i}while((i|0)<20);i=m+1+(26-m&-8)|0}t=i+-20|0;g=g>>>t&1048575;c[v>>2]=t;if(!g)t=269;else t=264}}while(0);if((t|0)==264){t=0;i=c[(c[((g|0)<1?F:G)>>2]|0)+(g+-1<<4)+8>>2]|0;s=n+20|0;g=c[s>>2]|0;c[s>>2]=i;if(i|0){s=i+4|0;c[s>>2]=(c[s>>2]|0)+1}if(g|0?(r=g+4|0,s=(c[r>>2]|0)+-1|0,c[r>>2]=s,(s|0)==0):0)tp(c[C>>2]|0,g)}else if((t|0)==269?(t=0,c[n>>2]&4096|0):0){i=c[u>>2]|0;s=n+20|0;g=c[s>>2]|0;c[s>>2]=i;if(i|0){s=i+4|0;c[s>>2]=(c[s>>2]|0)+1}if(g|0?(r=g+4|0,s=(c[r>>2]|0)+-1|0,c[r>>2]=s,(s|0)==0):0)tp(c[C>>2]|0,g)}m=c[v>>2]|0;g=c[w>>2]|0;if((m|0)<2){k=c[B>>2]|0;i=c[A>>2]|0;j=m;do{g=g<<8;c[w>>2]=g;if(i>>>0<k>>>0){r=c[y>>2]|0;s=i+1|0;c[A>>2]=s;g=d[r+i>>0]|0|g;c[w>>2]=g;i=s}j=j+8|0;c[v>>2]=j}while((j|0)<2);m=m+8+(1-m&-8)|0}i=m+-2|0;c[v>>2]=i;h:do switch(g>>>i&3){case 0:break;case 1:{if((i|0)<2){k=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<k>>>0){s=c[y>>2]|0;t=j+1|0;c[A>>2]=t;g=d[s+j>>0]|0|g;c[w>>2]=g;j=t}i=i+8|0;c[v>>2]=i}while((i|0)<2);i=m+6+(3-m&-8)|0}t=i+-2|0;c[v>>2]=t;g=(g>>>t&3)+1|0;t=311;break}case 2:{if((i|0)<5){k=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<k>>>0){s=c[y>>2]|0;t=j+1|0;c[A>>2]=t;g=d[s+j>>0]|0|g;c[w>>2]=g;j=t}i=i+8|0;c[v>>2]=i}while((i|0)<5);i=m+6+(6-m&-8)|0}t=i+-5|0;c[v>>2]=t;g=(g>>>t&31)+5|0;t=311;break}default:{if((i|0)<7){k=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<k>>>0){r=c[y>>2]|0;s=j+1|0;c[A>>2]=s;g=d[r+j>>0]|0|g;c[w>>2]=g;j=s}i=i+8|0;c[v>>2]=i}while((i|0)<7);i=m+6+(8-m&-8)|0}k=i+-7|0;j=g>>>k&127;c[v>>2]=k;if(j|0){g=j+36|0;t=311;break h}if((k|0)<20){m=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<m>>>0){r=c[y>>2]|0;s=j+1|0;c[A>>2]=s;g=d[r+j>>0]|0|g;c[w>>2]=g;j=s}k=k+8|0;c[v>>2]=k}while((k|0)<20);i=i+1+(26-i&-8)|0}else i=k;i=i+-20|0;g=g>>>i&1048575;c[v>>2]=i;if(g)t=311}}while(0);if((t|0)==311){t=0;i=c[F>>2]|0;if(i>>>0>=(c[D>>2]|0)>>>0){t=312;break}j=c[G>>2]|0;g=g+-1|0;if(g>>>0>=i-j>>4>>>0){t=314;break}s=j+(g<<4)|0;c[F>>2]=i+16;c[i>>2]=c[s>>2];c[i+4>>2]=c[s+4>>2];c[i+8>>2]=c[s+8>>2];c[i+12>>2]=c[s+12>>2];if(c[i>>2]&8|0){s=(c[i+8>>2]|0)+4|0;c[s>>2]=(c[s>>2]|0)+1}g=c[G>>2]|0;g=f>>>0<(c[F>>2]|0)-g>>4>>>0?g+(f<<4)|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)!=9){t=319;break}g=c[g+8>>2]|0;if(!g){t=319;break}fo(e,g,c[(c[E>>2]|0)+200>>2]|0,0);i=c[v>>2]|0}g=c[w>>2]|0;if((i|0)<2){m=c[B>>2]|0;j=c[A>>2]|0;k=i;do{g=g<<8;c[w>>2]=g;if(j>>>0<m>>>0){r=c[y>>2]|0;s=j+1|0;c[A>>2]=s;g=d[r+j>>0]|0|g;c[w>>2]=g;j=s}k=k+8|0;c[v>>2]=k}while((k|0)<2);i=i+8+(1-i&-8)|0}k=i+-2|0;c[v>>2]=k;i:do switch(g>>>k&3){case 0:{i=k;break}case 1:{if((k|0)<2){m=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<m>>>0){s=c[y>>2]|0;t=j+1|0;c[A>>2]=t;g=d[s+j>>0]|0|g;c[w>>2]=g;j=t}k=k+8|0;c[v>>2]=k}while((k|0)<2);i=i+6+(3-i&-8)|0}else i=k;t=i+-2|0;c[v>>2]=t;g=(g>>>t&3)+1|0;t=357;break}case 2:{if((k|0)<5){m=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<m>>>0){s=c[y>>2]|0;t=j+1|0;c[A>>2]=t;g=d[s+j>>0]|0|g;c[w>>2]=g;j=t}k=k+8|0;c[v>>2]=k}while((k|0)<5);i=i+6+(6-i&-8)|0}else i=k;t=i+-5|0;c[v>>2]=t;g=(g>>>t&31)+5|0;t=357;break}default:{if((k|0)<7){m=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<m>>>0){r=c[y>>2]|0;s=j+1|0;c[A>>2]=s;g=d[r+j>>0]|0|g;c[w>>2]=g;j=s}k=k+8|0;c[v>>2]=k}while((k|0)<7);k=i+6+(8-i&-8)|0}i=k+-7|0;j=g>>>i&127;c[v>>2]=i;if(j|0){g=j+36|0;t=357;break i}if((i|0)<20){m=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<m>>>0){r=c[y>>2]|0;s=j+1|0;c[A>>2]=s;g=d[r+j>>0]|0|g;c[w>>2]=g;j=s}i=i+8|0;c[v>>2]=i}while((i|0)<20);i=k+1+(26-k&-8)|0}i=i+-20|0;g=g>>>i&1048575;c[v>>2]=i;if(g)t=357}}while(0);if((t|0)==357){t=0;i=c[F>>2]|0;if(i>>>0>=(c[D>>2]|0)>>>0){t=358;break}j=c[G>>2]|0;g=g+-1|0;if(g>>>0>=i-j>>4>>>0){t=360;break}s=j+(g<<4)|0;c[F>>2]=i+16;c[i>>2]=c[s>>2];c[i+4>>2]=c[s+4>>2];c[i+8>>2]=c[s+8>>2];c[i+12>>2]=c[s+12>>2];if(c[i>>2]&8|0){s=(c[i+8>>2]|0)+4|0;c[s>>2]=(c[s>>2]|0)+1}g=c[G>>2]|0;g=f>>>0<(c[F>>2]|0)-g>>4>>>0?g+(f<<4)|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)!=9){t=365;break}g=c[g+8>>2]|0;if(!g){t=365;break}fo(e,g,c[(c[E>>2]|0)+204>>2]|0,5);i=c[v>>2]|0}g=c[w>>2]|0;if((i|0)<2){m=c[B>>2]|0;j=c[A>>2]|0;k=i;do{g=g<<8;c[w>>2]=g;if(j>>>0<m>>>0){r=c[y>>2]|0;s=j+1|0;c[A>>2]=s;g=d[r+j>>0]|0|g;c[w>>2]=g;j=s}k=k+8|0;c[v>>2]=k}while((k|0)<2);m=i+8+(1-i&-8)|0}else m=i;i=m+-2|0;c[v>>2]=i;j:do switch(g>>>i&3){case 0:{if((i|0)<2)t=713;break}case 1:{if((i|0)<2){k=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<k>>>0){s=c[y>>2]|0;t=j+1|0;c[A>>2]=t;g=d[s+j>>0]|0|g;c[w>>2]=g;j=t}i=i+8|0;c[v>>2]=i}while((i|0)<2);i=m+6+(3-m&-8)|0}i=i+-2|0;c[v>>2]=i;g=(g>>>i&3)+1|0;t=403;break}case 2:{if((i|0)<5){k=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<k>>>0){s=c[y>>2]|0;t=j+1|0;c[A>>2]=t;g=d[s+j>>0]|0|g;c[w>>2]=g;j=t}i=i+8|0;c[v>>2]=i}while((i|0)<5);i=m+6+(6-m&-8)|0}i=i+-5|0;c[v>>2]=i;g=(g>>>i&31)+5|0;t=403;break}default:{if((i|0)<7){k=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<k>>>0){s=c[y>>2]|0;t=j+1|0;c[A>>2]=t;g=d[s+j>>0]|0|g;c[w>>2]=g;j=t}i=i+8|0;c[v>>2]=i}while((i|0)<7);m=m+6+(8-m&-8)|0}else m=i;i=m+-7|0;j=g>>>i&127;c[v>>2]=i;if(j|0){g=j+36|0;t=403;break j}if((i|0)<20){k=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<k>>>0){s=c[y>>2]|0;t=j+1|0;c[A>>2]=t;g=d[s+j>>0]|0|g;c[w>>2]=g;j=t}i=i+8|0;c[v>>2]=i}while((i|0)<20);i=m+1+(26-m&-8)|0}i=i+-20|0;g=g>>>i&1048575;c[v>>2]=i;j=(i|0)<2;if(!g)t=712;else{s=g;t=405}}}while(0);if((t|0)==403){s=g;j=(i|0)<2;t=405}k:do if((t|0)==405){r=0;while(1){g=c[w>>2]|0;if(j){m=c[B>>2]|0;j=c[A>>2]|0;k=i;do{g=g<<8;c[w>>2]=g;if(j>>>0<m>>>0){q=c[y>>2]|0;t=j+1|0;c[A>>2]=t;g=d[q+j>>0]|0|g;c[w>>2]=g;j=t}k=k+8|0;c[v>>2]=k}while((k|0)<2);i=i+8+(1-i&-8)|0}k=i+-2|0;c[v>>2]=k;l:do switch(g>>>k&3){case 0:{t=442;break}case 1:{if((k|0)<2){m=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<m>>>0){q=c[y>>2]|0;t=j+1|0;c[A>>2]=t;g=d[q+j>>0]|0|g;c[w>>2]=g;j=t}k=k+8|0;c[v>>2]=k}while((k|0)<2);i=i+6+(3-i&-8)|0}else i=k;t=i+-2|0;c[v>>2]=t;g=(g>>>t&3)+1|0;t=447;break}case 2:{if((k|0)<5){m=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<m>>>0){q=c[y>>2]|0;t=j+1|0;c[A>>2]=t;g=d[q+j>>0]|0|g;c[w>>2]=g;j=t}k=k+8|0;c[v>>2]=k}while((k|0)<5);i=i+6+(6-i&-8)|0}else i=k;t=i+-5|0;c[v>>2]=t;g=(g>>>t&31)+5|0;t=447;break}default:{if((k|0)<7){m=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<m>>>0){q=c[y>>2]|0;t=j+1|0;c[A>>2]=t;g=d[q+j>>0]|0|g;c[w>>2]=g;j=t}k=k+8|0;c[v>>2]=k}while((k|0)<7);k=i+6+(8-i&-8)|0}i=k+-7|0;j=g>>>i&127;c[v>>2]=i;if(j|0){g=j+36|0;t=447;break l}if((i|0)<20){m=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<m>>>0){q=c[y>>2]|0;t=j+1|0;c[A>>2]=t;g=d[q+j>>0]|0|g;c[w>>2]=g;j=t}i=i+8|0;c[v>>2]=i}while((i|0)<20);i=k+1+(26-k&-8)|0}t=i+-20|0;g=g>>>t&1048575;c[v>>2]=t;if(!g)t=442;else t=447}}while(0);if((t|0)==442){g=xr(y,x)|0;if((c[F>>2]|0)>>>0>=(c[D>>2]|0)>>>0){t=443;break f}if((g|0)<0){t=445;break f}t=Oo(e,x,g)|0;q=c[F>>2]|0;c[F>>2]=q+16;c[q>>2]=8;c[q+8>>2]=t;t=t+4|0;c[t>>2]=(c[t>>2]|0)+1}else if((t|0)==447){g=c[(c[E>>2]|0)+(g+-1<<2)>>2]|0;i=c[F>>2]|0;if(i>>>0>=(c[D>>2]|0)>>>0){t=448;break f}c[F>>2]=i+16;c[i>>2]=8;c[i+8>>2]=g;t=g+4|0;c[t>>2]=(c[t>>2]|0)+1}m=c[v>>2]|0;g=c[w>>2]|0;if((m|0)<1){k=c[B>>2]|0;i=c[A>>2]|0;j=m;do{g=g<<8;c[w>>2]=g;if(i>>>0<k>>>0){q=c[y>>2]|0;t=i+1|0;c[A>>2]=t;g=d[q+i>>0]|0|g;c[w>>2]=g;i=t}j=j+8|0;c[v>>2]=j}while((j|0)<1);m=m+8+(0-m&-8)|0}j=m+-1|0;c[v>>2]=j;if(!(1<<j&g)){q=5;i=g}else{if((m|0)<4){k=c[B>>2]|0;i=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(i>>>0<k>>>0){q=c[y>>2]|0;t=i+1|0;c[A>>2]=t;g=d[q+i>>0]|0|g;c[w>>2]=g;i=t}j=j+8|0;c[v>>2]=j}while((j|0)<3);i=m+7+(3-m&-8)|0}else i=j;j=i+-3|0;c[v>>2]=j;q=g>>>j&7;i=g}g=q|632;if((j|0)<3){n=c[B>>2]|0;k=c[A>>2]|0;m=j;do{i=i<<8;c[w>>2]=i;if(k>>>0<n>>>0){p=c[y>>2]|0;t=k+1|0;c[A>>2]=t;i=d[p+k>>0]|0|i;c[w>>2]=i;k=t}m=m+8|0;c[v>>2]=m}while((m|0)<3);n=j+8+(2-j&-8)|0}else n=j;j=n+-3|0;c[v>>2]=j;switch(i>>>j&7){case 0:{o=0;do{if((j|0)<8){n=c[B>>2]|0;k=c[A>>2]|0;m=j;do{i=i<<8;c[w>>2]=i;if(k>>>0<n>>>0){q=c[y>>2]|0;t=k+1|0;c[A>>2]=t;i=d[q+k>>0]|0|i;c[w>>2]=i;k=t}t=m;m=m+8|0;c[v>>2]=m}while((t|0)<0);j=j+8+(7-j&-8)|0}j=j+-8|0;c[v>>2]=j;a[x+o>>0]=i>>>j;o=o+1|0}while((o|0)!=8);i=c[F>>2]|0;if(i>>>0>=(c[D>>2]|0)>>>0){t=480;break f}I=+h[x>>3];c[F>>2]=i+16;c[i>>2]=0;h[i+8>>3]=I;break}case 1:{i=xr(y,x)|0;if((c[F>>2]|0)>>>0>=(c[D>>2]|0)>>>0){t=483;break f}if((i|0)<0){t=485;break f}t=Oo(e,x,i)|0;q=c[F>>2]|0;c[F>>2]=q+16;c[q>>2]=8;c[q+8>>2]=t;t=t+4|0;c[t>>2]=(c[t>>2]|0)+1;break}case 2:{if((j|0)<2){m=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<m>>>0){q=c[y>>2]|0;t=k+1|0;c[A>>2]=t;i=d[q+k>>0]|0|i;c[w>>2]=i;k=t}j=j+8|0;c[v>>2]=j}while((j|0)<2);n=n+5+(4-n&-8)|0}else n=j;j=n+-2|0;c[v>>2]=j;m:do switch(i>>>j&3){case 0:{i=0;break}case 1:{if((j|0)<2){m=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<m>>>0){q=c[y>>2]|0;t=k+1|0;c[A>>2]=t;i=d[q+k>>0]|0|i;c[w>>2]=i;k=t}j=j+8|0;c[v>>2]=j}while((j|0)<2);j=n+6+(3-n&-8)|0}t=j+-2|0;c[v>>2]=t;i=(i>>>t&3)+1|0;break}case 2:{if((j|0)<5){m=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<m>>>0){q=c[y>>2]|0;t=k+1|0;c[A>>2]=t;i=d[q+k>>0]|0|i;c[w>>2]=i;k=t}j=j+8|0;c[v>>2]=j}while((j|0)<5);j=n+6+(6-n&-8)|0}t=j+-5|0;c[v>>2]=t;i=(i>>>t&31)+5|0;break}default:{if((j|0)<7){m=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<m>>>0){q=c[y>>2]|0;t=k+1|0;c[A>>2]=t;i=d[q+k>>0]|0|i;c[w>>2]=i;k=t}j=j+8|0;c[v>>2]=j}while((j|0)<7);n=n+6+(8-n&-8)|0}else n=j;j=n+-7|0;k=i>>>j&127;c[v>>2]=j;if(k|0){i=k+36|0;break m}if((j|0)<20){m=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<m>>>0){q=c[y>>2]|0;t=k+1|0;c[A>>2]=t;i=d[q+k>>0]|0|i;c[w>>2]=i;k=t}j=j+8|0;c[v>>2]=j}while((j|0)<20);j=n+1+(26-n&-8)|0}t=j+-20|0;c[v>>2]=t;i=i>>>t&1048575}}while(0);i=c[(c[E>>2]|0)+(i<<2)>>2]|0;j=c[F>>2]|0;if(j>>>0>=(c[D>>2]|0)>>>0){t=524;break f}c[F>>2]=j+16;c[j>>2]=8;c[j+8>>2]=i;t=i+4|0;c[t>>2]=(c[t>>2]|0)+1;break}case 3:{if((j|0)<2){m=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<m>>>0){q=c[y>>2]|0;t=k+1|0;c[A>>2]=t;i=d[q+k>>0]|0|i;c[w>>2]=i;k=t}j=j+8|0;c[v>>2]=j}while((j|0)<2);n=n+5+(4-n&-8)|0}else n=j;j=n+-2|0;c[v>>2]=j;n:do switch(i>>>j&3){case 0:{k=0;break}case 1:{if((j|0)<2){m=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<m>>>0){q=c[y>>2]|0;t=k+1|0;c[A>>2]=t;i=d[q+k>>0]|0|i;c[w>>2]=i;k=t}j=j+8|0;c[v>>2]=j}while((j|0)<2);j=n+6+(3-n&-8)|0}k=j+-2|0;c[v>>2]=k;k=(i>>>k&3)+1|0;break}case 2:{if((j|0)<5){m=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<m>>>0){q=c[y>>2]|0;t=k+1|0;c[A>>2]=t;i=d[q+k>>0]|0|i;c[w>>2]=i;k=t}j=j+8|0;c[v>>2]=j}while((j|0)<5);j=n+6+(6-n&-8)|0}k=j+-5|0;c[v>>2]=k;k=(i>>>k&31)+5|0;break}default:{if((j|0)<7){m=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<m>>>0){q=c[y>>2]|0;t=k+1|0;c[A>>2]=t;i=d[q+k>>0]|0|i;c[w>>2]=i;k=t}j=j+8|0;c[v>>2]=j}while((j|0)<7);n=n+6+(8-n&-8)|0}else n=j;j=n+-7|0;k=i>>>j&127;c[v>>2]=j;if(k|0){k=k+36|0;break n}if((j|0)<20){m=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<m>>>0){q=c[y>>2]|0;t=k+1|0;c[A>>2]=t;i=d[q+k>>0]|0|i;c[w>>2]=i;k=t}j=j+8|0;c[v>>2]=j}while((j|0)<20);j=n+1+(26-n&-8)|0}k=j+-20|0;c[v>>2]=k;k=i>>>k&1048575}}while(0);i=c[F>>2]|0;if(i>>>0>=(c[D>>2]|0)>>>0){t=563;break f}j=c[G>>2]|0;if(k>>>0>=i-j>>4>>>0){t=565;break f}t=j+(k<<4)|0;c[F>>2]=i+16;c[i>>2]=c[t>>2];c[i+4>>2]=c[t+4>>2];c[i+8>>2]=c[t+8>>2];c[i+12>>2]=c[t+12>>2];if(c[i>>2]&8){t=(c[i+8>>2]|0)+4|0;c[t>>2]=(c[t>>2]|0)+1}break}case 4:{i=c[F>>2]|0;if(i>>>0>=(c[D>>2]|0)>>>0){t=569;break f}c[F>>2]=i+16;break}case 5:{i=c[F>>2]|0;if(i>>>0>=(c[D>>2]|0)>>>0){t=572;break f}c[F>>2]=i+16;c[i>>2]=4;c[i+8>>2]=1;break}case 6:{i=c[F>>2]|0;if(i>>>0>=(c[D>>2]|0)>>>0){t=575;break f}c[F>>2]=i+16;c[i>>2]=4;c[i+8>>2]=0;break}case 7:{if((j|0)<2){m=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<m>>>0){p=c[y>>2]|0;t=k+1|0;c[A>>2]=t;i=d[p+k>>0]|0|i;c[w>>2]=i;k=t}j=j+8|0;c[v>>2]=j}while((j|0)<2);j=n+5+(4-n&-8)|0}m=j+-2|0;c[v>>2]=m;o:do switch(i>>>m&3){case 0:{p=0;j=m;break}case 1:{if((m|0)<2){n=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<n>>>0){p=c[y>>2]|0;t=k+1|0;c[A>>2]=t;i=d[p+k>>0]|0|i;c[w>>2]=i;k=t}m=m+8|0;c[v>>2]=m}while((m|0)<2);j=j+6+(3-j&-8)|0}else j=m;j=j+-2|0;c[v>>2]=j;p=(i>>>j&3)+1|0;break}case 2:{if((m|0)<5){n=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<n>>>0){p=c[y>>2]|0;t=k+1|0;c[A>>2]=t;i=d[p+k>>0]|0|i;c[w>>2]=i;k=t}m=m+8|0;c[v>>2]=m}while((m|0)<5);j=j+6+(6-j&-8)|0}else j=m;j=j+-5|0;c[v>>2]=j;p=(i>>>j&31)+5|0;break}default:{if((m|0)<7){n=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<n>>>0){p=c[y>>2]|0;t=k+1|0;c[A>>2]=t;i=d[p+k>>0]|0|i;c[w>>2]=i;k=t}m=m+8|0;c[v>>2]=m}while((m|0)<7);m=j+6+(8-j&-8)|0}j=m+-7|0;k=i>>>j&127;c[v>>2]=j;if(k|0){p=k+36|0;break o}if((j|0)<20){n=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<n>>>0){p=c[y>>2]|0;t=k+1|0;c[A>>2]=t;i=d[p+k>>0]|0|i;c[w>>2]=i;k=t}j=j+8|0;c[v>>2]=j}while((j|0)<20);j=m+1+(26-m&-8)|0}j=j+-20|0;c[v>>2]=j;p=i>>>j&1048575}}while(0);if((j|0)<2){n=c[B>>2]|0;k=c[A>>2]|0;m=j;do{i=i<<8;c[w>>2]=i;if(k>>>0<n>>>0){o=c[y>>2]|0;t=k+1|0;c[A>>2]=t;i=d[o+k>>0]|0|i;c[w>>2]=i;k=t}m=m+8|0;c[v>>2]=m}while((m|0)<2);j=j+8+(1-j&-8)|0}m=j+-2|0;c[v>>2]=m;p:do switch(i>>>m&3){case 0:{o=0;j=m;break}case 1:{if((m|0)<2){n=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<n>>>0){o=c[y>>2]|0;t=k+1|0;c[A>>2]=t;i=d[o+k>>0]|0|i;c[w>>2]=i;k=t}m=m+8|0;c[v>>2]=m}while((m|0)<2);j=j+6+(3-j&-8)|0}else j=m;j=j+-2|0;c[v>>2]=j;o=(i>>>j&3)+1|0;break}case 2:{if((m|0)<5){n=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<n>>>0){o=c[y>>2]|0;t=k+1|0;c[A>>2]=t;i=d[o+k>>0]|0|i;c[w>>2]=i;k=t}m=m+8|0;c[v>>2]=m}while((m|0)<5);j=j+6+(6-j&-8)|0}else j=m;j=j+-5|0;c[v>>2]=j;o=(i>>>j&31)+5|0;break}default:{if((m|0)<7){n=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<n>>>0){o=c[y>>2]|0;t=k+1|0;c[A>>2]=t;i=d[o+k>>0]|0|i;c[w>>2]=i;k=t}m=m+8|0;c[v>>2]=m}while((m|0)<7);m=j+6+(8-j&-8)|0}j=m+-7|0;k=i>>>j&127;c[v>>2]=j;if(k|0){o=k+36|0;break p}if((j|0)<20){n=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<n>>>0){o=c[y>>2]|0;t=k+1|0;c[A>>2]=t;i=d[o+k>>0]|0|i;c[w>>2]=i;k=t}j=j+8|0;c[v>>2]=j}while((j|0)<20);j=m+1+(26-m&-8)|0}j=j+-20|0;c[v>>2]=j;o=i>>>j&1048575}}while(0);if((j|0)<2){n=c[B>>2]|0;k=c[A>>2]|0;m=j;do{i=i<<8;c[w>>2]=i;if(k>>>0<n>>>0){J=c[y>>2]|0;t=k+1|0;c[A>>2]=t;i=d[J+k>>0]|0|i;c[w>>2]=i;k=t}m=m+8|0;c[v>>2]=m}while((m|0)<2);j=j+8+(1-j&-8)|0}m=j+-2|0;c[v>>2]=m;q:do switch(i>>>m&3){case 0:{n=0;break}case 1:{if((m|0)<2){n=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<n>>>0){t=c[y>>2]|0;J=k+1|0;c[A>>2]=J;i=d[t+k>>0]|0|i;c[w>>2]=i;k=J}m=m+8|0;c[v>>2]=m}while((m|0)<2);j=j+6+(3-j&-8)|0}else j=m;n=j+-2|0;c[v>>2]=n;n=(i>>>n&3)+1|0;break}case 2:{if((m|0)<5){n=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<n>>>0){t=c[y>>2]|0;J=k+1|0;c[A>>2]=J;i=d[t+k>>0]|0|i;c[w>>2]=i;k=J}m=m+8|0;c[v>>2]=m}while((m|0)<5);j=j+6+(6-j&-8)|0}else j=m;n=j+-5|0;c[v>>2]=n;n=(i>>>n&31)+5|0;break}default:{if((m|0)<7){n=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<n>>>0){t=c[y>>2]|0;J=k+1|0;c[A>>2]=J;i=d[t+k>>0]|0|i;c[w>>2]=i;k=J}m=m+8|0;c[v>>2]=m}while((m|0)<7);m=j+6+(8-j&-8)|0}j=m+-7|0;k=i>>>j&127;c[v>>2]=j;if(k|0){n=k+36|0;break q}if((j|0)<20){n=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<n>>>0){t=c[y>>2]|0;J=k+1|0;c[A>>2]=J;i=d[t+k>>0]|0|i;c[w>>2]=i;k=J}j=j+8|0;c[v>>2]=j}while((j|0)<20);j=m+1+(26-m&-8)|0}n=j+-20|0;c[v>>2]=n;n=i>>>n&1048575}}while(0);if(p){g=c[4220+(p<<2)>>2]|0;if((c[F>>2]|0)>>>0>=(c[D>>2]|0)>>>0){t=687;break f}k=vo(e,48)|0;i=c[C>>2]|0;c[k>>2]=403133057;i=i+24|0;j=c[i>>2]|0;if(j|0)c[j+12>>2]=k;c[k+12>>2]=0;c[k+8>>2]=j;c[i>>2]=k;c[k+40>>2]=g;b[k+44>>1]=0;g=c[F>>2]|0;c[g>>2]=9;c[g+8>>2]=k;g=k+4|0;c[g>>2]=(c[g>>2]|0)+1;g=(c[F>>2]|0)+16|0;c[F>>2]=g;i=c[u>>2]|0;c[k+20>>2]=i;if(i|0){J=i+4|0;c[J>>2]=(c[J>>2]|0)+1}J=c[G>>2]|0;g=g-J>>4;g=g|0?J+(g+-1<<4)|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)!=9){t=695;break f}g=c[g+8>>2]|0;if(!g){t=695;break f}if(!(c[g>>2]&4096)){t=695;break f}b[g+46>>1]=n;g=q|760}if(o){i=c[4220+(o<<2)>>2]|0;if((c[F>>2]|0)>>>0>=(c[D>>2]|0)>>>0){t=699;break f}m=vo(e,48)|0;j=c[C>>2]|0;c[m>>2]=403133057;j=j+24|0;k=c[j>>2]|0;if(k|0)c[k+12>>2]=m;c[m+12>>2]=0;c[m+8>>2]=k;c[j>>2]=m;c[m+40>>2]=i;b[m+44>>1]=1;i=c[F>>2]|0;c[i>>2]=9;c[i+8>>2]=m;i=m+4|0;c[i>>2]=(c[i>>2]|0)+1;i=(c[F>>2]|0)+16|0;c[F>>2]=i;j=c[u>>2]|0;c[m+20>>2]=j;if(j|0){J=j+4|0;c[J>>2]=(c[J>>2]|0)+1}J=c[G>>2]|0;i=i-J>>4;i=i|0?J+(i+-1<<4)|0:0;i=(i|0)==0?936:i;if((c[i>>2]|0)!=9){t=707;break f}i=c[i+8>>2]|0;if(!i){t=707;break f}if(!(c[i>>2]&4096)){t=707;break f}b[i+46>>1]=n;g=g|256}g=g&-121|48;break}default:{t=710;break f}}Fo(e,f,g);r=r+1|0;i=c[v>>2]|0;j=(i|0)<2;if(r>>>0>=s>>>0){t=712;break k}}}while(0);if((t|0)==712){t=0;g=c[w>>2]|0;if(j)t=713}if((t|0)==713){t=0;m=c[B>>2]|0;j=c[A>>2]|0;k=i;do{g=g<<8;c[w>>2]=g;if(j>>>0<m>>>0){s=c[y>>2]|0;J=j+1|0;c[A>>2]=J;g=d[s+j>>0]|0|g;c[w>>2]=g;j=J}k=k+8|0;c[v>>2]=k}while((k|0)<2);i=i+8+(1-i&-8)|0}k=i+-2|0;c[v>>2]=k;r:do switch(g>>>k&3){case 0:break;case 1:{if((k|0)<2){m=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<m>>>0){t=c[y>>2]|0;J=j+1|0;c[A>>2]=J;g=d[t+j>>0]|0|g;c[w>>2]=g;j=J}k=k+8|0;c[v>>2]=k}while((k|0)<2);i=i+6+(3-i&-8)|0}else i=k;i=i+-2|0;c[v>>2]=i;s=(g>>>i&3)+1|0;t=748;break}case 2:{if((k|0)<5){m=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<m>>>0){t=c[y>>2]|0;J=j+1|0;c[A>>2]=J;g=d[t+j>>0]|0|g;c[w>>2]=g;j=J}k=k+8|0;c[v>>2]=k}while((k|0)<5);i=i+6+(6-i&-8)|0}else i=k;i=i+-5|0;c[v>>2]=i;s=(g>>>i&31)+5|0;t=748;break}default:{if((k|0)<7){m=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<m>>>0){s=c[y>>2]|0;J=j+1|0;c[A>>2]=J;g=d[s+j>>0]|0|g;c[w>>2]=g;j=J}k=k+8|0;c[v>>2]=k}while((k|0)<7);k=i+6+(8-i&-8)|0}i=k+-7|0;j=g>>>i&127;c[v>>2]=i;if(j|0){s=j+36|0;t=748;break r}if((i|0)<20){m=c[B>>2]|0;j=c[A>>2]|0;do{g=g<<8;c[w>>2]=g;if(j>>>0<m>>>0){s=c[y>>2]|0;J=j+1|0;c[A>>2]=J;g=d[s+j>>0]|0|g;c[w>>2]=g;j=J}i=i+8|0;c[v>>2]=i}while((i|0)<20);i=k+1+(26-k&-8)|0}i=i+-20|0;g=g>>>i&1048575;c[v>>2]=i;if(g|0){s=g;t=748}}}while(0);s:do if((t|0)==748){g=0;n=i;while(1){i=c[w>>2]|0;if((n|0)<2){m=c[B>>2]|0;j=c[A>>2]|0;k=n;do{i=i<<8;c[w>>2]=i;if(j>>>0<m>>>0){t=c[y>>2]|0;J=j+1|0;c[A>>2]=J;i=d[t+j>>0]|0|i;c[w>>2]=i;j=J}k=k+8|0;c[v>>2]=k}while((k|0)<2);n=n+8+(1-n&-8)|0}j=n+-2|0;c[v>>2]=j;t:do switch(i>>>j&3){case 0:{t=785;break}case 1:{if((j|0)<2){m=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<m>>>0){t=c[y>>2]|0;J=k+1|0;c[A>>2]=J;i=d[t+k>>0]|0|i;c[w>>2]=i;k=J}j=j+8|0;c[v>>2]=j}while((j|0)<2);j=n+6+(3-n&-8)|0}t=j+-2|0;c[v>>2]=t;i=(i>>>t&3)+1|0;t=790;break}case 2:{if((j|0)<5){m=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<m>>>0){t=c[y>>2]|0;J=k+1|0;c[A>>2]=J;i=d[t+k>>0]|0|i;c[w>>2]=i;k=J}j=j+8|0;c[v>>2]=j}while((j|0)<5);j=n+6+(6-n&-8)|0}t=j+-5|0;c[v>>2]=t;i=(i>>>t&31)+5|0;t=790;break}default:{if((j|0)<7){m=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<m>>>0){t=c[y>>2]|0;J=k+1|0;c[A>>2]=J;i=d[t+k>>0]|0|i;c[w>>2]=i;k=J}j=j+8|0;c[v>>2]=j}while((j|0)<7);n=n+6+(8-n&-8)|0}else n=j;j=n+-7|0;k=i>>>j&127;c[v>>2]=j;if(k|0){i=k+36|0;t=790;break t}if((j|0)<20){m=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<m>>>0){t=c[y>>2]|0;J=k+1|0;c[A>>2]=J;i=d[t+k>>0]|0|i;c[w>>2]=i;k=J}j=j+8|0;c[v>>2]=j}while((j|0)<20);j=n+1+(26-n&-8)|0}J=j+-20|0;i=i>>>J&1048575;c[v>>2]=J;if(!i)t=785;else t=790}}while(0);if((t|0)==785){t=0;i=xr(y,x)|0;if((c[F>>2]|0)>>>0>=(c[D>>2]|0)>>>0){t=786;break f}if((i|0)<0){t=788;break f}J=Oo(e,x,i)|0;r=c[F>>2]|0;c[F>>2]=r+16;c[r>>2]=8;c[r+8>>2]=J;J=J+4|0;c[J>>2]=(c[J>>2]|0)+1}else if((t|0)==790){t=0;i=c[(c[E>>2]|0)+(i+-1<<2)>>2]|0;j=c[F>>2]|0;if(j>>>0>=(c[D>>2]|0)>>>0){t=791;break f}c[F>>2]=j+16;c[j>>2]=8;c[j+8>>2]=i;J=i+4|0;c[J>>2]=(c[J>>2]|0)+1}n=c[v>>2]|0;i=c[w>>2]|0;if((n|0)<2){m=c[B>>2]|0;j=c[A>>2]|0;k=n;do{i=i<<8;c[w>>2]=i;if(j>>>0<m>>>0){r=c[y>>2]|0;J=j+1|0;c[A>>2]=J;i=d[r+j>>0]|0|i;c[w>>2]=i;j=J}k=k+8|0;c[v>>2]=k}while((k|0)<2);n=n+8+(1-n&-8)|0}j=n+-2|0;c[v>>2]=j;u:do switch(i>>>j&3){case 0:{r=0;break}case 1:{if((j|0)<2){m=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<m>>>0){r=c[y>>2]|0;J=k+1|0;c[A>>2]=J;i=d[r+k>>0]|0|i;c[w>>2]=i;k=J}j=j+8|0;c[v>>2]=j}while((j|0)<2);j=n+6+(3-n&-8)|0}j=j+-2|0;c[v>>2]=j;r=(i>>>j&3)+1|0;break}case 2:{if((j|0)<5){m=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<m>>>0){r=c[y>>2]|0;J=k+1|0;c[A>>2]=J;i=d[r+k>>0]|0|i;c[w>>2]=i;k=J}j=j+8|0;c[v>>2]=j}while((j|0)<5);j=n+6+(6-n&-8)|0}j=j+-5|0;c[v>>2]=j;r=(i>>>j&31)+5|0;break}default:{if((j|0)<7){m=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<m>>>0){r=c[y>>2]|0;J=k+1|0;c[A>>2]=J;i=d[r+k>>0]|0|i;c[w>>2]=i;k=J}j=j+8|0;c[v>>2]=j}while((j|0)<7);j=n+6+(8-n&-8)|0}m=j+-7|0;k=i>>>m&127;c[v>>2]=m;if(k|0){r=k+36|0;j=m;break u}if((m|0)<20){n=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<n>>>0){r=c[y>>2]|0;J=k+1|0;c[A>>2]=J;i=d[r+k>>0]|0|i;c[w>>2]=i;k=J}m=m+8|0;c[v>>2]=m}while((m|0)<20);j=j+1+(26-j&-8)|0}else j=m;j=j+-20|0;c[v>>2]=j;r=i>>>j&1048575}}while(0);if((j|0)<3){n=c[B>>2]|0;k=c[A>>2]|0;m=j;do{i=i<<8;c[w>>2]=i;if(k>>>0<n>>>0){q=c[y>>2]|0;J=k+1|0;c[A>>2]=J;i=d[q+k>>0]|0|i;c[w>>2]=i;k=J}m=m+8|0;c[v>>2]=m}while((m|0)<3);j=j+8+(2-j&-8)|0}k=j+-3|0;q=i>>>k&7;c[v>>2]=k;if((k|0)<1){n=c[B>>2]|0;m=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(m>>>0<n>>>0){p=c[y>>2]|0;J=m+1|0;c[A>>2]=J;i=d[p+m>>0]|0|i;c[w>>2]=i;m=J}k=k+8|0;c[v>>2]=k}while((k|0)<1);k=j+5+(3-j&-8)|0}j=k+-1|0;c[v>>2]=j;if(!(1<<j&i))k=q;else{if((k|0)<4){n=c[B>>2]|0;m=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(m>>>0<n>>>0){p=c[y>>2]|0;J=m+1|0;c[A>>2]=J;i=d[p+m>>0]|0|i;c[w>>2]=i;m=J}j=j+8|0;c[v>>2]=j}while((j|0)<3);j=k+7+(3-k&-8)|0}j=j+-3|0;c[v>>2]=j;k=i>>>j&7}o=(k|0)==7?-1:k;p=c[4220+(r<<2)>>2]|0;if((j|0)<2){n=c[B>>2]|0;k=c[A>>2]|0;m=j;do{i=i<<8;c[w>>2]=i;if(k>>>0<n>>>0){K=c[y>>2]|0;J=k+1|0;c[A>>2]=J;i=d[K+k>>0]|0|i;c[w>>2]=i;k=J}m=m+8|0;c[v>>2]=m}while((m|0)<2);j=j+8+(1-j&-8)|0}m=j+-2|0;c[v>>2]=m;v:do switch(i>>>m&3){case 0:{i=0;break}case 1:{if((m|0)<2){n=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<n>>>0){J=c[y>>2]|0;K=k+1|0;c[A>>2]=K;i=d[J+k>>0]|0|i;c[w>>2]=i;k=K}m=m+8|0;c[v>>2]=m}while((m|0)<2);j=j+6+(3-j&-8)|0}else j=m;K=j+-2|0;c[v>>2]=K;i=(i>>>K&3)+1|0;break}case 2:{if((m|0)<5){n=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<n>>>0){J=c[y>>2]|0;K=k+1|0;c[A>>2]=K;i=d[J+k>>0]|0|i;c[w>>2]=i;k=K}m=m+8|0;c[v>>2]=m}while((m|0)<5);j=j+6+(6-j&-8)|0}else j=m;K=j+-5|0;c[v>>2]=K;i=(i>>>K&31)+5|0;break}default:{if((m|0)<7){n=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<n>>>0){J=c[y>>2]|0;K=k+1|0;c[A>>2]=K;i=d[J+k>>0]|0|i;c[w>>2]=i;k=K}m=m+8|0;c[v>>2]=m}while((m|0)<7);m=j+6+(8-j&-8)|0}j=m+-7|0;k=i>>>j&127;c[v>>2]=j;if(k|0){i=k+36|0;break v}if((j|0)<20){n=c[B>>2]|0;k=c[A>>2]|0;do{i=i<<8;c[w>>2]=i;if(k>>>0<n>>>0){J=c[y>>2]|0;K=k+1|0;c[A>>2]=K;i=d[J+k>>0]|0|i;c[w>>2]=i;k=K}j=j+8|0;c[v>>2]=j}while((j|0)<20);j=m+1+(26-m&-8)|0}K=j+-20|0;c[v>>2]=K;i=i>>>K&1048575}}while(0);n=i&65535;aq(e,p,o,403133056,5);k=c[F>>2]|0;m=c[k+-8>>2]|0;switch(r|0){case 54:case 56:case 63:case 125:case 126:{j=c[m>>2]|67108864;c[m>>2]=j;i=m;break}default:{i=m;j=c[m>>2]|0}}c[i>>2]=j|65536;b[m+46>>1]=n;if(k>>>0>=(c[D>>2]|0)>>>0){t=889;break f}i=k+16|0;c[F>>2]=i;c[k>>2]=0;h[k+8>>3]=+(q>>>0);K=c[G>>2]|0;i=i-K>>4;i=i>>>0>1?K+(i+-2<<4)|0:0;i=(i|0)==0?936:i;if((c[i>>2]|0)!=9){t=892;break f}i=c[i+8>>2]|0;if(!i){t=892;break f}fo(e,i,c[(c[E>>2]|0)+328>>2]|0,4);i=c[F>>2]|0;if(i>>>0>=(c[D>>2]|0)>>>0){t=894;break f}j=c[G>>2]|0;k=i-j>>4;if(k>>>0<=1){t=896;break f}K=j+(k+-2<<4)|0;c[F>>2]=i+16;c[i>>2]=c[K>>2];c[i+4>>2]=c[K+4>>2];c[i+8>>2]=c[K+8>>2];c[i+12>>2]=c[K+12>>2];if(c[i>>2]&8|0){K=(c[i+8>>2]|0)+4|0;c[K>>2]=(c[K>>2]|0)+1}K=c[G>>2]|0;i=(c[F>>2]|0)-K>>4;i=i>>>0>1?K+(i+-2<<4)|0:0;i=(i|0)==0?936:i;if((c[i>>2]|0)!=9){t=901;break f}i=c[i+8>>2]|0;if(!i){t=901;break f}fo(e,i,c[(c[E>>2]|0)+352>>2]|0,4);i=c[G>>2]|0;i=f>>>0<(c[F>>2]|0)-i>>4>>>0?i+(f<<4)|0:0;i=(i|0)==0?936:i;if((c[i>>2]|0)!=9){t=904;break f}j=c[i+8>>2]|0;if(!j){t=904;break f}po(e,-2,1);K=c[G>>2]|0;i=(c[F>>2]|0)-K>>4;i=i>>>0>1?K+(i+-2<<4)|0:0;i=(i|0)==0?936:i;if((c[i>>2]|0)==8?(z=c[i+8>>2]|0,(z|0)!=0):0)i=z;else t=907;do if((t|0)==907){Eo(e,-2)|0;K=c[G>>2]|0;i=(c[F>>2]|0)-K>>4;i=i>>>0>1?K+(i+-2<<4)|0:0;i=(i|0)==0?936:i;if((c[i>>2]|0)!=8){i=0;break}i=c[i+8>>2]|0}while(0);fo(e,j,i,5);i=c[F>>2]|0;if((i|0)==(c[G>>2]|0)){t=910;break f}J=i+-16|0;c[F>>2]=J;K=c[i+-16>>2]|0;i=c[i+-8>>2]|0;c[J>>2]=2;do if(K&8|0){J=i+4|0;K=(c[J>>2]|0)+-1|0;c[J>>2]=K;if(K|0)break;Yn(c[C>>2]|0,i)}while(0);g=g+1|0;if(g>>>0>=s>>>0)break s;n=c[v>>2]|0}}while(0);f=f+1|0;if(f>>>0>=76){t=917;break}}switch(t|0){case 312:{Un(e,1093);break}case 314:{jo(e,376,g);break}case 319:{In(e,2130,f,268963);break}case 358:{Un(e,1093);break}case 360:{jo(e,376,g);break}case 365:{In(e,2130,f,268963);break}case 443:{Un(e,4300);break}case 445:{Jn(e,268620,50335961,268982);break}case 448:{Un(e,4153);break}case 480:{Un(e,4215);break}case 483:{Un(e,4300);break}case 485:{Jn(e,268620,50335961,268982);break}case 524:{Un(e,4153);break}case 563:{Un(e,1093);break}case 565:{jo(e,376,k);break}case 569:{Un(e,4162);break}case 572:{Un(e,4195);break}case 575:{Un(e,4204);break}case 687:{Un(e,4851);break}case 695:{In(e,2219,-1,270163);break}case 699:{Un(e,4851);break}case 707:{In(e,2219,-1,270163);break}case 710:break;case 786:{Un(e,4300);break}case 788:{Jn(e,268620,50335961,268982);break}case 791:{Un(e,4153);break}case 889:{Un(e,4274);break}case 892:{In(e,2130,-2,268963);break}case 894:{Un(e,1093);break}case 896:{jo(e,376,-2);break}case 901:{In(e,2130,-2,268963);break}case 904:{In(e,2130,f,268963);break}case 910:{Jn(e,268620,50337407,268636);break}case 917:{K=c[F>>2]|0;f=K;if(K-(c[G>>2]|0)>>4>>>0<=16)jo(e,300,16);g=c[(c[E>>2]|0)+164>>2]|0;if(f>>>0>=(c[D>>2]|0)>>>0)Un(e,4153);c[F>>2]=f+16;c[f>>2]=8;c[f+8>>2]=g;f=g+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[G>>2]|0;g=(c[F>>2]|0)-f>>4;if(g>>>0<=16)jo(e,376,16);ro(e,f+256|0,f+(g+-1<<4)|0)|0;g=c[G>>2]|0;i=(c[F>>2]|0)-g>>4;f=i+-2|0;if(i>>>0<=1)jo(e,376,-2);B=g+(f<<4)|0;J=g+(i+-1<<4)|0;K=c[B>>2]|0;g=c[g+(f<<4)+8>>2]|0;QQ(B|0,B+16|0,J-B|0)|0;c[J>>2]=2;f=(c[F>>2]|0)+-16|0;c[F>>2]=f;if((K&8|0)!=0?(J=g+4|0,K=(c[J>>2]|0)+-1|0,c[J>>2]=K,(K|0)==0):0){Yn(c[C>>2]|0,g);f=c[F>>2]|0}K=c[G>>2]|0;f=f-K>>4>>>0>16?K+256|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)!=9)In(e,2130,16,268963);f=c[f+8>>2]|0;if(!f)In(e,2130,16,268963);fo(e,f,c[(c[E>>2]|0)+172>>2]|0,5);K=c[(c[G>>2]|0)+600>>2]|0;c[K>>2]=c[K>>2]&-129;if((c[F>>2]|0)>>>0>=(c[D>>2]|0)>>>0)Un(e,4300);f=Oo(e,278376,40)|0;K=c[F>>2]|0;c[F>>2]=K+16;c[K>>2]=8;c[K+8>>2]=f;f=f+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[G>>2]|0;f=(c[F>>2]|0)-f>>4>>>0>34?f+544|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)!=9)In(e,2130,34,268963);f=c[f+8>>2]|0;if(!f)In(e,2130,34,268963);fo(e,f,c[(c[E>>2]|0)+424>>2]|0,5);f=0;do{Pp(e,c[(c[G>>2]|0)+(f<<4)+8>>2]|0);f=f+1|0}while((f|0)!=76);Gp(e,0);l=H;return}}}else if((t|0)==145)Un(e,4300);else if((t|0)==147)Jn(e,268620,50335961,268982);else if((t|0)==150)Un(e,4153);else if((t|0)==154)In(e,2130,-2,268963);else if((t|0)==208)Un(e,4153);else if((t|0)==211)Un(e,4604);else if((t|0)==219)Un(e,4244);else if((t|0)==222)In(e,2130,-2,268963)}function Ar(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;Ln(a,0);Ln(a,0);c[a+68>>2]=1;Ln(a,0);c[a>>2]=c[a>>2]|4;n=a+128|0;do if(c[n>>2]|0){o=a+64|0;c[o>>2]=1;p=a+56|0;c[p>>2]=1;c[a+60>>2]=1;m=a+24|0;k=0;l=0;a:while(1){e=c[m>>2]|0;if(!e){d=0;b=0}else{d=0;b=0;do{b=b+1|0;h=c[e>>2]|0;b:do if(h&1){f=1e4;g=e;while(1){if(c[g>>2]&2097152|0)break;if(!f)break b;g=c[g+20>>2]|0;if(!g)break b;else f=f+-1|0}if(!(h&32)){j=c[n>>2]|0;c[e>>2]=h|32;if(!(h&33554432)){i=j+68|0;f=c[i>>2]|0;g=j+56|0;if(f>>>0>=(c[g>>2]|0)>>>0){b=12;break a}c[i>>2]=f+16;c[f>>2]=9;c[f+8>>2]=e;f=e+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[i>>2]|0;h=j+64|0;if(f>>>0<(c[h>>2]|0)>>>0){b=15;break a}if((c[g>>2]|0)>>>0<(f+16|0)>>>0){b=15;break a}Xn(j,17,0,0,1)|0;g=c[i>>2]|0;if((g+-32|0)>>>0<(c[h>>2]|0)>>>0){b=17;break a}f=g+-16|0;c[i>>2]=f;h=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[f>>2]=2;if((h&8|0)!=0?(q=g+4|0,h=(c[q>>2]|0)+-1|0,c[q>>2]=h,(h|0)==0):0){Yn(c[j+44>>2]|0,g);f=c[i>>2]|0}h=f+-16|0;c[i>>2]=h;q=c[f+-16>>2]|0;f=c[f+-8>>2]|0;c[h>>2]=2;if(q&8|0?(i=f+4|0,q=(c[i>>2]|0)+-1|0,c[i>>2]=q,(q|0)==0):0)Yn(c[j+44>>2]|0,f)}d=d+1|0}}while(0);e=c[e+8>>2]|0}while((e|0)!=0)}k=(l|0)==0?b<<1:(k*3|0)>>>2;if(!((d|0)!=0&d>>>0<k>>>0)){b=27;break}else l=l+1|0}if((b|0)==12)Un(j,4153);else if((b|0)==15)Vn(j,268605,315);else if((b|0)==17)Jn(j,268620,50337495,268636);else if((b|0)==27){c[p>>2]=0;c[o>>2]=0;break}}while(0);f=a+36|0;b=c[f>>2]|0;if(b|0){d=a+12|0;e=a+16|0;do{q=b;b=c[b+20>>2]|0;Bg[c[d>>2]&255](c[e>>2]|0,q)}while((b|0)!=0)}c[f>>2]=0;f=a+40|0;b=c[f>>2]|0;if(b|0){d=a+12|0;e=a+16|0;do{q=b;b=c[b>>2]|0;Bg[c[d>>2]&255](c[e>>2]|0,q)}while((b|0)!=0)}c[f>>2]=0;b=c[a+24>>2]|0;c:do if(b|0){g=a+12|0;h=a+16|0;while(1){f=b;b=c[b+8>>2]|0;d=c[f>>2]|0;switch(d&3){case 0:{Bg[c[g>>2]&255](c[h>>2]|0,f);break}case 1:{Bg[c[g>>2]&255](c[h>>2]|0,c[f+16>>2]|0);d=c[f>>2]|0;do if(!(d&6144)){if((d&-134217728|0)!=-1879048192){if(!(d&1024))break;Bg[c[g>>2]&255](c[h>>2]|0,c[f+72>>2]|0);break}Bg[c[g>>2]&255](c[h>>2]|0,c[f+52>>2]|0);d=c[f+72>>2]|0;if(d|0)do{e=c[d+32>>2]|0;if(e|0)do{q=e;e=c[e>>2]|0;Bg[c[g>>2]&255](c[h>>2]|0,q)}while((e|0)!=0);q=d;d=c[d+20>>2]|0;Bg[c[g>>2]&255](c[h>>2]|0,q)}while((d|0)!=0)}while(0);Bg[c[g>>2]&255](c[h>>2]|0,f);break}default:{if((d&384|0)==128)Bg[c[g>>2]&255](c[h>>2]|0,c[f+20>>2]|0);Bg[c[g>>2]&255](c[h>>2]|0,f)}}if(!b)break c}}while(0);b=c[a+32>>2]|0;d:do if(b|0){g=a+12|0;h=a+16|0;while(1){f=b;b=c[b+8>>2]|0;d=c[f>>2]|0;switch(d&3){case 0:{Bg[c[g>>2]&255](c[h>>2]|0,f);break}case 1:{Bg[c[g>>2]&255](c[h>>2]|0,c[f+16>>2]|0);d=c[f>>2]|0;do if(!(d&6144)){if((d&-134217728|0)!=-1879048192){if(!(d&1024))break;Bg[c[g>>2]&255](c[h>>2]|0,c[f+72>>2]|0);break}Bg[c[g>>2]&255](c[h>>2]|0,c[f+52>>2]|0);d=c[f+72>>2]|0;if(d|0)do{e=c[d+32>>2]|0;if(e|0)do{q=e;e=c[e>>2]|0;Bg[c[g>>2]&255](c[h>>2]|0,q)}while((e|0)!=0);q=d;d=c[d+20>>2]|0;Bg[c[g>>2]&255](c[h>>2]|0,q)}while((d|0)!=0)}while(0);Bg[c[g>>2]&255](c[h>>2]|0,f);break}default:{if((d&384|0)==128)Bg[c[g>>2]&255](c[h>>2]|0,c[f+20>>2]|0);Bg[c[g>>2]&255](c[h>>2]|0,f)}}if(!b)break d}}while(0);g=c[a+176>>2]|0;e=c[a+184>>2]|0;if(!e){q=a+16|0;p=a+12|0;n=c[p>>2]|0;o=c[q>>2]|0;Bg[n&255](o,g);p=c[p>>2]|0;q=c[q>>2]|0;Bg[p&255](q,a);return}b=a+12|0;d=a+16|0;f=g+(e<<2)|0;do{f=f+-4|0;e=c[f>>2]|0;if(e|0)do{q=e;e=c[e+8>>2]|0;Bg[c[b>>2]&255](c[d>>2]|0,q)}while((e|0)!=0)}while((g|0)!=(f|0));q=c[b>>2]|0;p=c[d>>2]|0;Bg[q&255](p,g);p=c[b>>2]|0;q=c[d>>2]|0;Bg[p&255](q,a);return}function Br(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0.0;i=a+68|0;d=c[i>>2]|0;e=c[a+64>>2]|0;f=d-e|0;g=f>>4;if((g|0)==1?(b=(d|0)!=(e|0)?e:0,b=(b|0)==0?936:b,(c[b>>2]|0)==0):0){j=+h[b+8>>3];e=_p(a,0)|0;if(+(e>>>0)!=j)Jn(a,279626,50331806,269798);f=vo(a,48)|0;b=c[a+44>>2]|0;c[f>>2]=272679041;b=b+24|0;d=c[b>>2]|0;if(d|0)c[d+12>>2]=f;c[f+12>>2]=0;c[f+8>>2]=d;c[b>>2]=f;b=c[a+132>>2]|0;c[f+20>>2]=b;if(b|0){g=b+4|0;c[g>>2]=(c[g>>2]|0)+1}g=c[i>>2]|0;c[g>>2]=9;c[g+8>>2]=f;g=f+4|0;c[g>>2]=(c[g>>2]|0)+1;g=c[i>>2]|0;c[i>>2]=g+16;i=c[g+8>>2]|0;io(a,i,0,e>>>0<64?e:64,0,0);c[i+40>>2]=e;return 1}e=vo(a,48)|0;b=c[a+44>>2]|0;c[e>>2]=272679041;b=b+24|0;d=c[b>>2]|0;if(d|0)c[d+12>>2]=e;c[e+12>>2]=0;c[e+8>>2]=d;c[b>>2]=e;b=c[a+132>>2]|0;c[e+20>>2]=b;if(b|0){d=b+4|0;c[d>>2]=(c[d>>2]|0)+1}b=c[i>>2]|0;c[b>>2]=9;c[b+8>>2]=e;b=e+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[i>>2]|0;c[i>>2]=b+16;b=c[b+8>>2]|0;io(a,b,0,g,0,0);c[b+40>>2]=g;e=c[b+24>>2]|0;d=(c[i>>2]|0)+(0-g<<4)+-16|0;PQ((c[b+16>>2]|0)+(e*21|0)+(0-e&7)|0,d|0,f|0)|0;e=(c[i>>2]|0)+-16|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];d=d+16|0;e=c[i>>2]|0;if((d|0)!=(e|0)){b=d;do{c[b>>2]=2;b=b+16|0}while((b|0)!=(e|0))}c[i>>2]=d;return 1}function Cr(a){a=a|0;var b=0,d=0,e=0;d=a+68|0;e=c[d>>2]|0;b=c[a+64>>2]|0;b=(e|0)!=(b|0)?b:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==9){b=c[b+8>>2]|0;if(b)b=(c[b>>2]&-134217728|0)!=268435456?0:b}else b=0;if(e>>>0<(c[a+56>>2]|0)>>>0){c[d>>2]=e+16;c[e>>2]=4;c[e+8>>2]=(b|0)!=0&1;return 1}else Un(a,4185);return 0}function Dr(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;u=l;l=l+16|0;g=u;q=a+68|0;f=c[q>>2]|0;r=a+56|0;if(f>>>0>=(c[r>>2]|0)>>>0)Un(a,4361);c[q>>2]=f+16;if(!(c[a+72>>2]|0))Jn(a,268620,100667685,269813);p=a+64|0;b=c[p>>2]|0;d=b+-16|0;e=c[d>>2]|0;if((e&-2|0)==2)Jn(a,268620,100667685,269813);c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];if(e&8|0){k=(c[b+-8>>2]|0)+4|0;c[k>>2]=(c[k>>2]|0)+1}to(a,-1);d=c[q>>2]|0;f=c[p>>2]|0;b=f;e=d-b>>4;if(!e)jo(a,376,0);e=e+-1|0;if(e){d=f+(e<<4)|0;c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];QQ(f+16|0,f|0,e<<4|0)|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[f+12>>2]=c[g+12>>2];d=c[q>>2]|0;b=c[p>>2]|0}g=d-b|0;j=g>>4;e=vo(a,48)|0;k=a+44|0;b=c[k>>2]|0;c[e>>2]=272679041;b=b+24|0;d=c[b>>2]|0;if(d|0)c[d+12>>2]=e;c[e+12>>2]=0;c[e+8>>2]=d;c[b>>2]=e;b=c[a+132>>2]|0;c[e+20>>2]=b;if(b|0){i=b+4|0;c[i>>2]=(c[i>>2]|0)+1}f=c[q>>2]|0;c[f>>2]=9;c[f+8>>2]=e;f=e+4|0;c[f>>2]=(c[f>>2]|0)+1;f=(c[q>>2]|0)+16|0;c[q>>2]=f;b=f>>>0<(c[r>>2]|0)>>>0;a:do if((g|0)>0){e=0;d=0;g=0;b:while(1){if(!b){t=18;break}b=c[p>>2]|0;if(g>>>0>=f-b>>4>>>0){t=20;break}i=b+(g<<4)|0;c[q>>2]=f+16;c[f>>2]=c[i>>2];c[f+4>>2]=c[i+4>>2];c[f+8>>2]=c[i+8>>2];c[f+12>>2]=c[i+12>>2];if(c[f>>2]&8|0){i=(c[f+8>>2]|0)+4|0;c[i>>2]=(c[i>>2]|0)+1}f=c[p>>2]|0;i=(c[q>>2]|0)-f>>4;b=i|0?f+(i+-1<<4)|0:0;b=(b|0)==0?936:b;do if(((c[b>>2]|0)==9?(s=c[b+8>>2]|0,(s|0)!=0):0)?(c[s>>2]&-134217728|0)==268435456:0){i=Bo(a,-1)|0;if(i){d=0;while(1){f=e+1|0;if(!(Np(a,-1,d)|0))c[q>>2]=(c[q>>2]|0)+-16;else{v=c[p>>2]|0;b=(c[q>>2]|0)-v>>4;b=b>>>0>2?v+(b+-3<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9){t=34;break b}b=c[b+8>>2]|0;if(!b){t=34;break b}Co(a,b,e)}d=d+1|0;if(d>>>0>=i>>>0){e=f;d=f;break}else e=f}}b=c[q>>2]|0;i=b+-16|0;c[q>>2]=i;v=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[i>>2]=2;if(v&8){i=b+4|0;v=(c[i>>2]|0)+-1|0;c[i>>2]=v;if(v|0)break;Yn(c[k>>2]|0,b)}}else t=26;while(0);if((t|0)==26){t=0;d=e+1|0;b=i>>>0>1?f+(i+-2<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9){t=28;break}b=c[b+8>>2]|0;if(!b){t=28;break}Co(a,b,e);e=d}g=g+1|0;f=c[q>>2]|0;b=f>>>0<(c[r>>2]|0)>>>0;if((g|0)>=(j|0)){m=d;n=b;o=f;break a}}if((t|0)==18)Un(a,1093);else if((t|0)==20)jo(a,376,g);else if((t|0)==28)In(a,2130,-2,268963);else if((t|0)==34)In(a,2130,-3,268963)}else{m=0;n=b;o=f}while(0);if(!n)Un(a,4274);b=o+16|0;c[q>>2]=b;c[o>>2]=0;h[o+8>>3]=+(m>>>0);v=c[p>>2]|0;b=b-v>>4;b=b>>>0>1?v+(b+-2<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9)In(a,2130,-2,268963);b=c[b+8>>2]|0;if(!b)In(a,2130,-2,268963);else{fo(a,b,c[(c[a+304>>2]|0)+328>>2]|0,1);l=u;return 1}return 0}function Er(a){a=a|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0;r=l;l=l+16|0;f=r;d=c[a+72>>2]|0;do if(d){e=c[d+16>>2]|0;if(!e){m=(c[d+4>>2]|0)>>>8<<24>>24;break}if(c[e>>2]&4096)m=b[e+46>>1]|0;else m=0}else m=0;while(0);p=a+68|0;n=a+64|0;d=(c[p>>2]|0)-(c[n>>2]|0)|0;Gp(a,2);o=Kv(a)|0;if((o|0)<0)Jn(a,279626,50331727,269798);a:do if(o|0){e=(m|0)>0;if((d|0)>16){d=vq(a,1,e?0-o|0:~o,o+((e^1)<<31>>31)|0,f)|0;d=((d|0)<0?o:0)+d|0}else d=e?0:o+-1|0;if((d|0)>-1&(d|0)<(o|0)){k=a+44|0;b:while(1){c:do if(Np(a,2,d)|0){e=c[p>>2]|0;f=c[n>>2]|0;j=e-f>>4;g=j|0?f:0;f=j>>>0>4?f+64|0:0;if(!((g|0)==0|(f|0)==0)){i=c[g>>2]|0;j=c[f>>2]|0;if(!(j|i))if(+h[g+8>>3]==+h[f+8>>3])break b;else break;if((i|0)==(j|0))switch(i|0){case 3:case 2:break b;case 4:if((c[g+8>>2]|0)==(c[f+8>>2]|0))break b;else break c;case 5:if((c[g+8>>2]|0)==(c[f+8>>2]|0))break b;else break c;case 9:case 8:if((c[g+8>>2]|0)==(c[f+8>>2]|0))break b;else break c;case 10:if((c[g+8>>2]|0)==(c[f+8>>2]|0))break b;else break c;case 6:{if((c[g+8>>2]|0)!=(c[f+8>>2]|0))break c;if((c[g+4>>2]|0)==(c[f+4>>2]|0))break b;else break c}default:{q=26;break b}}}}else e=c[p>>2]|0;while(0);i=e+-16|0;c[p>>2]=i;j=c[e+-16>>2]|0;e=c[e+-8>>2]|0;c[i>>2]=2;if(j&8|0?(i=e+4|0,j=(c[i>>2]|0)+-1|0,c[i>>2]=j,(j|0)==0):0)Yn(c[k>>2]|0,e);d=d+m|0;if(!((d|0)>-1&(d|0)<(o|0)))break a}if(e>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4244);s=+(d|0);a=e;q=a+16|0;c[p>>2]=q;c[a>>2]=0;a=a+8|0;h[a>>3]=s;l=r;return 1}}while(0);d=c[p>>2]|0;if(d>>>0<(c[a+56>>2]|0)>>>0){s=-1.0;a=d;q=a+16|0;c[p>>2]=q;c[a>>2]=0;a=a+8|0;h[a>>3]=s;l=r;return 1}else Un(a,4244);return 0}function Fr(a){a=a|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;d=c[a+72>>2]|0;do if(d){e=c[d+16>>2]|0;if(!e){n=(c[d+4>>2]|0)>>>8<<24>>24;break}if(c[e>>2]&4096)n=b[e+46>>1]|0;else n=0}else n=0;while(0);o=Kv(a)|0;r=a+68|0;e=c[r>>2]|0;p=a+64|0;d=c[p>>2]|0;d=(e|0)!=(d|0)?d:0;d=(d|0)==0?936:d;switch(c[d>>2]|0){case 9:{f=7;break}case 6:break;default:In(a,2285,0,287317)}if((f|0)==7?(c[c[d+8>>2]>>2]&512|0)==0:0)In(a,2285,0,287317);m=(n|0)==3;if((n+-3|0)>>>0>=2)if(e>>>0<(c[a+56>>2]|0)>>>0)g=e;else Un(a,4162);else{f=vo(a,48)|0;d=c[a+44>>2]|0;c[f>>2]=272679041;d=d+24|0;e=c[d>>2]|0;if(e|0)c[e+12>>2]=f;c[f+12>>2]=0;c[f+8>>2]=e;c[d>>2]=f;d=c[a+132>>2]|0;c[f+20>>2]=d;if(d|0){l=d+4|0;c[l>>2]=(c[l>>2]|0)+1}g=c[r>>2]|0;c[g>>2]=9;c[g+8>>2]=f;g=f+4|0;c[g>>2]=(c[g>>2]|0)+1;g=c[r>>2]|0}c[r>>2]=g+16;a:do if(!o)q=0;else{l=a+56|0;k=a+44|0;i=0;j=0;d=0;b:while(1){do if(!(Np(a,2,j)|0)){c[r>>2]=(c[r>>2]|0)+-16;e=i;d=m?j+1|0:d}else{e=c[r>>2]|0;if(e>>>0>=(c[l>>2]|0)>>>0){f=22;break b}f=c[p>>2]|0;if((e|0)==(f|0)){f=24;break b}c[r>>2]=e+16;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];if(c[e>>2]&8|0){g=(c[e+8>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}e=c[r>>2]|0;if(e>>>0>=(c[l>>2]|0)>>>0){f=28;break b}f=c[p>>2]|0;if(e-f>>4>>>0<=1){f=30;break b}g=f+16|0;c[r>>2]=e+16;c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];c[e+8>>2]=c[g+8>>2];c[e+12>>2]=c[g+12>>2];if(c[e>>2]&8|0){g=(c[e+8>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}g=c[r>>2]|0;if(g>>>0>=(c[l>>2]|0)>>>0){f=34;break b}e=c[p>>2]|0;f=g-e>>4;if(f>>>0<=2){f=36;break b}f=e+(f+-3<<4)|0;c[r>>2]=g+16;c[g>>2]=c[f>>2];c[g+4>>2]=c[f+4>>2];c[g+8>>2]=c[f+8>>2];c[g+12>>2]=c[f+12>>2];if(c[g>>2]&8|0){g=(c[g+8>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}f=c[r>>2]|0;e=c[l>>2]|0;if(f>>>0>=e>>>0){f=40;break b}g=f+16|0;c[r>>2]=g;c[f>>2]=0;h[f+8>>3]=+(j>>>0);if(g>>>0>=e>>>0){f=42;break b}e=c[p>>2]|0;if(g-e>>4>>>0<=2){f=44;break b}e=e+32|0;c[r>>2]=f+32;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];if(c[g>>2]&8|0){g=(c[f+24>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}e=(c[r>>2]|0)-(c[p>>2]|0)|0;if((e|0)<80){f=48;break b}so(a,(e>>>4)+-5|0,0)|0;c:do switch(n|0){case 0:{if(!(Ro(a,-1)|0)){f=98;break b}else g=i;break}case 1:{if(!(Ro(a,-1)|0))g=i;else{f=98;break b}break}case 2:{g=i;break}case 3:{d=c[r>>2]|0;if(d>>>0>=(c[l>>2]|0)>>>0){f=53;break b}if((d-(c[p>>2]|0)|0)<16){f=55;break b}g=d+-16|0;c[r>>2]=d+16;c[d>>2]=c[g>>2];c[d+4>>2]=c[g+4>>2];c[d+8>>2]=c[g+8>>2];c[d+12>>2]=c[g+12>>2];if(c[d>>2]&8|0){g=(c[d+8>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}d=c[p>>2]|0;d=(c[r>>2]|0)-d>>4>>>0>4?d+64|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)!=9){f=60;break b}d=c[d+8>>2]|0;if(!d){f=60;break b}Co(a,d,j);g=i;d=j+1|0;break}case 4:{if(!(Ro(a,-1)|0)){g=i;break c}d=c[r>>2]|0;if(d>>>0>=(c[l>>2]|0)>>>0){f=64;break b}e=c[p>>2]|0;f=d-e>>4;if(f>>>0<=1){f=66;break b}g=e+(f+-2<<4)|0;c[r>>2]=d+16;c[d>>2]=c[g>>2];c[d+4>>2]=c[g+4>>2];c[d+8>>2]=c[g+8>>2];c[d+12>>2]=c[g+12>>2];if(c[d>>2]&8|0){g=(c[d+8>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}d=c[p>>2]|0;d=(c[r>>2]|0)-d>>4>>>0>4?d+64|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)!=9){f=71;break b}d=c[d+8>>2]|0;if(!d){f=71;break b}Co(a,d,i);d=i+1|0;g=d;break}default:{f=73;break b}}while(0);f=c[r>>2]|0;e=f+-16|0;c[r>>2]=e;i=c[f+-16>>2]|0;f=c[f+-8>>2]|0;c[e>>2]=2;do if(i&8){s=f+4|0;i=(c[s>>2]|0)+-1|0;c[s>>2]=i;if(i|0)break;Yn(c[k>>2]|0,f);e=c[r>>2]|0}while(0);i=e+-16|0;c[r>>2]=i;s=c[e+-16>>2]|0;e=c[e+-8>>2]|0;c[i>>2]=2;if(!(s&8)){e=g;break}i=e+4|0;s=(c[i>>2]|0)+-1|0;c[i>>2]=s;if(s|0){e=g;break}Yn(c[k>>2]|0,e);e=g}while(0);j=j+1|0;if(j>>>0>=o>>>0){q=d;break a}else i=e}switch(f|0){case 22:{Un(a,1093);break}case 24:{jo(a,376,0);break}case 28:{Un(a,1093);break}case 30:{jo(a,376,1);break}case 34:{Un(a,1093);break}case 36:{jo(a,376,-3);break}case 40:{Un(a,4274);break}case 42:{Un(a,1093);break}case 44:{jo(a,376,2);break}case 48:{Vn(a,268605,55);break}case 53:{Un(a,1111);break}case 55:{jo(a,1114,-1);break}case 60:{In(a,2130,4,268963);break}case 64:{Un(a,1093);break}case 66:{jo(a,376,-2);break}case 71:{In(a,2130,4,268963);break}case 73:break;case 98:return 1}}while(0);switch(n|0){case 0:{d=c[r>>2]|0;if(d>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4195);c[r>>2]=d+16;c[d>>2]=4;c[d+8>>2]=1;return 1}case 1:{d=c[r>>2]|0;if(d>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4204);c[r>>2]=d+16;c[d>>2]=4;c[d+8>>2]=0;return 1}case 2:{d=c[r>>2]|0;if(d>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4162);c[r>>2]=d+16;return 1}case 4:case 3:{d=c[r>>2]|0;if(d>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4274);o=d+16|0;c[r>>2]=o;c[d>>2]=0;h[d+8>>3]=+(q>>>0);s=c[p>>2]|0;d=o-s>>4;d=d>>>0>1?s+(d+-2<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)!=9)In(a,2130,-2,268963);d=c[d+8>>2]|0;if(!d)In(a,2130,-2,268963);fo(a,d,c[(c[a+304>>2]|0)+328>>2]|0,1);return 1}default:{}}return 0}function Gr(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=l;l=l+16|0;s=t;d=c[a+72>>2]|0;do if(d){e=c[d+16>>2]|0;if(!e){h=(c[d+4>>2]|0)>>>8<<24>>24;break}if(c[e>>2]&4096)h=b[e+46>>1]|0;else h=0}else h=0;while(0);Gp(a,1);p=a+68|0;d=c[p>>2]|0;q=a+64|0;o=c[q>>2]|0;o=(d|0)!=(o|0)?o:0;do if((c[((o|0)==0?936:o)>>2]|0)==2){e=d+-16|0;c[p>>2]=e;f=c[(c[a+304>>2]|0)+252>>2]|0;g=a+56|0;if(e>>>0<(c[g>>2]|0)>>>0){c[p>>2]=d;c[e>>2]=8;c[d+-8>>2]=f;r=f+4|0;c[r>>2]=(c[r>>2]|0)+1;r=g;break}else Un(a,4153)}else{Eo(a,0)|0;r=a+56|0}while(0);o=Kv(a)|0;f=c[p>>2]|0;d=c[a+52>>2]|0;e=((o>>>0<4096?o:4096)<<4)+576+(f-d)|0;d=d+e|0;g=c[r>>2]|0;do if(g>>>0<d>>>0)if((c[a+60>>2]|0)>>>0<d>>>0){lo(a,e,1)|0;f=c[p>>2]|0;d=c[r>>2]|0;break}else{c[r>>2]=d;break}else d=g;while(0);if(f>>>0>=d>>>0)Un(a,1093);d=c[q>>2]|0;if((f|0)==(d|0))jo(a,376,0);c[p>>2]=f+16;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];if(c[f>>2]&8|0){n=(c[f+8>>2]|0)+4|0;c[n>>2]=(c[n>>2]|0)+1}n=a+304|0;m=(h|0)==0;k=a+44|0;d=0;j=0;while(1){g=j>>>0>=o>>>0;if(g|d>>>0>4095){Mo(a,d,1);d=c[p>>2]|0;if(d>>>0>=(c[r>>2]|0)>>>0){d=24;break}e=c[q>>2]|0;if((d|0)==(e|0)){d=26;break}c[p>>2]=d+16;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];if(c[d>>2]&8|0){i=(c[d+8>>2]|0)+4|0;c[i>>2]=(c[i>>2]|0)+1}d=c[q>>2]|0;e=(c[p>>2]|0)-d>>4;if(e>>>0<=1){d=30;break}f=d+(e+-2<<4)|0;e=d+(e+-1<<4)|0;d=e-f|0;if(d|0){c[s>>2]=c[e>>2];c[s+4>>2]=c[e+4>>2];c[s+8>>2]=c[e+8>>2];c[s+12>>2]=c[e+12>>2];QQ(f+16|0,f|0,d|0)|0;c[f>>2]=c[s>>2];c[f+4>>2]=c[s+4>>2];c[f+8>>2]=c[s+8>>2];c[f+12>>2]=c[s+12>>2]}d=1}if(g){d=60;break}Np(a,1,j)|0;e=c[p>>2]|0;h=c[q>>2]|0;i=e-h>>4;i=i|0?h+(i+-1<<4)|0:0;if((c[((i|0)==0?936:i)>>2]&-2|0)==2){f=e+-16|0;c[p>>2]=f;c[f>>2]=2;g=c[(c[n>>2]|0)+60>>2]|0;if(f>>>0>=(c[r>>2]|0)>>>0){d=37;break}c[p>>2]=e;c[f>>2]=8;c[e+-8>>2]=g;i=g+4|0;c[i>>2]=(c[i>>2]|0)+1}else{if(!m){to(a,-1);e=c[p>>2]|0;h=e-(c[q>>2]|0)|0;g=h>>4;i=g+-1|0;if(!g){d=41;break}f=c[(c[n>>2]|0)+156>>2]|0;if(e>>>0>=(c[r>>2]|0)>>>0){d=43;break}c[p>>2]=e+16;c[e>>2]=8;c[e+8>>2]=f;f=f+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[q>>2]|0;g=(c[p>>2]|0)-f>>4;e=((h|0)<16?g:0)+i|0;if(e>>>0>=g>>>0){d=45;break}ro(a,f+(e<<4)|0,f+(g+-1<<4)|0)|0;f=c[q>>2]|0;g=(c[p>>2]|0)-f>>4;e=g+-2|0;if(g>>>0<=1){d=47;break}u=f+(e<<4)|0;h=f+(g+-1<<4)|0;i=c[u>>2]|0;e=c[f+(e<<4)+8>>2]|0;QQ(u|0,u+16|0,h-u|0)|0;c[h>>2]=2;f=(c[p>>2]|0)+-16|0;c[p>>2]=f;if((i&8|0)!=0?(i=e+4|0,u=(c[i>>2]|0)+-1|0,c[i>>2]=u,(u|0)==0):0){Yn(c[k>>2]|0,e);f=c[p>>2]|0}g=c[q>>2]|0;e=g;h=f-e>>4;if(h>>>0<=1){d=52;break}i=g+(h+-2<<4)|0;g=g+(h+-1<<4)|0;h=g-i|0;if(h){c[s>>2]=c[g>>2];c[s+4>>2]=c[g+4>>2];c[s+8>>2]=c[g+8>>2];c[s+12>>2]=c[g+12>>2];QQ(i+16|0,i|0,h|0)|0;c[i>>2]=c[s>>2];c[i+4>>2]=c[s+4>>2];c[i+8>>2]=c[s+8>>2];c[i+12>>2]=c[s+12>>2];f=c[p>>2]|0;e=c[q>>2]|0}e=f-e|0;if((e|0)<32){d=56;break}so(a,(e>>>4)+-2|0,0)|0}Eo(a,-1)|0}d=d+1|0;j=j+1|0}switch(d|0){case 24:{Un(a,1093);break}case 26:{jo(a,376,0);break}case 30:{jo(a,376,-2);break}case 37:{Un(a,4153);break}case 41:{jo(a,300,-1);break}case 43:{Un(a,4153);break}case 45:{jo(a,376,i);break}case 47:{jo(a,376,-2);break}case 52:{jo(a,376,-2);break}case 56:{Vn(a,268605,55);break}case 60:{l=t;return 1}}return 0}function Hr(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0.0,j=0;j=a+64|0;b=c[j>>2]|0;if(((c[b+-16>>2]|0)==9?(e=c[b+-8>>2]|0,(c[e>>2]&4227136|0)==4227072):0)?(f=e+40|0,d=c[f>>2]|0,!((e|0)==0?1:d>>>0>(c[e+32>>2]|0)>>>0)):0){b=c[e+24>>2]|0;if(!d){a=0;return a|0}b=(c[e+16>>2]|0)+(b*21|0)+(0-b&7)|0;d=d+-1|0;c[f>>2]=d;d=b+(d<<4)|0;b=a+68|0;if((c[d>>2]|0)!=7){a=c[b>>2]|0;c[a>>2]=c[d>>2];c[a+4>>2]=c[d+4>>2];c[a+8>>2]=c[d+8>>2];c[a+12>>2]=c[d+12>>2];c[d>>2]=7}c[b>>2]=(c[b>>2]|0)+16;a=1;return a|0}b=Kv(a)|0;if(!b){g=a+68|0;b=c[g>>2]|0;d=c[a+56>>2]|0;if(b>>>0>=d>>>0)Un(a,4244);e=b+16|0;c[g>>2]=e;c[b>>2]=0;h[b+8>>3]=0.0;if((e|0)==(c[j>>2]|0))jo(a,300,0);f=c[(c[a+304>>2]|0)+328>>2]|0;if(e>>>0>=d>>>0)Un(a,4153);c[g>>2]=b+32;c[e>>2]=8;c[b+24>>2]=f;f=f+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[j>>2]|0;e=(c[g>>2]|0)-f>>4;if(!e)jo(a,376,0);if((e|0)==1)jo(a,376,-2);d=e+-2|0;b=c[a+72>>2]|0;if(!b)b=1;else b=c[b+52>>2]&1;No(a,f,f+(e+-1<<4)|0,c[f+(d<<4)>>2]|0,c[f+(d<<4)+4>>2]|0,+h[f+(d<<4)+8>>3],b)|0;uq(a);a=0;return a|0}b=b+-1|0;Np(a,0,b)|0;g=a+68|0;f=c[g>>2]|0;d=f;if((f|0)==(c[j>>2]|0))jo(a,300,0);e=a+56|0;if(d>>>0>=(c[e>>2]|0)>>>0)Un(a,4274);i=+(b>>>0);c[g>>2]=d+16;c[d>>2]=0;h[d+8>>3]=i;Aq(a,0);f=c[g>>2]|0;d=c[e>>2]|0;if(f>>>0>=d>>>0)Un(a,4274);e=f+16|0;c[g>>2]=e;c[f>>2]=0;h[f+8>>3]=i;if((e|0)==(c[j>>2]|0))jo(a,300,0);b=c[(c[a+304>>2]|0)+328>>2]|0;if(e>>>0>=d>>>0)Un(a,4153);c[g>>2]=f+32;c[e>>2]=8;c[f+24>>2]=b;f=b+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[j>>2]|0;e=(c[g>>2]|0)-f>>4;if(!e)jo(a,376,0);if((e|0)==1)jo(a,376,-2);d=e+-2|0;b=c[a+72>>2]|0;if(!b)b=1;else b=c[b+52>>2]&1;No(a,f,f+(e+-1<<4)|0,c[f+(d<<4)>>2]|0,c[f+(d<<4)+4>>2]|0,+h[f+(d<<4)+8>>3],b)|0;uq(a);a=1;return a|0}function Ir(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=a+64|0;d=c[q>>2]|0;b=d;if(((c[d+-16>>2]|0)==9?(e=c[d+-8>>2]|0,(c[e>>2]&4227136|0)==4227072):0)?(k=e+40|0,i=c[k>>2]|0,f=c[e+32>>2]|0,!((e|0)==0|i>>>0>f>>>0)):0){g=c[e+24>>2]|0;g=(c[e+16>>2]|0)+(g*21|0)+(0-g&7)|0;l=a+68|0;e=(c[l>>2]|0)-b|0;j=e>>4;m=j+i|0;if(m>>>0<i>>>0)Jn(a,279626,50332142,269798);if(m>>>0<=f>>>0){if((e|0)>0){e=0;b=g+(i<<4)|0;while(1){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[d>>2]=2;e=e+1|0;if((e|0)>=(j|0))break;else{d=d+16|0;b=b+16|0}}b=c[q>>2]|0}c[l>>2]=b;c[k>>2]=m;if(b>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4274);c[l>>2]=b+16;c[b>>2]=0;h[b+8>>3]=+(m>>>0);return 1}}m=a+68|0;b=(c[m>>2]|0)-b|0;i=b>>4;j=Kv(a)|0;k=i+j|0;if(k>>>0<j>>>0)Jn(a,279626,50332216,269798);f=c[m>>2]|0;l=a+56|0;d=c[l>>2]|0;e=f>>>0<d>>>0;a:do if((b|0)>0){g=0;b=e;d=f;while(1){if(!b){b=18;break}b=c[q>>2]|0;if(g>>>0>=d-b>>4>>>0){b=20;break}f=b+(g<<4)|0;c[m>>2]=d+16;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];if(c[d>>2]&8|0){f=(c[d+8>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)+1}mq(a,-3,g+j|0);b=g+1|0;d=c[m>>2]|0;e=c[l>>2]|0;f=d>>>0<e>>>0;if((b|0)<(i|0)){g=b;b=f}else{n=f;o=d;p=e;break a}}if((b|0)==18)Un(a,1093);else if((b|0)==20)jo(a,376,g)}else{n=e;o=f;p=d}while(0);if(!n)Un(a,4274);b=o+16|0;c[m>>2]=b;c[o>>2]=0;h[o+8>>3]=+(k>>>0);if(b>>>0>=p>>>0)Un(a,1111);if((b-(c[q>>2]|0)|0)<16)jo(a,1114,-1);c[m>>2]=o+32;c[b>>2]=c[o>>2];c[b+4>>2]=c[o+4>>2];c[b+8>>2]=c[o+8>>2];c[b+12>>2]=c[o+12>>2];if(c[b>>2]&8|0){p=(c[o+24>>2]|0)+4|0;c[p>>2]=(c[p>>2]|0)+1}b=c[m>>2]|0;e=b-(c[q>>2]|0)|0;p=e>>4;i=p+-4|0;if(p>>>0<=3)jo(a,300,-4);d=c[(c[a+304>>2]|0)+328>>2]|0;if(b>>>0>=(c[l>>2]|0)>>>0)Un(a,4153);c[m>>2]=b+16;c[b>>2]=8;c[b+8>>2]=d;g=d+4|0;c[g>>2]=(c[g>>2]|0)+1;g=c[q>>2]|0;f=(c[m>>2]|0)-g>>4;e=((e|0)<64?f:0)+i|0;if(e>>>0>=f>>>0)jo(a,376,i);if((f|0)==1)jo(a,376,-2);d=f+-2|0;b=c[a+72>>2]|0;if(!b)b=1;else b=c[b+52>>2]&1;No(a,g+(e<<4)|0,g+(f+-1<<4)|0,c[g+(d<<4)>>2]|0,c[g+(d<<4)+4>>2]|0,+h[g+(d<<4)+8>>3],b)|0;uq(a);return 1}function Jr(a){a=a|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0.0,m=0,n=0,o=0,p=0,q=0,r=0;d=c[a+72>>2]|0;do if(d){e=c[d+16>>2]|0;if(!e){m=(c[d+4>>2]|0)>>>8<<24>>24;break}if(c[e>>2]&4096)m=b[e+46>>1]|0;else m=0}else m=0;while(0);n=a+68|0;o=a+64|0;e=(c[n>>2]|0)-(c[o>>2]|0)|0;Gp(a,2);p=Kv(a)|0;f=c[n>>2]|0;g=c[o>>2]|0;i=g;d=(f|0)!=(i|0)?g:0;d=(d|0)==0?936:d;j=f;switch(c[d>>2]|0){case 9:{k=7;break}case 6:break;default:In(a,2285,0,287317)}if((k|0)==7?(c[c[d+8>>2]>>2]&512|0)==0:0)In(a,2285,0,287317);if((e|0)>16){if(j>>>0>=(c[a+56>>2]|0)>>>0)Un(a,1093);if(f-i>>4>>>0<=1)jo(a,376,1);i=g+16|0;c[n>>2]=j+16;k=f;c[k>>2]=c[i>>2];c[k+4>>2]=c[i+4>>2];c[k+8>>2]=c[i+8>>2];c[k+12>>2]=c[i+12>>2];if(!(c[j>>2]&8))d=1;else{d=(c[j+8>>2]|0)+4|0;c[d>>2]=(c[d>>2]|0)+1;d=1}}else d=0;e=(m|0)>-1?0:p+-1|0;a:do if(e>>>0<p>>>0){k=a+56|0;j=a+44|0;b:while(1){i=c[n>>2]|0;f=i;if(i-(c[o>>2]|0)>>4>>>0<=2){k=19;break}if(f>>>0>=(c[k>>2]|0)>>>0){k=21;break}l=+(e>>>0);c[n>>2]=f+16;c[f>>2]=0;h[f+8>>3]=l;do if(Do(a,2)|0){if(!d){Np(a,2,e)|0;d=1;break}f=c[n>>2]|0;if(f>>>0>=(c[k>>2]|0)>>>0){k=26;break b}g=c[o>>2]|0;if((f|0)==(g|0)){k=28;break b}c[n>>2]=f+16;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[f+12>>2]=c[g+12>>2];if(c[f>>2]&8|0){i=(c[f+8>>2]|0)+4|0;c[i>>2]=(c[i>>2]|0)+1}f=c[n>>2]|0;if(f>>>0>=(c[k>>2]|0)>>>0){k=32;break b}g=c[o>>2]|0;if(f-g>>4>>>0<=4){k=34;break b}i=g+64|0;c[n>>2]=f+16;c[f>>2]=c[i>>2];c[f+4>>2]=c[i+4>>2];c[f+8>>2]=c[i+8>>2];c[f+12>>2]=c[i+12>>2];if(c[f>>2]&8|0){i=(c[f+8>>2]|0)+4|0;c[i>>2]=(c[i>>2]|0)+1}Np(a,2,e)|0;g=c[n>>2]|0;f=c[k>>2]|0;if(g>>>0>=f>>>0){k=38;break b}i=g+16|0;c[n>>2]=i;c[g>>2]=0;h[g+8>>3]=l;if(i>>>0>=f>>>0){k=40;break b}f=c[o>>2]|0;if(i-f>>4>>>0<=2){k=42;break b}f=f+32|0;c[n>>2]=g+32;c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2];if(c[i>>2]&8|0){i=(c[g+24>>2]|0)+4|0;c[i>>2]=(c[i>>2]|0)+1}iq(a,4);f=c[o>>2]|0;g=(c[n>>2]|0)-f>>4;if(!g){k=46;break b}i=f+(g+-1<<4)|0;if(g>>>0<=4){k=48;break b}r=f+64|0;g=c[r>>2]|0;f=c[f+72>>2]|0;c[r>>2]=c[i>>2];c[r+4>>2]=c[i+4>>2];c[r+8>>2]=c[i+8>>2];c[r+12>>2]=c[i+12>>2];c[i>>2]=2;c[n>>2]=(c[n>>2]|0)+-16;if(!(g&8))break;i=f+4|0;r=(c[i>>2]|0)+-1|0;c[i>>2]=r;if(r|0)break;Yn(c[j>>2]|0,f)}while(0);e=e+m|0;if(e>>>0>=p>>>0){q=d;break a}}switch(k|0){case 19:{jo(a,300,2);break}case 21:{Un(a,4274);break}case 26:{Un(a,1093);break}case 28:{jo(a,376,0);break}case 32:{Un(a,1093);break}case 34:{jo(a,376,4);break}case 38:{Un(a,4274);break}case 40:{Un(a,1093);break}case 42:{jo(a,376,2);break}case 46:{jo(a,376,-1);break}case 48:{jo(a,376,4);break}}}else q=d;while(0);if(!q)Vn(a,279626,1604);else return 1;return 0}function Kr(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0;g=Kv(a)|0;i=g>>>1;m=a+68|0;a:do if(i|0){j=a+64|0;k=a+56|0;f=0;while(1){l=g-f+-1|0;e=Np(a,-2,f)|0;if(!(Np(a,-3,l)|0)){d=c[m>>2]|0;b=d-(c[j>>2]|0)>>4;if(b>>>0<=3){b=6;break}if(d>>>0>=(c[k>>2]|0)>>>0){b=8;break}c[m>>2]=d+16;c[d>>2]=0;h[d+8>>3]=+(f>>>0);Aq(a,b+-4|0);c[m>>2]=(c[m>>2]|0)+-16}else mq(a,-4,f);if(!e){d=c[m>>2]|0;b=d-(c[j>>2]|0)>>4;if(b>>>0<=2){b=13;break}if(d>>>0>=(c[k>>2]|0)>>>0){b=15;break}c[m>>2]=d+16;c[d>>2]=0;h[d+8>>3]=+(l>>>0);Aq(a,b+-3|0);c[m>>2]=(c[m>>2]|0)+-16}else mq(a,-3,l);f=f+1|0;if(f>>>0>=i>>>0)break a}if((b|0)==6)jo(a,300,-4);else if((b|0)==8)Un(a,4274);else if((b|0)==13)jo(a,300,-3);else if((b|0)==15)Un(a,4274)}while(0);b=c[m>>2]|0;l=b+-16|0;c[m>>2]=l;m=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[l>>2]=2;if(!(m&8))return 1;l=b+4|0;m=(c[l>>2]|0)+-1|0;c[l>>2]=m;if(m|0)return 1;Yn(c[a+44>>2]|0,b);return 1}function Lr(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0.0,k=0,l=0;g=Kv(a)|0;if(!g){i=a+68|0;e=c[i>>2]|0;f=c[a+56>>2]|0;if(e>>>0>=f>>>0)Un(a,4244);g=e+16|0;c[i>>2]=g;c[e>>2]=0;h[e+8>>3]=0.0;b=a+64|0;if((g|0)==(c[b>>2]|0))jo(a,300,0);d=c[(c[a+304>>2]|0)+328>>2]|0;if(g>>>0>=f>>>0)Un(a,4153);c[i>>2]=e+32;c[g>>2]=8;c[e+24>>2]=d;f=d+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[b>>2]|0;e=(c[i>>2]|0)-f>>4;if(!e)jo(a,376,0);if((e|0)==1)jo(a,376,-2);d=e+-2|0;b=c[a+72>>2]|0;if(!b)b=1;else b=c[b+52>>2]&1;No(a,f,f+(e+-1<<4)|0,c[f+(d<<4)>>2]|0,c[f+(d<<4)+4>>2]|0,+h[f+(d<<4)+8>>3],b)|0;uq(a);a=0;return a|0}Np(a,0,0)|0;k=a+68|0;i=a+64|0;a:do if((g|0)!=1){d=a+56|0;b=1;while(1){e=b+-1|0;if(!(Np(a,0,b)|0)){l=c[k>>2]|0;f=l;if((l|0)==(c[i>>2]|0)){b=20;break}if(f>>>0>=(c[d>>2]|0)>>>0){b=22;break}c[k>>2]=f+16;c[f>>2]=0;h[f+8>>3]=+(e>>>0);Aq(a,0);c[k>>2]=(c[k>>2]|0)+-16}else mq(a,0,e);b=b+1|0;if(b>>>0>=g>>>0)break a}if((b|0)==20)jo(a,300,0);else if((b|0)==22)Un(a,4274)}while(0);l=c[k>>2]|0;b=l;if((l|0)==(c[i>>2]|0))jo(a,300,0);d=a+56|0;if(b>>>0>=(c[d>>2]|0)>>>0)Un(a,4274);j=+((g+-1|0)>>>0);c[k>>2]=b+16;c[b>>2]=0;h[b+8>>3]=j;Aq(a,0);f=c[k>>2]|0;d=c[d>>2]|0;if(f>>>0>=d>>>0)Un(a,4274);e=f+16|0;c[k>>2]=e;c[f>>2]=0;h[f+8>>3]=j;if((e|0)==(c[i>>2]|0))jo(a,300,0);b=c[(c[a+304>>2]|0)+328>>2]|0;if(e>>>0>=d>>>0)Un(a,4153);c[k>>2]=f+32;c[e>>2]=8;c[f+24>>2]=b;f=b+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[i>>2]|0;e=(c[k>>2]|0)-f>>4;if(!e)jo(a,376,0);if((e|0)==1)jo(a,376,-2);d=e+-2|0;b=c[a+72>>2]|0;if(!b)b=1;else b=c[b+52>>2]&1;No(a,f,f+(e+-1<<4)|0,c[f+(d<<4)>>2]|0,c[f+(d<<4)+4>>2]|0,+h[f+(d<<4)+8>>3],b)|0;uq(a);l=1;return l|0}function Mr(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;f=m;g=Kv(a)|0;if((g|0)<0)Jn(a,279626,50331727,269798);e=vo(a,48)|0;b=c[a+44>>2]|0;c[e>>2]=272679041;b=b+24|0;d=c[b>>2]|0;if(d|0)c[d+12>>2]=e;c[e+12>>2]=0;c[e+8>>2]=d;c[b>>2]=e;b=c[a+132>>2]|0;c[e+20>>2]=b;if(b|0){j=b+4|0;c[j>>2]=(c[j>>2]|0)+1}j=a+68|0;i=c[j>>2]|0;c[i>>2]=9;c[i+8>>2]=e;i=e+4|0;c[i>>2]=(c[i>>2]|0)+1;i=a+64|0;c[j>>2]=(c[j>>2]|0)+16;b=0-g|0;e=vq(a,0,b,g,f)|0;e=((e|0)<0?g:0)+e|0;d=c[i>>2]|0;d=(c[j>>2]|0)-d>>4>>>0>1?d+16|0:0;if((c[((d|0)==0?936:d)>>2]|0)!=2){f=vq(a,1,b,g,f)|0;g=((f|0)<0?g:0)+f|0}a:do if((e|0)<(g|0)){d=0;b=0;while(1){if(!(Np(a,2,e)|0)){c[j>>2]=(c[j>>2]|0)+-16;d=d+1|0}else{b=c[i>>2]|0;b=(c[j>>2]|0)-b>>4>>>0>4?b+64|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9){b=13;break}b=c[b+8>>2]|0;if(!b){b=13;break}Co(a,b,d);d=d+1|0;b=d}e=e+1|0;if((e|0)>=(g|0)){k=b;break a}}if((b|0)==13)In(a,2130,4,268963)}else k=0;while(0);b=c[j>>2]|0;if(b>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4274);g=b+16|0;c[j>>2]=g;c[b>>2]=0;h[b+8>>3]=+(k>>>0);b=c[i>>2]|0;b=g-b>>4>>>0>4?b+64|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9)In(a,2130,4,268963);b=c[b+8>>2]|0;if(!b)In(a,2130,4,268963);else{fo(a,b,c[(c[a+304>>2]|0)+328>>2]|0,1);l=m;return 1}return 0}function Nr(a){a=a|0;var b=0;b=Kv(a)|0;if((b|0)<0)Jn(a,279626,50331727,269798);if(b|0)Lv(a,0,b+-1|0);a=a+68|0;b=(c[a>>2]|0)+-16|0;c[a>>2]=b;c[b>>2]=2;return 1}function Or(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0;r=l;l=l+16|0;e=r;q=a+68|0;p=a+64|0;b=(c[q>>2]|0)-(c[p>>2]|0)|0;if((b|0)<32){Gp(a,2);n=0;b=0}else{n=(b>>>4)+-2|0;b=1}o=Kv(a)|0;if((o|0)<0)Jn(a,279626,50331727,269798);j=vq(a,0,0-o|0,o,e)|0;j=((j|0)<0?o:0)+j|0;d=o-j|0;if(b)d=vq(a,1,0,d,e)|0;m=zQ(o|0,((o|0)<0)<<31>>31|0,d|0,((d|0)<0)<<31>>31|0)|0;m=yQ(n|0,((n|0)<0)<<31>>31|0,m|0,z|0)|0;k=z;if((k|0)>0|(k|0)==0&m>>>0>4294967295)Jn(a,279626,50332612,269798);f=vo(a,48)|0;b=c[a+44>>2]|0;c[f>>2]=272679041;b=b+24|0;e=c[b>>2]|0;if(e|0)c[e+12>>2]=f;c[f+12>>2]=0;c[f+8>>2]=e;c[b>>2]=f;b=c[a+132>>2]|0;c[f+20>>2]=b;if(b|0){m=b+4|0;c[m>>2]=(c[m>>2]|0)+1}b=c[q>>2]|0;c[b>>2]=9;c[b+8>>2]=f;b=f+4|0;c[b>>2]=(c[b>>2]|0)+1;b=(c[q>>2]|0)+16|0;c[q>>2]=b;do if((d|0)>0){e=0;while(1){if(!(Np(a,-3,e+j|0)|0))c[q>>2]=(c[q>>2]|0)+-16;else{m=c[p>>2]|0;b=(c[q>>2]|0)-m>>4;b=b>>>0>1?m+(b+-2<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9){b=18;break}b=c[b+8>>2]|0;if(!b){b=18;break}Co(a,b,e)}e=e+1|0;if((e|0)>=(d|0)){b=22;break}}if((b|0)==18)In(a,2130,-2,268963);else if((b|0)==22){g=c[q>>2]|0;break}}else g=b;while(0);k=a+56|0;if(g>>>0>=(c[k>>2]|0)>>>0)Un(a,4274);b=g+16|0;c[q>>2]=b;c[g>>2]=0;h[g+8>>3]=+(d>>>0);m=c[p>>2]|0;b=b-m>>4;b=b>>>0>1?m+(b+-2<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9)In(a,2130,-2,268963);b=c[b+8>>2]|0;if(!b)In(a,2130,-2,268963);m=a+304|0;fo(a,b,c[(c[m>>2]|0)+328>>2]|0,1);a:do if((n|0)<(d|0)){i=o-d|0;b:do if((j|0)<(i|0)){b=j;while(1){if(!(Np(a,-3,b+d|0)|0)){e=c[q>>2]|0;f=e+-16|0;c[q>>2]=f;g=f-(c[p>>2]|0)>>4;if(g>>>0<=2){b=33;break}if(f>>>0>=(c[k>>2]|0)>>>0){b=35;break}c[q>>2]=e;c[f>>2]=0;h[e+-8>>3]=+((b+n|0)>>>0);Aq(a,g+-3|0)}else mq(a,-4,b+n|0);b=b+1|0;if((b|0)>=(i|0))break b}if((b|0)==33)jo(a,300,-3);else if((b|0)==35)Un(a,4274)}while(0);e=i+n|0;if((o|0)>(e|0)){b=o;while(1){b=b+-1|0;g=c[q>>2]|0;f=g-(c[p>>2]|0)>>4;if(f>>>0<=2){b=40;break}if(g>>>0>=(c[k>>2]|0)>>>0){b=42;break}c[q>>2]=g+16;c[g>>2]=0;h[g+8>>3]=+(b>>>0);Aq(a,f+-3|0);if((b|0)<=(e|0))break a}if((b|0)==40)jo(a,300,-3);else if((b|0)==42)Un(a,4274)}}else if((n|0)>(d|0)?(i=o-d|0,(i|0)>(j|0)):0){b=i;while(1){b=b+-1|0;if(!(Np(a,-3,b+d|0)|0)){e=c[q>>2]|0;f=e+-16|0;c[q>>2]=f;g=f-(c[p>>2]|0)>>4;if(g>>>0<=2){b=51;break}if(f>>>0>=(c[k>>2]|0)>>>0){b=53;break}c[q>>2]=e;c[f>>2]=0;h[e+-8>>3]=+((b+n|0)>>>0);Aq(a,g+-3|0)}else mq(a,-4,b+n|0);if((b|0)<=(j|0))break a}if((b|0)==51)jo(a,300,-3);else if((b|0)==53)Un(a,4274)}while(0);c:do if((n|0)>0){b=0;while(1){g=b+2|0;e=c[q>>2]|0;if(e>>>0>=(c[k>>2]|0)>>>0){b=56;break}f=c[p>>2]|0;if(g>>>0>=e-f>>4>>>0){b=58;break}i=f+(g<<4)|0;c[q>>2]=e+16;c[e>>2]=c[i>>2];c[e+4>>2]=c[i+4>>2];c[e+8>>2]=c[i+8>>2];c[e+12>>2]=c[i+12>>2];if(c[e>>2]&8|0){i=(c[e+8>>2]|0)+4|0;c[i>>2]=(c[i>>2]|0)+1}mq(a,-4,b+j|0);b=b+1|0;if((b|0)>=(n|0))break c}if((b|0)==56)Un(a,1093);else if((b|0)==58)jo(a,376,g)}while(0);j=c[q>>2]|0;g=c[k>>2]|0;if(j>>>0>=g>>>0)Un(a,4274);i=j+16|0;c[q>>2]=i;c[j>>2]=0;h[j+8>>3]=+((o+n-d|0)>>>0);e=i-(c[p>>2]|0)|0;o=e>>4;f=o+-4|0;if(o>>>0<=3)jo(a,300,-4);b=c[(c[m>>2]|0)+328>>2]|0;if(i>>>0>=g>>>0)Un(a,4153);c[q>>2]=j+32;c[i>>2]=8;c[j+24>>2]=b;g=b+4|0;c[g>>2]=(c[g>>2]|0)+1;g=c[p>>2]|0;d=(c[q>>2]|0)-g>>4;b=((e|0)<64?d:0)+f|0;if(b>>>0>=d>>>0)jo(a,376,f);e=g+(b<<4)|0;f=g+(d+-1<<4)|0;if((d|0)==1)jo(a,376,-2);b=d+-2|0;d=c[a+72>>2]|0;if(!d){q=1;o=g+(b<<4)|0;o=c[o>>2]|0;p=g+(b<<4)+4|0;p=c[p>>2]|0;n=g+(b<<4)+8|0;s=+h[n>>3];No(a,e,f,o,p,s,q)|0;uq(a);l=r;return 1}q=c[d+52>>2]&1;o=g+(b<<4)|0;o=c[o>>2]|0;p=g+(b<<4)+4|0;p=c[p>>2]|0;n=g+(b<<4)+8|0;s=+h[n>>3];No(a,e,f,o,p,s,q)|0;uq(a);l=r;return 1}function Pr(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+32|0;o=q+16|0;m=q;n=a+68|0;g=c[n>>2]|0;i=a+56|0;if(g>>>0>=(c[i>>2]|0)>>>0)Un(a,4361);c[n>>2]=g+16;if(!(c[a+72>>2]|0))Jn(a,268620,100667685,269813);p=a+64|0;b=c[p>>2]|0;e=b+-16|0;f=c[e>>2]|0;if((f&-2|0)==2)Jn(a,268620,100667685,269813);c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];if(f&8|0){j=(c[b+-8>>2]|0)+4|0;c[j>>2]=(c[j>>2]|0)+1}to(a,-1);b=c[n>>2]|0;g=b-(c[p>>2]|0)|0;j=g>>4;h=j+-1|0;if(!j)jo(a,300,-1);j=a+304|0;e=c[(c[j>>2]|0)+152>>2]|0;if(b>>>0>=(c[i>>2]|0)>>>0)Un(a,4153);c[n>>2]=b+16;c[b>>2]=8;c[b+8>>2]=e;e=e+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[p>>2]|0;f=(c[n>>2]|0)-e>>4;b=((g|0)<16?f:0)+h|0;if(b>>>0>=f>>>0)jo(a,376,h);ro(a,e+(b<<4)|0,e+(f+-1<<4)|0)|0;e=c[p>>2]|0;f=(c[n>>2]|0)-e>>4;b=f+-2|0;if(f>>>0<=1)jo(a,376,-2);g=e+(b<<4)|0;h=e+(f+-1<<4)|0;i=c[g>>2]|0;b=c[e+(b<<4)+8>>2]|0;QQ(g|0,g+16|0,h-g|0)|0;c[h>>2]=2;e=(c[n>>2]|0)+-16|0;c[n>>2]=e;if((i&8|0)!=0?(h=b+4|0,i=(c[h>>2]|0)+-1|0,c[h>>2]=i,(i|0)==0):0){Yn(c[a+44>>2]|0,b);e=c[n>>2]|0}g=c[p>>2]|0;b=g;h=e-b>>4;i=g+(h+-1<<4)|0;f=h|0?i:0;f=(f|0)==0?936:f;switch(c[f>>2]|0){case 9:{if(c[c[f+8>>2]>>2]&512|0)k=31;break}case 6:{k=31;break}default:{}}if((k|0)==31){if(h>>>0<=1)jo(a,376,-2);f=g+(h+-2<<4)|0;g=i-f|0;if(g){c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2];QQ(f+16|0,f|0,g|0)|0;c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];e=c[n>>2]|0;b=c[p>>2]|0}b=e-b|0;if((b|0)<32)Vn(a,268605,55);so(a,(b>>>4)+-2|0,0)|0;l=q;return 1}Gp(a,0);b=c[p>>2]|0;switch(c[b+-16>>2]|0){case 2:case 7:{b=0;break}case 3:{b=1;break}case 4:{b=8;break}case 5:{b=31;break}case 6:{b=5;break}case 8:{b=(c[c[b+-8>>2]>>2]&512|0)==0?7:2;break}case 9:{b=d[269291+((c[c[b+-8>>2]>>2]|0)>>>27)>>0]|0;break}case 10:{b=19;break}default:b=9}c[o>>2]=(c[(c[j>>2]|0)+(b<<2)>>2]|0)+28;Lo(a,269323,o);l=q;return 1}function Qr(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0;p=a+68|0;o=a+64|0;j=(c[p>>2]|0)-(c[o>>2]|0)>>4;b=Kv(a)|0;m=j+b|0;if(m>>>0<b>>>0)Jn(a,279626,50332902,269798);n=a+56|0;a:do if(b|0){while(1){b=b+-1|0;if(!(Np(a,-2,b)|0)){d=c[p>>2]|0;e=d+-16|0;c[p>>2]=e;f=e-(c[o>>2]|0)>>4;if(f>>>0<=1){b=9;break}if(e>>>0>=(c[n>>2]|0)>>>0){b=11;break}c[p>>2]=d;c[e>>2]=0;h[d+-8>>3]=+((b+j|0)>>>0);Aq(a,f+-2|0)}else mq(a,-3,b+j|0);if(!b)break a}if((b|0)==9)jo(a,300,-2);else if((b|0)==11)Un(a,4274)}while(0);e=c[p>>2]|0;b=c[n>>2]|0;d=e>>>0<b>>>0;b:do if(j){g=0;while(1){if(!d){b=14;break}d=c[o>>2]|0;f=e-d>>4;b=((g|0)<0?f:0)+g|0;if(b>>>0>=f>>>0){b=16;break}f=d+(b<<4)|0;c[p>>2]=e+16;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];if(c[e>>2]&8|0){f=(c[e+8>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)+1}mq(a,-3,g);b=g+1|0;f=c[p>>2]|0;e=c[n>>2]|0;d=f>>>0<e>>>0;if(b>>>0<j>>>0){g=b;e=f}else{i=d;k=f;l=e;break b}}if((b|0)==14)Un(a,1093);else if((b|0)==16)jo(a,376,g)}else{i=d;k=e;l=b}while(0);if(!i)Un(a,4274);b=k+16|0;c[p>>2]=b;c[k>>2]=0;h[k+8>>3]=+(m>>>0);if(b>>>0>=l>>>0)Un(a,1111);if((b-(c[o>>2]|0)|0)<16)jo(a,1114,-1);c[p>>2]=k+32;c[b>>2]=c[k>>2];c[b+4>>2]=c[k+4>>2];c[b+8>>2]=c[k+8>>2];c[b+12>>2]=c[k+12>>2];if(c[b>>2]&8|0){m=(c[k+24>>2]|0)+4|0;c[m>>2]=(c[m>>2]|0)+1}b=c[p>>2]|0;e=b-(c[o>>2]|0)|0;m=e>>4;f=m+-4|0;if(m>>>0<=3)jo(a,300,-4);d=c[(c[a+304>>2]|0)+328>>2]|0;if(b>>>0>=(c[n>>2]|0)>>>0)Un(a,4153);c[p>>2]=b+16;c[b>>2]=8;c[b+8>>2]=d;g=d+4|0;c[g>>2]=(c[g>>2]|0)+1;g=c[o>>2]|0;d=(c[p>>2]|0)-g>>4;b=((e|0)<64?d:0)+f|0;if(b>>>0>=d>>>0)jo(a,376,f);e=g+(b<<4)|0;f=g+(d+-1<<4)|0;if((d|0)==1)jo(a,376,-2);b=d+-2|0;d=c[a+72>>2]|0;if(!d){p=1;n=g+(b<<4)|0;n=c[n>>2]|0;o=g+(b<<4)+4|0;o=c[o>>2]|0;m=g+(b<<4)+8|0;q=+h[m>>3];No(a,e,f,n,o,q,p)|0;uq(a);return 1}p=c[d+52>>2]&1;n=g+(b<<4)|0;n=c[n>>2]|0;o=g+(b<<4)+4|0;o=c[o>>2]|0;m=g+(b<<4)+8|0;q=+h[m>>3];No(a,e,f,n,o,q,p)|0;uq(a);return 1}function Rr(a){a=a|0;var b=0,d=0,e=0,f=0.0,g=0,i=0,j=0,k=0;k=l;l=l+16|0;i=k;b=c[a+72>>2]|0;if(!b)Jn(a,268605,100663686,278444);if(!(c[b+52>>2]&4))Jn(a,268605,100663686,278444);Wq(a,0);j=a+68|0;d=c[j>>2]|0;b=c[a+64>>2]|0;b=(d|0)!=(b|0)?b:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(f=+h[b+8>>3],(iP(f)|0)!=0):0){if(f<-2147483648.0)Jn(a,278417,50332312,269798);b=~~f;if(!(f>2147483647.0))if((b|0)<0)Jn(a,278417,50332312,269798);else g=b;else g=2147483647}else g=0;e=a+56|0;if(d>>>0>=(c[e>>2]|0)>>>0)Un(a,5237);if(g>>>0>2147483646)Jn(a,268620,50336889,268576);d=a+44|0;b=ap(c[d>>2]|0,g,0,i)|0;if(!b)Mn(a,268620,5246);g=c[j>>2]|0;c[g>>2]=10;c[g+8>>2]=b;g=b+4|0;c[g>>2]=(c[g>>2]|0)+1;g=c[j>>2]|0;i=g+16|0;c[j>>2]=i;g=c[g+8>>2]|0;if(i>>>0>=(c[e>>2]|0)>>>0)Un(a,4988);e=vo(a,60)|0;b=c[d>>2]|0;c[e>>2]=-1744822143;b=b+24|0;d=c[b>>2]|0;if(d|0)c[d+12>>2]=e;c[e+12>>2]=0;c[e+8>>2]=d;c[b>>2]=e;b=c[a+256>>2]|0;c[e+20>>2]=b;if(!b){a=c[j>>2]|0;c[a>>2]=9;a=a+8|0;c[a>>2]=e;a=e+4|0;i=c[a>>2]|0;i=i+1|0;c[a>>2]=i;a=c[j>>2]|0;a=a+16|0;c[j>>2]=a;a=e+40|0;c[a>>2]=g;a=g+4|0;j=c[a>>2]|0;j=j+1|0;c[a>>2]=j;a=g+16|0;a=c[a>>2]|0;j=e+52|0;c[j>>2]=a;l=k;return 1}a=b+4|0;c[a>>2]=(c[a>>2]|0)+1;a=c[j>>2]|0;c[a>>2]=9;a=a+8|0;c[a>>2]=e;a=e+4|0;i=c[a>>2]|0;i=i+1|0;c[a>>2]=i;a=c[j>>2]|0;a=a+16|0;c[j>>2]=a;a=e+40|0;c[a>>2]=g;a=g+4|0;j=c[a>>2]|0;j=j+1|0;c[a>>2]=j;a=g+16|0;a=c[a>>2]|0;j=e+52|0;c[j>>2]=a;l=k;return 1}function Sr(b){b=b|0;var d=0,e=0,f=0,g=0;f=b+68|0;g=c[f>>2]|0;d=c[b+64>>2]|0;d=(g|0)!=(d|0)?d:0;d=(d|0)==0?936:d;switch(c[d>>2]|0){case 10:{d=1;break}case 9:{d=c[d+8>>2]|0;if((d|0)!=0?(e=c[d>>2]|0,(e&8192|0)!=0):0)d=((e&-134217728|0)==-1610612736|(a[d+58>>0]|0)!=0)&1;else d=0;break}default:d=0}if(g>>>0<(c[b+56>>2]|0)>>>0){c[f>>2]=g+16;c[g>>2]=4;c[g+8>>2]=d;return 1}else Un(b,4185);return 0}function Tr(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;Ro(a,0)|0;b=c[a+72>>2]|0;if(!b)return 1;if(!(c[b+52>>2]&4))return 1;g=a+68|0;d=c[g>>2]|0;e=a+56|0;if(d>>>0>=(c[e>>2]|0)>>>0)Un(a,4361);c[g>>2]=d+16;f=a+64|0;b=c[f>>2]|0;h=b+-16|0;c[d>>2]=c[h>>2];c[d+4>>2]=c[h+4>>2];c[d+8>>2]=c[h+8>>2];c[d+12>>2]=c[h+12>>2];if(c[h>>2]&8|0){h=(c[b+-8>>2]|0)+4|0;c[h>>2]=(c[h>>2]|0)+1}d=c[g>>2]|0;h=c[d+-8>>2]|0;c[h>>2]=c[h>>2]&134217727|671088640;if(d>>>0>=(c[e>>2]|0)>>>0)Un(a,1093);b=c[f>>2]|0;if((d|0)==(b|0))jo(a,376,0);c[g>>2]=d+16;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];if(c[d>>2]&8|0){h=(c[d+8>>2]|0)+4|0;c[h>>2]=(c[h>>2]|0)+1}h=c[f>>2]|0;b=(c[g>>2]|0)-h>>4;b=b>>>0>1?h+(b+-2<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9)In(a,2130,-2,268963);b=c[b+8>>2]|0;if(!b)In(a,2130,-2,268963);fo(a,b,c[(c[a+304>>2]|0)+404>>2]|0,0);return 1}function Ur(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=c[a+72>>2]|0;g=(d|0)==0;do if(!g){e=c[d+16>>2]|0;if(!e){l=(c[d+4>>2]|0)>>>8<<24>>24;break}if(c[e>>2]&4096)l=b[e+46>>1]|0;else l=0}else l=0;while(0);m=a+68|0;d=c[m>>2]|0;i=a+56|0;if(d>>>0>=(c[i>>2]|0)>>>0)Un(a,4361);c[m>>2]=d+16;k=a+64|0;if(!g?(f=c[k>>2]|0,h=f+-16|0,c[d>>2]=c[h>>2],c[d+4>>2]=c[h+4>>2],c[d+8>>2]=c[h+8>>2],c[d+12>>2]=c[h+12>>2],c[h>>2]&8|0):0){h=(c[f+-8>>2]|0)+4|0;c[h>>2]=(c[h>>2]|0)+1}e=c[m>>2]|0;d=c[k>>2]|0;g=e-d|0;f=g>>4;h=f+-1|0;d=f|0?d+(h<<4)|0:0;switch(c[d>>2]|0){case 4:break;case 9:{j=12;break}default:Vn(a,279609,39)}if((j|0)==12){if((c[c[d+8>>2]>>2]&-134217728|0)!=671088640)Vn(a,279609,39);if(!f)jo(a,300,-1);d=c[(c[a+304>>2]|0)+404>>2]|0;if(e>>>0>=(c[i>>2]|0)>>>0)Un(a,4153);c[m>>2]=e+16;c[e>>2]=8;c[e+8>>2]=d;e=d+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[k>>2]|0;f=(c[m>>2]|0)-e>>4;d=((g|0)<16?f:0)+h|0;if(d>>>0>=f>>>0)jo(a,376,h);ro(a,e+(d<<4)|0,e+(f+-1<<4)|0)|0;e=c[k>>2]|0;f=(c[m>>2]|0)-e>>4;d=f+-2|0;if(f>>>0<=1)jo(a,376,-2);i=e+(d<<4)|0;j=e+(f+-1<<4)|0;k=c[i>>2]|0;d=c[e+(d<<4)+8>>2]|0;QQ(i|0,i+16|0,j-i|0)|0;c[j>>2]=2;c[m>>2]=(c[m>>2]|0)+-16;if(k&8|0?(k=d+4|0,m=(c[k>>2]|0)+-1|0,c[k>>2]=m,(m|0)==0):0)Yn(c[a+44>>2]|0,d)}if(!l)return 1;Eo(a,-1)|0;return 1}function Vr(a){a=a|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;d=c[a+72>>2]|0;do if(d){e=c[d+16>>2]|0;if(!e)d=(c[d+4>>2]|0)>>>8<<24>>24;else{if(!(c[e>>2]&4096)){d=0;m=14;break}d=b[e+46>>1]|0}if(!(d&2))m=14;else{j=a+68|0;i=a+64|0;e=c[i>>2]|0;if((c[j>>2]|0)==(e|0))jo(a,376,0);switch(c[e>>2]|0){case 9:{f=c[e+8>>2]|0;if(!(c[f>>2]&8192))Jn(a,278417,100663514,278433);else{g=f;l=e}break}case 10:{to(a,0);l=c[i>>2]|0;g=c[l+8>>2]|0;break}default:Jn(a,278417,100663514,278433)}n=d;k=g;g=j;f=i;i=j;e=1;d=l}}else{d=0;m=14}while(0);if((m|0)==14){k=Pu(a,3)|0;m=a+64|0;i=a+68|0;n=d;g=i;f=m;e=0;d=c[m>>2]|0}if(e>>>0>=(c[g>>2]|0)-d>>4>>>0)jo(a,376,e);switch(c[d+(e<<4)>>2]|0){case 9:{d=c[d+(e<<4)+8>>2]|0;if(!(c[d>>2]&8192))Jn(a,278417,100663514,278433);else o=d;break}case 10:{to(a,e);o=c[(c[f>>2]|0)+(e<<4)+8>>2]|0;break}default:Jn(a,278417,100663514,278433)}f=c[k+48>>2]|0;g=c[k+52>>2]|0;d=c[k+40>>2]|0;if((g+f|0)>>>0<=(c[d+16>>2]|0)>>>0?(q=c[o+48>>2]|0,r=c[o+52>>2]|0,p=c[o+40>>2]|0,(r+q|0)>>>0<=(c[p+16>>2]|0)>>>0):0){if(!(c[d>>2]&128))e=d+24|0;else e=c[d+20>>2]|0;if(!(c[p>>2]&128))d=p+24|0;else d=c[p+20>>2]|0;d=KN(e+f|0,d+q|0,g>>>0<=r>>>0?g:r)|0;if((d|0)>=0)if(!d)d=g>>>0<r>>>0?-1:g>>>0>r>>>0&1;else d=1;else d=-1}else d=-1;e=c[i>>2]|0;f=e>>>0<(c[a+56>>2]|0)>>>0;if(!(n&1)){if(!f)Un(a,4185);c[i>>2]=e+16;c[e>>2]=4;c[e+8>>2]=(d|0)==0&1;return 1}else{if(!f)Un(a,4244);c[i>>2]=e+16;c[e>>2]=0;h[e+8>>3]=+(d|0);return 1}return 0}function Wr(e){e=e|0;var f=0.0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0;i=c[e+72>>2]|0;do if(i){k=c[i+16>>2]|0;if(!k){m=(c[i+4>>2]|0)>>>8<<24>>24;break}if(c[k>>2]&4096)m=b[k+46>>1]|0;else m=0}else m=0;while(0);v=m&8;y=m&16;k=Pu(e,3)|0;l=c[k+52>>2]|0;if(!(m&32)){u=v;A=Ro(e,(m&7|0)==5?2:1)|0}else{u=(Ro(e,1)|0)==0&1;A=0}Wq(e,0);B=e+68|0;o=c[B>>2]|0;p=c[e+64>>2]|0;q=p;i=(o|0)!=(q|0)?p:0;i=(i|0)==0?936:i;C=o;if((c[i>>2]|0)==0?(f=+h[i+8>>3],(iP(f)|0)!=0):0){if(!(f<-2147483648.0)){i=~~f;if(!(f>2147483647.0)){if((i|0)>=0){x=i;r=14}}else{x=2147483647;r=14}}}else{x=0;r=14}a:do if((r|0)==14?(n=c[k+40>>2]|0,t=c[k+48>>2]|0,r=c[n+16>>2]|0,w=r-t|0,w=r>>>0<t>>>0?0:w>>>0>=l>>>0?l:w,n|0):0){if(!(c[n>>2]&128))i=n+24|0;else i=c[n+20>>2]|0;k=i+t|0;switch(m&7){case 0:{if((x+1|0)>>>0>w>>>0)break a;i=a[k+x>>0]|0;k=C>>>0<(c[e+56>>2]|0)>>>0;if(!y){if(!k)Un(e,4274);f=+(i&255);e=C+16|0;c[B>>2]=e;c[C>>2]=0;e=C+8|0;h[e>>3]=f;return 1}else{if(!k)Un(e,4244);f=+(i<<24>>24);e=C+16|0;c[B>>2]=e;c[C>>2]=0;e=C+8|0;h[e>>3]=f;return 1}}case 1:{if((x+2|0)>>>0>w>>>0)break a;k=k+x|0;k=d[k>>0]|d[k+1>>0]<<8;i=LQ(k|0)|0;i=(u|0)==0?k:i;k=C>>>0<(c[e+56>>2]|0)>>>0;if(!y){if(!k)Un(e,4274);f=+(i&65535);e=C+16|0;c[B>>2]=e;c[C>>2]=0;e=C+8|0;h[e>>3]=f;return 1}else{if(!k)Un(e,4244);f=+(i<<16>>16);e=C+16|0;c[B>>2]=e;c[C>>2]=0;e=C+8|0;h[e>>3]=f;return 1}}case 2:{if((x+4|0)>>>0>w>>>0)break a;k=k+x|0;k=d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24;i=MQ(k|0)|0;i=(u|0)==0?k:i;k=C>>>0<(c[e+56>>2]|0)>>>0;if(!y){if(!k)Un(e,4274);f=+(i>>>0);e=C+16|0;c[B>>2]=e;c[C>>2]=0;e=C+8|0;h[e>>3]=f;return 1}else{if(!k)Un(e,4244);f=+(i|0);e=C+16|0;c[B>>2]=e;c[C>>2]=0;e=C+8|0;h[e>>3]=f;return 1}}case 3:{if((x+4|0)>>>0>w>>>0)break a;k=k+x|0;k=d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24;i=MQ(k|0)|0;if(C>>>0<(c[e+56>>2]|0)>>>0){f=(c[j>>2]=(u|0)==0?k:i,+g[j>>2]);e=C+16|0;c[B>>2]=e;c[C>>2]=0;e=C+8|0;h[e>>3]=f;return 1}else Un(e,4215);break}case 4:{if((x+8|0)>>>0>w>>>0)break a;i=k+x|0;a[j>>0]=a[i>>0];a[j+1>>0]=a[i+1>>0];a[j+2>>0]=a[i+2>>0];a[j+3>>0]=a[i+3>>0];a[j+4>>0]=a[i+4>>0];a[j+5>>0]=a[i+5>>0];a[j+6>>0]=a[i+6>>0];a[j+7>>0]=a[i+7>>0];f=+h[j>>3];h[j>>3]=f;i=c[j+4>>2]|0;if(u){y=MQ(c[j>>2]|0)|0;x=MQ(i|0)|0;c[j>>2]=x;c[j+4>>2]=y;f=+h[j>>3]}if(C>>>0<(c[e+56>>2]|0)>>>0){e=C+16|0;c[B>>2]=e;c[C>>2]=0;e=C+8|0;h[e>>3]=f;return 1}else Un(e,4215);break}case 5:{i=o-q>>4>>>0>1?p+16|0:0;i=(i|0)==0?936:i;if(c[i>>2]|0)break a;f=+h[i+8>>3];if(f<-2147483648.0|(iP(f)|0)==0)break a;p=~~f;if(f>2147483647.0)break a;i=p+-1|0;if(i>>>0>5|(p+x|0)>>>0>w>>>0)break a;m=k+x|0;n=(v|0)==0;l=(v>>>2)+-1|0;k=n?-1:p;i=n?i:0;n=0;o=0;do{x=KQ(n|0,o|0,8)|0;o=z;n=d[m+i>>0]|x;i=l+i|0}while((i|0)!=(k|0));k=(y|0)==0;i=64-(p<<3)|0;y=KQ(n|0,o|0,i|0)|0;i=IQ(y|0,z|0,i|0)|0;if(C>>>0<(c[e+56>>2]|0)>>>0){f=+((k?n:i)>>>0)+4294967296.0*+((k?o:z)|0);e=C+16|0;c[B>>2]=e;c[C>>2]=0;e=C+8|0;h[e>>3]=f;return 1}else Un(e,4215);break}default:break a}}while(0);if(!A)Jn(e,278417,50334151,269834);if(C>>>0<(c[e+56>>2]|0)>>>0){f=s;e=C+16|0;c[B>>2]=e;c[C>>2]=0;e=C+8|0;h[e>>3]=f;return 1}else Un(e,4286);return 0}function Xr(e){e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+16|0;z=A;f=c[e+72>>2]|0;do if(f){g=c[f+16>>2]|0;if(!g){u=(c[f+4>>2]|0)>>>8<<24>>24;break}if(c[g>>2]&4096)u=b[g+46>>1]|0;else u=0}else u=0;while(0);y=e+64|0;f=c[y>>2]|0;w=(u&2|0)!=0;if(!((c[f+-16>>2]|0)!=10|w^1)){p=c[f+-8>>2]|0;n=c[p+16>>2]|0;Wq(e,0);q=e+68|0;f=c[q>>2]|0;i=c[y>>2]|0;j=i;g=(f|0)!=(j|0)?i:0;g=(g|0)==0?936:g;if((c[g>>2]|0)==0?(m=+h[g+8>>3],(iP(m)|0)!=0):0)if(!(m<-2147483648.0))if(m>2147483647.0)g=2147483647;else g=~~m;else g=-2147483648;else g=0;k=((g|0)<0?n:0)+g|0;x=f-j>>4>>>0>1?i+16|0:0;if((c[((x|0)==0?936:x)>>2]|0)==2)g=n;else{Wq(e,1);i=c[q>>2]|0;f=c[y>>2]|0;f=i-f>>4>>>0>1?f+16|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)==0?(r=+h[f+8>>3],(iP(r)|0)!=0):0)if(!(r<-2147483648.0))if(r>2147483647.0)f=2147483647;else f=~~r;else f=-2147483648;else f=0;g=((f|0)<0?n:0)+f|0;f=i}i=(k|0)<0?0:(k|0)>(n|0)?n:k;g=((g|0)<(i|0)?i:(g|0)>(n|0)?n:g)-i|0;if(f>>>0>=(c[e+56>>2]|0)>>>0)Un(e,5237);if(g>>>0>2147483646)Jn(e,268620,50336889,268576);f=ap(c[e+44>>2]|0,g,4,z)|0;if(!f)Mn(e,268620,5246);e=c[q>>2]|0;c[e>>2]=10;c[e+8>>2]=f;e=f+4|0;c[e>>2]=(c[e>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+16;if(!(c[p>>2]&128))f=p+24|0;else f=c[p+20>>2]|0;PQ(c[z>>2]|0,f+i|0,g|0)|0;l=A;return 1}v=Pu(e,3)|0;t=v+56|0;n=d[t>>0]|0;p=c[v+52>>2]>>n;Wq(e,0);x=e+68|0;g=c[x>>2]|0;i=c[y>>2]|0;j=i;f=(g|0)!=(j|0)?i:0;f=(f|0)==0?936:f;if((c[f>>2]|0)==0?(o=+h[f+8>>3],(iP(o)|0)!=0):0)if(!(o<-2147483648.0))if(o>2147483647.0)f=2147483647;else f=~~o;else f=-2147483648;else f=0;k=((f|0)<0?p:0)+f|0;q=g-j>>4>>>0>1?i+16|0:0;if((c[((q|0)==0?936:q)>>2]|0)==2)f=p;else{Wq(e,1);g=c[x>>2]|0;f=c[y>>2]|0;f=g-f>>4>>>0>1?f+16|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)==0?(s=+h[f+8>>3],(iP(s)|0)!=0):0)if(!(s<-2147483648.0))if(s>2147483647.0)f=2147483647;else f=~~s;else f=-2147483648;else f=0;f=((f|0)<0?p:0)+f|0}k=(k|0)<0?0:(k|0)>(p|0)?p:k;q=k<<n;k=(((f|0)<(k|0)?k:(f|0)>(p|0)?p:f)<<n)-q|0;f=(c[v>>2]|0)>>>27;i=u&4|0?50:d[279598+(f+-19)>>0]|0;j=e+56|0;if(g>>>0>=(c[j>>2]|0)>>>0)Un(e,4988);n=vo(e,60)|0;p=e+44|0;g=c[p>>2]|0;c[n>>2]=f<<27|8321;f=g+24|0;g=c[f>>2]|0;if(g|0)c[g+12>>2]=n;c[n+12>>2]=0;c[n+8>>2]=g;c[f>>2]=n;f=c[e+100+(i<<2)>>2]|0;c[n+20>>2]=f;if(f|0){i=f+4|0;c[i>>2]=(c[i>>2]|0)+1}i=c[x>>2]|0;c[i>>2]=9;c[i+8>>2]=n;i=n+4|0;c[i>>2]=(c[i>>2]|0)+1;i=(c[x>>2]|0)+16|0;c[x>>2]=i;a[n+56>>0]=a[t>>0]|0;a[n+57>>0]=a[v+57>>0]|0;a[n+58>>0]=u&1;g=v+40|0;f=c[g>>2]|0;if(!f)Vn(e,278417,1994);if(!w){c[n+40>>2]=f;f=f+4|0;c[f>>2]=(c[f>>2]|0)+1;c[n+52>>2]=k;c[n+48>>2]=(c[v+48>>2]|0)+q;f=c[v+44>>2]|0;c[n+44>>2]=f;if(!f){l=A;return 1}e=f+4|0;c[e>>2]=(c[e>>2]|0)+1;l=A;return 1}if(i>>>0>=(c[j>>2]|0)>>>0)Un(e,5237);if(k>>>0>2147483646)Jn(e,268620,50336889,268576);f=ap(c[p>>2]|0,k,0,z)|0;if(!f)Mn(e,268620,5246);i=c[x>>2]|0;c[i>>2]=10;c[i+8>>2]=f;f=f+4|0;c[f>>2]=(c[f>>2]|0)+1;c[x>>2]=(c[x>>2]|0)+16;f=c[g>>2]|0;i=c[v+48>>2]|0;g=c[f+16>>2]|0;j=g-i|0;if(!(c[f>>2]&128))f=f+24|0;else f=c[f+20>>2]|0;PQ(c[z>>2]|0,f+i+q|0,(g>>>0<i>>>0?0:j>>>0>=k>>>0?k:j)|0)|0;f=c[x>>2]|0;g=f+-8|0;z=c[g>>2]|0;c[n+40>>2]=z;z=z+4|0;c[z>>2]=(c[z>>2]|0)+1;c[n+52>>2]=k;if((f|0)==(c[y>>2]|0))Jn(e,268620,50337407,268636);z=f+-16|0;c[x>>2]=z;e=c[f+-16>>2]|0;f=c[g>>2]|0;c[z>>2]=2;if(!(e&8)){l=A;return 1}z=f+4|0;e=(c[z>>2]|0)+-1|0;c[z>>2]=e;if(e|0){l=A;return 1}Yn(c[p>>2]|0,f);l=A;return 1}function Yr(e){e=e|0;var f=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+32|0;o=H+8|0;C=H;f=c[e+72>>2]|0;do if(f){k=c[f+16>>2]|0;if(!k){u=(c[f+4>>2]|0)>>>8<<24>>24;break}if(c[k>>2]&4096)u=b[k+46>>1]|0;else u=0}else u=0;while(0);p=u&7;v=u&8;q=Pu(e,3)|0;s=c[q+52>>2]|0;F=(u&32|0)!=0;a:do if(F){f=Ro(e,2)|0;k=e+68|0;m=e+64|0;n=c[m>>2]|0;switch((c[k>>2]|0)-n>>4|0){case 0:{jo(e,376,0);break}case 1:{jo(e,376,1);break}default:{y=n+16|0;c[o>>2]=c[n>>2];c[o+4>>2]=c[n+4>>2];c[o+8>>2]=c[n+8>>2];c[o+12>>2]=c[n+12>>2];c[n>>2]=c[y>>2];c[n+4>>2]=c[y+4>>2];c[n+8>>2]=c[y+8>>2];c[n+12>>2]=c[y+12>>2];c[y>>2]=c[o>>2];c[y+4>>2]=c[o+4>>2];c[y+8>>2]=c[o+8>>2];c[y+12>>2]=c[o+12>>2];y=(f|0)==0&1;w=0;x=k;D=m;G=k;break a}}}else{G=e+68|0;y=v;w=Ro(e,(p|0)==5?3:2)|0;x=G;D=e+64|0}while(0);Wq(e,1);m=c[x>>2]|0;n=c[D>>2]|0;o=n;k=m-o>>4;f=k>>>0>1?n+16|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)==0?(i=+h[f+8>>3],(iP(i)|0)!=0):0)if(!(i<-2147483648.0))if(i>2147483647.0)E=2147483647;else E=~~i;else E=-2147483648;else E=0;if((p|0)==5){f=k>>>0>2?n+32|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)==0?(r=+h[f+8>>3],(iP(r)|0)!=0):0)if(!(r<-2147483648.0)){k=~~r;if(!(r>2147483647.0)){if(!((E|0)<0|(k+-1|0)>>>0>5))t=24}else k=2147483647}else k=-2147483648;else k=0}else{k=d[279592+p>>0]|0;if((E|0)>=0)t=24}b:do if((t|0)==24){if((m|0)==(o|0))jo(e,300,0);r=+ho(e,n);o=c[D>>2]|0;t=c[o>>2]|0;p=o+8|0;f=c[p>>2]|0;c[o>>2]=0;h[p>>3]=r;if(t&8|0?(p=f+4|0,t=(c[p>>2]|0)+-1|0,c[p>>2]=t,(t|0)==0):0)Yn(c[e+44>>2]|0,f);f=c[q+40>>2]|0;n=c[q+48>>2]|0;t=c[f+16>>2]|0;m=t-n|0;m=t>>>0<n>>>0?0:m>>>0>=s>>>0?s:m;if(f){if(!(c[f>>2]&128))f=f+24|0;else f=c[f+20>>2]|0;n=f+n|0;switch(u&7){case 0:{if((E+1|0)>>>0>m>>>0)break b;a[n+E>>0]=_p(e,0)|0;break}case 1:{if((E+2|0)>>>0>m>>>0)break b;x=(_p(e,0)|0)&65535;D=LQ(x|0)|0;y=(y|0)==0?x:D;b[C>>1]=y;D=n+E|0;a[D>>0]=y;a[D+1>>0]=y>>8;break}case 2:{if((E+4|0)>>>0>m>>>0)break b;x=_p(e,0)|0;D=MQ(x|0)|0;y=(y|0)==0?x:D;c[C>>2]=y;D=n+E|0;a[D>>0]=y;a[D+1>>0]=y>>8;a[D+2>>0]=y>>16;a[D+3>>0]=y>>24;break}case 3:{if((E+4|0)>>>0>m>>>0)break b;f=c[D>>2]|0;if((c[x>>2]|0)==(f|0))jo(e,300,0);i=+ho(e,f);w=c[D>>2]|0;D=c[w>>2]|0;x=w+8|0;f=c[x>>2]|0;c[w>>2]=0;h[x>>3]=i;if(D&8|0?(x=f+4|0,D=(c[x>>2]|0)+-1|0,c[x>>2]=D,(D|0)==0):0)Yn(c[e+44>>2]|0,f);r=i;g[C>>2]=r;f=(g[j>>2]=r,c[j>>2]|0);if(y){f=MQ(f|0)|0;c[C>>2]=f}D=n+E|0;a[D>>0]=f;a[D+1>>0]=f>>8;a[D+2>>0]=f>>16;a[D+3>>0]=f>>24;break}case 4:{if((E+8|0)>>>0>m>>>0)break b;f=c[D>>2]|0;if((c[x>>2]|0)==(f|0))jo(e,300,0);i=+ho(e,f);w=c[D>>2]|0;D=c[w>>2]|0;x=w+8|0;f=c[x>>2]|0;c[w>>2]=0;h[x>>3]=i;if(D&8|0?(x=f+4|0,D=(c[x>>2]|0)+-1|0,c[x>>2]=D,(D|0)==0):0)Yn(c[e+44>>2]|0,f);h[C>>3]=i;h[j>>3]=i;f=c[j+4>>2]|0;if(y){D=MQ(c[j>>2]|0)|0;c[C>>2]=MQ(f|0)|0;c[C+4>>2]=D;i=+h[C>>3]}D=n+E|0;h[j>>3]=i;a[D>>0]=a[j>>0];a[D+1>>0]=a[j+1>>0];a[D+2>>0]=a[j+2>>0];a[D+3>>0]=a[j+3>>0];a[D+4>>0]=a[j+4>>0];a[D+5>>0]=a[j+5>>0];a[D+6>>0]=a[j+6>>0];a[D+7>>0]=a[j+7>>0];break}case 5:{if((k+E|0)>>>0>m>>>0)break b;p=(v|0)==0;m=p?-1:k;q=(v>>>2^2)+-1|0;p=p?k+-1|0:0;f=c[D>>2]|0;if((c[x>>2]|0)==(f|0))jo(e,300,0);i=+ho(e,f);y=c[D>>2]|0;D=c[y>>2]|0;C=y+8|0;f=c[C>>2]|0;c[y>>2]=0;h[C>>3]=i;if(D&8|0?(C=f+4|0,D=(c[C>>2]|0)+-1|0,c[C>>2]=D,(D|0)==0):0)Yn(c[e+44>>2]|0,f);o=n+E|0;n=~~i>>>0;f=+B(i)>=1.0?(i>0.0?~~+P(+A(i/4294967296.0),4294967295.0)>>>0:~~+N((i-+(~~i>>>0))/4294967296.0)>>>0):0;while(1){m=q+m|0;a[o+m>>0]=n;n=IQ(n|0,f|0,8)|0;if((m|0)==(p|0))break;else f=z}break}default:break b}if(F){e=0;l=H;return e|0}f=c[G>>2]|0;if(f>>>0>=(c[e+56>>2]|0)>>>0)Un(e,4274);c[G>>2]=f+16;c[f>>2]=0;h[f+8>>3]=+((k+E|0)>>>0);e=1;l=H;return e|0}}while(0);if(!w)Jn(e,278417,50334425,269834);if(F){e=0;l=H;return e|0}f=c[G>>2]|0;if(f>>>0>=(c[e+56>>2]|0)>>>0)Un(e,4274);c[G>>2]=f+16;c[f>>2]=0;h[f+8>>3]=+((k+E|0)>>>0);e=1;l=H;return e|0}function Zr(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0.0,j=0,k=0,l=0.0,m=0,n=0,o=0,p=0,q=0;b=c[a+72>>2]|0;if(!b)Jn(a,268605,100663686,278444);if(!(c[b+52>>2]&4))Jn(a,268605,100663686,278444);n=a+68|0;j=a+64|0;b=c[j>>2]|0;if((c[n>>2]|0)==(b|0))jo(a,376,0);switch(c[b>>2]|0){case 9:{b=c[b+8>>2]|0;d=c[b>>2]|0;if(!(d&8192))Jn(a,278417,100663514,278433);else{q=b;e=d}break}case 10:{to(a,0);e=c[(c[j>>2]|0)+8>>2]|0;q=e;e=c[e>>2]|0;break}default:Jn(a,278417,100663514,278433)}if((e&-134217728|0)!=-1744830464)Vn(a,278417,1068);Wq(a,1);f=c[n>>2]|0;d=c[j>>2]|0;e=f-d>>4;b=e>>>0>1?d+16|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(i=+h[b+8>>3],(iP(i)|0)!=0):0){if(i<-2147483648.0)Jn(a,278417,50331941,269834);b=~~i;if(!(i>2147483647.0))if((b|0)<0)Jn(a,278417,50331941,269834);else o=b;else o=2147483647}else o=0;g=q+52|0;b=c[g>>2]|0;if(b>>>0<o>>>0)Jn(a,278417,50331941,269834);e=e>>>0>2?d+32|0:0;if((c[((e|0)==0?936:e)>>2]|0)!=2){Wq(a,2);d=c[n>>2]|0;b=c[j>>2]|0;b=d-b>>4>>>0>2?b+32|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(l=+h[b+8>>3],(iP(l)|0)!=0):0){if(l<-2147483648.0)Jn(a,278417,50331941,269834);b=~~l;if(!(l>2147483647.0))if((b|0)<0)Jn(a,278417,50331941,269834);else k=b;else k=2147483647;if(k>>>0>((c[g>>2]|0)-o|0)>>>0)Jn(a,278417,50331941,269834);else{p=k;m=d}}else{p=0;m=d}}else{p=b-o|0;m=f}if(m>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4988);e=vo(a,60)|0;b=c[a+44>>2]|0;c[e>>2]=-1610604415;b=b+24|0;d=c[b>>2]|0;if(d|0)c[d+12>>2]=e;c[e+12>>2]=0;c[e+8>>2]=d;c[b>>2]=e;b=c[a+260>>2]|0;c[e+20>>2]=b;if(b|0){m=b+4|0;c[m>>2]=(c[m>>2]|0)+1}b=c[n>>2]|0;c[b>>2]=9;c[b+8>>2]=e;b=e+4|0;c[b>>2]=(c[b>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+16;b=c[q+40>>2]|0;if(!b)Vn(a,278417,1083);else{c[e+40>>2]=b;a=b+4|0;c[a>>2]=(c[a>>2]|0)+1;c[e+48>>2]=(c[q+48>>2]|0)+o;c[e+52>>2]=p;c[e+44>>2]=q;a=q+4|0;c[a>>2]=(c[a>>2]|0)+1;return 1}return 0}function _r(a){a=a|0;var b=0,d=0.0,e=0,f=0,g=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,t=0,u=0;u=l;l=l+80|0;i=u+64|0;k=u;r=a+68|0;e=c[r>>2]|0;t=a+64|0;m=e-(c[t>>2]|0)>>4;o=a+72|0;b=c[o>>2]|0;if(!b)g=0;else g=(c[b+52>>2]|0)>>>2&1;q=a+56|0;if(e>>>0>=(c[q>>2]|0)>>>0)Un(a,4604);f=vo(a,40)|0;p=a+44|0;b=c[p>>2]|0;c[f>>2]=805322881;b=b+24|0;e=c[b>>2]|0;if(e|0)c[e+12>>2]=f;c[f+12>>2]=0;c[f+8>>2]=e;c[b>>2]=f;b=c[r>>2]|0;c[b>>2]=9;c[b+8>>2]=f;b=f+4|0;c[b>>2]=(c[b>>2]|0)+1;c[r>>2]=(c[r>>2]|0)+16;b=c[a+164>>2]|0;c[f+20>>2]=b;if(b|0){f=b+4|0;c[f>>2]=(c[f>>2]|0)+1}f=(g|0)!=0;if(!((m|0)!=0&f)){if(!(Ef(i|0,0)|0))d=+(c[i>>2]|0)*1.0e3+ +(c[i+4>>2]|0)/1.0e3;else d=0.0;d=+A(+d);h[j>>3]=d;b=c[j>>2]|0;e=c[j+4>>2]|0;p=e&2146435072;if(p>>>0<2146435072|(p|0)==2146435072&0<0?d>=-864.0e13&d<=864.0e13:0){d=+A(+(+B(+d)));d=(e|0)>-1|(e|0)==-1&b>>>0>4294967295?d:-d}else d=s;b=c[r>>2]|0;if(b>>>0>=(c[q>>2]|0)>>>0)Un(a,4215);q=b+16|0;c[r>>2]=q;c[b>>2]=0;h[b+8>>3]=d;t=c[t>>2]|0;b=q-t>>4;b=b>>>0>1?t+(b+-2<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9)In(a,2130,-2,268963);b=c[b+8>>2]|0;if(!b)In(a,2130,-2,268963);fo(a,b,c[(c[a+304>>2]|0)+404>>2]|0,1);if(f){l=u;return 1}Eo(a,-1)|0;l=u;return 1}if((m|0)==1){po(a,0,0);b=c[r>>2]|0;e=c[t>>2]|0;e=(b|0)!=(e|0)?e:0;e=(e|0)==0?936:e;if(((c[e>>2]|0)==8?(n=c[e+8>>2]|0,(n|0)!=0):0)?(c[n>>2]&512|0)==0:0){Jv(a,n+28|0);f=c[t>>2]|0;b=(c[r>>2]|0)-f>>4;if(!b)jo(a,376,-1);b=f+(b+-1<<4)|0;o=c[f>>2]|0;e=c[f+8>>2]|0;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];c[b>>2]=2;b=(c[r>>2]|0)+-16|0;c[r>>2]=b;if((o&8|0)!=0?(n=e+4|0,o=(c[n>>2]|0)+-1|0,c[n>>2]=o,(o|0)==0):0){Yn(c[p>>2]|0,e);b=c[r>>2]|0}}e=c[t>>2]|0;if((b|0)==(e|0))jo(a,300,0);d=+ho(a,e);m=c[t>>2]|0;o=c[m>>2]|0;n=m+8|0;b=c[n>>2]|0;c[m>>2]=0;h[n>>3]=d;if(o&8|0?(n=b+4|0,o=(c[n>>2]|0)+-1|0,c[n>>2]=o,(o|0)==0):0)Yn(c[p>>2]|0,b);h[j>>3]=d;b=c[j>>2]|0;e=c[j+4>>2]|0;p=e&2146435072;if(p>>>0<2146435072|(p|0)==2146435072&0<0?d>=-864.0e13&d<=864.0e13:0){d=+A(+(+B(+d)));d=(e|0)>-1|(e|0)==-1&b>>>0>4294967295?d:-d}else d=s;b=c[r>>2]|0;if(b>>>0>=(c[q>>2]|0)>>>0)Un(a,4215);q=b+16|0;c[r>>2]=q;c[b>>2]=0;h[b+8>>3]=d;t=c[t>>2]|0;b=q-t>>4;b=b>>>0>1?t+(b+-2<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9)In(a,2130,-2,268963);b=c[b+8>>2]|0;if(!b)In(a,2130,-2,268963);fo(a,b,c[(c[a+304>>2]|0)+404>>2]|0,1);l=u;return 1}Iv(a,k,m);d=+Gv(k,16);b=c[r>>2]|0;e=c[q>>2]|0;if(b>>>0>=e>>>0)Un(a,4215);f=b+16|0;c[r>>2]=f;c[b>>2]=0;h[b+8>>3]=d;if(f>>>0>=e>>>0)Un(a,1111);if((f-(c[t>>2]|0)|0)<16)jo(a,1114,-1);c[r>>2]=b+32;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];if(c[f>>2]&8|0){n=(c[b+24>>2]|0)+4|0;c[n>>2]=(c[n>>2]|0)+1}b=c[r>>2]|0;f=b-(c[t>>2]|0)|0;n=f>>4;g=n+-3|0;if(n>>>0<=2)jo(a,300,-3);e=c[(c[a+304>>2]|0)+404>>2]|0;if(b>>>0>=(c[q>>2]|0)>>>0)Un(a,4153);c[r>>2]=b+16;c[b>>2]=8;c[b+8>>2]=e;i=e+4|0;c[i>>2]=(c[i>>2]|0)+1;i=c[t>>2]|0;k=(c[r>>2]|0)-i>>4;f=((f|0)<48?k:0)+g|0;if(f>>>0>=k>>>0)jo(a,376,g);if((k|0)==1)jo(a,376,-2);e=k+-2|0;b=c[o>>2]|0;if(!b)b=1;else b=c[b+52>>2]&1;No(a,i+(f<<4)|0,i+(k+-1<<4)|0,c[i+(e<<4)>>2]|0,c[i+(e<<4)+4>>2]|0,+h[i+(e<<4)+8>>3],b)|0;uq(a);b=c[r>>2]|0;if((b|0)==(c[t>>2]|0))Jn(a,268620,50337407,268636);t=b+-16|0;c[r>>2]=t;a=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[t>>2]=2;if(!(a&8)){l=u;return 1}t=b+4|0;a=(c[t>>2]|0)+-1|0;c[t>>2]=a;if(a|0){l=u;return 1}Yn(c[p>>2]|0,b);l=u;return 1}function $r(a){a=a|0;var b=0,d=0.0,e=0,f=0;f=l;l=l+16|0;b=f;if(!(Ef(b|0,0)|0))d=+(c[b>>2]|0)*1.0e3+ +(c[b+4>>2]|0)/1.0e3;else d=0.0;b=a+68|0;e=c[b>>2]|0;if(e>>>0<(c[a+56>>2]|0)>>>0){d=+A(+d);c[b>>2]=e+16;c[e>>2]=0;h[e+8>>3]=d;l=f;return 1}else Un(a,4215);return 0}function as(a){a=a|0;Jv(a,Eo(a,0)|0);return 1}function bs(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0.0,i=0,j=0,k=0;k=l;l=l+64|0;d=k;j=a+68|0;f=c[j>>2]|0;e=f-(c[a+64>>2]|0)|0;if((e|0)<32)if(f>>>0<(c[a+56>>2]|0)>>>0){g=s;i=f}else Un(a,4286);else{Iv(a,d,e>>>4);b=+Gv(d,0);d=c[j>>2]|0;if(d>>>0<(c[a+56>>2]|0)>>>0){g=b;i=d}else Un(a,4215)}c[j>>2]=i+16;c[i>>2]=0;h[i+8>>3]=g;l=k;return 1}function cs(a){a=a|0;var d=0,f=0,g=0,i=0.0,k=0,m=0;m=l;l=l+32|0;g=m;d=c[a+72>>2]|0;do if(d){f=c[d+16>>2]|0;if(!f){d=(c[d+4>>2]|0)>>>8<<24>>24;break}if(c[f>>2]&4096)d=b[f+46>>1]|0;else d=0}else d=0;while(0);k=e[35338+(d<<1)>>1]|0;i=+Dv(a,k,0);h[j>>3]=i;f=c[j+4>>2]&2147483647;if(f>>>0>2146435072|(f|0)==2146435072&(c[j>>2]|0)>>>0>0){d=a+68|0;f=c[d>>2]|0;if(f>>>0<(c[a+56>>2]|0)>>>0){i=s;k=d;a=f;g=a+16|0;c[k>>2]=g;c[a>>2]=0;a=a+8|0;h[a>>3]=i;l=m;return 1}else Un(a,4286)}Fv(i,g,0,k);d=c[g+(k>>>12<<2)>>2]|0;f=a+68|0;g=c[f>>2]|0;if(g>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4244);i=+((k&32|0?d+-1900|0:d)|0);k=f;a=g;g=a+16|0;c[k>>2]=g;c[a>>2]=0;a=a+8|0;h[a>>3]=i;l=m;return 1}function ds(a){a=a|0;var b=0.0,d=0,e=0,f=0;b=+Dv(a,0,0);h[j>>3]=b;f=c[j+4>>2]&2147483647;if(f>>>0>2146435072|(f|0)==2146435072&(c[j>>2]|0)>>>0>0){d=a+68|0;e=c[d>>2]|0;if(e>>>0<(c[a+56>>2]|0)>>>0){b=s;f=d;a=e;e=a+16|0;c[f>>2]=e;c[a>>2]=0;a=a+8|0;h[a>>3]=b;return 1}else Un(a,4286)}d=Ev(b)|0;e=a+68|0;f=c[e>>2]|0;if(f>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4244);b=+((d|0)/-60|0|0);a=f;f=a+16|0;c[e>>2]=f;c[a>>2]=0;a=a+8|0;h[a>>3]=b;return 1}function es(a){a=a|0;var d=0,f=0,g=0,i=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;x=l;l=l+96|0;g=x+64|0;t=x;w=a+72|0;d=c[w>>2]|0;do if(d){f=c[d+16>>2]|0;if(!f){d=(c[d+4>>2]|0)>>>8<<24>>24;break}if(c[f>>2]&4096)d=b[f+46>>1]|0;else d=0}else d=0;while(0);n=e[35338+(d<<1)>>1]|0;o=n>>>12;v=a+68|0;u=a+64|0;d=(c[v>>2]|0)-(c[u>>2]|0)|0;p=d>>4;i=+Dv(a,n,0);h[j>>3]=i;q=c[j+4>>2]&2146435072;q=q>>>0<2146435072|(q|0)==2146435072&0<0;if(q)Fv(i,g,t,n);m=(n>>>7&4|3)-o|0;a:do if((o|0)!=0&(d|0)>0){k=a+44|0;if(!(n&1024)){d=0;while(1){g=d+m|0;f=c[u>>2]|0;if(d>>>0>=(c[v>>2]|0)-f>>4>>>0)break;i=+ho(a,f+(d<<4)|0);z=c[u>>2]|0;A=z+(d<<4)|0;y=c[A>>2]|0;z=z+(d<<4)+8|0;f=c[z>>2]|0;c[A>>2]=0;h[z>>3]=i;if(y&8|0?(z=f+4|0,A=(c[z>>2]|0)+-1|0,c[z>>2]=A,(A|0)==0):0)Yn(c[k>>2]|0,f);h[t+(g<<3)>>3]=(g|0)==2?i+-1.0:i;d=d+1|0;if(!(d>>>0<o>>>0&(d|0)<(p|0)))break a}jo(a,300,d)}else r=0;while(1){f=r+m|0;if(!f)Hv(a,r);d=c[u>>2]|0;if(r>>>0>=(c[v>>2]|0)-d>>4>>>0){d=r;break}i=+ho(a,d+(r<<4)|0);z=c[u>>2]|0;y=z+(r<<4)|0;A=c[y>>2]|0;z=z+(r<<4)+8|0;d=c[z>>2]|0;c[y>>2]=0;h[z>>3]=i;if(A&8|0?(z=d+4|0,A=(c[z>>2]|0)+-1|0,c[z>>2]=A,(A|0)==0):0)Yn(c[k>>2]|0,d);h[t+(f<<3)>>3]=(f|0)==2?i+-1.0:i;r=r+1|0;if(!(r>>>0<o>>>0&(r|0)<(p|0)))break a}jo(a,300,d)}while(0);if(!q){d=c[v>>2]|0;if(d>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4286);c[v>>2]=d+16;c[d>>2]=0;h[d+8>>3]=s;l=x;return 1}i=+Gv(t,n);d=c[v>>2]|0;k=a+56|0;f=c[k>>2]|0;if(d>>>0>=f>>>0)Un(a,4215);g=d+16|0;c[v>>2]=g;c[d>>2]=0;h[d+8>>3]=i;if(g>>>0>=f>>>0)Un(a,1111);if((g-(c[u>>2]|0)|0)<16)jo(a,1114,-1);c[v>>2]=d+32;c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];if(c[g>>2]&8|0){A=(c[d+24>>2]|0)+4|0;c[A>>2]=(c[A>>2]|0)+1}d=c[v>>2]|0;g=d-(c[u>>2]|0)|0;A=g>>4;n=A+-3|0;if(A>>>0<=2)jo(a,300,-3);f=c[(c[a+304>>2]|0)+404>>2]|0;if(d>>>0>=(c[k>>2]|0)>>>0)Un(a,4153);c[v>>2]=d+16;c[d>>2]=8;c[d+8>>2]=f;m=f+4|0;c[m>>2]=(c[m>>2]|0)+1;m=c[u>>2]|0;k=(c[v>>2]|0)-m>>4;g=((g|0)<48?k:0)+n|0;if(g>>>0>=k>>>0)jo(a,376,n);if((k|0)==1)jo(a,376,-2);f=k+-2|0;d=c[w>>2]|0;if(!d)d=1;else d=c[d+52>>2]&1;No(a,m+(g<<4)|0,m+(k+-1<<4)|0,c[m+(f<<4)>>2]|0,c[m+(f<<4)+4>>2]|0,+h[m+(f<<4)+8>>3],d)|0;uq(a);l=x;return 1}function fs(a){a=a|0;var b=0,d=0,e=0.0,f=0,g=0,i=0,k=0,l=0;+Dv(a,0,0);l=a+68|0;k=a+64|0;b=c[k>>2]|0;if((c[l>>2]|0)==(b|0))jo(a,300,0);e=+ho(a,b);f=c[k>>2]|0;i=c[f>>2]|0;g=f+8|0;b=c[g>>2]|0;c[f>>2]=0;h[g>>3]=e;if(i&8|0?(g=b+4|0,i=(c[g>>2]|0)+-1|0,c[g>>2]=i,(i|0)==0):0)Yn(c[a+44>>2]|0,b);h[j>>3]=e;b=c[j>>2]|0;d=c[j+4>>2]|0;i=d&2146435072;if(i>>>0<2146435072|(i|0)==2146435072&0<0?e>=-864.0e13&e<=864.0e13:0){e=+A(+(+B(+e)));e=(d|0)>-1|(d|0)==-1&b>>>0>4294967295?e:-e}else e=s;b=c[l>>2]|0;i=a+56|0;d=c[i>>2]|0;if(b>>>0>=d>>>0)Un(a,4215);f=b+16|0;c[l>>2]=f;c[b>>2]=0;h[b+8>>3]=e;if(f>>>0>=d>>>0)Un(a,1111);if((f-(c[k>>2]|0)|0)<16)jo(a,1114,-1);c[l>>2]=b+32;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];if(c[f>>2]&8|0){g=(c[b+24>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}b=c[l>>2]|0;f=b-(c[k>>2]|0)|0;d=f>>4;g=d+-3|0;if(d>>>0<=2)jo(a,300,-3);d=c[(c[a+304>>2]|0)+404>>2]|0;if(b>>>0>=(c[i>>2]|0)>>>0)Un(a,4153);c[l>>2]=b+16;c[b>>2]=8;c[b+8>>2]=d;i=d+4|0;c[i>>2]=(c[i>>2]|0)+1;i=c[k>>2]|0;d=(c[l>>2]|0)-i>>4;b=((f|0)<48?d:0)+g|0;if(b>>>0>=d>>>0)jo(a,376,g);f=i+(b<<4)|0;g=i+(d+-1<<4)|0;if((d|0)==1)jo(a,376,-2);b=d+-2|0;d=c[a+72>>2]|0;if(!d){l=1;d=i+(b<<4)|0;d=c[d>>2]|0;k=i+(b<<4)+4|0;k=c[k>>2]|0;i=i+(b<<4)+8|0;e=+h[i>>3];No(a,f,g,d,k,e,l)|0;uq(a);return 1}l=c[d+52>>2]&1;d=i+(b<<4)|0;d=c[d>>2]|0;k=i+(b<<4)+4|0;k=c[k>>2]|0;i=i+(b<<4)+8|0;e=+h[i>>3];No(a,f,g,d,k,e,l)|0;uq(a);return 1}function gs(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=a+68|0;d=c[j>>2]|0;i=a+56|0;if(d>>>0>=(c[i>>2]|0)>>>0)Un(a,4361);c[j>>2]=d+16;if(c[a+72>>2]|0?(b=c[a+64>>2]|0,h=b+-16|0,c[d>>2]=c[h>>2],c[d+4>>2]=c[h+4>>2],c[d+8>>2]=c[h+8>>2],c[d+12>>2]=c[h+12>>2],c[h>>2]&8|0):0){h=(c[b+-8>>2]|0)+4|0;c[h>>2]=(c[h>>2]|0)+1}to(a,-1);b=c[j>>2]|0;if(b>>>0>=(c[i>>2]|0)>>>0)Un(a,1111);h=a+64|0;if((b-(c[h>>2]|0)|0)<16)jo(a,1114,-1);g=b+-16|0;c[j>>2]=b+16;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];if(c[b>>2]&8|0){g=(c[b+8>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}po(a,-1,2);e=c[j>>2]|0;d=c[h>>2]|0;b=d;g=e-b>>4;g=g|0?d+(g+-1<<4)|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)==0?(0==0?(c[g+8+4>>2]&2146435072|0)==2146435072:0):0){if(e>>>0>=(c[i>>2]|0)>>>0)Un(a,4175);c[j>>2]=e+16;c[e>>2]=3;return 1}if((e|0)==(d|0))Jn(a,268620,50337407,268636);f=e+-16|0;c[j>>2]=f;g=c[e+-16>>2]|0;d=c[e+-8>>2]|0;c[f>>2]=2;e=f;if((g&8|0)!=0?(f=d+4|0,g=(c[f>>2]|0)+-1|0,c[f>>2]=g,(g|0)==0):0){Yn(c[a+44>>2]|0,d);e=c[j>>2]|0;b=c[h>>2]|0}f=e-b|0;d=f>>4;g=d+-1|0;if(!d)jo(a,300,-1);b=c[(c[a+304>>2]|0)+168>>2]|0;if(e>>>0>=(c[i>>2]|0)>>>0)Un(a,4153);c[j>>2]=e+16;c[e>>2]=8;c[e+8>>2]=b;d=b+4|0;c[d>>2]=(c[d>>2]|0)+1;d=c[h>>2]|0;e=(c[j>>2]|0)-d>>4;b=((f|0)<16?e:0)+g|0;if(b>>>0>=e>>>0)jo(a,376,g);ro(a,d+(b<<4)|0,d+(e+-1<<4)|0)|0;d=c[h>>2]|0;e=(c[j>>2]|0)-d>>4;b=e+-2|0;if(e>>>0<=1)jo(a,376,-2);k=d+(b<<4)|0;f=d+(e+-1<<4)|0;g=c[k>>2]|0;b=c[d+(b<<4)+8>>2]|0;QQ(k|0,k+16|0,f-k|0)|0;c[f>>2]=2;d=(c[j>>2]|0)+-16|0;c[j>>2]=d;if((g&8|0)!=0?(g=b+4|0,k=(c[g>>2]|0)+-1|0,c[g>>2]=k,(k|0)==0):0){Yn(c[a+44>>2]|0,b);d=c[j>>2]|0}if(d>>>0>=(c[i>>2]|0)>>>0)Un(a,1093);b=c[h>>2]|0;e=d-b>>4;if(e>>>0<=1)jo(a,376,-2);k=b+(e+-2<<4)|0;c[j>>2]=d+16;c[d>>2]=c[k>>2];c[d+4>>2]=c[k+4>>2];c[d+8>>2]=c[k+8>>2];c[d+12>>2]=c[k+12>>2];if(c[d>>2]&8|0){k=(c[d+8>>2]|0)+4|0;c[k>>2]=(c[k>>2]|0)+1}b=(c[j>>2]|0)-(c[h>>2]|0)|0;if((b|0)<32)Vn(a,268605,55);so(a,(b>>>4)+-2|0,0)|0;return 1}function hs(d){d=d|0;var f=0,g=0,i=0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+288|0;r=w+72|0;q=w+56|0;s=w+16|0;n=w+8|0;m=w;v=w+216|0;t=w+128|0;p=w+96|0;i=w+92|0;u=w+176|0;f=c[d+72>>2]|0;do if(f){g=c[f+16>>2]|0;if(!g){f=(c[f+4>>2]|0)>>>8<<24>>24;break}if(c[g>>2]&4096)f=b[g+46>>1]|0;else f=0}else f=0;while(0);o=e[35338+(f<<1)>>1]|0;k=+Dv(d,o,i);h[j>>3]=k;g=c[j+4>>2]&2147483647;if(g>>>0>2146435072|(g|0)==2146435072&(c[j>>2]|0)>>>0>0){f=c[(c[d+304>>2]|0)+264>>2]|0;g=d+68|0;i=c[g>>2]|0;if(i>>>0>=(c[d+56>>2]|0)>>>0)Un(d,4153);c[g>>2]=i+16;c[i>>2]=8;c[i+8>>2]=f;d=f+4|0;c[d>>2]=(c[d>>2]|0)+1;l=w;return 1}Fv(k,p,0,4);do if(!(o&256))f=c[p>>2]|0;else{f=c[p>>2]|0;if((f+-1970|0)>>>0>67)break;g=t+28|0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;c[t>>2]=c[p+20>>2];c[t+4>>2]=c[p+16>>2];c[t+8>>2]=c[p+12>>2];c[t+12>>2]=c[p+8>>2];c[t+16>>2]=(c[p+4>>2]|0)+-1;c[t+20>>2]=f+-1900;c[t+24>>2]=c[p+28>>2];c[t+32>>2]=0;f=v;g=f+64|0;do{a[f>>0]=0;f=f+1|0}while((f|0)<(g|0));f=(o&64|0)!=0;Tf(v|0,63,((o&128|0)==0|f^1?(f?279471:279474):279477)|0,t|0)|0;f=WO(v)|0;g=d+68|0;if((c[g>>2]|0)>>>0>=(c[d+56>>2]|0)>>>0)Un(d,4300);if((f|0)<0)Jn(d,268620,50335961,268982);d=Oo(d,v,f)|0;v=c[g>>2]|0;c[g>>2]=v+16;c[v>>2]=8;c[v+8>>2]=d;d=d+4|0;c[d>>2]=(c[d>>2]|0)+1;l=w;return 1}while(0);g=c[i>>2]|0;i=(o&2048|0)!=0;c[m>>2]=f;_O(v,8,f>>>0<1e4?279493:(f|0)>-1?279480:279487,m);a[v+7>>0]=0;if(!(o&16)){a[t>>0]=90;f=1}else{f=(g|0)>-1;m=f?g:0-g|0;c[n>>2]=((m|0)/3600|0)&63;c[n+4>>2]=((m|0)/60|0|0)%60|0;_O(t,8,f?279499:279510,n);f=7}a[t+f>>0]=0;f=(o&64|0)!=0;do if((o&128|0)==0|f^1)if(f){s=c[p+4>>2]|0;t=c[p+8>>2]|0;c[q>>2]=v;c[q+4>>2]=s;c[q+8>>2]=t;MN(u,279557,q)|0;break}else{q=c[p+16>>2]|0;s=c[p+20>>2]|0;v=c[p+24>>2]|0;c[r>>2]=c[p+12>>2];c[r+4>>2]=q;c[r+8>>2]=s;c[r+12>>2]=v;c[r+16>>2]=t;MN(u,279570,r)|0;break}else{g=c[p+4>>2]|0;m=c[p+8>>2]|0;n=c[p+12>>2]|0;o=c[p+16>>2]|0;q=c[p+20>>2]|0;r=c[p+24>>2]|0;c[s>>2]=v;c[s+4>>2]=g;c[s+8>>2]=m;c[s+12>>2]=i?84:32;c[s+16>>2]=n;c[s+20>>2]=o;c[s+24>>2]=q;c[s+28>>2]=r;c[s+32>>2]=t;MN(u,279521,s)|0}while(0);f=WO(u)|0;g=d+68|0;if((c[g>>2]|0)>>>0>=(c[d+56>>2]|0)>>>0)Un(d,4300);if((f|0)<0)Jn(d,268620,50335961,268982);d=Oo(d,u,f)|0;v=c[g>>2]|0;c[g>>2]=v+16;c[v>>2]=8;c[v+8>>2]=d;d=d+4|0;c[d>>2]=(c[d>>2]|0)+1;l=w;return 1}function is(a){a=a|0;var b=0.0,d=0,e=0;b=+Dv(a,0,0);d=a+68|0;e=c[d>>2]|0;if(e>>>0<(c[a+56>>2]|0)>>>0){c[d>>2]=e+16;c[e>>2]=0;h[e+8>>3]=b;return 1}else Un(a,4215);return 0}function js(a){a=a|0;var b=0,d=0.0,e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;Wq(a,0);p=a+68|0;f=c[p>>2]|0;o=a+64|0;b=c[o>>2]|0;b=(f|0)!=(b|0)?b:0;b=(b|0)==0?936:b;do if((c[b>>2]|0)==0?(d=+h[b+8>>3],iP(d)|0):0){if(!(d<-2147483648.0)){if(d>2147483647.0)break;b=~~d;if((b|0)>-1)break}else b=-2147483648;q=a+72|0;e=c[q>>2]|0;if(!((b|0)==-1|(e|0)==0))do{b=b+1|0;e=c[e+20>>2]|0}while(!((b|0)==-1|(e|0)==0));if(e|0){n=a+56|0;if(f>>>0>=(c[n>>2]|0)>>>0)Un(a,4604);b=vo(a,40)|0;f=c[a+44>>2]|0;c[b>>2]=134234241;f=f+24|0;g=c[f>>2]|0;if(g|0)c[g+12>>2]=b;c[b+12>>2]=0;c[b+8>>2]=g;c[f>>2]=b;f=c[p>>2]|0;c[f>>2]=9;c[f+8>>2]=b;f=b+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[p>>2]|0;g=f+16|0;c[p>>2]=g;b=c[e+16>>2]|0;if((b|0)!=0?(c[b>>2]&2048|0)!=0:0){l=(c[e+36>>2]|0)-(c[b+48>>2]|0)>>2;l=(l|0)==0?0:l+-1|0}else l=0;if(g>>>0>=(c[n>>2]|0)>>>0)Un(a,4153);c[p>>2]=f+32;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];if(c[e>>2]&8|0){m=(c[e+8>>2]|0)+4|0;c[m>>2]=(c[m>>2]|0)+1}b=c[p>>2]|0;e=c[n>>2]|0;if(b>>>0>=e>>>0)Un(a,4274);f=b+16|0;c[p>>2]=f;c[b>>2]=0;h[b+8>>3]=+(l>>>0);i=f-(c[o>>2]|0)|0;m=i>>4;k=m+-3|0;if(m>>>0<=2)jo(a,300,-3);m=a+304|0;g=c[(c[m>>2]|0)+340>>2]|0;if(f>>>0>=e>>>0)Un(a,4153);c[p>>2]=b+32;c[f>>2]=8;c[b+24>>2]=g;j=g+4|0;c[j>>2]=(c[j>>2]|0)+1;j=c[o>>2]|0;g=(c[p>>2]|0)-j>>4;f=((i|0)<48?g:0)+k|0;if(f>>>0>=g>>>0)jo(a,376,k);if((g|0)==1)jo(a,376,-2);e=g+-2|0;b=c[q>>2]|0;if(!b)b=1;else b=c[b+52>>2]&1;No(a,j+(f<<4)|0,j+(g+-1<<4)|0,c[j+(e<<4)>>2]|0,c[j+(e<<4)+4>>2]|0,+h[j+(e<<4)+8>>3],b)|0;uq(a);b=Cv(a,-1,l)|0;e=c[p>>2]|0;f=c[n>>2]|0;if(e>>>0>=f>>>0)Un(a,4274);g=e+16|0;c[p>>2]=g;c[e>>2]=0;h[e+8>>3]=+(b>>>0);i=g-(c[o>>2]|0)|0;l=i>>4;k=l+-3|0;if(l>>>0<=2)jo(a,300,-3);b=c[(c[m>>2]|0)+344>>2]|0;if(g>>>0>=f>>>0)Un(a,4153);c[p>>2]=e+32;c[g>>2]=8;c[e+24>>2]=b;g=b+4|0;c[g>>2]=(c[g>>2]|0)+1;g=c[o>>2]|0;j=(c[p>>2]|0)-g>>4;f=((i|0)<48?j:0)+k|0;if(f>>>0>=j>>>0)jo(a,376,k);if((j|0)==1)jo(a,376,-2);e=j+-2|0;b=c[q>>2]|0;if(!b)b=1;else b=c[b+52>>2]&1;No(a,g+(f<<4)|0,g+(j+-1<<4)|0,c[g+(e<<4)>>2]|0,c[g+(e<<4)+4>>2]|0,+h[g+(e<<4)+8>>3],b)|0;uq(a);e=c[p>>2]|0;f=e-(c[o>>2]|0)|0;l=f>>4;j=l+-2|0;if(l>>>0<=1)jo(a,300,-2);b=c[(c[m>>2]|0)+512>>2]|0;if(e>>>0>=(c[n>>2]|0)>>>0)Un(a,4153);c[p>>2]=e+16;c[e>>2]=8;c[e+8>>2]=b;i=b+4|0;c[i>>2]=(c[i>>2]|0)+1;i=c[o>>2]|0;g=(c[p>>2]|0)-i>>4;f=((f|0)<32?g:0)+j|0;if(f>>>0>=g>>>0)jo(a,376,j);if((g|0)==1)jo(a,376,-2);e=g+-2|0;b=c[q>>2]|0;if(!b)b=1;else b=c[b+52>>2]&1;No(a,i+(f<<4)|0,i+(g+-1<<4)|0,c[i+(e<<4)>>2]|0,c[i+(e<<4)+4>>2]|0,+h[i+(e<<4)+8>>3],b)|0;uq(a);return 1}}while(0);if(f>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4162);c[p>>2]=f+16;return 1}function ks(a){a=a|0;var b=0;b=c[a+64>>2]|0;b=(c[a+68>>2]|0)!=(b|0)?b:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9)return 1;b=c[b+8>>2]|0;if(!b)return 1;Pp(a,b);return 1}function ls(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+16|0;i=t+4|0;j=t;s=b+68|0;g=c[s>>2]|0;r=b+64|0;e=c[r>>2]|0;h=e;e=(g|0)!=(h|0)?e:0;e=(e|0)==0?936:e;if((c[e>>2]|0)!=8)In(b,2101,0,287721);f=c[e+8>>2]|0;if(!f)In(b,2101,0,287721);if(g-h>>4>>>0<2)jo(b,394,1);e=c[b+304>>2]|0;if((f|0)==(c[e+428>>2]|0)){Gp(b,2);qq(b,1);l=t;return 1}if((f|0)!=(c[e+432>>2]|0)){if((f|0)==(c[e+436>>2]|0)){Cq(b,1,2,4);l=t;return 1}if((f|0)!=(c[e+440>>2]|0))Vn(b,279387,143);Cq(b,1,2,8);l=t;return 1}Gp(b,2);if((c[s>>2]|0)-(c[r>>2]|0)>>4>>>0<=1)jo(b,300,1);f=pq(b,1,j)|0;e=c[j>>2]|0;if(e>>>0>4294967292)Jn(b,270242,100663753,270535);e=((e+3|0)>>>2)*3|0;if((c[s>>2]|0)>>>0>=(c[b+56>>2]|0)>>>0)Un(b,5237);if(e>>>0>2147483646)Jn(b,268620,50336889,268576);q=b+44|0;e=ap(c[q>>2]|0,e,1,i)|0;if(!e)Mn(b,268620,5246);p=c[s>>2]|0;c[p>>2]=10;c[p+8>>2]=e;p=e+4|0;c[p>>2]=(c[p>>2]|0)+1;c[s>>2]=(c[s>>2]|0)+16;p=c[i>>2]|0;n=f+(c[j>>2]|0)|0;o=n+-4|0;e=p;a:while(1){b:do if(f>>>0>o>>>0)h=e;else while(1){g=((a[270279+(d[f+1>>0]|0)>>0]|a[270279+(d[f>>0]|0)>>0]<<6)<<6|a[270279+(d[f+2>>0]|0)>>0])<<6|a[270279+(d[f+3>>0]|0)>>0];if((g|0)<0){h=e;break b}f=f+4|0;a[e>>0]=g>>>16;a[e+1>>0]=g>>>8;h=e+3|0;a[e+2>>0]=g;if(f>>>0>o>>>0)break;else e=h}while(0);m=0;j=0;i=0;while(1){while(1){if(f>>>0>=n>>>0){k=36;break a}e=f;f=f+1|0;e=a[e>>0]|0;g=a[270279+(e&255)>>0]|0;if(g<<24>>24>=0){k=28;break}if(g<<24>>24!=-2){k=26;break}}if((k|0)==26){if(e<<24>>24!=61){k=49;break a}j=j+1|0;i=i<<6}else if((k|0)==28){if(j|0){k=49;break a}j=0;i=(g<<24>>24)+(i<<6)|0}if((m|0)==3)break;m=m+1|0}e=h+1|0;a[h>>0]=i>>>16;g=h+2|0;a[e>>0]=i>>>8;a[g>>0]=i;switch(j|0){case 0:{e=h+3|0;continue a}case 1:{e=g;continue a}case 2:continue a;default:{k=49;break a}}}if((k|0)==36){if(m|0)Jn(b,270242,100663753,270535);o=c[r>>2]|0;e=(c[s>>2]|0)-o>>4;e=e|0?o+(e+-1<<4)|0:0;e=(e|0)==0?936:e;if((c[e>>2]|0)!=10)In(b,2147,-1,268516);e=c[e+8>>2]|0;if(!e)In(b,2147,-1,268516);if((c[e>>2]&384|0)!=128)Jn(b,268523,100663312,268540);Kn(b,e,h-p|0);e=c[r>>2]|0;f=(c[s>>2]|0)-e>>4;if(!f)jo(b,376,-1);g=e+(f+-1<<4)|0;if((f|0)==1)jo(b,376,1);r=e+16|0;b=c[r>>2]|0;e=c[e+24>>2]|0;c[r>>2]=c[g>>2];c[r+4>>2]=c[g+4>>2];c[r+8>>2]=c[g+8>>2];c[r+12>>2]=c[g+12>>2];c[g>>2]=2;c[s>>2]=(c[s>>2]|0)+-16;if(b&8|0?(b=e+4|0,s=(c[b>>2]|0)+-1|0,c[b>>2]=s,(s|0)==0):0)Yn(c[q>>2]|0,e);l=t;return 1}else if((k|0)==49)Jn(b,270242,100663753,270535);return 0}function ms(e){e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;j=q+4|0;m=q;p=e+68|0;h=c[p>>2]|0;o=e+64|0;f=c[o>>2]|0;i=f;f=(h|0)!=(i|0)?f:0;f=(f|0)==0?936:f;if((c[f>>2]|0)!=8)In(e,2101,0,287721);g=c[f+8>>2]|0;if(!g)In(e,2101,0,287721);if(h-i>>4>>>0<2)jo(e,394,1);f=c[e+304>>2]|0;if((g|0)==(c[f+428>>2]|0)){Gp(e,2);if((c[p>>2]|0)-(c[o>>2]|0)>>4>>>0<=1)jo(e,300,1);k=pq(e,1,m)|0;f=c[m>>2]<<1;if((c[p>>2]|0)>>>0>=(c[e+56>>2]|0)>>>0)Un(e,5237);if(f>>>0>2147483646)Jn(e,268620,50336889,268576);n=e+44|0;f=ap(c[n>>2]|0,f,4,j)|0;if(!f)Mn(e,268620,5246);g=c[p>>2]|0;c[g>>2]=10;c[g+8>>2]=f;g=f+4|0;c[g>>2]=(c[g>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+16;g=c[j>>2]|0;j=c[m>>2]|0;f=j&-4;if(!f)f=0;else{h=0;i=g;while(1){b[i>>1]=b[34232+((d[k+h>>0]|0)<<1)>>1]|0;b[i+2>>1]=b[34232+((d[k+(h|1)>>0]|0)<<1)>>1]|0;b[i+4>>1]=b[34232+((d[k+(h|2)>>0]|0)<<1)>>1]|0;b[i+6>>1]=b[34232+((d[k+(h|3)>>0]|0)<<1)>>1]|0;h=h+4|0;if(h>>>0>=f>>>0)break;else i=i+8|0}g=g+(f<<1)|0}if(f>>>0<j>>>0)while(1){b[g>>1]=b[34232+((d[k+f>>0]|0)<<1)>>1]|0;f=f+1|0;if((f|0)==(j|0))break;else g=g+2|0}bp(e);f=c[o>>2]|0;g=(c[p>>2]|0)-f>>4;if(!g)jo(e,376,-1);h=f+(g+-1<<4)|0;if((g|0)==1)jo(e,376,1);o=f+16|0;e=c[o>>2]|0;f=c[f+24>>2]|0;c[o>>2]=c[h>>2];c[o+4>>2]=c[h+4>>2];c[o+8>>2]=c[h+8>>2];c[o+12>>2]=c[h+12>>2];c[h>>2]=2;c[p>>2]=(c[p>>2]|0)+-16;if(e&8|0?(e=f+4|0,p=(c[e>>2]|0)+-1|0,c[e>>2]=p,(p|0)==0):0)Yn(c[n>>2]|0,f);l=q;return 1}if((g|0)!=(c[f+432>>2]|0)){if((g|0)==(c[f+436>>2]|0)){rq(e,1,2,3,7);l=q;return 1}if((g|0)!=(c[f+440>>2]|0))Vn(e,279387,104);rq(e,1,2,3,9);l=q;return 1}Gp(e,2);if((c[p>>2]|0)-(c[o>>2]|0)>>4>>>0<=1)jo(e,300,1);g=pq(e,1,m)|0;f=c[m>>2]|0;if(f>>>0>3221225469)Jn(e,270242,100663709,270258);f=(((f+2|0)>>>0)/3|0)<<2;if((c[p>>2]|0)>>>0>=(c[e+56>>2]|0)>>>0)Un(e,5237);if(f>>>0>2147483646)Jn(e,268620,50336889,268576);k=e+44|0;f=ap(c[k>>2]|0,f,4,j)|0;if(!f)Mn(e,268620,5246);i=c[p>>2]|0;c[i>>2]=10;c[i+8>>2]=f;f=f+4|0;c[f>>2]=(c[f>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+16;f=c[j>>2]|0;m=c[m>>2]|0;j=(m>>>0)%3|0;m=m-j|0;i=g+m|0;if(m)while(1){r=d[g>>0]|0;h=r<<8|(d[g+1>>0]|0);m=d[g+2>>0]|0;g=g+3|0;a[f>>0]=a[270178+(r>>>2)>>0]|0;a[f+1>>0]=a[270178+(h>>>4&63)>>0]|0;a[f+2>>0]=a[270178+((h<<8|m)>>>6&63)>>0]|0;h=f+4|0;a[f+3>>0]=a[270178+(m&63)>>0]|0;if((g|0)==(i|0)){g=i;f=h;break}else f=h}switch(j&3){case 1:{n=d[g>>0]|0;a[f>>0]=a[270178+(n>>>2)>>0]|0;a[f+1>>0]=a[270178+(n<<4&48)>>0]|0;a[f+2>>0]=61;n=43;break}case 2:{r=d[g>>0]|0;n=d[g+1>>0]|0;a[f>>0]=a[270178+(r>>>2)>>0]|0;a[f+1>>0]=a[270178+((r<<8|n)>>>4&63)>>0]|0;a[f+2>>0]=a[270178+(n<<2&60)>>0]|0;n=43;break}default:{}}if((n|0)==43)a[f+3>>0]=61;bp(e);f=c[o>>2]|0;g=(c[p>>2]|0)-f>>4;if(!g)jo(e,376,-1);h=f+(g+-1<<4)|0;if((g|0)==1)jo(e,376,1);e=f+16|0;r=c[e>>2]|0;f=c[f+24>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[e+8>>2]=c[h+8>>2];c[e+12>>2]=c[h+12>>2];c[h>>2]=2;c[p>>2]=(c[p>>2]|0)+-16;if(r&8|0?(p=f+4|0,r=(c[p>>2]|0)+-1|0,c[p>>2]=r,(r|0)==0):0)Yn(c[k>>2]|0,f);l=q;return 1}function ns(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0;l=a+68|0;d=c[l>>2]|0;k=a+64|0;b=c[k>>2]|0;e=b;b=(d|0)!=(e|0)?b:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9)In(a,2130,0,268963);if(!(c[b+8>>2]|0))In(a,2130,0,268963);if((d-e|0)<=16){f=d;if((d|0)==(e|0))jo(a,300,0);b=c[(c[a+304>>2]|0)+400>>2]|0;if(f>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4153);c[l>>2]=f+16;c[f>>2]=8;c[f+8>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[k>>2]|0;d=(c[l>>2]|0)-b>>4;if(!d)jo(a,376,0);ro(a,b,b+(d+-1<<4)|0)|0;d=c[k>>2]|0;e=(c[l>>2]|0)-d>>4;b=e+-2|0;if(e>>>0<=1)jo(a,376,-2);i=d+(b<<4)|0;j=d+(e+-1<<4)|0;k=c[i>>2]|0;b=c[d+(b<<4)+8>>2]|0;QQ(i|0,i+16|0,j-i|0)|0;c[j>>2]=2;c[l>>2]=(c[l>>2]|0)+-16;if(!(k&8)){a=1;return a|0}k=b+4|0;l=(c[k>>2]|0)+-1|0;c[k>>2]=l;if(l|0){a=1;return a|0}Yn(c[a+44>>2]|0,b);a=1;return a|0}Gp(a,2);d=c[l>>2]|0;e=c[k>>2]|0;f=d-e>>4;g=(f|0)!=0;b=g?e:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9)In(a,2130,0,268963);j=c[b+8>>2]|0;if(!j)In(a,2130,0,268963);b=g?e+(f+-1<<4)|0:0;b=(b|0)==0?936:b;switch(c[b>>2]|0){case 9:{i=(c[c[b+8>>2]>>2]|0)>>>9&1;break}case 6:{i=1;break}default:i=0}if(!g)jo(a,300,0);b=c[(c[a+304>>2]|0)+400>>2]|0;if(d>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4153);c[l>>2]=d+16;c[d>>2]=8;c[d+8>>2]=b;d=b+4|0;c[d>>2]=(c[d>>2]|0)+1;d=c[k>>2]|0;e=(c[l>>2]|0)-d>>4;if(!e)jo(a,376,0);if((e|0)==1)jo(a,376,-2);f=e+-2|0;b=c[a+72>>2]|0;if(!b)b=1;else b=c[b+52>>2]&1;No(a,d,d+(e+-1<<4)|0,c[d+(f<<4)>>2]|0,c[d+(f<<4)+4>>2]|0,+h[d+(f<<4)+8>>3],b)|0;d=c[l>>2]|0;if((d+-32|0)>>>0<(c[k>>2]|0)>>>0)Jn(a,268620,50337495,268636);b=d+-16|0;c[l>>2]=b;k=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[b>>2]=2;if((k&8|0)!=0?(g=d+4|0,k=(c[g>>2]|0)+-1|0,c[g>>2]=k,(k|0)==0):0){Yn(c[a+44>>2]|0,d);b=c[l>>2]|0}k=b+-16|0;c[l>>2]=k;l=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[k>>2]=2;if(l&8|0?(k=b+4|0,l=(c[k>>2]|0)+-1|0,c[k>>2]=l,(l|0)==0):0)Yn(c[a+44>>2]|0,b);a=c[j>>2]|0;c[j>>2]=i|0?a|2097152:a&-2097153;a=0;return a|0}function os(a){a=a|0;var b=0,d=0.0,e=0;e=a+68|0;b=c[a+64>>2]|0;b=(c[e>>2]|0)!=(b|0)?b:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(d=+h[b+8>>3],!(d<0.0|(iP(d)|0)==0)):0)if(d>4294967295.0)b=-1;else b=~~d>>>0;else b=0;Ln(c[a+44>>2]|0,b);b=c[e>>2]|0;if(b>>>0<(c[a+56>>2]|0)>>>0){c[e>>2]=b+16;c[b>>2]=4;c[b+8>>2]=1;return 1}else Un(a,4195);return 0}function ps(a){a=a|0;var b=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+64|0;f=n;b=f;e=b+56|0;do{c[b>>2]=-1;b=b+4|0}while((b|0)<(e|0));m=a+68|0;g=c[m>>2]|0;e=c[a+64>>2]|0;b=g-e>>4;b=b|0?e+(b+-1<<4)|0:0;b=(b|0)==0?936:b;e=c[b>>2]|0;if(!(e&8)){j=0;i=0}else{i=c[b+8>>2]|0;j=i}c[f>>2]=c[4924+(e<<2)>>2];c[f+4>>2]=c[b>>2];k=a+56|0;if(g>>>0>=(c[k>>2]|0)>>>0)Un(a,4604);b=vo(a,40)|0;e=c[a+44>>2]|0;c[b>>2]=134234241;e=e+24|0;g=c[e>>2]|0;if(g|0)c[g+12>>2]=b;c[b+12>>2]=0;c[b+8>>2]=g;c[e>>2]=b;e=c[m>>2]|0;c[e>>2]=9;c[e+8>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[m>>2]|0;e=b+16|0;c[m>>2]=e;a:do if(!j){b=279296;g=279301}else{if(e>>>0>=(c[k>>2]|0)>>>0)Un(a,4341);c[m>>2]=b+32;c[e>>2]=5;c[b+24>>2]=i;Tu(a,279291);c[f+8>>2]=c[j+4>>2];b=f+52|0;c[b>>2]=0;e=c[j>>2]|0;switch(e&3){case 0:{c[f+12>>2]=(c[j+20>>2]|0)+29;b=279296;g=279301;break a}case 1:{do if(!(e&4194304)){if(e&2048|0){c[f+12>>2]=64;break}if(e&4096|0){c[f+12>>2]=48;break}if((e&-134217728|0)==-1879048192){c[f+12>>2]=308;c[f+48>>2]=d[j+49>>0];break}else{c[f+12>>2]=e&8192|0?60:40;break}}else c[f+12>>2]=48;while(0);c[f+16>>2]=(c[j>>2]|0)>>>27;e=c[j+24>>2]|0;g=c[j+32>>2]|0;i=c[j+36>>2]|0;c[f+20>>2]=(e*21|0)+(0-e&7)+(g<<4)+(i<<2);c[f+24>>2]=e;c[f+28>>2]=c[j+28>>2];c[f+32>>2]=g;c[f+36>>2]=i;if(!(c[j>>2]&2048)){b=279296;g=279301;break a}b=c[j+40>>2]|0;if(!b)b=0;else b=c[b+16>>2]|0;c[f+40>>2]=b;b=279296;g=279301;break a}case 2:{if(!(e&128)){b=(c[j+16>>2]|0)+24|0;e=3}else{c[b>>2]=(e>>>8&1)+1;c[f+12>>2]=24;b=c[j+16>>2]|0;e=11}c[f+(e<<2)>>2]=b;b=279296;g=279301;break a}default:{b=279296;g=279301;break a}}}while(0);while(1){e=c[f>>2]|0;f=f+4|0;if((e|0)>-1){gp(a,b);b=c[m>>2]|0;if(b>>>0>=(c[k>>2]|0)>>>0){b=31;break}c[m>>2]=b+16;c[b>>2]=0;h[b+8>>3]=+(e|0);lq(a,-3)}b=WO(g)|0;if(!b){b=34;break}else{j=g;g=g+(b+1)|0;b=j}}if((b|0)==31)Un(a,4244);else if((b|0)==34){l=n;return 1}return 0}function qs(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=a+72|0;d=c[k>>2]|0;do if(d){e=c[d+16>>2]|0;if(!e){f=(c[d+4>>2]|0)>>>8<<24>>24;break}if(c[e>>2]&4096)f=b[e+46>>1]|0;else f=0}else f=0;while(0);j=a+68|0;h=a+56|0;if((c[j>>2]|0)>>>0>=(c[h>>2]|0)>>>0)Un(a,4604);g=vo(a,40)|0;d=c[a+44>>2]|0;c[g>>2]=939540609;d=d+24|0;e=c[d>>2]|0;if(e|0)c[e+12>>2]=g;c[g+12>>2]=0;c[g+8>>2]=e;c[d>>2]=g;d=c[j>>2]|0;c[d>>2]=9;c[d+8>>2]=g;d=g+4|0;c[d>>2]=(c[d>>2]|0)+1;d=(c[j>>2]|0)+16|0;c[j>>2]=d;if((f|0)>-1?(i=c[a+100+(f<<2)>>2]|0,c[g+20>>2]=i,i|0):0){i=i+4|0;c[i>>2]=(c[i>>2]|0)+1}f=a+64|0;i=c[f>>2]|0;i=(d|0)!=(i|0)?i:0;do if((c[((i|0)==0?936:i)>>2]|0)!=2){Eo(a,0)|0;e=c[j>>2]|0;if(e>>>0>=(c[h>>2]|0)>>>0)Un(a,1093);d=c[f>>2]|0;if((e|0)==(d|0))jo(a,376,0);c[j>>2]=e+16;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];if(c[e>>2]&8|0){i=(c[e+8>>2]|0)+4|0;c[i>>2]=(c[i>>2]|0)+1}i=c[f>>2]|0;d=(c[j>>2]|0)-i>>4;d=d>>>0>1?i+(d+-2<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)!=9)In(a,2130,-2,268963);d=c[d+8>>2]|0;if(!d)In(a,2130,-2,268963);else{fo(a,d,c[(c[a+304>>2]|0)+208>>2]|0,5);break}}while(0);k=c[k>>2]|0;if(k|0?c[k+52>>2]&4|0:0)return 1;k=c[f>>2]|0;d=(c[j>>2]|0)-k>>4;d=d|0?k+(d+-1<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)!=9)return 1;g=c[d+8>>2]|0;if(!g)return 1;f=c[a+180>>2]|0;if(!f)return 1;else{d=1e4;e=g}while(1){if((e|0)==(f|0)){d=32;break}if(!d){d=35;break}e=c[e+20>>2]|0;if(!e){d=35;break}else d=d+-1|0}if((d|0)==32){if(c[g>>2]&128|0)Io(a,a,0,0,g,1);Jo(a,104);return 1}else if((d|0)==35)return 1;return 0}function rs(a){a=a|0;return Bv(a,0)|0}function ss(a){a=a|0;Av(a,89);return 0}function ts(a){a=a|0;return Bv(a,1)|0}function us(a){a=a|0;Av(a,86);return 0}function vs(a){a=a|0;return Bv(a,-1)|0}function ws(a){a=a|0;Av(a,84);return 0}function xs(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;n=o;m=a+68|0;d=c[m>>2]|0;k=a+56|0;if(d>>>0>=(c[k>>2]|0)>>>0)Un(a,4361);c[m>>2]=d+16;j=a+64|0;if(c[a+72>>2]|0?(b=c[j>>2]|0,g=b+-16|0,c[d>>2]=c[g>>2],c[d+4>>2]=c[g+4>>2],c[d+8>>2]=c[g+8>>2],c[d+12>>2]=c[g+12>>2],c[g>>2]&8|0):0){g=(c[b+-8>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}d=c[m>>2]|0;g=c[j>>2]|0;e=g;b=d-e>>4;b=b|0?g+(b+-1<<4)|0:0;b=(b|0)==0?936:b;a:do switch(c[b>>2]|0){case 9:{if(!(c[b+8>>2]|0))In(a,2416,-1,268963);else{i=j;h=d;f=e;break a}break}case 6:case 10:{to(a,-1);i=j;h=c[m>>2]|0;f=c[j>>2]|0;break}default:In(a,2416,-1,268963)}while(0);f=h-f|0;e=f>>4;g=e+-1|0;b=h;if(!e)jo(a,300,-1);h=a+304|0;d=c[(c[h>>2]|0)+352>>2]|0;if(b>>>0>=(c[k>>2]|0)>>>0)Un(a,4153);c[m>>2]=b+16;c[b>>2]=8;c[b+8>>2]=d;d=d+4|0;c[d>>2]=(c[d>>2]|0)+1;d=c[j>>2]|0;e=(c[m>>2]|0)-d>>4;b=((f|0)<16?e:0)+g|0;if(b>>>0>=e>>>0)jo(a,376,g);ro(a,d+(b<<4)|0,d+(e+-1<<4)|0)|0;d=c[j>>2]|0;e=(c[m>>2]|0)-d>>4;b=e+-2|0;if(e>>>0<=1)jo(a,376,-2);f=d+(b<<4)|0;e=d+(e+-1<<4)|0;g=c[f>>2]|0;b=c[d+(b<<4)+8>>2]|0;QQ(f|0,f+16|0,e-f|0)|0;c[e>>2]=2;e=(c[m>>2]|0)+-16|0;c[m>>2]=e;d=e;if((g&8|0)!=0?(f=b+4|0,g=(c[f>>2]|0)+-1|0,c[f>>2]=g,(g|0)==0):0){Yn(c[a+44>>2]|0,b);e=c[m>>2]|0;d=e}b=c[j>>2]|0;g=d-b>>4;g=g|0?b+(g+-1<<4)|0:0;do if((c[((g|0)==0?936:g)>>2]|0)==2){if((e|0)==(b|0))Jn(a,268620,50337407,268636);b=e+-16|0;c[m>>2]=b;g=c[e+-16>>2]|0;d=c[e+-8>>2]|0;c[b>>2]=2;if((g&8|0)!=0?(f=d+4|0,g=(c[f>>2]|0)+-1|0,c[f>>2]=g,(g|0)==0):0){Yn(c[a+44>>2]|0,d);b=c[m>>2]|0}if(b>>>0<(c[k>>2]|0)>>>0){g=Oo(a,279111,5)|0;f=c[m>>2]|0;c[m>>2]=f+16;c[f>>2]=8;c[f+8>>2]=g;g=g+4|0;c[g>>2]=(c[g>>2]|0)+1;break}else Un(a,4300)}else Eo(a,-1)|0;while(0);b=c[m>>2]|0;f=b-(c[i>>2]|0)|0;i=f>>4;g=i+-2|0;if(i>>>0<=1)jo(a,300,-2);d=c[(c[h>>2]|0)+208>>2]|0;if(b>>>0>=(c[k>>2]|0)>>>0)Un(a,4153);c[m>>2]=b+16;c[b>>2]=8;c[b+8>>2]=d;d=d+4|0;c[d>>2]=(c[d>>2]|0)+1;d=c[j>>2]|0;e=(c[m>>2]|0)-d>>4;b=((f|0)<32?e:0)+g|0;if(b>>>0>=e>>>0)jo(a,376,g);ro(a,d+(b<<4)|0,d+(e+-1<<4)|0)|0;d=c[j>>2]|0;e=(c[m>>2]|0)-d>>4;b=e+-2|0;if(e>>>0<=1)jo(a,376,-2);g=d+(b<<4)|0;e=d+(e+-1<<4)|0;i=c[g>>2]|0;b=c[d+(b<<4)+8>>2]|0;QQ(g|0,g+16|0,e-g|0)|0;c[e>>2]=2;e=(c[m>>2]|0)+-16|0;c[m>>2]=e;d=e;if((i&8|0)!=0?(g=b+4|0,i=(c[g>>2]|0)+-1|0,c[g>>2]=i,(i|0)==0):0){Yn(c[a+44>>2]|0,b);e=c[m>>2]|0;d=e}b=c[j>>2]|0;i=d-b>>4;i=i|0?b+(i+-1<<4)|0:0;do if((c[((i|0)==0?936:i)>>2]|0)==2){if((e|0)==(b|0))Jn(a,268620,50337407,268636);d=e+-16|0;c[m>>2]=d;i=c[e+-16>>2]|0;b=c[e+-8>>2]|0;c[d>>2]=2;if((i&8|0)!=0?(g=b+4|0,i=(c[g>>2]|0)+-1|0,c[g>>2]=i,(i|0)==0):0){Yn(c[a+44>>2]|0,b);d=c[m>>2]|0}b=c[(c[h>>2]|0)+60>>2]|0;if(d>>>0<(c[k>>2]|0)>>>0){c[m>>2]=d+16;c[d>>2]=8;c[d+8>>2]=b;i=b+4|0;c[i>>2]=(c[i>>2]|0)+1;break}else Un(a,4153)}else Eo(a,-1)|0;while(0);if(!(Bo(a,-2)|0)){l=o;return 1}i=(Bo(a,-1)|0)==0;b=c[m>>2]|0;if(i){if((b|0)==(c[j>>2]|0))Jn(a,268620,50337407,268636);k=b+-16|0;c[m>>2]=k;n=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[k>>2]=2;if(!(n&8)){l=o;return 1}m=b+4|0;n=(c[m>>2]|0)+-1|0;c[m>>2]=n;if(n|0){l=o;return 1}Yn(c[a+44>>2]|0,b);l=o;return 1}else{if(b>>>0>=(c[k>>2]|0)>>>0)Un(a,4300);d=Oo(a,279117,2)|0;b=c[m>>2]|0;c[m>>2]=b+16;c[b>>2]=8;c[b+8>>2]=d;d=d+4|0;c[d>>2]=(c[d>>2]|0)+1;d=c[j>>2]|0;b=(c[m>>2]|0)-d>>4;if(b>>>0<=1)jo(a,376,-2);e=d+(b+-2<<4)|0;b=d+(b+-1<<4)|0;d=b-e|0;if(d|0){c[n>>2]=c[b>>2];c[n+4>>2]=c[b+4>>2];c[n+8>>2]=c[b+8>>2];c[n+12>>2]=c[b+12>>2];QQ(e+16|0,e|0,d|0)|0;c[e>>2]=c[n>>2];c[e+4>>2]=c[n+4>>2];c[e+8>>2]=c[n+8>>2];c[e+12>>2]=c[n+12>>2]}Mo(a,3,0);l=o;return 1}return 0}function ys(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+1168|0;i=m;k=a+68|0;j=a+64|0;f=(c[k>>2]|0)-(c[j>>2]|0)|0;h=f>>4;if((f|0)>0){b=0;do{Eo(a,b)|0;b=b+1|0}while((b|0)<(h|0))}a:do switch(h|0){case 0:{b=a+304|0;d=c[(c[b>>2]|0)+60>>2]|0;e=c[k>>2]|0;f=a+56|0;if(e>>>0>=(c[f>>2]|0)>>>0)Un(a,4153);c[k>>2]=e+16;c[e>>2]=8;c[e+8>>2]=d;d=d+4|0;c[d>>2]=(c[d>>2]|0)+1;b=c[(c[b>>2]|0)+60>>2]|0;d=c[k>>2]|0;if(d>>>0<(c[f>>2]|0)>>>0){c[k>>2]=d+16;c[d>>2]=8;c[d+8>>2]=b;g=b+4|0;c[g>>2]=(c[g>>2]|0)+1;g=f;break a}else Un(a,4153);break}case 1:{b=c[(c[a+304>>2]|0)+60>>2]|0;d=c[k>>2]|0;e=a+56|0;if(d>>>0<(c[e>>2]|0)>>>0){c[k>>2]=d+16;c[d>>2]=8;c[d+8>>2]=b;g=b+4|0;c[g>>2]=(c[g>>2]|0)+1;g=e;break a}else Un(a,4153);break}default:{b=c[k>>2]|0;e=c[j>>2]|0;d=b-e>>4;if(!d)jo(a,376,0);d=d+-1|0;if(d){b=e+(d<<4)|0;c[i>>2]=c[b>>2];c[i+4>>2]=c[b+4>>2];c[i+8>>2]=c[b+8>>2];c[i+12>>2]=c[b+12>>2];QQ(e+16|0,e|0,d<<4|0)|0;c[e>>2]=c[i>>2];c[e+4>>2]=c[i+4>>2];c[e+8>>2]=c[i+8>>2];c[e+12>>2]=c[i+12>>2];b=c[k>>2]|0}g=a+56|0;if(b>>>0>=(c[g>>2]|0)>>>0)Un(a,4300);e=Oo(a,308624,1)|0;b=c[k>>2]|0;c[k>>2]=b+16;c[b>>2]=8;c[b+8>>2]=e;e=e+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[j>>2]|0;b=(c[k>>2]|0)-e>>4;if(b>>>0<=1)jo(a,376,1);f=e+16|0;b=e+(b+-1<<4)|0;d=b-f|0;if(d|0){c[i>>2]=c[b>>2];c[i+4>>2]=c[b+4>>2];c[i+8>>2]=c[b+8>>2];c[i+12>>2]=c[b+12>>2];QQ(e+32|0,f|0,d|0)|0;c[f>>2]=c[i>>2];c[f+4>>2]=c[i+4>>2];c[f+8>>2]=c[i+8>>2];c[f+12>>2]=c[i+12>>2]}Mo(a,h+-1|0,1)}}while(0);if((c[k>>2]|0)>>>0>=(c[g>>2]|0)>>>0)Un(a,4300);b=Oo(a,279086,9)|0;h=c[k>>2]|0;c[k>>2]=h+16;c[h>>2]=8;c[h+8>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[k>>2]|0;if(b>>>0>=(c[g>>2]|0)>>>0)Un(a,1093);d=c[j>>2]|0;if(b-d>>4>>>0<=1)jo(a,376,1);h=d+16|0;c[k>>2]=b+16;c[b>>2]=c[h>>2];c[b+4>>2]=c[h+4>>2];c[b+8>>2]=c[h+8>>2];c[b+12>>2]=c[h+12>>2];if(c[b>>2]&8|0){h=(c[b+8>>2]|0)+4|0;c[h>>2]=(c[h>>2]|0)+1}if((c[k>>2]|0)>>>0>=(c[g>>2]|0)>>>0)Un(a,4300);b=Oo(a,279096,2)|0;h=c[k>>2]|0;c[k>>2]=h+16;c[h>>2]=8;c[h+8>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[k>>2]|0;if(b>>>0>=(c[g>>2]|0)>>>0)Un(a,1093);d=c[j>>2]|0;if((b|0)==(d|0))jo(a,376,0);c[k>>2]=b+16;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];if(c[b>>2]&8|0){h=(c[b+8>>2]|0)+4|0;c[h>>2]=(c[h>>2]|0)+1}if((c[k>>2]|0)>>>0>=(c[g>>2]|0)>>>0)Un(a,4300);h=Oo(a,279099,1)|0;b=c[k>>2]|0;c[k>>2]=b+16;c[b>>2]=8;c[b+8>>2]=h;h=h+4|0;c[h>>2]=(c[h>>2]|0)+1;Mo(a,5,0);h=a+304|0;b=c[(c[h>>2]|0)+408>>2]|0;d=c[k>>2]|0;if(d>>>0>=(c[g>>2]|0)>>>0)Un(a,4153);c[k>>2]=d+16;c[d>>2]=8;c[d+8>>2]=b;f=b+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[k>>2]|0;e=c[j>>2]|0;b=f-e>>4;b=b>>>0>1?e+(b+-2<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=8)In(a,2101,-2,287721);b=c[b+8>>2]|0;if(!b)In(a,2101,-2,287721);d=c[b+20>>2]|0;RQ(i|0,0,1160)|0;c[i>>2]=4096;RQ(i+16|0,0,832)|0;c[i+792>>2]=b+28;c[i+796>>2]=d;c[i+848>>2]=4096;b=a+88|0;d=c[b>>2]|0;c[b>>2]=i+8;if(f>>>0<(e+16|0)>>>0)Vn(a,268605,315);if((c[g>>2]|0)>>>0<f>>>0)Vn(a,268605,315);i=Xn(a,20,i,1,1)|0;c[b>>2]=d;if(i|0)xo(a);if((c[k>>2]|0)>>>0>=(c[g>>2]|0)>>>0)Un(a,4300);b=Oo(a,279101,9)|0;i=c[k>>2]|0;c[k>>2]=i+16;c[i>>2]=8;c[i+8>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;j=c[j>>2]|0;b=(c[k>>2]|0)-j>>4;b=b>>>0>1?j+(b+-2<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9)In(a,2130,-2,268963);b=c[b+8>>2]|0;if(!b)In(a,2130,-2,268963);else{fo(a,b,c[(c[h>>2]|0)+352>>2]|0,4);j=c[a+104>>2]|0;vp(a,c[(c[k>>2]|0)+-8>>2]|0,j,j,1);l=m;return 1}return 0}function zs(a){a=a|0;return 0}function As(a){a=a|0;return -6}function Bs(a){a=a|0;var b=0,d=0,e=0,f=0.0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=a+68|0;k=c[t>>2]|0;u=a+64|0;e=c[u>>2]|0;r=k-e|0;j=r>>4;b=j+-1|0;do if((r|0)<16){b=a+56|0;d=c[b>>2]|0;if(k>>>0<d>>>0){g=k+16|0;c[t>>2]=g;p=j;s=b;i=d;break}else Un(a,4162)}else if((b|0)>536870912)Jn(a,278868,50331875,268636);else{i=a+56|0;p=b;s=i;g=k;i=c[i>>2]|0;break}while(0);if(g>>>0>=i>>>0)Un(a,4361);c[t>>2]=g+16;if(c[a+72>>2]|0?(r=e+-16|0,c[g>>2]=c[r>>2],c[g+4>>2]=c[r+4>>2],c[g+8>>2]=c[r+8>>2],c[g+12>>2]=c[r+12>>2],c[r>>2]&8|0):0){r=(c[e+-8>>2]|0)+4|0;c[r>>2]=(c[r>>2]|0)+1}d=c[t>>2]|0;r=c[u>>2]|0;b=d-r>>4;b=b|0?r+(b+-1<<4)|0:0;b=(b|0)==0?936:b;switch(c[b>>2]|0){case 9:{q=14;break}case 6:break;default:In(a,2285,-1,287317)}if((q|0)==14?(c[c[b+8>>2]>>2]&512|0)==0:0)In(a,2285,-1,287317);if(d>>>0>=(c[s>>2]|0)>>>0)Un(a,4820);r=a+44|0;b=c[r>>2]|0;n=yr(b,80)|0;if(!n)Mn(a,268620,4828);d=n;e=d+80|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0));c[n>>2]=402655105;b=b+24|0;d=c[b>>2]|0;if(d|0)c[d+12>>2]=n;c[n+12>>2]=0;c[n+8>>2]=d;c[b>>2]=n;e=n+40|0;c[e>>2]=2;g=n+56|0;c[g>>2]=2;b=c[t>>2]|0;c[t>>2]=b+16;c[b>>2]=9;c[b+8>>2]=n;c[n+4>>2]=1;b=c[u>>2]|0;c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];b=c[t>>2]|0;m=b+-32|0;c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];if((c[m>>2]|0)==9){d=c[b+-24>>2]|0;b=c[d+20>>2]|0;c[n+20>>2]=b;if(b|0){m=b+4|0;c[m>>2]=(c[m>>2]|0)+1}b=c[d>>2]|0;if(b&65536){c[n>>2]=402720641;b=c[d>>2]|0}if(!(b&1024)){m=0;l=0}else{m=d+40|0;c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];m=d+56|0;c[g>>2]=c[m>>2];c[g+4>>2]=c[m+4>>2];c[g+8>>2]=c[m+8>>2];c[g+12>>2]=c[m+12>>2];m=c[d+76>>2]|0;l=c[d+72>>2]|0}}else{c[n>>2]=402720641;b=c[a+120>>2]|0;c[n+20>>2]=b;if(!b){m=0;l=0}else{m=b+4|0;c[m>>2]=(c[m>>2]|0)+1;m=0;l=0}}if(c[e>>2]&8|0){k=(c[n+48>>2]|0)+4|0;c[k>>2]=(c[k>>2]|0)+1}if(c[g>>2]&8|0){k=(c[n+64>>2]|0)+4|0;c[k>>2]=(c[k>>2]|0)+1}j=m+p|0;if((j|0)>536870912)Jn(a,278868,50331964,268636);d=j<<4;e=c[r>>2]|0;i=e+44|0;k=c[i>>2]|0;c[i>>2]=k+-1;if((k|0)<1)Ln(e,2);g=e+4|0;i=e+16|0;b=hg[c[g>>2]&63](c[i>>2]|0,d)|0;k=(d|0)==0;do if(!(k|(b|0)!=0)){Ln(e,0);b=hg[c[g>>2]&63](c[i>>2]|0,d)|0;if(!b){Ln(e,0);b=hg[c[g>>2]&63](c[i>>2]|0,d)|0;if(!b){Ln(e,1);b=hg[c[g>>2]&63](c[i>>2]|0,d)|0;if(!b){Ln(e,1);b=hg[c[g>>2]&63](c[i>>2]|0,d)|0;if(!b){Ln(e,1);b=hg[c[g>>2]&63](c[i>>2]|0,d)|0;if(!b){Ln(e,1);b=hg[c[g>>2]&63](c[i>>2]|0,d)|0;if(!b){Ln(e,1);b=hg[c[g>>2]&63](c[i>>2]|0,d)|0;if(!b){Ln(e,1);b=hg[c[g>>2]&63](c[i>>2]|0,d)|0;if(b|0){o=b;break}Ln(e,1);b=hg[c[g>>2]&63](c[i>>2]|0,d)|0;if(b|0){o=b;break}Ln(e,1);b=hg[c[g>>2]&63](c[i>>2]|0,d)|0;if(!b){b=0;q=42}else o=b}else o=b}else o=b}else o=b}else o=b}else o=b}else o=b}else o=b}else q=42;while(0);if((q|0)==42)if(k|(b|0)!=0)o=b;else Mn(a,269480,144);c[n+72>>2]=o;c[n+76>>2]=j;PQ(o|0,l|0,m<<4|0)|0;if(m|0){b=o;d=m;while(1){d=d+-1|0;if(c[b>>2]&8|0){n=(c[b+8>>2]|0)+4|0;c[n>>2]=(c[n>>2]|0)+1}if(!d)break;else b=b+16|0}}b=o+(m<<4)|0;PQ(b|0,(c[u>>2]|0)+16|0,p<<4|0)|0;if(p|0){d=p;while(1){d=d+-1|0;if(c[b>>2]&8|0){o=(c[b+8>>2]|0)+4|0;c[o>>2]=(c[o>>2]|0)+1}if(!d)break;else b=b+16|0}}b=c[t>>2]|0;g=b-(c[u>>2]|0)|0;o=g>>4;i=o+-2|0;if(o>>>0<=1)jo(a,300,-2);j=a+304|0;d=c[(c[j>>2]|0)+328>>2]|0;if(b>>>0>=(c[s>>2]|0)>>>0)Un(a,4153);c[t>>2]=b+16;c[b>>2]=8;c[b+8>>2]=d;d=d+4|0;c[d>>2]=(c[d>>2]|0)+1;d=c[u>>2]|0;e=(c[t>>2]|0)-d>>4;b=((g|0)<32?e:0)+i|0;if(b>>>0>=e>>>0)jo(a,376,i);ro(a,d+(b<<4)|0,d+(e+-1<<4)|0)|0;d=c[u>>2]|0;e=(c[t>>2]|0)-d>>4;b=e+-2|0;if(e>>>0<=1)jo(a,376,-2);n=d+(b<<4)|0;e=d+(e+-1<<4)|0;o=c[n>>2]|0;b=c[d+(b<<4)+8>>2]|0;QQ(n|0,n+16|0,e-n|0)|0;c[e>>2]=2;e=(c[t>>2]|0)+-16|0;c[t>>2]=e;d=e;do if(o&8){n=b+4|0;o=(c[n>>2]|0)+-1|0;c[n>>2]=o;if(o|0)break;Yn(c[r>>2]|0,b);e=c[t>>2]|0;d=e}while(0);b=c[u>>2]|0;d=d-b>>4;d=d|0?b+(d+-1<<4)|0:0;d=(d|0)==0?936:d;do if(!(c[d>>2]|0)){f=+h[d+8>>3];if(!(iP(f)|0)){d=0;break}if(f<-2147483648.0){d=-2147483648;break}if(f>2147483647.0){d=2147483647;break}d=~~f}else d=0;while(0);p=d-p|0;f=+(((p|0)>0?p:0)>>>0);if((e|0)==(b|0))Jn(a,268620,50337407,268636);g=e+-16|0;c[t>>2]=g;p=c[e+-16>>2]|0;d=c[e+-8>>2]|0;c[g>>2]=2;do if(!(p&8))d=g;else{o=d+4|0;p=(c[o>>2]|0)+-1|0;c[o>>2]=p;if(p|0){d=g;break}Yn(c[r>>2]|0,d);d=c[t>>2]|0;b=c[u>>2]|0}while(0);p=d+16|0;c[t>>2]=p;c[d>>2]=0;h[d+8>>3]=f;p=p-b>>4;b=p>>>0>1?b+(p+-2<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9)In(a,2130,-2,268963);b=c[b+8>>2]|0;if(!b)In(a,2130,-2,268963);fo(a,b,c[(c[j>>2]|0)+328>>2]|0,4);b=c[t>>2]|0;e=b-(c[u>>2]|0)>>4;if(!e)jo(a,300,-1);d=c[(c[j>>2]|0)+276>>2]|0;if(b>>>0>=(c[s>>2]|0)>>>0)Un(a,4153);c[t>>2]=b+16;c[b>>2]=8;c[b+8>>2]=d;g=d+4|0;c[g>>2]=(c[g>>2]|0)+1;g=a+232|0;b=c[g>>2]|0;d=c[t>>2]|0;if(d>>>0>=(c[s>>2]|0)>>>0)Un(a,4153);c[t>>2]=d+16;c[d>>2]=9;c[d+8>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[t>>2]|0;if(b>>>0>=(c[s>>2]|0)>>>0)Un(a,1111);if((b-(c[u>>2]|0)|0)<16)jo(a,1114,-1);p=b+-16|0;c[t>>2]=b+16;c[b>>2]=c[p>>2];c[b+4>>2]=c[p+4>>2];c[b+8>>2]=c[p+8>>2];c[b+12>>2]=c[p+12>>2];if(c[b>>2]&8|0){p=(c[b+8>>2]|0)+4|0;c[p>>2]=(c[p>>2]|0)+1}Fo(a,e+-1|0,896);b=c[t>>2]|0;e=b-(c[u>>2]|0)>>4;if(!e)jo(a,300,-1);d=c[(c[j>>2]|0)+268>>2]|0;if(b>>>0>=(c[s>>2]|0)>>>0)Un(a,4153);c[t>>2]=b+16;c[b>>2]=8;c[b+8>>2]=d;b=d+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[g>>2]|0;d=c[t>>2]|0;if(d>>>0>=(c[s>>2]|0)>>>0)Un(a,4153);c[t>>2]=d+16;c[d>>2]=9;c[d+8>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[t>>2]|0;if(b>>>0>=(c[s>>2]|0)>>>0)Un(a,1111);if((b-(c[u>>2]|0)|0)<16)jo(a,1114,-1);p=b+-16|0;c[t>>2]=b+16;c[b>>2]=c[p>>2];c[b+4>>2]=c[p+4>>2];c[b+8>>2]=c[p+8>>2];c[b+12>>2]=c[p+12>>2];if(c[b>>2]&8|0){p=(c[b+8>>2]|0)+4|0;c[p>>2]=(c[p>>2]|0)+1}Fo(a,e+-1|0,896);if((c[t>>2]|0)>>>0>=(c[s>>2]|0)>>>0)Un(a,4300);b=Oo(a,279079,6)|0;g=c[t>>2]|0;c[t>>2]=g+16;c[g>>2]=8;c[g+8>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[t>>2]|0;g=b-(c[u>>2]|0)|0;p=g>>4;i=p+-3|0;if(p>>>0<=2)jo(a,300,-3);d=c[(c[j>>2]|0)+352>>2]|0;if(b>>>0>=(c[s>>2]|0)>>>0)Un(a,4153);c[t>>2]=b+16;c[b>>2]=8;c[b+8>>2]=d;d=d+4|0;c[d>>2]=(c[d>>2]|0)+1;d=c[u>>2]|0;e=(c[t>>2]|0)-d>>4;b=((g|0)<48?e:0)+i|0;if(b>>>0>=e>>>0)jo(a,376,i);ro(a,d+(b<<4)|0,d+(e+-1<<4)|0)|0;d=c[u>>2]|0;e=(c[t>>2]|0)-d>>4;b=e+-2|0;if(e>>>0<=1)jo(a,376,-2);o=d+(b<<4)|0;e=d+(e+-1<<4)|0;p=c[o>>2]|0;b=c[d+(b<<4)+8>>2]|0;QQ(o|0,o+16|0,e-o|0)|0;c[e>>2]=2;e=(c[t>>2]|0)+-16|0;c[t>>2]=e;d=e;do if(p&8){o=b+4|0;p=(c[o>>2]|0)+-1|0;c[o>>2]=p;if(p|0)break;Yn(c[r>>2]|0,b);e=c[t>>2]|0;d=e}while(0);g=c[u>>2]|0;b=d-g>>4;b=b|0?g+(b+-1<<4)|0:0;b=(b|0)==0?936:b;do if((c[b>>2]|0)==8){b=c[b+8>>2]|0;if(!b){q=124;break}if(c[b>>2]&512|0)q=124}else q=124;while(0);do if((q|0)==124){if((e|0)==(g|0))Jn(a,268620,50337407,268636);d=e+-16|0;c[t>>2]=d;q=c[e+-16>>2]|0;b=c[e+-8>>2]|0;c[d>>2]=2;do if(q&8){p=b+4|0;q=(c[p>>2]|0)+-1|0;c[p>>2]=q;if(q|0)break;Yn(c[r>>2]|0,b);d=c[t>>2]|0}while(0);b=c[(c[j>>2]|0)+60>>2]|0;if(d>>>0<(c[s>>2]|0)>>>0){c[t>>2]=d+16;c[d>>2]=8;c[d+8>>2]=b;q=b+4|0;c[q>>2]=(c[q>>2]|0)+1;break}else Un(a,4153)}while(0);Mo(a,2,0);q=c[u>>2]|0;b=(c[t>>2]|0)-q>>4;b=b>>>0>1?q+(b+-2<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9)In(a,2130,-2,268963);b=c[b+8>>2]|0;if(!b)In(a,2130,-2,268963);fo(a,b,c[(c[j>>2]|0)+352>>2]|0,4);b=c[t>>2]|0;g=b-(c[u>>2]|0)|0;q=g>>4;i=q+-2|0;if(q>>>0<=1)jo(a,300,-2);d=c[(c[j>>2]|0)+356>>2]|0;if(b>>>0>=(c[s>>2]|0)>>>0)Un(a,4153);c[t>>2]=b+16;c[b>>2]=8;c[b+8>>2]=d;d=d+4|0;c[d>>2]=(c[d>>2]|0)+1;d=c[u>>2]|0;e=(c[t>>2]|0)-d>>4;b=((g|0)<32?e:0)+i|0;if(b>>>0>=e>>>0)jo(a,376,i);ro(a,d+(b<<4)|0,d+(e+-1<<4)|0)|0;d=c[u>>2]|0;e=(c[t>>2]|0)-d>>4;b=e+-2|0;if(e>>>0<=1)jo(a,376,-2);p=d+(b<<4)|0;q=d+(e+-1<<4)|0;s=c[p>>2]|0;d=c[d+(b<<4)+8>>2]|0;QQ(p|0,p+16|0,q-p|0)|0;c[q>>2]=2;b=(c[t>>2]|0)+-16|0;c[t>>2]=b;do if(s&8){q=d+4|0;s=(c[q>>2]|0)+-1|0;c[q>>2]=s;if(s|0)break;Yn(c[r>>2]|0,d);b=c[t>>2]|0}while(0);u=c[u>>2]|0;b=b-u>>4;b=b>>>0>1?u+(b+-2<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9)In(a,2130,-2,268963);b=c[b+8>>2]|0;if(!b)In(a,2130,-2,268963);else{fo(a,b,c[(c[j>>2]|0)+356>>2]|0,4);return 1}return 0}function Cs(a){a=a|0;return -6}function Ds(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+96|0;t=w+88|0;p=w+24|0;n=w+16|0;m=w+8|0;k=w;v=b+68|0;e=c[v>>2]|0;u=b+56|0;if(e>>>0>=(c[u>>2]|0)>>>0)Un(b,4361);c[v>>2]=e+16;if(c[b+72>>2]|0?(d=c[b+64>>2]|0,o=d+-16|0,c[e>>2]=c[o>>2],c[e+4>>2]=c[o+4>>2],c[e+8>>2]=c[o+8>>2],c[e+12>>2]=c[o+12>>2],c[o>>2]&8|0):0){o=(c[d+-8>>2]|0)+4|0;c[o>>2]=(c[o>>2]|0)+1}e=c[v>>2]|0;switch(c[e+-16>>2]|0){case 9:{j=c[e+-8>>2]|0;i=b+64|0;g=e-(c[i>>2]|0)|0;t=g>>4;h=t+-1|0;if(!t)jo(b,300,-1);d=c[(c[b+304>>2]|0)+352>>2]|0;if(e>>>0>=(c[u>>2]|0)>>>0)Un(b,4153);c[v>>2]=e+16;c[e>>2]=8;c[e+8>>2]=d;e=d+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[i>>2]|0;f=(c[v>>2]|0)-e>>4;d=((g|0)<16?f:0)+h|0;if(d>>>0>=f>>>0)jo(b,376,h);ro(b,e+(d<<4)|0,e+(f+-1<<4)|0)|0;e=c[i>>2]|0;f=(c[v>>2]|0)-e>>4;d=f+-2|0;if(f>>>0<=1)jo(b,376,-2);s=e+(d<<4)|0;t=e+(f+-1<<4)|0;u=c[s>>2]|0;e=c[e+(d<<4)+8>>2]|0;QQ(s|0,s+16|0,t-s|0)|0;c[t>>2]=2;d=(c[v>>2]|0)+-16|0;c[v>>2]=d;if((u&8|0)!=0?(t=e+4|0,u=(c[t>>2]|0)+-1|0,c[t>>2]=u,(u|0)==0):0){Yn(c[b+44>>2]|0,e);d=c[v>>2]|0}u=c[i>>2]|0;v=d-u>>4;v=v|0?u+(v+-1<<4)|0:0;if((c[((v|0)==0?936:v)>>2]|0)==2)e=335059;else e=Eo(b,-1)|0;d=c[j>>2]|0;if(d&2048|0){c[k>>2]=e;Lo(b,278980,k);l=w;return 1}if(d&4096|0){c[m>>2]=e;Lo(b,279016,m);l=w;return 1}if(!(d&1024))Vn(b,278868,162);c[n>>2]=e;Lo(b,279048,n);l=w;return 1}case 6:{o=c[e+-12>>2]|0;if(e>>>0>=(c[u>>2]|0)>>>0)Un(b,4300);k=c[e+-8>>2]|0;d=Oo(b,269735,9)|0;e=c[v>>2]|0;c[v>>2]=e+16;c[e>>2]=8;c[e+8>>2]=d;d=d+4|0;c[d>>2]=(c[d>>2]|0)+1;Lo(b,269745,p);d=a[268793+(k>>>28)>>0]|0;a[p>>0]=d;e=a[268793+(k>>>24&15)>>0]|0;a[p+1>>0]=e;f=a[268793+(k>>>20&15)>>0]|0;a[p+2>>0]=f;g=a[268793+(k>>>16&15)>>0]|0;a[p+3>>0]=g;h=a[268793+(k>>>12&15)>>0]|0;a[p+4>>0]=h;i=a[268793+(k>>>8&15)>>0]|0;a[p+5>>0]=i;j=a[268793+(k>>>4&15)>>0]|0;a[p+6>>0]=j;k=a[268793+(k&15)>>0]|0;a[p+7>>0]=k;m=c[v>>2]|0;if(m>>>0>=(c[u>>2]|0)>>>0)Un(b,4300);n=c[b+44>>2]|0;e=((((((((((((((((c[n+148>>2]^8)*33|0)+(k&255)|0)*33|0)+(j&255)|0)*33|0)+(i&255)|0)*33|0)+(h&255)|0)*33|0)+(g&255)|0)*33|0)+(f&255)|0)*33|0)+(e&255)|0)*33|0)+(d&255)|0;d=c[(c[n+176>>2]|0)+((e&c[n+180>>2])<<2)>>2]|0;a:do if(!d)q=35;else while(1){if(((c[d+12>>2]|0)==(e|0)?(c[d+20>>2]|0)==8:0)?(KN(p,d+28|0,8)|0)==0:0){r=d;s=m;break a}d=c[d+8>>2]|0;if(!d){q=35;break}}while(0);do if((q|0)==35){d=no(n,p,8,e)|0;if(!d)Mn(b,268998,803);else{r=d;s=c[v>>2]|0;break}}while(0);c[v>>2]=s+16;c[s>>2]=8;c[s+8>>2]=r;s=r+4|0;c[s>>2]=(c[s>>2]|0)+1;c[t>>2]=o;Lo(b,269752,t);Mo(b,3,0);if((c[v>>2]|0)>>>0>=(c[u>>2]|0)>>>0)Un(b,4300);u=Oo(b,269758,23)|0;t=c[v>>2]|0;c[v>>2]=t+16;c[t>>2]=8;c[t+8>>2]=u;v=u+4|0;c[v>>2]=(c[v>>2]|0)+1;Mo(b,3,0);l=w;return 1}default:Vn(b,278868,162)}return 0}function Es(a){a=a|0;wv(a,17,278964);return 1}function Fs(a){a=a|0;wv(a,17,332953);return 1}function Gs(a){a=a|0;wv(a,18,278948);return 1}function Hs(a){a=a|0;wv(a,18,278932);return 1}function Is(a){a=a|0;wv(a,19,0);return 1}function Js(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+1168|0;j=p;m=a+68|0;g=c[m>>2]|0;n=a+64|0;b=c[n>>2]|0;b=(g|0)!=(b|0)?b:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=8){l=p;return 1}f=c[b+8>>2]|0;if(!f){l=p;return 1}if(c[f>>2]&512|0){l=p;return 1}h=c[a+72>>2]|0;if((h|0)!=0?(d=c[h+20>>2]|0,(d|0)!=0):0)if(!(c[d+52>>2]&1))b=8;else b=c[h+52>>2]<<1&32|8;else{d=0;b=8}e=c[(c[a+304>>2]|0)+412>>2]|0;k=a+56|0;if(g>>>0>=(c[k>>2]|0)>>>0)Un(a,4153);c[m>>2]=g+16;c[g>>2]=8;c[g+8>>2]=e;e=e+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[f+20>>2]|0;RQ(j|0,0,1160)|0;c[j>>2]=b;RQ(j+16|0,0,832)|0;c[j+792>>2]=f+28;c[j+796>>2]=e;c[j+848>>2]=b;b=a+88|0;e=c[b>>2]|0;c[b>>2]=j+8;f=c[m>>2]|0;if(f>>>0<((c[n>>2]|0)+16|0)>>>0)Vn(a,268605,315);if((c[k>>2]|0)>>>0<f>>>0)Vn(a,268605,315);i=Xn(a,20,j,1,1)|0;c[b>>2]=e;if(i|0)xo(a);i=c[(c[m>>2]|0)+-8>>2]|0;h=h+52|0;do if(!(c[h>>2]&16)){b=c[a+104>>2]|0;vp(a,i,b,b,0);b=c[a+100>>2]|0;d=c[m>>2]|0;if(d>>>0<(c[k>>2]|0)>>>0){c[m>>2]=d+16;c[d>>2]=9;c[d+8>>2]=b;o=38;break}else Un(a,4153)}else{b=d+28|0;e=c[b>>2]|0;if(!e){ip(a,d);e=c[b>>2]|0}if(!(c[i>>2]&65536))vp(a,i,c[d+24>>2]|0,e,0);else{g=vo(a,52)|0;b=c[a+44>>2]|0;c[g>>2]=-2147483519;b=b+24|0;f=c[b>>2]|0;if(f|0)c[f+12>>2]=g;c[g+12>>2]=0;c[g+8>>2]=f;c[b>>2]=g;b=c[m>>2]|0;if(b>>>0>=(c[k>>2]|0)>>>0)Un(a,4153);c[m>>2]=b+16;c[b>>2]=9;c[b+8>>2]=g;f=g+4|0;c[f>>2]=(c[f>>2]|0)+1;c[g+20>>2]=e;if(e|0){f=e+4|0;c[f>>2]=(c[f>>2]|0)+1}e=c[n>>2]|0;b=(c[m>>2]|0)-e>>4;if(!b)jo(a,376,0);b=b+-1|0;if(b|0){f=e+(b<<4)|0;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];c[j+8>>2]=c[f+8>>2];c[j+12>>2]=c[f+12>>2];QQ(e+16|0,e|0,b<<4|0)|0;c[e>>2]=c[j>>2];c[e+4>>2]=c[j+4>>2];c[e+8>>2]=c[j+8>>2];c[e+12>>2]=c[j+12>>2]}vp(a,i,g,g,0)}b=(c[a+52>>2]|0)+(c[d+40>>2]|0)+-16|0;d=c[m>>2]|0;if(d>>>0>=(c[k>>2]|0)>>>0)Un(a,4153);c[m>>2]=d+16;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];if(c[b>>2]&8|0){b=c[b+8>>2]|0;o=38}}while(0);if((o|0)==38){o=b+4|0;c[o>>2]=(c[o>>2]|0)+1}so(a,((c[m>>2]|0)-(c[n>>2]|0)>>4)+-2|0,c[h>>2]&16)|0;l=p;return 1}function Ks(a){a=a|0;var b=0,d=0,e=0.0,f=0,g=0,i=0;f=a+68|0;d=a+64|0;b=c[d>>2]|0;if((c[f>>2]|0)==(b|0))jo(a,300,0);e=+ho(a,b);i=c[d>>2]|0;d=c[i>>2]|0;g=i+8|0;b=c[g>>2]|0;c[i>>2]=0;h[g>>3]=e;if(d&8|0?(g=b+4|0,i=(c[g>>2]|0)+-1|0,c[g>>2]=i,(i|0)==0):0)Yn(c[a+44>>2]|0,b);b=c[f>>2]|0;if(b>>>0<(c[a+56>>2]|0)>>>0){h[j>>3]=e;i=c[j+4>>2]&2146435072;c[f>>2]=b+16;c[b>>2]=4;c[b+8>>2]=(i>>>0<2146435072|(i|0)==2146435072&0<0)&1;return 1}else Un(a,4185);return 0}function Ls(a){a=a|0;var b=0,d=0,e=0.0,f=0,g=0,i=0;f=a+68|0;d=a+64|0;b=c[d>>2]|0;if((c[f>>2]|0)==(b|0))jo(a,300,0);e=+ho(a,b);i=c[d>>2]|0;d=c[i>>2]|0;g=i+8|0;b=c[g>>2]|0;c[i>>2]=0;h[g>>3]=e;if(d&8|0?(g=b+4|0,i=(c[g>>2]|0)+-1|0,c[g>>2]=i,(i|0)==0):0)Yn(c[a+44>>2]|0,b);b=c[f>>2]|0;if(b>>>0<(c[a+56>>2]|0)>>>0){h[j>>3]=e;i=c[j+4>>2]&2147483647;i=(i>>>0>2146435072|(i|0)==2146435072&(c[j>>2]|0)>>>0>0)&1;c[f>>2]=b+16;c[b>>2]=4;c[b+8>>2]=i;return 1}else Un(a,4185);return 0}function Ms(a){a=a|0;Eo(a,0)|0;oo(a,10,1535);return 1}function Ns(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;Eo(a,0)|0;b=$o(a,1)|0;do if(!b){g=3101;b=10}else{if((b+-2|0)>>>0<=34){g=(b|0)==16?3101:1053;break}b=a+68|0;d=c[b>>2]|0;if(d>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4286);c[b>>2]=d+16;c[d>>2]=0;h[d+8>>3]=s;return 1}while(0);e=a+68|0;f=c[e>>2]|0;if(f>>>0>=(c[a+56>>2]|0)>>>0)Un(a,1093);d=c[a+64>>2]|0;if((f|0)==(d|0))jo(a,376,0);c[e>>2]=f+16;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];if(c[f>>2]&8|0){f=(c[f+8>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)+1}oo(a,b,g);return 1}function Os(a){a=a|0;wv(a,20,0);return 1}function Ps(a){a=a|0;Cq(a,0,1,0);return 1}function Qs(a){a=a|0;rq(a,0,1,2,0);return 1}function Rs(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;d=_p(a,0)|0;b=d>>>0>65535;d=b?d>>>16:d;b=b?0:16;e=(d&65280|0)==0;d=e?d:d>>>8;b=e?b|8:b;e=(d&240|0)==0;d=e?d:d>>>4;b=e?b|4:b;e=(d&12|0)==0;d=e?d:d>>>2;f=a+68|0;g=c[f>>2]|0;if(g>>>0<(c[a+56>>2]|0)>>>0){a=d>>>1&1;c[f>>2]=g+16;c[g>>2]=0;h[g+8>>3]=+(((a^1)+(e?b|2:b)+((1<<a&d|0)==0&1)|0)>>>0);return 1}else Un(a,4274);return 0}function Ss(a){a=a|0;var b=0.0,d=0,e=0,f=0.0,g=0,i=0,j=0.0,k=0.0,l=0,m=0,n=0,o=0,p=0,q=0,r=0.0,u=0,v=0;u=a+68|0;g=c[u>>2]|0;p=a+64|0;i=c[p>>2]|0;m=g-i|0;q=m>>4;e=g;do if((m|0)>0){m=a+44|0;if((g|0)==(i|0)){i=0;jo(a,300,i)}else{d=0;r=0.0;o=0;l=i}while(1){b=+ho(a,l+(d<<4)|0);i=c[p>>2]|0;g=i+(d<<4)|0;l=c[g>>2]|0;i=i+(d<<4)+8|0;e=c[i>>2]|0;c[g>>2]=0;h[i>>3]=b;if(l&8|0?(i=e+4|0,l=(c[i>>2]|0)+-1|0,c[i>>2]=l,(l|0)==0):0)Yn(c[m>>2]|0,e);k=+B(+b);l=(iP(k)|0)==0;o=l?1:o;r=r>k|l?r:k;d=d+1|0;if((d|0)>=(q|0))break;l=c[p>>2]|0;if(d>>>0>=(c[u>>2]|0)-l>>4>>>0){n=3;break}}if((n|0)==3)jo(a,300,d);if(r==t){d=c[u>>2]|0;if(d>>>0<(c[a+56>>2]|0)>>>0){r=t;v=d;a=v+16|0;c[u>>2]=a;c[v>>2]=0;v=v+8|0;h[v>>3]=r;return 1}else Un(a,4215)}if(o|0){d=c[u>>2]|0;if(d>>>0<(c[a+56>>2]|0)>>>0){r=s;v=d;a=v+16|0;c[u>>2]=a;c[v>>2]=0;v=v+8|0;h[v>>3]=r;return 1}else Un(a,4215)}if(r==0.0){v=c[u>>2]|0;break}d=c[u>>2]|0;i=c[p>>2]|0;l=d-i>>4;f=0.0;k=0.0;g=0;while(1){e=g>>>0<l>>>0?i+(g<<4)|0:0;e=(e|0)==0?936:e;if(!(c[e>>2]|0))b=+h[e+8>>3];else b=s;b=+B(+b)/r;b=b*b-f;j=k+b;g=g+1|0;if((g|0)>=(q|0))break;else{f=j-k-b;k=j}}b=r*+C(+j);if(d>>>0<(c[a+56>>2]|0)>>>0){r=b;v=d;a=v+16|0;c[u>>2]=a;c[v>>2]=0;v=v+8|0;h[v>>3]=r;return 1}else Un(a,4215)}else v=e;while(0);if(v>>>0<(c[a+56>>2]|0)>>>0){r=0.0;a=v+16|0;c[u>>2]=a;c[v>>2]=0;v=v+8|0;h[v>>3]=r;return 1}else Un(a,4215);return 0}function Ts(a){a=a|0;var b=0,d=0,e=0,f=0,g=0.0;b=_p(a,0)|0;d=_p(a,1)|0;e=a+68|0;f=c[e>>2]|0;if(f>>>0<(c[a+56>>2]|0)>>>0){g=+(O(d,b)|0);c[e>>2]=f+16;c[f>>2]=0;h[f+8>>3]=g;return 1}else Un(a,4244);return 0}function Us(a){a=a|0;var b=0,d=0,e=0.0,f=0,g=0,i=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0;p=a+68|0;f=c[p>>2]|0;m=a+64|0;g=c[m>>2]|0;l=f-g|0;n=l>>4;d=f;do if((l|0)>0){l=a+44|0;if((f|0)==(g|0)){g=0;jo(a,300,g)}else{k=-t;b=0;i=g}while(1){e=+ho(a,i+(b<<4)|0);g=c[m>>2]|0;f=g+(b<<4)|0;i=c[f>>2]|0;g=g+(b<<4)+8|0;d=c[g>>2]|0;c[f>>2]=0;h[g>>3]=e;if(i&8|0?(g=d+4|0,i=(c[g>>2]|0)+-1|0,c[g>>2]=i,(i|0)==0):0)Yn(c[l>>2]|0,d);do if((iP(e)|0)!=0?(iP(k)|0)!=0:0){if(!(k==0.0&e==0.0)){e=k>e?k:e;break}h[j>>3]=k;i=c[j+4>>2]|0;if((i|0)>-1|(i|0)==-1&(c[j>>2]|0)>>>0>4294967295)e=0.0;else{h[j>>3]=e;i=c[j+4>>2]|0;e=(i|0)>-1|(i|0)==-1&(c[j>>2]|0)>>>0>4294967295?0.0:-0.0}}else e=s;while(0);b=b+1|0;if((b|0)>=(n|0)){d=15;break}i=c[m>>2]|0;if(b>>>0>=(c[p>>2]|0)-i>>4>>>0){d=3;break}else k=e}if((d|0)==3)jo(a,300,b);else if((d|0)==15){o=e;q=c[p>>2]|0;break}}else{o=-t;q=d}while(0);if(q>>>0<(c[a+56>>2]|0)>>>0){c[p>>2]=q+16;c[q>>2]=0;h[q+8>>3]=o;return 1}else Un(a,4215);return 0}function Vs(a){a=a|0;var b=0,d=0,e=0.0,f=0,g=0,i=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0;p=a+68|0;f=c[p>>2]|0;m=a+64|0;g=c[m>>2]|0;l=f-g|0;n=l>>4;d=f;do if((l|0)>0){l=a+44|0;if((f|0)==(g|0)){g=0;jo(a,300,g)}else{k=t;b=0;i=g}while(1){e=+ho(a,i+(b<<4)|0);g=c[m>>2]|0;f=g+(b<<4)|0;i=c[f>>2]|0;g=g+(b<<4)+8|0;d=c[g>>2]|0;c[f>>2]=0;h[g>>3]=e;if(i&8|0?(g=d+4|0,i=(c[g>>2]|0)+-1|0,c[g>>2]=i,(i|0)==0):0)Yn(c[l>>2]|0,d);do if((iP(e)|0)!=0?(iP(k)|0)!=0:0)if(k==0.0&e==0.0){h[j>>3]=k;i=c[j>>2]|0;g=c[j+4>>2]|0;h[j>>3]=e;g=c[j+4>>2]|g;e=g>>>0>0|((g|0)==0?(c[j>>2]|i)>>>0>4294967295:0)?-0.0:0.0;break}else{e=k<e?k:e;break}else e=s;while(0);b=b+1|0;if((b|0)>=(n|0)){d=14;break}i=c[m>>2]|0;if(b>>>0>=(c[p>>2]|0)-i>>4>>>0){d=3;break}else k=e}if((d|0)==3)jo(a,300,b);else if((d|0)==14){o=e;q=c[p>>2]|0;break}}else{o=t;q=d}while(0);if(q>>>0<(c[a+56>>2]|0)>>>0){c[p>>2]=q+16;c[q>>2]=0;h[q+8>>3]=o;return 1}else Un(a,4215);return 0}function Ws(a){a=a|0;var d=0,e=0,f=0.0,g=0,i=0,j=0,k=0;d=c[a+72>>2]|0;do if(d){e=c[d+16>>2]|0;if(!e){g=(c[d+4>>2]|0)>>>8<<24>>24;break}if(c[e>>2]&4096)g=b[e+46>>1]|0;else g=0}else g=0;while(0);i=a+68|0;e=a+64|0;d=c[e>>2]|0;if((c[i>>2]|0)==(d|0))jo(a,300,0);f=+ho(a,d);k=c[e>>2]|0;e=c[k>>2]|0;j=k+8|0;d=c[j>>2]|0;c[k>>2]=0;h[j>>3]=f;if(e&8|0?(j=d+4|0,k=(c[j>>2]|0)+-1|0,c[j>>2]=k,(k|0)==0):0)Yn(c[a+44>>2]|0,d);f=+cg[c[4992+(g<<2)>>2]&31](f);d=c[i>>2]|0;if(d>>>0<(c[a+56>>2]|0)>>>0){c[i>>2]=d+16;c[d>>2]=0;h[d+8>>3]=f;return 1}else Un(a,4215);return 0}function Xs(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0.0;f=c[a+44>>2]|0;k=f+152|0;i=k;e=c[i>>2]|0;i=c[i+4>>2]|0;f=f+160|0;d=f;b=c[d>>2]|0;d=c[d+4>>2]|0;m=b^e;l=d^i;o=KQ(e|0,i|0,55)|0;g=z;p=JQ(e|0,i|0,9)|0;g=(z|g)^l;n=KQ(m|0,l|0,14)|0;c[k>>2]=(p|o)^m^n;c[k+4>>2]=g^z;k=KQ(m|0,l|0,36)|0;g=z;l=JQ(m|0,l|0,28)|0;c[f>>2]=l|k;c[f+4>>2]=z|g;f=a+68|0;g=c[f>>2]|0;if(g>>>0<(c[a+56>>2]|0)>>>0){o=yQ(b|0,d|0,e|0,i|0)|0;o=JQ(o|0,z|0,12)|0;p=z|1072693248;c[j>>2]=o;c[j+4>>2]=p;q=+h[j>>3]+-1.0;c[f>>2]=g+16;c[g>>2]=0;h[g+8>>3]=q;return 1}else Un(a,4215);return 0}function Ys(a){a=a|0;var b=0,d=0,e=0.0,f=0,g=0,i=0;f=a+68|0;d=a+64|0;b=c[d>>2]|0;if((c[f>>2]|0)==(b|0))jo(a,300,0);e=+ho(a,b);i=c[d>>2]|0;d=c[i>>2]|0;g=i+8|0;b=c[g>>2]|0;c[i>>2]=0;h[g>>3]=e;if(d&8|0?(g=b+4|0,i=(c[g>>2]|0)+-1|0,c[g>>2]=i,(i|0)==0):0)Yn(c[a+44>>2]|0,b);h[j>>3]=e;i=c[j+4>>2]|0;if(e==0.0|0==0&(i&2146435072|0)==2146435072&((c[j>>2]|0)!=0|(i&1048575|0)!=0))return 1;b=c[f>>2]|0;if(b>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4244);c[f>>2]=b+16;c[b>>2]=0;h[b+8>>3]=e>0.0?1.0:-1.0;return 1}function Zs(a){a=a|0;var d=0,e=0,f=0.0,g=0,i=0.0,j=0,k=0,l=0,m=0;d=c[a+72>>2]|0;do if(d){e=c[d+16>>2]|0;if(!e){j=(c[d+4>>2]|0)>>>8<<24>>24;break}if(c[e>>2]&4096)j=b[e+46>>1]|0;else j=0}else j=0;while(0);k=a+68|0;g=a+64|0;d=c[g>>2]|0;if((c[k>>2]|0)==(d|0))jo(a,300,0);i=+ho(a,d);d=c[g>>2]|0;l=c[d>>2]|0;m=d+8|0;e=c[m>>2]|0;c[d>>2]=0;h[m>>3]=i;if((l&8|0)!=0?(l=e+4|0,m=(c[l>>2]|0)+-1|0,c[l>>2]=m,(m|0)==0):0){Yn(c[a+44>>2]|0,e);d=c[g>>2]|0}if((c[k>>2]|0)-d>>4>>>0<=1)jo(a,300,1);f=+ho(a,d+16|0);l=c[g>>2]|0;g=l+16|0;m=c[g>>2]|0;l=l+24|0;d=c[l>>2]|0;c[g>>2]=0;h[l>>3]=f;if(m&8|0?(l=d+4|0,m=(c[l>>2]|0)+-1|0,c[l>>2]=m,(m|0)==0):0)Yn(c[a+44>>2]|0,d);f=+dg[c[4984+(j<<2)>>2]&3](i,f);d=c[k>>2]|0;if(d>>>0<(c[a+56>>2]|0)>>>0){c[k>>2]=d+16;c[d>>2]=0;h[d+8>>3]=f;return 1}else Un(a,4215);return 0}function _s(a){a=a|0;var d=0,e=0,f=0,g=0.0;d=c[a+64>>2]|0;switch(c[d+-16>>2]|0){case 9:{d=c[d+-8>>2]|0;if(!(c[d>>2]&4096))Vn(a,278868,412);f=b[d+44>>1]|0;d=a+68|0;e=c[d>>2]|0;if(e>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4244);g=f<<16>>16==-1?0.0:+(f<<16>>16);f=d;a=e;e=a+16|0;c[f>>2]=e;c[a>>2]=0;a=a+8|0;h[a>>3]=g;return 1}case 6:{e=a+68|0;f=c[e>>2]|0;if(f>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4274);g=+(((c[d+-12>>2]|0)>>>4&15)>>>0);a=f;f=a+16|0;c[e>>2]=f;c[a>>2]=0;a=a+8|0;h[a>>3]=g;return 1}default:Vn(a,278868,412)}return 0}function $s(a){a=a|0;var b=0,d=0,e=0;b=c[a+64>>2]|0;switch(c[b+-16>>2]|0){case 9:{if(!(c[c[b+-8>>2]>>2]&4096))Vn(a,278868,441);b=c[(c[a+304>>2]|0)+60>>2]|0;d=a+68|0;e=c[d>>2]|0;if(e>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4153);c[d>>2]=e+16;c[e>>2]=8;c[e+8>>2]=b;a=b+4|0;c[a>>2]=(c[a>>2]|0)+1;return 1}case 6:{bq(a,c[b+-8>>2]|0,c[b+-12>>2]|0);return 1}default:Vn(a,278868,441)}return 0}function at(a){a=a|0;var b=0,d=0,e=0,f=0.0;Eo(a,0)|0;d=a+68|0;e=c[d>>2]|0;b=c[a+64>>2]|0;b=(e|0)!=(b|0)?b:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=8)In(a,2101,0,287721);b=c[b+8>>2]|0;if(!b)In(a,2101,0,287721);if(e>>>0<(c[a+56>>2]|0)>>>0){f=+((c[b+20>>2]|0)>>>0);c[d>>2]=e+16;c[e>>2]=0;h[e+8>>3]=f;return 1}else Un(a,4274);return 0}function bt(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+16|0;r=x;v=b+68|0;w=b+64|0;d=c[w>>2]|0;d=(c[v>>2]|0)!=(d|0)?d:0;d=(d|0)==0?936:d;if((c[d>>2]|0)!=9)In(b,2130,0,268963);d=c[d+8>>2]|0;if(!d)In(b,2130,0,268963);if((c[d>>2]&-134217728|0)!=268435456)Vn(b,278417,2137);s=Bo(b,0)|0;q=(s|0)==0;a:do if(!q){i=b+44|0;f=0;g=0;b:while(1){Np(b,0,g)|0;e=c[w>>2]|0;if((c[v>>2]|0)-e>>4>>>0<=2){d=9;break}switch(c[e+32>>2]|0){case 9:{d=c[e+40>>2]|0;if(!(c[d>>2]&8192)){d=13;break b}break}case 10:{to(b,2);e=c[w>>2]|0;d=c[e+40>>2]|0;break}default:{d=13;break b}}p=c[d+52>>2]|0;f=p+f|0;if(f>>>0<p>>>0){d=15;break}d=c[v>>2]|0;if((d|0)==(e|0)){d=17;break}o=d+-16|0;c[v>>2]=o;p=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[o>>2]=2;if(p&8|0?(o=d+4|0,p=(c[o>>2]|0)+-1|0,c[o>>2]=p,(p|0)==0):0)Yn(c[i>>2]|0,d);g=g+1|0;if(g>>>0>=s>>>0){j=f;break a}}if((d|0)==9)jo(b,376,2);else if((d|0)==13)Jn(b,278417,100663514,278433);else if((d|0)==15)Jn(b,278417,50333801,269834);else if((d|0)==17)Jn(b,268620,50337407,268636)}else j=0;while(0);d=c[v>>2]|0;p=c[w>>2]|0;p=d-p>>4>>>0>1?p+16|0:0;if(s|0?(c[((p|0)==0?936:p)>>2]|0)!=2:0){Wq(b,1);e=c[v>>2]|0;d=c[w>>2]|0;d=e-d>>4>>>0>1?d+16|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==0?(n=+h[d+8>>3],(iP(n)|0)!=0):0){if(n<-2147483648.0)Jn(b,278417,50333821,269834);d=~~n;if(!(n>2147483647.0))if((d|0)<0)Jn(b,278417,50333821,269834);else{m=d;k=e}else{m=2147483647;k=e}}else{m=0;k=e}}else{m=j;k=d}f=b+56|0;if(k>>>0>=(c[f>>2]|0)>>>0)Un(b,4988);o=vo(b,60)|0;p=b+44|0;d=c[p>>2]|0;c[o>>2]=-1342168959;d=d+24|0;e=c[d>>2]|0;if(e|0)c[e+12>>2]=o;c[o+12>>2]=0;c[o+8>>2]=e;c[d>>2]=o;d=c[b+300>>2]|0;c[o+20>>2]=d;if(d|0){k=d+4|0;c[k>>2]=(c[k>>2]|0)+1}k=c[v>>2]|0;c[k>>2]=9;c[k+8>>2]=o;k=o+4|0;c[k>>2]=(c[k>>2]|0)+1;k=(c[v>>2]|0)+16|0;c[v>>2]=k;if(k>>>0>=(c[f>>2]|0)>>>0)Un(b,5237);if(m>>>0>2147483646)Jn(b,268620,50336889,268576);d=ap(c[p>>2]|0,m,0,r)|0;if(!d)Mn(b,268620,5246);k=c[v>>2]|0;c[k>>2]=10;c[k+8>>2]=d;d=d+4|0;c[d>>2]=(c[d>>2]|0)+1;d=(c[v>>2]|0)+16|0;c[v>>2]=d;do if(!q){j=c[r>>2]|0;k=0;c:while(1){Np(b,0,k)|0;e=c[w>>2]|0;if((c[v>>2]|0)-e>>4>>>0<=4){d=43;break}switch(c[e+64>>2]|0){case 9:{d=c[e+72>>2]|0;if(!(c[d>>2]&8192)){d=47;break c}break}case 10:{to(b,4);e=c[w>>2]|0;d=c[e+72>>2]|0;break}default:{d=47;break c}}f=c[d+52>>2]|0;i=f>>>0>m>>>0?m:f;g=c[d+40>>2]|0;if((g|0)!=0?(t=c[d+48>>2]|0,(t+f|0)>>>0<=(c[g+16>>2]|0)>>>0):0){if(!(c[g>>2]&128))d=g+24|0;else d=c[g+20>>2]|0;PQ(j|0,d+t|0,i|0)|0;e=c[w>>2]|0}j=j+i|0;m=m-i|0;d=c[v>>2]|0;if((d|0)==(e|0)){d=55;break}q=d+-16|0;c[v>>2]=q;r=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[q>>2]=2;if(r&8|0?(q=d+4|0,r=(c[q>>2]|0)+-1|0,c[q>>2]=r,(r|0)==0):0)Yn(c[p>>2]|0,d);k=k+1|0;if(k>>>0>=s>>>0){d=60;break}}if((d|0)==43)jo(b,376,4);else if((d|0)==47)Jn(b,278417,100663514,278433);else if((d|0)==55)Jn(b,268620,50337407,268636);else if((d|0)==60){u=c[v>>2]|0;break}}else u=d;while(0);d=u+-8|0;t=c[d>>2]|0;c[o+40>>2]=t;s=t+4|0;c[s>>2]=(c[s>>2]|0)+1;c[o+52>>2]=c[t+16>>2];a[o+58>>0]=1;if((u|0)==(c[w>>2]|0))Jn(b,268620,50337407,268636);b=u+-16|0;c[v>>2]=b;w=c[u+-16>>2]|0;d=c[d>>2]|0;c[b>>2]=2;if(!(w&8)){l=x;return 1}v=d+4|0;w=(c[v>>2]|0)+-1|0;c[v>>2]=w;if(w|0){l=x;return 1}Yn(c[p>>2]|0,d);l=x;return 1}function ct(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;$p(a,c[(Ou(a)|0)+16>>2]|0);b=c[a+300>>2]|0;j=a+68|0;d=c[j>>2]|0;if(d>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4153);c[j>>2]=d+16;c[d>>2]=9;c[d+8>>2]=b;d=b+4|0;c[d>>2]=(c[d>>2]|0)+1;d=c[j>>2]|0;i=a+64|0;b=c[i>>2]|0;g=d-b>>4;f=g>>>0>1?b+(g+-2<<4)|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)!=9)In(a,2130,-2,268963);h=c[f+8>>2]|0;if(!h)In(a,2130,-2,268963);f=g|0?b+(g+-1<<4)|0:0;f=(f|0)==0?936:f;switch(c[f>>2]|0){case 9:{f=c[f+8>>2]|0;h=h+20|0;e=c[h>>2]|0;c[h>>2]=f;if(f){h=f+4|0;c[h>>2]=(c[h>>2]|0)+1}break}case 2:{h=h+20|0;e=c[h>>2]|0;c[h>>2]=0;break}default:Jn(a,268620,100667121,269566)}if((e|0)!=0?(g=e+4|0,h=(c[g>>2]|0)+-1|0,c[g>>2]=h,(h|0)==0):0){tp(c[a+44>>2]|0,e);d=c[j>>2]|0;b=c[i>>2]|0}if((d|0)==(b|0))Jn(a,268620,50337407,268636);i=d+-16|0;c[j>>2]=i;j=c[d+-16>>2]|0;b=c[d+-8>>2]|0;c[i>>2]=2;if(!(j&8))return 1;i=b+4|0;j=(c[i>>2]|0)+-1|0;c[i>>2]=j;if(j|0)return 1;Yn(c[a+44>>2]|0,b);return 1}function dt(a){a=a|0;var b=0,d=0,e=0,f=0,g=0.0,i=0.0,j=0,k=0,l=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=Pu(a,3)|0;t=a+68|0;j=a+64|0;b=c[j>>2]|0;if((c[t>>2]|0)==(b|0))jo(a,376,0);switch(c[b>>2]|0){case 9:{b=c[b+8>>2]|0;if(!(c[b>>2]&8192))Jn(a,278417,100663514,278433);else p=b;break}case 10:{to(a,0);p=c[(c[j>>2]|0)+8>>2]|0;break}default:Jn(a,278417,100663514,278433)}k=c[q+52>>2]|0;l=c[p+52>>2]|0;Wq(a,1);b=c[j>>2]|0;b=(c[t>>2]|0)-b>>4>>>0>1?b+16|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(g=+h[b+8>>3],(iP(g)|0)!=0):0)if(!(g<-2147483648.0))if(g>2147483647.0)o=2147483647;else o=~~g;else o=-2147483648;else o=0;Wq(a,2);b=c[t>>2]|0;e=c[j>>2]|0;f=b-e>>4;d=f>>>0>2?e+32|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==0?(i=+h[d+8>>3],(iP(i)|0)!=0):0)if(!(i<-2147483648.0))if(i>2147483647.0)n=2147483647;else n=~~i;else n=-2147483648;else n=0;f=f>>>0>3?e+48|0:0;if((c[((f|0)==0?936:f)>>2]|0)!=2){Wq(a,3);b=c[t>>2]|0;d=c[j>>2]|0;d=b-d>>4>>>0>3?d+48|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==0?(m=+h[d+8>>3],(iP(m)|0)!=0):0)if(!(m<-2147483648.0))if(m>2147483647.0)d=2147483647;else d=~~m;else d=-2147483648;else d=0}else d=k;if((n|o|d|0)<0)Jn(a,278417,50333191,269834);if(l>>>0>o>>>0&(n>>>0<k>>>0&n>>>0<d>>>0)){d=(d>>>0<k>>>0?d:k)-n|0;d=(d+o|0)>>>0>l>>>0?l-o|0:d;f=c[p+48>>2]|0;e=c[p+40>>2]|0;if((d+o+f|0)>>>0<=(c[e+16>>2]|0)>>>0?(s=c[q+48>>2]|0,r=c[q+40>>2]|0,(d+n+s|0)>>>0<=(c[r+16>>2]|0)>>>0):0){if(!(c[e>>2]&128))e=e+24|0;else e=c[e+20>>2]|0;if(!(c[r>>2]&128))b=r+24|0;else b=c[r+20>>2]|0;QQ(e+f+o|0,b+s+n|0,d|0)|0;b=c[t>>2]|0}}else d=0;if(b>>>0<(c[a+56>>2]|0)>>>0){c[t>>2]=b+16;c[b>>2]=0;h[b+8>>3]=+(d>>>0);return 1}else Un(a,4274);return 0}function et(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;g=o;e=o+4|0;j=Pu(b,3)|0;i=j+40|0;if(!(c[i>>2]|0))Vn(b,278417,1342);m=b+68|0;n=b+64|0;d=c[n>>2]|0;d=(c[m>>2]|0)!=(d|0)?d:0;d=(d|0)==0?936:d;if(((c[d>>2]|0)==8?(f=c[d+8>>2]|0,(f|0)!=0):0)?(c[f>>2]&512|0)==0:0){e=f+28|0;k=c[f+20>>2]|0}else{a[e>>0]=_p(b,0)|0;k=1}d=c[j+52>>2]|0;h=vq(b,1,0,d,g)|0;f=c[n>>2]|0;f=(c[m>>2]|0)-f>>4>>>0>2?f+32|0:0;if((c[((f|0)==0?936:f)>>2]|0)==2)f=d;else f=vq(b,2,h,d,g)|0;d=c[i>>2]|0;if(!(c[d>>2]&128))d=d+24|0;else d=c[d+20>>2]|0;i=d+(c[j+48>>2]|0)+h|0;g=f-h|0;switch(k|0){case 1:{RQ(i|0,a[e>>0]|0,g|0)|0;break}case 0:break;default:if(g|0){d=0;f=0;while(1){h=f+1|0;a[i+d>>0]=a[e+f>>0]|0;d=d+1|0;if((d|0)==(g|0))break;else f=h>>>0<k>>>0?h:0}}}e=c[m>>2]|0;if(e>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4361);c[m>>2]=e+16;if(!(c[b+72>>2]|0)){l=o;return 1}d=c[n>>2]|0;n=d+-16|0;c[e>>2]=c[n>>2];c[e+4>>2]=c[n+4>>2];c[e+8>>2]=c[n+8>>2];c[e+12>>2]=c[n+12>>2];if(!(c[n>>2]&8)){l=o;return 1}n=(c[d+-8>>2]|0)+4|0;c[n>>2]=(c[n>>2]|0)+1;l=o;return 1}function ft(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;g=a+68|0;h=c[g>>2]|0;d=c[a+64>>2]|0;d=(h|0)!=(d|0)?d:0;d=(d|0)==0?936:d;a:do if((((c[d>>2]|0)==9?(e=c[d+8>>2]|0,(e|0)!=0):0)?(b=c[e+20>>2]|0,(b|0)!=0):0)?(i=c[a+300>>2]|0,(i|0)!=0):0){d=1e4;while(1){if((b|0)==(i|0)){f=1;break a}if(!d)break;b=c[b+20>>2]|0;if(!b){f=0;break a}else d=d+-1|0}Jn(a,278796,50331677,269067)}else f=0;while(0);if(h>>>0<(c[a+56>>2]|0)>>>0){c[g>>2]=h+16;c[h>>2]=4;c[h+8>>2]=f;return 1}else Un(a,4185);return 0}function gt(a){a=a|0;var b=0,d=0,e=0;b=Eo(a,0)|0;d=a+68|0;e=c[d>>2]|0;if(e>>>0<(c[a+56>>2]|0)>>>0){b=(JN(b,278863)|0)==0&1;c[d>>2]=e+16;c[e>>2]=4;c[e+8>>2]=b;return 1}else Un(a,4185);return 0}function ht(a){a=a|0;var b=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0;b=Pu(a,3)|0;l=b+40|0;e=c[l>>2]|0;if(e|0?(o=b+48|0,q=b+52|0,((c[q>>2]|0)+(c[o>>2]|0)|0)>>>0<=(c[e+16>>2]|0)>>>0):0){s=a+68|0;r=a+56|0;if((c[s>>2]|0)>>>0>=(c[r>>2]|0)>>>0)Un(a,4604);f=vo(a,40)|0;k=a+44|0;b=c[k>>2]|0;c[f>>2]=134234241;b=b+24|0;e=c[b>>2]|0;if(e|0)c[e+12>>2]=f;c[f+12>>2]=0;c[f+8>>2]=e;c[b>>2]=f;e=c[s>>2]|0;c[e>>2]=9;c[e+8>>2]=f;e=f+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[s>>2]|0;g=e+16|0;c[s>>2]=g;b=c[a+112>>2]|0;c[f+20>>2]=b;if(b|0){p=b+4|0;c[p>>2]=(c[p>>2]|0)+1}p=a+64|0;n=a+304|0;b=c[(c[n>>2]|0)+120>>2]|0;if(g>>>0>=(c[r>>2]|0)>>>0)Un(a,4153);c[s>>2]=e+32;c[g>>2]=8;c[e+24>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[s>>2]|0;f=b-(c[p>>2]|0)|0;m=f>>4;g=m+-2|0;if(m>>>0<=1)jo(a,300,-2);e=c[(c[n>>2]|0)+320>>2]|0;if(b>>>0>=(c[r>>2]|0)>>>0)Un(a,4153);c[s>>2]=b+16;c[b>>2]=8;c[b+8>>2]=e;i=e+4|0;c[i>>2]=(c[i>>2]|0)+1;i=c[p>>2]|0;j=(c[s>>2]|0)-i>>4;f=((f|0)<32?j:0)+g|0;if(f>>>0>=j>>>0)jo(a,376,g);if((j|0)==1)jo(a,376,-2);e=j+-2|0;m=a+72|0;b=c[m>>2]|0;if(!b)b=1;else b=c[b+52>>2]&1;No(a,i+(f<<4)|0,i+(j+-1<<4)|0,c[i+(e<<4)>>2]|0,c[i+(e<<4)+4>>2]|0,+h[i+(e<<4)+8>>3],b)|0;uq(a);f=c[q>>2]|0;g=vo(a,48)|0;b=c[k>>2]|0;c[g>>2]=272679041;b=b+24|0;e=c[b>>2]|0;if(e|0)c[e+12>>2]=g;c[g+12>>2]=0;c[g+8>>2]=e;c[b>>2]=g;b=c[a+132>>2]|0;c[g+20>>2]=b;if(b|0){k=b+4|0;c[k>>2]=(c[k>>2]|0)+1}b=c[s>>2]|0;c[b>>2]=9;c[b+8>>2]=g;b=g+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[s>>2]|0;c[s>>2]=b+16;b=c[b+8>>2]|0;io(a,b,0,f,0,0);c[b+40>>2]=f;g=c[b+24>>2]|0;g=(c[b+16>>2]|0)+(g*21|0)+(0-g&7)|0;b=c[l>>2]|0;if(!(c[b>>2]&128))b=b+24|0;else b=c[b+20>>2]|0;f=b+(c[o>>2]|0)|0;e=c[q>>2]|0;if(e|0){b=0;do{t=+(d[f+b>>0]|0);c[g+(b<<4)>>2]=0;h[g+(b<<4)+8>>3]=t;b=b+1|0}while((b|0)!=(e|0))}e=c[s>>2]|0;f=e-(c[p>>2]|0)|0;q=f>>4;j=q+-2|0;if(q>>>0<=1)jo(a,300,-2);b=c[(c[n>>2]|0)+324>>2]|0;if(e>>>0>=(c[r>>2]|0)>>>0)Un(a,4153);c[s>>2]=e+16;c[e>>2]=8;c[e+8>>2]=b;i=b+4|0;c[i>>2]=(c[i>>2]|0)+1;i=c[p>>2]|0;g=(c[s>>2]|0)-i>>4;f=((f|0)<32?g:0)+j|0;if(f>>>0>=g>>>0)jo(a,376,j);if((g|0)==1)jo(a,376,-2);e=g+-2|0;b=c[m>>2]|0;if(!b)b=1;else b=c[b+52>>2]&1;No(a,i+(f<<4)|0,i+(g+-1<<4)|0,c[i+(e<<4)>>2]|0,c[i+(e<<4)+4>>2]|0,+h[i+(e<<4)+8>>3],b)|0;uq(a);return 1}b=a+68|0;e=c[b>>2]|0;if(e>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4175);c[b>>2]=e+16;c[e>>2]=3;return 1}function it(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;m=o;f=Pu(b,2)|0;if(!f){d=b+68|0;if((c[d>>2]|0)>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4300);b=Oo(b,278847,15)|0;n=c[d>>2]|0;c[d>>2]=n+16;c[n>>2]=8;c[n+8>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;l=o;return 1}d=c[f+52>>2]|0;i=vq(b,1,0,d,m)|0;n=b+68|0;e=c[n>>2]|0;j=b+64|0;k=c[j>>2]|0;k=e-k>>4>>>0>2?k+32|0:0;if((c[((k|0)==0?936:k)>>2]|0)!=2){d=vq(b,2,i,d,m)|0;e=c[n>>2]|0}h=d-i|0;if(e>>>0>=(c[b+56>>2]|0)>>>0)Un(b,5237);if(h>>>0>2147483646)Jn(b,268620,50336889,268576);k=b+44|0;e=ap(c[k>>2]|0,h,4,m)|0;if(!e)Mn(b,268620,5246);g=c[n>>2]|0;c[g>>2]=10;c[g+8>>2]=e;g=e+4|0;c[g>>2]=(c[g>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+16;g=c[m>>2]|0;e=c[f+40>>2]|0;if(!e)Vn(b,278417,1204);f=c[f+48>>2]|0;if((f+d|0)>>>0>(c[e+16>>2]|0)>>>0)Vn(b,278417,1204);if(!(c[e>>2]&128))d=e+24|0;else d=c[e+20>>2]|0;PQ(g|0,d+f+i|0,h|0)|0;e=c[j>>2]|0;d=(c[n>>2]|0)-e>>4;if(!d)jo(b,376,-1);i=e+(d+-1<<4)|0;j=c[e>>2]|0;d=c[e+8>>2]|0;c[e>>2]=c[i>>2];c[e+4>>2]=c[i+4>>2];c[e+8>>2]=c[i+8>>2];c[e+12>>2]=c[i+12>>2];c[i>>2]=2;c[n>>2]=(c[n>>2]|0)+-16;if(j&8|0?(j=d+4|0,n=(c[j>>2]|0)+-1|0,c[j>>2]=n,(n|0)==0):0)Yn(c[k>>2]|0,d);Gp(b,1);a[m+8>>0]=0;a[m+9>>0]=1;c[m>>2]=0;a[m+4>>0]=-65;a[m+5>>0]=-128;a[m+6>>0]=0;a[m+7>>0]=0;Su(b,m);l=o;return 1}function jt(a){a=a|0;var b=0,d=0,e=0,f=0,g=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;o=Pu(a,3)|0;r=a+68|0;i=a+64|0;b=c[i>>2]|0;b=(c[r>>2]|0)!=(b|0)?b:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=8)In(a,2113,0,287721);b=c[b+8>>2]|0;if(!b)In(a,2113,0,287721);if(c[b>>2]&512|0)In(a,2113,0,287721);l=c[b+20>>2]|0;p=b+28|0;Wq(a,1);b=c[r>>2]|0;e=c[i>>2]|0;f=b-e>>4;d=f>>>0>1?e+16|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==0?(g=+h[d+8>>3],(iP(g)|0)!=0):0){if(g<-2147483648.0)Jn(a,278417,50331941,269834);d=~~g;if(!(g>2147483647.0))if((d|0)<0)Jn(a,278417,50331941,269834);else q=d;else q=2147483647}else q=0;m=o+52|0;d=c[m>>2]|0;if(d>>>0<q>>>0)Jn(a,278417,50331941,269834);f=f>>>0>2?e+32|0:0;if((c[((f|0)==0?936:f)>>2]|0)!=2){Wq(a,2);b=c[r>>2]|0;d=c[i>>2]|0;d=b-d>>4>>>0>2?d+32|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==0?(k=+h[d+8>>3],(iP(k)|0)!=0):0){if(k<-2147483648.0)Jn(a,278417,50331941,269834);d=~~k;if(!(k>2147483647.0))if((d|0)<0)Jn(a,278417,50331941,269834);else j=d;else j=2147483647;d=(c[m>>2]|0)-q|0;d=j>>>0>d>>>0?d:j;n=20}else f=0}else{d=d-q|0;n=20}if((n|0)==20)f=d>>>0>l>>>0?l:d;e=c[o+48>>2]|0;d=c[o+40>>2]|0;if(((c[m>>2]|0)+e|0)>>>0<=(c[d+16>>2]|0)>>>0){if(!(c[d>>2]&128))b=d+24|0;else b=c[d+20>>2]|0;PQ(b+e+q|0,p|0,f|0)|0;b=c[r>>2]|0}if(b>>>0<(c[a+56>>2]|0)>>>0){c[r>>2]=b+16;c[b>>2]=0;h[b+8>>3]=+(f>>>0);return 1}else Un(a,4274);return 0}function kt(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0.0;g=a+68|0;d=c[g>>2]|0;i=a+64|0;e=c[i>>2]|0;f=d;do if((d|0)==(e|0))if(f>>>0<(c[a+56>>2]|0)>>>0){b=f+16|0;c[g>>2]=b;c[f>>2]=0;h[f+8>>3]=0.0;break}else Un(a,4244);else b=d;while(0);if((b|0)==(e|0))jo(a,300,0);j=+ho(a,e);d=c[i>>2]|0;f=c[d>>2]|0;e=d+8|0;b=c[e>>2]|0;c[d>>2]=0;h[e>>3]=j;if(f&8|0?(e=b+4|0,f=(c[e>>2]|0)+-1|0,c[e>>2]=f,(f|0)==0):0)Yn(c[a+44>>2]|0,b);Gp(a,1);b=c[a+72>>2]|0;if(!b){a=1;return a|0}if(!(c[b+52>>2]&4)){a=1;return a|0}b=c[g>>2]|0;e=a+56|0;if(b>>>0>=(c[e>>2]|0)>>>0)Un(a,4361);c[g>>2]=b+16;d=c[i>>2]|0;f=d+-16|0;c[b>>2]=c[f>>2];c[b+4>>2]=c[f+4>>2];c[b+8>>2]=c[f+8>>2];c[b+12>>2]=c[f+12>>2];if(c[f>>2]&8|0){f=(c[d+-8>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)+1}d=c[g>>2]|0;f=c[d+-8>>2]|0;c[f>>2]=c[f>>2]&134217727|1342177280;if(d>>>0>=(c[e>>2]|0)>>>0)Un(a,1093);b=c[i>>2]|0;if((d|0)==(b|0))jo(a,376,0);c[g>>2]=d+16;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];if(c[d>>2]&8|0){f=(c[d+8>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)+1}i=c[i>>2]|0;b=(c[g>>2]|0)-i>>4;b=b>>>0>1?i+(b+-2<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9)In(a,2130,-2,268963);b=c[b+8>>2]|0;if(!b)In(a,2130,-2,268963);fo(a,b,c[(c[a+304>>2]|0)+404>>2]|0,0);a=0;return a|0}function lt(a){a=a|0;var b=0,d=0.0;d=+bv(a);b=c[a+64>>2]|0;b=(c[a+68>>2]|0)!=(b|0)?b:0;b=c[((b|0)==0?936:b)>>2]|0;Wq(a,0);if((iP(d)|0|1|0)==1){Eo(a,-1)|0;return 1}else{Tp(a,10,(vq(a,0,0,20,0)|0)+1|0,(b|0)!=2|2);return 1}return 0}function mt(a){a=a|0;var b=0,c=0.0;b=vq(a,0,0,20,0)|0;c=+bv(a);if((iP(c)|0|1|0)!=1?!(c>=1.0e21|c<=-1.0e21):0){Tp(a,10,b,9);return 1}Eo(a,-1)|0;return 1}function nt(a){a=a|0;var b=0;+bv(a);b=c[a+64>>2]|0;b=(c[a+68>>2]|0)!=(b|0)?b:0;if((c[((b|0)==0?936:b)>>2]|0)==2){b=10;Tp(a,b,0,0);return 1}b=vq(a,0,2,36,0)|0;Tp(a,b,0,0);return 1}function ot(a){a=a|0;var b=0.0,d=0;b=+bv(a);d=c[a+64>>2]|0;d=(c[a+68>>2]|0)!=(d|0)?d:0;if((c[((d|0)==0?936:d)>>2]|0)!=2?(Wq(a,0),(iP(b)|0|1|0)!=1):0){Tp(a,10,vq(a,0,1,21,0)|0,5);return 1}Eo(a,-1)|0;return 1}function pt(a){a=a|0;var b=0;+bv(a);b=c[a+64>>2]|0;b=(c[a+68>>2]|0)!=(b|0)?b:0;if((c[((b|0)==0?936:b)>>2]|0)==2){b=10;Tp(a,b,0,0);return 1}b=vq(a,0,2,36,0)|0;Tp(a,b,0,0);return 1}function qt(a){a=a|0;+bv(a);return 1}function rt(a){a=a|0;var b=0,d=0,e=0,f=0;f=a+68|0;e=c[f>>2]|0;d=c[a+64>>2]|0;d=(e|0)!=(d|0)?d:0;d=c[((d|0)==0?936:d)>>2]|0;b=c[a+72>>2]|0;if(!b)b=1;else b=(c[b+52>>2]&4|0)==0;if((d&-2|0)!=2&b){to(a,0);return 1}if(!(140>>>d&1)){to(a,0);return 1}if(e>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4604);e=vo(a,40)|0;b=c[a+44>>2]|0;c[e>>2]=134234241;b=b+24|0;d=c[b>>2]|0;if(d|0)c[d+12>>2]=e;c[e+12>>2]=0;c[e+8>>2]=d;c[b>>2]=e;b=c[f>>2]|0;c[b>>2]=9;c[b+8>>2]=e;b=e+4|0;c[b>>2]=(c[b>>2]|0)+1;c[f>>2]=(c[f>>2]|0)+16;b=c[a+112>>2]|0;c[e+20>>2]=b;if(!b)return 1;f=b+4|0;c[f>>2]=(c[f>>2]|0)+1;return 1}function st(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;d=a+68|0;e=a+64|0;b=(c[d>>2]|0)-(c[e>>2]|0)|0;f=b>>4;if((b|0)<16)Vn(a,268620,419);to(a,0);if((b|0)==16){Gp(a,1);return 1}else b=1;do{g=c[e>>2]|0;g=b>>>0<(c[d>>2]|0)-g>>4>>>0?g+(b<<4)|0:0;if((c[((g|0)==0?936:g)>>2]&-2|0)!=2?(to(a,b),sq(a,b,16),tq(a,-1,1)|0):0)do lq(a,0);while((tq(a,-1,1)|0)!=0);b=b+1|0}while((b|0)<(f|0));Gp(a,1);return 1}function tt(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;i=a+68|0;b=c[i>>2]|0;h=a+64|0;d=c[h>>2]|0;e=(b|0)!=(d|0)?d:0;if((c[((e|0)==0?936:e)>>2]|0)==10){to(a,0);b=c[i>>2]|0;d=c[h>>2]|0}e=b;b=(b|0)!=(d|0)?d:0;b=(b|0)==0?936:b;switch(c[b>>2]|0){case 9:{f=4;break}case 3:{g=0;break}default:In(a,2416,0,268963)}if((f|0)==4){b=c[b+8>>2]|0;if(!b)In(a,2416,0,268963);else g=b}if(e>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4604);e=vo(a,40)|0;f=a+44|0;b=c[f>>2]|0;c[e>>2]=134234241;b=b+24|0;d=c[b>>2]|0;if(d|0)c[d+12>>2]=e;c[e+12>>2]=0;c[e+8>>2]=d;c[b>>2]=e;b=c[i>>2]|0;c[b>>2]=9;c[b+8>>2]=e;b=e+4|0;c[b>>2]=(c[b>>2]|0)+1;b=(c[i>>2]|0)+16|0;c[i>>2]=b;c[e+20>>2]=g;if(g|0){g=g+4|0;c[g>>2]=(c[g>>2]|0)+1}d=c[h>>2]|0;b=b-d>>4;h=b>>>0>1?d+16|0:0;if((c[((h|0)==0?936:h)>>2]|0)==2)return 1;if(!b)jo(a,376,-1);g=d+(b+-1<<4)|0;h=c[d>>2]|0;b=c[d+8>>2]|0;c[d>>2]=c[g>>2];c[d+4>>2]=c[g+4>>2];c[d+8>>2]=c[g+8>>2];c[d+12>>2]=c[g+12>>2];c[g>>2]=2;c[i>>2]=(c[i>>2]|0)+-16;if(h&8|0?(h=b+4|0,i=(c[h>>2]|0)+-1|0,c[h>>2]=i,(i|0)==0):0)Yn(c[f>>2]|0,b);ut(a)|0;return 1}function ut(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;e=k+12|0;f=k+8|0;g=k+4|0;h=k;j=a+68|0;i=a+64|0;b=c[i>>2]|0;b=(c[j>>2]|0)!=(b|0)?b:0;b=(b|0)==0?936:b;switch(c[b>>2]|0){case 9:{b=c[b+8>>2]|0;if(!b)In(a,2416,0,268963);else d=b;break}case 6:case 10:{to(a,0);d=c[(c[i>>2]|0)+8>>2]|0;break}default:In(a,2416,0,268963)}to(a,1);Gp(a,2);sq(a,1,20);Gp(a,3);if(tq(a,2,1)|0)do{av(a,4,e,f,g,h);Gp(a,3)}while((tq(a,2,1)|0)!=0);Gp(a,2);sq(a,1,20);Gp(a,3);if(tq(a,2,1)|0)do{av(a,4,e,f,g,h);Fp(a,c[e>>2]|0,d,c[(c[i>>2]|0)+56>>2]|0,c[f>>2]|0,c[g>>2]|0,c[h>>2]|0,1)|0;Gp(a,3)}while((tq(a,2,1)|0)!=0);d=c[j>>2]|0;if(d>>>0>=(c[a+56>>2]|0)>>>0)Un(a,1093);b=c[i>>2]|0;if((d|0)==(b|0))jo(a,376,0);c[j>>2]=d+16;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];if(!(c[d>>2]&8)){l=k;return 1}j=(c[d+8>>2]|0)+4|0;c[j>>2]=(c[j>>2]|0)+1;l=k;return 1}function vt(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;i=q+12|0;j=q+8|0;k=q+4|0;m=q;d=c[a+72>>2]|0;do if(d){e=c[d+16>>2]|0;if(!e){n=(c[d+4>>2]|0)>>>8<<24>>24;break}if(c[e>>2]&4096)n=b[e+46>>1]|0;else n=0}else n=0;while(0);o=a+68|0;h=a+64|0;d=c[h>>2]|0;d=(c[o>>2]|0)!=(d|0)?d:0;d=(d|0)==0?936:d;switch(c[d>>2]|0){case 9:{d=c[d+8>>2]|0;if(!d)In(a,2416,0,268963);else p=d;break}case 6:case 10:{to(a,0);p=c[(c[h>>2]|0)+8>>2]|0;break}default:In(a,2416,0,268963)}po(a,1,1);d=c[o>>2]|0;e=c[h>>2]|0;f=d-e>>4>>>0>1?e+16|0:0;f=(f|0)==0?936:f;if(!((c[f>>2]|0)==8?(g=c[f+8>>2]|0,(g|0)!=0):0)){Eo(a,1)|0;f=c[o>>2]|0;e=c[h>>2]|0;d=f-e>>4>>>0>1?e+16|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==8){g=c[d+8>>2]|0;d=f}else{g=0;d=f}}d=d-e>>4>>>0>2?e+32|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)!=9)In(a,2130,2,268963);if(!(c[d+8>>2]|0))In(a,2130,2,268963);av(a,2,m,k,i,j);d=Fp(a,c[m>>2]|0,p,g,c[k>>2]|0,c[i>>2]|0,c[j>>2]|0,n^1)|0;e=c[o>>2]|0;f=e>>>0<(c[a+56>>2]|0)>>>0;if(!n){if(!f)Un(a,4153);c[o>>2]=e+16;c[e>>2]=9;c[e+8>>2]=p;a=p+4|0;c[a>>2]=(c[a>>2]|0)+1;l=q;return 1}else{if(!f)Un(a,4185);c[o>>2]=e+16;c[e>>2]=4;c[e+8>>2]=(d|0)!=0&1;l=q;return 1}return 0}function wt(a){a=a|0;var d=0,e=0;d=c[a+72>>2]|0;do if(d|0){e=c[d+16>>2]|0;if(!e)d=(c[d+4>>2]|0)>>>8<<24>>24;else{if(!(c[e>>2]&4096))break;d=b[e+46>>1]|0}if(d|0){$u(a,-2);return 1}}while(0);to(a,0);$u(a,-2);return 1}function xt(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=a+68|0;b=c[f>>2]|0;e=c[a+64>>2]|0;g=b-e>>4;d=g|0?e:0;e=g>>>0>1?e+16|0:0;if((d|0)==0|(e|0)==0)d=0;else{d=mp(0,d,e,1)|0;b=c[f>>2]|0}if(b>>>0<(c[a+56>>2]|0)>>>0){c[f>>2]=b+16;c[b>>2]=4;c[b+8>>2]=(d|0)!=0&1;return 1}else Un(a,4185);return 0}function yt(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;d=c[a+72>>2]|0;a:do if(d){g=c[d+16>>2]|0;if(!g)d=(c[d+4>>2]|0)>>>8<<24>>24;else{if(!(c[g>>2]&4096)){j=7;break}d=b[g+46>>1]|0}if(d){g=a+68|0;d=c[g>>2]|0;f=c[a+64>>2]|0;f=(d|0)!=(f|0)?f:0;f=(f|0)==0?936:f;switch(c[f>>2]|0){case 6:case 10:{e=g;i=d;h=0;break a}case 9:break;default:In(a,2416,0,268963)}f=c[f+8>>2]|0;if(!f)In(a,2416,0,268963);else{e=g;j=12}}else j=7}else j=7;while(0);if((j|0)==7){e=a+68|0;g=c[e>>2]|0;d=c[a+64>>2]|0;d=(g|0)!=(d|0)?d:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==9?(f=c[d+8>>2]|0,(f|0)!=0):0){d=g;j=12}else{i=g;h=0}}if((j|0)==12){i=d;h=(c[f>>2]&128|0)!=0}if(i>>>0<(c[a+56>>2]|0)>>>0){c[e>>2]=i+16;c[i>>2]=4;c[i+8>>2]=h&1;return 1}else Un(a,4185);return 0}function zt(e){e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;f=c[e+72>>2]|0;do if(f){g=c[f+16>>2]|0;if(!g){j=(c[f+4>>2]|0)>>>8<<24>>24;break}if(c[g>>2]&4096)j=b[g+46>>1]|0;else j=0}else j=0;while(0);l=e+68|0;m=c[l>>2]|0;f=c[e+64>>2]|0;f=(m|0)!=(f|0)?f:0;f=(f|0)==0?936:f;g=c[f>>2]|0;switch(g|0){case 6:case 10:{if(m>>>0>=(c[e+56>>2]|0)>>>0)Un(e,4185);k=(j|0)!=1|(g|0)==6;k=k&1;e=m+16|0;c[l>>2]=e;c[m>>2]=4;e=m+8|0;c[e>>2]=k;return 1}case 9:{h=10;break}default:f=1}a:do if((h|0)==10){k=c[f+8>>2]|0;if(k)if(!(c[k>>2]&128)){g=c[k+28>>2]|0;if(g|0){f=c[k+16>>2]|0;i=c[k+24>>2]|0;h=f+(i<<4)|0;i=f+(i*20|0)|0;if(!j){f=0;do{if(c[h+(f<<2)>>2]|0?a[i+f>>0]&4:0){f=0;break a}f=f+1|0}while(f>>>0<g>>>0)}else{f=0;do{if(c[h+(f<<2)>>2]|0?(j=d[i+f>>0]|0,!((j&4|0)==0&(j&9|0)!=1)):0){f=0;break a}f=f+1|0}while(f>>>0<g>>>0)}}h=c[k+32>>2]|0;if(!h)f=1;else{g=c[k+24>>2]|0;g=(c[k+16>>2]|0)+(g*21|0)+(0-g&7)|0;f=0;while(1){if((c[g+(f<<4)>>2]|0)!=7){f=0;break a}f=f+1|0;if(f>>>0>=h>>>0){f=1;break}}}}else f=0;else f=1}while(0);if(m>>>0<(c[e+56>>2]|0)>>>0){k=f;k=k&1;e=m+16|0;c[l>>2]=e;c[m>>2]=4;e=m+8|0;c[e>>2]=k;return 1}else Un(e,4185);return 0}function At(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+16|0;n=p;o=a+72|0;d=c[o>>2]|0;a:do if(d){e=c[d+16>>2]|0;if(!e)d=(c[d+4>>2]|0)>>>8<<24>>24;else{if(!(c[e>>2]&4096)){g=11;break}d=b[e+46>>1]|0}if((d|0)==3){d=a+64|0;e=c[d>>2]|0;e=(c[a+68>>2]|0)!=(e|0)?e:0;e=(e|0)==0?936:e;switch(c[e>>2]|0){case 9:{d=c[e+8>>2]|0;if(d|0){f=d;break a}In(a,2416,0,268963);break}case 6:case 10:{to(a,0);g=12;break a}default:In(a,2416,0,268963)}}else g=11}else g=11;while(0);if((g|0)==11){to(a,0);d=a+64|0;g=12}if((g|0)==12)f=c[(c[d>>2]|0)+8>>2]|0;do if(c[f>>2]&33554432|0){e=c[f+44>>2]|0;j=c[f+40>>2]|0;m=a+68|0;d=c[m>>2]|0;k=a+56|0;if(d>>>0>=(c[k>>2]|0)>>>0)Un(a,4153);c[m>>2]=d+16;c[d>>2]=9;c[d+8>>2]=e;d=e+4|0;c[d>>2]=(c[d>>2]|0)+1;d=c[m>>2]|0;i=a+64|0;g=d-(c[i>>2]|0)|0;f=g>>4;h=f+-1|0;if(!f)jo(a,300,-1);e=c[(c[a+304>>2]|0)+300>>2]|0;if(d>>>0>=(c[k>>2]|0)>>>0)Un(a,4153);c[m>>2]=d+16;c[d>>2]=8;c[d+8>>2]=e;e=e+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[i>>2]|0;f=(c[m>>2]|0)-e>>4;d=((g|0)<16?f:0)+h|0;if(d>>>0>=f>>>0)jo(a,376,h);g=ro(a,e+(d<<4)|0,e+(f+-1<<4)|0)|0;e=c[i>>2]|0;f=(c[m>>2]|0)-e>>4;d=f+-2|0;if(f>>>0<=1)jo(a,376,-2);q=e+(d<<4)|0;f=e+(f+-1<<4)|0;h=c[q>>2]|0;d=c[e+(d<<4)+8>>2]|0;QQ(q|0,q+16|0,f-q|0)|0;c[f>>2]=2;c[m>>2]=(c[m>>2]|0)+-16;if(h&8|0?(h=d+4|0,q=(c[h>>2]|0)+-1|0,c[h>>2]=q,(q|0)==0):0)Yn(c[a+44>>2]|0,d);if(!g){uq(a);d=c[m>>2]|0;if(d>>>0>=(c[k>>2]|0)>>>0)Un(a,4153);c[m>>2]=d+16;c[d>>2]=9;c[d+8>>2]=j;e=j+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[i>>2]|0;d=(c[m>>2]|0)-e>>4;if(!d)jo(a,376,-1);n=e+(d+-1<<4)|0;q=c[e>>2]|0;d=c[e+8>>2]|0;c[e>>2]=c[n>>2];c[e+4>>2]=c[n+4>>2];c[e+8>>2]=c[n+8>>2];c[e+12>>2]=c[n+12>>2];c[n>>2]=2;c[m>>2]=(c[m>>2]|0)+-16;if(!(q&8))break;n=d+4|0;q=(c[n>>2]|0)+-1|0;c[n>>2]=q;if(q|0)break;Yn(c[a+44>>2]|0,d);break}d=c[m>>2]|0;e=c[i>>2]|0;f=d-e>>4;if(f>>>0<=1)jo(a,376,-2);g=e+(f+-2<<4)|0;e=e+(f+-1<<4)|0;f=e-g|0;if(f){c[n>>2]=c[e>>2];c[n+4>>2]=c[e+4>>2];c[n+8>>2]=c[e+8>>2];c[n+12>>2]=c[e+12>>2];QQ(g+16|0,g|0,f|0)|0;c[g>>2]=c[n>>2];c[g+4>>2]=c[n+4>>2];c[g+8>>2]=c[n+8>>2];c[g+12>>2]=c[n+12>>2];d=c[m>>2]|0}f=j;if(d>>>0>=(c[k>>2]|0)>>>0)Un(a,4153);c[m>>2]=d+16;c[d>>2]=9;c[d+8>>2]=j;d=f+4|0;c[d>>2]=(c[d>>2]|0)+1;d=(c[m>>2]|0)-(c[i>>2]|0)|0;if((d|0)<48)Vn(a,268605,55);so(a,(d>>>4)+-3|0,0)|0;q=c[i>>2]|0;d=(c[m>>2]|0)-q>>4;d=d|0?q+(d+-1<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)!=9)In(a,2130,-1,268963);if(!(c[d+8>>2]|0))In(a,2130,-1,268963);d=c[o>>2]|0;do if(d){e=c[d+16>>2]|0;if(!e){d=(c[d+4>>2]|0)>>>8<<24>>24;break}if(c[e>>2]&4096)d=b[e+46>>1]|0;else d=0}else d=0;while(0);Mp(a,f,c[4968+(d<<2)>>2]|0);l=p;return 1}while(0);d=c[o>>2]|0;do if(d){e=c[d+16>>2]|0;if(!e){d=(c[d+4>>2]|0)>>>8<<24>>24;break}if(c[e>>2]&4096)d=b[e+46>>1]|0;else d=0}else d=0;while(0);Lp(a,c[4968+(d<<2)>>2]|0);i=a+68|0;h=c[(c[i>>2]|0)+-8>>2]|0;d=(c[h+28>>2]|0)+-2|0;g=vo(a,48)|0;j=a+44|0;e=c[j>>2]|0;c[g>>2]=272679041;e=e+24|0;f=c[e>>2]|0;if(f|0)c[f+12>>2]=g;c[g+12>>2]=0;c[g+8>>2]=f;c[e>>2]=g;e=c[a+132>>2]|0;c[g+20>>2]=e;if(e|0){q=e+4|0;c[q>>2]=(c[q>>2]|0)+1}e=c[i>>2]|0;c[e>>2]=9;c[e+8>>2]=g;e=g+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[i>>2]|0;c[i>>2]=e+16;e=c[e+8>>2]|0;io(a,e,0,d,0,0);c[e+40>>2]=d;f=c[e+24>>2]|0;if(d|0){g=(c[h+16>>2]|0)+(c[h+24>>2]<<4)+8|0;e=(c[e+16>>2]|0)+(f*21|0)+(0-f&7)|0;while(1){d=d+-1|0;q=c[g>>2]|0;c[e>>2]=8;c[e+8>>2]=q;q=q+4|0;c[q>>2]=(c[q>>2]|0)+1;if(!d)break;else{g=g+4|0;e=e+16|0}}}e=c[a+64>>2]|0;f=(c[i>>2]|0)-e>>4;d=f+-2|0;if(f>>>0<=1)jo(a,376,-2);o=e+(d<<4)|0;a=e+(f+-1<<4)|0;q=c[o>>2]|0;d=c[e+(d<<4)+8>>2]|0;QQ(o|0,o+16|0,a-o|0)|0;c[a>>2]=2;c[i>>2]=(c[i>>2]|0)+-16;if(!(q&8)){l=p;return 1}a=d+4|0;q=(c[a>>2]|0)+-1|0;c[a>>2]=q;if(q|0){l=p;return 1}Yn(c[j>>2]|0,d);l=p;return 1}function Bt(a){a=a|0;var d=0,e=0,f=0,g=0;d=c[a+72>>2]|0;do if(d){e=c[d+16>>2]|0;if(!e){f=(c[d+4>>2]|0)>>>8<<24>>24;break}if(c[e>>2]&4096)f=b[e+46>>1]|0;else f=0}else f=0;while(0);g=a+68|0;d=c[a+64>>2]|0;d=(c[g>>2]|0)!=(d|0)?d:0;d=(d|0)==0?936:d;e=c[d>>2]|0;do if(!(c[4164+(e<<2)>>2]&((f|0)==0?958:640))){if((e|0)!=9)In(a,2130,0,268963);d=c[d+8>>2]|0;if(!d)In(a,2130,0,268963);else{c[d>>2]=c[d>>2]&-129;Pp(a,d);break}}while(0);if((f|0)!=1)return 1;d=c[g>>2]|0;if(d>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4195);c[g>>2]=d+16;c[d>>2]=4;c[d+8>>2]=1;return 1}function Ct(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;e=c[d+72>>2]|0;do if(e){f=c[e+16>>2]|0;if(!f){f=(c[e+4>>2]|0)>>>8<<24>>24;break}if(c[f>>2]&4096)f=b[f+46>>1]|0;else f=0}else f=0;while(0);e=c[d+64>>2]|0;if((c[d+68>>2]|0)==(e|0))jo(d,376,0);switch(c[e>>2]|0){case 10:{if(!f)return 1;else Vn(d,269658,615);break}case 9:{i=c[e+8>>2]|0;e=(f|0)==0;if(!e?c[i>>2]&8192|0:0)Vn(d,269658,615);To(d,i);f=i+28|0;if(c[f>>2]|0){g=i+16|0;h=i+24|0;if(e){e=0;do{j=(c[g>>2]|0)+((c[h>>2]|0)*20|0)+e|0;a[j>>0]=a[j>>0]&-5;e=e+1|0}while(e>>>0<(c[f>>2]|0)>>>0)}else{e=0;do{j=(c[g>>2]|0)+((c[h>>2]|0)*20|0)+e|0;k=a[j>>0]|0;a[j>>0]=((k&8)>>>3|250)&(k&255);e=e+1|0}while(e>>>0<(c[f>>2]|0)>>>0)}}c[i>>2]=c[i>>2]&-129;Pp(d,i);return 1}default:return 1}return 0}function Dt(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=c[a+72>>2]|0;h=(d|0)==0;do if(!h){e=c[d+16>>2]|0;if(!e)d=(c[d+4>>2]|0)>>>8<<24>>24;else{if(!(c[e>>2]&4096)){f=7;break}d=b[e+46>>1]|0}if(d){if((d|0)<2)f=16}else f=7}else f=7;while(0);if((f|0)==7){d=a+68|0;g=c[d>>2]|0;if(g>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4361);c[d>>2]=g+16;if(h)Jn(a,268620,100667685,269813);d=c[a+64>>2]|0;e=d+-16|0;f=c[e>>2]|0;if((f&-2|0)==2)Jn(a,268620,100667685,269813);c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];if(f&8|0){h=(c[d+-8>>2]|0)+4|0;c[h>>2]=(c[h>>2]|0)+1}to(a,-1);f=16}if((f|0)==16)to(a,0);d=c[a+64>>2]|0;switch(c[d>>2]|0){case 10:{i=a+268|0;break}case 6:{i=a+120|0;break}case 9:{i=(c[d+8>>2]|0)+20|0;break}default:Vn(a,278780,365)}d=c[i>>2]|0;e=a+68|0;f=c[e>>2]|0;g=f>>>0<(c[a+56>>2]|0)>>>0;if(!d){if(!g)Un(a,4175);c[e>>2]=f+16;c[f>>2]=3;return 1}else{if(!g)Un(a,4153);c[e>>2]=f+16;c[f>>2]=9;c[f+8>>2]=d;a=d+4|0;c[a>>2]=(c[a>>2]|0)+1;return 1}return 0}function Et(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+16|0;g=k;h=a+68|0;e=c[h>>2]|0;if(e>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4361);c[h>>2]=e+16;i=a+72|0;f=a+64|0;if(c[i>>2]|0?(d=c[f>>2]|0,m=d+-16|0,c[e>>2]=c[m>>2],c[e+4>>2]=c[m+4>>2],c[e+8>>2]=c[m+8>>2],c[e+12>>2]=c[m+12>>2],c[m>>2]&8|0):0){m=(c[d+-8>>2]|0)+4|0;c[m>>2]=(c[m>>2]|0)+1}e=c[f>>2]|0;d=(c[h>>2]|0)-e>>4;if(!d)jo(a,376,0);d=d+-1|0;if(d|0){m=e+(d<<4)|0;c[g>>2]=c[m>>2];c[g+4>>2]=c[m+4>>2];c[g+8>>2]=c[m+8>>2];c[g+12>>2]=c[m+12>>2];QQ(e+16|0,e|0,d<<4|0)|0;c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];c[e+8>>2]=c[g+8>>2];c[e+12>>2]=c[g+12>>2]}to(a,0);d=c[f>>2]|0;d=(c[h>>2]|0)-d>>4>>>0>2?d+32|0:0;d=(d|0)==0?936:d;switch(c[d>>2]|0){case 9:{j=11;break}case 6:break;default:In(a,2285,2,287317)}if((j|0)==11?(c[c[d+8>>2]>>2]&512|0)==0:0)In(a,2285,2,287317);d=c[i>>2]|0;if(!d){m=0;m=(m|0)!=0;m=m?310:182;Fo(a,0,m);l=k;return 0}e=c[d+16>>2]|0;if(!e){m=(c[d+4>>2]|0)>>>8<<24>>24;m=(m|0)!=0;m=m?310:182;Fo(a,0,m);l=k;return 0}if(!(c[e>>2]&4096)){m=0;m=(m|0)!=0;m=m?310:182;Fo(a,0,m);l=k;return 0}m=b[e+46>>1]|0;m=(m|0)!=0;m=m?310:182;Fo(a,0,m);l=k;return 0}function Ft(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;i=k;j=a+68|0;d=c[j>>2]|0;g=a+64|0;f=c[g>>2]|0;b=(d|0)!=(f|0)?f:0;b=(b|0)==0?936:b;if(!(((c[b>>2]|0)==8?(e=c[b+8>>2]|0,(e|0)!=0):0)?(c[e>>2]&512|0)!=0:0)){Eo(a,0)|0;d=c[j>>2]|0;f=c[g>>2]|0;b=(d|0)!=(f|0)?f:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==8)e=c[b+8>>2]|0;else e=0}h=a+56|0;if(d>>>0>=(c[h>>2]|0)>>>0)Un(a,4361);c[j>>2]=d+16;if(!(c[a+72>>2]|0))Jn(a,268620,100667685,269813);b=f+-16|0;g=c[b>>2]|0;if((g&-2|0)==2)Jn(a,268620,100667685,269813);c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];if(g&8|0){g=(c[f+-8>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}to(a,-1);b=go(a,c[(c[j>>2]|0)+-8>>2]|0,e,c[e+16>>2]|0,i,0)|0;d=c[j>>2]|0;if(d>>>0<(c[h>>2]|0)>>>0){c[j>>2]=d+16;c[d>>2]=4;c[d+8>>2]=(b|0)!=0&1;l=k;return 1}else Un(a,4185);return 0}function Gt(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=a+68|0;e=c[j>>2]|0;f=c[a+64>>2]|0;b=(e|0)!=(f|0)?f:0;b=(b|0)==0?936:b;k=e;if((c[b>>2]|0)==9?(g=c[b+8>>2]|0,g|0):0){h=a+56|0;if(k>>>0>=(c[h>>2]|0)>>>0)Un(a,4361);c[j>>2]=k+16;if(!(c[a+72>>2]|0))Jn(a,268620,100667685,269813);b=f+-16|0;d=c[b>>2]|0;if((d&-2|0)==2)Jn(a,268620,100667685,269813);c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];if(d&8|0){f=(c[f+-8>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)+1}to(a,-1);e=c[j>>2]|0;f=c[e+-8>>2]|0;b=c[g+20>>2]|0;a:do if((f|0)==0|(b|0)==0)i=0;else{d=1e4;while(1){if((b|0)==(f|0)){i=1;break a}if(!d)break;b=c[b+20>>2]|0;if(!b){i=0;break a}else d=d+-1|0}Jn(a,278796,50331677,269067)}while(0);if(e>>>0<(c[h>>2]|0)>>>0){a=i;k=e;i=k+16|0;c[j>>2]=i;c[k>>2]=4;k=k+8|0;c[k>>2]=a;return 1}else Un(a,4185)}if(k>>>0<(c[a+56>>2]|0)>>>0){a=0;i=k+16|0;c[j>>2]=i;c[k>>2]=4;k=k+8|0;c[k>>2]=a;return 1}else Un(a,4204);return 0}function Ht(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=a+68|0;e=c[o>>2]|0;l=a+56|0;if(e>>>0>=(c[l>>2]|0)>>>0)Un(a,4361);c[o>>2]=e+16;k=a+72|0;m=a+64|0;if(c[k>>2]|0?(d=c[m>>2]|0,n=d+-16|0,c[e>>2]=c[n>>2],c[e+4>>2]=c[n+4>>2],c[e+8>>2]=c[n+8>>2],c[e+12>>2]=c[n+12>>2],c[n>>2]&8|0):0){n=(c[d+-8>>2]|0)+4|0;c[n>>2]=(c[n>>2]|0)+1}to(a,-1);e=c[o>>2]|0;d=c[m>>2]|0;n=e-d>>4;n=n|0?d+(n+-1<<4)|0:0;if((c[((n|0)==0?936:n)>>2]|0)==2)return 1;n=a+44|0;j=1e4;while(1){f=e;if(f>>>0>=(c[l>>2]|0)>>>0){d=9;break}if((f|0)==(d|0)){d=11;break}c[o>>2]=f+16;i=e;c[i>>2]=c[d>>2];c[i+4>>2]=c[d+4>>2];c[i+8>>2]=c[d+8>>2];c[i+12>>2]=c[d+12>>2];if(c[f>>2]&8|0){i=(c[f+8>>2]|0)+4|0;c[i>>2]=(c[i>>2]|0)+1}$u(a,1);g=c[o>>2]|0;d=c[m>>2]|0;h=g-d|0;f=h>>4;i=f+-1|0;e=f|0?d+(i<<4)|0:0;if((c[((e|0)==0?936:e)>>2]|0)!=2){d=15;break}if((g|0)==(d|0)){d=32;break}h=g+-16|0;c[o>>2]=h;i=c[g+-16>>2]|0;d=c[g+-8>>2]|0;c[h>>2]=2;if(i&8|0?(h=d+4|0,i=(c[h>>2]|0)+-1|0,c[h>>2]=i,(i|0)==0):0)Yn(c[n>>2]|0,d);if(!j){d=37;break}j=j+-1|0;g=c[o>>2]|0;f=c[m>>2]|0;d=g-f>>4;d=d|0?f+(d+-1<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)!=9){d=40;break}d=c[d+8>>2]|0;if(!d){d=40;break}d=c[d+20>>2]|0;e=g>>>0<(c[l>>2]|0)>>>0;if(!d){if(!e){d=46;break}d=g+16|0;c[o>>2]=d}else{if(!e){d=43;break}c[o>>2]=g+16;c[g>>2]=9;c[g+8>>2]=d;f=d+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[m>>2]|0;d=c[o>>2]|0}e=d-f>>4;d=e+-2|0;if(e>>>0<=1){d=49;break}h=f+(d<<4)|0;e=f+(e+-1<<4)|0;i=c[h>>2]|0;d=c[f+(d<<4)+8>>2]|0;QQ(h|0,h+16|0,e-h|0)|0;c[e>>2]=2;e=(c[o>>2]|0)+-16|0;c[o>>2]=e;if((i&8|0)!=0?(h=d+4|0,i=(c[h>>2]|0)+-1|0,c[h>>2]=i,(i|0)==0):0){Yn(c[n>>2]|0,d);e=c[o>>2]|0}d=c[m>>2]|0;i=e-d>>4;i=i|0?d+(i+-1<<4)|0:0;if((c[((i|0)==0?936:i)>>2]|0)==2){d=54;break}}switch(d|0){case 9:{Un(a,1093);break}case 11:{jo(a,376,0);break}case 15:{d=c[k>>2]|0;do if(d){e=c[d+16>>2]|0;if(!e){d=(c[d+4>>2]|0)>>>8<<24>>24;break}if(c[e>>2]&4096)d=b[e+46>>1]|0;else d=0}else d=0;while(0);if(!f)jo(a,300,-1);d=c[(c[a+304>>2]|0)+((d|0?83:73)<<2)>>2]|0;if(g>>>0>=(c[l>>2]|0)>>>0)Un(a,4153);c[o>>2]=g+16;c[g>>2]=8;c[g+8>>2]=d;e=d+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[m>>2]|0;f=(c[o>>2]|0)-e>>4;d=((h|0)<16?f:0)+i|0;if(d>>>0>=f>>>0)jo(a,376,i);ro(a,e+(d<<4)|0,e+(f+-1<<4)|0)|0;f=c[m>>2]|0;e=(c[o>>2]|0)-f>>4;d=e+-2|0;if(e>>>0<=1)jo(a,376,-2);l=f+(d<<4)|0;m=f+(e+-1<<4)|0;a=c[l>>2]|0;d=c[f+(d<<4)+8>>2]|0;QQ(l|0,l+16|0,m-l|0)|0;c[m>>2]=2;c[o>>2]=(c[o>>2]|0)+-16;if(!(a&8))return 1;a=d+4|0;o=(c[a>>2]|0)+-1|0;c[a>>2]=o;if(o|0)return 1;Yn(c[n>>2]|0,d);return 1}case 32:{Jn(a,268620,50337407,268636);break}case 37:{Jn(a,278780,50332445,269067);break}case 40:{In(a,2130,-1,268963);break}case 43:{Un(a,4153);break}case 46:{Un(a,4162);break}case 49:{jo(a,376,-2);break}case 54:return 1}return 0}function It(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;i=k;j=a+68|0;d=c[j>>2]|0;g=a+64|0;f=c[g>>2]|0;b=(d|0)!=(f|0)?f:0;b=(b|0)==0?936:b;if(!(((c[b>>2]|0)==8?(e=c[b+8>>2]|0,(e|0)!=0):0)?(c[e>>2]&512|0)!=0:0)){Eo(a,0)|0;d=c[j>>2]|0;f=c[g>>2]|0;b=(d|0)!=(f|0)?f:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==8)e=c[b+8>>2]|0;else e=0}h=a+56|0;if(d>>>0>=(c[h>>2]|0)>>>0)Un(a,4361);c[j>>2]=d+16;if(!(c[a+72>>2]|0))Jn(a,268620,100667685,269813);b=f+-16|0;g=c[b>>2]|0;if((g&-2|0)==2)Jn(a,268620,100667685,269813);c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];if(g&8|0){g=(c[f+-8>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}to(a,-1);if(!(go(a,c[(c[j>>2]|0)+-8>>2]|0,e,c[e+16>>2]|0,i,0)|0))d=0;else d=(c[i>>2]&2|0)!=0;b=c[j>>2]|0;if(b>>>0<(c[h>>2]|0)>>>0){c[j>>2]=b+16;c[b>>2]=4;c[b+8>>2]=d&1;l=k;return 1}else Un(a,4185);return 0}function Jt(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=a+68|0;f=c[h>>2]|0;g=a+56|0;if(f>>>0>=(c[g>>2]|0)>>>0)Un(a,4361);c[h>>2]=f+16;if(!(c[a+72>>2]|0))Jn(a,268620,100667685,269813);i=a+64|0;b=c[i>>2]|0;d=b+-16|0;e=c[d>>2]|0;if((e&-2|0)==2)Jn(a,268620,100667685,269813);c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];if(e&8|0){f=(c[b+-8>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)+1}to(a,-1);f=c[h>>2]|0;b=f;if((f|0)==(c[i>>2]|0))jo(a,300,0);d=c[(c[a+304>>2]|0)+312>>2]|0;if(b>>>0>=(c[g>>2]|0)>>>0)Un(a,4153);c[h>>2]=b+16;c[b>>2]=8;c[b+8>>2]=d;b=d+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[i>>2]|0;d=(c[h>>2]|0)-b>>4;if(!d)jo(a,376,0);ro(a,b,b+(d+-1<<4)|0)|0;d=c[i>>2]|0;e=(c[h>>2]|0)-d>>4;b=e+-2|0;if(e>>>0<=1)jo(a,376,-2);j=d+(b<<4)|0;e=d+(e+-1<<4)|0;f=c[j>>2]|0;b=c[d+(b<<4)+8>>2]|0;QQ(j|0,j+16|0,e-j|0)|0;c[e>>2]=2;d=(c[h>>2]|0)+-16|0;c[h>>2]=d;if((f&8|0)!=0?(f=b+4|0,j=(c[f>>2]|0)+-1|0,c[f>>2]=j,(j|0)==0):0){Yn(c[a+44>>2]|0,b);d=c[h>>2]|0}if(d>>>0>=(c[g>>2]|0)>>>0)Un(a,1093);b=c[i>>2]|0;if((d|0)==(b|0))jo(a,376,0);c[h>>2]=d+16;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];if(c[d>>2]&8|0){j=(c[d+8>>2]|0)+4|0;c[j>>2]=(c[j>>2]|0)+1}b=(c[h>>2]|0)-(c[i>>2]|0)|0;if((b|0)<32)Vn(a,268605,55);else{so(a,(b>>>4)+-2|0,0)|0;return 1}return 0}function Kt(a){a=a|0;var b=0,e=0,f=0;f=l;l=l+16|0;e=f;b=c[a+64>>2]|0;switch(c[b+-16>>2]|0){case 2:case 7:{b=0;break}case 3:{b=1;break}case 4:{b=8;break}case 5:{b=31;break}case 6:{b=5;break}case 8:{b=(c[c[b+-8>>2]>>2]&512|0)==0?7:2;break}case 9:{b=d[269291+((c[c[b+-8>>2]>>2]|0)>>>27)>>0]|0;break}case 10:{b=19;break}default:b=9}c[e>>2]=(c[(c[a+304>>2]|0)+(b<<2)>>2]|0)+28;Lo(a,269323,e);l=f;return 1}function Lt(a){a=a|0;var b=0,d=0,e=0,f=0;b=a+68|0;f=c[b>>2]|0;if(f>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4361);c[b>>2]=f+16;if(!(c[a+72>>2]|0))Jn(a,268620,100667685,269813);b=c[a+64>>2]|0;d=b+-16|0;e=c[d>>2]|0;if((e&-2|0)==2)Jn(a,268620,100667685,269813);c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];if(!(e&8)){to(a,-1);return 1}f=(c[b+-8>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)+1;to(a,-1);return 1}function Mt(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+16|0;j=x;e=c[a+72>>2]|0;h=(e|0)==0;a:do if(h)q=7;else{f=c[e+16>>2]|0;if(!f)k=(c[e+4>>2]|0)>>>8<<24>>24;else{if(!(c[f>>2]&4096)){q=7;break}k=b[f+46>>1]|0}b:do switch(k|0){case 0:{q=7;break a}case 1:{e=a+68|0;f=c[e>>2]|0;g=c[a+64>>2]|0;j=(f|0)!=(g|0)?g:0;if(!(140>>>(c[((j|0)==0?936:j)>>2]|0)&1)){m=e;n=f;o=g;p=f}else Jn(a,268620,100667121,269566);break}default:{f=a+68|0;g=c[f>>2]|0;h=c[a+64>>2]|0;e=(g|0)!=(h|0)?h:0;e=(e|0)==0?936:e;j=g;switch(c[e>>2]|0){case 6:case 10:{m=f;n=j;o=h;p=g;break b}case 9:break;default:In(a,2416,0,268963)}if(!(c[e+8>>2]|0))In(a,2416,0,268963);else{m=f;n=j;o=h;p=g}}}while(0);j=p-o>>4>>>0>1?o+16|0:0;switch(c[((j|0)==0?936:j)>>2]|0){case 3:case 9:{t=k;u=1;i=m;s=n;d=o;r=p;break a}default:{}}Jn(a,268620,100667121,269566)}while(0);c:do if((q|0)==7){i=a+68|0;g=c[i>>2]|0;if(g>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4361);c[i>>2]=g+16;if(h)Jn(a,268620,100667685,269813);h=a+64|0;d=c[h>>2]|0;e=d+-16|0;f=c[e>>2]|0;if((f&-2|0)==2)Jn(a,268620,100667685,269813);c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];if(f&8|0){u=(c[d+-8>>2]|0)+4|0;c[u>>2]=(c[u>>2]|0)+1}e=c[i>>2]|0;f=c[h>>2]|0;d=e-f>>4;if(!d)jo(a,376,0);d=d+-1|0;if(!d)d=f;else{e=f+(d<<4)|0;c[j>>2]=c[e>>2];c[j+4>>2]=c[e+4>>2];c[j+8>>2]=c[e+8>>2];c[j+12>>2]=c[e+12>>2];QQ(f+16|0,f|0,d<<4|0)|0;c[f>>2]=c[j>>2];c[f+4>>2]=c[j+4>>2];c[f+8>>2]=c[j+8>>2];c[f+12>>2]=c[j+12>>2];e=c[i>>2]|0;d=c[h>>2]|0}u=e-d>>4>>>0>1?d+16|0:0;switch(c[((u|0)==0?936:u)>>2]|0){case 3:case 9:{t=0;u=0;s=e;r=e;break c}default:d=0}l=x;return d|0}while(0);f=d;e=r-f>>4>>>0>1?d+16|0:0;e=(e|0)==0?936:e;if((c[e>>2]|0)==9)g=c[e+8>>2]|0;else g=0;d=(r|0)!=(f|0)?d:0;d=(d|0)==0?936:d;e=c[d>>2]|0;d:do switch(e|0){case 6:case 10:{if((g|0)==(c[a+100+(((e|0)==6?5:42)<<2)>>2]|0))q=41;else q=45;break}case 9:{e=c[d+8>>2]|0;if((e|0)!=0?(v=e+20|0,w=c[v>>2]|0,(g|0)!=(w|0)):0)if(c[e>>2]&128){if(!g)c[v>>2]=0;else{d=g;do{if((d|0)==(e|0)){q=45;break d}d=c[d+20>>2]|0}while((d|0)!=0);c[v>>2]=g;v=g+4|0;c[v>>2]=(c[v>>2]|0)+1}if((w|0)!=0?(s=w+4|0,v=(c[s>>2]|0)+-1|0,c[s>>2]=v,(v|0)==0):0){tp(c[a+44>>2]|0,w);q=41}else q=41}else q=45;else q=41;break}default:q=41}while(0);if((q|0)==41){Gp(a,1);if((t|0)!=2){a=u;l=x;return a|0}d=c[i>>2]|0;if(d>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4195);c[i>>2]=d+16;c[d>>2]=4;c[d+8>>2]=1;a=u;l=x;return a|0}else if((q|0)==45){if((t|0)!=2)Vn(a,278780,469);if(s>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4204);c[i>>2]=s+16;c[s>>2]=4;c[s+8>>2]=0;a=1;l=x;return a|0}return 0}function Nt(a){a=a|0;var b=0,d=0.0,e=0,f=0;f=l;l=l+16|0;b=f;if(!(Ef(b|0,0)|0))d=+(c[b>>2]|0)*1.0e3+ +(c[b+4>>2]|0)/1.0e3;else d=0.0;b=a+68|0;e=c[b>>2]|0;if(e>>>0<(c[a+56>>2]|0)>>>0){c[b>>2]=e+16;c[e>>2]=0;h[e+8>>3]=d;l=f;return 1}else Un(a,4215);return 0}function Ot(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=a+68|0;g=c[h>>2]|0;i=a+64|0;b=g;do if((g|0)==(c[i>>2]|0))if(b>>>0<(c[a+56>>2]|0)>>>0){c[h>>2]=b+16;c[b>>2]=5;c[b+8>>2]=0;break}else Un(a,4341);else _u(a,0)|0;while(0);Gp(a,1);b=c[a+72>>2]|0;if(!b)return 1;if(!(c[b+52>>2]&4))return 1;f=a+56|0;if((c[h>>2]|0)>>>0>=(c[f>>2]|0)>>>0)Un(a,4604);g=vo(a,40)|0;b=c[a+44>>2]|0;c[g>>2]=-2013249407;b=b+24|0;d=c[b>>2]|0;if(d|0)c[d+12>>2]=g;c[g+12>>2]=0;c[g+8>>2]=d;c[b>>2]=g;d=c[h>>2]|0;c[d>>2]=9;c[d+8>>2]=g;d=g+4|0;c[d>>2]=(c[d>>2]|0)+1;d=c[h>>2]|0;e=d+16|0;c[h>>2]=e;b=c[a+244>>2]|0;c[g+20>>2]=b;if(b|0){g=b+4|0;c[g>>2]=(c[g>>2]|0)+1}if(e>>>0>=(c[f>>2]|0)>>>0)Un(a,1093);b=c[i>>2]|0;if((e|0)==(b|0))jo(a,376,0);c[h>>2]=d+32;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];if(c[e>>2]&8|0){g=(c[d+24>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}i=c[i>>2]|0;b=(c[h>>2]|0)-i>>4;b=b>>>0>1?i+(b+-2<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9)In(a,2130,-2,268963);b=c[b+8>>2]|0;if(!b)In(a,2130,-2,268963);fo(a,b,c[(c[a+304>>2]|0)+404>>2]|0,0);return 1}function Pt(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;d=c[a+72>>2]|0;g=(d|0)==0;do if(!g){e=c[d+16>>2]|0;if(!e){l=(c[d+4>>2]|0)>>>8<<24>>24;break}if(c[e>>2]&4096)l=b[e+46>>1]|0;else l=0}else l=0;while(0);m=a+68|0;d=c[m>>2]|0;i=a+56|0;if(d>>>0>=(c[i>>2]|0)>>>0)Un(a,4361);c[m>>2]=d+16;k=a+64|0;if(!g?(f=c[k>>2]|0,h=f+-16|0,c[d>>2]=c[h>>2],c[d+4>>2]=c[h+4>>2],c[d+8>>2]=c[h+8>>2],c[d+12>>2]=c[h+12>>2],c[h>>2]&8|0):0){h=(c[f+-8>>2]|0)+4|0;c[h>>2]=(c[h>>2]|0)+1}d=c[m>>2]|0;f=c[k>>2]|0;h=d-f|0;e=h>>4;if(!e)jo(a,376,-1);g=e+-1|0;switch(c[f+(g<<4)>>2]|0){case 5:break;case 9:{j=14;break}default:Vn(a,278763,74)}if((j|0)==14){if((c[c[f+(g<<4)+8>>2]>>2]&-134217728|0)!=-2013265920)Vn(a,278763,74);e=c[(c[a+304>>2]|0)+404>>2]|0;if(d>>>0>=(c[i>>2]|0)>>>0)Un(a,4153);c[m>>2]=d+16;c[d>>2]=8;c[d+8>>2]=e;e=e+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[k>>2]|0;f=(c[m>>2]|0)-e>>4;d=((h|0)<16?f:0)+g|0;if(d>>>0>=f>>>0)jo(a,376,g);ro(a,e+(d<<4)|0,e+(f+-1<<4)|0)|0;e=c[k>>2]|0;f=(c[m>>2]|0)-e>>4;d=f+-2|0;if(f>>>0<=1)jo(a,376,-2);i=e+(d<<4)|0;j=e+(f+-1<<4)|0;k=c[i>>2]|0;d=c[e+(d<<4)+8>>2]|0;QQ(i|0,i+16|0,j-i|0)|0;c[j>>2]=2;c[m>>2]=(c[m>>2]|0)+-16;if(k&8|0?(k=d+4|0,m=(c[k>>2]|0)+-1|0,c[k>>2]=m,(m|0)==0):0)Yn(c[a+44>>2]|0,d)}if(!l)return 1;Eo(a,-1)|0;return 1}function Qt(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;b=c[a+72>>2]|0;if(!b)Jn(a,268605,100663686,278444);if(!(c[b+52>>2]&4))Jn(a,268605,100663686,278444);g=a+68|0;d=c[g>>2]|0;e=a+64|0;j=c[e>>2]|0;b=d-j>>4;b=b>>>0>1?j+(b+-2<<4)|0:0;b=(b|0)==0?936:b;switch(c[b>>2]|0){case 9:{b=c[b+8>>2]|0;if(!b)In(a,2416,-2,268963);else{h=b;f=d}break}case 6:case 10:{to(a,-2);f=c[g>>2]|0;h=c[f+-24>>2]|0;break}default:In(a,2416,-2,268963)}if(c[h>>2]&33554432|0)Vn(a,268620,5368);j=c[e>>2]|0;b=f-j>>4;b=b|0?j+(b+-1<<4)|0:0;b=(b|0)==0?936:b;switch(c[b>>2]|0){case 9:{b=c[b+8>>2]|0;if(!b)In(a,2416,-1,268963);else i=b;break}case 6:case 10:{to(a,-1);i=c[(c[g>>2]|0)+-8>>2]|0;break}default:In(a,2416,-1,268963)}if(c[i>>2]&33554432|0)Vn(a,268620,5368);d=c[h>>2]|0;e=vo(a,48)|0;b=c[a+44>>2]|0;c[e>>2]=d&768|((d&512|0)==0?167772288:503316608)|1;b=b+24|0;d=c[b>>2]|0;if(!d){j=e+12|0;c[j>>2]=0;j=e+8|0;c[j>>2]=d;c[b>>2]=e;j=e+40|0;c[j>>2]=h;j=e+44|0;c[j>>2]=i;j=c[g>>2]|0;i=j+-32|0;c[i>>2]=9;i=j+-24|0;c[i>>2]=e;i=e+4|0;h=c[i>>2]|0;h=h+1|0;c[i>>2]=h;j=j+-16|0;c[j>>2]=2;c[g>>2]=j;return 1}c[d+12>>2]=e;j=e+12|0;c[j>>2]=0;j=e+8|0;c[j>>2]=d;c[b>>2]=e;j=e+40|0;c[j>>2]=h;j=e+44|0;c[j>>2]=i;j=c[g>>2]|0;i=j+-32|0;c[i>>2]=9;i=j+-24|0;c[i>>2]=e;i=e+4|0;h=c[i>>2]|0;h=h+1|0;c[i>>2]=h;j=j+-16|0;c[j>>2]=2;c[g>>2]=j;return 1}function Rt(a){a=a|0;return -6}function St(a){a=a|0;return -6}function Tt(a){a=a|0;var b=0,d=0,e=0;e=a+68|0;d=a+64|0;b=c[d>>2]|0;b=(c[e>>2]|0)!=(b|0)?b:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9)In(a,2130,0,268963);if(!(c[b+8>>2]|0))In(a,2130,0,268963);Eo(a,1)|0;b=c[d>>2]|0;b=sp(a,b,b+16|0,0)|0;d=c[e>>2]|0;if(d>>>0<(c[a+56>>2]|0)>>>0){c[e>>2]=d+16;c[d>>2]=4;c[d+8>>2]=(b|0)!=0&1;return 1}else Un(a,4185);return 0}function Ut(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0;i=a+68|0;b=c[i>>2]|0;e=a+64|0;d=c[e>>2]|0;f=b-d|0;if((f|0)<32)Vn(a,268620,419);b=(b|0)!=(d|0)?d:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9)In(a,2130,0,268963);if(!(c[b+8>>2]|0))In(a,2130,0,268963);Eo(a,1)|0;a:do if((f|0)>32){g=c[e>>2]|0;b=(c[i>>2]|0)-g>>4;d=b|0?g:0;b=b>>>0>2?g+32|0:0;b:do if(!((d|0)==0|(b|0)==0)){e=c[d>>2]|0;f=c[b>>2]|0;if(!(f|e))if(+h[d+8>>3]==+h[b+8>>3]){j=g;break a}else break;if((e|0)==(f|0))switch(e|0){case 3:case 2:{j=g;break a}case 4:if((c[d+8>>2]|0)==(c[b+8>>2]|0)){j=g;break a}else break b;case 5:if((c[d+8>>2]|0)==(c[b+8>>2]|0)){j=g;break a}else break b;case 9:case 8:if((c[d+8>>2]|0)==(c[b+8>>2]|0)){j=g;break a}else break b;case 10:if((c[d+8>>2]|0)==(c[b+8>>2]|0)){j=g;break a}else break b;case 6:{if((c[d+8>>2]|0)!=(c[b+8>>2]|0))break b;if((c[d+4>>2]|0)==(c[b+4>>2]|0)){j=g;break a}else break b}default:{}}}while(0);Jn(a,278746,16777258,268914)}else j=c[e>>2]|0;while(0);ro(a,j,j+16|0)|0;return 1}function Vt(a){a=a|0;var b=0,d=0,e=0;e=a+68|0;d=a+64|0;b=c[d>>2]|0;b=(c[e>>2]|0)!=(b|0)?b:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9)In(a,2130,0,268963);if(!(c[b+8>>2]|0))In(a,2130,0,268963);Eo(a,1)|0;b=c[d>>2]|0;b=Xo(a,b,b+16|0)|0;d=c[e>>2]|0;if(d>>>0<(c[a+56>>2]|0)>>>0){c[e>>2]=d+16;c[d>>2]=4;c[d+8>>2]=(b|0)!=0&1;return 1}else Un(a,4185);return 0}function Wt(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0;j=a+68|0;b=c[j>>2]|0;e=a+64|0;d=c[e>>2]|0;f=b-d|0;if((f|0)<48)Vn(a,268620,419);b=(b|0)!=(d|0)?d:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9)In(a,2130,0,268963);if(!(c[b+8>>2]|0))In(a,2130,0,268963);Eo(a,1)|0;a:do if((f|0)>48){e=c[e>>2]|0;b=(c[j>>2]|0)-e>>4;d=b|0?e:0;b=b>>>0>3?e+48|0:0;b:do if(!((d|0)==0|(b|0)==0)){f=c[d>>2]|0;g=c[b>>2]|0;if(!(g|f))if(+h[d+8>>3]==+h[b+8>>3]){i=e;break a}else break;if((f|0)==(g|0))switch(f|0){case 3:case 2:{i=e;break a}case 4:if((c[d+8>>2]|0)==(c[b+8>>2]|0)){i=e;break a}else break b;case 5:if((c[d+8>>2]|0)==(c[b+8>>2]|0)){i=e;break a}else break b;case 9:case 8:if((c[d+8>>2]|0)==(c[b+8>>2]|0)){i=e;break a}else break b;case 10:if((c[d+8>>2]|0)==(c[b+8>>2]|0)){i=e;break a}else break b;case 6:{if((c[d+8>>2]|0)!=(c[b+8>>2]|0))break b;if((c[d+4>>2]|0)==(c[b+4>>2]|0)){i=e;break a}else break b}default:{}}}while(0);Jn(a,278746,16777301,268914)}else i=c[e>>2]|0;while(0);b=No(a,i,i+16|0,c[i+32>>2]|0,c[i+36>>2]|0,+h[i+40>>3],0)|0;d=c[j>>2]|0;if(d>>>0<(c[a+56>>2]|0)>>>0){c[j>>2]=d+16;c[d>>2]=4;c[d+8>>2]=(b|0)!=0&1;return 1}else Un(a,4185);return 0}function Xt(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=a+68|0;f=c[m>>2]|0;k=a+64|0;g=c[k>>2]|0;h=g;b=(f|0)!=(h|0)?g:0;b=(b|0)==0?936:b;i=c[b>>2]|0;j=f;if((i|0)==9)e=c[b+8>>2]|0;else e=0;b=c[a+72>>2]|0;if(!b)b=0;else b=(c[b+52>>2]|0)>>>2&1;d=(e|0)!=0;if((d&(b|0)==0?(c[e>>2]&-134217728|0)==1476395008:0)?(b=f-h>>4>>>0>1?g+16|0:0,(c[((b|0)==0?936:b)>>2]|0)==2):0){if(j>>>0>=(c[a+56>>2]|0)>>>0)Un(a,1093);if((j|0)==(g|0))jo(a,376,0);c[m>>2]=j+16;m=f;c[m>>2]=c[g>>2];c[m+4>>2]=c[g+4>>2];c[m+8>>2]=c[g+8>>2];c[m+12>>2]=c[g+12>>2];if(!(c[j>>2]&8))return 1;m=(c[j+8>>2]|0)+4|0;c[m>>2]=(c[m>>2]|0)+1;return 1}do if(d?(c[e>>2]&-134217728|0)==1476395008:0){if((f|0)==(h|0))jo(a,300,0);g=a+304|0;b=c[(c[g>>2]|0)+176>>2]|0;h=a+56|0;if(j>>>0>=(c[h>>2]|0)>>>0)Un(a,4153);c[m>>2]=j+16;c[j>>2]=8;c[j+8>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[k>>2]|0;d=(c[m>>2]|0)-b>>4;if(!d)jo(a,376,0);ro(a,b,b+(d+-1<<4)|0)|0;d=c[k>>2]|0;e=(c[m>>2]|0)-d>>4;b=e+-2|0;if(e>>>0<=1)jo(a,376,-2);i=d+(b<<4)|0;e=d+(e+-1<<4)|0;j=c[i>>2]|0;b=c[d+(b<<4)+8>>2]|0;QQ(i|0,i+16|0,e-i|0)|0;c[e>>2]=2;d=(c[m>>2]|0)+-16|0;c[m>>2]=d;e=d;if((j&8|0)!=0?(i=b+4|0,j=(c[i>>2]|0)+-1|0,c[i>>2]=j,(j|0)==0):0){Yn(c[a+44>>2]|0,b);e=c[m>>2]|0;d=e}b=c[k>>2]|0;f=b;b=b+16|0;j=e-f>>4>>>0>1?b:0;if((c[((j|0)==0?936:j)>>2]|0)!=2){if(d>>>0>=(c[h>>2]|0)>>>0)Un(a,1093);if(d-f>>4>>>0<=1)jo(a,376,1);c[m>>2]=d+16;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];if(!(c[d>>2]&8))break;m=(c[d+8>>2]|0)+4|0;c[m>>2]=(c[m>>2]|0)+1;break}d=e;if((e|0)==(f|0))jo(a,300,0);b=c[(c[g>>2]|0)+192>>2]|0;if(d>>>0>=(c[h>>2]|0)>>>0)Un(a,4153);c[m>>2]=d+16;c[d>>2]=8;c[d+8>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[k>>2]|0;d=(c[m>>2]|0)-b>>4;if(!d)jo(a,376,0);ro(a,b,b+(d+-1<<4)|0)|0;d=c[k>>2]|0;e=(c[m>>2]|0)-d>>4;b=e+-2|0;if(e>>>0<=1)jo(a,376,-2);i=d+(b<<4)|0;j=d+(e+-1<<4)|0;k=c[i>>2]|0;b=c[d+(b<<4)+8>>2]|0;QQ(i|0,i+16|0,j-i|0)|0;c[j>>2]=2;c[m>>2]=(c[m>>2]|0)+-16;if(k&8|0?(k=b+4|0,m=(c[k>>2]|0)+-1|0,c[k>>2]=m,(m|0)==0):0)Yn(c[a+44>>2]|0,b)}else l=45;while(0);do if((l|0)==45){do if((i|0)==2){b=c[(c[a+304>>2]|0)+60>>2]|0;if(j>>>0<(c[a+56>>2]|0)>>>0){c[m>>2]=j+16;c[j>>2]=8;c[j+8>>2]=b;l=b+4|0;c[l>>2]=(c[l>>2]|0)+1;break}else Un(a,4153)}else{if(j>>>0>=(c[a+56>>2]|0)>>>0)Un(a,1093);if((j|0)==(g|0))jo(a,376,0);c[m>>2]=j+16;l=f;c[l>>2]=c[g>>2];c[l+4>>2]=c[g+4>>2];c[l+8>>2]=c[g+8>>2];c[l+12>>2]=c[g+12>>2];if(c[j>>2]&8|0){l=(c[j+8>>2]|0)+4|0;c[l>>2]=(c[l>>2]|0)+1}Eo(a,-1)|0}while(0);g=c[m>>2]|0;d=c[k>>2]|0;b=g-d>>4>>>0>1;d=d+16|0;l=b?d:0;e=g;if((c[((l|0)==0?936:l)>>2]|0)==2){f=c[(c[a+304>>2]|0)+60>>2]|0;if(e>>>0<(c[a+56>>2]|0)>>>0){c[m>>2]=e+16;c[e>>2]=8;c[e+8>>2]=f;m=f+4|0;c[m>>2]=(c[m>>2]|0)+1;break}else Un(a,4153)}if(e>>>0>=(c[a+56>>2]|0)>>>0)Un(a,1093);if(!b)jo(a,376,1);c[m>>2]=e+16;m=g;c[m>>2]=c[d>>2];c[m+4>>2]=c[d+4>>2];c[m+8>>2]=c[d+8>>2];c[m+12>>2]=c[d+12>>2];if(c[e>>2]&8|0){m=(c[e+8>>2]|0)+4|0;c[m>>2]=(c[m>>2]|0)+1}Eo(a,-1)|0}while(0);Eo(a,-2)|0;Eo(a,-1)|0;kr(a);up(a);return 1}function Yt(a){a=a|0;Zu(a);Vu(a,0);return 1}function Zt(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+16|0;j=n;k=b+68|0;e=c[k>>2]|0;m=b+56|0;if(e>>>0>=(c[m>>2]|0)>>>0)Un(b,4361);c[k>>2]=e+16;i=b+64|0;if(c[b+72>>2]|0?(d=c[i>>2]|0,h=d+-16|0,c[e>>2]=c[h>>2],c[e+4>>2]=c[h+4>>2],c[e+8>>2]=c[h+8>>2],c[e+12>>2]=c[h+12>>2],c[h>>2]&8|0):0){h=(c[d+-8>>2]|0)+4|0;c[h>>2]=(c[h>>2]|0)+1}e=c[k>>2]|0;h=c[i>>2]|0;f=h;d=e-f>>4;d=d|0?h+(d+-1<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)!=9)In(b,2130,-1,268963);if(!(c[d+8>>2]|0))In(b,2130,-1,268963);g=e;if((e|0)==(f|0))jo(b,300,0);h=b+304|0;d=c[(c[h>>2]|0)+108>>2]|0;if(g>>>0>=(c[m>>2]|0)>>>0)Un(b,4153);c[k>>2]=g+16;c[g>>2]=8;c[g+8>>2]=d;d=d+4|0;c[d>>2]=(c[d>>2]|0)+1;d=c[i>>2]|0;e=(c[k>>2]|0)-d>>4;if(!e)jo(b,376,0);ro(b,d,d+(e+-1<<4)|0)|0;e=c[i>>2]|0;f=(c[k>>2]|0)-e>>4;d=f+-2|0;if(f>>>0<=1)jo(b,376,-2);o=e+(d<<4)|0;f=e+(f+-1<<4)|0;g=c[o>>2]|0;d=c[e+(d<<4)+8>>2]|0;QQ(o|0,o+16|0,f-o|0)|0;c[f>>2]=2;c[k>>2]=(c[k>>2]|0)+-16;if(g&8|0?(g=d+4|0,o=(c[g>>2]|0)+-1|0,c[g>>2]=o,(o|0)==0):0)Yn(c[b+44>>2]|0,d);e=Ro(b,-1)|0;d=c[k>>2]|0;if((d|0)==(c[i>>2]|0))Jn(b,268620,50337407,268636);g=d+-16|0;c[k>>2]=g;o=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[g>>2]=2;if(o&8|0?(g=d+4|0,o=(c[g>>2]|0)+-1|0,c[g>>2]=o,(o|0)==0):0)Yn(c[b+44>>2]|0,d);if(!e)d=j;else{a[j>>0]=103;d=j+1|0}o=c[k>>2]|0;e=o;if((o|0)==(c[i>>2]|0))jo(b,300,0);f=c[(c[h>>2]|0)+180>>2]|0;if(e>>>0>=(c[m>>2]|0)>>>0)Un(b,4153);c[k>>2]=e+16;c[e>>2]=8;c[e+8>>2]=f;e=f+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[i>>2]|0;f=(c[k>>2]|0)-e>>4;if(!f)jo(b,376,0);ro(b,e,e+(f+-1<<4)|0)|0;f=c[i>>2]|0;g=(c[k>>2]|0)-f>>4;e=g+-2|0;if(g>>>0<=1)jo(b,376,-2);p=f+(e<<4)|0;g=f+(g+-1<<4)|0;o=c[p>>2]|0;e=c[f+(e<<4)+8>>2]|0;QQ(p|0,p+16|0,g-p|0)|0;c[g>>2]=2;c[k>>2]=(c[k>>2]|0)+-16;if(o&8|0?(o=e+4|0,p=(c[o>>2]|0)+-1|0,c[o>>2]=p,(p|0)==0):0)Yn(c[b+44>>2]|0,e);f=Ro(b,-1)|0;e=c[k>>2]|0;if((e|0)==(c[i>>2]|0))Jn(b,268620,50337407,268636);o=e+-16|0;c[k>>2]=o;p=c[e+-16>>2]|0;e=c[e+-8>>2]|0;c[o>>2]=2;do if(p&8|0){o=e+4|0;p=(c[o>>2]|0)+-1|0;c[o>>2]=p;if(p|0)break;Yn(c[b+44>>2]|0,e)}while(0);if(f){a[d>>0]=105;d=d+1|0}p=c[k>>2]|0;f=p;if((p|0)==(c[i>>2]|0))jo(b,300,0);e=c[(c[h>>2]|0)+184>>2]|0;if(f>>>0>=(c[m>>2]|0)>>>0)Un(b,4153);c[k>>2]=f+16;c[f>>2]=8;c[f+8>>2]=e;e=e+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[i>>2]|0;f=(c[k>>2]|0)-e>>4;if(!f)jo(b,376,0);ro(b,e,e+(f+-1<<4)|0)|0;f=c[i>>2]|0;g=(c[k>>2]|0)-f>>4;e=g+-2|0;if(g>>>0<=1)jo(b,376,-2);h=f+(e<<4)|0;o=f+(g+-1<<4)|0;p=c[h>>2]|0;e=c[f+(e<<4)+8>>2]|0;QQ(h|0,h+16|0,o-h|0)|0;c[o>>2]=2;c[k>>2]=(c[k>>2]|0)+-16;do if(p&8|0){o=e+4|0;p=(c[o>>2]|0)+-1|0;c[o>>2]=p;if(p|0)break;Yn(c[b+44>>2]|0,e)}while(0);f=Ro(b,-1)|0;e=c[k>>2]|0;if((e|0)==(c[i>>2]|0))Jn(b,268620,50337407,268636);o=e+-16|0;c[k>>2]=o;p=c[e+-16>>2]|0;e=c[e+-8>>2]|0;c[o>>2]=2;do if(p&8|0){o=e+4|0;p=(c[o>>2]|0)+-1|0;c[o>>2]=p;if(p|0)break;Yn(c[b+44>>2]|0,e)}while(0);if(f){a[d>>0]=109;d=d+1|0}a[d>>0]=0;d=WO(j)|0;if((c[k>>2]|0)>>>0>=(c[m>>2]|0)>>>0)Un(b,4300);if((d|0)<0)Jn(b,268620,50335961,268982);else{p=Oo(b,j,d)|0;o=c[k>>2]|0;c[k>>2]=o+16;c[o>>2]=8;c[o+8>>2]=p;p=p+4|0;c[p>>2]=(c[p>>2]|0)+1;l=n;return 1}return 0}function _t(a){a=a|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;n=a+68|0;f=c[n>>2]|0;o=a+56|0;if(f>>>0>=(c[o>>2]|0)>>>0)Un(a,4361);c[n>>2]=f+16;h=a+72|0;m=a+64|0;if(c[h>>2]|0?(e=c[m>>2]|0,l=e+-16|0,c[f>>2]=c[l>>2],c[f+4>>2]=c[l+4>>2],c[f+8>>2]=c[l+8>>2],c[f+12>>2]=c[l+12>>2],c[l>>2]&8|0):0){l=(c[e+-8>>2]|0)+4|0;c[l>>2]=(c[l>>2]|0)+1}i=c[n>>2]|0;k=c[m>>2]|0;j=k;e=i-j>>4;e=e|0?k+(e+-1<<4)|0:0;e=(e|0)==0?936:e;k=i;if((c[e>>2]|0)!=9)In(a,2130,-1,268963);g=c[e+8>>2]|0;if(!g)In(a,2130,-1,268963);e=c[h>>2]|0;do if(e){f=c[e+16>>2]|0;if(!f){l=(c[e+4>>2]|0)>>>8<<24>>24;break}if(c[f>>2]&4096)l=b[f+46>>1]|0;else l=0}else l=0;while(0);if((c[g>>2]&-134217728|0)!=1476395008){if((g|0)!=(c[a+172>>2]|0))Vn(a,278730,189);if((l|0)!=16){o=0;return o|0}if(k>>>0>=(c[o>>2]|0)>>>0)Un(a,4300);o=Oo(a,273038,4)|0;a=c[n>>2]|0;c[n>>2]=a+16;c[a>>2]=8;c[a+8>>2]=o;o=o+4|0;c[o>>2]=(c[o>>2]|0)+1;o=1;return o|0}if((i|0)==(j|0))jo(a,300,0);h=a+304|0;e=c[(c[h>>2]|0)+384>>2]|0;if(k>>>0>=(c[o>>2]|0)>>>0)Un(a,4153);c[n>>2]=k+16;c[k>>2]=8;c[k+8>>2]=e;e=e+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[m>>2]|0;f=(c[n>>2]|0)-e>>4;if(!f)jo(a,376,0);ro(a,e,e+(f+-1<<4)|0)|0;f=c[m>>2]|0;g=(c[n>>2]|0)-f>>4;e=g+-2|0;if(g>>>0<=1)jo(a,376,-2);i=f+(e<<4)|0;j=f+(g+-1<<4)|0;k=c[i>>2]|0;e=c[f+(e<<4)+8>>2]|0;QQ(i|0,i+16|0,j-i|0)|0;c[j>>2]=2;f=(c[n>>2]|0)+-16|0;c[n>>2]=f;if((k&8|0)!=0?(j=e+4|0,k=(c[j>>2]|0)+-1|0,c[j>>2]=k,(k|0)==0):0){Yn(c[a+44>>2]|0,e);f=c[n>>2]|0}g=f;if((f|0)==(c[m>>2]|0))jo(a,300,0);e=c[(c[h>>2]|0)+372>>2]|0;if(g>>>0>=(c[o>>2]|0)>>>0)Un(a,4153);c[n>>2]=g+16;c[g>>2]=8;c[g+8>>2]=e;e=e+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[m>>2]|0;f=(c[n>>2]|0)-e>>4;if(!f)jo(a,376,0);ro(a,e,e+(f+-1<<4)|0)|0;f=c[m>>2]|0;g=(c[n>>2]|0)-f>>4;e=g+-2|0;if(g>>>0<=1)jo(a,376,-2);j=f+(e<<4)|0;g=f+(g+-1<<4)|0;k=c[j>>2]|0;e=c[f+(e<<4)+8>>2]|0;QQ(j|0,j+16|0,g-j|0)|0;c[g>>2]=2;g=(c[n>>2]|0)+-16|0;c[n>>2]=g;f=g;if((k&8|0)!=0?(j=e+4|0,k=(c[j>>2]|0)+-1|0,c[j>>2]=k,(k|0)==0):0){Yn(c[a+44>>2]|0,e);g=c[n>>2]|0;f=g}h=c[m>>2]|0;e=f-h>>4;e=e|0?h+(e+-1<<4)|0:0;e=(e|0)==0?936:e;if((c[e>>2]|0)!=8)In(a,2101,-1,287721);e=c[e+8>>2]|0;if(!e)In(a,2101,-1,287721);f=d[e+28>>0]|0;if((g|0)==(h|0))Jn(a,268620,50337407,268636);k=g+-16|0;c[n>>2]=k;m=c[g+-16>>2]|0;e=c[g+-8>>2]|0;c[k>>2]=2;do if(m&8|0){k=e+4|0;m=(c[k>>2]|0)+-1|0;c[k>>2]=m;if(m|0)break;Yn(c[a+44>>2]|0,e)}while(0);switch(l|0){case 0:{e=c[n>>2]|0;if(e>>>0>=(c[o>>2]|0)>>>0)Un(a,4185);c[n>>2]=e+16;c[e>>2]=4;c[e+8>>2]=f&1;o=1;return o|0}case 1:{e=c[n>>2]|0;if(e>>>0>=(c[o>>2]|0)>>>0)Un(a,4185);c[n>>2]=e+16;c[e>>2]=4;c[e+8>>2]=f>>>1&1;o=1;return o|0}case 2:{e=c[n>>2]|0;if(e>>>0>=(c[o>>2]|0)>>>0)Un(a,4185);c[n>>2]=e+16;c[e>>2]=4;c[e+8>>2]=f>>>2&1;o=1;return o|0}default:{o=1;return o|0}}return 0}function $t(a){a=a|0;var b=0,d=0,e=0,f=0;Zu(a);Vu(a,0);d=a+68|0;e=c[d>>2]|0;f=c[a+64>>2]|0;b=e-f>>4;b=b|0?f+(b+-1<<4)|0:0;if(e>>>0<(c[a+56>>2]|0)>>>0){f=(c[((b|0)==0?936:b)>>2]|0)!=3&1;c[d>>2]=e+16;c[e>>2]=4;c[e+8>>2]=f;return 1}else Un(a,4185);return 0}function au(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=a+68|0;d=c[i>>2]|0;g=a+56|0;if(d>>>0>=(c[g>>2]|0)>>>0)Un(a,4361);c[i>>2]=d+16;if(c[a+72>>2]|0?(b=c[a+64>>2]|0,h=b+-16|0,c[d>>2]=c[h>>2],c[d+4>>2]=c[h+4>>2],c[d+8>>2]=c[h+8>>2],c[d+12>>2]=c[h+12>>2],c[h>>2]&8|0):0){h=(c[b+-8>>2]|0)+4|0;c[h>>2]=(c[h>>2]|0)+1}if((c[i>>2]|0)>>>0>=(c[g>>2]|0)>>>0)Un(a,4300);f=Oo(a,308626,1)|0;h=c[i>>2]|0;c[i>>2]=h+16;c[h>>2]=8;c[h+8>>2]=f;f=f+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[i>>2]|0;h=a+64|0;b=f;if((f|0)==(c[h>>2]|0))jo(a,300,0);f=a+304|0;d=c[(c[f>>2]|0)+176>>2]|0;if(b>>>0>=(c[g>>2]|0)>>>0)Un(a,4153);c[i>>2]=b+16;c[b>>2]=8;c[b+8>>2]=d;b=d+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[h>>2]|0;d=(c[i>>2]|0)-b>>4;if(!d)jo(a,376,0);ro(a,b,b+(d+-1<<4)|0)|0;d=c[h>>2]|0;e=(c[i>>2]|0)-d>>4;b=e+-2|0;if(e>>>0<=1)jo(a,376,-2);k=d+(b<<4)|0;j=d+(e+-1<<4)|0;e=c[k>>2]|0;b=c[d+(b<<4)+8>>2]|0;QQ(k|0,k+16|0,j-k|0)|0;c[j>>2]=2;d=(c[i>>2]|0)+-16|0;c[i>>2]=d;if((e&8|0)!=0?(j=b+4|0,k=(c[j>>2]|0)+-1|0,c[j>>2]=k,(k|0)==0):0){Yn(c[a+44>>2]|0,b);d=c[i>>2]|0}if(d>>>0>=(c[g>>2]|0)>>>0)Un(a,1093);b=c[h>>2]|0;e=d-b>>4;if(e>>>0<=1)jo(a,376,-2);k=b+(e+-2<<4)|0;c[i>>2]=d+16;c[d>>2]=c[k>>2];c[d+4>>2]=c[k+4>>2];c[d+8>>2]=c[k+8>>2];c[d+12>>2]=c[k+12>>2];if(c[d>>2]&8|0){k=(c[d+8>>2]|0)+4|0;c[k>>2]=(c[k>>2]|0)+1}k=c[i>>2]|0;d=k;if((k|0)==(c[h>>2]|0))jo(a,300,0);b=c[(c[f>>2]|0)+192>>2]|0;if(d>>>0>=(c[g>>2]|0)>>>0)Un(a,4153);c[i>>2]=d+16;c[d>>2]=8;c[d+8>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[h>>2]|0;d=(c[i>>2]|0)-b>>4;if(!d)jo(a,376,0);ro(a,b,b+(d+-1<<4)|0)|0;d=c[h>>2]|0;e=(c[i>>2]|0)-d>>4;b=e+-2|0;if(e>>>0<=1)jo(a,376,-2);h=d+(b<<4)|0;j=d+(e+-1<<4)|0;k=c[h>>2]|0;b=c[d+(b<<4)+8>>2]|0;QQ(h|0,h+16|0,j-h|0)|0;c[j>>2]=2;c[i>>2]=(c[i>>2]|0)+-16;if(!(k&8)){Mo(a,4,0);return 1}j=b+4|0;k=(c[j>>2]|0)+-1|0;c[j>>2]=k;if(k|0){Mo(a,4,0);return 1}Yn(c[a+44>>2]|0,b);Mo(a,4,0);return 1}function bu(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=b+68|0;h=c[i>>2]|0;j=b+64|0;d=c[j>>2]|0;e=h;do if((h|0)==(d|0)){d=c[(c[b+304>>2]|0)+60>>2]|0;if(e>>>0<(c[b+56>>2]|0)>>>0){c[i>>2]=e+16;c[e>>2]=8;c[e+8>>2]=d;h=d+4|0;c[h>>2]=(c[h>>2]|0)+1;break}else Un(b,4153)}else{d=(d|0)==0?936:d;if(!(((c[d>>2]|0)==8?(f=c[d+8>>2]|0,(f|0)!=0):0)?(c[f>>2]&512|0)!=0:0)){Eo(b,0)|0;e=c[i>>2]|0;d=c[j>>2]|0;d=(e|0)!=(d|0)?d:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==8)f=c[d+8>>2]|0;else f=0}if(c[f>>2]&512|0){h=c[b+72>>2]|0;if(h|0?c[h+52>>2]&4|0:0)break;g=b+56|0;if(e>>>0>=(c[g>>2]|0)>>>0)Un(b,4300);d=Oo(b,278720,7)|0;h=c[i>>2]|0;c[i>>2]=h+16;c[h>>2]=8;c[h+8>>2]=d;d=d+4|0;c[d>>2]=(c[d>>2]|0)+1;d=f+28|0;h=c[f+20>>2]|0;e=d+h|0;f=d+1|0;a:do if((h|0)>1){d=f;do{if((a[d>>0]|0)==-1)break a;d=d+1|0}while(d>>>0<e>>>0)}else d=f;while(0);d=d-f|0;if((c[i>>2]|0)>>>0>=(c[g>>2]|0)>>>0)Un(b,4300);if((d|0)<0)Jn(b,268620,50335961,268982);h=Oo(b,f,d)|0;f=c[i>>2]|0;c[i>>2]=f+16;c[f>>2]=8;c[f+8>>2]=h;h=h+4|0;c[h>>2]=(c[h>>2]|0)+1;if((c[i>>2]|0)>>>0>=(c[g>>2]|0)>>>0)Un(b,4300);e=Oo(b,278728,1)|0;d=c[i>>2]|0;c[i>>2]=d+16;c[d>>2]=8;c[d+8>>2]=e;e=e+4|0;c[e>>2]=(c[e>>2]|0)+1;Mo(b,3,0);e=c[j>>2]|0;d=(c[i>>2]|0)-e>>4;if(!d)jo(b,376,-1);g=e+(d+-1<<4)|0;h=c[e>>2]|0;d=c[e+8>>2]|0;c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];c[e+8>>2]=c[g+8>>2];c[e+12>>2]=c[g+12>>2];c[g>>2]=2;c[i>>2]=(c[i>>2]|0)+-16;if(h&8|0?(g=d+4|0,h=(c[g>>2]|0)+-1|0,c[g>>2]=h,(h|0)==0):0)Yn(c[b+44>>2]|0,d)}}while(0);Eo(b,0)|0;Gp(b,1);d=c[b+72>>2]|0;if(!d)return 1;if(!(c[d+52>>2]&4))return 1;g=b+56|0;if((c[i>>2]|0)>>>0>=(c[g>>2]|0)>>>0)Un(b,4604);h=vo(b,40)|0;d=c[b+44>>2]|0;c[h>>2]=1619017857;d=d+24|0;e=c[d>>2]|0;if(e|0)c[e+12>>2]=h;c[h+12>>2]=0;c[h+8>>2]=e;c[d>>2]=h;e=c[i>>2]|0;c[e>>2]=9;c[e+8>>2]=h;e=h+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[i>>2]|0;f=e+16|0;c[i>>2]=f;d=c[b+140>>2]|0;c[h+20>>2]=d;if(d|0){h=d+4|0;c[h>>2]=(c[h>>2]|0)+1}if(f>>>0>=(c[g>>2]|0)>>>0)Un(b,1093);d=c[j>>2]|0;if((f|0)==(d|0))jo(b,376,0);c[i>>2]=e+32;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];if(c[f>>2]&8|0){h=(c[e+24>>2]|0)+4|0;c[h>>2]=(c[h>>2]|0)+1}j=c[j>>2]|0;d=(c[i>>2]|0)-j>>4;d=d>>>0>1?j+(d+-2<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)!=9)In(b,2130,-2,268963);d=c[d+8>>2]|0;if(!d)In(b,2130,-2,268963);fo(b,d,c[(c[b+304>>2]|0)+404>>2]|0,0);return 1}function cu(a){a=a|0;Yu(a,0);return 1}function du(a){a=a|0;Yu(a,1);return 1}function eu(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;v=l;l=l+32|0;g=v+16|0;s=v;e=c[d+72>>2]|0;do if(e){f=c[e+16>>2]|0;if(!f){q=(c[e+4>>2]|0)>>>8<<24>>24;break}if(c[f>>2]&4096)q=b[f+46>>1]|0;else q=0}else q=0;while(0);Uu(d)|0;u=d+68|0;f=c[u>>2]|0;r=d+64|0;t=c[r>>2]|0;e=f-t>>4;e=e|0?t+(e+-1<<4)|0:0;e=(e|0)==0?936:e;if((c[e>>2]|0)!=8)In(d,2101,-1,287721);h=c[e+8>>2]|0;if(!h)In(d,2101,-1,287721);j=h+20|0;i=c[j>>2]|0;if(f>>>0>=(c[d+56>>2]|0)>>>0)Un(d,5237);if(i>>>0>2147483646)Jn(d,268620,50336889,268576);t=d+44|0;e=ap(c[t>>2]|0,i,1,g)|0;if(!e)Mn(d,268620,5246);m=c[u>>2]|0;c[m>>2]=10;c[m+8>>2]=e;m=e+4|0;c[m>>2]=(c[m>>2]|0)+1;m=c[u>>2]|0;c[u>>2]=m+16;m=c[m+8>>2]|0;n=s+12|0;c[n>>2]=m;m=c[m+20>>2]|0;c[s>>2]=m;o=s+4|0;c[o>>2]=m;p=s+8|0;c[p>>2]=m+i;m=h+28|0;k=m+(c[j>>2]|0)|0;i=-1;j=-1;e=m;a:while(1){if(e>>>0<k>>>0){if(e>>>0<m>>>0){e=35;break}h=e+1|0;e=a[e>>0]|0;f=e&255;do if(e<<24>>24<=-1){if((e&255)<192){e=35;break a}if((e&255)<224){e=1;f=f&31;break}if((e&255)<240){e=2;f=f&15;break}if((e&255)<248){e=3;f=f&7;break}if((e&255)<252){e=4;f=f&3;break}if((e&255)>=254)if(e<<24>>24==-1){e=35;break a}else{e=6;f=0;break}else{e=5;f=f&1;break}}else{e=0;f=f&127}while(0);if((h+e|0)>>>0>k>>>0){e=35;break}if(!e)e=h;else{g=e;while(1){e=h+1|0;f=a[h>>0]&63|f<<6;if((g|0)>1){h=e;g=g+-1|0}else break}}if((j|0)>-1)h=f;else{i=j;j=f;continue}}else if((j|0)<0){e=43;break}else h=-1;f=c[s>>2]|0;if(((c[p>>2]|0)-f|0)>>>0<56){f=f-(c[o>>2]|0)|0;g=f+120+(f>>>2)|0;if(g>>>0<f>>>0){e=40;break}Kn(d,c[n>>2]|0,g);w=c[(c[n>>2]|0)+20>>2]|0;c[s>>2]=w+f;c[o>>2]=w;c[p>>2]=w+g}or(s,j,i,h,q)|0;w=j;j=h;i=w}if((e|0)==35)ko(d,270005,282);else if((e|0)==40)Jn(d,270142,50331712,268576);else if((e|0)==43){f=(c[s>>2]|0)-(c[o>>2]|0)|0;Kn(d,c[n>>2]|0,f);g=c[(c[n>>2]|0)+20>>2]|0;f=g+f|0;c[s>>2]=f;c[o>>2]=g;c[p>>2]=f;bp(d);f=c[r>>2]|0;g=(c[u>>2]|0)-f>>4;e=g+-2|0;if(g>>>0<=1)jo(d,376,-2);s=f+(e<<4)|0;d=f+(g+-1<<4)|0;w=c[s>>2]|0;e=c[f+(e<<4)+8>>2]|0;QQ(s|0,s+16|0,d-s|0)|0;c[d>>2]=2;c[u>>2]=(c[u>>2]|0)+-16;if(!(w&8)){l=v;return 1}d=e+4|0;w=(c[d>>2]|0)+-1|0;c[d>>2]=w;if(w|0){l=v;return 1}Yn(c[t>>2]|0,e);l=v;return 1}return 0}function fu(a){a=a|0;var b=0,d=0.0;Uu(a)|0;Wq(a,0);b=c[a+64>>2]|0;b=(c[a+68>>2]|0)!=(b|0)?b:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==0?(d=+h[b+8>>3],(iP(d)|0)!=0):0)if(!(d<-2147483648.0))if(d>2147483647.0)b=2147483647;else b=~~d;else b=-2147483648;else b=0;fq(a,b,b+1|0);return 1}function gu(d){d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0;r=l;l=l+16|0;g=r;j=Uu(d)|0;i=vq(d,0,0,(Po(j)|0)+-1|0,g)|0;f=c[d+72>>2]|0;do if(f){e=c[f+16>>2]|0;if(!e){m=(c[f+4>>2]|0)>>>8<<24>>24;break}if(c[e>>2]&4096)m=b[e+46>>1]|0;else m=0}else m=0;while(0);do if(!(c[g>>2]|0)){i=cq(d,j,i)|0;k=j+28|0;j=c[j+20>>2]|0;n=k+j|0;e=k+i|0;a:do if(e>>>0>=k>>>0&(i|0)<(j|0)){i=e+1|0;e=a[e>>0]|0;f=e&255;do if(e<<24>>24<=-1){if((e&255)<192){g=65533;break a}if((e&255)<224){e=1;g=f&31;break}if((e&255)<240){e=2;g=f&15;break}if((e&255)<248){e=3;g=f&7;break}if((e&255)<252){e=4;g=f&3;break}if((e&255)>=254)if(e<<24>>24==-1){g=65533;break a}else{e=6;g=0;break}else{e=5;g=f&1;break}}else{e=0;g=f&127}while(0);if((i+e|0)>>>0<=n>>>0){if(!e)e=i;else{f=e;while(1){e=i+1|0;g=a[i>>0]&63|g<<6;if((f|0)>1){i=e;f=f+-1|0}else break}}if((m|0)!=0&(g&-1024|0)==55296?e>>>0>=k>>>0&e>>>0<n>>>0:0){j=e+1|0;e=a[e>>0]|0;i=e&255;do if(e<<24>>24<=-1){if((e&255)<192)break a;if((e&255)<224){f=1;e=i&31;break}if((e&255)<240){f=2;e=i&15;break}if((e&255)<248){f=3;e=i&7;break}if((e&255)<252){f=4;e=i&3;break}if((e&255)>=254)if(e<<24>>24==-1)break a;else{f=6;e=0;break}else{f=5;e=i&1;break}}else{f=0;e=i&127}while(0);if((j+f|0)>>>0<=n>>>0){if(f){i=j;while(1){e=a[i>>0]&63|e<<6;if((f|0)>1){i=i+1|0;f=f+-1|0}else break}}g=(e&-1024|0)==56320?(g<<10)+-56613888+e|0:g}}}else g=65533}else g=65533;while(0);e=d+68|0;f=c[e>>2]|0;if(f>>>0<(c[d+56>>2]|0)>>>0){o=+(g>>>0);p=e;q=f;break}else Un(d,4274)}else{if(m|0){d=0;l=r;return d|0}e=d+68|0;f=c[e>>2]|0;if(f>>>0<(c[d+56>>2]|0)>>>0){o=s;p=e;q=f}else Un(d,4286)}while(0);c[p>>2]=q+16;c[q>>2]=0;h[q+8>>3]=o;d=1;l=r;return d|0}function hu(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;d=j;Uu(a)|0;e=a+68|0;f=c[e>>2]|0;g=a+64|0;h=c[g>>2]|0;i=h;b=f-i>>4;if(!b)jo(a,376,0);b=b+-1|0;if(!b){h=f;i=h-i|0;i=i>>4;Mo(a,i,0);l=j;return 1}i=h+(b<<4)|0;c[d>>2]=c[i>>2];c[d+4>>2]=c[i+4>>2];c[d+8>>2]=c[i+8>>2];c[d+12>>2]=c[i+12>>2];QQ(h+16|0,h|0,b<<4|0)|0;c[h>>2]=c[d>>2];c[h+4>>2]=c[d+4>>2];c[h+8>>2]=c[d+8>>2];c[h+12>>2]=c[d+12>>2];h=c[e>>2]|0;i=c[g>>2]|0;i=h-i|0;i=i>>4;Mo(a,i,0);l=j;return 1}function iu(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;e=o;g=Uu(b)|0;n=b+68|0;d=b+64|0;m=c[d>>2]|0;m=(c[n>>2]|0)!=(m|0)?m:0;m=(m|0)==0?936:m;if((c[m>>2]|0)==9?(c[c[m+8>>2]>>2]&-134217728|0)==1476395008:0)Vn(b,278632,30);Eo(b,0)|0;d=c[d>>2]|0;d=(c[n>>2]|0)!=(d|0)?d:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==8)f=c[d+8>>2]|0;else f=0;d=vq(b,1,0,Po(g)|0,e)|0;m=f+28|0;j=c[f+20>>2]|0;a:do if((j|0)>=1){f=cq(b,g,d)|0;k=g+28|0;i=c[g+20>>2]|0;g=k+i|0;e=k+f|0;h=a[m>>0]|0;if((f|0)>(i|0)|e>>>0<k>>>0)d=-1;else{i=g;while(1){f=a[e>>0]|0;if((f<<24>>24==h<<24>>24?(i-e|0)>>>0>=j>>>0:0)?(KN(e,m,j)|0)==0:0)break a;e=e+1|0;if(e>>>0>g>>>0|e>>>0<k>>>0){d=-1;break}else d=((f&-64)<<24>>24!=-128&1)+d|0}}}while(0);e=c[n>>2]|0;if(e>>>0<(c[b+56>>2]|0)>>>0){c[n>>2]=e+16;c[e>>2]=4;c[e+8>>2]=d>>>31^1;l=o;return 1}else Un(b,4185);return 0}function ju(d){d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0;s=l;l=l+16|0;n=s;e=c[d+72>>2]|0;do if(e){f=c[e+16>>2]|0;if(!f){q=(c[e+4>>2]|0)>>>8<<24>>24;break}if(c[f>>2]&4096)q=b[f+46>>1]|0;else q=0}else q=0;while(0);p=Uu(d)|0;e=Po(p)|0;Eo(d,0)|0;r=d+68|0;g=c[r>>2]|0;k=d+64|0;i=c[k>>2]|0;j=i;f=(g|0)!=(j|0)?i:0;f=(f|0)==0?936:f;if((c[f>>2]|0)==8)m=c[f+8>>2]|0;else m=0;if(g-j>>4>>>0<=1)jo(d,300,1);t=+ho(d,i+16|0);f=c[k>>2]|0;i=f+16|0;o=c[i>>2]|0;j=f+24|0;g=c[j>>2]|0;c[i>>2]=0;h[j>>3]=t;if((o&8|0)!=0?(j=g+4|0,o=(c[j>>2]|0)+-1|0,c[j>>2]=o,(o|0)==0):0){Yn(c[d+44>>2]|0,g);f=c[k>>2]|0}f=(c[r>>2]|0)-f>>4>>>0>1?f+16|0:0;f=(f|0)==0?936:f;if(!((c[f>>2]|0)==0?(o=f+8|0,k=c[o+4>>2]&2147483647,(q|0)!=0&(k>>>0>2146435072|(k|0)==2146435072&(c[o>>2]|0)>>>0>0)):0))e=vq(d,1,0,e,n)|0;o=m+28|0;m=c[m+20>>2]|0;a:do if((m|0)>=1){k=cq(d,p,e)|0;n=p+28|0;p=c[p+20>>2]|0;i=n+p|0;f=n+k|0;j=a[o>>0]|0;if(!((k|0)>(p|0)|f>>>0<n>>>0)){k=i;if(!q)while(1){g=a[f>>0]|0;if((g<<24>>24==j<<24>>24?(k-f|0)>>>0>=m>>>0:0)?(KN(f,o,m)|0)==0:0)break a;f=f+1|0;if(f>>>0>i>>>0|f>>>0<n>>>0){e=-1;break}else e=((g&-64)<<24>>24!=-128&1)+e|0}else while(1){g=a[f>>0]|0;if((g<<24>>24==j<<24>>24?(k-f|0)>>>0>=m>>>0:0)?(KN(f,o,m)|0)==0:0)break a;f=f+-1|0;if(f>>>0>i>>>0|f>>>0<n>>>0){e=-1;break}else e=(((g&-64)<<24>>24!=-128)<<31>>31)+e|0}}else e=-1}while(0);f=c[r>>2]|0;if(f>>>0<(c[d+56>>2]|0)>>>0){c[r>>2]=f+16;c[f>>2]=0;h[f+8>>3]=+(e|0);l=s;return 1}else Un(d,4244);return 0}function ku(a){a=a|0;var b=0.0,d=0,e=0,f=0,g=0,i=0,j=0;e=Uu(a)|0;Eo(a,0)|0;j=a+68|0;i=c[j>>2]|0;d=c[a+64>>2]|0;d=(i|0)!=(d|0)?d:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==8)d=c[d+8>>2]|0;else d=0;f=c[e+20>>2]|0;g=c[d+20>>2]|0;d=KN(e+28|0,d+28|0,f>>>0<=g>>>0?f:g)|0;if((d|0)<0)b=-1.0;else b=f>>>0>g>>>0|(d|0)!=0?1.0:+(((f|0)!=(g|0))<<31>>31);if(i>>>0<(c[a+56>>2]|0)>>>0){c[j>>2]=i+16;c[i>>2]=0;h[i+8>>3]=b;return 1}else Un(a,4244);return 0}function lu(a){a=a|0;var b=0,d=0,e=0,f=0.0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;Uu(a)|0;Xu(a,0);p=a+68|0;q=c[p>>2]|0;n=a+64|0;d=q;if((q|0)==(c[n>>2]|0))jo(a,300,0);o=a+304|0;b=c[(c[o>>2]|0)+108>>2]|0;q=a+56|0;if(d>>>0>=(c[q>>2]|0)>>>0)Un(a,4153);c[p>>2]=d+16;c[d>>2]=8;c[d+8>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[n>>2]|0;d=(c[p>>2]|0)-b>>4;if(!d)jo(a,376,0);ro(a,b,b+(d+-1<<4)|0)|0;d=c[n>>2]|0;e=(c[p>>2]|0)-d>>4;b=e+-2|0;if(e>>>0<=1)jo(a,376,-2);g=d+(b<<4)|0;j=d+(e+-1<<4)|0;l=c[g>>2]|0;b=c[d+(b<<4)+8>>2]|0;QQ(g|0,g+16|0,j-g|0)|0;c[j>>2]=2;c[p>>2]=(c[p>>2]|0)+-16;if(l&8|0?(j=b+4|0,l=(c[j>>2]|0)+-1|0,c[j>>2]=l,(l|0)==0):0)Yn(c[a+44>>2]|0,b);d=Ro(a,-1)|0;b=c[p>>2]|0;if((b|0)==(c[n>>2]|0))Jn(a,268620,50337407,268636);j=b+-16|0;c[p>>2]=j;l=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[j>>2]=2;if(l&8|0?(j=b+4|0,l=(c[j>>2]|0)+-1|0,c[j>>2]=l,(l|0)==0):0)Yn(c[a+44>>2]|0,b);if(!d){Vu(a,0);return 1}b=c[p>>2]|0;d=c[q>>2]|0;if(b>>>0>=d>>>0)Un(a,4244);e=b+16|0;c[p>>2]=e;c[b>>2]=0;h[b+8>>3]=0.0;if((e|0)==(c[n>>2]|0))jo(a,300,0);g=c[(c[o>>2]|0)+188>>2]|0;if(e>>>0>=d>>>0)Un(a,4153);c[p>>2]=b+32;c[e>>2]=8;c[b+24>>2]=g;e=g+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[n>>2]|0;g=(c[p>>2]|0)-e>>4;if(!g)jo(a,376,0);if((g|0)==1)jo(a,376,-2);d=g+-2|0;l=a+72|0;b=c[l>>2]|0;if(!b)b=1;else b=c[b+52>>2]&1;No(a,e,e+(g+-1<<4)|0,c[e+(d<<4)>>2]|0,c[e+(d<<4)+4>>2]|0,+h[e+(d<<4)+8>>3],b)|0;uq(a);e=vo(a,48)|0;j=a+44|0;b=c[j>>2]|0;c[e>>2]=272679041;b=b+24|0;d=c[b>>2]|0;if(d|0)c[d+12>>2]=e;c[e+12>>2]=0;c[e+8>>2]=d;c[b>>2]=e;b=c[a+132>>2]|0;c[e+20>>2]=b;if(b|0){g=b+4|0;c[g>>2]=(c[g>>2]|0)+1}b=c[p>>2]|0;c[b>>2]=9;c[b+8>>2]=e;b=e+4|0;c[b>>2]=(c[b>>2]|0)+1;b=(c[p>>2]|0)+16|0;c[p>>2]=b;if(b>>>0<(c[q>>2]|0)>>>0){m=0;k=0;i=b}else Un(a,1093);while(1){b=c[n>>2]|0;if((i|0)==(b|0)){b=38;break}c[p>>2]=i+16;c[i>>2]=c[b>>2];c[i+4>>2]=c[b+4>>2];c[i+8>>2]=c[b+8>>2];c[i+12>>2]=c[b+12>>2];if(c[i>>2]&8|0){i=(c[i+8>>2]|0)+4|0;c[i>>2]=(c[i>>2]|0)+1}b=c[p>>2]|0;if(b>>>0>=(c[q>>2]|0)>>>0){b=42;break}d=c[n>>2]|0;if(b-d>>4>>>0<=1){b=44;break}i=d+16|0;c[p>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(c[b>>2]&8|0){i=(c[b+8>>2]|0)+4|0;c[i>>2]=(c[i>>2]|0)+1}Vu(a,0);b=c[p>>2]|0;e=c[n>>2]|0;d=e;i=b-d>>4;i=i|0?e+(i+-1<<4)|0:0;g=b;if((c[((i|0)==0?936:i)>>2]|0)!=9){b=48;break}if((b|0)==(d|0)){b=55;break}b=c[(c[o>>2]|0)+188>>2]|0;if(g>>>0>=(c[q>>2]|0)>>>0){b=57;break}c[p>>2]=g+16;c[g>>2]=8;c[g+8>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[n>>2]|0;d=(c[p>>2]|0)-b>>4;if(!d){b=59;break}ro(a,b,b+(d+-1<<4)|0)|0;d=c[n>>2]|0;e=(c[p>>2]|0)-d>>4;b=e+-2|0;if(e>>>0<=1){b=61;break}g=d+(b<<4)|0;e=d+(e+-1<<4)|0;i=c[g>>2]|0;b=c[d+(b<<4)+8>>2]|0;QQ(g|0,g+16|0,e-g|0)|0;c[e>>2]=2;e=(c[p>>2]|0)+-16|0;c[p>>2]=e;d=e;do if(i&8){g=b+4|0;i=(c[g>>2]|0)+-1|0;c[g>>2]=i;if(i|0)break;Yn(c[j>>2]|0,b);e=c[p>>2]|0;d=e}while(0);g=c[n>>2]|0;b=d-g>>4;b=b|0?g+(b+-1<<4)|0:0;b=(b|0)==0?936:b;do if(!(c[b>>2]|0)){f=+h[b+8>>3];if(!(iP(f)|0)){d=0;break}if(f<-2147483648.0){d=-2147483648;break}if(f>2147483647.0){d=2147483647;break}d=~~f}else d=0;while(0);if((e|0)==(g|0)){b=71;break}g=e+-16|0;c[p>>2]=g;i=c[e+-16>>2]|0;b=c[e+-8>>2]|0;c[g>>2]=2;do if(i&8|0){g=b+4|0;i=(c[g>>2]|0)+-1|0;c[g>>2]=i;if(i|0)break;Yn(c[j>>2]|0,b)}while(0);if((d|0)==(k|0)){i=k+1|0;b=c[p>>2]|0;d=c[q>>2]|0;if(b>>>0>=d>>>0){b=77;break}e=b+16|0;c[p>>2]=e;c[b>>2]=0;h[b+8>>3]=+(i|0);if((e|0)==(c[n>>2]|0)){b=79;break}g=c[(c[o>>2]|0)+188>>2]|0;if(e>>>0>=d>>>0){b=81;break}c[p>>2]=b+32;c[e>>2]=8;c[b+24>>2]=g;e=g+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[n>>2]|0;g=(c[p>>2]|0)-e>>4;if(!g){b=83;break}if((g|0)==1){b=85;break}d=g+-2|0;b=c[l>>2]|0;if(!b)b=1;else b=c[b+52>>2]&1;No(a,e,e+(g+-1<<4)|0,c[e+(d<<4)>>2]|0,c[e+(d<<4)+4>>2]|0,+h[e+(d<<4)+8>>3],b)|0;uq(a);g=i}else g=d;Np(a,-1,0)|0;mq(a,2,m);e=m+1|0;b=c[p>>2]|0;if((b|0)==(c[n>>2]|0)){b=90;break}d=b+-16|0;c[p>>2]=d;m=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[d>>2]=2;do if(m&8){k=b+4|0;m=(c[k>>2]|0)+-1|0;c[k>>2]=m;if(m|0)break;Yn(c[j>>2]|0,b);d=c[p>>2]|0}while(0);if(d>>>0<(c[q>>2]|0)>>>0){m=e;k=g;i=d}else{b=36;break}}switch(b|0){case 36:{Un(a,1093);break}case 38:{jo(a,376,0);break}case 42:{Un(a,1093);break}case 44:{jo(a,376,1);break}case 48:{if((g|0)==(e|0))Jn(a,268620,50337407,268636);n=g+-16|0;c[p>>2]=n;o=c[g+-16>>2]|0;b=c[g+-8>>2]|0;c[n>>2]=2;do if(o&8|0){n=b+4|0;o=(c[n>>2]|0)+-1|0;c[n>>2]=o;if(o|0)break;Yn(c[j>>2]|0,b)}while(0);if(m|0)return 1;b=c[p>>2]|0;if(b>>>0>=(c[q>>2]|0)>>>0)Un(a,4175);c[p>>2]=b+16;c[b>>2]=3;return 1}case 55:{jo(a,300,0);break}case 57:{Un(a,4153);break}case 59:{jo(a,376,0);break}case 61:{jo(a,376,-2);break}case 71:{Jn(a,268620,50337407,268636);break}case 77:{Un(a,4244);break}case 79:{jo(a,300,0);break}case 81:{Un(a,4153);break}case 83:{jo(a,376,0);break}case 85:{jo(a,376,-2);break}case 90:{Jn(a,268620,50337407,268636);break}}return 0}function mu(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+16|0;k=q;o=Uu(a)|0;f=c[o+20>>2]|0;n=a+68|0;e=a+64|0;d=c[e>>2]|0;if((c[n>>2]|0)==(d|0))jo(a,300,0);i=+ho(a,d);t=c[e>>2]|0;r=c[t>>2]|0;s=t+8|0;d=c[s>>2]|0;c[t>>2]=0;h[s>>3]=i;if(r&8|0?(s=d+4|0,t=(c[s>>2]|0)+-1|0,c[s>>2]=t,(t|0)==0):0)Yn(c[a+44>>2]|0,d);h[j>>3]=i;if((c[j>>2]|0)==0?(c[j+4>>2]|0)==2146435072:0)Jn(a,278632,50333053,269834);t=c[n>>2]|0;d=c[e>>2]|0;d=(t|0)!=(d|0)?d:0;d=(d|0)==0?936:d;e=t;a:do if((c[d>>2]|0)==0?(m=+h[d+8>>3],(iP(m)|0)!=0):0){if(m<-2147483648.0)Jn(a,278632,50333053,269834);d=~~m;do if(!(m>2147483647.0))if((d|0)>=0){b=O(d,f)|0;if(!d){p=b;break a}else{g=d;break}}else Jn(a,278632,50333053,269834);else{g=2147483647;b=O(f,2147483647)|0}while(0);if(((b>>>0)/(g>>>0)|0|0)==(f|0))p=b;else Jn(a,278632,50333053,269834)}else p=0;while(0);if(e>>>0>=(c[a+56>>2]|0)>>>0)Un(a,5237);if(p>>>0>2147483646)Jn(a,268620,50336889,268576);b=ap(c[a+44>>2]|0,p,4,k)|0;if(!b)Mn(a,268620,5246);e=c[n>>2]|0;c[e>>2]=10;c[e+8>>2]=b;e=b+4|0;c[e>>2]=(c[e>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+16;e=c[k>>2]|0;b=o+28|0;k=e+p|0;if(p>>>0<=f>>>0){s=b;r=e;t=p;PQ(r|0,s|0,t|0)|0;bp(a);l=q;return 1}g=e;d=e;while(1){PQ(d|0,b|0,f|0)|0;d=d+f|0;b=d;f=b-g|0;b=k-b|0;if(b>>>0<=f>>>0)break;else b=e}PQ(d|0,e|0,b|0)|0;bp(a);l=q;return 1}function nu(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0;X=l;l=l+16|0;K=Uu(b)|0;R=K+20|0;e=c[R>>2]|0;L=b+68|0;N=b+56|0;if((c[L>>2]|0)>>>0>=(c[N>>2]|0)>>>0)Un(b,5237);if(e>>>0>2147483646)Jn(b,268620,50336889,268576);Q=b+44|0;d=ap(c[Q>>2]|0,e,1,X)|0;if(!d)Mn(b,268620,5246);g=c[L>>2]|0;c[g>>2]=10;c[g+8>>2]=d;g=d+4|0;c[g>>2]=(c[g>>2]|0)+1;g=c[L>>2]|0;i=g+16|0;c[L>>2]=i;V=c[g+8>>2]|0;W=V+20|0;n=c[W>>2]|0;m=n;n=n+e|0;J=b+64|0;e=c[J>>2]|0;d=(i|0)!=(e|0)?e:0;d=(d|0)==0?936:d;if(((c[d>>2]|0)==9?(f=c[d+8>>2]|0,(f|0)!=0):0)?(c[f>>2]&-134217728|0)==1476395008:0){if((i|0)==(e|0))jo(b,300,0);k=b+304|0;d=c[(c[k>>2]|0)+108>>2]|0;if(i>>>0>=(c[N>>2]|0)>>>0)Un(b,4153);c[L>>2]=g+32;c[i>>2]=8;c[g+24>>2]=d;d=d+4|0;c[d>>2]=(c[d>>2]|0)+1;d=c[J>>2]|0;e=(c[L>>2]|0)-d>>4;if(!e)jo(b,376,0);ro(b,d,d+(e+-1<<4)|0)|0;e=c[J>>2]|0;f=(c[L>>2]|0)-e>>4;d=f+-2|0;if(f>>>0<=1)jo(b,376,-2);G=e+(d<<4)|0;H=e+(f+-1<<4)|0;I=c[G>>2]|0;d=c[e+(d<<4)+8>>2]|0;QQ(G|0,G+16|0,H-G|0)|0;c[H>>2]=2;c[L>>2]=(c[L>>2]|0)+-16;if(I&8|0?(H=d+4|0,I=(c[H>>2]|0)+-1|0,c[H>>2]=I,(I|0)==0):0)Yn(c[Q>>2]|0,d);i=Ro(b,-1)|0;d=c[L>>2]|0;if((d|0)==(c[J>>2]|0))Jn(b,268620,50337407,268636);H=d+-16|0;c[L>>2]=H;I=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[H>>2]=2;if(I&8|0?(H=d+4|0,I=(c[H>>2]|0)+-1|0,c[H>>2]=I,(I|0)==0):0)Yn(c[Q>>2]|0,d);if(!i){e=1;f=0}else{e=c[L>>2]|0;f=c[N>>2]|0;if(e>>>0>=f>>>0)Un(b,4244);g=e+16|0;c[L>>2]=g;c[e>>2]=0;h[e+8>>3]=0.0;if((g|0)==(c[J>>2]|0))jo(b,300,0);d=c[(c[k>>2]|0)+188>>2]|0;if(g>>>0>=f>>>0)Un(b,4153);c[L>>2]=e+32;c[g>>2]=8;c[e+24>>2]=d;f=d+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[J>>2]|0;g=(c[L>>2]|0)-f>>4;if(!g)jo(b,376,0);if((g|0)==1)jo(b,376,-2);e=g+-2|0;d=c[b+72>>2]|0;if(!d)d=1;else d=c[d+52>>2]&1;No(b,f,f+(g+-1<<4)|0,c[f+(e<<4)>>2]|0,c[f+(e<<4)+4>>2]|0,+h[f+(e<<4)+8>>3],d)|0;uq(b);e=1;f=i}}else{Eo(b,0)|0;e=0;f=0}d=c[J>>2]|0;d=(c[L>>2]|0)-d>>4>>>0>1?d+16|0:0;d=(d|0)==0?936:d;switch(c[d>>2]|0){case 9:{if(!(c[c[d+8>>2]>>2]&512))O=43;else{F=0;G=0;H=0}break}case 6:{F=0;G=0;H=0;break}default:O=43}if((O|0)==43){Eo(b,1)|0;H=c[J>>2]|0;H=(c[L>>2]|0)-H>>4>>>0>1?H+16|0:0;H=c[((H|0)==0?936:H)+8>>2]|0;I=H+28|0;F=1;G=I;H=I+(c[H+20>>2]|0)|0}C=(e|0)!=0;D=b+304|0;E=b+72|0;I=K+28|0;x=(f|0)==0;y=b+52|0;z=b+60|0;A=G>>>0<H>>>0;B=H;p=0;q=m;g=m;o=n;a:while(1){if(C){d=c[L>>2]|0;if(d>>>0>=(c[N>>2]|0)>>>0){O=47;break}e=c[J>>2]|0;if((d|0)==(e|0)){O=49;break}c[L>>2]=d+16;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];if(c[d>>2]&8|0){w=(c[d+8>>2]|0)+4|0;c[w>>2]=(c[w>>2]|0)+1}d=c[L>>2]|0;if(d>>>0>=(c[N>>2]|0)>>>0){O=53;break}e=c[J>>2]|0;if(d-e>>4>>>0<=2){O=55;break}w=e+32|0;c[L>>2]=d+16;c[d>>2]=c[w>>2];c[d+4>>2]=c[w+4>>2];c[d+8>>2]=c[w+8>>2];c[d+12>>2]=c[w+12>>2];if(c[d>>2]&8|0){w=(c[d+8>>2]|0)+4|0;c[w>>2]=(c[w>>2]|0)+1}Vu(b,0);f=c[L>>2]|0;d=c[J>>2]|0;i=f-d|0;e=i>>4;k=e+-1|0;w=e|0?d+(k<<4)|0:0;if((c[((w|0)==0?936:w)>>2]|0)!=9){O=59;break}if(!e){O=65;break}d=c[(c[D>>2]|0)+196>>2]|0;if(f>>>0>=(c[N>>2]|0)>>>0){O=67;break}c[L>>2]=f+16;c[f>>2]=8;c[f+8>>2]=d;e=d+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[J>>2]|0;f=(c[L>>2]|0)-e>>4;d=((i|0)<16?f:0)+k|0;if(d>>>0>=f>>>0){O=69;break}ro(b,e+(d<<4)|0,e+(f+-1<<4)|0)|0;e=c[J>>2]|0;f=(c[L>>2]|0)-e>>4;d=f+-2|0;if(f>>>0<=1){O=71;break}u=e+(d<<4)|0;v=e+(f+-1<<4)|0;w=c[u>>2]|0;d=c[e+(d<<4)+8>>2]|0;QQ(u|0,u+16|0,v-u|0)|0;c[v>>2]=2;e=(c[L>>2]|0)+-16|0;c[L>>2]=e;do if(w&8){v=d+4|0;w=(c[v>>2]|0)+-1|0;c[v>>2]=w;if(w|0)break;Yn(c[Q>>2]|0,d);e=c[L>>2]|0}while(0);f=c[J>>2]|0;d=e-f>>4;d=d|0?f+(d+-1<<4)|0:0;d=(d|0)==0?936:d;do if(!(c[d>>2]|0)){j=+h[d+8>>3];if(j<0.0|(iP(j)|0)==0){n=0;break}if(j>4294967295.0){n=-1;break}n=~~j>>>0}else n=0;while(0);d=c[L>>2]|0;if((d|0)==(f|0)){O=80;break}v=d+-16|0;c[L>>2]=v;w=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[v>>2]=2;do if(w&8|0){v=d+4|0;w=(c[v>>2]|0)+-1|0;c[v>>2]=w;if(w|0)break;Yn(c[Q>>2]|0,d)}while(0);Np(b,-1,0)|0;d=c[L>>2]|0;e=d+-8|0;m=c[e>>2]|0;if((d|0)==(c[J>>2]|0)){O=85;break}v=d+-16|0;c[L>>2]=v;w=c[d+-16>>2]|0;d=c[e>>2]|0;c[v>>2]=2;do if(w&8|0){v=d+4|0;w=(c[v>>2]|0)+-1|0;c[v>>2]=w;if(w|0)break;Yn(c[Q>>2]|0,d)}while(0);if(!(c[m+20>>2]|0)){w=c[L>>2]|0;d=w;if((w|0)==(c[J>>2]|0)){O=91;break}e=c[(c[D>>2]|0)+188>>2]|0;if(d>>>0>=(c[N>>2]|0)>>>0){O=93;break}c[L>>2]=d+16;c[d>>2]=8;c[d+8>>2]=e;d=e+4|0;c[d>>2]=(c[d>>2]|0)+1;d=c[J>>2]|0;e=(c[L>>2]|0)-d>>4;if(!e){O=95;break}ro(b,d,d+(e+-1<<4)|0)|0;e=c[J>>2]|0;f=(c[L>>2]|0)-e>>4;d=f+-2|0;if(f>>>0<=1){O=97;break}u=e+(d<<4)|0;v=e+(f+-1<<4)|0;w=c[u>>2]|0;d=c[e+(d<<4)+8>>2]|0;QQ(u|0,u+16|0,v-u|0)|0;c[v>>2]=2;e=(c[L>>2]|0)+-16|0;c[L>>2]=e;do if(w&8){v=d+4|0;w=(c[v>>2]|0)+-1|0;c[v>>2]=w;if(w|0)break;Yn(c[Q>>2]|0,d);e=c[L>>2]|0}while(0);f=c[J>>2]|0;d=e-f>>4;d=d|0?f+(d+-1<<4)|0:0;d=(d|0)==0?936:d;do if(!(c[d>>2]|0)){j=+h[d+8>>3];if(j<0.0|(iP(j)|0)==0){k=0;break}if(j>4294967295.0){k=-1;break}k=~~j>>>0}else k=0;while(0);d=c[L>>2]|0;if((d|0)==(f|0)){O=106;break}v=d+-16|0;c[L>>2]=v;w=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[v>>2]=2;do if(w&8|0){v=d+4|0;w=(c[v>>2]|0)+-1|0;c[v>>2]=w;if(w|0)break;Yn(c[Q>>2]|0,d)}while(0);e=c[L>>2]|0;f=c[N>>2]|0;if(e>>>0>=f>>>0){O=111;break}i=e+16|0;c[L>>2]=i;c[e>>2]=0;h[e+8>>3]=+((k+1|0)>>>0);if((i|0)==(c[J>>2]|0)){O=113;break}d=c[(c[D>>2]|0)+188>>2]|0;if(i>>>0>=f>>>0){O=115;break}c[L>>2]=e+32;c[i>>2]=8;c[e+24>>2]=d;f=d+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[J>>2]|0;i=(c[L>>2]|0)-f>>4;if(!i){O=117;break}if((i|0)==1){O=119;break}e=i+-2|0;d=c[E>>2]|0;if(!d)d=1;else d=c[d+52>>2]&1;No(b,f,f+(i+-1<<4)|0,c[f+(e<<4)>>2]|0,c[f+(e<<4)+4>>2]|0,+h[f+(e<<4)+8>>3],d)|0;uq(b)}u=m;v=Bo(b,-1)|0}else{m=c[J>>2]|0;f=c[m+8>>2]|0;e=f+28|0;f=c[f+20>>2]|0;i=I+(c[R>>2]|0)+(0-f)|0;if(I>>>0>i>>>0){P=p;S=q;T=g;U=o;break}else{n=0;d=I}while(1){if(!(KN(d,e,f)|0))break;k=d+1|0;if(k>>>0>i>>>0){P=p;S=q;T=g;U=o;break a}else{n=((a[d>>0]&-64)<<24>>24!=-128&1)+n|0;d=k}}d=c[L>>2]|0;if(d>>>0>=(c[N>>2]|0)>>>0){O=127;break}if((d|0)==(m|0)){O=129;break}c[L>>2]=d+16;c[d>>2]=c[m>>2];c[d+4>>2]=c[m+4>>2];c[d+8>>2]=c[m+8>>2];c[d+12>>2]=c[m+12>>2];if(c[d>>2]&8|0){w=(c[d+8>>2]|0)+4|0;c[w>>2]=(c[w>>2]|0)+1}u=c[(c[L>>2]|0)+-8>>2]|0;v=0}t=cq(b,K,n)|0;i=t-p|0;f=I+p|0;if((o-q|0)>>>0<i>>>0){d=q-g|0;e=d+64+(d>>>2)+i|0;if(e>>>0<d>>>0){O=136;break}Kn(b,V,e);o=c[W>>2]|0;d=o+d|0;m=o;o=o+e|0}else{d=q;m=g}e=d;PQ(e|0,f|0,i|0)|0;e=e+i|0;q=u+20|0;w=(c[q>>2]|0)+t|0;do if(F)if(A){r=u+28|0;s=t+64|0;p=G;g=m;f=o;while(1){o=p+1|0;m=a[p>>0]|0;k=m&255;b:do if(m<<24>>24==36?(M=B-o|0,(M|0)!=0):0){d=a[o>>0]|0;i=d&255;switch(d<<24>>24){case 36:{i=292;O=213;break b}case 38:{i=c[q>>2]|0;if((f-e|0)>>>0<i>>>0){d=e-g|0;f=d+64+(d>>>2)+i|0;if(f>>>0<d>>>0){O=184;break a}Kn(b,V,f);o=c[W>>2]|0;e=o+d|0;g=o;f=o+f|0}PQ(e|0,r|0,i|0)|0;d=p+2|0;e=e+i|0;break b}case 96:{if((f-e|0)>>>0<t>>>0){d=e-g|0;f=s+d+(d>>>2)|0;if(f>>>0<d>>>0){O=189;break a}Kn(b,V,f);o=c[W>>2]|0;e=o+d|0;g=o;f=o+f|0}PQ(e|0,I|0,t|0)|0;d=p+2|0;e=e+t|0;break b}case 39:{i=cq(b,K,(Po(u)|0)+n|0)|0;k=(c[R>>2]|0)-i|0;i=I+i|0;if((f-e|0)>>>0<k>>>0){d=e-g|0;f=d+64+(d>>>2)+k|0;if(f>>>0<d>>>0){O=194;break a}Kn(b,V,f);o=c[W>>2]|0;e=o+d|0;g=o;f=o+f|0}PQ(e|0,i|0,k|0)|0;d=p+2|0;e=e+k|0;break b}default:{if(!(C&(d+-48&255)<10)){i=k;O=213;break b}d=i+-48|0;if(M>>>0>1){i=a[p+2>>0]|0;p=(d*10|0)+-48+(i&255)|0;i=(i+-48&255)<10&(p|0)<(v|0);m=i?2:1;d=i?p:d}else m=1;if(!((d|0)>0&(d|0)<(v|0))){i=k;O=213;break b}Np(b,4,d)|0;i=c[L>>2]|0;d=c[J>>2]|0;p=i-d>>4;p=p|0?d+(p+-1<<4)|0:0;if((c[((p|0)==0?936:p)>>2]|0)==8){i=c[i+-8>>2]|0;k=c[i+20>>2]|0;if((f-e|0)>>>0<k>>>0){d=e-g|0;f=d+64+(d>>>2)+k|0;if(f>>>0<d>>>0){O=204;break a}Kn(b,V,f);p=c[W>>2]|0;e=p+d|0;g=p;f=p+f|0}PQ(e|0,i+28|0,k|0)|0;e=e+k|0;i=c[L>>2]|0;d=c[J>>2]|0}if((i|0)==(d|0)){O=208;break a}k=i+-16|0;c[L>>2]=k;p=c[i+-16>>2]|0;d=c[i+-8>>2]|0;c[k>>2]=2;do if(p&8|0){k=d+4|0;p=(c[k>>2]|0)+-1|0;c[k>>2]=p;if(p|0)break;Yn(c[Q>>2]|0,d)}while(0);d=o+m|0;break b}}}else{i=k;O=213}while(0);if((O|0)==213){O=0;if((f|0)==(e|0)){d=e-g|0;f=d+65+(d>>>2)|0;if(f>>>0<d>>>0){O=215;break a}Kn(b,V,f);p=c[W>>2]|0;e=p+d|0;g=p;f=p+f|0}a[e>>0]=i;d=o+(i>>>8)|0;e=e+1|0}if(d>>>0<H>>>0)p=d;else break}}else{g=m;f=o}else{d=c[L>>2]|0;if(d>>>0>=(c[N>>2]|0)>>>0){O=142;break a}f=c[J>>2]|0;if(d-f>>4>>>0<=1){O=144;break a}u=f+16|0;c[L>>2]=d+16;c[d>>2]=c[u>>2];c[d+4>>2]=c[u+4>>2];c[d+8>>2]=c[u+8>>2];c[d+12>>2]=c[u+12>>2];if(c[d>>2]&8|0){u=(c[d+8>>2]|0)+4|0;c[u>>2]=(c[u>>2]|0)+1}d=c[L>>2]|0;f=c[J>>2]|0;k=d-f>>4;g=d;i=f;if(C){u=v+2|0;f=c[y>>2]|0;d=((u>>>0>1e6?(u>>31&267435456)+1e6|0:u)<<4)+512+(d-f)|0;f=f+d|0;do if((c[N>>2]|0)>>>0<f>>>0)if((c[z>>2]|0)>>>0<f>>>0){lo(b,d,1)|0;break}else{c[N>>2]=f;break}while(0);if((v|0)>0){d=0;do{Np(b,4,d)|0;d=d+1|0}while((d|0)!=(v|0))}}else{if(g>>>0>=(c[N>>2]|0)>>>0){O=155;break a}if((g|0)==(i|0)){O=157;break a}c[L>>2]=g+16;v=d;u=f;c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[v+8>>2]=c[u+8>>2];c[v+12>>2]=c[u+12>>2];if(c[g>>2]&8|0){v=(c[g+8>>2]|0)+4|0;c[v>>2]=(c[v>>2]|0)+1}}f=c[L>>2]|0;d=c[N>>2]|0;if(f>>>0>=d>>>0){O=161;break a}g=f+16|0;c[L>>2]=g;c[f>>2]=0;h[f+8>>3]=+(n>>>0);if(g>>>0>=d>>>0){O=163;break a}d=c[J>>2]|0;if(g-d>>4>>>0<=2){O=165;break a}v=d+32|0;c[L>>2]=f+32;c[g>>2]=c[v>>2];c[g+4>>2]=c[v+4>>2];c[g+8>>2]=c[v+8>>2];c[g+12>>2]=c[v+12>>2];if(c[g>>2]&8|0){v=(c[f+24>>2]|0)+4|0;c[v>>2]=(c[v>>2]|0)+1}iq(b,((c[L>>2]|0)-(c[J>>2]|0)>>4)-k|0);Eo(b,-1)|0;v=c[J>>2]|0;d=(c[L>>2]|0)-v>>4;d=d|0?v+(d+-1<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==8)i=c[d+8>>2]|0;else i=0;k=c[i+20>>2]|0;if((o-e|0)>>>0<k>>>0){d=e-m|0;f=d+64+(d>>>2)+k|0;if(f>>>0<d>>>0){O=172;break a}Kn(b,V,f);v=c[W>>2]|0;e=v+d|0;g=v;f=v+f|0}else{g=m;f=o}PQ(e|0,i+28|0,k|0)|0;e=e+k|0;d=c[L>>2]|0;if((d|0)==(c[J>>2]|0)){O=175;break a}u=d+-16|0;c[L>>2]=u;v=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[u>>2]=2;if(!(v&8))break;u=d+4|0;v=(c[u>>2]|0)+-1|0;c[u>>2]=v;if(v|0)break;Yn(c[Q>>2]|0,d)}while(0);d=c[L>>2]|0;if((d|0)==(c[J>>2]|0)){O=220;break}u=d+-16|0;c[L>>2]=u;v=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[u>>2]=2;if(v&8|0?(u=d+4|0,v=(c[u>>2]|0)+-1|0,c[u>>2]=v,(v|0)==0):0)Yn(c[Q>>2]|0,d);if(x){P=w;S=e;T=g;U=f;break}else{p=w;q=e;o=f}}switch(O|0){case 47:{Un(b,1093);break}case 49:{jo(b,376,0);break}case 53:{Un(b,1093);break}case 55:{jo(b,376,2);break}case 59:{if((f|0)==(d|0))Jn(b,268620,50337407,268636);T=f+-16|0;c[L>>2]=T;U=c[f+-16>>2]|0;d=c[f+-8>>2]|0;c[T>>2]=2;if((U&8|0)!=0?(T=d+4|0,U=(c[T>>2]|0)+-1|0,c[T>>2]=U,(U|0)==0):0){Yn(c[Q>>2]|0,d);P=p;S=q;T=g;U=o}else{P=p;S=q;T=g;U=o}break}case 65:{jo(b,300,-1);break}case 67:{Un(b,4153);break}case 69:{jo(b,376,k);break}case 71:{jo(b,376,-2);break}case 80:{Jn(b,268620,50337407,268636);break}case 85:{Jn(b,268620,50337407,268636);break}case 91:{jo(b,300,0);break}case 93:{Un(b,4153);break}case 95:{jo(b,376,0);break}case 97:{jo(b,376,-2);break}case 106:{Jn(b,268620,50337407,268636);break}case 111:{Un(b,4274);break}case 113:{jo(b,300,0);break}case 115:{Un(b,4153);break}case 117:{jo(b,376,0);break}case 119:{jo(b,376,-2);break}case 127:{Un(b,1093);break}case 129:{jo(b,376,0);break}case 136:{Jn(b,270142,50331712,268576);break}case 142:{Un(b,1093);break}case 144:{jo(b,376,1);break}case 155:{Un(b,1093);break}case 157:{jo(b,376,0);break}case 161:{Un(b,4274);break}case 163:{Un(b,1093);break}case 165:{jo(b,376,2);break}case 172:{Jn(b,270142,50331712,268576);break}case 175:{Jn(b,268620,50337407,268636);break}case 184:{Jn(b,270142,50331712,268576);break}case 189:{Jn(b,270142,50331712,268576);break}case 194:{Jn(b,270142,50331712,268576);break}case 204:{Jn(b,270142,50331712,268576);break}case 208:{Jn(b,268620,50337407,268636);break}case 215:{Jn(b,270142,50331712,268576);break}case 220:{Jn(b,268620,50337407,268636);break}}g=(c[R>>2]|0)-P|0;f=I+P|0;if((U-S|0)>>>0>=g>>>0){U=S;W=T;PQ(U|0,f|0,g|0)|0;U=U+g|0;W=U-W|0;Kn(b,V,W);bp(b);l=X;return 1}d=S-T|0;e=d+64+(d>>>2)+g|0;if(e>>>0<d>>>0)Jn(b,270142,50331712,268576);Kn(b,V,e);W=c[W>>2]|0;U=W+d|0;PQ(U|0,f|0,g|0)|0;U=U+g|0;W=U-W|0;Kn(b,V,W);bp(b);l=X;return 1}function ou(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0;Uu(a)|0;Xu(a,1);j=a+68|0;b=c[j>>2]|0;e=a+56|0;if(b>>>0>=(c[e>>2]|0)>>>0)Un(a,1093);i=a+64|0;d=c[i>>2]|0;if((b|0)==(d|0))jo(a,376,0);c[j>>2]=b+16;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];if(c[b>>2]&8|0){g=(c[b+8>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}b=c[j>>2]|0;if(b>>>0>=(c[e>>2]|0)>>>0)Un(a,1093);d=c[i>>2]|0;if(b-d>>4>>>0<=1)jo(a,376,1);g=d+16|0;c[j>>2]=b+16;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];if(c[b>>2]&8|0){g=(c[b+8>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}Vu(a,0);d=c[j>>2]|0;k=c[i>>2]|0;f=d-k|0;b=f>>4;g=b+-1|0;k=b|0?k+(g<<4)|0:0;if((c[((k|0)==0?936:k)>>2]|0)!=9){if(d>>>0>=(c[e>>2]|0)>>>0)Un(a,4244);c[j>>2]=d+16;c[d>>2]=0;h[d+8>>3]=-1.0;return 1}if(!b)jo(a,300,-1);b=c[(c[a+304>>2]|0)+196>>2]|0;if(d>>>0>=(c[e>>2]|0)>>>0)Un(a,4153);c[j>>2]=d+16;c[d>>2]=8;c[d+8>>2]=b;d=b+4|0;c[d>>2]=(c[d>>2]|0)+1;d=c[i>>2]|0;e=(c[j>>2]|0)-d>>4;b=((f|0)<16?e:0)+g|0;if(b>>>0>=e>>>0)jo(a,376,g);ro(a,d+(b<<4)|0,d+(e+-1<<4)|0)|0;d=c[i>>2]|0;e=(c[j>>2]|0)-d>>4;b=e+-2|0;if(e>>>0<=1)jo(a,376,-2);g=d+(b<<4)|0;i=d+(e+-1<<4)|0;k=c[g>>2]|0;b=c[d+(b<<4)+8>>2]|0;QQ(g|0,g+16|0,i-g|0)|0;c[i>>2]=2;c[j>>2]=(c[j>>2]|0)+-16;if(!(k&8))return 1;j=b+4|0;k=(c[j>>2]|0)+-1|0;c[j>>2]=k;if(k|0)return 1;Yn(c[a+44>>2]|0,b);return 1}function pu(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=g;e=Po(Uu(a)|0)|0;f=0-e|0;b=vq(a,0,f,e,d)|0;b=((b|0)<0?e:0)+b|0;h=c[a+64>>2]|0;h=(c[a+68>>2]|0)-h>>4>>>0>1?h+16|0:0;if((c[((h|0)==0?936:h)>>2]|0)==2){h=e;f=(h|0)<(b|0);h=f?b:h;fq(a,b,h);l=g;return 1}h=vq(a,1,f,e,d)|0;h=((h|0)<0?e:0)+h|0;f=(h|0)<(b|0);h=f?b:h;fq(a,b,h);l=g;return 1}function qu(b){b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0.0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;x=Uu(b)|0;f=vo(b,48)|0;A=b+44|0;d=c[A>>2]|0;c[f>>2]=272679041;d=d+24|0;e=c[d>>2]|0;if(e|0)c[e+12>>2]=f;c[f+12>>2]=0;c[f+8>>2]=e;c[d>>2]=f;d=c[b+132>>2]|0;c[f+20>>2]=d;if(d|0){z=d+4|0;c[z>>2]=(c[z>>2]|0)+1}z=b+68|0;w=c[z>>2]|0;c[w>>2]=9;c[w+8>>2]=f;w=f+4|0;c[w>>2]=(c[w>>2]|0)+1;w=b+64|0;g=(c[z>>2]|0)+16|0;c[z>>2]=g;f=g;e=c[w>>2]|0;v=f-e>>4>>>0>1?e+16|0:0;do if((c[((v|0)==0?936:v)>>2]|0)!=2){d=_p(b,1)|0;if(!d)return 1;else{g=c[z>>2]|0;e=c[w>>2]|0;f=g;break}}else d=-1;while(0);i=e;f=(f|0)!=(i|0)?e:0;f=(f|0)==0?936:f;switch(c[f>>2]|0){case 2:{if(g>>>0>=(c[b+56>>2]|0)>>>0)Un(b,1093);if(g-i>>4>>>0<=2)jo(b,376,2);A=e+32|0;c[z>>2]=g+16;c[g>>2]=c[A>>2];c[g+4>>2]=c[A+4>>2];c[g+8>>2]=c[A+8>>2];c[g+12>>2]=c[A+12>>2];if(c[g>>2]&8|0){A=(c[g+8>>2]|0)+4|0;c[A>>2]=(c[A>>2]|0)+1}mq(b,3,0);return 1}case 9:{v=16;break}default:v=31}if((v|0)==16){u=c[f+8>>2]|0;if((u|0)!=0?(c[u>>2]&-134217728|0)==1476395008:0){e=c[b+168>>2]|0;i=b+56|0;if(g>>>0>=(c[i>>2]|0)>>>0)Un(b,4153);c[z>>2]=g+16;c[g>>2]=9;c[g+8>>2]=e;e=e+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[z>>2]|0;if(e>>>0>=(c[i>>2]|0)>>>0)Un(b,1093);f=c[w>>2]|0;if((e|0)==(f|0))jo(b,376,0);c[z>>2]=e+16;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];if(c[e>>2]&8|0){u=(c[e+8>>2]|0)+4|0;c[u>>2]=(c[u>>2]|0)+1}oq(b);f=c[w>>2]|0;e=(c[z>>2]|0)-f>>4;if(!e)jo(b,376,-1);t=f+(e+-1<<4)|0;u=c[f>>2]|0;e=c[f+8>>2]|0;c[f>>2]=c[t>>2];c[f+4>>2]=c[t+4>>2];c[f+8>>2]=c[t+8>>2];c[f+12>>2]=c[t+12>>2];c[t>>2]=2;c[z>>2]=(c[z>>2]|0)+-16;if((u&8|0)!=0?(t=e+4|0,u=(c[t>>2]|0)+-1|0,c[t>>2]=u,(u|0)==0):0){Yn(c[A>>2]|0,e);q=1}else q=1}else v=31}if((v|0)==31){Eo(b,0)|0;q=0;i=b+56|0}n=b+304|0;o=b+72|0;t=x+28|0;r=x+20|0;p=t;u=0;m=0;s=0;a:while(1){do if(!q){k=t+(c[r>>2]|0)|0;f=t+s|0;e=c[(c[w>>2]|0)+8>>2]|0;g=e+28|0;l=c[e+20>>2]|0;Po(e)|0;k=k+(0-l)|0;b:do if(!l){e=f;do{e=e+1|0;if(e>>>0>=k>>>0){y=1;break a}}while((a[e>>0]&-64)<<24>>24==-128)}else{if(f>>>0>k>>>0){y=m;break a}else e=f;while(1){if(!(KN(e,g,l)|0))break b;e=e+1|0;if(e>>>0>k>>>0){y=m;break a}}}while(0);g=e-p|0;e=g+l|0;if((s|0)==(e|0)){l=u;m=1;s=s+1|0;u=l;continue a}else{k=e;e=g}}else{e=c[z>>2]|0;if(e>>>0>=(c[i>>2]|0)>>>0){v=35;break a}f=c[w>>2]|0;if((e|0)==(f|0)){v=37;break a}c[z>>2]=e+16;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];if(c[e>>2]&8|0){l=(c[e+8>>2]|0)+4|0;c[l>>2]=(c[l>>2]|0)+1}e=c[z>>2]|0;if(e>>>0>=(c[i>>2]|0)>>>0){v=41;break a}f=c[w>>2]|0;if(e-f>>4>>>0<=2){v=43;break a}l=f+32|0;c[z>>2]=e+16;c[e>>2]=c[l>>2];c[e+4>>2]=c[l+4>>2];c[e+8>>2]=c[l+8>>2];c[e+12>>2]=c[l+12>>2];if(c[e>>2]&8|0){l=(c[e+8>>2]|0)+4|0;c[l>>2]=(c[l>>2]|0)+1}Vu(b,1);g=c[z>>2]|0;e=c[w>>2]|0;k=g-e|0;f=k>>4;l=f+-1|0;B=f|0?e+(l<<4)|0:0;if((c[((B|0)==0?936:B)>>2]|0)!=9){v=47;break a}if(!f){v=53;break a}e=c[(c[n>>2]|0)+196>>2]|0;if(g>>>0>=(c[i>>2]|0)>>>0){v=55;break a}c[z>>2]=g+16;c[g>>2]=8;c[g+8>>2]=e;f=e+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[w>>2]|0;g=(c[z>>2]|0)-f>>4;e=((k|0)<16?g:0)+l|0;if(e>>>0>=g>>>0){v=57;break a}ro(b,f+(e<<4)|0,f+(g+-1<<4)|0)|0;f=c[w>>2]|0;g=(c[z>>2]|0)-f>>4;e=g+-2|0;if(g>>>0<=1){v=59;break a}l=f+(e<<4)|0;m=f+(g+-1<<4)|0;B=c[l>>2]|0;f=c[f+(e<<4)+8>>2]|0;QQ(l|0,l+16|0,m-l|0)|0;c[m>>2]=2;e=(c[z>>2]|0)+-16|0;c[z>>2]=e;if((B&8|0)!=0?(m=f+4|0,B=(c[m>>2]|0)+-1|0,c[m>>2]=B,(B|0)==0):0){Yn(c[A>>2]|0,f);e=c[z>>2]|0}B=c[w>>2]|0;e=e-B>>4;e=e|0?B+(e+-1<<4)|0:0;e=(e|0)==0?936:e;do if(!(c[e>>2]|0)){j=+h[e+8>>3];if(j<0.0|(iP(j)|0)==0){f=0;break}if(j>4294967295.0){f=-1;break}f=~~j>>>0}else f=0;while(0);m=cq(b,x,f)|0;e=c[z>>2]|0;if((e|0)==(c[w>>2]|0)){v=68;break a}l=e+-16|0;c[z>>2]=l;B=c[e+-16>>2]|0;e=c[e+-8>>2]|0;c[l>>2]=2;do if(B&8|0){l=e+4|0;B=(c[l>>2]|0)+-1|0;c[l>>2]=B;if(B|0)break;Yn(c[A>>2]|0,e)}while(0);if((f|0)==(Po(x)|0)){v=73;break a}B=c[z>>2]|0;e=B;if((B|0)==(c[w>>2]|0)){v=79;break a}f=c[(c[n>>2]|0)+188>>2]|0;if(e>>>0>=(c[i>>2]|0)>>>0){v=81;break a}c[z>>2]=e+16;c[e>>2]=8;c[e+8>>2]=f;e=f+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[w>>2]|0;f=(c[z>>2]|0)-e>>4;if(!f){v=83;break a}ro(b,e,e+(f+-1<<4)|0)|0;f=c[w>>2]|0;g=(c[z>>2]|0)-f>>4;e=g+-2|0;if(g>>>0<=1){v=85;break a}k=f+(e<<4)|0;l=f+(g+-1<<4)|0;B=c[k>>2]|0;f=c[f+(e<<4)+8>>2]|0;QQ(k|0,k+16|0,l-k|0)|0;c[l>>2]=2;e=(c[z>>2]|0)+-16|0;c[z>>2]=e;do if(B&8){l=f+4|0;B=(c[l>>2]|0)+-1|0;c[l>>2]=B;if(B|0)break;Yn(c[A>>2]|0,f);e=c[z>>2]|0}while(0);B=c[w>>2]|0;e=e-B>>4;e=e|0?B+(e+-1<<4)|0:0;e=(e|0)==0?936:e;do if(!(c[e>>2]|0)){j=+h[e+8>>3];if(j<0.0|(iP(j)|0)==0){l=0;break}if(j>4294967295.0){l=-1;break}l=~~j>>>0}else l=0;while(0);f=cq(b,x,l)|0;e=c[z>>2]|0;if((e|0)==(c[w>>2]|0)){v=94;break a}k=e+-16|0;c[z>>2]=k;B=c[e+-16>>2]|0;e=c[e+-8>>2]|0;c[k>>2]=2;do if(B&8|0){k=e+4|0;B=(c[k>>2]|0)+-1|0;c[k>>2]=B;if(B|0)break;Yn(c[A>>2]|0,e)}while(0);if((s|0)!=(f|0)){k=f;e=m;f=t+s|0;break}f=c[z>>2]|0;g=c[i>>2]|0;if(f>>>0>=g>>>0){v=101;break a}k=f+16|0;c[z>>2]=k;c[f>>2]=0;h[f+8>>3]=+((l+1|0)>>>0);if((k|0)==(c[w>>2]|0)){v=103;break a}e=c[(c[n>>2]|0)+188>>2]|0;if(k>>>0>=g>>>0){v=105;break a}c[z>>2]=f+32;c[k>>2]=8;c[f+24>>2]=e;g=e+4|0;c[g>>2]=(c[g>>2]|0)+1;g=c[w>>2]|0;k=(c[z>>2]|0)-g>>4;if(!k){v=107;break a}if((k|0)==1){v=109;break a}f=k+-2|0;e=c[o>>2]|0;if(!e)e=1;else e=c[e+52>>2]&1;No(b,g,g+(k+-1<<4)|0,c[g+(f<<4)>>2]|0,c[g+(f<<4)+4>>2]|0,+h[g+(f<<4)+8>>3],e)|0;uq(b);e=c[z>>2]|0;if((e|0)==(c[w>>2]|0)){v=113;break a}m=e+-16|0;c[z>>2]=m;B=c[e+-16>>2]|0;e=c[e+-8>>2]|0;c[m>>2]=2;if(!(B&8)){l=s;B=u;m=1;s=l;u=B;continue a}m=e+4|0;B=(c[m>>2]|0)+-1|0;c[m>>2]=B;if(B|0){l=s;B=u;m=1;s=l;u=B;continue a}Yn(c[A>>2]|0,e);l=s;B=u;m=1;s=l;u=B;continue a}while(0);if((c[z>>2]|0)>>>0>=(c[i>>2]|0)>>>0){v=125;break}e=(f|0)==0?0:e-s|0;if((e|0)<0){v=127;break}f=Oo(b,f,e)|0;B=c[z>>2]|0;c[z>>2]=B+16;c[B>>2]=8;c[B+8>>2]=f;f=f+4|0;c[f>>2]=(c[f>>2]|0)+1;mq(b,3,u);f=u+1|0;if(f>>>0>=d>>>0){v=144;break}if(!q){u=f;m=1;s=k;continue}g=Bo(b,4)|0;if(g>>>0>1){e=1;do{Np(b,4,e)|0;mq(b,3,f);f=f+1|0;e=e+1|0;if(f>>>0>=d>>>0){v=144;break a}}while(e>>>0<g>>>0)}e=c[z>>2]|0;if((e|0)==(c[w>>2]|0)){v=134;break}u=e+-16|0;c[z>>2]=u;B=c[e+-16>>2]|0;e=c[e+-8>>2]|0;c[u>>2]=2;if(!(B&8)){u=f;m=1;s=k;continue}u=e+4|0;B=(c[u>>2]|0)+-1|0;c[u>>2]=B;if(B|0){u=f;m=1;s=k;continue}Yn(c[A>>2]|0,e);u=f;m=1;s=k}switch(v|0){case 35:{Un(b,1093);break}case 37:{jo(b,376,0);break}case 41:{Un(b,1093);break}case 43:{jo(b,376,2);break}case 47:{if((g|0)==(e|0))Jn(b,268620,50337407,268636);y=g+-16|0;c[z>>2]=y;B=c[g+-16>>2]|0;d=c[g+-8>>2]|0;c[y>>2]=2;if((B&8|0)!=0?(y=d+4|0,B=(c[y>>2]|0)+-1|0,c[y>>2]=B,(B|0)==0):0){Yn(c[A>>2]|0,d);y=m}else y=m;break}case 53:{jo(b,300,-1);break}case 55:{Un(b,4153);break}case 57:{jo(b,376,l);break}case 59:{jo(b,376,-2);break}case 68:{Jn(b,268620,50337407,268636);break}case 73:{d=c[z>>2]|0;if((d|0)==(c[w>>2]|0))Jn(b,268620,50337407,268636);y=d+-16|0;c[z>>2]=y;B=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[y>>2]=2;if((B&8|0)!=0?(y=d+4|0,B=(c[y>>2]|0)+-1|0,c[y>>2]=B,(B|0)==0):0){Yn(c[A>>2]|0,d);y=1}else y=1;break}case 79:{jo(b,300,0);break}case 81:{Un(b,4153);break}case 83:{jo(b,376,0);break}case 85:{jo(b,376,-2);break}case 94:{Jn(b,268620,50337407,268636);break}case 101:{Un(b,4274);break}case 103:{jo(b,300,0);break}case 105:{Un(b,4153);break}case 107:{jo(b,376,0);break}case 109:{jo(b,376,-2);break}case 113:{Jn(b,268620,50337407,268636);break}case 125:{Un(b,4300);break}case 127:{Jn(b,268620,50335961,268982);break}case 134:{Jn(b,268620,50337407,268636);break}case 144:{if(!q)return 1;d=c[z>>2]|0;if((d|0)==(c[w>>2]|0))Jn(b,268620,50337407,268636);b=d+-16|0;c[z>>2]=b;B=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[b>>2]=2;if(!(B&8))return 1;b=d+4|0;B=(c[b>>2]|0)+-1|0;c[b>>2]=B;if(B|0)return 1;Yn(c[A>>2]|0,d);return 1}}d=c[r>>2]|0;if((y|0)!=0&(d|0)==0)return 1;e=t+s|0;if((c[z>>2]|0)>>>0>=(c[i>>2]|0)>>>0)Un(b,4300);d=(e|0)==0?0:d-s|0;if((d|0)<0)Jn(b,268620,50335961,268982);B=Oo(b,e,d)|0;A=c[z>>2]|0;c[z>>2]=A+16;c[A>>2]=8;c[A+8>>2]=B;B=B+4|0;c[B>>2]=(c[B>>2]|0)+1;mq(b,3,u);return 1}function ru(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;i=o;m=Uu(a)|0;n=a+68|0;d=a+64|0;k=c[d>>2]|0;k=(c[n>>2]|0)!=(k|0)?k:0;k=(k|0)==0?936:k;if((c[k>>2]|0)==9?(c[c[k+8>>2]>>2]&-134217728|0)==1476395008:0)Vn(a,278632,30);Eo(a,0)|0;j=c[n>>2]|0;f=c[d>>2]|0;g=f;d=(j|0)!=(g|0)?f:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==8)k=c[d+8>>2]|0;else k=0;d=c[a+72>>2]|0;do if(d){e=c[d+16>>2]|0;if(!e){d=(c[d+4>>2]|0)>>>8<<24>>24;break}if(c[e>>2]&4096)d=b[e+46>>1]|0;else d=0}else d=0;while(0);e=m+28|0;h=c[k+20>>2]|0;j=j-g>>4>>>0>1?f+16|0:0;if((c[((j|0)==0?936:j)>>2]|0)==2)if(!d){d=e;f=16}else{d=e+((c[m+20>>2]|0)-h)|0;f=15}else{f=vq(a,1,0,Po(m)|0,i)|0;d=((d|0)==0?e:e+(0-h)|0)+(cq(a,m,f)|0)|0;f=15}if((f|0)==15)if(d>>>0<e>>>0)e=0;else f=16;if((f|0)==16)if((h-e+d|0)>>>0>(c[m+20>>2]|0)>>>0)e=0;else e=(KN(d,k+28|0,h)|0)==0&1;d=c[n>>2]|0;if(d>>>0<(c[a+56>>2]|0)>>>0){c[n>>2]=d+16;c[d>>2]=4;c[d+8>>2]=e;l=o;return 1}else Un(a,4185);return 0}function su(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;f=h;g=a+68|0;d=c[g>>2]|0;if(d>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4361);c[g>>2]=d+16;e=a+64|0;if(c[a+72>>2]|0?(b=c[e>>2]|0,i=b+-16|0,c[d>>2]=c[i>>2],c[d+4>>2]=c[i+4>>2],c[d+8>>2]=c[i+8>>2],c[d+12>>2]=c[i+12>>2],c[i>>2]&8|0):0){i=(c[b+-8>>2]|0)+4|0;c[i>>2]=(c[i>>2]|0)+1}Eo(a,-1)|0;i=c[e>>2]|0;b=(c[g>>2]|0)-i>>4;b=b|0?i+(b+-1<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==8)b=c[b+8>>2]|0;else b=0;d=Po(b)|0;b=vq(a,0,0-d|0,d,f)|0;b=((b|0)<0?d:0)+b|0;i=c[e>>2]|0;i=(c[g>>2]|0)-i>>4>>>0>1?i+16|0:0;if((c[((i|0)==0?936:i)>>2]|0)==2){i=d;fq(a,b,i);l=h;return 1}i=(vq(a,1,0,d-b|0,f)|0)+b|0;fq(a,b,i);l=h;return 1}function tu(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;f=l;l=l+16|0;d=f;b=Po(Uu(a)|0)|0;e=vq(a,0,0,b,d)|0;g=c[a+64>>2]|0;g=(c[a+68>>2]|0)-g>>4>>>0>1?g+16|0:0;if((c[((g|0)==0?936:g)>>2]|0)!=2)b=vq(a,1,0,b,d)|0;g=(e|0)>(b|0);fq(a,g?b:e,g?e:b);l=f;return 1}function uu(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=a+68|0;e=c[l>>2]|0;j=a+56|0;if(e>>>0>=(c[j>>2]|0)>>>0)Un(a,4361);c[l>>2]=e+16;k=a+64|0;if(c[a+72>>2]|0?(b=c[k>>2]|0,i=b+-16|0,c[e>>2]=c[i>>2],c[e+4>>2]=c[i+4>>2],c[e+8>>2]=c[i+8>>2],c[e+12>>2]=c[i+12>>2],c[i>>2]&8|0):0){i=(c[b+-8>>2]|0)+4|0;c[i>>2]=(c[i>>2]|0)+1}b=c[l>>2]|0;f=c[k>>2]|0;i=b-f|0;e=i>>4;if(!e)jo(a,376,-1);h=e+-1|0;switch(c[f+(h<<4)>>2]|0){case 8:{d=b;break}case 9:{g=9;break}default:Vn(a,278632,258)}if((g|0)==9){if((c[c[f+(h<<4)+8>>2]>>2]&-134217728|0)!=1610612736)Vn(a,278632,258);d=c[(c[a+304>>2]|0)+404>>2]|0;if(b>>>0>=(c[j>>2]|0)>>>0)Un(a,4153);c[l>>2]=b+16;c[b>>2]=8;c[b+8>>2]=d;d=d+4|0;c[d>>2]=(c[d>>2]|0)+1;d=c[k>>2]|0;e=(c[l>>2]|0)-d>>4;b=((i|0)<16?e:0)+h|0;if(b>>>0>=e>>>0)jo(a,376,h);ro(a,d+(b<<4)|0,d+(e+-1<<4)|0)|0;d=c[k>>2]|0;e=(c[l>>2]|0)-d>>4;b=e+-2|0;if(e>>>0<=1)jo(a,376,-2);h=d+(b<<4)|0;i=d+(e+-1<<4)|0;j=c[h>>2]|0;b=c[d+(b<<4)+8>>2]|0;QQ(h|0,h+16|0,i-h|0)|0;c[i>>2]=2;d=(c[l>>2]|0)+-16|0;c[l>>2]=d;if((j&8|0)!=0?(i=b+4|0,j=(c[i>>2]|0)+-1|0,c[i>>2]=j,(j|0)==0):0){Yn(c[a+44>>2]|0,b);d=c[l>>2]|0}}l=c[k>>2]|0;b=d-l>>4;b=b|0?l+(b+-1<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=8)In(a,2113,-1,287721);b=c[b+8>>2]|0;if(!b)In(a,2113,-1,287721);if(!(c[b>>2]&512))return 1;else In(a,2113,-1,287721);return 0}function vu(a){a=a|0;Uu(a)|0;eq(a,0);return 1}function wu(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;i=b+72|0;d=c[i>>2]|0;if(!d)Jn(b,268605,100663686,278444);if(!(c[d+52>>2]&4))Jn(b,268605,100663686,278444);k=b+68|0;e=c[k>>2]|0;h=b+64|0;d=c[h>>2]|0;g=(e|0)!=(d|0)?d:0;if((c[((g|0)==0?936:g)>>2]|0)!=2){Eo(b,0)|0;d=c[h>>2]|0;e=c[k>>2]|0}g=e-d>>4>>>0>1?d+16|0:0;if((c[((g|0)==0?936:g)>>2]&-2|0)!=2){if(!(Ru(b,1,278616)|0))d=0;else d=Ro(b,-1)|0;if(!(Ru(b,1,278622)|0)){g=0;f=d}else{g=(Ro(b,-1)|0)&255;f=d}}else{g=0;f=0}d=c[k>>2]|0;e=b+56|0;if(d>>>0>=(c[e>>2]|0)>>>0)Un(b,4361);c[k>>2]=d+16;if(c[i>>2]|0?(j=c[h>>2]|0,i=j+-16|0,c[d>>2]=c[i>>2],c[d+4>>2]=c[i+4>>2],c[d+8>>2]=c[i+8>>2],c[d+12>>2]=c[i+12>>2],c[i>>2]&8|0):0){j=(c[j+-8>>2]|0)+4|0;c[j>>2]=(c[j>>2]|0)+1}if((c[k>>2]|0)>>>0>=(c[e>>2]|0)>>>0)Un(b,5237);d=ap(c[b+44>>2]|0,12,0,m)|0;if(!d)Mn(b,268620,5246);else{j=c[k>>2]|0;c[j>>2]=10;c[j+8>>2]=d;j=d+4|0;c[j>>2]=(c[j>>2]|0)+1;c[k>>2]=(c[k>>2]|0)+16;m=c[m>>2]|0;a[m+8>>0]=f;a[m+9>>0]=g;c[m>>2]=0;a[m+4>>0]=-65;a[m+5>>0]=-128;a[m+6>>0]=0;a[m+7>>0]=0;Tu(b,278580);l=n;return 0}return 0}function xu(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;d=a+68|0;f=c[d>>2]|0;if(f>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4361);c[d>>2]=f+16;b=a+64|0;if(c[a+72>>2]|0?(e=c[b>>2]|0,g=e+-16|0,c[f>>2]=c[g>>2],c[f+4>>2]=c[g+4>>2],c[f+8>>2]=c[g+8>>2],c[f+12>>2]=c[g+12>>2],c[g>>2]&8|0):0){g=(c[e+-8>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}Ru(a,-1,278580)|0;g=c[b>>2]|0;b=(c[d>>2]|0)-g>>4;b=b|0?g+(b+-1<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=10)In(a,1919,-1,268516);b=c[b+8>>2]|0;if(!(c[b>>2]&128)){g=b+24|0;Su(a,g);return 1}else{g=c[b+20>>2]|0;Su(a,g);return 1}return 0}function yu(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=d+68|0;g=c[j>>2]|0;k=d+56|0;if(g>>>0>=(c[k>>2]|0)>>>0)Un(d,4361);c[j>>2]=g+16;i=d+72|0;e=d+64|0;if(c[i>>2]|0?(f=c[e>>2]|0,h=f+-16|0,c[g>>2]=c[h>>2],c[g+4>>2]=c[h+4>>2],c[g+8>>2]=c[h+8>>2],c[g+12>>2]=c[h+12>>2],c[h>>2]&8|0):0){h=(c[f+-8>>2]|0)+4|0;c[h>>2]=(c[h>>2]|0)+1}Ru(d,-1,278580)|0;h=c[j>>2]|0;g=c[e>>2]|0;e=h-g>>4;e=e|0?g+(e+-1<<4)|0:0;e=(e|0)==0?936:e;if((c[e>>2]|0)!=10)In(d,1919,-1,268516);e=c[e+8>>2]|0;if(!(c[e>>2]&128))g=e+24|0;else g=c[e+20>>2]|0;e=c[i>>2]|0;a:do if(e|0){f=c[e+16>>2]|0;if(!f)e=(c[e+4>>2]|0)>>>8<<24>>24;else{if(!(c[f>>2]&4096))break;e=b[f+46>>1]|0}switch(e|0){case 0:break a;case 1:{if(h>>>0>=(c[k>>2]|0)>>>0)Un(d,4185);k=(a[g+8>>0]|0)!=0&1;c[j>>2]=h+16;c[h>>2]=4;c[h+8>>2]=k;return 1}default:{if(h>>>0>=(c[k>>2]|0)>>>0)Un(d,4185);k=(a[g+9>>0]|0)!=0&1;c[j>>2]=h+16;c[h>>2]=4;c[h+8>>2]=k;return 1}}}while(0);if(h>>>0>=(c[k>>2]|0)>>>0)Un(d,4300);k=Oo(d,278556,5)|0;d=c[j>>2]|0;c[j>>2]=d+16;c[d>>2]=8;c[d+8>>2]=k;k=k+4|0;c[k>>2]=(c[k>>2]|0)+1;return 1}function zu(a){a=a|0;var b=0;b=c[a+72>>2]|0;if(b|0?c[b+52>>2]&4|0:0)return 0;Jn(a,268605,100663686,278444);return 0}function Au(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+16|0;f=t+4|0;q=t;r=b+68|0;d=c[r>>2]|0;s=b+64|0;o=c[s>>2]|0;o=(d|0)!=(o|0)?o:0;do if((c[((o|0)==0?936:o)>>2]|0)!=2){Eo(b,0)|0;d=c[s>>2]|0;d=(c[r>>2]|0)!=(d|0)?d:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==8)d=c[d+8>>2]|0;else d=0;d=Po(d)|0;if(d>>>0>715827881)Jn(b,278562,100663669,269226);else{g=d;e=c[r>>2]|0;break}}else{g=0;e=d}while(0);if(e>>>0>=(c[b+56>>2]|0)>>>0)Un(b,5237);d=ap(c[b+44>>2]|0,g*3|0,1,f)|0;if(!d)Mn(b,268620,5246);o=c[r>>2]|0;c[o>>2]=10;c[o+8>>2]=d;d=d+4|0;c[d>>2]=(c[d>>2]|0)+1;d=(c[r>>2]|0)+16|0;c[r>>2]=d;o=c[f>>2]|0;if(!g){s=0;$p(b,s);l=t;return 1}c[q>>2]=o;n=c[s>>2]|0;d=(d|0)!=(n|0)?n:0;d=(d|0)==0?936:d;if((c[d>>2]|0)!=8)In(b,2101,0,287721);d=c[d+8>>2]|0;if(!d)In(b,2101,0,287721);n=d+28|0;m=n+(c[d+20>>2]|0)|0;do if(n>>>0<m>>>0){e=n;i=0;a:while(1){if(e>>>0<n>>>0){j=35;break}g=e+1|0;d=a[e>>0]|0;e=d&255;do if(d<<24>>24<=-1){if((d&255)<192){j=35;break a}if((d&255)<224){f=1;d=e&31;break}if((d&255)<240){f=2;d=e&15;break}if((d&255)<248){f=3;d=e&7;break}if((d&255)<252){f=4;d=e&3;break}if((d&255)>=254)if(d<<24>>24==-1){j=35;break a}else{f=6;d=0;break}else{f=5;d=e&1;break}}else{f=0;d=e&127}while(0);if((g+f|0)>>>0>m>>>0){j=35;break}if(f){e=g;while(1){k=e;e=e+1|0;d=a[k>>0]&63|d<<6;if((f|0)<=1)break;else f=f+-1|0}if((d|0)>=128)if((d|0)>1114111){d=e;j=48}else j=40;else j=37}else{e=g;j=37}if((j|0)==37){j=0;if(!i){k=c[q>>2]|0;c[q>>2]=k+1;a[k>>0]=d;d=0}else j=40}b:do if((j|0)==40){j=0;do if((d&-2048|0)==55296){f=(i|0)==0;if((d|0)<56320){if(f)break b;h=65533;f=3;g=c[q>>2]|0;j=54;break b}else{if(f){d=e;j=48;break b}d=d+-56613888+(i<<10)|0;break}}else if(i){k=c[q>>2]|0;a[k>>0]=-17;a[k+1>>0]=-65;a[k+2>>0]=-67;c[q>>2]=k+3}while(0);g=c[q>>2]|0;if(d>>>0>=128)if(d>>>0>=2048)if(d>>>0>=65536)if(d>>>0>=2097152)if(d>>>0<67108864){h=d;f=5;d=0;j=54}else{h=d;f=d>>>31|6;i=0;k=g;j=55}else{h=d;f=4;d=0;j=54}else{h=d;f=3;d=0;j=54}else{h=d;f=2;d=0;j=54}else{i=0;h=0;f=1;j=57}}while(0);if((j|0)==48){e=d;h=65533;f=3;d=i;g=c[q>>2]|0;j=54}if((j|0)==54){i=d;k=g;j=55}if((j|0)==55){j=a[269353+(f+-1)>>0]|0;d=h;g=f;do{g=g+-1|0;a[k+g>>0]=d&63|128;d=d>>>6}while((g|0)>1);h=j;g=k;j=57}if((j|0)==57){a[g>>0]=d+(h&255);c[q>>2]=(c[q>>2]|0)+f;d=i}if(e>>>0<m>>>0)i=d;else{j=59;break}}if((j|0)==35)ko(b,270005,282);else if((j|0)==59){if(!d){j=60;break}p=c[q>>2]|0;a[p>>0]=-17;a[p+1>>0]=-65;a[p+2>>0]=-67;p=p+3|0;c[q>>2]=p;break}}else j=60;while(0);if((j|0)==60)p=c[q>>2]|0;e=p-o|0;s=c[s>>2]|0;d=(c[r>>2]|0)-s>>4;d=d|0?s+(d+-1<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)!=10)In(b,2147,-1,268516);d=c[d+8>>2]|0;if(!d)In(b,2147,-1,268516);if((c[d>>2]&384|0)!=128)Jn(b,268523,100663312,268540);Kn(b,d,e);s=e;$p(b,s);l=t;return 1}function Bu(a){a=a|0;var b=0,d=0;b=a+68|0;if((c[b>>2]|0)>>>0<(c[a+56>>2]|0)>>>0){a=Oo(a,278556,5)|0;d=c[b>>2]|0;c[b>>2]=d+16;c[d>>2]=8;c[d+8>>2]=a;b=a+4|0;c[b>>2]=(c[b>>2]|0)+1;return 1}else Un(a,4300);return 0}function Cu(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=b+68|0;f=c[k>>2]|0;e=b+64|0;g=c[e>>2]|0;d=(f|0)!=(g|0)?g:0;d=(d|0)==0?936:d;switch(c[d>>2]|0){case 9:{d=c[d+8>>2]|0;if(!d)In(b,2416,0,268963);else{l=d;h=f;i=g}break}case 6:{to(b,0);i=c[e>>2]|0;l=c[i+8>>2]|0;h=c[k>>2]|0;break}default:In(b,2416,0,268963)}e=h;d=(h|0)!=(i|0)?i:0;d=(d|0)==0?936:d;switch(c[d>>2]|0){case 9:{j=6;break}case 6:break;default:In(b,2285,0,287317)}if((j|0)==6?(c[c[d+8>>2]>>2]&512|0)==0:0)In(b,2285,0,287317);if(e>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4729);d=b+44|0;e=c[d>>2]|0;i=yr(e,308)|0;if(!i)Mn(b,278536,216);f=i+4|0;RQ(f|0,0,304)|0;c[i>>2]=-1879048063;g=e+24|0;h=c[g>>2]|0;if(h|0)c[h+12>>2]=i;c[i+12>>2]=0;c[i+8>>2]=h;c[g>>2]=i;c[i+44>>2]=e;a[i+49>>0]=1;c[i+304>>2]=c[b+304>>2];e=c[k>>2]|0;c[e>>2]=9;c[e+8>>2]=i;c[f>>2]=1;c[k>>2]=(c[k>>2]|0)+16;d=c[d>>2]|0;e=yr(d,1536)|0;f=i+52|0;c[f>>2]=e;if(!e){Bg[c[d+12>>2]&255](c[d+16>>2]|0,0);c[f>>2]=0;Mn(b,268620,4756)}RQ(e|0,0,1536)|0;e=c[f>>2]|0;c[i+56>>2]=e+1024;c[i+60>>2]=e+1536;d=e;c[i+64>>2]=d;c[i+68>>2]=d;d=0;do{c[e+(d<<4)>>2]=2;d=d+1|0}while((d|0)!=96);d=0;do{e=c[b+100+(d<<2)>>2]|0;c[i+100+(d<<2)>>2]=e;if(e|0){j=e+4|0;c[j>>2]=(c[j>>2]|0)+1}d=d+1|0}while((d|0)!=51);d=c[i+240>>2]|0;c[i+20>>2]=d;if(d|0){b=d+4|0;c[b>>2]=(c[b>>2]|0)+1}d=c[(c[k>>2]|0)+-8>>2]|0;a[d+49>>0]=1;e=d+68|0;f=c[e>>2]|0;if(f>>>0<(c[d+56>>2]|0)>>>0){c[e>>2]=f+16;c[f>>2]=9;c[f+8>>2]=l;l=l+4|0;c[l>>2]=(c[l>>2]|0)+1;return 1}else Un(d,4153);return 0}function Du(a){a=a|0;var b=0,d=0,e=0,f=0;d=c[(c[a+44>>2]|0)+132>>2]|0;e=a+68|0;f=c[e>>2]|0;b=f>>>0<(c[a+56>>2]|0)>>>0;if(!d){if(!b)Un(a,4162);c[e>>2]=f+16;return 1}else{if(!b)Un(a,4153);c[e>>2]=f+16;c[f>>2]=9;c[f+8>>2]=d;f=d+4|0;c[f>>2]=(c[f>>2]|0)+1;return 1}return 0}function Eu(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=b+68|0;j=b+64|0;d=c[j>>2]|0;d=(c[i>>2]|0)!=(d|0)?d:0;d=(d|0)==0?936:d;if((c[d>>2]|0)!=9)In(b,2171,0,281364);d=c[d+8>>2]|0;if(!d)In(b,2171,0,281364);if((c[d>>2]&-134217728|0)!=-1879048192)In(b,2171,0,281364);k=Ro(b,2)|0;Gp(b,2);if((c[b+76>>2]|0)>>>0<2)Qu(b,187);if(!(c[c[(c[(c[b+72>>2]|0)+20>>2]|0)+16>>2]>>2]&2048))Qu(b,187);switch(a[d+49>>0]|0){case 4:break;case 1:{e=8;break}default:Qu(b,187)}if((e|0)==8){if(c[d+76>>2]|0)Qu(b,187);f=c[d+68>>2]|0;if((f-(c[d+52>>2]|0)|0)!=16)Qu(b,187);d=f+-16|0;e=c[i>>2]|0;g=b+56|0;if(e>>>0>=(c[g>>2]|0)>>>0)Un(b,4153);c[i>>2]=e+16;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];if(c[d>>2]&8|0){f=(c[f+-8>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)+1}e=c[i>>2]|0;d=e;if((c[e+-16>>2]|0)==9?(h=c[e+-8>>2]|0,(c[h>>2]&1024|0)!=0):0){d=h+40|0;if(e>>>0>=(c[g>>2]|0)>>>0)Un(b,4153);c[i>>2]=e+16;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];if(c[d>>2]&8|0){h=(c[h+48>>2]|0)+4|0;c[h>>2]=(c[h>>2]|0)+1}e=c[j>>2]|0;f=(c[i>>2]|0)-e>>4;if(!f)jo(b,376,-1);g=e+(f+-1<<4)|0;d=f+-2|0;if((f|0)==1)jo(b,376,-2);f=e+(d<<4)|0;h=c[f>>2]|0;e=c[e+(d<<4)+8>>2]|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[f+12>>2]=c[g+12>>2];c[g>>2]=2;d=(c[i>>2]|0)+-16|0;c[i>>2]=d;f=d;if((h&8|0)!=0?(g=e+4|0,h=(c[g>>2]|0)+-1|0,c[g>>2]=h,(h|0)==0):0){Yn(c[b+44>>2]|0,e);d=c[i>>2]|0;e=d}else{e=d;d=f}}f=c[j>>2]|0;d=d-f>>4;d=d|0?f+(d+-1<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)!=9)In(b,2130,-1,268963);d=c[d+8>>2]|0;if(!d)In(b,2130,-1,268963);if((c[d>>2]&2560|0)!=2560)Qu(b,187);if((e|0)==(f|0))Jn(b,268620,50337407,268636);h=e+-16|0;c[i>>2]=h;i=c[e+-16>>2]|0;d=c[e+-8>>2]|0;c[h>>2]=2;if(i&8|0?(h=d+4|0,i=(c[h>>2]|0)+-1|0,c[h>>2]=i,(i|0)==0):0)Yn(c[b+44>>2]|0,d)}if(k|0)Jo(b,105);h=b+44|0;d=c[h>>2]|0;c[d+84>>2]=3;e=d+112|0;f=c[j>>2]|0;if(c[f>>2]&8|0){i=(c[f+8>>2]|0)+4|0;c[i>>2]=(c[i>>2]|0)+1}if(c[e>>2]&8){d=c[d+120>>2]|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];g=d+4|0;i=(c[g>>2]|0)+-1|0;c[g>>2]=i;if(!i)Yn(c[h>>2]|0,d)}else{c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2]}e=c[h>>2]|0;g=e+96|0;d=c[j>>2]|0;f=d+16|0;if(c[f>>2]&8|0){j=(c[d+24>>2]|0)+4|0;c[j>>2]=(c[j>>2]|0)+1}if(!(c[g>>2]&8)){c[g>>2]=c[f>>2];c[g+4>>2]=c[f+4>>2];c[g+8>>2]=c[f+8>>2];c[g+12>>2]=c[f+12>>2];j=c[h>>2]|0;j=j+88|0;c[j>>2]=k;ep(b)}d=c[e+104>>2]|0;c[g>>2]=c[f>>2];c[g+4>>2]=c[f+4>>2];c[g+8>>2]=c[f+8>>2];c[g+12>>2]=c[f+12>>2];i=d+4|0;j=(c[i>>2]|0)+-1|0;c[i>>2]=j;if(j|0){j=c[h>>2]|0;j=j+88|0;c[j>>2]=k;ep(b)}Yn(c[h>>2]|0,d);j=c[h>>2]|0;j=j+88|0;c[j>>2]=k;ep(b);return 0}function Fu(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;d=Ro(a,1)|0;Gp(a,1);if(!(c[a+84>>2]|0))Qu(a,303);if((c[a+76>>2]|0)>>>0<2)Qu(a,303);if(!(c[c[(c[(c[a+72>>2]|0)+20>>2]|0)+16>>2]>>2]&2048))Qu(a,303);if((c[a+80>>2]|0)!=1)Qu(a,303);if(d|0)Jo(a,105);e=a+44|0;b=c[e>>2]|0;c[b+84>>2]=2;f=b+96|0;g=c[a+64>>2]|0;if(c[g>>2]&8|0){h=(c[g+8>>2]|0)+4|0;c[h>>2]=(c[h>>2]|0)+1}if(!(c[f>>2]&8)){c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[f+12>>2]=c[g+12>>2];h=c[e>>2]|0;h=h+88|0;c[h>>2]=d;ep(a)}b=c[b+104>>2]|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[f+12>>2]=c[g+12>>2];g=b+4|0;h=(c[g>>2]|0)+-1|0;c[g>>2]=h;if(h|0){h=c[e>>2]|0;h=h+88|0;c[h>>2]=d;ep(a)}Yn(c[e>>2]|0,b);h=c[e>>2]|0;h=h+88|0;c[h>>2]=d;ep(a);return 0}function Gu(a){a=a|0;Vn(a,278489,8);return 0}function Hu(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;b=c[a+64>>2]|0;a:do switch(c[b+-16>>2]|0){case 9:{b=c[b+-8>>2]|0;if(!(c[b>>2]&8192))Jn(a,278417,100663473,278433);else{k=b;break a}break}case 10:{k=c[b+-8>>2]|0;break}default:Jn(a,278417,100663473,278433)}while(0);b=c[k>>2]|0;if((b&3|0)==2){e=a+68|0;if((c[e>>2]|0)>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4988);f=vo(a,60)|0;b=c[a+44>>2]|0;c[f>>2]=-1744822143;b=b+24|0;d=c[b>>2]|0;if(d|0)c[d+12>>2]=f;c[f+12>>2]=0;c[f+8>>2]=d;c[b>>2]=f;b=c[a+256>>2]|0;c[f+20>>2]=b;if(b|0){a=b+4|0;c[a>>2]=(c[a>>2]|0)+1}a=c[e>>2]|0;c[a>>2]=9;c[a+8>>2]=f;a=f+4|0;c[a>>2]=(c[a>>2]|0)+1;c[e>>2]=(c[e>>2]|0)+16;c[f+40>>2]=k;a=k+4|0;c[a>>2]=(c[a>>2]|0)+1;c[f+52>>2]=c[k+16>>2];a=1;return a|0}j=k+44|0;e=c[j>>2]|0;if(!e){if((b&-134217728|0)==-1744830464){a=0;return a|0}i=c[k+40>>2]|0;if(!i){a=0;return a|0}f=a+68|0;g=a+56|0;if((c[f>>2]|0)>>>0>=(c[g>>2]|0)>>>0)Un(a,4988);b=vo(a,60)|0;d=c[a+44>>2]|0;c[b>>2]=-1744822143;d=d+24|0;e=c[d>>2]|0;if(e|0)c[e+12>>2]=b;c[b+12>>2]=0;c[b+8>>2]=e;c[d>>2]=b;d=c[a+256>>2]|0;c[b+20>>2]=d;if(d|0){h=d+4|0;c[h>>2]=(c[h>>2]|0)+1}e=c[f>>2]|0;c[e>>2]=9;c[e+8>>2]=b;e=b+4|0;c[e>>2]=(c[e>>2]|0)+1;d=(c[f>>2]|0)+16|0;c[f>>2]=d;c[b+40>>2]=i;h=i+4|0;c[h>>2]=(c[h>>2]|0)+1;h=b+52|0;c[h>>2]=c[i+16>>2];i=c[j>>2]|0;if(!i){c[b+48>>2]=0;c[h>>2]=(c[k+52>>2]|0)+(c[k+48>>2]|0);c[j>>2]=b;c[e>>2]=(c[e>>2]|0)+1}else b=i}else{d=a+68|0;g=a+56|0;f=d;d=c[d>>2]|0;b=e}if(d>>>0>=(c[g>>2]|0)>>>0)Un(a,4153);c[f>>2]=d+16;c[d>>2]=9;c[d+8>>2]=b;a=b+4|0;c[a>>2]=(c[a>>2]|0)+1;a=1;return a|0}function Iu(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0.0;b=c[a+64>>2]|0;a:do switch(c[b+-16>>2]|0){case 9:{b=c[b+-8>>2]|0;if(!(c[b>>2]&8192))Jn(a,278417,100663473,278433);else{e=b;break a}break}case 10:{e=c[b+-8>>2]|0;break}default:Jn(a,278417,100663473,278433)}while(0);if((c[e>>2]&3|0)==2){b=a+68|0;d=c[b>>2]|0;if(d>>>0<(c[a+56>>2]|0)>>>0){f=b;g=d;i=e+16|0}else Un(a,4274)}else{b=a+68|0;d=c[b>>2]|0;if(d>>>0<(c[a+56>>2]|0)>>>0){f=b;g=d;i=e+52|0}else Un(a,4274)}j=+((c[i>>2]|0)>>>0);c[f>>2]=g+16;c[g>>2]=0;h[g+8>>3]=j;return 1}function Ju(a){a=a|0;var b=0,d=0,e=0,f=0,g=0.0;b=c[a+64>>2]|0;a:do switch(c[b+-16>>2]|0){case 9:{b=c[b+-8>>2]|0;if(!(c[b>>2]&8192))Jn(a,278417,100663473,278433);else{f=b;break a}break}case 10:{f=c[b+-8>>2]|0;break}default:Jn(a,278417,100663473,278433)}while(0);b=a+68|0;d=c[b>>2]|0;e=d>>>0<(c[a+56>>2]|0)>>>0;if((c[f>>2]&3|0)==2)if(e){g=0.0;a=d+16|0;c[b>>2]=a;c[d>>2]=0;a=d+8|0;h[a>>3]=g;return 1}else Un(a,4274);if(!e)Un(a,4274);g=+((c[f+48>>2]|0)>>>0);a=d+16|0;c[b>>2]=a;c[d>>2]=0;a=d+8|0;h[a>>3]=g;return 1}function Ku(f){f=f|0;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=l;l=l+16|0;m=G;g=c[f+72>>2]|0;if(!g)Jn(f,268605,100663686,278444);if(!(c[g+52>>2]&4))Jn(f,268605,100663686,278444);i=c[g+16>>2]|0;if(i)if(!(c[i>>2]&4096))g=0;else g=b[i+46>>1]|0;else g=(c[g+4>>2]|0)>>>8<<24>>24;C=g&3;D=g>>>2&15;z=1<<C;n=z+-1|0;B=d[278471+D>>0]|0;y=d[278480+D>>0]|0;F=f+68|0;i=c[F>>2]|0;E=f+64|0;g=c[E>>2]|0;r=(i|0)!=(g|0)?g:0;if((c[((r|0)==0?936:r)>>2]|0)==10){to(f,0);g=c[E>>2]|0;i=c[F>>2]|0}g=(i|0)!=(g|0)?g:0;do if((c[g>>2]|0)!=9){Wq(f,0);g=c[E>>2]|0;g=(c[F>>2]|0)!=(g|0)?g:0;g=(g|0)==0?936:g;if((c[g>>2]|0)==0?(q=+h[g+8>>3],(iP(q)|0)!=0):0)if(!(q<-2147483648.0))if(q>2147483647.0){A=0;x=2147483647;w=3;break}else{k=0;i=~~q;g=3;j=46;break}else Jn(f,278417,50332671,269834);else{A=0;x=0;w=3}}else{r=c[g+8>>2]|0;g=c[r>>2]|0;if((g&-134217728|0)!=-1744830464){if(!(g&8192)){k=0;i=Bo(f,0)|0;g=2;j=46;break}g=c[r+40>>2]|0;i=c[r+52>>2]|0;j=i>>>(d[r+56>>0]|0);if(!g)Vn(f,278417,828);if(((c[r+48>>2]|0)+i|0)>>>0>(c[g+16>>2]|0)>>>0){k=r;i=j;g=2;j=46;break}k=r;i=j;g=(1<<d[r+57>>0]&e[35320+(D<<1)>>1]|0)==0&1;j=46;break}Wq(f,1);k=c[F>>2]|0;i=c[E>>2]|0;j=k-i>>4;g=j>>>0>1?i+16|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)==0?(s=+h[g+8>>3],(iP(s)|0)!=0):0){if(s<-2147483648.0)Jn(f,278417,50332671,269834);g=~~s;if(!(s>2147483647.0))if((g|0)<0)Jn(f,278417,50332671,269834);else u=g;else u=2147483647}else u=0;m=r+52|0;g=c[m>>2]|0;if(!(g>>>0>=u>>>0&(u&n|0)==0))Jn(f,278417,50332671,269834);A=j>>>0>2?i+32|0:0;if((c[((A|0)==0?936:A)>>2]|0)==2){g=g-u|0;if(!(g&n)){v=g;p=k}else Jn(f,278417,50332671,269834)}else{Wq(f,2);i=c[F>>2]|0;g=c[E>>2]|0;g=i-g>>4>>>0>2?g+32|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)==0?(t=+h[g+8>>3],(iP(t)|0)!=0):0){if(t<-2147483648.0)Jn(f,278417,50332671,269834);g=~~t;if(!(t>2147483647.0))if((g|0)<0)Jn(f,278417,50332671,269834);else o=g;else o=2147483647}else o=0;g=o<<C;if((g>>>C|0)!=(o|0))Jn(f,278417,50332671,269834);if(g>>>0>((c[m>>2]|0)-u|0)>>>0)Jn(f,278417,50332671,269834);else{v=g;p=i}}if(p>>>0>=(c[f+56>>2]|0)>>>0)Un(f,4988);j=vo(f,60)|0;g=c[f+44>>2]|0;c[j>>2]=y<<27|8321;g=g+24|0;i=c[g>>2]|0;if(i|0)c[i+12>>2]=j;c[j+12>>2]=0;c[j+8>>2]=i;c[g>>2]=j;g=c[f+100+(B<<2)>>2]|0;c[j+20>>2]=g;if(g|0){E=g+4|0;c[E>>2]=(c[E>>2]|0)+1}g=c[F>>2]|0;c[g>>2]=9;c[g+8>>2]=j;g=j+4|0;c[g>>2]=(c[g>>2]|0)+1;c[F>>2]=(c[F>>2]|0)+16;g=c[r+40>>2]|0;if(!g)Vn(f,278417,801);c[j+40>>2]=g;f=g+4|0;c[f>>2]=(c[f>>2]|0)+1;c[j+48>>2]=(c[r+48>>2]|0)+u;c[j+52>>2]=v;a[j+56>>0]=C;a[j+57>>0]=D;a[j+58>>0]=1;c[j+44>>2]=r;f=r+4|0;c[f>>2]=(c[f>>2]|0)+1;l=G;return 1}while(0);if((j|0)==46)if((i|0)<0)Jn(f,278417,50332671,269834);else{A=k;x=i;w=g}k=x<<C;if((k>>>C|0)!=(x|0))Jn(f,278417,50332671,269834);i=f+56|0;if((c[F>>2]|0)>>>0>=(c[i>>2]|0)>>>0)Un(f,5237);if(k>>>0>2147483646)Jn(f,268620,50336889,268576);r=f+44|0;g=ap(c[r>>2]|0,k,0,m)|0;if(!g)Mn(f,268620,5246);j=c[F>>2]|0;c[j>>2]=10;c[j+8>>2]=g;j=g+4|0;c[j>>2]=(c[j>>2]|0)+1;j=c[F>>2]|0;v=j+16|0;c[F>>2]=v;j=c[j+8>>2]|0;if(v>>>0>=(c[i>>2]|0)>>>0)Un(f,4988);p=vo(f,60)|0;g=c[r>>2]|0;c[p>>2]=y<<27|8321;g=g+24|0;i=c[g>>2]|0;if(i|0)c[i+12>>2]=p;c[p+12>>2]=0;c[p+8>>2]=i;c[g>>2]=p;g=c[f+100+(B<<2)>>2]|0;c[p+20>>2]=g;if(g|0){B=g+4|0;c[B>>2]=(c[B>>2]|0)+1}o=c[F>>2]|0;c[o>>2]=9;c[o+8>>2]=p;o=p+4|0;c[o>>2]=(c[o>>2]|0)+1;c[F>>2]=(c[F>>2]|0)+16;c[p+40>>2]=j;o=j+4|0;c[o>>2]=(c[o>>2]|0)+1;c[p+52>>2]=k;a[p+56>>0]=C;o=p+57|0;a[o>>0]=D;a[p+58>>0]=1;switch(w&3){case 0:{if(!(c[j>>2]&128))i=j+24|0;else i=c[j+20>>2]|0;g=c[A+40>>2]|0;if(!(c[g>>2]&128))g=g+24|0;else g=c[g+20>>2]|0;PQ(i+(c[p+48>>2]|0)|0,g+(c[A+48>>2]|0)|0,k|0)|0;l=G;return 1}case 1:{n=1<<d[A+56>>0];g=c[A+40>>2]|0;if(!(c[g>>2]&128))g=g+24|0;else g=c[g+20>>2]|0;i=g+(c[A+48>>2]|0)|0;if(!(c[j>>2]&128))g=j+24|0;else g=c[j+20>>2]|0;D=c[A+52>>2]|0;m=i+D|0;if(!D){l=G;return 1}k=A+57|0;j=g+(c[p+48>>2]|0)|0;while(1){dq(f,a[k>>0]|0,i,n);Qo(f,a[o>>0]|0,j,z);g=c[F>>2]|0;if((g|0)==(c[E>>2]|0)){j=78;break}C=g+-16|0;c[F>>2]=C;D=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[C>>2]=2;do if(D&8|0){C=g+4|0;D=(c[C>>2]|0)+-1|0;c[C>>2]=D;if(D|0)break;Yn(c[r>>2]|0,g)}while(0);i=i+n|0;if((i|0)==(m|0)){j=85;break}else j=j+z|0}if((j|0)==78)Jn(f,268620,50337407,268636);else if((j|0)==85){l=G;return 1}break}case 2:{if(!x){l=G;return 1}else g=0;do{Np(f,0,g)|0;mq(f,-2,g);g=g+1|0}while((g|0)!=(x|0));l=G;return 1}default:{l=G;return 1}}return 0}function Lu(b){b=b|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=l;l=l+16|0;B=G;A=Pu(b,3)|0;r=A+40|0;if(!(c[r>>2]|0)){l=G;return 0}E=b+68|0;f=c[E>>2]|0;F=b+64|0;i=c[F>>2]|0;z=(f|0)!=(i|0)?i:0;if((c[((z|0)==0?936:z)>>2]|0)==10){to(b,0);i=c[F>>2]|0;f=c[E>>2]|0}f=(f|0)!=(i|0)?i:0;f=(f|0)==0?936:f;if((c[f>>2]|0)!=9)In(b,2130,0,268963);x=c[f+8>>2]|0;if(!x)In(b,2130,0,268963);Wq(b,1);z=c[E>>2]|0;f=c[F>>2]|0;f=z-f>>4>>>0>1?f+16|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)==0?(o=+h[f+8>>3],(iP(o)|0)!=0):0){if(o<-2147483648.0)Vn(b,278417,1611);f=~~o;if(!(o>2147483647.0))if((f|0)<0)Vn(b,278417,1611);else k=f;else k=2147483647}else k=0;y=A+56|0;v=a[y>>0]|0;i=v&255;p=k<<i;if((p>>>i|0)!=(k|0))Jn(b,278417,50333486,269834);f=A+52|0;q=c[f>>2]|0;if(q>>>0<p>>>0)Jn(b,278417,50333486,269834);if(!(c[x>>2]&8192)){g=Bo(b,0)|0;if(g<<(d[y>>0]|0)>>>0>((c[f>>2]|0)-p|0)>>>0)Jn(b,278417,50333486,269834);f=c[E>>2]|0;if(f>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4361);c[E>>2]=f+16;if(c[b+72>>2]|0?(j=c[F>>2]|0,F=j+-16|0,c[f>>2]=c[F>>2],c[f+4>>2]=c[F+4>>2],c[f+8>>2]=c[F+8>>2],c[f+12>>2]=c[F+12>>2],c[F>>2]&8|0):0){F=(c[j+-8>>2]|0)+4|0;c[F>>2]=(c[F>>2]|0)+1}if(!g){l=G;return 0}else f=0;do{Np(b,0,f)|0;mq(b,2,f+k|0);f=f+1|0}while((f|0)!=(g|0));l=G;return 0}n=c[x+40>>2]|0;if(!n){l=G;return 0}w=c[x+52>>2]|0;u=x+56|0;s=a[u>>0]|0;m=w>>>(s&255);t=m<<i;if(t>>>0>(q-p|0)>>>0|(t>>>i|0)!=(m|0))Jn(b,278417,50333486,269834);m=c[A+48>>2]|0;i=c[r>>2]|0;j=c[i+16>>2]|0;if((t+p+m|0)>>>0>j>>>0){l=G;return 0}if(!(c[n>>2]&128))f=n+24|0;else f=c[n+20>>2]|0;k=c[x+48>>2]|0;r=f+k|0;if(!(c[i>>2]&128))f=i+24|0;else f=c[i+20>>2]|0;i=f+m+p|0;if((q+m|0)>>>0>j>>>0){l=G;return 0}if((w+k|0)>>>0>(c[n+16>>2]|0)>>>0){l=G;return 0}q=A+57|0;p=x+57|0;if(1<<(d[p>>0]|0)&(e[35320+((d[q>>0]|0)<<1)>>1]|0)|0){QQ(i|0,r|0,t|0)|0;l=G;return 0}do if((r+w|0)>>>0>i>>>0&r>>>0<(i+t|0)>>>0){if(z>>>0>=(c[b+56>>2]|0)>>>0)Un(b,5237);if(w>>>0>2147483646)Jn(b,268620,50336889,268576);f=ap(c[b+44>>2]|0,w,4,B)|0;if(!f)Mn(b,268620,5246);else{g=c[E>>2]|0;c[g>>2]=10;c[g+8>>2]=f;g=f+4|0;c[g>>2]=(c[g>>2]|0)+1;c[E>>2]=(c[E>>2]|0)+16;g=c[B>>2]|0;PQ(g|0,r|0,w|0)|0;C=a[u>>0]|0;D=a[y>>0]|0;break}}else{g=r;C=s;D=v}while(0);n=1<<(C&255);k=1<<(D&255);m=g+w|0;if(!w){l=G;return 0}j=b+44|0;while(1){dq(b,a[p>>0]|0,g,n);Qo(b,a[q>>0]|0,i,k);f=c[E>>2]|0;if((f|0)==(c[F>>2]|0)){f=40;break}C=f+-16|0;c[E>>2]=C;D=c[f+-16>>2]|0;f=c[f+-8>>2]|0;c[C>>2]=2;do if(D&8|0){C=f+4|0;D=(c[C>>2]|0)+-1|0;c[C>>2]=D;if(D|0)break;Yn(c[j>>2]|0,f)}while(0);g=g+n|0;if((g|0)==(m|0)){f=54;break}else i=i+k|0}if((f|0)==40)Jn(b,268620,50337407,268636);else if((f|0)==54){l=G;return 0}return 0}function Mu(a){a=a|0;Ou(a)|0;return 1}function Nu(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=a+68|0;g=c[h>>2]|0;b=a+64|0;d=c[b>>2]|0;e=(g|0)!=(d|0);j=e?d:0;if((c[((j|0)==0?936:j)>>2]|0)==10)return 1;if(!e)jo(a,376,0);switch(c[d>>2]|0){case 9:{b=c[d+8>>2]|0;if(!(c[b>>2]&8192))Jn(a,278417,100663514,278433);else{f=b;i=g}break}case 10:{to(a,0);f=c[(c[b>>2]|0)+8>>2]|0;i=c[h>>2]|0;break}default:Jn(a,278417,100663514,278433)}b=c[f+40>>2]|0;d=i>>>0<(c[a+56>>2]|0)>>>0;if(!b){if(!d)Un(a,4162);c[h>>2]=i+16;return 1}else{if(!d)Un(a,4153);c[h>>2]=i+16;c[i>>2]=10;c[i+8>>2]=b;j=b+4|0;c[j>>2]=(c[j>>2]|0)+1;return 1}return 0}function Ou(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;m=p+4|0;f=p;o=b+68|0;i=c[o>>2]|0;n=b+64|0;g=c[n>>2]|0;h=g;d=(i|0)!=(h|0)?g:0;d=(d|0)==0?936:d;e=c[d>>2]|0;k=i;a:do switch(c[4924+(e<<2)>>2]|0){case 4:{d=vq(b,0,0,2147483647,m)|0;if((c[o>>2]|0)>>>0>=(c[b+56>>2]|0)>>>0)Un(b,5237);if(d>>>0>2147483646)Jn(b,268620,50336889,268576);d=ap(c[b+44>>2]|0,d,0,m)|0;if(!d)Mn(b,268620,5246);else{b=c[o>>2]|0;c[b>>2]=10;c[b+8>>2]=d;b=d+4|0;c[b>>2]=(c[b>>2]|0)+1;c[o>>2]=(c[o>>2]|0)+16;break a}break}case 7:{j=31;break}case 6:{f=c[g+8>>2]|0;if((c[f>>2]&-134217728|0)==-1744830464){d=f+40|0;e=c[d>>2]|0;if(!e)Vn(b,278417,556);if(c[f+48>>2]|0)Vn(b,278417,562);if((c[f+52>>2]|0)!=(c[e+16>>2]|0))Vn(b,278417,562);if(k>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4153);c[o>>2]=k+16;c[k>>2]=10;c[k+8>>2]=e;o=e+4|0;c[o>>2]=(c[o>>2]|0)+1;o=d;o=c[o>>2]|0;l=p;return o|0}else j=31;break}case 5:{if((e|0)!=8)In(b,2113,0,287721);d=c[d+8>>2]|0;if(!d)In(b,2113,0,287721);if(c[d>>2]&512|0)In(b,2113,0,287721);if(k>>>0>=(c[b+56>>2]|0)>>>0)Un(b,1093);if((k|0)==(g|0))jo(b,376,0);c[o>>2]=k+16;n=i;c[n>>2]=c[g>>2];c[n+4>>2]=c[g+4>>2];c[n+8>>2]=c[g+8>>2];c[n+12>>2]=c[g+12>>2];if(c[k>>2]&8|0){n=(c[k+8>>2]|0)+4|0;c[n>>2]=(c[n>>2]|0)+1}Rq(b,f,2);break}default:Vn(b,278417,577)}while(0);b:do if((j|0)==31){if((i|0)==(h|0))jo(b,300,0);d=c[(c[b+304>>2]|0)+328>>2]|0;g=b+56|0;if(k>>>0>=(c[g>>2]|0)>>>0)Un(b,4153);c[o>>2]=k+16;c[k>>2]=8;c[k+8>>2]=d;d=d+4|0;c[d>>2]=(c[d>>2]|0)+1;d=c[n>>2]|0;e=(c[o>>2]|0)-d>>4;if(!e)jo(b,376,0);ro(b,d,d+(e+-1<<4)|0)|0;f=c[n>>2]|0;e=(c[o>>2]|0)-f>>4;d=e+-2|0;if(e>>>0<=1)jo(b,376,-2);i=f+(d<<4)|0;j=f+(e+-1<<4)|0;k=c[i>>2]|0;d=c[f+(d<<4)+8>>2]|0;QQ(i|0,i+16|0,j-i|0)|0;c[j>>2]=2;c[o>>2]=(c[o>>2]|0)+-16;if(k&8|0?(j=d+4|0,k=(c[j>>2]|0)+-1|0,c[j>>2]=k,(k|0)==0):0)Yn(c[b+44>>2]|0,d);h=vq(b,-1,0,2147483647,m)|0;e=c[o>>2]|0;if((e|0)==(c[n>>2]|0))Jn(b,268620,50337407,268636);d=e+-16|0;c[o>>2]=d;k=c[e+-16>>2]|0;e=c[e+-8>>2]|0;c[d>>2]=2;if((k&8|0)!=0?(j=e+4|0,k=(c[j>>2]|0)+-1|0,c[j>>2]=k,(k|0)==0):0){Yn(c[b+44>>2]|0,e);d=c[o>>2]|0}if(d>>>0>=(c[g>>2]|0)>>>0)Un(b,5237);if(h>>>0>2147483646)Jn(b,268620,50336889,268576);g=b+44|0;d=ap(c[g>>2]|0,h,4,m)|0;if(!d)Mn(b,268620,5246);f=c[o>>2]|0;c[f>>2]=10;c[f+8>>2]=d;f=d+4|0;c[f>>2]=(c[f>>2]|0)+1;c[o>>2]=(c[o>>2]|0)+16;f=c[m>>2]|0;if((h|0)>0){e=0;while(1){Np(b,0,e)|0;a[f+e>>0]=_p(b,-1)|0;d=c[o>>2]|0;if((d|0)==(c[n>>2]|0))break;k=d+-16|0;c[o>>2]=k;m=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[k>>2]=2;if(m&8|0?(k=d+4|0,m=(c[k>>2]|0)+-1|0,c[k>>2]=m,(m|0)==0):0)Yn(c[g>>2]|0,d);e=e+1|0;if((e|0)>=(h|0))break b}Jn(b,268620,50337407,268636)}}while(0);o=(c[o>>2]|0)+-8|0;o=c[o>>2]|0;l=p;return o|0}function Pu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=a+64|0;e=c[g>>2]|0;switch(c[e+-16>>2]|0){case 9:{d=c[e+-8>>2]|0;if(c[d>>2]&8192|0){a=d;return a|0}break}case 10:{if(!(b&2)){a=c[e+-8>>2]|0;return a|0}f=a+68|0;d=c[f>>2]|0;if(d>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4361);c[f>>2]=d+16;if(c[a+72>>2]|0){b=e+-16|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];e=(c[e+-8>>2]|0)+4|0;c[e>>2]=(c[e>>2]|0)+1}to(a,-1);b=c[(c[f>>2]|0)+-8>>2]|0;h=c[g>>2]|0;i=h+-16|0;e=c[i>>2]|0;h=h+-8|0;d=c[h>>2]|0;c[i>>2]=9;c[h>>2]=b;h=b+4|0;c[h>>2]=(c[h>>2]|0)+1;if(e&8|0?(h=d+4|0,i=(c[h>>2]|0)+-1|0,c[h>>2]=i,(i|0)==0):0)Yn(c[a+44>>2]|0,d);d=c[f>>2]|0;if((d|0)==(c[g>>2]|0))Jn(a,268620,50337407,268636);h=d+-16|0;c[f>>2]=h;i=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[h>>2]=2;if(i&8|0?(h=d+4|0,i=(c[h>>2]|0)+-1|0,c[h>>2]=i,(i|0)==0):0)Yn(c[a+44>>2]|0,d);i=b;return i|0}default:{}}if(!(b&1)){i=0;return i|0}else Jn(a,278417,100663473,278433);return 0}function Qu(a,b){a=a|0;b=b|0;Jn(a,278506,b|100663296,278522)}function Ru(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=a+68|0;g=a+64|0;e=(c[h>>2]|0)-(c[g>>2]|0)>>4;f=((b|0)<0?e:0)+b|0;if(f>>>0>=e>>>0)jo(a,300,b);gp(a,d);d=c[g>>2]|0;e=(c[h>>2]|0)-d>>4;b=((f|0)<0?e:0)+f|0;if(b>>>0>=e>>>0)jo(a,376,f);f=ro(a,d+(b<<4)|0,d+(e+-1<<4)|0)|0;d=c[g>>2]|0;e=(c[h>>2]|0)-d>>4;b=e+-2|0;if(e>>>0<=1)jo(a,376,-2);i=d+(b<<4)|0;e=d+(e+-1<<4)|0;g=c[i>>2]|0;b=c[d+(b<<4)+8>>2]|0;QQ(i|0,i+16|0,e-i|0)|0;c[e>>2]=2;c[h>>2]=(c[h>>2]|0)+-16;if(!(g&8))return f|0;h=b+4|0;i=(c[h>>2]|0)+-1|0;c[h>>2]=i;if(i|0)return f|0;Yn(c[a+44>>2]|0,b);return f|0}function Su(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+16|0;o=A;z=b+68|0;h=c[z>>2]|0;p=b+64|0;w=c[p>>2]|0;w=(h|0)!=(w|0)?w:0;if((c[((w|0)==0?936:w)>>2]|0)==2){if(h>>>0>=(c[b+56>>2]|0)>>>0)Un(b,5237);k=b+44|0;h=ap(c[k>>2]|0,0,4,o)|0;if(!h)Mn(b,268620,5246);j=c[z>>2]|0;c[j>>2]=10;c[j+8>>2]=h;h=h+4|0;c[h>>2]=(c[h>>2]|0)+1;h=(c[z>>2]|0)+16|0;c[z>>2]=h;j=c[p>>2]|0;h=h-j>>4;if(!h)jo(b,376,-1);h=j+(h+-1<<4)|0;w=c[j>>2]|0;i=c[j+8>>2]|0;c[j>>2]=c[h>>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];c[h>>2]=2;h=(c[z>>2]|0)+-16|0;c[z>>2]=h;if((w&8|0)!=0?(v=i+4|0,w=(c[v>>2]|0)+-1|0,c[v>>2]=w,(w|0)==0):0){Yn(c[k>>2]|0,i);h=c[z>>2]|0}}m=c[p>>2]|0;n=m;i=(h|0)!=(n|0)?m:0;i=(i|0)==0?936:i;switch(c[i>>2]|0){case 10:{s=c[(c[i+8>>2]|0)+16>>2]|0;break}case 9:{i=c[i+8>>2]|0;if(!(c[i>>2]&8192))In(b,2022,0,268516);j=c[i+40>>2]|0;if(!j)In(b,2022,0,268516);k=c[i+52>>2]|0;if((k+(c[i+48>>2]|0)|0)>>>0>(c[j+16>>2]|0)>>>0)In(b,2022,0,268516);else s=k;break}default:In(b,2022,0,268516)}h=h-n>>4>>>0>1?m+16|0:0;h=c[((h|0)==0?936:h)>>2]|0;if(1907>>>h&1){if(435>>>h&1|0)Jn(b,268620,100667121,269566);if(Ru(b,1,278589)|0)u=Ro(b,-1)|0;else u=0}else u=0;if(s>>>0>715827878)Jn(b,278562,100663552,269226);w=b+56|0;if((c[z>>2]|0)>>>0>=(c[w>>2]|0)>>>0)Un(b,5237);h=ap(c[b+44>>2]|0,(s*3|0)+3|0,4,o)|0;if(!h)Mn(b,268620,5246);t=c[z>>2]|0;c[t>>2]=10;c[t+8>>2]=h;t=h+4|0;c[t>>2]=(c[t>>2]|0)+1;t=(c[z>>2]|0)+16|0;c[z>>2]=t;v=c[o>>2]|0;h=c[p>>2]|0;h=(t|0)!=(h|0)?h:0;h=(h|0)==0?936:h;a:do switch(c[h>>2]|0){case 10:{h=c[h+8>>2]|0;g=c[h+16>>2]|0;if(!(c[h>>2]&128)){h=h+24|0;break a}else{h=c[h+20>>2]|0;break a}}case 9:{h=c[h+8>>2]|0;if(((c[h>>2]&8192|0)!=0?(q=c[h+40>>2]|0,(q|0)!=0):0)?(r=c[h+48>>2]|0,g=c[h+52>>2]|0,(g+r|0)>>>0<=(c[q+16>>2]|0)>>>0):0){if(!(c[q>>2]&128))h=q+24|0;else h=c[q+20>>2]|0;h=h+r|0}else{g=0;h=0}break}default:{g=0;h=0}}while(0);if((s|0)!=(g|0))Jn(b,278562,100663629,278596);t=h+s|0;b:do if((s|0)>0){n=e+6|0;o=e+5|0;p=e+4|0;q=e+7|0;r=e+9|0;s=e+8|0;g=h;i=v;c:while(1){h=g;k=a[n>>0]|0;while(1){m=h+1|0;j=a[h>>0]|0;g=j&255;d:do if(!(k<<24>>24))if(j<<24>>24<=-1){if((j+62&255)<30){a[n>>0]=1;c[e>>2]=g&31;h=m;g=1;break}if((j&-16)<<24>>24==-32){switch(j<<24>>24){case -32:{a[o>>0]=-96;break}case -19:{a[p>>0]=-97;break}default:{}}a[n>>0]=2;c[e>>2]=g&15;h=m;g=2;break}if((j+16&255)<5){switch(j<<24>>24){case -16:{a[o>>0]=-112;break}case -12:{a[p>>0]=-113;break}default:{}}a[n>>0]=3;c[e>>2]=g&7;h=m;g=3}else{h=m;x=64}}else{h=m;x=65}else{if((d[o>>0]|0)<=(j&255)?(d[p>>0]|0)>=(j&255):0){a[o>>0]=-128;a[p>>0]=-65;g=c[e>>2]<<6|g&63;c[e>>2]=g;j=k+-1<<24>>24;a[n>>0]=j;if(j<<24>>24){h=m;g=j;break}c[e>>2]=0;a[n>>0]=0;if((g|0)>=0){h=m;x=65;break}switch(g|0){case -1:{h=m;g=0;break d}case -3:break;default:{h=m;x=64;break d}}}else{c[e>>2]=0;a[n>>0]=0;a[o>>0]=-128;a[p>>0]=-65}x=64}while(0);if((x|0)==64)if(!(a[s>>0]|0)){g=65533;x=65}else break c;if((x|0)==65){x=0;if(a[q>>0]|0){x=69;break}a[q>>0]=1;if((g|0)!=65279){x=69;break}if(!(a[r>>0]|0))g=0;else{g=65279;x=74;break}}if(h>>>0<t>>>0)k=g;else{f=i;break b}}do if((x|0)==69){x=0;if(g>>>0<128){a[i>>0]=g;g=1;break}if(g>>>0<2048){a[i>>0]=g>>>6&31|192;a[i+1>>0]=g&63|128;g=2;break}if(g>>>0<65536)x=74;else{g=g+-65536|0;a[i>>0]=-19;a[i+1>>0]=g>>>16&15|160;a[i+2>>0]=g>>>10&63|128;a[i+3>>0]=-19;a[i+4>>0]=g>>>6&15|176;a[i+5>>0]=g&63|128;g=6}}while(0);if((x|0)==74){x=0;a[i>>0]=g>>>12&15|224;a[i+1>>0]=g>>>6&63|128;a[i+2>>0]=g&63|128;g=3}i=i+g|0;if(h>>>0<t>>>0)g=h;else{f=i;break b}}Jn(b,278562,100663629,278596)}else f=v;while(0);if(!u){g=e+6|0;do if(a[g>>0]|0)if(!(a[e+8>>0]|0)){a[f>>0]=-17;a[f+1>>0]=-65;a[f+2>>0]=-67;y=f+3|0;break}else Jn(b,278562,100663629,278596);else y=f;while(0);c[e>>2]=0;a[e+4>>0]=-65;a[e+5>>0]=-128;a[g>>0]=0;a[e+7>>0]=0;f=y}if((c[z>>2]|0)>>>0>=(c[w>>2]|0)>>>0)Un(b,4300);f=(v|0)==0?0:f-v|0;if((f|0)<0)Jn(b,268620,50335961,268982);else{b=Oo(b,v,f)|0;e=c[z>>2]|0;c[z>>2]=e+16;c[e>>2]=8;c[e+8>>2]=b;z=b+4|0;c[z>>2]=(c[z>>2]|0)+1;l=A;return}}function Tu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=a+68|0;f=a+64|0;d=(c[g>>2]|0)-(c[f>>2]|0)>>4;d=d>>>0>1?d+-2|0:-2147483648;gp(a,b);f=c[f>>2]|0;g=(c[g>>2]|0)-f>>4;e=((d|0)<0?g:0)+d|0;if(e>>>0>=g>>>0)jo(a,376,d);if((g|0)==1)jo(a,376,-2);d=g+-2|0;b=c[a+72>>2]|0;if(!b)b=1;else b=c[b+52>>2]&1;No(a,f+(e<<4)|0,f+(g+-1<<4)|0,c[f+(d<<4)>>2]|0,c[f+(d<<4)+4>>2]|0,+h[f+(d<<4)+8>>3],b)|0;uq(a);return}function Uu(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+68|0;h=c[b>>2]|0;if(h>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4361);c[b>>2]=h+16;if(!(c[a+72>>2]|0))Jn(a,268620,100667685,269813);d=a+64|0;e=c[d>>2]|0;f=e+-16|0;g=c[f>>2]|0;if((g&-2|0)==2)Jn(a,268620,100667685,269813);c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];if(g&8|0){h=(c[e+-8>>2]|0)+4|0;c[h>>2]=(c[h>>2]|0)+1}Eo(a,-1)|0;h=c[d>>2]|0;a=(c[b>>2]|0)-h>>4;a=a|0?h+(a+-1<<4)|0:0;a=(a|0)==0?936:a;if((c[a>>2]|0)!=8){h=0;return h|0}h=c[a+8>>2]|0;return h|0}function Vu(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+64|0;F=H;z=H+16|0;G=b+68|0;E=b+64|0;D=c[E>>2]|0;e=(c[G>>2]|0)-D>>4;e=e>>>0>1?D+(e+-2<<4)|0:0;e=(e|0)==0?936:e;if((c[e>>2]|0)!=9){D=b+304|0;D=c[D>>2]|0;D=D+44|0;D=c[D>>2]|0;D=D+28|0;In(b,2476,-2,D)}e=c[e+8>>2]|0;if(!e){D=b+304|0;D=c[D>>2]|0;D=D+44|0;D=c[D>>2]|0;D=D+28|0;In(b,2476,-2,D)}if((c[e>>2]&-134217728|0)!=1476395008){D=b+304|0;D=c[D>>2]|0;D=D+44|0;D=c[D>>2]|0;D=D+28|0;In(b,2476,-2,D)}Eo(b,-1)|0;f=c[G>>2]|0;e=c[E>>2]|0;k=f-e|0;g=k>>4;e=g|0?e+(g+-1<<4)|0:0;e=(e|0)==0?936:e;if((c[e>>2]|0)==8)x=c[e+8>>2]|0;else x=0;i=g+-2|0;if(g>>>0<=1)jo(b,300,-2);D=b+304|0;e=c[(c[D>>2]|0)+372>>2]|0;A=b+56|0;if(f>>>0>=(c[A>>2]|0)>>>0)Un(b,4153);c[G>>2]=f+16;c[f>>2]=8;c[f+8>>2]=e;f=e+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[E>>2]|0;g=(c[G>>2]|0)-f>>4;e=((k|0)<32?g:0)+i|0;if(e>>>0>=g>>>0)jo(b,376,i);ro(b,f+(e<<4)|0,f+(g+-1<<4)|0)|0;f=c[E>>2]|0;g=(c[G>>2]|0)-f>>4;e=g+-2|0;if(g>>>0<=1)jo(b,376,-2);w=f+(e<<4)|0;g=f+(g+-1<<4)|0;y=c[w>>2]|0;f=c[f+(e<<4)+8>>2]|0;QQ(w|0,w+16|0,g-w|0)|0;c[g>>2]=2;g=(c[G>>2]|0)+-16|0;c[G>>2]=g;e=g;if((y&8|0)!=0?(w=f+4|0,y=(c[w>>2]|0)+-1|0,c[w>>2]=y,(y|0)==0):0){Yn(c[b+44>>2]|0,f);e=c[G>>2]|0;g=e}y=c[E>>2]|0;e=e-y>>4;e=e|0?y+(e+-1<<4)|0:0;e=(e|0)==0?936:e;if((c[e>>2]|0)!=8)In(b,2101,-1,287721);i=c[e+8>>2]|0;if(!i)In(b,2101,-1,287721);p=z+4|0;e=p;f=e+40|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));c[z>>2]=b;m=x+28|0;u=z+8|0;c[u>>2]=m;v=z+12|0;c[v>>2]=m+(c[x+20>>2]|0);m=i+28|0;w=z+16|0;c[w>>2]=m;o=m+(c[i+20>>2]|0)|0;c[z+20>>2]=o;y=z+24|0;c[y>>2]=0;c[z+36>>2]=1e4;c[z+44>>2]=1e9;if(m>>>0>=o>>>0)ko(b,270005,282);i=m+1|0;e=a[m>>0]|0;f=e&255;do if(e<<24>>24>-1){q=0;r=f&127}else{if((e&255)<192)ko(b,270005,282);if((e&255)<224){q=1;r=f&31;break}if((e&255)<240){q=2;r=f&15;break}if((e&255)<248){q=3;r=f&7;break}if((e&255)<252){q=4;r=f&3;break}if((e&255)<254){q=5;r=f&1;break}if(e<<24>>24!=-1){q=6;r=0;break}ko(b,270005,282)}while(0);if((i+q|0)>>>0>o>>>0)ko(b,270005,282);if(!q)k=r;else{k=q;e=r;while(1){f=i+1|0;e=a[i>>0]&63|e<<6;if((k|0)>1){i=f;k=k+-1|0}else{i=f;k=e;break}}}c[p>>2]=k;if(!(i>>>0>=m>>>0&i>>>0<o>>>0))ko(b,270005,282);f=i+1|0;e=a[i>>0]|0;i=e&255;do if(e<<24>>24>-1){j=0;t=i&127}else{if((e&255)<192)ko(b,270005,282);if((e&255)<224){j=1;t=i&31;break}if((e&255)<240){j=2;t=i&15;break}if((e&255)<248){j=3;t=i&7;break}if((e&255)<252){j=4;t=i&3;break}if((e&255)<254){j=5;t=i&1;break}if(e<<24>>24!=-1){j=6;t=0;break}ko(b,270005,282)}while(0);if((f+j|0)>>>0>o>>>0)ko(b,270005,282);if(!j)e=t;else{e=t;while(1){i=f+1|0;e=a[f>>0]&63|e<<6;if((j|0)>1){f=i;j=j+-1|0}else{f=i;break}}}p=z+28|0;c[p>>2]=e;c[w>>2]=f;m=k&1|d;e=e<<2;if(g>>>0>=(c[A>>2]|0)>>>0)Un(b,5237);if(e>>>0>2147483646)Jn(b,268620,50336889,268576);q=b+44|0;e=ap(c[q>>2]|0,e,0,F)|0;if(!e)Mn(b,268620,5246);g=c[G>>2]|0;c[g>>2]=10;c[g+8>>2]=e;g=e+4|0;c[g>>2]=(c[g>>2]|0)+1;g=c[G>>2]|0;j=g+16|0;c[G>>2]=j;e=c[E>>2]|0;k=j-e|0;f=k>>4;e=f|0?e+(f+-1<<4)|0:0;e=(e|0)==0?936:e;do if((c[e>>2]|0)==10){e=c[e+8>>2]|0;if(!(c[e>>2]&128)){e=e+24|0;break}else{e=c[e+20>>2]|0;break}}else e=0;while(0);c[y>>2]=e;i=f+-4|0;if(f>>>0<=3)jo(b,300,-4);e=c[(c[D>>2]|0)+188>>2]|0;if(j>>>0>=(c[A>>2]|0)>>>0)Un(b,4153);c[G>>2]=g+32;c[j>>2]=8;c[g+24>>2]=e;f=e+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[E>>2]|0;g=(c[G>>2]|0)-f>>4;e=((k|0)<64?g:0)+i|0;if(e>>>0>=g>>>0)jo(b,376,i);ro(b,f+(e<<4)|0,f+(g+-1<<4)|0)|0;f=c[E>>2]|0;g=(c[G>>2]|0)-f>>4;e=g+-2|0;if(g>>>0<=1)jo(b,376,-2);r=f+(e<<4)|0;t=f+(g+-1<<4)|0;d=c[r>>2]|0;e=c[f+(e<<4)+8>>2]|0;QQ(r|0,r+16|0,t-r|0)|0;c[t>>2]=2;c[G>>2]=(c[G>>2]|0)+-16;do if(d&8|0){t=e+4|0;d=(c[t>>2]|0)+-1|0;c[t>>2]=d;if(d|0)break;Yn(c[q>>2]|0,e)}while(0);Wq(b,-1);f=c[G>>2]|0;d=c[E>>2]|0;e=f-d>>4;e=e|0?d+(e+-1<<4)|0:0;e=(e|0)==0?936:e;if(!(c[e>>2]|0))n=+h[e+8>>3];else n=s;j=f+-16|0;c[G>>2]=j;c[j>>2]=2;j=(m|0)!=0;do if(j){if(n<0.0){o=138;break}if(n>+((Po(x)|0)>>>0)){o=138;break}e=~~n>>>0;o=86}else{e=0;o=86}while(0);a:do if((o|0)==86){f=c[u>>2]|0;f=f+(cq(b,x,e)|0)|0;b:do if(!(Wu(z,c[w>>2]|0,f)|0)){while(1){e=e+1|0;if(e>>>0>(Po(x)|0)>>>0){o=138;break a}g=c[v>>2]|0;if(!(f>>>0<g>>>0?f>>>0>=(c[u>>2]|0)>>>0:0))break;do{f=f+1|0;if(f>>>0>=g>>>0)break}while((a[f>>0]&-64)<<24>>24==-128);if(Wu(z,c[w>>2]|0,f)|0){B=e;break b}}ko(b,278648,101)}else B=e;while(0);g=vo(b,48)|0;e=c[q>>2]|0;c[g>>2]=272679041;e=e+24|0;f=c[e>>2]|0;if(f|0)c[f+12>>2]=g;c[g+12>>2]=0;c[g+8>>2]=f;c[e>>2]=g;e=c[b+132>>2]|0;c[g+20>>2]=e;if(e|0){z=e+4|0;c[z>>2]=(c[z>>2]|0)+1}e=c[G>>2]|0;c[e>>2]=9;c[e+8>>2]=g;e=g+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[G>>2]|0;f=e+16|0;c[G>>2]=f;if(f>>>0>=(c[A>>2]|0)>>>0)Un(b,4274);x=e+32|0;c[G>>2]=x;c[f>>2]=0;h[e+24>>3]=+(B>>>0);z=c[E>>2]|0;e=x-z>>4;e=e>>>0>1?z+(e+-2<<4)|0:0;e=(e|0)==0?936:e;if((c[e>>2]|0)!=9)In(b,2130,-2,268963);e=c[e+8>>2]|0;if(!e)In(b,2130,-2,268963);fo(b,e,c[(c[D>>2]|0)+196>>2]|0,7);e=c[G>>2]|0;if(e>>>0>=(c[A>>2]|0)>>>0)Un(b,1093);f=c[E>>2]|0;g=e-f>>4;if(g>>>0<=3)jo(b,376,-4);z=f+(g+-4<<4)|0;c[G>>2]=e+16;c[e>>2]=c[z>>2];c[e+4>>2]=c[z+4>>2];c[e+8>>2]=c[z+8>>2];c[e+12>>2]=c[z+12>>2];if(c[e>>2]&8|0){z=(c[e+8>>2]|0)+4|0;c[z>>2]=(c[z>>2]|0)+1}z=c[E>>2]|0;e=(c[G>>2]|0)-z>>4;e=e>>>0>1?z+(e+-2<<4)|0:0;e=(e|0)==0?936:e;if((c[e>>2]|0)!=9)In(b,2130,-2,268963);e=c[e+8>>2]|0;if(!e)In(b,2130,-2,268963);fo(b,e,c[(c[D>>2]|0)+412>>2]|0,7);c:do if(c[p>>2]|0){e=0;i=0;d:while(1){f=c[y>>2]|0;g=c[f+(i<<2)>>2]|0;do if(!g)o=120;else{f=c[f+((i|1)<<2)>>2]|0;if((f|0)==0|f>>>0<g>>>0){o=120;break}f=f-g|0;if((c[G>>2]|0)>>>0>=(c[A>>2]|0)>>>0){o=115;break d}if((f|0)<0){o=117;break d}z=Oo(b,g,f)|0;x=c[G>>2]|0;c[G>>2]=x+16;c[x>>2]=8;c[x+8>>2]=z;z=z+4|0;c[z>>2]=(c[z>>2]|0)+1;if(i|0)break;e=(Bo(b,-1)|0)+B|0}while(0);if((o|0)==120){o=0;f=c[G>>2]|0;if(f>>>0>=(c[A>>2]|0)>>>0){o=121;break}c[G>>2]=f+16}mq(b,-2,i>>>1);i=i+2|0;if(i>>>0>=(c[p>>2]|0)>>>0){C=e;break c}}if((o|0)==115)Un(b,4300);else if((o|0)==117)Jn(b,268620,50335961,268982);else if((o|0)==121)Un(b,4162)}else C=0;while(0);if(!j)break;i=c[G>>2]|0;f=c[A>>2]|0;if(i>>>0>=f>>>0)Un(b,4274);g=i+16|0;c[G>>2]=g;c[i>>2]=0;h[i+8>>3]=+(C>>>0);k=g-(c[E>>2]|0)|0;C=k>>4;m=C+-6|0;if(C>>>0<=5)jo(b,300,-6);e=c[(c[D>>2]|0)+188>>2]|0;if(g>>>0>=f>>>0)Un(b,4153);c[G>>2]=i+32;c[g>>2]=8;c[i+24>>2]=e;i=e+4|0;c[i>>2]=(c[i>>2]|0)+1;i=c[E>>2]|0;j=(c[G>>2]|0)-i>>4;g=((k|0)<96?j:0)+m|0;if(g>>>0>=j>>>0)jo(b,376,m);if((j|0)==1)jo(b,376,-2);f=j+-2|0;e=c[b+72>>2]|0;if(!e)e=1;else e=c[e+52>>2]&1;No(b,i+(g<<4)|0,i+(j+-1<<4)|0,c[i+(f<<4)>>2]|0,c[i+(f<<4)+4>>2]|0,+h[i+(f<<4)+8>>3],e)|0;uq(b)}while(0);if((o|0)==138){i=c[G>>2]|0;f=c[A>>2]|0;if(i>>>0>=f>>>0)Un(b,4175);e=i+16|0;c[G>>2]=e;c[i>>2]=3;if(e>>>0>=f>>>0)Un(b,4244);g=i+32|0;c[G>>2]=g;c[e>>2]=0;h[i+24>>3]=0.0;k=g-(c[E>>2]|0)|0;C=k>>4;m=C+-6|0;if(C>>>0<=5)jo(b,300,-6);e=c[(c[D>>2]|0)+188>>2]|0;if(g>>>0>=f>>>0)Un(b,4153);c[G>>2]=i+48;c[g>>2]=8;c[i+40>>2]=e;i=e+4|0;c[i>>2]=(c[i>>2]|0)+1;i=c[E>>2]|0;j=(c[G>>2]|0)-i>>4;g=((k|0)<96?j:0)+m|0;if(g>>>0>=j>>>0)jo(b,376,m);if((j|0)==1)jo(b,376,-2);f=j+-2|0;e=c[b+72>>2]|0;if(!e)e=1;else e=c[e+52>>2]&1;No(b,i+(g<<4)|0,i+(j+-1<<4)|0,c[i+(f<<4)>>2]|0,c[i+(f<<4)+4>>2]|0,+h[i+(f<<4)+8>>3],e)|0;uq(b)}i=c[G>>2]|0;e=c[E>>2]|0;f=i-e>>4;if(f>>>0<=4)jo(b,376,-5);g=e+(f+-5<<4)|0;e=e+(f+-1<<4)|0;f=e-g|0;if(!f)f=i;else{c[F>>2]=c[e>>2];c[F+4>>2]=c[e+4>>2];c[F+8>>2]=c[e+8>>2];c[F+12>>2]=c[e+12>>2];QQ(g+16|0,g|0,f|0)|0;c[g>>2]=c[F>>2];c[g+4>>2]=c[F+4>>2];c[g+8>>2]=c[F+8>>2];c[g+12>>2]=c[F+12>>2];f=c[G>>2]|0}b=f+-16|0;F=c[b>>2]|0;e=c[f+-8>>2]|0;c[b>>2]=2;do if(F&8|0){b=e+4|0;F=(c[b>>2]|0)+-1|0;c[b>>2]=F;if(F|0)break;bo(c[q>>2]|0,e)}while(0);b=f+-32|0;F=c[b>>2]|0;e=c[f+-24>>2]|0;c[b>>2]=2;do if(F&8|0){b=e+4|0;F=(c[b>>2]|0)+-1|0;c[b>>2]=F;if(F|0)break;bo(c[q>>2]|0,e)}while(0);b=f+-48|0;F=c[b>>2]|0;e=c[f+-40>>2]|0;c[b>>2]=2;do if(F&8|0){b=e+4|0;F=(c[b>>2]|0)+-1|0;c[b>>2]=F;if(F|0)break;bo(c[q>>2]|0,e)}while(0);b=f+-64|0;F=c[b>>2]|0;e=c[f+-56>>2]|0;c[b>>2]=2;do if(F&8|0){b=e+4|0;F=(c[b>>2]|0)+-1|0;c[b>>2]=F;if(F|0)break;bo(c[q>>2]|0,e)}while(0);c[G>>2]=f+-64;e=c[q>>2]|0;if(!(c[e+32>>2]|0)){l=H;return}Tn(e);l=H;return}
|
|
function WJ(a,e,f,g,h,i,j){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+16|0;n=y+3|0;o=y+2|0;p=y+1|0;k=y;if((h|0)==(f|0)){k=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0,h)|0)<<1)|0;m=(j|0)!=0;if((e|0)>(g|0)){k=k+(g<<1)|0;k=m?k:k+2|0;g=0-g|0}else{k=k+(e<<1)|0;e=0-e|0}e=g+e+(m&1)|0;if(!e){l=y;return}g=i&65535;while(1){e=e+-1|0;b[k>>1]=g;if(!e)break;else k=k+2|0}l=y;return}if((e|0)==(g|0)){n=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;k=c[a+20>>2]|0;m=(j|0)!=0;if((h|0)<(f|0)){k=k+((O(n,h)|0)<<1)+(e<<1)|0;k=m?k:k+(n<<1)|0;g=0-h|0;e=f}else{k=k+((O(n,f)|0)<<1)+(e<<1)|0;g=h;e=0-f|0}e=g+e+(m&1)|0;if(!e){l=y;return}g=i&65535;while(1){e=e+-1|0;b[k>>1]=g;if(!e)break;else k=k+(n<<1)|0}l=y;return}w=e-g|0;m=f-h|0;if((((w|0)<0?0-w|0:w)|0)==(((m|0)<0?0-m|0:m)|0)){n=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;k=c[a+20>>2]|0;if((h|0)<(f|0)){k=k+((O(n,h)|0)<<1)+(g<<1)|0;n=n+((g|0)>(e|0)?-1:1)|0;k=(j|0)==0?k+(n<<1)|0:k}else{k=k+((O(n,f)|0)<<1)+(e<<1)|0;m=h-f|0;n=n+((e|0)>(g|0)?-1:1)|0}e=m+((j|0)!=0&1)|0;if(!e){l=y;return}g=i&65535;while(1){e=e+-1|0;b[k>>1]=g;if(!e)break;else k=k+(n<<1)|0}l=y;return}m=c[a+4>>2]|0;zJ(i,m,n,o,p,k);k=c[m+12>>2]|0;o=g-e|0;p=h-f|0;o=(o|0)<0?0-o|0:o;p=(p|0)<0?0-p|0:p;m=(o|0)>=(p|0);a:do if((k|0)<63488){switch(k|0){case 31744:break;default:{x=35;break a}}if(m){v=p<<1;n=0;m=1;k=p-o|0;w=v;v=v-o|0}else{v=o<<1;n=1;m=0;k=o-p|0;w=v;v=v-p|0;o=p}u=k<<1;t=(e|0)>(g|0);s=t?0-m|0:m;t=t?-1:1;q=(h|0)<(f|0);r=q?0-n|0:n;q=q?-1:1;j=o+((j|0)!=0&1)|0;if((j|0)>0){p=i&65535;h=c[a+20>>2]|0;o=c[a+16>>2]|0;n=f;m=0;k=v;while(1){b[h+(O(o,n)|0)+(e<<1)>>1]=p;g=(k|0)<0;m=m+1|0;if((m|0)>=(j|0))break;else{n=n+(g?r:q)|0;e=(g?s:t)+e|0;k=(g?w:u)+k|0}}}}else{switch(k|0){case 63488:break;default:{x=35;break a}}if(m){v=p<<1;n=0;m=1;k=p-o|0;w=v;v=v-o|0}else{v=o<<1;n=1;m=0;k=o-p|0;w=v;v=v-p|0;o=p}u=k<<1;t=(e|0)>(g|0);s=t?0-m|0:m;t=t?-1:1;q=(h|0)<(f|0);r=q?0-n|0:n;q=q?-1:1;j=o+((j|0)!=0&1)|0;if((j|0)>0){p=i&65535;h=c[a+20>>2]|0;o=c[a+16>>2]|0;n=f;m=0;k=v;while(1){b[h+(O(o,n)|0)+(e<<1)>>1]=p;g=(k|0)<0;m=m+1|0;if((m|0)>=(j|0))break;else{n=n+(g?r:q)|0;e=(g?s:t)+e|0;k=(g?w:u)+k|0}}}}while(0);if((x|0)==35){if(m){v=p<<1;n=0;m=1;k=p-o|0;w=v;v=v-o|0}else{v=o<<1;n=1;m=0;k=o-p|0;w=v;v=v-p|0;o=p}u=k<<1;t=(e|0)>(g|0);s=t?0-m|0:m;t=t?-1:1;q=(h|0)<(f|0);r=q?0-n|0:n;q=q?-1:1;j=o+((j|0)!=0&1)|0;if((j|0)>0){p=i&65535;h=c[a+20>>2]|0;o=c[a+16>>2]|0;n=f;m=0;k=v;while(1){b[h+(O(o,n)|0)+(e<<1)>>1]=p;g=(k|0)<0;m=m+1|0;if((m|0)>=(j|0))break;else{n=n+(g?r:q)|0;e=(g?s:t)+e|0;k=(g?w:u)+k|0}}}}l=y;return}function XJ(b,e,f,g,h,i,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;if((h|0)==(f|0)){v=(e|0)>(g|0);b=(c[b+20>>2]|0)+(O((c[b+16>>2]|0)/(d[(c[b+4>>2]|0)+9>>0]|0|0)|0,h)|0)|0;u=(j|0)!=0;t=b+g|0;RQ((v?(u?t:t+1|0):b+e|0)|0,i&255|0,(u&1)+(v?e-g|0:g-e|0)|0)|0;return}if((e|0)==(g|0)){m=(c[b+16>>2]|0)/(d[(c[b+4>>2]|0)+9>>0]|0|0)|0;k=c[b+20>>2]|0;l=(j|0)!=0;if((h|0)<(f|0)){k=k+(O(m,h)|0)+e|0;k=l?k:k+m|0;h=0-h|0}else{k=k+(O(m,f)|0)+e|0;f=0-f|0}f=h+f+(l&1)|0;if(!f)return;h=i&255;while(1){f=f+-1|0;a[k>>0]=h;if(!f)break;else k=k+m|0}return}v=e-g|0;l=f-h|0;if((((v|0)<0?0-v|0:v)|0)==(((l|0)<0?0-l|0:l)|0)){m=(c[b+16>>2]|0)/(d[(c[b+4>>2]|0)+9>>0]|0|0)|0;k=c[b+20>>2]|0;if((h|0)<(f|0)){k=k+(O(m,h)|0)+g|0;e=m+((g|0)>(e|0)?-1:1)|0;f=l;k=(j|0)==0?k+e|0:k;l=e}else{k=k+(O(m,f)|0)+e|0;f=h-f|0;l=m+((e|0)>(g|0)?-1:1)|0}f=f+((j|0)!=0&1)|0;if(!f)return;h=i&255;while(1){f=f+-1|0;a[k>>0]=h;if(!f)break;else k=k+l|0}return}else{k=g-e|0;k=(k|0)<0?0-k|0:k;l=h-f|0;l=(l|0)<0?0-l|0:l;if((k|0)<(l|0)){u=k<<1;o=1;n=0;m=k-l|0;v=u;u=u-l|0;k=l}else{u=l<<1;o=0;n=1;m=l-k|0;v=u;u=u-k|0}t=m<<1;s=(e|0)>(g|0);r=s?0-n|0:n;s=s?-1:1;p=(h|0)<(f|0);q=p?0-o|0:o;p=p?-1:1;j=k+((j|0)!=0&1)|0;if((j|0)<=0)return;o=i&255;g=b+20|0;n=b+16|0;l=e;m=0;k=u;while(1){a[(c[g>>2]|0)+(O(c[n>>2]|0,f)|0)+l>>0]=o;h=(k|0)<0;m=m+1|0;if((m|0)>=(j|0))break;else{f=f+(h?q:p)|0;l=(h?r:s)+l|0;k=(h?v:t)+k|0}}return}}function YJ(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+16|0;m=w+3|0;n=w+2|0;o=w+1|0;k=w;if((g|0)==(e|0)){j=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0,g)|0)<<2)|0;k=(i|0)!=0;if((b|0)>(f|0)){j=j+(f<<2)|0;j=k?j:j+4|0;f=0-f|0;e=b}else{j=j+(b<<2)|0;e=0-b|0}e=f+e+(k&1)|0;if(!e){l=w;return}while(1){e=e+-1|0;c[j>>2]=h;if(!e)break;else j=j+4|0}l=w;return}if((b|0)==(f|0)){m=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;j=c[a+20>>2]|0;k=(i|0)!=0;if((g|0)<(e|0)){j=j+((O(m,g)|0)<<2)+(b<<2)|0;j=k?j:j+(m<<2)|0;f=0-g|0}else{j=j+((O(m,e)|0)<<2)+(b<<2)|0;f=g;e=0-e|0}e=f+e+(k&1)|0;if(!e){l=w;return}while(1){e=e+-1|0;c[j>>2]=h;if(!e)break;else j=j+(m<<2)|0}l=w;return}v=b-f|0;j=e-g|0;if((((v|0)<0?0-v|0:v)|0)==(((j|0)<0?0-j|0:j)|0)){m=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;k=c[a+20>>2]|0;if((g|0)<(e|0)){e=k+((O(m,g)|0)<<2)+(f<<2)|0;f=m+((f|0)>(b|0)?-1:1)|0;e=(i|0)==0?e+(f<<2)|0:e}else{a=k+((O(m,e)|0)<<2)+(b<<2)|0;j=g-e|0;e=a;f=m+((b|0)>(f|0)?-1:1)|0}j=j+((i|0)!=0&1)|0;if(!j){l=w;return}while(1){j=j+-1|0;c[e>>2]=h;if(!j)break;else e=e+(f<<2)|0}l=w;return}p=c[a+4>>2]|0;zJ(h,p,m,n,o,k);n=f-b|0;o=g-e|0;n=(n|0)<0?0-n|0:n;o=(o|0)<0?0-o|0:o;j=(n|0)>=(o|0);do if((c[p+12>>2]|0)==16711680)if(!(c[p+24>>2]|0)){if(j){u=o<<1;m=0;k=1;j=o-n|0;v=u;u=u-n|0}else{u=n<<1;m=1;k=0;j=n-o|0;v=u;u=u-o|0;n=o}t=j<<1;s=(b|0)>(f|0);r=s?0-k|0:k;s=s?-1:1;g=(g|0)<(e|0);q=g?0-m|0:m;g=g?-1:1;o=n+((i|0)!=0&1)|0;if((o|0)<=0)break;p=c[a+20>>2]|0;n=a+16|0;k=b;m=0;j=u;while(1){c[p+(O(c[n>>2]|0,e)|0)+(k<<2)>>2]=h;f=(j|0)<0;m=m+1|0;if((m|0)>=(o|0))break;else{e=e+(f?q:g)|0;k=(f?r:s)+k|0;j=(f?v:t)+j|0}}}else{if(j){u=o<<1;m=0;k=1;j=o-n|0;v=u;u=u-n|0}else{u=n<<1;m=1;k=0;j=n-o|0;v=u;u=u-o|0;n=o}t=j<<1;s=(b|0)>(f|0);r=s?0-k|0:k;s=s?-1:1;g=(g|0)<(e|0);q=g?0-m|0:m;g=g?-1:1;o=n+((i|0)!=0&1)|0;if((o|0)<=0)break;p=c[a+20>>2]|0;n=a+16|0;k=b;m=0;j=u;while(1){c[p+(O(c[n>>2]|0,e)|0)+(k<<2)>>2]=h;f=(j|0)<0;m=m+1|0;if((m|0)>=(o|0))break;else{e=e+(f?q:g)|0;k=(f?r:s)+k|0;j=(f?v:t)+j|0}}}else{if(j){u=o<<1;m=0;k=1;j=o-n|0;v=u;u=u-n|0}else{u=n<<1;m=1;k=0;j=n-o|0;v=u;u=u-o|0;n=o}t=j<<1;s=(b|0)>(f|0);r=s?0-k|0:k;s=s?-1:1;g=(g|0)<(e|0);q=g?0-m|0:m;g=g?-1:1;o=n+((i|0)!=0&1)|0;if((o|0)>0){p=c[a+20>>2]|0;n=a+16|0;k=b;m=0;j=u;while(1){c[p+(O(c[n>>2]|0,e)|0)+(k<<2)>>2]=h;f=(j|0)<0;m=m+1|0;if((m|0)>=(o|0))break;else{e=e+(f?q:g)|0;k=(f?r:s)+k|0;j=(f?v:t)+j|0}}}}while(0);l=w;return}function ZJ(){return 1}function _J(a){a=a|0;var b=0;b=l;l=l+16|0;a=eN(688)|0;if(!a){mE(294869,b);a=0;l=b;return a|0}if(c[a+-4>>2]&3|0)RQ(a|0,0,688)|0;$J(296420,308570);c[a+4>>2]=417;c[a+8>>2]=250;c[a+28>>2]=28;c[a+204>>2]=251;c[a+32>>2]=32;c[a+40>>2]=176;c[a+52>>2]=177;c[a+128>>2]=178;c[a+112>>2]=20;c[a+132>>2]=21;c[a+136>>2]=14;c[a+140>>2]=179;c[a+164>>2]=33;c[a+168>>2]=34;c[a+172>>2]=252;c[a+176>>2]=35;c[a+180>>2]=29;c[a+188>>2]=36;c[a+192>>2]=418;c[a+196>>2]=180;c[a+200>>2]=181;c[a+184>>2]=21;c[a+684>>2]=253;l=b;return a|0}function $J(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;if(!((b|0)!=0&(d|0)!=0))return;if(a[b>>0]|0?Df(b|0)|0:0)return;e=c[80024]|0;a:do if(e|0){while(1){if(!(JN(b,c[e>>2]|0)|0))break;e=c[e+16>>2]|0;if(!e)break a}h=e+8|0;if((c[h>>2]|0)>>>0>1)return;i=e+4|0;f=c[i>>2]|0;if(f){if(JN(f,d)|0)g=9}else{f=0;g=9}if((g|0)==9){e=c[e+12>>2]|0;if(!e)e=f;else{g=e;e=f;do{f=g;g=c[g+8>>2]|0;Eg[c[f>>2]&63](c[f+4>>2]|0,b,e,d);e=c[i>>2]|0}while((g|0)!=0)}fN(e);c[i>>2]=nP(d)|0}c[h>>2]=1;return}while(0);e=eN(20)|0;if(!e)return;c[e>>2]=nP(b)|0;c[e+4>>2]=nP(d)|0;c[e+8>>2]=1;c[e+12>>2]=0;c[e+16>>2]=c[80024];c[80024]=e;return}function aK(b){b=b|0;var d=0,e=0,f=0,g=0;f=l;l=l+32|0;e=f;d=f+12|0;c[d>>2]=370546692;c[d+4>>2]=Eb(8)|0;c[d+8>>2]=Eb(9)|0;c[d+12>>2]=0;c[d+16>>2]=0;if((QK(d)|0)<0){e=-1;l=f;return e|0};c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;RK(c[b+268>>2]|0,d);c[80026]=30;c[80028]=419;c[80030]=254;c[80031]=21;c[80027]=420;c[80033]=421;b=eN(8)|0;do if(!b){mE(294869,f+8|0);b=0}else{if(c[b+-4>>2]&3|0){d=b;g=d;a[g>>0]=0;a[g+1>>0]=0;a[g+2>>0]=0;a[g+3>>0]=0;d=d+4|0;a[d>>0]=0;a[d+1>>0]=0;a[d+2>>0]=0;a[d+3>>0]=0}d=eN(8)|0;if(!d){mE(294869,e);fN(b);b=0;break}if(c[d+-4>>2]&3|0){g=d;e=g;a[e>>0]=0;a[e+1>>0]=0;a[e+2>>0]=0;a[e+3>>0]=0;g=g+4|0;a[g>>0]=0;a[g+1>>0]=0;a[g+2>>0]=0;a[g+3>>0]=0}c[d>>2]=298664;c[d+4>>2]=0;c[b+4>>2]=d}while(0);c[80050]=b;if(c[80051]|0){g=0;l=f;return g|0}if(!b)b=0;else c[80051]=b;d=c[80028]|0;e=(d|0)==0;if((b|0)!=0&(c[80052]|0)!=0&(c[80045]|0)==0){if(e){g=0;l=f;return g|0}gg[d&511](b)|0;g=0;l=f;return g|0}else{if(e){g=0;l=f;return g|0}gg[d&511](0)|0;g=0;l=f;return g|0}return 0}function bK(a){a=a|0;var b=0,d=0;d=c[80050]|0;if(d|0){b=d+4|0;a=c[b>>2]|0;if(a|0){if(c[a+4>>2]|0){fN(c[a>>2]|0);a=c[b>>2]|0}fN(a)}fN(d)}c[80050]=0;c[80026]=0;c[80028]=0;c[80030]=0;c[80031]=0;c[80027]=0;c[80033]=0;return}function cK(a,b,c){a=a|0;b=b|0;c=c|0;return 0}function dK(a){a=a|0;return}function eK(b,d){b=b|0;d=d|0;var e=0,f=0,i=0,j=0.0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0.0;w=l;l=l+48|0;u=w+40|0;t=w+32|0;s=w+24|0;q=w+8|0;r=w;v=eN(40)|0;if(!v){mE(294869,w+16|0);v=-1;l=w;return v|0}if(c[v+-4>>2]&3|0){e=v;f=e+40|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(f|0))}m=d+48|0;if(!(c[m>>2]&8192))j=1.0;else j=+Ob();n=v+12|0;g[n>>2]=j;o=d+24|0;x=+A(+(j*+(c[o>>2]|0)));p=d+28|0;j=+A(+(+(c[p>>2]|0)*j));ef(~~x|0,~~j|0);Pb(0,q|0,r|0)|0;k=+h[q>>3];if(+A(+k)!=x)f=1;else f=+A(+(+h[r>>3]))!=j;e=f&1;i=v+16|0;c[i>>2]=e;if(!((c[m>>2]&32|0)==0|f^1)){x=+g[n>>2];ef(~~(k*x)|0,~~(+h[r>>3]*x)|0);HI(d,5,~~+h[q>>3],~~+h[r>>3]);e=c[i>>2]|0}if((e|0)==0?+g[n>>2]!=1.0:0)ff(0,+(+(c[o>>2]|0)),+(+(c[p>>2]|0)))|0;if(c[m>>2]&2|0){a:do if(!(c[b+676>>2]|0)){f=c[80021]|0;if(!f){mE(288511,s);v=-1;l=w;return v|0}e=c[f+388>>2]|0;do if(!e){e=c[f+164>>2]|0;if(!e){mE(294785,t);v=-1;l=w;return v|0}e=hg[e&63](f,0)|0;i=c[80021]|0;if(!e){f=i;e=c[i+388>>2]|0;break}f=c[i+172>>2]|0;if(f|0)vg[f&511](i);if((e|0)<0)e=-1;else break a;l=w;return e|0}while(0);c[f+388>>2]=e+1}while(0);b=AK(b,0)|0;c[v>>2]=b;if(!b){mE(298460,u);v=-1;l=w;return v|0}}c[v+4>>2]=d;c[d+144>>2]=v;e=c[80037]|0;do if((e|0)!=(d|0)){if(e|0)HI(e,11,0,0);c[80037]=d;HI(d,10,0,0);e=(c[80037]|0)==0?c[80050]|0:c[80051]|0;f=c[80028]|0;i=(f|0)==0;if((e|0)!=0&(c[80052]|0)!=0&(c[80045]|0)==0){if(i)break;gg[f&511](e)|0;break}else{if(i)break;gg[f&511](0)|0;break}}while(0);BK(d);tf(298272,v|0,0,31)|0;qf(298272,v|0,0,32)|0;uf(298280,v|0,0,32)|0;rf(298272,v|0,0,33)|0;sf(298272,v|0,0,33)|0;Bf(298272,v|0,0,34)|0;gf(298290,v|0,0,35)|0;df(298290,v|0,0,35)|0;zf(298272,v|0,0,36)|0;xf(298272,v|0,0,36)|0;yf(298272,v|0,0,36)|0;wf(298272,v|0,0,36)|0;e=Df(298298)|0;f=c[80024]|0;b:do if(f){while(1){if(!(JN(298298,c[f>>2]|0)|0))break;f=c[f+16>>2]|0;if(!f)break b}if(e|0?(c[f+8>>2]|0)!=2:0)break;e=c[f+4>>2]|0}while(0);d=e|0?e:298290;lf(d|0,v|0,0,37)|0;nf(d|0,v|0,0,37)|0;mf(d|0,v|0,0,38)|0;hf(298280,v|0,0,39)|0;vf(298290,v|0,0,40)|0;Af(v|0,0,41)|0;v=0;l=w;return v|0}function fK(a,b){a=a|0;b=b|0;Fb(10,c[b+8>>2]|0)|0;return}function gK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,h=0;h=c[b+144>>2]|0;if(!h)return;if(!(c[b+48>>2]&8192)){e=h+12|0;d=e;f=+g[e>>2]}else{f=+Ob();d=h+12|0;g[d>>2]=f}e=b+24|0;a=b+28|0;ef(~~(+(c[e>>2]|0)*f)|0,~~(f*+(c[a>>2]|0))|0);if(c[h+16>>2]|0)return;if(!(+g[d>>2]!=1.0))return;ff(0,+(+(c[e>>2]|0)),+(+(c[a>>2]|0)))|0;return}function hK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=b+144|0;f=c[e>>2]|0;if(!f)return;tf(298272,0,0,0)|0;qf(298272,0,0,0)|0;uf(298280,0,0,0)|0;rf(298272,0,0,0)|0;sf(298272,0,0,0)|0;Bf(298272,0,0,0)|0;gf(298290,0,0,0)|0;df(298290,0,0,0)|0;zf(298272,0,0,0)|0;xf(298272,0,0,0)|0;yf(298272,0,0,0)|0;wf(298272,0,0,0)|0;b=Df(298298)|0;d=c[80024]|0;a:do if(d){while(1){if(!(JN(298298,c[d>>2]|0)|0))break;d=c[d+16>>2]|0;if(!d)break a}if(b|0?(c[d+8>>2]|0)!=2:0)break;b=c[d+4>>2]|0}while(0);d=b|0?b:298290;lf(d|0,0,0,0)|0;nf(d|0,0,0,0)|0;mf(d|0,0,0,0)|0;hf(298280,0,0,0)|0;vf(298290,0,0,0)|0;Af(0,0,0)|0;d=c[f>>2]|0;if(d|0){b=c[a+676>>2]|0;if(b|0)hg[c[b+52>>2]&63](c[b+8>>2]|0,d)|0;c[f>>2]=0}fN(c[e>>2]|0);c[e>>2]=0;return}function iK(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=l;l=l+32|0;d=g;f=c[b+144>>2]|0;if(!f){l=g;return}if(!e){Mb()|0;l=g;return}a=b+48|0;h=c[a>>2]|0;b=h&4097;e=(b|0)==4097;c[d>>2]=e?1:2;c[d+4>>2]=e?(h>>>13&1)+1|0:0;c[d+8>>2]=0;c[d+12>>2]=42;c[d+16>>2]=f;c[f+20>>2]=b;c[f+24>>2]=e&1;if((bf(0,1,d|0)|0)>>>0>1)c[a>>2]=c[a>>2]&-4098;l=g;return}function jK(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+32|0;i=k+16|0;g=k+8|0;j=(c[b+144>>2]|0)+8|0;ME(c[j>>2]|0);a=c[80021]|0;do if(a)if((c[b>>2]|0)==(a+280|0)){h=c[b+24>>2]|0;a=c[b+28>>2]|0;break}else{mE(307733,g);h=0;a=0;break}else{mE(288511,k);h=0;a=0}while(0);g=xJ(32,255,65280,16711680,0)|0;if(!g){mE(295660,i);f=-1;l=k;return f|0}a=yJ(h,a,g)|0;if(!a){f=-1;l=k;return f|0}c[j>>2]=a;c[d>>2]=374740996;c[e>>2]=c[a+20>>2];c[f>>2]=c[a+16>>2];f=0;l=k;return f|0}function kK(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;d=l;l=l+16|0;a=c[(c[b+144>>2]|0)+8>>2]|0;if(!a){mE(296772,d);b=-1;l=d;return b|0}else{Hb(11,c[a+8>>2]|0,c[a+12>>2]|0,c[a+20>>2]|0)|0;b=0;l=d;return b|0}return 0}function lK(a,b){a=a|0;b=b|0;b=(c[b+144>>2]|0)+8|0;ME(c[b>>2]|0);c[b>>2]=0;return}function mK(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+32|0;i=j+16|0;h=j+8|0;e=eN(88)|0;if(!e){c[b+676>>2]=0;mE(294869,j);d=-1;l=j;return d|0}if(c[e+-4>>2]&3|0){f=e;g=f+88|0;do{a[f>>0]=0;f=f+1|0}while((f|0)<(g|0))}f=b+676|0;c[f>>2]=e;c[e+20>>2]=422;c[e+24>>2]=43;c[e+28>>2]=423;c[e+32>>2]=424;c[e+36>>2]=22;c[e+72>>2]=15;c[e+40>>2]=16;c[e+44>>2]=37;c[e+48>>2]=17;c[e+52>>2]=38;c[e+56>>2]=18;c[e+60>>2]=39;c[e+64>>2]=40;c[e+76>>2]=425;c[e+80>>2]=5;c[e+84>>2]=426;e=ub(0)|0;f=c[f>>2]|0;c[f+8>>2]=e;if(!e){mE(296721,h);d=-1;l=j;return d|0}if((ig[c[f+24>>2]&63](e,0,0)|0)!=1){mE(296747,i);d=-1;l=j;return d|0}c[b+388>>2]=1;e=b+392|0;if(!d){a[e>>0]=0;d=0;l=j;return d|0}else{i=WO(d)|0;i=i>>>0<254?i:254;PQ(e|0,d|0,i|0)|0;a[b+392+i>>0]=0;d=0;l=j;return d|0}return 0}function nK(b,d){b=b|0;d=d|0;var e=0,f=0;f=b+676|0;b=c[f>>2]|0;e=c[b+32>>2]|0;do if(e){b=gg[e&511](d)|0;if(!b){b=c[f>>2]|0;break}else{d=b;return d|0}}while(0);b=yK(c[b>>2]|0,d)|0;if(b|0){d=b;return d|0}if((WO(d)|0)>>>0>=1023){d=0;return d|0}a[333995]=95;e=WO(d)|0;e=e>>>0<1021?e:1021;PQ(333996,d|0,e|0)|0;a[333996+e>>0]=0;d=yK(c[c[f>>2]>>2]|0,333995)|0;return d|0}function oK(a){a=a|0;var b=0,d=0;d=a+676|0;a=c[d>>2]|0;if(!a)return;b=c[a+8>>2]|0;if(b){gg[c[a+28>>2]&511](b)|0;a=c[d>>2]|0;c[a+8>>2]=0}b=c[a+4>>2]|0;if(b){kb(b|0)|0;a=c[d>>2]|0;c[a+4>>2]=0}b=c[a>>2]|0;if(b){kb(b|0)|0;a=c[d>>2]|0;c[a>>2]=0}fN(a);c[d>>2]=0;return}function pK(a,b){a=a|0;b=b|0;return xK(a,c[c[b+144>>2]>>2]|0)|0}function qK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+32|0;e=h+16|0;g=h+8|0;f=h;if(!((b|0)!=0&(d|0)!=0)){b=c[a+676>>2]|0;if(!b){mE(296509,e);g=-1;l=h;return g|0}else{jg[c[b+56>>2]&31](c[b+8>>2]|0,0,0,0)|0;g=0;l=h;return g|0}}e=c[c[b+144>>2]>>2]|0;b=c[a+676>>2]|0;if(!b){mE(296509,f);g=-1;l=h;return g|0}a=c[b+56>>2]|0;b=c[b+8>>2]|0;if(!e){jg[a&31](b,0,0,0)|0;g=0;l=h;return g|0}if(jg[a&31](b,e,e,d)|0){g=0;l=h;return g|0}mE(296532,g);g=-1;l=h;return g|0}function rK(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+16|0;a=a+676|0;d=c[a>>2]|0;if(!d){mE(296453,e);b=-1;l=e;return b|0}if((hg[c[d+64>>2]&63](c[d+8>>2]|0,b)|0)==1){c[(c[a>>2]|0)+16>>2]=b;b=0;l=e;return b|0}else{mE(296473,e+8|0);b=-1;l=e;return b|0}return 0}function sK(a){a=a|0;var b=0;b=l;l=l+16|0;a=c[a+676>>2]|0;if(!a){mE(296453,b);a=0;l=b;return a|0}else{a=c[a+16>>2]|0;l=b;return a|0}return 0}function tK(a,b){a=a|0;b=b|0;a=c[a+676>>2]|0;hg[c[a+60>>2]&63](c[a+8>>2]|0,c[c[b+144>>2]>>2]|0)|0;return}function uK(a,b){a=a|0;b=b|0;var d=0;Ff(17664);a=a+676|0;d=c[a>>2]|0;if((b|0)==0|(d|0)==0)return;jg[c[d+56>>2]&31](c[d+8>>2]|0,0,0,0)|0;d=c[a>>2]|0;hg[c[d+44>>2]&63](c[d+8>>2]|0,b)|0;return}function vK(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;a=c[b+144>>2]|0;if(!a)return;if(d|0)c[d>>2]=~~(+(c[b+24>>2]|0)*+g[a+12>>2]);if(!e)return;c[e>>2]=~~(+(c[b+28>>2]|0)*+g[a+12>>2]);return}function wK(a){a=a|0;fN(a);return}function xK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+128|0;v=w+32|0;t=w+24|0;s=w+16|0;q=w+8|0;e=w;h=w+112|0;i=w+104|0;j=w+96|0;r=w+36|0;o=c[a+368>>2]|0;p=c[a+356>>2]|0;m=c[a+360>>2]|0;n=(o|0)==4;u=a+676|0;if(!(c[u>>2]|0)){v=0;l=w;return v|0}a:do if(c[a+372>>2]|0){d=c[80021]|0;if(!d){mE(288511,e);e=0;break}k=c[d+664>>2]|0;c[j>>2]=0;g=c[j>>2]|0;c[j>>2]=1;if(g|0){d=h+4|0;e=i+4|0;do{c[h>>2]=0;c[d>>2]=0;f=0;g=0;while(1){c[8240]=0;c[i>>2]=f;c[e>>2]=g;g=(Qf(i|0,h|0)|0)!=0;if(!(g&(c[8240]|0)==4))break;f=c[h>>2]|0;g=c[d>>2]|0}g=c[j>>2]|0;c[j>>2]=1}while((g|0)!=0)}c[j>>2]=0;d=c[80022]|0;if(d){while(1){if(!(c[d>>2]|0))break;d=c[d+8>>2]|0;if(!d){e=0;break a}}d=c[d+4>>2]|0;if(!((k|0)==0|(d|0)==0)?(c[d>>2]|0)>>>0>=k>>>0:0)e=c[d+4+(k+-1<<3)>>2]|0;else e=0}else e=0}else e=0;while(0);if((p|0)<3|n&(m|0)==0?(o|4|0)==4&(c[a+364>>2]|0)==0:0){if(n){c[r+4>>2]=(p|0)>1?p:1;c[r+8>>2]=12344;gg[c[(c[u>>2]|0)+84>>2]&511](12448)|0;d=12440}else{gg[c[(c[u>>2]|0)+84>>2]&511](12450)|0;d=12344}c[r>>2]=d;d=c[u>>2]|0;d=jg[c[d+40>>2]&31](c[d+8>>2]|0,c[d+12>>2]|0,e,r)|0;if(!d){mE(296635,s);v=0;l=w;return v|0}e=c[u>>2]|0;c[e+16>>2]=0;do if(e){f=c[e+56>>2]|0;e=c[e+8>>2]|0;if(!b){jg[f&31](e,0,0,0)|0;v=d;l=w;return v|0}else{if(!(jg[f&31](e,b,b,d)|0)){e=296532;break}l=w;return d|0}}else e=296509;while(0);mE(e,t);e=c[u>>2]|0;if(e|0){jg[c[e+56>>2]&31](c[e+8>>2]|0,0,0,0)|0;u=c[u>>2]|0;hg[c[u+44>>2]&63](c[u+8>>2]|0,d)|0}mE(296664,v);v=0;l=w;return v|0}mE(296567,q);v=0;l=w;return v|0}function yK(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=l;l=l+16|0;h=i;e=mb(b|0,d|0)|0;if(e|0){h=e;l=i;return h|0}e=WO(d)|0;j=e+2|0;f=l;l=l+((1*j|0)+15&-16)|0;a[f>>0]=95;g=f+1|0;k=WO(d)|0;e=e+1|0;e=k>>>0<e>>>0?k:e;if(j|0){PQ(g|0,d|0,e|0)|0;a[g+e>>0]=0}e=mb(b|0,f|0)|0;if(e|0){k=e;l=i;return k|0}k=lb()|0;c[h>>2]=d;c[h+4>>2]=k;mE(296699,h);k=0;l=i;return k|0}function zK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=l;l=l+16|0;a=e+8|0;b=e;if(!(c[d+24>>2]|0)){l=e;return 0}Pb(0,a|0,b|0)|0;HI(c[d+4>>2]|0,5,~~+h[a>>3],~~+h[b>>3]);l=e;return 0}function AK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;p=l;l=l+800|0;j=p+536|0;k=p+532|0;m=p+528|0;n=p+16|0;c[k>>2]=0;o=a+676|0;g=c[o>>2]|0;if(!g){o=0;l=p;return o|0}c[j>>2]=12324;c[j+4>>2]=c[a+292>>2];c[j+8>>2]=12323;c[j+12>>2]=c[a+296>>2];c[j+16>>2]=12322;c[j+20>>2]=c[a+300>>2];d=c[a+304>>2]|0;if(!d)d=6;else{c[j+24>>2]=12321;c[j+28>>2]=d;d=8}e=c[a+312>>2]|0;f=d|1;if(!e)e=d;else{c[j+(d<<2)>>2]=12320;c[j+(f<<2)>>2]=e;e=f+1|0}c[j+(e<<2)>>2]=12325;d=e+2|0;c[j+(e+1<<2)>>2]=c[a+308>>2];f=c[a+316>>2]|0;if(f){c[j+(d<<2)>>2]=12326;c[j+(e+3<<2)>>2]=f;d=e+4|0}e=c[a+344>>2]|0;if(e){c[j+(d<<2)>>2]=12338;c[j+(d+1<<2)>>2]=e;d=d+2|0}e=c[a+348>>2]|0;if(!e)e=d;else{c[j+(d<<2)>>2]=12337;c[j+(d+1<<2)>>2]=e;e=d+2|0}if(c[a+380>>2]|0){mE(298518,p);o=0;l=p;return o|0}c[j+(e<<2)>>2]=12352;d=c[g+84>>2]|0;if((c[a+368>>2]|0)==4){i=(c[a+356>>2]|0)>1?4:1;gg[d&511](12448)|0;d=i}else{gg[d&511](12450)|0;d=8}c[j+(e+1<<2)>>2]=d;c[j+(e+2<<2)>>2]=12344;i=c[o>>2]|0;i=(lg[c[i+36>>2]&31](c[i+8>>2]|0,j,n,128,k)|0)==0;d=c[k>>2]|0;if(i|(d|0)==0){mE(298579,p+8|0);o=0;l=p;return o|0}if((d|0)>0){d=-1;i=0;do{h=n+(i<<2)|0;a=0;e=0;do{f=c[j+(a<<2)>>2]|0;if((f|0)==12344)break;g=j+((a|1)<<2)|0;if((f+-12321|0)>>>0<6&(c[g>>2]|0)!=-1){q=c[o>>2]|0;jg[c[q+72>>2]&31](c[q+8>>2]|0,c[h>>2]|0,f,m)|0;e=(c[m>>2]|0)+e-(c[g>>2]|0)|0}a=a+2|0}while(a>>>0<63);if((d|0)==-1|(e|0)<(d|0)){c[(c[o>>2]|0)+12>>2]=c[h>>2];d=e}i=i+1|0}while(e|0?(i|0)<(c[k>>2]|0):0)}q=c[o>>2]|0;q=jg[c[q+48>>2]&31](c[q+8>>2]|0,c[q+12>>2]|0,b,0)|0;l=p;return q|0}function BK(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;f=i;d=c[80318]|0;g=(b|0)!=0;if(!(g|(d|0)==0)){d=0;do{if((a[321278+d>>0]|0)==1)NK(0,d);d=d+1|0}while((d|0)!=512);d=c[80318]|0}do if(!((d|0)==0|(d|0)==(b|0))){e=d+48|0;if(c[e>>2]&16384){d=c[80034]|0;if(d){if((gg[d&511](0)|0)!=-1)c[e>>2]=c[e>>2]&-16385}else mE(294969,f);d=c[80318]|0}HI(d,13,0,0);f=c[80058]|0;if(f|0?c[f>>2]&8|0:0)break;d=c[80021]|0;if(d|0?(h=c[d+216>>2]|0,h|0):0)vg[h&511](d)}while(0);c[80318]=b;if(!g){l=i;return}HI(b,12,0,0);h=c[80058]|0;if(h|0?c[h>>2]&8|0:0){l=i;return}d=c[80021]|0;if(!d){l=i;return}e=c[d+212>>2]|0;if(!e){l=i;return}vg[e&511](d);l=i;return}function CK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,g=0,i=0,j=0,k=0;j=l;l=l+288|0;i=j+16|0;k=j+8|0;g=j;Pb(0,k|0,g|0)|0;a=d+4|0;d=c[a>>2]|0;e=+(c[d+24>>2]|0)/+h[k>>3];f=+(c[d+28>>2]|0)/+h[g>>3];g=(Ub(i|0)|0)==0;i=g?c[i>>2]|0:0;if(!i){g=~~(e*+(c[b+60>>2]|0));d=~~(f*+(c[b+64>>2]|0));a=c[a>>2]|0;if(a){if(!(NI(a,g,d)|0)){l=j;return 0}}else a=0}else{e=+h[39646]+e*+(c[b+44>>2]|0);f=+h[39647]+f*+(c[b+48>>2]|0);g=~~e;h[39646]=e-+(g|0);d=~~f;h[39647]=f-+(d|0);a=c[a>>2]|0}OI(a,0,i,g,d)|0;l=j;return 0}function DK(a,d,e){a=a|0;d=d|0;e=e|0;d=b[d+40>>1]|0;if((d&65535)>=3){e=0;return e|0}a=(a|0)==5;OK(c[e+4>>2]|0,0,a&1,(d&255)+1<<24>>24);e=c[80055]|0;if(e|0?c[e>>2]&1<<(a&1)|0:0){e=0;return e|0}e=1;return e|0}function EK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0;j=l;l=l+288|0;k=j+16|0;e=j+8|0;i=j;f=c[b+60>>2]|0;b=c[b+64>>2]|0;g=Ub(k|0)|0;if((c[k>>2]|0)==0|(g|0)!=0){Pb(0,e|0,i|0)|0;g=c[d+4>>2]|0;e=~~(+(f|0)*(+(c[g+24>>2]|0)/+h[e>>3]));b=~~(+(b|0)*(+(c[g+28>>2]|0)/+h[i>>3]));if(!((g|0)!=0?!(NI(g,e,b)|0):0))OI(g,0,0,e,b)|0}if((a|0)==33)e=c[d+4>>2]|0;else e=0;b=c[80037]|0;do if((b|0)!=(e|0)){if(b|0)HI(b,11,0,0);c[80037]=e;if(!e)b=320200;else{HI(e,10,0,0);b=(c[80037]|0)==0?320200:320204}b=c[b>>2]|0;e=c[80028]|0;f=(e|0)==0;if((b|0)!=0&(c[80052]|0)!=0&(c[80045]|0)==0){if(f)break;gg[e&511](b)|0;break}else{if(f)break;gg[e&511](0)|0;break}}while(0);k=c[80057]|0;if(k|0?c[k>>2]&1|0:0){k=0;l=j;return k|0}k=1;l=j;return k|0}function FK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0;j=l;l=l+64|0;i=j;a=c[d+4>>2]|0;g=~~+h[b+72>>3];f=~~-+h[b+80>>3];do if(a|0?(e=c[80037]|0,(e|0)!=(a|0)):0){if(e|0)HI(e,11,0,0);c[80037]=a;HI(a,10,0,0);a=(c[80037]|0)==0?c[80050]|0:c[80051]|0;d=c[80028]|0;b=(d|0)==0;if((a|0)!=0&(c[80052]|0)!=0&(c[80045]|0)==0){if(b)break;gg[d&511](a)|0;break}else{if(b)break;gg[d&511](0)|0;break}}while(0);do if(f|g|0){e=c[80059]|0;if(e|0?c[e>>2]&8|0:0)break;c[i>>2]=1027;a=c[80037]|0;if(!a)a=0;else a=c[a+4>>2]|0;c[i+8>>2]=a;c[i+12>>2]=0;c[i+16>>2]=g;c[i+20>>2]=f;c[i+24>>2]=0;c[i+4>>2]=II()|0;a=c[80311]|0;if(a|0)do{hg[c[a>>2]&63](c[a+4>>2]|0,i)|0;a=c[a+8>>2]|0}while((a|0)!=0);if((JI(i,1,0,0,0)|0)>=1)KI(i)}while(0);i=c[80059]|0;if(i|0?c[i>>2]&8|0:0){i=0;l=j;return i|0}i=1;l=j;return i|0}function GK(b,d,e){b=b|0;d=d|0;e=e|0;if((b|0)==12){d=0;do{if((a[321278+d>>0]|0)==1)NK(0,d);d=d+1|0}while((d|0)!=512)}HI(c[e+4>>2]|0,(b|0)==13?12:13,0,0);e=c[80057]|0;if(e|0?c[e>>2]&1|0:0){e=0;return e|0}e=1;return e|0}function HK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;I=l;l=l+112|0;G=I+96|0;m=I+88|0;k=I+80|0;j=I+72|0;D=I+16|0;E=I+8|0;F=I;i=c[80960]|0;a:do if((i|0)>0){e=c[80961]|0;f=0;while(1){C=c[e+(f<<2)>>2]|0;if((c[C>>2]|0)==1&(c[C+4>>2]|0)==0)break;f=f+1|0;if((f|0)>=(i|0)){H=7;break a}}if((f|0)<=-1)H=7}else{e=c[80961]|0;H=7}while(0);if((H|0)==7){e=gN(e,(i<<2)+4|0)|0;if(!e){mE(294869,j);H=0;l=I;return H|0}c[80961]=e;f=c[80960]|0;e=eN(24)|0;c[(c[80961]|0)+(f<<2)>>2]=e;if(!e){mE(294869,k);H=0;l=I;return H|0}c[80960]=(c[80960]|0)+1;C=e;c[C>>2]=1;c[C+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;e=gN(c[80019]|0,((c[80018]|0)*8232|0)+8232|0)|0;if(!e)mE(294869,m);else{c[80019]=e;C=c[80018]|0;RQ(e+(C*8232|0)|0,0,8232)|0;B=e+(C*8232|0)|0;c[B>>2]=1;c[B+4>>2]=0;c[80018]=C+1}if((f|0)<0){H=0;l=I;return H|0}}Pb(0,E|0,F|0)|0;if((c[b>>2]|0)<=0){H=0;l=I;return H|0}B=d+28|0;C=d+32|0;s=d+4|0;t=D+8|0;u=D+16|0;v=D+24|0;w=D+28|0;x=D+32|0;y=D+36|0;z=D+40|0;A=D+4|0;r=0;e=0;do{b:do if(c[b+20+(r*52|0)+28>>2]|0){m=c[b+20+(r*52|0)>>2]|0;d=((m|0)<0)<<31>>31;p=+(c[b+20+(r*52|0)+44>>2]|0)/+h[E>>3];q=+(c[b+20+(r*52|0)+48>>2]|0)/+h[F>>3];f=(c[B>>2]|0)!=0;switch(a|0){case 22:{if(!f){c[B>>2]=1;f=C;c[f>>2]=m;c[f+4>>2]=d;f=c[s>>2]|0;i=~~p;j=~~q;if(!((f|0)!=0?!(NI(f,i,j)|0):0))OI(f,-1,0,i,j)|0;OK(c[s>>2]|0,-1,1,1)}PK(m,d,1,p,q)|0;if(e|0)break b;d=c[80062]|0;if(d|0?c[d>>2]&1|0:0){e=0;break b}e=1;break b}case 24:{do if(f?(k=C,(c[k>>2]|0)==(m|0)?(c[k+4>>2]|0)==(d|0):0):0){f=~~q;i=~~p;j=c[s>>2]|0;if(j|0?(NI(j,i,f)|0)==0:0)break;OI(j,-1,0,i,f)|0}while(0);i=c[80960]|0;c:do if((i|0)>0){j=c[80961]|0;f=0;while(1){k=c[j+(f<<2)>>2]|0;J=k;if((c[J>>2]|0)==1&(c[J+4>>2]|0)==0)break;f=f+1|0;if((f|0)>=(i|0)){H=38;break c}}if((f|0)>-1&(f|0)<(i|0)){if(k|0){j=c[k+8>>2]|0;d:do if((j|0)>0){i=c[k+16>>2]|0;f=0;while(1){k=c[i+(f<<2)>>2]|0;J=k;if((c[J>>2]|0)==(m|0)?(c[J+4>>2]|0)==(d|0):0)break;f=f+1|0;if((f|0)>=(j|0))break d}if(!((f|0)>=(j|0)|(f|0)<0|(k|0)==0)){i=k+8|0;n=p-+g[i>>2];j=k+12|0;o=q-+g[j>>2];f=k+16|0;if(!(n!=0.0|o!=0.0|1.0-+g[f>>2]!=0.0))break c;g[i>>2]=p;g[j>>2]=q;g[f>>2]=1.0;J=c[80062]|0;if(J|0?c[J>>2]&4|0:0)break c;c[D>>2]=1794;f=t;c[f>>2]=1;c[f+4>>2]=0;f=u;c[f>>2]=m;c[f+4>>2]=d;g[v>>2]=p;g[w>>2]=q;g[x>>2]=n;g[y>>2]=o;g[z>>2]=1.0;c[A>>2]=II()|0;f=c[80311]|0;if(f|0)do{hg[c[f>>2]&63](c[f+4>>2]|0,D)|0;f=c[f+8>>2]|0}while((f|0)!=0);if((JI(D,1,0,0,0)|0)>=1)KI(D);break c}}while(0);PK(m,d,1,p,q)|0}}else H=38}else H=38;while(0);if((H|0)==38){H=0;mE(298497,G)}if(e|0)break b;J=c[80062]|0;if(J|0?c[J>>2]&4|0:0){e=0;break b}e=1;break b}default:{if(f?(J=C,(c[J>>2]|0)==(m|0)?(c[J+4>>2]|0)==(d|0):0):0){OK(c[s>>2]|0,-1,0,1);c[B>>2]=0}PK(m,d,0,p,q)|0;if(e|0)break b;J=c[80062]|0;if(J|0?c[J>>2]&2|0:0){e=0;break b}e=1;break b}}}while(0);r=r+1|0}while((r|0)<(c[b>>2]|0));l=I;return e|0}function IK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;g=b+156|0;d=c[g>>2]|0;if(d>>>0<223?(e=c[27480+(d<<2)>>2]|0,e|0):0){a:do if((c[b+64>>2]|0)==2)switch(e|0){case 225:{e=229;break a}case 224:{e=228;break a}case 226:{e=230;break a}case 227:{e=231;break a}default:break a}while(0);NK((a|0)==2&1,e)}d=(a|0)==2;b=c[80058]|0;a=(b|0)==0;if(!a?(c[b>>2]&1<<((d^1)&1)|0)!=0:0)e=0;else e=1;f=e&1;if(!d)return f|0;if(a){g=c[g>>2]|0;g=g&-2;g=(g|0)==8;g=e&g;g=g&1;return g|0}if(!(c[b>>2]&8)){g=c[g>>2]|0;g=g&-2;g=(g|0)==8;g=e&g;g=g&1;return g|0}else return f|0;return 0}function JK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;i=j;h=j+56|0;b=c[d+152>>2]|0;do if(b>>>0>=128){if(b>>>0<2048){a[h>>0]=b>>>6&31|192;a[h+1>>0]=b&63|128;f=2;g=9;break}if(b>>>0<65536){a[h>>0]=b>>>12&15|224;a[h+1>>0]=b>>>6&63|128;a[h+2>>0]=b&63|128;f=3;g=9;break}if(b>>>0<1114112){a[h>>0]=b>>>18|240;a[h+1>>0]=b>>>12&63|128;a[h+2>>0]=b>>>6&63|128;a[h+3>>0]=b&63|128;f=4;g=9}}else{a[h>>0]=b;f=1;g=9}while(0);do if((g|0)==9?(a[h+f>>0]=0,g=a[h>>0]|0,!((g&255)<32|g<<24>>24==127)):0){g=c[80058]|0;if(g|0?c[g>>2]&8|0:0)break;c[i>>2]=771;b=c[80318]|0;if(!b)b=0;else b=c[b+4>>2]|0;c[i+8>>2]=b;f=i+12|0;b=WO(h)|0;b=b>>>0<31?b:31;if(!b)b=0;else{e=b+-1|0;d=a[h+e>>0]|0;a:do if((d+64&255)>=53){if(!((d&255)>191|d<<24>>24>-1|(e|0)==0)){b:do if((d&-32)<<24>>24==-64)d=2;else while(1){if((d&-16)<<24>>24==-32){d=3;break b}if((d+16&255)<5){d=4;break b}e=e+-1|0;if(!e)break a;d=a[h+e>>0]|0;if((d&-32)<<24>>24==-64){d=2;break}}while(0);b=(b-e|0)==(d|0)?b:e}}else b=e;while(0);PQ(f|0,h|0,b|0)|0}a[i+12+b>>0]=0;c[i+4>>2]=II()|0;b=c[80311]|0;if(b|0)do{hg[c[b>>2]&63](c[b+4>>2]|0,i)|0;b=c[b+8>>2]|0}while((b|0)!=0);if((JI(i,1,0,0,0)|0)>=1)KI(i)}while(0);i=c[80058]|0;if(i|0?c[i>>2]&8|0:0){i=0;l=j;return i|0}i=1;l=j;return i|0}function KK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;a=c[d+4>>2]|0;if(!(c[b>>2]|0)){d=a+48|0;c[d>>2]=c[d>>2]&-4098;return 0}else{e=d+20|0;d=a+48|0;b=c[d>>2]|c[e>>2];c[e>>2]=0;c[d>>2]=b|1;return 0}return 0}function LK(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0.0,i=0,j=0,k=0,m=0,n=0.0;m=l;l=l+16|0;i=m+8|0;j=m;k=d+4|0;b=c[k>>2]|0;a=c[b+48>>2]|0;if(a&8192){g[d+12>>2]=+Ob();b=c[k>>2]|0;a=c[b+48>>2]|0}if((a&4129|0)!=32){l=m;return 0}f=+(c[b+24>>2]|0);h[i>>3]=f;e=+(c[b+28>>2]|0);h[j>>3]=e;a=d+16|0;if(c[a>>2]|0){Pb(0,i|0,j|0)|0;f=+h[i>>3];e=+h[j>>3]}d=d+12|0;n=+g[d>>2];ef(~~(f*n)|0,~~(e*n)|0);if((c[a>>2]|0)==0?+g[d>>2]!=1.0:0)ff(0,+(+h[i>>3]),+(+h[j>>3]))|0;HI(c[k>>2]|0,5,~~+h[i>>3],~~+h[j>>3]);l=m;return 0}function MK(a,b,d){a=a|0;b=b|0;d=d|0;HI(c[d+4>>2]|0,c[b>>2]|0?2:1,0,0);return 0}function NK(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+64|0;k=m;if(!e){l=m;return}switch(d<<24>>24){case 1:{i=768;break}case 0:{i=769;break}default:{l=m;return}}f=321278+e|0;g=a[f>>0]|0;h=d<<24>>24!=0&g<<24>>24!=0;j=h&1;if(!(g<<24>>24!=d<<24>>24|h)){l=m;return}a[f>>0]=d;h=c[321792+(e<<2)>>2]|0;switch(h|0){case 1073742048:{f=64;break}case 1073742052:{f=128;break}case 1073742049:{f=1;break}case 1073742053:{f=2;break}case 1073742050:{f=256;break}case 1073742054:{f=512;break}case 1073742051:{f=1024;break}case 1073742055:{f=2048;break}case 1073742081:{f=16384;break}default:f=0}g=b[160638]|0;if((i|0)==768){switch(h|0){case 1073741907:{f=(g^4096)&65535;break}case 1073741881:{f=(g^8192)&65535;break}default:f=g&65535|f}f=f&65535}else{f=g&65535&(f^65535)&65535;g=f}b[160638]=f;f=c[80058]|0;if(f|0?c[f>>2]&1<<(i&1)|0:0){l=m;return}c[k>>2]=i;a[k+12>>0]=d;a[k+13>>0]=j;f=k+16|0;c[f>>2]=e;c[f+4>>2]=h;b[f+8>>1]=g;f=c[80318]|0;if(!f)f=0;else f=c[f+4>>2]|0;c[k+8>>2]=f;c[k+4>>2]=II()|0;f=c[80311]|0;if(f|0)do{hg[c[f>>2]&63](c[f+4>>2]|0,k)|0;f=c[f+8>>2]|0}while((f|0)!=0);if((JI(k,1,0,0,0)|0)>=1)KI(k);l=m;return}function OK(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+64|0;u=v;h=c[80044]|0;switch(e<<24>>24){case 1:{g=h|1<<(f&255)+-1;if(!b){s=1025;t=0;k=1}else{NI(b,c[80038]|0,c[80039]|0)|0;s=1025;h=c[80044]|0;t=1;k=1}break}case 0:{g=h&~(1<<(f&255)+-1);s=1026;t=(b|0)!=0;k=0;break}default:{l=v;return}}if((g|0)==(h|0)){l=v;return}c[80044]=g;o=f&255;if((o|0)>=(c[80047]|0)){j=o+1|0;h=gN(c[80048]|0,j<<4)|0;if(!h)h=1;else{c[80048]=h;g=c[80047]|0;if((g|0)<=(o|0)){h=h+(g<<4)|0;i=h+16|0;do{a[h>>0]=0;h=h+1|0}while((h|0)<(i|0));if((g|0)<(o|0))do{g=g+1|0;h=(c[80048]|0)+(g<<4)|0;i=h+16|0;do{a[h>>0]=0;h=h+1|0}while((h|0)<(i|0))}while((g|0)!=(o|0))}c[80047]=j;r=12}}else r=12;do if((r|0)==12){i=c[80048]|0;j=i+(o<<4)|0;if(!j)h=1;else{if(!k){h=a[i+(o<<4)+12>>0]|0;break}m=II()|0;n=i+(o<<4)+8|0;if(((c[n>>2]|0)-m+500|0)>=1){k=c[80038]|0;h=k-(c[j>>2]|0)|0;if((((h|0)>-1?h:0-h|0)|0)<=1?(p=c[80039]|0,q=i+(o<<4)+4|0,h=p-(c[q>>2]|0)|0,(((h|0)>-1?h:0-h|0)|0)<=1):0){h=i+(o<<4)+12|0;g=a[h>>0]|0;c[n>>2]=m;c[j>>2]=k;c[q>>2]=p;if(g<<24>>24==-1){h=-1;break}}else{h=j;g=k;r=19}}else{h=j;g=c[80038]|0;r=19}if((r|0)==19){r=i+(o<<4)+12|0;a[r>>0]=0;c[n>>2]=m;c[h>>2]=g;c[i+(o<<4)+4>>2]=c[80039];h=r;g=0}r=g+1<<24>>24;a[h>>0]=r;h=r}}while(0);r=c[80059]|0;if(!((r|0)!=0?(c[r>>2]&1<<(s&3)|0)!=0:0)){c[u>>2]=s;g=c[80037]|0;if(!g)g=0;else g=c[g+4>>2]|0;c[u+8>>2]=g;c[u+12>>2]=d;a[u+17>>0]=e;a[u+16>>0]=f;a[u+18>>0]=h;c[u+20>>2]=c[80038];c[u+24>>2]=c[80039];c[u+4>>2]=II()|0;g=c[80311]|0;if(g|0)do{hg[c[g>>2]&63](c[g+4>>2]|0,u)|0;g=c[g+8>>2]|0}while((g|0)!=0);if((JI(u,1,0,0,0)|0)>=1)KI(u)}if(!(e<<24>>24==0&t)){l=v;return}NI(b,c[80038]|0,c[80039]|0)|0;l=v;return}function PK(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=+e;f=+f;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=l;l=l+80|0;o=t+64|0;m=t+56|0;q=t;j=c[80960]|0;a:do if((j|0)>0){k=c[80961]|0;i=0;while(1){p=c[k+(i<<2)>>2]|0;r=p;if((c[r>>2]|0)==1&(c[r+4>>2]|0)==0)break;i=i+1|0;if((i|0)>=(j|0))break a}if((i|0)>-1&(i|0)<(j|0)){if(!p){b=-1;l=t;return b|0}r=p+8|0;i=c[r>>2]|0;b:do if((i|0)>0){m=c[p+16>>2]|0;j=0;while(1){k=c[m+(j<<2)>>2]|0;u=k;if((c[u>>2]|0)==(a|0)?(c[u+4>>2]|0)==(b|0):0)break;j=j+1|0;if((j|0)>=(i|0)){k=0;break b}}k=(j|0)>-1&(j|0)<(i|0)?k:0}else k=0;while(0);j=(k|0)!=0;if(d|0){if(j){u=0;l=t;return u|0}j=p+12|0;k=p+16|0;do if((i|0)==(c[j>>2]|0)){i=gN(c[k>>2]|0,(i<<2)+4|0)|0;if(i|0?(c[k>>2]=i,h=eN(24)|0,n=c[j>>2]|0,c[(c[k>>2]|0)+(n<<2)>>2]=h,h=c[k>>2]|0,c[h+(n<<2)>>2]|0):0){c[j>>2]=n+1;i=c[r>>2]|0;break}mE(294869,o);u=0;l=t;return u|0}else h=c[k>>2]|0;while(0);c[r>>2]=i+1;u=c[h+(i<<2)>>2]|0;s=u;c[s>>2]=a;c[s+4>>2]=b;g[u+8>>2]=e;g[u+12>>2]=f;g[u+16>>2]=1.0;u=c[80062]|0;if(u|0?c[u>>2]&1|0:0){u=0;l=t;return u|0}c[q>>2]=1792;h=q+8|0;c[h>>2]=1;c[h+4>>2]=0;h=q+16|0;c[h>>2]=a;c[h+4>>2]=b;g[q+24>>2]=e;g[q+28>>2]=f;g[q+32>>2]=0.0;g[q+36>>2]=0.0;g[q+40>>2]=1.0;c[q+4>>2]=II()|0;h=c[80311]|0;if(h|0)do{hg[c[h>>2]&63](c[h+4>>2]|0,q)|0;h=c[h+8>>2]|0}while((h|0)!=0);if((JI(q,1,0,0,0)|0)<1)h=0;else{KI(q);h=1}u=h;l=t;return u|0}if(!j){u=0;l=t;return u|0}u=c[80062]|0;if((u|0)!=0?(c[u>>2]&2|0)!=0:0){h=0;n=i}else{c[q>>2]=1793;h=q+8|0;c[h>>2]=1;c[h+4>>2]=0;h=q+16|0;c[h>>2]=a;c[h+4>>2]=b;c[q+24>>2]=c[k+8>>2];c[q+28>>2]=c[k+12>>2];g[q+32>>2]=0.0;g[q+36>>2]=0.0;g[q+40>>2]=1.0;c[q+4>>2]=II()|0;h=c[80311]|0;if(h|0)do{hg[c[h>>2]&63](c[h+4>>2]|0,q)|0;h=c[h+8>>2]|0}while((h|0)!=0);if((JI(q,1,0,0,0)|0)<1)h=0;else{KI(q);h=1}n=c[r>>2]|0}if((n|0)<=0){u=h;l=t;return u|0}m=p+16|0;d=c[m>>2]|0;i=0;while(1){j=d+(i<<2)|0;k=c[j>>2]|0;u=k;if((c[u>>2]|0)==(a|0)?(c[u+4>>2]|0)==(b|0):0)break;i=i+1|0;if((i|0)>=(n|0)){s=42;break}}if((s|0)==42){l=t;return h|0}if((i|0)<0){u=h;l=t;return u|0}u=n+-1|0;c[r>>2]=u;c[j>>2]=c[d+(u<<2)>>2];c[(c[m>>2]|0)+(u<<2)>>2]=k;u=h;l=t;return u|0}}while(0);mE(298497,m);u=-1;l=t;return u|0}function QK(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+128|0;j=k+88|0;d=k+64|0;e=k+40|0;f=k+16|0;g=k;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[e>>2]=0;c[e+4>>2]=0;c[e+8>>2]=0;c[e+12>>2]=0;c[e+16>>2]=0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;if(b|0){c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];c[e+16>>2]=c[b+16>>2]};c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];c[f+16>>2]=c[e+16>>2];b=c[80021]|0;b=gN(c[b+268>>2]|0,((c[b+264>>2]|0)*68|0)+68|0)|0;if(!b){mE(294869,k+80|0);j=-1;l=k;return j|0}m=c[80021]|0;h=m+264|0;i=c[h>>2]|0;c[h>>2]=i+1;h=b+(i*68|0)|0;c[h>>2]=0;n=b+(i*68|0)+4|0;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];d=b+(i*68|0)+16|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];c[d+16>>2]=c[e+16>>2];e=b+(i*68|0)+36|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[e+16>>2]=c[f+16>>2];f=b+(i*68|0)+56|0;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[b+(i*68|0)+60>>2]=m;c[m+268>>2]=b;if((i|0)<0){f=j+1|0;a[j>>0]=45;b=0-i|0;d=f;while(1){n=d;d=d+1|0;a[n>>0]=a[299800+((b>>>0)%10|0)>>0]|0;if(b>>>0<10)break;else b=(b>>>0)/10|0}a[d>>0]=0;d=WO(f)|0;b=d>>>1;if(b|0){e=f+(d+-1)|0;d=f;while(1){b=b+-1|0;n=a[d>>0]|0;a[d>>0]=a[e>>0]|0;a[e>>0]=n;if(!b)break;else{e=e+-1|0;d=d+1|0}}}}else{if(!i){a[j>>0]=48;b=j+1|0}else{d=i;e=j;while(1){b=e+1|0;a[e>>0]=a[299800+((d>>>0)%10|0)>>0]|0;if(d>>>0<10)break;else{d=(d>>>0)/10|0;e=b}}}a[b>>0]=0;b=WO(j)|0;f=b>>>1;if(f|0){d=j+(b+-1)|0;e=j;b=f;while(1){b=b+-1|0;n=a[e>>0]|0;a[e>>0]=a[d>>0]|0;a[d>>0]=n;if(!b)break;else{d=d+-1|0;e=e+1|0}}}}c[h>>2]=nP(j)|0;n=i;l=k;return n|0}function RK(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;d=a+12|0;e=c[d>>2]|0;n=a+8|0;o=c[n>>2]|0;a:do if((o|0)>0){k=b+4|0;l=b+8|0;m=b+12|0;j=0;b:while(1){i=e+(j*20|0)|0;if((i|0)==(b|0)){f=20;break}f=c[k>>2]|0;g=c[e+(j*20|0)+4>>2]|0;do if((g|0)==(f|0)){f=c[l>>2]|0;g=c[e+(j*20|0)+8>>2]|0;if((g|0)!=(f|0)){f=g-f|0;break}g=c[b>>2]|0;h=g>>>8&255;i=c[i>>2]|0;f=i>>>8&255;if((f|0)!=(h|0)){f=f-h|0;break}g=g>>>16&15;f=i>>>16&15;if((f|0)==(g|0)){f=c[m>>2]|0;g=c[e+(j*20|0)+12>>2]|0;if((g|0)==(f|0)){f=20;break b}else{f=g-f|0;break}}else{f=f-g|0;break}}else f=g-f|0;while(0);j=j+1|0;if(!f){f=20;break}if((j|0)>=(o|0))break a}if((f|0)==20)return}while(0);f=a+4|0;do if((o|0)==(c[f>>2]|0)){e=gN(e,(o*20|0)+640|0)|0;if(!e)return;else{c[d>>2]=e;c[f>>2]=(c[f>>2]|0)+32;break}}while(0);o=e+(o*20|0)|0;c[o>>2]=c[b>>2];c[o+4>>2]=c[b+4>>2];c[o+8>>2]=c[b+8>>2];c[o+12>>2]=c[b+12>>2];c[o+16>>2]=c[b+16>>2];o=(c[n>>2]|0)+1|0;c[n>>2]=o;DO(c[d>>2]|0,o,20,26);return}function SK(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;h=j+8|0;i=j;f=wJ(376840196)|0;if(!f){i=0;l=j;return i|0}g=tJ(b,f,0)|0;d=f+36|0;e=c[d>>2]|0;c[d>>2]=e+-1;if((e|0)<=1){d=c[80023]|0;a:do if((d|0)!=(f|0)){if(d|0){do{e=d+40|0;d=c[e>>2]|0;if(!d)break a}while((d|0)!=(f|0));c[e>>2]=c[f+40>>2]}}else c[80023]=c[f+40>>2];while(0);d=c[f+4>>2]|0;if(d|0?(k=d+12|0,e=c[k>>2]|0,c[k>>2]=e+-1,(e|0)<=1):0){fN(c[d+4>>2]|0);fN(d)}fN(f)}if(!g){k=0;l=j;return k|0}f=Hb(12,c[b+8>>2]|0,c[b+12>>2]|0,c[g+20>>2]|0)|0;ME(g);e=eN(8)|0;if(!e){mE(294869,h);k=0;l=j;return k|0}if(c[e+-4>>2]&3|0){k=e;h=k;a[h>>0]=0;a[h+1>>0]=0;a[h+2>>0]=0;a[h+3>>0]=0;k=k+4|0;a[k>>0]=0;a[k+1>>0]=0;a[k+2>>0]=0;a[k+3>>0]=0}d=eN(8)|0;if(!d){mE(294869,i);fN(e);k=0;l=j;return k|0}if(c[d+-4>>2]&3|0){k=d;i=k;a[i>>0]=0;a[i+1>>0]=0;a[i+2>>0]=0;a[i+3>>0]=0;k=k+4|0;a[k>>0]=0;a[k+1>>0]=0;a[k+2>>0]=0;a[k+3>>0]=0}c[d>>2]=f;c[d+4>>2]=1;c[e+4>>2]=d;k=e;l=j;return k|0}function TK(a){a=a|0;var b=0;if(!(c[80037]|0))return 0;if(a|0?(b=c[a+4>>2]|0,b|0):0){a=c[b>>2]|0;if(!a)return 0;Fb(13,a|0)|0;return 0}Eb(14)|0;return 0}function UK(a){a=a|0;var b=0,d=0;if(!a)return;d=a+4|0;b=c[d>>2]|0;if(b|0){if(c[b+4>>2]|0){fN(c[b>>2]|0);b=c[d>>2]|0}fN(b)}fN(a);return}function VK(a,b,c){a=a|0;b=b|0;c=c|0;c=l;l=l+16|0;mE(294969,c);l=c;return}function WK(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;f=h+8|0;g=h;do switch(b|0){case 0:{d=298664;break}case 1:{d=298760;break}case 2:{d=298755;break}case 3:{d=298745;break}case 4:{d=298736;break}case 5:{d=298724;break}case 6:{d=298712;break}case 7:{d=298702;break}case 8:{d=298692;break}case 9:{d=0;break}case 10:{d=298680;break}case 11:{d=298672;break}default:{g=0;l=h;return g|0}}while(0);e=eN(8)|0;if(!e){mE(294869,f);g=0;l=h;return g|0}if(c[e+-4>>2]&3|0){f=e;b=f;a[b>>0]=0;a[b+1>>0]=0;a[b+2>>0]=0;a[b+3>>0]=0;f=f+4|0;a[f>>0]=0;a[f+1>>0]=0;a[f+2>>0]=0;a[f+3>>0]=0}b=eN(8)|0;if(!b){mE(294869,g);fN(e);g=0;l=h;return g|0}if(c[b+-4>>2]&3|0){g=b;f=g;a[f>>0]=0;a[f+1>>0]=0;a[f+2>>0]=0;a[f+3>>0]=0;g=g+4|0;a[g>>0]=0;a[g+1>>0]=0;a[g+2>>0]=0;a[g+3>>0]=0}c[b>>2]=d;c[b+4>>2]=0;c[e+4>>2]=b;g=e;l=h;return g|0}function XK(a){a=a|0;if(!a){if((Nb()|0)>-1){a=0;return a|0}}else if((cf(0,1)|0)>-1){a=0;return a|0}a=-1;return a|0}function YK(a){a=a|0;var b=0,d=0,e=0;e=l;l=l+16|0;c[a+4>>2]=19;c[a+40>>2]=255;c[a+72>>2]=1;c[a+64>>2]=1;c[a+60>>2]=1;d=Eb(15)|0;if(!d){mE(300001,e);b=0}else b=(Eb(16)|0)!=0;b=b&1;c[a+68>>2]=b;c[a+76>>2]=b;l=e;return d|0}function ZK(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0,k=0,m=0,n=0.0,o=0,p=0.0,q=0,r=0;r=l;l=l+32|0;o=r+16|0;k=r+8|0;if((Fb(17,h|0)|0)<0){mE(301773,r);h=-1;l=r;return h|0}q=e+8|0;f=b[q>>1]|0;a:do if(f<<16>>16>=-28640){if(f<<16>>16<8)switch(f<<16>>16){case -28640:{j=7;m=13;break a}case -28384:{j=9;m=13;break a}default:break a}if(f<<16>>16<16)switch(f<<16>>16){case 8:{j=0;m=13;break a}default:break a}if(f<<16>>16<4112){switch(f<<16>>16){case 16:break;default:break a}j=4;m=13;break}else{switch(f<<16>>16){case 4112:break;default:break a}j=5;m=13;break}}else switch(f<<16>>16){case -32760:{j=1;m=13;break a}case -32752:{j=2;m=13;break a}case -28656:{j=3;m=13;break a}case -32736:{j=6;m=13;break a}case -32480:{j=8;m=13;break a}default:break a}while(0);b:do if((m|0)==13){f=b[37910+(j*20|0)>>1]|0;g=1;while(1){if(f<<16>>16==-32480)break;if((g|0)==10)break b;f=b[37910+(j*20|0)+(g<<1)>>1]|0;if(!(f<<16>>16))break b;else g=g+1|0}b[q>>1]=-32480;f=eN(20)|0;m=e+180|0;c[m>>2]=f;if(!f){mE(294869,o);h=-1;l=r;return h|0}g=f+20|0;do{a[f>>0]=0;f=f+1|0}while((f|0)<(g|0));g=Eb(18)|0;j=e+4|0;f=c[j>>2]|0;k=b[e+12>>1]|0;if((f|0)!=(g|0)){c:do if(k<<16>>16){p=+(g|0);n=+(f|0);i=+(k&65535)/p*n;if(!(+A(+i)==i)){f=k&65535;do{if((f|0)<=1)break c;f=f+-1|0;i=+(f|0)/p*n}while(!(+A(+i)==i))}o=~~+A(+i)>>>0;c[(c[m>>2]|0)+8>>2]=o}while(0);c[j>>2]=g}q=b[q>>1]|0;a[e+11>>0]=q<<16>>16==8?-128:0;g=d[e+10>>0]|0;f=k&65535;c[e+16>>2]=O(f,O(g,(q&65535)>>>3&31)|0)|0;if(!h){Ib(20,g|0,f|0,257,e|0)|0;h=0;l=r;return h|0}else{Ib(19,g|0,f|0,256,e|0)|0;h=0;l=r;return h|0}}while(0);mE(301805,k);h=-1;l=r;return h|0}function _K(a){a=a|0;Fb(21,c[a+144>>2]|0)|0;a=a+180|0;fN(c[c[a>>2]>>2]|0);fN(c[a>>2]|0);return}function $K(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;k=m;e=b+136|0;do{f=c[e>>2]|0;g=c[e>>2]|0;if((g|0)==(f|0))c[e>>2]=f}while((g|0)!=(f|0));if(!f){l=m;return}e=b+140|0;do{f=c[e>>2]|0;g=c[e>>2]|0;if((g|0)==(f|0))c[e>>2]=f}while((g|0)!=(f|0));if(f|0){l=m;return}j=b+28|0;if(!(c[j>>2]|0)){e=b+180|0;f=c[c[e>>2]>>2]|0;i=b+16|0;if(!f){f=eN(c[i>>2]|0)|0;c[c[e>>2]>>2]=f;if(!f){l=m;return}else{g=i;h=f;e=i}}else{g=i;h=f;e=i}}else{g=b+52|0;h=c[b+44>>2]|0;e=b+16|0}f=c[g>>2]|0;Gb(22,h|0,((c[e>>2]|0)>>>2>>>0)/((d[b+10>>0]|0)>>>0)|0|0)|0;do if(c[j>>2]|0){i=b+44|0;if(!(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)){mE(304359,k);break}k=b+48|0;k=d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24;e=b+52|0;a[e>>0]=k;a[e+1>>0]=k>>8;a[e+2>>0]=k>>16;a[e+3>>0]=k>>24;e=b+68|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(e|0){k=b+108|0;a[k>>0]=0;a[k+1>>0]=0;a[k+2>>0]=0;a[k+3>>0]=0;k=b+32|0;Bg[e&255](j,d[k>>0]|d[k+1>>0]<<8)}}while(0);Dg[c[b+20>>2]&63](c[b+24>>2]|0,h,f);l=m;return}function aL(b){b=b|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=l;l=l+16|0;x=z+8|0;j=z;h=(e[b+8>>1]|0)>>>3&31;f=b+136|0;do{i=c[f>>2]|0;g=c[f>>2]|0;if((g|0)==(i|0))c[f>>2]=i}while((g|0)!=(i|0));y=h&65535;if(!i){l=z;return}h=b+140|0;do{f=c[h>>2]|0;g=c[h>>2]|0;if((g|0)==(f|0))c[h>>2]=f}while((g|0)!=(f|0));if(f|0){l=z;return}v=b+28|0;w=b+180|0;g=c[w>>2]|0;if(c[v>>2]|0){f=c[g+8>>2]|0;if(!f){f=b+48|0;r=f;f=c[f>>2]|0}else{f=O(O(d[b+10>>0]|0,f)|0,(e[b+32>>1]|0)>>>3&31)|0;r=b+48|0;c[r>>2]=f}s=b+20|0;t=b+24|0;u=b+44|0;Dg[c[s>>2]&63](c[t>>2]|0,c[u>>2]|0,f);if(d[u>>0]|d[u+1>>0]<<8|d[u+2>>0]<<16|d[u+3>>0]<<24){g=b+48|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;f=b+52|0;a[f>>0]=g;a[f+1>>0]=g>>8;a[f+2>>0]=g>>16;a[f+3>>0]=g>>24;g=b+68|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;if(!g)p=f;else{p=b+108|0;a[p>>0]=0;a[p+1>>0]=0;a[p+2>>0]=0;a[p+3>>0]=0;p=b+32|0;Bg[g&255](v,d[p>>0]|d[p+1>>0]<<8);p=f}}else{mE(304359,j);p=b+52|0}f=c[p>>2]|0;q=b+16|0;g=c[q>>2]|0;if((f|0)==(g|0))g=c[u>>2]|0;else{h=c[w>>2]|0;if(!(c[h>>2]|0)){o=(g>>>0>f>>>0?g:f)<<1;c[h+4>>2]=o;o=eN(o)|0;h=c[w>>2]|0;c[h>>2]=o}k=b+48|0;m=b+68|0;n=b+108|0;o=b+32|0;while(1){g=c[h+12>>2]|0;f=c[p>>2]|0;i=c[h+4>>2]|0;if((f+g|0)>>>0>i>>>0){j=c[h+16>>2]|0;if(g>>>0>j>>>0){h=c[h>>2]|0;QQ(h|0,h+j|0,i-j|0)|0;h=c[w>>2]|0;f=c[p>>2]|0;g=(c[h+12>>2]|0)-(c[h+16>>2]|0)|0}else g=0;c[h+12>>2]=g;c[h+16>>2]=0}PQ((c[h>>2]|0)+g|0,c[u>>2]|0,f|0)|0;i=c[w>>2]|0;g=i+12|0;j=(c[g>>2]|0)+(c[p>>2]|0)|0;c[g>>2]=j;g=i+16|0;h=c[g>>2]|0;f=c[q>>2]|0;if((j-h|0)>>>0>=f>>>0)break;Dg[c[s>>2]&63](c[t>>2]|0,c[u>>2]|0,c[r>>2]|0);if(d[u>>0]|d[u+1>>0]<<8|d[u+2>>0]<<16|d[u+3>>0]<<24){f=d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24;a[p>>0]=f;a[p+1>>0]=f>>8;a[p+2>>0]=f>>16;a[p+3>>0]=f>>24;f=d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24;if(f|0){a[n>>0]=0;a[n+1>>0]=0;a[n+2>>0]=0;a[n+3>>0]=0;Bg[f&255](v,d[o>>0]|d[o+1>>0]<<8)}}else mE(304359,x);h=c[w>>2]|0}x=(c[i>>2]|0)+h|0;c[g>>2]=h+f;g=x}}else{f=c[g>>2]|0;if(!f){f=c[b+16>>2]|0;c[g+4>>2]=f;f=eN(f)|0;g=c[w>>2]|0;c[g>>2]=f}Dg[c[b+20>>2]&63](c[b+24>>2]|0,f,c[g+4>>2]|0);f=c[w>>2]|0;g=c[f>>2]|0;f=c[f+4>>2]|0}if(!g){l=z;return}Gb(23,g|0,((f|0)/(y|0)|0|0)/(d[b+10>>0]|0|0)|0|0)|0;l=z;return}function bL(){var a=0;a=Df(306961)|0;if(a|0?(JN(a,305716)|0)==0:0){a=1;return a|0}a=0;return a|0}function cL(a){a=a|0;var b=0;b=l;l=l+16|0;a=eN(688)|0;if(!a){mE(294869,b);a=0;l=b;return a|0}if(c[a+-4>>2]&3|0)RQ(a|0,0,688)|0;c[a+4>>2]=427;c[a+8>>2]=258;c[a+28>>2]=44;c[a+204>>2]=259;c[a+132>>2]=23;c[a+136>>2]=20;c[a+140>>2]=182;c[a+684>>2]=260;l=b;return a|0}function dL(a){a=a|0;var b=0,d=0;d=l;l=l+32|0;b=d;c[b>>2]=370546692;c[b+4>>2]=1024;c[b+8>>2]=768;c[b+12>>2]=0;c[b+16>>2]=0;if((QK(b)|0)<0){b=-1;l=d;return b|0};c[b>>2]=0;c[b+4>>2]=0;c[b+8>>2]=0;c[b+12>>2]=0;c[b+16>>2]=0;RK(c[a+268>>2]|0,b);b=0;l=d;return b|0}function eL(a){a=a|0;return}function fL(a,b,c){a=a|0;b=b|0;c=c|0;return 0}function gL(a){a=a|0;return}function hL(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;j=l;l=l+32|0;i=j+16|0;g=j+8|0;ME(mL(b,305236)|0);a=c[80021]|0;do if(!a){mE(288511,j);a=0;g=0}else{if(b|0?(c[b>>2]|0)==(a+280|0):0){a=c[b+24>>2]|0;g=c[b+28>>2]|0;break}mE(307733,g);a=0;g=0}while(0);h=xJ(32,16711680,65280,255,0)|0;if(!h){mE(295660,i);f=-1;l=j;return f|0}a=yJ(a,g,h)|0;if(!a){f=-1;l=j;return f|0}lL(b,305236,a)|0;c[d>>2]=370546692;c[e>>2]=c[a+20>>2];c[f>>2]=c[a+16>>2];f=0;l=j;return f|0}function iL(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;H=l;l=l+256|0;E=H+120|0;D=H+112|0;C=H+104|0;x=H+96|0;w=H+88|0;k=H+80|0;i=H+72|0;F=H+24|0;g=H+16|0;n=H+124|0;h=H+128|0;G=mL(f,305236)|0;if(!G){mE(305259,H);I=-1;l=H;return I|0}if(!(Df(305298)|0)){I=0;l=H;return I|0}e=c[80021]|0;do if(!e){mE(288511,H+8|0);e=0}else{if(f|0?(c[f>>2]|0)==(e+280|0):0){e=c[f+4>>2]|0;break}mE(307733,g);e=0}while(0);B=(c[80962]|0)+1|0;c[80962]=B;c[F>>2]=e;c[F+4>>2]=B;EI(h,128,305326,F)|0;B=nL(h,305619)|0;b[n>>1]=19778;if(B|0){e=c[G+4>>2]|0;g=a[e+8>>0]|0;h=g&255;do if((g&255)>7){if((c[e+24>>2]|0)==0?(c[(c[G+52>>2]|0)+68>>2]&256|0)==0:0){j=15;break}JE(F,372645892)|0;f=1;e=1;j=23}else j=15;while(0);do if((j|0)==15){if(c[e+4>>2]|0){if(g<<24>>24==8){v=G;f=0;m=0;j=28;break}c[i>>2]=h;mE(305349,i);break}if(((g<<24>>24==24?(c[e+12>>2]|0)==16711680:0)?(c[e+16>>2]|0)==65280:0)?(c[e+20>>2]|0)==255:0){v=G;f=0;m=0;j=28;break}JE(F,390076419)|0;f=0;e=0;j=23}while(0);if((j|0)==23){g=tJ(G,F,0)|0;h=(g|0)==0;if(h){c[k>>2]=d[F+8>>0];mE(305380,k)}if(e)e=MI(305413,0)|0;else e=0;if(!h){v=g;m=e;j=28}}if((j|0)==28){u=v+28|0;e=c[u>>2]|0;if(!e)if(!(c[v>>2]&2))e=0;else{LE(v,1);c[v>>2]=c[v>>2]|2;e=c[u>>2]|0}c[u>>2]=e+1;g=v+8|0;k=v+4|0;p=O(d[(c[k>>2]|0)+9>>0]|0,c[g>>2]|0)|0;q=B+4|0;r=jg[c[q>>2]&31](B,0,0,1)|0;s=z;c[79098]=0;t=B+12|0;jg[c[t>>2]&31](B,n,2,1)|0;c[F>>2]=0;jg[c[t>>2]&31](B,F,4,1)|0;b[F>>1]=0;jg[c[t>>2]&31](B,F,2,1)|0;b[F>>1]=0;jg[c[t>>2]&31](B,F,2,1)|0;c[F>>2]=0;jg[c[t>>2]&31](B,F,4,1)|0;g=c[g>>2]|0;n=v+12|0;h=c[n>>2]|0;e=c[k>>2]|0;i=d[e+8>>0]|0;o=v+16|0;j=O(c[o>>2]|0,h)|0;e=c[e+4>>2]|0;if(!e)e=0;else e=c[e>>2]|0;m=(m|0)!=0|(f|0)==0;c[F>>2]=m?40:108;jg[c[t>>2]&31](B,F,4,1)|0;c[F>>2]=g;jg[c[t>>2]&31](B,F,4,1)|0;c[F>>2]=h;jg[c[t>>2]&31](B,F,4,1)|0;b[F>>1]=1;jg[c[t>>2]&31](B,F,2,1)|0;b[F>>1]=i;jg[c[t>>2]&31](B,F,2,1)|0;c[F>>2]=m?0:3;jg[c[t>>2]&31](B,F,4,1)|0;c[F>>2]=j;jg[c[t>>2]&31](B,F,4,1)|0;c[F>>2]=0;jg[c[t>>2]&31](B,F,4,1)|0;c[F>>2]=0;jg[c[t>>2]&31](B,F,4,1)|0;c[F>>2]=e;jg[c[t>>2]&31](B,F,4,1)|0;c[F>>2]=0;jg[c[t>>2]&31](B,F,4,1)|0;if(!m){c[F>>2]=16711680;jg[c[t>>2]&31](B,F,4,1)|0;c[F>>2]=65280;jg[c[t>>2]&31](B,F,4,1)|0;c[F>>2]=255;jg[c[t>>2]&31](B,F,4,1)|0;c[F>>2]=-16777216;jg[c[t>>2]&31](B,F,4,1)|0;c[F>>2]=1466527264;jg[c[t>>2]&31](B,F,4,1)|0;c[F>>2]=0;jg[c[t>>2]&31](B,F,4,1)|0;c[F>>2]=0;jg[c[t>>2]&31](B,F,4,1)|0;c[F>>2]=0;jg[c[t>>2]&31](B,F,4,1)|0;c[F>>2]=0;jg[c[t>>2]&31](B,F,4,1)|0;c[F>>2]=0;jg[c[t>>2]&31](B,F,4,1)|0;c[F>>2]=0;jg[c[t>>2]&31](B,F,4,1)|0;c[F>>2]=0;jg[c[t>>2]&31](B,F,4,1)|0;c[F>>2]=0;jg[c[t>>2]&31](B,F,4,1)|0;c[F>>2]=0;jg[c[t>>2]&31](B,F,4,1)|0;c[F>>2]=0;jg[c[t>>2]&31](B,F,4,1)|0;c[F>>2]=0;jg[c[t>>2]&31](B,F,4,1)|0;c[F>>2]=0;jg[c[t>>2]&31](B,F,4,1)|0}e=c[(c[k>>2]|0)+4>>2]|0;if(e|0?(y=c[e+4>>2]|0,A=c[e>>2]|0,(A|0)>0):0){e=0;do{jg[c[t>>2]&31](B,y+(e<<2)+2|0,1,1)|0;jg[c[t>>2]&31](B,y+(e<<2)+1|0,1,1)|0;jg[c[t>>2]&31](B,y+(e<<2)|0,1,1)|0;jg[c[t>>2]&31](B,y+(e<<2)+3|0,1,1)|0;e=e+1|0}while((e|0)!=(A|0))}e=jg[c[q>>2]&31](B,0,0,1)|0;e=zQ(e|0,z|0,r|0,s|0)|0;y=c[q>>2]|0;A=yQ(r|0,s|0,10,0)|0;jg[y&31](B,A,z,0)|0;if((z|0)<0)mE(294941,w);c[F>>2]=e;jg[c[t>>2]&31](B,F,4,1)|0;y=c[q>>2]|0;A=yQ(e|0,0,r|0,s|0)|0;jg[y&31](B,A,z,0)|0;if((z|0)<0)mE(294941,x);f=v+20|0;g=c[o>>2]|0;A=O(g,c[n>>2]|0)|0;e=(c[f>>2]|0)+A|0;h=(p|0)%4|0;h=(h|0)==0?0:4-h|0;a:do if((A|0)>0){b:do if(!h){e=e+(0-g)|0;if((jg[c[t>>2]&31](B,e,1,p)|0)==(p|0))do{if(e>>>0<=(c[f>>2]|0)>>>0)break a;e=e+(0-(c[o>>2]|0))|0}while((jg[c[t>>2]&31](B,e,1,p)|0)==(p|0))}else{e=e+(0-g)|0;g=(jg[c[t>>2]&31](B,e,1,p)|0)==(p|0);if((h|0)<=0){if(!g)break;while(1){if(e>>>0<=(c[f>>2]|0)>>>0)break a;e=e+(0-(c[o>>2]|0))|0;if((jg[c[t>>2]&31](B,e,1,p)|0)!=(p|0))break b}}if(g)do{a[F>>0]=0;g=0;do{jg[c[t>>2]&31](B,F,1,1)|0;g=g+1|0}while((g|0)!=(h|0));if(e>>>0<=(c[f>>2]|0)>>>0)break a;e=e+(0-(c[o>>2]|0))|0}while((jg[c[t>>2]&31](B,e,1,p)|0)==(p|0))}while(0);mE(294913,C)}while(0);e=jg[c[q>>2]&31](B,0,0,1)|0;e=zQ(e|0,z|0,r|0,s|0)|0;A=c[q>>2]|0;C=yQ(r|0,s|0,2,0)|0;jg[A&31](B,C,z,0)|0;if((z|0)<0)mE(294941,D);c[F>>2]=e;jg[c[t>>2]&31](B,F,4,1)|0;D=c[q>>2]|0;F=yQ(e|0,0,r|0,s|0)|0;jg[D&31](B,F,z,0)|0;if((z|0)<0)mE(294941,E);e=c[u>>2]|0;if((e|0?(c[u>>2]=e+-1,(e|0)<=1):0)?(I=c[v>>2]|0,I&2|0):0){c[v>>2]=I&-3;PE(v)|0}if((v|0)!=(G|0))ME(v)}gg[c[B+16>>2]&511](B)|0;lE()}I=0;l=H;return I|0}function jL(a,b){a=a|0;b=b|0;ME(lL(b,305236,0)|0);return}function kL(a){a=a|0;fN(a);return}function lL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+32|0;h=j+16|0;g=j+8|0;f=c[80021]|0;if(!f){mE(288511,j);e=0;l=j;return e|0}if(b|0?(c[b>>2]|0)==(f+280|0):0){if(d|0?a[d>>0]|0:0){i=b+140|0;b=c[i>>2]|0;a:do if(b|0){h=0;while(1){f=c[b>>2]|0;if(f|0?(JN(f,d)|0)==0:0)break;f=c[b+8>>2]|0;if(!f)break a;else{h=b;b=f}}f=b+4|0;g=c[f>>2]|0;if(!e){c[(h|0?h+8|0:i)>>2]=c[b+8>>2];fN(c[b>>2]|0);fN(b);e=g;l=j;return e|0}else{c[f>>2]=e;e=g;l=j;return e|0}}while(0);if(!e){e=0;l=j;return e|0}h=eN(12)|0;c[h>>2]=nP(d)|0;c[h+4>>2]=e;c[h+8>>2]=c[i>>2];c[i>>2]=h;e=0;l=j;return e|0}c[h>>2]=305254;mE(310091,h);e=0;l=j;return e|0}mE(307733,g);e=0;l=j;return e|0}function mL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+16|0;f=h+8|0;e=c[80021]|0;a:do if(!e){mE(288511,h);b=0}else{if(b|0?(c[b>>2]|0)==(e+280|0):0){if(d|0?a[d>>0]|0:0){b=c[b+140>>2]|0;if(!b){b=0;break}while(1){e=c[b>>2]|0;if(e|0?(JN(e,d)|0)==0:0)break;b=c[b+8>>2]|0;if(!b){b=0;break a}}b=c[b+4>>2]|0;break}c[g>>2]=305254;mE(310091,g);b=0;break}mE(307733,f);b=0}while(0);l=h;return b|0}function nL(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+32|0;g=h+16|0;f=h+8|0;e=h;if((b|0?(d|0)!=0&(a[b>>0]|0)!=0:0)?a[d>>0]|0:0){e=oP(b,d)|0;if(!e){c[f>>2]=b;mE(305487,f);g=0;l=h;return g|0}d=eN(36)|0;if(!d){mE(294869,g);g=d;l=h;return g|0}else{c[d>>2]=428;c[d+4>>2]=21;c[d+8>>2]=22;c[d+12>>2]=23;c[d+16>>2]=429;c[d+28>>2]=e;c[d+24>>2]=1;c[d+20>>2]=2;g=d;l=h;return g|0}}mE(305440,e);g=0;l=h;return g|0}function oL(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;b=a+4|0;d=jg[c[b>>2]&31](a,0,0,1)|0;e=z;if((e|0)<0){d=-1;e=-1;z=d;return e|0}f=jg[c[b>>2]&31](a,0,0,2)|0;g=z;jg[c[b>>2]&31](a,d,e,0)|0;d=g;e=f;z=d;return e|0}function pL(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=l;l=l+16|0;d=a+28|0;if(!(KP(c[d>>2]|0,b,e)|0)){e=fQ(c[d>>2]|0)|0;b=((e|0)<0)<<31>>31;z=b;l=f;return e|0}else{mE(294941,f);b=-1;e=-1;z=b;l=f;return e|0}return 0}function qL(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;f=a+28|0;a=iQ(b,d,e,c[f>>2]|0)|0;if((a|0)==0?zP(c[f>>2]|0)|0:0)mE(294883,g);l=h;return a|0}function rL(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=l;l=l+16|0;g=h;f=a+28|0;a=jP(b,d,e,c[f>>2]|0)|0;if((a|0)==0?zP(c[f>>2]|0)|0:0)mE(294913,g);l=h;return a|0}function sL(a){a=a|0;var b=0,d=0;d=l;l=l+16|0;b=d;if(!a){a=0;l=d;return a|0}if((c[a+24>>2]|0)!=0?(uP(c[a+28>>2]|0)|0)!=0:0){mE(294913,b);b=-1}else b=0;fN(a);a=b;l=d;return a|0}function tL(a){a=a|0;c[a+4>>2]=24;c[a+12>>2]=261;c[a+16>>2]=262;c[a+24>>2]=430;c[a+28>>2]=45;c[a+32>>2]=263;c[a+40>>2]=264;c[a>>2]=2;c[a+80>>2]=1;c[a+68>>2]=1;return 1}function uL(b,d,f,g){b=b|0;d=d|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;m=n+16|0;k=n+8|0;d=d|0?0:f;j=(g|0)!=0;if(!d){d=Df((j?305559:305579)|0)|0;d=(d|0)==0?(j?305530:305546):d}h=Df(305597)|0;f=eN(12)|0;i=b+180|0;c[i>>2]=f;if(!f){mE(294869,n);m=-1;l=n;return m|0}g=f+12|0;do{a[f>>0]=0;f=f+1|0}while((f|0)<(g|0));if(!h)f=((e[b+12>>1]|0)*1e3|0)/(c[b+4>>2]|0)|0;else f=sQ(h)|0;c[(c[i>>2]|0)+4>>2]=f;h=nL(d,j?305616:305619)|0;c[c[i>>2]>>2]=h;if(!h){m=-1;l=n;return m|0}do if(!j){f=b+16|0;g=eN(c[f>>2]|0)|0;c[(c[i>>2]|0)+8>>2]=g;if(g|0){RQ(g|0,a[b+11>>0]|0,c[f>>2]|0)|0;break}mE(294869,k);m=-1;l=n;return m|0}while(0);c[m>>2]=j?305622:305635;c[m+4>>2]=d;JP(0,305646,m);m=0;l=n;return m|0}function vL(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;f=h+8|0;g=h;e=c[(c[a+180>>2]|0)+4>>2]|0;d=(e>>>0)/1e3|0;c[f>>2]=d;e=((e>>>0)%1e3|0)*1e6|0;a=f+4|0;c[a>>2]=e;b=g+4|0;while(1){c[8240]=0;c[g>>2]=d;c[b>>2]=e;e=(Qf(g|0,f|0)|0)!=0;if(!(e&(c[8240]|0)==4))break;d=c[f>>2]|0;e=c[a>>2]|0}l=h;return}function wL(a){a=a|0;var b=0,d=0,e=0;d=c[a+180>>2]|0;e=c[d>>2]|0;b=a+16|0;d=jg[c[e+12>>2]&31](e,c[d+8>>2]|0,1,c[b>>2]|0)|0;if((d|0)==(c[b>>2]|0))return;DL(a);return}function xL(a){a=a|0;return c[(c[a+180>>2]|0)+8>>2]|0}function yL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;j=n+8|0;k=n;m=c[b+180>>2]|0;i=c[m+4>>2]|0;h=(i>>>0)/1e3|0;c[j>>2]=h;i=((i>>>0)%1e3|0)*1e6|0;f=j+4|0;c[f>>2]=i;g=k+4|0;while(1){c[8240]=0;c[k>>2]=h;c[g>>2]=i;i=(Qf(k|0,j|0)|0)!=0;if(!(i&(c[8240]|0)==4))break;h=c[j>>2]|0;i=c[f>>2]|0}f=c[m>>2]|0;if(f){k=jg[c[f+8>>2]&31](f,d,1,e)|0;f=e-k|0;d=d+k|0;if((f|0)>0){k=c[m>>2]|0;gg[c[k+16>>2]&511](k)|0;c[m>>2]=0}}else f=e;RQ(d|0,a[b+11>>0]|0,f|0)|0;l=n;return e|0}function zL(a){a=a|0;return}function AL(a){a=a|0;var b=0,d=0;d=a+180|0;a=c[d>>2]|0;b=c[a>>2]|0;if(b){gg[c[b+16>>2]&511](b)|0;a=c[d>>2]|0}fN(c[a+8>>2]|0);fN(c[d>>2]|0);return}function BL(){CL(0,306872,1);CL(1,306899,2);return}function CL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+64|0;i=j;g=WO(d)|0;h=eN(g+9|0)|0;f=(h|0)==0;if(!b){if(f){l=j;return}c[h>>2]=e;e=h+8|0;f=WO(d)|0;f=f>>>0<g>>>0?f:g;if((g|0)==-1){g=323956;e=323964;f=323964}else{PQ(e|0,d|0,f|0)|0;a[e+f>>0]=0;g=323956;e=323964;f=323964}}else{if(f){l=j;return}c[h>>2]=e;f=h+8|0;e=WO(d)|0;e=e>>>0<g>>>0?e:g;if((g|0)==-1){g=323960;e=323968;f=323968}else{PQ(f|0,d|0,e|0)|0;a[f+e>>0]=0;g=323960;e=323968;f=323968}}c[h+4>>2]=c[f>>2];c[e>>2]=h;d=c[g>>2]|0;c[g>>2]=d+1;if((d|0)==-1){l=j;return}h=c[80072]|0;if(h|0?c[h>>2]&1|0:0){l=j;return}e=i;f=e+56|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));c[i>>2]=4352;c[i+8>>2]=d;a[i+12>>0]=b;c[i+4>>2]=II()|0;e=c[80311]|0;if(e|0)do{hg[c[e>>2]&63](c[e+4>>2]|0,i)|0;e=c[e+8>>2]|0}while((e|0)!=0);if((JI(i,1,0,0,0)|0)>=1)KI(i);l=j;return}function DL(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+64|0;g=h;d=b+136|0;do{e=c[d>>2]|0;f=c[d>>2]|0;if((f|0)==(e|0))c[d>>2]=e}while((f|0)!=(e|0));if(!e){l=h;return}vg[c[323904>>2]&511](b);c[d>>2]=0;vg[c[323908>>2]&511](b);f=c[80072]|0;if(f|0?c[f>>2]&2|0:0){l=h;return}d=g;e=d+56|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0));c[g>>2]=4353;c[g+8>>2]=c[b>>2];a[g+12>>0]=(c[b+144>>2]|0)!=0&1;c[g+4>>2]=II()|0;d=c[80311]|0;if(d|0)do{hg[c[d>>2]&63](c[d+4>>2]|0,g)|0;d=c[d+8>>2]|0}while((d|0)!=0);if((JI(g,1,0,0,0)|0)>=1)KI(g);l=h;return}function EL(a){a=a|0;c[a+4>>2]=25;c[a+28>>2]=46;c[a+72>>2]=1;c[a+76>>2]=1;c[a+68>>2]=1;return 1}function FL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return 0}function GL(b,d,f){b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;k=n+8|0;m=n;j=((e[b+12>>1]|0)*1e3|0)/(c[b+4>>2]|0)|0;i=(j>>>0)/1e3|0;c[k>>2]=i;j=((j>>>0)%1e3|0)*1e6|0;g=k+4|0;c[g>>2]=j;h=m+4|0;while(1){c[8240]=0;c[m>>2]=i;c[h>>2]=j;j=(Qf(m|0,k|0)|0)!=0;if(!(j&(c[8240]|0)==4))break;i=c[k>>2]|0;j=c[g>>2]|0}RQ(d|0,a[b+11>>0]|0,f|0)|0;l=n;return f|0}function HL(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+1504|0;x=y+1488|0;s=y+1480|0;r=y+1472|0;q=y+1464|0;m=y+1456|0;k=y+1448|0;o=y+1440|0;n=y+1432|0;w=y;c[79098]=0;v=b>>>4&512|b;v=(v&544|0)==0?v:v|16384;do if(!(c[80312]|0)){c[80312]=1;if(!(ib(4,321252)|0)){c[80315]=1;break}else{Ef(321264,0)|0;break}}while(0);if(v&16384|0){b=a[335033]|0;if(!(b<<24>>24)){d=c[80058]|0;do if(d){b=c[d>>2]|0;if(!(b&8))p=15;else p=32}else{d=eN(32)|0;if(!d){c[80058]=0;p=33;break}if(!(c[d+-4>>2]&3))b=c[d>>2]|0;else{b=d;f=b+32|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(f|0));b=0}c[80058]=d;p=15}while(0);if((p|0)==15){c[d>>2]=b|8;do{b=c[6836]|0;d=c[6836]|0;if((d|0)==(b|0))c[6836]=b}while((d|0)!=(b|0));if((b|0)!=0&(c[6835]|0)!=0?(e=c[6839]|0,e|0):0){d=e;do{f=d+72|0;e=d;d=c[f>>2]|0;b=d;if((c[e>>2]|0)==771){g=e+68|0;h=c[g>>2]|0;if(!h)b=d;else{c[h+72>>2]=b;b=c[f>>2]|0}if(b|0)c[b+68>>2]=h;if((c[6839]|0)==(e|0))c[6839]=b;if((c[6840]|0)==(e|0))c[6840]=c[g>>2];c[f>>2]=c[6841];c[6841]=e;c[6837]=(c[6837]|0)+-1}}while((d|0)!=0)}b=c[80058]|0;if(!b)p=33;else{d=b;b=c[b>>2]|0;p=32}}do if((p|0)==32){if(!(b&4))p=39}else if((p|0)==33){d=eN(32)|0;if(!d){c[80058]=0;break}if(!(c[d+-4>>2]&3))b=c[d>>2]|0;else{b=d;f=b+32|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(f|0));b=0}c[80058]=d;p=39}while(0);if((p|0)==39){c[d>>2]=b|4;do{b=c[6836]|0;d=c[6836]|0;if((d|0)==(b|0))c[6836]=b}while((d|0)!=(b|0));if((b|0)!=0&(c[6835]|0)!=0?(i=c[6839]|0,i|0):0){d=i;do{f=d+72|0;e=d;d=c[f>>2]|0;b=d;if((c[e>>2]|0)==770){g=e+68|0;h=c[g>>2]|0;if(!h)b=d;else{c[h+72>>2]=b;b=c[f>>2]|0}if(b|0)c[b+68>>2]=h;if((c[6839]|0)==(e|0))c[6839]=b;if((c[6840]|0)==(e|0))c[6840]=c[g>>2];c[f>>2]=c[6841];c[6841]=e;c[6837]=(c[6837]|0)+-1}}while((d|0)!=0)}}d=c[80057]|0;do if(d){b=c[d>>2]|0;if(!(b&2))p=62}else{d=eN(32)|0;if(!d){c[80057]=0;break}if(!(c[d+-4>>2]&3))b=c[d>>2]|0;else{b=d;f=b+32|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(f|0));b=0}c[80057]=d;p=62}while(0);if((p|0)==62){c[d>>2]=b|2;do{b=c[6836]|0;d=c[6836]|0;if((d|0)==(b|0))c[6836]=b}while((d|0)!=(b|0));if((b|0)!=0&(c[6835]|0)!=0?(j=c[6839]|0,j|0):0){d=j;do{f=d+72|0;e=d;d=c[f>>2]|0;b=d;if((c[e>>2]|0)==513){g=e+68|0;h=c[g>>2]|0;if(!h)b=d;else{c[h+72>>2]=b;b=c[f>>2]|0}if(b|0)c[b+68>>2]=h;if((c[6839]|0)==(e|0))c[6839]=b;if((c[6840]|0)==(e|0))c[6840]=c[g>>2];c[f>>2]=c[6841];c[6841]=e;c[6837]=(c[6837]|0)+-1}}while((d|0)!=0)}}c[6836]=1;if(!(MI(307998,0)|0)){Rf(2,0,w|0)|0;if(!(c[w>>2]|0)){c[w>>2]=265;Rf(2,w|0,0)|0}Rf(15,0,w|0)|0;if(!(c[w>>2]|0)){c[w>>2]=265;Rf(15,w|0,0)|0}}b=a[335033]|0}a[335033]=b+1<<24>>24}if(v&1|0)a[335019]=(a[335019]|0)+1<<24>>24;if(v&32|0){b=a[335024]|0;do if(!(b<<24>>24))if((IL()|0)<0){x=-1;l=y;return x|0}else{b=a[335024]|0;break}while(0);a[335024]=b+1<<24>>24}if(v&16|0){b=a[335023]|0;if(!(b<<24>>24)){if(a[335023]|0)SL();b=323852;f=b+120|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(f|0));b=324008;f=b+64|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(f|0));g=Df(306798)|0;a:do if(!g){b=0;d=0;while(1){if((d|0)==3){d=1;p=105;break a}while(1){e=c[28436+(d<<2)>>2]|0;if(!(c[e+12>>2]|0))break;d=d+1|0;if((d|0)==3){d=1;p=105;break a}}b=323860;f=b+112|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(f|0));c[80963]=c[e>>2];c[80964]=c[e+4>>2];if(!(gg[c[e+8>>2]&511](323860)|0)){b=1;d=d+1|0}else break}}else{b=0;d=0;while(1){if((d|0)==3){d=0;p=105;break a}f=WO(g)|0;while(1){e=c[28436+(d<<2)>>2]|0;if(!($O(c[e>>2]|0,g,f)|0))break;d=d+1|0;if((d|0)==3){d=0;p=105;break a}}b=323860;f=b+112|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(f|0));c[80963]=c[e>>2];c[80964]=c[e+4>>2];if(!(gg[c[e+8>>2]&511](323860)|0)){b=1;d=d+1|0}else break}}while(0);if((p|0)==105){do if(!b)if(d){mE(306846,o);break}else{c[n>>2]=g;mE(306814,n);break}while(0);b=323852;f=b+120|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(f|0));x=-1;l=y;return x|0}b=eN(12)|0;if(!b)mE(294869,m);else{mE(306927,k);fN(b)}c[80986]=0;if(c[80981]|0){if(!(c[80976]|0))c[80976]=266;if(!(c[80977]|0))c[80977]=266}b=c[80965]|0;if(!b){c[80965]=3;b=3}if(!(c[80966]|0))c[80966]=26;if(!(c[80967]|0))c[80967]=267;if(!(c[80968]|0))c[80968]=268;if(!(c[80969]|0))c[80969]=269;if(!(c[80970]|0))c[80970]=431;if(!(c[80971]|0))c[80971]=432;if(!(c[80972]|0))c[80972]=47;if(!(c[80973]|0))c[80973]=270;if(!(c[80974]|0))c[80974]=271;if(!(c[80975]|0))c[80975]=272;if(!(c[80976]|0))c[80976]=273;if(!(c[80977]|0))c[80977]=274;if(!(c[80978]|0))c[80978]=275;if(!(c[80979]|0))c[80979]=4;pg[b&15]();b=a[335023]|0}a[335023]=b+1<<24>>24}if(v&512|0){b=a[335028]|0;b:do if(!(b<<24>>24)){b=c[80024]|0;c:do if(b|0){while(1){if(!(JN(306657,c[b>>2]|0)|0))break;b=c[b+16>>2]|0;if(!b)break c}f=b+12|0;b=c[f>>2]|0;if(b|0){d=0;while(1){e=c[b+8>>2]|0;if((c[b>>2]|0)==22?(c[b+4>>2]|0)==0:0)break;if(!e)break c;else{d=b;b=e}}c[(d|0?d+8|0:f)>>2]=e;fN(b)}}while(0);e=eN(12)|0;d:do if(!e)mE(294869,q);else{c[e>>2]=22;c[e+4>>2]=0;b=c[80024]|0;e:do if(!b)p=165;else{d=b;while(1){if(!(JN(306657,c[d>>2]|0)|0))break e;d=c[d+16>>2]|0;if(!d){p=165;break}}}while(0);do if((p|0)==165){d=eN(20)|0;if(!d){mE(294869,r);fN(e);break d}else{c[d>>2]=nP(306657)|0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=c[80024];c[80024]=d;b=d;break}}while(0);d=d+12|0;c[e+8>>2]=c[d>>2];c[d>>2]=e;d=Df(306657)|0;f:do if(!b){b=d;p=174}else{while(1){if(!(JN(306657,c[b>>2]|0)|0))break;b=c[b+16>>2]|0;if(!b){b=d;p=174;break f}}if(d|0?(c[b+8>>2]|0)!=2:0){b=d;p=175;break}b=c[b+4>>2]|0;p=174}while(0);if((p|0)==174)if(!b)b=0;else p=175;if((p|0)==175)b=(a[b>>0]|0)==49&1;c[81001]=b}while(0);if((HL(16384)|0)<0){x=-1;l=y;return x|0}c[80997]=0;d=Tb()|0;do if((d|0)==-1)b=306775;else{if((d|0)>0){b=0;do{if(!(Qb(b|0,w|0)|0))PL(0,w,0)|0;b=b+1|0}while((b|0)!=(d|0))}if(jf(0,0,48)|0){b=c[80996]|0;if(b|0)do{x=b;b=c[b+1320>>2]|0;fN(c[x+8>>2]|0);fN(c[x+4>>2]|0);fN(x)}while((b|0)!=0);c[80999]=0;c[80996]=0;c[80997]=0;c[81e3]=0;jf(0,0,0)|0;kf(0,0,0)|0;b=306736;break}if(!(kf(0,0,49)|0)){b=a[335028]|0;break b}b=c[80996]|0;if(b|0)do{x=b;b=c[b+1320>>2]|0;fN(c[x+8>>2]|0);fN(c[x+4>>2]|0);fN(x)}while((b|0)!=0);c[80999]=0;c[80996]=0;c[80997]=0;c[81e3]=0;jf(0,0,0)|0;kf(0,0,0)|0;b=306694}while(0);mE(b,s);x=-1;l=y;return x|0}while(0);a[335028]=b+1<<24>>24}if(v&8192|0){b=a[335032]|0;if(!(b<<24>>24)){JL(305796);d=Df(306046)|0;b=c[80024]|0;g:do if(!b){t=d;p=202}else{while(1){if(!(JN(306046,c[b>>2]|0)|0))break;b=c[b+16>>2]|0;if(!b){t=d;p=202;break g}}if(d|0?(c[b+8>>2]|0)!=2:0){u=d;p=203;break}t=c[b+4>>2]|0;p=202}while(0);if((p|0)==202?t|0:0){u=t;p=203}if((p|0)==203?a[u>>0]|0:0){t=WO(u)|0;e=eN(t+1|0)|0;PQ(e|0,u|0,t|0)|0;a[e+t>>0]=0;if(e|0){d=XO(e,10)|0;if(!d)b=e;else{b=e;do{a[d>>0]=0;JL(b);b=d+1|0;d=XO(b,10)|0}while((d|0)!=0)}JL(b)}fN(e)}e=eN(12)|0;if(e|0){c[e>>2]=41;c[e+4>>2]=0;c[e+8>>2]=0;b=c[80311]|0;if(!b)b=321244;else{d=b;do{b=d+8|0;d=c[b>>2]|0}while((d|0)!=0)}c[b>>2]=e}if((c[80997]|0)>0){e=w+8|0;f=w+4|0;d=0;do{if(LL(d)|0){c[w>>2]=1619;c[e>>2]=d;c[f>>2]=II()|0;b=c[80311]|0;if(b|0)do{hg[c[b>>2]&63](c[b+4>>2]|0,w)|0;b=c[b+8>>2]|0}while((b|0)!=0);if((JI(w,1,0,0,0)|0)>=1)KI(w)}d=d+1|0}while((d|0)<(c[80997]|0))}b=a[335032]|0}a[335032]=b+1<<24>>24}if(!(v&4096)){x=0;l=y;return x|0}mE(305745,x);x=-1;l=y;return x|0}function IL(){var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+32|0;k=s+16|0;f=s+8|0;j=s;if(c[80021]|0)iM();do if(!(c[80312]|0)){c[80312]=1;if(!(ib(4,321252)|0)){c[80315]=1;break}else{Ef(321264,0)|0;break}}while(0);if((HL(16384)|0)<0){r=-1;l=s;return r|0}PQ(321792,28472,2048)|0;c[80052]=1;i=Df(306961)|0;do if(!i){if(fg[c[27472>>2]&7]()|0?(e=gg[c[27476>>2]&511](0)|0,e|0):0){d=e;b=0;break}if(fg[c[28396>>2]&7]()|0?(d=gg[c[28400>>2]&511](0)|0,d|0):0){b=1;break}mE(306994,f);r=-1;l=s;return r|0}else{f=c[6866]|0;if(($O(f,i,WO(i)|0)|0)==0?(fg[c[27472>>2]&7]()|0)!=0:0){b=0;g=28452;e=15}else e=12;if(((e|0)==12?(f=c[7097]|0,($O(f,i,WO(i)|0)|0)==0):0)?fg[c[28396>>2]&7]()|0:0){b=1;g=28456;e=15}if((e|0)==15?(h=gg[c[(c[g>>2]|0)+12>>2]&511](0)|0,h|0):0){d=h;break}c[j>>2]=i;mE(306977,j);r=-1;l=s;return r|0}while(0);c[80021]=d;c[d>>2]=c[c[28452+(b<<2)>>2]>>2];c[d+284>>2]=1;c[d+388>>2]=0;c[d+648>>2]=0;c[d+292>>2]=3;c[d+296>>2]=3;c[d+300>>2]=2;c[d+304>>2]=0;c[d+312>>2]=0;c[d+308>>2]=16;c[d+316>>2]=0;c[d+320>>2]=1;i=d+324|0;c[i>>2]=0;c[i+4>>2]=0;c[i+8>>2]=0;c[i+12>>2]=0;c[i+16>>2]=0;c[i+20>>2]=0;c[i+24>>2]=0;c[d+384>>2]=1;c[d+352>>2]=-1;c[d+356>>2]=2;c[d+360>>2]=0;c[d+368>>2]=4;c[d+364>>2]=0;c[d+380>>2]=0;c[d+376>>2]=1;c[d+372>>2]=0;i=c[81018]|0;c[81018]=i+1;c[(c[80021]|0)+660>>2]=i+1;i=c[81018]|0;c[81018]=i+1;j=c[80021]|0;c[j+664>>2]=i+1;if((gg[c[j+4>>2]&511](j)|0)<0){iM();r=-1;l=s;return r|0}h=c[80021]|0;if(!(c[h+264>>2]|0)){iM();mE(307020,k);r=-1;l=s;return r|0}g=h+132|0;do if(c[g>>2]|0){e=Df(307805)|0;d=c[80024]|0;f=(d|0)==0;a:do if(f){m=e;e=29}else{b=d;while(1){if(!(JN(307805,c[b>>2]|0)|0))break;b=c[b+16>>2]|0;if(!b){m=e;e=29;break a}}if(e|0?(c[b+8>>2]|0)!=2:0){n=e;e=30;break}m=c[b+4>>2]|0;e=29}while(0);if((e|0)==29?m|0:0){n=m;e=30}if((e|0)==30?(VO(n,307062)|0)==0:0)break;b=Df(307071)|0;b:do if(f)e=37;else{while(1){if(!(JN(307071,c[d>>2]|0)|0))break;d=c[d+16>>2]|0;if(!d){e=37;break b}}if(b|0?(c[d+8>>2]|0)!=2:0)break;b=c[d+4>>2]|0;e=37}while(0);if((e|0)==37)if(!b)break;if((a[b>>0]|0)!=48?VO(b,307100)|0:0)e=40}else e=40;while(0);if((e|0)==40){c[g>>2]=24;c[h+136>>2]=27;c[h+140>>2]=183}if(!(MI(307106,0)|0)){if(h|0){b=h+260|0;if((c[b>>2]|0)==0?(c[b>>2]=1,q=c[h+208>>2]|0,(q|0)!=0):0){vg[q&511](h);o=c[80021]|0;e=46}else{p=h;e=47}}}else{o=h;e=46}if((e|0)==46?o|0:0){p=o;e=47}if(((e|0)==47?(r=c[p+224>>2]|0,r|0):0)?gg[r&511](p)|0:0){r=0;l=s;return r|0}d=c[80058]|0;if(d|0){b=c[d>>2]|0;if(b&8){b=b&-9;c[d>>2]=b}if(b&4|0)c[d>>2]=b&-5}b=c[80021]|0;if(!b){r=0;l=s;return r|0}d=c[b+272>>2]|0;do if(d){do{if(c[d+48>>2]&512|0){e=58;break}d=c[d+152>>2]|0}while((d|0)!=0);if((e|0)==58){e=c[b+228>>2]|0;if(!e)break;Bg[e&255](b,d);b=c[80021]|0}if(!b){r=0;l=s;return r|0}}while(0);d=c[b+212>>2]|0;if(!d){r=0;l=s;return r|0}vg[d&511](b);r=0;l=s;return r|0}function JL(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=l;l=l+208|0;x=F+136|0;E=F+128|0;D=F+120|0;v=F+112|0;t=F+104|0;s=F+96|0;f=F+88|0;e=F+80|0;d=F+72|0;A=F+180|0;B=F+160|0;C=F+16|0;w=F;m=F+144|0;if(!b){c[d>>2]=306263;mE(310091,d);l=F;return}d=XO(b,44)|0;do if(d|0){d=d-b|0;k=eN(d+1|0)|0;if(!k){mE(294869,e);break}PQ(k|0,b|0,d|0)|0;a[k+d>>0]=0;o=(VO(k,306305)|0)==0;r=(VO(k,306312)|0)==0;j=(WO(k)|0)&-2;h=A;q=h+16|0;do{a[h>>0]=0;h=h+1|0}while((h|0)<(q|0));a:do if(j|0){i=A;g=A;h=0;while(1){if((g-i|0)>=16)break a;d=a[k+h>>0]|0;e=d<<24>>24;do if((d+-48&255)>=10)if((d+-65&255)<6){d=e+201|0;break}else{d=(d+-97&255)<6?e+169|0:0;break}else d=e+208|0;while(0);f=d<<4;d=a[k+(h|1)>>0]|0;e=d<<24>>24;do if((d+-48&255)>=10)if((d+-65&255)<6){d=e+201|0;break}else{d=(d+-97&255)<6?e+169|0:0;break}else d=e+208|0;while(0);a[g>>0]=d|f;h=h+2|0;if(h>>>0>=j>>>0)break;else g=g+1|0}}while(0);h=m;e=A;q=h+16|0;do{a[h>>0]=a[e>>0]|0;h=h+1|0;e=e+1|0}while((h|0)<(q|0));fN(k);h=w;e=m;q=h+16|0;do{a[h>>0]=a[e>>0]|0;h=h+1|0;e=e+1|0}while((h|0)<(q|0));d=XO(b,44)|0;do if((d|0)!=0?(p=d+1|0,n=XO(p,44)|0,(n|0)!=0):0){d=n-d|0;f=eN(d)|0;if(!f){mE(294869,s);z=25;break}PQ(f|0,p|0,d|0)|0;a[f+(d+-1)>>0]=0;d=XO(b,44)|0;if((d|0?(u=XO(d+1|0,44)|0,u|0):0)?(y=nP(u+1|0)|0,y|0):0){d=c[80993]|0;b:do if(d|0){p=d;while(1){if(!(KN(w,p,16)|0))break;d=c[p+24>>2]|0;if(!d)break b;else p=d}o=p+16|0;fN(c[o>>2]|0);c[o>>2]=f;n=p+20|0;fN(c[n>>2]|0);c[n>>2]=y;d=c[80998]|0;if(!d){l=F;return}k=C+8|0;m=C+4|0;do{j=d+12|0;if(!(KN(j,p,16)|0)){c[C>>2]=1621;c[k>>2]=c[c[d>>2]>>2];c[m>>2]=II()|0;e=c[80311]|0;if(e|0)do{hg[c[e>>2]&63](c[e+4>>2]|0,C)|0;e=c[e+8>>2]|0}while((e|0)!=0);if((JI(C,1,0,0,0)|0)>=1)KI(C);e=c[o>>2]|0;g=c[n>>2]|0;QQ(d+12|0,p|0,16)|0;c[d+28>>2]=e;c[d+208>>2]=-1;c[d+216>>2]=-1;c[d+224>>2]=-1;c[d+232>>2]=-1;c[d+240>>2]=-1;c[d+248>>2]=-1;c[d+256>>2]=-1;c[d+264>>2]=-1;c[d+272>>2]=-1;c[d+280>>2]=-1;c[d+288>>2]=-1;c[d+296>>2]=-1;c[d+304>>2]=-1;c[d+312>>2]=-1;RQ(d+32|0,-1,172)|0;e=0;do{c[d+320+(e<<2)>>2]=-1;c[d+512+(e<<2)>>2]=-1;c[d+704+(e<<2)>>2]=-1;c[d+896+(e<<2)>>2]=-1;e=e+1|0}while((e|0)!=48);RQ(d+1088|0,-1,256)|0;h=A;q=h+20|0;do{a[h>>0]=0;h=h+1|0}while((h|0)<(q|0));h=B;q=h+20|0;do{a[h>>0]=0;h=h+1|0}while((h|0)<(q|0));c:do if(g){e=0;f=1;i=g;d:while(1){g=a[i>>0]|0;e:do switch(g<<24>>24){case 0:{z=55;break c}case 58:{e=0;f=0;break}case 32:break;case 44:{NL(A,B,j);h=A;q=h+20|0;do{a[h>>0]=0;h=h+1|0}while((h|0)<(q|0));h=B;q=h+20|0;do{a[h>>0]=0;h=h+1|0}while((h|0)<(q|0));e=0;f=1;break}default:{h=e>>>0>19;if(!f){if(h){z=51;break d}a[B+e>>0]=g;e=e+1|0;f=0;break e}else{if(h){z=48;break d}a[A+e>>0]=g;e=e+1|0;break e}}}while(0);i=i+1|0}if((z|0)==48){z=0;c[D>>2]=A;mE(306369,D);break}else if((z|0)==51){z=0;c[E>>2]=B;mE(306395,E);break}}else z=55;while(0);if((z|0)==55)NL(A,B,j)}d=c[d+1344>>2]|0}while((d|0)!=0);l=F;return}while(0);d=eN(28)|0;if(!d){fN(f);fN(y);mE(294869,x);break}h=d;e=w;q=h+16|0;do{a[h>>0]=a[e>>0]|0;h=h+1|0;e=e+1|0}while((h|0)<(q|0));c[d+16>>2]=f;c[d+20>>2]=y;c[d+24>>2]=c[80993];c[80993]=d;if(!((d|0)!=0&1)){l=F;return}if(o)c[80995]=d;if(!r){l=F;return}c[80994]=d;l=F;return}fN(f);c[v>>2]=b;mE(306351,v)}else z=25;while(0);if((z|0)==25){c[t>>2]=b;mE(306323,t)}l=F;return}while(0);c[f>>2]=b;mE(306277,f);l=F;return}function KL(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+80|0;g=q+64|0;e=q+56|0;p=q;switch(c[f>>2]|0){case 1536:{i=a[f+12>>0]|0;if((i&255)>47){c[e>>2]=i&255;mE(306115,e);l=q;return 1}e=c[80998]|0;if(!e){l=q;return 1}h=c[f+8>>2]|0;while(1){j=c[e>>2]|0;if((c[j>>2]|0)==(h|0))break;g=c[e+1344>>2]|0;if(!g){m=28;break}else e=g}if((m|0)==28){l=q;return 1}g=i&255;h=c[e+320+(g<<2)>>2]|0;if((h|0)<=-1){g=c[e+896+(g<<2)>>2]|0;if((g|0)<=-1){l=q;return 1}o=b[f+16>>1]|0;e=o<<16>>16;e=((o<<16>>16<0?0-e|0:e)|0)>16384;o=e?1617:1618;c[p>>2]=o;n=c[80061]|0;if(!((n|0)!=0?(c[n+8>>2]&1<<(o&19)|0)!=0:0)){c[p+8>>2]=c[j>>2];a[p+12>>0]=g;a[p+13>>0]=e&1;c[p+4>>2]=II()|0;e=c[80311]|0;if(e|0)do{hg[c[e>>2]&63](c[e+4>>2]|0,p)|0;e=c[e+8>>2]|0}while((e|0)!=0);if((JI(p,1,0,0,0)|0)>=1)KI(p)}l=q;return 1}e=b[f+16>>1]|0;if((h&-2|0)==4)e=(((e<<16>>16)/2|0)&65535)+16384&65535;o=c[80061]|0;if(o|0?c[o+8>>2]&65536|0:0){l=q;return 1}c[p>>2]=1616;c[p+8>>2]=c[j>>2];a[p+12>>0]=h;b[p+16>>1]=e;c[p+4>>2]=II()|0;e=c[80311]|0;if(e|0)do{hg[c[e>>2]&63](c[e+4>>2]|0,p)|0;e=c[e+8>>2]|0}while((e|0)!=0);if((JI(p,1,0,0,0)|0)>=1)KI(p);l=q;return 1}case 1540:case 1539:{i=a[f+12>>0]|0;if((i&255)>47){c[g>>2]=i&255;mE(306188,g);l=q;return 1}e=c[80998]|0;if(!e){l=q;return 1}h=c[f+8>>2]|0;while(1){j=c[e>>2]|0;if((c[j>>2]|0)==(h|0))break;g=c[e+1344>>2]|0;if(!g){m=28;break}else e=g}if((m|0)==28){l=q;return 1}g=i&255;h=c[e+704+(g<<2)>>2]|0;if((h|0)>-1){e=a[f+13>>0]|0;switch(e<<24>>24){case 1:{k=1617;m=37;break}case 0:{k=1618;m=37;break}default:{}}do if((m|0)==37){c[p>>2]=k;o=c[80061]|0;if(o|0?c[o+8>>2]&1<<(k&19)|0:0)break;c[p+8>>2]=c[j>>2];a[p+12>>0]=h;a[p+13>>0]=e;c[p+4>>2]=II()|0;e=c[80311]|0;if(e|0)do{hg[c[e>>2]&63](c[e+4>>2]|0,p)|0;e=c[e+8>>2]|0}while((e|0)!=0);if((JI(p,1,0,0,0)|0)>=1)KI(p)}while(0);l=q;return 1}g=c[e+512+(g<<2)>>2]|0;if((g|0)<=-1){l=q;return 1}e=a[f+13>>0]|0;o=c[80061]|0;if(o|0?c[o+8>>2]&65536|0:0){l=q;return 1}c[p>>2]=1616;c[p+8>>2]=c[j>>2];a[p+12>>0]=g;b[p+16>>1]=e<<24>>24?32767:0;c[p+4>>2]=II()|0;e=c[80311]|0;if(e|0)do{hg[c[e>>2]&63](c[e+4>>2]|0,p)|0;e=c[e+8>>2]|0}while((e|0)!=0);if((JI(p,1,0,0,0)|0)>=1)KI(p);l=q;return 1}case 1538:{o=f+12|0;g=a[o>>0]|0;if((g&255)>3){l=q;return 1}e=c[80998]|0;if(!e){l=q;return 1}h=c[f+8>>2]|0;n=e;while(1){i=c[n>>2]|0;if((c[i>>2]|0)==(h|0))break;e=c[n+1344>>2]|0;if(!e){m=28;break}else n=e}if((m|0)==28){l=q;return 1}j=g&255;g=a[n+8+j>>0]|0;k=f+13|0;h=a[k>>0]&g;j=j<<4;g=(h^g)&255;if(g&4|0){e=c[n+1088+((j|4)<<2)>>2]|0;do if((e|0)!=-1){c[p>>2]=1618;f=c[80061]|0;if(f|0?c[f+8>>2]&262144|0:0)break;c[p+8>>2]=c[i>>2];a[p+12>>0]=e;a[p+13>>0]=0;c[p+4>>2]=II()|0;e=c[80311]|0;if(e|0)do{hg[c[e>>2]&63](c[e+4>>2]|0,p)|0;e=c[e+8>>2]|0}while((e|0)!=0);if((JI(p,1,0,0,0)|0)>=1)KI(p)}while(0)}if(g&1|0){e=c[n+1088+((j|1)<<2)>>2]|0;do if((e|0)!=-1){c[p>>2]=1618;f=c[80061]|0;if(f|0?c[f+8>>2]&262144|0:0)break;c[p+8>>2]=c[c[n>>2]>>2];a[p+12>>0]=e;a[p+13>>0]=0;c[p+4>>2]=II()|0;e=c[80311]|0;if(e|0)do{hg[c[e>>2]&63](c[e+4>>2]|0,p)|0;e=c[e+8>>2]|0}while((e|0)!=0);if((JI(p,1,0,0,0)|0)>=1)KI(p)}while(0)}if(g&8|0){e=c[n+1088+((j|8)<<2)>>2]|0;do if((e|0)!=-1){c[p>>2]=1618;f=c[80061]|0;if(f|0?c[f+8>>2]&262144|0:0)break;c[p+8>>2]=c[c[n>>2]>>2];a[p+12>>0]=e;a[p+13>>0]=0;c[p+4>>2]=II()|0;e=c[80311]|0;if(e|0)do{hg[c[e>>2]&63](c[e+4>>2]|0,p)|0;e=c[e+8>>2]|0}while((e|0)!=0);if((JI(p,1,0,0,0)|0)>=1)KI(p)}while(0)}if(g&2|0){e=c[n+1088+((j|2)<<2)>>2]|0;do if((e|0)!=-1){c[p>>2]=1618;f=c[80061]|0;if(f|0?c[f+8>>2]&262144|0:0)break;c[p+8>>2]=c[c[n>>2]>>2];a[p+12>>0]=e;a[p+13>>0]=0;c[p+4>>2]=II()|0;e=c[80311]|0;if(e|0)do{hg[c[e>>2]&63](c[e+4>>2]|0,p)|0;e=c[e+8>>2]|0}while((e|0)!=0);if((JI(p,1,0,0,0)|0)>=1)KI(p)}while(0)}g=(a[k>>0]^h)&255;if(g&4|0){e=c[n+1088+((j|4)<<2)>>2]|0;do if((e|0)!=-1){c[p>>2]=1617;f=c[80061]|0;if(f|0?c[f+8>>2]&131072|0:0)break;c[p+8>>2]=c[c[n>>2]>>2];a[p+12>>0]=e;a[p+13>>0]=1;c[p+4>>2]=II()|0;e=c[80311]|0;if(e|0)do{hg[c[e>>2]&63](c[e+4>>2]|0,p)|0;e=c[e+8>>2]|0}while((e|0)!=0);if((JI(p,1,0,0,0)|0)>=1)KI(p)}while(0)}if(g&1|0){e=c[n+1088+((j|1)<<2)>>2]|0;do if((e|0)!=-1){c[p>>2]=1617;f=c[80061]|0;if(f|0?c[f+8>>2]&131072|0:0)break;c[p+8>>2]=c[c[n>>2]>>2];a[p+12>>0]=e;a[p+13>>0]=1;c[p+4>>2]=II()|0;e=c[80311]|0;if(e|0)do{hg[c[e>>2]&63](c[e+4>>2]|0,p)|0;e=c[e+8>>2]|0}while((e|0)!=0);if((JI(p,1,0,0,0)|0)>=1)KI(p)}while(0)}if(g&8|0){e=c[n+1088+((j|8)<<2)>>2]|0;do if((e|0)!=-1){c[p>>2]=1617;f=c[80061]|0;if(f|0?c[f+8>>2]&131072|0:0)break;c[p+8>>2]=c[c[n>>2]>>2];a[p+12>>0]=e;a[p+13>>0]=1;c[p+4>>2]=II()|0;e=c[80311]|0;if(e|0)do{hg[c[e>>2]&63](c[e+4>>2]|0,p)|0;e=c[e+8>>2]|0}while((e|0)!=0);if((JI(p,1,0,0,0)|0)>=1)KI(p)}while(0)}if(g&2|0){e=c[n+1088+((j|2)<<2)>>2]|0;do if((e|0)!=-1){c[p>>2]=1617;f=c[80061]|0;if(f|0?c[f+8>>2]&131072|0:0)break;c[p+8>>2]=c[c[n>>2]>>2];a[p+12>>0]=e;a[p+13>>0]=1;c[p+4>>2]=II()|0;e=c[80311]|0;if(e|0)do{hg[c[e>>2]&63](c[e+4>>2]|0,p)|0;e=c[e+8>>2]|0}while((e|0)!=0);if((JI(p,1,0,0,0)|0)>=1)KI(p)}while(0)}a[(d[o>>0]|0)+(n+8)>>0]=a[k>>0]|0;l=q;return 1}case 1541:{e=f+8|0;if(!(LL(c[e>>2]|0)|0)){l=q;return 1}c[p>>2]=1619;c[p+8>>2]=c[e>>2];c[p+4>>2]=II()|0;e=c[80311]|0;if(e|0)do{hg[c[e>>2]&63](c[e+4>>2]|0,p)|0;e=c[e+8>>2]|0}while((e|0)!=0);if((JI(p,1,0,0,0)|0)>=1)KI(p);l=q;return 1}case 1542:{e=c[80998]|0;if(!e){l=q;return 1}g=c[f+8>>2]|0;while(1){if((c[c[e>>2]>>2]|0)==(g|0))break;e=c[e+1344>>2]|0;if(!e){m=28;break}}if((m|0)==28){l=q;return 1}c[p>>2]=1620;c[p+8>>2]=g;c[p+4>>2]=II()|0;e=c[80311]|0;if(e|0)do{hg[c[e>>2]&63](c[e+4>>2]|0,p)|0;e=c[e+8>>2]|0}while((e|0)!=0);if((JI(p,1,0,0,0)|0)>=1)KI(p);ML();l=q;return 1}default:{l=q;return 1}}return 0}function LL(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+48|0;j=k+8|0;e=k;g=k+32|0;h=k+16|0;i=(b|0)<0;d=c[80997]|0;if((d|0)>(b|0)&(i^1)){d=c[80996]|0;if((b|0)>0){e=b;while(1){d=c[d+1320>>2]|0;if((e|0)>1)e=e+-1|0;else break}}d=c[d+4>>2]|0;e=g;f=e+16|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(f|0));e=WO(d)|0;PQ(g|0,d|0,(e>>>0<16?e:16)|0)|0;e=h;d=g;f=e+16|0;do{a[e>>0]=a[d>>0]|0;e=e+1|0;d=d+1|0}while((e|0)<(f|0))}else{c[e>>2]=d;mE(306082,e);e=h;f=e+16|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(f|0))}d=c[80993]|0;a:do if(!d)d=0;else while(1){if(!(KN(h,d,16)|0))break a;d=c[d+24>>2]|0;if(!d){d=0;break}}while(0);h=c[80994]|0;d=(d|0)==0&(h|0)!=0?h:d;if(d|0){j=d;l=k;return j|0}d=c[80997]|0;if(!((d|0)>(b|0)&(i^1))){c[j>>2]=d;mE(306082,j);j=0;l=k;return j|0}d=c[80996]|0;if((b|0)>0)while(1){d=c[d+1320>>2]|0;if((b|0)>1)b=b+-1|0;else break}d=c[d+4>>2]|0;if(!d){j=0;l=k;return j|0}if((MP(d,306071)|0)==0?(MP(d,306076)|0)==0:0){j=0;l=k;return j|0}j=c[80995]|0;l=k;return j|0}function ML(){var a=0,b=0,d=0,e=0,f=0;e=l;l=l+16|0;d=e;do{a=c[6836]|0;b=c[6836]|0;if((b|0)==(a|0))c[6836]=a}while((b|0)!=(a|0));if(!a){mE(295058,d);l=e;return}b=0;a=c[6839]|0;a:while(1){do{if(!a)break a;d=a;a=c[a+72>>2]|0}while((c[d>>2]|0)!=1619);b=b+1|0}if((b|0)<1){l=e;return}d=l;l=l+((1*(b*56|0)|0)+15&-16)|0;b=JI(d,b,2,1619,1619)|0;if((b|0)>0){a=0;do{f=d+(a*56|0)+8|0;c[f>>2]=(c[f>>2]|0)+-1;a=a+1|0}while((a|0)!=(b|0))}JI(d,b,0,0,0)|0;l=e;return}function NL(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;m=n+16|0;k=n+8|0;j=n;if((b|0)!=0?(a[b>>0]|0)!=0:0){if(VO(b,306557)|0)if(VO(b,306559)|0)if(VO(b,306561)|0)if(VO(b,306563)|0)if(VO(b,306565)|0)if(VO(b,306570)|0)if(VO(b,306576)|0)if(VO(b,306582)|0)if(VO(b,306592)|0)if(VO(b,306603)|0)if(VO(b,306616)|0)if(VO(b,306630)|0)if(VO(b,306635)|0)if(!(VO(b,306642)|0))f=13;else{f=(VO(b,306649)|0)==0;f=f?14:-1}else f=12;else f=11;else f=10;else f=9;else f=8;else f=7;else f=6;else f=5;else f=4;else f=3;else f=2;else f=1;else f=0;if(VO(b,306506)|0)if(VO(b,306512)|0)if(VO(b,306518)|0)if(VO(b,306525)|0)if(!(VO(b,306532)|0)){g=4;i=f}else{g=(VO(b,306544)|0)==0;g=g?5:-1;i=f}else{g=3;i=f}else{g=2;i=f}else{g=1;i=f}else{g=0;i=f}}else{g=-1;i=-1}b=d+1|0;h=sQ(b)|0;switch(a[d>>0]|0){case 97:{if((h|0)>47){c[j>>2]=h;mE(306430,j);l=n;return}if((g|0)!=-1){c[e+20+(g<<2)>>2]=h;c[e+308+(h<<2)>>2]=g;l=n;return}if((i|0)==-1){l=n;return}c[e+128+(i<<2)>>2]=h;c[e+884+(h<<2)>>2]=i;l=n;return}case 98:{if((h|0)>47){c[k>>2]=h;mE(306455,k);l=n;return}if((i|0)!=-1){c[e+68+(i<<2)>>2]=h;c[e+692+(h<<2)>>2]=i;l=n;return}if((g|0)==-1){l=n;return}c[e+44+(g<<2)>>2]=h;c[e+500+(h<<2)>>2]=g;l=n;return}case 104:{f=sQ(b)|0;b=sQ(d+3|0)|0;if((f|0)>3){c[m>>2]=h;mE(306482,m)}if((i|0)==-1){l=n;return}c[e+188+(i<<3)>>2]=f;a[e+188+(i<<3)+4>>0]=b;c[e+1076+((f<<4|b)<<2)>>2]=i;l=n;return}default:{l=n;return}}}function OL(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;if(!f)b=0;else b=(a[f>>0]|0)==49&1;c[81001]=b;return}function PL(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0;j=l;l=l+64|0;i=j;f=b+1300|0;d=c[f>>2]|0;a:do if((d|0)>=0?(e=c[80996]|0,e|0):0){a=e;while(1){if((c[a>>2]|0)==(d|0))break;a=c[a+1320>>2]|0;if(!a)break a}l=j;return 1}while(0);g=eN(1328)|0;if(!g){l=j;return 1}RQ(g+4|0,0,1324)|0;c[g>>2]=c[f>>2];f=nP(b+1304|0)|0;a=g+4|0;c[a>>2]=f;if(!f){fN(g);l=j;return 1}f=nP(b+1368|0)|0;c[g+8>>2]=f;if(!f){fN(c[a>>2]|0);fN(g);l=j;return 1}d=c[b+8>>2]|0;e=g+24|0;c[e>>2]=d;a=c[b+12>>2]|0;f=g+20|0;c[f>>2]=a;k=c[81e3]|0;c[81e3]=k+1;c[g+12>>2]=k;h[g+32>>3]=+h[b>>3];if((d|0)>0){d=g+40|0;a=0;do{h[d+(a<<3)>>3]=+h[b+16+(a<<3)>>3];a=a+1|0}while((a|0)<(c[e>>2]|0));a=c[f>>2]|0}if((a|0)>0){d=g+552|0;e=g+1064|0;a=0;do{h[d+(a<<3)>>3]=+h[b+528+(a<<3)>>3];c[e+(a<<2)>>2]=c[b+1040+(a<<2)>>2];a=a+1|0}while((a|0)<(c[f>>2]|0))}a=c[80999]|0;if(!a){c[80999]=g;a=323984}else{c[a+1320>>2]=g;a=323996}c[a>>2]=g;a=c[80997]|0;c[80997]=a+1;c[i>>2]=1541;k=c[80061]|0;if(!((k|0)!=0?(c[k>>2]&32|0)!=0:0)){c[i+8>>2]=a;c[i+4>>2]=II()|0;a=c[80311]|0;if(a|0)do{hg[c[a>>2]&63](c[a+4>>2]|0,i)|0;a=c[a+8>>2]|0}while((a|0)!=0);if((JI(i,1,0,0,0)|0)>=1)KI(i)}l=j;return 1}function QL(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+64|0;g=h;a=c[80996]|0;if(!a){l=h;return 1}b=c[b+1300>>2]|0;f=a;d=0;while(1){if((c[f>>2]|0)==(b|0))break;a=c[f+1320>>2]|0;if(!a){e=19;break}else{d=f;f=a}}if((e|0)==19){l=h;return 1}a=c[f+16>>2]|0;if(a|0)c[a+44>>2]=0;a=c[f+1320>>2]|0;if(!d)c[80996]=a;else c[d+1320>>2]=a;if((f|0)==(c[80999]|0))c[80999]=d;c[80997]=(c[80997]|0)+-1;a=c[f+12>>2]|0;c[g>>2]=1542;e=c[80061]|0;if(!((e|0)!=0?(c[e>>2]&64|0)!=0:0)){c[g+8>>2]=a;c[g+4>>2]=II()|0;a=c[80311]|0;if(a|0)do{hg[c[a>>2]&63](c[a+4>>2]|0,g)|0;a=c[a+8>>2]|0}while((a|0)!=0);if((JI(g,1,0,0,0)|0)>=1)KI(g)}RL();fN(c[f+4>>2]|0);fN(c[f+8>>2]|0);fN(f);l=h;return 1}function RL(){var a=0,b=0,d=0,e=0,f=0;e=l;l=l+16|0;d=e;do{a=c[6836]|0;b=c[6836]|0;if((b|0)==(a|0))c[6836]=a}while((b|0)!=(a|0));if(!a){mE(295058,d);l=e;return}b=0;a=c[6839]|0;a:while(1){do{if(!a)break a;d=a;a=c[a+72>>2]|0}while((c[d>>2]|0)!=1541);b=b+1|0}if((b|0)<1){l=e;return}d=l;l=l+((1*(b*56|0)|0)+15&-16)|0;b=JI(d,b,2,1541,1541)|0;if((b|0)>0){a=0;do{f=d+(a*56|0)+8|0;c[f>>2]=(c[f>>2]|0)+-1;a=a+1|0}while((a|0)!=(b|0))}JI(d,b,0,0,0)|0;l=e;return}function SL(){var a=0,b=0,d=0;if(!(c[80963]|0))return;hM(c[81002]|0);hM(c[81003]|0);hM(c[81004]|0);hM(c[81005]|0);hM(c[81006]|0);hM(c[81007]|0);hM(c[81008]|0);hM(c[81009]|0);hM(c[81010]|0);hM(c[81011]|0);hM(c[81012]|0);hM(c[81013]|0);hM(c[81014]|0);hM(c[81015]|0);hM(c[81016]|0);hM(c[81017]|0);a=c[80991]|0;if(a|0)do{b=a;a=c[a+4>>2]|0;d=c[b>>2]|0;if(d|0)vg[c[323912>>2]&511](d);fN(b)}while((a|0)!=0);c[80991]=0;c[80989]=0;a=c[80992]|0;if(a|0)do{b=a;a=c[a+4>>2]|0;d=c[b>>2]|0;if(d|0)vg[c[323912>>2]&511](d);fN(b)}while((a|0)!=0);c[80992]=0;c[80990]=0;pg[c[323916>>2]&15]();a=c[80986]|0;if(a|0)fN(a);a=323852;b=a+120|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));a=324008;b=a+64|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));return}function TL(a){a=a|0;return}function UL(){CL(0,306872,1);if(!(c[80982]|0))return;CL(1,306899,2);return}function VL(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=l;l=l+16|0;mE(294969,d);l=d;return -1}function WL(a){a=a|0;return}function XL(a){a=a|0;return}function YL(a){a=a|0;return}function ZL(a){a=a|0;return 0}function _L(a){a=a|0;return 0}function $L(a,b,c){a=a|0;b=b|0;c=c|0;return -1}function aM(a){a=a|0;return}function bM(a){a=a|0;return}function cM(a){a=a|0;return}function dM(a){a=a|0;return}function eM(a){a=a|0;return}function fM(a){a=a|0;return}function gM(){return}function hM(a){a=a|0;var b=0,d=0;if(!a)return;b=c[a>>2]|0;if(b|0?(d=324008+(b+-1<<2)|0,(c[d>>2]|0)==(a|0)):0)c[d>>2]=0;c[a+132>>2]=1;c[a+136>>2]=0;b=c[a+156>>2]|0;if(b|0){d=c[b+792>>2]|0;if(d|0)fN(d);fN(b)}b=c[a+152>>2]|0;if(b|0)fN(b);fN(c[a+148>>2]|0);if(c[a+28>>2]|0)fN(c[a+44>>2]|0);if(c[a+180>>2]|0)vg[c[323900>>2]&511](a);b=c[a+164>>2]|0;if(b|0)do{d=b;b=c[b+8200>>2]|0;fN(d)}while((b|0)!=0);b=c[a+172>>2]|0;if(b|0)do{d=b;b=c[b+8200>>2]|0;fN(d)}while((b|0)!=0);fN(a);return}function iM(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=l;l=l+16|0;j=s;if(!(c[80021]|0)){l=s;return}b=c[80960]|0;a=c[80961]|0;a:do if(b){d=b;h=b;while(1){d=d+-1|0;g=c[a+(d<<2)>>2]|0;f=c[g>>2]|0;g=c[g+4>>2]|0;b:do if((h|0)>0){b=0;while(1){i=c[a+(b<<2)>>2]|0;if((c[i>>2]|0)==(f|0)?(c[i+4>>2]|0)==(g|0):0)break;b=b+1|0;if((b|0)>=(h|0)){b=-1;break}}e=0;while(1){i=c[a+(e<<2)>>2]|0;t=i;if((c[t>>2]|0)==(f|0)?(c[t+4>>2]|0)==(g|0):0)break;e=e+1|0;if((e|0)>=(h|0)){o=10;break b}}if((e|0)>-1&(e|0)<(h|0)){if(i){f=i+12|0;g=i+16|0;a=c[g>>2]|0;if((c[f>>2]|0)>0){e=0;do{fN(c[a+(e<<2)>>2]|0);e=e+1|0;a=c[g>>2]|0}while((e|0)<(c[f>>2]|0))}fN(a);fN(i);t=(c[80960]|0)+-1|0;c[80960]=t;a=c[80961]|0;c[a+(b<<2)>>2]=c[a+(t<<2)>>2]}}else o=10}else o=10;while(0);if((o|0)==10){o=0;mE(298497,j);a=c[80961]|0}if(!d)break a;h=c[80960]|0}}while(0);fN(a);c[80961]=0;a=c[80034]|0;if(((a|0?(k=c[80318]|0,k|0):0)?(m=k+48|0,c[m>>2]&16384|0):0)?(gg[a&511](0)|0)!=-1:0)c[m>>2]=c[m>>2]&-16385;do if(c[80045]|0){if(!(c[80046]|0))gg[c[320132>>2]&511](0)|0;else c[80046]=0;c[80045]=0;e=c[80037]|0;do if(e|0){t=(c[e+48>>2]&768|0)!=768;d=(t^1)&1;a=c[80021]|0;b=c[a+276>>2]|0;if(t)if((b|0)==(e|0)){b=0;o=32}else b=a;else if(!((b|0)==0|(b|0)==(e|0))?(n=b+48|0,c[n>>2]=c[n>>2]&-257,n=c[a+124>>2]|0,(n|0)!=0):0){Dg[n&63](a,b,0);b=e;a=c[80021]|0;o=32}else{b=e;o=32}if((o|0)==32){c[a+276>>2]=b;b=a}a=c[b+124>>2]|0;if(a|0)Dg[a&63](b,e,d);b=c[80037]|0;d=c[80038]|0;e=c[80039]|0;if(b|0){a=c[80031]|0;if(a|0){Dg[a&63](b,d,e);break}a=c[80036]|0;if(NI(b,d,e)|0)OI(b,a,0,d,e)|0}}while(0);do{a=c[6836]|0;b=c[6836]|0;if((b|0)==(a|0))c[6836]=a}while((b|0)!=(a|0));if((a|0)!=0&(c[6835]|0)!=0?(p=c[6839]|0,p|0):0){b=p;do{e=b+72|0;d=b;b=c[e>>2]|0;a=b;if((c[d>>2]|0)==1024){f=d+68|0;g=c[f>>2]|0;if(!g)a=b;else{c[g+72>>2]=a;a=c[e>>2]|0}if(a|0)c[a+68>>2]=g;if((c[6839]|0)==(d|0))c[6839]=a;if((c[6840]|0)==(d|0))c[6840]=c[f>>2];c[e>>2]=c[6841];c[6841]=d;c[6837]=(c[6837]|0)+-1}}while((b|0)!=0)}a=(c[80037]|0)==0?c[80050]|0:c[80051]|0;b=c[80028]|0;d=(b|0)==0;if((a|0)!=0&(c[80052]|0)!=0&(c[80045]|0)==0){if(d)break;gg[b&511](a)|0;break}else{if(d)break;gg[b&511](0)|0;break}}while(0);t=c[80052]|0;c[80052]=1;do if((t|0)!=1){a=(c[80037]|0)==0?c[80050]|0:c[80051]|0;b=c[80028]|0;d=(b|0)==0;if((a|0)!=0&(c[80045]|0)==0){if(d)break;gg[b&511](a)|0;break}else{if(d)break;gg[b&511](0)|0;break}}while(0);a=c[80049]|0;if(a|0)do{f=a;a=c[a>>2]|0;b=c[80050]|0;c:do if((b|0)!=(f|0)){do if((c[80051]|0)==(f|0)){if(!b)b=(c[80037]|0)==0?0:f;else c[80051]=b;d=c[80028]|0;e=(d|0)==0;if((b|0)!=0&(c[80052]|0)!=0&(c[80045]|0)==0){if(e)break;gg[d&511](b)|0;break}else{if(e)break;gg[d&511](0)|0;break}}while(0);b=0;d=c[80049]|0;while(1){if(!d)break c;e=c[d>>2]|0;if((d|0)==(f|0))break;else{b=d;d=e}}c[(b|0?b:320196)>>2]=e;b=c[80030]|0;if(b|0)vg[b&511](f)}while(0)}while((a|0)!=0);a=c[80050]|0;if(a|0?(q=c[80030]|0,q|0):0)vg[q&511](a);a=c[80048]|0;if(a|0)fN(a);a=320104;b=a+112|0;do{c[a>>2]=0;a=a+4|0}while((a|0)<(b|0));MM(16384);a=c[80021]|0;b=a+260|0;if((c[b>>2]|0)!=0?(c[b>>2]=0,r=c[a+208>>2]|0,(r|0)!=0):0){vg[r&511](a);a=c[80021]|0}b=c[a+272>>2]|0;if(b)do{NM(b);a=c[80021]|0;b=c[a+272>>2]|0}while((b|0)!=0);vg[c[a+8>>2]&511](a);b=c[80021]|0;d=c[b+264>>2]|0;a=c[b+268>>2]|0;if((d|0)>0){f=0;do{d=c[a+(f*68|0)+8>>2]|0;e=a+(f*68|0)+12|0;b=c[e>>2]|0;if(d)do{d=d+-1|0;fN(c[b+(d*20|0)+16>>2]|0);b=c[e>>2]|0;c[b+(d*20|0)+16>>2]=0}while((d|0)!=0);fN(b);c[e>>2]=0;b=a+(f*68|0)+32|0;fN(c[b>>2]|0);c[b>>2]=0;b=a+(f*68|0)+64|0;fN(c[b>>2]|0);c[b>>2]=0;f=f+1|0;b=c[80021]|0;d=c[b+264>>2]|0;a=c[b+268>>2]|0}while((f|0)<(d|0))}if(!a)a=b;else{if((d|0)>0){b=0;do{fN(c[a+(b*68|0)>>2]|0);b=b+1|0;t=c[80021]|0;a=c[t+268>>2]|0}while((b|0)<(c[t+264>>2]|0))}fN(a);a=c[80021]|0;c[a+268>>2]=0;c[a+264>>2]=0}fN(c[a+288>>2]|0);t=c[80021]|0;c[t+288>>2]=0;vg[c[t+684>>2]&511](t);c[80021]=0;l=s;return}function jM(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+128|0;k=t+40|0;s=t+32|0;q=t+24|0;n=t+16|0;i=t+8|0;r=t+44|0;b=c[80021]|0;a:do if(!b){mE(288511,t);j=11}else{if(d|0?(c[d>>2]|0)==(b+280|0):0){b=c[d+140>>2]|0;if(!b){j=11;break}while(1){i=c[b>>2]|0;if(i|0?(JN(i,307134)|0)==0:0)break;b=c[b+8>>2]|0;if(!b){j=11;break a}}b=c[b+4>>2]|0;if(!b){j=11;break}else{p=b;break}}mE(307733,i);j=11}while(0);if((j|0)==11){i=Df(307071)|0;b=c[80024]|0;b:do if(!b){b=i;j=17}else{while(1){if(!(JN(307071,c[b>>2]|0)|0))break;b=c[b+16>>2]|0;if(!b){b=i;j=17;break b}}if(i|0?(c[b+8>>2]|0)!=2:0){b=i;j=18;break}b=c[b+4>>2]|0;j=17}while(0);if((j|0)==17)if(!b)j=24;else j=18;do if((j|0)==18)if((((a[b>>0]&-2)<<24>>24!=48?(VO(b,307530)|0)!=0:0)?(VO(b,307100)|0)!=0:0)?(VO(b,307062)|0)!=0:0){if(VO(c[3901]|0,b)|0)if(!(VO(c[6845]|0,b)|0))b=1;else{j=24;break}else b=0;b=JM(d,b,0)|0;if(b)h=b;else j=24}else j=24;while(0);do if((j|0)==24){if(JN(c[3901]|0,307062)|0?(m=JM(d,0,0)|0,m|0):0){h=m;break}if(JN(c[6845]|0,307062)|0?(h=JM(d,1,0)|0,h|0):0)break;mE(307535,k);g=-1;l=t;return g|0}while(0);b=eN(20)|0;if(!b){nM(h);mE(294869,n);g=-1;l=t;return g|0}if(c[b+-4>>2]&3|0){i=b;j=i+20|0;do{a[i>>0]=0;i=i+1|0}while((i|0)<(j|0))}lL(d,307134,b)|0;c[b>>2]=h;p=b}n=p+4|0;b=c[n>>2]|0;if(b|0){mM(b);c[n>>2]=0}o=p+8|0;fN(c[o>>2]|0);c[o>>2]=0;m=c[p>>2]|0;if(m|0?(c[m>>2]|0)==332969:0){i=r;b=m+104|0;j=i+84|0;do{c[i>>2]=c[b>>2];i=i+4|0;b=b+4|0}while((i|0)<(j|0));b=c[r+12>>2]|0;c[e>>2]=b;k=c[r+8>>2]|0;c:do if(k){j=0;h=b;d:while(1){e:do if((h|0)==0|(h&-268435456|0)==268435456){i=h>>>24&15;if((i+-4|0)>>>0<3)switch(h>>>20&15){case 8:case 7:case 4:case 3:break e;default:{}}if((i+-7|0)>>>0>=5)break d;switch(h>>>20&15){case 5:case 6:case 2:case 3:break;default:break d}}while(0);h=j+1|0;if(h>>>0>=k>>>0)break c;j=h;h=c[r+12+(h<<2)>>2]|0}c[e>>2]=h;b=h}while(0);h=d+24|0;i=d+28|0;d=KM(m,b,c[h>>2]|0,c[i>>2]|0)|0;c[n>>2]=d;if(!d){g=-1;l=t;return g|0}b=c[e>>2]|0;f:do if((b|0)==0|(b&-268435456|0)==268435456)b=b&255;else{if((b|0)<1498831189)switch(b|0){case 844715353:{b=2;break f}default:{}}else switch(b|0){case 1498831189:{b=2;break f}default:{}}b=(b|0)==1431918169?2:1}while(0);c[p+16>>2]=b;b=(O(c[h>>2]|0,b)|0)+3&-4;h=p+12|0;c[h>>2]=b;b=eN(O(b,c[i>>2]|0)|0)|0;c[o>>2]=b;if(!b){mE(294869,s);g=-1;l=t;return g|0}else{c[f>>2]=b;c[g>>2]=c[h>>2];qM(c[p>>2]|0,0);g=0;l=t;return g|0}}mE(289638,q);g=-1;l=t;return g|0}function kM(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+80|0;r=s+56|0;n=s+48|0;m=s+40|0;p=s+32|0;o=s+24|0;g=s+16|0;f=s+8|0;q=s+64|0;a=c[80021]|0;a:do if(!a)mE(288511,s);else{if(b|0?(c[b>>2]|0)==(a+280|0):0){a=c[b+140>>2]|0;if(!a)break;while(1){f=c[a>>2]|0;if(f|0?(JN(f,307134)|0)==0:0)break;a=c[a+8>>2]|0;if(!a)break a}i=c[a+4>>2]|0;if(!i)break;j=i+4|0;k=c[j>>2]|0;if(!k)break;h=c[b+24>>2]|0;b=c[b+28>>2]|0;if((h|0)<1){c[o>>2]=307502;mE(310091,o);r=0;l=s;return r|0}if((b|0)<1){c[p>>2]=307508;mE(310091,p);r=0;l=s;return r|0}if(!d){c[m>>2]=307515;mE(310091,m);r=0;l=s;return r|0}if((e|0)<1){c[n>>2]=307521;mE(310091,n);r=0;l=s;return r|0}else{a=0;f=0;g=b}do{o=c[d+(a<<4)+4>>2]|0;p=(c[d+(a<<4)+12>>2]|0)+o|0;g=(o|0)<0?0:(o|0)<(g|0)?o:g;f=(p|0)>(b|0)?b:(p|0)>(f|0)?p:f;a=a+1|0}while((a|0)!=(e|0));if((f|0)<=(g|0)){r=0;l=s;return r|0}c[q>>2]=0;c[q+4>>2]=g;c[q+8>>2]=h;c[q+12>>2]=f-g;e=c[i+12>>2]|0;if((rM(k,q,(c[i+8>>2]|0)+(O(e,g)|0)|0,e)|0)<0){r=-1;l=s;return r|0}if((sM(c[i>>2]|0,c[j>>2]|0,0,0)|0)<0){r=-1;l=s;return r|0}a=c[i>>2]|0;if(a|0?(c[a>>2]|0)==332969:0){if(c[a+192>>2]|0){r=0;l=s;return r|0}vg[c[a+84>>2]&511](a);r=0;l=s;return r|0}mE(289638,r);r=0;l=s;return r|0}mE(307733,f)}while(0);mE(307272,g);r=-1;l=s;return r|0}function lM(a,b){a=a|0;b=b|0;b=lL(b,307134,0)|0;if(!b)return;a=c[b+4>>2]|0;if(a|0)mM(a);a=c[b>>2]|0;if(a|0)nM(a);fN(c[b+8>>2]|0);fN(b);return}function mM(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+16|0;b=f;if(a|0?(c[a>>2]|0)==332970:0){e=c[a+32>>2]|0;if((c[e+308>>2]|0)==(a|0))pM(e,0);c[a>>2]=0;d=c[a+76>>2]|0;b=a+72|0;if(d|0)c[d+72>>2]=c[b>>2];b=c[b>>2]|0;c[((b|0)==0?e+304|0:b+76|0)>>2]=d;b=c[a+36>>2]|0;if(b|0)mM(b);b=c[a+40>>2]|0;if(b|0){fN(c[b+16>>2]|0);fN(c[b+20>>2]|0);fN(c[b+24>>2]|0);ME(c[b+56>>2]|0);ME(c[b+60>>2]|0);fN(b)}fN(c[a+44>>2]|0);Bg[c[e+88>>2]&255](e,a);fN(a);l=f;return}mE(289655,b);l=f;return}function nM(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+16|0;b=f;if(a|0?(c[a>>2]|0)==332969:0){b=c[80311]|0;a:do if(b|0){e=0;while(1){d=c[b+8>>2]|0;if((c[b>>2]|0)==42?(c[b+4>>2]|0)==(a|0):0)break;if(!d)break a;else{e=b;b=d}}c[(e|0?e+8|0:321244)>>2]=d;fN(b)}while(0);d=a+304|0;b=c[d>>2]|0;if(b|0)do{mM(b);b=c[d>>2]|0}while((b|0)!=0);b=c[a+188>>2]|0;if(b|0)lL(b,307157,0)|0;c[a>>2]=0;vg[c[a+92>>2]&511](a);l=f;return}mE(289638,b);l=f;return}function oM(b,d){b=b|0;d=d|0;var e=0,f=0,h=0.0,i=0,j=0.0,k=0,m=0,n=0.0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;K=l;l=l+144|0;r=K+128|0;q=K+120|0;p=K+112|0;m=K+104|0;x=K+96|0;w=K+88|0;J=K+80|0;F=K+72|0;E=K+64|0;G=K+56|0;D=K+48|0;y=K+40|0;C=K+32|0;z=K+24|0;v=K+16|0;u=K+8|0;t=K;H=K+136|0;I=K+132|0;switch(c[d>>2]|0){case 512:{f=c[d+8>>2]|0;e=c[80021]|0;a:do if((e|0)!=0?(i=c[e+272>>2]|0,(i|0)!=0):0){e=i;while(1){if((c[e+4>>2]|0)==(f|0)){f=e;break a}e=c[e+152>>2]|0;if(!e){f=0;break}}}else f=0;while(0);s=b+188|0;if((f|0)!=(c[s>>2]|0)){l=K;return 0}e=c[b+4>>2]|0;if(e|0)Bg[e&255](b,d);switch(a[d+12>>0]|0){case 6:{k=b+308|0;p=c[k>>2]|0;q=(p|0)!=0;do if(q){e=c[b+44>>2]|0;if(e|0?c[b+108>>2]&8|0:0){c[k>>2]=0;if((hg[e&63](b,0)|0)<0)break;t=b+216|0;m=b+232|0;c[t>>2]=c[m>>2];c[t+4>>2]=c[m+4>>2];c[t+8>>2]=c[m+8>>2];c[t+12>>2]=c[m+12>>2];t=b+248|0;m=b+264|0;c[t>>2]=c[m>>2];c[t+4>>2]=c[m+4>>2];c[t+8>>2]=c[m+8>>2];c[t+12>>2]=c[m+12>>2];t=c[b+284>>2]|0;m=b+296|0;r=c[m+4>>2]|0;d=b+288|0;c[d>>2]=c[m>>2];c[d+4>>2]=r;d=c[b+204>>2]|0;c[b+280>>2]=t;c[b+196>>2]=d;c[b+200>>2]=c[b+208>>2];if((gg[c[b+48>>2]&511](b)|0)<0)break;gg[c[b+52>>2]&511](b)|0;break}mE(294969,t)}while(0);i=b+196|0;if(!(c[i>>2]|0)){e=c[b+8>>2]|0;do if(!e){e=c[s>>2]|0;f=c[80021]|0;if(!f){mE(288511,w);break}if(e|0?(c[e>>2]|0)==(f+280|0):0){c[H>>2]=c[e+24>>2];c[I>>2]=c[e+28>>2];break}mE(307733,x)}else ig[e&63](b,H,I)|0;while(0);f=c[H>>2]|0;e=c[I>>2]|0;if(!(c[k>>2]|0)){c[b+216>>2]=0;c[b+220>>2]=0;c[b+224>>2]=f;c[b+228>>2]=e;gg[c[b+48>>2]&511](b)|0}else{c[b+232>>2]=0;c[b+236>>2]=0;c[b+240>>2]=f;c[b+244>>2]=e}}else{c[H>>2]=1;c[I>>2]=1;m=b+200|0;b:do if(c[m>>2]|0){if((c[b>>2]|0)!=332969){mE(289638,u);break}e=c[k>>2]|0;do if(!e){e=c[b+8>>2]|0;if(e|0)if((ig[e&63](b,H,I)|0)<0)break b;else break;f=c[s>>2]|0;if(!f){mE(289671,y);break b}e=c[80021]|0;if(!e){mE(288511,z);break}if((c[f>>2]|0)==(e+280|0)){c[H>>2]=c[f+24>>2];c[I>>2]=c[f+28>>2];break}else{mE(307733,C);break}}else if((c[e>>2]|0)==332970){c[H>>2]=c[e+12>>2];c[I>>2]=c[e+16>>2];break}else{mE(289655,v);break b}while(0);j=+(c[i>>2]|0)/+(c[m>>2]|0);h=+(c[H>>2]|0)/+(c[I>>2]|0);if((c[b>>2]|0)==332969){g[b+288>>2]=1.0;g[b+292>>2]=1.0}else mE(289638,D);do if(!(c[b+212>>2]|0)){G=+B(+(j-h))<.0001;o=+(c[i>>2]|0);if(G){h=+(c[H>>2]|0)/o;qM(b,0);break}n=+(c[m>>2]|0);if(j>h){j=+(c[H>>2]|0);h=j/o;e=~~+N(+(n*h));if((c[b>>2]|0)==332969){I=((c[I>>2]|0)-e|0)/2|0;n=+g[b+288>>2];c[b+216>>2]=~~+A(+(n*0.0));o=+g[b+292>>2];c[b+220>>2]=~~+A(+(+(I|0)*o));c[b+224>>2]=~~+N(+(j*n));c[b+228>>2]=~~+N(+(+(e|0)*o));gg[c[b+48>>2]&511](b)|0;break}else{mE(289638,E);break}}else{j=+(c[I>>2]|0);h=j/n;e=~~+N(+(o*h));if((c[b>>2]|0)==332969){n=+g[b+288>>2];c[b+216>>2]=~~+A(+(+(((c[H>>2]|0)-e|0)/2|0|0)*n));o=+g[b+292>>2];c[b+220>>2]=~~+A(+(o*0.0));c[b+224>>2]=~~+N(+(+(e|0)*n));c[b+228>>2]=~~+N(+(j*o));gg[c[b+48>>2]&511](b)|0;break}else{mE(289638,F);break}}}else{f=c[i>>2]|0;if(j>h){i=c[H>>2]|0;e=(i|0)/(f|0)|0;k=c[m>>2]|0;m=c[I>>2]|0}else{i=c[I>>2]|0;k=c[m>>2]|0;e=(i|0)/(k|0)|0;m=i;i=c[H>>2]|0}h=+(e|0);f=~~+N(+(+(f|0)*h));e=~~+N(+(h*+(k|0)));if((c[b>>2]|0)==332969){n=+g[b+288>>2];c[b+216>>2]=~~+A(+(+((i-f|0)/2|0|0)*n));o=+g[b+292>>2];c[b+220>>2]=~~+A(+(+((m-e|0)/2|0|0)*o));c[b+224>>2]=~~+N(+(+(f|0)*n));c[b+228>>2]=~~+N(+(+(e|0)*o));gg[c[b+48>>2]&511](b)|0;break}else{mE(289638,G);break}}while(0);if((c[b>>2]|0)==332969){g[b+288>>2]=h;g[b+292>>2]=h;break}else{mE(289638,J);break}}while(0)}if(!q){l=K;return 0}pM(b,p);l=K;return 0}case 2:{c[b+192>>2]=1;l=K;return 0}case 1:{e=c[80021]|0;do if(!e)mE(288511,m);else{if(f|0?(c[f>>2]|0)==(e+280|0):0){if(!(c[f+48>>2]&64))break;l=K;return 0}mE(307733,p)}while(0);c[b+192>>2]=0;l=K;return 0}case 7:{c[b+192>>2]=1;l=K;return 0}case 8:case 9:{e=c[80021]|0;do if(!e)mE(288511,q);else{if(f|0?(c[f>>2]|0)==(e+280|0):0){if(!(c[f+48>>2]&8))break;l=K;return 0}mE(307733,r)}while(0);c[b+192>>2]=0;l=K;return 0}default:{l=K;return 0}}}case 1024:{if(!(c[b+196>>2]|0)){l=K;return 0}f=c[d+8>>2]|0;e=c[80021]|0;c:do if((e|0)!=0?(k=c[e+272>>2]|0,(k|0)!=0):0){e=k;while(1){if((c[e+4>>2]|0)==(f|0))break c;e=c[e+152>>2]|0;if(!e){e=0;break}}}else e=0;while(0);if((e|0)!=(c[b+188>>2]|0)){l=K;return 0}J=d+20|0;f=d+24|0;e=(c[f>>2]|0)-(c[b+220>>2]|0)|0;h=+g[b+288>>2];c[J>>2]=~~(+((c[J>>2]|0)-(c[b+216>>2]|0)|0)/h);j=+g[b+292>>2];c[f>>2]=~~(+(e|0)/j);f=d+28|0;e=c[f>>2]|0;if((e|0)<=0){if((e|0)<0){e=~~(+(e|0)/h);e=(e|0)<-1?e:-1;s=97}}else{e=~~(+(e|0)/h);e=(e|0)>1?e:1;s=97}if((s|0)==97)c[f>>2]=e;e=d+32|0;f=c[e>>2]|0;if((f|0)>0){b=~~(+(f|0)/j);c[e>>2]=(b|0)>1?b:1;l=K;return 0}if((f|0)>=0){l=K;return 0}b=~~(+(f|0)/j);c[e>>2]=(b|0)<-1?b:-1;l=K;return 0}case 1026:case 1025:{if(!(c[b+196>>2]|0)){l=K;return 0}i=c[d+8>>2]|0;f=c[80021]|0;d:do if((f|0)!=0?(e=c[f+272>>2]|0,(e|0)!=0):0)while(1){if((c[e+4>>2]|0)==(i|0))break d;e=c[e+152>>2]|0;if(!e){e=0;break}}else e=0;while(0);if((e|0)!=(c[b+188>>2]|0)){l=K;return 0}H=d+20|0;J=d+24|0;I=(c[J>>2]|0)-(c[b+220>>2]|0)|0;c[H>>2]=~~(+((c[H>>2]|0)-(c[b+216>>2]|0)|0)/+g[b+288>>2]);c[J>>2]=~~(+(I|0)/+g[b+292>>2]);l=K;return 0}default:{l=K;return 0}}return 0}function pM(b,d){b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+32|0;i=n+24|0;h=n+16|0;f=n+8|0;e=n;if((b|0?(m=c[b+44>>2]|0,m|0):0)?c[b+108>>2]&8|0:0){k=b+308|0;j=c[k>>2]|0;if((j|0)==(d|0)){l=n;return}do if(d){if((c[d>>2]|0)!=332970){mE(289655,f);l=n;return}if((c[d+32>>2]|0)!=(b|0)){mE(307179,h);l=n;return}if((c[d+8>>2]|0)==2){e=c[d+36>>2]|0;e=(e|0)==0?d:e;d=(e|0)!=0;if(j|0){f=e;break}i=b+232|0;j=b+216|0;c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];i=b+264|0;j=b+248|0;c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];c[b+284>>2]=c[b+280>>2];i=b+288|0;j=c[i+4>>2]|0;f=b+296|0;c[f>>2]=c[i>>2];c[f+4>>2]=j;c[b+204>>2]=c[b+196>>2];c[b+208>>2]=c[b+200>>2];f=e;break}else{mE(307222,i);l=n;return}}else{f=0;d=0}while(0);c[k>>2]=f;if((hg[m&63](b,f)|0)<0){l=n;return}e=b+216|0;if(d){c[e>>2]=0;c[b+220>>2]=0;e=f+12|0;c[b+224>>2]=c[e>>2];f=f+16|0;c[b+228>>2]=c[f>>2];d=b+248|0;h=d+16|0;do{a[d>>0]=0;d=d+1|0}while((d|0)<(h|0));g[b+288>>2]=1.0;g[b+292>>2]=1.0;d=0}else{d=b+232|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];d=b+248|0;m=b+264|0;c[d>>2]=c[m>>2];c[d+4>>2]=c[m+4>>2];c[d+8>>2]=c[m+8>>2];c[d+12>>2]=c[m+12>>2];d=c[b+284>>2]|0;m=b+296|0;e=c[m+4>>2]|0;f=b+288|0;c[f>>2]=c[m>>2];c[f+4>>2]=e;f=b+208|0;e=b+204|0}m=c[e>>2]|0;c[b+280>>2]=d;c[b+196>>2]=m;c[b+200>>2]=c[f>>2];if((gg[c[b+48>>2]&511](b)|0)<0){l=n;return}gg[c[b+52>>2]&511](b)|0;l=n;return}mE(294969,e);l=n;return}function qM(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0.0,o=0.0;m=l;l=l+48|0;i=m+32|0;k=m+24|0;j=m+16|0;e=m+8|0;d=m;if(a|0?(c[a>>2]|0)==332969:0){do if(!b){c[a+216>>2]=0;c[a+220>>2]=0;f=a+224|0;h=a+228|0;b=c[a+308>>2]|0;if(b|0){if((c[b>>2]|0)==332970){c[f>>2]=c[b+12>>2];c[h>>2]=c[b+16>>2];break}mE(289655,e);l=m;return}b=c[a+8>>2]|0;if(b|0){if((ig[b&63](a,f,h)|0)>=0)break;l=m;return}d=c[a+188>>2]|0;if(!d){mE(289671,i);l=m;return}b=c[80021]|0;if(!b){mE(288511,j);break}if((c[d>>2]|0)==(b+280|0)){c[f>>2]=c[d+24>>2];c[h>>2]=c[d+28>>2];break}else{mE(307733,k);break}}else{o=+g[a+288>>2];c[a+216>>2]=~~+A(+(+(c[b>>2]|0)*o));n=+g[a+292>>2];c[a+220>>2]=~~+A(+(+(c[b+4>>2]|0)*n));c[a+224>>2]=~~+N(+(+(c[b+8>>2]|0)*o));c[a+228>>2]=~~+N(+(+(c[b+12>>2]|0)*n))}while(0);gg[c[a+48>>2]&511](a)|0;l=m;return}mE(289638,d);l=m;return}function rM(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=l;l=l+80|0;o=C+32|0;B=C+24|0;j=C+16|0;i=C+8|0;h=C;A=C+64|0;x=C+60|0;y=C+56|0;g=C+40|0;if(a|0?(c[a>>2]|0)==332970:0){if(!d){c[i>>2]=307295;mE(310091,i);B=-1;l=C;return B|0}if(!f){c[j>>2]=307302;mE(310091,j);B=-1;l=C;return B|0}if(!b){c[g>>2]=0;c[g+4>>2]=0;p=c[a+12>>2]|0;c[g+8>>2]=p;c[g+12>>2]=c[a+16>>2];u=g}else{u=b;p=c[b+8>>2]|0}t=u+8|0;if(!p){B=0;l=C;return B|0}v=u+12|0;j=c[v>>2]|0;if(!j){B=0;l=C;return B|0}w=a+40|0;b=c[w>>2]|0;z=c[a+36>>2]|0;if(!b){if(!z){B=c[a+32>>2]|0;B=lg[c[B+28>>2]&31](B,a,u,d,f)|0;l=C;return B|0}if((c[a+8>>2]|0)==1)if((tM(z,u,A,x)|0)<0){B=-1;l=C;return B|0}else{IE(c[t>>2]|0,c[v>>2]|0,c[a+4>>2]|0,d,f,c[z+4>>2]|0,c[A>>2]|0,c[x>>2]|0)|0;vM(z);B=0;l=C;return B|0}i=z+4|0;g=c[i>>2]|0;a:do if((g|0)==0|(g&-268435456|0)==268435456)g=g&255;else{if((g|0)<1498831189)switch(g|0){case 844715353:{g=2;break a}default:{}}else switch(g|0){case 1498831189:{g=2;break a}default:{}}g=(g|0)==1431918169?2:1}while(0);h=(O(g,p)|0)+3&-4;g=eN(O(h,j)|0)|0;if(!g){mE(294869,o);B=-1;l=C;return B|0}else{IE(c[t>>2]|0,c[v>>2]|0,c[a+4>>2]|0,d,f,c[i>>2]|0,g,h)|0;rM(z,u,g,h)|0;fN(g);B=0;l=C;return B|0}}g=c[b>>2]|0;b:do if((g|0)<1431918169)if((g|0)<844715353)switch(g|0){case 842094169:{k=15;break b}default:break b}else switch(g|0){case 844715353:{k=28;break b}default:break b}else{if((g|0)<1448433993)switch(g|0){case 1431918169:{k=28;break b}default:break b}if((g|0)<1498831189)switch(g|0){case 1448433993:{k=15;break b}default:break b}else switch(g|0){case 1498831189:{k=28;break b}default:break b}}while(0);do if((k|0)==15){h=c[u>>2]|0;q=u+4|0;g=c[q>>2]|0;s=b+8|0;if(!(h|g))if((p|0)==(c[s>>2]|0)?(j|0)==(c[b+12>>2]|0):0){v=O(j,p)|0;PQ(c[b+16>>2]|0,d|0,((v|0)/2|0)+v|0)|0;break}else g=0;r=b+16|0;if((j|0)>0){i=0;g=(c[r>>2]|0)+(O(c[s>>2]|0,g)|0)+h|0;h=d;while(1){PQ(g|0,h|0,p|0)|0;j=c[s>>2]|0;i=i+1|0;m=c[v>>2]|0;if((i|0)>=(m|0))break;else{g=g+j|0;h=h+f|0}}k=b+12|0;b=(c[t>>2]|0)/2|0;if((m|0)>1){g=(c[r>>2]|0)+(O(j,c[k>>2]|0)|0)|0;i=(O((c[q>>2]|0)/2|0,j)|0)/2|0;o=(f|0)/2|0;h=0;i=g+(i+((c[u>>2]|0)/2|0))|0;g=d+(O(m,f)|0)|0;while(1){PQ(i|0,g|0,b|0)|0;m=c[s>>2]|0;h=h+1|0;n=c[v>>2]|0;if((h|0)>=((n|0)/2|0|0))break;else{i=i+((m|0)/2|0)|0;g=g+o|0}}b=O(n,f)|0;g=O(m,c[k>>2]|0)|0;j=(c[t>>2]|0)/2|0;if((n|0)>1){h=(O((c[q>>2]|0)/2|0,m)|0)/2|0;i=0;h=(c[r>>2]|0)+g+((g|0)/4|0)+(h+((c[u>>2]|0)/2|0))|0;g=d+b+((b|0)/4|0)|0;while(1){PQ(h|0,g|0,j|0)|0;i=i+1|0;if((i|0)>=((c[v>>2]|0)/2|0|0))break;else{h=h+((c[s>>2]|0)/2|0)|0;g=g+o|0}}}}}}else if((k|0)==28?(m=b+36|0,n=p<<1,(j|0)>0):0){h=(c[b+44>>2]|0)+(O(e[m>>1]|0,c[u+4>>2]|0)|0)|0;i=0;h=h+(c[u>>2]<<1)|0;g=d;while(1){PQ(h|0,g|0,n|0)|0;i=i+1|0;if((i|0)>=(c[v>>2]|0))break;else{h=h+(e[m>>1]|0)|0;g=g+f|0}}}while(0);c[A>>2]=0;c[A+4>>2]=0;h=c[a+12>>2]|0;b=A+8|0;c[b>>2]=h;j=c[a+16>>2]|0;k=A+12|0;c[k>>2]=j;do if((c[a+8>>2]|0)==1)if((tM(z,A,x,y)|0)<0){g=-1;break}else{uM(c[w>>2]|0,A,c[z+4>>2]|0,c[b>>2]|0,c[k>>2]|0,c[x>>2]|0,c[y>>2]|0);vM(z);g=0;break}else{i=z+4|0;g=c[i>>2]|0;c:do if((g|0)==0|(g&-268435456|0)==268435456)g=g&255;else{if((g|0)<1498831189)switch(g|0){case 844715353:{g=2;break c}default:{}}else switch(g|0){case 1498831189:{g=2;break c}default:{}}g=(g|0)==1431918169?2:1}while(0);h=(O(g,h)|0)+3&-4;g=eN(O(h,j)|0)|0;if(!g){mE(294869,B);g=-1;break}else{uM(c[w>>2]|0,A,c[i>>2]|0,c[b>>2]|0,c[k>>2]|0,g,h);rM(z,A,g,h)|0;fN(g);g=0;break}}while(0);B=g;l=C;return B|0}mE(289655,h);B=-1;l=C;return B|0}function sM(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0,j=0,k=0.0,m=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0,t=0,u=0,v=0,w=0;u=l;l=l+64|0;j=u+16|0;i=u+8|0;f=u;s=u+40|0;t=u+24|0;c[s>>2]=0;c[s+4>>2]=0;c[s+8>>2]=0;c[s+12>>2]=0;if(a|0?(c[a>>2]|0)==332969:0){if(b|0?(c[b>>2]|0)==332970:0){if((c[b+32>>2]|0)!=(a|0)){mE(307179,j);t=-1;l=u;return t|0}if(c[a+192>>2]|0){t=0;l=u;return t|0}c[s>>2]=0;f=s+4|0;c[f>>2]=0;i=c[b+12>>2]|0;j=s+8|0;c[j>>2]=i;m=c[b+16>>2]|0;n=s+12|0;c[n>>2]=m;do if(d|0){o=c[d+8>>2]|0;if((o|0)>=1?(p=c[d+12>>2]|0,!((p|0)<1|(i|0)<1|(m|0)<1)):0){w=c[d>>2]|0;v=o+w|0;o=(w|0)>0?w:0;c[s>>2]=o;o=((i|0)<(v|0)?i:v)-o|0;c[j>>2]=o;j=c[d+4>>2]|0;d=p+j|0;p=(j|0)>0?j:0;c[f>>2]=p;p=((m|0)<(d|0)?m:d)-p|0;c[n>>2]=p;if((p|0)<1|(o|0)<1)f=0;else break;l=u;return f|0}c[j>>2]=0;c[n>>2]=0;w=0;l=u;return w|0}while(0);q=+g[a+288>>2];r=+g[a+292>>2];i=~~(+(c[a+224>>2]|0)/q);f=~~(+(c[a+228>>2]|0)/r);do if(e){j=c[e+8>>2]|0;if((j|0)<1){w=0;l=u;return w|0}m=c[e+12>>2]|0;if((m|0)<1|(i|0)<1|(f|0)<1){w=0;l=u;return w|0}o=c[e>>2]|0;w=j+o|0;if((((i|0)<(w|0)?i:w)|0)<=(((o|0)>0?o:0)|0)){w=0;l=u;return w|0}n=c[e+4>>2]|0;w=m+n|0;if((((f|0)<(w|0)?f:w)|0)>(((n|0)>0?n:0)|0)){i=j;f=m;k=+(o|0);h=+(n|0);break}else{w=0;l=u;return w|0}}else{k=0.0;h=0.0}while(0);w=c[b+36>>2]|0;g[t>>2]=k*q;g[t+4>>2]=h*r;g[t+8>>2]=q*+(i|0);g[t+12>>2]=r*+(f|0);w=jg[c[a+72>>2]&31](a,(w|0)==0?b:w,s,t)|0;l=u;return w|0}mE(289655,i);w=-1;l=u;return w|0}mE(289638,f);w=-1;l=u;return w|0}function tM(a,b,d,f){a=a|0;b=b|0;d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+48|0;k=m+16|0;i=m+8|0;h=m;g=m+24|0;if(a|0?(c[a>>2]|0)==332970:0){if((c[a+8>>2]|0)!=1){mE(307402,i);f=-1;l=m;return f|0}if(!b){c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=c[a+12>>2];c[g+12>>2]=c[a+16>>2]}else g=b;j=c[a+40>>2]|0;if(!j){if(!(c[a+36>>2]|0)){k=c[a+32>>2]|0;f=lg[c[k+36>>2]&31](k,a,g,d,f)|0;l=m;return f|0}h=a+52|0;c[h>>2]=c[g>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[h+12>>2]=c[g+12>>2];h=c[a+48>>2]|0;i=(c[a+44>>2]|0)+(O(h,c[g+4>>2]|0)|0)|0;g=c[g>>2]|0;b=c[a+4>>2]|0;a:do if((b|0)==0|(b&-268435456|0)==268435456)b=b&255;else{if((b|0)<1498831189)switch(b|0){case 844715353:{b=2;break a}default:{}}else switch(b|0){case 1498831189:{b=2;break a}default:{}}b=(b|0)==1431918169?2:1}while(0);c[d>>2]=i+(O(b,g)|0);c[f>>2]=h;f=0;l=m;return f|0}b=c[j>>2]|0;if((b|0)<1448433993)switch(b|0){case 842094169:{a=10;break}default:a=16}else switch(b|0){case 1448433993:{a=10;break}default:a=16}do if((a|0)==10){if((((c[g>>2]|0)==0?(c[g+4>>2]|0)==0:0)?(c[g+8>>2]|0)==(c[j+8>>2]|0):0)?(c[g+12>>2]|0)==(c[j+12>>2]|0):0){h=0;i=e[j+36>>1]|0;b=0;break}mE(307447,k);f=-1;l=m;return f|0}else if((a|0)==16){h=c[g+4>>2]|0;i=e[j+36>>1]|0;b=c[g>>2]<<1}while(0);c[d>>2]=(c[j+44>>2]|0)+(O(h,i)|0)+b;c[f>>2]=i;f=0;l=m;return f|0}mE(289655,h);f=-1;l=m;return f|0}function uM(a,b,d,e,f,g,h){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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;N=l;l=l+80|0;J=N+32|0;I=N+24|0;D=N+16|0;k=N+8|0;j=N;M=N+56|0;G=N+48|0;H=N+44|0;E=N+40|0;F=N+36|0;A=(d|0)==0|(d&-268435456|0)==268435456;a:do if(A){i=d&255;if(!i){mE(307308,j);l=N;return}else K=i}else{b:do if((d|0)>=1431918169)if((d|0)<1498831189)switch(d|0){case 1431918169:break b;default:{K=1;break a}}else switch(d|0){case 1498831189:break b;default:{K=1;break a}}else switch(d|0){case 844715353:break;default:{K=1;break a}}while(0);K=2}while(0);i=a+4|0;if((c[i>>2]|0)!=(d|0)){z=(xI(d,M,G,H,E,F)|0)==0;if(z|(c[M>>2]|0)<15){mE(307336,k);l=N;return}c[i>>2]=d;x=c[a+24>>2]|0;y=x+3072|0;z=x+6144|0;n=c[G>>2]|0;o=(n|0)==0;p=wM(n)|0;q=c[F>>2]|0;r=c[H>>2]|0;s=(r|0)==0;t=wM(r)|0;u=c[E>>2]|0;v=(u|0)==0;w=wM(u)|0;m=0;do{if(o)i=0;else{j=n;i=0;do{i=(j&1)+i|0;j=j>>>1}while((j|0)!=0)}k=m+256|0;c[x+(k<<2)>>2]=q|m>>8-i<<p;if(s)i=0;else{j=r;i=0;do{i=(j&1)+i|0;j=j>>>1}while((j|0)!=0)}c[y+(k<<2)>>2]=q|m>>8-i<<t;if(v)i=0;else{j=u;i=0;do{i=(j&1)+i|0;j=j>>>1}while((j|0)!=0)}c[z+(k<<2)>>2]=q|m>>8-i<<w;m=m+1|0}while((m|0)!=256);c:do if(A){if((d&255|0)==2){i=0;L=21}}else{if((d|0)<1431918169)switch(d|0){case 844715353:{i=0;L=21;break c}default:break c}if((d|0)<1498831189)switch(d|0){case 1431918169:{i=0;L=21;break c}default:break c}else switch(d|0){case 1498831189:{i=0;L=21;break c}default:break c}}while(0);if((L|0)==21)while(1){L=0;w=i+256|0;v=x+(w<<2)|0;u=c[v>>2]|0;c[v>>2]=u<<16|u;v=y+(w<<2)|0;u=c[v>>2]|0;c[v>>2]=u<<16|u;w=z+(w<<2)|0;v=c[w>>2]|0;c[w>>2]=v<<16|v;i=i+1|0;if((i|0)==256)break;else L=21}j=x+1024|0;k=x+2044|0;m=x+4096|0;n=x+5116|0;o=x+7168|0;p=x+8188|0;i=0;do{c[x+(i<<2)>>2]=c[j>>2];w=i+512|0;c[x+(w<<2)>>2]=c[k>>2];c[y+(i<<2)>>2]=c[m>>2];c[y+(w<<2)>>2]=c[n>>2];c[z+(i<<2)>>2]=c[o>>2];c[z+(w<<2)>>2]=c[p>>2];i=i+1|0}while((i|0)!=256);i=c[a>>2]|0;d:do if((i|0)<1431918169)if((i|0)<844715353)switch(i|0){case 842094169:{L=24;break d}default:break d}else switch(i|0){case 844715353:{L=31;break d}default:break d}else{if((i|0)<1448433993)switch(i|0){case 1431918169:{L=31;break d}default:break d}if((i|0)<1498831189)switch(i|0){case 1448433993:{L=24;break d}default:break d}else switch(i|0){case 1498831189:{L=31;break d}default:break d}}while(0);e:do if((L|0)==24){if(A)switch((d&255)<<24>>24){case 2:{c[a+28>>2]=1;c[a+32>>2]=2;break e}case 3:{c[a+28>>2]=3;c[a+32>>2]=4;break e}case 4:{c[a+28>>2]=5;c[a+32>>2]=6;break e}default:break e}f:do if((d|0)>=1431918169)if((d|0)<1498831189)switch(d|0){case 1431918169:break f;default:break e}else switch(d|0){case 1498831189:break f;default:break e}else switch(d|0){case 844715353:break;default:break e}while(0);c[a+28>>2]=1;c[a+32>>2]=2}else if((L|0)==31){if(A)switch((d&255)<<24>>24){case 2:{c[a+28>>2]=7;c[a+32>>2]=8;break e}case 3:{c[a+28>>2]=9;c[a+32>>2]=10;break e}case 4:{c[a+28>>2]=11;c[a+32>>2]=12;break e}default:break e}g:do if((d|0)>=1431918169)if((d|0)<1498831189)switch(d|0){case 1431918169:break g;default:break e}else switch(d|0){case 1498831189:break g;default:break e}else switch(d|0){case 844715353:break;default:break e}while(0);c[a+28>>2]=7;c[a+32>>2]=8}while(0);A=a+60|0;ME(c[A>>2]|0);c[A>>2]=0}if((((c[b>>2]|0)==0?(c[b+4>>2]|0)==0:0)?(B=c[b+8>>2]|0,(B|0)>=(c[a+8>>2]|0)):0)?(C=c[b+12>>2]|0,(C|0)>=(c[a+12>>2]|0)):0){j=(B<<1|0)==(e|0)&(C<<1|0)==(f|0);i=j&1;if(!((B|0)==(e|0)&(C|0)==(f|0)))if(j){q=i;r=0}else{q=i;L=45}else{q=0;r=0}}else{q=0;L=45}if((L|0)==45){j=a+60|0;i=c[j>>2]|0;do if(!i){xI(d,M,G,H,E,F)|0;i=xJ(c[M>>2]|0,c[G>>2]|0,c[H>>2]|0,c[E>>2]|0,c[F>>2]|0)|0;if(i){i=yJ(0,0,i)|0;if(i|0){c[i>>2]=c[i>>2]|1;c[i+20>>2]=g;c[i+8>>2]=e;c[i+12>>2]=f;c[i+16>>2]=h;c[i+36>>2]=0;c[i+40>>2]=0;c[i+44>>2]=e;c[i+48>>2]=f;c[j>>2]=i;L=52;break}}else mE(295660,D);c[j>>2]=0;j=0;i=g}else{c[i+8>>2]=e;c[i+12>>2]=f;c[i+20>>2]=g;c[i+16>>2]=h;L=52}while(0);h:do if((L|0)==52){j=a+56|0;i=c[j>>2]|0;do if(!i){xI(d,M,G,H,E,F)|0;i=xJ(c[M>>2]|0,c[G>>2]|0,c[H>>2]|0,c[E>>2]|0,c[F>>2]|0)|0;if(i){i=yJ(c[a+8>>2]|0,c[a+12>>2]|0,i)|0;c[j>>2]=i;if(!i){j=0;i=g;break h}else break}else{mE(295660,I);c[j>>2]=0;j=0;i=g;break h}}while(0);j=1;h=c[i+16>>2]|0;i=c[i+20>>2]|0}while(0);if(j){r=1;g=i}else{l=N;return}}i=c[a>>2]|0;i:do if((i|0)<1431918169)if((i|0)<844715353){switch(i|0){case 842094169:break;default:{L=64;break i}}n=c[a+52>>2]|0;o=c[a+48>>2]|0;p=c[a+44>>2]|0;break}else{switch(i|0){case 844715353:break;default:{L=64;break i}}p=c[a+44>>2]|0;n=p+1|0;o=p+3|0;break}else{if((i|0)<1448433993){switch(i|0){case 1431918169:break;default:{L=64;break i}}p=c[a+44>>2]|0;n=p+3|0;o=p+1|0;break}if((i|0)<1498831189){switch(i|0){case 1448433993:break;default:{L=64;break i}}n=c[a+48>>2]|0;o=c[a+52>>2]|0;p=c[a+44>>2]|0;break}else{switch(i|0){case 1498831189:break;default:{L=64;break i}}p=c[a+44>>2]|0;n=p;o=p+2|0;p=p+1|0;break}}while(0);if((L|0)==64){mE(307371,J);l=N;return}i=(h|0)/(K|0)|0;j=c[a+8>>2]|0;h=c[a+12>>2]|0;k=c[a+20>>2]|0;m=c[a+24>>2]|0;if(!q)Jg[c[a+28>>2]&15](k,m,p,o,n,g,h,j,i-j|0);else Jg[c[a+32>>2]&15](k,m,p,o,n,g,h,j,i-(j<<1)|0);if(!r){l=N;return};c[M>>2]=c[b>>2];c[M+4>>2]=c[b+4>>2];c[M+8>>2]=c[b+8>>2];c[M+12>>2]=c[b+12>>2];BJ(c[a+56>>2]|0,M,c[a+60>>2]|0,0)|0;l=N;return}function vM(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;b=m;j=m+28|0;k=m+24|0;f=m+8|0;if(a|0?(c[a>>2]|0)==332970:0){if((c[a+8>>2]|0)!=1){l=m;return}b=a+40|0;i=c[a+36>>2]|0;if(c[b>>2]|0){c[j>>2]=0;c[k>>2]=0;c[f>>2]=0;c[f+4>>2]=0;d=f+8|0;c[d>>2]=c[a+12>>2];e=f+12|0;c[e>>2]=c[a+16>>2];if((tM(i,f,j,k)|0)>=0){uM(c[b>>2]|0,f,c[i+4>>2]|0,c[d>>2]|0,c[e>>2]|0,c[j>>2]|0,c[k>>2]|0);vM(i)}l=m;return}if(!i){k=c[a+32>>2]|0;Bg[c[k+40>>2]&255](k,a);l=m;return}c[j>>2]=0;c[k>>2]=0;d=a+52|0;e=c[a+48>>2]|0;f=(c[a+44>>2]|0)+(O(e,c[a+56>>2]|0)|0)|0;g=c[d>>2]|0;h=a+4|0;b=c[h>>2]|0;a:do if((b|0)==0|(b&-268435456|0)==268435456)b=b&255;else{if((b|0)<1498831189)switch(b|0){case 844715353:{b=2;break a}default:{}}else switch(b|0){case 1498831189:{b=2;break a}default:{}}b=(b|0)==1431918169?2:1}while(0);if((tM(i,d,j,k)|0)>=0){g=f+(O(b,g)|0)|0;IE(c[a+60>>2]|0,c[a+64>>2]|0,c[h>>2]|0,g,e,c[i+4>>2]|0,c[j>>2]|0,c[k>>2]|0)|0;vM(i)}l=m;return}mE(289655,b);l=m;return}function wM(a){a=a|0;if(!a){a=32;return a|0}if(!(a&1))return (wM(a>>>1)|0)+1|0;else{a=0;return a|0}return 0}function xM(a,e,f,g,h,i,j,k,l){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;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;v=(k|0)/2|0;t=(l<<1)+k|0;if((j+1|0)>>>0<3|(k+1|0)>>>0<3)return;u=v<<1;s=i+(k<<1)+(l<<1)|0;q=(j|0)/2|0;while(1){r=f+u|0;n=v;o=f+k|0;p=s;l=g;j=h;m=i;while(1){n=n+-1|0;z=d[l>>0]|0;y=(c[a+(z<<2)>>2]|0)+256|0;w=d[j>>0]|0;z=(c[a+((z|256)<<2)>>2]|0)+1024+(c[a+((w|512)<<2)>>2]|0)|0;w=(c[a+((w|768)<<2)>>2]|0)+1792|0;x=d[f>>0]|0;b[m>>1]=c[e+(x+z<<2)>>2]|c[e+(x+y<<2)>>2]|c[e+(x+w<<2)>>2];x=d[f+1>>0]|0;b[m+2>>1]=c[e+(x+z<<2)>>2]|c[e+(x+y<<2)>>2]|c[e+(x+w<<2)>>2];x=d[o>>0]|0;b[p>>1]=c[e+(x+z<<2)>>2]|c[e+(x+y<<2)>>2]|c[e+(x+w<<2)>>2];x=d[o+1>>0]|0;b[p+2>>1]=c[e+(x+z<<2)>>2]|c[e+(x+y<<2)>>2]|c[e+(x+w<<2)>>2];if(!n)break;else{o=o+2|0;p=p+4|0;f=f+2|0;l=l+1|0;j=j+1|0;m=m+4|0}}q=q+-1|0;if(!q)break;else{s=s+(u<<1)+(t<<1)|0;f=r+k|0;g=g+v|0;h=h+v|0;i=i+(u<<1)+(t<<1)|0}}return}function yM(a,b,e,f,g,h,i,j,k){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;u=(k|0)/2|0;s=u+j|0;t=(j|0)/2|0;u=(s*3|0)+u|0;if((i+1|0)>>>0<3|(j+1|0)>>>0<3)return;v=t<<1;r=h;q=h+(s<<1<<2)|0;o=(i|0)/2|0;while(1){p=e+v|0;k=t;h=f;i=g;l=r;m=e+j|0;n=q;while(1){k=k+-1|0;A=d[h>>0]|0;z=(c[a+(A<<2)>>2]|0)+256|0;x=d[i>>0]|0;A=(c[a+((A|256)<<2)>>2]|0)+1024+(c[a+((x|512)<<2)>>2]|0)|0;x=(c[a+((x|768)<<2)>>2]|0)+1792|0;w=d[e>>0]|0;w=c[b+(w+A<<2)>>2]|c[b+(w+z<<2)>>2]|c[b+(w+x<<2)>>2];c[l+(s<<2)>>2]=w;c[l>>2]=w;w=l+4|0;y=d[e+1>>0]|0;y=c[b+(y+A<<2)>>2]|c[b+(y+z<<2)>>2]|c[b+(y+x<<2)>>2];c[w+(s<<2)>>2]=y;c[w>>2]=y;w=d[m>>0]|0;w=c[b+(w+A<<2)>>2]|c[b+(w+z<<2)>>2]|c[b+(w+x<<2)>>2];c[n+(s<<2)>>2]=w;c[n>>2]=w;w=n+4|0;y=d[m+1>>0]|0;x=c[b+(y+A<<2)>>2]|c[b+(y+z<<2)>>2]|c[b+(y+x<<2)>>2];c[w+(s<<2)>>2]=x;c[w>>2]=x;if(!k)break;else{h=h+1|0;i=i+1|0;l=l+8|0;m=m+2|0;n=n+8|0;e=e+2|0}}o=o+-1|0;if(!o)break;else{f=f+t|0;g=g+t|0;r=r+(v<<2)+(u<<2)|0;q=q+(v<<2)+(u<<2)|0;e=p+j|0}}return}function zM(b,e,f,g,h,i,j,k,l){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;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;z=(k|0)/2|0;u=((l<<1)+k|0)*3|0;if((j+1|0)>>>0<3)return;v=(k+1|0)>>>0<3;w=z<<1;x=z*6|0;y=w+k|0;t=i;i=i+(k*3|0)+(l*3|0)|0;l=f;s=(j|0)/2|0;r=f;while(1){s=s+-1|0;j=r+k|0;if(v){f=l;l=t}else{f=l+w|0;n=z;o=g;p=h;q=t;m=i;while(1){n=n+-1|0;D=d[o>>0]|0;C=(c[b+(D<<2)>>2]|0)+256|0;A=d[p>>0]|0;D=(c[b+((D|256)<<2)>>2]|0)+1024+(c[b+((A|512)<<2)>>2]|0)|0;A=(c[b+((A|768)<<2)>>2]|0)+1792|0;B=d[l>>0]|0;B=c[e+(B+D<<2)>>2]|c[e+(B+C<<2)>>2]|c[e+(B+A<<2)>>2];a[q>>0]=B;a[q+1>>0]=B>>>8;a[q+2>>0]=B>>>16;B=d[l+1>>0]|0;B=c[e+(B+D<<2)>>2]|c[e+(B+C<<2)>>2]|c[e+(B+A<<2)>>2];a[q+3>>0]=B;a[q+4>>0]=B>>>8;a[q+5>>0]=B>>>16;B=d[j>>0]|0;B=c[e+(B+D<<2)>>2]|c[e+(B+C<<2)>>2]|c[e+(B+A<<2)>>2];a[m>>0]=B;a[m+1>>0]=B>>>8;a[m+2>>0]=B>>>16;B=d[j+1>>0]|0;A=c[e+(B+D<<2)>>2]|c[e+(B+C<<2)>>2]|c[e+(B+A<<2)>>2];a[m+3>>0]=A;a[m+4>>0]=A>>>8;a[m+5>>0]=A>>>16;if(!n)break;else{o=o+1|0;p=p+1|0;q=q+6|0;j=j+2|0;m=m+6|0;l=l+2|0}}g=g+z|0;h=h+z|0;l=t+x|0;j=r+y|0;i=i+x|0}if(!s)break;else{t=l+u|0;i=i+u|0;l=f+k|0;r=j}}return}function AM(b,e,f,g,h,i,j,k,l){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;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=(k<<1)+l|0;E=m*3|0;F=(k|0)/2|0;u=(m*9|0)+(l*3|0)|0;if((j+1|0)>>>0<3)return;v=(k+1|0)>>>0<3;w=E+3|0;x=E+4|0;y=E+1|0;z=E+5|0;A=E+2|0;B=F<<1;C=F*12|0;D=B+k|0;t=i;l=i+(m*6|0)|0;m=f;s=(j|0)/2|0;r=f;while(1){s=s+-1|0;i=r+k|0;if(v){j=m;m=t}else{j=m+B|0;n=F;o=g;p=h;q=t;f=l;while(1){n=n+-1|0;K=d[o>>0]|0;J=(c[b+(K<<2)>>2]|0)+256|0;G=d[p>>0]|0;K=(c[b+((K|256)<<2)>>2]|0)+1024+(c[b+((G|512)<<2)>>2]|0)|0;G=(c[b+((G|768)<<2)>>2]|0)+1792|0;I=d[m>>0]|0;I=c[e+(I+K<<2)>>2]|c[e+(I+J<<2)>>2]|c[e+(I+G<<2)>>2];H=I&255;a[q+w>>0]=H;a[q+E>>0]=H;a[q+3>>0]=H;a[q>>0]=H;H=I>>>8&255;a[q+x>>0]=H;a[q+y>>0]=H;a[q+4>>0]=H;a[q+1>>0]=H;I=I>>>16&255;a[q+z>>0]=I;a[q+A>>0]=I;a[q+5>>0]=I;a[q+2>>0]=I;I=q+6|0;H=d[m+1>>0]|0;H=c[e+(H+K<<2)>>2]|c[e+(H+J<<2)>>2]|c[e+(H+G<<2)>>2];L=H&255;a[I+w>>0]=L;a[I+E>>0]=L;a[q+9>>0]=L;a[I>>0]=L;L=H>>>8&255;a[I+x>>0]=L;a[I+y>>0]=L;a[q+10>>0]=L;a[q+7>>0]=L;H=H>>>16&255;a[I+z>>0]=H;a[I+A>>0]=H;a[q+11>>0]=H;a[q+8>>0]=H;H=d[i>>0]|0;H=c[e+(H+K<<2)>>2]|c[e+(H+J<<2)>>2]|c[e+(H+G<<2)>>2];I=H&255;a[f+w>>0]=I;a[f+E>>0]=I;a[f+3>>0]=I;a[f>>0]=I;I=H>>>8&255;a[f+x>>0]=I;a[f+y>>0]=I;a[f+4>>0]=I;a[f+1>>0]=I;H=H>>>16&255;a[f+z>>0]=H;a[f+A>>0]=H;a[f+5>>0]=H;a[f+2>>0]=H;H=f+6|0;I=d[i+1>>0]|0;G=c[e+(I+K<<2)>>2]|c[e+(I+J<<2)>>2]|c[e+(I+G<<2)>>2];I=G&255;a[H+w>>0]=I;a[H+E>>0]=I;a[f+9>>0]=I;a[H>>0]=I;I=G>>>8&255;a[H+x>>0]=I;a[H+y>>0]=I;a[f+10>>0]=I;a[f+7>>0]=I;G=G>>>16&255;a[H+z>>0]=G;a[H+A>>0]=G;a[f+11>>0]=G;a[f+8>>0]=G;if(!n)break;else{o=o+1|0;p=p+1|0;q=q+12|0;i=i+2|0;f=f+12|0;m=m+2|0}}g=g+F|0;h=h+F|0;m=t+C|0;i=r+D|0;l=l+C|0}if(!s)break;else{t=m+u|0;l=l+u|0;m=j+k|0;r=i}}return}function BM(a,b,e,f,g,h,i,j,k){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;u=(j|0)/2|0;s=(k<<1)+j|0;if((i+1|0)>>>0<3|(j+1|0)>>>0<3)return;t=u<<1;r=h+(j<<2)+(k<<2)|0;p=(i|0)/2|0;while(1){q=e+t|0;m=u;n=e+j|0;o=r;k=f;i=g;l=h;while(1){m=m+-1|0;y=d[k>>0]|0;x=(c[a+(y<<2)>>2]|0)+256|0;v=d[i>>0]|0;y=(c[a+((y|256)<<2)>>2]|0)+1024+(c[a+((v|512)<<2)>>2]|0)|0;v=(c[a+((v|768)<<2)>>2]|0)+1792|0;w=d[e>>0]|0;c[l>>2]=c[b+(w+y<<2)>>2]|c[b+(w+x<<2)>>2]|c[b+(w+v<<2)>>2];w=d[e+1>>0]|0;c[l+4>>2]=c[b+(w+y<<2)>>2]|c[b+(w+x<<2)>>2]|c[b+(w+v<<2)>>2];w=d[n>>0]|0;c[o>>2]=c[b+(w+y<<2)>>2]|c[b+(w+x<<2)>>2]|c[b+(w+v<<2)>>2];w=d[n+1>>0]|0;c[o+4>>2]=c[b+(w+y<<2)>>2]|c[b+(w+x<<2)>>2]|c[b+(w+v<<2)>>2];if(!m)break;else{n=n+2|0;o=o+8|0;e=e+2|0;k=k+1|0;i=i+1|0;l=l+8|0}}p=p+-1|0;if(!p)break;else{r=r+(t<<2)+(s<<2)|0;e=q+j|0;f=f+u|0;g=g+u|0;h=h+(t<<2)+(s<<2)|0}}return}function CM(a,b,e,f,g,h,i,j,k){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;z=(j<<1)+k|0;A=(j|0)/2|0;t=(z*3|0)+k|0;if((i+1|0)>>>0<3)return;u=(j+1|0)>>>0<3;v=z+1|0;w=A<<1;x=A<<2;y=w+j|0;s=h;k=h+(z<<1<<2)|0;h=e;r=(i|0)/2|0;q=e;while(1){r=r+-1|0;i=q+j|0;if(u){e=h;h=s}else{e=h+w|0;m=A;n=f;o=g;p=s;l=k;while(1){m=m+-1|0;F=d[n>>0]|0;E=(c[a+(F<<2)>>2]|0)+256|0;C=d[o>>0]|0;F=(c[a+((F|256)<<2)>>2]|0)+1024+(c[a+((C|512)<<2)>>2]|0)|0;C=(c[a+((C|768)<<2)>>2]|0)+1792|0;B=d[h>>0]|0;B=c[b+(B+F<<2)>>2]|c[b+(B+E<<2)>>2]|c[b+(B+C<<2)>>2];c[p+(v<<2)>>2]=B;c[p+(z<<2)>>2]=B;c[p+4>>2]=B;c[p>>2]=B;B=p+8|0;D=d[h+1>>0]|0;D=c[b+(D+F<<2)>>2]|c[b+(D+E<<2)>>2]|c[b+(D+C<<2)>>2];c[B+(v<<2)>>2]=D;c[B+(z<<2)>>2]=D;c[p+12>>2]=D;c[B>>2]=D;B=d[i>>0]|0;B=c[b+(B+F<<2)>>2]|c[b+(B+E<<2)>>2]|c[b+(B+C<<2)>>2];c[l+(v<<2)>>2]=B;c[l+(z<<2)>>2]=B;c[l+4>>2]=B;c[l>>2]=B;B=l+8|0;D=d[i+1>>0]|0;C=c[b+(D+F<<2)>>2]|c[b+(D+E<<2)>>2]|c[b+(D+C<<2)>>2];c[B+(v<<2)>>2]=C;c[B+(z<<2)>>2]=C;c[l+12>>2]=C;c[B>>2]=C;if(!m)break;else{n=n+1|0;o=o+1|0;p=p+16|0;i=i+2|0;l=l+16|0;h=h+2|0}}f=f+A|0;g=g+A|0;h=s+(x<<2)|0;i=q+y|0;k=k+(x<<2)|0}if(!r)break;else{s=h+(t<<2)|0;k=k+(t<<2)|0;h=e+j|0;q=i}}return}function DM(a,e,f,g,h,i,j,k,l){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;s=(k|0)/2|0;if((j|0)==0|(k+1|0)>>>0<3)return;q=s<<2;r=s<<1;while(1){k=s;m=g;g=g+q|0;n=h;o=i;p=f;while(1){k=k+-1|0;w=d[m>>0]|0;v=(c[a+(w<<2)>>2]|0)+256|0;t=d[n>>0]|0;w=(c[a+((w|256)<<2)>>2]|0)+1024+(c[a+((t|512)<<2)>>2]|0)|0;t=(c[a+((t|768)<<2)>>2]|0)+1792|0;u=d[p>>0]|0;b[o>>1]=c[e+(u+w<<2)>>2]|c[e+(u+v<<2)>>2]|c[e+(u+t<<2)>>2];u=d[p+2>>0]|0;b[o+2>>1]=c[e+(u+w<<2)>>2]|c[e+(u+v<<2)>>2]|c[e+(u+t<<2)>>2];if(!k)break;else{m=m+4|0;n=n+4|0;o=o+4|0;p=p+4|0}}j=j+-1|0;if(!j)break;else{h=h+q|0;i=i+(r<<1)+(l<<1)|0;f=f+q|0}}return}function EM(a,b,e,f,g,h,i,j,k){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;q=((k|0)/2|0)+j|0;r=(j|0)/2|0;if((i|0)==0|(j+1|0)>>>0<3)return;o=r<<2;p=r<<1;n=e;while(1){k=r;j=f;f=f+o|0;e=g;l=h;m=n;while(1){k=k+-1|0;w=d[j>>0]|0;v=(c[a+(w<<2)>>2]|0)+256|0;t=d[e>>0]|0;w=(c[a+((w|256)<<2)>>2]|0)+1024+(c[a+((t|512)<<2)>>2]|0)|0;t=(c[a+((t|768)<<2)>>2]|0)+1792|0;s=d[m>>0]|0;s=c[b+(s+w<<2)>>2]|c[b+(s+v<<2)>>2]|c[b+(s+t<<2)>>2];c[l+(q<<2)>>2]=s;c[l>>2]=s;s=l+4|0;u=d[m+2>>0]|0;t=c[b+(u+w<<2)>>2]|c[b+(u+v<<2)>>2]|c[b+(u+t<<2)>>2];c[s+(q<<2)>>2]=t;c[s>>2]=t;if(!k)break;else{j=j+4|0;e=e+4|0;l=l+8|0;m=m+4|0}}i=i+-1|0;if(!i)break;else{g=g+o|0;h=h+(p<<2)+(q<<2)|0;n=n+o|0}}return}function FM(b,e,f,g,h,i,j,k,l){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;s=(k|0)/2|0;r=l*3|0;if((j|0)==0|(k+1|0)>>>0<3)return;p=s<<2;q=s*6|0;o=f;while(1){l=s;k=g;g=g+p|0;f=h;m=i;n=o;while(1){l=l+-1|0;w=d[k>>0]|0;v=(c[b+(w<<2)>>2]|0)+256|0;t=d[f>>0]|0;w=(c[b+((w|256)<<2)>>2]|0)+1024+(c[b+((t|512)<<2)>>2]|0)|0;t=(c[b+((t|768)<<2)>>2]|0)+1792|0;u=d[n>>0]|0;u=c[e+(u+w<<2)>>2]|c[e+(u+v<<2)>>2]|c[e+(u+t<<2)>>2];a[m>>0]=u;a[m+1>>0]=u>>>8;a[m+2>>0]=u>>>16;u=d[n+2>>0]|0;t=c[e+(u+w<<2)>>2]|c[e+(u+v<<2)>>2]|c[e+(u+t<<2)>>2];a[m+3>>0]=t;a[m+4>>0]=t>>>8;a[m+5>>0]=t>>>16;if(!l)break;else{k=k+4|0;f=f+4|0;m=m+6|0;n=n+4|0}}j=j+-1|0;if(!j)break;else{h=h+p|0;i=i+q+r|0;o=o+p|0}}return}function GM(b,e,f,g,h,i,j,k,l){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;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;r=((k<<1)+l|0)*3|0;s=(k|0)/2|0;if(!j)return;t=r+3|0;u=r+4|0;v=r+1|0;w=r+5|0;x=r+2|0;if((k+1|0)>>>0<3)return;p=s<<2;q=s*12|0;o=f;while(1){l=s;k=g;g=g+p|0;f=h;m=i;n=o;while(1){l=l+-1|0;C=d[k>>0]|0;B=(c[b+(C<<2)>>2]|0)+256|0;y=d[f>>0]|0;C=(c[b+((C|256)<<2)>>2]|0)+1024+(c[b+((y|512)<<2)>>2]|0)|0;y=(c[b+((y|768)<<2)>>2]|0)+1792|0;z=d[n>>0]|0;z=c[e+(z+C<<2)>>2]|c[e+(z+B<<2)>>2]|c[e+(z+y<<2)>>2];A=z&255;a[m+t>>0]=A;a[m+r>>0]=A;a[m+3>>0]=A;a[m>>0]=A;A=z>>>8&255;a[m+u>>0]=A;a[m+v>>0]=A;a[m+4>>0]=A;a[m+1>>0]=A;z=z>>>16&255;a[m+w>>0]=z;a[m+x>>0]=z;a[m+5>>0]=z;a[m+2>>0]=z;z=m+6|0;A=d[n+2>>0]|0;y=c[e+(A+C<<2)>>2]|c[e+(A+B<<2)>>2]|c[e+(A+y<<2)>>2];A=y&255;a[z+t>>0]=A;a[z+r>>0]=A;a[m+9>>0]=A;a[z>>0]=A;A=y>>>8&255;a[z+u>>0]=A;a[z+v>>0]=A;a[m+10>>0]=A;a[m+7>>0]=A;y=y>>>16&255;a[z+w>>0]=y;a[z+x>>0]=y;a[m+11>>0]=y;a[m+8>>0]=y;if(!l)break;else{k=k+4|0;f=f+4|0;m=m+12|0;n=n+4|0}}j=j+-1|0;if(!j)break;else{h=h+p|0;i=i+q+r|0;o=o+p|0}}return}function HM(a,b,e,f,g,h,i,j,k){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;r=(j|0)/2|0;if((i|0)==0|(j+1|0)>>>0<3)return;p=r<<2;q=r<<1;while(1){j=r;l=f;f=f+p|0;m=g;n=h;o=e;while(1){j=j+-1|0;v=d[l>>0]|0;u=(c[a+(v<<2)>>2]|0)+256|0;s=d[m>>0]|0;v=(c[a+((v|256)<<2)>>2]|0)+1024+(c[a+((s|512)<<2)>>2]|0)|0;s=(c[a+((s|768)<<2)>>2]|0)+1792|0;t=d[o>>0]|0;c[n>>2]=c[b+(t+v<<2)>>2]|c[b+(t+u<<2)>>2]|c[b+(t+s<<2)>>2];t=d[o+2>>0]|0;c[n+4>>2]=c[b+(t+v<<2)>>2]|c[b+(t+u<<2)>>2]|c[b+(t+s<<2)>>2];if(!j)break;else{l=l+4|0;m=m+4|0;n=n+8|0;o=o+4|0}}i=i+-1|0;if(!i)break;else{g=g+p|0;h=h+(q<<2)+(k<<2)|0;e=e+p|0}}return}function IM(a,b,e,f,g,h,i,j,k){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;p=(j<<1)+k|0;q=(j|0)/2|0;if(!i)return;r=p+1|0;if((j+1|0)>>>0<3)return;o=q<<2;n=e;while(1){k=q;j=f;f=f+o|0;e=g;l=h;m=n;while(1){k=k+-1|0;w=d[j>>0]|0;v=(c[a+(w<<2)>>2]|0)+256|0;t=d[e>>0]|0;w=(c[a+((w|256)<<2)>>2]|0)+1024+(c[a+((t|512)<<2)>>2]|0)|0;t=(c[a+((t|768)<<2)>>2]|0)+1792|0;s=d[m>>0]|0;s=c[b+(s+w<<2)>>2]|c[b+(s+v<<2)>>2]|c[b+(s+t<<2)>>2];c[l+(r<<2)>>2]=s;c[l+(p<<2)>>2]=s;c[l+4>>2]=s;c[l>>2]=s;s=l+8|0;u=d[m+2>>0]|0;t=c[b+(u+w<<2)>>2]|c[b+(u+v<<2)>>2]|c[b+(u+t<<2)>>2];c[s+(r<<2)>>2]=t;c[s+(p<<2)>>2]=t;c[l+12>>2]=t;c[s>>2]=t;if(!k)break;else{j=j+4|0;e=e+4|0;l=l+16|0;m=m+4|0}}i=i+-1|0;if(!i)break;else{g=g+o|0;h=h+(o<<2)+(p<<2)|0;n=n+o|0}}return}function JM(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+80|0;q=r+64|0;p=r+56|0;o=r+48|0;k=r+40|0;n=r+32|0;h=r+24|0;f=r+16|0;if(!a){mE(307733,r);q=0;l=r;return q|0}e=c[80021]|0;a:do if(e){if((c[a>>2]|0)!=(e+280|0)){mE(307733,f);break}e=c[a+140>>2]|0;if(e|0){while(1){f=c[e>>2]|0;if(f|0?(JN(f,307157)|0)==0:0)break;e=c[e+8>>2]|0;if(!e)break a}if(c[e+4>>2]|0){mE(307748,h);q=0;l=r;return q|0}}}else mE(288511,r+8|0);while(0);h=Df(307788)|0;e=c[80024]|0;j=(e|0)==0;b:do if(j){f=h;h=19}else{f=e;while(1){if(!(JN(307788,c[f>>2]|0)|0))break;f=c[f+16>>2]|0;if(!f){f=h;h=19;break b}}if(h|0?(c[f+8>>2]|0)!=2:0){h=20;break}f=c[f+4>>2]|0;h=19}while(0);if((h|0)==19)if(f)h=20;do if((h|0)==20)if(!(MI(307788,1)|0)){d=d&-5;break}else{d=d|4;break}while(0);c:do if((b|0)>=0)if((b|0)>1){c[k>>2]=1;mE(307860,k);q=0;l=r;return q|0}else{e=hg[c[c[28464+(b<<2)>>2]>>2]&63](a,d)|0;if(!e)e=0;else{i=e;break}l=r;return e|0}else{f=Df(307805)|0;d:do if(j){e=f;h=30}else{while(1){if(!(JN(307805,c[e>>2]|0)|0))break;e=c[e+16>>2]|0;if(!e){e=f;h=30;break d}}if(f|0?(c[e+8>>2]|0)!=2:0){e=f;h=31;break}e=c[e+4>>2]|0;h=30}while(0);if((h|0)==30?e|0:0)h=31;do if((h|0)==31){if(VO(e,c[3901]|0)|0)if(!(VO(e,c[6845]|0)|0))e=27376;else break;else e=15600;e=hg[c[e>>2]&63](a,d)|0;if(e|0){i=e;break c}}while(0);if((c[3902]&d|0)==(d|0)?(i=hg[c[3900]&63](a,d)|0,i|0):0)break;if((c[6846]&d|0)==(d|0)?(m=hg[c[6844]&63](a,d)|0,m|0):0){i=m;break}mE(307823,n);q=0;l=r;return q|0}while(0);c[i>>2]=332969;c[i+188>>2]=a;g[i+288>>2]=1.0;g[i+292>>2]=1.0;e=c[80021]|0;do if(e)if((c[a>>2]|0)==(e+280|0)){e=(c[a+48>>2]&72|0)!=0;break}else{mE(307733,p);e=0;break}else{mE(288511,o);e=0}while(0);c[i+192>>2]=e&1;lL(a,307157,i)|0;qM(i,0);h=eN(12)|0;if(h|0){c[h>>2]=42;c[h+4>>2]=i;c[h+8>>2]=0;e=c[80311]|0;if(!e)e=321244;else{f=e;do{e=f+8|0;f=c[e>>2]|0}while((f|0)!=0)}c[e>>2]=h}c[q>>2]=c[i+104>>2];LM(0,0,q);q=i;l=r;return q|0}function KM(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0;z=l;l=l+80|0;x=z+64|0;v=z+56|0;u=z+48|0;n=z+40|0;m=z+32|0;k=z+24|0;j=z+16|0;i=z+8|0;h=z;if(d|0?(c[d>>2]|0)==332969:0){if(!e)y=c[d+116>>2]|0;else y=e;t=(y|0)==0|(y&-268435456|0)==268435456;h=y&255;if((h|0)==0&t){mE(307579,i);g=0;l=z;return g|0}if(t?((y>>>24&15)+-1|0)>>>0<3:0){mE(307602,j);g=0;l=z;return g|0}if((f|0)<1|(g|0)<1){mE(307640,k);g=0;l=z;return g|0}i=c[d+180>>2]|0;e=c[d+184>>2]|0;if(!((i|0)!=0&(i|0)<(f|0))?!((e|0)!=0&(e|0)<(g|0)):0){e=eN(80)|0;if(!e){mE(294869,n);g=0;l=z;return g|0}if(c[e+-4>>2]&3|0){i=e;j=i+80|0;do{a[i>>0]=0;i=i+1|0}while((i|0)<(j|0))}c[e>>2]=332970;q=e+4|0;c[q>>2]=y;c[e+8>>2]=1;c[e+12>>2]=f;c[e+16>>2]=g;c[e+28>>2]=-1;c[e+32>>2]=d;r=d+304|0;i=c[r>>2]|0;s=e+76|0;c[s>>2]=i;if(i|0)c[i+72>>2]=e;c[r>>2]=e;n=c[d+112>>2]|0;j=(n|0)==0;a:do if(!j){i=0;while(1){if((c[d+116+(i<<2)>>2]|0)==(y|0))break;i=i+1|0;if(i>>>0>=n>>>0)break a}if((hg[c[d+12>>2]&63](d,e)|0)>=0){g=e;l=z;return g|0}mM(e);g=0;l=z;return g|0}while(0);b:do if(t){i=y>>>24&15;if(((i+-4|0)>>>0<3?(o=(y>>>20&15)+-3|0,o>>>0<6):0)?(51>>>(o&255)&1)!=0:0)i=1;else if((i+-7|0)>>>0<5?(p=(y>>>20&15)+-2|0,p>>>0<5):0)i=(27>>>(p&31)&1)!=0;else i=0;if(!j)if(i){m=0;while(1){i=c[d+116+(m<<2)>>2]|0;do if((i|0)==0|(i&-268435456|0)==268435456){j=i>>>24&15;do if((j+-4|0)>>>0<3){k=(i>>>20&15)+-3|0;if(k>>>0>=6)break;if(51>>>(k&255)&1)break b}while(0);if((j+-7|0)>>>0>=5)break;j=(i>>>20&15)+-2|0;if(j>>>0>=5)break;if(27>>>(j&31)&1)break b}while(0);m=m+1|0;if(m>>>0>=n>>>0){w=55;break}}}else{m=0;while(1){i=c[d+116+(m<<2)>>2]|0;c:do if((i|0)==0|(i&-268435456|0)==268435456){j=i>>>24&15;do if((j+-4|0)>>>0<3){k=(i>>>20&15)+-3|0;if(k>>>0>=6)break;if(51>>>(k&255)&1)break c}while(0);if((j+-7|0)>>>0>=5)break b;j=(i>>>20&15)+-2|0;if(j>>>0>=5)break b;if(!(27>>>(j&31)&1))break b}while(0);m=m+1|0;if(m>>>0>=n>>>0){w=55;break}}}else w=55}else if(j)w=55;else{i=0;while(1){if((c[d+116+(i<<2)>>2]|0)==(y|0)){i=y;break b}i=i+1|0;if(i>>>0>=n>>>0){w=55;break}}}while(0);if((w|0)==55)i=c[d+116>>2]|0;k=KM(d,i,f,g)|0;c[e+36>>2]=k;if(!k){mM(e);g=0;l=z;return g|0}i=c[s>>2]|0;c[k+76>>2]=i;if(i|0)c[i+72>>2]=k;i=k+72|0;j=c[i>>2]|0;c[e+72>>2]=j;if(j|0)c[j+76>>2]=e;c[i>>2]=e;c[s>>2]=k;c[r>>2]=e;w=c[q>>2]|0;if((w|0)==0|(w&-268435456|0)==268435456){d:do if(!t){if((y|0)<1498831189)switch(y|0){case 844715353:{h=2;break d}default:{}}else switch(y|0){case 1498831189:{h=2;break d}default:{}}h=(y|0)==1431918169?2:1}while(0);h=(O(h,f)|0)+3&-4;c[e+48>>2]=h;h=O(h,g)|0;i=eN(h)|0;if(!i){c[e+44>>2]=0;mM(e);g=0;l=z;return g|0}if(c[i+-4>>2]&3|0)RQ(i|0,0,h|0)|0;c[e+44>>2]=i;g=e;l=z;return g|0}e:do if((y|0)<1431918169)if((y|0)<844715353)switch(y|0){case 842094169:{w=65;break e}default:{w=64;break e}}else switch(y|0){case 844715353:{w=65;break e}default:{w=64;break e}}else{if((y|0)<1448433993)switch(y|0){case 1431918169:{w=65;break e}default:{w=64;break e}}if((y|0)<1498831189)switch(y|0){case 1448433993:{w=65;break e}default:{w=64;break e}}else switch(y|0){case 1498831189:{w=65;break e}default:{w=64;break e}}}while(0);f:do if((w|0)==64){mE(307710,u);w=78}else if((w|0)==65){p=eN(64)|0;if(!p){mE(294869,v);w=78;break}if(c[p+-4>>2]&3|0){i=p;j=i+64|0;do{a[i>>0]=0;i=i+1|0}while((i|0)<(j|0))}c[p>>2]=y;c[p+4>>2]=0;c[p+8>>2]=f;c[p+12>>2]=g;o=f<<1;h=p+16|0;c[h>>2]=eN(O(o,g)|0)|0;i=p+20|0;c[i>>2]=eN(4096)|0;j=eN(9216)|0;k=p+24|0;c[k>>2]=j;h=c[h>>2]|0;do if(h|0){n=c[i>>2]|0;if((j|0)==0|(n|0)==0)break;j=n+1024|0;k=n+2048|0;m=n+3072|0;i=0;do{A=+(i+-128|0);c[n+(i<<2)>>2]=~~(A*1.4013377926421404);c[j+(i<<2)>>2]=~~(A*-.7136038186157518);c[k+(i<<2)>>2]=~~(A*-.34441087613293053);c[m+(i<<2)>>2]=~~(A*1.7734138972809665);i=i+1|0}while((i|0)!=256);g:do if((y|0)<1431918169)if((y|0)<844715353)switch(y|0){case 842094169:{w=75;break g}default:{w=79;break g}}else switch(y|0){case 844715353:{w=76;break g}default:{w=79;break g}}else{if((y|0)<1448433993)switch(y|0){case 1431918169:{w=76;break g}default:{w=79;break g}}if((y|0)<1498831189)switch(y|0){case 1448433993:{w=75;break g}default:{w=79;break g}}else switch(y|0){case 1498831189:{w=76;break g}default:{w=79;break g}}}while(0);if((w|0)==75){j=f&65535;b[p+36>>1]=j;i=f>>>1&32767;b[p+38>>1]=i;b[p+40>>1]=(j&65535)>>>1;j=p+44|0;c[j>>2]=h;h=h+(O(f&65535,g)|0)|0;c[p+48>>2]=h;h=h+((O(i,g)|0)/2|0)|0;i=2}else if((w|0)==76){b[p+36>>1]=o;j=p+44|0;i=0}else if((w|0)==79){c[e+40>>2]=p;if(!p)break f;l=z;return e|0}c[j+(i<<2)>>2]=h;c[e+40>>2]=p;g=e;l=z;return g|0}while(0);fN(h);fN(c[i>>2]|0);fN(c[k>>2]|0);ME(c[p+56>>2]|0);ME(c[p+60>>2]|0);fN(p);mE(294869,x);w=78}while(0);if((w|0)==78)c[e+40>>2]=0;mM(e);g=0;l=z;return g|0}c[m>>2]=i;c[m+4>>2]=e;mE(307670,m);g=0;l=z;return g|0}mE(289638,h);g=0;l=z;return g|0}function LM(a,b,d){a=a|0;b=b|0;d=d|0;b=l;l=l+16|0;a=b;c[a>>2]=d;DI(6,3,307903,a);l=b;return}function MM(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;m=l;l=l+144|0;k=m;h=m+4|0;if(b&8192){b=b|512;d=a[335032]|0;if(!(d<<24>>24==0?1:(d<<24>>24==1|c[81019]|0)==0)){d=c[80998]|0;if(d|0)do{c[d+4>>2]=0;QM(c[d>>2]|0);e=c[80998]|0;a:do if(e|0){f=0;while(1){if((e|0)==(d|0))break;f=c[e+1344>>2]|0;if(!f)break a;else{n=e;e=f;f=n}}e=c[d+1344>>2]|0;if(!f){c[80998]=e;break}else{c[f+1344>>2]=e;break}}while(0);fN(d);d=c[80998]|0}while((d|0)!=0);d=c[80993]|0;if(d|0)do{c[80993]=c[d+24>>2];fN(c[d+16>>2]|0);fN(c[d+20>>2]|0);fN(d);d=c[80993]|0}while((d|0)!=0);d=c[80311]|0;b:do if(d|0){f=0;while(1){e=c[d+8>>2]|0;if((c[d>>2]|0)==41?(c[d+4>>2]|0)==0:0)break;if(!e)break b;else{f=d;d=e}}c[(f|0?f+8|0:321244)>>2]=e;fN(d)}while(0);d=a[335032]|0}if(d<<24>>24)a[335032]=d+-1<<24>>24}if(b&512){b=b|16384;d=a[335028]|0;if(!(d<<24>>24==0?1:(d<<24>>24==1|c[81019]|0)==0)){d=c[81020]|0;if(d|0)do{c[d+48>>2]=1;QM(d);d=c[81020]|0}while((d|0)!=0);d=c[80996]|0;if(d|0)do{n=d;d=c[d+1320>>2]|0;fN(c[n+8>>2]|0);fN(c[n+4>>2]|0);fN(n)}while((d|0)!=0);c[80999]=0;c[80996]=0;c[80997]=0;c[81e3]=0;jf(0,0,0)|0;kf(0,0,0)|0;MM(16384);d=a[335028]|0}if(d<<24>>24)a[335028]=d+-1<<24>>24}if(b&16|0){d=a[335023]|0;if(!(d<<24>>24==0?1:(d<<24>>24==1|c[81019]|0)==0)){SL();d=a[335023]|0}if(d<<24>>24)a[335023]=d+-1<<24>>24}if(b&32){b=b|16384;d=a[335024]|0;if(!(d<<24>>24==0?1:(d<<24>>24==1|c[81019]|0)==0)){iM();d=a[335024]|0}if(d<<24>>24)a[335024]=d+-1<<24>>24}if(b&1|0?(g=a[335019]|0,g<<24>>24):0)a[335019]=g+-1<<24>>24;if(!(b&16384)){l=m;return}b=a[335033]|0;if(!(b<<24>>24==0?1:(b<<24>>24==1|c[81019]|0)==0)){Rf(2,0,h|0)|0;if((c[h>>2]|0)==265){c[h>>2]=0;Rf(2,h|0,0)|0}Rf(15,0,h|0)|0;if((c[h>>2]|0)==265){c[h>>2]=0;Rf(15,h|0,0)|0}d=Df(307924)|0;b=c[80024]|0;c:do if(!b){i=d;b=56}else{while(1){if(!(JN(307924,c[b>>2]|0)|0))break;b=c[b+16>>2]|0;if(!b){i=d;b=56;break c}}if(d|0?(c[b+8>>2]|0)!=2:0){c[6836]=0;j=d;b=57;break}i=c[b+4>>2]|0;b=56}while(0);if((b|0)==56?(c[6836]=0,i|0):0){j=i;b=57}if((b|0)==57?sQ(j)|0:0){c[k>>2]=c[6838];OM(0,k)}b=c[6839]|0;if(b|0)do{n=b;b=c[b+72>>2]|0;fN(n)}while((b|0)!=0);b=c[6841]|0;if(b|0)do{n=b;b=c[b+72>>2]|0;fN(n)}while((b|0)!=0);b=c[6842]|0;if(b|0)do{n=b;b=c[b+12>>2]|0;fN(n)}while((b|0)!=0);b=c[6843]|0;if(b|0)do{n=b;b=c[b+12>>2]|0;fN(n)}while((b|0)!=0);c[6837]=0;c[6838]=0;c[6839]=0;c[6840]=0;c[6841]=0;c[6842]=0;c[6843]=0;b=0;do{n=320220+(b<<2)|0;fN(c[n>>2]|0);c[n>>2]=0;b=b+1|0}while((b|0)!=256);b=c[80311]|0;if(b|0)do{c[80311]=c[b+8>>2];fN(b);b=c[80311]|0}while((b|0)!=0);b=c[6835]|0;if(b|0){fN(b);c[6835]=0}b=a[335033]|0}if(!(b<<24>>24)){l=m;return}a[335033]=b+-1<<24>>24;l=m;return}function NM(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;g=i+16|0;d=i+8|0;b=c[80021]|0;if(!b){mE(288511,i);l=i;return}if(a|0?(c[a>>2]|0)==(b+280|0):0){c[a+120>>2]=1;f=a+48|0;if(c[f>>2]&4|0){b=a+116|0;c[b>>2]=1;GI(a,0)|0;d=c[80021]|0;e=c[d+84>>2]|0;if(e|0)Bg[e&255](d,a);c[b>>2]=0;HI(a,2,0,0)}if((c[80318]|0)==(a|0))BK(0);do if((c[80037]|0)==(a|0)){HI(a,11,0,0);c[80037]=0;b=c[80050]|0;d=c[80028]|0;e=(d|0)==0;if((b|0)!=0&(c[80052]|0)!=0&(c[80045]|0)==0){if(e)break;gg[d&511](b)|0;break}else{if(e)break;gg[d&511](0)|0;break}}while(0);if(c[f>>2]&2|0?(c[(c[80021]|0)+652>>2]|0)==(a|0):0)kE(a,0)|0;b=c[a+108>>2]|0;if(b|0){c[b>>2]=c[b>>2]&-5;ME(b)}b=c[80021]|0;d=c[b+140>>2]|0;if(d){Bg[d&255](b,a);b=c[80021]|0}d=c[b+128>>2]|0;if(d|0)Bg[d&255](b,a);do if(c[f>>2]&2|0){e=c[80021]|0;if(!e){mE(288511,g);break}b=e+388|0;d=c[b>>2]|0;if(((d|0)>0?(c[b>>2]=d+-1,(d|0)==1):0)?(h=c[e+172>>2]|0,h|0):0)vg[h&511](e)}while(0);b=PI(a)|0;if((b|0)>-1)b=(c[(c[80021]|0)+268>>2]|0)+(b*68|0)|0;else b=0;b=b+56|0;if((c[b>>2]|0)==(a|0))c[b>>2]=0;c[a>>2]=0;fN(c[a+8>>2]|0);ME(c[a+12>>2]|0);fN(c[a+100>>2]|0);d=a+140|0;b=c[d>>2]|0;if(b|0)do{c[d>>2]=c[b+8>>2];fN(c[b>>2]|0);fN(b);b=c[d>>2]|0}while((b|0)!=0);d=c[a+152>>2]|0;b=a+148|0;if(d|0)c[d+148>>2]=c[b>>2];h=c[b>>2]|0;c[((h|0)==0?(c[80021]|0)+272|0:h+152|0)>>2]=d;fN(a);l=i;return}mE(307733,d);l=i;return}function OM(a,b){a=a|0;b=b|0;var d=0;a=l;l=l+16|0;d=a;c[d>>2]=b;DI(0,3,307951,d);l=a;return}function PM(a){a=a|0;Sf(a|0,265)|0;c[80054]=1;return}function QM(a){a=a|0;var b=0,d=0,e=0;if(!a)return;b=a+48|0;d=c[b>>2]|0;c[b>>2]=d+-1;if((d|0)>1|(c[81021]|0)==(a|0))return;b=a+44|0;d=c[b>>2]|0;if(d|0)c[d+16>>2]=0;c[b>>2]=0;b=c[81020]|0;a:do if(b|0){d=0;while(1){if((b|0)==(a|0))break;d=c[b+60>>2]|0;if(!d)break a;else{e=b;b=d;d=e}}b=c[a+60>>2]|0;if(!d){c[81020]=b;break}else{c[d+60>>2]=b;break}}while(0);fN(c[a+4>>2]|0);fN(c[a+12>>2]|0);fN(c[a+24>>2]|0);fN(c[a+32>>2]|0);fN(c[a+40>>2]|0);fN(a);return}function RM(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;t=l;l=l+32|0;s=t+24|0;g=t+16|0;f=t+8|0;e=t;a=a+-1|0;if(a>>>0<=15?(r=c[324008+(a<<2)>>2]|0,r|0):0){if(c[r+144>>2]|0){mE(308045,f);l=t;return}if((c[r+20>>2]|0)!=3){mE(308092,g);l=t;return}if(!d){l=t;return}vg[c[323904>>2]&511](r);j=r+164|0;k=c[j>>2]|0;m=r+168|0;n=c[m>>2]|0;g=(n|0)!=0;if(g)i=c[n+8192>>2]|0;else i=0;o=r+172|0;h=r+176|0;e=n;while(1){if((e|0)!=0?(p=c[e+8192>>2]|0,p>>>0<=8191):0){a=e;e=p}else{a=c[o>>2]|0;if(!a){a=eN(8204)|0;if(!a){q=18;break}e=c[m>>2]|0}else c[o>>2]=c[a+8200>>2];c[a+8192>>2]=0;c[a+8196>>2]=0;c[a+8200>>2]=0;c[((e|0)==0?j:e+8200|0)>>2]=a;c[m>>2]=a;e=0}u=a+8192|0;f=8192-e|0;f=d>>>0<f>>>0?d:f;PQ(a+e|0,b|0,f|0)|0;a=d-f|0;c[u>>2]=f+(c[u>>2]|0);c[h>>2]=(c[h>>2]|0)+f;if(!a)break;b=b+f|0;d=a;e=c[m>>2]|0}if((q|0)==18){if(g){u=n+8200|0;a=c[u>>2]|0;c[u>>2]=0;c[n+8192>>2]=i}else a=c[j>>2]|0;c[j>>2]=k;c[m>>2]=n;c[o>>2]=0;if(a|0)do{u=a;a=c[a+8200>>2]|0;fN(u)}while((a|0)!=0);mE(294869,s)}vg[c[323908>>2]&511](r);l=t;return}mE(308021,e);l=t;return}function SM(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;j=b+164|0;h=c[j>>2]|0;g=(h|0)==0;a:do if(!e){f=d;h=8}else{k=b+176|0;l=b+172|0;f=d;i=e;while(1){if(g){h=9;break a}g=h+8192|0;o=h+8196|0;m=c[o>>2]|0;n=(c[g>>2]|0)-m|0;n=i>>>0<n>>>0?i:n;PQ(f|0,h+m|0,n|0)|0;m=n+(c[o>>2]|0)|0;c[o>>2]=m;f=f+n|0;c[k>>2]=(c[k>>2]|0)-n;i=i-n|0;if((m|0)==(c[g>>2]|0)){n=h+8200|0;o=c[n>>2]|0;c[j>>2]=o;c[n>>2]=c[l>>2];c[l>>2]=h;h=o}else h=c[j>>2]|0;g=(h|0)==0;if(!i){h=8;break}}}while(0);if((h|0)==8)if(g)h=9;else g=f;if((h|0)==9){c[b+168>>2]=0;g=f}f=d-g+e|0;if((f|0)<=0)return;RQ(g|0,a[b+11>>0]|0,f|0)|0;return}function TM(b){b=b|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+32|0;E=H;F=H+16|0;G=H+8|0;B=b+4|0;C=a[b+11>>0]|0;D=b+12|0;g=e[D>>1]|0;h=c[B>>2]|0;v=b+28|0;w=b+48|0;x=c[(c[v>>2]|0?w:b+16|0)>>2]|0;y=c[b+24>>2]|0;z=c[b+20>>2]|0;c[b+160>>2]=0;vg[c[323868>>2]&511](b);A=b+132|0;do{i=c[A>>2]|0;f=c[A>>2]|0;if((f|0)==(i|0))c[A>>2]=i}while((f|0)!=(i|0));f=(g*1e3|0)/(h|0)|0;if(!i){p=b+136|0;q=b+148|0;r=b+44|0;s=b+52|0;t=b+140|0;u=(f>>>0)/1e3|0;i=((f>>>0)%1e3|0)*1e6|0;j=F+4|0;k=G+4|0;m=b+68|0;n=b+108|0;o=b+32|0;do{if(!(c[v>>2]|0)){do{f=c[p>>2]|0;g=c[p>>2]|0;if((g|0)==(f|0))c[p>>2]=f}while((g|0)!=(f|0));if(!f)g=11;else{f=gg[c[323884>>2]&511](b)|0;g=10}}else{f=c[r>>2]|0;g=10}if((g|0)==10){g=0;if(!f)g=11}if((g|0)==11)f=c[q>>2]|0;do{g=c[p>>2]|0;h=c[p>>2]|0;if((h|0)==(g|0))c[p>>2]=g}while((h|0)!=(g|0));do if(g|0){do{g=c[t>>2]|0;h=c[t>>2]|0;if((h|0)==(g|0))c[t>>2]=g}while((h|0)!=(g|0));if(!g){Dg[z&63](y,f,x);break}else{RQ(f|0,C|0,x|0)|0;break}}while(0);do if(c[v>>2]|0){do{g=c[p>>2]|0;h=c[p>>2]|0;if((h|0)==(g|0))c[p>>2]=g}while((h|0)!=(g|0));if(g){if(d[r>>0]|d[r+1>>0]<<8|d[r+2>>0]<<16|d[r+3>>0]<<24){f=d[w>>0]|d[w+1>>0]<<8|d[w+2>>0]<<16|d[w+3>>0]<<24;a[s>>0]=f;a[s+1>>0]=f>>8;a[s+2>>0]=f>>16;a[s+3>>0]=f>>24;f=d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24;if(f|0){a[n>>0]=0;a[n+1>>0]=0;a[n+2>>0]=0;a[n+3>>0]=0;Bg[f&255](v,d[o>>0]|d[o+1>>0]<<8)}}else mE(304359,E);f=gg[c[323884>>2]&511](b)|0;if(!f){f=c[q>>2]|0;break}else{PQ(f|0,c[r>>2]|0,c[s>>2]|0)|0;break}}}while(0);if((f|0)==(c[q>>2]|0)){c[F>>2]=u;c[j>>2]=i;f=u;g=i;while(1){c[8240]=0;c[G>>2]=f;c[k>>2]=g;h=(Qf(G|0,F|0)|0)!=0;if(!(h&(c[8240]|0)==4))break;f=c[F>>2]|0;g=c[j>>2]|0}}else{vg[c[323876>>2]&511](b);vg[c[323872>>2]&511](b)}do{f=c[A>>2]|0;g=c[A>>2]|0;if((g|0)==(f|0))c[A>>2]=f}while((g|0)!=(f|0))}while(!(f|0))}vg[c[323896>>2]&511](b);f=(((e[D>>1]|0)*1e3|0)/(c[B>>2]|0)|0)<<1;i=(f>>>0)/1e3|0;c[F>>2]=i;f=((f>>>0)%1e3|0)*1e6|0;g=F+4|0;c[g>>2]=f;h=G+4|0;while(1){c[8240]=0;c[G>>2]=i;c[h>>2]=f;E=(Qf(G|0,F|0)|0)!=0;if(!(E&(c[8240]|0)==4))break;f=c[g>>2]|0;i=c[F>>2]|0}l=H;return 0}function UM(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;switch((f&255)<<24>>24){case 8:{i=e+16|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;g=e+24|0;h=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;if(h){j=i+(h<<1)|0;i=i+h|0;do{i=i+-1|0;l=j;j=j+-2|0;k=a[i>>0]|0;a[l+-1>>0]=k;a[j>>0]=k;h=h+-1|0}while((h|0)!=0)}break}case 16:{i=e+16|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;g=e+24|0;j=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;h=j>>>1;if(h){k=i+(j<<1)|0;i=i+j|0;do{i=i+-2|0;j=k;k=k+-4|0;l=b[i>>1]|0;b[j+-2>>1]=l;b[k>>1]=l;h=h+-1|0}while((h|0)!=0)}break}case 32:{i=e+16|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;g=e+24|0;j=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;h=j>>>2;if(h){k=i+j|0;i=i+(j<<1)|0;do{k=k+-4|0;j=i;i=i+-8|0;l=c[k>>2]|0;c[j+-4>>2]=l;c[i>>2]=l;h=h+-1|0}while((h|0)!=0)}break}default:g=e+24|0}l=(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24)<<1;a[g>>0]=l;a[g+1>>0]=l>>8;a[g+2>>0]=l>>16;a[g+3>>0]=l>>24;l=e+80|0;g=(d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24)+1|0;a[l>>0]=g;a[l+1>>0]=g>>8;a[l+2>>0]=g>>16;a[l+3>>0]=g>>24;g=e+40+(g<<2)|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;if(!g)return;Bg[g&255](e,f);return}function VM(b,e){b=b|0;e=e|0;var f=0,h=0,i=0,k=0,l=0,m=0,n=0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0;m=e&65535;f=m&33279;a:do if(f<<16>>16>=-32480){if(f<<16>>16<8){switch(f<<16>>16){case -32480:break;default:{n=2;break a}}i=b+16|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;f=b+24|0;l=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;k=i+l|0;i=i+(l*3|0)|0;h=(l|0)/8|0;l=(l+7|0)>>>0<15;if(!(m&4096)){if(l)break;while(1){m=i;i=i+-24|0;l=k;k=k+-8|0;q=+g[k>>2];l=l+-4|0;p=+g[l>>2];o=q*.5+p*.5;g[i>>2]=q;c[m+-20>>2]=c[l>>2];g[m+-16>>2]=q-o;g[m+-12>>2]=p-o;g[m+-4>>2]=o;g[m+-8>>2]=o;h=h+-1|0;if(!h)break a}}else{if(l)break;while(1){m=i;i=i+-24|0;l=k;k=k+-8|0;r=c[k>>2]|0;s=MQ(r|0)|0;o=(c[j>>2]=s,+g[j>>2]);l=l+-4|0;s=MQ(c[l>>2]|0)|0;p=(c[j>>2]=s,+g[j>>2]);q=o*.5+p*.5;c[i>>2]=r;c[m+-20>>2]=c[l>>2];c[m+-16>>2]=MQ((g[j>>2]=o-q,c[j>>2]|0)|0)|0;c[m+-12>>2]=MQ((g[j>>2]=p-q,c[j>>2]|0)|0)|0;l=MQ((g[j>>2]=q,c[j>>2]|0)|0)|0;c[m+-4>>2]=l;c[m+-8>>2]=l;h=h+-1|0;if(!h)break a}}}switch(f<<16>>16){case 8:{h=b+16|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;f=b+24|0;i=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!i)break a;k=i;l=h+i|0;h=h+(i*3|0)|0;while(1){s=h;h=h+-6|0;i=l;l=l+-2|0;t=a[l>>0]|0;i=a[i+-1>>0]|0;r=((i&255)>>>1)+((t&255)>>>1)<<24>>24;a[h>>0]=t;a[s+-5>>0]=i;m=r&255;a[s+-4>>0]=(t&255)-m;a[s+-3>>0]=(i&255)-m;a[s+-2>>0]=r;a[s+-1>>0]=r;k=k+-1|0;if(!k)break a}}case 16:break;default:{n=2;break a}}k=b+16|0;k=d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24;f=b+24|0;l=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;i=k+l|0;k=k+(l*3|0)|0;h=(l|0)/4|0;l=(l+3|0)>>>0<7;if(!(m&4096)){if(l)break;do{t=k;k=k+-12|0;u=i;i=i+-4|0;v=a[u+-3>>0]|0;w=a[i>>0]|0;r=(v&255)<<8|w&255;l=a[u+-1>>0]|0;u=a[u+-2>>0]|0;m=(l&255)<<8|u&255;s=(m>>>1)+(r>>>1)|0;r=r-s|0;m=m-s|0;a[k>>0]=w;a[t+-11>>0]=v;a[t+-10>>0]=u;a[t+-9>>0]=l;a[t+-8>>0]=m;a[t+-7>>0]=m>>>8;a[t+-6>>0]=r;a[t+-5>>0]=r>>>8;r=s&255;a[t+-4>>0]=r;s=s>>>8&255;a[t+-3>>0]=s;a[t+-2>>0]=r;a[t+-1>>0]=s;h=h+-1|0}while((h|0)!=0)}else{if(l)break;do{w=k;k=k+-12|0;r=i;i=i+-4|0;m=a[i>>0]|0;l=a[r+-3>>0]|0;u=(m&255)<<8|l&255;s=a[r+-2>>0]|0;r=a[r+-1>>0]|0;t=(s&255)<<8|r&255;v=(t>>>1)+(u>>>1)|0;u=u-v|0;t=t-v|0;a[w+-11>>0]=l;a[k>>0]=m;a[w+-9>>0]=r;a[w+-10>>0]=s;a[w+-7>>0]=t;a[w+-8>>0]=t>>>8;a[w+-5>>0]=u;a[w+-6>>0]=u>>>8;u=v&255;a[w+-3>>0]=u;v=v>>>8&255;a[w+-4>>0]=v;a[w+-1>>0]=u;a[w+-2>>0]=v;h=h+-1|0}while((h|0)!=0)}}else switch(f<<16>>16){case -32760:{i=b+16|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;f=b+24|0;h=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!h)break a;k=i+(h*3|0)|0;i=i+h|0;do{w=k;k=k+-6|0;r=i;i=i+-2|0;m=a[i>>0]|0;r=a[r+-1>>0]|0;s=m<<24>>24;t=r<<24>>24;u=((t|0)/2|0)+((s|0)/2|0)|0;v=u&255;a[k>>0]=m;a[w+-5>>0]=r;a[w+-4>>0]=s-u;a[w+-3>>0]=t-u;a[w+-2>>0]=v;a[w+-1>>0]=v;h=h+-1|0}while((h|0)!=0);break}case -32752:{k=b+16|0;k=d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24;f=b+24|0;l=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;i=k+l|0;k=k+(l*3|0)|0;h=(l|0)/4|0;l=(l+3|0)>>>0<7;if(!(m&4096)){if(l)break a;do{w=k;k=k+-12|0;r=i;i=i+-4|0;m=a[r+-3>>0]|0;s=a[r+-1>>0]|0;l=((m&255)<<8|(d[i>>0]|0))<<16>>16;r=((s&255)<<8|(d[r+-2>>0]|0))<<16>>16;v=((r|0)/2|0)+((l|0)/2|0)|0;u=l-v|0;t=r-v|0;a[k>>0]=l;a[w+-11>>0]=m;a[w+-10>>0]=r;a[w+-9>>0]=s;a[w+-8>>0]=t;a[w+-7>>0]=t>>>8;a[w+-6>>0]=u;a[w+-5>>0]=u>>>8;u=v&255;a[w+-4>>0]=u;v=v>>>8&255;a[w+-3>>0]=v;a[w+-2>>0]=u;a[w+-1>>0]=v;h=h+-1|0}while((h|0)!=0)}else{if(l)break a;do{w=k;k=k+-12|0;r=i;i=i+-4|0;m=a[i>>0]|0;s=a[r+-2>>0]|0;l=((m&255)<<8|(d[r+-3>>0]|0))<<16>>16;r=((s&255)<<8|(d[r+-1>>0]|0))<<16>>16;v=((r|0)/2|0)+((l|0)/2|0)|0;u=l-v|0;t=r-v|0;a[w+-11>>0]=l;a[k>>0]=m;a[w+-9>>0]=r;a[w+-10>>0]=s;a[w+-7>>0]=t;a[w+-8>>0]=t>>>8;a[w+-5>>0]=u;a[w+-6>>0]=u>>>8;u=v&255;a[w+-3>>0]=u;v=v>>>8&255;a[w+-4>>0]=v;a[w+-1>>0]=u;a[w+-2>>0]=v;h=h+-1|0}while((h|0)!=0)}break}case -32736:{k=b+16|0;k=d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24;f=b+24|0;l=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;i=k+l|0;k=k+(l*3|0)|0;h=(l|0)/8|0;l=(l+7|0)>>>0<15;if(!(m&4096)){if(l)break a;do{w=k;k=k+-24|0;s=i;i=i+-8|0;t=c[i>>2]|0;s=s+-4|0;u=c[s>>2]|0;v=((u|0)/2|0)+((t|0)/2|0)|0;c[k>>2]=t;c[w+-20>>2]=c[s>>2];c[w+-16>>2]=t-v;c[w+-12>>2]=u-v;c[w+-8>>2]=v;c[w+-4>>2]=v;h=h+-1|0}while((h|0)!=0)}else{if(l)break a;do{w=k;k=k+-24|0;s=i;i=i+-8|0;r=c[i>>2]|0;t=MQ(r|0)|0;s=c[s+-4>>2]|0;u=MQ(s|0)|0;v=((u|0)/2|0)+((t|0)/2|0)|0;c[k>>2]=r;c[w+-20>>2]=s;c[w+-16>>2]=MQ(t-v|0)|0;c[w+-12>>2]=MQ(u-v|0)|0;v=MQ(v|0)|0;c[w+-8>>2]=v;c[w+-4>>2]=v;h=h+-1|0}while((h|0)!=0)}break}default:{n=2;break a}}while(0);if((n|0)==2)f=b+24|0;w=(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24)*3|0;a[f>>0]=w;a[f+1>>0]=w>>8;a[f+2>>0]=w>>16;a[f+3>>0]=w>>24;w=b+80|0;f=(d[w>>0]|d[w+1>>0]<<8|d[w+2>>0]<<16|d[w+3>>0]<<24)+1|0;a[w>>0]=f;a[w+1>>0]=f>>8;a[w+2>>0]=f>>16;a[w+3>>0]=f>>24;f=b+40+(f<<2)|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!f)return;Bg[f&255](b,e);return}function WM(b,e){b=b|0;e=e|0;var f=0,h=0,i=0,k=0,l=0,m=0,n=0,o=0.0,p=0.0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0;m=e&65535;f=m&33279;a:do if(f<<16>>16>=-32480){if(f<<16>>16<8){switch(f<<16>>16){case -32480:break;default:{n=2;break a}}i=b+16|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;f=b+24|0;l=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;k=i+l|0;i=i+(l<<1)|0;h=(l|0)/8|0;l=(l+7|0)>>>0<15;if(!(m&4096)){if(l)break;while(1){m=i;i=i+-16|0;l=k;k=k+-8|0;q=+g[k>>2];l=l+-4|0;p=+g[l>>2];o=q*.5+p*.5;g[i>>2]=q;c[m+-12>>2]=c[l>>2];g[m+-8>>2]=q-o;g[m+-4>>2]=p-o;h=h+-1|0;if(!h)break a}}else{if(l)break;while(1){m=i;i=i+-16|0;l=k;k=k+-8|0;r=c[k>>2]|0;s=MQ(r|0)|0;o=(c[j>>2]=s,+g[j>>2]);l=l+-4|0;s=MQ(c[l>>2]|0)|0;p=(c[j>>2]=s,+g[j>>2]);q=o*.5+p*.5;c[i>>2]=r;c[m+-12>>2]=c[l>>2];c[m+-8>>2]=MQ((g[j>>2]=o-q,c[j>>2]|0)|0)|0;c[m+-4>>2]=MQ((g[j>>2]=p-q,c[j>>2]|0)|0)|0;h=h+-1|0;if(!h)break a}}}switch(f<<16>>16){case 8:{h=b+16|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;f=b+24|0;i=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!i)break a;k=i;l=h+i|0;h=h+(i<<1)|0;while(1){s=h;h=h+-4|0;m=l;l=l+-2|0;i=a[l>>0]|0;m=a[m+-1>>0]|0;a[h>>0]=i;a[s+-3>>0]=m;r=((m&255)>>>1)+((i&255)>>>1)&255;a[s+-2>>0]=(i&255)-r;a[s+-1>>0]=(m&255)-r;k=k+-1|0;if(!k)break a}}case 16:break;default:{n=2;break a}}k=b+16|0;k=d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24;f=b+24|0;l=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;i=k+l|0;k=k+(l<<1)|0;h=(l|0)/4|0;l=(l+3|0)>>>0<7;if(!(m&4096)){if(l)break;do{s=k;k=k+-8|0;t=i;i=i+-4|0;u=a[t+-3>>0]|0;v=a[i>>0]|0;r=(u&255)<<8|v&255;l=a[t+-1>>0]|0;t=a[t+-2>>0]|0;w=(l&255)<<8|t&255;m=(w>>>1)+(r>>>1)|0;r=r-m|0;m=w-m|0;a[k>>0]=v;a[s+-7>>0]=u;a[s+-6>>0]=t;a[s+-5>>0]=l;a[s+-4>>0]=m;a[s+-3>>0]=m>>>8;a[s+-2>>0]=r;a[s+-1>>0]=r>>>8;h=h+-1|0}while((h|0)!=0)}else{if(l)break;do{w=k;k=k+-8|0;s=i;i=i+-4|0;r=a[i>>0]|0;m=a[s+-3>>0]|0;v=(r&255)<<8|m&255;t=a[s+-2>>0]|0;s=a[s+-1>>0]|0;l=(t&255)<<8|s&255;u=(l>>>1)+(v>>>1)|0;v=v-u|0;u=l-u|0;a[w+-7>>0]=m;a[k>>0]=r;a[w+-5>>0]=s;a[w+-6>>0]=t;a[w+-3>>0]=u;a[w+-4>>0]=u>>>8;a[w+-1>>0]=v;a[w+-2>>0]=v>>>8;h=h+-1|0}while((h|0)!=0)}}else switch(f<<16>>16){case -32760:{i=b+16|0;i=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;f=b+24|0;h=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!h)break a;k=i+(h<<1)|0;i=i+h|0;do{w=k;k=k+-4|0;s=i;i=i+-2|0;r=a[i>>0]|0;s=a[s+-1>>0]|0;t=r<<24>>24;u=s<<24>>24;v=((u|0)/2|0)+((t|0)/2|0)|0;a[k>>0]=r;a[w+-3>>0]=s;a[w+-2>>0]=t-v;a[w+-1>>0]=u-v;h=h+-1|0}while((h|0)!=0);break}case -32752:{k=b+16|0;k=d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24;f=b+24|0;l=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;i=k+l|0;k=k+(l<<1)|0;h=(l|0)/4|0;l=(l+3|0)>>>0<7;if(!(m&4096)){if(l)break a;do{w=k;k=k+-8|0;s=i;i=i+-4|0;r=a[s+-3>>0]|0;t=a[s+-1>>0]|0;m=((r&255)<<8|(d[i>>0]|0))<<16>>16;s=((t&255)<<8|(d[s+-2>>0]|0))<<16>>16;u=((s|0)/2|0)+((m|0)/2|0)|0;v=m-u|0;u=s-u|0;a[k>>0]=m;a[w+-7>>0]=r;a[w+-6>>0]=s;a[w+-5>>0]=t;a[w+-4>>0]=u;a[w+-3>>0]=u>>>8;a[w+-2>>0]=v;a[w+-1>>0]=v>>>8;h=h+-1|0}while((h|0)!=0)}else{if(l)break a;do{w=k;k=k+-8|0;s=i;i=i+-4|0;r=a[i>>0]|0;t=a[s+-2>>0]|0;m=((r&255)<<8|(d[s+-3>>0]|0))<<16>>16;s=((t&255)<<8|(d[s+-1>>0]|0))<<16>>16;u=((s|0)/2|0)+((m|0)/2|0)|0;v=m-u|0;u=s-u|0;a[w+-7>>0]=m;a[k>>0]=r;a[w+-5>>0]=s;a[w+-6>>0]=t;a[w+-3>>0]=u;a[w+-4>>0]=u>>>8;a[w+-1>>0]=v;a[w+-2>>0]=v>>>8;h=h+-1|0}while((h|0)!=0)}break}case -32736:{k=b+16|0;k=d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24;f=b+24|0;l=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;i=k+l|0;k=k+(l<<1)|0;h=(l|0)/8|0;l=(l+7|0)>>>0<15;if(!(m&4096)){if(l)break a;do{w=k;k=k+-16|0;s=i;i=i+-8|0;t=c[i>>2]|0;s=s+-4|0;u=c[s>>2]|0;v=((u|0)/2|0)+((t|0)/2|0)|0;c[k>>2]=t;c[w+-12>>2]=c[s>>2];c[w+-8>>2]=t-v;c[w+-4>>2]=u-v;h=h+-1|0}while((h|0)!=0)}else{if(l)break a;do{w=k;k=k+-16|0;s=i;i=i+-8|0;r=c[i>>2]|0;t=MQ(r|0)|0;s=s+-4|0;u=MQ(c[s>>2]|0)|0;v=((u|0)/2|0)+((t|0)/2|0)|0;c[k>>2]=r;c[w+-12>>2]=c[s>>2];c[w+-8>>2]=MQ(t-v|0)|0;c[w+-4>>2]=MQ(u-v|0)|0;h=h+-1|0}while((h|0)!=0)}break}default:{n=2;break a}}while(0);if((n|0)==2)f=b+24|0;w=(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24)<<1;a[f>>0]=w;a[f+1>>0]=w>>8;a[f+2>>0]=w>>16;a[f+3>>0]=w>>24;w=b+80|0;f=(d[w>>0]|d[w+1>>0]<<8|d[w+2>>0]<<16|d[w+3>>0]<<24)+1|0;a[w>>0]=f;a[w+1>>0]=f>>8;a[w+2>>0]=f>>16;a[w+3>>0]=f>>24;f=b+40+(f<<2)|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!f)return;Bg[f&255](b,e);return}function XM(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;switch((f&255)<<24>>24){case 8:{h=e+16|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=e+24|0;j=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;if(j>>>0>=6){k=h;i=h;h=(j>>>0)/6|0;while(1){a[k>>0]=a[i>>0]|0;a[k+1>>0]=a[i+1>>0]|0;h=h+-1|0;if(!h)break;else{k=k+2|0;i=i+6|0}}}break}case 16:{h=e+16|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=e+24|0;j=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;if(j>>>0>=12){k=h;i=h;h=(j>>>0)/12|0;while(1){b[k>>1]=b[i>>1]|0;b[k+2>>1]=b[i+2>>1]|0;h=h+-1|0;if(!h)break;else{k=k+4|0;i=i+12|0}}}break}case 32:{h=e+16|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=e+24|0;j=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;if(j>>>0>=24){k=h;i=h;h=(j>>>0)/24|0;while(1){c[i>>2]=c[k>>2];c[i+4>>2]=c[k+4>>2];h=h+-1|0;if(!h)break;else{k=k+24|0;i=i+8|0}}}break}default:g=e+24|0}k=(d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)/3|0;a[g>>0]=k;a[g+1>>0]=k>>8;a[g+2>>0]=k>>16;a[g+3>>0]=k>>24;k=e+80|0;g=(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)+1|0;a[k>>0]=g;a[k+1>>0]=g>>8;a[k+2>>0]=g>>16;a[k+3>>0]=g>>24;g=e+40+(g<<2)|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;if(!g)return;Bg[g&255](e,f);return}function YM(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;switch((f&255)<<24>>24){case 8:{h=e+16|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=e+24|0;j=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;if(j>>>0>=6){k=h;i=h;h=(j>>>0)/6|0;while(1){a[k>>0]=a[i>>0]|0;a[k+1>>0]=a[i+1>>0]|0;a[k+2>>0]=a[i+2>>0]|0;a[k+3>>0]=a[i+3>>0]|0;h=h+-1|0;if(!h)break;else{k=k+4|0;i=i+6|0}}}break}case 16:{h=e+16|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=e+24|0;j=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;if(j>>>0>=12){k=h;i=h;h=(j>>>0)/12|0;while(1){b[k>>1]=b[i>>1]|0;b[k+2>>1]=b[i+2>>1]|0;b[k+4>>1]=b[i+4>>1]|0;b[k+6>>1]=b[i+6>>1]|0;h=h+-1|0;if(!h)break;else{k=k+8|0;i=i+12|0}}}break}case 32:{h=e+16|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;g=e+24|0;j=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;if(j>>>0>=24){k=h;i=h;h=(j>>>0)/24|0;while(1){c[i>>2]=c[k>>2];c[i+4>>2]=c[k+4>>2];c[i+8>>2]=c[k+8>>2];c[i+12>>2]=c[k+12>>2];h=h+-1|0;if(!h)break;else{k=k+24|0;i=i+16|0}}}break}default:g=e+24|0}k=((d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24|0)/6|0)<<2;a[g>>0]=k;a[g+1>>0]=k>>8;a[g+2>>0]=k>>16;a[g+3>>0]=k>>24;k=e+80|0;g=(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)+1|0;a[k>>0]=g;a[k+1>>0]=g>>8;a[k+2>>0]=g>>16;a[k+3>>0]=g>>24;g=e+40+(g<<2)|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;if(!g)return;Bg[g&255](e,f);return}function ZM(b,e){b=b|0;e=e|0;var f=0,h=0,i=0,k=0,l=0,m=0,n=0.0,o=0;k=e&65535;f=k&33279;a:do if(f<<16>>16>=-32480){if(f<<16>>16<8){switch(f<<16>>16){case -32480:break;default:{m=2;break a}}l=b+16|0;l=d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24;f=b+24|0;i=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;h=(i|0)/8|0;i=(i+7|0)>>>0<15;if(!(k&4096)){if(i)break;else{k=l;i=l}while(1){g[k>>2]=(+g[i>>2]+ +g[i+4>>2])*.5;h=h+-1|0;if(!h)break a;else{k=k+4|0;i=i+8|0}}}else{if(i)break;else{k=l;i=l}while(1){l=MQ(c[i>>2]|0)|0;n=(c[j>>2]=l,+g[j>>2]);l=MQ(c[i+4>>2]|0)|0;c[k>>2]=MQ((g[j>>2]=(n+(c[j>>2]=l,+g[j>>2]))*.5,c[j>>2]|0)|0)|0;h=h+-1|0;if(!h)break a;else{k=k+4|0;i=i+8|0}}}}switch(f<<16>>16){case 8:{h=b+16|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;f=b+24|0;k=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if((k+1|0)>>>0<3)break a;l=h;i=h;h=(k|0)/2|0;while(1){a[i>>0]=((d[l+1>>0]|0)+(d[l>>0]|0)|0)>>>1;h=h+-1|0;if(!h)break a;else{l=l+2|0;i=i+1|0}}}case 16:break;default:{m=2;break a}}l=b+16|0;l=d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24;f=b+24|0;i=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;h=(i|0)/4|0;i=(i+3|0)>>>0<7;if(!(k&4096)){if(i)break;else{k=l;i=l}while(1){l=(d[k+3>>0]<<8|d[k+2>>0])+(d[k+1>>0]<<8|d[k>>0])|0;a[i>>0]=l>>>1;a[i+1>>0]=l>>>9;h=h+-1|0;if(!h)break;else{k=k+4|0;i=i+2|0}}}else{if(i)break;else{k=l;i=l}while(1){l=(d[k+2>>0]<<8|d[k+3>>0])+(d[k>>0]<<8|d[k+1>>0])|0;a[i+1>>0]=l>>>1;a[i>>0]=l>>>9;h=h+-1|0;if(!h)break;else{k=k+4|0;i=i+2|0}}}}else switch(f<<16>>16){case -32760:{h=b+16|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;f=b+24|0;k=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if((k+1|0)>>>0<3)break a;l=h;i=h;h=(k|0)/2|0;while(1){a[i>>0]=((a[l+1>>0]|0)+(a[l>>0]|0)|0)/2|0;h=h+-1|0;if(!h)break;else{l=l+2|0;i=i+1|0}}break}case -32752:{l=b+16|0;l=d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24;f=b+24|0;i=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;h=(i|0)/4|0;i=(i+3|0)>>>0<7;if(!(k&4096)){if(i)break a;else{k=l;i=l}while(1){l=(((d[k+3>>0]<<8|d[k+2>>0])<<16>>16)+((d[k+1>>0]<<8|d[k>>0])<<16>>16)|0)/2|0;a[i>>0]=l;a[i+1>>0]=l>>>8;h=h+-1|0;if(!h)break;else{k=k+4|0;i=i+2|0}}}else{if(i)break a;else{k=l;i=l}while(1){l=(((d[k+2>>0]<<8|d[k+3>>0])<<16>>16)+((d[k>>0]<<8|d[k+1>>0])<<16>>16)|0)/2|0;a[i+1>>0]=l;a[i>>0]=l>>>8;h=h+-1|0;if(!h)break;else{k=k+4|0;i=i+2|0}}}break}case -32736:{l=b+16|0;l=d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24;f=b+24|0;i=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;h=(i|0)/8|0;i=(i+7|0)>>>0<15;if(!(k&4096)){if(i)break a;else{k=l;i=l}while(1){l=c[i>>2]|0;o=c[i+4>>2]|0;l=yQ(o|0,((o|0)<0)<<31>>31|0,l|0,((l|0)<0)<<31>>31|0)|0;l=CQ(l|0,z|0,2,0)|0;c[k>>2]=l;h=h+-1|0;if(!h)break;else{k=k+4|0;i=i+8|0}}}else{if(i)break a;else{k=l;i=l}while(1){o=MQ(c[i>>2]|0)|0;l=MQ(c[i+4>>2]|0)|0;o=yQ(l|0,((l|0)<0)<<31>>31|0,o|0,((o|0)<0)<<31>>31|0)|0;o=CQ(o|0,z|0,2,0)|0;c[k>>2]=MQ(o|0)|0;h=h+-1|0;if(!h)break;else{k=k+4|0;i=i+8|0}}}break}default:{m=2;break a}}while(0);if((m|0)==2)f=b+24|0;o=(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24|0)/2|0;a[f>>0]=o;a[f+1>>0]=o>>8;a[f+2>>0]=o>>16;a[f+3>>0]=o>>24;o=b+80|0;f=(d[o>>0]|d[o+1>>0]<<8|d[o+2>>0]<<16|d[o+3>>0]<<24)+1|0;a[o>>0]=f;a[o+1>>0]=f>>8;a[o+2>>0]=f>>16;a[o+3>>0]=f>>24;f=b+40+(f<<2)|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!f)return;Bg[f&255](b,e);return}function _M(b){b=b|0;var d=0.0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+1488|0;t=x+1432|0;w=x;v=c[b+44>>2]|0;if(!v){l=x;return}if(Qb(c[v>>2]|0,w|0)|0){l=x;return}d=+h[w>>3];if(!(d==0.0)?!(d!=+h[v+32>>3]):0){l=x;return}m=v+20|0;if((c[m>>2]|0)>0){n=v+16|0;o=t+8|0;p=t+12|0;q=t+13|0;r=t+4|0;k=0;do{s=v+1064+(k<<2)|0;b=c[s>>2]|0;j=w+1040+(k<<2)|0;e=c[j>>2]|0;if((b|0)!=(e|0)){b=(e|0)!=0;e=b&1;f=c[n>>2]|0;g=k&255;c[t>>2]=b?1539:1540;i=k&255;do if((i|0)<(c[f+36>>2]|0)?(u=(c[f+40>>2]|0)+i|0,(a[u>>0]|0)!=e<<24>>24):0){if(!((c[81001]|0)!=0|(a[335024]|0)==0)?b&(c[80318]|0)==0:0)break;a[u>>0]=e;i=c[t>>2]|0;b=c[320220+((i>>>8&255)<<2)>>2]|0;if(b|0?c[b+((i>>>5&7)<<2)>>2]&1<<(i&31)|0:0)break;c[o>>2]=c[f>>2];a[p>>0]=g;a[q>>0]=e;c[r>>2]=II()|0;b=c[80311]|0;if(b|0)do{hg[c[b>>2]&63](c[b+4>>2]|0,t)|0;b=c[b+8>>2]|0}while((b|0)!=0);if((JI(t,1,0,0,0)|0)>=1)KI(t)}while(0);b=c[j>>2]|0}h[v+552+(k<<3)>>3]=+h[w+528+(k<<3)>>3];c[s>>2]=b;k=k+1|0}while((k|0)<(c[m>>2]|0))}f=v+24|0;if((c[f>>2]|0)>0){g=v+16|0;e=0;do{i=v+40+(e<<3)|0;b=w+16+(e<<3)|0;d=+h[b>>3];if(+h[i>>3]!=d){$M(c[g>>2]|0,e&255,~~(d*32767.0));d=+h[b>>3]}h[i>>3]=d;e=e+1|0}while((e|0)<(c[f>>2]|0))}h[v+32>>3]=+h[w>>3];l=x;return}function $M(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+64|0;j=k;g=e&255;if((g|0)>=(c[d+8>>2]|0)){l=k;return}h=(c[d+12>>2]|0)+(g<<1)|0;i=b[h>>1]|0;if(i<<16>>16==f<<16>>16){l=k;return}if((c[81001]|0)==0?(a[335024]|0)!=0&(c[80318]|0)==0:0){g=b[(c[d+16>>2]|0)+(g<<1)>>1]|0;if(!(g<<16>>16>=f<<16>>16?1:i<<16>>16>f<<16>>16)){l=k;return}if(!(g<<16>>16<=f<<16>>16?1:i<<16>>16<f<<16>>16)){l=k;return}}b[h>>1]=f;i=c[80061]|0;if(i|0?c[i>>2]&1|0:0){l=k;return}c[j>>2]=1536;c[j+8>>2]=c[d>>2];a[j+12>>0]=e;b[j+16>>1]=f;c[j+4>>2]=II()|0;g=c[80311]|0;if(g|0)do{hg[c[g>>2]&63](c[g+4>>2]|0,j)|0;g=c[g+8>>2]|0}while((g|0)!=0);if((JI(j,1,0,0,0)|0)>=1)KI(j);l=k;return}function aN(){var a=0,b=0,d=0;b=c[80058]|0;if(b|0){a=c[b>>2]|0;if(a&8){a=a&-9;c[b>>2]=a}if(a&4|0)c[b>>2]=a&-5}a=c[80021]|0;if(!a)return;b=c[a+272>>2]|0;do if(b){do{if(c[b+48>>2]&512|0){d=10;break}b=c[b+152>>2]|0}while((b|0)!=0);if((d|0)==10){d=c[a+228>>2]|0;if(!d)break;Bg[d&255](a,b);a=c[80021]|0}if(!a)return}while(0);b=c[a+212>>2]|0;if(!b)return;vg[b&511](a);return}function bN(){var a=0,b=0,d=0,e=0;d=l;l=l+16|0;a=d;do if(!(c[80312]|0)){c[80312]=1;if(!(ib(4,321252)|0)){c[80315]=1;break}else{Ef(321264,0)|0;b=5;break}}else b=5;while(0);if((b|0)==5?(c[80315]|0)==0:0){Ef(a|0,0)|0;e=c[a>>2]|0;e=EQ(e|0,((e|0)<0)<<31>>31|0,1e6,0)|0;b=c[a+4>>2]|0;b=yQ(e|0,z|0,b|0,((b|0)<0)<<31>>31|0)|0;a=z;z=a;l=d;return b|0}ib(4,a|0)|0;b=c[a>>2]|0;b=EQ(b|0,((b|0)<0)<<31>>31|0,1e9,0)|0;e=c[a+4>>2]|0;e=yQ(b|0,z|0,e|0,((e|0)<0)<<31>>31|0)|0;b=z;z=b;l=d;return e|0}function cN(){var a=0;do if(!(c[80312]|0)){c[80312]=1;if(!(ib(4,321252)|0)){c[80315]=1;break}else{Ef(321264,0)|0;break}}while(0);a=(c[80315]|0)==0;z=a?0:0;return (a?1e6:1e9)|0}function dN(b){b=b|0;var c=0,d=0;d=eN((WO(b)|0)+1|0)|0;aP(d,b)|0;c=MP(d,310591)|0;if(c|0)a[c>>0]=0;c=MP(d,310595)|0;if(c|0)a[c>>0]=0;c=MP(d,310599)|0;if(c|0)a[c>>0]=0;c=MP(d,310603)|0;if(c|0)a[c>>0]=0;if(JN(d,310609)|0)if(JN(d,310647)|0)if(JN(d,310679)|0)if(!(JN(d,310715)|0))c=310730;else{c=(JN(d,310745)|0)==0;c=c?310760:d}else c=310700;else c=310666;else c=310631;do if(JN(c,310775)|0)if(JN(c,310789)|0)if(JN(c,310801)|0)if(JN(c,310815)|0)if(JN(c,310827)|0)if(JN(c,310841)|0)if(JN(c,310855)|0)if(JN(c,310872)|0)if(JN(c,310895)|0)if(JN(c,310921)|0)if(JN(c,310934)|0)if(JN(c,310950)|0)if(JN(c,310963)|0)if(!(JN(c,310977)|0))c=22;else{if(!(JN(c,310997)|0)){c=23;break}if(!(JN(c,311017)|0)){c=24;break}if(!(JN(c,311034)|0)){c=25;break}if(!(JN(c,311051)|0)){c=434;break}if(!(JN(c,311063)|0)){c=191;break}if(!(JN(c,311076)|0)){c=192;break}if(!(JN(c,311092)|0)){c=26;break}if(!(JN(c,311115)|0)){c=23;break}if(!(JN(c,311128)|0)){c=24;break}if(!(JN(c,311144)|0)){c=435;break}if(!(JN(c,311155)|0)){c=193;break}if(!(JN(c,311174)|0)){c=194;break}if(!(JN(c,311196)|0)){c=195;break}if(!(JN(c,311215)|0)){c=27;break}if(!(JN(c,311244)|0)){c=436;break}if(!(JN(c,311261)|0)){c=28;break}if(!(JN(c,311276)|0)){c=29;break}if(!(JN(c,311291)|0)){c=43;break}if(!(JN(c,311312)|0)){c=30;break}if(!(JN(c,311332)|0)){c=31;break}if(!(JN(c,311352)|0)){c=32;break}if(!(JN(c,311378)|0)){c=6;break}if(!(JN(c,311397)|0)){c=1;break}if(!(JN(c,311409)|0)){c=1;break}if(!(JN(c,311421)|0)){c=1;break}if(!(JN(c,311433)|0)){c=1;break}if(!(JN(c,311445)|0)){c=196;break}if(!(JN(c,311457)|0)){c=33;break}if(!(JN(c,311469)|0)){c=25;break}if(!(JN(c,311481)|0)){c=12;break}if(!(JN(c,311493)|0)){c=34;break}if(!(JN(c,311506)|0)){c=35;break}if(!(JN(c,311519)|0)){c=36;break}if(!(JN(c,311532)|0)){c=37;break}if(!(JN(c,311545)|0)){c=38;break}if(!(JN(c,311558)|0)){c=39;break}if(!(JN(c,311571)|0)){c=40;break}if(!(JN(c,311584)|0)){c=41;break}if(!(JN(c,311597)|0)){c=26;break}if(!(JN(c,311616)|0)){c=27;break}if(!(JN(c,311635)|0)){c=28;break}if(!(JN(c,311654)|0)){c=197;break}if(!(JN(c,311667)|0)){c=198;break}if(!(JN(c,311685)|0)){c=199;break}if(!(JN(c,311703)|0)){c=200;break}if(!(JN(c,311721)|0)){c=201;break}if(!(JN(c,311739)|0)){c=44;break}if(!(JN(c,311759)|0)){c=7;break}if(!(JN(c,310700)|0)){c=437;break}if(!(JN(c,311777)|0)){c=276;break}if(!(JN(c,311792)|0)){c=29;break}if(!(JN(c,311813)|0)){c=30;break}if(!(JN(c,311828)|0)){c=31;break}if(!(JN(c,311846)|0)){c=277;break}if(!(JN(c,311862)|0)){c=32;break}if(!(JN(c,311881)|0)){c=42;break}if(!(JN(c,311895)|0)){c=43;break}if(!(JN(c,311910)|0)){c=438;break}if(!(JN(c,310631)|0)){c=6;break}if(!(JN(c,311921)|0)){c=278;break}if(!(JN(c,310730)|0)){c=202;break}if(!(JN(c,310760)|0)){c=203;break}if(!(JN(c,311937)|0)){c=33;break}if(!(JN(c,311964)|0)){c=279;break}if(!(JN(c,311978)|0)){c=34;break}if(!(JN(c,310666)|0)){c=280;break}if(!(JN(c,311998)|0)){c=281;break}if(!(JN(c,312016)|0)){c=439;break}if(!(JN(c,312028)|0)){c=44;break}if(!(JN(c,312049)|0)){c=204;break}if(!(JN(c,312067)|0)){c=205;break}if(!(JN(c,312085)|0)){c=206;break}if(!(JN(c,312106)|0)){c=35;break}if(!(JN(c,312132)|0)){c=13;break}if(!(JN(c,312155)|0)){c=36;break}if(!(JN(c,312193)|0)){c=440;break}if(!(JN(c,312209)|0)){c=282;break}if(!(JN(c,312224)|0)){c=45;break}if(!(JN(c,312247)|0)){c=37;break}if(!(JN(c,312260)|0)){c=207;break}if(!(JN(c,312274)|0)){c=208;break}if(!(JN(c,312288)|0)){c=5;break}if(!(JN(c,312308)|0)){c=283;break}if(!(JN(c,312328)|0)){c=38;break}if(!(JN(c,312344)|0)){c=39;break}if(!(JN(c,312362)|0)){c=46;break}if(!(JN(c,312378)|0)){c=40;break}if(!(JN(c,312393)|0)){c=284;break}if(!(JN(c,312415)|0)){c=441;break}if(!(JN(c,312431)|0)){c=209;break}if(!(JN(c,312449)|0)){c=210;break}if(!(JN(c,312470)|0)){c=285;break}if(!(JN(c,312488)|0)){c=286;break}if(!(JN(c,312501)|0)){c=5;break}if(!(JN(c,312516)|0)){c=287;break}if(!(JN(c,312530)|0)){c=1;break}if(!(JN(c,312540)|0)){c=1;break}if(!(JN(c,312550)|0)){c=6;break}if(!(JN(c,312572)|0)){c=288;break}if(!(JN(c,312598)|0)){c=289;break}if(!(JN(c,312625)|0)){c=47;break}if(!(JN(c,312638)|0)){c=41;break}if(!(JN(c,312653)|0)){c=14;break}if(!(JN(c,312668)|0)){c=6;break}if(!(JN(c,312692)|0)){c=7;break}if(!(JN(c,312703)|0)){c=211;break}if(!(JN(c,312725)|0)){c=42;break}if(!(JN(c,312747)|0)){c=15;break}if(!(JN(c,312771)|0)){c=7;break}if(!(JN(c,312780)|0)){c=8;break}if(!(JN(c,312788)|0)){c=1;break}if(!(JN(c,312801)|0)){c=2;break}if(!(JN(c,312815)|0)){c=290;break}if(!(JN(c,312827)|0)){c=291;break}if(!(JN(c,312836)|0)){c=292;break}if(!(JN(c,312846)|0)){c=293;break}if(!(JN(c,312858)|0)){c=294;break}if(!(JN(c,312869)|0)){c=295;break}if(!(JN(c,312877)|0)){c=3;break}if(!(JN(c,312889)|0)){c=296;break}if(!(JN(c,312904)|0)){c=297;break}if(!(JN(c,312916)|0)){c=298;break}if(!(JN(c,312930)|0)){c=442;break}if(!(JN(c,312955)|0)){c=299;break}if(!(JN(c,312972)|0)){c=300;break}if(!(JN(c,312988)|0)){c=301;break}if(!(JN(c,313004)|0)){c=443;break}if(!(JN(c,313016)|0)){c=212;break}if(!(JN(c,313028)|0)){c=213;break}if(!(JN(c,313052)|0)){c=1;break}if(!(JN(c,313065)|0)){c=2;break}if(!(JN(c,313079)|0)){c=214;break}if(!(JN(c,313101)|0)){c=215;break}if(!(JN(c,313108)|0)){c=3;break}if(!(JN(c,313124)|0)){c=2;break}if(!(JN(c,313141)|0)){c=1;break}if(!(JN(c,313158)|0)){c=48;break}if(!(JN(c,313174)|0)){c=1;break}if(!(JN(c,313190)|0)){c=2;break}if(!(JN(c,313207)|0)){c=49;break}if(!(JN(c,313221)|0)){c=50;break}if(!(JN(c,313233)|0)){c=43;break}if(!(JN(c,313244)|0)){c=2;break}if(!(JN(c,313257)|0)){c=44;break}if(!(JN(c,313267)|0)){c=2;break}if(!(JN(c,313284)|0)){c=45;break}if(!(JN(c,313296)|0)){c=46;break}if(!(JN(c,313318)|0)){c=47;break}if(!(JN(c,313338)|0)){c=3;break}if(!(JN(c,313351)|0)){c=48;break}if(!(JN(c,313373)|0)){c=49;break}if(!(JN(c,313393)|0)){c=2;break}if(!(JN(c,313410)|0)){c=4;break}if(!(JN(c,313427)|0)){c=5;break}if(!(JN(c,313447)|0)){c=216;break}Gb(24,b|0,c|0)|0;c=0}else c=190;else c=5;else c=15;else c=14;else c=13;else c=3;else c=189;else c=188;else c=187;else c=186;else c=185;else c=433;else c=184;while(0);return c|0}function eN(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+16|0;o=x;do if(a>>>0<245){k=a>>>0<11?16:a+11&-8;a=k>>>3;n=c[81022]|0;d=n>>>a;if(d&3|0){b=(d&1^1)+a|0;a=324128+(b<<1<<2)|0;d=a+8|0;e=c[d>>2]|0;f=e+8|0;g=c[f>>2]|0;if((a|0)==(g|0))c[81022]=n&~(1<<b);else{c[g+12>>2]=a;c[d>>2]=g}w=b<<3;c[e+4>>2]=w|3;w=e+w+4|0;c[w>>2]=c[w>>2]|1;w=f;l=x;return w|0}m=c[81024]|0;if(k>>>0>m>>>0){if(d|0){b=2<<a;b=d<<a&(b|0-b);b=(b&0-b)+-1|0;h=b>>>12&16;b=b>>>h;d=b>>>5&8;b=b>>>d;f=b>>>2&4;b=b>>>f;a=b>>>1&2;b=b>>>a;e=b>>>1&1;e=(d|h|f|a|e)+(b>>>e)|0;b=324128+(e<<1<<2)|0;a=b+8|0;f=c[a>>2]|0;h=f+8|0;d=c[h>>2]|0;if((b|0)==(d|0)){a=n&~(1<<e);c[81022]=a}else{c[d+12>>2]=b;c[a>>2]=d;a=n}g=(e<<3)-k|0;c[f+4>>2]=k|3;e=f+k|0;c[e+4>>2]=g|1;c[e+g>>2]=g;if(m|0){f=c[81027]|0;b=m>>>3;d=324128+(b<<1<<2)|0;b=1<<b;if(!(a&b)){c[81022]=a|b;b=d;a=d+8|0}else{a=d+8|0;b=c[a>>2]|0}c[a>>2]=f;c[b+12>>2]=f;c[f+8>>2]=b;c[f+12>>2]=d}c[81024]=g;c[81027]=e;w=h;l=x;return w|0}i=c[81023]|0;if(i){d=(i&0-i)+-1|0;h=d>>>12&16;d=d>>>h;g=d>>>5&8;d=d>>>g;j=d>>>2&4;d=d>>>j;e=d>>>1&2;d=d>>>e;a=d>>>1&1;a=c[324392+((g|h|j|e|a)+(d>>>a)<<2)>>2]|0;d=(c[a+4>>2]&-8)-k|0;e=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){j=a;g=d}else{do{h=(c[e+4>>2]&-8)-k|0;j=h>>>0<d>>>0;d=j?h:d;a=j?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0}while((e|0)!=0);j=a;g=d}h=j+k|0;if(j>>>0<h>>>0){f=c[j+24>>2]|0;b=c[j+12>>2]|0;do if((b|0)==(j|0)){a=j+20|0;b=c[a>>2]|0;if(!b){a=j+16|0;b=c[a>>2]|0;if(!b){d=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0;d=b}else{d=c[j+8>>2]|0;c[d+12>>2]=b;c[b+8>>2]=d;d=b}while(0);do if(f|0){b=c[j+28>>2]|0;a=324392+(b<<2)|0;if((j|0)==(c[a>>2]|0)){c[a>>2]=d;if(!d){c[81023]=i&~(1<<b);break}}else{c[f+16+(((c[f+16>>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=f;b=c[j+16>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}b=c[j+20>>2]|0;if(b|0){c[d+20>>2]=b;c[b+24>>2]=d}}while(0);if(g>>>0<16){w=g+k|0;c[j+4>>2]=w|3;w=j+w+4|0;c[w>>2]=c[w>>2]|1}else{c[j+4>>2]=k|3;c[h+4>>2]=g|1;c[h+g>>2]=g;if(m|0){e=c[81027]|0;b=m>>>3;d=324128+(b<<1<<2)|0;b=1<<b;if(!(n&b)){c[81022]=n|b;b=d;a=d+8|0}else{a=d+8|0;b=c[a>>2]|0}c[a>>2]=e;c[b+12>>2]=e;c[e+8>>2]=b;c[e+12>>2]=d}c[81024]=g;c[81027]=h}w=j+8|0;l=x;return w|0}else n=k}else n=k}else n=k}else if(a>>>0<=4294967231){a=a+11|0;k=a&-8;j=c[81023]|0;if(j){e=0-k|0;a=a>>>8;if(a)if(k>>>0>16777215)i=31;else{n=(a+1048320|0)>>>16&8;v=a<<n;m=(v+520192|0)>>>16&4;v=v<<m;i=(v+245760|0)>>>16&2;i=14-(m|n|i)+(v<<i>>>15)|0;i=k>>>(i+7|0)&1|i<<1}else i=0;d=c[324392+(i<<2)>>2]|0;a:do if(!d){d=0;a=0;v=57}else{a=0;h=k<<((i|0)==31?0:25-(i>>>1)|0);g=0;while(1){f=(c[d+4>>2]&-8)-k|0;if(f>>>0<e>>>0)if(!f){a=d;e=0;f=d;v=61;break a}else{a=d;e=f}f=c[d+20>>2]|0;d=c[d+16+(h>>>31<<2)>>2]|0;g=(f|0)==0|(f|0)==(d|0)?g:f;f=(d|0)==0;if(f){d=g;v=57;break}else h=h<<((f^1)&1)}}while(0);if((v|0)==57){if((d|0)==0&(a|0)==0){a=2<<i;a=j&(a|0-a);if(!a){n=k;break}n=(a&0-a)+-1|0;h=n>>>12&16;n=n>>>h;g=n>>>5&8;n=n>>>g;i=n>>>2&4;n=n>>>i;m=n>>>1&2;n=n>>>m;d=n>>>1&1;a=0;d=c[324392+((g|h|i|m|d)+(n>>>d)<<2)>>2]|0}if(!d){i=a;h=e}else{f=d;v=61}}if((v|0)==61)while(1){v=0;d=(c[f+4>>2]&-8)-k|0;n=d>>>0<e>>>0;d=n?d:e;a=n?f:a;f=c[f+16+(((c[f+16>>2]|0)==0&1)<<2)>>2]|0;if(!f){i=a;h=d;break}else{e=d;v=61}}if((i|0)!=0?h>>>0<((c[81024]|0)-k|0)>>>0:0){g=i+k|0;if(i>>>0>=g>>>0){w=0;l=x;return w|0}f=c[i+24>>2]|0;b=c[i+12>>2]|0;do if((b|0)==(i|0)){a=i+20|0;b=c[a>>2]|0;if(!b){a=i+16|0;b=c[a>>2]|0;if(!b){b=0;break}}while(1){d=b+20|0;e=c[d>>2]|0;if(e|0){b=e;a=d;continue}d=b+16|0;e=c[d>>2]|0;if(!e)break;else{b=e;a=d}}c[a>>2]=0}else{w=c[i+8>>2]|0;c[w+12>>2]=b;c[b+8>>2]=w}while(0);do if(f){a=c[i+28>>2]|0;d=324392+(a<<2)|0;if((i|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){e=j&~(1<<a);c[81023]=e;break}}else{c[f+16+(((c[f+16>>2]|0)!=(i|0)&1)<<2)>>2]=b;if(!b){e=j;break}}c[b+24>>2]=f;a=c[i+16>>2]|0;if(a|0){c[b+16>>2]=a;c[a+24>>2]=b}a=c[i+20>>2]|0;if(a){c[b+20>>2]=a;c[a+24>>2]=b;e=j}else e=j}else e=j;while(0);do if(h>>>0>=16){c[i+4>>2]=k|3;c[g+4>>2]=h|1;c[g+h>>2]=h;b=h>>>3;if(h>>>0<256){d=324128+(b<<1<<2)|0;a=c[81022]|0;b=1<<b;if(!(a&b)){c[81022]=a|b;b=d;a=d+8|0}else{a=d+8|0;b=c[a>>2]|0}c[a>>2]=g;c[b+12>>2]=g;c[g+8>>2]=b;c[g+12>>2]=d;break}b=h>>>8;if(b)if(h>>>0>16777215)b=31;else{v=(b+1048320|0)>>>16&8;w=b<<v;u=(w+520192|0)>>>16&4;w=w<<u;b=(w+245760|0)>>>16&2;b=14-(u|v|b)+(w<<b>>>15)|0;b=h>>>(b+7|0)&1|b<<1}else b=0;d=324392+(b<<2)|0;c[g+28>>2]=b;a=g+16|0;c[a+4>>2]=0;c[a>>2]=0;a=1<<b;if(!(e&a)){c[81023]=e|a;c[d>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}a=h<<((b|0)==31?0:25-(b>>>1)|0);d=c[d>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(h|0)){v=97;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=96;break}else{a=a<<1;d=b}}if((v|0)==96){c[e>>2]=g;c[g+24>>2]=d;c[g+12>>2]=g;c[g+8>>2]=g;break}else if((v|0)==97){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=g;c[v>>2]=g;c[g+8>>2]=w;c[g+12>>2]=d;c[g+24>>2]=0;break}}else{w=h+k|0;c[i+4>>2]=w|3;w=i+w+4|0;c[w>>2]=c[w>>2]|1}while(0);w=i+8|0;l=x;return w|0}else n=k}else n=k}else n=-1;while(0);d=c[81024]|0;if(d>>>0>=n>>>0){b=d-n|0;a=c[81027]|0;if(b>>>0>15){w=a+n|0;c[81027]=w;c[81024]=b;c[w+4>>2]=b|1;c[w+b>>2]=b;c[a+4>>2]=n|3}else{c[81024]=0;c[81027]=0;c[a+4>>2]=d|3;w=a+d+4|0;c[w>>2]=c[w>>2]|1}w=a+8|0;l=x;return w|0}h=c[81025]|0;if(h>>>0>n>>>0){u=h-n|0;c[81025]=u;w=c[81028]|0;v=w+n|0;c[81028]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}if(!(c[81140]|0)){c[81142]=4096;c[81141]=4096;c[81143]=-1;c[81144]=-1;c[81145]=0;c[81133]=0;a=o&-16^1431655768;c[o>>2]=a;c[81140]=a;a=4096}else a=c[81142]|0;i=n+48|0;j=n+47|0;g=a+j|0;f=0-a|0;k=g&f;if(k>>>0<=n>>>0){w=0;l=x;return w|0}a=c[81132]|0;if(a|0?(m=c[81130]|0,o=m+k|0,o>>>0<=m>>>0|o>>>0>a>>>0):0){w=0;l=x;return w|0}b:do if(!(c[81133]&4)){d=c[81028]|0;c:do if(d){e=324536;while(1){a=c[e>>2]|0;if(a>>>0<=d>>>0?(r=e+4|0,(a+(c[r>>2]|0)|0)>>>0>d>>>0):0)break;a=c[e+8>>2]|0;if(!a){v=118;break c}else e=a}b=g-h&f;if(b>>>0<2147483647){a=TQ(b|0)|0;if((a|0)==((c[e>>2]|0)+(c[r>>2]|0)|0)){if((a|0)!=(-1|0)){h=b;g=a;v=135;break b}}else{e=a;v=126}}else b=0}else v=118;while(0);do if((v|0)==118){d=TQ(0)|0;if((d|0)!=(-1|0)?(b=d,p=c[81141]|0,q=p+-1|0,b=((q&b|0)==0?0:(q+b&0-p)-b|0)+k|0,p=c[81130]|0,q=b+p|0,b>>>0>n>>>0&b>>>0<2147483647):0){r=c[81132]|0;if(r|0?q>>>0<=p>>>0|q>>>0>r>>>0:0){b=0;break}a=TQ(b|0)|0;if((a|0)==(d|0)){h=b;g=d;v=135;break b}else{e=a;v=126}}else b=0}while(0);do if((v|0)==126){d=0-b|0;if(!(i>>>0>b>>>0&(b>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){b=0;break}else{h=b;g=e;v=135;break b}a=c[81142]|0;a=j-b+a&0-a;if(a>>>0>=2147483647){h=b;g=e;v=135;break b}if((TQ(a|0)|0)==(-1|0)){TQ(d|0)|0;b=0;break}else{h=a+b|0;g=e;v=135;break b}}while(0);c[81133]=c[81133]|4;v=133}else{b=0;v=133}while(0);if(((v|0)==133?k>>>0<2147483647:0)?(u=TQ(k|0)|0,r=TQ(0)|0,s=r-u|0,t=s>>>0>(n+40|0)>>>0,!((u|0)==(-1|0)|t^1|u>>>0<r>>>0&((u|0)!=(-1|0)&(r|0)!=(-1|0))^1)):0){h=t?s:b;g=u;v=135}if((v|0)==135){b=(c[81130]|0)+h|0;c[81130]=b;if(b>>>0>(c[81131]|0)>>>0)c[81131]=b;j=c[81028]|0;do if(j){b=324536;while(1){a=c[b>>2]|0;d=b+4|0;e=c[d>>2]|0;if((g|0)==(a+e|0)){v=145;break}f=c[b+8>>2]|0;if(!f)break;else b=f}if(((v|0)==145?(c[b+12>>2]&8|0)==0:0)?j>>>0<g>>>0&j>>>0>=a>>>0:0){c[d>>2]=e+h;w=j+8|0;w=(w&7|0)==0?0:0-w&7;v=j+w|0;w=(c[81025]|0)+(h-w)|0;c[81028]=v;c[81025]=w;c[v+4>>2]=w|1;c[v+w+4>>2]=40;c[81029]=c[81144];break}if(g>>>0<(c[81026]|0)>>>0)c[81026]=g;d=g+h|0;b=324536;while(1){if((c[b>>2]|0)==(d|0)){v=153;break}a=c[b+8>>2]|0;if(!a)break;else b=a}if((v|0)==153?(c[b+12>>2]&8|0)==0:0){c[b>>2]=g;m=b+4|0;c[m>>2]=(c[m>>2]|0)+h;m=g+8|0;m=g+((m&7|0)==0?0:0-m&7)|0;b=d+8|0;b=d+((b&7|0)==0?0:0-b&7)|0;k=m+n|0;i=b-m-n|0;c[m+4>>2]=n|3;do if((b|0)!=(j|0)){if((b|0)==(c[81027]|0)){w=(c[81024]|0)+i|0;c[81024]=w;c[81027]=k;c[k+4>>2]=w|1;c[k+w>>2]=w;break}a=c[b+4>>2]|0;if((a&3|0)==1){h=a&-8;e=a>>>3;d:do if(a>>>0<256){a=c[b+8>>2]|0;d=c[b+12>>2]|0;if((d|0)==(a|0)){c[81022]=c[81022]&~(1<<e);break}else{c[a+12>>2]=d;c[d+8>>2]=a;break}}else{g=c[b+24>>2]|0;a=c[b+12>>2]|0;do if((a|0)==(b|0)){e=b+16|0;d=e+4|0;a=c[d>>2]|0;if(!a){a=c[e>>2]|0;if(!a){a=0;break}else d=e}while(1){e=a+20|0;f=c[e>>2]|0;if(f|0){a=f;d=e;continue}e=a+16|0;f=c[e>>2]|0;if(!f)break;else{a=f;d=e}}c[d>>2]=0}else{w=c[b+8>>2]|0;c[w+12>>2]=a;c[a+8>>2]=w}while(0);if(!g)break;d=c[b+28>>2]|0;e=324392+(d<<2)|0;do if((b|0)!=(c[e>>2]|0)){c[g+16+(((c[g+16>>2]|0)!=(b|0)&1)<<2)>>2]=a;if(!a)break d}else{c[e>>2]=a;if(a|0)break;c[81023]=c[81023]&~(1<<d);break d}while(0);c[a+24>>2]=g;d=b+16|0;e=c[d>>2]|0;if(e|0){c[a+16>>2]=e;c[e+24>>2]=a}d=c[d+4>>2]|0;if(!d)break;c[a+20>>2]=d;c[d+24>>2]=a}while(0);b=b+h|0;f=h+i|0}else f=i;b=b+4|0;c[b>>2]=c[b>>2]&-2;c[k+4>>2]=f|1;c[k+f>>2]=f;b=f>>>3;if(f>>>0<256){d=324128+(b<<1<<2)|0;a=c[81022]|0;b=1<<b;if(!(a&b)){c[81022]=a|b;b=d;a=d+8|0}else{a=d+8|0;b=c[a>>2]|0}c[a>>2]=k;c[b+12>>2]=k;c[k+8>>2]=b;c[k+12>>2]=d;break}b=f>>>8;do if(!b)b=0;else{if(f>>>0>16777215){b=31;break}v=(b+1048320|0)>>>16&8;w=b<<v;u=(w+520192|0)>>>16&4;w=w<<u;b=(w+245760|0)>>>16&2;b=14-(u|v|b)+(w<<b>>>15)|0;b=f>>>(b+7|0)&1|b<<1}while(0);e=324392+(b<<2)|0;c[k+28>>2]=b;a=k+16|0;c[a+4>>2]=0;c[a>>2]=0;a=c[81023]|0;d=1<<b;if(!(a&d)){c[81023]=a|d;c[e>>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}a=f<<((b|0)==31?0:25-(b>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){v=194;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=193;break}else{a=a<<1;d=b}}if((v|0)==193){c[e>>2]=k;c[k+24>>2]=d;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==194){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=k;c[v>>2]=k;c[k+8>>2]=w;c[k+12>>2]=d;c[k+24>>2]=0;break}}else{w=(c[81025]|0)+i|0;c[81025]=w;c[81028]=k;c[k+4>>2]=w|1}while(0);w=m+8|0;l=x;return w|0}b=324536;while(1){a=c[b>>2]|0;if(a>>>0<=j>>>0?(w=a+(c[b+4>>2]|0)|0,w>>>0>j>>>0):0)break;b=c[b+8>>2]|0}f=w+-47|0;a=f+8|0;a=f+((a&7|0)==0?0:0-a&7)|0;f=j+16|0;a=a>>>0<f>>>0?j:a;b=a+8|0;d=g+8|0;d=(d&7|0)==0?0:0-d&7;v=g+d|0;d=h+-40-d|0;c[81028]=v;c[81025]=d;c[v+4>>2]=d|1;c[v+d+4>>2]=40;c[81029]=c[81144];d=a+4|0;c[d>>2]=27;c[b>>2]=c[81134];c[b+4>>2]=c[81135];c[b+8>>2]=c[81136];c[b+12>>2]=c[81137];c[81134]=g;c[81135]=h;c[81137]=0;c[81136]=b;b=a+24|0;do{v=b;b=b+4|0;c[b>>2]=7}while((v+8|0)>>>0<w>>>0);if((a|0)!=(j|0)){g=a-j|0;c[d>>2]=c[d>>2]&-2;c[j+4>>2]=g|1;c[a>>2]=g;b=g>>>3;if(g>>>0<256){d=324128+(b<<1<<2)|0;a=c[81022]|0;b=1<<b;if(!(a&b)){c[81022]=a|b;b=d;a=d+8|0}else{a=d+8|0;b=c[a>>2]|0}c[a>>2]=j;c[b+12>>2]=j;c[j+8>>2]=b;c[j+12>>2]=d;break}b=g>>>8;if(b)if(g>>>0>16777215)d=31;else{v=(b+1048320|0)>>>16&8;w=b<<v;u=(w+520192|0)>>>16&4;w=w<<u;d=(w+245760|0)>>>16&2;d=14-(u|v|d)+(w<<d>>>15)|0;d=g>>>(d+7|0)&1|d<<1}else d=0;e=324392+(d<<2)|0;c[j+28>>2]=d;c[j+20>>2]=0;c[f>>2]=0;b=c[81023]|0;a=1<<d;if(!(b&a)){c[81023]=b|a;c[e>>2]=j;c[j+24>>2]=e;c[j+12>>2]=j;c[j+8>>2]=j;break}a=g<<((d|0)==31?0:25-(d>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(g|0)){v=216;break}e=d+16+(a>>>31<<2)|0;b=c[e>>2]|0;if(!b){v=215;break}else{a=a<<1;d=b}}if((v|0)==215){c[e>>2]=j;c[j+24>>2]=d;c[j+12>>2]=j;c[j+8>>2]=j;break}else if((v|0)==216){v=d+8|0;w=c[v>>2]|0;c[w+12>>2]=j;c[v>>2]=j;c[j+8>>2]=w;c[j+12>>2]=d;c[j+24>>2]=0;break}}}else{w=c[81026]|0;if((w|0)==0|g>>>0<w>>>0)c[81026]=g;c[81134]=g;c[81135]=h;c[81137]=0;c[81031]=c[81140];c[81030]=-1;b=0;do{w=324128+(b<<1<<2)|0;c[w+12>>2]=w;c[w+8>>2]=w;b=b+1|0}while((b|0)!=32);w=g+8|0;w=(w&7|0)==0?0:0-w&7;v=g+w|0;w=h+-40-w|0;c[81028]=v;c[81025]=w;c[v+4>>2]=w|1;c[v+w+4>>2]=40;c[81029]=c[81144]}while(0);b=c[81025]|0;if(b>>>0>n>>>0){u=b-n|0;c[81025]=u;w=c[81028]|0;v=w+n|0;c[81028]=v;c[v+4>>2]=u|1;c[w+4>>2]=n|3;w=w+8|0;l=x;return w|0}}c[8240]=12;w=0;l=x;return w|0}function fN(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;if(!a)return;d=a+-8|0;f=c[81026]|0;a=c[a+-4>>2]|0;b=a&-8;j=d+b|0;do if(!(a&1)){e=c[d>>2]|0;if(!(a&3))return;h=d+(0-e)|0;g=e+b|0;if(h>>>0<f>>>0)return;if((h|0)==(c[81027]|0)){a=j+4|0;b=c[a>>2]|0;if((b&3|0)!=3){i=h;b=g;break}c[81024]=g;c[a>>2]=b&-2;c[h+4>>2]=g|1;c[h+g>>2]=g;return}d=e>>>3;if(e>>>0<256){a=c[h+8>>2]|0;b=c[h+12>>2]|0;if((b|0)==(a|0)){c[81022]=c[81022]&~(1<<d);i=h;b=g;break}else{c[a+12>>2]=b;c[b+8>>2]=a;i=h;b=g;break}}f=c[h+24>>2]|0;a=c[h+12>>2]|0;do if((a|0)==(h|0)){d=h+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){a=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0}else{i=c[h+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){b=c[h+28>>2]|0;d=324392+(b<<2)|0;if((h|0)==(c[d>>2]|0)){c[d>>2]=a;if(!a){c[81023]=c[81023]&~(1<<b);i=h;b=g;break}}else{c[f+16+(((c[f+16>>2]|0)!=(h|0)&1)<<2)>>2]=a;if(!a){i=h;b=g;break}}c[a+24>>2]=f;b=h+16|0;d=c[b>>2]|0;if(d|0){c[a+16>>2]=d;c[d+24>>2]=a}b=c[b+4>>2]|0;if(b){c[a+20>>2]=b;c[b+24>>2]=a;i=h;b=g}else{i=h;b=g}}else{i=h;b=g}}else{i=d;h=d}while(0);if(h>>>0>=j>>>0)return;a=j+4|0;e=c[a>>2]|0;if(!(e&1))return;if(!(e&2)){a=c[81027]|0;if((j|0)==(c[81028]|0)){j=(c[81025]|0)+b|0;c[81025]=j;c[81028]=i;c[i+4>>2]=j|1;if((i|0)!=(a|0))return;c[81027]=0;c[81024]=0;return}if((j|0)==(a|0)){j=(c[81024]|0)+b|0;c[81024]=j;c[81027]=h;c[i+4>>2]=j|1;c[h+j>>2]=j;return}f=(e&-8)+b|0;d=e>>>3;do if(e>>>0<256){b=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(b|0)){c[81022]=c[81022]&~(1<<d);break}else{c[b+12>>2]=a;c[a+8>>2]=b;break}}else{g=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){d=j+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){d=0;break}else b=d}while(1){d=a+20|0;e=c[d>>2]|0;if(e|0){a=e;b=d;continue}d=a+16|0;e=c[d>>2]|0;if(!e)break;else{a=e;b=d}}c[b>>2]=0;d=a}else{d=c[j+8>>2]|0;c[d+12>>2]=a;c[a+8>>2]=d;d=a}while(0);if(g|0){a=c[j+28>>2]|0;b=324392+(a<<2)|0;if((j|0)==(c[b>>2]|0)){c[b>>2]=d;if(!d){c[81023]=c[81023]&~(1<<a);break}}else{c[g+16+(((c[g+16>>2]|0)!=(j|0)&1)<<2)>>2]=d;if(!d)break}c[d+24>>2]=g;a=j+16|0;b=c[a>>2]|0;if(b|0){c[d+16>>2]=b;c[b+24>>2]=d}a=c[a+4>>2]|0;if(a|0){c[d+20>>2]=a;c[a+24>>2]=d}}}while(0);c[i+4>>2]=f|1;c[h+f>>2]=f;if((i|0)==(c[81027]|0)){c[81024]=f;return}}else{c[a>>2]=e&-2;c[i+4>>2]=b|1;c[h+b>>2]=b;f=b}a=f>>>3;if(f>>>0<256){d=324128+(a<<1<<2)|0;b=c[81022]|0;a=1<<a;if(!(b&a)){c[81022]=b|a;a=d;b=d+8|0}else{b=d+8|0;a=c[b>>2]|0}c[b>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=d;return}a=f>>>8;if(a)if(f>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<<h;g=(j+520192|0)>>>16&4;j=j<<g;a=(j+245760|0)>>>16&2;a=14-(g|h|a)+(j<<a>>>15)|0;a=f>>>(a+7|0)&1|a<<1}else a=0;e=324392+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[81023]|0;d=1<<a;do if(b&d){b=f<<((a|0)==31?0:25-(a>>>1)|0);d=c[e>>2]|0;while(1){if((c[d+4>>2]&-8|0)==(f|0)){a=73;break}e=d+16+(b>>>31<<2)|0;a=c[e>>2]|0;if(!a){a=72;break}else{b=b<<1;d=a}}if((a|0)==72){c[e>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((a|0)==73){h=d+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=d;c[i+24>>2]=0;break}}else{c[81023]=b|d;c[e>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i}while(0);j=(c[81030]|0)+-1|0;c[81030]=j;if(!j)a=324544;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[81030]=-1;return}function gN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;if(!a){a=eN(b)|0;return a|0}if(b>>>0>4294967231){c[8240]=12;a=0;return a|0}m=b>>>0<11?16:b+11&-8;l=a+-8|0;n=a+-4|0;k=c[n>>2]|0;d=k&-8;h=l+d|0;do if(!(k&3)){if(!(m>>>0<256|d>>>0<(m|4)>>>0)?(d-m|0)>>>0<=c[81142]<<1>>>0:0)return a|0}else{if(d>>>0>=m>>>0){d=d-m|0;if(d>>>0<=15)return a|0;l=l+m|0;c[n>>2]=k&1|m|2;c[l+4>>2]=d|3;n=l+d+4|0;c[n>>2]=c[n>>2]|1;hN(l,d);return a|0}if((h|0)==(c[81028]|0)){j=(c[81025]|0)+d|0;e=j-m|0;d=l+m|0;if(j>>>0<=m>>>0)break;c[n>>2]=k&1|m|2;c[d+4>>2]=e|1;c[81028]=d;c[81025]=e;return a|0}if((h|0)==(c[81027]|0)){f=(c[81024]|0)+d|0;if(f>>>0<m>>>0)break;d=f-m|0;e=k&1;if(d>>>0>15){l=l+m|0;k=l+d|0;c[n>>2]=e|m|2;c[l+4>>2]=d|1;c[k>>2]=d;e=k+4|0;c[e>>2]=c[e>>2]&-2;e=l}else{c[n>>2]=e|f|2;e=l+f+4|0;c[e>>2]=c[e>>2]|1;e=0;d=0}c[81024]=d;c[81027]=e;return a|0}e=c[h+4>>2]|0;if((e&2|0)==0?(j=(e&-8)+d|0,j>>>0>=m>>>0):0){i=j-m|0;f=e>>>3;do if(e>>>0<256){e=c[h+8>>2]|0;d=c[h+12>>2]|0;if((d|0)==(e|0)){c[81022]=c[81022]&~(1<<f);break}else{c[e+12>>2]=d;c[d+8>>2]=e;break}}else{g=c[h+24>>2]|0;d=c[h+12>>2]|0;do if((d|0)==(h|0)){f=h+16|0;e=f+4|0;d=c[e>>2]|0;if(!d){d=c[f>>2]|0;if(!d){f=0;break}else e=f}while(1){f=d+20|0;b=c[f>>2]|0;if(b|0){d=b;e=f;continue}f=d+16|0;b=c[f>>2]|0;if(!b)break;else{d=b;e=f}}c[e>>2]=0;f=d}else{f=c[h+8>>2]|0;c[f+12>>2]=d;c[d+8>>2]=f;f=d}while(0);if(g|0){d=c[h+28>>2]|0;e=324392+(d<<2)|0;if((h|0)==(c[e>>2]|0)){c[e>>2]=f;if(!f){c[81023]=c[81023]&~(1<<d);break}}else{c[g+16+(((c[g+16>>2]|0)!=(h|0)&1)<<2)>>2]=f;if(!f)break}c[f+24>>2]=g;d=h+16|0;e=c[d>>2]|0;if(e|0){c[f+16>>2]=e;c[e+24>>2]=f}d=c[d+4>>2]|0;if(d|0){c[f+20>>2]=d;c[d+24>>2]=f}}}while(0);d=k&1;if(i>>>0<16){c[n>>2]=j|d|2;n=l+j+4|0;c[n>>2]=c[n>>2]|1;return a|0}else{l=l+m|0;c[n>>2]=d|m|2;c[l+4>>2]=i|3;n=l+i+4|0;c[n>>2]=c[n>>2]|1;hN(l,i);return a|0}}}while(0);d=eN(b)|0;if(!d){a=0;return a|0}n=c[n>>2]|0;n=(n&-8)-((n&3|0)==0?8:4)|0;PQ(d|0,a|0,(n>>>0<b>>>0?n:b)|0)|0;fN(a);a=d;return a|0}function hN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+b|0;d=c[a+4>>2]|0;do if(!(d&1)){e=c[a>>2]|0;if(!(d&3))return;g=a+(0-e)|0;h=e+b|0;if((g|0)==(c[81027]|0)){a=j+4|0;d=c[a>>2]|0;if((d&3|0)!=3){i=g;d=h;break}c[81024]=h;c[a>>2]=d&-2;c[g+4>>2]=h|1;c[g+h>>2]=h;return}b=e>>>3;if(e>>>0<256){a=c[g+8>>2]|0;d=c[g+12>>2]|0;if((d|0)==(a|0)){c[81022]=c[81022]&~(1<<b);i=g;d=h;break}else{c[a+12>>2]=d;c[d+8>>2]=a;i=g;d=h;break}}f=c[g+24>>2]|0;a=c[g+12>>2]|0;do if((a|0)==(g|0)){b=g+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){a=0;break}else d=b}while(1){b=a+20|0;e=c[b>>2]|0;if(e|0){a=e;d=b;continue}b=a+16|0;e=c[b>>2]|0;if(!e)break;else{a=e;d=b}}c[d>>2]=0}else{i=c[g+8>>2]|0;c[i+12>>2]=a;c[a+8>>2]=i}while(0);if(f){d=c[g+28>>2]|0;b=324392+(d<<2)|0;if((g|0)==(c[b>>2]|0)){c[b>>2]=a;if(!a){c[81023]=c[81023]&~(1<<d);i=g;d=h;break}}else{c[f+16+(((c[f+16>>2]|0)!=(g|0)&1)<<2)>>2]=a;if(!a){i=g;d=h;break}}c[a+24>>2]=f;d=g+16|0;b=c[d>>2]|0;if(b|0){c[a+16>>2]=b;c[b+24>>2]=a}d=c[d+4>>2]|0;if(d){c[a+20>>2]=d;c[d+24>>2]=a;i=g;d=h}else{i=g;d=h}}else{i=g;d=h}}else{i=a;d=b}while(0);a=j+4|0;e=c[a>>2]|0;if(!(e&2)){a=c[81027]|0;if((j|0)==(c[81028]|0)){j=(c[81025]|0)+d|0;c[81025]=j;c[81028]=i;c[i+4>>2]=j|1;if((i|0)!=(a|0))return;c[81027]=0;c[81024]=0;return}if((j|0)==(a|0)){j=(c[81024]|0)+d|0;c[81024]=j;c[81027]=i;c[i+4>>2]=j|1;c[i+j>>2]=j;return}g=(e&-8)+d|0;b=e>>>3;do if(e>>>0<256){d=c[j+8>>2]|0;a=c[j+12>>2]|0;if((a|0)==(d|0)){c[81022]=c[81022]&~(1<<b);break}else{c[d+12>>2]=a;c[a+8>>2]=d;break}}else{f=c[j+24>>2]|0;a=c[j+12>>2]|0;do if((a|0)==(j|0)){b=j+16|0;d=b+4|0;a=c[d>>2]|0;if(!a){a=c[b>>2]|0;if(!a){b=0;break}else d=b}while(1){b=a+20|0;e=c[b>>2]|0;if(e|0){a=e;d=b;continue}b=a+16|0;e=c[b>>2]|0;if(!e)break;else{a=e;d=b}}c[d>>2]=0;b=a}else{b=c[j+8>>2]|0;c[b+12>>2]=a;c[a+8>>2]=b;b=a}while(0);if(f|0){a=c[j+28>>2]|0;d=324392+(a<<2)|0;if((j|0)==(c[d>>2]|0)){c[d>>2]=b;if(!b){c[81023]=c[81023]&~(1<<a);break}}else{c[f+16+(((c[f+16>>2]|0)!=(j|0)&1)<<2)>>2]=b;if(!b)break}c[b+24>>2]=f;a=j+16|0;d=c[a>>2]|0;if(d|0){c[b+16>>2]=d;c[d+24>>2]=b}a=c[a+4>>2]|0;if(a|0){c[b+20>>2]=a;c[a+24>>2]=b}}}while(0);c[i+4>>2]=g|1;c[i+g>>2]=g;if((i|0)==(c[81027]|0)){c[81024]=g;return}else d=g}else{c[a>>2]=e&-2;c[i+4>>2]=d|1;c[i+d>>2]=d}a=d>>>3;if(d>>>0<256){b=324128+(a<<1<<2)|0;d=c[81022]|0;a=1<<a;if(!(d&a)){c[81022]=d|a;a=b;d=b+8|0}else{d=b+8|0;a=c[d>>2]|0}c[d>>2]=i;c[a+12>>2]=i;c[i+8>>2]=a;c[i+12>>2]=b;return}a=d>>>8;if(a)if(d>>>0>16777215)a=31;else{h=(a+1048320|0)>>>16&8;j=a<<h;g=(j+520192|0)>>>16&4;j=j<<g;a=(j+245760|0)>>>16&2;a=14-(g|h|a)+(j<<a>>>15)|0;a=d>>>(a+7|0)&1|a<<1}else a=0;f=324392+(a<<2)|0;c[i+28>>2]=a;c[i+20>>2]=0;c[i+16>>2]=0;b=c[81023]|0;e=1<<a;if(!(b&e)){c[81023]=b|e;c[f>>2]=i;c[i+24>>2]=f;c[i+12>>2]=i;c[i+8>>2]=i;return}b=d<<((a|0)==31?0:25-(a>>>1)|0);e=c[f>>2]|0;while(1){if((c[e+4>>2]&-8|0)==(d|0)){a=69;break}f=e+16+(b>>>31<<2)|0;a=c[f>>2]|0;if(!a){a=68;break}else{b=b<<1;e=a}}if((a|0)==68){c[f>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i;return}else if((a|0)==69){h=e+8|0;j=c[h>>2]|0;c[j+12>>2]=i;c[h>>2]=i;c[i+8>>2]=j;c[i+12>>2]=e;c[i+24>>2]=0;return}}function iN(){return 324584}function jN(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=oN(c[a+60>>2]|0)|0;a=mN(Ya(6,d|0)|0)|0;l=b;return a|0}function kN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;n=l;l=l+48|0;k=n+16|0;g=n;f=n+32|0;i=a+28|0;e=c[i>>2]|0;c[f>>2]=e;j=a+20|0;e=(c[j>>2]|0)-e|0;c[f+4>>2]=e;c[f+8>>2]=b;c[f+12>>2]=d;e=e+d|0;h=a+60|0;c[g>>2]=c[h>>2];c[g+4>>2]=f;c[g+8>>2]=2;g=mN(Na(146,g|0)|0)|0;a:do if((e|0)!=(g|0)){b=2;while(1){if((g|0)<0)break;e=e-g|0;p=c[f+4>>2]|0;o=g>>>0>p>>>0;f=o?f+8|0:f;b=(o<<31>>31)+b|0;p=g-(o?p:0)|0;c[f>>2]=(c[f>>2]|0)+p;o=f+4|0;c[o>>2]=(c[o>>2]|0)-p;c[k>>2]=c[h>>2];c[k+4>>2]=f;c[k+8>>2]=b;g=mN(Na(146,k|0)|0)|0;if((e|0)==(g|0)){m=3;break a}}c[a+16>>2]=0;c[i>>2]=0;c[j>>2]=0;c[a>>2]=c[a>>2]|32;if((b|0)==2)d=0;else d=d-(c[f+4>>2]|0)|0}else m=3;while(0);if((m|0)==3){p=c[a+44>>2]|0;c[a+16>>2]=p+(c[a+48>>2]|0);c[i>>2]=p;c[j>>2]=p}l=n;return d|0}function lN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+32|0;g=f;e=f+20|0;c[g>>2]=c[a+60>>2];c[g+4>>2]=0;c[g+8>>2]=b;c[g+12>>2]=e;c[g+16>>2]=d;if((mN(La(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function mN(a){a=a|0;if(a>>>0>4294963200){c[8240]=0-a;a=-1}return a|0}function nN(){return 32960}function oN(a){a=a|0;return a|0}function pN(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;f=k;i=k+16|0;c[i>>2]=d;g=i+4|0;j=b+48|0;m=c[j>>2]|0;c[g>>2]=e-((m|0)!=0&1);h=b+44|0;c[i+8>>2]=c[h>>2];c[i+12>>2]=m;c[f>>2]=c[b+60>>2];c[f+4>>2]=i;c[f+8>>2]=2;f=mN(Ma(145,f|0)|0)|0;if((f|0)>=1){i=c[g>>2]|0;if(f>>>0>i>>>0){g=c[h>>2]|0;h=b+4|0;c[h>>2]=g;c[b+8>>2]=g+(f-i);if(!(c[j>>2]|0))f=e;else{c[h>>2]=g+1;a[d+(e+-1)>>0]=a[g>>0]|0;f=e}}}else c[b>>2]=c[b>>2]|f&48^16;l=k;return f|0}function qN(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+32|0;f=g;c[b+36>>2]=1;if((c[b>>2]&64|0)==0?(c[f>>2]=c[b+60>>2],c[f+4>>2]=21523,c[f+8>>2]=g+16,Xa(54,f|0)|0):0)a[b+75>>0]=-1;f=kN(b,d,e)|0;l=g;return f|0}function rN(a){a=a|0;var b=0;b=(sN(a)|0)==0;return (b?a:a|32)|0}function sN(a){a=a|0;return (a+-65|0)>>>0<26|0}function tN(a){a=a|0;var b=0,d=0;b=l;l=l+128|0;d=b;c[d>>2]=0;c[d+4>>2]=a;c[d+44>>2]=a;c[d+8>>2]=(a|0)<0?-1:a+2147483647|0;c[d+76>>2]=-1;uN(d,0);a=vN(d,16,1,-2147483648,0)|0;l=b;return a|0}function uN(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;c[a+104>>2]=b;d=c[a+8>>2]|0;e=c[a+4>>2]|0;f=d-e|0;c[a+108>>2]=f;c[a+100>>2]=(b|0)!=0&(f|0)>(b|0)?e+b|0:d;return}function vN(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;a:do if(e>>>0>36){c[8240]=22;h=0;g=0}else{r=b+4|0;q=b+100|0;do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=wN(b)|0}while((xN(i)|0)!=0);b:do switch(i|0){case 43:case 45:{i=((i|0)==45)<<31>>31;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;p=i;i=d[j>>0]|0;break b}else{p=i;i=wN(b)|0;break b}}default:p=0}while(0);j=(e|0)==0;do if((e|16|0)==16&(i|0)==48){i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=wN(b)|0;if((i|32|0)!=120)if(j){e=8;n=46;break}else{n=32;break}i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=wN(b)|0;if((d[313559+i>>0]|0)>15){g=(c[q>>2]|0)!=0;if(g)c[r>>2]=(c[r>>2]|0)+-1;if(!f){uN(b,0);h=0;g=0;break a}if(!g){h=0;g=0;break a}c[r>>2]=(c[r>>2]|0)+-1;h=0;g=0;break a}else{e=16;n=46}}else{e=j?10:e;if((d[313559+i>>0]|0)>>>0<e>>>0)n=32;else{if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;uN(b,0);c[8240]=22;h=0;g=0;break a}}while(0);c:do if((n|0)==32)if((e|0)==10){e=i+-48|0;if(e>>>0<10){i=0;j=e;do{i=(i*10|0)+j|0;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;e=d[e>>0]|0}else e=wN(b)|0;j=e+-48|0}while(j>>>0<10&i>>>0<429496729);f=0}else{e=i;i=0;f=0}k=e+-48|0;if(k>>>0<10){j=e;do{e=EQ(i|0,f|0,10,0)|0;l=z;m=((k|0)<0)<<31>>31;o=~m;if(l>>>0>o>>>0|(l|0)==(o|0)&e>>>0>~k>>>0){e=10;n=72;break c}i=yQ(e|0,l|0,k|0,m|0)|0;f=z;e=c[r>>2]|0;if(e>>>0<(c[q>>2]|0)>>>0){c[r>>2]=e+1;j=d[e>>0]|0}else j=wN(b)|0;k=j+-48|0}while(k>>>0<10&(f>>>0<429496729|(f|0)==429496729&i>>>0<2576980378));if(k>>>0>9){j=p;e=f}else{e=10;n=72}}else{j=p;e=f}}else n=46;while(0);d:do if((n|0)==46){if(!(e+-1&e)){n=a[313815+((e*23|0)>>>5&7)>>0]|0;f=a[313559+i>>0]|0;j=f&255;if(j>>>0<e>>>0){i=0;k=j;do{i=k|i<<n;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=wN(b)|0;f=a[313559+j>>0]|0;k=f&255}while(i>>>0<134217728&k>>>0<e>>>0);k=0}else{j=i;k=0;i=0}l=JQ(-1,-1,n|0)|0;m=z;if((f&255)>>>0>=e>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break}else j=k;while(1){i=KQ(i|0,j|0,n|0)|0;k=z;i=f&255|i;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=wN(b)|0;f=a[313559+j>>0]|0;if((f&255)>>>0>=e>>>0|(k>>>0>m>>>0|(k|0)==(m|0)&i>>>0>l>>>0)){f=k;n=72;break d}else j=k}}f=a[313559+i>>0]|0;j=f&255;if(j>>>0<e>>>0){i=0;k=j;do{i=k+(O(i,e)|0)|0;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=wN(b)|0;f=a[313559+j>>0]|0;k=f&255}while(i>>>0<119304647&k>>>0<e>>>0);k=0}else{j=i;i=0;k=0}if((f&255)>>>0<e>>>0){n=GQ(-1,-1,e|0,0)|0;o=z;m=k;while(1){if(m>>>0>o>>>0|(m|0)==(o|0)&i>>>0>n>>>0){f=m;n=72;break d}k=EQ(i|0,m|0,e|0,0)|0;l=z;f=f&255;if(l>>>0>4294967295|(l|0)==-1&k>>>0>~f>>>0){f=m;n=72;break d}i=yQ(f|0,0,k|0,l|0)|0;k=z;j=c[r>>2]|0;if(j>>>0<(c[q>>2]|0)>>>0){c[r>>2]=j+1;j=d[j>>0]|0}else j=wN(b)|0;f=a[313559+j>>0]|0;if((f&255)>>>0>=e>>>0){f=k;n=72;break}else m=k}}else{f=k;n=72}}while(0);if((n|0)==72)if((d[313559+j>>0]|0)>>>0<e>>>0){do{i=c[r>>2]|0;if(i>>>0<(c[q>>2]|0)>>>0){c[r>>2]=i+1;i=d[i>>0]|0}else i=wN(b)|0}while((d[313559+i>>0]|0)>>>0<e>>>0);c[8240]=34;j=(g&1|0)==0&0==0?p:0;e=h;i=g}else{j=p;e=f}if(c[q>>2]|0)c[r>>2]=(c[r>>2]|0)+-1;if(!(e>>>0<h>>>0|(e|0)==(h|0)&i>>>0<g>>>0)){if(!((g&1|0)!=0|0!=0|(j|0)!=0)){c[8240]=34;g=yQ(g|0,h|0,-1,-1)|0;h=z;break}if(e>>>0>h>>>0|(e|0)==(h|0)&i>>>0>g>>>0){c[8240]=34;break}}g=((j|0)<0)<<31>>31;g=zQ(i^j|0,e^g|0,j|0,g|0)|0;h=z}while(0);z=h;return g|0}function wN(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;f=b+104|0;j=c[f>>2]|0;if((j|0)!=0?(c[b+108>>2]|0)>=(j|0):0)k=4;else{e=yN(b)|0;if((e|0)>=0){g=c[f>>2]|0;f=b+8|0;if(g){i=c[f>>2]|0;f=c[b+4>>2]|0;h=b+108|0;g=g-(c[h>>2]|0)|0;j=i;if((i-f|0)<(g|0)){i=j;g=j}else{i=f+(g+-1)|0;g=j}}else{g=c[f>>2]|0;h=b+108|0;i=g;f=c[b+4>>2]|0}c[b+100>>2]=i;if(g|0)c[h>>2]=g+1-f+(c[h>>2]|0);f=f+-1|0;if((d[f>>0]|0|0)!=(e|0))a[f>>0]=e}else k=4}if((k|0)==4){c[b+100>>2]=0;e=-1}return e|0}function xN(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function yN(a){a=a|0;var b=0,e=0;e=l;l=l+16|0;b=e;if((zN(a)|0)==0?(ig[c[a+32>>2]&63](a,b,1)|0)==1:0)a=d[b>>0]|0;else a=-1;l=e;return a|0}function zN(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=b+20|0;e=b+28|0;if((c[d>>2]|0)>>>0>(c[e>>2]|0)>>>0)ig[c[b+36>>2]&63](b,0,0)|0;c[b+16>>2]=0;c[e>>2]=0;c[d>>2]=0;d=c[b>>2]|0;if(!(d&4)){e=(c[b+44>>2]|0)+(c[b+48>>2]|0)|0;c[b+8>>2]=e;c[b+4>>2]=e;d=d<<27>>31}else{c[b>>2]=d|32;d=-1}return d|0}function AN(a){a=a|0;a=tN(a)|0;return a|0}function BN(a){a=a|0;var b=0;b=(CN(a)|0)==0;return (b?a:a&95)|0}function CN(a){a=a|0;return (a+-97|0)>>>0<26|0}function DN(a,b){a=+a;b=+b;var d=0,e=0;h[j>>3]=a;e=c[j>>2]|0;d=c[j+4>>2]|0;h[j>>3]=b;d=c[j+4>>2]&-2147483648|d&2147483647;c[j>>2]=e;c[j+4>>2]=d;return +(+h[j>>3])}function EN(a){a=+a;var b=0;h[j>>3]=a;b=c[j+4>>2]&2147483647;c[j>>2]=c[j>>2];c[j+4>>2]=b;a=+h[j>>3];do if(b>>>0<1072049730)if(b>>>0<1045430272)a=1.0;else{a=+GN(a);a=a*a/((a+1.0)*2.0)+1.0}else if(b>>>0<1082535490){a=+L(+a);a=(a+1.0/a)*.5;break}else{a=+HN(a);break}while(0);return +a}function FN(a){a=+a;var b=0.0,d=0.0,e=0;h[j>>3]=a;e=c[j+4>>2]|0;d=(e|0)<0?-.5:.5;e=e&2147483647;c[j>>2]=c[j>>2];c[j+4>>2]=e;b=+h[j>>3];do if(e>>>0<1082535490){b=+GN(b);if(e>>>0>=1072693248){a=d*(b+b/(b+1.0));break}if(e>>>0>=1045430272)a=d*(b*2.0-b*b/(b+1.0))}else a=d*2.0*+HN(b);while(0);return +a}function GN(a){a=+a;var b=0,d=0.0,e=0.0,f=0,g=0.0,i=0,k=0,l=0.0;h[j>>3]=a;b=c[j+4>>2]|0;f=b&2147483647;b=JQ(c[j>>2]|0,b|0,63)|0;do if(f>>>0>1078159481){f=IN(a)|0;k=z&2147483647;if(!(k>>>0>2146435072|(k|0)==2146435072&f>>>0>0))if(!b)if(a>709.782712893384)a=a*8988465674311579538646525.0e283;else{d=.5;i=12}else a=-1.0}else{if(f>>>0<=1071001154)if(f>>>0<1016070144)break;else{g=0.0;b=0;i=15;break}b=(b|0)!=0;if(f>>>0>=1072734898){d=b?-.5:.5;i=12;break}if(b){b=-1;d=a+.6931471803691238;e=-1.9082149292705877e-10;i=13;break}else{b=1;d=a+-.6931471803691238;e=1.9082149292705877e-10;i=13;break}}while(0);if((i|0)==12){b=~~(a*1.4426950408889634+d);e=+(b|0);d=a-e*.6931471803691238;e=e*1.9082149292705877e-10;i=13}if((i|0)==13){g=d-e;a=g;g=d-g-e;i=15}a:do if((i|0)==15){e=a*.5;d=a*e;l=d*(d*(d*(d*(4.008217827329362e-06-d*2.0109921818362437e-07)+-7.93650757867488e-05)+1.5873015872548146e-03)+-.03333333333333313)+1.0;e=3.0-e*l;e=d*((l-e)/(6.0-a*e));if(!b){a=a-(a*e-d);break}d=a*(e-g)-g-d;switch(b|0){case -1:{a=(a-d)*.5+-.5;break a}case 1:if(a<-.25){a=(d-(a+.5))*-2.0;break a}else{a=(a-d)*2.0+1.0;break a}default:{i=KQ(b+1023|0,0,52)|0;k=z;c[j>>2]=i;c[j+4>>2]=k;e=+h[j>>3];if(b>>>0>56){a=a-d+1.0;a=((b|0)==1024?a*2.0*8988465674311579538646525.0e283:e*a)+-1.0;break a}else{f=KQ(1023-b|0,0,52)|0;i=z;k=(b|0)<20;c[j>>2]=f;c[j+4>>2]=i;l=+h[j>>3];a=e*((k?1.0-l:1.0)+(a-(k?d:l+d)));break a}}}}while(0);return +a}function HN(a){a=+a;return +(+L(+(a+-1416.0996898839683))*2247116418577894884661631.0e283*2247116418577894884661631.0e283)}function IN(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function JN(b,c){b=b|0;c=c|0;var d=0,e=0;d=a[b>>0]|0;e=a[c>>0]|0;if(d<<24>>24==0?1:d<<24>>24!=e<<24>>24)b=e;else{do{b=b+1|0;c=c+1|0;d=a[b>>0]|0;e=a[c>>0]|0}while(!(d<<24>>24==0?1:d<<24>>24!=e<<24>>24));b=e}return (d&255)-(b&255)|0}function KN(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0;a:do if(!d)b=0;else{while(1){e=a[b>>0]|0;f=a[c>>0]|0;if(e<<24>>24!=f<<24>>24)break;d=d+-1|0;if(!d){b=0;break a}else{b=b+1|0;c=c+1|0}}b=(e&255)-(f&255)|0}while(0);return b|0}function LN(b,c,d){b=b|0;c=c|0;d=d|0;var e=0,f=0,g=0,h=0;if(!d)e=0;else{h=a[b>>0]|0;e=h&255;g=a[c>>0]|0;f=g&255;a:do if(h<<24>>24)do{d=d+-1|0;if(!(h<<24>>24==g<<24>>24&((d|0)!=0&g<<24>>24!=0)))break a;b=b+1|0;c=c+1|0;h=a[b>>0]|0;e=h&255;g=a[c>>0]|0;f=g&255}while(h<<24>>24!=0);while(0);e=e-f|0}return e|0}function MN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=NN(a,b,f)|0;l=e;return d|0}function NN(a,b,c){a=a|0;b=b|0;c=c|0;return ON(a,2147483647,b,c)|0}function ON(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=33392;j=h+124|0;do{c[h>>2]=c[i>>2];h=h+4|0;i=i+4|0}while((h|0)<(j|0));if((d+-1|0)>>>0>2147483646)if(!d){b=g;d=1;k=4}else{c[8240]=75;d=-1}else k=4;if((k|0)==4){k=-2-b|0;k=d>>>0>k>>>0?k:d;c[m+48>>2]=k;g=m+20|0;c[g>>2]=b;c[m+44>>2]=b;d=b+k|0;b=m+16|0;c[b>>2]=d;c[m+28>>2]=d;d=PN(m,e,f)|0;if(k){m=c[g>>2]|0;a[m+(((m|0)==(c[b>>2]|0))<<31>>31)>>0]=0}}l=n;return d|0}function PN(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+224|0;n=r+120|0;o=r+80|0;p=r;q=r+136|0;f=o;g=f+40|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[n>>2]=c[e>>2];if((QN(0,d,n,p,o)|0)<0)e=-1;else{e=c[b>>2]|0;m=e&32;if((a[b+74>>0]|0)<1)c[b>>2]=e&-33;f=b+48|0;if(!(c[f>>2]|0)){g=b+44|0;h=c[g>>2]|0;c[g>>2]=q;i=b+28|0;c[i>>2]=q;j=b+20|0;c[j>>2]=q;c[f>>2]=80;k=b+16|0;c[k>>2]=q+80;e=QN(b,d,n,p,o)|0;if(h){ig[c[b+36>>2]&63](b,0,0)|0;e=(c[j>>2]|0)==0?-1:e;c[g>>2]=h;c[f>>2]=0;c[k>>2]=0;c[i>>2]=0;c[j>>2]=0}}else e=QN(b,d,n,p,o)|0;q=c[b>>2]|0;c[b>>2]=q|m;e=(q&32|0)==0?e:-1}l=r;return e|0}function QN(d,e,f,g,i){d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+64|0;D=H+16|0;E=H;B=H+24|0;F=H+8|0;G=H+20|0;c[D>>2]=e;x=(d|0)!=0;y=B+40|0;A=y;B=B+39|0;C=F+4|0;k=0;j=0;p=0;a:while(1){do if((j|0)>-1)if((k|0)>(2147483647-j|0)){c[8240]=75;j=-1;break}else{j=k+j|0;break}while(0);k=a[e>>0]|0;if(!(k<<24>>24)){w=87;break}else m=e;b:while(1){switch(k<<24>>24){case 37:{k=m;w=9;break b}case 0:{k=m;break b}default:{}}v=m+1|0;c[D>>2]=v;k=a[v>>0]|0;m=v}c:do if((w|0)==9)while(1){w=0;if((a[m+1>>0]|0)!=37)break c;k=k+1|0;m=m+2|0;c[D>>2]=m;if((a[m>>0]|0)==37)w=9;else break}while(0);k=k-e|0;if(x)SN(d,e,k);if(k|0){e=m;continue}n=m+1|0;k=(a[n>>0]|0)+-48|0;if(k>>>0<10){v=(a[m+2>>0]|0)==36;u=v?k:-1;p=v?1:p;n=v?m+3|0:n}else u=-1;c[D>>2]=n;k=a[n>>0]|0;m=(k<<24>>24)+-32|0;d:do if(m>>>0<32){o=0;q=k;while(1){k=1<<m;if(!(k&75913)){k=q;break d}o=k|o;n=n+1|0;c[D>>2]=n;k=a[n>>0]|0;m=(k<<24>>24)+-32|0;if(m>>>0>=32)break;else q=k}}else o=0;while(0);if(k<<24>>24==42){m=n+1|0;k=(a[m>>0]|0)+-48|0;if(k>>>0<10?(a[n+2>>0]|0)==36:0){c[i+(k<<2)>>2]=10;k=c[g+((a[m>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else{if(p|0){j=-1;break}if(x){p=(c[f>>2]|0)+(4-1)&~(4-1);k=c[p>>2]|0;c[f>>2]=p+4;p=0;n=m}else{k=0;p=0;n=m}}c[D>>2]=n;v=(k|0)<0;k=v?0-k|0:k;o=v?o|8192:o}else{k=TN(D)|0;if((k|0)<0){j=-1;break}n=c[D>>2]|0}do if((a[n>>0]|0)==46){m=n+1|0;if((a[m>>0]|0)!=42){c[D>>2]=m;m=TN(D)|0;n=c[D>>2]|0;break}q=n+2|0;m=(a[q>>0]|0)+-48|0;if(m>>>0<10?(a[n+3>>0]|0)==36:0){c[i+(m<<2)>>2]=10;m=c[g+((a[q>>0]|0)+-48<<3)>>2]|0;n=n+4|0;c[D>>2]=n;break}if(p|0){j=-1;break a}if(x){v=(c[f>>2]|0)+(4-1)&~(4-1);m=c[v>>2]|0;c[f>>2]=v+4}else m=0;c[D>>2]=q;n=q}else m=-1;while(0);t=0;while(1){if(((a[n>>0]|0)+-65|0)>>>0>57){j=-1;break a}v=n+1|0;c[D>>2]=v;q=a[(a[n>>0]|0)+-65+(313824+(t*58|0))>>0]|0;r=q&255;if((r+-1|0)>>>0<8){t=r;n=v}else break}if(!(q<<24>>24)){j=-1;break}s=(u|0)>-1;do if(q<<24>>24==19)if(s){j=-1;break a}else w=49;else{if(s){c[i+(u<<2)>>2]=r;s=g+(u<<3)|0;u=c[s+4>>2]|0;w=E;c[w>>2]=c[s>>2];c[w+4>>2]=u;w=49;break}if(!x){j=0;break a}UN(E,r,f)}while(0);if((w|0)==49?(w=0,!x):0){k=0;e=v;continue}n=a[n>>0]|0;n=(t|0)!=0&(n&15|0)==3?n&-33:n;s=o&-65537;u=(o&8192|0)==0?o:s;e:do switch(n|0){case 110:switch((t&255)<<24>>24){case 0:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 1:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 2:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}case 3:{b[c[E>>2]>>1]=j;k=0;e=v;continue a}case 4:{a[c[E>>2]>>0]=j;k=0;e=v;continue a}case 6:{c[c[E>>2]>>2]=j;k=0;e=v;continue a}case 7:{k=c[E>>2]|0;c[k>>2]=j;c[k+4>>2]=((j|0)<0)<<31>>31;k=0;e=v;continue a}default:{k=0;e=v;continue a}}case 112:{n=120;m=m>>>0>8?m:8;e=u|8;w=61;break}case 88:case 120:{e=u;w=61;break}case 111:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;r=WN(e,n,y)|0;s=A-r|0;o=0;q=314288;m=(u&8|0)==0|(m|0)>(s|0)?m:s+1|0;s=u;w=67;break}case 105:case 100:{n=E;e=c[n>>2]|0;n=c[n+4>>2]|0;if((n|0)<0){e=zQ(0,0,e|0,n|0)|0;n=z;o=E;c[o>>2]=e;c[o+4>>2]=n;o=1;q=314288;w=66;break e}else{o=(u&2049|0)!=0&1;q=(u&2048|0)==0?((u&1|0)==0?314288:314290):314289;w=66;break e}}case 117:{n=E;o=0;q=314288;e=c[n>>2]|0;n=c[n+4>>2]|0;w=66;break}case 99:{a[B>>0]=c[E>>2];e=B;o=0;q=314288;r=y;n=1;m=s;break}case 109:{n=YN(c[8240]|0)|0;w=71;break}case 115:{n=c[E>>2]|0;n=n|0?n:314298;w=71;break}case 67:{c[F>>2]=c[E>>2];c[C>>2]=0;c[E>>2]=F;r=-1;n=F;w=75;break}case 83:{e=c[E>>2]|0;if(!m){_N(d,32,k,0,u);e=0;w=84}else{r=m;n=e;w=75}break}case 65:case 71:case 70:case 69:case 97:case 103:case 102:case 101:{k=aO(d,+h[E>>3],k,m,u,n)|0;e=v;continue a}default:{o=0;q=314288;r=y;n=m;m=u}}while(0);f:do if((w|0)==61){u=E;t=c[u>>2]|0;u=c[u+4>>2]|0;r=VN(t,u,y,n&32)|0;q=(e&8|0)==0|(t|0)==0&(u|0)==0;o=q?0:2;q=q?314288:314288+(n>>4)|0;s=e;e=t;n=u;w=67}else if((w|0)==66){r=XN(e,n,y)|0;s=u;w=67}else if((w|0)==71){w=0;u=ZN(n,0,m)|0;t=(u|0)==0;e=n;o=0;q=314288;r=t?n+m|0:u;n=t?m:u-n|0;m=s}else if((w|0)==75){w=0;q=n;e=0;m=0;while(1){o=c[q>>2]|0;if(!o)break;m=$N(G,o)|0;if((m|0)<0|m>>>0>(r-e|0)>>>0)break;e=m+e|0;if(r>>>0>e>>>0)q=q+4|0;else break}if((m|0)<0){j=-1;break a}_N(d,32,k,e,u);if(!e){e=0;w=84}else{o=0;while(1){m=c[n>>2]|0;if(!m){w=84;break f}m=$N(G,m)|0;o=m+o|0;if((o|0)>(e|0)){w=84;break f}SN(d,G,m);if(o>>>0>=e>>>0){w=84;break}else n=n+4|0}}}while(0);if((w|0)==67){w=0;n=(e|0)!=0|(n|0)!=0;u=(m|0)!=0|n;n=((n^1)&1)+(A-r)|0;e=u?r:y;r=y;n=u?((m|0)>(n|0)?m:n):m;m=(m|0)>-1?s&-65537:s}else if((w|0)==84){w=0;_N(d,32,k,e,u^8192);k=(k|0)>(e|0)?k:e;e=v;continue}t=r-e|0;s=(n|0)<(t|0)?t:n;u=s+o|0;k=(k|0)<(u|0)?u:k;_N(d,32,k,u,m);SN(d,q,o);_N(d,48,k,u,m^65536);_N(d,48,s,t,0);SN(d,e,t);_N(d,32,k,u,m^8192);e=v}g:do if((w|0)==87)if(!d)if(!p)j=0;else{j=1;while(1){e=c[i+(j<<2)>>2]|0;if(!e){k=0;break}UN(g+(j<<3)|0,e,f);j=j+1|0;if((j|0)>=10){j=1;break g}}while(1){e=j+1|0;if(k|0){j=-1;break g}if((e|0)>=10){j=1;break g}j=e;k=c[i+(e<<2)>>2]|0}}while(0);l=H;return j|0}function RN(){return 0}function SN(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))kO(b,d,a)|0;return}function TN(b){b=b|0;var d=0,e=0,f=0;e=c[b>>2]|0;f=(a[e>>0]|0)+-48|0;if(f>>>0<10){d=0;do{d=f+(d*10|0)|0;e=e+1|0;c[b>>2]=e;f=(a[e>>0]|0)+-48|0}while(f>>>0<10)}else d=0;return d|0}function UN(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0.0;a:do if(b>>>0<=20)do switch(b|0){case 9:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;c[a>>2]=b;break a}case 10:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=((b|0)<0)<<31>>31;break a}case 11:{e=(c[d>>2]|0)+(4-1)&~(4-1);b=c[e>>2]|0;c[d>>2]=e+4;e=a;c[e>>2]=b;c[e+4>>2]=0;break a}case 12:{e=(c[d>>2]|0)+(8-1)&~(8-1);b=e;f=c[b>>2]|0;b=c[b+4>>2]|0;c[d>>2]=e+8;e=a;c[e>>2]=f;c[e+4>>2]=b;break a}case 13:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&65535)<<16>>16;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 14:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&65535;c[f+4>>2]=0;break a}case 15:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;e=(e&255)<<24>>24;f=a;c[f>>2]=e;c[f+4>>2]=((e|0)<0)<<31>>31;break a}case 16:{f=(c[d>>2]|0)+(4-1)&~(4-1);e=c[f>>2]|0;c[d>>2]=f+4;f=a;c[f>>2]=e&255;c[f+4>>2]=0;break a}case 17:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}case 18:{f=(c[d>>2]|0)+(8-1)&~(8-1);g=+h[f>>3];c[d>>2]=f+8;h[a>>3]=g;break a}default:break a}while(0);while(0);return}function VN(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;if(!((b|0)==0&(c|0)==0))do{e=e+-1|0;a[e>>0]=d[314336+(b&15)>>0]|0|f;b=JQ(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function WN(b,c,d){b=b|0;c=c|0;d=d|0;if(!((b|0)==0&(c|0)==0))do{d=d+-1|0;a[d>>0]=b&7|48;b=JQ(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function XN(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;if(c>>>0>0|(c|0)==0&b>>>0>4294967295){while(1){e=HQ(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=GQ(b|0,c|0,10,0)|0;if(!(c>>>0>9|(c|0)==9&e>>>0>4294967295))break;else c=z}c=b}else c=b;if(c)while(1){d=d+-1|0;a[d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}return d|0}function YN(a){a=a|0;return fO(a,c[8271]|0)|0}function ZN(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24)break a;b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);b:do if((i|0)==5)if(f){g=d&255;if((a[b>>0]|0)!=g<<24>>24){f=O(h,16843009)|0;c:do if(e>>>0>3)while(1){h=c[b>>2]^f;if((h&-2139062144^-2139062144)&h+-16843009|0)break;b=b+4|0;e=e+-4|0;if(e>>>0<=3){i=11;break c}}else i=11;while(0);if((i|0)==11)if(!e){e=0;break}while(1){if((a[b>>0]|0)==g<<24>>24)break b;b=b+1|0;e=e+-1|0;if(!e){e=0;break}}}}else e=0;while(0);return (e|0?b:0)|0}function _N(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+256|0;f=g;if((c|0)>(d|0)&(e&73728|0)==0){c=c-d|0;RQ(f|0,b|0,(c>>>0<256?c:256)|0)|0;if(c>>>0>255){d=c;do{SN(a,f,256);d=d+-256|0}while(d>>>0>255);c=c&255}SN(a,f,c)}l=g;return}function $N(a,b){a=a|0;b=b|0;if(!a)a=0;else a=eO(a,b)|0;return a|0}function aO(b,e,f,g,h,i){b=b|0;e=+e;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+560|0;m=H+8|0;u=H;G=H+524|0;F=G;n=H+512|0;c[u>>2]=0;E=n+12|0;bO(e)|0;if((z|0)<0){e=-e;C=1;B=314305}else{C=(h&2049|0)!=0&1;B=(h&2048|0)==0?((h&1|0)==0?314306:314311):314308}bO(e)|0;D=z&2146435072;do if(D>>>0<2146435072|(D|0)==2146435072&0<0){r=+cO(e,u)*2.0;j=r!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){s=i&32;q=(s|0)==0?B:B+9|0;p=C|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){e=8.0;do{j=j+-1|0;e=e*16.0}while((j|0)!=0);if((a[q>>0]|0)==45){e=-(e+(-r-e));break}else{e=r+e-e;break}}else e=r;while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=XN(j,((j|0)<0)<<31>>31,E)|0;if((j|0)==(E|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;o=j+-2|0;a[o>>0]=i+15;n=(g|0)<1;m=(h&8|0)==0;j=G;do{D=~~e;k=j+1|0;a[j>>0]=d[314336+D>>0]|s;e=(e-+(D|0))*16.0;if((k-F|0)==1?!(m&(n&e==0.0)):0){a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);D=j-F|0;F=E-o|0;E=(g|0)!=0&(D+-2|0)<(g|0)?g+2|0:D;j=F+p+E|0;_N(b,32,f,j,h);SN(b,q,p);_N(b,48,f,j,h^65536);SN(b,G,D);_N(b,48,E-D|0,0,0);SN(b,o,F);_N(b,32,f,j,h^8192);break}k=(g|0)<0?6:g;if(j){j=(c[u>>2]|0)+-28|0;c[u>>2]=j;e=r*268435456.0}else{e=r;j=c[u>>2]|0}D=(j|0)<0?m:m+288|0;m=D;do{y=~~e>>>0;c[m>>2]=y;m=m+4|0;e=(e-+(y>>>0))*1.0e9}while(e!=0.0);if((j|0)>0){n=D;p=m;while(1){o=(j|0)<29?j:29;j=p+-4|0;if(j>>>0>=n>>>0){m=0;do{x=KQ(c[j>>2]|0,0,o|0)|0;x=yQ(x|0,z|0,m|0,0)|0;y=z;v=HQ(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=GQ(x|0,y|0,1e9,0)|0;j=j+-4|0}while(j>>>0>=n>>>0);if(m){n=n+-4|0;c[n>>2]=m}}m=p;while(1){if(m>>>0<=n>>>0)break;j=m+-4|0;if(!(c[j>>2]|0))m=j;else break}j=(c[u>>2]|0)-o|0;c[u>>2]=j;if((j|0)>0)p=m;else break}}else n=D;if((j|0)<0){g=((k+25|0)/9|0)+1|0;t=(w|0)==102;do{s=0-j|0;s=(s|0)<9?s:9;if(n>>>0<m>>>0){o=(1<<s)+-1|0;p=1e9>>>s;q=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+q;q=O(y&o,p)|0;j=j+4|0}while(j>>>0<m>>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!q){n=j;j=m}else{c[m>>2]=q;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?D:n;m=(j-m>>2|0)>(g|0)?m+(g<<2)|0:j;j=(c[u>>2]|0)+s|0;c[u>>2]=j}while((j|0)<0);j=n;g=m}else{j=n;g=m}y=D;if(j>>>0<g>>>0){m=(y-j>>2)*9|0;o=c[j>>2]|0;if(o>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(o>>>0>=n>>>0)}}else m=0;t=(w|0)==103;v=(k|0)!=0;n=k-((w|0)!=102?m:0)+((v&t)<<31>>31)|0;if((n|0)<(((g-y>>2)*9|0)+-9|0)){n=n+9216|0;s=D+4+(((n|0)/9|0)+-1024<<2)|0;n=((n|0)%9|0)+1|0;if((n|0)<9){o=10;do{o=o*10|0;n=n+1|0}while((n|0)!=9)}else o=10;p=c[s>>2]|0;q=(p>>>0)%(o>>>0)|0;n=(s+4|0)==(g|0);if(!(n&(q|0)==0)){r=(((p>>>0)/(o>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(o|0)/2|0;e=q>>>0<x>>>0?.5:n&(q|0)==(x|0)?1.0:1.5;if(C){x=(a[B>>0]|0)==45;e=x?-e:e;r=x?-r:r}n=p-q|0;c[s>>2]=n;if(r+e!=r){x=n+o|0;c[s>>2]=x;if(x>>>0>999999999){m=s;while(1){n=m+-4|0;c[m>>2]=0;if(n>>>0<j>>>0){j=j+-4|0;c[j>>2]=0}x=(c[n>>2]|0)+1|0;c[n>>2]=x;if(x>>>0>999999999)m=n;else break}}else n=s;m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){o=10;do{o=o*10|0;m=m+1|0}while(p>>>0>=o>>>0)}}else n=s}else n=s;n=n+4|0;n=g>>>0>n>>>0?n:g;x=j}else{n=g;x=j}w=n;while(1){if(w>>>0<=x>>>0){u=0;break}j=w+-4|0;if(!(c[j>>2]|0))w=j;else{u=1;break}}g=0-m|0;do if(t){j=((v^1)&1)+k|0;if((j|0)>(m|0)&(m|0)>-5){o=i+-1|0;k=j+-1-m|0}else{o=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u?(A=c[w+-4>>2]|0,(A|0)!=0):0)if(!((A>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((A>>>0)%(j>>>0)|0|0))}else n=0;else n=9;j=((w-y>>2)*9|0)+-9|0;if((o|32|0)==102){s=j-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}else{s=j+m-n|0;s=(s|0)>0?s:0;k=(k|0)<(s|0)?k:s;s=0;break}}else s=j}else{o=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;q=(o|32|0)==102;if(q){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=XN(j,((j|0)<0)<<31>>31,E)|0;n=E;if((n-j|0)<2)do{j=j+-1|0;a[j>>0]=48}while((n-j|0)<2);a[j+-1>>0]=(m>>31&2)+43;j=j+-2|0;a[j>>0]=o;v=j;j=n-j|0}j=C+1+k+p+j|0;_N(b,32,f,j,h);SN(b,B,C);_N(b,48,f,j,h^65536);if(q){o=x>>>0>D>>>0?D:x;s=G+9|0;p=s;q=G+8|0;n=o;do{m=XN(c[n>>2]|0,0,s)|0;if((n|0)==(o|0)){if((m|0)==(s|0)){a[q>>0]=48;m=q}}else if(m>>>0>G>>>0){RQ(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}SN(b,m,p-m|0);n=n+4|0}while(n>>>0<=D>>>0);if(t|0)SN(b,314352,1);if(n>>>0<w>>>0&(k|0)>0)while(1){m=XN(c[n>>2]|0,0,s)|0;if(m>>>0>G>>>0){RQ(G|0,48,m-F|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}SN(b,m,(k|0)<9?k:9);n=n+4|0;m=k+-9|0;if(!(n>>>0<w>>>0&(k|0)>9)){k=m;break}else k=m}_N(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=G+9|0;s=(s|0)==0;g=u;p=0-F|0;q=G+8|0;o=x;do{m=XN(c[o>>2]|0,0,u)|0;if((m|0)==(u|0)){a[q>>0]=48;m=q}do if((o|0)==(x|0)){n=m+1|0;SN(b,m,1);if(s&(k|0)<1){m=n;break}SN(b,314352,1);m=n}else{if(m>>>0<=G>>>0)break;RQ(G|0,48,m+p|0)|0;do m=m+-1|0;while(m>>>0>G>>>0)}while(0);F=g-m|0;SN(b,m,(k|0)>(F|0)?F:k);k=k-F|0;o=o+4|0}while(o>>>0<t>>>0&(k|0)>-1)}_N(b,48,k+18|0,18,0);SN(b,v,E-v|0)}_N(b,32,f,j,h^8192)}else{G=(i&32|0)!=0;j=C+3|0;_N(b,32,f,j,h&-65537);SN(b,B,C);SN(b,e!=e|0.0!=0.0?(G?316270:314332):G?314324:314328,3);_N(b,32,f,j,h^8192)}while(0);l=H;return ((j|0)<(f|0)?f:j)|0}function bO(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function cO(a,b){a=+a;b=b|0;return +(+dO(a,b))}function dO(a,b){a=+a;b=b|0;var d=0,e=0,f=0;h[j>>3]=a;d=c[j>>2]|0;e=c[j+4>>2]|0;f=JQ(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+dO(a*18446744073709551616.0,b);d=(c[b>>2]|0)+-64|0}else d=0;c[b>>2]=d;break}case 2047:break;default:{c[b>>2]=(f&2047)+-1022;c[j>>2]=d;c[j+4>>2]=e&-2146435073|1071644672;a=+h[j>>3]}}return +a}function eO(b,d){b=b|0;d=d|0;do if(b){if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[8271]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[8240]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[8240]=84;b=-1;break}}else b=1;while(0);return b|0}function fO(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[314354+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=314442;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=314442;else{f=314442;b=5}if((b|0)==5)while(1){do{b=f;f=f+1|0}while((a[b>>0]|0)!=0);g=g+-1|0;if(!g)break;else b=5}return gO(f,c[e+20>>2]|0)|0}function gO(a,b){a=a|0;b=b|0;return hO(a,b)|0}function hO(a,b){a=a|0;b=b|0;if(!b)b=0;else b=iO(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function iO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=(c[b>>2]|0)+1794895138|0;h=jO(c[b+8>>2]|0,o)|0;f=jO(c[b+12>>2]|0,o)|0;g=jO(c[b+16>>2]|0,o)|0;a:do if((h>>>0<d>>>2>>>0?(n=d-(h<<2)|0,f>>>0<n>>>0&g>>>0<n>>>0):0)?((g|f)&3|0)==0:0){n=f>>>2;m=g>>>2;l=0;while(1){j=h>>>1;k=l+j|0;i=k<<1;g=i+n|0;f=jO(c[b+(g<<2)>>2]|0,o)|0;g=jO(c[b+(g+1<<2)>>2]|0,o)|0;if(!(g>>>0<d>>>0&f>>>0<(d-g|0)>>>0)){f=0;break a}if(a[b+(g+f)>>0]|0){f=0;break a}f=JN(e,b+g|0)|0;if(!f)break;f=(f|0)<0;if((h|0)==1){f=0;break a}else{l=f?l:k;h=f?j:h-j|0}}f=i+m|0;g=jO(c[b+(f<<2)>>2]|0,o)|0;f=jO(c[b+(f+1<<2)>>2]|0,o)|0;if(f>>>0<d>>>0&g>>>0<(d-f|0)>>>0)f=(a[b+(f+g)>>0]|0)==0?b+f|0:0;else f=0}else f=0;while(0);return f|0}function jO(a,b){a=a|0;b=b|0;var c=0;c=MQ(a|0)|0;return ((b|0)==0?a:c)|0}function kO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(lO(e)|0)){g=c[f>>2]|0;h=5}else f=0;else h=5;a:do if((h|0)==5){j=e+20|0;i=c[j>>2]|0;f=i;if((g-i|0)>>>0<d>>>0){f=ig[c[e+36>>2]&63](e,b,d)|0;break}b:do if((a[e+75>>0]|0)>-1){i=d;while(1){if(!i){h=0;g=b;break b}g=i+-1|0;if((a[b+g>>0]|0)==10)break;else i=g}f=ig[c[e+36>>2]&63](e,b,i)|0;if(f>>>0<i>>>0)break a;h=i;g=b+i|0;d=d-i|0;f=c[j>>2]|0}else{h=0;g=b}while(0);PQ(f|0,g|0,d|0)|0;c[j>>2]=(c[j>>2]|0)+d;f=h+d|0}while(0);return f|0}function lO(b){b=b|0;var d=0,e=0;d=b+74|0;e=a[d>>0]|0;a[d>>0]=e+255|e;d=c[b>>2]|0;if(!(d&8)){c[b+8>>2]=0;c[b+4>>2]=0;e=c[b+44>>2]|0;c[b+28>>2]=e;c[b+20>>2]=e;c[b+16>>2]=e+(c[b+48>>2]|0);b=0}else{c[b>>2]=d|32;b=-1}return b|0}function mO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=a+20|0;f=c[e>>2]|0;a=(c[a+16>>2]|0)-f|0;a=a>>>0>d>>>0?d:a;PQ(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function nO(a){a=a|0;return ((a+-48|0)>>>0<10|(oO(a)|0)!=0)&1|0}function oO(a){a=a|0;return ((a|32)+-97|0)>>>0<26|0}function pO(a){a=a|0;return (a>>>0<32|(a|0)==127)&1|0}function qO(a){a=a|0;return (a+-33|0)>>>0<94|0}function rO(a){a=a|0;return (a+-32|0)>>>0<95|0}function sO(a){a=a|0;if(!(qO(a)|0))a=0;else a=(nO(a)|0)==0;return a&1|0}function tO(a){a=a|0;return ((a+-48|0)>>>0<10|((a|32)+-97|0)>>>0<6)&1|0}function uO(a,b){a=a|0;b=b|0;return vO(a,b)|0}function vO(a,b){a=a|0;b=b|0;return JN(a,b)|0}function wO(a){a=a|0;xO(c[a>>2]|0);fN(a);return}function xO(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=oN(a)|0;a=Ya(6,d|0)|0;mN((a|0)==-4?0:a)|0;l=b;return}function yO(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+48|0;f=g+40|0;e=g+8|0;d=g;c[d>>2]=a;c[d+4>>2]=b;d=Qa(197,d|0)|0;if((d|0)==-9?(c[e>>2]=a,c[e+4>>2]=1,(Sa(221,e|0)|0)>=0):0){zO(e,a);c[f>>2]=e;c[f+4>>2]=b;mN(Pa(195,f|0)|0)|0}else mN(d)|0;l=g;return}function zO(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;d=b;e=316246;f=d+15|0;do{a[d>>0]=a[e>>0]|0;d=d+1|0;e=e+1|0}while((d|0)<(f|0));if(!c){a[b+14>>0]=48;a[b+15>>0]=0}else{e=c;d=14;while(1){d=d+1|0;if(e>>>0<10)break;else e=(e>>>0)/10|0}a[b+d>>0]=0;while(1){d=d+-1|0;a[b+d>>0]=(c>>>0)%10|0|48;if(c>>>0<10)break;else c=(c>>>0)/10|0}}return}function AO(){var a=0,b=0,d=0,e=0;e=l;l=l+16|0;d=e;b=BO()|0;do if((b|0)<0)a=0;else{a=eN(2072)|0;if(!a){c[d>>2]=b;Ya(6,d|0)|0;a=0;break}if(c[a+-4>>2]&3|0)RQ(a|0,0,2072)|0;c[a>>2]=b}while(0);l=e;return a|0}function BO(){var a=0,b=0,d=0;d=l;l=l+32|0;b=d+16|0;a=d;c[a>>2]=328793;c[a+4>>2]=622592;c[a+8>>2]=0;a=Wa(5,a|0)|0;if((a|0)>=0){c[b>>2]=a;c[b+4>>2]=2;c[b+8>>2]=1;Sa(221,b|0)|0}b=mN(a)|0;l=d;return b|0}function CO(a){a=a|0;var b=0,d=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;d=i;g=a+8|0;b=c[g>>2]|0;f=a+12|0;a:do if((b|0)<(c[f>>2]|0))h=6;else{c[d>>2]=c[a>>2];c[d+4>>2]=a+24;c[d+8>>2]=2048;b=Ra(220,d|0)|0;if((b|0)>=1){c[f>>2]=b;c[g>>2]=0;b=0;h=6;break}switch(b|0){case 0:case -2:{b=0;break a}default:{}}c[8240]=0-b;b=0}while(0);if((h|0)==6){h=a+24+b|0;c[g>>2]=(e[h+8>>1]|0)+b;c[a+4>>2]=c[h+4>>2];b=h}l=i;return b|0}function DO(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+208|0;n=p+8|0;o=p;h=O(d,b)|0;m=o;c[m>>2]=1;c[m+4>>2]=0;a:do if(h|0){c[n+4>>2]=d;c[n>>2]=d;f=2;b=d;g=d;while(1){b=b+d+g|0;c[n+(f<<2)>>2]=b;if(b>>>0<h>>>0){m=g;f=f+1|0;g=b;b=m}else break}m=0-d|0;i=a+h+m|0;if(i>>>0>a>>>0){j=i;k=o+4|0;f=1;h=a;b=1;do{do if((b&3|0)!=3){g=f+-1|0;if((c[n+(g<<2)>>2]|0)>>>0<(j-h|0)>>>0)EO(h,d,e,f,n);else GO(h,d,e,b,c[k>>2]|0,f,0,n);if((f|0)==1){HO(o,1);f=0;break}else{HO(o,g);f=1;break}}else{EO(h,d,e,f,n);FO(o,2);f=f+2|0}while(0);b=c[o>>2]|1;c[o>>2]=b;h=h+d|0}while(h>>>0<i>>>0);j=k;g=c[k>>2]|0}else{f=1;h=a;j=o+4|0;g=0;b=1}GO(h,d,e,b,g,f,0,n);i=o+4|0;g=h;while(1){if((f|0)==1&(b|0)==1){if(!(c[i>>2]|0))break a}else if((f|0)>=2){HO(o,2);a=f+-2|0;c[o>>2]=c[o>>2]^7;FO(o,1);GO(g+(0-(c[n+(a<<2)>>2]|0))+m|0,d,e,c[o>>2]|0,c[j>>2]|0,f+-1|0,1,n);HO(o,1);b=c[o>>2]|1;c[o>>2]=b;k=g+m|0;GO(k,d,e,b,c[j>>2]|0,a,1,n);g=k;f=a;continue}b=IO(o)|0;FO(o,b);g=g+m|0;f=b+f|0;b=c[o>>2]|0}}while(0);l=p;return}function EO(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,m=0,n=0;n=l;l=l+240|0;m=n;c[m>>2]=a;a:do if((e|0)>1){k=0-b|0;g=a;j=e;e=1;while(1){h=g+k|0;i=j+-2|0;g=h+(0-(c[f+(i<<2)>>2]|0))|0;if((hg[d&63](a,g)|0)>-1?(hg[d&63](a,h)|0)>-1:0)break a;a=e+1|0;e=m+(e<<2)|0;if((hg[d&63](g,h)|0)>-1){c[e>>2]=g;e=j+-1|0}else{c[e>>2]=h;g=h;e=i}if((e|0)<=1){e=a;break a}j=e;e=a;a=c[m>>2]|0}}else e=1;while(0);KO(b,m,e);l=n;return}function FO(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[f>>2]|0;c[a>>2]=e;c[f>>2]=0;b=b+-32|0;d=0}else{d=c[f>>2]|0;e=c[a>>2]|0}c[a>>2]=d<<32-b|e>>>b;c[f>>2]=d>>>b;return}function GO(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+240|0;n=q+232|0;p=q;c[n>>2]=e;o=n+4|0;c[o>>2]=f;c[p>>2]=a;a:do if((e|0)!=1|(f|0)!=0?(m=0-b|0,j=a+(0-(c[i+(g<<2)>>2]|0))|0,(hg[d&63](j,a)|0)>=1):0){k=1;e=(h|0)==0;while(1){if(e&(g|0)>1){f=a+m|0;e=c[i+(g+-2<<2)>>2]|0;if((hg[d&63](f,j)|0)>-1){e=k;f=10;break a}if((hg[d&63](f+(0-e)|0,j)|0)>-1){e=k;f=10;break a}}a=k+1|0;c[p+(k<<2)>>2]=j;k=IO(n)|0;FO(n,k);g=k+g|0;if(!((c[n>>2]|0)!=1|(c[o>>2]|0)!=0)){e=a;a=j;f=10;break a}f=j+(0-(c[i+(g<<2)>>2]|0))|0;if((hg[d&63](f,c[p>>2]|0)|0)<1){e=a;a=j;f=10;break}else{h=j;k=a;e=1;j=f;a=h}}}else f=9;while(0);if((f|0)==9?(h|0)==0:0){e=1;f=10}if((f|0)==10){KO(b,p,e);EO(a,b,d,g,i)}l=q;return}function HO(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=a+4|0;if(b>>>0>31){e=c[a>>2]|0;c[f>>2]=e;c[a>>2]=0;b=b+-32|0;d=0}else{d=c[a>>2]|0;e=c[f>>2]|0}c[f>>2]=d>>>(32-b|0)|e<<b;c[a>>2]=d<<b;return}function IO(a){a=a|0;var b=0;b=JO((c[a>>2]|0)+-1|0)|0;if(!b){b=JO(c[a+4>>2]|0)|0;return ((b|0)==0?0:b+32|0)|0}else return b|0;return 0}function JO(a){a=a|0;var b=0;if(a)if(!(a&1)){b=a;a=0;do{a=a+1|0;b=b>>>1}while(!(b&1|0))}else a=0;else a=32;return a|0}function KO(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+256|0;e=h;a:do if((d|0)>=2?(g=b+(d<<2)|0,c[g>>2]=e,a|0):0)while(1){f=a>>>0<256?a:256;PQ(e|0,c[b>>2]|0,f|0)|0;e=0;do{i=b+(e<<2)|0;e=e+1|0;PQ(c[i>>2]|0,c[b+(e<<2)>>2]|0,f|0)|0;c[i>>2]=(c[i>>2]|0)+f}while((e|0)!=(d|0));a=a-f|0;if(!a)break a;e=c[g>>2]|0}while(0);l=h;return}function LO(b,e,f){b=b|0;e=e|0;f=f|0;var g=0.0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;switch(e|0){case 0:{l=-149;m=24;j=4;break}case 1:{l=-1074;m=53;j=4;break}case 2:{l=-1074;m=53;j=4;break}default:g=0.0}a:do if((j|0)==4){o=b+4|0;n=b+100|0;do{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=wN(b)|0}while((xN(e)|0)!=0);b:do switch(e|0){case 43:case 45:{i=1-(((e|0)==45&1)<<1)|0;e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;h=d[e>>0]|0;break b}else{h=wN(b)|0;break b}}default:{h=e;i=1}}while(0);e=0;do{if((h|32|0)!=(a[316261+e>>0]|0))break;do if(e>>>0<7){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=wN(b)|0;break}}while(0);e=e+1|0}while(e>>>0<8);c:do switch(e|0){case 8:break;case 3:{j=23;break}default:{k=(f|0)!=0;if(k&e>>>0>3)if((e|0)==8)break c;else{j=23;break c}d:do if(!e){e=0;do{if((h|32|0)!=(a[316270+e>>0]|0))break d;do if(e>>>0<2){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0;break}else{h=wN(b)|0;break}}while(0);e=e+1|0}while(e>>>0<3)}while(0);switch(e|0){case 3:{e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=wN(b)|0;if((e|0)==40)e=1;else{if(!(c[n>>2]|0)){g=s;break a}c[o>>2]=(c[o>>2]|0)+-1;g=s;break a}while(1){h=c[o>>2]|0;if(h>>>0<(c[n>>2]|0)>>>0){c[o>>2]=h+1;h=d[h>>0]|0}else h=wN(b)|0;if(!((h+-48|0)>>>0<10|(h+-65|0)>>>0<26)?!((h|0)==95|(h+-97|0)>>>0<26):0)break;e=e+1|0}if((h|0)==41){g=s;break a}h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!k){c[8240]=22;uN(b,0);g=0.0;break a}if(!e){g=s;break a}while(1){e=e+-1|0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if(!e){g=s;break a}}}case 0:{if((h|0)==48){e=c[o>>2]|0;if(e>>>0<(c[n>>2]|0)>>>0){c[o>>2]=e+1;e=d[e>>0]|0}else e=wN(b)|0;if((e|32|0)==120){g=+MO(b,m,l,i,f);break a}if(!(c[n>>2]|0))e=48;else{c[o>>2]=(c[o>>2]|0)+-1;e=48}}else e=h;g=+NO(b,e,m,l,i,f);break a}default:{if(c[n>>2]|0)c[o>>2]=(c[o>>2]|0)+-1;c[8240]=22;uN(b,0);g=0.0;break a}}}}while(0);if((j|0)==23){h=(c[n>>2]|0)==0;if(!h)c[o>>2]=(c[o>>2]|0)+-1;if((f|0)!=0&e>>>0>3)do{if(!h)c[o>>2]=(c[o>>2]|0)+-1;e=e+-1|0}while(e>>>0>3)}g=+(i|0)*t}while(0);return +g}function MO(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0.0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=a+4|0;i=c[y>>2]|0;x=a+100|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=0}else{j=wN(a)|0;l=0}a:while(1){switch(j|0){case 46:{n=8;break a}case 48:break;default:{s=0;t=0;o=1.0;h=0.0;i=0;m=j;r=l;v=0;u=0;l=0;j=0;break a}}i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0;l=1;continue}else{j=wN(a)|0;l=1;continue}}if((n|0)==8){i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;j=d[i>>0]|0}else j=wN(a)|0;if((j|0)==48){l=0;j=0;do{i=c[y>>2]|0;if(i>>>0<(c[x>>2]|0)>>>0){c[y>>2]=i+1;m=d[i>>0]|0}else m=wN(a)|0;l=yQ(l|0,j|0,-1,-1)|0;j=z}while((m|0)==48);s=1;t=0;o=1.0;h=0.0;i=0;r=1;v=0;u=0}else{s=1;t=0;o=1.0;h=0.0;i=0;m=j;r=l;v=0;u=0;l=0;j=0}}while(1){n=m+-48|0;p=(m|0)==46;if(n>>>0>=10?!(p|((m|32)+-97|0)>>>0<6):0)break;if(p)if(!s){s=1;n=t;k=o;l=u;j=v;q=u;p=v}else{m=46;break}else{m=(m|0)>57?(m|32)+-87|0:n;do if(!((v|0)<0|(v|0)==0&u>>>0<8))if((v|0)<0|(v|0)==0&u>>>0<14){o=o*.0625;n=t;k=o;h=h+o*+(m|0);break}else{r=(t|0)!=0|(m|0)==0;n=r?t:1;k=o;h=r?h:h+o*.5;break}else{n=t;k=o;i=m+(i<<4)|0}while(0);q=yQ(u|0,v|0,1,0)|0;r=1;p=z}m=c[y>>2]|0;if(m>>>0<(c[x>>2]|0)>>>0){c[y>>2]=m+1;t=n;o=k;m=d[m>>0]|0;v=p;u=q;continue}else{t=n;o=k;m=wN(a)|0;v=p;u=q;continue}}do if(!r){i=(c[x>>2]|0)!=0;if(i)c[y>>2]=(c[y>>2]|0)+-1;if(g){if(i?(w=c[y>>2]|0,c[y>>2]=w+-1,s|0):0)c[y>>2]=w+-2}else uN(a,0);h=+(f|0)*0.0}else{p=(s|0)==0;q=p?u:l;p=p?v:j;if((v|0)<0|(v|0)==0&u>>>0<8){l=u;j=v;do{i=i<<4;l=yQ(l|0,j|0,1,0)|0;j=z}while((j|0)<0|(j|0)==0&l>>>0<8);n=i}else n=i;if((m|32|0)==112){j=OO(a,g)|0;i=z;if((j|0)==0&(i|0)==-2147483648){if(!g){uN(a,0);h=0.0;break}if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}}}else if(!(c[x>>2]|0)){j=0;i=0}else{c[y>>2]=(c[y>>2]|0)+-1;j=0;i=0}l=KQ(q|0,p|0,2)|0;l=yQ(l|0,z|0,-32,-1)|0;l=yQ(l|0,z|0,j|0,i|0)|0;i=z;if(!n){h=+(f|0)*0.0;break}y=0-e|0;g=((y|0)<0)<<31>>31;if((i|0)>(g|0)|(i|0)==(g|0)&l>>>0>y>>>0){c[8240]=34;h=+(f|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}y=e+-106|0;g=((y|0)<0)<<31>>31;if((i|0)<(g|0)|(i|0)==(g|0)&l>>>0<y>>>0){c[8240]=34;h=+(f|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if((n|0)>-1){j=n;do{y=!(h>=.5);j=j<<1|(y^1)&1;h=h+(y?h:h+-1.0);l=yQ(l|0,i|0,-1,-1)|0;i=z}while((j|0)>-1);o=h;m=j}else{o=h;m=n}y=((b|0)<0)<<31>>31;e=zQ(32,0,e|0,((e|0)<0)<<31>>31|0)|0;i=yQ(e|0,z|0,l|0,i|0)|0;e=z;if((y|0)>(e|0)|(y|0)==(e|0)&b>>>0>i>>>0)if((i|0)>0)n=58;else{j=0;i=84;n=60}else{i=b;n=58}if((n|0)==58)if((i|0)<53){j=i;i=84-i|0;n=60}else{k=0.0;h=+(f|0)}if((n|0)==60){h=+(f|0);k=+QO(+PO(1.0,i),h);i=j}f=(m&1|0)==0&(o!=0.0&(i|0)<32);h=h*(f?0.0:o)+(k+h*+(((f&1)+m|0)>>>0))-k;if(!(h!=0.0))c[8240]=34;h=+SO(h,l)}while(0);return +h}function NO(a,b,e,f,g,h){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0.0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,A=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+512|0;G=J;H=f+e|0;I=0-H|0;D=a+4|0;E=a+100|0;k=0;a:while(1){switch(b|0){case 46:{A=6;break a}case 48:break;default:{v=0;p=k;q=0;o=0;break a}}b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0;k=1;continue}else{b=wN(a)|0;k=1;continue}}if((A|0)==6){b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=wN(a)|0;if((b|0)==48){k=0;b=0;while(1){k=yQ(k|0,b|0,-1,-1)|0;o=z;b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=wN(a)|0;if((b|0)==48)b=o;else{v=1;p=1;q=k;break}}}else{v=1;p=k;q=0;o=0}}c[G>>2]=0;n=b+-48|0;m=(b|0)==46;b:do if(m|n>>>0<10){A=G+496|0;w=0;k=0;u=0;x=v;C=p;v=m;y=n;p=0;m=0;c:while(1){do if(v)if(!x){x=1;n=C;q=p;o=m}else break c;else{p=yQ(p|0,m|0,1,0)|0;m=z;v=(b|0)!=48;if((k|0)>=125){if(!v){n=C;break}c[A>>2]=c[A>>2]|1;n=C;break}n=G+(k<<2)|0;if(!w)b=y;else b=b+-48+((c[n>>2]|0)*10|0)|0;c[n>>2]=b;w=w+1|0;n=(w|0)==9;w=n?0:w;k=(n&1)+k|0;u=v?p:u;n=1}while(0);b=c[D>>2]|0;if(b>>>0<(c[E>>2]|0)>>>0){c[D>>2]=b+1;b=d[b>>0]|0}else b=wN(a)|0;y=b+-48|0;v=(b|0)==46;if(!(v|y>>>0<10)){v=x;A=29;break b}else C=n}b=w;n=(C|0)!=0;A=37}else{w=0;k=0;u=0;n=p;p=0;m=0;A=29}while(0);do if((A|0)==29){C=(v|0)==0;q=C?p:q;o=C?m:o;n=(n|0)!=0;if(!(n&(b|32|0)==101))if((b|0)>-1){b=w;A=37;break}else{b=w;A=39;break}n=OO(a,h)|0;b=z;if((n|0)==0&(b|0)==-2147483648){if(!h){uN(a,0);i=0.0;break}if(!(c[E>>2]|0)){n=0;b=0}else{c[D>>2]=(c[D>>2]|0)+-1;n=0;b=0}}y=yQ(n|0,b|0,q|0,o|0)|0;b=w;o=z;A=41}while(0);if((A|0)==37)if(c[E>>2]|0){c[D>>2]=(c[D>>2]|0)+-1;if(n){y=q;A=41}else A=40}else A=39;if((A|0)==39)if(n){y=q;A=41}else A=40;do if((A|0)==40){c[8240]=22;uN(a,0);i=0.0}else if((A|0)==41){n=c[G>>2]|0;if(!n){i=+(g|0)*0.0;break}if(((m|0)<0|(m|0)==0&p>>>0<10)&((y|0)==(p|0)&(o|0)==(m|0))?(e|0)>30|(n>>>e|0)==0:0){i=+(g|0)*+(n>>>0);break}a=(f|0)/-2|0;E=((a|0)<0)<<31>>31;if((o|0)>(E|0)|(o|0)==(E|0)&y>>>0>a>>>0){c[8240]=34;i=+(g|0)*1797693134862315708145274.0e284*1797693134862315708145274.0e284;break}a=f+-106|0;E=((a|0)<0)<<31>>31;if((o|0)<(E|0)|(o|0)==(E|0)&y>>>0<a>>>0){c[8240]=34;i=+(g|0)*2.2250738585072014e-308*2.2250738585072014e-308;break}if(b){if((b|0)<9){n=G+(k<<2)|0;m=c[n>>2]|0;do{m=m*10|0;b=b+1|0}while((b|0)!=9);c[n>>2]=m}k=k+1|0}if((u|0)<9?(u|0)<=(y|0)&(y|0)<18:0){b=c[G>>2]|0;if((y|0)==9){i=+(g|0)*+(b>>>0);break}if((y|0)<9){i=+(g|0)*+(b>>>0)/+(c[33516+(8-y<<2)>>2]|0);break}a=e+27+(O(y,-3)|0)|0;if((a|0)>30|(b>>>a|0)==0){i=+(g|0)*+(b>>>0)*+(c[33516+(y+-10<<2)>>2]|0);break}}b=(y|0)%9|0;if(!b){b=0;n=0}else{u=(y|0)>-1?b:b+9|0;p=c[33516+(8-u<<2)>>2]|0;if(k){q=1e9/(p|0)|0;n=0;o=0;m=y;b=0;do{D=G+(b<<2)|0;E=c[D>>2]|0;a=((E>>>0)/(p>>>0)|0)+n|0;c[D>>2]=a;n=O(q,(E>>>0)%(p>>>0)|0)|0;a=(b|0)==(o|0)&(a|0)==0;m=a?m+-9|0:m;o=a?o+1&127:o;b=b+1|0}while((b|0)!=(k|0));if(!n)n=o;else{c[G+(k<<2)>>2]=n;n=o;k=k+1|0}}else{n=0;k=0;m=y}b=0;y=9-u+m|0}d:while(1){u=(y|0)<18;v=(y|0)==18;w=G+(n<<2)|0;while(1){if(!u){if(!v){m=y;break d}if((c[w>>2]|0)>>>0>=9007199){m=18;break d}}m=0;x=k;k=k+127|0;while(1){o=k&127;p=G+(o<<2)|0;k=KQ(c[p>>2]|0,0,29)|0;k=yQ(k|0,z|0,m|0,0)|0;m=z;if(m>>>0>0|(m|0)==0&k>>>0>1e9){q=GQ(k|0,m|0,1e9,0)|0;k=HQ(k|0,m|0,1e9,0)|0}else q=0;c[p>>2]=k;a=(o|0)==(n|0);x=(k|0)==0&(((o|0)!=(x+127&127|0)|a)^1)?o:x;if(a)break;else{m=q;k=o+-1|0}}b=b+-29|0;if(q|0)break;else k=x}n=n+127&127;k=x+127&127;m=G+((x+126&127)<<2)|0;if((n|0)==(x|0))c[m>>2]=c[m>>2]|c[G+(k<<2)>>2];else k=x;c[G+(n<<2)>>2]=q;y=y+9|0}e:while(1){w=k+1&127;x=G+((k+127&127)<<2)|0;while(1){q=(m|0)==18;v=(m|0)>27?9:1;y=n;while(1){n=0;while(1){o=n+y&127;if((o|0)==(k|0)){F=2;A=88;break}o=c[G+(o<<2)>>2]|0;p=c[33548+(n<<2)>>2]|0;if(o>>>0<p>>>0){F=2;A=88;break}if(o>>>0>p>>>0)break;n=n+1|0;if((n|0)>=2){F=n;A=88;break}}if((A|0)==88?(A=0,q&(F|0)==2):0){i=0.0;o=0;break e}b=v+b|0;if((y|0)==(k|0))y=k;else break}q=(1<<v)+-1|0;u=1e9>>>v;p=0;n=y;o=y;do{D=G+(o<<2)|0;E=c[D>>2]|0;a=(E>>>v)+p|0;c[D>>2]=a;p=O(E&q,u)|0;a=(o|0)==(n|0)&(a|0)==0;m=a?m+-9|0:m;n=a?n+1&127:n;o=o+1&127}while((o|0)!=(k|0));if(!p)continue;if((w|0)!=(n|0))break;c[x>>2]=c[x>>2]|1}c[G+(k<<2)>>2]=p;k=w}do{n=o+y&127;m=k+1&127;if((n|0)==(k|0)){c[G+(m+-1<<2)>>2]=0;k=m}i=i*1.0e9+ +((c[G+(n<<2)>>2]|0)>>>0);o=o+1|0}while((o|0)!=2);t=+(g|0);j=t*i;o=b+53|0;p=o-f|0;q=(p|0)<(e|0);n=q?((p|0)>0?p:0):e;if((n|0)<53){K=+QO(+PO(1.0,105-n|0),j);r=+RO(j,+PO(1.0,53-n|0));s=K;i=r;r=K+(j-r)}else{s=0.0;i=0.0;r=j}m=y+2&127;if((m|0)!=(k|0)){m=c[G+(m<<2)>>2]|0;do if(m>>>0>=5e8){if((m|0)!=5e8){i=t*.75+i;break}if((y+3&127|0)==(k|0)){i=t*.5+i;break}else{i=t*.75+i;break}}else{if((m|0)==0?(y+3&127|0)==(k|0):0)break;i=t*.25+i}while(0);if((53-n|0)>1?!(+RO(i,1.0)!=0.0):0)j=i+1.0;else j=i}else j=i;i=r+j-s;do if((o&2147483647|0)>(-2-H|0)){H=!(+B(+i)>=9007199254740992.0);b=((H^1)&1)+b|0;i=H?i:i*.5;if((b+50|0)<=(I|0)?!(j!=0.0&(q&((n|0)!=(p|0)|H))):0)break;c[8240]=34}while(0);i=+SO(i,b)}while(0);l=J;return +i}function OO(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=a+4|0;e=c[k>>2]|0;j=a+100|0;if(e>>>0<(c[j>>2]|0)>>>0){c[k>>2]=e+1;e=d[e>>0]|0}else e=wN(a)|0;switch(e|0){case 43:case 45:{f=(e|0)==45&1;e=c[k>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[k>>2]=e+1;e=d[e>>0]|0}else e=wN(a)|0;if((b|0)!=0&(e+-48|0)>>>0>9?(c[j>>2]|0)!=0:0)c[k>>2]=(c[k>>2]|0)+-1;break}default:f=0}if((e+-48|0)>>>0>9)if(!(c[j>>2]|0)){f=-2147483648;e=0}else{c[k>>2]=(c[k>>2]|0)+-1;f=-2147483648;e=0}else{i=0;do{i=e+-48+(i*10|0)|0;e=c[k>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[k>>2]=e+1;e=d[e>>0]|0}else e=wN(a)|0;g=(e+-48|0)>>>0<10}while(g&(i|0)<214748364);b=((i|0)<0)<<31>>31;if(g){g=i;do{b=EQ(g|0,b|0,10,0)|0;g=z;e=yQ(e|0,((e|0)<0)<<31>>31|0,-48,-1)|0;g=yQ(e|0,z|0,b|0,g|0)|0;b=z;e=c[k>>2]|0;if(e>>>0<(c[j>>2]|0)>>>0){c[k>>2]=e+1;e=d[e>>0]|0}else e=wN(a)|0}while((e+-48|0)>>>0<10&((b|0)<21474836|(b|0)==21474836&g>>>0<2061584302));h=e;i=g}else h=e;e=c[j>>2]|0;if((h+-48|0)>>>0<10)do{g=c[k>>2]|0;if(g>>>0<e>>>0){c[k>>2]=g+1;g=d[g>>0]|0}else{g=wN(a)|0;e=c[j>>2]|0}}while((g+-48|0)>>>0<10);if(e|0)c[k>>2]=(c[k>>2]|0)+-1;k=(f|0)!=0;e=zQ(0,0,i|0,b|0)|0;f=k?z:b;e=k?e:i}z=f;return e|0}function PO(a,b){a=+a;b=b|0;var d=0,e=0;if((b|0)<=1023){if((b|0)<-1022){a=a*2.2250738585072014e-308;d=b+1022|0;e=(d|0)<-1022;b=b+2044|0;a=e?a*2.2250738585072014e-308:a;b=e?((b|0)>-1022?b:-1022):d}}else{a=a*8988465674311579538646525.0e283;e=b+-1023|0;d=(e|0)>1023;b=b+-2046|0;a=d?a*8988465674311579538646525.0e283:a;b=d?((b|0)<1023?b:1023):e}d=KQ(b+1023|0,0,52)|0;e=z;c[j>>2]=d;c[j+4>>2]=e;return +(a*+h[j>>3])}function QO(a,b){a=+a;b=+b;return +(+DN(a,b))}function RO(a,b){a=+a;b=+b;return +(+TO(a,b))}function SO(a,b){a=+a;b=b|0;return +(+PO(a,b))}function TO(a,b){a=+a;b=+b;var d=0,e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;h[j>>3]=a;i=c[j>>2]|0;l=c[j+4>>2]|0;h[j>>3]=b;n=c[j>>2]|0;o=c[j+4>>2]|0;e=JQ(i|0,l|0,52)|0;e=e&2047;m=JQ(n|0,o|0,52)|0;m=m&2047;p=l&-2147483648;g=KQ(n|0,o|0,1)|0;k=z;a:do if(!((g|0)==0&(k|0)==0)?(f=UO(b)|0,d=z&2147483647,!((e|0)==2047|(d>>>0>2146435072|(d|0)==2146435072&f>>>0>0))):0){d=KQ(i|0,l|0,1)|0;f=z;if(!(f>>>0>k>>>0|(f|0)==(k|0)&d>>>0>g>>>0))return +((d|0)==(g|0)&(f|0)==(k|0)?a*0.0:a);if(!e){d=KQ(i|0,l|0,12)|0;f=z;if((f|0)>-1|(f|0)==-1&d>>>0>4294967295){e=0;do{e=e+-1|0;d=KQ(d|0,f|0,1)|0;f=z}while((f|0)>-1|(f|0)==-1&d>>>0>4294967295)}else e=0;i=KQ(i|0,l|0,1-e|0)|0;g=z}else g=l&1048575|1048576;if(!m){f=KQ(n|0,o|0,12)|0;k=z;if((k|0)>-1|(k|0)==-1&f>>>0>4294967295){d=0;do{d=d+-1|0;f=KQ(f|0,k|0,1)|0;k=z}while((k|0)>-1|(k|0)==-1&f>>>0>4294967295)}else d=0;n=KQ(n|0,o|0,1-d|0)|0;m=d;l=z}else l=o&1048575|1048576;f=zQ(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;b:do if((e|0)>(m|0)){while(1){if(k){if((f|0)==0&(d|0)==0)break}else{f=i;d=g}i=KQ(f|0,d|0,1)|0;g=z;e=e+-1|0;f=zQ(i|0,g|0,n|0,l|0)|0;d=z;k=(d|0)>-1|(d|0)==-1&f>>>0>4294967295;if((e|0)<=(m|0))break b}b=a*0.0;break a}while(0);if(k){if((f|0)==0&(d|0)==0){b=a*0.0;break}}else{d=g;f=i}if(d>>>0<1048576|(d|0)==1048576&f>>>0<0)do{f=KQ(f|0,d|0,1)|0;d=z;e=e+-1|0}while(d>>>0<1048576|(d|0)==1048576&f>>>0<0);if((e|0)>0){o=yQ(f|0,d|0,0,-1048576)|0;d=z;e=KQ(e|0,0,52)|0;d=d|z;e=o|e}else{e=JQ(f|0,d|0,1-e|0)|0;d=z}c[j>>2]=e;c[j+4>>2]=d|p;b=+h[j>>3]}else q=3;while(0);if((q|0)==3){b=a*b;b=b/b}return +b}function UO(a){a=+a;var b=0;h[j>>3]=a;b=c[j>>2]|0;z=c[j+4>>2]|0;return b|0}function VO(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;f=a[b>>0]|0;e=f&255;a:do if(f<<24>>24){g=f;do{f=a[c>>0]|0;if(!(f<<24>>24))break a;if(g<<24>>24!=f<<24>>24?(g=rN(e)|0,(g|0)!=(rN(f&255)|0)):0)break a;b=b+1|0;c=c+1|0;g=a[b>>0]|0;e=g&255}while(g<<24>>24!=0)}while(0);g=rN(e)|0;return g-(rN(d[c>>0]|0)|0)|0}function WO(b){b=b|0;var d=0,e=0,f=0;f=b;a:do if(!(f&3))e=4;else{d=f;while(1){if(!(a[b>>0]|0)){b=d;break a}b=b+1|0;d=b;if(!(d&3)){e=4;break}}}while(0);if((e|0)==4){while(1){d=c[b>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))b=b+4|0;else break}if((d&255)<<24>>24)do b=b+1|0;while((a[b>>0]|0)!=0)}return b-f|0}function XO(b,c){b=b|0;c=c|0;b=YO(b,c)|0;return ((a[b>>0]|0)==(c&255)<<24>>24?b:0)|0}function YO(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(WO(b)|0)|0;else{if(b&3){e=d&255;do{g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break a;b=b+1|0}while((b&3|0)!=0)}f=O(f,16843009)|0;e=c[b>>2]|0;b:do if(!((e&-2139062144^-2139062144)&e+-16843009))do{g=e^f;if((g&-2139062144^-2139062144)&g+-16843009|0)break b;b=b+4|0;e=c[b>>2]|0}while(!((e&-2139062144^-2139062144)&e+-16843009|0));while(0);e=d&255;while(1){g=a[b>>0]|0;if(g<<24>>24==0?1:g<<24>>24==e<<24>>24)break;else b=b+1|0}}while(0);return b|0}function ZO(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j;h=(e|0)==0?324648:e;g=c[h>>2]|0;do if(!d)if(!g)e=0;else i=14;else{b=(b|0)==0?f:b;e=a[d>>0]|0;if(g){e=e&255;d=e>>>3;if((d+-16|d+(g>>26))>>>0>7){i=14;break}e=e+-128|g<<6;if((e|0)>=0){c[h>>2]=0;c[b>>2]=e;e=1;break}}else{if(e<<24>>24>-1){c[b>>2]=e&255;e=e<<24>>24!=0&1;break}if(!(c[c[8271]>>2]|0)){c[b>>2]=e<<24>>24&57343;e=1;break}e=(e&255)+-194|0;if(e>>>0>50){i=14;break}e=c[32568+(e<<2)>>2]|0}c[h>>2]=e;e=-2}while(0);if((i|0)==14){c[h>>2]=0;c[8240]=84;e=-1}l=j;return e|0}function _O(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;ON(a,b,d,g)|0;l=f;return}function $O(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0,h=0;if(!e)f=0;else{g=a[b>>0]|0;f=g&255;a:do if(g<<24>>24){h=g;do{e=e+-1|0;g=a[c>>0]|0;if(!((e|0)!=0&g<<24>>24!=0))break a;if(h<<24>>24!=g<<24>>24?(h=rN(f)|0,(h|0)!=(rN(g&255)|0)):0)break a;b=b+1|0;c=c+1|0;h=a[b>>0]|0;f=h&255}while(h<<24>>24!=0)}while(0);f=rN(f)|0;f=f-(rN(d[c>>0]|0)|0)|0}return f|0}function aP(a,b){a=a|0;b=b|0;bP(a,b);return a|0}function bP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;f=d;a:do if(!((f^b)&3)){if(!(f&3))e=d;else while(1){f=a[d>>0]|0;a[b>>0]=f;if(!(f<<24>>24))break a;d=d+1|0;b=b+1|0;if(!(d&3)){e=d;break}}d=c[e>>2]|0;if(!((d&-2139062144^-2139062144)&d+-16843009))while(1){e=e+4|0;f=b+4|0;c[b>>2]=d;d=c[e>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){b=f;break}else b=f}g=b;h=8}else{e=d;g=b;h=8}while(0);if((h|0)==8?(h=a[e>>0]|0,a[g>>0]=h,h<<24>>24):0){b=g;do{e=e+1|0;b=b+1|0;h=a[e>>0]|0;a[b>>0]=h}while(h<<24>>24!=0)}return}function cP(a){a=+a;var b=0,d=0,e=0,f=0.0,g=0.0;h[j>>3]=a;d=c[j+4>>2]|0;b=d&2147483647;do if(b>>>0>2146435071)a=a+a;else{if(b>>>0<1048576){h[j>>3]=a*18014398509481984.0;d=c[j+4>>2]|0;b=d&2147483647;if(!b)break;else e=696219795}else e=715094163;c[j>>2]=0;c[j+4>>2]=((b>>>0)/3|0)+e|d&-2147483648;g=+h[j>>3];f=g*g*(g/a);h[j>>3]=g*(f*(f*f)*(f*.14599619288661245+-.758397934778766)+(f*(f*1.6214297201053545+-1.8849797954337717)+1.87595182427177));d=yQ(c[j>>2]|0,c[j+4>>2]|0,-2147483648,0)|0;e=z;c[j>>2]=d&-1073741824;c[j+4>>2]=e;f=+h[j>>3];a=a/(f*f);a=f+f*((a-f)/(f+f+a))}while(0);return +a}function dP(a,b){a=+a;b=b|0;return +(+PO(a,b))}function eP(a){a=+a;var b=0,d=0,e=0,f=0,g=0.0,i=0.0,k=0.0,l=0.0,m=0.0;h[j>>3]=a;b=c[j>>2]|0;d=c[j+4>>2]|0;e=(d|0)<0;do if(e|d>>>0<1048576){if((b|0)==0&(d&2147483647|0)==0){a=-1.0/(a*a);break}if(e){a=(a-a)/0.0;break}else{h[j>>3]=a*18014398509481984.0;d=c[j+4>>2]|0;e=-1077;b=c[j>>2]|0;f=9;break}}else if(d>>>0<=2146435071)if((b|0)==0&0==0&(d|0)==1072693248)a=0.0;else{e=-1023;f=9}while(0);if((f|0)==9){f=d+614242|0;c[j>>2]=b;c[j+4>>2]=(f&1048575)+1072079006;k=+h[j>>3]+-1.0;i=k*(k*.5);l=k/(k+2.0);m=l*l;a=m*m;h[j>>3]=k-i;d=c[j+4>>2]|0;c[j>>2]=0;c[j+4>>2]=d;g=+h[j>>3];a=k-g-i+l*(i+(a*(a*(a*.15313837699209373+.22222198432149784)+.3999999999940942)+m*(a*(a*(a*.14798198605116586+.1818357216161805)+.2857142874366239)+.6666666666666735)));m=g*.4342944818781689;i=+(e+(f>>>20)|0);l=i*.30102999566361177;k=l+m;a=k+(m+(l-k)+(a*.4342944818781689+(i*3.694239077158931e-13+(g+a)*2.5082946711645275e-11)))}return +a}function fP(a){a=+a;var b=0,d=0,e=0,f=0,g=0.0,i=0.0,k=0.0,l=0.0,m=0.0;h[j>>3]=a;b=c[j>>2]|0;d=c[j+4>>2]|0;e=(d|0)<0;do if(e|d>>>0<1048576){if((b|0)==0&(d&2147483647|0)==0){a=-1.0/(a*a);break}if(e){a=(a-a)/0.0;break}else{h[j>>3]=a*18014398509481984.0;d=c[j+4>>2]|0;e=-1077;b=c[j>>2]|0;f=9;break}}else if(d>>>0<=2146435071)if((b|0)==0&0==0&(d|0)==1072693248)a=0.0;else{e=-1023;f=9}while(0);if((f|0)==9){f=d+614242|0;c[j>>2]=b;c[j+4>>2]=(f&1048575)+1072079006;m=+h[j>>3]+-1.0;k=m*(m*.5);i=m/(m+2.0);l=i*i;a=l*l;h[j>>3]=m-k;d=c[j+4>>2]|0;c[j>>2]=0;c[j+4>>2]=d;g=+h[j>>3];a=m-g-k+i*(k+(a*(a*(a*.15313837699209373+.22222198432149784)+.3999999999940942)+l*(a*(a*(a*.14798198605116586+.1818357216161805)+.2857142874366239)+.6666666666666735)));l=g*1.4426950407214463;k=+(e+(f>>>20)|0);i=k+l;a=i+(l+(k-i)+(a*1.4426950407214463+(g+a)*1.6751713164886512e-10))}return +a}function gP(a){a=+a;var b=0,d=0;h[j>>3]=a;d=c[j+4>>2]|0;b=d&2147483647;c[j>>2]=c[j>>2];c[j+4>>2]=b;a=+h[j>>3];do if(b>>>0>1071748074)if(b>>>0>1077149696){a=1.0-0.0/a;break}else{a=1.0-2.0/(+GN(a*2.0)+2.0);break}else{if(b>>>0>1070618798){a=+GN(a*2.0);a=a/(a+2.0);break}if(b>>>0>1048575){a=+GN(a*-2.0);a=-a/(a+2.0)}}while(0);return +((d|0)<0?-a:a)}function hP(a){a=+a;var b=0,d=0,e=0,f=0,g=0;h[j>>3]=a;b=c[j>>2]|0;d=c[j+4>>2]|0;e=JQ(b|0,d|0,52)|0;e=(e&2047)+-1011|0;if((e|0)>63)return +a;else{g=(e|0)<12;f=JQ(-1,-1,e|0)|0;f=g?-1:f;e=g?2147483647:z;c[j>>2]=b&~f;c[j+4>>2]=d&~e;return +((f&b|0)==0&(e&d|0)==0?a:+h[j>>3])}return 0.0}function iP(a){a=+a;var b=0,d=0,e=0;h[j>>3]=a;b=c[j>>2]|0;d=c[j+4>>2]|0;e=JQ(b|0,d|0,52)|0;switch(e&2047){case 0:{b=(b|0)!=0|(d&2147483647|0)!=0?3:2;break}case 2047:{b=(b|0)==0&(d&1048575|0)==0&1;break}default:b=4}return b|0}function jP(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0;e=O(c,b)|0;a=kO(a,e,d)|0;if((a|0)==(e|0))a=(b|0)==0?0:c;else a=(a>>>0)/(b>>>0)|0;return a|0}function kP(a){a=a|0;var b=0;if(c[a+68>>2]|0){b=c[a+116>>2]|0;a=a+112|0;if(b|0)c[b+112>>2]=c[a>>2];a=c[a>>2]|0;c[((a|0)==0?33128:a+116|0)>>2]=b}return}function lP(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;k=e&255;a[j>>0]=k;g=b+16|0;h=c[g>>2]|0;if(!h)if(!(lO(b)|0)){h=c[g>>2]|0;i=4}else f=-1;else i=4;do if((i|0)==4){i=b+20|0;g=c[i>>2]|0;if(g>>>0<h>>>0?(f=e&255,(f|0)!=(a[b+75>>0]|0)):0){c[i>>2]=g+1;a[g>>0]=k;break}if((ig[c[b+36>>2]&63](b,j,1)|0)==1)f=d[j>>0]|0;else f=-1}while(0);l=m;return f|0}function mP(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b;b=mN(Pa(195,e|0)|0)|0;l=d;return b|0}function nP(a){a=a|0;var b=0,c=0;c=(WO(a)|0)+1|0;b=eN(c)|0;if(!b)b=0;else PQ(b|0,a|0,c|0)|0;return b|0}function oP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+32|0;g=i+16|0;e=i;if(ZN(316274,a[d>>0]|0,4)|0){f=pP(d)|0;c[e>>2]=b;c[e+4>>2]=f|32768;c[e+8>>2]=438;e=mN(Wa(5,e|0)|0)|0;if((e|0)>=0){if(f&524288|0){c[g>>2]=e;c[g+4>>2]=2;c[g+8>>2]=1;Sa(221,g|0)|0}b=qP(e,d)|0;if(!b){c[h>>2]=e;Ya(6,h|0)|0;b=0}}else b=0}else{c[8240]=22;b=0}l=i;return b|0}function pP(b){b=b|0;var c=0,d=0,e=0;d=(XO(b,43)|0)==0;c=a[b>>0]|0;d=d?c<<24>>24!=114&1:2;e=(XO(b,120)|0)==0;d=e?d:d|128;b=(XO(b,101)|0)==0;b=b?d:d|524288;b=c<<24>>24==114?b:b|64;b=c<<24>>24==119?b|512:b;return (c<<24>>24==97?b|1024:b)|0}function qP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+64|0;n=o+40|0;k=o+24|0;j=o+16|0;g=o;m=o+56|0;f=a[d>>0]|0;if(ZN(316274,f<<24>>24,4)|0){e=eN(1156)|0;if(!e)e=0;else{h=e;i=h+124|0;do{c[h>>2]=0;h=h+4|0}while((h|0)<(i|0));if(!(XO(d,43)|0))c[e>>2]=f<<24>>24==114?8:4;if(XO(d,101)|0){c[g>>2]=b;c[g+4>>2]=2;c[g+8>>2]=1;Sa(221,g|0)|0;f=a[d>>0]|0}if(f<<24>>24==97){c[j>>2]=b;c[j+4>>2]=3;f=Sa(221,j|0)|0;if(!(f&1024)){c[k>>2]=b;c[k+4>>2]=4;c[k+8>>2]=f|1024;Sa(221,k|0)|0}d=c[e>>2]|128;c[e>>2]=d}else d=c[e>>2]|0;c[e+60>>2]=b;c[e+44>>2]=e+132;c[e+48>>2]=1024;f=e+75|0;a[f>>0]=-1;if((d&8|0)==0?(c[n>>2]=b,c[n+4>>2]=21523,c[n+8>>2]=m,(Xa(54,n|0)|0)==0):0)a[f>>0]=10;c[e+32>>2]=3;c[e+36>>2]=1;c[e+40>>2]=2;c[e+12>>2]=386;if(!(c[81147]|0))c[e+76>>2]=-1;rP(e)|0}}else{c[8240]=22;e=0}l=o;return e|0}function rP(a){a=a|0;var b=0;sP();b=c[81165]|0;c[a+56>>2]=b;if(b|0)c[b+52>>2]=a;c[81165]=a;tP();return a|0}function sP(){Ia(324652);return}function tP(){$a(324652);return}function uP(a){a=a|0;var b=0,d=0,e=0;kP(a);e=(c[a>>2]&1|0)!=0;if(!e){sP();d=c[a+52>>2]|0;b=a+56|0;if(d|0)c[d+56>>2]=c[b>>2];b=c[b>>2]|0;if(b|0)c[b+52>>2]=d;if((c[81165]|0)==(a|0))c[81165]=b;tP()}b=vP(a)|0;b=gg[c[a+12>>2]&511](a)|0|b;d=c[a+92>>2]|0;if(d|0)fN(d);if(!e)fN(a);return b|0}function vP(a){a=a|0;var b=0;if(!a){if(!(c[8347]|0))a=0;else a=vP(c[8347]|0)|0;sP();b=c[81165]|0;if(b)do{if((c[b+20>>2]|0)>>>0>(c[b+28>>2]|0)>>>0)a=wP(b)|0|a;b=c[b+56>>2]|0}while((b|0)!=0);tP()}else a=wP(a)|0;return a|0}function wP(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=a+20|0;h=a+28|0;if((c[b>>2]|0)>>>0>(c[h>>2]|0)>>>0?(ig[c[a+36>>2]&63](a,0,0)|0,(c[b>>2]|0)==0):0)a=-1;else{d=a+4|0;e=c[d>>2]|0;f=a+8|0;g=c[f>>2]|0;if(e>>>0<g>>>0)ig[c[a+40>>2]&63](a,e-g|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[b>>2]=0;c[f>>2]=0;c[d>>2]=0;a=0}return a|0}function xP(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;f=e+-1|0;g=(f|0)!=0;a:do if((e|0)<2){i=a[33214]|0;a[33214]=i+255|i;if(g)b=0;else a[b>>0]=0}else{b:do if(g){e=b;while(1){g=c[8286]|0;j=g;k=(c[8287]|0)-j|0;h=ZN(g,10,k)|0;i=(h|0)==0;h=i?k:1-j+h|0;h=h>>>0<f>>>0?h:f;PQ(e|0,g|0,h|0)|0;g=(c[8286]|0)+h|0;c[8286]=g;e=e+h|0;h=f-h|0;if(!(i&(h|0)!=0))break b;if(g>>>0>=(c[8287]|0)>>>0){f=yN(33140)|0;if((f|0)<0)break;else i=f}else{c[8286]=g+1;i=d[g>>0]|0}f=h+-1|0;g=e+1|0;a[e>>0]=i;if(!((f|0)!=0&(i&255|0)!=10)){e=g;break b}else e=g}if((e|0)==(b|0)){b=0;break a}if(!(c[8285]&16)){b=0;break a}}else e=b;while(0);if(!b)b=0;else a[e>>0]=0}while(0);return b|0}function yP(a){a=a|0;return (c[a>>2]|0)>>>4&1|0}function zP(a){a=a|0;return (c[a>>2]|0)>>>5&1|0}function AP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;b=l;l=l+16|0;e=b;c[e>>2]=d;BP(a,280535,e);l=b;return}function BP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+128|0;e=g;f=e;h=f+124|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(h|0));c[e+32>>2]=50;c[e+44>>2]=a;c[e+76>>2]=-1;c[e+84>>2]=a;DP(e,b,d);l=g;return}function CP(a,b,c){a=a|0;b=b|0;c=c|0;return HP(a,b,c)|0}function DP(b,e,f){b=b|0;e=e|0;f=f|0;var i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,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;M=l;l=l+288|0;H=M+8|0;I=M+17|0;J=M;K=M+16|0;i=a[e>>0]|0;a:do if(i<<24>>24){x=b+4|0;y=b+100|0;A=b+108|0;B=b+8|0;C=I+10|0;D=I+33|0;w=H+4|0;E=I+46|0;F=I+94|0;G=I+1|0;k=e;u=0;j=0;e=0;b:while(1){c:do if(!(xN(i&255)|0)){i=i<<24>>24==37;d:do if(i){o=k+1|0;m=a[o>>0]|0;e:do switch(m<<24>>24){case 37:break d;case 42:{v=0;k=k+2|0;break}default:{i=(m&255)+-48|0;if(i>>>0<10?(a[k+2>>0]|0)==36:0){v=EP(f,i)|0;k=k+3|0;break e}k=(c[f>>2]|0)+(4-1)&~(4-1);v=c[k>>2]|0;c[f>>2]=k+4;k=o}}while(0);i=a[k>>0]|0;m=i&255;if((m+-48|0)>>>0<10){o=0;do{o=(o*10|0)+-48+m|0;k=k+1|0;i=a[k>>0]|0;m=i&255}while((m+-48|0)>>>0<10)}else o=0;i=i<<24>>24==109;s=(v|0)!=0;j=i?0:j;e=i?0:e;k=i?k+1|0:k;i=s&i;m=k+1|0;switch(a[k>>0]|0){case 104:{t=(a[m>>0]|0)==104;p=t?-2:-1;k=t?k+2|0:m;break}case 108:{t=(a[m>>0]|0)==108;p=t?3:1;k=t?k+2|0:m;break}case 106:{p=3;k=m;break}case 116:case 122:{p=1;k=m;break}case 76:{p=2;k=m;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:{p=0;break}default:{L=134;break b}}r=d[k>>0]|0;t=(r&47|0)==3;r=t?r|32:r;t=t?1:p;q=r&255;switch(q<<24>>24){case 99:{o=(o|0)>1?o:1;break}case 91:break;case 110:{FP(v,t,u,((u|0)<0)<<31>>31);m=u;break c}default:{uN(b,0);do{m=c[x>>2]|0;if(m>>>0<(c[y>>2]|0)>>>0){c[x>>2]=m+1;m=d[m>>0]|0}else m=wN(b)|0}while((xN(m)|0)!=0);if(!(c[y>>2]|0))m=c[x>>2]|0;else{m=(c[x>>2]|0)+-1|0;c[x>>2]=m}u=(c[A>>2]|0)+u+m-(c[B>>2]|0)|0}}uN(b,o);m=c[x>>2]|0;p=c[y>>2]|0;if(m>>>0<p>>>0)c[x>>2]=m+1;else{if((wN(b)|0)<0){L=134;break b}p=c[y>>2]|0}if(p|0)c[x>>2]=(c[x>>2]|0)+-1;f:do switch(q<<24>>24){case 91:case 99:case 115:{s=(r|0)==99;g:do if((r|16|0)==115){RQ(G|0,-1,256)|0;a[I>>0]=0;if((r|0)==115){a[D>>0]=0;a[C>>0]=0;a[C+1>>0]=0;a[C+2>>0]=0;a[C+3>>0]=0;a[C+4>>0]=0}}else{m=k+1|0;r=(a[m>>0]|0)==94;q=r&1;k=r?k+2|0:m;RQ(G|0,r&1|0,256)|0;a[I>>0]=0;switch(a[k>>0]|0){case 45:{m=E;L=61;break}case 93:{m=F;L=61;break}default:r=(q^1)&255}if((L|0)==61){L=0;r=(q^1)&255;a[m>>0]=r;k=k+1|0}while(1){m=a[k>>0]|0;h:do switch(m<<24>>24){case 0:{L=134;break b}case 93:break g;case 45:{q=k+1|0;m=a[q>>0]|0;switch(m<<24>>24){case 93:case 0:{m=45;break h}default:{}}k=a[k+-1>>0]|0;if((k&255)<(m&255)){k=k&255;do{k=k+1|0;a[I+k>>0]=r;m=a[q>>0]|0}while((k|0)<(m&255|0));k=q}else k=q;break}default:{}}while(0);a[I+((m&255)+1)>>0]=r;k=k+1|0}}while(0);m=s?o+1|0:31;r=(t|0)==1;i:do if(r){if(i){e=eN(m<<2)|0;if(!e){i=0;e=0;break b}}else e=v;c[H>>2]=0;c[w>>2]=0;q=m;j=0;j:while(1){p=(e|0)==0;do{k:while(1){m=c[x>>2]|0;if(m>>>0<(c[y>>2]|0)>>>0){c[x>>2]=m+1;m=d[m>>0]|0}else m=wN(b)|0;if(!(a[I+(m+1)>>0]|0))break j;a[K>>0]=m;switch(ZO(J,K,H)|0){case -1:{j=0;L=134;break b}case -2:break;default:break k}}if(!p){c[e+(j<<2)>>2]=c[J>>2];j=j+1|0}}while(!(i&(j|0)==(q|0)));j=q<<1|1;m=gN(e,j<<2)|0;if(!m){i=0;break b}else{t=q;q=j;e=m;j=t}}if(!(GP(H)|0)){j=0;L=134;break b}else{m=j;j=0;q=e}}else{if(i){j=eN(m)|0;if(!j){i=0;e=0;break b}else{p=m;e=0}while(1){do{m=c[x>>2]|0;if(m>>>0<(c[y>>2]|0)>>>0){c[x>>2]=m+1;m=d[m>>0]|0}else m=wN(b)|0;if(!(a[I+(m+1)>>0]|0)){m=e;q=0;e=0;break i}a[j+e>>0]=m;e=e+1|0}while((e|0)!=(p|0));e=p<<1|1;m=gN(j,e)|0;if(!m){i=j;e=0;break b}else{t=p;p=e;j=m;e=t}}}if(!v){j=p;while(1){e=c[x>>2]|0;if(e>>>0<j>>>0){c[x>>2]=e+1;e=d[e>>0]|0}else e=wN(b)|0;if(!(a[I+(e+1)>>0]|0)){m=0;j=0;q=0;e=0;break i}j=c[y>>2]|0}}else{m=0;j=p;while(1){e=c[x>>2]|0;if(e>>>0<j>>>0){c[x>>2]=e+1;e=d[e>>0]|0}else e=wN(b)|0;if(!(a[I+(e+1)>>0]|0)){j=v;q=0;e=0;break i}a[v+m>>0]=e;m=m+1|0;j=c[y>>2]|0}}}while(0);if(!(c[y>>2]|0))p=c[x>>2]|0;else{p=(c[x>>2]|0)+-1|0;c[x>>2]=p}p=p-(c[B>>2]|0)+(c[A>>2]|0)|0;if(!p){L=134;break b}if(!((p|0)==(o|0)|s^1)){L=134;break b}do if(i)if(r){c[v>>2]=q;break}else{c[v>>2]=j;break}while(0);if(!s){if(q|0)c[q+(m<<2)>>2]=0;if(!j)j=0;else a[j+m>>0]=0}break}case 120:case 88:case 112:{m=16;L=122;break}case 111:{m=8;L=122;break}case 117:case 100:{m=10;L=122;break}case 105:{m=0;L=122;break}case 71:case 103:case 70:case 102:case 69:case 101:case 65:case 97:{n=+LO(b,t,0);if((c[A>>2]|0)==((c[B>>2]|0)-(c[x>>2]|0)|0)){L=134;break b}if(v)switch(t|0){case 0:{g[v>>2]=n;break f}case 1:{h[v>>3]=n;break f}case 2:{h[v>>3]=n;break f}default:break f}break}default:{}}while(0);do if((L|0)==122){L=0;m=vN(b,m,0,-1,-1)|0;if((c[A>>2]|0)==((c[B>>2]|0)-(c[x>>2]|0)|0)){L=134;break b}if(s&(r|0)==112){c[v>>2]=m;break}else{FP(v,t,m,z);break}}while(0);m=(c[A>>2]|0)+u+(c[x>>2]|0)-(c[B>>2]|0)|0;break c}while(0);k=k+(i&1)|0;uN(b,0);i=c[x>>2]|0;if(i>>>0<(c[y>>2]|0)>>>0){c[x>>2]=i+1;i=d[i>>0]|0}else i=wN(b)|0;if((i|0)!=(d[k>>0]|0)){L=20;break b}m=u+1|0}else{while(1){i=k+1|0;if(!(xN(d[i>>0]|0)|0))break;else k=i}uN(b,0);do{i=c[x>>2]|0;if(i>>>0<(c[y>>2]|0)>>>0){c[x>>2]=i+1;i=d[i>>0]|0}else i=wN(b)|0}while((xN(i)|0)!=0);if(!(c[y>>2]|0))i=c[x>>2]|0;else{i=(c[x>>2]|0)+-1|0;c[x>>2]=i}m=(c[A>>2]|0)+u+i-(c[B>>2]|0)|0}while(0);k=k+1|0;i=a[k>>0]|0;if(!(i<<24>>24))break a;else u=m}if((L|0)==20){if(!(c[y>>2]|0))break;c[x>>2]=(c[x>>2]|0)+-1;break}else if((L|0)==134)if(i)i=j;else break;fN(i);fN(e)}while(0);l=M;return}function EP(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=l;l=l+16|0;d=e;c[d>>2]=c[a>>2];while(1){f=(c[d>>2]|0)+(4-1)&~(4-1);a=c[f>>2]|0;c[d>>2]=f+4;if(b>>>0>1)b=b+-1|0;else break}l=e;return a|0}function FP(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;a:do if(d|0)switch(e|0){case -2:{a[d>>0]=f;break a}case -1:{b[d>>1]=f;break a}case 0:{c[d>>2]=f;break a}case 1:{c[d>>2]=f;break a}case 3:{e=d;c[e>>2]=f;c[e+4>>2]=g;break a}default:break a}while(0);return}function GP(a){a=a|0;if(!a)a=1;else a=(c[a>>2]|0)==0;return a&1|0}function HP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=a+84|0;g=c[e>>2]|0;h=d+256|0;f=ZN(g,0,h)|0;f=(f|0)==0?h:f-g|0;d=f>>>0<d>>>0?f:d;PQ(b|0,g|0,d|0)|0;c[a+4>>2]=g+d;b=g+f|0;c[a+8>>2]=b;c[e>>2]=b;return d|0}function IP(a,b,c){a=a|0;b=b|0;c=c|0;return KP(a,b,c)|0}function JP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;a=l;l=l+16|0;e=a;c[e>>2]=d;PN(32772,b,e)|0;l=a;return}function KP(a,b,c){a=a|0;b=b|0;c=c|0;return LP(a,b,c)|0}function LP(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;if((d|0)==1)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)|0;e=a+20|0;f=a+28|0;if((c[e>>2]|0)>>>0>(c[f>>2]|0)>>>0?(ig[c[a+36>>2]&63](a,0,0)|0,(c[e>>2]|0)==0):0)b=-1;else{c[a+16>>2]=0;c[f>>2]=0;c[e>>2]=0;if((ig[c[a+40>>2]&63](a,b,d)|0)<0)b=-1;else{c[a+8>>2]=0;c[a+4>>2]=0;c[a>>2]=c[a>>2]&-17;b=0}}return b|0}function MP(b,c){b=b|0;c=c|0;var d=0,e=0,f=0;f=a[c>>0]|0;do if(f<<24>>24){b=XO(b,f<<24>>24)|0;if(b){e=a[c+1>>0]|0;if(e<<24>>24)if(a[b+1>>0]|0){d=a[c+2>>0]|0;if(!(d<<24>>24)){b=NP(b,f,e)|0;break}if(a[b+2>>0]|0){if(!(a[c+3>>0]|0)){b=OP(b,f,e,d)|0;break}if(a[b+3>>0]|0)if(!(a[c+4>>0]|0)){b=PP(b,c)|0;break}else{b=QP(b,c)|0;break}else b=0}else b=0}else b=0}else b=0}while(0);return b|0}function NP(b,c,e){b=b|0;c=c|0;e=e|0;var f=0,g=0;g=(c&255)<<8|e&255;f=d[b>>0]|0;while(1){e=b+1|0;c=a[e>>0]|0;if(!(c<<24>>24)){b=0;break}f=c&255|f<<8&65280;if((f|0)==(g|0))break;else b=e}return b|0}function OP(b,c,e,f){b=b|0;c=c|0;e=e|0;f=f|0;var g=0;g=(e&255)<<16|(c&255)<<24|(f&255)<<8;f=b+2|0;e=a[f>>0]|0;c=(d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(e&255)<<8;e=e<<24>>24!=0;if(!((c|0)==(g|0)|e^1))do{f=f+1|0;e=a[f>>0]|0;c=(e&255|c)<<8;e=e<<24>>24!=0}while(!((c|0)==(g|0)|e^1));return (e?f+-2|0:0)|0}function PP(b,c){b=b|0;c=c|0;var e=0,f=0,g=0;f=(d[c+1>>0]|0)<<16|(d[c>>0]|0)<<24|(d[c+2>>0]|0)<<8|(d[c+3>>0]|0);c=b+3|0;g=a[c>>0]|0;e=g&255|((d[b+1>>0]|0)<<16|(d[b>>0]|0)<<24|(d[b+2>>0]|0)<<8);b=g<<24>>24!=0;if(!((e|0)==(f|0)|b^1))do{c=c+1|0;b=a[c>>0]|0;e=b&255|e<<8;b=b<<24>>24!=0}while(!((e|0)==(f|0)|b^1));return (b?c+-3|0:0)|0}function QP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+1056|0;t=v+1024|0;u=v;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=0;c[t+12>>2]=0;c[t+16>>2]=0;c[t+20>>2]=0;c[t+24>>2]=0;c[t+28>>2]=0;e=a[d>>0]|0;a:do if(e<<24>>24){s=0;f=e;e=e&255;while(1){if(!(a[b+s>>0]|0)){e=0;break a}r=t+(((f&255)>>>5&255)<<2)|0;c[r>>2]=c[r>>2]|1<<(f&31);s=s+1|0;c[u+(e<<2)>>2]=s;e=a[d+s>>0]|0;if(!(e<<24>>24))break;else{f=e;e=e&255}}if(s>>>0>1){f=0;k=-1;g=1;b:while(1){h=1;e=f;while(1){f=g;c:while(1){j=1;while(1){g=a[d+(j+k)>>0]|0;i=a[d+f>>0]|0;if(g<<24>>24!=i<<24>>24)break c;if((j|0)==(h|0))break;j=j+1|0;f=j+e|0;if(f>>>0>=s>>>0){m=h;e=k;break b}}e=h+e|0;f=e+1|0;if(f>>>0>=s>>>0){m=h;e=k;break b}}h=f-k|0;if((g&255)<=(i&255))break;g=f+1|0;if(g>>>0>=s>>>0){m=h;e=k;break b}else e=f}g=e+2|0;if(g>>>0>=s>>>0){m=1;break}else{f=e+1|0;k=e}}h=0;n=-1;i=1;while(1){f=1;g=h;while(1){h=i;d:while(1){k=1;while(1){i=a[d+(k+n)>>0]|0;j=a[d+h>>0]|0;if(i<<24>>24!=j<<24>>24)break d;if((k|0)==(f|0))break;k=k+1|0;h=k+g|0;if(h>>>0>=s>>>0){h=m;g=n;i=27;break a}}g=f+g|0;h=g+1|0;if(h>>>0>=s>>>0){h=m;g=n;i=27;break a}}f=h-n|0;if((i&255)>=(j&255))break;i=h+1|0;if(i>>>0>=s>>>0){h=m;g=n;i=27;break a}else g=h}i=g+2|0;if(i>>>0>=s>>>0){h=m;f=1;i=27;break}else{h=g+1|0;n=g}}}else{h=1;e=-1;f=1;g=-1;i=27}}else{h=1;e=-1;s=0;f=1;g=-1;i=27}while(0);e:do if((i|0)==27){q=(g+1|0)>>>0>(e+1|0)>>>0;f=q?f:h;q=q?g:e;r=q+1|0;if(!(KN(d,d+f|0,r)|0))p=s-f|0;else{f=s-q+-1|0;p=0;f=(q>>>0>f>>>0?q:f)+1|0}k=s|63;m=s+-1|0;n=(p|0)!=0;o=s-f|0;e=b;j=0;g=b;while(1){h=e;do if((g-h|0)>>>0<s>>>0){i=ZN(g,0,k)|0;if(i)if((i-h|0)>>>0<s>>>0){e=0;break e}else break;else{i=g+k|0;break}}else i=g;while(0);g=a[e+m>>0]|0;f:do if(!(1<<(g&31)&c[t+(((g&255)>>>5&255)<<2)>>2])){h=0;g=s}else{g=s-(c[u+((g&255)<<2)>>2]|0)|0;if(g|0){h=0;g=n&(j|0)!=0&g>>>0<f>>>0?o:g;break}g=r>>>0>j>>>0?r:j;h=a[d+g>>0]|0;g:do if(!(h<<24>>24))g=r;else{while(1){if(h<<24>>24!=(a[e+g>>0]|0))break;g=g+1|0;h=a[d+g>>0]|0;if(!(h<<24>>24)){g=r;break g}}h=0;g=g-q|0;break f}while(0);while(1){if(g>>>0<=j>>>0)break e;g=g+-1|0;if((a[d+g>>0]|0)!=(a[e+g>>0]|0)){h=p;g=f;break}}}while(0);e=e+g|0;j=h;g=i}}while(0);l=v;return e|0}function RP(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+4304|0;k=m+16|0;j=m+8|0;d=m;f=m+96|0;h=m+20|0;e=m+4272|0;i=m+176|0;do if(b){c[d>>2]=b;c[d+4>>2]=2656256;d=mN(Wa(5,d|0)|0)|0;if((d|0)<0)b=0;else{zO(e,d);b=SP(e,i)|0;if((b|0)>=0?(a[i+b>>0]=0,yO(d,f),g=mP(i,h)|0,(g|0)>=0):0){if((c[f>>2]|0)==(c[h>>2]|0)?(c[f+72>>2]|0)==(c[h+72>>2]|0):0){c[j>>2]=d;Ya(6,j|0)|0;b=nP(i)|0;break}if(!g)c[8240]=40}c[k>>2]=d;Ya(6,k|0)|0;b=0}}else{c[8240]=22;b=0}while(0);l=m;return b|0}function SP(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;c[e+4>>2]=b;c[e+8>>2]=4095;b=mN(_a(85,e|0)|0)|0;l=d;return b|0}function TP(a){a=a|0;return UP(a)|0}function UP(a){a=a|0;return LQ(a|0)|0}function VP(a){a=a|0;return WP(a)|0}function WP(a){a=a|0;return MQ(a|0)|0}function XP(a,b,c){a=a|0;b=b|0;c=c|0;YP(a,b,c);return a|0}function YP(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;g=d;a:do if(!((g^b)&3)){f=(e|0)!=0;if(f&(g&3|0)!=0)do{g=a[d>>0]|0;a[b>>0]=g;if(!(g<<24>>24))break a;e=e+-1|0;d=d+1|0;b=b+1|0;f=(e|0)!=0}while(f&(d&3|0)!=0);if(f){if(a[d>>0]|0){b:do if(e>>>0>3){f=d;while(1){d=c[f>>2]|0;if((d&-2139062144^-2139062144)&d+-16843009|0){d=f;break b}c[b>>2]=d;e=e+-4|0;d=f+4|0;b=b+4|0;if(e>>>0>3)f=d;else break}}while(0);h=11}}else e=0}else h=11;while(0);c:do if((h|0)==11)if(!e)e=0;else while(1){h=a[d>>0]|0;a[b>>0]=h;if(!(h<<24>>24))break c;e=e+-1|0;b=b+1|0;if(!e){e=0;break}else d=d+1|0}while(0);RQ(b|0,0,e|0)|0;return}function ZP(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=l;l=l+32|0;f=g;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[f+24>>2]=0;c[f+28>>2]=0;e=a[d>>0]|0;do if(!(e<<24>>24))d=0;else{if(!(a[d+1>>0]|0)){d=b;while(1)if((a[d>>0]|0)==e<<24>>24)d=d+1|0;else break;d=d-b|0;break}do{h=f+(((e&255)>>>5&255)<<2)|0;c[h>>2]=c[h>>2]|1<<(e&31);d=d+1|0;e=a[d>>0]|0}while(e<<24>>24!=0);e=a[b>>0]|0;a:do if(!(e<<24>>24))d=b;else{d=b;do{if(!(c[f+(((e&255)>>>5&255)<<2)>>2]&1<<(e&31)))break a;d=d+1|0;e=a[d>>0]|0}while(e<<24>>24!=0)}while(0);d=d-b|0}while(0);l=g;return d|0}function _P(a){a=a|0;var b=0,e=0,f=0;do if((c[a+76>>2]|0)>=0?(RN()|0)!=0:0){b=a+4|0;e=c[b>>2]|0;if(e>>>0<(c[a+8>>2]|0)>>>0){c[b>>2]=e+1;b=d[e>>0]|0;break}else{b=yN(a)|0;break}}else f=3;while(0);do if((f|0)==3){b=a+4|0;e=c[b>>2]|0;if(e>>>0<(c[a+8>>2]|0)>>>0){c[b>>2]=e+1;b=d[e>>0]|0;break}else{b=yN(a)|0;break}}while(0);return b|0}function $P(a){a=a|0;return aQ(a)|0}function aQ(a){a=a|0;return LQ(a|0)|0}function bQ(a){a=a|0;var b=0;b=317184;c[b>>2]=a+-1;c[b+4>>2]=0;return}function cQ(){var a=0,b=0,d=0;b=317184;b=EQ(c[b>>2]|0,c[b+4>>2]|0,1284865837,1481765933)|0;b=yQ(b|0,z|0,1,0)|0;a=z;d=317184;c[d>>2]=b;c[d+4>>2]=a;a=JQ(b|0,a|0,33)|0;return a|0}function dQ(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=328793;c[d+4>>2]=a;mN(Oa(15,d|0)|0)|0;l=b;return}function eQ(){var a=0,b=0;a=l;l=l+16|0;b=a;c[b>>2]=328793;c[b+4>>2]=448;mN(Ua(39,b|0)|0)|0;l=a;return}function fQ(a){a=a|0;return gQ(a)|0}function gQ(a){a=a|0;var b=0;if(!(c[a>>2]&128))b=1;else b=(c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0?2:1;b=ig[c[a+40>>2]&63](a,0,b)|0;if((b|0)>=0)b=b-(c[a+8>>2]|0)+(c[a+4>>2]|0)+(c[a+20>>2]|0)-(c[a+28>>2]|0)|0;return b|0}function hQ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=b&255;j=b&255;do if((c[d+76>>2]|0)>=0?(RN()|0)!=0:0){if((j|0)!=(a[d+75>>0]|0)?(g=d+20|0,h=c[g>>2]|0,h>>>0<(c[d+16>>2]|0)>>>0):0){c[g>>2]=h+1;a[h>>0]=i;break}lP(d,b)|0}else k=3;while(0);do if((k|0)==3){if((j|0)!=(a[d+75>>0]|0)?(e=d+20|0,f=c[e>>2]|0,f>>>0<(c[d+16>>2]|0)>>>0):0){c[e>>2]=f+1;a[f>>0]=i;break}lP(d,b)|0}while(0);return}function iQ(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=O(e,d)|0;e=(d|0)==0?0:e;g=f+74|0;h=a[g>>0]|0;a[g>>0]=h+255|h;g=f+4|0;h=c[g>>2]|0;k=(c[f+8>>2]|0)-h|0;i=k>>>0<j>>>0?k:j;if((k|0)>0){PQ(b|0,h|0,i|0)|0;c[g>>2]=h+i;g=j-i|0;b=b+i|0}else g=j;a:do if(g){i=f+32|0;while(1){if(zN(f)|0)break;h=ig[c[i>>2]&63](f,b,g)|0;if((h+1|0)>>>0<2)break;g=g-h|0;if(!g)break a;else b=b+h|0}e=((j-g|0)>>>0)/(d>>>0)|0}while(0);return e|0}function jQ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+32|0;e=i+16|0;d=i;g=pP(305616)|0;vP(b)|0;do if(!a){a=b+60|0;if(g&524288|0){c[d>>2]=c[a>>2];c[d+4>>2]=2;c[d+8>>2]=1;Sa(221,d|0)|0}c[e>>2]=c[a>>2];c[e+4>>2]=4;c[e+8>>2]=g&-524481;if((mN(Sa(221,e|0)|0)|0)<0)h=11}else{a=oP(a,305616)|0;if(!a)h=11;else{d=a+60|0;e=c[d>>2]|0;f=c[b+60>>2]|0;if((e|0)!=(f|0)){if((kQ(e,f,g&524288)|0)<0){uP(a)|0;h=11;break}}else c[d>>2]=-1;c[b>>2]=c[b>>2]&1|c[a>>2];c[b+32>>2]=c[a+32>>2];c[b+36>>2]=c[a+36>>2];c[b+40>>2]=c[a+40>>2];c[b+12>>2]=c[a+12>>2];uP(a)|0}}while(0);if((h|0)==11){uP(b)|0;b=0}l=i;return b|0}function kQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+48|0;i=j+24|0;h=j+16|0;f=j;a:do if((a|0)!=(b|0)){g=(d&524288|0)!=0;b:do if(g)while(1){c[f>>2]=a;c[f+4>>2]=b;c[f+8>>2]=d;e=Ta(330,f|0)|0;switch(e|0){case -38:break b;case -16:break;default:break a}}while(0);do{c[h>>2]=a;c[h+4>>2]=b;e=Za(63,h|0)|0}while((e|0)==-16);if(g){c[i>>2]=b;c[i+4>>2]=2;c[i+8>>2]=1;Sa(221,i|0)|0}}else e=-22;while(0);i=mN(e)|0;l=j;return i|0}function lQ(a){a=a|0;return fQ(a)|0}function mQ(a,b){a=a|0;b=b|0;var d=0;a=l;l=l+16|0;d=a;c[d>>2]=b;PN(33264,294706,d)|0;l=a;return}function nQ(){var a=0,b=0,d=0;d=l;l=l+16|0;b=d+8|0;a=d;c[a>>2]=328793;a=Ka(10,a|0)|0;if((a|0)==-21){c[b>>2]=328793;a=Va(40,b|0)|0}b=mN(a)|0;l=d;return b|0}function oQ(){pQ();return}function pQ(){a[33339]=-1;c[8328]=0;c[8316]=c[8316]|64;return}function qQ(a,b){a=a|0;b=b|0;return +(+rQ(a,b))}function rQ(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,g=0,h=0;h=l;l=l+128|0;g=h;d=g;f=d+124|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(f|0));f=g+4|0;c[f>>2]=a;d=g+8|0;c[d>>2]=-1;c[g+44>>2]=a;c[g+76>>2]=-1;uN(g,0);e=+LO(g,1,1);d=(c[f>>2]|0)-(c[d>>2]|0)+(c[g+108>>2]|0)|0;if(b|0)c[b>>2]=d|0?a+d|0:a;l=h;return +e}function sQ(b){b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;while(1){e=a[b>>0]|0;c=e<<24>>24;f=b+1|0;if(!(xN(c)|0))break;else b=f}switch(c|0){case 45:{b=1;g=5;break}case 43:{b=0;g=5;break}default:{h=0;d=b;b=e}}if((g|0)==5){h=b;d=f;b=a[f>>0]|0}c=(b<<24>>24)+-48|0;if(c>>>0<10){b=0;do{d=d+1|0;b=(b*10|0)-c|0;c=(a[d>>0]|0)+-48|0}while(c>>>0<10)}else b=0;return (h|0?b:0-b|0)|0}function tQ(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=l;l=l+32|0;f=h;e=a[d>>0]|0;a:do if(e<<24>>24!=0?(a[d+1>>0]|0)!=0:0){c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[f+24>>2]=0;c[f+28>>2]=0;do{i=f+(((e&255)>>>5&255)<<2)|0;c[i>>2]=c[i>>2]|1<<(e&31);d=d+1|0;e=a[d>>0]|0}while(e<<24>>24!=0);e=a[b>>0]|0;if(!(e<<24>>24))d=b;else{d=b;do{if(c[f+(((e&255)>>>5&255)<<2)>>2]&1<<(e&31)|0)break a;d=d+1|0;e=a[d>>0]|0}while(e<<24>>24!=0)}}else g=3;while(0);if((g|0)==3)d=YO(b,e<<24>>24)|0;l=h;return d-b|0}function uQ(a,b){a=a|0;b=b|0;aP(a+(WO(a)|0)|0,b)|0;return a|0}function vQ(b,c){b=b|0;c=c|0;c=b+(tQ(b,c)|0)|0;return (a[c>>0]|0?c:0)|0}function wQ(){var a=0,b=0;b=l;l=l+16|0;a=b;c[a>>2]=328793;a=mN(Va(40,a|0)|0)|0;l=b;return a|0}function xQ(){}function yQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;c=a+c>>>0;return (z=b+d+(c>>>0<a>>>0|0)>>>0,c|0)|0}function zQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function AQ(b){b=b|0;var c=0;c=a[n+(b&255)>>0]|0;if((c|0)<8)return c|0;c=a[n+(b>>8&255)>>0]|0;if((c|0)<8)return c+8|0;c=a[n+(b>>16&255)>>0]|0;if((c|0)<8)return c+16|0;return (a[n+(b>>>24)>>0]|0)+24|0}function BQ(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=a;j=b;k=j;h=d;n=e;i=n;if(!k){g=(f|0)!=0;if(!i){if(g){c[f>>2]=(l>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(l>>>0)/(h>>>0)>>>0;return (z=n,f)|0}else{if(!g){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=b&0;n=0;f=0;return (z=n,f)|0}}g=(i|0)==0;do if(h){if(!g){g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=31){m=g+1|0;i=31-g|0;b=g-31>>31;h=m;a=l>>>(m>>>0)&b|k<<i;b=k>>>(m>>>0)&b;g=0;i=l<<i;break}if(!f){n=0;f=0;return (z=n,f)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;n=0;f=0;return (z=n,f)|0}g=h-1|0;if(g&h|0){i=(R(h|0)|0)+33-(R(k|0)|0)|0;p=64-i|0;m=32-i|0;j=m>>31;o=i-32|0;b=o>>31;h=i;a=m-1>>31&k>>>(o>>>0)|(k<<m|l>>>(i>>>0))&b;b=b&k>>>(i>>>0);g=l<<p&j;i=(k<<p|l>>>(o>>>0))&j|l<<m&i-33>>31;break}if(f|0){c[f>>2]=g&l;c[f+4>>2]=0}if((h|0)==1){o=j|b&0;p=a|0|0;return (z=o,p)|0}else{p=AQ(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|0;return (z=o,p)|0}}else{if(g){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}o=0;p=(k>>>0)/(h>>>0)>>>0;return (z=o,p)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}o=0;p=(k>>>0)/(i>>>0)>>>0;return (z=o,p)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}o=0;p=k>>>((AQ(i|0)|0)>>>0);return (z=o,p)|0}g=(R(i|0)|0)-(R(k|0)|0)|0;if(g>>>0<=30){b=g+1|0;i=31-g|0;h=b;a=k<<i|l>>>(b>>>0);b=k>>>(b>>>0);g=0;i=l<<i;break}if(!f){o=0;p=0;return (z=o,p)|0}c[f>>2]=a|0;c[f+4>>2]=j|b&0;o=0;p=0;return (z=o,p)|0}while(0);if(!h){k=i;j=0;i=0}else{m=d|0|0;l=n|e&0;k=yQ(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{e=j;j=g>>>31|j<<1;g=i|g<<1;e=a<<1|e>>>31|0;n=a>>>31|b<<1|0;zQ(k|0,d|0,e|0,n|0)|0;p=z;o=p>>31|((p|0)<0?-1:0)<<1;i=o&1;a=zQ(e|0,n|0,o&m|0,(((p|0)<0?-1:0)>>31|((p|0)<0?-1:0)<<1)&l|0)|0;b=z;h=h-1|0}while((h|0)!=0);k=j;j=0}h=0;if(f|0){c[f>>2]=a;c[f+4>>2]=b}o=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;p=(g<<1|0>>>31)&-2|i;return (z=o,p)|0}function CQ(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=zQ(j^a|0,i^b|0,j|0,i|0)|0;g=z;a=f^j;b=e^i;return zQ((BQ(h,g,zQ(f^c|0,e^d|0,f|0,e|0)|0,z,0)|0)^a|0,z^b|0,a|0,b|0)|0}function DQ(a,b){a=a|0;b=b|0;var c=0,d=0,e=0,f=0;f=a&65535;e=b&65535;c=O(e,f)|0;d=a>>>16;a=(c>>>16)+(O(e,d)|0)|0;e=b>>>16;b=O(e,f)|0;return (z=(a>>>16)+(O(e,d)|0)+(((a&65535)+b|0)>>>16)|0,a+b<<16|c&65535|0)|0}function EQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;var e=0,f=0;e=a;f=c;c=DQ(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function FQ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;f=l;l=l+16|0;i=f|0;h=b>>31|((b|0)<0?-1:0)<<1;g=((b|0)<0?-1:0)>>31|((b|0)<0?-1:0)<<1;k=e>>31|((e|0)<0?-1:0)<<1;j=((e|0)<0?-1:0)>>31|((e|0)<0?-1:0)<<1;a=zQ(h^a|0,g^b|0,h|0,g|0)|0;b=z;BQ(a,b,zQ(k^d|0,j^e|0,k|0,j|0)|0,z,i)|0;e=zQ(c[i>>2]^h|0,c[i+4>>2]^g|0,h|0,g|0)|0;d=z;l=f;return (z=d,e)|0}function GQ(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return BQ(a,b,c,d,0)|0}function HQ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;g=l;l=l+16|0;f=g|0;BQ(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function IQ(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>c;return a>>>c|(b&(1<<c)-1)<<32-c}z=(b|0)<0?-1:0;return b>>c-32|0}function JQ(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b>>>c;return a>>>c|(b&(1<<c)-1)<<32-c}z=0;return b>>>c-32|0}function KQ(a,b,c){a=a|0;b=b|0;c=c|0;if((c|0)<32){z=b<<c|(a&(1<<c)-1<<32-c)>>>32-c;return a<<c}z=a<<c-32;return 0}function LQ(a){a=a|0;return (a&255)<<8|a>>8&255|0}function MQ(a){a=a|0;return (a&255)<<24|(a>>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function NQ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;q=q+1|0;c[a>>2]=q;while((f|0)<(e|0)){if(!(c[d+(f<<3)>>2]|0)){c[d+(f<<3)>>2]=q;c[d+((f<<3)+4)>>2]=b;c[d+((f<<3)+8)>>2]=0;z=e;return d|0}f=f+1|0}e=e*2|0;d=gN(d|0,8*(e+1|0)|0)|0;d=NQ(a|0,b|0,d|0,e|0)|0;z=e;return d|0}function OQ(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;while((f|0)<(d|0)){e=c[b+(f<<3)>>2]|0;if(!e)break;if((e|0)==(a|0))return c[b+((f<<3)+4)>>2]|0;f=f+1|0}return 0}function PQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return af(b|0,d|0,e|0)|0;h=b|0;g=b+e|0;if((b&3)==(d&3)){while(b&3){if(!e)return h|0;a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0;e=e-1|0}e=g&-4|0;f=e-64|0;while((b|0)<=(f|0)){c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];c[b+16>>2]=c[d+16>>2];c[b+20>>2]=c[d+20>>2];c[b+24>>2]=c[d+24>>2];c[b+28>>2]=c[d+28>>2];c[b+32>>2]=c[d+32>>2];c[b+36>>2]=c[d+36>>2];c[b+40>>2]=c[d+40>>2];c[b+44>>2]=c[d+44>>2];c[b+48>>2]=c[d+48>>2];c[b+52>>2]=c[d+52>>2];c[b+56>>2]=c[d+56>>2];c[b+60>>2]=c[d+60>>2];b=b+64|0;d=d+64|0}while((b|0)<(e|0)){c[b>>2]=c[d>>2];b=b+4|0;d=d+4|0}}else{e=g-4|0;while((b|0)<(e|0)){a[b>>0]=a[d>>0]|0;a[b+1>>0]=a[d+1>>0]|0;a[b+2>>0]=a[d+2>>0]|0;a[b+3>>0]=a[d+3>>0]|0;b=b+4|0;d=d+4|0}}while((b|0)<(g|0)){a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}return h|0}function QQ(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 PQ(b,c,d)|0;return b|0}function RQ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=b+e|0;d=d&255;if((e|0)>=67){while(b&3){a[b>>0]=d;b=b+1|0}f=h&-4|0;g=f-64|0;i=d|d<<8|d<<16|d<<24;while((b|0)<=(g|0)){c[b>>2]=i;c[b+4>>2]=i;c[b+8>>2]=i;c[b+12>>2]=i;c[b+16>>2]=i;c[b+20>>2]=i;c[b+24>>2]=i;c[b+28>>2]=i;c[b+32>>2]=i;c[b+36>>2]=i;c[b+40>>2]=i;c[b+44>>2]=i;c[b+48>>2]=i;c[b+52>>2]=i;c[b+56>>2]=i;c[b+60>>2]=i;b=b+64|0}while((b|0)<(f|0)){c[b>>2]=i;b=b+4|0}}while((b|0)<(h|0)){a[b>>0]=d;b=b+1|0}return h-e|0}function SQ(a){a=+a;return a>=0.0?+A(a+.5):+N(a-.5)}function TQ(a){a=a|0;var b=0,d=0;d=a+15&-16|0;b=c[i>>2]|0;a=b+d|0;if((d|0)>0&(a|0)<(b|0)|(a|0)<0){W()|0;Ja(12);return -1}c[i>>2]=a;if((a|0)>(V()|0)?(U()|0)==0:0){c[i>>2]=b;Ja(12);return -1}return b|0}function UQ(a,b){a=a|0;b=+b;return +cg[a&31](+b)}function VQ(a,b,c){a=a|0;b=+b;c=+c;return +dg[a&3](+b,+c)}function WQ(a,b){a=a|0;b=b|0;return +eg[a&1](b|0)}function XQ(a){a=a|0;return fg[a&7]()|0}function YQ(a,b){a=a|0;b=b|0;return gg[a&511](b|0)|0}function ZQ(a,b,c){a=a|0;b=b|0;c=c|0;return hg[a&63](b|0,c|0)|0}function _Q(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return ig[a&63](b|0,c|0,d|0)|0}function $Q(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return jg[a&31](b|0,c|0,d|0,e|0)|0}function aR(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;g=g|0;h=h|0;return kg[a&3](b|0,c|0,d|0,e|0,+f,g|0,h|0)|0}function bR(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 lg[a&31](b|0,c|0,d|0,e|0,f|0)|0}function cR(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;return mg[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)|0}function dR(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 ng[a&15](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)|0}function eR(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;return og[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)|0}function fR(a){a=a|0;pg[a&15]()}function gR(a,b){a=a|0;b=+b;qg[a&3](+b)}function hR(a,b,c){a=a|0;b=+b;c=+c;rg[a&3](+b,+c)}function iR(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;sg[a&3](+b,+c,+d,+e)}function jR(a,b,c,d,e,f,g){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;tg[a&1](+b,+c,+d,+e,+f,+g)}function kR(a,b,c){a=a|0;b=+b;c=c|0;ug[a&1](+b,c|0)}function lR(a,b){a=a|0;b=b|0;vg[a&511](b|0)}function mR(a,b,c){a=a|0;b=b|0;c=+c;wg[a&3](b|0,+c)}function nR(a,b,c,d){a=a|0;b=b|0;c=+c;d=+d;xg[a&3](b|0,+c,+d)}function oR(a,b,c,d,e){a=a|0;b=b|0;c=+c;d=+d;e=+e;yg[a&3](b|0,+c,+d,+e)}function pR(a,b,c,d,e,f){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;zg[a&3](b|0,+c,+d,+e,+f)}function qR(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){a=a|0;b=b|0;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=+n;o=o|0;p=p|0;Ag[a&1](b|0,+c,+d,+e,+f,+g,+h,+i,+j,+k,+l,+m,+n,o|0,p|0)}function rR(a,b,c){a=a|0;b=b|0;c=c|0;Bg[a&255](b|0,c|0)}function sR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=+d;Cg[a&1](b|0,c|0,+d)}function tR(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Dg[a&63](b|0,c|0,d|0)}function uR(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Eg[a&63](b|0,c|0,d|0,e|0)}function vR(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Fg[a&15](b|0,c|0,d|0,e|0,f|0)}function wR(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;Gg[a&7](b|0,c|0,d|0,e|0,f|0,g|0)}function xR(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;Hg[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function yR(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;Ig[a&7](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function zR(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;Jg[a&15](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0)}function AR(a,b,c,d,e,f,g,h,i,j,k,l){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;Kg[a&15](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0)}function BR(a,b,c,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;Lg[a&1](b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0,j|0,k|0,l|0,m|0)}function CR(a,b,c,d,e,f,g,h,i,j,k,l,m,n){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;Mg[a&1](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)}function DR(a){a=+a;S(0);return 0.0}function ER(a,b){a=+a;b=+b;S(1);return 0.0}function FR(a){a=a|0;S(2);return 0.0}function GR(){S(3);return 0}function HR(){return Cb()|0}function IR(){return xc()|0}function JR(){return od()|0}function KR(a){a=a|0;S(4);return 0}function LR(a){a=a|0;return ub(a|0)|0}function MR(a){a=a|0;return Ab(a|0)|0}function NR(a){a=a|0;return vb(a|0)|0}function OR(a){a=a|0;return Db(a|0)|0}function PR(a){a=a|0;return nb(a|0)|0}function QR(a){a=a|0;return Cd(a|0)|0}function RR(a){a=a|0;return Sd(a|0)|0}function SR(a){a=a|0;return Md(a|0)|0}function TR(a){a=a|0;return Qd(a|0)|0}function UR(a){a=a|0;return yc(a|0)|0}function VR(a){a=a|0;return Rd(a|0)|0}function WR(a){a=a|0;return Pd(a|0)|0}function XR(a){a=a|0;return Od(a|0)|0}function YR(a){a=a|0;return Td(a|0)|0}function ZR(a){a=a|0;return jc(a|0)|0}function _R(a){a=a|0;return Nd(a|0)|0}function $R(a,b){a=a|0;b=b|0;S(5);return 0}function aS(a,b){a=a|0;b=b|0;return rb(a|0,b|0)|0}function bS(a,b){a=a|0;b=b|0;return sb(a|0,b|0)|0}function cS(a,b){a=a|0;b=b|0;return yb(a|0,b|0)|0}function dS(a,b){a=a|0;b=b|0;return zb(a|0,b|0)|0}function eS(a,b){a=a|0;b=b|0;return Fd(a|0,b|0)|0}function fS(a,b){a=a|0;b=b|0;return ld(a|0,b|0)|0}function gS(a,b,c){a=a|0;b=b|0;c=c|0;S(6);return 0}function hS(a,b,c){a=a|0;b=b|0;c=c|0;return wb(a|0,b|0,c|0)|0}function iS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(7);return 0}function jS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return tb(a|0,b|0,c|0,d|0)|0}function kS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return pb(a|0,b|0,c|0,d|0)|0}function lS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return qb(a|0,b|0,c|0,d|0)|0}function mS(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return xb(a|0,b|0,c|0,d|0)|0}function nS(a,b,c,d,e,f,g){a=a|0;b=b|0;c=c|0;d=d|0;e=+e;f=f|0;g=g|0;S(8);return 0}function oS(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(9);return 0}function pS(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;return ob(a|0,b|0,c|0,d|0,e|0)|0}function qS(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;S(10);return 0}function rS(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;S(11);return 0}function sS(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;S(12);return 0}function tS(){S(13)}function uS(){Wd()}function vS(){be()}function wS(){Yc()}function xS(){Zc()}function yS(a){a=+a;S(14)}function zS(a){a=+a;mc(+a)}function AS(a){a=+a;nc(+a)}function BS(a){a=+a;Ud(+a)}function CS(a,b){a=+a;b=+b;S(15)}function DS(a,b){a=+a;b=+b;Kc(+a,+b)}function ES(a,b){a=+a;b=+b;Lc(+a,+b)}function FS(a,b){a=+a;b=+b;$d(+a,+b)}function GS(a,b,c,d){a=+a;b=+b;c=+c;d=+d;S(16)}function HS(a,b,c,d){a=+a;b=+b;c=+c;d=+d;de(+a,+b,+c,+d)}function IS(a,b,c,d){a=+a;b=+b;c=+c;d=+d;lc(+a,+b,+c,+d)}function JS(a,b,c,d){a=+a;b=+b;c=+c;d=+d;cc(+a,+b,+c,+d)}function KS(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=+d;e=+e;f=+f;S(17)}function LS(a,b,c,d,e,f){a=+a;b=+b;c=+c;d=+d;e=+e;f=+f;bd(+a,+b,+c,+d,+e,+f)}function MS(a,b){a=+a;b=b|0;S(18)}function NS(a,b){a=+a;b=b|0;ee(+a,b|0)}function OS(a){a=a|0;S(19)}function PS(a){a=a|0;Fc(a|0)}function QS(a){a=a|0;sc(a|0)}function RS(a){a=a|0;Dc(a|0)}function SS(a){a=a|0;Vd(a|0)}function TS(a){a=a|0;Oe(a|0)}function US(a){a=a|0;Pe(a|0)}function VS(a){a=a|0;Cc(a|0)}function WS(a){a=a|0;Wc(a|0)}function XS(a){a=a|0;pc(a|0)}function YS(a){a=a|0;bc(a|0)}function ZS(a){a=a|0;Yd(a|0)}function _S(a){a=a|0;Xd(a|0)}function $S(a){a=a|0;Xc(a|0)}function aT(a){a=a|0;Oc(a|0)}function bT(a){a=a|0;Ic(a|0)}function cT(a){a=a|0;Vc(a|0)}function dT(a){a=a|0;Nc(a|0)}function eT(a){a=a|0;ad(a|0)}function fT(a){a=a|0;zc(a|0)}function gT(a){a=a|0;kc(a|0)}function hT(a){a=a|0;oc(a|0)}function iT(a){a=a|0;Jc(a|0)}function jT(a){a=a|0;ke(a|0)}function kT(a){a=a|0;hd(a|0)}function lT(a){a=a|0;Vb(a|0)}function mT(a){a=a|0;dc(a|0)}function nT(a,b){a=a|0;b=+b;S(20)}function oT(a,b){a=a|0;b=+b;ve(a|0,+b)}function pT(a,b){a=a|0;b=+b;Qe(a|0,+b)}function qT(a,b,c){a=a|0;b=+b;c=+c;S(21)}function rT(a,b,c){a=a|0;b=+b;c=+c;ze(a|0,+b,+c)}function sT(a,b,c){a=a|0;b=+b;c=+c;Se(a|0,+b,+c)}function tT(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;S(22)}function uT(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;De(a|0,+b,+c,+d)}function vT(a,b,c,d){a=a|0;b=+b;c=+c;d=+d;Ue(a|0,+b,+c,+d)}function wT(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;S(23)}function xT(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;He(a|0,+b,+c,+d,+e)}function yT(a,b,c,d,e){a=a|0;b=+b;c=+c;d=+d;e=+e;We(a|0,+b,+c,+d,+e)}function zT(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o){a=a|0;b=+b;c=+c;d=+d;e=+e;f=+f;g=+g;h=+h;i=+i;j=+j;k=+k;l=+l;m=+m;n=n|0;o=o|0;S(24)}function AT(a,b){a=a|0;b=b|0;S(25)}function BT(a,b){a=a|0;b=b|0;_d(a|0,b|0)}function CT(a,b){a=a|0;b=b|0;sd(a|0,b|0)}function DT(a,b){a=a|0;b=b|0;pd(a|0,b|0)}function ET(a,b){a=a|0;b=b|0;md(a|0,b|0)}function FT(a,b){a=a|0;b=b|0;fd(a|0,b|0)}function GT(a,b){a=a|0;b=b|0;Gc(a|0,b|0)}function HT(a,b){a=a|0;b=b|0;ac(a|0,b|0)}function IT(a,b){a=a|0;b=b|0;cd(a|0,b|0)}function JT(a,b){a=a|0;b=b|0;Ac(a|0,b|0)}function KT(a,b){a=a|0;b=b|0;ed(a|0,b|0)}function LT(a,b){a=a|0;b=b|0;Ec(a|0,b|0)}function MT(a,b){a=a|0;b=b|0;$b(a|0,b|0)}function NT(a,b){a=a|0;b=b|0;xe(a|0,b|0)}function OT(a,b){a=a|0;b=b|0;Yb(a|0,b|0)}function PT(a,b){a=a|0;b=b|0;Re(a|0,b|0)}function QT(a,b){a=a|0;b=b|0;Te(a|0,b|0)}function RT(a,b){a=a|0;b=b|0;Ve(a|0,b|0)}function ST(a,b){a=a|0;b=b|0;Xe(a|0,b|0)}function TT(a,b){a=a|0;b=b|0;Wb(a|0,b|0)}function UT(a,b){a=a|0;b=b|0;Mc(a|0,b|0)}function VT(a,b){a=a|0;b=b|0;Zb(a|0,b|0)}function WT(a,b){a=a|0;b=b|0;dd(a|0,b|0)}function XT(a,b){a=a|0;b=b|0;Bc(a|0,b|0)}function YT(a,b){a=a|0;b=b|0;_b(a|0,b|0)}function ZT(a,b){a=a|0;b=b|0;ud(a|0,b|0)}function _T(a,b){a=a|0;b=b|0;gd(a|0,b|0)}function $T(a,b){a=a|0;b=b|0;Hc(a|0,b|0)}function aU(a,b){a=a|0;b=b|0;Ye(a|0,b|0)}function bU(a,b){a=a|0;b=b|0;fc(a|0,b|0)}function cU(a,b){a=a|0;b=b|0;ec(a|0,b|0)}function dU(a,b){a=a|0;b=b|0;le(a|0,b|0)}function eU(a,b){a=a|0;b=b|0;Ld(a|0,b|0)}function fU(a,b){a=a|0;b=b|0;Rc(a|0,b|0)}function gU(a,b,c){a=a|0;b=b|0;c=+c;S(26)}function hU(a,b,c){a=a|0;b=b|0;c=+c;qe(a|0,b|0,+c)}function iU(a,b,c){a=a|0;b=b|0;c=c|0;S(27)}function jU(a,b,c){a=a|0;b=b|0;c=c|0;Dd(a|0,b|0,c|0)}function kU(a,b,c){a=a|0;b=b|0;c=c|0;Ed(a|0,b|0,c|0)}function lU(a,b,c){a=a|0;b=b|0;c=c|0;re(a|0,b|0,c|0)}function mU(a,b,c){a=a|0;b=b|0;c=c|0;te(a|0,b|0,c|0)}function nU(a,b,c){a=a|0;b=b|0;c=c|0;nd(a|0,b|0,c|0)}function oU(a,b,c){a=a|0;b=b|0;c=c|0;xd(a|0,b|0,c|0)}function pU(a,b,c){a=a|0;b=b|0;c=c|0;Gd(a|0,b|0,c|0)}function qU(a,b,c){a=a|0;b=b|0;c=c|0;Hd(a|0,b|0,c|0)}function rU(a,b,c){a=a|0;b=b|0;c=c|0;Jd(a|0,b|0,c|0)}function sU(a,b,c){a=a|0;b=b|0;c=c|0;Kd(a|0,b|0,c|0)}function tU(a,b,c){a=a|0;b=b|0;c=c|0;Id(a|0,b|0,c|0)}function uU(a,b,c){a=a|0;b=b|0;c=c|0;Be(a|0,b|0,c|0)}function vU(a,b,c){a=a|0;b=b|0;c=c|0;ye(a|0,b|0,c|0)}function wU(a,b,c){a=a|0;b=b|0;c=c|0;Ce(a|0,b|0,c|0)}function xU(a,b,c){a=a|0;b=b|0;c=c|0;Ge(a|0,b|0,c|0)}function yU(a,b,c){a=a|0;b=b|0;c=c|0;Ke(a|0,b|0,c|0)}function zU(a,b,c){a=a|0;b=b|0;c=c|0;we(a|0,b|0,c|0)}function AU(a,b,c){a=a|0;b=b|0;c=c|0;Ae(a|0,b|0,c|0)}function BU(a,b,c){a=a|0;b=b|0;c=c|0;Ee(a|0,b|0,c|0)}function CU(a,b,c){a=a|0;b=b|0;c=c|0;Ie(a|0,b|0,c|0)}function DU(a,b,c){a=a|0;b=b|0;c=c|0;Bd(a|0,b|0,c|0)}function EU(a,b,c){a=a|0;b=b|0;c=c|0;wd(a|0,b|0,c|0)}function FU(a,b,c){a=a|0;b=b|0;c=c|0;Xb(a|0,b|0,c|0)}function GU(a,b,c){a=a|0;b=b|0;c=c|0;td(a|0,b|0,c|0)}function HU(a,b,c){a=a|0;b=b|0;c=c|0;Zd(a|0,b|0,c|0)}function IU(a,b,c){a=a|0;b=b|0;c=c|0;Pc(a|0,b|0,c|0)}function JU(a,b,c){a=a|0;b=b|0;c=c|0;se(a|0,b|0,c|0)}function KU(a,b,c){a=a|0;b=b|0;c=c|0;ie(a|0,b|0,c|0)}function LU(a,b,c){a=a|0;b=b|0;c=c|0;me(a|0,b|0,c|0)}function MU(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(28)}function NU(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;hc(a|0,b|0,c|0,d|0)}function OU(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ic(a|0,b|0,c|0,d|0)}function PU(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Fe(a|0,b|0,c|0,d|0)}function QU(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Le(a|0,b|0,c|0,d|0)}function RU(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Me(a|0,b|0,c|0,d|0)}function SU(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Ne(a|0,b|0,c|0,d|0)}function TU(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;kd(a|0,b|0,c|0,d|0)}function UU(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;he(a|0,b|0,c|0,d|0)}function VU(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Ad(a|0,b|0,c|0,d|0)}function WU(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;yd(a|0,b|0,c|0,d|0)}function XU(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;zd(a|0,b|0,c|0,d|0)}function YU(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;vd(a|0,b|0,c|0,d|0)}function ZU(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;_c(a|0,b|0,c|0,d|0)}function _U(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qd(a|0,b|0,c|0,d|0)}function $U(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;rd(a|0,b|0,c|0,d|0)}function aV(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;_e(a|0,b|0,c|0,d|0)}function bV(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;oe(a|0,b|0,c|0,d|0)}function cV(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;rc(a|0,b|0,c|0,d|0)}function dV(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Sc(a|0,b|0,c|0,d|0)}function eV(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;Qc(a|0,b|0,c|0,d|0)}function fV(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;$e(a|0,b|0,c|0,d|0)}function gV(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;fe(a|0,b|0,c|0,d|0)}function hV(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;qc(a|0,b|0,c|0,d|0)}function iV(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ce(a|0,b|0,c|0,d|0)}function jV(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;gc(a|0,b|0,c|0,d|0)}function kV(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;je(a|0,b|0,c|0,d|0)}function lV(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;ne(a|0,b|0,c|0,d|0)}function mV(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;S(29)}function nV(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Je(a|0,b|0,c|0,d|0,e|0)}function oV(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;$c(a|0,b|0,c|0,d|0,e|0)}function pV(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;ge(a|0,b|0,c|0,d|0,e|0)}function qV(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;Tc(a|0,b|0,c|0,d|0,e|0)}function rV(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;S(30)}function sV(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Uc(a|0,b|0,c|0,d|0,e|0,f|0)}function tV(a,b,c,d,e,f){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;Ze(a|0,b|0,c|0,d|0,e|0,f|0)}function uV(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;S(31)}function vV(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;ae(a|0,b|0,c|0,d|0,e|0,f|0,g|0)}function wV(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;jd(a|0,b|0,c|0,d|0,e|0,f|0,g|0)}function xV(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;id(a|0,b|0,c|0,d|0,e|0,f|0,g|0)}function yV(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;S(32)}function zV(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;tc(a|0,b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function AV(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;vc(a|0,b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function BV(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;wc(a|0,b|0,c|0,d|0,e|0,f|0,g|0,h|0)}function CV(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;S(33)}function DV(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;uc(a|0,b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function EV(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;pe(a|0,b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function FV(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;ue(a|0,b|0,c|0,d|0,e|0,f|0,g|0,h|0,i|0)}function GV(a,b,c,d,e,f,g,h,i,j,k){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;S(34)}function HV(a,b,c,d,e,f,g,h,i,j,k,l){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;S(35)}function IV(a,b,c,d,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;S(36)}
|
|
function Wu(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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;_=l;l=l+16|0;T=_;Z=b+32|0;j=c[Z>>2]|0;if(j>>>0>=(c[b+36>>2]|0)>>>0)Jn(c[b>>2]|0,278648,50331798,278670);c[Z>>2]=j+1;x=b+40|0;j=c[x>>2]|0;y=b+44|0;if(j>>>0>=(c[y>>2]|0)>>>0){Y=b;Y=c[Y>>2]|0;Jn(Y,278648,50331806,278702)}K=b+16|0;L=b+20|0;V=b+12|0;W=b+8|0;z=b+4|0;U=b+28|0;Y=b+24|0;o=d;v=e;d=j;a:while(1){c[x>>2]=d+1;t=o+1|0;w=a[o>>0]|0;b:do switch(w<<24>>24){case 1:{b=v;d=680;break a}case 9:{d=331;break a}case 10:{d=394;break a}case 11:{d=491;break a}case 12:{d=514;break a}case 14:case 13:{d=571;break a}case 2:{s=c[b>>2]|0;p=c[L>>2]|0;if(!(t>>>0<p>>>0?t>>>0>=(c[K>>2]|0)>>>0:0)){d=27;break a}e=o+2|0;j=a[t>>0]|0;d=j&255;do if(j<<24>>24<=-1){if((j&255)<192){d=27;break a}if((j&255)<224){o=1;j=d&31;break}if((j&255)<240){o=2;j=d&15;break}if((j&255)<248){o=3;j=d&7;break}if((j&255)<252){o=4;j=d&3;break}if((j&255)>=254)if(j<<24>>24==-1){d=27;break a}else{o=6;j=0;break}else{o=5;j=d&1;break}}else{o=0;j=d&127}while(0);if((e+o|0)>>>0>p>>>0){d=27;break a}if(!o)r=j;else while(1){d=e+1|0;j=a[e>>0]&63|j<<6;if((o|0)>1){e=d;o=o+-1|0}else{e=d;r=j;break}}d=v;q=c[V>>2]|0;if(d>>>0<q>>>0){if(d>>>0<(c[W>>2]|0)>>>0){d=47;break a}j=d+1|0;d=a[d>>0]|0;o=d&255;do if(d<<24>>24<=-1){if((d&255)<192){d=47;break a}if((d&255)<224){p=1;d=o&31;break}if((d&255)<240){p=2;d=o&15;break}if((d&255)<248){p=3;d=o&7;break}if((d&255)<252){p=4;d=o&3;break}if((d&255)>=254)if(d<<24>>24==-1){d=47;break a}else{p=6;d=0;break}else{p=5;d=o&1;break}}else{p=0;d=o&127}while(0);if((j+p|0)>>>0>q>>>0){d=47;break a}if(p)while(1){o=j+1|0;d=a[j>>0]&63|d<<6;if((p|0)>1){j=o;p=p+-1|0}else{j=o;break}}if(c[z>>2]&2){w=or(0,d,-1,-1,1)|0;d=(w|0)<0|(d|0)>127&(w|0)<128?d:w}}else{j=v;d=-1}if((r|0)!=(d|0)){d=681;break a}break}case 3:{j=v;p=c[V>>2]|0;if(j>>>0>=p>>>0){d=681;break a}q=c[b>>2]|0;if(j>>>0<(c[W>>2]|0)>>>0){d=70;break a}d=j+1|0;j=a[j>>0]|0;e=j&255;do if(j<<24>>24<=-1){if((j&255)<192){d=70;break a}if((j&255)<224){o=1;j=e&31;break}if((j&255)<240){o=2;j=e&15;break}if((j&255)<248){o=3;j=e&7;break}if((j&255)<252){o=4;j=e&3;break}if((j&255)>=254)if(j<<24>>24==-1){d=70;break a}else{o=6;j=0;break}else{o=5;j=e&1;break}}else{o=0;j=e&127}while(0);if((d+o|0)>>>0>p>>>0){d=70;break a}if(o)while(1){e=d+1|0;j=a[d>>0]&63|j<<6;if((o|0)>1){d=e;o=o+-1|0}else{d=e;break}}if(c[z>>2]&2){w=or(0,j,-1,-1,1)|0;j=(w|0)<0|(j|0)>127&(w|0)<128?j:w}if((j|0)<0){d=681;break a}if((j|0)<8232)switch(j|0){case 10:case 13:{d=681;break a}default:{e=t;j=d;break b}}else switch(j|0){case 8232:case 8233:{d=681;break a}default:{e=t;j=d;break b}}}case 5:case 4:{s=c[b>>2]|0;p=c[L>>2]|0;if(!(t>>>0<p>>>0?t>>>0>=(c[K>>2]|0)>>>0:0)){d=93;break a}e=o+2|0;j=a[t>>0]|0;d=j&255;do if(j<<24>>24<=-1){if((j&255)<192){d=93;break a}if((j&255)<224){o=1;j=d&31;break}if((j&255)<240){o=2;j=d&15;break}if((j&255)<248){o=3;j=d&7;break}if((j&255)<252){o=4;j=d&3;break}if((j&255)>=254)if(j<<24>>24==-1){d=93;break a}else{o=6;j=0;break}else{o=5;j=d&1;break}}else{o=0;j=d&127}while(0);if((e+o|0)>>>0>p>>>0){d=93;break a}if(!o)r=j;else while(1){d=e+1|0;j=a[e>>0]&63|j<<6;if((o|0)>1){e=d;o=o+-1|0}else{e=d;r=j;break}}d=v;q=c[V>>2]|0;if(d>>>0>=q>>>0){d=681;break a}if(d>>>0<(c[W>>2]|0)>>>0){d=113;break a}j=d+1|0;d=a[d>>0]|0;o=d&255;do if(d<<24>>24<=-1){if((d&255)<192){d=113;break a}if((d&255)<224){p=1;d=o&31;break}if((d&255)<240){p=2;d=o&15;break}if((d&255)<248){p=3;d=o&7;break}if((d&255)<252){p=4;d=o&3;break}if((d&255)>=254)if(d<<24>>24==-1){d=113;break a}else{p=6;d=0;break}else{p=5;d=o&1;break}}else{p=0;d=o&127}while(0);if((j+p|0)>>>0>q>>>0){d=113;break a}if(p)while(1){o=j+1|0;d=a[j>>0]&63|d<<6;if((p|0)>1){j=o;p=p+-1|0}else{j=o;break}}if(!(c[z>>2]&2))v=d;else{v=or(0,d,-1,-1,1)|0;v=(v|0)<0|(d|0)>127&(v|0)<128?d:v}if((v|0)<0){d=681;break a}if(!r)d=0;else{t=c[K>>2]|0;u=c[L>>2]|0;s=r;d=0;do{if(!(e>>>0>=t>>>0&e>>>0<u>>>0)){d=137;break a}q=e+1|0;e=a[e>>0]|0;o=e&255;do if(e<<24>>24<=-1){if((e&255)<192){d=137;break a}if((e&255)<224){p=1;e=o&31;break}if((e&255)<240){p=2;e=o&15;break}if((e&255)<248){p=3;e=o&7;break}if((e&255)<252){p=4;e=o&3;break}if((e&255)>=254)if(e<<24>>24==-1){d=137;break a}else{p=6;e=0;break}else{p=5;e=o&1;break}}else{p=0;e=o&127}while(0);if((q+p|0)>>>0>u>>>0){d=137;break a}if(!p){o=q;r=e}else while(1){o=q+1|0;e=a[q>>0]&63|e<<6;if((p|0)>1){q=o;p=p+-1|0}else{r=e;break}}if(!(o>>>0>=t>>>0&o>>>0<u>>>0)){d=156;break a}e=o+1|0;o=a[o>>0]|0;p=o&255;do if(o<<24>>24<=-1){if((o&255)<192){d=156;break a}if((o&255)<224){q=1;o=p&31;break}if((o&255)<240){q=2;o=p&15;break}if((o&255)<248){q=3;o=p&7;break}if((o&255)<252){q=4;o=p&3;break}if((o&255)>=254)if(o<<24>>24==-1){d=156;break a}else{q=6;o=0;break}else{q=5;o=p&1;break}}else{q=0;o=p&127}while(0);if((e+q|0)>>>0>u>>>0){d=156;break a}if(q)while(1){p=e+1|0;o=a[e>>0]&63|o<<6;if((q|0)>1){e=p;q=q+-1|0}else{e=p;break}}d=(v|0)<(r|0)|(v|0)>(o|0)?d:1;s=s+-1|0}while((s|0)!=0)}d=(d|0)!=0;if(w<<24>>24==4)if(d)break b;else{d=681;break a}else if(d){d=681;break a}else break b}case 16:{j=v;d=c[W>>2]|0;if(j>>>0>d>>>0){r=c[z>>2]|0;if(!(r&4)){d=681;break a}q=c[b>>2]|0;p=c[V>>2]|0;if(d>>>0>j>>>0|p>>>0<j>>>0){d=166;break a}else e=j;while(1){j=e+-1|0;if(j>>>0<d>>>0){d=166;break a}o=a[j>>0]|0;if((o&-64)<<24>>24==-128)e=j;else break}if(j>>>0>=p>>>0){d=681;break a}j=o&255;do if(o<<24>>24<=-1){if((o&255)<192){d=185;break a}if((o&255)<224){d=1;j=j&31;break}if((o&255)<240){d=2;j=j&15;break}if((o&255)<248){d=3;j=j&7;break}if((o&255)<252){d=4;j=j&3;break}if((o&255)>=254)if(o<<24>>24==-1){d=185;break a}else{d=6;j=0;break}else{d=5;j=j&1;break}}else{d=0;j=j&127}while(0);if((e+d|0)>>>0>p>>>0){d=185;break a}if(d)while(1){j=a[e>>0]&63|j<<6;if((d|0)>1){e=e+1|0;d=d+-1|0}else break}if(r&2){w=or(0,j,-1,-1,1)|0;j=(w|0)<0|(j|0)>127&(w|0)<128?j:w}if((j|0)<8232)switch(j|0){case 10:case 13:{e=t;j=v;break b}default:{d=681;break a}}else switch(j|0){case 8232:case 8233:{e=t;j=v;break b}default:{d=681;break a}}}else{e=t;j=v}break}case 17:{j=v;p=c[V>>2]|0;if(j>>>0<p>>>0){q=c[b>>2]|0;if(j>>>0<(c[W>>2]|0)>>>0){d=208;break a}e=j+1|0;j=a[j>>0]|0;o=j&255;do if(j<<24>>24<=-1){if((j&255)<192){d=208;break a}if((j&255)<224){d=1;j=o&31;break}if((j&255)<240){d=2;j=o&15;break}if((j&255)<248){d=3;j=o&7;break}if((j&255)<252){d=4;j=o&3;break}if((j&255)>=254)if(j<<24>>24==-1){d=208;break a}else{d=6;j=0;break}else{d=5;j=o&1;break}}else{d=0;j=o&127}while(0);if((e+d|0)>>>0>p>>>0){d=208;break a}if(d)while(1){j=a[e>>0]&63|j<<6;if((d|0)>1){e=e+1|0;d=d+-1|0}else break}if(c[z>>2]&2){w=or(0,j,-1,-1,1)|0;j=(w|0)<0|(j|0)>127&(w|0)<128?j:w}if((j|0)>=0){if(!(c[z>>2]&4)){d=681;break a}if((j|0)<8232)switch(j|0){case 10:case 13:{e=t;j=v;break b}default:{d=681;break a}}else switch(j|0){case 8232:case 8233:{e=t;j=v;break b}default:{d=681;break a}}}else{e=t;j=v}}else{e=t;j=v}break}case 19:case 18:{s=v;j=c[W>>2]|0;if(s>>>0>j>>>0){q=c[b>>2]|0;p=c[V>>2]|0;if(j>>>0>s>>>0|p>>>0<s>>>0){d=218;break a}else e=s;while(1){d=e+-1|0;if(d>>>0<j>>>0){d=218;break a}o=a[d>>0]|0;if((o&-64)<<24>>24==-128)e=d;else break}if(d>>>0<p>>>0){j=o&255;do if(o<<24>>24<=-1){if((o&255)<192){d=237;break a}if((o&255)<224){d=1;j=j&31;break}if((o&255)<240){d=2;j=j&15;break}if((o&255)<248){d=3;j=j&7;break}if((o&255)<252){d=4;j=j&3;break}if((o&255)>=254)if(o<<24>>24==-1){d=237;break a}else{d=6;j=0;break}else{d=5;j=j&1;break}}else{d=0;j=j&127}while(0);if((e+d|0)>>>0>p>>>0){d=237;break a}if(d)while(1){j=a[e>>0]&63|j<<6;if((d|0)>1){e=e+1|0;d=d+-1|0}else break}if(c[z>>2]&2){u=or(0,j,-1,-1,1)|0;j=(u|0)<0|(j|0)>127&(u|0)<128?j:u}}else j=-1;r=((j+-48|0)>>>0<10|(j+-97|0)>>>0<26|((j|0)==95|(j+-65|0)>>>0<26))&1}else r=0;p=c[V>>2]|0;if(s>>>0<p>>>0){q=c[b>>2]|0;if(s>>>0<(c[W>>2]|0)>>>0){d=260;break a}e=s+1|0;j=a[s>>0]|0;o=j&255;do if(j<<24>>24<=-1){if((j&255)<192){d=260;break a}if((j&255)<224){d=1;j=o&31;break}if((j&255)<240){d=2;j=o&15;break}if((j&255)<248){d=3;j=o&7;break}if((j&255)<252){d=4;j=o&3;break}if((j&255)>=254)if(j<<24>>24==-1){d=260;break a}else{d=6;j=0;break}else{d=5;j=o&1;break}}else{d=0;j=o&127}while(0);if((e+d|0)>>>0>p>>>0){d=260;break a}if(d)while(1){j=a[e>>0]&63|j<<6;if((d|0)>1){e=e+1|0;d=d+-1|0}else break}if(c[z>>2]&2){u=or(0,j,-1,-1,1)|0;j=(u|0)<0|(j|0)>127&(u|0)<128?j:u}j=((j+-48|0)>>>0<10|(j+-97|0)>>>0<26|((j|0)==95|(j+-65|0)>>>0<26))&1}else j=0;j=(r|0)==(j|0);if(w<<24>>24==18)if(j){d=681;break a}else{e=t;j=v;break b}else if(j){e=t;j=v;break b}else{d=681;break a}}case 6:{q=c[b>>2]|0;p=c[L>>2]|0;if(!(t>>>0<p>>>0?t>>>0>=(c[K>>2]|0)>>>0:0)){d=285;break a}d=o+2|0;j=a[t>>0]|0;e=j&255;do if(j<<24>>24<=-1){if((j&255)<192){d=285;break a}if((j&255)<224){o=1;j=e&31;break}if((j&255)<240){o=2;j=e&15;break}if((j&255)<248){o=3;j=e&7;break}if((j&255)<252){o=4;j=e&3;break}if((j&255)>=254)if(j<<24>>24==-1){d=285;break a}else{o=6;j=0;break}else{o=5;j=e&1;break}}else{o=0;j=e&127}while(0);if((d+o|0)>>>0>p>>>0){d=285;break a}if(o)while(1){e=d+1|0;j=a[d>>0]&63|j<<6;if((o|0)>1){d=e;o=o+-1|0}else{d=e;break}}e=j>>>1;e=d+((j&1|0)==0?e:0-e|0)|0;j=v;break}case 7:{q=c[b>>2]|0;p=c[L>>2]|0;if(!(t>>>0<p>>>0?t>>>0>=(c[K>>2]|0)>>>0:0)){d=306;break a}o=o+2|0;j=a[t>>0]|0;d=j&255;do if(j<<24>>24<=-1){if((j&255)<192){d=306;break a}if((j&255)<224){e=1;j=d&31;break}if((j&255)<240){e=2;j=d&15;break}if((j&255)<248){e=3;j=d&7;break}if((j&255)<252){e=4;j=d&3;break}if((j&255)>=254)if(j<<24>>24==-1){d=306;break a}else{e=6;j=0;break}else{e=5;j=d&1;break}}else{e=0;j=d&127}while(0);if((o+e|0)>>>0>p>>>0){d=306;break a}if(e)while(1){d=o+1|0;j=a[o>>0]&63|j<<6;if((e|0)>1){o=d;e=e+-1|0}else{o=d;break}}d=j>>>1;e=Wu(b,o,v)|0;if(e|0){d=309;break a}e=o+((j&1|0)==0?d:0-d|0)|0;j=v;break}case 8:{q=c[b>>2]|0;p=c[L>>2]|0;if(!(t>>>0<p>>>0?t>>>0>=(c[K>>2]|0)>>>0:0)){d=328;break a}e=o+2|0;j=a[t>>0]|0;d=j&255;do if(j<<24>>24<=-1){if((j&255)<192){d=328;break a}if((j&255)<224){o=1;j=d&31;break}if((j&255)<240){o=2;j=d&15;break}if((j&255)<248){o=3;j=d&7;break}if((j&255)<252){o=4;j=d&3;break}if((j&255)>=254)if(j<<24>>24==-1){d=328;break a}else{o=6;j=0;break}else{o=5;j=d&1;break}}else{o=0;j=d&127}while(0);if((e+o|0)>>>0>p>>>0){d=328;break a}if(o)while(1){d=e+1|0;j=a[e>>0]&63|j<<6;if((o|0)>1){e=d;o=o+-1|0}else{e=d;break}}w=j>>>1;j=Wu(b,e+((j&1|0)==0?w:0-w|0)|0,v)|0;if(!j)j=v;else{d=330;break a}break}case 15:{q=c[b>>2]|0;p=c[L>>2]|0;if(!(t>>>0<p>>>0?t>>>0>=(c[K>>2]|0)>>>0:0)){d=629;break a}e=o+2|0;j=a[t>>0]|0;d=j&255;do if(j<<24>>24<=-1){if((j&255)<192){d=629;break a}if((j&255)<224){o=1;j=d&31;break}if((j&255)<240){o=2;j=d&15;break}if((j&255)<248){o=3;j=d&7;break}if((j&255)<252){o=4;j=d&3;break}if((j&255)>=254)if(j<<24>>24==-1){d=629;break a}else{o=6;j=0;break}else{o=5;j=d&1;break}}else{o=0;j=d&127}while(0);if((e+o|0)>>>0>p>>>0){d=629;break a}if(o)while(1){d=e+1|0;j=a[e>>0]&63|j<<6;if((o|0)>1){e=d;o=o+-1|0}else{e=d;break}}j=j<<1;if(j>>>0<2){b=q;d=682;break a}u=j|1;if(u>>>0>=(c[U>>2]|0)>>>0){b=q;d=682;break a}w=c[Y>>2]|0;j=c[w+(j<<2)>>2]|0;if((j|0)!=0?j>>>0<(c[w+(u<<2)>>2]|0)>>>0:0){o=j;j=v;while(1){s=c[V>>2]|0;if(o>>>0<s>>>0){r=c[b>>2]|0;if(o>>>0<(c[W>>2]|0)>>>0){d=653;break a}d=o+1|0;o=a[o>>0]|0;p=o&255;do if(o<<24>>24<=-1){if((o&255)<192){d=653;break a}if((o&255)<224){q=1;o=p&31;break}if((o&255)<240){q=2;o=p&15;break}if((o&255)<248){q=3;o=p&7;break}if((o&255)<252){q=4;o=p&3;break}if((o&255)>=254)if(o<<24>>24==-1){d=653;break a}else{q=6;o=0;break}else{q=5;o=p&1;break}}else{q=0;o=p&127}while(0);if((d+q|0)>>>0>s>>>0){d=653;break a}if(q)while(1){p=d+1|0;o=a[d>>0]&63|o<<6;if((q|0)>1){d=p;q=q+-1|0}else{d=p;break}}if(!(c[z>>2]&2))t=d;else{w=or(0,o,-1,-1,1)|0;t=d;s=c[V>>2]|0;o=(w|0)<0|(o|0)>127&(w|0)<128?o:w}}else{t=o;o=-1}d=j;do if(d>>>0<s>>>0){r=c[b>>2]|0;if(d>>>0<(c[W>>2]|0)>>>0){d=675;break a}j=d+1|0;d=a[d>>0]|0;p=d&255;do if(d<<24>>24<=-1){if((d&255)<192){d=675;break a}if((d&255)<224){q=1;d=p&31;break}if((d&255)<240){q=2;d=p&15;break}if((d&255)<248){q=3;d=p&7;break}if((d&255)<252){q=4;d=p&3;break}if((d&255)>=254)if(d<<24>>24==-1){d=675;break a}else{q=6;d=0;break}else{q=5;d=p&1;break}}else{q=0;d=p&127}while(0);if((j+q|0)>>>0>s>>>0){d=675;break a}if(q)while(1){p=j+1|0;d=a[j>>0]&63|d<<6;if((q|0)>1){j=p;q=q+-1|0}else{j=p;break}}if(!(c[z>>2]&2))break;w=or(0,d,-1,-1,1)|0;d=(w|0)<0|(d|0)>127&(w|0)<128?d:w}else d=-1;while(0);if((o|0)!=(d|0)){d=681;break a}if(t>>>0<(c[(c[Y>>2]|0)+(u<<2)>>2]|0)>>>0)o=t;else break}}else j=v;break}default:{d=8;break a}}while(0);d=c[x>>2]|0;if(d>>>0>=(c[y>>2]|0)>>>0){d=6;break}else{o=e;v=j}}c:switch(d|0){case 6:{_=c[b>>2]|0;Jn(_,278648,50331806,278702);break}case 8:{_=c[b>>2]|0;ko(_,278648,667);break}case 27:{ko(s,270005,282);break}case 47:{ko(s,270005,282);break}case 70:{ko(q,270005,282);break}case 93:{ko(s,270005,282);break}case 113:{ko(s,270005,282);break}case 137:{ko(c[b>>2]|0,270005,282);break}case 156:{ko(c[b>>2]|0,270005,282);break}case 166:{ko(q,278648,70);break}case 185:{ko(q,270005,282);break}case 208:{ko(q,270005,282);break}case 218:{ko(q,278648,70);break}case 237:{ko(q,270005,282);break}case 260:{ko(q,270005,282);break}case 285:{ko(q,270005,282);break}case 306:{ko(q,270005,282);break}case 309:{b=e;d=680;break}case 328:{ko(q,270005,282);break}case 330:{b=j;d=680;break}case 331:{e=c[b>>2]|0;d=c[K>>2]|0;n=c[L>>2]|0;if(!(t>>>0>=d>>>0&t>>>0<n>>>0))ko(e,270005,282);i=o+2|0;g=a[t>>0]|0;j=g&255;do if(g<<24>>24<=-1){if((g&255)<192)ko(e,270005,282);if((g&255)<224){m=1;C=j&31;break}if((g&255)<240){m=2;C=j&15;break}if((g&255)<248){m=3;C=j&7;break}if((g&255)<252){m=4;C=j&3;break}if((g&255)<254){m=5;C=j&1;break}if(g<<24>>24==-1)ko(e,270005,282);else{m=6;C=0}}else{m=0;C=j&127}while(0);if((i+m|0)>>>0>n>>>0)ko(e,270005,282);if(!m)m=C;else{g=C;while(1){j=i+1|0;g=a[i>>0]&63|g<<6;if((m|0)>1){i=j;m=m+-1|0}else{i=j;m=g;break}}}if(!(i>>>0>=d>>>0&i>>>0<n>>>0))ko(e,270005,282);j=i+1|0;g=a[i>>0]|0;i=g&255;do if(g<<24>>24<=-1){if((g&255)<192)ko(e,270005,282);if((g&255)<224){k=1;H=i&31;break}if((g&255)<240){k=2;H=i&15;break}if((g&255)<248){k=3;H=i&7;break}if((g&255)<252){k=4;H=i&3;break}if((g&255)<254){k=5;H=i&1;break}if(g<<24>>24==-1)ko(e,270005,282);else{k=6;H=0}}else{k=0;H=i&127}while(0);if((j+k|0)>>>0>n>>>0)ko(e,270005,282);if(!k)k=H;else{g=H;while(1){i=j+1|0;g=a[j>>0]&63|g<<6;if((k|0)>1){j=i;k=k+-1|0}else{j=i;k=g;break}}}if(!(j>>>0>=d>>>0&j>>>0<n>>>0))ko(e,270005,282);i=j+1|0;g=a[j>>0]|0;j=g&255;do if(g<<24>>24>-1){h=0;f=j&127}else{if((g&255)<192)ko(e,270005,282);if((g&255)<224){h=1;f=j&31;break}if((g&255)<240){h=2;f=j&15;break}if((g&255)<248){h=3;f=j&7;break}if((g&255)<252){h=4;f=j&3;break}if((g&255)<254){h=5;f=j&1;break}if(g<<24>>24!=-1){h=6;f=0;break}ko(e,270005,282)}while(0);if((i+h|0)>>>0>n>>>0)ko(e,270005,282);if(h)while(1){g=i+1|0;f=a[i>>0]&63|f<<6;if((h|0)>1){i=g;h=h+-1|0}else{i=g;break}}h=f>>>1;h=i+((f&1|0)==0?h:0-h|0)|0;g=0;f=v;while(1){if(g>>>0>=m>>>0?(R=Wu(b,h,f)|0,R|0):0)break;f=Wu(b,i,f)|0;if(!f){d=681;break c}g=g+1|0;if(g>>>0>k>>>0){d=681;break c}}b=R;d=680;break}case 394:{n=c[b>>2]|0;j=c[K>>2]|0;d=c[L>>2]|0;if(!(t>>>0>=j>>>0&t>>>0<d>>>0))ko(n,270005,282);g=o+2|0;f=a[t>>0]|0;h=f&255;do if(f<<24>>24<=-1){if((f&255)<192)ko(n,270005,282);if((f&255)<224){A=1;D=h&31;break}if((f&255)<240){A=2;D=h&15;break}if((f&255)<248){A=3;D=h&7;break}if((f&255)<252){A=4;D=h&3;break}if((f&255)<254){A=5;D=h&1;break}if(f<<24>>24==-1)ko(n,270005,282);else{A=6;D=0}}else{A=0;D=h&127}while(0);if((g+A|0)>>>0>d>>>0)ko(n,270005,282);if(!A)e=D;else{i=A;f=D;while(1){h=g+1|0;f=a[g>>0]&63|f<<6;if((i|0)>1){g=h;i=i+-1|0}else{g=h;e=f;break}}}if(!(g>>>0>=j>>>0&g>>>0<d>>>0))ko(n,270005,282);h=g+1|0;f=a[g>>0]|0;g=f&255;do if(f<<24>>24<=-1){if((f&255)<192)ko(n,270005,282);if((f&255)<224){E=1;I=g&31;break}if((f&255)<240){E=2;I=g&15;break}if((f&255)<248){E=3;I=g&7;break}if((f&255)<252){E=4;I=g&3;break}if((f&255)<254){E=5;I=g&1;break}if(f<<24>>24==-1)ko(n,270005,282);else{E=6;I=0}}else{E=0;I=g&127}while(0);if((h+E|0)>>>0>d>>>0)ko(n,270005,282);if(!E)k=I;else{i=E;f=I;while(1){g=h+1|0;f=a[h>>0]&63|f<<6;if((i|0)>1){h=g;i=i+-1|0}else{h=g;k=f;break}}}if(!(h>>>0>=j>>>0&h>>>0<d>>>0))ko(n,270005,282);g=h+1|0;f=a[h>>0]|0;h=f&255;do if(f<<24>>24>-1){N=0;O=h&127}else{if((f&255)<192)ko(n,270005,282);if((f&255)<224){N=1;O=h&31;break}if((f&255)<240){N=2;O=h&15;break}if((f&255)<248){N=3;O=h&7;break}if((f&255)<252){N=4;O=h&3;break}if((f&255)<254){N=5;O=h&1;break}if(f<<24>>24!=-1){N=6;O=0;break}ko(n,270005,282)}while(0);if((g+N|0)>>>0>d>>>0)ko(n,270005,282);if(!N)m=O;else{i=N;f=O;while(1){h=g+1|0;f=a[g>>0]&63|f<<6;if((i|0)>1){g=h;i=i+-1|0}else{g=h;m=f;break}}}if(!(g>>>0>=j>>>0&g>>>0<d>>>0))ko(n,270005,282);i=g+1|0;f=a[g>>0]|0;g=f&255;do if(f<<24>>24>-1){Q=0;S=g&127}else{if((f&255)<192)ko(n,270005,282);if((f&255)<224){Q=1;S=g&31;break}if((f&255)<240){Q=2;S=g&15;break}if((f&255)<248){Q=3;S=g&7;break}if((f&255)<252){Q=4;S=g&3;break}if((f&255)<254){Q=5;S=g&1;break}if(f<<24>>24!=-1){Q=6;S=0;break}ko(n,270005,282)}while(0);if((i+Q|0)>>>0>d>>>0)ko(n,270005,282);if(!Q)f=S;else{h=Q;f=S;while(1){g=i+1|0;f=a[i>>0]&63|f<<6;if((h|0)>1){i=g;h=h+-1|0}else{i=g;break}}}j=f>>>1;j=(f&1|0)==0?j:0-j|0;d:do if(!k){f=0;g=v}else{f=0;g=v;do{h=Wu(b,i,g)|0;if(!h)break d;g=h;f=f+1|0}while(f>>>0<k>>>0)}while(0);if(f>>>0<e>>>0){d=681;break}k=i+j|0;e:do if(m){f:while(1){h=Wu(b,k,g)|0;if(h|0){X=h;break e}if((f|0)==(e|0)){d=681;break c}i=c[b>>2]|0;j=c[W>>2]|0;if(g>>>0<j>>>0?1:g>>>0>(c[V>>2]|0)>>>0){b=i;d=489;break}else h=m;do{do{g=g+-1|0;if(g>>>0<j>>>0){b=i;d=489;break f}}while((a[g>>0]&-64)<<24>>24==-128);h=h+-1|0}while((h|0)!=0);f=f+-1|0;if(f>>>0<e>>>0){d=681;break c}}if((d|0)==489)ko(b,278648,70)}else{while(1){h=Wu(b,k,g)|0;if(h|0){X=h;break e}if((f|0)==(e|0)){d=681;break c}if(g>>>0<(c[W>>2]|0)>>>0?1:g>>>0>(c[V>>2]|0)>>>0)break;f=f+-1|0;if(f>>>0<e>>>0){d=681;break c}}Y=c[b>>2]|0;ko(Y,278648,70)}while(0);b=X;d=680;break}case 491:{m=c[b>>2]|0;k=c[L>>2]|0;if(!(t>>>0<k>>>0?t>>>0>=(c[K>>2]|0)>>>0:0))ko(m,270005,282);h=o+2|0;f=a[t>>0]|0;j=f&255;do if(f<<24>>24<=-1){if((f&255)<192)ko(m,270005,282);if((f&255)<224){i=1;g=j&31;break}if((f&255)<240){i=2;g=j&15;break}if((f&255)<248){i=3;g=j&7;break}if((f&255)<252){i=4;g=j&3;break}if((f&255)<254){i=5;g=j&1;break}if(f<<24>>24==-1)ko(m,270005,282);else{i=6;g=0}}else{i=0;g=j&127}while(0);if((h+i|0)>>>0>k>>>0)ko(m,270005,282);if(i)while(1){f=h+1|0;g=a[h>>0]&63|g<<6;if((i|0)>1){h=f;i=i+-1|0}else{h=f;break}}if(g>>>0>=(c[U>>2]|0)>>>0){X=m;ko(X,278648,667)}X=(c[Y>>2]|0)+(g<<2)|0;f=c[X>>2]|0;c[X>>2]=v;b=Wu(b,h,v)|0;if(!b){c[(c[Y>>2]|0)+(g<<2)>>2]=f;d=681;break}else{d=680;break}}case 514:{d=c[b>>2]|0;j=c[K>>2]|0;k=c[L>>2]|0;if(!(t>>>0>=j>>>0&t>>>0<k>>>0))ko(d,270005,282);h=o+2|0;f=a[t>>0]|0;g=f&255;do if(f<<24>>24<=-1){if((f&255)<192)ko(d,270005,282);if((f&255)<224){B=1;n=g&31;break}if((f&255)<240){B=2;n=g&15;break}if((f&255)<248){B=3;n=g&7;break}if((f&255)<252){B=4;n=g&3;break}if((f&255)<254){B=5;n=g&1;break}if(f<<24>>24==-1)ko(d,270005,282);else{B=6;n=0}}else{B=0;n=g&127}while(0);if((h+B|0)>>>0>k>>>0)ko(d,270005,282);if(B){i=B;f=n;while(1){g=h+1|0;f=a[h>>0]&63|f<<6;if((i|0)>1){h=g;i=i+-1|0}else{h=g;n=f;break}}}if(!(h>>>0>=j>>>0&h>>>0<k>>>0))ko(d,270005,282);g=h+1|0;f=a[h>>0]|0;h=f&255;do if(f<<24>>24<=-1){if((f&255)<192)ko(d,270005,282);if((f&255)<224){F=1;J=h&31;break}if((f&255)<240){F=2;J=h&15;break}if((f&255)<248){F=3;J=h&7;break}if((f&255)<252){F=4;J=h&3;break}if((f&255)<254){F=5;J=h&1;break}if(f<<24>>24==-1)ko(d,270005,282);else{F=6;J=0}}else{F=0;J=h&127}while(0);if((g+F|0)>>>0>k>>>0)ko(d,270005,282);if(!F)f=J;else{i=g;h=F;f=J;while(1){g=i+1|0;f=a[i>>0]&63|f<<6;if((h|0)>1){i=g;h=h+-1|0}else break}}if((f|0)==0?1:(f+n|0)>>>0>(c[U>>2]|0)>>>0){X=d;ko(X,278648,667)}k=c[d+68>>2]|0;i=c[d+52>>2]|0;h=k-i+528|0;i=i+h|0;j=d+56|0;m=c[j>>2]|0;do if(m>>>0<i>>>0)if((c[d+60>>2]|0)>>>0<i>>>0){lo(d,h,1)|0;i=c[b>>2]|0;d=i;k=c[i+68>>2]|0;i=c[i+56>>2]|0;break}else{c[j>>2]=i;break}else i=m;while(0);j=f<<2;h=d+68|0;if(k>>>0>=i>>>0)Un(d,5237);if(j>>>0>2147483646)Jn(d,268620,50336889,268576);f=ap(c[d+44>>2]|0,j,4,T)|0;if(!f)Mn(d,268620,5246);X=c[h>>2]|0;c[X>>2]=10;c[X+8>>2]=f;f=f+4|0;c[f>>2]=(c[f>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+16;f=c[T>>2]|0;PQ(f|0,(c[Y>>2]|0)+(n<<2)|0,j|0)|0;RQ((c[Y>>2]|0)+(n<<2)|0,0,j|0)|0;g=Wu(b,g,v)|0;if(!g){PQ((c[Y>>2]|0)+(n<<2)|0,f|0,j|0)|0;f=c[b>>2]|0;Y=f+68|0;b=c[Y>>2]|0;X=b+-16|0;c[Y>>2]=X;Y=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[X>>2]=2;if(!(Y&8)){d=681;break}X=b+4|0;Y=(c[X>>2]|0)+-1|0;c[X>>2]=Y;if(Y|0){d=681;break}Yn(c[f+44>>2]|0,b);d=681;break}f=c[b>>2]|0;Y=f+68|0;b=c[Y>>2]|0;X=b+-16|0;c[Y>>2]=X;Y=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[X>>2]=2;if(Y&8|0?(X=b+4|0,Y=(c[X>>2]|0)+-1|0,c[X>>2]=Y,(Y|0)==0):0)Yn(c[f+44>>2]|0,b);b=g;d=680;break}case 571:{f=c[b>>2]|0;j=c[f+68>>2]|0;g=c[f+52>>2]|0;h=j-g+528|0;g=g+h|0;i=f+56|0;k=c[i>>2]|0;do if(k>>>0<g>>>0)if((c[f+60>>2]|0)>>>0<g>>>0){lo(f,h,1)|0;g=c[b>>2]|0;i=g;j=c[g+68>>2]|0;g=c[g+56>>2]|0;break}else{c[i>>2]=g;i=f;break}else{i=f;g=k}while(0);f=c[U>>2]<<2;h=i+68|0;if(j>>>0>=g>>>0)Un(i,5237);if(f>>>0>2147483646)Jn(i,268620,50336889,268576);f=ap(c[i+44>>2]|0,f,4,T)|0;if(!f)Mn(i,268620,5246);k=c[h>>2]|0;c[k>>2]=10;c[k+8>>2]=f;k=f+4|0;c[k>>2]=(c[k>>2]|0)+1;c[h>>2]=(c[h>>2]|0)+16;k=c[T>>2]|0;PQ(k|0,c[Y>>2]|0,c[U>>2]<<2|0)|0;j=c[b>>2]|0;h=c[L>>2]|0;if(!(t>>>0<h>>>0?t>>>0>=(c[K>>2]|0)>>>0:0))ko(j,270005,282);i=o+2|0;f=a[t>>0]|0;g=f&255;do if(f<<24>>24<=-1){if((f&255)<192)ko(j,270005,282);if((f&255)<224){G=1;M=g&31;break}if((f&255)<240){G=2;M=g&15;break}if((f&255)<248){G=3;M=g&7;break}if((f&255)<252){G=4;M=g&3;break}if((f&255)<254){G=5;M=g&1;break}if(f<<24>>24==-1)ko(j,270005,282);else{G=6;M=0}}else{G=0;M=g&127}while(0);if((i+G|0)>>>0>h>>>0)ko(j,270005,282);if(!G)f=M;else{h=G;f=M;while(1){g=i+1|0;f=a[i>>0]&63|f<<6;if((h|0)>1){i=g;h=h+-1|0}else{i=g;break}}}h=f>>>1;h=(f&1|0)==0?h:0-h|0;f=v;g=(Wu(b,i,f)|0)!=0;if(w<<24>>24==13){if(g)d=603}else if(!g)d=603;if((d|0)==603?(P=Wu(b,i+h|0,f)|0,P|0):0){f=c[b>>2]|0;Y=f+68|0;b=c[Y>>2]|0;X=b+-16|0;c[Y>>2]=X;Y=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[X>>2]=2;if(Y&8|0?(X=b+4|0,Y=(c[X>>2]|0)+-1|0,c[X>>2]=Y,(Y|0)==0):0)Yn(c[f+44>>2]|0,b);b=P;d=680;break}PQ(c[Y>>2]|0,k|0,c[U>>2]<<2|0)|0;f=c[b>>2]|0;Y=f+68|0;b=c[Y>>2]|0;X=b+-16|0;c[Y>>2]=X;Y=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[X>>2]=2;if((Y&8|0)!=0?(X=b+4|0,Y=(c[X>>2]|0)+-1|0,c[X>>2]=Y,(Y|0)==0):0){Yn(c[f+44>>2]|0,b);d=681}else d=681;break}case 629:{ko(q,270005,282);break}case 653:{ko(r,270005,282);break}case 675:{ko(r,270005,282);break}case 682:{ko(b,278648,667);break}}if((d|0)==680){c[Z>>2]=(c[Z>>2]|0)+-1;Z=b;l=_;return Z|0}else if((d|0)==681){c[Z>>2]=(c[Z>>2]|0)+-1;Z=0;l=_;return Z|0}return 0}function Xu(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=a+68|0;if(!b){d=c[g>>2]|0;b=c[a+64>>2]|0;b=(d|0)!=(b|0)?b:0;b=(b|0)==0?936:b;if(((c[b>>2]|0)==9?(e=c[b+8>>2]|0,(e|0)!=0):0)?(c[e>>2]&-134217728|0)==1476395008:0)return}else d=c[g>>2]|0;b=c[a+168>>2]|0;e=a+56|0;if(d>>>0>=(c[e>>2]|0)>>>0)Un(a,4153);c[g>>2]=d+16;c[d>>2]=9;c[d+8>>2]=b;f=b+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[g>>2]|0;if(f>>>0>=(c[e>>2]|0)>>>0)Un(a,1093);b=a+64|0;d=c[b>>2]|0;if((f|0)==(d|0))jo(a,376,0);c[g>>2]=f+16;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];if(c[f>>2]&8|0){f=(c[f+8>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)+1}oq(a);d=c[b>>2]|0;b=(c[g>>2]|0)-d>>4;if(!b)jo(a,376,-1);e=d+(b+-1<<4)|0;f=c[d>>2]|0;b=c[d+8>>2]|0;c[d>>2]=c[e>>2];c[d+4>>2]=c[e+4>>2];c[d+8>>2]=c[e+8>>2];c[d+12>>2]=c[e+12>>2];c[e>>2]=2;c[g>>2]=(c[g>>2]|0)+-16;if(!(f&8))return;f=b+4|0;g=(c[f>>2]|0)+-1|0;c[f>>2]=g;if(g|0)return;Yn(c[a+44>>2]|0,b);return}function Yu(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+16|0;r=b+68|0;u=c[r>>2]|0;s=b+64|0;f=u-(c[s>>2]|0)|0;t=f>>4;if(u>>>0>=(c[b+56>>2]|0)>>>0)Un(b,5237);if(t>>>0>2147483646)Jn(b,268620,50336889,268576);q=b+44|0;e=ap(c[q>>2]|0,t,1,w)|0;if(!e)Mn(b,268620,5246);u=c[r>>2]|0;c[u>>2]=10;c[u+8>>2]=e;u=e+4|0;c[u>>2]=(c[u>>2]|0)+1;u=c[r>>2]|0;c[r>>2]=u+16;u=c[u+8>>2]|0;p=u+20|0;g=c[p>>2]|0;e=g;if((f|0)<=0){t=e;v=e;v=t-v|0;Kn(b,u,v);bp(b);l=w;return}o=(d|0)==0;f=0;d=e;m=g+t|0;while(1){if(o){j=_p(b,f)|0;if((m-d|0)>>>0<7){e=d-e|0;g=e+71+(e>>>2)|0;if(g>>>0<e>>>0){v=31;break}Kn(b,u,g);n=c[p>>2]|0;d=n+e|0;e=n;n=n+g|0}else n=m;if(j>>>0<128){k=0;g=1}else{if(j>>>0>=2048)if(j>>>0>=65536)if(j>>>0>=2097152)if(j>>>0<67108864){g=5;v=38}else g=j>>>31|6;else{g=4;v=38}else{g=3;v=38}else{g=2;v=38}if((v|0)==38)v=0;k=a[269353+(g+-1)>>0]|0;m=g;do{m=m+-1|0;a[d+m>>0]=j&63|128;j=j>>>6}while((m|0)>1)}a[d>>0]=j+(k&255);d=d+g|0;g=n}else{g=c[s>>2]|0;if(f>>>0>=(c[r>>2]|0)-g>>4>>>0){v=11;break}i=+ho(b,g+(f<<4)|0);k=c[s>>2]|0;j=k+(f<<4)|0;n=c[j>>2]|0;k=k+(f<<4)+8|0;g=c[k>>2]|0;c[j>>2]=0;h[k>>3]=i;if(n&8|0?(k=g+4|0,n=(c[k>>2]|0)+-1|0,c[k>>2]=n,(n|0)==0):0)Yn(c[q>>2]|0,g);k=~~i;if(k>>>0>1114111|+(k|0)!=i){v=16;break}if((m-d|0)>>>0<6){e=d-e|0;g=e+70+(e>>>2)|0;if(g>>>0<e>>>0){v=19;break}Kn(b,u,g);j=c[p>>2]|0;d=j+e|0;e=j;j=j+g|0}else j=m;do if(k>>>0>=128){if(k>>>0<2048){a[d>>0]=k>>>6&31|192;a[d+1>>0]=k&63|128;g=2;break}if(k>>>0<65536){a[d>>0]=k>>>12&15|224;a[d+1>>0]=k>>>6&63|128;a[d+2>>0]=k&63|128;g=3;break}else{g=k+-65536|0;a[d>>0]=-19;a[d+1>>0]=g>>>16&15|160;a[d+2>>0]=g>>>10&63|128;a[d+3>>0]=-19;a[d+4>>0]=g>>>6&15|176;a[d+5>>0]=g&63|128;g=6;break}}else{a[d>>0]=k;g=1}while(0);d=d+g|0;g=j}f=f+1|0;if((f|0)<(t|0))m=g;else{v=43;break}}if((v|0)==11)jo(b,300,f);else if((v|0)==16)Jn(b,278632,50331837,269834);else if((v|0)==19)Jn(b,270142,50331712,268576);else if((v|0)==31)Jn(b,270142,50331712,268576);else if((v|0)==43){v=d-e|0;Kn(b,u,v);bp(b);l=w;return}}function Zu(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=l;l=l+16|0;h=i;f=a+68|0;e=c[f>>2]|0;if(e>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4361);c[f>>2]=e+16;b=a+64|0;if(c[a+72>>2]|0?(d=c[b>>2]|0,g=d+-16|0,c[e>>2]=c[g>>2],c[e+4>>2]=c[g+4>>2],c[e+8>>2]=c[g+8>>2],c[e+12>>2]=c[g+12>>2],c[g>>2]&8|0):0){g=(c[d+-8>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}g=c[b>>2]|0;e=(c[f>>2]|0)-g>>4;d=e+-1|0;f=g+(d<<4)|0;b=e|0?f:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9){j=a+304|0;j=c[j>>2]|0;j=j+44|0;j=c[j>>2]|0;j=j+28|0;In(a,2476,-1,j)}b=c[b+8>>2]|0;if(!b){j=a+304|0;j=c[j>>2]|0;j=j+44|0;j=c[j>>2]|0;j=j+28|0;In(a,2476,-1,j)}if((c[b>>2]&-134217728|0)!=1476395008){j=a+304|0;j=c[j>>2]|0;j=j+44|0;j=c[j>>2]|0;j=j+28|0;In(a,2476,-1,j)}if(!e)jo(a,376,0);if(!d){l=i;return}c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];QQ(g+16|0,g|0,d<<4|0)|0;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];c[g+8>>2]=c[h+8>>2];c[g+12>>2]=c[h+12>>2];l=i;return}function _u(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=a+68|0;e=c[i>>2]|0;f=a+64|0;d=c[f>>2]|0;g=e-d>>4;h=((b|0)<0?g:0)+b|0;if(h>>>0>=g>>>0)jo(a,300,b);switch(c[d+(h<<4)>>2]|0){case 5:case 8:case 9:case 10:{g=c[d+(h<<4)+8>>2]|0;break}default:g=0}if(e>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4341);c[i>>2]=e+16;c[e>>2]=5;c[e+8>>2]=g;d=c[f>>2]|0;e=(c[i>>2]|0)-d>>4;if(!e)jo(a,376,-1);f=d+(e+-1<<4)|0;b=((h|0)<0?e:0)+h|0;if(b>>>0>=e>>>0)jo(a,376,h);e=d+(b<<4)|0;h=c[e>>2]|0;b=c[d+(b<<4)+8>>2]|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];c[f>>2]=2;c[i>>2]=(c[i>>2]|0)+-16;if(!(h&8))return g|0;h=b+4|0;i=(c[h>>2]|0)+-1|0;c[h>>2]=i;if(i|0)return g|0;Yn(c[a+44>>2]|0,b);return g|0}function $u(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+32|0;o=s;r=a+68|0;q=a+64|0;p=c[q>>2]|0;n=(c[r>>2]|0)-p>>4;f=(b|0)<0;e=(f?n:0)+b|0;e=e>>>0<n>>>0?p+(e<<4)|0:0;e=(e|0)==0?936:e;switch(c[e>>2]|0){case 9:{e=c[e+8>>2]|0;if(!e)In(a,2416,b,268963);else g=e;break}case 6:case 10:{to(a,b);g=c[(c[(f?r:q)>>2]|0)+(b<<4)+8>>2]|0;break}default:In(a,2416,b,268963)}po(a,-1,1);p=c[q>>2]|0;e=(c[r>>2]|0)-p>>4;e=e|0?p+(e+-1<<4)|0:0;e=(e|0)==0?936:e;if(!((c[e>>2]|0)==8?(d=c[e+8>>2]|0,(d|0)!=0):0)){Eo(a,-1)|0;p=c[q>>2]|0;d=(c[r>>2]|0)-p>>4;d=d|0?p+(d+-1<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==8)d=c[d+8>>2]|0;else d=0}p=(go(a,g,d,c[d+16>>2]|0,o,1)|0)==0;d=c[r>>2]|0;n=a+56|0;e=d>>>0<(c[n>>2]|0)>>>0;if(p){if(!e)Un(a,4162);f=d+16|0;c[r>>2]=f;e=c[q>>2]|0;f=f-e>>4;d=f+-2|0;if(f>>>0<=1)jo(a,376,-2);o=e+(d<<4)|0;p=e+(f+-1<<4)|0;q=c[o>>2]|0;d=c[e+(d<<4)+8>>2]|0;QQ(o|0,o+16|0,p-o|0)|0;c[p>>2]=2;c[r>>2]=(c[r>>2]|0)+-16;if(!(q&8)){l=s;return}q=d+4|0;r=(c[q>>2]|0)+-1|0;c[q>>2]=r;if(r|0){l=s;return}Yn(c[a+44>>2]|0,d);l=s;return}if(!e)Un(a,4604);f=vo(a,40)|0;p=a+44|0;d=c[p>>2]|0;c[f>>2]=134234241;d=d+24|0;e=c[d>>2]|0;if(e|0)c[e+12>>2]=f;c[f+12>>2]=0;c[f+8>>2]=e;c[d>>2]=f;b=c[r>>2]|0;c[b>>2]=9;c[b+8>>2]=f;b=f+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[r>>2]|0;g=b+16|0;c[r>>2]=g;d=c[a+112>>2]|0;c[f+20>>2]=d;if(d|0){k=d+4|0;c[k>>2]=(c[k>>2]|0)+1}if(!(c[o>>2]&8)){if(g>>>0>=(c[n>>2]|0)>>>0)Un(a,1093);d=c[q>>2]|0;e=g-d>>4;if(e>>>0<=1)jo(a,376,-2);m=d+(e+-2<<4)|0;c[r>>2]=b+32;c[g>>2]=c[m>>2];c[g+4>>2]=c[m+4>>2];c[g+8>>2]=c[m+8>>2];c[g+12>>2]=c[m+12>>2];if(c[g>>2]&8|0){m=(c[b+24>>2]|0)+4|0;c[m>>2]=(c[m>>2]|0)+1}d=c[r>>2]|0;f=d-(c[q>>2]|0)|0;m=f>>4;b=m+-2|0;if(m>>>0<=1)jo(a,300,-2);k=a+304|0;e=c[(c[k>>2]|0)+136>>2]|0;if(d>>>0>=(c[n>>2]|0)>>>0)Un(a,4153);c[r>>2]=d+16;c[d>>2]=8;c[d+8>>2]=e;g=e+4|0;c[g>>2]=(c[g>>2]|0)+1;g=c[q>>2]|0;i=(c[r>>2]|0)-g>>4;f=((f|0)<32?i:0)+b|0;if(f>>>0>=i>>>0)jo(a,376,b);if((i|0)==1)jo(a,376,-2);e=i+-2|0;m=a+72|0;d=c[m>>2]|0;if(!d)d=1;else d=c[d+52>>2]&1;No(a,g+(f<<4)|0,g+(i+-1<<4)|0,c[g+(e<<4)>>2]|0,c[g+(e<<4)+4>>2]|0,+h[g+(e<<4)+8>>3],d)|0;uq(a);e=c[r>>2]|0;f=c[n>>2]|0;if(e>>>0>=f>>>0)Un(a,4185);i=c[o>>2]&1;b=e+16|0;c[r>>2]=b;c[e>>2]=4;c[e+8>>2]=i;i=b-(c[q>>2]|0)|0;g=i>>4;j=g+-2|0;if(g>>>0<=1)jo(a,300,-2);d=c[(c[k>>2]|0)+140>>2]|0;if(b>>>0>=f>>>0)Un(a,4153);c[r>>2]=e+32;c[b>>2]=8;c[e+24>>2]=d;b=d+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[q>>2]|0;g=(c[r>>2]|0)-b>>4;f=((i|0)<32?g:0)+j|0;if(f>>>0>=g>>>0)jo(a,376,j);if((g|0)==1)jo(a,376,-2);e=g+-2|0;d=c[m>>2]|0;if(!d)d=1;else d=c[d+52>>2]&1;No(a,b+(f<<4)|0,b+(g+-1<<4)|0,c[b+(e<<4)>>2]|0,c[b+(e<<4)+4>>2]|0,+h[b+(e<<4)+8>>3],d)|0;uq(a)}else{d=c[o+4>>2]|0;e=g>>>0<(c[n>>2]|0)>>>0;do if(!d)if(e){i=b+32|0;c[r>>2]=i;break}else Un(a,4162);else if(e){c[r>>2]=b+32;c[g>>2]=9;c[b+24>>2]=d;i=d+4|0;c[i>>2]=(c[i>>2]|0)+1;i=c[r>>2]|0;break}else Un(a,4153);while(0);f=i-(c[q>>2]|0)|0;k=f>>4;b=k+-2|0;d=i;if(k>>>0<=1)jo(a,300,-2);j=a+304|0;e=c[(c[j>>2]|0)+292>>2]|0;if(d>>>0>=(c[n>>2]|0)>>>0)Un(a,4153);c[r>>2]=d+16;c[d>>2]=8;c[d+8>>2]=e;g=e+4|0;c[g>>2]=(c[g>>2]|0)+1;g=c[q>>2]|0;i=(c[r>>2]|0)-g>>4;f=((f|0)<32?i:0)+b|0;if(f>>>0>=i>>>0)jo(a,376,b);if((i|0)==1)jo(a,376,-2);e=i+-2|0;k=a+72|0;d=c[k>>2]|0;if(!d)d=1;else d=c[d+52>>2]&1;No(a,g+(f<<4)|0,g+(i+-1<<4)|0,c[g+(e<<4)>>2]|0,c[g+(e<<4)+4>>2]|0,+h[g+(e<<4)+8>>3],d)|0;uq(a);d=c[o+8>>2]|0;e=c[r>>2]|0;f=e>>>0<(c[n>>2]|0)>>>0;do if(!d)if(f){m=e+16|0;c[r>>2]=m;break}else Un(a,4162);else if(f){c[r>>2]=e+16;c[e>>2]=9;c[e+8>>2]=d;m=d+4|0;c[m>>2]=(c[m>>2]|0)+1;m=c[r>>2]|0;break}else Un(a,4153);while(0);f=m-(c[q>>2]|0)|0;g=f>>4;i=g+-2|0;e=m;if(g>>>0<=1)jo(a,300,-2);d=c[(c[j>>2]|0)+332>>2]|0;if(e>>>0>=(c[n>>2]|0)>>>0)Un(a,4153);c[r>>2]=e+16;c[e>>2]=8;c[e+8>>2]=d;b=d+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[q>>2]|0;g=(c[r>>2]|0)-b>>4;f=((f|0)<32?g:0)+i|0;if(f>>>0>=g>>>0)jo(a,376,i);if((g|0)==1)jo(a,376,-2);e=g+-2|0;d=c[k>>2]|0;if(!d)d=1;else d=c[d+52>>2]&1;No(a,b+(f<<4)|0,b+(g+-1<<4)|0,c[b+(e<<4)>>2]|0,c[b+(e<<4)+4>>2]|0,+h[b+(e<<4)+8>>3],d)|0;uq(a)}d=c[r>>2]|0;e=c[n>>2]|0;if(d>>>0>=e>>>0)Un(a,4185);g=(c[o>>2]|0)>>>1&1;f=d+16|0;c[r>>2]=f;c[d>>2]=4;c[d+8>>2]=g;g=f-(c[q>>2]|0)|0;m=g>>4;i=m+-2|0;if(m>>>0<=1)jo(a,300,-2);m=a+304|0;b=c[(c[m>>2]|0)+148>>2]|0;if(f>>>0>=e>>>0)Un(a,4153);c[r>>2]=d+32;c[f>>2]=8;c[d+24>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[q>>2]|0;j=(c[r>>2]|0)-b>>4;f=((g|0)<32?j:0)+i|0;if(f>>>0>=j>>>0)jo(a,376,i);if((j|0)==1)jo(a,376,-2);e=j+-2|0;k=a+72|0;d=c[k>>2]|0;if(!d)d=1;else d=c[d+52>>2]&1;No(a,b+(f<<4)|0,b+(j+-1<<4)|0,c[b+(e<<4)>>2]|0,c[b+(e<<4)+4>>2]|0,+h[b+(e<<4)+8>>3],d)|0;uq(a);b=c[r>>2]|0;f=c[n>>2]|0;if(b>>>0>=f>>>0)Un(a,4185);i=(c[o>>2]|0)>>>2&1;e=b+16|0;c[r>>2]=e;c[b>>2]=4;c[b+8>>2]=i;i=e-(c[q>>2]|0)|0;o=i>>4;j=o+-2|0;if(o>>>0<=1)jo(a,300,-2);d=c[(c[m>>2]|0)+144>>2]|0;if(e>>>0>=f>>>0)Un(a,4153);c[r>>2]=b+32;c[e>>2]=8;c[b+24>>2]=d;b=d+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[q>>2]|0;g=(c[r>>2]|0)-b>>4;f=((i|0)<32?g:0)+j|0;if(f>>>0>=g>>>0)jo(a,376,j);if((g|0)==1)jo(a,376,-2);e=g+-2|0;d=c[k>>2]|0;if(!d)d=1;else d=c[d+52>>2]&1;No(a,b+(f<<4)|0,b+(g+-1<<4)|0,c[b+(e<<4)>>2]|0,c[b+(e<<4)+4>>2]|0,+h[b+(e<<4)+8>>3],d)|0;uq(a);e=c[q>>2]|0;f=(c[r>>2]|0)-e>>4;if(!f)jo(a,376,-1);b=e+(f+-1<<4)|0;d=f+-3|0;if(f>>>0<=2)jo(a,376,-3);q=e+(d<<4)|0;a=c[q>>2]|0;e=c[e+(d<<4)+8>>2]|0;c[q>>2]=c[b>>2];c[q+4>>2]=c[b+4>>2];c[q+8>>2]=c[b+8>>2];c[q+12>>2]=c[b+12>>2];c[b>>2]=2;d=(c[r>>2]|0)+-16|0;c[r>>2]=d;do if(a&8){q=e+4|0;a=(c[q>>2]|0)+-1|0;c[q>>2]=a;if(a|0)break;Yn(c[p>>2]|0,e);d=c[r>>2]|0}while(0);a=d+-16|0;c[r>>2]=a;r=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[a>>2]=2;if(!(r&8)){l=s;return}a=d+4|0;r=(c[a>>2]|0)+-1|0;c[a>>2]=r;if(r|0){l=s;return}Yn(c[p>>2]|0,d);l=s;return}function av(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;A=a+68|0;i=c[A>>2]|0;z=a+64|0;j=c[z>>2]|0;h=i-j>>4;y=((b|0)<0?h:0)+b|0;if(y>>>0>=h>>>0)jo(a,300,b);x=(y|0)<0;k=(x?h:0)+y|0;h=k>>>0<h>>>0;b=h?j+(k<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9)In(a,2130,y,268963);if(!(c[b+8>>2]|0))In(a,2130,y,268963);if(!h)jo(a,300,y);v=a+304|0;b=c[(c[v>>2]|0)+136>>2]|0;w=a+56|0;if(i>>>0>=(c[w>>2]|0)>>>0)Un(a,4153);c[A>>2]=i+16;c[i>>2]=8;c[i+8>>2]=b;h=b+4|0;c[h>>2]=(c[h>>2]|0)+1;h=c[z>>2]|0;i=(c[A>>2]|0)-h>>4;b=((k|0)<0?i:0)+k|0;if(b>>>0>=i>>>0)jo(a,376,k);j=ro(a,h+(b<<4)|0,h+(i+-1<<4)|0)|0;h=c[z>>2]|0;i=(c[A>>2]|0)-h>>4;b=i+-2|0;if(i>>>0<=1)jo(a,376,-2);k=h+(b<<4)|0;l=h+(i+-1<<4)|0;u=c[k>>2]|0;b=c[h+(b<<4)+8>>2]|0;QQ(k|0,k+16|0,l-k|0)|0;c[l>>2]=2;h=(c[A>>2]|0)+-16|0;c[A>>2]=h;if((u&8|0)!=0?(l=b+4|0,u=(c[l>>2]|0)+-1|0,c[l>>2]=u,(u|0)==0):0){Yn(c[a+44>>2]|0,b);h=c[A>>2]|0}i=h-(c[z>>2]|0)|0;if(!j){u=-1;l=0;b=0;i=i>>4}else{k=i>>4;u=(i|0)<16?-2147483648:k+-1|0;l=1;b=64;i=k}k=(x?i:0)+y|0;if(k>>>0>=i>>>0)jo(a,300,y);i=c[(c[v>>2]|0)+140>>2]|0;if(h>>>0>=(c[w>>2]|0)>>>0)Un(a,4153);c[A>>2]=h+16;c[h>>2]=8;c[h+8>>2]=i;i=i+4|0;c[i>>2]=(c[i>>2]|0)+1;i=c[z>>2]|0;j=(c[A>>2]|0)-i>>4;h=((k|0)<0?j:0)+k|0;if(h>>>0>=j>>>0)jo(a,376,k);k=ro(a,i+(h<<4)|0,i+(j+-1<<4)|0)|0;i=c[z>>2]|0;j=(c[A>>2]|0)-i>>4;h=j+-2|0;if(j>>>0<=1)jo(a,376,-2);C=i+(h<<4)|0;B=i+(j+-1<<4)|0;j=c[C>>2]|0;h=c[i+(h<<4)+8>>2]|0;QQ(C|0,C+16|0,B-C|0)|0;c[B>>2]=2;c[A>>2]=(c[A>>2]|0)+-16;if(j&8|0?(B=h+4|0,C=(c[B>>2]|0)+-1|0,c[B>>2]=C,(C|0)==0):0)Yn(c[a+44>>2]|0,h);do if(k)if(!(Ro(a,-1)|0)){l=1;b=b|8;break}else{l=1;b=b|9;break}while(0);h=c[A>>2]|0;C=h-(c[z>>2]|0)>>4;k=(x?C:0)+y|0;if(k>>>0>=C>>>0)jo(a,300,y);i=c[(c[v>>2]|0)+292>>2]|0;if(h>>>0>=(c[w>>2]|0)>>>0)Un(a,4153);c[A>>2]=h+16;c[h>>2]=8;c[h+8>>2]=i;i=i+4|0;c[i>>2]=(c[i>>2]|0)+1;i=c[z>>2]|0;j=(c[A>>2]|0)-i>>4;h=((k|0)<0?j:0)+k|0;if(h>>>0>=j>>>0)jo(a,376,k);k=ro(a,i+(h<<4)|0,i+(j+-1<<4)|0)|0;i=c[z>>2]|0;j=(c[A>>2]|0)-i>>4;h=j+-2|0;if(j>>>0<=1)jo(a,376,-2);D=i+(h<<4)|0;B=i+(j+-1<<4)|0;C=c[D>>2]|0;i=c[i+(h<<4)+8>>2]|0;QQ(D|0,D+16|0,B-D|0)|0;c[B>>2]=2;h=(c[A>>2]|0)+-16|0;c[A>>2]=h;do if(C&8){C=i+4|0;D=(c[C>>2]|0)+-1|0;c[C>>2]=D;if(D|0)break;Yn(c[a+44>>2]|0,i);h=c[A>>2]|0}while(0);if(!k){m=0;o=0}else{i=c[z>>2]|0;j=h-i>>4;if(!j)jo(a,376,-1);i=i+(j+-1<<4)|0;do if((c[i>>2]|0)==2){o=0;q=h}else{i=(i|0)==0?936:i;switch(c[i>>2]|0){case 9:{m=i+8|0;p=h;break}case 6:{to(a,-1);p=c[A>>2]|0;m=p+-8|0;break}default:Jn(a,268713,100668335,269675)}h=c[m>>2]|0;if(!h)Jn(a,268713,100668335,269675);if(c[h>>2]&512|0){o=h;q=p;break}Jn(a,268713,100668335,269675)}while(0);m=1;b=b|128;h=q}D=h-(c[z>>2]|0)>>4;k=(x?D:0)+y|0;if(k>>>0>=D>>>0)jo(a,300,y);i=c[(c[v>>2]|0)+332>>2]|0;if(h>>>0>=(c[w>>2]|0)>>>0)Un(a,4153);c[A>>2]=h+16;c[h>>2]=8;c[h+8>>2]=i;i=i+4|0;c[i>>2]=(c[i>>2]|0)+1;i=c[z>>2]|0;j=(c[A>>2]|0)-i>>4;h=((k|0)<0?j:0)+k|0;if(h>>>0>=j>>>0)jo(a,376,k);k=ro(a,i+(h<<4)|0,i+(j+-1<<4)|0)|0;i=c[z>>2]|0;j=(c[A>>2]|0)-i>>4;h=j+-2|0;if(j>>>0<=1)jo(a,376,-2);B=i+(h<<4)|0;C=i+(j+-1<<4)|0;D=c[B>>2]|0;i=c[i+(h<<4)+8>>2]|0;QQ(B|0,B+16|0,C-B|0)|0;c[C>>2]=2;h=(c[A>>2]|0)+-16|0;c[A>>2]=h;do if(D&8){C=i+4|0;D=(c[C>>2]|0)+-1|0;c[C>>2]=D;if(D|0)break;Yn(c[a+44>>2]|0,i);h=c[A>>2]|0}while(0);if(!k)n=0;else{i=c[z>>2]|0;j=h-i>>4;if(!j)jo(a,376,-1);i=i+(j+-1<<4)|0;do if((c[i>>2]|0)==2){n=0;t=h}else{i=(i|0)==0?936:i;switch(c[i>>2]|0){case 9:{r=i+8|0;s=h;break}case 6:{to(a,-1);s=c[A>>2]|0;r=s+-8|0;break}default:Jn(a,268713,100668335,269675)}h=c[r>>2]|0;if(!h)Jn(a,268713,100668335,269675);if(c[h>>2]&512|0){n=h;t=s;break}Jn(a,268713,100668335,269675)}while(0);m=1;b=b|256;h=t}D=h-(c[z>>2]|0)>>4;k=(x?D:0)+y|0;if(k>>>0>=D>>>0)jo(a,300,y);i=c[(c[v>>2]|0)+148>>2]|0;if(h>>>0>=(c[w>>2]|0)>>>0)Un(a,4153);c[A>>2]=h+16;c[h>>2]=8;c[h+8>>2]=i;i=i+4|0;c[i>>2]=(c[i>>2]|0)+1;i=c[z>>2]|0;j=(c[A>>2]|0)-i>>4;h=((k|0)<0?j:0)+k|0;if(h>>>0>=j>>>0)jo(a,376,k);k=ro(a,i+(h<<4)|0,i+(j+-1<<4)|0)|0;i=c[z>>2]|0;j=(c[A>>2]|0)-i>>4;h=j+-2|0;if(j>>>0<=1)jo(a,376,-2);B=i+(h<<4)|0;C=i+(j+-1<<4)|0;D=c[B>>2]|0;h=c[i+(h<<4)+8>>2]|0;QQ(B|0,B+16|0,C-B|0)|0;c[C>>2]=2;c[A>>2]=(c[A>>2]|0)+-16;do if(D&8|0){C=h+4|0;D=(c[C>>2]|0)+-1|0;c[C>>2]=D;if(D|0)break;Yn(c[a+44>>2]|0,h)}while(0);do if(k)if(!(Ro(a,-1)|0)){b=b|16;break}else{b=b|18;break}while(0);i=c[A>>2]|0;D=i-(c[z>>2]|0)>>4;k=(x?D:0)+y|0;if(k>>>0>=D>>>0)jo(a,300,y);h=c[(c[v>>2]|0)+144>>2]|0;if(i>>>0>=(c[w>>2]|0)>>>0)Un(a,4153);c[A>>2]=i+16;c[i>>2]=8;c[i+8>>2]=h;i=h+4|0;c[i>>2]=(c[i>>2]|0)+1;i=c[z>>2]|0;j=(c[A>>2]|0)-i>>4;h=((k|0)<0?j:0)+k|0;if(h>>>0>=j>>>0)jo(a,376,k);k=ro(a,i+(h<<4)|0,i+(j+-1<<4)|0)|0;i=c[z>>2]|0;j=(c[A>>2]|0)-i>>4;h=j+-2|0;if(j>>>0<=1)jo(a,376,-2);B=i+(h<<4)|0;C=i+(j+-1<<4)|0;D=c[B>>2]|0;h=c[i+(h<<4)+8>>2]|0;QQ(B|0,B+16|0,C-B|0)|0;c[C>>2]=2;c[A>>2]=(c[A>>2]|0)+-16;do if(D&8|0){C=h+4|0;D=(c[C>>2]|0)+-1|0;c[C>>2]=D;if(D|0)break;Yn(c[a+44>>2]|0,h)}while(0);do if(k)if(!(Ro(a,-1)|0)){b=b|32;break}else{b=b|36;break}while(0);if((l|0)!=0&(m|0)!=0)Jn(a,268713,100668335,269675);else{c[d>>2]=b;c[e>>2]=u;c[f>>2]=o;c[g>>2]=n;return}}function bv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0.0;m=a+68|0;e=c[m>>2]|0;j=a+56|0;if(e>>>0>=(c[j>>2]|0)>>>0)Un(a,4361);c[m>>2]=e+16;l=a+64|0;if(c[a+72>>2]|0?(b=c[l>>2]|0,k=b+-16|0,c[e>>2]=c[k>>2],c[e+4>>2]=c[k+4>>2],c[e+8>>2]=c[k+8>>2],c[e+12>>2]=c[k+12>>2],c[k>>2]&8|0):0){k=(c[b+-8>>2]|0)+4|0;c[k>>2]=(c[k>>2]|0)+1}e=c[m>>2]|0;b=c[l>>2]|0;i=e-b|0;f=i>>4;k=f+-1|0;b=f|0?b+(k<<4)|0:0;b=(b|0)==0?936:b;switch(c[b>>2]|0){case 0:{d=e;break}case 9:{g=7;break}default:Jn(a,278815,100663321,278831)}if((g|0)==7){b=c[b+8>>2]|0;if(!b)Jn(a,278815,100663321,278831);if((c[b>>2]&-134217728|0)!=1342177280)Jn(a,278815,100663321,278831);d=e;if(!f)jo(a,300,-1);b=c[(c[a+304>>2]|0)+404>>2]|0;if(d>>>0>=(c[j>>2]|0)>>>0)Un(a,4153);c[m>>2]=d+16;c[d>>2]=8;c[d+8>>2]=b;d=b+4|0;c[d>>2]=(c[d>>2]|0)+1;d=c[l>>2]|0;e=(c[m>>2]|0)-d>>4;b=((i|0)<16?e:0)+k|0;if(b>>>0>=e>>>0)jo(a,376,k);ro(a,d+(b<<4)|0,d+(e+-1<<4)|0)|0;d=c[l>>2]|0;e=(c[m>>2]|0)-d>>4;b=e+-2|0;if(e>>>0<=1)jo(a,376,-2);i=d+(b<<4)|0;j=d+(e+-1<<4)|0;k=c[i>>2]|0;b=c[d+(b<<4)+8>>2]|0;QQ(i|0,i+16|0,j-i|0)|0;c[j>>2]=2;d=(c[m>>2]|0)+-16|0;c[m>>2]=d;if((k&8|0)!=0?(j=b+4|0,k=(c[j>>2]|0)+-1|0,c[j>>2]=k,(k|0)==0):0){Yn(c[a+44>>2]|0,b);d=c[m>>2]|0}e=c[l>>2]|0;d=d-e>>4;b=d+-2|0;if(d>>>0<=1)jo(a,376,-2);j=e+(b<<4)|0;d=e+(d+-1<<4)|0;k=c[j>>2]|0;b=c[e+(b<<4)+8>>2]|0;QQ(j|0,j+16|0,d-j|0)|0;c[d>>2]=2;d=(c[m>>2]|0)+-16|0;c[m>>2]=d;if((k&8|0)!=0?(j=b+4|0,k=(c[j>>2]|0)+-1|0,c[j>>2]=k,(k|0)==0):0){Yn(c[a+44>>2]|0,b);d=c[m>>2]|0}}m=c[l>>2]|0;b=d-m>>4;b=b|0?m+(b+-1<<4)|0:0;b=(b|0)==0?936:b;if(c[b>>2]|0){n=s;return +n}n=+h[b+8>>3];return +n}function cv(a,b){a=+a;b=+b;return +(+K(+a,+b))}function dv(a,b){a=+a;b=+b;var c=0;c=iP(b)|0;if(!c){b=s;return +b}if((c|0)==1&+B(+a)==1.0){b=s;return +b}b=+D(+a,+b);return +b}function ev(a){a=+a;return +(+B(+a))}function fv(a){a=+a;return +(+H(+a))}function gv(a){a=+a;return +(+I(+a))}function hv(a){a=+a;return +(+J(+a))}function iv(a){a=+a;return +(+N(+a))}function jv(a){a=+a;return +(+E(+a))}function kv(a){a=+a;return +(+L(+a))}function lv(a){a=+a;return +(+A(+a))}function mv(a){a=+a;return +(+M(+a))}function nv(a){a=+a;if((iP(a)|0)>>>0<3)return +a;if(a>=-.5&a<.5){a=a<0.0?-0.0:0.0;return +a}else{a=+A(+(a+.5));return +a}return 0.0}function ov(a){a=+a;return +(+F(+a))}function pv(a){a=+a;return +(+C(+a))}function qv(a){a=+a;return +(+G(+a))}function rv(a){a=+a;return +(+cP(a))}function sv(a){a=+a;return +(+fP(a))}function tv(a){a=+a;return +(+eP(a))}function uv(a){a=+a;return +(+hP(a))}function vv(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;do if((f|0)==37){f=b+24|0;i=c[f>>2]|0;e=(c[b+32>>2]|0)-i|0;if(e>>>0>4){e=a[i>>0]|0;if(e<<24>>24==117){e=a[270556+(d[i+1>>0]|0)>>0]|0;if((((e<<24>>24>-1?(h=a[270556+(d[i+2>>0]|0)>>0]|0,h<<24>>24>-1):0)?(j=a[270556+(d[i+3>>0]|0)>>0]|0,j<<24>>24>-1):0)?(k=a[270556+(d[i+4>>0]|0)>>0]|0,k<<24>>24>-1):0)?(g=(k<<24>>24)+((j<<24>>24)+((h<<24>>24)+(e<<24>>24<<4)<<4)<<4)|0,(g|0)>-1):0){c[f>>2]=i+5;break}else e=117}}else{if(e>>>0<=1){g=37;break}e=a[i>>0]|0}e=a[270556+(e&255)>>0]|0;if((e<<24>>24>-1?(l=a[270556+(d[i+1>>0]|0)>>0]|0,l<<24>>24>-1):0)?(m=(l<<24>>24)+(e<<24>>24<<4)|0,(m|0)>-1):0){c[f>>2]=i+2;g=m}else g=37}else g=f;while(0);k=b+8|0;j=b+16|0;f=c[k>>2]|0;e=f;do if(((c[j>>2]|0)-f|0)>>>0<7){h=c[b>>2]|0;i=b+12|0;e=f-(c[i>>2]|0)|0;f=e+71+(e>>>2)|0;if(f>>>0<e>>>0)Jn(h,270142,50331712,268576);else{b=b+20|0;Kn(h,c[b>>2]|0,f);b=c[(c[b>>2]|0)+20>>2]|0;o=b+e|0;c[k>>2]=o;c[i>>2]=b;c[j>>2]=b+f;break}}else o=e;while(0);if(g>>>0<128){m=g;b=0;n=1;b=b&255;b=m+b|0;b=b&255;a[o>>0]=b;o=c[k>>2]|0;o=o+n|0;c[k>>2]=o;return}if(g>>>0>=2048)if(g>>>0>=65536)if(g>>>0>=2097152)if(g>>>0<67108864){e=5;n=21}else e=g>>>31|6;else{e=4;n=21}else{e=3;n=21}else{e=2;n=21}f=a[269353+(e+-1)>>0]|0;h=e;do{h=h+-1|0;a[o+h>>0]=g&63|128;g=g>>>6}while((h|0)>1);n=f&255;n=g+n|0;n=n&255;a[o>>0]=n;o=c[k>>2]|0;o=o+e|0;c[k>>2]=o;return}function wv(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+48|0;t=u;c[t>>2]=b;Eo(b,0)|0;h=b+68|0;g=c[h>>2]|0;f=c[b+64>>2]|0;f=(g|0)!=(f|0)?f:0;f=(f|0)==0?936:f;if((c[f>>2]|0)==8)i=c[f+8>>2]|0;else i=0;c[t+4>>2]=i;s=t+8|0;k=i+20|0;j=c[k>>2]|0;if(g>>>0>=(c[b+56>>2]|0)>>>0)Un(b,5237);if(j>>>0>2147483646)Jn(b,268620,50336889,268576);f=ap(c[b+44>>2]|0,j,1,u+36|0)|0;if(!f)Mn(b,268620,5246);m=c[h>>2]|0;c[m>>2]=10;c[m+8>>2]=f;m=f+4|0;c[m>>2]=(c[m>>2]|0)+1;m=c[h>>2]|0;c[h>>2]=m+16;m=c[m+8>>2]|0;p=t+20|0;c[p>>2]=m;f=c[m+20>>2]|0;c[s>>2]=f;q=t+12|0;c[q>>2]=f;r=t+16|0;c[r>>2]=f+j;g=i+28|0;o=t+28|0;c[o>>2]=g;h=g+(c[k>>2]|0)|0;k=t+32|0;c[k>>2]=h;n=t+24|0;c[n>>2]=g;if(g>>>0<h>>>0)f=g;else{d=f;t=f;e=m;t=d-t|0;Kn(b,e,t);e=c[p>>2]|0;e=e+20|0;e=c[e>>2]|0;t=e+t|0;c[s>>2]=t;c[q>>2]=e;c[r>>2]=t;bp(b);l=u;return}a:while(1){g=f+1|0;f=a[f>>0]|0;i=f&255;do if(f<<24>>24<=-1){if((f&255)<192){f=27;break a}if((f&255)<224){j=1;f=i&31;break}if((f&255)<240){j=2;f=i&15;break}if((f&255)<248){j=3;f=i&7;break}if((f&255)<252){j=4;f=i&3;break}if((f&255)>=254)if(f<<24>>24==-1){f=27;break a}else{j=6;f=0;break}else{j=5;f=i&1;break}}else{j=0;f=i&127}while(0);if((g+j|0)>>>0>h>>>0){f=27;break}if(j)while(1){h=g+1|0;f=a[g>>0]&63|f<<6;if((j|0)>1){g=h;j=j+-1|0}else{g=h;break}}c[n>>2]=g;Dg[d&63](t,e,f);f=c[n>>2]|0;h=c[k>>2]|0;if(f>>>0>=h>>>0){f=30;break}if(f>>>0<(c[o>>2]|0)>>>0){f=27;break}}if((f|0)==27)ko(b,270005,282);else if((f|0)==30){d=c[s>>2]|0;t=c[q>>2]|0;e=c[p>>2]|0;t=d-t|0;Kn(b,e,t);e=c[p>>2]|0;e=e+20|0;e=c[e>>2]|0;t=e+t|0;c[s>>2]=t;c[q>>2]=e;c[r>>2]=t;bp(b);l=u;return}}function xv(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;j=b+8|0;k=b+16|0;g=c[j>>2]|0;e=g;do if(((c[k>>2]|0)-g|0)>>>0<6){h=c[b>>2]|0;i=b+12|0;e=g-(c[i>>2]|0)|0;g=e+70+(e>>>2)|0;if(g>>>0<e>>>0)Jn(h,270142,50331712,268576);else{l=b+20|0;Kn(h,c[l>>2]|0,g);h=c[(c[l>>2]|0)+20>>2]|0;l=h+e|0;c[j>>2]=l;c[i>>2]=h;c[k>>2]=h+g;break}}else l=e;while(0);if((f|0)<0){k=c[b>>2]|0;Jn(k,278902,100663676,278918)}if((f|0)<128){if((d[278886+(f>>>3)>>0]|0)&1<<(f&7)|0){c[j>>2]=l+1;a[l>>0]=f;return}}else if((f|0)>=256){if((f|0)>=65536){b=c[b>>2]|0;Jn(b,278902,100663676,278918)}a[l>>0]=37;a[l+1>>0]=117;a[l+2>>0]=a[314336+(f>>>12)>>0]|0;a[l+3>>0]=a[314336+(f>>>8&15)>>0]|0;a[l+4>>0]=a[314336+(f>>>4&15)>>0]|0;a[l+5>>0]=a[314336+(f&15)>>0]|0;c[j>>2]=l+6;return}a[l>>0]=37;a[l+1>>0]=a[314336+(f>>>4)>>0]|0;a[l+2>>0]=a[314336+(f&15)>>0]|0;c[j>>2]=l+3;return}function yv(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+16|0;r=t;s=b+8|0;o=b+16|0;j=c[s>>2]|0;i=j;do if(((c[o>>2]|0)-j|0)>>>0<21){m=c[b>>2]|0;n=b+12|0;i=j-(c[n>>2]|0)|0;j=i+85+(i>>>2)|0;if(j>>>0<i>>>0)Jn(m,270142,50331712,268576);else{q=b+20|0;Kn(m,c[q>>2]|0,j);m=c[(c[q>>2]|0)+20>>2]|0;q=m+i|0;c[s>>2]=q;c[n>>2]=m;c[o>>2]=m+j;break}}else q=i;while(0);if((f|0)<0){o=c[b>>2]|0;Jn(o,278902,117440714,278918)}if((f|0)<128?(d[e+(f>>>3)>>0]|0)&1<<(f&7)|0:0){c[s>>2]=q+1;a[q>>0]=f;l=t;return}a:do switch(f&-1024|0){case 55296:{e=b+24|0;n=c[b+32>>2]|0;j=c[e>>2]|0;if(!(j>>>0<n>>>0?j>>>0>=(c[b+28>>2]|0)>>>0:0)){o=c[b>>2]|0;Jn(o,278902,117440714,278918)}i=j+1|0;j=a[j>>0]|0;m=j&255;do if(j<<24>>24<=-1){if((j&255)<192){o=c[b>>2]|0;Jn(o,278902,117440714,278918)}if((j&255)<224){k=1;g=m&31;break}if((j&255)<240){k=2;g=m&15;break}if((j&255)<248){k=3;g=m&7;break}if((j&255)<252){k=4;g=m&3;break}if((j&255)<254){k=5;g=m&1;break}if(j<<24>>24==-1){o=c[b>>2]|0;Jn(o,278902,117440714,278918)}else{k=6;g=0}}else{k=0;g=m&127}while(0);if((i+k|0)>>>0>n>>>0){o=c[b>>2]|0;Jn(o,278902,117440714,278918)}if(k)while(1){j=i+1|0;g=a[i>>0]&63|g<<6;if((k|0)>1){i=j;k=k+-1|0}else{i=j;break}}c[e>>2]=i;if((g&-1024|0)==56320){h=(f<<10)+-56613888+g|0;break a}else{f=c[b>>2]|0;Jn(f,278902,117440714,278918)}break}case 56320:{f=c[b>>2]|0;Jn(f,278902,117440714,278918);break}default:if((f|0)>1114111){f=c[b>>2]|0;Jn(f,278902,117440714,278918)}else h=f}while(0);if(h>>>0<128){i=0;j=1}else{if(h>>>0>=2048)if(h>>>0>=65536)if(h>>>0>=2097152)if(h>>>0<67108864){g=5;p=36}else g=h>>>31|6;else{g=4;p=36}else{g=3;p=36}else{g=2;p=36}i=a[269353+(g+-1)>>0]|0;j=g;do{j=j+-1|0;a[r+j>>0]=h&63|128;h=h>>>6}while((j|0)>1);j=g}p=h+(i&255)|0;a[r>>0]=p;a[q>>0]=37;a[q+1>>0]=a[314336+(p>>>4&15)>>0]|0;g=q+3|0;a[q+2>>0]=a[314336+(p&15)>>0]|0;c[s>>2]=g;if((j|0)>1)h=1;else{l=t;return}do{q=d[r+h>>0]|0;a[g>>0]=37;a[g+1>>0]=a[314336+(q>>>4)>>0]|0;a[g+2>>0]=a[314336+(q&15)>>0]|0;g=g+3|0;c[s>>2]=g;h=h+1|0}while((h|0)!=(j|0));l=t;return}function zv(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=b+8|0;l=b+16|0;i=c[r>>2]|0;g=i;do if(((c[l>>2]|0)-i|0)>>>0<7){j=c[b>>2]|0;k=b+12|0;g=i-(c[k>>2]|0)|0;i=g+71+(g>>>2)|0;if(i>>>0<g>>>0)Jn(j,270142,50331712,268576);else{n=b+20|0;Kn(j,c[n>>2]|0,i);n=c[(c[n>>2]|0)+20>>2]|0;h=n+g|0;c[r>>2]=h;c[k>>2]=n;c[l>>2]=n+i;break}}else h=g;while(0);if((f|0)!=37){if(f>>>0<128){i=0;g=1}else{if(f>>>0>=2048)if(f>>>0>=65536)if(f>>>0>=2097152)if(f>>>0<67108864){g=5;o=45}else g=f>>>31|6;else{g=4;o=45}else{g=3;o=45}else{g=2;o=45}i=a[269353+(g+-1)>>0]|0;j=g;do{j=j+-1|0;a[h+j>>0]=f&63|128;f=f>>>6}while((j|0)>1)}a[h>>0]=f+(i&255);b=g;q=c[r>>2]|0;b=q+b|0;c[r>>2]=b;return}n=b+24|0;k=c[n>>2]|0;i=(c[b+32>>2]|0)-k|0;if(i>>>0<2){o=c[b>>2]|0;Jn(o,278902,117440852,278918)}g=a[270556+(d[k>>0]|0)>>0]|0;if(g<<24>>24<=-1){o=c[b>>2]|0;Jn(o,278902,117440852,278918)}j=k+1|0;f=a[270556+(d[j>>0]|0)>>0]|0;if(f<<24>>24<=-1){o=c[b>>2]|0;Jn(o,278902,117440852,278918)}g=(f<<24>>24)+(g<<24>>24<<4)|0;if((g|0)<0){o=c[b>>2]|0;Jn(o,278902,117440852,278918)}if((g|0)<128)if(!((d[e+(g>>>3)>>0]|0)&1<<(g&7))){c[r>>2]=h+1;a[h>>0]=g;b=2;r=n;q=c[r>>2]|0;b=q+b|0;c[r>>2]=b;return}else{a[h>>0]=37;a[h+1>>0]=a[k>>0]|0;a[h+2>>0]=a[j>>0]|0;c[r>>2]=h+3;b=2;r=n;q=c[r>>2]|0;b=q+b|0;c[r>>2]=b;return}if((g|0)<192){o=c[b>>2]|0;Jn(o,278902,117440852,278918)}if((g|0)>=224)if((g|0)>=240)if((g|0)<248){p=4;q=65536;m=7}else{o=c[b>>2]|0;Jn(o,278902,117440852,278918)}else{p=3;q=2048;m=15}else{p=2;q=128;m=31}if(i>>>0<((p*3|0)+-1|0)>>>0){o=c[b>>2]|0;Jn(o,278902,117440852,278918)}e=1;l=m&g;while(1){j=k+3|0;g=a[270556+(d[j>>0]|0)>>0]|0;if(g<<24>>24<=-1){o=49;break}f=a[270556+(d[k+4>>0]|0)>>0]|0;if(f<<24>>24<=-1){o=49;break}g=(f<<24>>24)+(g<<24>>24<<4)|0;if((g&-2147483456|0)!=128){o=49;break}i=l<<6;f=g&63|i;e=e+1|0;if(e>>>0>=p>>>0){o=22;break}else{l=f;k=j}}if((o|0)==22){c[n>>2]=k+5;if((f|0)<(q|0)|(f|0)>1114111|(i&-2048|0)==55296){b=c[b>>2]|0;Jn(b,278902,117440852,278918)}if((f|0)<=65535)if(f>>>0<128){i=1;g=0}else{if(f>>>0>=2048)if(f>>>0<65536)j=3;else j=l>>>25&1|6;else j=2;g=a[269353+(j+-1)>>0]|0;i=j;do{i=i+-1|0;a[h+i>>0]=f&63|128;f=f>>>6}while((i|0)>1);i=j}else{k=f+-65536|0;f=(k>>10)+55296|0;if(f>>>0<128){i=0;g=1}else{if(f>>>0>=2048)if(f>>>0>=65536)if(f>>>0>=2097152)if(f>>>0<67108864){g=5;o=29}else g=f>>>31|6;else{g=4;o=29}else{g=3;o=29}else{g=2;o=29}i=a[269353+(g+-1)>>0]|0;j=g;do{j=j+-1|0;a[h+j>>0]=f&63|128;f=f>>>6}while((j|0)>1)}a[h>>0]=f+(i&255);h=(c[r>>2]|0)+g|0;c[r>>2]=h;a[h+2>>0]=k&63|128;a[h+1>>0]=k>>>6&15|176;f=13;i=3;g=-32}a[h>>0]=f+(g&255);b=i;q=c[r>>2]|0;b=q+b|0;c[r>>2]=b;return}else if((o|0)==49){r=c[b>>2]|0;Jn(r,278902,117440852,278918)}}function Av(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=a+68|0;e=c[g>>2]|0;f=a+56|0;if(e>>>0>=(c[f>>2]|0)>>>0)Un(a,4361);c[g>>2]=e+16;if(c[a+72>>2]|0?(d=c[a+64>>2]|0,h=d+-16|0,c[e>>2]=c[h>>2],c[e+4>>2]=c[h+4>>2],c[e+8>>2]=c[h+8>>2],c[e+12>>2]=c[h+12>>2],c[h>>2]&8|0):0){h=(c[d+-8>>2]|0)+4|0;c[h>>2]=(c[h>>2]|0)+1}b=c[(c[a+304>>2]|0)+(b<<2)>>2]|0;d=c[g>>2]|0;if(d>>>0>=(c[f>>2]|0)>>>0)Un(a,4153);c[g>>2]=d+16;c[d>>2]=8;c[d+8>>2]=b;d=b+4|0;c[d>>2]=(c[d>>2]|0)+1;d=c[g>>2]|0;if(d>>>0>=(c[f>>2]|0)>>>0)Un(a,1093);b=c[a+64>>2]|0;if((d|0)==(b|0))jo(a,376,0);c[g>>2]=d+16;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];if(!(c[d>>2]&8)){Fo(a,-3,125);return}h=(c[d+8>>2]|0)+4|0;c[h>>2]=(c[h>>2]|0)+1;Fo(a,-3,125);return}function Bv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,B=0,C=0,D=0,E=0,F=0;F=l;l=l+96|0;z=F+88|0;y=F+56|0;B=F+24|0;x=F;D=a+68|0;e=c[D>>2]|0;E=a+56|0;if(e>>>0>=(c[E>>2]|0)>>>0)Un(a,4361);c[D>>2]=e+16;k=a+72|0;C=a+64|0;if(c[k>>2]|0?(d=c[C>>2]|0,w=d+-16|0,c[e>>2]=c[w>>2],c[e+4>>2]=c[w+4>>2],c[e+8>>2]=c[w+8>>2],c[e+12>>2]=c[w+12>>2],c[w>>2]&8|0):0){w=(c[d+-8>>2]|0)+4|0;c[w>>2]=(c[w>>2]|0)+1}d=c[D>>2]|0;g=d-(c[C>>2]|0)|0;w=g>>4;i=w+-1|0;if(!w)jo(a,300,-1);w=a+304|0;e=c[(c[w>>2]|0)+348>>2]|0;if(d>>>0>=(c[E>>2]|0)>>>0)Un(a,4153);c[D>>2]=d+16;c[d>>2]=8;c[d+8>>2]=e;e=e+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[C>>2]|0;f=(c[D>>2]|0)-e>>4;d=((g|0)<16?f:0)+i|0;if(d>>>0>=f>>>0)jo(a,376,i);ro(a,e+(d<<4)|0,e+(f+-1<<4)|0)|0;e=c[C>>2]|0;f=(c[D>>2]|0)-e>>4;d=f+-2|0;if(f>>>0<=1)jo(a,376,-2);u=e+(d<<4)|0;f=e+(f+-1<<4)|0;v=c[u>>2]|0;d=c[e+(d<<4)+8>>2]|0;QQ(u|0,u+16|0,f-u|0)|0;c[f>>2]=2;f=(c[D>>2]|0)+-16|0;c[D>>2]=f;e=f;if((v&8|0)!=0?(u=d+4|0,v=(c[u>>2]|0)+-1|0,c[u>>2]=v,(v|0)==0):0){Yn(c[a+44>>2]|0,d);f=c[D>>2]|0;e=f}v=e-(c[C>>2]|0)|0;v=(v|0)<16?-2147483648:(v>>4)+-1|0;d=c[(c[w>>2]|0)+256>>2]|0;if(f>>>0>=(c[E>>2]|0)>>>0)Un(a,4153);c[D>>2]=f+16;c[f>>2]=8;c[f+8>>2]=d;d=d+4|0;c[d>>2]=(c[d>>2]|0)+1;d=c[D>>2]|0;if(d>>>0>=(c[E>>2]|0)>>>0)Un(a,4361);c[D>>2]=d+16;if(c[k>>2]|0?(m=c[C>>2]|0,u=m+-16|0,c[d>>2]=c[u>>2],c[d+4>>2]=c[u+4>>2],c[d+8>>2]=c[u+8>>2],c[d+12>>2]=c[u+12>>2],c[u>>2]&8|0):0){u=(c[m+-8>>2]|0)+4|0;c[u>>2]=(c[u>>2]|0)+1}e=c[D>>2]|0;t=c[C>>2]|0;s=e-t>>4;u=((v|0)<0?s:0)+v|0;u=u>>>0<s>>>0?t+(u<<4)|0:0;a:do if((c[((u|0)==0?936:u)>>2]|0)==9){s=a+52|0;t=a+60|0;u=a+44|0;r=0;d=0;b:while(1){f=c[s>>2]|0;e=e-f+592|0;f=f+e|0;do if((c[E>>2]|0)>>>0<f>>>0)if((c[t>>2]|0)>>>0<f>>>0){lo(a,e,1)|0;break}else{c[E>>2]=f;break}while(0);Np(a,v,r)|0;Np(a,v,r|1)|0;e=c[C>>2]|0;q=(c[D>>2]|0)-e>>4;f=q+-1|0;if(!q){e=31;break}j=+ho(a,e+(f<<4)|0);g=c[C>>2]|0;p=g+(f<<4)|0;q=c[p>>2]|0;f=g+(f<<4)+8|0;e=c[f>>2]|0;c[p>>2]=0;h[f>>3]=j;f=g;if((q&8|0)!=0?(p=e+4|0,q=(c[p>>2]|0)+-1|0,c[p>>2]=q,(q|0)==0):0){Yn(c[u>>2]|0,e);f=c[C>>2]|0;g=f}n=~~+TO(j,4294967296.0);p=~~+A(+(j*2.3283064365386963e-10))>>>0;k=c[D>>2]|0;e=k-g>>4;e=e>>>0>1?g+(e+-2<<4)|0:0;e=(e|0)==0?936:e;i=c[e>>2]|0;m=k;c:do switch(c[4924+(i<<2)>>2]|0){case 6:case 9:{q=d+1|0;g=k-f|0;o=g>>4;i=o+-2|0;if(o>>>0<=1){e=37;break b}d=c[(c[w>>2]|0)+352>>2]|0;if(m>>>0>=(c[E>>2]|0)>>>0){e=39;break b}c[D>>2]=m+16;c[m>>2]=8;c[m+8>>2]=d;e=d+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[C>>2]|0;f=(c[D>>2]|0)-e>>4;d=((g|0)<32?f:0)+i|0;if(d>>>0>=f>>>0){e=41;break b}ro(a,e+(d<<4)|0,e+(f+-1<<4)|0)|0;e=c[C>>2]|0;f=(c[D>>2]|0)-e>>4;d=f+-2|0;if(f>>>0<=1){e=43;break b}k=e+(d<<4)|0;m=e+(f+-1<<4)|0;o=c[k>>2]|0;d=c[e+(d<<4)+8>>2]|0;QQ(k|0,k+16|0,m-k|0)|0;c[m>>2]=2;e=(c[D>>2]|0)+-16|0;c[D>>2]=e;do if(o&8){m=d+4|0;o=(c[m>>2]|0)+-1|0;c[m>>2]=o;if(o|0)break;Yn(c[u>>2]|0,d);e=c[D>>2]|0}while(0);g=e-(c[C>>2]|0)|0;o=g>>4;i=o+-3|0;if(o>>>0<=2){e=48;break b}d=c[(c[w>>2]|0)+356>>2]|0;if(e>>>0>=(c[E>>2]|0)>>>0){e=50;break b}c[D>>2]=e+16;c[e>>2]=8;c[e+8>>2]=d;e=d+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[C>>2]|0;f=(c[D>>2]|0)-e>>4;d=((g|0)<48?f:0)+i|0;if(d>>>0>=f>>>0){e=52;break b}ro(a,e+(d<<4)|0,e+(f+-1<<4)|0)|0;e=c[C>>2]|0;f=(c[D>>2]|0)-e>>4;d=f+-2|0;if(f>>>0<=1){e=54;break b}k=e+(d<<4)|0;m=e+(f+-1<<4)|0;o=c[k>>2]|0;d=c[e+(d<<4)+8>>2]|0;QQ(k|0,k+16|0,m-k|0)|0;c[m>>2]=2;c[D>>2]=(c[D>>2]|0)+-16;do if(o&8|0){m=d+4|0;o=(c[m>>2]|0)+-1|0;c[m>>2]=o;if(o|0)break;Yn(c[u>>2]|0,d)}while(0);o=Cv(a,-4,n)|0;d=c[D>>2]|0;i=c[C>>2]|0;k=d-i>>4;f=k|0?i+(k+-1<<4)|0:0;f=(f|0)==0?936:f;g=(c[f>>2]|0)==8;do if(g){e=c[f+8>>2]|0;if(!e)break;if(c[e>>2]&512|0)break;switch(b|0){case 1:{e=62;break b}case 0:{d=1;e=131;break b}default:{}}}while(0);d=k>>>0>1?i+(k+-2<<4)|0:0;d=(d|0)==0?936:d;do if((c[d>>2]|0)==8){d=c[d+8>>2]|0;if(!d){n=279120;break}if(c[d>>2]&512|0){n=279120;break}if((d|0)==(c[(c[w>>2]|0)+60>>2]|0)){n=279120;break}n=d+28|0}else n=279120;while(0);do if(g){d=c[f+8>>2]|0;if(!d)break;d=c[d>>2]&512|0?0:d}else d=0;while(0);m=(d|0)==0?0:d+28|0;m=m|0?m:335059;d=k>>>0>3?i+(k+-4<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==9)e=c[d+8>>2]|0;else e=0;f=p&2|0?279127:335059;g=p&16|0?279137:335059;i=p&4|0?279149:335059;k=p&8|0?279160:335059;d=p&1|0?279175:335059;do if(e)if(!(c[e>>2]&4096)){c[y>>2]=n;c[y+4>>2]=m;c[y+8>>2]=o;c[y+12>>2]=d;c[y+16>>2]=f;c[y+20>>2]=i;c[y+24>>2]=g;c[y+28>>2]=k;Lo(a,279233,y);break}else{c[B>>2]=n;c[B+4>>2]=m;c[B+8>>2]=d;c[B+12>>2]=f;c[B+16>>2]=i;c[B+20>>2]=g;c[B+24>>2]=k;Lo(a,279205,B);break}else{c[x>>2]=n;c[x+4>>2]=d;c[x+8>>2]=f;c[x+12>>2]=i;c[x+16>>2]=g;c[x+20>>2]=k;Lo(a,279183,x)}while(0);e=c[C>>2]|0;f=(c[D>>2]|0)-e>>4;if(!f){e=81;break b}g=e+(f+-1<<4)|0;d=f+-5|0;if(f>>>0<=4){e=83;break b}o=e+(d<<4)|0;p=c[o>>2]|0;e=c[e+(d<<4)+8>>2]|0;c[o>>2]=c[g>>2];c[o+4>>2]=c[g+4>>2];c[o+8>>2]=c[g+8>>2];c[o+12>>2]=c[g+12>>2];c[g>>2]=2;d=(c[D>>2]|0)+-16|0;c[D>>2]=d;do if(p&8){o=e+4|0;p=(c[o>>2]|0)+-1|0;c[o>>2]=p;if(p|0)break;Yn(c[u>>2]|0,e);d=c[D>>2]|0}while(0);if(d-(c[C>>2]|0)>>4>>>0<3){e=88;break b}o=d+-16|0;p=c[o>>2]|0;e=c[d+-8>>2]|0;c[o>>2]=2;do if(p&8|0){o=e+4|0;p=(c[o>>2]|0)+-1|0;c[o>>2]=p;if(p|0)break;bo(c[u>>2]|0,e)}while(0);o=d+-32|0;p=c[o>>2]|0;e=c[d+-24>>2]|0;c[o>>2]=2;do if(p&8|0){o=e+4|0;p=(c[o>>2]|0)+-1|0;c[o>>2]=p;if(p|0)break;bo(c[u>>2]|0,e)}while(0);o=d+-48|0;p=c[o>>2]|0;e=c[d+-40>>2]|0;c[o>>2]=2;do if(p&8|0){o=e+4|0;p=(c[o>>2]|0)+-1|0;c[o>>2]=p;if(p|0)break;bo(c[u>>2]|0,e)}while(0);c[D>>2]=d+-48;d=c[u>>2]|0;if(!(c[d+32>>2]|0)){d=q;break c}Tn(d);d=q;break}case 5:{if(!(p&1))switch(b|0){case 0:{e=102;break b}case 1:{e=107;break b}default:{}}if((i|0)==8)e=c[e+8>>2]|0;else e=0;f=(e|0)==0?0:e+28|0;c[z>>2]=f|0?f:279258;c[z+4>>2]=n;Lo(a,279263,z);f=c[C>>2]|0;g=(c[D>>2]|0)-f>>4;if(!g){e=113;break b}i=f+(g+-1<<4)|0;e=g+-3|0;if(g>>>0<=2){e=115;break b}p=f+(e<<4)|0;q=c[p>>2]|0;f=c[f+(e<<4)+8>>2]|0;c[p>>2]=c[i>>2];c[p+4>>2]=c[i+4>>2];c[p+8>>2]=c[i+8>>2];c[p+12>>2]=c[i+12>>2];c[i>>2]=2;e=(c[D>>2]|0)+-16|0;c[D>>2]=e;do if(q&8){p=f+4|0;q=(c[p>>2]|0)+-1|0;c[p>>2]=q;if(q|0)break;Yn(c[u>>2]|0,f);e=c[D>>2]|0}while(0);if((e|0)==(c[C>>2]|0)){e=120;break b}p=e+-16|0;c[D>>2]=p;q=c[e+-16>>2]|0;e=c[e+-8>>2]|0;c[p>>2]=2;if(!(q&8))break c;p=e+4|0;q=(c[p>>2]|0)+-1|0;c[p>>2]=q;if(q|0)break c;Yn(c[u>>2]|0,e);break}default:{e=125;break b}}while(0);r=r+2|0;e=c[D>>2]|0}switch(e|0){case 31:{jo(a,300,-1);break}case 37:{jo(a,300,-2);break}case 39:{Un(a,4153);break}case 41:{jo(a,376,i);break}case 43:{jo(a,376,-2);break}case 48:{jo(a,300,-3);break}case 50:{Un(a,4153);break}case 52:{jo(a,376,i);break}case 54:{jo(a,376,-2);break}case 62:{if(d>>>0>=(c[E>>2]|0)>>>0)Un(a,4274);c[D>>2]=d+16;c[d>>2]=0;h[d+8>>3]=+(o>>>0);E=1;l=F;return E|0}case 81:{jo(a,376,-1);break}case 83:{jo(a,376,-5);break}case 88:{Jn(a,268620,50337319,268636);break}case 102:{if((m|0)==(g|0))Jn(a,268620,50337407,268636);a=m+-16|0;c[D>>2]=a;E=c[m+-16>>2]|0;d=c[m+-8>>2]|0;c[a>>2]=2;if(!(E&8)){E=1;l=F;return E|0}D=d+4|0;E=(c[D>>2]|0)+-1|0;c[D>>2]=E;if(E|0){E=1;l=F;return E|0}Yn(c[u>>2]|0,d);E=1;l=F;return E|0}case 107:{if(m>>>0>=(c[E>>2]|0)>>>0)Un(a,4244);c[D>>2]=m+16;c[m>>2]=0;h[m+8>>3]=+(n|0);E=1;l=F;return E|0}case 113:{jo(a,376,-1);break}case 115:{jo(a,376,-3);break}case 120:{Jn(a,268620,50337407,268636);break}case 125:{uq(a);if((d|0)<=9)break a;d=c[(c[w>>2]|0)+260>>2]|0;e=c[D>>2]|0;if(e>>>0<(c[E>>2]|0)>>>0){c[D>>2]=e+16;c[e>>2]=8;c[e+8>>2]=d;E=d+4|0;c[E>>2]=(c[E>>2]|0)+1;break a}else Un(a,4153);break}case 131:{l=F;return d|0}}}while(0);if((b|0)!=-1){E=0;l=F;return E|0}Mo(a,-2-v+((c[D>>2]|0)-(c[C>>2]|0)>>4)|0,1);E=1;l=F;return E|0}function Cv(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=a+68|0;f=c[s>>2]|0;i=a+64|0;r=f-(c[i>>2]|0)>>4;h=((b|0)<0?r:0)+b|0;if(h>>>0>=r>>>0)jo(a,300,b);b=c[(c[a+304>>2]|0)+388>>2]|0;if(f>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4153);c[s>>2]=f+16;c[f>>2]=8;c[f+8>>2]=b;f=b+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[i>>2]|0;g=(c[s>>2]|0)-f>>4;b=((h|0)<0?g:0)+h|0;if(b>>>0>=g>>>0)jo(a,376,h);ro(a,f+(b<<4)|0,f+(g+-1<<4)|0)|0;f=c[i>>2]|0;g=(c[s>>2]|0)-f>>4;b=g+-2|0;if(g>>>0<=1)jo(a,376,-2);q=f+(b<<4)|0;g=f+(g+-1<<4)|0;r=c[q>>2]|0;b=c[f+(b<<4)+8>>2]|0;QQ(q|0,q+16|0,g-q|0)|0;c[g>>2]=2;f=(c[s>>2]|0)+-16|0;c[s>>2]=f;g=f;if((r&8|0)!=0?(q=b+4|0,r=(c[q>>2]|0)+-1|0,c[q>>2]=r,(r|0)==0):0){Yn(c[a+44>>2]|0,b);b=c[s>>2]|0;r=b}else{r=f;b=g}q=c[i>>2]|0;b=b-q>>4;b=b|0?q+(b+-1<<4)|0:0;b=(b|0)==0?936:b;if(((((c[b>>2]|0)==10?(j=c[b+8>>2]|0,(j|0)!=0):0)?(k=e>>>6,p=e-(k<<6)|0,n=c[j+16>>2]|0,n>>>0>=5):0)?(m=j+24|0,(c[m>>2]|0)>>>0>e>>>0):0)?(l=k<<1|1,o=c[m+(l+1<<2)>>2]|0,n>>>0>=o>>>0):0){f=c[m+(l<<2)>>2]|0;m=m+o|0;l=n-o|0;if(p){g=0;b=0;h=0;do{if((h|0)<1){j=g;k=h;i=g;while(1){b=b<<8;e=i+1|0;if(i>>>0<l>>>0){g=e;b=d[m+i>>0]|0|b;i=e}else g=j;k=k+8|0;if((k|0)>=1)break;else j=g}h=h+8+(0-h&-8)|0}e=h+-1|0;do if(!(1<<e&b))h=e;else{if((h|0)<2){k=g;i=g;j=e;while(1){b=b<<8;e=i+1|0;if(i>>>0<l>>>0){g=e;b=d[m+i>>0]|0|b;i=e}else g=k;j=j+8|0;if((j|0)>=1)break;else k=g}k=h+7+(1-h&-8)|0}else k=e;h=k+-1|0;if(!(1<<h&b)){if((k|0)<3){j=g;i=g;while(1){b=b<<8;e=i+1|0;if(i>>>0<l>>>0){g=e;b=d[m+i>>0]|0|b;i=e}else g=j;h=h+8|0;if((h|0)>=2)break;else j=g}h=k+7+(2-k&-8)|0}h=h+-2|0;f=f+1+(b>>>h&3)|0;break}if((k|0)<2){e=g;do{b=b<<8;i=g+1|0;if(g>>>0<l>>>0){e=i;b=d[m+g>>0]|0|b;g=i}h=h+8|0}while((h|0)<1);h=k+7+(1-k&-8)|0}else e=g;j=h+-1|0;if(!(1<<j&b)){if((h|0)<9){g=e;i=e;while(1){b=b<<8;e=i+1|0;if(i>>>0<l>>>0){g=e;b=d[m+i>>0]|0|b;i=e}if((j|0)<0)j=j+8|0;else break}h=h+7+(8-h&-8)|0}else{h=j;g=e}h=h+-8|0;f=f+-128+(b>>>h&255)|0;break}if((h|0)<17){g=e;f=e;e=j;do{b=b<<8;i=f+1|0;if(f>>>0<l>>>0){g=i;b=d[m+f>>0]|0|b;f=i}e=e+8|0}while((e|0)<16);j=h+7+(16-h&-8)|0}else g=e;f=j+-16|0;k=b>>>f<<16;if((f|0)<16){e=g;h=g;while(1){b=b<<8;i=h+1|0;if(h>>>0<l>>>0){g=i;b=d[m+h>>0]|0|b;h=i}else g=e;f=f+8|0;if((f|0)>=16)break;else e=g}f=j+-8+(31-j&-8)|0}h=f+-16|0;f=b>>>h&65535|k}while(0);p=p+-1|0}while((p|0)!=0)}}else f=0;if((r|0)==(q|0))Jn(a,268620,50337407,268636);q=r+-16|0;c[s>>2]=q;s=c[r+-16>>2]|0;b=c[r+-8>>2]|0;c[q>>2]=2;if(!(s&8))return f|0;r=b+4|0;s=(c[r>>2]|0)+-1|0;c[r>>2]=s;if(s|0)return f|0;Yn(c[a+44>>2]|0,b);return f|0}function Dv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,i=0,k=0.0,l=0,m=0,n=0,o=0,p=0;p=a+68|0;g=c[p>>2]|0;m=a+56|0;if(g>>>0>=(c[m>>2]|0)>>>0)Un(a,4361);c[p>>2]=g+16;o=a+64|0;if(c[a+72>>2]|0?(f=c[o>>2]|0,n=f+-16|0,c[g>>2]=c[n>>2],c[g+4>>2]=c[n+4>>2],c[g+8>>2]=c[n+8>>2],c[g+12>>2]=c[n+12>>2],c[n>>2]&8|0):0){n=(c[f+-8>>2]|0)+4|0;c[n>>2]=(c[n>>2]|0)+1}g=c[p>>2]|0;f=c[o>>2]|0;l=g-f|0;i=l>>4;n=i+-1|0;f=i|0?f+(n<<4)|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)!=9)Jn(a,279404,100664195,279418);f=c[f+8>>2]|0;if(!f)Jn(a,279404,100664195,279418);if((c[f>>2]&-134217728|0)!=805306368)Jn(a,279404,100664195,279418);if(!i)jo(a,300,-1);f=c[(c[a+304>>2]|0)+404>>2]|0;if(g>>>0>=(c[m>>2]|0)>>>0)Un(a,4153);c[p>>2]=g+16;c[g>>2]=8;c[g+8>>2]=f;g=f+4|0;c[g>>2]=(c[g>>2]|0)+1;g=c[o>>2]|0;i=(c[p>>2]|0)-g>>4;f=((l|0)<16?i:0)+n|0;if(f>>>0>=i>>>0)jo(a,376,n);ro(a,g+(f<<4)|0,g+(i+-1<<4)|0)|0;g=c[o>>2]|0;i=(c[p>>2]|0)-g>>4;f=i+-2|0;if(i>>>0<=1)jo(a,376,-2);l=g+(f<<4)|0;m=g+(i+-1<<4)|0;n=c[l>>2]|0;f=c[g+(f<<4)+8>>2]|0;QQ(l|0,l+16|0,m-l|0)|0;c[m>>2]=2;g=(c[p>>2]|0)+-16|0;c[p>>2]=g;if((n&8|0)!=0?(m=f+4|0,n=(c[m>>2]|0)+-1|0,c[m>>2]=n,(n|0)==0):0){Yn(c[a+44>>2]|0,f);g=c[p>>2]|0}f=c[o>>2]|0;n=g-f>>4;g=n+-1|0;if(!n)jo(a,300,-1);k=+ho(a,f+(g<<4)|0);f=c[o>>2]|0;l=f+(g<<4)|0;n=c[l>>2]|0;m=f+(g<<4)+8|0;g=c[m>>2]|0;c[l>>2]=0;h[m>>3]=k;if((n&8|0)!=0?(m=g+4|0,n=(c[m>>2]|0)+-1|0,c[m>>2]=n,(n|0)==0):0){Yn(c[a+44>>2]|0,g);f=c[o>>2]|0}g=c[p>>2]|0;if((g|0)==(f|0))Jn(a,268620,50337407,268636);o=g+-16|0;c[p>>2]=o;p=c[g+-16>>2]|0;f=c[g+-8>>2]|0;c[o>>2]=2;if(p&8|0?(o=f+4|0,p=(c[o>>2]|0)+-1|0,c[o>>2]=p,(p|0)==0):0)Yn(c[a+44>>2]|0,f);h[j>>3]=k;p=c[j+4>>2]&2147483647;if(p>>>0>2146435072|(p|0)==2146435072&(c[j>>2]|0)>>>0>0)if(!(b&2))e=(b&1|0)==0?k:0.0;else Jn(a,279404,50332559,279432);else e=k;if(!(b&16))f=0;else{b=Ev(e)|0;f=b;e=e+ +(b*1e3|0)}if(!d)return +e;c[d>>2]=f;return +e}function Ev(a){a=+a;var b=0,d=0,e=0,f=0,g=0;g=l;l=l+192|0;e=g+184|0;b=g;f=g+64|0;h[j>>3]=a;d=c[j+4>>2]&2146435072;if(!(d>>>0<2146435072|(d|0)==2146435072&0<0)){f=0;l=g;return f|0}if(!(a>=-86400000864.0e5&a<=86400000864.0e5)){f=0;l=g;return f|0}Fv(a,g+152|0,b,8);c[e>>2]=~~(+Gv(b,0)/1.0e3);b=f;d=b+88|0;do{c[b>>2]=0;b=b+4|0}while((b|0)<(d|0));Jf(e|0,f|0)|0;d=f+44|0;Nf(e|0,d|0)|0;c[f+32>>2]=0;c[f+76>>2]=0;b=Pf(f|0)|0;d=Pf(d|0)|0;if((b|0)==-1|(d|0)==-1){f=0;l=g;return f|0}f=~~+jb(d|0,b|0);l=g;return f|0}function Fv(a,b,e,f){a=+a;b=b|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0.0,u=0;a=+A(+a);t=+TO(a,864.0e5);r=~~(t<0.0?t+864.0e5:t);g=~~+A(+(a/864.0e5));o=(r|0)%1e3|0;c[b+24>>2]=o;p=((r|0)/1e3|0|0)%60|0;c[b+20>>2]=p;q=((r|0)/6e4|0|0)%60|0;c[b+16>>2]=q;r=(r|0)/36e5|0;c[b+12>>2]=r;n=g+140000004|0;s=(n|0)%7|0;c[b+28>>2]=s;if((g|0)>-1)i=(g>>>0)/365|0;else i=(g|0)/366|0;g=-719050-g|0;l=i+1970|0;while(1){i=l+-1969|0;j=l+-1901|0;m=l+-2e3|0;k=l+-1601|0;m=g+(l*365|0)+((((i|0)>-1?i:l+-1972|0)|0)/4|0)+((((j|0)>-1?j:m)|0)/-100|0)+((((k|0)>-1?k:m)|0)/400|0)|0;if((m|0)<1)break;l=l+-1+((m+-1|0)/-366|0)|0}g=0-m|0;if(!(l&3))if(!((l|0)%100|0))k=((l|0)%400|0|0)==0&1;else k=1;else k=0;if((m|0)<=-31){g=-31-m|0;i=k|28;if((g|0)>=(i|0)){j=g-i|0;if((j|0)>=31){g=j+-31|0;if((g|0)>=30){g=j+-61|0;if((g|0)>=31){g=j+-92|0;if((g|0)>=30){g=j+-122|0;if((g|0)>=31){g=j+-153|0;if((g|0)>=31){g=j+-184|0;if((g|0)>=30){g=j+-214|0;if((g|0)>=31){g=j+-245|0;if((g|0)<30)i=10;else{g=j+-275|0;u=(g|0)<31;i=u?11:12;g=u?g:j+-306|0}}else i=9}else i=8}else i=7}else i=6}else i=5}else i=4}else i=3}else{i=2;g=j}}else i=1}else i=0;if((f&8|0)!=0&(l+-1971|0)>>>0>66){l=(n+m|0)%7|0;l=(d[279457+((k|0)==0?l:l+7|0)>>0]|0)+1970|0}c[b>>2]=l;k=b+4|0;c[k>>2]=i;j=b+8|0;c[j>>2]=g;if(f&4){i=i+1|0;c[k>>2]=i;g=g+1|0;c[j>>2]=g}if(!e)return;h[e>>3]=+(l|0);h[e+8>>3]=+(i|0);h[e+16>>3]=+(g|0);h[e+24>>3]=+(r|0);h[e+32>>3]=+(q|0);h[e+40>>3]=+(p|0);h[e+48>>3]=+(o|0);h[e+56>>3]=+(s|0);return}function Gv(a,b){a=a|0;b=b|0;var e=0.0,f=0,g=0,i=0.0,k=0.0,l=0.0,m=0.0,n=0,o=0.0,p=0.0,q=0.0,r=0.0,t=0,u=0;e=+h[a>>3];h[j>>3]=e;f=c[j+4>>2]|0;n=f&2146435072;if(n>>>0<2146435072|(n|0)==2146435072&0<0){e=+A(+(+B(+e)));e=(f|0)>-1|(f|0)==-1&(c[j>>2]|0)>>>0>4294967295?e:-e;h[a>>3]=e}f=a+8|0;i=+h[f>>3];h[j>>3]=i;g=c[j+4>>2]|0;n=g&2146435072;if(n>>>0<2146435072|(n|0)==2146435072&0<0){i=+A(+(+B(+i)));i=(g|0)>-1|(g|0)==-1&(c[j>>2]|0)>>>0>4294967295?i:-i;h[f>>3]=i}f=a+16|0;k=+h[f>>3];h[j>>3]=k;g=c[j+4>>2]|0;n=g&2146435072;if(n>>>0<2146435072|(n|0)==2146435072&0<0){k=+A(+(+B(+k)));k=(g|0)>-1|(g|0)==-1&(c[j>>2]|0)>>>0>4294967295?k:-k;h[f>>3]=k}f=a+24|0;l=+h[f>>3];h[j>>3]=l;g=c[j+4>>2]|0;n=g&2146435072;if(n>>>0<2146435072|(n|0)==2146435072&0<0){l=+A(+(+B(+l)));l=(g|0)>-1|(g|0)==-1&(c[j>>2]|0)>>>0>4294967295?l:-l;h[f>>3]=l}f=a+32|0;m=+h[f>>3];h[j>>3]=m;g=c[j+4>>2]|0;n=g&2146435072;if(n>>>0<2146435072|(n|0)==2146435072&0<0){p=+A(+(+B(+m)));p=(g|0)>-1|(g|0)==-1&(c[j>>2]|0)>>>0>4294967295?p:-p;h[f>>3]=p}else p=m;f=a+40|0;m=+h[f>>3];h[j>>3]=m;g=c[j+4>>2]|0;n=g&2146435072;if(n>>>0<2146435072|(n|0)==2146435072&0<0){o=+A(+(+B(+m)));o=(g|0)>-1|(g|0)==-1&(c[j>>2]|0)>>>0>4294967295?o:-o;h[f>>3]=o}else o=m;f=a+48|0;m=+h[f>>3];h[j>>3]=m;g=c[j+4>>2]|0;n=g&2146435072;if(n>>>0<2146435072|(n|0)==2146435072&0<0){m=+A(+(+B(+m)));m=(g|0)>-1|(g|0)==-1&(c[j>>2]|0)>>>0>4294967295?m:-m;h[f>>3]=m}l=m+(l*36.0e5+0.0+p*6.0e4+o*1.0e3);h[j>>3]=e;n=c[j+4>>2]&2146435072;if((n>>>0<2146435072|(n|0)==2146435072&0<0?(h[j>>3]=i,n=c[j+4>>2]&2146435072,n>>>0<2146435072|(n|0)==2146435072&0<0):0)?(q=e+ +A(+(i/12.0)),r=+TO(i,12.0),r=r<0.0?r+12.0:r,q>=-271821.0&q<=275760.0):0){g=~~q;u=g+-1969|0;a=g+-1901|0;f=g+-2e3|0;n=g+-1601|0;f=(g*365|0)+-719050+((((u|0)>-1?u:g+-1972|0)|0)/4|0)+((((a|0)>-1?a:f)|0)/-100|0)+((((n|0)>-1?n:f)|0)/400|0)|0;if(!(g&3))if(!((g|0)%100|0))g=((g|0)%400|0|0)==0&1;else g=1;else g=0;n=~~r;if((n|0)>0){a=(g|0)!=0;g=0;do{f=(a&(g|0)==1&1)+f+(d[279445+g>>0]|0)|0;g=g+1|0}while((g|0)!=(n|0))}e=(k+ +(f|0))*864.0e5}else e=s;e=l+e;if(b&16){g=Ev(e)|0;if((g|0)<999999999)switch(g|0){case 0:{f=0;break}default:t=15}else switch(g|0){case 999999999:{f=0;g=999999999;t=16;break}default:t=15}if((t|0)==15){a=Ev(e-+(g*1e3|0))|0;if((a|0)!=(g|0))if(a){f=Ev(e-+(a*1e3|0))|0;if((f|0)!=(a|0))if((f|0)!=(g|0)){g=Ev(e-+(f*1e3|0))|0;if((g|0)!=(f|0))if((g|0)==(a|0)){g=a;t=16}else f=g}else{f=a;t=16}else f=a}else{f=g;g=0;t=16}else f=g}if((t|0)==16)f=(f|0)>(g|0)?f:g;e=e-+(f*1e3|0)}h[j>>3]=e;f=c[j+4>>2]|0;u=f&2146435072;if(!(u>>>0<2146435072|(u|0)==2146435072&0<0)){r=s;return +r}if(!(e>=-864.0e13&e<=864.0e13)){r=s;return +r}r=+A(+(+B(+e)));r=(f|0)>-1|(f|0)==-1&(c[j>>2]|0)>>>0>4294967295?r:-r;return +r}function Hv(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0.0,l=0,m=0,n=0,o=0.0;m=a+68|0;n=a+64|0;d=c[n>>2]|0;j=(c[m>>2]|0)-d>>4;l=(b|0)<0;e=(l?j:0)+b|0;if(e>>>0>=j>>>0)jo(a,300,b);o=+ho(a,d+(e<<4)|0);f=c[n>>2]|0;g=f+(e<<4)|0;j=c[g>>2]|0;i=f+(e<<4)+8|0;d=c[i>>2]|0;c[g>>2]=0;h[i>>3]=o;if((j&8|0)!=0?(i=d+4|0,j=(c[i>>2]|0)+-1|0,c[i>>2]=j,(j|0)==0):0){Yn(c[a+44>>2]|0,d);f=c[n>>2]|0}g=c[m>>2]|0;i=g-f>>4;e=(l?i:0)+b|0;i=e>>>0<i>>>0;e=f+(e<<4)|0;d=i?e:0;d=(d|0)==0?936:d;f=g;if((c[d>>2]|0)==0?(j=d+8|0,d=c[j+4>>2]&2147483647,d>>>0>2146435072|(d|0)==2146435072&(c[j>>2]|0)>>>0>0):0)return;j=a+56|0;if(f>>>0>=(c[j>>2]|0)>>>0)Un(a,1093);if(!i)jo(a,376,b);c[m>>2]=f+16;i=g;c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];c[i+8>>2]=c[e+8>>2];c[i+12>>2]=c[e+12>>2];if(c[f>>2]&8|0){i=(c[f+8>>2]|0)+4|0;c[i>>2]=(c[i>>2]|0)+1}Wq(a,-1);d=c[m>>2]|0;g=c[n>>2]|0;f=g;e=d-f>>4;e=e|0?g+(e+-1<<4)|0:0;e=(e|0)==0?936:e;if((c[e>>2]|0)==0?(k=+h[e+8>>3],k>=0.0&k<=99.0):0){if(d>>>0>=(c[j>>2]|0)>>>0)Un(a,4215);e=d+16|0;c[m>>2]=e;c[d>>2]=0;h[d+8>>3]=k+1900.0;e=e-f>>4;if(!e)jo(a,376,-1);f=g+(e+-1<<4)|0;d=(l?e:0)+b|0;if(d>>>0>=e>>>0)jo(a,376,b);l=g+(d<<4)|0;b=c[l>>2]|0;e=c[g+(d<<4)+8>>2]|0;c[l>>2]=c[f>>2];c[l+4>>2]=c[f+4>>2];c[l+8>>2]=c[f+8>>2];c[l+12>>2]=c[f+12>>2];c[f>>2]=2;d=(c[m>>2]|0)+-16|0;c[m>>2]=d;if((b&8|0)!=0?(l=e+4|0,b=(c[l>>2]|0)+-1|0,c[l>>2]=b,(b|0)==0):0){Yn(c[a+44>>2]|0,e);d=c[m>>2]|0}}if((d|0)==(c[n>>2]|0))Jn(a,268620,50337407,268636);b=d+-16|0;c[m>>2]=b;n=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[b>>2]=2;if(!(n&8))return;m=d+4|0;n=(c[m>>2]|0)+-1|0;c[m>>2]=n;if(n|0)return;Yn(c[a+44>>2]|0,d);return}function Iv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,g=0,i=0,j=0,k=0,l=0,m=0;Hv(a,0);if((d|0)>0){i=a+68|0;j=a+64|0;e=c[j>>2]|0;if((c[i>>2]|0)==(e|0))jo(a,300,0);f=+ho(a,e);m=c[j>>2]|0;k=c[m>>2]|0;l=m+8|0;e=c[l>>2]|0;c[m>>2]=0;h[l>>3]=f;if(k&8|0?(l=e+4|0,m=(c[l>>2]|0)+-1|0,c[l>>2]=m,(m|0)==0):0)Yn(c[a+44>>2]|0,e);h[b>>3]=f;if((d|0)!=1){e=c[j>>2]|0;if((c[i>>2]|0)-e>>4>>>0<=1)jo(a,300,1);f=+ho(a,e+16|0);l=c[j>>2]|0;k=l+16|0;m=c[k>>2]|0;l=l+24|0;e=c[l>>2]|0;c[k>>2]=0;h[l>>3]=f;if(m&8|0?(l=e+4|0,m=(c[l>>2]|0)+-1|0,c[l>>2]=m,(m|0)==0):0)Yn(c[a+44>>2]|0,e);h[b+8>>3]=f;if((d|0)>2){e=c[j>>2]|0;if((c[i>>2]|0)-e>>4>>>0<=2)jo(a,300,2);f=+ho(a,e+32|0);l=c[j>>2]|0;k=l+32|0;m=c[k>>2]|0;l=l+40|0;e=c[l>>2]|0;c[k>>2]=0;h[l>>3]=f;if(m&8|0?(l=e+4|0,m=(c[l>>2]|0)+-1|0,c[l>>2]=m,(m|0)==0):0)Yn(c[a+44>>2]|0,e);h[b+16>>3]=f+-1.0;if((d|0)!=3){e=c[j>>2]|0;if((c[i>>2]|0)-e>>4>>>0<=3)jo(a,300,3);f=+ho(a,e+48|0);l=c[j>>2]|0;k=l+48|0;m=c[k>>2]|0;l=l+56|0;e=c[l>>2]|0;c[k>>2]=0;h[l>>3]=f;if(m&8|0?(l=e+4|0,m=(c[l>>2]|0)+-1|0,c[l>>2]=m,(m|0)==0):0)Yn(c[a+44>>2]|0,e);h[b+24>>3]=f;if((d|0)>4){e=c[j>>2]|0;if((c[i>>2]|0)-e>>4>>>0<=4)jo(a,300,4);f=+ho(a,e+64|0);l=c[j>>2]|0;k=l+64|0;m=c[k>>2]|0;l=l+72|0;e=c[l>>2]|0;c[k>>2]=0;h[l>>3]=f;if(m&8|0?(l=e+4|0,m=(c[l>>2]|0)+-1|0,c[l>>2]=m,(m|0)==0):0)Yn(c[a+44>>2]|0,e);h[b+32>>3]=f;if((d|0)!=5){e=c[j>>2]|0;if((c[i>>2]|0)-e>>4>>>0<=5)jo(a,300,5);f=+ho(a,e+80|0);l=c[j>>2]|0;k=l+80|0;m=c[k>>2]|0;l=l+88|0;e=c[l>>2]|0;c[k>>2]=0;h[l>>3]=f;do if(m&8|0){l=e+4|0;m=(c[l>>2]|0)+-1|0;c[l>>2]=m;if(m|0)break;Yn(c[a+44>>2]|0,e)}while(0);h[b+40>>3]=f;if((d|0)>6){e=c[j>>2]|0;if((c[i>>2]|0)-e>>4>>>0<=6)jo(a,300,6);f=+ho(a,e+96|0);l=c[j>>2]|0;k=l+96|0;m=c[k>>2]|0;l=l+104|0;e=c[l>>2]|0;c[k>>2]=0;h[l>>3]=f;do if(m&8|0){l=e+4|0;m=(c[l>>2]|0)+-1|0;c[l>>2]=m;if(m|0)break;Yn(c[a+44>>2]|0,e)}while(0);h[b+48>>3]=f;if((d|0)==7){f=0.0;m=b+56|0;h[m>>3]=f;return}e=c[j>>2]|0;if((c[i>>2]|0)-e>>4>>>0<=7)jo(a,300,7);f=+ho(a,e+112|0);l=c[j>>2]|0;k=l+112|0;m=c[k>>2]|0;l=l+120|0;e=c[l>>2]|0;c[k>>2]=0;h[l>>3]=f;if(!(m&8)){m=b+56|0;h[m>>3]=f;return}l=e+4|0;m=(c[l>>2]|0)+-1|0;c[l>>2]=m;if(m|0){m=b+56|0;h[m>>3]=f;return}Yn(c[a+44>>2]|0,e);m=b+56|0;h[m>>3]=f;return}}else g=37}else g=30}else g=23}else g=16}else g=9}else{h[b>>3]=0.0;g=9}if((g|0)==9){h[b+8>>3]=0.0;g=16}if((g|0)==16){h[b+16>>3]=0.0;g=23}if((g|0)==23){h[b+24>>3]=0.0;g=30}if((g|0)==30){h[b+32>>3]=0.0;g=37}if((g|0)==37)h[b+40>>3]=0.0;h[b+48>>3]=0.0;f=0.0;m=b+56|0;h[m>>3]=f;return}function Jv(b,d){b=b|0;d=d|0;var e=0,f=0,g=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=l;l=l+112|0;r=z+64|0;x=z+68|0;y=z;e=x;f=e+36|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));v=x+4|0;c[v>>2]=1;w=x+8|0;c[w>>2]=1;switch(a[d>>0]|0){case 43:{q=0;e=d+1|0;break}case 45:{q=1;e=d+1|0;break}default:{q=0;e=d}}f=0;o=0;a:while(1){k=a[e>>0]|0;if((k+-48&255)>=10)break;i=0;j=0;k=k&255;e=e+1|0;while(1){if(j>>>0>8)break a;m=(f|0)==6;n=j>>>0>2;p=m&n;j=((m&n^1)&1)+j|0;i=p?i:k+-48+(i*10|0)|0;f=p?6:f;p=e;e=e+1|0;p=a[p>>0]|0;if((p+-48&255)>=10)break;else k=p&255}if(!j)break;if((f|0)==6&j>>>0<3)do{i=i*10|0;j=j+1|0}while((j|0)!=3);c[x+(f<<2)>>2]=i;switch(p<<24>>24){case 43:{i=9;break}case 45:{i=10;break}case 84:{i=11;break}case 32:{i=12;break}case 58:{i=13;break}case 46:{i=14;break}case 90:{i=15;break}case 0:{i=16;break}default:break a}n=(1<<i)+(1<<f)|0;k=f;m=0;i=o;b:while(1){j=c[5060+(m<<2)>>2]|0;if((j&n|0)==(n|0)){f=j>>>21;i=(f&1|0)==0?i:1;if(!(f&2))if(!(f&4)){f=20;j=j>>>17&15;o=i}else{f=(a[e>>0]|0)==0?29:10;j=k;o=i}else{f=29;j=k;o=i}}else{f=22;j=k;o=i}switch(f&31){case 20:{t=26;break b}case 22:break;default:break b}m=m+1|0;if(m>>>0>=11){t=28;break}else{k=j;i=o}}if((t|0)==26){t=0;f=p<<24>>24==0?10:0}else if((t|0)==28){t=0;if((m|0)==11)break;else f=p<<24>>24==0?10:0}switch(f|0){case 0:{f=j;break}case 29:{t=30;break a}default:break a}}if((t|0)==30){if(q|0)c[x>>2]=0-(c[x>>2]|0);k=c[x+28>>2]|0;e=x+12|0;f=c[e>>2]|0;i=c[x+32>>2]|0;m=x+16|0;j=c[m>>2]|0;if(!o){f=f-k|0;c[e>>2]=f;e=j-i|0}else{f=f+k|0;c[e>>2]=f;e=j+i|0}c[m>>2]=e;u=(c[v>>2]|0)+-1|0;c[v>>2]=u;v=(c[w>>2]|0)+-1|0;c[w>>2]=v;h[y>>3]=+(c[x>>2]|0);h[y+8>>3]=+(u|0);h[y+16>>3]=+(v|0);h[y+24>>3]=+(f|0);h[y+32>>3]=+(e|0);h[y+40>>3]=+(c[x+20>>2]|0);h[y+48>>3]=+(c[x+24>>2]|0);h[y+56>>3]=+(k|0);g=+Gv(y,0);e=b+68|0;f=c[e>>2]|0;if(f>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4215);c[e>>2]=f+16;c[f>>2]=0;h[f+8>>3]=g;l=z;return}e=y;f=e+64|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(f|0));c[r>>2]=d;_O(y,64,294706,r);a[y+63>>0]=0;e=x;f=e+44|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));if(Uf(y|0,279477,x|0)|0?(c[x+32>>2]=-1,u=Pf(x|0)|0,(u|0)>-1):0){e=b+68|0;f=c[e>>2]|0;if(f>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4215);c[e>>2]=f+16;c[f>>2]=0;h[f+8>>3]=+(u|0)*1.0e3;l=z;return}e=b+68|0;f=c[e>>2]|0;if(f>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4286);c[e>>2]=f+16;c[f>>2]=0;h[f+8>>3]=s;l=z;return}function Kv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=a+68|0;f=c[j>>2]|0;h=a+56|0;if(f>>>0>=(c[h>>2]|0)>>>0)Un(a,4361);c[j>>2]=f+16;if(!(c[a+72>>2]|0))Jn(a,268620,100667685,269813);i=a+64|0;b=c[i>>2]|0;d=b+-16|0;e=c[d>>2]|0;if((e&-2|0)==2)Jn(a,268620,100667685,269813);c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];if(e&8|0){g=(c[b+-8>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}to(a,-1);b=c[j>>2]|0;f=b-(c[i>>2]|0)|0;e=f>>4;g=e+-1|0;if(!e)jo(a,300,-1);d=c[(c[a+304>>2]|0)+328>>2]|0;if(b>>>0>=(c[h>>2]|0)>>>0)Un(a,4153);c[j>>2]=b+16;c[b>>2]=8;c[b+8>>2]=d;d=d+4|0;c[d>>2]=(c[d>>2]|0)+1;d=c[i>>2]|0;e=(c[j>>2]|0)-d>>4;b=((f|0)<16?e:0)+g|0;if(b>>>0>=e>>>0)jo(a,376,g);ro(a,d+(b<<4)|0,d+(e+-1<<4)|0)|0;d=c[i>>2]|0;e=(c[j>>2]|0)-d>>4;b=e+-2|0;if(e>>>0<=1)jo(a,376,-2);g=d+(b<<4)|0;h=d+(e+-1<<4)|0;i=c[g>>2]|0;b=c[d+(b<<4)+8>>2]|0;QQ(g|0,g+16|0,h-g|0)|0;c[h>>2]=2;c[j>>2]=(c[j>>2]|0)+-16;if(!(i&8)){j=_p(a,-1)|0;return j|0}i=b+4|0;j=(c[i>>2]|0)+-1|0;c[i>>2]=j;if(j|0){j=_p(a,-1)|0;return j|0}Yn(c[a+44>>2]|0,b);j=_p(a,-1)|0;return j|0}function Lv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;e=d-b|0;if((e|0)<1)return;g=a+44|0;do{k=c[g>>2]|0;m=k+152|0;r=m;p=c[r>>2]|0;r=c[r+4>>2]|0;k=k+160|0;n=k;o=c[n>>2]|0;n=c[n+4>>2]|0;f=yQ(o|0,n|0,p|0,r|0)|0;i=z;o=o^p;n=n^r;q=KQ(p|0,r|0,55)|0;l=z;r=JQ(p|0,r|0,9)|0;l=(z|l)^n;p=KQ(o|0,n|0,14)|0;c[m>>2]=(r|q)^o^p;c[m+4>>2]=l^z;m=KQ(o|0,n|0,36)|0;l=z;n=JQ(o|0,n|0,28)|0;c[k>>2]=n|m;c[k+4>>2]=z|l;i=JQ(f|0,i|0,12)|0;f=z|1072693248;c[j>>2]=i;c[j+4>>2]=f;Mv(a,~~(+(e+1|0)*(+h[j>>3]+-1.0))+b|0,b);f=d;e=b;while(1){do{e=e+1|0;if((e|0)>=(d|0))break}while((Nv(a,e,b)|0)<=-1);a:do if((f|0)>(b|0))do{if((Nv(a,b,f)|0)>-1)break a;f=f+-1|0}while((f|0)>(b|0));while(0);if((e|0)>=(f|0))break;Mv(a,e,f);f=f+-1|0}Mv(a,b,f);Lv(a,b,f+-1|0);b=f+1|0;e=d-b|0}while((e|0)>=1);return}function Mv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0;if((b|0)==(d|0))return;f=Np(a,1,b)|0;do if(!(Np(a,1,d)|0)){g=a+68|0;i=c[g>>2]|0;e=i;if(i-(c[a+64>>2]|0)>>4>>>0<=1)jo(a,300,1);if(e>>>0<(c[a+56>>2]|0)>>>0){c[g>>2]=e+16;c[e>>2]=0;h[e+8>>3]=+(b>>>0);Aq(a,1);c[g>>2]=(c[g>>2]|0)+-16;break}else Un(a,4274)}else mq(a,1,b);while(0);if(f|0){mq(a,1,d);return}b=a+68|0;i=c[b>>2]|0;e=i;if(i-(c[a+64>>2]|0)>>4>>>0<=1)jo(a,300,1);if(e>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4274);c[b>>2]=e+16;c[e>>2]=0;h[e+8>>3]=+(d>>>0);Aq(a,1);c[b>>2]=(c[b>>2]|0)+-16;return}function Nv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0.0,g=0,i=0,j=0,k=0,m=0,n=0,o=0;n=l;l=l+16|0;j=n;if((b|0)==(d|0)){a=0;l=n;return a|0}m=Np(a,1,b)|0;b=(Np(a,1,d)|0)!=0;do if(m)if(b){m=a+68|0;b=c[m>>2]|0;k=a+64|0;d=c[k>>2]|0;g=b-d>>4;o=g>>>0>1?d+(g+-2<<4)|0:0;e=(g|0)!=0;g=e?d+(g+-1<<4)|0:0;g=(c[((g|0)==0?936:g)>>2]|0)==2;i=b;if((c[((o|0)==0?936:o)>>2]|0)==2){g=(g^1)&1;break}if(!g){o=e?d:0;if((c[((o|0)==0?936:o)>>2]|0)==2){Eo(a,-2)|0;o=c[k>>2]|0;b=(c[m>>2]|0)-o>>4;b=b>>>0>1?o+(b+-2<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==8)g=c[b+8>>2]|0;else g=0;Eo(a,-1)|0;o=c[k>>2]|0;b=(c[m>>2]|0)-o>>4;b=b|0?o+(b+-1<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==8)b=c[b+8>>2]|0;else b=0;d=c[g+20>>2]|0;e=c[b+20>>2]|0;b=KN(g+28|0,b+28|0,d>>>0<=e>>>0?d:e)|0;if((b|0)<0){g=-1;break}g=(b|0)==0?(d>>>0<e>>>0?-1:d>>>0>e>>>0&1):1;break}if(i>>>0>=(c[a+56>>2]|0)>>>0)Un(a,1093);if((i|0)==(d|0))jo(a,376,0);c[m>>2]=i+16;o=b;c[o>>2]=c[d>>2];c[o+4>>2]=c[d+4>>2];c[o+8>>2]=c[d+8>>2];c[o+12>>2]=c[d+12>>2];if(c[i>>2]&8|0){o=(c[i+8>>2]|0)+4|0;c[o>>2]=(c[o>>2]|0)+1}b=c[k>>2]|0;d=(c[m>>2]|0)-b>>4;if(d>>>0<=2)jo(a,376,-3);e=b+(d+-3<<4)|0;b=b+(d+-1<<4)|0;d=b-e|0;if(d|0){c[j>>2]=c[b>>2];c[j+4>>2]=c[b+4>>2];c[j+8>>2]=c[b+8>>2];c[j+12>>2]=c[b+12>>2];QQ(e+16|0,e|0,d|0)|0;c[e>>2]=c[j>>2];c[e+4>>2]=c[j+4>>2];c[e+8>>2]=c[j+8>>2];c[e+12>>2]=c[j+12>>2]}iq(a,2);b=c[k>>2]|0;o=(c[m>>2]|0)-b>>4;d=o+-1|0;if(!o)jo(a,300,-1);f=+ho(a,b+(d<<4)|0);k=c[k>>2]|0;j=k+(d<<4)|0;o=c[j>>2]|0;k=k+(d<<4)+8|0;b=c[k>>2]|0;c[j>>2]=0;h[k>>3]=f;if(o&8|0?(k=b+4|0,o=(c[k>>2]|0)+-1|0,c[k>>2]=o,(o|0)==0):0)Yn(c[a+44>>2]|0,b);o=(c[m>>2]|0)+-16|0;c[m>>2]=o;c[o>>2]=2;o=f<0.0?-1:f>0.0&1;l=n;return o|0}else g=-1}else g=-1;else g=b&1;while(0);e=a+68|0;d=c[e>>2]|0;b=d+-16|0;c[e>>2]=b;o=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[b>>2]=2;if((o&8|0)!=0?(m=d+4|0,o=(c[m>>2]|0)+-1|0,c[m>>2]=o,(o|0)==0):0){Yn(c[a+44>>2]|0,d);b=c[e>>2]|0}m=b+-16|0;c[e>>2]=m;o=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[m>>2]=2;if(!(o&8)){o=g;l=n;return o|0}m=b+4|0;o=(c[m>>2]|0)+-1|0;c[m>>2]=o;if(o|0){o=g;l=n;return o|0}Yn(c[a+44>>2]|0,b);o=g;l=n;return o|0}function Ov(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;d=c[a+100>>2]|0;g=a+68|0;e=c[g>>2]|0;if(e>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4153);c[g>>2]=e+16;c[e>>2]=9;c[e+8>>2]=d;f=d+4|0;c[f>>2]=(c[f>>2]|0)+1;f=Ru(a,-1,b)|0;d=c[a+64>>2]|0;e=(c[g>>2]|0)-d>>4;b=e+-2|0;if(e>>>0<=1)jo(a,376,-2);i=d+(b<<4)|0;h=d+(e+-1<<4)|0;e=c[i>>2]|0;b=c[d+(b<<4)+8>>2]|0;QQ(i|0,i+16|0,h-i|0)|0;c[h>>2]=2;c[g>>2]=(c[g>>2]|0)+-16;if(!(e&8))return f|0;h=b+4|0;i=(c[h>>2]|0)+-1|0;c[h>>2]=i;if(i|0)return f|0;Yn(c[a+44>>2]|0,b);return f|0}function Pv(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;b=c[a+100>>2]|0;k=a+68|0;d=c[k>>2]|0;j=a+56|0;if(d>>>0>=(c[j>>2]|0)>>>0)Un(a,4153);c[k>>2]=d+16;c[d>>2]=9;c[d+8>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[k>>2]|0;h=a+64|0;f=b-(c[h>>2]|0)|0;i=f>>4;g=i+-1|0;if(!i)jo(a,300,-1);i=a+304|0;d=c[(c[i>>2]|0)+404>>2]|0;if(b>>>0>=(c[j>>2]|0)>>>0)Un(a,4153);c[k>>2]=b+16;c[b>>2]=8;c[b+8>>2]=d;d=d+4|0;c[d>>2]=(c[d>>2]|0)+1;d=c[h>>2]|0;e=(c[k>>2]|0)-d>>4;b=((f|0)<16?e:0)+g|0;if(b>>>0>=e>>>0)jo(a,376,g);f=ro(a,d+(b<<4)|0,d+(e+-1<<4)|0)|0;d=c[h>>2]|0;e=(c[k>>2]|0)-d>>4;b=e+-2|0;if(e>>>0<=1)jo(a,376,-2);l=d+(b<<4)|0;e=d+(e+-1<<4)|0;g=c[l>>2]|0;b=c[d+(b<<4)+8>>2]|0;QQ(l|0,l+16|0,e-l|0)|0;c[e>>2]=2;c[k>>2]=(c[k>>2]|0)+-16;if(g&8|0?(g=b+4|0,l=(c[g>>2]|0)+-1|0,c[g>>2]=l,(l|0)==0):0)Yn(c[a+44>>2]|0,b);do if(!f){d=c[k>>2]|0;b=d+-16|0;c[k>>2]=b;l=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[b>>2]=2;if((l&8|0)!=0?(g=d+4|0,l=(c[g>>2]|0)+-1|0,c[g>>2]=l,(l|0)==0):0){Yn(c[a+44>>2]|0,d);b=c[k>>2]|0}if(b>>>0>=(c[j>>2]|0)>>>0)Un(a,4604);b=vo(a,40)|0;d=c[a+44>>2]|0;c[b>>2]=134234241;d=d+24|0;e=c[d>>2]|0;if(e|0)c[e+12>>2]=b;c[b+12>>2]=0;c[b+8>>2]=e;c[d>>2]=b;d=c[k>>2]|0;c[d>>2]=9;c[d+8>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[k>>2]|0;d=b+16|0;c[k>>2]=d;if(d>>>0>=(c[j>>2]|0)>>>0)Un(a,1111);if((d-(c[h>>2]|0)|0)<16)jo(a,1114,-1);c[k>>2]=b+32;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];if(c[d>>2]&8|0){l=(c[b+24>>2]|0)+4|0;c[l>>2]=(c[l>>2]|0)+1}l=c[h>>2]|0;b=(c[k>>2]|0)-l>>4;b=b>>>0>2?l+(b+-3<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9)In(a,2130,-3,268963);b=c[b+8>>2]|0;if(!b)In(a,2130,-3,268963);else{fo(a,b,c[(c[i>>2]|0)+404>>2]|0,4);break}}while(0);d=c[h>>2]|0;e=(c[k>>2]|0)-d>>4;b=e+-2|0;if(e>>>0<=1)jo(a,376,-2);i=d+(b<<4)|0;j=d+(e+-1<<4)|0;l=c[i>>2]|0;b=c[d+(b<<4)+8>>2]|0;QQ(i|0,i+16|0,j-i|0)|0;c[j>>2]=2;c[k>>2]=(c[k>>2]|0)+-16;if(!(l&8))return;k=b+4|0;l=(c[k>>2]|0)+-1|0;c[k>>2]=l;if(l|0)return;Yn(c[a+44>>2]|0,b);return}function Qv(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+16|0;d=c[a+92>>2]|0;if((d|0)>1e6)qw(a,6);b=(c[b>>2]|0)+5+((c[a+8>>2]|0)-(c[a+28>>2]|0)>>4)|0;d=d<<1;d=(d|0)<1e6?d:1e6;d=(d|0)<(b|0)?b:d;if((d|0)>1e6){sw(a,1000200);mw(a,283421,e)}else{sw(a,d);l=e;return}}function Rv(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;h=b+16|0;f=c[h>>2]|0;i=c[b+8>>2]|0;j=i+-16|0;do if((e|0)<=0){if((e|0)>=-1000999){e=i+(e<<4)|0;break}if((e|0)==-1001e3){e=(c[b+12>>2]|0)+40|0;break}g=-1001e3-e|0;e=c[f>>2]|0;if((c[e+8>>2]|0)==22)e=316344;else{e=c[e>>2]|0;e=(g|0)>(d[e+6>>0]|0|0)?316344:e+16+(g+-1<<4)|0};c[e>>2]=c[j>>2];c[e+4>>2]=c[j+4>>2];c[e+8>>2]=c[j+8>>2];c[e+12>>2]=c[j+12>>2];if(!(c[i+-8>>2]&64))return;g=(c[c[c[h>>2]>>2]>>2]|0)+5|0;h=a[g>>0]|0;if(!(h&4))return;f=c[j>>2]|0;if(!(a[f+5>>0]&3))return;e=c[b+12>>2]|0;if((d[e+61>>0]|0)<2){Iw(e,f);return}else{a[g>>0]=a[e+60>>0]&3|h&-8;return}}else{e=(c[f>>2]|0)+(e<<4)|0;e=e>>>0<i>>>0?e:316344}while(0);c[e>>2]=c[j>>2];c[e+4>>2]=c[j+4>>2];c[e+8>>2]=c[j+8>>2];c[e+12>>2]=c[j+12>>2];return}function Sv(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;i=c[a+16>>2]|0;do if((b|0)<=0){if((b|0)>=-1000999){h=(c[a+8>>2]|0)+(b<<4)|0;break}if((b|0)==-1001e3){h=(c[a+12>>2]|0)+40|0;break}b=-1001e3-b|0;g=c[i>>2]|0;if((c[g+8>>2]|0)==22)h=316344;else{h=c[g>>2]|0;h=(b|0)>(d[h+6>>0]|0|0)?316344:h+16+(b+-1<<4)|0}}else{h=(c[i>>2]|0)+(b<<4)|0;h=h>>>0<(c[a+8>>2]|0)>>>0?h:316344}while(0);do if((e|0)<=0){if((e|0)>=-1000999){b=(c[a+8>>2]|0)+(e<<4)|0;break}if((e|0)==-1001e3){b=(c[a+12>>2]|0)+40|0;break}g=-1001e3-e|0;b=c[i>>2]|0;if((c[b+8>>2]|0)==22){f=0;return f|0}else{b=c[b>>2]|0;b=(g|0)>(d[b+6>>0]|0|0)?316344:b+16+(g+-1<<4)|0;break}}else{b=(c[i>>2]|0)+(e<<4)|0;b=b>>>0<(c[a+8>>2]|0)>>>0?b:316344}while(0);if(!((h|0)!=316344&(b|0)!=316344)){f=0;return f|0}switch(f|0){case 0:{f=Ox(a,h,b)|0;return f|0}case 1:{f=Mx(a,h,b)|0;return f|0}case 2:{f=Nx(a,h,b)|0;return f|0}default:{f=0;return f|0}}return 0}function Tv(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;i=b+16|0;j=c[i>>2]|0;l=(e|0)>0;do if(!l){if((e|0)>=-1000999){g=(c[b+8>>2]|0)+(e<<4)|0;break}if((e|0)==-1001e3){g=(c[b+12>>2]|0)+40|0;break}g=-1001e3-e|0;h=c[j>>2]|0;if((c[h+8>>2]|0)==22)g=316344;else{h=c[h>>2]|0;g=(g|0)>(d[h+6>>0]|0)?316344:h+16+(g+-1<<4)|0}}else{g=(c[j>>2]|0)+(e<<4)|0;g=g>>>0<(c[b+8>>2]|0)>>>0?g:316344}while(0);switch(c[g+8>>2]&15){case 4:break;case 3:{k=12;break}default:{if(!f){f=0;return f|0}c[f>>2]=0;f=0;return f|0}}if((k|0)==12){h=b+12|0;if((c[(c[h>>2]|0)+12>>2]|0)>0){Sw(b);g=c[i>>2]|0}else g=j;do if(!l){if((e|0)>=-1000999){g=(c[b+8>>2]|0)+(e<<4)|0;break}if((e|0)==-1001e3){g=(c[h>>2]|0)+40|0;break}h=-1001e3-e|0;g=c[g>>2]|0;if((c[g+8>>2]|0)==22)g=316344;else{g=c[g>>2]|0;g=(h|0)>(d[g+6>>0]|0)?316344:g+16+(h+-1<<4)|0}}else{g=(c[g>>2]|0)+(e<<4)|0;g=g>>>0<(c[b+8>>2]|0)>>>0?g:316344}while(0);Xw(b,g)}if(!f)g=c[g>>2]|0;else{g=c[g>>2]|0;if((a[g+4>>0]|0)==4)h=d[g+7>>0]|0;else h=c[g+12>>2]|0;c[f>>2]=h}f=g+16|0;return f|0}function Uv(b,d){b=b|0;d=d|0;var e=0,f=0;if(!d){b=b+8|0;d=c[b>>2]|0;c[d+8>>2]=0;d=d+16|0;c[b>>2]=d;return}f=b+12|0;e=c[f>>2]|0;if((c[e+12>>2]|0)>0){Sw(b);e=c[f>>2]|0}f=e+280+(((d>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(d,e+16|0)|0){e=xx(b,d,WO(d)|0)|0;c[f>>2]=e}d=b+8|0;b=c[d>>2]|0;c[b>>2]=e;c[b+8>>2]=(a[e+4>>0]|64)&255;b=d;d=c[d>>2]|0;d=d+16|0;c[b>>2]=d;return}function Vv(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;f=l;l=l+16|0;e=f;if((c[(c[a+12>>2]|0)+12>>2]|0)>0)Sw(a);c[e>>2]=d;d=Yw(a,b,e)|0;l=f;return d|0}function Wv(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=c[a+16>>2]|0;do if((b|0)<=0){if((b|0)>=-1000999){b=(c[a+8>>2]|0)+(b<<4)|0;break}if((b|0)==-1001e3){b=(c[a+12>>2]|0)+40|0;break}g=-1001e3-b|0;b=c[h>>2]|0;if((c[b+8>>2]|0)==22)b=316344;else{b=c[b>>2]|0;b=(g|0)>(d[b+6>>0]|0|0)?316344:b+16+(g+-1<<4)|0}}else{b=(c[h>>2]|0)+(b<<4)|0;b=b>>>0<(c[a+8>>2]|0)>>>0?b:316344}while(0);h=a+8|0;g=c[h>>2]|0;i=g;c[i>>2]=e;c[i+4>>2]=f;c[g+8>>2]=19;c[h>>2]=g+16;Kx(a,b,g,g);return c[(c[h>>2]|0)+-8>>2]&15|0}function Xv(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=c[a+16>>2]|0;do if((b|0)<=0){if((b|0)>=-1000999){b=(c[a+8>>2]|0)+(b<<4)|0;break}if((b|0)==-1001e3){b=(c[a+12>>2]|0)+40|0;break}g=-1001e3-b|0;b=c[h>>2]|0;if((c[b+8>>2]|0)==22)b=316344;else{b=c[b>>2]|0;b=(g|0)>(d[b+6>>0]|0|0)?316344:b+16+(g+-1<<4)|0}}else{b=(c[h>>2]|0)+(b<<4)|0;b=b>>>0<(c[a+8>>2]|0)>>>0?b:316344}while(0);h=a+8|0;a=c[h>>2]|0;b=c[b>>2]|0;g=yQ(e|0,f|0,-1,-1)|0;i=z;a:do if(i>>>0<0|((i|0)==0?g>>>0<(c[b+8>>2]|0)>>>0:0))b=(c[b+12>>2]|0)+(g<<4)|0;else{b=(c[b+16>>2]|0)+(((1<<(d[b+7>>0]|0))+-1&e)<<5)|0;while(1){if((c[b+24>>2]|0)==19?(i=b+16|0,(c[i>>2]|0)==(e|0)?(c[i+4>>2]|0)==(f|0):0):0)break;g=c[b+28>>2]|0;if(!g){b=316344;break a}b=b+(g<<5)|0}}while(0);c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];i=c[h>>2]|0;c[h>>2]=i+16;return c[i+8>>2]&15|0}function Yv(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;h=c[b+12>>2]|0;f=c[h+40>>2]|0;a:do if((c[f+8>>2]|0)>>>0>1)g=(c[f+12>>2]|0)+16|0;else{g=(c[f+16>>2]|0)+(((1<<(d[f+7>>0]|0))+3&2)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(j=g+16|0,(c[j>>2]|0)==2&(c[j+4>>2]|0)==0):0)break;f=c[g+28>>2]|0;if(!f){g=316344;break a}g=g+(f<<5)|0}}while(0);i=b+8|0;j=c[i>>2]|0;h=h+280+(((e>>>0)%127|0)<<2)|0;f=c[h>>2]|0;if(JN(e,f+16|0)|0){f=xx(b,e,WO(e)|0)|0;c[h>>2]=f}c[j>>2]=f;c[j+8>>2]=(a[f+4>>0]|64)&255;e=c[i>>2]|0;c[i>>2]=e+16;Lx(b,g,e,e+-16|0);c[i>>2]=(c[i>>2]|0)+-32;return}function Zv(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=c[b+16>>2]|0;do if((e|0)<=0){if((e|0)>=-1000999){h=(c[b+8>>2]|0)+(e<<4)|0;break}if((e|0)==-1001e3){h=(c[b+12>>2]|0)+40|0;break}h=-1001e3-e|0;e=c[g>>2]|0;if((c[e+8>>2]|0)==22)h=316344;else{j=c[e>>2]|0;h=(h|0)>(d[j+6>>0]|0|0)?316344:j+16+(h+-1<<4)|0}}else{h=(c[g>>2]|0)+(e<<4)|0;h=h>>>0<(c[b+8>>2]|0)>>>0?h:316344}while(0);i=b+8|0;j=c[i>>2]|0;g=(c[b+12>>2]|0)+280+(((f>>>0)%127|0)<<2)|0;e=c[g>>2]|0;if(JN(f,e+16|0)|0){e=xx(b,f,WO(f)|0)|0;c[g>>2]=e}c[j>>2]=e;c[j+8>>2]=(a[e+4>>0]|64)&255;f=c[i>>2]|0;c[i>>2]=f+16;Lx(b,h,f,f+-16|0);c[i>>2]=(c[i>>2]|0)+-32;return}function _v(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;h=c[a+16>>2]|0;do if((b|0)<=0){if((b|0)>=-1000999){b=(c[a+8>>2]|0)+(b<<4)|0;break}if((b|0)==-1001e3){b=(c[a+12>>2]|0)+40|0;break}g=-1001e3-b|0;b=c[h>>2]|0;if((c[b+8>>2]|0)==22)b=316344;else{b=c[b>>2]|0;b=(g|0)>(d[b+6>>0]|0|0)?316344:b+16+(g+-1<<4)|0}}else{b=(c[h>>2]|0)+(b<<4)|0;b=b>>>0<(c[a+8>>2]|0)>>>0?b:316344}while(0);h=a+8|0;g=c[h>>2]|0;i=g;c[i>>2]=e;c[i+4>>2]=f;c[g+8>>2]=19;c[h>>2]=g+16;Lx(a,b,g,g+-16|0);c[h>>2]=(c[h>>2]|0)+-32;return}function $v(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;i=c[b+16>>2]|0;do if((e|0)<=0){if((e|0)>=-1000999){e=(c[b+8>>2]|0)+(e<<4)|0;break}if((e|0)==-1001e3){e=(c[b+12>>2]|0)+40|0;break}h=-1001e3-e|0;e=c[i>>2]|0;if((c[e+8>>2]|0)==22)e=316344;else{e=c[e>>2]|0;e=(h|0)>(d[e+6>>0]|0|0)?316344:e+16+(h+-1<<4)|0}}else{e=(c[i>>2]|0)+(e<<4)|0;e=e>>>0<(c[b+8>>2]|0)>>>0?e:316344}while(0);j=c[e>>2]|0;k=b+8|0;i=(c[k>>2]|0)+-16|0;e=yQ(f|0,g|0,-1,-1)|0;h=z;a:do if(h>>>0<0|((h|0)==0?e>>>0<(c[j+8>>2]|0)>>>0:0)){e=(c[j+12>>2]|0)+(e<<4)|0;h=17}else{e=(c[j+16>>2]|0)+(((1<<(d[j+7>>0]|0))+-1&f)<<5)|0;while(1){if((c[e+24>>2]|0)==19?(h=e+16|0,(c[h>>2]|0)==(f|0)?(c[h+4>>2]|0)==(g|0):0):0)break;h=c[e+28>>2]|0;if(!h){h=18;break a}e=e+(h<<5)|0}h=17}while(0);if((h|0)==17)if((e|0)==316344)h=18;if((h|0)==18){e=m;c[e>>2]=f;c[e+4>>2]=g;c[m+8>>2]=19;e=Bx(b,j,m)|0};c[e>>2]=c[i>>2];c[e+4>>2]=c[i+4>>2];c[e+8>>2]=c[i+8>>2];c[e+12>>2]=c[i+12>>2];e=c[k>>2]|0;if(!(c[e+-8>>2]&64)){b=e+-16|0;c[k>>2]=b;l=n;return}h=j+5|0;i=a[h>>0]|0;if(!(i&4)){b=e+-16|0;c[k>>2]=b;l=n;return}if(!(a[(c[e+-16>>2]|0)+5>>0]&3)){b=e+-16|0;c[k>>2]=b;l=n;return}b=c[b+12>>2]|0;a[h>>0]=i&-5;b=b+80|0;c[j+28>>2]=c[b>>2];c[b>>2]=j;b=e+-16|0;c[k>>2]=b;l=n;return}function aw(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;f=c[b+16>>2]|0;do if((e|0)<=0){if((e|0)>=-1000999){j=(c[b+8>>2]|0)+(e<<4)|0;break}if((e|0)==-1001e3){j=(c[b+12>>2]|0)+40|0;break}g=-1001e3-e|0;e=c[f>>2]|0;if((c[e+8>>2]|0)==22)j=316344;else{j=c[e>>2]|0;j=(g|0)>(d[j+6>>0]|0|0)?316344:j+16+(g+-1<<4)|0}}else{j=(c[f>>2]|0)+(e<<4)|0;j=j>>>0<(c[b+8>>2]|0)>>>0?j:316344}while(0);l=b+8|0;e=c[l>>2]|0;if(!(c[e+-8>>2]|0)){i=0;k=0}else{k=c[e+-16>>2]|0;i=k}e=c[j+8>>2]|0;switch(e&15){case 5:{c[(c[j>>2]|0)+24>>2]=i;if(!k){b=c[l>>2]|0;b=b+-16|0;c[l>>2]=b;return}e=c[j>>2]|0;f=e+5|0;g=a[f>>0]|0;do if((g&4)!=0?(a[k+5>>0]&3)!=0:0){h=c[b+12>>2]|0;if((d[h+61>>0]|0)<2){Iw(h,k);e=c[j>>2]|0;break}else{a[f>>0]=a[h+60>>0]&3|g&-8;break}}while(0);Jw(b,e,k);b=c[l>>2]|0;b=b+-16|0;c[l>>2]=b;return}case 7:{c[(c[j>>2]|0)+8>>2]=k;if(!k){b=c[l>>2]|0;b=b+-16|0;c[l>>2]=b;return}e=c[j>>2]|0;f=e+5|0;g=a[f>>0]|0;do if((g&4)!=0?(a[k+5>>0]&3)!=0:0){h=c[b+12>>2]|0;if((d[h+61>>0]|0)<2){Iw(h,i);e=c[j>>2]|0;break}else{a[f>>0]=a[h+60>>0]&3|g&-8;break}}while(0);Jw(b,e,k);b=c[l>>2]|0;b=b+-16|0;c[l>>2]=b;return}default:{c[(c[b+12>>2]|0)+244+((e&15)<<2)>>2]=k;b=c[l>>2]|0;b=b+-16|0;c[l>>2]=b;return}}}function bw(e,f,g,h,i,j){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+16|0;q=r;n=r+8|0;if(!h)h=0;else{m=c[e+16>>2]|0;do if((h|0)<=0){if((h|0)>=-1000999){h=(c[e+8>>2]|0)+(h<<4)|0;break}if((h|0)==-1001e3){h=(c[e+12>>2]|0)+40|0;break}k=-1001e3-h|0;h=c[m>>2]|0;if((c[h+8>>2]|0)==22)h=316344;else{h=c[h>>2]|0;h=(k|0)>(d[h+6>>0]|0)?316344:h+16+(k+-1<<4)|0}}else{h=(c[m>>2]|0)+(h<<4)|0;h=h>>>0<(c[e+8>>2]|0)>>>0?h:316344}while(0);h=h-(c[e+28>>2]|0)|0}p=e+8|0;o=(c[p>>2]|0)+(~f<<4)|0;c[n>>2]=o;if((j|0)!=0?(b[e+104>>1]|0)==0:0){k=c[e+16>>2]|0;c[k+16>>2]=j;c[k+24>>2]=i;c[k+28>>2]=o-(c[e+28>>2]|0);f=e+88|0;n=k+20|0;c[n>>2]=c[f>>2];c[f>>2]=h;h=k+34|0;a[h>>0]=a[e+109>>0]|a[h>>0]&-18|16;k=e+106|0;m=(b[k>>1]|0)+1<<16>>16;b[k>>1]=m;if((m&65535)>199){if(m<<16>>16==200)mw(e,279953,q);if((m&65535)>224)qw(e,6)}if(!(uw(e,o,g)|0))Sx(e);b[k>>1]=(b[k>>1]|0)+-1<<16>>16;a[h>>0]=a[h>>0]&-17;c[f>>2]=c[n>>2];m=0}else{c[n+4>>2]=g;m=Aw(e,147,n,o-(c[e+28>>2]|0)|0,h)|0}if((g|0)!=-1){l=r;return m|0}k=(c[e+16>>2]|0)+4|0;h=c[p>>2]|0;if((c[k>>2]|0)>>>0>=h>>>0){l=r;return m|0}c[k>>2]=h;l=r;return m|0}function cw(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=c[d>>2]|0;e=c[d+4>>2]|0;f=a+106|0;d=(b[f>>1]|0)+1<<16>>16;b[f>>1]=d;if((d&65535)>199){if(d<<16>>16==200)mw(a,279953,g);if((d&65535)>224)qw(a,6)}d=a+104|0;b[d>>1]=(b[d>>1]|0)+1<<16>>16;if(!(uw(a,h,e)|0))Sx(a);b[d>>1]=(b[d>>1]|0)+-1<<16>>16;b[f>>1]=(b[f>>1]|0)+-1<<16>>16;l=i;return}function dw(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;k=l;l=l+80|0;j=k+20|0;q=k;c[q+16>>2]=e;c[q+8>>2]=f;c[q+12>>2]=g;c[q>>2]=0;c[q+4>>2]=0;g=e+104|0;b[g>>1]=(b[g>>1]|0)+1<<16>>16;c[j>>2]=q;c[j+56>>2]=(h|0)==0?285924:h;c[j+52>>2]=i;q=j+16|0;c[q>>2]=0;p=j+24|0;c[p>>2]=0;o=j+28|0;c[o>>2]=0;n=j+36|0;c[n>>2]=0;m=j+40|0;c[m>>2]=0;i=j+48|0;c[i>>2]=0;s=j+4|0;c[s>>2]=0;r=j+12|0;c[r>>2]=0;h=e+8|0;j=Aw(e,163,j,(c[h>>2]|0)-(c[e+28>>2]|0)|0,c[e+88>>2]|0)|0;v=c[s>>2]|0;u=c[r>>2]|0;f=e+12|0;t=c[f>>2]|0;e=jg[c[t>>2]&31](c[t+4>>2]|0,v,u,0)|0;t=t+12|0;c[t>>2]=(v|0?0-u|0:0)+(c[t>>2]|0);c[s>>2]=e;c[r>>2]=0;q=c[q>>2]|0;p=c[p>>2]<<1;e=c[f>>2]|0;jg[c[e>>2]&31](c[e+4>>2]|0,q,p,0)|0;e=e+12|0;c[e>>2]=(q|0?0-p|0:0)+(c[e>>2]|0);o=c[o>>2]|0;n=c[n>>2]<<4;e=c[f>>2]|0;jg[c[e>>2]&31](c[e+4>>2]|0,o,n,0)|0;e=e+12|0;c[e>>2]=(o|0?0-n|0:0)+(c[e>>2]|0);m=c[m>>2]|0;i=c[i>>2]<<4;e=c[f>>2]|0;jg[c[e>>2]&31](c[e+4>>2]|0,m,i,0)|0;e=e+12|0;c[e>>2]=(m|0?0-i|0:0)+(c[e>>2]|0);b[g>>1]=(b[g>>1]|0)+-1<<16>>16;if(j|0){l=k;return j|0}i=c[(c[h>>2]|0)+-16>>2]|0;if(!(a[i+6>>0]|0)){l=k;return j|0}h=c[(c[f>>2]|0)+40>>2]|0;a:do if((c[h+8>>2]|0)>>>0>1)h=(c[h+12>>2]|0)+16|0;else{h=(c[h+16>>2]|0)+(((1<<d[h+7>>0])+3&2)<<5)|0;while(1){if((c[h+24>>2]|0)==19?(v=h+16|0,(c[v>>2]|0)==2&(c[v+4>>2]|0)==0):0)break;g=c[h+28>>2]|0;if(!g){h=316344;break a}h=h+(g<<5)|0}}while(0);v=i+16|0;u=c[c[v>>2]>>2]|0;c[u>>2]=c[h>>2];c[u+4>>2]=c[h+4>>2];c[u+8>>2]=c[h+8>>2];c[u+12>>2]=c[h+12>>2];v=c[v>>2]|0;h=c[v>>2]|0;if(!((h|0)==(v+8|0)?(c[h+8>>2]&64|0)!=0:0)){l=k;return j|0}g=c[f>>2]|0;h=c[h>>2]|0;if((d[g+61>>0]|0)>=2){l=k;return j|0}if(!(a[h+5>>0]&3)){l=k;return j|0}Iw(g,h);l=k;return j|0}function ew(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;h=q;e=c[a+16>>2]|0;do if((b|0)<=0){if((b|0)>=-1000999){b=(c[a+8>>2]|0)+(b<<4)|0;break}if((b|0)==-1001e3){b=(c[a+12>>2]|0)+40|0;break}f=-1001e3-b|0;b=c[e>>2]|0;if((c[b+8>>2]|0)==22)b=316344;else{b=c[b>>2]|0;b=(f|0)>(d[b+6>>0]|0|0)?316344:b+16+(f+-1<<4)|0}}else{b=(c[e>>2]|0)+(b<<4)|0;b=b>>>0<(c[a+8>>2]|0)>>>0?b:316344}while(0);k=c[b>>2]|0;o=a+8|0;m=c[o>>2]|0;n=m+-16|0;i=m+-8|0;switch(c[i>>2]|0){case 0:{g=c[k+8>>2]|0;b=0;break}case 19:{f=n;b=c[f>>2]|0;f=c[f+4>>2]|0;if(!(!(f>>>0>0|(f|0)==0&b>>>0>2147483648|((f|0)<0|(f|0)==0&b>>>0<1)|(b|0)==0)?(g=c[k+8>>2]|0,b>>>0<=g>>>0):0))p=13;break}default:p=13}if((p|0)==13){e=zx(k,n)|0;b=e+16|0;a:do if(!(Ox(0,b,n)|0)){while(1){if(((c[e+24>>2]|0)==10?c[i>>2]&64|0:0)?(c[b>>2]|0)==(c[n>>2]|0):0){j=e;break a}b=c[e+28>>2]|0;if(!b)break;f=e+(b<<5)|0;b=e+(b<<5)+16|0;if(Ox(0,b,n)|0){j=f;break a}else e=f}mw(a,281259,h)}else j=e;while(0);b=c[k+8>>2]|0;g=b;b=b+1+(j-(c[k+16>>2]|0)>>5)|0}a=k+12|0;while(1){if(b>>>0>=g>>>0)break;e=c[a>>2]|0;f=b+1|0;if(!(c[e+(b<<4)+8>>2]|0))b=f;else{p=25;break}}if((p|0)==25){p=n;c[p>>2]=f;c[p+4>>2]=0;c[i>>2]=19;p=e+(b<<4)|0;c[m>>2]=c[p>>2];c[m+4>>2]=c[p+4>>2];c[m+8>>2]=c[p+8>>2];c[m+12>>2]=c[p+12>>2];p=1;k=(p|0)==0;n=c[o>>2]|0;m=n+-16|0;n=n+16|0;n=k?m:n;c[o>>2]=n;l=q;return p|0}b=b-g|0;a=1<<(d[k+7>>0]|0);if((b|0)>=(a|0)){p=0;k=(p|0)==0;n=c[o>>2]|0;m=n+-16|0;n=n+16|0;n=k?m:n;c[o>>2]=n;l=q;return p|0}e=k+16|0;f=c[e>>2]|0;while(1){if(c[f+(b<<5)+8>>2]|0)break;b=b+1|0;if((b|0)>=(a|0)){b=0;p=31;break}}if((p|0)==31){m=(b|0)==0;p=c[o>>2]|0;n=p+-16|0;p=p+16|0;p=m?n:p;c[o>>2]=p;l=q;return b|0}p=f+(b<<5)+16|0;c[n>>2]=c[p>>2];c[n+4>>2]=c[p+4>>2];c[n+8>>2]=c[p+8>>2];c[n+12>>2]=c[p+12>>2];p=(c[e>>2]|0)+(b<<5)|0;c[m>>2]=c[p>>2];c[m+4>>2]=c[p+4>>2];c[m+8>>2]=c[p+8>>2];c[m+12>>2]=c[p+12>>2];p=1;k=(p|0)==0;n=c[o>>2]|0;m=n+-16|0;n=n+16|0;n=k?m:n;c[o>>2]=n;l=q;return p|0}function fw(b,d){b=b|0;d=d|0;var e=0;if((d|0)>1){if((c[(c[b+12>>2]|0)+12>>2]|0)>0)Sw(b);Px(b,d);return}else{if(d|0)return;d=b+8|0;e=c[d>>2]|0;b=xx(b,335059,0)|0;c[e>>2]=b;c[e+8>>2]=(a[b+4>>0]|64)&255;c[d>>2]=(c[d>>2]|0)+16;return}}function gw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=b+12|0;if((c[(c[e>>2]|0)+12>>2]|0)>0)Sw(b);if(d>>>0>4294967271)Vw(b);h=d+24|0;g=c[e>>2]|0;f=g+4|0;e=jg[c[g>>2]&31](c[f>>2]|0,0,7,h)|0;if((h|0)!=0&(e|0)==0){if(!(c[g+140>>2]|0))qw(b,4);Tw(b,1);e=jg[c[g>>2]&31](c[f>>2]|0,0,7,h)|0;if(!e)qw(b,4);else i=e}else i=e;f=g+12|0;c[f>>2]=h+(c[f>>2]|0);a[i+5>>0]=a[g+60>>0]&3;a[i+4>>0]=7;g=g+64|0;c[i>>2]=c[g>>2];c[g>>2]=i;c[i+12>>2]=d;c[i+8>>2]=0;g=316344;h=c[g+4>>2]|0;d=i+16|0;c[d>>2]=c[g>>2];c[d+4>>2]=h;a[i+6>>0]=0;d=b+8|0;b=c[d>>2]|0;c[b>>2]=i;c[b+8>>2]=71;c[d>>2]=(c[d>>2]|0)+16;return i+24|0}function hw(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=c[b+16>>2]|0;do if((e|0)<=0){if((e|0)>=-1000999){e=(c[b+8>>2]|0)+(e<<4)|0;break}if((e|0)==-1001e3){e=(c[b+12>>2]|0)+40|0;break}h=-1001e3-e|0;e=c[g>>2]|0;if((c[e+8>>2]|0)==22)e=316344;else{e=c[e>>2]|0;e=(h|0)>(d[e+6>>0]|0|0)?316344:e+16+(h+-1<<4)|0}}else{e=(c[g>>2]|0)+(e<<4)|0;e=e>>>0<(c[b+8>>2]|0)>>>0?e:316344}while(0);a:do switch(c[e+8>>2]&63){case 38:{e=c[e>>2]|0;if((f|0)<=0){b=0;return b|0}if((d[e+6>>0]|0|0)<(f|0)){b=0;return b|0}else{i=335059;h=e+16+(f+-1<<4)|0;f=0;break a}}case 6:{e=c[e>>2]|0;g=c[e+12>>2]|0;if((f|0)<=0){b=0;return b|0}if((c[g+12>>2]|0)<(f|0)){b=0;return b|0}i=f+-1|0;f=c[e+16+(i<<2)>>2]|0;h=c[f>>2]|0;e=c[(c[g+64>>2]|0)+(i<<3)>>2]|0;if(!e){i=279657;e=0}else{i=e+16|0;e=0}break}default:{b=0;return b|0}}while(0);g=b+8|0;j=(c[g>>2]|0)+-16|0;c[g>>2]=j;c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[h+8>>2]=c[j+8>>2];c[h+12>>2]=c[j+12>>2];if(!e){e=f;if(!f){j=i;return j|0}j=c[e>>2]|0;if(!((j|0)==(e+8|0)?(c[j+8>>2]&64|0)!=0:0)){j=i;return j|0}g=c[b+12>>2]|0;e=c[c[f>>2]>>2]|0;if((d[g+61>>0]|0)>=2){j=i;return j|0}if(!(a[e+5>>0]&3)){j=i;return j|0}Iw(g,e);j=i;return j|0}g=c[g>>2]|0;if(!(c[g+8>>2]&64)){j=i;return j|0}h=e+5|0;f=a[h>>0]|0;if(!(f&4)){j=i;return j|0}g=c[g>>2]|0;if(!(a[g+5>>0]&3)){j=i;return j|0}e=c[b+12>>2]|0;if((d[e+61>>0]|0)<2){Iw(e,g);j=i;return j|0}else{a[h>>0]=a[e+60>>0]&3|f&-8;j=i;return j|0}return 0}function iw(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,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;Y=l;l=l+16|0;X=Y;V=b+6|0;if((a[V>>0]|0)==1){N=c[b+16>>2]|0;O=c[N>>2]|0;R=c[b+28>>2]|0;U=N+28|0;c[N>>2]=R+(c[U>>2]|0);c[U>>2]=O-R}if((a[e>>0]|0)==62){O=b+8|0;U=(c[O>>2]|0)+-16|0;c[O>>2]=U;e=e+1|0;O=0}else{U=c[f+96>>2]|0;O=U;U=c[U>>2]|0}if((c[U+8>>2]&31|0)==6)R=c[U>>2]|0;else R=0;g=a[e>>0]|0;a:do if(!(g<<24>>24))t=1;else{o=(R|0)==0;p=f+16|0;q=f+24|0;r=f+28|0;s=f+12|0;u=f+36|0;v=R+4|0;w=R+12|0;x=(O|0)==0;y=f+20|0;A=O+34|0;B=O+20|0;C=f+32|0;D=f+34|0;E=f+33|0;F=R+6|0;G=f+35|0;H=f+8|0;I=f+4|0;J=O+8|0;K=b+12|0;L=f+45|0;M=f+95|0;N=f+39|0;n=e;t=1;while(1){b:do switch(g<<24>>24|0){case 83:{if(!o?(a[v>>0]|0)!=38:0){m=c[w>>2]|0;k=c[m+72>>2]|0;k=(k|0)==0?279696:k+16|0;c[p>>2]=k;g=c[m+36>>2]|0;c[q>>2]=g;c[r>>2]=c[m+40>>2];g=(g|0)==0?279699:279704}else{c[p>>2]=279691;c[q>>2]=-1;c[r>>2]=-1;k=279691;g=308504}c[s>>2]=g;m=WO(k)|0;switch(a[k>>0]|0){case 61:{g=k+1|0;if(m>>>0>60){j=u;h=j+59|0;do{a[j>>0]=a[g>>0]|0;j=j+1|0;g=g+1|0}while((j|0)<(h|0));a[M>>0]=0;break b}else{PQ(u|0,g|0,m|0)|0;break b}}case 64:if(m>>>0>60){a[u>>0]=a[287391]|0;a[u+1>>0]=a[287392]|0;a[u+2>>0]=a[287393]|0;j=N;g=k+(m+-56)|0;h=j+57|0;do{a[j>>0]=a[g>>0]|0;j=j+1|0;g=g+1|0}while((j|0)<(h|0));break b}else{PQ(u|0,k+1|0,m|0)|0;break b}default:{i=XO(k,10)|0;j=u;g=280583;h=j+9|0;do{a[j>>0]=a[g>>0]|0;j=j+1|0;g=g+1|0}while((j|0)<(h|0));g=(i|0)==0;if(m>>>0<45&g){PQ(L|0,k|0,m|0)|0;g=m+9|0}else{g=g?m:i-k|0;g=g>>>0<45?g:45;PQ(L|0,k|0,g|0)|0;m=g+9+(f+36)|0;a[m>>0]=a[287391]|0;a[m+1>>0]=a[287392]|0;a[m+2>>0]=a[287393]|0;g=g+12|0}m=f+36+g|0;a[m>>0]=a[280593]|0;a[m+1>>0]=a[280594]|0;a[m+2>>0]=a[280595]|0;break b}}}case 108:{if((!x?(a[A>>0]&2)!=0:0)?(S=c[(c[c[O>>2]>>2]|0)+12>>2]|0,T=c[S+56>>2]|0,(T|0)!=0):0)g=c[T+(((c[B>>2]|0)-(c[S+48>>2]|0)>>2)+-1<<2)>>2]|0;else g=-1;c[y>>2]=g;break}case 117:{if(!o){a[C>>0]=a[F>>0]|0;if((a[v>>0]|0)!=38){m=c[w>>2]|0;a[D>>0]=a[m+7>>0]|0;a[E>>0]=a[m+6>>0]|0;break b}}else a[C>>0]=0;a[D>>0]=1;a[E>>0]=0;break}case 116:{if(x)g=0;else g=a[A>>0]&32;a[G>>0]=g;break}case 110:{c:do if((!x?(a[A>>0]&32)==0:0)?(P=c[J>>2]|0,Q=a[P+34>>0]|0,(Q&2)!=0):0){g=c[(c[c[P>>2]>>2]|0)+12>>2]|0;i=c[g+48>>2]|0;h=((c[P+20>>2]|0)-i>>2)+-1|0;i=c[i+(h<<2)>>2]|0;d:do if(!(Q&4)){do switch(i&63){case 41:{g=279708;h=279708;break d}case 37:case 36:{m=jw(g,h,i>>>6&255,I)|0;c[H>>2]=m;if(!m)break c;else break b}case 33:{g=21;break}case 32:{g=20;break}case 31:{g=5;break}case 10:case 8:{g=1;break}case 24:case 23:case 22:case 21:case 20:case 19:case 18:case 17:case 16:case 15:case 14:case 13:{g=(i&63)+-7|0;break}case 25:{g=18;break}case 26:{g=19;break}case 28:{g=4;break}case 29:{g=22;break}default:g=0}while(0);g=(c[(c[K>>2]|0)+148+(g<<2)>>2]|0)+16|0;h=279721}else{g=285924;h=279732}while(0);c[I>>2]=g;c[H>>2]=h;break b}else W=54;while(0);if((W|0)==54){W=0;c[H>>2]=0}c[H>>2]=335059;c[I>>2]=0;break}case 102:case 76:break;default:t=0}while(0);n=n+1|0;g=a[n>>0]|0;if(!(g<<24>>24))break a}}while(0);if(XO(e,102)|0){W=b+8|0;f=c[W>>2]|0;c[f>>2]=c[U>>2];c[f+4>>2]=c[U+4>>2];c[f+8>>2]=c[U+8>>2];c[f+12>>2]=c[U+12>>2];c[W>>2]=(c[W>>2]|0)+16}if((a[V>>0]|0)==1){f=c[b+16>>2]|0;U=c[f>>2]|0;V=c[b+28>>2]|0;W=f+28|0;c[f>>2]=V+(c[W>>2]|0);c[W>>2]=U-V}if(!(XO(e,76)|0)){l=Y;return t|0}if(R|0?(a[R+4>>0]|0)!=38:0){j=R+12|0;k=c[(c[j>>2]|0)+56>>2]|0;m=Dx(b)|0;W=b+8|0;V=c[W>>2]|0;c[V>>2]=m;c[V+8>>2]=69;c[W>>2]=(c[W>>2]|0)+16;if((c[(c[j>>2]|0)+24>>2]|0)<=0){l=Y;return t|0}n=m+8|0;o=m+12|0;p=X+8|0;q=m+7|0;r=m+16|0;s=0;do{h=c[k+(s<<2)>>2]|0;i=((h|0)<0)<<31>>31;e=yQ(h|0,i|0,-1,-1)|0;W=z;e:do if(W>>>0<0|((W|0)==0?e>>>0<(c[n>>2]|0)>>>0:0)){e=(c[o>>2]|0)+(e<<4)|0;W=78}else{e=(c[r>>2]|0)+(((1<<d[q>>0])+-1&h)<<5)|0;while(1){if((c[e+24>>2]|0)==19?(W=e+16|0,(c[W>>2]|0)==(h|0)?(c[W+4>>2]|0)==(i|0):0):0)break;g=c[e+28>>2]|0;if(!g){W=79;break e}e=e+(g<<5)|0}W=78}while(0);if((W|0)==78){W=0;if((e|0)==316344)W=79}if((W|0)==79){e=X;c[e>>2]=h;c[e+4>>2]=i;c[p>>2]=19;e=Bx(b,m,X)|0}c[e>>2]=1;c[e+8>>2]=1;s=s+1|0}while((s|0)<(c[(c[j>>2]|0)+24>>2]|0));l=Y;return t|0}X=b+8|0;b=c[X>>2]|0;c[b+8>>2]=0;c[X>>2]=b+16;l=Y;return t|0}function jw(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=b+48|0;p=c[b+32>>2]|0;n=(p|0)>0;o=b+60|0;a:while(1){b:do if(n){i=c[o>>2]|0;g=e+1|0;h=0;do{if((c[i+(h*12|0)+4>>2]|0)>(d|0))break b;if((c[i+(h*12|0)+8>>2]|0)>(d|0)){g=g+-1|0;if(!g){k=9;break a}}h=h+1|0}while((h|0)<(p|0))}while(0);c[f>>2]=0;if((d|0)<=0){d=0;k=54;break}l=c[m>>2]|0;j=0;k=0;i=-1;while(1){g=c[l+(k<<2)>>2]|0;h=g>>>6&255;switch(g&63){case 4:{if((h|0)<=(e|0)?(h+(g>>>23)|0)>=(e|0):0){g=j;i=(k|0)<(j|0)?-1:k}else g=j;break}case 41:{if((h+2|0)>(e|0))g=j;else{g=j;i=(k|0)<(j|0)?-1:k}break}case 37:case 36:{if((h|0)>(e|0))g=j;else{g=j;i=(k|0)<(j|0)?-1:k}break}case 30:{g=k+-131070+(g>>>14)|0;g=(g|0)>(j|0)&((g|0)<=(d|0)&(k|0)<(g|0))?g:j;break}default:if((h|0)==(e|0)?(a[280596+(g&63)>>0]&64)!=0:0){g=j;i=(k|0)<(j|0)?-1:k}else g=j}k=k+1|0;if((k|0)==(d|0))break;else j=g}if((i|0)==-1){d=0;k=54;break}g=c[l+(i<<2)>>2]|0;switch(g&63){case 7:case 6:{k=26;break a}case 5:{k=43;break a}case 12:{k=48;break a}case 1:{k=44;break a}case 2:{k=45;break a}case 0:break;default:{d=0;k=54;break a}}e=g>>>23;if(e>>>0>=(g>>>6&255)>>>0){d=0;k=54;break}else d=i}if((k|0)==9){c[f>>2]=(c[i+(h*12|0)>>2]|0)+16;f=287337;return f|0}else if((k|0)==26){h=g>>>14;j=h&511;d=g>>>23;c:do if((g&63|0)==7)if(n){g=c[o>>2]|0;d=d+1|0;e=0;while(1){if((c[g+(e*12|0)+4>>2]|0)>(i|0)){g=0;break c}if((c[g+(e*12|0)+8>>2]|0)>(i|0)){d=d+-1|0;if(!d)break}e=e+1|0;if((e|0)>=(p|0)){g=0;break c}}g=(c[g+(e*12|0)>>2]|0)+16|0}else g=0;else{g=c[(c[b+64>>2]|0)+(d<<3)>>2]|0;g=(g|0)==0?285924:g+16|0}while(0);if(!(h&256)){b=jw(b,i,j,f)|0;if(!((b|0)!=0?(a[b>>0]|0)==99:0)){d=285924;k=40}}else{e=h&255;d=c[b+44>>2]|0;if((c[d+(e<<4)+8>>2]&15|0)==4){d=(c[d+(e<<4)>>2]|0)+16|0;k=40}else{d=285924;k=40}}if((k|0)==40)c[f>>2]=d;if(!g){f=279744;return f|0}f=(JN(g,287279)|0)==0;f=f?279737:279744;return f|0}else if((k|0)==43){b=c[(c[b+64>>2]|0)+(g>>>23<<3)>>2]|0;c[f>>2]=(b|0)==0?285924:b+16|0;f=279759;return f|0}else if((k|0)==44)e=g>>>14;else if((k|0)==45)e=(c[l+(i+1<<2)>>2]|0)>>>6;else if((k|0)==48){d=g>>>14;if(!(d&256)){b=jw(b,i,d&511,f)|0;if(b|0?(a[b>>0]|0)==99:0){f=282150;return f|0}}else{e=d&255;d=c[b+44>>2]|0;if((c[d+(e<<4)+8>>2]&15|0)==4){c[f>>2]=(c[d+(e<<4)>>2]|0)+16;f=282150;return f|0}}c[f>>2]=285924;f=282150;return f|0}else if((k|0)==54)return d|0;d=c[b+44>>2]|0;if((c[d+(e<<4)+8>>2]&15|0)!=4){f=0;return f|0}c[f>>2]=(c[d+(e<<4)>>2]|0)+16;f=279750;return f|0}function kw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=c[5104+((c[b+8>>2]&15)+1<<2)>>2]|0;b=lw(a,b)|0;c[e>>2]=d;c[e+4>>2]=f;c[e+8>>2]=b;mw(a,279767,e)}function lw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;k=m;j=m+8|0;c[j>>2]=0;g=c[b+16>>2]|0;if(!(a[g+34>>0]&2)){k=335059;l=m;return k|0}h=c[c[g>>2]>>2]|0;e=a[h+6>>0]|0;a:do if(!(e<<24>>24))i=7;else{f=e&255;e=0;while(1){if((c[c[h+16+(e<<2)>>2]>>2]|0)==(d|0))break;e=e+1|0;if((e|0)>=(f|0)){i=7;break a}}f=c[(c[(c[h+12>>2]|0)+64>>2]|0)+(e<<3)>>2]|0;f=(f|0)==0?285924:f+16|0;c[j>>2]=f;e=279759}while(0);do if((i|0)==7){f=c[g+16>>2]|0;e=d-f|0;if((e|0)<=-16){k=335059;l=m;return k|0}if((e|0)>=((c[g+4>>2]|0)-f|0)){k=335059;l=m;return k|0}i=c[h+12>>2]|0;e=jw(i,((c[g+20>>2]|0)-(c[i+48>>2]|0)>>2)+-1|0,e>>4,j)|0;if(!e){k=335059;l=m;return k|0}else{f=c[j>>2]|0;break}}while(0);c[k>>2]=e;c[k+4>>2]=f;k=Zw(b,279804,k)|0;l=m;return k|0}function mw(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;k=l;l=l+96|0;n=k;m=k+32|0;k=k+16|0;g=c[b+16>>2]|0;c[k>>2]=e;k=Yw(b,d,k)|0;if(!(a[g+34>>0]&2))nw(b);d=c[(c[c[g>>2]>>2]|0)+12>>2]|0;f=c[d+72>>2]|0;e=c[d+56>>2]|0;if(!e)j=-1;else j=c[e+(((c[g+20>>2]|0)-(c[d+48>>2]|0)>>2)+-1<<2)>>2]|0;a:do if(!f){a[m>>0]=63;a[m+1>>0]=0}else{g=f+16|0;i=WO(g)|0;switch(a[g>>0]|0){case 61:{d=g+1|0;if(i>>>0>60){f=m;e=f+59|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(e|0));a[m+59>>0]=0;break a}else{PQ(m|0,d|0,i|0)|0;break a}}case 64:if(i>>>0>60){a[m>>0]=a[287391]|0;a[m+1>>0]=a[287392]|0;a[m+2>>0]=a[287393]|0;f=m+3|0;d=g+(i+-56)|0;e=f+57|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(e|0));break a}else{PQ(m|0,g+1|0,i|0)|0;break a}default:{h=XO(g,10)|0;f=m;d=280583;e=f+9|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(e|0));d=m+9|0;e=(h|0)==0;if(i>>>0<45&e){PQ(d|0,g|0,i|0)|0;d=i+9|0}else{i=e?i:h-g|0;i=i>>>0<45?i:45;PQ(d|0,g|0,i|0)|0;d=m+(i+9)|0;a[d>>0]=a[287391]|0;a[d+1>>0]=a[287392]|0;a[d+2>>0]=a[287393]|0;d=i+12|0}i=m+d|0;a[i>>0]=a[280593]|0;a[i+1>>0]=a[280594]|0;a[i+2>>0]=a[280595]|0;break a}}}while(0);c[n>>2]=m;c[n+4>>2]=j;c[n+8>>2]=k;Zw(b,279794,n)|0;nw(b)}function nw(a){a=a|0;var d=0,e=0,f=0,g=0,h=0;g=l;l=l+16|0;d=c[a+88>>2]|0;if(!d)qw(a,2);d=(c[a+28>>2]|0)+d|0;f=a+8|0;e=c[f>>2]|0;h=e+-16|0;c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[e+8>>2]=c[h+8>>2];c[e+12>>2]=c[h+12>>2];e=(c[f>>2]|0)+-16|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];e=c[f>>2]|0;c[f>>2]=e+16;e=e+-16|0;f=a+106|0;d=(b[f>>1]|0)+1<<16>>16;b[f>>1]=d;if((d&65535)>199){if(d<<16>>16==200)mw(a,279953,g);if((d&65535)>224)qw(a,6)}d=a+104|0;b[d>>1]=(b[d>>1]|0)+1<<16>>16;if(!(uw(a,e,1)|0))Sx(a);b[d>>1]=(b[d>>1]|0)+-1<<16>>16;b[f>>1]=(b[f>>1]|0)+-1<<16>>16;qw(a,2)}function ow(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;i=l;l=l+16|0;h=c[e+8>>2]|0;if((h|0)==3){j=f;kw(b,j,g)}if((h|0)!=19){if((h&15|0)==4){i=Ww((c[e>>2]|0)+16|0,i)|0;h=c[e>>2]|0;if((a[h+4>>0]|0)==4)h=d[h+7>>0]|0;else h=c[h+12>>2]|0;e=(i|0)==(h+1|0)?f:e}}else e=f;j=e;kw(b,j,g)}function pw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=l;l=l+16|0;g=f+8|0;e=c[5104+((b&15)+1<<2)>>2]|0;b=c[5104+((d&15)+1<<2)>>2]|0;if((e|0)==(b|0)){c[f>>2]=e;mw(a,279866,f)}else{c[g>>2]=e;c[g+4>>2]=b;mw(a,279899,g)}}function qw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;e=c[b+44>>2]|0;if(e|0){c[e+160>>2]=d;Of(e+4|0,1)}i=c[b+12>>2]|0;a[b+6>>0]=d;f=i+136|0;e=c[f>>2]|0;if(c[e+44>>2]|0){g=e+8|0;h=c[g>>2]|0;c[g>>2]=h+16;g=(c[b+8>>2]|0)+-16|0;c[h>>2]=c[g>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[h+12>>2]=c[g+12>>2];qw(c[f>>2]|0,d)}h=i+132|0;if(!(c[h>>2]|0))hb();g=b+8|0;e=c[g>>2]|0;switch(d|0){case 4:{d=c[i+144>>2]|0;c[e>>2]=d;c[e+8>>2]=(a[d+4>>0]|64)&255;break}case 6:{d=xx(b,279929,23)|0;c[e>>2]=d;c[e+8>>2]=(a[d+4>>0]|64)&255;break}default:{d=e+-16|0;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2]}}f=e+16|0;c[g>>2]=f;e=(c[b+16>>2]|0)+4|0;if((c[e>>2]|0)>>>0<f>>>0)c[e>>2]=f;gg[c[h>>2]&511](b)|0;hb()}function rw(a,d,e){a=a|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,q=0,r=0,s=0;s=l;l=l+176|0;n=4;q=eN(40)|0;c[q>>2]=0;m=s;h=a+106|0;i=b[h>>1]|0;j=m+160|0;c[j>>2]=0;k=a+44|0;c[m>>2]=c[k>>2];c[k>>2]=m;n=NQ(m+4|0,1,q|0,n|0)|0;q=z;o=0;f=o;o=0;if((f|0)!=0&(p|0)!=0){g=OQ(c[f>>2]|0,n|0,q|0)|0;if(!g)Of(f|0,p|0);z=p}else g=-1;if((g|0)==1)f=z;else f=0;while(1){if(f|0){r=6;break}o=0;ua(d|0,a|0,e|0);f=o;o=0;if((f|0)!=0&(p|0)!=0){g=OQ(c[f>>2]|0,n|0,q|0)|0;if(!g)Of(f|0,p|0);z=p}else g=-1;if((g|0)==1)f=z;else break}if((r|0)==6){r=c[m>>2]|0;c[k>>2]=r;b[h>>1]=i;r=c[j>>2]|0;fN(n|0);l=s;return r|0}r=c[m>>2]|0;c[k>>2]=r;b[h>>1]=i;r=c[j>>2]|0;fN(n|0);l=s;return r|0}function sw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;i=b+28|0;f=c[i>>2]|0;n=b+92|0;e=c[n>>2]|0;if((d+1|0)>>>0>268435455)Vw(b);k=e<<4;l=d<<4;m=c[b+12>>2]|0;j=(f|0)!=0;g=m+4|0;h=jg[c[m>>2]&31](c[g>>2]|0,f,k,l)|0;if((l|0)!=0&(h|0)==0){if(!(c[m+140>>2]|0))qw(b,4);Tw(b,1);g=jg[c[m>>2]&31](c[g>>2]|0,f,k,l)|0;if(!g)qw(b,4);else o=g}else o=h;m=m+12|0;c[m>>2]=(j?0-k|0:0)+l+(c[m>>2]|0);c[i>>2]=o;if((e|0)<(d|0))do{c[o+(e<<4)+8>>2]=0;e=e+1|0}while((e|0)!=(d|0));c[n>>2]=d;c[b+24>>2]=o+(d+-5<<4);e=b+8|0;c[e>>2]=o+((c[e>>2]|0)-f>>4<<4);e=c[b+32>>2]|0;if(e|0)do{c[e>>2]=o+((c[e>>2]|0)-f>>4<<4);e=c[e+8>>2]|0}while((e|0)!=0);e=c[b+16>>2]|0;if(!e)return;do{b=e+4|0;c[b>>2]=o+((c[b>>2]|0)-f>>4<<4);c[e>>2]=o+((c[e>>2]|0)-f>>4<<4);if(a[e+34>>0]&2){b=e+16|0;c[b>>2]=o+((c[b>>2]|0)-f>>4<<4)}e=c[e+8>>2]|0}while((e|0)!=0);return}function tw(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=l;l=l+112|0;r=s;q=s+4|0;g=c[b+84>>2]|0;if(!g){l=s;return}m=b+109|0;if(!(a[m>>0]|0)){l=s;return}o=c[b+16>>2]|0;p=b+8|0;f=c[p>>2]|0;h=b+28|0;k=c[h>>2]|0;t=f;i=t-k|0;j=o+4|0;k=(c[j>>2]|0)-k|0;c[q>>2]=d;c[q+20>>2]=e;c[q+96>>2]=o;do if(((c[b+24>>2]|0)-t|0)<336){f=c[b+92>>2]|0;if((f|0)>1e6)qw(b,6);t=(i>>4)+25|0;f=f<<1;f=(f|0)<1e6?f:1e6;f=(f|0)<(t|0)?t:f;if((f|0)>1e6){sw(b,1000200);mw(b,283421,r)}else{sw(b,f);n=c[p>>2]|0;break}}else n=f;while(0);c[j>>2]=n+320;a[m>>0]=0;t=o+34|0;a[t>>0]=a[t>>0]|4;Bg[g&255](b,q);a[m>>0]=1;r=c[h>>2]|0;c[j>>2]=r+k;c[p>>2]=r+i;a[t>>0]=a[t>>0]&-5;l=s;return}function uw(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=l;l=l+32|0;p=B+24|0;w=B+16|0;t=B+8|0;q=B;y=e+28|0;u=e+24|0;A=e+8|0;v=e+92|0;z=e+12|0;a:while(1){i=c[y>>2]|0;m=f;k=i;x=m-k|0;switch(c[f+8>>2]&63){case 22:{h=3;break a}case 38:{h=4;break a}case 6:{h=22;break a}default:{}}h=c[A>>2]|0;if(((c[u>>2]|0)-h|0)<32){f=c[v>>2]|0;if((f|0)>1e6){h=59;break}s=(h-k>>4)+6|0;f=f<<1;f=(f|0)<1e6?f:1e6;f=(f|0)<(s|0)?s:f;if((f|0)>1e6){h=61;break}sw(e,f);f=c[y>>2]|0}else f=i;f=f+x|0;h=c[f+8>>2]|0;switch(h&15){case 5:{h=(c[f>>2]|0)+24|0;break}case 7:{h=(c[f>>2]|0)+8|0;break}default:h=(c[z>>2]|0)+244+((h&15)<<2)|0}h=c[h>>2]|0;b:do if(!h)i=316344;else{k=c[(c[z>>2]|0)+240>>2]|0;i=(c[h+16>>2]|0)+(((1<<d[h+7>>0])+-1&c[k+8>>2])<<5)|0;while(1){if((c[i+24>>2]|0)==68?(c[i+16>>2]|0)==(k|0):0)break;h=c[i+28>>2]|0;if(!h){i=316344;break b}i=i+(h<<5)|0}}while(0);if((c[i+8>>2]&15|0)!=6){h=75;break}h=c[A>>2]|0;if(h>>>0>f>>>0){do{x=h;h=h+-16|0;c[x>>2]=c[h>>2];c[x+4>>2]=c[h+4>>2];c[x+8>>2]=c[h+8>>2];c[x+12>>2]=c[h+12>>2]}while(h>>>0>f>>>0);h=c[A>>2]|0}c[A>>2]=h+16;c[f>>2]=c[i>>2];c[f+4>>2]=c[i+4>>2];c[f+8>>2]=c[i+8>>2];c[f+12>>2]=c[i+12>>2]}if((h|0)==3)o=f;else if((h|0)==4)o=(c[f>>2]|0)+12|0;else if((h|0)==22){s=c[(c[f>>2]|0)+12>>2]|0;f=c[A>>2]|0;q=f-m>>4;o=q+-1|0;if((c[(c[z>>2]|0)+12>>2]|0)>0){Sw(e);f=c[A>>2]|0}r=s+8|0;h=d[r>>0]|0;do if(((c[u>>2]|0)-f>>4|0)<=(h|0)){i=c[v>>2]|0;if((i|0)>1e6)qw(e,6);p=h+5+(f-(c[y>>2]|0)>>4)|0;f=i<<1;f=(f|0)<1e6?f:1e6;f=(f|0)<(p|0)?p:f;if((f|0)>1e6){sw(e,1000200);mw(e,283421,t)}else{sw(e,f);break}}while(0);m=a[s+6>>0]|0;p=m&255;if((q|0)>(p|0))k=o;else{h=c[A>>2]|0;i=p+1|0;k=h;f=o;while(1){c[k+8>>2]=0;f=f+1|0;if((f|0)>=(p|0))break;else k=k+16|0}c[A>>2]=h+(i-q<<4);k=p}if(!(a[s+7>>0]|0)){n=c[y>>2]|0;f=n;n=n+(x+16)|0}else{f=c[A>>2]|0;h=f;i=d[r>>0]|0;do if(((c[u>>2]|0)-h>>4|0)<=(i|0)){f=c[v>>2]|0;if((f|0)>1e6)qw(e,6);v=i+5+(h-(c[y>>2]|0)>>4)|0;f=f<<1;f=(f|0)<1e6?f:1e6;f=(f|0)<(v|0)?v:f;if((f|0)>1e6){sw(e,1000200);mw(e,283421,w)}else{sw(e,f);n=c[A>>2]|0;break}}else n=f;while(0);if(m<<24>>24?(c[A>>2]=n+16,w=0-k|0,v=n+(w<<4)|0,c[n>>2]=c[v>>2],c[n+4>>2]=c[v+4>>2],c[n+8>>2]=c[v+8>>2],c[n+12>>2]=c[v+12>>2],c[n+(w<<4)+8>>2]=0,m<<24>>24!=1):0){f=1;do{v=c[A>>2]|0;c[A>>2]=v+16;w=f-k|0;u=n+(w<<4)|0;c[v>>2]=c[u>>2];c[v+4>>2]=c[u+4>>2];c[v+8>>2]=c[u+8>>2];c[v+12>>2]=c[u+12>>2];c[n+(w<<4)+8>>2]=0;f=f+1|0}while((f|0)!=(p|0))}f=c[y>>2]|0}k=f+x|0;m=e+16|0;f=c[(c[m>>2]|0)+12>>2]|0;if(!f){i=c[z>>2]|0;f=i+4|0;h=jg[c[i>>2]&31](c[f>>2]|0,0,0,36)|0;if(!h){if(!(c[i+140>>2]|0))qw(e,4);Tw(e,1);f=jg[c[i>>2]&31](c[f>>2]|0,0,0,36)|0;if(!f)qw(e,4);else j=f}else j=h;z=i+12|0;c[z>>2]=(c[z>>2]|0)+36;z=c[m>>2]|0;c[z+12>>2]=j;c[j+8>>2]=z;c[j+12>>2]=0}else j=f;c[m>>2]=j;b[j+32>>1]=g;c[j>>2]=k;c[j+16>>2]=n;g=n+(d[r>>0]<<4)|0;c[j+4>>2]=g;f=c[s+48>>2]|0;i=j+20|0;c[i>>2]=f;h=j+34|0;a[h>>0]=2;c[A>>2]=g;if(!(a[e+108>>0]&1)){e=0;l=B;return e|0}c[i>>2]=f+4;A=c[j+8>>2]|0;if((a[A+34>>0]&2)!=0?(c[(c[A+20>>2]|0)+-4>>2]&63|0)==37:0){a[h>>0]=34;f=4}else f=0;tw(e,f,-1);c[i>>2]=(c[i>>2]|0)+-4;e=0;l=B;return e|0}else if((h|0)==59)qw(e,6);else if((h|0)==61){sw(e,1000200);mw(e,283421,p)}else if((h|0)==75)kw(e,f,283445);k=c[o>>2]|0;if((c[(c[z>>2]|0)+12>>2]|0)>0)Sw(e);h=c[A>>2]|0;do if(((c[u>>2]|0)-h|0)<336){f=c[v>>2]|0;if((f|0)>1e6)qw(e,6);w=(h-(c[y>>2]|0)>>4)+25|0;f=f<<1;f=(f|0)<1e6?f:1e6;f=(f|0)<(w|0)?w:f;if((f|0)>1e6){sw(e,1000200);mw(e,283421,q)}else{sw(e,f);break}}while(0);j=e+16|0;f=c[(c[j>>2]|0)+12>>2]|0;if(!f){i=c[z>>2]|0;f=i+4|0;h=jg[c[i>>2]&31](c[f>>2]|0,0,0,36)|0;if(!h){if(!(c[i+140>>2]|0))qw(e,4);Tw(e,1);f=jg[c[i>>2]&31](c[f>>2]|0,0,0,36)|0;if(!f)qw(e,4);else r=f}else r=h;f=i+12|0;c[f>>2]=(c[f>>2]|0)+36;f=c[j>>2]|0;c[f+12>>2]=r;c[r+8>>2]=f;c[r+12>>2]=0;f=r}c[j>>2]=f;b[f+32>>1]=g;c[f>>2]=(c[y>>2]|0)+x;c[f+4>>2]=(c[A>>2]|0)+320;a[f+34>>0]=0;if(a[e+108>>0]&1)tw(e,0,-1);g=gg[k&511](e)|0;vw(e,(c[A>>2]|0)+(0-g<<4)|0,g)|0;e=1;l=B;return e|0}function vw(a,e,f){a=a|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;j=a+16|0;i=c[j>>2]|0;g=d[a+108>>0]|0;if(!(g&6))h=c[i+8>>2]|0;else{if(g&2){k=a+28|0;e=e-(c[k>>2]|0)|0;tw(a,1,-1);e=(c[k>>2]|0)+e|0}h=c[i+8>>2]|0;c[a+20>>2]=c[h+20>>2]}g=c[i>>2]|0;i=b[i+32>>1]|0;k=i<<16>>16;c[j>>2]=h;if(i<<16>>16!=0&(f|0)>0){h=0-k|0;j=-2-f-((f|0)<1?~f:-2)|0;j=j>>>0<h>>>0?h:j;h=k;i=g;while(1){c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];c[i+8>>2]=c[e+8>>2];c[i+12>>2]=c[e+12>>2];h=h+-1|0;if(!((h|0)!=0&(f|0)>1))break;else{f=f+-1|0;e=e+16|0;i=i+16|0}}i=j+k|0;g=g+(0-j<<4)|0}else i=k;if((i|0)>0){e=i;h=g}else{j=g;a=a+8|0;c[a>>2]=j;a=k+1|0;return a|0}while(1){c[h+8>>2]=0;if((e|0)>1){e=e+-1|0;h=h+16|0}else break}j=g+(i<<4)|0;a=a+8|0;c[a>>2]=j;a=k+1|0;return a|0}function ww(a,c,d,e){a=a|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i;h=a+106|0;f=(b[h>>1]|0)+1<<16>>16;b[h>>1]=f;if((f&65535)>199){if(f<<16>>16==200)mw(a,279953,g);if((f&65535)>224)qw(a,6)}f=(e|0)!=0;if(!f){g=a+104|0;b[g>>1]=(b[g>>1]|0)+1<<16>>16}if(!(uw(a,c,d)|0))Sx(a);if(f){d=b[h>>1]|0;d=d+-1<<16>>16;b[h>>1]=d;l=i;return}d=a+104|0;b[d>>1]=(b[d>>1]|0)+-1<<16>>16;d=b[h>>1]|0;d=d+-1<<16>>16;b[h>>1]=d;l=i;return}function xw(d,f){d=d|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;f=c[f>>2]|0;k=d+8|0;i=c[k>>2]|0;g=i+(0-f<<4)|0;l=d+16|0;j=c[l>>2]|0;if((e[d+106>>1]|0)>199)zw(d,279953,g);h=d+6|0;switch(a[h>>0]|0){case 0:{if((j|0)!=(d+48|0))zw(d,279970,g);if(uw(d,i+(~f<<4)|0,-1)|0)return;Sx(d);return}case 1:{a[h>>0]=0;c[j>>2]=(c[d+28>>2]|0)+(c[j+28>>2]|0);if(!(a[j+34>>0]&2)){h=c[j+16>>2]|0;if(h){f=ig[h&63](d,1,c[j+24>>2]|0)|0;g=(c[k>>2]|0)+(0-f<<4)|0}vw(d,g,f)|0}else Sx(d);f=c[l>>2]|0;i=d+48|0;if((f|0)==(i|0))return;j=d+88|0;do{h=f+34|0;g=a[h>>0]|0;if(!(g&2)){g=g&255;if(g&16|0){a[h>>0]=g&239;c[j>>2]=c[f+20>>2]}if((b[f+32>>1]|0)==-1?(m=f+4|0,n=c[k>>2]|0,(c[m>>2]|0)>>>0<n>>>0):0)c[m>>2]=n;h=ig[c[f+16>>2]&63](d,1,c[f+24>>2]|0)|0;vw(d,(c[k>>2]|0)+(0-h<<4)|0,h)|0}else{Rx(d);Sx(d)}f=c[l>>2]|0}while((f|0)!=(i|0));return}default:zw(d,283120,g)}}function yw(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;if(!f)i=e+16|0;else{j=c[f>>2]|0;i=e+16|0;k=c[i>>2]|0;f=k+34|0;g=d[f>>0]|0;if(g&16|0){a[f>>0]=g&239;c[e+88>>2]=c[k+20>>2]}if((b[k+32>>1]|0)==-1){g=k+4|0;f=e+8|0;h=c[f>>2]|0;if((c[g>>2]|0)>>>0<h>>>0)c[g>>2]=h}else f=e+8|0;l=ig[c[k+16>>2]&63](e,j,c[k+24>>2]|0)|0;vw(e,(c[f>>2]|0)+(0-l<<4)|0,l)|0}f=c[i>>2]|0;j=e+48|0;if((f|0)==(j|0))return;k=e+8|0;l=e+88|0;do{h=f+34|0;g=a[h>>0]|0;if(!(g&2)){g=g&255;if(g&16|0){a[h>>0]=g&239;c[l>>2]=c[f+20>>2]}if((b[f+32>>1]|0)==-1?(m=f+4|0,n=c[k>>2]|0,(c[m>>2]|0)>>>0<n>>>0):0)c[m>>2]=n;h=ig[c[f+16>>2]&63](e,1,c[f+24>>2]|0)|0;vw(e,(c[k>>2]|0)+(0-h<<4)|0,h)|0}else{Rx(e);Sx(e)}f=c[i>>2]|0}while((f|0)!=(j|0));return}function zw(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;f=b+8|0;c[f>>2]=e;d=yx(b,d)|0;c[e>>2]=d;c[e+8>>2]=(a[d+4>>0]|64)&255;c[f>>2]=(c[f>>2]|0)+16;qw(b,-1)}function Aw(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;p=e+16|0;u=c[p>>2]|0;q=e+109|0;r=a[q>>0]|0;s=e+104|0;t=b[s>>1]|0;x=e+88|0;y=c[x>>2]|0;c[x>>2]=i;w=rw(e,f,g)|0;if(!w){c[x>>2]=y;return w|0}v=e+28|0;j=c[v>>2]|0;k=j+h|0;l=e+32|0;i=c[l>>2]|0;a:do if(i|0){m=e+12|0;do{f=c[i>>2]|0;if(f>>>0<k>>>0)break a;g=i+8|0;c[l>>2]=c[g>>2];if(c[i+4>>2]|0){c[g>>2]=c[f>>2];c[g+4>>2]=c[f+4>>2];c[g+8>>2]=c[f+8>>2];c[g+12>>2]=c[f+12>>2];c[i>>2]=g;if((c[i+16>>2]&64|0?(n=c[m>>2]|0,o=c[g>>2]|0,(d[n+61>>0]|0)<2):0)?a[o+5>>0]&3:0)Iw(n,o)}else{g=c[m>>2]|0;jg[c[g>>2]&31](c[g+4>>2]|0,i,24,0)|0;g=g+12|0;c[g>>2]=(i|0?-24:0)+(c[g>>2]|0)}i=c[l>>2]|0}while((i|0)!=0)}while(0);switch(w|0){case 4:{o=c[(c[e+12>>2]|0)+144>>2]|0;c[k>>2]=o;c[j+(h+8)>>2]=(a[o+4>>0]|64)&255;break}case 6:{o=xx(e,279929,23)|0;c[k>>2]=o;c[j+(h+8)>>2]=(a[o+4>>0]|64)&255;break}default:{o=(c[e+8>>2]|0)+-16|0;c[k>>2]=c[o>>2];c[k+4>>2]=c[o+4>>2];c[k+8>>2]=c[o+8>>2];c[k+12>>2]=c[o+12>>2]}}i=j+(h+16)|0;c[e+8>>2]=i;c[p>>2]=u;a[q>>0]=r;b[s>>1]=t;g=u;if(u){f=g;do{u=c[f+4>>2]|0;i=i>>>0<u>>>0?u:i;f=c[f+8>>2]|0}while((f|0)!=0)}m=i-(c[v>>2]|0)|0;l=(m>>4)+1|0;l=((l|0)/8|0)+10+l|0;l=(l|0)<1e6?l:1e6;n=e+92|0;f=g+12|0;i=c[f>>2]|0;b:do if((c[n>>2]|0)>1e6){c[f>>2]=0;if(i|0){f=e+12|0;do{u=i;i=c[i+12>>2]|0;v=c[f>>2]|0;jg[c[v>>2]&31](c[v+4>>2]|0,u,36,0)|0;v=v+12|0;c[v>>2]=(u|0?-36:0)+(c[v>>2]|0)}while((i|0)!=0)}}else if(i|0){k=e+12|0;do{j=g;g=c[i+12>>2]|0;if(!g)break b;v=c[k>>2]|0;jg[c[v>>2]&31](c[v+4>>2]|0,i,36,0)|0;v=v+12|0;c[v>>2]=(i|0?-36:0)+(c[v>>2]|0);c[f>>2]=g;c[g+8>>2]=j;f=g+12|0;i=c[f>>2]|0}while((i|0)!=0)}while(0);if((m|0)>15999984){c[x>>2]=y;return w|0}if((l|0)>=(c[n>>2]|0)){c[x>>2]=y;return w|0}sw(e,l);c[x>>2]=y;return w|0}function Bw(b,e){b=b|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+256|0;r=H+184|0;q=H+176|0;k=H+168|0;C=H+160|0;x=H+152|0;w=H+144|0;v=H+136|0;u=H+128|0;t=H+120|0;j=H+112|0;D=H+240|0;E=H+88|0;G=H;y=H+192|0;f=c[e>>2]|0;s=c[f>>2]|0;c[f>>2]=s+-1;if(!s){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,D)|0;i=c[D>>2]|0;if((g|0)==0|(i|0)==0)f=-1;else{c[f>>2]=i+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}s=f}else{p=f+4|0;s=c[p>>2]|0;c[p>>2]=s+1;s=d[s>>0]|0}f=c[e+52>>2]|0;g=(f|0)==0;if((s|0)!=27){if(!g?(XO(f,116)|0)==0:0){c[k>>2]=298760;c[k+4>>2]=f;Zw(b,280092,k)|0;qw(b,3)}p=c[e>>2]|0;n=e+4|0;o=e+16|0;m=c[e+56>>2]|0;k=b+12|0;i=c[k>>2]|0;f=i+4|0;g=jg[c[i>>2]&31](c[f>>2]|0,0,6,20)|0;if(!g){if(!(c[i+140>>2]|0))qw(b,4);Tw(b,1);f=jg[c[i>>2]&31](c[f>>2]|0,0,6,20)|0;if(!f)qw(b,4);else A=f}else A=g;j=i+12|0;c[j>>2]=(c[j>>2]|0)+20;a[A+5>>0]=a[i+60>>0]&3;a[A+4>>0]=6;j=i+64|0;c[A>>2]=c[j>>2];c[j>>2]=A;j=A+12|0;c[j>>2]=0;a[A+6>>0]=1;c[A+16>>2]=0;x=b+8|0;f=c[x>>2]|0;c[f>>2]=A;c[f+8>>2]=70;f=(c[x>>2]|0)+16|0;c[x>>2]=f;i=b+24|0;do if(((c[i>>2]|0)-f|0)<16){g=c[b+92>>2]|0;if((g|0)>1e6)qw(b,6);C=(f-(c[b+28>>2]|0)>>4)+5|0;f=g<<1;f=(f|0)<1e6?f:1e6;f=(f|0)<(C|0)?C:f;if((f|0)>1e6){sw(b,1000200);mw(b,283421,q)}else{sw(b,f);break}}while(0);C=Dx(b)|0;c[G+64>>2]=C;g=c[x>>2]|0;c[g>>2]=C;c[g+8>>2]=69;g=(c[x>>2]|0)+16|0;c[x>>2]=g;do if(((c[i>>2]|0)-g|0)<16){f=c[b+92>>2]|0;if((f|0)>1e6)qw(b,6);C=(g-(c[b+28>>2]|0)>>4)+5|0;f=f<<1;f=(f|0)<1e6?f:1e6;f=(f|0)<(C|0)?C:f;if((f|0)>1e6){sw(b,1000200);mw(b,283421,r)}else{sw(b,f);break}}while(0);w=Gw(b)|0;c[j>>2]=w;c[y>>2]=w;f=(c[k>>2]|0)+280+(((m>>>0)%127|0)<<2)|0;g=c[f>>2]|0;if(JN(m,g+16|0)|0){g=xx(b,m,WO(m)|0)|0;c[f>>2]=g}u=w+72|0;c[u>>2]=g;v=G+60|0;c[v>>2]=n;t=G+68|0;c[t>>2]=o;c[e+44>>2]=0;c[e+32>>2]=0;c[e+20>>2]=0;e=G+16|0;c[e>>2]=0;a[G+80>>0]=46;k=G+52|0;c[k>>2]=b;c[G>>2]=s;c[G+32>>2]=289;c[G+56>>2]=p;p=G+48|0;c[p>>2]=0;q=G+4|0;c[q>>2]=1;r=G+8|0;c[r>>2]=1;s=G+72|0;c[s>>2]=g;j=G+76|0;c[j>>2]=xx(b,287279,4)|0;k=c[k>>2]|0;m=c[v>>2]|0;f=c[m>>2]|0;m=c[m+8>>2]|0;n=c[k+12>>2]|0;o=(f|0)!=0;g=n+4|0;i=jg[c[n>>2]&31](c[g>>2]|0,f,m,32)|0;if(!i){if(!(c[n+140>>2]|0))qw(k,4);Tw(k,1);f=jg[c[n>>2]&31](c[g>>2]|0,f,m,32)|0;if(!f)qw(k,4);else z=f}else z=i;f=n+12|0;c[f>>2]=(o?32-m|0:32)+(c[f>>2]|0);f=c[v>>2]|0;c[f>>2]=z;c[f+8>>2]=32;c[y+4>>2]=c[p>>2];c[y+8>>2]=G;c[p>>2]=y;c[y+16>>2]=0;c[y+20>>2]=0;c[y+24>>2]=-1;c[y+28>>2]=0;c[y+32>>2]=0;f=y+40|0;c[f>>2]=0;a[f+4>>0]=0;f=c[t>>2]|0;c[y+36>>2]=c[f+4>>2];c[u>>2]=c[s>>2];a[w+8>>0]=2;a[D+14>>0]=0;a[D+12>>0]=0;c[D+4>>2]=c[f+28>>2];c[D+8>>2]=c[f+16>>2];a[D+13>>0]=0;c[D>>2]=0;c[y+12>>2]=D;a[w+7>>0]=1;c[E+16>>2]=-1;c[E+20>>2]=-1;c[E>>2]=8;c[E+8>>2]=0;_w(y,c[j>>2]|0,E)|0;c[r>>2]=c[q>>2];f=G+32|0;if((c[f>>2]|0)==289){f=cC(G,G+24|0)|0;c[e>>2]=f}else{F=G+16|0;c[F>>2]=c[f>>2];c[F+4>>2]=c[f+4>>2];c[F+8>>2]=c[f+8>>2];c[F+12>>2]=c[f+12>>2];c[f>>2]=289;F=174}a:while(1){if((F|0)==174){F=0;f=c[e>>2]|0}switch(f|0){case 277:case 289:case 262:case 261:case 260:break a;default:{}}$w(G);if((f|0)==274){F=177;break}else F=174}if((F|0)==177)f=c[e>>2]|0;if((f|0)!=289)ax(G,289);bx(G);c[x>>2]=(c[x>>2]|0)+-16;G=A;Fw(b,G);l=H;return}if(!g?(XO(f,98)|0)==0:0){c[j>>2]=280134;c[j+4>>2]=f;Zw(b,280092,j)|0;qw(b,3)}q=c[e>>2]|0;g=e+4|0;f=c[e+56>>2]|0;switch(a[f>>0]|0){case 61:case 64:{f=f+1|0;break}case 27:{f=281511;break}default:{}}c[G+12>>2]=f;c[G>>2]=b;r=G+4|0;c[r>>2]=q;c[G+8>>2]=g;m=q+16|0;n=q+8|0;o=q+12|0;p=q+4|0;j=3;k=E;f=c[q>>2]|0;while(1){if(!f){g=ig[c[n>>2]&63](c[m>>2]|0,c[o>>2]|0,D)|0;f=c[D>>2]|0;if((g|0)==0|(f|0)==0){F=19;break}c[q>>2]=f;c[p>>2]=g;i=g}else i=c[p>>2]|0;A=j>>>0>f>>>0;g=A?f:j;PQ(k|0,i|0,g|0)|0;f=(c[q>>2]|0)-g|0;c[q>>2]=f;c[p>>2]=(c[p>>2]|0)+g;if(!A)break;else{j=j-g|0;k=k+g|0}}if((F|0)==19?j|0:0)Hx(G,281525);if(KN(281536,E,3)|0)Hx(G,281540);m=c[r>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=1;k=E;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,D)|0;f=c[D>>2]|0;if((g|0)==0|(f|0)==0){F=29;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;A=j>>>0>f>>>0;g=A?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!A)break;else{j=j-g|0;k=k+g|0}}if((F|0)==29?j|0:0)Hx(G,281525);if((a[E>>0]|0)!=83)Hx(G,281546);m=c[r>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=1;k=E;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,D)|0;f=c[D>>2]|0;if((g|0)==0|(f|0)==0){F=39;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;A=j>>>0>f>>>0;g=A?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!A)break;else{j=j-g|0;k=k+g|0}}if((F|0)==39?j|0:0)Hx(G,281525);if(a[E>>0]|0)Hx(G,281566);m=c[r>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=6;k=E;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,D)|0;f=c[D>>2]|0;if((g|0)==0|(f|0)==0){F=49;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;A=j>>>0>f>>>0;g=A?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!A)break;else{j=j-g|0;k=k+g|0}}if((F|0)==49?j|0:0)Hx(G,281525);if(KN(281585,E,6)|0)Hx(G,281592);m=c[r>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=1;k=E;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,D)|0;f=c[D>>2]|0;if((g|0)==0|(f|0)==0){F=59;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;A=j>>>0>f>>>0;g=A?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!A)break;else{j=j-g|0;k=k+g|0}}if((F|0)==59?j|0:0)Hx(G,281525);if((a[E>>0]|0)!=4){A=c[G>>2]|0;c[t>>2]=281622;Hx(G,Zw(A,281602,t)|0)}m=c[r>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=1;k=E;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,D)|0;f=c[D>>2]|0;if((g|0)==0|(f|0)==0){F=69;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;A=j>>>0>f>>>0;g=A?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!A)break;else{j=j-g|0;k=k+g|0}}if((F|0)==69?j|0:0)Hx(G,281525);if((a[E>>0]|0)!=4){A=c[G>>2]|0;c[u>>2]=281626;Hx(G,Zw(A,281602,u)|0)}m=c[r>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=1;k=E;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,D)|0;f=c[D>>2]|0;if((g|0)==0|(f|0)==0){F=79;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;A=j>>>0>f>>>0;g=A?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!A)break;else{j=j-g|0;k=k+g|0}}if((F|0)==79?j|0:0)Hx(G,281525);if((a[E>>0]|0)!=4){A=c[G>>2]|0;c[v>>2]=281633;Hx(G,Zw(A,281602,v)|0)}m=c[r>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=1;k=E;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,D)|0;f=c[D>>2]|0;if((g|0)==0|(f|0)==0){F=89;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;A=j>>>0>f>>>0;g=A?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!A)break;else{j=j-g|0;k=k+g|0}}if((F|0)==89?j|0:0)Hx(G,281525);if((a[E>>0]|0)!=8){A=c[G>>2]|0;c[w>>2]=281645;Hx(G,Zw(A,281602,w)|0)}m=c[r>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=1;k=E;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,D)|0;f=c[D>>2]|0;if((g|0)==0|(f|0)==0){F=99;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;A=j>>>0>f>>>0;g=A?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!A)break;else{j=j-g|0;k=k+g|0}}if((F|0)==99?j|0:0)Hx(G,281525);if((a[E>>0]|0)!=8){A=c[G>>2]|0;c[x>>2]=281657;Hx(G,Zw(A,281602,x)|0)}m=c[r>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=8;k=E;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,D)|0;f=c[D>>2]|0;if((g|0)==0|(f|0)==0){F=109;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;A=j>>>0>f>>>0;g=A?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!A)break;else{j=j-g|0;k=k+g|0}}if((F|0)==109?j|0:0)Hx(G,281525);A=E;if(!((c[A>>2]|0)==22136&(c[A+4>>2]|0)==0))Hx(G,281668);m=c[r>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=8;k=E;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,D)|0;f=c[D>>2]|0;if((g|0)==0|(f|0)==0){F=119;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;A=j>>>0>f>>>0;g=A?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!A)break;else{j=j-g|0;k=k+g|0}}if((F|0)==119?j|0:0)Hx(G,281525);if(+h[E>>3]!=370.5)Hx(G,281691);m=c[r>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=1;k=E;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,D)|0;f=c[D>>2]|0;if((g|0)==0|(f|0)==0){F=129;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;A=j>>>0>f>>>0;g=A?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!A)break;else{j=j-g|0;k=k+g|0}}if((F|0)==129?j|0:0)Hx(G,281525);m=a[E>>0]|0;f=m&255;j=(f<<2)+16|0;k=c[b+12>>2]|0;g=k+4|0;i=jg[c[k>>2]&31](c[g>>2]|0,0,6,j)|0;if(!i){if(!(c[k+140>>2]|0))qw(b,4);Tw(b,1);g=jg[c[k>>2]&31](c[g>>2]|0,0,6,j)|0;if(!g)qw(b,4);else B=g}else B=i;i=k+12|0;c[i>>2]=j+(c[i>>2]|0);a[B+5>>0]=a[k+60>>0]&3;a[B+4>>0]=6;i=k+64|0;c[B>>2]=c[i>>2];c[i>>2]=B;i=B+12|0;c[i>>2]=0;a[B+6>>0]=m;if(m<<24>>24){g=B+16|0;do{f=f+-1|0;c[g+(f<<2)>>2]=0}while((f|0)!=0)}F=b+8|0;f=c[F>>2]|0;c[f>>2]=B;c[f+8>>2]=70;f=(c[F>>2]|0)+16|0;c[F>>2]=f;do if(((c[b+24>>2]|0)-f|0)<16){g=c[b+92>>2]|0;if((g|0)>1e6)qw(b,6);F=(f-(c[b+28>>2]|0)>>4)+5|0;f=g<<1;f=(f|0)<1e6?f:1e6;f=(f|0)<(F|0)?F:f;if((f|0)>1e6){sw(b,1000200);mw(b,283421,C)}else{sw(b,f);break}}while(0);F=Gw(b)|0;c[i>>2]=F;Ix(G,F,0);G=B;Fw(b,G);l=H;return}function Cw(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+16|0;r=s;q=e+12|0;if((c[q>>2]|0)==0?(f=c[b+72>>2]|0,(f|0)!=(d|0)):0){Dw(f,e);f=e+16|0;d=f;f=c[f>>2]|0}else{a[r>>0]=0;d=e+16|0;f=c[d>>2]|0;if(!f){f=jg[c[e+4>>2]&31](c[e>>2]|0,r,1,c[e+8>>2]|0)|0;c[d>>2]=f}}c[r>>2]=c[b+36>>2];if(!f){f=jg[c[e+4>>2]&31](c[e>>2]|0,r,4,c[e+8>>2]|0)|0;c[d>>2]=f}c[r>>2]=c[b+40>>2];if(!f){f=jg[c[e+4>>2]&31](c[e>>2]|0,r,4,c[e+8>>2]|0)|0;c[d>>2]=f}a[r>>0]=a[b+6>>0]|0;if(!f){f=jg[c[e+4>>2]&31](c[e>>2]|0,r,1,c[e+8>>2]|0)|0;c[d>>2]=f}a[r>>0]=a[b+7>>0]|0;if(!f){f=jg[c[e+4>>2]&31](c[e>>2]|0,r,1,c[e+8>>2]|0)|0;c[d>>2]=f}a[r>>0]=a[b+8>>0]|0;if(!f){f=jg[c[e+4>>2]&31](c[e>>2]|0,r,1,c[e+8>>2]|0)|0;c[d>>2]=f}g=b+20|0;c[r>>2]=c[g>>2];if(!f){i=e+4|0;j=e+8|0;f=jg[c[i>>2]&31](c[e>>2]|0,r,4,c[j>>2]|0)|0;c[d>>2]=f;if(!f){f=jg[c[i>>2]&31](c[e>>2]|0,c[b+48>>2]|0,c[g>>2]<<2,c[j>>2]|0)|0;c[d>>2]=f;g=c[b+16>>2]|0;c[r>>2]=g;if(!f){f=jg[c[i>>2]&31](c[e>>2]|0,r,4,c[j>>2]|0)|0;c[d>>2]=f}}else k=20}else k=20;if((k|0)==20){g=c[b+16>>2]|0;c[r>>2]=g}a:do if((g|0)>0){n=b+44|0;o=e+4|0;p=e+8|0;m=0;while(1){i=c[n>>2]|0;k=i+(m<<4)|0;i=i+(m<<4)+8|0;j=c[i>>2]|0;a[r>>0]=j&63;if(!f){f=jg[c[o>>2]&31](c[e>>2]|0,r,1,c[p>>2]|0)|0;c[d>>2]=f;j=c[i>>2]|0}switch(j&63){case 4:case 20:{Dw(c[k>>2]|0,e);f=c[d>>2]|0;break}case 1:{a[r>>0]=c[k>>2];if(!f){f=jg[c[o>>2]&31](c[e>>2]|0,r,1,c[p>>2]|0)|0;c[d>>2]=f}break}case 3:{h[r>>3]=+h[k>>3];if(!f){f=jg[c[o>>2]&31](c[e>>2]|0,r,8,c[p>>2]|0)|0;c[d>>2]=f}break}case 19:{i=k;j=c[i+4>>2]|0;k=r;c[k>>2]=c[i>>2];c[k+4>>2]=j;if(!f){f=jg[c[o>>2]&31](c[e>>2]|0,r,8,c[p>>2]|0)|0;c[d>>2]=f}break}default:{}}m=m+1|0;if((m|0)==(g|0))break a}}while(0);o=b+12|0;n=c[o>>2]|0;c[r>>2]=n;if(!f){f=jg[c[e+4>>2]&31](c[e>>2]|0,r,4,c[e+8>>2]|0)|0;c[d>>2]=f}if((n|0)>0){j=b+64|0;k=e+4|0;m=e+8|0;i=0;do{g=c[j>>2]|0;a[r>>0]=a[g+(i<<3)+4>>0]|0;if(!f){f=jg[c[k>>2]&31](c[e>>2]|0,r,1,c[m>>2]|0)|0;c[d>>2]=f;g=c[j>>2]|0}a[r>>0]=a[g+(i<<3)+5>>0]|0;if(!f){f=jg[c[k>>2]&31](c[e>>2]|0,r,1,c[m>>2]|0)|0;c[d>>2]=f}i=i+1|0}while((i|0)!=(n|0))}j=c[b+28>>2]|0;c[r>>2]=j;if(!f)c[d>>2]=jg[c[e+4>>2]&31](c[e>>2]|0,r,4,c[e+8>>2]|0)|0;if((j|0)>0){f=b+52|0;g=b+72|0;i=0;do{Cw(c[(c[f>>2]|0)+(i<<2)>>2]|0,c[g>>2]|0,e);i=i+1|0}while((i|0)!=(j|0))}if(!(c[q>>2]|0))j=c[b+24>>2]|0;else j=0;c[r>>2]=j;f=c[d>>2]|0;if(!f){g=e+4|0;i=e+8|0;f=jg[c[g>>2]&31](c[e>>2]|0,r,4,c[i>>2]|0)|0;c[d>>2]=f;if(!f){f=jg[c[g>>2]&31](c[e>>2]|0,c[b+56>>2]|0,j<<2,c[i>>2]|0)|0;c[d>>2]=f}}if(!(c[q>>2]|0))n=c[b+32>>2]|0;else n=0;c[r>>2]=n;if(!f){f=jg[c[e+4>>2]&31](c[e>>2]|0,r,4,c[e+8>>2]|0)|0;c[d>>2]=f}if((n|0)>0){i=b+60|0;j=e+4|0;k=e+8|0;m=0;do{Dw(c[(c[i>>2]|0)+(m*12|0)>>2]|0,e);g=c[i>>2]|0;c[r>>2]=c[g+(m*12|0)+4>>2];f=c[d>>2]|0;if(!f){f=jg[c[j>>2]&31](c[e>>2]|0,r,4,c[k>>2]|0)|0;c[d>>2]=f;g=c[i>>2]|0}c[r>>2]=c[g+(m*12|0)+8>>2];if(!f){f=jg[c[j>>2]&31](c[e>>2]|0,r,4,c[k>>2]|0)|0;c[d>>2]=f}m=m+1|0}while((m|0)!=(n|0))}if(!(c[q>>2]|0))g=c[o>>2]|0;else g=0;c[r>>2]=g;if(!f)c[d>>2]=jg[c[e+4>>2]&31](c[e>>2]|0,r,4,c[e+8>>2]|0)|0;if((g|0)<=0){l=s;return}f=b+64|0;d=0;do{Dw(c[(c[f>>2]|0)+(d<<3)>>2]|0,e);d=d+1|0}while((d|0)!=(g|0));l=s;return}function Dw(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;i=k+4|0;j=k;if(!b){a[i>>0]=0;f=e+16|0;if(!(c[f>>2]|0))c[f>>2]=jg[c[e+4>>2]&31](c[e>>2]|0,i,1,c[e+8>>2]|0)|0;l=k;return}if((a[b+4>>0]|0)==4)f=d[b+7>>0]|0;else f=c[b+12>>2]|0;f=f+1|0;c[j>>2]=f;h=b+16|0;do if(f>>>0>=255){a[i>>0]=-1;b=e+16|0;if(c[b>>2]|0){l=k;return}f=e+4|0;g=e+8|0;i=jg[c[f>>2]&31](c[e>>2]|0,i,1,c[g>>2]|0)|0;c[b>>2]=i;if(!i){f=jg[c[f>>2]&31](c[e>>2]|0,j,4,c[g>>2]|0)|0;c[b>>2]=f;break}else{l=k;return}}else{a[i>>0]=f;b=e+16|0;f=c[b>>2]|0;if(!f){f=jg[c[e+4>>2]&31](c[e>>2]|0,i,1,c[e+8>>2]|0)|0;c[b>>2]=f}}while(0);if(f|0){l=k;return}c[b>>2]=jg[c[e+4>>2]&31](c[e>>2]|0,h,(c[j>>2]|0)+-1|0,c[e+8>>2]|0)|0;l=k;return}function Ew(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=(d<<4)+16|0;h=c[b+12>>2]|0;e=h+4|0;f=jg[c[h>>2]&31](c[e>>2]|0,0,6,g)|0;if((g|0)!=0&(f|0)==0){if(!(c[h+140>>2]|0))qw(b,4);Tw(b,1);e=jg[c[h>>2]&31](c[e>>2]|0,0,6,g)|0;if(!e)qw(b,4);else i=e}else i=f;b=h+12|0;c[b>>2]=g+(c[b>>2]|0);a[i+5>>0]=a[h+60>>0]&3;a[i+4>>0]=38;b=h+64|0;c[i>>2]=c[b>>2];c[b>>2]=i;a[i+6>>0]=d;return i|0}function Fw(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0;h=e+6|0;if(!(a[h>>0]|0))return;i=b+12|0;k=0;while(1){j=c[i>>2]|0;g=j+4|0;f=jg[c[j>>2]&31](c[g>>2]|0,0,0,24)|0;if(!f){if(!(c[j+140>>2]|0)){f=6;break}Tw(b,1);f=jg[c[j>>2]&31](c[g>>2]|0,0,0,24)|0;if(!f){f=6;break}}j=j+12|0;c[j>>2]=(c[j>>2]|0)+24;c[f+4>>2]=1;c[f>>2]=f+8;c[f+16>>2]=0;c[e+16+(k<<2)>>2]=f;k=k+1|0;if((k|0)>=(d[h>>0]|0)){f=8;break}}if((f|0)==6)qw(b,4);else if((f|0)==8)return}function Gw(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[b+12>>2]|0;d=f+4|0;e=jg[c[f>>2]&31](c[d>>2]|0,0,9,80)|0;if(!e){if(!(c[f+140>>2]|0))qw(b,4);Tw(b,1);d=jg[c[f>>2]&31](c[d>>2]|0,0,9,80)|0;if(!d)qw(b,4);else g=d}else g=e;d=f+12|0;c[d>>2]=(c[d>>2]|0)+80;a[g+5>>0]=a[f+60>>0]&3;a[g+4>>0]=9;d=f+64|0;c[g>>2]=c[d>>2];c[d>>2]=g;a[g+6>>0]=0;a[g+7>>0]=0;a[g+8>>0]=0;d=g+12|0;e=d+64|0;do{c[d>>2]=0;d=d+4|0}while((d|0)<(e|0));return g|0}function Hw(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=c[b+48>>2]|0;e=c[b+20>>2]<<2;a=a+12|0;f=c[a>>2]|0;jg[c[f>>2]&31](c[f+4>>2]|0,d,e,0)|0;f=f+12|0;c[f>>2]=(d|0?0-e|0:0)+(c[f>>2]|0);f=c[b+52>>2]|0;e=c[b+28>>2]<<2;d=c[a>>2]|0;jg[c[d>>2]&31](c[d+4>>2]|0,f,e,0)|0;d=d+12|0;c[d>>2]=(f|0?0-e|0:0)+(c[d>>2]|0);d=c[b+44>>2]|0;e=c[b+16>>2]<<4;f=c[a>>2]|0;jg[c[f>>2]&31](c[f+4>>2]|0,d,e,0)|0;f=f+12|0;c[f>>2]=(d|0?0-e|0:0)+(c[f>>2]|0);f=c[b+56>>2]|0;e=c[b+24>>2]<<2;d=c[a>>2]|0;jg[c[d>>2]&31](c[d+4>>2]|0,f,e,0)|0;d=d+12|0;c[d>>2]=(f|0?0-e|0:0)+(c[d>>2]|0);d=c[b+60>>2]|0;e=(c[b+32>>2]|0)*12|0;f=c[a>>2]|0;jg[c[f>>2]&31](c[f+4>>2]|0,d,e,0)|0;f=f+12|0;c[f>>2]=(d|0?0-e|0:0)+(c[f>>2]|0);f=c[b+64>>2]|0;e=c[b+12>>2]<<3;d=c[a>>2]|0;jg[c[d>>2]&31](c[d+4>>2]|0,f,e,0)|0;d=d+12|0;c[d>>2]=(f|0?0-e|0:0)+(c[d>>2]|0);a=c[a>>2]|0;jg[c[a>>2]&31](c[a+4>>2]|0,b,80,0)|0;a=a+12|0;c[a>>2]=(b|0?-80:0)+(c[a>>2]|0);return}function Iw(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0;i=b+16|0;h=e;f=a[e+5>>0]|0;a:while(1){g=h+5|0;e=f&-4;a[g>>0]=e;switch(a[h+4>>0]|0){case 4:{f=3;break a}case 20:{f=4;break a}case 6:{f=10;break a}case 38:{f=11;break a}case 5:{f=12;break a}case 8:{f=13;break a}case 9:{f=14;break a}case 7:break;default:{f=15;break a}}f=c[h+8>>2]|0;if((f|0)!=0?(a[f+5>>0]&3)!=0:0){Iw(b,f);e=a[g>>0]|0}a[g>>0]=e|4;c[i>>2]=(c[h+12>>2]|0)+24+(c[i>>2]|0);e=c[h+16>>2]|0;if(!(a[h+6>>0]&64)){f=15;break}f=a[e+5>>0]|0;if(!(f&3)){f=15;break}else h=e}if((f|0)==3){a[g>>0]=e|4;c[i>>2]=(d[h+7>>0]|0)+17+(c[i>>2]|0);return}else if((f|0)==4){a[g>>0]=e|4;c[i>>2]=(c[h+12>>2]|0)+17+(c[i>>2]|0);return}else if((f|0)==10){b=b+76|0;c[h+8>>2]=c[b>>2];c[b>>2]=h;return}else if((f|0)==11){b=b+76|0;c[h+8>>2]=c[b>>2];c[b>>2]=h;return}else if((f|0)==12){b=b+76|0;c[h+28>>2]=c[b>>2];c[b>>2]=h;return}else if((f|0)==13){b=b+76|0;c[h+36>>2]=c[b>>2];c[b>>2]=h;return}else if((f|0)==14){b=b+76|0;c[h+76>>2]=c[b>>2];c[b>>2]=h;return}else if((f|0)==15)return}function Jw(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=c[b+12>>2]|0;p=e+5|0;i=a[p>>0]|0;if((f|0)==0|(i&8)!=0)return;j=f+6|0;k=a[j>>0]|0;if(k&4)return;h=c[o+156>>2]|0;f=(c[f+16>>2]|0)+(((1<<(d[f+7>>0]|0))+-1&c[h+8>>2])<<5)|0;while(1){if((c[f+24>>2]|0)==68?(c[f+16>>2]|0)==(h|0):0){l=6;break}g=c[f+28>>2]|0;if(!g){f=316344;break}f=f+(g<<5)|0}if(!(c[f+8>>2]|0)){a[j>>0]=k|4;return}if(!f)return;if(((a[o+61>>0]|0)+-2&255)<4?(a[p>>0]=a[o+60>>0]&3|i&-8,m=o+68|0,n=c[m>>2]|0,(n|0)==(e|0)):0){do f=Kw(b,n,1)|0;while((f|0)==(n|0));c[m>>2]=f}g=o+64|0;while(1){f=c[g>>2]|0;if((f|0)==(e|0))break;else g=f}c[g>>2]=c[e>>2];o=o+72|0;c[e>>2]=c[o>>2];c[o>>2]=e;a[p>>0]=a[p>>0]|8;return}function Kw(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;p=b+12|0;t=d[(c[p>>2]|0)+60>>0]|0;s=t^3;t=t&3;h=c[e>>2]|0;g=(h|0)==0;if(!((f|0)!=0&(g^1))){b=e;t=g;b=t?0:b;return b|0}o=f+-1|0;while(1){g=h+5|0;f=d[g>>0]|0;a:do if(!((f^3)&s)){c[e>>2]=c[h>>2];switch(a[h+4>>0]|0){case 9:{Hw(b,h);break a}case 6:{j=h+6|0;g=a[j>>0]|0;if(!(g<<24>>24))g=g&255;else{i=0;while(1){f=c[h+16+(i<<2)>>2]|0;if(((f|0)!=0?(m=f+4|0,n=(c[m>>2]|0)+-1|0,c[m>>2]=n,(n|0)==0):0)?(c[f>>2]|0)==(f+8|0):0){n=c[p>>2]|0;jg[c[n>>2]&31](c[n+4>>2]|0,f,24,0)|0;f=n+12|0;c[f>>2]=(c[f>>2]|0)+-24;f=a[j>>0]|0}else f=g;i=i+1|0;g=f&255;if((i|0)>=(g|0))break;else g=f}}m=g<<2;n=c[p>>2]|0;jg[c[n>>2]&31](c[n+4>>2]|0,h,m+16|0,0)|0;n=n+12|0;c[n>>2]=(h|0?-16-m|0:0)+(c[n>>2]|0);break a}case 38:{m=d[h+6>>0]<<4;n=c[p>>2]|0;jg[c[n>>2]&31](c[n+4>>2]|0,h,m+16|0,0)|0;n=n+12|0;c[n>>2]=(h|0?-16-m|0:0)+(c[n>>2]|0);break a}case 5:{g=c[h+16>>2]|0;if((g|0)!=316360){m=32<<d[h+7>>0];n=c[p>>2]|0;jg[c[n>>2]&31](c[n+4>>2]|0,g,m,0)|0;n=n+12|0;c[n>>2]=(g|0?0-m|0:0)+(c[n>>2]|0)}l=c[h+12>>2]|0;m=c[h+8>>2]<<4;n=c[p>>2]|0;jg[c[n>>2]&31](c[n+4>>2]|0,l,m,0)|0;n=n+12|0;c[n>>2]=(l|0?0-m|0:0)+(c[n>>2]|0);n=c[p>>2]|0;jg[c[n>>2]&31](c[n+4>>2]|0,h,32,0)|0;n=n+12|0;c[n>>2]=(h|0?-32:0)+(c[n>>2]|0);break a}case 8:{n=h+-4|0;m=h+28|0;g=c[m>>2]|0;k=h+32|0;f=c[k>>2]|0;if(f){l=h+12|0;do{i=c[f>>2]|0;if(i>>>0<g>>>0)break;j=f+8|0;c[k>>2]=c[j>>2];if(c[f+4>>2]|0){c[j>>2]=c[i>>2];c[j+4>>2]=c[i+4>>2];c[j+8>>2]=c[i+8>>2];c[j+12>>2]=c[i+12>>2];c[f>>2]=j;if((c[f+16>>2]&64|0?(q=c[l>>2]|0,r=c[j>>2]|0,(d[q+61>>0]|0)<2):0)?a[r+5>>0]&3:0)Iw(q,r)}else{j=c[l>>2]|0;jg[c[j>>2]&31](c[j+4>>2]|0,f,24,0)|0;j=j+12|0;c[j>>2]=(f|0?-24:0)+(c[j>>2]|0)}f=c[k>>2]|0}while((f|0)!=0);g=c[m>>2]|0}if(g|0){c[h+16>>2]=h+48;l=h+60|0;i=c[l>>2]|0;c[l>>2]=0;if(!i)f=h+12|0;else{f=h+12|0;g=i;do{k=g;g=c[g+12>>2]|0;l=c[f>>2]|0;jg[c[l>>2]&31](c[l+4>>2]|0,k,36,0)|0;l=l+12|0;c[l>>2]=(k|0?-36:0)+(c[l>>2]|0)}while((g|0)!=0);g=c[m>>2]|0}l=c[h+92>>2]<<4;m=c[f>>2]|0;jg[c[m>>2]&31](c[m+4>>2]|0,g,l,0)|0;m=m+12|0;c[m>>2]=(g|0?0-l|0:0)+(c[m>>2]|0)}m=c[p>>2]|0;jg[c[m>>2]&31](c[m+4>>2]|0,n,116,0)|0;n=m+12|0;c[n>>2]=(c[n>>2]|0)+-116;break a}case 7:{m=c[h+12>>2]|0;n=c[p>>2]|0;jg[c[n>>2]&31](c[n+4>>2]|0,h,m+24|0,0)|0;n=n+12|0;c[n>>2]=(h|0?-24-m|0:0)+(c[n>>2]|0);break a}case 4:{i=c[p>>2]|0;g=(c[i+24>>2]|0)+(((c[i+32>>2]|0)+-1&c[h+8>>2])<<2)|0;f=c[g>>2]|0;if((f|0)!=(h|0))do{g=f+12|0;f=c[g>>2]|0}while((f|0)!=(h|0));c[g>>2]=c[h+12>>2];m=i+28|0;c[m>>2]=(c[m>>2]|0)+-1;m=d[h+7>>0]|0;n=c[p>>2]|0;jg[c[n>>2]&31](c[n+4>>2]|0,h,m+17|0,0)|0;n=n+12|0;c[n>>2]=(h|0?-17-m|0:0)+(c[n>>2]|0);break a}case 20:{m=c[h+12>>2]|0;n=c[p>>2]|0;jg[c[n>>2]&31](c[n+4>>2]|0,h,m+17|0,0)|0;n=n+12|0;c[n>>2]=(h|0?-17-m|0:0)+(c[n>>2]|0);break a}default:break a}}else{a[g>>0]=f&248|t;e=h}while(0);h=c[e>>2]|0;g=(h|0)==0;f=g^1;if(!((o|0)!=0&f))break;else o=(f<<31>>31)+o|0}b=g?0:e;return b|0}function Lw(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;m=l;l=l+16|0;n=m;k=c[b+12>>2]|0;f=k+96|0;h=c[f>>2]|0;c[f>>2]=c[h>>2];f=k+64|0;c[h>>2]=c[f>>2];c[f>>2]=h;f=h+5|0;g=d[f>>0]|0;a[f>>0]=g&247;if(((a[k+61>>0]|0)+-2&255)<4)a[f>>0]=a[k+60>>0]&3|g&240;i=h;g=a[h+4>>0]|0;j=(g|64)&255;switch(g&15){case 5:{f=h+24|0;break}case 7:{f=h+8|0;break}default:f=k+244+((j&15)<<2)|0}f=c[f>>2]|0;a:do if(!f)f=316344;else{h=c[k+156>>2]|0;f=(c[f+16>>2]|0)+(((1<<(d[f+7>>0]|0))+-1&c[h+8>>2])<<5)|0;while(1){if((c[f+24>>2]|0)==68?(c[f+16>>2]|0)==(h|0):0)break;g=c[f+28>>2]|0;if(!g){f=316344;break a}f=f+(g<<5)|0}}while(0);if((c[f+8>>2]&15|0)!=6){l=m;return}o=b+109|0;p=a[o>>0]|0;k=k+63|0;h=a[k>>0]|0;a[o>>0]=0;a[k>>0]=0;g=b+8|0;q=c[g>>2]|0;c[q>>2]=c[f>>2];c[q+4>>2]=c[f+4>>2];c[q+8>>2]=c[f+8>>2];c[q+12>>2]=c[f+12>>2];f=c[g>>2]|0;c[f+16>>2]=i;c[f+24>>2]=j;f=c[g>>2]|0;c[g>>2]=f+32;f=Aw(b,164,0,f-(c[b+28>>2]|0)|0,0)|0;a[o>>0]=p;a[k>>0]=h;if(!((e|0)!=0&(f|0)!=0)){l=m;return}if((f|0)!=2){q=f;qw(b,q)}f=c[g>>2]|0;if((c[f+-8>>2]&15|0)==4)f=(c[f+-16>>2]|0)+16|0;else f=280141;c[n>>2]=f;Zw(b,280152,n)|0;q=5;qw(b,q)}function Mw(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;e=h;f=(c[a+8>>2]|0)+-32|0;g=a+106|0;d=(b[g>>1]|0)+1<<16>>16;b[g>>1]=d;if((d&65535)>199){if(d<<16>>16==200)mw(a,279953,e);if((d&65535)>224)qw(a,6)}d=a+104|0;b[d>>1]=(b[d>>1]|0)+1<<16>>16;if(!(uw(a,f,0)|0))Sx(a);b[d>>1]=(b[d>>1]|0)+-1<<16>>16;b[g>>1]=(b[g>>1]|0)+-1<<16>>16;l=h;return}function Nw(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;v=b+12|0;w=c[v>>2]|0;j=w+61|0;switch(a[j>>0]|0){case 7:{e=w+16|0;c[e>>2]=c[w+32>>2]<<2;d=w+76|0;c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=0;c[d+12>>2]=0;c[d+16>>2]=0;d=c[w+136>>2]|0;if(a[d+5>>0]&3)Iw(w,d);if(c[w+48>>2]&64|0?(f=c[w+40>>2]|0,a[f+5>>0]&3):0)Iw(w,f);Ow(w);d=c[w+96>>2]|0;if(d|0)do{if(a[d+5>>0]&3)Iw(w,d);d=c[d>>2]|0}while((d|0)!=0);a[j>>0]=0;w=c[e>>2]|0;return w|0}case 0:{d=w+16|0;c[d>>2]=0;Pw(w);if(!(c[w+76>>2]|0))a[j>>0]=1;w=c[d>>2]|0;return w|0}case 1:{d=w+76|0;if(!(c[d>>2]|0))r=w;else{do Pw(w);while((c[d>>2]|0)!=0);r=c[v>>2]|0}h=c[r+80>>2]|0;a[r+61>>0]=8;s=r+16|0;c[s>>2]=0;if(a[b+5>>0]&3)Iw(r,b);if(c[r+48>>2]&64|0?(e=c[r+40>>2]|0,a[e+5>>0]&3):0)Iw(r,e);Ow(r);e=r+104|0;d=c[e>>2]|0;a:do if(d|0)do{while(1){f=d+32|0;if((a[d+5>>0]&7)==0?c[f>>2]|0:0)break;o=d+40|0;c[e>>2]=c[o>>2];c[o>>2]=d;d=c[f>>2]|0;if(d|0)do{f=d+8|0;g=f+4|0;if(c[g>>2]|0){d=c[d>>2]|0;if(c[d+8>>2]&64|0?(i=c[d>>2]|0,a[i+5>>0]&3):0)Iw(r,i);c[g>>2]=0}d=c[f>>2]|0}while((d|0)!=0);d=c[e>>2]|0;if(!d)break a}e=d+40|0;d=c[e>>2]|0}while((d|0)!=0);while(0);j=r+76|0;if(c[j>>2]|0)do Pw(r);while((c[j>>2]|0)!=0);f=c[s>>2]|0;c[j>>2]=h;if(h|0)do Pw(r);while((c[j>>2]|0)!=0);c[s>>2]=0;i=r+88|0;while(1){d=c[i>>2]|0;c[i>>2]=0;e=0;b:while(1){do{if(!d)break b;o=d;d=c[d+28>>2]|0}while(!(Qw(r,o)|0));if(!(c[j>>2]|0)){e=1;continue}while(1){Pw(r);if(!(c[j>>2]|0)){e=1;continue b}}}if(!e)break}k=r+84|0;Rw(r,c[k>>2]|0,0);l=r+92|0;Rw(r,c[l>>2]|0,0);m=c[k>>2]|0;n=c[l>>2]|0;d=c[s>>2]|0;h=r+96|0;g=h;while(1){e=c[g>>2]|0;if(!e)break;else g=e}o=d+f|0;f=r+72|0;d=c[f>>2]|0;c:do if(d|0){e=g;while(1){g=d;while(1){if(!(a[g+5>>0]&3))break;c[f>>2]=c[g>>2];c[g>>2]=c[e>>2];c[e>>2]=g;d=c[f>>2]|0;if(!d)break c;else{e=g;g=d}}d=c[g>>2]|0;if(!d)break;else f=g}}while(0);c[r+120>>2]=1;d=c[h>>2]|0;if(d|0)do{if(a[d+5>>0]&3)Iw(r,d);d=c[d>>2]|0}while((d|0)!=0);if(c[j>>2]|0)do Pw(r);while((c[j>>2]|0)!=0);c[s>>2]=0;while(1){d=c[i>>2]|0;c[i>>2]=0;e=0;d:while(1){do{if(!d)break d;h=d;d=c[d+28>>2]|0}while(!(Qw(r,h)|0));if(!(c[j>>2]|0)){e=1;continue}while(1){Pw(r);if(!(c[j>>2]|0)){e=1;continue d}}}if(!e)break}d=c[i>>2]|0;if(d|0)do{j=a[d+7>>0]|0;e=c[d+16>>2]|0;i=e+(1<<(j&255)<<5)|0;if(j<<24>>24!=31)do{f=e+8|0;do if(c[f>>2]|0?(p=e+24|0,q=c[p>>2]|0,q&64|0):0){g=c[e+16>>2]|0;h=(a[g+5>>0]&3)==0;if((q&15|0)==4){if(h)break;Iw(r,g);break}else{if(h)break;c[f>>2]=0;c[p>>2]=10;break}}while(0);e=e+32|0}while(e>>>0<i>>>0);d=c[d+28>>2]|0}while((d|0)!=0);d=c[l>>2]|0;if(d|0)do{q=a[d+7>>0]|0;e=c[d+16>>2]|0;i=e+(1<<(q&255)<<5)|0;if(q<<24>>24!=31)do{f=e+8|0;do if(c[f>>2]|0?(t=e+24|0,u=c[t>>2]|0,u&64|0):0){g=c[e+16>>2]|0;h=(a[g+5>>0]&3)==0;if((u&15|0)==4){if(h)break;Iw(r,g);break}else{if(h)break;c[f>>2]=0;c[t>>2]=10;break}}while(0);e=e+32|0}while(e>>>0<i>>>0);d=c[d+28>>2]|0}while((d|0)!=0);Rw(r,c[k>>2]|0,m);Rw(r,c[l>>2]|0,n);d=r+144|0;f=0;do{e=r+280+(f<<2)|0;if(a[(c[e>>2]|0)+5>>0]&3)c[e>>2]=c[d>>2];f=f+1|0}while((f|0)!=127);h=r+60|0;a[h>>0]=a[h>>0]^3;h=c[s>>2]|0;d=c[v>>2]|0;a[d+61>>0]=2;e=d+64|0;g=0;do{g=g+1|0;f=Kw(b,e,1)|0}while((f|0)==(e|0));c[d+68>>2]=f;c[w+20>>2]=(c[w+12>>2]|0)+(c[w+8>>2]|0);w=o+h+(g*5|0)|0;return w|0}case 2:{d=w+72|0;e=w+68|0;f=c[e>>2]|0;if(f|0?(u=w+12|0,v=c[u>>2]|0,b=Kw(b,f,80)|0,c[e>>2]=b,w=w+20|0,c[w>>2]=(c[u>>2]|0)-v+(c[w>>2]|0),b|0):0){w=400;return w|0}a[j>>0]=3;c[e>>2]=d;w=0;return w|0}case 3:{d=w+96|0;e=w+68|0;f=c[e>>2]|0;if(f|0?(u=w+12|0,v=c[u>>2]|0,b=Kw(b,f,80)|0,c[e>>2]=b,w=w+20|0,c[w>>2]=(c[u>>2]|0)-v+(c[w>>2]|0),b|0):0){w=400;return w|0}a[j>>0]=4;c[e>>2]=d;w=0;return w|0}case 4:{d=w+68|0;e=c[d>>2]|0;if(e|0?(u=w+12|0,v=c[u>>2]|0,b=Kw(b,e,80)|0,c[d>>2]=b,w=w+20|0,c[w>>2]=(c[u>>2]|0)-v+(c[w>>2]|0),b|0):0){w=400;return w|0}a[j>>0]=5;c[d>>2]=0;w=0;return w|0}case 5:{v=(c[w+136>>2]|0)+5|0;a[v>>0]=a[w+60>>0]&3|a[v>>0]&-8;if((a[w+62>>0]|0)!=1){e=w+12|0;g=c[e>>2]|0;v=w+108|0;t=c[v>>2]|0;f=w+116|0;d=c[f>>2]|0;u=jg[c[w>>2]&31](c[w+4>>2]|0,t,d,0)|0;d=(t|0?0-d|0:0)+(c[e>>2]|0)|0;c[e>>2]=d;c[v>>2]=u;c[f>>2]=0;f=c[w+32>>2]|0;if((c[w+28>>2]|0)<((f|0)/4|0|0)){wx(b,(f|0)/2|0);d=c[e>>2]|0}w=w+20|0;c[w>>2]=d-g+(c[w>>2]|0)}a[j>>0]=6;w=0;return w|0}case 6:{f=w+96|0;if(c[f>>2]|0?(a[w+62>>0]|0)!=1:0){g=w+120|0;d=0;while(1){e=c[g>>2]|0;if(d>>>0>=e>>>0){h=117;break}Lw(b,1);d=d+1|0;if(!(c[f>>2]|0)){e=0;break}}if((h|0)==117)e=e<<1;c[g>>2]=e;w=d*5|0;return w|0}a[j>>0]=7;w=0;return w|0}default:{w=0;return w|0}}return 0}function Ow(b){b=b|0;var d=0;d=c[b+244>>2]|0;if(d|0?a[d+5>>0]&3:0)Iw(b,d);d=c[b+248>>2]|0;if(d|0?a[d+5>>0]&3:0)Iw(b,d);d=c[b+252>>2]|0;if(d|0?a[d+5>>0]&3:0)Iw(b,d);d=c[b+256>>2]|0;if(d|0?a[d+5>>0]&3:0)Iw(b,d);d=c[b+260>>2]|0;if(d|0?a[d+5>>0]&3:0)Iw(b,d);d=c[b+264>>2]|0;if(d|0?a[d+5>>0]&3:0)Iw(b,d);d=c[b+268>>2]|0;if(d|0?a[d+5>>0]&3:0)Iw(b,d);d=c[b+272>>2]|0;if(d|0?a[d+5>>0]&3:0)Iw(b,d);d=c[b+276>>2]|0;if(!d)return;if(!(a[d+5>>0]&3))return;Iw(b,d);return}function Pw(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;f=b+76|0;t=c[f>>2]|0;k=t+5|0;e=d[k>>0]|0;a[k>>0]=e|4;switch(a[t+4>>0]|0){case 5:{n=t+28|0;c[f>>2]=c[n>>2];j=c[t+24>>2]|0;do if(j){h=j+6|0;i=a[h>>0]|0;if(!(i&8)){f=c[b+160>>2]|0;e=(c[j+16>>2]|0)+(((1<<d[j+7>>0])+-1&c[f+8>>2])<<5)|0;while(1){if((c[e+24>>2]|0)==68?(c[e+16>>2]|0)==(f|0):0){q=7;break}g=c[e+28>>2]|0;if(!g){e=316344;break}e=e+(g<<5)|0}if(!(c[e+8>>2]|0)){a[h>>0]=i|8;e=0}}else e=0;if(a[j+5>>0]&3)Iw(b,j);if(((e|0)!=0?(c[e+8>>2]&15|0)==4:0)?(m=(c[e>>2]|0)+16|0,l=XO(m,107)|0,l=(l|0)!=0,m=(XO(m,118)|0)!=0,l|m):0){a[k>>0]=a[k>>0]&-5;if(l)if(m){s=b+92|0;c[n>>2]=c[s>>2];c[s>>2]=t;break}else{Qw(b,t)|0;break}s=a[t+7>>0]|0;f=c[t+16>>2]|0;j=f+(1<<(s&255)<<5)|0;e=(c[t+8>>2]|0)!=0&1;if(s<<24>>24!=31)do{g=f+8|0;h=f+24|0;i=(c[h>>2]&64|0)==0;if(!(c[g>>2]|0)){if(!i?(a[(c[f+16>>2]|0)+5>>0]&3)!=0:0)c[h>>2]=10}else{if(!i?(p=c[f+16>>2]|0,a[p+5>>0]&3):0)Iw(b,p);if(!e){h=c[g>>2]|0;do if(h&64){e=c[f>>2]|0;g=a[e+5>>0]&3;if((h&15|0)!=4){e=g&255;break}if(g<<24>>24){Iw(b,e);e=0}else e=0}else e=0;while(0);e=(e|0)!=0&1}}f=f+32|0}while(f>>>0<j>>>0);if(!(a[b+61>>0]|0)){s=b+80|0;c[n>>2]=c[s>>2];c[s>>2]=t;break}if(e|0){s=b+84|0;c[n>>2]=c[s>>2];c[s>>2]=t}}else q=41}else q=41;while(0);if((q|0)==41){i=t+16|0;e=c[i>>2]|0;k=e+(1<<d[t+7>>0]<<5)|0;j=t+8|0;f=c[j>>2]|0;if(f){h=t+12|0;g=0;do{e=c[h>>2]|0;if((c[e+(g<<4)+8>>2]&64|0)!=0?(o=c[e+(g<<4)>>2]|0,(a[o+5>>0]&3)!=0):0){Iw(b,o);f=c[j>>2]|0}g=g+1|0}while(g>>>0<f>>>0);e=c[i>>2]|0}if(e>>>0<k>>>0)do{g=e+8|0;f=c[g>>2]|0;h=e+24|0;i=(c[h>>2]&64|0)==0;if(!f){if(!i?a[(c[e+16>>2]|0)+5>>0]&3:0)c[h>>2]=10}else{if(!i?(r=c[e+16>>2]|0,(a[r+5>>0]&3)!=0):0){Iw(b,r);f=c[g>>2]|0}if(f&64|0?(s=c[e>>2]|0,a[s+5>>0]&3):0)Iw(b,s)}e=e+32|0}while(e>>>0<k>>>0)}e=(c[t+8>>2]<<4)+32+(32<<d[t+7>>0])|0;break}case 6:{c[f>>2]=c[t+8>>2];e=c[t+12>>2]|0;if(e|0?a[e+5>>0]&3:0)Iw(b,e);i=t+6|0;e=a[i>>0]|0;if(!(e<<24>>24))e=e&255;else{j=b+61|0;h=0;while(1){f=c[t+16+(h<<2)>>2]|0;do if(f){g=c[f>>2]|0;f=f+8|0;if((g|0)!=(f|0)?(a[j>>0]|0)!=8:0){c[f+4>>2]=1;f=e;break}if((c[g+8>>2]&64|0)!=0?(n=c[g>>2]|0,(a[n+5>>0]&3)!=0):0){Iw(b,n);f=a[i>>0]|0}else f=e}else f=e;while(0);h=h+1|0;e=f&255;if((h|0)>=(e|0))break;else e=f}}e=(e<<2)+16|0;break}case 38:{c[f>>2]=c[t+8>>2];h=t+6|0;e=a[h>>0]|0;if(!(e<<24>>24))e=e&255;else{g=0;while(1){if((c[t+16+(g<<4)+8>>2]&64|0)!=0?(i=c[t+16+(g<<4)>>2]|0,(a[i+5>>0]&3)!=0):0){Iw(b,i);f=a[h>>0]|0}else f=e;g=g+1|0;e=f&255;if((g|0)>=(e|0))break;else e=f}}e=(e<<4)+16|0;break}case 8:{s=t+36|0;c[f>>2]=c[s>>2];i=b+80|0;c[s>>2]=c[i>>2];c[i>>2]=t;a[k>>0]=e&251;i=t+28|0;f=c[i>>2]|0;if(!f)e=1;else{g=t+8|0;e=c[g>>2]|0;if(f>>>0<e>>>0)do{if((c[f+8>>2]&64|0)!=0?(h=c[f>>2]|0,(a[h+5>>0]&3)!=0):0){Iw(b,h);e=c[g>>2]|0}f=f+16|0}while(f>>>0<e>>>0);do if((a[b+61>>0]|0)==8){e=t+92|0;g=(c[i>>2]|0)+(c[e>>2]<<4)|0;if(f>>>0<g>>>0)do{c[f+8>>2]=0;f=f+16|0}while(f>>>0<g>>>0);f=t+40|0;if((c[f>>2]|0)==(t|0)?(c[t+32>>2]|0)!=0:0){s=b+104|0;c[f>>2]=c[s>>2];c[s>>2]=t}}else{if((a[b+62>>0]|0)==1){e=t+92|0;break}h=c[t+16>>2]|0;if(h){f=h;do{s=c[f+4>>2]|0;e=e>>>0<s>>>0?s:e;f=c[f+8>>2]|0}while((f|0)!=0)}l=e-(c[i>>2]|0)|0;k=(l>>4)+1|0;k=((k|0)/8|0)+10+k|0;k=(k|0)<1e6?k:1e6;e=t+92|0;g=h+12|0;f=c[g>>2]|0;a:do if((c[e>>2]|0)>1e6){c[g>>2]=0;if(f|0){g=t+12|0;do{r=f;f=c[f+12>>2]|0;s=c[g>>2]|0;jg[c[s>>2]&31](c[s+4>>2]|0,r,36,0)|0;s=s+12|0;c[s>>2]=(r|0?-36:0)+(c[s>>2]|0)}while((f|0)!=0)}}else if(f|0){j=t+12|0;do{i=h;h=c[f+12>>2]|0;if(!h)break a;s=c[j>>2]|0;jg[c[s>>2]&31](c[s+4>>2]|0,f,36,0)|0;s=s+12|0;c[s>>2]=(f|0?-36:0)+(c[s>>2]|0);c[g>>2]=h;c[h+8>>2]=i;g=h+12|0;f=c[g>>2]|0}while((f|0)!=0)}while(0);if((l|0)<=15999984?(k|0)<(c[e>>2]|0):0)sw(t,k)}while(0);e=(c[e>>2]<<4)+112|0}break}case 9:{c[f>>2]=c[t+76>>2];e=t+68|0;s=c[e>>2]|0;if(s|0?a[s+5>>0]&3:0)c[e>>2]=0;e=c[t+72>>2]|0;if(e|0?a[e+5>>0]&3:0)Iw(b,e);l=t+16|0;e=c[l>>2]|0;if((e|0)>0){h=t+44|0;g=0;do{f=c[h>>2]|0;if((c[f+(g<<4)+8>>2]&64|0)!=0?(j=c[f+(g<<4)>>2]|0,(a[j+5>>0]&3)!=0):0){Iw(b,j);e=c[l>>2]|0}g=g+1|0}while((g|0)<(e|0))}k=t+12|0;e=c[k>>2]|0;if((e|0)>0){h=t+64|0;g=0;do{f=c[(c[h>>2]|0)+(g<<3)>>2]|0;if((f|0)!=0?(a[f+5>>0]&3)!=0:0){Iw(b,f);e=c[k>>2]|0}g=g+1|0}while((g|0)<(e|0))}j=t+28|0;e=c[j>>2]|0;if((e|0)>0){h=t+52|0;g=0;do{f=c[(c[h>>2]|0)+(g<<2)>>2]|0;if((f|0)!=0?(a[f+5>>0]&3)!=0:0){Iw(b,f);e=c[j>>2]|0}g=g+1|0}while((g|0)<(e|0))}i=t+32|0;f=c[i>>2]|0;if((f|0)>0){h=t+60|0;g=0;do{e=c[(c[h>>2]|0)+(g*12|0)>>2]|0;if((e|0)!=0?(a[e+5>>0]&3)!=0:0){Iw(b,e);f=c[i>>2]|0}g=g+1|0}while((g|0)<(f|0));e=c[j>>2]|0}e=(f*12|0)+80+(c[l>>2]<<4)+(c[k>>2]<<3)+((c[t+20>>2]|0)+e+(c[t+24>>2]|0)<<2)|0;break}default:return}b=b+16|0;c[b>>2]=(c[b>>2]|0)+e;return}function Qw(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;l=e+16|0;f=c[l>>2]|0;p=f+(1<<d[e+7>>0]<<5)|0;m=e+8|0;g=c[m>>2]|0;if(!g){i=f;g=0}else{j=e+12|0;h=g;i=0;g=0;while(1){f=c[j>>2]|0;if((c[f+(i<<4)+8>>2]&64|0)!=0?(k=c[f+(i<<4)>>2]|0,(a[k+5>>0]&3)!=0):0){Iw(b,k);f=c[m>>2]|0;g=1}else f=h;i=i+1|0;if(i>>>0>=f>>>0)break;else h=f}i=c[l>>2]|0}if(i>>>0<p>>>0){h=0;f=0;n=i;do{k=n+8|0;l=c[k>>2]|0;i=n+24|0;m=c[i>>2]|0;j=(m&64|0)==0;a:do if(!l){if(!j?(a[(c[n+16>>2]|0)+5>>0]&3)!=0:0)c[i>>2]=10}else{do if(j){o=l;q=17}else{i=c[n+16>>2]|0;j=(a[i+5>>0]&3)==0;if((m&15|0)==4){if(j){o=l;q=17;break}Iw(b,i);o=c[k>>2]|0;q=17;break}i=(l&64|0)==0;if(j)if(i)break a;else break;if(i){h=1;break a}h=1;f=(a[(c[n>>2]|0)+5>>0]&3)==0?f:1;break a}while(0);if((q|0)==17?(q=0,(o&64|0)==0):0)break;i=c[n>>2]|0;if(a[i+5>>0]&3){Iw(b,i);g=1}}while(0);n=n+32|0}while(n>>>0<p>>>0)}else{h=0;f=0}do if(a[b+61>>0]|0){if(f|0){f=b+88|0;break}if(!h)return g|0;else{f=b+92|0;break}}else f=b+80|0;while(0);c[e+28>>2]=c[f>>2];c[f>>2]=e;return g|0}function Rw(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;if((e|0)==(f|0))return;do{n=e+16|0;g=c[n>>2]|0;p=g+(1<<(d[e+7>>0]|0)<<5)|0;o=e+8|0;h=c[o>>2]|0;if(h){m=e+12|0;g=h;l=0;do{h=c[m>>2]|0;j=h+(l<<4)+8|0;k=c[j>>2]|0;do if(k&64){h=c[h+(l<<4)>>2]|0;i=(a[h+5>>0]&3)==0;if((k&15|0)==4){if(i)break;Iw(b,h);g=c[o>>2]|0;break}else{if(i)break;c[j>>2]=0;break}}while(0);l=l+1|0}while(l>>>0<g>>>0);g=c[n>>2]|0}if(g>>>0<p>>>0)do{h=g+8|0;i=c[h>>2]|0;do if(i&64|0){j=c[g>>2]|0;k=(a[j+5>>0]&3)==0;if((i&15|0)==4){if(k)break;Iw(b,j);break}if((!k?(c[h>>2]=0,q=g+24|0,c[q>>2]&64|0):0)?a[(c[g+16>>2]|0)+5>>0]&3:0)c[q>>2]=10}while(0);g=g+32|0}while(g>>>0<p>>>0);e=c[e+28>>2]|0}while((e|0)!=(f|0));return}function Sw(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;j=b+12|0;k=c[j>>2]|0;h=k+12|0;d=c[h>>2]|0;i=k+128|0;e=c[i>>2]|0;f=((d|0)/200|0)+1|0;if(!(a[k+63>>0]|0)){b=k+8|0;c[b>>2]=d+16e3+(c[b>>2]|0);c[h>>2]=-16e3;return}d=O(f,e)|0;g=k+61|0;e=(f|0)<(2147483647/(e|0)|0|0)?d:2147483647;do{e=e-(Nw(b)|0)|0;d=(a[g>>0]|0)==7;if((e|0)<=-1600){l=6;break}}while(!d);if((l|0)==6?!d:0){g=((e|0)/(c[i>>2]|0)|0)*200|0;d=k+8|0;c[d>>2]=(c[h>>2]|0)-g+(c[d>>2]|0);c[h>>2]=g;g=c[j>>2]|0;d=g+96|0;g=g+120|0;a:do if(!(c[d>>2]|0))d=0;else{f=0;while(1){e=c[g>>2]|0;if(f>>>0>=e>>>0)break;Lw(b,1);if(!(c[d>>2]|0)){d=0;break a}else f=f+1|0}d=e<<1}while(0);c[g>>2]=d;return}i=((c[k+20>>2]|0)>>>0)/100|0;g=c[k+124>>2]|0;l=k+8|0;k=c[l>>2]|0;j=c[h>>2]|0;b=O(g,0-i|0)|0;b=j+k+((g|0)<(2147483647/(i>>>0)|0|0)?b:-2147483647)|0;c[l>>2]=j-b+k;c[h>>2]=b;return}function Tw(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;h=b+12|0;j=c[h>>2]|0;if(e|0)a[j+62>>0]=1;e=j+61|0;g=a[e>>0]|0;if((g&255)<2){a[e>>0]=2;e=j+64|0;do f=Kw(b,e,1)|0;while((f|0)==(e|0));c[j+68>>2]=f;g=c[h>>2]|0;e=g;g=a[g+61>>0]|0}else e=j;f=e+61|0;if(g<<24>>24==7)g=7;else{do Nw(b)|0;while((a[f>>0]|0)!=7);g=c[h>>2]|0;e=g;g=a[g+61>>0]|0}f=e+61|0;if(!(1<<(g&255)&-129)){do Nw(b)|0;while(!(1<<d[f>>0]&-129|0));g=c[h>>2]|0;e=g;g=a[g+61>>0]|0}f=e+61|0;if(g<<24>>24!=6){do Nw(b)|0;while((a[f>>0]|0)!=6);e=c[h>>2]|0;if((a[e+61>>0]|0)!=7)i=16}else i=16;if((i|0)==16){e=e+61|0;do Nw(b)|0;while((a[e>>0]|0)!=7)}a[j+62>>0]=0;f=((c[j+20>>2]|0)>>>0)/100|0;e=c[j+124>>2]|0;i=j+8|0;h=c[i>>2]|0;b=j+12|0;g=c[b>>2]|0;j=O(e,0-f|0)|0;j=g+h+((e|0)<(2147483647/(f>>>0)|0|0)?j:-2147483647)|0;c[i>>2]=g-j+h;c[b>>2]=j;return}function Uw(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;i=m;h=c[d>>2]|0;if((h|0)>=((f|0)/2|0|0))if((h|0)<(f|0))k=f;else{c[i>>2]=g;c[i+4>>2]=f;mw(a,280182,i)}else{k=h<<1;k=(k|0)>4?k:4}if((k+1|0)>>>0>(4294967295/(e>>>0)|0)>>>0)Vw(a);j=O(h,e)|0;i=O(k,e)|0;g=c[a+12>>2]|0;e=(b|0)!=0;h=g+4|0;f=jg[c[g>>2]&31](c[h>>2]|0,b,j,i)|0;if(!((i|0)!=0&(f|0)==0)){a=f;b=g+12|0;g=c[b>>2]|0;j=0-j|0;j=e?j:0;j=j+i|0;j=j+g|0;c[b>>2]=j;c[d>>2]=k;l=m;return a|0}if(!(c[g+140>>2]|0))qw(a,4);Tw(a,1);h=jg[c[g>>2]&31](c[h>>2]|0,b,j,i)|0;if(!h)qw(a,4);else{a=h;b=g+12|0;g=c[b>>2]|0;j=0-j|0;j=e?j:0;j=j+i|0;j=j+g|0;c[b>>2]=j;c[d>>2]=k;l=m;return a|0}return 0}function Vw(a){a=a|0;var b=0;b=l;l=l+16|0;mw(a,280208,b)}function Ww(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0;r=l;l=l+16|0;p=r;i=b;while(1){f=a[i>>0]|0;g=i+1|0;if(!(a[287022+((f&255)+1)>>0]&8))break;else i=g}switch(f<<24>>24){case 45:{o=1;f=g;break}case 43:{o=0;f=g;break}default:{o=0;f=i}}g=a[f>>0]|0;a:do if(g<<24>>24==48){switch(a[f+1>>0]|0){case 88:case 120:break;default:{n=8;break a}}f=f+2|0;g=a[f>>0]|0;i=a[287022+((g&255)+1)>>0]|0;if(!(i&16)){j=0;k=0;m=1}else{j=0;i=0;while(1){j=KQ(j|0,i|0,4)|0;g=g<<24>>24;k=g+-48|0;k=k>>>0>9?(g|32)+-87|0:k;j=yQ(k|0,((k|0)<0)<<31>>31|0,j|0,z|0)|0;k=z;f=f+1|0;g=a[f>>0]|0;i=a[287022+((g&255)+1)>>0]|0;if(!(i&16)){m=0;break}else i=k}}}else n=8;while(0);if((n|0)==8){i=g&255;if((i+-48|0)>>>0>9){i=a[287022+(i+1)>>0]|0;j=0;k=0;m=1}else{j=0;k=0;do{n=EQ(j|0,k|0,10,0)|0;i=z;m=g<<24>>24;m=yQ(m|0,((m|0)<0)<<31>>31|0,-48,-1)|0;j=yQ(m|0,z|0,n|0,i|0)|0;k=z;f=f+1|0;g=a[f>>0]|0;i=g&255}while((i+-48|0)>>>0<=9);i=a[287022+(i+1)>>0]|0;m=0}}if(!(i&8))i=f;else{do{f=f+1|0;g=a[f>>0]|0}while((a[287022+((g&255)+1)>>0]&8)!=0);i=f}do if(g<<24>>24!=0|(m|0)!=0|(i|0)==0){if((vQ(b,280503)|0)==0?(q=+qQ(b,p),e=c[p>>2]|0,(e|0)!=(b|0)):0){f=a[e>>0]|0;if(a[287022+((f&255)+1)>>0]&8){do{e=e+1|0;f=a[e>>0]|0}while((a[287022+((f&255)+1)>>0]&8)!=0);c[p>>2]=e}if(!(f<<24>>24))if(!e){b=0;l=r;return b|0}else{h[d>>3]=q;f=3;break}}b=0;l=r;return b|0}else{e=(o|0)!=0;p=zQ(0,0,j|0,k|0)|0;f=d;c[f>>2]=e?p:j;c[f+4>>2]=e?z:k;f=19;e=i}while(0);c[d+8>>2]=f;b=1-b+e|0;l=r;return b|0}function Xw(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0;j=l;l=l+80|0;f=j+8|0;e=j;i=j+16|0;g=d+8|0;if((c[g>>2]|0)!=19){h[f>>3]=+h[d>>3];e=MN(i,280511,f)|0;if(!(a[i+(ZP(i,280517)|0)>>0]|0)){a[i+e>>0]=46;a[i+(e+1)>>0]=48;e=e+2|0}}else{m=d;k=c[m+4>>2]|0;f=e;c[f>>2]=c[m>>2];c[f+4>>2]=k;e=MN(i,280506,e)|0}m=xx(b,i,e)|0;c[d>>2]=m;c[g>>2]=(a[m+4>>0]|64)&255;l=j;return}function Yw(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0;F=l;l=l+80|0;E=F+32|0;y=F+24|0;t=F+16|0;u=F+8|0;x=F;q=F+72|0;r=F+48|0;s=F+40|0;j=XO(d,37)|0;n=b+24|0;C=b+8|0;f=c[C>>2]|0;i=f;g=(c[n>>2]|0)-i|0;a:do if(j){o=s+7|0;p=b+92|0;m=b+28|0;k=0;b:while(1){if((g|0)<48){f=c[p>>2]|0;if((f|0)>1e6){f=5;break}i=(i-(c[m>>2]|0)>>4)+7|0;f=f<<1;f=(f|0)<1e6?f:1e6;f=(f|0)<(i|0)?i:f;if((f|0)>1e6){f=7;break}sw(b,f);f=c[C>>2]|0}c[C>>2]=f+16;d=xx(b,d,j-d|0)|0;c[f>>2]=d;c[f+8>>2]=(a[d+4>>0]|64)&255;d=a[j+1>>0]|0;c:do switch(d|0){case 115:{g=(c[e>>2]|0)+(4-1)&~(4-1);d=c[g>>2]|0;c[e>>2]=g+4;d=(d|0)==0?314298:d;g=WO(d)|0;i=c[C>>2]|0;c[C>>2]=i+16;g=xx(b,d,g)|0;c[i>>2]=g;c[i+8>>2]=(a[g+4>>0]|64)&255;break}case 99:{i=(c[e>>2]|0)+(4-1)&~(4-1);f=c[i>>2]|0;c[e>>2]=i+4;a[q>>0]=f;f=f&255;if((f+-32|0)>>>0>94){c[u>>2]=f;Zw(b,280529,u)|0;break c}else{i=c[C>>2]|0;c[C>>2]=i+16;g=xx(b,q,1)|0;c[i>>2]=g;c[i+8>>2]=(a[g+4>>0]|64)&255;break c}}case 100:{i=c[C>>2]|0;c[C>>2]=i+16;g=(c[e>>2]|0)+(4-1)&~(4-1);d=c[g>>2]|0;c[e>>2]=g+4;g=i;c[g>>2]=d;c[g+4>>2]=((d|0)<0)<<31>>31;c[i+8>>2]=19;Xw(b,(c[C>>2]|0)+-16|0);break}case 73:{i=c[C>>2]|0;c[C>>2]=i+16;g=(c[e>>2]|0)+(8-1)&~(8-1);d=g;f=c[d>>2]|0;d=c[d+4>>2]|0;c[e>>2]=g+8;g=i;c[g>>2]=f;c[g+4>>2]=d;c[i+8>>2]=19;Xw(b,(c[C>>2]|0)+-16|0);break}case 102:{i=c[C>>2]|0;c[C>>2]=i+16;g=(c[e>>2]|0)+(8-1)&~(8-1);G=+h[g>>3];c[e>>2]=g+8;h[i>>3]=G;c[i+8>>2]=3;Xw(b,(c[C>>2]|0)+-16|0);break}case 112:{i=(c[e>>2]|0)+(4-1)&~(4-1);g=c[i>>2]|0;c[e>>2]=i+4;c[t>>2]=g;g=MN(r,280535,t)|0;i=c[C>>2]|0;c[C>>2]=i+16;g=xx(b,r,g)|0;c[i>>2]=g;c[i+8>>2]=(a[g+4>>0]|64)&255;break}case 85:{i=(c[e>>2]|0)+(4-1)&~(4-1);f=c[i>>2]|0;c[e>>2]=i+4;if(f>>>0<128){a[o>>0]=f;f=1}else{g=63;i=1;while(1){d=i+1|0;a[s+(8-i)>>0]=f&63|128;f=f>>>6;g=g>>>1;if(f>>>0<=g>>>0)break;else i=d}a[s+(7-i)>>0]=g<<1^254|f;f=d}i=c[C>>2]|0;c[C>>2]=i+16;g=xx(b,s+(8-f)|0,f)|0;c[i>>2]=g;c[i+8>>2]=(a[g+4>>0]|64)&255;break}case 37:{i=c[C>>2]|0;c[C>>2]=i+16;g=xx(b,280538,1)|0;c[i>>2]=g;c[i+8>>2]=(a[g+4>>0]|64)&255;break}default:{f=24;break b}}while(0);k=k+2|0;d=j+2|0;j=XO(d,37)|0;f=c[C>>2]|0;i=f;g=(c[n>>2]|0)-i|0;if(!j){A=d;v=g;z=i;w=f;D=k;break a}}if((f|0)==5)qw(b,6);else if((f|0)==7){sw(b,1000200);mw(b,283421,x)}else if((f|0)==24){c[y>>2]=d;mw(b,280540,y)}}else{A=d;v=g;z=i;w=f;D=0}while(0);do if((v|0)<32){f=c[b+92>>2]|0;if((f|0)>1e6)qw(b,6);z=(z-(c[b+28>>2]|0)>>4)+6|0;f=f<<1;f=(f|0)<1e6?f:1e6;f=(f|0)<(z|0)?z:f;if((f|0)>1e6){sw(b,1000200);mw(b,283421,E)}else{sw(b,f);B=c[C>>2]|0;break}}else B=w;while(0);E=WO(A)|0;c[C>>2]=B+16;E=xx(b,A,E)|0;c[B>>2]=E;c[B+8>>2]=(a[E+4>>0]|64)&255;if((D|0)<=0){E=c[C>>2]|0;E=E+-16|0;E=c[E>>2]|0;E=E+16|0;l=F;return E|0}Px(b,D|1);E=c[C>>2]|0;E=E+-16|0;E=c[E>>2]|0;E=E+16|0;l=F;return E|0}function Zw(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;d=Yw(a,b,f)|0;l=e;return d|0}function _w(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=l;l=l+32|0;o=r+8|0;n=r;p=c[b>>2]|0;h=p+12|0;g=c[h>>2]|0;q=b+43|0;k=d[q>>0]|0;if((k+1|0)>>>0>255){m=b+8|0;i=c[(c[m>>2]|0)+52>>2]|0;j=c[p+36>>2]|0;if(!j){t=280822;c[o>>2]=281250;s=o+4|0;c[s>>2]=255;s=o+8|0;c[s>>2]=t;s=Zw(i,280836,o)|0;t=c[m>>2]|0;$B(t,s)}c[n>>2]=j;s=Zw(i,280802,n)|0;c[o>>2]=281250;t=o+4|0;c[t>>2]=255;t=o+8|0;c[t>>2]=s;t=Zw(i,280836,o)|0;s=c[m>>2]|0;$B(s,t)}if((k|0)<(g|0)){h=g;i=c[p+64>>2]|0}else{t=p+64|0;i=Uw(c[(c[b+8>>2]|0)+52>>2]|0,c[t>>2]|0,h,8,255,281250)|0;c[t>>2]=i;h=c[h>>2]|0}if((g|0)<(h|0))do{c[i+(g<<3)>>2]=0;g=g+1|0}while((g|0)!=(h|0));j=a[q>>0]|0;h=j&255;a[i+(h<<3)+4>>0]=(c[f>>2]|0)==8&1;a[i+(h<<3)+5>>0]=c[f+8>>2];c[i+(h<<3)>>2]=e;h=p+5|0;i=a[h>>0]|0;if(!(i&4)){t=j;s=t+1<<24>>24;a[q>>0]=s;t=t&255;l=r;return t|0}if(!(a[e+5>>0]&3)){t=j;s=t+1<<24>>24;a[q>>0]=s;t=t&255;l=r;return t|0}g=c[(c[(c[b+8>>2]|0)+52>>2]|0)+12>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,e);t=a[q>>0]|0;s=t+1<<24>>24;a[q>>0]=s;t=t&255;l=r;return t|0}else{a[h>>0]=a[g+60>>0]&3|i&-8;t=j;s=t+1<<24>>24;a[q>>0]=s;t=t&255;l=r;return t|0}return 0}function $w(e){e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0;U=l;l=l+224|0;u=U+208|0;p=U+192|0;L=U+176|0;k=U+160|0;x=U+144|0;m=U+128|0;j=U+112|0;i=U+104|0;N=U+72|0;G=U+48|0;q=U+24|0;n=U;Q=e+4|0;P=c[Q>>2]|0;S=e+48|0;O=c[S>>2]|0;T=e+52|0;h=(c[T>>2]|0)+106|0;R=(b[h>>1]|0)+1<<16>>16;b[h>>1]=R;if((R&65535)>200){g=O+8|0;h=c[(c[g>>2]|0)+52>>2]|0;f=c[(c[O>>2]|0)+36>>2]|0;if(!f){V=280822;c[j>>2]=280868;R=j+4|0;c[R>>2]=200;R=j+8|0;c[R>>2]=V;R=Zw(h,280836,j)|0;V=c[g>>2]|0;$B(V,R)}c[i>>2]=f;R=Zw(h,280802,i)|0;c[j>>2]=280868;V=j+4|0;c[V>>2]=200;V=j+8|0;c[V>>2]=R;V=Zw(h,280836,j)|0;R=c[g>>2]|0;$B(R,V)}R=e+16|0;do switch(c[R>>2]|0){case 59:{c[e+8>>2]=P;f=e+32|0;if((c[f>>2]|0)==289){c[R>>2]=cC(e,e+24|0)|0;V=c[S>>2]|0;S=V+42|0;S=a[S>>0]|0;V=V+44|0;a[V>>0]=S;V=c[T>>2]|0;V=V+106|0;T=b[V>>1]|0;T=T+-1<<16>>16;b[V>>1]=T;l=U;return}else{V=e+16|0;c[V>>2]=c[f>>2];c[V+4>>2]=c[f+4>>2];c[V+8>>2]=c[f+8>>2];c[V+12>>2]=c[f+12>>2];c[f>>2]=289;V=c[S>>2]|0;S=V+42|0;S=a[S>>0]|0;V=V+44|0;a[V>>0]=S;V=c[T>>2]|0;V=V+106|0;T=b[V>>1]|0;T=T+-1<<16>>16;b[V>>1]=T;l=U;return}}case 267:{c[G>>2]=-1;fx(e,G);a:while(1){f=c[R>>2]|0;switch(f|0){case 260:{M=12;break a}case 261:break;default:{g=f;break a}}fx(e,G)}if((M|0)==12){c[e+8>>2]=c[Q>>2];f=e+32|0;if((c[f>>2]|0)==289)c[R>>2]=cC(e,e+24|0)|0;else{V=e+16|0;c[V>>2]=c[f>>2];c[V+4>>2]=c[f+4>>2];c[V+8>>2]=c[f+8>>2];c[V+12>>2]=c[f+12>>2];c[f>>2]=289}g=c[S>>2]|0;a[N+14>>0]=0;a[N+12>>0]=a[g+42>>0]|0;V=c[(c[g+8>>2]|0)+68>>2]|0;c[N+4>>2]=c[V+28>>2];c[N+8>>2]=c[V+16>>2];a[N+13>>0]=0;V=g+12|0;c[N>>2]=c[V>>2];c[V>>2]=N;b:do{f=c[R>>2]|0;switch(f|0){case 277:case 289:case 262:case 261:case 260:break b;default:{}}$w(e)}while((f|0)!=274);cx(g);g=c[R>>2]|0}f=c[Q>>2]|0;if((g|0)!=262)if((f|0)==(P|0))ax(e,262);else{V=c[T>>2]|0;N=_B(e,262)|0;Q=_B(e,267)|0;c[m>>2]=N;c[m+4>>2]=Q;c[m+8>>2]=P;$B(e,Zw(V,280877,m)|0)}c[e+8>>2]=f;f=e+32|0;if((c[f>>2]|0)==289)c[R>>2]=cC(e,e+24|0)|0;else{V=e+16|0;c[V>>2]=c[f>>2];c[V+4>>2]=c[f+4>>2];c[V+8>>2]=c[f+8>>2];c[V+12>>2]=c[f+12>>2];c[f>>2]=289}k=c[G>>2]|0;c[O+20>>2]=c[O+16>>2];f=O+24|0;do if((k|0)!=-1){g=c[f>>2]|0;if((g|0)==-1){c[f>>2]=k;break}j=c[(c[O>>2]|0)+48>>2]|0;while(1){h=j+(g<<2)|0;i=c[h>>2]|0;f=(i>>>14)+-131071|0;f=(f|0)==-1?-1:g+1+f|0;if((f|0)==-1)break;else g=f}f=k+~g|0;if((((f|0)>-1?f:0-f|0)|0)>131071)$B(c[O+8>>2]|0,286908);else{c[h>>2]=(f<<14)+2147467264|i&16383;break}}while(0);V=c[S>>2]|0;S=V+42|0;S=a[S>>0]|0;V=V+44|0;a[V>>0]=S;V=c[T>>2]|0;V=V+106|0;T=b[V>>1]|0;T=T+-1<<16>>16;b[V>>1]=T;l=U;return}case 278:{r=e+8|0;c[r>>2]=P;s=e+32|0;if((c[s>>2]|0)==289)c[R>>2]=cC(e,e+24|0)|0;else{V=e+16|0;c[V>>2]=c[s>>2];c[V+4>>2]=c[s+4>>2];c[V+8>>2]=c[s+8>>2];c[V+12>>2]=c[s+12>>2];c[s>>2]=289}p=O+16|0;o=c[p>>2]|0;q=O+20|0;c[q>>2]=o;gx(e,N,0)|0;if((c[N>>2]|0)==1)c[N>>2]=3;VB(c[S>>2]|0,N);t=c[N+20>>2]|0;a[G+14>>0]=1;a[G+12>>0]=a[O+42>>0]|0;u=O+8|0;V=c[(c[u>>2]|0)+68>>2]|0;c[G+4>>2]=c[V+28>>2];c[G+8>>2]=c[V+16>>2];a[G+13>>0]=0;V=O+12|0;c[G>>2]=c[V>>2];c[V>>2]=G;if((c[R>>2]|0)!=259)ax(e,259);c[r>>2]=c[Q>>2];if((c[s>>2]|0)==289)c[R>>2]=cC(e,e+24|0)|0;else{V=e+16|0;c[V>>2]=c[s>>2];c[V+4>>2]=c[s+4>>2];c[V+8>>2]=c[s+8>>2];c[V+12>>2]=c[s+12>>2];c[s>>2]=289}g=c[S>>2]|0;a[N+14>>0]=0;a[N+12>>0]=a[g+42>>0]|0;V=c[(c[g+8>>2]|0)+68>>2]|0;c[N+4>>2]=c[V+28>>2];c[N+8>>2]=c[V+16>>2];a[N+13>>0]=0;V=g+12|0;c[N>>2]=c[V>>2];c[V>>2]=N;c:do{f=c[R>>2]|0;switch(f|0){case 277:case 289:case 262:case 261:case 260:break c;default:{}}$w(e)}while((f|0)!=274);cx(g);n=O+24|0;g=c[n>>2]|0;c[n>>2]=-1;j=LB(O,2147450910)|0;do if((g|0)!=-1)if((j|0)!=-1){h=c[(c[O>>2]|0)+48>>2]|0;i=j;while(1){k=h+(i<<2)|0;m=c[k>>2]|0;f=(m>>>14)+-131071|0;f=(f|0)==-1?-1:i+1+f|0;if((f|0)==-1)break;else i=f}f=g+~i|0;if((((f|0)>-1?f:0-f|0)|0)>131071)$B(c[u>>2]|0,286908);else{c[k>>2]=(f<<14)+2147467264|m&16383;w=j;break}}else w=g;else w=j;while(0);MB(O,w,o);f=c[Q>>2]|0;if((c[R>>2]|0)!=262)if((f|0)==(P|0))ax(e,262);else{V=c[T>>2]|0;N=_B(e,262)|0;Q=_B(e,278)|0;c[x>>2]=N;c[x+4>>2]=Q;c[x+8>>2]=P;$B(e,Zw(V,280877,x)|0)}c[r>>2]=f;if((c[s>>2]|0)==289)c[R>>2]=cC(e,e+24|0)|0;else{V=e+16|0;c[V>>2]=c[s>>2];c[V+4>>2]=c[s+4>>2];c[V+8>>2]=c[s+8>>2];c[V+12>>2]=c[s+12>>2];c[s>>2]=289}cx(O);c[q>>2]=c[p>>2];do if((t|0)!=-1){f=c[n>>2]|0;if((f|0)==-1){c[n>>2]=t;break}j=c[(c[O>>2]|0)+48>>2]|0;while(1){h=j+(f<<2)|0;i=c[h>>2]|0;g=(i>>>14)+-131071|0;g=(g|0)==-1?-1:f+1+g|0;if((g|0)==-1)break;else f=g}f=t+~f|0;if((((f|0)>-1?f:0-f|0)|0)>131071)$B(c[u>>2]|0,286908);else{c[h>>2]=(f<<14)+2147467264|i&16383;break}}while(0);V=c[S>>2]|0;S=V+42|0;S=a[S>>0]|0;V=V+44|0;a[V>>0]=S;V=c[T>>2]|0;V=V+106|0;T=b[V>>1]|0;T=T+-1<<16>>16;b[V>>1]=T;l=U;return}case 259:{h=e+8|0;c[h>>2]=P;i=e+32|0;if((c[i>>2]|0)==289){c[R>>2]=cC(e,e+24|0)|0;g=c[S>>2]|0}else{g=e+16|0;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];c[i>>2]=289;g=O}a[N+14>>0]=0;a[N+12>>0]=a[g+42>>0]|0;V=c[(c[g+8>>2]|0)+68>>2]|0;c[N+4>>2]=c[V+28>>2];c[N+8>>2]=c[V+16>>2];a[N+13>>0]=0;V=g+12|0;c[N>>2]=c[V>>2];c[V>>2]=N;d:do{f=c[R>>2]|0;switch(f|0){case 277:case 289:case 262:case 261:case 260:break d;default:{}}$w(e)}while((f|0)!=274);cx(g);f=c[Q>>2]|0;if((c[R>>2]|0)!=262)if((f|0)==(P|0))ax(e,262);else{V=c[T>>2]|0;O=_B(e,262)|0;Q=_B(e,259)|0;c[k>>2]=O;c[k+4>>2]=Q;c[k+8>>2]=P;$B(e,Zw(V,280877,k)|0)}c[h>>2]=f;if((c[i>>2]|0)==289){c[R>>2]=cC(e,e+24|0)|0;V=c[S>>2]|0;S=V+42|0;S=a[S>>0]|0;V=V+44|0;a[V>>0]=S;V=c[T>>2]|0;V=V+106|0;T=b[V>>1]|0;T=T+-1<<16>>16;b[V>>1]=T;l=U;return}else{V=e+16|0;c[V>>2]=c[i>>2];c[V+4>>2]=c[i+4>>2];c[V+8>>2]=c[i+8>>2];c[V+12>>2]=c[i+12>>2];c[i>>2]=289;V=c[S>>2]|0;S=V+42|0;S=a[S>>0]|0;V=V+44|0;a[V>>0]=S;V=c[T>>2]|0;V=V+106|0;T=b[V>>1]|0;T=T+-1<<16>>16;b[V>>1]=T;l=U;return}}case 264:{a[q+14>>0]=1;a[q+12>>0]=a[O+42>>0]|0;v=c[(c[O+8>>2]|0)+68>>2]|0;c[q+4>>2]=c[v+28>>2];c[q+8>>2]=c[v+16>>2];a[q+13>>0]=0;v=O+12|0;c[q>>2]=c[v>>2];c[v>>2]=q;v=e+8|0;c[v>>2]=P;w=e+32|0;if((c[w>>2]|0)==289){f=cC(e,e+24|0)|0;c[R>>2]=f}else{f=e+16|0;c[f>>2]=c[w>>2];c[f+4>>2]=c[w+4>>2];c[f+8>>2]=c[w+8>>2];c[f+12>>2]=c[w+12>>2];c[w>>2]=289;f=c[R>>2]|0}if((f|0)!=292)ax(e,292);u=e+24|0;g=c[u>>2]|0;c[v>>2]=c[Q>>2];if((c[w>>2]|0)==289){f=cC(e,u)|0;c[R>>2]=f}else{f=e+16|0;c[f>>2]=c[w>>2];c[f+4>>2]=c[w+4>>2];c[f+8>>2]=c[w+8>>2];c[f+12>>2]=c[w+12>>2];c[w>>2]=289;f=c[R>>2]|0}switch(f|0){case 61:{h=c[S>>2]|0;i=h+44|0;j=d[i>>0]|0;hx(e,bC(e,280914,11)|0);hx(e,bC(e,280926,11)|0);hx(e,bC(e,280938,10)|0);hx(e,g);if((c[R>>2]|0)!=61)ax(e,61);c[v>>2]=c[Q>>2];if((c[w>>2]|0)==289)c[R>>2]=cC(e,u)|0;else{V=e+16|0;c[V>>2]=c[w>>2];c[V+4>>2]=c[w+4>>2];c[V+8>>2]=c[w+8>>2];c[V+12>>2]=c[w+12>>2];c[w>>2]=289}gx(e,N,0)|0;PB(c[S>>2]|0,N);if((c[R>>2]|0)!=44)ax(e,44);c[v>>2]=c[Q>>2];if((c[w>>2]|0)==289)c[R>>2]=cC(e,u)|0;else{V=e+16|0;c[V>>2]=c[w>>2];c[V+4>>2]=c[w+4>>2];c[V+8>>2]=c[w+8>>2];c[V+12>>2]=c[w+12>>2];c[w>>2]=289}gx(e,N,0)|0;PB(c[S>>2]|0,N);if((c[R>>2]|0)==44){c[v>>2]=c[Q>>2];if((c[w>>2]|0)==289)c[R>>2]=cC(e,u)|0;else{V=e+16|0;c[V>>2]=c[w>>2];c[V+4>>2]=c[w+4>>2];c[V+8>>2]=c[w+8>>2];c[V+12>>2]=c[w+12>>2];c[w>>2]=289}gx(e,N,0)|0;PB(c[S>>2]|0,N)}else{g=d[i>>0]|0;c[N>>2]=1;c[N+8>>2]=2;f=G;c[f>>2]=1;c[f+4>>2]=0;c[G+8>>2]=19;f=NB(h,N,G)|0;g=g<<6;if((f|0)<262144)LB(h,g|f<<14|1)|0;else{LB(h,g|2)|0;LB(h,f<<6|46)|0}f=(d[i>>0]|0)+1|0;g=(c[h>>2]|0)+8|0;do if(f>>>0>(d[g>>0]|0)>>>0)if(f>>>0>254)$B(c[h+8>>2]|0,286943);else{s=f&255;a[g>>0]=s;break}else s=f&255;while(0);a[i>>0]=s}ix(e,j,P,1,1);break}case 268:case 44:{q=c[S>>2]|0;p=q+44|0;r=d[p>>0]|0;hx(e,bC(e,280949,15)|0);hx(e,bC(e,280965,11)|0);hx(e,bC(e,280977,13)|0);hx(e,g);f=c[R>>2]|0;do if((f|0)==44){g=e+16|0;h=4;while(1){c[v>>2]=c[Q>>2];if((c[w>>2]|0)==289){f=cC(e,u)|0;c[R>>2]=f}else{c[g>>2]=c[w>>2];c[g+4>>2]=c[w+4>>2];c[g+8>>2]=c[w+8>>2];c[g+12>>2]=c[w+12>>2];c[w>>2]=289;f=c[R>>2]|0}if((f|0)!=292){M=124;break}f=c[u>>2]|0;c[v>>2]=c[Q>>2];if((c[w>>2]|0)==289)c[R>>2]=cC(e,u)|0;else{c[g>>2]=c[w>>2];c[g+4>>2]=c[w+4>>2];c[g+8>>2]=c[w+8>>2];c[g+12>>2]=c[w+12>>2];c[w>>2]=289}hx(e,f);f=c[R>>2]|0;if((f|0)==44)h=h+1|0;else{M=129;break}}if((M|0)==124)ax(e,292);else if((M|0)==129){t=f;K=h+-2|0;break}}else{t=f;K=1}while(0);if((t|0)!=268)ax(e,268);f=c[Q>>2]|0;c[v>>2]=f;if((c[w>>2]|0)==289){c[R>>2]=cC(e,u)|0;o=c[Q>>2]|0}else{o=e+16|0;c[o>>2]=c[w>>2];c[o+4>>2]=c[w+4>>2];c[o+8>>2]=c[w+8>>2];c[o+12>>2]=c[w+12>>2];c[w>>2]=289;o=f}gx(e,N,0)|0;if((c[R>>2]|0)==44){g=e+16|0;f=1;do{c[v>>2]=c[Q>>2];if((c[w>>2]|0)==289)c[R>>2]=cC(e,u)|0;else{c[g>>2]=c[w>>2];c[g+4>>2]=c[w+4>>2];c[g+8>>2]=c[w+8>>2];c[g+12>>2]=c[w+12>>2];c[w>>2]=289}PB(c[S>>2]|0,N);gx(e,N,0)|0;f=f+1|0}while((c[R>>2]|0)==44)}else f=1;n=c[S>>2]|0;m=3-f|0;f=c[N>>2]|0;switch(f|0){case 14:case 13:{i=m+1|0;i=(i|0)>0?i:0;switch(f|0){case 13:{V=(c[(c[n>>2]|0)+48>>2]|0)+(c[N+8>>2]<<2)|0;c[V>>2]=c[V>>2]&-8372225|(i<<14)+16384&8372224;break}case 14:{V=N+8|0;h=c[n>>2]|0;f=c[h+48>>2]|0;g=f+(c[V>>2]<<2)|0;c[g>>2]=c[g>>2]&8388607|(i<<23)+8388608;V=f+(c[V>>2]<<2)|0;f=n+44|0;g=d[f>>0]|0;c[V>>2]=g<<6|c[V>>2]&-16321;g=g+1|0;h=h+8|0;do if(g>>>0>(d[h>>0]|0)>>>0)if(g>>>0>254)$B(c[n+8>>2]|0,286943);else{A=g&255;a[h>>0]=A;break}else A=g&255;while(0);a[f>>0]=A;break}default:{}}if((i|0)>1){h=n+44|0;f=(d[h>>0]|0)+(i+-1)|0;g=(c[n>>2]|0)+8|0;do if((f|0)>(d[g>>0]|0))if((f|0)>254)$B(c[n+8>>2]|0,286943);else{F=f&255;a[g>>0]=F;break}else F=f&255;while(0);a[h>>0]=F}break}case 0:{M=158;break}default:{PB(n,N);M=158}}e:do if((M|0)==158?(m|0)>0:0){f=n+44|0;j=d[f>>0]|0;k=j+m|0;i=c[n>>2]|0;g=i+8|0;do if((k|0)>(d[g>>0]|0))if((k|0)>254)$B(c[n+8>>2]|0,286943);else{H=k&255;a[g>>0]=H;break}else H=k&255;while(0);a[f>>0]=H;h=k+-1|0;f=c[n+16>>2]|0;do if((f|0)>(c[n+20>>2]|0)?(I=(c[i+48>>2]|0)+(f+-1<<2)|0,J=c[I>>2]|0,(J&63|0)==4):0){f=J>>>6&255;g=f+(J>>>23)|0;if(f>>>0>j>>>0|(g+1|0)>>>0<j>>>0?f>>>0<j>>>0|(f|0)>(k|0):0)break;V=f>>>0<j>>>0?f:j;c[I>>2]=((g|0)>(h|0)?g:h)-V<<23|V<<6|J&8372287;break e}while(0);LB(n,j<<6|(m<<23)+-8388608|4)|0}while(0);f=(d[p>>0]|0)+3|0;g=(c[q>>2]|0)+8|0;do if(f>>>0>(d[g>>0]|0)>>>0)if(f>>>0>254)$B(c[q+8>>2]|0,286943);else{a[g>>0]=f;break}while(0);ix(e,r,o,K,0);break}default:$B(e,280991)}f=c[Q>>2]|0;if((c[R>>2]|0)!=262)if((f|0)==(P|0))ax(e,262);else{V=c[T>>2]|0;N=_B(e,262)|0;Q=_B(e,264)|0;c[L>>2]=N;c[L+4>>2]=Q;c[L+8>>2]=P;$B(e,Zw(V,280877,L)|0)}c[v>>2]=f;if((c[w>>2]|0)==289)c[R>>2]=cC(e,u)|0;else{V=e+16|0;c[V>>2]=c[w>>2];c[V+4>>2]=c[w+4>>2];c[V+8>>2]=c[w+8>>2];c[V+12>>2]=c[w+12>>2];c[w>>2]=289}cx(O);V=c[S>>2]|0;S=V+42|0;S=a[S>>0]|0;V=V+44|0;a[V>>0]=S;V=c[T>>2]|0;V=V+106|0;T=b[V>>1]|0;T=T+-1<<16>>16;b[V>>1]=T;l=U;return}case 273:{m=c[O+16>>2]|0;c[O+20>>2]=m;a[G+14>>0]=1;V=a[O+42>>0]|0;a[G+12>>0]=V;j=c[(c[O+8>>2]|0)+68>>2]|0;i=c[j+28>>2]|0;c[G+4>>2]=i;j=c[j+16>>2]|0;c[G+8>>2]=j;a[G+13>>0]=0;h=O+12|0;c[G>>2]=c[h>>2];a[q+14>>0]=0;k=q+12|0;a[k>>0]=V;c[q+4>>2]=i;c[q+8>>2]=j;j=q+13|0;a[j>>0]=0;c[q>>2]=G;c[h>>2]=q;h=e+8|0;c[h>>2]=P;i=e+32|0;if((c[i>>2]|0)==289){f=cC(e,e+24|0)|0;c[R>>2]=f}else{M=e+16|0;c[M>>2]=c[i>>2];c[M+4>>2]=c[i+4>>2];c[M+8>>2]=c[i+8>>2];c[M+12>>2]=c[i+12>>2];c[i>>2]=289;M=187}f:while(1){if((M|0)==187){M=0;f=c[R>>2]|0}switch(f|0){case 277:case 289:case 262:case 261:case 260:{g=f;break f}default:{}}$w(e);if((f|0)==274){M=190;break}else M=187}if((M|0)==190)g=c[R>>2]|0;f=c[Q>>2]|0;if((g|0)!=277)if((f|0)==(P|0))ax(e,277);else{V=c[T>>2]|0;M=_B(e,277)|0;Q=_B(e,273)|0;c[p>>2]=M;c[p+4>>2]=Q;c[p+8>>2]=P;$B(e,Zw(V,280877,p)|0)}c[h>>2]=f;if((c[i>>2]|0)==289)c[R>>2]=cC(e,e+24|0)|0;else{V=e+16|0;c[V>>2]=c[i>>2];c[V+4>>2]=c[i+4>>2];c[V+8>>2]=c[i+8>>2];c[V+12>>2]=c[i+12>>2];c[i>>2]=289}gx(e,N,0)|0;if((c[N>>2]|0)==1)c[N>>2]=3;VB(c[S>>2]|0,N);i=c[N+20>>2]|0;if(!((a[j>>0]|0)==0|(i|0)==-1)){h=c[(c[O>>2]|0)+48>>2]|0;g=(d[k>>0]<<6)+64&16320;f=i;do{e=h+(f<<2)|0;R=c[e>>2]|0;V=(R>>>14)+-131071|0;c[e>>2]=R&-16321|g;f=(V|0)==-1?-1:f+1+V|0}while((f|0)!=-1)}cx(O);MB(O,i,m);cx(O);V=c[S>>2]|0;S=V+42|0;S=a[S>>0]|0;V=V+44|0;a[V>>0]=S;V=c[T>>2]|0;V=V+106|0;T=b[V>>1]|0;T=T+-1<<16>>16;b[V>>1]=T;l=U;return}case 265:{g=e+8|0;c[g>>2]=P;h=e+32|0;if((c[h>>2]|0)==289){f=cC(e,e+24|0)|0;c[R>>2]=f}else{f=e+16|0;c[f>>2]=c[h>>2];c[f+4>>2]=c[h+4>>2];c[f+8>>2]=c[h+8>>2];c[f+12>>2]=c[h+12>>2];c[h>>2]=289;f=c[R>>2]|0}if((f|0)!=292)ax(e,292);f=e+24|0;i=c[f>>2]|0;c[g>>2]=c[Q>>2];if((c[h>>2]|0)==289)c[R>>2]=cC(e,f)|0;else{V=e+16|0;c[V>>2]=c[h>>2];c[V+4>>2]=c[h+4>>2];c[V+8>>2]=c[h+8>>2];c[V+12>>2]=c[h+12>>2];c[h>>2]=289}f=c[S>>2]|0;if(!(jx(f,i,q,1)|0)){jx(f,c[e+76>>2]|0,q,1)|0;V=c[S>>2]|0;c[N>>2]=i;c[N+8>>2]=(a[i+4>>0]|64)&255;V=NB(V,N,N)|0;c[G+16>>2]=-1;c[G+20>>2]=-1;c[G>>2]=4;c[G+8>>2]=V;V=q+8|0;a[V+2>>0]=c[V>>2];b[V>>1]=TB(f,G)|0;a[V+3>>0]=(c[q>>2]|0)==9?9:8;c[q>>2]=10}g:while(1){switch(c[R>>2]|0){case 58:{M=217;break g}case 46:break;default:{f=0;break g}}kx(e,q)}if((M|0)==217){kx(e,q);f=1}lx(e,n,f,P);UB(c[S>>2]|0,q,n);V=c[S>>2]|0;c[(c[(c[V>>2]|0)+56>>2]|0)+((c[V+16>>2]|0)+-1<<2)>>2]=P;V=c[S>>2]|0;S=V+42|0;S=a[S>>0]|0;V=V+44|0;a[V>>0]=S;V=c[T>>2]|0;V=V+106|0;T=b[V>>1]|0;T=T+-1<<16>>16;b[V>>1]=T;l=U;return}case 269:{k=e+8|0;c[k>>2]=P;j=e+32|0;if((c[j>>2]|0)==289){f=cC(e,e+24|0)|0;c[R>>2]=f}else{f=e+16|0;c[f>>2]=c[j>>2];c[f+4>>2]=c[j+4>>2];c[f+8>>2]=c[j+8>>2];c[f+12>>2]=c[j+12>>2];c[j>>2]=289;f=c[R>>2]|0}if((f|0)==265){c[k>>2]=c[Q>>2];if((c[j>>2]|0)==289){f=cC(e,e+24|0)|0;c[R>>2]=f}else{f=e+16|0;c[f>>2]=c[j>>2];c[f+4>>2]=c[j+4>>2];c[f+8>>2]=c[j+8>>2];c[f+12>>2]=c[j+12>>2];c[j>>2]=289;f=c[R>>2]|0}h=c[S>>2]|0;if((f|0)!=292)ax(e,292);f=e+24|0;g=c[f>>2]|0;c[k>>2]=c[Q>>2];if((c[j>>2]|0)==289)c[R>>2]=cC(e,f)|0;else{V=e+16|0;c[V>>2]=c[j>>2];c[V+4>>2]=c[j+4>>2];c[V+8>>2]=c[j+8>>2];c[V+12>>2]=c[j+12>>2];c[j>>2]=289}hx(e,g);R=c[S>>2]|0;P=R+42|0;V=(d[P>>0]|0)+1|0;a[P>>0]=V;c[(c[(c[R>>2]|0)+60>>2]|0)+((b[(c[c[(c[R+8>>2]|0)+68>>2]>>2]|0)+((c[R+36>>2]|0)+(V&255)+-1<<1)>>1]|0)*12|0)+4>>2]=c[R+16>>2];lx(e,N,0,c[Q>>2]|0);c[(c[(c[h>>2]|0)+60>>2]|0)+((b[(c[c[(c[h+8>>2]|0)+68>>2]>>2]|0)+((c[h+36>>2]|0)+(c[N+8>>2]|0)<<1)>>1]|0)*12|0)+4>>2]=c[h+16>>2];V=c[S>>2]|0;S=V+42|0;S=a[S>>0]|0;V=V+44|0;a[V>>0]=S;V=c[T>>2]|0;V=V+106|0;T=b[V>>1]|0;T=T+-1<<16>>16;b[V>>1]=T;l=U;return}if((f|0)!=292)ax(e,292);h=e+24|0;i=e+16|0;f=0;h:while(1){g=c[h>>2]|0;c[k>>2]=c[Q>>2];if((c[j>>2]|0)==289)c[R>>2]=cC(e,h)|0;else{c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];c[j>>2]=289}hx(e,g);f=f+1|0;switch(c[R>>2]|0){case 61:{M=243;break h}case 44:break;default:{M=251;break h}}c[k>>2]=c[Q>>2];if((c[j>>2]|0)==289){g=cC(e,h)|0;c[R>>2]=g}else{c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];c[j>>2]=289;g=c[R>>2]|0}if((g|0)!=292){M=234;break}}i:do if((M|0)==234)ax(e,292);else if((M|0)==243){c[k>>2]=c[Q>>2];if((c[j>>2]|0)==289)c[R>>2]=cC(e,h)|0;else{c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];c[j>>2]=289}gx(e,N,0)|0;if((c[R>>2]|0)==44){g=1;do{c[k>>2]=c[Q>>2];if((c[j>>2]|0)==289)c[R>>2]=cC(e,h)|0;else{c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];c[j>>2]=289}PB(c[S>>2]|0,N);gx(e,N,0)|0;g=g+1|0}while((c[R>>2]|0)==44)}else g=1;h=c[N>>2]|0;k=c[S>>2]|0;g=f-g|0;switch(h|0){case 0:{B=g;E=k;M=269;break i}case 14:case 13:break;default:{PB(k,N);B=g;E=k;M=269;break i}}j=g+1|0;j=(j|0)>0?j:0;switch(h|0){case 13:{V=(c[(c[k>>2]|0)+48>>2]|0)+(c[N+8>>2]<<2)|0;c[V>>2]=c[V>>2]&-8372225|(j<<14)+16384&8372224;break}case 14:{V=N+8|0;i=c[k>>2]|0;g=c[i+48>>2]|0;h=g+(c[V>>2]<<2)|0;c[h>>2]=c[h>>2]&8388607|(j<<23)+8388608;V=g+(c[V>>2]<<2)|0;g=k+44|0;h=d[g>>0]|0;c[V>>2]=h<<6|c[V>>2]&-16321;h=h+1|0;i=i+8|0;do if(h>>>0>(d[i>>0]|0)>>>0)if(h>>>0>254)$B(c[k+8>>2]|0,286943);else{v=h&255;a[i>>0]=v;break}else v=h&255;while(0);a[g>>0]=v;break}default:{}}if((j|0)>1){i=k+44|0;g=(d[i>>0]|0)+(j+-1)|0;h=(c[k>>2]|0)+8|0;do if((g|0)>(d[h>>0]|0))if((g|0)>254)$B(c[k+8>>2]|0,286943);else{y=g&255;a[h>>0]=y;break}else y=g&255;while(0);a[i>>0]=y}}else if((M|0)==251){c[N>>2]=0;B=f;E=c[S>>2]|0;M=269}while(0);j:do if((M|0)==269?(B|0)>0:0){g=E+44|0;k=d[g>>0]|0;m=k+B|0;j=c[E>>2]|0;h=j+8|0;do if((m|0)>(d[h>>0]|0))if((m|0)>254)$B(c[E+8>>2]|0,286943);else{z=m&255;a[h>>0]=z;break}else z=m&255;while(0);a[g>>0]=z;i=m+-1|0;g=c[E+16>>2]|0;do if((g|0)>(c[E+20>>2]|0)?(C=(c[j+48>>2]|0)+(g+-1<<2)|0,D=c[C>>2]|0,(D&63|0)==4):0){g=D>>>6&255;h=g+(D>>>23)|0;if(g>>>0>k>>>0|(h+1|0)>>>0<k>>>0?g>>>0<k>>>0|(g|0)>(m|0):0)break;V=g>>>0<k>>>0?g:k;c[C>>2]=((h|0)>(i|0)?h:i)-V<<23|V<<6|D&8372287;break j}while(0);LB(E,k<<6|(B<<23)+-8388608|4)|0}while(0);V=c[S>>2]|0;i=V+42|0;j=(d[i>>0]|0)+f|0;a[i>>0]=j;i=c[V+16>>2]|0;g=c[(c[V>>2]|0)+60>>2]|0;h=c[c[(c[V+8>>2]|0)+68>>2]>>2]|0;j=(c[V+36>>2]|0)+(j&255)|0;do{c[g+((b[h+(j-f<<1)>>1]|0)*12|0)+4>>2]=i;f=f+-1|0}while((f|0)!=0);V=c[S>>2]|0;S=V+42|0;S=a[S>>0]|0;V=V+44|0;a[V>>0]=S;V=c[T>>2]|0;V=V+106|0;T=b[V>>1]|0;T=T+-1<<16>>16;b[V>>1]=T;l=U;return}case 288:{k=e+8|0;c[k>>2]=P;m=e+32|0;if((c[m>>2]|0)==289){f=cC(e,e+24|0)|0;c[R>>2]=f}else{f=e+16|0;c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[m>>2]=289;f=c[R>>2]|0}if((f|0)!=292)ax(e,292);g=e+24|0;o=c[g>>2]|0;c[k>>2]=c[Q>>2];if((c[m>>2]|0)==289)c[R>>2]=cC(e,g)|0;else{V=e+16|0;c[V>>2]=c[m>>2];c[V+4>>2]=c[m+4>>2];c[V+8>>2]=c[m+8>>2];c[V+12>>2]=c[m+12>>2];c[m>>2]=289}h=c[S>>2]|0;s=e+68|0;n=c[s>>2]|0;q=n+24|0;r=h+12|0;f=c[(c[r>>2]|0)+4>>2]|0;p=n+28|0;i=c[p>>2]|0;k:do if((f|0)<(i|0)){j=c[q>>2]|0;while(1){if((c[j+(f<<4)>>2]|0)==(o|0))break;f=f+1|0;if((f|0)>=(i|0))break k}O=h+8|0;V=c[(c[O>>2]|0)+52>>2]|0;N=c[j+(f<<4)+8>>2]|0;c[u>>2]=o+16;c[u+4>>2]=N;V=Zw(V,281012,u)|0;ex(c[O>>2]|0,V)}while(0);if((c[R>>2]|0)!=288)ax(e,288);c[k>>2]=c[Q>>2];if((c[m>>2]|0)==289)c[R>>2]=cC(e,g)|0;else{V=e+16|0;c[V>>2]=c[m>>2];c[V+4>>2]=c[m+4>>2];c[V+8>>2]=c[m+8>>2];c[V+12>>2]=c[m+12>>2];c[m>>2]=289}g=c[h+16>>2]|0;h=c[p>>2]|0;f=n+32|0;if((h|0)<(c[f>>2]|0))f=c[q>>2]|0;else{f=Uw(c[T>>2]|0,c[q>>2]|0,f,16,32767,280643)|0;c[q>>2]=f}c[f+(h<<4)>>2]=o;c[f+(h<<4)+8>>2]=P;a[f+(h<<4)+12>>0]=a[(c[S>>2]|0)+42>>0]|0;c[f+(h<<4)+4>>2]=g;c[p>>2]=h+1;l:while(1){switch(c[R>>2]|0){case 289:case 262:case 261:case 260:{M=309;break l}case 288:case 59:break;default:{M=308;break l}}$w(e)}if((M|0)==308)f=c[q>>2]|0;else if((M|0)==309){f=c[q>>2]|0;a[f+(h<<4)+12>>0]=a[(c[r>>2]|0)+12>>0]|0}k=f+(h<<4)|0;f=c[s>>2]|0;h=c[(c[(c[S>>2]|0)+12>>2]|0)+8>>2]|0;j=f+16|0;g=c[j>>2]|0;if((h|0)>=(g|0)){V=c[S>>2]|0;S=V+42|0;S=a[S>>0]|0;V=V+44|0;a[V>>0]=S;V=c[T>>2]|0;V=V+106|0;T=b[V>>1]|0;T=T+-1<<16>>16;b[V>>1]=T;l=U;return}i=f+12|0;f=g;m:while(1){while(1){if((c[(c[i>>2]|0)+(h<<4)>>2]|0)!=(c[k>>2]|0))break;dx(e,h,k);f=c[j>>2]|0;if((h|0)>=(f|0)){M=360;break m}}h=h+1|0;if((h|0)>=(f|0)){M=360;break}}if((M|0)==360){V=c[S>>2]|0;S=V+42|0;S=a[S>>0]|0;V=V+44|0;a[V>>0]=S;V=c[T>>2]|0;V=V+106|0;T=b[V>>1]|0;T=T+-1<<16>>16;b[V>>1]=T;l=U;return}break}case 274:{n=e+8|0;c[n>>2]=P;m=e+32|0;if((c[m>>2]|0)==289){f=cC(e,e+24|0)|0;c[R>>2]=f;k=c[S>>2]|0}else{k=e+16|0;c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2];c[m>>2]=289;k=O;f=c[R>>2]|0}n:do switch(f|0){case 59:case 277:case 289:case 262:case 261:case 260:{g=0;f=0;break}default:{gx(e,N,0)|0;if((c[R>>2]|0)==44){g=e+24|0;h=e+16|0;f=1;do{c[n>>2]=c[Q>>2];if((c[m>>2]|0)==289)c[R>>2]=cC(e,g)|0;else{c[h>>2]=c[m>>2];c[h+4>>2]=c[m+4>>2];c[h+8>>2]=c[m+8>>2];c[h+12>>2]=c[m+12>>2];c[m>>2]=289}PB(c[S>>2]|0,N);gx(e,N,0)|0;f=f+1|0}while((c[R>>2]|0)==44)}else f=1;g=c[N>>2]|0;if((g+-13|0)>>>0>=2)if((f|0)==1){g=SB(k,N)|0;f=1;break n}else{PB(k,N);g=d[k+42>>0]|0;break n}switch(g|0){case 13:{M=(c[(c[k>>2]|0)+48>>2]|0)+(c[N+8>>2]<<2)|0;c[M>>2]=c[M>>2]&-8372225;M=335;break}case 14:{V=N+8|0;j=c[k>>2]|0;h=c[j+48>>2]|0;i=h+(c[V>>2]<<2)|0;c[i>>2]=c[i>>2]&8388607;V=h+(c[V>>2]<<2)|0;h=k+44|0;i=d[h>>0]|0;c[V>>2]=i<<6|c[V>>2]&-16321;i=i+1|0;j=j+8|0;do if(i>>>0>(d[j>>0]|0)>>>0)if(i>>>0>254)$B(c[k+8>>2]|0,286943);else{r=i&255;a[j>>0]=r;break}else r=i&255;while(0);a[h>>0]=r;break}default:M=335}if((M|0)==335?(f|0)==1&(g|0)==13:0){V=(c[(c[k>>2]|0)+48>>2]|0)+(c[N+8>>2]<<2)|0;c[V>>2]=c[V>>2]&-64|37}g=d[k+42>>0]|0;f=-1}}while(0);LB(k,g<<6|(f<<23)+8388608|38)|0;do if((c[R>>2]|0)==59){c[n>>2]=c[Q>>2];if((c[m>>2]|0)==289){c[R>>2]=cC(e,e+24|0)|0;break}else{V=e+16|0;c[V>>2]=c[m>>2];c[V+4>>2]=c[m+4>>2];c[V+8>>2]=c[m+8>>2];c[V+12>>2]=c[m+12>>2];c[m>>2]=289;break}}while(0);V=c[S>>2]|0;S=V+42|0;S=a[S>>0]|0;V=V+44|0;a[V>>0]=S;V=c[T>>2]|0;V=V+106|0;T=b[V>>1]|0;T=T+-1<<16>>16;b[V>>1]=T;l=U;return}case 266:case 258:{j=O+24|0;g=c[j>>2]|0;c[j>>2]=-1;j=LB(O,2147450910)|0;do if((g|0)!=-1)if((j|0)!=-1){h=c[(c[O>>2]|0)+48>>2]|0;i=j;while(1){k=h+(i<<2)|0;m=c[k>>2]|0;f=(m>>>14)+-131071|0;f=(f|0)==-1?-1:i+1+f|0;if((f|0)==-1)break;else i=f}f=g+~i|0;if((((f|0)>-1?f:0-f|0)|0)>131071)$B(c[O+8>>2]|0,286908);else{c[k>>2]=(f<<14)+2147467264|m&16383;o=j;break}}else o=g;else o=j;while(0);mx(e,o);V=c[S>>2]|0;S=V+42|0;S=a[S>>0]|0;V=V+44|0;a[V>>0]=S;V=c[T>>2]|0;V=V+106|0;T=b[V>>1]|0;T=T+-1<<16>>16;b[V>>1]=T;l=U;return}default:{f=N+8|0;nx(e,f);o:do switch(c[R>>2]|0){case 44:case 61:{c[N>>2]=0;ox(e,N,1);break}default:if((c[f>>2]|0)==13){V=(c[(c[O>>2]|0)+48>>2]|0)+(c[N+16>>2]<<2)|0;c[V>>2]=c[V>>2]&-8372225|16384;break o}else $B(e,281050)}while(0);V=c[S>>2]|0;S=V+42|0;S=a[S>>0]|0;V=V+44|0;a[V>>0]=S;V=c[T>>2]|0;V=V+106|0;T=b[V>>1]|0;T=T+-1<<16>>16;b[V>>1]=T;l=U;return}}while(0)}function ax(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=c[a+52>>2]|0;c[d>>2]=_B(a,b)|0;$B(a,Zw(e,280790,d)|0)}function bx(e){e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;x=c[e+52>>2]|0;v=e+48|0;w=c[v>>2]|0;t=c[w>>2]|0;LB(w,8388646)|0;cx(w);o=w+16|0;e=c[o>>2]|0;if((e+1|0)>>>0>1073741823)Vw(x);l=t+48|0;g=c[l>>2]|0;m=t+20|0;k=c[m>>2]<<2;h=e<<2;u=x+12|0;i=c[u>>2]|0;j=(g|0)!=0;e=i+4|0;f=jg[c[i>>2]&31](c[e>>2]|0,g,k,h)|0;if((h|0)!=0&(f|0)==0){if(!(c[i+140>>2]|0))qw(x,4);Tw(x,1);e=jg[c[i>>2]&31](c[e>>2]|0,g,k,h)|0;if(!e)qw(x,4);else n=e}else n=f;e=i+12|0;c[e>>2]=(j?0-k|0:0)+h+(c[e>>2]|0);c[l>>2]=n;e=c[o>>2]|0;c[m>>2]=e;if((e+1|0)>>>0>1073741823)Vw(x);k=t+56|0;g=c[k>>2]|0;l=t+24|0;m=c[l>>2]<<2;h=e<<2;i=c[u>>2]|0;j=(g|0)!=0;e=i+4|0;f=jg[c[i>>2]&31](c[e>>2]|0,g,m,h)|0;if((h|0)!=0&(f|0)==0){if(!(c[i+140>>2]|0))qw(x,4);Tw(x,1);e=jg[c[i>>2]&31](c[e>>2]|0,g,m,h)|0;if(!e)qw(x,4);else p=e}else p=f;e=i+12|0;c[e>>2]=(j?0-m|0:0)+h+(c[e>>2]|0);c[k>>2]=p;c[l>>2]=c[o>>2];k=w+28|0;e=c[k>>2]|0;if((e+1|0)>>>0>268435455)Vw(x);l=t+44|0;g=c[l>>2]|0;m=t+16|0;n=c[m>>2]<<4;h=e<<4;i=c[u>>2]|0;j=(g|0)!=0;e=i+4|0;f=jg[c[i>>2]&31](c[e>>2]|0,g,n,h)|0;if((h|0)!=0&(f|0)==0){if(!(c[i+140>>2]|0))qw(x,4);Tw(x,1);e=jg[c[i>>2]&31](c[e>>2]|0,g,n,h)|0;if(!e)qw(x,4);else q=e}else q=f;e=i+12|0;c[e>>2]=(j?0-n|0:0)+h+(c[e>>2]|0);c[l>>2]=q;c[m>>2]=c[k>>2];m=w+32|0;e=c[m>>2]|0;if((e+1|0)>>>0>1073741823)Vw(x);n=t+52|0;j=c[n>>2]|0;k=t+28|0;l=c[k>>2]<<2;g=e<<2;h=c[u>>2]|0;i=(j|0)!=0;e=h+4|0;f=jg[c[h>>2]&31](c[e>>2]|0,j,l,g)|0;if((g|0)!=0&(f|0)==0){if(!(c[h+140>>2]|0))qw(x,4);Tw(x,1);e=jg[c[h>>2]&31](c[e>>2]|0,j,l,g)|0;if(!e)qw(x,4);else r=e}else r=f;h=h+12|0;c[h>>2]=(i?0-l|0:0)+g+(c[h>>2]|0);c[n>>2]=r;c[k>>2]=c[m>>2];h=t+60|0;e=c[h>>2]|0;i=t+32|0;j=(c[i>>2]|0)*12|0;k=w+40|0;r=b[k>>1]|0;l=(r<<16>>16)*12|0;m=c[u>>2]|0;n=(e|0)!=0;f=m+4|0;g=jg[c[m>>2]&31](c[f>>2]|0,e,j,l)|0;if(r<<16>>16!=0&(g|0)==0){if(!(c[m+140>>2]|0))qw(x,4);Tw(x,1);e=jg[c[m>>2]&31](c[f>>2]|0,e,j,l)|0;if(!e)qw(x,4);else s=e}else s=g;g=m+12|0;c[g>>2]=(n?0-j|0:0)+l+(c[g>>2]|0);c[h>>2]=s;c[i>>2]=b[k>>1];n=t+64|0;g=c[n>>2]|0;h=t+12|0;i=c[h>>2]<<3;j=w+43|0;t=a[j>>0]|0;k=(t&255)<<3;l=c[u>>2]|0;m=(g|0)!=0;e=l+4|0;f=jg[c[l>>2]&31](c[e>>2]|0,g,i,k)|0;if(t<<24>>24!=0&(f|0)==0){if(!(c[l+140>>2]|0))qw(x,4);Tw(x,1);e=jg[c[l>>2]&31](c[e>>2]|0,g,i,k)|0;if(!e)qw(x,4);else y=e}else y=f;t=l+12|0;c[t>>2]=(m?0-i|0:0)+k+(c[t>>2]|0);c[n>>2]=y;c[h>>2]=d[j>>0];c[v>>2]=c[w+4>>2];if((c[(c[u>>2]|0)+12>>2]|0)<=0)return;Sw(x);return}function cx(e){e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=l;l=l+16|0;u=z;r=e+12|0;v=c[r>>2]|0;x=e+8|0;s=c[x>>2]|0;do if(c[v>>2]|0?a[v+13>>0]|0:0){o=e+24|0;g=c[o>>2]|0;c[o>>2]=-1;j=LB(e,2147450910)|0;do if((g|0)!=-1)if((j|0)!=-1){h=c[(c[e>>2]|0)+48>>2]|0;i=j;while(1){k=h+(i<<2)|0;m=c[k>>2]|0;f=(m>>>14)+-131071|0;f=(f|0)==-1?-1:i+1+f|0;if((f|0)==-1)break;else i=f}f=g+~i|0;if((((f|0)>-1?f:0-f|0)|0)>131071)$B(c[x>>2]|0,286908);else{c[k>>2]=(f<<14)+2147467264|m&16383;n=10;break}}else p=g;else n=10;while(0);if((n|0)==10)if((j|0)==-1){c[e+20>>2]=c[e+16>>2];break}else p=j;j=c[(c[e>>2]|0)+48>>2]|0;g=(d[v+12>>0]<<6)+64&16320;f=p;do{q=j+(f<<2)|0;n=c[q>>2]|0;t=(n>>>14)+-131071|0;c[q>>2]=n&-16321|g;f=(t|0)==-1?-1:f+1+t|0}while((f|0)!=-1);c[e+20>>2]=c[e+16>>2];if((p|0)!=-1){f=c[o>>2]|0;if((f|0)==-1){c[o>>2]=p;break}while(1){h=j+(f<<2)|0;i=c[h>>2]|0;g=(i>>>14)+-131071|0;g=(g|0)==-1?-1:f+1+g|0;if((g|0)==-1)break;else f=g}f=p+~f|0;if((((f|0)>-1?f:0-f|0)|0)>131071)$B(c[x>>2]|0,286908);else{c[h>>2]=(f<<14)+2147467264|i&16383;break}}}while(0);a:do if(a[v+14>>0]|0){n=s+52|0;f=c[n>>2]|0;g=(c[f+12>>2]|0)+280+(((287288>>>0)%127|0)<<2)|0;h=c[g>>2]|0;if(JN(287288,h+16|0)|0){h=xx(f,287288,5)|0;c[g>>2]=h}m=s+68|0;j=c[m>>2]|0;g=j+24|0;k=s+48|0;f=c[k>>2]|0;o=c[f+16>>2]|0;p=j+28|0;q=c[p>>2]|0;i=j+32|0;if((q|0)<(c[i>>2]|0))g=c[g>>2]|0;else{f=Uw(c[n>>2]|0,c[g>>2]|0,i,16,32767,280643)|0;c[g>>2]=f;g=f;f=c[k>>2]|0;j=c[m>>2]|0}c[g+(q<<4)>>2]=h;c[g+(q<<4)+8>>2]=0;a[g+(q<<4)+12>>0]=a[f+42>>0]|0;c[g+(q<<4)+4>>2]=o;c[p>>2]=q+1;k=(c[j+24>>2]|0)+(q<<4)|0;g=c[(c[f+12>>2]|0)+8>>2]|0;i=j+16|0;f=c[i>>2]|0;if((g|0)<(f|0)){h=j+12|0;do{while(1){if((c[(c[h>>2]|0)+(g<<4)>>2]|0)!=(c[k>>2]|0))break;dx(s,g,k);f=c[i>>2]|0;if((g|0)>=(f|0))break a}g=g+1|0}while((g|0)<(f|0))}}while(0);o=c[v>>2]|0;c[r>>2]=o;t=v+12|0;j=a[t>>0]|0;n=e+42|0;f=a[n>>0]|0;g=f&255;p=c[(c[x>>2]|0)+68>>2]|0;r=p+4|0;c[r>>2]=(j&255)-g+(c[r>>2]|0);if((j&255)<(f&255)){h=c[e+16>>2]|0;m=c[e+36>>2]|0;i=c[(c[e>>2]|0)+60>>2]|0;k=c[p>>2]|0;f=g;while(1){r=(f&255)+-1<<24>>24;c[i+((b[k+((r&255)+m<<1)>>1]|0)*12|0)+8>>2]=h;if((r&255)>(j&255))f=f+-1|0;else break}a[n>>0]=j;f=j}a[e+44>>0]=f;f=c[s+68>>2]|0;c[f+28>>2]=c[v+4>>2];h=c[v+8>>2]|0;if(!o){if((h|0)>=(c[f+16>>2]|0)){l=z;return}f=c[f+12>>2]|0;g=c[f+(h<<4)>>2]|0;if((a[g+4>>0]|0)!=4){r=280690;q=s+52|0;q=c[q>>2]|0;o=g+16|0;n=f+(h<<4)+8|0;n=c[n>>2]|0;c[u>>2]=o;o=u+4|0;c[o>>2]=n;r=Zw(q,r,u)|0;ex(s,r)}r=a[g+6>>0]|0?280656:280690;q=s+52|0;q=c[q>>2]|0;o=g+16|0;n=f+(h<<4)+8|0;n=c[n>>2]|0;c[u>>2]=o;o=u+4|0;c[o>>2]=n;u=Zw(q,r,u)|0;ex(s,u)}s=p+16|0;if((h|0)>=(c[s>>2]|0)){l=z;return}r=p+12|0;q=v+13|0;p=h;while(1){f=c[r>>2]|0;i=f+(p<<4)+12|0;g=j&255;if((d[i>>0]|0)>(j&255)){if(a[q>>0]|0?(w=c[f+(p<<4)+4>>2]|0,(w|0)!=-1):0){h=c[(c[e>>2]|0)+48>>2]|0;g=(g<<6)+64&16320;f=w;do{u=h+(f<<2)|0;o=c[u>>2]|0;v=(o>>>14)+-131071|0;c[u>>2]=o&-16321|g;f=(v|0)==-1?-1:f+1+v|0}while((f|0)!=-1)}a[i>>0]=j}o=c[x>>2]|0;k=c[o+48>>2]|0;f=c[o+68>>2]|0;m=c[f+12>>2]|0;g=c[(c[k+12>>2]|0)+4>>2]|0;j=c[f+28>>2]|0;b:do if((g|0)<(j|0)){h=c[f+24>>2]|0;i=c[m+(p<<4)>>2]|0;f=g;while(1){n=h+(f<<4)|0;if((c[n>>2]|0)==(i|0))break;f=f+1|0;if((f|0)>=(j|0)){f=1;break b}}f=a[h+(f<<4)+12>>0]|0;if((d[m+(p<<4)+12>>0]|0)>(f&255)?(y=c[m+(p<<4)+4>>2]|0,(y|0)!=-1):0){h=c[(c[k>>2]|0)+48>>2]|0;g=((f&255)<<6)+64&16320;f=y;do{u=h+(f<<2)|0;m=c[u>>2]|0;v=(m>>>14)+-131071|0;c[u>>2]=m&-16321|g;f=(v|0)==-1?-1:f+1+v|0}while((f|0)!=-1)}dx(o,p,n);f=0}else f=1;while(0);f=f+p|0;if((f|0)>=(c[s>>2]|0))break;j=a[t>>0]|0;p=f}l=z;return}function dx(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;o=l;l=l+16|0;m=o;h=c[e+48>>2]|0;i=c[e+68>>2]|0;n=i+12|0;j=c[n>>2]|0;k=a[j+(f<<4)+12>>0]|0;if((k&255)<(d[g+12>>0]|0)){p=c[e+52>>2]|0;q=c[j+(f<<4)+8>>2]|0;k=(c[(c[(c[h>>2]|0)+60>>2]|0)+((b[(c[c[(c[h+8>>2]|0)+68>>2]>>2]|0)+((c[h+36>>2]|0)+(k&255)<<1)>>1]|0)*12|0)>>2]|0)+16|0;c[m>>2]=(c[j+(f<<4)>>2]|0)+16;c[m+4>>2]=q;c[m+8>>2]=k;ex(e,Zw(p,280734,m)|0)}MB(h,c[j+(f<<4)+4>>2]|0,c[g+4>>2]|0);i=i+16|0;h=(c[i>>2]|0)+-1|0;if((h|0)<=(f|0)){q=h;c[i>>2]=q;l=o;return}do{q=c[n>>2]|0;h=q+(f<<4)|0;f=f+1|0;q=q+(f<<4)|0;c[h>>2]=c[q>>2];c[h+4>>2]=c[q+4>>2];c[h+8>>2]=c[q+8>>2];c[h+12>>2]=c[q+12>>2];h=(c[i>>2]|0)+-1|0}while((f|0)<(h|0));c[i>>2]=h;l=o;return}function ex(a,b){a=a|0;b=b|0;c[a+16>>2]=0;$B(a,b)}function fx(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;i=s+24|0;j=s;h=b+48|0;r=c[h>>2]|0;e=b+4|0;f=b+8|0;c[f>>2]=c[e>>2];g=b+32|0;if((c[g>>2]|0)==289){n=b+16|0;c[n>>2]=cC(b,b+24|0)|0}else{n=b+16|0;c[n>>2]=c[g>>2];c[n+4>>2]=c[g+4>>2];c[n+8>>2]=c[g+8>>2];c[n+12>>2]=c[g+12>>2];c[g>>2]=289;n=b+16|0}gx(b,j,0)|0;if((c[n>>2]|0)!=275)ax(b,275);c[f>>2]=c[e>>2];if((c[g>>2]|0)==289){e=cC(b,b+24|0)|0;c[n>>2]=e}else{e=b+16|0;c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];c[e+8>>2]=c[g+8>>2];c[e+12>>2]=c[g+12>>2];c[g>>2]=289;e=c[n>>2]|0}a:do switch(e|0){case 258:case 266:{WB(c[h>>2]|0,j);a[i+14>>0]=0;a[i+12>>0]=a[r+42>>0]|0;m=r+8|0;k=c[(c[m>>2]|0)+68>>2]|0;c[i+4>>2]=c[k+28>>2];c[i+8>>2]=c[k+16>>2];a[i+13>>0]=0;k=r+12|0;c[i>>2]=c[k>>2];c[k>>2]=i;mx(b,c[j+16>>2]|0);b:while(1){switch(c[n>>2]|0){case 289:case 262:case 261:case 260:{o=13;break b}case 288:case 59:break;default:break b}$w(b)}if((o|0)==13){cx(r);l=s;return}i=r+24|0;f=c[i>>2]|0;c[i>>2]=-1;i=LB(r,2147450910)|0;if((f|0)!=-1)if((i|0)!=-1){g=c[(c[r>>2]|0)+48>>2]|0;h=i;while(1){j=g+(h<<2)|0;k=c[j>>2]|0;e=(k>>>14)+-131071|0;e=(e|0)==-1?-1:h+1+e|0;if((e|0)==-1)break;else h=e}e=f+~h|0;if((((e|0)>-1?e:0-e|0)|0)>131071)$B(c[m>>2]|0,286908);else{c[j>>2]=(e<<14)+2147467264|k&16383;q=i;break a}}else q=f;else q=i;break}default:{VB(c[h>>2]|0,j);a[i+14>>0]=0;a[i+12>>0]=a[r+42>>0]|0;q=c[(c[r+8>>2]|0)+68>>2]|0;c[i+4>>2]=c[q+28>>2];c[i+8>>2]=c[q+16>>2];a[i+13>>0]=0;q=r+12|0;c[i>>2]=c[q>>2];c[q>>2]=i;q=c[j+20>>2]|0}}while(0);c:do{e=c[n>>2]|0;switch(e|0){case 277:case 289:case 262:case 261:case 260:break c;default:{}}$w(b)}while((e|0)!=274);cx(r);m=r+24|0;do if((c[n>>2]&-2|0)==260){f=c[m>>2]|0;c[m>>2]=-1;i=LB(r,2147450910)|0;do if((f|0)!=-1)if((i|0)!=-1){g=c[(c[r>>2]|0)+48>>2]|0;h=i;while(1){j=g+(h<<2)|0;k=c[j>>2]|0;e=(k>>>14)+-131071|0;e=(e|0)==-1?-1:h+1+e|0;if((e|0)==-1)break;else h=e}e=f+~h|0;if((((e|0)>-1?e:0-e|0)|0)>131071)$B(c[r+8>>2]|0,286908);else{c[j>>2]=(e<<14)+2147467264|k&16383;o=33;break}}else p=f;else o=33;while(0);if((o|0)==33)if((i|0)==-1)break;else p=i;e=c[d>>2]|0;if((e|0)==-1){c[d>>2]=p;break}i=c[(c[r>>2]|0)+48>>2]|0;while(1){g=i+(e<<2)|0;h=c[g>>2]|0;f=(h>>>14)+-131071|0;f=(f|0)==-1?-1:e+1+f|0;if((f|0)==-1)break;else e=f}e=p+~e|0;if((((e|0)>-1?e:0-e|0)|0)>131071)$B(c[r+8>>2]|0,286908);else{c[g>>2]=h&16383|(e<<14)+2147467264;break}}while(0);c[r+20>>2]=c[r+16>>2];if((q|0)==-1){l=s;return}e=c[m>>2]|0;if((e|0)==-1){c[m>>2]=q;l=s;return}i=c[(c[r>>2]|0)+48>>2]|0;while(1){g=i+(e<<2)|0;h=c[g>>2]|0;f=(h>>>14)+-131071|0;f=(f|0)==-1?-1:e+1+f|0;if((f|0)==-1)break;else e=f}e=q+~e|0;if((((e|0)>-1?e:0-e|0)|0)>131071)$B(c[r+8>>2]|0,286908);c[g>>2]=(e<<14)+2147467264|h&16383;l=s;return}function gx(e,f,g){e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;L=l;l=l+80|0;p=L+56|0;o=L+48|0;s=L+24|0;J=L;I=e+48|0;r=c[I>>2]|0;K=e+52|0;B=(c[K>>2]|0)+106|0;D=(b[B>>1]|0)+1<<16>>16;b[B>>1]=D;if((D&65535)>200){m=r+8|0;n=c[(c[m>>2]|0)+52>>2]|0;k=c[(c[r>>2]|0)+36>>2]|0;if(!k){B=280822;c[p>>2]=280868;D=p+4|0;c[D>>2]=200;D=p+8|0;c[D>>2]=B;D=Zw(n,280836,p)|0;B=c[m>>2]|0;$B(B,D)}c[o>>2]=k;B=Zw(n,280802,o)|0;c[p>>2]=280868;D=p+4|0;c[D>>2]=200;D=p+8|0;c[D>>2]=B;D=Zw(n,280836,p)|0;B=c[m>>2]|0;$B(B,D)}D=e+16|0;a:do switch(c[D>>2]|0){case 271:{m=2;C=9;break}case 45:{m=0;C=9;break}case 126:{m=1;C=9;break}case 35:{m=3;C=9;break}case 290:{c[f+16>>2]=-1;c[f+20>>2]=-1;c[f>>2]=5;c[f+8>>2]=0;h[f+8>>3]=+h[e+24>>3];C=65;break}case 291:{c[f+16>>2]=-1;c[f+20>>2]=-1;c[f>>2]=6;C=f+8|0;c[C>>2]=0;A=e+24|0;B=c[A+4>>2]|0;c[C>>2]=c[A>>2];c[C+4>>2]=B;C=65;break}case 293:{C=c[e+24>>2]|0;c[s>>2]=C;c[s+8>>2]=(a[C+4>>0]|64)&255;C=NB(r,s,s)|0;c[f+16>>2]=-1;c[f+20>>2]=-1;c[f>>2]=4;c[f+8>>2]=C;C=65;break}case 270:{c[f+16>>2]=-1;c[f+20>>2]=-1;c[f>>2]=1;c[f+8>>2]=0;C=65;break}case 276:{c[f+16>>2]=-1;c[f+20>>2]=-1;c[f>>2]=2;c[f+8>>2]=0;C=65;break}case 263:{c[f+16>>2]=-1;c[f+20>>2]=-1;c[f>>2]=3;c[f+8>>2]=0;C=65;break}case 281:{if(!(a[(c[r>>2]|0)+7>>0]|0))$B(e,281165);else{C=LB(r,8388653)|0;c[f+16>>2]=-1;c[f+20>>2]=-1;c[f>>2]=14;c[f+8>>2]=C;C=65;break a}break}case 123:{qx(e,f);C=68;break}case 265:{j=e+4|0;i=c[j>>2]|0;c[e+8>>2]=i;k=e+32|0;if((c[k>>2]|0)==289){c[D>>2]=cC(e,e+24|0)|0;i=c[j>>2]|0}else{C=e+16|0;c[C>>2]=c[k>>2];c[C+4>>2]=c[k+4>>2];c[C+8>>2]=c[k+8>>2];c[C+12>>2]=c[k+12>>2];c[k>>2]=289}lx(e,f,0,i);C=68;break}default:{nx(e,f);C=68}}while(0);do if((C|0)==9){n=c[e+4>>2]|0;c[e+8>>2]=n;k=e+32|0;if((c[k>>2]|0)==289)c[D>>2]=cC(e,e+24|0)|0;else{B=e+16|0;c[B>>2]=c[k>>2];c[B+4>>2]=c[k+4>>2];c[B+8>>2]=c[k+8>>2];c[B+12>>2]=c[k+12>>2];c[k>>2]=289}gx(e,f,12)|0;p=c[I>>2]|0;c[s+20>>2]=-1;c[s+16>>2]=-1;c[s>>2]=6;B=s+8|0;c[B>>2]=0;c[B+4>>2]=0;if((m|0)==2){OB(p,f);switch(c[f>>2]|0){case 3:case 1:{c[f>>2]=2;break}case 2:case 6:case 5:case 4:{c[f>>2]=3;break}case 11:{m=c[(c[p>>2]|0)+48>>2]|0;k=c[f+8>>2]|0;n=m+(k<<2)|0;if(!((k|0)>0?(j=m+(k+-1<<2)|0,i=c[j>>2]|0,((i&63)+-31|0)>>>0<5):0)){j=n;i=c[n>>2]|0}c[j>>2]=((i&16320|0)==0&1)<<6|i&-16321;break}case 7:{C=28;break}case 12:{i=p+44|0;j=(d[i>>0]|0)+1|0;k=(c[p>>2]|0)+8|0;do if(j>>>0>(d[k>>0]|0)>>>0)if(j>>>0>254)$B(c[p+8>>2]|0,286943);else{t=j&255;a[k>>0]=t;break}else t=j&255;while(0);a[i>>0]=t;RB(p,f,(t&255)+-1|0);if((c[f>>2]|0)==7)C=28;else{j=f+8|0;i=j;j=c[j>>2]|0;C=31}break}default:{}}if((C|0)==28){i=f+8|0;j=c[i>>2]|0;if((j&256|0)==0?(d[p+42>>0]|0)<=(j|0):0){C=p+44|0;a[C>>0]=(a[C>>0]|0)+-1<<24>>24;C=31}else C=31}if((C|0)==31){c[i>>2]=LB(p,j<<23|27)|0;c[f>>2]=12}C=f+20|0;i=c[C>>2]|0;o=f+16|0;j=c[o>>2]|0;c[C>>2]=j;c[o>>2]=i;if((j|0)!=-1){n=c[(c[p>>2]|0)+48>>2]|0;do{k=n+(j<<2)|0;if((j|0)>0?(u=n+(j+-1<<2)|0,v=c[u>>2]|0,((v&63)+-31|0)>>>0<5):0){i=u;m=v}else{i=k;m=c[k>>2]|0}if((m&63|0)==35)c[i>>2]=m&8372224|m>>>23<<6|34;C=((c[k>>2]|0)>>>14)+-131071|0;j=(C|0)==-1?-1:j+1+C|0}while((j|0)!=-1);i=c[o>>2]|0}if((i|0)!=-1){n=c[(c[p>>2]|0)+48>>2]|0;do{k=n+(i<<2)|0;if((i|0)>0?(w=n+(i+-1<<2)|0,x=c[w>>2]|0,((x&63)+-31|0)>>>0<5):0){j=w;m=x}else{j=k;m=c[k>>2]|0}if((m&63|0)==35)c[j>>2]=m&8372224|m>>>23<<6|34;C=((c[k>>2]|0)>>>14)+-131071|0;i=(C|0)==-1?-1:i+1+C|0}while((i|0)!=-1)}}else XB(p,m+25|0,f,s,n);C=68}else if((C|0)==65){c[e+8>>2]=c[e+4>>2];i=e+32|0;if((c[i>>2]|0)==289){q=cC(e,e+24|0)|0;c[D>>2]=q;break}else{C=e+16|0;c[C>>2]=c[i>>2];c[C+4>>2]=c[i+4>>2];c[C+8>>2]=c[i+8>>2];c[C+12>>2]=c[i+12>>2];c[i>>2]=289;C=68;break}}while(0);if((C|0)==68)q=c[D>>2]|0;do switch(q|0){case 43:{i=0;break}case 45:{i=1;break}case 42:{i=2;break}case 37:{i=3;break}case 94:{i=4;break}case 47:{i=5;break}case 279:{i=6;break}case 38:{i=7;break}case 124:{i=8;break}case 126:{i=9;break}case 286:{i=10;break}case 287:{i=11;break}case 280:{i=12;break}case 285:{i=16;break}case 282:{i=13;break}case 60:{i=14;break}case 284:{i=15;break}case 62:{i=17;break}case 283:{i=18;break}case 257:{i=19;break}case 272:{i=20;break}default:{J=21;K=c[K>>2]|0;K=K+106|0;f=b[K>>1]|0;f=f+-1<<16>>16;b[K>>1]=f;l=L;return J|0}}while(0);r=e+4|0;s=e+8|0;t=e+32|0;u=e+24|0;v=J+20|0;w=f+20|0;x=J+16|0;y=f+16|0;z=J+8|0;A=f+8|0;B=e+16|0;b:while(1){if((d[281208+(i<<1)>>0]|0)<=(g|0)){C=155;break}o=c[r>>2]|0;c[s>>2]=o;if((c[t>>2]|0)==289)c[D>>2]=cC(e,u)|0;else{c[B>>2]=c[t>>2];c[B+4>>2]=c[t+4>>2];c[B+8>>2]=c[t+8>>2];c[B+12>>2]=c[t+12>>2];c[t>>2]=289}m=c[I>>2]|0;c:do switch(i|0){case 19:{VB(m,f);i=gx(e,J,2)|0;j=c[I>>2]|0;C=114;break}case 20:{WB(m,f);i=gx(e,J,1)|0;j=c[I>>2]|0;C=123;break}case 12:{OB(m,f);if(((c[f>>2]|0)==7?(E=c[A>>2]|0,(E&256|0)==0):0)?(d[m+42>>0]|0)<=(E|0):0){C=m+44|0;a[C>>0]=(a[C>>0]|0)+-1<<24>>24}k=m+44|0;i=(d[k>>0]|0)+1|0;j=(c[m>>2]|0)+8|0;if(i>>>0>(d[j>>0]|0)>>>0){if(i>>>0>254){C=105;break b}i=i&255;a[j>>0]=i}else i=i&255;a[k>>0]=i;QB(m,f,(i&255)+-1|0);i=gx(e,J,8)|0;n=c[I>>2]|0;C=132;break}case 11:case 10:case 9:case 8:case 7:case 4:case 3:case 6:case 5:case 2:case 1:case 0:{if(((c[y>>2]|0)==-1?(c[w>>2]|0)==-1:0)?((c[f>>2]|0)+-5|0)>>>0<2:0){C=113;break c}TB(m,f)|0;C=113;break}default:{TB(m,f)|0;C=113}}while(0);d:do if((C|0)==113){C=0;k=gx(e,J,d[281208+(i<<1)+1>>0]|0)|0;j=c[I>>2]|0;switch(i|0){case 19:{i=k;C=114;break d}case 20:{i=k;C=123;break d}case 12:{n=j;i=k;C=132;break d}case 11:case 10:case 9:case 8:case 7:case 4:case 3:case 6:case 5:case 2:case 1:case 0:{XB(j,i+13|0,f,J,o);i=k;break d}case 15:case 14:case 13:{YB(j,i+18|0,1,f,J);i=k;break d}case 18:case 17:case 16:{YB(j,i+15|0,0,f,J);i=k;break d}default:{i=k;break d}}}while(0);do if((C|0)==114){OB(j,J);n=c[w>>2]|0;do if((n|0)!=-1){k=c[v>>2]|0;if((k|0)==-1){c[v>>2]=n;break}q=c[(c[j>>2]|0)+48>>2]|0;while(1){o=q+(k<<2)|0;p=c[o>>2]|0;m=(p>>>14)+-131071|0;m=(m|0)==-1?-1:k+1+m|0;if((m|0)==-1)break;else k=m}k=n+~k|0;if((((k|0)>-1?k:0-k|0)|0)>131071){C=120;break b}c[o>>2]=(k<<14)+2147467264|p&16383}while(0);c[f>>2]=c[J>>2];c[f+4>>2]=c[J+4>>2];c[f+8>>2]=c[J+8>>2];c[f+12>>2]=c[J+12>>2];c[f+16>>2]=c[J+16>>2];c[f+20>>2]=c[J+20>>2]}else if((C|0)==123){OB(j,J);n=c[y>>2]|0;do if((n|0)!=-1){k=c[x>>2]|0;if((k|0)==-1){c[x>>2]=n;break}q=c[(c[j>>2]|0)+48>>2]|0;while(1){o=q+(k<<2)|0;p=c[o>>2]|0;m=(p>>>14)+-131071|0;m=(m|0)==-1?-1:k+1+m|0;if((m|0)==-1)break;else k=m}k=n+~k|0;if((((k|0)>-1?k:0-k|0)|0)>131071){C=129;break b}c[o>>2]=(k<<14)+2147467264|p&16383}while(0);c[f>>2]=c[J>>2];c[f+4>>2]=c[J+4>>2];c[f+8>>2]=c[J+8>>2];c[f+12>>2]=c[J+12>>2];c[f+16>>2]=c[J+16>>2];c[f+20>>2]=c[J+20>>2]}else if((C|0)==132){if((c[x>>2]|0)==(c[v>>2]|0))OB(n,J);else SB(n,J)|0;if((c[J>>2]|0)==12?(F=(c[(c[n>>2]|0)+48>>2]|0)+(c[z>>2]<<2)|0,G=c[F>>2]|0,(G&63|0)==29):0){j=c[A>>2]|0;if((c[f>>2]|0)==7&(j&256|0)==0?(d[n+42>>0]|0)<=(j|0):0){C=n+44|0;a[C>>0]=(a[C>>0]|0)+-1<<24>>24}c[F>>2]=j<<23|G&8388607;c[f>>2]=12;c[A>>2]=c[z>>2];break}OB(n,J);if(((c[J>>2]|0)==7?(H=c[z>>2]|0,(H&256|0)==0):0)?(d[n+42>>0]|0)<=(H|0):0){C=n+44|0;a[C>>0]=(a[C>>0]|0)+-1<<24>>24}m=n+44|0;j=(d[m>>0]|0)+1|0;k=(c[n>>2]|0)+8|0;if(j>>>0>(d[k>>0]|0)>>>0){if(j>>>0>254){C=148;break b}j=j&255;a[k>>0]=j}else j=j&255;a[m>>0]=j;QB(n,J,(j&255)+-1|0);XB(n,29,f,J,o)}while(0);if((i|0)==21){i=21;C=155;break}}if((C|0)==105)$B(c[m+8>>2]|0,286943);else if((C|0)==120)$B(c[j+8>>2]|0,286908);else if((C|0)==129)$B(c[j+8>>2]|0,286908);else if((C|0)==148)$B(c[n+8>>2]|0,286943);else if((C|0)==155){K=c[K>>2]|0;K=K+106|0;J=b[K>>1]|0;J=J+-1<<16>>16;b[K>>1]=J;l=L;return i|0}return 0}function hx(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+32|0;q=s+8|0;p=s;o=c[e+48>>2]|0;r=c[e+68>>2]|0;m=c[o>>2]|0;g=m+32|0;i=c[g>>2]|0;n=o+40|0;if((b[n>>1]|0)<(i|0)){h=i;j=c[m+60>>2]|0}else{h=m+60|0;j=Uw(c[e+52>>2]|0,c[h>>2]|0,g,12,32767,281149)|0;c[h>>2]=j;h=c[g>>2]|0}if((i|0)<(h|0)){g=i;do{c[j+(g*12|0)>>2]=0;g=g+1|0}while((g|0)!=(h|0))}k=b[n>>1]|0;c[j+((k<<16>>16)*12|0)>>2]=f;g=m+5|0;h=a[g>>0]|0;do if((h&4)!=0?(a[f+5>>0]&3)!=0:0){i=c[(c[e+52>>2]|0)+12>>2]|0;if((d[i+61>>0]|0)<2){Iw(i,f);m=b[n>>1]|0;break}else{a[g>>0]=a[i+60>>0]&3|h&-8;m=k;break}}else m=k;while(0);b[n>>1]=m+1<<16>>16;j=r+4|0;k=c[j>>2]|0;if((k+1-(c[o+36>>2]|0)|0)>200){h=o+8|0;i=c[(c[h>>2]|0)+52>>2]|0;g=c[(c[o>>2]|0)+36>>2]|0;if(!g){n=280822;c[q>>2]=281149;o=q+4|0;c[o>>2]=200;o=q+8|0;c[o>>2]=n;o=Zw(i,280836,q)|0;n=c[h>>2]|0;$B(n,o)}c[p>>2]=g;o=Zw(i,280802,p)|0;c[q>>2]=281149;p=q+4|0;c[p>>2]=200;p=q+8|0;c[p>>2]=o;q=Zw(i,280836,q)|0;p=c[h>>2]|0;$B(p,q)}g=r+8|0;if((k+2|0)>(c[g>>2]|0)){q=Uw(c[e+52>>2]|0,c[r>>2]|0,g,2,2147483647,281149)|0;c[r>>2]=q;e=c[j>>2]|0;r=q;q=e+1|0;c[j>>2]=q;e=r+(e<<1)|0;b[e>>1]=m;l=s;return}else{e=k;r=c[r>>2]|0;q=e+1|0;c[j>>2]=q;e=r+(e<<1)|0;b[e>>1]=m;l=s;return}}function ix(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=l;l=l+32|0;u=B+16|0;s=B;r=e+48|0;y=c[r>>2]|0;q=y+42|0;v=(d[q>>0]|0)+3|0;a[q>>0]=v;A=y+16|0;o=c[A>>2]|0;x=y+8|0;p=c[(c[y>>2]|0)+60>>2]|0;w=c[c[(c[x>>2]|0)+68>>2]>>2]|0;v=(c[y+36>>2]|0)+(v&255)|0;c[p+((b[w+(v+-3<<1)>>1]|0)*12|0)+4>>2]=o;c[p+((b[w+(v+-2<<1)>>1]|0)*12|0)+4>>2]=o;c[p+((b[w+(v+-1<<1)>>1]|0)*12|0)+4>>2]=o;v=e+16|0;if((c[v>>2]|0)!=259)ax(e,259);c[e+8>>2]=c[e+4>>2];j=e+32|0;if((c[j>>2]|0)==289)c[v>>2]=cC(e,e+24|0)|0;else{w=e+16|0;c[w>>2]=c[j>>2];c[w+4>>2]=c[j+4>>2];c[w+8>>2]=c[j+8>>2];c[w+12>>2]=c[j+12>>2];c[j>>2]=289}w=(i|0)!=0;do if(!w){n=y+24|0;i=c[n>>2]|0;c[n>>2]=-1;n=LB(y,2147450910)|0;if((i|0)!=-1)if((n|0)!=-1){k=c[(c[y>>2]|0)+48>>2]|0;m=n;while(1){o=k+(m<<2)|0;p=c[o>>2]|0;j=(p>>>14)+-131071|0;j=(j|0)==-1?-1:m+1+j|0;if((j|0)==-1)break;else m=j}j=i+~m|0;if((((j|0)>-1?j:0-j|0)|0)>131071)$B(c[x>>2]|0,286908);else{c[o>>2]=(j<<14)+2147467264|p&16383;z=n;break}}else z=i;else z=n}else z=LB(y,f<<6|2147450920)|0;while(0);a[s+14>>0]=0;a[s+12>>0]=a[q>>0]|0;q=c[x>>2]|0;p=c[q+68>>2]|0;c[s+4>>2]=c[p+28>>2];c[s+8>>2]=c[p+16>>2];a[s+13>>0]=0;p=y+12|0;c[s>>2]=c[p>>2];c[p>>2]=s;p=c[r>>2]|0;s=p+42|0;j=(d[s>>0]|0)+h|0;o=j&255;a[s>>0]=o;if(h|0){n=c[p+16>>2]|0;k=c[(c[p>>2]|0)+60>>2]|0;m=c[c[(c[p+8>>2]|0)+68>>2]>>2]|0;i=(c[p+36>>2]|0)+(j&255)|0;j=h;do{c[k+((b[m+(i-j<<1)>>1]|0)*12|0)+4>>2]=n;j=j+-1|0}while((j|0)!=0)}i=y+44|0;k=(d[i>>0]|0)+h|0;j=(c[y>>2]|0)+8|0;do if((k|0)>(d[j>>0]|0))if((k|0)>254)$B(q,286943);else{t=k&255;a[j>>0]=t;break}else t=k&255;while(0);a[i>>0]=t;a[u+14>>0]=0;a[u+12>>0]=o;t=c[(c[p+8>>2]|0)+68>>2]|0;c[u+4>>2]=c[t+28>>2];c[u+8>>2]=c[t+16>>2];a[u+13>>0]=0;t=p+12|0;c[u>>2]=c[t>>2];c[t>>2]=u;a:do{j=c[v>>2]|0;switch(j|0){case 277:case 289:case 262:case 261:case 260:break a;default:{}}$w(e)}while((j|0)!=274);cx(p);cx(y);c[y+20>>2]=c[A>>2];j=y+24|0;do if((z|0)!=-1){i=c[j>>2]|0;if((i|0)==-1){c[j>>2]=z;break}n=c[(c[y>>2]|0)+48>>2]|0;while(1){k=n+(i<<2)|0;m=c[k>>2]|0;j=(m>>>14)+-131071|0;j=(j|0)==-1?-1:i+1+j|0;if((j|0)==-1)break;else i=j}j=z+~i|0;if((((j|0)>-1?j:0-j|0)|0)>131071)$B(c[x>>2]|0,286908);else{c[k>>2]=(j<<14)+2147467264|m&16383;break}}while(0);j=f<<6;if(w){f=j|2147450919;f=LB(y,f)|0;h=z+1|0;MB(y,f,h);h=c[A>>2]|0;h=h+-1|0;A=c[y>>2]|0;A=A+56|0;A=c[A>>2]|0;h=A+(h<<2)|0;c[h>>2]=g;l=B;return}else{LB(y,j|h<<14|41)|0;c[(c[(c[y>>2]|0)+56>>2]|0)+((c[A>>2]|0)+-1<<2)>>2]=g;f=j+128|2147450922;f=LB(y,f)|0;h=z+1|0;MB(y,f,h);h=c[A>>2]|0;h=h+-1|0;A=c[y>>2]|0;A=A+56|0;A=c[A>>2]|0;h=A+(h<<2)|0;c[h>>2]=g;l=B;return}}function jx(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;if(!e){o=0;return o|0}k=e+8|0;l=e+36|0;i=c[e>>2]|0;j=i+60|0;n=d[e+42>>0]|0;while(1){m=n+-1|0;if((n|0)<=0)break;if((c[(c[j>>2]|0)+((b[(c[c[(c[k>>2]|0)+68>>2]>>2]|0)+((c[l>>2]|0)+m<<1)>>1]|0)*12|0)>>2]|0)==(f|0)){o=5;break}else n=m}if((o|0)==5){c[g+16>>2]=-1;c[g+20>>2]=-1;c[g>>2]=8;c[g+8>>2]=m;if(h|0){o=8;return o|0}h=e+12|0;do h=c[h>>2]|0;while((d[h+12>>0]|0)>=(n|0));a[h+13>>0]=1;o=8;return o|0}j=c[i+64>>2]|0;h=a[e+43>>0]|0;a:do if(h<<24>>24){i=h&255;h=0;while(1){if((c[j+(h<<3)>>2]|0)==(f|0))break;h=h+1|0;if((h|0)>=(i|0)){o=14;break a}}if((h|0)<0)o=14}else o=14;while(0);do if((o|0)==14)if(!(jx(c[e+4>>2]|0,f,g,0)|0)){o=0;return o|0}else{h=_w(e,f,g)|0;break}while(0);c[g+16>>2]=-1;c[g+20>>2]=-1;c[g>>2]=9;c[g+8>>2]=h;o=9;return o|0}function kx(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+48|0;p=q+24|0;o=q;i=d+48|0;j=c[i>>2]|0;if(!((c[e>>2]|0)==9?(c[e+16>>2]|0)==(c[e+20>>2]|0):0))SB(j,e)|0;n=d+4|0;k=d+8|0;c[k>>2]=c[n>>2];m=d+32|0;if((c[m>>2]|0)==289){f=cC(d,d+24|0)|0;h=d+16|0;c[h>>2]=f}else{f=d+16|0;c[f>>2]=c[m>>2];c[f+4>>2]=c[m+4>>2];c[f+8>>2]=c[m+8>>2];c[f+12>>2]=c[m+12>>2];c[m>>2]=289;f=d+16|0;h=f;f=c[f>>2]|0}if((f|0)!=292)ax(d,292);f=d+24|0;g=c[f>>2]|0;c[k>>2]=c[n>>2];if((c[m>>2]|0)==289)c[h>>2]=cC(d,f)|0;else{d=d+16|0;c[d>>2]=c[m>>2];c[d+4>>2]=c[m+4>>2];c[d+8>>2]=c[m+8>>2];c[d+12>>2]=c[m+12>>2];c[m>>2]=289}d=c[i>>2]|0;c[p>>2]=g;c[p+8>>2]=(a[g+4>>0]|64)&255;p=NB(d,p,p)|0;c[o+16>>2]=-1;c[o+20>>2]=-1;c[o>>2]=4;c[o+8>>2]=p;p=e+8|0;a[p+2>>0]=c[p>>2];b[p>>1]=TB(j,o)|0;a[p+3>>0]=(c[e>>2]|0)==9?9:8;c[e>>2]=10;l=q;return}function lx(e,f,g,h){e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=l;l=l+80|0;A=B;z=B+32|0;s=B+16|0;x=e+48|0;q=c[x>>2]|0;y=e+52|0;r=c[y>>2]|0;p=c[q>>2]|0;q=q+32|0;j=p+28|0;k=c[j>>2]|0;o=p+52|0;if(((c[q>>2]|0)>=(k|0)?(m=Uw(r,c[o>>2]|0,j,4,262143,281109)|0,c[o>>2]=m,n=c[j>>2]|0,(k|0)<(n|0)):0)?(i=k+1|0,c[m+(k<<2)>>2]=0,(i|0)<(n|0)):0)do{c[(c[o>>2]|0)+(i<<2)>>2]=0;i=i+1|0}while((i|0)!=(n|0));m=Gw(r)|0;j=c[q>>2]|0;c[q>>2]=j+1;c[(c[o>>2]|0)+(j<<2)>>2]=m;j=p+5|0;k=a[j>>0]|0;do if(k&4?a[m+5>>0]&3:0){i=c[r+12>>2]|0;if((d[i+61>>0]|0)<2){Iw(i,m);break}else{a[j>>0]=a[i+60>>0]&3|k&-8;break}}while(0);c[z>>2]=m;c[m+36>>2]=h;c[z+4>>2]=c[x>>2];c[z+8>>2]=e;c[x>>2]=z;c[z+16>>2]=0;c[z+20>>2]=0;c[z+24>>2]=-1;c[z+28>>2]=0;c[z+32>>2]=0;u=z+40|0;c[u>>2]=0;a[u+4>>0]=0;u=c[e+68>>2]|0;c[z+36>>2]=c[u+4>>2];c[m+72>>2]=c[e+72>>2];a[m+8>>0]=2;a[s+14>>0]=0;a[s+12>>0]=0;c[s+4>>2]=c[u+28>>2];c[s+8>>2]=c[u+16>>2];a[s+13>>0]=0;c[s>>2]=0;c[z+12>>2]=s;s=e+16|0;if((c[s>>2]|0)!=40)ax(e,40);r=e+4|0;t=e+8|0;c[t>>2]=c[r>>2];u=e+32|0;if((c[u>>2]|0)==289)c[s>>2]=cC(e,e+24|0)|0;else{q=e+16|0;c[q>>2]=c[u>>2];c[q+4>>2]=c[u+4>>2];c[q+8>>2]=c[u+8>>2];c[q+12>>2]=c[u+12>>2];c[u>>2]=289}if(!g){p=c[x>>2]|0;q=p;p=c[p>>2]|0}else{hx(e,bC(e,281119,4)|0);q=c[x>>2]|0;p=q+42|0;g=(d[p>>0]|0)+1|0;a[p>>0]=g;p=c[q>>2]|0;c[(c[p+60>>2]|0)+((b[(c[c[(c[q+8>>2]|0)+68>>2]>>2]|0)+((c[q+36>>2]|0)+(g&255)+-1<<1)>>1]|0)*12|0)+4>>2]=c[q+16>>2]}n=p+7|0;a[n>>0]=0;i=c[s>>2]|0;a:do if((i|0)==41)i=0;else{k=e+24|0;m=e+16|0;j=0;b:while(1){switch(i|0){case 281:break b;case 292:break;default:{w=28;break b}}i=c[k>>2]|0;c[t>>2]=c[r>>2];if((c[u>>2]|0)==289)c[s>>2]=cC(e,k)|0;else{c[m>>2]=c[u>>2];c[m+4>>2]=c[u+4>>2];c[m+8>>2]=c[u+8>>2];c[m+12>>2]=c[u+12>>2];c[u>>2]=289}hx(e,i);j=j+1|0;if(a[n>>0]|0){i=j;break a}if((c[s>>2]|0)!=44){i=j;break a}c[t>>2]=c[r>>2];if((c[u>>2]|0)==289){i=cC(e,k)|0;c[s>>2]=i;continue}else{c[m>>2]=c[u>>2];c[m+4>>2]=c[u+4>>2];c[m+8>>2]=c[u+8>>2];c[m+12>>2]=c[u+12>>2];c[u>>2]=289;i=c[s>>2]|0;continue}}if((w|0)==28)$B(e,281124);c[t>>2]=c[r>>2];if((c[u>>2]|0)==289)c[s>>2]=cC(e,k)|0;else{c[m>>2]=c[u>>2];c[m+4>>2]=c[u+4>>2];c[m+8>>2]=c[u+8>>2];c[m+12>>2]=c[u+12>>2];c[u>>2]=289}a[n>>0]=1;i=j}while(0);k=c[x>>2]|0;g=k+42|0;j=(d[g>>0]|0)+i|0;a[g>>0]=j;if(i|0){o=c[k+16>>2]|0;m=c[(c[k>>2]|0)+60>>2]|0;n=c[c[(c[k+8>>2]|0)+68>>2]>>2]|0;j=(c[k+36>>2]|0)+(j&255)|0;do{c[m+((b[n+(j-i<<1)>>1]|0)*12|0)+4>>2]=o;i=i+-1|0}while((i|0)!=0)}j=a[q+42>>0]|0;a[p+6>>0]=j;i=q+44|0;j=(d[i>>0]|0)+(j&255)|0;k=(c[q>>2]|0)+8|0;do if(j>>>0>(d[k>>0]|0)>>>0)if(j>>>0>254)$B(c[q+8>>2]|0,286943);else{v=j&255;a[k>>0]=v;break}else v=j&255;while(0);a[i>>0]=v;if((c[s>>2]|0)!=41)ax(e,41);c[t>>2]=c[r>>2];if((c[u>>2]|0)==289){i=cC(e,e+24|0)|0;c[s>>2]=i}else{w=e+16|0;c[w>>2]=c[u>>2];c[w+4>>2]=c[u+4>>2];c[w+8>>2]=c[u+8>>2];c[w+12>>2]=c[u+12>>2];c[u>>2]=289;w=47}c:while(1){if((w|0)==47){w=0;i=c[s>>2]|0}switch(i|0){case 277:case 289:case 262:case 261:case 260:{j=i;break c}default:{}}$w(e);if((i|0)==274){w=50;break}else w=47}if((w|0)==50)j=c[s>>2]|0;i=c[r>>2]|0;c[(c[z>>2]|0)+40>>2]=i;if((j|0)!=262)if((i|0)==(h|0))ax(e,262);else{z=c[y>>2]|0;w=_B(e,262)|0;y=_B(e,265)|0;c[A>>2]=w;c[A+4>>2]=y;c[A+8>>2]=h;$B(e,Zw(z,280877,A)|0)}c[t>>2]=i;if((c[u>>2]|0)==289){c[s>>2]=cC(e,e+24|0)|0;A=c[x>>2]|0;A=A+4|0;A=c[A>>2]|0;y=A+32|0;y=c[y>>2]|0;y=y<<14;y=y+-16384|0;y=y|44;y=LB(A,y)|0;z=f+16|0;c[z>>2]=-1;z=f+20|0;c[z>>2]=-1;c[f>>2]=12;z=f+8|0;c[z>>2]=y;PB(A,f);bx(e);l=B;return}else{A=e+16|0;c[A>>2]=c[u>>2];c[A+4>>2]=c[u+4>>2];c[A+8>>2]=c[u+8>>2];c[A+12>>2]=c[u+12>>2];c[u>>2]=289;A=c[x>>2]|0;A=A+4|0;A=c[A>>2]|0;y=A+32|0;y=c[y>>2]|0;y=y<<14;y=y+-16384|0;y=y|44;y=LB(A,y)|0;z=f+16|0;c[z>>2]=-1;z=f+20|0;c[z>>2]=-1;c[f>>2]=12;z=f+8|0;c[z>>2]=y;PB(A,f);bx(e);l=B;return}}function mx(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=b+4|0;m=c[h>>2]|0;j=b+16|0;g=(c[j>>2]|0)==266;k=b+8|0;c[k>>2]=m;l=b+32|0;if((c[l>>2]|0)==289)c[j>>2]=cC(b,b+24|0)|0;else{n=b+16|0;c[n>>2]=c[l>>2];c[n+4>>2]=c[l+4>>2];c[n+8>>2]=c[l+8>>2];c[n+12>>2]=c[l+12>>2];c[l>>2]=289}do if(g){if((c[j>>2]|0)!=292)ax(b,292);g=b+24|0;i=c[g>>2]|0;c[k>>2]=c[h>>2];if((c[l>>2]|0)==289){c[j>>2]=cC(b,g)|0;break}else{n=b+16|0;c[n>>2]=c[l>>2];c[n+4>>2]=c[l+4>>2];c[n+8>>2]=c[l+8>>2];c[n+12>>2]=c[l+12>>2];c[l>>2]=289;break}}else{g=c[b+52>>2]|0;h=(c[g+12>>2]|0)+280+(((287288>>>0)%127|0)<<2)|0;i=c[h>>2]|0;if(!(JN(287288,i+16|0)|0))break;else{i=xx(g,287288,5)|0;c[h>>2]=i;break}}while(0);j=b+68|0;k=c[j>>2]|0;g=k+12|0;l=k+16|0;n=c[l>>2]|0;h=k+20|0;if((n|0)<(c[h>>2]|0))g=c[g>>2]|0;else{k=Uw(c[b+52>>2]|0,c[g>>2]|0,h,16,32767,280643)|0;c[g>>2]=k;g=k;k=c[j>>2]|0}c[g+(n<<4)>>2]=i;c[g+(n<<4)+8>>2]=m;m=c[b+48>>2]|0;a[g+(n<<4)+12>>0]=a[m+42>>0]|0;c[g+(n<<4)+4>>2]=e;c[l>>2]=n+1;l=c[k+12>>2]|0;g=c[(c[m+12>>2]|0)+4>>2]|0;j=c[k+28>>2]|0;if((g|0)>=(j|0))return;h=c[k+24>>2]|0;i=c[l+(n<<4)>>2]|0;while(1){k=h+(g<<4)|0;if((c[k>>2]|0)==(i|0))break;g=g+1|0;if((g|0)>=(j|0)){o=25;break}}if((o|0)==25)return;g=a[h+(g<<4)+12>>0]|0;if((d[l+(n<<4)+12>>0]|0)>(g&255)?(f=c[l+(n<<4)+4>>2]|0,(f|0)!=-1):0){h=c[(c[m>>2]|0)+48>>2]|0;g=((g&255)<<6)+64&16320;do{e=h+(f<<2)|0;m=c[e>>2]|0;o=(m>>>14)+-131071|0;c[e>>2]=m&-16321|g;f=(o|0)==-1?-1:f+1+o|0}while((f|0)!=-1)}dx(b,n,k);return}function nx(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;N=l;l=l+112|0;j=N+88|0;L=N+72|0;m=N+24|0;J=N+48|0;K=N;E=e+48|0;M=c[E>>2]|0;G=e+4|0;H=c[G>>2]|0;I=e+16|0;switch(c[I>>2]|0){case 40:{i=e+8|0;c[i>>2]=H;h=e+32|0;if((c[h>>2]|0)==289)c[I>>2]=cC(e,e+24|0)|0;else{D=e+16|0;c[D>>2]=c[h>>2];c[D+4>>2]=c[h+4>>2];c[D+8>>2]=c[h+8>>2];c[D+12>>2]=c[h+12>>2];c[h>>2]=289}gx(e,f,0)|0;g=c[G>>2]|0;if((c[I>>2]|0)!=41)if((g|0)==(H|0))ax(e,41);else{D=c[e+52>>2]|0;B=_B(e,41)|0;C=_B(e,40)|0;c[j>>2]=B;c[j+4>>2]=C;c[j+8>>2]=H;$B(e,Zw(D,280877,j)|0)}c[i>>2]=g;if((c[h>>2]|0)==289){g=e+24|0;c[I>>2]=cC(e,g)|0}else{g=e+16|0;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];c[g+8>>2]=c[h+8>>2];c[g+12>>2]=c[h+12>>2];c[h>>2]=289;g=e+24|0}OB(c[E>>2]|0,f);D=h;B=h;C=g;A=g;break}case 292:{j=e+24|0;g=c[j>>2]|0;k=e+8|0;c[k>>2]=H;i=e+32|0;if((c[i>>2]|0)==289){c[I>>2]=cC(e,j)|0;h=c[E>>2]|0}else{h=e+16|0;c[h>>2]=c[i>>2];c[h+4>>2]=c[i+4>>2];c[h+8>>2]=c[i+8>>2];c[h+12>>2]=c[i+12>>2];c[i>>2]=289;h=M}if(!(jx(h,g,f,1)|0)){jx(h,c[e+76>>2]|0,f,1)|0;D=c[E>>2]|0;c[L>>2]=g;c[L+8>>2]=(a[g+4>>0]|64)&255;D=NB(D,L,L)|0;c[m+16>>2]=-1;c[m+20>>2]=-1;c[m>>2]=4;c[m+8>>2]=D;D=f+8|0;a[D+2>>0]=c[D>>2];b[D>>1]=TB(h,m)|0;a[D+3>>0]=(c[f>>2]|0)==9?9:8;c[f>>2]=10}D=i;B=i;C=j;A=j;i=k;break}default:$B(e,281063)}m=K+16|0;n=K+20|0;o=K+8|0;p=f+16|0;q=f+20|0;r=J+16|0;s=J+20|0;t=f+8|0;u=t+2|0;v=t+3|0;w=e+16|0;x=L+8|0;y=M+42|0;z=M+44|0;a:while(1)switch(c[I>>2]|0){case 46:{kx(e,f);continue a}case 91:{if(!((c[f>>2]|0)==9?(c[p>>2]|0)==(c[q>>2]|0):0))SB(M,f)|0;c[i>>2]=c[G>>2];if((c[B>>2]|0)==289)c[I>>2]=cC(e,C)|0;else{c[w>>2]=c[D>>2];c[w+4>>2]=c[D+4>>2];c[w+8>>2]=c[D+8>>2];c[w+12>>2]=c[D+12>>2];c[B>>2]=289}gx(e,J,0)|0;g=c[E>>2]|0;if((c[r>>2]|0)==(c[s>>2]|0))OB(g,J);else SB(g,J)|0;if((c[I>>2]|0)!=93){g=33;break a}c[i>>2]=c[G>>2];if((c[B>>2]|0)==289)c[I>>2]=cC(e,C)|0;else{c[w>>2]=c[D>>2];c[w+4>>2]=c[D+4>>2];c[w+8>>2]=c[D+8>>2];c[w+12>>2]=c[D+12>>2];c[B>>2]=289}a[u>>0]=c[t>>2];b[t>>1]=TB(M,J)|0;a[v>>0]=(c[f>>2]|0)==9?9:8;c[f>>2]=10;continue a}case 58:{c[i>>2]=c[G>>2];if((c[B>>2]|0)==289){g=cC(e,C)|0;c[I>>2]=g}else{c[w>>2]=c[D>>2];c[w+4>>2]=c[D+4>>2];c[w+8>>2]=c[D+8>>2];c[w+12>>2]=c[D+12>>2];c[B>>2]=289;g=c[I>>2]|0}if((g|0)!=292){g=42;break a}g=c[A>>2]|0;c[i>>2]=c[G>>2];if((c[B>>2]|0)==289)c[I>>2]=cC(e,C)|0;else{c[w>>2]=c[D>>2];c[w+4>>2]=c[D+4>>2];c[w+8>>2]=c[D+8>>2];c[w+12>>2]=c[D+12>>2];c[B>>2]=289}j=c[E>>2]|0;c[L>>2]=g;c[x>>2]=(a[g+4>>0]|64)&255;j=NB(j,L,L)|0;c[m>>2]=-1;c[n>>2]=-1;c[K>>2]=4;c[o>>2]=j;SB(M,f)|0;j=c[t>>2]|0;if((c[f>>2]|0)==7&(j&256|0)==0?(d[y>>0]|0|0)<=(j|0):0)a[z>>0]=(a[z>>0]|0)+-1<<24>>24;k=d[z>>0]|0;c[t>>2]=k;c[f>>2]=7;g=k+2|0;h=(c[M>>2]|0)+8|0;if(g>>>0>(d[h>>0]|0)>>>0){if(g>>>0>254){g=52;break a}g=g&255;a[h>>0]=g}else g=g&255;a[z>>0]=g;LB(M,j<<23|k<<6|(TB(M,K)|0)<<14|12)|0;if(((c[K>>2]|0)==7?(F=c[o>>2]|0,(F&256|0)==0):0)?(d[y>>0]|0|0)<=(F|0):0)a[z>>0]=(a[z>>0]|0)+-1<<24>>24;px(e,f,H);continue a}case 123:case 293:case 40:{PB(M,f);px(e,f,H);continue a}default:{g=60;break a}}if((g|0)==33)ax(e,93);else if((g|0)==42)ax(e,292);else if((g|0)==52)$B(c[M+8>>2]|0,286943);else if((g|0)==60){l=N;return}}function ox(f,g,h){f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;I=l;l=l+80|0;C=I+64|0;B=I+56|0;H=I+32|0;y=I;G=g+8|0;if(((c[G>>2]|0)+-8|0)>>>0>=3)$B(f,281050);o=f+16|0;a:do switch(c[o>>2]|0){case 44:{c[f+8>>2]=c[f+4>>2];i=f+32|0;if((c[i>>2]|0)==289)c[o>>2]=cC(f,f+24|0)|0;else{F=f+16|0;c[F>>2]=c[i>>2];c[F+4>>2]=c[i+4>>2];c[F+8>>2]=c[i+8>>2];c[F+12>>2]=c[i+12>>2];c[i>>2]=289}c[y>>2]=g;j=y+8|0;nx(f,j);j=c[j>>2]|0;v=f+48|0;if((j|0)!=10){u=c[v>>2]|0;t=u+44|0;n=a[t>>0]|0;o=n&255;m=n&255;p=c[y+16>>2]|0;q=(j|0)==8;if(q){k=g;i=0;do{if((c[k+8>>2]|0)==10){j=k+16|0;g=j+3|0;if((a[g>>0]|0)==8?(w=j+2|0,(d[w>>0]|0)==(p|0)):0){a[g>>0]=8;a[w>>0]=n;i=1}if((b[j>>1]|0)==(p|0)){b[j>>1]=m;i=1}}k=c[k>>2]|0}while((k|0)!=0)}else{i=0;do{if(((c[g+8>>2]|0)==10?(k=g+16|0,r=k+3|0,(d[r>>0]|0)==(j|0)):0)?(s=k+2|0,(d[s>>0]|0)==(p|0)):0){a[r>>0]=8;a[s>>0]=n;i=1}g=c[g>>2]|0}while((g|0)!=0)}if(i|0){LB(u,o<<6|(q?0:5)|p<<23)|0;i=(d[t>>0]|0)+1|0;g=(c[u>>2]|0)+8|0;do if(i>>>0>(d[g>>0]|0)>>>0)if(i>>>0>254)$B(c[u+8>>2]|0,286943);else{x=i&255;a[g>>0]=x;break}else x=i&255;while(0);a[t>>0]=x}}i=c[v>>2]|0;if(((e[(c[f+52>>2]|0)+106>>1]|0)+h|0)<=200){ox(f,y,h+1|0);D=H;A=v;break a}g=i+8|0;j=c[(c[g>>2]|0)+52>>2]|0;i=c[(c[i>>2]|0)+36>>2]|0;if(!i){f=280822;c[C>>2]=280868;h=C+4|0;c[h>>2]=200;h=C+8|0;c[h>>2]=f;h=Zw(j,280836,C)|0;f=c[g>>2]|0;$B(f,h)}c[B>>2]=i;f=Zw(j,280802,B)|0;c[C>>2]=280868;h=C+4|0;c[h>>2]=200;h=C+8|0;c[h>>2]=f;h=Zw(j,280836,C)|0;f=c[g>>2]|0;$B(f,h);break}case 61:{k=f+4|0;m=f+8|0;c[m>>2]=c[k>>2];n=f+32|0;if((c[n>>2]|0)==289)c[o>>2]=cC(f,f+24|0)|0;else{D=f+16|0;c[D>>2]=c[n>>2];c[D+4>>2]=c[n+4>>2];c[D+8>>2]=c[n+8>>2];c[D+12>>2]=c[n+12>>2];c[n>>2]=289}gx(f,H,0)|0;r=f+48|0;if((c[o>>2]|0)==44){g=f+24|0;j=f+16|0;i=1;do{c[m>>2]=c[k>>2];if((c[n>>2]|0)==289)c[o>>2]=cC(f,g)|0;else{c[j>>2]=c[n>>2];c[j+4>>2]=c[n+4>>2];c[j+8>>2]=c[n+8>>2];c[j+12>>2]=c[n+12>>2];c[n>>2]=289}PB(c[r>>2]|0,H);gx(f,H,0)|0;i=i+1|0}while((c[o>>2]|0)==44);q=i}else q=1;o=c[r>>2]|0;if((q|0)==(h|0)){switch(c[H>>2]|0){case 13:{c[H>>2]=7;h=H+8|0;c[h>>2]=(c[(c[(c[o>>2]|0)+48>>2]|0)+(c[h>>2]<<2)>>2]|0)>>>6&255;break}case 14:{h=(c[(c[o>>2]|0)+48>>2]|0)+(c[H+8>>2]<<2)|0;c[h>>2]=c[h>>2]&8388607|16777216;c[H>>2]=12;break}default:{}}UB(o,G,H);l=I;return}p=h-q|0;i=c[H>>2]|0;switch(i|0){case 14:case 13:{k=p+1|0;k=(k|0)>0?k:0;switch(i|0){case 13:{f=(c[(c[o>>2]|0)+48>>2]|0)+(c[H+8>>2]<<2)|0;c[f>>2]=c[f>>2]&-8372225|(k<<14)+16384&8372224;break}case 14:{f=H+8|0;j=c[o>>2]|0;i=c[j+48>>2]|0;g=i+(c[f>>2]<<2)|0;c[g>>2]=c[g>>2]&8388607|(k<<23)+8388608;f=i+(c[f>>2]<<2)|0;i=o+44|0;g=d[i>>0]|0;c[f>>2]=g<<6|c[f>>2]&-16321;g=g+1|0;j=j+8|0;do if(g>>>0>(d[j>>0]|0)>>>0)if(g>>>0>254)$B(c[o+8>>2]|0,286943);else{t=g&255;a[j>>0]=t;break}else t=g&255;while(0);a[i>>0]=t;break}default:{}}if((k|0)>1){j=o+44|0;i=(d[j>>0]|0)+(k+-1)|0;g=(c[o>>2]|0)+8|0;do if((i|0)>(d[g>>0]|0))if((i|0)>254)$B(c[o+8>>2]|0,286943);else{u=i&255;a[g>>0]=u;break}else u=i&255;while(0);a[j>>0]=u}break}case 0:{v=61;break}default:{PB(o,H);v=61}}b:do if((v|0)==61?(p|0)>0:0){i=o+44|0;m=d[i>>0]|0;n=m+p|0;k=c[o>>2]|0;g=k+8|0;do if((n|0)>(d[g>>0]|0))if((n|0)>254)$B(c[o+8>>2]|0,286943);else{z=n&255;a[g>>0]=z;break}else z=n&255;while(0);a[i>>0]=z;j=n+-1|0;i=c[o+16>>2]|0;do if((i|0)>(c[o+20>>2]|0)?(E=(c[k+48>>2]|0)+(i+-1<<2)|0,F=c[E>>2]|0,(F&63|0)==4):0){i=F>>>6&255;g=i+(F>>>23)|0;if(i>>>0>m>>>0|(g+1|0)>>>0<m>>>0?i>>>0<m>>>0|(i|0)>(n|0):0)break;f=i>>>0<m>>>0?i:m;c[E>>2]=((g|0)>(j|0)?g:j)-f<<23|f<<6|F&8372287;break b}while(0);LB(o,m<<6|(p<<23)+-8388608|4)|0}while(0);if((q|0)>(h|0)){D=(c[r>>2]|0)+44|0;a[D>>0]=p+(d[D>>0]|0);D=H;A=r}else{D=H;A=r}break}default:ax(f,61)}while(0);h=c[A>>2]|0;f=(d[h+44>>0]|0)+-1|0;c[H+16>>2]=-1;c[H+20>>2]=-1;c[D>>2]=7;c[H+8>>2]=f;UB(h,G,H);l=I;return}function px(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=l;l=l+64|0;o=s+40|0;g=s+24|0;r=s;i=b+48|0;q=c[i>>2]|0;p=b+16|0;a:do switch(c[p>>2]|0){case 40:{j=b+4|0;k=b+8|0;c[k>>2]=c[j>>2];m=b+32|0;if((c[m>>2]|0)==289){g=cC(b,b+24|0)|0;c[p>>2]=g}else{g=b+16|0;c[g>>2]=c[m>>2];c[g+4>>2]=c[m+4>>2];c[g+8>>2]=c[m+8>>2];c[g+12>>2]=c[m+12>>2];c[m>>2]=289;g=c[p>>2]|0}if((g|0)!=41){gx(b,r,0)|0;if((c[p>>2]|0)==44){g=b+24|0;h=b+16|0;do{c[k>>2]=c[j>>2];if((c[m>>2]|0)==289)c[p>>2]=cC(b,g)|0;else{c[h>>2]=c[m>>2];c[h+4>>2]=c[m+4>>2];c[h+8>>2]=c[m+8>>2];c[h+12>>2]=c[m+12>>2];c[m>>2]=289}PB(c[i>>2]|0,r);gx(b,r,0)|0}while((c[p>>2]|0)==44)}switch(c[r>>2]|0){case 13:{n=(c[(c[q>>2]|0)+48>>2]|0)+(c[r+8>>2]<<2)|0;c[n>>2]=c[n>>2]&-8372225;break}case 14:{t=r+8|0;i=c[q>>2]|0;g=c[i+48>>2]|0;h=g+(c[t>>2]<<2)|0;c[h>>2]=c[h>>2]&8388607;t=g+(c[t>>2]<<2)|0;g=q+44|0;h=d[g>>0]|0;c[t>>2]=h<<6|c[t>>2]&-16321;h=h+1|0;i=i+8|0;do if(h>>>0>(d[i>>0]|0)>>>0)if(h>>>0>254)$B(c[q+8>>2]|0,286943);else{n=h&255;a[i>>0]=n;break}else n=h&255;while(0);a[g>>0]=n;break}default:{}}if((c[p>>2]|0)!=41)if((c[j>>2]|0)==(f|0))ax(b,41);else{t=c[b+52>>2]|0;i=_B(b,41)|0;n=_B(b,40)|0;c[o>>2]=i;c[o+4>>2]=n;c[o+8>>2]=f;$B(b,Zw(t,280877,o)|0)}}else c[r>>2]=0;c[k>>2]=c[j>>2];if((c[m>>2]|0)==289){c[p>>2]=cC(b,b+24|0)|0;break a}else{t=b+16|0;c[t>>2]=c[m>>2];c[t+4>>2]=c[m+4>>2];c[t+8>>2]=c[m+8>>2];c[t+12>>2]=c[m+12>>2];c[m>>2]=289;break a}}case 123:{qx(b,r);break}case 293:{h=b+24|0;t=c[h>>2]|0;c[g>>2]=t;c[g+8>>2]=(a[t+4>>0]|64)&255;g=NB(q,g,g)|0;c[r+16>>2]=-1;c[r+20>>2]=-1;c[r>>2]=4;c[r+8>>2]=g;c[b+8>>2]=c[b+4>>2];g=b+32|0;if((c[g>>2]|0)==289){c[p>>2]=cC(b,h)|0;break a}else{t=b+16|0;c[t>>2]=c[g>>2];c[t+4>>2]=c[g+4>>2];c[t+8>>2]=c[g+8>>2];c[t+12>>2]=c[g+12>>2];c[g>>2]=289;break a}}default:$B(b,281081)}while(0);g=e+8|0;h=c[g>>2]|0;switch(c[r>>2]|0){case 0:break;case 14:case 13:{t=0;r=h<<6;t=r|t;t=t|32804;t=LB(q,t)|0;r=e+16|0;c[r>>2]=-1;r=e+20|0;c[r>>2]=-1;c[e>>2]=13;c[g>>2]=t;t=q+16|0;t=c[t>>2]|0;t=t+-1|0;e=c[q>>2]|0;e=e+56|0;e=c[e>>2]|0;t=e+(t<<2)|0;c[t>>2]=f;f=h+1|0;f=f&255;t=q+44|0;a[t>>0]=f;l=s;return}default:PB(q,r)}t=(d[q+44>>0]|0)-h<<23;r=h<<6;t=r|t;t=t|32804;t=LB(q,t)|0;r=e+16|0;c[r>>2]=-1;r=e+20|0;c[r>>2]=-1;c[e>>2]=13;c[g>>2]=t;t=q+16|0;t=c[t>>2]|0;t=t+-1|0;e=c[q>>2]|0;e=e+56|0;e=c[e>>2]|0;t=e+(t<<2)|0;c[t>>2]=f;f=h+1|0;f=f&255;t=q+44|0;a[t>>0]=f;l=s;return}function qx(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+64|0;p=A+40|0;s=A;j=b+48|0;v=c[j>>2]|0;n=b+4|0;o=c[n>>2]|0;w=LB(v,11)|0;r=s+36|0;c[r>>2]=0;z=s+28|0;c[z>>2]=0;y=s+32|0;c[y>>2]=0;x=s+24|0;c[x>>2]=e;c[e+16>>2]=-1;c[e+20>>2]=-1;c[e>>2]=12;c[e+8>>2]=w;c[s+16>>2]=-1;c[s+20>>2]=-1;c[s>>2]=0;q=s+8|0;c[q>>2]=0;PB(c[j>>2]|0,e);j=b+16|0;if((c[j>>2]|0)!=123)ax(b,123);k=b+8|0;c[k>>2]=c[n>>2];m=b+32|0;if((c[m>>2]|0)==289){e=cC(b,b+24|0)|0;c[j>>2]=e}else{e=b+16|0;c[e>>2]=c[m>>2];c[e+4>>2]=c[m+4>>2];c[e+8>>2]=c[m+8>>2];c[e+12>>2]=c[m+12>>2];c[m>>2]=289;e=c[j>>2]|0}a:do if((e|0)!=125){f=b+24|0;g=b+16|0;h=b+40|0;i=b+32|0;e=0;b:while(1){if(e|0?(PB(v,s),c[s>>2]=0,(c[r>>2]|0)==50):0){ZB(v,c[(c[x>>2]|0)+8>>2]|0,c[y>>2]|0,50);c[r>>2]=0}c:do switch(c[j>>2]|0){case 292:{e=cC(b,h)|0;c[i>>2]=e;if((e|0)==61){rx(b,s);break c}else{gx(b,s,0)|0;c[y>>2]=(c[y>>2]|0)+1;c[r>>2]=(c[r>>2]|0)+1;break c}}case 91:{rx(b,s);break}default:{gx(b,s,0)|0;c[y>>2]=(c[y>>2]|0)+1;c[r>>2]=(c[r>>2]|0)+1}}while(0);d:do switch(c[j>>2]|0){case 125:break a;case 44:{c[k>>2]=c[n>>2];if((c[m>>2]|0)==289){e=cC(b,f)|0;c[j>>2]=e;break d}else{c[g>>2]=c[m>>2];c[g+4>>2]=c[m+4>>2];c[g+8>>2]=c[m+8>>2];c[g+12>>2]=c[m+12>>2];c[m>>2]=289;t=21;break d}}case 59:{c[k>>2]=c[n>>2];if((c[m>>2]|0)==289){c[j>>2]=cC(b,f)|0;t=21;break d}else{c[g>>2]=c[m>>2];c[g+4>>2]=c[m+4>>2];c[g+8>>2]=c[m+8>>2];c[g+12>>2]=c[m+12>>2];c[m>>2]=289;t=21;break d}}default:break b}while(0);if((t|0)==21){t=0;e=c[j>>2]|0}if((e|0)==125)break a;e=c[s>>2]|0}if((c[n>>2]|0)==(o|0))ax(b,125);else{t=c[b+52>>2]|0;h=_B(b,125)|0;i=_B(b,123)|0;c[p>>2]=h;c[p+4>>2]=i;c[p+8>>2]=o;$B(b,Zw(t,280877,p)|0)}}while(0);c[k>>2]=c[n>>2];if((c[m>>2]|0)==289)c[j>>2]=cC(b,b+24|0)|0;else{t=b+16|0;c[t>>2]=c[m>>2];c[t+4>>2]=c[m+4>>2];c[t+8>>2]=c[m+8>>2];c[t+12>>2]=c[m+12>>2];c[m>>2]=289}e=c[r>>2]|0;do if(e|0){switch(c[s>>2]|0){case 0:{t=44;break}case 13:{t=(c[(c[v>>2]|0)+48>>2]|0)+(c[q>>2]<<2)|0;c[t>>2]=c[t>>2]&-8372225;t=42;break}case 14:{f=c[v>>2]|0;t=c[f+48>>2]|0;g=t+(c[q>>2]<<2)|0;c[g>>2]=c[g>>2]&8388607;t=t+(c[q>>2]<<2)|0;g=v+44|0;e=d[g>>0]|0;c[t>>2]=e<<6|c[t>>2]&-16321;e=e+1|0;f=f+8|0;do if(e>>>0>(d[f>>0]|0)>>>0)if(e>>>0>254)$B(c[v+8>>2]|0,286943);else{u=e&255;a[f>>0]=u;break}else u=e&255;while(0);a[g>>0]=u;t=42;break}default:{PB(v,s);e=c[r>>2]|0;t=44}}if((t|0)==42){ZB(v,c[(c[x>>2]|0)+8>>2]|0,c[y>>2]|0,-1);c[y>>2]=(c[y>>2]|0)+-1;break}else if((t|0)==44){ZB(v,c[(c[x>>2]|0)+8>>2]|0,c[y>>2]|0,e);break}}while(0);h=(c[(c[v>>2]|0)+48>>2]|0)+(w<<2)|0;g=c[h>>2]&8388607;e=c[y>>2]|0;if(e>>>0>=8){if(e>>>0>127){f=0;do{y=e+15|0;e=y>>>4;f=f+4|0}while(y>>>0>2047)}else f=0;if(e>>>0>15)do{y=e+1|0;e=y>>>1;f=f+1|0}while(y>>>0>31);e=(f<<3)+8|e+-8}g=e<<23|g;c[h>>2]=g;g=g&-8372225;e=c[z>>2]|0;if(e>>>0<8){z=e;z=z<<14;z=z&8372224;z=z|g;c[h>>2]=z;l=A;return}if(e>>>0>127){f=0;do{z=e+15|0;e=z>>>4;f=f+4|0}while(z>>>0>2047)}else f=0;if(e>>>0>15)do{z=e+1|0;e=z>>>1;f=f+1|0}while(z>>>0>31);z=(f<<3)+8|e+-8;z=z<<14;z=z&8372224;z=z|g;c[h>>2]=z;l=A;return}function rx(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;h=q+48|0;o=q+24|0;p=q;i=b+48|0;j=c[i>>2]|0;k=j+44|0;m=a[k>>0]|0;n=b+16|0;do if((c[n>>2]|0)!=292){f=b+4|0;g=b+8|0;c[g>>2]=c[f>>2];h=b+32|0;if((c[h>>2]|0)==289)c[n>>2]=cC(b,b+24|0)|0;else{e=b+16|0;c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[e+8>>2]=c[h+8>>2];c[e+12>>2]=c[h+12>>2];c[h>>2]=289}gx(b,o,0)|0;e=c[i>>2]|0;if((c[o+16>>2]|0)==(c[o+20>>2]|0))OB(e,o);else SB(e,o)|0;if((c[n>>2]|0)!=93)ax(b,93);c[g>>2]=c[f>>2];if((c[h>>2]|0)==289){c[n>>2]=cC(b,b+24|0)|0;break}else{i=b+16|0;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];c[i+12>>2]=c[h+12>>2];c[h>>2]=289;break}}else{f=b+24|0;g=c[f>>2]|0;c[b+8>>2]=c[b+4>>2];e=b+32|0;if((c[e>>2]|0)==289){c[n>>2]=cC(b,f)|0;e=c[i>>2]|0}else{i=b+16|0;c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];c[i+8>>2]=c[e+8>>2];c[i+12>>2]=c[e+12>>2];c[e>>2]=289;e=j}c[h>>2]=g;c[h+8>>2]=(a[g+4>>0]|64)&255;i=NB(e,h,h)|0;c[o+16>>2]=-1;c[o+20>>2]=-1;c[o>>2]=4;c[o+8>>2]=i}while(0);i=d+28|0;c[i>>2]=(c[i>>2]|0)+1;if((c[n>>2]|0)!=61)ax(b,61);c[b+8>>2]=c[b+4>>2];e=b+32|0;if((c[e>>2]|0)==289){c[n>>2]=cC(b,b+24|0)|0;n=TB(j,o)|0;gx(b,p,0)|0;o=d+24|0;o=c[o>>2]|0;o=o+8|0;o=c[o>>2]|0;p=TB(j,p)|0;o=o<<6;b=n<<23;b=o|b;p=p<<14;p=b|p;p=p|10;LB(j,p)|0;a[k>>0]=m;l=q;return}else{n=b+16|0;c[n>>2]=c[e>>2];c[n+4>>2]=c[e+4>>2];c[n+8>>2]=c[e+8>>2];c[n+12>>2]=c[e+12>>2];c[e>>2]=289;n=TB(j,o)|0;gx(b,p,0)|0;o=d+24|0;o=c[o>>2]|0;o=o+8|0;o=c[o>>2]|0;p=TB(j,p)|0;o=o<<6;b=n<<23;b=o|b;p=p<<14;p=b|p;p=p|10;LB(j,p)|0;a[k>>0]=m;l=q;return}}function sx(e){e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;i=e+12|0;j=c[i>>2]|0;if((c[j+12>>2]|0)>0){Sw(e);h=c[i>>2]|0}else h=j;f=h+4|0;g=jg[c[h>>2]&31](c[f>>2]|0,0,8,116)|0;if(!g){if(!(c[h+140>>2]|0))qw(e,4);Tw(e,1);f=jg[c[h>>2]&31](c[f>>2]|0,0,8,116)|0;if(!f)qw(e,4);else o=f}else o=g;k=h+12|0;c[k>>2]=(c[k>>2]|0)+116;k=o+4|0;a[o+9>>0]=a[j+60>>0]&3;a[o+8>>0]=8;l=j+64|0;c[k>>2]=c[l>>2];c[l>>2]=k;l=e+8|0;m=c[l>>2]|0;c[m>>2]=k;c[m+8>>2]=72;c[l>>2]=(c[l>>2]|0)+16;c[o+16>>2]=j;l=o+32|0;c[l>>2]=0;m=o+20|0;c[m>>2]=0;n=o+96|0;c[n>>2]=0;c[o+44>>2]=k;c[o+48>>2]=0;b[o+110>>1]=0;f=o+88|0;c[f>>2]=0;h=o+112|0;a[h>>0]=0;g=o+100|0;c[g>>2]=0;a[o+113>>0]=1;c[o+36>>2]=0;b[o+108>>1]=1;a[o+10>>0]=0;c[o+92>>2]=0;a[h>>0]=a[e+108>>0]|0;h=c[e+96>>2]|0;c[g>>2]=h;c[f>>2]=c[e+84>>2];c[o+104>>2]=h;h=(c[j+136>>2]|0)+-4|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;a[o>>0]=h;a[o+1>>0]=h>>8;a[o+2>>0]=h>>16;a[o+3>>0]=h>>24;h=c[i>>2]|0;f=h+4|0;g=jg[c[h>>2]&31](c[f>>2]|0,0,0,640)|0;if(!g){if(!(c[h+140>>2]|0))qw(e,4);Tw(e,1);f=jg[c[h>>2]&31](c[f>>2]|0,0,0,640)|0;if(!f)qw(e,4);else p=f}else p=g;e=h+12|0;c[e>>2]=(c[e>>2]|0)+640;c[l>>2]=p;c[n>>2]=40;n=p+8|0;c[n>>2]=0;c[p+24>>2]=0;c[p+40>>2]=0;c[p+56>>2]=0;c[p+72>>2]=0;c[p+88>>2]=0;c[p+104>>2]=0;c[p+120>>2]=0;c[p+136>>2]=0;c[p+152>>2]=0;c[p+168>>2]=0;c[p+184>>2]=0;c[p+200>>2]=0;c[p+216>>2]=0;c[p+232>>2]=0;c[p+248>>2]=0;c[p+264>>2]=0;c[p+280>>2]=0;c[p+296>>2]=0;c[p+312>>2]=0;c[p+328>>2]=0;c[p+344>>2]=0;c[p+360>>2]=0;c[p+376>>2]=0;c[p+392>>2]=0;c[p+408>>2]=0;c[p+424>>2]=0;c[p+440>>2]=0;c[p+456>>2]=0;c[p+472>>2]=0;c[p+488>>2]=0;c[p+504>>2]=0;c[p+520>>2]=0;c[p+536>>2]=0;c[p+552>>2]=0;c[p+568>>2]=0;c[p+584>>2]=0;c[p+600>>2]=0;c[p+616>>2]=0;c[p+632>>2]=0;c[o+28>>2]=p+560;e=o+52|0;c[o+60>>2]=0;c[o+64>>2]=0;a[o+86>>0]=0;c[e>>2]=p;c[o+12>>2]=p+16;c[n>>2]=0;c[o+56>>2]=p+336;c[m>>2]=e;return k|0}function tx(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;k=l;l=l+32|0;g=k+8|0;h=k;i=jg[e&31](f,0,8,912)|0;if(!i){j=0;l=k;return j|0}j=i+4|0;m=i+120|0;c[j>>2]=0;a[i+8>>0]=8;a[i+180>>0]=1;a[i+9>>0]=1;c[i+16>>2]=m;c[i+32>>2]=0;c[i+20>>2]=0;c[i+96>>2]=0;c[i+44>>2]=j;c[i+48>>2]=0;b[i+110>>1]=0;c[i+88>>2]=0;a[i+112>>0]=0;c[i+100>>2]=0;a[i+113>>0]=1;c[i+104>>2]=0;c[i+36>>2]=0;b[i+108>>1]=1;a[i+10>>0]=0;c[i+92>>2]=0;c[m>>2]=e;c[i+124>>2]=f;c[i+256>>2]=j;e=Vf(0)|0;c[h>>2]=e;c[g>>2]=j;c[g+4>>2]=h;c[g+8>>2]=316344;c[g+12>>2]=22;e=e^16;e=(e<<5)+(e>>>2)+(d[g+15>>0]|0)^e;e=(e<<5)+(e>>>2)+(d[g+14>>0]|0)^e;e=(e<<5)+(e>>>2)+(d[g+13>>0]|0)^e;e=(e<<5)+(e>>>2)+(d[g+12>>0]|0)^e;e=(e<<5)+(e>>>2)+(d[g+11>>0]|0)^e;e=(e<<5)+(e>>>2)+(d[g+10>>0]|0)^e;e=(e<<5)+(e>>>2)+(d[g+9>>0]|0)^e;e=(e<<5)+(e>>>2)+(d[g+8>>0]|0)^e;e=(e<<5)+(e>>>2)+(d[g+7>>0]|0)^e;e=(e<<5)+(e>>>2)+(d[g+6>>0]|0)^e;e=(e<<5)+(e>>>2)+(d[g+5>>0]|0)^e;e=(e<<5)+(e>>>2)+(d[g+4>>0]|0)^e;e=(e<<5)+(e>>>2)+(d[g+3>>0]|0)^e;e=(e<<5)+(e>>>2)+(d[g+2>>0]|0)^e;e=(e<<5)+(e>>>2)+(d[g+1>>0]|0)^e;c[i+176>>2]=(e<<5)+(e>>>2)+(d[g>>0]|0)^e;a[i+183>>0]=0;g=i+140|0;c[i+168>>2]=0;c[i+228>>2]=0;c[i+236>>2]=0;c[i+252>>2]=0;c[i+260>>2]=0;c[g>>2]=0;c[g+4>>2]=0;c[g+8>>2]=0;c[g+12>>2]=0;a[i+181>>0]=7;a[i+182>>0]=0;g=i+128|0;e=i+184|0;h=e+44|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(h|0));c[g>>2]=912;c[i+132>>2]=0;c[i+240>>2]=0;c[i+244>>2]=200;c[i+248>>2]=200;e=i+364|0;h=e+36|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(h|0));if(!(rw(j,165,0)|0)){m=j;l=k;return m|0}vx(j);m=0;l=k;return m|0}function ux(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;j=n;k=b+12|0;m=c[k>>2]|0;e=m+4|0;f=jg[c[m>>2]&31](c[e>>2]|0,0,0,640)|0;if(!f){if(!(c[m+140>>2]|0))qw(b,4);Tw(b,1);e=jg[c[m>>2]&31](c[e>>2]|0,0,0,640)|0;if(!e)qw(b,4);else g=e}else g=f;h=m+12|0;c[h>>2]=(c[h>>2]|0)+640;c[b+28>>2]=g;c[b+92>>2]=40;h=g+8|0;c[h>>2]=0;c[g+24>>2]=0;c[g+40>>2]=0;c[g+56>>2]=0;c[g+72>>2]=0;c[g+88>>2]=0;c[g+104>>2]=0;c[g+120>>2]=0;c[g+136>>2]=0;c[g+152>>2]=0;c[g+168>>2]=0;c[g+184>>2]=0;c[g+200>>2]=0;c[g+216>>2]=0;c[g+232>>2]=0;c[g+248>>2]=0;c[g+264>>2]=0;c[g+280>>2]=0;c[g+296>>2]=0;c[g+312>>2]=0;c[g+328>>2]=0;c[g+344>>2]=0;c[g+360>>2]=0;c[g+376>>2]=0;c[g+392>>2]=0;c[g+408>>2]=0;c[g+424>>2]=0;c[g+440>>2]=0;c[g+456>>2]=0;c[g+472>>2]=0;c[g+488>>2]=0;c[g+504>>2]=0;c[g+520>>2]=0;c[g+536>>2]=0;c[g+552>>2]=0;c[g+568>>2]=0;c[g+584>>2]=0;c[g+600>>2]=0;c[g+616>>2]=0;c[g+632>>2]=0;c[b+24>>2]=g+560;i=b+48|0;c[b+56>>2]=0;c[b+60>>2]=0;a[b+82>>0]=0;c[i>>2]=g;c[b+8>>2]=g+16;c[h>>2]=0;c[b+52>>2]=g+336;c[b+16>>2]=i;i=Dx(b)|0;c[m+40>>2]=i;c[m+48>>2]=69;Ax(b,i,2,0);g=b;h=i+8|0;a:do if(!(c[h>>2]|0)){e=(c[i+16>>2]|0)+(((a[i+7>>0]|0)!=0&1)<<5)|0;while(1){if((c[e+24>>2]|0)==19?(f=e+16|0,(c[f>>2]|0)==1&(c[f+4>>2]|0)==0):0)break;f=c[e+28>>2]|0;if(!f){f=14;break a}e=e+(f<<5)|0}f=13}else{e=c[i+12>>2]|0;f=13}while(0);if((f|0)==13)if((e|0)==316344)f=14;if((f|0)==14){e=j;c[e>>2]=1;c[e+4>>2]=0;c[j+8>>2]=19;e=Bx(b,i,j)|0}c[e>>2]=g;c[e+8>>2]=72;g=Dx(b)|0;b:do if((c[h>>2]|0)>>>0>1){e=(c[i+12>>2]|0)+16|0;f=23}else{e=(c[i+16>>2]|0)+(((1<<d[i+7>>0])+3&2)<<5)|0;while(1){if((c[e+24>>2]|0)==19?(h=e+16|0,(c[h>>2]|0)==2&(c[h+4>>2]|0)==0):0)break;f=c[e+28>>2]|0;if(!f){f=24;break b}e=e+(f<<5)|0}f=23}while(0);if((f|0)==23)if((e|0)==316344)f=24;if((f|0)==24){e=j;c[e>>2]=2;c[e+4>>2]=0;c[j+8>>2]=19;e=Bx(b,i,j)|0}c[e>>2]=g;c[e+8>>2]=69;f=c[k>>2]|0;wx(b,128);h=xx(b,286858,17)|0;g=f+144|0;c[g>>2]=h;e=c[k>>2]|0;j=h+5|0;a[j>>0]=a[j>>0]&-4;c[e+64>>2]=c[h>>2];e=e+100|0;c[h>>2]=c[e>>2];c[e>>2]=h;e=0;while(1){c[f+280+(e<<2)>>2]=h;e=e+1|0;if((e|0)==127)break;h=c[g>>2]|0}e=c[k>>2]|0;i=0;do{g=c[5148+(i<<2)>>2]|0;h=e+280+(((g>>>0)%127|0)<<2)|0;f=c[h>>2]|0;if(JN(g,f+16|0)|0){f=xx(b,g,WO(g)|0)|0;c[h>>2]=f;e=c[k>>2]|0}c[e+148+(i<<2)>>2]=f;e=c[k>>2]|0;h=c[e+148+(i<<2)>>2]|0;j=h+5|0;a[j>>0]=a[j>>0]&-4;c[e+64>>2]=c[h>>2];j=e+100|0;c[h>>2]=c[j>>2];c[j>>2]=h;i=i+1|0}while((i|0)!=24);j=xx(b,287279,4)|0;e=c[k>>2]|0;i=j+5|0;a[i>>0]=a[i>>0]&-4;c[e+64>>2]=c[j>>2];i=e+100|0;c[j>>2]=c[i>>2];c[i>>2]=j;i=0;do{g=c[6528+(i<<2)>>2]|0;h=e+280+(((g>>>0)%127|0)<<2)|0;f=c[h>>2]|0;if(JN(g,f+16|0)|0){f=xx(b,g,WO(g)|0)|0;c[h>>2]=f;e=c[k>>2]|0}j=f+5|0;a[j>>0]=a[j>>0]&-4;c[e+64>>2]=c[f>>2];j=e+100|0;c[f>>2]=c[j>>2];c[j>>2]=f;i=i+1|0;a[f+6>>0]=i}while((i|0)!=22);a[m+63>>0]=1;c[m+140>>2]=952;l=n;return}function vx(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=b+12|0;n=c[m>>2]|0;l=b+28|0;j=c[l>>2]|0;k=b+32|0;e=c[k>>2]|0;if(!e)h=n;else{do{g=c[e>>2]|0;if(g>>>0<j>>>0)break;f=e+8|0;c[k>>2]=c[f>>2];if(c[e+4>>2]|0){c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[f+12>>2]=c[g+12>>2];c[e>>2]=f;if((c[e+16>>2]&64|0?(h=c[m>>2]|0,i=c[f>>2]|0,(d[h+61>>0]|0)<2):0)?a[i+5>>0]&3:0)Iw(h,i)}else{g=c[m>>2]|0;jg[c[g>>2]&31](c[g+4>>2]|0,e,24,0)|0;g=g+12|0;c[g>>2]=(e|0?-24:0)+(c[g>>2]|0)}e=c[k>>2]|0}while((e|0)!=0);h=c[m>>2]|0}f=h+96|0;while(1){e=c[f>>2]|0;if(!e)break;else f=e}g=h+72|0;e=c[g>>2]|0;if(!e)e=h;else{while(1){c[g>>2]=c[e>>2];c[e>>2]=c[f>>2];c[f>>2]=e;f=c[g>>2]|0;if(!f)break;else{k=e;e=f;f=k}}e=c[m>>2]|0}e=e+96|0;if(c[e>>2]|0)do Lw(b,0);while((c[e>>2]|0)!=0);a[h+60>>0]=3;a[h+62>>0]=0;Kw(b,g,-1)|0;Kw(b,h+64|0,-1)|0;Kw(b,h+100|0,-1)|0;k=c[m>>2]|0;e=c[k+24>>2]|0;g=c[k+32>>2]<<2;jg[c[k>>2]&31](c[k+4>>2]|0,e,g,0)|0;k=k+12|0;c[k>>2]=(e|0?0-g|0:0)+(c[k>>2]|0);k=n+108|0;g=c[k>>2]|0;e=n+116|0;h=c[e>>2]|0;i=c[m>>2]|0;j=jg[c[i>>2]&31](c[i+4>>2]|0,g,h,0)|0;i=i+12|0;c[i>>2]=(g|0?0-h|0:0)+(c[i>>2]|0);c[k>>2]=j;c[e>>2]=0;e=c[l>>2]|0;if(!e){m=c[n>>2]|0;n=n+4|0;n=c[n>>2]|0;b=b+-4|0;jg[m&31](n,b,912,0)|0;return}c[b+16>>2]=b+48;k=b+60|0;f=c[k>>2]|0;c[k>>2]=0;if(f){e=f;do{j=e;e=c[e+12>>2]|0;k=c[m>>2]|0;jg[c[k>>2]&31](c[k+4>>2]|0,j,36,0)|0;k=k+12|0;c[k>>2]=(j|0?-36:0)+(c[k>>2]|0)}while((e|0)!=0);e=c[l>>2]|0}l=c[b+92>>2]<<4;m=c[m>>2]|0;jg[c[m>>2]&31](c[m+4>>2]|0,e,l,0)|0;m=m+12|0;c[m>>2]=(e|0?0-l|0:0)+(c[m>>2]|0);m=c[n>>2]|0;n=n+4|0;n=c[n>>2]|0;b=b+-4|0;jg[m&31](n,b,912,0)|0;return}function wx(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=a+12|0;k=c[m>>2]|0;n=k+24|0;o=k+32|0;e=c[o>>2]|0;if((e|0)<(b|0)){if((b+1|0)>>>0>1073741823)Vw(a);g=c[n>>2]|0;h=e<<2;i=b<<2;j=(g|0)!=0;e=k+4|0;f=jg[c[k>>2]&31](c[e>>2]|0,g,h,i)|0;if((i|0)!=0&(f|0)==0){if(!(c[k+140>>2]|0))qw(a,4);Tw(a,1);e=jg[c[k>>2]&31](c[e>>2]|0,g,h,i)|0;if(!e)qw(a,4);else l=e}else l=f;e=k+12|0;c[e>>2]=(j?0-h|0:0)+i+(c[e>>2]|0);c[n>>2]=l;e=c[o>>2]|0;if((e|0)<(b|0)?(c[l+(e<<2)>>2]=0,d=e+1|0,(d|0)!=(b|0)):0)do{c[(c[n>>2]|0)+(d<<2)>>2]=0;d=d+1|0}while((d|0)!=(b|0))}if((e|0)>0){f=b+-1|0;g=0;do{l=(c[n>>2]|0)+(g<<2)|0;d=c[l>>2]|0;c[l>>2]=0;if(d|0)do{j=d+12|0;k=d;d=c[j>>2]|0;l=c[k+8>>2]&f;c[j>>2]=c[(c[n>>2]|0)+(l<<2)>>2];c[(c[n>>2]|0)+(l<<2)>>2]=k}while((d|0)!=0);g=g+1|0}while((g|0)!=(e|0))}if((e|0)<=(b|0)){c[o>>2]=b;return}if((b+1|0)>>>0>1073741823)Vw(a);h=c[n>>2]|0;i=e<<2;j=b<<2;f=c[m>>2]|0;g=(h|0)!=0;d=f+4|0;e=jg[c[f>>2]&31](c[d>>2]|0,h,i,j)|0;if((j|0)!=0&(e|0)==0){if(!(c[f+140>>2]|0))qw(a,4);Tw(a,1);d=jg[c[f>>2]&31](c[d>>2]|0,h,i,j)|0;if(!d)qw(a,4);else p=d}else p=e;a=f+12|0;c[a>>2]=(g?0-i|0:0)+j+(c[a>>2]|0);c[n>>2]=p;c[o>>2]=b;return}function xx(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;if(f>>>0>=41){if((f+1|0)>>>0>4294967279)Vw(b);i=c[b+12>>2]|0;j=c[i+56>>2]|0;k=f+17|0;h=i+4|0;g=jg[c[i>>2]&31](c[h>>2]|0,0,4,k)|0;if((k|0)!=0&(g|0)==0){if(!(c[i+140>>2]|0))qw(b,4);Tw(b,1);g=jg[c[i>>2]&31](c[h>>2]|0,0,4,k)|0;if(!g)qw(b,4);else l=g}else l=g;b=i+12|0;c[b>>2]=k+(c[b>>2]|0);a[l+5>>0]=a[i+60>>0]&3;a[l+4>>0]=20;b=i+64|0;c[l>>2]=c[b>>2];c[b>>2]=l;c[l+8>>2]=j;a[l+6>>0]=0;b=l+16|0;PQ(b|0,e|0,f|0)|0;a[b+f>>0]=0;c[l+12>>2]=f;e=l;return e|0}p=b+12|0;l=c[p>>2]|0;g=c[l+56>>2]^f;i=(f>>>5)+1|0;if(i>>>0<=f>>>0){h=f;do{g=(g<<5)+(g>>>2)+(d[e+(h+-1)>>0]|0)^g;h=h-i|0}while(h>>>0>=i>>>0)}m=l+32|0;j=c[m>>2]|0;n=l+24|0;k=(c[n>>2]|0)+((j+-1&g)<<2)|0;h=c[k>>2]|0;a:do if(h|0){i=h;while(1){if((d[i+7>>0]|0|0)==(f|0)?(KN(e,i+16|0,f)|0)==0:0)break;h=c[i+12>>2]|0;if(!h)break a;else i=h}g=i+5|0;h=a[g>>0]^3;if(((a[l+60>>0]^3)&h)<<24>>24){e=i;return e|0}a[g>>0]=h;e=i;return e|0}while(0);o=l+28|0;if((j|0)<1073741824?(c[o>>2]|0)>=(j|0):0){wx(b,j<<1);l=c[p>>2]|0;k=(c[n>>2]|0)+(((c[m>>2]|0)+-1&g)<<2)|0}j=f+17|0;h=l+4|0;i=jg[c[l>>2]&31](c[h>>2]|0,0,4,j)|0;if((j|0)!=0&(i|0)==0){if(!(c[l+140>>2]|0))qw(b,4);Tw(b,1);h=jg[c[l>>2]&31](c[h>>2]|0,0,4,j)|0;if(!h)qw(b,4);else q=h}else q=i;b=l+12|0;c[b>>2]=j+(c[b>>2]|0);a[q+5>>0]=a[l+60>>0]&3;a[q+4>>0]=4;b=l+64|0;c[q>>2]=c[b>>2];c[b>>2]=q;c[q+8>>2]=g;a[q+6>>0]=0;b=q+16|0;PQ(b|0,e|0,f|0)|0;a[b+f>>0]=0;a[q+7>>0]=f;c[q+12>>2]=c[k>>2];c[k>>2]=q;c[o>>2]=(c[o>>2]|0)+1;e=q;return e|0}function yx(a,b){a=a|0;b=b|0;var d=0,e=0;d=(c[a+12>>2]|0)+280+(((b>>>0)%127|0)<<2)|0;e=c[d>>2]|0;if(!(JN(b,e+16|0)|0)){b=e;return b|0}else{b=xx(a,b,WO(b)|0)|0;c[d>>2]=b;return b|0}return 0}function zx(b,e){b=b|0;e=e|0;var f=0.0,g=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;g=n;switch(c[e+8>>2]&63){case 19:{e=(1<<d[b+7>>0])+-1&c[e>>2];break}case 3:{f=+dO(+h[e>>3],g)*2147483648.0;if(f>=-9223372036854775808.0&f<9223372036854775808.0){e=(c[g>>2]|0)+(~~f>>>0)|0;e=e>>31^e}else e=0;e=(e|0)%((1<<d[b+7>>0])+-1|1|0)|0;break}case 4:{e=(1<<d[b+7>>0])+-1&c[(c[e>>2]|0)+8>>2];break}case 20:{e=c[e>>2]|0;m=e+6|0;if(!(a[m>>0]|0)){j=e+16|0;g=c[e+12>>2]|0;k=e+8|0;e=c[k>>2]^g;i=(g>>>5)+1|0;if(i>>>0<=g>>>0)do{e=(e<<5)+(e>>>2)+(d[j+(g+-1)>>0]|0)^e;g=g-i|0}while(g>>>0>=i>>>0);c[k>>2]=e;a[m>>0]=1}else e=c[e+8>>2]|0;e=(1<<d[b+7>>0])+-1&e;break}case 1:{e=(1<<d[b+7>>0])+-1&c[e>>2];break}case 2:{e=((c[e>>2]|0)>>>0)%(((1<<d[b+7>>0])+-1|1)>>>0)|0;break}case 22:{e=((c[e>>2]|0)>>>0)%(((1<<d[b+7>>0])+-1|1)>>>0)|0;break}default:e=((c[e>>2]|0)>>>0)%(((1<<d[b+7>>0])+-1|1)>>>0)|0}l=n;return (c[b+16>>2]|0)+(e<<5)|0}function Ax(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=l;l=l+32|0;s=C+16|0;w=C;t=e+8|0;x=c[t>>2]|0;u=e+7|0;A=a[u>>0]|0;y=A&255;v=e+16|0;B=c[v>>2]|0;if(x>>>0<f>>>0){if((f+1|0)>>>0>268435455)Vw(b);m=e+12|0;h=c[m>>2]|0;n=x<<4;o=f<<4;p=c[b+12>>2]|0;q=(h|0)!=0;j=p+4|0;k=jg[c[p>>2]&31](c[j>>2]|0,h,n,o)|0;if((o|0)!=0&(k|0)==0){if(!(c[p+140>>2]|0))qw(b,4);Tw(b,1);h=jg[c[p>>2]&31](c[j>>2]|0,h,n,o)|0;if(!h)qw(b,4);else r=h}else r=k;h=p+12|0;c[h>>2]=(q?0-n|0:0)+o+(c[h>>2]|0);c[m>>2]=r;h=c[t>>2]|0;if(h>>>0<f>>>0)do{c[r+(h<<4)+8>>2]=0;h=h+1|0}while((h|0)!=(f|0));c[t>>2]=f}if(!g){c[v>>2]=316360;j=0;i=316360;h=0}else{h=g+-1|0;if(h>>>0>255){k=h;j=0;while(1){j=j+8|0;h=k>>>8;if(k>>>0>65535)k=h;else break}}else j=0;o=(d[280247+h>>0]|0)+j|0;if((o|0)>30)mw(b,281281,s);j=1<<o;if((j+1|0)>>>0>134217727)Vw(b);m=j<<5;n=c[b+12>>2]|0;h=n+4|0;k=jg[c[n>>2]&31](c[h>>2]|0,0,0,m)|0;if((m|0)!=0&(k|0)==0){if(!(c[n+140>>2]|0))qw(b,4);Tw(b,1);h=jg[c[n>>2]&31](c[h>>2]|0,0,0,m)|0;if(!h)qw(b,4);else i=h}else i=k;h=n+12|0;c[h>>2]=m+(c[h>>2]|0);c[v>>2]=i;h=0;do{c[i+(h<<5)+28>>2]=0;c[i+(h<<5)+24>>2]=0;c[i+(h<<5)+8>>2]=0;h=h+1|0}while((h|0)<(j|0));h=o&255}a[u>>0]=h;c[e+20>>2]=i+(j<<5);if(x>>>0>f>>>0){c[t>>2]=f;p=e+12|0;m=w+8|0;i=f;while(1){h=c[p>>2]|0;if(!(c[h+(i<<4)+8>>2]|0))h=i+1|0;else{k=h+(i<<4)|0;h=i+1|0;a:do if(i>>>0<(c[t>>2]|0)>>>0){i=k;j=37}else{i=(c[v>>2]|0)+(((1<<(d[u>>0]|0))+-1&h)<<5)|0;while(1){if((c[i+24>>2]|0)==19?(s=i+16|0,(c[s+4>>2]|0)==0?(c[s>>2]|0)==(h|0):0):0)break;j=c[i+28>>2]|0;if(!j){j=38;break a}i=i+(j<<5)|0}j=37}while(0);if((j|0)==37){j=0;if((i|0)==316344)j=38}if((j|0)==38){i=w;c[i>>2]=h;c[i+4>>2]=0;c[m>>2]=19;i=Bx(b,e,w)|0};c[i>>2]=c[k>>2];c[i+4>>2]=c[k+4>>2];c[i+8>>2]=c[k+8>>2];c[i+12>>2]=c[k+12>>2]}if((h|0)==(x|0))break;else i=h}if((f+1|0)>>>0>268435455)Vw(b);n=c[p>>2]|0;o=x<<4;j=f<<4;k=c[b+12>>2]|0;m=(n|0)!=0;h=k+4|0;i=jg[c[k>>2]&31](c[h>>2]|0,n,o,j)|0;if((j|0)!=0&(i|0)==0){if(!(c[k+140>>2]|0))qw(b,4);Tw(b,1);h=jg[c[k>>2]&31](c[h>>2]|0,n,o,j)|0;if(!h)qw(b,4);else z=h}else z=i;f=k+12|0;c[f>>2]=(m?0-o|0:0)+j+(c[f>>2]|0);c[p>>2]=z}n=1<<y;if(A<<24>>24!=31){k=n;do{m=k;k=k+-1|0;if(c[B+(k<<5)+8>>2]|0){j=B+(k<<5)|0;i=B+(k<<5)+16|0;h=Cx(e,i)|0;if((h|0)==316344)h=Bx(b,e,i)|0;c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[h+8>>2]=c[j+8>>2];c[h+12>>2]=c[j+12>>2]}}while((m|0)>1)}if((B|0)==316360){l=C;return}A=n<<5;e=c[b+12>>2]|0;jg[c[e>>2]&31](c[e+4>>2]|0,B,A,0)|0;e=e+12|0;c[e>>2]=(B|0?0-A|0:0)+(c[e>>2]|0);l=C;return}function Bx(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0.0;x=l;l=l+160|0;i=x+152|0;v=x+16|0;g=x;switch(c[f+8>>2]|0){case 0:{mw(b,281296,x+144|0);break}case 3:{j=3;break}default:w=f}do if((j|0)==3){y=+h[f>>3];k=+A(+y);if(!(y!=k)?k>=-9223372036854775808.0&k<9223372036854775808.0:0){s=+B(k)>=1.0?(k>0.0?~~+P(+A(k/4294967296.0),4294967295.0)>>>0:~~+N((k-+(~~k>>>0))/4294967296.0)>>>0):0;w=g;c[w>>2]=~~k>>>0;c[w+4>>2]=s;c[g+8>>2]=19;w=g;break}y=+h[f>>3];if(y==y&0.0==0.0)w=f;else mw(b,281315,i)}while(0);g=zx(e,w)|0;m=g+8|0;do if((g|0)==316360|(c[m>>2]|0)!=0){f=e+20|0;s=c[e+16>>2]|0;n=c[f>>2]|0;while(1){if(n>>>0<=s>>>0)break;o=n+-32|0;c[f>>2]=o;if(!(c[n+-8>>2]|0)){j=40;break}else n=o}if((j|0)==40){f=zx(e,g+16|0)|0;if((f|0)==(g|0)){i=g+28|0;f=c[i>>2]|0;if(!f)f=o;else{v=o;c[n+-4>>2]=g+(f<<5)-v>>5;f=v}c[i>>2]=f-g>>5;g=o;break}else{while(1){j=f+28|0;i=f+(c[j>>2]<<5)|0;if((i|0)==(g|0))break;else f=i}i=o;c[j>>2]=i-f>>5;c[o>>2]=c[g>>2];c[o+4>>2]=c[g+4>>2];c[o+8>>2]=c[g+8>>2];c[o+12>>2]=c[g+12>>2];c[o+16>>2]=c[g+16>>2];c[o+20>>2]=c[g+20>>2];c[o+24>>2]=c[g+24>>2];c[o+28>>2]=c[g+28>>2];f=g+28|0;if(c[f>>2]|0){v=n+-4|0;c[v>>2]=(c[v>>2]|0)+(g-i>>5);c[f>>2]=0}c[m>>2]=0;break}}g=v;f=g+128|0;do{c[g>>2]=0;g=g+4|0}while((g|0)<(f|0));n=e+12|0;o=c[e+8>>2]|0;g=0;f=1;p=0;q=1;while(1){if(q>>>0>o>>>0)if(f>>>0>o>>>0){q=g;break}else m=o;else m=q;if(f>>>0>m>>>0){i=f;f=0}else{j=c[n>>2]|0;i=f;f=0;do{f=((c[j+(i+-1<<4)+8>>2]|0)!=0&1)+f|0;i=i+1|0}while(i>>>0<=m>>>0)}r=v+(p<<2)|0;c[r>>2]=(c[r>>2]|0)+f;g=f+g|0;p=p+1|0;if((p|0)>=32){q=g;break}else{f=i;q=q<<1}}m=0;g=1<<(d[e+7>>0]|0);r=0;a:while(1){do{p=g;g=g+-1|0;if(!p)break a}while(!(c[s+(g<<5)+8>>2]|0));if((c[s+(g<<5)+24>>2]|0)==19?(p=s+(g<<5)+16|0,t=c[p>>2]|0,p=c[p+4>>2]|0,!(p>>>0>0|(p|0)==0&t>>>0>2147483648|((p|0)<0|(p|0)==0&t>>>0<1)|(t|0)==0)):0){f=t+-1|0;if(f>>>0>255){j=f;i=0;while(1){i=i+8|0;f=j>>>8;if(j>>>0>65535)j=f;else break}}else i=0;f=v+((d[280247+f>>0]|0)+i<<2)|0;c[f>>2]=(c[f>>2]|0)+1;f=1}else f=0;m=f+m|0;r=r+1|0}j=m+q|0;if((c[w+8>>2]|0)==19?(t=w,u=c[t>>2]|0,t=c[t+4>>2]|0,!(t>>>0>0|(t|0)==0&u>>>0>2147483648|((t|0)<0|(t|0)==0&u>>>0<1)|(u|0)==0)):0){g=u+-1|0;if(g>>>0>255){i=g;f=0;while(1){f=f+8|0;g=i>>>8;if(i>>>0>65535)i=g;else break}}else f=0;g=v+((d[280247+g>>0]|0)+f<<2)|0;c[g>>2]=(c[g>>2]|0)+1;g=1}else g=0;m=j+g|0;if(!m){f=0;g=0}else{n=0;j=0;o=0;f=0;g=0;p=1;while(1){i=c[v+(o<<2)>>2]|0;if(!i)i=j;else{t=i+j|0;u=t>>>0>n>>>0;i=t;f=u?t:f;g=u?p:g}n=p&2147483647;if(m>>>0<=n>>>0)break;else{j=i;o=o+1|0;p=p<<1}}}Ax(b,e,g,q+1+r-f|0);g=Cx(e,w)|0;if((g|0)!=316344){e=g;l=x;return e|0}e=Bx(b,e,w)|0;l=x;return e|0}while(0);t=w;u=c[t+4>>2]|0;v=g+16|0;c[v>>2]=c[t>>2];c[v+4>>2]=u;v=c[w+8>>2]|0;c[g+24>>2]=v;if((v&64|0?(p=e+5|0,q=a[p>>0]|0,q&4):0)?a[(c[w>>2]|0)+5>>0]&3:0){b=c[b+12>>2]|0;a[p>>0]=q&-5;b=b+80|0;c[e+28>>2]=c[b>>2];c[b>>2]=e}e=g;l=x;return e|0}function Cx(b,e){b=b|0;e=e|0;var f=0,g=0,i=0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0;q=l;l=l+16|0;k=q;f=c[e+8>>2]|0;a:do switch(f&63){case 4:{i=c[e>>2]|0;g=(c[b+16>>2]|0)+(((1<<d[b+7>>0])+-1&c[i+8>>2])<<5)|0;while(1){if((c[g+24>>2]|0)==68?(c[g+16>>2]|0)==(i|0):0)break;f=c[g+28>>2]|0;if(!f){p=316344;o=41;break}g=g+(f<<5)|0}if((o|0)==41){l=q;return p|0}p=g;l=q;return p|0}case 19:{k=e;i=c[k>>2]|0;k=c[k+4>>2]|0;f=yQ(i|0,k|0,-1,-1)|0;e=z;if(e>>>0<0|((e|0)==0?f>>>0<(c[b+8>>2]|0)>>>0:0)){p=(c[b+12>>2]|0)+(f<<4)|0;l=q;return p|0}g=(c[b+16>>2]|0)+(((1<<d[b+7>>0])+-1&i)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(b=g+16|0,(c[b>>2]|0)==(i|0)?(c[b+4>>2]|0)==(k|0):0):0)break;f=c[g+28>>2]|0;if(!f){p=316344;o=41;break}g=g+(f<<5)|0}if((o|0)==41){l=q;return p|0}p=g;l=q;return p|0}case 3:{i=e;b:while(1){switch(f|0){case 3:{o=18;break b}case 19:{o=21;break b}default:{}}if((f&15|0)!=4){o=28;break}g=Ww((c[i>>2]|0)+16|0,k)|0;f=c[i>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)!=(f+1|0)){o=28;break}i=k;f=c[k+8>>2]|0}if((o|0)==18){r=+h[i>>3];j=+A(+r);if(!(r!=j)?j>=-9223372036854775808.0&j<9223372036854775808.0:0){m=+B(j)>=1.0?(j>0.0?~~+P(+A(j/4294967296.0),4294967295.0)>>>0:~~+N((j-+(~~j>>>0))/4294967296.0)>>>0):0;n=~~j>>>0}else o=28}else if((o|0)==21){n=i;m=c[n+4>>2]|0;n=c[n>>2]|0}if((o|0)==28)break a;f=yQ(n|0,m|0,-1,-1)|0;e=z;if(e>>>0<0|((e|0)==0?f>>>0<(c[b+8>>2]|0)>>>0:0)){p=(c[b+12>>2]|0)+(f<<4)|0;l=q;return p|0}g=(c[b+16>>2]|0)+(((1<<d[b+7>>0])+-1&n)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(b=g+16|0,(c[b>>2]|0)==(n|0)?(c[b+4>>2]|0)==(m|0):0):0)break;f=c[g+28>>2]|0;if(!f){p=316344;o=41;break}g=g+(f<<5)|0}if((o|0)==41){l=q;return p|0}p=g;l=q;return p|0}case 0:{p=316344;l=q;return p|0}default:{}}while(0);f=zx(b,e)|0;c:do if(!(Ox(0,f+16|0,e)|0)){while(1){g=c[f+28>>2]|0;if(!g){p=316344;break}i=f+(g<<5)|0;if(!(Ox(0,f+(g<<5)+16|0,e)|0))f=i;else{f=i;break c}}l=q;return p|0}while(0);p=f;l=q;return p|0}function Dx(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[b+12>>2]|0;d=f+4|0;e=jg[c[f>>2]&31](c[d>>2]|0,0,5,32)|0;if(!e){if(!(c[f+140>>2]|0))qw(b,4);Tw(b,1);d=jg[c[f>>2]&31](c[d>>2]|0,0,5,32)|0;if(!d)qw(b,4);else g=d}else g=e;b=f+12|0;c[b>>2]=(c[b>>2]|0)+32;a[g+5>>0]=a[f+60>>0]&3;a[g+4>>0]=5;b=f+64|0;c[g>>2]=c[b>>2];c[b>>2]=g;c[g+24>>2]=0;a[g+6>>0]=-1;c[g+12>>2]=0;c[g+8>>2]=0;c[g+16>>2]=316360;a[g+7>>0]=0;c[g+20>>2]=316360;return g|0}function Ex(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;b=c[a+8>>2]|0;if(b|0?(e=c[a+12>>2]|0,(c[e+(b+-1<<4)+8>>2]|0)==0):0){if(b>>>0>1)a=0;else{k=0;return k|0}do{k=(a+b|0)>>>1;j=(c[e+(k+-1<<4)+8>>2]|0)==0;b=j?k:b;a=j?a:k}while((b-a|0)>>>0>1);return a|0}j=c[a+16>>2]|0;if((j|0)==316360){k=b;return k|0}k=a+12|0;i=a+7|0;g=b+1|0;a=b;while(1){e=yQ(g|0,0,-1,-1)|0;f=z;a:do if(f>>>0<0|(f|0)==0&e>>>0<b>>>0)e=(c[k>>2]|0)+(e<<4)|0;else{e=j+(((1<<(d[i>>0]|0))+-1&g)<<5)|0;while(1){if((c[e+24>>2]|0)==19?(f=e+16|0,(c[f+4>>2]|0)==0?(c[f>>2]|0)==(g|0):0):0)break;f=c[e+28>>2]|0;if(!f){e=316344;break a}e=e+(f<<5)|0}}while(0);if(!(c[e+8>>2]|0))break;if(g>>>0>1073741823){f=1;h=18;break}a=g;g=g<<1}if((h|0)==18){while(1){a=yQ(f|0,0,-1,-1)|0;h=z;b:do if(h>>>0<0|(h|0)==0&a>>>0<b>>>0)a=(c[k>>2]|0)+(a<<4)|0;else{a=j+(((1<<(d[i>>0]|0))+-1&f)<<5)|0;while(1){if((c[a+24>>2]|0)==19?(h=a+16|0,(c[h+4>>2]|0)==0?(c[h>>2]|0)==(f|0):0):0)break;e=c[a+28>>2]|0;if(!e){a=316344;break b}a=a+(e<<5)|0}}while(0);if(!(c[a+8>>2]|0))break;else{f=f+1|0;h=18}}k=f+-1|0;return k|0}if((g-a|0)>>>0<=1){k=a;return k|0}do{h=(g+a|0)>>>1;e=yQ(h|0,0,-1,-1)|0;f=z;c:do if(f>>>0<0|(f|0)==0&e>>>0<b>>>0)e=(c[k>>2]|0)+(e<<4)|0;else{e=j+(((1<<(d[i>>0]|0))+2147483647&h)<<5)|0;while(1){if((c[e+24>>2]|0)==19?(f=e+16|0,(c[f+4>>2]|0)==0?(c[f>>2]|0)==(h|0):0):0)break;f=c[e+28>>2]|0;if(!f){e=316344;break c}e=e+(f<<5)|0}}while(0);f=(c[e+8>>2]|0)==0;g=f?h:g;a=f?a:h}while((g-a|0)>>>0>1);return a|0}function Fx(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;i=c[e+8>>2]|0;switch(i&15){case 5:{i=(c[e>>2]|0)+24|0;break}case 7:{i=(c[e>>2]|0)+8|0;break}default:i=(c[b+12>>2]|0)+244+((i&15)<<2)|0}i=c[i>>2]|0;a:do if(!i)i=316344;else{k=c[(c[b+12>>2]|0)+148+(h<<2)>>2]|0;i=(c[i+16>>2]|0)+(((1<<(d[i+7>>0]|0))+-1&c[k+8>>2])<<5)|0;while(1){if((c[i+24>>2]|0)==68?(c[i+16>>2]|0)==(k|0):0)break;j=c[i+28>>2]|0;if(!j){i=316344;break a}i=i+(j<<5)|0}}while(0);b:do if(!(c[i+8>>2]|0)){i=c[f+8>>2]|0;switch(i&15){case 5:{i=(c[f>>2]|0)+24|0;break}case 7:{i=(c[f>>2]|0)+8|0;break}default:i=(c[b+12>>2]|0)+244+((i&15)<<2)|0}i=c[i>>2]|0;if(!i)i=316344;else{k=c[(c[b+12>>2]|0)+148+(h<<2)>>2]|0;i=(c[i+16>>2]|0)+(((1<<(d[i+7>>0]|0))+-1&c[k+8>>2])<<5)|0;while(1){if((c[i+24>>2]|0)==68?(c[i+16>>2]|0)==(k|0):0)break;j=c[i+28>>2]|0;if(!j){i=316344;break b}i=i+(j<<5)|0}}}while(0);if(!(c[i+8>>2]|0)){g=0;return g|0}j=b+28|0;k=c[j>>2]|0;h=b+8|0;l=c[h>>2]|0;c[h>>2]=l+16;c[l>>2]=c[i>>2];c[l+4>>2]=c[i+4>>2];c[l+8>>2]=c[i+8>>2];c[l+12>>2]=c[i+12>>2];i=c[h>>2]|0;c[h>>2]=i+16;c[i>>2]=c[e>>2];c[i+4>>2]=c[e+4>>2];c[i+8>>2]=c[e+8>>2];c[i+12>>2]=c[e+12>>2];e=c[h>>2]|0;c[h>>2]=e+16;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];ww(b,(c[h>>2]|0)+-48|0,1,a[(c[b+16>>2]|0)+34>>0]&2);g=(c[j>>2]|0)+(g-k)|0;f=(c[h>>2]|0)+-16|0;c[h>>2]=f;c[g>>2]=c[f>>2];c[g+4>>2]=c[f+4>>2];c[g+8>>2]=c[f+8>>2];c[g+12>>2]=c[f+12>>2];g=1;return g|0}function Gx(b,e,f,g,i){b=b|0;e=e|0;f=f|0;g=g|0;i=i|0;var j=0.0,k=0,m=0,n=0,o=0,p=0.0;k=l;l=l+32|0;o=k+16|0;m=k;if(Fx(b,e,f,g,i)|0){l=k;return}switch(i|0){case 22:{kw(b,((c[e+8>>2]&15)+-3|0)>>>0<2?f:e,279815);break}case 19:case 17:case 16:case 15:case 14:case 13:{k=e+8|0;i=c[k>>2]|0;if((i|0)!=3)do if((i|0)!=19){if((i&15|0)==4){g=Ww((c[e>>2]|0)+16|0,m)|0;i=c[e>>2]|0;if((a[i+4>>0]|0)==4)i=d[i+7>>0]|0;else i=c[i+12>>2]|0;if((g|0)==(i+1|0))break}ow(b,e,f,281460)}while(0);i=c[f+8>>2]|0;if((i|0)!=3)do if((i|0)!=19){if((i&15|0)==4){g=Ww((c[f>>2]|0)+16|0,m)|0;i=c[f>>2]|0;if((a[i+4>>0]|0)==4)i=d[i+7>>0]|0;else i=c[i+12>>2]|0;if((g|0)==(i+1|0))break}ow(b,e,f,281460)}while(0);i=c[k>>2]|0;if((i|0)==19){k=f;k=lw(b,k)|0;c[o>>2]=k;mw(b,279827,o)}g=e;a:while(1){switch(i|0){case 3:{n=25;break a}case 19:{e=f;break a}default:{}}if((i&15|0)!=4)break;k=Ww((c[g>>2]|0)+16|0,m)|0;i=c[g>>2]|0;if((a[i+4>>0]|0)==4)i=d[i+7>>0]|0;else i=c[i+12>>2]|0;if((k|0)!=(i+1|0))break;g=m;i=c[m+8>>2]|0}if((n|0)==25){p=+h[g>>3];j=+A(+p);if(!(p!=j))e=j>=-9223372036854775808.0&j<9223372036854775808.0?f:e}n=e;n=lw(b,n)|0;c[o>>2]=n;mw(b,279827,o);break}default:ow(b,e,f,281489)}}function Hx(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=c[a>>2]|0;c[d>>2]=c[a+12>>2];c[d+4>>2]=b;Zw(e,281716,d)|0;qw(c[a>>2]|0,3)}function Ix(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;F=l;l=l+16|0;C=F+8|0;D=F;B=Jx(b)|0;y=e+72|0;c[y>>2]=(B|0)==0?f:B;B=b+4|0;m=c[B>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=4;k=D;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,C)|0;f=c[C>>2]|0;if((g|0)==0|(f|0)==0){E=7;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;v=j>>>0>f>>>0;g=v?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!v)break;else{j=j-g|0;k=k+g|0}}if((E|0)==7?j|0:0)Hx(b,281525);c[e+36>>2]=c[D>>2];m=c[B>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=4;k=D;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,C)|0;f=c[C>>2]|0;if((g|0)==0|(f|0)==0){E=15;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;v=j>>>0>f>>>0;g=v?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!v)break;else{j=j-g|0;k=k+g|0}}if((E|0)==15?j|0:0)Hx(b,281525);c[e+40>>2]=c[D>>2];m=c[B>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=1;k=D;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,C)|0;f=c[C>>2]|0;if((g|0)==0|(f|0)==0){E=23;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;v=j>>>0>f>>>0;g=v?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!v)break;else{j=j-g|0;k=k+g|0}}if((E|0)==23?j|0:0)Hx(b,281525);a[e+6>>0]=a[D>>0]|0;m=c[B>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=1;k=D;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,C)|0;f=c[C>>2]|0;if((g|0)==0|(f|0)==0){E=31;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;v=j>>>0>f>>>0;g=v?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!v)break;else{j=j-g|0;k=k+g|0}}if((E|0)==31?j|0:0)Hx(b,281525);a[e+7>>0]=a[D>>0]|0;m=c[B>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=1;k=D;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,C)|0;f=c[C>>2]|0;if((g|0)==0|(f|0)==0){E=39;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;v=j>>>0>f>>>0;g=v?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!v)break;else{j=j-g|0;k=k+g|0}}if((E|0)==39?j|0:0)Hx(b,281525);a[e+8>>0]=a[D>>0]|0;m=c[B>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=4;k=D;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,C)|0;f=c[C>>2]|0;if((g|0)==0|(f|0)==0){E=47;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;v=j>>>0>f>>>0;g=v?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!v)break;else{j=j-g|0;k=k+g|0}}if((E|0)==47?j|0:0)Hx(b,281525);i=c[D>>2]|0;j=c[b>>2]|0;if((i+1|0)>>>0>1073741823)Vw(j);m=i<<2;k=c[j+12>>2]|0;f=k+4|0;g=jg[c[k>>2]&31](c[f>>2]|0,0,0,m)|0;if((m|0)!=0&(g|0)==0){if(!(c[k+140>>2]|0))qw(j,4);Tw(j,1);f=jg[c[k>>2]&31](c[f>>2]|0,0,0,m)|0;if(!f)qw(j,4);else r=f}else r=g;k=k+12|0;c[k>>2]=m+(c[k>>2]|0);c[e+48>>2]=r;c[e+20>>2]=i;k=c[B>>2]|0;a:do if(m|0){n=k+16|0;o=k+8|0;p=k+12|0;q=k+4|0;j=r;f=c[k>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,C)|0;f=c[C>>2]|0;if((g|0)==0|(f|0)==0)break;c[k>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;v=m>>>0>f>>>0;g=v?f:m;PQ(j|0,i|0,g|0)|0;f=(c[k>>2]|0)-g|0;c[k>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!v)break a;else{m=m-g|0;j=j+g|0}}if(m|0)Hx(b,281525)}while(0);m=c[B>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=4;k=D;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,C)|0;f=c[C>>2]|0;if((g|0)==0|(f|0)==0){E=70;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;v=j>>>0>f>>>0;g=v?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!v)break;else{j=j-g|0;k=k+g|0}}if((E|0)==70?j|0:0)Hx(b,281525);v=c[D>>2]|0;i=c[b>>2]|0;if((v+1|0)>>>0>268435455)Vw(i);j=v<<4;k=c[i+12>>2]|0;f=k+4|0;g=jg[c[k>>2]&31](c[f>>2]|0,0,0,j)|0;if((j|0)!=0&(g|0)==0){if(!(c[k+140>>2]|0))qw(i,4);Tw(i,1);f=jg[c[k>>2]&31](c[f>>2]|0,0,0,j)|0;if(!f)qw(i,4);else s=f}else s=g;u=k+12|0;c[u>>2]=j+(c[u>>2]|0);u=e+44|0;c[u>>2]=s;c[e+16>>2]=v;b:do if((v|0)>0){f=0;do{c[s+(f<<4)+8>>2]=0;f=f+1|0}while((f|0)!=(v|0));m=c[B>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=1;k=D;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,C)|0;f=c[C>>2]|0;if((g|0)==0|(f|0)==0){E=86;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;t=j>>>0>f>>>0;g=t?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!t)break;else{j=j-g|0;k=k+g|0}}if((E|0)==86?j|0:0)Hx(b,281525);r=s;t=0;c:while(1){switch(a[D>>0]|0){case 0:{f=0;E=118;break}case 1:{m=c[B>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=1;k=D;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,C)|0;f=c[C>>2]|0;if((g|0)==0|(f|0)==0){E=96;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;G=j>>>0>f>>>0;g=G?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!G)break;else{j=j-g|0;k=k+g|0}}if((E|0)==96?(0,j|0):0){E=97;break c}c[r>>2]=d[D>>0];f=1;E=118;break}case 3:{m=c[B>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=8;k=D;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,C)|0;f=c[C>>2]|0;if((g|0)==0|(f|0)==0){E=105;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;G=j>>>0>f>>>0;g=G?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!G)break;else{j=j-g|0;k=k+g|0}}if((E|0)==105?(0,j|0):0){E=106;break c}h[r>>3]=+h[D>>3];f=3;E=118;break}case 19:{m=c[B>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=8;k=D;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,C)|0;f=c[C>>2]|0;if((g|0)==0|(f|0)==0){E=114;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;G=j>>>0>f>>>0;g=G?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!G)break;else{j=j-g|0;k=k+g|0}}if((E|0)==114?(0,j|0):0){E=115;break c}G=D;E=c[G+4>>2]|0;f=r;c[f>>2]=c[G>>2];c[f+4>>2]=E;f=19;E=118;break}case 20:case 4:{f=Jx(b)|0;c[r>>2]=f;f=(a[f+4>>0]|64)&255;E=118;break}default:{}}if((E|0)==118){E=0;c[s+(t<<4)+8>>2]=f}t=t+1|0;if((t|0)>=(v|0))break b;s=c[u>>2]|0;r=s+(t<<4)|0;m=c[B>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=1;k=D;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,C)|0;f=c[C>>2]|0;if((g|0)==0|(f|0)==0)break;c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;G=j>>>0>f>>>0;g=G?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(G){j=j-g|0;k=k+g|0}else continue c}if(j|0){E=88;break}}if((E|0)==88)Hx(b,281525);else if((E|0)==97)Hx(b,281525);else if((E|0)==106)Hx(b,281525);else if((E|0)==115)Hx(b,281525)}while(0);m=c[B>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=4;k=D;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,C)|0;f=c[C>>2]|0;if((g|0)==0|(f|0)==0){E=133;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;G=j>>>0>f>>>0;g=G?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!G)break;else{j=j-g|0;k=k+g|0}}if((E|0)==133?j|0:0)Hx(b,281525);s=c[D>>2]|0;i=c[b>>2]|0;if((s+1|0)>>>0>536870911)Vw(i);j=s<<3;k=c[i+12>>2]|0;f=k+4|0;g=jg[c[k>>2]&31](c[f>>2]|0,0,0,j)|0;if((j|0)!=0&(g|0)==0){if(!(c[k+140>>2]|0))qw(i,4);Tw(i,1);f=jg[c[k>>2]&31](c[f>>2]|0,0,0,j)|0;if(!f)qw(i,4);else w=f}else w=g;u=k+12|0;c[u>>2]=j+(c[u>>2]|0);u=e+64|0;c[u>>2]=w;c[e+12>>2]=s;d:do if((s|0)>0){f=0;do{c[w+(f<<3)>>2]=0;f=f+1|0}while((f|0)!=(s|0));r=0;while(1){m=c[B>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=1;k=D;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,C)|0;f=c[C>>2]|0;if((g|0)==0|(f|0)==0){E=150;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;G=j>>>0>f>>>0;g=G?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!G)break;else{j=j-g|0;k=k+g|0}}if((E|0)==150?(E=0,j|0):0){E=151;break}a[(c[u>>2]|0)+(r<<3)+4>>0]=a[D>>0]|0;m=c[B>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=1;k=D;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,C)|0;f=c[C>>2]|0;if((g|0)==0|(f|0)==0){E=158;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;G=j>>>0>f>>>0;g=G?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!G)break;else{j=j-g|0;k=k+g|0}}if((E|0)==158?(E=0,j|0):0){E=159;break}a[(c[u>>2]|0)+(r<<3)+5>>0]=a[D>>0]|0;r=r+1|0;if((r|0)>=(s|0))break d}if((E|0)==151)Hx(b,281525);else if((E|0)==159)Hx(b,281525)}while(0);m=c[B>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=4;k=D;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,C)|0;f=c[C>>2]|0;if((g|0)==0|(f|0)==0){E=167;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;G=j>>>0>f>>>0;g=G?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!G)break;else{j=j-g|0;k=k+g|0}}if((E|0)==167?j|0:0)Hx(b,281525);m=c[D>>2]|0;i=c[b>>2]|0;if((m+1|0)>>>0>1073741823)Vw(i);j=m<<2;k=c[i+12>>2]|0;f=k+4|0;g=jg[c[k>>2]&31](c[f>>2]|0,0,0,j)|0;if((j|0)!=0&(g|0)==0){if(!(c[k+140>>2]|0))qw(i,4);Tw(i,1);f=jg[c[k>>2]&31](c[f>>2]|0,0,0,j)|0;if(!f)qw(i,4);else x=f}else x=g;g=k+12|0;c[g>>2]=j+(c[g>>2]|0);g=e+52|0;c[g>>2]=x;c[e+28>>2]=m;if((m|0)>0){c[x>>2]=0;if((m|0)!=1){f=1;do{c[(c[g>>2]|0)+(f<<2)>>2]=0;f=f+1|0}while((f|0)!=(m|0))}f=0;do{G=Gw(c[b>>2]|0)|0;c[(c[g>>2]|0)+(f<<2)>>2]=G;Ix(b,c[(c[g>>2]|0)+(f<<2)>>2]|0,c[y>>2]|0);f=f+1|0}while((f|0)!=(m|0))}m=c[B>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=4;k=D;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,C)|0;f=c[C>>2]|0;if((g|0)==0|(f|0)==0){E=186;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;G=j>>>0>f>>>0;g=G?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!G)break;else{j=j-g|0;k=k+g|0}}if((E|0)==186?j|0:0)Hx(b,281525);i=c[D>>2]|0;j=c[b>>2]|0;if((i+1|0)>>>0>1073741823)Vw(j);m=i<<2;k=c[j+12>>2]|0;f=k+4|0;g=jg[c[k>>2]&31](c[f>>2]|0,0,0,m)|0;if((m|0)!=0&(g|0)==0){if(!(c[k+140>>2]|0))qw(j,4);Tw(j,1);f=jg[c[k>>2]&31](c[f>>2]|0,0,0,m)|0;if(!f)qw(j,4);else z=f}else z=g;k=k+12|0;c[k>>2]=m+(c[k>>2]|0);c[e+56>>2]=z;c[e+24>>2]=i;k=c[B>>2]|0;e:do if(m|0){n=k+16|0;o=k+8|0;p=k+12|0;q=k+4|0;j=z;f=c[k>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,C)|0;f=c[C>>2]|0;if((g|0)==0|(f|0)==0)break;c[k>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;G=m>>>0>f>>>0;g=G?f:m;PQ(j|0,i|0,g|0)|0;f=(c[k>>2]|0)-g|0;c[k>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!G)break e;else{m=m-g|0;j=j+g|0}}if(m|0)Hx(b,281525)}while(0);m=c[B>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=4;k=D;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,C)|0;f=c[C>>2]|0;if((g|0)==0|(f|0)==0){E=209;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;G=j>>>0>f>>>0;g=G?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!G)break;else{j=j-g|0;k=k+g|0}}if((E|0)==209?j|0:0)Hx(b,281525);t=c[D>>2]|0;i=c[b>>2]|0;if((t+1|0)>>>0>357913941)Vw(i);j=t*12|0;k=c[i+12>>2]|0;f=k+4|0;g=jg[c[k>>2]&31](c[f>>2]|0,0,0,j)|0;if((j|0)!=0&(g|0)==0){if(!(c[k+140>>2]|0))qw(i,4);Tw(i,1);f=jg[c[k>>2]&31](c[f>>2]|0,0,0,j)|0;if(!f)qw(i,4);else A=f}else A=g;s=k+12|0;c[s>>2]=j+(c[s>>2]|0);s=e+60|0;c[s>>2]=A;c[e+32>>2]=t;f:do if((t|0)>0){f=0;do{c[A+(f*12|0)>>2]=0;f=f+1|0}while((f|0)!=(t|0));r=0;while(1){m=Jx(b)|0;c[(c[s>>2]|0)+(r*12|0)>>2]=m;m=c[B>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=4;k=D;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,C)|0;f=c[C>>2]|0;if((g|0)==0|(f|0)==0){E=226;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;G=j>>>0>f>>>0;g=G?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!G)break;else{j=j-g|0;k=k+g|0}}if((E|0)==226?(E=0,j|0):0){E=227;break}c[(c[s>>2]|0)+(r*12|0)+4>>2]=c[D>>2];m=c[B>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=4;k=D;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,C)|0;f=c[C>>2]|0;if((g|0)==0|(f|0)==0){E=234;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;G=j>>>0>f>>>0;g=G?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!G)break;else{j=j-g|0;k=k+g|0}}if((E|0)==234?(E=0,j|0):0){E=235;break}c[(c[s>>2]|0)+(r*12|0)+8>>2]=c[D>>2];r=r+1|0;if((r|0)>=(t|0))break f}if((E|0)==227)Hx(b,281525);else if((E|0)==235)Hx(b,281525)}while(0);m=c[B>>2]|0;n=m+16|0;o=m+8|0;p=m+12|0;q=m+4|0;j=4;k=D;f=c[m>>2]|0;while(1){if(!f){g=ig[c[o>>2]&63](c[n>>2]|0,c[p>>2]|0,C)|0;f=c[C>>2]|0;if((g|0)==0|(f|0)==0){E=243;break}c[m>>2]=f;c[q>>2]=g;i=g}else i=c[q>>2]|0;G=j>>>0>f>>>0;g=G?f:j;PQ(k|0,i|0,g|0)|0;f=(c[m>>2]|0)-g|0;c[m>>2]=f;c[q>>2]=(c[q>>2]|0)+g;if(!G)break;else{j=j-g|0;k=k+g|0}}if((E|0)==243?j|0:0)Hx(b,281525);f=c[D>>2]|0;if((f|0)>0)g=0;else{l=F;return}do{G=Jx(b)|0;c[(c[u>>2]|0)+(g<<3)>>2]=G;g=g+1|0}while((g|0)!=(f|0));l=F;return}function Jx(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;v=l;l=l+16|0;u=v+4|0;p=v+8|0;t=v;r=b+4|0;j=c[r>>2]|0;k=j+16|0;m=j+8|0;n=j+12|0;o=j+4|0;h=1;i=p;e=c[j>>2]|0;while(1){if(!e){f=ig[c[m>>2]&63](c[k>>2]|0,c[n>>2]|0,u)|0;e=c[u>>2]|0;if((f|0)==0|(e|0)==0){q=7;break}c[j>>2]=e;c[o>>2]=f;g=f}else g=c[o>>2]|0;w=h>>>0>e>>>0;f=w?e:h;PQ(i|0,g|0,f|0)|0;e=(c[j>>2]|0)-f|0;c[j>>2]=e;c[o>>2]=(c[o>>2]|0)+f;if(!w)break;else{h=h-f|0;i=i+f|0}}if((q|0)==7?h|0:0)Hx(b,281525);w=a[p>>0]|0;e=w&255;c[t>>2]=e;if(w<<24>>24==-1){j=c[r>>2]|0;k=j+16|0;m=j+8|0;n=j+12|0;o=j+4|0;h=4;i=t;e=c[j>>2]|0;while(1){if(!e){f=ig[c[m>>2]&63](c[k>>2]|0,c[n>>2]|0,u)|0;e=c[u>>2]|0;if((f|0)==0|(e|0)==0){q=16;break}c[j>>2]=e;c[o>>2]=f;g=f}else g=c[o>>2]|0;w=h>>>0>e>>>0;f=w?e:h;PQ(i|0,g|0,f|0)|0;e=(c[j>>2]|0)-f|0;c[j>>2]=e;c[o>>2]=(c[o>>2]|0)+f;if(!w)break;else{h=h-f|0;i=i+f|0}}if((q|0)==16?h|0:0)Hx(b,281525);e=c[t>>2]|0}if(!e){w=0;l=v;return w|0}o=c[b>>2]|0;p=c[b+8>>2]|0;h=e+-1|0;c[t>>2]=h;m=p+8|0;n=c[m>>2]|0;if(n>>>0>=h>>>0){d=c[p>>2]|0;if(!h)s=d;else q=27}else{i=h>>>0>32?h:32;e=c[p>>2]|0;j=c[o+12>>2]|0;k=(e|0)!=0;f=j+4|0;g=jg[c[j>>2]&31](c[f>>2]|0,e,n,i)|0;if((i|0)!=0&(g|0)==0){if(!(c[j+140>>2]|0))qw(o,4);Tw(o,1);e=jg[c[j>>2]&31](c[f>>2]|0,e,n,i)|0;if(!e)qw(o,4);else d=e}else d=g;q=j+12|0;c[q>>2]=(k?0-n|0:0)+i+(c[q>>2]|0);c[p>>2]=d;c[m>>2]=i;q=27}a:do if((q|0)==27){j=c[r>>2]|0;k=j+16|0;m=j+8|0;n=j+12|0;o=j+4|0;i=d;f=c[j>>2]|0;while(1){if(!f){e=ig[c[m>>2]&63](c[k>>2]|0,c[n>>2]|0,u)|0;f=c[u>>2]|0;if((e|0)==0|(f|0)==0)break;c[j>>2]=f;c[o>>2]=e}else e=c[o>>2]|0;w=h>>>0>f>>>0;g=w?f:h;PQ(i|0,e|0,g|0)|0;f=(c[j>>2]|0)-g|0;c[j>>2]=f;c[o>>2]=(c[o>>2]|0)+g;if(!w){s=d;break a}else{h=h-g|0;i=i+g|0}}if(!h)s=d;else Hx(b,281525)}while(0);w=xx(c[b>>2]|0,s,c[t>>2]|0)|0;l=v;return w|0}function Kx(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+16|0;q=s;o=b+12|0;n=e;e=c[e+8>>2]|0;m=0;while(1){if((e|0)==69){e=c[n>>2]|0;p=Cx(e,f)|0;if(c[p+8>>2]|0)break;e=c[e+24>>2]|0;if(!e)break;j=e+6|0;k=a[j>>0]|0;if(k&1)break;i=c[(c[o>>2]|0)+148>>2]|0;h=(c[e+16>>2]|0)+(((1<<(d[e+7>>0]|0))+-1&c[i+8>>2])<<5)|0;while(1){if((c[h+24>>2]|0)==68?(c[h+16>>2]|0)==(i|0):0){r=10;break}e=c[h+28>>2]|0;if(!e){h=316344;break}h=h+(e<<5)|0}if((r|0)==10)r=0;e=c[h+8>>2]|0;if(!e){r=14;break}if(!h)break}else{e=c[n+8>>2]|0;switch(e&15){case 5:{e=(c[n>>2]|0)+24|0;break}case 7:{e=(c[n>>2]|0)+8|0;break}default:e=(c[o>>2]|0)+244+((e&15)<<2)|0}e=c[e>>2]|0;a:do if(!e)h=316344;else{i=c[(c[o>>2]|0)+148>>2]|0;h=(c[e+16>>2]|0)+(((1<<(d[e+7>>0]|0))+-1&c[i+8>>2])<<5)|0;while(1){if((c[h+24>>2]|0)==68?(c[h+16>>2]|0)==(i|0):0)break;e=c[h+28>>2]|0;if(!e){h=316344;break a}h=h+(e<<5)|0}}while(0);e=c[h+8>>2]|0;if(!e){r=29;break}}m=m+1|0;if((e&15|0)==6){r=31;break}if((m|0)>=2e3){r=32;break}else n=h}if((r|0)==14)a[j>>0]=k|1;else if((r|0)==29)kw(b,n,281741);else if((r|0)==31){q=b+28|0;r=c[q>>2]|0;p=b+8|0;o=c[p>>2]|0;c[p>>2]=o+16;c[o>>2]=c[h>>2];c[o+4>>2]=c[h+4>>2];c[o+8>>2]=c[h+8>>2];c[o+12>>2]=c[h+12>>2];o=c[p>>2]|0;c[p>>2]=o+16;c[o>>2]=c[n>>2];c[o+4>>2]=c[n+4>>2];c[o+8>>2]=c[n+8>>2];c[o+12>>2]=c[n+12>>2];o=c[p>>2]|0;c[p>>2]=o+16;c[o>>2]=c[f>>2];c[o+4>>2]=c[f+4>>2];c[o+8>>2]=c[f+8>>2];c[o+12>>2]=c[f+12>>2];ww(b,(c[p>>2]|0)+-48|0,1,a[(c[b+16>>2]|0)+34>>0]&2);r=(c[q>>2]|0)+(g-r)|0;q=(c[p>>2]|0)+-16|0;c[p>>2]=q;c[r>>2]=c[q>>2];c[r+4>>2]=c[q+4>>2];c[r+8>>2]=c[q+8>>2];c[r+12>>2]=c[q+12>>2];l=s;return}else if((r|0)==32)mw(b,281747,q);c[g>>2]=c[p>>2];c[g+4>>2]=c[p+4>>2];c[g+8>>2]=c[p+8>>2];c[g+12>>2]=c[p+12>>2];l=s;return}function Lx(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+16|0;q=u;s=b+12|0;o=e;e=c[e+8>>2]|0;n=0;while(1){if((e|0)==69){t=c[o>>2]|0;m=Cx(t,f)|0;if(c[m+8>>2]|0){p=m;break}e=c[t+24>>2]|0;if(!e){r=16;break}j=e+6|0;k=a[j>>0]|0;if(k&2){r=16;break}i=c[(c[s>>2]|0)+152>>2]|0;h=(c[e+16>>2]|0)+(((1<<(d[e+7>>0]|0))+-1&c[i+8>>2])<<5)|0;while(1){if((c[h+24>>2]|0)==68?(c[h+16>>2]|0)==(i|0):0){r=10;break}e=c[h+28>>2]|0;if(!e){h=316344;break}h=h+(e<<5)|0}if((r|0)==10)r=0;e=c[h+8>>2]|0;if(!e){r=14;break}if(!h){r=16;break}}else{e=c[o+8>>2]|0;switch(e&15){case 5:{e=(c[o>>2]|0)+24|0;break}case 7:{e=(c[o>>2]|0)+8|0;break}default:e=(c[s>>2]|0)+244+((e&15)<<2)|0}e=c[e>>2]|0;a:do if(!e)h=316344;else{i=c[(c[s>>2]|0)+152>>2]|0;h=(c[e+16>>2]|0)+(((1<<(d[e+7>>0]|0))+-1&c[i+8>>2])<<5)|0;while(1){if((c[h+24>>2]|0)==68?(c[h+16>>2]|0)==(i|0):0)break;e=c[h+28>>2]|0;if(!e){h=316344;break a}h=h+(e<<5)|0}}while(0);e=c[h+8>>2]|0;if(!e){r=34;break}}n=n+1|0;if((e&15|0)==6){r=36;break}if((n|0)>=2e3){r=37;break}else o=h}if((r|0)==14){a[j>>0]=k|2;r=16}else if((r|0)==34)kw(b,o,281741);else if((r|0)==36){t=b+8|0;s=c[t>>2]|0;c[t>>2]=s+16;c[s>>2]=c[h>>2];c[s+4>>2]=c[h+4>>2];c[s+8>>2]=c[h+8>>2];c[s+12>>2]=c[h+12>>2];s=c[t>>2]|0;c[t>>2]=s+16;c[s>>2]=c[o>>2];c[s+4>>2]=c[o+4>>2];c[s+8>>2]=c[o+8>>2];c[s+12>>2]=c[o+12>>2];s=c[t>>2]|0;c[t>>2]=s+16;c[s>>2]=c[f>>2];c[s+4>>2]=c[f+4>>2];c[s+8>>2]=c[f+8>>2];c[s+12>>2]=c[f+12>>2];s=c[t>>2]|0;c[t>>2]=s+16;c[s>>2]=c[g>>2];c[s+4>>2]=c[g+4>>2];c[s+8>>2]=c[g+8>>2];c[s+12>>2]=c[g+12>>2];ww(b,(c[t>>2]|0)+-64|0,0,a[(c[b+16>>2]|0)+34>>0]&2);l=u;return}else if((r|0)==37)mw(b,281786,q);if((r|0)==16)if((m|0)==316344)p=Bx(b,t,f)|0;else p=m;c[p>>2]=c[g>>2];c[p+4>>2]=c[g+4>>2];c[p+8>>2]=c[g+8>>2];c[p+12>>2]=c[g+12>>2];a[t+6>>0]=0;if(!(c[g+8>>2]&64)){l=u;return}e=t+5|0;h=a[e>>0]|0;if(!(h&4)){l=u;return}if(!(a[(c[g>>2]|0)+5>>0]&3)){l=u;return}g=c[s>>2]|0;a[e>>0]=h&-5;g=g+80|0;c[t+28>>2]=c[g>>2];c[g>>2]=t;l=u;return}function Mx(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,i=0.0,j=0,k=0;j=e+8|0;g=c[j>>2]|0;switch(g&15){case 3:{k=c[f+8>>2]|0;if((k&15|0)==3)if((g|0)==19){g=e;j=c[g>>2]|0;g=c[g+4>>2]|0;if((k|0)==19){k=c[f+4>>2]|0;f=((g|0)<(k|0)|((g|0)==(k|0)?j>>>0<(c[f>>2]|0)>>>0:0))&1;return f|0}i=+h[f>>3];f=yQ(j|0,g|0,0,2097152)|0;k=z;if(k>>>0<4194304|(k|0)==4194304&f>>>0<1){f=+(j>>>0)+4294967296.0*+(g|0)<i&1;return f|0}if(i>=9223372036854775808.0){f=1;return f|0}if(!(i>-9223372036854775808.0)){f=0;return f|0}f=+B(i)>=1.0?(i>0.0?~~+P(+A(i/4294967296.0),4294967295.0)>>>0:~~+N((i-+(~~i>>>0))/4294967296.0)>>>0):0;f=((f|0)>(g|0)|(f|0)==(g|0)&~~i>>>0>>>0>j>>>0)&1;return f|0}else{i=+h[e>>3];if((k|0)==3){f=i<+h[f>>3]&1;return f|0}if(!(i==i&0.0==0.0)){f=0;return f|0}j=f;g=c[j>>2]|0;j=c[j+4>>2]|0;f=yQ(g|0,j|0,0,2097152)|0;k=z;if(!(k>>>0<4194304|(k|0)==4194304&f>>>0<1))if(!(i>=9223372036854775808.0))if(!(i>=-9223372036854775808.0))g=0;else{f=+B(i)>=1.0?(i>0.0?~~+P(+A(i/4294967296.0),4294967295.0)>>>0:~~+N((i-+(~~i>>>0))/4294967296.0)>>>0):0;g=(f|0)>(j|0)|(f|0)==(j|0)&~~i>>>0>>>0>=g>>>0}else g=1;else g=+(g>>>0)+4294967296.0*+(j|0)<=i;f=(g^1)&1;return f|0}break}case 4:{if((c[f+8>>2]&15|0)==4){g=c[e>>2]|0;j=c[f>>2]|0;e=g+16|0;if((a[g+4>>0]|0)==4)b=d[g+7>>0]|0;else b=c[g+12>>2]|0;k=j+16|0;if((a[j+4>>0]|0)==4)j=d[j+7>>0]|0;else j=c[j+12>>2]|0;g=uO(e,k)|0;a:do if(!g){f=j;while(1){g=WO(e)|0;if((g|0)==(f|0)){g=0;break a}if((g|0)==(b|0)){g=-1;break a}j=g+1|0;e=e+j|0;k=k+j|0;g=uO(e,k)|0;if(g|0)break;else{b=b-j|0;f=f-j|0}}}while(0);f=g>>>31;return f|0}break}default:{}}g=b+8|0;if(!(Fx(b,e,f,c[g>>2]|0,20)|0))pw(b,c[j>>2]|0,c[f+8>>2]|0);g=c[g>>2]|0;switch(c[g+8>>2]|0){case 1:{f=(c[g>>2]|0)!=0&1;return f|0}case 0:{f=0;return f|0}default:{f=1;return f|0}}return 0}function Nx(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,i=0.0,j=0,k=0,l=0;j=e+8|0;g=c[j>>2]|0;switch(g&15){case 3:{k=c[f+8>>2]|0;if((k&15|0)==3)if((g|0)==19){g=e;j=c[g>>2]|0;g=c[g+4>>2]|0;if((k|0)==19){e=c[f+4>>2]|0;f=(g|0)<(e|0)|((g|0)==(e|0)?j>>>0<=(c[f>>2]|0)>>>0:0);f=f&1;return f|0}i=+h[f>>3];f=yQ(j|0,g|0,0,2097152)|0;e=z;if(e>>>0<4194304|(e|0)==4194304&f>>>0<1){f=+(j>>>0)+4294967296.0*+(g|0)<=i;f=f&1;return f|0}if(i>=9223372036854775808.0){f=1;f=f&1;return f|0}if(!(i>=-9223372036854775808.0)){f=0;f=f&1;return f|0}f=+B(i)>=1.0?(i>0.0?~~+P(+A(i/4294967296.0),4294967295.0)>>>0:~~+N((i-+(~~i>>>0))/4294967296.0)>>>0):0;f=(f|0)>(g|0)|(f|0)==(g|0)&~~i>>>0>>>0>=j>>>0;f=f&1;return f|0}else{i=+h[e>>3];if((k|0)==3){f=i<=+h[f>>3];f=f&1;return f|0}if(!(i==i&0.0==0.0)){f=0;f=f&1;return f|0}j=f;g=c[j>>2]|0;j=c[j+4>>2]|0;f=yQ(g|0,j|0,0,2097152)|0;e=z;if(!(e>>>0<4194304|(e|0)==4194304&f>>>0<1))if(!(i>=9223372036854775808.0))if(i>-9223372036854775808.0){f=+B(i)>=1.0?(i>0.0?~~+P(+A(i/4294967296.0),4294967295.0)>>>0:~~+N((i-+(~~i>>>0))/4294967296.0)>>>0):0;g=(f|0)>(j|0)|(f|0)==(j|0)&~~i>>>0>>>0>g>>>0}else g=0;else g=1;else g=+(g>>>0)+4294967296.0*+(j|0)<i;f=g^1;f=f&1;return f|0}break}case 4:{if((c[f+8>>2]&15|0)==4){g=c[e>>2]|0;j=c[f>>2]|0;b=g+16|0;if((a[g+4>>0]|0)==4)k=d[g+7>>0]|0;else k=c[g+12>>2]|0;e=j+16|0;if((a[j+4>>0]|0)==4)j=d[j+7>>0]|0;else j=c[j+12>>2]|0;g=uO(b,e)|0;a:do if(!g){f=j;while(1){g=WO(b)|0;j=(g|0)==(k|0);if((g|0)==(f|0))break;if(j){g=-1;break a}j=g+1|0;b=b+j|0;e=e+j|0;g=uO(b,e)|0;if(g|0)break a;else{k=k-j|0;f=f-j|0}}g=(j^1)&1}while(0);f=(g|0)<1;f=f&1;return f|0}break}default:{}}g=b+8|0;if(Fx(b,e,f,c[g>>2]|0,21)|0){g=c[g>>2]|0;switch(c[g+8>>2]|0){case 1:{f=(c[g>>2]|0)!=0;f=f&1;return f|0}case 0:{f=0;f=f&1;return f|0}default:{f=1;f=f&1;return f|0}}}k=b+16|0;l=(c[k>>2]|0)+34|0;a[l>>0]=a[l>>0]|-128;if(!(Fx(b,f,e,c[g>>2]|0,20)|0)){l=(c[k>>2]|0)+34|0;a[l>>0]=a[l>>0]^-128;pw(b,c[j>>2]|0,c[f+8>>2]|0)}g=c[g>>2]|0;switch(c[g+8>>2]|0){case 0:{g=1;break}case 1:{g=(c[g>>2]|0)==0;break}default:g=0}l=(c[k>>2]|0)+34|0;a[l>>0]=a[l>>0]^-128;l=g;l=l&1;return l|0}function Ox(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,i=0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+16|0;r=t;g=c[e+8>>2]|0;m=f+8|0;i=c[m>>2]|0;if((g^i)&63|0){b=g&15;if(!((b|0)==3&(b|0)==(i&15|0))){s=0;s=s&1;l=t;return s|0}do if((g|0)==19){b=e;g=i;n=c[b>>2]|0;i=c[b+4>>2]|0}else{k=r+8|0;a:while(1){switch(g|0){case 3:{s=7;break a}case 19:{s=10;break a}default:{}}if((g&15|0)!=4)break;i=Ww((c[e>>2]|0)+16|0,r)|0;g=c[e>>2]|0;if((a[g+4>>0]|0)==4)g=d[g+7>>0]|0;else g=c[g+12>>2]|0;if((i|0)!=(g+1|0))break;e=r;g=c[k>>2]|0}if((s|0)==7){u=+h[e>>3];j=+A(+u);if(!(u!=j)?j>=-9223372036854775808.0&j<9223372036854775808.0:0){e=~~j>>>0;i=+B(j)>=1.0?(j>0.0?~~+P(+A(j/4294967296.0),4294967295.0)>>>0:~~+N((j-+(~~j>>>0))/4294967296.0)>>>0):0;s=18}}else if((s|0)==10){i=e;e=c[i>>2]|0;i=c[i+4>>2]|0;s=18}if((s|0)==18){g=c[m>>2]|0;n=e;break}s=0;s=s&1;l=t;return s|0}while(0);do if((g|0)==19){g=f;e=c[g>>2]|0;g=c[g+4>>2]|0}else{m=r+8|0;e=f;b:while(1){switch(g|0){case 3:{s=23;break b}case 19:{s=26;break b}default:{}}if((g&15|0)!=4)break;k=Ww((c[e>>2]|0)+16|0,r)|0;g=c[e>>2]|0;if((a[g+4>>0]|0)==4)g=d[g+7>>0]|0;else g=c[g+12>>2]|0;if((k|0)!=(g+1|0))break;e=r;g=c[m>>2]|0}if((s|0)==23){u=+h[e>>3];j=+A(+u);if(!(u!=j)?j>=-9223372036854775808.0&j<9223372036854775808.0:0){e=~~j>>>0;g=+B(j)>=1.0?(j>0.0?~~+P(+A(j/4294967296.0),4294967295.0)>>>0:~~+N((j-+(~~j>>>0))/4294967296.0)>>>0):0;s=34}}else if((s|0)==26){g=e;e=c[g>>2]|0;g=c[g+4>>2]|0;s=34}if((s|0)==34)break;s=0;s=s&1;l=t;return s|0}while(0);s=(n|0)==(e|0)&(i|0)==(g|0);s=s&1;l=t;return s|0}c:do switch(g&63){case 19:{b=e;s=f;s=(c[b>>2]|0)==(c[s>>2]|0)?(c[b+4>>2]|0)==(c[s+4>>2]|0):0;s=s&1;l=t;return s|0}case 3:{s=+h[e>>3]==+h[f>>3];s=s&1;l=t;return s|0}case 1:{s=(c[e>>2]|0)==(c[f>>2]|0);s=s&1;l=t;return s|0}case 2:{s=(c[e>>2]|0)==(c[f>>2]|0);s=s&1;l=t;return s|0}case 22:{s=(c[e>>2]|0)==(c[f>>2]|0);s=s&1;l=t;return s|0}case 4:{s=(c[e>>2]|0)==(c[f>>2]|0);s=s&1;l=t;return s|0}case 20:{i=c[e>>2]|0;g=c[f>>2]|0;e=c[i+12>>2]|0;if((i|0)==(g|0)){s=1;s=s&1;l=t;return s|0}if((e|0)!=(c[g+12>>2]|0)){s=0;s=s&1;l=t;return s|0}s=(KN(i+16|0,g+16|0,e)|0)==0;s=s&1;l=t;return s|0}case 7:{g=c[e>>2]|0;m=c[f>>2]|0;if((g|0)==(m|0)){s=1;s=s&1;l=t;return s|0}if(!b){s=0;s=s&1;l=t;return s|0}g=c[g+8>>2]|0;do if(g|0?(n=g+6|0,o=a[n>>0]|0,(o&32)==0):0){k=c[(c[b+12>>2]|0)+168>>2]|0;g=(c[g+16>>2]|0)+(((1<<d[g+7>>0])+-1&c[k+8>>2])<<5)|0;while(1){if((c[g+24>>2]|0)==68?(c[g+16>>2]|0)==(k|0):0){s=53;break}i=c[g+28>>2]|0;if(!i){g=316344;break}g=g+(i<<5)|0}if(c[g+8>>2]|0)if(!g)break;else break c;else{a[n>>0]=o|32;break}}while(0);g=c[m+8>>2]|0;if(!g){s=0;s=s&1;l=t;return s|0}m=g+6|0;n=a[m>>0]|0;if(n&32){s=0;s=s&1;l=t;return s|0}k=c[(c[b+12>>2]|0)+168>>2]|0;g=(c[g+16>>2]|0)+(((1<<d[g+7>>0])+-1&c[k+8>>2])<<5)|0;while(1){if((c[g+24>>2]|0)==68?(c[g+16>>2]|0)==(k|0):0){s=64;break}i=c[g+28>>2]|0;if(!i){g=316344;break}g=g+(i<<5)|0}if(!(c[g+8>>2]|0)){a[m>>0]=n|32;s=0;s=s&1;l=t;return s|0}else s=93;break}case 5:{g=c[e>>2]|0;m=c[f>>2]|0;if((g|0)==(m|0)){s=1;s=s&1;l=t;return s|0}if(!b){s=0;s=s&1;l=t;return s|0}g=c[g+24>>2]|0;do if(g|0?(p=g+6|0,q=a[p>>0]|0,(q&32)==0):0){k=c[(c[b+12>>2]|0)+168>>2]|0;g=(c[g+16>>2]|0)+(((1<<d[g+7>>0])+-1&c[k+8>>2])<<5)|0;while(1){if((c[g+24>>2]|0)==68?(c[g+16>>2]|0)==(k|0):0){s=76;break}i=c[g+28>>2]|0;if(!i){g=316344;break}g=g+(i<<5)|0}if(c[g+8>>2]|0)if(!g)break;else break c;else{a[p>>0]=q|32;break}}while(0);g=c[m+24>>2]|0;if(!g){s=0;s=s&1;l=t;return s|0}m=g+6|0;n=a[m>>0]|0;if(n&32){s=0;s=s&1;l=t;return s|0}k=c[(c[b+12>>2]|0)+168>>2]|0;g=(c[g+16>>2]|0)+(((1<<d[g+7>>0])+-1&c[k+8>>2])<<5)|0;while(1){if((c[g+24>>2]|0)==68?(c[g+16>>2]|0)==(k|0):0){s=87;break}i=c[g+28>>2]|0;if(!i){g=316344;break}g=g+(i<<5)|0}if(!(c[g+8>>2]|0)){a[m>>0]=n|32;s=0;s=s&1;l=t;return s|0}else s=93;break}case 0:{s=1;s=s&1;l=t;return s|0}default:{s=(c[e>>2]|0)==(c[f>>2]|0);s=s&1;l=t;return s|0}}while(0);if((s|0)==93)if(!g){s=0;s=s&1;l=t;return s|0}s=b+8|0;q=c[s>>2]|0;p=b+28|0;r=c[p>>2]|0;c[s>>2]=q+16;o=q;c[o>>2]=c[g>>2];c[o+4>>2]=c[g+4>>2];c[o+8>>2]=c[g+8>>2];c[o+12>>2]=c[g+12>>2];g=c[s>>2]|0;c[s>>2]=g+16;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];g=c[s>>2]|0;c[s>>2]=g+16;c[g>>2]=c[f>>2];c[g+4>>2]=c[f+4>>2];c[g+8>>2]=c[f+8>>2];c[g+12>>2]=c[f+12>>2];ww(b,(c[s>>2]|0)+-48|0,1,a[(c[b+16>>2]|0)+34>>0]&2);g=(c[p>>2]|0)+(q-r)|0;f=(c[s>>2]|0)+-16|0;c[s>>2]=f;c[g>>2]=c[f>>2];c[g+4>>2]=c[f+4>>2];c[g+8>>2]=c[f+8>>2];c[g+12>>2]=c[f+12>>2];g=c[s>>2]|0;switch(c[g+8>>2]|0){case 1:{s=(c[g>>2]|0)!=0;s=s&1;l=t;return s|0}case 0:{s=0;s=s&1;l=t;return s|0}default:{s=1;s=s&1;l=t;return s|0}}return 0}function Px(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+16|0;t=v;r=b+8|0;s=b+12|0;q=c[r>>2]|0;a:while(1){h=q+-32|0;i=q+-24|0;j=q+-16|0;b:do if(((c[i>>2]&15)+-3|0)>>>0<2){g=q+-8|0;f=c[g>>2]|0;switch(f&15){case 4:break;case 3:{Xw(b,j);f=c[g>>2]|0;break}default:{u=5;break b}}if((f|0)==68?(a[(c[j>>2]|0)+7>>0]|0)==0:0){if((c[i>>2]&15|0)!=3){f=2;break}Xw(b,h);f=2;break}if((c[i>>2]|0)==68?(a[(c[h>>2]|0)+7>>0]|0)==0:0){c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[h+8>>2]=c[j+8>>2];c[h+12>>2]=c[j+12>>2];f=2;break}f=c[j>>2]|0;if((a[f+4>>0]|0)==4)g=d[f+7>>0]|0;else g=c[f+12>>2]|0;c:do if((e|0)>1){f=1;h=g;while(1){p=~f;g=q+(p<<4)|0;switch(c[q+(p<<4)+8>>2]&15){case 4:break;case 3:{Xw(b,g);break}default:{g=h;break c}}g=c[g>>2]|0;if((a[g+4>>0]|0)==4)g=d[g+7>>0]|0;else g=c[g+12>>2]|0;if(g>>>0>=~h>>>0){u=24;break a}g=g+h|0;f=f+1|0;if((f|0)<(e|0))h=g;else break c}}else f=1;while(0);m=c[s>>2]|0;n=m+108|0;o=m+116|0;p=c[o>>2]|0;if(p>>>0<g>>>0){j=g>>>0>32?g:32;g=c[n>>2]|0;k=(g|0)!=0;i=m+4|0;h=jg[c[m>>2]&31](c[i>>2]|0,g,p,j)|0;if((j|0)!=0&(h|0)==0){if(!(c[m+140>>2]|0)){u=31;break a}Tw(b,1);h=jg[c[m>>2]&31](c[i>>2]|0,g,p,j)|0;if(!h){u=31;break a}}m=m+12|0;c[m>>2]=(k?0-p|0:0)+j+(c[m>>2]|0);c[n>>2]=h;c[o>>2]=j}else h=c[n>>2]|0;j=f;k=0;while(1){g=c[q+(0-j<<4)>>2]|0;if((a[g+4>>0]|0)==4)i=d[g+7>>0]|0;else i=c[g+12>>2]|0;PQ(h+k|0,g+16|0,i|0)|0;k=i+k|0;if((j|0)<=1)break;else j=j+-1|0}p=0-f|0;o=xx(b,h,k)|0;c[q+(p<<4)>>2]=o;c[q+(p<<4)+8>>2]=(a[o+4>>0]|64)&255}else u=5;while(0);if((u|0)==5){u=0;if(!(Fx(b,h,j,h,22)|0)){u=6;break}else f=2}e=e+1-f|0;q=(c[r>>2]|0)+(1-f<<4)|0;c[r>>2]=q;if((e|0)<=1){u=40;break}}if((u|0)==6)kw(b,((c[i>>2]&15)+-3|0)>>>0<2?j:h,279815);else if((u|0)==24)mw(b,281825,t);else if((u|0)==31)qw(b,4);else if((u|0)==40){l=v;return}}function Qx(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=c[f+8>>2]|0;a:do switch(g&63){case 5:{j=c[f>>2]|0;g=c[j+24>>2]|0;do if(g|0?(k=g+6|0,l=a[k>>0]|0,(l&16)==0):0){i=c[(c[b+12>>2]|0)+164>>2]|0;g=(c[g+16>>2]|0)+(((1<<(d[g+7>>0]|0))+-1&c[i+8>>2])<<5)|0;while(1){if((c[g+24>>2]|0)==68?(c[g+16>>2]|0)==(i|0):0){m=7;break}h=c[g+28>>2]|0;if(!h){g=316344;break}g=g+(h<<5)|0}if(c[g+8>>2]|0)if(!g)break;else{j=g;break a}else{a[k>>0]=l|16;break}}while(0);b=Ex(j)|0;f=e;c[f>>2]=b;c[f+4>>2]=((b|0)<0)<<31>>31;c[e+8>>2]=19;return}case 4:{b=e;c[b>>2]=d[(c[f>>2]|0)+7>>0];c[b+4>>2]=0;c[e+8>>2]=19;return}case 20:{b=e;c[b>>2]=c[(c[f>>2]|0)+12>>2];c[b+4>>2]=0;c[e+8>>2]=19;return}default:{switch(g&15){case 5:{g=(c[f>>2]|0)+24|0;break}case 7:{g=(c[f>>2]|0)+8|0;break}default:g=(c[b+12>>2]|0)+244+((g&15)<<2)|0}g=c[g>>2]|0;b:do if(!g)g=316344;else{i=c[(c[b+12>>2]|0)+164>>2]|0;g=(c[g+16>>2]|0)+(((1<<(d[g+7>>0]|0))+-1&c[i+8>>2])<<5)|0;while(1){if((c[g+24>>2]|0)==68?(c[g+16>>2]|0)==(i|0):0)break;h=c[g+28>>2]|0;if(!h){g=316344;break b}g=g+(h<<5)|0}}while(0);if(!(c[g+8>>2]|0))kw(b,f,281848);else j=g}}while(0);k=b+28|0;l=c[k>>2]|0;m=b+8|0;i=c[m>>2]|0;c[m>>2]=i+16;c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];j=c[m>>2]|0;c[m>>2]=j+16;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];c[j+8>>2]=c[f+8>>2];c[j+12>>2]=c[f+12>>2];j=c[m>>2]|0;c[m>>2]=j+16;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];c[j+8>>2]=c[f+8>>2];c[j+12>>2]=c[f+12>>2];ww(b,(c[m>>2]|0)+-48|0,1,a[(c[b+16>>2]|0)+34>>0]&2);f=(c[k>>2]|0)+(e-l)|0;e=(c[m>>2]|0)+-16|0;c[m>>2]=e;c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];return}function Rx(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=c[b+16>>2]|0;h=i+16|0;e=c[h>>2]|0;j=i+20|0;k=c[j>>2]|0;l=c[k+-4>>2]|0;switch(l&63){case 12:case 7:case 6:case 28:case 26:case 25:case 17:case 16:case 24:case 23:case 22:case 21:case 20:case 19:case 18:case 15:case 14:case 13:{l=e+((l>>>6&255)<<4)|0;j=b+8|0;k=(c[j>>2]|0)+-16|0;c[j>>2]=k;c[l>>2]=c[k>>2];c[l+4>>2]=c[k+4>>2];c[l+8>>2]=c[k+8>>2];c[l+12>>2]=c[k+12>>2];return}case 31:case 32:case 33:{f=b+8|0;g=c[f>>2]|0;switch(c[g+-8>>2]|0){case 0:{e=1;break}case 1:{e=(c[g+-16>>2]|0)==0;break}default:e=0}e=e&1;c[f>>2]=g+-16;f=i+34|0;g=d[f>>0]|0;if(!(g&128))e=e^1;else a[f>>0]=g^128;if((e|0)==(l>>>6&255|0))return;c[j>>2]=k+4;return}case 29:{f=b+8|0;k=c[f>>2]|0;j=k+-16|0;g=k+-32|0;e=g-(e+(l>>>23<<4))|0;k=k+-48|0;c[k>>2]=c[j>>2];c[k+4>>2]=c[j+4>>2];c[k+8>>2]=c[j+8>>2];c[k+12>>2]=c[j+12>>2];if((e|0)>16){c[f>>2]=g;Px(b,e>>4)}l=(c[h>>2]|0)+((l>>>6&255)<<4)|0;k=(c[f>>2]|0)+-16|0;c[l>>2]=c[k>>2];c[l+4>>2]=c[k+4>>2];c[l+8>>2]=c[k+8>>2];c[l+12>>2]=c[k+12>>2];c[f>>2]=c[i+4>>2];return}case 41:{c[b+8>>2]=c[i+4>>2];return}case 36:{if(!(l&8372224))return;c[b+8>>2]=c[i+4>>2];return}default:return}}
|
|
function kB(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;e=b+16|0;g=c[c[e>>2]>>2]|0;i=g+16|0;C=b+8|0;h=c[C>>2]|0;a:do if(i>>>0>=h>>>0|(i|0)==316344)j=3;else{switch(c[g+24>>2]&15){case 0:{j=3;break a}case 5:{e=g;break}default:{Yx(b,1,281358);e=c[c[e>>2]>>2]|0;h=c[C>>2]|0}}g=e+32|0;if(h>>>0<g>>>0){e=(e+24+4+(3-h)|0)>>>4;f=h;do{c[f+8>>2]=0;f=f+16|0}while(f>>>0<g>>>0);c[C>>2]=h+(e+1<<4)}c[C>>2]=g;B=b+12|0}while(0);if((j|0)==3){if(h>>>0<i>>>0){e=(g+8+4+(3-h)|0)>>>4;f=h;while(1){c[f+8>>2]=0;if(f>>>0<g>>>0)f=f+16|0;else break}c[C>>2]=h+(e+1<<4)}c[C>>2]=i;e=b+12|0;if((c[(c[e>>2]|0)+12>>2]|0)>0)Sw(b);B=Dx(b)|0;j=c[C>>2]|0;c[j>>2]=B;c[j+8>>2]=69;c[C>>2]=(c[C>>2]|0)+16;Ax(b,B,0,12);B=e}i=gw(b,48)|0;g=c[B>>2]|0;h=c[C>>2]|0;f=g+280+(((286024>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286024,e+16|0)|0){e=xx(b,286024,12)|0;c[f>>2]=e}c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;j=c[C>>2]|0;c[C>>2]=j+16;Kx(b,g+40|0,j,j);j=c[C>>2]|0;f=j+-16|0;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];c[j+8>>2]=c[f+8>>2];c[j+12>>2]=c[f+12>>2];j=c[C>>2]|0;c[C>>2]=j+16;f=j+-32|0;e=c[f>>2]|0;D=j;g=c[D+4>>2]|0;h=e+16|0;c[h>>2]=c[D>>2];c[h+4>>2]=g;a[e+6>>0]=c[j+8>>2];e=c[C>>2]|0;do if(((c[e+-8>>2]&64|0)!=0?(k=(c[f>>2]|0)+5|0,l=a[k>>0]|0,(l&4)!=0):0)?(m=c[e+-16>>2]|0,(a[m+5>>0]&3)!=0):0){f=c[B>>2]|0;if((d[f+61>>0]|0)<2){Iw(f,m);e=c[C>>2]|0;break}else{a[k>>0]=a[f+60>>0]&3|l&-8;break}}while(0);c[C>>2]=e+-16;aw(b,-2);c[i>>2]=0;c[i+4>>2]=0;a[i+8>>0]=1;e=i+16|0;f=e+32|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(f|0));e=0;do{if(nO(e)|0){D=i+((e>>3)+16)|0;a[D>>0]=d[D>>0]|0|1<<(e&7)}e=e+1|0}while((e|0)!=256);g=c[C>>2]|0;f=(c[B>>2]|0)+280+(((286152>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286152,e+16|0)|0){e=xx(b,286152,5)|0;c[f>>2]=e}c[g>>2]=e;c[g+8>>2]=(a[e+4>>0]|64)&255;i=c[C>>2]|0;c[C>>2]=i+16;Lx(b,g+-32|0,i,i+-16|0);c[C>>2]=(c[C>>2]|0)+-32;i=gw(b,48)|0;g=c[B>>2]|0;h=c[C>>2]|0;f=g+280+(((286024>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286024,e+16|0)|0){e=xx(b,286024,12)|0;c[f>>2]=e}c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;D=c[C>>2]|0;c[C>>2]=D+16;Kx(b,g+40|0,D,D);D=c[C>>2]|0;f=D+-16|0;c[D>>2]=c[f>>2];c[D+4>>2]=c[f+4>>2];c[D+8>>2]=c[f+8>>2];c[D+12>>2]=c[f+12>>2];D=c[C>>2]|0;c[C>>2]=D+16;f=D+-32|0;e=c[f>>2]|0;k=D;l=c[k+4>>2]|0;m=e+16|0;c[m>>2]=c[k>>2];c[m+4>>2]=l;a[e+6>>0]=c[D+8>>2];e=c[C>>2]|0;do if(((c[e+-8>>2]&64|0)!=0?(n=(c[f>>2]|0)+5|0,o=a[n>>0]|0,(o&4)!=0):0)?(p=c[e+-16>>2]|0,(a[p+5>>0]&3)!=0):0){f=c[B>>2]|0;if((d[f+61>>0]|0)<2){Iw(f,p);e=c[C>>2]|0;break}else{a[n>>0]=a[f+60>>0]&3|o&-8;break}}while(0);c[C>>2]=e+-16;aw(b,-2);c[i>>2]=0;c[i+4>>2]=0;a[i+8>>0]=1;e=i+16|0;f=e+32|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(f|0));e=0;do{if(oO(e)|0){D=i+((e>>3)+16)|0;a[D>>0]=d[D>>0]|0|1<<(e&7)}e=e+1|0}while((e|0)!=256);g=c[C>>2]|0;f=(c[B>>2]|0)+280+(((286158>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286158,e+16|0)|0){e=xx(b,286158,5)|0;c[f>>2]=e}c[g>>2]=e;c[g+8>>2]=(a[e+4>>0]|64)&255;i=c[C>>2]|0;c[C>>2]=i+16;Lx(b,g+-32|0,i,i+-16|0);c[C>>2]=(c[C>>2]|0)+-32;i=gw(b,48)|0;g=c[B>>2]|0;h=c[C>>2]|0;f=g+280+(((286024>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286024,e+16|0)|0){e=xx(b,286024,12)|0;c[f>>2]=e}c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;D=c[C>>2]|0;c[C>>2]=D+16;Kx(b,g+40|0,D,D);D=c[C>>2]|0;f=D+-16|0;c[D>>2]=c[f>>2];c[D+4>>2]=c[f+4>>2];c[D+8>>2]=c[f+8>>2];c[D+12>>2]=c[f+12>>2];D=c[C>>2]|0;c[C>>2]=D+16;f=D+-32|0;e=c[f>>2]|0;n=D;o=c[n+4>>2]|0;p=e+16|0;c[p>>2]=c[n>>2];c[p+4>>2]=o;a[e+6>>0]=c[D+8>>2];e=c[C>>2]|0;do if(((c[e+-8>>2]&64|0)!=0?(q=(c[f>>2]|0)+5|0,r=a[q>>0]|0,(r&4)!=0):0)?(s=c[e+-16>>2]|0,(a[s+5>>0]&3)!=0):0){f=c[B>>2]|0;if((d[f+61>>0]|0)<2){Iw(f,s);e=c[C>>2]|0;break}else{a[q>>0]=a[f+60>>0]&3|r&-8;break}}while(0);c[C>>2]=e+-16;aw(b,-2);c[i>>2]=0;c[i+4>>2]=0;a[i+8>>0]=1;e=i+16|0;f=e+32|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(f|0));e=0;do{if(pO(e)|0){D=i+((e>>3)+16)|0;a[D>>0]=d[D>>0]|0|1<<(e&7)}e=e+1|0}while((e|0)!=256);g=c[C>>2]|0;f=(c[B>>2]|0)+280+(((286164>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286164,e+16|0)|0){e=xx(b,286164,5)|0;c[f>>2]=e}c[g>>2]=e;c[g+8>>2]=(a[e+4>>0]|64)&255;i=c[C>>2]|0;c[C>>2]=i+16;Lx(b,g+-32|0,i,i+-16|0);c[C>>2]=(c[C>>2]|0)+-32;i=gw(b,48)|0;g=c[B>>2]|0;h=c[C>>2]|0;f=g+280+(((286024>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286024,e+16|0)|0){e=xx(b,286024,12)|0;c[f>>2]=e}c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;D=c[C>>2]|0;c[C>>2]=D+16;Kx(b,g+40|0,D,D);D=c[C>>2]|0;f=D+-16|0;c[D>>2]=c[f>>2];c[D+4>>2]=c[f+4>>2];c[D+8>>2]=c[f+8>>2];c[D+12>>2]=c[f+12>>2];D=c[C>>2]|0;c[C>>2]=D+16;f=D+-32|0;e=c[f>>2]|0;q=D;r=c[q+4>>2]|0;s=e+16|0;c[s>>2]=c[q>>2];c[s+4>>2]=r;a[e+6>>0]=c[D+8>>2];e=c[C>>2]|0;do if(((c[e+-8>>2]&64|0)!=0?(t=(c[f>>2]|0)+5|0,u=a[t>>0]|0,(u&4)!=0):0)?(v=c[e+-16>>2]|0,(a[v+5>>0]&3)!=0):0){f=c[B>>2]|0;if((d[f+61>>0]|0)<2){Iw(f,v);e=c[C>>2]|0;break}else{a[t>>0]=a[f+60>>0]&3|u&-8;break}}while(0);c[C>>2]=e+-16;aw(b,-2);c[i>>2]=0;c[i+4>>2]=0;a[i+8>>0]=1;e=i+16|0;f=e+32|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(f|0));e=0;do{if((e+-48|0)>>>0<10){D=i+((e>>3)+16)|0;a[D>>0]=d[D>>0]|0|1<<(e&7)}e=e+1|0}while((e|0)!=256);g=c[C>>2]|0;f=(c[B>>2]|0)+280+(((286170>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286170,e+16|0)|0){e=xx(b,286170,5)|0;c[f>>2]=e}c[g>>2]=e;c[g+8>>2]=(a[e+4>>0]|64)&255;i=c[C>>2]|0;c[C>>2]=i+16;Lx(b,g+-32|0,i,i+-16|0);c[C>>2]=(c[C>>2]|0)+-32;i=gw(b,48)|0;g=c[B>>2]|0;h=c[C>>2]|0;f=g+280+(((286024>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286024,e+16|0)|0){e=xx(b,286024,12)|0;c[f>>2]=e}c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;D=c[C>>2]|0;c[C>>2]=D+16;Kx(b,g+40|0,D,D);D=c[C>>2]|0;f=D+-16|0;c[D>>2]=c[f>>2];c[D+4>>2]=c[f+4>>2];c[D+8>>2]=c[f+8>>2];c[D+12>>2]=c[f+12>>2];D=c[C>>2]|0;c[C>>2]=D+16;f=D+-32|0;e=c[f>>2]|0;t=D;u=c[t+4>>2]|0;v=e+16|0;c[v>>2]=c[t>>2];c[v+4>>2]=u;a[e+6>>0]=c[D+8>>2];e=c[C>>2]|0;do if(((c[e+-8>>2]&64|0)!=0?(w=(c[f>>2]|0)+5|0,x=a[w>>0]|0,(x&4)!=0):0)?(y=c[e+-16>>2]|0,(a[y+5>>0]&3)!=0):0){f=c[B>>2]|0;if((d[f+61>>0]|0)<2){Iw(f,y);e=c[C>>2]|0;break}else{a[w>>0]=a[f+60>>0]&3|x&-8;break}}while(0);c[C>>2]=e+-16;aw(b,-2);c[i>>2]=0;c[i+4>>2]=0;a[i+8>>0]=1;e=i+16|0;f=e+32|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(f|0));e=0;do{if(qO(e)|0){D=i+((e>>3)+16)|0;a[D>>0]=d[D>>0]|0|1<<(e&7)}e=e+1|0}while((e|0)!=256);g=c[C>>2]|0;f=(c[B>>2]|0)+280+(((286176>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286176,e+16|0)|0){e=xx(b,286176,5)|0;c[f>>2]=e}c[g>>2]=e;c[g+8>>2]=(a[e+4>>0]|64)&255;i=c[C>>2]|0;c[C>>2]=i+16;Lx(b,g+-32|0,i,i+-16|0);c[C>>2]=(c[C>>2]|0)+-32;i=gw(b,48)|0;g=c[B>>2]|0;h=c[C>>2]|0;f=g+280+(((286024>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286024,e+16|0)|0){e=xx(b,286024,12)|0;c[f>>2]=e}c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;D=c[C>>2]|0;c[C>>2]=D+16;Kx(b,g+40|0,D,D);D=c[C>>2]|0;f=D+-16|0;c[D>>2]=c[f>>2];c[D+4>>2]=c[f+4>>2];c[D+8>>2]=c[f+8>>2];c[D+12>>2]=c[f+12>>2];D=c[C>>2]|0;c[C>>2]=D+16;f=D+-32|0;e=c[f>>2]|0;w=D;x=c[w+4>>2]|0;y=e+16|0;c[y>>2]=c[w>>2];c[y+4>>2]=x;a[e+6>>0]=c[D+8>>2];e=c[C>>2]|0;do if((c[e+-8>>2]&64|0)!=0?(z=(c[f>>2]|0)+5|0,A=a[z>>0]|0,(A&4)!=0):0){f=c[e+-16>>2]|0;if(!(a[f+5>>0]&3))break;g=c[B>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,f);e=c[C>>2]|0;break}else{a[z>>0]=a[g+60>>0]&3|A&-8;break}}while(0);c[C>>2]=e+-16;aw(b,-2);c[i>>2]=0;c[i+4>>2]=0;a[i+8>>0]=1;e=i+16|0;f=e+32|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(f|0));e=0;do{if(CN(e)|0){D=i+((e>>3)+16)|0;a[D>>0]=d[D>>0]|0|1<<(e&7)}e=e+1|0}while((e|0)!=256);g=c[C>>2]|0;f=(c[B>>2]|0)+280+(((286182>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286182,e+16|0)|0){e=xx(b,286182,5)|0;c[f>>2]=e}c[g>>2]=e;c[g+8>>2]=(a[e+4>>0]|64)&255;j=c[C>>2]|0;c[C>>2]=j+16;Lx(b,g+-32|0,j,j+-16|0);c[C>>2]=(c[C>>2]|0)+-32;j=gw(b,48)|0;g=c[B>>2]|0;h=c[C>>2]|0;f=g+280+(((286024>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286024,e+16|0)|0){e=xx(b,286024,12)|0;c[f>>2]=e}c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;D=c[C>>2]|0;c[C>>2]=D+16;Kx(b,g+40|0,D,D);D=c[C>>2]|0;f=D+-16|0;c[D>>2]=c[f>>2];c[D+4>>2]=c[f+4>>2];c[D+8>>2]=c[f+8>>2];c[D+12>>2]=c[f+12>>2];D=c[C>>2]|0;c[C>>2]=D+16;f=D+-32|0;e=c[f>>2]|0;y=D;z=c[y+4>>2]|0;A=e+16|0;c[A>>2]=c[y>>2];c[A+4>>2]=z;a[e+6>>0]=c[D+8>>2];e=c[C>>2]|0;do if(c[e+-8>>2]&64){f=(c[f>>2]|0)+5|0;g=a[f>>0]|0;if(!(g&4))break;h=c[e+-16>>2]|0;if(!(a[h+5>>0]&3))break;i=c[B>>2]|0;if((d[i+61>>0]|0)<2){Iw(i,h);e=c[C>>2]|0;break}else{a[f>>0]=a[i+60>>0]&3|g&-8;break}}while(0);c[C>>2]=e+-16;aw(b,-2);c[j>>2]=0;c[j+4>>2]=0;a[j+8>>0]=1;e=j+16|0;f=e+32|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(f|0));e=0;do{if(rO(e)|0){D=j+((e>>3)+16)|0;a[D>>0]=d[D>>0]|0|1<<(e&7)}e=e+1|0}while((e|0)!=256);g=c[C>>2]|0;f=(c[B>>2]|0)+280+(((286188>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286188,e+16|0)|0){e=xx(b,286188,5)|0;c[f>>2]=e}c[g>>2]=e;c[g+8>>2]=(a[e+4>>0]|64)&255;j=c[C>>2]|0;c[C>>2]=j+16;Lx(b,g+-32|0,j,j+-16|0);c[C>>2]=(c[C>>2]|0)+-32;j=gw(b,48)|0;g=c[B>>2]|0;h=c[C>>2]|0;f=g+280+(((286024>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286024,e+16|0)|0){e=xx(b,286024,12)|0;c[f>>2]=e}c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;D=c[C>>2]|0;c[C>>2]=D+16;Kx(b,g+40|0,D,D);D=c[C>>2]|0;f=D+-16|0;c[D>>2]=c[f>>2];c[D+4>>2]=c[f+4>>2];c[D+8>>2]=c[f+8>>2];c[D+12>>2]=c[f+12>>2];D=c[C>>2]|0;c[C>>2]=D+16;f=D+-32|0;e=c[f>>2]|0;y=D;z=c[y+4>>2]|0;A=e+16|0;c[A>>2]=c[y>>2];c[A+4>>2]=z;a[e+6>>0]=c[D+8>>2];e=c[C>>2]|0;do if(c[e+-8>>2]&64){f=(c[f>>2]|0)+5|0;g=a[f>>0]|0;if(!(g&4))break;h=c[e+-16>>2]|0;if(!(a[h+5>>0]&3))break;i=c[B>>2]|0;if((d[i+61>>0]|0)<2){Iw(i,h);e=c[C>>2]|0;break}else{a[f>>0]=a[i+60>>0]&3|g&-8;break}}while(0);c[C>>2]=e+-16;aw(b,-2);c[j>>2]=0;c[j+4>>2]=0;a[j+8>>0]=1;e=j+16|0;f=e+32|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(f|0));e=0;do{if(sO(e)|0){D=j+((e>>3)+16)|0;a[D>>0]=d[D>>0]|0|1<<(e&7)}e=e+1|0}while((e|0)!=256);g=c[C>>2]|0;f=(c[B>>2]|0)+280+(((286194>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286194,e+16|0)|0){e=xx(b,286194,5)|0;c[f>>2]=e}c[g>>2]=e;c[g+8>>2]=(a[e+4>>0]|64)&255;j=c[C>>2]|0;c[C>>2]=j+16;Lx(b,g+-32|0,j,j+-16|0);c[C>>2]=(c[C>>2]|0)+-32;j=gw(b,48)|0;g=c[B>>2]|0;h=c[C>>2]|0;f=g+280+(((286024>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286024,e+16|0)|0){e=xx(b,286024,12)|0;c[f>>2]=e}c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;D=c[C>>2]|0;c[C>>2]=D+16;Kx(b,g+40|0,D,D);D=c[C>>2]|0;f=D+-16|0;c[D>>2]=c[f>>2];c[D+4>>2]=c[f+4>>2];c[D+8>>2]=c[f+8>>2];c[D+12>>2]=c[f+12>>2];D=c[C>>2]|0;c[C>>2]=D+16;f=D+-32|0;e=c[f>>2]|0;y=D;z=c[y+4>>2]|0;A=e+16|0;c[A>>2]=c[y>>2];c[A+4>>2]=z;a[e+6>>0]=c[D+8>>2];e=c[C>>2]|0;do if(c[e+-8>>2]&64){f=(c[f>>2]|0)+5|0;g=a[f>>0]|0;if(!(g&4))break;h=c[e+-16>>2]|0;if(!(a[h+5>>0]&3))break;i=c[B>>2]|0;if((d[i+61>>0]|0)<2){Iw(i,h);e=c[C>>2]|0;break}else{a[f>>0]=a[i+60>>0]&3|g&-8;break}}while(0);c[C>>2]=e+-16;aw(b,-2);c[j>>2]=0;c[j+4>>2]=0;a[j+8>>0]=1;e=j+16|0;f=e+32|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(f|0));e=0;do{if(xN(e)|0){D=j+((e>>3)+16)|0;a[D>>0]=d[D>>0]|0|1<<(e&7)}e=e+1|0}while((e|0)!=256);g=c[C>>2]|0;f=(c[B>>2]|0)+280+(((286200>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286200,e+16|0)|0){e=xx(b,286200,5)|0;c[f>>2]=e}c[g>>2]=e;c[g+8>>2]=(a[e+4>>0]|64)&255;j=c[C>>2]|0;c[C>>2]=j+16;Lx(b,g+-32|0,j,j+-16|0);c[C>>2]=(c[C>>2]|0)+-32;j=gw(b,48)|0;g=c[B>>2]|0;h=c[C>>2]|0;f=g+280+(((286024>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286024,e+16|0)|0){e=xx(b,286024,12)|0;c[f>>2]=e}c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;D=c[C>>2]|0;c[C>>2]=D+16;Kx(b,g+40|0,D,D);D=c[C>>2]|0;f=D+-16|0;c[D>>2]=c[f>>2];c[D+4>>2]=c[f+4>>2];c[D+8>>2]=c[f+8>>2];c[D+12>>2]=c[f+12>>2];D=c[C>>2]|0;c[C>>2]=D+16;f=D+-32|0;e=c[f>>2]|0;y=D;z=c[y+4>>2]|0;A=e+16|0;c[A>>2]=c[y>>2];c[A+4>>2]=z;a[e+6>>0]=c[D+8>>2];e=c[C>>2]|0;do if(c[e+-8>>2]&64){f=(c[f>>2]|0)+5|0;g=a[f>>0]|0;if(!(g&4))break;h=c[e+-16>>2]|0;if(!(a[h+5>>0]&3))break;i=c[B>>2]|0;if((d[i+61>>0]|0)<2){Iw(i,h);e=c[C>>2]|0;break}else{a[f>>0]=a[i+60>>0]&3|g&-8;break}}while(0);c[C>>2]=e+-16;aw(b,-2);c[j>>2]=0;c[j+4>>2]=0;a[j+8>>0]=1;e=j+16|0;f=e+32|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(f|0));e=0;do{if(sN(e)|0){D=j+((e>>3)+16)|0;a[D>>0]=d[D>>0]|0|1<<(e&7)}e=e+1|0}while((e|0)!=256);g=c[C>>2]|0;f=(c[B>>2]|0)+280+(((286206>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286206,e+16|0)|0){e=xx(b,286206,5)|0;c[f>>2]=e}c[g>>2]=e;c[g+8>>2]=(a[e+4>>0]|64)&255;j=c[C>>2]|0;c[C>>2]=j+16;Lx(b,g+-32|0,j,j+-16|0);c[C>>2]=(c[C>>2]|0)+-32;j=gw(b,48)|0;g=c[B>>2]|0;h=c[C>>2]|0;f=g+280+(((286024>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286024,e+16|0)|0){e=xx(b,286024,12)|0;c[f>>2]=e}c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;D=c[C>>2]|0;c[C>>2]=D+16;Kx(b,g+40|0,D,D);D=c[C>>2]|0;f=D+-16|0;c[D>>2]=c[f>>2];c[D+4>>2]=c[f+4>>2];c[D+8>>2]=c[f+8>>2];c[D+12>>2]=c[f+12>>2];D=c[C>>2]|0;c[C>>2]=D+16;f=D+-32|0;e=c[f>>2]|0;y=D;z=c[y+4>>2]|0;A=e+16|0;c[A>>2]=c[y>>2];c[A+4>>2]=z;a[e+6>>0]=c[D+8>>2];e=c[C>>2]|0;do if(c[e+-8>>2]&64){f=(c[f>>2]|0)+5|0;g=a[f>>0]|0;if(!(g&4))break;h=c[e+-16>>2]|0;if(!(a[h+5>>0]&3))break;i=c[B>>2]|0;if((d[i+61>>0]|0)<2){Iw(i,h);e=c[C>>2]|0;break}else{a[f>>0]=a[i+60>>0]&3|g&-8;break}}while(0);c[C>>2]=e+-16;aw(b,-2);c[j>>2]=0;c[j+4>>2]=0;a[j+8>>0]=1;e=j+16|0;f=e+32|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(f|0));e=0;do{if(tO(e)|0){D=j+((e>>3)+16)|0;a[D>>0]=d[D>>0]|0|1<<(e&7)}e=e+1|0}while((e|0)!=256);g=c[C>>2]|0;h=g+-32|0;e=(c[B>>2]|0)+280+(((286212>>>0)%127|0)<<2)|0;f=c[e>>2]|0;if(!(JN(286212,f+16|0)|0)){D=f;c[g>>2]=D;D=D+4|0;D=a[D>>0]|0;D=D|64;D=D&255;B=g+8|0;c[B>>2]=D;B=c[C>>2]|0;D=B+16|0;c[C>>2]=D;D=B+-16|0;Lx(b,h,B,D);D=c[C>>2]|0;D=D+-32|0;c[C>>2]=D;return 1}else{D=xx(b,286212,6)|0;c[e>>2]=D;c[g>>2]=D;D=D+4|0;D=a[D>>0]|0;D=D|64;D=D&255;B=g+8|0;c[B>>2]=D;B=c[C>>2]|0;D=B+16|0;c[C>>2]=D;D=B+-16|0;Lx(b,h,B,D);D=c[C>>2]|0;D=D+-32|0;c[C>>2]=D;return 1}return 0}function lB(b){b=b|0;var d=0,e=0;e=b+12|0;d=c[e>>2]|0;if((c[d+12>>2]|0)>0){Sw(b);d=c[e>>2]|0}e=d+280+(((286146>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(JN(286146,d+16|0)|0){d=xx(b,286146,5)|0;c[e>>2]=d}b=b+8|0;e=c[b>>2]|0;c[e>>2]=d;c[e+8>>2]=(a[d+4>>0]|64)&255;c[b>>2]=(c[b>>2]|0)+16;return 1}function mB(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=_x(b,1)|0;i=yQ(i|0,z|0,-1,-1)|0;h=z;if(!(h>>>0<0|(h|0)==0&i>>>0<21474836))Vx(b,1,286133)|0;g=c[c[b+16>>2]>>2]|0;h=b+8|0;d=c[h>>2]|0;i=g+32|0;if(d>>>0<i>>>0){e=(g+24+4+(3-d)|0)>>>4;f=d;do{c[f+8>>2]=0;f=f+16|0}while(f>>>0<i>>>0);c[h>>2]=d+(e+1<<4)}c[h>>2]=i;f=c[b+12>>2]|0;e=f+280+(((287864>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(JN(287864,d+16|0)|0){d=xx(b,287864,13)|0;c[e>>2]=d}c[i>>2]=d;c[g+40>>2]=(a[d+4>>0]|64)&255;i=c[h>>2]|0;c[h>>2]=i+16;Lx(b,f+40|0,i,i+-16|0);c[h>>2]=(c[h>>2]|0)+-32;return 0}function nB(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;e=(c[c[b+16>>2]>>2]|0)+16|0;j=b+8|0;d=c[j>>2]|0;e=e>>>0<d>>>0?e:316344;f=c[e+8>>2]|0;switch(f&15){case 2:{if(c[e>>2]|0){e=(c[b+12>>2]|0)+244+((f&15)<<2)|0;g=5}break}case 7:{e=(c[e>>2]|0)+8|0;g=5;break}default:{}}if((g|0)==5){e=c[e>>2]|0;if(e){c[d>>2]=e;c[d+8>>2]=69;f=c[j>>2]|0;g=f+16|0;c[j>>2]=g;i=b+12|0;h=c[i>>2]|0;e=h+280+(((286024>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(JN(286024,d+16|0)|0){d=xx(b,286024,12)|0;c[e>>2]=d}c[g>>2]=d;c[f+24>>2]=(a[d+4>>0]|64)&255;d=c[j>>2]|0;c[j>>2]=d+16;Kx(b,h+40|0,d,d);d=c[j>>2]|0;e=d+-16|0;f=d+-32|0;if((e|0)!=316344&(f|0)!=316344){h=(Ox(0,e,f)|0)==0;d=c[j>>2]|0;if(!h){c[j>>2]=d+-32;d=c[i>>2]|0;if((c[d+12>>2]|0)>0){Sw(b);d=c[i>>2]|0}e=d+280+(((286125>>>0)%127|0)<<2)|0;d=c[e>>2]|0;if(JN(286125,d+16|0)|0){d=xx(b,286125,7)|0;c[e>>2]=d}b=c[j>>2]|0;c[b>>2]=d;c[b+8>>2]=(a[d+4>>0]|64)&255;b=c[j>>2]|0;b=b+16|0;c[j>>2]=b;return 1}}}}c[d+8>>2]=0;b=d;b=b+16|0;c[j>>2]=b;return 1}function oB(e,f,g){e=e|0;f=f|0;g=g|0;var i=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,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.0;ka=l;l=l+1088|0;ga=ka+1072|0;fa=ka+1064|0;ea=ka+1056|0;ca=ka+1048|0;U=ka+1040|0;X=ka+1032|0;W=ka+1024|0;V=ka+1016|0;T=ka+1008|0;r=ka+1e3|0;ha=ka;G=ka+1076|0;ia=e+16|0;p=c[ia>>2]|0;ja=(f|0)>0;do if(ja){i=(c[p>>2]|0)+(f<<4)|0;if(i>>>0<(c[e+8>>2]|0)>>>0){n=i;da=9}}else{if((f|0)>=-1000999){n=(c[e+8>>2]|0)+(f<<4)|0;da=9;break}if((f|0)==-1001e3){n=(c[e+12>>2]|0)+40|0;da=9;break}i=-1001e3-f|0;k=c[p>>2]|0;if((c[k+8>>2]|0)!=22?(m=c[k>>2]|0,(i|0)<=(d[m+6>>0]|0)):0){n=m+16+(i+-1<<4)|0;da=9}}while(0);a:do if((da|0)==9?(n|0)!=316344:0){b:do switch(c[n+8>>2]&15){case 4:{s=Tv(e,f,G)|0;i=c[G>>2]|0;if(!i){r=gw(e,16)|0;p=e+12|0;n=c[p>>2]|0;m=e+8|0;o=c[m>>2]|0;k=n+280+(((286024>>>0)%127|0)<<2)|0;i=c[k>>2]|0;if(JN(286024,i+16|0)|0){i=xx(e,286024,12)|0;c[k>>2]=i}c[o>>2]=i;c[o+8>>2]=(a[i+4>>0]|64)&255;ha=c[m>>2]|0;c[m>>2]=ha+16;Kx(e,n+40|0,ha,ha);ha=c[m>>2]|0;k=ha+-16|0;c[ha>>2]=c[k>>2];c[ha+4>>2]=c[k+4>>2];c[ha+8>>2]=c[k+8>>2];c[ha+12>>2]=c[k+12>>2];ha=c[m>>2]|0;c[m>>2]=ha+16;k=ha+-32|0;i=c[k>>2]|0;ea=ha;fa=c[ea+4>>2]|0;ga=i+16|0;c[ga>>2]=c[ea>>2];c[ga+4>>2]=fa;a[i+6>>0]=c[ha+8>>2];i=c[m>>2]|0;do if(((c[i+-8>>2]&64|0)!=0?(y=(c[k>>2]|0)+5|0,B=a[y>>0]|0,(B&4)!=0):0)?(C=c[i+-16>>2]|0,(a[C+5>>0]&3)!=0):0){k=c[p>>2]|0;if((d[k+61>>0]|0)<2){Iw(k,C);i=c[m>>2]|0;break}else{a[y>>0]=a[k+60>>0]&3|B&-8;break}}while(0);c[m>>2]=i+-16;aw(e,-2);c[r>>2]=0;c[r+4>>2]=0;n=r+8|0;a[n>>0]=3;break b}p=gw(e,i<<4)|0;o=e+12|0;m=c[o>>2]|0;r=e+8|0;n=c[r>>2]|0;k=m+280+(((286024>>>0)%127|0)<<2)|0;i=c[k>>2]|0;if(JN(286024,i+16|0)|0){i=xx(e,286024,12)|0;c[k>>2]=i}c[n>>2]=i;c[n+8>>2]=(a[i+4>>0]|64)&255;ha=c[r>>2]|0;c[r>>2]=ha+16;Kx(e,m+40|0,ha,ha);ha=c[r>>2]|0;k=ha+-16|0;c[ha>>2]=c[k>>2];c[ha+4>>2]=c[k+4>>2];c[ha+8>>2]=c[k+8>>2];c[ha+12>>2]=c[k+12>>2];ha=c[r>>2]|0;c[r>>2]=ha+16;k=ha+-32|0;i=c[k>>2]|0;ea=ha;fa=c[ea+4>>2]|0;ga=i+16|0;c[ga>>2]=c[ea>>2];c[ga+4>>2]=fa;a[i+6>>0]=c[ha+8>>2];i=c[r>>2]|0;do if(((c[i+-8>>2]&64|0)!=0?(v=(c[k>>2]|0)+5|0,w=a[v>>0]|0,(w&4)!=0):0)?(x=c[i+-16>>2]|0,(a[x+5>>0]&3)!=0):0){k=c[o>>2]|0;if((d[k+61>>0]|0)<2){Iw(k,x);i=c[r>>2]|0;break}else{a[v>>0]=a[k+60>>0]&3|w&-8;break}}while(0);c[r>>2]=i+-16;aw(e,-2);c[p>>2]=0;c[p+4>>2]=0;o=p+8|0;i=c[G>>2]|0;do if((i|0)>1){m=i+-1|0;i=p+((i<<4)+-8)|0;if(!s){k=o;n=0;while(1){a[k>>0]=6;c[k+4>>2]=2;a[k+8>>0]=0;c[k+12>>2]=0;n=n+1|0;if((n|0)==(m|0))break;else k=k+16|0}k=m;da=37;break}else{k=o;n=0;while(1){a[k>>0]=6;c[k+4>>2]=2;a[k+8>>0]=0;c[k+12>>2]=d[s+n>>0];n=n+1|0;if((n|0)==(m|0))break;else k=k+16|0}a[i>>0]=0;da=38;break}}else{i=o;k=0;da=37}while(0);if((da|0)==37){a[i>>0]=0;if(!s){k=i;i=0}else{m=k;da=38}}if((da|0)==38){k=i;i=d[s+m>>0]|0}c[k+4>>2]=i;m=r;n=o;break}case 3:{do if(!ja){if((f|0)>=-1000999){i=(c[e+8>>2]|0)+(f<<4)|0;break}if((f|0)==-1001e3){i=(c[e+12>>2]|0)+40|0;break}k=-1001e3-f|0;i=c[p>>2]|0;if((c[i+8>>2]|0)==22)i=316344;else{i=c[i>>2]|0;i=(k|0)>(d[i+6>>0]|0)?316344:i+16+(k+-1<<4)|0}}else{i=(c[p>>2]|0)+(f<<4)|0;i=i>>>0<(c[e+8>>2]|0)>>>0?i:316344}while(0);k=c[i+8>>2]|0;do if((k|0)!=19){c:while(1){switch(k|0){case 3:{da=52;break c}case 19:{da=55;break c}default:{}}if((k&15|0)!=4){da=63;break}k=Ww((c[i>>2]|0)+16|0,ha)|0;i=c[i>>2]|0;if((a[i+4>>0]|0)==4)i=d[i+7>>0]|0;else i=c[i+12>>2]|0;if((k|0)!=(i+1|0)){da=63;break}i=ha;k=c[ha+8>>2]|0}if((da|0)==52){la=+h[i>>3];q=+A(+la);if(!(la!=q)?q>=-9223372036854775808.0&q<9223372036854775808.0:0){o=~~q>>>0;da=62}else da=63}else if((da|0)==55){o=i;o=c[o>>2]|0;da=62}if((da|0)==62){da=64;break}else if((da|0)==63)break}else{o=c[i>>2]|0;da=64}while(0);if((da|0)==64?o|0:0){if((o|0)>0){r=gw(e,o<<4)|0;p=e+12|0;m=c[p>>2]|0;s=e+8|0;n=c[s>>2]|0;k=m+280+(((286024>>>0)%127|0)<<2)|0;i=c[k>>2]|0;if(JN(286024,i+16|0)|0){i=xx(e,286024,12)|0;c[k>>2]=i}c[n>>2]=i;c[n+8>>2]=(a[i+4>>0]|64)&255;ha=c[s>>2]|0;c[s>>2]=ha+16;Kx(e,m+40|0,ha,ha);ha=c[s>>2]|0;k=ha+-16|0;c[ha>>2]=c[k>>2];c[ha+4>>2]=c[k+4>>2];c[ha+8>>2]=c[k+8>>2];c[ha+12>>2]=c[k+12>>2];ha=c[s>>2]|0;c[s>>2]=ha+16;k=ha+-32|0;i=c[k>>2]|0;ea=ha;fa=c[ea+4>>2]|0;ga=i+16|0;c[ga>>2]=c[ea>>2];c[ga+4>>2]=fa;a[i+6>>0]=c[ha+8>>2];i=c[s>>2]|0;do if(((c[i+-8>>2]&64|0)!=0?(N=(c[k>>2]|0)+5|0,O=a[N>>0]|0,(O&4)!=0):0)?(P=c[i+-16>>2]|0,(a[P+5>>0]&3)!=0):0){k=c[p>>2]|0;if((d[k+61>>0]|0)<2){Iw(k,P);i=c[s>>2]|0;break}else{a[N>>0]=a[k+60>>0]&3|O&-8;break}}while(0);c[s>>2]=i+-16;aw(e,-2);c[r>>2]=0;c[r+4>>2]=0;p=r+8|0;i=p}else{o=0-o|0;s=gw(e,o<<4|8)|0;p=e+12|0;m=c[p>>2]|0;r=e+8|0;n=c[r>>2]|0;k=m+280+(((286024>>>0)%127|0)<<2)|0;i=c[k>>2]|0;if(JN(286024,i+16|0)|0){i=xx(e,286024,12)|0;c[k>>2]=i}c[n>>2]=i;c[n+8>>2]=(a[i+4>>0]|64)&255;ha=c[r>>2]|0;c[r>>2]=ha+16;Kx(e,m+40|0,ha,ha);ha=c[r>>2]|0;k=ha+-16|0;c[ha>>2]=c[k>>2];c[ha+4>>2]=c[k+4>>2];c[ha+8>>2]=c[k+8>>2];c[ha+12>>2]=c[k+12>>2];ha=c[r>>2]|0;c[r>>2]=ha+16;k=ha+-32|0;i=c[k>>2]|0;ea=ha;fa=c[ea+4>>2]|0;ga=i+16|0;c[ga>>2]=c[ea>>2];c[ga+4>>2]=fa;a[i+6>>0]=c[ha+8>>2];i=c[r>>2]|0;do if(((c[i+-8>>2]&64|0)!=0?(Q=(c[k>>2]|0)+5|0,R=a[Q>>0]|0,(R&4)!=0):0)?(S=c[i+-16>>2]|0,(a[S+5>>0]&3)!=0):0){k=c[p>>2]|0;if((d[k+61>>0]|0)<2){Iw(k,S);i=c[r>>2]|0;break}else{a[Q>>0]=a[k+60>>0]&3|R&-8;break}}while(0);c[r>>2]=i+-16;aw(e,-2);c[s>>2]=0;c[s+4>>2]=0;p=s+8|0;a[p>>0]=8;i=s+16|0}if((o|0)>1){m=o+-1|0;k=i;n=0;while(1){a[k>>0]=6;c[k+4>>2]=2;a[k+8>>0]=2;c[k+12>>2]=0;n=n+1|0;if((n|0)==(m|0))break;else k=k+16|0}i=i+((o<<1)+-2<<3)|0}a[i>>0]=2;c[i+4>>2]=0;m=e+8|0;n=p;break b}r=gw(e,16)|0;p=e+12|0;n=c[p>>2]|0;m=e+8|0;o=c[m>>2]|0;k=n+280+(((286024>>>0)%127|0)<<2)|0;i=c[k>>2]|0;if(JN(286024,i+16|0)|0){i=xx(e,286024,12)|0;c[k>>2]=i}c[o>>2]=i;c[o+8>>2]=(a[i+4>>0]|64)&255;ha=c[m>>2]|0;c[m>>2]=ha+16;Kx(e,n+40|0,ha,ha);ha=c[m>>2]|0;k=ha+-16|0;c[ha>>2]=c[k>>2];c[ha+4>>2]=c[k+4>>2];c[ha+8>>2]=c[k+8>>2];c[ha+12>>2]=c[k+12>>2];ha=c[m>>2]|0;c[m>>2]=ha+16;k=ha+-32|0;i=c[k>>2]|0;ea=ha;fa=c[ea+4>>2]|0;ga=i+16|0;c[ga>>2]=c[ea>>2];c[ga+4>>2]=fa;a[i+6>>0]=c[ha+8>>2];i=c[m>>2]|0;do if(((c[i+-8>>2]&64|0)!=0?(K=(c[k>>2]|0)+5|0,L=a[K>>0]|0,(L&4)!=0):0)?(M=c[i+-16>>2]|0,(a[M+5>>0]&3)!=0):0){k=c[p>>2]|0;if((d[k+61>>0]|0)<2){Iw(k,M);i=c[m>>2]|0;break}else{a[K>>0]=a[k+60>>0]&3|L&-8;break}}while(0);c[m>>2]=i+-16;aw(e,-2);c[r>>2]=0;c[r+4>>2]=0;n=r+8|0;a[n>>0]=3;break}case 1:{do if(!ja){if((f|0)>=-1000999){i=(c[e+8>>2]|0)+(f<<4)|0;break}if((f|0)==-1001e3){i=(c[e+12>>2]|0)+40|0;break}k=-1001e3-f|0;i=c[p>>2]|0;if((c[i+8>>2]|0)==22)i=316344;else{i=c[i>>2]|0;i=(k|0)>(d[i+6>>0]|0)?316344:i+16+(k+-1<<4)|0}}else{i=(c[p>>2]|0)+(f<<4)|0;i=i>>>0<(c[e+8>>2]|0)>>>0?i:316344}while(0);switch(c[i+8>>2]|0){case 0:{s=0;break}case 1:{s=(c[i>>2]|0)!=0;break}default:s=1}r=gw(e,16)|0;p=e+12|0;n=c[p>>2]|0;m=e+8|0;o=c[m>>2]|0;k=n+280+(((286024>>>0)%127|0)<<2)|0;i=c[k>>2]|0;if(JN(286024,i+16|0)|0){i=xx(e,286024,12)|0;c[k>>2]=i}c[o>>2]=i;c[o+8>>2]=(a[i+4>>0]|64)&255;ha=c[m>>2]|0;c[m>>2]=ha+16;Kx(e,n+40|0,ha,ha);ha=c[m>>2]|0;k=ha+-16|0;c[ha>>2]=c[k>>2];c[ha+4>>2]=c[k+4>>2];c[ha+8>>2]=c[k+8>>2];c[ha+12>>2]=c[k+12>>2];ha=c[m>>2]|0;c[m>>2]=ha+16;k=ha+-32|0;i=c[k>>2]|0;ea=ha;fa=c[ea+4>>2]|0;ga=i+16|0;c[ga>>2]=c[ea>>2];c[ga+4>>2]=fa;a[i+6>>0]=c[ha+8>>2];i=c[m>>2]|0;do if(((c[i+-8>>2]&64|0)!=0?(D=(c[k>>2]|0)+5|0,E=a[D>>0]|0,(E&4)!=0):0)?(F=c[i+-16>>2]|0,(a[F+5>>0]&3)!=0):0){k=c[p>>2]|0;if((d[k+61>>0]|0)<2){Iw(k,F);i=c[m>>2]|0;break}else{a[D>>0]=a[k+60>>0]&3|E&-8;break}}while(0);c[m>>2]=i+-16;aw(e,-2);c[r>>2]=0;c[r+4>>2]=0;i=r+8|0;if(s){a[i>>0]=3;n=i;break b}else{a[i>>0]=4;n=i;break b}}case 5:{m=e+8|0;K=(c[m>>2]|0)-((c[p>>2]|0)+16)|0;L=K>>4;M=L+2|0;J=L+1|0;N=e+12|0;if((c[(c[N>>2]|0)+12>>2]|0)>0)Sw(e);da=Dx(e)|0;i=c[m>>2]|0;c[i>>2]=da;c[i+8>>2]=69;c[m>>2]=(c[m>>2]|0)+16;Xv(e,f,1,0)|0;i=c[m>>2]|0;if(((c[i+-8>>2]&15)+-3|0)>>>0<2){o=i+-16|0;c[i>>2]=c[o>>2];c[i+4>>2]=c[o+4>>2];c[i+8>>2]=c[o+8>>2];c[i+12>>2]=c[o+12>>2];o=c[m>>2]|0;i=o+16|0;c[m>>2]=i;k=c[ia>>2]|0;do if(!ja){if((f|0)>=-1000999){i=i+(f<<4)|0;break}if((f|0)==-1001e3){i=(c[N>>2]|0)+40|0;break}n=-1001e3-f|0;i=c[k>>2]|0;if((c[i+8>>2]|0)==22)i=316344;else{i=c[i>>2]|0;i=(n|0)>(d[i+6>>0]|0)?316344:i+16+(n+-1<<4)|0}}else{da=(c[k>>2]|0)+(f<<4)|0;i=da>>>0<i>>>0?da:316344}while(0);Kx(e,i,o,o)}else{k=i;c[k>>2]=1;c[k+4>>2]=0;c[i+8>>2]=19;c[m>>2]=i+16;k=i;i=i+-16|0;do{c[ha>>2]=c[i>>2];c[ha+4>>2]=c[i+4>>2];c[ha+8>>2]=c[i+8>>2];c[ha+12>>2]=c[i+12>>2];c[i>>2]=c[k>>2];c[i+4>>2]=c[k+4>>2];c[i+8>>2]=c[k+8>>2];c[i+12>>2]=c[k+12>>2];c[k>>2]=c[ha>>2];c[k+4>>2]=c[ha+4>>2];c[k+8>>2]=c[ha+8>>2];c[k+12>>2]=c[ha+12>>2];i=i+16|0;k=k+-16|0}while(i>>>0<k>>>0)}i=c[m>>2]|0;k=i+-16|0;n=c[i+-8>>2]|0;switch(n&15){case 2:{if(!(c[k>>2]|0))da=150;else{k=(c[N>>2]|0)+244+((n&15)<<2)|0;da=143}break}case 7:{k=(c[k>>2]|0)+8|0;da=143;break}default:da=150}if((da|0)==143){k=c[k>>2]|0;if(k){c[i>>2]=k;c[i+8>>2]=69;n=c[m>>2]|0;o=n+16|0;c[m>>2]=o;p=c[N>>2]|0;k=p+280+(((286024>>>0)%127|0)<<2)|0;i=c[k>>2]|0;if(JN(286024,i+16|0)|0){i=xx(e,286024,12)|0;c[k>>2]=i}c[o>>2]=i;c[n+24>>2]=(a[i+4>>0]|64)&255;i=c[m>>2]|0;c[m>>2]=i+16;Kx(e,p+40|0,i,i);i=c[m>>2]|0;k=i+-16|0;n=i+-32|0;if((k|0)!=316344&(n|0)!=316344){S=(Ox(0,k,n)|0)==0;i=c[m>>2]|0;if(S)da=150;else c[m>>2]=i+-32}else da=150}else da=150}do if((da|0)==150){if((i+-16|0)!=316344?(c[i+-8>>2]&15|0)==0:0){Wx(e,286250,r);break}switch(c[i+-24>>2]&15){case 4:{i=i+-32|0;da=157;break}case 3:{if((c[(c[N>>2]|0)+12>>2]|0)>0){Sw(e);i=c[m>>2]|0}i=i+-32|0;Xw(e,i);da=157;break}default:i=0}if((da|0)==157)i=(c[i>>2]|0)+16|0;c[T>>2]=i;Wx(e,286278,T)}while(0);o=c[m>>2]|0;i=o+-32|0;c[o>>2]=c[i>>2];c[o+4>>2]=c[i+4>>2];c[o+8>>2]=c[i+8>>2];c[o+12>>2]=c[i+12>>2];o=c[m>>2]|0;i=o+16|0;c[i>>2]=1;c[i+4>>2]=0;c[o+24>>2]=19;i=o+32|0;c[m>>2]=i;k=c[ia>>2]|0;H=(K|0)>-16;do if(!H){if((J|0)>=-1000999){i=i+(J<<4)|0;break}if((J|0)==-1001e3){i=(c[N>>2]|0)+40|0;break}n=-1001001-L|0;i=c[k>>2]|0;if((c[i+8>>2]|0)==22)i=316344;else{i=c[i>>2]|0;i=(n|0)>(d[i+6>>0]|0)?316344:i+16+(n+-1<<4)|0}}else{T=(c[k>>2]|0)+(J<<4)|0;i=T>>>0<i>>>0?T:316344}while(0);Lx(e,i,o,o+16|0);o=c[m>>2]|0;i=o+-32|0;c[m>>2]=i;I=L+3|0;k=c[ia>>2]|0;do if((K|0)<=-48){if((I|0)>=-1000999){i=i+(I<<4)|0;break}if((I|0)==-1001e3){i=(c[N>>2]|0)+40|0;break}n=-1001003-L|0;i=c[k>>2]|0;if((c[i+8>>2]|0)==22)i=316344;else{i=c[i>>2]|0;i=(n|0)>(d[i+6>>0]|0)?316344:i+16+(n+-1<<4)|0}}else{T=(c[k>>2]|0)+(I<<4)|0;i=T>>>0<i>>>0?T:316344}while(0);switch(c[i+8>>2]&63){case 4:{i=d[(c[i>>2]|0)+7>>0]|0;break}case 20:{i=c[(c[i>>2]|0)+12>>2]|0;break}case 7:{i=c[(c[i>>2]|0)+12>>2]|0;break}case 5:{i=Ex(c[i>>2]|0)|0;break}default:i=0}i=((i+-16|0)>>>3)+3|0;c[o+-24>>2]=0;c[m>>2]=o+-16;d:do if(!(ew(e,f)|0))C=1;else{t=(K|0)>-32;u=(M|0)<-1000999;v=(M|0)==-1001e3;w=-1001002-L|0;x=w+-1|0;y=ha+8|0;B=e+24|0;C=(J|0)<-1000999;D=(J|0)==-1001e3;E=-1001001-L|0;F=E+-1|0;G=e+28|0;s=1;while(1){e:while(1){k=c[m>>2]|0;n=k+-32|0;k=c[k+-24>>2]|0;f:do if((k|0)==3){q=+h[n>>3];da=195}else{do if((k|0)==19){da=n;q=+((c[da>>2]|0)>>>0)+4294967296.0*+(c[da+4>>2]|0)}else{if((k&15|0)==4){o=Ww((c[n>>2]|0)+16|0,ha)|0;k=c[n>>2]|0;if((a[k+4>>0]|0)==4)k=d[k+7>>0]|0;else k=c[k+12>>2]|0;if((o|0)==(k+1|0)){S=(c[y>>2]|0)==19;da=ha;T=c[da>>2]|0;da=c[da+4>>2]|0;c[j>>2]=T;c[j+4>>2]=da;q=S?+(T>>>0)+4294967296.0*+(da|0):+h[j>>3];break}}da=196;break f}while(0);da=195}while(0);if((da|0)==195?(da=0,!(q==1.0)):0)da=196;if((da|0)==196){da=0;n=c[ia>>2]|0;k=c[m>>2]|0;o=k+-32|0;do if(t){n=(c[n>>2]|0)+(M<<4)|0;n=n>>>0<k>>>0?n:316344}else{if(!u){n=k+(M<<4)|0;break}if(v){n=(c[N>>2]|0)+40|0;break}n=c[n>>2]|0;if((c[n+8>>2]|0)==22)break e;n=c[n>>2]|0;n=(w|0)>(d[n+6>>0]|0)?316344:n+16+(x<<4)|0}while(0);if(!((o|0)!=316344&(n|0)!=316344))break;if(!(Ox(e,o,n)|0)){da=206;break}}c[m>>2]=(c[m>>2]|0)+-16;if(!(ew(e,f)|0)){C=s;break d}}if((da|0)==206)k=c[m>>2]|0;n=k+-16|0;o=c[k+-8>>2]|0;switch(o&15){case 2:{if(!(c[n>>2]|0))da=219;else{n=(c[N>>2]|0)+244+((o&15)<<2)|0;da=212}break}case 7:{n=(c[n>>2]|0)+8|0;da=212;break}default:da=219}if((da|0)==212){da=0;n=c[n>>2]|0;if(n){c[k>>2]=n;c[k+8>>2]=69;o=c[m>>2]|0;p=o+16|0;c[m>>2]=p;r=c[N>>2]|0;n=r+280+(((286024>>>0)%127|0)<<2)|0;k=c[n>>2]|0;if(JN(286024,k+16|0)|0){k=xx(e,286024,12)|0;c[n>>2]=k}c[p>>2]=k;c[o+24>>2]=(a[k+4>>0]|64)&255;k=c[m>>2]|0;c[m>>2]=k+16;Kx(e,r+40|0,k,k);k=c[m>>2]|0;n=k+-16|0;o=k+-32|0;if((n|0)!=316344&(o|0)!=316344){T=(Ox(0,n,o)|0)==0;k=c[m>>2]|0;if(T)da=219;else{k=k+-32|0;c[m>>2]=k}}else da=219}else da=219}if((da|0)==219){da=0;n=c[k+-24>>2]|0;switch(n&15){case 4:{k=k+-32|0;da=223;break}case 3:{if((c[(c[N>>2]|0)+12>>2]|0)>0){Sw(e);k=c[m>>2]|0}k=k+-32|0;Xw(e,k);da=223;break}default:{c[W>>2]=c[5104+(((k+-32|0)==316344?0:(n&15)+1|0)<<2)>>2];k=Vv(e,286313,W)|0}}if((da|0)==223){da=0;c[V>>2]=(c[k>>2]|0)+16;k=Vv(e,294706,V)|0}c[X>>2]=k;Wx(e,286320,X);k=c[m>>2]|0}c[ha>>2]=40;o=c[ia>>2]|0;n=k;do if(((c[B>>2]|0)-n|0)>640){n=40;da=230}else{if(((n-(c[G>>2]|0)>>4)+5|0)<=999960?(rw(e,166,ha)|0)==0:0){k=c[m>>2]|0;n=c[ha>>2]|0;da=230;break}c[U>>2]=286347;Wx(e,282290,U);k=c[m>>2]|0}while(0);if((da|0)==230){da=0;o=o+4|0;n=k+(n<<4)|0;if((c[o>>2]|0)>>>0<n>>>0)c[o>>2]=n}o=k+-32|0;c[k>>2]=c[o>>2];c[k+4>>2]=c[o+4>>2];c[k+8>>2]=c[o+8>>2];c[k+12>>2]=c[o+12>>2];o=c[m>>2]|0;k=o+16|0;c[k>>2]=i;c[k+4>>2]=((i|0)<0)<<31>>31;c[o+24>>2]=19;k=o+32|0;c[m>>2]=k;n=c[ia>>2]|0;do if(!H){if(!C){k=k+(J<<4)|0;break}if(D){k=(c[N>>2]|0)+40|0;break}k=c[n>>2]|0;if((c[k+8>>2]|0)==22)k=316344;else{k=c[k>>2]|0;k=(E|0)>(d[k+6>>0]|0)?316344:k+16+(F<<4)|0}}else{T=(c[n>>2]|0)+(J<<4)|0;k=T>>>0<k>>>0?T:316344}while(0);Lx(e,k,o,o+16|0);n=c[m>>2]|0;o=n+-32|0;c[m>>2]=o;k=n+-48|0;switch(c[n+-40>>2]&63){case 4:{k=d[(c[k>>2]|0)+7>>0]|0;break}case 20:{k=c[(c[k>>2]|0)+12>>2]|0;break}case 7:{k=c[(c[k>>2]|0)+12>>2]|0;break}case 5:{k=Ex(c[k>>2]|0)|0;break}default:k=0}i=i+2+((k+-16|0)>>>3)|0;k=n+-64|0;c[o>>2]=c[k>>2];c[o+4>>2]=c[k+4>>2];c[o+8>>2]=c[k+8>>2];c[o+12>>2]=c[k+12>>2];c[m>>2]=(c[m>>2]|0)+16;k=s+1|0;if(!(ew(e,f)|0)){C=k;break d}else s=k}}while(0);y=gw(e,(i<<3)+16|0)|0;n=c[N>>2]|0;o=c[m>>2]|0;k=n+280+(((286024>>>0)%127|0)<<2)|0;i=c[k>>2]|0;if(JN(286024,i+16|0)|0){i=xx(e,286024,12)|0;c[k>>2]=i}c[o>>2]=i;c[o+8>>2]=(a[i+4>>0]|64)&255;X=c[m>>2]|0;c[m>>2]=X+16;Kx(e,n+40|0,X,X);X=c[m>>2]|0;k=X+-16|0;c[X>>2]=c[k>>2];c[X+4>>2]=c[k+4>>2];c[X+8>>2]=c[k+8>>2];c[X+12>>2]=c[k+12>>2];X=c[m>>2]|0;c[m>>2]=X+16;k=X+-32|0;i=c[k>>2]|0;U=X;V=c[U+4>>2]|0;W=i+16|0;c[W>>2]=c[U>>2];c[W+4>>2]=V;a[i+6>>0]=c[X+8>>2];i=c[m>>2]|0;do if(((c[i+-8>>2]&64|0)!=0?(Y=(c[k>>2]|0)+5|0,Z=a[Y>>0]|0,(Z&4)!=0):0)?(_=c[i+-16>>2]|0,(a[_+5>>0]&3)!=0):0){k=c[N>>2]|0;if((d[k+61>>0]|0)<2){Iw(k,_);i=c[m>>2]|0;break}else{a[Y>>0]=a[k+60>>0]&3|Z&-8;break}}while(0);c[m>>2]=i+-16;aw(e,-2);c[y>>2]=0;c[y+4>>2]=0;B=y+8|0;if((C|0)>=251)Vx(e,f,286347)|0;a[B>>0]=13;c[y+12>>2]=C;if((c[(c[N>>2]|0)+12>>2]|0)>0)Sw(e);k=Dx(e)|0;_=c[m>>2]|0;c[_>>2]=k;c[_+8>>2]=69;_=c[m>>2]|0;c[m>>2]=_+16;k=_+-16|0;i=c[k>>2]|0;X=_;Y=c[X+4>>2]|0;Z=i+16|0;c[Z>>2]=c[X>>2];c[Z+4>>2]=Y;a[i+6>>0]=c[_+8>>2];i=c[m>>2]|0;do if(((c[i+-8>>2]&64|0)!=0?($=(c[k>>2]|0)+5|0,aa=a[$>>0]|0,(aa&4)!=0):0)?(ba=c[i+-16>>2]|0,(a[ba+5>>0]&3)!=0):0){k=c[N>>2]|0;if((d[k+61>>0]|0)<2){Iw(k,ba);i=c[m>>2]|0;break}else{a[$>>0]=a[k+60>>0]&3|aa&-8;break}}while(0);i=i+-16|0;c[m>>2]=i;x=y+16|0;if((C|0)>0){w=0;i=x;do{r=I+(w<<1)|0;o=Xx(e,r)|0;k=c[ia>>2]|0;s=(r|0)>0;do if(s){k=(c[k>>2]|0)+(r<<4)|0;k=k>>>0<(c[m>>2]|0)>>>0?k:316344}else{if((r|0)>=-1000999){k=(c[m>>2]|0)+(r<<4)|0;break}if((r|0)==-1001e3){k=(c[N>>2]|0)+40|0;break}n=-1001e3-r|0;k=c[k>>2]|0;if((c[k+8>>2]|0)==22){k=316344;break}k=c[k>>2]|0;k=(n|0)>(d[k+6>>0]|0)?316344:k+16+(n+-1<<4)|0}while(0);switch(c[k+8>>2]&63){case 4:{k=d[(c[k>>2]|0)+7>>0]|0;break}case 20:{k=c[(c[k>>2]|0)+12>>2]|0;break}case 7:{k=c[(c[k>>2]|0)+12>>2]|0;break}case 5:{k=Ex(c[k>>2]|0)|0;break}default:k=0}p=(k+-16|0)>>>3;a[i>>0]=12;b[i+2>>1]=0;a[i+1>>0]=w;u=i+4|0;c[u>>2]=p+2;v=i+8|0;PQ(v|0,o+8|0,(p<<3)+8|0)|0;o=c[m>>2]|0;p=c[o+-16>>2]|0;aa=p+16|0;ba=c[aa+4>>2]|0;k=o;c[k>>2]=c[aa>>2];c[k+4>>2]=ba;c[o+8>>2]=d[p+6>>0];o=c[m>>2]|0;p=o+16|0;c[m>>2]=p;k=c[ia>>2]|0;do if(s){k=(c[k>>2]|0)+(r<<4)|0;k=k>>>0<p>>>0?k:316344}else{if((r|0)>=-1000999){k=p+(r<<4)|0;break}if((r|0)==-1001e3){k=(c[N>>2]|0)+40|0;break}n=-1001e3-r|0;k=c[k>>2]|0;if((c[k+8>>2]|0)==22){k=316344;break}k=c[k>>2]|0;k=(n|0)>(d[k+6>>0]|0)?316344:k+16+(n+-1<<4)|0}while(0);n=c[k>>2]|0;$=n+16|0;aa=c[$+4>>2]|0;ba=p;c[ba>>2]=c[$>>2];c[ba+4>>2]=aa;c[o+24>>2]=d[n+6>>0];n=c[m>>2]|0;c[m>>2]=n+16;g:do if((n|0)==316344)t=0;else{k=c[n+8>>2]|0;if((k&15|0)!=5){t=0;break}switch(k&63){case 4:{t=d[(c[n>>2]|0)+7>>0]|0;break g}case 20:{t=c[(c[n>>2]|0)+12>>2]|0;break g}case 7:{t=c[(c[n>>2]|0)+12>>2]|0;break g}case 5:{t=Ex(c[n>>2]|0)|0;break g}default:{t=0;break g}}}while(0);o=n+-16|0;h:do if((o|0)==316344)k=0;else{k=c[n+-8>>2]|0;if((k&15|0)!=5){k=0;break}switch(k&63){case 4:{k=d[(c[o>>2]|0)+7>>0]|0;break h}case 20:{k=c[(c[o>>2]|0)+12>>2]|0;break h}case 7:{k=c[(c[o>>2]|0)+12>>2]|0;break h}case 5:{k=Ex(c[o>>2]|0)|0;break h}default:{k=0;break h}}}while(0);if((k+t|0)>65535)Wx(e,286374,ca);do if(!t)k=0;else{if((t|0)<1)break;else s=1;while(1){p=((s|0)<0)<<31>>31;r=c[m>>2]|0;n=c[r+-16>>2]|0;o=yQ(s|0,p|0,-1,-1)|0;ba=z;i:do if(ba>>>0<0|((ba|0)==0?o>>>0<(c[n+8>>2]|0)>>>0:0))n=(c[n+12>>2]|0)+(o<<4)|0;else{n=(c[n+16>>2]|0)+(((1<<d[n+7>>0])+-1&s)<<5)|0;while(1){if((c[n+24>>2]|0)==19?(ba=n+16|0,(c[ba>>2]|0)==(s|0)?(c[ba+4>>2]|0)==(p|0):0):0)break;o=c[n+28>>2]|0;if(!o){n=316344;break i}n=n+(o<<5)|0}}while(0);c[r>>2]=c[n>>2];c[r+4>>2]=c[n+4>>2];c[r+8>>2]=c[n+8>>2];c[r+12>>2]=c[n+12>>2];c[m>>2]=(c[m>>2]|0)+16;ba=s+k|0;$v(e,-3,ba,((ba|0)<0)<<31>>31);if((s|0)==(t|0))break;else s=s+1|0}}while(0);c[m>>2]=(c[m>>2]|0)+-32;pB(v,k);i=i+(c[u>>2]<<3)|0;w=w+1|0}while((w|0)!=(C|0));k=c[m>>2]|0}else{k=i;i=x}a[i>>0]=3;o=c[k+-16>>2]|0;aa=o+16|0;ba=c[aa+4>>2]|0;ca=k;c[ca>>2]=c[aa>>2];c[ca+4>>2]=ba;c[k+8>>2]=d[o+6>>0];c[m>>2]=(c[m>>2]|0)+16;qB(e,J,B,x);o=y+18|0;if(!(b[o>>1]|0)){p=c[m>>2]|0;i=p+-16|0;switch(c[p+-8>>2]&63){case 4:{i=d[(c[i>>2]|0)+7>>0]|0;break}case 20:{i=c[(c[i>>2]|0)+12>>2]|0;break}case 7:{i=c[(c[i>>2]|0)+12>>2]|0;break}case 5:{i=Ex(c[i>>2]|0)|0;break}default:i=0}n=i+1|0;i=c[ia>>2]|0;do if((K|0)>-32){i=(c[i>>2]|0)+(M<<4)|0;i=i>>>0<p>>>0?i:316344}else{if((M|0)>=-1000999){i=p+(M<<4)|0;break}if((M|0)==-1001e3){i=(c[N>>2]|0)+40|0;break}k=-1001002-L|0;i=c[i>>2]|0;if((c[i+8>>2]|0)==22){i=316344;break}i=c[i>>2]|0;i=(k|0)>(d[i+6>>0]|0)?316344:i+16+(k+-1<<4)|0}while(0);c[p>>2]=c[i>>2];c[p+4>>2]=c[i+4>>2];c[p+8>>2]=c[i+8>>2];c[p+12>>2]=c[i+12>>2];c[m>>2]=(c[m>>2]|0)+16;$v(e,-2,n,((n|0)<0)<<31>>31);b[o>>1]=n}if((a[x>>0]|0)==12){i=x;do{if(b[i+2>>1]|0)rB(e,i+8|0,ha,0,0)|0;i=i+(c[i+4>>2]<<3)|0}while((a[i>>0]|0)==12);if((a[x>>0]|0)==12){p=x;do{i=b[p+2>>1]|0;do if(i<<16>>16){if(!(sB(p+8|0)|0))break;n=i&65535;o=c[m>>2]|0;i=c[o+-16>>2]|0;k=yQ(n|0,0,-1,-1)|0;ca=z;j:do if(ca>>>0<0|((ca|0)==0?k>>>0<(c[i+8>>2]|0)>>>0:0))i=(c[i+12>>2]|0)+(k<<4)|0;else{i=(c[i+16>>2]|0)+(((1<<d[i+7>>0])+65535&n)<<5)|0;while(1){if((c[i+24>>2]|0)==19?(ca=i+16|0,(c[ca+4>>2]|0)==0?(c[ca>>2]|0)==(n|0):0):0)break;k=c[i+28>>2]|0;if(!k){i=316344;break j}i=i+(k<<5)|0}}while(0);c[o>>2]=c[i>>2];c[o+4>>2]=c[i+4>>2];c[o+8>>2]=c[i+8>>2];c[o+12>>2]=c[i+12>>2];k=c[m>>2]|0;i=k+16|0;c[m>>2]=i;switch(c[k+8>>2]&15){case 4:{i=k;da=353;break}case 3:{if((c[(c[N>>2]|0)+12>>2]|0)>0){Sw(e);i=c[m>>2]|0}i=i+-16|0;Xw(e,i);da=353;break}default:{if((k|0)==316344)i=-1;else i=c[k+8>>2]&15;c[fa>>2]=c[5104+(i+1<<2)>>2];i=Vv(e,286313,fa)|0}}if((da|0)==353){da=0;c[ea>>2]=(c[i>>2]|0)+16;i=Vv(e,294706,ea)|0}c[ga>>2]=i;Wx(e,286405,ga)}while(0);p=p+(c[p+4>>2]<<3)|0}while((a[p>>0]|0)==12)}}p=c[m>>2]|0;i=p+-16|0;c[m>>2]=i;r=C<<1;n=-2-r|0;k=p+-32|0;o=c[ia>>2]|0;do if((n|0)>0){ga=(c[o>>2]|0)+(n<<4)|0;i=ga>>>0<i>>>0?ga:316344}else{if((n|0)>=-1000999){i=i+(n<<4)|0;break}if((n|0)==-1001e3){i=(c[N>>2]|0)+40|0;break}n=-1001e3-n|0;i=c[o>>2]|0;if((c[i+8>>2]|0)==22){i=316344;break}i=c[i>>2]|0;i=(n|0)>(d[i+6>>0]|0)?316344:i+16+(n+-1<<4)|0}while(0);n=p+-48|0;if(i>>>0<n>>>0){o=i;do{c[ha>>2]=c[o>>2];c[ha+4>>2]=c[o+4>>2];c[ha+8>>2]=c[o+8>>2];c[ha+12>>2]=c[o+12>>2];c[o>>2]=c[n>>2];c[o+4>>2]=c[n+4>>2];c[o+8>>2]=c[n+8>>2];c[o+12>>2]=c[n+12>>2];c[n>>2]=c[ha>>2];c[n+4>>2]=c[ha+4>>2];c[n+8>>2]=c[ha+8>>2];c[n+12>>2]=c[ha+12>>2];o=o+16|0;n=n+-16|0}while(o>>>0<n>>>0)}if(i>>>0<k>>>0)do{c[ha>>2]=c[i>>2];c[ha+4>>2]=c[i+4>>2];c[ha+8>>2]=c[i+8>>2];c[ha+12>>2]=c[i+12>>2];c[i>>2]=c[k>>2];c[i+4>>2]=c[k+4>>2];c[i+8>>2]=c[k+8>>2];c[i+12>>2]=c[k+12>>2];c[k>>2]=c[ha>>2];c[k+4>>2]=c[ha+4>>2];c[k+8>>2]=c[ha+8>>2];c[k+12>>2]=c[ha+12>>2];i=i+16|0;k=k+-16|0}while(i>>>0<k>>>0);k=r^-2;if((C|0)>=0){c[m>>2]=(c[m>>2]|0)+((k|1)<<4);n=B;break b}i=c[c[ia>>2]>>2]|0;n=c[m>>2]|0;o=i+((k|1)<<4)|0;if(n>>>0<o>>>0){i=(i+(k<<4)+8+4+(3-n)|0)>>>4;k=n;do{c[k+8>>2]=0;k=k+16|0}while(k>>>0<o>>>0);c[m>>2]=n+(i+1<<4)}c[m>>2]=o;n=B;break}case 6:{r=gw(e,24)|0;p=e+12|0;n=c[p>>2]|0;m=e+8|0;o=c[m>>2]|0;k=n+280+(((286024>>>0)%127|0)<<2)|0;i=c[k>>2]|0;if(JN(286024,i+16|0)|0){i=xx(e,286024,12)|0;c[k>>2]=i}c[o>>2]=i;c[o+8>>2]=(a[i+4>>0]|64)&255;ha=c[m>>2]|0;c[m>>2]=ha+16;Kx(e,n+40|0,ha,ha);ha=c[m>>2]|0;k=ha+-16|0;c[ha>>2]=c[k>>2];c[ha+4>>2]=c[k+4>>2];c[ha+8>>2]=c[k+8>>2];c[ha+12>>2]=c[k+12>>2];ha=c[m>>2]|0;c[m>>2]=ha+16;k=ha+-32|0;i=c[k>>2]|0;ea=ha;fa=c[ea+4>>2]|0;ga=i+16|0;c[ga>>2]=c[ea>>2];c[ga+4>>2]=fa;a[i+6>>0]=c[ha+8>>2];i=c[m>>2]|0;do if(((c[i+-8>>2]&64|0)!=0?(s=(c[k>>2]|0)+5|0,t=a[s>>0]|0,(t&4)!=0):0)?(u=c[i+-16>>2]|0,(a[u+5>>0]&3)!=0):0){k=c[p>>2]|0;if((d[k+61>>0]|0)<2){Iw(k,u);i=c[m>>2]|0;break}else{a[s>>0]=a[k+60>>0]&3|t&-8;break}}while(0);c[m>>2]=i+-16;aw(e,-2);c[r>>2]=0;c[r+4>>2]=0;n=r+8|0;a[n>>0]=16;if((c[(c[p>>2]|0)+12>>2]|0)>0)Sw(e);ha=Dx(e)|0;k=c[m>>2]|0;c[k>>2]=ha;c[k+8>>2]=69;c[m>>2]=(c[m>>2]|0)+16;Ax(e,ha,1,0);ha=c[m>>2]|0;k=ha+-32|0;i=c[k>>2]|0;ea=ha+-16|0;fa=c[ea+4>>2]|0;ga=i+16|0;c[ga>>2]=c[ea>>2];c[ga+4>>2]=fa;a[i+6>>0]=c[ha+-8>>2];i=c[m>>2]|0;do if(((c[i+-8>>2]&64|0)!=0?(H=(c[k>>2]|0)+5|0,I=a[H>>0]|0,(I&4)!=0):0)?(J=c[i+-16>>2]|0,(a[J+5>>0]&3)!=0):0){k=c[p>>2]|0;if((d[k+61>>0]|0)<2){Iw(k,J);i=c[m>>2]|0;break}else{a[H>>0]=a[k+60>>0]&3|I&-8;break}}while(0);c[m>>2]=i+-16;b[r+10>>1]=tB(e,f)|0;a[r+16>>0]=3;break}default:break a}while(0);Rv(e,f);k=(c[m>>2]|0)+-16|0;c[m>>2]=k;if(!g){g=n;l=ka;return g|0}i=c[ia>>2]|0;do if(!ja){if((f|0)>=-1000999){i=k+(f<<4)|0;break}if((f|0)==-1001e3){i=(c[e+12>>2]|0)+40|0;break}k=-1001e3-f|0;i=c[i>>2]|0;if((c[i+8>>2]|0)==22)i=316344;else{i=c[i>>2]|0;i=(k|0)>(d[i+6>>0]|0)?316344:i+16+(k+-1<<4)|0}}else{i=(c[i>>2]|0)+(f<<4)|0;i=i>>>0<k>>>0?i:316344}while(0);switch(c[i+8>>2]&63){case 4:{i=d[(c[i>>2]|0)+7>>0]|0;break}case 20:{i=c[(c[i>>2]|0)+12>>2]|0;break}case 7:{i=c[(c[i>>2]|0)+12>>2]|0;break}case 5:{i=Ex(c[i>>2]|0)|0;break}default:i=0}c[g>>2]=((i+-16|0)>>>3)+1;g=n;l=ka;return g|0}while(0);m=Xx(e,f)|0;if(g|0){i=c[ia>>2]|0;do if(!ja){if((f|0)>=-1000999){i=(c[e+8>>2]|0)+(f<<4)|0;break}if((f|0)==-1001e3){i=(c[e+12>>2]|0)+40|0;break}k=-1001e3-f|0;i=c[i>>2]|0;if((c[i+8>>2]|0)==22)i=316344;else{i=c[i>>2]|0;i=(k|0)>(d[i+6>>0]|0)?316344:i+16+(k+-1<<4)|0}}else{i=(c[i>>2]|0)+(f<<4)|0;i=i>>>0<(c[e+8>>2]|0)>>>0?i:316344}while(0);switch(c[i+8>>2]&63){case 4:{i=d[(c[i>>2]|0)+7>>0]|0;break}case 20:{i=c[(c[i>>2]|0)+12>>2]|0;break}case 7:{i=c[(c[i>>2]|0)+12>>2]|0;break}case 5:{i=Ex(c[i>>2]|0)|0;break}default:i=0}c[g>>2]=((i+-16|0)>>>3)+1}g=m+8|0;l=ka;return g|0}function pB(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0;if(!e)return;a:while(1){g=a[d>>0]|0;h=g&255;b:do switch(g<<24>>24){case 12:case 16:case 10:case 11:{f=d+2|0;g=b[f>>1]|0;if(g<<16>>16)b[f>>1]=(g&65535)+e;break}case 15:{g=d+2|0;i=b[g>>1]|0;f=i&65535;if(i<<16>>16){switch(a[d+1>>0]|0){case 10:case 4:break b;default:{}}b[g>>1]=f+e}break}default:{}}while(0);switch(a[286007+h>>0]|0){case 1:{f=1;break}case 2:{pB(d+8|0,e);f=c[d+4>>2]|0;break}default:break a}d=d+(f<<3)|0}return}function qB(f,g,i,k){f=f|0;g=g|0;i=i|0;k=k|0;var m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;N=l;l=l+64|0;K=N+56|0;J=N+48|0;M=N+40|0;L=N+32|0;I=N+24|0;H=N+16|0;G=N;u=(i|0)==0;v=i;x=f+8|0;y=f+12|0;A=f+16|0;B=(g|0)>0;C=G+8|0;D=(g|0)<-1000999;E=(g|0)==-1001e3;F=-1001e3-g|0;w=F+-1|0;t=k;a:while(1){k=a[t>>0]|0;b:do switch(k<<24>>24){case 13:{s=64;break a}case 11:{r=t+2|0;o=e[r>>1]|0;p=c[x>>2]|0;k=c[p+-16>>2]|0;n=yQ(o|0,0,-1,-1)|0;q=z;c:do if(q>>>0<0|((q|0)==0?n>>>0<(c[k+8>>2]|0)>>>0:0))k=(c[k+12>>2]|0)+(n<<4)|0;else{k=(c[k+16>>2]|0)+(((1<<d[k+7>>0])+65535&o)<<5)|0;while(1){if((c[k+24>>2]|0)==19?(q=k+16|0,(c[q+4>>2]|0)==0?(c[q>>2]|0)==(o|0):0):0)break;n=c[k+28>>2]|0;if(!n){k=316344;break c}k=k+(n<<5)|0}}while(0);c[p>>2]=c[k>>2];c[p+4>>2]=c[k+4>>2];c[p+8>>2]=c[k+8>>2];c[p+12>>2]=c[k+12>>2];o=c[x>>2]|0;k=o+16|0;c[x>>2]=k;if(u){n=c[o+8>>2]|0;switch(n&15){case 4:{k=o;s=55;break}case 3:{if((c[(c[y>>2]|0)+12>>2]|0)>0){Sw(f);k=c[x>>2]|0}k=k+-16|0;Xw(f,k);s=55;break}default:{c[J>>2]=c[5104+(((o|0)==316344?0:(n&15)+1|0)<<2)>>2];k=Vv(f,286313,J)|0}}if((s|0)==55){s=0;c[M>>2]=(c[k>>2]|0)+16;k=Vv(f,294706,M)|0}c[K>>2]=k;Wx(f,286529,K);k=a[t>>0]|0;break b}n=c[A>>2]|0;do if(!B){if(!D){k=k+(g<<4)|0;break}if(E){k=(c[y>>2]|0)+40|0;break}k=c[n>>2]|0;if((c[k+8>>2]|0)==22)k=316344;else{k=c[k>>2]|0;k=(F|0)>(d[k+6>>0]|0)?316344:k+16+(w<<4)|0}}else{q=(c[n>>2]|0)+(g<<4)|0;k=q>>>0<k>>>0?q:316344}while(0);Kx(f,k,o,o);k=c[x>>2]|0;n=k+-16|0;k=c[k+-8>>2]|0;d:do if((k|0)==3)m=+h[n>>3];else do if((k|0)==19){q=n;m=+((c[q>>2]|0)>>>0)+4294967296.0*+(c[q+4>>2]|0)}else{if((k&15|0)==4){o=Ww((c[n>>2]|0)+16|0,G)|0;k=c[n>>2]|0;if((a[k+4>>0]|0)==4)k=d[k+7>>0]|0;else k=c[k+12>>2]|0;if((o|0)==(k+1|0)){o=(c[C>>2]|0)==19;q=G;p=c[q>>2]|0;q=c[q+4>>2]|0;c[j>>2]=p;c[j+4>>2]=q;m=o?+(p>>>0)+4294967296.0*+(q|0):+h[j>>3];break}}m=0.0;break d}while(0);while(0);q=~~m;k=c[x>>2]|0;p=k+-16|0;c[x>>2]=p;if(!q){o=e[r>>1]|0;k=c[k+-32>>2]|0;n=yQ(o|0,0,-1,-1)|0;O=z;e:do if(O>>>0<0|((O|0)==0?n>>>0<(c[k+8>>2]|0)>>>0:0))k=(c[k+12>>2]|0)+(n<<4)|0;else{k=(c[k+16>>2]|0)+(((1<<d[k+7>>0])+65535&o)<<5)|0;while(1){if((c[k+24>>2]|0)==19?(O=k+16|0,(c[O+4>>2]|0)==0?(c[O>>2]|0)==(o|0):0):0)break;n=c[k+28>>2]|0;if(!n){k=316344;break e}k=k+(n<<5)|0}}while(0);c[p>>2]=c[k>>2];c[p+4>>2]=c[k+4>>2];c[p+8>>2]=c[k+8>>2];c[p+12>>2]=c[k+12>>2];n=c[x>>2]|0;k=n+16|0;c[x>>2]=k;switch(c[n+8>>2]&15){case 4:{k=n;s=45;break}case 3:{if((c[(c[y>>2]|0)+12>>2]|0)>0){Sw(f);k=c[x>>2]|0}k=k+-16|0;Xw(f,k);s=45;break}default:{if((n|0)==316344)k=-1;else k=c[n+8>>2]&15;c[I>>2]=c[5104+(k+1<<2)>>2];k=Vv(f,286313,I)|0}}if((s|0)==45){s=0;c[H>>2]=(c[k>>2]|0)+16;k=Vv(f,294706,H)|0}c[L>>2]=k;Wx(f,286492,L)}a[t>>0]=10;k=q-(t-v>>3)|0;c[t+4>>2]=k;b[t+(k<<3)+2>>1]=b[r>>1]|0;k=10;break}case 7:case 6:{o=t+8|0;if((a[o>>0]|0)==k<<24>>24){p=t+4|0;q=t+12|0;r=t+16|0;do{n=c[q>>2]|0;O=(c[p>>2]|0)-n|0;QQ(o|0,r|0,(n<<3)+-8|0)|0;c[p>>2]=n;a[t+(n<<3)>>0]=k;c[t+(n<<3)+4>>2]=O;k=a[o>>0]|0;n=a[t>>0]|0}while(k<<24>>24==n<<24>>24);k=n}break}default:{}}while(0);switch(a[286007+(k&255)>>0]|0){case 1:{k=1;break}case 2:{qB(f,g,i,t+8|0);k=c[t+4>>2]|0;break}default:{s=64;break a}}t=t+(k<<3)|0}if((s|0)==64){l=N;return}}function rB(b,f,g,h,i){b=b|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;m=r+24|0;p=r+16|0;n=r+8|0;o=r;j=h;a:while(1){b:while(1){c:while(1){switch(a[f>>0]|0){case 4:case 2:case 1:case 0:{q=37;break a}case 14:case 3:{q=38;break a}case 13:{q=36;break a}case 12:break b;case 5:case 9:case 8:{i=1;h=1;break c}case 7:{q=9;break c}case 16:case 15:{h=1;break}case 10:{h=c[f+4>>2]|0;break}case 6:{if(!(rB(b,f+8|0,g,j,0)|0)){q=37;break a}h=c[f+4>>2]|0;break}default:{f=0;q=39;break a}}f=f+(h<<3)|0}if((q|0)==9){q=0;i=rB(b,f+8|0,g,j,i)|0;h=c[f+4>>2]|0}f=f+(h<<3)|0}if((j|0)>249){i=j;q=13;break}c[g+(j<<2)>>2]=e[f+2>>1];j=j+1|0;f=f+8|0}if((q|0)==13){d:while(1){q=0;h=i;i=i+-1|0;f=h+-2|0;if((f|0)<=-1){q=34;break}k=c[g+(i<<2)>>2]|0;while(1){if((k|0)==(c[g+(f<<2)>>2]|0))break d;if((f|0)>0)f=f+-1|0;else break}if((h|0)<=1){q=34;break}else q=13}if((q|0)==34){Wx(b,286461,m);q=0;l=r;return q|0}h=((k|0)<0)<<31>>31;g=b+8|0;j=c[g>>2]|0;f=c[j+-16>>2]|0;i=yQ(k|0,h|0,-1,-1)|0;m=z;e:do if(m>>>0<0|((m|0)==0?i>>>0<(c[f+8>>2]|0)>>>0:0))f=(c[f+12>>2]|0)+(i<<4)|0;else{f=(c[f+16>>2]|0)+(((1<<d[f+7>>0])+-1&k)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(m=f+16|0,(c[m>>2]|0)==(k|0)?(c[m+4>>2]|0)==(h|0):0):0)break;i=c[f+28>>2]|0;if(!i){f=316344;break e}f=f+(i<<5)|0}}while(0);c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];c[j+8>>2]=c[f+8>>2];c[j+12>>2]=c[f+12>>2];i=c[g>>2]|0;f=i+16|0;c[g>>2]=f;switch(c[i+8>>2]&15){case 4:{f=i;q=29;break}case 3:{if((c[(c[b+12>>2]|0)+12>>2]|0)>0){Sw(b);f=c[g>>2]|0}f=f+-16|0;Xw(b,f);q=29;break}default:{if((i|0)==316344)f=0;else f=(c[i+8>>2]&15)+1|0;c[n>>2]=c[5104+(f<<2)>>2];f=Vv(b,286313,n)|0}}if((q|0)==29){c[o>>2]=(c[f>>2]|0)+16;f=Vv(b,294706,o)|0}c[p>>2]=f;Wx(b,286429,p);q=0;l=r;return q|0}else if((q|0)==36){q=DB(f,0)|0;l=r;return q|0}else if((q|0)==37){q=i;l=r;return q|0}else if((q|0)==38){q=1;l=r;return q|0}else if((q|0)==39){l=r;return f|0}return 0}function sB(b){b=b|0;var d=0;a:while(1){d=a[b>>0]|0;switch(d<<24>>24){case 13:{b=0;d=8;break a}case 5:{if(DB(b+8|0,0)|0){b=1;d=8;break a}break}default:{}}switch(a[286007+(d&255)>>0]|0){case 1:{d=1;break}case 2:{if(sB(b+8|0)|0){b=1;d=8;break a}d=c[b+4>>2]|0;break}default:{b=0;d=8;break a}}b=b+(d<<3)|0}if((d|0)==8)return b|0;return 0}function tB(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+16|0;i=o;k=a+16|0;e=c[k>>2]|0;n=(b|0)>0;do if(n){e=(c[e>>2]|0)+(b<<4)|0;if(e>>>0<(c[a+8>>2]|0)>>>0){h=e;m=9}}else{if((b|0)>=-1000999){h=(c[a+8>>2]|0)+(b<<4)|0;m=9;break}if((b|0)==-1001e3){h=(c[a+12>>2]|0)+40|0;m=9;break}f=-1001e3-b|0;e=c[e>>2]|0;if((c[e+8>>2]|0)!=22?(g=c[e>>2]|0,(f|0)<=(d[g+6>>0]|0|0)):0){h=g+16+(f+-1<<4)|0;m=9}}while(0);if(((m|0)==9?(h|0)!=316344:0)?(c[h+8>>2]&15|0)==0:0){a=0;l=o;return a|0}j=a+8|0;e=c[j>>2]|0;g=c[e+-16>>2]|0;p=g+16|0;f=c[p+4>>2]|0;h=e;c[h>>2]=c[p>>2];c[h+4>>2]=f;c[e+8>>2]=d[g+6>>0];e=c[j>>2]|0;g=e+16|0;c[j>>2]=g;switch(c[e+8>>2]&63){case 4:{h=d[(c[e>>2]|0)+7>>0]|0;f=g;break}case 20:{e=c[(c[e>>2]|0)+12>>2]|0;m=16;break}case 7:{e=c[(c[e>>2]|0)+12>>2]|0;m=16;break}case 5:{e=Ex(c[e>>2]|0)|0;m=16;break}default:{h=0;f=g}}if((m|0)==16)if((e|0)>65534){Wx(a,286374,i);g=c[j>>2]|0;h=e;f=g}else{h=e;f=g}e=c[k>>2]|0;do if(!n){if((b|0)>=-1000999){e=f+(b<<4)|0;break}if((b|0)==-1001e3){e=(c[a+12>>2]|0)+40|0;break}f=-1001e3-b|0;e=c[e>>2]|0;if((c[e+8>>2]|0)==22)e=316344;else{e=c[e>>2]|0;e=(f|0)>(d[e+6>>0]|0|0)?316344:e+16+(f+-1<<4)|0}}else{e=(c[e>>2]|0)+(b<<4)|0;e=e>>>0<f>>>0?e:316344}while(0);c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];c[j>>2]=(c[j>>2]|0)+16;p=h+1|0;$v(a,-2,p,((p|0)<0)<<31>>31);c[j>>2]=(c[j>>2]|0)+-16;l=o;return p|0}function uB(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;t=l;l=l+16|0;r=t+4|0;s=t;e=oB(b,1,0)|0;n=oB(b,2,0)|0;e=a[e>>0]|0;if(e<<24>>24!=4?(a[n>>0]|0)!=3:0){if(e<<24>>24==3){s=b+8|0;r=c[s>>2]|0;b=(c[c[b+16>>2]>>2]|0)+32|0;b=b>>>0<r>>>0?b:316344;c[r>>2]=c[b>>2];c[r+4>>2]=c[b+4>>2];c[r+8>>2]=c[b+8>>2];c[r+12>>2]=c[b+12>>2];c[s>>2]=(c[s>>2]|0)+16;l=t;return 1}j=oB(b,1,r)|0;k=oB(b,2,s)|0;m=gw(b,((c[r>>2]|0)+1+(c[s>>2]|0)<<3)+8|0)|0;i=b+12|0;g=c[i>>2]|0;n=b+8|0;h=c[n>>2]|0;f=g+280+(((286024>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286024,e+16|0)|0){e=xx(b,286024,12)|0;c[f>>2]=e}c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;h=c[n>>2]|0;c[n>>2]=h+16;Kx(b,g+40|0,h,h);h=c[n>>2]|0;f=h+-16|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];h=c[n>>2]|0;c[n>>2]=h+16;f=h+-32|0;e=c[f>>2]|0;v=h;u=c[v+4>>2]|0;g=e+16|0;c[g>>2]=c[v>>2];c[g+4>>2]=u;a[e+6>>0]=c[h+8>>2];e=c[n>>2]|0;do if(((c[e+-8>>2]&64|0)!=0?(o=(c[f>>2]|0)+5|0,p=a[o>>0]|0,(p&4)!=0):0)?(q=c[e+-16>>2]|0,(a[q+5>>0]&3)!=0):0){f=c[i>>2]|0;if((d[f+61>>0]|0)<2){Iw(f,q);e=c[n>>2]|0;break}else{a[o>>0]=a[f+60>>0]&3|p&-8;break}}while(0);c[n>>2]=e+-16;aw(b,-2);c[m>>2]=0;c[m+4>>2]=0;u=m+8|0;a[u>>0]=6;q=c[r>>2]|0;r=q+1|0;v=m+12|0;c[v>>2]=r;PQ(m+16|0,j|0,q<<3|0)|0;PQ(u+(r<<3)|0,k|0,c[s>>2]<<3|0)|0;BB(b,u+(c[v>>2]<<3)|0);l=t;return 1}v=b+8|0;u=c[v>>2]|0;s=(c[c[b+16>>2]>>2]|0)+16|0;s=s>>>0<u>>>0?s:316344;c[u>>2]=c[s>>2];c[u+4>>2]=c[s+4>>2];c[u+8>>2]=c[s+8>>2];c[u+12>>2]=c[s+12>>2];c[v>>2]=(c[v>>2]|0)+16;l=t;return 1}function vB(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+80|0;u=w+4|0;v=w;s=w+40|0;t=w+8|0;f=oB(b,1,0)|0;g=oB(b,2,0)|0;h=a[f>>0]|0;switch(h<<24>>24){case 1:{e=f+8|0;a[s>>0]=a[e>>0]|0;a[s+1>>0]=a[e+1>>0]|0;a[s+2>>0]=a[e+2>>0]|0;a[s+3>>0]=a[e+3>>0]|0;a[s+4>>0]=a[e+4>>0]|0;a[s+5>>0]=a[e+5>>0]|0;a[s+6>>0]=a[e+6>>0]|0;a[s+7>>0]=a[e+7>>0]|0;a[s+8>>0]=a[e+8>>0]|0;a[s+9>>0]=a[e+9>>0]|0;a[s+10>>0]=a[e+10>>0]|0;a[s+11>>0]=a[e+11>>0]|0;a[s+12>>0]=a[e+12>>0]|0;a[s+13>>0]=a[e+13>>0]|0;a[s+14>>0]=a[e+14>>0]|0;a[s+15>>0]=a[e+15>>0]|0;a[s+16>>0]=a[e+16>>0]|0;a[s+17>>0]=a[e+17>>0]|0;a[s+18>>0]=a[e+18>>0]|0;a[s+19>>0]=a[e+19>>0]|0;a[s+20>>0]=a[e+20>>0]|0;a[s+21>>0]=a[e+21>>0]|0;a[s+22>>0]=a[e+22>>0]|0;a[s+23>>0]=a[e+23>>0]|0;a[s+24>>0]=a[e+24>>0]|0;a[s+25>>0]=a[e+25>>0]|0;a[s+26>>0]=a[e+26>>0]|0;a[s+27>>0]=a[e+27>>0]|0;a[s+28>>0]=a[e+28>>0]|0;a[s+29>>0]=a[e+29>>0]|0;a[s+30>>0]=a[e+30>>0]|0;a[s+31>>0]=a[e+31>>0]|0;e=5;break}case 0:{e=s;i=e+32|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(i|0));k=c[f+4>>2]|0;e=s+(k>>3)|0;a[e>>0]=d[e>>0]|1<<(k&7);e=5;break}case 2:{e=s;i=e+32|0;do{a[e>>0]=255;e=e+1|0}while((e|0)<(i|0));e=5;break}default:{}}a:do if((e|0)==5){switch(a[g>>0]|0){case 1:{v=g+8|0;a[t>>0]=a[v>>0]|0;a[t+1>>0]=a[v+1>>0]|0;a[t+2>>0]=a[v+2>>0]|0;a[t+3>>0]=a[v+3>>0]|0;a[t+4>>0]=a[v+4>>0]|0;a[t+5>>0]=a[v+5>>0]|0;a[t+6>>0]=a[v+6>>0]|0;a[t+7>>0]=a[v+7>>0]|0;a[t+8>>0]=a[v+8>>0]|0;a[t+9>>0]=a[v+9>>0]|0;a[t+10>>0]=a[v+10>>0]|0;a[t+11>>0]=a[v+11>>0]|0;a[t+12>>0]=a[v+12>>0]|0;a[t+13>>0]=a[v+13>>0]|0;a[t+14>>0]=a[v+14>>0]|0;a[t+15>>0]=a[v+15>>0]|0;a[t+16>>0]=a[v+16>>0]|0;a[t+17>>0]=a[v+17>>0]|0;a[t+18>>0]=a[v+18>>0]|0;a[t+19>>0]=a[v+19>>0]|0;a[t+20>>0]=a[v+20>>0]|0;a[t+21>>0]=a[v+21>>0]|0;a[t+22>>0]=a[v+22>>0]|0;a[t+23>>0]=a[v+23>>0]|0;a[t+24>>0]=a[v+24>>0]|0;a[t+25>>0]=a[v+25>>0]|0;a[t+26>>0]=a[v+26>>0]|0;a[t+27>>0]=a[v+27>>0]|0;a[t+28>>0]=a[v+28>>0]|0;a[t+29>>0]=a[v+29>>0]|0;a[t+30>>0]=a[v+30>>0]|0;a[t+31>>0]=a[v+31>>0]|0;break}case 0:{e=t;i=e+32|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(i|0));u=c[g+4>>2]|0;v=t+(u>>3)|0;a[v>>0]=d[v>>0]|1<<(u&7);break}case 2:{e=t;i=e+32|0;do{a[e>>0]=255;e=e+1|0}while((e|0)<(i|0));break}default:break a}k=gw(b,48)|0;i=b+12|0;g=c[i>>2]|0;j=b+8|0;h=c[j>>2]|0;f=g+280+(((286024>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286024,e+16|0)|0){e=xx(b,286024,12)|0;c[f>>2]=e}c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;v=c[j>>2]|0;c[j>>2]=v+16;Kx(b,g+40|0,v,v);v=c[j>>2]|0;f=v+-16|0;c[v>>2]=c[f>>2];c[v+4>>2]=c[f+4>>2];c[v+8>>2]=c[f+8>>2];c[v+12>>2]=c[f+12>>2];v=c[j>>2]|0;c[j>>2]=v+16;f=v+-32|0;e=c[f>>2]|0;q=v;r=c[q+4>>2]|0;u=e+16|0;c[u>>2]=c[q>>2];c[u+4>>2]=r;a[e+6>>0]=c[v+8>>2];e=c[j>>2]|0;do if(((c[e+-8>>2]&64|0)!=0?(m=(c[f>>2]|0)+5|0,n=a[m>>0]|0,(n&4)!=0):0)?(o=c[e+-16>>2]|0,(a[o+5>>0]&3)!=0):0){f=c[i>>2]|0;if((d[f+61>>0]|0)<2){Iw(f,o);e=c[j>>2]|0;break}else{a[m>>0]=a[f+60>>0]&3|n&-8;break}}while(0);c[j>>2]=e+-16;aw(b,-2);c[k>>2]=0;c[k+4>>2]=0;a[k+8>>0]=1;e=k+16|0;i=e+32|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(i|0));e=0;do{a[k+(e+16)>>0]=a[t+e>>0]|a[s+e>>0];e=e+1|0}while((e|0)!=32);l=w;return 1}while(0);if((DB(f,1)|0)==0?(a[g>>0]|0)!=4:0){if(h<<24>>24==4){v=b+8|0;u=c[v>>2]|0;b=(c[c[b+16>>2]>>2]|0)+32|0;b=b>>>0<u>>>0?b:316344;c[u>>2]=c[b>>2];c[u+4>>2]=c[b+4>>2];c[u+8>>2]=c[b+8>>2];c[u+12>>2]=c[b+12>>2];c[v>>2]=(c[v>>2]|0)+16;l=w;return 1}j=oB(b,1,u)|0;k=oB(b,2,v)|0;m=gw(b,((c[u>>2]|0)+1+(c[v>>2]|0)<<3)+8|0)|0;i=b+12|0;g=c[i>>2]|0;n=b+8|0;h=c[n>>2]|0;f=g+280+(((286024>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286024,e+16|0)|0){e=xx(b,286024,12)|0;c[f>>2]=e}c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;t=c[n>>2]|0;c[n>>2]=t+16;Kx(b,g+40|0,t,t);t=c[n>>2]|0;f=t+-16|0;c[t>>2]=c[f>>2];c[t+4>>2]=c[f+4>>2];c[t+8>>2]=c[f+8>>2];c[t+12>>2]=c[f+12>>2];t=c[n>>2]|0;c[n>>2]=t+16;f=t+-32|0;e=c[f>>2]|0;h=t;o=c[h+4>>2]|0;s=e+16|0;c[s>>2]=c[h>>2];c[s+4>>2]=o;a[e+6>>0]=c[t+8>>2];e=c[n>>2]|0;do if(((c[e+-8>>2]&64|0)!=0?(p=(c[f>>2]|0)+5|0,q=a[p>>0]|0,(q&4)!=0):0)?(r=c[e+-16>>2]|0,(a[r+5>>0]&3)!=0):0){f=c[i>>2]|0;if((d[f+61>>0]|0)<2){Iw(f,r);e=c[n>>2]|0;break}else{a[p>>0]=a[f+60>>0]&3|q&-8;break}}while(0);c[n>>2]=e+-16;aw(b,-2);c[m>>2]=0;c[m+4>>2]=0;t=m+8|0;a[t>>0]=7;r=c[u>>2]|0;s=r+1|0;u=m+12|0;c[u>>2]=s;PQ(m+16|0,j|0,r<<3|0)|0;PQ(t+(s<<3)|0,k|0,c[v>>2]<<3|0)|0;BB(b,t+(c[u>>2]<<3)|0);l=w;return 1}v=b+8|0;u=c[v>>2]|0;b=(c[c[b+16>>2]>>2]|0)+16|0;b=b>>>0<u>>>0?b:316344;c[u>>2]=c[b>>2];c[u+4>>2]=c[b+4>>2];c[u+8>>2]=c[b+8>>2];c[u+12>>2]=c[b+12>>2];c[v>>2]=(c[v>>2]|0)+16;l=w;return 1}function wB(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+16|0;t=w;u=w+4|0;g=_x(b,2)|0;v=oB(b,1,u)|0;if((g|0)>-1){m=gw(b,(O((g<<3)+8|0,(c[u>>2]|0)+1|0)|0)+8|0)|0;k=b+12|0;h=c[k>>2]|0;i=b+8|0;j=c[i>>2]|0;f=h+280+(((286024>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286024,e+16|0)|0){e=xx(b,286024,12)|0;c[f>>2]=e}c[j>>2]=e;c[j+8>>2]=(a[e+4>>0]|64)&255;s=c[i>>2]|0;c[i>>2]=s+16;Kx(b,h+40|0,s,s);s=c[i>>2]|0;f=s+-16|0;c[s>>2]=c[f>>2];c[s+4>>2]=c[f+4>>2];c[s+8>>2]=c[f+8>>2];c[s+12>>2]=c[f+12>>2];s=c[i>>2]|0;c[i>>2]=s+16;f=s+-32|0;e=c[f>>2]|0;j=s;q=c[j+4>>2]|0;r=e+16|0;c[r>>2]=c[j>>2];c[r+4>>2]=q;a[e+6>>0]=c[s+8>>2];e=c[i>>2]|0;do if(((c[e+-8>>2]&64|0)!=0?(n=(c[f>>2]|0)+5|0,o=a[n>>0]|0,(o&4)!=0):0)?(p=c[e+-16>>2]|0,(a[p+5>>0]&3)!=0):0){f=c[k>>2]|0;if((d[f+61>>0]|0)<2){Iw(f,p);e=c[i>>2]|0;break}else{a[n>>0]=a[f+60>>0]&3|o&-8;break}}while(0);c[i>>2]=e+-16;aw(b,-2);c[m>>2]=0;c[m+4>>2]=0;e=m+8|0;if(DB(v,0)|0)Wx(b,286824,t);j=c[u>>2]|0;if(g){h=j<<3;h=m+((O(g+-1|0,h+8|0)|0)+h+16)|0;while(1){g=g+-1|0;a[e>>0]=6;f=j+1|0;c[e+4>>2]=f;PQ(e+8|0,v|0,j<<3|0)|0;if(!g)break;else e=e+(f<<3)|0}e=h}a[e>>0]=5;PQ(e+8|0,v|0,j<<3|0)|0}else{f=0-g|0;n=gw(b,O(f<<3,(c[u>>2]|0)+3|0)|0)|0;m=b+12|0;j=c[m>>2]|0;i=b+8|0;k=c[i>>2]|0;h=j+280+(((286024>>>0)%127|0)<<2)|0;e=c[h>>2]|0;if(JN(286024,e+16|0)|0){e=xx(b,286024,12)|0;c[h>>2]=e}c[k>>2]=e;c[k+8>>2]=(a[e+4>>0]|64)&255;t=c[i>>2]|0;c[i>>2]=t+16;Kx(b,j+40|0,t,t);t=c[i>>2]|0;h=t+-16|0;c[t>>2]=c[h>>2];c[t+4>>2]=c[h+4>>2];c[t+8>>2]=c[h+8>>2];c[t+12>>2]=c[h+12>>2];t=c[i>>2]|0;c[i>>2]=t+16;h=t+-32|0;e=c[h>>2]|0;k=t;o=c[k+4>>2]|0;p=e+16|0;c[p>>2]=c[k>>2];c[p+4>>2]=o;a[e+6>>0]=c[t+8>>2];e=c[i>>2]|0;do if(((c[e+-8>>2]&64|0)!=0?(q=(c[h>>2]|0)+5|0,r=a[q>>0]|0,(r&4)!=0):0)?(s=c[e+-16>>2]|0,(a[s+5>>0]&3)!=0):0){h=c[m>>2]|0;if((d[h+61>>0]|0)<2){Iw(h,s);e=c[i>>2]|0;break}else{a[q>>0]=a[h+60>>0]&3|r&-8;break}}while(0);c[i>>2]=e+-16;aw(b,-2);c[n>>2]=0;c[n+4>>2]=0;e=n+8|0;a[e>>0]=7;h=c[u>>2]|0;if((g|0)!=-1)do{u=(O(h+3|0,f)|0)+-2|0;c[e+4>>2]=u;a[e+(u<<3)>>0]=3;a[e+8>>0]=6;c[e+12>>2]=h+1;PQ(e+16|0,v|0,h<<3|0)|0;e=e+(h+2<<3)|0;f=f+-1|0;a[e>>0]=7}while((f|0)>1);u=h+1|0;c[e+4>>2]=u;a[e+(u<<3)>>0]=3;PQ(e+8|0,v|0,h<<3|0)|0}e=(c[c[b+16>>2]>>2]|0)+16|0;v=c[i>>2]|0;e=c[(e>>>0<v>>>0?e:316344)>>2]|0;t=e+16|0;s=c[t+4>>2]|0;j=v;c[j>>2]=c[t>>2];c[j+4>>2]=s;c[v+8>>2]=d[e+6>>0];v=c[i>>2]|0;c[i>>2]=v+16;e=v+-16|0;j=c[e>>2]|0;s=v;t=c[s+4>>2]|0;u=j+16|0;c[u>>2]=c[s>>2];c[u+4>>2]=t;a[j+6>>0]=c[v+8>>2];j=c[i>>2]|0;if(!(c[j+-8>>2]&64)){b=j;b=b+-16|0;c[i>>2]=b;l=w;return 1}f=(c[e>>2]|0)+5|0;g=a[f>>0]|0;if(!(g&4)){b=j;b=b+-16|0;c[i>>2]=b;l=w;return 1}h=c[j+-16>>2]|0;if(!(a[h+5>>0]&3)){b=j;b=b+-16|0;c[i>>2]=b;l=w;return 1}e=c[b+12>>2]|0;if((d[e+61>>0]|0)<2){Iw(e,h);b=c[i>>2]|0;b=b+-16|0;c[i>>2]=b;l=w;return 1}else{a[f>>0]=a[e+60>>0]&3|g&-8;b=j;b=b+-16|0;c[i>>2]=b;l=w;return 1}return 0}function xB(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=l;l=l+16|0;o=r;m=oB(b,1,o)|0;n=gw(b,(c[o>>2]<<3)+16|0)|0;p=b+12|0;g=c[p>>2]|0;q=b+8|0;h=c[q>>2]|0;f=g+280+(((286024>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286024,e+16|0)|0){e=xx(b,286024,12)|0;c[f>>2]=e}c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;h=c[q>>2]|0;c[q>>2]=h+16;Kx(b,g+40|0,h,h);h=c[q>>2]|0;f=h+-16|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];h=c[q>>2]|0;c[q>>2]=h+16;f=h+-32|0;e=c[f>>2]|0;t=h;s=c[t+4>>2]|0;g=e+16|0;c[g>>2]=c[t>>2];c[g+4>>2]=s;a[e+6>>0]=c[h+8>>2];e=c[q>>2]|0;do if(((c[e+-8>>2]&64|0)!=0?(i=(c[f>>2]|0)+5|0,j=a[i>>0]|0,(j&4)!=0):0)?(k=c[e+-16>>2]|0,(a[k+5>>0]&3)!=0):0){f=c[p>>2]|0;if((d[f+61>>0]|0)<2){Iw(f,k);e=c[q>>2]|0;break}else{a[i>>0]=a[f+60>>0]&3|j&-8;break}}while(0);c[q>>2]=e+-16;aw(b,-2);c[n>>2]=0;c[n+4>>2]=0;a[n+8>>0]=9;PQ(n+16|0,m|0,c[o>>2]<<3|0)|0;e=(c[c[b+16>>2]>>2]|0)+16|0;t=c[q>>2]|0;e=c[(e>>>0<t>>>0?e:316344)>>2]|0;o=e+16|0;b=c[o+4>>2]|0;i=t;c[i>>2]=c[o>>2];c[i+4>>2]=b;c[t+8>>2]=d[e+6>>0];t=c[q>>2]|0;c[q>>2]=t+16;e=t+-16|0;i=c[e>>2]|0;b=t;o=c[b+4>>2]|0;s=i+16|0;c[s>>2]=c[b>>2];c[s+4>>2]=o;a[i+6>>0]=c[t+8>>2];i=c[q>>2]|0;if(!(c[i+-8>>2]&64)){t=i;t=t+-16|0;c[q>>2]=t;l=r;return 1}f=(c[e>>2]|0)+5|0;g=a[f>>0]|0;if(!(g&4)){t=i;t=t+-16|0;c[q>>2]=t;l=r;return 1}h=c[i+-16>>2]|0;if(!(a[h+5>>0]&3)){t=i;t=t+-16|0;c[q>>2]=t;l=r;return 1}e=c[p>>2]|0;if((d[e+61>>0]|0)<2){Iw(e,h);t=c[q>>2]|0;t=t+-16|0;c[q>>2]=t;l=r;return 1}else{a[f>>0]=a[e+60>>0]&3|g&-8;t=i;t=t+-16|0;c[q>>2]=t;l=r;return 1}return 0}function yB(e){e=e|0;var f=0,g=0,i=0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,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.0;ia=l;l=l+48|0;ba=ia+32|0;aa=ia+24|0;$=ia+16|0;fa=ia;ga=e+16|0;f=c[c[ga>>2]>>2]|0;i=f+32|0;ha=e+8|0;a:do if(!((i|0)==316344?1:i>>>0>=(c[ha>>2]|0)>>>0)){f=c[f+40>>2]|0;switch(f&15){case 6:{m=oB(e,1,fa)|0;p=gw(e,(c[fa>>2]<<3)+16|0)|0;n=e+12|0;i=c[n>>2]|0;k=c[ha>>2]|0;g=i+280+(((286024>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(286024,f+16|0)|0){f=xx(e,286024,12)|0;c[g>>2]=f}c[k>>2]=f;c[k+8>>2]=(a[f+4>>0]|64)&255;ea=c[ha>>2]|0;c[ha>>2]=ea+16;Kx(e,i+40|0,ea,ea);ea=c[ha>>2]|0;g=ea+-16|0;c[ea>>2]=c[g>>2];c[ea+4>>2]=c[g+4>>2];c[ea+8>>2]=c[g+8>>2];c[ea+12>>2]=c[g+12>>2];ea=c[ha>>2]|0;c[ha>>2]=ea+16;g=ea+-32|0;f=c[g>>2]|0;ba=ea;ca=c[ba+4>>2]|0;da=f+16|0;c[da>>2]=c[ba>>2];c[da+4>>2]=ca;a[f+6>>0]=c[ea+8>>2];f=c[ha>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(s=(c[g>>2]|0)+5|0,t=a[s>>0]|0,(t&4)!=0):0)?(u=c[f+-16>>2]|0,(a[u+5>>0]&3)!=0):0){g=c[n>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,u);f=c[ha>>2]|0;break}else{a[s>>0]=a[g+60>>0]&3|t&-8;break}}while(0);c[ha>>2]=f+-16;aw(e,-2);c[p>>2]=0;c[p+4>>2]=0;a[p+8>>0]=15;PQ(p+16|0,m|0,c[fa>>2]<<3|0)|0;g=(c[c[ga>>2]>>2]|0)+16|0;fa=c[ha>>2]|0;g=c[(g>>>0<fa>>>0?g:316344)>>2]|0;da=g+16|0;ca=c[da+4>>2]|0;f=fa;c[f>>2]=c[da>>2];c[f+4>>2]=ca;c[fa+8>>2]=d[g+6>>0];fa=c[ha>>2]|0;c[ha>>2]=fa+16;g=fa+-16|0;f=c[g>>2]|0;ca=fa;da=c[ca+4>>2]|0;ea=f+16|0;c[ea>>2]=c[ca>>2];c[ea+4>>2]=da;a[f+6>>0]=c[fa+8>>2];f=c[ha>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(y=(c[g>>2]|0)+5|0,B=a[y>>0]|0,(B&4)!=0):0)?(C=c[f+-16>>2]|0,(a[C+5>>0]&3)!=0):0){g=c[n>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,C);f=c[ha>>2]|0;break}else{a[y>>0]=a[g+60>>0]&3|B&-8;break}}while(0);c[ha>>2]=f+-16;a[p+9>>0]=7;if((c[(c[n>>2]|0)+12>>2]|0)>0)Sw(e);fa=Dx(e)|0;g=c[ha>>2]|0;c[g>>2]=fa;c[g+8>>2]=69;c[ha>>2]=(c[ha>>2]|0)+16;Ax(e,fa,1,0);fa=c[ha>>2]|0;g=fa+-32|0;f=c[g>>2]|0;ca=fa+-16|0;da=c[ca+4>>2]|0;ea=f+16|0;c[ea>>2]=c[ca>>2];c[ea+4>>2]=da;a[f+6>>0]=c[fa+-8>>2];f=c[ha>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(J=(c[g>>2]|0)+5|0,K=a[J>>0]|0,(K&4)!=0):0)?(L=c[f+-16>>2]|0,(a[L+5>>0]&3)!=0):0){g=c[n>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,L);f=c[ha>>2]|0;break}else{a[J>>0]=a[g+60>>0]&3|K&-8;break}}while(0);fa=f+-16|0;c[ha>>2]=fa;g=c[f+-32>>2]|0;ea=g+16|0;da=c[ea+4>>2]|0;c[fa>>2]=c[ea>>2];c[fa+4>>2]=da;c[f+-8>>2]=d[g+6>>0];g=c[ha>>2]|0;fa=g+16|0;c[ha>>2]=fa;ga=c[c[ga>>2]>>2]|0;ga=c[(ga>>>0<g>>>0?ga+16|0:316344)>>2]|0;da=ga+16|0;ea=c[da+4>>2]|0;c[fa>>2]=c[da>>2];c[fa+4>>2]=ea;c[g+24>>2]=d[ga+6>>0];g=c[ha>>2]|0;c[ha>>2]=g+16;b:do if((g|0)!=316344?(V=c[g+8>>2]|0,(V&15|0)==5):0)switch(V&63){case 4:{o=d[(c[g>>2]|0)+7>>0]|0;break b}case 20:{o=c[(c[g>>2]|0)+12>>2]|0;break b}case 7:{o=c[(c[g>>2]|0)+12>>2]|0;break b}case 5:{o=Ex(c[g>>2]|0)|0;break b}default:{o=0;break b}}else o=0;while(0);f=g+-16|0;c:do if((f|0)!=316344?(Y=c[g+-8>>2]|0,(Y&15|0)==5):0)switch(Y&63){case 4:{f=d[(c[f>>2]|0)+7>>0]|0;break c}case 20:{f=c[(c[f>>2]|0)+12>>2]|0;break c}case 7:{f=c[(c[f>>2]|0)+12>>2]|0;break c}case 5:{f=Ex(c[f>>2]|0)|0;break c}default:{f=0;break c}}else f=0;while(0);if((f+o|0)>65535)Wx(e,286374,$);if(o){if((o|0)>=1){n=1;while(1){k=((n|0)<0)<<31>>31;m=c[ha>>2]|0;g=c[m+-16>>2]|0;i=yQ(n|0,k|0,-1,-1)|0;ga=z;d:do if(ga>>>0<0|((ga|0)==0?i>>>0<(c[g+8>>2]|0)>>>0:0))g=(c[g+12>>2]|0)+(i<<4)|0;else{g=(c[g+16>>2]|0)+(((1<<d[g+7>>0])+-1&n)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(ga=g+16|0,(c[ga>>2]|0)==(n|0)?(c[ga+4>>2]|0)==(k|0):0):0)break;i=c[g+28>>2]|0;if(!i){g=316344;break d}g=g+(i<<5)|0}}while(0);c[m>>2]=c[g>>2];c[m+4>>2]=c[g+4>>2];c[m+8>>2]=c[g+8>>2];c[m+12>>2]=c[g+12>>2];c[ha>>2]=(c[ha>>2]|0)+16;ga=n+f|0;$v(e,-3,ga,((ga|0)<0)<<31>>31);if((n|0)==(o|0))break;else n=n+1|0}}}else f=0;c[ha>>2]=(c[ha>>2]|0)+-32;pB(0,f);b[p+10>>1]=tB(e,2)|0;e=1;l=ia;return e|0}case 5:{m=oB(e,1,fa)|0;p=gw(e,(c[fa>>2]<<3)+16|0)|0;n=e+12|0;i=c[n>>2]|0;k=c[ha>>2]|0;g=i+280+(((286024>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(286024,f+16|0)|0){f=xx(e,286024,12)|0;c[g>>2]=f}c[k>>2]=f;c[k+8>>2]=(a[f+4>>0]|64)&255;ea=c[ha>>2]|0;c[ha>>2]=ea+16;Kx(e,i+40|0,ea,ea);ea=c[ha>>2]|0;g=ea+-16|0;c[ea>>2]=c[g>>2];c[ea+4>>2]=c[g+4>>2];c[ea+8>>2]=c[g+8>>2];c[ea+12>>2]=c[g+12>>2];ea=c[ha>>2]|0;c[ha>>2]=ea+16;g=ea+-32|0;f=c[g>>2]|0;ba=ea;ca=c[ba+4>>2]|0;da=f+16|0;c[da>>2]=c[ba>>2];c[da+4>>2]=ca;a[f+6>>0]=c[ea+8>>2];f=c[ha>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(o=(c[g>>2]|0)+5|0,q=a[o>>0]|0,(q&4)!=0):0)?(r=c[f+-16>>2]|0,(a[r+5>>0]&3)!=0):0){g=c[n>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,r);f=c[ha>>2]|0;break}else{a[o>>0]=a[g+60>>0]&3|q&-8;break}}while(0);c[ha>>2]=f+-16;aw(e,-2);c[p>>2]=0;c[p+4>>2]=0;a[p+8>>0]=15;PQ(p+16|0,m|0,c[fa>>2]<<3|0)|0;g=(c[c[ga>>2]>>2]|0)+16|0;fa=c[ha>>2]|0;g=c[(g>>>0<fa>>>0?g:316344)>>2]|0;da=g+16|0;ca=c[da+4>>2]|0;f=fa;c[f>>2]=c[da>>2];c[f+4>>2]=ca;c[fa+8>>2]=d[g+6>>0];fa=c[ha>>2]|0;c[ha>>2]=fa+16;g=fa+-16|0;f=c[g>>2]|0;ca=fa;da=c[ca+4>>2]|0;ea=f+16|0;c[ea>>2]=c[ca>>2];c[ea+4>>2]=da;a[f+6>>0]=c[fa+8>>2];f=c[ha>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(D=(c[g>>2]|0)+5|0,E=a[D>>0]|0,(E&4)!=0):0)?(F=c[f+-16>>2]|0,(a[F+5>>0]&3)!=0):0){g=c[n>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,F);f=c[ha>>2]|0;break}else{a[D>>0]=a[g+60>>0]&3|E&-8;break}}while(0);c[ha>>2]=f+-16;a[p+9>>0]=8;if((c[(c[n>>2]|0)+12>>2]|0)>0)Sw(e);fa=Dx(e)|0;g=c[ha>>2]|0;c[g>>2]=fa;c[g+8>>2]=69;c[ha>>2]=(c[ha>>2]|0)+16;Ax(e,fa,1,0);fa=c[ha>>2]|0;g=fa+-32|0;f=c[g>>2]|0;ca=fa+-16|0;da=c[ca+4>>2]|0;ea=f+16|0;c[ea>>2]=c[ca>>2];c[ea+4>>2]=da;a[f+6>>0]=c[fa+-8>>2];f=c[ha>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(M=(c[g>>2]|0)+5|0,N=a[M>>0]|0,(N&4)!=0):0)?(O=c[f+-16>>2]|0,(a[O+5>>0]&3)!=0):0){g=c[n>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,O);f=c[ha>>2]|0;break}else{a[M>>0]=a[g+60>>0]&3|N&-8;break}}while(0);fa=f+-16|0;c[ha>>2]=fa;g=c[f+-32>>2]|0;ea=g+16|0;da=c[ea+4>>2]|0;c[fa>>2]=c[ea>>2];c[fa+4>>2]=da;c[f+-8>>2]=d[g+6>>0];g=c[ha>>2]|0;fa=g+16|0;c[ha>>2]=fa;ga=c[c[ga>>2]>>2]|0;ga=c[(ga>>>0<g>>>0?ga+16|0:316344)>>2]|0;da=ga+16|0;ea=c[da+4>>2]|0;c[fa>>2]=c[da>>2];c[fa+4>>2]=ea;c[g+24>>2]=d[ga+6>>0];g=c[ha>>2]|0;c[ha>>2]=g+16;e:do if((g|0)!=316344?(W=c[g+8>>2]|0,(W&15|0)==5):0)switch(W&63){case 4:{o=d[(c[g>>2]|0)+7>>0]|0;break e}case 20:{o=c[(c[g>>2]|0)+12>>2]|0;break e}case 7:{o=c[(c[g>>2]|0)+12>>2]|0;break e}case 5:{o=Ex(c[g>>2]|0)|0;break e}default:{o=0;break e}}else o=0;while(0);f=g+-16|0;f:do if((f|0)!=316344?(Z=c[g+-8>>2]|0,(Z&15|0)==5):0)switch(Z&63){case 4:{f=d[(c[f>>2]|0)+7>>0]|0;break f}case 20:{f=c[(c[f>>2]|0)+12>>2]|0;break f}case 7:{f=c[(c[f>>2]|0)+12>>2]|0;break f}case 5:{f=Ex(c[f>>2]|0)|0;break f}default:{f=0;break f}}else f=0;while(0);if((f+o|0)>65535)Wx(e,286374,aa);if(o){if((o|0)>=1){n=1;while(1){k=((n|0)<0)<<31>>31;m=c[ha>>2]|0;g=c[m+-16>>2]|0;i=yQ(n|0,k|0,-1,-1)|0;ga=z;g:do if(ga>>>0<0|((ga|0)==0?i>>>0<(c[g+8>>2]|0)>>>0:0))g=(c[g+12>>2]|0)+(i<<4)|0;else{g=(c[g+16>>2]|0)+(((1<<d[g+7>>0])+-1&n)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(ga=g+16|0,(c[ga>>2]|0)==(n|0)?(c[ga+4>>2]|0)==(k|0):0):0)break;i=c[g+28>>2]|0;if(!i){g=316344;break g}g=g+(i<<5)|0}}while(0);c[m>>2]=c[g>>2];c[m+4>>2]=c[g+4>>2];c[m+8>>2]=c[g+8>>2];c[m+12>>2]=c[g+12>>2];c[ha>>2]=(c[ha>>2]|0)+16;ga=n+f|0;$v(e,-3,ga,((ga|0)<0)<<31>>31);if((n|0)==(o|0))break;else n=n+1|0}}}else f=0;c[ha>>2]=(c[ha>>2]|0)+-32;pB(0,f);b[p+10>>1]=tB(e,2)|0;e=1;l=ia;return e|0}case 4:{m=oB(e,1,fa)|0;p=gw(e,(c[fa>>2]<<3)+16|0)|0;n=e+12|0;i=c[n>>2]|0;k=c[ha>>2]|0;g=i+280+(((286024>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(286024,f+16|0)|0){f=xx(e,286024,12)|0;c[g>>2]=f}c[k>>2]=f;c[k+8>>2]=(a[f+4>>0]|64)&255;ea=c[ha>>2]|0;c[ha>>2]=ea+16;Kx(e,i+40|0,ea,ea);ea=c[ha>>2]|0;g=ea+-16|0;c[ea>>2]=c[g>>2];c[ea+4>>2]=c[g+4>>2];c[ea+8>>2]=c[g+8>>2];c[ea+12>>2]=c[g+12>>2];ea=c[ha>>2]|0;c[ha>>2]=ea+16;g=ea+-32|0;f=c[g>>2]|0;aa=ea;ca=c[aa+4>>2]|0;da=f+16|0;c[da>>2]=c[aa>>2];c[da+4>>2]=ca;a[f+6>>0]=c[ea+8>>2];f=c[ha>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(v=(c[g>>2]|0)+5|0,w=a[v>>0]|0,(w&4)!=0):0)?(x=c[f+-16>>2]|0,(a[x+5>>0]&3)!=0):0){g=c[n>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,x);f=c[ha>>2]|0;break}else{a[v>>0]=a[g+60>>0]&3|w&-8;break}}while(0);c[ha>>2]=f+-16;aw(e,-2);c[p>>2]=0;c[p+4>>2]=0;a[p+8>>0]=15;PQ(p+16|0,m|0,c[fa>>2]<<3|0)|0;g=(c[c[ga>>2]>>2]|0)+16|0;fa=c[ha>>2]|0;g=c[(g>>>0<fa>>>0?g:316344)>>2]|0;da=g+16|0;ca=c[da+4>>2]|0;f=fa;c[f>>2]=c[da>>2];c[f+4>>2]=ca;c[fa+8>>2]=d[g+6>>0];fa=c[ha>>2]|0;c[ha>>2]=fa+16;g=fa+-16|0;f=c[g>>2]|0;ca=fa;da=c[ca+4>>2]|0;ea=f+16|0;c[ea>>2]=c[ca>>2];c[ea+4>>2]=da;a[f+6>>0]=c[fa+8>>2];f=c[ha>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(G=(c[g>>2]|0)+5|0,H=a[G>>0]|0,(H&4)!=0):0)?(I=c[f+-16>>2]|0,(a[I+5>>0]&3)!=0):0){g=c[n>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,I);f=c[ha>>2]|0;break}else{a[G>>0]=a[g+60>>0]&3|H&-8;break}}while(0);c[ha>>2]=f+-16;a[p+9>>0]=9;if((c[(c[n>>2]|0)+12>>2]|0)>0)Sw(e);fa=Dx(e)|0;g=c[ha>>2]|0;c[g>>2]=fa;c[g+8>>2]=69;c[ha>>2]=(c[ha>>2]|0)+16;Ax(e,fa,1,0);fa=c[ha>>2]|0;g=fa+-32|0;f=c[g>>2]|0;ca=fa+-16|0;da=c[ca+4>>2]|0;ea=f+16|0;c[ea>>2]=c[ca>>2];c[ea+4>>2]=da;a[f+6>>0]=c[fa+-8>>2];f=c[ha>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(P=(c[g>>2]|0)+5|0,Q=a[P>>0]|0,(Q&4)!=0):0)?(R=c[f+-16>>2]|0,(a[R+5>>0]&3)!=0):0){g=c[n>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,R);f=c[ha>>2]|0;break}else{a[P>>0]=a[g+60>>0]&3|Q&-8;break}}while(0);fa=f+-16|0;c[ha>>2]=fa;g=c[f+-32>>2]|0;ea=g+16|0;da=c[ea+4>>2]|0;c[fa>>2]=c[ea>>2];c[fa+4>>2]=da;c[f+-8>>2]=d[g+6>>0];g=c[ha>>2]|0;fa=g+16|0;c[ha>>2]=fa;ga=c[c[ga>>2]>>2]|0;ga=c[(ga>>>0<g>>>0?ga+16|0:316344)>>2]|0;da=ga+16|0;ea=c[da+4>>2]|0;c[fa>>2]=c[da>>2];c[fa+4>>2]=ea;c[g+24>>2]=d[ga+6>>0];g=c[ha>>2]|0;c[ha>>2]=g+16;h:do if((g|0)!=316344?(X=c[g+8>>2]|0,(X&15|0)==5):0)switch(X&63){case 4:{o=d[(c[g>>2]|0)+7>>0]|0;break h}case 20:{o=c[(c[g>>2]|0)+12>>2]|0;break h}case 7:{o=c[(c[g>>2]|0)+12>>2]|0;break h}case 5:{o=Ex(c[g>>2]|0)|0;break h}default:{o=0;break h}}else o=0;while(0);f=g+-16|0;i:do if((f|0)!=316344?(_=c[g+-8>>2]|0,(_&15|0)==5):0)switch(_&63){case 4:{f=d[(c[f>>2]|0)+7>>0]|0;break i}case 20:{f=c[(c[f>>2]|0)+12>>2]|0;break i}case 7:{f=c[(c[f>>2]|0)+12>>2]|0;break i}case 5:{f=Ex(c[f>>2]|0)|0;break i}default:{f=0;break i}}else f=0;while(0);if((f+o|0)>65535)Wx(e,286374,ba);if(o){if((o|0)>=1){n=1;while(1){k=((n|0)<0)<<31>>31;m=c[ha>>2]|0;g=c[m+-16>>2]|0;i=yQ(n|0,k|0,-1,-1)|0;ga=z;j:do if(ga>>>0<0|((ga|0)==0?i>>>0<(c[g+8>>2]|0)>>>0:0))g=(c[g+12>>2]|0)+(i<<4)|0;else{g=(c[g+16>>2]|0)+(((1<<d[g+7>>0])+-1&n)<<5)|0;while(1){if((c[g+24>>2]|0)==19?(ga=g+16|0,(c[ga>>2]|0)==(n|0)?(c[ga+4>>2]|0)==(k|0):0):0)break;i=c[g+28>>2]|0;if(!i){g=316344;break j}g=g+(i<<5)|0}}while(0);c[m>>2]=c[g>>2];c[m+4>>2]=c[g+4>>2];c[m+8>>2]=c[g+8>>2];c[m+12>>2]=c[g+12>>2];c[ha>>2]=(c[ha>>2]|0)+16;ga=n+f|0;$v(e,-3,ga,((ga|0)<0)<<31>>31);if((n|0)==(o|0))break;else n=n+1|0}}}else f=0;c[ha>>2]=(c[ha>>2]|0)+-32;pB(0,f);b[p+10>>1]=tB(e,2)|0;e=1;l=ia;return e|0}case 3:{do if((f|0)!=19){k:while(1){switch(f|0){case 3:{g=160;break k}case 19:{g=163;break k}default:{}}if((f&15|0)!=4){g=171;break}g=Ww((c[i>>2]|0)+16|0,fa)|0;f=c[i>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)!=(f+1|0)){g=171;break}i=fa;f=c[fa+8>>2]|0}if((g|0)==160){ja=+h[i>>3];j=+A(+ja);if(!(ja!=j)?j>=-9223372036854775808.0&j<9223372036854775808.0:0){f=~~j>>>0;g=170}else g=171}else if((g|0)==163){f=i;f=c[f>>2]|0;g=170}if((g|0)==170){q=f&65535;p=f;break}else if((g|0)==171){q=0;p=0;break}}else{p=c[i>>2]|0;q=p&65535}while(0);m=oB(e,1,fa)|0;o=gw(e,(c[fa>>2]<<3)+16|0)|0;n=e+12|0;i=c[n>>2]|0;k=c[ha>>2]|0;g=i+280+(((286024>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(286024,f+16|0)|0){f=xx(e,286024,12)|0;c[g>>2]=f}c[k>>2]=f;c[k+8>>2]=(a[f+4>>0]|64)&255;ba=c[ha>>2]|0;c[ha>>2]=ba+16;Kx(e,i+40|0,ba,ba);ba=c[ha>>2]|0;g=ba+-16|0;c[ba>>2]=c[g>>2];c[ba+4>>2]=c[g+4>>2];c[ba+8>>2]=c[g+8>>2];c[ba+12>>2]=c[g+12>>2];ba=c[ha>>2]|0;c[ha>>2]=ba+16;g=ba+-32|0;f=c[g>>2]|0;_=ba;$=c[_+4>>2]|0;aa=f+16|0;c[aa>>2]=c[_>>2];c[aa+4>>2]=$;a[f+6>>0]=c[ba+8>>2];f=c[ha>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(S=(c[g>>2]|0)+5|0,T=a[S>>0]|0,(T&4)!=0):0)?(U=c[f+-16>>2]|0,(a[U+5>>0]&3)!=0):0){g=c[n>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,U);f=c[ha>>2]|0;break}else{a[S>>0]=a[g+60>>0]&3|T&-8;break}}while(0);c[ha>>2]=f+-16;aw(e,-2);c[o>>2]=0;c[o+4>>2]=0;a[o+8>>0]=15;PQ(o+16|0,m|0,c[fa>>2]<<3|0)|0;g=(c[c[ga>>2]>>2]|0)+16|0;ga=c[ha>>2]|0;g=c[(g>>>0<ga>>>0?g:316344)>>2]|0;ba=g+16|0;aa=c[ba+4>>2]|0;f=ga;c[f>>2]=c[ba>>2];c[f+4>>2]=aa;c[ga+8>>2]=d[g+6>>0];ga=c[ha>>2]|0;c[ha>>2]=ga+16;g=ga+-16|0;f=c[g>>2]|0;aa=ga;ba=c[aa+4>>2]|0;fa=f+16|0;c[fa>>2]=c[aa>>2];c[fa+4>>2]=ba;a[f+6>>0]=c[ga+8>>2];f=c[ha>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(ca=(c[g>>2]|0)+5|0,da=a[ca>>0]|0,(da&4)!=0):0)?(ea=c[f+-16>>2]|0,(a[ea+5>>0]&3)!=0):0){g=c[n>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,ea);f=c[ha>>2]|0;break}else{a[ca>>0]=a[g+60>>0]&3|da&-8;break}}while(0);c[ha>>2]=f+-16;if(p>>>0>=32768)Vx(e,1,286783)|0;a[o+9>>0]=10;b[o+10>>1]=q;e=1;l=ia;return e|0}default:break a}}while(0);e=Vx(e,2,286798)|0;l=ia;return e|0}function zB(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=l;l=l+16|0;o=r;m=oB(b,1,o)|0;n=gw(b,(c[o>>2]<<3)+16|0)|0;p=b+12|0;g=c[p>>2]|0;q=b+8|0;h=c[q>>2]|0;f=g+280+(((286024>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286024,e+16|0)|0){e=xx(b,286024,12)|0;c[f>>2]=e}c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;h=c[q>>2]|0;c[q>>2]=h+16;Kx(b,g+40|0,h,h);h=c[q>>2]|0;f=h+-16|0;c[h>>2]=c[f>>2];c[h+4>>2]=c[f+4>>2];c[h+8>>2]=c[f+8>>2];c[h+12>>2]=c[f+12>>2];h=c[q>>2]|0;c[q>>2]=h+16;f=h+-32|0;e=c[f>>2]|0;t=h;s=c[t+4>>2]|0;g=e+16|0;c[g>>2]=c[t>>2];c[g+4>>2]=s;a[e+6>>0]=c[h+8>>2];e=c[q>>2]|0;do if(((c[e+-8>>2]&64|0)!=0?(i=(c[f>>2]|0)+5|0,j=a[i>>0]|0,(j&4)!=0):0)?(k=c[e+-16>>2]|0,(a[k+5>>0]&3)!=0):0){f=c[p>>2]|0;if((d[f+61>>0]|0)<2){Iw(f,k);e=c[q>>2]|0;break}else{a[i>>0]=a[f+60>>0]&3|j&-8;break}}while(0);c[q>>2]=e+-16;aw(b,-2);c[n>>2]=0;c[n+4>>2]=0;a[n+8>>0]=8;PQ(n+16|0,m|0,c[o>>2]<<3|0)|0;e=(c[c[b+16>>2]>>2]|0)+16|0;t=c[q>>2]|0;e=c[(e>>>0<t>>>0?e:316344)>>2]|0;o=e+16|0;b=c[o+4>>2]|0;i=t;c[i>>2]=c[o>>2];c[i+4>>2]=b;c[t+8>>2]=d[e+6>>0];t=c[q>>2]|0;c[q>>2]=t+16;e=t+-16|0;i=c[e>>2]|0;b=t;o=c[b+4>>2]|0;s=i+16|0;c[s>>2]=c[b>>2];c[s+4>>2]=o;a[i+6>>0]=c[t+8>>2];i=c[q>>2]|0;if(!(c[i+-8>>2]&64)){t=i;t=t+-16|0;c[q>>2]=t;l=r;return 1}f=(c[e>>2]|0)+5|0;g=a[f>>0]|0;if(!(g&4)){t=i;t=t+-16|0;c[q>>2]=t;l=r;return 1}h=c[i+-16>>2]|0;if(!(a[h+5>>0]&3)){t=i;t=t+-16|0;c[q>>2]=t;l=r;return 1}e=c[p>>2]|0;if((d[e+61>>0]|0)<2){Iw(e,h);t=c[q>>2]|0;t=t+-16|0;c[q>>2]=t;l=r;return 1}else{a[f>>0]=a[e+60>>0]&3|g&-8;t=i;t=t+-16|0;c[q>>2]=t;l=r;return 1}return 0}function AB(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+80|0;w=y+40|0;x=y+8|0;u=y+4|0;v=y;s=oB(b,1,u)|0;t=oB(b,2,v)|0;switch(a[s>>0]|0){case 1:{e=s+8|0;a[w>>0]=a[e>>0]|0;a[w+1>>0]=a[e+1>>0]|0;a[w+2>>0]=a[e+2>>0]|0;a[w+3>>0]=a[e+3>>0]|0;a[w+4>>0]=a[e+4>>0]|0;a[w+5>>0]=a[e+5>>0]|0;a[w+6>>0]=a[e+6>>0]|0;a[w+7>>0]=a[e+7>>0]|0;a[w+8>>0]=a[e+8>>0]|0;a[w+9>>0]=a[e+9>>0]|0;a[w+10>>0]=a[e+10>>0]|0;a[w+11>>0]=a[e+11>>0]|0;a[w+12>>0]=a[e+12>>0]|0;a[w+13>>0]=a[e+13>>0]|0;a[w+14>>0]=a[e+14>>0]|0;a[w+15>>0]=a[e+15>>0]|0;a[w+16>>0]=a[e+16>>0]|0;a[w+17>>0]=a[e+17>>0]|0;a[w+18>>0]=a[e+18>>0]|0;a[w+19>>0]=a[e+19>>0]|0;a[w+20>>0]=a[e+20>>0]|0;a[w+21>>0]=a[e+21>>0]|0;a[w+22>>0]=a[e+22>>0]|0;a[w+23>>0]=a[e+23>>0]|0;a[w+24>>0]=a[e+24>>0]|0;a[w+25>>0]=a[e+25>>0]|0;a[w+26>>0]=a[e+26>>0]|0;a[w+27>>0]=a[e+27>>0]|0;a[w+28>>0]=a[e+28>>0]|0;a[w+29>>0]=a[e+29>>0]|0;a[w+30>>0]=a[e+30>>0]|0;a[w+31>>0]=a[e+31>>0]|0;e=5;break}case 0:{e=w;f=e+32|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(f|0));k=c[s+4>>2]|0;e=w+(k>>3)|0;a[e>>0]=d[e>>0]|1<<(k&7);e=5;break}case 2:{e=w;f=e+32|0;do{a[e>>0]=255;e=e+1|0}while((e|0)<(f|0));e=5;break}default:{}}a:do if((e|0)==5){switch(a[t>>0]|0){case 1:{v=t+8|0;a[x>>0]=a[v>>0]|0;a[x+1>>0]=a[v+1>>0]|0;a[x+2>>0]=a[v+2>>0]|0;a[x+3>>0]=a[v+3>>0]|0;a[x+4>>0]=a[v+4>>0]|0;a[x+5>>0]=a[v+5>>0]|0;a[x+6>>0]=a[v+6>>0]|0;a[x+7>>0]=a[v+7>>0]|0;a[x+8>>0]=a[v+8>>0]|0;a[x+9>>0]=a[v+9>>0]|0;a[x+10>>0]=a[v+10>>0]|0;a[x+11>>0]=a[v+11>>0]|0;a[x+12>>0]=a[v+12>>0]|0;a[x+13>>0]=a[v+13>>0]|0;a[x+14>>0]=a[v+14>>0]|0;a[x+15>>0]=a[v+15>>0]|0;a[x+16>>0]=a[v+16>>0]|0;a[x+17>>0]=a[v+17>>0]|0;a[x+18>>0]=a[v+18>>0]|0;a[x+19>>0]=a[v+19>>0]|0;a[x+20>>0]=a[v+20>>0]|0;a[x+21>>0]=a[v+21>>0]|0;a[x+22>>0]=a[v+22>>0]|0;a[x+23>>0]=a[v+23>>0]|0;a[x+24>>0]=a[v+24>>0]|0;a[x+25>>0]=a[v+25>>0]|0;a[x+26>>0]=a[v+26>>0]|0;a[x+27>>0]=a[v+27>>0]|0;a[x+28>>0]=a[v+28>>0]|0;a[x+29>>0]=a[v+29>>0]|0;a[x+30>>0]=a[v+30>>0]|0;a[x+31>>0]=a[v+31>>0]|0;break}case 0:{e=x;f=e+32|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(f|0));u=c[t+4>>2]|0;v=x+(u>>3)|0;a[v>>0]=d[v>>0]|1<<(u&7);break}case 2:{e=x;f=e+32|0;do{a[e>>0]=255;e=e+1|0}while((e|0)<(f|0));break}default:break a}k=gw(b,48)|0;i=b+12|0;g=c[i>>2]|0;j=b+8|0;h=c[j>>2]|0;f=g+280+(((286024>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286024,e+16|0)|0){e=xx(b,286024,12)|0;c[f>>2]=e}c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;v=c[j>>2]|0;c[j>>2]=v+16;Kx(b,g+40|0,v,v);v=c[j>>2]|0;f=v+-16|0;c[v>>2]=c[f>>2];c[v+4>>2]=c[f+4>>2];c[v+8>>2]=c[f+8>>2];c[v+12>>2]=c[f+12>>2];v=c[j>>2]|0;c[j>>2]=v+16;f=v+-32|0;e=c[f>>2]|0;s=v;t=c[s+4>>2]|0;u=e+16|0;c[u>>2]=c[s>>2];c[u+4>>2]=t;a[e+6>>0]=c[v+8>>2];e=c[j>>2]|0;do if(((c[e+-8>>2]&64|0)!=0?(m=(c[f>>2]|0)+5|0,n=a[m>>0]|0,(n&4)!=0):0)?(o=c[e+-16>>2]|0,(a[o+5>>0]&3)!=0):0){f=c[i>>2]|0;if((d[f+61>>0]|0)<2){Iw(f,o);e=c[j>>2]|0;break}else{a[m>>0]=a[f+60>>0]&3|n&-8;break}}while(0);c[j>>2]=e+-16;aw(b,-2);c[k>>2]=0;c[k+4>>2]=0;a[k+8>>0]=1;e=k+16|0;f=e+32|0;do{a[e>>0]=0;e=e+1|0}while((e|0)<(f|0));e=0;do{a[k+(e+16)>>0]=a[w+e>>0]&~a[x+e>>0];e=e+1|0}while((e|0)!=32);l=y;return 1}while(0);j=gw(b,((c[u>>2]|0)+2+(c[v>>2]|0)<<3)+8|0)|0;i=b+12|0;g=c[i>>2]|0;k=b+8|0;h=c[k>>2]|0;f=g+280+(((286024>>>0)%127|0)<<2)|0;e=c[f>>2]|0;if(JN(286024,e+16|0)|0){e=xx(b,286024,12)|0;c[f>>2]=e}c[h>>2]=e;c[h+8>>2]=(a[e+4>>0]|64)&255;x=c[k>>2]|0;c[k>>2]=x+16;Kx(b,g+40|0,x,x);x=c[k>>2]|0;f=x+-16|0;c[x>>2]=c[f>>2];c[x+4>>2]=c[f+4>>2];c[x+8>>2]=c[f+8>>2];c[x+12>>2]=c[f+12>>2];x=c[k>>2]|0;c[k>>2]=x+16;f=x+-32|0;e=c[f>>2]|0;n=x;o=c[n+4>>2]|0;w=e+16|0;c[w>>2]=c[n>>2];c[w+4>>2]=o;a[e+6>>0]=c[x+8>>2];e=c[k>>2]|0;do if(((c[e+-8>>2]&64|0)!=0?(p=(c[f>>2]|0)+5|0,q=a[p>>0]|0,(q&4)!=0):0)?(r=c[e+-16>>2]|0,(a[r+5>>0]&3)!=0):0){f=c[i>>2]|0;if((d[f+61>>0]|0)<2){Iw(f,r);e=c[k>>2]|0;break}else{a[p>>0]=a[f+60>>0]&3|q&-8;break}}while(0);c[k>>2]=e+-16;aw(b,-2);c[j>>2]=0;c[j+4>>2]=0;r=j+8|0;a[r>>0]=6;v=c[v>>2]|0;w=v+2|0;c[j+12>>2]=w;x=j+16|0;a[x>>0]=8;PQ(j+24|0,t|0,v<<3|0)|0;PQ(r+(w<<3)|0,s|0,c[u>>2]<<3|0)|0;BB(b,x);l=y;return 1}function BB(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0;C=l;l=l+16|0;w=C+8|0;t=C;f=b+16|0;x=(c[c[f>>2]>>2]|0)+16|0;B=b+8|0;j=c[B>>2]|0;x=c[(x>>>0<j>>>0?x:316344)>>2]|0;E=x+16|0;h=c[E+4>>2]|0;D=j;c[D>>2]=c[E>>2];c[D+4>>2]=h;c[j+8>>2]=d[x+6>>0];j=c[B>>2]|0;x=j+16|0;c[B>>2]=x;f=(c[c[f>>2]>>2]|0)+32|0;f=c[(f>>>0<x>>>0?f:316344)>>2]|0;D=f+16|0;h=c[D+4>>2]|0;c[x>>2]=c[D>>2];c[x+4>>2]=h;c[j+24>>2]=d[f+6>>0];j=c[B>>2]|0;f=j+16|0;c[B>>2]=f;a:do if((j+-16|0)!=316344?(g=c[j+-8>>2]|0,(g&15|0)==5):0){h=j+-16|0;switch(g&63){case 4:{x=d[(c[h>>2]|0)+7>>0]|0;break a}case 20:{x=c[(c[h>>2]|0)+12>>2]|0;break a}case 7:{x=c[(c[h>>2]|0)+12>>2]|0;break a}case 5:{x=Ex(c[h>>2]|0)|0;break a}default:{x=0;break a}}}else x=0;while(0);b:do if((j|0)!=316344?(i=c[j+8>>2]|0,(i&15|0)==5):0)switch(i&63){case 4:{g=d[(c[j>>2]|0)+7>>0]|0;break b}case 20:{g=c[(c[j>>2]|0)+12>>2]|0;break b}case 7:{g=c[(c[j>>2]|0)+12>>2]|0;break b}case 5:{g=Ex(c[j>>2]|0)|0;break b}default:{g=0;break b}}else g=0;while(0);h=(x|0)==0;if(!(g|x)){c[B>>2]=j+-16;l=C;return}do if(g){f=j+-16|0;if((f|0)!=316344&(j|0)!=316344?Ox(b,f,j)|0:0){f=c[B>>2]|0;break}if(h){E=c[B>>2]|0;g=E+-48|0;f=c[g>>2]|0;A=E+-16|0;e=c[A+4>>2]|0;D=f+16|0;c[D>>2]=c[A>>2];c[D+4>>2]=e;a[f+6>>0]=c[E+-8>>2];f=c[B>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(k=(c[g>>2]|0)+5|0,m=a[k>>0]|0,(m&4)!=0):0)?(n=c[f+-16>>2]|0,(a[n+5>>0]&3)!=0):0){g=c[b+12>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,n);f=c[B>>2]|0;break}else{a[k>>0]=a[g+60>>0]&3|m&-8;break}}while(0);c[B>>2]=f+-32;l=C;return}f=g+x|0;n=b+12|0;if((c[(c[n>>2]|0)+12>>2]|0)>0)Sw(b);g=Dx(b)|0;h=c[B>>2]|0;c[h>>2]=g;c[h+8>>2]=69;h=(c[B>>2]|0)+16|0;c[B>>2]=h;if((f|0)>0){Ax(b,g,f,0);h=c[B>>2]|0}f=h+-48|0;c:do if((f|0)!=316344?(r=c[h+-40>>2]|0,(r&15|0)==5):0)switch(r&63){case 4:{m=d[(c[f>>2]|0)+7>>0]|0;break c}case 20:{m=c[(c[f>>2]|0)+12>>2]|0;break c}case 7:{m=c[(c[f>>2]|0)+12>>2]|0;break c}case 5:{m=Ex(c[f>>2]|0)|0;break c}default:{m=0;break c}}else m=0;while(0);f=h+-16|0;d:do if((f|0)!=316344?(s=c[h+-8>>2]|0,(s&15|0)==5):0)switch(s&63){case 4:{k=d[(c[f>>2]|0)+7>>0]|0;break d}case 20:{k=c[(c[f>>2]|0)+12>>2]|0;break d}case 7:{k=c[(c[f>>2]|0)+12>>2]|0;break d}case 5:{k=Ex(c[f>>2]|0)|0;break d}default:{k=0;break d}}else k=0;while(0);if((k+m|0)>65535)Wx(b,286374,t);if((m|0)>=1){j=1;while(1){h=((j|0)<0)<<31>>31;i=c[B>>2]|0;f=c[i+-48>>2]|0;g=yQ(j|0,h|0,-1,-1)|0;E=z;e:do if(E>>>0<0|((E|0)==0?g>>>0<(c[f+8>>2]|0)>>>0:0))f=(c[f+12>>2]|0)+(g<<4)|0;else{f=(c[f+16>>2]|0)+(((1<<(d[f+7>>0]|0))+-1&j)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(E=f+16|0,(c[E>>2]|0)==(j|0)?(c[E+4>>2]|0)==(h|0):0):0)break;g=c[f+28>>2]|0;if(!g){f=316344;break e}f=f+(g<<5)|0}}while(0);c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2];c[B>>2]=(c[B>>2]|0)+16;E=j+k|0;$v(b,-2,E,((E|0)<0)<<31>>31);if((j|0)==(m|0))break;else j=j+1|0}}g=c[B>>2]|0;f=g+-32|0;f:do if((f|0)!=316344?(u=c[g+-24>>2]|0,(u&15|0)==5):0)switch(u&63){case 4:{m=d[(c[f>>2]|0)+7>>0]|0;break f}case 20:{m=c[(c[f>>2]|0)+12>>2]|0;break f}case 7:{m=c[(c[f>>2]|0)+12>>2]|0;break f}case 5:{m=Ex(c[f>>2]|0)|0;break f}default:{m=0;break f}}else m=0;while(0);f=g+-16|0;g:do if((f|0)!=316344?(v=c[g+-8>>2]|0,(v&15|0)==5):0)switch(v&63){case 4:{k=d[(c[f>>2]|0)+7>>0]|0;break g}case 20:{k=c[(c[f>>2]|0)+12>>2]|0;break g}case 7:{k=c[(c[f>>2]|0)+12>>2]|0;break g}case 5:{k=Ex(c[f>>2]|0)|0;break g}default:{k=0;break g}}else k=0;while(0);if((k+m|0)>65535)Wx(b,286374,w);if((m|0)>=1){j=1;while(1){h=((j|0)<0)<<31>>31;i=c[B>>2]|0;f=c[i+-32>>2]|0;g=yQ(j|0,h|0,-1,-1)|0;E=z;h:do if(E>>>0<0|((E|0)==0?g>>>0<(c[f+8>>2]|0)>>>0:0))f=(c[f+12>>2]|0)+(g<<4)|0;else{f=(c[f+16>>2]|0)+(((1<<(d[f+7>>0]|0))+-1&j)<<5)|0;while(1){if((c[f+24>>2]|0)==19?(E=f+16|0,(c[E>>2]|0)==(j|0)?(c[E+4>>2]|0)==(h|0):0):0)break;g=c[f+28>>2]|0;if(!g){f=316344;break h}f=f+(g<<5)|0}}while(0);c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2];c[B>>2]=(c[B>>2]|0)+16;E=j+k|0;$v(b,-2,E,((E|0)<0)<<31>>31);if((j|0)==(m|0))break;else j=j+1|0}}E=c[B>>2]|0;g=E+-64|0;f=c[g>>2]|0;w=E+-16|0;b=c[w+4>>2]|0;D=f+16|0;c[D>>2]=c[w>>2];c[D+4>>2]=b;a[f+6>>0]=c[E+-8>>2];f=c[B>>2]|0;do if((c[f+-8>>2]&64|0)!=0?(y=(c[g>>2]|0)+5|0,A=a[y>>0]|0,(A&4)!=0):0){h=c[f+-16>>2]|0;if(!(a[h+5>>0]&3))break;g=c[n>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,h);f=c[B>>2]|0;break}else{a[y>>0]=a[g+60>>0]&3|A&-8;break}}while(0);c[B>>2]=f+-48;pB(e,x);l=C;return}while(0);c[B>>2]=f+-16;g=f+-48|0;E=c[g>>2]|0;A=f+-32|0;e=c[A+4>>2]|0;D=E+16|0;c[D>>2]=c[A>>2];c[D+4>>2]=e;a[E+6>>0]=c[f+-24>>2];f=c[B>>2]|0;do if(((c[f+-8>>2]&64|0)!=0?(o=(c[g>>2]|0)+5|0,p=a[o>>0]|0,(p&4)!=0):0)?(q=c[f+-16>>2]|0,(a[q+5>>0]&3)!=0):0){g=c[b+12>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,q);f=c[B>>2]|0;break}else{a[o>>0]=a[g+60>>0]&3|p&-8;break}}while(0);c[B>>2]=f+-16;l=C;return}function CB(d){d=d|0;var e=0,f=0;a:while(1){e=a[d>>0]|0;b:do switch(e<<24>>24){case 10:{e=3;break a}case 16:case 15:{d=1;e=9;break a}case 12:{e=1;break}default:{switch(a[286007+(e&255)>>0]|0){case 1:{e=1;break b}case 2:break;default:{d=0;e=9;break a}}if(CB(d+8|0)|0){d=1;e=9;break a}e=c[d+4>>2]|0}}while(0);d=d+(e<<3)|0}if((e|0)==3){e=d+2|0;f=b[e>>1]|0;if(!(f<<16>>16)){f=0;return f|0}else{b[e>>1]=0;d=CB(d+(c[d+4>>2]<<3)|0)|0;b[e>>1]=f;return d|0}}else if((e|0)==9)return d|0;return 0}function DB(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;a:do switch(d|0){case 1:{b:while(1){switch(a[b>>0]|0){case 14:case 8:break a;case 3:case 5:{i=1;h=24;break b}case 10:{e=c[b+4>>2]|0;break}case 9:case 15:case 13:case 12:{e=1;break}case 7:{if(!(DB(b+(c[b+4>>2]<<3)|0,1)|0))e=1;else{g=1;break b}break}case 6:{if(!(DB(b+8|0,1)|0)){g=0;break b}e=c[b+4>>2]|0;break}default:{g=0;break b}}b=b+(e<<3)|0}if((h|0)==24)return i|0;d=g;return d|0}case 0:{c:while(1){switch(a[b>>0]|0){case 14:case 8:break a;case 9:case 3:case 5:{h=23;break c}case 10:{e=c[b+4>>2]|0;break}case 16:case 15:case 13:case 12:{e=1;break}case 7:{if(!(DB(b+(c[b+4>>2]<<3)|0,0)|0))e=1;else{i=1;h=24;break c}break}case 6:{if(!(DB(b+8|0,0)|0)){i=0;h=24;break c}e=c[b+4>>2]|0;break}default:{i=0;h=24;break c}}b=b+(e<<3)|0}if((h|0)==23){d=1;return d|0}else if((h|0)==24)return i|0;break}default:{d:while(1){switch(a[b>>0]|0){case 14:case 8:break a;case 3:case 5:{i=1;h=24;break d}case 10:{e=c[b+4>>2]|0;break}case 16:case 9:case 15:case 13:case 12:{e=1;break}case 7:{if(!(DB(b+(c[b+4>>2]<<3)|0,d)|0))e=1;else{f=1;break d}break}case 6:{if(!(DB(b+8|0,d)|0)){f=0;break d}e=c[b+4>>2]|0;break}default:{f=0;break d}}b=b+(e<<3)|0}if((h|0)==24)return i|0;d=f;return d|0}}while(0);d=(d|0)!=1&1;return d|0}function EB(d){d=d|0;var e=0,f=0,g=0;g=0;a:while(1){b:while(1){switch(a[d>>0]|0){case 2:case 1:case 0:{e=4;break a}case 14:case 9:case 8:case 3:case 4:{e=12;break a}case 11:case 16:case 5:{e=13;break a}case 10:{e=6;break a}case 7:{e=11;break a}case 6:break b;case 13:case 12:case 15:break;default:{d=0;e=14;break a}}d=d+8|0}e=EB(d+8|0)|0;if((e|0)<0){d=-1;e=14;break}d=d+(c[d+4>>2]<<3)|0;g=e+g|0}if((e|0)==4){g=g+1|0;return g|0}else if((e|0)==6){e=d+2|0;f=b[e>>1]|0;if(!(f<<16>>16)){e=-1;f=(e|0)<0;g=e+g|0;g=f?-1:g;return g|0}b[e>>1]=0;d=EB(d+(c[d+4>>2]<<3)|0)|0;b[e>>1]=f;e=d;f=(e|0)<0;g=e+g|0;g=f?-1:g;return g|0}else if((e|0)==11){f=EB(d+8|0)|0;e=(f|0)<0|(f|0)!=(EB(d+(c[d+4>>2]<<3)|0)|0);return (e?-1:f+g|0)|0}else if((e|0)==12)return g|0;else if((e|0)==13){g=-1;return g|0}else if((e|0)==14)return d|0;return 0}function FB(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+32|0;n=q+16|0;j=q+8|0;p=q+20|0;c[p>>2]=d;o=p+4|0;c[o>>2]=0;f=p+8|0;c[f>>2]=b;k=b+12|0;e=c[k>>2]|0;m=d+4|0;e=jg[c[e>>2]&31](c[e+4>>2]|0,c[d>>2]|0,c[m>>2]<<2,8)|0;if(!e)Wx(b,286858,q);c[d>>2]=e;c[m>>2]=2;GB(p,d+8|0,0,-1,286876);e=c[p>>2]|0;h=e+4|0;i=c[h>>2]|0;g=c[o>>2]|0;if((g|0)>=(i|0)){f=c[f>>2]|0;g=c[f+12>>2]|0;g=jg[c[g>>2]&31](c[g+4>>2]|0,c[e>>2]|0,i<<2,i<<3)|0;if((i|0)>0&(g|0)==0)Wx(f,286858,j);c[e>>2]=g;c[h>>2]=i<<1;g=c[o>>2]|0;e=c[p>>2]|0}f=g+1|0;c[o>>2]=f;e=(c[e>>2]|0)+(g<<2)|0;a[e>>0]=9;a[e+1>>0]=0;e=c[k>>2]|0;e=jg[c[e>>2]&31](c[e+4>>2]|0,c[d>>2]|0,c[m>>2]<<2,f<<2)|0;if((g|0)>-1&(e|0)==0)Wx(b,286858,n);c[d>>2]=e;c[m>>2]=f;m=c[c[p>>2]>>2]|0;if((c[o>>2]|0)>0)k=0;else{d=e;l=q;return d|0}do{h=m+(k<<2)|0;i=(k|0)>-1;j=k+1|0;e=a[h>>0]|0;a:while(1){switch(e<<24>>24){case 3:case 5:case 4:case 16:case 15:case 14:case 12:case 10:{f=13;break a}case 11:{e=k;break}default:{f=25;break a}}b:while(1){e=(c[m+(e+1<<2)>>2]|0)+e|0;g=m+(e<<2)|0;switch(a[g>>0]|0){case 9:case 17:case 18:case 8:{f=18;break a}case 11:break;case 16:case 15:case 14:break b;default:{f=23;break a}}}e=(c[m+(e+1<<2)>>2]|0)+e|0;if((a[m+(e<<2)>>0]|0)==11){do e=(c[m+(e+1<<2)>>2]|0)+e|0;while((a[m+(e<<2)>>0]|0)==11);f=e}else f=e;e=c[g>>2]|0;c[h>>2]=e;e=e&255;if(!i)continue;c[(c[c[p>>2]>>2]|0)+(j<<2)>>2]=f-k}if((f|0)==13){f=(c[m+(j<<2)>>2]|0)+k|0;if((a[m+(f<<2)>>0]|0)==11)do f=(c[m+(f+1<<2)>>2]|0)+f|0;while((a[m+(f<<2)>>0]|0)==11);if(i){c[(c[c[p>>2]>>2]|0)+(j<<2)>>2]=f-k;f=25}else f=25}else if((f|0)==18){e=c[g>>2]|0;c[h>>2]=e;a[m+(j<<2)>>0]=0;e=e&255;f=25}else if((f|0)==23)if(i){c[(c[c[p>>2]>>2]|0)+(j<<2)>>2]=e-k;f=27}else f=27;c:do if((f|0)==25){f=0;switch(e<<24>>24){case 6:case 2:{e=9;break c}case 16:case 15:case 14:case 13:case 12:case 11:case 10:case 3:case 4:{f=27;break c}case 5:{e=10;break c}default:{e=1;break c}}}while(0);if((f|0)==27)e=2;k=e+k|0}while((k|0)<(c[o>>2]|0));d=c[d>>2]|0;l=q;return d|0}function GB(e,f,g,h,i){e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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;U=l;l=l+1216|0;M=U+176|0;J=U+168|0;w=U+160|0;N=U+152|0;D=U+144|0;C=U+136|0;E=U+128|0;z=U+120|0;A=U+112|0;y=U+104|0;v=U+96|0;O=U+88|0;B=U+80|0;q=U+72|0;F=U+64|0;Q=U+56|0;L=U+48|0;K=U+40|0;H=U+32|0;G=U+24|0;r=U+16|0;u=U+8|0;t=U;T=U+184|0;o=U+1184|0;R=f;S=h;a:while(1){switch(a[R>>0]|0){case 0:{P=3;break a}case 2:{P=16;break a}case 1:{P=21;break a}case 4:{P=71;break a}case 7:{P=76;break a}case 5:{P=98;break a}case 14:{P=133;break a}case 8:{P=140;break a}case 9:{P=155;break a}case 15:{P=172;break a}case 16:{P=188;break a}case 13:{P=197;break a}case 10:{P=220;break a}case 6:break;default:{P=228;break a}}k=R+8|0;m=R+4|0;n=R+(c[m>>2]<<3)|0;f=k;b:while(1){switch(a[f>>0]|0){case 7:case 5:{P=225;break b}case 6:{h=c[f+4>>2]|0;break}case 15:{h=1;break}default:{P=226;break b}}f=f+(h<<3)|0}if((P|0)==225){HB(n,i,T)|0;GB(e,k,0,S,T)}else if((P|0)==226)GB(e,k,0,S,286876);P=(EB(k)|0)==0;R=R+(c[m>>2]<<3)|0;S=P?S:-1}switch(P|0){case 3:{o=c[R+4>>2]|0;j=c[e>>2]|0;if(((S|0)>-1?(s=c[j>>2]|0,p=s+(S<<2)|0,(a[p>>0]|0)==4):0)?(d[p+1>>0]|0)==(o|0):0){k=j+4|0;m=c[k>>2]|0;n=e+4|0;f=c[n>>2]|0;if((f|0)<(m|0))j=s;else{h=c[e+8>>2]|0;f=c[h+12>>2]|0;f=jg[c[f>>2]&31](c[f+4>>2]|0,s,m<<2,m<<3)|0;if((m|0)>0&(f|0)==0)Wx(h,286858,t);c[j>>2]=f;c[k>>2]=m<<1;f=c[n>>2]|0;j=c[c[e>>2]>>2]|0}c[n>>2]=f+1;e=j+(f<<2)|0;a[e>>0]=0;a[e+1>>0]=0;l=U;return}k=j+4|0;m=c[k>>2]|0;n=e+4|0;f=c[n>>2]|0;if((f|0)>=(m|0)){f=c[e+8>>2]|0;h=c[f+12>>2]|0;h=jg[c[h>>2]&31](c[h+4>>2]|0,c[j>>2]|0,m<<2,m<<3)|0;if((m|0)>0&(h|0)==0)Wx(f,286858,u);c[j>>2]=h;c[k>>2]=m<<1;f=c[n>>2]|0;j=c[e>>2]|0}c[n>>2]=f+1;e=(c[j>>2]|0)+(f<<2)|0;a[e>>0]=1;a[e+1>>0]=o;l=U;return}case 16:{j=c[e>>2]|0;k=j+4|0;m=c[k>>2]|0;n=e+4|0;f=c[n>>2]|0;if((f|0)>=(m|0)){f=c[e+8>>2]|0;h=c[f+12>>2]|0;h=jg[c[h>>2]&31](c[h+4>>2]|0,c[j>>2]|0,m<<2,m<<3)|0;if((m|0)>0&(h|0)==0)Wx(f,286858,r);c[j>>2]=h;c[k>>2]=m<<1;f=c[n>>2]|0;j=c[e>>2]|0}c[n>>2]=f+1;e=(c[j>>2]|0)+(f<<2)|0;a[e>>0]=0;a[e+1>>0]=0;l=U;return}case 21:{r=R+8|0;k=-1;h=0;m=0;c:while(1){T=a[r+m>>0]|0;f=T&255;switch(T<<24>>24){case 0:{if((h|0)>1)break c;else f=k;break}case -1:{if((h|0)<(m<<3|0))break c;f=k;h=h+8|0;break}default:{if((h|0)>0|(f+255&f|0)!=0)break c;f=m;h=h+1|0}}m=m+1|0;if((m|0)>=32){P=29;break}else k=f}if((P|0)==29){switch(h|0){case 0:{n=18;break}case 1:{T=d[r+f>>0]|0;n=f<<3;o=(T&240|0)==0;n=o?n:n|4;T=o?T:T>>>4;o=(T&12|0)==0;n=(o?T:T>>>2)>>>1&1|(o?n:n|2);o=c[e>>2]|0;if(((S|0)>-1?(j=c[o>>2]|0,x=j+(S<<2)|0,(a[x>>0]|0)==4):0)?(d[x+1>>0]|0)==(n|0):0){h=o+4|0;k=c[h>>2]|0;m=e+4|0;f=c[m>>2]|0;if((f|0)>=(k|0)){f=c[e+8>>2]|0;T=c[f+12>>2]|0;j=jg[c[T>>2]&31](c[T+4>>2]|0,j,k<<2,k<<3)|0;if((k|0)>0&(j|0)==0)Wx(f,286858,G);c[o>>2]=j;c[h>>2]=k<<1;f=c[m>>2]|0;j=c[c[e>>2]>>2]|0}c[m>>2]=f+1;e=j+(f<<2)|0;a[e>>0]=0;a[e+1>>0]=0;l=U;return}h=o+4|0;k=c[h>>2]|0;m=e+4|0;f=c[m>>2]|0;if((f|0)<(k|0))j=o;else{j=c[e+8>>2]|0;f=c[j+12>>2]|0;f=jg[c[f>>2]&31](c[f+4>>2]|0,c[o>>2]|0,k<<2,k<<3)|0;if((k|0)>0&(f|0)==0)Wx(j,286858,H);c[o>>2]=f;c[h>>2]=k<<1;f=c[m>>2]|0;j=c[e>>2]|0}c[m>>2]=f+1;e=(c[j>>2]|0)+(f<<2)|0;a[e>>0]=1;a[e+1>>0]=n;l=U;return}default:n=0}j=c[e>>2]|0;k=j+4|0;m=c[k>>2]|0;o=e+4|0;f=c[o>>2]|0;if((f|0)>=(m|0)){f=c[e+8>>2]|0;h=c[f+12>>2]|0;h=jg[c[h>>2]&31](c[h+4>>2]|0,c[j>>2]|0,m<<2,m<<3)|0;if((m|0)>0&(h|0)==0)Wx(f,286858,F);c[j>>2]=h;c[k>>2]=m<<1;f=c[o>>2]|0;j=c[e>>2]|0}c[o>>2]=f+1;e=(c[j>>2]|0)+(f<<2)|0;a[e>>0]=n;a[e+1>>0]=0;l=U;return}n=c[e>>2]|0;d:do if((S|0)>-1?(I=c[n>>2]|0,(a[I+(S<<2)>>0]|0)==5):0){j=I+(S+2<<2)|0;f=0;do{if((a[r+f>>0]|0)!=(a[j+f>>0]|0))break d;f=f+1|0}while((f|0)<32);h=n+4|0;k=c[h>>2]|0;m=e+4|0;f=c[m>>2]|0;if((f|0)<(k|0))j=I;else{f=c[e+8>>2]|0;j=c[f+12>>2]|0;j=jg[c[j>>2]&31](c[j+4>>2]|0,I,k<<2,k<<3)|0;if((k|0)>0&(j|0)==0)Wx(f,286858,K);c[n>>2]=j;c[h>>2]=k<<1;f=c[m>>2]|0;j=c[c[e>>2]>>2]|0}c[m>>2]=f+1;e=j+(f<<2)|0;a[e>>0]=0;a[e+1>>0]=0;l=U;return}while(0);h=n+4|0;k=c[h>>2]|0;q=e+4|0;f=c[q>>2]|0;p=e+8|0;if((f|0)<(k|0))j=n;else{j=c[p>>2]|0;f=c[j+12>>2]|0;f=jg[c[f>>2]&31](c[f+4>>2]|0,c[n>>2]|0,k<<2,k<<3)|0;if((k|0)>0&(f|0)==0)Wx(j,286858,L);c[n>>2]=f;c[h>>2]=k<<1;f=c[q>>2]|0;j=c[e>>2]|0}o=f+1|0;c[q>>2]=o;f=(c[j>>2]|0)+(f<<2)|0;a[f>>0]=2;a[f+1>>0]=0;f=o;h=0;while(1){m=j+4|0;n=c[m>>2]|0;if((f|0)<(n|0))j=f;else{f=c[p>>2]|0;k=c[f+12>>2]|0;k=jg[c[k>>2]&31](c[k+4>>2]|0,c[j>>2]|0,n<<2,n<<3)|0;if((n|0)>0&(k|0)==0)Wx(f,286858,Q);c[j>>2]=k;c[m>>2]=n<<1;j=c[q>>2]|0}f=j+1|0;c[q>>2]=f;h=h+1|0;if((h|0)==8){j=0;break}j=c[e>>2]|0}do{a[(c[c[e>>2]>>2]|0)+(o<<2)+j>>0]=a[r+j>>0]|0;j=j+1|0}while((j|0)!=32);l=U;return}case 71:{j=c[e>>2]|0;k=j+4|0;m=c[k>>2]|0;n=e+4|0;f=c[n>>2]|0;if((f|0)>=(m|0)){f=c[e+8>>2]|0;h=c[f+12>>2]|0;h=jg[c[h>>2]&31](c[h+4>>2]|0,c[j>>2]|0,m<<2,m<<3)|0;if((m|0)>0&(h|0)==0)Wx(f,286858,q);c[j>>2]=h;c[k>>2]=m<<1;f=c[n>>2]|0;j=c[e>>2]|0}c[n>>2]=f+1;e=(c[j>>2]|0)+(f<<2)|0;a[e>>0]=18;a[e+1>>0]=0;l=U;return}case 76:{m=R+8|0;n=R+(c[R+4>>2]<<3)|0;h=(a[n>>0]|0)==3;k=h&1;j=HB(m,286876,T)|0;e:do if(!(IB(m)|0)){f:do if(!j){HB(n,i,o)|0;f=0;while(1){if((a[o+f>>0]&a[T+f>>0])<<24>>24)break f;f=f+1|0;if((f|0)>=32){P=81;break e}}}while(0);if((g|0)!=0&h){j=KB(e,15)|0;if((j|0)>-1)c[(c[c[e>>2]>>2]|0)+(j+1<<2)>>2]=(c[e+4>>2]|0)-j;GB(e,m,1,-1,286876);break}f=JB(e,T,j)|0;h=KB(e,10)|0;GB(e,m,k,f,286876);j=KB(e,14)|0;if((h|0)>-1)c[(c[c[e>>2]>>2]|0)+(h+1<<2)>>2]=(c[e+4>>2]|0)-h;if((f|0)>-1)c[(c[c[e>>2]>>2]|0)+(f+1<<2)>>2]=(c[e+4>>2]|0)-f;GB(e,n,g,-1,i);if((j|0)>-1)c[(c[c[e>>2]>>2]|0)+(j+1<<2)>>2]=(c[e+4>>2]|0)-j}else P=81;while(0);if((P|0)==81){f=JB(e,T,0)|0;GB(e,m,0,f,i);if(h)j=-1;else j=KB(e,11)|0;if((f|0)>-1)c[(c[c[e>>2]>>2]|0)+(f+1<<2)>>2]=(c[e+4>>2]|0)-f;GB(e,n,g,-1,i);if((j|0)>-1)c[(c[c[e>>2]>>2]|0)+(j+1<<2)>>2]=(c[e+4>>2]|0)-j}l=U;return}case 98:{n=R+8|0;g:do switch(a[n>>0]|0){case 1:{P=R+16|0;a[T>>0]=a[P>>0]|0;a[T+1>>0]=a[P+1>>0]|0;a[T+2>>0]=a[P+2>>0]|0;a[T+3>>0]=a[P+3>>0]|0;a[T+4>>0]=a[P+4>>0]|0;a[T+5>>0]=a[P+5>>0]|0;a[T+6>>0]=a[P+6>>0]|0;a[T+7>>0]=a[P+7>>0]|0;a[T+8>>0]=a[P+8>>0]|0;a[T+9>>0]=a[P+9>>0]|0;a[T+10>>0]=a[P+10>>0]|0;a[T+11>>0]=a[P+11>>0]|0;a[T+12>>0]=a[P+12>>0]|0;a[T+13>>0]=a[P+13>>0]|0;a[T+14>>0]=a[P+14>>0]|0;a[T+15>>0]=a[P+15>>0]|0;a[T+16>>0]=a[P+16>>0]|0;a[T+17>>0]=a[P+17>>0]|0;a[T+18>>0]=a[P+18>>0]|0;a[T+19>>0]=a[P+19>>0]|0;a[T+20>>0]=a[P+20>>0]|0;a[T+21>>0]=a[P+21>>0]|0;a[T+22>>0]=a[P+22>>0]|0;a[T+23>>0]=a[P+23>>0]|0;a[T+24>>0]=a[P+24>>0]|0;a[T+25>>0]=a[P+25>>0]|0;a[T+26>>0]=a[P+26>>0]|0;a[T+27>>0]=a[P+27>>0]|0;a[T+28>>0]=a[P+28>>0]|0;a[T+29>>0]=a[P+29>>0]|0;a[T+30>>0]=a[P+30>>0]|0;a[T+31>>0]=a[P+31>>0]|0;P=102;break}case 0:{j=T;f=j+32|0;do{a[j>>0]=0;j=j+1|0}while((j|0)<(f|0));S=c[R+12>>2]|0;P=T+(S>>3)|0;a[P>>0]=d[P>>0]|1<<(S&7);P=102;break}case 2:{j=T;f=j+32|0;do{a[j>>0]=255;j=j+1|0}while((j|0)<(f|0));P=102;break}default:{j=HB(n,286876,T)|0;h:do if(!(IB(n)|0)){i:do if(!j){f=0;while(1){if((a[i+f>>0]&a[T+f>>0])<<24>>24)break i;f=f+1|0;if((f|0)>=32)break h}}while(0);m=JB(e,T,j)|0;if(g){j=KB(e,15)|0;if((j|0)>-1){c[(c[c[e>>2]>>2]|0)+(j+1<<2)>>2]=(c[e+4>>2]|0)-j;k=-1}else k=-1}else k=KB(e,10)|0;f=e+4|0;h=c[f>>2]|0;GB(e,n,0,-1,286876);j=KB(e,15)|0;if((j|0)>-1)c[(c[c[e>>2]>>2]|0)+(j+1<<2)>>2]=h-j;if((k|0)>-1)c[(c[c[e>>2]>>2]|0)+(k+1<<2)>>2]=(c[f>>2]|0)-k;if((m|0)<=-1)break g;c[(c[c[e>>2]>>2]|0)+(m+1<<2)>>2]=(c[f>>2]|0)-m;break g}while(0);f=JB(e,T,0)|0;GB(e,n,0,f,286876);j=KB(e,11)|0;if((f|0)>-1)c[(c[c[e>>2]>>2]|0)+(f+1<<2)>>2]=(c[e+4>>2]|0)-f;if((j|0)>-1)c[(c[c[e>>2]>>2]|0)+(j+1<<2)>>2]=f-j}}while(0);if((P|0)==102){j=c[e>>2]|0;k=j+4|0;m=c[k>>2]|0;q=e+4|0;f=c[q>>2]|0;p=e+8|0;if((f|0)>=(m|0)){f=c[p>>2]|0;h=c[f+12>>2]|0;h=jg[c[h>>2]&31](c[h+4>>2]|0,c[j>>2]|0,m<<2,m<<3)|0;if((m|0)>0&(h|0)==0)Wx(f,286858,B);c[j>>2]=h;c[k>>2]=m<<1;f=c[q>>2]|0;j=c[e>>2]|0}o=f+1|0;c[q>>2]=o;f=(c[j>>2]|0)+(f<<2)|0;a[f>>0]=6;a[f+1>>0]=0;f=o;h=0;while(1){m=j+4|0;n=c[m>>2]|0;if((f|0)<(n|0))j=f;else{f=c[p>>2]|0;k=c[f+12>>2]|0;k=jg[c[k>>2]&31](c[k+4>>2]|0,c[j>>2]|0,n<<2,n<<3)|0;if((n|0)>0&(k|0)==0)Wx(f,286858,O);c[j>>2]=k;c[m>>2]=n<<1;j=c[q>>2]|0}f=j+1|0;c[q>>2]=f;h=h+1|0;if((h|0)==8){j=0;break}j=c[e>>2]|0}do{a[(c[c[e>>2]>>2]|0)+(o<<2)+j>>0]=a[T+j>>0]|0;j=j+1|0}while((j|0)!=32)}l=U;return}case 133:{n=c[R+4>>2]|0;if((n|0)>0){j=c[e>>2]|0;k=j+4|0;m=c[k>>2]|0;o=e+4|0;f=c[o>>2]|0;if((f|0)>=(m|0)){f=c[e+8>>2]|0;h=c[f+12>>2]|0;h=jg[c[h>>2]&31](c[h+4>>2]|0,c[j>>2]|0,m<<2,m<<3)|0;if((m|0)>0&(h|0)==0)Wx(f,286858,v);c[j>>2]=h;c[k>>2]=m<<1;f=c[o>>2]|0;j=c[e>>2]|0}c[o>>2]=f+1;T=(c[j>>2]|0)+(f<<2)|0;a[T>>0]=7;a[T+1>>0]=n}GB(e,R+8|0,0,-1,286876);l=U;return}case 140:{j=R+8|0;p=JB(e,T,HB(j,286876,T)|0)|0;if(!(IB(j)|0)){o=KB(e,10)|0;GB(e,j,0,-1,286876);j=c[e>>2]|0;k=j+4|0;m=c[k>>2]|0;n=e+4|0;f=c[n>>2]|0;if((f|0)<(m|0))h=f;else{f=c[e+8>>2]|0;h=c[f+12>>2]|0;h=jg[c[h>>2]&31](c[h+4>>2]|0,c[j>>2]|0,m<<2,m<<3)|0;if((m|0)>0&(h|0)==0)Wx(f,286858,A);c[j>>2]=h;c[k>>2]=m<<1;h=c[n>>2]|0;j=c[e>>2]|0}f=h+1|0;c[n>>2]=f;j=c[j>>2]|0;T=j+(h<<2)|0;a[T>>0]=17;a[T+1>>0]=0;if((o|0)>-1)c[j+(o+1<<2)>>2]=f-o}else{j=c[e>>2]|0;k=j+4|0;m=c[k>>2]|0;n=e+4|0;f=c[n>>2]|0;if((f|0)>=(m|0)){f=c[e+8>>2]|0;h=c[f+12>>2]|0;h=jg[c[h>>2]&31](c[h+4>>2]|0,c[j>>2]|0,m<<2,m<<3)|0;if((m|0)>0&(h|0)==0)Wx(f,286858,y);c[j>>2]=h;c[k>>2]=m<<1;f=c[n>>2]|0;j=c[e>>2]|0}c[n>>2]=f+1;j=c[j>>2]|0;T=j+(f<<2)|0;a[T>>0]=18;a[T+1>>0]=0}if((p|0)>-1)c[j+(p+1<<2)>>2]=(c[e+4>>2]|0)-p;l=U;return}case 155:{f=R+8|0;o=EB(f)|0;if(o>>>0<256?(CB(f)|0)==0:0){GB(e,f,0,S,286876);if((o|0)<=0){l=U;return}j=c[e>>2]|0;k=j+4|0;m=c[k>>2]|0;n=e+4|0;f=c[n>>2]|0;if((f|0)>=(m|0)){f=c[e+8>>2]|0;h=c[f+12>>2]|0;h=jg[c[h>>2]&31](c[h+4>>2]|0,c[j>>2]|0,m<<2,m<<3)|0;if((m|0)>0&(h|0)==0)Wx(f,286858,z);c[j>>2]=h;c[k>>2]=m<<1;f=c[n>>2]|0;j=c[e>>2]|0}c[n>>2]=f+1;e=(c[j>>2]|0)+(f<<2)|0;a[e>>0]=7;a[e+1>>0]=o;l=U;return}j=KB(e,10)|0;GB(e,f,0,S,286876);p=KB(e,16)|0;if((j|0)>-1){o=e+4|0;T=c[e>>2]|0;c[(c[T>>2]|0)+(j+1<<2)>>2]=(c[o>>2]|0)-j;n=e;j=T}else{n=e;o=e+4|0;j=c[e>>2]|0}k=j+4|0;m=c[k>>2]|0;h=c[o>>2]|0;if((h|0)>=(m|0)){f=c[e+8>>2]|0;h=c[f+12>>2]|0;h=jg[c[h>>2]&31](c[h+4>>2]|0,c[j>>2]|0,m<<2,m<<3)|0;if((m|0)>0&(h|0)==0)Wx(f,286858,E);c[j>>2]=h;c[k>>2]=m<<1;h=c[o>>2]|0;j=c[n>>2]|0}f=h+1|0;c[o>>2]=f;j=c[j>>2]|0;e=j+(h<<2)|0;a[e>>0]=18;a[e+1>>0]=0;if((p|0)<=-1){l=U;return}c[j+(p+1<<2)>>2]=f-p;l=U;return}case 172:{p=R+8|0;j=EB(p)|0;if(j>>>0<16?(CB(p)|0)==0:0){GB(e,p,0,S,i);p=b[R+2>>1]|0;n=d[R+1>>0]|j<<4;j=c[e>>2]|0;k=j+4|0;m=c[k>>2]|0;o=e+4|0;f=c[o>>2]|0;if((f|0)>=(m|0)){f=c[e+8>>2]|0;h=c[f+12>>2]|0;h=jg[c[h>>2]&31](c[h+4>>2]|0,c[j>>2]|0,m<<2,m<<3)|0;if((m|0)>0&(h|0)==0)Wx(f,286858,C);c[j>>2]=h;c[k>>2]=m<<1;f=c[o>>2]|0;j=c[e>>2]|0}c[o>>2]=f+1;e=(c[j>>2]|0)+(f<<2)|0;a[e>>0]=20;a[e+1>>0]=n;b[e+2>>1]=p;l=U;return}o=a[R+1>>0]|0;n=b[R+2>>1]|0;j=c[e>>2]|0;k=j+4|0;m=c[k>>2]|0;q=e+4|0;f=c[q>>2]|0;if((f|0)>=(m|0)){f=c[e+8>>2]|0;h=c[f+12>>2]|0;h=jg[c[h>>2]&31](c[h+4>>2]|0,c[j>>2]|0,m<<2,m<<3)|0;if((m|0)>0&(h|0)==0)Wx(f,286858,D);c[j>>2]=h;c[k>>2]=m<<1;f=c[q>>2]|0;j=c[e>>2]|0}c[q>>2]=f+1;j=(c[j>>2]|0)+(f<<2)|0;a[j>>0]=21;a[j+1>>0]=o;b[j+2>>1]=n;GB(e,p,0,S,i);j=c[e>>2]|0;k=j+4|0;m=c[k>>2]|0;f=c[q>>2]|0;if((f|0)>=(m|0)){f=c[e+8>>2]|0;h=c[f+12>>2]|0;h=jg[c[h>>2]&31](c[h+4>>2]|0,c[j>>2]|0,m<<2,m<<3)|0;if((m|0)>0&(h|0)==0)Wx(f,286858,N);c[j>>2]=h;c[k>>2]=m<<1;f=c[q>>2]|0;j=c[e>>2]|0}c[q>>2]=f+1;e=(c[j>>2]|0)+(f<<2)|0;a[e>>0]=22;a[e+1>>0]=0;b[e+2>>1]=0;l=U;return}case 188:{n=b[R+2>>1]|0;j=c[e>>2]|0;k=j+4|0;m=c[k>>2]|0;o=e+4|0;f=c[o>>2]|0;if((f|0)>=(m|0)){f=c[e+8>>2]|0;h=c[f+12>>2]|0;h=jg[c[h>>2]&31](c[h+4>>2]|0,c[j>>2]|0,m<<2,m<<3)|0;if((m|0)>0&(h|0)==0)Wx(f,286858,w);c[j>>2]=h;c[k>>2]=m<<1;f=c[o>>2]|0;j=c[e>>2]|0}c[o>>2]=f+1;j=(c[j>>2]|0)+(f<<2)|0;a[j>>0]=21;a[j+1>>0]=14;b[j+2>>1]=n;GB(e,R+8|0,0,S,286876);j=c[e>>2]|0;k=j+4|0;m=c[k>>2]|0;f=c[o>>2]|0;if((f|0)>=(m|0)){f=c[e+8>>2]|0;h=c[f+12>>2]|0;h=jg[c[h>>2]&31](c[h+4>>2]|0,c[j>>2]|0,m<<2,m<<3)|0;if((m|0)>0&(h|0)==0)Wx(f,286858,J);c[j>>2]=h;c[k>>2]=m<<1;f=c[o>>2]|0;j=c[e>>2]|0}c[o>>2]=f+1;e=(c[j>>2]|0)+(f<<2)|0;a[e>>0]=23;a[e+1>>0]=0;b[e+2>>1]=0;l=U;return}case 197:{j=KB(e,12)|0;q=KB(e,11)|0;r=e+4|0;s=c[r>>2]|0;if((j|0)>-1)c[(c[c[e>>2]>>2]|0)+(j+1<<2)>>2]=s-j;j=R+8|0;if((a[j>>0]|0)==12){p=e+8|0;h=c[r>>2]|0;o=0;do{c[T+(o<<2)>>2]=h;o=o+1|0;GB(e,j+8|0,0,-1,286876);f=c[e>>2]|0;m=f+4|0;n=c[m>>2]|0;h=c[r>>2]|0;if((h|0)<(n|0))k=h;else{h=c[p>>2]|0;k=c[h+12>>2]|0;k=jg[c[k>>2]&31](c[k+4>>2]|0,c[f>>2]|0,n<<2,n<<3)|0;if((n|0)>0&(k|0)==0)Wx(h,286858,M);c[f>>2]=k;c[m>>2]=n<<1;k=c[r>>2]|0;f=c[e>>2]|0}h=k+1|0;c[r>>2]=h;S=(c[f>>2]|0)+(k<<2)|0;a[S>>0]=8;a[S+1>>0]=0;j=j+(c[j+4>>2]<<3)|0}while((a[j>>0]|0)==12)}o=c[c[e>>2]>>2]|0;if((q|0)>-1)c[o+(q+1<<2)>>2]=(c[r>>2]|0)-q;n=c[r>>2]|0;j:do if((s|0)<(n|0)){m=s;while(1){k=o+(m<<2)|0;j=a[k>>0]|0;if(j<<24>>24==13){h=c[T+(b[k+2>>1]<<2)>>2]|0;f=m+2|0;j=a[o+(f<<2)>>0]|0;if(j<<24>>24==11)do{f=(c[o+(f+1<<2)>>2]|0)+f|0;j=a[o+(f<<2)>>0]|0}while(j<<24>>24==11);j=j<<24>>24==8?11:12;a[k>>0]=j;if((m|0)>-1)c[o+(m+1<<2)>>2]=h-m}switch(j<<24>>24){case 6:case 2:{j=9;break}case 5:{j=10;break}case 16:case 15:case 14:case 13:case 12:case 11:case 10:case 3:case 4:{j=2;break}default:j=1}m=j+m|0;if((m|0)>=(n|0))break j}}while(0);l=U;return}case 220:{T=KB(e,13)|0;b[(c[c[e>>2]>>2]|0)+(T<<2)+2>>1]=d[R+(c[R+4>>2]<<3)+1>>0]|0;l=U;return}case 228:{l=U;return}}}function HB(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+64|0;k=m+32|0;g=m;j=e;a:while(1){h=b;b:while(1){switch(a[h>>0]|0){case 14:break a;case 8:{i=22;break a}case 9:{i=20;break a}case 3:{i=8;break a}case 4:{i=4;break a}case 7:{i=9;break a}case 5:{i=15;break a}case 16:{i=18;break a}case 1:{i=7;break a}case 0:{i=6;break a}case 2:{i=5;break a}case 6:break b;case 12:case 13:case 15:{b=1;break}case 10:{b=c[h+4>>2]|0;break}default:{b=0;i=28;break a}}h=h+(b<<3)|0}b=h+8|0;if(DB(b,0)|0){i=13;break}else j=286876}c:switch(i|0){case 4:{b=f;e=b+32|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(e|0));f=0;l=m;return f|0}case 5:{b=f;e=b+32|0;do{a[b>>0]=255;b=b+1|0}while((b|0)<(e|0));f=0;l=m;return f|0}case 6:{b=f;e=b+32|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(e|0));k=c[h+4>>2]|0;f=f+(k>>3)|0;a[f>>0]=d[f>>0]|1<<(k&7);f=0;l=m;return f|0}case 7:{k=h+8|0;a[f>>0]=a[k>>0]|0;a[f+1>>0]=a[k+1>>0]|0;a[f+2>>0]=a[k+2>>0]|0;a[f+3>>0]=a[k+3>>0]|0;a[f+4>>0]=a[k+4>>0]|0;a[f+5>>0]=a[k+5>>0]|0;a[f+6>>0]=a[k+6>>0]|0;a[f+7>>0]=a[k+7>>0]|0;a[f+8>>0]=a[k+8>>0]|0;a[f+9>>0]=a[k+9>>0]|0;a[f+10>>0]=a[k+10>>0]|0;a[f+11>>0]=a[k+11>>0]|0;a[f+12>>0]=a[k+12>>0]|0;a[f+13>>0]=a[k+13>>0]|0;a[f+14>>0]=a[k+14>>0]|0;a[f+15>>0]=a[k+15>>0]|0;a[f+16>>0]=a[k+16>>0]|0;a[f+17>>0]=a[k+17>>0]|0;a[f+18>>0]=a[k+18>>0]|0;a[f+19>>0]=a[k+19>>0]|0;a[f+20>>0]=a[k+20>>0]|0;a[f+21>>0]=a[k+21>>0]|0;a[f+22>>0]=a[k+22>>0]|0;a[f+23>>0]=a[k+23>>0]|0;a[f+24>>0]=a[k+24>>0]|0;a[f+25>>0]=a[k+25>>0]|0;a[f+26>>0]=a[k+26>>0]|0;a[f+27>>0]=a[k+27>>0]|0;a[f+28>>0]=a[k+28>>0]|0;a[f+29>>0]=a[k+29>>0]|0;a[f+30>>0]=a[k+30>>0]|0;a[f+31>>0]=a[k+31>>0]|0;f=0;l=m;return f|0}case 8:{a[f>>0]=a[j>>0]|0;a[f+1>>0]=a[j+1>>0]|0;a[f+2>>0]=a[j+2>>0]|0;a[f+3>>0]=a[j+3>>0]|0;a[f+4>>0]=a[j+4>>0]|0;a[f+5>>0]=a[j+5>>0]|0;a[f+6>>0]=a[j+6>>0]|0;a[f+7>>0]=a[j+7>>0]|0;a[f+8>>0]=a[j+8>>0]|0;a[f+9>>0]=a[j+9>>0]|0;a[f+10>>0]=a[j+10>>0]|0;a[f+11>>0]=a[j+11>>0]|0;a[f+12>>0]=a[j+12>>0]|0;a[f+13>>0]=a[j+13>>0]|0;a[f+14>>0]=a[j+14>>0]|0;a[f+15>>0]=a[j+15>>0]|0;a[f+16>>0]=a[j+16>>0]|0;a[f+17>>0]=a[j+17>>0]|0;a[f+18>>0]=a[j+18>>0]|0;a[f+19>>0]=a[j+19>>0]|0;a[f+20>>0]=a[j+20>>0]|0;a[f+21>>0]=a[j+21>>0]|0;a[f+22>>0]=a[j+22>>0]|0;a[f+23>>0]=a[j+23>>0]|0;a[f+24>>0]=a[j+24>>0]|0;a[f+25>>0]=a[j+25>>0]|0;a[f+26>>0]=a[j+26>>0]|0;a[f+27>>0]=a[j+27>>0]|0;a[f+28>>0]=a[j+28>>0]|0;a[f+29>>0]=a[j+29>>0]|0;a[f+30>>0]=a[j+30>>0]|0;a[f+31>>0]=a[j+31>>0]|0;f=1;l=m;return f|0}case 9:{g=HB(h+8|0,j,f)|0;b=HB(h+(c[h+4>>2]<<3)|0,j,k)|0;e=0;do{j=f+e|0;a[j>>0]=a[j>>0]|a[k+e>>0];e=e+1|0}while((e|0)!=32);f=b|g;l=m;return f|0}case 13:{e=HB(h+(c[h+4>>2]<<3)|0,j,g)|0;b=HB(b,g,f)|0;if(!b){f=0;l=m;return f|0}f=((b|e)&2|0)==0?e:2;l=m;return f|0}case 15:{HB(h+8|0,j,f)|0;b=0;do{k=f+b|0;a[k>>0]=a[k>>0]|a[j+b>>0];b=b+1|0}while((b|0)!=32);b=1;l=m;return b|0}case 18:{f=(HB(h+8|0,286876,f)|0)==0;f=f?0:2;l=m;return f|0}case 20:{b=HB(h+8|0,j,f)|0;e=0;do{k=f+e|0;a[k>>0]=a[k>>0]&a[j+e>>0];e=e+1|0}while((e|0)!=32);l=m;return b|0}case 22:{switch(a[h+8>>0]|0){case 1:{k=h+16|0;a[f>>0]=a[k>>0]|0;a[f+1>>0]=a[k+1>>0]|0;a[f+2>>0]=a[k+2>>0]|0;a[f+3>>0]=a[k+3>>0]|0;a[f+4>>0]=a[k+4>>0]|0;a[f+5>>0]=a[k+5>>0]|0;a[f+6>>0]=a[k+6>>0]|0;a[f+7>>0]=a[k+7>>0]|0;a[f+8>>0]=a[k+8>>0]|0;a[f+9>>0]=a[k+9>>0]|0;a[f+10>>0]=a[k+10>>0]|0;a[f+11>>0]=a[k+11>>0]|0;a[f+12>>0]=a[k+12>>0]|0;a[f+13>>0]=a[k+13>>0]|0;a[f+14>>0]=a[k+14>>0]|0;a[f+15>>0]=a[k+15>>0]|0;a[f+16>>0]=a[k+16>>0]|0;a[f+17>>0]=a[k+17>>0]|0;a[f+18>>0]=a[k+18>>0]|0;a[f+19>>0]=a[k+19>>0]|0;a[f+20>>0]=a[k+20>>0]|0;a[f+21>>0]=a[k+21>>0]|0;a[f+22>>0]=a[k+22>>0]|0;a[f+23>>0]=a[k+23>>0]|0;a[f+24>>0]=a[k+24>>0]|0;a[f+25>>0]=a[k+25>>0]|0;a[f+26>>0]=a[k+26>>0]|0;a[f+27>>0]=a[k+27>>0]|0;a[f+28>>0]=a[k+28>>0]|0;a[f+29>>0]=a[k+29>>0]|0;a[f+30>>0]=a[k+30>>0]|0;a[f+31>>0]=a[k+31>>0]|0;break}case 0:{b=f;e=b+32|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(e|0));j=c[h+12>>2]|0;k=f+(j>>3)|0;a[k>>0]=d[k>>0]|1<<(j&7);break}case 2:{b=f;e=b+32|0;do{a[b>>0]=255;b=b+1|0}while((b|0)<(e|0));break}default:break c}a[f>>0]=~a[f>>0];k=f+1|0;a[k>>0]=~a[k>>0];k=f+2|0;a[k>>0]=~a[k>>0];k=f+3|0;a[k>>0]=~a[k>>0];k=f+4|0;a[k>>0]=~a[k>>0];k=f+5|0;a[k>>0]=~a[k>>0];k=f+6|0;a[k>>0]=~a[k>>0];k=f+7|0;a[k>>0]=~a[k>>0];k=f+8|0;a[k>>0]=~a[k>>0];k=f+9|0;a[k>>0]=~a[k>>0];k=f+10|0;a[k>>0]=~a[k>>0];k=f+11|0;a[k>>0]=~a[k>>0];k=f+12|0;a[k>>0]=~a[k>>0];k=f+13|0;a[k>>0]=~a[k>>0];k=f+14|0;a[k>>0]=~a[k>>0];k=f+15|0;a[k>>0]=~a[k>>0];k=f+16|0;a[k>>0]=~a[k>>0];k=f+17|0;a[k>>0]=~a[k>>0];k=f+18|0;a[k>>0]=~a[k>>0];k=f+19|0;a[k>>0]=~a[k>>0];k=f+20|0;a[k>>0]=~a[k>>0];k=f+21|0;a[k>>0]=~a[k>>0];k=f+22|0;a[k>>0]=~a[k>>0];k=f+23|0;a[k>>0]=~a[k>>0];k=f+24|0;a[k>>0]=~a[k>>0];k=f+25|0;a[k>>0]=~a[k>>0];k=f+26|0;a[k>>0]=~a[k>>0];k=f+27|0;a[k>>0]=~a[k>>0];k=f+28|0;a[k>>0]=~a[k>>0];k=f+29|0;a[k>>0]=~a[k>>0];k=f+30|0;a[k>>0]=~a[k>>0];f=f+31|0;a[f>>0]=~a[f>>0];f=1;l=m;return f|0}case 28:{l=m;return b|0}}k=HB(h+8|0,j,f)|0;a[f>>0]=a[j>>0]|0;a[f+1>>0]=a[j+1>>0]|0;a[f+2>>0]=a[j+2>>0]|0;a[f+3>>0]=a[j+3>>0]|0;a[f+4>>0]=a[j+4>>0]|0;a[f+5>>0]=a[j+5>>0]|0;a[f+6>>0]=a[j+6>>0]|0;a[f+7>>0]=a[j+7>>0]|0;a[f+8>>0]=a[j+8>>0]|0;a[f+9>>0]=a[j+9>>0]|0;a[f+10>>0]=a[j+10>>0]|0;a[f+11>>0]=a[j+11>>0]|0;a[f+12>>0]=a[j+12>>0]|0;a[f+13>>0]=a[j+13>>0]|0;a[f+14>>0]=a[j+14>>0]|0;a[f+15>>0]=a[j+15>>0]|0;a[f+16>>0]=a[j+16>>0]|0;a[f+17>>0]=a[j+17>>0]|0;a[f+18>>0]=a[j+18>>0]|0;a[f+19>>0]=a[j+19>>0]|0;a[f+20>>0]=a[j+20>>0]|0;a[f+21>>0]=a[j+21>>0]|0;a[f+22>>0]=a[j+22>>0]|0;a[f+23>>0]=a[j+23>>0]|0;a[f+24>>0]=a[j+24>>0]|0;a[f+25>>0]=a[j+25>>0]|0;a[f+26>>0]=a[j+26>>0]|0;a[f+27>>0]=a[j+27>>0]|0;a[f+28>>0]=a[j+28>>0]|0;a[f+29>>0]=a[j+29>>0]|0;a[f+30>>0]=a[j+30>>0]|0;a[f+31>>0]=a[j+31>>0]|0;f=k|1;l=m;return f|0}function IB(b){b=b|0;var d=0,e=0;a:while(1){switch(a[b>>0]|0){case 4:case 2:case 1:case 0:{b=1;break a}case 7:{if(!(IB(b+8|0)|0)){b=0;break a}d=c[b+4>>2]|0;break}case 6:{if(!(DB(b+(c[b+4>>2]<<3)|0,1)|0)){b=0;break a}else d=1;break}case 10:{d=c[b+4>>2]|0;break}case 13:case 15:case 12:case 9:{d=1;break}default:{b=0;e=9;break a}}b=b+(d<<3)|0}if((e|0)==9)return b|0;e=b;return e|0}function JB(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+16|0;q=r;if(!f){h=-1;g=0;i=0}else{e=-1;l=r;return e|0}a:while(1){p=a[e+i>>0]|0;f=p&255;switch(p<<24>>24){case 0:{if((g|0)>1)break a;else f=h;break}case -1:{if((g|0)<(i<<3|0))break a;f=h;g=g+8|0;break}default:{if((g|0)>0|(f+255&f|0)!=0)break a;f=i;g=g+1|0}}i=i+1|0;if((i|0)>=32){j=9;break}else h=f}if((j|0)==9)switch(g|0){case 0:{e=KB(b,11)|0;l=r;return e|0}case 1:{o=d[e+f>>0]|0;q=f<<3;p=(o&240|0)==0;q=p?q:q|4;o=p?o:o>>>4;p=(o&12|0)==0;e=KB(b,4)|0;a[(c[c[b>>2]>>2]|0)+(e<<2)+1>>0]=(p?o:o>>>2)>>>1&1|(p?q:q|2);l=r;return e|0}default:{e=KB(b,3)|0;l=r;return e|0}}f=KB(b,5)|0;m=b+4|0;p=c[m>>2]|0;n=b+8|0;g=p;o=0;do{i=c[b>>2]|0;j=i+4|0;k=c[j>>2]|0;if((g|0)>=(k|0)){g=c[n>>2]|0;h=c[g+12>>2]|0;h=jg[c[h>>2]&31](c[h+4>>2]|0,c[i>>2]|0,k<<2,k<<3)|0;if((k|0)>0&(h|0)==0)Wx(g,286858,q);c[i>>2]=h;c[j>>2]=k<<1;g=c[m>>2]|0}g=g+1|0;c[m>>2]=g;o=o+1|0}while((o|0)!=8);g=0;do{a[(c[c[b>>2]>>2]|0)+(p<<2)+g>>0]=a[e+g>>0]|0;g=g+1|0}while((g|0)!=32);l=r;return f|0}function KB(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n+8|0;i=n;j=c[b>>2]|0;g=j+4|0;h=c[g>>2]|0;k=b+4|0;e=c[k>>2]|0;if((e|0)<(h|0))i=e;else{f=c[b+8>>2]|0;e=c[f+12>>2]|0;e=jg[c[e>>2]&31](c[e+4>>2]|0,c[j>>2]|0,h<<2,h<<3)|0;if((h|0)>0&(e|0)==0)Wx(f,286858,i);c[j>>2]=e;c[g>>2]=h<<1;h=c[b>>2]|0;i=c[k>>2]|0;j=h;h=c[h+4>>2]|0}e=i+1|0;c[k>>2]=e;g=c[j>>2]|0;f=g+(i<<2)|0;a[f>>0]=d;a[f+1>>0]=0;if((e|0)<(h|0)){m=e;b=g;d=m+1|0;c[k>>2]=d;m=b+(m<<2)|0;a[m>>0]=0;m=m+1|0;a[m>>0]=0;l=n;return i|0}f=c[b+8>>2]|0;e=c[f+12>>2]|0;e=jg[c[e>>2]&31](c[e+4>>2]|0,g,h<<2,h<<3)|0;if((h|0)>0&(e|0)==0)Wx(f,286858,m);c[j>>2]=e;c[j+4>>2]=h<<1;m=c[k>>2]|0;b=c[c[b>>2]>>2]|0;d=m+1|0;c[k>>2]=d;m=b+(m<<2)|0;a[m>>0]=0;m=m+1|0;a[m>>0]=0;l=n;return i|0}function LB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=c[a>>2]|0;n=a+24|0;d=c[n>>2]|0;q=a+16|0;l=c[q>>2]|0;do if((d|0)!=-1){m=c[p+48>>2]|0;while(1){i=m+(d<<2)|0;h=c[i>>2]|0;g=(h>>>14)+-131071|0;f=d;d=(g|0)==-1?-1:d+1+g|0;if((f|0)>0?(j=m+(f+-1<<2)|0,k=c[j>>2]|0,((k&63)+-31|0)>>>0<5):0){e=j;g=k}else{e=i;g=h}if((g&63|0)==35){c[e>>2]=g&8372224|g>>>23<<6|34;e=l+~f|0;if((((e|0)>-1?e:0-e|0)|0)>131071){d=8;break}f=c[i>>2]&16383;e=(e<<14)+2147467264|0}else{e=l+~f|0;if((((e|0)>-1?e:0-e|0)|0)>131071){d=11;break}f=(e<<14)+2147467264|0;e=h&16383}c[i>>2]=f|e;if((d|0)==-1){d=14;break}}if((d|0)==8)$B(c[a+8>>2]|0,286908);else if((d|0)==11)$B(c[a+8>>2]|0,286908);else if((d|0)==14){o=c[q>>2]|0;break}}else o=l;while(0);c[n>>2]=-1;d=p+20|0;if((o|0)<(c[d>>2]|0)){f=a+8|0;e=c[p+48>>2]|0;d=o}else{f=a+8|0;o=p+48|0;e=Uw(c[(c[f>>2]|0)+52>>2]|0,c[o>>2]|0,d,4,2147483647,286935)|0;c[o>>2]=e;d=c[q>>2]|0}c[e+(d<<2)>>2]=b;d=c[q>>2]|0;e=p+24|0;if((d|0)<(c[e>>2]|0)){o=p+56|0;p=d;b=c[f>>2]|0;b=b+8|0;b=c[b>>2]|0;o=c[o>>2]|0;p=o+(p<<2)|0;c[p>>2]=b;p=c[q>>2]|0;b=p+1|0;c[q>>2]=b;return p|0}else{o=p+56|0;c[o>>2]=Uw(c[(c[f>>2]|0)+52>>2]|0,c[o>>2]|0,e,4,2147483647,286935)|0;p=c[q>>2]|0;b=c[f>>2]|0;b=b+8|0;b=c[b>>2]|0;o=c[o>>2]|0;p=o+(p<<2)|0;c[p>>2]=b;p=c[q>>2]|0;b=p+1|0;c[q>>2]=b;return p|0}return 0}function MB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;if((c[a+16>>2]|0)==(d|0)){c[a+20>>2]=d;e=a+24|0;if((b|0)==-1)return;f=c[e>>2]|0;if((f|0)==-1){c[e>>2]=b;return}i=c[(c[a>>2]|0)+48>>2]|0;while(1){g=i+(f<<2)|0;h=c[g>>2]|0;e=(h>>>14)+-131071|0;e=(e|0)==-1?-1:f+1+e|0;if((e|0)==-1)break;else f=e}e=~f+b|0;if((((e|0)>-1?e:0-e|0)|0)>131071)$B(c[a+8>>2]|0,286908);c[g>>2]=(e<<14)+2147467264|h&16383;return}if((b|0)==-1)return;l=c[(c[a>>2]|0)+48>>2]|0;while(1){i=l+(b<<2)|0;f=c[i>>2]|0;h=(f>>>14)+-131071|0;g=b;b=(h|0)==-1?-1:b+1+h|0;if((g|0)>0?(j=l+(g+-1<<2)|0,k=c[j>>2]|0,((k&63)+-31|0)>>>0<5):0){e=j;h=k}else{e=i;h=f}if((h&63|0)!=35){e=~g+d|0;if((((e|0)>-1?e:0-e|0)|0)>131071){e=20;break}}else{c[e>>2]=h&8372224|h>>>23<<6|34;e=~g+d|0;if((((e|0)>-1?e:0-e|0)|0)>131071){e=17;break}f=c[i>>2]|0}c[i>>2]=f&16383|(e<<14)+2147467264;if((b|0)==-1){e=22;break}}if((e|0)==17)$B(c[a+8>>2]|0,286908);else if((e|0)==20)$B(c[a+8>>2]|0,286908);else if((e|0)==22)return}function NB(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;g=c[b+8>>2]|0;m=c[g+52>>2]|0;l=c[b>>2]|0;g=c[g+64>>2]|0;h=Cx(g,e)|0;if((h|0)==316344)h=Bx(m,g,e)|0;j=h+8|0;if((c[j>>2]|0)==19){e=c[h>>2]|0;g=b+28|0;if(((e|0)<(c[g>>2]|0)?(i=c[l+44>>2]|0,((c[f+8>>2]^c[i+(e<<4)+8>>2])&63|0)==0):0)?(Ox(0,i+(e<<4)|0,f)|0)!=0:0){m=e;return m|0}}else g=b+28|0;e=l+16|0;i=c[e>>2]|0;k=c[g>>2]|0;c[h>>2]=k;c[h+4>>2]=((k|0)<0)<<31>>31;c[j>>2]=19;h=l+44|0;if((k|0)<(i|0)){b=i;e=c[h>>2]|0}else{j=Uw(m,c[h>>2]|0,e,16,67108863,286991)|0;c[h>>2]=j;b=c[e>>2]|0;e=j}if((i|0)<(b|0)){h=i;do{c[e+(h<<4)+8>>2]=0;h=h+1|0}while((h|0)!=(b|0))}j=e+(k<<4)|0;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];c[j+8>>2]=c[f+8>>2];c[j+12>>2]=c[f+12>>2];c[g>>2]=(c[g>>2]|0)+1;if(!(c[f+8>>2]&64)){m=k;return m|0}e=l+5|0;b=a[e>>0]|0;if(!(b&4)){m=k;return m|0}h=c[f>>2]|0;if(!(a[h+5>>0]&3)){m=k;return m|0}g=c[m+12>>2]|0;if((d[g+61>>0]|0)<2){Iw(g,h);m=k;return m|0}else{a[e>>0]=a[g+60>>0]&3|b&-8;m=k;return m|0}return 0}function OB(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0;switch(c[f>>2]|0){case 8:{c[f>>2]=7;return}case 9:{j=f+8|0;c[j>>2]=LB(e,c[j>>2]<<23|5)|0;c[f>>2]=12;return}case 10:{h=f+8|0;i=b[h>>1]|0;if((i&256|0)==0?(d[e+42>>0]|0)<=(i|0):0){j=e+44|0;a[j>>0]=(a[j>>0]|0)+-1<<24>>24}g=a[h+2>>0]|0;if((a[h+3>>0]|0)==8)if((d[e+42>>0]|0)>(g&255))j=7;else{j=e+44|0;a[j>>0]=(a[j>>0]|0)+-1<<24>>24;j=7}else j=6;c[h>>2]=LB(e,(g&255)<<23|j|i<<14)|0;c[f>>2]=12;return}case 13:{c[f>>2]=7;j=f+8|0;c[j>>2]=(c[(c[(c[e>>2]|0)+48>>2]|0)+(c[j>>2]<<2)>>2]|0)>>>6&255;return}case 14:{j=(c[(c[e>>2]|0)+48>>2]|0)+(c[f+8>>2]<<2)|0;c[j>>2]=c[j>>2]&8388607|16777216;c[f>>2]=12;return}default:return}}function PB(b,e){b=b|0;e=e|0;var f=0,g=0,h=0;OB(b,e);if(((c[e>>2]|0)==7?(f=c[e+8>>2]|0,(f&256|0)==0):0)?(d[b+42>>0]|0|0)<=(f|0):0){h=b+44|0;a[h>>0]=(a[h>>0]|0)+-1<<24>>24}f=b+44|0;g=(d[f>>0]|0)+1|0;h=(c[b>>2]|0)+8|0;if(g>>>0<=(d[h>>0]|0)>>>0){h=g&255;a[f>>0]=h;h=h&255;h=h+-1|0;QB(b,e,h);return}if(g>>>0>254)$B(c[b+8>>2]|0,286943);g=g&255;a[h>>0]=g;h=g;a[f>>0]=h;h=h&255;h=h+-1|0;QB(b,e,h);return}function QB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;RB(a,b,d);o=(c[b>>2]|0)==11;x=b+16|0;do if(o?(h=c[b+8>>2]|0,(h|0)!=-1):0){e=c[x>>2]|0;if((e|0)==-1){c[x>>2]=h;f=h;break}k=c[(c[a>>2]|0)+48>>2]|0;while(1){i=k+(e<<2)|0;j=c[i>>2]|0;g=(j>>>14)+-131071|0;g=(g|0)==-1?-1:e+1+g|0;if((g|0)==-1)break;else e=g}e=h+~e|0;if((((e|0)>-1?e:0-e|0)|0)>131071)$B(c[a+8>>2]|0,286908);else{c[i>>2]=(e<<14)+2147467264|j&16383;n=10;break}}else n=10;while(0);if((n|0)==10)f=c[x>>2]|0;v=b+20|0;e=c[v>>2]|0;if((f|0)==(e|0)){c[x>>2]=-1;c[v>>2]=-1;A=b+8|0;c[A>>2]=d;c[b>>2]=7;return}a:do if((f|0)==-1)n=19;else{i=c[(c[a>>2]|0)+48>>2]|0;while(1){g=i+(f<<2)|0;if((f|0)>0?(l=c[i+(f+-1<<2)>>2]|0,((l&63)+-31|0)>>>0<5):0)h=l;else h=c[g>>2]|0;if((h&63|0)!=35){n=26;break a}n=((c[g>>2]|0)>>>14)+-131071|0;f=(n|0)==-1?-1:f+1+n|0;if((f|0)==-1){n=19;break}}}while(0);b:do if((n|0)==19)if((e|0)==-1){s=-1;A=-1}else{h=c[(c[a>>2]|0)+48>>2]|0;while(1){f=h+(e<<2)|0;if((e|0)>0?(m=c[h+(e+-1<<2)>>2]|0,((m&63)+-31|0)>>>0<5):0)g=m;else g=c[f>>2]|0;if((g&63|0)!=35){n=26;break b}l=((c[f>>2]|0)>>>14)+-131071|0;e=(l|0)==-1?-1:e+1+l|0;if((e|0)==-1){s=-1;A=-1;break}}}while(0);do if((n|0)==26){l=a+24|0;do if(!o){f=c[l>>2]|0;c[l>>2]=-1;i=LB(a,2147450910)|0;if((f|0)!=-1)if((i|0)!=-1){g=c[(c[a>>2]|0)+48>>2]|0;h=i;while(1){j=g+(h<<2)|0;k=c[j>>2]|0;e=(k>>>14)+-131071|0;e=(e|0)==-1?-1:h+1+e|0;if((e|0)==-1)break;else h=e}e=f+~h|0;if((((e|0)>-1?e:0-e|0)|0)>131071)$B(c[a+8>>2]|0,286908);else{c[j>>2]=(e<<14)+2147467264|k&16383;p=i;break}}else p=f;else p=i}else p=-1;while(0);n=a+16|0;o=a+20|0;c[o>>2]=c[n>>2];k=d<<6;j=LB(a,k|16387)|0;c[o>>2]=c[n>>2];k=LB(a,k|8388611)|0;c[o>>2]=c[n>>2];if((p|0)!=-1){e=c[l>>2]|0;if((e|0)==-1){c[l>>2]=p;s=j;A=k;break}i=c[(c[a>>2]|0)+48>>2]|0;while(1){g=i+(e<<2)|0;h=c[g>>2]|0;f=(h>>>14)+-131071|0;f=(f|0)==-1?-1:e+1+f|0;if((f|0)==-1)break;else e=f}e=p+~e|0;if((((e|0)>-1?e:0-e|0)|0)>131071)$B(c[a+8>>2]|0,286908);else{c[g>>2]=(e<<14)+2147467264|h&16383;s=j;A=k;break}}else{s=j;A=k}}while(0);o=c[a+16>>2]|0;c[a+20>>2]=o;e=c[v>>2]|0;c:do if((e|0)!=-1){l=(d|0)==255;m=d<<6&16320;n=c[(c[a>>2]|0)+48>>2]|0;while(1){k=n+(e<<2)|0;g=c[k>>2]|0;p=(g>>>14)+-131071|0;j=e;e=(p|0)==-1?-1:e+1+p|0;if((j|0)>0?(q=n+(j+-1<<2)|0,r=c[q>>2]|0,((r&63)+-31|0)>>>0<5):0){i=q;h=r}else{i=k;h=g}if((h&63|0)!=35){f=s+~j|0;if((((f|0)>-1?f:0-f|0)|0)>131071){n=55;break}}else{f=h>>>23;if(l|(f|0)==(d|0))f=h&8372224|f<<6|34;else f=h&-16321|m;c[i>>2]=f;f=o+~j|0;if((((f|0)>-1?f:0-f|0)|0)>131071){n=52;break}g=c[k>>2]|0}c[k>>2]=g&16383|(f<<14)+2147467264;if((e|0)==-1)break c}if((n|0)==52)$B(c[a+8>>2]|0,286908);else if((n|0)==55)$B(c[a+8>>2]|0,286908)}while(0);e=c[x>>2]|0;if((e|0)==-1){c[x>>2]=-1;c[v>>2]=-1;A=b+8|0;c[A>>2]=d;c[b>>2]=7;return}k=d<<6;l=k&16320;m=c[(c[a>>2]|0)+48>>2]|0;if((d|0)==255){while(1){j=m+(e<<2)|0;g=c[j>>2]|0;s=(g>>>14)+-131071|0;h=e;e=(s|0)==-1?-1:e+1+s|0;if((h|0)>0?(t=m+(h+-1<<2)|0,u=c[t>>2]|0,((u&63)+-31|0)>>>0<5):0){f=t;i=u}else{f=j;i=g}if((i&63|0)!=35){f=A+~h|0;if((((f|0)>-1?f:0-f|0)|0)>131071){n=78;break}}else{c[f>>2]=i&8372224|i>>>23<<6|34;f=o+~h|0;if((((f|0)>-1?f:0-f|0)|0)>131071){n=75;break}g=c[j>>2]|0}c[j>>2]=g&16383|(f<<14)+2147467264;if((e|0)==-1){n=80;break}}if((n|0)==75){u=a+8|0;u=c[u>>2]|0;$B(u,286908)}else if((n|0)==78){u=a+8|0;u=c[u>>2]|0;$B(u,286908)}else if((n|0)==80){c[x>>2]=-1;c[v>>2]=-1;A=b+8|0;c[A>>2]=d;c[b>>2]=7;return}}else w=e;while(1){i=m+(w<<2)|0;f=c[i>>2]|0;u=(f>>>14)+-131071|0;h=w;w=(u|0)==-1?-1:w+1+u|0;if((h|0)>0?(y=m+(h+-1<<2)|0,z=c[y>>2]|0,((z&63)+-31|0)>>>0<5):0){g=y;e=z}else{g=i;e=f}if((e&63|0)!=35){e=A+~h|0;if((((e|0)>-1?e:0-e|0)|0)>131071){n=78;break}}else{if((e>>>23|0)==(d|0))e=e&8372224|k|34;else e=e&-16321|l;c[g>>2]=e;e=o+~h|0;if((((e|0)>-1?e:0-e|0)|0)>131071){n=75;break}f=c[i>>2]|0}c[i>>2]=f&16383|(e<<14)+2147467264;if((w|0)==-1){n=80;break}}if((n|0)==75){d=a+8|0;d=c[d>>2]|0;$B(d,286908)}else if((n|0)==78){d=a+8|0;d=c[d>>2]|0;$B(d,286908)}else if((n|0)==80){c[x>>2]=-1;c[v>>2]=-1;A=b+8|0;c[A>>2]=d;c[b>>2]=7;return}}function RB(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0;k=l;l=l+32|0;f=k+16|0;g=k;OB(a,b);e=c[b>>2]|0;a:do switch(e|0){case 1:{g=d+1|0;e=c[a+16>>2]|0;do if((e|0)>(c[a+20>>2]|0)?(i=(c[(c[a>>2]|0)+48>>2]|0)+(e+-1<<2)|0,j=c[i>>2]|0,(j&63|0)==4):0){e=j>>>6&255;f=e+(j>>>23)|0;if((e|0)>(d|0)|(f+1|0)<(d|0)?(e|0)<(d|0)|(e|0)>(g|0):0)break;a=(e|0)<(d|0)?e:d;c[i>>2]=a<<6&16320|j&8372287|((f|0)>(d|0)?f:d)-a<<23;break a}while(0);LB(a,d<<6|4)|0;break}case 2:case 3:{LB(a,d<<6|((e|0)==2&1)<<23|3)|0;break}case 4:{e=c[b+8>>2]|0;f=d<<6;if((e|0)<262144){LB(a,f|e<<14|1)|0;break a}else{LB(a,f|2)|0;LB(a,e<<6|46)|0;break a}}case 5:{h[f>>3]=+h[b+8>>3];c[f+8>>2]=3;e=NB(a,f,f)|0;f=d<<6;if((e|0)<262144){LB(a,f|e<<14|1)|0;break a}else{LB(a,f|2)|0;LB(a,e<<6|46)|0;break a}}case 6:{j=b+8|0;i=c[j>>2]|0;j=c[j+4>>2]|0;c[f>>2]=i;c[f+8>>2]=2;e=g;c[e>>2]=i;c[e+4>>2]=j;c[g+8>>2]=19;e=NB(a,f,g)|0;f=d<<6;if((e|0)<262144){LB(a,f|e<<14|1)|0;break a}else{LB(a,f|2)|0;LB(a,e<<6|46)|0;break a}}case 12:{a=(c[(c[a>>2]|0)+48>>2]|0)+(c[b+8>>2]<<2)|0;c[a>>2]=c[a>>2]&-16321|d<<6&16320;break}case 7:{e=c[b+8>>2]|0;if((e|0)!=(d|0))LB(a,e<<23|d<<6)|0;break}default:{l=k;return}}while(0);c[b+8>>2]=d;c[b>>2]=7;l=k;return}function SB(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;OB(b,e);if((c[e>>2]|0)==7){f=e+8|0;h=c[f>>2]|0;if((c[e+16>>2]|0)==(c[e+20>>2]|0)){b=h;return b|0}if((h|0)>=(d[b+42>>0]|0|0))QB(b,e,h);else i=5}else i=5;if((i|0)==5){OB(b,e);if(((c[e>>2]|0)==7?(g=c[e+8>>2]|0,(g&256|0)==0):0)?(d[b+42>>0]|0|0)<=(g|0):0){i=b+44|0;a[i>>0]=(a[i>>0]|0)+-1<<24>>24}f=b+44|0;g=(d[f>>0]|0)+1|0;h=(c[b>>2]|0)+8|0;do if(g>>>0>(d[h>>0]|0)>>>0)if(g>>>0>254)$B(c[b+8>>2]|0,286943);else{j=g&255;a[h>>0]=j;break}else j=g&255;while(0);a[f>>0]=j;QB(b,e,(j&255)+-1|0);f=e+8|0}b=c[f>>2]|0;return b|0}function TB(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0;j=l;l=l+32|0;g=j+16|0;f=j;if((c[b+16>>2]|0)==(c[b+20>>2]|0))OB(a,b);else SB(a,b)|0;e=c[b>>2]|0;switch(e|0){case 1:case 3:case 2:{if((c[a+28>>2]|0)<256){if((e|0)==1){c[f+8>>2]=0;c[g>>2]=c[(c[a+8>>2]|0)+64>>2];c[g+8>>2]=69;d=NB(a,g,f)|0}else{c[g>>2]=(e|0)==2&1;c[g+8>>2]=1;d=NB(a,g,g)|0}c[b+8>>2]=d;c[b>>2]=4;b=d|256;l=j;return b|0}break}case 6:{i=b+8|0;e=i;k=c[e>>2]|0;e=c[e+4>>2]|0;c[g>>2]=k;c[g+8>>2]=2;d=f;c[d>>2]=k;c[d+4>>2]=e;c[f+8>>2]=19;d=NB(a,g,f)|0;c[i>>2]=d;c[b>>2]=4;i=13;break}case 5:{i=b+8|0;h[g>>3]=+h[i>>3];c[g+8>>2]=3;d=NB(a,g,g)|0;c[i>>2]=d;c[b>>2]=4;i=13;break}case 4:{d=c[b+8>>2]|0;i=13;break}default:{}}if((i|0)==13?(d|0)<256:0){k=d|256;l=j;return k|0}k=SB(a,b)|0;l=j;return k|0}function UB(b,f,g){b=b|0;f=f|0;g=g|0;var h=0;switch(c[f>>2]|0){case 8:{if(((c[g>>2]|0)==7?(h=c[g+8>>2]|0,(h&256|0)==0):0)?(d[b+42>>0]|0)<=(h|0):0){h=b+44|0;a[h>>0]=(a[h>>0]|0)+-1<<24>>24}QB(b,g,c[f+8>>2]|0);return}case 9:{LB(b,(SB(b,g)|0)<<6|c[f+8>>2]<<23|9)|0;break}case 10:{f=f+8|0;h=(a[f+3>>0]|0)==8?10:8;LB(b,(TB(b,g)|0)<<14|h|d[f+2>>0]<<6|e[f>>1]<<23)|0;break}default:{}}if((c[g>>2]|0)!=7)return;h=c[g+8>>2]|0;if(h&256|0)return;if((d[b+42>>0]|0)>(h|0))return;b=b+44|0;a[b>>0]=(a[b>>0]|0)+-1<<24>>24;return}function VB(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;OB(b,e);h=c[e>>2]|0;a:do switch(h|0){case 11:{i=c[(c[b>>2]|0)+48>>2]|0;k=e+8|0;h=c[k>>2]|0;j=i+(h<<2)|0;if(!((h|0)>0?(g=i+(h+-1<<2)|0,f=c[g>>2]|0,((f&63)+-31|0)>>>0<5):0)){g=j;f=c[j>>2]|0}c[g>>2]=((f&16320|0)==0&1)<<6|f&-16321;n=c[k>>2]|0;o=33;break}case 2:case 6:case 5:case 4:break;default:{i=e+8|0;switch(h|0){case 12:{f=c[b>>2]|0;g=c[(c[f+48>>2]|0)+(c[i>>2]<<2)>>2]|0;if((g&63|0)==27){i=b+16|0;c[i>>2]=(c[i>>2]|0)+-1;LB(b,g>>>23<<6|16418)|0;i=b+24|0;k=c[i>>2]|0;c[i>>2]=-1;i=LB(b,2147450910)|0;if((k|0)==-1){n=i;o=33;break a}if((i|0)==-1){o=34;break a}g=c[(c[b>>2]|0)+48>>2]|0;h=i;while(1){j=g+(h<<2)|0;l=c[j>>2]|0;f=(l>>>14)+-131071|0;f=(f|0)==-1?-1:h+1+f|0;if((f|0)==-1)break;else h=f}f=k+~h|0;if((((f|0)>-1?f:0-f|0)|0)>131071)$B(c[b+8>>2]|0,286908);else{c[j>>2]=(f<<14)+2147467264|l&16383;n=i;o=33;break a}}else o=16;break}case 7:{o=23;break}default:{f=c[b>>2]|0;o=16}}if((o|0)==16){g=b+44|0;h=(d[g>>0]|0)+1|0;f=f+8|0;do if(h>>>0>(d[f>>0]|0)>>>0)if(h>>>0>254)$B(c[b+8>>2]|0,286943);else{j=h&255;a[f>>0]=j;break}else j=h&255;while(0);a[g>>0]=j;RB(b,e,(j&255)+-1|0);if((c[e>>2]|0)==7)o=23;else m=c[i>>2]|0}if((o|0)==23){f=c[i>>2]|0;if((f&256|0)==0?(d[b+42>>0]|0|0)<=(f|0):0){m=b+44|0;a[m>>0]=(a[m>>0]|0)+-1<<24>>24;m=f}else m=f}LB(b,m<<23|16355)|0;j=b+24|0;g=c[j>>2]|0;c[j>>2]=-1;j=LB(b,2147450910)|0;if((g|0)!=-1)if((j|0)!=-1){h=c[(c[b>>2]|0)+48>>2]|0;i=j;while(1){k=h+(i<<2)|0;l=c[k>>2]|0;f=(l>>>14)+-131071|0;f=(f|0)==-1?-1:i+1+f|0;if((f|0)==-1)break;else i=f}f=g+~i|0;if((((f|0)>-1?f:0-f|0)|0)>131071)$B(c[b+8>>2]|0,286908);else{c[k>>2]=(f<<14)+2147467264|l&16383;n=j;o=33;break a}}else{k=g;o=34}else{n=j;o=33}}}while(0);if((o|0)==33?(n|0)!=-1:0){k=n;o=34}do if((o|0)==34){f=e+20|0;g=c[f>>2]|0;if((g|0)==-1){c[f>>2]=k;break}j=c[(c[b>>2]|0)+48>>2]|0;while(1){h=j+(g<<2)|0;i=c[h>>2]|0;f=(i>>>14)+-131071|0;f=(f|0)==-1?-1:g+1+f|0;if((f|0)==-1)break;else g=f}f=k+~g|0;if((((f|0)>-1?f:0-f|0)|0)>131071)$B(c[b+8>>2]|0,286908);else{c[h>>2]=(f<<14)+2147467264|i&16383;break}}while(0);l=e+16|0;k=c[l>>2]|0;c[b+20>>2]=c[b+16>>2];f=b+24|0;if((k|0)==-1){c[l>>2]=-1;return}g=c[f>>2]|0;if((g|0)==-1){c[f>>2]=k;c[l>>2]=-1;return}j=c[(c[b>>2]|0)+48>>2]|0;while(1){h=j+(g<<2)|0;i=c[h>>2]|0;f=(i>>>14)+-131071|0;f=(f|0)==-1?-1:g+1+f|0;if((f|0)==-1)break;else g=f}f=k+~g|0;if((((f|0)>-1?f:0-f|0)|0)>131071)$B(c[b+8>>2]|0,286908);c[h>>2]=(f<<14)+2147467264|i&16383;c[l>>2]=-1;return}function WB(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;OB(b,e);g=c[e>>2]|0;a:do switch(g|0){case 11:{n=c[e+8>>2]|0;o=30;break}case 3:case 1:break;default:{j=e+8|0;switch(g|0){case 12:{g=c[b>>2]|0;h=c[(c[g+48>>2]|0)+(c[j>>2]<<2)>>2]|0;if((h&63|0)==27){j=b+16|0;c[j>>2]=(c[j>>2]|0)+-1;LB(b,h>>>23<<6|34)|0;j=b+24|0;k=c[j>>2]|0;c[j>>2]=-1;j=LB(b,2147450910)|0;if((k|0)==-1){n=j;o=30;break a}if((j|0)==-1){o=31;break a}h=c[(c[b>>2]|0)+48>>2]|0;i=j;while(1){l=h+(i<<2)|0;m=c[l>>2]|0;g=(m>>>14)+-131071|0;g=(g|0)==-1?-1:i+1+g|0;if((g|0)==-1)break;else i=g}g=k+~i|0;if((((g|0)>-1?g:0-g|0)|0)>131071)$B(c[b+8>>2]|0,286908);else{c[l>>2]=(g<<14)+2147467264|m&16383;n=j;o=30;break a}}else{f=g;o=13}break}case 7:{o=20;break}default:{f=c[b>>2]|0;o=13}}if((o|0)==13){g=b+44|0;h=(d[g>>0]|0)+1|0;f=f+8|0;do if(h>>>0>(d[f>>0]|0)>>>0)if(h>>>0>254)$B(c[b+8>>2]|0,286943);else{i=h&255;a[f>>0]=i;break}else i=h&255;while(0);a[g>>0]=i;RB(b,e,(i&255)+-1|0);if((c[e>>2]|0)==7)o=20;else f=c[j>>2]|0}if((o|0)==20){f=c[j>>2]|0;if((f&256|0)==0?(d[b+42>>0]|0|0)<=(f|0):0){m=b+44|0;a[m>>0]=(a[m>>0]|0)+-1<<24>>24}}LB(b,f<<23|32739)|0;j=b+24|0;g=c[j>>2]|0;c[j>>2]=-1;j=LB(b,2147450910)|0;if((g|0)!=-1)if((j|0)!=-1){h=c[(c[b>>2]|0)+48>>2]|0;i=j;while(1){k=h+(i<<2)|0;l=c[k>>2]|0;f=(l>>>14)+-131071|0;f=(f|0)==-1?-1:i+1+f|0;if((f|0)==-1)break;else i=f}f=g+~i|0;if((((f|0)>-1?f:0-f|0)|0)>131071)$B(c[b+8>>2]|0,286908);else{c[k>>2]=(f<<14)+2147467264|l&16383;n=j;o=30;break a}}else{k=g;o=31}else{n=j;o=30}}}while(0);if((o|0)==30?(n|0)!=-1:0){k=n;o=31}do if((o|0)==31){f=e+16|0;g=c[f>>2]|0;if((g|0)==-1){c[f>>2]=k;break}j=c[(c[b>>2]|0)+48>>2]|0;while(1){h=j+(g<<2)|0;i=c[h>>2]|0;f=(i>>>14)+-131071|0;f=(f|0)==-1?-1:g+1+f|0;if((f|0)==-1)break;else g=f}f=k+~g|0;if((((f|0)>-1?f:0-f|0)|0)>131071)$B(c[b+8>>2]|0,286908);else{c[h>>2]=(f<<14)+2147467264|i&16383;break}}while(0);l=e+20|0;k=c[l>>2]|0;c[b+20>>2]=c[b+16>>2];f=b+24|0;if((k|0)==-1){c[l>>2]=-1;return}g=c[f>>2]|0;if((g|0)==-1){c[f>>2]=k;c[l>>2]=-1;return}j=c[(c[b>>2]|0)+48>>2]|0;while(1){h=j+(g<<2)|0;i=c[h>>2]|0;f=(i>>>14)+-131071|0;f=(f|0)==-1?-1:g+1+f|0;if((f|0)==-1)break;else g=f}f=k+~g|0;if((((f|0)>-1?f:0-f|0)|0)>131071)$B(c[b+8>>2]|0,286908);c[h>>2]=(f<<14)+2147467264|i&16383;c[l>>2]=-1;return}function XB(b,e,f,g,i){b=b|0;e=e|0;f=f|0;g=g|0;i=i|0;var k=0,m=0,n=0,o=0.0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,C=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0.0;J=l;l=l+80|0;u=J+72|0;t=J+64|0;x=J+48|0;y=J+32|0;C=J+16|0;I=J;a:do if(e>>>0<27)b:do if((c[f+16>>2]|0)==-1?(c[f+20>>2]|0)==-1:0){switch(c[f>>2]|0){case 6:{s=f+8|0;w=c[s+4>>2]|0;k=y;c[k>>2]=c[s>>2];c[k+4>>2]=w;k=19;break}case 5:{h[y>>3]=+h[f+8>>3];k=3;break}default:break b}c[y+8>>2]=k;if((c[g+16>>2]|0)==-1?(c[g+20>>2]|0)==-1:0){switch(c[g>>2]|0){case 6:{p=g+8|0;n=c[p>>2]|0;p=c[p+4>>2]|0;m=C;c[m>>2]=n;c[m+4>>2]=p;c[C+8>>2]=19;m=19;break}case 5:{o=+h[g+8>>3];h[C>>3]=o;c[C+8>>2]=3;h[j>>3]=o;m=3;n=c[j>>2]|0;p=c[j+4>>2]|0;break}default:break b}c:do switch(e|0){case 26:case 24:case 23:case 22:case 21:case 20:{do if((k|0)!=19){n=y;d:while(1){switch(k|0){case 3:{v=16;break d}case 19:{v=24;break d}default:{}}if((k&15|0)!=4){v=165;break}m=Ww((c[n>>2]|0)+16|0,x)|0;k=c[n>>2]|0;if((a[k+4>>0]|0)==4)k=d[k+7>>0]|0;else k=c[k+12>>2]|0;if((m|0)!=(k+1|0)){v=165;break}n=x;k=c[x+8>>2]|0}if((v|0)==16){K=+h[n>>3];o=+A(+K);if(!(K!=o)?o>=-9223372036854775808.0&o<9223372036854775808.0:0)v=24;else v=165}if((v|0)==24){k=c[C+8>>2]|0;break}else if((v|0)==165)break b}else k=m;while(0);if((k|0)!=19){n=C;e:while(1){switch(k|0){case 3:{v=29;break e}case 19:{v=37;break e}default:{}}if((k&15|0)!=4){v=167;break}m=Ww((c[n>>2]|0)+16|0,x)|0;k=c[n>>2]|0;if((a[k+4>>0]|0)==4)k=d[k+7>>0]|0;else k=c[k+12>>2]|0;if((m|0)!=(k+1|0)){v=167;break}n=x;k=c[x+8>>2]|0}if((v|0)==29){o=+h[n>>3];K=+A(+o);if(!(o!=K)?K>=-9223372036854775808.0&K<9223372036854775808.0:0)v=37;else v=167}if((v|0)==37)break c;else if((v|0)==167)break a}break}case 16:case 19:case 18:{c[j>>2]=n;c[j+4>>2]=p;if(!(((m|0)==19?+(n>>>0)+4294967296.0*+(p|0):+h[j>>3])!=0.0))break b;break}default:{}}while(0);w=c[(c[b+8>>2]|0)+52>>2]|0;f:do switch(e|0){case 26:case 24:case 23:case 22:case 21:case 20:{k=c[y+8>>2]|0;do if((k|0)!=19){n=y;g:while(1){switch(k|0){case 3:{v=43;break g}case 19:{v=46;break g}default:{}}if((k&15|0)!=4){v=53;break}m=Ww((c[n>>2]|0)+16|0,x)|0;k=c[n>>2]|0;if((a[k+4>>0]|0)==4)k=d[k+7>>0]|0;else k=c[k+12>>2]|0;if((m|0)!=(k+1|0)){v=53;break}n=x;k=c[x+8>>2]|0}if((v|0)==43){K=+h[n>>3];o=+A(+K);if(!(K!=o)?o>=-9223372036854775808.0&o<9223372036854775808.0:0){k=~~o>>>0;m=+B(o)>=1.0?(o>0.0?~~+P(+A(o/4294967296.0),4294967295.0)>>>0:~~+N((o-+(~~o>>>0))/4294967296.0)>>>0):0;v=54}else v=53}else if((v|0)==46){m=n;k=c[m>>2]|0;m=c[m+4>>2]|0;v=54}if((v|0)==53){v=159;break f}else if((v|0)==54){p=k;r=m;break}}else{r=y;p=c[r>>2]|0;r=c[r+4>>2]|0}while(0);k=c[C+8>>2]|0;do if((k|0)!=19){n=C;h:while(1){switch(k|0){case 3:{v=59;break h}case 19:{v=62;break h}default:{}}if((k&15|0)!=4){v=69;break}m=Ww((c[n>>2]|0)+16|0,x)|0;k=c[n>>2]|0;if((a[k+4>>0]|0)==4)k=d[k+7>>0]|0;else k=c[k+12>>2]|0;if((m|0)!=(k+1|0)){v=69;break}n=x;k=c[x+8>>2]|0}if((v|0)==59){K=+h[n>>3];o=+A(+K);if(!(K!=o)?o>=-9223372036854775808.0&o<9223372036854775808.0:0){k=~~o>>>0;n=+B(o)>=1.0?(o>0.0?~~+P(+A(o/4294967296.0),4294967295.0)>>>0:~~+N((o-+(~~o>>>0))/4294967296.0)>>>0):0;v=70}else v=69}else if((v|0)==62){k=c[n>>2]|0;n=c[n+4>>2]|0;v=70}if((v|0)==69){v=159;break f}else if((v|0)==70)break}else{n=C;k=c[n>>2]|0;n=c[n+4>>2]|0}while(0);switch(e|0){case 22:{m=k^p;k=n^r;v=160;break f}case 23:if((n|0)<0){v=(n|0)<-1|(n|0)==-1&k>>>0<4294967233;m=zQ(0,0,k|0,n|0)|0;m=JQ(p|0,r|0,m|0)|0;m=v?0:m;k=v?0:z;v=160;break f}else{v=(n|0)>0|(n|0)==0&k>>>0>63;m=KQ(p|0,r|0,k|0)|0;m=v?0:m;k=v?0:z;v=160;break f}case 24:if((n|0)>0|(n|0)==0&k>>>0>0){v=(n|0)>0|(n|0)==0&k>>>0>63;m=JQ(p|0,r|0,k|0)|0;m=v?0:m;k=v?0:z;v=160;break f}else{m=zQ(0,0,k|0,n|0)|0;k=(n|0)<-1|(n|0)==-1&k>>>0<4294967233;m=KQ(p|0,r|0,m|0)|0;m=k?0:m;k=k?0:z;v=160;break f}case 25:{m=zQ(0,0,p|0,r|0)|0;k=z;v=160;break f}case 26:{m=~p;k=~r;v=160;break f}case 20:{m=k&p;k=n&r;v=160;break f}case 21:{m=k|p;k=n|r;v=160;break f}default:{m=0;k=0;v=160;break f}}}case 17:case 18:{k=c[y+8>>2]|0;if((k|0)==3)q=+h[y>>3];else{do if((k|0)==19){v=y;o=+((c[v>>2]|0)>>>0)+4294967296.0*+(c[v+4>>2]|0)}else{if((k&15|0)==4){m=Ww((c[y>>2]|0)+16|0,x)|0;k=c[y>>2]|0;if((a[k+4>>0]|0)==4)k=d[k+7>>0]|0;else k=c[k+12>>2]|0;if((m|0)==(k+1|0)){t=(c[x+8>>2]|0)==19;v=x;u=c[v>>2]|0;v=c[v+4>>2]|0;c[j>>2]=u;c[j+4>>2]=v;o=t?+(u>>>0)+4294967296.0*+(v|0):+h[j>>3];break}}v=159;break f}while(0);q=o}k=c[C+8>>2]|0;if((k|0)==3)o=+h[C>>3];else do if((k|0)==19)o=+((c[C>>2]|0)>>>0)+4294967296.0*+(c[C+4>>2]|0);else{if((k&15|0)==4){m=Ww((c[C>>2]|0)+16|0,x)|0;k=c[C>>2]|0;if((a[k+4>>0]|0)==4)k=d[k+7>>0]|0;else k=c[k+12>>2]|0;if((m|0)==(k+1|0)){w=(c[x+8>>2]|0)==19;C=x;y=c[C>>2]|0;C=c[C+4>>2]|0;c[j>>2]=y;c[j+4>>2]=C;o=w?+(y>>>0)+4294967296.0*+(C|0):+h[j>>3];break}}v=159;break f}while(0);switch(e|0){case 17:{o=+D(+q,+o);v=162;break f}case 18:{o=q/o;v=162;break f}default:{o=0.0;v=162;break f}}}default:{k=c[y+8>>2]|0;i:do switch(k|0){case 19:{if((c[C+8>>2]|0)!=19){v=y;o=+((c[v>>2]|0)>>>0)+4294967296.0*+(c[v+4>>2]|0);v=137;break i}s=y;n=c[s>>2]|0;s=c[s+4>>2]|0;r=C;p=c[r>>2]|0;r=c[r+4>>2]|0;switch(e|0){case 13:{m=yQ(p|0,r|0,n|0,s|0)|0;k=z;v=160;break f}case 14:{m=zQ(n|0,s|0,p|0,r|0)|0;k=z;v=160;break f}case 15:{m=EQ(p|0,r|0,n|0,s|0)|0;k=z;v=160;break f}case 16:{u=yQ(p|0,r|0,1,0)|0;m=z;if(!(m>>>0<0|(m|0)==0&u>>>0<2)){k=FQ(n|0,s|0,p|0,r|0)|0;m=z;v=(r^s|0)<0&((k|0)!=0|(m|0)!=0);m=yQ((v?p:0)|0,(v?r:0)|0,k|0,m|0)|0;k=z;v=160;break f}if(!((p|0)==0&(r|0)==0)){m=0;k=0;v=160;break f}mw(w,281888,t);break}case 19:{t=yQ(p|0,r|0,1,0)|0;m=z;if(!(m>>>0<0|(m|0)==0&t>>>0<2)){m=CQ(n|0,s|0,p|0,r|0)|0;k=z;if((r^s|0)>=0){v=160;break f}v=FQ(n|0,s|0,p|0,r|0)|0;v=((v|0)!=0|(z|0)!=0)<<31>>31;m=yQ(v|0,((v|0)<0)<<31>>31|0,m|0,k|0)|0;k=z;v=160;break f}if((p|0)==0&(r|0)==0)mw(w,281862,u);else{m=zQ(0,0,n|0,s|0)|0;k=z;v=160;break f}break}case 26:{m=~n;k=~s;v=160;break f}case 25:{m=zQ(0,0,n|0,s|0)|0;k=z;v=160;break f}default:{m=0;k=0;v=160;break f}}break}case 3:{q=+h[y>>3];break}default:{if((k&15|0)==4){m=Ww((c[y>>2]|0)+16|0,x)|0;k=c[y>>2]|0;if((a[k+4>>0]|0)==4)k=d[k+7>>0]|0;else k=c[k+12>>2]|0;if((m|0)==(k+1|0)){t=(c[x+8>>2]|0)==19;v=x;u=c[v>>2]|0;v=c[v+4>>2]|0;c[j>>2]=u;c[j+4>>2]=v;o=t?+(u>>>0)+4294967296.0*+(v|0):+h[j>>3];v=137;break i}}v=159;break f}}while(0);if((v|0)==137)q=o;k=c[C+8>>2]|0;if((k|0)==3)o=+h[C>>3];else do if((k|0)==19)o=+((c[C>>2]|0)>>>0)+4294967296.0*+(c[C+4>>2]|0);else{if((k&15|0)==4){m=Ww((c[C>>2]|0)+16|0,x)|0;k=c[C>>2]|0;if((a[k+4>>0]|0)==4)k=d[k+7>>0]|0;else k=c[k+12>>2]|0;if((m|0)==(k+1|0)){w=(c[x+8>>2]|0)==19;C=x;y=c[C>>2]|0;C=c[C+4>>2]|0;c[j>>2]=y;c[j+4>>2]=C;o=w?+(y>>>0)+4294967296.0*+(C|0):+h[j>>3];break}}v=159;break f}while(0);switch(e|0){case 13:{o=q+o;v=162;break f}case 14:{o=q-o;v=162;break f}case 15:{o=q*o;v=162;break f}case 18:{o=q/o;v=162;break f}case 17:{o=+D(+q,+o);v=162;break f}case 19:{o=+A(+(q/o));v=162;break f}case 25:{o=-q;v=162;break f}case 16:{K=+TO(q,o);o=o*K<0.0?o+K:K;v=162;break f}default:{o=0.0;v=162;break f}}}}while(0);if((v|0)==159){Gx(w,y,C,I,e+-7|0);if((c[I+8>>2]|0)==19)v=161}else if((v|0)==160){e=I;c[e>>2]=m;c[e+4>>2]=k;c[I+8>>2]=19;v=161}else if((v|0)==162){h[I>>3]=o;c[I+8>>2]=3}if((v|0)==161){c[f>>2]=6;e=I;I=c[e+4>>2]|0;f=f+8|0;c[f>>2]=c[e>>2];c[f+4>>2]=I;l=J;return}o=+h[I>>3];if(o!=o|0.0!=0.0|o==0.0)break a;c[f>>2]=5;h[f+8>>3]=o;l=J;return}}while(0);while(0);switch(e|0){case 25:case 26:case 28:{m=SB(b,f)|0;n=0;break}default:{n=TB(b,g)|0;m=TB(b,f)|0}}if((m|0)>(n|0)){if(((c[f>>2]|0)==7?(E=c[f+8>>2]|0,(E&256|0)==0):0)?(d[b+42>>0]|0)<=(E|0):0){I=b+44|0;a[I>>0]=(a[I>>0]|0)+-1<<24>>24}if(((c[g>>2]|0)==7?(F=c[g+8>>2]|0,(F&256|0)==0):0)?(d[b+42>>0]|0)<=(F|0):0){k=b+44|0;a[k>>0]=(a[k>>0]|0)+-1<<24>>24;k=f}else k=f}else{if(((c[g>>2]|0)==7?(G=c[g+8>>2]|0,(G&256|0)==0):0)?(d[b+42>>0]|0)<=(G|0):0){I=b+44|0;a[I>>0]=(a[I>>0]|0)+-1<<24>>24}if(((c[f>>2]|0)==7?(H=c[f+8>>2]|0,(H&256|0)==0):0)?(d[b+42>>0]|0)<=(H|0):0){k=b+44|0;a[k>>0]=(a[k>>0]|0)+-1<<24>>24;k=f}else k=f}c[f+8>>2]=LB(b,m<<23|e|n<<14)|0;c[k>>2]=12;c[(c[(c[b>>2]|0)+56>>2]|0)+((c[b+16>>2]|0)+-1<<2)>>2]=i;l=J;return}function YB(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0;i=TB(b,g)|0;j=TB(b,h)|0;if(((c[h>>2]|0)==7?(l=c[h+8>>2]|0,(l&256|0)==0):0)?(d[b+42>>0]|0|0)<=(l|0):0){h=b+44|0;a[h>>0]=(a[h>>0]|0)+-1<<24>>24}if(((c[g>>2]|0)==7?(k=c[g+8>>2]|0,(k&256|0)==0):0)?(d[b+42>>0]|0|0)<=(k|0):0){h=b+44|0;a[h>>0]=(a[h>>0]|0)+-1<<24>>24}h=(e|0)!=31&(f|0)==0;LB(b,(h?64:f<<6)|e|(h?j:i)<<23|(h?i:j)<<14)|0;f=b+24|0;j=c[f>>2]|0;c[f>>2]=-1;f=LB(b,2147450910)|0;if((j|0)==-1){e=f;b=g+8|0;c[b>>2]=e;c[g>>2]=11;return}if((f|0)==-1){e=j;b=g+8|0;c[b>>2]=e;c[g>>2]=11;return}k=c[(c[b>>2]|0)+48>>2]|0;l=f;while(1){h=k+(l<<2)|0;e=c[h>>2]|0;i=(e>>>14)+-131071|0;i=(i|0)==-1?-1:l+1+i|0;if((i|0)==-1)break;else l=i}i=j+~l|0;if((((i|0)>-1?i:0-i|0)|0)>131071)$B(c[b+8>>2]|0,286908);c[h>>2]=(i<<14)+2147467264|e&16383;e=f;b=g+8|0;c[b>>2]=e;c[g>>2]=11;return}function ZB(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0;g=((e+-1|0)/50|0)+1|0;e=(f|0)==-1?0:f;if((g|0)<512){LB(b,d<<6|e<<23|g<<14|43)|0;d=d+1|0;d=d&255;b=b+44|0;a[b>>0]=d;return}if((g|0)>=67108864)$B(c[b+8>>2]|0,287001);LB(b,d<<6|e<<23|43)|0;LB(b,g<<6|46)|0;d=d+1|0;d=d&255;b=b+44|0;a[b>>0]=d;return}function _B(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;f=l;l=l+16|0;e=f+8|0;d=f;if((b|0)<257){e=c[a+52>>2]|0;c[d>>2]=b;e=Zw(e,287457,d)|0;l=f;return e|0}d=c[6528+(b+-257<<2)>>2]|0;if((b|0)>=289){e=d;l=f;return e|0}b=c[a+52>>2]|0;c[e>>2]=d;e=Zw(b,287462,e)|0;l=f;return e|0}function $B(a,b){a=a|0;b=b|0;aC(a,b,c[a+16>>2]|0)}function aC(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;p=l;l=l+112|0;x=p+40|0;u=p+32|0;r=p+24|0;v=p+16|0;q=p;p=p+48|0;w=b+52|0;n=c[w>>2]|0;g=c[b+72>>2]|0;o=c[b+4>>2]|0;a:do if(!g){a[p>>0]=63;a[p+1>>0]=0}else{k=g+16|0;m=WO(k)|0;switch(a[k>>0]|0){case 61:{g=k+1|0;if(m>>>0>60){i=p;h=i+59|0;do{a[i>>0]=a[g>>0]|0;i=i+1|0;g=g+1|0}while((i|0)<(h|0));a[p+59>>0]=0;break a}else{PQ(p|0,g|0,m|0)|0;break a}}case 64:if(m>>>0>60){a[p>>0]=a[287391]|0;a[p+1>>0]=a[287392]|0;a[p+2>>0]=a[287393]|0;i=p+3|0;g=k+(m+-56)|0;h=i+57|0;do{a[i>>0]=a[g>>0]|0;i=i+1|0;g=g+1|0}while((i|0)<(h|0));break a}else{PQ(p|0,k+1|0,m|0)|0;break a}default:{j=XO(k,10)|0;i=p;g=280583;h=i+9|0;do{a[i>>0]=a[g>>0]|0;i=i+1|0;g=g+1|0}while((i|0)<(h|0));g=p+9|0;h=(j|0)==0;if(m>>>0<45&h){PQ(g|0,k|0,m|0)|0;g=m+9|0}else{t=h?m:j-k|0;t=t>>>0<45?t:45;PQ(g|0,k|0,t|0)|0;g=p+(t+9)|0;a[g>>0]=a[287391]|0;a[g+1>>0]=a[287392]|0;a[g+2>>0]=a[287393]|0;g=t+12|0}t=p+g|0;a[t>>0]=a[280593]|0;a[t+1>>0]=a[280594]|0;a[t+2>>0]=a[280595]|0;break a}}}while(0);c[q>>2]=p;c[q+4>>2]=o;c[q+8>>2]=d;s=Zw(n,279794,q)|0;if(!e){t=c[w>>2]|0;qw(t,3)}t=c[w>>2]|0;do if((e+-290|0)>>>0>=4){if((e|0)<257){c[r>>2]=e;f=Zw(t,287457,r)|0;break}f=c[6528+(e+-257<<2)>>2]|0;if((e|0)<289){c[u>>2]=f;f=Zw(t,287462,u)|0}}else{d=b+60|0;p=c[d>>2]|0;q=p+4|0;g=c[q>>2]|0;n=p+8|0;o=c[n>>2]|0;if((g+1|0)>>>0>o>>>0){if(o>>>0>2147483646)aC(b,287467,0);j=o<<1;g=c[p>>2]|0;k=c[t+12>>2]|0;m=(g|0)!=0;h=k+4|0;i=jg[c[k>>2]&31](c[h>>2]|0,g,o,j)|0;if((j|0)!=0&(i|0)==0){if(!(c[k+140>>2]|0))qw(t,4);Tw(t,1);g=jg[c[k>>2]&31](c[h>>2]|0,g,o,j)|0;if(!g)qw(t,4);else f=g}else f=i;g=k+12|0;c[g>>2]=(m?0-o|0:0)+j+(c[g>>2]|0);c[p>>2]=f;c[n>>2]=j;g=c[q>>2]|0}else f=c[p>>2]|0;c[q>>2]=g+1;a[f+g>>0]=0;f=c[w>>2]|0;c[v>>2]=c[c[d>>2]>>2];f=Zw(f,287462,v)|0}while(0);c[x>>2]=s;c[x+4>>2]=f;Zw(t,287492,x)|0;x=c[w>>2]|0;qw(x,3)}function bC(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=c[b+52>>2]|0;e=xx(h,d,e)|0;g=h+8|0;f=c[g>>2]|0;c[g>>2]=f+16;c[f>>2]=e;c[f+8>>2]=(a[e+4>>0]|64)&255;b=c[b+64>>2]|0;f=(c[g>>2]|0)+-16|0;d=Cx(b,f)|0;if((d|0)==316344)d=Bx(h,b,f)|0;b=d+8|0;if(!(c[b>>2]|0)){c[d>>2]=1;c[b>>2]=1;if((c[(c[h+12>>2]|0)+12>>2]|0)>0)Sw(h)}else e=c[d+16>>2]|0;c[g>>2]=(c[g>>2]|0)+-16;return e|0}function cC(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;N=l;l=l+16|0;M=N;z=N+8|0;K=b+60|0;c[(c[K>>2]|0)+4>>2]=0;L=b+56|0;y=b+4|0;a:while(1){w=c[b>>2]|0;b:while(1){switch(w|0){case 91:{u=47;break a}case 61:{u=51;break a}case 60:{u=63;break a}case 62:{u=81;break a}case 47:{u=99;break a}case 126:{u=111;break a}case 58:{u=123;break a}case 39:case 34:{u=135;break a}case 46:{u=527;break a}case 57:case 56:case 55:case 54:case 53:case 52:case 51:case 50:case 49:case 48:{u=556;break a}case -1:{f=289;u=589;break a}case 13:case 10:{u=4;break b}case 45:break b;case 11:case 9:case 12:case 32:break;default:{u=557;break a}}g=c[L>>2]|0;I=c[g>>2]|0;c[g>>2]=I+-1;if(!I){h=ig[c[g+8>>2]&63](c[g+16>>2]|0,c[g+12>>2]|0,M)|0;i=c[M>>2]|0;if((h|0)==0|(i|0)==0)g=-1;else{c[g>>2]=i+-1;c[g+4>>2]=h+1;g=d[h>>0]|0}}else{I=g+4|0;g=c[I>>2]|0;c[I>>2]=g+1;g=d[g>>0]|0}c[b>>2]=g;w=g}if((u|0)==4){u=0;i=c[L>>2]|0;I=c[i>>2]|0;c[i>>2]=I+-1;if(!I){g=ig[c[i+8>>2]&63](c[i+16>>2]|0,c[i+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)g=-1;else{c[i>>2]=h+-1;c[i+4>>2]=g+1;g=d[g>>0]|0}}else{I=i+4|0;g=c[I>>2]|0;c[I>>2]=g+1;g=d[g>>0]|0}c[b>>2]=g;switch(g|0){case 13:case 10:{if((g|0)!=(w|0)){g=c[L>>2]|0;I=c[g>>2]|0;c[g>>2]=I+-1;if(!I){h=ig[c[g+8>>2]&63](c[g+16>>2]|0,c[g+12>>2]|0,M)|0;i=c[M>>2]|0;if((h|0)==0|(i|0)==0)g=-1;else{c[g>>2]=i+-1;c[g+4>>2]=h+1;g=d[h>>0]|0}}else{I=g+4|0;g=c[I>>2]|0;c[I>>2]=g+1;g=d[g>>0]|0}c[b>>2]=g}break}default:{}}I=(c[y>>2]|0)+1|0;c[y>>2]=I;if((I|0)==2147483647){u=18;break}else continue}i=c[L>>2]|0;I=c[i>>2]|0;c[i>>2]=I+-1;if(!I){g=ig[c[i+8>>2]&63](c[i+16>>2]|0,c[i+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)g=-1;else{c[i>>2]=h+-1;c[i+4>>2]=g+1;g=d[g>>0]|0}}else{I=i+4|0;g=c[I>>2]|0;c[I>>2]=g+1;g=d[g>>0]|0}c[b>>2]=g;if((g|0)!=45){f=45;u=589;break}g=c[L>>2]|0;I=c[g>>2]|0;c[g>>2]=I+-1;if(!I){h=ig[c[g+8>>2]&63](c[g+16>>2]|0,c[g+12>>2]|0,M)|0;i=c[M>>2]|0;if((h|0)==0|(i|0)==0)g=-1;else{c[g>>2]=i+-1;c[g+4>>2]=h+1;g=d[h>>0]|0}}else{I=g+4|0;g=c[I>>2]|0;c[I>>2]=g+1;g=d[g>>0]|0}c[b>>2]=g;do if((g|0)==91){g=dC(b)|0;c[(c[K>>2]|0)+4>>2]=0;if((g|0)>-1){eC(b,0,g);c[(c[K>>2]|0)+4>>2]=0;continue a}else{g=c[b>>2]|0;break}}while(0);while(1){switch(g|0){case -1:case 13:case 10:continue a;default:{}}g=c[L>>2]|0;I=c[g>>2]|0;c[g>>2]=I+-1;if(!I){h=ig[c[g+8>>2]&63](c[g+16>>2]|0,c[g+12>>2]|0,M)|0;i=c[M>>2]|0;if((h|0)==0|(i|0)==0)g=-1;else{c[g>>2]=i+-1;c[g+4>>2]=h+1;g=d[h>>0]|0}}else{I=g+4|0;g=c[I>>2]|0;c[I>>2]=g+1;g=d[g>>0]|0}c[b>>2]=g}}switch(u|0){case 18:{aC(b,287503,0);break}case 47:{f=dC(b)|0;if((f|0)>-1){eC(b,e,f);b=293;l=N;return b|0}if((f|0)==-1){b=91;l=N;return b|0}else aC(b,287528,293);break}case 51:{f=c[L>>2]|0;e=c[f>>2]|0;c[f>>2]=e+-1;if(!e){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}}else{e=f+4|0;f=c[e>>2]|0;c[e>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;if((f|0)!=61){b=61;l=N;return b|0}g=c[L>>2]|0;L=c[g>>2]|0;c[g>>2]=L+-1;if(!L){h=ig[c[g+8>>2]&63](c[g+16>>2]|0,c[g+12>>2]|0,M)|0;f=c[M>>2]|0;if((h|0)==0|(f|0)==0)f=-1;else{c[g>>2]=f+-1;c[g+4>>2]=h+1;f=d[h>>0]|0}}else{M=g+4|0;f=c[M>>2]|0;c[M>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;b=282;l=N;return b|0}case 63:{f=c[L>>2]|0;e=c[f>>2]|0;c[f>>2]=e+-1;if(!e){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}}else{e=f+4|0;f=c[e>>2]|0;c[e>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;switch(f|0){case 61:{g=c[L>>2]|0;L=c[g>>2]|0;c[g>>2]=L+-1;if(!L){h=ig[c[g+8>>2]&63](c[g+16>>2]|0,c[g+12>>2]|0,M)|0;f=c[M>>2]|0;if((h|0)==0|(f|0)==0)f=-1;else{c[g>>2]=f+-1;c[g+4>>2]=h+1;f=d[h>>0]|0}}else{M=g+4|0;f=c[M>>2]|0;c[M>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;b=284;l=N;return b|0}case 60:{g=c[L>>2]|0;L=c[g>>2]|0;c[g>>2]=L+-1;if(!L){h=ig[c[g+8>>2]&63](c[g+16>>2]|0,c[g+12>>2]|0,M)|0;f=c[M>>2]|0;if((h|0)==0|(f|0)==0)f=-1;else{c[g>>2]=f+-1;c[g+4>>2]=h+1;f=d[h>>0]|0}}else{M=g+4|0;f=c[M>>2]|0;c[M>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;b=286;l=N;return b|0}default:{b=60;l=N;return b|0}}}case 81:{f=c[L>>2]|0;e=c[f>>2]|0;c[f>>2]=e+-1;if(!e){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}}else{e=f+4|0;f=c[e>>2]|0;c[e>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;switch(f|0){case 61:{g=c[L>>2]|0;L=c[g>>2]|0;c[g>>2]=L+-1;if(!L){h=ig[c[g+8>>2]&63](c[g+16>>2]|0,c[g+12>>2]|0,M)|0;f=c[M>>2]|0;if((h|0)==0|(f|0)==0)f=-1;else{c[g>>2]=f+-1;c[g+4>>2]=h+1;f=d[h>>0]|0}}else{M=g+4|0;f=c[M>>2]|0;c[M>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;b=283;l=N;return b|0}case 62:{g=c[L>>2]|0;L=c[g>>2]|0;c[g>>2]=L+-1;if(!L){h=ig[c[g+8>>2]&63](c[g+16>>2]|0,c[g+12>>2]|0,M)|0;f=c[M>>2]|0;if((h|0)==0|(f|0)==0)f=-1;else{c[g>>2]=f+-1;c[g+4>>2]=h+1;f=d[h>>0]|0}}else{M=g+4|0;f=c[M>>2]|0;c[M>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;b=287;l=N;return b|0}default:{b=62;l=N;return b|0}}}case 99:{f=c[L>>2]|0;e=c[f>>2]|0;c[f>>2]=e+-1;if(!e){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}}else{e=f+4|0;f=c[e>>2]|0;c[e>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;if((f|0)!=47){b=47;l=N;return b|0}g=c[L>>2]|0;L=c[g>>2]|0;c[g>>2]=L+-1;if(!L){h=ig[c[g+8>>2]&63](c[g+16>>2]|0,c[g+12>>2]|0,M)|0;f=c[M>>2]|0;if((h|0)==0|(f|0)==0)f=-1;else{c[g>>2]=f+-1;c[g+4>>2]=h+1;f=d[h>>0]|0}}else{M=g+4|0;f=c[M>>2]|0;c[M>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;b=279;l=N;return b|0}case 111:{f=c[L>>2]|0;e=c[f>>2]|0;c[f>>2]=e+-1;if(!e){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}}else{e=f+4|0;f=c[e>>2]|0;c[e>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;if((f|0)!=61){b=126;l=N;return b|0}g=c[L>>2]|0;L=c[g>>2]|0;c[g>>2]=L+-1;if(!L){h=ig[c[g+8>>2]&63](c[g+16>>2]|0,c[g+12>>2]|0,M)|0;f=c[M>>2]|0;if((h|0)==0|(f|0)==0)f=-1;else{c[g>>2]=f+-1;c[g+4>>2]=h+1;f=d[h>>0]|0}}else{M=g+4|0;f=c[M>>2]|0;c[M>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;b=285;l=N;return b|0}case 123:{f=c[L>>2]|0;e=c[f>>2]|0;c[f>>2]=e+-1;if(!e){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}}else{e=f+4|0;f=c[e>>2]|0;c[e>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;if((f|0)!=58){b=58;l=N;return b|0}g=c[L>>2]|0;L=c[g>>2]|0;c[g>>2]=L+-1;if(!L){h=ig[c[g+8>>2]&63](c[g+16>>2]|0,c[g+12>>2]|0,M)|0;f=c[M>>2]|0;if((h|0)==0|(f|0)==0)f=-1;else{c[g>>2]=f+-1;c[g+4>>2]=h+1;f=d[h>>0]|0}}else{M=g+4|0;f=c[M>>2]|0;c[M>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;b=288;l=N;return b|0}case 135:{p=c[K>>2]|0;q=p+4|0;f=c[q>>2]|0;n=p+8|0;o=c[n>>2]|0;if((f+1|0)>>>0>o>>>0){if(o>>>0>2147483646)aC(b,287467,0);i=o<<1;j=c[b+52>>2]|0;f=c[p>>2]|0;k=c[j+12>>2]|0;m=(f|0)!=0;g=k+4|0;h=jg[c[k>>2]&31](c[g>>2]|0,f,o,i)|0;if((i|0)!=0&(h|0)==0){if(!(c[k+140>>2]|0))qw(j,4);Tw(j,1);f=jg[c[k>>2]&31](c[g>>2]|0,f,o,i)|0;if(!f)qw(j,4);else r=f}else r=h;g=k+12|0;c[g>>2]=(m?0-o|0:0)+i+(c[g>>2]|0);c[p>>2]=r;c[n>>2]=i;g=c[q>>2]|0;f=r}else{g=f;f=c[p>>2]|0}I=w&255;c[q>>2]=g+1;a[f+g>>0]=I;f=c[L>>2]|0;x=c[f>>2]|0;c[f>>2]=x+-1;if(!x){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}}else{x=f+4|0;f=c[x>>2]|0;c[x>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;c:do if((f|0)!=(w|0)){x=b+52|0;v=z+7|0;d:while(1){e:do switch(f|0){case -1:{u=153;break d}case 13:case 10:{u=154;break d}case 92:{p=c[K>>2]|0;q=p+4|0;f=c[q>>2]|0;n=p+8|0;o=c[n>>2]|0;if((f+1|0)>>>0>o>>>0){if(o>>>0>2147483646){u=158;break d}j=o<<1;i=c[x>>2]|0;g=c[p>>2]|0;k=c[i+12>>2]|0;m=(g|0)!=0;h=k+4|0;f=jg[c[k>>2]&31](c[h>>2]|0,g,o,j)|0;if((j|0)!=0&(f|0)==0){if(!(c[k+140>>2]|0)){u=162;break d}Tw(i,1);f=jg[c[k>>2]&31](c[h>>2]|0,g,o,j)|0;if(!f){u=162;break d}}g=k+12|0;c[g>>2]=(m?0-o|0:0)+j+(c[g>>2]|0);c[p>>2]=f;c[n>>2]=j;g=c[q>>2]|0}else{g=f;f=c[p>>2]|0}c[q>>2]=g+1;a[f+g>>0]=92;f=c[L>>2]|0;t=c[f>>2]|0;c[f>>2]=t+-1;if(!t){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}r=f}else{t=f+4|0;r=c[t>>2]|0;c[t>>2]=r+1;r=d[r>>0]|0}c[b>>2]=r;f:do switch(r|0){case -1:{f=-1;break e}case 97:{i=7;u=475;break}case 98:{i=8;u=475;break}case 102:{i=12;u=475;break}case 110:{i=10;u=475;break}case 114:{i=13;u=475;break}case 116:{i=9;u=475;break}case 118:{i=11;u=475;break}case 120:{p=c[K>>2]|0;q=p+4|0;f=c[q>>2]|0;n=p+8|0;o=c[n>>2]|0;if((f+1|0)>>>0>o>>>0){if(o>>>0>2147483646){u=180;break d}i=o<<1;j=c[x>>2]|0;g=c[p>>2]|0;k=c[j+12>>2]|0;m=(g|0)!=0;h=k+4|0;f=jg[c[k>>2]&31](c[h>>2]|0,g,o,i)|0;if((i|0)!=0&(f|0)==0){if(!(c[k+140>>2]|0)){u=184;break d}Tw(j,1);f=jg[c[k>>2]&31](c[h>>2]|0,g,o,i)|0;if(!f){u=184;break d}}g=k+12|0;c[g>>2]=(m?0-o|0:0)+i+(c[g>>2]|0);c[p>>2]=f;c[n>>2]=i;g=c[q>>2]|0}else{g=f;f=c[p>>2]|0}c[q>>2]=g+1;a[f+g>>0]=120;f=c[L>>2]|0;u=c[f>>2]|0;c[f>>2]=u+-1;if(!u){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}r=f}else{u=f+4|0;r=c[u>>2]|0;c[u>>2]=r+1;r=d[r>>0]|0}c[b>>2]=r;if(!(a[287022+(r+1)>>0]&16)){u=192;break d}s=((r+-48|0)>>>0>9?(r|32)+268435369|0:r+268435408|0)<<4;p=c[K>>2]|0;q=p+4|0;f=c[q>>2]|0;n=p+8|0;o=c[n>>2]|0;if((f+1|0)>>>0>o>>>0){if(o>>>0>2147483646){u=212;break d}i=o<<1;j=c[x>>2]|0;g=c[p>>2]|0;k=c[j+12>>2]|0;m=(g|0)!=0;h=k+4|0;f=jg[c[k>>2]&31](c[h>>2]|0,g,o,i)|0;if((i|0)!=0&(f|0)==0){if(!(c[k+140>>2]|0)){u=216;break d}Tw(j,1);f=jg[c[k>>2]&31](c[h>>2]|0,g,o,i)|0;if(!f){u=216;break d}}g=k+12|0;c[g>>2]=(m?0-o|0:0)+i+(c[g>>2]|0);c[p>>2]=f;c[n>>2]=i;g=c[q>>2]|0}else{g=f;f=c[p>>2]|0}c[q>>2]=g+1;a[f+g>>0]=r;f=c[L>>2]|0;u=c[f>>2]|0;c[f>>2]=u+-1;if(!u){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}r=f}else{u=f+4|0;r=c[u>>2]|0;c[u>>2]=r+1;r=d[r>>0]|0}c[b>>2]=r;if(!(a[287022+(r+1)>>0]&16)){u=224;break d}i=r+-48|0;u=(c[K>>2]|0)+4|0;c[u>>2]=(c[u>>2]|0)+-2;i=(i>>>0>9?(r|32)+-87|0:i)+s|0;u=475;break}case 117:{p=c[K>>2]|0;q=p+4|0;f=c[q>>2]|0;n=p+8|0;o=c[n>>2]|0;if((f+1|0)>>>0>o>>>0){if(o>>>0>2147483646){u=245;break d}j=o<<1;i=c[x>>2]|0;g=c[p>>2]|0;k=c[i+12>>2]|0;m=(g|0)!=0;h=k+4|0;f=jg[c[k>>2]&31](c[h>>2]|0,g,o,j)|0;if((j|0)!=0&(f|0)==0){if(!(c[k+140>>2]|0)){u=249;break d}Tw(i,1);f=jg[c[k>>2]&31](c[h>>2]|0,g,o,j)|0;if(!f){u=249;break d}}g=k+12|0;c[g>>2]=(m?0-o|0:0)+j+(c[g>>2]|0);c[p>>2]=f;c[n>>2]=j;g=c[q>>2]|0}else{g=f;f=c[p>>2]|0}c[q>>2]=g+1;a[f+g>>0]=117;f=c[L>>2]|0;t=c[f>>2]|0;c[f>>2]=t+-1;if(!t){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}r=f}else{t=f+4|0;r=c[t>>2]|0;c[t>>2]=r+1;r=d[r>>0]|0}c[b>>2]=r;switch(r|0){case -1:{u=272;break d}case 123:break;default:{u=257;break d}}p=c[K>>2]|0;q=p+4|0;f=c[q>>2]|0;n=p+8|0;o=c[n>>2]|0;if((f+1|0)>>>0>o>>>0){if(o>>>0>2147483646){u=276;break d}j=o<<1;i=c[x>>2]|0;g=c[p>>2]|0;k=c[i+12>>2]|0;m=(g|0)!=0;h=k+4|0;f=jg[c[k>>2]&31](c[h>>2]|0,g,o,j)|0;if((j|0)!=0&(f|0)==0){if(!(c[k+140>>2]|0)){u=280;break d}Tw(i,1);f=jg[c[k>>2]&31](c[h>>2]|0,g,o,j)|0;if(!f){u=280;break d}}g=k+12|0;c[g>>2]=(m?0-o|0:0)+j+(c[g>>2]|0);c[p>>2]=f;c[n>>2]=j;g=c[q>>2]|0}else{g=f;f=c[p>>2]|0}c[q>>2]=g+1;a[f+g>>0]=123;f=c[L>>2]|0;t=c[f>>2]|0;c[f>>2]=t+-1;if(!t){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}r=f}else{t=f+4|0;r=c[t>>2]|0;c[t>>2]=r+1;r=d[r>>0]|0}c[b>>2]=r;if(!(a[287022+(r+1)>>0]&16)){u=288;break d}q=r+-48|0;s=r;t=4;r=q>>>0>9?(r|32)+-87|0:q;while(1){p=c[K>>2]|0;q=p+4|0;f=c[q>>2]|0;n=p+8|0;o=c[n>>2]|0;if((f+1|0)>>>0>o>>>0){if(o>>>0>2147483646){u=309;break d}j=o<<1;i=c[x>>2]|0;g=c[p>>2]|0;k=c[i+12>>2]|0;m=(g|0)!=0;h=k+4|0;f=jg[c[k>>2]&31](c[h>>2]|0,g,o,j)|0;if((j|0)!=0&(f|0)==0){if(!(c[k+140>>2]|0)){u=313;break d}Tw(i,1);f=jg[c[k>>2]&31](c[h>>2]|0,g,o,j)|0;if(!f){u=313;break d}}g=k+12|0;c[g>>2]=(m?0-o|0:0)+j+(c[g>>2]|0);c[p>>2]=f;c[n>>2]=j;g=c[q>>2]|0}else{g=f;f=c[p>>2]|0}c[q>>2]=g+1;a[f+g>>0]=s;f=c[L>>2]|0;s=c[f>>2]|0;c[f>>2]=s+-1;if(!s){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}s=f}else{q=f+4|0;s=c[q>>2]|0;c[q>>2]=s+1;s=d[s>>0]|0}c[b>>2]=s;if(!(a[287022+(s+1)>>0]&16))break;f=s+-48|0;f=(f>>>0>9?(s|32)+-87|0:f)+(r<<4)|0;if(f>>>0<1114112){t=t+1|0;r=f}else{u=322;break d}}switch(s|0){case -1:{u=355;break d}case 125:break;default:{u=340;break d}}f=c[L>>2]|0;s=c[f>>2]|0;c[f>>2]=s+-1;if(!s){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}}else{s=f+4|0;f=c[s>>2]|0;c[s>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;i=c[K>>2]|0;s=i+4|0;j=(c[s>>2]|0)-t|0;c[s>>2]=j;if(r>>>0>=128){f=r;g=63;h=1;while(1){k=h+1|0;a[z+(8-h)>>0]=f&63|128;f=f>>>6;g=g>>>1;if(f>>>0<=g>>>0)break;else h=k}a[z+(7-h)>>0]=g<<1^254|f;if((h|0)>-1){g=j;u=365}}else{a[v>>0]=r;g=j;k=1;u=365}g:do if((u|0)==365)while(1){u=0;r=a[z+(8-k)>>0]|0;s=i+4|0;p=i+8|0;q=c[p>>2]|0;if((g+1|0)>>>0>q>>>0){if(q>>>0>2147483646){u=368;break d}m=q<<1;j=c[x>>2]|0;g=c[i>>2]|0;n=c[j+12>>2]|0;o=(g|0)!=0;h=n+4|0;f=jg[c[n>>2]&31](c[h>>2]|0,g,q,m)|0;if((m|0)!=0&(f|0)==0){if(!(c[n+140>>2]|0)){u=372;break d}Tw(j,1);f=jg[c[n>>2]&31](c[h>>2]|0,g,q,m)|0;if(!f){u=372;break d}}g=n+12|0;c[g>>2]=(o?0-q|0:0)+m+(c[g>>2]|0);c[i>>2]=f;c[p>>2]=m;g=c[s>>2]|0}else f=c[i>>2]|0;c[s>>2]=g+1;a[f+g>>0]=r;if((k|0)<=1)break g;g=c[K>>2]|0;i=g;g=c[g+4>>2]|0;k=k+-1|0;u=365}while(0);break}case 13:case 10:{f=c[L>>2]|0;u=c[f>>2]|0;c[f>>2]=u+-1;if(!u){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}}else{u=f+4|0;f=c[u>>2]|0;c[u>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;switch(f|0){case 13:case 10:{if((f|0)!=(r|0)){f=c[L>>2]|0;u=c[f>>2]|0;c[f>>2]=u+-1;if(!u){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}}else{u=f+4|0;f=c[u>>2]|0;c[u>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f}break}default:{}}u=(c[y>>2]|0)+1|0;c[y>>2]=u;if((u|0)==2147483647){u=391;break d}else{f=10;u=481}break}case 39:case 34:case 92:{i=r;u=475;break}case 122:{f=(c[K>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)+-1;f=c[L>>2]|0;t=c[f>>2]|0;c[f>>2]=t+-1;if(!t){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}}else{t=f+4|0;f=c[t>>2]|0;c[t>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;if(a[287022+(f+1)>>0]&8)while(1){switch(f|0){case 13:case 10:{g=c[L>>2]|0;t=c[g>>2]|0;c[g>>2]=t+-1;if(!t){h=ig[c[g+8>>2]&63](c[g+16>>2]|0,c[g+12>>2]|0,M)|0;i=c[M>>2]|0;if((h|0)==0|(i|0)==0)g=-1;else{c[g>>2]=i+-1;c[g+4>>2]=h+1;g=d[h>>0]|0}}else{t=g+4|0;g=c[t>>2]|0;c[t>>2]=g+1;g=d[g>>0]|0}c[b>>2]=g;switch(g|0){case 13:case 10:{if((g|0)!=(f|0)){f=c[L>>2]|0;t=c[f>>2]|0;c[f>>2]=t+-1;if(!t){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}}else{t=f+4|0;f=c[t>>2]|0;c[t>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f}break}default:f=g}t=(c[y>>2]|0)+1|0;c[y>>2]=t;if((t|0)==2147483647){u=414;break d}break}default:{f=c[L>>2]|0;t=c[f>>2]|0;c[f>>2]=t+-1;if(!t){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}}else{t=f+4|0;f=c[t>>2]|0;c[t>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f}}if(!(a[287022+(f+1)>>0]&8))break f}break}default:{if((r+-48|0)>>>0>9){u=423;break d}else{f=r;t=0;h=0}while(1){g=f+-48|0;if(g>>>0>9){r=f;g=t;f=h;break}s=g+(h*10|0)|0;q=c[K>>2]|0;r=q+4|0;g=c[r>>2]|0;o=q+8|0;p=c[o>>2]|0;if((g+1|0)>>>0>p>>>0){if(p>>>0>2147483646){u=444;break d}j=p<<1;k=c[x>>2]|0;h=c[q>>2]|0;m=c[k+12>>2]|0;n=(h|0)!=0;i=m+4|0;g=jg[c[m>>2]&31](c[i>>2]|0,h,p,j)|0;if((j|0)!=0&(g|0)==0){if(!(c[m+140>>2]|0)){u=448;break d}Tw(k,1);g=jg[c[m>>2]&31](c[i>>2]|0,h,p,j)|0;if(!g){u=448;break d}}h=m+12|0;c[h>>2]=(n?0-p|0:0)+j+(c[h>>2]|0);c[q>>2]=g;c[o>>2]=j;h=c[r>>2]|0}else{h=g;g=c[q>>2]|0}c[r>>2]=h+1;a[g+h>>0]=f;f=c[L>>2]|0;u=c[f>>2]|0;c[f>>2]=u+-1;if(!u){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}}else{u=f+4|0;f=c[u>>2]|0;c[u>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;g=t+1|0;if((g|0)<3){t=g;h=s}else{r=f;f=s;break}}if((f|0)>=256){u=457;break d}u=(c[K>>2]|0)+4|0;c[u>>2]=(c[u>>2]|0)-g;u=481}}while(0);if((u|0)==475){f=c[L>>2]|0;u=c[f>>2]|0;c[f>>2]=u+-1;if(!u){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}}else{u=f+4|0;f=c[u>>2]|0;c[u>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;f=i;u=481}if((u|0)==481){u=0;q=c[K>>2]|0;r=q+4|0;t=c[r>>2]|0;g=t+-1|0;c[r>>2]=g;o=q+8|0;p=c[o>>2]|0;if(t>>>0>p>>>0){if(p>>>0>2147483646){u=484;break d}k=p<<1;j=c[x>>2]|0;h=c[q>>2]|0;m=c[j+12>>2]|0;n=(h|0)!=0;i=m+4|0;g=jg[c[m>>2]&31](c[i>>2]|0,h,p,k)|0;if((k|0)!=0&(g|0)==0){if(!(c[m+140>>2]|0)){u=488;break d}Tw(j,1);g=jg[c[m>>2]&31](c[i>>2]|0,h,p,k)|0;if(!g){u=488;break d}}h=m+12|0;c[h>>2]=(n?0-p|0:0)+k+(c[h>>2]|0);c[q>>2]=g;c[o>>2]=k;h=c[r>>2]|0}else{h=g;g=c[q>>2]|0}c[r>>2]=h+1;a[g+h>>0]=f}f=c[b>>2]|0;break}default:{q=c[K>>2]|0;r=q+4|0;g=c[r>>2]|0;o=q+8|0;p=c[o>>2]|0;if((g+1|0)>>>0>p>>>0){if(p>>>0>2147483646){u=494;break d}k=p<<1;j=c[x>>2]|0;h=c[q>>2]|0;m=c[j+12>>2]|0;n=(h|0)!=0;i=m+4|0;g=jg[c[m>>2]&31](c[i>>2]|0,h,p,k)|0;if((k|0)!=0&(g|0)==0){if(!(c[m+140>>2]|0)){u=498;break d}Tw(j,1);g=jg[c[m>>2]&31](c[i>>2]|0,h,p,k)|0;if(!g){u=498;break d}}h=m+12|0;c[h>>2]=(n?0-p|0:0)+k+(c[h>>2]|0);c[q>>2]=g;c[o>>2]=k;h=c[r>>2]|0}else{h=g;g=c[q>>2]|0}c[r>>2]=h+1;a[g+h>>0]=f;f=c[L>>2]|0;t=c[f>>2]|0;c[f>>2]=t+-1;if(!t){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}}else{t=f+4|0;f=c[t>>2]|0;c[t>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f}}while(0);if((f|0)==(w|0))break c}switch(u|0){case 153:{aC(b,287558,289);break}case 154:{aC(b,287558,293);break}case 158:{aC(b,287467,0);break}case 162:{qw(i,4);break}case 180:{aC(b,287467,0);break}case 184:{qw(j,4);break}case 192:{if((r|0)==-1)aC(b,287576,293);p=c[K>>2]|0;q=p+4|0;g=c[q>>2]|0;n=p+8|0;o=c[n>>2]|0;if((g+1|0)>>>0>o>>>0){if(o>>>0>2147483646)aC(b,287467,0);m=o<<1;i=c[x>>2]|0;f=c[p>>2]|0;j=c[i+12>>2]|0;k=(f|0)!=0;g=j+4|0;h=jg[c[j>>2]&31](c[g>>2]|0,f,o,m)|0;if((m|0)!=0&(h|0)==0){if(!(c[j+140>>2]|0))qw(i,4);Tw(i,1);f=jg[c[j>>2]&31](c[g>>2]|0,f,o,m)|0;if(!f)qw(i,4);else A=f}else A=h;g=j+12|0;c[g>>2]=(k?0-o|0:0)+m+(c[g>>2]|0);c[p>>2]=A;c[n>>2]=m;g=c[q>>2]|0;f=A}else f=c[p>>2]|0;c[q>>2]=g+1;a[f+g>>0]=r;f=c[L>>2]|0;H=c[f>>2]|0;c[f>>2]=H+-1;if(!H){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}}else{H=f+4|0;f=c[H>>2]|0;c[H>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;aC(b,287576,293);break}case 212:{aC(b,287467,0);break}case 216:{qw(j,4);break}case 224:{if((r|0)==-1)aC(b,287576,293);p=c[K>>2]|0;q=p+4|0;g=c[q>>2]|0;n=p+8|0;o=c[n>>2]|0;if((g+1|0)>>>0>o>>>0){if(o>>>0>2147483646)aC(b,287467,0);m=o<<1;i=c[x>>2]|0;f=c[p>>2]|0;j=c[i+12>>2]|0;k=(f|0)!=0;g=j+4|0;h=jg[c[j>>2]&31](c[g>>2]|0,f,o,m)|0;if((m|0)!=0&(h|0)==0){if(!(c[j+140>>2]|0))qw(i,4);Tw(i,1);f=jg[c[j>>2]&31](c[g>>2]|0,f,o,m)|0;if(!f)qw(i,4);else B=f}else B=h;g=j+12|0;c[g>>2]=(k?0-o|0:0)+m+(c[g>>2]|0);c[p>>2]=B;c[n>>2]=m;g=c[q>>2]|0;f=B}else f=c[p>>2]|0;c[q>>2]=g+1;a[f+g>>0]=r;f=c[L>>2]|0;H=c[f>>2]|0;c[f>>2]=H+-1;if(!H){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}}else{H=f+4|0;f=c[H>>2]|0;c[H>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;aC(b,287576,293);break}case 245:{aC(b,287467,0);break}case 249:{qw(i,4);break}case 257:{p=c[K>>2]|0;q=p+4|0;g=c[q>>2]|0;n=p+8|0;o=c[n>>2]|0;if((g+1|0)>>>0>o>>>0){if(o>>>0>2147483646)aC(b,287467,0);m=o<<1;i=c[x>>2]|0;g=c[p>>2]|0;j=c[i+12>>2]|0;k=(g|0)!=0;h=j+4|0;f=jg[c[j>>2]&31](c[h>>2]|0,g,o,m)|0;if((m|0)!=0&(f|0)==0){if(!(c[j+140>>2]|0))qw(i,4);Tw(i,1);f=jg[c[j>>2]&31](c[h>>2]|0,g,o,m)|0;if(!f)qw(i,4);else C=f}else C=f;g=j+12|0;c[g>>2]=(k?0-o|0:0)+m+(c[g>>2]|0);c[p>>2]=C;c[n>>2]=m;g=c[q>>2]|0;f=C}else f=c[p>>2]|0;c[q>>2]=g+1;a[f+g>>0]=r;f=c[L>>2]|0;H=c[f>>2]|0;c[f>>2]=H+-1;if(!H){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}}else{H=f+4|0;f=c[H>>2]|0;c[H>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;aC(b,287603,293);break}case 272:{aC(b,287603,293);break}case 276:{aC(b,287467,0);break}case 280:{qw(i,4);break}case 288:{if((r|0)==-1)aC(b,287576,293);p=c[K>>2]|0;q=p+4|0;g=c[q>>2]|0;n=p+8|0;o=c[n>>2]|0;if((g+1|0)>>>0>o>>>0){if(o>>>0>2147483646)aC(b,287467,0);m=o<<1;i=c[x>>2]|0;f=c[p>>2]|0;j=c[i+12>>2]|0;k=(f|0)!=0;g=j+4|0;h=jg[c[j>>2]&31](c[g>>2]|0,f,o,m)|0;if((m|0)!=0&(h|0)==0){if(!(c[j+140>>2]|0))qw(i,4);Tw(i,1);f=jg[c[j>>2]&31](c[g>>2]|0,f,o,m)|0;if(!f)qw(i,4);else D=f}else D=h;g=j+12|0;c[g>>2]=(k?0-o|0:0)+m+(c[g>>2]|0);c[p>>2]=D;c[n>>2]=m;g=c[q>>2]|0;f=D}else f=c[p>>2]|0;c[q>>2]=g+1;a[f+g>>0]=r;f=c[L>>2]|0;H=c[f>>2]|0;c[f>>2]=H+-1;if(!H){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}}else{H=f+4|0;f=c[H>>2]|0;c[H>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;aC(b,287576,293);break}case 309:{aC(b,287467,0);break}case 313:{qw(i,4);break}case 322:{if((s|0)==-1)aC(b,287615,293);p=c[K>>2]|0;q=p+4|0;g=c[q>>2]|0;n=p+8|0;o=c[n>>2]|0;if((g+1|0)>>>0>o>>>0){if(o>>>0>2147483646)aC(b,287467,0);m=o<<1;i=c[x>>2]|0;f=c[p>>2]|0;j=c[i+12>>2]|0;k=(f|0)!=0;g=j+4|0;h=jg[c[j>>2]&31](c[g>>2]|0,f,o,m)|0;if((m|0)!=0&(h|0)==0){if(!(c[j+140>>2]|0))qw(i,4);Tw(i,1);f=jg[c[j>>2]&31](c[g>>2]|0,f,o,m)|0;if(!f)qw(i,4);else E=f}else E=h;g=j+12|0;c[g>>2]=(k?0-o|0:0)+m+(c[g>>2]|0);c[p>>2]=E;c[n>>2]=m;g=c[q>>2]|0;f=E}else f=c[p>>2]|0;c[q>>2]=g+1;a[f+g>>0]=s;f=c[L>>2]|0;H=c[f>>2]|0;c[f>>2]=H+-1;if(!H){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}}else{H=f+4|0;f=c[H>>2]|0;c[H>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;aC(b,287615,293);break}case 340:{p=c[K>>2]|0;q=p+4|0;g=c[q>>2]|0;n=p+8|0;o=c[n>>2]|0;if((g+1|0)>>>0>o>>>0){if(o>>>0>2147483646)aC(b,287467,0);m=o<<1;i=c[x>>2]|0;f=c[p>>2]|0;j=c[i+12>>2]|0;k=(f|0)!=0;g=j+4|0;h=jg[c[j>>2]&31](c[g>>2]|0,f,o,m)|0;if((m|0)!=0&(h|0)==0){if(!(c[j+140>>2]|0))qw(i,4);Tw(i,1);f=jg[c[j>>2]&31](c[g>>2]|0,f,o,m)|0;if(!f)qw(i,4);else F=f}else F=h;g=j+12|0;c[g>>2]=(k?0-o|0:0)+m+(c[g>>2]|0);c[p>>2]=F;c[n>>2]=m;g=c[q>>2]|0;f=F}else f=c[p>>2]|0;c[q>>2]=g+1;a[f+g>>0]=s;f=c[L>>2]|0;H=c[f>>2]|0;c[f>>2]=H+-1;if(!H){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}}else{H=f+4|0;f=c[H>>2]|0;c[H>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;aC(b,287637,293);break}case 355:{aC(b,287637,293);break}case 368:{aC(b,287467,0);break}case 372:{qw(j,4);break}case 391:{aC(b,287503,0);break}case 414:{aC(b,287503,0);break}case 423:{if((r|0)==-1)aC(b,287649,293);p=c[K>>2]|0;q=p+4|0;g=c[q>>2]|0;n=p+8|0;o=c[n>>2]|0;if((g+1|0)>>>0>o>>>0){if(o>>>0>2147483646)aC(b,287467,0);m=o<<1;i=c[x>>2]|0;f=c[p>>2]|0;j=c[i+12>>2]|0;k=(f|0)!=0;g=j+4|0;h=jg[c[j>>2]&31](c[g>>2]|0,f,o,m)|0;if((m|0)!=0&(h|0)==0){if(!(c[j+140>>2]|0))qw(i,4);Tw(i,1);f=jg[c[j>>2]&31](c[g>>2]|0,f,o,m)|0;if(!f)qw(i,4);else G=f}else G=h;g=j+12|0;c[g>>2]=(k?0-o|0:0)+m+(c[g>>2]|0);c[p>>2]=G;c[n>>2]=m;g=c[q>>2]|0;f=G}else f=c[p>>2]|0;c[q>>2]=g+1;a[f+g>>0]=r;f=c[L>>2]|0;H=c[f>>2]|0;c[f>>2]=H+-1;if(!H){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}}else{H=f+4|0;f=c[H>>2]|0;c[H>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;aC(b,287649,293);break}case 444:{aC(b,287467,0);break}case 448:{qw(k,4);break}case 457:{if((r|0)==-1)aC(b,287673,293);p=c[K>>2]|0;q=p+4|0;g=c[q>>2]|0;n=p+8|0;o=c[n>>2]|0;if((g+1|0)>>>0>o>>>0){if(o>>>0>2147483646)aC(b,287467,0);m=o<<1;i=c[x>>2]|0;f=c[p>>2]|0;j=c[i+12>>2]|0;k=(f|0)!=0;g=j+4|0;h=jg[c[j>>2]&31](c[g>>2]|0,f,o,m)|0;if((m|0)!=0&(h|0)==0){if(!(c[j+140>>2]|0))qw(i,4);Tw(i,1);f=jg[c[j>>2]&31](c[g>>2]|0,f,o,m)|0;if(!f)qw(i,4);else H=f}else H=h;g=j+12|0;c[g>>2]=(k?0-o|0:0)+m+(c[g>>2]|0);c[p>>2]=H;c[n>>2]=m;g=c[q>>2]|0;f=H}else f=c[p>>2]|0;c[q>>2]=g+1;a[f+g>>0]=r;f=c[L>>2]|0;H=c[f>>2]|0;c[f>>2]=H+-1;if(!H){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}}else{H=f+4|0;f=c[H>>2]|0;c[H>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;aC(b,287673,293);break}case 484:{aC(b,287467,0);break}case 488:{qw(j,4);break}case 494:{aC(b,287467,0);break}case 498:{qw(j,4);break}}}while(0);p=c[K>>2]|0;q=p+4|0;g=c[q>>2]|0;n=p+8|0;o=c[n>>2]|0;if((g+1|0)>>>0>o>>>0){if(o>>>0>2147483646)aC(b,287467,0);i=o<<1;j=c[b+52>>2]|0;f=c[p>>2]|0;k=c[j+12>>2]|0;m=(f|0)!=0;g=k+4|0;h=jg[c[k>>2]&31](c[g>>2]|0,f,o,i)|0;if((i|0)!=0&(h|0)==0){if(!(c[k+140>>2]|0))qw(j,4);Tw(j,1);f=jg[c[k>>2]&31](c[g>>2]|0,f,o,i)|0;if(!f)qw(j,4);else J=f}else J=h;g=k+12|0;c[g>>2]=(m?0-o|0:0)+i+(c[g>>2]|0);c[p>>2]=J;c[n>>2]=i;g=c[q>>2]|0;f=J}else f=c[p>>2]|0;c[q>>2]=g+1;a[f+g>>0]=I;g=c[L>>2]|0;L=c[g>>2]|0;c[g>>2]=L+-1;if(!L){h=ig[c[g+8>>2]&63](c[g+16>>2]|0,c[g+12>>2]|0,M)|0;f=c[M>>2]|0;if((h|0)==0|(f|0)==0)f=-1;else{c[g>>2]=f+-1;c[g+4>>2]=h+1;f=d[h>>0]|0}}else{M=g+4|0;f=c[M>>2]|0;c[M>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;f=c[K>>2]|0;j=c[b+52>>2]|0;f=xx(j,(c[f>>2]|0)+1|0,(c[f+4>>2]|0)+-2|0)|0;k=j+8|0;h=c[k>>2]|0;c[k>>2]=h+16;c[h>>2]=f;c[h+8>>2]=(a[f+4>>0]|64)&255;h=c[b+64>>2]|0;i=(c[k>>2]|0)+-16|0;g=Cx(h,i)|0;if((g|0)==316344)g=Bx(j,h,i)|0;h=g+8|0;if(!(c[h>>2]|0)){c[g>>2]=1;c[h>>2]=1;if((c[(c[j+12>>2]|0)+12>>2]|0)>0)Sw(j)}else f=c[g+16>>2]|0;c[k>>2]=(c[k>>2]|0)+-16;c[e>>2]=f;b=293;l=N;return b|0}case 527:{q=c[K>>2]|0;r=q+4|0;g=c[r>>2]|0;o=q+8|0;p=c[o>>2]|0;if((g+1|0)>>>0>p>>>0){if(p>>>0>2147483646)aC(b,287467,0);j=p<<1;k=c[b+52>>2]|0;g=c[q>>2]|0;m=c[k+12>>2]|0;n=(g|0)!=0;h=m+4|0;i=jg[c[m>>2]&31](c[h>>2]|0,g,p,j)|0;if((j|0)!=0&(i|0)==0){if(!(c[m+140>>2]|0))qw(k,4);Tw(k,1);g=jg[c[m>>2]&31](c[h>>2]|0,g,p,j)|0;if(!g)qw(k,4);else f=g}else f=i;g=m+12|0;c[g>>2]=(n?0-p|0:0)+j+(c[g>>2]|0);c[q>>2]=f;c[o>>2]=j;g=c[r>>2]|0}else f=c[q>>2]|0;c[r>>2]=g+1;a[f+g>>0]=46;f=c[L>>2]|0;K=c[f>>2]|0;c[f>>2]=K+-1;if(!K){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}}else{K=f+4|0;f=c[K>>2]|0;c[K>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;if((f|0)!=46){if((f+-48|0)>>>0>9){b=46;l=N;return b|0}b=fC(b,e)|0;l=N;return b|0}f=c[L>>2]|0;e=c[f>>2]|0;c[f>>2]=e+-1;if(!e){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}}else{e=f+4|0;f=c[e>>2]|0;c[e>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;if((f|0)!=46){b=280;l=N;return b|0}g=c[L>>2]|0;L=c[g>>2]|0;c[g>>2]=L+-1;if(!L){h=ig[c[g+8>>2]&63](c[g+16>>2]|0,c[g+12>>2]|0,M)|0;f=c[M>>2]|0;if((h|0)==0|(f|0)==0)f=-1;else{c[g>>2]=f+-1;c[g+4>>2]=h+1;f=d[h>>0]|0}}else{M=g+4|0;f=c[M>>2]|0;c[M>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;b=281;l=N;return b|0}case 556:{b=fC(b,e)|0;l=N;return b|0}case 557:{if(!(a[287022+(w+1)>>0]&1)){g=c[L>>2]|0;L=c[g>>2]|0;c[g>>2]=L+-1;if(!L){h=ig[c[g+8>>2]&63](c[g+16>>2]|0,c[g+12>>2]|0,M)|0;f=c[M>>2]|0;if((h|0)==0|(f|0)==0)f=-1;else{c[g>>2]=f+-1;c[g+4>>2]=h+1;f=d[h>>0]|0}}else{M=g+4|0;f=c[M>>2]|0;c[M>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;b=w;l=N;return b|0}s=b+52|0;f=w;while(1){q=c[K>>2]|0;r=q+4|0;g=c[r>>2]|0;o=q+8|0;p=c[o>>2]|0;if((g+1|0)>>>0>p>>>0){if(p>>>0>2147483646){u=562;break}j=p<<1;k=c[s>>2]|0;h=c[q>>2]|0;m=c[k+12>>2]|0;n=(h|0)!=0;i=m+4|0;g=jg[c[m>>2]&31](c[i>>2]|0,h,p,j)|0;if((j|0)!=0&(g|0)==0){if(!(c[m+140>>2]|0)){u=566;break}Tw(k,1);g=jg[c[m>>2]&31](c[i>>2]|0,h,p,j)|0;if(!g){u=566;break}}h=m+12|0;c[h>>2]=(n?0-p|0:0)+j+(c[h>>2]|0);c[q>>2]=g;c[o>>2]=j;h=c[r>>2]|0}else{h=g;g=c[q>>2]|0}c[r>>2]=h+1;a[g+h>>0]=f;f=c[L>>2]|0;J=c[f>>2]|0;c[f>>2]=J+-1;if(!J){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,M)|0;h=c[M>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}}else{J=f+4|0;f=c[J>>2]|0;c[J>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;if(!(a[287022+(f+1)>>0]&3)){u=574;break}}if((u|0)==562)aC(b,287467,0);else if((u|0)==566)qw(k,4);else if((u|0)==574){f=c[K>>2]|0;j=c[s>>2]|0;f=xx(j,c[f>>2]|0,c[f+4>>2]|0)|0;k=j+8|0;h=c[k>>2]|0;c[k>>2]=h+16;c[h>>2]=f;c[h+8>>2]=(a[f+4>>0]|64)&255;h=c[b+64>>2]|0;i=(c[k>>2]|0)+-16|0;g=Cx(h,i)|0;if((g|0)==316344)g=Bx(j,h,i)|0;h=g+8|0;if(!(c[h>>2]|0)){c[g>>2]=1;c[h>>2]=1;if((c[(c[j+12>>2]|0)+12>>2]|0)>0)Sw(j)}else f=c[g+16>>2]|0;c[k>>2]=(c[k>>2]|0)+-16;c[e>>2]=f;if((a[f+4>>0]|0)!=4){b=292;l=N;return b|0}f=a[f+6>>0]|0;if(!(f<<24>>24)){b=292;l=N;return b|0}b=f&255|256;l=N;return b|0}break}case 589:{l=N;return f|0}}return 0}function dC(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+16|0;u=w;v=c[b>>2]|0;t=b+60|0;p=c[t>>2]|0;q=p+4|0;f=c[q>>2]|0;n=p+8|0;o=c[n>>2]|0;if((f+1|0)>>>0>o>>>0){if(o>>>0>2147483646)aC(b,287467,0);i=o<<1;j=c[b+52>>2]|0;f=c[p>>2]|0;k=c[j+12>>2]|0;m=(f|0)!=0;g=k+4|0;h=jg[c[k>>2]&31](c[g>>2]|0,f,o,i)|0;if((i|0)!=0&(h|0)==0){if(!(c[k+140>>2]|0))qw(j,4);Tw(j,1);f=jg[c[k>>2]&31](c[g>>2]|0,f,o,i)|0;if(!f)qw(j,4);else e=f}else e=h;f=k+12|0;c[f>>2]=(m?0-o|0:0)+i+(c[f>>2]|0);c[p>>2]=e;c[n>>2]=i;f=c[q>>2]|0}else e=c[p>>2]|0;c[q>>2]=f+1;a[e+f>>0]=v;s=b+56|0;e=c[s>>2]|0;r=c[e>>2]|0;c[e>>2]=r+-1;if(!r){f=ig[c[e+8>>2]&63](c[e+16>>2]|0,c[e+12>>2]|0,u)|0;g=c[u>>2]|0;if((f|0)==0|(g|0)==0)e=-1;else{c[e>>2]=g+-1;c[e+4>>2]=f+1;e=d[f>>0]|0}}else{r=e+4|0;e=c[r>>2]|0;c[r>>2]=e+1;e=d[e>>0]|0}c[b>>2]=e;if((e|0)!=61){u=e;b=0;v=(u|0)!=(v|0);v=v<<31>>31;v=v^b;l=w;return v|0}r=b+52|0;e=0;while(1){n=c[t>>2]|0;q=n+4|0;f=c[q>>2]|0;o=n+8|0;p=c[o>>2]|0;if((f+1|0)>>>0>p>>>0){if(p>>>0>2147483646){g=20;break}i=p<<1;j=c[r>>2]|0;f=c[n>>2]|0;k=c[j+12>>2]|0;m=(f|0)!=0;h=k+4|0;g=jg[c[k>>2]&31](c[h>>2]|0,f,p,i)|0;if((i|0)!=0&(g|0)==0){if(!(c[k+140>>2]|0)){g=24;break}Tw(j,1);g=jg[c[k>>2]&31](c[h>>2]|0,f,p,i)|0;if(!g){g=24;break}}f=k+12|0;c[f>>2]=(m?0-p|0:0)+i+(c[f>>2]|0);c[n>>2]=g;c[o>>2]=i;f=c[q>>2]|0}else g=c[n>>2]|0;c[q>>2]=f+1;a[g+f>>0]=61;f=c[s>>2]|0;q=c[f>>2]|0;c[f>>2]=q+-1;if(!q){g=ig[c[f+8>>2]&63](c[f+16>>2]|0,c[f+12>>2]|0,u)|0;h=c[u>>2]|0;if((g|0)==0|(h|0)==0)f=-1;else{c[f>>2]=h+-1;c[f+4>>2]=g+1;f=d[g>>0]|0}}else{q=f+4|0;f=c[q>>2]|0;c[q>>2]=f+1;f=d[f>>0]|0}c[b>>2]=f;e=e+1|0;if((f|0)!=61){g=32;break}}if((g|0)==20)aC(b,287467,0);else if((g|0)==24)qw(j,4);else if((g|0)==32){v=(f|0)!=(v|0);v=v<<31>>31;v=v^e;l=w;return v|0}return 0}function eC(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+16|0;A=E;C=E+8|0;y=b+4|0;z=c[y>>2]|0;t=c[b>>2]|0;D=b+60|0;s=c[D>>2]|0;u=s+4|0;i=c[u>>2]|0;q=s+8|0;r=c[q>>2]|0;if((i+1|0)>>>0>r>>>0){if(r>>>0>2147483646)aC(b,287467,0);m=r<<1;n=c[b+52>>2]|0;i=c[s>>2]|0;o=c[n+12>>2]|0;p=(i|0)!=0;j=o+4|0;k=jg[c[o>>2]&31](c[j>>2]|0,i,r,m)|0;if((m|0)!=0&(k|0)==0){if(!(c[o+140>>2]|0))qw(n,4);Tw(n,1);i=jg[c[o>>2]&31](c[j>>2]|0,i,r,m)|0;if(!i)qw(n,4);else h=i}else h=k;i=o+12|0;c[i>>2]=(p?0-r|0:0)+m+(c[i>>2]|0);c[s>>2]=h;c[q>>2]=m;i=c[u>>2]|0}else h=c[s>>2]|0;c[u>>2]=i+1;a[h+i>>0]=t;x=b+56|0;h=c[x>>2]|0;w=c[h>>2]|0;c[h>>2]=w+-1;if(!w){i=ig[c[h+8>>2]&63](c[h+16>>2]|0,c[h+12>>2]|0,C)|0;j=c[C>>2]|0;if((i|0)==0|(j|0)==0)h=-1;else{c[h>>2]=j+-1;c[h+4>>2]=i+1;h=d[i>>0]|0}}else{w=h+4|0;h=c[w>>2]|0;c[w>>2]=h+1;h=d[h>>0]|0}c[b>>2]=h;switch(h|0){case 13:case 10:{i=c[x>>2]|0;w=c[i>>2]|0;c[i>>2]=w+-1;if(!w){j=ig[c[i+8>>2]&63](c[i+16>>2]|0,c[i+12>>2]|0,C)|0;k=c[C>>2]|0;if((j|0)==0|(k|0)==0)i=-1;else{c[i>>2]=k+-1;c[i+4>>2]=j+1;i=d[j>>0]|0}}else{w=i+4|0;i=c[w>>2]|0;c[w>>2]=i+1;i=d[i>>0]|0}c[b>>2]=i;switch(i|0){case 13:case 10:{if((i|0)!=(h|0)){j=c[x>>2]|0;w=c[j>>2]|0;c[j>>2]=w+-1;if(!w){h=ig[c[j+8>>2]&63](c[j+16>>2]|0,c[j+12>>2]|0,C)|0;i=c[C>>2]|0;if((h|0)==0|(i|0)==0)h=-1;else{c[j>>2]=i+-1;c[j+4>>2]=h+1;h=d[h>>0]|0}}else{w=j+4|0;h=c[w>>2]|0;c[w>>2]=h+1;h=d[h>>0]|0}c[b>>2]=h}break}default:h=i}w=(c[y>>2]|0)+1|0;c[y>>2]=w;if((w|0)==2147483647)aC(b,287503,0);else v=h;break}default:v=h}u=(e|0)==0;w=b+52|0;h=v;a:while(1){b:do if(u)while(1){switch(h|0){case -1:{B=41;break a}case 93:{B=42;break b}case 13:case 10:break b;default:{}}h=c[x>>2]|0;v=c[h>>2]|0;c[h>>2]=v+-1;if(!v){i=ig[c[h+8>>2]&63](c[h+16>>2]|0,c[h+12>>2]|0,C)|0;j=c[C>>2]|0;if((i|0)==0|(j|0)==0)h=-1;else{c[h>>2]=j+-1;c[h+4>>2]=i+1;h=d[i>>0]|0}}else{v=h+4|0;h=c[v>>2]|0;c[v>>2]=h+1;h=d[h>>0]|0}c[b>>2]=h}else while(1){switch(h|0){case -1:{B=41;break a}case 93:{B=42;break b}case 13:case 10:break b;default:{}}s=c[D>>2]|0;t=s+4|0;i=c[t>>2]|0;q=s+8|0;r=c[q>>2]|0;if((i+1|0)>>>0>r>>>0){if(r>>>0>2147483646){B=87;break a}n=r<<1;m=c[w>>2]|0;j=c[s>>2]|0;o=c[m+12>>2]|0;p=(j|0)!=0;k=o+4|0;i=jg[c[o>>2]&31](c[k>>2]|0,j,r,n)|0;if((n|0)!=0&(i|0)==0){if(!(c[o+140>>2]|0)){B=91;break a}Tw(m,1);i=jg[c[o>>2]&31](c[k>>2]|0,j,r,n)|0;if(!i){B=91;break a}}j=o+12|0;c[j>>2]=(p?0-r|0:0)+n+(c[j>>2]|0);c[s>>2]=i;c[q>>2]=n;j=c[t>>2]|0}else{j=i;i=c[s>>2]|0}c[t>>2]=j+1;a[i+j>>0]=h;h=c[x>>2]|0;v=c[h>>2]|0;c[h>>2]=v+-1;if(!v){i=ig[c[h+8>>2]&63](c[h+16>>2]|0,c[h+12>>2]|0,C)|0;j=c[C>>2]|0;if((i|0)==0|(j|0)==0)h=-1;else{c[h>>2]=j+-1;c[h+4>>2]=i+1;h=d[i>>0]|0}}else{v=h+4|0;h=c[v>>2]|0;c[v>>2]=h+1;h=d[h>>0]|0}c[b>>2]=h}while(0);if((B|0)==42){B=0;v=(dC(b)|0)==(f|0);h=c[b>>2]|0;if(v){B=43;break}else continue}r=c[D>>2]|0;s=r+4|0;h=c[s>>2]|0;p=r+8|0;q=c[p>>2]|0;if((h+1|0)>>>0>q>>>0){if(q>>>0>2147483646){B=61;break}m=q<<1;k=c[w>>2]|0;i=c[r>>2]|0;n=c[k+12>>2]|0;o=(i|0)!=0;j=n+4|0;h=jg[c[n>>2]&31](c[j>>2]|0,i,q,m)|0;if((m|0)!=0&(h|0)==0){if(!(c[n+140>>2]|0)){B=65;break}Tw(k,1);h=jg[c[n>>2]&31](c[j>>2]|0,i,q,m)|0;if(!h){B=65;break}}i=n+12|0;c[i>>2]=(o?0-q|0:0)+m+(c[i>>2]|0);c[r>>2]=h;c[p>>2]=m;i=c[s>>2]|0}else{i=h;h=c[r>>2]|0}c[s>>2]=i+1;a[h+i>>0]=10;h=c[b>>2]|0;i=c[x>>2]|0;v=c[i>>2]|0;c[i>>2]=v+-1;if(!v){j=ig[c[i+8>>2]&63](c[i+16>>2]|0,c[i+12>>2]|0,C)|0;k=c[C>>2]|0;if((j|0)==0|(k|0)==0)i=-1;else{c[i>>2]=k+-1;c[i+4>>2]=j+1;i=d[j>>0]|0}}else{v=i+4|0;i=c[v>>2]|0;c[v>>2]=i+1;i=d[i>>0]|0}c[b>>2]=i;switch(i|0){case 13:case 10:{if((i|0)!=(h|0)){h=c[x>>2]|0;v=c[h>>2]|0;c[h>>2]=v+-1;if(!v){i=ig[c[h+8>>2]&63](c[h+16>>2]|0,c[h+12>>2]|0,C)|0;j=c[C>>2]|0;if((i|0)==0|(j|0)==0)h=-1;else{c[h>>2]=j+-1;c[h+4>>2]=i+1;h=d[i>>0]|0}}else{v=h+4|0;h=c[v>>2]|0;c[v>>2]=h+1;h=d[h>>0]|0}c[b>>2]=h}break}default:h=i}v=(c[y>>2]|0)+1|0;c[y>>2]=v;if((v|0)==2147483647){B=81;break}if(!u)continue;c[(c[D>>2]|0)+4>>2]=0}if((B|0)==41){E=c[w>>2]|0;c[A>>2]=e|0?287721:287728;c[A+4>>2]=z;aC(b,Zw(E,287736,A)|0,289)}else if((B|0)==43){s=c[D>>2]|0;t=s+4|0;i=c[t>>2]|0;q=s+8|0;r=c[q>>2]|0;if((i+1|0)>>>0>r>>>0){if(r>>>0>2147483646)aC(b,287467,0);m=r<<1;n=c[w>>2]|0;i=c[s>>2]|0;o=c[n+12>>2]|0;p=(i|0)!=0;j=o+4|0;k=jg[c[o>>2]&31](c[j>>2]|0,i,r,m)|0;if((m|0)!=0&(k|0)==0){if(!(c[o+140>>2]|0))qw(n,4);Tw(n,1);i=jg[c[o>>2]&31](c[j>>2]|0,i,r,m)|0;if(!i)qw(n,4);else g=i}else g=k;i=o+12|0;c[i>>2]=(p?0-r|0:0)+m+(c[i>>2]|0);c[s>>2]=g;c[q>>2]=m;i=c[t>>2]|0}else g=c[s>>2]|0;c[t>>2]=i+1;a[g+i>>0]=h;h=c[x>>2]|0;B=c[h>>2]|0;c[h>>2]=B+-1;if(!B){i=ig[c[h+8>>2]&63](c[h+16>>2]|0,c[h+12>>2]|0,C)|0;g=c[C>>2]|0;if((i|0)==0|(g|0)==0)g=-1;else{c[h>>2]=g+-1;c[h+4>>2]=i+1;g=d[i>>0]|0}}else{C=h+4|0;g=c[C>>2]|0;c[C>>2]=g+1;g=d[g>>0]|0}c[b>>2]=g;if(u){l=E;return}m=c[D>>2]|0;g=f+2|0;k=c[w>>2]|0;g=xx(k,(c[m>>2]|0)+g|0,(c[m+4>>2]|0)-(g<<1)|0)|0;m=k+8|0;i=c[m>>2]|0;c[m>>2]=i+16;c[i>>2]=g;c[i+8>>2]=(a[g+4>>0]|64)&255;i=c[b+64>>2]|0;j=(c[m>>2]|0)+-16|0;h=Cx(i,j)|0;if((h|0)==316344)h=Bx(k,i,j)|0;i=h+8|0;if(!(c[i>>2]|0)){c[h>>2]=1;c[i>>2]=1;if((c[(c[k+12>>2]|0)+12>>2]|0)>0)Sw(k)}else g=c[h+16>>2]|0;c[m>>2]=(c[m>>2]|0)+-16;c[e>>2]=g;l=E;return}else if((B|0)==61)aC(b,287467,0);else if((B|0)==65)qw(k,4);else if((B|0)==81)aC(b,287503,0);else if((B|0)==87)aC(b,287467,0);else if((B|0)==91)qw(m,4)}function fC(b,e){b=b|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;H=l;l=l+32|0;A=H+16|0;G=H;x=c[b>>2]|0;E=b+60|0;v=c[E>>2]|0;w=v+4|0;m=c[w>>2]|0;t=v+8|0;u=c[t>>2]|0;if((m+1|0)>>>0>u>>>0){if(u>>>0>2147483646)aC(b,287467,0);p=u<<1;q=c[b+52>>2]|0;m=c[v>>2]|0;r=c[q+12>>2]|0;s=(m|0)!=0;n=r+4|0;o=jg[c[r>>2]&31](c[n>>2]|0,m,u,p)|0;if((p|0)!=0&(o|0)==0){if(!(c[r+140>>2]|0))qw(q,4);Tw(q,1);m=jg[c[r>>2]&31](c[n>>2]|0,m,u,p)|0;if(!m)qw(q,4);else j=m}else j=o;m=r+12|0;c[m>>2]=(s?0-u|0:0)+p+(c[m>>2]|0);c[v>>2]=j;c[t>>2]=p;m=c[w>>2]|0}else j=c[v>>2]|0;c[w>>2]=m+1;a[j+m>>0]=x;z=b+56|0;j=c[z>>2]|0;y=c[j>>2]|0;c[j>>2]=y+-1;if(!y){m=ig[c[j+8>>2]&63](c[j+16>>2]|0,c[j+12>>2]|0,A)|0;n=c[A>>2]|0;if((m|0)==0|(n|0)==0)j=-1;else{c[j>>2]=n+-1;c[j+4>>2]=m+1;j=d[m>>0]|0}}else{y=j+4|0;j=c[y>>2]|0;c[y>>2]=j+1;j=d[j>>0]|0}c[b>>2]=j;a:do if((x|0)==48){switch(j|0){case 88:case 120:break;default:{x=287698;break a}}v=c[E>>2]|0;w=v+4|0;m=c[w>>2]|0;t=v+8|0;u=c[t>>2]|0;if((m+1|0)>>>0>u>>>0){if(u>>>0>2147483646)aC(b,287467,0);p=u<<1;q=c[b+52>>2]|0;m=c[v>>2]|0;r=c[q+12>>2]|0;s=(m|0)!=0;n=r+4|0;o=jg[c[r>>2]&31](c[n>>2]|0,m,u,p)|0;if((p|0)!=0&(o|0)==0){if(!(c[r+140>>2]|0))qw(q,4);Tw(q,1);m=jg[c[r>>2]&31](c[n>>2]|0,m,u,p)|0;if(!m)qw(q,4);else k=m}else k=o;m=r+12|0;c[m>>2]=(s?0-u|0:0)+p+(c[m>>2]|0);c[v>>2]=k;c[t>>2]=p;m=c[w>>2]|0}else k=c[v>>2]|0;c[w>>2]=m+1;a[k+m>>0]=j;j=c[z>>2]|0;y=c[j>>2]|0;c[j>>2]=y+-1;if(!y){k=ig[c[j+8>>2]&63](c[j+16>>2]|0,c[j+12>>2]|0,A)|0;m=c[A>>2]|0;if((k|0)==0|(m|0)==0)j=-1;else{c[j>>2]=m+-1;c[j+4>>2]=k+1;j=d[k>>0]|0}}else{y=j+4|0;j=c[y>>2]|0;c[y>>2]=j+1;j=d[j>>0]|0}c[b>>2]=j;x=287701}else x=287698;while(0);y=b+52|0;w=x+1|0;b:while(1){if(!((j|0)!=(a[x>>0]|0)?(j|0)!=(a[w>>0]|0):0))B=35;c:do if((B|0)==35){B=0;u=c[E>>2]|0;v=u+4|0;k=c[v>>2]|0;s=u+8|0;t=c[s>>2]|0;if((k+1|0)>>>0>t>>>0){if(t>>>0>2147483646){B=38;break b}p=t<<1;o=c[y>>2]|0;m=c[u>>2]|0;q=c[o+12>>2]|0;r=(m|0)!=0;n=q+4|0;k=jg[c[q>>2]&31](c[n>>2]|0,m,t,p)|0;if((p|0)!=0&(k|0)==0){if(!(c[q+140>>2]|0)){B=42;break b}Tw(o,1);k=jg[c[q>>2]&31](c[n>>2]|0,m,t,p)|0;if(!k){B=42;break b}}m=q+12|0;c[m>>2]=(r?0-t|0:0)+p+(c[m>>2]|0);c[u>>2]=k;c[s>>2]=p;m=c[v>>2]|0}else{m=k;k=c[u>>2]|0}c[v>>2]=m+1;a[k+m>>0]=j;j=c[z>>2]|0;v=c[j>>2]|0;c[j>>2]=v+-1;if(!v){k=ig[c[j+8>>2]&63](c[j+16>>2]|0,c[j+12>>2]|0,A)|0;m=c[A>>2]|0;if((k|0)==0|(m|0)==0)j=-1;else{c[j>>2]=m+-1;c[j+4>>2]=k+1;j=d[k>>0]|0}}else{v=j+4|0;j=c[v>>2]|0;c[v>>2]=j+1;j=d[j>>0]|0}c[b>>2]=j;switch(j|0){case 43:case 45:break;default:break c}u=c[E>>2]|0;v=u+4|0;k=c[v>>2]|0;s=u+8|0;t=c[s>>2]|0;if((k+1|0)>>>0>t>>>0){if(t>>>0>2147483646){B=53;break b}p=t<<1;o=c[y>>2]|0;m=c[u>>2]|0;q=c[o+12>>2]|0;r=(m|0)!=0;n=q+4|0;k=jg[c[q>>2]&31](c[n>>2]|0,m,t,p)|0;if((p|0)!=0&(k|0)==0){if(!(c[q+140>>2]|0)){B=57;break b}Tw(o,1);k=jg[c[q>>2]&31](c[n>>2]|0,m,t,p)|0;if(!k){B=57;break b}}m=q+12|0;c[m>>2]=(r?0-t|0:0)+p+(c[m>>2]|0);c[u>>2]=k;c[s>>2]=p;m=c[v>>2]|0}else{m=k;k=c[u>>2]|0}c[v>>2]=m+1;a[k+m>>0]=j;j=c[z>>2]|0;v=c[j>>2]|0;c[j>>2]=v+-1;if(!v){k=ig[c[j+8>>2]&63](c[j+16>>2]|0,c[j+12>>2]|0,A)|0;m=c[A>>2]|0;if((k|0)==0|(m|0)==0)j=-1;else{c[j>>2]=m+-1;c[j+4>>2]=k+1;j=d[k>>0]|0}}else{v=j+4|0;j=c[v>>2]|0;c[v>>2]=j+1;j=d[j>>0]|0}c[b>>2]=j}while(0);do if(!(a[287022+(j+1)>>0]&16)){t=c[E>>2]|0;u=t+4|0;k=c[u>>2]|0;r=t+8|0;s=c[r>>2]|0;m=(k+1|0)>>>0>s>>>0;if((j|0)!=46){B=96;break b}if(m){if(s>>>0>2147483646){B=84;break b}o=s<<1;n=c[y>>2]|0;k=c[t>>2]|0;p=c[n+12>>2]|0;q=(k|0)!=0;m=p+4|0;j=jg[c[p>>2]&31](c[m>>2]|0,k,s,o)|0;if((o|0)!=0&(j|0)==0){if(!(c[p+140>>2]|0)){B=88;break b}Tw(n,1);j=jg[c[p>>2]&31](c[m>>2]|0,k,s,o)|0;if(!j){B=88;break b}}k=p+12|0;c[k>>2]=(q?0-s|0:0)+o+(c[k>>2]|0);c[t>>2]=j;c[r>>2]=o;k=c[u>>2]|0}else j=c[t>>2]|0;c[u>>2]=k+1;a[j+k>>0]=46;j=c[z>>2]|0;v=c[j>>2]|0;c[j>>2]=v+-1;if(v|0){v=j+4|0;j=c[v>>2]|0;c[v>>2]=j+1;j=d[j>>0]|0;break}k=ig[c[j+8>>2]&63](c[j+16>>2]|0,c[j+12>>2]|0,A)|0;m=c[A>>2]|0;if((k|0)==0|(m|0)==0)j=-1;else{c[j>>2]=m+-1;c[j+4>>2]=k+1;j=d[k>>0]|0}}else{u=c[E>>2]|0;v=u+4|0;k=c[v>>2]|0;s=u+8|0;t=c[s>>2]|0;if((k+1|0)>>>0>t>>>0){if(t>>>0>2147483646){B=69;break b}p=t<<1;o=c[y>>2]|0;m=c[u>>2]|0;q=c[o+12>>2]|0;r=(m|0)!=0;n=q+4|0;k=jg[c[q>>2]&31](c[n>>2]|0,m,t,p)|0;if((p|0)!=0&(k|0)==0){if(!(c[q+140>>2]|0)){B=73;break b}Tw(o,1);k=jg[c[q>>2]&31](c[n>>2]|0,m,t,p)|0;if(!k){B=73;break b}}m=q+12|0;c[m>>2]=(r?0-t|0:0)+p+(c[m>>2]|0);c[u>>2]=k;c[s>>2]=p;m=c[v>>2]|0}else{m=k;k=c[u>>2]|0}c[v>>2]=m+1;a[k+m>>0]=j;j=c[z>>2]|0;v=c[j>>2]|0;c[j>>2]=v+-1;if(v|0){v=j+4|0;j=c[v>>2]|0;c[v>>2]=j+1;j=d[j>>0]|0;break}k=ig[c[j+8>>2]&63](c[j+16>>2]|0,c[j+12>>2]|0,A)|0;m=c[A>>2]|0;if((k|0)==0|(m|0)==0)j=-1;else{c[j>>2]=m+-1;c[j+4>>2]=k+1;j=d[k>>0]|0}}while(0);c[b>>2]=j}if((B|0)==38)aC(b,287467,0);else if((B|0)==42)qw(o,4);else if((B|0)==53)aC(b,287467,0);else if((B|0)==57)qw(o,4);else if((B|0)==69)aC(b,287467,0);else if((B|0)==73)qw(o,4);else if((B|0)==84)aC(b,287467,0);else if((B|0)==88)qw(n,4);else if((B|0)==96){if(m){if(s>>>0>2147483646)aC(b,287467,0);q=s<<1;n=c[y>>2]|0;j=c[t>>2]|0;o=c[n+12>>2]|0;p=(j|0)!=0;k=o+4|0;m=jg[c[o>>2]&31](c[k>>2]|0,j,s,q)|0;if((q|0)!=0&(m|0)==0){if(!(c[o+140>>2]|0))qw(n,4);Tw(n,1);j=jg[c[o>>2]&31](c[k>>2]|0,j,s,q)|0;if(!j)qw(n,4);else i=j}else i=m;j=o+12|0;c[j>>2]=(p?0-s|0:0)+q+(c[j>>2]|0);c[t>>2]=i;c[r>>2]=q;j=c[u>>2]|0}else{j=k;i=c[t>>2]|0}c[u>>2]=j+1;a[i+j>>0]=0;k=b+80|0;j=a[k>>0]|0;if(j<<24>>24!=46?(C=c[E>>2]|0,g=c[C+4>>2]|0,C=c[C>>2]|0,g|0):0)do{g=g+-1|0;i=C+g|0;if((a[i>>0]|0)==46)a[i>>0]=j}while((g|0)!=0);if(!(Ww(c[c[E>>2]>>2]|0,G)|0)){i=a[k>>0]|0;a[k>>0]=46;if(i<<24>>24!=46?(D=c[E>>2]|0,f=c[D+4>>2]|0,D=c[D>>2]|0,f|0):0)do{f=f+-1|0;g=D+f|0;if((a[g>>0]|0)==i<<24>>24)a[g>>0]=46}while((f|0)!=0);if(!(Ww(c[c[E>>2]>>2]|0,G)|0)){i=a[k>>0]|0;if(i<<24>>24==46)aC(b,287704,290);g=c[E>>2]|0;f=c[g+4>>2]|0;g=c[g>>2]|0;if(!f)aC(b,287704,290);else F=f;do{F=F+-1|0;f=g+F|0;if((a[f>>0]|0)==i<<24>>24)a[f>>0]=46}while((F|0)!=0);aC(b,287704,290)}}if((c[G+8>>2]|0)==19){b=G;G=c[b+4>>2]|0;c[e>>2]=c[b>>2];c[e+4>>2]=G;e=291;l=H;return e|0}else{h[e>>3]=+h[G>>3];e=290;l=H;return e|0}}return 0}function gC(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,i=0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0.0;t=l;l=l+32|0;s=t+16|0;q=t;r=f+4|0;i=c[b+16>>2]|0;do if((f|0)<=-4){if((r|0)>=-1000999){f=(c[b+8>>2]|0)+(r<<4)|0;break}if((r|0)==-1001e3){f=(c[b+12>>2]|0)+40|0;break}g=-1001004-f|0;f=c[i>>2]|0;if((c[f+8>>2]|0)==22)f=316344;else{f=c[f>>2]|0;f=(g|0)>(d[f+6>>0]|0)?316344:f+16+(g+-1<<4)|0}}else{f=(c[i>>2]|0)+(r<<4)|0;f=f>>>0<(c[b+8>>2]|0)>>>0?f:316344}while(0);switch(c[f+8>>2]&15){case 7:{m=(c[f>>2]|0)+24|0;break}case 2:{m=c[f>>2]|0;break}default:m=0}n=(c[e>>2]|0)-m|0;o=(n|0)/12|0;i=c[b+12>>2]|0;p=b+8|0;k=c[p>>2]|0;g=i+280+(((287864>>>0)%127|0)<<2)|0;f=c[g>>2]|0;if(JN(287864,f+16|0)|0){f=xx(b,287864,13)|0;c[g>>2]=f}c[k>>2]=f;c[k+8>>2]=(a[f+4>>0]|64)&255;k=c[p>>2]|0;c[p>>2]=k+16;Kx(b,i+40|0,k,k);k=c[p>>2]|0;f=k+-16|0;do if((c[k+-8>>2]|0)!=19){a:while(1){g=c[f+8>>2]|0;switch(g|0){case 3:{g=19;break a}case 19:{g=22;break a}default:{}}if((g&15|0)!=4){g=29;break}g=Ww((c[f>>2]|0)+16|0,q)|0;f=c[f>>2]|0;if((a[f+4>>0]|0)==4)f=d[f+7>>0]|0;else f=c[f+12>>2]|0;if((g|0)==(f+1|0))f=q;else{g=29;break}}if((g|0)==19){u=+h[f>>3];j=+A(+u);if(!(u!=j)?j>=-9223372036854775808.0&j<9223372036854775808.0:0){f=~~j>>>0;g=28}else g=29}else if((g|0)==22){f=c[f>>2]|0;g=28}if((g|0)==28)break;else if((g|0)==29){f=0;break}}else f=c[f>>2]|0;while(0);c[p>>2]=(c[p>>2]|0)+-16;if((o|0)<(f|0)){q=o<<1;s=(q|0)>(f|0);q=s?f:q;s=q*12|0;s=gw(b,s)|0;PQ(s|0,m|0,n|0)|0;Rv(b,r);b=c[p>>2]|0;b=b+-16|0;c[p>>2]=b;b=s+(q*12|0)|0;c[e>>2]=b;s=s+(o*12|0)|0;l=t;return s|0}c[s>>2]=f;Wx(b,287878,s);q=o<<1;s=(q|0)>(f|0);q=s?f:q;s=q*12|0;s=gw(b,s)|0;PQ(s|0,m|0,n|0)|0;Rv(b,r);b=c[p>>2]|0;b=b+-16|0;c[p>>2]=b;b=s+(q*12|0)|0;c[e>>2]=b;s=s+(o*12|0)|0;l=t;return s|0}function hC(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=l;l=l+8288|0;x=F+72|0;q=F+64|0;s=F+56|0;u=F+48|0;v=F+40|0;z=F+32|0;p=F+24|0;o=F+16|0;D=F;B=F+80|0;E=f+8|0;y=c[E>>2]|0;c[D>>2]=24;t=y+16|0;k=c[t>>2]|0;A=y+8|0;m=c[A>>2]|0;n=m;do if(((c[y+24>>2]|0)-n|0)>384){i=m;j=24;C=5}else{if(((n-(c[y+28>>2]|0)>>4)+5|0)<=999976?(rw(y,166,D)|0)==0:0){i=c[A>>2]|0;j=c[D>>2]|0;C=5;break}c[o>>2]=287951;Wx(y,282290,o)}while(0);if((C|0)==5?(g=k+4|0,h=i+(j<<4)|0,(c[g>>2]|0)>>>0<h>>>0):0)c[g>>2]=h;g=c[f>>2]|0;do switch(a[g+6>>0]|0){case 1:{C=(c[g>>2]|0)+1-(c[f+16>>2]|0)|0;E=c[A>>2]|0;D=E;c[D>>2]=C;c[D+4>>2]=((C|0)<0)<<31>>31;c[E+8>>2]=19;c[A>>2]=E+16;c[f>>2]=g+8;f=1;l=F;return f|0}case 2:{Xv(c[E>>2]|0,(c[f+12>>2]|0)+3|0,e[g+4>>1]|0,0)|0;c[f>>2]=(c[f>>2]|0)+8;f=1;l=F;return f|0}case 4:{c[f>>2]=g+8;g=e[g+4>>1]|0;h=g+3|0;if((h|0)>(c[f+12>>2]|0)){c[p>>2]=g;Wx(y,287969,p);f=0;l=F;return f|0}else{f=c[A>>2]|0;E=(c[c[t>>2]>>2]|0)+(h<<4)|0;E=E>>>0<f>>>0?E:316344;c[f>>2]=c[E>>2];c[f+4>>2]=c[E+4>>2];c[f+8>>2]=c[E+8>>2];c[f+12>>2]=c[E+12>>2];c[A>>2]=(c[A>>2]|0)+16;f=1;l=F;return f|0}}case 5:{h=g+8|0;c[f>>2]=h;i=a[g+7>>0]|0;do if(!(i<<24>>24)){if(!(a[g+14>>0]|0))j=1;else{i=0;do{i=(hC(f)|0)+i|0;h=c[f>>2]|0}while((a[h+6>>0]|0)!=0);j=i+1|0}k=c[E>>2]|0;i=c[g>>2]|0;g=(c[h>>2]|0)-i|0;if((c[(c[k+12>>2]|0)+12>>2]|0)>0)Sw(k);h=xx(k,i,g)|0;g=k+8|0;k=c[g>>2]|0;c[k>>2]=h;c[k+8>>2]=(a[h+4>>0]|64)&255;c[g>>2]=(c[g>>2]|0)+16;c[f>>2]=(c[f>>2]|0)+8;g=0-j|0;k=c[A>>2]|0;h=k+-16|0;i=c[t>>2]|0;if((j|0)<0){g=(c[i>>2]|0)+(g<<4)|0;g=g>>>0<k>>>0?g:316344;m=j;i=k;break}if((j|0)>1000999){if((g|0)==-1001e3){g=(c[y+12>>2]|0)+40|0;m=j;i=k;break}g=c[i>>2]|0;if((c[g+8>>2]|0)==22){g=316344;m=j;i=k}else{g=c[g>>2]|0;g=(j+-1001e3|0)>(d[g+6>>0]|0)?316344:g+16+(j+-1001001<<4)|0;m=j;i=k}}else{i=k;C=27}}else{h=c[E>>2]|0;g=c[g>>2]|0;if((c[(c[h+12>>2]|0)+12>>2]|0)>0)Sw(h);g=xx(h,g,(i&255)+-1|0)|0;i=h+8|0;j=c[i>>2]|0;c[j>>2]=g;c[j+8>>2]=(a[g+4>>0]|64)&255;c[i>>2]=(c[i>>2]|0)+16;i=c[A>>2]|0;j=1;h=i+-16|0;g=-1;C=27}while(0);if((C|0)==27){g=i+(g<<4)|0;m=j}i=i+-32|0;if(g>>>0<i>>>0){j=g;do{c[D>>2]=c[j>>2];c[D+4>>2]=c[j+4>>2];c[D+8>>2]=c[j+8>>2];c[D+12>>2]=c[j+12>>2];c[j>>2]=c[i>>2];c[j+4>>2]=c[i+4>>2];c[j+8>>2]=c[i+8>>2];c[j+12>>2]=c[i+12>>2];c[i>>2]=c[D>>2];c[i+4>>2]=c[D+4>>2];c[i+8>>2]=c[D+8>>2];c[i+12>>2]=c[D+12>>2];j=j+16|0;i=i+-16|0}while(j>>>0<i>>>0)}if(g>>>0<h>>>0)do{c[D>>2]=c[g>>2];c[D+4>>2]=c[g+4>>2];c[D+8>>2]=c[g+8>>2];c[D+12>>2]=c[g+12>>2];c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];c[g+8>>2]=c[h+8>>2];c[g+12>>2]=c[h+12>>2];c[h>>2]=c[D>>2];c[h+4>>2]=c[D+4>>2];c[h+8>>2]=c[D+8>>2];c[h+12>>2]=c[D+12>>2];g=g+16|0;h=h+-16|0}while(g>>>0<h>>>0);f=m;l=F;return f|0}case 13:{c[f>>2]=g+8;f=b[g+4>>1]|0;g=f&65535;h=c[A>>2]|0;if(!(f<<16>>16))g=h+(g<<4)|0;else{g=(c[c[t>>2]>>2]|0)+(g<<4)|0;g=g>>>0<h>>>0?g:316344};c[h>>2]=c[g>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[h+12>>2]=c[g+12>>2];c[A>>2]=(c[A>>2]|0)+16;f=1;l=F;return f|0}case 9:{g=B+12|0;c[g>>2]=y;j=B+16|0;c[B>>2]=j;i=B+8|0;c[i>>2]=0;c[B+4>>2]=8192;iC(B,f);g=c[g>>2]|0;h=c[B>>2]|0;i=c[i>>2]|0;if((c[(c[g+12>>2]|0)+12>>2]|0)>0)Sw(g);f=xx(g,h,i)|0;i=g+8|0;g=c[i>>2]|0;c[g>>2]=f;c[g+8>>2]=(a[f+4>>0]|64)&255;g=c[i>>2]|0;c[i>>2]=g+16;if((c[B>>2]|0)!=(j|0)){h=g;g=g+-16|0;do{c[D>>2]=c[g>>2];c[D+4>>2]=c[g+4>>2];c[D+8>>2]=c[g+8>>2];c[D+12>>2]=c[g+12>>2];c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];c[g+8>>2]=c[h+8>>2];c[g+12>>2]=c[h+12>>2];c[h>>2]=c[D>>2];c[h+4>>2]=c[D+4>>2];c[h+8>>2]=c[D+8>>2];c[h+12>>2]=c[D+12>>2];g=g+16|0;h=h+-16|0}while(g>>>0<h>>>0);c[i>>2]=(c[i>>2]|0)+-16}f=1;l=F;return f|0}case 11:{s=B+12|0;c[s>>2]=y;t=B+16|0;c[B>>2]=t;r=B+8|0;c[r>>2]=0;q=B+4|0;c[q>>2]=8192;o=c[g>>2]|0;h=a[g+7>>0]|0;if(!(h<<24>>24)){n=g+8|0;c[f>>2]=n;m=(a[g+14>>0]|0)==0;n=c[n>>2]|0;k=n-o|0;if(k>>>0>8192){j=k>>>0>16384?k:16384;g=gw(y,j)|0;PQ(g|0,c[B>>2]|0,c[r>>2]|0)|0;if((c[B>>2]|0)!=(t|0)){i=c[A>>2]|0;h=i+-16|0;i=i+-32|0;do{c[D>>2]=c[i>>2];c[D+4>>2]=c[i+4>>2];c[D+8>>2]=c[i+8>>2];c[D+12>>2]=c[i+12>>2];c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];c[i+12>>2]=c[h+12>>2];c[h>>2]=c[D>>2];c[h+4>>2]=c[D+4>>2];c[h+8>>2]=c[D+8>>2];c[h+12>>2]=c[D+12>>2];i=i+16|0;h=h+-16|0}while(i>>>0<h>>>0);c[A>>2]=(c[A>>2]|0)+-16}c[B>>2]=g;c[q>>2]=j;h=c[r>>2]|0}else{g=t;h=0}PQ(g+h|0,o|0,k|0)|0;i=(c[r>>2]|0)+k|0;c[r>>2]=i;if(!m)do{E=(jC(B,f,288008)|0)==0;g=c[f>>2]|0;if(E)o=n;else o=(c[g+-8>>2]|0)+((d[g+-1>>0]|0)+-1)|0;p=(a[g+6>>0]|0)==0;n=c[g>>2]|0;m=n-o|0;i=c[s>>2]|0;h=c[q>>2]|0;g=c[r>>2]|0;if((h-g|0)>>>0<m>>>0){k=h<<1;k=(k-g|0)>>>0<m>>>0?g+m|0:k;if(k>>>0<g>>>0|(k-g|0)>>>0<m>>>0)Wx(i,282347,z);h=gw(i,k)|0;PQ(h|0,c[B>>2]|0,c[r>>2]|0)|0;if((c[B>>2]|0)!=(t|0)){j=i+8|0;i=c[j>>2]|0;g=i+-16|0;i=i+-32|0;do{c[D>>2]=c[i>>2];c[D+4>>2]=c[i+4>>2];c[D+8>>2]=c[i+8>>2];c[D+12>>2]=c[i+12>>2];c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];c[g>>2]=c[D>>2];c[g+4>>2]=c[D+4>>2];c[g+8>>2]=c[D+8>>2];c[g+12>>2]=c[D+12>>2];i=i+16|0;g=g+-16|0}while(i>>>0<g>>>0);c[j>>2]=(c[j>>2]|0)+-16}c[B>>2]=h;c[q>>2]=k;g=c[r>>2]|0}else h=c[B>>2]|0;PQ(h+g|0,o|0,m|0)|0;i=(c[r>>2]|0)+m|0;c[r>>2]=i}while(!p)}else{k=(h&255)+-1|0;if(k>>>0>8192){j=k>>>0>16384?k:16384;g=gw(y,j)|0;PQ(g|0,c[B>>2]|0,c[r>>2]|0)|0;if((c[B>>2]|0)!=(t|0)){i=c[A>>2]|0;h=i+-16|0;i=i+-32|0;do{c[D>>2]=c[i>>2];c[D+4>>2]=c[i+4>>2];c[D+8>>2]=c[i+8>>2];c[D+12>>2]=c[i+12>>2];c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];c[i+12>>2]=c[h+12>>2];c[h>>2]=c[D>>2];c[h+4>>2]=c[D+4>>2];c[h+8>>2]=c[D+8>>2];c[h+12>>2]=c[D+12>>2];i=i+16|0;h=h+-16|0}while(i>>>0<h>>>0);c[A>>2]=(c[A>>2]|0)+-16}c[B>>2]=g;c[q>>2]=j;h=c[r>>2]|0}else{g=t;h=0}PQ(g+h|0,o|0,k|0)|0;i=(c[r>>2]|0)+k|0;c[r>>2]=i}c[f>>2]=(c[f>>2]|0)+8;g=c[s>>2]|0;h=c[B>>2]|0;if((c[(c[g+12>>2]|0)+12>>2]|0)>0)Sw(g);f=xx(g,h,i)|0;i=g+8|0;g=c[i>>2]|0;c[g>>2]=f;c[g+8>>2]=(a[f+4>>0]|64)&255;g=c[i>>2]|0;c[i>>2]=g+16;if((c[B>>2]|0)!=(t|0)){h=g;g=g+-16|0;do{c[D>>2]=c[g>>2];c[D+4>>2]=c[g+4>>2];c[D+8>>2]=c[g+8>>2];c[D+12>>2]=c[g+12>>2];c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];c[g+8>>2]=c[h+8>>2];c[g+12>>2]=c[h+12>>2];c[h>>2]=c[D>>2];c[h+4>>2]=c[D+4>>2];c[h+8>>2]=c[D+8>>2];c[h+12>>2]=c[D+12>>2];g=g+16|0;h=h+-16|0}while(g>>>0<h>>>0);c[i>>2]=(c[i>>2]|0)+-16}f=1;l=F;return f|0}case 14:{if(b[g+4>>1]|0){if(!(a[g+7>>0]|0)){i=0;while(1){h=g+8|0;if(!(a[g+14>>0]|0))if(!i){g=h;break}else{g=h;i=i+-1|0;continue}else{E=((a[g+15>>0]|0)==0&1)+i|0;g=h;i=E;continue}}}c[f>>2]=g+8;f=0;l=F;return f|0}h=g+8|0;c[f>>2]=h;i=a[g+7>>0]|0;if(i<<24>>24){h=c[E>>2]|0;g=c[g>>2]|0;if((c[(c[h+12>>2]|0)+12>>2]|0)>0)Sw(h);D=xx(h,g,(i&255)+-1|0)|0;f=h+8|0;E=c[f>>2]|0;c[E>>2]=D;c[E+8>>2]=(a[D+4>>0]|64)&255;c[f>>2]=(c[f>>2]|0)+16;f=1;l=F;return f|0}if(a[g+14>>0]|0){i=0;do{i=(hC(f)|0)+i|0;h=c[f>>2]|0}while((a[h+6>>0]|0)!=0);if(!i){j=h;C=91}else g=i}else{j=h;C=91}if((C|0)==91){i=c[E>>2]|0;h=c[g>>2]|0;g=(c[j>>2]|0)-h|0;if((c[(c[i+12>>2]|0)+12>>2]|0)>0)Sw(i);E=xx(i,h,g)|0;h=i+8|0;g=c[h>>2]|0;c[g>>2]=E;c[g+8>>2]=(a[E+4>>0]|64)&255;c[h>>2]=(c[h>>2]|0)+16;h=c[f>>2]|0;g=1}c[f>>2]=h+8;f=g;l=F;return f|0}case 3:{n=f+12|0;Xv(c[E>>2]|0,(c[n>>2]|0)+3|0,e[g+4>>1]|0,0)|0;q=c[E>>2]|0;o=f+4|0;h=c[o>>2]|0;p=q+8|0;a:do if(h>>>0<g>>>0){i=g;while(1){k=i+-8|0;j=a[i+-2>>0]|0;if(j<<24>>24){if(a[i+-1>>0]|0)C=108}else{m=0;while(1){i=k;while(1){k=i+-8|0;j=a[i+-2>>0]|0;if(!(j<<24>>24)){C=104;break}if(!(a[i+-1>>0]|0)){C=106;break}else i=k}if((C|0)==104){m=m+1|0;continue}else if((C|0)==106)if(!m){C=108;break}else{m=m+-1|0;continue}}}if((C|0)==108){C=0;if(j<<24>>24==14){Xv(c[E>>2]|0,(c[n>>2]|0)+3|0,e[i+-4>>1]|0,0)|0;h=c[p>>2]|0;i=h+-32|0;j=h+-16|0;if((i|0)!=316344&(j|0)!=316344){D=(Ox(q,i,j)|0)==0;h=c[p>>2]|0;if(!D)break}c[p>>2]=h+-16;h=c[o>>2]|0}}if(k>>>0>h>>>0)i=k;else{C=114;break a}}c[p>>2]=h+-32}else C=114;while(0);if((C|0)==114){h=c[p>>2]|0;switch(c[h+-8>>2]&15){case 4:{h=h+-16|0;C=118;break}case 3:{if((c[(c[q+12>>2]|0)+12>>2]|0)>0){Sw(q);h=c[p>>2]|0}h=h+-16|0;Xw(q,h);C=118;break}default:h=0}if((C|0)==118)h=(c[h>>2]|0)+16|0;c[v>>2]=h;Wx(q,288020,v);k=0}h=k+8|0;c[f>>2]=h;j=a[k+7>>0]|0;if(!(j<<24>>24)){if(a[k+14>>0]|0){h=0;do{h=(hC(f)|0)+h|0;i=c[f>>2]|0}while((a[i+6>>0]|0)!=0);if(!h){h=i;C=127}}else C=127;if((C|0)==127){j=c[E>>2]|0;i=c[k>>2]|0;h=(c[h>>2]|0)-i|0;if((c[(c[j+12>>2]|0)+12>>2]|0)>0)Sw(j);E=xx(j,i,h)|0;i=j+8|0;h=c[i>>2]|0;c[h>>2]=E;c[h+8>>2]=(a[E+4>>0]|64)&255;c[i>>2]=(c[i>>2]|0)+16;i=c[f>>2]|0;h=1}c[f>>2]=i+8}else{i=c[E>>2]|0;h=c[k>>2]|0;if((c[(c[i+12>>2]|0)+12>>2]|0)>0)Sw(i);D=xx(i,h,(j&255)+-1|0)|0;h=i+8|0;E=c[h>>2]|0;c[E>>2]=D;c[E+8>>2]=(a[D+4>>0]|64)&255;c[h>>2]=(c[h>>2]|0)+16;h=1}c[f>>2]=g+8;f=h;l=F;return f|0}case 6:{n=c[E>>2]|0;if((c[(c[n+12>>2]|0)+12>>2]|0)>0)Sw(n);C=Dx(n)|0;o=n+8|0;D=c[o>>2]|0;c[D>>2]=C;c[D+8>>2]=69;c[o>>2]=(c[o>>2]|0)+16;D=c[f>>2]|0;c[f>>2]=D+8;if(a[D+7>>0]|0){f=1;l=F;return f|0}p=f+12|0;q=0;b:while(1){c:while(1){g=c[f>>2]|0;switch(a[g+6>>0]|0){case 0:break b;case 14:break;default:break c}g=b[g+4>>1]|0;if(!(g<<16>>16))break;Xv(c[E>>2]|0,(c[p>>2]|0)+3|0,g&65535,0)|0;j=c[f>>2]|0;g=j+8|0;c[f>>2]=g;i=a[j+7>>0]|0;do if(!(i<<24>>24)){if(a[j+14>>0]|0){i=0;do{i=(hC(f)|0)+i|0;g=c[f>>2]|0}while((a[g+6>>0]|0)!=0);if(i){c[f>>2]=g+8;if((i|0)<=1)break;g=c[E>>2]|0;j=0-i|0;if((j|0)<=-1){D=g+8|0;c[D>>2]=(c[D>>2]|0)+(1-i<<4);break}h=c[c[g+16>>2]>>2]|0;k=g+8|0;m=c[k>>2]|0;i=h+(1-i<<4)|0;if(m>>>0<i>>>0){g=(h+(j<<4)+8+4+(3-m)|0)>>>4;h=m;do{c[h+8>>2]=0;h=h+16|0}while(h>>>0<i>>>0);c[k>>2]=m+(g+1<<4)}c[k>>2]=i;break}}i=c[E>>2]|0;h=c[j>>2]|0;g=(c[g>>2]|0)-h|0;if((c[(c[i+12>>2]|0)+12>>2]|0)>0)Sw(i);B=xx(i,h,g)|0;D=i+8|0;C=c[D>>2]|0;c[C>>2]=B;c[C+8>>2]=(a[B+4>>0]|64)&255;c[D>>2]=(c[D>>2]|0)+16;c[f>>2]=(c[f>>2]|0)+8}else{h=c[E>>2]|0;g=c[j>>2]|0;if((c[(c[h+12>>2]|0)+12>>2]|0)>0)Sw(h);B=xx(h,g,(i&255)+-1|0)|0;D=h+8|0;C=c[D>>2]|0;c[C>>2]=B;c[C+8>>2]=(a[B+4>>0]|64)&255;c[D>>2]=(c[D>>2]|0)+16}while(0);D=c[o>>2]|0;Lx(n,D+-48|0,D+-32|0,D+-16|0);c[o>>2]=(c[o>>2]|0)+-32}g=hC(f)|0;if((g|0)>0){h=g;while(1){D=h+q|0;$v(n,~h,D,((D|0)<0)<<31>>31);if((h|0)>1)h=h+-1|0;else break}}q=g+q|0}c[f>>2]=g+8;f=1;l=F;return f|0}case 7:{j=c[E>>2]|0;m=(c[j+8>>2]|0)-((c[c[j+16>>2]>>2]|0)+16)>>4;Xv(j,(c[f+12>>2]|0)+3|0,e[g+4>>1]|0,0)|0;j=c[f>>2]|0;g=j+8|0;c[f>>2]=g;i=a[j+7>>0]|0;if(!(i<<24>>24)){if(a[j+14>>0]|0){g=0;do{g=(hC(f)|0)+g|0;h=c[f>>2]|0}while((a[h+6>>0]|0)!=0);if(!g){g=h;C=169}}else C=169;if((C|0)==169){i=c[E>>2]|0;h=c[j>>2]|0;g=(c[g>>2]|0)-h|0;if((c[(c[i+12>>2]|0)+12>>2]|0)>0)Sw(i);D=xx(i,h,g)|0;h=i+8|0;g=c[h>>2]|0;c[g>>2]=D;c[g+8>>2]=(a[D+4>>0]|64)&255;c[h>>2]=(c[h>>2]|0)+16;h=c[f>>2]|0;g=1}c[f>>2]=h+8}else{h=c[E>>2]|0;g=c[j>>2]|0;if((c[(c[h+12>>2]|0)+12>>2]|0)>0)Sw(h);D=xx(h,g,(i&255)+-1|0)|0;g=h+8|0;f=c[g>>2]|0;c[f>>2]=D;c[f+8>>2]=(a[D+4>>0]|64)&255;c[g>>2]=(c[g>>2]|0)+16;g=1}j=c[E>>2]|0;k=j+8|0;h=(c[k>>2]|0)+(~g<<4)|0;i=j+106|0;g=(b[i>>1]|0)+1<<16>>16;b[i>>1]=g;if((g&65535)>199){if(g<<16>>16==200)mw(j,279953,u);if((g&65535)>224)qw(j,6)}g=j+104|0;b[g>>1]=(b[g>>1]|0)+1<<16>>16;if(!(uw(j,h,-1)|0))Sx(j);b[g>>1]=(b[g>>1]|0)+-1<<16>>16;b[i>>1]=(b[i>>1]|0)+-1<<16>>16;h=(c[j+16>>2]|0)+4|0;g=c[k>>2]|0;if((c[h>>2]|0)>>>0<g>>>0)c[h>>2]=g;f=c[E>>2]|0;f=((c[f+8>>2]|0)-((c[c[f+16>>2]>>2]|0)+16)>>4)-m|0;l=F;return f|0}case 10:{D=b[g+4>>1]|0;k=D&65535;if(!(D<<16>>16)){if(!(a[g+7>>0]|0)){i=0;while(1){h=g+8|0;if(!(a[g+14>>0]|0))if(!i){g=h;break}else{g=h;i=i+-1|0;continue}else{E=((a[g+15>>0]|0)==0&1)+i|0;g=h;i=E;continue}}}c[f>>2]=g+8;f=0;l=F;return f|0}h=g+8|0;c[f>>2]=h;i=a[g+7>>0]|0;if(!(i<<24>>24)){if(a[g+14>>0]|0){i=0;do{i=(hC(f)|0)+i|0;h=c[f>>2]|0}while((a[h+6>>0]|0)!=0);if(!i)C=196;else g=i}else C=196;if((C|0)==196){j=c[E>>2]|0;i=c[g>>2]|0;g=(c[h>>2]|0)-i|0;if((c[(c[j+12>>2]|0)+12>>2]|0)>0)Sw(j);D=xx(j,i,g)|0;h=j+8|0;g=c[h>>2]|0;c[g>>2]=D;c[g+8>>2]=(a[D+4>>0]|64)&255;c[h>>2]=(c[h>>2]|0)+16;h=c[f>>2]|0;g=1}c[f>>2]=h+8;n=g}else{h=c[E>>2]|0;g=c[g>>2]|0;if((c[(c[h+12>>2]|0)+12>>2]|0)>0)Sw(h);D=xx(h,g,(i&255)+-1|0)|0;n=h+8|0;f=c[n>>2]|0;c[f>>2]=D;c[f+8>>2]=(a[D+4>>0]|64)&255;c[n>>2]=(c[n>>2]|0)+16;n=1}j=c[E>>2]|0;if((n|0)<(k|0)){c[s>>2]=k;Wx(j,288050,s);f=0;l=F;return f|0}i=n-k|0;g=~i;k=j+8|0;m=c[k>>2]|0;h=c[j+16>>2]|0;do if((i|0)>=-1){if((i|0)<=1000998){g=m+(g<<4)|0;break}if((i|0)==1000999){g=(c[j+12>>2]|0)+40|0;break}g=c[h>>2]|0;if((c[g+8>>2]|0)==22)g=316344;else{g=c[g>>2]|0;g=(i+-1000999|0)>(d[g+6>>0]|0)?316344:g+16+(i+-1001e3<<4)|0}}else{g=(c[h>>2]|0)+(g<<4)|0;g=g>>>0<m>>>0?g:316344}while(0);c[m>>2]=c[g>>2];c[m+4>>2]=c[g+4>>2];c[m+8>>2]=c[g+8>>2];c[m+12>>2]=c[g+12>>2];c[k>>2]=(c[k>>2]|0)+16;Rv(c[E>>2]|0,~n);g=c[E>>2]|0;j=g+8|0;k=(c[j>>2]|0)+-16|0;c[j>>2]=k;h=0-n|0;if((h|0)<=-1){c[j>>2]=k+(1-n<<4);f=1;l=F;return f|0}g=c[c[g+16>>2]>>2]|0;i=g+(1-n<<4)|0;if(k>>>0<i>>>0){g=(g+(h<<4)+8+4+(3-k)|0)>>>4;h=k;do{c[h+8>>2]=0;h=h+16|0}while(h>>>0<i>>>0);c[j>>2]=k+(g+1<<4)}c[j>>2]=i;f=1;l=F;return f|0}case 8:{n=b[g+4>>1]|0;o=n&65535;h=g+8|0;c[f>>2]=h;i=a[g+7>>0]|0;do if(!(i<<24>>24)){if(a[g+14>>0]|0){i=0;do{i=(hC(f)|0)+i|0;h=c[f>>2]|0}while((a[h+6>>0]|0)!=0);if(i){c[f>>2]=h+8;if((i|0)<=1)break;g=c[E>>2]|0;j=0-i|0;if((j|0)<=-1){D=g+8|0;c[D>>2]=(c[D>>2]|0)+(1-i<<4);break}h=c[c[g+16>>2]>>2]|0;k=g+8|0;m=c[k>>2]|0;i=h+(1-i<<4)|0;if(m>>>0<i>>>0){g=(h+(j<<4)+8+4+(3-m)|0)>>>4;h=m;do{c[h+8>>2]=0;h=h+16|0}while(h>>>0<i>>>0);c[k>>2]=m+(g+1<<4)}c[k>>2]=i;break}}j=c[E>>2]|0;i=c[g>>2]|0;g=(c[h>>2]|0)-i|0;if((c[(c[j+12>>2]|0)+12>>2]|0)>0)Sw(j);B=xx(j,i,g)|0;D=j+8|0;C=c[D>>2]|0;c[C>>2]=B;c[C+8>>2]=(a[B+4>>0]|64)&255;c[D>>2]=(c[D>>2]|0)+16;c[f>>2]=(c[f>>2]|0)+8}else{h=c[E>>2]|0;g=c[g>>2]|0;if((c[(c[h+12>>2]|0)+12>>2]|0)>0)Sw(h);B=xx(h,g,(i&255)+-1|0)|0;D=h+8|0;C=c[D>>2]|0;c[C>>2]=B;c[C+8>>2]=(a[B+4>>0]|64)&255;c[D>>2]=(c[D>>2]|0)+16}while(0);j=c[E>>2]|0;h=c[f+12>>2]|0;i=h+1|0;g=f+20|0;if((c[g>>2]|0)!=(o|0)){Xv(j,h+3|0,n&65535,0)|0;Rv(c[E>>2]|0,i);f=(c[E>>2]|0)+8|0;c[f>>2]=(c[f>>2]|0)+-16;c[g>>2]=o}g=c[j+16>>2]|0;do if((h|0)<=-1){if((i|0)>=-1000999){g=(c[j+8>>2]|0)+(i<<4)|0;break}if((i|0)==-1001e3){g=(c[j+12>>2]|0)+40|0;break}h=-1001001-h|0;g=c[g>>2]|0;if((c[g+8>>2]|0)==22)g=316344;else{g=c[g>>2]|0;g=(h|0)>(d[g+6>>0]|0)?316344:g+16+(h+-1<<4)|0}}else{g=(c[g>>2]|0)+(i<<4)|0;g=g>>>0<(c[j+8>>2]|0)>>>0?g:316344}while(0);h=(c[j+8>>2]|0)+-16|0;Kx(j,g,h,h);g=(c[E>>2]|0)+8|0;h=c[g>>2]|0;i=h+-16|0;if((i|0)==316344){f=1;l=F;return f|0}if(c[h+-8>>2]&15|0){f=1;l=F;return f|0}c[g>>2]=i;f=0;l=F;return f|0}case 12:{u=c[E>>2]|0;m=b[g+4>>1]|0;t=m&65535;c[f>>2]=g+8;if(((a[g+7>>0]|0)==0?a[g+14>>0]|0:0)?(r=hC(f)|0,r|0):0){do if((r|0)>1){g=0-r|0;if((g|0)<=-1){C=u+8|0;c[C>>2]=(c[C>>2]|0)+(1-r<<4);break}h=c[c[u+16>>2]>>2]|0;j=u+8|0;k=c[j>>2]|0;i=h+(1-r<<4)|0;if(k>>>0<i>>>0){g=(h+(g<<4)+8+4+(3-k)|0)>>>4;h=k;do{c[h+8>>2]=0;h=h+16|0}while(h>>>0<i>>>0);c[j>>2]=k+(g+1<<4)}c[j>>2]=i}while(0);g=c[f>>2]|0;d:do if(a[g+6>>0]|0){r=f+12|0;s=f+20|0;k=m&65535;m=u+8|0;n=u+16|0;o=u+106|0;p=u+104|0;q=u+12|0;while(1){g=c[r>>2]|0;h=g+1|0;if((c[s>>2]|0)!=(t|0)){Xv(c[E>>2]|0,g+3|0,k,0)|0;Rv(c[E>>2]|0,h);C=(c[E>>2]|0)+8|0;c[C>>2]=(c[C>>2]|0)+-16;c[s>>2]=t}j=c[m>>2]|0;i=c[n>>2]|0;do if((g|0)<=-1){if((h|0)>=-1000999){g=j+(h<<4)|0;break}if((h|0)==-1001e3){g=(c[q>>2]|0)+40|0;break}h=-1001001-g|0;g=c[i>>2]|0;if((c[g+8>>2]|0)==22)g=316344;else{g=c[g>>2]|0;g=(h|0)>(d[g+6>>0]|0)?316344:g+16+(h+-1<<4)|0}}else{g=(c[i>>2]|0)+(h<<4)|0;g=g>>>0<j>>>0?g:316344}while(0);c[j>>2]=c[g>>2];c[j+4>>2]=c[g+4>>2];c[j+8>>2]=c[g+8>>2];c[j+12>>2]=c[g+12>>2];h=c[m>>2]|0;c[m>>2]=h+16;g=h;h=h+-16|0;do{c[D>>2]=c[h>>2];c[D+4>>2]=c[h+4>>2];c[D+8>>2]=c[h+8>>2];c[D+12>>2]=c[h+12>>2];c[h>>2]=c[g>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[h+12>>2]=c[g+12>>2];c[g>>2]=c[D>>2];c[g+4>>2]=c[D+4>>2];c[g+8>>2]=c[D+8>>2];c[g+12>>2]=c[D+12>>2];h=h+16|0;g=g+-16|0}while(h>>>0<g>>>0);g=hC(f)|0;g=(c[m>>2]|0)+(-2-g<<4)|0;h=(b[o>>1]|0)+1<<16>>16;b[o>>1]=h;if((h&65535)>199){if(h<<16>>16==200){C=276;break}if((h&65535)>224){C=278;break}}b[p>>1]=(b[p>>1]|0)+1<<16>>16;if(!(uw(u,g,1)|0))Sx(u);b[p>>1]=(b[p>>1]|0)+-1<<16>>16;b[o>>1]=(b[o>>1]|0)+-1<<16>>16;g=c[f>>2]|0;if(!(a[g+6>>0]|0)){w=g;break d}}if((C|0)==276)mw(u,279953,x);else if((C|0)==278)qw(u,6)}else w=g;while(0);c[f>>2]=w+8;f=1;l=F;return f|0}Wx(u,288066,q);f=0;l=F;return f|0}default:{f=0;l=F;return f|0}}while(0);return 0}function iC(d,e){d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+144|0;t=u+8|0;s=u;q=u+16|0;r=u+12|0;p=e+8|0;f=c[p>>2]|0;g=b[(c[e>>2]|0)+4>>1]|0;h=g&65535;i=c[e+12>>2]|0;j=i+1|0;k=e+20|0;if((c[k>>2]|0)!=(h|0)){Xv(f,i+3|0,g&65535,0)|0;Rv(c[p>>2]|0,j);o=(c[p>>2]|0)+8|0;c[o>>2]=(c[o>>2]|0)+-16;c[k>>2]=h}k=Tv(f,j,r)|0;m=kC(e,q,0)|0;if(!(c[r>>2]|0)){l=u;return}n=d+8|0;o=d+4|0;f=0;do{i=k+f|0;g=a[i>>0]|0;do if(g<<24>>24==37){f=f+1|0;j=k+f|0;g=a[j>>0]|0;i=g<<24>>24;if((g+-48&255)>9){h=c[n>>2]|0;if(h>>>0>=(c[o>>2]|0)>>>0){ay(d,1)|0;h=c[n>>2]|0;g=a[j>>0]|0}c[n>>2]=h+1;a[(c[d>>2]|0)+h>>0]=g;break}h=i+-48|0;if((i+-47|0)>(m|0)){j=c[p>>2]|0;c[s>>2]=h;Wx(j,288124,s);break}if(c[q+(h*12|0)>>2]|0){i=c[q+(h*12|0)+4>>2]|0;j=(c[q+(h*12|0)+8>>2]|0)-i|0;PQ(ay(d,j)|0,i|0,j|0)|0;c[n>>2]=(c[n>>2]|0)+j;break}g=c[e>>2]|0;c[e>>2]=c[q+(h*12|0)+4>>2];if(!(jC(d,e,288151)|0)){j=c[p>>2]|0;c[t>>2]=h;Wx(j,288159,t)}c[e>>2]=g}else{h=c[n>>2]|0;if(h>>>0>=(c[o>>2]|0)>>>0){ay(d,1)|0;h=c[n>>2]|0;g=a[i>>0]|0}c[n>>2]=h+1;a[(c[d>>2]|0)+h>>0]=g}while(0);f=f+1|0}while(f>>>0<(c[r>>2]|0)>>>0);l=u;return}function jC(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;n=o;i=c[e>>2]|0;switch(a[i+6>>0]|0){case 9:{iC(b,e);b=1;l=o;return b|0}case 11:{h=c[i>>2]|0;g=a[i+7>>0]|0;if(!(g<<24>>24)){g=i+8|0;c[e>>2]=g;f=(a[i+14>>0]|0)==0;g=c[g>>2]|0;n=g-h|0;PQ(ay(b,n)|0,h|0,n|0)|0;j=b+8|0;c[j>>2]=(c[j>>2]|0)+n;if(!f)do{f=(jC(b,e,288008)|0)==0;h=c[e>>2]|0;if(f)i=g;else i=(c[h+-8>>2]|0)+((d[h+-1>>0]|0)+-1)|0;f=(a[h+6>>0]|0)==0;g=c[h>>2]|0;n=g-i|0;PQ(ay(b,n)|0,i|0,n|0)|0;c[j>>2]=(c[j>>2]|0)+n}while(!f)}else{f=(g&255)+-1|0;PQ(ay(b,f)|0,h|0,f|0)|0;b=b+8|0;c[b>>2]=(c[b>>2]|0)+f}c[e>>2]=(c[e>>2]|0)+8;b=1;l=o;return b|0}default:{m=c[e+8>>2]|0;k=hC(e)|0;if((k|0)<=0){b=k;l=o;return b|0}do if((k|0)==1)g=c[m+8>>2]|0;else{h=0-k|0;if((h|0)<=-1){e=m+8|0;g=(c[e>>2]|0)+(1-k<<4)|0;c[e>>2]=g;break}i=c[c[m+16>>2]>>2]|0;j=m+8|0;e=c[j>>2]|0;g=i+(1-k<<4)|0;if(e>>>0<g>>>0){h=(i+(h<<4)+8+4+(3-e)|0)>>>4;i=e;do{c[i+8>>2]=0;i=i+16|0}while(i>>>0<g>>>0);c[j>>2]=e+(h+1<<4)}c[j>>2]=g}while(0);h=c[g+-8>>2]&15;if((h+-3|0)>>>0>=2){e=c[5104+(((g+-16|0)==316344?0:h+1|0)<<2)>>2]|0;c[n>>2]=f;c[n+4>>2]=e;Wx(m,288100,n)}by(b);b=k;l=o;return b|0}}return 0}function kC(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;g=e+1|0;c[d+(e*12|0)>>2]=1;i=c[b>>2]|0;c[d+(e*12|0)+4>>2]=c[i>>2];f=i+8|0;c[b>>2]=f;if(a[i+7>>0]|0){b=g;i=f;h=i+-8|0;h=c[h>>2]|0;i=i+-1|0;i=a[i>>0]|0;i=i&255;i=i+-1|0;i=h+i|0;e=d+(e*12|0)+8|0;c[e>>2]=i;return b|0}h=a[f+6>>0]|0;a:do if(h<<24>>24){i=f;while(1){if((g|0)>9)break;if(h<<24>>24==5){g=kC(b,d,g)|0;f=c[b>>2]|0}else{c[d+(g*12|0)>>2]=0;c[d+(g*12|0)+4>>2]=i;f=c[b>>2]|0;if(!(a[f+7>>0]|0)){i=0;while(1){h=f+8|0;if(!(a[f+14>>0]|0))if(!i){f=h;break}else{f=h;i=i+-1|0;continue}else{j=((a[f+15>>0]|0)==0&1)+i|0;f=h;i=j;continue}}}f=f+8|0;c[b>>2]=f;g=g+1|0}h=a[f+6>>0]|0;if(!(h<<24>>24))break a;else i=f}do{if(!(a[f+7>>0]|0)){i=0;while(1){h=f+8|0;if(!(a[f+14>>0]|0))if(!i)break;else{f=h;i=i+-1|0;continue}else{j=((a[f+15>>0]|0)==0&1)+i|0;f=h;i=j;continue}}}else h=f;f=h+8|0}while((a[h+14>>0]|0)!=0);c[b>>2]=f}while(0);i=f+8|0;c[b>>2]=i;j=g;b=i;i=b+-8|0;i=c[i>>2]|0;b=b+-1|0;b=a[b>>0]|0;b=b&255;b=b+-1|0;b=i+b|0;e=d+(e*12|0)+8|0;c[e>>2]=b;return j|0}function lC(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;g=eN(76)|0;if(!g){if(!d){b=0;return b|0}c[d>>2]=7;b=0;return b|0}e=g;f=e+76|0;do{c[e>>2]=0;e=e+4|0}while((e|0)<(f|0));e=eN(24908)|0;if(!e){fN(g);if(!d){b=0;return b|0}c[d>>2]=7;b=0;return b|0}RQ(e|0,0,24908)|0;f=eN(32768)|0;if(f|0){RQ(f|0,-1,32768)|0;c[e+24900>>2]=f;c[g+72>>2]=e;c[e+4>>2]=0;c[e+56>>2]=0;c[e>>2]=1;c[e+64>>2]=19;c[g+68>>2]=b;a[e+24904>>0]=0;c[g+64>>2]=0;b=g;return b|0}c[e+24900>>2]=0;fN(g);fN(e);if(!d){b=0;return b|0}c[d>>2]=7;b=0;return b|0}function mC(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+16|0;r=v+4|0;s=v;t=b+72|0;u=c[t>>2]|0;h=c[u>>2]|0;if(h&2|0){c[b+64>>2]=3;b=0;l=v;return b|0}if(!(h&1)){c[b+64>>2]=10;b=0;l=v;return b|0}i=c[b+24>>2]|0;if((i|0)>0){j=c[b+52>>2]|0;k=u+24904|0;n=0;do{m=c[j+(n*36|0)+28>>2]|0;a:do if((m|0)>0){h=c[j+(n*36|0)+32>>2]|0;o=0;while(1){switch(c[h+(o*12|0)+8>>2]|0){case 1:case 249:case 254:case 255:{a[k>>0]=1;break}default:{}}o=o+1|0;if((o|0)==(m|0))break a}}while(0);n=n+1|0}while((n|0)!=(i|0))}i=c[b+56>>2]|0;b:do if((i|0)>0){j=c[b+60>>2]|0;h=u+24904|0;k=0;while(1){switch(c[j+(k*12|0)+8>>2]|0){case 1:case 249:case 254:case 255:{a[h>>0]=1;break}default:{}}k=k+1|0;if((k|0)==(i|0))break b}}else h=u+24904|0;while(0);h=(a[h>>0]|0)==0?288189:288196;i=c[u+64>>2]|0;if(!i)h=jP(h,1,6,c[u+56>>2]|0)|0;else h=ig[i&63](b,h,6)|0;if((h|0)!=6){c[b+64>>2]=2;b=0;l=v;return b|0}c[b>>2]=d;c[b+4>>2]=e;c[b+8>>2]=f;c[b+12>>2]=0;p=(g|0)!=0;c:do if(p){j=c[g>>2]|0;k=c[g+12>>2]|0;i=1;while(1){h=1<<i;if((i|0)<9&(h|0)<(j|0))i=i+1|0;else break}do if((h|0)==(j|0)?(q=eN(16)|0,q|0):0){if(j){h=j*3|0;if(j>>>0>65535)h=((h>>>0)/(j>>>0)|0|0)==3?h:-1}else h=0;i=eN(h)|0;if(!i){fN(q);break}if(c[i+-4>>2]&3|0)RQ(i|0,0,h|0)|0;c[q+12>>2]=i;c[q>>2]=j;h=1;while(1)if((h|0)<9&(1<<h|0)<(j|0))h=h+1|0;else break;c[q+4>>2]=h;a[q+8>>0]=0;if(k|0)PQ(i|0,k|0,j*3|0)|0;c[b+20>>2]=q;break c}while(0);c[b+20>>2]=0;c[b+64>>2]=7;b=0;l=v;return b|0}else c[b+20>>2]=0;while(0);a[r>>0]=d;j=r+1|0;a[j>>0]=d>>>8;h=c[t>>2]|0;i=c[h+64>>2]|0;if(!i)jP(r,1,2,c[h+56>>2]|0)|0;else ig[i&63](b,r,2)|0;a[r>>0]=e;a[j>>0]=e>>>8;h=c[t>>2]|0;i=c[h+64>>2]|0;if(!i)jP(r,1,2,c[h+56>>2]|0)|0;else ig[i&63](b,r,2)|0;h=(p?128:0)|(f<<4)+240;if(p){h=(c[g+4>>2]|0)+-1|h;a[s>>0]=h;if(!(a[g+8>>0]|0))o=s;else{a[s>>0]=h|8;o=s}}else{a[s>>0]=h|7;o=s}n=s+1|0;a[n>>0]=0;m=s+2|0;a[m>>0]=a[b+16>>0]|0;h=c[t>>2]|0;i=c[h+64>>2]|0;if(!i)jP(o,1,3,c[h+56>>2]|0)|0;else ig[i&63](b,o,3)|0;d:do if(p?(c[g>>2]|0)>0:0){j=g+12|0;k=0;while(1){h=c[j>>2]|0;a[o>>0]=a[h+(k*3|0)>>0]|0;a[n>>0]=a[h+(k*3|0)+1>>0]|0;a[m>>0]=a[h+(k*3|0)+2>>0]|0;h=c[t>>2]|0;i=c[h+64>>2]|0;if(!i)h=jP(o,1,3,c[h+56>>2]|0)|0;else h=ig[i&63](b,o,3)|0;k=k+1|0;if((h|0)!=3)break;if((k|0)>=(c[g>>2]|0))break d}c[b+64>>2]=2;b=0;l=v;return b|0}while(0);c[u>>2]=c[u>>2]|2;b=1;l=v;return b|0}function nC(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+16|0;r=t+4|0;n=t;p=b+72|0;q=c[p>>2]|0;g=c[q>>2]|0;if(g&4|0?(c[q+52>>2]|0)>>>0>4294901760:0){c[b+64>>2]=4;s=0;l=t;return s|0}if(!(g&1)){c[b+64>>2]=10;s=0;l=t;return s|0}c[b+28>>2]=0;c[b+32>>2]=0;c[b+36>>2]=d;c[b+40>>2]=e;a[b+44>>0]=0;m=(f|0)!=0;o=b+48|0;a:do if(m){g=c[o>>2]|0;if(g|0){fN(c[g+12>>2]|0);fN(g);c[o>>2]=0}i=c[f>>2]|0;j=c[f+12>>2]|0;h=1;while(1){g=1<<h;if((h|0)<9&(g|0)<(i|0))h=h+1|0;else break}do if((g|0)==(i|0)?(k=eN(16)|0,k|0):0){if(i){g=i*3|0;if(i>>>0>65535)g=((g>>>0)/(i>>>0)|0|0)==3?g:-1}else g=0;h=eN(g)|0;if(!h){fN(k);break}if(c[h+-4>>2]&3|0)RQ(h|0,0,g|0)|0;c[k+12>>2]=h;c[k>>2]=i;g=1;while(1)if((g|0)<9&(1<<g|0)<(i|0))g=g+1|0;else break;c[k+4>>2]=g;a[k+8>>0]=0;if(j|0)PQ(h|0,j|0,i*3|0)|0;c[o>>2]=k;g=c[p>>2]|0;break a}while(0);c[o>>2]=0;c[b+64>>2]=7;s=0;l=t;return s|0}else{c[o>>2]=0;g=q}while(0);a[n>>0]=44;h=c[g+64>>2]|0;if(!h)hQ(44,c[g+56>>2]|0);else ig[h&63](b,n,1)|0;a[r>>0]=0;i=r+1|0;a[i>>0]=0;g=c[p>>2]|0;h=c[g+64>>2]|0;if(!h)jP(r,1,2,c[g+56>>2]|0)|0;else ig[h&63](b,r,2)|0;a[r>>0]=0;a[i>>0]=0;g=c[p>>2]|0;h=c[g+64>>2]|0;if(!h)jP(r,1,2,c[g+56>>2]|0)|0;else ig[h&63](b,r,2)|0;a[r>>0]=d;a[i>>0]=d>>>8;g=c[p>>2]|0;h=c[g+64>>2]|0;if(!h)jP(r,1,2,c[g+56>>2]|0)|0;else ig[h&63](b,r,2)|0;a[r>>0]=e;a[i>>0]=e>>>8;g=c[p>>2]|0;h=c[g+64>>2]|0;if(!h)jP(r,1,2,c[g+56>>2]|0)|0;else ig[h&63](b,r,2)|0;i=m?128:0;b:do if(m){g=(c[f+4>>2]|0)+255|i;a[n>>0]=g;h=c[p>>2]|0;i=c[h+64>>2]|0;if(!i)hQ(g<<24>>24,c[h+56>>2]|0);else ig[i&63](b,n,1)|0;if((c[f>>2]|0)>0){i=f+12|0;j=n+1|0;k=n+2|0;m=0;while(1){g=c[i>>2]|0;a[n>>0]=a[g+(m*3|0)>>0]|0;a[j>>0]=a[g+(m*3|0)+1>>0]|0;a[k>>0]=a[g+(m*3|0)+2>>0]|0;g=c[p>>2]|0;h=c[g+64>>2]|0;if(!h)g=jP(n,1,3,c[g+56>>2]|0)|0;else g=ig[h&63](b,n,3)|0;m=m+1|0;if((g|0)!=3)break;if((m|0)>=(c[f>>2]|0))break b}c[b+64>>2]=2;s=0;l=t;return s|0}}else{a[n>>0]=i;g=c[p>>2]|0;h=c[g+64>>2]|0;if(!h){hQ(i<<24>>24,c[g+56>>2]|0);break}else{ig[h&63](b,n,1)|0;break}}while(0);j=c[b+20>>2]|0;k=(j|0)==0;h=c[o>>2]|0;if(k&(h|0)==0){c[b+64>>2]=5;s=0;l=t;return s|0}c[q>>2]=c[q>>2]|4;c[q+52>>2]=O(e,d)|0;i=c[p>>2]|0;g=(h|0)!=0;if(g|k^1){g=c[(g?h:j)+4>>2]|0;g=(g|0)>2?g:2;a[r>>0]=g;h=c[i+64>>2]|0;if(!h)hQ(g<<24>>24,c[i+56>>2]|0);else ig[h&63](b,r,1)|0;a[i+68>>0]=0;c[i+8>>2]=g;d=1<<g;r=i+12|0;c[r>>2]=d;c[i+16>>2]=d+1;c[i+20>>2]=d+2;c[i+24>>2]=g+1;c[i+28>>2]=2<<g;c[i+36>>2]=4097;c[i+44>>2]=0;c[i+48>>2]=0;RQ(c[i+24900>>2]|0,-1,32768)|0;if(!(oC(b,c[r>>2]|0)|0)){g=8;s=64}}else{g=5;s=64}if((s|0)==64)c[b+64>>2]=g;s=1;l=t;return s|0}function oC(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=b+72|0;m=c[j>>2]|0;k=m+44|0;g=c[k>>2]|0;do if((e|0)==4096){l=m+68|0;if((g|0)>0){f=m+48|0;h=c[f>>2]|0;g=1;do{i=(pC(b,l,h&255)|0)==0;g=i?0:g;h=(c[f>>2]|0)>>>8;c[f>>2]=h;i=c[k>>2]|0;c[k>>2]=i+-8}while((i|0)>8)}else g=1;c[k>>2]=0;f=a[l>>0]|0;if(f<<24>>24){f=(f&255)+1|0;h=c[j>>2]|0;i=c[h+64>>2]|0;if(!i)f=jP(l,1,f,c[h+56>>2]|0)|0;else f=ig[i&63](b,l,f)|0;if((f|0)!=((d[l>>0]|0)+1|0)){c[b+64>>2]=2;g=0;break}}a[l>>0]=0;f=c[j>>2]|0;h=c[f+64>>2]|0;if(!h)f=jP(l,1,1,c[f+56>>2]|0)|0;else f=ig[h&63](b,l,1)|0;if((f|0)!=1){c[b+64>>2]=2;g=0}}else{i=m+48|0;f=c[i>>2]|e<<g;c[i>>2]=f;l=g+(c[m+24>>2]|0)|0;c[k>>2]=l;if((l|0)>7){h=m+68|0;g=1;do{l=(pC(b,h,f&255)|0)==0;g=l?0:g;f=(c[i>>2]|0)>>>8;c[i>>2]=f;l=(c[k>>2]|0)+-8|0;c[k>>2]=l}while((l|0)>7)}else g=1}while(0);f=m+28|0;if(!((e|0)<4096?(c[m+20>>2]|0)>=(c[f>>2]|0):0))return g|0;m=m+24|0;e=(c[m>>2]|0)+1|0;c[m>>2]=e;c[f>>2]=1<<e;return g|0}function pC(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;g=a[e>>0]|0;h=g&255;if((f|0)!=4096){do if(g<<24>>24==-1){g=h+1|0;h=c[b+72>>2]|0;i=c[h+64>>2]|0;if(!i)g=jP(e,1,g,c[h+56>>2]|0)|0;else g=ig[i&63](b,e,g)|0;if((g|0)==((d[e>>0]|0)+1|0)){a[e>>0]=0;g=0;break}c[b+64>>2]=2;b=0;return b|0}while(0);b=g+1<<24>>24;a[e>>0]=b;a[e+(b&255)>>0]=f;b=1;return b|0}if(g<<24>>24){h=h+1|0;g=b+72|0;i=c[g>>2]|0;f=c[i+64>>2]|0;if(!f)h=jP(e,1,h,c[i+56>>2]|0)|0;else h=ig[f&63](b,e,h)|0;if((h|0)!=((d[e>>0]|0)+1|0)){c[b+64>>2]=2;b=0;return b|0}}else g=b+72|0;a[e>>0]=0;g=c[g>>2]|0;h=c[g+64>>2]|0;if(!h)g=jP(e,1,1,c[g+56>>2]|0)|0;else g=ig[h&63](b,e,1)|0;if((g|0)==1){b=1;return b|0}c[b+64>>2]=2;b=0;return b|0}function qC(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;x=b+72|0;h=c[x>>2]|0;if(!(c[h>>2]&1)){c[b+64>>2]=10;b=0;return b|0}if(!f)w=c[b+36>>2]|0;else w=f;g=h+52|0;f=c[g>>2]|0;if(f>>>0<w>>>0){c[b+64>>2]=6;b=0;return b|0}c[g>>2]=f-w;g=a[288203+(c[h+8>>2]|0)>>0]|0;if((w|0)>0){f=0;do{v=e+f|0;a[v>>0]=a[v>>0]&g;f=f+1|0}while((f|0)!=(w|0));h=c[x>>2]|0}u=c[h+24900>>2]|0;v=h+36|0;f=c[v>>2]|0;if((f|0)==4097){f=d[e>>0]|0;g=1}else g=0;a:do if((g|0)<(w|0)){o=h+20|0;p=h+12|0;q=h+16|0;r=h+8|0;s=h+24|0;t=h+28|0;m=f;b:while(1){f=d[e+g>>0]|0;g=g+1|0;n=f|m<<8;l=m>>>4;i=(l^n)&8191;j=c[u+(i<<2)>>2]|0;k=j>>>12;c:do if((k|0)==1048575)y=18;else{while(1){if((k|0)==(n|0))break;i=i+1&8191;j=c[u+(i<<2)>>2]|0;k=j>>>12;if((k|0)==1048575){y=18;break c}}f=j&4095}while(0);do if((y|0)==18){y=0;if(!(oC(b,m)|0)){y=19;break b}k=c[o>>2]|0;if((k|0)>4094){if(!(oC(b,c[p>>2]|0)|0)){y=22;break b}c[o>>2]=(c[q>>2]|0)+1;n=(c[r>>2]|0)+1|0;c[s>>2]=n;c[t>>2]=1<<n;RQ(u|0,-1,32768)|0;break}c[o>>2]=k+1;i=l&1048575^n;while(1){i=i&8191;j=u+(i<<2)|0;if((c[j>>2]|0)>>>0<4294963200)i=i+1|0;else break}c[j>>2]=k&4095|n<<12}while(0);if((g|0)>=(w|0))break a;else m=f}if((y|0)==19){c[b+64>>2]=8;b=0;return b|0}else if((y|0)==22){c[b+64>>2]=8;b=0;return b|0}}while(0);c[v>>2]=f;if(c[h+52>>2]|0){b=1;return b|0}if(!(oC(b,f)|0)){c[b+64>>2]=8;b=0;return b|0}if(!(oC(b,c[h+16>>2]|0)|0)){c[b+64>>2]=8;b=0;return b|0}f=c[x>>2]|0;i=f+44|0;k=f+68|0;if((c[i>>2]|0)>0){g=f+48|0;h=c[g>>2]|0;f=1;do{e=(pC(b,k,h&255)|0)==0;f=e?0:f;h=(c[g>>2]|0)>>>8;c[g>>2]=h;e=c[i>>2]|0;c[i>>2]=e+-8}while((e|0)>8);j=f}else j=1;c[i>>2]=0;f=a[k>>0]|0;if(f<<24>>24){f=(f&255)+1|0;g=c[x>>2]|0;h=c[g+64>>2]|0;if(!h)f=jP(k,1,f,c[g+56>>2]|0)|0;else f=ig[h&63](b,k,f)|0;if((f|0)!=((d[k>>0]|0)+1|0)){f=b+64|0;c[f>>2]=2}else y=42}else y=42;do if((y|0)==42){a[k>>0]=0;f=c[x>>2]|0;g=c[f+64>>2]|0;if(!g)f=jP(k,1,1,c[f+56>>2]|0)|0;else f=ig[g&63](b,k,1)|0;if((f|0)!=1){f=b+64|0;c[f>>2]=2;break}if(!j){f=b+64|0;break}else{b=1;return b|0}}while(0);c[f>>2]=8;b=0;return b|0}function rC(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;f=i;if(!b){l=i;return}g=c[b+72>>2]|0;if(!g){l=i;return}if(!(c[g>>2]&1)){if(d|0)c[d>>2]=10;fN(b);l=i;return}h=c[g+56>>2]|0;a[f>>0]=59;e=c[g+64>>2]|0;if(!e)hQ(59,h);else ig[e&63](b,f,1)|0;e=b+48|0;f=c[e>>2]|0;if(f|0){fN(c[f+12>>2]|0);fN(f);c[e>>2]=0}e=b+20|0;f=c[e>>2]|0;if(f|0){fN(c[f+12>>2]|0);fN(f);c[e>>2]=0}e=c[g+24900>>2]|0;if(e|0)fN(e);fN(g);if(h|0?uP(h)|0:0){if(d|0)c[d>>2]=9;fN(b);l=i;return}fN(b);if(!d){l=i;return}c[d>>2]=0;l=i;return}function sC(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;C=l;l=l+16|0;B=C;A=b+72|0;v=c[A>>2]|0;if(!(c[v>>2]&8)){c[b+64>>2]=111;b=0;l=C;return b|0}if(!f)f=c[b+36>>2]|0;z=v+52|0;y=(c[z>>2]|0)-f|0;c[z>>2]=y;if(y>>>0>4294901760){c[b+64>>2]=108;b=0;l=C;return b|0}x=v+40|0;g=c[x>>2]|0;s=v+16|0;t=c[s>>2]|0;u=c[v+12>>2]|0;y=v+32|0;j=c[y>>2]|0;a:do if((g|0)<=4095){b:do if(!g){g=0;h=0}else{i=0;while(1){if((i|0)>=(f|0)){h=i;break b}g=g+-1|0;h=i+1|0;a[e+i>>0]=a[v+324+g>>0]|0;if(!g){g=0;break}else i=h}}while(0);c:do if((h|0)<(f|0)){o=v+20|0;p=v+8|0;q=v+24|0;r=v+28|0;i=j;d:while(1){if(!(tC(b,B)|0))break a;while(1){n=c[B>>2]|0;if((n|0)==(t|0)){h=18;break d}if((n|0)==(u|0))i=0;else break;do{c[v+8516+(i<<2)>>2]=4098;i=i+1|0}while((i|0)!=4096);c[o>>2]=(c[s>>2]|0)+1;n=(c[p>>2]|0)+1|0;c[q>>2]=n;c[r>>2]=1<<n;c[y>>2]=4098;if(!(tC(b,B)|0))break a;else i=4098}if((n|0)>=(u|0)){if((c[v+8516+(n<<2)>>2]|0)==4098){e:do if((n|0)==((c[o>>2]|0)+-2|0))if((i|0)>(u|0)){j=i;m=1;while(1){if((j|0)>4095){j=4098;break e}j=c[v+8516+(j<<2)>>2]|0;k=(j|0)>(u|0);if((m|0)<4096&k)m=(k&1)+m|0;else break}}else j=i;else if((n|0)>(u|0)){j=n;m=1;while(1){if((j|0)>4095){j=4098;break e}j=c[v+8516+(j<<2)>>2]|0;k=(j|0)>(u|0);if((m|0)<4096&k)m=(k&1)+m|0;else break}}else j=n;while(0);j=j&255;a[v+324+g>>0]=j;a[(c[o>>2]|0)+-2+(v+4419)>>0]=j;j=i;g=g+1|0}else j=n;if((g|0)<4095)k=j;else{h=34;break}while(1){if(!((k|0)>(u|0)&(k|0)<4096))break;j=g+1|0;a[v+324+g>>0]=a[v+4419+k>>0]|0;if((j|0)<4095){k=c[v+8516+(k<<2)>>2]|0;g=j}else{h=34;break d}}if((k|0)>4095){h=34;break}m=g+1|0;a[v+324+g>>0]=k;if((m|0)!=0&(h|0)<(f|0)){k=h-f|0;j=~g;j=k>>>0>j>>>0?k:j;k=h-j|0;g=m;do{g=g+-1|0;D=h;h=h+1|0;a[e+D>>0]=a[v+324+g>>0]|0}while((h|0)!=(k|0));g=m+j|0;h=k}else g=m}else{a[e+h>>0]=n;h=h+1|0}do if((i|0)!=4098?(w=v+8516+((c[o>>2]|0)+-2<<2)|0,(c[w>>2]|0)==4098):0){c[w>>2]=i;m=(c[o>>2]|0)+-2|0;if((n|0)==(m|0)){f:do if((i|0)>(u|0)){k=1;while(1){if((i|0)>4095){i=4098;break f}i=c[v+8516+(i<<2)>>2]|0;j=(i|0)>(u|0);if((k|0)<4096&j)k=(j&1)+k|0;else break}}while(0);a[v+4419+n>>0]=i;break}else{g:do if((n|0)>(u|0)){i=n;k=1;while(1){if((i|0)>4095){i=4098;break g}i=c[v+8516+(i<<2)>>2]|0;j=(i|0)>(u|0);if((k|0)<4096&j)k=(j&1)+k|0;else break}}else i=n;while(0);a[v+4419+m>>0]=i;break}}while(0);if((h|0)<(f|0))i=n;else{f=n;break c}}if((h|0)==18){c[b+64>>2]=113;break a}else if((h|0)==34){c[b+64>>2]=112;break a}}else f=j;while(0);c[y>>2]=f;c[x>>2]=g;if(c[z>>2]|0){D=1;l=C;return D|0}while(1){g=c[A>>2]|0;f=c[g+60>>2]|0;if(!f)f=iQ(B,1,1,c[g+56>>2]|0)|0;else f=ig[f&63](b,B,1)|0;if((f|0)!=1){h=64;break}h=a[B>>0]|0;f=g+68|0;if(!(h<<24>>24)){h=63;break}a[f>>0]=h;i=c[A>>2]|0;j=c[i+60>>2]|0;g=g+69|0;f=h&255;if(!j)f=iQ(g,1,f,c[i+56>>2]|0)|0;else f=ig[j&63](b,g,f)|0;if((f|0)!=(d[B>>0]|0|0)){h=64;break}}if((h|0)==63){a[f>>0]=0;c[g+52>>2]=0;D=1;l=C;return D|0}else if((h|0)==64){c[b+64>>2]=102;D=0;l=C;return D|0}}while(0);D=0;l=C;return D|0}function tC(b,d){b=b|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;m=b+72|0;q=c[m>>2]|0;r=q+24|0;h=c[r>>2]|0;if((h|0)>12){c[b+64>>2]=112;r=0;return r|0}p=q+44|0;f=c[p>>2]|0;a:do if((f|0)<(h|0)){n=q+68|0;o=q+69|0;i=q+48|0;l=a[n>>0]|0;g=f;while(1){if(!(l<<24>>24)){f=c[m>>2]|0;g=c[f+60>>2]|0;if(!g)f=iQ(n,1,1,c[f+56>>2]|0)|0;else f=ig[g&63](b,n,1)|0;if((f|0)!=1){g=11;break}l=a[n>>0]|0;f=l&255;if(!(l<<24>>24)){g=13;break}g=c[m>>2]|0;h=c[g+60>>2]|0;if(!h)f=iQ(o,1,f,c[g+56>>2]|0)|0;else f=ig[h&63](b,o,f)|0;g=a[n>>0]|0;if((f|0)!=(g&255|0)){g=18;break}j=a[o>>0]|0;a[o>>0]=2;k=c[p>>2]|0;h=c[r>>2]|0;f=g}else{j=a[o>>0]|0;a[o>>0]=j+1<<24>>24;j=a[(j&255)+(q+68)>>0]|0;k=g;f=l}l=f+-1<<24>>24;a[n>>0]=l;f=c[i>>2]|(j&255)<<k;c[i>>2]=f;g=k+8|0;c[p>>2]=g;if((g|0)>=(h|0))break a}if((g|0)==11){c[b+64>>2]=102;r=0;return r|0}else if((g|0)==13){c[b+64>>2]=112;r=0;return r|0}else if((g|0)==18){c[b+64>>2]=102;r=0;return r|0}}else{f=q+48|0;i=f;f=c[f>>2]|0}while(0);c[d>>2]=(e[35418+(h<<1)>>1]|0)&f;j=c[r>>2]|0;c[i>>2]=f>>>j;c[p>>2]=(c[p>>2]|0)-j;f=q+20|0;h=c[f>>2]|0;if((h|0)>=4097){r=1;return r|0}c[f>>2]=h+1;f=q+28|0;g=c[f>>2]|0;if(!((h|0)>=(g|0)&(j|0)<12)){r=1;return r|0}c[f>>2]=g<<1;c[r>>2]=j+1;r=1;return r|0}function uC(d,f,g,h,i,j){d=d|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;J=l;l=l+64|0;I=J+32|0;F=J;k=I;m=k+32|0;do{b[k>>1]=0;k=k+2|0}while((k|0)<(m|0));E=(g|0)==0;if(!E){k=0;do{H=I+(e[f+(k<<1)>>1]<<1)|0;b[H>>1]=(b[H>>1]|0)+1<<16>>16;k=k+1|0}while((k|0)!=(g|0));m=b[I+30>>1]|0;k=c[i>>2]|0;if(!(m<<16>>16))if(!(b[I+28>>1]|0))H=60;else{m=0;o=14;H=6}else{o=15;H=6}}else{k=c[i>>2]|0;H=60}do if((H|0)==60)if(!(b[I+26>>1]|0))if(!(b[I+24>>1]|0))if(!(b[I+22>>1]|0))if(!(b[I+20>>1]|0))if(!(b[I+18>>1]|0))if(!(b[I+16>>1]|0))if(!(b[I+14>>1]|0))if(!(b[I+12>>1]|0))if(!(b[I+10>>1]|0))if(!(b[I+8>>1]|0))if(!(b[I+6>>1]|0))if(!(b[I+4>>1]|0)){m=b[I+2>>1]|0;if(m<<16>>16){D=m;m=0;n=(k|0)!=0&1;o=1;p=1;break}j=c[h>>2]|0;c[h>>2]=j+4;a[j>>0]=64;a[j+1>>0]=1;b[j+2>>1]=0;j=c[h>>2]|0;c[h>>2]=j+4;a[j>>0]=64;a[j+1>>0]=1;b[j+2>>1]=0;c[i>>2]=1;j=0;l=J;return j|0}else{m=0;o=2;H=6}else{m=0;o=3;H=6}else{m=0;o=4;H=6}else{m=0;o=5;H=6}else{m=0;o=6;H=6}else{m=0;o=7;H=6}else{m=0;o=8;H=6}else{m=0;o=9;H=6}else{m=0;o=10;H=6}else{m=0;o=11;H=6}else{m=0;o=12;H=6}else{m=0;o=13;H=6}while(0);if((H|0)==6){n=k>>>0>o>>>0?o:k;k=1;do{if(b[I+(k<<1)>>1]|0)break;k=k+1|0}while(k>>>0<o>>>0);D=b[I+2>>1]|0;p=k}G=n>>>0<p>>>0?p:n;B=D&65535;k=2-B|0;if((k|0)<0){j=-1;l=J;return j|0}C=e[I+4>>1]|0;k=(k<<1)-C|0;if((k|0)<0){j=-1;l=J;return j|0}A=e[I+6>>1]|0;k=(k<<1)-A|0;if((k|0)<0){j=-1;l=J;return j|0}z=e[I+8>>1]|0;k=(k<<1)-z|0;if((k|0)<0){j=-1;l=J;return j|0}y=e[I+10>>1]|0;k=(k<<1)-y|0;if((k|0)<0){j=-1;l=J;return j|0}x=e[I+12>>1]|0;k=(k<<1)-x|0;if((k|0)<0){j=-1;l=J;return j|0}w=e[I+14>>1]|0;k=(k<<1)-w|0;if((k|0)<0){j=-1;l=J;return j|0}v=e[I+16>>1]|0;k=(k<<1)-v|0;if((k|0)<0){j=-1;l=J;return j|0}u=e[I+18>>1]|0;k=(k<<1)-u|0;if((k|0)<0){j=-1;l=J;return j|0}t=e[I+20>>1]|0;k=(k<<1)-t|0;if((k|0)<0){j=-1;l=J;return j|0}s=e[I+22>>1]|0;k=(k<<1)-s|0;if((k|0)<0){j=-1;l=J;return j|0}r=e[I+24>>1]|0;k=(k<<1)-r|0;if((k|0)<0){j=-1;l=J;return j|0}q=e[I+26>>1]|0;k=(k<<1)-q|0;if((k|0)<0){j=-1;l=J;return j|0}n=e[I+28>>1]|0;k=(k<<1)-n|0;if((k|0)<0){j=-1;l=J;return j|0}k=(k<<1)-(m&65535)|0;if((k|0)<0){j=-1;l=J;return j|0}if(k|0?(d|0)==0|(o|0)!=1:0){j=-1;l=J;return j|0}b[F+2>>1]=0;b[F+4>>1]=D;D=C+B|0;b[F+6>>1]=D;D=A+D|0;b[F+8>>1]=D;D=z+D|0;b[F+10>>1]=D;D=y+D|0;b[F+12>>1]=D;D=x+D|0;b[F+14>>1]=D;D=w+D|0;b[F+16>>1]=D;D=v+D|0;b[F+18>>1]=D;D=u+D|0;b[F+20>>1]=D;D=t+D|0;b[F+22>>1]=D;D=s+D|0;b[F+24>>1]=D;D=r+D|0;b[F+26>>1]=D;D=q+D|0;b[F+28>>1]=D;b[F+30>>1]=n+D;if(!E){m=0;do{k=b[f+(m<<1)>>1]|0;if(k<<16>>16){D=F+((k&65535)<<1)|0;E=b[D>>1]|0;b[D>>1]=E+1<<16>>16;b[j+((E&65535)<<1)>>1]=m}m=m+1|0}while((m|0)!=(g|0))}switch(d|0){case 0:{k=0;D=0;g=j;F=19;d=j;break}case 1:{if(G>>>0>9){j=1;l=J;return j|0}else{k=0;D=1;g=37208;F=256;d=37334}break}default:{k=(d|0)==2;if(k&G>>>0>9){j=1;l=J;return j|0}else{D=0;g=37658;F=-1;d=37784}}}B=1<<G;C=B+-1|0;E=G&255;m=G;z=0;r=0;x=-1;y=c[h>>2]|0;n=0;a:while(1){w=1<<m;u=p;A=n;while(1){p=u-z|0;t=p&255;m=b[j+(A<<1)>>1]|0;n=m&65535;do if((n|0)<(F|0))s=0;else{if((n|0)<=(F|0)){s=96;m=0;break}s=b[d+(n<<1)>>1]&255;m=b[g+(n<<1)>>1]|0}while(0);n=1<<p;p=r>>>z;q=w;do{v=q;q=q-n|0;K=q+p|0;a[y+(K<<2)>>0]=s;a[y+(K<<2)+1>>0]=t;b[y+(K<<2)+2>>1]=m}while((v|0)!=(n|0));m=1<<u+-1;while(1)if(!(m&r))break;else m=m>>>1;if(!m)r=0;else r=(m+-1&r)+m|0;A=A+1|0;v=I+(u<<1)|0;K=(b[v>>1]|0)+-1<<16>>16;b[v>>1]=K;if(!(K<<16>>16)){if((u|0)==(o|0))break a;u=e[f+(e[j+(A<<1)>>1]<<1)>>1]|0}if(u>>>0<=G>>>0)continue;v=r&C;if((v|0)!=(x|0))break}s=(z|0)==0?G:z;t=y+(w<<2)|0;m=u-s|0;b:do if(u>>>0<o>>>0){q=u;p=m;m=1<<m;while(1){n=m-(e[I+(q<<1)>>1]|0)|0;if((n|0)<1){m=p;break b}m=p+1|0;q=m+s|0;if(q>>>0>=o>>>0)break;else{p=m;m=n<<1}}}while(0);q=(1<<m)+B|0;if(D&q>>>0>852|k&q>>>0>592){k=1;H=45;break}z=c[h>>2]|0;a[z+(v<<2)>>0]=m;a[z+(v<<2)+1>>0]=E;b[z+(v<<2)+2>>1]=(t-z|0)>>>2;z=s;p=u;x=v;y=t;n=A;B=q}if((H|0)==45){l=J;return k|0}if(r|0){a[y+(r<<2)>>0]=64;a[y+(r<<2)+1>>0]=t;b[y+(r<<2)+2>>1]=0}c[h>>2]=(c[h>>2]|0)+(B<<2);c[i>>2]=G;K=0;l=J;return K|0}function vC(a,b){a=a|0;b=b|0;return eN(O(b,a)|0)|0}function wC(a){a=a|0;fN(a);return}function xC(a,b,c){a=a|0;b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;e=a>>>16;a=a&65535;if((c|0)==1){k=(d[b>>0]|0)+a|0;k=k>>>0>65520?k+-65521|0:k;j=k+e|0;k=(j>>>0>65520?j+15|0:j)<<16|k;return k|0}if(!b){k=1;return k|0}if(c>>>0<16){if(c)while(1){c=c+-1|0;a=(d[b>>0]|0)+a|0;e=a+e|0;if(!c)break;else b=b+1|0}k=((e>>>0)%65521|0)<<16|(a>>>0>65520?a+-65521|0:a);return k|0}if(c>>>0>5551){i=c+-5552|0;j=(i>>>0)%5552|0;i=i-j|0;h=b;while(1){g=h;f=347;while(1){z=(d[g>>0]|0)+a|0;y=z+(d[g+1>>0]|0)|0;x=y+(d[g+2>>0]|0)|0;w=x+(d[g+3>>0]|0)|0;v=w+(d[g+4>>0]|0)|0;u=v+(d[g+5>>0]|0)|0;t=u+(d[g+6>>0]|0)|0;s=t+(d[g+7>>0]|0)|0;r=s+(d[g+8>>0]|0)|0;q=r+(d[g+9>>0]|0)|0;p=q+(d[g+10>>0]|0)|0;o=p+(d[g+11>>0]|0)|0;n=o+(d[g+12>>0]|0)|0;m=n+(d[g+13>>0]|0)|0;l=m+(d[g+14>>0]|0)|0;a=l+(d[g+15>>0]|0)|0;e=z+e+y+x+w+v+u+t+s+r+q+p+o+n+m+l+a|0;f=f+-1|0;if(!f)break;else g=g+16|0}c=c+-5552|0;a=(a>>>0)%65521|0;e=(e>>>0)%65521|0;if(c>>>0<=5551)break;else h=h+5552|0}b=b+(i+5552)|0;if(j)if(j>>>0>15){c=j;k=15}else{c=j;k=18}}else k=15;if((k|0)==15){g=c+-16|0;h=g&-16;i=h+16|0;f=b;while(1){c=c+-16|0;l=(d[f>>0]|0)+a|0;m=l+(d[f+1>>0]|0)|0;n=m+(d[f+2>>0]|0)|0;o=n+(d[f+3>>0]|0)|0;p=o+(d[f+4>>0]|0)|0;q=p+(d[f+5>>0]|0)|0;r=q+(d[f+6>>0]|0)|0;s=r+(d[f+7>>0]|0)|0;t=s+(d[f+8>>0]|0)|0;u=t+(d[f+9>>0]|0)|0;v=u+(d[f+10>>0]|0)|0;w=v+(d[f+11>>0]|0)|0;x=w+(d[f+12>>0]|0)|0;y=x+(d[f+13>>0]|0)|0;z=y+(d[f+14>>0]|0)|0;a=z+(d[f+15>>0]|0)|0;e=l+e+m+n+o+p+q+r+s+t+u+v+w+x+y+z+a|0;if(c>>>0<=15)break;else f=f+16|0}if((g|0)==(h|0))k=19;else{c=g-h|0;b=b+i|0;k=18}}if((k|0)==18)while(1){c=c+-1|0;a=(d[b>>0]|0)+a|0;e=a+e|0;if(!c){k=19;break}else{b=b+1|0;k=18}}if((k|0)==19){a=(a>>>0)%65521|0;e=(e>>>0)%65521|0}z=e<<16|a;return z|0}function yC(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;if(!b){h=0;return h|0}a=~a;a:do if(e){while(1){if(!(b&3))break;a=c[6680+(((d[b>>0]|0)^a&255)<<2)>>2]^a>>>8;e=e+-1|0;if(!e)break a;else b=b+1|0}if(e>>>0>31){g=e+-32|0;h=g&-32;f=b;while(1){i=c[f>>2]^a;i=c[8728+((i>>>8&255)<<2)>>2]^c[9752+((i&255)<<2)>>2]^c[7704+((i>>>16&255)<<2)>>2]^c[6680+(i>>>24<<2)>>2]^c[f+4>>2];i=c[8728+((i>>>8&255)<<2)>>2]^c[9752+((i&255)<<2)>>2]^c[7704+((i>>>16&255)<<2)>>2]^c[6680+(i>>>24<<2)>>2]^c[f+8>>2];i=c[8728+((i>>>8&255)<<2)>>2]^c[9752+((i&255)<<2)>>2]^c[7704+((i>>>16&255)<<2)>>2]^c[6680+(i>>>24<<2)>>2]^c[f+12>>2];i=c[8728+((i>>>8&255)<<2)>>2]^c[9752+((i&255)<<2)>>2]^c[7704+((i>>>16&255)<<2)>>2]^c[6680+(i>>>24<<2)>>2]^c[f+16>>2];i=c[8728+((i>>>8&255)<<2)>>2]^c[9752+((i&255)<<2)>>2]^c[7704+((i>>>16&255)<<2)>>2]^c[6680+(i>>>24<<2)>>2]^c[f+20>>2];i=c[8728+((i>>>8&255)<<2)>>2]^c[9752+((i&255)<<2)>>2]^c[7704+((i>>>16&255)<<2)>>2]^c[6680+(i>>>24<<2)>>2]^c[f+24>>2];i=c[8728+((i>>>8&255)<<2)>>2]^c[9752+((i&255)<<2)>>2]^c[7704+((i>>>16&255)<<2)>>2]^c[6680+(i>>>24<<2)>>2]^c[f+28>>2];a=c[8728+((i>>>8&255)<<2)>>2]^c[9752+((i&255)<<2)>>2]^c[7704+((i>>>16&255)<<2)>>2]^c[6680+(i>>>24<<2)>>2];e=e+-32|0;if(e>>>0<=31)break;else f=f+32|0}e=g-h|0;b=b+(h+32)|0}if(e>>>0>3){g=e+-4|0;h=g>>>2;f=b;while(1){i=c[f>>2]^a;a=c[8728+((i>>>8&255)<<2)>>2]^c[9752+((i&255)<<2)>>2]^c[7704+((i>>>16&255)<<2)>>2]^c[6680+(i>>>24<<2)>>2];e=e+-4|0;if(e>>>0<=3)break;else f=f+4|0}e=g-(h<<2)|0;b=b+(h+1<<2)|0}if(e)while(1){a=c[6680+(((d[b>>0]|0)^a&255)<<2)>>2]^a>>>8;e=e+-1|0;if(!e)break;else b=b+1|0}}while(0);i=~a;return i|0}function zC(b,c){b=b|0;c=c|0;var e=0;c=b+24|0;c=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;if(c|0){e=b+16|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;while(1){a[e>>0]=a[e>>0]^-128;c=c+-1|0;if(!c)break;else e=e+1|0}}e=b+80|0;c=(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24)+1|0;a[e>>0]=c;a[e+1>>0]=c>>8;a[e+2>>0]=c>>16;a[e+3>>0]=c>>24;c=b+40+(c<<2)|0;c=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;if(!c)return;Bg[c&255](b,-32760);return}function AC(c,e){c=c|0;e=e|0;var f=0,g=0,h=0,i=0;f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;h=c+24|0;e=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;i=e<<1;if(e|0){g=f+i+-2|0;f=f+e|0;while(1){f=f+-1|0;b[g>>1]=(d[f>>0]|0)<<8;e=e+-1|0;if(!e)break;else g=g+-2|0}}a[h>>0]=i;a[h+1>>0]=i>>8;a[h+2>>0]=i>>16;a[h+3>>0]=i>>24;i=c+80|0;e=(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)+1|0;a[i>>0]=e;a[i+1>>0]=e>>8;a[i+2>>0]=e>>16;a[i+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,16);return}function BC(c,e){c=c|0;e=e|0;var f=0,g=0,h=0,i=0;f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;h=c+24|0;e=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;i=e<<1;if(e|0){g=f+i+-2|0;f=f+e|0;while(1){f=f+-1|0;b[g>>1]=((a[f>>0]^-128)&255)<<8;e=e+-1|0;if(!e)break;else g=g+-2|0}}a[h>>0]=i;a[h+1>>0]=i>>8;a[h+2>>0]=i>>16;a[h+3>>0]=i>>24;i=c+80|0;e=(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)+1|0;a[i>>0]=e;a[i+1>>0]=e>>8;a[i+2>>0]=e>>16;a[i+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,-32752);return}function CC(c,e){c=c|0;e=e|0;var f=0,g=0,h=0,i=0;f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;h=c+24|0;e=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;i=e<<1;if(e|0){g=f+i+-2|0;f=f+e|0;while(1){f=f+-1|0;b[g>>1]=LQ((d[f>>0]|0)<<8&65535|0)|0;e=e+-1|0;if(!e)break;else g=g+-2|0}}a[h>>0]=i;a[h+1>>0]=i>>8;a[h+2>>0]=i>>16;a[h+3>>0]=i>>24;i=c+80|0;e=(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)+1|0;a[i>>0]=e;a[i+1>>0]=e>>8;a[i+2>>0]=e>>16;a[i+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,4112);return}function DC(c,e){c=c|0;e=e|0;var f=0,g=0,h=0,i=0;f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;h=c+24|0;e=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;i=e<<1;if(e|0){g=f+i+-2|0;f=f+e|0;while(1){f=f+-1|0;b[g>>1]=LQ(((a[f>>0]^-128)&255)<<8&65535|0)|0;e=e+-1|0;if(!e)break;else g=g+-2|0}}a[h>>0]=i;a[h+1>>0]=i>>8;a[h+2>>0]=i>>16;a[h+3>>0]=i>>24;i=c+80|0;e=(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)+1|0;a[i>>0]=e;a[i+1>>0]=e>>8;a[i+2>>0]=e>>16;a[i+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,-28656);return}function EC(b,e){b=b|0;e=e|0;var f=0,g=0,h=0;f=b+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;h=b+24|0;e=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;if(!e)e=0;else{g=f+(e<<2)+-4|0;f=f+e|0;while(1){f=f+-1|0;c[g>>2]=((a[f>>0]^-128)&255)<<24;e=e+-1|0;if(!e)break;else g=g+-4|0}e=(d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24)<<2}a[h>>0]=e;a[h+1>>0]=e>>8;a[h+2>>0]=e>>16;a[h+3>>0]=e>>24;h=b+80|0;e=(d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24)+1|0;a[h>>0]=e;a[h+1>>0]=e>>8;a[h+2>>0]=e>>16;a[h+3>>0]=e>>24;e=b+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](b,-32736);return}function FC(b,e){b=b|0;e=e|0;var f=0,g=0,h=0;f=b+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;h=b+24|0;e=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;if(!e)e=0;else{g=f+(e<<2)+-4|0;f=f+e|0;while(1){f=f+-1|0;c[g>>2]=MQ(((a[f>>0]^-128)&255)<<24|0)|0;e=e+-1|0;if(!e)break;else g=g+-4|0}e=(d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24)<<2}a[h>>0]=e;a[h+1>>0]=e>>8;a[h+2>>0]=e>>16;a[h+3>>0]=e>>24;h=b+80|0;e=(d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24)+1|0;a[h>>0]=e;a[h+1>>0]=e>>8;a[h+2>>0]=e>>16;a[h+3>>0]=e>>24;e=b+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](b,-28640);return}function GC(b,c){b=b|0;c=c|0;var e=0,f=0,h=0,i=0;e=b+16|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;h=b+24|0;c=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;i=c<<2;if(c|0){f=e+i+-4|0;e=e+c|0;while(1){e=e+-1|0;g[f>>2]=+(d[e>>0]|0)*.007874015718698502+-1.0;c=c+-1|0;if(!c)break;else f=f+-4|0}}a[h>>0]=i;a[h+1>>0]=i>>8;a[h+2>>0]=i>>16;a[h+3>>0]=i>>24;i=b+80|0;c=(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)+1|0;a[i>>0]=c;a[i+1>>0]=c>>8;a[i+2>>0]=c>>16;a[i+3>>0]=c>>24;c=b+40+(c<<2)|0;c=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;if(!c)return;Bg[c&255](b,-32480);return}function HC(b,e){b=b|0;e=e|0;var f=0,h=0,i=0,k=0;f=b+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;i=b+24|0;e=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;k=e<<2;if(e|0){h=f+k+-4|0;f=f+e|0;while(1){f=f+-1|0;c[h>>2]=MQ((g[j>>2]=+(d[f>>0]|0)*.007874015718698502+-1.0,c[j>>2]|0)|0)|0;e=e+-1|0;if(!e)break;else h=h+-4|0}}a[i>>0]=k;a[i+1>>0]=k>>8;a[i+2>>0]=k>>16;a[i+3>>0]=k>>24;k=b+80|0;e=(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)+1|0;a[k>>0]=e;a[k+1>>0]=e>>8;a[k+2>>0]=e>>16;a[k+3>>0]=e>>24;e=b+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](b,-28384);return}function IC(b,c){b=b|0;c=c|0;var e=0;c=b+24|0;c=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;if(c|0){e=b+16|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;while(1){a[e>>0]=a[e>>0]^-128;c=c+-1|0;if(!c)break;else e=e+1|0}}e=b+80|0;c=(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24)+1|0;a[e>>0]=c;a[e+1>>0]=c>>8;a[e+2>>0]=c>>16;a[e+3>>0]=c>>24;c=b+40+(c<<2)|0;c=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;if(!c)return;Bg[c&255](b,8);return}function JC(c,e){c=c|0;e=e|0;var f=0,g=0,h=0,i=0;f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;h=c+24|0;e=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;i=e<<1;if(e|0){g=f+i+-2|0;f=f+e|0;while(1){f=f+-1|0;b[g>>1]=a[f>>0]<<8^32768;e=e+-1|0;if(!e)break;else g=g+-2|0}}a[h>>0]=i;a[h+1>>0]=i>>8;a[h+2>>0]=i>>16;a[h+3>>0]=i>>24;i=c+80|0;e=(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)+1|0;a[i>>0]=e;a[i+1>>0]=e>>8;a[i+2>>0]=e>>16;a[i+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,16);return}function KC(c,e){c=c|0;e=e|0;var f=0,g=0,h=0,i=0;f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;h=c+24|0;e=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;i=e<<1;if(e|0){g=f+i+-2|0;f=f+e|0;while(1){f=f+-1|0;b[g>>1]=a[f>>0]<<8;e=e+-1|0;if(!e)break;else g=g+-2|0}}a[h>>0]=i;a[h+1>>0]=i>>8;a[h+2>>0]=i>>16;a[h+3>>0]=i>>24;i=c+80|0;e=(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)+1|0;a[i>>0]=e;a[i+1>>0]=e>>8;a[i+2>>0]=e>>16;a[i+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,-32752);return}function LC(c,e){c=c|0;e=e|0;var f=0,g=0,h=0,i=0;f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;h=c+24|0;e=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;i=e<<1;if(e|0){g=f+i+-2|0;f=f+e|0;while(1){f=f+-1|0;b[g>>1]=LQ((a[f>>0]<<8^32768)&65535|0)|0;e=e+-1|0;if(!e)break;else g=g+-2|0}}a[h>>0]=i;a[h+1>>0]=i>>8;a[h+2>>0]=i>>16;a[h+3>>0]=i>>24;i=c+80|0;e=(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)+1|0;a[i>>0]=e;a[i+1>>0]=e>>8;a[i+2>>0]=e>>16;a[i+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,4112);return}function MC(c,e){c=c|0;e=e|0;var f=0,g=0,h=0,i=0;f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;h=c+24|0;e=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;i=e<<1;if(e|0){g=f+i+-2|0;f=f+e|0;while(1){f=f+-1|0;b[g>>1]=LQ(a[f>>0]<<8&65535|0)|0;e=e+-1|0;if(!e)break;else g=g+-2|0}}a[h>>0]=i;a[h+1>>0]=i>>8;a[h+2>>0]=i>>16;a[h+3>>0]=i>>24;i=c+80|0;e=(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)+1|0;a[i>>0]=e;a[i+1>>0]=e>>8;a[i+2>>0]=e>>16;a[i+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,-28656);return}function NC(b,e){b=b|0;e=e|0;var f=0,g=0,h=0;f=b+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;h=b+24|0;e=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;if(!e)e=0;else{g=f+(e<<2)+-4|0;f=f+e|0;while(1){f=f+-1|0;c[g>>2]=(d[f>>0]|0)<<24;e=e+-1|0;if(!e)break;else g=g+-4|0}e=(d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24)<<2}a[h>>0]=e;a[h+1>>0]=e>>8;a[h+2>>0]=e>>16;a[h+3>>0]=e>>24;h=b+80|0;e=(d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24)+1|0;a[h>>0]=e;a[h+1>>0]=e>>8;a[h+2>>0]=e>>16;a[h+3>>0]=e>>24;e=b+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](b,-32736);return}function OC(b,e){b=b|0;e=e|0;var f=0,g=0,h=0;f=b+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;h=b+24|0;e=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;if(!e)e=0;else{g=f+(e<<2)+-4|0;f=f+e|0;while(1){f=f+-1|0;c[g>>2]=MQ((d[f>>0]|0)<<24|0)|0;e=e+-1|0;if(!e)break;else g=g+-4|0}e=(d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24)<<2}a[h>>0]=e;a[h+1>>0]=e>>8;a[h+2>>0]=e>>16;a[h+3>>0]=e>>24;h=b+80|0;e=(d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24)+1|0;a[h>>0]=e;a[h+1>>0]=e>>8;a[h+2>>0]=e>>16;a[h+3>>0]=e>>24;e=b+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](b,-28640);return}function PC(b,c){b=b|0;c=c|0;var e=0,f=0,h=0,i=0;e=b+16|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;h=b+24|0;c=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;i=c<<2;if(c|0){f=e+i+-4|0;e=e+c|0;while(1){e=e+-1|0;g[f>>2]=+(a[e>>0]|0)*.007874015718698502;c=c+-1|0;if(!c)break;else f=f+-4|0}}a[h>>0]=i;a[h+1>>0]=i>>8;a[h+2>>0]=i>>16;a[h+3>>0]=i>>24;i=b+80|0;c=(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)+1|0;a[i>>0]=c;a[i+1>>0]=c>>8;a[i+2>>0]=c>>16;a[i+3>>0]=c>>24;c=b+40+(c<<2)|0;c=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;if(!c)return;Bg[c&255](b,-32480);return}function QC(b,e){b=b|0;e=e|0;var f=0,h=0,i=0,k=0;f=b+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;i=b+24|0;e=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;k=e<<2;if(e|0){h=f+k+-4|0;f=f+e|0;while(1){f=f+-1|0;c[h>>2]=MQ((g[j>>2]=+(a[f>>0]|0)*.007874015718698502,c[j>>2]|0)|0)|0;e=e+-1|0;if(!e)break;else h=h+-4|0}}a[i>>0]=k;a[i+1>>0]=k>>8;a[i+2>>0]=k>>16;a[i+3>>0]=k>>24;k=b+80|0;e=(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)+1|0;a[k>>0]=e;a[k+1>>0]=e>>8;a[k+2>>0]=e>>16;a[k+3>>0]=e>>24;e=b+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](b,-28384);return}function RC(b,c){b=b|0;c=c|0;var f=0,g=0,h=0,i=0;f=b+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;i=b+24|0;c=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=c>>>1;if(h){g=f;c=h;while(1){a[g>>0]=(e[f>>1]|0)>>>8;c=c+-1|0;if(!c)break;else{g=g+1|0;f=f+2|0}}c=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24}c=(c|0)/2|0;a[i>>0]=c;a[i+1>>0]=c>>8;a[i+2>>0]=c>>16;a[i+3>>0]=c>>24;i=b+80|0;c=(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)+1|0;a[i>>0]=c;a[i+1>>0]=c>>8;a[i+2>>0]=c>>16;a[i+3>>0]=c>>24;c=b+40+(c<<2)|0;c=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;if(!c)return;Bg[c&255](b,8);return}function SC(b,c){b=b|0;c=c|0;var f=0,g=0,h=0,i=0;f=b+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;i=b+24|0;c=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=c>>>1;if(h){g=f;c=h;while(1){a[g>>0]=(e[f>>1]|0)>>>8&255^-128;c=c+-1|0;if(!c)break;else{g=g+1|0;f=f+2|0}}c=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24}c=(c|0)/2|0;a[i>>0]=c;a[i+1>>0]=c>>8;a[i+2>>0]=c>>16;a[i+3>>0]=c>>24;i=b+80|0;c=(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)+1|0;a[i>>0]=c;a[i+1>>0]=c>>8;a[i+2>>0]=c>>16;a[i+3>>0]=c>>24;c=b+40+(c<<2)|0;c=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;if(!c)return;Bg[c&255](b,-32760);return}function TC(c,e){c=c|0;e=e|0;var f=0;e=c+24|0;e=(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24)>>>1;if(e|0){f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;while(1){b[f>>1]=b[f>>1]^-32768;e=e+-1|0;if(!e)break;else f=f+2|0}}f=c+80|0;e=(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24)+1|0;a[f>>0]=e;a[f+1>>0]=e>>8;a[f+2>>0]=e>>16;a[f+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,-32752);return}function UC(c,e){c=c|0;e=e|0;var f=0;e=c+24|0;e=(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24)>>>1;if(e|0){f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;while(1){b[f>>1]=LQ(b[f>>1]|0)|0;e=e+-1|0;if(!e)break;else f=f+2|0}}f=c+80|0;e=(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24)+1|0;a[f>>0]=e;a[f+1>>0]=e>>8;a[f+2>>0]=e>>16;a[f+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,4112);return}function VC(c,e){c=c|0;e=e|0;var f=0;e=c+24|0;e=(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24)>>>1;if(e|0){f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;while(1){b[f>>1]=LQ(b[f>>1]^-32768|0)|0;e=e+-1|0;if(!e)break;else f=f+2|0}}f=c+80|0;e=(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24)+1|0;a[f>>0]=e;a[f+1>>0]=e>>8;a[f+2>>0]=e>>16;a[f+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,-28656);return}function WC(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=e+16|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;j=e+24|0;f=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=f>>>1;if(h){i=g+(f<<1)+-4|0;g=g+f+-2|0;f=h;while(1){c[i>>2]=((b[g>>1]^-32768)&65535)<<16;f=f+-1|0;if(!f)break;else{i=i+-4|0;g=g+-2|0}}f=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24}f=f<<1;a[j>>0]=f;a[j+1>>0]=f>>8;a[j+2>>0]=f>>16;a[j+3>>0]=f>>24;j=e+80|0;f=(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)+1|0;a[j>>0]=f;a[j+1>>0]=f>>8;a[j+2>>0]=f>>16;a[j+3>>0]=f>>24;f=e+40+(f<<2)|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!f)return;Bg[f&255](e,-32736);return}function XC(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=e+16|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;j=e+24|0;f=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=f>>>1;if(h){i=g+(f<<1)+-4|0;g=g+f+-2|0;f=h;while(1){c[i>>2]=MQ(((b[g>>1]^-32768)&65535)<<16|0)|0;f=f+-1|0;if(!f)break;else{i=i+-4|0;g=g+-2|0}}f=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24}f=f<<1;a[j>>0]=f;a[j+1>>0]=f>>8;a[j+2>>0]=f>>16;a[j+3>>0]=f>>24;j=e+80|0;f=(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)+1|0;a[j>>0]=f;a[j+1>>0]=f>>8;a[j+2>>0]=f>>16;a[j+3>>0]=f>>24;f=e+40+(f<<2)|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!f)return;Bg[f&255](e,-28640);return}function YC(b,c){b=b|0;c=c|0;var f=0,h=0,i=0,j=0,k=0;f=b+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;j=b+24|0;h=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;k=h<<1;c=h>>>1;if(c|0){i=f+k+-4|0;f=f+h+-2|0;while(1){g[i>>2]=+(e[f>>1]|0)*3.0518509447574615e-05+-1.0;c=c+-1|0;if(!c)break;else{i=i+-4|0;f=f+-2|0}}}a[j>>0]=k;a[j+1>>0]=k>>8;a[j+2>>0]=k>>16;a[j+3>>0]=k>>24;k=b+80|0;c=(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)+1|0;a[k>>0]=c;a[k+1>>0]=c>>8;a[k+2>>0]=c>>16;a[k+3>>0]=c>>24;c=b+40+(c<<2)|0;c=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;if(!c)return;Bg[c&255](b,-32480);return}function ZC(b,f){b=b|0;f=f|0;var h=0,i=0,k=0,l=0,m=0;h=b+16|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;l=b+24|0;i=d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24;m=i<<1;f=i>>>1;if(f|0){k=h+m+-4|0;h=h+i+-2|0;while(1){c[k>>2]=MQ((g[j>>2]=+(e[h>>1]|0)*3.0518509447574615e-05+-1.0,c[j>>2]|0)|0)|0;f=f+-1|0;if(!f)break;else{k=k+-4|0;h=h+-2|0}}}a[l>>0]=m;a[l+1>>0]=m>>8;a[l+2>>0]=m>>16;a[l+3>>0]=m>>24;m=b+80|0;f=(d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)+1|0;a[m>>0]=f;a[m+1>>0]=f>>8;a[m+2>>0]=f>>16;a[m+3>>0]=f>>24;f=b+40+(f<<2)|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!f)return;Bg[f&255](b,-28384);return}function _C(b,c){b=b|0;c=c|0;var f=0,g=0,h=0,i=0;f=b+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;i=b+24|0;c=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=c>>>1;if(h){g=f;c=h;while(1){a[g>>0]=(e[f>>1]|0)>>>8^128;c=c+-1|0;if(!c)break;else{g=g+1|0;f=f+2|0}}c=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24}c=(c|0)/2|0;a[i>>0]=c;a[i+1>>0]=c>>8;a[i+2>>0]=c>>16;a[i+3>>0]=c>>24;i=b+80|0;c=(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)+1|0;a[i>>0]=c;a[i+1>>0]=c>>8;a[i+2>>0]=c>>16;a[i+3>>0]=c>>24;c=b+40+(c<<2)|0;c=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;if(!c)return;Bg[c&255](b,8);return}function $C(b,c){b=b|0;c=c|0;var f=0,g=0,h=0,i=0;f=b+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;i=b+24|0;c=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=c>>>1;if(h){g=f;c=h;while(1){a[g>>0]=(e[f>>1]|0)>>>8;c=c+-1|0;if(!c)break;else{g=g+1|0;f=f+2|0}}c=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24}c=(c|0)/2|0;a[i>>0]=c;a[i+1>>0]=c>>8;a[i+2>>0]=c>>16;a[i+3>>0]=c>>24;i=b+80|0;c=(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)+1|0;a[i>>0]=c;a[i+1>>0]=c>>8;a[i+2>>0]=c>>16;a[i+3>>0]=c>>24;c=b+40+(c<<2)|0;c=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;if(!c)return;Bg[c&255](b,-32760);return}function aD(c,e){c=c|0;e=e|0;var f=0;e=c+24|0;e=(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24)>>>1;if(e|0){f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;while(1){b[f>>1]=b[f>>1]^-32768;e=e+-1|0;if(!e)break;else f=f+2|0}}f=c+80|0;e=(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24)+1|0;a[f>>0]=e;a[f+1>>0]=e>>8;a[f+2>>0]=e>>16;a[f+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,16);return}function bD(c,e){c=c|0;e=e|0;var f=0;e=c+24|0;e=(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24)>>>1;if(e|0){f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;while(1){b[f>>1]=LQ(b[f>>1]^-32768|0)|0;e=e+-1|0;if(!e)break;else f=f+2|0}}f=c+80|0;e=(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24)+1|0;a[f>>0]=e;a[f+1>>0]=e>>8;a[f+2>>0]=e>>16;a[f+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,4112);return}function cD(c,e){c=c|0;e=e|0;var f=0;e=c+24|0;e=(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24)>>>1;if(e|0){f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;while(1){b[f>>1]=LQ(b[f>>1]|0)|0;e=e+-1|0;if(!e)break;else f=f+2|0}}f=c+80|0;e=(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24)+1|0;a[f>>0]=e;a[f+1>>0]=e>>8;a[f+2>>0]=e>>16;a[f+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,-28656);return}function dD(b,f){b=b|0;f=f|0;var g=0,h=0,i=0,j=0;g=b+16|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;j=b+24|0;f=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=f>>>1;if(h){i=g+(f<<1)+-4|0;g=g+f+-2|0;f=h;while(1){c[i>>2]=(e[g>>1]|0)<<16;f=f+-1|0;if(!f)break;else{i=i+-4|0;g=g+-2|0}}f=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24}f=f<<1;a[j>>0]=f;a[j+1>>0]=f>>8;a[j+2>>0]=f>>16;a[j+3>>0]=f>>24;j=b+80|0;f=(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)+1|0;a[j>>0]=f;a[j+1>>0]=f>>8;a[j+2>>0]=f>>16;a[j+3>>0]=f>>24;f=b+40+(f<<2)|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!f)return;Bg[f&255](b,-32736);return}function eD(b,f){b=b|0;f=f|0;var g=0,h=0,i=0,j=0;g=b+16|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;j=b+24|0;f=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=f>>>1;if(h){i=g+(f<<1)+-4|0;g=g+f+-2|0;f=h;while(1){c[i>>2]=MQ((e[g>>1]|0)<<16|0)|0;f=f+-1|0;if(!f)break;else{i=i+-4|0;g=g+-2|0}}f=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24}f=f<<1;a[j>>0]=f;a[j+1>>0]=f>>8;a[j+2>>0]=f>>16;a[j+3>>0]=f>>24;j=b+80|0;f=(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)+1|0;a[j>>0]=f;a[j+1>>0]=f>>8;a[j+2>>0]=f>>16;a[j+3>>0]=f>>24;f=b+40+(f<<2)|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!f)return;Bg[f&255](b,-28640);return}function fD(c,e){c=c|0;e=e|0;var f=0,h=0,i=0,j=0,k=0;f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;j=c+24|0;h=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;k=h<<1;e=h>>>1;if(e|0){i=f+k+-4|0;f=f+h+-2|0;while(1){g[i>>2]=+(b[f>>1]|0)*3.0518509447574615e-05;e=e+-1|0;if(!e)break;else{i=i+-4|0;f=f+-2|0}}}a[j>>0]=k;a[j+1>>0]=k>>8;a[j+2>>0]=k>>16;a[j+3>>0]=k>>24;k=c+80|0;e=(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)+1|0;a[k>>0]=e;a[k+1>>0]=e>>8;a[k+2>>0]=e>>16;a[k+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,-32480);return}function gD(e,f){e=e|0;f=f|0;var h=0,i=0,k=0,l=0,m=0;h=e+16|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;l=e+24|0;i=d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24;m=i<<1;f=i>>>1;if(f|0){k=h+m+-4|0;h=h+i+-2|0;while(1){c[k>>2]=MQ((g[j>>2]=+(b[h>>1]|0)*3.0518509447574615e-05,c[j>>2]|0)|0)|0;f=f+-1|0;if(!f)break;else{k=k+-4|0;h=h+-2|0}}}a[l>>0]=m;a[l+1>>0]=m>>8;a[l+2>>0]=m>>16;a[l+3>>0]=m>>24;m=e+80|0;f=(d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)+1|0;a[m>>0]=f;a[m+1>>0]=f>>8;a[m+2>>0]=f>>16;a[m+3>>0]=f>>24;f=e+40+(f<<2)|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!f)return;Bg[f&255](e,-28384);return}function hD(c,e){c=c|0;e=e|0;var f=0,g=0,h=0,i=0;f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;i=c+24|0;e=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=e>>>1;if(h){g=f;e=h;while(1){a[g>>0]=b[f>>1];e=e+-1|0;if(!e)break;else{g=g+1|0;f=f+2|0}}e=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24}e=(e|0)/2|0;a[i>>0]=e;a[i+1>>0]=e>>8;a[i+2>>0]=e>>16;a[i+3>>0]=e>>24;i=c+80|0;e=(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)+1|0;a[i>>0]=e;a[i+1>>0]=e>>8;a[i+2>>0]=e>>16;a[i+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,8);return}function iD(c,e){c=c|0;e=e|0;var f=0,g=0,h=0,i=0;f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;i=c+24|0;e=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=e>>>1;if(h){g=f;e=h;while(1){a[g>>0]=b[f>>1]&255^-128;e=e+-1|0;if(!e)break;else{g=g+1|0;f=f+2|0}}e=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24}e=(e|0)/2|0;a[i>>0]=e;a[i+1>>0]=e>>8;a[i+2>>0]=e>>16;a[i+3>>0]=e>>24;i=c+80|0;e=(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)+1|0;a[i>>0]=e;a[i+1>>0]=e>>8;a[i+2>>0]=e>>16;a[i+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,-32760);return}function jD(c,e){c=c|0;e=e|0;var f=0;e=c+24|0;e=(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24)>>>1;if(e|0){f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;while(1){b[f>>1]=LQ(b[f>>1]|0)|0;e=e+-1|0;if(!e)break;else f=f+2|0}}f=c+80|0;e=(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24)+1|0;a[f>>0]=e;a[f+1>>0]=e>>8;a[f+2>>0]=e>>16;a[f+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,16);return}function kD(c,e){c=c|0;e=e|0;var f=0;e=c+24|0;e=(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24)>>>1;if(e|0){f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;while(1){b[f>>1]=LQ(b[f>>1]^128|0)|0;e=e+-1|0;if(!e)break;else f=f+2|0}}f=c+80|0;e=(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24)+1|0;a[f>>0]=e;a[f+1>>0]=e>>8;a[f+2>>0]=e>>16;a[f+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,-32752);return}function lD(c,e){c=c|0;e=e|0;var f=0;e=c+24|0;e=(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24)>>>1;if(e|0){f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;while(1){b[f>>1]=b[f>>1]^128;e=e+-1|0;if(!e)break;else f=f+2|0}}f=c+80|0;e=(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24)+1|0;a[f>>0]=e;a[f+1>>0]=e>>8;a[f+2>>0]=e>>16;a[f+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,-28656);return}function mD(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=e+16|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;j=e+24|0;f=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=f>>>1;if(h){i=g+(f<<1)+-4|0;g=g+f+-2|0;f=h;while(1){c[i>>2]=((LQ(b[g>>1]^128|0)|0)&65535)<<16;f=f+-1|0;if(!f)break;else{i=i+-4|0;g=g+-2|0}}f=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24}f=f<<1;a[j>>0]=f;a[j+1>>0]=f>>8;a[j+2>>0]=f>>16;a[j+3>>0]=f>>24;j=e+80|0;f=(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)+1|0;a[j>>0]=f;a[j+1>>0]=f>>8;a[j+2>>0]=f>>16;a[j+3>>0]=f>>24;f=e+40+(f<<2)|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!f)return;Bg[f&255](e,-32736);return}function nD(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=e+16|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;j=e+24|0;f=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=f>>>1;if(h){i=g+(f<<1)+-4|0;g=g+f+-2|0;f=h;while(1){c[i>>2]=MQ(((LQ(b[g>>1]^128|0)|0)&65535)<<16|0)|0;f=f+-1|0;if(!f)break;else{i=i+-4|0;g=g+-2|0}}f=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24}f=f<<1;a[j>>0]=f;a[j+1>>0]=f>>8;a[j+2>>0]=f>>16;a[j+3>>0]=f>>24;j=e+80|0;f=(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)+1|0;a[j>>0]=f;a[j+1>>0]=f>>8;a[j+2>>0]=f>>16;a[j+3>>0]=f>>24;f=e+40+(f<<2)|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!f)return;Bg[f&255](e,-28640);return}function oD(c,e){c=c|0;e=e|0;var f=0,h=0,i=0,j=0,k=0;f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;j=c+24|0;h=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;k=h<<1;e=h>>>1;if(e|0){i=f+k+-4|0;f=f+h+-2|0;while(1){g[i>>2]=+((LQ(b[f>>1]|0)|0)&65535)*3.0518509447574615e-05+-1.0;e=e+-1|0;if(!e)break;else{i=i+-4|0;f=f+-2|0}}}a[j>>0]=k;a[j+1>>0]=k>>8;a[j+2>>0]=k>>16;a[j+3>>0]=k>>24;k=c+80|0;e=(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)+1|0;a[k>>0]=e;a[k+1>>0]=e>>8;a[k+2>>0]=e>>16;a[k+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,-32480);return}function pD(e,f){e=e|0;f=f|0;var h=0,i=0,k=0,l=0,m=0,n=0.0;h=e+16|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;l=e+24|0;i=d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24;m=i<<1;f=i>>>1;if(f|0){k=h+m+-4|0;h=h+i+-2|0;while(1){n=+((LQ(b[h>>1]|0)|0)&65535)*3.0518509447574615e-05+-1.0;c[k>>2]=MQ((g[j>>2]=n,c[j>>2]|0)|0)|0;f=f+-1|0;if(!f)break;else{k=k+-4|0;h=h+-2|0}}}a[l>>0]=m;a[l+1>>0]=m>>8;a[l+2>>0]=m>>16;a[l+3>>0]=m>>24;m=e+80|0;f=(d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)+1|0;a[m>>0]=f;a[m+1>>0]=f>>8;a[m+2>>0]=f>>16;a[m+3>>0]=f>>24;f=e+40+(f<<2)|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!f)return;Bg[f&255](e,-28384);return}function qD(c,e){c=c|0;e=e|0;var f=0,g=0,h=0,i=0;f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;i=c+24|0;e=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=e>>>1;if(h){g=f;e=h;while(1){a[g>>0]=(b[f>>1]<<8&65535)>>>8^128;e=e+-1|0;if(!e)break;else{g=g+1|0;f=f+2|0}}e=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24}e=(e|0)/2|0;a[i>>0]=e;a[i+1>>0]=e>>8;a[i+2>>0]=e>>16;a[i+3>>0]=e>>24;i=c+80|0;e=(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)+1|0;a[i>>0]=e;a[i+1>>0]=e>>8;a[i+2>>0]=e>>16;a[i+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,8);return}function rD(c,e){c=c|0;e=e|0;var f=0,g=0,h=0,i=0;f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;i=c+24|0;e=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=e>>>1;if(h){g=f;e=h;while(1){a[g>>0]=b[f>>1];e=e+-1|0;if(!e)break;else{g=g+1|0;f=f+2|0}}e=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24}e=(e|0)/2|0;a[i>>0]=e;a[i+1>>0]=e>>8;a[i+2>>0]=e>>16;a[i+3>>0]=e>>24;i=c+80|0;e=(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)+1|0;a[i>>0]=e;a[i+1>>0]=e>>8;a[i+2>>0]=e>>16;a[i+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,-32760);return}function sD(c,e){c=c|0;e=e|0;var f=0;e=c+24|0;e=(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24)>>>1;if(e|0){f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;while(1){b[f>>1]=LQ(b[f>>1]^128|0)|0;e=e+-1|0;if(!e)break;else f=f+2|0}}f=c+80|0;e=(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24)+1|0;a[f>>0]=e;a[f+1>>0]=e>>8;a[f+2>>0]=e>>16;a[f+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,16);return}function tD(c,e){c=c|0;e=e|0;var f=0;e=c+24|0;e=(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24)>>>1;if(e|0){f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;while(1){b[f>>1]=LQ(b[f>>1]|0)|0;e=e+-1|0;if(!e)break;else f=f+2|0}}f=c+80|0;e=(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24)+1|0;a[f>>0]=e;a[f+1>>0]=e>>8;a[f+2>>0]=e>>16;a[f+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,-32752);return}function uD(c,e){c=c|0;e=e|0;var f=0;e=c+24|0;e=(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24)>>>1;if(e|0){f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;while(1){b[f>>1]=b[f>>1]^128;e=e+-1|0;if(!e)break;else f=f+2|0}}f=c+80|0;e=(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24)+1|0;a[f>>0]=e;a[f+1>>0]=e>>8;a[f+2>>0]=e>>16;a[f+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,4112);return}function vD(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=e+16|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;j=e+24|0;f=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=f>>>1;if(h){i=g+(f<<1)+-4|0;g=g+f+-2|0;f=h;while(1){c[i>>2]=((LQ(b[g>>1]|0)|0)&65535)<<16;f=f+-1|0;if(!f)break;else{i=i+-4|0;g=g+-2|0}}f=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24}f=f<<1;a[j>>0]=f;a[j+1>>0]=f>>8;a[j+2>>0]=f>>16;a[j+3>>0]=f>>24;j=e+80|0;f=(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)+1|0;a[j>>0]=f;a[j+1>>0]=f>>8;a[j+2>>0]=f>>16;a[j+3>>0]=f>>24;f=e+40+(f<<2)|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!f)return;Bg[f&255](e,-32736);return}function wD(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=e+16|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;j=e+24|0;f=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;h=f>>>1;if(h){i=g+(f<<1)+-4|0;g=g+f+-2|0;f=h;while(1){c[i>>2]=MQ(((LQ(b[g>>1]|0)|0)&65535)<<16|0)|0;f=f+-1|0;if(!f)break;else{i=i+-4|0;g=g+-2|0}}f=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24}f=f<<1;a[j>>0]=f;a[j+1>>0]=f>>8;a[j+2>>0]=f>>16;a[j+3>>0]=f>>24;j=e+80|0;f=(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)+1|0;a[j>>0]=f;a[j+1>>0]=f>>8;a[j+2>>0]=f>>16;a[j+3>>0]=f>>24;f=e+40+(f<<2)|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!f)return;Bg[f&255](e,-28640);return}function xD(c,e){c=c|0;e=e|0;var f=0,h=0,i=0,j=0,k=0;f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;j=c+24|0;h=d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24;k=h<<1;e=h>>>1;if(e|0){i=f+k+-4|0;f=f+h+-2|0;while(1){g[i>>2]=+((LQ(b[f>>1]|0)|0)<<16>>16)*3.0518509447574615e-05;e=e+-1|0;if(!e)break;else{i=i+-4|0;f=f+-2|0}}}a[j>>0]=k;a[j+1>>0]=k>>8;a[j+2>>0]=k>>16;a[j+3>>0]=k>>24;k=c+80|0;e=(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)+1|0;a[k>>0]=e;a[k+1>>0]=e>>8;a[k+2>>0]=e>>16;a[k+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,-32480);return}function yD(e,f){e=e|0;f=f|0;var h=0,i=0,k=0,l=0,m=0,n=0.0;h=e+16|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;l=e+24|0;i=d[l>>0]|d[l+1>>0]<<8|d[l+2>>0]<<16|d[l+3>>0]<<24;m=i<<1;f=i>>>1;if(f|0){k=h+m+-4|0;h=h+i+-2|0;while(1){n=+((LQ(b[h>>1]|0)|0)<<16>>16)*3.0518509447574615e-05;c[k>>2]=MQ((g[j>>2]=n,c[j>>2]|0)|0)|0;f=f+-1|0;if(!f)break;else{k=k+-4|0;h=h+-2|0}}}a[l>>0]=m;a[l+1>>0]=m>>8;a[l+2>>0]=m>>16;a[l+3>>0]=m>>24;m=e+80|0;f=(d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)+1|0;a[m>>0]=f;a[m+1>>0]=f>>8;a[m+2>>0]=f>>16;a[m+3>>0]=f>>24;f=e+40+(f<<2)|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!f)return;Bg[f&255](e,-28384);return}function zD(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=b+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;i=b+24|0;e=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=e>>>2;if(h){g=f;e=h;while(1){a[g>>0]=(c[f>>2]|0)>>>24^128;e=e+-1|0;if(!e)break;else{g=g+1|0;f=f+4|0}}e=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24}e=(e|0)/4|0;a[i>>0]=e;a[i+1>>0]=e>>8;a[i+2>>0]=e>>16;a[i+3>>0]=e>>24;i=b+80|0;e=(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)+1|0;a[i>>0]=e;a[i+1>>0]=e>>8;a[i+2>>0]=e>>16;a[i+3>>0]=e>>24;e=b+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](b,8);return}function AD(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=b+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;i=b+24|0;e=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=e>>>2;if(h){g=f;e=h;while(1){a[g>>0]=(c[f>>2]|0)>>>24;e=e+-1|0;if(!e)break;else{g=g+1|0;f=f+4|0}}e=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24}e=(e|0)/4|0;a[i>>0]=e;a[i+1>>0]=e>>8;a[i+2>>0]=e>>16;a[i+3>>0]=e>>24;i=b+80|0;e=(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)+1|0;a[i>>0]=e;a[i+1>>0]=e>>8;a[i+2>>0]=e>>16;a[i+3>>0]=e>>24;e=b+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](b,-32760);return}function BD(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=e+16|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=e+24|0;j=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;f=j>>>2;if(f|0){h=g;while(1){b[h>>1]=(c[g>>2]|0)>>>16^32768;f=f+-1|0;if(!f)break;else{h=h+2|0;g=g+4|0}}}j=(j|0)/2|0;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;j=e+80|0;f=(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)+1|0;a[j>>0]=f;a[j+1>>0]=f>>8;a[j+2>>0]=f>>16;a[j+3>>0]=f>>24;f=e+40+(f<<2)|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!f)return;Bg[f&255](e,16);return}function CD(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=e+16|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=e+24|0;j=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;f=j>>>2;if(f|0){h=g;while(1){b[h>>1]=(c[g>>2]|0)>>>16;f=f+-1|0;if(!f)break;else{h=h+2|0;g=g+4|0}}}j=(j|0)/2|0;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;j=e+80|0;f=(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)+1|0;a[j>>0]=f;a[j+1>>0]=f>>8;a[j+2>>0]=f>>16;a[j+3>>0]=f>>24;f=e+40+(f<<2)|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!f)return;Bg[f&255](e,-32752);return}function DD(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=e+16|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=e+24|0;j=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;f=j>>>2;if(f|0){h=g;while(1){b[h>>1]=LQ(((c[g>>2]|0)>>>16^32768)&65535|0)|0;f=f+-1|0;if(!f)break;else{h=h+2|0;g=g+4|0}}}j=(j|0)/2|0;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;j=e+80|0;f=(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)+1|0;a[j>>0]=f;a[j+1>>0]=f>>8;a[j+2>>0]=f>>16;a[j+3>>0]=f>>24;f=e+40+(f<<2)|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!f)return;Bg[f&255](e,4112);return}function ED(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=e+16|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=e+24|0;j=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;f=j>>>2;if(f|0){h=g;while(1){b[h>>1]=LQ((c[g>>2]|0)>>>16&65535|0)|0;f=f+-1|0;if(!f)break;else{h=h+2|0;g=g+4|0}}}j=(j|0)/2|0;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;j=e+80|0;f=(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)+1|0;a[j>>0]=f;a[j+1>>0]=f>>8;a[j+2>>0]=f>>16;a[j+3>>0]=f>>24;f=e+40+(f<<2)|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!f)return;Bg[f&255](e,-28656);return}function FD(b,e){b=b|0;e=e|0;var f=0;e=b+24|0;e=(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24)>>>2;if(e|0){f=b+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;while(1){c[f>>2]=MQ(c[f>>2]|0)|0;e=e+-1|0;if(!e)break;else f=f+4|0}}f=b+80|0;e=(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24)+1|0;a[f>>0]=e;a[f+1>>0]=e>>8;a[f+2>>0]=e>>16;a[f+3>>0]=e>>24;e=b+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](b,-28640);return}function GD(b,e){b=b|0;e=e|0;var f=0;e=b+24|0;e=(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24)>>>2;if(e|0){f=b+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;while(1){g[f>>2]=+(c[f>>2]|0)*4.656612873077393e-10;e=e+-1|0;if(!e)break;else f=f+4|0}}f=b+80|0;e=(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24)+1|0;a[f>>0]=e;a[f+1>>0]=e>>8;a[f+2>>0]=e>>16;a[f+3>>0]=e>>24;e=b+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](b,-32480);return}function HD(b,e){b=b|0;e=e|0;var f=0;e=b+24|0;e=(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24)>>>2;if(e|0){f=b+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;while(1){c[f>>2]=MQ((g[j>>2]=+(c[f>>2]|0)*4.656612873077393e-10,c[j>>2]|0)|0)|0;e=e+-1|0;if(!e)break;else f=f+4|0}}f=b+80|0;e=(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24)+1|0;a[f>>0]=e;a[f+1>>0]=e>>8;a[f+2>>0]=e>>16;a[f+3>>0]=e>>24;e=b+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](b,-28384);return}function ID(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=b+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;i=b+24|0;e=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=e>>>2;if(h){g=f;e=h;while(1){a[g>>0]=c[f>>2]^128;e=e+-1|0;if(!e)break;else{g=g+1|0;f=f+4|0}}e=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24}e=(e|0)/4|0;a[i>>0]=e;a[i+1>>0]=e>>8;a[i+2>>0]=e>>16;a[i+3>>0]=e>>24;i=b+80|0;e=(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)+1|0;a[i>>0]=e;a[i+1>>0]=e>>8;a[i+2>>0]=e>>16;a[i+3>>0]=e>>24;e=b+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](b,8);return}function JD(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0;f=b+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;i=b+24|0;e=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=e>>>2;if(h){g=f;e=h;while(1){a[g>>0]=c[f>>2];e=e+-1|0;if(!e)break;else{g=g+1|0;f=f+4|0}}e=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24}e=(e|0)/4|0;a[i>>0]=e;a[i+1>>0]=e>>8;a[i+2>>0]=e>>16;a[i+3>>0]=e>>24;i=b+80|0;e=(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)+1|0;a[i>>0]=e;a[i+1>>0]=e>>8;a[i+2>>0]=e>>16;a[i+3>>0]=e>>24;e=b+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](b,-32760);return}function KD(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=e+16|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=e+24|0;j=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;f=j>>>2;if(f|0){h=g;while(1){b[h>>1]=(MQ(c[g>>2]|0)|0)>>>16^32768;f=f+-1|0;if(!f)break;else{h=h+2|0;g=g+4|0}}}j=(j|0)/2|0;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;j=e+80|0;f=(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)+1|0;a[j>>0]=f;a[j+1>>0]=f>>8;a[j+2>>0]=f>>16;a[j+3>>0]=f>>24;f=e+40+(f<<2)|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!f)return;Bg[f&255](e,16);return}function LD(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=e+16|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=e+24|0;j=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;f=j>>>2;if(f|0){h=g;while(1){b[h>>1]=(MQ(c[g>>2]|0)|0)>>>16;f=f+-1|0;if(!f)break;else{h=h+2|0;g=g+4|0}}}j=(j|0)/2|0;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;j=e+80|0;f=(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)+1|0;a[j>>0]=f;a[j+1>>0]=f>>8;a[j+2>>0]=f>>16;a[j+3>>0]=f>>24;f=e+40+(f<<2)|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!f)return;Bg[f&255](e,-32752);return}function MD(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=e+16|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=e+24|0;j=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;f=j>>>2;if(f|0){h=g;while(1){b[h>>1]=LQ(((MQ(c[g>>2]|0)|0)>>>16^32768)&65535|0)|0;f=f+-1|0;if(!f)break;else{h=h+2|0;g=g+4|0}}}j=(j|0)/2|0;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;j=e+80|0;f=(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)+1|0;a[j>>0]=f;a[j+1>>0]=f>>8;a[j+2>>0]=f>>16;a[j+3>>0]=f>>24;f=e+40+(f<<2)|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!f)return;Bg[f&255](e,4112);return}function ND(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0;g=e+16|0;g=d[g>>0]|d[g+1>>0]<<8|d[g+2>>0]<<16|d[g+3>>0]<<24;i=e+24|0;j=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;f=j>>>2;if(f|0){h=g;while(1){b[h>>1]=LQ((MQ(c[g>>2]|0)|0)>>>16&65535|0)|0;f=f+-1|0;if(!f)break;else{h=h+2|0;g=g+4|0}}}j=(j|0)/2|0;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;j=e+80|0;f=(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)+1|0;a[j>>0]=f;a[j+1>>0]=f>>8;a[j+2>>0]=f>>16;a[j+3>>0]=f>>24;f=e+40+(f<<2)|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!f)return;Bg[f&255](e,-28656);return}function OD(b,e){b=b|0;e=e|0;var f=0;e=b+24|0;e=(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24)>>>2;if(e|0){f=b+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;while(1){c[f>>2]=MQ(c[f>>2]|0)|0;e=e+-1|0;if(!e)break;else f=f+4|0}}f=b+80|0;e=(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24)+1|0;a[f>>0]=e;a[f+1>>0]=e>>8;a[f+2>>0]=e>>16;a[f+3>>0]=e>>24;e=b+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](b,-32736);return}function PD(b,e){b=b|0;e=e|0;var f=0;e=b+24|0;e=(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24)>>>2;if(e|0){f=b+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;while(1){g[f>>2]=+(MQ(c[f>>2]|0)|0)*4.656612873077393e-10;e=e+-1|0;if(!e)break;else f=f+4|0}}f=b+80|0;e=(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24)+1|0;a[f>>0]=e;a[f+1>>0]=e>>8;a[f+2>>0]=e>>16;a[f+3>>0]=e>>24;e=b+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](b,-32480);return}function QD(b,e){b=b|0;e=e|0;var f=0,h=0.0;e=b+24|0;e=(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24)>>>2;if(e|0){f=b+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;while(1){h=+(MQ(c[f>>2]|0)|0)*4.656612873077393e-10;c[f>>2]=MQ((g[j>>2]=h,c[j>>2]|0)|0)|0;e=e+-1|0;if(!e)break;else f=f+4|0}}f=b+80|0;e=(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24)+1|0;a[f>>0]=e;a[f+1>>0]=e>>8;a[f+2>>0]=e>>16;a[f+3>>0]=e>>24;e=b+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](b,-28384);return}function RD(b,c){b=b|0;c=c|0;var e=0,f=0,h=0,i=0;e=b+16|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;i=b+24|0;c=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=c>>>2;if(h){f=e;c=h;while(1){a[f>>0]=~~((+g[e>>2]+1.0)*127.0);c=c+-1|0;if(!c)break;else{f=f+1|0;e=e+4|0}}c=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24}c=(c|0)/4|0;a[i>>0]=c;a[i+1>>0]=c>>8;a[i+2>>0]=c>>16;a[i+3>>0]=c>>24;i=b+80|0;c=(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)+1|0;a[i>>0]=c;a[i+1>>0]=c>>8;a[i+2>>0]=c>>16;a[i+3>>0]=c>>24;c=b+40+(c<<2)|0;c=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;if(!c)return;Bg[c&255](b,8);return}function SD(b,c){b=b|0;c=c|0;var e=0,f=0,h=0,i=0;e=b+16|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;i=b+24|0;c=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;h=c>>>2;if(h){f=e;c=h;while(1){a[f>>0]=~~(+g[e>>2]*127.0);c=c+-1|0;if(!c)break;else{f=f+1|0;e=e+4|0}}c=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24}c=(c|0)/4|0;a[i>>0]=c;a[i+1>>0]=c>>8;a[i+2>>0]=c>>16;a[i+3>>0]=c>>24;i=b+80|0;c=(d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24)+1|0;a[i>>0]=c;a[i+1>>0]=c>>8;a[i+2>>0]=c>>16;a[i+3>>0]=c>>24;c=b+40+(c<<2)|0;c=d[c>>0]|d[c+1>>0]<<8|d[c+2>>0]<<16|d[c+3>>0]<<24;if(!c)return;Bg[c&255](b,-32760);return}function TD(c,e){c=c|0;e=e|0;var f=0,h=0,i=0,j=0;f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;i=c+24|0;j=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;e=j>>>2;if(e|0){h=f;while(1){b[h>>1]=~~((+g[f>>2]+1.0)*32767.0);e=e+-1|0;if(!e)break;else{h=h+2|0;f=f+4|0}}}j=(j|0)/2|0;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;j=c+80|0;e=(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)+1|0;a[j>>0]=e;a[j+1>>0]=e>>8;a[j+2>>0]=e>>16;a[j+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,16);return}function UD(c,e){c=c|0;e=e|0;var f=0,h=0,i=0,j=0;f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;i=c+24|0;j=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;e=j>>>2;if(e|0){h=f;while(1){b[h>>1]=~~(+g[f>>2]*32767.0);e=e+-1|0;if(!e)break;else{h=h+2|0;f=f+4|0}}}j=(j|0)/2|0;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;j=c+80|0;e=(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)+1|0;a[j>>0]=e;a[j+1>>0]=e>>8;a[j+2>>0]=e>>16;a[j+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,-32752);return}function VD(c,e){c=c|0;e=e|0;var f=0,h=0,i=0,j=0;f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;i=c+24|0;j=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;e=j>>>2;if(e|0){h=f;while(1){b[h>>1]=LQ(~~((+g[f>>2]+1.0)*32767.0)&65535|0)|0;e=e+-1|0;if(!e)break;else{h=h+2|0;f=f+4|0}}}j=(j|0)/2|0;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;j=c+80|0;e=(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)+1|0;a[j>>0]=e;a[j+1>>0]=e>>8;a[j+2>>0]=e>>16;a[j+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,4112);return}function WD(c,e){c=c|0;e=e|0;var f=0,h=0,i=0,j=0;f=c+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;i=c+24|0;j=d[i>>0]|d[i+1>>0]<<8|d[i+2>>0]<<16|d[i+3>>0]<<24;e=j>>>2;if(e|0){h=f;while(1){b[h>>1]=LQ(~~(+g[f>>2]*32767.0)|0)|0;e=e+-1|0;if(!e)break;else{h=h+2|0;f=f+4|0}}}j=(j|0)/2|0;a[i>>0]=j;a[i+1>>0]=j>>8;a[i+2>>0]=j>>16;a[i+3>>0]=j>>24;j=c+80|0;e=(d[j>>0]|d[j+1>>0]<<8|d[j+2>>0]<<16|d[j+3>>0]<<24)+1|0;a[j>>0]=e;a[j+1>>0]=e>>8;a[j+2>>0]=e>>16;a[j+3>>0]=e>>24;e=c+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](c,-28656);return}function XD(b,e){b=b|0;e=e|0;var f=0;e=b+24|0;e=(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24)>>>2;if(e|0){f=b+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;while(1){c[f>>2]=~~(+g[f>>2]*2147483647.0);e=e+-1|0;if(!e)break;else f=f+4|0}}f=b+80|0;e=(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24)+1|0;a[f>>0]=e;a[f+1>>0]=e>>8;a[f+2>>0]=e>>16;a[f+3>>0]=e>>24;e=b+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](b,-32736);return}function YD(b,e){b=b|0;e=e|0;var f=0;e=b+24|0;e=(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24)>>>2;if(e|0){f=b+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;while(1){c[f>>2]=MQ(~~(+g[f>>2]*2147483647.0)|0)|0;e=e+-1|0;if(!e)break;else f=f+4|0}}f=b+80|0;e=(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24)+1|0;a[f>>0]=e;a[f+1>>0]=e>>8;a[f+2>>0]=e>>16;a[f+3>>0]=e>>24;e=b+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](b,-28640);return}function ZD(b,e){b=b|0;e=e|0;var f=0;e=b+24|0;e=(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24)>>>2;if(e|0){f=b+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;while(1){c[f>>2]=MQ(c[f>>2]|0)|0;e=e+-1|0;if(!e)break;else f=f+4|0}}f=b+80|0;e=(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24)+1|0;a[f>>0]=e;a[f+1>>0]=e>>8;a[f+2>>0]=e>>16;a[f+3>>0]=e>>24;e=b+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](b,-28384);return}function _D(b,e){b=b|0;e=e|0;var f=0,h=0,i=0,k=0;f=b+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;k=b+24|0;e=d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24;i=e>>>2;if(i){h=f;e=i;while(1){i=MQ(c[f>>2]|0)|0;a[h>>0]=~~(((c[j>>2]=i,+g[j>>2])+1.0)*127.0);e=e+-1|0;if(!e)break;else{h=h+1|0;f=f+4|0}}e=d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24}e=(e|0)/4|0;a[k>>0]=e;a[k+1>>0]=e>>8;a[k+2>>0]=e>>16;a[k+3>>0]=e>>24;k=b+80|0;e=(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)+1|0;a[k>>0]=e;a[k+1>>0]=e>>8;a[k+2>>0]=e>>16;a[k+3>>0]=e>>24;e=b+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](b,8);return}function $D(b,e){b=b|0;e=e|0;var f=0,h=0,i=0,k=0;f=b+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;k=b+24|0;e=d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24;i=e>>>2;if(i){h=f;e=i;while(1){i=MQ(c[f>>2]|0)|0;a[h>>0]=~~((c[j>>2]=i,+g[j>>2])*127.0);e=e+-1|0;if(!e)break;else{h=h+1|0;f=f+4|0}}e=d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24}e=(e|0)/4|0;a[k>>0]=e;a[k+1>>0]=e>>8;a[k+2>>0]=e>>16;a[k+3>>0]=e>>24;k=b+80|0;e=(d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24)+1|0;a[k>>0]=e;a[k+1>>0]=e>>8;a[k+2>>0]=e>>16;a[k+3>>0]=e>>24;e=b+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](b,-32760);return}function aE(e,f){e=e|0;f=f|0;var h=0,i=0,k=0,l=0,m=0;h=e+16|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;k=e+24|0;l=d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24;f=l>>>2;if(f|0){i=h;while(1){m=MQ(c[h>>2]|0)|0;b[i>>1]=~~(((c[j>>2]=m,+g[j>>2])+1.0)*32767.0);f=f+-1|0;if(!f)break;else{i=i+2|0;h=h+4|0}}}m=(l|0)/2|0;a[k>>0]=m;a[k+1>>0]=m>>8;a[k+2>>0]=m>>16;a[k+3>>0]=m>>24;m=e+80|0;f=(d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)+1|0;a[m>>0]=f;a[m+1>>0]=f>>8;a[m+2>>0]=f>>16;a[m+3>>0]=f>>24;f=e+40+(f<<2)|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!f)return;Bg[f&255](e,16);return}function bE(e,f){e=e|0;f=f|0;var h=0,i=0,k=0,l=0,m=0;h=e+16|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;k=e+24|0;l=d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24;f=l>>>2;if(f|0){i=h;while(1){m=MQ(c[h>>2]|0)|0;b[i>>1]=~~((c[j>>2]=m,+g[j>>2])*32767.0);f=f+-1|0;if(!f)break;else{i=i+2|0;h=h+4|0}}}m=(l|0)/2|0;a[k>>0]=m;a[k+1>>0]=m>>8;a[k+2>>0]=m>>16;a[k+3>>0]=m>>24;m=e+80|0;f=(d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)+1|0;a[m>>0]=f;a[m+1>>0]=f>>8;a[m+2>>0]=f>>16;a[m+3>>0]=f>>24;f=e+40+(f<<2)|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!f)return;Bg[f&255](e,-32752);return}function cE(e,f){e=e|0;f=f|0;var h=0,i=0,k=0,l=0,m=0;h=e+16|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;k=e+24|0;l=d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24;f=l>>>2;if(f|0){i=h;while(1){m=MQ(c[h>>2]|0)|0;b[i>>1]=LQ(~~(((c[j>>2]=m,+g[j>>2])+1.0)*32767.0)&65535|0)|0;f=f+-1|0;if(!f)break;else{i=i+2|0;h=h+4|0}}}m=(l|0)/2|0;a[k>>0]=m;a[k+1>>0]=m>>8;a[k+2>>0]=m>>16;a[k+3>>0]=m>>24;m=e+80|0;f=(d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)+1|0;a[m>>0]=f;a[m+1>>0]=f>>8;a[m+2>>0]=f>>16;a[m+3>>0]=f>>24;f=e+40+(f<<2)|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!f)return;Bg[f&255](e,4112);return}function dE(e,f){e=e|0;f=f|0;var h=0,i=0,k=0,l=0,m=0;h=e+16|0;h=d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24;k=e+24|0;l=d[k>>0]|d[k+1>>0]<<8|d[k+2>>0]<<16|d[k+3>>0]<<24;f=l>>>2;if(f|0){i=h;while(1){m=MQ(c[h>>2]|0)|0;b[i>>1]=LQ(~~((c[j>>2]=m,+g[j>>2])*32767.0)|0)|0;f=f+-1|0;if(!f)break;else{i=i+2|0;h=h+4|0}}}m=(l|0)/2|0;a[k>>0]=m;a[k+1>>0]=m>>8;a[k+2>>0]=m>>16;a[k+3>>0]=m>>24;m=e+80|0;f=(d[m>>0]|d[m+1>>0]<<8|d[m+2>>0]<<16|d[m+3>>0]<<24)+1|0;a[m>>0]=f;a[m+1>>0]=f>>8;a[m+2>>0]=f>>16;a[m+3>>0]=f>>24;f=e+40+(f<<2)|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;if(!f)return;Bg[f&255](e,-28656);return}function eE(b,e){b=b|0;e=e|0;var f=0,h=0;e=b+24|0;e=(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24)>>>2;if(e|0){f=b+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;while(1){h=MQ(c[f>>2]|0)|0;c[f>>2]=~~((c[j>>2]=h,+g[j>>2])*2147483647.0);e=e+-1|0;if(!e)break;else f=f+4|0}}h=b+80|0;e=(d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24)+1|0;a[h>>0]=e;a[h+1>>0]=e>>8;a[h+2>>0]=e>>16;a[h+3>>0]=e>>24;e=b+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](b,-32736);return}function fE(b,e){b=b|0;e=e|0;var f=0,h=0;e=b+24|0;e=(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24)>>>2;if(e|0){f=b+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;while(1){h=MQ(c[f>>2]|0)|0;c[f>>2]=MQ(~~((c[j>>2]=h,+g[j>>2])*2147483647.0)|0)|0;e=e+-1|0;if(!e)break;else f=f+4|0}}h=b+80|0;e=(d[h>>0]|d[h+1>>0]<<8|d[h+2>>0]<<16|d[h+3>>0]<<24)+1|0;a[h>>0]=e;a[h+1>>0]=e>>8;a[h+2>>0]=e>>16;a[h+3>>0]=e>>24;e=b+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](b,-28640);return}function gE(b,e){b=b|0;e=e|0;var f=0;e=b+24|0;e=(d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24)>>>2;if(e|0){f=b+16|0;f=d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24;while(1){c[f>>2]=MQ(c[f>>2]|0)|0;e=e+-1|0;if(!e)break;else f=f+4|0}}f=b+80|0;e=(d[f>>0]|d[f+1>>0]<<8|d[f+2>>0]<<16|d[f+3>>0]<<24)+1|0;a[f>>0]=e;a[f+1>>0]=e>>8;a[f+2>>0]=e>>16;a[f+3>>0]=e>>24;e=b+40+(e<<2)|0;e=d[e>>0]|d[e+1>>0]<<8|d[e+2>>0]<<16|d[e+3>>0]<<24;if(!e)return;Bg[e&255](b,-32480);return}
|
|
function dp(b,f){b=b|0;f=f|0;var g=0,i=0,k=0.0,m=0,n=0.0,o=0,p=0,q=0,r=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,C=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;fa=l;l=l+32|0;da=fa;$=fa+8|0;aa=fa+4|0;S=b+44|0;T=$+4|0;U=$+8|0;V=$+4|0;W=$+12|0;b=0;a:while(1){ga=c[(c[S>>2]|0)+132>>2]|0;N=ga+40|0;c[N>>2]=aa;O=ga+72|0;I=c[O>>2]|0;H=(c[(c[I+16>>2]|0)+40>>2]|0)+24|0;c[aa>>2]=c[I+36>>2];I=ga+92|0;P=ga+64|0;R=ga+44|0;ha=ga+68|0;Q=ga+56|0;J=ga+304|0;K=ga+104|0;L=ga+112|0;M=ga+132|0;w=b;b:while(1){b=c[I>>2]|0;if((b|0)>0)c[I>>2]=b+-1;else{c[(c[O>>2]|0)+36>>2]=c[aa>>2];kp(ga)}i=c[aa>>2]|0;g=i+4|0;c[aa>>2]=g;r=c[i>>2]|0;m=r&255;b=g;do switch((r&255)<<24>>24){case -87:{ea=2612;break a}case -86:{ea=2748;break a}case -3:case -4:case -5:case -6:case -7:case -8:case -9:case -10:case -11:case -12:case -13:case -14:case -15:case -16:case -17:case -18:case -19:case -20:case -21:case -22:case -23:case -24:case -25:case -26:case -27:case -28:case -29:case -30:case -31:case -32:case -33:case -34:case -35:case -36:case -37:case -38:case -39:case -40:case -41:case -42:case -43:case -44:case -49:case -2:case -1:{ea=2766;break a}case -50:{ea=2749;break a}case -99:{ea=2593;break b}case -97:{ea=2596;break b}case -96:{ea=2599;break b}case -98:{ea=2600;break b}case -93:{ea=2606;break b}case -92:{ea=2607;break b}case -88:{ea=2611;break b}case 0:{b=c[P>>2]|0;i=b+(r>>>4&4080)|0;b=b+(r>>>12&1048560)|0;if(c[b>>2]&8|0){G=(c[b+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}if(!(c[i>>2]&8)){c[i>>2]=c[b>>2];c[i+4>>2]=c[b+4>>2];c[i+8>>2]=c[b+8>>2];c[i+12>>2]=c[b+12>>2];G=w;w=G;continue b}g=c[i+8>>2]|0;c[i>>2]=c[b>>2];c[i+4>>2]=c[b+4>>2];c[i+8>>2]=c[b+8>>2];c[i+12>>2]=c[b+12>>2];F=g+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,g);G=w;w=G;continue b}case 1:{b=c[P>>2]|0;i=b+(r>>>4&4080)|0;b=b+(r>>>12&1048560)|0;if(c[i>>2]&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}if(!(c[b>>2]&8)){c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];G=w;w=G;continue b}g=c[b+8>>2]|0;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];F=g+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,g);G=w;w=G;continue b}case 3:{i=(c[P>>2]|0)+(r>>>4&4080)|0;g=H+(r>>>12&1048560)|0;if(c[g>>2]&8|0){G=(c[g+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}if(!(c[i>>2]&8)){c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];G=w;w=G;continue b}b=c[i+8>>2]|0;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 4:{E=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[E>>2]|0;F=E+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+((r>>>16)+-32768|0);if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 5:{E=(c[P>>2]|0)+(r>>>4&4080)|0;F=E+8|0;n=+h[F>>3];G=c[E>>2]|0;h[j>>3]=n;b=c[j>>2]|0;c[E>>2]=0;h[F>>3]=+(~~n<<16|r>>>16|0);if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 6:{b=c[P>>2]|0;g=b+(r>>>12&1048560)|0;i=b+-16|0;if(c[i>>2]&8|0){G=(c[b+-8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}if(!(c[g>>2]&8)){c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];G=w;w=G;continue b}b=c[g+8>>2]|0;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 7:{F=(c[P>>2]|0)+(r>>>12&1048560)|0;G=c[F>>2]|0;b=c[F+8>>2]|0;c[F>>2]=2;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 8:{F=(c[P>>2]|0)+(r>>>12&1048560)|0;G=c[F>>2]|0;b=c[F+8>>2]|0;c[F>>2]=3;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 9:{E=(c[P>>2]|0)+(r>>>12&1048560)|0;G=c[E>>2]|0;F=E+8|0;b=c[F>>2]|0;c[E>>2]=4;c[F>>2]=1;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 10:{E=(c[P>>2]|0)+(r>>>12&1048560)|0;G=c[E>>2]|0;F=E+8|0;b=c[F>>2]|0;c[E>>2]=4;c[F>>2]=0;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 12:{m=r>>>16;o=r>>>8&255;b=c[P>>2]|0;g=b+(m<<4)|0;i=c[ha>>2]|0;if(i>>>0>=(c[Q>>2]|0)>>>0){ea=51;break a}c[ha>>2]=i+16;c[i>>2]=c[g>>2];c[i+4>>2]=c[g+4>>2];c[i+8>>2]=c[g+8>>2];c[i+12>>2]=c[g+12>>2];if(c[g>>2]&8|0){G=(c[b+(m<<4)+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;if(!g){ea=55;break a}k=+ho(ga,b+(g+-1<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;c:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=59;break c}}if((g|0)<0)ea=59;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=59}while(0);if((ea|0)==59){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}m=~~k;b=c[ha>>2]|0;g=c[P>>2]|0;i=b-g>>4;if(!i){ea=61;break a}F=i+-1|0;E=g+(F<<4)|0;G=c[E>>2]|0;F=g+(F<<4)+8|0;g=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m|0);if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);F=c[P>>2]|0;E=F+(o<<4)|0;G=c[E>>2]|0;F=F+(o<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(~m|0);if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 13:{b=r>>>16;i=r>>>8&255;m=c[P>>2]|0;switch(c[m+(b<<4)>>2]|0){case 3:case 2:{g=0;break}case 4:{g=c[m+(b<<4)+8>>2]|0;break}case 8:{g=(c[(c[m+(b<<4)+8>>2]|0)+20>>2]|0)!=0&1;break}case 9:{g=1;break}case 10:{g=1;break}case 5:{g=(c[m+(b<<4)+8>>2]|0)!=0&1;break}case 6:{g=1;break}default:{g=m+(b<<4)+8|0;G=c[g>>2]|0;g=c[g+4>>2]|0;g=(((G|0)==0&(g&2147483647|0)==0|((G|0)!=0|(g&1048575|0)!=0)&(0==0&(g&2146435072|0)==2146435072))^1)&1}}E=m+(i<<4)|0;G=c[E>>2]|0;F=m+(i<<4)+8|0;b=c[F>>2]|0;c[E>>2]=4;c[F>>2]=g^1;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 14:{g=r>>>16;m=r>>>8&255;b=c[P>>2]|0;i=b+(g<<4)|0;if(!(c[i>>2]|0))k=+h[b+(g<<4)+8>>3];else{b=c[ha>>2]|0;c[ha>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(c[b>>2]&8|0){G=(c[b+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;G=(c[ha>>2]|0)-b>>4;g=G+-1|0;if(!G){ea=87;break a}k=+ho(ga,b+(g<<4)|0);b=c[P>>2]|0;E=b+(g<<4)|0;G=c[E>>2]|0;F=b+(g<<4)+8|0;g=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[P>>2]|0}G=(c[ha>>2]|0)+-16|0;c[ha>>2]=G;c[G>>2]=2}E=b+(m<<4)|0;G=c[E>>2]|0;F=b+(m<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=-k;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 15:{g=r>>>16;m=r>>>8&255;b=c[P>>2]|0;i=b+(g<<4)|0;if(!(c[i>>2]|0))k=+h[b+(g<<4)+8>>3];else{b=c[ha>>2]|0;c[ha>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(c[b>>2]&8|0){G=(c[b+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;G=(c[ha>>2]|0)-b>>4;g=G+-1|0;if(!G){ea=100;break a}k=+ho(ga,b+(g<<4)|0);b=c[P>>2]|0;E=b+(g<<4)|0;G=c[E>>2]|0;F=b+(g<<4)+8|0;g=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[P>>2]|0}G=(c[ha>>2]|0)+-16|0;c[ha>>2]=G;c[G>>2]=2}E=b+(m<<4)|0;G=c[E>>2]|0;F=b+(m<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case -103:{g=c[P>>2]|0;b=g+(r>>>12&1048560)|0;switch(c[b>>2]|0){case 2:{b=58;break}case 3:{b=57;break}case 4:{b=53;break}case 5:{b=90;break}case 8:{b=((c[c[b+8>>2]>>2]|0)>>>9&1)+55|0;break}case 9:{b=(c[c[b+8>>2]>>2]&512|0)==0?57:128;break}case 10:{b=57;break}case 6:{b=128;break}default:b=54}F=c[(c[J>>2]|0)+(b<<2)>>2]|0;C=g+(r>>>4&4080)|0;G=c[C>>2]|0;E=C+8|0;b=c[E>>2]|0;c[C>>2]=8;c[E>>2]=F;F=F+4|0;c[F>>2]=(c[F>>2]|0)+1;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case -102:{G=c[O>>2]|0;if(lp(ga,c[G+28>>2]|0,G,c[H+(r>>>12&1048560)+8>>2]|0,0)|0){i=c[ha>>2]|0;switch(c[i+-32>>2]|0){case 2:{b=58;break}case 3:{b=57;break}case 4:{b=53;break}case 5:{b=90;break}case 8:{b=((c[c[i+-24>>2]>>2]|0)>>>9&1)+55|0;break}case 9:{b=(c[c[i+-24>>2]>>2]&512|0)==0?57:128;break}case 10:{b=57;break}case 6:{b=128;break}default:b=54}g=i+-16|0;c[ha>>2]=g;G=c[i+-16>>2]|0;i=c[i+-8>>2]|0;c[g>>2]=2;if((G&8|0)!=0?(F=i+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,i);g=c[ha>>2]|0}F=g+-16|0;c[ha>>2]=F;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[F>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,g)}else b=58;F=c[(c[J>>2]|0)+(b<<2)>>2]|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;E=C+8|0;b=c[E>>2]|0;c[C>>2]=8;c[E>>2]=F;F=F+4|0;c[F>>2]=(c[F>>2]|0)+1;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 16:{E=c[P>>2]|0;E=mp(ga,E+(r>>>12&4080)|0,E+(r>>>20&4080)|0,0)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 17:{E=mp(ga,H+(r>>>12&4080)|0,(c[P>>2]|0)+(r>>>20&4080)|0,0)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 18:{E=mp(ga,(c[P>>2]|0)+(r>>>12&4080)|0,H+(r>>>20&4080)|0,0)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 19:{E=mp(ga,H+(r>>>12&4080)|0,H+(r>>>20&4080)|0,0)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 20:{E=c[P>>2]|0;E=(mp(ga,E+(r>>>12&4080)|0,E+(r>>>20&4080)|0,0)|0)^1;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 21:{E=(mp(ga,H+(r>>>12&4080)|0,(c[P>>2]|0)+(r>>>20&4080)|0,0)|0)^1;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 22:{E=(mp(ga,(c[P>>2]|0)+(r>>>12&4080)|0,H+(r>>>20&4080)|0,0)|0)^1;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 23:{E=(mp(ga,H+(r>>>12&4080)|0,H+(r>>>20&4080)|0,0)|0)^1;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 24:{o=c[P>>2]|0;b=o+(r>>>12&4080)|0;g=o+(r>>>20&4080)|0;i=c[b>>2]|0;m=c[g>>2]|0;d:do if(m|i)if((i|0)==(m|0))switch(i|0){case 3:case 2:{g=1;break d}case 4:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break d}case 5:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break d}case 9:case 8:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break d}case 10:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break d}case 6:{if((c[b+8>>2]|0)!=(c[g+8>>2]|0)){g=0;break d}g=(c[b+4>>2]|0)==(c[g+4>>2]|0);break d}default:{ea=173;break a}}else g=0;else g=+h[b+8>>3]==+h[g+8>>3];while(0);E=o+(r>>>4&4080)|0;G=c[E>>2]|0;F=E+8|0;b=c[F>>2]|0;c[E>>2]=4;c[F>>2]=g&1;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 25:{b=H+(r>>>12&4080)|0;o=c[P>>2]|0;g=o+(r>>>20&4080)|0;i=c[b>>2]|0;m=c[g>>2]|0;e:do if(m|i)if((i|0)==(m|0))switch(i|0){case 3:case 2:{g=1;break e}case 4:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break e}case 5:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break e}case 9:case 8:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break e}case 10:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break e}case 6:{if((c[b+8>>2]|0)!=(c[g+8>>2]|0)){g=0;break e}g=(c[b+4>>2]|0)==(c[g+4>>2]|0);break e}default:{ea=187;break a}}else g=0;else g=+h[b+8>>3]==+h[g+8>>3];while(0);E=o+(r>>>4&4080)|0;G=c[E>>2]|0;F=E+8|0;b=c[F>>2]|0;c[E>>2]=4;c[F>>2]=g&1;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 26:{o=c[P>>2]|0;b=o+(r>>>12&4080)|0;g=H+(r>>>20&4080)|0;i=c[b>>2]|0;m=c[g>>2]|0;f:do if(m|i)if((i|0)==(m|0))switch(i|0){case 3:case 2:{g=1;break f}case 4:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break f}case 5:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break f}case 9:case 8:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break f}case 10:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break f}case 6:{if((c[b+8>>2]|0)!=(c[g+8>>2]|0)){g=0;break f}g=(c[b+4>>2]|0)==(c[g+4>>2]|0);break f}default:{ea=201;break a}}else g=0;else g=+h[b+8>>3]==+h[g+8>>3];while(0);E=o+(r>>>4&4080)|0;G=c[E>>2]|0;F=E+8|0;b=c[F>>2]|0;c[E>>2]=4;c[F>>2]=g&1;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 27:{b=H+(r>>>12&4080)|0;g=H+(r>>>20&4080)|0;i=c[b>>2]|0;m=c[g>>2]|0;g:do if(m|i)if((i|0)==(m|0))switch(i|0){case 3:case 2:{g=1;break g}case 4:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break g}case 5:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break g}case 9:case 8:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break g}case 10:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break g}case 6:{if((c[b+8>>2]|0)!=(c[g+8>>2]|0)){g=0;break g}g=(c[b+4>>2]|0)==(c[g+4>>2]|0);break g}default:{ea=215;break a}}else g=0;else g=+h[b+8>>3]==+h[g+8>>3];while(0);E=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[E>>2]|0;F=E+8|0;b=c[F>>2]|0;c[E>>2]=4;c[F>>2]=g&1;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 28:{o=c[P>>2]|0;b=o+(r>>>12&4080)|0;g=o+(r>>>20&4080)|0;i=c[b>>2]|0;m=c[g>>2]|0;h:do if(m|i)if((i|0)==(m|0))switch(i|0){case 3:case 2:{g=1;break h}case 4:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break h}case 5:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break h}case 9:case 8:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break h}case 10:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break h}case 6:{if((c[b+8>>2]|0)!=(c[g+8>>2]|0)){g=0;break h}g=(c[b+4>>2]|0)==(c[g+4>>2]|0);break h}default:{ea=229;break a}}else g=0;else g=+h[b+8>>3]==+h[g+8>>3];while(0);E=o+(r>>>4&4080)|0;G=c[E>>2]|0;F=E+8|0;b=c[F>>2]|0;c[E>>2]=4;c[F>>2]=(g^1)&1;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 29:{b=H+(r>>>12&4080)|0;o=c[P>>2]|0;g=o+(r>>>20&4080)|0;i=c[b>>2]|0;m=c[g>>2]|0;i:do if(m|i)if((i|0)==(m|0))switch(i|0){case 3:case 2:{g=1;break i}case 4:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break i}case 5:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break i}case 9:case 8:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break i}case 10:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break i}case 6:{if((c[b+8>>2]|0)!=(c[g+8>>2]|0)){g=0;break i}g=(c[b+4>>2]|0)==(c[g+4>>2]|0);break i}default:{ea=243;break a}}else g=0;else g=+h[b+8>>3]==+h[g+8>>3];while(0);E=o+(r>>>4&4080)|0;G=c[E>>2]|0;F=E+8|0;b=c[F>>2]|0;c[E>>2]=4;c[F>>2]=(g^1)&1;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 30:{o=c[P>>2]|0;b=o+(r>>>12&4080)|0;g=H+(r>>>20&4080)|0;i=c[b>>2]|0;m=c[g>>2]|0;j:do if(m|i)if((i|0)==(m|0))switch(i|0){case 3:case 2:{g=1;break j}case 4:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break j}case 5:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break j}case 9:case 8:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break j}case 10:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break j}case 6:{if((c[b+8>>2]|0)!=(c[g+8>>2]|0)){g=0;break j}g=(c[b+4>>2]|0)==(c[g+4>>2]|0);break j}default:{ea=257;break a}}else g=0;else g=+h[b+8>>3]==+h[g+8>>3];while(0);E=o+(r>>>4&4080)|0;G=c[E>>2]|0;F=E+8|0;b=c[F>>2]|0;c[E>>2]=4;c[F>>2]=(g^1)&1;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 31:{b=H+(r>>>12&4080)|0;g=H+(r>>>20&4080)|0;i=c[b>>2]|0;m=c[g>>2]|0;k:do if(m|i)if((i|0)==(m|0))switch(i|0){case 3:case 2:{g=1;break k}case 4:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break k}case 5:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break k}case 9:case 8:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break k}case 10:{g=(c[b+8>>2]|0)==(c[g+8>>2]|0);break k}case 6:{if((c[b+8>>2]|0)!=(c[g+8>>2]|0)){g=0;break k}g=(c[b+4>>2]|0)==(c[g+4>>2]|0);break k}default:{ea=271;break a}}else g=0;else g=+h[b+8>>3]==+h[g+8>>3];while(0);E=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[E>>2]|0;F=E+8|0;b=c[F>>2]|0;c[E>>2]=4;c[F>>2]=(g^1)&1;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 32:{E=c[P>>2]|0;E=np(ga,E+(r>>>20&4080)|0,E+(r>>>12&4080)|0,0)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 33:{E=np(ga,(c[P>>2]|0)+(r>>>20&4080)|0,H+(r>>>12&4080)|0,0)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 34:{E=np(ga,H+(r>>>20&4080)|0,(c[P>>2]|0)+(r>>>12&4080)|0,0)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 35:{E=np(ga,H+(r>>>20&4080)|0,H+(r>>>12&4080)|0,0)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 36:{E=c[P>>2]|0;E=np(ga,E+(r>>>12&4080)|0,E+(r>>>20&4080)|0,3)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 37:{E=np(ga,H+(r>>>12&4080)|0,(c[P>>2]|0)+(r>>>20&4080)|0,3)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 38:{E=np(ga,(c[P>>2]|0)+(r>>>12&4080)|0,H+(r>>>20&4080)|0,3)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 39:{E=np(ga,H+(r>>>12&4080)|0,H+(r>>>20&4080)|0,3)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 40:{E=c[P>>2]|0;E=np(ga,E+(r>>>12&4080)|0,E+(r>>>20&4080)|0,2)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 41:{E=np(ga,H+(r>>>12&4080)|0,(c[P>>2]|0)+(r>>>20&4080)|0,2)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 42:{E=np(ga,(c[P>>2]|0)+(r>>>12&4080)|0,H+(r>>>20&4080)|0,2)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 43:{E=np(ga,H+(r>>>12&4080)|0,H+(r>>>20&4080)|0,2)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 44:{E=c[P>>2]|0;E=np(ga,E+(r>>>20&4080)|0,E+(r>>>12&4080)|0,1)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 45:{E=np(ga,(c[P>>2]|0)+(r>>>20&4080)|0,H+(r>>>12&4080)|0,1)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 46:{E=np(ga,H+(r>>>20&4080)|0,(c[P>>2]|0)+(r>>>12&4080)|0,1)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 47:{E=np(ga,H+(r>>>20&4080)|0,H+(r>>>12&4080)|0,1)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 48:{b=(c[P>>2]|0)+(r>>>12&1048560)|0;switch(c[b>>2]|0){case 3:case 2:{G=w;w=G;continue b}case 4:{_=c[b+8>>2]|0;ea=328;break}case 8:{_=(c[(c[b+8>>2]|0)+20>>2]|0)!=0&1;ea=328;break}case 6:case 10:case 9:break;case 5:{_=(c[b+8>>2]|0)!=0&1;ea=328;break}default:{_=b+8|0;ea=c[_>>2]|0;_=c[_+4>>2]|0;_=(((ea|0)==0&(_&2147483647|0)==0|((ea|0)!=0|(_&1048575|0)!=0)&(0==0&(_&2146435072|0)==2146435072))^1)&1;ea=328}}if((ea|0)==328?(ea=0,(_|0)==0):0){G=w;w=G;continue b}c[aa>>2]=i+8;G=w;w=G;continue b}case 49:{b=H+(r>>>12&1048560)|0;switch(c[b>>2]|0){case 3:case 2:{G=w;w=G;continue b}case 4:{Z=c[b+8>>2]|0;ea=335;break}case 8:{Z=(c[(c[b+8>>2]|0)+20>>2]|0)!=0&1;ea=335;break}case 6:case 10:case 9:break;case 5:{Z=(c[b+8>>2]|0)!=0&1;ea=335;break}default:{Z=b+8|0;ea=c[Z>>2]|0;Z=c[Z+4>>2]|0;Z=(((ea|0)==0&(Z&2147483647|0)==0|((ea|0)!=0|(Z&1048575|0)!=0)&(0==0&(Z&2146435072|0)==2146435072))^1)&1;ea=335}}if((ea|0)==335?(ea=0,(Z|0)==0):0){G=w;w=G;continue b}c[aa>>2]=i+8;G=w;w=G;continue b}case 50:{b=(c[P>>2]|0)+(r>>>12&1048560)|0;switch(c[b>>2]|0){case 6:case 10:case 9:{G=w;w=G;continue b}case 3:case 2:break;case 4:{Y=c[b+8>>2]|0;ea=342;break}case 8:{Y=(c[(c[b+8>>2]|0)+20>>2]|0)!=0&1;ea=342;break}case 5:{Y=(c[b+8>>2]|0)!=0&1;ea=342;break}default:{Y=b+8|0;ea=c[Y>>2]|0;Y=c[Y+4>>2]|0;Y=(((ea|0)==0&(Y&2147483647|0)==0|((ea|0)!=0|(Y&1048575|0)!=0)&(0==0&(Y&2146435072|0)==2146435072))^1)&1;ea=342}}if((ea|0)==342?(ea=0,Y|0):0){G=w;w=G;continue b}c[aa>>2]=i+8;G=w;w=G;continue b}case 51:{b=H+(r>>>12&1048560)|0;switch(c[b>>2]|0){case 6:case 10:case 9:{G=w;w=G;continue b}case 3:case 2:break;case 4:{X=c[b+8>>2]|0;ea=349;break}case 8:{X=(c[(c[b+8>>2]|0)+20>>2]|0)!=0&1;ea=349;break}case 5:{X=(c[b+8>>2]|0)!=0&1;ea=349;break}default:{X=b+8|0;ea=c[X>>2]|0;X=c[X+4>>2]|0;X=(((ea|0)==0&(X&2147483647|0)==0|((ea|0)!=0|(X&1048575|0)!=0)&(0==0&(X&2146435072|0)==2146435072))^1)&1;ea=349}}if((ea|0)==349?(ea=0,X|0):0){G=w;w=G;continue b}c[aa>>2]=i+8;G=w;w=G;continue b}case 52:{b=c[P>>2]|0;i=b+(r>>>12&4080)|0;m=b+(r>>>20&4080)|0;q=r>>>8&255;g=c[i>>2]|0;if((g|0)==0?(c[m>>2]|0)==0:0){n=+h[i+8>>3]+ +h[m+8>>3];E=b+(q<<4)|0;G=c[E>>2]|0;F=b+(q<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=n;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=357;break a}c[ha>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(g&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=361;break a}c[ha>>2]=b+16;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];if(c[m>>2]&8|0){G=(c[m+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}po(ga,-2,0);po(ga,-1,0);b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;o=g+-2|0;i=g>>>0>1;m=b+(o<<4)|0;G=i?m:0;if((c[((G|0)==0?936:G)>>2]|0)!=8?(G=g|0?b+(g+-1<<4)|0:0,(c[((G|0)==0?936:G)>>2]|0)!=8):0){if(!i){ea=407;break a}n=+ho(ga,m);i=c[P>>2]|0;F=i+(o<<4)|0;G=c[F>>2]|0;g=i+(o<<4)+8|0;b=c[g>>2]|0;c[F>>2]=0;h[g>>3]=n;g=i;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);i=c[P>>2]|0;g=i}G=(c[ha>>2]|0)-g>>4;b=G+-1|0;if(!G){ea=412;break a}k=+ho(ga,i+(b<<4)|0);F=c[P>>2]|0;E=F+(b<<4)|0;G=c[E>>2]|0;F=F+(b<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);k=n+k;b=c[ha>>2]|0;g=b+-16|0;c[ha>>2]=g;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[g>>2]=2;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}if(b>>>0>=(c[Q>>2]|0)>>>0){ea=423;break a}g=b+16|0;c[ha>>2]=g;c[b>>2]=0;h[b+8>>3]=k}else ea=366;do if((ea|0)==366){ea=0;Eo(ga,-2)|0;G=c[P>>2]|0;b=(c[ha>>2]|0)-G>>4;b=b>>>0>1?G+(b+-2<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==8)p=c[b+8>>2]|0;else p=0;Eo(ga,-1)|0;g=c[ha>>2]|0;G=c[P>>2]|0;b=g-G>>4;b=b|0?G+(b+-1<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==8)m=c[b+8>>2]|0;else m=0;i=c[p+20>>2]|0;o=c[m+20>>2]|0;b=o+i|0;if(b>>>0<i>>>0|b>>>31|0){ea=402;break a}if(g>>>0>=(c[Q>>2]|0)>>>0){ea=372;break a}if(b>>>0>2147483646){ea=374;break a}b=ap(c[R>>2]|0,b,4,$)|0;if(!b){ea=376;break a}g=c[ha>>2]|0;c[g>>2]=10;c[g+8>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;c[ha>>2]=(c[ha>>2]|0)+16;b=c[$>>2]|0;PQ(b|0,p+28|0,i|0)|0;PQ(b+i|0,m+28|0,o|0)|0;m=c[ha>>2]|0;b=c[P>>2]|0;g=m-b|0;i=g>>4;o=i+-1|0;if(!i){ea=378;break a}G=((g|0)<16?i:0)+o|0;b=G>>>0<i>>>0?b+(G<<4)|0:0;b=(b|0)==0?936:b;l:do switch(c[b>>2]|0){case 10:{g=c[b+8>>2]|0;b=c[g+16>>2]|0;if(!(c[g>>2]&128)){g=g+24|0;break l}else{g=c[g+20>>2]|0;break l}}case 9:{b=c[b+8>>2]|0;if(!(c[b>>2]&8192)){ea=390;break a}g=c[b+40>>2]|0;if(!g){ea=390;break a}i=c[b+48>>2]|0;b=c[b+52>>2]|0;if((b+i|0)>>>0>(c[g+16>>2]|0)>>>0){ea=390;break a}if(!(c[g>>2]&128))g=g+24|0;else g=c[g+20>>2]|0;g=g+i|0;break}default:{ea=390;break a}}while(0);if(m>>>0>=(c[Q>>2]|0)>>>0){ea=392;break a}b=(g|0)==0?0:b;if((b|0)<0){ea=394;break a}b=Oo(ga,g,b)|0;g=c[ha>>2]|0;c[ha>>2]=g+16;c[g>>2]=8;c[g+8>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;op(ga,o);b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;if(!g){ea=396;break a}i=b+(g+-1<<4)|0;if(g>>>0<=2){ea=398;break a}g=g+-3|0;F=b+(g<<4)|0;G=c[F>>2]|0;g=c[b+(g<<4)+8>>2]|0;c[F>>2]=c[i>>2];c[F+4>>2]=c[i+4>>2];c[F+8>>2]=c[i+8>>2];c[F+12>>2]=c[i+12>>2];c[i>>2]=2;b=(c[ha>>2]|0)+-16|0;c[ha>>2]=b;do if(G&8){F=g+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0)break;Yn(c[R>>2]|0,g);b=c[ha>>2]|0}while(0);g=b+-16|0;c[ha>>2]=g;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[g>>2]=2;if(!(G&8))break;F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0)break;Yn(c[R>>2]|0,b);g=c[ha>>2]|0}while(0);i=c[P>>2]|0;b=g-i>>4;if(!b){ea=426;break a}g=i+(b+-1<<4)|0;if(q>>>0>=b>>>0){ea=428;break a}F=i+(q<<4)|0;G=c[F>>2]|0;b=c[i+(q<<4)+8>>2]|0;c[F>>2]=c[g>>2];c[F+4>>2]=c[g+4>>2];c[F+8>>2]=c[g+8>>2];c[F+12>>2]=c[g+12>>2];c[g>>2]=2;c[ha>>2]=(c[ha>>2]|0)+-16;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 53:{i=H+(r>>>12&4080)|0;b=c[P>>2]|0;m=b+(r>>>20&4080)|0;q=r>>>8&255;g=c[i>>2]|0;if((g|0)==0?(c[m>>2]|0)==0:0){n=+h[i+8>>3]+ +h[m+8>>3];E=b+(q<<4)|0;G=c[E>>2]|0;F=b+(q<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=n;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=438;break a}c[ha>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(g&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=442;break a}c[ha>>2]=b+16;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];if(c[m>>2]&8|0){G=(c[m+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}po(ga,-2,0);po(ga,-1,0);b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;o=g+-2|0;i=g>>>0>1;m=b+(o<<4)|0;G=i?m:0;if((c[((G|0)==0?936:G)>>2]|0)!=8?(G=g|0?b+(g+-1<<4)|0:0,(c[((G|0)==0?936:G)>>2]|0)!=8):0){if(!i){ea=488;break a}n=+ho(ga,m);i=c[P>>2]|0;F=i+(o<<4)|0;G=c[F>>2]|0;g=i+(o<<4)+8|0;b=c[g>>2]|0;c[F>>2]=0;h[g>>3]=n;g=i;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);i=c[P>>2]|0;g=i}G=(c[ha>>2]|0)-g>>4;b=G+-1|0;if(!G){ea=493;break a}k=+ho(ga,i+(b<<4)|0);F=c[P>>2]|0;E=F+(b<<4)|0;G=c[E>>2]|0;F=F+(b<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);k=n+k;b=c[ha>>2]|0;g=b+-16|0;c[ha>>2]=g;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[g>>2]=2;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}if(b>>>0>=(c[Q>>2]|0)>>>0){ea=504;break a}g=b+16|0;c[ha>>2]=g;c[b>>2]=0;h[b+8>>3]=k}else ea=447;do if((ea|0)==447){ea=0;Eo(ga,-2)|0;G=c[P>>2]|0;b=(c[ha>>2]|0)-G>>4;b=b>>>0>1?G+(b+-2<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==8)p=c[b+8>>2]|0;else p=0;Eo(ga,-1)|0;g=c[ha>>2]|0;G=c[P>>2]|0;b=g-G>>4;b=b|0?G+(b+-1<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==8)m=c[b+8>>2]|0;else m=0;i=c[p+20>>2]|0;o=c[m+20>>2]|0;b=o+i|0;if(b>>>0<i>>>0|b>>>31|0){ea=483;break a}if(g>>>0>=(c[Q>>2]|0)>>>0){ea=453;break a}if(b>>>0>2147483646){ea=455;break a}b=ap(c[R>>2]|0,b,4,$)|0;if(!b){ea=457;break a}g=c[ha>>2]|0;c[g>>2]=10;c[g+8>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;c[ha>>2]=(c[ha>>2]|0)+16;b=c[$>>2]|0;PQ(b|0,p+28|0,i|0)|0;PQ(b+i|0,m+28|0,o|0)|0;m=c[ha>>2]|0;b=c[P>>2]|0;g=m-b|0;i=g>>4;o=i+-1|0;if(!i){ea=459;break a}G=((g|0)<16?i:0)+o|0;b=G>>>0<i>>>0?b+(G<<4)|0:0;b=(b|0)==0?936:b;m:do switch(c[b>>2]|0){case 10:{g=c[b+8>>2]|0;b=c[g+16>>2]|0;if(!(c[g>>2]&128)){g=g+24|0;break m}else{g=c[g+20>>2]|0;break m}}case 9:{b=c[b+8>>2]|0;if(!(c[b>>2]&8192)){ea=471;break a}g=c[b+40>>2]|0;if(!g){ea=471;break a}i=c[b+48>>2]|0;b=c[b+52>>2]|0;if((b+i|0)>>>0>(c[g+16>>2]|0)>>>0){ea=471;break a}if(!(c[g>>2]&128))g=g+24|0;else g=c[g+20>>2]|0;g=g+i|0;break}default:{ea=471;break a}}while(0);if(m>>>0>=(c[Q>>2]|0)>>>0){ea=473;break a}b=(g|0)==0?0:b;if((b|0)<0){ea=475;break a}b=Oo(ga,g,b)|0;g=c[ha>>2]|0;c[ha>>2]=g+16;c[g>>2]=8;c[g+8>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;op(ga,o);b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;if(!g){ea=477;break a}i=b+(g+-1<<4)|0;if(g>>>0<=2){ea=479;break a}g=g+-3|0;F=b+(g<<4)|0;G=c[F>>2]|0;g=c[b+(g<<4)+8>>2]|0;c[F>>2]=c[i>>2];c[F+4>>2]=c[i+4>>2];c[F+8>>2]=c[i+8>>2];c[F+12>>2]=c[i+12>>2];c[i>>2]=2;b=(c[ha>>2]|0)+-16|0;c[ha>>2]=b;do if(G&8){F=g+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0)break;Yn(c[R>>2]|0,g);b=c[ha>>2]|0}while(0);g=b+-16|0;c[ha>>2]=g;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[g>>2]=2;if(!(G&8))break;F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0)break;Yn(c[R>>2]|0,b);g=c[ha>>2]|0}while(0);i=c[P>>2]|0;b=g-i>>4;if(!b){ea=507;break a}g=i+(b+-1<<4)|0;if(q>>>0>=b>>>0){ea=509;break a}F=i+(q<<4)|0;G=c[F>>2]|0;b=c[i+(q<<4)+8>>2]|0;c[F>>2]=c[g>>2];c[F+4>>2]=c[g+4>>2];c[F+8>>2]=c[g+8>>2];c[F+12>>2]=c[g+12>>2];c[g>>2]=2;c[ha>>2]=(c[ha>>2]|0)+-16;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 54:{b=c[P>>2]|0;i=b+(r>>>12&4080)|0;m=H+(r>>>20&4080)|0;q=r>>>8&255;g=c[i>>2]|0;if((g|0)==0?(c[m>>2]|0)==0:0){n=+h[i+8>>3]+ +h[m+8>>3];E=b+(q<<4)|0;G=c[E>>2]|0;F=b+(q<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=n;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=519;break a}c[ha>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(g&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=523;break a}c[ha>>2]=b+16;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];if(c[m>>2]&8|0){G=(c[m+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}po(ga,-2,0);po(ga,-1,0);b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;o=g+-2|0;i=g>>>0>1;m=b+(o<<4)|0;G=i?m:0;if((c[((G|0)==0?936:G)>>2]|0)!=8?(G=g|0?b+(g+-1<<4)|0:0,(c[((G|0)==0?936:G)>>2]|0)!=8):0){if(!i){ea=569;break a}n=+ho(ga,m);i=c[P>>2]|0;F=i+(o<<4)|0;G=c[F>>2]|0;g=i+(o<<4)+8|0;b=c[g>>2]|0;c[F>>2]=0;h[g>>3]=n;g=i;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);i=c[P>>2]|0;g=i}G=(c[ha>>2]|0)-g>>4;b=G+-1|0;if(!G){ea=574;break a}k=+ho(ga,i+(b<<4)|0);F=c[P>>2]|0;E=F+(b<<4)|0;G=c[E>>2]|0;F=F+(b<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);k=n+k;b=c[ha>>2]|0;g=b+-16|0;c[ha>>2]=g;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[g>>2]=2;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}if(b>>>0>=(c[Q>>2]|0)>>>0){ea=585;break a}g=b+16|0;c[ha>>2]=g;c[b>>2]=0;h[b+8>>3]=k}else ea=528;do if((ea|0)==528){ea=0;Eo(ga,-2)|0;G=c[P>>2]|0;b=(c[ha>>2]|0)-G>>4;b=b>>>0>1?G+(b+-2<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==8)p=c[b+8>>2]|0;else p=0;Eo(ga,-1)|0;g=c[ha>>2]|0;G=c[P>>2]|0;b=g-G>>4;b=b|0?G+(b+-1<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==8)m=c[b+8>>2]|0;else m=0;i=c[p+20>>2]|0;o=c[m+20>>2]|0;b=o+i|0;if(b>>>0<i>>>0|b>>>31|0){ea=564;break a}if(g>>>0>=(c[Q>>2]|0)>>>0){ea=534;break a}if(b>>>0>2147483646){ea=536;break a}b=ap(c[R>>2]|0,b,4,$)|0;if(!b){ea=538;break a}g=c[ha>>2]|0;c[g>>2]=10;c[g+8>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;c[ha>>2]=(c[ha>>2]|0)+16;b=c[$>>2]|0;PQ(b|0,p+28|0,i|0)|0;PQ(b+i|0,m+28|0,o|0)|0;m=c[ha>>2]|0;b=c[P>>2]|0;g=m-b|0;i=g>>4;o=i+-1|0;if(!i){ea=540;break a}G=((g|0)<16?i:0)+o|0;b=G>>>0<i>>>0?b+(G<<4)|0:0;b=(b|0)==0?936:b;n:do switch(c[b>>2]|0){case 10:{g=c[b+8>>2]|0;b=c[g+16>>2]|0;if(!(c[g>>2]&128)){g=g+24|0;break n}else{g=c[g+20>>2]|0;break n}}case 9:{b=c[b+8>>2]|0;if(!(c[b>>2]&8192)){ea=552;break a}g=c[b+40>>2]|0;if(!g){ea=552;break a}i=c[b+48>>2]|0;b=c[b+52>>2]|0;if((b+i|0)>>>0>(c[g+16>>2]|0)>>>0){ea=552;break a}if(!(c[g>>2]&128))g=g+24|0;else g=c[g+20>>2]|0;g=g+i|0;break}default:{ea=552;break a}}while(0);if(m>>>0>=(c[Q>>2]|0)>>>0){ea=554;break a}b=(g|0)==0?0:b;if((b|0)<0){ea=556;break a}b=Oo(ga,g,b)|0;g=c[ha>>2]|0;c[ha>>2]=g+16;c[g>>2]=8;c[g+8>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;op(ga,o);b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;if(!g){ea=558;break a}i=b+(g+-1<<4)|0;if(g>>>0<=2){ea=560;break a}g=g+-3|0;F=b+(g<<4)|0;G=c[F>>2]|0;g=c[b+(g<<4)+8>>2]|0;c[F>>2]=c[i>>2];c[F+4>>2]=c[i+4>>2];c[F+8>>2]=c[i+8>>2];c[F+12>>2]=c[i+12>>2];c[i>>2]=2;b=(c[ha>>2]|0)+-16|0;c[ha>>2]=b;do if(G&8){F=g+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0)break;Yn(c[R>>2]|0,g);b=c[ha>>2]|0}while(0);g=b+-16|0;c[ha>>2]=g;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[g>>2]=2;if(!(G&8))break;F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0)break;Yn(c[R>>2]|0,b);g=c[ha>>2]|0}while(0);i=c[P>>2]|0;b=g-i>>4;if(!b){ea=588;break a}g=i+(b+-1<<4)|0;if(q>>>0>=b>>>0){ea=590;break a}F=i+(q<<4)|0;G=c[F>>2]|0;b=c[i+(q<<4)+8>>2]|0;c[F>>2]=c[g>>2];c[F+4>>2]=c[g+4>>2];c[F+8>>2]=c[g+8>>2];c[F+12>>2]=c[g+12>>2];c[g>>2]=2;c[ha>>2]=(c[ha>>2]|0)+-16;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 55:{i=H+(r>>>12&4080)|0;m=H+(r>>>20&4080)|0;q=r>>>8&255;b=c[i>>2]|0;if((b|0)==0?(c[m>>2]|0)==0:0){n=+h[i+8>>3]+ +h[m+8>>3];F=c[P>>2]|0;E=F+(q<<4)|0;G=c[E>>2]|0;F=F+(q<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=n;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}g=c[ha>>2]|0;if(g>>>0>=(c[Q>>2]|0)>>>0){ea=600;break a}c[ha>>2]=g+16;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];if(b&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=604;break a}c[ha>>2]=b+16;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];if(c[m>>2]&8|0){G=(c[m+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}po(ga,-2,0);po(ga,-1,0);b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;o=g+-2|0;i=g>>>0>1;m=b+(o<<4)|0;G=i?m:0;if((c[((G|0)==0?936:G)>>2]|0)!=8?(G=g|0?b+(g+-1<<4)|0:0,(c[((G|0)==0?936:G)>>2]|0)!=8):0){if(!i){ea=650;break a}n=+ho(ga,m);i=c[P>>2]|0;F=i+(o<<4)|0;G=c[F>>2]|0;g=i+(o<<4)+8|0;b=c[g>>2]|0;c[F>>2]=0;h[g>>3]=n;g=i;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);i=c[P>>2]|0;g=i}G=(c[ha>>2]|0)-g>>4;b=G+-1|0;if(!G){ea=655;break a}k=+ho(ga,i+(b<<4)|0);F=c[P>>2]|0;E=F+(b<<4)|0;G=c[E>>2]|0;F=F+(b<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);k=n+k;b=c[ha>>2]|0;g=b+-16|0;c[ha>>2]=g;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[g>>2]=2;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}if(b>>>0>=(c[Q>>2]|0)>>>0){ea=666;break a}g=b+16|0;c[ha>>2]=g;c[b>>2]=0;h[b+8>>3]=k}else ea=609;do if((ea|0)==609){ea=0;Eo(ga,-2)|0;G=c[P>>2]|0;b=(c[ha>>2]|0)-G>>4;b=b>>>0>1?G+(b+-2<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==8)p=c[b+8>>2]|0;else p=0;Eo(ga,-1)|0;g=c[ha>>2]|0;G=c[P>>2]|0;b=g-G>>4;b=b|0?G+(b+-1<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==8)m=c[b+8>>2]|0;else m=0;i=c[p+20>>2]|0;o=c[m+20>>2]|0;b=o+i|0;if(b>>>0<i>>>0|b>>>31|0){ea=645;break a}if(g>>>0>=(c[Q>>2]|0)>>>0){ea=615;break a}if(b>>>0>2147483646){ea=617;break a}b=ap(c[R>>2]|0,b,4,$)|0;if(!b){ea=619;break a}g=c[ha>>2]|0;c[g>>2]=10;c[g+8>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;c[ha>>2]=(c[ha>>2]|0)+16;b=c[$>>2]|0;PQ(b|0,p+28|0,i|0)|0;PQ(b+i|0,m+28|0,o|0)|0;m=c[ha>>2]|0;b=c[P>>2]|0;g=m-b|0;i=g>>4;o=i+-1|0;if(!i){ea=621;break a}G=((g|0)<16?i:0)+o|0;b=G>>>0<i>>>0?b+(G<<4)|0:0;b=(b|0)==0?936:b;o:do switch(c[b>>2]|0){case 10:{g=c[b+8>>2]|0;b=c[g+16>>2]|0;if(!(c[g>>2]&128)){g=g+24|0;break o}else{g=c[g+20>>2]|0;break o}}case 9:{b=c[b+8>>2]|0;if(!(c[b>>2]&8192)){ea=633;break a}g=c[b+40>>2]|0;if(!g){ea=633;break a}i=c[b+48>>2]|0;b=c[b+52>>2]|0;if((b+i|0)>>>0>(c[g+16>>2]|0)>>>0){ea=633;break a}if(!(c[g>>2]&128))g=g+24|0;else g=c[g+20>>2]|0;g=g+i|0;break}default:{ea=633;break a}}while(0);if(m>>>0>=(c[Q>>2]|0)>>>0){ea=635;break a}b=(g|0)==0?0:b;if((b|0)<0){ea=637;break a}b=Oo(ga,g,b)|0;g=c[ha>>2]|0;c[ha>>2]=g+16;c[g>>2]=8;c[g+8>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;op(ga,o);b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;if(!g){ea=639;break a}i=b+(g+-1<<4)|0;if(g>>>0<=2){ea=641;break a}g=g+-3|0;F=b+(g<<4)|0;G=c[F>>2]|0;g=c[b+(g<<4)+8>>2]|0;c[F>>2]=c[i>>2];c[F+4>>2]=c[i+4>>2];c[F+8>>2]=c[i+8>>2];c[F+12>>2]=c[i+12>>2];c[i>>2]=2;b=(c[ha>>2]|0)+-16|0;c[ha>>2]=b;do if(G&8){F=g+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0)break;Yn(c[R>>2]|0,g);b=c[ha>>2]|0}while(0);g=b+-16|0;c[ha>>2]=g;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[g>>2]=2;if(!(G&8))break;F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0)break;Yn(c[R>>2]|0,b);g=c[ha>>2]|0}while(0);i=c[P>>2]|0;b=g-i>>4;if(!b){ea=669;break a}g=i+(b+-1<<4)|0;if(q>>>0>=b>>>0){ea=671;break a}F=i+(q<<4)|0;G=c[F>>2]|0;b=c[i+(q<<4)+8>>2]|0;c[F>>2]=c[g>>2];c[F+4>>2]=c[g+4>>2];c[F+8>>2]=c[g+8>>2];c[F+12>>2]=c[g+12>>2];c[g>>2]=2;c[ha>>2]=(c[ha>>2]|0)+-16;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 56:{m=c[P>>2]|0;i=m+(r>>>12&4080)|0;m=m+(r>>>20&4080)|0;o=r>>>8&255;b=c[i>>2]|0;if((b|0)==0?(c[m>>2]|0)==0:0){n=+h[i+8>>3];k=+h[m+8>>3]}else{g=c[ha>>2]|0;if(g>>>0>=(c[Q>>2]|0)>>>0){ea=679;break a}c[ha>>2]=g+16;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];if(b&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=683;break a}c[ha>>2]=b+16;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];if(c[m>>2]&8|0){G=(c[m+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;G=(c[ha>>2]|0)-b>>4;g=G+-2|0;if(G>>>0<=1){ea=687;break a}n=+ho(ga,b+(g<<4)|0);i=c[P>>2]|0;F=i+(g<<4)|0;G=c[F>>2]|0;g=i+(g<<4)+8|0;b=c[g>>2]|0;c[F>>2]=0;h[g>>3]=n;g=i;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);i=c[P>>2]|0;g=i}G=(c[ha>>2]|0)-g>>4;b=G+-1|0;if(!G){ea=692;break a}k=+ho(ga,i+(b<<4)|0);F=c[P>>2]|0;E=F+(b<<4)|0;G=c[E>>2]|0;F=F+(b<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);g=c[ha>>2]|0;b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b)}F=c[P>>2]|0;E=F+(o<<4)|0;G=c[E>>2]|0;F=F+(o<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=n-k;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 57:{i=H+(r>>>12&4080)|0;m=(c[P>>2]|0)+(r>>>20&4080)|0;o=r>>>8&255;b=c[i>>2]|0;if((b|0)==0?(c[m>>2]|0)==0:0){n=+h[i+8>>3];k=+h[m+8>>3]}else{g=c[ha>>2]|0;if(g>>>0>=(c[Q>>2]|0)>>>0){ea=709;break a}c[ha>>2]=g+16;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];if(b&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=713;break a}c[ha>>2]=b+16;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];if(c[m>>2]&8|0){G=(c[m+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;G=(c[ha>>2]|0)-b>>4;g=G+-2|0;if(G>>>0<=1){ea=717;break a}n=+ho(ga,b+(g<<4)|0);i=c[P>>2]|0;F=i+(g<<4)|0;G=c[F>>2]|0;g=i+(g<<4)+8|0;b=c[g>>2]|0;c[F>>2]=0;h[g>>3]=n;g=i;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);i=c[P>>2]|0;g=i}G=(c[ha>>2]|0)-g>>4;b=G+-1|0;if(!G){ea=722;break a}k=+ho(ga,i+(b<<4)|0);F=c[P>>2]|0;E=F+(b<<4)|0;G=c[E>>2]|0;F=F+(b<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);g=c[ha>>2]|0;b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b)}F=c[P>>2]|0;E=F+(o<<4)|0;G=c[E>>2]|0;F=F+(o<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=n-k;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 58:{i=(c[P>>2]|0)+(r>>>12&4080)|0;m=H+(r>>>20&4080)|0;o=r>>>8&255;b=c[i>>2]|0;if((b|0)==0?(c[m>>2]|0)==0:0){n=+h[i+8>>3];k=+h[m+8>>3]}else{g=c[ha>>2]|0;if(g>>>0>=(c[Q>>2]|0)>>>0){ea=739;break a}c[ha>>2]=g+16;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];if(b&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=743;break a}c[ha>>2]=b+16;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];if(c[m>>2]&8|0){G=(c[m+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;G=(c[ha>>2]|0)-b>>4;g=G+-2|0;if(G>>>0<=1){ea=747;break a}n=+ho(ga,b+(g<<4)|0);i=c[P>>2]|0;F=i+(g<<4)|0;G=c[F>>2]|0;g=i+(g<<4)+8|0;b=c[g>>2]|0;c[F>>2]=0;h[g>>3]=n;g=i;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);i=c[P>>2]|0;g=i}G=(c[ha>>2]|0)-g>>4;b=G+-1|0;if(!G){ea=752;break a}k=+ho(ga,i+(b<<4)|0);F=c[P>>2]|0;E=F+(b<<4)|0;G=c[E>>2]|0;F=F+(b<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);g=c[ha>>2]|0;b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b)}F=c[P>>2]|0;E=F+(o<<4)|0;G=c[E>>2]|0;F=F+(o<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=n-k;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 59:{i=H+(r>>>12&4080)|0;m=H+(r>>>20&4080)|0;o=r>>>8&255;b=c[i>>2]|0;if((b|0)==0?(c[m>>2]|0)==0:0){n=+h[i+8>>3];k=+h[m+8>>3]}else{g=c[ha>>2]|0;if(g>>>0>=(c[Q>>2]|0)>>>0){ea=769;break a}c[ha>>2]=g+16;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];if(b&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=773;break a}c[ha>>2]=b+16;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];if(c[m>>2]&8|0){G=(c[m+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;G=(c[ha>>2]|0)-b>>4;g=G+-2|0;if(G>>>0<=1){ea=777;break a}n=+ho(ga,b+(g<<4)|0);i=c[P>>2]|0;F=i+(g<<4)|0;G=c[F>>2]|0;g=i+(g<<4)+8|0;b=c[g>>2]|0;c[F>>2]=0;h[g>>3]=n;g=i;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);i=c[P>>2]|0;g=i}G=(c[ha>>2]|0)-g>>4;b=G+-1|0;if(!G){ea=782;break a}k=+ho(ga,i+(b<<4)|0);F=c[P>>2]|0;E=F+(b<<4)|0;G=c[E>>2]|0;F=F+(b<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);g=c[ha>>2]|0;b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b)}F=c[P>>2]|0;E=F+(o<<4)|0;G=c[E>>2]|0;F=F+(o<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=n-k;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 60:{m=c[P>>2]|0;i=m+(r>>>12&4080)|0;m=m+(r>>>20&4080)|0;o=r>>>8&255;b=c[i>>2]|0;if((b|0)==0?(c[m>>2]|0)==0:0){n=+h[i+8>>3];k=+h[m+8>>3]}else{g=c[ha>>2]|0;if(g>>>0>=(c[Q>>2]|0)>>>0){ea=799;break a}c[ha>>2]=g+16;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];if(b&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=803;break a}c[ha>>2]=b+16;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];if(c[m>>2]&8|0){G=(c[m+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;G=(c[ha>>2]|0)-b>>4;g=G+-2|0;if(G>>>0<=1){ea=807;break a}n=+ho(ga,b+(g<<4)|0);i=c[P>>2]|0;F=i+(g<<4)|0;G=c[F>>2]|0;g=i+(g<<4)+8|0;b=c[g>>2]|0;c[F>>2]=0;h[g>>3]=n;g=i;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);i=c[P>>2]|0;g=i}G=(c[ha>>2]|0)-g>>4;b=G+-1|0;if(!G){ea=812;break a}k=+ho(ga,i+(b<<4)|0);F=c[P>>2]|0;E=F+(b<<4)|0;G=c[E>>2]|0;F=F+(b<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);g=c[ha>>2]|0;b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b)}F=c[P>>2]|0;E=F+(o<<4)|0;G=c[E>>2]|0;F=F+(o<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k*n;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 61:{i=H+(r>>>12&4080)|0;m=(c[P>>2]|0)+(r>>>20&4080)|0;o=r>>>8&255;b=c[i>>2]|0;if((b|0)==0?(c[m>>2]|0)==0:0){n=+h[i+8>>3];k=+h[m+8>>3]}else{g=c[ha>>2]|0;if(g>>>0>=(c[Q>>2]|0)>>>0){ea=829;break a}c[ha>>2]=g+16;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];if(b&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=833;break a}c[ha>>2]=b+16;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];if(c[m>>2]&8|0){G=(c[m+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;G=(c[ha>>2]|0)-b>>4;g=G+-2|0;if(G>>>0<=1){ea=837;break a}n=+ho(ga,b+(g<<4)|0);i=c[P>>2]|0;F=i+(g<<4)|0;G=c[F>>2]|0;g=i+(g<<4)+8|0;b=c[g>>2]|0;c[F>>2]=0;h[g>>3]=n;g=i;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);i=c[P>>2]|0;g=i}G=(c[ha>>2]|0)-g>>4;b=G+-1|0;if(!G){ea=842;break a}k=+ho(ga,i+(b<<4)|0);F=c[P>>2]|0;E=F+(b<<4)|0;G=c[E>>2]|0;F=F+(b<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);g=c[ha>>2]|0;b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b)}F=c[P>>2]|0;E=F+(o<<4)|0;G=c[E>>2]|0;F=F+(o<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k*n;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 62:{i=(c[P>>2]|0)+(r>>>12&4080)|0;m=H+(r>>>20&4080)|0;o=r>>>8&255;b=c[i>>2]|0;if((b|0)==0?(c[m>>2]|0)==0:0){n=+h[i+8>>3];k=+h[m+8>>3]}else{g=c[ha>>2]|0;if(g>>>0>=(c[Q>>2]|0)>>>0){ea=859;break a}c[ha>>2]=g+16;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];if(b&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=863;break a}c[ha>>2]=b+16;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];if(c[m>>2]&8|0){G=(c[m+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;G=(c[ha>>2]|0)-b>>4;g=G+-2|0;if(G>>>0<=1){ea=867;break a}n=+ho(ga,b+(g<<4)|0);i=c[P>>2]|0;F=i+(g<<4)|0;G=c[F>>2]|0;g=i+(g<<4)+8|0;b=c[g>>2]|0;c[F>>2]=0;h[g>>3]=n;g=i;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);i=c[P>>2]|0;g=i}G=(c[ha>>2]|0)-g>>4;b=G+-1|0;if(!G){ea=872;break a}k=+ho(ga,i+(b<<4)|0);F=c[P>>2]|0;E=F+(b<<4)|0;G=c[E>>2]|0;F=F+(b<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);g=c[ha>>2]|0;b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b)}F=c[P>>2]|0;E=F+(o<<4)|0;G=c[E>>2]|0;F=F+(o<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k*n;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 63:{i=H+(r>>>12&4080)|0;m=H+(r>>>20&4080)|0;o=r>>>8&255;b=c[i>>2]|0;if((b|0)==0?(c[m>>2]|0)==0:0){n=+h[i+8>>3];k=+h[m+8>>3]}else{g=c[ha>>2]|0;if(g>>>0>=(c[Q>>2]|0)>>>0){ea=889;break a}c[ha>>2]=g+16;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];if(b&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=893;break a}c[ha>>2]=b+16;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];if(c[m>>2]&8|0){G=(c[m+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;G=(c[ha>>2]|0)-b>>4;g=G+-2|0;if(G>>>0<=1){ea=897;break a}n=+ho(ga,b+(g<<4)|0);i=c[P>>2]|0;F=i+(g<<4)|0;G=c[F>>2]|0;g=i+(g<<4)+8|0;b=c[g>>2]|0;c[F>>2]=0;h[g>>3]=n;g=i;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);i=c[P>>2]|0;g=i}G=(c[ha>>2]|0)-g>>4;b=G+-1|0;if(!G){ea=902;break a}k=+ho(ga,i+(b<<4)|0);F=c[P>>2]|0;E=F+(b<<4)|0;G=c[E>>2]|0;F=F+(b<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);g=c[ha>>2]|0;b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b)}F=c[P>>2]|0;E=F+(o<<4)|0;G=c[E>>2]|0;F=F+(o<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k*n;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 64:{m=c[P>>2]|0;i=m+(r>>>12&4080)|0;m=m+(r>>>20&4080)|0;o=r>>>8&255;b=c[i>>2]|0;if((b|0)==0?(c[m>>2]|0)==0:0){n=+h[i+8>>3];k=+h[m+8>>3]}else{g=c[ha>>2]|0;if(g>>>0>=(c[Q>>2]|0)>>>0){ea=919;break a}c[ha>>2]=g+16;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];if(b&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=923;break a}c[ha>>2]=b+16;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];if(c[m>>2]&8|0){G=(c[m+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;G=(c[ha>>2]|0)-b>>4;g=G+-2|0;if(G>>>0<=1){ea=927;break a}n=+ho(ga,b+(g<<4)|0);i=c[P>>2]|0;F=i+(g<<4)|0;G=c[F>>2]|0;g=i+(g<<4)+8|0;b=c[g>>2]|0;c[F>>2]=0;h[g>>3]=n;g=i;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);i=c[P>>2]|0;g=i}G=(c[ha>>2]|0)-g>>4;b=G+-1|0;if(!G){ea=932;break a}k=+ho(ga,i+(b<<4)|0);F=c[P>>2]|0;E=F+(b<<4)|0;G=c[E>>2]|0;F=F+(b<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);g=c[ha>>2]|0;b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b)}F=c[P>>2]|0;E=F+(o<<4)|0;G=c[E>>2]|0;F=F+(o<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=n/k;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 65:{i=H+(r>>>12&4080)|0;m=(c[P>>2]|0)+(r>>>20&4080)|0;o=r>>>8&255;b=c[i>>2]|0;if((b|0)==0?(c[m>>2]|0)==0:0){n=+h[i+8>>3];k=+h[m+8>>3]}else{g=c[ha>>2]|0;if(g>>>0>=(c[Q>>2]|0)>>>0){ea=949;break a}c[ha>>2]=g+16;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];if(b&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=953;break a}c[ha>>2]=b+16;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];if(c[m>>2]&8|0){G=(c[m+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;G=(c[ha>>2]|0)-b>>4;g=G+-2|0;if(G>>>0<=1){ea=957;break a}n=+ho(ga,b+(g<<4)|0);i=c[P>>2]|0;F=i+(g<<4)|0;G=c[F>>2]|0;g=i+(g<<4)+8|0;b=c[g>>2]|0;c[F>>2]=0;h[g>>3]=n;g=i;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);i=c[P>>2]|0;g=i}G=(c[ha>>2]|0)-g>>4;b=G+-1|0;if(!G){ea=962;break a}k=+ho(ga,i+(b<<4)|0);F=c[P>>2]|0;E=F+(b<<4)|0;G=c[E>>2]|0;F=F+(b<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);g=c[ha>>2]|0;b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b)}F=c[P>>2]|0;E=F+(o<<4)|0;G=c[E>>2]|0;F=F+(o<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=n/k;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 66:{i=(c[P>>2]|0)+(r>>>12&4080)|0;m=H+(r>>>20&4080)|0;o=r>>>8&255;b=c[i>>2]|0;if((b|0)==0?(c[m>>2]|0)==0:0){n=+h[i+8>>3];k=+h[m+8>>3]}else{g=c[ha>>2]|0;if(g>>>0>=(c[Q>>2]|0)>>>0){ea=979;break a}c[ha>>2]=g+16;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];if(b&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=983;break a}c[ha>>2]=b+16;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];if(c[m>>2]&8|0){G=(c[m+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;G=(c[ha>>2]|0)-b>>4;g=G+-2|0;if(G>>>0<=1){ea=987;break a}n=+ho(ga,b+(g<<4)|0);i=c[P>>2]|0;F=i+(g<<4)|0;G=c[F>>2]|0;g=i+(g<<4)+8|0;b=c[g>>2]|0;c[F>>2]=0;h[g>>3]=n;g=i;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);i=c[P>>2]|0;g=i}G=(c[ha>>2]|0)-g>>4;b=G+-1|0;if(!G){ea=992;break a}k=+ho(ga,i+(b<<4)|0);F=c[P>>2]|0;E=F+(b<<4)|0;G=c[E>>2]|0;F=F+(b<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);g=c[ha>>2]|0;b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b)}F=c[P>>2]|0;E=F+(o<<4)|0;G=c[E>>2]|0;F=F+(o<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=n/k;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 67:{i=H+(r>>>12&4080)|0;m=H+(r>>>20&4080)|0;o=r>>>8&255;b=c[i>>2]|0;if((b|0)==0?(c[m>>2]|0)==0:0){n=+h[i+8>>3];k=+h[m+8>>3]}else{g=c[ha>>2]|0;if(g>>>0>=(c[Q>>2]|0)>>>0){ea=1009;break a}c[ha>>2]=g+16;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];if(b&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1013;break a}c[ha>>2]=b+16;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];if(c[m>>2]&8|0){G=(c[m+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;G=(c[ha>>2]|0)-b>>4;g=G+-2|0;if(G>>>0<=1){ea=1017;break a}n=+ho(ga,b+(g<<4)|0);i=c[P>>2]|0;F=i+(g<<4)|0;G=c[F>>2]|0;g=i+(g<<4)+8|0;b=c[g>>2]|0;c[F>>2]=0;h[g>>3]=n;g=i;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);i=c[P>>2]|0;g=i}G=(c[ha>>2]|0)-g>>4;b=G+-1|0;if(!G){ea=1022;break a}k=+ho(ga,i+(b<<4)|0);F=c[P>>2]|0;E=F+(b<<4)|0;G=c[E>>2]|0;F=F+(b<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);g=c[ha>>2]|0;b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b)}F=c[P>>2]|0;E=F+(o<<4)|0;G=c[E>>2]|0;F=F+(o<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=n/k;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 68:{m=c[P>>2]|0;i=m+(r>>>12&4080)|0;m=m+(r>>>20&4080)|0;o=r>>>8&255;b=c[i>>2]|0;if((b|0)==0?(c[m>>2]|0)==0:0){n=+h[i+8>>3];k=+h[m+8>>3]}else{g=c[ha>>2]|0;if(g>>>0>=(c[Q>>2]|0)>>>0){ea=1039;break a}c[ha>>2]=g+16;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];if(b&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1043;break a}c[ha>>2]=b+16;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];if(c[m>>2]&8|0){G=(c[m+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;G=(c[ha>>2]|0)-b>>4;g=G+-2|0;if(G>>>0<=1){ea=1047;break a}n=+ho(ga,b+(g<<4)|0);i=c[P>>2]|0;F=i+(g<<4)|0;G=c[F>>2]|0;g=i+(g<<4)+8|0;b=c[g>>2]|0;c[F>>2]=0;h[g>>3]=n;g=i;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);i=c[P>>2]|0;g=i}G=(c[ha>>2]|0)-g>>4;b=G+-1|0;if(!G){ea=1052;break a}k=+ho(ga,i+(b<<4)|0);F=c[P>>2]|0;E=F+(b<<4)|0;G=c[E>>2]|0;F=F+(b<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);g=c[ha>>2]|0;b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b)}n=+TO(n,k);F=c[P>>2]|0;E=F+(o<<4)|0;G=c[E>>2]|0;F=F+(o<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=n;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 69:{i=H+(r>>>12&4080)|0;m=(c[P>>2]|0)+(r>>>20&4080)|0;o=r>>>8&255;b=c[i>>2]|0;if((b|0)==0?(c[m>>2]|0)==0:0){n=+h[i+8>>3];k=+h[m+8>>3]}else{g=c[ha>>2]|0;if(g>>>0>=(c[Q>>2]|0)>>>0){ea=1069;break a}c[ha>>2]=g+16;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];if(b&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1073;break a}c[ha>>2]=b+16;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];if(c[m>>2]&8|0){G=(c[m+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;G=(c[ha>>2]|0)-b>>4;g=G+-2|0;if(G>>>0<=1){ea=1077;break a}n=+ho(ga,b+(g<<4)|0);i=c[P>>2]|0;F=i+(g<<4)|0;G=c[F>>2]|0;g=i+(g<<4)+8|0;b=c[g>>2]|0;c[F>>2]=0;h[g>>3]=n;g=i;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);i=c[P>>2]|0;g=i}G=(c[ha>>2]|0)-g>>4;b=G+-1|0;if(!G){ea=1082;break a}k=+ho(ga,i+(b<<4)|0);F=c[P>>2]|0;E=F+(b<<4)|0;G=c[E>>2]|0;F=F+(b<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);g=c[ha>>2]|0;b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b)}n=+TO(n,k);F=c[P>>2]|0;E=F+(o<<4)|0;G=c[E>>2]|0;F=F+(o<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=n;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 70:{i=(c[P>>2]|0)+(r>>>12&4080)|0;m=H+(r>>>20&4080)|0;o=r>>>8&255;b=c[i>>2]|0;if((b|0)==0?(c[m>>2]|0)==0:0){n=+h[i+8>>3];k=+h[m+8>>3]}else{g=c[ha>>2]|0;if(g>>>0>=(c[Q>>2]|0)>>>0){ea=1099;break a}c[ha>>2]=g+16;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];if(b&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1103;break a}c[ha>>2]=b+16;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];if(c[m>>2]&8|0){G=(c[m+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;G=(c[ha>>2]|0)-b>>4;g=G+-2|0;if(G>>>0<=1){ea=1107;break a}n=+ho(ga,b+(g<<4)|0);i=c[P>>2]|0;F=i+(g<<4)|0;G=c[F>>2]|0;g=i+(g<<4)+8|0;b=c[g>>2]|0;c[F>>2]=0;h[g>>3]=n;g=i;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);i=c[P>>2]|0;g=i}G=(c[ha>>2]|0)-g>>4;b=G+-1|0;if(!G){ea=1112;break a}k=+ho(ga,i+(b<<4)|0);F=c[P>>2]|0;E=F+(b<<4)|0;G=c[E>>2]|0;F=F+(b<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);g=c[ha>>2]|0;b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b)}n=+TO(n,k);F=c[P>>2]|0;E=F+(o<<4)|0;G=c[E>>2]|0;F=F+(o<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=n;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 71:{i=H+(r>>>12&4080)|0;m=H+(r>>>20&4080)|0;o=r>>>8&255;b=c[i>>2]|0;if((b|0)==0?(c[m>>2]|0)==0:0){n=+h[i+8>>3];k=+h[m+8>>3]}else{g=c[ha>>2]|0;if(g>>>0>=(c[Q>>2]|0)>>>0){ea=1129;break a}c[ha>>2]=g+16;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];if(b&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1133;break a}c[ha>>2]=b+16;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];if(c[m>>2]&8|0){G=(c[m+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;G=(c[ha>>2]|0)-b>>4;g=G+-2|0;if(G>>>0<=1){ea=1137;break a}n=+ho(ga,b+(g<<4)|0);i=c[P>>2]|0;F=i+(g<<4)|0;G=c[F>>2]|0;g=i+(g<<4)+8|0;b=c[g>>2]|0;c[F>>2]=0;h[g>>3]=n;g=i;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);i=c[P>>2]|0;g=i}G=(c[ha>>2]|0)-g>>4;b=G+-1|0;if(!G){ea=1142;break a}k=+ho(ga,i+(b<<4)|0);F=c[P>>2]|0;E=F+(b<<4)|0;G=c[E>>2]|0;F=F+(b<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);g=c[ha>>2]|0;b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b)}n=+TO(n,k);F=c[P>>2]|0;E=F+(o<<4)|0;G=c[E>>2]|0;F=F+(o<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=n;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 72:{m=c[P>>2]|0;i=m+(r>>>12&4080)|0;m=m+(r>>>20&4080)|0;o=r>>>8&255;b=c[i>>2]|0;if((b|0)==0?(c[m>>2]|0)==0:0){n=+h[i+8>>3];k=+h[m+8>>3]}else{g=c[ha>>2]|0;if(g>>>0>=(c[Q>>2]|0)>>>0){ea=1159;break a}c[ha>>2]=g+16;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];if(b&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1163;break a}c[ha>>2]=b+16;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];if(c[m>>2]&8|0){G=(c[m+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;G=(c[ha>>2]|0)-b>>4;g=G+-2|0;if(G>>>0<=1){ea=1167;break a}n=+ho(ga,b+(g<<4)|0);i=c[P>>2]|0;F=i+(g<<4)|0;G=c[F>>2]|0;g=i+(g<<4)+8|0;b=c[g>>2]|0;c[F>>2]=0;h[g>>3]=n;g=i;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);i=c[P>>2]|0;g=i}G=(c[ha>>2]|0)-g>>4;b=G+-1|0;if(!G){ea=1172;break a}k=+ho(ga,i+(b<<4)|0);F=c[P>>2]|0;E=F+(b<<4)|0;G=c[E>>2]|0;F=F+(b<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);g=c[ha>>2]|0;b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b)}G=iP(k)|0;if((G|0)!=0?!((G|0)==1&+B(+n)==1.0):0)k=+D(+n,+k);else k=s;F=c[P>>2]|0;E=F+(o<<4)|0;G=c[E>>2]|0;F=F+(o<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 73:{i=H+(r>>>12&4080)|0;m=(c[P>>2]|0)+(r>>>20&4080)|0;o=r>>>8&255;b=c[i>>2]|0;if((b|0)==0?(c[m>>2]|0)==0:0){n=+h[i+8>>3];k=+h[m+8>>3]}else{g=c[ha>>2]|0;if(g>>>0>=(c[Q>>2]|0)>>>0){ea=1192;break a}c[ha>>2]=g+16;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];if(b&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1196;break a}c[ha>>2]=b+16;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];if(c[m>>2]&8|0){G=(c[m+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;G=(c[ha>>2]|0)-b>>4;g=G+-2|0;if(G>>>0<=1){ea=1200;break a}n=+ho(ga,b+(g<<4)|0);i=c[P>>2]|0;F=i+(g<<4)|0;G=c[F>>2]|0;g=i+(g<<4)+8|0;b=c[g>>2]|0;c[F>>2]=0;h[g>>3]=n;g=i;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);i=c[P>>2]|0;g=i}G=(c[ha>>2]|0)-g>>4;b=G+-1|0;if(!G){ea=1205;break a}k=+ho(ga,i+(b<<4)|0);F=c[P>>2]|0;E=F+(b<<4)|0;G=c[E>>2]|0;F=F+(b<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);g=c[ha>>2]|0;b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b)}G=iP(k)|0;if((G|0)!=0?!((G|0)==1&+B(+n)==1.0):0)k=+D(+n,+k);else k=s;F=c[P>>2]|0;E=F+(o<<4)|0;G=c[E>>2]|0;F=F+(o<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 74:{i=(c[P>>2]|0)+(r>>>12&4080)|0;m=H+(r>>>20&4080)|0;o=r>>>8&255;b=c[i>>2]|0;if((b|0)==0?(c[m>>2]|0)==0:0){n=+h[i+8>>3];k=+h[m+8>>3]}else{g=c[ha>>2]|0;if(g>>>0>=(c[Q>>2]|0)>>>0){ea=1225;break a}c[ha>>2]=g+16;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];if(b&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1229;break a}c[ha>>2]=b+16;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];if(c[m>>2]&8|0){G=(c[m+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;G=(c[ha>>2]|0)-b>>4;g=G+-2|0;if(G>>>0<=1){ea=1233;break a}n=+ho(ga,b+(g<<4)|0);i=c[P>>2]|0;F=i+(g<<4)|0;G=c[F>>2]|0;g=i+(g<<4)+8|0;b=c[g>>2]|0;c[F>>2]=0;h[g>>3]=n;g=i;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);i=c[P>>2]|0;g=i}G=(c[ha>>2]|0)-g>>4;b=G+-1|0;if(!G){ea=1238;break a}k=+ho(ga,i+(b<<4)|0);F=c[P>>2]|0;E=F+(b<<4)|0;G=c[E>>2]|0;F=F+(b<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);g=c[ha>>2]|0;b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b)}G=iP(k)|0;if((G|0)!=0?!((G|0)==1&+B(+n)==1.0):0)k=+D(+n,+k);else k=s;F=c[P>>2]|0;E=F+(o<<4)|0;G=c[E>>2]|0;F=F+(o<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 75:{i=H+(r>>>12&4080)|0;m=H+(r>>>20&4080)|0;o=r>>>8&255;b=c[i>>2]|0;if((b|0)==0?(c[m>>2]|0)==0:0){n=+h[i+8>>3];k=+h[m+8>>3]}else{g=c[ha>>2]|0;if(g>>>0>=(c[Q>>2]|0)>>>0){ea=1258;break a}c[ha>>2]=g+16;c[g>>2]=c[i>>2];c[g+4>>2]=c[i+4>>2];c[g+8>>2]=c[i+8>>2];c[g+12>>2]=c[i+12>>2];if(b&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1262;break a}c[ha>>2]=b+16;c[b>>2]=c[m>>2];c[b+4>>2]=c[m+4>>2];c[b+8>>2]=c[m+8>>2];c[b+12>>2]=c[m+12>>2];if(c[m>>2]&8|0){G=(c[m+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;G=(c[ha>>2]|0)-b>>4;g=G+-2|0;if(G>>>0<=1){ea=1266;break a}n=+ho(ga,b+(g<<4)|0);i=c[P>>2]|0;F=i+(g<<4)|0;G=c[F>>2]|0;g=i+(g<<4)+8|0;b=c[g>>2]|0;c[F>>2]=0;h[g>>3]=n;g=i;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);i=c[P>>2]|0;g=i}G=(c[ha>>2]|0)-g>>4;b=G+-1|0;if(!G){ea=1271;break a}k=+ho(ga,i+(b<<4)|0);F=c[P>>2]|0;E=F+(b<<4)|0;G=c[E>>2]|0;F=F+(b<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);g=c[ha>>2]|0;b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b)}G=iP(k)|0;if((G|0)!=0?!((G|0)==1&+B(+n)==1.0):0)k=+D(+n,+k);else k=s;F=c[P>>2]|0;E=F+(o<<4)|0;G=c[E>>2]|0;F=F+(o<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 76:{i=c[P>>2]|0;g=i+(r>>>12&4080)|0;i=i+(r>>>20&4080)|0;p=r>>>8&255;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1288;break a}c[ha>>2]=b+16;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];if(c[g>>2]&8|0){G=(c[g+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1292;break a}c[ha>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(c[i>>2]&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;if(g>>>0<=1){ea=1296;break a}k=+ho(ga,b+(g+-2<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;p:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1300;break p}}if((g|0)<0)ea=1300;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1300}while(0);if((ea|0)==1300){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}o=~~k;b=c[ha>>2]|0;i=c[P>>2]|0;g=b-i>>4;if(g>>>0<=1){ea=1302;break a}F=g+-2|0;E=i+(F<<4)|0;G=c[E>>2]|0;F=i+(F<<4)+8|0;g=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o|0);if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);i=c[P>>2]|0;b=c[ha>>2]|0}b=b-i>>4;if(!b){ea=1307;break a}k=+ho(ga,i+(b+-1<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;q:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1311;break q}}if((g|0)<0)ea=1311;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1311}while(0);if((ea|0)==1311){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}m=~~k;g=c[ha>>2]|0;b=c[P>>2]|0;i=g-b>>4;if(!i){ea=1313;break a}F=i+-1|0;E=b+(F<<4)|0;G=c[E>>2]|0;F=b+(F<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m|0);if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);F=c[P>>2]|0;E=F+(p<<4)|0;G=c[E>>2]|0;F=F+(p<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m&o|0);if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 77:{g=H+(r>>>12&4080)|0;i=(c[P>>2]|0)+(r>>>20&4080)|0;p=r>>>8&255;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1327;break a}c[ha>>2]=b+16;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];if(c[g>>2]&8|0){G=(c[g+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1331;break a}c[ha>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(c[i>>2]&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;if(g>>>0<=1){ea=1335;break a}k=+ho(ga,b+(g+-2<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;r:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1339;break r}}if((g|0)<0)ea=1339;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1339}while(0);if((ea|0)==1339){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}o=~~k;b=c[ha>>2]|0;i=c[P>>2]|0;g=b-i>>4;if(g>>>0<=1){ea=1341;break a}F=g+-2|0;E=i+(F<<4)|0;G=c[E>>2]|0;F=i+(F<<4)+8|0;g=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o|0);if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);i=c[P>>2]|0;b=c[ha>>2]|0}b=b-i>>4;if(!b){ea=1346;break a}k=+ho(ga,i+(b+-1<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;s:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1350;break s}}if((g|0)<0)ea=1350;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1350}while(0);if((ea|0)==1350){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}m=~~k;g=c[ha>>2]|0;b=c[P>>2]|0;i=g-b>>4;if(!i){ea=1352;break a}F=i+-1|0;E=b+(F<<4)|0;G=c[E>>2]|0;F=b+(F<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m|0);if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);F=c[P>>2]|0;E=F+(p<<4)|0;G=c[E>>2]|0;F=F+(p<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m&o|0);if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 78:{g=(c[P>>2]|0)+(r>>>12&4080)|0;i=H+(r>>>20&4080)|0;p=r>>>8&255;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1366;break a}c[ha>>2]=b+16;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];if(c[g>>2]&8|0){G=(c[g+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1370;break a}c[ha>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(c[i>>2]&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;if(g>>>0<=1){ea=1374;break a}k=+ho(ga,b+(g+-2<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;t:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1378;break t}}if((g|0)<0)ea=1378;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1378}while(0);if((ea|0)==1378){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}o=~~k;b=c[ha>>2]|0;i=c[P>>2]|0;g=b-i>>4;if(g>>>0<=1){ea=1380;break a}F=g+-2|0;E=i+(F<<4)|0;G=c[E>>2]|0;F=i+(F<<4)+8|0;g=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o|0);if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);i=c[P>>2]|0;b=c[ha>>2]|0}b=b-i>>4;if(!b){ea=1385;break a}k=+ho(ga,i+(b+-1<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;u:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1389;break u}}if((g|0)<0)ea=1389;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1389}while(0);if((ea|0)==1389){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}m=~~k;g=c[ha>>2]|0;b=c[P>>2]|0;i=g-b>>4;if(!i){ea=1391;break a}F=i+-1|0;E=b+(F<<4)|0;G=c[E>>2]|0;F=b+(F<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m|0);if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);F=c[P>>2]|0;E=F+(p<<4)|0;G=c[E>>2]|0;F=F+(p<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m&o|0);if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 79:{g=H+(r>>>12&4080)|0;i=H+(r>>>20&4080)|0;p=r>>>8&255;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1405;break a}c[ha>>2]=b+16;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];if(c[g>>2]&8|0){G=(c[g+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1409;break a}c[ha>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(c[i>>2]&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;if(g>>>0<=1){ea=1413;break a}k=+ho(ga,b+(g+-2<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;v:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1417;break v}}if((g|0)<0)ea=1417;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1417}while(0);if((ea|0)==1417){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}o=~~k;b=c[ha>>2]|0;i=c[P>>2]|0;g=b-i>>4;if(g>>>0<=1){ea=1419;break a}F=g+-2|0;E=i+(F<<4)|0;G=c[E>>2]|0;F=i+(F<<4)+8|0;g=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o|0);if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);i=c[P>>2]|0;b=c[ha>>2]|0}b=b-i>>4;if(!b){ea=1424;break a}k=+ho(ga,i+(b+-1<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;w:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1428;break w}}if((g|0)<0)ea=1428;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1428}while(0);if((ea|0)==1428){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}m=~~k;g=c[ha>>2]|0;b=c[P>>2]|0;i=g-b>>4;if(!i){ea=1430;break a}F=i+-1|0;E=b+(F<<4)|0;G=c[E>>2]|0;F=b+(F<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m|0);if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);F=c[P>>2]|0;E=F+(p<<4)|0;G=c[E>>2]|0;F=F+(p<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m&o|0);if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 80:{i=c[P>>2]|0;g=i+(r>>>12&4080)|0;i=i+(r>>>20&4080)|0;p=r>>>8&255;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1444;break a}c[ha>>2]=b+16;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];if(c[g>>2]&8|0){G=(c[g+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1448;break a}c[ha>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(c[i>>2]&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;if(g>>>0<=1){ea=1452;break a}k=+ho(ga,b+(g+-2<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;x:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1456;break x}}if((g|0)<0)ea=1456;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1456}while(0);if((ea|0)==1456){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}o=~~k;b=c[ha>>2]|0;i=c[P>>2]|0;g=b-i>>4;if(g>>>0<=1){ea=1458;break a}F=g+-2|0;E=i+(F<<4)|0;G=c[E>>2]|0;F=i+(F<<4)+8|0;g=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o|0);if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);i=c[P>>2]|0;b=c[ha>>2]|0}b=b-i>>4;if(!b){ea=1463;break a}k=+ho(ga,i+(b+-1<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;y:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1467;break y}}if((g|0)<0)ea=1467;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1467}while(0);if((ea|0)==1467){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}m=~~k;g=c[ha>>2]|0;b=c[P>>2]|0;i=g-b>>4;if(!i){ea=1469;break a}F=i+-1|0;E=b+(F<<4)|0;G=c[E>>2]|0;F=b+(F<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m|0);if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);F=c[P>>2]|0;E=F+(p<<4)|0;G=c[E>>2]|0;F=F+(p<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m|o|0);if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 81:{g=H+(r>>>12&4080)|0;i=(c[P>>2]|0)+(r>>>20&4080)|0;p=r>>>8&255;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1483;break a}c[ha>>2]=b+16;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];if(c[g>>2]&8|0){G=(c[g+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1487;break a}c[ha>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(c[i>>2]&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;if(g>>>0<=1){ea=1491;break a}k=+ho(ga,b+(g+-2<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;z:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1495;break z}}if((g|0)<0)ea=1495;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1495}while(0);if((ea|0)==1495){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}o=~~k;b=c[ha>>2]|0;i=c[P>>2]|0;g=b-i>>4;if(g>>>0<=1){ea=1497;break a}F=g+-2|0;E=i+(F<<4)|0;G=c[E>>2]|0;F=i+(F<<4)+8|0;g=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o|0);if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);i=c[P>>2]|0;b=c[ha>>2]|0}b=b-i>>4;if(!b){ea=1502;break a}k=+ho(ga,i+(b+-1<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;A:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1506;break A}}if((g|0)<0)ea=1506;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1506}while(0);if((ea|0)==1506){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}m=~~k;g=c[ha>>2]|0;b=c[P>>2]|0;i=g-b>>4;if(!i){ea=1508;break a}F=i+-1|0;E=b+(F<<4)|0;G=c[E>>2]|0;F=b+(F<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m|0);if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);F=c[P>>2]|0;E=F+(p<<4)|0;G=c[E>>2]|0;F=F+(p<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m|o|0);if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 82:{g=(c[P>>2]|0)+(r>>>12&4080)|0;i=H+(r>>>20&4080)|0;p=r>>>8&255;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1522;break a}c[ha>>2]=b+16;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];if(c[g>>2]&8|0){G=(c[g+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1526;break a}c[ha>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(c[i>>2]&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;if(g>>>0<=1){ea=1530;break a}k=+ho(ga,b+(g+-2<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;B:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1534;break B}}if((g|0)<0)ea=1534;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1534}while(0);if((ea|0)==1534){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}o=~~k;b=c[ha>>2]|0;i=c[P>>2]|0;g=b-i>>4;if(g>>>0<=1){ea=1536;break a}F=g+-2|0;E=i+(F<<4)|0;G=c[E>>2]|0;F=i+(F<<4)+8|0;g=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o|0);if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);i=c[P>>2]|0;b=c[ha>>2]|0}b=b-i>>4;if(!b){ea=1541;break a}k=+ho(ga,i+(b+-1<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;C:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1545;break C}}if((g|0)<0)ea=1545;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1545}while(0);if((ea|0)==1545){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}m=~~k;g=c[ha>>2]|0;b=c[P>>2]|0;i=g-b>>4;if(!i){ea=1547;break a}F=i+-1|0;E=b+(F<<4)|0;G=c[E>>2]|0;F=b+(F<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m|0);if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);F=c[P>>2]|0;E=F+(p<<4)|0;G=c[E>>2]|0;F=F+(p<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m|o|0);if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 83:{g=H+(r>>>12&4080)|0;i=H+(r>>>20&4080)|0;p=r>>>8&255;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1561;break a}c[ha>>2]=b+16;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];if(c[g>>2]&8|0){G=(c[g+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1565;break a}c[ha>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(c[i>>2]&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;if(g>>>0<=1){ea=1569;break a}k=+ho(ga,b+(g+-2<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;D:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1573;break D}}if((g|0)<0)ea=1573;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1573}while(0);if((ea|0)==1573){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}o=~~k;b=c[ha>>2]|0;i=c[P>>2]|0;g=b-i>>4;if(g>>>0<=1){ea=1575;break a}F=g+-2|0;E=i+(F<<4)|0;G=c[E>>2]|0;F=i+(F<<4)+8|0;g=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o|0);if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);i=c[P>>2]|0;b=c[ha>>2]|0}b=b-i>>4;if(!b){ea=1580;break a}k=+ho(ga,i+(b+-1<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;E:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1584;break E}}if((g|0)<0)ea=1584;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1584}while(0);if((ea|0)==1584){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}m=~~k;g=c[ha>>2]|0;b=c[P>>2]|0;i=g-b>>4;if(!i){ea=1586;break a}F=i+-1|0;E=b+(F<<4)|0;G=c[E>>2]|0;F=b+(F<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m|0);if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);F=c[P>>2]|0;E=F+(p<<4)|0;G=c[E>>2]|0;F=F+(p<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m|o|0);if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 84:{i=c[P>>2]|0;g=i+(r>>>12&4080)|0;i=i+(r>>>20&4080)|0;p=r>>>8&255;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1600;break a}c[ha>>2]=b+16;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];if(c[g>>2]&8|0){G=(c[g+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1604;break a}c[ha>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(c[i>>2]&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;if(g>>>0<=1){ea=1608;break a}k=+ho(ga,b+(g+-2<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;F:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1612;break F}}if((g|0)<0)ea=1612;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1612}while(0);if((ea|0)==1612){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}o=~~k;b=c[ha>>2]|0;i=c[P>>2]|0;g=b-i>>4;if(g>>>0<=1){ea=1614;break a}F=g+-2|0;E=i+(F<<4)|0;G=c[E>>2]|0;F=i+(F<<4)+8|0;g=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o|0);if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);i=c[P>>2]|0;b=c[ha>>2]|0}b=b-i>>4;if(!b){ea=1619;break a}k=+ho(ga,i+(b+-1<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;G:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1623;break G}}if((g|0)<0)ea=1623;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1623}while(0);if((ea|0)==1623){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}m=~~k;g=c[ha>>2]|0;b=c[P>>2]|0;i=g-b>>4;if(!i){ea=1625;break a}F=i+-1|0;E=b+(F<<4)|0;G=c[E>>2]|0;F=b+(F<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m|0);if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);F=c[P>>2]|0;E=F+(p<<4)|0;G=c[E>>2]|0;F=F+(p<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m^o|0);if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 85:{g=H+(r>>>12&4080)|0;i=(c[P>>2]|0)+(r>>>20&4080)|0;p=r>>>8&255;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1639;break a}c[ha>>2]=b+16;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];if(c[g>>2]&8|0){G=(c[g+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1643;break a}c[ha>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(c[i>>2]&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;if(g>>>0<=1){ea=1647;break a}k=+ho(ga,b+(g+-2<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;H:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1651;break H}}if((g|0)<0)ea=1651;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1651}while(0);if((ea|0)==1651){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}o=~~k;b=c[ha>>2]|0;i=c[P>>2]|0;g=b-i>>4;if(g>>>0<=1){ea=1653;break a}F=g+-2|0;E=i+(F<<4)|0;G=c[E>>2]|0;F=i+(F<<4)+8|0;g=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o|0);if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);i=c[P>>2]|0;b=c[ha>>2]|0}b=b-i>>4;if(!b){ea=1658;break a}k=+ho(ga,i+(b+-1<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;I:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1662;break I}}if((g|0)<0)ea=1662;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1662}while(0);if((ea|0)==1662){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}m=~~k;g=c[ha>>2]|0;b=c[P>>2]|0;i=g-b>>4;if(!i){ea=1664;break a}F=i+-1|0;E=b+(F<<4)|0;G=c[E>>2]|0;F=b+(F<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m|0);if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);F=c[P>>2]|0;E=F+(p<<4)|0;G=c[E>>2]|0;F=F+(p<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m^o|0);if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 86:{g=(c[P>>2]|0)+(r>>>12&4080)|0;i=H+(r>>>20&4080)|0;p=r>>>8&255;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1678;break a}c[ha>>2]=b+16;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];if(c[g>>2]&8|0){G=(c[g+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1682;break a}c[ha>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(c[i>>2]&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;if(g>>>0<=1){ea=1686;break a}k=+ho(ga,b+(g+-2<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;J:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1690;break J}}if((g|0)<0)ea=1690;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1690}while(0);if((ea|0)==1690){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}o=~~k;b=c[ha>>2]|0;i=c[P>>2]|0;g=b-i>>4;if(g>>>0<=1){ea=1692;break a}F=g+-2|0;E=i+(F<<4)|0;G=c[E>>2]|0;F=i+(F<<4)+8|0;g=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o|0);if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);i=c[P>>2]|0;b=c[ha>>2]|0}b=b-i>>4;if(!b){ea=1697;break a}k=+ho(ga,i+(b+-1<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;K:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1701;break K}}if((g|0)<0)ea=1701;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1701}while(0);if((ea|0)==1701){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}m=~~k;g=c[ha>>2]|0;b=c[P>>2]|0;i=g-b>>4;if(!i){ea=1703;break a}F=i+-1|0;E=b+(F<<4)|0;G=c[E>>2]|0;F=b+(F<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m|0);if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);F=c[P>>2]|0;E=F+(p<<4)|0;G=c[E>>2]|0;F=F+(p<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m^o|0);if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 87:{g=H+(r>>>12&4080)|0;i=H+(r>>>20&4080)|0;p=r>>>8&255;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1717;break a}c[ha>>2]=b+16;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];if(c[g>>2]&8|0){G=(c[g+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1721;break a}c[ha>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(c[i>>2]&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;if(g>>>0<=1){ea=1725;break a}k=+ho(ga,b+(g+-2<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;L:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1729;break L}}if((g|0)<0)ea=1729;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1729}while(0);if((ea|0)==1729){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}o=~~k;b=c[ha>>2]|0;i=c[P>>2]|0;g=b-i>>4;if(g>>>0<=1){ea=1731;break a}F=g+-2|0;E=i+(F<<4)|0;G=c[E>>2]|0;F=i+(F<<4)+8|0;g=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o|0);if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);i=c[P>>2]|0;b=c[ha>>2]|0}b=b-i>>4;if(!b){ea=1736;break a}k=+ho(ga,i+(b+-1<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;M:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1740;break M}}if((g|0)<0)ea=1740;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1740}while(0);if((ea|0)==1740){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}m=~~k;g=c[ha>>2]|0;b=c[P>>2]|0;i=g-b>>4;if(!i){ea=1742;break a}F=i+-1|0;E=b+(F<<4)|0;G=c[E>>2]|0;F=b+(F<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m|0);if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);F=c[P>>2]|0;E=F+(p<<4)|0;G=c[E>>2]|0;F=F+(p<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m^o|0);if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 88:{i=c[P>>2]|0;g=i+(r>>>12&4080)|0;i=i+(r>>>20&4080)|0;p=r>>>8&255;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1756;break a}c[ha>>2]=b+16;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];if(c[g>>2]&8|0){G=(c[g+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1760;break a}c[ha>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(c[i>>2]&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;if(g>>>0<=1){ea=1764;break a}k=+ho(ga,b+(g+-2<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;N:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1768;break N}}if((g|0)<0)ea=1768;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1768}while(0);if((ea|0)==1768){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}o=~~k;b=c[ha>>2]|0;i=c[P>>2]|0;g=b-i>>4;if(g>>>0<=1){ea=1770;break a}F=g+-2|0;E=i+(F<<4)|0;G=c[E>>2]|0;F=i+(F<<4)+8|0;g=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o|0);if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);i=c[P>>2]|0;b=c[ha>>2]|0}b=b-i>>4;if(!b){ea=1775;break a}k=+ho(ga,i+(b+-1<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;O:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1779;break O}}if((g|0)<0)ea=1779;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1779}while(0);if((ea|0)==1779){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}m=~~k;g=c[ha>>2]|0;b=c[P>>2]|0;i=g-b>>4;if(!i){ea=1781;break a}F=i+-1|0;E=b+(F<<4)|0;G=c[E>>2]|0;F=b+(F<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m|0);if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);F=c[P>>2]|0;E=F+(p<<4)|0;G=c[E>>2]|0;F=F+(p<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o<<(m&31)|0);if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 89:{g=H+(r>>>12&4080)|0;i=(c[P>>2]|0)+(r>>>20&4080)|0;p=r>>>8&255;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1795;break a}c[ha>>2]=b+16;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];if(c[g>>2]&8|0){G=(c[g+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1799;break a}c[ha>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(c[i>>2]&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;if(g>>>0<=1){ea=1803;break a}k=+ho(ga,b+(g+-2<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;P:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1807;break P}}if((g|0)<0)ea=1807;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1807}while(0);if((ea|0)==1807){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}o=~~k;b=c[ha>>2]|0;i=c[P>>2]|0;g=b-i>>4;if(g>>>0<=1){ea=1809;break a}F=g+-2|0;E=i+(F<<4)|0;G=c[E>>2]|0;F=i+(F<<4)+8|0;g=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o|0);if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);i=c[P>>2]|0;b=c[ha>>2]|0}b=b-i>>4;if(!b){ea=1814;break a}k=+ho(ga,i+(b+-1<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;Q:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1818;break Q}}if((g|0)<0)ea=1818;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1818}while(0);if((ea|0)==1818){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}m=~~k;g=c[ha>>2]|0;b=c[P>>2]|0;i=g-b>>4;if(!i){ea=1820;break a}F=i+-1|0;E=b+(F<<4)|0;G=c[E>>2]|0;F=b+(F<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m|0);if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);F=c[P>>2]|0;E=F+(p<<4)|0;G=c[E>>2]|0;F=F+(p<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o<<(m&31)|0);if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 90:{g=(c[P>>2]|0)+(r>>>12&4080)|0;i=H+(r>>>20&4080)|0;p=r>>>8&255;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1834;break a}c[ha>>2]=b+16;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];if(c[g>>2]&8|0){G=(c[g+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1838;break a}c[ha>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(c[i>>2]&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;if(g>>>0<=1){ea=1842;break a}k=+ho(ga,b+(g+-2<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;R:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1846;break R}}if((g|0)<0)ea=1846;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1846}while(0);if((ea|0)==1846){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}o=~~k;b=c[ha>>2]|0;i=c[P>>2]|0;g=b-i>>4;if(g>>>0<=1){ea=1848;break a}F=g+-2|0;E=i+(F<<4)|0;G=c[E>>2]|0;F=i+(F<<4)+8|0;g=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o|0);if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);i=c[P>>2]|0;b=c[ha>>2]|0}b=b-i>>4;if(!b){ea=1853;break a}k=+ho(ga,i+(b+-1<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;S:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1857;break S}}if((g|0)<0)ea=1857;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1857}while(0);if((ea|0)==1857){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}m=~~k;g=c[ha>>2]|0;b=c[P>>2]|0;i=g-b>>4;if(!i){ea=1859;break a}F=i+-1|0;E=b+(F<<4)|0;G=c[E>>2]|0;F=b+(F<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m|0);if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);F=c[P>>2]|0;E=F+(p<<4)|0;G=c[E>>2]|0;F=F+(p<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o<<(m&31)|0);if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 91:{g=H+(r>>>12&4080)|0;i=H+(r>>>20&4080)|0;p=r>>>8&255;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1873;break a}c[ha>>2]=b+16;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];if(c[g>>2]&8|0){G=(c[g+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1877;break a}c[ha>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(c[i>>2]&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;if(g>>>0<=1){ea=1881;break a}k=+ho(ga,b+(g+-2<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;T:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1885;break T}}if((g|0)<0)ea=1885;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1885}while(0);if((ea|0)==1885){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}o=~~k;b=c[ha>>2]|0;i=c[P>>2]|0;g=b-i>>4;if(g>>>0<=1){ea=1887;break a}F=g+-2|0;E=i+(F<<4)|0;G=c[E>>2]|0;F=i+(F<<4)+8|0;g=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o|0);if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);i=c[P>>2]|0;b=c[ha>>2]|0}b=b-i>>4;if(!b){ea=1892;break a}k=+ho(ga,i+(b+-1<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;U:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1896;break U}}if((g|0)<0)ea=1896;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1896}while(0);if((ea|0)==1896){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}m=~~k;g=c[ha>>2]|0;b=c[P>>2]|0;i=g-b>>4;if(!i){ea=1898;break a}F=i+-1|0;E=b+(F<<4)|0;G=c[E>>2]|0;F=b+(F<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m|0);if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);F=c[P>>2]|0;E=F+(p<<4)|0;G=c[E>>2]|0;F=F+(p<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o<<(m&31)|0);if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 92:{i=c[P>>2]|0;g=i+(r>>>12&4080)|0;i=i+(r>>>20&4080)|0;p=r>>>8&255;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1912;break a}c[ha>>2]=b+16;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];if(c[g>>2]&8|0){G=(c[g+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1916;break a}c[ha>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(c[i>>2]&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;if(g>>>0<=1){ea=1920;break a}k=+ho(ga,b+(g+-2<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;V:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1924;break V}}if((g|0)<0)ea=1924;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1924}while(0);if((ea|0)==1924){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}o=~~k;b=c[ha>>2]|0;i=c[P>>2]|0;g=b-i>>4;if(g>>>0<=1){ea=1926;break a}F=g+-2|0;E=i+(F<<4)|0;G=c[E>>2]|0;F=i+(F<<4)+8|0;g=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o|0);if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);i=c[P>>2]|0;b=c[ha>>2]|0}b=b-i>>4;if(!b){ea=1931;break a}k=+ho(ga,i+(b+-1<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;W:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1935;break W}}if((g|0)<0)ea=1935;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1935}while(0);if((ea|0)==1935){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}m=~~k;g=c[ha>>2]|0;b=c[P>>2]|0;i=g-b>>4;if(!i){ea=1937;break a}F=i+-1|0;E=b+(F<<4)|0;G=c[E>>2]|0;F=b+(F<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m|0);if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);F=c[P>>2]|0;E=F+(p<<4)|0;G=c[E>>2]|0;F=F+(p<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o>>>(m&31)>>>0);if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 93:{g=H+(r>>>12&4080)|0;i=(c[P>>2]|0)+(r>>>20&4080)|0;p=r>>>8&255;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1951;break a}c[ha>>2]=b+16;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];if(c[g>>2]&8|0){G=(c[g+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1955;break a}c[ha>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(c[i>>2]&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;if(g>>>0<=1){ea=1959;break a}k=+ho(ga,b+(g+-2<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;X:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1963;break X}}if((g|0)<0)ea=1963;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1963}while(0);if((ea|0)==1963){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}o=~~k;b=c[ha>>2]|0;i=c[P>>2]|0;g=b-i>>4;if(g>>>0<=1){ea=1965;break a}F=g+-2|0;E=i+(F<<4)|0;G=c[E>>2]|0;F=i+(F<<4)+8|0;g=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o|0);if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);i=c[P>>2]|0;b=c[ha>>2]|0}b=b-i>>4;if(!b){ea=1970;break a}k=+ho(ga,i+(b+-1<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;Y:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=1974;break Y}}if((g|0)<0)ea=1974;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=1974}while(0);if((ea|0)==1974){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}m=~~k;g=c[ha>>2]|0;b=c[P>>2]|0;i=g-b>>4;if(!i){ea=1976;break a}F=i+-1|0;E=b+(F<<4)|0;G=c[E>>2]|0;F=b+(F<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m|0);if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);F=c[P>>2]|0;E=F+(p<<4)|0;G=c[E>>2]|0;F=F+(p<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o>>>(m&31)>>>0);if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 94:{g=(c[P>>2]|0)+(r>>>12&4080)|0;i=H+(r>>>20&4080)|0;p=r>>>8&255;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1990;break a}c[ha>>2]=b+16;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];if(c[g>>2]&8|0){G=(c[g+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=1994;break a}c[ha>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(c[i>>2]&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;if(g>>>0<=1){ea=1998;break a}k=+ho(ga,b+(g+-2<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;Z:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=2002;break Z}}if((g|0)<0)ea=2002;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=2002}while(0);if((ea|0)==2002){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}o=~~k;b=c[ha>>2]|0;i=c[P>>2]|0;g=b-i>>4;if(g>>>0<=1){ea=2004;break a}F=g+-2|0;E=i+(F<<4)|0;G=c[E>>2]|0;F=i+(F<<4)+8|0;g=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o|0);if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);i=c[P>>2]|0;b=c[ha>>2]|0}b=b-i>>4;if(!b){ea=2009;break a}k=+ho(ga,i+(b+-1<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;_:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=2013;break _}}if((g|0)<0)ea=2013;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=2013}while(0);if((ea|0)==2013){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}m=~~k;g=c[ha>>2]|0;b=c[P>>2]|0;i=g-b>>4;if(!i){ea=2015;break a}F=i+-1|0;E=b+(F<<4)|0;G=c[E>>2]|0;F=b+(F<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m|0);if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);F=c[P>>2]|0;E=F+(p<<4)|0;G=c[E>>2]|0;F=F+(p<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o>>>(m&31)>>>0);if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 95:{g=H+(r>>>12&4080)|0;i=H+(r>>>20&4080)|0;p=r>>>8&255;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=2029;break a}c[ha>>2]=b+16;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];if(c[g>>2]&8|0){G=(c[g+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=2033;break a}c[ha>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(c[i>>2]&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;if(g>>>0<=1){ea=2037;break a}k=+ho(ga,b+(g+-2<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;$:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=2041;break $}}if((g|0)<0)ea=2041;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=2041}while(0);if((ea|0)==2041){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}o=~~k;b=c[ha>>2]|0;i=c[P>>2]|0;g=b-i>>4;if(g>>>0<=1){ea=2043;break a}F=g+-2|0;E=i+(F<<4)|0;G=c[E>>2]|0;F=i+(F<<4)+8|0;g=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o|0);if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);i=c[P>>2]|0;b=c[ha>>2]|0}b=b-i>>4;if(!b){ea=2048;break a}k=+ho(ga,i+(b+-1<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;aa:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=2052;break aa}}if((g|0)<0)ea=2052;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=2052}while(0);if((ea|0)==2052){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}m=~~k;g=c[ha>>2]|0;b=c[P>>2]|0;i=g-b>>4;if(!i){ea=2054;break a}F=i+-1|0;E=b+(F<<4)|0;G=c[E>>2]|0;F=b+(F<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m|0);if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);F=c[P>>2]|0;E=F+(p<<4)|0;G=c[E>>2]|0;F=F+(p<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o>>>(m&31)>>>0);if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 96:{i=c[P>>2]|0;g=i+(r>>>12&4080)|0;i=i+(r>>>20&4080)|0;p=r>>>8&255;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=2068;break a}c[ha>>2]=b+16;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];if(c[g>>2]&8|0){G=(c[g+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=2072;break a}c[ha>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(c[i>>2]&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;if(g>>>0<=1){ea=2076;break a}k=+ho(ga,b+(g+-2<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;ba:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=2080;break ba}}if((g|0)<0)ea=2080;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=2080}while(0);if((ea|0)==2080){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}o=~~k;b=c[ha>>2]|0;i=c[P>>2]|0;g=b-i>>4;if(g>>>0<=1){ea=2082;break a}F=g+-2|0;E=i+(F<<4)|0;G=c[E>>2]|0;F=i+(F<<4)+8|0;g=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o|0);if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);i=c[P>>2]|0;b=c[ha>>2]|0}b=b-i>>4;if(!b){ea=2087;break a}k=+ho(ga,i+(b+-1<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;ca:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=2091;break ca}}if((g|0)<0)ea=2091;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=2091}while(0);if((ea|0)==2091){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}m=~~k;g=c[ha>>2]|0;b=c[P>>2]|0;i=g-b>>4;if(!i){ea=2093;break a}F=i+-1|0;E=b+(F<<4)|0;G=c[E>>2]|0;F=b+(F<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m|0);if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);F=c[P>>2]|0;E=F+(p<<4)|0;G=c[E>>2]|0;F=F+(p<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o>>(m&31)|0);if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 97:{g=H+(r>>>12&4080)|0;i=(c[P>>2]|0)+(r>>>20&4080)|0;p=r>>>8&255;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=2107;break a}c[ha>>2]=b+16;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];if(c[g>>2]&8|0){G=(c[g+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=2111;break a}c[ha>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(c[i>>2]&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;if(g>>>0<=1){ea=2115;break a}k=+ho(ga,b+(g+-2<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;da:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=2119;break da}}if((g|0)<0)ea=2119;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=2119}while(0);if((ea|0)==2119){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}o=~~k;b=c[ha>>2]|0;i=c[P>>2]|0;g=b-i>>4;if(g>>>0<=1){ea=2121;break a}F=g+-2|0;E=i+(F<<4)|0;G=c[E>>2]|0;F=i+(F<<4)+8|0;g=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o|0);if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);i=c[P>>2]|0;b=c[ha>>2]|0}b=b-i>>4;if(!b){ea=2126;break a}k=+ho(ga,i+(b+-1<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;ea:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=2130;break ea}}if((g|0)<0)ea=2130;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=2130}while(0);if((ea|0)==2130){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}m=~~k;g=c[ha>>2]|0;b=c[P>>2]|0;i=g-b>>4;if(!i){ea=2132;break a}F=i+-1|0;E=b+(F<<4)|0;G=c[E>>2]|0;F=b+(F<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m|0);if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);F=c[P>>2]|0;E=F+(p<<4)|0;G=c[E>>2]|0;F=F+(p<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o>>(m&31)|0);if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 98:{g=(c[P>>2]|0)+(r>>>12&4080)|0;i=H+(r>>>20&4080)|0;p=r>>>8&255;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=2146;break a}c[ha>>2]=b+16;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];if(c[g>>2]&8|0){G=(c[g+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=2150;break a}c[ha>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(c[i>>2]&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;if(g>>>0<=1){ea=2154;break a}k=+ho(ga,b+(g+-2<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;fa:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=2158;break fa}}if((g|0)<0)ea=2158;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=2158}while(0);if((ea|0)==2158){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}o=~~k;b=c[ha>>2]|0;i=c[P>>2]|0;g=b-i>>4;if(g>>>0<=1){ea=2160;break a}F=g+-2|0;E=i+(F<<4)|0;G=c[E>>2]|0;F=i+(F<<4)+8|0;g=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o|0);if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);i=c[P>>2]|0;b=c[ha>>2]|0}b=b-i>>4;if(!b){ea=2165;break a}k=+ho(ga,i+(b+-1<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;ga:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=2169;break ga}}if((g|0)<0)ea=2169;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=2169}while(0);if((ea|0)==2169){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}m=~~k;g=c[ha>>2]|0;b=c[P>>2]|0;i=g-b>>4;if(!i){ea=2171;break a}F=i+-1|0;E=b+(F<<4)|0;G=c[E>>2]|0;F=b+(F<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m|0);if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);F=c[P>>2]|0;E=F+(p<<4)|0;G=c[E>>2]|0;F=F+(p<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o>>(m&31)|0);if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 99:{g=H+(r>>>12&4080)|0;i=H+(r>>>20&4080)|0;p=r>>>8&255;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=2185;break a}c[ha>>2]=b+16;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];if(c[g>>2]&8|0){G=(c[g+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=2189;break a}c[ha>>2]=b+16;c[b>>2]=c[i>>2];c[b+4>>2]=c[i+4>>2];c[b+8>>2]=c[i+8>>2];c[b+12>>2]=c[i+12>>2];if(c[i>>2]&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}b=c[P>>2]|0;g=(c[ha>>2]|0)-b>>4;if(g>>>0<=1){ea=2193;break a}k=+ho(ga,b+(g+-2<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;ha:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=2197;break ha}}if((g|0)<0)ea=2197;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=2197}while(0);if((ea|0)==2197){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}o=~~k;b=c[ha>>2]|0;i=c[P>>2]|0;g=b-i>>4;if(g>>>0<=1){ea=2199;break a}F=g+-2|0;E=i+(F<<4)|0;G=c[E>>2]|0;F=i+(F<<4)+8|0;g=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o|0);if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);i=c[P>>2]|0;b=c[ha>>2]|0}b=b-i>>4;if(!b){ea=2204;break a}k=+ho(ga,i+(b+-1<<4)|0);h[j>>3]=k;b=c[j>>2]|0;g=c[j+4>>2]|0;i=g&2146435072;ia:do if((i|0)<2146435072){switch(i|0){case 0:break;default:{ea=2208;break ia}}if((g|0)<0)ea=2208;else k=0.0}else switch(i|0){case 2146435072:{k=0.0;break}default:ea=2208}while(0);if((ea|0)==2208){ea=0;k=+A(+(+B(+k)));k=+TO((g|0)>-1|(g|0)==-1&b>>>0>4294967295?k:-k,4294967296.0);k=k<0.0?k+4294967296.0:k;k=k>=2147483648.0?k+-4294967296.0:k}m=~~k;g=c[ha>>2]|0;b=c[P>>2]|0;i=g-b>>4;if(!i){ea=2210;break a}F=i+-1|0;E=b+(F<<4)|0;G=c[E>>2]|0;F=b+(F<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(m|0);if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);F=c[P>>2]|0;E=F+(p<<4)|0;G=c[E>>2]|0;F=F+(p<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=+(o>>(m&31)|0);if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 100:{E=c[P>>2]|0;E=pp(ga,E+(r>>>12&4080)|0,E+(r>>>20&4080)|0)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 101:{E=pp(ga,H+(r>>>12&4080)|0,(c[P>>2]|0)+(r>>>20&4080)|0)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 102:{E=pp(ga,(c[P>>2]|0)+(r>>>12&4080)|0,H+(r>>>20&4080)|0)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 103:{E=pp(ga,H+(r>>>12&4080)|0,H+(r>>>20&4080)|0)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 104:{E=c[P>>2]|0;E=qp(ga,E+(r>>>12&4080)|0,E+(r>>>20&4080)|0)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 105:{E=qp(ga,H+(r>>>12&4080)|0,(c[P>>2]|0)+(r>>>20&4080)|0)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 106:{E=qp(ga,(c[P>>2]|0)+(r>>>12&4080)|0,H+(r>>>20&4080)|0)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 107:{E=qp(ga,H+(r>>>12&4080)|0,H+(r>>>20&4080)|0)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 120:{b=c[P>>2]|0;o=r>>>4&4080;g=r>>>12&1048560;i=b+g|0;if(!(c[i>>2]|0)){G=i+8|0;k=+h[G>>3]+1.0;c[i>>2]=0;h[G>>3]=k}else{m=g>>>4;if(m>>>0>=(c[ha>>2]|0)-b>>4>>>0){ea=2250;break a}k=+ho(ga,b+(m<<4)|0);F=c[P>>2]|0;E=F+(m<<4)|0;G=c[E>>2]|0;F=F+(m<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);k=k+1.0;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=2255;break a}g=b+16|0;c[ha>>2]=g;c[b>>2]=0;h[b+8>>3]=k;b=c[P>>2]|0;g=g-b>>4;if(!g){ea=2257;break a}i=b+(g+-1<<4)|0;if(m>>>0>=g>>>0){ea=2259;break a}F=b+(m<<4)|0;G=c[F>>2]|0;b=c[b+(m<<4)+8>>2]|0;c[F>>2]=c[i>>2];c[F+4>>2]=c[i+4>>2];c[F+8>>2]=c[i+8>>2];c[F+12>>2]=c[i+12>>2];c[i>>2]=2;c[ha>>2]=(c[ha>>2]|0)+-16;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);b=c[P>>2]|0}E=b+o|0;G=c[E>>2]|0;F=E+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 121:{b=c[P>>2]|0;o=r>>>4&4080;g=r>>>12&1048560;i=b+g|0;if(!(c[i>>2]|0)){G=i+8|0;k=+h[G>>3]+-1.0;c[i>>2]=0;h[G>>3]=k}else{m=g>>>4;if(m>>>0>=(c[ha>>2]|0)-b>>4>>>0){ea=2270;break a}k=+ho(ga,b+(m<<4)|0);F=c[P>>2]|0;E=F+(m<<4)|0;G=c[E>>2]|0;F=F+(m<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);k=k+-1.0;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=2275;break a}g=b+16|0;c[ha>>2]=g;c[b>>2]=0;h[b+8>>3]=k;b=c[P>>2]|0;g=g-b>>4;if(!g){ea=2277;break a}i=b+(g+-1<<4)|0;if(m>>>0>=g>>>0){ea=2279;break a}F=b+(m<<4)|0;G=c[F>>2]|0;b=c[b+(m<<4)+8>>2]|0;c[F>>2]=c[i>>2];c[F+4>>2]=c[i+4>>2];c[F+8>>2]=c[i+8>>2];c[F+12>>2]=c[i+12>>2];c[i>>2]=2;c[ha>>2]=(c[ha>>2]|0)+-16;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);b=c[P>>2]|0}E=b+o|0;G=c[E>>2]|0;F=E+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 122:{b=c[P>>2]|0;o=r>>>4&4080;g=r>>>12&1048560;i=b+g|0;if(!(c[i>>2]|0)){G=i+8|0;k=+h[G>>3];c[i>>2]=0;h[G>>3]=k+1.0}else{m=g>>>4;if(m>>>0>=(c[ha>>2]|0)-b>>4>>>0){ea=2290;break a}k=+ho(ga,b+(m<<4)|0);F=c[P>>2]|0;E=F+(m<<4)|0;G=c[E>>2]|0;F=F+(m<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=2295;break a}g=b+16|0;c[ha>>2]=g;c[b>>2]=0;h[b+8>>3]=k+1.0;b=c[P>>2]|0;g=g-b>>4;if(!g){ea=2297;break a}i=b+(g+-1<<4)|0;if(m>>>0>=g>>>0){ea=2299;break a}F=b+(m<<4)|0;G=c[F>>2]|0;b=c[b+(m<<4)+8>>2]|0;c[F>>2]=c[i>>2];c[F+4>>2]=c[i+4>>2];c[F+8>>2]=c[i+8>>2];c[F+12>>2]=c[i+12>>2];c[i>>2]=2;c[ha>>2]=(c[ha>>2]|0)+-16;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);b=c[P>>2]|0}E=b+o|0;G=c[E>>2]|0;F=E+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 123:{b=c[P>>2]|0;o=r>>>4&4080;g=r>>>12&1048560;i=b+g|0;if(!(c[i>>2]|0)){G=i+8|0;k=+h[G>>3];c[i>>2]=0;h[G>>3]=k+-1.0}else{m=g>>>4;if(m>>>0>=(c[ha>>2]|0)-b>>4>>>0){ea=2310;break a}k=+ho(ga,b+(m<<4)|0);F=c[P>>2]|0;E=F+(m<<4)|0;G=c[E>>2]|0;F=F+(m<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=2315;break a}g=b+16|0;c[ha>>2]=g;c[b>>2]=0;h[b+8>>3]=k+-1.0;b=c[P>>2]|0;g=g-b>>4;if(!g){ea=2317;break a}i=b+(g+-1<<4)|0;if(m>>>0>=g>>>0){ea=2319;break a}F=b+(m<<4)|0;G=c[F>>2]|0;b=c[b+(m<<4)+8>>2]|0;c[F>>2]=c[i>>2];c[F+4>>2]=c[i+4>>2];c[F+8>>2]=c[i+8>>2];c[F+12>>2]=c[i+12>>2];c[i>>2]=2;c[ha>>2]=(c[ha>>2]|0)+-16;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);b=c[P>>2]|0}E=b+o|0;G=c[E>>2]|0;F=E+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 124:{p=r>>>8&255;q=c[O>>2]|0;o=(c[c[q+16>>2]>>2]|0)>>>16&1;i=c[H+(r>>>12&1048560)+8>>2]|0;m=q+28|0;lp(ga,c[m>>2]|0,q,i,1)|0;b=c[P>>2]|0;G=(c[ha>>2]|0)-b>>4;g=G+-2|0;if(G>>>0<=1){ea=2328;break a}k=+ho(ga,b+(g<<4)|0);F=c[P>>2]|0;E=F+(g<<4)|0;G=c[E>>2]|0;F=F+(g<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);k=k+1.0;b=c[ha>>2]|0;g=b+-16|0;c[ha>>2]=g;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[g>>2]=2;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}if(b>>>0>=(c[Q>>2]|0)>>>0){ea=2339;break a}c[ha>>2]=b+16;c[b>>2]=0;h[b+8>>3]=k;Vo(ga,c[m>>2]|0,q,i,b,o);F=(c[ha>>2]|0)+-16|0;b=c[P>>2]|0;E=b+(p<<4)|0;G=c[E>>2]|0;b=c[b+(p<<4)+8>>2]|0;c[E>>2]=c[F>>2];c[E+4>>2]=c[F+4>>2];c[E+8>>2]=c[F+8>>2];c[E+12>>2]=c[F+12>>2];c[F>>2]=2;c[ha>>2]=F;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 125:{p=r>>>8&255;q=c[O>>2]|0;o=(c[c[q+16>>2]>>2]|0)>>>16&1;i=c[H+(r>>>12&1048560)+8>>2]|0;m=q+28|0;lp(ga,c[m>>2]|0,q,i,1)|0;b=c[P>>2]|0;G=(c[ha>>2]|0)-b>>4;g=G+-2|0;if(G>>>0<=1){ea=2344;break a}k=+ho(ga,b+(g<<4)|0);F=c[P>>2]|0;E=F+(g<<4)|0;G=c[E>>2]|0;F=F+(g<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);k=k+-1.0;b=c[ha>>2]|0;g=b+-16|0;c[ha>>2]=g;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[g>>2]=2;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}if(b>>>0>=(c[Q>>2]|0)>>>0){ea=2355;break a}c[ha>>2]=b+16;c[b>>2]=0;h[b+8>>3]=k;Vo(ga,c[m>>2]|0,q,i,b,o);F=(c[ha>>2]|0)+-16|0;b=c[P>>2]|0;E=b+(p<<4)|0;G=c[E>>2]|0;b=c[b+(p<<4)+8>>2]|0;c[E>>2]=c[F>>2];c[E+4>>2]=c[F+4>>2];c[E+8>>2]=c[F+8>>2];c[E+12>>2]=c[F+12>>2];c[F>>2]=2;c[ha>>2]=F;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 126:{q=r>>>8&255;p=c[O>>2]|0;o=(c[c[p+16>>2]>>2]|0)>>>16&1;i=c[H+(r>>>12&1048560)+8>>2]|0;m=p+28|0;lp(ga,c[m>>2]|0,p,i,1)|0;b=c[P>>2]|0;G=(c[ha>>2]|0)-b>>4;g=G+-2|0;if(G>>>0<=1){ea=2360;break a}k=+ho(ga,b+(g<<4)|0);F=c[P>>2]|0;E=F+(g<<4)|0;G=c[E>>2]|0;F=F+(g<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=2365;break a}c[ha>>2]=b+16;c[b>>2]=0;h[b+8>>3]=k+1.0;Vo(ga,c[m>>2]|0,p,i,b,o);b=c[ha>>2]|0;g=b+-16|0;c[ha>>2]=g;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[g>>2]=2;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;b=c[P>>2]|0;E=b+(q<<4)|0;G=c[E>>2]|0;b=c[b+(q<<4)+8>>2]|0;c[E>>2]=c[F>>2];c[E+4>>2]=c[F+4>>2];c[E+8>>2]=c[F+8>>2];c[E+12>>2]=c[F+12>>2];c[F>>2]=2;c[ha>>2]=F;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 127:{q=r>>>8&255;p=c[O>>2]|0;o=(c[c[p+16>>2]>>2]|0)>>>16&1;i=c[H+(r>>>12&1048560)+8>>2]|0;m=p+28|0;lp(ga,c[m>>2]|0,p,i,1)|0;b=c[P>>2]|0;G=(c[ha>>2]|0)-b>>4;g=G+-2|0;if(G>>>0<=1){ea=2376;break a}k=+ho(ga,b+(g<<4)|0);F=c[P>>2]|0;E=F+(g<<4)|0;G=c[E>>2]|0;F=F+(g<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=k;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=2381;break a}c[ha>>2]=b+16;c[b>>2]=0;h[b+8>>3]=k+-1.0;Vo(ga,c[m>>2]|0,p,i,b,o);b=c[ha>>2]|0;g=b+-16|0;c[ha>>2]=g;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[g>>2]=2;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;b=c[P>>2]|0;E=b+(q<<4)|0;G=c[E>>2]|0;b=c[b+(q<<4)+8>>2]|0;c[E>>2]=c[F>>2];c[E+4>>2]=c[F+4>>2];c[E+8>>2]=c[F+8>>2];c[E+12>>2]=c[F+12>>2];c[F>>2]=2;c[ha>>2]=F;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case -113:case -114:case -115:case -116:case -117:case -118:case -119:case -120:case -121:case -122:case -123:case -124:case -125:case -126:case -127:case -128:{i=(r&1|0)!=0;if(i)b=H;else b=c[P>>2]|0;o=r>>>12&4080;m=(r&2|0)!=0;if(m)g=H;else g=c[P>>2]|0;p=r>>>20&4080;ro(ga,b+o|0,g+p|0)|0;b=c[P>>2]|0;G=(c[ha>>2]|0)-b>>4;g=G+-1|0;if(!G){ea=2396;break a}n=+ho(ga,b+(g<<4)|0);F=c[P>>2]|0;E=F+(g<<4)|0;G=c[E>>2]|0;F=F+(g<<4)+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=n;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);b=c[ha>>2]|0;g=b+-16|0;c[ha>>2]=g;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[g>>2]=2;if((G&8|0)!=0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,b);g=c[ha>>2]|0}k=((r&4|0)==0?1.0:-1.0)+n;if(g>>>0>=(c[Q>>2]|0)>>>0){ea=2404;break a}c[ha>>2]=g+16;c[g>>2]=0;h[g+8>>3]=k;if(i)i=H;else i=c[P>>2]|0;if(m)b=H;else b=c[P>>2]|0;No(ga,i+o|0,b+p|0,0,c[g+4>>2]|0,k,(c[c[(c[O>>2]|0)+16>>2]>>2]|0)>>>16&1)|0;b=c[ha>>2]|0;F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if(G&8|0?(F=b+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,b);E=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[E>>2]|0;F=E+8|0;b=c[F>>2]|0;c[E>>2]=0;h[F>>3]=r&8|0?n:k;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 108:{F=c[P>>2]|0;ro(ga,F+(r>>>12&4080)|0,F+(r>>>20&4080)|0)|0;F=(c[ha>>2]|0)+-16|0;E=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[E>>2]|0;b=c[E+8>>2]|0;c[E>>2]=c[F>>2];c[E+4>>2]=c[F+4>>2];c[E+8>>2]=c[F+8>>2];c[E+12>>2]=c[F+12>>2];c[F>>2]=2;c[ha>>2]=F;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 109:{ro(ga,H+(r>>>12&4080)|0,(c[P>>2]|0)+(r>>>20&4080)|0)|0;F=(c[ha>>2]|0)+-16|0;E=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[E>>2]|0;b=c[E+8>>2]|0;c[E>>2]=c[F>>2];c[E+4>>2]=c[F+4>>2];c[E+8>>2]=c[F+8>>2];c[E+12>>2]=c[F+12>>2];c[F>>2]=2;c[ha>>2]=F;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 110:{ro(ga,(c[P>>2]|0)+(r>>>12&4080)|0,H+(r>>>20&4080)|0)|0;F=(c[ha>>2]|0)+-16|0;E=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[E>>2]|0;b=c[E+8>>2]|0;c[E>>2]=c[F>>2];c[E+4>>2]=c[F+4>>2];c[E+8>>2]=c[F+8>>2];c[E+12>>2]=c[F+12>>2];c[F>>2]=2;c[ha>>2]=F;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 111:{ro(ga,H+(r>>>12&4080)|0,H+(r>>>20&4080)|0)|0;F=(c[ha>>2]|0)+-16|0;E=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[E>>2]|0;b=c[E+8>>2]|0;c[E>>2]=c[F>>2];c[E+4>>2]=c[F+4>>2];c[E+8>>2]=c[F+8>>2];c[E+12>>2]=c[F+12>>2];c[F>>2]=2;c[ha>>2]=F;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case -48:{b=c[P>>2]|0;g=r>>>12&4080;i=r>>>20&4080;ro(ga,b+g|0,b+i|0)|0;b=c[ha>>2]|0;m=b+-16|0;switch(c[m>>2]|0){case 9:{if(!(c[c[b+-8>>2]>>2]&512))ea=2429;break}case 6:break;default:ea=2429}if((ea|0)==2429){ea=0;b=c[P>>2]|0;rp(ga,m,b+g|0,b+i|0);b=c[ha>>2]|0}F=b+-16|0;E=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[E>>2]|0;b=c[E+8>>2]|0;c[E>>2]=c[F>>2];c[E+4>>2]=c[F+4>>2];c[E+8>>2]=c[F+8>>2];c[E+12>>2]=c[F+12>>2];c[F>>2]=2;c[ha>>2]=F;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case -47:{g=H+(r>>>12&4080)|0;i=r>>>20&4080;ro(ga,g,(c[P>>2]|0)+i|0)|0;b=c[ha>>2]|0;m=b+-16|0;switch(c[m>>2]|0){case 9:{if(!(c[c[b+-8>>2]>>2]&512))ea=2435;break}case 6:break;default:ea=2435}if((ea|0)==2435){ea=0;rp(ga,m,g,(c[P>>2]|0)+i|0);b=c[ha>>2]|0}F=b+-16|0;E=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[E>>2]|0;b=c[E+8>>2]|0;c[E>>2]=c[F>>2];c[E+4>>2]=c[F+4>>2];c[E+8>>2]=c[F+8>>2];c[E+12>>2]=c[F+12>>2];c[F>>2]=2;c[ha>>2]=F;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case -46:{g=r>>>12&4080;i=H+(r>>>20&4080)|0;ro(ga,(c[P>>2]|0)+g|0,i)|0;b=c[ha>>2]|0;m=b+-16|0;switch(c[m>>2]|0){case 9:{if(!(c[c[b+-8>>2]>>2]&512))ea=2441;break}case 6:break;default:ea=2441}if((ea|0)==2441){ea=0;rp(ga,m,(c[P>>2]|0)+g|0,i);b=c[ha>>2]|0}F=b+-16|0;E=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[E>>2]|0;b=c[E+8>>2]|0;c[E>>2]=c[F>>2];c[E+4>>2]=c[F+4>>2];c[E+8>>2]=c[F+8>>2];c[E+12>>2]=c[F+12>>2];c[F>>2]=2;c[ha>>2]=F;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case -45:{g=H+(r>>>12&4080)|0;i=H+(r>>>20&4080)|0;ro(ga,g,i)|0;b=c[ha>>2]|0;m=b+-16|0;switch(c[m>>2]|0){case 9:{if(!(c[c[b+-8>>2]>>2]&512))ea=2447;break}case 6:break;default:ea=2447}if((ea|0)==2447){ea=0;rp(ga,m,g,i);b=c[ha>>2]|0}F=b+-16|0;E=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[E>>2]|0;b=c[E+8>>2]|0;c[E>>2]=c[F>>2];c[E+4>>2]=c[F+4>>2];c[E+8>>2]=c[F+8>>2];c[E+12>>2]=c[F+12>>2];c[F>>2]=2;c[ha>>2]=F;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 112:{F=c[P>>2]|0;G=F+(r>>>20&4080)|0;No(ga,F+(r>>>4&4080)|0,F+(r>>>12&4080)|0,c[G>>2]|0,c[G+4>>2]|0,+h[G+8>>3],(c[c[(c[O>>2]|0)+16>>2]>>2]|0)>>>16&1)|0;G=w;w=G;continue b}case 113:{F=c[P>>2]|0;G=F+(r>>>20&4080)|0;No(ga,F+(r>>>4&4080)|0,H+(r>>>12&4080)|0,c[G>>2]|0,c[G+4>>2]|0,+h[G+8>>3],(c[c[(c[O>>2]|0)+16>>2]>>2]|0)>>>16&1)|0;G=w;w=G;continue b}case 114:{F=c[P>>2]|0;G=H+(r>>>20&4080)|0;No(ga,F+(r>>>4&4080)|0,F+(r>>>12&4080)|0,c[G>>2]|0,c[G+4>>2]|0,+h[G+8>>3],(c[c[(c[O>>2]|0)+16>>2]>>2]|0)>>>16&1)|0;G=w;w=G;continue b}case 115:{G=H+(r>>>20&4080)|0;No(ga,(c[P>>2]|0)+(r>>>4&4080)|0,H+(r>>>12&4080)|0,c[G>>2]|0,c[G+4>>2]|0,+h[G+8>>3],(c[c[(c[O>>2]|0)+16>>2]>>2]|0)>>>16&1)|0;G=w;w=G;continue b}case 116:{E=c[P>>2]|0;E=sp(ga,E+(r>>>12&4080)|0,E+(r>>>20&4080)|0,(c[c[(c[O>>2]|0)+16>>2]>>2]|0)>>>16&1)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 118:{E=sp(ga,(c[P>>2]|0)+(r>>>12&4080)|0,H+(r>>>20&4080)|0,(c[c[(c[O>>2]|0)+16>>2]>>2]|0)>>>16&1)|0;C=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[C>>2]|0;F=C+8|0;b=c[F>>2]|0;c[C>>2]=4;c[F>>2]=E;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case -109:case -110:case -111:case -112:{g=r>>>8;if(!(r&1))b=c[P>>2]|0;else b=H;F=c[b+(r>>>12&4080)+8>>2]|0;m=g&16;o=(m|0)!=0;G=g&15;if(o){if(!(r&2))b=c[P>>2]|0;else b=H;b=b+(r>>>20&4080)|0;g=c[ha>>2]|0;if(g>>>0>=(c[Q>>2]|0)>>>0){ea=2467;break a}c[ha>>2]=g+16;c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];if(c[b>>2]&8|0){E=(c[b+8>>2]|0)+4|0;c[E>>2]=(c[E>>2]|0)+1}}else c[ha>>2]=(c[ha>>2]|0)+16;z=c[ha>>2]|0;i=c[O>>2]|0;y=c[z+-16>>2]|0;C=c[z+-12>>2]|0;E=c[z+-8>>2]|0;z=c[z+-16+12>>2]|0;b=i+24|0;g=c[b>>2]|0;if(!g){ip(ga,i);g=c[b>>2]|0}do if(Wo(ga,g,F,0,0,$)|0){if(m|0?(c[K>>2]|0)==(g|0):0){u=F+12|0;o=w;b=T;ja:while(1){v=c[b>>2]|0;b=c[v+36>>2]|0;w=v+24|0;t=c[w>>2]|0;x=v+16|0;g=c[x>>2]|0;ka:do if(!b){i=g+(t<<4)|0;m=c[v+28>>2]|0;if(!m)b=o;else{b=0;while(1){if((c[i+(b<<2)>>2]|0)==(F|0))break ja;b=b+1|0;if(b>>>0>=m>>>0){b=o;break}}}}else{r=g+(t*21|0)+(0-t&7)+(c[v+32>>2]<<4)|0;p=b+-1|0;q=g+(t<<4)|0;i=c[u>>2]&p;b=o;la:while(1){m=c[r+(i<<2)>>2]|0;switch(m|0){case -1:{o=19;break}case -2:{ea=2484;break}default:if((c[q+(m<<2)>>2]|0)==(F|0)){o=1;b=m}else ea=2484}if((ea|0)==2484){ea=0;o=0;i=i+1&p}switch(o&31){case 19:break ka;case 0:break;default:break la}}if(o)break ja}while(0);o=b;b=v+20|0}i=d[g+(t*20|0)+b>>0]|0;if(!((i&4|0)!=0|(i&11|0)==3)){ea=2534;break a}m=c[T>>2]|0;if((v|0)==(m|0)){if(!(i&8)){v=g+(b<<4)|0;F=c[v>>2]|0;g=c[g+(b<<4)+8>>2]|0;c[v>>2]=2;if(F&8|0?(v=g+4|0,F=(c[v>>2]|0)+-1|0,c[v>>2]=F,(F|0)==0):0)Yn(c[R>>2]|0,g)}else{F=g+(b<<4)|0;i=c[F>>2]|0;c[F>>2]=0;if((i|0)!=0?(v=i+4|0,F=(c[v>>2]|0)+-1|0,c[v>>2]=F,(F|0)==0):0){tp(c[R>>2]|0,i);g=c[x>>2]|0}F=g+(b<<4)+4|0;g=c[F>>2]|0;c[F>>2]=0;if(g|0?(v=g+4|0,F=(c[v>>2]|0)+-1|0,c[v>>2]=F,(F|0)==0):0)tp(c[R>>2]|0,g)}v=c[x>>2]|0;F=v+(b<<4)|0;c[F>>2]=y;c[v+(b<<4)+4>>2]=C;c[v+(b<<4)+8>>2]=E;c[F+12>>2]=z;if(y&8|0){F=E+4|0;c[F>>2]=(c[F>>2]|0)+1}a[(c[x>>2]|0)+((c[w>>2]|0)*20|0)+b>>0]=G}else{g=c[ha>>2]|0;if(g>>>0>=(c[Q>>2]|0)>>>0){ea=2504;break a}c[ha>>2]=g+16;c[g>>2]=y;c[g+4>>2]=C;c[g+8>>2]=E;c[g+12>>2]=z;if(y&8|0){E=E+4|0;c[E>>2]=(c[E>>2]|0)+1}fo(ga,m,F,G)}break}if(o){Vo(ga,c[i+28>>2]|0,i,F,(c[ha>>2]|0)+-16|0,(c[c[(c[O>>2]|0)+16>>2]>>2]|0)>>>16&1);b=w}else b=w}else{b=c[g>>2]|0;if((b&-134217728|0)!=-2147483648){b=c[g+40>>2]|0;g=b;b=c[b>>2]|0}if(!(b&128)){ea=2534;break a}b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=2512;break a}c[ha>>2]=b+16;c[b>>2]=9;c[b+8>>2]=g;b=g+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=2514;break a}c[ha>>2]=b+16;c[b>>2]=8;c[b+8>>2]=F;b=F+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=2516;break a}c[ha>>2]=b+16;c[b>>2]=y;c[b+4>>2]=C;c[b+8>>2]=E;c[b+12>>2]=z;if(y&8|0){F=E+4|0;c[F>>2]=(c[F>>2]|0)+1}F=c[P>>2]|0;b=(c[ha>>2]|0)-F>>4;b=b>>>0>2?F+(b+-3<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9){ea=2521;break a}g=c[b+8>>2]|0;if(!g){ea=2521;break a}po(ga,-2,1);F=c[P>>2]|0;b=(c[ha>>2]|0)-F>>4;b=b>>>0>1?F+(b+-2<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==8?(ba=c[b+8>>2]|0,(ba|0)!=0):0)b=ba;else{Eo(ga,-2)|0;F=c[P>>2]|0;b=(c[ha>>2]|0)-F>>4;b=b>>>0>1?F+(b+-2<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)==8)b=c[b+8>>2]|0;else b=0}fo(ga,g,b,G);g=c[ha>>2]|0;if((g|0)==(c[P>>2]|0)){ea=2527;break a}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;do if(G&8){F=g+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0)break;Yn(c[R>>2]|0,g);b=c[ha>>2]|0}while(0);F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;do if(G&8|0){F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0)break;Yn(c[R>>2]|0,b)}while(0);b=w}while(0);g=c[ha>>2]|0;F=g+-16|0;c[ha>>2]=F;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[F>>2]=2;if(!(G&8)){w=b;continue b}F=g+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){w=b;continue b}Yn(c[R>>2]|0,g);w=b;continue b}case -105:case -106:case -107:case -108:{if(!(r&2))b=c[P>>2]|0;else b=H;b=b+(r>>>20&4080)|0;g=c[ha>>2]|0;if(g>>>0>=(c[Q>>2]|0)>>>0){ea=2545;break a}c[ha>>2]=g+16;c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];if(c[b>>2]&8|0){G=(c[b+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}if(!(r&1))b=c[P>>2]|0;else b=H;b=b+(r>>>12&4080)|0;g=c[ha>>2]|0;if(g>>>0>=(c[Q>>2]|0)>>>0){ea=2551;break a}c[ha>>2]=g+16;c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];if(c[b>>2]&8|0){G=(c[b+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}up(ga);F=(c[ha>>2]|0)+-16|0;E=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[E>>2]|0;b=c[E+8>>2]|0;c[E>>2]=c[F>>2];c[E+4>>2]=c[F+4>>2];c[E+8>>2]=c[F+8>>2];c[E+12>>2]=c[F+12>>2];c[F>>2]=2;c[ha>>2]=F;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case -81:case -82:case -83:case -84:{if(!(r&1))b=c[P>>2]|0;else b=H;o=c[O>>2]|0;lp(ga,c[o+28>>2]|0,o,c[b+(r>>>12&4080)+8>>2]|0,1)|0;o=r>>>8&255;b=o+1|0;g=c[P>>2]|0;i=(c[ha>>2]|0)-g>>4;if(!i){ea=2560;break a}m=g+(i+-1<<4)|0;if(b>>>0>=i>>>0){ea=2562;break a}F=g+(b<<4)|0;G=c[F>>2]|0;g=c[g+(b<<4)+8>>2]|0;c[F>>2]=c[m>>2];c[F+4>>2]=c[m+4>>2];c[F+8>>2]=c[m+8>>2];c[F+12>>2]=c[m+12>>2];c[m>>2]=2;b=(c[ha>>2]|0)+-16|0;c[ha>>2]=b;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}g=c[P>>2]|0;b=b-g>>4;if(!b){ea=2567;break a}i=g+(b+-1<<4)|0;if(o>>>0>=b>>>0){ea=2569;break a}F=g+(o<<4)|0;G=c[F>>2]|0;b=c[g+(o<<4)+8>>2]|0;c[F>>2]=c[i>>2];c[F+4>>2]=c[i+4>>2];c[F+8>>2]=c[i+8>>2];c[F+12>>2]=c[i+12>>2];c[i>>2]=2;c[ha>>2]=(c[ha>>2]|0)+-16;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case -104:{b=c[O>>2]|0;i=c[(c[(c[b+16>>2]|0)+44>>2]|0)+(r>>>16<<2)>>2]|0;g=c[b+28>>2]|0;if(!g){ip(ga,b);g=c[O>>2]|0;b=g;g=c[g+28>>2]|0}vp(ga,i,c[b+24>>2]|0,g,1);F=(c[ha>>2]|0)+-16|0;E=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[E>>2]|0;b=c[E+8>>2]|0;c[E>>2]=c[F>>2];c[E+4>>2]=c[F+4>>2];c[E+8>>2]=c[F+8>>2];c[E+12>>2]=c[F+12>>2];c[F>>2]=2;c[ha>>2]=F;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 11:{g=c[O>>2]|0;lp(ga,c[g+28>>2]|0,g,c[H+(r>>>12&1048560)+8>>2]|0,1)|0;g=c[ha>>2]|0;b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;E=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[E>>2]|0;b=c[E+8>>2]|0;c[E>>2]=c[F>>2];c[E+4>>2]=c[F+4>>2];c[E+8>>2]=c[F+8>>2];c[E+12>>2]=c[F+12>>2];c[F>>2]=2;c[ha>>2]=F;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case -101:{G=c[O>>2]|0;Vo(ga,c[G+28>>2]|0,G,c[H+(r>>>12&1048560)+8>>2]|0,(c[P>>2]|0)+(r>>>4&4080)|0,(c[c[G+16>>2]>>2]|0)>>>16&1);G=w;w=G;continue b}case -100:{b=c[H+(r>>>12&1048560)+8>>2]|0;G=c[O>>2]|0;do if(!(Wo(ga,c[G+28>>2]|0,b,G,1,$)|0))g=1;else{if(c[U>>2]|0?(c[W>>2]&4|0)==0:0){g=0;break}g=Zo(ga,c[V>>2]|0,b,0)|0}while(0);E=(c[P>>2]|0)+(r>>>4&4080)|0;G=c[E>>2]|0;F=E+8|0;b=c[F>>2]|0;c[E>>2]=4;c[F>>2]=g;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case 2:{c[aa>>2]=g+((r>>>8)+-8388608<<2);G=w;w=G;continue b}case -95:{i=(c[R>>2]|0)+40|0;g=c[i>>2]|0;if(!g){g=xp(ga)|0;b=c[aa>>2]|0}else c[i>>2]=c[g>>2];c[g+16>>2]=r>>>16<<8|2;c[g+8>>2]=b;c[g+12>>2]=0;c[g+4>>2]=0;G=(c[O>>2]|0)+32|0;c[g>>2]=c[G>>2];c[G>>2]=g;c[aa>>2]=(c[aa>>2]|0)+8;G=w;w=G;continue b}case -94:{G=c[R>>2]|0;E=(c[O>>2]|0)+32|0;F=c[E>>2]|0;c[E>>2]=c[F>>2];G=G+40|0;c[F>>2]=c[G>>2];c[G>>2]=F;G=w;w=G;continue b}case -91:{zp(ga,r,g);c[aa>>2]=(c[aa>>2]|0)+8;G=w;w=G;continue b}case -90:{c[aa>>2]=Ap(ga)|0;G=w;w=G;continue b}case -89:{Bp(ga);G=w;w=G;continue b}case -85:{i=r>>>16;G=c[P>>2]|0;p=G+(i<<4)|0;b=c[p>>2]|0;i=G+(i<<4)+8|0;m=c[i>>2]|0;g=c[p+16>>2]|0;o=c[p+24>>2]|0;G=G+((r>>>8&255)<<4)|0;c[p>>2]=c[G>>2];c[p+4>>2]=c[G+4>>2];c[p+8>>2]=c[G+8>>2];c[p+12>>2]=c[G+12>>2];if(c[p>>2]&8|0){G=(c[i>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}c[p+16>>2]=2;if(b&8|0?(F=m+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)Yn(c[R>>2]|0,m);if(!(g&8)){G=w;w=G;continue b}F=o+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,o);G=w;w=G;continue b}case -73:case -74:case -75:case -76:case -77:case -78:case -79:case -80:{o=r&7|8;p=r>>>16;g=p+2+(r>>>8&255)|0;b=c[ha>>2]|0;i=c[P>>2]|0;m=b-i>>4;if(g>>>0<m>>>0){i=b+(g-m<<4)|0;do{G=c[b+-16>>2]|0;g=c[b+-8>>2]|0;b=b+-16|0;c[b>>2]=2;if(G&8|0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)bo(c[R>>2]|0,g)}while((b|0)!=(i|0));c[ha>>2]=i;b=c[R>>2]|0;if(c[b+32>>2]|0)Tn(b)}else c[ha>>2]=i+(g<<4);if(so(ga,p,o)|0){b=w;continue a}g=e[(c[(c[O>>2]|0)+16>>2]|0)+60>>1]|0;b=c[ha>>2]|0;i=c[P>>2]|0;m=b-i>>4;if(g>>>0>=m>>>0){c[ha>>2]=i+(g<<4);G=w;w=G;continue b}i=b+(g-m<<4)|0;do{G=c[b+-16>>2]|0;g=c[b+-8>>2]|0;b=b+-16|0;c[b>>2]=2;if(G&8|0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)bo(c[R>>2]|0,g)}while((b|0)!=(i|0));c[ha>>2]=i;b=c[R>>2]|0;if(!(c[b+32>>2]|0)){G=w;w=G;continue b}Tn(b);G=w;w=G;continue b}case -65:case -66:case -67:case -68:case -69:case -70:case -71:case -72:{m=c[P>>2]|0;o=r&7|8;p=r>>>16;g=p+2+(~~+h[m+((r>>>8&255)<<4)+8>>3]>>>0)|0;b=c[ha>>2]|0;i=b-m>>4;if(g>>>0<i>>>0){i=b+(g-i<<4)|0;do{G=c[b+-16>>2]|0;g=c[b+-8>>2]|0;b=b+-16|0;c[b>>2]=2;if(G&8|0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)bo(c[R>>2]|0,g)}while((b|0)!=(i|0));c[ha>>2]=i;b=c[R>>2]|0;if(c[b+32>>2]|0)Tn(b)}else c[ha>>2]=m+(g<<4);if(so(ga,p,o)|0){b=w;continue a}g=e[(c[(c[O>>2]|0)+16>>2]|0)+60>>1]|0;b=c[ha>>2]|0;i=c[P>>2]|0;m=b-i>>4;if(g>>>0>=m>>>0){c[ha>>2]=i+(g<<4);G=w;w=G;continue b}i=b+(g-m<<4)|0;do{G=c[b+-16>>2]|0;g=c[b+-8>>2]|0;b=b+-16|0;c[b>>2]=2;if(G&8|0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0)bo(c[R>>2]|0,g)}while((b|0)!=(i|0));c[ha>>2]=i;b=c[R>>2]|0;if(!(c[b+32>>2]|0)){G=w;w=G;continue b}Tn(b);G=w;w=G;continue b}case -64:{if((c[ha>>2]|0)>>>0>=(c[Q>>2]|0)>>>0){ea=2666;break a}i=vo(ga,40)|0;b=c[R>>2]|0;c[i>>2]=134234241;b=b+24|0;g=c[b>>2]|0;if(g|0)c[g+12>>2]=i;c[i+12>>2]=0;c[i+8>>2]=g;c[b>>2]=i;b=c[ha>>2]|0;c[b>>2]=9;c[b+8>>2]=i;b=i+4|0;c[b>>2]=(c[b>>2]|0)+1;c[ha>>2]=(c[ha>>2]|0)+16;b=c[L>>2]|0;c[i+20>>2]=b;if(b|0){G=b+4|0;c[G>>2]=(c[G>>2]|0)+1}m=c[(c[ha>>2]|0)+-8>>2]|0;i=r>>>8&255;G=c[m+24>>2]|0;i=G>>>0>i>>>0?G:i;do if(i>>>0>7){if(i>>>0>63){b=2;g=i;do{G=g;g=g>>>6;b=b<<6}while(G>>>0>4095);if(!g)break}else{b=2;g=i}do{g=g>>>1;b=b<<1}while((g|0)!=0)}else b=0;while(0);io(ga,m,i,c[m+32>>2]|0,b,0);F=(c[ha>>2]|0)+-16|0;E=(c[P>>2]|0)+(r>>>12&1048560)|0;G=c[E>>2]|0;b=c[E+8>>2]|0;c[E>>2]=c[F>>2];c[E+4>>2]=c[F+4>>2];c[E+8>>2]=c[F+8>>2];c[E+12>>2]=c[F+12>>2];c[F>>2]=2;c[ha>>2]=F;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case -63:{i=vo(ga,48)|0;b=c[R>>2]|0;c[i>>2]=272679041;b=b+24|0;g=c[b>>2]|0;if(g|0)c[g+12>>2]=i;c[i+12>>2]=0;c[i+8>>2]=g;c[b>>2]=i;b=c[M>>2]|0;c[i+20>>2]=b;if(b|0){G=b+4|0;c[G>>2]=(c[G>>2]|0)+1}F=c[ha>>2]|0;c[F>>2]=9;c[F+8>>2]=i;F=i+4|0;c[F>>2]=(c[F>>2]|0)+1;F=c[ha>>2]|0;c[ha>>2]=F+16;io(ga,c[F+8>>2]|0,0,r>>>8&255,0,0);F=(c[ha>>2]|0)+-16|0;E=(c[P>>2]|0)+(r>>>12&1048560)|0;G=c[E>>2]|0;b=c[E+8>>2]|0;c[E>>2]=c[F>>2];c[E+4>>2]=c[F+4>>2];c[E+8>>2]=c[F+8>>2];c[E+12>>2]=c[F+12>>2];c[F>>2]=2;c[ha>>2]=F;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case -61:case -62:{v=r>>>8&255;b=r>>>16&255;if((m|0)==195)b=~~+h[(c[P>>2]|0)+(b<<4)+8>>3]>>>0;u=b+(r>>>24)|0;while(1){i=c[ha>>2]|0;if(i>>>0>=(c[Q>>2]|0)>>>0){ea=2690;break a}m=c[P>>2]|0;G=i-m>>4;g=((b|0)<0?G:0)+b|0;if(g>>>0>=G>>>0){ea=2692;break a}G=m+(g<<4)|0;c[ha>>2]=i+16;c[i>>2]=c[G>>2];c[i+4>>2]=c[G+4>>2];c[i+8>>2]=c[G+8>>2];c[i+12>>2]=c[G+12>>2];if(c[i>>2]&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}i=b+1|0;m=c[ha>>2]|0;if(m>>>0>=(c[Q>>2]|0)>>>0){ea=2696;break a}o=c[P>>2]|0;G=m-o>>4;g=((i|0)<0?G:0)+i|0;if(g>>>0>=G>>>0){ea=2698;break a}G=o+(g<<4)|0;c[ha>>2]=m+16;c[m>>2]=c[G>>2];c[m+4>>2]=c[G+4>>2];c[m+8>>2]=c[G+8>>2];c[m+12>>2]=c[G+12>>2];if(c[m>>2]&8|0){G=(c[m+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}g=c[P>>2]|0;i=(c[ha>>2]|0)-g|0;m=i>>4;g=v>>>0<m>>>0?g+(v<<4)|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)!=9){ea=2703;break a}t=c[g+8>>2]|0;if(!t){ea=2703;break a}p=(i|0)<16?-2147483648:m+-1|0;q=p+-1|0;po(ga,q,1);i=c[ha>>2]|0;G=c[P>>2]|0;m=G;F=i-m>>4;r=(p|0)<1;g=(r?F:0)+q|0;g=g>>>0<F>>>0?G+(g<<4)|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)==8?(ca=c[g+8>>2]|0,(ca|0)!=0):0){o=ca;g=m}else{Eo(ga,q)|0;i=c[ha>>2]|0;G=c[P>>2]|0;m=G;F=i-m>>4;g=(r?F:0)+q|0;g=g>>>0<F>>>0?G+(g<<4)|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)==8){o=c[g+8>>2]|0;g=m}else{o=0;g=m}}G=i-g>>4;F=(r?G:0)+q|0;if((F|0)<0|F>>>0>=G>>>0){ea=2709;break a}Fp(ga,639,t,o,p,0,0,1)|0;Gp(ga,q);b=b+2|0;if(b>>>0>=u>>>0){G=w;w=G;continue b}}}case -59:case -60:{Hp(ga,r);G=w;w=G;continue b}case -57:case -58:{q=r>>>8&255;b=r>>>16&255;g=c[P>>2]|0;if((m|0)==199)b=~~+h[g+(b<<4)+8>>3]>>>0;o=b+(r>>>24)|0;p=~~+h[g+(b<<4)+8>>3]>>>0;b=b+1|0;do{i=c[ha>>2]|0;if(i>>>0>=(c[Q>>2]|0)>>>0){ea=2716;break a}m=c[P>>2]|0;G=i-m>>4;g=((b|0)<0?G:0)+b|0;if(g>>>0>=G>>>0){ea=2718;break a}G=m+(g<<4)|0;c[ha>>2]=i+16;c[i>>2]=c[G>>2];c[i+4>>2]=c[G+4>>2];c[i+8>>2]=c[G+8>>2];c[i+12>>2]=c[G+12>>2];if(c[i>>2]&8|0){G=(c[i+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}g=c[P>>2]|0;g=q>>>0<(c[ha>>2]|0)-g>>4>>>0?g+(q<<4)|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)!=9){ea=2723;break a}g=c[g+8>>2]|0;if(!g){ea=2723;break a}Co(ga,g,p);b=b+1|0;p=p+1|0}while(b>>>0<o>>>0);i=c[ha>>2]|0;g=c[P>>2]|0;b=q>>>0<i-g>>4>>>0?q:-2147483648;m=c[Q>>2]|0;if(i>>>0>=m>>>0){ea=2726;break a}o=i+16|0;c[ha>>2]=o;c[i>>2]=0;h[i+8>>3]=+(p>>>0);G=o-g>>4;g=((b|0)<0?G:0)+b|0;if(g>>>0>=G>>>0){ea=2728;break a}b=c[(c[J>>2]|0)+328>>2]|0;if(o>>>0>=m>>>0){ea=2730;break a}c[ha>>2]=i+32;c[o>>2]=8;c[i+24>>2]=b;m=b+4|0;c[m>>2]=(c[m>>2]|0)+1;m=c[P>>2]|0;o=(c[ha>>2]|0)-m>>4;i=((g|0)<0?o:0)+g|0;if(i>>>0>=o>>>0){ea=2732;break a}if((o|0)==1){ea=2734;break a}g=o+-2|0;b=c[O>>2]|0;if(!b)b=1;else b=c[b+52>>2]&1;No(ga,m+(i<<4)|0,m+(o+-1<<4)|0,c[m+(g<<4)>>2]|0,c[m+(g<<4)+4>>2]|0,+h[m+(g<<4)+8>>3],b)|0;g=c[ha>>2]|0;if((g+-32|0)>>>0<(c[P>>2]|0)>>>0){ea=2738;break a}b=g+-16|0;c[ha>>2]=b;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[b>>2]=2;if((G&8|0)!=0?(F=g+4|0,G=(c[F>>2]|0)+-1|0,c[F>>2]=G,(G|0)==0):0){Yn(c[R>>2]|0,g);b=c[ha>>2]|0}F=b+-16|0;c[ha>>2]=F;G=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[F>>2]=2;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}case -56:{G=c[P>>2]|0;c[(c[G+(r>>>4&4080)+8>>2]|0)+40>>2]=~~+h[G+(r>>>12&1048560)+8>>3]>>>0;G=w;w=G;continue b}case -55:{Ip(ga,r);G=w;w=G;continue b}case -54:{G=Jp(ga,r)|0;c[aa>>2]=(c[aa>>2]|0)+(G<<2);G=w;w=G;continue b}case -53:{b=c[O>>2]|0;ma:do if(b){while(1){g=c[b+52>>2]|0;if(g&4|0)break;if(!(g&16)){ea=2760;break}b=c[b+20>>2]|0;if(!b){ea=2750;break ma}}if((ea|0)==2760){ea=0;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=2761;break a}c[ha>>2]=b+16;break}g=c[ha>>2]|0;if(g>>>0>=(c[Q>>2]|0)>>>0){ea=2755;break a}c[ha>>2]=g+16;c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];if(c[b>>2]&8|0){G=(c[b+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}}else ea=2750;while(0);if((ea|0)==2750){ea=0;b=c[ha>>2]|0;if(b>>>0>=(c[Q>>2]|0)>>>0){ea=2751;break a}c[ha>>2]=b+16}F=(c[ha>>2]|0)+-16|0;E=(c[P>>2]|0)+(r>>>12&1048560)|0;G=c[E>>2]|0;b=c[E+8>>2]|0;c[E>>2]=c[F>>2];c[E+4>>2]=c[F+4>>2];c[E+8>>2]=c[F+8>>2];c[E+12>>2]=c[F+12>>2];c[F>>2]=2;c[ha>>2]=F;if(!(G&8)){G=w;w=G;continue b}F=b+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0){G=w;w=G;continue b}Yn(c[R>>2]|0,b);G=w;w=G;continue b}default:{G=w;w=G;continue b}}while(0)}if((ea|0)==2593){ea=0;c[(c[O>>2]|0)+36>>2]=g;c[N>>2]=0;b=(c[P>>2]|0)+(r>>>12&1048560)|0;R=c[ha>>2]|0;c[R>>2]=c[b>>2];c[R+4>>2]=c[b+4>>2];c[R+8>>2]=c[b+8>>2];c[R+12>>2]=c[b+12>>2];if(c[b>>2]&8|0){R=(c[b+8>>2]|0)+4|0;c[R>>2]=(c[R>>2]|0)+1}c[ha>>2]=(c[ha>>2]|0)+16;b=wp(ga,f)|0}else if((ea|0)==2596){ea=0;c[(c[O>>2]|0)+36>>2]=b;c[N>>2]=0;b=H+(r>>>12&1048560)|0;R=c[ha>>2]|0;c[R>>2]=c[b>>2];c[R+4>>2]=c[b+4>>2];c[R+8>>2]=c[b+8>>2];c[R+12>>2]=c[b+12>>2];if(c[b>>2]&8|0){R=(c[b+8>>2]|0)+4|0;c[R>>2]=(c[R>>2]|0)+1}c[ha>>2]=(c[ha>>2]|0)+16;b=wp(ga,f)|0}else if((ea|0)==2599){ea=0;c[(c[O>>2]|0)+36>>2]=b;c[N>>2]=0;R=H+(r>>>12&1048560)|0;b=c[ha>>2]|0;c[b>>2]=c[R>>2];c[b+4>>2]=c[R+4>>2];c[b+8>>2]=c[R+8>>2];c[b+12>>2]=c[R+12>>2];c[ha>>2]=(c[ha>>2]|0)+16;b=wp(ga,f)|0}else if((ea|0)==2600){ea=0;c[(c[O>>2]|0)+36>>2]=b;c[N>>2]=0;c[ha>>2]=(c[ha>>2]|0)+16;b=wp(ga,f)|0}else if((ea|0)==2606){ea=0;c[(c[O>>2]|0)+36>>2]=g;c[N>>2]=0;yp(ga,r>>>16,4);b=w;continue}else if((ea|0)==2607){ea=0;c[(c[O>>2]|0)+36>>2]=g;c[N>>2]=0;yp(ga,r>>>16,5);b=w;continue}else if((ea|0)==2611){ea=0;c[(c[O>>2]|0)+36>>2]=g;c[N>>2]=0;b=Cp(ga,r,f)|0}if(!b)b=w;else{ea=2768;break}}switch(ea|0){case 51:{Un(ga,4153);break}case 55:{jo(ga,376,-1);break}case 61:{jo(ga,376,-1);break}case 87:{jo(ga,300,-1);break}case 100:{jo(ga,300,-1);break}case 173:break;case 187:break;case 201:break;case 215:break;case 229:break;case 243:break;case 257:break;case 271:break;case 357:{Un(ga,4153);break}case 361:{Un(ga,4153);break}case 372:{Un(ga,5237);break}case 374:{Jn(ga,268620,50336889,268576);break}case 376:{Mn(ga,268620,5246);break}case 378:{jo(ga,300,-1);break}case 390:{In(ga,2022,o,268516);break}case 392:{Un(ga,4300);break}case 394:{Jn(ga,268620,50335961,268982);break}case 396:{jo(ga,376,-1);break}case 398:{jo(ga,376,-3);break}case 402:{Jn(ga,269209,50331803,269226);break}case 407:{jo(ga,300,-2);break}case 412:{jo(ga,300,-1);break}case 423:{Un(ga,4215);break}case 426:{jo(ga,376,-1);break}case 428:{jo(ga,376,q);break}case 438:{Un(ga,4153);break}case 442:{Un(ga,4153);break}case 453:{Un(ga,5237);break}case 455:{Jn(ga,268620,50336889,268576);break}case 457:{Mn(ga,268620,5246);break}case 459:{jo(ga,300,-1);break}case 471:{In(ga,2022,o,268516);break}case 473:{Un(ga,4300);break}case 475:{Jn(ga,268620,50335961,268982);break}case 477:{jo(ga,376,-1);break}case 479:{jo(ga,376,-3);break}case 483:{Jn(ga,269209,50331803,269226);break}case 488:{jo(ga,300,-2);break}case 493:{jo(ga,300,-1);break}case 504:{Un(ga,4215);break}case 507:{jo(ga,376,-1);break}case 509:{jo(ga,376,q);break}case 519:{Un(ga,4153);break}case 523:{Un(ga,4153);break}case 534:{Un(ga,5237);break}case 536:{Jn(ga,268620,50336889,268576);break}case 538:{Mn(ga,268620,5246);break}case 540:{jo(ga,300,-1);break}case 552:{In(ga,2022,o,268516);break}case 554:{Un(ga,4300);break}case 556:{Jn(ga,268620,50335961,268982);break}case 558:{jo(ga,376,-1);break}case 560:{jo(ga,376,-3);break}case 564:{Jn(ga,269209,50331803,269226);break}case 569:{jo(ga,300,-2);break}case 574:{jo(ga,300,-1);break}case 585:{Un(ga,4215);break}case 588:{jo(ga,376,-1);break}case 590:{jo(ga,376,q);break}case 600:{Un(ga,4153);break}case 604:{Un(ga,4153);break}case 615:{Un(ga,5237);break}case 617:{Jn(ga,268620,50336889,268576);break}case 619:{Mn(ga,268620,5246);break}case 621:{jo(ga,300,-1);break}case 633:{In(ga,2022,o,268516);break}case 635:{Un(ga,4300);break}case 637:{Jn(ga,268620,50335961,268982);break}case 639:{jo(ga,376,-1);break}case 641:{jo(ga,376,-3);break}case 645:{Jn(ga,269209,50331803,269226);break}case 650:{jo(ga,300,-2);break}case 655:{jo(ga,300,-1);break}case 666:{Un(ga,4215);break}case 669:{jo(ga,376,-1);break}case 671:{jo(ga,376,q);break}case 679:{Un(ga,4153);break}case 683:{Un(ga,4153);break}case 687:{jo(ga,300,-2);break}case 692:{jo(ga,300,-1);break}case 709:{Un(ga,4153);break}case 713:{Un(ga,4153);break}case 717:{jo(ga,300,-2);break}case 722:{jo(ga,300,-1);break}case 739:{Un(ga,4153);break}case 743:{Un(ga,4153);break}case 747:{jo(ga,300,-2);break}case 752:{jo(ga,300,-1);break}case 769:{Un(ga,4153);break}case 773:{Un(ga,4153);break}case 777:{jo(ga,300,-2);break}case 782:{jo(ga,300,-1);break}case 799:{Un(ga,4153);break}case 803:{Un(ga,4153);break}case 807:{jo(ga,300,-2);break}case 812:{jo(ga,300,-1);break}case 829:{Un(ga,4153);break}case 833:{Un(ga,4153);break}case 837:{jo(ga,300,-2);break}case 842:{jo(ga,300,-1);break}case 859:{Un(ga,4153);break}case 863:{Un(ga,4153);break}case 867:{jo(ga,300,-2);break}case 872:{jo(ga,300,-1);break}case 889:{Un(ga,4153);break}case 893:{Un(ga,4153);break}case 897:{jo(ga,300,-2);break}case 902:{jo(ga,300,-1);break}case 919:{Un(ga,4153);break}case 923:{Un(ga,4153);break}case 927:{jo(ga,300,-2);break}case 932:{jo(ga,300,-1);break}case 949:{Un(ga,4153);break}case 953:{Un(ga,4153);break}case 957:{jo(ga,300,-2);break}case 962:{jo(ga,300,-1);break}case 979:{Un(ga,4153);break}case 983:{Un(ga,4153);break}case 987:{jo(ga,300,-2);break}case 992:{jo(ga,300,-1);break}case 1009:{Un(ga,4153);break}case 1013:{Un(ga,4153);break}case 1017:{jo(ga,300,-2);break}case 1022:{jo(ga,300,-1);break}case 1039:{Un(ga,4153);break}case 1043:{Un(ga,4153);break}case 1047:{jo(ga,300,-2);break}case 1052:{jo(ga,300,-1);break}case 1069:{Un(ga,4153);break}case 1073:{Un(ga,4153);break}case 1077:{jo(ga,300,-2);break}case 1082:{jo(ga,300,-1);break}case 1099:{Un(ga,4153);break}case 1103:{Un(ga,4153);break}case 1107:{jo(ga,300,-2);break}case 1112:{jo(ga,300,-1);break}case 1129:{Un(ga,4153);break}case 1133:{Un(ga,4153);break}case 1137:{jo(ga,300,-2);break}case 1142:{jo(ga,300,-1);break}case 1159:{Un(ga,4153);break}case 1163:{Un(ga,4153);break}case 1167:{jo(ga,300,-2);break}case 1172:{jo(ga,300,-1);break}case 1192:{Un(ga,4153);break}case 1196:{Un(ga,4153);break}case 1200:{jo(ga,300,-2);break}case 1205:{jo(ga,300,-1);break}case 1225:{Un(ga,4153);break}case 1229:{Un(ga,4153);break}case 1233:{jo(ga,300,-2);break}case 1238:{jo(ga,300,-1);break}case 1258:{Un(ga,4153);break}case 1262:{Un(ga,4153);break}case 1266:{jo(ga,300,-2);break}case 1271:{jo(ga,300,-1);break}case 1288:{Un(ga,4153);break}case 1292:{Un(ga,4153);break}case 1296:{jo(ga,376,-2);break}case 1302:{jo(ga,376,-2);break}case 1307:{jo(ga,376,-1);break}case 1313:{jo(ga,376,-1);break}case 1327:{Un(ga,4153);break}case 1331:{Un(ga,4153);break}case 1335:{jo(ga,376,-2);break}case 1341:{jo(ga,376,-2);break}case 1346:{jo(ga,376,-1);break}case 1352:{jo(ga,376,-1);break}case 1366:{Un(ga,4153);break}case 1370:{Un(ga,4153);break}case 1374:{jo(ga,376,-2);break}case 1380:{jo(ga,376,-2);break}case 1385:{jo(ga,376,-1);break}case 1391:{jo(ga,376,-1);break}case 1405:{Un(ga,4153);break}case 1409:{Un(ga,4153);break}case 1413:{jo(ga,376,-2);break}case 1419:{jo(ga,376,-2);break}case 1424:{jo(ga,376,-1);break}case 1430:{jo(ga,376,-1);break}case 1444:{Un(ga,4153);break}case 1448:{Un(ga,4153);break}case 1452:{jo(ga,376,-2);break}case 1458:{jo(ga,376,-2);break}case 1463:{jo(ga,376,-1);break}case 1469:{jo(ga,376,-1);break}case 1483:{Un(ga,4153);break}case 1487:{Un(ga,4153);break}case 1491:{jo(ga,376,-2);break}case 1497:{jo(ga,376,-2);break}case 1502:{jo(ga,376,-1);break}case 1508:{jo(ga,376,-1);break}case 1522:{Un(ga,4153);break}case 1526:{Un(ga,4153);break}case 1530:{jo(ga,376,-2);break}case 1536:{jo(ga,376,-2);break}case 1541:{jo(ga,376,-1);break}case 1547:{jo(ga,376,-1);break}case 1561:{Un(ga,4153);break}case 1565:{Un(ga,4153);break}case 1569:{jo(ga,376,-2);break}case 1575:{jo(ga,376,-2);break}case 1580:{jo(ga,376,-1);break}case 1586:{jo(ga,376,-1);break}case 1600:{Un(ga,4153);break}case 1604:{Un(ga,4153);break}case 1608:{jo(ga,376,-2);break}case 1614:{jo(ga,376,-2);break}case 1619:{jo(ga,376,-1);break}case 1625:{jo(ga,376,-1);break}case 1639:{Un(ga,4153);break}case 1643:{Un(ga,4153);break}case 1647:{jo(ga,376,-2);break}case 1653:{jo(ga,376,-2);break}case 1658:{jo(ga,376,-1);break}case 1664:{jo(ga,376,-1);break}case 1678:{Un(ga,4153);break}case 1682:{Un(ga,4153);break}case 1686:{jo(ga,376,-2);break}case 1692:{jo(ga,376,-2);break}case 1697:{jo(ga,376,-1);break}case 1703:{jo(ga,376,-1);break}case 1717:{Un(ga,4153);break}case 1721:{Un(ga,4153);break}case 1725:{jo(ga,376,-2);break}case 1731:{jo(ga,376,-2);break}case 1736:{jo(ga,376,-1);break}case 1742:{jo(ga,376,-1);break}case 1756:{Un(ga,4153);break}case 1760:{Un(ga,4153);break}case 1764:{jo(ga,376,-2);break}case 1770:{jo(ga,376,-2);break}case 1775:{jo(ga,376,-1);break}case 1781:{jo(ga,376,-1);break}case 1795:{Un(ga,4153);break}case 1799:{Un(ga,4153);break}case 1803:{jo(ga,376,-2);break}case 1809:{jo(ga,376,-2);break}case 1814:{jo(ga,376,-1);break}case 1820:{jo(ga,376,-1);break}case 1834:{Un(ga,4153);break}case 1838:{Un(ga,4153);break}case 1842:{jo(ga,376,-2);break}case 1848:{jo(ga,376,-2);break}case 1853:{jo(ga,376,-1);break}case 1859:{jo(ga,376,-1);break}case 1873:{Un(ga,4153);break}case 1877:{Un(ga,4153);break}case 1881:{jo(ga,376,-2);break}case 1887:{jo(ga,376,-2);break}case 1892:{jo(ga,376,-1);break}case 1898:{jo(ga,376,-1);break}case 1912:{Un(ga,4153);break}case 1916:{Un(ga,4153);break}case 1920:{jo(ga,376,-2);break}case 1926:{jo(ga,376,-2);break}case 1931:{jo(ga,376,-1);break}case 1937:{jo(ga,376,-1);break}case 1951:{Un(ga,4153);break}case 1955:{Un(ga,4153);break}case 1959:{jo(ga,376,-2);break}case 1965:{jo(ga,376,-2);break}case 1970:{jo(ga,376,-1);break}case 1976:{jo(ga,376,-1);break}case 1990:{Un(ga,4153);break}case 1994:{Un(ga,4153);break}case 1998:{jo(ga,376,-2);break}case 2004:{jo(ga,376,-2);break}case 2009:{jo(ga,376,-1);break}case 2015:{jo(ga,376,-1);break}case 2029:{Un(ga,4153);break}case 2033:{Un(ga,4153);break}case 2037:{jo(ga,376,-2);break}case 2043:{jo(ga,376,-2);break}case 2048:{jo(ga,376,-1);break}case 2054:{jo(ga,376,-1);break}case 2068:{Un(ga,4153);break}case 2072:{Un(ga,4153);break}case 2076:{jo(ga,376,-2);break}case 2082:{jo(ga,376,-2);break}case 2087:{jo(ga,376,-1);break}case 2093:{jo(ga,376,-1);break}case 2107:{Un(ga,4153);break}case 2111:{Un(ga,4153);break}case 2115:{jo(ga,376,-2);break}case 2121:{jo(ga,376,-2);break}case 2126:{jo(ga,376,-1);break}case 2132:{jo(ga,376,-1);break}case 2146:{Un(ga,4153);break}case 2150:{Un(ga,4153);break}case 2154:{jo(ga,376,-2);break}case 2160:{jo(ga,376,-2);break}case 2165:{jo(ga,376,-1);break}case 2171:{jo(ga,376,-1);break}case 2185:{Un(ga,4153);break}case 2189:{Un(ga,4153);break}case 2193:{jo(ga,376,-2);break}case 2199:{jo(ga,376,-2);break}case 2204:{jo(ga,376,-1);break}case 2210:{jo(ga,376,-1);break}case 2250:{jo(ga,300,m);break}case 2255:{Un(ga,4215);break}case 2257:{jo(ga,376,-1);break}case 2259:{jo(ga,376,m);break}case 2270:{jo(ga,300,m);break}case 2275:{Un(ga,4215);break}case 2277:{jo(ga,376,-1);break}case 2279:{jo(ga,376,m);break}case 2290:{jo(ga,300,m);break}case 2295:{Un(ga,4215);break}case 2297:{jo(ga,376,-1);break}case 2299:{jo(ga,376,m);break}case 2310:{jo(ga,300,m);break}case 2315:{Un(ga,4215);break}case 2317:{jo(ga,376,-1);break}case 2319:{jo(ga,376,m);break}case 2328:{jo(ga,300,-2);break}case 2339:{Un(ga,4215);break}case 2344:{jo(ga,300,-2);break}case 2355:{Un(ga,4215);break}case 2360:{jo(ga,300,-2);break}case 2365:{Un(ga,4215);break}case 2376:{jo(ga,300,-2);break}case 2381:{Un(ga,4215);break}case 2396:{jo(ga,300,-1);break}case 2404:{Un(ga,4215);break}case 2467:{Un(ga,4153);break}case 2504:{Un(ga,4153);break}case 2512:{Un(ga,4153);break}case 2514:{Un(ga,4153);break}case 2516:{Un(ga,4153);break}case 2521:{In(ga,2130,-3,268963);break}case 2527:{Jn(ga,268620,50337407,268636);break}case 2534:{Jn(ga,269151,100665008,269395);break}case 2545:{Un(ga,4153);break}case 2551:{Un(ga,4153);break}case 2560:{jo(ga,376,-1);break}case 2562:{jo(ga,376,b);break}case 2567:{jo(ga,376,-1);break}case 2569:{jo(ga,376,o);break}case 2612:{i=r>>>16;c[(c[O>>2]|0)+36>>2]=g;c[N>>2]=0;g=c[ha>>2]|0;if(g>>>0>=(c[Q>>2]|0)>>>0)Un(ga,1093);b=c[P>>2]|0;if(i>>>0>=g-b>>4>>>0)jo(ga,376,i);fa=b+(i<<4)|0;c[ha>>2]=g+16;c[g>>2]=c[fa>>2];c[g+4>>2]=c[fa+4>>2];c[g+8>>2]=c[fa+8>>2];c[g+12>>2]=c[fa+12>>2];if(!(c[g>>2]&8)){Dp(ga);fa=c[ha>>2]|0;fa=fa+-16|0;ea=c[R>>2]|0;Ep(ea,1,fa);ep(ga)}fa=(c[g+8>>2]|0)+4|0;c[fa>>2]=(c[fa>>2]|0)+1;Dp(ga);ha=c[ha>>2]|0;ha=ha+-16|0;fa=c[R>>2]|0;Ep(fa,1,ha);ep(ga);break}case 2666:{Un(ga,4604);break}case 2690:{Un(ga,1093);break}case 2692:{jo(ga,376,b);break}case 2696:{Un(ga,1093);break}case 2698:{jo(ga,376,i);break}case 2703:{In(ga,2130,v,268963);break}case 2709:{jo(ga,394,q);break}case 2716:{Un(ga,1093);break}case 2718:{jo(ga,376,b);break}case 2723:{In(ga,2130,q,268963);break}case 2726:{Un(ga,4274);break}case 2728:{jo(ga,300,b);break}case 2730:{Un(ga,4153);break}case 2732:{jo(ga,376,g);break}case 2734:{jo(ga,376,-2);break}case 2738:{Jn(ga,268620,50337495,268636);break}case 2748:{Jn(ga,269377,67113838,269414);break}case 2749:{c[da>>2]=r>>>8;_n(ga,269377,16782225,269429,da);break}case 2751:{Un(ga,4162);break}case 2755:{Un(ga,4153);break}case 2761:{Un(ga,4162);break}case 2766:{Jn(ga,269377,16782343,269450);break}case 2768:{l=fa;return}}}function ep(b){b=b|0;var d=0,e=0,f=0,g=0,h=0;d=l;l=l+144|0;h=d;d=d+8|0;e=b+44|0;f=c[e>>2]|0;g=f+64|0;c[g>>2]=(c[g>>2]|0)+1;g=c[f+80>>2]|0;if(g|0)Of(g|0,1);c[h>>2]=fp(b,f+96|0,1)|0;_O(d,128,269262,h);a[d+127>>0]=0;h=c[e>>2]|0;Bg[c[h+20>>2]&255](c[h+16>>2]|0,d);while(1){}}function fp(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;j=r+16|0;g=r+8|0;q=r;if(!e){g=b+68|0;if((c[g>>2]|0)>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4300);q=Oo(b,269275,4)|0;p=c[g>>2]|0;c[g>>2]=p+16;c[p>>2]=8;c[p+8>>2]=q;q=q+4|0;c[q>>2]=(c[q>>2]|0)+1;b=Eo(b,-1)|0;l=r;return b|0}h=c[e>>2]|0;switch(h|0){case 8:{f=c[e+8>>2]|0;if(!(c[f>>2]&512)){hp(b,f,32);b=Eo(b,-1)|0;l=r;return b|0}h=b+68|0;i=b+56|0;if((c[h>>2]|0)>>>0>=(c[i>>2]|0)>>>0)Un(b,4300);g=Oo(b,269280,8)|0;q=c[h>>2]|0;c[h>>2]=q+16;c[q>>2]=8;c[q+8>>2]=g;g=g+4|0;c[g>>2]=(c[g>>2]|0)+1;g=f+28|0;switch(a[g>>0]|0){case -126:case -1:{g=0;break}case -128:{g=1;break}default:g=(a[g+((c[f+20>>2]|0)+-1)>>0]|0)==-1?3:2}gp(b,c[4148+(g<<2)>>2]|0);if((c[h>>2]|0)>>>0>=(c[i>>2]|0)>>>0)Un(b,4300);q=Oo(b,269289,1)|0;p=c[h>>2]|0;c[h>>2]=p+16;c[p>>2]=8;c[p+8>>2]=q;q=q+4|0;c[q>>2]=(c[q>>2]|0)+1;hp(b,f,32);if((c[h>>2]|0)>>>0>=(c[i>>2]|0)>>>0)Un(b,4300);q=Oo(b,308612,1)|0;p=c[h>>2]|0;c[h>>2]=p+16;c[p>>2]=8;c[p+8>>2]=q;q=q+4|0;c[q>>2]=(c[q>>2]|0)+1;Mo(b,5,0);b=Eo(b,-1)|0;l=r;return b|0}case 9:{o=c[e+8>>2]|0;a:do if(f|0?(i=c[b+180>>2]|0,!((o|0)==0|(i|0)==0)):0){g=1e4;f=o;while(1){if((f|0)==(i|0))break;if(!g)break a;f=c[f+20>>2]|0;if(!f)break a;else g=g+-1|0}k=c[(c[b+304>>2]|0)+208>>2]|0;g=c[o+36>>2]|0;m=c[o+24>>2]|0;n=c[o+16>>2]|0;b:do if(g){e=n+(m*21|0)+(0-m&7)+(c[o+32>>2]<<4)|0;i=g+-1|0;j=n+(m<<4)|0;g=0;h=c[k+12>>2]&i;c:while(1){f=c[e+(h<<2)>>2]|0;switch(f|0){case -1:{f=19;break}case -2:{p=30;break}default:if((c[j+(f<<2)>>2]|0)==(k|0)){g=f;f=1}else p=30}if((p|0)==30){p=0;f=0;h=h+1&i}switch(f&31){case 19:break a;case 0:break;default:break c}}if(!f)break a}else{f=n+(m<<4)|0;h=c[o+28>>2]|0;if(!h)break a;else g=0;while(1){if((c[f+(g<<2)>>2]|0)==(k|0))break b;g=g+1|0;if(g>>>0>=h>>>0)break a}}while(0);p=n+(g<<4)|0;if(!((p|0)==0?1:(a[n+(m*20|0)+g>>0]&8)!=0)?(c[p>>2]|0)==8:0){hp(b,c[n+(g<<4)+8>>2]|0,96);b=Eo(b,-1)|0;l=r;return b|0}}while(0);c[q>>2]=(c[(c[b+304>>2]|0)+(d[269291+((c[o>>2]|0)>>>27)>>0]<<2)>>2]|0)+28;Lo(b,269323,q);b=Eo(b,-1)|0;l=r;return b|0}case 10:{c[g>>2]=c[(c[e+8>>2]|0)+16>>2];Lo(b,269335,g);b=Eo(b,-1)|0;l=r;return b|0}case 5:{i=b+68|0;g=c[i>>2]|0;if(g>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4153);c[i>>2]=g+16;c[g>>2]=c[e>>2];c[g+4>>2]=c[e+4>>2];c[g+8>>2]=c[e+8>>2];c[g+12>>2]=c[e+12>>2];c[j>>2]=Eo(b,-1)|0;Lo(b,269348,j);f=c[b+64>>2]|0;h=(c[i>>2]|0)-f>>4;g=h+-2|0;if(h>>>0<=1)jo(b,376,-2);o=f+(g<<4)|0;p=f+(h+-1<<4)|0;q=c[o>>2]|0;g=c[f+(g<<4)+8>>2]|0;QQ(o|0,o+16|0,p-o|0)|0;c[p>>2]=2;c[i>>2]=(c[i>>2]|0)+-16;if(!(q&8)){b=Eo(b,-1)|0;l=r;return b|0}p=g+4|0;q=(c[p>>2]|0)+-1|0;c[p>>2]=q;if(q|0){b=Eo(b,-1)|0;l=r;return b|0}Yn(c[b+44>>2]|0,g);b=Eo(b,-1)|0;l=r;return b|0}default:{g=b+68|0;f=c[g>>2]|0;if(f>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4153);c[g>>2]=f+16;c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];if(!(h&8)){b=Eo(b,-1)|0;l=r;return b|0}q=(c[e+8>>2]|0)+4|0;c[q>>2]=(c[q>>2]|0)+1;b=Eo(b,-1)|0;l=r;return b|0}}return 0}function gp(a,b){a=a|0;b=b|0;var d=0,e=0;if(!b){b=a+68|0;d=c[b>>2]|0;if(d>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4175);c[b>>2]=d+16;c[d>>2]=3;return}d=WO(b)|0;e=a+68|0;if((c[e>>2]|0)>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4300);if((d|0)<0)Jn(a,268620,50335961,268982);a=Oo(a,b,d)|0;d=c[e>>2]|0;c[e>>2]=d+16;c[d>>2]=8;c[d+8>>2]=a;a=a+4|0;c[a>>2]=(c[a>>2]|0)+1;return}function hp(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+688|0;p=q;n=d+28|0;m=n+(c[d+20>>2]|0)|0;d=p+1|0;a[p>>0]=39;a:do if(n>>>0<m>>>0){f=n;k=0;while(1){if((k|0)==(e|0))break;i=f+1|0;b:do if(f>>>0>=n>>>0){f=a[f>>0]|0;g=f&255;do if(f<<24>>24<=-1){if((f&255)<192){o=34;break b}if((f&255)<224){f=1;g=g&31;break}if((f&255)<240){f=2;g=g&15;break}if((f&255)<248){f=3;g=g&7;break}if((f&255)<252){f=4;g=g&3;break}if((f&255)>=254)if(f<<24>>24==-1){o=34;break b}else{f=6;g=0;break}else{f=5;g=g&1;break}}else{f=0;g=g&127}while(0);if((i+f|0)>>>0<=m>>>0){if(!f){h=g;f=i}else{h=f;while(1){f=i+1|0;g=a[i>>0]&63|g<<6;if((h|0)>1){i=f;h=h+-1|0}else{h=g;break}}}c:do if(h>>>0>=32){switch(h|0){case 39:case 92:case 127:break c;default:{}}if(h>>>0<128){i=0;g=1}else{if(h>>>0>=2048)if(h>>>0>=65536)if(h>>>0>=2097152)if(h>>>0<67108864){g=5;o=30}else g=h>>>31|6;else{g=4;o=30}else{g=3;o=30}else{g=2;o=30}if((o|0)==30)o=0;i=a[269353+(g+-1)>>0]|0;j=g;do{j=j+-1|0;a[d+j>>0]=h&63|128;h=h>>>6}while((j|0)>1)}a[d>>0]=h+(i&255);d=d+g|0;break b}while(0);a[d>>0]=92;a[d+1>>0]=120;a[d+2>>0]=a[268793+(h>>>4)>>0]|0;a[d+3>>0]=a[268793+(h&15)>>0]|0;d=d+4|0}else o=34}else o=34;while(0);if((o|0)==34){o=0;a[d>>0]=63;d=d+1|0;f=i}if(f>>>0<m>>>0)k=k+1|0;else break a}a[d>>0]=46;a[d+1>>0]=46;a[d+2>>0]=46;d=d+3|0}while(0);a[d>>0]=39;d=d+1-p|0;f=b+68|0;if((c[f>>2]|0)>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4300);if((d|0)<0)Jn(b,268620,50335961,268982);else{p=Oo(b,p,d)|0;b=c[f>>2]|0;c[f>>2]=b+16;c[b>>2]=8;c[b+8>>2]=p;p=p+4|0;c[p>>2]=(c[p>>2]|0)+1;l=q;return}}function ip(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;h=c[d+16>>2]|0;s=c[d+40>>2]|0;e=c[h+52>>2]|0;if(!e)e=c[b+104>>2]|0;q=vo(b,52)|0;r=b+44|0;f=c[r>>2]|0;c[q>>2]=-2147483519;f=f+24|0;g=c[f>>2]|0;if(g|0)c[g+12>>2]=q;c[q+12>>2]=0;c[q+8>>2]=g;c[f>>2]=q;p=b+68|0;f=c[p>>2]|0;if(f>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4153);c[p>>2]=f+16;c[f>>2]=9;c[f+8>>2]=q;n=q+4|0;c[n>>2]=(c[n>>2]|0)+1;c[q+20>>2]=e;if(e|0){m=e+4|0;c[m>>2]=(c[m>>2]|0)+1}a:do if(c[h>>2]&2048|0){k=c[(c[b+304>>2]|0)+380>>2]|0;e=c[h+36>>2]|0;l=c[h+24>>2]|0;m=c[h+16>>2]|0;b:do if(e){j=m+(l*21|0)+(0-l&7)+(c[h+32>>2]<<4)|0;h=e+-1|0;i=m+(l<<4)|0;e=0;g=c[k+12>>2]&h;c:while(1){f=c[j+(g<<2)>>2]|0;switch(f|0){case -1:{f=19;break}case -2:{o=17;break}default:if((c[i+(f<<2)>>2]|0)==(k|0)){e=f;f=1}else o=17}if((o|0)==17){o=0;f=0;g=g+1&h}switch(f&31){case 19:break a;case 0:break;default:break c}}if(!f)break a}else{g=m+(l<<4)|0;f=c[h+28>>2]|0;if(!f)break a;else e=0;while(1){if((c[g+(e<<2)>>2]|0)==(k|0))break b;e=e+1|0;if(e>>>0>=f>>>0)break a}}while(0);o=m+(e<<4)|0;if(!((o|0)==0?1:(a[m+(l*20|0)+e>>0]&8)!=0)?(c[o>>2]|0)==9:0){o=c[m+(e<<4)+8>>2]|0;c[q+44>>2]=o;o=o+4|0;c[o>>2]=(c[o>>2]|0)+1;c[q+40>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;c[q+48>>2]=s}}while(0);c[d+28>>2]=q;c[d+24>>2]=q;c[n>>2]=(c[n>>2]|0)+2;e=c[p>>2]|0;d=e+-16|0;c[p>>2]=d;s=c[e+-16>>2]|0;e=c[e+-8>>2]|0;c[d>>2]=2;if(!(s&8))return;d=e+4|0;s=(c[d>>2]|0)+-1|0;c[d>>2]=s;if(s|0)return;Yn(c[r>>2]|0,e);return}function jp(a,b,d){a=a|0;b=b|0;d=d|0;var f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;l=c[a+72>>2]|0;m=l+32|0;n=a+52|0;j=c[n>>2]|0;f=c[(c[m>>2]|0)+12>>2]|0;g=j+(f<<4)|0;if(c[g>>2]&8|0?(i=c[j+(f<<4)+8>>2]|0,p=i+4|0,o=(c[p>>2]|0)+-1|0,c[p>>2]=o,(o|0)==0):0)bo(c[a+44>>2]|0,i);c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];if(c[g>>2]&8|0){p=(c[j+(f<<4)+8>>2]|0)+4|0;c[p>>2]=(c[p>>2]|0)+1}b=g+16|0;if(c[b>>2]&8|0?(k=c[b+8>>2]|0,o=k+4|0,p=(c[o>>2]|0)+-1|0,c[o>>2]=p,(p|0)==0):0)bo(c[a+44>>2]|0,k);c[b>>2]=0;h[b+8>>3]=+(d>>>0);k=c[m>>2]|0;d=c[l+16>>2]|0;g=c[n>>2]|0;b=g+(c[l+40>>2]|0)|0;j=a+64|0;c[j>>2]=b;i=b;g=(c[k+12>>2]|0)-(i-g>>4)+2|0;d=e[d+60>>1]|0;k=a+68|0;f=c[k>>2]|0;i=f-i>>4;if(g>>>0<i>>>0){b=f+(g-i<<4)|0;i=a+44|0;do{p=c[f+-16>>2]|0;g=c[f+-8>>2]|0;f=f+-16|0;c[f>>2]=2;if(p&8|0?(o=g+4|0,p=(c[o>>2]|0)+-1|0,c[o>>2]=p,(p|0)==0):0)bo(c[i>>2]|0,g)}while((f|0)!=(b|0));c[k>>2]=b;f=c[i>>2]|0;if(c[f+32>>2]|0){Tn(f);b=c[k>>2]|0}}else{b=b+(g<<4)|0;c[k>>2]=b}f=c[j>>2]|0;g=b-f>>4;if(d>>>0>=g>>>0){c[k>>2]=f+(d<<4);p=c[n>>2]|0;n=l+48|0;n=c[n>>2]|0;n=p+n|0;p=a+56|0;c[p>>2]=n;p=c[m>>2]|0;n=p+8|0;n=c[n>>2]|0;n=n+4|0;o=l+36|0;c[o>>2]=n;p=p+16|0;o=c[p>>2]|0;o=o&-33;c[p>>2]=o;return}i=b+(d-g<<4)|0;g=a+44|0;do{p=c[b+-16>>2]|0;f=c[b+-8>>2]|0;b=b+-16|0;c[b>>2]=2;if(p&8|0?(o=f+4|0,p=(c[o>>2]|0)+-1|0,c[o>>2]=p,(p|0)==0):0)bo(c[g>>2]|0,f)}while((b|0)!=(i|0));c[k>>2]=i;b=c[g>>2]|0;if(!(c[b+32>>2]|0)){p=c[n>>2]|0;n=l+48|0;n=c[n>>2]|0;n=p+n|0;p=a+56|0;c[p>>2]=n;p=c[m>>2]|0;n=p+8|0;n=c[n>>2]|0;n=n+4|0;o=l+36|0;c[o>>2]=n;p=p+16|0;o=c[p>>2]|0;o=o&-33;c[p>>2]=o;return}Tn(b);p=c[n>>2]|0;n=l+48|0;n=c[n>>2]|0;n=p+n|0;p=a+56|0;c[p>>2]=n;p=c[m>>2]|0;n=p+8|0;n=c[n>>2]|0;n=n+4|0;o=l+36|0;c[o>>2]=n;p=p+16|0;o=c[p>>2]|0;o=o&-33;c[p>>2]=o;return}function kp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=a+44|0;b=c[e>>2]|0;d=c[b>>2]|0;if(d&2|0){c[a+96>>2]=262144;c[a+92>>2]=262143;return}c[b>>2]=d|2;d=c[(c[b+16>>2]|0)+2588588>>2]|0;g=316336;f=c[g>>2]|0;g=c[g+4>>2]|0;if(!((f|0)==0&(g|0)==0)){k=fg[c[d+16>>2]&7]()|0;l=z;b=c[e>>2]|0;d=c[b>>2]&-3;e=a+96|0;if(g>>>0<l>>>0|(g|0)==(l|0)&f>>>0<k>>>0){c[e>>2]=0;c[a+92>>2]=0;c[b>>2]=d;Jn(a,269377,50333611,269640)}else{h=e;i=d;j=b}}else{b=c[d+12>>2]|0;if(b|0?gg[b&511](c[d+36>>2]|0)|0:0){l=fg[c[d+16>>2]&7]()|0;k=z;j=fg[c[d+20>>2]&7]()|0;j=GQ(1e6,0,j|0,z|0)|0;k=yQ(j|0,z|0,l|0,k|0)|0;l=316336;c[l>>2]=k;c[l+4>>2]=z}j=c[e>>2]|0;h=a+96|0;i=c[j>>2]&-3}c[h>>2]=262144;c[a+92>>2]=262143;c[j>>2]=i;return}function lp(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0;k=l;l=l+64|0;g=k+32|0;j=k+36|0;h=k+16|0;i=k;if(!(Wo(a,b,e,d,1,j)|0))if(!f){a=0;l=k;return a|0}else{c[g>>2]=e+28;_n(a,269151,67110062,269164,g)}g=c[j+8>>2]|0;if(g|0){d=a+68|0;b=c[d>>2]|0;f=a+56|0;if(b>>>0>=(c[f>>2]|0)>>>0)Un(a,4153);c[d>>2]=b+16;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];if(c[g>>2]&8|0){j=(c[g+8>>2]|0)+4|0;c[j>>2]=(c[j>>2]|0)+1}b=c[d>>2]|0;if(b>>>0>=(c[f>>2]|0)>>>0)Un(a,4162);c[d>>2]=b+16;a=1;l=k;return a|0}c[h>>2]=9;g=c[j+4>>2]|0;c[h+8>>2]=g;c[i>>2]=8;c[i+8>>2]=e;ro(a,h,i)|0;b=a+68|0;d=c[b>>2]|0;f=d>>>0<(c[a+56>>2]|0)>>>0;if(!(c[j+16>>2]|0)){if(!f)Un(a,4162);c[b>>2]=d+16;a=1;l=k;return a|0}else{if(!f)Un(a,4153);c[b>>2]=d+16;c[d>>2]=9;c[d+8>>2]=g;a=g+4|0;c[a>>2]=(c[a>>2]|0)+1;a=1;l=k;return a|0}return 0}function mp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0.0,i=0,k=0.0,l=0,m=0;m=c[b>>2]|0;l=c[d>>2]|0;if(!(l|m)){k=+h[b+8>>3];g=+h[d+8>>3];if(!(e&1)){a=k==g&1;return a|0}e=iP(k)|0;f=iP(g)|0;if(!(k==g)){a=(f|e|0)==0&1;return a|0}if(!((e|0)==2&(f|0)==2)){a=1;return a|0}h[j>>3]=g;d=c[j>>2]|0;a=c[j+4>>2]|0;h[j>>3]=k;a=JQ(d^c[j>>2]|0,a^c[j+4>>2]|0,63)|0;a=a^1;return a|0}if((m|0)==(l|0))switch(m|0){case 4:{a=(c[b+8>>2]|0)==(c[d+8>>2]|0)&1;return a|0}case 5:{a=(c[b+8>>2]|0)==(c[d+8>>2]|0)&1;return a|0}case 9:case 8:{a=(c[b+8>>2]|0)==(c[d+8>>2]|0)&1;return a|0}case 10:{a=(c[b+8>>2]|0)==(c[d+8>>2]|0)&1;return a|0}case 6:{if((c[b+8>>2]|0)==(c[d+8>>2]|0))e=(c[b+4>>2]|0)==(c[d+4>>2]|0);else e=0;a=e&1;return a|0}case 3:case 2:{a=1;return a|0}default:{}}if(e&3|0){a=0;return a|0}if(!((m&-2|0)!=2|(l&-2|0)!=2)){a=1;return a|0}if(!(m>>>0>1|(l|0)!=8)?(c[c[d+8>>2]>>2]&512|0)==0:0){k=+h[b+8>>3];a=k==+Sp(a,d)&1;return a|0}if(!((m|0)!=8|l>>>0>1)?(c[c[b+8>>2]>>2]&512|0)==0:0){k=+h[d+8>>3];a=k==+Sp(a,b)&1;return a|0}do if((m|0)==4){i=a+68|0;f=c[i>>2]|0;l=c[a+56>>2]|0;if(f>>>0>=l>>>0)Un(a,4274);k=+((c[b+8>>2]|0)>>>0);e=f+16|0;c[i>>2]=e;c[f>>2]=0;h[f+8>>3]=k;if(e>>>0>=l>>>0)Un(a,4153);c[i>>2]=f+32;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];if(c[d>>2]&8){d=(c[d+8>>2]|0)+4|0;c[d>>2]=(c[d>>2]|0)+1}}else{if((l|0)==4){i=a+68|0;e=c[i>>2]|0;f=a+56|0;if(e>>>0>=(c[f>>2]|0)>>>0)Un(a,4153);c[i>>2]=e+16;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];if(m&8|0){e=(c[b+8>>2]|0)+4|0;c[e>>2]=(c[e>>2]|0)+1}e=c[i>>2]|0;if(e>>>0<(c[f>>2]|0)>>>0){k=+((c[d+8>>2]|0)>>>0);c[i>>2]=e+16;c[e>>2]=0;h[e+8>>3]=k;break}else Un(a,4274)}if((l|0)!=9|(1788>>>m&1|0)!=0){if((m|0)!=9|(1788>>>l&1|0)!=0){a=0;return a|0}i=a+68|0;e=c[i>>2]|0;f=a+56|0;if(e>>>0>=(c[f>>2]|0)>>>0)Un(a,4153);c[i>>2]=e+16;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];e=(c[b+8>>2]|0)+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[i>>2]|0;if(e>>>0>=(c[f>>2]|0)>>>0)Un(a,4153);c[i>>2]=e+16;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];if(c[d>>2]&8|0){d=(c[d+8>>2]|0)+4|0;c[d>>2]=(c[d>>2]|0)+1}po(a,-2,0);break}else{i=a+68|0;e=c[i>>2]|0;f=a+56|0;if(e>>>0>=(c[f>>2]|0)>>>0)Un(a,4153);c[i>>2]=e+16;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];if(m&8|0){b=(c[b+8>>2]|0)+4|0;c[b>>2]=(c[b>>2]|0)+1}e=c[i>>2]|0;if(e>>>0>=(c[f>>2]|0)>>>0)Un(a,4153);c[i>>2]=e+16;c[e>>2]=c[d>>2];c[e+4>>2]=c[d+4>>2];c[e+8>>2]=c[d+8>>2];c[e+12>>2]=c[d+12>>2];if(c[d>>2]&8|0){d=(c[d+8>>2]|0)+4|0;c[d>>2]=(c[d>>2]|0)+1}po(a,-1,0);break}}while(0);l=c[i>>2]|0;l=mp(a,l+-32|0,l+-16|0,0)|0;f=c[i>>2]|0;e=f+-16|0;c[i>>2]=e;d=c[f+-16>>2]|0;f=c[f+-8>>2]|0;c[e>>2]=2;if((d&8|0)!=0?(b=f+4|0,d=(c[b>>2]|0)+-1|0,c[b>>2]=d,(d|0)==0):0){Yn(c[a+44>>2]|0,f);e=c[i>>2]|0}b=e+-16|0;c[i>>2]=b;d=c[e+-16>>2]|0;e=c[e+-8>>2]|0;c[b>>2]=2;if(!(d&8)){a=l;return a|0}b=e+4|0;d=(c[b>>2]|0)+-1|0;c[b>>2]=d;if(d|0){a=l;return a|0}Yn(c[a+44>>2]|0,e);a=l;return a|0}function np(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0.0,g=0.0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=e&1;k=c[b>>2]|0;if((k|0)==0?(c[d>>2]|0)==0:0){g=+h[b+8>>3];f=+h[d+8>>3];if(g<f){r=r^1;return r|0}if(f<g)return r|0;h[j>>3]=g;a=c[j+4>>2]|0;if(0==0&(a&2146435072|0)==2146435072&((c[j>>2]|0)!=0|(a&1048575|0)!=0)){r=0;return r|0}h[j>>3]=f;a=c[j+4>>2]|0;r=0==0&(a&2146435072|0)==2146435072&((c[j>>2]|0)!=0|(a&1048575|0)!=0)?0:r;return r|0}q=a+68|0;i=c[q>>2]|0;l=a+56|0;if(i>>>0>=(c[l>>2]|0)>>>0)Un(a,4153);c[q>>2]=i+16;c[i>>2]=c[b>>2];c[i+4>>2]=c[b+4>>2];c[i+8>>2]=c[b+8>>2];c[i+12>>2]=c[b+12>>2];if(k&8|0){k=(c[b+8>>2]|0)+4|0;c[k>>2]=(c[k>>2]|0)+1}b=c[q>>2]|0;if(b>>>0>=(c[l>>2]|0)>>>0)Un(a,4153);c[q>>2]=b+16;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];if(c[d>>2]&8|0){d=(c[d+8>>2]|0)+4|0;c[d>>2]=(c[d>>2]|0)+1}if(!(e&2)){po(a,-1,2);po(a,-2,2)}else{po(a,-2,2);po(a,-1,2)}e=c[q>>2]|0;i=e;if((((c[e+-32>>2]|0)==8?(o=e+-16|0,(c[o>>2]|0)==8):0)?(m=c[e+-24>>2]|0,p=e+-8|0,n=c[p>>2]|0,(c[m>>2]&512|0)==0):0)?(c[n>>2]&512|0)==0:0){i=c[m+20>>2]|0;k=c[n+20>>2]|0;b=KN(m+28|0,n+28|0,i>>>0<=k>>>0?i:k)|0;if((b|0)<0)k=1;else k=i>>>0<k>>>0&(b|0)==0&1;b=e+-16|0;c[q>>2]=b;o=c[o>>2]|0;i=c[p>>2]|0;c[b>>2]=2;if((o&8|0)!=0?(o=i+4|0,p=(c[o>>2]|0)+-1|0,c[o>>2]=p,(p|0)==0):0){Yn(c[a+44>>2]|0,i);b=c[q>>2]|0}p=b+-16|0;c[q>>2]=p;q=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[p>>2]=2;if(q&8|0?(p=b+4|0,q=(c[p>>2]|0)+-1|0,c[p>>2]=q,(q|0)==0):0)Yn(c[a+44>>2]|0,b);r=k^r;return r|0}e=a+64|0;b=c[e>>2]|0;p=i-b>>4;i=p+-2|0;if(p>>>0<=1)jo(a,300,-2);g=+ho(a,b+(i<<4)|0);k=c[e>>2]|0;o=k+(i<<4)|0;p=c[o>>2]|0;i=k+(i<<4)+8|0;b=c[i>>2]|0;c[o>>2]=0;h[i>>3]=g;i=k;if((p&8|0)!=0?(o=b+4|0,p=(c[o>>2]|0)+-1|0,c[o>>2]=p,(p|0)==0):0){Yn(c[a+44>>2]|0,b);k=c[e>>2]|0;i=k}p=(c[q>>2]|0)-i>>4;b=p+-1|0;if(!p)jo(a,300,-1);f=+ho(a,k+(b<<4)|0);o=c[e>>2]|0;n=o+(b<<4)|0;p=c[n>>2]|0;o=o+(b<<4)+8|0;b=c[o>>2]|0;c[n>>2]=0;h[o>>3]=f;if(p&8|0?(o=b+4|0,p=(c[o>>2]|0)+-1|0,c[o>>2]=p,(p|0)==0):0)Yn(c[a+44>>2]|0,b);a=c[q>>2]|0;p=a+-32|0;c[q>>2]=p;c[p>>2]=2;c[a+-16>>2]=2;if(g<f){r=r^1;return r|0}if(f<g)return r|0;h[j>>3]=g;a=c[j+4>>2]|0;if(0==0&(a&2146435072|0)==2146435072&((c[j>>2]|0)!=0|(a&1048575|0)!=0)){r=0;return r|0}h[j>>3]=f;a=c[j+4>>2]|0;r=0==0&(a&2146435072|0)==2146435072&((c[j>>2]|0)!=0|(a&1048575|0)!=0)?0:r;return r|0}function op(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=a+68|0;e=c[a+64>>2]|0;f=(c[h>>2]|0)-e>>4;if(!f)jo(a,376,-1);g=e+(f+-1<<4)|0;d=((b|0)<0?f:0)+b|0;if(d>>>0>=f>>>0)jo(a,376,b);b=e+(d<<4)|0;f=c[b>>2]|0;d=c[e+(d<<4)+8>>2]|0;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];c[g>>2]=2;c[h>>2]=(c[h>>2]|0)+-16;if(!(f&8))return;g=d+4|0;h=(c[g>>2]|0)+-1|0;c[g>>2]=h;if(h|0)return;Yn(c[a+44>>2]|0,d);return}function pp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=a+68|0;f=c[r>>2]|0;m=a+56|0;if(f>>>0>=(c[m>>2]|0)>>>0)Un(a,4153);c[r>>2]=f+16;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];if(c[b>>2]&8|0){o=(c[b+8>>2]|0)+4|0;c[o>>2]=(c[o>>2]|0)+1}b=c[r>>2]|0;if(b>>>0>=(c[m>>2]|0)>>>0)Un(a,4153);c[r>>2]=b+16;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];if(c[d>>2]&8|0){o=(c[d+8>>2]|0)+4|0;c[o>>2]=(c[o>>2]|0)+1}g=c[r>>2]|0;o=a+64|0;h=c[o>>2]|0;d=h;b=g-d>>4;b=b|0?h+(b+-1<<4)|0:0;b=(b|0)==0?936:b;h=g;if((c[b>>2]|0)!=9)In(a,2130,-1,268963);b=c[b+8>>2]|0;if(!b)In(a,2130,-1,268963);f=c[b>>2]|0;if(!(f&512))Jn(a,268844,100664476,269582);if(f&1024){b=b+40|0;if(h>>>0>=(c[m>>2]|0)>>>0)Un(a,4153);c[r>>2]=h+16;j=g;c[j>>2]=c[b>>2];c[j+4>>2]=c[b+4>>2];c[j+8>>2]=c[b+8>>2];c[j+12>>2]=c[b+12>>2];if(c[b>>2]&8|0){j=(c[b+8>>2]|0)+4|0;c[j>>2]=(c[j>>2]|0)+1}b=c[o>>2]|0;f=(c[r>>2]|0)-b>>4;if(!f)jo(a,376,-1);d=b+(f+-1<<4)|0;if((f|0)==1)jo(a,376,-2);f=f+-2|0;i=b+(f<<4)|0;j=c[i>>2]|0;f=c[b+(f<<4)+8>>2]|0;c[i>>2]=c[d>>2];c[i+4>>2]=c[d+4>>2];c[i+8>>2]=c[d+8>>2];c[i+12>>2]=c[d+12>>2];c[d>>2]=2;b=(c[r>>2]|0)+-16|0;c[r>>2]=b;d=b;if((j&8|0)!=0?(i=f+4|0,j=(c[i>>2]|0)+-1|0,c[i>>2]=j,(j|0)==0):0){Yn(c[a+44>>2]|0,f);d=c[r>>2]|0;b=d}j=c[o>>2]|0;g=j;f=d-g>>4;f=f|0?j+(f+-1<<4)|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)!=9)In(a,2130,-1,268963);if(!(c[f+8>>2]|0))In(a,2130,-1,268963);else{k=d;l=g;n=b}}else{k=g;l=d;n=h}switch(c[n+-32>>2]|0){case 6:{b=a+120|0;j=0;break}case 10:{b=a+268|0;j=0;break}case 5:{b=a+244|0;j=0;break}case 9:{b=n+-24|0;j=1;break}default:{e=n+-16|0;c[r>>2]=e;q=c[n+-16>>2]|0;b=c[n+-8>>2]|0;c[e>>2]=2;if((q&8|0)!=0?(p=b+4|0,q=(c[p>>2]|0)+-1|0,c[p>>2]=q,(q|0)==0):0){Yn(c[a+44>>2]|0,b);e=c[r>>2]|0}q=e+-16|0;c[r>>2]=q;r=c[e+-16>>2]|0;e=c[e+-8>>2]|0;c[q>>2]=2;if(!(r&8)){r=0;return r|0}q=e+4|0;r=(c[q>>2]|0)+-1|0;c[q>>2]=r;if(r|0){r=0;return r|0}Yn(c[a+44>>2]|0,e);r=0;return r|0}}i=c[b>>2]|0;g=k-l|0;l=g>>4;h=l+-1|0;if(!l)jo(a,300,-1);b=c[(c[a+304>>2]|0)+200>>2]|0;if(n>>>0>=(c[m>>2]|0)>>>0)Un(a,4153);c[r>>2]=n+16;c[n>>2]=8;c[n+8>>2]=b;f=b+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[o>>2]|0;d=(c[r>>2]|0)-f>>4;b=((g|0)<16?d:0)+h|0;if(b>>>0>=d>>>0)jo(a,376,h);ro(a,f+(b<<4)|0,f+(d+-1<<4)|0)|0;f=c[o>>2]|0;d=(c[r>>2]|0)-f>>4;b=d+-2|0;if(d>>>0<=1)jo(a,376,-2);l=f+(b<<4)|0;m=f+(d+-1<<4)|0;n=c[l>>2]|0;b=c[f+(b<<4)+8>>2]|0;QQ(l|0,l+16|0,m-l|0)|0;c[m>>2]=2;f=(c[r>>2]|0)+-16|0;c[r>>2]=f;if((n&8|0)!=0?(m=b+4|0,n=(c[m>>2]|0)+-1|0,c[m>>2]=n,(n|0)==0):0){Yn(c[a+44>>2]|0,b);f=c[r>>2]|0}o=c[o>>2]|0;b=f-o>>4;b=b|0?o+(b+-1<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9)Jn(a,268844,100664481,269606);b=c[b+8>>2]|0;if(!b)Jn(a,268844,100664481,269606);else{p=1e4;e=i;q=j}while(1){if(!e){e=58;break}if(c[e>>2]&33554432)do e=c[e+40>>2]|0;while((c[e>>2]&33554432|0)!=0);if((q|0)==0&(e|0)==(b|0)){e=63;break}p=p+-1|0;if(!p){e=51;break}else{e=c[e+20>>2]|0;q=0}}if((e|0)==51)Jn(a,268844,50332811,269067);else if((e|0)==58){b=a+44|0;q=f+-16|0;a=c[q>>2]|0;e=c[f+-8>>2]|0;c[q>>2]=2;if(a&8|0?(q=e+4|0,a=(c[q>>2]|0)+-1|0,c[q>>2]=a,(a|0)==0):0)bo(c[b>>2]|0,e);q=f+-32|0;a=c[q>>2]|0;e=c[f+-24>>2]|0;c[q>>2]=2;if(a&8|0?(q=e+4|0,a=(c[q>>2]|0)+-1|0,c[q>>2]=a,(a|0)==0):0)bo(c[b>>2]|0,e);q=f+-48|0;a=c[q>>2]|0;e=c[f+-40>>2]|0;c[q>>2]=2;do if(a&8|0){q=e+4|0;a=(c[q>>2]|0)+-1|0;c[q>>2]=a;if(a|0)break;bo(c[b>>2]|0,e)}while(0);c[r>>2]=f+-48;e=c[b>>2]|0;if(!(c[e+32>>2]|0)){r=0;return r|0}Tn(e);r=0;return r|0}else if((e|0)==63){b=a+44|0;q=f+-16|0;a=c[q>>2]|0;e=c[f+-8>>2]|0;c[q>>2]=2;if(a&8|0?(q=e+4|0,a=(c[q>>2]|0)+-1|0,c[q>>2]=a,(a|0)==0):0)bo(c[b>>2]|0,e);q=f+-32|0;a=c[q>>2]|0;e=c[f+-24>>2]|0;c[q>>2]=2;if(a&8|0?(q=e+4|0,a=(c[q>>2]|0)+-1|0,c[q>>2]=a,(a|0)==0):0)bo(c[b>>2]|0,e);q=f+-48|0;a=c[q>>2]|0;e=c[f+-40>>2]|0;c[q>>2]=2;do if(a&8|0){q=e+4|0;a=(c[q>>2]|0)+-1|0;c[q>>2]=a;if(a|0)break;bo(c[b>>2]|0,e)}while(0);c[r>>2]=f+-48;e=c[b>>2]|0;if(!(c[e+32>>2]|0)){r=1;return r|0}Tn(e);r=1;return r|0}return 0}function qp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;g=a+68|0;e=c[g>>2]|0;f=a+56|0;if(e>>>0>=(c[f>>2]|0)>>>0)Un(a,4153);c[g>>2]=e+16;c[e>>2]=c[b>>2];c[e+4>>2]=c[b+4>>2];c[e+8>>2]=c[b+8>>2];c[e+12>>2]=c[b+12>>2];if(c[b>>2]&8|0){e=(c[b+8>>2]|0)+4|0;c[e>>2]=(c[e>>2]|0)+1}b=c[g>>2]|0;if(b>>>0>=(c[f>>2]|0)>>>0)Un(a,4153);c[g>>2]=b+16;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];if(c[d>>2]&8|0){f=(c[d+8>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)+1}e=a+64|0;d=c[e>>2]|0;f=(c[g>>2]|0)-d>>4;f=f|0?d+(f+-1<<4)|0:0;if(447>>>(c[((f|0)==0?936:f)>>2]|0)&1|0)Jn(a,268620,100667121,269566);po(a,-2,1);b=c[g>>2]|0;d=c[e>>2]|0;f=b-d>>4;f=f>>>0>1?d+(f+-2<<4)|0:0;f=(f|0)==0?936:f;if(!((c[f>>2]|0)==8?(c[f+8>>2]|0)!=0:0)){Eo(a,-2)|0;b=c[g>>2]|0}d=Xo(a,b+-16|0,b+-32|0)|0;e=c[g>>2]|0;b=e+-16|0;c[g>>2]=b;f=c[e+-16>>2]|0;e=c[e+-8>>2]|0;c[b>>2]=2;if((f&8|0)!=0?(h=e+4|0,f=(c[h>>2]|0)+-1|0,c[h>>2]=f,(f|0)==0):0){Yn(c[a+44>>2]|0,e);b=c[g>>2]|0}f=b+-16|0;c[g>>2]=f;h=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[f>>2]=2;if(!(h&8))return d|0;g=b+4|0;h=(c[g>>2]|0)+-1|0;c[g>>2]=h;if(h|0)return d|0;Yn(c[a+44>>2]|0,b);return d|0}function rp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+16|0;i=p;n=a+68|0;g=c[n>>2]|0;k=a+64|0;m=g-(c[k>>2]|0)|0;o=m>>4;f=g;j=a+56|0;if(f>>>0>=(c[j>>2]|0)>>>0)Un(a,4153);c[n>>2]=f+16;c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];if(c[d>>2]&8|0){g=(c[d+8>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}f=c[n>>2]|0;if(f>>>0>=(c[j>>2]|0)>>>0)Un(a,4153);c[n>>2]=f+16;c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];if(c[e>>2]&8|0){e=(c[e+8>>2]|0)+4|0;c[e>>2]=(c[e>>2]|0)+1}f=c[n>>2]|0;if(f>>>0>=(c[j>>2]|0)>>>0)Un(a,4153);c[n>>2]=f+16;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];if(c[b>>2]&8|0){b=(c[b+8>>2]|0)+4|0;c[b>>2]=(c[b>>2]|0)+1}g=c[k>>2]|0;b=(c[n>>2]|0)-g>>4;b=fp(a,b|0?g+(b+-1<<4)|0:0,0)|0;g=c[k>>2]|0;f=(c[n>>2]|0)-g>>4;f=fp(a,f>>>0>2?g+(f+-3<<4)|0:0,0)|0;g=c[k>>2]|0;e=(c[n>>2]|0)-g>>4;e=fp(a,e>>>0>4?g+(e+-5<<4)|0:0,0)|0;c[i>>2]=b;c[i+4>>2]=f;c[i+8>>2]=e;Qp(a,16777222,268650,2847,269530,i);e=c[n>>2]|0;f=c[j>>2]|0;if(e>>>0>=f>>>0)Un(a,4195);d=e+16|0;c[n>>2]=d;c[e>>2]=4;c[e+8>>2]=1;b=d-(c[k>>2]|0)|0;i=b>>4;j=i+-2|0;if(i>>>0<=1)jo(a,300,-2);g=c[(c[a+304>>2]|0)+364>>2]|0;if(d>>>0>=f>>>0)Un(a,4153);c[n>>2]=e+32;c[d>>2]=8;c[e+24>>2]=g;e=g+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[k>>2]|0;i=(c[n>>2]|0)-e>>4;g=((b|0)<32?i:0)+j|0;if(g>>>0>=i>>>0)jo(a,376,j);if((i|0)==1)jo(a,376,-2);d=i+-2|0;f=c[a+72>>2]|0;if(!f)f=1;else f=c[f+52>>2]&1;No(a,e+(g<<4)|0,e+(i+-1<<4)|0,c[e+(d<<4)>>2]|0,c[e+(d<<4)+4>>2]|0,+h[e+(d<<4)+8>>3],f)|0;d=c[n>>2]|0;if((d+-32|0)>>>0<(c[k>>2]|0)>>>0)Jn(a,268620,50337495,268636);f=d+-16|0;c[n>>2]=f;j=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[f>>2]=2;if((j&8|0)!=0?(i=d+4|0,j=(c[i>>2]|0)+-1|0,c[i>>2]=j,(j|0)==0):0){Yn(c[a+44>>2]|0,d);f=c[n>>2]|0}d=f+-16|0;c[n>>2]=d;j=c[f+-16>>2]|0;f=c[f+-8>>2]|0;c[d>>2]=2;if((j&8|0)!=0?(i=f+4|0,j=(c[i>>2]|0)+-1|0,c[i>>2]=j,(j|0)==0):0){Yn(c[a+44>>2]|0,f);d=c[n>>2]|0}b=o+-1|0;g=c[k>>2]|0;d=d-g>>4;if(!d)jo(a,376,-1);e=g+(d+-1<<4)|0;f=((m|0)<16?d:0)+b|0;if(f>>>0>=d>>>0)jo(a,376,b);k=g+(f<<4)|0;m=c[k>>2]|0;f=c[g+(f<<4)+8>>2]|0;c[k>>2]=c[e>>2];c[k+4>>2]=c[e+4>>2];c[k+8>>2]=c[e+8>>2];c[k+12>>2]=c[e+12>>2];c[e>>2]=2;c[n>>2]=(c[n>>2]|0)+-16;if(!(m&8)){Gp(a,o);l=p;return}m=f+4|0;n=(c[m>>2]|0)+-1|0;c[m>>2]=n;if(n|0){Gp(a,o);l=p;return}Yn(c[a+44>>2]|0,f);Gp(a,o);l=p;return}function sp(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;v=l;l=l+48|0;g=v;r=v+16|0;k=v+8|0;u=a+68|0;j=c[u>>2]|0;s=a+64|0;t=j-(c[s>>2]|0)>>4;h=c[b>>2]|0;i=j;if((h&-2|0)==2){w=yo(a,d)|0;o=yo(a,b)|0;c[g>>2]=w;c[g+4>>2]=o;_n(a,268713,100667859,269498,g)}o=a+56|0;if(i>>>0>=(c[o>>2]|0)>>>0)Un(a,4153);c[u>>2]=i+16;w=j;c[w>>2]=c[b>>2];c[w+4>>2]=c[b+4>>2];c[w+8>>2]=c[b+8>>2];c[w+12>>2]=c[b+12>>2];if(h&8|0){w=(c[b+8>>2]|0)+4|0;c[w>>2]=(c[w>>2]|0)+1}g=c[u>>2]|0;if(g>>>0>=(c[o>>2]|0)>>>0)Un(a,4153);c[u>>2]=g+16;c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];if(c[d>>2]&8|0){w=(c[d+8>>2]|0)+4|0;c[w>>2]=(c[w>>2]|0)+1}g=c[u>>2]|0;a:do switch(c[g+-32>>2]|0){case 9:{b=c[g+-24>>2]|0;do if(c[b>>2]&33554432){w=(Yo(a,b,72,d,k)|0)==0;b=c[k>>2]|0;if(w){g=c[u>>2]|0;break}f=c[u>>2]|0;if(f>>>0>=(c[o>>2]|0)>>>0)Un(a,4153);c[u>>2]=f+16;c[f>>2]=9;c[f+8>>2]=b;f=b+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[u>>2]|0;if(f>>>0>=(c[o>>2]|0)>>>0)Un(a,1093);g=c[s>>2]|0;h=f-g>>4;if(h>>>0<=3)jo(a,376,-4);w=g+(h+-4<<4)|0;c[u>>2]=f+16;c[f>>2]=c[w>>2];c[f+4>>2]=c[w+4>>2];c[f+8>>2]=c[w+8>>2];c[f+12>>2]=c[w+12>>2];if(c[f>>2]&8|0){w=(c[f+8>>2]|0)+4|0;c[w>>2]=(c[w>>2]|0)+1}f=(c[u>>2]|0)-(c[s>>2]|0)|0;if((f|0)<64)Vn(a,268605,55);so(a,(f>>>4)+-4|0,0)|0;h=c[u>>2]|0;j=c[s>>2]|0;w=h-j>>4;f=w+-1|0;if(!w)jo(a,300,-1);d=j+(f<<4)|0;i=c[d>>2]|0;switch(i|0){case 3:case 2:{g=0;q=33;break}case 4:{f=j+(f<<4)+8|0;g=c[f>>2]|0;q=31;break}case 8:{g=(c[(c[j+(f<<4)+8>>2]|0)+20>>2]|0)!=0&1;q=32;break}case 10:case 9:{g=1;q=32;break}case 5:{f=j+(f<<4)+8|0;g=(c[f>>2]|0)!=0&1;q=31;break}case 6:{g=1;f=j+(f<<4)+8|0;q=31;break}default:{g=j+(f<<4)+8|0;q=c[g>>2]|0;g=c[g+4>>2]|0;g=(((q|0)==0&(g&2147483647|0)==0|((q|0)!=0|(g&1048575|0)!=0)&(0==0&(g&2146435072|0)==2146435072))^1)&1;q=33}}if((q|0)==31){c[d>>2]=4;c[f>>2]=g}else if((q|0)==32){w=j+(f<<4)+8|0;f=c[w>>2]|0;c[d>>2]=4;c[w>>2]=g;q=34}else if((q|0)==33){w=j+(f<<4)+8|0;f=c[w>>2]|0;c[d>>2]=4;c[w>>2]=g;if(i&8)q=34}if((q|0)==34){q=f+4|0;w=(c[q>>2]|0)+-1|0;c[q>>2]=w;if(!w){Yn(c[a+44>>2]|0,f);h=c[u>>2]|0}}f=h+-16|0;c[u>>2]=f;c[f>>2]=2;if(!g){if(e|0)Jn(a,268713,100667866,269052);g=c[s>>2]|0;b=f-g>>4;if(t>>>0>=b>>>0){c[u>>2]=g+(t<<4);w=0;l=v;return w|0}h=f+(t-b<<4)|0;b=a+44|0;do{w=c[f+-16>>2]|0;g=c[f+-8>>2]|0;f=f+-16|0;c[f>>2]=2;do if(w&8|0){a=g+4|0;w=(c[a>>2]|0)+-1|0;c[a>>2]=w;if(w|0)break;bo(c[b>>2]|0,g)}while(0)}while((f|0)!=(h|0));c[u>>2]=h;f=c[b>>2]|0;if(!(c[f+32>>2]|0)){w=0;l=v;return w|0}Tn(f);w=0;l=v;return w|0}else{g=h+-32|0;if(f>>>0>=(c[o>>2]|0)>>>0)Un(a,4153);c[u>>2]=h;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[f+12>>2]=c[g+12>>2];if(c[g>>2]&8|0){w=(c[h+-24>>2]|0)+4|0;c[w>>2]=(c[w>>2]|0)+1}f=c[u>>2]|0;do if((c[f+-16>>2]|0)==8)f=c[f+-8>>2]|0;else{po(a,-1,1);w=c[s>>2]|0;f=(c[u>>2]|0)-w>>4;f=f|0?w+(f+-1<<4)|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)==8?(p=c[f+8>>2]|0,p|0):0){f=p;break}Eo(a,-1)|0;w=c[s>>2]|0;f=(c[u>>2]|0)-w>>4;f=f|0?w+(f+-1<<4)|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)!=8){f=0;break}f=c[f+8>>2]|0}while(0);do if(go(a,b,f,c[f+16>>2]|0,r,0)|0){if(c[r>>2]&4|0)break;Jn(a,268713,100667777,269052)}while(0);i=1;q=81;break a}}while(0);do if((c[g+-16>>2]|0)!=8){po(a,-1,1);w=c[s>>2]|0;g=(c[u>>2]|0)-w>>4;g=g|0?w+(g+-1<<4)|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)==8?(f=c[g+8>>2]|0,f|0):0)break;Eo(a,-1)|0;w=c[s>>2]|0;f=(c[u>>2]|0)-w>>4;f=f|0?w+(f+-1<<4)|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)==8)f=c[f+8>>2]|0;else f=0}else f=c[g+-8>>2]|0;while(0);i=Zo(a,b,f,(e|0)!=0&1)|0;q=81;break}case 8:{b=c[g+-24>>2]|0;do if((c[g+-16>>2]|0)!=8){po(a,-1,1);w=c[s>>2]|0;f=(c[u>>2]|0)-w>>4;f=f|0?w+(f+-1<<4)|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)==8?(m=c[f+8>>2]|0,m|0):0){f=m;break}Eo(a,-1)|0;w=c[s>>2]|0;f=(c[u>>2]|0)-w>>4;f=f|0?w+(f+-1<<4)|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)==8)f=c[f+8>>2]|0;else f=0}else f=c[g+-8>>2]|0;while(0);g=c[f+16>>2]|0;if((f|0)!=(c[(c[a+304>>2]|0)+328>>2]|0))if(!((g|0)!=-1?g>>>0<(Po(b)|0)>>>0:0)){i=1;q=81}break}case 10:{b=c[g+-24>>2]|0;do if((c[g+-16>>2]|0)!=8){po(a,-1,1);w=c[s>>2]|0;f=(c[u>>2]|0)-w>>4;f=f|0?w+(f+-1<<4)|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)==8?(n=c[f+8>>2]|0,n|0):0){f=n;break}Eo(a,-1)|0;w=c[s>>2]|0;f=(c[u>>2]|0)-w>>4;f=f|0?w+(f+-1<<4)|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)==8)f=c[f+8>>2]|0;else f=0}else f=c[g+-8>>2]|0;while(0);g=c[f+16>>2]|0;if((f|0)!=(c[(c[a+304>>2]|0)+328>>2]|0))if(!((g|0)!=-1?g>>>0<(c[b+16>>2]|0)>>>0:0)){i=1;q=81}break}case 6:{if((c[g+-16>>2]|0)==8){i=1;q=81}else{po(a,-1,1);e=c[s>>2]|0;w=(c[u>>2]|0)-e>>4;w=w|0?e+(w+-1<<4)|0:0;w=(w|0)==0?936:w;if((c[w>>2]|0)==8?c[w+8>>2]|0:0){i=1;q=81;break a}Eo(a,-1)|0;i=1;q=81}break}default:{i=1;q=81}}while(0);if((q|0)==81){f=c[u>>2]|0;g=c[s>>2]|0;b=f-g>>4;if(t>>>0>=b>>>0){c[u>>2]=g+(t<<4);w=i;l=v;return w|0}h=f+(t-b<<4)|0;b=a+44|0;do{w=c[f+-16>>2]|0;g=c[f+-8>>2]|0;f=f+-16|0;c[f>>2]=2;if(w&8|0?(a=g+4|0,w=(c[a>>2]|0)+-1|0,c[a>>2]=w,(w|0)==0):0)bo(c[b>>2]|0,g)}while((f|0)!=(h|0));c[u>>2]=h;f=c[b>>2]|0;if(!(c[f+32>>2]|0)){w=i;l=v;return w|0}Tn(f);w=i;l=v;return w|0}if(e|0)Jn(a,268713,100667874,269117);f=c[u>>2]|0;g=c[s>>2]|0;b=f-g>>4;if(t>>>0>=b>>>0){c[u>>2]=g+(t<<4);w=0;l=v;return w|0}h=f+(t-b<<4)|0;b=a+44|0;do{w=c[f+-16>>2]|0;g=c[f+-8>>2]|0;f=f+-16|0;c[f>>2]=2;if(w&8|0?(a=g+4|0,w=(c[a>>2]|0)+-1|0,c[a>>2]=w,(w|0)==0):0)bo(c[b>>2]|0,g)}while((f|0)!=(h|0));c[u>>2]=h;f=c[b>>2]|0;if(!(c[f+32>>2]|0)){w=0;l=v;return w|0}Tn(f);w=0;l=v;return w|0}function tp(a,b){a=a|0;b=b|0;if(c[a+56>>2]|0)return;Zn(a,b,0);return}function up(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;g=n;k=a+68|0;m=a+56|0;if((c[k>>2]|0)>>>0>=(c[m>>2]|0)>>>0)Un(a,4604);e=vo(a,40)|0;i=a+44|0;b=c[i>>2]|0;c[e>>2]=134234241;b=b+24|0;d=c[b>>2]|0;if(d|0)c[d+12>>2]=e;c[e+12>>2]=0;c[e+8>>2]=d;c[b>>2]=e;b=c[k>>2]|0;c[b>>2]=9;c[b+8>>2]=e;b=e+4|0;c[b>>2]=(c[b>>2]|0)+1;c[k>>2]=(c[k>>2]|0)+16;b=c[a+112>>2]|0;c[e+20>>2]=b;if(b|0){j=b+4|0;c[j>>2]=(c[j>>2]|0)+1}j=a+64|0;d=c[k>>2]|0;f=c[d+-8>>2]|0;b=c[j>>2]|0;d=d-b>>4;if(d>>>0<=2)jo(a,376,-3);e=b+(d+-3<<4)|0;b=b+(d+-1<<4)|0;d=b-e|0;if(d|0){c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];QQ(e+16|0,e|0,d|0)|0;c[e>>2]=c[g>>2];c[e+4>>2]=c[g+4>>2];c[e+8>>2]=c[g+8>>2];c[e+12>>2]=c[g+12>>2]}c[f>>2]=c[f>>2]&134217727|1476395008;d=c[a+172>>2]|0;g=f+20|0;b=c[g>>2]|0;c[g>>2]=d;if(d|0){g=d+4|0;c[g>>2]=(c[g>>2]|0)+1}if(b|0?(f=b+4|0,g=(c[f>>2]|0)+-1|0,c[f>>2]=g,(g|0)==0):0)tp(c[i>>2]|0,b);i=c[j>>2]|0;b=(c[k>>2]|0)-i>>4;b=b>>>0>2?i+(b+-3<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9)In(a,2130,-3,268963);b=c[b+8>>2]|0;if(!b)In(a,2130,-3,268963);d=a+304|0;fo(a,b,c[(c[d>>2]|0)+372>>2]|0,0);i=c[j>>2]|0;b=(c[k>>2]|0)-i>>4;b=b>>>0>1?i+(b+-2<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9)In(a,2130,-2,268963);b=c[b+8>>2]|0;if(!b)In(a,2130,-2,268963);fo(a,b,c[(c[d>>2]|0)+384>>2]|0,0);b=c[k>>2]|0;if(b>>>0>=(c[m>>2]|0)>>>0)Un(a,4244);i=b+16|0;c[k>>2]=i;c[b>>2]=0;h[b+8>>3]=0.0;m=c[j>>2]|0;b=i-m>>4;b=b>>>0>1?m+(b+-2<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9)In(a,2130,-2,268963);b=c[b+8>>2]|0;if(!b)In(a,2130,-2,268963);else{fo(a,b,c[(c[d>>2]|0)+188>>2]|0,1);l=n;return}}function vp(a,d,f,g,i){a=a|0;d=d|0;f=f|0;g=g|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;u=a+68|0;t=a+56|0;if((c[u>>2]|0)>>>0>=(c[t>>2]|0)>>>0)Un(a,4784);s=vo(a,64)|0;v=a+44|0;j=c[v>>2]|0;c[s>>2]=402655873;j=j+24|0;k=c[j>>2]|0;if(k|0)c[k+12>>2]=s;c[s+12>>2]=0;c[s+8>>2]=k;c[j>>2]=s;if(!s)Mn(a,268620,4797);j=c[u>>2]|0;c[j>>2]=9;c[j+8>>2]=s;j=s+4|0;c[j>>2]=(c[j>>2]|0)+1;j=c[u>>2]|0;k=j+16|0;c[u>>2]=k;l=c[a+120>>2]|0;c[s+20>>2]=l;if(l|0){r=l+4|0;c[r>>2]=(c[r>>2]|0)+1}if(k>>>0>=(c[t>>2]|0)>>>0)Un(a,4153);c[u>>2]=j+32;c[k>>2]=9;c[j+24>>2]=d;k=d+4|0;c[k>>2]=(c[k>>2]|0)+1;k=d+40|0;r=c[k>>2]|0;c[s+40>>2]=r;j=d+44|0;c[s+44>>2]=c[j>>2];l=d+48|0;c[s+48>>2]=c[l>>2];r=r+4|0;c[r>>2]=(c[r>>2]|0)+1;k=(c[k>>2]|0)+24|0;j=c[j>>2]|0;if(k>>>0<j>>>0)do{if(c[k>>2]&8|0){r=(c[k+8>>2]|0)+4|0;c[r>>2]=(c[r>>2]|0)+1}k=k+16|0}while(k>>>0<j>>>0);k=c[l>>2]|0;if(j>>>0<k>>>0)do{r=(c[j>>2]|0)+4|0;c[r>>2]=(c[r>>2]|0)+1;j=j+4|0}while(j>>>0<k>>>0);b[s+60>>1]=b[d+60>>1]|0;q=d+62|0;b[s+62>>1]=b[q>>1]|0;j=c[d>>2]|0;c[s>>2]=c[s>>2]&3|j;r=(j&256|0)==0;do if(!(j&262144)){c[s+52>>2]=g;c[s+56>>2]=f;p=g+4|0;c[p>>2]=(c[p>>2]|0)+1;p=f+4|0;c[p>>2]=(c[p>>2]|0)+1}else{if(!(j&524288)){c[s+52>>2]=g;c[s+56>>2]=g;p=g+4|0;c[p>>2]=(c[p>>2]|0)+2;break}if(!g)l=c[a+104>>2]|0;else l=g;n=vo(a,52)|0;j=c[v>>2]|0;c[n>>2]=-2147483519;j=j+24|0;k=c[j>>2]|0;if(k|0)c[k+12>>2]=n;c[n+12>>2]=0;c[n+8>>2]=k;c[j>>2]=n;j=c[u>>2]|0;if(j>>>0>=(c[t>>2]|0)>>>0)Un(a,4153);c[u>>2]=j+16;c[j>>2]=9;c[j+8>>2]=n;m=n+4|0;c[m>>2]=(c[m>>2]|0)+1;c[n+20>>2]=l;if(l|0){g=l+4|0;c[g>>2]=(c[g>>2]|0)+1}j=c[u>>2]|0;g=a+64|0;d=j-(c[g>>2]|0)|0;l=d>>4;f=l+-2|0;if(l>>>0<=1)jo(a,300,-2);k=c[(c[a+304>>2]|0)+352>>2]|0;if(j>>>0>=(c[t>>2]|0)>>>0)Un(a,4153);c[u>>2]=j+16;c[j>>2]=8;c[j+8>>2]=k;k=k+4|0;c[k>>2]=(c[k>>2]|0)+1;k=c[g>>2]|0;l=(c[u>>2]|0)-k>>4;j=((d|0)<32?l:0)+f|0;if(j>>>0>=l>>>0)jo(a,376,f);ro(a,k+(j<<4)|0,k+(l+-1<<4)|0)|0;k=c[g>>2]|0;l=(c[u>>2]|0)-k>>4;j=l+-2|0;if(l>>>0<=1)jo(a,376,-2);w=k+(j<<4)|0;d=k+(l+-1<<4)|0;f=c[w>>2]|0;j=c[k+(j<<4)+8>>2]|0;QQ(w|0,w+16|0,d-w|0)|0;c[d>>2]=2;k=(c[u>>2]|0)+-16|0;c[u>>2]=k;do if(f&8){f=j+4|0;w=(c[f>>2]|0)+-1|0;c[f>>2]=w;if(w|0)break;Yn(c[v>>2]|0,j);k=c[u>>2]|0}while(0);if(k>>>0>=(c[t>>2]|0)>>>0)Un(a,1093);j=c[g>>2]|0;l=k-j>>4;if(l>>>0<=3)jo(a,376,-4);w=j+(l+-4<<4)|0;c[u>>2]=k+16;c[k>>2]=c[w>>2];c[k+4>>2]=c[w+4>>2];c[k+8>>2]=c[w+8>>2];c[k+12>>2]=c[w+12>>2];if(c[k>>2]&8|0){w=(c[k+8>>2]|0)+4|0;c[w>>2]=(c[w>>2]|0)+1}w=c[g>>2]|0;j=(c[u>>2]|0)-w>>4;j=j>>>0>2?w+(j+-3<<4)|0:0;j=(j|0)==0?936:j;if((c[j>>2]|0)!=9)In(a,2130,-3,268963);k=c[j+8>>2]|0;if(!k)In(a,2130,-3,268963);po(a,-2,1);w=c[g>>2]|0;j=(c[u>>2]|0)-w>>4;j=j>>>0>1?w+(j+-2<<4)|0:0;j=(j|0)==0?936:j;if((c[j>>2]|0)==8?(o=c[j+8>>2]|0,(o|0)!=0):0)j=o;else p=49;do if((p|0)==49){Eo(a,-2)|0;w=c[g>>2]|0;j=(c[u>>2]|0)-w>>4;j=j>>>0>1?w+(j+-2<<4)|0:0;j=(j|0)==0?936:j;if((c[j>>2]|0)!=8){j=0;break}j=c[j+8>>2]|0}while(0);fo(a,k,j,0);k=c[u>>2]|0;if((k|0)==(c[g>>2]|0))Jn(a,268620,50337407,268636);j=k+-16|0;c[u>>2]=j;w=c[k+-16>>2]|0;k=c[k+-8>>2]|0;c[j>>2]=2;do if(w&8){p=k+4|0;w=(c[p>>2]|0)+-1|0;c[p>>2]=w;if(w|0)break;Yn(c[v>>2]|0,k);j=c[u>>2]|0}while(0);c[s+52>>2]=n;c[s+56>>2]=n;c[m>>2]=(c[m>>2]|0)+2;p=j+-16|0;c[u>>2]=p;w=c[j+-16>>2]|0;j=c[j+-8>>2]|0;c[p>>2]=2;if(!(w&8))break;p=j+4|0;w=(c[p>>2]|0)+-1|0;c[p>>2]=w;if(w|0)break;Yn(c[v>>2]|0,j)}while(0);o=a+64|0;n=a+304|0;m=0;while(1){g=e[34084+(m<<1)>>1]|0;j=c[u>>2]|0;d=j-(c[o>>2]|0)|0;w=d>>4;f=w+-1|0;if(!w){p=63;break}k=c[(c[n>>2]|0)+(g<<2)>>2]|0;if(j>>>0>=(c[t>>2]|0)>>>0){p=65;break}c[u>>2]=j+16;c[j>>2]=8;c[j+8>>2]=k;k=k+4|0;c[k>>2]=(c[k>>2]|0)+1;k=c[o>>2]|0;l=(c[u>>2]|0)-k>>4;j=((d|0)<16?l:0)+f|0;if(j>>>0>=l>>>0){p=67;break}d=ro(a,k+(j<<4)|0,k+(l+-1<<4)|0)|0;k=c[o>>2]|0;l=(c[u>>2]|0)-k>>4;j=l+-2|0;if(l>>>0<=1){p=69;break}f=k+(j<<4)|0;p=k+(l+-1<<4)|0;w=c[f>>2]|0;j=c[k+(j<<4)+8>>2]|0;QQ(f|0,f+16|0,p-f|0)|0;c[p>>2]=2;c[u>>2]=(c[u>>2]|0)+-16;if(w&8|0?(p=j+4|0,w=(c[p>>2]|0)+-1|0,c[p>>2]=w,(w|0)==0):0)Yn(c[v>>2]|0,j);if(!d){j=c[u>>2]|0;p=j+-16|0;c[u>>2]=p;w=c[j+-16>>2]|0;j=c[j+-8>>2]|0;c[p>>2]=2;if(w&8|0?(p=j+4|0,w=(c[p>>2]|0)+-1|0,c[p>>2]=w,(w|0)==0):0)Yn(c[v>>2]|0,j)}else{w=c[o>>2]|0;j=(c[u>>2]|0)-w>>4;j=j>>>0>2?w+(j+-3<<4)|0:0;j=(j|0)==0?936:j;if((c[j>>2]|0)!=9){p=76;break}j=c[j+8>>2]|0;if(!j){p=76;break}fo(a,j,c[(c[n>>2]|0)+(g<<2)>>2]|0,4)}m=m+1|0;if(m>>>0>=4){p=82;break}}if((p|0)==63)jo(a,300,-1);else if((p|0)==65)Un(a,4153);else if((p|0)==67)jo(a,376,f);else if((p|0)==69)jo(a,376,-2);else if((p|0)==76)In(a,2130,-3,268963);else if((p|0)==82){j=c[u>>2]|0;d=j-(c[o>>2]|0)|0;w=d>>4;f=w+-1|0;if(!w)jo(a,300,-1);k=c[(c[n>>2]|0)+376>>2]|0;if(j>>>0>=(c[t>>2]|0)>>>0)Un(a,4153);c[u>>2]=j+16;c[j>>2]=8;c[j+8>>2]=k;k=k+4|0;c[k>>2]=(c[k>>2]|0)+1;k=c[o>>2]|0;l=(c[u>>2]|0)-k>>4;j=((d|0)<16?l:0)+f|0;if(j>>>0>=l>>>0)jo(a,376,f);d=ro(a,k+(j<<4)|0,k+(l+-1<<4)|0)|0;k=c[o>>2]|0;l=(c[u>>2]|0)-k>>4;j=l+-2|0;if(l>>>0<=1)jo(a,376,-2);m=k+(j<<4)|0;p=k+(l+-1<<4)|0;w=c[m>>2]|0;j=c[k+(j<<4)+8>>2]|0;QQ(m|0,m+16|0,p-m|0)|0;c[p>>2]=2;c[u>>2]=(c[u>>2]|0)+-16;if(w&8|0?(p=j+4|0,w=(c[p>>2]|0)+-1|0,c[p>>2]=w,(w|0)==0):0)Yn(c[v>>2]|0,j);if(!d)l=e[q>>1]|0;else l=Bo(a,-1)|0;k=c[u>>2]|0;j=k+-16|0;c[u>>2]=j;w=c[k+-16>>2]|0;k=c[k+-8>>2]|0;c[j>>2]=2;if((w&8|0)!=0?(q=k+4|0,w=(c[q>>2]|0)+-1|0,c[q>>2]=w,(w|0)==0):0){Yn(c[v>>2]|0,k);j=c[u>>2]|0}if(j>>>0>=(c[t>>2]|0)>>>0)Un(a,4274);q=j+16|0;c[u>>2]=q;c[j>>2]=0;h[j+8>>3]=+(l>>>0);w=c[o>>2]|0;j=q-w>>4;j=j>>>0>2?w+(j+-3<<4)|0:0;j=(j|0)==0?936:j;if((c[j>>2]|0)!=9)In(a,2130,-3,268963);j=c[j+8>>2]|0;if(!j)In(a,2130,-3,268963);fo(a,j,c[(c[n>>2]|0)+328>>2]|0,4);do if(!((i|0)==0|r)){if((c[u>>2]|0)>>>0>=(c[t>>2]|0)>>>0)Un(a,4604);l=vo(a,40)|0;j=c[v>>2]|0;c[l>>2]=134234241;j=j+24|0;k=c[j>>2]|0;if(k|0)c[k+12>>2]=l;c[l+12>>2]=0;c[l+8>>2]=k;c[j>>2]=l;d=c[u>>2]|0;c[d>>2]=9;c[d+8>>2]=l;d=l+4|0;c[d>>2]=(c[d>>2]|0)+1;d=c[u>>2]|0;f=d+16|0;c[u>>2]=f;j=c[a+112>>2]|0;c[l+20>>2]=j;if(j|0){w=j+4|0;c[w>>2]=(c[w>>2]|0)+1}if(f>>>0>=(c[t>>2]|0)>>>0)Un(a,1093);j=c[o>>2]|0;k=f-j>>4;if(k>>>0<=2)jo(a,376,-3);w=j+(k+-3<<4)|0;c[u>>2]=d+32;c[f>>2]=c[w>>2];c[f+4>>2]=c[w+4>>2];c[f+8>>2]=c[w+8>>2];c[f+12>>2]=c[w+12>>2];if(c[f>>2]&8|0){w=(c[d+24>>2]|0)+4|0;c[w>>2]=(c[w>>2]|0)+1}w=c[o>>2]|0;j=(c[u>>2]|0)-w>>4;j=j>>>0>1?w+(j+-2<<4)|0:0;j=(j|0)==0?936:j;if((c[j>>2]|0)!=9)In(a,2130,-2,268963);j=c[j+8>>2]|0;if(!j)In(a,2130,-2,268963);fo(a,j,c[(c[n>>2]|0)+204>>2]|0,5);j=c[u>>2]|0;l=c[o>>2]|0;k=j-l>>4;k=k|0?l+(k+-1<<4)|0:0;k=(k|0)==0?936:k;do if((c[k>>2]|0)==9){k=c[k+8>>2]|0;if(!k){k=l;break}Pp(a,k);k=c[o>>2]|0;j=c[u>>2]|0}else k=l;while(0);j=j-k>>4;j=j>>>0>2?k+(j+-3<<4)|0:0;j=(j|0)==0?936:j;if((c[j>>2]|0)!=9)In(a,2130,-3,268963);j=c[j+8>>2]|0;if(!j)In(a,2130,-3,268963);else{fo(a,j,c[(c[n>>2]|0)+200>>2]|0,1);break}}while(0);if(c[s>>2]&65536|0){j=c[u>>2]|0;l=j-(c[o>>2]|0)>>4;if(l>>>0<=1)jo(a,300,-2);k=c[(c[n>>2]|0)+276>>2]|0;if(j>>>0>=(c[t>>2]|0)>>>0)Un(a,4153);c[u>>2]=j+16;c[j>>2]=8;c[j+8>>2]=k;d=k+4|0;c[d>>2]=(c[d>>2]|0)+1;d=a+232|0;j=c[d>>2]|0;k=c[u>>2]|0;if(k>>>0>=(c[t>>2]|0)>>>0)Un(a,4153);c[u>>2]=k+16;c[k>>2]=9;c[k+8>>2]=j;j=j+4|0;c[j>>2]=(c[j>>2]|0)+1;j=c[u>>2]|0;if(j>>>0>=(c[t>>2]|0)>>>0)Un(a,1111);if((j-(c[o>>2]|0)|0)<16)jo(a,1114,-1);w=j+-16|0;c[u>>2]=j+16;c[j>>2]=c[w>>2];c[j+4>>2]=c[w+4>>2];c[j+8>>2]=c[w+8>>2];c[j+12>>2]=c[w+12>>2];if(c[j>>2]&8|0){w=(c[j+8>>2]|0)+4|0;c[w>>2]=(c[w>>2]|0)+1}Fo(a,l+-2|0,896);j=c[u>>2]|0;l=j-(c[o>>2]|0)>>4;if(l>>>0<=1)jo(a,300,-2);k=c[(c[n>>2]|0)+268>>2]|0;if(j>>>0>=(c[t>>2]|0)>>>0)Un(a,4153);c[u>>2]=j+16;c[j>>2]=8;c[j+8>>2]=k;j=k+4|0;c[j>>2]=(c[j>>2]|0)+1;j=c[d>>2]|0;k=c[u>>2]|0;if(k>>>0>=(c[t>>2]|0)>>>0)Un(a,4153);c[u>>2]=k+16;c[k>>2]=9;c[k+8>>2]=j;j=j+4|0;c[j>>2]=(c[j>>2]|0)+1;j=c[u>>2]|0;if(j>>>0>=(c[t>>2]|0)>>>0)Un(a,1111);if((j-(c[o>>2]|0)|0)<16)jo(a,1114,-1);w=j+-16|0;c[u>>2]=j+16;c[j>>2]=c[w>>2];c[j+4>>2]=c[w+4>>2];c[j+8>>2]=c[w+8>>2];c[j+12>>2]=c[w+12>>2];if(c[j>>2]&8|0){w=(c[j+8>>2]|0)+4|0;c[w>>2]=(c[w>>2]|0)+1}Fo(a,l+-2|0,896)}j=c[u>>2]|0;d=j-(c[o>>2]|0)|0;w=d>>4;f=w+-1|0;if(!w)jo(a,300,-1);k=c[(c[n>>2]|0)+352>>2]|0;if(j>>>0>=(c[t>>2]|0)>>>0)Un(a,4153);c[u>>2]=j+16;c[j>>2]=8;c[j+8>>2]=k;k=k+4|0;c[k>>2]=(c[k>>2]|0)+1;k=c[o>>2]|0;l=(c[u>>2]|0)-k>>4;j=((d|0)<16?l:0)+f|0;if(j>>>0>=l>>>0)jo(a,376,f);d=ro(a,k+(j<<4)|0,k+(l+-1<<4)|0)|0;k=c[o>>2]|0;l=(c[u>>2]|0)-k>>4;j=l+-2|0;if(l>>>0<=1)jo(a,376,-2);s=k+(j<<4)|0;t=k+(l+-1<<4)|0;w=c[s>>2]|0;j=c[k+(j<<4)+8>>2]|0;QQ(s|0,s+16|0,t-s|0)|0;c[t>>2]=2;c[u>>2]=(c[u>>2]|0)+-16;do if(w&8|0){t=j+4|0;w=(c[t>>2]|0)+-1|0;c[t>>2]=w;if(w|0)break;Yn(c[v>>2]|0,j)}while(0);do if(d){w=c[o>>2]|0;j=(c[u>>2]|0)-w>>4;j=j>>>0>2?w+(j+-3<<4)|0:0;j=(j|0)==0?936:j;if((c[j>>2]|0)!=9)In(a,2130,-3,268963);j=c[j+8>>2]|0;if(!j)In(a,2130,-3,268963);else{fo(a,j,c[(c[n>>2]|0)+352>>2]|0,4);break}}else{j=c[u>>2]|0;t=j+-16|0;c[u>>2]=t;w=c[j+-16>>2]|0;j=c[j+-8>>2]|0;c[t>>2]=2;if(!(w&8))break;t=j+4|0;w=(c[t>>2]|0)+-1|0;c[t>>2]=w;if(w|0)break;Yn(c[v>>2]|0,j)}while(0);j=c[u>>2]|0;w=c[o>>2]|0;k=j-w>>4;k=k>>>0>1?w+(k+-2<<4)|0:0;k=(k|0)==0?936:k;do if((c[k>>2]|0)==9){k=c[k+8>>2]|0;if(!k)break;Pp(a,k);j=c[u>>2]|0}while(0);a=j+-16|0;c[u>>2]=a;w=c[j+-16>>2]|0;j=c[j+-8>>2]|0;c[a>>2]=2;if(!(w&8))return;u=j+4|0;w=(c[u>>2]|0)+-1|0;c[u>>2]=w;if(w|0)return;Yn(c[v>>2]|0,j);return}}function wp(b,d){b=b|0;d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=b+68|0;s=b+72|0;j=c[s>>2]|0;k=j+32|0;f=c[k>>2]|0;a:do if(f|0){h=b+44|0;l=j+28|0;while(1){g=c[f+16>>2]|0;if((g&47|0)==33)break;if(g&128|0?(i=c[l>>2]|0,p=c[i+20>>2]|0,c[l>>2]=p,p=p+4|0,c[p>>2]=(c[p>>2]|0)+1,p=i+4|0,q=(c[p>>2]|0)+-1|0,c[p>>2]=q,(q|0)==0):0)eo(c[h>>2]|0,i);p=f;f=c[f>>2]|0;c[k>>2]=f;q=(c[h>>2]|0)+40|0;c[p>>2]=c[q>>2];c[q>>2]=p;if(!f)break a}jp(b,(c[r>>2]|0)+-16|0,6);b=0;return b|0}while(0);if((j|0)==(d|0)){b=1;return b|0}q=b+76|0;if((c[q>>2]|0)>>>0<=1){o=b+84|0;p=c[o>>2]|0;co(p);d=p+72|0;g=c[d>>2]|0;n=g+20|0;h=c[n>>2]|0;c[d>>2]=h;m=p+76|0;c[m>>2]=(c[m>>2]|0)+-1;m=p+44|0;f=(c[m>>2]|0)+36|0;c[n>>2]=c[f>>2];c[f>>2]=g;f=c[r>>2]|0;g=f+-16|0;n=p+52|0;h=(c[n>>2]|0)+(c[h+44>>2]|0)|0;if(c[g>>2]&8|0){r=(c[f+-8>>2]|0)+4|0;c[r>>2]=(c[r>>2]|0)+1}if(c[h>>2]&8){f=c[h+8>>2]|0;c[h>>2]=c[g>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[h+12>>2]=c[g+12>>2];l=f+4|0;r=(c[l>>2]|0)+-1|0;c[l>>2]=r;if(!r)Yn(c[b+44>>2]|0,f)}else{c[h>>2]=c[g>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[h+12>>2]=c[g+12>>2]}l=c[d>>2]|0;j=c[l+16>>2]|0;h=c[l+40>>2]|0;f=(c[n>>2]|0)+h|0;i=p+64|0;c[i>>2]=f;h=(16-h+(c[l+44>>2]|0)|0)>>>4;j=e[j+60>>1]|0;k=p+68|0;g=c[k>>2]|0;d=g-f>>4;if(h>>>0<d>>>0){f=g+(h-d<<4)|0;do{r=c[g+-16>>2]|0;h=c[g+-8>>2]|0;g=g+-16|0;c[g>>2]=2;if(r&8|0?(d=h+4|0,r=(c[d>>2]|0)+-1|0,c[d>>2]=r,(r|0)==0):0)bo(c[m>>2]|0,h)}while((g|0)!=(f|0));c[k>>2]=f;g=c[m>>2]|0;if(c[g+32>>2]|0){Tn(g);f=c[k>>2]|0}}else{f=f+(h<<4)|0;c[k>>2]=f}g=c[i>>2]|0;h=f-g>>4;if(j>>>0<h>>>0){h=f+(j-h<<4)|0;do{r=c[f+-16>>2]|0;g=c[f+-8>>2]|0;f=f+-16|0;c[f>>2]=2;if(r&8|0?(j=g+4|0,r=(c[j>>2]|0)+-1|0,c[j>>2]=r,(r|0)==0):0)bo(c[m>>2]|0,g)}while((f|0)!=(h|0));c[k>>2]=h;f=c[m>>2]|0;if(c[f+32>>2]|0)Tn(f)}else c[k>>2]=g+(j<<4);c[p+56>>2]=(c[n>>2]|0)+(c[l+48>>2]|0);if(!(c[s>>2]|0))g=b+44|0;else{g=b+44|0;do{co(b);m=c[s>>2]|0;l=m+20|0;r=c[l>>2]|0;c[s>>2]=r;c[q>>2]=(c[q>>2]|0)+-1;n=(c[g>>2]|0)+36|0;c[l>>2]=c[n>>2];c[n>>2]=m}while((r|0)!=0)}c[b+64>>2]=c[b+52>>2];Gp(b,0);a[b+49>>0]=5;f=c[g>>2]|0;if(c[f+32>>2]|0)Tn(f);c[o>>2]=0;s=p+4|0;b=(c[s>>2]|0)+-1|0;c[s>>2]=b;if(!b)tp(c[g>>2]|0,p);a[p+49>>0]=2;g=(c[g>>2]|0)+132|0;f=c[g>>2]|0;if(!f){h=0;f=0}else{h=c[f+96>>2]|0;f=c[f+92>>2]|0}c[p+92>>2]=f;c[p+96>>2]=h;c[g>>2]=p;b=0;return b|0}f=c[(c[s>>2]|0)+52>>2]|0;b:do if(f&36|0){h=c[r>>2]|0;d=b+64|0;g=c[d>>2]|0;p=h-g>>4;p=p|0?g+(p+-1<<4)|0:0;if(447>>>(c[((p|0)==0?936:p)>>2]|0)&1|0){if(f&32|0)Ho(b,268650,507);if((h|0)==(g|0))Jn(b,268620,50337407,268636);f=h+-16|0;c[r>>2]=f;p=c[h+-16>>2]|0;g=c[h+-8>>2]|0;c[f>>2]=2;if((p&8|0)!=0?(l=g+4|0,p=(c[l>>2]|0)+-1|0,c[l>>2]=p,(p|0)==0):0){Yn(c[b+44>>2]|0,g);f=c[r>>2]|0}if(f>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4361);c[r>>2]=f+16;if(c[s>>2]|0?(m=c[d>>2]|0,p=m+-16|0,c[f>>2]=c[p>>2],c[f+4>>2]=c[p+4>>2],c[f+8>>2]=c[p+8>>2],c[f+12>>2]=c[p+12>>2],c[p>>2]&8|0):0){p=(c[m+-8>>2]|0)+4|0;c[p>>2]=(c[p>>2]|0)+1}}p=c[d>>2]|0;f=(c[r>>2]|0)-p>>4;f=f|0?p+(f+-1<<4)|0:0;f=(f|0)==0?936:f;if(((c[f>>2]|0)==9?(n=c[f+8>>2]|0,n|0):0)?(o=c[b+180>>2]|0,o|0):0){f=1e4;g=n;while(1){if((g|0)==(o|0))break;if(!f)break b;g=c[g+20>>2]|0;if(!g)break b;else f=f+-1|0}if(c[n>>2]&128|0)Io(b,b,0,0,n,3);Jo(b,104)}}while(0);m=b+52|0;g=(c[m>>2]|0)+(c[(c[(c[s>>2]|0)+20>>2]|0)+44>>2]|0)|0;f=c[r>>2]|0;h=f+-16|0;if(c[h>>2]&8|0){p=(c[f+-8>>2]|0)+4|0;c[p>>2]=(c[p>>2]|0)+1}if(c[g>>2]&8){f=c[g+8>>2]|0;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];c[g+8>>2]=c[h+8>>2];c[g+12>>2]=c[h+12>>2];o=f+4|0;p=(c[o>>2]|0)+-1|0;c[o>>2]=p;if(!p)Yn(c[b+44>>2]|0,f)}else{c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];c[g+8>>2]=c[h+8>>2];c[g+12>>2]=c[h+12>>2]}co(b);h=c[s>>2]|0;f=h+20|0;l=c[f>>2]|0;c[s>>2]=l;c[q>>2]=(c[q>>2]|0)+-1;k=b+44|0;j=(c[k>>2]|0)+36|0;c[f>>2]=c[j>>2];c[j>>2]=h;j=c[l+16>>2]|0;h=c[l+40>>2]|0;f=(c[m>>2]|0)+h|0;i=b+64|0;c[i>>2]=f;h=(16-h+(c[l+44>>2]|0)|0)>>>4;j=e[j+60>>1]|0;g=c[r>>2]|0;d=g-f>>4;if(h>>>0<d>>>0){f=g+(h-d<<4)|0;do{s=c[g+-16>>2]|0;h=c[g+-8>>2]|0;g=g+-16|0;c[g>>2]=2;if(s&8|0?(q=h+4|0,s=(c[q>>2]|0)+-1|0,c[q>>2]=s,(s|0)==0):0)bo(c[k>>2]|0,h)}while((g|0)!=(f|0));c[r>>2]=f;g=c[k>>2]|0;if(c[g+32>>2]|0){Tn(g);f=c[r>>2]|0}}else{f=f+(h<<4)|0;c[r>>2]=f}g=c[i>>2]|0;h=f-g>>4;if(j>>>0<h>>>0){h=f+(j-h<<4)|0;do{s=c[f+-16>>2]|0;g=c[f+-8>>2]|0;f=f+-16|0;c[f>>2]=2;if(s&8|0?(q=g+4|0,s=(c[q>>2]|0)+-1|0,c[q>>2]=s,(s|0)==0):0)bo(c[k>>2]|0,g)}while((f|0)!=(h|0));c[r>>2]=h;f=c[k>>2]|0;if(c[f+32>>2]|0)Tn(f)}else c[r>>2]=g+(j<<4);c[b+56>>2]=(c[m>>2]|0)+(c[l+48>>2]|0);b=0;return b|0}function xp(a){a=a|0;var b=0,d=0,e=0,f=0;d=c[a+44>>2]|0;e=d+44|0;f=c[e>>2]|0;c[e>>2]=f+-1;if((f|0)<1)Ln(d,2);e=d+4|0;f=d+16|0;b=hg[c[e>>2]&63](c[f>>2]|0,20)|0;if(b|0){a=b;return a|0}Ln(d,0);b=hg[c[e>>2]&63](c[f>>2]|0,20)|0;if(b|0){a=b;return a|0}Ln(d,0);b=hg[c[e>>2]&63](c[f>>2]|0,20)|0;if(b|0){a=b;return a|0}Ln(d,1);b=hg[c[e>>2]&63](c[f>>2]|0,20)|0;if(b|0){a=b;return a|0}Ln(d,1);b=hg[c[e>>2]&63](c[f>>2]|0,20)|0;if(b|0){a=b;return a|0}Ln(d,1);b=hg[c[e>>2]&63](c[f>>2]|0,20)|0;if(b|0){a=b;return a|0}Ln(d,1);b=hg[c[e>>2]&63](c[f>>2]|0,20)|0;if(b|0){a=b;return a|0}Ln(d,1);b=hg[c[e>>2]&63](c[f>>2]|0,20)|0;if(b|0){a=b;return a|0}Ln(d,1);b=hg[c[e>>2]&63](c[f>>2]|0,20)|0;if(b|0){a=b;return a|0}Ln(d,1);b=hg[c[e>>2]&63](c[f>>2]|0,20)|0;if(b|0){a=b;return a|0}Ln(d,1);b=hg[c[e>>2]&63](c[f>>2]|0,20)|0;if(!b)Mn(a,269480,144);else{a=b;return a|0}return 0}function yp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;o=l;l=l+16|0;m=o;n=a+72|0;e=c[n>>2]|0;k=e+32|0;f=c[k>>2]|0;if(!f)ko(a,269377,1511);i=a+44|0;g=e+28|0;e=f;while(1){f=c[e+16>>2]|0;if((f&47|0)==33){e=4;break}if((f&15|0)==2&(f>>>8|0)==(b|0)){e=6;break}if(f&128|0?(j=c[g>>2]|0,p=c[j+20>>2]|0,c[g>>2]=p,p=p+4|0,c[p>>2]=(c[p>>2]|0)+1,p=j+4|0,f=(c[p>>2]|0)+-1|0,c[p>>2]=f,(f|0)==0):0)eo(c[i>>2]|0,j);f=e;e=c[e>>2]|0;c[k>>2]=e;p=(c[i>>2]|0)+40|0;c[f>>2]=c[p>>2];c[p>>2]=f;if(!e){e=11;break}}if((e|0)==4){c[m>>2]=0;h[m+8>>3]=+(b>>>0);jp(a,m,d);l=o;return}else if((e|0)==6){p=c[n>>2]|0;c[p+36>>2]=(c[(c[p+32>>2]|0)+8>>2]|0)+(((d|0)==5&1)<<2);l=o;return}else if((e|0)==11)ko(a,269377,1511)}function zp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=b>>>8;j=b>>>16;m=a+68|0;e=c[m>>2]|0;if(e>>>0>=(c[a+56>>2]|0)>>>0)Un(a,1093);i=a+64|0;b=c[i>>2]|0;if(j>>>0>=e-b>>4>>>0)jo(a,376,j);k=b+(j<<4)|0;c[m>>2]=e+16;c[e>>2]=c[k>>2];c[e+4>>2]=c[k+4>>2];c[e+8>>2]=c[k+8>>2];c[e+12>>2]=c[k+12>>2];if(c[e>>2]&8|0){k=(c[e+8>>2]|0)+4|0;c[k>>2]=(c[k>>2]|0)+1}f=c[m>>2]|0;e=c[i>>2]|0;if(j>>>0>=f-e>>4>>>0)jo(a,376,j);h=e+(j<<4)|0;k=c[h>>2]|0;b=c[e+(j<<4)+8>>2]|0;c[h>>2]=2;if((k&8|0)!=0?(h=b+4|0,k=(c[h>>2]|0)+-1|0,c[h>>2]=k,(k|0)==0):0){Yn(c[a+44>>2]|0,b);e=c[i>>2]|0;f=c[m>>2]|0}b=j+1|0;if(b>>>0>=f-e>>4>>>0)jo(a,376,b);h=e+(b<<4)|0;k=c[h>>2]|0;b=c[e+(b<<4)+8>>2]|0;c[h>>2]=2;if(k&8|0?(h=b+4|0,k=(c[h>>2]|0)+-1|0,c[h>>2]=k,(k|0)==0):0)Yn(c[a+44>>2]|0,b);k=a+44|0;b=(c[k>>2]|0)+40|0;e=c[b>>2]|0;if(!e)e=xp(a)|0;else c[b>>2]=c[e>>2];g=e+16|0;c[g>>2]=1;h=e+4|0;c[h>>2]=0;c[e+8>>2]=d;c[e+12>>2]=((c[i>>2]|0)-(c[a+52>>2]|0)>>4)+j;f=c[a+72>>2]|0;i=f+32|0;c[e>>2]=c[i>>2];c[i>>2]=e;b=l<<4;b=b&16|(b&32|1);if(l&3|0)c[g>>2]=b;if(!(l&4)){if(l&8|0){h=f+28|0;if(!(c[h>>2]|0))ip(a,f);to(a,-1);g=c[(c[m>>2]|0)+-8>>2]|0;b=vo(a,48)|0;e=c[k>>2]|0;c[b>>2]=2013266049;e=e+24|0;f=c[e>>2]|0;if(f|0)c[f+12>>2]=b;c[b+12>>2]=0;c[b+8>>2]=f;c[e>>2]=b;c[b+40>>2]=g;a=g+4|0;c[a>>2]=(c[a>>2]|0)+1;c[b+44>>2]=1;c[b+20>>2]=c[h>>2];c[h>>2]=b;a=b+4|0;c[a>>2]=(c[a>>2]|0)+1;a=(c[i>>2]|0)+16|0;c[a>>2]=c[a>>2]|128}}else{c[g>>2]=b|64;c[h>>2]=c[(c[m>>2]|0)+-8>>2]}b=c[m>>2]|0;a=b+-16|0;c[m>>2]=a;m=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[a>>2]=2;if(!(m&8))return;a=b+4|0;m=(c[a>>2]|0)+-1|0;c[a>>2]=m;if(m|0)return;Yn(c[k>>2]|0,b);return}function Ap(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0;b=c[a+72>>2]|0;d=b+32|0;g=c[d>>2]|0;i=g+16|0;f=c[i>>2]|0;c[i>>2]=f&-17;j=c[g+8>>2]|0;if(!(f&32)){if(f&128|0?(i=b+28|0,e=c[i>>2]|0,f=c[e+20>>2]|0,c[i>>2]=f,f=f+4|0,c[f>>2]=(c[f>>2]|0)+1,f=e+4|0,i=(c[f>>2]|0)+-1|0,c[f>>2]=i,(i|0)==0):0)eo(c[a+44>>2]|0,e);c[d>>2]=c[g>>2];i=(c[a+44>>2]|0)+40|0;c[g>>2]=c[i>>2];c[i>>2]=g;j=j+4|0;return j|0}f=a+52|0;d=c[f>>2]|0;g=g+12|0;b=c[g>>2]|0;l=d+(b<<4)|0;k=c[l>>2]|0;e=c[d+(b<<4)+8>>2]|0;c[l>>2]=2;if((k&8|0)!=0?(k=e+4|0,l=(c[k>>2]|0)+-1|0,c[k>>2]=l,(l|0)==0):0){Yn(c[a+44>>2]|0,e);d=c[f>>2]|0;b=c[g>>2]|0}b=d+(b<<4)|0;k=b+16|0;l=c[b+16>>2]|0;b=c[b+24>>2]|0;c[k>>2]=0;h[k+8>>3]=7.0;if(l&8|0?(k=b+4|0,l=(c[k>>2]|0)+-1|0,c[k>>2]=l,(l|0)==0):0)Yn(c[a+44>>2]|0,b);c[i>>2]=c[i>>2]&-33;l=j+4|0;return l|0}function Bp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0;e=c[a+72>>2]|0;f=e+32|0;i=c[f>>2]|0;j=i+16|0;b=c[j>>2]|0;if(b&128){k=e+28|0;d=c[k>>2]|0;l=c[d+20>>2]|0;c[k>>2]=l;b=b&-129;c[j>>2]=b;l=l+4|0;c[l>>2]=(c[l>>2]|0)+1;l=d+4|0;k=(c[l>>2]|0)+-1|0;c[l>>2]=k;if(!k){tp(c[a+44>>2]|0,d);b=c[j>>2]|0}}if(!(b&32)){b=c[f>>2]|0;if(c[b+16>>2]&128|0?(l=e+28|0,g=c[l>>2]|0,k=c[g+20>>2]|0,c[l>>2]=k,k=k+4|0,c[k>>2]=(c[k>>2]|0)+1,k=g+4|0,l=(c[k>>2]|0)+-1|0,c[k>>2]=l,(l|0)==0):0)eo(c[a+44>>2]|0,g);c[f>>2]=c[b>>2];l=(c[a+44>>2]|0)+40|0;c[b>>2]=c[l>>2];c[l>>2]=b;return}f=a+52|0;d=c[f>>2]|0;g=i+12|0;b=c[g>>2]|0;k=d+(b<<4)|0;l=c[k>>2]|0;e=c[d+(b<<4)+8>>2]|0;c[k>>2]=2;if((l&8|0)!=0?(k=e+4|0,l=(c[k>>2]|0)+-1|0,c[k>>2]=l,(l|0)==0):0){Yn(c[a+44>>2]|0,e);d=c[f>>2]|0;b=c[g>>2]|0}b=d+(b<<4)|0;k=b+16|0;l=c[b+16>>2]|0;b=c[b+24>>2]|0;c[k>>2]=0;h[k+8>>3]=7.0;if(l&8|0?(k=b+4|0,l=(c[k>>2]|0)+-1|0,c[k>>2]=l,(l|0)==0):0)Yn(c[a+44>>2]|0,b);c[j>>2]=c[j>>2]&-33;return}function Cp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0;f=(c[a+64>>2]|0)+(b>>>8<<4)+16|0;b=~~+h[f+8>>3]>>>0;f=f+-16|0;switch(b|0){case 7:{b=c[a+72>>2]|0;e=b+32|0;f=c[e>>2]|0;if(c[f+16>>2]&128|0?(d=b+28|0,g=c[d>>2]|0,b=c[g+20>>2]|0,c[d>>2]=b,b=b+4|0,c[b>>2]=(c[b>>2]|0)+1,b=g+4|0,d=(c[b>>2]|0)+-1|0,c[b>>2]=d,(d|0)==0):0)eo(c[a+44>>2]|0,g);c[e>>2]=c[f>>2];a=(c[a+44>>2]|0)+40|0;c[f>>2]=c[a>>2];c[a>>2]=f;a=0;return a|0}case 6:{b=a+68|0;e=c[b>>2]|0;if(e>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4153);c[b>>2]=e+16;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];if(c[f>>2]&8|0){g=(c[f+8>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}a=(wp(a,d)|0)!=0&1;return a|0}case 5:case 4:{yp(a,~~+h[f+8>>3]>>>0,b);a=0;return a|0}default:{Ep(c[a+44>>2]|0,b,f);ep(a)}}return 0}function Dp(a){a=a|0;Jo(a,105);return}function Ep(a,b,d){a=a|0;b=b|0;d=d|0;c[a+84>>2]=b;b=a+96|0;c[b>>2]=c[d>>2];c[b+4>>2]=c[d+4>>2];c[b+8>>2]=c[d+8>>2];c[b+12>>2]=c[d+12>>2];if(!(c[d>>2]&8))return;d=(c[d+8>>2]|0)+4|0;c[d>>2]=(c[d>>2]|0)+1;return}function Fp(b,d,e,f,g,i,j,k){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;Q=l;l=l+48|0;B=Q+32|0;M=Q+8|0;P=Q+4|0;N=Q;O=d&8;w=d&16;D=d&32;J=d&64;z=d&128;y=d&256;v=d&1;C=d&2;E=d&4;K=d&512;L=c[f+16>>2]|0;do if(c[e>>2]&4194304){if((c[(c[b+304>>2]|0)+328>>2]|0)!=(f|0)){if((L|0)==-1){I=0;H=0;F=0;G=0;x=23;break}if(L>>>0<(c[e+40>>2]|0)>>>0){I=0;H=0;F=0;G=0;x=23;break}if((K|0)!=0|(c[e+44>>2]|0)==0){I=0;H=0;F=L+1|0;G=0;x=23;break}else break}if(J){u=c[e+40>>2]|0;o=b+64|0;m=c[o>>2]|0;n=m+(g<<4)|0;if(!(c[n>>2]|0))s=+h[m+(g<<4)+8>>3];else s=+ho(b,n);r=~~s>>>0;t=+(r>>>0);if(t!=s)Jn(b,268713,50334677,268733);q=b+68|0;m=c[q>>2]|0;if(m>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4274);I=m+16|0;c[q>>2]=I;c[m>>2]=0;h[m+8>>3]=t;n=c[o>>2]|0;o=I-n>>4;if(!o)jo(b,376,-1);p=n+(o+-1<<4)|0;m=((g|0)<0?o:0)+g|0;if(m>>>0>=o>>>0)jo(b,376,g);H=n+(m<<4)|0;I=c[H>>2]|0;m=c[n+(m<<4)+8>>2]|0;c[H>>2]=c[p>>2];c[H+4>>2]=c[p+4>>2];c[H+8>>2]=c[p+8>>2];c[H+12>>2]=c[p+12>>2];c[p>>2]=2;c[q>>2]=(c[q>>2]|0)+-16;if(I&8|0?(H=m+4|0,I=(c[H>>2]|0)+-1|0,c[H>>2]=I,(I|0)==0):0)Yn(c[b+44>>2]|0,m);if(r>>>0<u>>>0){m=(d&9|0)==8;if((K|0)!=0|(c[e+44>>2]|0)==0){I=u;H=r;v=m?1:v;F=0;G=m&1;x=23}}else{I=u;H=r;F=0;G=0;x=23}}else{I=0;H=0;F=0;G=0;x=23}}else{I=0;H=0;F=0;G=0;x=23}while(0);a:do if((x|0)==23){b:do if(go(b,e,f,L,M,1)|0){A=(w|0)!=0;do if(A){m=c[M>>2]|0;n=(m&2|0)!=0;if(!C)if(n){B=M;break}else{x=76;break}else if(n){x=76;break}else{B=M;break}}else x=76;while(0);c:do if((x|0)==76){do if(D|0){m=c[M>>2]|0;n=(m&4|0)!=0;if(!E)if(n){B=M;break c}else break;else if(n)break;else{B=M;break c}}while(0);if(J|0){m=c[M>>2]|0;if(m&8|0){B=M;break}n=c[b+64>>2]|0;o=(c[b+68>>2]|0)-n>>4;if(!o)jo(b,376,-1);m=((g|0)<0?o:0)+g|0;if(m>>>0>=o>>>0)jo(b,376,g);if(!(mp(0,n+(o+-1<<4)|0,n+(m<<4)|0,1)|0)){B=M;m=c[M>>2]|0;break}}do if(O|0){m=c[M>>2]|0;if(m&8|0){B=M;break c}n=(m&1|0)!=0;if(!v)if(n){B=M;break c}else break;else if(n)break;else{B=M;break c}}while(0);if(y|0){m=c[M>>2]|0;if(!(m&8)){B=M;break}if((c[M+8>>2]|0)!=(j|0)){B=M;break}}if(!z)break b;m=c[M>>2]|0;if((m&8|0)!=0?(c[M+4>>2]|0)==(i|0):0)break b;else B=M}while(0);q=m&4|K;do if(!q){if((d&36|0)==36)break a;if(A){n=(C|0)!=0;if(!(m&2))if(n)break a;else break;else if(n)break;else break a}}while(0);u=(y|0)!=0;w=(z|0)!=0;do if(!(d&384)){o=(J|0)!=0;p=(O|0)!=0;if(d&72){n=(q|0)!=0;if(!(m&8)){if(n)break;n=(m&1|0)==0;if((v|0)!=0&(p&n))break a;if(!(o&n))break;n=c[b+64>>2]|0;o=(c[b+68>>2]|0)-n>>4;if(!o)jo(b,376,-1);m=((g|0)<0?o:0)+g|0;if(m>>>0>=o>>>0)jo(b,376,g);if(!(mp(0,n+(o+-1<<4)|0,n+(m<<4)|0,1)|0))break a;m=c[B>>2]|0;break}else{if(!n)break a;q=M+12|0;n=c[q>>2]|0;if((n|0)<0)break a;r=e+16|0;o=c[r>>2]|0;z=o+(n<<4)|0;m=c[z>>2]|0;c[z>>2]=0;if((m|0)!=0?(y=m+4|0,z=(c[y>>2]|0)+-1|0,c[y>>2]=z,(z|0)==0):0){eo(c[b+44>>2]|0,m);m=c[r>>2]|0;p=m;n=c[q>>2]|0}else{p=o;m=o}z=p+(n<<4)+4|0;o=c[z>>2]|0;c[z>>2]=0;if((o|0)!=0?(y=o+4|0,z=(c[y>>2]|0)+-1|0,c[y>>2]=z,(z|0)==0):0){eo(c[b+44>>2]|0,o);m=c[r>>2]|0;o=m;n=c[q>>2]|0}else o=p;c[o+(n<<4)>>2]=2;z=e+24|0;m=m+((c[z>>2]|0)*20|0)+n|0;a[m>>0]=a[m>>0]&-2;m=(c[r>>2]|0)+((c[z>>2]|0)*20|0)+(c[q>>2]|0)|0;a[m>>0]=a[m>>0]&-9;m=c[B>>2]&-10;c[B>>2]=m;break}}}else{n=(q|0)!=0;if(m&8|0){if(n)break;if(u?(c[M+8>>2]|0)!=(j|0):0)break a;if(!w)break;if((c[M+4>>2]|0)==(i|0))break;else break a}if(!n)break a;if((c[M+20>>2]|0)>-1){To(b,e);z=b+68|0;m=c[z>>2]|0;y=m+-16|0;c[z>>2]=y;z=c[m+-16>>2]|0;m=c[m+-8>>2]|0;c[y>>2]=2;if(z&8|0?(y=m+4|0,z=(c[y>>2]|0)+-1|0,c[y>>2]=z,(z|0)==0):0)Yn(c[b+44>>2]|0,m);go(b,e,f,L,M,1)|0}q=M+12|0;n=c[q>>2]|0;if((n|0)<0)break a;r=e+16|0;o=c[r>>2]|0;y=o+(n<<4)|0;z=c[y>>2]|0;m=c[o+(n<<4)+8>>2]|0;c[y>>2]=2;if((z&8|0)!=0?(y=m+4|0,z=(c[y>>2]|0)+-1|0,c[y>>2]=z,(z|0)==0):0){bo(c[b+44>>2]|0,m);m=c[r>>2]|0;p=m;n=c[q>>2]|0}else{p=o;m=o}c[p+(n<<4)>>2]=0;c[p+(n<<4)+4>>2]=0;z=e+24|0;m=m+((c[z>>2]|0)*20|0)+n|0;a[m>>0]=a[m>>0]&-2;m=(c[r>>2]|0)+((c[z>>2]|0)*20|0)+(c[q>>2]|0)|0;a[m>>0]=a[m>>0]|8;m=c[B>>2]&-10|8;c[B>>2]=m}while(0);do if(A)if(!C){m=m&-3;break}else{m=m|2;break}while(0);do if(D)if(!E){m=m&-5;break}else{m=m|4;break}while(0);do if(O)if(!v){m=m&-2;break}else{m=m|1;break}while(0);r=c[M+20>>2]|0;do if((r|0)>-1){if((m|0)!=7){To(b,e);E=b+68|0;n=c[E>>2]|0;D=n+-16|0;c[E>>2]=D;E=c[n+-16>>2]|0;n=c[n+-8>>2]|0;c[D>>2]=2;if(E&8|0?(D=n+4|0,E=(c[D>>2]|0)+-1|0,c[D>>2]=E,(E|0)==0):0)Yn(c[b+44>>2]|0,n);go(b,e,f,L,M,1)|0;break}n=c[b+64>>2]|0;i=(c[b+68>>2]|0)-n>>4;m=((g|0)<0?i:0)+g|0;if(m>>>0>=i>>>0)jo(b,376,g);p=n+(m<<4)|0;o=c[e+24>>2]|0;o=(c[e+16>>2]|0)+(o*21|0)+(0-o&7)|0;q=o+(r<<4)|0;if(c[p>>2]&8|0){i=(c[n+(m<<4)+8>>2]|0)+4|0;c[i>>2]=(c[i>>2]|0)+1}if(!(c[q>>2]&8)){c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];x=202;break b}m=c[o+(r<<4)+8>>2]|0;c[q>>2]=c[p>>2];c[q+4>>2]=c[p+4>>2];c[q+8>>2]=c[p+8>>2];c[q+12>>2]=c[p+12>>2];j=m+4|0;i=(c[j>>2]|0)+-1|0;c[j>>2]=i;if(i|0){x=202;break b}Yn(c[b+44>>2]|0,m);x=202;break b}while(0);o=M+12|0;n=c[o>>2]|0;if((n|0)<=-1){if((c[(c[b+304>>2]|0)+328>>2]|0)==(f|0)?c[e>>2]&4194304|0:0){if((c[B>>2]^m)&6|0)break a;c[e+44>>2]=m&1^1}}else a[(c[e+16>>2]|0)+((c[e+24>>2]|0)*20|0)+n>>0]=m;if(u){m=c[o>>2]|0;if((m|0)<0)break a;E=(c[e+16>>2]|0)+(m<<4)+4|0;m=c[E>>2]|0;c[E>>2]=j;if(j|0){j=j+4|0;c[j>>2]=(c[j>>2]|0)+1}if(m|0?(E=m+4|0,j=(c[E>>2]|0)+-1|0,c[E>>2]=j,(j|0)==0):0)tp(c[b+44>>2]|0,m)}if(w){m=c[o>>2]|0;if((m|0)<0)break a;j=(c[e+16>>2]|0)+(m<<4)|0;m=c[j>>2]|0;c[j>>2]=i;if(i|0){i=i+4|0;c[i>>2]=(c[i>>2]|0)+1}if(m|0?(j=m+4|0,i=(c[j>>2]|0)+-1|0,c[j>>2]=i,(i|0)==0):0)tp(c[b+44>>2]|0,m)}if(J){n=c[o>>2]|0;if((n|0)<=-1){if((c[(c[b+304>>2]|0)+328>>2]|0)!=(f|0))break a;if(!(c[e>>2]&4194304))break a;c[e+40>>2]=H;x=202;break}o=c[b+64>>2]|0;i=(c[b+68>>2]|0)-o>>4;m=((g|0)<0?i:0)+g|0;if(m>>>0>=i>>>0)jo(b,376,g);q=o+(m<<4)|0;p=c[e+16>>2]|0;r=p+(n<<4)|0;if(c[q>>2]&8|0){i=(c[o+(m<<4)+8>>2]|0)+4|0;c[i>>2]=(c[i>>2]|0)+1}if(!(c[r>>2]&8)){c[r>>2]=c[q>>2];c[r+4>>2]=c[q+4>>2];c[r+8>>2]=c[q+8>>2];c[r+12>>2]=c[q+12>>2];x=202;break}m=c[p+(n<<4)+8>>2]|0;c[r>>2]=c[q>>2];c[r+4>>2]=c[q+4>>2];c[r+8>>2]=c[q+8>>2];c[r+12>>2]=c[q+12>>2];j=m+4|0;i=(c[j>>2]|0)+-1|0;c[j>>2]=i;if(!i){Yn(c[b+44>>2]|0,m);x=202}else x=202}else x=202}else{o=c[e>>2]|0;if(!(o&128|K))if(!k){P=0;l=Q;return P|0}else Jn(b,268713,100669216,269089);m=(d&18|0)==18;if(d&384|0){w=m?10:8;w=(d&36|0)==36?w|4:w;if(!((L|0)==-1|(o&32768|0)==0))To(b,e);q=e+28|0;p=c[q>>2]|0;u=e+24|0;n=c[u>>2]|0;if(p>>>0>=n>>>0){if(!p)m=0;else{m=0;o=0;n=(c[e+16>>2]|0)+(n<<4)|0;while(1){m=((c[n>>2]|0)!=0&1)+m|0;o=o+1|0;if((o|0)==(p|0))break;else n=n+4|0}}o=((m+16|0)>>>3)+m|0;do if(o>>>0>7){if(o>>>0>63){m=2;n=o;do{E=n;n=n>>>6;m=m<<6}while(E>>>0>4095);if(!n)break}else{m=2;n=o}do{n=n>>>1;m=m<<1}while((n|0)!=0)}else m=0;while(0);io(b,e,o,c[e+32>>2]|0,m,0);p=c[q>>2]|0;n=c[u>>2]|0}c[q>>2]=p+1;m=e+16|0;c[(c[m>>2]|0)+(n<<4)+(p<<2)>>2]=f;o=f+4|0;c[o>>2]=(c[o>>2]|0)+1;o=c[e+36>>2]|0;if(!o){m=c[m>>2]|0;n=m}else{r=c[m>>2]|0;q=r+(n*21|0)+(0-n&7)+(c[e+32>>2]<<4)|0;o=o+-1|0;m=c[f+12>>2]|0;while(1){m=m&o;n=q+(m<<2)|0;if((c[n>>2]|0)>>>0>4294967293)break;else m=m+1|0}c[n>>2]=p;n=r;m=r}c[n+(p<<4)>>2]=i;c[n+(p<<4)+4>>2]=j;if(i|0){i=i+4|0;c[i>>2]=(c[i>>2]|0)+1}if(j|0){i=j+4|0;c[i>>2]=(c[i>>2]|0)+1}a[m+((c[u>>2]|0)*20|0)+p>>0]=w;x=202;break}x=(O|0)!=0&(v|0)!=0&1;x=m?x|2:x;x=(d&36|0)==36?x|4:x;do if(J){n=c[b+64>>2]|0;i=(c[b+68>>2]|0)-n>>4;m=((g|0)<0?i:0)+g|0;if(m>>>0<i>>>0){A=c[n+(m<<4)>>2]|0;i=n+(m<<4)+4|0;c[B>>2]=c[i>>2];c[B+4>>2]=c[i+4>>2];c[B+8>>2]=c[i+8>>2];break}else jo(b,376,g)}else A=2;while(0);if(!((L|0)==-1|(o&32768|0)==0))To(b,e);q=e+28|0;p=c[q>>2]|0;w=e+24|0;n=c[w>>2]|0;if(p>>>0>=n>>>0){if(!p)m=0;else{m=0;o=0;n=(c[e+16>>2]|0)+(n<<4)|0;while(1){m=((c[n>>2]|0)!=0&1)+m|0;o=o+1|0;if((o|0)==(p|0))break;else n=n+4|0}}o=((m+16|0)>>>3)+m|0;do if(o>>>0>7){if(o>>>0>63){m=2;n=o;do{i=n;n=n>>>6;m=m<<6}while(i>>>0>4095);if(!n)break}else{m=2;n=o}do{n=n>>>1;m=m<<1}while((n|0)!=0)}else m=0;while(0);io(b,e,o,c[e+32>>2]|0,m,0);p=c[q>>2]|0;n=c[w>>2]|0}c[q>>2]=p+1;u=e+16|0;c[(c[u>>2]|0)+(n<<4)+(p<<2)>>2]=f;o=f+4|0;c[o>>2]=(c[o>>2]|0)+1;o=c[e+36>>2]|0;if(!o)m=c[u>>2]|0;else{m=c[u>>2]|0;r=m+(n*21|0)+(0-n&7)+(c[e+32>>2]<<4)|0;q=o+-1|0;n=c[f+12>>2]|0;while(1){n=n&q;o=r+(n<<2)|0;if((c[o>>2]|0)>>>0>4294967293)break;else n=n+1|0}c[o>>2]=p}c[m+(p<<4)>>2]=A;i=m+(p<<4)+4|0;c[i>>2]=c[B>>2];c[i+4>>2]=c[B+4>>2];c[i+8>>2]=c[B+8>>2];if(A&8|0){i=(c[m+(p<<4)+8>>2]|0)+4|0;c[i>>2]=(c[i>>2]|0)+1}a[(c[u>>2]|0)+((c[w>>2]|0)*20|0)+p>>0]=x;x=202}while(0);do if((x|0)==202){m=c[e>>2]|0;if(m&4194304|0){if(F|0)c[e+40>>2]=F;if(!(H>>>0<I>>>0?(c[(c[b+304>>2]|0)+328>>2]|0)==(f|0):0))break;m=So(b,e,I,H,K,P)|0;c[e+40>>2]=c[P>>2];if(G|0)c[e+44>>2]=1;if(!m)break a;else break}if(!((L|0)==-1|(m&16777216|0)==0)){c[P>>2]=0;c[N>>2]=0;do if(Uo(b,e,f,M,P,N)|0){if(d&384|0){Zo(b,c[P>>2]|0,f,0)|0;break}do if(J|0){o=c[b+64>>2]|0;p=(c[b+68>>2]|0)-o>>4;m=p|0?o+(p+-1<<4)|0:0;m=(m|0)==0?936:m;if((c[m>>2]|0)!=8)In(b,2101,-1,287721);n=c[m+8>>2]|0;if(!n)In(b,2101,-1,287721);m=((g|0)<0?p:0)+g|0;if(m>>>0<p>>>0){Vo(b,c[N>>2]|0,0,n,o+(m<<4)|0,1);break}else jo(b,376,g)}while(0);if(!((O|0)==0|(v|0)!=0))Zo(b,c[P>>2]|0,f,0)|0}while(0)}}while(0);m=c[b+44>>2]|0;if(!(c[m+32>>2]|0)){P=1;l=Q;return P|0}Tn(m);P=1;l=Q;return P|0}while(0);if(!k){P=0;l=Q;return P|0}else Jn(b,268713,100669223,269117);return 0}function Gp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=a+68|0;d=c[h>>2]|0;f=c[a+64>>2]|0;g=d-f>>4;e=((b|0)<0?g:0)+b|0;if(e>>>0>(c[a+56>>2]|0)-f>>4>>>0)jo(a,463,b);if(e>>>0>=g>>>0){c[h>>2]=f+(e<<4);return}f=d+(e-g<<4)|0;b=a+44|0;do{a=c[d+-16>>2]|0;e=c[d+-8>>2]|0;d=d+-16|0;c[d>>2]=2;if(a&8|0?(g=e+4|0,a=(c[g>>2]|0)+-1|0,c[g>>2]=a,(a|0)==0):0)bo(c[b>>2]|0,e)}while((d|0)!=(f|0));c[h>>2]=f;d=c[b>>2]|0;if(!(c[d+32>>2]|0))return;Tn(d);return}function Hp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;i=(b&255|0)==196;e=b>>>16;j=a+68|0;f=c[j>>2]|0;h=a+56|0;if(f>>>0>=(c[h>>2]|0)>>>0)Un(a,1093);g=a+64|0;d=c[g>>2]|0;if(e>>>0>=f-d>>4>>>0)jo(a,376,e);d=d+(e<<4)|0;c[j>>2]=f+16;c[f>>2]=c[d>>2];c[f+4>>2]=c[d+4>>2];c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2];if(c[f>>2]&8|0){f=(c[f+8>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)+1}e=e+1|0;f=c[j>>2]|0;if(f>>>0>=(c[h>>2]|0)>>>0)Un(a,1093);d=c[g>>2]|0;if(e>>>0>=f-d>>4>>>0)jo(a,376,e);h=d+(e<<4)|0;c[j>>2]=f+16;c[f>>2]=c[h>>2];c[f+4>>2]=c[h+4>>2];c[f+8>>2]=c[h+8>>2];c[f+12>>2]=c[h+12>>2];if(!(c[f>>2]&8)){j=i?822:694;i=b>>>8;i=i&255;Fo(a,i,j);return}j=(c[f+8>>2]|0)+4|0;c[j>>2]=(c[j>>2]|0)+1;j=i?822:694;i=b>>>8;i=i&255;Fo(a,i,j);return}function Ip(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;l=b>>>16&255;g=b>>>24;m=a+68|0;h=c[m>>2]|0;i=a+64|0;k=c[i>>2]|0;j=k;b=g>>>0<h-j>>4>>>0;d=k+(g<<4)|0;n=b?d:0;e=h;f=e>>>0<(c[a+56>>2]|0)>>>0;if((c[((n|0)==0?936:n)>>2]&-2|0)==2){if(!f)Un(a,4175);b=e+16|0;c[m>>2]=b;c[e>>2]=3;b=b-j>>4;if(!b)jo(a,376,-1);d=k+(b+-1<<4)|0;if(l>>>0>=b>>>0)jo(a,376,l);j=k+(l<<4)|0;n=c[j>>2]|0;b=c[k+(l<<4)+8>>2]|0;c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];c[d>>2]=2;c[m>>2]=(c[m>>2]|0)+-16;if(!(n&8))return;m=b+4|0;n=(c[m>>2]|0)+-1|0;c[m>>2]=n;if(n|0)return;Yn(c[a+44>>2]|0,b);return}if(!f)Un(a,1093);if(!b)jo(a,376,g);c[m>>2]=e+16;n=h;c[n>>2]=c[d>>2];c[n+4>>2]=c[d+4>>2];c[n+8>>2]=c[d+8>>2];c[n+12>>2]=c[d+12>>2];if(c[e>>2]&8|0){n=(c[e+8>>2]|0)+4|0;c[n>>2]=(c[n>>2]|0)+1}to(a,-1);Lp(a,0);b=c[i>>2]|0;d=(c[m>>2]|0)-b>>4;if(!d)jo(a,376,-1);e=b+(d+-1<<4)|0;if(l>>>0>=d>>>0)jo(a,376,l);k=b+(l<<4)|0;n=c[k>>2]|0;b=c[b+(l<<4)+8>>2]|0;c[k>>2]=c[e>>2];c[k+4>>2]=c[e+4>>2];c[k+8>>2]=c[e+8>>2];c[k+12>>2]=c[e+12>>2];c[e>>2]=2;c[m>>2]=(c[m>>2]|0)+-16;if(!(n&8))return;m=b+4|0;n=(c[m>>2]|0)+-1|0;c[m>>2]=n;if(n|0)return;Yn(c[a+44>>2]|0,b);return}function Jp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;i=b>>>16&255;f=b>>>24;j=a+68|0;g=c[j>>2]|0;h=a+64|0;d=c[h>>2]|0;b=f>>>0<g-d>>4>>>0;d=d+(f<<4)|0;k=b?d:0;e=g;if((c[((k|0)==0?936:k)>>2]|0)!=9){k=0;return k|0}if(e>>>0>=(c[a+56>>2]|0)>>>0)Un(a,1093);if(!b)jo(a,376,f);c[j>>2]=e+16;k=g;c[k>>2]=c[d>>2];c[k+4>>2]=c[d+4>>2];c[k+8>>2]=c[d+8>>2];c[k+12>>2]=c[d+12>>2];if(c[e>>2]&8|0){k=(c[e+8>>2]|0)+4|0;c[k>>2]=(c[k>>2]|0)+1}if(!(Kp(a,0)|0)){b=(c[j>>2]|0)+16|0;c[j>>2]=b;f=0}else{f=1;b=c[j>>2]|0}d=c[h>>2]|0;b=b-d>>4;if(!b)jo(a,376,-1);e=d+(b+-1<<4)|0;if(i>>>0>=b>>>0)jo(a,376,i);h=d+(i<<4)|0;k=c[h>>2]|0;b=c[d+(i<<4)+8>>2]|0;c[h>>2]=c[e>>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[e>>2]=2;c[j>>2]=(c[j>>2]|0)+-16;if(!(k&8)){k=f;return k|0}j=b+4|0;k=(c[j>>2]|0)+-1|0;c[j>>2]=k;if(k|0){k=f;return k|0}Yn(c[a+44>>2]|0,b);k=f;return k|0}function Kp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+32|0;r=w;v=a+68|0;f=c[v>>2]|0;u=a+64|0;d=c[u>>2]|0;i=f-d|0;e=i>>4;j=e+-1|0;d=e|0?d+(j<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)!=9)In(a,2130,-1,268963);q=c[d+8>>2]|0;if(!q)In(a,2130,-1,268963);if(!e)jo(a,300,-1);s=a+304|0;d=c[(c[s>>2]|0)+368>>2]|0;t=a+56|0;if(f>>>0>=(c[t>>2]|0)>>>0)Un(a,4153);c[v>>2]=f+16;c[f>>2]=8;c[f+8>>2]=d;e=d+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[u>>2]|0;f=(c[v>>2]|0)-e>>4;d=((i|0)<16?f:0)+j|0;if(d>>>0>=f>>>0)jo(a,376,j);ro(a,e+(d<<4)|0,e+(f+-1<<4)|0)|0;e=c[u>>2]|0;f=(c[v>>2]|0)-e>>4;d=f+-2|0;if(f>>>0<=1)jo(a,376,-2);o=e+(d<<4)|0;f=e+(f+-1<<4)|0;p=c[o>>2]|0;d=c[e+(d<<4)+8>>2]|0;QQ(o|0,o+16|0,f-o|0)|0;c[f>>2]=2;f=(c[v>>2]|0)+-16|0;c[v>>2]=f;e=f;if((p&8|0)!=0?(o=d+4|0,p=(c[o>>2]|0)+-1|0,c[o>>2]=p,(p|0)==0):0){Yn(c[a+44>>2]|0,d);f=c[v>>2]|0;e=f}i=c[u>>2]|0;j=i;d=e-j>>4;d=d|0?i+(d+-1<<4)|0:0;d=(d|0)==0?936:d;if(c[d>>2]|0)In(a,225,-1,281351);g=+h[d+8>>3];if(!(g<0.0|(iP(g)|0)==0))if(g>4294967295.0)o=-1;else o=~~g>>>0;else o=0;if((f|0)==(i|0))Jn(a,268620,50337407,268636);i=f+-16|0;c[v>>2]=i;p=c[f+-16>>2]|0;d=c[f+-8>>2]|0;c[i>>2]=2;e=i;if((p&8|0)!=0?(n=d+4|0,p=(c[n>>2]|0)+-1|0,c[n>>2]=p,(p|0)==0):0){Yn(c[a+44>>2]|0,d);e=c[v>>2]|0;i=e;d=c[u>>2]|0}else d=j;j=e-d|0;p=j>>4;k=p+-1|0;if(!p)jo(a,300,-1);d=c[(c[s>>2]|0)+364>>2]|0;if(i>>>0>=(c[t>>2]|0)>>>0)Un(a,4153);c[v>>2]=i+16;c[i>>2]=8;c[i+8>>2]=d;e=d+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[u>>2]|0;f=(c[v>>2]|0)-e>>4;d=((j|0)<16?f:0)+k|0;if(d>>>0>=f>>>0)jo(a,376,k);ro(a,e+(d<<4)|0,e+(f+-1<<4)|0)|0;e=c[u>>2]|0;f=(c[v>>2]|0)-e>>4;d=f+-2|0;if(f>>>0<=1)jo(a,376,-2);m=e+(d<<4)|0;n=e+(f+-1<<4)|0;p=c[m>>2]|0;d=c[e+(d<<4)+8>>2]|0;QQ(m|0,m+16|0,n-m|0)|0;c[n>>2]=2;e=(c[v>>2]|0)+-16|0;c[v>>2]=e;if((p&8|0)!=0?(n=d+4|0,p=(c[n>>2]|0)+-1|0,c[n>>2]=p,(p|0)==0):0){Yn(c[a+44>>2]|0,d);e=c[v>>2]|0}f=c[u>>2]|0;d=e-f>>4;d=d|0?f+(d+-1<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)!=9)In(a,2130,-1,268963);p=c[d+8>>2]|0;if(!p)In(a,2130,-1,268963);i=(c[p>>2]&33554432|0)==0;if((e|0)==(f|0))Jn(a,268620,50337407,268636);m=e+-16|0;c[v>>2]=m;n=c[e+-16>>2]|0;d=c[e+-8>>2]|0;c[m>>2]=2;do if(n&8|0){m=d+4|0;n=(c[m>>2]|0)+-1|0;c[m>>2]=n;if(n|0)break;Yn(c[a+44>>2]|0,d)}while(0);m=q+28|0;a:do if(o>>>0<(c[m>>2]|0)>>>0){n=q+16|0;k=q+24|0;if(i)d=o;else{n=c[(c[n>>2]|0)+(c[k>>2]<<4)+(o<<2)>>2]|0;d=o+1|0;break}b:while(1){j=c[(c[n>>2]|0)+(c[k>>2]<<4)+(d<<2)>>2]|0;d=d+1|0;i=c[j+16>>2]|0;e=1e4;f=p;while(1){if(go(a,f,j,i,r,2)|0)break b;if(!e)break;f=c[f+20>>2]|0;if(!f)break;else e=e+-1|0}if(d>>>0>=(c[m>>2]|0)>>>0){n=0;break a}}n=j}else{n=0;d=o}while(0);e=c[v>>2]|0;f=c[t>>2]|0;if(e>>>0>=f>>>0)Un(a,4274);i=e+16|0;c[v>>2]=i;c[e>>2]=0;h[e+8>>3]=+(d>>>0);k=i-(c[u>>2]|0)|0;r=k>>4;m=r+-2|0;if(r>>>0<=1)jo(a,300,-2);d=c[(c[s>>2]|0)+368>>2]|0;if(i>>>0>=f>>>0)Un(a,4153);c[v>>2]=e+32;c[i>>2]=8;c[e+24>>2]=d;i=d+4|0;c[i>>2]=(c[i>>2]|0)+1;i=c[u>>2]|0;j=(c[v>>2]|0)-i>>4;f=((k|0)<32?j:0)+m|0;if(f>>>0>=j>>>0)jo(a,376,m);if((j|0)==1)jo(a,376,-2);e=j+-2|0;d=c[a+72>>2]|0;if(!d)d=1;else d=c[d+52>>2]&1;No(a,i+(f<<4)|0,i+(j+-1<<4)|0,c[i+(e<<4)>>2]|0,c[i+(e<<4)+4>>2]|0,+h[i+(e<<4)+8>>3],d)|0;d=c[v>>2]|0;if((d+-32|0)>>>0<(c[u>>2]|0)>>>0)Jn(a,268620,50337495,268636);e=d+-16|0;c[v>>2]=e;s=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[e>>2]=2;do if(s&8){r=d+4|0;s=(c[r>>2]|0)+-1|0;c[r>>2]=s;if(s|0)break;Yn(c[a+44>>2]|0,d);e=c[v>>2]|0}while(0);d=e+-16|0;c[v>>2]=d;s=c[e+-16>>2]|0;e=c[e+-8>>2]|0;c[d>>2]=2;do if(s&8){r=e+4|0;s=(c[r>>2]|0)+-1|0;c[r>>2]=s;if(s|0)break;Yn(c[a+44>>2]|0,e);d=c[v>>2]|0}while(0);if(!n){if((d|0)==(c[u>>2]|0))Jn(a,268620,50337407,268636);u=d+-16|0;c[v>>2]=u;v=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[u>>2]=2;if(!(v&8)){a=0;l=w;return a|0}u=d+4|0;v=(c[u>>2]|0)+-1|0;c[u>>2]=v;if(v|0){a=0;l=w;return a|0}Yn(c[a+44>>2]|0,d);a=0;l=w;return a|0}if(d>>>0>=(c[t>>2]|0)>>>0)Un(a,4153);c[v>>2]=d+16;c[d>>2]=8;c[d+8>>2]=n;s=n+4|0;c[s>>2]=(c[s>>2]|0)+1;if(!b){e=c[u>>2]|0;f=(c[v>>2]|0)-e>>4;d=f+-2|0;if(f>>>0<=1)jo(a,376,-2);b=e+(d<<4)|0;t=e+(f+-1<<4)|0;u=c[b>>2]|0;d=c[e+(d<<4)+8>>2]|0;QQ(b|0,b+16|0,t-b|0)|0;c[t>>2]=2;c[v>>2]=(c[v>>2]|0)+-16;if(!(u&8)){a=1;l=w;return a|0}u=d+4|0;v=(c[u>>2]|0)+-1|0;c[u>>2]=v;if(v|0){a=1;l=w;return a|0}Yn(c[a+44>>2]|0,d);a=1;l=w;return a|0}d=c[v>>2]|0;if(d>>>0>=(c[t>>2]|0)>>>0)Un(a,4153);c[v>>2]=d+16;c[d>>2]=9;c[d+8>>2]=p;f=p+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[v>>2]|0;if(f>>>0>=(c[t>>2]|0)>>>0)Un(a,1093);d=c[u>>2]|0;e=f-d>>4;if(e>>>0<=1)jo(a,376,-2);t=d+(e+-2<<4)|0;c[v>>2]=f+16;c[f>>2]=c[t>>2];c[f+4>>2]=c[t+4>>2];c[f+8>>2]=c[t+8>>2];c[f+12>>2]=c[t+12>>2];if(c[f>>2]&8|0){t=(c[f+8>>2]|0)+4|0;c[t>>2]=(c[t>>2]|0)+1}d=c[u>>2]|0;e=(c[v>>2]|0)-d>>4;if(e>>>0<=1)jo(a,376,-2);ro(a,d+(e+-2<<4)|0,d+(e+-1<<4)|0)|0;e=c[u>>2]|0;f=(c[v>>2]|0)-e>>4;d=f+-2|0;if(f>>>0<=1)jo(a,376,-2);s=e+(d<<4)|0;b=e+(f+-1<<4)|0;t=c[s>>2]|0;d=c[e+(d<<4)+8>>2]|0;QQ(s|0,s+16|0,b-s|0)|0;c[b>>2]=2;e=(c[v>>2]|0)+-16|0;c[v>>2]=e;do if(t&8){b=d+4|0;t=(c[b>>2]|0)+-1|0;c[b>>2]=t;if(t|0)break;Yn(c[a+44>>2]|0,d);e=c[v>>2]|0}while(0);f=c[u>>2]|0;e=e-f>>4;d=e+-2|0;if(e>>>0<=1)jo(a,376,-2);b=f+(d<<4)|0;e=f+(e+-1<<4)|0;t=c[b>>2]|0;d=c[f+(d<<4)+8>>2]|0;QQ(b|0,b+16|0,e-b|0)|0;c[e>>2]=2;e=(c[v>>2]|0)+-16|0;c[v>>2]=e;do if(t&8){b=d+4|0;t=(c[b>>2]|0)+-1|0;c[b>>2]=t;if(t|0)break;Yn(c[a+44>>2]|0,d);e=c[v>>2]|0}while(0);f=c[u>>2]|0;d=e-f>>4;if(d>>>0<=2)jo(a,376,-3);s=d+-3|0;b=f+(s<<4)|0;t=f+(d+-1<<4)|0;u=c[b>>2]|0;d=c[f+(s<<4)+8>>2]|0;QQ(b|0,b+16|0,t-b|0)|0;c[t>>2]=2;c[v>>2]=(c[v>>2]|0)+-16;if(!(u&8)){a=1;l=w;return a|0}u=d+4|0;v=(c[u>>2]|0)+-1|0;c[u>>2]=v;if(v|0){a=1;l=w;return a|0}Yn(c[a+44>>2]|0,d);a=1;l=w;return a|0}function Lp(b,e){b=b|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;L=l;l=l+16|0;p=L;J=b+68|0;g=c[J>>2]|0;H=b+64|0;K=c[H>>2]|0;f=g-K>>4;f=f|0?K+(f+-1<<4)|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)!=9)In(b,2130,-1,268963);f=c[f+8>>2]|0;if(!f)In(b,2130,-1,268963);G=b+56|0;if(g>>>0>=(c[G>>2]|0)>>>0)Un(b,4604);g=vo(b,40)|0;I=b+44|0;i=c[I>>2]|0;c[g>>2]=134234241;i=i+24|0;j=c[i>>2]|0;if(j|0)c[j+12>>2]=g;c[g+12>>2]=0;c[g+8>>2]=j;c[i>>2]=g;i=c[J>>2]|0;c[i>>2]=9;c[i+8>>2]=g;g=g+4|0;c[g>>2]=(c[g>>2]|0)+1;g=c[J>>2]|0;i=g+16|0;c[J>>2]=i;K=c[g+8>>2]|0;if(i>>>0>=(c[G>>2]|0)>>>0)Un(b,4153);c[J>>2]=g+32;c[i>>2]=9;c[g+24>>2]=f;g=f+4|0;c[g>>2]=(c[g>>2]|0)+1;g=c[J>>2]|0;j=g-(c[H>>2]|0)|0;F=j>>4;k=F+-2|0;if(F>>>0<=1)jo(b,300,-2);D=b+304|0;i=c[(c[D>>2]|0)+364>>2]|0;if(g>>>0>=(c[G>>2]|0)>>>0)Un(b,4153);c[J>>2]=g+16;c[g>>2]=8;c[g+8>>2]=i;m=i+4|0;c[m>>2]=(c[m>>2]|0)+1;m=c[H>>2]|0;n=(c[J>>2]|0)-m>>4;j=((j|0)<32?n:0)+k|0;if(j>>>0>=n>>>0)jo(b,376,k);if((n|0)==1)jo(b,376,-2);i=n+-2|0;F=b+72|0;g=c[F>>2]|0;if(!g)g=1;else g=c[g+52>>2]&1;No(b,m+(j<<4)|0,m+(n+-1<<4)|0,c[m+(i<<4)>>2]|0,c[m+(i<<4)+4>>2]|0,+h[m+(i<<4)+8>>3],g)|0;g=c[J>>2]|0;if((g+-32|0)>>>0<(c[H>>2]|0)>>>0)Jn(b,268620,50337495,268636);i=g+-16|0;c[J>>2]=i;C=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[i>>2]=2;if((C&8|0)!=0?(B=g+4|0,C=(c[B>>2]|0)+-1|0,c[B>>2]=C,(C|0)==0):0){Yn(c[I>>2]|0,g);g=c[J>>2]|0}else g=i;i=g+-16|0;c[J>>2]=i;C=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[i>>2]=2;if((C&8|0)!=0?(B=g+4|0,C=(c[B>>2]|0)+-1|0,c[B>>2]=C,(C|0)==0):0){Yn(c[I>>2]|0,g);i=c[J>>2]|0}g=c[G>>2]|0;if(i>>>0>=g>>>0)Un(b,4244);j=i+16|0;c[J>>2]=j;c[i>>2]=0;h[i+8>>3]=2.0;m=j-(c[H>>2]|0)|0;C=m>>4;o=C+-2|0;if(C>>>0<=1)jo(b,300,-2);k=c[(c[D>>2]|0)+368>>2]|0;if(j>>>0>=g>>>0)Un(b,4153);c[J>>2]=i+32;c[j>>2]=8;c[i+24>>2]=k;k=k+4|0;c[k>>2]=(c[k>>2]|0)+1;k=c[H>>2]|0;n=(c[J>>2]|0)-k>>4;j=((m|0)<32?n:0)+o|0;if(j>>>0>=n>>>0)jo(b,376,o);if((n|0)==1)jo(b,376,-2);i=n+-2|0;g=c[F>>2]|0;if(!g)g=1;else g=c[g+52>>2]&1;No(b,k+(j<<4)|0,k+(n+-1<<4)|0,c[k+(i<<4)>>2]|0,c[k+(i<<4)+4>>2]|0,+h[k+(i<<4)+8>>3],g)|0;i=c[J>>2]|0;if((i+-32|0)>>>0<(c[H>>2]|0)>>>0)Jn(b,268620,50337495,268636);g=i+-16|0;c[J>>2]=g;C=c[i+-16>>2]|0;i=c[i+-8>>2]|0;c[g>>2]=2;do if(C&8){B=i+4|0;C=(c[B>>2]|0)+-1|0;c[B>>2]=C;if(C|0)break;Yn(c[I>>2]|0,i);g=c[J>>2]|0}while(0);B=g+-16|0;c[J>>2]=B;C=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[B>>2]=2;do if(C&8|0){B=g+4|0;C=(c[B>>2]|0)+-1|0;c[B>>2]=C;if(C|0)break;Yn(c[I>>2]|0,g)}while(0);do if(!(e&128)){if(!(c[f>>2]&33554432)){C=134;break}g=c[f+44>>2]|0;m=c[f+40>>2]|0;f=c[J>>2]|0;if(f>>>0>=(c[G>>2]|0)>>>0)Un(b,4153);c[J>>2]=f+16;c[f>>2]=9;c[f+8>>2]=g;f=g+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[J>>2]|0;j=f-(c[H>>2]|0)|0;C=j>>4;k=C+-1|0;if(!C)jo(b,300,-1);g=c[(c[D>>2]|0)+300>>2]|0;if(f>>>0>=(c[G>>2]|0)>>>0)Un(b,4153);c[J>>2]=f+16;c[f>>2]=8;c[f+8>>2]=g;g=g+4|0;c[g>>2]=(c[g>>2]|0)+1;g=c[H>>2]|0;i=(c[J>>2]|0)-g>>4;f=((j|0)<16?i:0)+k|0;if(f>>>0>=i>>>0)jo(b,376,k);j=ro(b,g+(f<<4)|0,g+(i+-1<<4)|0)|0;g=c[H>>2]|0;i=(c[J>>2]|0)-g>>4;f=i+-2|0;if(i>>>0<=1)jo(b,376,-2);A=g+(f<<4)|0;B=g+(i+-1<<4)|0;C=c[A>>2]|0;f=c[g+(f<<4)+8>>2]|0;QQ(A|0,A+16|0,B-A|0)|0;c[B>>2]=2;c[J>>2]=(c[J>>2]|0)+-16;do if(C&8|0){B=f+4|0;C=(c[B>>2]|0)+-1|0;c[B>>2]=C;if(C|0)break;Yn(c[I>>2]|0,f)}while(0);if(!j){f=m;g=c[J>>2]|0;if(g>>>0>=(c[G>>2]|0)>>>0)Un(b,4153);c[J>>2]=g+16;c[g>>2]=9;c[g+8>>2]=m;g=m+4|0;c[g>>2]=(c[g>>2]|0)+1;g=c[J>>2]|0;j=g-(c[H>>2]|0)|0;C=j>>4;k=C+-4|0;if(C>>>0<=3)jo(b,300,-4);i=c[(c[D>>2]|0)+364>>2]|0;if(g>>>0>=(c[G>>2]|0)>>>0)Un(b,4153);c[J>>2]=g+16;c[g>>2]=8;c[g+8>>2]=i;m=i+4|0;c[m>>2]=(c[m>>2]|0)+1;m=c[H>>2]|0;n=(c[J>>2]|0)-m>>4;j=((j|0)<64?n:0)+k|0;if(j>>>0>=n>>>0)jo(b,376,k);if((n|0)==1)jo(b,376,-2);i=n+-2|0;g=c[F>>2]|0;if(!g)g=1;else g=c[g+52>>2]&1;No(b,m+(j<<4)|0,m+(n+-1<<4)|0,c[m+(i<<4)>>2]|0,c[m+(i<<4)+4>>2]|0,+h[m+(i<<4)+8>>3],g)|0;g=c[J>>2]|0;if((g+-32|0)>>>0<(c[H>>2]|0)>>>0)Jn(b,268620,50337495,268636);i=g+-16|0;c[J>>2]=i;C=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[i>>2]=2;do if(!(C&8))g=i;else{B=g+4|0;C=(c[B>>2]|0)+-1|0;c[B>>2]=C;if(C|0){g=i;break}Yn(c[I>>2]|0,g);g=c[J>>2]|0}while(0);i=g+-16|0;c[J>>2]=i;C=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[i>>2]=2;do if(C&8){B=g+4|0;C=(c[B>>2]|0)+-1|0;c[B>>2]=C;if(C|0)break;Yn(c[I>>2]|0,g);i=c[J>>2]|0}while(0);if((i+-32|0)>>>0<(c[H>>2]|0)>>>0)Jn(b,268620,50337495,268636);g=i+-16|0;c[J>>2]=g;C=c[i+-16>>2]|0;i=c[i+-8>>2]|0;c[g>>2]=2;do if(C&8){B=i+4|0;C=(c[B>>2]|0)+-1|0;c[B>>2]=C;if(C|0)break;Yn(c[I>>2]|0,i);g=c[J>>2]|0}while(0);B=g+-16|0;c[J>>2]=B;C=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[B>>2]=2;if(!(C&8)){C=132;break}B=g+4|0;C=(c[B>>2]|0)+-1|0;c[B>>2]=C;if(C|0){C=132;break}Yn(c[I>>2]|0,g);C=132;break}f=c[J>>2]|0;g=c[H>>2]|0;i=f-g>>4;if(i>>>0<=1)jo(b,376,-2);j=g+(i+-2<<4)|0;g=g+(i+-1<<4)|0;i=g-j|0;if(i){c[p>>2]=c[g>>2];c[p+4>>2]=c[g+4>>2];c[p+8>>2]=c[g+8>>2];c[p+12>>2]=c[g+12>>2];QQ(j+16|0,j|0,i|0)|0;c[j>>2]=c[p>>2];c[j+4>>2]=c[p+4>>2];c[j+8>>2]=c[p+8>>2];c[j+12>>2]=c[p+12>>2];f=c[J>>2]|0}if(f>>>0>=(c[G>>2]|0)>>>0)Un(b,4153);c[J>>2]=f+16;c[f>>2]=9;c[f+8>>2]=m;f=m+4|0;c[f>>2]=(c[f>>2]|0)+1;f=(c[J>>2]|0)-(c[H>>2]|0)|0;if((f|0)<48)Vn(b,268605,55);so(b,(f>>>4)+-3|0,0)|0;E=c[H>>2]|0;f=(c[J>>2]|0)-E>>4;f=f|0?E+(f+-1<<4)|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)!=9)In(b,2130,-1,268963);if(!(c[f+8>>2]|0))In(b,2130,-1,268963);Mp(b,m,e);m=Bo(b,-1)|0;a:do if(m|0){k=0;while(1){Np(b,-1,k)|0;f=c[J>>2]|0;if(f>>>0>=(c[G>>2]|0)>>>0){C=105;break}i=f+16|0;c[J>>2]=i;c[f>>2]=4;c[f+8>>2]=1;g=c[H>>2]|0;i=i-g>>4;if(i>>>0<=4){C=107;break}j=i+-1|0;f=c[F>>2]|0;if(!f)f=1;else f=c[f+52>>2]&1;No(b,g+(i+-5<<4)|0,g+(i+-2<<4)|0,c[g+(j<<4)>>2]|0,c[g+(j<<4)+4>>2]|0,+h[g+(j<<4)+8>>3],f)|0;g=c[J>>2]|0;if((g+-32|0)>>>0<(c[H>>2]|0)>>>0){C=111;break}f=g+-16|0;c[J>>2]=f;E=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[f>>2]=2;do if(E&8){D=g+4|0;E=(c[D>>2]|0)+-1|0;c[D>>2]=E;if(E|0)break;Yn(c[I>>2]|0,g);f=c[J>>2]|0}while(0);D=f+-16|0;c[J>>2]=D;E=c[f+-16>>2]|0;f=c[f+-8>>2]|0;c[D>>2]=2;do if(E&8|0){D=f+4|0;E=(c[D>>2]|0)+-1|0;c[D>>2]=E;if(E|0)break;Yn(c[I>>2]|0,f)}while(0);k=k+1|0;if(k>>>0>=m>>>0)break a}if((C|0)==105)Un(b,4195);else if((C|0)==107)jo(b,376,-5);else if((C|0)==111)Jn(b,268620,50337495,268636)}while(0);g=c[J>>2]|0;if((g+-32|0)>>>0<(c[H>>2]|0)>>>0)Jn(b,268620,50337495,268636);f=g+-16|0;c[J>>2]=f;G=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[f>>2]=2;do if(G&8){F=g+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0)break;Yn(c[I>>2]|0,g);f=c[J>>2]|0}while(0);g=f+-16|0;c[J>>2]=g;G=c[f+-16>>2]|0;f=c[f+-8>>2]|0;c[g>>2]=2;do if(G&8){F=f+4|0;G=(c[F>>2]|0)+-1|0;c[F>>2]=G;if(G|0)break;Yn(c[I>>2]|0,f);g=c[J>>2]|0}while(0);i=c[H>>2]|0;g=g-i>>4;f=g+-2|0;if(g>>>0<=1)jo(b,376,-2);F=i+(f<<4)|0;G=i+(g+-1<<4)|0;H=c[F>>2]|0;f=c[i+(f<<4)+8>>2]|0;QQ(F|0,F+16|0,G-F|0)|0;c[G>>2]=2;c[J>>2]=(c[J>>2]|0)+-16;if(!(H&8)){Pp(b,K);l=L;return}H=f+4|0;J=(c[H>>2]|0)+-1|0;c[H>>2]=J;if(J|0){Pp(b,K);l=L;return}Yn(c[I>>2]|0,f);Pp(b,K);l=L;return}else C=132;while(0);do if((C|0)==132){if(f|0){C=134;break}E=e&64}while(0);b:do if((C|0)==134){s=(e&1|0)==0;t=K+28|0;u=e&64;v=(u|0)==0;w=K+16|0;x=K+24|0;y=(e&16|0)==0;z=(e&8|0)==0;A=(e&32|0)==0;B=(e&2|0)==0;r=(e&4|0)==0;g=2;c:while(1){q=c[f>>2]|0;i=(q&8388608|0)!=0;do if(!((q&8192|0)==0&(i^1))){if(i){p=c[(c[I>>2]|0)+648>>2]|0;i=c[f+36>>2]|0;j=c[f+24>>2]|0;e=c[f+16>>2]|0;d:do if(i){o=e+(j*21|0)+(0-j&7)+(c[f+32>>2]<<4)|0;n=i+-1|0;m=e+(j<<4)|0;i=0;k=c[p+12>>2]&n;e:while(1){j=c[o+(k<<2)>>2]|0;switch(j|0){case -1:{j=19;break}case -2:{C=144;break}default:if((c[m+(j<<2)>>2]|0)==(p|0)){i=j;j=1}else C=144}if((C|0)==144){C=0;j=0;k=k+1&n}switch(j&31){case 19:{i=0;break d}case 0:break;default:break e}}if(!j)i=0;else C=147}else{j=e+(j<<4)|0;k=c[f+28>>2]|0;if(!k){i=0;break}else i=0;while(1){if((c[j+(i<<2)>>2]|0)==(p|0)){C=147;break d}i=i+1|0;if(i>>>0>=k>>>0){i=0;break}}}while(0);if((C|0)==147){C=0;i=c[e+(i<<4)+8>>2]|0}o=Po(i)|0}else{if(!(a[f+58>>0]|0))break;o=(c[f+52>>2]|0)>>>(d[f+56>>0]|0)}if(o|0){n=0;do{i=mo(c[I>>2]|0,n)|0;if(!i){C=153;break c}j=c[J>>2]|0;if(j>>>0>=(c[G>>2]|0)>>>0){C=155;break c}c[J>>2]=j+16;c[j>>2]=8;c[j+8>>2]=i;i=i+4|0;c[i>>2]=(c[i>>2]|0)+1;i=c[J>>2]|0;if(i>>>0>=(c[G>>2]|0)>>>0){C=157;break c}k=i+16|0;c[J>>2]=k;c[i>>2]=4;c[i+8>>2]=1;j=c[H>>2]|0;k=k-j>>4;if(k>>>0<=2){C=159;break c}m=k+-1|0;i=c[F>>2]|0;if(!i)i=1;else i=c[i+52>>2]&1;No(b,j+(k+-3<<4)|0,j+(k+-2<<4)|0,c[j+(m<<4)>>2]|0,c[j+(m<<4)+4>>2]|0,+h[j+(m<<4)+8>>3],i)|0;j=c[J>>2]|0;if((j+-32|0)>>>0<(c[H>>2]|0)>>>0){C=163;break c}i=j+-16|0;c[J>>2]=i;q=c[j+-16>>2]|0;j=c[j+-8>>2]|0;c[i>>2]=2;do if(q&8){e=j+4|0;q=(c[e>>2]|0)+-1|0;c[e>>2]=q;if(q|0)break;Yn(c[I>>2]|0,j);i=c[J>>2]|0}while(0);e=i+-16|0;c[J>>2]=e;q=c[i+-16>>2]|0;i=c[i+-8>>2]|0;c[e>>2]=2;do if(q&8|0){e=i+4|0;q=(c[e>>2]|0)+-1|0;c[e>>2]=q;if(q|0)break;Yn(c[I>>2]|0,i)}while(0);n=n+1|0}while(n>>>0<o>>>0)}if(s)break;Op(b,c[(c[D>>2]|0)+328>>2]|0)}while(0);o=f+32|0;if(c[o>>2]|0){p=f+16|0;e=f+24|0;n=0;do{q=c[e>>2]|0;do if((c[(c[p>>2]|0)+(q*21|0)+(0-q&7)+(n<<4)>>2]|0)!=7){i=mo(c[I>>2]|0,n)|0;if(!i){C=177;break c}j=c[J>>2]|0;if(j>>>0>=(c[G>>2]|0)>>>0){C=179;break c}c[J>>2]=j+16;c[j>>2]=8;c[j+8>>2]=i;i=i+4|0;c[i>>2]=(c[i>>2]|0)+1;i=c[J>>2]|0;if(i>>>0>=(c[G>>2]|0)>>>0){C=181;break c}k=i+16|0;c[J>>2]=k;c[i>>2]=4;c[i+8>>2]=1;j=c[H>>2]|0;k=k-j>>4;if(k>>>0<=2){C=183;break c}m=k+-1|0;i=c[F>>2]|0;if(!i)i=1;else i=c[i+52>>2]&1;No(b,j+(k+-3<<4)|0,j+(k+-2<<4)|0,c[j+(m<<4)>>2]|0,c[j+(m<<4)+4>>2]|0,+h[j+(m<<4)+8>>3],i)|0;j=c[J>>2]|0;if((j+-32|0)>>>0<(c[H>>2]|0)>>>0){C=187;break c}i=j+-16|0;c[J>>2]=i;q=c[j+-16>>2]|0;j=c[j+-8>>2]|0;c[i>>2]=2;do if(q&8){m=j+4|0;q=(c[m>>2]|0)+-1|0;c[m>>2]=q;if(q|0)break;Yn(c[I>>2]|0,j);i=c[J>>2]|0}while(0);m=i+-16|0;c[J>>2]=m;q=c[i+-16>>2]|0;i=c[i+-8>>2]|0;c[m>>2]=2;if(!(q&8))break;m=i+4|0;q=(c[m>>2]|0)+-1|0;c[m>>2]=q;if(q|0)break;Yn(c[I>>2]|0,i)}while(0);n=n+1|0}while(n>>>0<(c[o>>2]|0)>>>0)}if(!(s|(c[f>>2]&4194304|0)==0))Op(b,c[(c[D>>2]|0)+328>>2]|0);p=f+28|0;do if(!(c[p>>2]|0))g=c[t>>2]|0;else{e=f+16|0;q=f+24|0;i=0;o=0;do{j=c[e>>2]|0;k=c[q>>2]|0;m=c[j+(k<<4)+(o<<2)>>2]|0;do if(m){if(s?(a[j+(k*20|0)+o>>0]&2)==0:0)break;j=c[m>>2]|0;if(!(j&512)){if(!z)break}else if(r|B&(j&1024|0)!=0)break;else i=1;k=(j&256|0)!=0;n=k?1:i;if(!(k|A))break;i=c[J>>2]|0;if(i>>>0>=(c[G>>2]|0)>>>0){C=208;break c}c[J>>2]=i+16;c[i>>2]=8;c[i+8>>2]=m;i=m+4|0;c[i>>2]=(c[i>>2]|0)+1;i=c[J>>2]|0;if(i>>>0>=(c[G>>2]|0)>>>0){C=210;break c}k=i+16|0;c[J>>2]=k;c[i>>2]=4;c[i+8>>2]=1;j=c[H>>2]|0;k=k-j>>4;if(k>>>0<=2){C=212;break c}m=k+-1|0;i=c[F>>2]|0;if(!i)i=1;else i=c[i+52>>2]&1;No(b,j+(k+-3<<4)|0,j+(k+-2<<4)|0,c[j+(m<<4)>>2]|0,c[j+(m<<4)+4>>2]|0,+h[j+(m<<4)+8>>3],i)|0;j=c[J>>2]|0;if((j+-32|0)>>>0<(c[H>>2]|0)>>>0){C=216;break c}i=j+-16|0;c[J>>2]=i;m=c[j+-16>>2]|0;j=c[j+-8>>2]|0;c[i>>2]=2;do if(m&8){k=j+4|0;m=(c[k>>2]|0)+-1|0;c[k>>2]=m;if(m|0)break;Yn(c[I>>2]|0,j);i=c[J>>2]|0}while(0);k=i+-16|0;c[J>>2]=k;m=c[i+-16>>2]|0;i=c[i+-8>>2]|0;c[k>>2]=2;if(!(m&8)){i=n;break}k=i+4|0;m=(c[k>>2]|0)+-1|0;c[k>>2]=m;if(m|0){i=n;break}Yn(c[I>>2]|0,i);i=n}while(0);o=o+1|0}while(o>>>0<(c[p>>2]|0)>>>0);p=c[t>>2]|0;if(!(v&(i|0)!=0)){g=p;break}i=g+1|0;if((i|0)>=(p|0)){g=p;break}o=(c[w>>2]|0)+(c[x>>2]<<4)|0;do{n=c[o+(i<<2)>>2]|0;k=c[n+16>>2]|0;m=i;while(1){j=m+-1|0;if((m|0)<=(g|0))break;if((c[(c[o+(j<<2)>>2]|0)+16>>2]|0)>>>0>k>>>0)m=j;else break}j=o+(m<<2)|0;if((i|0)!=(m|0)){QQ(j+4|0,j|0,i-m<<2|0)|0;c[j>>2]=n}i=i+1|0}while((i|0)!=(p|0));g=p}while(0);if(!y){E=u;break b}f=c[f+20>>2]|0;if(!f){E=u;break b}}switch(C|0){case 153:{Mn(b,268998,816);break}case 155:{Un(b,4153);break}case 157:{Un(b,4195);break}case 159:{jo(b,376,-3);break}case 163:{Jn(b,268620,50337495,268636);break}case 177:{Mn(b,268998,816);break}case 179:{Un(b,4153);break}case 181:{Un(b,4195);break}case 183:{jo(b,376,-3);break}case 187:{Jn(b,268620,50337495,268636);break}case 208:{Un(b,4153);break}case 210:{Un(b,4195);break}case 212:{jo(b,376,-3);break}case 216:{Jn(b,268620,50337495,268636);break}}}while(0);g=c[H>>2]|0;i=(c[J>>2]|0)-g>>4;f=i+-2|0;if(i>>>0<=1)jo(b,376,-2);F=g+(f<<4)|0;G=g+(i+-1<<4)|0;H=c[F>>2]|0;f=c[g+(f<<4)+8>>2]|0;QQ(F|0,F+16|0,G-F|0)|0;c[G>>2]=2;c[J>>2]=(c[J>>2]|0)+-16;do if(H&8|0){H=f+4|0;J=(c[H>>2]|0)+-1|0;c[H>>2]=J;if(J|0)break;Yn(c[I>>2]|0,f)}while(0);if(!E){Pp(b,K);l=L;return}k=c[K+28>>2]|0;if((k|0)<=3){Pp(b,K);l=L;return}m=(c[K+16>>2]|0)+(c[K+24>>2]<<4)|0;i=3;do{n=c[m+(i<<2)>>2]|0;g=c[n+16>>2]|0;j=i;while(1){f=j+-1|0;if((j|0)<=2)break;if((c[(c[m+(f<<2)>>2]|0)+16>>2]|0)>>>0>g>>>0)j=f;else break}f=m+(j<<2)|0;if((i|0)!=(j|0)){QQ(f+4|0,f|0,i-j<<2|0)|0;c[f>>2]=n}i=i+1|0}while((i|0)!=(k|0));Pp(b,K);l=L;return}function Mp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+32|0;x=A;y=Bo(a,-1)|0;g=vo(a,48)|0;z=a+44|0;e=c[z>>2]|0;c[g>>2]=272679041;e=e+24|0;f=c[e>>2]|0;if(f|0)c[f+12>>2]=g;c[g+12>>2]=0;c[g+8>>2]=f;c[e>>2]=g;e=c[a+132>>2]|0;c[g+20>>2]=e;if(e|0){w=e+4|0;c[w>>2]=(c[w>>2]|0)+1}w=a+68|0;q=c[w>>2]|0;c[q>>2]=9;c[q+8>>2]=g;q=g+4|0;c[q>>2]=(c[q>>2]|0)+1;q=a+64|0;c[w>>2]=(c[w>>2]|0)+16;if(!y){l=A;return}r=(d&1|0)==0;s=(d&8|0)==0;t=a+56|0;u=a+72|0;v=(d&4|0)==0;p=(d&2|0)==0;e=0;o=0;a:while(1){Np(a,-2,o)|0;g=c[w>>2]|0;n=c[q>>2]|0;f=g-n>>4;f=f|0?n+(f+-1<<4)|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)!=8){n=9;break}f=c[f+8>>2]|0;if(!f){n=9;break}if(r){n=c[g+-8>>2]|0;if((go(a,b,n,c[n+16>>2]|0,x,0)|0)!=0?(c[x>>2]&2|0)!=0:0)n=13;else n=35}else n=13;do if((n|0)==13){n=0;f=c[f>>2]|0;if(!(f&512)){if(!s){n=35;break}}else{if(v){n=35;break}if(p&(f&1024|0)!=0){n=35;break}}m=e+1|0;g=c[w>>2]|0;f=c[q>>2]|0;d=g-f|0;j=d>>4;i=j+-2|0;k=f;if(j>>>0<=1){n=18;break a}if(g>>>0>=(c[t>>2]|0)>>>0){n=20;break a}j=g+16|0;c[w>>2]=j;c[g>>2]=0;h[g+8>>3]=+(e>>>0);j=j-f>>4;g=((d|0)<32?j:0)+i|0;if(g>>>0>=j>>>0){n=22;break a}if((j|0)==1){n=24;break a}f=j+-2|0;e=c[u>>2]|0;if(!e)e=1;else e=c[e+52>>2]&1;No(a,k+(g<<4)|0,k+(j+-1<<4)|0,c[k+(f<<4)>>2]|0,c[k+(f<<4)+4>>2]|0,+h[k+(f<<4)+8>>3],e)|0;f=c[w>>2]|0;if((f+-32|0)>>>0<(c[q>>2]|0)>>>0){n=28;break a}e=f+-16|0;c[w>>2]=e;k=c[f+-16>>2]|0;f=c[f+-8>>2]|0;c[e>>2]=2;if((k&8|0)!=0?(j=f+4|0,k=(c[j>>2]|0)+-1|0,c[j>>2]=k,(k|0)==0):0){Yn(c[z>>2]|0,f);e=c[w>>2]|0}j=e+-16|0;c[w>>2]=j;k=c[e+-16>>2]|0;e=c[e+-8>>2]|0;c[j>>2]=2;if((k&8|0)!=0?(j=e+4|0,k=(c[j>>2]|0)+-1|0,c[j>>2]=k,(k|0)==0):0){Yn(c[z>>2]|0,e);e=m}else e=m}while(0);if((n|0)==35){f=c[w>>2]|0;if((f|0)==(c[q>>2]|0)){n=36;break}m=f+-16|0;c[w>>2]=m;n=c[f+-16>>2]|0;f=c[f+-8>>2]|0;c[m>>2]=2;if((n&8|0)!=0?(m=f+4|0,n=(c[m>>2]|0)+-1|0,c[m>>2]=n,(n|0)==0):0)Yn(c[z>>2]|0,f)}o=o+1|0;if(o>>>0>=y>>>0){n=41;break}}if((n|0)==9)Ho(a,269465,30);else if((n|0)==18)jo(a,300,-2);else if((n|0)==20)Un(a,4274);else if((n|0)==22)jo(a,376,i);else if((n|0)==24)jo(a,376,-2);else if((n|0)==28)Jn(a,268620,50337495,268636);else if((n|0)==36)Jn(a,268620,50337407,268636);else if((n|0)==41){l=A;return}}function Np(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,l=0;k=a+68|0;e=c[k>>2]|0;j=a+64|0;f=c[j>>2]|0;l=e-f>>4;g=((b|0)<0?l:0)+b|0;i=f;if(g>>>0>=l>>>0)jo(a,300,b);if(e>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4274);b=e+16|0;c[k>>2]=b;c[e>>2]=0;h[e+8>>3]=+(d>>>0);e=b-f>>4;b=((g|0)<0?e:0)+g|0;if(b>>>0>=e>>>0)jo(a,376,g);f=ro(a,i+(b<<4)|0,i+(e+-1<<4)|0)|0;e=c[j>>2]|0;d=(c[k>>2]|0)-e>>4;b=d+-2|0;if(d>>>0<=1)jo(a,376,-2);i=e+(b<<4)|0;j=e+(d+-1<<4)|0;l=c[i>>2]|0;b=c[e+(b<<4)+8>>2]|0;QQ(i|0,i+16|0,j-i|0)|0;c[j>>2]=2;c[k>>2]=(c[k>>2]|0)+-16;if(!(l&8))return f|0;k=b+4|0;l=(c[k>>2]|0)+-1|0;c[k>>2]=l;if(l|0)return f|0;Yn(c[a+44>>2]|0,b);return f|0}function Op(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0;i=a+68|0;d=c[i>>2]|0;e=a+56|0;if(d>>>0>=(c[e>>2]|0)>>>0)Un(a,4153);c[i>>2]=d+16;c[d>>2]=8;c[d+8>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[i>>2]|0;if(b>>>0>=(c[e>>2]|0)>>>0)Un(a,4195);e=b+16|0;c[i>>2]=e;c[b>>2]=4;c[b+8>>2]=1;g=a+64|0;d=c[g>>2]|0;e=e-d>>4;if(e>>>0<=2)jo(a,376,-3);f=e+-1|0;b=c[a+72>>2]|0;if(!b)b=1;else b=c[b+52>>2]&1;No(a,d+(e+-3<<4)|0,d+(e+-2<<4)|0,c[d+(f<<4)>>2]|0,c[d+(f<<4)+4>>2]|0,+h[d+(f<<4)+8>>3],b)|0;d=c[i>>2]|0;if((d+-32|0)>>>0<(c[g>>2]|0)>>>0)Jn(a,268620,50337495,268636);b=d+-16|0;c[i>>2]=b;g=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[b>>2]=2;if((g&8|0)!=0?(f=d+4|0,g=(c[f>>2]|0)+-1|0,c[f>>2]=g,(g|0)==0):0){Yn(c[a+44>>2]|0,d);b=c[i>>2]|0}g=b+-16|0;c[i>>2]=g;i=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[g>>2]=2;if(!(i&8))return;g=b+4|0;i=(c[g>>2]|0)+-1|0;c[g>>2]=i;if(i|0)return;Yn(c[a+44>>2]|0,b);return}function Pp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;h=c[b+28>>2]|0;if(!h){i=0;d=c[b+24>>2]|0}else{d=c[b+24>>2]|0;e=0;f=0;g=(c[b+16>>2]|0)+(d<<4)|0;while(1){e=((c[g>>2]|0)!=0&1)+e|0;f=f+1|0;if((f|0)==(h|0)){i=e;break}else g=g+4|0}}h=c[b+32>>2]|0;if(!h){d=0;e=0}else{d=(c[b+16>>2]|0)+(d*21|0)+(0-d&7)|0;f=-1;e=0;g=0;while(1){j=(c[d>>2]|0)==7;e=((j^1)&1)+e|0;f=j?f:g;g=g+1|0;if((g|0)==(h|0))break;else d=d+16|0}d=f+1|0}f=d>>>3<<1>>>0>e>>>0;h=f?0:d;g=(f?e:0)+i|0;f=f&1;if(g>>>0<=7){j=0;io(a,b,g,h,j,f);return}if(g>>>0>63){d=2;e=g;do{j=e;e=e>>>6;d=d<<6}while(j>>>0>4095);if(!e){j=d;io(a,b,g,h,j,f);return}}else{d=2;e=g}do{e=e>>>1;d=d<<1}while((e|0)!=0);io(a,b,g,h,d,f);return}function Qp(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=l;l=l+16|0;i=h;c[i>>2]=g;Rp(a,b,d,e,f,i);l=h;return}function Rp(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 i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;q=b>>>24&1;m=b&-16777217;switch(m|0){case 2:{b=22;break}case 3:{b=24;break}case 4:{b=26;break}case 5:{b=28;break}case 6:{b=30;break}case 7:{b=32;break}default:b=20}j=c[a+100+(b<<2)>>2]|0;n=a+68|0;k=a+56|0;if((c[n>>2]|0)>>>0>=(c[k>>2]|0)>>>0)Un(a,4604);l=vo(a,40)|0;b=c[a+44>>2]|0;c[l>>2]=939540609;b=b+24|0;i=c[b>>2]|0;if(i|0)c[i+12>>2]=l;c[l+12>>2]=0;c[l+8>>2]=i;c[b>>2]=l;b=c[n>>2]|0;c[b>>2]=9;c[b+8>>2]=l;b=l+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[n>>2]|0;i=b+16|0;c[n>>2]=i;c[l+20>>2]=j;if(j|0){l=j+4|0;c[l>>2]=(c[l>>2]|0)+1}do if(!f){if(i>>>0>=(c[k>>2]|0)>>>0)Un(a,4244);f=b+32|0;c[n>>2]=f;c[i>>2]=0;h[b+24>>3]=+(m|0);i=a+64|0;g=c[i>>2]|0;b=f-g>>4;b=b>>>0>1?g+(b+-2<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9)In(a,2130,-2,268963);b=c[b+8>>2]|0;if(!b)In(a,2130,-2,268963);else{fo(a,b,c[(c[a+304>>2]|0)+208>>2]|0,5);o=i;p=n;break}}else{cp(a,f,g);i=a+64|0;g=c[i>>2]|0;b=(c[n>>2]|0)-g>>4;b=b>>>0>1?g+(b+-2<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9)In(a,2130,-2,268963);b=c[b+8>>2]|0;if(!b)In(a,2130,-2,268963);else{fo(a,b,c[(c[a+304>>2]|0)+208>>2]|0,5);o=i;p=n;break}}while(0);o=c[o>>2]|0;b=(c[p>>2]|0)-o>>4;b=b|0?o+(b+-1<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=9)return;k=c[b+8>>2]|0;if(!k)return;j=c[a+180>>2]|0;if(!j)return;else{b=1e4;i=k}while(1){if((i|0)==(j|0)){b=31;break}if(!b){b=34;break}i=c[i+20>>2]|0;if(!i){b=34;break}else b=b+-1|0}if((b|0)==31){if(c[k>>2]&128|0)Io(a,a,d,e,k,q);Jo(a,104);return}else if((b|0)==34)return}function Sp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0,i=0;g=a+68|0;d=c[g>>2]|0;c[g>>2]=d+16;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];if(c[d>>2]&8|0){e=(c[d+8>>2]|0)+4|0;c[e>>2]=(c[e>>2]|0)+1}d=a+64|0;b=c[d>>2]|0;i=(c[g>>2]|0)-b>>4;e=i+-1|0;if(!i)jo(a,300,-1);f=+ho(a,b+(e<<4)|0);b=c[d>>2]|0;d=b+(e<<4)|0;i=c[d>>2]|0;e=b+(e<<4)+8|0;b=c[e>>2]|0;c[d>>2]=0;h[e>>3]=f;if(!(i&8)){i=c[g>>2]|0;i=i+-16|0;c[g>>2]=i;c[i>>2]=2;return +f}e=b+4|0;i=(c[e>>2]|0)+-1|0;c[e>>2]=i;if(i|0){i=c[g>>2]|0;i=i+-16|0;c[g>>2]=i;c[i>>2]=2;return +f}Yn(c[a+44>>2]|0,b);i=c[g>>2]|0;i=i+-16|0;c[g>>2]=i;c[i>>2]=2;return +f}
|
|
function nI(f,g,h,i){f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0;o=f+8|0;R=c[o>>2]|0;if(c[h>>2]&2|0){k=h+28|0;j=c[k>>2]|0;if(!j){LE(h,1);c[h>>2]=c[h>>2]|2;j=c[k>>2]|0}c[k>>2]=j+1}Q=h+16|0;L=c[Q>>2]|0;l=(c[h+20>>2]|0)+(O(L,c[i+4>>2]|0)|0)|0;p=c[f+4>>2]|0;n=a[p+9>>0]|0;l=l+(O(n&255,c[i>>2]|0)|0)|0;m=c[f+52>>2]|0;j=c[m+12>>2]|0;k=c[g+4>>2]|0;a:do if(!k)P=36;else{b:do switch(n<<24>>24){case 1:{i=k;k=0;while(1){f=(d[j>>0]|0)+k|0;N=a[j+1>>0]|0;k=N&255;j=j+2|0;if(!(N<<24>>24))if(!f){k=5;f=0}else P=10;else{f=f+k|0;j=j+k|0;P=10}do if((P|0)==10){P=0;if((f|0)==(R|0)){k=i+-1|0;if(!k){k=3;i=0;f=0;break}else{i=k;f=0}}k=0}while(0);switch(k&7){case 3:{P=36;break a}case 0:{k=f;break}default:break b}}}case 2:{i=k;k=0;while(1){k=(d[j>>0]|0)+k|0;N=a[j+1>>0]|0;f=N&255;j=j+2|0;if(!(N<<24>>24))if(!k){k=5;f=0}else P=17;else{j=j+(f<<1)|0;k=k+f|0;P=17}do if((P|0)==17){P=0;if((k|0)==(R|0)){k=i+-1|0;if(!k){k=6;i=0;f=0;break}else{i=k;f=0}}else f=k;k=0}while(0);switch(k&7){case 6:{P=36;break a}case 0:{k=f;break}default:break b}}}case 3:{i=k;k=0;while(1){k=(d[j>>0]|0)+k|0;N=a[j+1>>0]|0;f=N&255;j=j+2|0;if(!(N<<24>>24))if(!k){f=0;k=5}else P=24;else{j=j+(f*3|0)|0;k=k+f|0;P=24}do if((P|0)==24){P=0;if((k|0)==(R|0)){i=i+-1|0;if(!i){f=0;k=8;i=0;break}else k=0}f=k;k=0}while(0);switch(k&15){case 8:{P=36;break a}case 0:{k=f;break}default:break b}}}case 4:{i=0;while(1){i=(e[j>>1]|0)+i|0;N=b[j+2>>1]|0;f=N&65535;j=j+4|0;if(!(N<<16>>16))if(!i){f=k;i=0;k=5}else P=31;else{j=j+(f<<2)|0;i=i+f|0;P=31}do if((P|0)==31){P=0;if((i|0)==(R|0)){k=k+-1|0;if(!k){f=0;i=0;k=10;break}else i=0}f=k;k=0}while(0);switch(k&15){case 10:{P=36;break a}case 0:{k=f;break}default:break b}}}default:{P=36;break a}}while(0);switch(k|0){case 0:{P=36;break a}case 5:break a;default:{}}return 0}while(0);c:do if((P|0)==36){f=a[m+79>>0]|0;M=f&255;N=c[g>>2]|0;if((N|0)==0?(c[g+8>>2]|0)==(c[o>>2]|0):0){if(f<<24>>24==-1)switch(n<<24>>24){case 1:{f=c[g+12>>2]|0;while(1){k=0;do{k=(d[j>>0]|0)+k|0;P=a[j+1>>0]|0;i=P&255;j=j+2|0;if(!(P<<24>>24)){if(!k)break c}else{PQ(l+k|0,j|0,i|0)|0;k=k+i|0;j=j+i|0}}while((k|0)!=(R|0));f=f+-1|0;if(!f)break c;else l=l+(c[Q>>2]|0)|0}}case 2:{f=c[g+12>>2]|0;while(1){k=0;do{k=(d[j>>0]|0)+k|0;P=a[j+1>>0]|0;i=P&255;j=j+2|0;if(!(P<<24>>24)){if(!k)break c}else{P=i<<1;PQ(l+(k<<1)|0,j|0,P|0)|0;k=k+i|0;j=j+P|0}}while((k|0)!=(R|0));f=f+-1|0;if(!f)break c;else l=l+(c[Q>>2]|0)|0}}case 3:{f=c[g+12>>2]|0;while(1){k=0;do{k=(d[j>>0]|0)+k|0;P=a[j+1>>0]|0;i=P&255;j=j+2|0;if(!(P<<24>>24)){if(!k)break c}else{P=i*3|0;PQ(l+(k*3|0)|0,j|0,P|0)|0;k=k+i|0;j=j+P|0}}while((k|0)!=(R|0));f=f+-1|0;if(!f)break c;else l=l+(c[Q>>2]|0)|0}}case 4:{f=c[g+12>>2]|0;while(1){k=0;do{k=(e[j>>1]|0)+k|0;P=b[j+2>>1]|0;i=P&65535;j=j+4|0;if(!(P<<16>>16)){if(!k)break c}else{P=i<<2;PQ(l+(k<<2)|0,j|0,P|0)|0;k=k+i|0;j=j+P|0}}while((k|0)!=(R|0));f=f+-1|0;if(!f)break c;else l=l+(c[Q>>2]|0)|0}}default:break c}switch(n<<24>>24){case 4:{F=p+12|0;L=c[F>>2]|0;G=p+16|0;N=c[G>>2]|0;H=p+20|0;P=c[H>>2]|0;if((N|L|P|0)==16777215?(L|0)==65280|(N|0)==65280|(P|0)==65280:0){k=c[g+12>>2]|0;if(f<<24>>24==-128){o=l;while(1){i=0;do{i=(e[j>>1]|0)+i|0;P=b[j+2>>1]|0;n=P&65535;j=j+4|0;if(!(P<<16>>16)){if(!i)break c}else{l=o+(i<<2)|0;f=j;m=0;while(1){N=c[f>>2]|0;P=c[l>>2]|0;c[l>>2]=(((P&16711422)+(N&16711422)|0)>>>1)+(N&65793&P);m=m+1|0;if((m|0)==(n|0))break;else{l=l+4|0;f=f+4|0}}i=i+n|0;j=j+(n<<2)|0}}while((i|0)!=(R|0));k=k+-1|0;if(!k)break c;else o=o+(c[Q>>2]|0)|0}}else{o=l;while(1){i=0;do{i=(e[j>>1]|0)+i|0;P=b[j+2>>1]|0;n=P&65535;j=j+4|0;if(!(P<<16>>16)){if(!i)break c}else{l=o+(i<<2)|0;f=j;m=0;while(1){N=c[f>>2]|0;P=c[l>>2]|0;L=P&16711935;P=P&65280;c[l>>2]=((O((N&16711935)-L|0,M)|0)>>>8)+L&16711935|((O((N&65280)-P|0,M)|0)>>>8)+P&65280;m=m+1|0;if((m|0)==(n|0))break;else{l=l+4|0;f=f+4|0}}i=i+n|0;j=j+(n<<2)|0}}while((i|0)!=(R|0));k=k+-1|0;if(!k)break c;else o=o+(c[Q>>2]|0)|0}}}z=p+28|0;A=p+32|0;B=p+29|0;C=p+33|0;D=p+30|0;E=p+34|0;y=p+24|0;x=c[g+12>>2]|0;while(1){k=0;do{k=(e[j>>1]|0)+k|0;P=b[j+2>>1]|0;w=P&65535;j=j+4|0;if(!(P<<16>>16)){if(!k)break c}else{n=d[z>>0]|0;q=c[18232+(n<<2)>>2]|0;r=a[A>>0]|0;o=d[B>>0]|0;s=c[18232+(o<<2)>>2]|0;t=a[C>>0]|0;p=d[D>>0]|0;u=c[18232+(p<<2)>>2]|0;v=a[E>>0]|0;i=l+(k<<2)|0;f=j;m=0;while(1){K=c[f>>2]|0;g=c[i>>2]|0;U=c[F>>2]|0;L=r&255;S=c[G>>2]|0;N=t&255;J=c[H>>2]|0;P=v&255;T=d[q+((U&g)>>>L)>>0]|0;I=d[s+((S&g)>>>N)>>0]|0;g=d[u+((J&g)>>>P)>>0]|0;L=(((O((d[q+((U&K)>>>L)>>0]|0)-T|0,M)|0)>>>8)+T|0)>>>n<<L;N=(((O((d[s+((S&K)>>>N)>>0]|0)-I|0,M)|0)>>>8)+I|0)>>>o<<N;P=(((O((d[u+((J&K)>>>P)>>0]|0)-g|0,M)|0)>>>8)+g|0)>>>p<<P;c[i>>2]=L|c[y>>2]|N|P;m=m+1|0;if((m|0)==(w|0))break;else{i=i+4|0;f=f+4|0}}k=k+w|0;j=j+(w<<2)|0}}while((k|0)!=(R|0));x=x+-1|0;if(!x)break c;else l=l+(c[Q>>2]|0)|0}}case 2:{G=c[p+12>>2]|0;H=c[p+16>>2]|0;I=c[p+20>>2]|0;k=H|G|I;d:do if((k|0)<65535){switch(k|0){case 32767:break;default:break d}if((G|0)==992|(H|0)==992|(I|0)==992){k=c[g+12>>2]|0;if(f<<24>>24==-128){r=k;q=l}else{p=M>>>3;o=k;n=l;while(1){k=0;do{k=(d[j>>0]|0)+k|0;U=a[j+1>>0]|0;m=U&255;j=j+2|0;if(!(U<<24>>24)){if(!k)break c}else{i=0;l=j;f=n+(k<<1)|0;while(1){T=e[l>>1]|0;U=e[f>>1]|0;U=(U<<16|U)&65043487;U=((O(((T<<16|T)&65043487)-U|0,p)|0)>>>5)+U&65043487;b[f>>1]=U>>>16|U;i=i+1|0;if((i|0)==(m|0))break;else{l=l+2|0;f=f+2|0}}k=k+m|0;j=j+(m<<1)|0}}while((k|0)!=(R|0));o=o+-1|0;if(!o)break c;else n=n+L|0}}while(1){k=0;do{k=(d[j>>0]|0)+k|0;U=a[j+1>>0]|0;o=U&255;p=j+2|0;if(!(U<<24>>24))if(!k)break c;else j=p;else{f=q+(k<<1)|0;i=p;do if(!((f^i)&3)){if(!(i&3)){l=o;i=p;j=f}else{i=b[p>>1]|0;l=b[f>>1]|0;b[f>>1]=(((l&-1058&65535)+(i&-1058&65535)|0)>>>1)+(i&1057&l&65535);l=o+-1|0;i=j+4|0;j=f+2|0}if(l>>>0>1){m=l+-2|0;n=j+4|0;f=i;while(1){T=c[f>>2]|0;U=c[j>>2]|0;c[j>>2]=(U>>>1&2112847343)+(T>>>1&2112847343)+(T&69272609&U);l=l+-2|0;if(l>>>0<=1)break;else{f=f+4|0;j=j+4|0}}j=m&-2;l=m-j|0;i=i+4+(j<<1)|0;j=n+(j<<1)|0}if(!l)break;T=b[i>>1]|0;U=b[j>>1]|0;b[j>>1]=(((U&-1058&65535)+(T&-1058&65535)|0)>>>1)+(T&1057&U&65535)}else{i=o;l=p;j=f;while(1){i=i+-1|0;T=b[l>>1]|0;U=b[j>>1]|0;b[j>>1]=(((U&-1058&65535)+(T&-1058&65535)|0)>>>1)+(T&1057&U&65535);if(!i)break;else{l=l+2|0;j=j+2|0}}}while(0);k=k+o|0;j=p+(o<<1)|0}}while((k|0)!=(R|0));r=r+-1|0;if(!r)break c;else q=q+(c[Q>>2]|0)|0}}}else{switch(k|0){case 65535:break;default:break d}if((G|0)==2016|(H|0)==2016|(I|0)==2016){k=c[g+12>>2]|0;if(f<<24>>24==-128){r=k;q=l}else{p=M>>>3;o=k;n=l;while(1){k=0;do{k=(d[j>>0]|0)+k|0;U=a[j+1>>0]|0;m=U&255;j=j+2|0;if(!(U<<24>>24)){if(!k)break c}else{i=0;l=j;f=n+(k<<1)|0;while(1){T=e[l>>1]|0;U=e[f>>1]|0;U=(U<<16|U)&132184095;U=((O(((T<<16|T)&132184095)-U|0,p)|0)>>>5)+U&132184095;b[f>>1]=U>>>16|U;i=i+1|0;if((i|0)==(m|0))break;else{l=l+2|0;f=f+2|0}}k=k+m|0;j=j+(m<<1)|0}}while((k|0)!=(R|0));o=o+-1|0;if(!o)break c;else n=n+L|0}}while(1){k=0;do{k=(d[j>>0]|0)+k|0;U=a[j+1>>0]|0;o=U&255;p=j+2|0;if(!(U<<24>>24))if(!k)break c;else j=p;else{f=q+(k<<1)|0;i=p;do if(!((f^i)&3)){if(!(i&3)){l=o;i=p;j=f}else{i=b[p>>1]|0;l=b[f>>1]|0;b[f>>1]=(((l&-2082&65535)+(i&-2082&65535)|0)>>>1)+(i&2081&l&65535);l=o+-1|0;i=j+4|0;j=f+2|0}if(l>>>0>1){m=l+-2|0;n=j+4|0;f=i;while(1){T=c[f>>2]|0;U=c[j>>2]|0;c[j>>2]=(U>>>1&2079292399)+(T>>>1&2079292399)+(T&136382497&U);l=l+-2|0;if(l>>>0<=1)break;else{f=f+4|0;j=j+4|0}}j=m&-2;l=m-j|0;i=i+4+(j<<1)|0;j=n+(j<<1)|0}if(!l)break;T=b[i>>1]|0;U=b[j>>1]|0;b[j>>1]=(((U&-2082&65535)+(T&-2082&65535)|0)>>>1)+(T&2081&U&65535)}else{i=o;l=p;j=f;while(1){i=i+-1|0;T=b[l>>1]|0;U=b[j>>1]|0;b[j>>1]=(((U&-2082&65535)+(T&-2082&65535)|0)>>>1)+(T&2081&U&65535);if(!i)break;else{l=l+2|0;j=j+2|0}}}while(0);k=k+o|0;j=p+(o<<1)|0}}while((k|0)!=(R|0));r=r+-1|0;if(!r)break c;else q=q+(c[Q>>2]|0)|0}}}while(0);A=p+28|0;B=p+32|0;C=p+29|0;D=p+33|0;E=p+30|0;F=p+34|0;z=p+24|0;y=c[g+12>>2]|0;while(1){k=0;do{k=(d[j>>0]|0)+k|0;U=a[j+1>>0]|0;x=U&255;j=j+2|0;if(!(U<<24>>24)){if(!k)break c}else{n=d[A>>0]|0;q=c[18232+(n<<2)>>2]|0;r=a[B>>0]|0;o=d[C>>0]|0;s=c[18232+(o<<2)>>2]|0;t=a[D>>0]|0;p=d[E>>0]|0;u=c[18232+(p<<2)>>2]|0;v=a[F>>0]|0;w=c[z>>2]|0;i=l+(k<<1)|0;f=j;m=0;while(1){S=e[f>>1]|0;T=e[i>>1]|0;N=r&255;Q=t&255;U=v&255;g=d[q+((G&T)>>>N)>>0]|0;P=d[s+((H&T)>>>Q)>>0]|0;T=d[u+((I&T)>>>U)>>0]|0;b[i>>1]=(((O((d[q+((G&S)>>>N)>>0]|0)-g|0,M)|0)>>>8)+g|0)>>>n<<N|w|(((O((d[s+((H&S)>>>Q)>>0]|0)-P|0,M)|0)>>>8)+P|0)>>>o<<Q|(((O((d[u+((I&S)>>>U)>>0]|0)-T|0,M)|0)>>>8)+T|0)>>>p<<U;m=m+1|0;if((m|0)==(x|0))break;else{i=i+2|0;f=f+2|0}}k=k+x|0;j=j+(x<<1)|0}}while((k|0)!=(R|0));y=y+-1|0;if(!y)break c;else l=l+L|0}}case 3:{q=p+28|0;r=p+12|0;s=p+32|0;t=p+29|0;u=p+16|0;v=p+33|0;w=p+30|0;x=p+20|0;y=p+34|0;p=p+24|0;o=c[g+12>>2]|0;while(1){k=0;do{k=(d[j>>0]|0)+k|0;U=a[j+1>>0]|0;n=U&255;j=j+2|0;if(!(U<<24>>24)){if(!k)break c}else{i=l+(k*3|0)|0;f=j;m=0;while(1){K=(d[f+1>>0]|0)<<8|(d[f+2>>0]|0)<<16|(d[f>>0]|0);U=i+2|0;S=i+1|0;g=(d[S>>0]|0)<<8|(d[U>>0]|0)<<16|(d[i>>0]|0);D=d[q>>0]|0;A=c[18232+(D<<2)>>2]|0;B=c[r>>2]|0;N=d[s>>0]|0;H=d[t>>0]|0;E=c[18232+(H<<2)>>2]|0;F=c[u>>2]|0;P=d[v>>0]|0;L=d[w>>0]|0;I=c[18232+(L<<2)>>2]|0;J=c[x>>2]|0;T=d[y>>0]|0;C=d[A+((g&B)>>>N)>>0]|0;G=d[E+((F&g)>>>P)>>0]|0;g=d[I+((J&g)>>>T)>>0]|0;N=(((O((d[A+((B&K)>>>N)>>0]|0)-C|0,M)|0)>>>8)+C|0)>>>D<<N;P=(((O((d[E+((F&K)>>>P)>>0]|0)-G|0,M)|0)>>>8)+G|0)>>>H<<P;T=(((O((d[I+((J&K)>>>T)>>0]|0)-g|0,M)|0)>>>8)+g|0)>>>L<<T;T=N|c[p>>2]|P|T;a[i>>0]=T;a[S>>0]=T>>>8;a[U>>0]=T>>>16;m=m+1|0;if((m|0)==(n|0))break;else{i=i+3|0;f=f+3|0}}k=k+n|0;j=j+(n*3|0)|0}}while((k|0)!=(R|0));o=o+-1|0;if(!o)break c;else l=l+(c[Q>>2]|0)|0}}default:break c}}i=c[h+4>>2]|0;k=a[i+9>>0]|0;if(f<<24>>24==-1)switch(k<<24>>24){case 1:{o=(c[g+8>>2]|0)+N|0;n=l+(0-N)|0;m=c[g+12>>2]|0;while(1){k=0;e:while(1){k=(d[j>>0]|0)+k|0;U=a[j+1>>0]|0;f=U&255;j=j+2|0;if(!(U<<24>>24)){if(!k)break c}else{f:do if((k|0)<(o|0)){l=N-k|0;if((l|0)>0){i=f-l|0;if((i|0)<1)i=9;else P=46}else{l=0;i=f;P=46}if((P|0)==46){P=0;T=l+k|0;U=o-T|0;PQ(n+T|0,j+l|0,((i|0)>(U|0)?U:i)|0)|0;i=0}switch(i&15){case 9:case 0:break f;default:{}}if(!i)continue e;else break c}while(0);j=j+f|0;k=k+f|0}if((k|0)==(R|0))break}m=m+-1|0;if(!m)break c;else n=n+(c[Q>>2]|0)|0}}case 2:{o=(c[g+8>>2]|0)+N|0;n=c[g+12>>2]|0;m=l+(0-(N<<1))|0;while(1){k=0;g:while(1){k=(d[j>>0]|0)+k|0;U=a[j+1>>0]|0;f=U&255;j=j+2|0;if(!(U<<24>>24)){if(!k)break c}else{h:do if((k|0)<(o|0)){l=N-k|0;if((l|0)>0){i=f-l|0;if((i|0)<1)i=14;else P=59}else{l=0;i=f;P=59}if((P|0)==59){P=0;T=l+k|0;U=o-T|0;PQ(m+(T<<1)|0,j+(l<<1)|0,((i|0)>(U|0)?U:i)<<1|0)|0;i=0}switch(i&15){case 14:case 0:break h;default:{}}if(!i)continue g;else break c}while(0);k=k+f|0;j=j+(f<<1)|0}if((k|0)==(R|0))break}n=n+-1|0;if(!n)break c;else m=m+(c[Q>>2]|0)|0}}case 3:{o=(c[g+8>>2]|0)+N|0;n=c[g+12>>2]|0;m=l+(O(N,-3)|0)|0;while(1){k=0;i:while(1){k=(d[j>>0]|0)+k|0;U=a[j+1>>0]|0;f=U&255;j=j+2|0;if(!(U<<24>>24)){if(!k)break c}else{j:do if((k|0)<(o|0)){l=N-k|0;if((l|0)>0){i=f-l|0;if((i|0)<1)i=19;else P=72}else{l=0;i=f;P=72}if((P|0)==72){P=0;T=l+k|0;U=o-T|0;PQ(m+(T*3|0)|0,j+(l*3|0)|0,((i|0)>(U|0)?U:i)*3|0)|0;i=0}switch(i&31){case 19:case 0:break j;default:{}}if(!i)continue i;else break c}while(0);k=k+f|0;j=j+(f*3|0)|0}if((k|0)==(R|0))break}n=n+-1|0;if(!n)break c;else m=m+(c[Q>>2]|0)|0}}case 4:{o=(c[g+8>>2]|0)+N|0;n=c[g+12>>2]|0;m=l+(0-(N<<2))|0;while(1){k=0;k:while(1){k=(e[j>>1]|0)+k|0;U=b[j+2>>1]|0;f=U&65535;j=j+4|0;if(!(U<<16>>16)){if(!k)break c}else{l:do if((k|0)<(o|0)){l=N-k|0;if((l|0)>0){i=f-l|0;if((i|0)<1)i=24;else P=85}else{l=0;i=f;P=85}if((P|0)==85){P=0;T=l+k|0;U=o-T|0;PQ(m+(T<<2)|0,j+(l<<2)|0,((i|0)>(U|0)?U:i)<<2|0)|0;i=0}switch(i&31){case 24:case 0:break l;default:{}}if(!i)continue k;else break c}while(0);j=j+(f<<2)|0;k=k+f|0}if((k|0)==(R|0))break}n=n+-1|0;if(!n)break c;else m=m+(c[Q>>2]|0)|0}}default:break c}switch(k<<24>>24){case 4:{H=i+12|0;S=c[H>>2]|0;I=i+16|0;T=c[I>>2]|0;J=i+20|0;U=c[J>>2]|0;if((T|S|U|0)==16777215?(S|0)==65280|(T|0)==65280|(U|0)==65280:0){k=c[g+12>>2]|0;q=N+(c[g+8>>2]|0)|0;i=l+(0-(N<<2))|0;if(f<<24>>24==-128){p=k;o=i;while(1){k=0;m:while(1){k=(e[j>>1]|0)+k|0;U=b[j+2>>1]|0;n=U&65535;j=j+4|0;if(!(U<<16>>16)){if(!k)break c}else{n:do if((k|0)<(q|0)){l=N-k|0;if((l|0)>0){i=n-l|0;if((i|0)<1)i=108;else P=210}else{i=n;l=0;P=210}if((P|0)==210){P=0;f=l+k|0;m=q-f|0;m=(i|0)>(m|0)?m:i;if((m|0)>0){f=o+(f<<2)|0;i=j+(l<<2)|0;l=0;while(1){T=c[i>>2]|0;U=c[f>>2]|0;c[f>>2]=(((U&16711422)+(T&16711422)|0)>>>1)+(T&65793&U);l=l+1|0;if((l|0)>=(m|0)){i=0;break}else{f=f+4|0;i=i+4|0}}}else i=0}switch(i&127){case 108:case 0:break n;default:{}}if(!i)continue m;else break c}while(0);k=k+n|0;j=j+(n<<2)|0}if((k|0)==(R|0))break}p=p+-1|0;if(!p)break c;else o=o+(c[Q>>2]|0)|0}}else{p=k;o=i;while(1){k=0;o:while(1){k=(e[j>>1]|0)+k|0;U=b[j+2>>1]|0;n=U&65535;j=j+4|0;if(!(U<<16>>16)){if(!k)break c}else{p:do if((k|0)<(q|0)){l=N-k|0;if((l|0)>0){i=n-l|0;if((i|0)<1)i=118;else P=223}else{i=n;l=0;P=223}if((P|0)==223){P=0;f=l+k|0;m=q-f|0;m=(i|0)>(m|0)?m:i;if((m|0)>0){f=o+(f<<2)|0;i=j+(l<<2)|0;l=0;while(1){T=c[i>>2]|0;U=c[f>>2]|0;S=U&16711935;U=U&65280;c[f>>2]=((O((T&16711935)-S|0,M)|0)>>>8)+S&16711935|((O((T&65280)-U|0,M)|0)>>>8)+U&65280;l=l+1|0;if((l|0)>=(m|0)){i=0;break}else{f=f+4|0;i=i+4|0}}}else i=0}switch(i&127){case 118:case 0:break p;default:{}}if(!i)continue o;else break c}while(0);k=k+n|0;j=j+(n<<2)|0}if((k|0)==(R|0))break}p=p+-1|0;if(!p)break c;else o=o+(c[Q>>2]|0)|0}}}A=(c[g+8>>2]|0)+N|0;B=i+28|0;C=i+32|0;D=i+29|0;E=i+33|0;F=i+30|0;G=i+34|0;z=i+24|0;y=c[g+12>>2]|0;x=l+(0-(N<<2))|0;while(1){k=0;do{k=(e[j>>1]|0)+k|0;U=b[j+2>>1]|0;w=U&65535;j=j+4|0;if(!(U<<16>>16)){if(!k)break c}else{do if((k|0)<(A|0)){l=N-k|0;if((l|0)>0){i=w-l|0;if((i|0)<1)break}else{i=w;l=0}f=l+k|0;m=A-f|0;m=(i|0)>(m|0)?m:i;if((m|0)>0){n=d[B>>0]|0;q=c[18232+(n<<2)>>2]|0;o=d[D>>0]|0;r=c[18232+(o<<2)>>2]|0;p=d[F>>0]|0;s=c[18232+(p<<2)>>2]|0;t=d[C>>0]|0;u=d[E>>0]|0;v=d[G>>0]|0;f=x+(f<<2)|0;i=j+(l<<2)|0;l=0;while(1){P=c[i>>2]|0;U=c[f>>2]|0;K=c[H>>2]|0;g=c[I>>2]|0;L=c[J>>2]|0;S=d[q+((K&U)>>>t)>>0]|0;T=d[r+((g&U)>>>u)>>0]|0;U=d[s+((L&U)>>>v)>>0]|0;S=(((O((d[q+((K&P)>>>t)>>0]|0)-S|0,M)|0)>>>8)+S|0)>>>n<<t;T=(((O((d[r+((g&P)>>>u)>>0]|0)-T|0,M)|0)>>>8)+T|0)>>>o<<u;U=(((O((d[s+((L&P)>>>v)>>0]|0)-U|0,M)|0)>>>8)+U|0)>>>p<<v;c[f>>2]=S|c[z>>2]|T|U;l=l+1|0;if((l|0)>=(m|0))break;else{f=f+4|0;i=i+4|0}}}}while(0);k=k+w|0;j=j+(w<<2)|0}}while((k|0)!=(R|0));y=y+-1|0;if(!y)break;else x=x+(c[Q>>2]|0)|0}break}case 2:{I=c[i+12>>2]|0;J=c[i+16>>2]|0;K=c[i+20>>2]|0;k=J|I|K;q:do if((k|0)<65535){switch(k|0){case 32767:break;default:break q}if((I|0)==992|(J|0)==992|(K|0)==992){k=c[g+12>>2]|0;s=N+(c[g+8>>2]|0)|0;i=l+(0-(N<<1))|0;if(f<<24>>24==-128){r=k;q=i}else{r=M>>>3;q=k;p=i;while(1){k=0;r:while(1){k=(d[j>>0]|0)+k|0;U=a[j+1>>0]|0;o=U&255;j=j+2|0;if(!(U<<24>>24)){if(!k)break c}else{s:do if((k|0)<(s|0)){i=N-k|0;if((i|0)>0){l=o-i|0;if((l|0)<1)i=78;else P=162}else{i=0;l=o;P=162}if((P|0)==162){P=0;n=i+k|0;f=s-n|0;f=(l|0)>(f|0)?f:l;if((f|0)>0){m=0;l=j+(i<<1)|0;i=p+(n<<1)|0;while(1){T=e[l>>1]|0;U=e[i>>1]|0;U=(U<<16|U)&65043487;U=((O(((T<<16|T)&65043487)-U|0,r)|0)>>>5)+U&65043487;b[i>>1]=U>>>16|U;m=m+1|0;if((m|0)>=(f|0)){i=0;break}else{l=l+2|0;i=i+2|0}}}else i=0}switch(i&127){case 78:case 0:break s;default:{}}if(!i)continue r;else break c}while(0);k=k+o|0;j=j+(o<<1)|0}if((k|0)==(R|0))break}q=q+-1|0;if(!q)break c;else p=p+L|0}}while(1){k=0;t:while(1){k=(d[j>>0]|0)+k|0;U=a[j+1>>0]|0;p=U&255;j=j+2|0;if(!(U<<24>>24)){if(!k)break c}else{u:do if((k|0)<(s|0)){l=N-k|0;if((l|0)>0){i=p-l|0;if((i|0)<1)i=60;else P=141}else{l=0;i=p;P=141}v:do if((P|0)==141){P=0;f=l+k|0;m=s-f|0;m=(i|0)>(m|0)?m:i;l=j+(l<<1)|0;i=q+(f<<1)|0;f=l;if((i^f)&3|0){if(!m){i=0;break}while(1){m=m+-1|0;T=b[l>>1]|0;U=b[i>>1]|0;b[i>>1]=(((U&-1058&65535)+(T&-1058&65535)|0)>>>1)+(T&1057&U&65535);if(!m){i=0;break v}else{l=l+2|0;i=i+2|0}}}if(f&3){T=b[l>>1]|0;U=b[i>>1]|0;b[i>>1]=(((U&-1058&65535)+(T&-1058&65535)|0)>>>1)+(T&1057&U&65535);m=m+-1|0;l=l+2|0;i=i+2|0}if(m>>>0>1){o=m+-2|0;f=l;n=i;while(1){T=c[f>>2]|0;U=c[n>>2]|0;c[n>>2]=(T&69272609&U)+(T>>>1&2112847343)+(U>>>1&2112847343);m=m+-2|0;if(m>>>0<=1)break;else{f=f+4|0;n=n+4|0}}U=o&-2;m=o-U|0;l=l+4+(U<<1)|0;i=i+4+(U<<1)|0}if(!m){i=0;break}T=b[l>>1]|0;U=b[i>>1]|0;b[i>>1]=(((U&-1058&65535)+(T&-1058&65535)|0)>>>1)+(T&1057&U&65535);i=0}while(0);switch(i&63){case 60:case 0:break u;default:{}}if(!i)continue t;else break c}while(0);k=k+p|0;j=j+(p<<1)|0}if((k|0)==(R|0))break}r=r+-1|0;if(!r)break c;else q=q+(c[Q>>2]|0)|0}}}else{switch(k|0){case 65535:break;default:break q}if((I|0)==2016|(J|0)==2016|(K|0)==2016){k=c[g+12>>2]|0;s=N+(c[g+8>>2]|0)|0;i=l+(0-(N<<1))|0;if(f<<24>>24==-128){r=k;q=i}else{r=M>>>3;q=k;p=i;while(1){k=0;w:while(1){n=(d[j>>0]|0)+k|0;U=a[j+1>>0]|0;o=U&255;j=j+2|0;if(!(U<<24>>24))if(!n)break c;else k=n;else{x:do if((n|0)<(s|0)){k=N-n|0;if((k|0)>0){i=o-k|0;if((i|0)<1)k=49;else P=123}else{k=0;i=o;P=123}if((P|0)==123){P=0;m=k+n|0;l=s-m|0;l=(i|0)>(l|0)?l:i;if((l|0)>0){f=0;i=j+(k<<1)|0;k=p+(m<<1)|0;while(1){T=e[i>>1]|0;U=e[k>>1]|0;U=(U<<16|U)&132184095;U=((O(((T<<16|T)&132184095)-U|0,r)|0)>>>5)+U&132184095;b[k>>1]=U>>>16|U;f=f+1|0;if((f|0)>=(l|0)){k=0;break}else{i=i+2|0;k=k+2|0}}}else k=0}switch(k&63){case 49:case 0:break x;default:{}}if(!k){k=n;continue w}else break c}while(0);k=n+o|0;j=j+(o<<1)|0}if((k|0)==(R|0))break}q=q+-1|0;if(!q)break c;else p=p+L|0}}while(1){k=0;y:while(1){k=(d[j>>0]|0)+k|0;U=a[j+1>>0]|0;p=U&255;j=j+2|0;if(!(U<<24>>24)){if(!k)break c}else{z:do if((k|0)<(s|0)){l=N-k|0;if((l|0)>0){i=p-l|0;if((i|0)<1)i=31;else P=102}else{l=0;i=p;P=102}A:do if((P|0)==102){P=0;f=l+k|0;m=s-f|0;m=(i|0)>(m|0)?m:i;l=j+(l<<1)|0;i=q+(f<<1)|0;f=l;if((i^f)&3|0){if(!m){i=0;break}while(1){m=m+-1|0;T=b[l>>1]|0;U=b[i>>1]|0;b[i>>1]=(((U&-2082&65535)+(T&-2082&65535)|0)>>>1)+(T&2081&U&65535);if(!m){i=0;break A}else{l=l+2|0;i=i+2|0}}}if(f&3){T=b[l>>1]|0;U=b[i>>1]|0;b[i>>1]=(((U&-2082&65535)+(T&-2082&65535)|0)>>>1)+(T&2081&U&65535);m=m+-1|0;l=l+2|0;i=i+2|0}if(m>>>0>1){o=m+-2|0;f=l;n=i;while(1){T=c[f>>2]|0;U=c[n>>2]|0;c[n>>2]=(T&136382497&U)+(T>>>1&2079292399)+(U>>>1&2079292399);m=m+-2|0;if(m>>>0<=1)break;else{f=f+4|0;n=n+4|0}}U=o&-2;m=o-U|0;l=l+4+(U<<1)|0;i=i+4+(U<<1)|0}if(!m){i=0;break}T=b[l>>1]|0;U=b[i>>1]|0;b[i>>1]=(((U&-2082&65535)+(T&-2082&65535)|0)>>>1)+(T&2081&U&65535);i=0}while(0);switch(i&31){case 31:case 0:break z;default:{}}if(!i)continue y;else break c}while(0);k=k+p|0;j=j+(p<<1)|0}if((k|0)==(R|0))break}r=r+-1|0;if(!r)break c;else q=q+(c[Q>>2]|0)|0}}}while(0);B=(c[g+8>>2]|0)+N|0;C=i+28|0;D=i+32|0;E=i+29|0;F=i+33|0;G=i+30|0;H=i+34|0;A=i+24|0;z=c[g+12>>2]|0;y=l+(0-(N<<1))|0;while(1){k=0;B:while(1){k=(d[j>>0]|0)+k|0;U=a[j+1>>0]|0;x=U&255;j=j+2|0;if(!(U<<24>>24)){if(!k)break c}else{C:do if((k|0)<(B|0)){l=N-k|0;if((l|0)>0){i=x-l|0;if((i|0)<1)i=88;else P=178}else{i=x;l=0;P=178}if((P|0)==178){P=0;f=l+k|0;m=B-f|0;m=(i|0)>(m|0)?m:i;if((m|0)>0){n=d[C>>0]|0;q=c[18232+(n<<2)>>2]|0;o=d[E>>0]|0;r=c[18232+(o<<2)>>2]|0;p=d[G>>0]|0;s=c[18232+(p<<2)>>2]|0;t=c[A>>2]|0;u=d[D>>0]|0;v=d[F>>0]|0;w=d[H>>0]|0;f=y+(f<<1)|0;i=j+(l<<1)|0;l=0;while(1){T=e[i>>1]|0;U=e[f>>1]|0;Q=d[q+((U&I)>>>u)>>0]|0;S=d[r+((U&J)>>>v)>>0]|0;U=d[s+((U&K)>>>w)>>0]|0;b[f>>1]=(((O((d[q+((T&I)>>>u)>>0]|0)-Q|0,M)|0)>>>8)+Q|0)>>>n<<u|t|(((O((d[r+((T&J)>>>v)>>0]|0)-S|0,M)|0)>>>8)+S|0)>>>o<<v|(((O((d[s+((T&K)>>>w)>>0]|0)-U|0,M)|0)>>>8)+U|0)>>>p<<w;l=l+1|0;if((l|0)>=(m|0)){i=0;break}else{f=f+2|0;i=i+2|0}}}else i=0}switch(i&127){case 88:case 0:break C;default:{}}if(!i)continue B;else break c}while(0);k=k+x|0;j=j+(x<<1)|0}if((k|0)==(R|0))break}z=z+-1|0;if(!z)break;else y=y+L|0}break}case 3:{r=(c[g+8>>2]|0)+N|0;s=i+28|0;t=i+12|0;u=i+32|0;v=i+29|0;w=i+16|0;x=i+33|0;y=i+30|0;z=i+20|0;A=i+34|0;q=i+24|0;p=c[g+12>>2]|0;o=l+(O(N,-3)|0)|0;while(1){k=0;D:while(1){k=(d[j>>0]|0)+k|0;U=a[j+1>>0]|0;n=U&255;j=j+2|0;if(!(U<<24>>24)){if(!k)break c}else{E:do if((k|0)<(r|0)){l=N-k|0;if((l|0)>0){i=n-l|0;if((i|0)<1)i=98;else P=193}else{i=n;l=0;P=193}if((P|0)==193){P=0;f=l+k|0;m=r-f|0;m=(i|0)>(m|0)?m:i;if((m|0)>0){f=o+(f*3|0)|0;i=j+(l*3|0)|0;l=0;while(1){I=(d[i+1>>0]|0)<<8|(d[i+2>>0]|0)<<16|(d[i>>0]|0);U=f+2|0;S=f+1|0;J=(d[S>>0]|0)<<8|(d[U>>0]|0)<<16|(d[f>>0]|0);B=d[s>>0]|0;X=c[18232+(B<<2)>>2]|0;W=c[t>>2]|0;g=d[u>>0]|0;F=d[v>>0]|0;C=c[18232+(F<<2)>>2]|0;D=c[w>>2]|0;L=d[x>>0]|0;K=d[y>>0]|0;G=c[18232+(K<<2)>>2]|0;H=c[z>>2]|0;T=d[A>>0]|0;V=d[X+((J&W)>>>g)>>0]|0;E=d[C+((D&J)>>>L)>>0]|0;J=d[G+((H&J)>>>T)>>0]|0;g=(((O((d[X+((W&I)>>>g)>>0]|0)-V|0,M)|0)>>>8)+V|0)>>>B<<g;L=(((O((d[C+((D&I)>>>L)>>0]|0)-E|0,M)|0)>>>8)+E|0)>>>F<<L;T=(((O((d[G+((H&I)>>>T)>>0]|0)-J|0,M)|0)>>>8)+J|0)>>>K<<T;T=g|c[q>>2]|L|T;a[f>>0]=T;a[S>>0]=T>>>8;a[U>>0]=T>>>16;l=l+1|0;if((l|0)>=(m|0)){i=0;break}else{f=f+3|0;i=i+3|0}}}else i=0}switch(i&127){case 98:case 0:break E;default:{}}if(!i)continue D;else break c}while(0);k=k+n|0;j=j+(n*3|0)|0}if((k|0)==(R|0))break}p=p+-1|0;if(!p)break;else o=o+(c[Q>>2]|0)|0}break}default:break c}}while(0);j=c[h>>2]|0;if(!(j&2))return 0;k=h+28|0;i=c[k>>2]|0;if(!i)return 0;c[k>>2]=i+-1;if((i|0)>1)return 0;c[h>>2]=j&-3;PE(h)|0;return 0}function oI(a){a=a|0;return d[a>>0]|0|0}function pI(a){a=a|0;return e[a>>1]|0|0}function qI(a){a=a|0;return (d[a+1>>0]|0)<<8|(d[a>>0]|0)|(d[a+2>>0]|0)<<16|0}function rI(a){a=a|0;return c[a>>2]|0}function sI(a){a=a|0;var b=0,d=0,e=0,f=0;e=l;l=l+16|0;b=e;if(!a){c[b>>2]=289385;mE(310091,b);l=e;return}b=a+36|0;d=c[b>>2]|0;c[b>>2]=d+-1;if((d|0)>1){l=e;return}b=c[80023]|0;a:do if((b|0)!=(a|0)){if(b|0){do{d=b+40|0;b=c[d>>2]|0;if(!b)break a}while((b|0)!=(a|0));c[d>>2]=c[a+40>>2]}}else c[80023]=c[a+40>>2];while(0);b=c[a+4>>2]|0;if(b|0?(f=b+12|0,d=c[f>>2]|0,c[f>>2]=d+-1,(d|0)<=1):0){fN(c[b+4>>2]|0);fN(b)}fN(a);l=e;return}function tI(e,f,g){e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,P=0,Q=0,R=0,S=0,T=0;S=l;l=l+48|0;o=S+16|0;n=S+24|0;if(!e){mE(296153,S);R=-1;l=S;return R|0}p=c[e+4>>2]|0;if((d[p+8>>0]|0)<8){mE(289514,S+8|0);R=-1;l=S;return R|0}h=e+36|0;do if(!f){if((c[e+44>>2]|0)<1){R=0;l=S;return R|0}if((c[e+48>>2]|0)<1){R=0;l=S;return R|0}else j=h}else{i=c[f+8>>2]|0;if((((i|0)>=1?(j=c[f+12>>2]|0,(j|0)>=1):0)?(k=c[e+44>>2]|0,(k|0)>=1):0)?(m=c[e+48>>2]|0,(m|0)>=1):0){T=c[f>>2]|0;R=i+T|0;h=c[h>>2]|0;i=k+h|0;k=(h|0)>(T|0)?h:T;c[n>>2]=k;k=((i|0)<(R|0)?i:R)-k|0;c[n+8>>2]=k;R=c[f+4>>2]|0;j=j+R|0;i=c[e+40>>2]|0;m=m+i|0;R=(i|0)>(R|0)?i:R;c[n+4>>2]=R;R=((m|0)<(j|0)?m:j)-R|0;c[n+12>>2]=R;if((k|0)>0&(R|0)>0){j=n;break}else Q=0;l=S;return Q|0}c[n+8>>2]=0;c[n+12>>2]=0;T=0;l=S;return T|0}while(0);f=c[e+20>>2]|0;if(!f){mE(289557,o);T=-1;l=S;return T|0}R=c[e+16>>2]|0;h=f+(O(R,c[j+4>>2]|0)|0)|0;T=a[p+9>>0]|0;h=h+(O(T&255,c[j>>2]|0)|0)|0;switch(T<<24>>24){case 1:{m=g<<8|g;m=m<<16|m;n=c[j+8>>2]|0;T=c[j+12>>2]|0;f=T+-1|0;if(!T){T=0;l=S;return T|0}e=g&255;k=n+-1|0;if((n|0)<=3){i=n&-4;if(!(n&3)){T=0;l=S;return T|0}switch(n&3){case 3:{while(1){g=h+i|0;T=g+1|0;a[g>>0]=e;a[T>>0]=e;a[T+1>>0]=e;if(!f){Q=0;break}else{h=h+R|0;f=f+-1|0}}l=S;return Q|0}case 2:{while(1){T=h+i|0;a[T>>0]=e;a[T+1>>0]=e;if(!f){Q=0;break}else{h=h+R|0;f=f+-1|0}}l=S;return Q|0}case 1:{while(1){a[h+i>>0]=e;if(!f){Q=0;break}else{h=h+R|0;f=f+-1|0}}l=S;return Q|0}default:{T=0;l=S;return T|0}}}a:while(1){switch(h&3){case 1:{a[h>>0]=e;r=h+1|0;t=k;P=26;break}case 2:{r=h;t=n;P=26;break}case 3:{v=h;x=n;P=27;break}default:{z=h;B=n}}if((P|0)==26){a[r>>0]=e;v=r+1|0;x=t+-1|0;P=27}if((P|0)==27){P=0;a[v>>0]=e;z=v+1|0;B=x+-1|0}i=B>>2;j=(i+3|0)>>>2;if(i|0){switch(i&3){case 0:{q=j;s=z;P=30;break}case 3:{u=j;w=z;P=31;break}case 2:{y=j;A=z;P=32;break}case 1:{C=j;D=z;P=33;break}default:{P=40;break a}}while(1)if((P|0)==30){c[s>>2]=m;u=q;w=s+4|0;P=31;continue}else if((P|0)==31){c[w>>2]=m;y=u;A=w+4|0;P=32;continue}else if((P|0)==32){c[A>>2]=m;C=y;D=A+4|0;P=33;continue}else if((P|0)==33){P=0;c[D>>2]=m;i=C+-1|0;if(!i)break;else{q=i;s=D+4|0;P=30;continue}}}b:do if(B&3|0){i=z+(B&-4)|0;switch(B&3){case 3:{a[i>>0]=e;E=i+1|0;P=37;break}case 2:{E=i;P=37;break}case 1:{F=i;break}default:break b}if((P|0)==37){P=0;a[E>>0]=e;F=E+1|0}a[F>>0]=e}while(0);if(!f){Q=0;P=80;break}else{h=h+R|0;f=f+-1|0}}if((P|0)!=40)if((P|0)==80){l=S;return Q|0}break}case 2:{e=g<<16|g;o=c[j+8>>2]|0;T=c[j+12>>2]|0;f=T+-1|0;if(!T){T=0;l=S;return T|0}q=o+-1|0;p=g&65535;if((o|0)<=1){if(!(o&1)){T=0;l=S;return T|0}while(1){b[h+(q<<1)>>1]=p;if(!f){Q=0;break}else{h=h+R|0;f=f+-1|0}}l=S;return Q|0}c:while(1){i=h+2|0;if(!(h&2)){m=h;n=o;k=h}else{b[h>>1]=p;m=i;n=q;k=i}i=n>>1;j=(i+3|0)>>>2;if(i|0){switch(i&3){case 0:{G=j;H=k;P=48;break}case 3:{I=j;J=k;P=49;break}case 2:{K=j;L=k;P=50;break}case 1:{M=j;N=k;P=51;break}default:{P=55;break c}}while(1)if((P|0)==48){c[H>>2]=e;I=G;J=H+4|0;P=49;continue}else if((P|0)==49){c[J>>2]=e;K=I;L=J+4|0;P=50;continue}else if((P|0)==50){c[L>>2]=e;M=K;N=L+4|0;P=51;continue}else if((P|0)==51){c[N>>2]=e;i=M+-1|0;if(!i)break;else{G=i;H=N+4|0;P=48;continue}}}if(n&1|0)b[m+(n+-1<<1)>>1]=p;if(!f){Q=0;P=80;break}else{h=h+R|0;f=f+-1|0}}if((P|0)!=55)if((P|0)==80){l=S;return Q|0}break}case 3:{e=c[j+8>>2]|0;j=c[j+12>>2]|0;m=g&255;n=g>>>8&255;k=g>>>16&255;if((e|0)==0|(j|0)==0){T=0;l=S;return T|0}while(1){f=e;i=h;while(1){f=f+-1|0;a[i>>0]=m;a[i+1>>0]=n;a[i+2>>0]=k;if(!f)break;else i=i+3|0}j=j+-1|0;if(!j){Q=0;break}else h=h+R|0}l=S;return Q|0}case 4:{i=c[j+8>>2]|0;f=c[j+12>>2]|0;if(!f){T=0;l=S;return T|0}k=(i+3|0)>>>2;if(!i){T=0;l=S;return T|0}switch(i&3){case 0:{while(1){i=k;j=h;while(1){c[j>>2]=g;c[j+4>>2]=g;c[j+8>>2]=g;c[j+12>>2]=g;i=i+-1|0;if(!i)break;else j=j+16|0}f=f+-1|0;if(!f){Q=0;break}else h=h+R|0}l=S;return Q|0}case 3:{k=k+-1|0;if(!k){while(1){c[h>>2]=g;c[h+4>>2]=g;c[h+8>>2]=g;f=f+-1|0;if(!f){Q=0;break}else h=h+R|0}l=S;return Q|0}while(1){c[h>>2]=g;c[h+4>>2]=g;c[h+8>>2]=g;i=h;j=k;do{T=i;i=i+16|0;c[T+12>>2]=g;c[i>>2]=g;c[T+20>>2]=g;c[T+24>>2]=g;j=j+-1|0}while((j|0)!=0);f=f+-1|0;if(!f){Q=0;break}else h=h+R|0}l=S;return Q|0}case 1:{k=k+-1|0;m=(k|0)==0;while(1){c[h>>2]=g;if(!m){i=h;j=k;do{c[i+4>>2]=g;c[i+8>>2]=g;c[i+12>>2]=g;i=i+16|0;c[i>>2]=g;j=j+-1|0}while((j|0)!=0)}f=f+-1|0;if(!f){Q=0;break}else h=h+R|0}l=S;return Q|0}default:{k=k+-1|0;m=(k|0)==0;while(1){c[h>>2]=g;c[h+4>>2]=g;if(!m){i=h;j=k;do{c[i+8>>2]=g;T=i;i=i+16|0;c[T+12>>2]=g;c[i>>2]=g;c[T+20>>2]=g;j=j+-1|0}while((j|0)!=0)}f=f+-1|0;if(!f){Q=0;break}else h=h+R|0}l=S;return Q|0}}}default:{T=0;l=S;return T|0}}return 0}function uI(a,b,f,g,h){a=a|0;b=b|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;if((f|0)<=0){y=f<<1;return y|0}u=g+4|0;v=g+8|0;w=g+12|0;r=c[18232+((d[g+20>>0]|0)<<2)>>2]|0;s=c[18232+((d[g+21>>0]|0)<<2)>>2]|0;t=c[18232+((d[g+22>>0]|0)<<2)>>2]|0;x=d[g+24>>0]|0;y=d[g+25>>0]|0;k=d[g+26>>0]|0;l=d[h+28>>0]|0;m=d[h+32>>0]|0;n=d[h+29>>0]|0;o=d[h+33>>0]|0;p=d[h+30>>0]|0;q=d[h+34>>0]|0;j=(c[h+24>>2]|0?255:0)>>>(d[h+31>>0]|0)<<(d[h+35>>0]|0);i=0;h=b;g=a;while(1){a=e[h>>1]|0;c[g>>2]=(d[s+((c[v>>2]&a)>>>y)>>0]|0)>>>n<<o|(d[r+((a&c[u>>2])>>>x)>>0]|0)>>>l<<m|(d[t+((c[w>>2]&a)>>>k)>>0]|0)>>>p<<q|j;i=i+1|0;if((i|0)==(f|0))break;else{h=h+2|0;g=g+4|0}}y=f<<1;return y|0}function vI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;if((e|0)<=0){y=e<<2;return y|0}y=f+4|0;u=f+8|0;v=f+12|0;r=c[18232+((d[f+20>>0]|0)<<2)>>2]|0;s=c[18232+((d[f+21>>0]|0)<<2)>>2]|0;t=c[18232+((d[f+22>>0]|0)<<2)>>2]|0;w=d[f+24>>0]|0;x=d[f+25>>0]|0;j=d[f+26>>0]|0;k=d[g+28>>0]|0;l=d[g+32>>0]|0;m=d[g+29>>0]|0;n=d[g+33>>0]|0;o=d[g+30>>0]|0;p=d[g+34>>0]|0;q=d[g+31>>0]|0;i=d[g+35>>0]|0;h=0;g=b;f=a;while(1){a=c[g>>2]|0;c[f>>2]=(d[s+((c[u>>2]&a)>>>x)>>0]|0)>>>m<<n|(d[r+((c[y>>2]&a)>>>w)>>0]|0)>>>k<<l|(d[t+((c[v>>2]&a)>>>j)>>0]|0)>>>o<<p|a>>>24>>>q<<i;h=h+1|0;if((h|0)==(e|0))break;else{g=g+4|0;f=f+4|0}}y=e<<2;return y|0}function wI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;if((e|0)<=0){y=e<<2;return y|0}y=f+4|0;u=f+8|0;v=f+12|0;r=c[18232+((d[f+20>>0]|0)<<2)>>2]|0;s=c[18232+((d[f+21>>0]|0)<<2)>>2]|0;t=c[18232+((d[f+22>>0]|0)<<2)>>2]|0;w=d[f+24>>0]|0;x=d[f+25>>0]|0;j=d[f+26>>0]|0;k=d[g+28>>0]|0;l=d[g+32>>0]|0;m=d[g+29>>0]|0;n=d[g+33>>0]|0;o=d[g+30>>0]|0;p=d[g+34>>0]|0;q=d[g+31>>0]|0;i=d[g+35>>0]|0;h=0;g=b;f=a;while(1){a=c[g>>2]|0;b=a&-993|a>>>16;c[f>>2]=(d[s+((c[u>>2]&b)>>>x)>>0]|0)>>>m<<n|(d[r+((c[y>>2]&b)>>>w)>>0]|0)>>>k<<l|(d[t+((c[v>>2]&b)>>>j)>>0]|0)>>>o<<p|(a>>>2&248)>>>q<<i;h=h+1|0;if((h|0)==(e|0))break;else{g=g+4|0;f=f+4|0}}y=e<<2;return y|0}function xI(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;k=m+16|0;i=m+8|0;h=m;a:do if((a|0)==0|(a&-268435456|0)==268435456){c[b>>2]=(a&255)>>>0<3?a>>>8&255:a<<3&2040;c[g>>2]=0;c[f>>2]=0;c[e>>2]=0;c[d>>2]=0;b:do if((a|0)<390076419){switch(a|0){case 386930691:break;default:break b}c[d>>2]=255;c[e>>2]=65280;c[f>>2]=16711680;b=1;break a}else{switch(a|0){case 390076419:break;default:break b}c[d>>2]=16711680;c[e>>2]=65280;c[f>>2]=255;b=1;break a}while(0);if(((a>>>24&15)+-4|0)>>>0<3){switch(a>>>16&15){case 1:{b=3;h=28;i=224;j=0;break}case 2:{b=15;h=240;i=3840;j=61440;break}case 3:{b=31;h=992;i=31744;j=32768;break}case 4:{b=1;h=62;i=1984;j=63488;break}case 5:{b=31;h=2016;i=63488;j=0;break}case 6:{b=255;h=65280;i=16711680;j=-16777216;break}case 7:{b=1023;h=1047552;i=1072693248;j=-1073741824;break}case 8:{b=3;h=4092;i=4190208;j=-4194304;break}default:{mE(295660,i);b=0;break a}}switch(a>>>20&15){case 1:{c[d>>2]=i;c[e>>2]=h;c[f>>2]=b;b=1;break a}case 2:{c[d>>2]=j;c[e>>2]=i;c[f>>2]=h;b=1;break a}case 3:{c[g>>2]=j;c[d>>2]=i;c[e>>2]=h;c[f>>2]=b;b=1;break a}case 4:{c[d>>2]=j;c[e>>2]=i;c[f>>2]=h;c[g>>2]=b;b=1;break a}case 5:{c[f>>2]=i;c[e>>2]=h;c[d>>2]=b;b=1;break a}case 6:{c[f>>2]=j;c[e>>2]=i;c[d>>2]=h;b=1;break a}case 8:{c[f>>2]=j;c[e>>2]=i;c[d>>2]=h;c[g>>2]=b;b=1;break a}case 7:{c[g>>2]=j;c[f>>2]=i;c[e>>2]=h;c[d>>2]=b;b=1;break a}default:{mE(295660,k);b=0;break a}}}else b=1}else{mE(289599,h);b=0}while(0);l=m;return b|0}function yI(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+16|0;g=r+8|0;i=r;q=c[b+320>>2]|0;j=c[e+68>>2]|0;p=c[e+24>>2]|0;k=b+308|0;f=c[k>>2]|0;h=c[e+4>>2]|0;a:do if(f){f=c[f+4>>2]|0;if((f|0)==(h|0))f=1;else{b:do if((h|0)<825382478)if((h|0)<374740996){if((h|0)>=372645892){switch(h|0){case 372645892:break;default:break b}if((f|0)<376840196)switch(f|0){case 374740996:break;default:{f=1;break a}}else switch(f|0){case 376840196:break;default:{f=1;break a}}f=2;break a}switch(h|0){case 370546692:break;default:break b}if((f|0)<374740996){switch(f|0){case 372645892:break;default:{f=1;break a}}f=4;break a}if((f|0)<376840196){switch(f|0){case 374740996:break;default:{f=1;break a}}f=2;break a}else{switch(f|0){case 376840196:break;default:{f=1;break a}}f=2;break a}}else{if((h|0)>=376840196){switch(h|0){case 376840196:break;default:break b}if((f|0)<372645892)switch(f|0){case 370546692:break;default:{f=1;break a}}else switch(f|0){case 372645892:break;default:{f=1;break a}}f=2;break a}switch(h|0){case 374740996:break;default:break b}if((f|0)<372645892){switch(f|0){case 370546692:break;default:{f=1;break a}}f=2;break a}if((f|0)<376840196){switch(f|0){case 372645892:break;default:{f=1;break a}}f=3;break a}else{switch(f|0){case 376840196:break;default:{f=1;break a}}f=4;break a}}else{if((h|0)>=842094169)if((h|0)<1448433993)switch(h|0){case 842094169:{f=5;break a}default:break b}else switch(h|0){case 1448433993:{f=5;break a}default:break b}if((h|0)<842094158){switch(h|0){case 825382478:break;default:break b}f=7;break a}else{switch(h|0){case 842094158:break;default:break b}f=6;break a}}while(0);mE(289866,i);q=-1;l=r;return q|0}}else{c:do if((h|0)<825382478){if((h|0)<374740996){if((h|0)>=372645892)switch(h|0){case 372645892:{f=2;break a}default:break c}switch(h|0){case 370546692:break;default:break c}f=3;break a}if((h|0)<376840196){switch(h|0){case 374740996:break;default:break c}f=4;break a}else{switch(h|0){case 376840196:break;default:break c}f=1;break a}}else{if((h|0)>=842094169){if((h|0)<1448433993)switch(h|0){case 842094169:break;default:break c}else switch(h|0){case 1448433993:break;default:break c}f=5;break a}if((h|0)<842094158){switch(h|0){case 825382478:break;default:break c}f=7;break a}else{switch(h|0){case 842094158:break;default:break c}f=6;break a}}while(0);mE(289866,g);q=-1;l=r;return q|0}while(0);if((zI(b,f,p)|0)<0){q=-1;l=r;return q|0}if(c[j+24>>2]|0){n=q+16|0;vg[c[n>>2]&511](33986);b=q+28|0;m=j+4|0;Bg[c[b>>2]&255](c[m>>2]|0,c[j+32>>2]|0);vg[c[n>>2]&511](33985);Bg[c[b>>2]&255](c[m>>2]|0,c[j+36>>2]|0);vg[c[n>>2]&511](33984)}if(!(c[j+28>>2]|0)){f=j+4|0;g=q+28|0}else{n=q+16|0;vg[c[n>>2]&511](33985);g=q+28|0;f=j+4|0;Bg[c[g>>2]&255](c[f>>2]|0,c[j+36>>2]|0);vg[c[n>>2]&511](33984)}Bg[c[g>>2]&255](c[f>>2]|0,c[j>>2]|0);m=a[e+29>>0]|0;n=a[e+31>>0]|0;f=c[k>>2]|0;d:do if(!f)o=36;else{f=c[f+4>>2]|0;if((f|0)<372645892)switch(f|0){case 370546692:break;default:{o=36;break d}}else switch(f|0){case 372645892:break;default:{o=36;break d}}f=e+28|0;g=e+30|0}while(0);if((o|0)==36){f=e+30|0;g=e+28|0}k=a[f>>0]|0;f=a[g>>0]|0;g=c[q+268>>2]|0;h=g+84|0;i=g+85|0;b=g+86|0;j=g+87|0;if(((d[i>>0]|0)<<16|(d[h>>0]|0)<<24|(d[b>>0]|0)<<8|(d[j>>0]|0)|0)!=(n&255|(m&255)<<16|(k&255)<<8|(f&255)<<24|0)){zg[c[q+172>>2]&3](c[g+24>>2]|0,+(f&255)*.003921568859368563,+(m&255)*.003921568859368563,+(k&255)*.003921568859368563,+(n&255)*.003921568859368563);a[h>>0]=f;a[i>>0]=m;a[b>>0]=k;a[j>>0]=n}f=q+8|0;if((c[f>>2]|0)!=(p|0)){switch(p|0){case 4:{vg[c[q+80>>2]&511](3042);Eg[c[q+32>>2]&63](0,768,0,1);break}case 1:{vg[c[q+80>>2]&511](3042);Eg[c[q+32>>2]&63](770,771,1,771);break}case 2:{vg[c[q+80>>2]&511](3042);Eg[c[q+32>>2]&63](770,1,0,1);break}default:vg[c[q+68>>2]&511](3042)}c[f>>2]=p}f=q+12|0;if((c[f>>2]|0)==1){q=0;l=r;return q|0}vg[c[q+84>>2]&511](1);c[f>>2]=1;q=0;l=r;return q|0}function zI(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;x=l;l=l+80|0;m=x+8|0;j=x;f=x+16|0;v=b+320|0;w=c[v>>2]|0;switch(d|0){case 0:{h=1;n=9;break}case 1:{h=2;n=9;break}case 2:{h=3;n=9;break}case 3:{h=5;n=9;break}case 4:{h=4;n=9;break}case 5:{h=6;n=9;break}case 6:{h=7;n=9;break}case 7:{h=8;n=9;break}default:{}}if((n|0)==9?(p=AI(b,0,e)|0,p|0):0){i=AI(b,h,e)|0;a:do if(!i)i=0;else{r=w+268|0;q=c[r>>2]|0;if((q|0?(c[q+8>>2]|0)==(p|0):0)?(c[q+12>>2]|0)==(i|0):0){w=0;l=x;return w|0}q=c[v>>2]|0;o=q+260|0;h=c[o>>2]|0;b:do if(!h)n=24;else{k=h;while(1){if((c[k+8>>2]|0)==(p|0)?(c[k+12>>2]|0)==(i|0):0)break;d=c[k+156>>2]|0;if(!d){n=24;break b}else k=d}if((h|0)==(k|0))break;e=k+156|0;i=c[e>>2]|0;d=k+152|0;if(i|0)c[i+152>>2]=c[d>>2];j=c[d>>2]|0;if(j|0)c[j+156>>2]=i;c[d>>2]=0;c[e>>2]=h;c[h+152>>2]=k;c[o>>2]=k;h=k;n=51}while(0);c:do if((n|0)==24){h=eN(160)|0;do if(!h)mE(294869,j);else{if(c[h+-4>>2]&3|0)RQ(h|0,0,160)|0;c[h+8>>2]=p;c[h+12>>2]=i;c[h+4>>2]=e;n=fg[c[q+48>>2]&7]()|0;c[h>>2]=n;d=q+20|0;Bg[c[d>>2]&255](n,c[p>>2]|0);Bg[c[d>>2]&255](c[h>>2]|0,c[i>>2]|0);d=q+24|0;Dg[c[d>>2]&63](c[h>>2]|0,0,289893);Dg[c[d>>2]&63](c[h>>2]|0,1,289904);Dg[c[d>>2]&63](c[h>>2]|0,2,289915);Dg[c[d>>2]&63](c[h>>2]|0,3,289923);vg[c[q+132>>2]&511](c[h>>2]|0);Dg[c[q+116>>2]&63](c[h>>2]|0,35714,f);d=c[h>>2]|0;if(!(c[f>>2]|0)){vg[c[q+56>>2]&511](d);fN(h);mE(289932,m);break}j=q+128|0;n=h+16|0;c[n>>2]=hg[c[j>>2]&63](d,289962)|0;y=h+36|0;c[y>>2]=hg[c[j>>2]&63](c[h>>2]|0,289975)|0;e=h+32|0;c[e>>2]=hg[c[j>>2]&63](c[h>>2]|0,289987)|0;k=h+20|0;c[k>>2]=hg[c[j>>2]&63](c[h>>2]|0,289999)|0;m=h+24|0;c[m>>2]=hg[c[j>>2]&63](c[h>>2]|0,290009)|0;d=h+28|0;c[d>>2]=hg[c[j>>2]&63](c[h>>2]|0,290022)|0;j=h+80|0;c[j>>2]=-1;c[j+4>>2]=-1;vg[c[q+180>>2]&511](c[h>>2]|0);j=q+168|0;Bg[c[j>>2]&255](c[y>>2]|0,2);Bg[c[j>>2]&255](c[e>>2]|0,1);Bg[c[j>>2]&255](c[k>>2]|0,0);Eg[c[q+176>>2]&63](c[n>>2]|0,1,0,h+88|0);n=q+172|0;zg[c[n>>2]&3](c[m>>2]|0,1.0,1.0,1.0,1.0);zg[c[n>>2]&3](c[d>>2]|0,1.0,1.0,1.0,1.0);d=c[o>>2]|0;if(!d)d=q+264|0;else{c[h+156>>2]=d;d=d+152|0}c[d>>2]=h;c[o>>2]=h;n=q+256|0;y=c[n>>2]|0;c[n>>2]=y+1;p=p+12|0;c[p>>2]=(c[p>>2]|0)+1;p=i+12|0;c[p>>2]=(c[p>>2]|0)+1;if((y|0)<=7){n=51;break c}m=q+264|0;d=c[m>>2]|0;k=c[d+8>>2]|0;p=k+12|0;y=c[p>>2]|0;c[p>>2]=y+-1;if((y|0)<2){i=c[v>>2]|0;j=k+24|0;e=c[j>>2]|0;d=k+20|0;if(e|0)c[e+20>>2]=c[d>>2];d=c[d>>2]|0;if(d|0)c[d+24>>2]=e;d=i+252|0;if((c[d>>2]|0)==(k|0))c[d>>2]=c[j>>2];d=i+248|0;c[d>>2]=(c[d>>2]|0)+-1;vg[c[i+60>>2]&511](c[k>>2]|0);fN(k);d=c[m>>2]|0}k=c[d+12>>2]|0;p=k+12|0;y=c[p>>2]|0;c[p>>2]=y+-1;if((y|0)<2){i=c[v>>2]|0;j=k+24|0;e=c[j>>2]|0;d=k+20|0;if(e|0)c[e+20>>2]=c[d>>2];d=c[d>>2]|0;if(d|0)c[d+24>>2]=e;d=i+252|0;if((c[d>>2]|0)==(k|0))c[d>>2]=c[j>>2];d=i+248|0;c[d>>2]=(c[d>>2]|0)+-1;vg[c[i+60>>2]&511](c[k>>2]|0);fN(k);d=c[m>>2]|0}vg[c[q+56>>2]&511](c[d>>2]|0);y=c[(c[m>>2]|0)+152>>2]|0;c[m>>2]=y;fN(c[y+156>>2]|0);c[(c[m>>2]|0)+156>>2]=0;c[n>>2]=(c[n>>2]|0)+-1;n=51;break c}while(0);break a}while(0);vg[c[w+180>>2]&511](c[h>>2]|0);c[r>>2]=h;h=c[v>>2]|0;d=c[b+224>>2]|0;if((d|0?(s=c[b+228>>2]|0,s|0):0)?(g[f>>2]=2.0/+(d|0),t=f+4|0,c[t>>2]=0,c[t+4>>2]=0,c[t+8>>2]=0,c[t+12>>2]=0,t=(c[b+308>>2]|0)!=0,g[f+20>>2]=(t?2.0:-2.0)/+(s|0),u=f+24|0,c[u>>2]=0,c[u+4>>2]=0,c[u+8>>2]=0,c[u+12>>2]=0,c[u+16>>2]=0,c[u+20>>2]=0,g[f+48>>2]=-1.0,g[f+52>>2]=t?-1.0:1.0,g[f+56>>2]=0.0,g[f+60>>2]=1.0,t=h+268|0,u=c[t>>2]|0,KN(u+88|0,f,64)|0):0){Eg[c[h+176>>2]&63](c[u+16>>2]|0,1,0,f);d=(c[t>>2]|0)+88|0;h=d+64|0;do{a[d>>0]=a[f>>0]|0;d=d+1|0;f=f+1|0}while((d|0)<(h|0))}y=0;l=x;return y|0}while(0);if((c[p+12>>2]|0)<1){d=c[v>>2]|0;e=p+24|0;h=c[e>>2]|0;f=p+20|0;if(h|0)c[h+20>>2]=c[f>>2];f=c[f>>2]|0;if(f|0)c[f+24>>2]=h;f=d+252|0;if((c[f>>2]|0)==(p|0))c[f>>2]=c[e>>2];y=d+248|0;c[y>>2]=(c[y>>2]|0)+-1;vg[c[d+60>>2]&511](c[p>>2]|0);fN(p)}if(i|0?(c[i+12>>2]|0)<1:0){d=c[v>>2]|0;e=i+24|0;h=c[e>>2]|0;f=i+20|0;if(h|0)c[h+20>>2]=c[f>>2];f=c[f>>2]|0;if(f|0)c[f+24>>2]=h;f=d+252|0;if((c[f>>2]|0)==(i|0))c[f>>2]=c[e>>2];y=d+248|0;c[y>>2]=(c[y>>2]|0)+-1;vg[c[d+60>>2]&511](c[i>>2]|0);fN(i)}}c[w+268>>2]=0;y=-1;l=x;return y|0}function AI(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+48|0;u=v+32|0;t=v+24|0;p=v+16|0;o=v+8|0;f=v;q=v+40|0;r=v+36|0;s=c[b+320>>2]|0;c[q>>2]=0;a:do switch(d|0){case 0:{k=27036;break}case 1:switch(e|0){case 0:{k=27056;break a}case 1:{k=27056;break a}case 2:{k=27056;break a}case 4:{k=27056;break a}default:{g=31;break a}}case 2:switch(e|0){case 0:{k=27076;break a}case 1:{k=27076;break a}case 2:{k=27076;break a}case 4:{k=27076;break a}default:{g=31;break a}}case 3:switch(e|0){case 0:{k=27096;break a}case 1:{k=27096;break a}case 2:{k=27096;break a}case 4:{k=27096;break a}default:{g=31;break a}}case 5:switch(e|0){case 0:{k=27116;break a}case 1:{k=27116;break a}case 2:{k=27116;break a}case 4:{k=27116;break a}default:{g=31;break a}}case 4:switch(e|0){case 0:{k=27136;break a}case 1:{k=27136;break a}case 2:{k=27136;break a}case 4:{k=27136;break a}default:{g=31;break a}}case 6:{k=27016;break}case 7:{k=26996;break}case 8:{k=26976;break}default:g=31}while(0);if((g|0)==31){mE(290030,f);u=0;l=v;return u|0}j=c[k>>2]|0;if((j|0)>=1?(n=c[s+240>>2]|0,m=s+244|0,(n|0)>0):0){i=0;do{h=c[k+4+(i<<2)>>2]|0;if(!h)h=0;else{f=c[h+4>>2]|0;g=c[m>>2]|0;e=0;do{b=(f|0)==(c[g+(e<<2)>>2]|0)?h:0;e=e+1|0}while((b|0)==0&(e|0)<(n|0));h=b}i=i+1|0;b=(h|0)!=0}while(!(b|(i|0)>=(j|0)));if(b){g=s+252|0;b=c[g>>2]|0;b:do if(b|0){while(1){if((c[b+8>>2]|0)==(h|0))break;b=c[b+24>>2]|0;if(!b)break b}l=v;return b|0}while(0);f=eN(28)|0;if(!f){mE(294869,p);u=0;l=v;return u|0}if(c[f+-4>>2]&3|0){b=f;e=b+28|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(e|0))}c[f+4>>2]=d;c[f+8>>2]=h;b=gg[c[s+52>>2]&511](c[h>>2]|0)|0;c[f>>2]=b;e=c[h+4>>2]|0;if((e|0)==-1){Eg[c[s+152>>2]&63](b,1,h+12|0,0);vg[c[s+44>>2]&511](c[f>>2]|0);b=s+124|0;Dg[c[b>>2]&63](c[f>>2]|0,35713,q);if(!(c[q>>2]|0)){c[r>>2]=0;Dg[c[b>>2]&63](c[f>>2]|0,35716,r);b=c[r>>2]|0;if((b|0)>0){u=l;l=l+((1*b|0)+15&-16)|0;Eg[c[s+120>>2]&63](c[f>>2]|0,b,r,u);c[t>>2]=u;mE(290151,t)}else mE(290181,u);vg[c[s+60>>2]&511](c[f>>2]|0);fN(f);u=0;l=v;return u|0}}else{Fg[c[s+148>>2]&15](1,f,e,c[h+12>>2]|0,c[h+8>>2]|0);c[q>>2]=1}b=c[g>>2]|0;if(b|0){c[f+24>>2]=b;c[b+20>>2]=f}c[g>>2]=f;u=s+248|0;c[u>>2]=(c[u>>2]|0)+1;u=f;l=v;return u|0}}mE(290089,o);u=0;l=v;return u|0}function BI(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;e=b+320|0;m=c[e>>2]|0;h=c[b+316>>2]|0;g=c[m>>2]|0;if((c[80020]|0)!=(g|0)){c[m+268>>2]=0;if((kE(c[b+188>>2]|0,g)|0)>=0){c[80020]=c[m>>2];vE(b)|0;f=c[e>>2]|0;i=4}}else{f=m;i=4}if((i|0)==4?c[f+4>>2]|0:0){e=f+108|0;do{}while((fg[c[e>>2]&7]()|0)!=0)}e=m+8|0;if((c[e>>2]|0)!=(h|0)){switch(h|0){case 4:{vg[c[m+80>>2]&511](3042);Eg[c[m+32>>2]&63](0,768,0,1);break}case 1:{vg[c[m+80>>2]&511](3042);Eg[c[m+32>>2]&63](770,771,1,771);break}case 2:{vg[c[m+80>>2]&511](3042);Eg[c[m+32>>2]&63](770,1,0,1);break}default:vg[c[m+68>>2]&511](3042)}c[e>>2]=h}e=m+12|0;if(c[e>>2]|0){vg[c[m+72>>2]&511](1);c[e>>2]=0}if((zI(b,0,h)|0)<0){m=-1;return m|0}k=a[b+313>>0]|0;l=a[b+315>>0]|0;e=c[b+308>>2]|0;a:do if(!e)i=20;else{e=c[e+4>>2]|0;if((e|0)<372645892)switch(e|0){case 370546692:break;default:{i=20;break a}}else switch(e|0){case 372645892:break;default:{i=20;break a}}e=b+312|0;f=b+314|0}while(0);if((i|0)==20){e=b+314|0;f=b+312|0}j=a[e>>0]|0;e=a[f>>0]|0;f=c[m+268>>2]|0;g=f+80|0;h=f+81|0;b=f+82|0;i=f+83|0;if(((d[h>>0]|0)<<16|(d[g>>0]|0)<<24|(d[b>>0]|0)<<8|(d[i>>0]|0)|0)==(l&255|(k&255)<<16|(j&255)<<8|(e&255)<<24|0)){m=0;return m|0}zg[c[m+172>>2]&3](c[f+28>>2]|0,+(e&255)*.003921568859368563,+(k&255)*.003921568859368563,+(j&255)*.003921568859368563,+(l&255)*.003921568859368563);a[g>>0]=e;a[h>>0]=k;a[b>>0]=j;a[i>>0]=l;m=0;return m|0}function CI(a,b,d){a=a|0;b=b|0;d=d|0;b=l;l=l+16|0;a=b;c[a>>2]=d;DI(1,2,294706,a);l=b;return}function DI(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;m=n;if((d|0)<0|d>>>0>6){l=n;return}g=c[80025]|0;a:do if(!g)h=6;else{while(1){if((c[g>>2]|0)==(b|0))break;g=c[g+8>>2]|0;if(!g){h=6;break a}}g=g+4|0;h=9}while(0);b:do if((h|0)==6)switch(b|0){case 8:{g=1;break b}case 0:{g=27308;h=9;break b}case 2:{g=27300;h=9;break b}default:{g=27304;h=9;break b}}while(0);if((h|0)==9)g=c[g>>2]|0;if(g>>>0>d>>>0){l=n;return}h=l;l=l+4096|0;ON(h,4096,(e|0)==0?335059:e,f)|0;g=WO(h)|0;if(((g|0?(i=g+-1|0,j=h+i|0,(a[j>>0]|0)==10):0)?(a[j>>0]=0,i|0):0)?(k=h+(g+-2)|0,(a[k>>0]|0)==13):0)a[k>>0]=0;c[m>>2]=c[27312+(d<<2)>>2];c[m+4>>2]=h;JP(0,294709,m);l=n;return}function EI(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;f=l;l=l+16|0;g=f;c[g>>2]=e;e=ON(a,b,(d|0)==0?335059:d,g)|0;l=f;return e|0}function FI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+48|0;n=o+16|0;m=o+8|0;d=o;h=o+32|0;i=o+24|0;j=o+20|0;if(!a){c[d>>2]=294823;mE(310091,d);l=o;return}c[j>>2]=0;g=c[j>>2]|0;c[j>>2]=1;if(g|0){f=h+4|0;g=i+4|0;do{c[h>>2]=0;c[f>>2]=0;d=0;e=0;while(1){c[8240]=0;c[i>>2]=d;c[g>>2]=e;e=(Qf(i|0,h|0)|0)!=0;if(!(e&(c[8240]|0)==4))break;d=c[h>>2]|0;e=c[f>>2]|0}e=c[j>>2]|0;c[j>>2]=1}while((e|0)!=0)}c[j>>2]=0;d=c[80022]|0;a:do if(d){while(1){if(!(c[d>>2]|0))break;d=c[d+8>>2]|0;if(!d){d=0;e=0;k=14;break a}}d=c[d+4>>2]|0;if(d){e=c[d>>2]|0;if(e>>>0<a>>>0)k=14}else{e=0;k=14}}else{d=0;e=0;k=14}while(0);b:do if((k|0)==14){f=a+4|0;d=gN(d,(a<<3)+36|0)|0;if(!d){mE(294869,m);l=o;return}c[d>>2]=f;if(f>>>0>e>>>0)RQ(d+(e<<3|4)|0,0,f-e<<3|0)|0;e=c[80022]|0;c:do if(e|0){while(1){if(!(c[e>>2]|0))break;e=c[e+8>>2]|0;if(!e)break c}c[e+4>>2]=d;break b}while(0);e=eN(12)|0;if(e|0){c[e>>2]=0;c[e+4>>2]=d;c[e+8>>2]=c[80022];c[80022]=e;break}mE(294869,n);l=o;return}while(0);a=a+-1|0;c[d+4+(a<<3)>>2]=b;c[d+4+(a<<3)+4>>2]=0;l=o;return}function GI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+128|0;k=x+56|0;m=x+48|0;p=x+40|0;n=x+32|0;j=x+24|0;i=x+16|0;e=x+8|0;s=x+100|0;o=x+80|0;r=x+60|0;d=c[80021]|0;if(!d){mE(288511,x);a=-1;l=x;return a|0}if(a|0?(c[a>>2]|0)==(d+280|0):0){e=(b|0)!=0;if(e&(c[a+116>>2]|0)!=0){a=0;l=x;return a|0}d=PI(a)|0;if((d|0)>-1)t=(c[(c[80021]|0)+268>>2]|0)+(d*68|0)|0;else t=0;w=t+56|0;do if(e?(f=c[w>>2]|0,!((f|0)==0|(f|0)==(a|0))):0){d=c[80021]|0;if(!d){mE(288511,i);break}if((c[f>>2]|0)!=(d+280|0)){mE(307733,j);break}if((c[f+48>>2]&64|0)==0?(GI(f,0)|0,g=c[80021]|0,h=c[g+96>>2]|0,h|0):0)Bg[h&255](g,f)}while(0);if(((c[w>>2]|0)==(a|0)|0)==(b|0)?((c[a+48>>2]^c[a+52>>2])&4097|0)==0:0){a=0;l=x;return a|0}d=c[(c[80021]|0)+272>>2]|0;a:do if(d|0){b:do if(!b){e=d;while(1){if((e|0)!=(a|0)?(c[e+48>>2]&69|0)==5:0){d=PI(e)|0;if((d|0)>-1)d=(c[(c[80021]|0)+268>>2]|0)+(d*68|0)|0;else d=0;if((d|0)==(t|0)?(c[r>>2]=0,c[r+4>>2]=0,c[r+8>>2]=0,c[r+12>>2]=0,c[r+16>>2]=0,(QI(e,r)|0)==0):0){j=e;break b}}e=c[e+152>>2]|0;if(!e)break a}}else{e=d;while(1){if((e|0)!=(a|0)){if((c[e+48>>2]&69|0)==5){d=PI(e)|0;if((d|0)>-1)d=(c[(c[80021]|0)+268>>2]|0)+(d*68|0)|0;else d=0;if((d|0)==(t|0))q=35}}else q=35;if((q|0)==35?(q=0,c[r>>2]=0,c[r+4>>2]=0,c[r+8>>2]=0,c[r+12>>2]=0,c[r+16>>2]=0,(QI(e,r)|0)==0):0){j=e;break b}e=c[e+152>>2]|0;if(!e)break a}}while(0);h=j+24|0;i=r+4|0;if((c[h>>2]|0)==(c[i>>2]|0))g=(c[j+28>>2]|0)!=(c[r+8>>2]|0)&1;else g=1;b=a+48|0;c:do if((c[b>>2]&4097|0)==4097){f=t+16|0;c[s>>2]=c[f>>2];c[s+4>>2]=c[f+4>>2];c[s+8>>2]=c[f+8>>2];c[s+12>>2]=c[f+12>>2];c[s+16>>2]=c[f+16>>2];f=t+36|0;c[o>>2]=c[f>>2];c[o+4>>2]=c[f+4>>2];c[o+8>>2]=c[f+8>>2];c[o+12>>2]=c[f+12>>2];c[o+16>>2]=c[f+16>>2];do if(KN(s,o,20)|0){d=c[80021]|0;e=c[d+28>>2]|0;if(!e){mE(295126,m);d=-1;break c}if((ig[e&63](d,t,s)|0)<0){d=-1;break c}else{c[f>>2]=c[s>>2];c[f+4>>2]=c[s+4>>2];c[f+8>>2]=c[s+8>>2];c[f+12>>2]=c[s+12>>2];c[f+16>>2]=c[s+16>>2];break}}while(0);q=63}else{c[s>>2]=c[r>>2];c[s+4>>2]=c[r+4>>2];c[s+8>>2]=c[r+8>>2];c[s+12>>2]=c[r+12>>2];c[s+16>>2]=c[r+16>>2];if(!(c[s>>2]|0))c[s>>2]=c[t+36>>2];d=s+4|0;if(!(c[d>>2]|0))c[d>>2]=c[t+40>>2];e=s+8|0;if(!(c[e>>2]|0))c[e>>2]=c[t+44>>2];f=s+12|0;if(!(c[f>>2]|0))c[f>>2]=c[t+48>>2];do if(!(RI(t,s,s)|0)){a=c[e>>2]|0;c[n>>2]=c[d>>2];c[n+4>>2]=a;mE(295177,n)}else{f=t+36|0;c[o>>2]=c[f>>2];c[o+4>>2]=c[f+4>>2];c[o+8>>2]=c[f+8>>2];c[o+12>>2]=c[f+12>>2];c[o+16>>2]=c[f+16>>2];if(KN(s,o,20)|0){d=c[80021]|0;e=c[d+28>>2]|0;if(!e){mE(295126,p);break}if((ig[e&63](d,t,s)|0)<0)break;c[f>>2]=c[s>>2];c[f+4>>2]=c[s+4>>2];c[f+8>>2]=c[s+8>>2];c[f+12>>2]=c[s+12>>2];c[f+16>>2]=c[s+16>>2]}q=63;break c}while(0);d=-1}while(0);if((q|0)==63){d=c[80021]|0;e=c[d+112>>2]|0;if(e|0)Eg[e&63](d,j,t,1);c[w>>2]=j;if(!g){c[j+112>>2]=0;HI(j,6,c[h>>2]|0,c[j+28>>2]|0)}else HI(j,5,c[i>>2]|0,c[r+8>>2]|0);do if((c[80037]|0)==(j|0)?(u=c[80038]|0,v=c[80039]|0,j|0):0){d=c[80031]|0;if(d|0){Dg[d&63](j,u,v);break}d=c[80036]|0;if(!(NI(j,u,v)|0))break;OI(j,d,0,u,v)|0}while(0);c[a+52>>2]=c[b>>2];d=0}a=d;l=x;return a|0}while(0);f=t+16|0;c[s>>2]=c[f>>2];c[s+4>>2]=c[f+4>>2];c[s+8>>2]=c[f+8>>2];c[s+12>>2]=c[f+12>>2];c[s+16>>2]=c[f+16>>2];f=t+36|0;c[o>>2]=c[f>>2];c[o+4>>2]=c[f+4>>2];c[o+8>>2]=c[f+8>>2];c[o+12>>2]=c[f+12>>2];c[o+16>>2]=c[f+16>>2];do if(KN(s,o,20)|0){d=c[80021]|0;e=c[d+28>>2]|0;if(!e){mE(295126,k);break}if((ig[e&63](d,t,s)|0)>=0){c[f>>2]=c[s>>2];c[f+4>>2]=c[s+4>>2];c[f+8>>2]=c[s+8>>2];c[f+12>>2]=c[s+12>>2];c[f+16>>2]=c[s+16>>2]}}while(0);d=c[80021]|0;e=c[d+112>>2]|0;if(e|0)Eg[e&63](d,a,t,0);c[w>>2]=0;c[a+112>>2]=0;HI(a,6,c[a+24>>2]|0,c[a+28>>2]|0);do if((c[80037]|0)==(a|0)){e=c[80038]|0;f=c[80039]|0;d=c[80031]|0;if(d|0){Dg[d&63](a,e,f);break}d=c[80036]|0;if(NI(a,e,f)|0)OI(a,d,0,e,f)|0}while(0);c[a+52>>2]=c[a+48>>2];a=0;l=x;return a|0}mE(307733,e);a=-1;l=x;return a|0}function HI(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+80|0;r=y+64|0;q=y+56|0;x=y;if(!b){l=y;return}a:do switch(d<<24>>24){case 1:{g=b+48|0;i=c[g>>2]|0;if(i&4|0){l=y;return}t=i&-13|4;c[g>>2]=t;if((t&69|0)==5)GI(b,1)|0;break}case 2:{g=b+48|0;i=c[g>>2]|0;if(!(i&4)){l=y;return}else{c[g>>2]=i&-13|8;GI(b,0)|0;break a}}case 4:{if((e&-65536|0)==536805376|(f&-65536|0)==536805376){l=y;return}if(!(c[b+48>>2]&1)){c[b+56>>2]=e;c[b+60>>2]=f}g=b+16|0;i=b+20|0;if((c[g>>2]|0)==(e|0)?(c[i>>2]|0)==(f|0):0){l=y;return}c[g>>2]=e;c[i>>2]=f;break}case 5:{if(!(c[b+48>>2]&1)){c[b+64>>2]=e;c[b+68>>2]=f}g=b+24|0;i=b+28|0;if((c[g>>2]|0)==(e|0)?(c[i>>2]|0)==(f|0):0){l=y;return}c[g>>2]=e;c[i>>2]=f;c[b+112>>2]=0;HI(b,6,e,f);break}case 7:{g=b+48|0;i=c[g>>2]|0;if(!(i&64)){c[g>>2]=i&-193|64;GI(b,0)|0;break a}else{l=y;return}}case 8:{g=b+48|0;i=c[g>>2]|0;if(!(i&128)){c[g>>2]=i&-193|128;break a}else{l=y;return}}case 9:{g=b+48|0;i=c[g>>2]|0;if(!(i&192)){l=y;return}c[g>>2]=i&-193;if((i&5|0)==5)GI(b,1)|0;break}case 10:{g=b+48|0;i=c[g>>2]|0;if(i&1024|0){l=y;return}c[g>>2]=i|1024;g=c[80021]|0;i=c[g+144>>2]|0;if(i|0)Bg[i&255](g,b);break}case 11:{g=b+48|0;i=c[g>>2]|0;if(!(i&1024)){l=y;return}else{c[g>>2]=i&-1025;break a}}case 12:{n=b+48|0;g=c[n>>2]|0;if(g&512|0){l=y;return}c[n>>2]=g|512;g=c[b+100>>2]|0;if(g|0?(k=c[80021]|0,m=c[k+116>>2]|0,m|0):0)ig[m&63](k,b,g)|0;do if(c[80045]|0){g=c[80037]|0;do if((g|0)!=(b|0)){if(g|0)HI(g,11,0,0);c[80037]=b;HI(b,10,0,0);g=(c[80037]|0)==0?c[80050]|0:c[80051]|0;i=c[80028]|0;j=(i|0)==0;if((g|0)!=0&(c[80052]|0)!=0&(c[80045]|0)==0){if(j)break;gg[i&511](g)|0;break}else{if(j)break;gg[i&511](0)|0;break}}while(0);i=(c[b+24>>2]|0)/2|0;j=(c[b+28>>2]|0)/2|0;g=c[80031]|0;if(g|0){Dg[g&63](b,i,j);break}g=c[80036]|0;if(NI(b,i,j)|0)OI(b,g,0,i,j)|0}while(0);q=c[n>>2]|0;r=(q&256|c[80045]|0)==0;q=(q&512|0)==0;j=((q|r)^1)&1;g=c[80021]|0;i=c[g+276>>2]|0;if(q|r)if((i|0)==(b|0)){i=0;t=53}else i=g;else if(!((i|0)==0|(i|0)==(b|0))?(s=i+48|0,c[s>>2]=c[s>>2]&-257,s=c[g+124>>2]|0,(s|0)!=0):0){Dg[s&63](g,i,0);i=b;g=c[80021]|0;t=53}else{i=b;t=53}if((t|0)==53){c[g+276>>2]=i;i=g}g=c[i+124>>2]|0;if(g|0)Dg[g&63](i,b,j);break}case 13:{k=b+48|0;g=c[k>>2]|0;if(!(g&512)){l=y;return}g=g&-513;c[k>>2]=g;if((c[b+100>>2]|0)!=0?(i=c[80021]|0,j=c[i+116>>2]|0,(j|0)!=0):0){ig[j&63](i,b,c[b+104>>2]|0)|0;g=c[k>>2]|0}s=(g&256|c[80045]|0)==0;m=(g&512|0)==0;j=((m|s)^1)&1;g=c[80021]|0;i=c[g+276>>2]|0;if(m|s)if((i|0)==(b|0)){i=0;t=65}else i=g;else if(!((i|0)==0|(i|0)==(b|0))?(n=i+48|0,c[n>>2]=c[n>>2]&-257,n=c[g+124>>2]|0,(n|0)!=0):0){Dg[n&63](g,i,0);i=b;g=c[80021]|0;t=65}else{i=b;t=65}if((t|0)==65){c[g+276>>2]=i;i=g}g=c[i+124>>2]|0;if(g|0)Dg[g&63](i,b,j);g=c[k>>2]|0;if((g&1|0?(c[b+120>>2]|0)==0:0)?MI(296420,1)|0:0){i=c[80021]|0;if(!i){mE(288511,q);break a}if((c[b>>2]|0)!=(i+280|0)){mE(307733,r);break a}if((g&64|0)==0?(GI(b,0)|0,o=c[80021]|0,p=c[o+96>>2]|0,p|0):0)Bg[p&255](o,b)}break}default:{}}while(0);t=c[80057]|0;if(!((t|0)!=0?(c[t>>2]&1|0)!=0:0)){c[x>>2]=512;a[x+12>>0]=d;c[x+16>>2]=e;c[x+20>>2]=f;n=x+8|0;c[n>>2]=c[b+4>>2];switch(d<<24>>24){case 5:{if(c[6835]|0?(u=c[6839]|0,u|0):0){h=u;do{j=h+72|0;i=h;h=c[j>>2]|0;g=h;if(((c[i>>2]|0)==512?(a[i+12>>0]|0)==5:0)?(c[i+8>>2]|0)==(c[n>>2]|0):0){k=i+68|0;m=c[k>>2]|0;if(!m)g=h;else{c[m+72>>2]=g;g=c[j>>2]|0}if(g|0)c[g+68>>2]=m;if((c[6839]|0)==(i|0))c[6839]=g;if((c[6840]|0)==(i|0))c[6840]=c[k>>2];c[j>>2]=c[6841];c[6841]=i;c[6837]=(c[6837]|0)+-1}}while((h|0)!=0)}break}case 6:{if(c[6835]|0?(h=c[6839]|0,h|0):0)do{j=h+72|0;i=h;h=c[j>>2]|0;g=h;if(((c[i>>2]|0)==512?(a[i+12>>0]|0)==6:0)?(c[i+8>>2]|0)==(c[n>>2]|0):0){k=i+68|0;m=c[k>>2]|0;if(!m)g=h;else{c[m+72>>2]=g;g=c[j>>2]|0}if(g|0)c[g+68>>2]=m;if((c[6839]|0)==(i|0))c[6839]=g;if((c[6840]|0)==(i|0))c[6840]=c[k>>2];c[j>>2]=c[6841];c[6841]=i;c[6837]=(c[6837]|0)+-1}}while((h|0)!=0);break}case 4:{if(c[6835]|0?(v=c[6839]|0,v|0):0){h=v;do{j=h+72|0;i=h;h=c[j>>2]|0;g=h;if(((c[i>>2]|0)==512?(a[i+12>>0]|0)==4:0)?(c[i+8>>2]|0)==(c[n>>2]|0):0){k=i+68|0;m=c[k>>2]|0;if(!m)g=h;else{c[m+72>>2]=g;g=c[j>>2]|0}if(g|0)c[g+68>>2]=m;if((c[6839]|0)==(i|0))c[6839]=g;if((c[6840]|0)==(i|0))c[6840]=c[k>>2];c[j>>2]=c[6841];c[6841]=i;c[6837]=(c[6837]|0)+-1}}while((h|0)!=0)}break}case 3:{if(c[6835]|0?(w=c[6839]|0,w|0):0){h=w;do{j=h+72|0;i=h;h=c[j>>2]|0;g=h;if(((c[i>>2]|0)==512?(a[i+12>>0]|0)==3:0)?(c[i+8>>2]|0)==(c[n>>2]|0):0){k=i+68|0;m=c[k>>2]|0;if(!m)g=h;else{c[m+72>>2]=g;g=c[j>>2]|0}if(g|0)c[g+68>>2]=m;if((c[6839]|0)==(i|0))c[6839]=g;if((c[6840]|0)==(i|0))c[6840]=c[k>>2];c[j>>2]=c[6841];c[6841]=i;c[6837]=(c[6837]|0)+-1}}while((h|0)!=0)}break}default:{}}c[x+4>>2]=II()|0;g=c[80311]|0;if(g|0)do{hg[c[g>>2]&63](c[g+4>>2]|0,x)|0;g=c[g+8>>2]|0}while((g|0)!=0);if((JI(x,1,0,0,0)|0)>=1)KI(x)}if(d<<24>>24!=14){l=y;return}if(c[b+148>>2]|0){l=y;return}if(c[b+152>>2]|0){l=y;return}c[80054]=0;d=c[80056]|0;if(d|0?c[d>>2]&1|0:0){l=y;return}c[x>>2]=256;c[x+4>>2]=II()|0;g=c[80311]|0;if(g|0)do{hg[c[g>>2]&63](c[g+4>>2]|0,x)|0;g=c[g+8>>2]|0}while((g|0)!=0);if((JI(x,1,0,0,0)|0)>=1)KI(x);l=y;return}function II(){var a=0,b=0,d=0;d=l;l=l+16|0;a=d;do if(!(c[80312]|0)){c[80312]=1;if(!(ib(4,321252)|0)){c[80315]=1;break}else{Ef(321264,0)|0;b=5;break}}else b=5;while(0);if((b|0)==5?(c[80315]|0)==0:0){Ef(a|0,0)|0;b=(((c[a+4>>2]|0)-(c[80317]|0)|0)/1e3|0)+(((c[a>>2]|0)-(c[80316]|0)|0)*1e3|0)|0;l=d;return b|0}ib(4,a|0)|0;b=(((c[a+4>>2]|0)-(c[80314]|0)|0)/1e6|0)+(((c[a>>2]|0)-(c[80313]|0)|0)*1e3|0)|0;l=d;return b|0}function JI(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,m=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;o=q+8|0;i=q;do{h=c[6836]|0;g=c[6836]|0;if((g|0)==(h|0))c[6836]=h}while((g|0)!=(h|0));g=(d|0)==0;if(!h){if(g){b=-1;l=q;return b|0}mE(295058,i);b=-1;l=q;return b|0}if(g){if((b|0)>0){k=0;g=0}else{b=0;l=q;return b|0}do{do{h=c[6837]|0;d=c[6837]|0;if((d|0)==(h|0))c[6837]=h}while((d|0)!=(h|0));i=a+(k*56|0)|0;do if((h|0)<=65534){d=c[6841]|0;if(!d){d=eN(80)|0;if(!d){d=0;break}else h=d}else{c[6841]=c[d+72>>2];h=d}j=h;m=i;n=j+56|0;do{c[j>>2]=c[m>>2];j=j+4|0;m=m+4|0}while((j|0)<(n|0));if((c[i>>2]|0)==513){f=h+56|0;e=c[a+(k*56|0)+8>>2]|0;c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[h+8>>2]=f}d=c[6840]|0;if(!d){c[6839]=h;d=0}else c[d+72>>2]=h;c[6840]=h;c[h+68>>2]=d;c[h+72>>2]=0;d=c[6837]|0;c[6837]=d+1;if((d|0)<(c[6838]|0))d=1;else{c[6838]=d+1;d=1}}else{c[o>>2]=h;mE(295094,o);d=0}while(0);g=d+g|0;k=k+1|0}while((k|0)!=(b|0));l=q;return g|0}p=(d|0)==2;if(p){g=c[6842]|0;if(g|0){h=c[6843]|0;while(1){o=g+12|0;d=c[o>>2]|0;c[o>>2]=h;h=g;if(!d)break;else g=d}c[6843]=g}c[6842]=0}d=c[6839]|0;if(!a){g=0;a:while(1){do{if(!d)break a;b=d;d=c[d+72>>2]|0;b=c[b>>2]|0}while(b>>>0<e>>>0|b>>>0>f>>>0);g=g+1|0}l=q;return g|0}if((b|0)>0)g=0;else{b=0;l=q;return b|0}b:while(1){while(1){if(!d){d=54;break b}k=d+72|0;o=c[k>>2]|0;h=c[d>>2]|0;if(h>>>0<e>>>0|h>>>0>f>>>0)d=o;else break}j=a+(g*56|0)|0;m=d;n=j+56|0;do{c[j>>2]=c[m>>2];j=j+4|0;m=m+4|0}while((j|0)<(n|0));if((h|0)==513){h=c[6843]|0;if(!h)h=eN(16)|0;else c[6843]=c[h+12>>2];n=c[d+8>>2]|0;c[h>>2]=c[n>>2];c[h+4>>2]=c[n+4>>2];c[h+8>>2]=c[n+8>>2];c[h+12>>2]=c[6842];c[6842]=h;c[a+(g*56|0)+8>>2]=h}if(p){h=d+68|0;i=c[h>>2]|0;if(i|0)c[i+72>>2]=c[k>>2];j=c[k>>2]|0;if(j|0)c[j+68>>2]=i;if((c[6839]|0)==(d|0))c[6839]=j;if((c[6840]|0)==(d|0))c[6840]=c[h>>2];c[k>>2]=c[6841];c[6841]=d;c[6837]=(c[6837]|0)+-1}g=g+1|0;if((g|0)<(b|0))d=o;else{d=54;break}}if((d|0)==54){l=q;return g|0}return 0}function KI(a){a=a|0;var d=0,f=0,h=0.0,i=0,j=0,k=0,m=0.0,n=0.0,o=0,p=0.0,q=0.0,r=0,s=0,t=0.0,u=0.0,v=0.0,w=0.0,x=0.0,y=0.0,z=0,A=0.0,D=0.0,G=0,H=0,I=0,J=0,L=0,M=0.0,N=0.0;J=l;l=l+1040|0;s=J+512|0;I=J;r=J+520|0;o=c[a>>2]|0;if((o+-1792|0)>>>0>=3){l=J;return}d=a+8|0;j=c[d>>2]|0;d=c[d+4>>2]|0;f=c[80018]|0;if((f|0)<=0){l=J;return}H=c[80019]|0;G=0;while(1){z=H+(G*8232|0)|0;L=z;i=G+1|0;if((c[L>>2]|0)==(j|0)?(c[L+4>>2]|0)==(d|0):0)break;if((i|0)<(f|0))G=i;else{k=59;break}}if((k|0)==59){l=J;return}if(!z){l=J;return}A=+g[a+24>>2];D=+g[a+28>>2];switch(o|0){case 1793:{a=H+(G*8232|0)+8216|0;b[a>>1]=(b[a>>1]|0)+-1<<16>>16;d=H+(G*8232|0)+8228|0;do if(!(c[d>>2]|0)){RQ(I|0,0,512)|0;LI(H+(G*8232|0)+16|0,I);j=c[H+(G*8232|0)+8220>>2]|0;if((j|0)<=0)break;k=c[H+(G*8232|0)+8224>>2]|0;y=1.0e4;f=-1;i=0;do{m=0.0;d=0;do{v=+g[I+(d<<3)>>2];x=+g[I+(d<<3)+4>>2];w=v*.9828612374600018-x*-.18434692267188546-+g[k+(i*516|0)+(d<<3)>>2];x=v*-.18434692267188546+x*.9828612374600018-+g[k+(i*516|0)+(d<<3)+4>>2];m=m+ +C(+(w*w+x*x));d=d+1|0}while((d|0)!=64);h=0.0;d=0;do{v=+g[I+(d<<3)>>2];x=+g[I+(d<<3)+4>>2];w=v*.9828612374600018-x*.18434692267188546-+g[k+(i*516|0)+(d<<3)>>2];x=v*.18434692267188546+x*.9828612374600018-+g[k+(i*516|0)+(d<<3)+4>>2];h=h+ +C(+(w*w+x*x));d=d+1|0}while((d|0)!=64);v=m*.015625;w=h*.015625;h=w;p=.185407355427742;m=v;t=-.185407355427742;n=-.7853981633974483;x=.7853981633974483;d=v<w;a:while(1){w=x*.618033989;u=p;q=t;v=n;while(1){if(d)break;t=w+q*.38196601100000005;p=t;n=+E(+p);p=+F(+p);m=0.0;d=0;do{N=+g[I+(d<<3)>>2];v=+g[I+(d<<3)+4>>2];M=N*n-v*p-+g[k+(i*516|0)+(d<<3)>>2];v=N*p+v*n-+g[k+(i*516|0)+(d<<3)+4>>2];m=m+ +C(+(M*M+v*v));d=d+1|0}while((d|0)!=64);m=m*.015625;d=h<m;if(+B(+(q-x))>.03490658503988659){M=u;N=h;u=t;v=q;h=m;q=M;m=N}else break a}x=u;t=x*.38196601100000005+v*.618033989;p=t;n=+E(+p);p=+F(+p);h=0.0;d=0;do{w=+g[I+(d<<3)>>2];N=+g[I+(d<<3)+4>>2];M=w*n-N*p-+g[k+(i*516|0)+(d<<3)>>2];N=w*p+N*n-+g[k+(i*516|0)+(d<<3)+4>>2];h=h+ +C(+(M*M+N*N));d=d+1|0}while((d|0)!=64);n=h*.015625;d=n<m;if(!(+B(+(v-x))>.03490658503988659)){h=n;break}else{h=m;p=q;m=n;n=v}}N=d?h:m;L=N<y;f=L?i:f;y=L?N:y;i=i+1|0}while((i|0)!=(j|0));if((f|0)>-1){L=c[k+(f*516|0)+512>>2]|0;c[I>>2]=2048;s=z;z=c[s+4>>2]|0;d=I+8|0;c[d>>2]=c[s>>2];c[d+4>>2]=z;c[I+32>>2]=c[H+(G*8232|0)+8>>2];c[I+36>>2]=c[H+(G*8232|0)+12>>2];d=I+16|0;c[d>>2]=L;c[d+4>>2]=0;g[I+28>>2]=y;c[I+24>>2]=(e[a>>1]|0)+1;c[I+4>>2]=II()|0;d=c[80311]|0;if(d|0)do{hg[c[d>>2]&63](c[d+4>>2]|0,I)|0;d=c[d+8>>2]|0}while((d|0)!=0);if((JI(I,1,0,0,0)|0)>=1)KI(I)}}else{c[d>>2]=0;LI(H+(G*8232|0)+16|0,r);i=H+(G*8232|0)+8220|0;k=c[i>>2]|0;o=H+(G*8232|0)+8224|0;j=gN(c[o>>2]|0,(k*516|0)+516|0)|0;if(j){c[o>>2]=j;PQ(j+(k*516|0)|0,r|0,512)|0;d=5381;f=0;do{d=(((~~+g[j+(k*516|0)+(f<<3)>>2]>>>0)+(d*33|0)|0)*33|0)+(~~+g[j+(k*516|0)+(f<<3)+4>>2]>>>0)|0;f=f+1|0}while((f|0)!=64);c[j+(k*516|0)+512>>2]=d;c[i>>2]=(c[i>>2]|0)+1;d=z;f=c[d>>2]|0;d=c[d+4>>2]|0;if((k|0)>-1){L=c[(c[o>>2]|0)+(k*516|0)+512>>2]|0;c[I>>2]=2049;z=I+8|0;c[z>>2]=f;c[z+4>>2]=d;d=I+16|0;c[d>>2]=L;c[d+4>>2]=0;c[I+4>>2]=II()|0;d=c[80311]|0;if(d|0)do{hg[c[d>>2]&63](c[d+4>>2]|0,I)|0;d=c[d+8>>2]|0}while((d|0)!=0);if((JI(I,1,0,0,0)|0)>=1)KI(I);break}}else{mE(294869,s);d=z;f=c[d>>2]|0;d=c[d+4>>2]|0}c[I>>2]=2049;L=I+8|0;c[L>>2]=f;c[L+4>>2]=d;d=I+16|0;c[d>>2]=-1;c[d+4>>2]=-1;c[I+4>>2]=II()|0;d=c[80311]|0;if(d|0)do{hg[c[d>>2]&63](c[d+4>>2]|0,I)|0;d=c[d+8>>2]|0}while((d|0)!=0);if((JI(I,1,0,0,0)|0)>=1)KI(I)}while(0);d=b[a>>1]|0;if(d<<16>>16){L=H+(G*8232|0)+8|0;M=+((d&65535)+1|0);N=+(d&65535);g[L>>2]=(M*+g[L>>2]-A)/N;L=H+(G*8232|0)+12|0;g[L>>2]=(M*+g[L>>2]-D)/N}l=J;return}case 1794:{q=+g[a+32>>2];p=+g[a+36>>2];d=H+(G*8232|0)+20|0;f=c[d>>2]|0;if((f|0)<1024){c[H+(G*8232|0)+24+(f<<3)>>2]=c[H+(G*8232|0)+8>>2];i=H+(G*8232|0)+12|0;c[H+(G*8232|0)+24+(f<<3)+4>>2]=c[i>>2];L=c[d>>2]|0;s=L+-1|0;M=+g[H+(G*8232|0)+24+(L<<3)>>2]-+g[H+(G*8232|0)+24+(s<<3)>>2];N=+g[H+(G*8232|0)+24+(L<<3)+4>>2]-+g[H+(G*8232|0)+24+(s<<3)+4>>2];N=+C(+(M*M+N*N));s=H+(G*8232|0)+16|0;g[s>>2]=+g[s>>2]+N;c[d>>2]=L+1}else i=H+(G*8232|0)+12|0;f=H+(G*8232|0)+8|0;m=+g[f>>2];n=+g[i>>2];d=H+(G*8232|0)+8216|0;L=b[d>>1]|0;h=+(L&65535);g[f>>2]=m+q/h;h=n+p/h;g[i>>2]=h;if((L&65535)<=1){l=J;return}w=A-q-m;v=D-p-n;N=+C(+(w*w+v*v));y=+g[f>>2];x=A-y;D=D-h;M=+C(+(x*x+D*D));w=w/N;A=v/N;x=x/M;D=D/M;D=+K(+(w*D-A*x),+(w*x+A*D));L=N==0.0;c[I>>2]=2050;G=c[z+4>>2]|0;H=I+8|0;c[H>>2]=c[z>>2];c[H+4>>2]=G;g[I+24>>2]=y;g[I+28>>2]=h;g[I+16>>2]=L?0.0:D;g[I+20>>2]=L?0.0:M-N;b[I+32>>1]=b[d>>1]|0;c[I+4>>2]=II()|0;d=c[80311]|0;if(d|0)do{hg[c[d>>2]&63](c[d+4>>2]|0,I)|0;d=c[d+8>>2]|0}while((d|0)!=0);if((JI(I,1,0,0,0)|0)>=1)KI(I);l=J;return}case 1792:{L=H+(G*8232|0)+8216|0;I=(b[L>>1]|0)+1<<16>>16;b[L>>1]=I;L=H+(G*8232|0)+8|0;M=+((I&65535)+-1|0);N=+(I&65535);g[L>>2]=(A+ +g[L>>2]*M)/N;L=H+(G*8232|0)+12|0;g[L>>2]=(D+ +g[L>>2]*M)/N;g[H+(G*8232|0)+16>>2]=0.0;g[H+(G*8232|0)+24>>2]=A;g[H+(G*8232|0)+28>>2]=D;c[H+(G*8232|0)+20>>2]=1;l=J;return}default:{l=J;return}}}function LI(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0.0,h=0,i=0.0,j=0.0,k=0.0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0,B=0.0;z=l;l=l+16|0;y=z;e=+g[a>>2];x=c[a+4>>2]|0;if(e<=0.0)if((x|0)>1){d=1;f=+g[a+12>>2];i=+g[a+8>>2];do{r=i;i=+g[a+8+(d<<3)>>2];r=i-r;s=f;f=+g[a+8+(d<<3)+4>>2];s=f-s;e=e+ +C(+(r*r+s*s));d=d+1|0}while((d|0)!=(x|0));h=5}else d=0;else h=5;if((h|0)==5){q=e/63.0;if((x|0)>1){e=q;d=0;w=1;f=0.0;i=0.0;do{u=w+-1|0;h=a+8+(u<<3)|0;o=+g[h>>2];t=a+8+(w<<3)|0;n=+g[t>>2];m=o-n;u=a+8+(u<<3)+4|0;j=+g[u>>2];v=a+8+(w<<3)+4|0;k=+g[v>>2];p=j-k;p=+C(+(m*m+p*p));m=p+e;a:do if(m>q){m=o;while(1){r=(q-e)/p;s=m+r*(n-m);g[b+(d<<3)>>2]=s;j=j+r*(k-j);g[b+(d<<3)+4>>2]=j;f=f+s;i=i+j;d=d+1|0;e=e-q;j=p+e;if(!(j>q)){e=j;break a}n=+g[t>>2];m=+g[h>>2];k=+g[v>>2];j=+g[u>>2]}}else e=m;while(0);w=w+1|0}while((w|0)!=(x|0));if((d|0)>=63){a=a+8+(x+-1<<3)|0;y=c[a+4>>2]|0;h=b+504|0;c[h>>2]=c[a>>2];c[h+4>>2]=y;s=f*.015625;r=i*.015625;e=+g[b+4>>2];f=+g[b>>2];q=+K(+(r-e),+(s-f));n=s;o=r;p=+E(+q);q=+F(+q);k=s;m=s;i=r;j=r;h=0;while(1){B=f-s;A=e-r;f=n+(B*p-A*q);g[b+(h<<3)>>2]=f;A=o+(B*q+A*p);g[b+(h<<3)+4>>2]=A;e=f<k?f:k;f=f>m?f:m;j=A<j?A:j;i=A>i?A:i;d=h+1|0;if((d|0)==64)break;k=e;m=f;h=d;f=+g[b+(d<<3)>>2];e=+g[b+(d<<3)+4>>2]}f=f-e;e=i-j;d=0;do{y=b+(d<<3)|0;g[y>>2]=(+g[y>>2]-s)*256.0/f;y=b+(d<<3)+4|0;g[y>>2]=(+g[y>>2]-r)*256.0/e;d=d+1|0}while((d|0)!=64);l=z;return}}else d=0}c[y>>2]=d;mE(295035,y);l=z;return}function MI(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;if((b|0)!=0?(a[b>>0]|0)!=0:0)e=Df(b|0)|0;else e=0;f=c[80024]|0;a:do if(!f)g=10;else{while(1){if(!(JN(b,c[f>>2]|0)|0))break;f=c[f+16>>2]|0;if(!f){g=10;break a}}if(e|0?(c[f+8>>2]|0)!=2:0)break;e=c[f+4>>2]|0;g=10}while(0);if((g|0)==10)if(!e){g=d;return g|0}if((a[e>>0]|0)==48){g=0;return g|0}else return (VO(e,307100)|0)!=0|0;return 0}function NI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;g=i+8|0;f=i;h=(a|0)==0;a:do if(!h?(c[a+48>>2]&16384|0)==0:0){e=c[80021]|0;do if(e)if((c[a>>2]|0)==(e+280|0))if(((d|b|0)>-1?(c[a+24>>2]|0)>(b|0):0)&(c[a+28>>2]|0)>(d|0))break a;else break;else{mE(307733,g);break}else mE(288511,f);while(0);if((c[80037]|0)!=(a|0)){d=0;l=i;return d|0}OI(a,c[80036]|0,0,b,d)|0;e=c[80037]|0;if(!e){d=0;l=i;return d|0}HI(e,11,0,0);c[80037]=0;e=c[80050]|0;f=c[80028]|0;g=(f|0)==0;if((e|0)!=0&(c[80052]|0)!=0&(c[80045]|0)==0){if(g){d=0;l=i;return d|0}gg[f&511](e)|0;d=0;l=i;return d|0}else{if(g){d=0;l=i;return d|0}gg[f&511](0)|0;d=0;l=i;return d|0}}while(0);e=c[80037]|0;if((e|0)==(a|0)){d=1;l=i;return d|0}if(e|0)HI(e,11,0,0);c[80037]=a;if(h)e=320200;else{HI(a,10,0,0);e=(c[80037]|0)==0?320200:320204}e=c[e>>2]|0;f=c[80028]|0;g=(f|0)==0;if((e|0)!=0&(c[80052]|0)!=0&(c[80045]|0)==0){if(!g)gg[f&511](e)|0}else if(!g)gg[f&511](0)|0;OI(a,c[80036]|0,0,b,d)|0;d=1;l=i;return d|0}function OI(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+96|0;o=t+80|0;n=t+72|0;i=t+64|0;h=t+56|0;s=t;do if(c[80046]|0){g=c[80021]|0;do if(!g){mE(288511,h);h=0;g=0}else{if(a|0?(c[a>>2]|0)==(g+280|0):0){h=c[a+28>>2]|0;g=c[a+24>>2]|0;break}mE(307733,i);h=0;g=0}while(0);j=(g|0)/2|0;i=(h|0)/2|0;if((j|0)==(e|0)&(i|0)==(f|0)){c[80042]=e;g=0;break}h=(a|0)==0?c[80037]|0:a;if(h){g=c[80031]|0;if(g|0){Dg[g&63](h,j,i);k=15;break}g=c[80036]|0;if(NI(h,j,i)|0){OI(h,g,0,j,i)|0;k=15}else k=15}else k=15}else k=15;while(0);do if((k|0)==15){p=(d|0)!=0;g=c[80043]|0;h=c[80042]|0;if(p){d=f;m=e;f=g+f|0;e=h+e|0}else{d=f-g|0;m=e-h|0}if(!(d|m)){s=0;l=t;return s|0}g=c[80045]|0;if(!g){c[80038]=e;h=f}else{c[80038]=(c[80038]|0)+m;h=(c[80039]|0)+d|0}c[80039]=h;if((a|0)!=0?(c[a+48>>2]&16384|0)==0:0){h=c[80037]|0;g=c[80021]|0;do if(!g){mE(288511,n);k=0;i=0}else{if(h|0?(c[h>>2]|0)==(g+280|0):0){k=c[h+28>>2]|0;i=c[h+24>>2]|0;break}mE(307733,o);k=0;i=0}while(0);h=i+-1|0;g=k+-1|0;j=c[80038]|0;if((j|0)<(i|0))h=j;else c[80038]=h;if((h|0)<0)c[80038]=0;h=c[80039]|0;if((h|0)<(k|0))g=h;else c[80039]=g;if((g|0)<0)c[80039]=0;g=c[80045]|0}c[80040]=(c[80040]|0)+m;c[80041]=(c[80041]|0)+d;if(((c[80052]|0)!=0&(g|0)==0?(q=c[80029]|0,q|0):0)?(r=c[80051]|0,r|0):0)vg[q&511](r);r=c[80059]|0;if((r|0)!=0?(c[r>>2]&1|0)!=0:0)g=0;else{c[s>>2]=1024;g=c[80037]|0;if(!g)g=0;else g=c[g+4>>2]|0;c[s+8>>2]=g;c[s+12>>2]=b;c[s+16>>2]=c[80044];c[s+20>>2]=c[80038];c[s+24>>2]=c[80039];c[s+28>>2]=m;c[s+32>>2]=d;c[s+4>>2]=II()|0;g=c[80311]|0;if(g|0)do{hg[c[g>>2]&63](c[g+4>>2]|0,s)|0;g=c[g+8>>2]|0}while((g|0)!=0);if((JI(s,1,0,0,0)|0)<1)g=0;else{KI(s);g=1}}if(p){c[80042]=c[80038];f=c[80039]|0;break}else{c[80042]=e;break}}while(0);c[80043]=f;s=g;l=t;return s|0}function PI(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+48|0;p=r+16|0;b=r+8|0;o=r+24|0;d=c[80021]|0;if(!d){mE(288511,r);q=-1;l=r;return q|0}if(a|0?(c[a>>2]|0)==(d+280|0):0){h=c[a+16>>2]|0;b=h&-65536;if((b|0)<805240832)switch(b|0){case 536805376:{q=7;break}default:{}}else switch(b|0){case 805240832:{q=7;break}default:{}}if((q|0)==7){q=h&65535;q=(q|0)>=(c[d+264>>2]|0)?0:q;l=r;return q|0}f=c[a+20>>2]|0;b=f&-65536;if((b|0)<805240832)switch(b|0){case 536805376:{q=11;break}default:{}}else switch(b|0){case 805240832:{q=11;break}default:{}}if((q|0)==11){q=f&65535;q=(q|0)>=(c[d+264>>2]|0)?0:q;l=r;return q|0}e=c[d+264>>2]|0;g=(e|0)>0;a:do if(g){d=c[d+268>>2]|0;b=0;while(1){if((c[d+(b*68|0)+56>>2]|0)==(a|0))break;b=b+1|0;if((b|0)>=(e|0))break a}l=r;return b|0}while(0);n=((c[a+24>>2]|0)/2|0)+h|0;m=((c[a+28>>2]|0)/2|0)+f|0;if(g){i=o+8|0;j=o+4|0;k=o+12|0;h=2147483647;b=-1;a=0;while(1){TI(a,o);d=c[o>>2]|0;e=c[j>>2]|0;f=c[i>>2]|0;g=c[k>>2]|0;if((f|0)>0&(g|0)>0?(m|0)<(g+e|0)&(((n|0)>=(f+d|0)|(n|0)<(d|0)|(m|0)<(e|0))^1):0){b=a;q=21;break}d=n-d+((f|0)/-2|0)|0;e=m-e+((g|0)/-2|0)|0;d=(O(e,e)|0)+(O(d,d)|0)|0;e=(d|0)<(h|0);b=e?a:b;a=a+1|0;if((a|0)>=(c[(c[80021]|0)+264>>2]|0))break;else h=e?d:h}if((q|0)==21){l=r;return b|0}if((b|0)>=0){q=b;l=r;return q|0}}else b=-1;mE(295299,p);q=b;l=r;return q|0}mE(307733,b);q=-1;l=r;return q|0}function QI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;i=l;l=l+48|0;h=i+24|0;f=i+16|0;e=i+8|0;g=i+28|0;d=c[80021]|0;if(!d){mE(288511,i);h=-1;l=i;return h|0}if(a|0?(c[a>>2]|0)==(d+280|0):0){if(!b){c[f>>2]=295261;mE(310091,f);h=-1;l=i;return h|0}d=a+72|0;c[g>>2]=c[d>>2];c[g+4>>2]=c[d+4>>2];c[g+8>>2]=c[d+8>>2];c[g+12>>2]=c[d+12>>2];c[g+16>>2]=c[d+16>>2];d=g+4|0;if(!(c[d>>2]|0))c[d>>2]=c[a+64>>2];d=g+8|0;if(!(c[d>>2]|0))c[d>>2]=c[a+68>>2];d=PI(a)|0;if((d|0)>-1)d=(c[(c[80021]|0)+268>>2]|0)+(d*68|0)|0;else d=0;if((c[a+48>>2]&4097|0)!=4097){d=PI(a)|0;if((d|0)>-1)d=(c[(c[80021]|0)+268>>2]|0)+(d*68|0)|0;else d=0;if(!(RI(d,g,g)|0)){mE(295266,h);h=-1;l=i;return h|0}}else{h=d+16|0;c[g>>2]=c[h>>2];c[g+4>>2]=c[h+4>>2];c[g+8>>2]=c[h+8>>2];c[g+12>>2]=c[h+12>>2];c[g+16>>2]=c[h+16>>2]};c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];c[b+16>>2]=c[g+16>>2];h=0;l=i;return h|0}mE(307733,e);h=-1;l=i;return h|0}function RI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+16|0;if(!((b|0)!=0&(d|0)!=0)){mE(295214,x);d=0;l=x;return d|0}e=c[b>>2]|0;if(!e)e=c[a+16>>2]|0;w=b+12|0;f=c[w>>2]|0;if(!f)f=c[a+28>>2]|0;t=b+4|0;p=a+8|0;q=a+12|0;r=e>>>8&255;u=b+8|0;v=0;o=0;g=c[p>>2]|0;while(1){if(!g){g=c[80021]|0;i=c[g+24>>2]|0;if(!i)n=0;else{Bg[i&255](g,a);DO(c[q>>2]|0,c[p>>2]|0,20,26);n=c[p>>2]|0}}else n=g;if((o|0)>=(n|0))break;m=c[q>>2]|0;g=m+(o*20|0)|0;i=c[m+(o*20|0)+4>>2]|0;j=(i|0)!=0;if(j?(i|0)<(c[t>>2]|0):0)break;k=c[m+(o*20|0)+8>>2]|0;if((k|0)!=0?(k|0)<(c[u>>2]|0):0)if(j?(i|0)==(c[t>>2]|0):0)break;else g=v;else s=18;do if((s|0)==18){s=0;if(((v|0)!=0?(i|0)>=(c[v+4>>2]|0):0)?(k|0)>=(c[v+8>>2]|0):0){i=c[g>>2]|0;if((i|0)==(c[v>>2]|0)){m=c[m+(o*20|0)+12>>2]|0;g=((m|0)<(f|0)?1:(m|0)==(c[v+12>>2]|0))?v:g;break}if((i|0)!=(e|0)){if((i>>>8&255)>>>0<r>>>0){g=v;break}if((i^e)&251658240|0){g=v;break}}}}while(0);v=g;o=o+1|0;g=n}if(!v){d=0;l=x;return d|0}e=c[v>>2]|0;if(!e)i=c[b>>2]|0;else i=e;c[d>>2]=i;e=c[v+4>>2]|0;if((e|0)!=0?(h=c[v+8>>2]|0,(h|0)!=0):0){c[d+4>>2]=e;g=e}else{g=c[t>>2]|0;c[d+4>>2]=g;h=c[u>>2]|0}f=d+8|0;c[f>>2]=h;e=c[v+12>>2]|0;if(!e)e=c[w>>2]|0;c[d+12>>2]=e;c[d+16>>2]=c[v+16>>2];if(!i)c[d>>2]=370546692;if(!g)c[d+4>>2]=640;if(h|0){l=x;return d|0}c[f>>2]=480;l=x;return d|0}function SI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if((a|0)==(b|0)){b=0;return b|0}d=c[a+4>>2]|0;e=c[b+4>>2]|0;if((e|0)!=(d|0)){b=e-d|0;return b|0}d=c[a+8>>2]|0;e=c[b+8>>2]|0;if((e|0)!=(d|0)){b=e-d|0;return b|0}d=c[a>>2]|0;e=d>>>8&255;g=c[b>>2]|0;f=g>>>8&255;if((f|0)!=(e|0)){b=f-e|0;return b|0}e=d>>>16&15;d=g>>>16&15;if((d|0)==(e|0)){a=c[a+12>>2]|0;b=c[b+12>>2]|0;return ((b|0)==(a|0)?0:b-a|0)|0}b=d-e|0;return b|0}function TI(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;g=l;l=l+16|0;e=g+8|0;f=c[80021]|0;if(!f){mE(288511,g);l=g;return}d=c[f+264>>2]|0;if(!((a|0)>-1&(d|0)>(a|0))){c[e>>2]=d+-1;mE(295326,e);l=g;return}if(!b){l=g;return}e=c[f+268>>2]|0;d=c[f+12>>2]|0;if(d|0?(ig[d&63](f,e+(a*68|0)|0,b)|0)==0:0){l=g;return}if(!a){c[b>>2]=0;c[b+4>>2]=0;d=b+8|0}else{TI(a+-1|0,b);d=b+8|0;c[b>>2]=(c[b>>2]|0)+(c[d>>2]|0)}c[d>>2]=c[e+(a*68|0)+40>>2];c[b+12>>2]=c[e+(a*68|0)+44>>2];l=g;return}function UI(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=l;l=l+16|0;d=VI(b)|0;if(!d){h=0;l=i;return h|0}h=eN(324)|0;if(!h){mE(294869,i);h=0;l=i;return h|0}if(c[h+-4>>2]&3|0)RQ(h|0,0,324)|0;f=eN(8)|0;if(!f){fN(c[h+320>>2]|0);fN(h);mE(294869,i+8|0);h=0;l=i;return h|0}if(c[f+-4>>2]&3|0){g=f;e=g;a[e>>0]=0;a[e+1>>0]=0;a[e+2>>0]=0;a[e+3>>0]=0;g=g+4|0;a[g>>0]=0;a[g+1>>0]=0;a[g+2>>0]=0;a[g+3>>0]=0}c[f>>2]=d;g=f+4|0;c[g>>2]=d;c[h+4>>2]=173;c[h+8>>2]=24;c[h+12>>2]=27;c[h+16>>2]=28;c[h+20>>2]=29;c[h+24>>2]=30;c[h+28>>2]=18;c[h+36>>2]=19;c[h+40>>2]=174;c[h+44>>2]=31;c[h+48>>2]=414;c[h+52>>2]=415;c[h+56>>2]=416;c[h+60>>2]=25;c[h+64>>2]=26;c[h+68>>2]=27;c[h+72>>2]=13;c[h+76>>2]=2;c[h+80>>2]=20;c[h+84>>2]=248;c[h+88>>2]=175;c[h+92>>2]=249;d=h+104|0;b=27380;e=d+84|0;do{c[d>>2]=c[b>>2];d=d+4|0;b=b+4|0}while((d|0)<(e|0));b=h+320|0;c[b>>2]=f;if(c[f>>2]|0){l=i;return h|0}e=c[g>>2]|0;c[f>>2]=e;if(e|0){l=i;return h|0}d=VI(c[h+188>>2]|0)|0;if(!d){l=i;return h|0}c[g>>2]=d;c[f>>2]=d;d=c[c[b>>2]>>2]|0;if(!d){l=i;return h|0}qJ(d,h+216|0);d=c[c[b>>2]>>2]|0;if(!d){l=i;return h|0}if(!(c[h+280>>2]|0)){f=c[d+8>>2]|0;g=c[d+12>>2]|0;c[d+36>>2]=0;c[d+40>>2]=0;c[d+44>>2]=f;c[d+48>>2]=g;l=i;return h|0}else{qJ(d,h+248|0);l=i;return h|0}return 0}function VI(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+64|0;o=r+16|0;b=r+8|0;e=r+48|0;f=r+44|0;h=r+40|0;i=r+36|0;j=r+32|0;k=r+28|0;m=r+24|0;n=r+20|0;d=c[80021]|0;if(!d){mE(288511,r);q=0;l=r;return q|0}if(a|0?(c[a>>2]|0)==(d+280|0):0){p=a+112|0;q=a+108|0;b=c[q>>2]|0;if(c[p>>2]|0){q=b;l=r;return q|0}if(!b)b=d;else{c[b>>2]=c[b>>2]&-5;ME(b);b=c[80021]|0}d=c[b+132>>2]|0;do if((((d|0)!=0?(c[b+136>>2]|0)!=0:0)?(lg[d&31](b,a,e,f,h)|0)>=0:0)?(xI(c[e>>2]|0,i,j,k,m,n)|0)!=0:0){f=c[f>>2]|0;g=c[a+24>>2]|0;e=c[a+28>>2]|0;d=c[h>>2]|0;b=xJ(c[i>>2]|0,c[j>>2]|0,c[k>>2]|0,c[m>>2]|0,c[n>>2]|0)|0;if(!b){mE(295660,o);b=0;break}b=yJ(0,0,b)|0;if(b){c[b>>2]=c[b>>2]|1;c[b+20>>2]=f;c[b+8>>2]=g;c[b+12>>2]=e;c[b+16>>2]=d;c[b+36>>2]=0;c[b+40>>2]=0;c[b+44>>2]=g;c[b+48>>2]=e}else b=0}else b=0;while(0);c[q>>2]=b;if(!b){q=0;l=r;return q|0}c[p>>2]=1;c[b>>2]=c[b>>2]|4;q=b;l=r;return q|0}mE(307733,b);q=0;l=r;return q|0}function WI(b,d){b=b|0;d=d|0;b=c[b+320>>2]|0;if((a[d+12>>0]|0)!=6)return;c[b>>2]=0;c[b+4>>2]=0;return}function XI(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;i=j;g=a+320|0;h=c[g>>2]|0;e=c[h>>2]|0;a:do if(!e){f=h+4|0;k=c[f>>2]|0;c[h>>2]=k;e=k;if(!k){e=VI(c[a+188>>2]|0)|0;do if(e|0){c[f>>2]=e;c[h>>2]=e;f=c[c[g>>2]>>2]|0;if(!f)break a;qJ(f,a+216|0);e=c[c[g>>2]>>2]|0;if(e|0)if(!(c[a+280>>2]|0)){a=c[e+8>>2]|0;k=c[e+12>>2]|0;c[e+36>>2]=0;c[e+40>>2]=0;c[e+44>>2]=a;c[e+48>>2]=k;break}else{qJ(e,a+248|0);break}}while(0);e=c[h>>2]|0}if(!e){mE(296343,i);k=-1;l=j;return k|0}}while(0);if(b|0)c[b>>2]=c[e+8>>2];if(!d){k=0;l=j;return k|0}c[d>>2]=c[e+12>>2];k=0;l=j;return k|0}function YI(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+32|0;b=k+28|0;e=k+24|0;f=k+20|0;g=k+16|0;h=k+12|0;if(!(xI(c[d+4>>2]|0,b,e,f,g,h)|0)){mE(296320,k);m=-1;l=k;return m|0}b=xJ(c[b>>2]|0,c[e>>2]|0,c[f>>2]|0,c[g>>2]|0,c[h>>2]|0)|0;if(!b){mE(295660,k+8|0);b=0}else b=yJ(c[d+12>>2]|0,c[d+16>>2]|0,b)|0;i=d+68|0;c[i>>2]=b;e=a[d+28>>0]|0;f=a[d+29>>0]|0;g=a[d+30>>0]|0;do if(b){h=c[b+52>>2]|0;a[h+76>>0]=e;a[h+77>>0]=f;a[h+78>>0]=g;o=h+68|0;n=c[o>>2]|0;g=(f&e)<<24>>24==-1&g<<24>>24==-1?n&-2:n|1;c[o>>2]=g;if(!((g|0)==(n|0)|(h|0)==0)){b=c[h>>2]|0;if(b|0?(n=b+56|0,o=c[n>>2]|0,c[n>>2]=o+-1,(o|0)<2):0)ME(b);c[h>>2]=0;c[h+84>>2]=0;c[h+80>>2]=0;b=h+64|0;fN(c[b>>2]|0);c[b>>2]=0;b=c[i>>2]|0;if(!b){b=0;break}else e=a[d+31>>0]|0}else e=a[d+31>>0]|0;f=c[b+52>>2]|0;a[f+79>>0]=e;h=f+68|0;o=c[h>>2]|0;n=e<<24>>24!=-1?o|2:o&-3;c[h>>2]=n;if(!((n|0)==(o|0)|(f|0)==0)){b=c[f>>2]|0;if(b|0?(n=b+56|0,o=c[n>>2]|0,c[n>>2]=o+-1,(o|0)<2):0)ME(b);c[f>>2]=0;c[f+84>>2]=0;c[f+80>>2]=0;b=f+64|0;fN(c[b>>2]|0);c[b>>2]=0;b=c[i>>2]|0}}else b=0;while(0);uJ(b,c[d+24>>2]|0)|0;if(((c[d+8>>2]|0)==0?(j=c[i>>2]|0,j|0):0)?(m=c[j+52>>2]|0,j=m+68|0,o=c[j>>2]|0,n=o|4096,c[j>>2]=n,!((n|0)==(o|0)|(m|0)==0)):0){b=c[m>>2]|0;if(b|0?(n=b+56|0,o=c[n>>2]|0,c[n>>2]=o+-1,(o|0)<2):0)ME(b);c[m>>2]=0;c[m+84>>2]=0;c[m+80>>2]=0;o=m+64|0;fN(c[o>>2]|0);c[o>>2]=0}o=((c[i>>2]|0)==0)<<31>>31;l=k;return o|0}function ZI(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;j=c[d+68>>2]|0;g=d+28|0;f=a[g>>0]|0;h=d+29|0;e=a[h>>0]|0;i=d+30|0;b=a[i>>0]|0;if((j|0)==0?1:(e&f&b)<<24>>24==-1){if(!j){j=-1;return j|0}}else{d=c[j+52>>2]|0;m=d+68|0;k=c[m>>2]|0;l=k&-4097;c[m>>2]=l;if(!((l|0)==(k|0)|(d|0)==0)){b=c[d>>2]|0;if(b|0?(l=b+56|0,m=c[l>>2]|0,c[l>>2]=m+-1,(m|0)<2):0)ME(b);c[d>>2]=0;c[d+84>>2]=0;c[d+80>>2]=0;f=d+64|0;fN(c[f>>2]|0);c[f>>2]=0;f=a[g>>0]|0;e=a[h>>0]|0;b=a[i>>0]|0}}d=c[j+52>>2]|0;a[d+76>>0]=f;a[d+77>>0]=e;a[d+78>>0]=b;k=d+68|0;m=c[k>>2]|0;l=(e&f)<<24>>24==-1&b<<24>>24==-1?m&-2:m|1;c[k>>2]=l;if((l|0)==(m|0)|(d|0)==0){m=0;return m|0}b=c[d>>2]|0;if(b|0?(l=b+56|0,m=c[l>>2]|0,c[l>>2]=m+-1,(m|0)<2):0)ME(b);c[d>>2]=0;c[d+84>>2]=0;c[d+80>>2]=0;m=d+64|0;fN(c[m>>2]|0);c[m>>2]=0;m=0;return m|0}function _I(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;f=c[d+68>>2]|0;d=d+31|0;b=a[d>>0]|0;if(b<<24>>24==-1)if(!f){f=-1;return f|0}else b=-1;else if((c[(c[f+4>>2]|0)+24>>2]|0)!=0?(e=c[f+52>>2]|0,i=e+68|0,g=c[i>>2]|0,h=g&-4097,c[i>>2]=h,!((h|0)==(g|0)|(e|0)==0)):0){b=c[e>>2]|0;if(b|0?(h=b+56|0,i=c[h>>2]|0,c[h>>2]=i+-1,(i|0)<2):0)ME(b);c[e>>2]=0;c[e+84>>2]=0;c[e+80>>2]=0;b=e+64|0;fN(c[b>>2]|0);c[b>>2]=0;b=a[d>>0]|0}d=c[f+52>>2]|0;a[d+79>>0]=b;g=d+68|0;i=c[g>>2]|0;h=b<<24>>24!=-1?i|2:i&-3;c[g>>2]=h;if((h|0)==(i|0)|(d|0)==0){i=0;return i|0}b=c[d>>2]|0;if(b|0?(h=b+56|0,i=c[h>>2]|0,c[h>>2]=i+-1,(i|0)<2):0)ME(b);c[d>>2]=0;c[d+84>>2]=0;c[d+80>>2]=0;i=d+64|0;fN(c[i>>2]|0);c[i>>2]=0;i=0;return i|0}function $I(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;d=c[b+68>>2]|0;b=b+24|0;a=c[b>>2]|0;switch(a|0){case 4:case 2:{if((d|0)!=0?(e=c[d+52>>2]|0,h=e+68|0,f=c[h>>2]|0,g=f&-4097,c[h>>2]=g,!((g|0)==(f|0)|(e|0)==0)):0){a=c[e>>2]|0;if(a|0?(g=a+56|0,h=c[g>>2]|0,c[g>>2]=h+-1,(h|0)<2):0)ME(a);c[e>>2]=0;c[e+84>>2]=0;c[e+80>>2]=0;a=e+64|0;fN(c[a>>2]|0);c[a>>2]=0;a=c[b>>2]|0}break}default:{}}return uJ(d,a)|0}function aJ(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0;l=c[b+68>>2]|0;a=c[l>>2]|0;if(a&2){h=l+28|0;b=c[h>>2]|0;if(!b){LE(l,1);a=c[l>>2]|2;c[l>>2]=a;b=c[h>>2]|0}c[h>>2]=b+1}i=l+16|0;b=d[(c[l+4>>2]|0)+9>>0]|0;j=O(c[e+8>>2]|0,b)|0;k=e+12|0;if((c[k>>2]|0)>0){a=(c[l+20>>2]|0)+(O(c[i>>2]|0,c[e+4>>2]|0)|0)|0;h=0;b=a+(O(b,c[e>>2]|0)|0)|0;a=f;while(1){PQ(b|0,a|0,j|0)|0;h=h+1|0;if((h|0)>=(c[k>>2]|0))break;else{b=b+(c[i>>2]|0)|0;a=a+g|0}}a=c[l>>2]|0}if(!(a&2))return 0;b=l+28|0;h=c[b>>2]|0;if(!h)return 0;c[b>>2]=h+-1;if((h|0)>1)return 0;c[l>>2]=a&-3;PE(l)|0;return 0}function bJ(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0;a=c[b+68>>2]|0;b=c[a+16>>2]|0;h=(c[a+20>>2]|0)+(O(b,c[e+4>>2]|0)|0)|0;c[f>>2]=h+(O(d[(c[a+4>>2]|0)+9>>0]|0,c[e>>2]|0)|0);c[g>>2]=b;return 0}function cJ(a,b){a=a|0;b=b|0;return}function dJ(a,b){a=a|0;b=b|0;a=c[a+320>>2]|0;c[a>>2]=c[((b|0)==0?a+4|0:b+68|0)>>2];return 0}function eJ(a){a=a|0;var b=0;b=c[c[a+320>>2]>>2]|0;if(!b)return 0;qJ(b,a+216|0);return 0}function fJ(a){a=a|0;var b=0,d=0;b=c[c[a+320>>2]>>2]|0;if(!b)return 0;if(!(c[a+280>>2]|0)){d=c[b+8>>2]|0;a=c[b+12>>2]|0;c[b+36>>2]=0;c[b+40>>2]=0;c[b+44>>2]=d;c[b+48>>2]=a;return 0}else{qJ(b,a+248|0);return 0}return 0}function gJ(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;m=l;l=l+16|0;j=m;f=b+320|0;g=c[f>>2]|0;d=c[g>>2]|0;a:do if(!d){e=g+4|0;i=c[e>>2]|0;c[g>>2]=i;d=i;if(!i){d=VI(c[b+188>>2]|0)|0;do if(d|0){c[e>>2]=d;c[g>>2]=d;e=c[c[f>>2]>>2]|0;if(!e){h=10;break a}qJ(e,b+216|0);d=c[c[f>>2]>>2]|0;if(d|0)if(!(c[b+280>>2]|0)){f=c[d+8>>2]|0;i=c[d+12>>2]|0;c[d+36>>2]=0;c[d+40>>2]=0;c[d+44>>2]=f;c[d+48>>2]=i;break}else{qJ(d,b+248|0);break}}while(0);d=c[g>>2]|0}if(!d){k=-1;l=m;return k|0}else e=j}else h=10;while(0);if((h|0)==10)e=j;n=AJ(c[d+4>>2]|0,a[b+312>>0]|0,a[b+313>>0]|0,a[b+314>>0]|0,a[b+315>>0]|0)|0;f=d+36|0;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];f=d+8|0;i=c[f>>2]|0;e=d+12|0;o=c[e>>2]|0;g=d+36|0;c[g>>2]=0;b=d+40|0;c[b>>2]=0;h=d+44|0;c[h>>2]=i;i=d+48|0;c[i>>2]=o;tI(d,0,n)|0;d=c[f>>2]|0;e=c[e>>2]|0;f=c[j+8>>2]|0;if((f|0)>=1?(k=c[j+12>>2]|0,!((k|0)<1|(d|0)<1|(e|0)<1)):0){o=c[j>>2]|0;n=f+o|0;o=(o|0)>0?o:0;c[g>>2]=o;c[h>>2]=((d|0)<(n|0)?d:n)-o;d=c[j+4>>2]|0;o=k+d|0;d=(d|0)>0?d:0;c[b>>2]=d;d=((e|0)<(o|0)?e:o)-d|0}else{c[h>>2]=0;d=0}c[i>>2]=d;o=0;l=m;return o|0}function hJ(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0.0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=l;l=l+32|0;s=C+24|0;z=C+16|0;r=C+8|0;q=C;n=e+320|0;p=c[n>>2]|0;i=c[p>>2]|0;a:do if(!i){k=p+4|0;A=c[k>>2]|0;c[p>>2]=A;i=A;if(!A){j=VI(c[e+188>>2]|0)|0;do if(j|0){c[k>>2]=j;c[p>>2]=j;i=c[c[n>>2]>>2]|0;if(!i)break a;qJ(i,e+216|0);i=c[c[n>>2]>>2]|0;if(i|0)if(!(c[e+280>>2]|0)){y=c[i+8>>2]|0;A=c[i+12>>2]|0;c[i+36>>2]=0;c[i+40>>2]=0;c[i+44>>2]=y;c[i+48>>2]=A;break}else{qJ(i,e+248|0);break}}while(0);i=c[p>>2]|0}if(!i){h=-1;l=C;return h|0}else j=i}else j=i;while(0);A=l;l=l+((1*(h<<3)|0)+15&-16)|0;i=c[e+216>>2]|0;k=c[e+220>>2]|0;y=(h|0)>0;if(!(k|i)){if(y){i=0;do{c[A+(i<<3)>>2]=~~+g[f+(i<<3)>>2];c[A+(i<<3)+4>>2]=~~+g[f+(i<<3)+4>>2];i=i+1|0}while((i|0)!=(h|0))}}else if(y){o=+(i|0);m=+(k|0);i=0;do{c[A+(i<<3)>>2]=~~(o+ +g[f+(i<<3)>>2]);c[A+(i<<3)+4>>2]=~~(m+ +g[f+(i<<3)+4>>2]);i=i+1|0}while((i|0)!=(h|0))}w=c[e+316>>2]|0;n=a[e+312>>0]|0;x=a[e+315>>0]|0;p=a[e+313>>0]|0;f=a[e+314>>0]|0;if(!w){v=j+4|0;i=c[v>>2]|0;u=AJ(i,n,p,f,x)|0;if(!j){mE(296153,q);h=-1;l=C;return h|0}if((d[i+8>>0]|0)<8){mE(296275,r);h=-1;l=C;return h|0}q=c[j+36>>2]|0;r=(c[j+44>>2]|0)+q|0;s=c[j+40>>2]|0;t=(c[j+48>>2]|0)+s|0;if(!y){h=0;l=C;return h|0}f=u&255;e=j+20|0;j=j+16|0;k=u&65535;i=0;b:while(1){n=c[A+(i<<3)>>2]|0;p=c[A+(i<<3)+4>>2]|0;c:do if((p|0)<(t|0)&(((n|0)>=(r|0)|(n|0)<(q|0)|(p|0)<(s|0))^1))switch(a[(c[v>>2]|0)+9>>0]|0){case 3:break b;case 1:{a[(c[e>>2]|0)+(O(c[j>>2]|0,p)|0)+n>>0]=f;break c}case 2:{b[(c[e>>2]|0)+(O(c[j>>2]|0,p)|0)+(n<<1)>>1]=k;break c}case 4:{c[(c[e>>2]|0)+(O(c[j>>2]|0,p)|0)+(n<<2)>>2]=u;break c}default:break c}while(0);i=i+1|0;if((i|0)>=(h|0)){i=0;B=46;break}}if((B|0)==46){l=C;return i|0}mE(294969,z);h=-1;l=C;return h|0}else{if(j){i=c[j+4>>2]|0;k=a[i+8>>0]|0;if((k&255)<8)i=296229;else{if((w+-1|0)>>>0<2){t=x&255;v=(((O(t,n&255)|0)>>>0)/255|0)&255;u=(((O(t,p&255)|0)>>>0)/255|0)&255;t=(((O(t,f&255)|0)>>>0)/255|0)&255}else{v=n;u=p;t=f}switch(k<<24>>24){case 15:{if((c[i+12>>2]|0)==31744)s=9;else B=40;break}case 16:{if((c[i+12>>2]|0)==63488)s=10;else B=40;break}case 32:{if((c[i+12>>2]|0)==16711680)s=(c[i+24>>2]|0)==0?6:5;else B=40;break}default:B=40}if((B|0)==40)s=(c[i+24>>2]|0)==0?8:7;f=c[j+36>>2]|0;e=(c[j+44>>2]|0)+f|0;q=c[j+40>>2]|0;r=(c[j+48>>2]|0)+q|0;if(y){p=0;i=0}else{h=0;l=C;return h|0}do{k=c[A+(p<<3)>>2]|0;n=c[A+(p<<3)+4>>2]|0;if((n|0)<(r|0)&(((k|0)>=(e|0)|(k|0)<(f|0)|(n|0)<(q|0))^1))i=ng[s&15](j,k,n,w,v,u,t,x)|0;p=p+1|0}while((p|0)!=(h|0));l=C;return i|0}}else i=296153;mE(i,s);h=-1;l=C;return h|0}return 0}function iJ(e,f,h){e=e|0;f=f|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0.0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;I=l;l=l+80|0;z=I+48|0;p=I+40|0;o=I+32|0;A=I+24|0;x=I+16|0;v=I+8|0;s=I;D=I+64|0;E=I+60|0;F=I+56|0;G=I+52|0;m=e+320|0;n=c[m>>2]|0;i=c[n>>2]|0;a:do if(!i){j=n+4|0;H=c[j>>2]|0;c[n>>2]=H;i=H;if(!H){k=VI(c[e+188>>2]|0)|0;do if(k|0){c[j>>2]=k;c[n>>2]=k;i=c[c[m>>2]>>2]|0;if(!i){H=k;break a}qJ(i,e+216|0);i=c[c[m>>2]>>2]|0;if(i|0)if(!(c[e+280>>2]|0)){C=c[i+8>>2]|0;H=c[i+12>>2]|0;c[i+36>>2]=0;c[i+40>>2]=0;c[i+44>>2]=C;c[i+48>>2]=H;break}else{qJ(i,e+248|0);break}}while(0);i=c[n>>2]|0}if(!i){H=-1;l=I;return H|0}else H=i}else H=i;while(0);C=l;l=l+((1*(h<<3)|0)+15&-16)|0;i=c[e+216>>2]|0;k=c[e+220>>2]|0;j=(h|0)>0;if(!(k|i)){if(j){i=0;do{c[C+(i<<3)>>2]=~~+g[f+(i<<3)>>2];c[C+(i<<3)+4>>2]=~~+g[f+(i<<3)+4>>2];i=i+1|0}while((i|0)!=(h|0))}}else if(j){r=+(i|0);q=+(k|0);i=0;do{c[C+(i<<3)>>2]=~~(r+ +g[f+(i<<3)>>2]);c[C+(i<<3)+4>>2]=~~(q+ +g[f+(i<<3)+4>>2]);i=i+1|0}while((i|0)!=(h|0))}t=c[e+316>>2]|0;i=a[e+312>>0]|0;u=a[e+315>>0]|0;j=a[e+313>>0]|0;k=a[e+314>>0]|0;if(!t){o=H+4|0;m=c[o>>2]|0;e=AJ(m,i,j,k,u)|0;b:do if(H){switch(a[m+9>>0]|0){case 1:{if((d[m+8>>0]|0)<8)w=26;else f=3;break}case 2:{f=2;break}case 4:{f=4;break}default:w=26}if((w|0)==26){mE(296109,v);i=-1;break}if((h|0)>1){k=H+36|0;i=c[C>>2]|0;j=1;m=i;n=c[C+4>>2]|0;do{c[D>>2]=m;c[E>>2]=n;m=c[C+(j<<3)>>2]|0;c[F>>2]=m;n=c[C+(j<<3)+4>>2]|0;c[G>>2]=n;if(PJ(k,D,E,F,G)|0){B=c[F>>2]|0;z=c[G>>2]|0;Hg[f&7](H,c[D>>2]|0,c[E>>2]|0,B,z,e,((z|0)!=(n|0)|(B|0)!=(m|0))&1)}j=j+1|0}while((j|0)!=(h|0))}else i=c[C>>2]|0;m=h+-1|0;k=c[C+(m<<3)>>2]|0;m=c[C+(m<<3)+4>>2]|0;if((i|0)==(k|0)?(c[C+4>>2]|0)==(m|0):0){i=0;break}j=c[o>>2]|0;if((d[j+8>>0]|0)<8){mE(296185,x);i=0;break}i=c[H+36>>2]|0;if((((i|0)<=(k|0)?(y=c[H+40>>2]|0,(y|0)<=(m|0)):0)?((c[H+44>>2]|0)+i|0)>(k|0):0)?((c[H+48>>2]|0)+y|0)>(m|0):0)switch(a[j+9>>0]|0){case 1:{a[(c[H+20>>2]|0)+(O(c[H+16>>2]|0,m)|0)+k>>0]=e;i=0;break b}case 2:{b[(c[H+20>>2]|0)+(O(c[H+16>>2]|0,m)|0)+(k<<1)>>1]=e;i=0;break b}case 3:{mE(294969,A);i=0;break b}case 4:{c[(c[H+20>>2]|0)+(O(c[H+16>>2]|0,m)|0)+(k<<2)>>2]=e;i=0;break b}default:{i=0;break b}}else i=0}else{mE(296060,s);i=-1}while(0);H=i;l=I;return H|0}c:do if(H){s=H+4|0;n=c[s>>2]|0;d:do switch(a[n+9>>0]|0){case 2:{n=c[n+12>>2]|0;n=(n|0)==31744?4:(n|0)==63488?3:2;break}case 4:{m=(c[n+24>>2]|0)!=0;if((c[n+12>>2]|0)==16711680){n=m?6:5;break d}else{n=m?8:7;break d}}default:{mE(295953,p);i=-1;break c}}while(0);if((h|0)>1){e=H+36|0;m=c[C>>2]|0;f=1;o=m;p=c[C+4>>2]|0;do{c[D>>2]=o;c[E>>2]=p;o=c[C+(f<<3)>>2]|0;c[F>>2]=o;p=c[C+(f<<3)+4>>2]|0;c[G>>2]=p;if(PJ(e,D,E,F,G)|0){A=c[F>>2]|0;y=c[G>>2]|0;Kg[n&15](H,c[D>>2]|0,c[E>>2]|0,A,y,t,i,j,k,u,((y|0)!=(p|0)|(A|0)!=(o|0))&1)}f=f+1|0}while((f|0)!=(h|0))}else m=c[C>>2]|0;o=h+-1|0;e=c[C+(o<<3)>>2]|0;o=c[C+(o<<3)+4>>2]|0;if((m|0)==(e|0)?(c[C+4>>2]|0)==(o|0):0){i=0;break}n=c[s>>2]|0;f=a[n+8>>0]|0;if((f&255)<8){mE(295998,z);i=0;break}m=c[H+36>>2]|0;if((((m|0)<=(e|0)?(B=c[H+40>>2]|0,(B|0)<=(o|0)):0)?((c[H+44>>2]|0)+m|0)>(e|0):0)?((c[H+48>>2]|0)+B|0)>(o|0):0){if((t+-1|0)>>>0<2){h=u&255;k=(((O(h,k&255)|0)>>>0)/255|0)&255;j=(((O(h,j&255)|0)>>>0)/255|0)&255;i=(((O(h,i&255)|0)>>>0)/255|0)&255}switch(f<<24>>24){case 15:{if((c[n+12>>2]|0)==31744){QJ(H,e,o,t,i,j,k,u)|0;i=0;break c}break}case 16:{if((c[n+12>>2]|0)==63488){RJ(H,e,o,t,i,j,k,u)|0;i=0;break c}break}case 32:{if((c[n+12>>2]|0)==16711680)if(!(c[n+24>>2]|0)){SJ(H,e,o,t,i,j,k,u)|0;i=0;break c}else{TJ(H,e,o,t,i,j,k,u)|0;i=0;break c}break}default:{}}if(!(c[n+24>>2]|0)){UJ(H,e,o,t,i,j,k,u)|0;i=0;break}else{VJ(H,e,o,t,i,j,k,u)|0;i=0;break}}else i=0}else{mE(295903,o);i=-1}while(0);H=i;l=I;return H|0}function jJ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0.0,k=0,m=0.0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;G=l;l=l+32|0;p=G+8|0;E=G;D=G+16|0;k=b+320|0;n=c[k>>2]|0;f=c[n>>2]|0;a:do if(!f){i=n+4|0;z=c[i>>2]|0;c[n>>2]=z;f=z;if(!z){h=VI(c[b+188>>2]|0)|0;do if(h|0){c[i>>2]=h;c[n>>2]=h;f=c[c[k>>2]>>2]|0;if(!f){z=h;break a}qJ(f,b+216|0);f=c[c[k>>2]>>2]|0;if(f|0)if(!(c[b+280>>2]|0)){y=c[f+8>>2]|0;z=c[f+12>>2]|0;c[f+36>>2]=0;c[f+40>>2]=0;c[f+44>>2]=y;c[f+48>>2]=z;break}else{qJ(f,b+248|0);break}}while(0);f=c[n>>2]|0}if(!f){e=-1;l=G;return e|0}else z=f}else z=f;while(0);y=l;l=l+((1*(e<<4)|0)+15&-16)|0;f=c[b+216>>2]|0;h=c[b+220>>2]|0;o=(e|0)>0;if(!(h|f)){if(o){f=0;do{c[y+(f<<4)>>2]=~~+g[d+(f<<4)>>2];c[y+(f<<4)+4>>2]=~~+g[d+(f<<4)+4>>2];x=~~+g[d+(f<<4)+8>>2];c[y+(f<<4)+8>>2]=(x|0)>1?x:1;x=~~+g[d+(f<<4)+12>>2];c[y+(f<<4)+12>>2]=(x|0)>1?x:1;f=f+1|0}while((f|0)!=(e|0))}}else if(o){m=+(f|0);j=+(h|0);f=0;do{c[y+(f<<4)>>2]=~~(m+ +g[d+(f<<4)>>2]);c[y+(f<<4)+4>>2]=~~(j+ +g[d+(f<<4)+4>>2]);x=~~+g[d+(f<<4)+8>>2];c[y+(f<<4)+8>>2]=(x|0)>1?x:1;x=~~+g[d+(f<<4)+12>>2];c[y+(f<<4)+12>>2]=(x|0)>1?x:1;f=f+1|0}while((f|0)!=(e|0))}w=c[b+316>>2]|0;f=a[b+314>>0]|0;x=a[b+315>>0]|0;n=a[b+312>>0]|0;h=a[b+313>>0]|0;if(!w){i=AJ(c[z+4>>2]|0,n,h,f,x)|0;if(o){h=0;f=0}else{e=0;l=G;return e|0}do{f=(tI(z,y+(h<<4)|0,i)|0)+f|0;h=h+1|0}while((h|0)!=(e|0));l=G;return f|0}if(z){i=c[z+4>>2]|0;k=a[i+8>>0]|0;if((k&255)>=8){if((w+-1|0)>>>0<2){u=x&255;v=(((O(u,f&255)|0)>>>0)/255|0)&255;h=(((O(u,h&255)|0)>>>0)/255|0)&255;n=(((O(u,n&255)|0)>>>0)/255|0)&255}else v=f;switch(k<<24>>24){case 15:{if((c[i+12>>2]|0)==31744)u=6;else F=29;break}case 16:{if((c[i+12>>2]|0)==63488)u=7;else F=29;break}case 32:{if((c[i+12>>2]|0)==16711680)u=(c[i+24>>2]|0)==0?3:2;else F=29;break}default:F=29}if((F|0)==29)u=(c[i+24>>2]|0)==0?5:4;if(o){o=D+8|0;b=D+12|0;p=z+44|0;q=z+48|0;r=z+36|0;s=z+40|0;t=D+4|0;d=0;f=0;do{i=y+(d<<4)|0;do if(!i){c[E>>2]=308500;mE(310091,E)}else{k=c[y+(d<<4)+8>>2]|0;if((((k|0)>=1?(A=c[y+(d<<4)+12>>2]|0,(A|0)>=1):0)?(B=c[p>>2]|0,(B|0)>=1):0)?(C=c[q>>2]|0,(C|0)>=1):0){i=c[i>>2]|0;k=k+i|0;J=c[r>>2]|0;H=B+J|0;i=(J|0)>(i|0)?J:i;c[D>>2]=i;i=((H|0)<(k|0)?H:k)-i|0;c[o>>2]=i;k=c[y+(d<<4)+4>>2]|0;H=A+k|0;J=c[s>>2]|0;I=C+J|0;k=(J|0)>(k|0)?J:k;c[t>>2]=k;k=((I|0)<(H|0)?I:H)-k|0;c[b>>2]=k;if(!((i|0)>0&(k|0)>0))break;f=mg[u&7](z,D,w,n,h,v,x)|0;break}c[o>>2]=0;c[b>>2]=0}while(0);d=d+1|0}while((d|0)!=(e|0))}else f=0}else{f=295854;F=42}}else{f=296153;F=42}if((F|0)==42){mE(f,p);f=-1}J=f;l=G;return J|0}function kJ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0.0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;q=l;l=l+16|0;o=q;k=a+320|0;m=c[k>>2]|0;f=c[m>>2]|0;a:do if(!f){j=m+4|0;r=c[j>>2]|0;c[m>>2]=r;f=r;if(!r){f=VI(c[a+188>>2]|0)|0;do if(f|0){c[j>>2]=f;c[m>>2]=f;j=c[c[k>>2]>>2]|0;if(!j){n=10;break a}qJ(j,a+216|0);f=c[c[k>>2]>>2]|0;if(f|0)if(!(c[a+280>>2]|0)){k=c[f+8>>2]|0;r=c[f+12>>2]|0;c[f+36>>2]=0;c[f+40>>2]=0;c[f+44>>2]=k;c[f+48>>2]=r;break}else{qJ(f,a+248|0);break}}while(0);f=c[m>>2]|0}if(!f){r=-1;l=q;return r|0}else{m=c[b+68>>2]|0;k=f}}else n=10;while(0);if((n|0)==10){m=c[b+68>>2]|0;k=f}f=c[a+216>>2]|0;j=c[a+220>>2]|0;h=+g[e+4>>2];i=+g[e>>2];if(j|f){i=+(f|0)+i;h=+(j|0)+h}c[o>>2]=~~i;c[o+4>>2]=~~h;a=~~+g[e+8>>2];c[o+8>>2]=a;r=~~+g[e+12>>2];c[o+12>>2]=r;if((c[d+8>>2]|0)==(a|0)?(c[d+12>>2]|0)==(r|0):0){r=vJ(m,d,k,o)|0;l=q;return r|0}if(k|0?(p=c[k+52>>2]|0,a=p+68|0,r=c[a>>2]|0,e=r&-4097,c[a>>2]=e,!((e|0)==(r|0)|(p|0)==0)):0){f=c[p>>2]|0;if(f|0?(e=f+56|0,r=c[e>>2]|0,c[e>>2]=r+-1,(r|0)<2):0)ME(f);c[p>>2]=0;c[p+84>>2]=0;c[p+80>>2]=0;r=p+64|0;fN(c[r>>2]|0);c[r>>2]=0}r=sJ(m,d,k,o)|0;l=q;return r|0}function lJ(b,e,f,h,i,j,k){b=b|0;e=e|0;f=f|0;h=h|0;i=+i;j=j|0;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0.0,u=0.0,v=0.0,w=0.0,x=0,y=0.0,z=0,A=0.0,C=0,D=0,G=0,H=0,I=0,J=0,K=0,L=0,M=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.0,za=0.0,Aa=0.0,Ba=0.0,Ca=0.0;na=l;l=l+48|0;R=na+8|0;q=na;fa=na+32|0;ma=na+16|0;o=b+320|0;p=c[o>>2]|0;m=c[p>>2]|0;a:do if(!m){n=p+4|0;ja=c[n>>2]|0;c[p>>2]=ja;m=ja;if(!ja){m=VI(c[b+188>>2]|0)|0;do if(m|0){c[n>>2]=m;c[p>>2]=m;n=c[c[o>>2]>>2]|0;if(!n){I=10;break a}qJ(n,b+216|0);m=c[c[o>>2]>>2]|0;if(m|0)if(!(c[b+280>>2]|0)){ia=c[m+8>>2]|0;ja=c[m+12>>2]|0;c[m+36>>2]=0;c[m+40>>2]=0;c[m+44>>2]=ia;c[m+48>>2]=ja;break}else{qJ(m,b+248|0);break}}while(0);m=c[p>>2]|0}if(!m){ma=-1;l=na;return ma|0}else{ja=m;aa=ma;m=c[e+68>>2]|0}}else I=10;while(0);if((I|0)==10){ja=m;aa=ma;m=c[e+68>>2]|0}ga=c[b+216>>2]|0;A=+g[h+4>>2];ha=c[b+220>>2]|0;y=+g[h>>2];ia=(ha|ga|0)==0;ga=~~(ia?y:+(ga|0)+y);ha=~~(ia?A:A+ +(ha|0));ia=~~+g[h+8>>2];ea=~~+g[h+12>>2];ba=ma+4|0;ca=ma+8|0;c[ca>>2]=ia;da=ma+12|0;c[da>>2]=ea;c[ma>>2]=0;c[ba>>2]=0;if((((c[f+8>>2]|0)==(ia|0)?(c[f+12>>2]|0)==(ea|0):0)?(c[f>>2]|0)==0:0)?(c[f+4>>2]|0)==0:0){o=m;p=ia;e=ea;I=65}else{h=m+4|0;n=c[h>>2]|0;n=xJ(d[n+8>>0]|0,c[n+12>>2]|0,c[n+16>>2]|0,c[n+20>>2]|0,c[n+24>>2]|0)|0;if(!n){mE(295660,q);ma=-1;l=na;return ma|0}o=yJ(ia,ea,n)|0;if(!o){ma=-1;l=na;return ma|0}n=m+52|0;e=c[n>>2]|0;p=c[e+68>>2]|0;if(!(p&256))b=0;else{rJ(o,1,c[e+72>>2]|0);e=c[n>>2]|0;b=1;p=c[e+68>>2]|0}x=a[e+79>>0]|0;switch(p&112){case 16:{q=1;break}case 32:{q=2;break}case 64:{q=4;break}default:q=0}z=a[e+76>>0]|0;C=a[e+77>>0]|0;r=a[e+78>>0]|0;if(!q)n=(z&x&C&r)<<24>>24!=-1;else n=1;if(n&1|b){b=tJ(m,c[h>>2]|0,c[m>>2]|0)|0;if(!b){ME(o);ma=-1;l=na;return ma|0}e=b+52|0;p=c[e>>2]|0;a[p+79>>0]=-1;_=p+68|0;n=c[_>>2]|0;$=n&-3;c[_>>2]=$;if(($|0)!=(n|0)){n=c[p>>2]|0;if(n|0?(_=n+56|0,$=c[_>>2]|0,c[_>>2]=$+-1,($|0)<2):0)ME(n);c[p>>2]=0;c[p+84>>2]=0;c[p+80>>2]=0;n=p+64|0;fN(c[n>>2]|0);c[n>>2]=0;n=c[e>>2]|0;p=n;n=c[n+68>>2]|0}$=n&-113;c[p+68>>2]=$;if(!(($|0)==(n|0)|(p|0)==0)){n=c[p>>2]|0;if(n|0?(_=n+56|0,$=c[_>>2]|0,c[_>>2]=$+-1,($|0)<2):0)ME(n);c[p>>2]=0;c[p+84>>2]=0;c[p+80>>2]=0;$=p+64|0;fN(c[$>>2]|0);c[$>>2]=0}rJ(b,0,0);p=c[e>>2]|0;a[p+76>>0]=-1;a[p+77>>0]=-1;a[p+78>>0]=-1;_=p+68|0;n=c[_>>2]|0;$=n&-2;c[_>>2]=$;if(($|0)!=(n|0)){n=c[p>>2]|0;if(n|0?(_=n+56|0,$=c[_>>2]|0,c[_>>2]=$+-1,($|0)<2):0)ME(n);c[p>>2]=0;c[p+84>>2]=0;c[p+80>>2]=0;n=p+64|0;fN(c[n>>2]|0);c[n>>2]=0;n=c[e>>2]|0;p=n;n=c[n+68>>2]|0}$=n&-4097;c[p+68>>2]=$;if(!(($|0)==(n|0)|(p|0)==0)){n=c[p>>2]|0;if(n|0?(_=n+56|0,$=c[_>>2]|0,c[_>>2]=$+-1,($|0)<2):0)ME(n);c[p>>2]=0;c[p+84>>2]=0;c[p+80>>2]=0;$=p+64|0;fN(c[$>>2]|0);c[$>>2]=0}p=c[o+52>>2]|0;a[p+79>>0]=x;Z=p+68|0;$=c[Z>>2]|0;_=x<<24>>24!=-1?$|2:$&-3;c[Z>>2]=_;if(!((_|0)==($|0)|(p|0)==0)){n=c[p>>2]|0;if(n|0?(_=n+56|0,$=c[_>>2]|0,c[_>>2]=$+-1,($|0)<2):0)ME(n);c[p>>2]=0;c[p+84>>2]=0;c[p+80>>2]=0;$=p+64|0;fN(c[$>>2]|0);c[$>>2]=0}uJ(o,q)|0;p=c[o+52>>2]|0;a[p+76>>0]=z;a[p+77>>0]=C;a[p+78>>0]=r;Z=p+68|0;$=c[Z>>2]|0;_=(C&z)<<24>>24==-1&r<<24>>24==-1?$&-2:$|1;c[Z>>2]=_;if(!((_|0)==($|0)|(p|0)==0)){n=c[p>>2]|0;if(n|0?(_=n+56|0,$=c[_>>2]|0,c[_>>2]=$+-1,($|0)<2):0)ME(n);c[p>>2]=0;c[p+84>>2]=0;c[p+80>>2]=0;$=p+64|0;fN(c[$>>2]|0);c[$>>2]=0}n=sJ(b,f,o,ma)|0;if((b|0)!=(m|0))ME(b)}else n=sJ(m,f,o,ma)|0;if(!n){p=c[ca>>2]|0;e=c[da>>2]|0;I=65}}b:do if((I|0)==65){A=i/90.0;J=~~A;L=+(J|0)==A;do if(L){n=(J|0)%4|0;n=(n|0)<0?n+4|0:n;if(!(n&1)){y=0.0;A=(n|0)==0?1.0:-1.0;$=e;_=p;break}else{y=(n|0)==1?-1.0:1.0;A=0.0;$=p;_=e;break}}else{A=i*-.017453292519943295;y=+F(+A);A=+E(+A);w=+((p|0)/2|0|0);t=+((e|0)/2|0|0);u=w*A;v=t*A;w=w*y;t=t*y;s=u+t;i=u-t;n=+B(+s)>+B(+i);i=n?s:i;s=t-u;n=+B(+i)>+B(+s);t=-u-t;u=+B(+t);$=!(+B(+(n?i:s))>u);if((~~+N(+(+B(+($|n^1?($?t:s):i))))|0)>1){p=!(+B(+(n?i:s))>u);p=~~+N(+(+B(+(p|n^1?(p?t:s):i))))<<1}else p=2;u=v+w;t=w-v;n=+B(+u)>+B(+t);t=n?u:t;u=v-w;n=+B(+t)>+B(+u);s=-w-v;i=+B(+s);$=!(+B(+(n?t:u))>i);if((~~+N(+(+B(+($|n^1?($?s:u):t))))|0)>1){$=!(+B(+(n?t:u))>i);$=~~+N(+(+B(+($|n^1?($?s:u):t))))<<1;_=p}else{$=2;_=p}}while(0);T=(_|0)/2|0;W=($|0)/2|0;p=Df(295524)|0;n=c[80024]|0;c:do if(!n){n=p;I=79}else{while(1){if(!(JN(295524,c[n>>2]|0)|0))break;n=c[n+16>>2]|0;if(!n){n=p;I=79;break c}}if(p|0?(c[n+8>>2]|0)!=2:0){n=p;I=80;break}n=c[n+4>>2]|0;I=79}while(0);if((I|0)==79)if(!n)K=0;else I=80;if((I|0)==80)if((a[n>>0]|0)==48)K=0;else K=(VO(n,295549)|0)!=0&1;V=k&1;U=k&2;if(o){b=c[o>>2]|0;do if(b&1){n=c[o+52>>2]|0;if(!(c[n+68>>2]&256))p=0;else p=c[n+72>>2]|0;e=c[o+4>>2]|0;n=c[e+4>>2]|0;if(!n){k=1;D=a[(c[18232+(d[e+28>>0]<<2)>>2]|0)+((c[e+12>>2]&p)>>>(d[e+32>>0]|0))>>0]|0;G=a[(c[18232+(d[e+29>>0]<<2)>>2]|0)+((c[e+16>>2]&p)>>>(d[e+33>>0]|0))>>0]|0;H=a[(c[18232+(d[e+30>>0]<<2)>>2]|0)+((c[e+20>>2]&p)>>>(d[e+34>>0]|0))>>0]|0;break}if((c[n>>2]|0)>>>0>p>>>0){H=c[n+4>>2]|0;k=1;D=a[H+(p<<2)>>0]|0;G=a[H+(p<<2)+1>>0]|0;H=a[H+(p<<2)+2>>0]|0}else{k=1;D=0;G=0;H=0}}else{k=0;D=0;G=0;H=0;e=c[o+4>>2]|0}while(0);n=a[e+8>>0]|0;switch(n<<24>>24){case 8:case 32:{i=y*65536.0;s=A*65536.0;p=$+2|0;if(n<<24>>24==32){f=o;C=p;I=107}else{Z=o;f=0;Y=yJ(_,p,318769153)|0}break}default:{e=wJ(377888772)|0;if(!e){n=0;break b}b=tJ(o,e,b)|0;Y=e+36|0;Z=c[Y>>2]|0;c[Y>>2]=Z+-1;if((Z|0)<=1){n=c[80023]|0;d:do if((n|0)!=(e|0)){if(n|0){do{p=n+40|0;n=c[p>>2]|0;if(!n)break d}while((n|0)!=(e|0));c[p>>2]=c[e+40>>2]}}else c[80023]=c[e+40>>2];while(0);n=c[e+4>>2]|0;if(n|0?(Y=n+12|0,Z=c[Y>>2]|0,c[Y>>2]=Z+-1,(Z|0)<=1):0){fN(c[n+4>>2]|0);fN(n)}fN(e)}if(!b){n=0;break b}f=b;s=A*65536.0;i=y*65536.0;e=c[b+4>>2]|0;C=$+2|0;I=107}}if((I|0)==107){r=c[e+12>>2]|0;x=c[e+16>>2]|0;z=c[e+20>>2]|0;h=c[e+24>>2]|0;if((r|0)!=0?(M=(x|0)==65280,Q=(r|0)==16711680&M&(z|0)==255,P=(h|0)==0,!(Q&P)):0){n=(x|0)==16711680;q=(r|0)==-16777216&n&(z|0)==65280;if(!(q&P)){b=(r|0)==255&M&(z|0)==16711680;if(!(b&P)){e=(r|0)==65280&n&(z|0)==-16777216;if(!(e&P)){p=(h|0)==-16777216;if(!(Q&p)){n=(h|0)==255;if(!(q&n))if(!(b&p))if(!(e&n))if((r|0)==1072693248&(x|0)==1047552&(z|0)==1023&(h|0)==-1073741824)n=372711428;else{mE(295660,R);n=0;break}else n=377888772;else n=376840196;else n=373694468}else n=372645892}else n=375789572}else n=374740996}else n=371595268}else n=370546692;Z=f;f=1;Y=yJ(_,C,n)|0}if(Y){X=Y+12|0;c[X>>2]=$;if((k|0)==1){n=c[Y+4>>2]|0;p=c[n+4>>2]|0;if(!p)n=(G&255)>>>(d[n+29>>0]|0)<<d[n+33>>0]|(D&255)>>>(d[n+28>>0]|0)<<d[n+32>>0]|c[n+24>>2]|(H&255)>>>(d[n+30>>0]|0)<<d[n+34>>0];else{z=c[p>>2]|0;e:do if((z|0)>0){x=c[p+4>>2]|0;r=D&255;q=G&255;h=H&255;b=0;p=-1;n=0;do{R=(d[x+(b<<2)>>0]|0)-r|0;Q=(d[x+(b<<2)+1>>0]|0)-q|0;S=(d[x+(b<<2)+2>>0]|0)-h|0;e=(d[x+(b<<2)+3>>0]|0)+-255|0;e=(O(Q,Q)|0)+(O(R,R)|0)+(O(S,S)|0)+(O(e,e)|0)|0;if(e>>>0<p>>>0){n=b&255;if(!e)break e;else p=e}b=b+1|0}while((b|0)<(z|0))}else n=0;while(0);n=n&255}tI(Y,0,n)|0}if(c[Z>>2]&2|0){p=Z+28|0;n=c[p>>2]|0;if(!n){LE(Z,1);c[Z>>2]=c[Z>>2]|2;n=c[p>>2]|0}c[p>>2]=n+1}if(L){r=(J|0)%4|0;r=(r|0)<0?r+4|0:r}else r=-1;if(f){f:do if((r|0)>-1){D=Y+8|0;n=c[D>>2]|0;G=(c[Y+16>>2]|0)-(n<<2)|0;e=c[Z+20>>2]|0;b=c[Y+20>>2]|0;C=(U|0)!=0;f=c[Z+16>>2]|0;x=C?0-f|0:f;z=(V|0)!=0;h=V<<3^8;q=h+-4|0;switch(r|0){case 0:{r=1;p=1;k=x-(O(c[Z+8>>2]|0,q)|0)|0;x=q;break}case 1:{r=-1;p=1;k=(O(c[Z+12>>2]|0,x)|0)+q|0;x=0-x|0;break}case 2:{r=-1;p=-1;k=(O(c[Z+8>>2]|0,q)|0)-x|0;x=4-h|0;break}default:{r=1;p=-1;k=(O(c[Z+12>>2]|0,0-x|0)|0)-q|0}}if(((z?0-p|0:p)|0)<0)e=e+((c[Z+8>>2]<<2)+-4)|0;if(((C?0-r|0:r)|0)<0)e=e+(O((c[Z+12>>2]|0)+-1|0,f)|0)|0;p=c[X>>2]|0;if((p|0)>0){if((x|0)==4){h=0;while(1){PQ(b|0,e|0,n<<2|0)|0;n=c[D>>2]|0;p=n<<2;h=h+1|0;if((h|0)>=(c[X>>2]|0)){I=192;break f}else{b=b+p+G|0;e=e+p+k|0}}}else z=0;while(1){n=n<<2;r=b+n|0;if(n){h=n+-4|0;q=(h>>>2)+1|0;n=b;p=e;while(1){W=d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24;a[n>>0]=W;a[n+1>>0]=W>>8;a[n+2>>0]=W>>16;a[n+3>>0]=W>>24;n=n+4|0;if((n|0)==(r|0))break;else p=p+x|0}e=e+(O(q,x)|0)|0;b=b+4+h|0;p=c[X>>2]|0}n=z+1|0;if((n|0)>=(p|0)){I=192;break f}b=b+G|0;z=n;e=e+k|0;n=c[D>>2]|0}}else I=191}else{S=~~i;Q=~~s;I=Z+8|0;L=c[I>>2]|0;R=Y+8|0;p=c[R>>2]|0;b=L-p<<15;J=Z+12|0;M=c[J>>2]|0;n=c[X>>2]|0;r=M-n<<15;h=O(65536-Q|0,T)|0;q=(W<<16)-(O(S,T)|0)|0;L=L+-1|0;M=M+-1|0;D=c[Y+20>>2]|0;P=(c[Y+16>>2]|0)-(p<<2)|0;e=(n|0)>0;if(K|0){if(!e){I=191;break}H=b+h|0;G=r+q|0;k=(V|0)!=0;z=(U|0)!=0;C=Z+20|0;f=Z+16|0;x=0;b=D;while(1){e=W-x|0;if((p|0)>0){r=H+(O(e,S)|0)|0;h=G-(O(e,Q)|0)|0;q=0;e=b;while(1){n=r>>16;b=h>>16;n=k?L-n|0:n;b=z?M-b|0:b;if(n>>>0<L>>>0&b>>>0<M>>>0){xa=c[f>>2]|0;ta=(c[C>>2]|0)+(O(xa,b)|0)|0;ua=ta+(n<<2)|0;U=a[ua>>0]|0;D=a[ta+(n<<2)+1>>0]|0;pa=a[ta+(n<<2)+2>>0]|0;ta=a[ta+(n<<2)+3>>0]|0;ua=ua+4|0;va=a[ua>>0]|0;ra=a[ua+1>>0]|0;n=a[ua+2>>0]|0;J=a[ua+3>>0]|0;xa=ua+(((xa|0)/4|0)<<2)|0;ua=a[xa>>0]|0;qa=a[xa+1>>0]|0;b=a[xa+2>>0]|0;K=a[xa+3>>0]|0;xa=xa+-4|0;T=a[xa>>0]|0;V=a[xa+1>>0]|0;p=a[xa+2>>0]|0;xa=a[xa+3>>0]|0;I=k?J:ta;oa=k?n:pa;sa=k?ra:D;wa=k?va:U;J=k?ta:J;n=k?pa:n;ra=k?D:ra;va=k?U:va;U=k?K:xa;D=k?b:p;pa=k?qa:V;ta=k?ua:T;K=k?xa:K;b=k?p:b;qa=k?V:qa;ua=k?T:ua;T=r&65535;V=h&65535;p=(z?ta:wa)&255;p=((O(((z?ua:va)&255)-p|0,T)|0)>>>16)+p|0;ta=(z?wa:ta)&255;a[e>>0]=((O((((O(((z?va:ua)&255)-ta|0,T)|0)>>>16)+ta&255)-(p&255)|0,V)|0)>>>16)+p;p=(z?pa:sa)&255;p=((O(((z?qa:ra)&255)-p|0,T)|0)>>>16)+p|0;pa=(z?sa:pa)&255;a[e+1>>0]=((O((((O(((z?ra:qa)&255)-pa|0,T)|0)>>>16)+pa&255)-(p&255)|0,V)|0)>>>16)+p;p=(z?D:oa)&255;p=((O(((z?b:n)&255)-p|0,T)|0)>>>16)+p|0;D=(z?oa:D)&255;a[e+2>>0]=((O((((O(((z?n:b)&255)-D|0,T)|0)>>>16)+D&255)-(p&255)|0,V)|0)>>>16)+p;p=(z?U:I)&255;p=((O(((z?K:J)&255)-p|0,T)|0)>>>16)+p|0;U=(z?I:U)&255;a[e+3>>0]=((O((((O(((z?J:K)&255)-U|0,T)|0)>>>16)+U&255)-(p&255)|0,V)|0)>>>16)+p;p=c[R>>2]|0}e=e+4|0;q=q+1|0;if((q|0)>=(p|0))break;else{r=r+Q|0;h=h+S|0}}n=c[X>>2]|0}else e=b;x=x+1|0;if((x|0)>=(n|0)){I=192;break f}else b=e+P|0}}if(e){H=b+h|0;G=r+q|0;k=(V|0)==0;z=(U|0)==0;C=Z+20|0;f=Z+16|0;x=0;e=D;while(1){b=W-x|0;n=H+(O(b,S)|0)|0;b=G-(O(b,Q)|0)|0;if((p|0)>0)if(k)if(z){q=b;r=0;while(1){b=n>>16;h=q>>16;do if(b>>>0<(c[I>>2]|0)>>>0){if(h>>>0>=(c[J>>2]|0)>>>0)break;p=(c[C>>2]|0)+(O(c[f>>2]|0,h)|0)+(b<<2)|0;p=d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24;a[e>>0]=p;a[e+1>>0]=p>>8;a[e+2>>0]=p>>16;a[e+3>>0]=p>>24;p=c[R>>2]|0}while(0);e=e+4|0;r=r+1|0;if((r|0)>=(p|0))break;else{n=n+Q|0;q=q+S|0}}}else{q=b;r=0;while(1){b=n>>16;h=q>>16;do if(b>>>0<(c[I>>2]|0)>>>0){if(h>>>0>=(c[J>>2]|0)>>>0)break;p=(c[C>>2]|0)+(O(c[f>>2]|0,M-h|0)|0)+(b<<2)|0;p=d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24;a[e>>0]=p;a[e+1>>0]=p>>8;a[e+2>>0]=p>>16;a[e+3>>0]=p>>24;p=c[R>>2]|0}while(0);e=e+4|0;r=r+1|0;if((r|0)>=(p|0))break;else{n=n+Q|0;q=q+S|0}}}else if(z){q=b;r=0;while(1){b=n>>16;h=q>>16;do if(b>>>0<(c[I>>2]|0)>>>0){if(h>>>0>=(c[J>>2]|0)>>>0)break;p=(c[C>>2]|0)+(O(c[f>>2]|0,h)|0)+(L-b<<2)|0;p=d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24;a[e>>0]=p;a[e+1>>0]=p>>8;a[e+2>>0]=p>>16;a[e+3>>0]=p>>24;p=c[R>>2]|0}while(0);e=e+4|0;r=r+1|0;if((r|0)>=(p|0))break;else{n=n+Q|0;q=q+S|0}}}else{q=b;r=0;while(1){b=n>>16;h=q>>16;do if(b>>>0<(c[I>>2]|0)>>>0){if(h>>>0>=(c[J>>2]|0)>>>0)break;p=(c[C>>2]|0)+(O(c[f>>2]|0,M-h|0)|0)+(L-b<<2)|0;p=d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24;a[e>>0]=p;a[e+1>>0]=p>>8;a[e+2>>0]=p>>16;a[e+3>>0]=p>>24;p=c[R>>2]|0}while(0);e=e+4|0;r=r+1|0;if((r|0)>=(p|0))break;else{n=n+Q|0;q=q+S|0}}}x=x+1|0;if((x|0)>=(c[X>>2]|0)){I=192;break}else e=e+P|0}}else I=191}while(0);if((I|0)==191){c[fa>>2]=0;I=193}else if((I|0)==192){c[fa>>2]=0;if(!Z)n=0;else I=193}if((I|0)==193){n=c[Z+52>>2]|0;if(!(c[n+68>>2]&256))n=0;else{n=c[n+72>>2]|0;c[fa>>2]=n}}rJ(Y,3,n)}else{h=Z+4|0;e=c[(c[h>>2]|0)+4>>2]|0;n=c[e>>2]|0;q=Y+4|0;p=c[(c[q>>2]|0)+4>>2]|0;if((n|0)>0){b=0;do{n=(c[p+4>>2]|0)+(b<<2)|0;p=(c[e+4>>2]|0)+(b<<2)|0;p=d[p>>0]|d[p+1>>0]<<8|d[p+2>>0]<<16|d[p+3>>0]<<24;a[n>>0]=p;a[n+1>>0]=p>>8;a[n+2>>0]=p>>16;a[n+3>>0]=p>>24;b=b+1|0;e=c[(c[h>>2]|0)+4>>2]|0;n=c[e>>2]|0;p=c[(c[q>>2]|0)+4>>2]|0}while((b|0)<(n|0))}c[p>>2]=n;g:do if((r|0)>-1){D=Y+8|0;n=c[D>>2]|0;G=(c[Y+16>>2]|0)-n|0;p=c[Z+20>>2]|0;e=c[Y+20>>2]|0;C=(U|0)!=0;f=c[Z+16>>2]|0;x=C?0-f|0:f;z=(V|0)!=0;h=V<<1^2;q=h+-1|0;switch(r|0){case 0:{r=1;b=1;k=x-(O(c[Z+8>>2]|0,q)|0)|0;break}case 1:{r=-1;b=1;k=(O(c[Z+12>>2]|0,x)|0)+q|0;q=0-x|0;break}case 2:{r=-1;b=-1;k=(O(c[Z+8>>2]|0,q)|0)-x|0;q=1-h|0;break}default:{r=1;b=-1;k=(O(c[Z+12>>2]|0,0-x|0)|0)-q|0;q=x}}if(((z?0-b|0:b)|0)<0)p=p+((c[Z+8>>2]|0)+-1)|0;if(((C?0-r|0:r)|0)<0)p=p+(O((c[Z+12>>2]|0)+-1|0,f)|0)|0;b=c[X>>2]|0;if((b|0)>0){if((q|0)==1){b=0;while(1){PQ(e|0,p|0,n|0)|0;n=c[D>>2]|0;b=b+1|0;if((b|0)>=(c[X>>2]|0)){I=241;break g}else{e=e+n+G|0;p=p+n+k|0}}}else r=0;while(1){h=e+n|0;if(n){b=p;while(1){a[e>>0]=a[b>>0]|0;e=e+1|0;if((e|0)==(h|0))break;else b=b+q|0}p=p+(O(n,q)|0)|0;e=h;b=c[X>>2]|0}n=r+1|0;if((n|0)>=(b|0)){I=241;break g}e=e+G|0;r=n;p=p+k|0;n=c[D>>2]|0}}else I=240}else{R=~~i;L=~~s;M=Z+8|0;e=c[M>>2]|0;P=Y+8|0;b=c[P>>2]|0;Q=Z+12|0;q=c[Q>>2]|0;h=c[X>>2]|0;r=c[Y+20>>2]|0;p=c[Y+16>>2]|0;K=p-b|0;n=c[Z+52>>2]|0;if(!(c[n+68>>2]&256))n=0;else n=c[n+72>>2]|0;RQ(r|0,n&255|0,O(h,p)|0)|0;if((c[X>>2]|0)>0){J=(e-b<<15)+(O(65536-L|0,T)|0)|0;I=(V|0)==0;D=(U|0)==0;G=Z+20|0;H=Z+16|0;k=O(R,T)|0;f=(q-h<<15)+(W<<16)|0;e=r;C=0;n=c[P>>2]|0;while(1){p=W-C|0;b=J+(O(p,R)|0)|0;p=f-((O(p,L)|0)+k)|0;if((n|0)>0)if(I)if(D){q=b;r=0;while(1){b=q>>16;h=p>>16;do if(b>>>0<(c[M>>2]|0)>>>0){if(h>>>0>=(c[Q>>2]|0)>>>0)break;a[e>>0]=a[(c[G>>2]|0)+(O(c[H>>2]|0,h)|0)+b>>0]|0;n=c[P>>2]|0}while(0);e=e+1|0;r=r+1|0;if((r|0)>=(n|0))break;else{p=p+R|0;q=q+L|0}}}else{x=0;while(1){h=b>>16;q=p>>16;do if(h>>>0<(c[M>>2]|0)>>>0){r=c[Q>>2]|0;if(q>>>0>=r>>>0)break;a[e>>0]=a[(c[G>>2]|0)+(O(c[H>>2]|0,r+~q|0)|0)+h>>0]|0;n=c[P>>2]|0}while(0);e=e+1|0;x=x+1|0;if((x|0)>=(n|0))break;else{p=p+R|0;b=b+L|0}}}else if(D){x=0;while(1){h=b>>16;q=p>>16;r=c[M>>2]|0;do if(h>>>0<r>>>0){if(q>>>0>=(c[Q>>2]|0)>>>0)break;a[e>>0]=a[(c[G>>2]|0)+(O(c[H>>2]|0,q)|0)+(r+~h)>>0]|0;n=c[P>>2]|0}while(0);e=e+1|0;x=x+1|0;if((x|0)>=(n|0))break;else{p=p+R|0;b=b+L|0}}}else{z=0;while(1){h=b>>16;q=p>>16;r=c[M>>2]|0;do if(h>>>0<r>>>0){x=c[Q>>2]|0;if(q>>>0>=x>>>0)break;a[e>>0]=a[(c[G>>2]|0)+(O(c[H>>2]|0,x+~q|0)|0)+(r+~h)>>0]|0;n=c[P>>2]|0}while(0);e=e+1|0;z=z+1|0;if((z|0)>=(n|0))break;else{p=p+R|0;b=b+L|0}}}C=C+1|0;if((C|0)>=(c[X>>2]|0)){I=241;break}else e=e+K|0}}else I=240}while(0);if((I|0)==240){c[fa>>2]=0;I=242}else if((I|0)==241){c[fa>>2]=0;if(!Z)n=0;else I=242}if((I|0)==242){n=c[Z+52>>2]|0;if(!(c[n+68>>2]&256))n=0;else{n=c[n+72>>2]|0;c[fa>>2]=n}}rJ(Y,3,n)}n=c[o+52>>2]|0;e=a[n+79>>0]|0;switch(c[n+68>>2]&112){case 16:{h=1;break}case 32:{h=2;break}case 64:{h=4;break}default:h=0}q=a[n+76>>0]|0;r=a[n+77>>0]|0;b=a[n+78>>0]|0;p=c[Y+52>>2]|0;a[p+79>>0]=e;va=p+68|0;xa=c[va>>2]|0;wa=e<<24>>24!=-1?xa|2:xa&-3;c[va>>2]=wa;if(!((wa|0)==(xa|0)|(p|0)==0)){n=c[p>>2]|0;if(n|0?(wa=n+56|0,xa=c[wa>>2]|0,c[wa>>2]=xa+-1,(xa|0)<2):0)ME(n);c[p>>2]=0;c[p+84>>2]=0;c[p+80>>2]=0;xa=p+64|0;fN(c[xa>>2]|0);c[xa>>2]=0}uJ(Y,h)|0;p=c[Y+52>>2]|0;a[p+76>>0]=q;a[p+77>>0]=r;a[p+78>>0]=b;va=p+68|0;xa=c[va>>2]|0;wa=(r&q)<<24>>24==-1&b<<24>>24==-1?xa&-2:xa|1;c[va>>2]=wa;if(!((wa|0)==(xa|0)|(p|0)==0)){n=c[p>>2]|0;if(n|0?(wa=n+56|0,xa=c[wa>>2]|0,c[wa>>2]=xa+-1,(xa|0)<2):0)ME(n);c[p>>2]=0;c[p+84>>2]=0;c[p+80>>2]=0;xa=p+64|0;fN(c[xa>>2]|0);c[xa>>2]=0}n=c[Z>>2]|0;if((n&2|0?(ka=Z+28|0,la=c[ka>>2]|0,la|0):0)?(c[ka>>2]=la+-1,(la|0)<=1):0){c[Z>>2]=n&-3;PE(Z)|0}if((Z|0)!=(o|0))ME(Z);if(Y){va=~~+g[j>>2];xa=va+ga|0;wa=~~+g[j+4>>2];n=wa+ha|0;u=-y;w=+(0-va|0);y=+(0-wa|0);s=w*A;t=y*u;Ba=+(xa|0);i=Ba+(s-t);w=w*u;y=y*A;za=+(n|0);v=za+(w+y);ya=+(ga+ia-xa|0);Aa=ya*A;t=Ba+(Aa-t);ya=ya*u;y=za+(ya+y);Ca=+(ha+ea-n|0);u=Ca*u;s=Ba+(s-u);A=A*Ca;w=za+(w+A);u=Ba+(Aa-u);A=za+(ya+A);t=i<t?i:t;u=s<u?s:u;c[ma>>2]=~~(t<u?t:u);y=v<y?v:y;A=w<A?w:A;c[ba>>2]=~~(y<A?y:A);c[ca>>2]=_;c[da>>2]=$;n=vJ(Y,0,ja,ma)|0;ME(Y)}else n=0}else n=0}else n=0}while(0);if((o|0)==(m|0)){xa=n;l=na;return xa|0}ME(o);xa=n;l=na;return xa|0}function mJ(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=l;l=l+32|0;r=s;n=s+8|0;j=a+320|0;k=c[j>>2]|0;h=c[k>>2]|0;a:do if(!h){i=k+4|0;t=c[i>>2]|0;c[k>>2]=t;h=t;if(!t){h=VI(c[a+188>>2]|0)|0;do if(h|0){c[i>>2]=h;c[k>>2]=h;i=c[c[j>>2]>>2]|0;if(!i){m=10;break a}qJ(i,a+216|0);h=c[c[j>>2]>>2]|0;if(h|0)if(!(c[a+280>>2]|0)){j=c[h+8>>2]|0;t=c[h+12>>2]|0;c[h+36>>2]=0;c[h+40>>2]=0;c[h+44>>2]=j;c[h+48>>2]=t;break}else{qJ(h,a+248|0);break}}while(0);h=c[k>>2]|0}if(!h){t=-1;l=s;return t|0}else k=h}else m=10;while(0);if((m|0)==10)k=h;j=c[a+216>>2]|0;i=c[a+220>>2]|0;h=c[b>>2]|0;if(i|j){h=h+j|0;c[n>>2]=h;c[n+4>>2]=(c[b+4>>2]|0)+i;c[n+8>>2]=c[b+8>>2];c[n+12>>2]=c[b+12>>2];b=n}if((((h|0)>=0?(o=c[b+8>>2]|0,(o+h|0)<=(c[k+8>>2]|0)):0)?(p=c[b+4>>2]|0,(p|0)>=0):0)?(q=c[b+12>>2]|0,(q+p|0)<=(c[k+12>>2]|0)):0){r=c[k+4>>2]|0;t=c[k+16>>2]|0;p=(c[k+20>>2]|0)+(O(t,p)|0)|0;t=IE(o,q,c[r>>2]|0,p+(O(d[r+9>>0]|0,h)|0)|0,t,e,f,g)|0;l=s;return t|0}mE(295484,r);t=-1;l=s;return t|0}function nJ(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=l;l=l+48|0;f=g+16|0;e=g+8|0;d=g+24|0;a=c[a+188>>2]|0;if(!a){l=g;return}b=c[80021]|0;do if(b){if((c[a>>2]|0)!=(b+280|0)){mE(307733,e);break}c[d>>2]=0;c[d+4>>2]=0;c[d+8>>2]=c[a+24>>2];c[d+12>>2]=c[a+28>>2];if(!(c[a+112>>2]|0)){mE(295401,f);break}else{jg[c[b+136>>2]&31](b,a,d,1)|0;break}}else mE(288511,g);while(0);l=g;return}function oJ(a,b){a=a|0;b=b|0;ME(c[b+68>>2]|0);return}function pJ(a){a=a|0;fN(c[a+320>>2]|0);fN(a);return}function qJ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;if(!a)return;f=c[a+8>>2]|0;d=c[a+12>>2]|0;do if(!b){c[a+36>>2]=0;c[a+40>>2]=0;c[a+44>>2]=f}else{g=c[b+8>>2]|0;if((g|0)>=1?(e=c[b+12>>2]|0,!((e|0)<1|(f|0)<1|(d|0)<1)):0){i=c[b>>2]|0;h=g+i|0;g=(i|0)>0?i:0;c[a+36>>2]=g;c[a+44>>2]=((f|0)<(h|0)?f:h)-g;g=c[b+4>>2]|0;f=e+g|0;g=(g|0)>0?g:0;c[a+40>>2]=g;d=((d|0)<(f|0)?d:f)-g|0;break}c[a+44>>2]=0;d=0}while(0);c[a+48>>2]=d;return}function rJ(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;g=m+8|0;f=m;if(!b){c[f>>2]=295846;mE(310091,f);l=m;return}h=b+4|0;f=c[(c[h>>2]|0)+4>>2]|0;if(f|0?(c[f>>2]|0)>>>0<=e>>>0:0){c[g>>2]=295681;mE(310091,g);l=m;return}j=b+52|0;if((d&2|0)!=0?(i=c[j>>2]|0,b=i+68|0,k=c[b>>2]|0,g=k|4096,c[b>>2]=g,!((g|0)==(k|0)|(i|0)==0)):0){f=c[i>>2]|0;if(f|0?(g=f+56|0,k=c[g>>2]|0,c[g>>2]=k+-1,(k|0)<2):0)ME(f);c[i>>2]=0;c[i+84>>2]=0;c[i+80>>2]=0;i=i+64|0;fN(c[i>>2]|0);c[i>>2]=0;i=c[(c[h>>2]|0)+4>>2]|0}else i=f;b=c[j>>2]|0;g=b+68|0;k=c[g>>2]|0;h=(i|0)!=0;if(d){f=k|256;c[g>>2]=f;c[b+72>>2]=e;if(h){a[(c[i+4>>2]|0)+(e<<2)+3>>0]=0;b=i+8|0;f=(c[b>>2]|0)+1|0;c[b>>2]=(f|0)==0?1:f;b=c[j>>2]|0;f=c[b+68>>2]|0}}else{if(h){a[(c[i+4>>2]|0)+(c[b+72>>2]<<2)+3>>0]=-1;f=i+8|0;b=(c[f>>2]|0)+1|0;c[f>>2]=(b|0)==0?1:b;f=c[j>>2]|0;b=f;f=c[f+68>>2]|0}else f=k;f=f&-257;c[b+68>>2]=f}if((f|0)==(k|0)|(b|0)==0){l=m;return}f=c[b>>2]|0;if(f|0?(d=f+56|0,e=c[d>>2]|0,c[d>>2]=e+-1,(e|0)<2):0)ME(f);c[b>>2]=0;c[b+84>>2]=0;c[b+80>>2]=0;e=b+64|0;fN(c[e>>2]|0);c[e>>2]=0;l=m;return}function sJ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0.0,k=0,m=0.0,n=0.0,o=0.0,p=0.0,q=0.0,r=0.0,s=0.0,t=0,u=0,v=0.0,w=0.0,x=0.0,y=0.0,z=0.0,B=0.0,C=0.0,D=0,E=0,F=0,G=0,H=0,I=0;I=l;l=l+48|0;f=I+8|0;F=I+32|0;G=I+16|0;if(!((a|0)!=0&(d|0)!=0)){mE(295701,I);H=-1;l=I;return H|0}if((c[a+28>>2]|0)==0?(c[d+28>>2]|0)==0:0){i=(b|0)==0;t=a+8|0;u=a+12|0;h=c[(i?u:b+12|0)>>2]|0;k=c[(i?t:b+8|0)>>2]|0;D=(e|0)==0;f=c[(D?d+12|0:e+12|0)>>2]|0;g=c[(D?d+8|0:e+8|0)>>2]|0;if((f|0)==(h|0)&(g|0)==(k|0)){H=vJ(a,b,d,e)|0;l=I;return H|0}m=+(g|0);o=+(k|0);B=m/o;j=+(f|0);p=+(h|0);C=j/p;if(D){v=+(f+-1|0);m=+(g+-1|0);n=0.0;j=0.0}else{z=+(c[e>>2]|0);n=+(c[e+4>>2]|0);v=j+n+-1.0;m=m+z+-1.0;j=z}if(!i){k=c[b>>2]|0;r=+(k|0);f=c[b+4>>2]|0;z=+(f|0);q=o+r+-1.0;s=p+z+-1.0;j=(k|0)<0?j-B*r:j;o=+(((k|0)>0?k:0)|0);k=c[t>>2]|0;r=+(k|0);t=!(q>=r);p=t?q:+(k+-1|0);r=t?m:m-B*(q-r+1.0);q=+(((f|0)>0?f:0)|0);n=(f|0)<0?n-C*z:n;f=c[u>>2]|0;m=+(f|0);if(!(s>=m)){z=s;s=v;m=r}else{z=+(f+-1|0);s=v-C*(s-m+1.0);m=r}}else{z=+(h+-1|0);o=0.0;s=v;p=+(k+-1|0);q=0.0}x=+(c[d+36>>2]|0);w=j-x;r=m-x;y=+(c[d+40>>2]|0);v=n-y;m=s-y;h=w<0.0;o=h?o-w/B:o;f=c[d+44>>2]|0;j=+(f|0);if(r>=j){p=p-(r-j+1.0)/B;r=+(f+-1|0)}g=v<0.0;n=g?q-v/C:q;f=c[d+48>>2]|0;j=+(f|0);if(!(m>=j))j=z;else{j=z-(m-j+1.0)/C;m=+(f+-1|0)}B=(h?0.0:w)+x;C=(g?0.0:v)+y;c[F>>2]=~~+A(+(o+.5));c[F+4>>2]=~~+A(+(n+.5));k=~~+A(+(p-o+1.5));c[F+8>>2]=k;b=~~+A(+(j-n+1.5));c[F+12>>2]=b;c[G>>2]=~~+A(+(B+.5));c[G+4>>2]=~~+A(+(C+.5));g=~~+A(+(r+x-B+1.5));i=G+8|0;c[i>>2]=g;f=~~+A(+(m+y-C+1.5));h=G+12|0;c[h>>2]=f;if((g|0)<0){c[i>>2]=0;g=0}if((f|0)<0){c[h>>2]=0;f=0}if(!D){c[e>>2]=c[G>>2];c[e+4>>2]=c[G+4>>2];c[e+8>>2]=c[G+8>>2];c[e+12>>2]=c[G+12>>2]}if((g|0)==0|(f|0)==0|(k|0)<1|(b|0)<1){H=0;l=I;return H|0}i=a+52|0;f=c[i>>2]|0;h=f+68|0;g=c[h>>2]|0;if(!(g&512)){g=g|512;c[h>>2]=g;if(!f)f=0;else{g=c[f>>2]|0;if(g|0?(D=g+56|0,e=c[D>>2]|0,c[D>>2]=e+-1,(e|0)<2):0)ME(g);c[f>>2]=0;c[f+84>>2]=0;c[f+80>>2]=0;f=f+64|0;fN(c[f>>2]|0);c[f>>2]=0;f=c[i>>2]|0;g=c[f+68>>2]|0}}do if((g&371|0)==0?(E=c[c[a+4>>2]>>2]|0,(E|0)==(c[c[d+4>>2]>>2]|0)):0){if((E|0)==0|(E&-268435456|0)==268435456?((E>>>24&15)+-1|0)>>>0<3:0)break;H=BJ(a,F,d,G)|0;l=I;return H|0}while(0);do if((c[f>>2]|0)==(d|0)){E=c[(c[d+4>>2]|0)+4>>2]|0;if(E|0?(c[f+80>>2]|0)!=(c[E+8>>2]|0):0){H=42;break}E=c[(c[a+4>>2]|0)+4>>2]|0;if((E|0)!=0?(c[f+84>>2]|0)!=(c[E+8>>2]|0):0)H=42}else H=42;while(0);do if((H|0)==42)if((KE(a,d)|0)<0){H=-1;l=I;return H|0}else{f=c[i>>2]|0;break}while(0);H=jg[c[f+8>>2]&31](a,F,d,G)|0;l=I;return H|0}mE(295594,f);H=-1;l=I;return H|0}function tJ(f,g,h){f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0;Q=l;l=l+64|0;J=Q+32|0;B=Q+24|0;A=Q+16|0;o=Q+8|0;n=Q;t=Q+40|0;w=Q+59|0;x=Q+58|0;y=Q+57|0;z=Q+56|0;u=g+4|0;j=c[u>>2]|0;if(j|0){m=c[j>>2]|0;a:do if((m|0)>0){k=c[j+4>>2]|0;j=0;do{if((a[k+(j<<2)>>0]|0)!=-1)break a;if((a[k+(j<<2)+1>>0]|0)!=-1)break a;if((a[k+(j<<2)+2>>0]|0)!=-1)break a;j=j+1|0}while((j|0)<(m|0))}else j=0;while(0);if((j|0)==(m|0)){mE(295634,n);P=0;l=Q;return P|0}}r=f+8|0;s=f+12|0;M=g+24|0;j=xJ(d[g+8>>0]|0,c[g+12>>2]|0,c[g+16>>2]|0,c[g+20>>2]|0,c[M>>2]|0)|0;if(!j){mE(295660,o);P=0;l=Q;return P|0}N=yJ(c[r>>2]|0,c[s>>2]|0,j)|0;if(!N){P=0;l=Q;return P|0}j=c[u>>2]|0;if(j|0?(p=N+4|0,q=c[(c[p>>2]|0)+4>>2]|0,q|0):0){PQ(c[q+4>>2]|0,c[j+4>>2]|0,c[j>>2]<<2|0)|0;c[c[(c[p>>2]|0)+4>>2]>>2]=c[c[u>>2]>>2]}p=f+52|0;j=c[p>>2]|0;G=j+68|0;L=c[G>>2]|0;E=j+76|0;m=a[E>>0]|0;n=a[j+77>>0]|0;g=a[j+78>>0]|0;o=a[j+79>>0]|0;c[E>>2]=-1;c[G>>2]=0;if(j|0){k=c[j>>2]|0;if(k|0?(E=k+56|0,G=c[E>>2]|0,c[E>>2]=G+-1,(G|0)<2):0)ME(k);c[j>>2]=0;c[j+84>>2]=0;c[j+80>>2]=0;G=j+64|0;fN(c[G>>2]|0);c[G>>2]=0}c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=c[r>>2];c[t+12>>2]=c[s>>2];j=c[p>>2]|0;do if((c[j>>2]|0)==(N|0)){G=c[(c[N+4>>2]|0)+4>>2]|0;if(G|0?(c[j+80>>2]|0)!=(c[G+8>>2]|0):0){G=26;break}G=c[(c[f+4>>2]|0)+4>>2]|0;if((G|0)!=0?(c[j+84>>2]|0)!=(c[G+8>>2]|0):0)G=26;else G=28}else G=26;while(0);if((G|0)==26?(KE(f,N)|0)>=0:0){j=c[p>>2]|0;G=28}if((G|0)==28)jg[c[j+8>>2]&31](f,t,N,t)|0;E=N+52|0;k=c[E>>2]|0;a[k+76>>0]=m;a[k+77>>0]=n;a[k+78>>0]=g;a[k+79>>0]=o;c[k+68>>2]=L&-28945;k=c[p>>2]|0;a[k+76>>0]=m;a[k+77>>0]=n;a[k+78>>0]=g;a[k+79>>0]=o;c[k+68>>2]=L;if(k|0){j=c[k>>2]|0;if(j|0?(s=j+56|0,t=c[s>>2]|0,c[s>>2]=t+-1,(t|0)<2):0)ME(j);c[k>>2]=0;c[k+84>>2]=0;c[k+80>>2]=0;t=k+64|0;fN(c[t>>2]|0);c[t>>2]=0}t=f+4|0;do if(L&256|0){k=c[t>>2]|0;m=c[k+4>>2]|0;if(m|0){j=c[u>>2]|0;if((j|0?(v=c[m>>2]|0,(v|0)<=(c[j>>2]|0)):0)?(KN(c[m+4>>2]|0,c[j+4>>2]|0,v<<2)|0)==0:0){k=c[(c[p>>2]|0)+72>>2]|0;m=c[(c[N+4>>2]|0)+4>>2]|0;n=(m|0)==0;if(!n?(c[m>>2]|0)>>>0<=k>>>0:0){c[A>>2]=295681;mE(310091,A);break}j=c[E>>2]|0;K=j+68|0;g=c[K>>2]|0;i=g|256;c[K>>2]=i;c[j+72>>2]=k;if(!n){a[(c[m+4>>2]|0)+(k<<2)+3>>0]=0;j=m+8|0;i=(c[j>>2]|0)+1|0;c[j>>2]=(i|0)==0?1:i;j=c[E>>2]|0;i=c[j+68>>2]|0}if((i|0)==(g|0)|(j|0)==0)break;i=c[j>>2]|0;do if(i|0){J=i+56|0;K=c[J>>2]|0;c[J>>2]=K+-1;if((K|0)>=2)break;ME(i)}while(0);c[j>>2]=0;c[j+84>>2]=0;c[j+80>>2]=0;K=j+64|0;fN(c[K>>2]|0);c[K>>2]=0;break}if(c[M>>2]|0)break}zJ(c[(c[p>>2]|0)+72>>2]|0,k,w,x,y,z);s=N+4|0;n=c[s>>2]|0;m=AJ(n,a[w>>0]|0,a[x>>0]|0,a[y>>0]|0,a[z>>0]|0)|0;n=c[n+4>>2]|0;g=(n|0)==0;if(!g?(c[n>>2]|0)>>>0<=m>>>0:0){c[B>>2]=295681;mE(310091,B)}else{k=c[E>>2]|0;B=k+68|0;o=c[B>>2]|0;j=o|256;c[B>>2]=j;c[k+72>>2]=m;if(!g){a[(c[n+4>>2]|0)+(m<<2)+3>>0]=0;k=n+8|0;j=(c[k>>2]|0)+1|0;c[k>>2]=(j|0)==0?1:j;k=c[E>>2]|0;j=c[k+68>>2]|0}if(!((j|0)==(o|0)|(k|0)==0)){j=c[k>>2]|0;if(j|0?(A=j+56|0,B=c[A>>2]|0,c[A>>2]=B+-1,(B|0)<2):0)ME(j);c[k>>2]=0;c[k+84>>2]=0;c[k+80>>2]=0;B=k+64|0;fN(c[B>>2]|0);c[B>>2]=0}}if(c[(c[E>>2]|0)+68>>2]&256|0?(i=c[s>>2]|0,c[i+24>>2]|0):0){r=N+28|0;j=c[r>>2]|0;if(!j)if(!(c[N>>2]&2))j=0;else{LE(N,1);c[N>>2]=c[N>>2]|2;j=c[r>>2]|0;i=c[s>>2]|0}j=j+1|0;c[r>>2]=j;switch(a[i+9>>0]|0){case 2:{o=c[i+24>>2]&65535^65535;p=o&c[(c[E>>2]|0)+72>>2];k=c[N+12>>2]|0;if((k|0)!=0?(C=c[N+8>>2]|0,D=(c[N+16>>2]|0)/2|0,(C|0)!=0):0){q=p&65535;g=c[N+20>>2]|0;while(1){m=g;n=C;while(1){n=n+-1|0;if((e[m>>1]&o|0)==(p|0))b[m>>1]=q;if(!n)break;else m=m+2|0}k=k+-1|0;if(!k)break;else g=g+(D<<1)|0}}break}case 4:{p=~c[i+24>>2];q=c[(c[E>>2]|0)+72>>2]&p;k=c[N+12>>2]|0;if(k){g=N+8|0;o=N+16|0;n=c[N+20>>2]|0;while(1){k=k+-1|0;j=c[g>>2]|0;if(j|0){m=n;while(1){j=j+-1|0;if((c[m>>2]&p|0)==(q|0))c[m>>2]=q;if(!j)break;else m=m+4|0}}if(!k)break;else n=n+(((c[o>>2]|0)/4|0)<<2)|0}j=c[r>>2]|0}break}default:{}}if(((j|0)!=0?(c[r>>2]=j+-1,(j|0)<=1):0)?(F=c[N>>2]|0,(F&2|0)!=0):0){c[N>>2]=F&-3;PE(N)|0;i=c[s>>2]|0}i=c[i+4>>2]|0;do if(i)if(!(c[i>>2]|0)){c[J>>2]=295681;mE(310091,J);break}else{H=c[E>>2]|0;I=c[H+68>>2]|0;a[(c[i+4>>2]|0)+(c[H+72>>2]<<2)+3>>0]=-1;H=i+8|0;K=(c[H>>2]|0)+1|0;c[H>>2]=(K|0)==0?1:K;H=c[E>>2]|0;K=H;H=c[H+68>>2]|0;G=91;break}else{K=c[E>>2]|0;I=c[K+68>>2]|0;H=I;G=91}while(0);if((G|0)==91?(J=H&-257,c[K+68>>2]=J,!((J|0)==(I|0)|(K|0)==0)):0){i=c[K>>2]|0;do if(i|0){I=i+56|0;J=c[I>>2]|0;c[I>>2]=J+-1;if((J|0)>=2)break;ME(i)}while(0);c[K>>2]=0;c[K+84>>2]=0;c[K+80>>2]=0;K=K+64|0;fN(c[K>>2]|0);c[K>>2]=0}i=c[E>>2]|0;I=i+68|0;K=c[I>>2]|0;J=K&-113|16;c[I>>2]=J;if(!((J|0)==(K|0)|(i|0)==0)){j=c[i>>2]|0;do if(j|0){J=j+56|0;K=c[J>>2]|0;c[J>>2]=K+-1;if((K|0)>=2)break;ME(j)}while(0);c[i>>2]=0;c[i+84>>2]=0;c[i+80>>2]=0;K=i+64|0;fN(c[K>>2]|0);c[K>>2]=0}}}while(0);i=c[N+8>>2]|0;j=c[N+12>>2]|0;k=c[f+44>>2]|0;if((k|0)>=1?(O=c[f+48>>2]|0,!((O|0)<1|(i|0)<1|(j|0)<1)):0){K=c[f+36>>2]|0;J=k+K|0;K=(K|0)>0?K:0;c[N+36>>2]=K;c[N+44>>2]=((i|0)<(J|0)?i:J)-K;i=c[f+40>>2]|0;O=O+i|0;i=(i|0)>0?i:0;c[N+40>>2]=i;i=((j|0)<(O|0)?j:O)-i|0}else{c[N+44>>2]=0;i=0}c[N+48>>2]=i;if(!(c[(c[t>>2]|0)+24>>2]|0)){if(L&258|0)G=109}else if(c[M>>2]|L&258|0)G=109;if((G|0)==109?(P=c[E>>2]|0,M=P+68|0,O=c[M>>2]|0,f=O&-113|16,c[M>>2]=f,!((f|0)==(O|0)|(P|0)==0)):0){i=c[P>>2]|0;if(i|0?(f=i+56|0,O=c[f>>2]|0,c[f>>2]=O+-1,(O|0)<2):0)ME(i);c[P>>2]=0;c[P+84>>2]=0;c[P+80>>2]=0;P=P+64|0;fN(c[P>>2]|0);c[P>>2]=0}if(!(L&4096|h&2)){P=N;l=Q;return P|0}i=c[E>>2]|0;O=i+68|0;P=c[O>>2]|0;h=P|4096;c[O>>2]=h;if((h|0)==(P|0)|(i|0)==0){P=N;l=Q;return P|0}j=c[i>>2]|0;if(j|0?(h=j+56|0,P=c[h>>2]|0,c[h>>2]=P+-1,(P|0)<2):0)ME(j);c[i>>2]=0;c[i+84>>2]=0;c[i+80>>2]=0;P=i+64|0;fN(c[P>>2]|0);c[P>>2]=0;P=N;l=Q;return P|0}function uJ(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=l;l=l+16|0;if(!a){g=-1;l=h;return g|0}e=a+52|0;d=c[e>>2]|0;f=d+68|0;g=c[f>>2]|0;a=g&-113;c[f>>2]=a;switch(b|0){case 0:{e=0;break}case 1:{a=a|16;c[f>>2]=a;e=0;break}case 2:{a=a|32;c[f>>2]=a;e=0;break}case 4:{a=a|64;c[f>>2]=a;e=0;break}default:{mE(294969,h);d=c[e>>2]|0;e=-1;a=c[d+68>>2]|0}}if((a|0)==(g|0)|(d|0)==0){g=e;l=h;return g|0}a=c[d>>2]|0;if(a|0?(b=a+56|0,g=c[b>>2]|0,c[b>>2]=g+-1,(g|0)<2):0)ME(a);c[d>>2]=0;c[d+84>>2]=0;c[d+80>>2]=0;g=d+64|0;fN(c[g>>2]|0);c[g>>2]=0;g=e;l=h;return g|0}function vJ(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+48|0;g=p+8|0;f=p+32|0;o=p+16|0;if(!((a|0)!=0&(d|0)!=0)){mE(295557,p);o=-1;l=p;return o|0}if((c[a+28>>2]|0)==0?(c[d+28>>2]|0)==0:0){if(!e){c[f+4>>2]=0;c[f>>2]=0;c[f+8>>2]=c[d+8>>2];c[f+12>>2]=c[d+12>>2]}else f=e;i=c[a+8>>2]|0;if(!b){n=0;e=0;h=c[a+12>>2]|0;j=f}else{e=c[b>>2]|0;g=c[b+8>>2]|0;if((e|0)<0){c[f>>2]=(c[f>>2]|0)-e;j=0;g=g+e|0}else j=e;i=i-j|0;e=c[b+4>>2]|0;b=c[b+12>>2]|0;h=f+4|0;if((e|0)<0){c[h>>2]=(c[h>>2]|0)-e;b=b+e|0;e=0}h=(c[a+12>>2]|0)-e|0;n=j;h=(h|0)<(b|0)?h:b;i=(i|0)<(g|0)?i:g;j=f}m=d+36|0;g=c[m>>2]|0;b=c[j>>2]|0;k=g-b|0;if((k|0)>0){c[j>>2]=g;n=k+n|0;i=i-k|0;b=g;g=c[m>>2]|0}m=b+i-g-(c[d+44>>2]|0)|0;m=i-((m|0)>0?m:0)|0;k=d+40|0;g=c[k>>2]|0;i=f+4|0;b=c[i>>2]|0;j=g-b|0;if((j|0)>0){c[i>>2]=g;e=j+e|0;h=h-j|0;b=g;g=c[k>>2]|0}j=b+h-g-(c[d+48>>2]|0)|0;h=h-((j|0)>0?j:0)|0;j=a+52|0;i=c[j>>2]|0;g=i+68|0;b=c[g>>2]|0;if(b&512|0?(c[g>>2]=b&-513,i|0):0){g=c[i>>2]|0;if(g|0?(b=g+56|0,k=c[b>>2]|0,c[b>>2]=k+-1,(k|0)<2):0)ME(g);c[i>>2]=0;c[i+84>>2]=0;c[i+80>>2]=0;k=i+64|0;fN(c[k>>2]|0);c[k>>2]=0}if(!((m|0)>0&(h|0)>0)){c[f+12>>2]=0;c[f+8>>2]=0;o=0;l=p;return o|0}c[o>>2]=n;c[o+4>>2]=e;c[f+8>>2]=m;c[o+8>>2]=m;c[f+12>>2]=h;c[o+12>>2]=h;e=c[j>>2]|0;do if((c[e>>2]|0)==(d|0)){n=c[(c[d+4>>2]|0)+4>>2]|0;if(n|0?(c[e+80>>2]|0)!=(c[n+8>>2]|0):0){g=31;break}n=c[(c[a+4>>2]|0)+4>>2]|0;if((n|0)!=0?(c[e+84>>2]|0)!=(c[n+8>>2]|0):0)g=31;else g=33}else g=31;while(0);if((g|0)==31)if((KE(a,d)|0)<0)e=-1;else{e=c[j>>2]|0;g=33}if((g|0)==33)e=jg[c[e+8>>2]&31](a,o,d,f)|0;o=e;l=p;return o|0}mE(295594,g);o=-1;l=p;return o|0}function wJ(a){a=a|0;var b=0,d=0,e=0,f=0;f=l;l=l+16|0;e=f+8|0;d=f;b=c[80023]|0;a:do if(b|0){while(1){if((c[b>>2]|0)==(a|0))break;b=c[b+40>>2]|0;if(!b)break a}e=b+36|0;c[e>>2]=(c[e>>2]|0)+1;e=b;l=f;return e|0}while(0);b=eN(44)|0;if(!b){mE(294869,d);e=0;l=f;return e|0}if((JE(b,a)|0)<0){fN(b);c[e>>2]=289385;mE(310091,e);e=0;l=f;return e|0}if((a|0)==0|(a&-268435456|0)==268435456?((a>>>24&15)+-1|0)>>>0<3:0){e=b;l=f;return e|0}c[b+40>>2]=c[80023];c[80023]=b;e=b;l=f;return e|0}function xJ(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;a:do switch(a|0){case 4:{c=304088064;return c|0}case 8:{if(!b){c=318769153;return c|0}if((b|0)==224&(c|0)==28&(d|0)==3&(e|0)==0){c=336660481;return c|0}break}case 12:{if(!b){c=353504258;return c|0}if((b|0)==3840&(c|0)==240&(d|0)==15&(e|0)==0){c=353504258;return c|0}break}case 15:{if(!b){c=353570562;return c|0}else f=9;break}case 16:{if(!b){c=353701890;return c|0}else f=9;break}case 24:{if((b|0)<255){switch(b|0){case 0:{a=390076419;break}default:{f=24;break a}}return a|0}if((b|0)>=16711680){switch(b|0){case 16711680:{a=390076419;break}default:{f=24;break a}}return a|0}switch(b|0){case 255:break;default:{f=24;break a}}c=386930691;return c|0}case 32:{if(!b){c=370546692;return c|0}else f=24;break}case 1:{c=287310080;return c|0}default:{}}while(0);if((f|0)==9){a=(c|0)==992;k=(d|0)==31;i=(b|0)==31744&a&k;l=(e|0)==0;if(i&l){c=353570562;return c|0}m=(b|0)==31;j=m&a&(d|0)==31744;if(j&l){c=357764866;return c|0}a=(c|0)==240;f=(e|0)==61440;if((b|0)==3840&a&(d|0)==15&f){c=355602434;return c|0}g=(c|0)==3840;h=(e|0)==15;if((b|0)==61440&g&(d|0)==240&h){c=356651010;return c|0}if((b|0)==15&a&(d|0)==3840&f){c=359796738;return c|0}if((b|0)==240&g&(d|0)==61440&h){c=360845314;return c|0}f=(e|0)==32768;if(i&f){c=355667970;return c|0}h=(b|0)==63488;g=(c|0)==1984;a=(e|0)==1;if(h&g&(d|0)==62&a){c=356782082;return c|0}if(j&f){c=359862274;return c|0}f=(d|0)==63488;if((b|0)==62&g&f&a){c=360976386;return c|0}a=(c|0)==2016;if(h&a&k&l){c=353701890;return c|0}if(m&a&f&l){c=357896194;return c|0}}else if((f|0)==24){a=(c|0)==65280;i=(b|0)==16711680&a&(d|0)==255;g=(e|0)==0;if(i&g){c=370546692;return c|0}f=(c|0)==16711680;k=(b|0)==-16777216&f&(d|0)==65280;if(k&g){c=371595268;return c|0}j=(b|0)==255&a&(d|0)==16711680;if(j&g){c=374740996;return c|0}h=(b|0)==65280&f&(d|0)==-16777216;if(h&g){c=375789572;return c|0}f=(e|0)==-16777216;if(i&f){c=372645892;return c|0}a=(e|0)==255;if(k&a){c=373694468;return c|0}if(j&f){c=376840196;return c|0}if(h&a){c=377888772;return c|0}if((b|0)==1072693248&(c|0)==1047552&(d|0)==1023&(e|0)==-1073741824){c=372711428;return c|0}}c=0;return c|0}function yJ(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+64|0;t=v+48|0;s=v+40|0;m=v+32|0;k=v+24|0;j=v+16|0;i=v+8|0;u=eN(60)|0;if(!u){mE(294869,v);u=0;l=v;return u|0}if(c[u+-4>>2]&3|0){g=u;h=g+60|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0))}h=wJ(f)|0;r=u+4|0;c[r>>2]=h;if(!h){ME(u);u=0;l=v;return u|0}n=u+8|0;c[n>>2]=b;p=u+12|0;c[p>>2]=e;f=O(d[h+9>>0]|0,b)|0;g=h+8|0;switch(a[g>>0]|0){case 1:{f=(f+7|0)/8|0;break}case 4:{f=(f+1|0)/2|0;break}default:{}}o=u+16|0;c[o>>2]=f+3&-4;c[u+36>>2]=0;c[u+40>>2]=0;c[u+44>>2]=b;c[u+48>>2]=e;e=c[h>>2]|0;a:do if((e|0)==0|(e&-268435456|0)==268435456?((e>>>24&15)+-1|0)>>>0<3:0){g=1<<d[g>>0];do if((g|0)<1){c[i>>2]=295693;mE(310091,i)}else{h=eN(16)|0;if(!h){mE(294869,j);break}b=g<<2;f=eN(b)|0;c[h+4>>2]=f;if(!f){fN(h);break}c[h>>2]=g;c[h+8>>2]=1;c[h+12>>2]=1;RQ(f|0,-1,b|0)|0;b=c[h>>2]|0;if((b|0)==2){j=c[h+4>>2]|0;a[j>>0]=-1;a[j+1>>0]=-1;a[j+2>>0]=-1;a[j+4>>0]=0;a[j+5>>0]=0;a[j+6>>0]=0}f=c[r>>2]|0;do if(f){if((b|0)!=(1<<d[f+8>>0]|0)){mE(289439,m);break}b=f+4|0;f=c[b>>2]|0;if((f|0)!=(h|0)){if(f|0?(k=f+12|0,m=c[k>>2]|0,c[k>>2]=m+-1,(m|0)<=1):0){fN(c[f+4>>2]|0);fN(f)}c[b>>2]=h;m=h+12|0;c[m>>2]=(c[m>>2]|0)+1}b=c[u+52>>2]|0;if(b|0){f=c[b>>2]|0;if(f|0?(k=f+56|0,m=c[k>>2]|0,c[k>>2]=m+-1,(m|0)<2):0)ME(f);c[b>>2]=0;c[b+84>>2]=0;c[b+80>>2]=0;m=b+64|0;fN(c[m>>2]|0);c[m>>2]=0}}else mE(289392,k);while(0);k=h+12|0;m=c[k>>2]|0;c[k>>2]=m+-1;if((m|0)<=1){fN(c[h+4>>2]|0);fN(h)}b=c[n>>2]|0;break a}while(0);ME(u);u=0;l=v;return u|0}while(0);do if(b|0?(q=c[p>>2]|0,q|0):0){b=eN(O(c[o>>2]|0,q)|0)|0;c[u+20>>2]=b;if(b|0){RQ(b|0,0,O(c[o>>2]|0,c[p>>2]|0)|0)|0;break}ME(u);mE(294869,s);u=0;l=v;return u|0}while(0);f=eN(88)|0;if(!f){mE(294869,t);c[u+52>>2]=0;ME(u);u=0;l=v;return u|0}if(c[f+-4>>2]&3|0){g=f;h=g+88|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0))}c[f+76>>2]=-1;c[u+52>>2]=f;if(c[(c[r>>2]|0)+24>>2]|0?(r=f+68|0,t=c[r>>2]|0,s=t&-113|16,c[r>>2]=s,(s|0)!=(t|0)):0){b=c[f>>2]|0;if(b|0?(s=b+56|0,t=c[s>>2]|0,c[s>>2]=t+-1,(t|0)<2):0)ME(b);c[f>>2]=0;c[f+84>>2]=0;c[f+80>>2]=0;t=f+64|0;fN(c[t>>2]|0);c[t>>2]=0}c[u+56>>2]=1;l=v;return u|0}function zJ(b,e,f,g,h,i){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;j=e+4|0;k=c[j>>2]|0;if(!k){a[f>>0]=a[(c[18232+((d[e+28>>0]|0)<<2)>>2]|0)+((c[e+12>>2]&b)>>>(d[e+32>>0]|0))>>0]|0;a[g>>0]=a[(c[18232+((d[e+29>>0]|0)<<2)>>2]|0)+((c[e+16>>2]&b)>>>(d[e+33>>0]|0))>>0]|0;a[h>>0]=a[(c[18232+((d[e+30>>0]|0)<<2)>>2]|0)+((c[e+20>>2]&b)>>>(d[e+34>>0]|0))>>0]|0;a[i>>0]=a[(c[18232+((d[e+31>>0]|0)<<2)>>2]|0)+((c[e+24>>2]&b)>>>(d[e+35>>0]|0))>>0]|0;return}if((c[k>>2]|0)>>>0>b>>>0){a[f>>0]=a[(c[k+4>>2]|0)+(b<<2)>>0]|0;a[g>>0]=a[(c[(c[j>>2]|0)+4>>2]|0)+(b<<2)+1>>0]|0;a[h>>0]=a[(c[(c[j>>2]|0)+4>>2]|0)+(b<<2)+2>>0]|0;a[i>>0]=a[(c[(c[j>>2]|0)+4>>2]|0)+(b<<2)+3>>0]|0;return}else{a[i>>0]=0;a[h>>0]=0;a[g>>0]=0;a[f>>0]=0;return}}function AJ(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;h=c[a+4>>2]|0;if(!h){m=(e&255)>>>(d[a+29>>0]|0)<<(d[a+33>>0]|0)|(b&255)>>>(d[a+28>>0]|0)<<(d[a+32>>0]|0)|(f&255)>>>(d[a+30>>0]|0)<<(d[a+34>>0]|0)|(g&255)>>>(d[a+31>>0]|0)<<(d[a+35>>0]|0)&c[a+24>>2];return m|0}m=c[h>>2]|0;a:do if((m|0)>0){l=c[h+4>>2]|0;k=b&255;j=e&255;i=f&255;f=g&255;e=0;h=-1;a=0;do{n=(d[l+(e<<2)>>0]|0)-k|0;o=(d[l+(e<<2)+1>>0]|0)-j|0;g=(d[l+(e<<2)+2>>0]|0)-i|0;b=(d[l+(e<<2)+3>>0]|0)-f|0;b=(O(o,o)|0)+(O(n,n)|0)+(O(g,g)|0)+(O(b,b)|0)|0;if(b>>>0<h>>>0){a=e&255;if(!b)break a;else h=b}e=e+1|0}while((e|0)<(m|0))}else a=0;while(0);o=a&255;return o|0}function BJ(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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;N=l;l=l+64|0;n=N+16|0;j=N+8|0;h=N+40|0;k=N+24|0;H=c[f+4>>2]|0;M=a[H+9>>0]|0;I=M&255;if((c[c[d+4>>2]>>2]|0)!=(c[H>>2]|0)){mE(295744,N);d=-1;l=N;return d|0}do if(!e){c[h>>2]=0;c[h+4>>2]=0;c[h+8>>2]=c[d+8>>2];c[h+12>>2]=c[d+12>>2];H=h}else{h=c[e>>2]|0;if((((h|0)>=0?(i=c[e+4>>2]|0,(i|0)>=0):0)?((c[e+8>>2]|0)+h|0)<=(c[d+8>>2]|0):0)?((c[e+12>>2]|0)+i|0)<=(c[d+12>>2]|0):0){H=e;break}mE(295781,j);d=-1;l=N;return d|0}while(0);do if(!g){c[k>>2]=0;c[k+4>>2]=0;c[k+8>>2]=c[f+8>>2];c[k+12>>2]=c[f+12>>2]}else{h=c[g>>2]|0;if((((h|0)>=0?(m=c[g+4>>2]|0,(m|0)>=0):0)?((c[g+8>>2]|0)+h|0)<=(c[f+8>>2]|0):0)?((c[g+12>>2]|0)+m|0)<=(c[f+12>>2]|0):0){k=g;break}mE(295811,n);d=-1;l=N;return d|0}while(0);if(!(c[f>>2]&2))G=0;else{e=f+28|0;h=c[e>>2]|0;if(!h){LE(f,1);c[f>>2]=c[f>>2]|2;h=c[e>>2]|0}c[e>>2]=h+1;G=1}if(!(c[d>>2]&2))x=0;else{e=d+28|0;h=c[e>>2]|0;if(!h){LE(d,1);c[d>>2]=c[d>>2]|2;h=c[e>>2]|0}c[e>>2]=h+1;x=1}F=c[k+12>>2]|0;C=(c[H+12>>2]<<16|0)/(F|0)|0;h=c[k+4>>2]|0;D=h+F|0;a:do if((F|0)>0){E=f+20|0;F=f+16|0;y=H+8|0;z=k+8|0;A=d+20|0;B=d+16|0;j=65536;e=0;i=c[H+4>>2]|0;while(1){r=(c[E>>2]|0)+(O(c[F>>2]|0,h)|0)|0;r=r+(O(c[k>>2]|0,I)|0)|0;if((j|0)>65535){j=j+-65536|0;w=j>>>16;e=(c[A>>2]|0)+(O(c[B>>2]|0,i+w|0)|0)|0;e=e+(O(c[H>>2]|0,I)|0)|0;j=j-(w<<16)|0;i=i+1+w|0}switch(M<<24>>24){case 1:{g=c[z>>2]|0;s=(c[y>>2]<<16|0)/(g|0)|0;if((g|0)>0){o=e;m=65536;n=0;while(1){p=m+-65536|0;q=p>>>16;if((m|0)>65535){n=a[o+q>>0]|0;o=o+1+q|0;m=p-(q<<16)|0}a[r>>0]=n;if((g|0)>1){m=m+s|0;g=g+-1|0;r=r+1|0}else break}}break}case 2:{g=c[z>>2]|0;s=(c[y>>2]<<16|0)/(g|0)|0;if((g|0)>0){o=e;m=65536;n=0;while(1){p=m+-65536|0;q=p>>>16;if((m|0)>65535){n=b[o+(q<<1)>>1]|0;o=o+2+(q<<1)|0;m=p-(q<<16)|0}b[r>>1]=n;if((g|0)>1){m=m+s|0;g=g+-1|0;r=r+2|0}else break}}break}case 3:{g=c[z>>2]|0;w=(c[y>>2]<<16|0)/(g|0)|0;if((g|0)>0){m=65536;t=e;u=0;p=0;n=0;while(1){q=m+-65536|0;s=q>>>16;o=s*3|0;v=t+o|0;if((m|0)>65535){t=t+3+o|0;m=q-(s<<16)|0;o=a[v>>0]|0;p=a[v+1>>0]|0;n=a[v+2>>0]|0}else o=u;a[r>>0]=o;a[r+1>>0]=p;a[r+2>>0]=n;if((g|0)>1){m=m+w|0;g=g+-1|0;r=r+3|0;u=o}else break}}break}case 4:{g=c[z>>2]|0;s=(c[y>>2]<<16|0)/(g|0)|0;if((g|0)>0){o=e;m=65536;n=0;while(1){p=m+-65536|0;q=p>>>16;if((m|0)>65535){n=c[o+(q<<2)>>2]|0;o=o+4+(q<<2)|0;m=p-(q<<16)|0}c[r>>2]=n;if((g|0)>1){m=m+s|0;g=g+-1|0;r=r+4|0}else break}}break}default:{}}h=h+1|0;if((h|0)>=(D|0))break a;else j=j+C|0}}while(0);if(((G|0?(J=f+28|0,K=c[J>>2]|0,K|0):0)?(c[J>>2]=K+-1,(K|0)<=1):0)?(L=c[f>>2]|0,L&2|0):0){c[f>>2]=L&-3;PE(f)|0}if(!x){d=0;l=N;return d|0}h=d+28|0;e=c[h>>2]|0;if(!e){d=0;l=N;return d|0}c[h>>2]=e+-1;if((e|0)>1){d=0;l=N;return d|0}h=c[d>>2]|0;if(!(h&2)){d=0;l=N;return d|0}c[d>>2]=h&-3;PE(d)|0;d=0;l=N;return d|0}function CJ(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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;p=~i&255;switch(e|0){case 1:{i=c[b+8>>2]|0;e=c[b+12>>2]|0;j=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;n=j-i|0;if(!e)return 0;o=(i+3|0)/4|0;m=i&255;l=f&255;f=g&255;k=h&255;i=(c[a+20>>2]|0)+((O(c[b+4>>2]|0,j)|0)<<2)+(c[b>>2]<<2)|0;a:while(1){e=e+-1|0;switch(m&3){case 0:{q=o;s=i;i=5;break}case 3:{t=o;y=i;i=6;break}case 2:{z=o;E=i;i=7;break}case 1:{F=o;K=i;i=8;break}default:{i=9;break a}}while(1)if((i|0)==5){t=c[s>>2]|0;c[s>>2]=(((O(t>>>8&255,p)|0)>>>0)/255|0)+f<<8|(((O(t&255,p)|0)>>>0)/255|0)+k|(((O(t>>>16&255,p)|0)>>>0)/255|0)+l<<16;t=q;y=s+4|0;i=6;continue}else if((i|0)==6){z=c[y>>2]|0;c[y>>2]=(((O(z>>>8&255,p)|0)>>>0)/255|0)+f<<8|(((O(z&255,p)|0)>>>0)/255|0)+k|(((O(z>>>16&255,p)|0)>>>0)/255|0)+l<<16;z=t;E=y+4|0;i=7;continue}else if((i|0)==7){F=c[E>>2]|0;c[E>>2]=(((O(F>>>8&255,p)|0)>>>0)/255|0)+f<<8|(((O(F&255,p)|0)>>>0)/255|0)+k|(((O(F>>>16&255,p)|0)>>>0)/255|0)+l<<16;F=z;K=E+4|0;i=8;continue}else if((i|0)==8){i=c[K>>2]|0;c[K>>2]=(((O(i>>>8&255,p)|0)>>>0)/255|0)+f<<8|(((O(i&255,p)|0)>>>0)/255|0)+k|(((O(i>>>16&255,p)|0)>>>0)/255|0)+l<<16;i=K+4|0;if((F|0)>1){q=F+-1|0;s=i;i=5;continue}else break}if(!e){i=46;break}else i=i+(n<<2)|0}if((i|0)!=9)if((i|0)==46)return 0;break}case 2:{j=c[b+8>>2]|0;e=c[b+12>>2]|0;i=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;n=i-j|0;if(!e)return 0;i=(c[a+20>>2]|0)+((O(c[b+4>>2]|0,i)|0)<<2)|0;m=(j+3|0)/4|0;l=j&255;f=f&255;k=g&255;j=h&255;i=i+(c[b>>2]<<2)|0;b:while(1){e=e+-1|0;switch(l&3){case 0:{o=m;u=i;i=14;break}case 3:{v=m;A=i;i=15;break}case 2:{B=m;G=i;i=16;break}case 1:{H=m;L=i;i=17;break}default:{i=18;break b}}while(1)if((i|0)==14){A=c[u>>2]|0;v=(A>>>16&255)+f|0;i=(A>>>8&255)+k|0;A=(A&255)+j|0;c[u>>2]=(i>>>0<255?i:255)<<8|(A>>>0<255?A:255)|(v>>>0<255?v:255)<<16;v=o;A=u+4|0;i=15;continue}else if((i|0)==15){G=c[A>>2]|0;B=(G>>>16&255)+f|0;i=(G>>>8&255)+k|0;G=(G&255)+j|0;c[A>>2]=(i>>>0<255?i:255)<<8|(G>>>0<255?G:255)|(B>>>0<255?B:255)<<16;B=v;G=A+4|0;i=16;continue}else if((i|0)==16){L=c[G>>2]|0;H=(L>>>16&255)+f|0;i=(L>>>8&255)+k|0;L=(L&255)+j|0;c[G>>2]=(i>>>0<255?i:255)<<8|(L>>>0<255?L:255)|(H>>>0<255?H:255)<<16;H=B;L=G+4|0;i=17;continue}else if((i|0)==17){h=c[L>>2]|0;i=(h>>>16&255)+f|0;b=(h>>>8&255)+k|0;h=(h&255)+j|0;c[L>>2]=(b>>>0<255?b:255)<<8|(h>>>0<255?h:255)|(i>>>0<255?i:255)<<16;i=L+4|0;if((H|0)>1){o=H+-1|0;u=i;i=14;continue}else break}if(!e){i=46;break}else i=i+(n<<2)|0}if((i|0)!=18)if((i|0)==46)return 0;break}case 4:{j=c[b+8>>2]|0;e=c[b+12>>2]|0;i=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;n=i-j|0;if(!e)return 0;i=(c[a+20>>2]|0)+((O(c[b+4>>2]|0,i)|0)<<2)|0;m=(j+3|0)/4|0;l=j&255;f=f&255;k=g&255;j=h&255;i=i+(c[b>>2]<<2)|0;c:while(1){e=e+-1|0;switch(l&3){case 0:{r=m;w=i;i=23;break}case 3:{x=m;C=i;i=24;break}case 2:{D=m;I=i;i=25;break}case 1:{J=m;M=i;i=26;break}default:{i=27;break c}}while(1)if((i|0)==23){x=c[w>>2]|0;c[w>>2]=(((O(x>>>8&255,k)|0)>>>0)/255|0)<<8|(((O(x&255,j)|0)>>>0)/255|0)|(((O(x>>>16&255,f)|0)>>>0)/255|0)<<16;x=r;C=w+4|0;i=24;continue}else if((i|0)==24){D=c[C>>2]|0;c[C>>2]=(((O(D>>>8&255,k)|0)>>>0)/255|0)<<8|(((O(D&255,j)|0)>>>0)/255|0)|(((O(D>>>16&255,f)|0)>>>0)/255|0)<<16;D=x;I=C+4|0;i=25;continue}else if((i|0)==25){J=c[I>>2]|0;c[I>>2]=(((O(J>>>8&255,k)|0)>>>0)/255|0)<<8|(((O(J&255,j)|0)>>>0)/255|0)|(((O(J>>>16&255,f)|0)>>>0)/255|0)<<16;J=D;M=I+4|0;i=26;continue}else if((i|0)==26){i=c[M>>2]|0;c[M>>2]=(((O(i>>>8&255,k)|0)>>>0)/255|0)<<8|(((O(i&255,j)|0)>>>0)/255|0)|(((O(i>>>16&255,f)|0)>>>0)/255|0)<<16;i=M+4|0;if((J|0)>1){r=J+-1|0;w=i;i=23;continue}else break}if(!e){i=46;break}else i=i+(n<<2)|0}if((i|0)!=27)if((i|0)==46)return 0;break}default:{k=c[b+8>>2]|0;M=c[b+12>>2]|0;i=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;n=i-k|0;i=(c[a+20>>2]|0)+((O(c[b+4>>2]|0,i)|0)<<2)|0;i=i+(c[b>>2]<<2)|0;j=M+-1|0;if(!M)return 0;e=k+3|0;m=(e|0)/4|0;l=(g&255)<<8|(f&255)<<16|h&255;switch(k&3){case 0:{while(1){e=m;while(1){c[i>>2]=l;c[i+4>>2]=l;c[i+8>>2]=l;c[i+12>>2]=l;i=i+16|0;if((e|0)<=1)break;else e=e+-1|0}if(!j)break;else{i=i+(n<<2)|0;j=j+-1|0}}return 0}case 3:{f=(e|0)>7;while(1){c[i>>2]=l;c[i+4>>2]=l;c[i+8>>2]=l;e=i+12|0;if(f){k=m;do{k=k+-1|0;c[e>>2]=l;e=i;i=i+16|0;c[i>>2]=l;c[e+20>>2]=l;c[e+24>>2]=l;e=e+28|0}while((k|0)>1);i=e}else i=e;if(!j)break;else{i=i+(n<<2)|0;j=j+-1|0}}return 0}case 2:{f=(e|0)>7;while(1){c[i>>2]=l;c[i+4>>2]=l;e=i+8|0;if(f){k=m;do{k=k+-1|0;c[e>>2]=l;c[i+12>>2]=l;e=i;i=i+16|0;c[i>>2]=l;c[e+20>>2]=l;e=e+24|0}while((k|0)>1);i=e}else i=e;if(!j)break;else{i=i+(n<<2)|0;j=j+-1|0}}return 0}default:{f=(e|0)>7;while(1){c[i>>2]=l;e=i+4|0;if(f){k=m;do{k=k+-1|0;c[e>>2]=l;c[i+8>>2]=l;c[i+12>>2]=l;e=i;i=i+16|0;c[i>>2]=l;e=e+20|0}while((k|0)>1);i=e}else i=e;if(!j)break;else{i=i+(n<<2)|0;j=j+-1|0}}return 0}}}}return 0}function DJ(a,b,e,f,g,h,i){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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;N=i&255;p=N^255;switch(e|0){case 1:{i=c[b+8>>2]|0;e=c[b+12>>2]|0;j=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;n=j-i|0;if(!e)return 0;o=(i+3|0)/4|0;m=i&255;l=f&255;f=g&255;k=h&255;i=(c[a+20>>2]|0)+((O(c[b+4>>2]|0,j)|0)<<2)+(c[b>>2]<<2)|0;a:while(1){e=e+-1|0;switch(m&3){case 0:{q=o;s=i;i=5;break}case 3:{t=o;y=i;i=6;break}case 2:{z=o;E=i;i=7;break}case 1:{F=o;K=i;i=8;break}default:{i=9;break a}}while(1)if((i|0)==5){t=c[s>>2]|0;c[s>>2]=(((O(t>>>24,p)|0)>>>0)/255|0)+N<<24|(((O(t&255,p)|0)>>>0)/255|0)+k|(((O(t>>>16&255,p)|0)>>>0)/255|0)+l<<16|(((O(t>>>8&255,p)|0)>>>0)/255|0)+f<<8;t=q;y=s+4|0;i=6;continue}else if((i|0)==6){z=c[y>>2]|0;c[y>>2]=(((O(z>>>24,p)|0)>>>0)/255|0)+N<<24|(((O(z&255,p)|0)>>>0)/255|0)+k|(((O(z>>>16&255,p)|0)>>>0)/255|0)+l<<16|(((O(z>>>8&255,p)|0)>>>0)/255|0)+f<<8;z=t;E=y+4|0;i=7;continue}else if((i|0)==7){F=c[E>>2]|0;c[E>>2]=(((O(F>>>24,p)|0)>>>0)/255|0)+N<<24|(((O(F&255,p)|0)>>>0)/255|0)+k|(((O(F>>>16&255,p)|0)>>>0)/255|0)+l<<16|(((O(F>>>8&255,p)|0)>>>0)/255|0)+f<<8;F=z;K=E+4|0;i=8;continue}else if((i|0)==8){i=c[K>>2]|0;c[K>>2]=(((O(i>>>24,p)|0)>>>0)/255|0)+N<<24|(((O(i&255,p)|0)>>>0)/255|0)+k|(((O(i>>>16&255,p)|0)>>>0)/255|0)+l<<16|(((O(i>>>8&255,p)|0)>>>0)/255|0)+f<<8;i=K+4|0;if((F|0)>1){q=F+-1|0;s=i;i=5;continue}else break}if(!e){i=46;break}else i=i+(n<<2)|0}if((i|0)!=9)if((i|0)==46)return 0;break}case 2:{j=c[b+8>>2]|0;e=c[b+12>>2]|0;i=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;n=i-j|0;if(!e)return 0;i=(c[a+20>>2]|0)+((O(c[b+4>>2]|0,i)|0)<<2)|0;m=(j+3|0)/4|0;l=j&255;f=f&255;k=g&255;j=h&255;i=i+(c[b>>2]<<2)|0;b:while(1){e=e+-1|0;switch(l&3){case 0:{o=m;u=i;i=14;break}case 3:{v=m;A=i;i=15;break}case 2:{B=m;G=i;i=16;break}case 1:{H=m;L=i;i=17;break}default:{i=18;break b}}while(1)if((i|0)==14){i=c[u>>2]|0;A=(i>>>16&255)+f|0;v=(i>>>8&255)+k|0;h=(i&255)+j|0;c[u>>2]=(h>>>0<255?h:255)|i&-16777216|(A>>>0<255?A:255)<<16|(v>>>0<255?v:255)<<8;v=o;A=u+4|0;i=15;continue}else if((i|0)==15){i=c[A>>2]|0;G=(i>>>16&255)+f|0;B=(i>>>8&255)+k|0;h=(i&255)+j|0;c[A>>2]=(h>>>0<255?h:255)|i&-16777216|(G>>>0<255?G:255)<<16|(B>>>0<255?B:255)<<8;B=v;G=A+4|0;i=16;continue}else if((i|0)==16){i=c[G>>2]|0;L=(i>>>16&255)+f|0;H=(i>>>8&255)+k|0;h=(i&255)+j|0;c[G>>2]=(h>>>0<255?h:255)|i&-16777216|(L>>>0<255?L:255)<<16|(H>>>0<255?H:255)<<8;H=B;L=G+4|0;i=17;continue}else if((i|0)==17){b=c[L>>2]|0;h=(b>>>16&255)+f|0;i=(b>>>8&255)+k|0;g=(b&255)+j|0;c[L>>2]=(g>>>0<255?g:255)|b&-16777216|(h>>>0<255?h:255)<<16|(i>>>0<255?i:255)<<8;i=L+4|0;if((H|0)>1){o=H+-1|0;u=i;i=14;continue}else break}if(!e){i=46;break}else i=i+(n<<2)|0}if((i|0)!=18)if((i|0)==46)return 0;break}case 4:{j=c[b+8>>2]|0;e=c[b+12>>2]|0;i=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;n=i-j|0;if(!e)return 0;i=(c[a+20>>2]|0)+((O(c[b+4>>2]|0,i)|0)<<2)|0;m=(j+3|0)/4|0;l=j&255;f=f&255;k=g&255;j=h&255;i=i+(c[b>>2]<<2)|0;c:while(1){e=e+-1|0;switch(l&3){case 0:{r=m;w=i;i=23;break}case 3:{x=m;C=i;i=24;break}case 2:{D=m;I=i;i=25;break}case 1:{J=m;M=i;i=26;break}default:{i=27;break c}}while(1)if((i|0)==23){x=c[w>>2]|0;c[w>>2]=((O(x&255,j)|0)>>>0)/255|0|x&-16777216|(((O(x>>>16&255,f)|0)>>>0)/255|0)<<16|(((O(x>>>8&255,k)|0)>>>0)/255|0)<<8;x=r;C=w+4|0;i=24;continue}else if((i|0)==24){D=c[C>>2]|0;c[C>>2]=((O(D&255,j)|0)>>>0)/255|0|D&-16777216|(((O(D>>>16&255,f)|0)>>>0)/255|0)<<16|(((O(D>>>8&255,k)|0)>>>0)/255|0)<<8;D=x;I=C+4|0;i=25;continue}else if((i|0)==25){J=c[I>>2]|0;c[I>>2]=((O(J&255,j)|0)>>>0)/255|0|J&-16777216|(((O(J>>>16&255,f)|0)>>>0)/255|0)<<16|(((O(J>>>8&255,k)|0)>>>0)/255|0)<<8;J=D;M=I+4|0;i=26;continue}else if((i|0)==26){i=c[M>>2]|0;c[M>>2]=((O(i&255,j)|0)>>>0)/255|0|i&-16777216|(((O(i>>>16&255,f)|0)>>>0)/255|0)<<16|(((O(i>>>8&255,k)|0)>>>0)/255|0)<<8;i=M+4|0;if((J|0)>1){r=J+-1|0;w=i;i=23;continue}else break}if(!e){i=46;break}else i=i+(n<<2)|0}if((i|0)!=27)if((i|0)==46)return 0;break}default:{k=c[b+8>>2]|0;M=c[b+12>>2]|0;i=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;n=i-k|0;i=(c[a+20>>2]|0)+((O(c[b+4>>2]|0,i)|0)<<2)|0;i=i+(c[b>>2]<<2)|0;j=M+-1|0;if(!M)return 0;e=k+3|0;m=(e|0)/4|0;l=(g&255)<<8|(f&255)<<16|h&255|N<<24;switch(k&3){case 0:{while(1){e=m;while(1){c[i>>2]=l;c[i+4>>2]=l;c[i+8>>2]=l;c[i+12>>2]=l;i=i+16|0;if((e|0)<=1)break;else e=e+-1|0}if(!j)break;else{i=i+(n<<2)|0;j=j+-1|0}}return 0}case 3:{f=(e|0)>7;while(1){c[i>>2]=l;c[i+4>>2]=l;c[i+8>>2]=l;e=i+12|0;if(f){k=m;do{k=k+-1|0;c[e>>2]=l;e=i;i=i+16|0;c[i>>2]=l;c[e+20>>2]=l;c[e+24>>2]=l;e=e+28|0}while((k|0)>1);i=e}else i=e;if(!j)break;else{i=i+(n<<2)|0;j=j+-1|0}}return 0}case 2:{f=(e|0)>7;while(1){c[i>>2]=l;c[i+4>>2]=l;e=i+8|0;if(f){k=m;do{k=k+-1|0;c[e>>2]=l;c[i+12>>2]=l;e=i;i=i+16|0;c[i>>2]=l;c[e+20>>2]=l;e=e+24|0}while((k|0)>1);i=e}else i=e;if(!j)break;else{i=i+(n<<2)|0;j=j+-1|0}}return 0}default:{f=(e|0)>7;while(1){c[i>>2]=l;e=i+4|0;if(f){k=m;do{k=k+-1|0;c[e>>2]=l;c[i+8>>2]=l;c[i+12>>2]=l;e=i;i=i+16|0;c[i>>2]=l;e=e+20|0}while((k|0)>1);i=e}else i=e;if(!j)break;else{i=i+(n<<2)|0;j=j+-1|0}}return 0}}}}return 0}function EJ(f,g,h,i,j,k,m){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|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,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=0,zb=0,Ab=0,Bb=0,Cb=0,Db=0,Eb=0,Fb=0,Gb=0,Hb=0,Ib=0,Jb=0,Kb=0,Lb=0,Mb=0,Nb=0,Ob=0,Pb=0,Qb=0,Rb=0,Sb=0,Tb=0,Ub=0,Vb=0,Wb=0,Xb=0,Yb=0,Zb=0,_b=0,$b=0,ac=0,bc=0,cc=0,dc=0,ec=0,fc=0,gc=0,hc=0,ic=0,jc=0,kc=0,lc=0,mc=0,nc=0,oc=0,pc=0,qc=0,rc=0,sc=0,tc=0,uc=0,vc=0,wc=0,xc=0,yc=0,zc=0,Ac=0,Bc=0,Cc=0,Dc=0,Ec=0,Fc=0,Gc=0,Hc=0,Ic=0,Jc=0,Kc=0,Lc=0,Mc=0,Nc=0,Oc=0,Pc=0,Qc=0,Rc=0,Sc=0,Tc=0,Uc=0,Vc=0,Wc=0,Xc=0,Yc=0,Zc=0,_c=0,$c=0,ad=0,bd=0,cd=0,dd=0,ed=0,fd=0,gd=0,hd=0,id=0,jd=0,kd=0,ld=0,md=0,nd=0,od=0,pd=0,qd=0,rd=0,sd=0,td=0,ud=0,vd=0,wd=0,xd=0,yd=0,zd=0,Ad=0,Bd=0,Cd=0,Dd=0,Ed=0,Fd=0,Gd=0,Hd=0,Id=0,Jd=0,Kd=0,Ld=0,Md=0,Nd=0,Od=0,Pd=0,Qd=0,Rd=0,Sd=0,Td=0,Ud=0,Vd=0,Wd=0,Xd=0,Yd=0,Zd=0,_d=0,$d=0,ae=0,be=0,ce=0,de=0,ee=0,fe=0,ge=0,he=0,ie=0,je=0,ke=0,le=0,me=0,ne=0,oe=0,pe=0,qe=0,re=0,se=0,te=0,ue=0,ve=0,we=0,xe=0,ye=0,ze=0,Ae=0,Be=0,Ce=0,De=0,Ee=0,Fe=0,Ge=0,He=0,Ie=0,Je=0,Ke=0,Le=0,Me=0,Ne=0,Oe=0,Pe=0,Qe=0,Re=0,Se=0,Te=0,Ue=0,Ve=0,We=0,Xe=0,Ye=0,Ze=0,_e=0,$e=0,af=0,bf=0,cf=0,df=0,ef=0,ff=0,gf=0,hf=0,jf=0,kf=0,lf=0,mf=0,nf=0,of=0,pf=0,qf=0,rf=0,sf=0,tf=0,uf=0,vf=0,wf=0,xf=0,yf=0,zf=0,Af=0,Bf=0,Cf=0,Df=0,Ef=0,Ff=0,Gf=0,Hf=0,If=0,Jf=0,Kf=0,Lf=0,Mf=0,Nf=0,Of=0,Pf=0,Qf=0,Rf=0,Sf=0,Tf=0,Uf=0,Vf=0,Wf=0,Xf=0,Yf=0,Zf=0,_f=0,$f=0,ag=0,bg=0,cg=0,dg=0,eg=0,fg=0,gg=0,hg=0,ig=0,jg=0,kg=0,lg=0,mg=0,ng=0,og=0,pg=0,qg=0,rg=0,sg=0,tg=0,ug=0,vg=0,wg=0,xg=0,yg=0,zg=0,Ag=0,Bg=0,Cg=0,Dg=0,Eg=0,Fg=0,Gg=0,Hg=0;Hg=l;l=l+16|0;n=Hg;Fg=c[f+4>>2]|0;Eg=~m&255;z=a[Fg+9>>0]|0;o=z&255;switch(z<<24>>24){case 2:{switch(h|0){case 1:{m=c[g+8>>2]|0;h=c[g+12>>2]|0;o=(c[f+16>>2]|0)/(o|0)|0;B=o-m|0;if(!h){Gg=0;l=Hg;return Gg|0}C=(m+3|0)/4|0;A=m&255;r=Fg+28|0;s=Fg+12|0;t=Fg+32|0;u=Fg+29|0;v=Fg+16|0;w=Fg+33|0;x=Fg+30|0;y=Fg+20|0;z=Fg+34|0;q=i&255;p=j&255;i=k&255;n=Fg+24|0;m=(c[f+20>>2]|0)+((O(c[g+4>>2]|0,o)|0)<<1)+(c[g>>2]<<1)|0;a:while(1){h=h+-1|0;switch(A&3){case 0:{of=a[r>>0]|0;Uf=a[u>>0]|0;qg=a[x>>0]|0;Pa=C;Va=m;Ze=of;hf=c[s>>2]|0;jf=a[t>>0]|0;of=c[18232+((of&255)<<2)>>2]|0;yf=Uf;Gf=c[v>>2]|0;Mf=a[w>>0]|0;Uf=c[18232+((Uf&255)<<2)>>2]|0;bg=qg;jg=c[y>>2]|0;og=a[z>>0]|0;qg=c[18232+((qg&255)<<2)>>2]|0;Ag=c[n>>2]|0;m=10;break}case 3:{ic=a[r>>0]|0;vc=a[u>>0]|0;Tc=a[x>>0]|0;Wa=C;fb=m;Pb=ic;Zb=c[s>>2]|0;$b=a[t>>0]|0;ic=c[18232+((ic&255)<<2)>>2]|0;jc=vc;kc=c[v>>2]|0;rc=a[w>>0]|0;vc=c[18232+((vc&255)<<2)>>2]|0;Fc=Tc;Ic=c[y>>2]|0;Pc=a[z>>0]|0;Tc=c[18232+((Tc&255)<<2)>>2]|0;wd=c[n>>2]|0;m=11;break}case 2:{Nd=a[r>>0]|0;Rd=a[u>>0]|0;Vd=a[x>>0]|0;gb=C;rb=m;Fd=Nd;Ld=c[s>>2]|0;Md=a[t>>0]|0;Nd=c[18232+((Nd&255)<<2)>>2]|0;Od=Rd;Pd=c[v>>2]|0;Qd=a[w>>0]|0;Rd=c[18232+((Rd&255)<<2)>>2]|0;Sd=Vd;Td=c[y>>2]|0;Ud=a[z>>0]|0;Vd=c[18232+((Vd&255)<<2)>>2]|0;Wd=c[n>>2]|0;m=12;break}case 1:{_d=a[r>>0]|0;ce=a[u>>0]|0;ge=a[x>>0]|0;sb=C;Db=m;Xd=_d;Yd=c[s>>2]|0;Zd=a[t>>0]|0;_d=c[18232+((_d&255)<<2)>>2]|0;$d=ce;ae=c[v>>2]|0;be=a[w>>0]|0;ce=c[18232+((ce&255)<<2)>>2]|0;de=ge;ee=c[y>>2]|0;fe=a[z>>0]|0;ge=c[18232+((ge&255)<<2)>>2]|0;he=c[n>>2]|0;m=13;break}default:{m=14;break a}}while(1)if((m|0)==10){fb=e[Va>>1]|0;Pb=jf&255;Zb=Mf&255;Wa=og&255;b[Va>>1]=((((O(d[Uf+((Gf&fb)>>>Zb)>>0]|0,Eg)|0)>>>0)/255|0)+p|0)>>>(yf&255)<<Zb|((((O(d[of+((fb&hf)>>>Pb)>>0]|0,Eg)|0)>>>0)/255|0)+q|0)>>>(Ze&255)<<Pb|Ag|((((O(d[qg+((jg&fb)>>>Wa)>>0]|0,Eg)|0)>>>0)/255|0)+i|0)>>>(bg&255)<<Wa;Wa=Pa;fb=Va+2|0;Pb=Ze;Zb=hf;$b=jf;ic=of;jc=yf;kc=Gf;rc=Mf;vc=Uf;Fc=bg;Ic=jg;Pc=og;Tc=qg;wd=Ag;m=11;continue}else if((m|0)==11){rb=e[fb>>1]|0;Fd=$b&255;Ld=rc&255;gb=Pc&255;b[fb>>1]=((((O(d[vc+((kc&rb)>>>Ld)>>0]|0,Eg)|0)>>>0)/255|0)+p|0)>>>(jc&255)<<Ld|((((O(d[ic+((rb&Zb)>>>Fd)>>0]|0,Eg)|0)>>>0)/255|0)+q|0)>>>(Pb&255)<<Fd|wd|((((O(d[Tc+((Ic&rb)>>>gb)>>0]|0,Eg)|0)>>>0)/255|0)+i|0)>>>(Fc&255)<<gb;gb=Wa;rb=fb+2|0;Fd=Pb;Ld=Zb;Md=$b;Nd=ic;Od=jc;Pd=kc;Qd=rc;Rd=vc;Sd=Fc;Td=Ic;Ud=Pc;Vd=Tc;Wd=wd;m=12;continue}else if((m|0)==12){Db=e[rb>>1]|0;Xd=Md&255;Yd=Qd&255;sb=Ud&255;b[rb>>1]=((((O(d[Rd+((Pd&Db)>>>Yd)>>0]|0,Eg)|0)>>>0)/255|0)+p|0)>>>(Od&255)<<Yd|((((O(d[Nd+((Db&Ld)>>>Xd)>>0]|0,Eg)|0)>>>0)/255|0)+q|0)>>>(Fd&255)<<Xd|Wd|((((O(d[Vd+((Td&Db)>>>sb)>>0]|0,Eg)|0)>>>0)/255|0)+i|0)>>>(Sd&255)<<sb;sb=gb;Db=rb+2|0;Xd=Fd;Yd=Ld;Zd=Md;_d=Nd;$d=Od;ae=Pd;be=Qd;ce=Rd;de=Sd;ee=Td;fe=Ud;ge=Vd;he=Wd;m=13;continue}else if((m|0)==13){g=e[Db>>1]|0;Fg=Zd&255;k=be&255;m=fe&255;b[Db>>1]=((((O(d[ce+((ae&g)>>>k)>>0]|0,Eg)|0)>>>0)/255|0)+p|0)>>>($d&255)<<k|((((O(d[_d+((g&Yd)>>>Fg)>>0]|0,Eg)|0)>>>0)/255|0)+q|0)>>>(Xd&255)<<Fg|he|((((O(d[ge+((ee&g)>>>m)>>0]|0,Eg)|0)>>>0)/255|0)+i|0)>>>(de&255)<<m;m=Db+2|0;if((sb|0)>1){Pa=sb+-1|0;Va=m;Ze=Xd;hf=Yd;jf=Zd;of=_d;yf=$d;Gf=ae;Mf=be;Uf=ce;bg=de;jg=ee;og=fe;qg=ge;Ag=he;m=10;continue}else break}if(!h){Gg=0;m=109;break}else m=m+(B<<1)|0}if((m|0)!=14)if((m|0)==109){l=Hg;return Gg|0}break}case 2:{h=c[g+8>>2]|0;A=c[g+12>>2]|0;m=(c[f+16>>2]|0)/(o|0)|0;C=m-h|0;if(!A){Gg=0;l=Hg;return Gg|0}m=(c[f+20>>2]|0)+((O(c[g+4>>2]|0,m)|0)<<1)|0;B=(h+3|0)/4|0;z=h&255;q=Fg+28|0;r=Fg+12|0;s=Fg+32|0;t=Fg+29|0;u=Fg+16|0;v=Fg+33|0;w=Fg+30|0;x=Fg+20|0;y=Fg+34|0;p=i&255;i=j&255;o=k&255;n=Fg+24|0;m=m+(c[g>>2]<<1)|0;h=A;b:while(1){h=h+-1|0;switch(z&3){case 0:{le=a[q>>0]|0;pe=a[t>>0]|0;te=a[w>>0]|0;Qa=B;Xa=m;ie=le;je=c[r>>2]|0;ke=a[s>>0]|0;le=c[18232+((le&255)<<2)>>2]|0;me=pe;ne=c[u>>2]|0;oe=a[v>>0]|0;pe=c[18232+((pe&255)<<2)>>2]|0;qe=te;re=c[x>>2]|0;se=a[y>>0]|0;te=c[18232+((te&255)<<2)>>2]|0;ue=c[n>>2]|0;m=23;break}case 3:{ye=a[q>>0]|0;Ce=a[t>>0]|0;Ge=a[w>>0]|0;Ya=B;hb=m;ve=ye;we=c[r>>2]|0;xe=a[s>>0]|0;ye=c[18232+((ye&255)<<2)>>2]|0;ze=Ce;Ae=c[u>>2]|0;Be=a[v>>0]|0;Ce=c[18232+((Ce&255)<<2)>>2]|0;De=Ge;Ee=c[x>>2]|0;Fe=a[y>>0]|0;Ge=c[18232+((Ge&255)<<2)>>2]|0;He=c[n>>2]|0;m=24;break}case 2:{Le=a[q>>0]|0;Pe=a[t>>0]|0;Te=a[w>>0]|0;ib=B;tb=m;Ie=Le;Je=c[r>>2]|0;Ke=a[s>>0]|0;Le=c[18232+((Le&255)<<2)>>2]|0;Me=Pe;Ne=c[u>>2]|0;Oe=a[v>>0]|0;Pe=c[18232+((Pe&255)<<2)>>2]|0;Qe=Te;Re=c[x>>2]|0;Se=a[y>>0]|0;Te=c[18232+((Te&255)<<2)>>2]|0;Ue=c[n>>2]|0;m=25;break}case 1:{Ye=a[q>>0]|0;bf=a[t>>0]|0;ff=a[w>>0]|0;ub=B;Eb=m;Ve=Ye;We=c[r>>2]|0;Xe=a[s>>0]|0;Ye=c[18232+((Ye&255)<<2)>>2]|0;_e=bf;$e=c[u>>2]|0;af=a[v>>0]|0;bf=c[18232+((bf&255)<<2)>>2]|0;cf=ff;df=c[x>>2]|0;ef=a[y>>0]|0;ff=c[18232+((ff&255)<<2)>>2]|0;gf=c[n>>2]|0;m=26;break}default:{m=27;break b}}while(1)if((m|0)==23){hb=e[Xa>>1]|0;ve=ke&255;xe=oe&255;Ya=se&255;we=(d[le+((hb&je)>>>ve)>>0]|0)+p|0;ye=(d[pe+((ne&hb)>>>xe)>>0]|0)+i|0;hb=(d[te+((re&hb)>>>Ya)>>0]|0)+o|0;b[Xa>>1]=(ye>>>0<255?ye:255)>>>(me&255)<<xe|(we>>>0<255?we:255)>>>(ie&255)<<ve|ue|(hb>>>0<255?hb:255)>>>(qe&255)<<Ya;Ya=Qa;hb=Xa+2|0;ve=ie;we=je;xe=ke;ye=le;ze=me;Ae=ne;Be=oe;Ce=pe;De=qe;Ee=re;Fe=se;Ge=te;He=ue;m=24;continue}else if((m|0)==24){tb=e[hb>>1]|0;Ie=xe&255;Ke=Be&255;ib=Fe&255;Je=(d[ye+((tb&we)>>>Ie)>>0]|0)+p|0;Le=(d[Ce+((Ae&tb)>>>Ke)>>0]|0)+i|0;tb=(d[Ge+((Ee&tb)>>>ib)>>0]|0)+o|0;b[hb>>1]=(Le>>>0<255?Le:255)>>>(ze&255)<<Ke|(Je>>>0<255?Je:255)>>>(ve&255)<<Ie|He|(tb>>>0<255?tb:255)>>>(De&255)<<ib;ib=Ya;tb=hb+2|0;Ie=ve;Je=we;Ke=xe;Le=ye;Me=ze;Ne=Ae;Oe=Be;Pe=Ce;Qe=De;Re=Ee;Se=Fe;Te=Ge;Ue=He;m=25;continue}else if((m|0)==25){Eb=e[tb>>1]|0;Ve=Ke&255;Xe=Oe&255;ub=Se&255;We=(d[Le+((Eb&Je)>>>Ve)>>0]|0)+p|0;Ye=(d[Pe+((Ne&Eb)>>>Xe)>>0]|0)+i|0;Eb=(d[Te+((Re&Eb)>>>ub)>>0]|0)+o|0;b[tb>>1]=(Ye>>>0<255?Ye:255)>>>(Me&255)<<Xe|(We>>>0<255?We:255)>>>(Ie&255)<<Ve|Ue|(Eb>>>0<255?Eb:255)>>>(Qe&255)<<ub;ub=ib;Eb=tb+2|0;Ve=Ie;We=Je;Xe=Ke;Ye=Le;_e=Me;$e=Ne;af=Oe;bf=Pe;cf=Qe;df=Re;ef=Se;ff=Te;gf=Ue;m=26;continue}else if((m|0)==26){g=e[Eb>>1]|0;Fg=Xe&255;j=af&255;m=ef&255;k=(d[Ye+((g&We)>>>Fg)>>0]|0)+p|0;f=(d[bf+(($e&g)>>>j)>>0]|0)+i|0;g=(d[ff+((df&g)>>>m)>>0]|0)+o|0;b[Eb>>1]=(f>>>0<255?f:255)>>>(_e&255)<<j|(k>>>0<255?k:255)>>>(Ve&255)<<Fg|gf|(g>>>0<255?g:255)>>>(cf&255)<<m;m=Eb+2|0;if((ub|0)>1){Qa=ub+-1|0;Xa=m;ie=Ve;je=We;ke=Xe;le=Ye;me=_e;ne=$e;oe=af;pe=bf;qe=cf;re=df;se=ef;te=ff;ue=gf;m=23;continue}else break}if(!h){Gg=0;m=109;break}else m=m+(C<<1)|0}if((m|0)!=27)if((m|0)==109){l=Hg;return Gg|0}break}case 4:{h=c[g+8>>2]|0;A=c[g+12>>2]|0;m=(c[f+16>>2]|0)/(o|0)|0;C=m-h|0;if(!A){Gg=0;l=Hg;return Gg|0}m=(c[f+20>>2]|0)+((O(c[g+4>>2]|0,m)|0)<<1)|0;B=(h+3|0)/4|0;z=h&255;q=Fg+28|0;r=Fg+12|0;s=Fg+32|0;t=Fg+29|0;u=Fg+16|0;v=Fg+33|0;w=Fg+30|0;x=Fg+20|0;y=Fg+34|0;p=i&255;i=j&255;o=k&255;n=Fg+24|0;m=m+(c[g>>2]<<1)|0;h=A;c:while(1){h=h+-1|0;switch(z&3){case 0:{nf=a[q>>0]|0;sf=a[t>>0]|0;wf=a[w>>0]|0;Ra=B;Za=m;kf=nf;lf=c[r>>2]|0;mf=a[s>>0]|0;nf=c[18232+((nf&255)<<2)>>2]|0;pf=sf;qf=c[u>>2]|0;rf=a[v>>0]|0;sf=c[18232+((sf&255)<<2)>>2]|0;tf=wf;uf=c[x>>2]|0;vf=a[y>>0]|0;wf=c[18232+((wf&255)<<2)>>2]|0;xf=c[n>>2]|0;m=36;break}case 3:{Cf=a[q>>0]|0;Hf=a[t>>0]|0;Lf=a[w>>0]|0;_a=B;jb=m;zf=Cf;Af=c[r>>2]|0;Bf=a[s>>0]|0;Cf=c[18232+((Cf&255)<<2)>>2]|0;Df=Hf;Ef=c[u>>2]|0;Ff=a[v>>0]|0;Hf=c[18232+((Hf&255)<<2)>>2]|0;If=Lf;Jf=c[x>>2]|0;Kf=a[y>>0]|0;Lf=c[18232+((Lf&255)<<2)>>2]|0;Nf=c[n>>2]|0;m=37;break}case 2:{Rf=a[q>>0]|0;Wf=a[t>>0]|0;_f=a[w>>0]|0;kb=B;vb=m;Of=Rf;Pf=c[r>>2]|0;Qf=a[s>>0]|0;Rf=c[18232+((Rf&255)<<2)>>2]|0;Sf=Wf;Tf=c[u>>2]|0;Vf=a[v>>0]|0;Wf=c[18232+((Wf&255)<<2)>>2]|0;Xf=_f;Yf=c[x>>2]|0;Zf=a[y>>0]|0;_f=c[18232+((_f&255)<<2)>>2]|0;$f=c[n>>2]|0;m=38;break}case 1:{eg=a[q>>0]|0;ig=a[t>>0]|0;ng=a[w>>0]|0;wb=B;Fb=m;ag=eg;cg=c[r>>2]|0;dg=a[s>>0]|0;eg=c[18232+((eg&255)<<2)>>2]|0;fg=ig;gg=c[u>>2]|0;hg=a[v>>0]|0;ig=c[18232+((ig&255)<<2)>>2]|0;kg=ng;lg=c[x>>2]|0;mg=a[y>>0]|0;ng=c[18232+((ng&255)<<2)>>2]|0;pg=c[n>>2]|0;m=39;break}default:{m=40;break c}}while(1)if((m|0)==36){jb=e[Za>>1]|0;zf=mf&255;Af=rf&255;_a=vf&255;b[Za>>1]=(((O(d[sf+((qf&jb)>>>Af)>>0]|0,i)|0)>>>0)/255|0)>>>(pf&255)<<Af|(((O(d[nf+((jb&lf)>>>zf)>>0]|0,p)|0)>>>0)/255|0)>>>(kf&255)<<zf|xf|(((O(d[wf+((uf&jb)>>>_a)>>0]|0,o)|0)>>>0)/255|0)>>>(tf&255)<<_a;_a=Ra;jb=Za+2|0;zf=kf;Af=lf;Bf=mf;Cf=nf;Df=pf;Ef=qf;Ff=rf;Hf=sf;If=tf;Jf=uf;Kf=vf;Lf=wf;Nf=xf;m=37;continue}else if((m|0)==37){vb=e[jb>>1]|0;Of=Bf&255;Pf=Ff&255;kb=Kf&255;b[jb>>1]=(((O(d[Hf+((Ef&vb)>>>Pf)>>0]|0,i)|0)>>>0)/255|0)>>>(Df&255)<<Pf|(((O(d[Cf+((vb&Af)>>>Of)>>0]|0,p)|0)>>>0)/255|0)>>>(zf&255)<<Of|Nf|(((O(d[Lf+((Jf&vb)>>>kb)>>0]|0,o)|0)>>>0)/255|0)>>>(If&255)<<kb;kb=_a;vb=jb+2|0;Of=zf;Pf=Af;Qf=Bf;Rf=Cf;Sf=Df;Tf=Ef;Vf=Ff;Wf=Hf;Xf=If;Yf=Jf;Zf=Kf;_f=Lf;$f=Nf;m=38;continue}else if((m|0)==38){Fb=e[vb>>1]|0;ag=Qf&255;cg=Vf&255;wb=Zf&255;b[vb>>1]=(((O(d[Wf+((Tf&Fb)>>>cg)>>0]|0,i)|0)>>>0)/255|0)>>>(Sf&255)<<cg|(((O(d[Rf+((Fb&Pf)>>>ag)>>0]|0,p)|0)>>>0)/255|0)>>>(Of&255)<<ag|$f|(((O(d[_f+((Yf&Fb)>>>wb)>>0]|0,o)|0)>>>0)/255|0)>>>(Xf&255)<<wb;wb=kb;Fb=vb+2|0;ag=Of;cg=Pf;dg=Qf;eg=Rf;fg=Sf;gg=Tf;hg=Vf;ig=Wf;kg=Xf;lg=Yf;mg=Zf;ng=_f;pg=$f;m=39;continue}else if((m|0)==39){g=e[Fb>>1]|0;Fg=dg&255;k=hg&255;m=mg&255;b[Fb>>1]=(((O(d[ig+((gg&g)>>>k)>>0]|0,i)|0)>>>0)/255|0)>>>(fg&255)<<k|(((O(d[eg+((g&cg)>>>Fg)>>0]|0,p)|0)>>>0)/255|0)>>>(ag&255)<<Fg|pg|(((O(d[ng+((lg&g)>>>m)>>0]|0,o)|0)>>>0)/255|0)>>>(kg&255)<<m;m=Fb+2|0;if((wb|0)>1){Ra=wb+-1|0;Za=m;kf=ag;lf=cg;mf=dg;nf=eg;pf=fg;qf=gg;rf=hg;sf=ig;tf=kg;uf=lg;vf=mg;wf=ng;xf=pg;m=36;continue}else break}if(!h){Gg=0;m=109;break}else m=m+(C<<1)|0}if((m|0)!=40)if((m|0)==109){l=Hg;return Gg|0}break}default:{h=c[g+8>>2]|0;x=c[g+12>>2]|0;m=(c[f+16>>2]|0)/(o|0)|0;z=m-h|0;if(!x){Gg=0;l=Hg;return Gg|0}m=(c[f+20>>2]|0)+((O(c[g+4>>2]|0,m)|0)<<1)|0;y=(h+3|0)/4|0;w=h&255;v=i&255;u=j&255;o=k&255;i=Fg+28|0;p=Fg+32|0;q=Fg+29|0;r=Fg+33|0;s=Fg+30|0;t=Fg+34|0;n=Fg+24|0;m=m+(c[g>>2]<<1)|0;h=x;d:while(1){h=h+-1|0;switch(w&3){case 0:{A=y;C=m;na=a[i>>0]|0;oa=a[p>>0]|0;pa=a[q>>0]|0;qa=a[r>>0]|0;ra=a[s>>0]|0;sa=a[t>>0]|0;ta=c[n>>2]|0;m=49;break}case 3:{D=y;G=m;ua=a[i>>0]|0;va=a[p>>0]|0;wa=a[q>>0]|0;xa=a[r>>0]|0;ya=a[s>>0]|0;za=a[t>>0]|0;Aa=c[n>>2]|0;m=50;break}case 2:{H=y;K=m;Ba=a[i>>0]|0;Ca=a[p>>0]|0;Da=a[q>>0]|0;Ea=a[r>>0]|0;Fa=a[s>>0]|0;Ga=a[t>>0]|0;Ha=c[n>>2]|0;m=51;break}case 1:{L=y;P=m;Ia=a[i>>0]|0;Ja=a[p>>0]|0;Ka=a[q>>0]|0;La=a[r>>0]|0;Ma=a[s>>0]|0;Na=a[t>>0]|0;Oa=c[n>>2]|0;m=52;break}default:{m=53;break d}}while(1)if((m|0)==49){b[C>>1]=u>>>(pa&255)<<(qa&255)|v>>>(na&255)<<(oa&255)|ta|o>>>(ra&255)<<(sa&255);D=A;G=C+2|0;ua=na;va=oa;wa=pa;xa=qa;ya=ra;za=sa;Aa=ta;m=50;continue}else if((m|0)==50){b[G>>1]=u>>>(wa&255)<<(xa&255)|v>>>(ua&255)<<(va&255)|Aa|o>>>(ya&255)<<(za&255);H=D;K=G+2|0;Ba=ua;Ca=va;Da=wa;Ea=xa;Fa=ya;Ga=za;Ha=Aa;m=51;continue}else if((m|0)==51){b[K>>1]=u>>>(Da&255)<<(Ea&255)|v>>>(Ba&255)<<(Ca&255)|Ha|o>>>(Fa&255)<<(Ga&255);L=H;P=K+2|0;Ia=Ba;Ja=Ca;Ka=Da;La=Ea;Ma=Fa;Na=Ga;Oa=Ha;m=52;continue}else if((m|0)==52){b[P>>1]=u>>>(Ka&255)<<(La&255)|v>>>(Ia&255)<<(Ja&255)|Oa|o>>>(Ma&255)<<(Na&255);m=P+2|0;if((L|0)>1){A=L+-1|0;C=m;na=Ia;oa=Ja;pa=Ka;qa=La;ra=Ma;sa=Na;ta=Oa;m=49;continue}else break}if(!h){Gg=0;m=109;break}else m=m+(z<<1)|0}if((m|0)!=53)if((m|0)==109){l=Hg;return Gg|0}}}break}case 4:{switch(h|0){case 1:{m=c[g+8>>2]|0;h=c[g+12>>2]|0;o=(c[f+16>>2]|0)/(o|0)|0;B=o-m|0;if(!h){Gg=0;l=Hg;return Gg|0}C=(m+3|0)/4|0;A=m&255;r=Fg+28|0;s=Fg+12|0;t=Fg+32|0;u=Fg+29|0;v=Fg+16|0;w=Fg+33|0;x=Fg+30|0;y=Fg+20|0;z=Fg+34|0;q=i&255;p=j&255;i=k&255;n=Fg+24|0;m=(c[f+20>>2]|0)+((O(c[g+4>>2]|0,o)|0)<<2)+(c[g>>2]<<2)|0;e:while(1){h=h+-1|0;switch(A&3){case 0:{tg=a[r>>0]|0;wg=a[u>>0]|0;zg=a[x>>0]|0;Sa=C;$a=m;rg=tg;sg=a[t>>0]|0;tg=c[18232+((tg&255)<<2)>>2]|0;ug=wg;vg=a[w>>0]|0;wg=c[18232+((wg&255)<<2)>>2]|0;xg=zg;yg=a[z>>0]|0;zg=c[18232+((zg&255)<<2)>>2]|0;m=63;break}case 3:{Dg=a[r>>0]|0;Lb=a[u>>0]|0;Ob=a[x>>0]|0;ab=C;lb=m;Jb=Lb;Kb=a[w>>0]|0;Lb=c[18232+((Lb&255)<<2)>>2]|0;Mb=Ob;Nb=a[z>>0]|0;Ob=c[18232+((Ob&255)<<2)>>2]|0;Bg=Dg;Cg=a[t>>0]|0;Dg=c[18232+((Dg&255)<<2)>>2]|0;m=64;break}case 2:{Sb=a[r>>0]|0;Vb=a[u>>0]|0;Yb=a[x>>0]|0;mb=C;xb=m;Qb=Sb;Rb=a[t>>0]|0;Sb=c[18232+((Sb&255)<<2)>>2]|0;Tb=Vb;Ub=a[w>>0]|0;Vb=c[18232+((Vb&255)<<2)>>2]|0;Wb=Yb;Xb=a[z>>0]|0;Yb=c[18232+((Yb&255)<<2)>>2]|0;m=65;break}case 1:{bc=a[r>>0]|0;ec=a[u>>0]|0;hc=a[x>>0]|0;yb=C;Gb=m;_b=bc;ac=a[t>>0]|0;bc=c[18232+((bc&255)<<2)>>2]|0;cc=ec;dc=a[w>>0]|0;ec=c[18232+((ec&255)<<2)>>2]|0;fc=hc;gc=a[z>>0]|0;hc=c[18232+((hc&255)<<2)>>2]|0;m=66;break}default:{m=67;break e}}while(1)if((m|0)==63){Jb=c[$a>>2]|0;lb=sg&255;Kb=vg&255;ab=yg&255;lb=((((O(d[wg+((c[v>>2]&Jb)>>>Kb)>>0]|0,Eg)|0)>>>0)/255|0)+p|0)>>>(ug&255)<<Kb|((((O(d[tg+((c[s>>2]&Jb)>>>lb)>>0]|0,Eg)|0)>>>0)/255|0)+q|0)>>>(rg&255)<<lb;ab=((((O(d[zg+((c[y>>2]&Jb)>>>ab)>>0]|0,Eg)|0)>>>0)/255|0)+i|0)>>>(xg&255)<<ab;c[$a>>2]=lb|c[n>>2]|ab;ab=Sa;lb=$a+4|0;Jb=ug;Kb=vg;Lb=wg;Mb=xg;Nb=yg;Ob=zg;Bg=rg;Cg=sg;Dg=tg;m=64;continue}else if((m|0)==64){Qb=c[lb>>2]|0;xb=Cg&255;Rb=Kb&255;mb=Nb&255;xb=((((O(d[Lb+((c[v>>2]&Qb)>>>Rb)>>0]|0,Eg)|0)>>>0)/255|0)+p|0)>>>(Jb&255)<<Rb|((((O(d[Dg+((c[s>>2]&Qb)>>>xb)>>0]|0,Eg)|0)>>>0)/255|0)+q|0)>>>(Bg&255)<<xb;mb=((((O(d[Ob+((c[y>>2]&Qb)>>>mb)>>0]|0,Eg)|0)>>>0)/255|0)+i|0)>>>(Mb&255)<<mb;c[lb>>2]=xb|c[n>>2]|mb;mb=ab;xb=lb+4|0;Qb=Bg;Rb=Cg;Sb=Dg;Tb=Jb;Ub=Kb;Vb=Lb;Wb=Mb;Xb=Nb;Yb=Ob;m=65;continue}else if((m|0)==65){_b=c[xb>>2]|0;Gb=Rb&255;ac=Ub&255;yb=Xb&255;Gb=((((O(d[Vb+((c[v>>2]&_b)>>>ac)>>0]|0,Eg)|0)>>>0)/255|0)+p|0)>>>(Tb&255)<<ac|((((O(d[Sb+((c[s>>2]&_b)>>>Gb)>>0]|0,Eg)|0)>>>0)/255|0)+q|0)>>>(Qb&255)<<Gb;yb=((((O(d[Yb+((c[y>>2]&_b)>>>yb)>>0]|0,Eg)|0)>>>0)/255|0)+i|0)>>>(Wb&255)<<yb;c[xb>>2]=Gb|c[n>>2]|yb;yb=mb;Gb=xb+4|0;_b=Qb;ac=Rb;bc=Sb;cc=Tb;dc=Ub;ec=Vb;fc=Wb;gc=Xb;hc=Yb;m=66;continue}else if((m|0)==66){Fg=c[Gb>>2]|0;g=ac&255;k=dc&255;m=gc&255;g=((((O(d[ec+((c[v>>2]&Fg)>>>k)>>0]|0,Eg)|0)>>>0)/255|0)+p|0)>>>(cc&255)<<k|((((O(d[bc+((c[s>>2]&Fg)>>>g)>>0]|0,Eg)|0)>>>0)/255|0)+q|0)>>>(_b&255)<<g;m=((((O(d[hc+((c[y>>2]&Fg)>>>m)>>0]|0,Eg)|0)>>>0)/255|0)+i|0)>>>(fc&255)<<m;c[Gb>>2]=g|c[n>>2]|m;m=Gb+4|0;if((yb|0)>1){Sa=yb+-1|0;$a=m;rg=_b;sg=ac;tg=bc;ug=cc;vg=dc;wg=ec;xg=fc;yg=gc;zg=hc;m=63;continue}else break}if(!h){Gg=0;m=109;break}else m=m+(B<<2)|0}if((m|0)!=67)if((m|0)==109){l=Hg;return Gg|0}break}case 2:{h=c[g+8>>2]|0;A=c[g+12>>2]|0;m=(c[f+16>>2]|0)/(o|0)|0;C=m-h|0;if(!A){Gg=0;l=Hg;return Gg|0}m=(c[f+20>>2]|0)+((O(c[g+4>>2]|0,m)|0)<<2)|0;B=(h+3|0)/4|0;z=h&255;q=Fg+28|0;r=Fg+12|0;s=Fg+32|0;t=Fg+29|0;u=Fg+16|0;v=Fg+33|0;w=Fg+30|0;x=Fg+20|0;y=Fg+34|0;p=i&255;i=j&255;o=k&255;n=Fg+24|0;m=m+(c[g>>2]<<2)|0;h=A;f:while(1){h=h+-1|0;switch(z&3){case 0:{nc=a[q>>0]|0;qc=a[t>>0]|0;uc=a[w>>0]|0;Ta=B;bb=m;lc=nc;mc=a[s>>0]|0;nc=c[18232+((nc&255)<<2)>>2]|0;oc=qc;pc=a[v>>0]|0;qc=c[18232+((qc&255)<<2)>>2]|0;sc=uc;tc=a[y>>0]|0;uc=c[18232+((uc&255)<<2)>>2]|0;m=76;break}case 3:{yc=a[q>>0]|0;Bc=a[t>>0]|0;Ec=a[w>>0]|0;cb=B;nb=m;wc=yc;xc=a[s>>0]|0;yc=c[18232+((yc&255)<<2)>>2]|0;zc=Bc;Ac=a[v>>0]|0;Bc=c[18232+((Bc&255)<<2)>>2]|0;Cc=Ec;Dc=a[y>>0]|0;Ec=c[18232+((Ec&255)<<2)>>2]|0;m=77;break}case 2:{Jc=a[q>>0]|0;Mc=a[t>>0]|0;Qc=a[w>>0]|0;ob=B;zb=m;Gc=Jc;Hc=a[s>>0]|0;Jc=c[18232+((Jc&255)<<2)>>2]|0;Kc=Mc;Lc=a[v>>0]|0;Mc=c[18232+((Mc&255)<<2)>>2]|0;Nc=Qc;Oc=a[y>>0]|0;Qc=c[18232+((Qc&255)<<2)>>2]|0;m=78;break}case 1:{Uc=a[q>>0]|0;Xc=a[t>>0]|0;_c=a[w>>0]|0;Ab=B;Hb=m;Rc=Uc;Sc=a[s>>0]|0;Uc=c[18232+((Uc&255)<<2)>>2]|0;Vc=Xc;Wc=a[v>>0]|0;Xc=c[18232+((Xc&255)<<2)>>2]|0;Yc=_c;Zc=a[y>>0]|0;_c=c[18232+((_c&255)<<2)>>2]|0;m=79;break}default:{m=80;break f}}while(1)if((m|0)==76){nb=c[bb>>2]|0;wc=mc&255;yc=pc&255;cb=tc&255;xc=(d[nc+((c[r>>2]&nb)>>>wc)>>0]|0)+p|0;zc=(d[qc+((c[u>>2]&nb)>>>yc)>>0]|0)+i|0;nb=(d[uc+((c[x>>2]&nb)>>>cb)>>0]|0)+o|0;c[bb>>2]=(zc>>>0<255?zc:255)>>>(oc&255)<<yc|(xc>>>0<255?xc:255)>>>(lc&255)<<wc|c[n>>2]|(nb>>>0<255?nb:255)>>>(sc&255)<<cb;cb=Ta;nb=bb+4|0;wc=lc;xc=mc;yc=nc;zc=oc;Ac=pc;Bc=qc;Cc=sc;Dc=tc;Ec=uc;m=77;continue}else if((m|0)==77){zb=c[nb>>2]|0;Gc=xc&255;Jc=Ac&255;ob=Dc&255;Hc=(d[yc+((c[r>>2]&zb)>>>Gc)>>0]|0)+p|0;Kc=(d[Bc+((c[u>>2]&zb)>>>Jc)>>0]|0)+i|0;zb=(d[Ec+((c[x>>2]&zb)>>>ob)>>0]|0)+o|0;c[nb>>2]=(Kc>>>0<255?Kc:255)>>>(zc&255)<<Jc|(Hc>>>0<255?Hc:255)>>>(wc&255)<<Gc|c[n>>2]|(zb>>>0<255?zb:255)>>>(Cc&255)<<ob;ob=cb;zb=nb+4|0;Gc=wc;Hc=xc;Jc=yc;Kc=zc;Lc=Ac;Mc=Bc;Nc=Cc;Oc=Dc;Qc=Ec;m=78;continue}else if((m|0)==78){Hb=c[zb>>2]|0;Rc=Hc&255;Uc=Lc&255;Ab=Oc&255;Sc=(d[Jc+((c[r>>2]&Hb)>>>Rc)>>0]|0)+p|0;Vc=(d[Mc+((c[u>>2]&Hb)>>>Uc)>>0]|0)+i|0;Hb=(d[Qc+((c[x>>2]&Hb)>>>Ab)>>0]|0)+o|0;c[zb>>2]=(Vc>>>0<255?Vc:255)>>>(Kc&255)<<Uc|(Sc>>>0<255?Sc:255)>>>(Gc&255)<<Rc|c[n>>2]|(Hb>>>0<255?Hb:255)>>>(Nc&255)<<Ab;Ab=ob;Hb=zb+4|0;Rc=Gc;Sc=Hc;Uc=Jc;Vc=Kc;Wc=Lc;Xc=Mc;Yc=Nc;Zc=Oc;_c=Qc;m=79;continue}else if((m|0)==79){g=c[Hb>>2]|0;Fg=Sc&255;j=Wc&255;m=Zc&255;k=(d[Uc+((c[r>>2]&g)>>>Fg)>>0]|0)+p|0;f=(d[Xc+((c[u>>2]&g)>>>j)>>0]|0)+i|0;g=(d[_c+((c[x>>2]&g)>>>m)>>0]|0)+o|0;c[Hb>>2]=(f>>>0<255?f:255)>>>(Vc&255)<<j|(k>>>0<255?k:255)>>>(Rc&255)<<Fg|c[n>>2]|(g>>>0<255?g:255)>>>(Yc&255)<<m;m=Hb+4|0;if((Ab|0)>1){Ta=Ab+-1|0;bb=m;lc=Rc;mc=Sc;nc=Uc;oc=Vc;pc=Wc;qc=Xc;sc=Yc;tc=Zc;uc=_c;m=76;continue}else break}if(!h){Gg=0;m=109;break}else m=m+(C<<2)|0}if((m|0)!=80)if((m|0)==109){l=Hg;return Gg|0}break}case 4:{h=c[g+8>>2]|0;A=c[g+12>>2]|0;m=(c[f+16>>2]|0)/(o|0)|0;C=m-h|0;if(!A){Gg=0;l=Hg;return Gg|0}m=(c[f+20>>2]|0)+((O(c[g+4>>2]|0,m)|0)<<2)|0;B=(h+3|0)/4|0;z=h&255;q=Fg+28|0;r=Fg+12|0;s=Fg+32|0;t=Fg+29|0;u=Fg+16|0;v=Fg+33|0;w=Fg+30|0;x=Fg+20|0;y=Fg+34|0;p=i&255;i=j&255;o=k&255;n=Fg+24|0;m=m+(c[g>>2]<<2)|0;h=A;g:while(1){h=h+-1|0;switch(z&3){case 0:{bd=a[q>>0]|0;ed=a[t>>0]|0;hd=a[w>>0]|0;Ua=B;db=m;$c=bd;ad=a[s>>0]|0;bd=c[18232+((bd&255)<<2)>>2]|0;cd=ed;dd=a[v>>0]|0;ed=c[18232+((ed&255)<<2)>>2]|0;fd=hd;gd=a[y>>0]|0;hd=c[18232+((hd&255)<<2)>>2]|0;m=89;break}case 3:{kd=a[q>>0]|0;nd=a[t>>0]|0;qd=a[w>>0]|0;eb=B;pb=m;id=kd;jd=a[s>>0]|0;kd=c[18232+((kd&255)<<2)>>2]|0;ld=nd;md=a[v>>0]|0;nd=c[18232+((nd&255)<<2)>>2]|0;od=qd;pd=a[y>>0]|0;qd=c[18232+((qd&255)<<2)>>2]|0;m=90;break}case 2:{td=a[q>>0]|0;xd=a[t>>0]|0;Ad=a[w>>0]|0;qb=B;Bb=m;rd=td;sd=a[s>>0]|0;td=c[18232+((td&255)<<2)>>2]|0;ud=xd;vd=a[v>>0]|0;xd=c[18232+((xd&255)<<2)>>2]|0;yd=Ad;zd=a[y>>0]|0;Ad=c[18232+((Ad&255)<<2)>>2]|0;m=91;break}case 1:{Dd=a[q>>0]|0;Hd=a[t>>0]|0;Kd=a[w>>0]|0;Cb=B;Ib=m;Bd=Dd;Cd=a[s>>0]|0;Dd=c[18232+((Dd&255)<<2)>>2]|0;Ed=Hd;Gd=a[v>>0]|0;Hd=c[18232+((Hd&255)<<2)>>2]|0;Id=Kd;Jd=a[y>>0]|0;Kd=c[18232+((Kd&255)<<2)>>2]|0;m=92;break}default:{m=93;break g}}while(1)if((m|0)==89){id=c[db>>2]|0;pb=ad&255;jd=dd&255;eb=gd&255;pb=(((O(d[ed+((c[u>>2]&id)>>>jd)>>0]|0,i)|0)>>>0)/255|0)>>>(cd&255)<<jd|(((O(d[bd+((c[r>>2]&id)>>>pb)>>0]|0,p)|0)>>>0)/255|0)>>>($c&255)<<pb;eb=(((O(d[hd+((c[x>>2]&id)>>>eb)>>0]|0,o)|0)>>>0)/255|0)>>>(fd&255)<<eb;c[db>>2]=pb|c[n>>2]|eb;eb=Ua;pb=db+4|0;id=$c;jd=ad;kd=bd;ld=cd;md=dd;nd=ed;od=fd;pd=gd;qd=hd;m=90;continue}else if((m|0)==90){rd=c[pb>>2]|0;Bb=jd&255;sd=md&255;qb=pd&255;Bb=(((O(d[nd+((c[u>>2]&rd)>>>sd)>>0]|0,i)|0)>>>0)/255|0)>>>(ld&255)<<sd|(((O(d[kd+((c[r>>2]&rd)>>>Bb)>>0]|0,p)|0)>>>0)/255|0)>>>(id&255)<<Bb;qb=(((O(d[qd+((c[x>>2]&rd)>>>qb)>>0]|0,o)|0)>>>0)/255|0)>>>(od&255)<<qb;c[pb>>2]=Bb|c[n>>2]|qb;qb=eb;Bb=pb+4|0;rd=id;sd=jd;td=kd;ud=ld;vd=md;xd=nd;yd=od;zd=pd;Ad=qd;m=91;continue}else if((m|0)==91){Bd=c[Bb>>2]|0;Ib=sd&255;Cd=vd&255;Cb=zd&255;Ib=(((O(d[xd+((c[u>>2]&Bd)>>>Cd)>>0]|0,i)|0)>>>0)/255|0)>>>(ud&255)<<Cd|(((O(d[td+((c[r>>2]&Bd)>>>Ib)>>0]|0,p)|0)>>>0)/255|0)>>>(rd&255)<<Ib;Cb=(((O(d[Ad+((c[x>>2]&Bd)>>>Cb)>>0]|0,o)|0)>>>0)/255|0)>>>(yd&255)<<Cb;c[Bb>>2]=Ib|c[n>>2]|Cb;Cb=qb;Ib=Bb+4|0;Bd=rd;Cd=sd;Dd=td;Ed=ud;Gd=vd;Hd=xd;Id=yd;Jd=zd;Kd=Ad;m=92;continue}else if((m|0)==92){Fg=c[Ib>>2]|0;g=Cd&255;k=Gd&255;m=Jd&255;g=(((O(d[Hd+((c[u>>2]&Fg)>>>k)>>0]|0,i)|0)>>>0)/255|0)>>>(Ed&255)<<k|(((O(d[Dd+((c[r>>2]&Fg)>>>g)>>0]|0,p)|0)>>>0)/255|0)>>>(Bd&255)<<g;m=(((O(d[Kd+((c[x>>2]&Fg)>>>m)>>0]|0,o)|0)>>>0)/255|0)>>>(Id&255)<<m;c[Ib>>2]=g|c[n>>2]|m;m=Ib+4|0;if((Cb|0)>1){Ua=Cb+-1|0;db=m;$c=Bd;ad=Cd;bd=Dd;cd=Ed;dd=Gd;ed=Hd;fd=Id;gd=Jd;hd=Kd;m=89;continue}else break}if(!h){Gg=0;m=109;break}else m=m+(C<<2)|0}if((m|0)!=93)if((m|0)==109){l=Hg;return Gg|0}break}default:{h=c[g+8>>2]|0;x=c[g+12>>2]|0;m=(c[f+16>>2]|0)/(o|0)|0;z=m-h|0;if(!x){Gg=0;l=Hg;return Gg|0}m=(c[f+20>>2]|0)+((O(c[g+4>>2]|0,m)|0)<<2)|0;y=(h+3|0)/4|0;w=h&255;v=i&255;u=j&255;o=k&255;i=Fg+28|0;p=Fg+32|0;q=Fg+29|0;r=Fg+33|0;s=Fg+30|0;t=Fg+34|0;n=Fg+24|0;m=m+(c[g>>2]<<2)|0;h=x;h:while(1){h=h+-1|0;switch(w&3){case 0:{B=y;F=m;R=a[i>>0]|0;S=a[p>>0]|0;T=a[q>>0]|0;U=a[r>>0]|0;V=a[s>>0]|0;W=a[t>>0]|0;m=102;break}case 3:{E=y;J=m;X=a[i>>0]|0;Y=a[p>>0]|0;Z=a[q>>0]|0;_=a[r>>0]|0;$=a[s>>0]|0;aa=a[t>>0]|0;m=103;break}case 2:{I=y;N=m;ba=a[i>>0]|0;ca=a[p>>0]|0;da=a[q>>0]|0;ea=a[r>>0]|0;fa=a[s>>0]|0;ga=a[t>>0]|0;m=104;break}case 1:{M=y;Q=m;ha=a[i>>0]|0;ia=a[p>>0]|0;ja=a[q>>0]|0;ka=a[r>>0]|0;la=a[s>>0]|0;ma=a[t>>0]|0;m=105;break}default:{m=106;break h}}while(1)if((m|0)==102){c[F>>2]=u>>>(T&255)<<(U&255)|v>>>(R&255)<<(S&255)|c[n>>2]|o>>>(V&255)<<(W&255);E=B;J=F+4|0;X=R;Y=S;Z=T;_=U;$=V;aa=W;m=103;continue}else if((m|0)==103){c[J>>2]=u>>>(Z&255)<<(_&255)|v>>>(X&255)<<(Y&255)|c[n>>2]|o>>>($&255)<<(aa&255);I=E;N=J+4|0;ba=X;ca=Y;da=Z;ea=_;fa=$;ga=aa;m=104;continue}else if((m|0)==104){c[N>>2]=u>>>(da&255)<<(ea&255)|v>>>(ba&255)<<(ca&255)|c[n>>2]|o>>>(fa&255)<<(ga&255);M=I;Q=N+4|0;ha=ba;ia=ca;ja=da;ka=ea;la=fa;ma=ga;m=105;continue}else if((m|0)==105){c[Q>>2]=u>>>(ja&255)<<(ka&255)|v>>>(ha&255)<<(ia&255)|c[n>>2]|o>>>(la&255)<<(ma&255);m=Q+4|0;if((M|0)>1){B=M+-1|0;F=m;R=ha;S=ia;T=ja;U=ka;V=la;W=ma;m=102;continue}else break}if(!h){Gg=0;m=109;break}else m=m+(z<<2)|0}if((m|0)!=106)if((m|0)==109){l=Hg;return Gg|0}}}break}default:{mE(294969,n);Gg=-1;l=Hg;return Gg|0}}return 0}function FJ(b,e,f,g,h,i,j){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=0,zb=0,Ab=0,Bb=0,Cb=0,Db=0,Eb=0,Fb=0,Gb=0,Hb=0,Ib=0,Jb=0,Kb=0,Lb=0,Mb=0,Nb=0,Ob=0,Pb=0,Qb=0,Rb=0,Sb=0,Tb=0,Ub=0,Vb=0,Wb=0,Xb=0,Yb=0,Zb=0,_b=0,$b=0,ac=0,bc=0,cc=0,dc=0,ec=0,fc=0,gc=0,hc=0,ic=0,jc=0,kc=0,lc=0,mc=0,nc=0,oc=0,pc=0,qc=0,rc=0,sc=0,tc=0,uc=0,vc=0,wc=0,xc=0,yc=0,zc=0,Ac=0,Bc=0,Cc=0,Dc=0,Ec=0,Fc=0,Gc=0,Hc=0,Ic=0,Jc=0,Kc=0,Lc=0,Mc=0,Nc=0,Oc=0,Pc=0,Qc=0,Rc=0,Sc=0,Tc=0,Uc=0,Vc=0,Wc=0,Xc=0,Yc=0,Zc=0,_c=0,$c=0,ad=0,bd=0,cd=0,dd=0,ed=0,fd=0,gd=0,hd=0,id=0,jd=0,kd=0,ld=0,md=0,nd=0,od=0,pd=0,qd=0,rd=0,sd=0,td=0,ud=0,vd=0,wd=0;wd=l;l=l+16|0;ud=c[b+4>>2]|0;td=j&255;ma=td^255;y=a[ud+9>>0]|0;k=y&255;if(y<<24>>24!=4){mE(294969,wd);vd=-1;l=wd;return vd|0}switch(f|0){case 1:{j=c[e+8>>2]|0;f=c[e+12>>2]|0;m=(c[b+16>>2]|0)/(k|0)|0;B=m-j|0;if(!f){vd=0;l=wd;return vd|0}C=(j+3|0)/4|0;A=j&255;p=ud+28|0;q=ud+12|0;r=ud+32|0;s=ud+29|0;t=ud+16|0;u=ud+33|0;v=ud+30|0;w=ud+20|0;x=ud+34|0;y=ud+31|0;z=ud+24|0;o=ud+35|0;n=g&255;g=h&255;k=i&255;j=(c[b+20>>2]|0)+((O(c[e+4>>2]|0,m)|0)<<2)+(c[e>>2]<<2)|0;a:while(1){f=f+-1|0;switch(A&3){case 0:{kc=a[p>>0]|0;Bc=a[s>>0]|0;Yc=a[v>>0]|0;sd=a[y>>0]|0;na=C;qa=j;Ub=kc;cc=a[r>>0]|0;kc=c[18232+((kc&255)<<2)>>2]|0;qc=Bc;sc=a[u>>0]|0;Bc=c[18232+((Bc&255)<<2)>>2]|0;Ic=Yc;Sc=a[x>>0]|0;Yc=c[18232+((Yc&255)<<2)>>2]|0;ed=sd;pd=a[o>>0]|0;sd=c[18232+((sd&255)<<2)>>2]|0;j=10;break}case 3:{Na=a[p>>0]|0;Qa=a[s>>0]|0;Ta=a[v>>0]|0;Wa=a[y>>0]|0;ra=C;wa=j;La=Na;Ma=a[r>>0]|0;Na=c[18232+((Na&255)<<2)>>2]|0;Oa=Qa;Pa=a[u>>0]|0;Qa=c[18232+((Qa&255)<<2)>>2]|0;Ra=Ta;Sa=a[x>>0]|0;Ta=c[18232+((Ta&255)<<2)>>2]|0;Ua=Wa;Va=a[o>>0]|0;Wa=c[18232+((Wa&255)<<2)>>2]|0;j=11;break}case 2:{Za=a[p>>0]|0;ab=a[s>>0]|0;db=a[v>>0]|0;gb=a[y>>0]|0;xa=C;Ca=j;Xa=Za;Ya=a[r>>0]|0;Za=c[18232+((Za&255)<<2)>>2]|0;_a=ab;$a=a[u>>0]|0;ab=c[18232+((ab&255)<<2)>>2]|0;bb=db;cb=a[x>>0]|0;db=c[18232+((db&255)<<2)>>2]|0;eb=gb;fb=a[o>>0]|0;gb=c[18232+((gb&255)<<2)>>2]|0;j=12;break}case 1:{jb=a[p>>0]|0;mb=a[s>>0]|0;pb=a[v>>0]|0;sb=a[y>>0]|0;Da=C;Ia=j;hb=jb;ib=a[r>>0]|0;jb=c[18232+((jb&255)<<2)>>2]|0;kb=mb;lb=a[u>>0]|0;mb=c[18232+((mb&255)<<2)>>2]|0;nb=pb;ob=a[x>>0]|0;pb=c[18232+((pb&255)<<2)>>2]|0;qb=sb;rb=a[o>>0]|0;sb=c[18232+((sb&255)<<2)>>2]|0;j=13;break}default:{j=14;break a}}while(1)if((j|0)==10){wa=c[qa>>2]|0;Ma=cc&255;Na=sc&255;La=Sc&255;ra=pd&255;c[qa>>2]=((((O(d[Bc+((c[t>>2]&wa)>>>Na)>>0]|0,ma)|0)>>>0)/255|0)+g|0)>>>(qc&255)<<Na|((((O(d[kc+((c[q>>2]&wa)>>>Ma)>>0]|0,ma)|0)>>>0)/255|0)+n|0)>>>(Ub&255)<<Ma|((((O(d[Yc+((c[w>>2]&wa)>>>La)>>0]|0,ma)|0)>>>0)/255|0)+k|0)>>>(Ic&255)<<La|((((O(d[sd+((c[z>>2]&wa)>>>ra)>>0]|0,ma)|0)>>>0)/255|0)+td|0)>>>(ed&255)<<ra;ra=na;wa=qa+4|0;La=Ub;Ma=cc;Na=kc;Oa=qc;Pa=sc;Qa=Bc;Ra=Ic;Sa=Sc;Ta=Yc;Ua=ed;Va=pd;Wa=sd;j=11;continue}else if((j|0)==11){Ca=c[wa>>2]|0;Ya=Ma&255;Za=Pa&255;Xa=Sa&255;xa=Va&255;c[wa>>2]=((((O(d[Qa+((c[t>>2]&Ca)>>>Za)>>0]|0,ma)|0)>>>0)/255|0)+g|0)>>>(Oa&255)<<Za|((((O(d[Na+((c[q>>2]&Ca)>>>Ya)>>0]|0,ma)|0)>>>0)/255|0)+n|0)>>>(La&255)<<Ya|((((O(d[Ta+((c[w>>2]&Ca)>>>Xa)>>0]|0,ma)|0)>>>0)/255|0)+k|0)>>>(Ra&255)<<Xa|((((O(d[Wa+((c[z>>2]&Ca)>>>xa)>>0]|0,ma)|0)>>>0)/255|0)+td|0)>>>(Ua&255)<<xa;xa=ra;Ca=wa+4|0;Xa=La;Ya=Ma;Za=Na;_a=Oa;$a=Pa;ab=Qa;bb=Ra;cb=Sa;db=Ta;eb=Ua;fb=Va;gb=Wa;j=12;continue}else if((j|0)==12){Ia=c[Ca>>2]|0;ib=Ya&255;jb=$a&255;hb=cb&255;Da=fb&255;c[Ca>>2]=((((O(d[ab+((c[t>>2]&Ia)>>>jb)>>0]|0,ma)|0)>>>0)/255|0)+g|0)>>>(_a&255)<<jb|((((O(d[Za+((c[q>>2]&Ia)>>>ib)>>0]|0,ma)|0)>>>0)/255|0)+n|0)>>>(Xa&255)<<ib|((((O(d[db+((c[w>>2]&Ia)>>>hb)>>0]|0,ma)|0)>>>0)/255|0)+k|0)>>>(bb&255)<<hb|((((O(d[gb+((c[z>>2]&Ia)>>>Da)>>0]|0,ma)|0)>>>0)/255|0)+td|0)>>>(eb&255)<<Da;Da=xa;Ia=Ca+4|0;hb=Xa;ib=Ya;jb=Za;kb=_a;lb=$a;mb=ab;nb=bb;ob=cb;pb=db;qb=eb;rb=fb;sb=gb;j=13;continue}else if((j|0)==13){e=c[Ia>>2]|0;ud=ib&255;h=lb&255;i=ob&255;j=rb&255;c[Ia>>2]=((((O(d[mb+((c[t>>2]&e)>>>h)>>0]|0,ma)|0)>>>0)/255|0)+g|0)>>>(kb&255)<<h|((((O(d[jb+((c[q>>2]&e)>>>ud)>>0]|0,ma)|0)>>>0)/255|0)+n|0)>>>(hb&255)<<ud|((((O(d[pb+((c[w>>2]&e)>>>i)>>0]|0,ma)|0)>>>0)/255|0)+k|0)>>>(nb&255)<<i|((((O(d[sb+((c[z>>2]&e)>>>j)>>0]|0,ma)|0)>>>0)/255|0)+td|0)>>>(qb&255)<<j;j=Ia+4|0;if((Da|0)>1){na=Da+-1|0;qa=j;Ub=hb;cc=ib;kc=jb;qc=kb;sc=lb;Bc=mb;Ic=nb;Sc=ob;Yc=pb;ed=qb;pd=rb;sd=sb;j=10;continue}else break}if(!f){vd=0;j=56;break}else j=j+(B<<2)|0}if((j|0)!=14)if((j|0)==56){l=wd;return vd|0}break}case 2:{f=c[e+8>>2]|0;A=c[e+12>>2]|0;j=(c[b+16>>2]|0)/(k|0)|0;C=j-f|0;if(!A){vd=0;l=wd;return vd|0}j=(c[b+20>>2]|0)+((O(c[e+4>>2]|0,j)|0)<<2)|0;B=(f+3|0)/4|0;z=f&255;o=ud+28|0;p=ud+12|0;q=ud+32|0;r=ud+29|0;s=ud+16|0;t=ud+33|0;u=ud+30|0;v=ud+20|0;w=ud+34|0;x=ud+31|0;y=ud+24|0;n=ud+35|0;g=g&255;m=h&255;k=i&255;j=j+(c[e>>2]<<2)|0;f=A;b:while(1){f=f+-1|0;switch(z&3){case 0:{vb=a[o>>0]|0;yb=a[r>>0]|0;Bb=a[u>>0]|0;Eb=a[x>>0]|0;oa=B;sa=j;tb=vb;ub=a[q>>0]|0;vb=c[18232+((vb&255)<<2)>>2]|0;wb=yb;xb=a[t>>0]|0;yb=c[18232+((yb&255)<<2)>>2]|0;zb=Bb;Ab=a[w>>0]|0;Bb=c[18232+((Bb&255)<<2)>>2]|0;Cb=Eb;Db=a[n>>0]|0;Eb=c[18232+((Eb&255)<<2)>>2]|0;j=23;break}case 3:{Hb=a[o>>0]|0;Kb=a[r>>0]|0;Nb=a[u>>0]|0;Qb=a[x>>0]|0;ta=B;ya=j;Fb=Hb;Gb=a[q>>0]|0;Hb=c[18232+((Hb&255)<<2)>>2]|0;Ib=Kb;Jb=a[t>>0]|0;Kb=c[18232+((Kb&255)<<2)>>2]|0;Lb=Nb;Mb=a[w>>0]|0;Nb=c[18232+((Nb&255)<<2)>>2]|0;Ob=Qb;Pb=a[n>>0]|0;Qb=c[18232+((Qb&255)<<2)>>2]|0;j=24;break}case 2:{Tb=a[o>>0]|0;Xb=a[r>>0]|0;_b=a[u>>0]|0;bc=a[x>>0]|0;za=B;Ea=j;Rb=Tb;Sb=a[q>>0]|0;Tb=c[18232+((Tb&255)<<2)>>2]|0;Vb=Xb;Wb=a[t>>0]|0;Xb=c[18232+((Xb&255)<<2)>>2]|0;Yb=_b;Zb=a[w>>0]|0;_b=c[18232+((_b&255)<<2)>>2]|0;$b=bc;ac=a[n>>0]|0;bc=c[18232+((bc&255)<<2)>>2]|0;j=25;break}case 1:{fc=a[o>>0]|0;ic=a[r>>0]|0;mc=a[u>>0]|0;pc=a[x>>0]|0;Fa=B;Ja=j;dc=fc;ec=a[q>>0]|0;fc=c[18232+((fc&255)<<2)>>2]|0;gc=ic;hc=a[t>>0]|0;ic=c[18232+((ic&255)<<2)>>2]|0;jc=mc;lc=a[w>>0]|0;mc=c[18232+((mc&255)<<2)>>2]|0;nc=pc;oc=a[n>>0]|0;pc=c[18232+((pc&255)<<2)>>2]|0;j=26;break}default:{j=27;break b}}while(1)if((j|0)==23){ya=c[sa>>2]|0;Hb=ub&255;Jb=xb&255;Fb=Ab&255;ta=Db&255;Ib=(d[vb+((c[p>>2]&ya)>>>Hb)>>0]|0)+g|0;Kb=(d[yb+((c[s>>2]&ya)>>>Jb)>>0]|0)+m|0;Gb=(d[Bb+((c[v>>2]&ya)>>>Fb)>>0]|0)+k|0;c[sa>>2]=(Kb>>>0<255?Kb:255)>>>(wb&255)<<Jb|(Ib>>>0<255?Ib:255)>>>(tb&255)<<Hb|(Gb>>>0<255?Gb:255)>>>(zb&255)<<Fb|(d[Eb+((c[y>>2]&ya)>>>ta)>>0]|0)>>>(Cb&255)<<ta;ta=oa;ya=sa+4|0;Fb=tb;Gb=ub;Hb=vb;Ib=wb;Jb=xb;Kb=yb;Lb=zb;Mb=Ab;Nb=Bb;Ob=Cb;Pb=Db;Qb=Eb;j=24;continue}else if((j|0)==24){Ea=c[ya>>2]|0;Tb=Gb&255;Wb=Jb&255;Rb=Mb&255;za=Pb&255;Vb=(d[Hb+((c[p>>2]&Ea)>>>Tb)>>0]|0)+g|0;Xb=(d[Kb+((c[s>>2]&Ea)>>>Wb)>>0]|0)+m|0;Sb=(d[Nb+((c[v>>2]&Ea)>>>Rb)>>0]|0)+k|0;c[ya>>2]=(Xb>>>0<255?Xb:255)>>>(Ib&255)<<Wb|(Vb>>>0<255?Vb:255)>>>(Fb&255)<<Tb|(Sb>>>0<255?Sb:255)>>>(Lb&255)<<Rb|(d[Qb+((c[y>>2]&Ea)>>>za)>>0]|0)>>>(Ob&255)<<za;za=ta;Ea=ya+4|0;Rb=Fb;Sb=Gb;Tb=Hb;Vb=Ib;Wb=Jb;Xb=Kb;Yb=Lb;Zb=Mb;_b=Nb;$b=Ob;ac=Pb;bc=Qb;j=25;continue}else if((j|0)==25){Ja=c[Ea>>2]|0;fc=Sb&255;hc=Wb&255;dc=Zb&255;Fa=ac&255;gc=(d[Tb+((c[p>>2]&Ja)>>>fc)>>0]|0)+g|0;ic=(d[Xb+((c[s>>2]&Ja)>>>hc)>>0]|0)+m|0;ec=(d[_b+((c[v>>2]&Ja)>>>dc)>>0]|0)+k|0;c[Ea>>2]=(ic>>>0<255?ic:255)>>>(Vb&255)<<hc|(gc>>>0<255?gc:255)>>>(Rb&255)<<fc|(ec>>>0<255?ec:255)>>>(Yb&255)<<dc|(d[bc+((c[y>>2]&Ja)>>>Fa)>>0]|0)>>>($b&255)<<Fa;Fa=za;Ja=Ea+4|0;dc=Rb;ec=Sb;fc=Tb;gc=Vb;hc=Wb;ic=Xb;jc=Yb;lc=Zb;mc=_b;nc=$b;oc=ac;pc=bc;j=26;continue}else if((j|0)==26){e=c[Ja>>2]|0;h=ec&255;b=hc&255;i=lc&255;j=oc&255;td=(d[fc+((c[p>>2]&e)>>>h)>>0]|0)+g|0;sd=(d[ic+((c[s>>2]&e)>>>b)>>0]|0)+m|0;ud=(d[mc+((c[v>>2]&e)>>>i)>>0]|0)+k|0;c[Ja>>2]=(sd>>>0<255?sd:255)>>>(gc&255)<<b|(td>>>0<255?td:255)>>>(dc&255)<<h|(ud>>>0<255?ud:255)>>>(jc&255)<<i|(d[pc+((c[y>>2]&e)>>>j)>>0]|0)>>>(nc&255)<<j;j=Ja+4|0;if((Fa|0)>1){oa=Fa+-1|0;sa=j;tb=dc;ub=ec;vb=fc;wb=gc;xb=hc;yb=ic;zb=jc;Ab=lc;Bb=mc;Cb=nc;Db=oc;Eb=pc;j=23;continue}else break}if(!f){vd=0;j=56;break}else j=j+(C<<2)|0}if((j|0)!=27)if((j|0)==56){l=wd;return vd|0}break}case 4:{f=c[e+8>>2]|0;A=c[e+12>>2]|0;j=(c[b+16>>2]|0)/(k|0)|0;C=j-f|0;if(!A){vd=0;l=wd;return vd|0}j=(c[b+20>>2]|0)+((O(c[e+4>>2]|0,j)|0)<<2)|0;B=(f+3|0)/4|0;z=f&255;o=ud+28|0;p=ud+12|0;q=ud+32|0;r=ud+29|0;s=ud+16|0;t=ud+33|0;u=ud+30|0;v=ud+20|0;w=ud+34|0;x=ud+31|0;y=ud+24|0;n=ud+35|0;g=g&255;m=h&255;k=i&255;j=j+(c[e>>2]<<2)|0;f=A;c:while(1){f=f+-1|0;switch(z&3){case 0:{uc=a[o>>0]|0;xc=a[r>>0]|0;Ac=a[u>>0]|0;Ec=a[x>>0]|0;pa=B;ua=j;rc=uc;tc=a[q>>0]|0;uc=c[18232+((uc&255)<<2)>>2]|0;vc=xc;wc=a[t>>0]|0;xc=c[18232+((xc&255)<<2)>>2]|0;yc=Ac;zc=a[w>>0]|0;Ac=c[18232+((Ac&255)<<2)>>2]|0;Cc=Ec;Dc=a[n>>0]|0;Ec=c[18232+((Ec&255)<<2)>>2]|0;j=36;break}case 3:{Hc=a[o>>0]|0;Lc=a[r>>0]|0;Oc=a[u>>0]|0;Rc=a[x>>0]|0;va=B;Aa=j;Fc=Hc;Gc=a[q>>0]|0;Hc=c[18232+((Hc&255)<<2)>>2]|0;Jc=Lc;Kc=a[t>>0]|0;Lc=c[18232+((Lc&255)<<2)>>2]|0;Mc=Oc;Nc=a[w>>0]|0;Oc=c[18232+((Oc&255)<<2)>>2]|0;Pc=Rc;Qc=a[n>>0]|0;Rc=c[18232+((Rc&255)<<2)>>2]|0;j=37;break}case 2:{Vc=a[o>>0]|0;Zc=a[r>>0]|0;ad=a[u>>0]|0;dd=a[x>>0]|0;Ba=B;Ga=j;Tc=Vc;Uc=a[q>>0]|0;Vc=c[18232+((Vc&255)<<2)>>2]|0;Wc=Zc;Xc=a[t>>0]|0;Zc=c[18232+((Zc&255)<<2)>>2]|0;_c=ad;$c=a[w>>0]|0;ad=c[18232+((ad&255)<<2)>>2]|0;bd=dd;cd=a[n>>0]|0;dd=c[18232+((dd&255)<<2)>>2]|0;j=38;break}case 1:{hd=a[o>>0]|0;kd=a[r>>0]|0;nd=a[u>>0]|0;rd=a[x>>0]|0;Ha=B;Ka=j;fd=hd;gd=a[q>>0]|0;hd=c[18232+((hd&255)<<2)>>2]|0;id=kd;jd=a[t>>0]|0;kd=c[18232+((kd&255)<<2)>>2]|0;ld=nd;md=a[w>>0]|0;nd=c[18232+((nd&255)<<2)>>2]|0;od=rd;qd=a[n>>0]|0;rd=c[18232+((rd&255)<<2)>>2]|0;j=39;break}default:{j=40;break c}}while(1)if((j|0)==36){Aa=c[ua>>2]|0;Gc=tc&255;Hc=wc&255;Fc=zc&255;va=Dc&255;c[ua>>2]=(((O(d[xc+((c[s>>2]&Aa)>>>Hc)>>0]|0,m)|0)>>>0)/255|0)>>>(vc&255)<<Hc|(((O(d[uc+((c[p>>2]&Aa)>>>Gc)>>0]|0,g)|0)>>>0)/255|0)>>>(rc&255)<<Gc|(((O(d[Ac+((c[v>>2]&Aa)>>>Fc)>>0]|0,k)|0)>>>0)/255|0)>>>(yc&255)<<Fc|(d[Ec+((c[y>>2]&Aa)>>>va)>>0]|0)>>>(Cc&255)<<va;va=pa;Aa=ua+4|0;Fc=rc;Gc=tc;Hc=uc;Jc=vc;Kc=wc;Lc=xc;Mc=yc;Nc=zc;Oc=Ac;Pc=Cc;Qc=Dc;Rc=Ec;j=37;continue}else if((j|0)==37){Ga=c[Aa>>2]|0;Uc=Gc&255;Vc=Kc&255;Tc=Nc&255;Ba=Qc&255;c[Aa>>2]=(((O(d[Lc+((c[s>>2]&Ga)>>>Vc)>>0]|0,m)|0)>>>0)/255|0)>>>(Jc&255)<<Vc|(((O(d[Hc+((c[p>>2]&Ga)>>>Uc)>>0]|0,g)|0)>>>0)/255|0)>>>(Fc&255)<<Uc|(((O(d[Oc+((c[v>>2]&Ga)>>>Tc)>>0]|0,k)|0)>>>0)/255|0)>>>(Mc&255)<<Tc|(d[Rc+((c[y>>2]&Ga)>>>Ba)>>0]|0)>>>(Pc&255)<<Ba;Ba=va;Ga=Aa+4|0;Tc=Fc;Uc=Gc;Vc=Hc;Wc=Jc;Xc=Kc;Zc=Lc;_c=Mc;$c=Nc;ad=Oc;bd=Pc;cd=Qc;dd=Rc;j=38;continue}else if((j|0)==38){Ka=c[Ga>>2]|0;gd=Uc&255;hd=Xc&255;fd=$c&255;Ha=cd&255;c[Ga>>2]=(((O(d[Zc+((c[s>>2]&Ka)>>>hd)>>0]|0,m)|0)>>>0)/255|0)>>>(Wc&255)<<hd|(((O(d[Vc+((c[p>>2]&Ka)>>>gd)>>0]|0,g)|0)>>>0)/255|0)>>>(Tc&255)<<gd|(((O(d[ad+((c[v>>2]&Ka)>>>fd)>>0]|0,k)|0)>>>0)/255|0)>>>(_c&255)<<fd|(d[dd+((c[y>>2]&Ka)>>>Ha)>>0]|0)>>>(bd&255)<<Ha;Ha=Ba;Ka=Ga+4|0;fd=Tc;gd=Uc;hd=Vc;id=Wc;jd=Xc;kd=Zc;ld=_c;md=$c;nd=ad;od=bd;qd=cd;rd=dd;j=39;continue}else if((j|0)==39){e=c[Ka>>2]|0;ud=gd&255;h=jd&255;i=md&255;j=qd&255;c[Ka>>2]=(((O(d[kd+((c[s>>2]&e)>>>h)>>0]|0,m)|0)>>>0)/255|0)>>>(id&255)<<h|(((O(d[hd+((c[p>>2]&e)>>>ud)>>0]|0,g)|0)>>>0)/255|0)>>>(fd&255)<<ud|(((O(d[nd+((c[v>>2]&e)>>>i)>>0]|0,k)|0)>>>0)/255|0)>>>(ld&255)<<i|(d[rd+((c[y>>2]&e)>>>j)>>0]|0)>>>(od&255)<<j;j=Ka+4|0;if((Ha|0)>1){pa=Ha+-1|0;ua=j;rc=fd;tc=gd;uc=hd;vc=id;wc=jd;xc=kd;yc=ld;zc=md;Ac=nd;Cc=od;Dc=qd;Ec=rd;j=36;continue}else break}if(!f){vd=0;j=56;break}else j=j+(C<<2)|0}if((j|0)!=40)if((j|0)==56){l=wd;return vd|0}break}default:{f=c[e+8>>2]|0;w=c[e+12>>2]|0;j=(c[b+16>>2]|0)/(k|0)|0;y=j-f|0;if(!w){vd=0;l=wd;return vd|0}j=(c[b+20>>2]|0)+((O(c[e+4>>2]|0,j)|0)<<2)|0;x=(f+3|0)/4|0;v=f&255;u=g&255;t=h&255;m=i&255;g=ud+28|0;n=ud+32|0;o=ud+29|0;p=ud+33|0;q=ud+30|0;r=ud+34|0;s=ud+31|0;k=ud+35|0;j=j+(c[e>>2]<<2)|0;f=w;d:while(1){f=f+-1|0;switch(v&3){case 0:{z=x;B=j;X=a[g>>0]|0;Y=a[n>>0]|0;Z=a[o>>0]|0;_=a[p>>0]|0;$=a[q>>0]|0;aa=a[r>>0]|0;ba=a[s>>0]|0;ca=a[k>>0]|0;j=49;break}case 3:{A=x;D=j;da=a[g>>0]|0;ea=a[n>>0]|0;fa=a[o>>0]|0;ga=a[p>>0]|0;ha=a[q>>0]|0;ia=a[r>>0]|0;ja=a[s>>0]|0;ka=a[k>>0]|0;j=50;break}case 2:{C=x;F=j;H=a[n>>0]|0;I=a[o>>0]|0;J=a[p>>0]|0;K=a[q>>0]|0;L=a[r>>0]|0;M=a[s>>0]|0;N=a[k>>0]|0;la=a[g>>0]|0;j=51;break}case 1:{E=x;G=j;P=a[g>>0]|0;Q=a[n>>0]|0;R=a[o>>0]|0;S=a[p>>0]|0;T=a[q>>0]|0;U=a[r>>0]|0;V=a[s>>0]|0;W=a[k>>0]|0;j=52;break}default:{j=53;break d}}while(1)if((j|0)==49){c[B>>2]=t>>>(Z&255)<<(_&255)|u>>>(X&255)<<(Y&255)|m>>>($&255)<<(aa&255)|td>>>(ba&255)<<(ca&255);A=z;D=B+4|0;da=X;ea=Y;fa=Z;ga=_;ha=$;ia=aa;ja=ba;ka=ca;j=50;continue}else if((j|0)==50){c[D>>2]=t>>>(fa&255)<<(ga&255)|u>>>(da&255)<<(ea&255)|m>>>(ha&255)<<(ia&255)|td>>>(ja&255)<<(ka&255);C=A;F=D+4|0;H=ea;I=fa;J=ga;K=ha;L=ia;M=ja;N=ka;la=da;j=51;continue}else if((j|0)==51){c[F>>2]=t>>>(I&255)<<(J&255)|u>>>(la&255)<<(H&255)|m>>>(K&255)<<(L&255)|td>>>(M&255)<<(N&255);E=C;G=F+4|0;P=la;Q=H;R=I;S=J;T=K;U=L;V=M;W=N;j=52;continue}else if((j|0)==52){c[G>>2]=t>>>(R&255)<<(S&255)|u>>>(P&255)<<(Q&255)|m>>>(T&255)<<(U&255)|td>>>(V&255)<<(W&255);j=G+4|0;if((E|0)>1){z=E+-1|0;B=j;X=P;Y=Q;Z=R;_=S;$=T;aa=U;ba=V;ca=W;j=49;continue}else break}if(!f){vd=0;j=56;break}else j=j+(y<<2)|0}if((j|0)!=53)if((j|0)==56){l=wd;return vd|0}}}return 0}function GJ(a,f,g,h,i,j,k){a=a|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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,P=0;r=~k&255;switch(g|0){case 1:{k=c[f+8>>2]|0;g=c[f+12>>2]|0;l=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;p=l-k|0;if(!g)return 0;q=(k+3|0)/4|0;o=k&255;n=h&255;h=i&255;m=j&255;k=(c[a+20>>2]|0)+((O(c[f+4>>2]|0,l)|0)<<1)+(c[f>>2]<<1)|0;a:while(1){g=g+-1|0;switch(o&3){case 0:{s=q;u=k;k=5;break}case 3:{v=q;A=k;k=6;break}case 2:{B=q;G=k;k=7;break}case 1:{H=q;M=k;k=8;break}default:{k=9;break a}}while(1)if((k|0)==5){v=e[u>>1]|0;b[u>>1]=((((O(d[289322+(v>>>5&31)>>0]|0,r)|0)>>>0)/255|0)+h|0)>>>3<<5|((((O(d[289322+(v>>>10&31)>>0]|0,r)|0)>>>0)/255|0)+n|0)>>>3<<10|((((O(d[289322+(v&31)>>0]|0,r)|0)>>>0)/255|0)+m|0)>>>3;v=s;A=u+2|0;k=6;continue}else if((k|0)==6){B=e[A>>1]|0;b[A>>1]=((((O(d[289322+(B>>>5&31)>>0]|0,r)|0)>>>0)/255|0)+h|0)>>>3<<5|((((O(d[289322+(B>>>10&31)>>0]|0,r)|0)>>>0)/255|0)+n|0)>>>3<<10|((((O(d[289322+(B&31)>>0]|0,r)|0)>>>0)/255|0)+m|0)>>>3;B=v;G=A+2|0;k=7;continue}else if((k|0)==7){H=e[G>>1]|0;b[G>>1]=((((O(d[289322+(H>>>5&31)>>0]|0,r)|0)>>>0)/255|0)+h|0)>>>3<<5|((((O(d[289322+(H>>>10&31)>>0]|0,r)|0)>>>0)/255|0)+n|0)>>>3<<10|((((O(d[289322+(H&31)>>0]|0,r)|0)>>>0)/255|0)+m|0)>>>3;H=B;M=G+2|0;k=8;continue}else if((k|0)==8){k=e[M>>1]|0;b[M>>1]=((((O(d[289322+(k>>>5&31)>>0]|0,r)|0)>>>0)/255|0)+h|0)>>>3<<5|((((O(d[289322+(k>>>10&31)>>0]|0,r)|0)>>>0)/255|0)+n|0)>>>3<<10|((((O(d[289322+(k&31)>>0]|0,r)|0)>>>0)/255|0)+m|0)>>>3;k=M+2|0;if((H|0)>1){s=H+-1|0;u=k;k=5;continue}else break}if(!g){k=46;break}else k=k+(p<<1)|0}if((k|0)!=9)if((k|0)==46)return 0;break}case 2:{l=c[f+8>>2]|0;g=c[f+12>>2]|0;k=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;p=k-l|0;if(!g)return 0;k=(c[a+20>>2]|0)+((O(c[f+4>>2]|0,k)|0)<<1)|0;o=(l+3|0)/4|0;n=l&255;h=h&255;m=i&255;l=j&255;k=k+(c[f>>2]<<1)|0;b:while(1){g=g+-1|0;switch(n&3){case 0:{q=o;w=k;k=14;break}case 3:{x=o;C=k;k=15;break}case 2:{D=o;I=k;k=16;break}case 1:{J=o;N=k;k=17;break}default:{k=18;break b}}while(1)if((k|0)==14){x=e[w>>1]|0;C=(d[289322+(x>>>10&31)>>0]|0)+h|0;k=(d[289322+(x>>>5&31)>>0]|0)+m|0;x=(d[289322+(x&31)>>0]|0)+l|0;b[w>>1]=(k>>>0<255?k:255)>>>3<<5|(C>>>0<255?C:255)>>>3<<10|(x>>>0<255?x:255)>>>3;x=q;C=w+2|0;k=15;continue}else if((k|0)==15){D=e[C>>1]|0;I=(d[289322+(D>>>10&31)>>0]|0)+h|0;k=(d[289322+(D>>>5&31)>>0]|0)+m|0;D=(d[289322+(D&31)>>0]|0)+l|0;b[C>>1]=(k>>>0<255?k:255)>>>3<<5|(I>>>0<255?I:255)>>>3<<10|(D>>>0<255?D:255)>>>3;D=x;I=C+2|0;k=16;continue}else if((k|0)==16){J=e[I>>1]|0;N=(d[289322+(J>>>10&31)>>0]|0)+h|0;k=(d[289322+(J>>>5&31)>>0]|0)+m|0;J=(d[289322+(J&31)>>0]|0)+l|0;b[I>>1]=(k>>>0<255?k:255)>>>3<<5|(N>>>0<255?N:255)>>>3<<10|(J>>>0<255?J:255)>>>3;J=D;N=I+2|0;k=17;continue}else if((k|0)==17){k=e[N>>1]|0;j=(d[289322+(k>>>10&31)>>0]|0)+h|0;f=(d[289322+(k>>>5&31)>>0]|0)+m|0;k=(d[289322+(k&31)>>0]|0)+l|0;b[N>>1]=(f>>>0<255?f:255)>>>3<<5|(j>>>0<255?j:255)>>>3<<10|(k>>>0<255?k:255)>>>3;k=N+2|0;if((J|0)>1){q=J+-1|0;w=k;k=14;continue}else break}if(!g){k=46;break}else k=k+(p<<1)|0}if((k|0)!=18)if((k|0)==46)return 0;break}case 4:{l=c[f+8>>2]|0;g=c[f+12>>2]|0;k=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;p=k-l|0;if(!g)return 0;k=(c[a+20>>2]|0)+((O(c[f+4>>2]|0,k)|0)<<1)|0;o=(l+3|0)/4|0;n=l&255;h=h&255;m=i&255;l=j&255;k=k+(c[f>>2]<<1)|0;c:while(1){g=g+-1|0;switch(n&3){case 0:{t=o;y=k;k=23;break}case 3:{z=o;E=k;k=24;break}case 2:{F=o;K=k;k=25;break}case 1:{L=o;P=k;k=26;break}default:{k=27;break c}}while(1)if((k|0)==23){z=e[y>>1]|0;b[y>>1]=(((O(d[289322+(z>>>5&31)>>0]|0,m)|0)>>>0)/255|0)>>>3<<5|(((O(d[289322+(z>>>10&31)>>0]|0,h)|0)>>>0)/255|0)>>>3<<10|(((O(d[289322+(z&31)>>0]|0,l)|0)>>>0)/255|0)>>>3;z=t;E=y+2|0;k=24;continue}else if((k|0)==24){F=e[E>>1]|0;b[E>>1]=(((O(d[289322+(F>>>5&31)>>0]|0,m)|0)>>>0)/255|0)>>>3<<5|(((O(d[289322+(F>>>10&31)>>0]|0,h)|0)>>>0)/255|0)>>>3<<10|(((O(d[289322+(F&31)>>0]|0,l)|0)>>>0)/255|0)>>>3;F=z;K=E+2|0;k=25;continue}else if((k|0)==25){L=e[K>>1]|0;b[K>>1]=(((O(d[289322+(L>>>5&31)>>0]|0,m)|0)>>>0)/255|0)>>>3<<5|(((O(d[289322+(L>>>10&31)>>0]|0,h)|0)>>>0)/255|0)>>>3<<10|(((O(d[289322+(L&31)>>0]|0,l)|0)>>>0)/255|0)>>>3;L=F;P=K+2|0;k=26;continue}else if((k|0)==26){k=e[P>>1]|0;b[P>>1]=(((O(d[289322+(k>>>5&31)>>0]|0,m)|0)>>>0)/255|0)>>>3<<5|(((O(d[289322+(k>>>10&31)>>0]|0,h)|0)>>>0)/255|0)>>>3<<10|(((O(d[289322+(k&31)>>0]|0,l)|0)>>>0)/255|0)>>>3;k=P+2|0;if((L|0)>1){t=L+-1|0;y=k;k=23;continue}else break}if(!g){k=46;break}else k=k+(p<<1)|0}if((k|0)!=27)if((k|0)==46)return 0;break}default:{m=c[f+8>>2]|0;P=c[f+12>>2]|0;k=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;p=k-m|0;k=(c[a+20>>2]|0)+((O(c[f+4>>2]|0,k)|0)<<1)|0;k=k+(c[f>>2]<<1)|0;l=P+-1|0;if(!P)return 0;g=m+3|0;o=(g|0)/4|0;n=((i&255)>>>3<<5|(h&255)>>>3<<10|(j&255)>>>3)&65535;switch(m&3){case 0:{while(1){g=o;while(1){b[k>>1]=n;b[k+2>>1]=n;b[k+4>>1]=n;b[k+6>>1]=n;k=k+8|0;if((g|0)<=1)break;else g=g+-1|0}if(!l)break;else{k=k+(p<<1)|0;l=l+-1|0}}return 0}case 3:{h=(g|0)>7;while(1){b[k>>1]=n;b[k+2>>1]=n;b[k+4>>1]=n;g=k+6|0;if(h){m=o;do{m=m+-1|0;b[g>>1]=n;g=k;k=k+8|0;b[k>>1]=n;b[g+10>>1]=n;b[g+12>>1]=n;g=g+14|0}while((m|0)>1);k=g}else k=g;if(!l)break;else{k=k+(p<<1)|0;l=l+-1|0}}return 0}case 2:{h=(g|0)>7;while(1){b[k>>1]=n;b[k+2>>1]=n;g=k+4|0;if(h){m=o;do{m=m+-1|0;b[g>>1]=n;b[k+6>>1]=n;g=k;k=k+8|0;b[k>>1]=n;b[g+10>>1]=n;g=g+12|0}while((m|0)>1);k=g}else k=g;if(!l)break;else{k=k+(p<<1)|0;l=l+-1|0}}return 0}default:{h=(g|0)>7;while(1){b[k>>1]=n;g=k+2|0;if(h){m=o;do{m=m+-1|0;b[g>>1]=n;b[k+4>>1]=n;b[k+6>>1]=n;g=k;k=k+8|0;b[k>>1]=n;g=g+10|0}while((m|0)>1);k=g}else k=g;if(!l)break;else{k=k+(p<<1)|0;l=l+-1|0}}return 0}}}}return 0}function HJ(a,f,g,h,i,j,k){a=a|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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,P=0;r=~k&255;switch(g|0){case 1:{k=c[f+8>>2]|0;g=c[f+12>>2]|0;l=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;p=l-k|0;if(!g)return 0;q=(k+3|0)/4|0;o=k&255;n=h&255;h=i&255;m=j&255;k=(c[a+20>>2]|0)+((O(c[f+4>>2]|0,l)|0)<<1)+(c[f>>2]<<1)|0;a:while(1){g=g+-1|0;switch(o&3){case 0:{s=q;u=k;k=5;break}case 3:{v=q;A=k;k=6;break}case 2:{B=q;G=k;k=7;break}case 1:{H=q;M=k;k=8;break}default:{k=9;break a}}while(1)if((k|0)==5){v=e[u>>1]|0;b[u>>1]=((((O(d[289258+(v>>>5&63)>>0]|0,r)|0)>>>0)/255|0)+h|0)>>>2<<5|((((O(d[289322+(v>>>11)>>0]|0,r)|0)>>>0)/255|0)+n|0)>>>3<<11|((((O(d[289322+(v&31)>>0]|0,r)|0)>>>0)/255|0)+m|0)>>>3;v=s;A=u+2|0;k=6;continue}else if((k|0)==6){B=e[A>>1]|0;b[A>>1]=((((O(d[289258+(B>>>5&63)>>0]|0,r)|0)>>>0)/255|0)+h|0)>>>2<<5|((((O(d[289322+(B>>>11)>>0]|0,r)|0)>>>0)/255|0)+n|0)>>>3<<11|((((O(d[289322+(B&31)>>0]|0,r)|0)>>>0)/255|0)+m|0)>>>3;B=v;G=A+2|0;k=7;continue}else if((k|0)==7){H=e[G>>1]|0;b[G>>1]=((((O(d[289258+(H>>>5&63)>>0]|0,r)|0)>>>0)/255|0)+h|0)>>>2<<5|((((O(d[289322+(H>>>11)>>0]|0,r)|0)>>>0)/255|0)+n|0)>>>3<<11|((((O(d[289322+(H&31)>>0]|0,r)|0)>>>0)/255|0)+m|0)>>>3;H=B;M=G+2|0;k=8;continue}else if((k|0)==8){k=e[M>>1]|0;b[M>>1]=((((O(d[289258+(k>>>5&63)>>0]|0,r)|0)>>>0)/255|0)+h|0)>>>2<<5|((((O(d[289322+(k>>>11)>>0]|0,r)|0)>>>0)/255|0)+n|0)>>>3<<11|((((O(d[289322+(k&31)>>0]|0,r)|0)>>>0)/255|0)+m|0)>>>3;k=M+2|0;if((H|0)>1){s=H+-1|0;u=k;k=5;continue}else break}if(!g){k=46;break}else k=k+(p<<1)|0}if((k|0)!=9)if((k|0)==46)return 0;break}case 2:{l=c[f+8>>2]|0;g=c[f+12>>2]|0;k=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;p=k-l|0;if(!g)return 0;k=(c[a+20>>2]|0)+((O(c[f+4>>2]|0,k)|0)<<1)|0;o=(l+3|0)/4|0;n=l&255;h=h&255;m=i&255;l=j&255;k=k+(c[f>>2]<<1)|0;b:while(1){g=g+-1|0;switch(n&3){case 0:{q=o;w=k;k=14;break}case 3:{x=o;C=k;k=15;break}case 2:{D=o;I=k;k=16;break}case 1:{J=o;N=k;k=17;break}default:{k=18;break b}}while(1)if((k|0)==14){x=e[w>>1]|0;C=(d[289322+(x>>>11)>>0]|0)+h|0;k=(d[289258+(x>>>5&63)>>0]|0)+m|0;x=(d[289322+(x&31)>>0]|0)+l|0;b[w>>1]=(k>>>0<255?k:255)>>>2<<5|(C>>>0<255?C:255)>>>3<<11|(x>>>0<255?x:255)>>>3;x=q;C=w+2|0;k=15;continue}else if((k|0)==15){D=e[C>>1]|0;I=(d[289322+(D>>>11)>>0]|0)+h|0;k=(d[289258+(D>>>5&63)>>0]|0)+m|0;D=(d[289322+(D&31)>>0]|0)+l|0;b[C>>1]=(k>>>0<255?k:255)>>>2<<5|(I>>>0<255?I:255)>>>3<<11|(D>>>0<255?D:255)>>>3;D=x;I=C+2|0;k=16;continue}else if((k|0)==16){J=e[I>>1]|0;N=(d[289322+(J>>>11)>>0]|0)+h|0;k=(d[289258+(J>>>5&63)>>0]|0)+m|0;J=(d[289322+(J&31)>>0]|0)+l|0;b[I>>1]=(k>>>0<255?k:255)>>>2<<5|(N>>>0<255?N:255)>>>3<<11|(J>>>0<255?J:255)>>>3;J=D;N=I+2|0;k=17;continue}else if((k|0)==17){k=e[N>>1]|0;j=(d[289322+(k>>>11)>>0]|0)+h|0;f=(d[289258+(k>>>5&63)>>0]|0)+m|0;k=(d[289322+(k&31)>>0]|0)+l|0;b[N>>1]=(f>>>0<255?f:255)>>>2<<5|(j>>>0<255?j:255)>>>3<<11|(k>>>0<255?k:255)>>>3;k=N+2|0;if((J|0)>1){q=J+-1|0;w=k;k=14;continue}else break}if(!g){k=46;break}else k=k+(p<<1)|0}if((k|0)!=18)if((k|0)==46)return 0;break}case 4:{l=c[f+8>>2]|0;g=c[f+12>>2]|0;k=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;p=k-l|0;if(!g)return 0;k=(c[a+20>>2]|0)+((O(c[f+4>>2]|0,k)|0)<<1)|0;o=(l+3|0)/4|0;n=l&255;h=h&255;m=i&255;l=j&255;k=k+(c[f>>2]<<1)|0;c:while(1){g=g+-1|0;switch(n&3){case 0:{t=o;y=k;k=23;break}case 3:{z=o;E=k;k=24;break}case 2:{F=o;K=k;k=25;break}case 1:{L=o;P=k;k=26;break}default:{k=27;break c}}while(1)if((k|0)==23){z=e[y>>1]|0;b[y>>1]=(((O(d[289258+(z>>>5&63)>>0]|0,m)|0)>>>0)/255|0)>>>2<<5|(((O(d[289322+(z>>>11)>>0]|0,h)|0)>>>0)/255|0)>>>3<<11|(((O(d[289322+(z&31)>>0]|0,l)|0)>>>0)/255|0)>>>3;z=t;E=y+2|0;k=24;continue}else if((k|0)==24){F=e[E>>1]|0;b[E>>1]=(((O(d[289258+(F>>>5&63)>>0]|0,m)|0)>>>0)/255|0)>>>2<<5|(((O(d[289322+(F>>>11)>>0]|0,h)|0)>>>0)/255|0)>>>3<<11|(((O(d[289322+(F&31)>>0]|0,l)|0)>>>0)/255|0)>>>3;F=z;K=E+2|0;k=25;continue}else if((k|0)==25){L=e[K>>1]|0;b[K>>1]=(((O(d[289258+(L>>>5&63)>>0]|0,m)|0)>>>0)/255|0)>>>2<<5|(((O(d[289322+(L>>>11)>>0]|0,h)|0)>>>0)/255|0)>>>3<<11|(((O(d[289322+(L&31)>>0]|0,l)|0)>>>0)/255|0)>>>3;L=F;P=K+2|0;k=26;continue}else if((k|0)==26){k=e[P>>1]|0;b[P>>1]=(((O(d[289258+(k>>>5&63)>>0]|0,m)|0)>>>0)/255|0)>>>2<<5|(((O(d[289322+(k>>>11)>>0]|0,h)|0)>>>0)/255|0)>>>3<<11|(((O(d[289322+(k&31)>>0]|0,l)|0)>>>0)/255|0)>>>3;k=P+2|0;if((L|0)>1){t=L+-1|0;y=k;k=23;continue}else break}if(!g){k=46;break}else k=k+(p<<1)|0}if((k|0)!=27)if((k|0)==46)return 0;break}default:{m=c[f+8>>2]|0;P=c[f+12>>2]|0;k=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;p=k-m|0;k=(c[a+20>>2]|0)+((O(c[f+4>>2]|0,k)|0)<<1)|0;k=k+(c[f>>2]<<1)|0;l=P+-1|0;if(!P)return 0;g=m+3|0;o=(g|0)/4|0;n=((i&255)>>>2<<5|(h&255)>>>3<<11|(j&255)>>>3)&65535;switch(m&3){case 0:{while(1){g=o;while(1){b[k>>1]=n;b[k+2>>1]=n;b[k+4>>1]=n;b[k+6>>1]=n;k=k+8|0;if((g|0)<=1)break;else g=g+-1|0}if(!l)break;else{k=k+(p<<1)|0;l=l+-1|0}}return 0}case 3:{h=(g|0)>7;while(1){b[k>>1]=n;b[k+2>>1]=n;b[k+4>>1]=n;g=k+6|0;if(h){m=o;do{m=m+-1|0;b[g>>1]=n;g=k;k=k+8|0;b[k>>1]=n;b[g+10>>1]=n;b[g+12>>1]=n;g=g+14|0}while((m|0)>1);k=g}else k=g;if(!l)break;else{k=k+(p<<1)|0;l=l+-1|0}}return 0}case 2:{h=(g|0)>7;while(1){b[k>>1]=n;b[k+2>>1]=n;g=k+4|0;if(h){m=o;do{m=m+-1|0;b[g>>1]=n;b[k+6>>1]=n;g=k;k=k+8|0;b[k>>1]=n;b[g+10>>1]=n;g=g+12|0}while((m|0)>1);k=g}else k=g;if(!l)break;else{k=k+(p<<1)|0;l=l+-1|0}}return 0}default:{h=(g|0)>7;while(1){b[k>>1]=n;g=k+2|0;if(h){m=o;do{m=m+-1|0;b[g>>1]=n;b[k+4>>1]=n;b[k+6>>1]=n;g=k;k=k+8|0;b[k>>1]=n;g=g+10|0}while((m|0)>1);k=g}else k=g;if(!l)break;else{k=k+(p<<1)|0;l=l+-1|0}}return 0}}}}return 0}function IJ(a,f,g,h,i,j,k,l,m,n,o){a=a|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;p=k&255;l=l&255;n=n&255;k=m&255;if((j+-1|0)>>>0<2){A=((O(n,p)|0)>>>0)/255|0;z=((O(n,l)|0)>>>0)/255|0;y=((O(n,k)|0)>>>0)/255|0}else{A=p;z=l;y=k}x=n^255;if((i|0)==(g|0))switch(j|0){case 1:{k=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0,i)|0)<<1)|0;n=(o|0)!=0;if((h|0)<(f|0)){k=k+(h<<1)|0;k=n?k:k+2|0;l=f-h|0}else{k=k+(f<<1)|0;l=h-f|0}l=l+(n&1)|0;if(!l)return;while(1){l=l+-1|0;f=e[k>>1]|0;b[k>>1]=((((O(d[289258+(f>>>5&63)>>0]|0,x)|0)>>>0)/255|0)+z|0)>>>2<<5|((((O(d[289322+(f>>>11)>>0]|0,x)|0)>>>0)/255|0)+A|0)>>>3<<11|((((O(d[289322+(f&31)>>0]|0,x)|0)>>>0)/255|0)+y|0)>>>3;if(!l)break;else k=k+2|0}return}case 2:{k=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0,i)|0)<<1)|0;n=(o|0)!=0;if((h|0)<(f|0)){k=k+(h<<1)|0;k=n?k:k+2|0;l=f-h|0}else{k=k+(f<<1)|0;l=h-f|0}l=l+(n&1)|0;if(!l)return;while(1){l=l+-1|0;f=e[k>>1]|0;g=(d[289322+(f>>>11)>>0]|0)+A|0;o=(d[289258+(f>>>5&63)>>0]|0)+z|0;f=(d[289322+(f&31)>>0]|0)+y|0;b[k>>1]=(o>>>0<255?o:255)>>>2<<5|(g>>>0<255?g:255)>>>3<<11|(f>>>0<255?f:255)>>>3;if(!l)break;else k=k+2|0}return}case 4:{k=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0,i)|0)<<1)|0;n=(o|0)!=0;if((h|0)<(f|0)){k=k+(h<<1)|0;k=n?k:k+2|0;l=f-h|0}else{k=k+(f<<1)|0;l=h-f|0}l=l+(n&1)|0;if(!l)return;while(1){l=l+-1|0;f=e[k>>1]|0;b[k>>1]=(((O(d[289258+(f>>>5&63)>>0]|0,z)|0)>>>0)/255|0)>>>2<<5|(((O(d[289322+(f>>>11)>>0]|0,A)|0)>>>0)/255|0)>>>3<<11|(((O(d[289322+(f&31)>>0]|0,y)|0)>>>0)/255|0)>>>3;if(!l)break;else k=k+2|0}return}default:{k=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0,i)|0)<<1)|0;n=(o|0)!=0;if((h|0)<(f|0)){k=k+(h<<1)|0;k=n?k:k+2|0;l=f-h|0}else{k=k+(f<<1)|0;l=h-f|0}l=l+(n&1)|0;if(!l)return;n=(z>>>2<<5|y>>>3|A>>>3<<11)&65535;while(1){l=l+-1|0;b[k>>1]=n;if(!l)break;else k=k+2|0}return}}if((h|0)==(f|0))switch(j|0){case 1:{p=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;k=c[a+20>>2]|0;n=(o|0)!=0;if((i|0)<(g|0)){k=k+((O(p,i)|0)<<1)+(h<<1)|0;k=n?k:k+(p<<1)|0;l=g-i|0}else{k=k+((O(p,g)|0)<<1)+(h<<1)|0;l=i-g|0}l=l+(n&1)|0;if(!l)return;while(1){l=l+-1|0;f=e[k>>1]|0;b[k>>1]=((((O(d[289258+(f>>>5&63)>>0]|0,x)|0)>>>0)/255|0)+z|0)>>>2<<5|((((O(d[289322+(f>>>11)>>0]|0,x)|0)>>>0)/255|0)+A|0)>>>3<<11|((((O(d[289322+(f&31)>>0]|0,x)|0)>>>0)/255|0)+y|0)>>>3;if(!l)break;else k=k+(p<<1)|0}return}case 2:{p=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;k=c[a+20>>2]|0;n=(o|0)!=0;if((i|0)<(g|0)){k=k+((O(p,i)|0)<<1)+(h<<1)|0;k=n?k:k+(p<<1)|0;l=g-i|0}else{k=k+((O(p,g)|0)<<1)+(h<<1)|0;l=i-g|0}l=l+(n&1)|0;if(!l)return;while(1){l=l+-1|0;f=e[k>>1]|0;g=(d[289322+(f>>>11)>>0]|0)+A|0;o=(d[289258+(f>>>5&63)>>0]|0)+z|0;f=(d[289322+(f&31)>>0]|0)+y|0;b[k>>1]=(o>>>0<255?o:255)>>>2<<5|(g>>>0<255?g:255)>>>3<<11|(f>>>0<255?f:255)>>>3;if(!l)break;else k=k+(p<<1)|0}return}case 4:{p=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;k=c[a+20>>2]|0;n=(o|0)!=0;if((i|0)<(g|0)){k=k+((O(p,i)|0)<<1)+(h<<1)|0;k=n?k:k+(p<<1)|0;l=g-i|0}else{k=k+((O(p,g)|0)<<1)+(h<<1)|0;l=i-g|0}l=l+(n&1)|0;if(!l)return;while(1){l=l+-1|0;f=e[k>>1]|0;b[k>>1]=(((O(d[289258+(f>>>5&63)>>0]|0,z)|0)>>>0)/255|0)>>>2<<5|(((O(d[289322+(f>>>11)>>0]|0,A)|0)>>>0)/255|0)>>>3<<11|(((O(d[289322+(f&31)>>0]|0,y)|0)>>>0)/255|0)>>>3;if(!l)break;else k=k+(p<<1)|0}return}default:{p=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;k=c[a+20>>2]|0;n=(o|0)!=0;if((i|0)<(g|0)){k=k+((O(p,i)|0)<<1)+(h<<1)|0;k=n?k:k+(p<<1)|0;l=g-i|0}else{k=k+((O(p,g)|0)<<1)+(h<<1)|0;l=i-g|0}l=l+(n&1)|0;if(!l)return;n=(z>>>2<<5|y>>>3|A>>>3<<11)&65535;while(1){l=l+-1|0;b[k>>1]=n;if(!l)break;else k=k+(p<<1)|0}return}}w=f-h|0;k=g-i|0;if((((w|0)<0?0-w|0:w)|0)==(((k|0)<0?0-k|0:k)|0))switch(j|0){case 1:{n=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;l=c[a+20>>2]|0;if((i|0)<(g|0)){l=l+((O(n,i)|0)<<1)+(h<<1)|0;n=n+((h|0)>(f|0)?-1:1)|0;l=(o|0)==0?l+(n<<1)|0:l}else{l=l+((O(n,g)|0)<<1)+(f<<1)|0;k=i-g|0;n=n+((h|0)<(f|0)?-1:1)|0}k=k+((o|0)!=0&1)|0;if(!k)return;while(1){k=k+-1|0;f=e[l>>1]|0;b[l>>1]=((((O(d[289258+(f>>>5&63)>>0]|0,x)|0)>>>0)/255|0)+z|0)>>>2<<5|((((O(d[289322+(f>>>11)>>0]|0,x)|0)>>>0)/255|0)+A|0)>>>3<<11|((((O(d[289322+(f&31)>>0]|0,x)|0)>>>0)/255|0)+y|0)>>>3;if(!k)break;else l=l+(n<<1)|0}return}case 2:{n=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;l=c[a+20>>2]|0;if((i|0)<(g|0)){l=l+((O(n,i)|0)<<1)+(h<<1)|0;n=n+((h|0)>(f|0)?-1:1)|0;l=(o|0)==0?l+(n<<1)|0:l}else{l=l+((O(n,g)|0)<<1)+(f<<1)|0;k=i-g|0;n=n+((h|0)<(f|0)?-1:1)|0}k=k+((o|0)!=0&1)|0;if(!k)return;while(1){k=k+-1|0;f=e[l>>1]|0;g=(d[289322+(f>>>11)>>0]|0)+A|0;o=(d[289258+(f>>>5&63)>>0]|0)+z|0;f=(d[289322+(f&31)>>0]|0)+y|0;b[l>>1]=(o>>>0<255?o:255)>>>2<<5|(g>>>0<255?g:255)>>>3<<11|(f>>>0<255?f:255)>>>3;if(!k)break;else l=l+(n<<1)|0}return}case 4:{n=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;l=c[a+20>>2]|0;if((i|0)<(g|0)){l=l+((O(n,i)|0)<<1)+(h<<1)|0;n=n+((h|0)>(f|0)?-1:1)|0;l=(o|0)==0?l+(n<<1)|0:l}else{l=l+((O(n,g)|0)<<1)+(f<<1)|0;k=i-g|0;n=n+((h|0)<(f|0)?-1:1)|0}k=k+((o|0)!=0&1)|0;if(!k)return;while(1){k=k+-1|0;f=e[l>>1]|0;b[l>>1]=(((O(d[289258+(f>>>5&63)>>0]|0,z)|0)>>>0)/255|0)>>>2<<5|(((O(d[289322+(f>>>11)>>0]|0,A)|0)>>>0)/255|0)>>>3<<11|(((O(d[289322+(f&31)>>0]|0,y)|0)>>>0)/255|0)>>>3;if(!k)break;else l=l+(n<<1)|0}return}default:{n=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;l=c[a+20>>2]|0;if((i|0)<(g|0)){g=l+((O(n,i)|0)<<1)+(h<<1)|0;p=n+((h|0)>(f|0)?-1:1)|0;l=k;k=(o|0)==0?g+(p<<1)|0:g}else{k=l+((O(n,g)|0)<<1)+(f<<1)|0;l=i-g|0;p=n+((h|0)<(f|0)?-1:1)|0}l=l+((o|0)!=0&1)|0;if(!l)return;n=(z>>>2<<5|y>>>3|A>>>3<<11)&65535;while(1){l=l+-1|0;b[k>>1]=n;if(!l)break;else k=k+(p<<1)|0}return}}switch(j|0){case 1:{k=h-f|0;k=(k|0)<0?0-k|0:k;l=i-g|0;l=(l|0)<0?0-l|0:l;if((k|0)<(l|0)){v=k<<1;m=1;p=0;n=k-l|0;w=v;v=v-l|0;k=l}else{v=l<<1;m=0;p=1;n=l-k|0;w=v;v=v-k|0}u=n<<1;t=(h|0)<(f|0);s=t?0-p|0:p;t=t?-1:1;q=(i|0)<(g|0);r=q?0-m|0:m;q=q?-1:1;i=k+((o|0)!=0&1)|0;if((i|0)<=0)return;h=c[a+20>>2]|0;j=c[a+16>>2]|0;m=g;n=f;p=0;k=v;while(1){l=h+(O(j,m)|0)+(n<<1)|0;f=e[l>>1]|0;b[l>>1]=((((O(d[289258+(f>>>5&63)>>0]|0,x)|0)>>>0)/255|0)+z|0)>>>2<<5|((((O(d[289322+(f>>>11)>>0]|0,x)|0)>>>0)/255|0)+A|0)>>>3<<11|((((O(d[289322+(f&31)>>0]|0,x)|0)>>>0)/255|0)+y|0)>>>3;l=(k|0)<0;p=p+1|0;if((p|0)>=(i|0))break;else{m=m+(l?r:q)|0;n=(l?s:t)+n|0;k=(l?w:u)+k|0}}return}case 2:{k=h-f|0;k=(k|0)<0?0-k|0:k;l=i-g|0;l=(l|0)<0?0-l|0:l;if((k|0)<(l|0)){v=k<<1;m=1;p=0;n=k-l|0;w=v;v=v-l|0;k=l}else{v=l<<1;m=0;p=1;n=l-k|0;w=v;v=v-k|0}u=n<<1;t=(h|0)<(f|0);s=t?0-p|0:p;t=t?-1:1;q=(i|0)<(g|0);r=q?0-m|0:m;q=q?-1:1;i=k+((o|0)!=0&1)|0;if((i|0)<=0)return;h=c[a+20>>2]|0;j=c[a+16>>2]|0;m=g;n=f;p=0;k=v;while(1){l=h+(O(j,m)|0)+(n<<1)|0;f=e[l>>1]|0;g=(d[289322+(f>>>11)>>0]|0)+A|0;o=(d[289258+(f>>>5&63)>>0]|0)+z|0;f=(d[289322+(f&31)>>0]|0)+y|0;b[l>>1]=(o>>>0<255?o:255)>>>2<<5|(g>>>0<255?g:255)>>>3<<11|(f>>>0<255?f:255)>>>3;l=(k|0)<0;p=p+1|0;if((p|0)>=(i|0))break;else{m=m+(l?r:q)|0;n=(l?s:t)+n|0;k=(l?w:u)+k|0}}return}case 4:{k=h-f|0;k=(k|0)<0?0-k|0:k;l=i-g|0;l=(l|0)<0?0-l|0:l;if((k|0)<(l|0)){v=k<<1;m=1;p=0;n=k-l|0;w=v;v=v-l|0;k=l}else{v=l<<1;m=0;p=1;n=l-k|0;w=v;v=v-k|0}u=n<<1;t=(h|0)<(f|0);s=t?0-p|0:p;t=t?-1:1;q=(i|0)<(g|0);r=q?0-m|0:m;q=q?-1:1;i=k+((o|0)!=0&1)|0;if((i|0)<=0)return;h=c[a+20>>2]|0;j=c[a+16>>2]|0;m=g;n=f;p=0;k=v;while(1){l=h+(O(j,m)|0)+(n<<1)|0;f=e[l>>1]|0;b[l>>1]=(((O(d[289258+(f>>>5&63)>>0]|0,z)|0)>>>0)/255|0)>>>2<<5|(((O(d[289322+(f>>>11)>>0]|0,A)|0)>>>0)/255|0)>>>3<<11|(((O(d[289322+(f&31)>>0]|0,y)|0)>>>0)/255|0)>>>3;l=(k|0)<0;p=p+1|0;if((p|0)>=(i|0))break;else{m=m+(l?r:q)|0;n=(l?s:t)+n|0;k=(l?w:u)+k|0}}return}default:{l=h-f|0;l=(l|0)<0?0-l|0:l;n=i-g|0;n=(n|0)<0?0-n|0:n;if((l|0)<(n|0)){k=l<<1;j=1;m=0;p=l-n|0;w=k;k=k-n|0;l=n}else{k=n<<1;j=0;m=1;p=n-l|0;w=k;k=k-l|0}v=p<<1;u=(h|0)<(f|0);t=u?0-m|0:m;u=u?-1:1;r=(i|0)<(g|0);s=r?0-j|0:j;r=r?-1:1;h=l+((o|0)!=0&1)|0;if((h|0)<=0)return;q=c[a+20>>2]|0;i=c[a+16>>2]|0;j=(z>>>2<<5|y>>>3|A>>>3<<11)&65535;m=g;n=f;p=0;while(1){b[q+(O(i,m)|0)+(n<<1)>>1]=j;l=(k|0)<0;p=p+1|0;if((p|0)>=(h|0))break;else{m=m+(l?s:r)|0;n=(l?t:u)+n|0;k=(l?w:v)+k|0}}return}}}function JJ(a,f,g,h,i,j,k,l,m,n,o){a=a|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;I=c[a+4>>2]|0;k=k&255;l=l&255;m=m&255;n=n&255;if((j+-1|0)>>>0<2){L=((O(n,k)|0)>>>0)/255|0;K=((O(n,l)|0)>>>0)/255|0;J=((O(n,m)|0)>>>0)/255|0}else{L=k;K=l;J=m}H=n^255;if((i|0)==(g|0))switch(j|0){case 1:{k=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[I+9>>0]|0|0)|0,i)|0)<<1)|0;l=(o|0)!=0;if((h|0)<(f|0)){a=k+(h<<1)|0;a=l?a:a+2|0;k=f-h|0}else{a=k+(f<<1)|0;k=h-f|0}l=k+(l&1)|0;if(!l)return;n=d[I+28>>0]|0;p=c[18232+(n<<2)>>2]|0;i=c[I+12>>2]|0;g=d[I+29>>0]|0;h=c[18232+(g<<2)>>2]|0;q=c[I+16>>2]|0;j=d[I+30>>0]|0;r=c[18232+(j<<2)>>2]|0;s=c[I+20>>2]|0;t=c[I+24>>2]|0;u=d[I+32>>0]|0;v=d[I+33>>0]|0;m=d[I+34>>0]|0;k=a;while(1){l=l+-1|0;I=e[k>>1]|0;b[k>>1]=((((O(d[h+((q&I)>>>v)>>0]|0,H)|0)>>>0)/255|0)+K|0)>>>g<<v|((((O(d[p+((I&i)>>>u)>>0]|0,H)|0)>>>0)/255|0)+L|0)>>>n<<u|t|((((O(d[r+((s&I)>>>m)>>0]|0,H)|0)>>>0)/255|0)+J|0)>>>j<<m;if(!l)break;else k=k+2|0}return}case 2:{k=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[I+9>>0]|0|0)|0,i)|0)<<1)|0;l=(o|0)!=0;if((h|0)<(f|0)){a=k+(h<<1)|0;a=l?a:a+2|0;k=f-h|0}else{a=k+(f<<1)|0;k=h-f|0}l=k+(l&1)|0;if(!l)return;n=d[I+28>>0]|0;p=c[18232+(n<<2)>>2]|0;i=c[I+12>>2]|0;g=d[I+29>>0]|0;h=c[18232+(g<<2)>>2]|0;q=c[I+16>>2]|0;j=d[I+30>>0]|0;r=c[18232+(j<<2)>>2]|0;s=c[I+20>>2]|0;t=c[I+24>>2]|0;u=d[I+32>>0]|0;v=d[I+33>>0]|0;m=d[I+34>>0]|0;k=a;while(1){l=l+-1|0;I=e[k>>1]|0;f=(d[p+((I&i)>>>u)>>0]|0)+L|0;H=(d[h+((q&I)>>>v)>>0]|0)+K|0;I=(d[r+((s&I)>>>m)>>0]|0)+J|0;b[k>>1]=(H>>>0<255?H:255)>>>g<<v|(f>>>0<255?f:255)>>>n<<u|t|(I>>>0<255?I:255)>>>j<<m;if(!l)break;else k=k+2|0}return}case 4:{k=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[I+9>>0]|0|0)|0,i)|0)<<1)|0;l=(o|0)!=0;if((h|0)<(f|0)){a=k+(h<<1)|0;a=l?a:a+2|0;k=f-h|0}else{a=k+(f<<1)|0;k=h-f|0}l=k+(l&1)|0;if(!l)return;n=d[I+28>>0]|0;p=c[18232+(n<<2)>>2]|0;i=c[I+12>>2]|0;g=d[I+29>>0]|0;h=c[18232+(g<<2)>>2]|0;q=c[I+16>>2]|0;j=d[I+30>>0]|0;r=c[18232+(j<<2)>>2]|0;s=c[I+20>>2]|0;t=c[I+24>>2]|0;u=d[I+32>>0]|0;v=d[I+33>>0]|0;m=d[I+34>>0]|0;k=a;while(1){l=l+-1|0;I=e[k>>1]|0;b[k>>1]=(((O(d[h+((q&I)>>>v)>>0]|0,K)|0)>>>0)/255|0)>>>g<<v|(((O(d[p+((I&i)>>>u)>>0]|0,L)|0)>>>0)/255|0)>>>n<<u|t|(((O(d[r+((s&I)>>>m)>>0]|0,J)|0)>>>0)/255|0)>>>j<<m;if(!l)break;else k=k+2|0}return}default:{k=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[I+9>>0]|0|0)|0,i)|0)<<1)|0;m=(o|0)!=0;if((h|0)<(f|0)){k=k+(h<<1)|0;k=m?k:k+2|0;l=f-h|0}else{k=k+(f<<1)|0;l=h-f|0}l=l+(m&1)|0;if(!l)return;m=(K>>>(d[I+29>>0]|0)<<(d[I+33>>0]|0)|L>>>(d[I+28>>0]|0)<<(d[I+32>>0]|0)|c[I+24>>2]|J>>>(d[I+30>>0]|0)<<(d[I+34>>0]|0))&65535;while(1){l=l+-1|0;b[k>>1]=m;if(!l)break;else k=k+2|0}return}}if((h|0)==(f|0))switch(j|0){case 1:{w=(c[a+16>>2]|0)/(d[I+9>>0]|0|0)|0;k=c[a+20>>2]|0;l=(o|0)!=0;if((i|0)<(g|0)){a=k+((O(w,i)|0)<<1)+(h<<1)|0;a=l?a:a+(w<<1)|0;k=g-i|0}else{a=k+((O(w,g)|0)<<1)+(h<<1)|0;k=i-g|0}l=k+(l&1)|0;if(!l)return;n=d[I+28>>0]|0;p=c[18232+(n<<2)>>2]|0;i=c[I+12>>2]|0;g=d[I+29>>0]|0;h=c[18232+(g<<2)>>2]|0;q=c[I+16>>2]|0;j=d[I+30>>0]|0;r=c[18232+(j<<2)>>2]|0;s=c[I+20>>2]|0;t=c[I+24>>2]|0;u=d[I+32>>0]|0;v=d[I+33>>0]|0;m=d[I+34>>0]|0;k=a;while(1){l=l+-1|0;I=e[k>>1]|0;b[k>>1]=((((O(d[h+((q&I)>>>v)>>0]|0,H)|0)>>>0)/255|0)+K|0)>>>g<<v|((((O(d[p+((I&i)>>>u)>>0]|0,H)|0)>>>0)/255|0)+L|0)>>>n<<u|t|((((O(d[r+((s&I)>>>m)>>0]|0,H)|0)>>>0)/255|0)+J|0)>>>j<<m;if(!l)break;else k=k+(w<<1)|0}return}case 2:{w=(c[a+16>>2]|0)/(d[I+9>>0]|0|0)|0;k=c[a+20>>2]|0;l=(o|0)!=0;if((i|0)<(g|0)){a=k+((O(w,i)|0)<<1)+(h<<1)|0;a=l?a:a+(w<<1)|0;k=g-i|0}else{a=k+((O(w,g)|0)<<1)+(h<<1)|0;k=i-g|0}l=k+(l&1)|0;if(!l)return;n=d[I+28>>0]|0;p=c[18232+(n<<2)>>2]|0;i=c[I+12>>2]|0;g=d[I+29>>0]|0;h=c[18232+(g<<2)>>2]|0;q=c[I+16>>2]|0;j=d[I+30>>0]|0;r=c[18232+(j<<2)>>2]|0;s=c[I+20>>2]|0;t=c[I+24>>2]|0;u=d[I+32>>0]|0;v=d[I+33>>0]|0;m=d[I+34>>0]|0;k=a;while(1){l=l+-1|0;I=e[k>>1]|0;f=(d[p+((I&i)>>>u)>>0]|0)+L|0;H=(d[h+((q&I)>>>v)>>0]|0)+K|0;I=(d[r+((s&I)>>>m)>>0]|0)+J|0;b[k>>1]=(H>>>0<255?H:255)>>>g<<v|(f>>>0<255?f:255)>>>n<<u|t|(I>>>0<255?I:255)>>>j<<m;if(!l)break;else k=k+(w<<1)|0}return}case 4:{w=(c[a+16>>2]|0)/(d[I+9>>0]|0|0)|0;k=c[a+20>>2]|0;l=(o|0)!=0;if((i|0)<(g|0)){a=k+((O(w,i)|0)<<1)+(h<<1)|0;a=l?a:a+(w<<1)|0;k=g-i|0}else{a=k+((O(w,g)|0)<<1)+(h<<1)|0;k=i-g|0}l=k+(l&1)|0;if(!l)return;n=d[I+28>>0]|0;p=c[18232+(n<<2)>>2]|0;i=c[I+12>>2]|0;g=d[I+29>>0]|0;h=c[18232+(g<<2)>>2]|0;q=c[I+16>>2]|0;j=d[I+30>>0]|0;r=c[18232+(j<<2)>>2]|0;s=c[I+20>>2]|0;t=c[I+24>>2]|0;u=d[I+32>>0]|0;v=d[I+33>>0]|0;m=d[I+34>>0]|0;k=a;while(1){l=l+-1|0;I=e[k>>1]|0;b[k>>1]=(((O(d[h+((q&I)>>>v)>>0]|0,K)|0)>>>0)/255|0)>>>g<<v|(((O(d[p+((I&i)>>>u)>>0]|0,L)|0)>>>0)/255|0)>>>n<<u|t|(((O(d[r+((s&I)>>>m)>>0]|0,J)|0)>>>0)/255|0)>>>j<<m;if(!l)break;else k=k+(w<<1)|0}return}default:{n=(c[a+16>>2]|0)/(d[I+9>>0]|0|0)|0;k=c[a+20>>2]|0;m=(o|0)!=0;if((i|0)<(g|0)){k=k+((O(n,i)|0)<<1)+(h<<1)|0;k=m?k:k+(n<<1)|0;l=g-i|0}else{k=k+((O(n,g)|0)<<1)+(h<<1)|0;l=i-g|0}l=l+(m&1)|0;if(!l)return;m=(K>>>(d[I+29>>0]|0)<<(d[I+33>>0]|0)|L>>>(d[I+28>>0]|0)<<(d[I+32>>0]|0)|c[I+24>>2]|J>>>(d[I+30>>0]|0)<<(d[I+34>>0]|0))&65535;while(1){l=l+-1|0;b[k>>1]=m;if(!l)break;else k=k+(n<<1)|0}return}}G=f-h|0;k=g-i|0;if((((G|0)<0?0-G|0:G)|0)==(((k|0)<0?0-k|0:k)|0))switch(j|0){case 1:{m=(c[a+16>>2]|0)/(d[I+9>>0]|0|0)|0;l=c[a+20>>2]|0;if((i|0)<(g|0)){w=l+((O(m,i)|0)<<1)+(h<<1)|0;a=m+((h|0)>(f|0)?-1:1)|0;w=(o|0)==0?w+(a<<1)|0:w}else{w=l+((O(m,g)|0)<<1)+(f<<1)|0;k=i-g|0;a=m+((h|0)<(f|0)?-1:1)|0}k=k+((o|0)!=0&1)|0;if(!k)return;n=d[I+28>>0]|0;p=c[18232+(n<<2)>>2]|0;i=c[I+12>>2]|0;g=d[I+29>>0]|0;h=c[18232+(g<<2)>>2]|0;q=c[I+16>>2]|0;j=d[I+30>>0]|0;r=c[18232+(j<<2)>>2]|0;s=c[I+20>>2]|0;t=c[I+24>>2]|0;u=d[I+32>>0]|0;v=d[I+33>>0]|0;m=d[I+34>>0]|0;l=k;k=w;while(1){l=l+-1|0;I=e[k>>1]|0;b[k>>1]=((((O(d[h+((q&I)>>>v)>>0]|0,H)|0)>>>0)/255|0)+K|0)>>>g<<v|((((O(d[p+((I&i)>>>u)>>0]|0,H)|0)>>>0)/255|0)+L|0)>>>n<<u|t|((((O(d[r+((s&I)>>>m)>>0]|0,H)|0)>>>0)/255|0)+J|0)>>>j<<m;if(!l)break;else k=k+(a<<1)|0}return}case 2:{m=(c[a+16>>2]|0)/(d[I+9>>0]|0|0)|0;l=c[a+20>>2]|0;if((i|0)<(g|0)){w=l+((O(m,i)|0)<<1)+(h<<1)|0;a=m+((h|0)>(f|0)?-1:1)|0;w=(o|0)==0?w+(a<<1)|0:w}else{w=l+((O(m,g)|0)<<1)+(f<<1)|0;k=i-g|0;a=m+((h|0)<(f|0)?-1:1)|0}k=k+((o|0)!=0&1)|0;if(!k)return;n=d[I+28>>0]|0;p=c[18232+(n<<2)>>2]|0;i=c[I+12>>2]|0;g=d[I+29>>0]|0;h=c[18232+(g<<2)>>2]|0;q=c[I+16>>2]|0;j=d[I+30>>0]|0;r=c[18232+(j<<2)>>2]|0;s=c[I+20>>2]|0;t=c[I+24>>2]|0;u=d[I+32>>0]|0;v=d[I+33>>0]|0;m=d[I+34>>0]|0;l=k;k=w;while(1){l=l+-1|0;I=e[k>>1]|0;f=(d[p+((I&i)>>>u)>>0]|0)+L|0;H=(d[h+((q&I)>>>v)>>0]|0)+K|0;I=(d[r+((s&I)>>>m)>>0]|0)+J|0;b[k>>1]=(H>>>0<255?H:255)>>>g<<v|(f>>>0<255?f:255)>>>n<<u|t|(I>>>0<255?I:255)>>>j<<m;if(!l)break;else k=k+(a<<1)|0}return}case 4:{m=(c[a+16>>2]|0)/(d[I+9>>0]|0|0)|0;l=c[a+20>>2]|0;if((i|0)<(g|0)){w=l+((O(m,i)|0)<<1)+(h<<1)|0;a=m+((h|0)>(f|0)?-1:1)|0;w=(o|0)==0?w+(a<<1)|0:w}else{w=l+((O(m,g)|0)<<1)+(f<<1)|0;k=i-g|0;a=m+((h|0)<(f|0)?-1:1)|0}k=k+((o|0)!=0&1)|0;if(!k)return;n=d[I+28>>0]|0;p=c[18232+(n<<2)>>2]|0;i=c[I+12>>2]|0;g=d[I+29>>0]|0;h=c[18232+(g<<2)>>2]|0;q=c[I+16>>2]|0;j=d[I+30>>0]|0;r=c[18232+(j<<2)>>2]|0;s=c[I+20>>2]|0;t=c[I+24>>2]|0;u=d[I+32>>0]|0;v=d[I+33>>0]|0;m=d[I+34>>0]|0;l=k;k=w;while(1){l=l+-1|0;I=e[k>>1]|0;b[k>>1]=(((O(d[h+((q&I)>>>v)>>0]|0,K)|0)>>>0)/255|0)>>>g<<v|(((O(d[p+((I&i)>>>u)>>0]|0,L)|0)>>>0)/255|0)>>>n<<u|t|(((O(d[r+((s&I)>>>m)>>0]|0,J)|0)>>>0)/255|0)>>>j<<m;if(!l)break;else k=k+(a<<1)|0}return}default:{m=(c[a+16>>2]|0)/(d[I+9>>0]|0|0)|0;l=c[a+20>>2]|0;if((i|0)<(g|0)){H=l+((O(m,i)|0)<<1)+(h<<1)|0;n=m+((h|0)>(f|0)?-1:1)|0;l=k;k=(o|0)==0?H+(n<<1)|0:H}else{k=l+((O(m,g)|0)<<1)+(f<<1)|0;l=i-g|0;n=m+((h|0)<(f|0)?-1:1)|0}l=l+((o|0)!=0&1)|0;if(!l)return;m=(K>>>(d[I+29>>0]|0)<<(d[I+33>>0]|0)|L>>>(d[I+28>>0]|0)<<(d[I+32>>0]|0)|c[I+24>>2]|J>>>(d[I+30>>0]|0)<<(d[I+34>>0]|0))&65535;while(1){l=l+-1|0;b[k>>1]=m;if(!l)break;else k=k+(n<<1)|0}return}}else switch(j|0){case 1:{k=h-f|0;k=(k|0)<0?0-k|0:k;l=i-g|0;l=(l|0)<0?0-l|0:l;if((k|0)<(l|0)){F=k<<1;j=1;n=0;m=k-l|0;G=F;F=F-l|0;k=l}else{F=l<<1;j=0;n=1;m=l-k|0;G=F;F=F-k|0}E=m<<1;D=(h|0)<(f|0);C=D?0-n|0:n;D=D?-1:1;A=(i|0)<(g|0);B=A?0-j|0:j;A=A?-1:1;y=k+((o|0)!=0&1)|0;if((y|0)<=0)return;z=c[a+20>>2]|0;q=c[a+16>>2]|0;p=d[I+28>>0]|0;r=c[18232+(p<<2)>>2]|0;s=c[I+12>>2]|0;i=d[I+29>>0]|0;t=c[18232+(i<<2)>>2]|0;u=c[I+16>>2]|0;h=d[I+30>>0]|0;v=c[18232+(h<<2)>>2]|0;a=c[I+20>>2]|0;w=c[I+24>>2]|0;o=d[I+32>>0]|0;x=d[I+33>>0]|0;j=d[I+34>>0]|0;m=f;n=0;k=F;while(1){l=z+(O(q,g)|0)+(m<<1)|0;I=e[l>>1]|0;b[l>>1]=((((O(d[t+((u&I)>>>x)>>0]|0,H)|0)>>>0)/255|0)+K|0)>>>i<<x|((((O(d[r+((I&s)>>>o)>>0]|0,H)|0)>>>0)/255|0)+L|0)>>>p<<o|w|((((O(d[v+((a&I)>>>j)>>0]|0,H)|0)>>>0)/255|0)+J|0)>>>h<<j;l=(k|0)<0;n=n+1|0;if((n|0)>=(y|0))break;else{g=g+(l?B:A)|0;m=(l?C:D)+m|0;k=(l?G:E)+k|0}}return}case 2:{k=h-f|0;k=(k|0)<0?0-k|0:k;l=i-g|0;l=(l|0)<0?0-l|0:l;if((k|0)<(l|0)){F=k<<1;j=1;n=0;m=k-l|0;G=F;F=F-l|0;k=l}else{F=l<<1;j=0;n=1;m=l-k|0;G=F;F=F-k|0}E=m<<1;D=(h|0)<(f|0);C=D?0-n|0:n;D=D?-1:1;A=(i|0)<(g|0);B=A?0-j|0:j;A=A?-1:1;y=k+((o|0)!=0&1)|0;if((y|0)<=0)return;z=c[a+20>>2]|0;q=c[a+16>>2]|0;p=d[I+28>>0]|0;r=c[18232+(p<<2)>>2]|0;s=c[I+12>>2]|0;i=d[I+29>>0]|0;t=c[18232+(i<<2)>>2]|0;u=c[I+16>>2]|0;h=d[I+30>>0]|0;v=c[18232+(h<<2)>>2]|0;a=c[I+20>>2]|0;w=c[I+24>>2]|0;o=d[I+32>>0]|0;x=d[I+33>>0]|0;j=d[I+34>>0]|0;m=f;n=0;k=F;while(1){l=z+(O(q,g)|0)+(m<<1)|0;I=e[l>>1]|0;f=(d[r+((I&s)>>>o)>>0]|0)+L|0;H=(d[t+((u&I)>>>x)>>0]|0)+K|0;I=(d[v+((a&I)>>>j)>>0]|0)+J|0;b[l>>1]=(H>>>0<255?H:255)>>>i<<x|(f>>>0<255?f:255)>>>p<<o|w|(I>>>0<255?I:255)>>>h<<j;l=(k|0)<0;n=n+1|0;if((n|0)>=(y|0))break;else{g=g+(l?B:A)|0;m=(l?C:D)+m|0;k=(l?G:E)+k|0}}return}case 4:{k=h-f|0;k=(k|0)<0?0-k|0:k;l=i-g|0;l=(l|0)<0?0-l|0:l;if((k|0)<(l|0)){F=k<<1;j=1;n=0;m=k-l|0;G=F;F=F-l|0;k=l}else{F=l<<1;j=0;n=1;m=l-k|0;G=F;F=F-k|0}E=m<<1;D=(h|0)<(f|0);C=D?0-n|0:n;D=D?-1:1;A=(i|0)<(g|0);B=A?0-j|0:j;A=A?-1:1;y=k+((o|0)!=0&1)|0;if((y|0)<=0)return;z=c[a+20>>2]|0;q=c[a+16>>2]|0;p=d[I+28>>0]|0;r=c[18232+(p<<2)>>2]|0;s=c[I+12>>2]|0;i=d[I+29>>0]|0;t=c[18232+(i<<2)>>2]|0;u=c[I+16>>2]|0;h=d[I+30>>0]|0;v=c[18232+(h<<2)>>2]|0;a=c[I+20>>2]|0;w=c[I+24>>2]|0;o=d[I+32>>0]|0;x=d[I+33>>0]|0;j=d[I+34>>0]|0;m=f;n=0;k=F;while(1){l=z+(O(q,g)|0)+(m<<1)|0;I=e[l>>1]|0;b[l>>1]=(((O(d[t+((u&I)>>>x)>>0]|0,K)|0)>>>0)/255|0)>>>i<<x|(((O(d[r+((I&s)>>>o)>>0]|0,L)|0)>>>0)/255|0)>>>p<<o|w|(((O(d[v+((a&I)>>>j)>>0]|0,J)|0)>>>0)/255|0)>>>h<<j;l=(k|0)<0;n=n+1|0;if((n|0)>=(y|0))break;else{g=g+(l?B:A)|0;m=(l?C:D)+m|0;k=(l?G:E)+k|0}}return}default:{l=h-f|0;l=(l|0)<0?0-l|0:l;m=i-g|0;m=(m|0)<0?0-m|0:m;if((l|0)<(m|0)){k=l<<1;p=1;j=0;n=l-m|0;v=k;k=k-m|0;l=m}else{k=m<<1;p=0;j=1;n=m-l|0;v=k;k=k-l|0}u=n<<1;t=(h|0)<(f|0);s=t?0-j|0:j;t=t?-1:1;q=(i|0)<(g|0);r=q?0-p|0:p;q=q?-1:1;i=l+((o|0)!=0&1)|0;if((i|0)<=0)return;h=c[a+20>>2]|0;p=c[a+16>>2]|0;j=(K>>>(d[I+29>>0]|0)<<(d[I+33>>0]|0)|L>>>(d[I+28>>0]|0)<<(d[I+32>>0]|0)|c[I+24>>2]|J>>>(d[I+30>>0]|0)<<(d[I+34>>0]|0))&65535;m=f;n=0;while(1){b[h+(O(p,g)|0)+(m<<1)>>1]=j;l=(k|0)<0;n=n+1|0;if((n|0)>=(i|0))break;else{g=g+(l?r:q)|0;m=(l?s:t)+m|0;k=(l?v:u)+k|0}}return}}}function KJ(a,f,g,h,i,j,k,l,m,n,o){a=a|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;n=n|0;o=o|0;var p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;p=k&255;l=l&255;n=n&255;k=m&255;if((j+-1|0)>>>0<2){A=((O(n,p)|0)>>>0)/255|0;z=((O(n,l)|0)>>>0)/255|0;y=((O(n,k)|0)>>>0)/255|0}else{A=p;z=l;y=k}x=n^255;if((i|0)==(g|0))switch(j|0){case 1:{k=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0,i)|0)<<1)|0;n=(o|0)!=0;if((h|0)<(f|0)){k=k+(h<<1)|0;k=n?k:k+2|0;l=f-h|0}else{k=k+(f<<1)|0;l=h-f|0}l=l+(n&1)|0;if(!l)return;while(1){l=l+-1|0;f=e[k>>1]|0;b[k>>1]=((((O(d[289322+(f>>>5&31)>>0]|0,x)|0)>>>0)/255|0)+z|0)>>>3<<5|((((O(d[289322+(f>>>10&31)>>0]|0,x)|0)>>>0)/255|0)+A|0)>>>3<<10|((((O(d[289322+(f&31)>>0]|0,x)|0)>>>0)/255|0)+y|0)>>>3;if(!l)break;else k=k+2|0}return}case 2:{k=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0,i)|0)<<1)|0;n=(o|0)!=0;if((h|0)<(f|0)){k=k+(h<<1)|0;k=n?k:k+2|0;l=f-h|0}else{k=k+(f<<1)|0;l=h-f|0}l=l+(n&1)|0;if(!l)return;while(1){l=l+-1|0;f=e[k>>1]|0;g=(d[289322+(f>>>10&31)>>0]|0)+A|0;o=(d[289322+(f>>>5&31)>>0]|0)+z|0;f=(d[289322+(f&31)>>0]|0)+y|0;b[k>>1]=(o>>>0<255?o:255)>>>3<<5|(g>>>0<255?g:255)>>>3<<10|(f>>>0<255?f:255)>>>3;if(!l)break;else k=k+2|0}return}case 4:{k=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0,i)|0)<<1)|0;n=(o|0)!=0;if((h|0)<(f|0)){k=k+(h<<1)|0;k=n?k:k+2|0;l=f-h|0}else{k=k+(f<<1)|0;l=h-f|0}l=l+(n&1)|0;if(!l)return;while(1){l=l+-1|0;f=e[k>>1]|0;b[k>>1]=(((O(d[289322+(f>>>5&31)>>0]|0,z)|0)>>>0)/255|0)>>>3<<5|(((O(d[289322+(f>>>10&31)>>0]|0,A)|0)>>>0)/255|0)>>>3<<10|(((O(d[289322+(f&31)>>0]|0,y)|0)>>>0)/255|0)>>>3;if(!l)break;else k=k+2|0}return}default:{k=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0,i)|0)<<1)|0;n=(o|0)!=0;if((h|0)<(f|0)){k=k+(h<<1)|0;k=n?k:k+2|0;l=f-h|0}else{k=k+(f<<1)|0;l=h-f|0}l=l+(n&1)|0;if(!l)return;n=(z>>>3<<5|y>>>3|A>>>3<<10)&65535;while(1){l=l+-1|0;b[k>>1]=n;if(!l)break;else k=k+2|0}return}}if((h|0)==(f|0))switch(j|0){case 1:{p=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;k=c[a+20>>2]|0;n=(o|0)!=0;if((i|0)<(g|0)){k=k+((O(p,i)|0)<<1)+(h<<1)|0;k=n?k:k+(p<<1)|0;l=g-i|0}else{k=k+((O(p,g)|0)<<1)+(h<<1)|0;l=i-g|0}l=l+(n&1)|0;if(!l)return;while(1){l=l+-1|0;f=e[k>>1]|0;b[k>>1]=((((O(d[289322+(f>>>5&31)>>0]|0,x)|0)>>>0)/255|0)+z|0)>>>3<<5|((((O(d[289322+(f>>>10&31)>>0]|0,x)|0)>>>0)/255|0)+A|0)>>>3<<10|((((O(d[289322+(f&31)>>0]|0,x)|0)>>>0)/255|0)+y|0)>>>3;if(!l)break;else k=k+(p<<1)|0}return}case 2:{p=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;k=c[a+20>>2]|0;n=(o|0)!=0;if((i|0)<(g|0)){k=k+((O(p,i)|0)<<1)+(h<<1)|0;k=n?k:k+(p<<1)|0;l=g-i|0}else{k=k+((O(p,g)|0)<<1)+(h<<1)|0;l=i-g|0}l=l+(n&1)|0;if(!l)return;while(1){l=l+-1|0;f=e[k>>1]|0;g=(d[289322+(f>>>10&31)>>0]|0)+A|0;o=(d[289322+(f>>>5&31)>>0]|0)+z|0;f=(d[289322+(f&31)>>0]|0)+y|0;b[k>>1]=(o>>>0<255?o:255)>>>3<<5|(g>>>0<255?g:255)>>>3<<10|(f>>>0<255?f:255)>>>3;if(!l)break;else k=k+(p<<1)|0}return}case 4:{p=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;k=c[a+20>>2]|0;n=(o|0)!=0;if((i|0)<(g|0)){k=k+((O(p,i)|0)<<1)+(h<<1)|0;k=n?k:k+(p<<1)|0;l=g-i|0}else{k=k+((O(p,g)|0)<<1)+(h<<1)|0;l=i-g|0}l=l+(n&1)|0;if(!l)return;while(1){l=l+-1|0;f=e[k>>1]|0;b[k>>1]=(((O(d[289322+(f>>>5&31)>>0]|0,z)|0)>>>0)/255|0)>>>3<<5|(((O(d[289322+(f>>>10&31)>>0]|0,A)|0)>>>0)/255|0)>>>3<<10|(((O(d[289322+(f&31)>>0]|0,y)|0)>>>0)/255|0)>>>3;if(!l)break;else k=k+(p<<1)|0}return}default:{p=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;k=c[a+20>>2]|0;n=(o|0)!=0;if((i|0)<(g|0)){k=k+((O(p,i)|0)<<1)+(h<<1)|0;k=n?k:k+(p<<1)|0;l=g-i|0}else{k=k+((O(p,g)|0)<<1)+(h<<1)|0;l=i-g|0}l=l+(n&1)|0;if(!l)return;n=(z>>>3<<5|y>>>3|A>>>3<<10)&65535;while(1){l=l+-1|0;b[k>>1]=n;if(!l)break;else k=k+(p<<1)|0}return}}w=f-h|0;k=g-i|0;if((((w|0)<0?0-w|0:w)|0)==(((k|0)<0?0-k|0:k)|0))switch(j|0){case 1:{n=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;l=c[a+20>>2]|0;if((i|0)<(g|0)){l=l+((O(n,i)|0)<<1)+(h<<1)|0;n=n+((h|0)>(f|0)?-1:1)|0;l=(o|0)==0?l+(n<<1)|0:l}else{l=l+((O(n,g)|0)<<1)+(f<<1)|0;k=i-g|0;n=n+((h|0)<(f|0)?-1:1)|0}k=k+((o|0)!=0&1)|0;if(!k)return;while(1){k=k+-1|0;f=e[l>>1]|0;b[l>>1]=((((O(d[289322+(f>>>5&31)>>0]|0,x)|0)>>>0)/255|0)+z|0)>>>3<<5|((((O(d[289322+(f>>>10&31)>>0]|0,x)|0)>>>0)/255|0)+A|0)>>>3<<10|((((O(d[289322+(f&31)>>0]|0,x)|0)>>>0)/255|0)+y|0)>>>3;if(!k)break;else l=l+(n<<1)|0}return}case 2:{n=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;l=c[a+20>>2]|0;if((i|0)<(g|0)){l=l+((O(n,i)|0)<<1)+(h<<1)|0;n=n+((h|0)>(f|0)?-1:1)|0;l=(o|0)==0?l+(n<<1)|0:l}else{l=l+((O(n,g)|0)<<1)+(f<<1)|0;k=i-g|0;n=n+((h|0)<(f|0)?-1:1)|0}k=k+((o|0)!=0&1)|0;if(!k)return;while(1){k=k+-1|0;f=e[l>>1]|0;g=(d[289322+(f>>>10&31)>>0]|0)+A|0;o=(d[289322+(f>>>5&31)>>0]|0)+z|0;f=(d[289322+(f&31)>>0]|0)+y|0;b[l>>1]=(o>>>0<255?o:255)>>>3<<5|(g>>>0<255?g:255)>>>3<<10|(f>>>0<255?f:255)>>>3;if(!k)break;else l=l+(n<<1)|0}return}case 4:{n=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;l=c[a+20>>2]|0;if((i|0)<(g|0)){l=l+((O(n,i)|0)<<1)+(h<<1)|0;n=n+((h|0)>(f|0)?-1:1)|0;l=(o|0)==0?l+(n<<1)|0:l}else{l=l+((O(n,g)|0)<<1)+(f<<1)|0;k=i-g|0;n=n+((h|0)<(f|0)?-1:1)|0}k=k+((o|0)!=0&1)|0;if(!k)return;while(1){k=k+-1|0;f=e[l>>1]|0;b[l>>1]=(((O(d[289322+(f>>>5&31)>>0]|0,z)|0)>>>0)/255|0)>>>3<<5|(((O(d[289322+(f>>>10&31)>>0]|0,A)|0)>>>0)/255|0)>>>3<<10|(((O(d[289322+(f&31)>>0]|0,y)|0)>>>0)/255|0)>>>3;if(!k)break;else l=l+(n<<1)|0}return}default:{n=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;l=c[a+20>>2]|0;if((i|0)<(g|0)){g=l+((O(n,i)|0)<<1)+(h<<1)|0;p=n+((h|0)>(f|0)?-1:1)|0;l=k;k=(o|0)==0?g+(p<<1)|0:g}else{k=l+((O(n,g)|0)<<1)+(f<<1)|0;l=i-g|0;p=n+((h|0)<(f|0)?-1:1)|0}l=l+((o|0)!=0&1)|0;if(!l)return;n=(z>>>3<<5|y>>>3|A>>>3<<10)&65535;while(1){l=l+-1|0;b[k>>1]=n;if(!l)break;else k=k+(p<<1)|0}return}}switch(j|0){case 1:{k=h-f|0;k=(k|0)<0?0-k|0:k;l=i-g|0;l=(l|0)<0?0-l|0:l;if((k|0)<(l|0)){v=k<<1;m=1;p=0;n=k-l|0;w=v;v=v-l|0;k=l}else{v=l<<1;m=0;p=1;n=l-k|0;w=v;v=v-k|0}u=n<<1;t=(h|0)<(f|0);s=t?0-p|0:p;t=t?-1:1;q=(i|0)<(g|0);r=q?0-m|0:m;q=q?-1:1;i=k+((o|0)!=0&1)|0;if((i|0)<=0)return;h=c[a+20>>2]|0;j=c[a+16>>2]|0;m=g;n=f;p=0;k=v;while(1){l=h+(O(j,m)|0)+(n<<1)|0;f=e[l>>1]|0;b[l>>1]=((((O(d[289322+(f>>>5&31)>>0]|0,x)|0)>>>0)/255|0)+z|0)>>>3<<5|((((O(d[289322+(f>>>10&31)>>0]|0,x)|0)>>>0)/255|0)+A|0)>>>3<<10|((((O(d[289322+(f&31)>>0]|0,x)|0)>>>0)/255|0)+y|0)>>>3;l=(k|0)<0;p=p+1|0;if((p|0)>=(i|0))break;else{m=m+(l?r:q)|0;n=(l?s:t)+n|0;k=(l?w:u)+k|0}}return}case 2:{k=h-f|0;k=(k|0)<0?0-k|0:k;l=i-g|0;l=(l|0)<0?0-l|0:l;if((k|0)<(l|0)){v=k<<1;m=1;p=0;n=k-l|0;w=v;v=v-l|0;k=l}else{v=l<<1;m=0;p=1;n=l-k|0;w=v;v=v-k|0}u=n<<1;t=(h|0)<(f|0);s=t?0-p|0:p;t=t?-1:1;q=(i|0)<(g|0);r=q?0-m|0:m;q=q?-1:1;i=k+((o|0)!=0&1)|0;if((i|0)<=0)return;h=c[a+20>>2]|0;j=c[a+16>>2]|0;m=g;n=f;p=0;k=v;while(1){l=h+(O(j,m)|0)+(n<<1)|0;f=e[l>>1]|0;g=(d[289322+(f>>>10&31)>>0]|0)+A|0;o=(d[289322+(f>>>5&31)>>0]|0)+z|0;f=(d[289322+(f&31)>>0]|0)+y|0;b[l>>1]=(o>>>0<255?o:255)>>>3<<5|(g>>>0<255?g:255)>>>3<<10|(f>>>0<255?f:255)>>>3;l=(k|0)<0;p=p+1|0;if((p|0)>=(i|0))break;else{m=m+(l?r:q)|0;n=(l?s:t)+n|0;k=(l?w:u)+k|0}}return}case 4:{k=h-f|0;k=(k|0)<0?0-k|0:k;l=i-g|0;l=(l|0)<0?0-l|0:l;if((k|0)<(l|0)){v=k<<1;m=1;p=0;n=k-l|0;w=v;v=v-l|0;k=l}else{v=l<<1;m=0;p=1;n=l-k|0;w=v;v=v-k|0}u=n<<1;t=(h|0)<(f|0);s=t?0-p|0:p;t=t?-1:1;q=(i|0)<(g|0);r=q?0-m|0:m;q=q?-1:1;i=k+((o|0)!=0&1)|0;if((i|0)<=0)return;h=c[a+20>>2]|0;j=c[a+16>>2]|0;m=g;n=f;p=0;k=v;while(1){l=h+(O(j,m)|0)+(n<<1)|0;f=e[l>>1]|0;b[l>>1]=(((O(d[289322+(f>>>5&31)>>0]|0,z)|0)>>>0)/255|0)>>>3<<5|(((O(d[289322+(f>>>10&31)>>0]|0,A)|0)>>>0)/255|0)>>>3<<10|(((O(d[289322+(f&31)>>0]|0,y)|0)>>>0)/255|0)>>>3;l=(k|0)<0;p=p+1|0;if((p|0)>=(i|0))break;else{m=m+(l?r:q)|0;n=(l?s:t)+n|0;k=(l?w:u)+k|0}}return}default:{l=h-f|0;l=(l|0)<0?0-l|0:l;n=i-g|0;n=(n|0)<0?0-n|0:n;if((l|0)<(n|0)){k=l<<1;j=1;m=0;p=l-n|0;w=k;k=k-n|0;l=n}else{k=n<<1;j=0;m=1;p=n-l|0;w=k;k=k-l|0}v=p<<1;u=(h|0)<(f|0);t=u?0-m|0:m;u=u?-1:1;r=(i|0)<(g|0);s=r?0-j|0:j;r=r?-1:1;h=l+((o|0)!=0&1)|0;if((h|0)<=0)return;q=c[a+20>>2]|0;i=c[a+16>>2]|0;j=(z>>>3<<5|y>>>3|A>>>3<<10)&65535;m=g;n=f;p=0;while(1){b[q+(O(i,m)|0)+(n<<1)>>1]=j;l=(k|0)<0;p=p+1|0;if((p|0)>=(h|0))break;else{m=m+(l?s:r)|0;n=(l?t:u)+n|0;k=(l?w:v)+k|0}}return}}}function LJ(a,b,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;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;n=i&255;j=j&255;w=l&255;i=k&255;if((h+-1|0)>>>0<2){z=((O(w,n)|0)>>>0)/255|0;y=((O(w,j)|0)>>>0)/255|0;x=((O(w,i)|0)>>>0)/255|0}else{z=n;y=j;x=i}v=w^255;if((g|0)==(e|0))switch(h|0){case 1:{i=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0,g)|0)<<2)|0;l=(m|0)!=0;if((f|0)<(b|0)){i=i+(f<<2)|0;i=l?i:i+4|0;j=b-f|0}else{i=i+(b<<2)|0;j=f-b|0}j=j+(l&1)|0;if(!j)return;while(1){j=j+-1|0;b=c[i>>2]|0;c[i>>2]=(((O(b>>>24,v)|0)>>>0)/255|0)+w<<24|(((O(b&255,v)|0)>>>0)/255|0)+x|(((O(b>>>16&255,v)|0)>>>0)/255|0)+z<<16|(((O(b>>>8&255,v)|0)>>>0)/255|0)+y<<8;if(!j)break;else i=i+4|0}return}case 2:{i=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0,g)|0)<<2)|0;l=(m|0)!=0;if((f|0)<(b|0)){i=i+(f<<2)|0;i=l?i:i+4|0;j=b-f|0}else{i=i+(b<<2)|0;j=f-b|0}j=j+(l&1)|0;if(!j)return;while(1){j=j+-1|0;m=c[i>>2]|0;e=(m>>>16&255)+z|0;b=(m>>>8&255)+y|0;w=(m&255)+x|0;c[i>>2]=(w>>>0<255?w:255)|m&-16777216|(e>>>0<255?e:255)<<16|(b>>>0<255?b:255)<<8;if(!j)break;else i=i+4|0}return}case 4:{i=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0,g)|0)<<2)|0;l=(m|0)!=0;if((f|0)<(b|0)){i=i+(f<<2)|0;i=l?i:i+4|0;j=b-f|0}else{i=i+(b<<2)|0;j=f-b|0}j=j+(l&1)|0;if(!j)return;while(1){j=j+-1|0;b=c[i>>2]|0;c[i>>2]=((O(b&255,x)|0)>>>0)/255|0|b&-16777216|(((O(b>>>16&255,z)|0)>>>0)/255|0)<<16|(((O(b>>>8&255,y)|0)>>>0)/255|0)<<8;if(!j)break;else i=i+4|0}return}default:{i=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0,g)|0)<<2)|0;l=(m|0)!=0;if((f|0)<(b|0)){i=i+(f<<2)|0;i=l?i:i+4|0;j=b-f|0}else{i=i+(b<<2)|0;j=f-b|0}j=j+(l&1)|0;if(!j)return;l=x|w<<24|y<<8|z<<16;while(1){j=j+-1|0;c[i>>2]=l;if(!j)break;else i=i+4|0}return}}if((f|0)==(b|0))switch(h|0){case 1:{n=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;i=c[a+20>>2]|0;l=(m|0)!=0;if((g|0)<(e|0)){i=i+((O(n,g)|0)<<2)+(f<<2)|0;i=l?i:i+(n<<2)|0;j=e-g|0}else{i=i+((O(n,e)|0)<<2)+(f<<2)|0;j=g-e|0}j=j+(l&1)|0;if(!j)return;while(1){j=j+-1|0;b=c[i>>2]|0;c[i>>2]=(((O(b>>>24,v)|0)>>>0)/255|0)+w<<24|(((O(b&255,v)|0)>>>0)/255|0)+x|(((O(b>>>16&255,v)|0)>>>0)/255|0)+z<<16|(((O(b>>>8&255,v)|0)>>>0)/255|0)+y<<8;if(!j)break;else i=i+(n<<2)|0}return}case 2:{n=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;i=c[a+20>>2]|0;l=(m|0)!=0;if((g|0)<(e|0)){i=i+((O(n,g)|0)<<2)+(f<<2)|0;i=l?i:i+(n<<2)|0;j=e-g|0}else{i=i+((O(n,e)|0)<<2)+(f<<2)|0;j=g-e|0}j=j+(l&1)|0;if(!j)return;while(1){j=j+-1|0;m=c[i>>2]|0;e=(m>>>16&255)+z|0;b=(m>>>8&255)+y|0;w=(m&255)+x|0;c[i>>2]=(w>>>0<255?w:255)|m&-16777216|(e>>>0<255?e:255)<<16|(b>>>0<255?b:255)<<8;if(!j)break;else i=i+(n<<2)|0}return}case 4:{n=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;i=c[a+20>>2]|0;l=(m|0)!=0;if((g|0)<(e|0)){i=i+((O(n,g)|0)<<2)+(f<<2)|0;i=l?i:i+(n<<2)|0;j=e-g|0}else{i=i+((O(n,e)|0)<<2)+(f<<2)|0;j=g-e|0}j=j+(l&1)|0;if(!j)return;while(1){j=j+-1|0;b=c[i>>2]|0;c[i>>2]=((O(b&255,x)|0)>>>0)/255|0|b&-16777216|(((O(b>>>16&255,z)|0)>>>0)/255|0)<<16|(((O(b>>>8&255,y)|0)>>>0)/255|0)<<8;if(!j)break;else i=i+(n<<2)|0}return}default:{n=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;i=c[a+20>>2]|0;l=(m|0)!=0;if((g|0)<(e|0)){i=i+((O(n,g)|0)<<2)+(f<<2)|0;i=l?i:i+(n<<2)|0;j=e-g|0}else{i=i+((O(n,e)|0)<<2)+(f<<2)|0;j=g-e|0}j=j+(l&1)|0;if(!j)return;l=x|w<<24|y<<8|z<<16;while(1){j=j+-1|0;c[i>>2]=l;if(!j)break;else i=i+(n<<2)|0}return}}u=b-f|0;i=e-g|0;if((((u|0)<0?0-u|0:u)|0)==(((i|0)<0?0-i|0:i)|0))switch(h|0){case 1:{l=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;j=c[a+20>>2]|0;if((g|0)<(e|0)){j=j+((O(l,g)|0)<<2)+(f<<2)|0;l=l+((f|0)>(b|0)?-1:1)|0;j=(m|0)==0?j+(l<<2)|0:j}else{j=j+((O(l,e)|0)<<2)+(b<<2)|0;i=g-e|0;l=l+((f|0)<(b|0)?-1:1)|0}i=i+((m|0)!=0&1)|0;if(!i)return;while(1){i=i+-1|0;b=c[j>>2]|0;c[j>>2]=(((O(b>>>24,v)|0)>>>0)/255|0)+w<<24|(((O(b&255,v)|0)>>>0)/255|0)+x|(((O(b>>>16&255,v)|0)>>>0)/255|0)+z<<16|(((O(b>>>8&255,v)|0)>>>0)/255|0)+y<<8;if(!i)break;else j=j+(l<<2)|0}return}case 2:{l=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;j=c[a+20>>2]|0;if((g|0)<(e|0)){j=j+((O(l,g)|0)<<2)+(f<<2)|0;l=l+((f|0)>(b|0)?-1:1)|0;j=(m|0)==0?j+(l<<2)|0:j}else{j=j+((O(l,e)|0)<<2)+(b<<2)|0;i=g-e|0;l=l+((f|0)<(b|0)?-1:1)|0}i=i+((m|0)!=0&1)|0;if(!i)return;while(1){i=i+-1|0;m=c[j>>2]|0;e=(m>>>16&255)+z|0;b=(m>>>8&255)+y|0;w=(m&255)+x|0;c[j>>2]=(w>>>0<255?w:255)|m&-16777216|(e>>>0<255?e:255)<<16|(b>>>0<255?b:255)<<8;if(!i)break;else j=j+(l<<2)|0}return}case 4:{l=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;j=c[a+20>>2]|0;if((g|0)<(e|0)){j=j+((O(l,g)|0)<<2)+(f<<2)|0;l=l+((f|0)>(b|0)?-1:1)|0;j=(m|0)==0?j+(l<<2)|0:j}else{j=j+((O(l,e)|0)<<2)+(b<<2)|0;i=g-e|0;l=l+((f|0)<(b|0)?-1:1)|0}i=i+((m|0)!=0&1)|0;if(!i)return;while(1){i=i+-1|0;b=c[j>>2]|0;c[j>>2]=((O(b&255,x)|0)>>>0)/255|0|b&-16777216|(((O(b>>>16&255,z)|0)>>>0)/255|0)<<16|(((O(b>>>8&255,y)|0)>>>0)/255|0)<<8;if(!i)break;else j=j+(l<<2)|0}return}default:{l=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;j=c[a+20>>2]|0;if((g|0)<(e|0)){e=j+((O(l,g)|0)<<2)+(f<<2)|0;n=l+((f|0)>(b|0)?-1:1)|0;j=i;i=(m|0)==0?e+(n<<2)|0:e}else{i=j+((O(l,e)|0)<<2)+(b<<2)|0;j=g-e|0;n=l+((f|0)<(b|0)?-1:1)|0}j=j+((m|0)!=0&1)|0;if(!j)return;l=x|w<<24|y<<8|z<<16;while(1){j=j+-1|0;c[i>>2]=l;if(!j)break;else i=i+(n<<2)|0}return}}switch(h|0){case 1:{i=f-b|0;i=(i|0)<0?0-i|0:i;j=g-e|0;j=(j|0)<0?0-j|0:j;if((i|0)<(j|0)){t=i<<1;k=1;n=0;l=i-j|0;u=t;t=t-j|0;i=j}else{t=j<<1;k=0;n=1;l=j-i|0;u=t;t=t-i|0}s=l<<1;r=(f|0)<(b|0);q=r?0-n|0:n;r=r?-1:1;o=(g|0)<(e|0);p=o?0-k|0:k;o=o?-1:1;g=i+((m|0)!=0&1)|0;if((g|0)<=0)return;f=c[a+20>>2]|0;h=a+16|0;k=e;l=b;n=0;i=t;while(1){j=f+(O(c[h>>2]|0,k)|0)+(l<<2)|0;b=c[j>>2]|0;c[j>>2]=(((O(b>>>24,v)|0)>>>0)/255|0)+w<<24|(((O(b&255,v)|0)>>>0)/255|0)+x|(((O(b>>>16&255,v)|0)>>>0)/255|0)+z<<16|(((O(b>>>8&255,v)|0)>>>0)/255|0)+y<<8;j=(i|0)<0;n=n+1|0;if((n|0)>=(g|0))break;else{k=k+(j?p:o)|0;l=(j?q:r)+l|0;i=(j?u:s)+i|0}}return}case 2:{i=f-b|0;i=(i|0)<0?0-i|0:i;j=g-e|0;j=(j|0)<0?0-j|0:j;if((i|0)<(j|0)){t=i<<1;k=1;n=0;l=i-j|0;u=t;t=t-j|0;i=j}else{t=j<<1;k=0;n=1;l=j-i|0;u=t;t=t-i|0}s=l<<1;r=(f|0)<(b|0);q=r?0-n|0:n;r=r?-1:1;o=(g|0)<(e|0);p=o?0-k|0:k;o=o?-1:1;g=i+((m|0)!=0&1)|0;if((g|0)<=0)return;f=c[a+20>>2]|0;h=a+16|0;k=e;l=b;n=0;i=t;while(1){j=f+(O(c[h>>2]|0,k)|0)+(l<<2)|0;m=c[j>>2]|0;e=(m>>>16&255)+z|0;b=(m>>>8&255)+y|0;w=(m&255)+x|0;c[j>>2]=(w>>>0<255?w:255)|m&-16777216|(e>>>0<255?e:255)<<16|(b>>>0<255?b:255)<<8;j=(i|0)<0;n=n+1|0;if((n|0)>=(g|0))break;else{k=k+(j?p:o)|0;l=(j?q:r)+l|0;i=(j?u:s)+i|0}}return}case 4:{i=f-b|0;i=(i|0)<0?0-i|0:i;j=g-e|0;j=(j|0)<0?0-j|0:j;if((i|0)<(j|0)){t=i<<1;k=1;n=0;l=i-j|0;u=t;t=t-j|0;i=j}else{t=j<<1;k=0;n=1;l=j-i|0;u=t;t=t-i|0}s=l<<1;r=(f|0)<(b|0);q=r?0-n|0:n;r=r?-1:1;o=(g|0)<(e|0);p=o?0-k|0:k;o=o?-1:1;g=i+((m|0)!=0&1)|0;if((g|0)<=0)return;f=c[a+20>>2]|0;h=a+16|0;k=e;l=b;n=0;i=t;while(1){j=f+(O(c[h>>2]|0,k)|0)+(l<<2)|0;b=c[j>>2]|0;c[j>>2]=((O(b&255,x)|0)>>>0)/255|0|b&-16777216|(((O(b>>>16&255,z)|0)>>>0)/255|0)<<16|(((O(b>>>8&255,y)|0)>>>0)/255|0)<<8;j=(i|0)<0;n=n+1|0;if((n|0)>=(g|0))break;else{k=k+(j?p:o)|0;l=(j?q:r)+l|0;i=(j?u:s)+i|0}}return}default:{j=f-b|0;j=(j|0)<0?0-j|0:j;l=g-e|0;l=(l|0)<0?0-l|0:l;if((j|0)<(l|0)){i=j<<1;h=1;k=0;n=j-l|0;u=i;i=i-l|0;j=l}else{i=l<<1;h=0;k=1;n=l-j|0;u=i;i=i-j|0}t=n<<1;s=(f|0)<(b|0);r=s?0-k|0:k;s=s?-1:1;p=(g|0)<(e|0);q=p?0-h|0:h;p=p?-1:1;f=j+((m|0)!=0&1)|0;if((f|0)<=0)return;o=c[a+20>>2]|0;g=a+16|0;h=x|w<<24|y<<8|z<<16;k=e;l=b;n=0;while(1){c[o+(O(c[g>>2]|0,k)|0)+(l<<2)>>2]=h;j=(i|0)<0;n=n+1|0;if((n|0)>=(f|0))break;else{k=k+(j?q:p)|0;l=(j?r:s)+l|0;i=(j?u:t)+i|0}}return}}}function MJ(a,b,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;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&255;j=j&255;l=l&255;i=k&255;if((h+-1|0)>>>0<2){y=((O(l,n)|0)>>>0)/255|0;x=((O(l,j)|0)>>>0)/255|0;w=((O(l,i)|0)>>>0)/255|0}else{y=n;x=j;w=i}v=l^255;if((g|0)==(e|0))switch(h|0){case 1:{i=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0,g)|0)<<2)|0;l=(m|0)!=0;if((f|0)<(b|0)){i=i+(f<<2)|0;i=l?i:i+4|0;j=b-f|0}else{i=i+(b<<2)|0;j=f-b|0}j=j+(l&1)|0;if(!j)return;while(1){j=j+-1|0;b=c[i>>2]|0;c[i>>2]=(((O(b>>>8&255,v)|0)>>>0)/255|0)+x<<8|(((O(b&255,v)|0)>>>0)/255|0)+w|(((O(b>>>16&255,v)|0)>>>0)/255|0)+y<<16;if(!j)break;else i=i+4|0}return}case 2:{i=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0,g)|0)<<2)|0;l=(m|0)!=0;if((f|0)<(b|0)){i=i+(f<<2)|0;i=l?i:i+4|0;j=b-f|0}else{i=i+(b<<2)|0;j=f-b|0}j=j+(l&1)|0;if(!j)return;while(1){j=j+-1|0;e=c[i>>2]|0;b=(e>>>16&255)+y|0;m=(e>>>8&255)+x|0;e=(e&255)+w|0;c[i>>2]=(m>>>0<255?m:255)<<8|(e>>>0<255?e:255)|(b>>>0<255?b:255)<<16;if(!j)break;else i=i+4|0}return}case 4:{i=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0,g)|0)<<2)|0;l=(m|0)!=0;if((f|0)<(b|0)){i=i+(f<<2)|0;i=l?i:i+4|0;j=b-f|0}else{i=i+(b<<2)|0;j=f-b|0}j=j+(l&1)|0;if(!j)return;while(1){j=j+-1|0;b=c[i>>2]|0;c[i>>2]=(((O(b>>>8&255,x)|0)>>>0)/255|0)<<8|(((O(b&255,w)|0)>>>0)/255|0)|(((O(b>>>16&255,y)|0)>>>0)/255|0)<<16;if(!j)break;else i=i+4|0}return}default:{i=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0,g)|0)<<2)|0;l=(m|0)!=0;if((f|0)<(b|0)){i=i+(f<<2)|0;i=l?i:i+4|0;j=b-f|0}else{i=i+(b<<2)|0;j=f-b|0}j=j+(l&1)|0;if(!j)return;l=x<<8|w|y<<16;while(1){j=j+-1|0;c[i>>2]=l;if(!j)break;else i=i+4|0}return}}if((f|0)==(b|0))switch(h|0){case 1:{n=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;i=c[a+20>>2]|0;l=(m|0)!=0;if((g|0)<(e|0)){i=i+((O(n,g)|0)<<2)+(f<<2)|0;i=l?i:i+(n<<2)|0;j=e-g|0}else{i=i+((O(n,e)|0)<<2)+(f<<2)|0;j=g-e|0}j=j+(l&1)|0;if(!j)return;while(1){j=j+-1|0;b=c[i>>2]|0;c[i>>2]=(((O(b>>>8&255,v)|0)>>>0)/255|0)+x<<8|(((O(b&255,v)|0)>>>0)/255|0)+w|(((O(b>>>16&255,v)|0)>>>0)/255|0)+y<<16;if(!j)break;else i=i+(n<<2)|0}return}case 2:{n=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;i=c[a+20>>2]|0;l=(m|0)!=0;if((g|0)<(e|0)){i=i+((O(n,g)|0)<<2)+(f<<2)|0;i=l?i:i+(n<<2)|0;j=e-g|0}else{i=i+((O(n,e)|0)<<2)+(f<<2)|0;j=g-e|0}j=j+(l&1)|0;if(!j)return;while(1){j=j+-1|0;e=c[i>>2]|0;b=(e>>>16&255)+y|0;m=(e>>>8&255)+x|0;e=(e&255)+w|0;c[i>>2]=(m>>>0<255?m:255)<<8|(e>>>0<255?e:255)|(b>>>0<255?b:255)<<16;if(!j)break;else i=i+(n<<2)|0}return}case 4:{n=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;i=c[a+20>>2]|0;l=(m|0)!=0;if((g|0)<(e|0)){i=i+((O(n,g)|0)<<2)+(f<<2)|0;i=l?i:i+(n<<2)|0;j=e-g|0}else{i=i+((O(n,e)|0)<<2)+(f<<2)|0;j=g-e|0}j=j+(l&1)|0;if(!j)return;while(1){j=j+-1|0;b=c[i>>2]|0;c[i>>2]=(((O(b>>>8&255,x)|0)>>>0)/255|0)<<8|(((O(b&255,w)|0)>>>0)/255|0)|(((O(b>>>16&255,y)|0)>>>0)/255|0)<<16;if(!j)break;else i=i+(n<<2)|0}return}default:{n=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;i=c[a+20>>2]|0;l=(m|0)!=0;if((g|0)<(e|0)){i=i+((O(n,g)|0)<<2)+(f<<2)|0;i=l?i:i+(n<<2)|0;j=e-g|0}else{i=i+((O(n,e)|0)<<2)+(f<<2)|0;j=g-e|0}j=j+(l&1)|0;if(!j)return;l=x<<8|w|y<<16;while(1){j=j+-1|0;c[i>>2]=l;if(!j)break;else i=i+(n<<2)|0}return}}u=b-f|0;i=e-g|0;if((((u|0)<0?0-u|0:u)|0)==(((i|0)<0?0-i|0:i)|0))switch(h|0){case 1:{l=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;j=c[a+20>>2]|0;if((g|0)<(e|0)){j=j+((O(l,g)|0)<<2)+(f<<2)|0;l=l+((f|0)>(b|0)?-1:1)|0;j=(m|0)==0?j+(l<<2)|0:j}else{j=j+((O(l,e)|0)<<2)+(b<<2)|0;i=g-e|0;l=l+((f|0)<(b|0)?-1:1)|0}i=i+((m|0)!=0&1)|0;if(!i)return;while(1){i=i+-1|0;b=c[j>>2]|0;c[j>>2]=(((O(b>>>8&255,v)|0)>>>0)/255|0)+x<<8|(((O(b&255,v)|0)>>>0)/255|0)+w|(((O(b>>>16&255,v)|0)>>>0)/255|0)+y<<16;if(!i)break;else j=j+(l<<2)|0}return}case 2:{l=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;j=c[a+20>>2]|0;if((g|0)<(e|0)){j=j+((O(l,g)|0)<<2)+(f<<2)|0;l=l+((f|0)>(b|0)?-1:1)|0;j=(m|0)==0?j+(l<<2)|0:j}else{j=j+((O(l,e)|0)<<2)+(b<<2)|0;i=g-e|0;l=l+((f|0)<(b|0)?-1:1)|0}i=i+((m|0)!=0&1)|0;if(!i)return;while(1){i=i+-1|0;e=c[j>>2]|0;b=(e>>>16&255)+y|0;m=(e>>>8&255)+x|0;e=(e&255)+w|0;c[j>>2]=(m>>>0<255?m:255)<<8|(e>>>0<255?e:255)|(b>>>0<255?b:255)<<16;if(!i)break;else j=j+(l<<2)|0}return}case 4:{l=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;j=c[a+20>>2]|0;if((g|0)<(e|0)){j=j+((O(l,g)|0)<<2)+(f<<2)|0;l=l+((f|0)>(b|0)?-1:1)|0;j=(m|0)==0?j+(l<<2)|0:j}else{j=j+((O(l,e)|0)<<2)+(b<<2)|0;i=g-e|0;l=l+((f|0)<(b|0)?-1:1)|0}i=i+((m|0)!=0&1)|0;if(!i)return;while(1){i=i+-1|0;b=c[j>>2]|0;c[j>>2]=(((O(b>>>8&255,x)|0)>>>0)/255|0)<<8|(((O(b&255,w)|0)>>>0)/255|0)|(((O(b>>>16&255,y)|0)>>>0)/255|0)<<16;if(!i)break;else j=j+(l<<2)|0}return}default:{l=(c[a+16>>2]|0)/(d[(c[a+4>>2]|0)+9>>0]|0|0)|0;j=c[a+20>>2]|0;if((g|0)<(e|0)){e=j+((O(l,g)|0)<<2)+(f<<2)|0;n=l+((f|0)>(b|0)?-1:1)|0;j=i;i=(m|0)==0?e+(n<<2)|0:e}else{i=j+((O(l,e)|0)<<2)+(b<<2)|0;j=g-e|0;n=l+((f|0)<(b|0)?-1:1)|0}j=j+((m|0)!=0&1)|0;if(!j)return;l=x<<8|w|y<<16;while(1){j=j+-1|0;c[i>>2]=l;if(!j)break;else i=i+(n<<2)|0}return}}switch(h|0){case 1:{i=f-b|0;i=(i|0)<0?0-i|0:i;j=g-e|0;j=(j|0)<0?0-j|0:j;if((i|0)<(j|0)){t=i<<1;k=1;n=0;l=i-j|0;u=t;t=t-j|0;i=j}else{t=j<<1;k=0;n=1;l=j-i|0;u=t;t=t-i|0}s=l<<1;r=(f|0)<(b|0);q=r?0-n|0:n;r=r?-1:1;o=(g|0)<(e|0);p=o?0-k|0:k;o=o?-1:1;g=i+((m|0)!=0&1)|0;if((g|0)<=0)return;f=c[a+20>>2]|0;h=a+16|0;k=e;l=b;n=0;i=t;while(1){j=f+(O(c[h>>2]|0,k)|0)+(l<<2)|0;b=c[j>>2]|0;c[j>>2]=(((O(b>>>8&255,v)|0)>>>0)/255|0)+x<<8|(((O(b&255,v)|0)>>>0)/255|0)+w|(((O(b>>>16&255,v)|0)>>>0)/255|0)+y<<16;j=(i|0)<0;n=n+1|0;if((n|0)>=(g|0))break;else{k=k+(j?p:o)|0;l=(j?q:r)+l|0;i=(j?u:s)+i|0}}return}case 2:{i=f-b|0;i=(i|0)<0?0-i|0:i;j=g-e|0;j=(j|0)<0?0-j|0:j;if((i|0)<(j|0)){t=i<<1;k=1;n=0;l=i-j|0;u=t;t=t-j|0;i=j}else{t=j<<1;k=0;n=1;l=j-i|0;u=t;t=t-i|0}s=l<<1;r=(f|0)<(b|0);q=r?0-n|0:n;r=r?-1:1;o=(g|0)<(e|0);p=o?0-k|0:k;o=o?-1:1;g=i+((m|0)!=0&1)|0;if((g|0)<=0)return;f=c[a+20>>2]|0;h=a+16|0;k=e;l=b;n=0;i=t;while(1){j=f+(O(c[h>>2]|0,k)|0)+(l<<2)|0;e=c[j>>2]|0;b=(e>>>16&255)+y|0;m=(e>>>8&255)+x|0;e=(e&255)+w|0;c[j>>2]=(m>>>0<255?m:255)<<8|(e>>>0<255?e:255)|(b>>>0<255?b:255)<<16;j=(i|0)<0;n=n+1|0;if((n|0)>=(g|0))break;else{k=k+(j?p:o)|0;l=(j?q:r)+l|0;i=(j?u:s)+i|0}}return}case 4:{i=f-b|0;i=(i|0)<0?0-i|0:i;j=g-e|0;j=(j|0)<0?0-j|0:j;if((i|0)<(j|0)){t=i<<1;k=1;n=0;l=i-j|0;u=t;t=t-j|0;i=j}else{t=j<<1;k=0;n=1;l=j-i|0;u=t;t=t-i|0}s=l<<1;r=(f|0)<(b|0);q=r?0-n|0:n;r=r?-1:1;o=(g|0)<(e|0);p=o?0-k|0:k;o=o?-1:1;g=i+((m|0)!=0&1)|0;if((g|0)<=0)return;f=c[a+20>>2]|0;h=a+16|0;k=e;l=b;n=0;i=t;while(1){j=f+(O(c[h>>2]|0,k)|0)+(l<<2)|0;b=c[j>>2]|0;c[j>>2]=(((O(b>>>8&255,x)|0)>>>0)/255|0)<<8|(((O(b&255,w)|0)>>>0)/255|0)|(((O(b>>>16&255,y)|0)>>>0)/255|0)<<16;j=(i|0)<0;n=n+1|0;if((n|0)>=(g|0))break;else{k=k+(j?p:o)|0;l=(j?q:r)+l|0;i=(j?u:s)+i|0}}return}default:{j=f-b|0;j=(j|0)<0?0-j|0:j;l=g-e|0;l=(l|0)<0?0-l|0:l;if((j|0)<(l|0)){i=j<<1;h=1;k=0;n=j-l|0;u=i;i=i-l|0;j=l}else{i=l<<1;h=0;k=1;n=l-j|0;u=i;i=i-j|0}t=n<<1;s=(f|0)<(b|0);r=s?0-k|0:k;s=s?-1:1;p=(g|0)<(e|0);q=p?0-h|0:h;p=p?-1:1;f=j+((m|0)!=0&1)|0;if((f|0)<=0)return;o=c[a+20>>2]|0;g=a+16|0;h=x<<8|w|y<<16;k=e;l=b;n=0;while(1){c[o+(O(c[g>>2]|0,k)|0)+(l<<2)>>2]=h;j=(i|0)<0;n=n+1|0;if((n|0)>=(f|0))break;else{k=k+(j?q:p)|0;l=(j?r:s)+l|0;i=(j?u:t)+i|0}}return}}}function NJ(a,b,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;K=c[a+4>>2]|0;i=i&255;j=j&255;k=k&255;J=l&255;if((h+-1|0)>>>0<2){N=((O(J,i)|0)>>>0)/255|0;M=((O(J,j)|0)>>>0)/255|0;L=((O(J,k)|0)>>>0)/255|0}else{N=i;M=j;L=k}I=J^255;if((g|0)==(e|0))switch(h|0){case 1:{i=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[K+9>>0]|0|0)|0,g)|0)<<2)|0;j=(m|0)!=0;if((f|0)<(b|0)){v=i+(f<<2)|0;v=j?v:v+4|0;i=b-f|0}else{v=i+(b<<2)|0;i=f-b|0}j=i+(j&1)|0;if(!j)return;q=K+12|0;r=K+16|0;s=K+20|0;t=K+24|0;l=d[K+28>>0]|0;g=c[18232+(l<<2)>>2]|0;e=d[K+29>>0]|0;f=c[18232+(e<<2)>>2]|0;h=d[K+30>>0]|0;o=c[18232+(h<<2)>>2]|0;n=d[K+31>>0]|0;p=c[18232+(n<<2)>>2]|0;a=d[K+32>>0]|0;m=d[K+33>>0]|0;u=d[K+34>>0]|0;k=d[K+35>>0]|0;i=v;while(1){j=j+-1|0;K=c[i>>2]|0;c[i>>2]=((((O(d[f+((c[r>>2]&K)>>>m)>>0]|0,I)|0)>>>0)/255|0)+M|0)>>>e<<m|((((O(d[g+((c[q>>2]&K)>>>a)>>0]|0,I)|0)>>>0)/255|0)+N|0)>>>l<<a|((((O(d[o+((c[s>>2]&K)>>>u)>>0]|0,I)|0)>>>0)/255|0)+L|0)>>>h<<u|((((O(d[p+((c[t>>2]&K)>>>k)>>0]|0,I)|0)>>>0)/255|0)+J|0)>>>n<<k;if(!j)break;else i=i+4|0}return}case 2:{i=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[K+9>>0]|0|0)|0,g)|0)<<2)|0;j=(m|0)!=0;if((f|0)<(b|0)){v=i+(f<<2)|0;v=j?v:v+4|0;i=b-f|0}else{v=i+(b<<2)|0;i=f-b|0}j=i+(j&1)|0;if(!j)return;q=K+12|0;r=K+16|0;s=K+20|0;t=K+24|0;l=d[K+28>>0]|0;g=c[18232+(l<<2)>>2]|0;e=d[K+29>>0]|0;f=c[18232+(e<<2)>>2]|0;h=d[K+30>>0]|0;o=c[18232+(h<<2)>>2]|0;n=d[K+31>>0]|0;p=c[18232+(n<<2)>>2]|0;a=d[K+32>>0]|0;m=d[K+33>>0]|0;u=d[K+34>>0]|0;k=d[K+35>>0]|0;i=v;while(1){j=j+-1|0;K=c[i>>2]|0;J=(d[g+((c[q>>2]&K)>>>a)>>0]|0)+N|0;I=(d[f+((c[r>>2]&K)>>>m)>>0]|0)+M|0;b=(d[o+((c[s>>2]&K)>>>u)>>0]|0)+L|0;c[i>>2]=(I>>>0<255?I:255)>>>e<<m|(J>>>0<255?J:255)>>>l<<a|(b>>>0<255?b:255)>>>h<<u|(d[p+((c[t>>2]&K)>>>k)>>0]|0)>>>n<<k;if(!j)break;else i=i+4|0}return}case 4:{i=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[K+9>>0]|0|0)|0,g)|0)<<2)|0;j=(m|0)!=0;if((f|0)<(b|0)){v=i+(f<<2)|0;v=j?v:v+4|0;i=b-f|0}else{v=i+(b<<2)|0;i=f-b|0}j=i+(j&1)|0;if(!j)return;q=K+12|0;r=K+16|0;s=K+20|0;t=K+24|0;l=d[K+28>>0]|0;g=c[18232+(l<<2)>>2]|0;e=d[K+29>>0]|0;f=c[18232+(e<<2)>>2]|0;h=d[K+30>>0]|0;o=c[18232+(h<<2)>>2]|0;n=d[K+31>>0]|0;p=c[18232+(n<<2)>>2]|0;a=d[K+32>>0]|0;m=d[K+33>>0]|0;u=d[K+34>>0]|0;k=d[K+35>>0]|0;i=v;while(1){j=j+-1|0;K=c[i>>2]|0;c[i>>2]=(((O(d[f+((c[r>>2]&K)>>>m)>>0]|0,M)|0)>>>0)/255|0)>>>e<<m|(((O(d[g+((c[q>>2]&K)>>>a)>>0]|0,N)|0)>>>0)/255|0)>>>l<<a|(((O(d[o+((c[s>>2]&K)>>>u)>>0]|0,L)|0)>>>0)/255|0)>>>h<<u|(d[p+((c[t>>2]&K)>>>k)>>0]|0)>>>n<<k;if(!j)break;else i=i+4|0}return}default:{i=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[K+9>>0]|0|0)|0,g)|0)<<2)|0;k=(m|0)!=0;if((f|0)<(b|0)){i=i+(f<<2)|0;i=k?i:i+4|0;j=b-f|0}else{i=i+(b<<2)|0;j=f-b|0}j=j+(k&1)|0;if(!j)return;k=M>>>(d[K+29>>0]|0)<<(d[K+33>>0]|0)|N>>>(d[K+28>>0]|0)<<(d[K+32>>0]|0)|L>>>(d[K+30>>0]|0)<<(d[K+34>>0]|0)|J>>>(d[K+31>>0]|0)<<(d[K+35>>0]|0);while(1){j=j+-1|0;c[i>>2]=k;if(!j)break;else i=i+4|0}return}}if((f|0)==(b|0))switch(h|0){case 1:{w=(c[a+16>>2]|0)/(d[K+9>>0]|0|0)|0;i=c[a+20>>2]|0;j=(m|0)!=0;if((g|0)<(e|0)){v=i+((O(w,g)|0)<<2)+(f<<2)|0;v=j?v:v+(w<<2)|0;i=e-g|0}else{v=i+((O(w,e)|0)<<2)+(f<<2)|0;i=g-e|0}j=i+(j&1)|0;if(!j)return;q=K+12|0;r=K+16|0;s=K+20|0;t=K+24|0;l=d[K+28>>0]|0;g=c[18232+(l<<2)>>2]|0;e=d[K+29>>0]|0;f=c[18232+(e<<2)>>2]|0;h=d[K+30>>0]|0;o=c[18232+(h<<2)>>2]|0;n=d[K+31>>0]|0;p=c[18232+(n<<2)>>2]|0;a=d[K+32>>0]|0;m=d[K+33>>0]|0;u=d[K+34>>0]|0;k=d[K+35>>0]|0;i=v;while(1){j=j+-1|0;K=c[i>>2]|0;c[i>>2]=((((O(d[f+((c[r>>2]&K)>>>m)>>0]|0,I)|0)>>>0)/255|0)+M|0)>>>e<<m|((((O(d[g+((c[q>>2]&K)>>>a)>>0]|0,I)|0)>>>0)/255|0)+N|0)>>>l<<a|((((O(d[o+((c[s>>2]&K)>>>u)>>0]|0,I)|0)>>>0)/255|0)+L|0)>>>h<<u|((((O(d[p+((c[t>>2]&K)>>>k)>>0]|0,I)|0)>>>0)/255|0)+J|0)>>>n<<k;if(!j)break;else i=i+(w<<2)|0}return}case 2:{w=(c[a+16>>2]|0)/(d[K+9>>0]|0|0)|0;i=c[a+20>>2]|0;j=(m|0)!=0;if((g|0)<(e|0)){v=i+((O(w,g)|0)<<2)+(f<<2)|0;v=j?v:v+(w<<2)|0;i=e-g|0}else{v=i+((O(w,e)|0)<<2)+(f<<2)|0;i=g-e|0}j=i+(j&1)|0;if(!j)return;q=K+12|0;r=K+16|0;s=K+20|0;t=K+24|0;l=d[K+28>>0]|0;g=c[18232+(l<<2)>>2]|0;e=d[K+29>>0]|0;f=c[18232+(e<<2)>>2]|0;h=d[K+30>>0]|0;o=c[18232+(h<<2)>>2]|0;n=d[K+31>>0]|0;p=c[18232+(n<<2)>>2]|0;a=d[K+32>>0]|0;m=d[K+33>>0]|0;u=d[K+34>>0]|0;k=d[K+35>>0]|0;i=v;while(1){j=j+-1|0;K=c[i>>2]|0;J=(d[g+((c[q>>2]&K)>>>a)>>0]|0)+N|0;I=(d[f+((c[r>>2]&K)>>>m)>>0]|0)+M|0;b=(d[o+((c[s>>2]&K)>>>u)>>0]|0)+L|0;c[i>>2]=(I>>>0<255?I:255)>>>e<<m|(J>>>0<255?J:255)>>>l<<a|(b>>>0<255?b:255)>>>h<<u|(d[p+((c[t>>2]&K)>>>k)>>0]|0)>>>n<<k;if(!j)break;else i=i+(w<<2)|0}return}case 4:{w=(c[a+16>>2]|0)/(d[K+9>>0]|0|0)|0;i=c[a+20>>2]|0;j=(m|0)!=0;if((g|0)<(e|0)){v=i+((O(w,g)|0)<<2)+(f<<2)|0;v=j?v:v+(w<<2)|0;i=e-g|0}else{v=i+((O(w,e)|0)<<2)+(f<<2)|0;i=g-e|0}j=i+(j&1)|0;if(!j)return;q=K+12|0;r=K+16|0;s=K+20|0;t=K+24|0;l=d[K+28>>0]|0;g=c[18232+(l<<2)>>2]|0;e=d[K+29>>0]|0;f=c[18232+(e<<2)>>2]|0;h=d[K+30>>0]|0;o=c[18232+(h<<2)>>2]|0;n=d[K+31>>0]|0;p=c[18232+(n<<2)>>2]|0;a=d[K+32>>0]|0;m=d[K+33>>0]|0;u=d[K+34>>0]|0;k=d[K+35>>0]|0;i=v;while(1){j=j+-1|0;K=c[i>>2]|0;c[i>>2]=(((O(d[f+((c[r>>2]&K)>>>m)>>0]|0,M)|0)>>>0)/255|0)>>>e<<m|(((O(d[g+((c[q>>2]&K)>>>a)>>0]|0,N)|0)>>>0)/255|0)>>>l<<a|(((O(d[o+((c[s>>2]&K)>>>u)>>0]|0,L)|0)>>>0)/255|0)>>>h<<u|(d[p+((c[t>>2]&K)>>>k)>>0]|0)>>>n<<k;if(!j)break;else i=i+(w<<2)|0}return}default:{l=(c[a+16>>2]|0)/(d[K+9>>0]|0|0)|0;i=c[a+20>>2]|0;k=(m|0)!=0;if((g|0)<(e|0)){i=i+((O(l,g)|0)<<2)+(f<<2)|0;i=k?i:i+(l<<2)|0;j=e-g|0}else{i=i+((O(l,e)|0)<<2)+(f<<2)|0;j=g-e|0}j=j+(k&1)|0;if(!j)return;k=M>>>(d[K+29>>0]|0)<<(d[K+33>>0]|0)|N>>>(d[K+28>>0]|0)<<(d[K+32>>0]|0)|L>>>(d[K+30>>0]|0)<<(d[K+34>>0]|0)|J>>>(d[K+31>>0]|0)<<(d[K+35>>0]|0);while(1){j=j+-1|0;c[i>>2]=k;if(!j)break;else i=i+(l<<2)|0}return}}H=b-f|0;i=e-g|0;if((((H|0)<0?0-H|0:H)|0)==(((i|0)<0?0-i|0:i)|0))switch(h|0){case 1:{k=(c[a+16>>2]|0)/(d[K+9>>0]|0|0)|0;j=c[a+20>>2]|0;if((g|0)<(e|0)){w=j+((O(k,g)|0)<<2)+(f<<2)|0;v=k+((f|0)>(b|0)?-1:1)|0;w=(m|0)==0?w+(v<<2)|0:w}else{w=j+((O(k,e)|0)<<2)+(b<<2)|0;i=g-e|0;v=k+((f|0)<(b|0)?-1:1)|0}i=i+((m|0)!=0&1)|0;if(!i)return;q=K+12|0;r=K+16|0;s=K+20|0;t=K+24|0;l=d[K+28>>0]|0;g=c[18232+(l<<2)>>2]|0;e=d[K+29>>0]|0;f=c[18232+(e<<2)>>2]|0;h=d[K+30>>0]|0;o=c[18232+(h<<2)>>2]|0;n=d[K+31>>0]|0;p=c[18232+(n<<2)>>2]|0;a=d[K+32>>0]|0;m=d[K+33>>0]|0;u=d[K+34>>0]|0;k=d[K+35>>0]|0;j=i;i=w;while(1){j=j+-1|0;K=c[i>>2]|0;c[i>>2]=((((O(d[f+((c[r>>2]&K)>>>m)>>0]|0,I)|0)>>>0)/255|0)+M|0)>>>e<<m|((((O(d[g+((c[q>>2]&K)>>>a)>>0]|0,I)|0)>>>0)/255|0)+N|0)>>>l<<a|((((O(d[o+((c[s>>2]&K)>>>u)>>0]|0,I)|0)>>>0)/255|0)+L|0)>>>h<<u|((((O(d[p+((c[t>>2]&K)>>>k)>>0]|0,I)|0)>>>0)/255|0)+J|0)>>>n<<k;if(!j)break;else i=i+(v<<2)|0}return}case 2:{k=(c[a+16>>2]|0)/(d[K+9>>0]|0|0)|0;j=c[a+20>>2]|0;if((g|0)<(e|0)){w=j+((O(k,g)|0)<<2)+(f<<2)|0;v=k+((f|0)>(b|0)?-1:1)|0;w=(m|0)==0?w+(v<<2)|0:w}else{w=j+((O(k,e)|0)<<2)+(b<<2)|0;i=g-e|0;v=k+((f|0)<(b|0)?-1:1)|0}i=i+((m|0)!=0&1)|0;if(!i)return;q=K+12|0;r=K+16|0;s=K+20|0;t=K+24|0;l=d[K+28>>0]|0;g=c[18232+(l<<2)>>2]|0;e=d[K+29>>0]|0;f=c[18232+(e<<2)>>2]|0;h=d[K+30>>0]|0;o=c[18232+(h<<2)>>2]|0;n=d[K+31>>0]|0;p=c[18232+(n<<2)>>2]|0;a=d[K+32>>0]|0;m=d[K+33>>0]|0;u=d[K+34>>0]|0;k=d[K+35>>0]|0;j=i;i=w;while(1){j=j+-1|0;K=c[i>>2]|0;J=(d[g+((c[q>>2]&K)>>>a)>>0]|0)+N|0;I=(d[f+((c[r>>2]&K)>>>m)>>0]|0)+M|0;b=(d[o+((c[s>>2]&K)>>>u)>>0]|0)+L|0;c[i>>2]=(I>>>0<255?I:255)>>>e<<m|(J>>>0<255?J:255)>>>l<<a|(b>>>0<255?b:255)>>>h<<u|(d[p+((c[t>>2]&K)>>>k)>>0]|0)>>>n<<k;if(!j)break;else i=i+(v<<2)|0}return}case 4:{k=(c[a+16>>2]|0)/(d[K+9>>0]|0|0)|0;j=c[a+20>>2]|0;if((g|0)<(e|0)){w=j+((O(k,g)|0)<<2)+(f<<2)|0;v=k+((f|0)>(b|0)?-1:1)|0;w=(m|0)==0?w+(v<<2)|0:w}else{w=j+((O(k,e)|0)<<2)+(b<<2)|0;i=g-e|0;v=k+((f|0)<(b|0)?-1:1)|0}i=i+((m|0)!=0&1)|0;if(!i)return;q=K+12|0;r=K+16|0;s=K+20|0;t=K+24|0;l=d[K+28>>0]|0;g=c[18232+(l<<2)>>2]|0;e=d[K+29>>0]|0;f=c[18232+(e<<2)>>2]|0;h=d[K+30>>0]|0;o=c[18232+(h<<2)>>2]|0;n=d[K+31>>0]|0;p=c[18232+(n<<2)>>2]|0;a=d[K+32>>0]|0;m=d[K+33>>0]|0;u=d[K+34>>0]|0;k=d[K+35>>0]|0;j=i;i=w;while(1){j=j+-1|0;K=c[i>>2]|0;c[i>>2]=(((O(d[f+((c[r>>2]&K)>>>m)>>0]|0,M)|0)>>>0)/255|0)>>>e<<m|(((O(d[g+((c[q>>2]&K)>>>a)>>0]|0,N)|0)>>>0)/255|0)>>>l<<a|(((O(d[o+((c[s>>2]&K)>>>u)>>0]|0,L)|0)>>>0)/255|0)>>>h<<u|(d[p+((c[t>>2]&K)>>>k)>>0]|0)>>>n<<k;if(!j)break;else i=i+(v<<2)|0}return}default:{k=(c[a+16>>2]|0)/(d[K+9>>0]|0|0)|0;j=c[a+20>>2]|0;if((g|0)<(e|0)){I=j+((O(k,g)|0)<<2)+(f<<2)|0;l=k+((f|0)>(b|0)?-1:1)|0;j=i;i=(m|0)==0?I+(l<<2)|0:I}else{i=j+((O(k,e)|0)<<2)+(b<<2)|0;j=g-e|0;l=k+((f|0)<(b|0)?-1:1)|0}j=j+((m|0)!=0&1)|0;if(!j)return;k=M>>>(d[K+29>>0]|0)<<(d[K+33>>0]|0)|N>>>(d[K+28>>0]|0)<<(d[K+32>>0]|0)|L>>>(d[K+30>>0]|0)<<(d[K+34>>0]|0)|J>>>(d[K+31>>0]|0)<<(d[K+35>>0]|0);while(1){j=j+-1|0;c[i>>2]=k;if(!j)break;else i=i+(l<<2)|0}return}}else switch(h|0){case 1:{i=f-b|0;i=(i|0)<0?0-i|0:i;j=g-e|0;j=(j|0)<0?0-j|0:j;if((i|0)<(j|0)){G=i<<1;h=1;l=0;k=i-j|0;H=G;G=G-j|0;i=j}else{G=j<<1;h=0;l=1;k=j-i|0;H=G;G=G-i|0}F=k<<1;E=(f|0)<(b|0);D=E?0-l|0:l;E=E?-1:1;B=(g|0)<(e|0);C=B?0-h|0:h;B=B?-1:1;v=i+((m|0)!=0&1)|0;if((v|0)<=0)return;w=a+16|0;x=K+12|0;y=K+16|0;z=K+20|0;A=K+24|0;p=c[a+20>>2]|0;n=d[K+28>>0]|0;q=c[18232+(n<<2)>>2]|0;g=d[K+29>>0]|0;r=c[18232+(g<<2)>>2]|0;f=d[K+30>>0]|0;s=c[18232+(f<<2)>>2]|0;o=d[K+31>>0]|0;t=c[18232+(o<<2)>>2]|0;a=d[K+32>>0]|0;m=d[K+33>>0]|0;u=d[K+34>>0]|0;h=d[K+35>>0]|0;k=b;l=0;i=G;while(1){j=p+(O(c[w>>2]|0,e)|0)+(k<<2)|0;K=c[j>>2]|0;c[j>>2]=((((O(d[r+((c[y>>2]&K)>>>m)>>0]|0,I)|0)>>>0)/255|0)+M|0)>>>g<<m|((((O(d[q+((c[x>>2]&K)>>>a)>>0]|0,I)|0)>>>0)/255|0)+N|0)>>>n<<a|((((O(d[s+((c[z>>2]&K)>>>u)>>0]|0,I)|0)>>>0)/255|0)+L|0)>>>f<<u|((((O(d[t+((c[A>>2]&K)>>>h)>>0]|0,I)|0)>>>0)/255|0)+J|0)>>>o<<h;j=(i|0)<0;l=l+1|0;if((l|0)>=(v|0))break;else{e=e+(j?C:B)|0;k=(j?D:E)+k|0;i=(j?H:F)+i|0}}return}case 2:{i=f-b|0;i=(i|0)<0?0-i|0:i;j=g-e|0;j=(j|0)<0?0-j|0:j;if((i|0)<(j|0)){G=i<<1;h=1;l=0;k=i-j|0;H=G;G=G-j|0;i=j}else{G=j<<1;h=0;l=1;k=j-i|0;H=G;G=G-i|0}F=k<<1;E=(f|0)<(b|0);D=E?0-l|0:l;E=E?-1:1;B=(g|0)<(e|0);C=B?0-h|0:h;B=B?-1:1;v=i+((m|0)!=0&1)|0;if((v|0)<=0)return;w=a+16|0;x=K+12|0;y=K+16|0;z=K+20|0;A=K+24|0;p=c[a+20>>2]|0;n=d[K+28>>0]|0;q=c[18232+(n<<2)>>2]|0;g=d[K+29>>0]|0;r=c[18232+(g<<2)>>2]|0;f=d[K+30>>0]|0;s=c[18232+(f<<2)>>2]|0;o=d[K+31>>0]|0;t=c[18232+(o<<2)>>2]|0;a=d[K+32>>0]|0;m=d[K+33>>0]|0;u=d[K+34>>0]|0;h=d[K+35>>0]|0;k=b;l=0;i=G;while(1){j=p+(O(c[w>>2]|0,e)|0)+(k<<2)|0;K=c[j>>2]|0;J=(d[q+((c[x>>2]&K)>>>a)>>0]|0)+N|0;I=(d[r+((c[y>>2]&K)>>>m)>>0]|0)+M|0;b=(d[s+((c[z>>2]&K)>>>u)>>0]|0)+L|0;c[j>>2]=(I>>>0<255?I:255)>>>g<<m|(J>>>0<255?J:255)>>>n<<a|(b>>>0<255?b:255)>>>f<<u|(d[t+((c[A>>2]&K)>>>h)>>0]|0)>>>o<<h;j=(i|0)<0;l=l+1|0;if((l|0)>=(v|0))break;else{e=e+(j?C:B)|0;k=(j?D:E)+k|0;i=(j?H:F)+i|0}}return}case 4:{i=f-b|0;i=(i|0)<0?0-i|0:i;j=g-e|0;j=(j|0)<0?0-j|0:j;if((i|0)<(j|0)){G=i<<1;h=1;l=0;k=i-j|0;H=G;G=G-j|0;i=j}else{G=j<<1;h=0;l=1;k=j-i|0;H=G;G=G-i|0}F=k<<1;E=(f|0)<(b|0);D=E?0-l|0:l;E=E?-1:1;B=(g|0)<(e|0);C=B?0-h|0:h;B=B?-1:1;v=i+((m|0)!=0&1)|0;if((v|0)<=0)return;w=a+16|0;x=K+12|0;y=K+16|0;z=K+20|0;A=K+24|0;p=c[a+20>>2]|0;n=d[K+28>>0]|0;q=c[18232+(n<<2)>>2]|0;g=d[K+29>>0]|0;r=c[18232+(g<<2)>>2]|0;f=d[K+30>>0]|0;s=c[18232+(f<<2)>>2]|0;o=d[K+31>>0]|0;t=c[18232+(o<<2)>>2]|0;a=d[K+32>>0]|0;m=d[K+33>>0]|0;u=d[K+34>>0]|0;h=d[K+35>>0]|0;k=b;l=0;i=G;while(1){j=p+(O(c[w>>2]|0,e)|0)+(k<<2)|0;K=c[j>>2]|0;c[j>>2]=(((O(d[r+((c[y>>2]&K)>>>m)>>0]|0,M)|0)>>>0)/255|0)>>>g<<m|(((O(d[q+((c[x>>2]&K)>>>a)>>0]|0,N)|0)>>>0)/255|0)>>>n<<a|(((O(d[s+((c[z>>2]&K)>>>u)>>0]|0,L)|0)>>>0)/255|0)>>>f<<u|(d[t+((c[A>>2]&K)>>>h)>>0]|0)>>>o<<h;j=(i|0)<0;l=l+1|0;if((l|0)>=(v|0))break;else{e=e+(j?C:B)|0;k=(j?D:E)+k|0;i=(j?H:F)+i|0}}return}default:{j=f-b|0;j=(j|0)<0?0-j|0:j;k=g-e|0;k=(k|0)<0?0-k|0:k;if((j|0)<(k|0)){i=j<<1;n=1;h=0;l=j-k|0;t=i;i=i-k|0;j=k}else{i=k<<1;n=0;h=1;l=k-j|0;t=i;i=i-j|0}s=l<<1;r=(f|0)<(b|0);q=r?0-h|0:h;r=r?-1:1;o=(g|0)<(e|0);p=o?0-n|0:n;o=o?-1:1;g=j+((m|0)!=0&1)|0;if((g|0)<=0)return;f=c[a+20>>2]|0;n=a+16|0;h=M>>>(d[K+29>>0]|0)<<(d[K+33>>0]|0)|N>>>(d[K+28>>0]|0)<<(d[K+32>>0]|0)|L>>>(d[K+30>>0]|0)<<(d[K+34>>0]|0)|J>>>(d[K+31>>0]|0)<<(d[K+35>>0]|0);k=b;l=0;while(1){c[f+(O(c[n>>2]|0,e)|0)+(k<<2)>>2]=h;j=(i|0)<0;l=l+1|0;if((l|0)>=(g|0))break;else{e=e+(j?p:o)|0;k=(j?q:r)+k|0;i=(j?t:s)+i|0}}return}}}function OJ(a,b,e,f,g,h,i,j,k,l,m){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;m=m|0;var n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;H=c[a+4>>2]|0;i=i&255;j=j&255;k=k&255;l=l&255;if((h+-1|0)>>>0<2){J=((O(l,i)|0)>>>0)/255|0;I=((O(l,j)|0)>>>0)/255|0;K=((O(l,k)|0)>>>0)/255|0}else{J=i;I=j;K=k}G=l^255;if((g|0)==(e|0))switch(h|0){case 1:{i=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[H+9>>0]|0|0)|0,g)|0)<<2)|0;j=(m|0)!=0;if((f|0)<(b|0)){t=i+(f<<2)|0;t=j?t:t+4|0;i=b-f|0}else{t=i+(b<<2)|0;i=f-b|0}j=i+(j&1)|0;if(!j)return;m=H+12|0;o=H+16|0;p=H+20|0;q=H+24|0;l=d[H+28>>0]|0;n=c[18232+(l<<2)>>2]|0;e=d[H+29>>0]|0;g=c[18232+(e<<2)>>2]|0;h=d[H+30>>0]|0;f=c[18232+(h<<2)>>2]|0;r=d[H+32>>0]|0;s=d[H+33>>0]|0;k=d[H+34>>0]|0;i=t;while(1){j=j+-1|0;H=c[i>>2]|0;b=((((O(d[g+((c[o>>2]&H)>>>s)>>0]|0,G)|0)>>>0)/255|0)+I|0)>>>e<<s|((((O(d[n+((c[m>>2]&H)>>>r)>>0]|0,G)|0)>>>0)/255|0)+J|0)>>>l<<r;H=((((O(d[f+((c[p>>2]&H)>>>k)>>0]|0,G)|0)>>>0)/255|0)+K|0)>>>h<<k;c[i>>2]=b|c[q>>2]|H;if(!j)break;else i=i+4|0}return}case 2:{i=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[H+9>>0]|0|0)|0,g)|0)<<2)|0;j=(m|0)!=0;if((f|0)<(b|0)){t=i+(f<<2)|0;t=j?t:t+4|0;i=b-f|0}else{t=i+(b<<2)|0;i=f-b|0}j=i+(j&1)|0;if(!j)return;m=H+12|0;o=H+16|0;p=H+20|0;q=H+24|0;l=d[H+28>>0]|0;n=c[18232+(l<<2)>>2]|0;e=d[H+29>>0]|0;g=c[18232+(e<<2)>>2]|0;h=d[H+30>>0]|0;f=c[18232+(h<<2)>>2]|0;r=d[H+32>>0]|0;s=d[H+33>>0]|0;k=d[H+34>>0]|0;i=t;while(1){j=j+-1|0;H=c[i>>2]|0;b=(d[n+((c[m>>2]&H)>>>r)>>0]|0)+J|0;G=(d[g+((c[o>>2]&H)>>>s)>>0]|0)+I|0;H=(d[f+((c[p>>2]&H)>>>k)>>0]|0)+K|0;c[i>>2]=(G>>>0<255?G:255)>>>e<<s|(b>>>0<255?b:255)>>>l<<r|c[q>>2]|(H>>>0<255?H:255)>>>h<<k;if(!j)break;else i=i+4|0}return}case 4:{i=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[H+9>>0]|0|0)|0,g)|0)<<2)|0;j=(m|0)!=0;if((f|0)<(b|0)){t=i+(f<<2)|0;t=j?t:t+4|0;i=b-f|0}else{t=i+(b<<2)|0;i=f-b|0}j=i+(j&1)|0;if(!j)return;m=H+12|0;o=H+16|0;p=H+20|0;q=H+24|0;l=d[H+28>>0]|0;n=c[18232+(l<<2)>>2]|0;e=d[H+29>>0]|0;g=c[18232+(e<<2)>>2]|0;h=d[H+30>>0]|0;f=c[18232+(h<<2)>>2]|0;r=d[H+32>>0]|0;s=d[H+33>>0]|0;k=d[H+34>>0]|0;i=t;while(1){j=j+-1|0;H=c[i>>2]|0;b=(((O(d[g+((c[o>>2]&H)>>>s)>>0]|0,I)|0)>>>0)/255|0)>>>e<<s|(((O(d[n+((c[m>>2]&H)>>>r)>>0]|0,J)|0)>>>0)/255|0)>>>l<<r;H=(((O(d[f+((c[p>>2]&H)>>>k)>>0]|0,K)|0)>>>0)/255|0)>>>h<<k;c[i>>2]=b|c[q>>2]|H;if(!j)break;else i=i+4|0}return}default:{i=(c[a+20>>2]|0)+((O((c[a+16>>2]|0)/(d[H+9>>0]|0|0)|0,g)|0)<<2)|0;k=(m|0)!=0;if((f|0)<(b|0)){i=i+(f<<2)|0;i=k?i:i+4|0;j=b-f|0}else{i=i+(b<<2)|0;j=f-b|0}j=j+(k&1)|0;if(!j)return;e=I>>>(d[H+29>>0]|0)<<(d[H+33>>0]|0)|J>>>(d[H+28>>0]|0)<<(d[H+32>>0]|0);l=K>>>(d[H+30>>0]|0)<<(d[H+34>>0]|0);k=H+24|0;while(1){j=j+-1|0;c[i>>2]=e|c[k>>2]|l;if(!j)break;else i=i+4|0}return}}if((f|0)==(b|0))switch(h|0){case 1:{u=(c[a+16>>2]|0)/(d[H+9>>0]|0|0)|0;i=c[a+20>>2]|0;j=(m|0)!=0;if((g|0)<(e|0)){t=i+((O(u,g)|0)<<2)+(f<<2)|0;t=j?t:t+(u<<2)|0;i=e-g|0}else{t=i+((O(u,e)|0)<<2)+(f<<2)|0;i=g-e|0}j=i+(j&1)|0;if(!j)return;m=H+12|0;o=H+16|0;p=H+20|0;q=H+24|0;l=d[H+28>>0]|0;n=c[18232+(l<<2)>>2]|0;e=d[H+29>>0]|0;g=c[18232+(e<<2)>>2]|0;h=d[H+30>>0]|0;f=c[18232+(h<<2)>>2]|0;r=d[H+32>>0]|0;s=d[H+33>>0]|0;k=d[H+34>>0]|0;i=t;while(1){j=j+-1|0;H=c[i>>2]|0;b=((((O(d[g+((c[o>>2]&H)>>>s)>>0]|0,G)|0)>>>0)/255|0)+I|0)>>>e<<s|((((O(d[n+((c[m>>2]&H)>>>r)>>0]|0,G)|0)>>>0)/255|0)+J|0)>>>l<<r;H=((((O(d[f+((c[p>>2]&H)>>>k)>>0]|0,G)|0)>>>0)/255|0)+K|0)>>>h<<k;c[i>>2]=b|c[q>>2]|H;if(!j)break;else i=i+(u<<2)|0}return}case 2:{u=(c[a+16>>2]|0)/(d[H+9>>0]|0|0)|0;i=c[a+20>>2]|0;j=(m|0)!=0;if((g|0)<(e|0)){t=i+((O(u,g)|0)<<2)+(f<<2)|0;t=j?t:t+(u<<2)|0;i=e-g|0}else{t=i+((O(u,e)|0)<<2)+(f<<2)|0;i=g-e|0}j=i+(j&1)|0;if(!j)return;m=H+12|0;o=H+16|0;p=H+20|0;q=H+24|0;l=d[H+28>>0]|0;n=c[18232+(l<<2)>>2]|0;e=d[H+29>>0]|0;g=c[18232+(e<<2)>>2]|0;h=d[H+30>>0]|0;f=c[18232+(h<<2)>>2]|0;r=d[H+32>>0]|0;s=d[H+33>>0]|0;k=d[H+34>>0]|0;i=t;while(1){j=j+-1|0;H=c[i>>2]|0;b=(d[n+((c[m>>2]&H)>>>r)>>0]|0)+J|0;G=(d[g+((c[o>>2]&H)>>>s)>>0]|0)+I|0;H=(d[f+((c[p>>2]&H)>>>k)>>0]|0)+K|0;c[i>>2]=(G>>>0<255?G:255)>>>e<<s|(b>>>0<255?b:255)>>>l<<r|c[q>>2]|(H>>>0<255?H:255)>>>h<<k;if(!j)break;else i=i+(u<<2)|0}return}case 4:{u=(c[a+16>>2]|0)/(d[H+9>>0]|0|0)|0;i=c[a+20>>2]|0;j=(m|0)!=0;if((g|0)<(e|0)){t=i+((O(u,g)|0)<<2)+(f<<2)|0;t=j?t:t+(u<<2)|0;i=e-g|0}else{t=i+((O(u,e)|0)<<2)+(f<<2)|0;i=g-e|0}j=i+(j&1)|0;if(!j)return;m=H+12|0;o=H+16|0;p=H+20|0;q=H+24|0;l=d[H+28>>0]|0;n=c[18232+(l<<2)>>2]|0;e=d[H+29>>0]|0;g=c[18232+(e<<2)>>2]|0;h=d[H+30>>0]|0;f=c[18232+(h<<2)>>2]|0;r=d[H+32>>0]|0;s=d[H+33>>0]|0;k=d[H+34>>0]|0;i=t;while(1){j=j+-1|0;H=c[i>>2]|0;b=(((O(d[g+((c[o>>2]&H)>>>s)>>0]|0,I)|0)>>>0)/255|0)>>>e<<s|(((O(d[n+((c[m>>2]&H)>>>r)>>0]|0,J)|0)>>>0)/255|0)>>>l<<r;H=(((O(d[f+((c[p>>2]&H)>>>k)>>0]|0,K)|0)>>>0)/255|0)>>>h<<k;c[i>>2]=b|c[q>>2]|H;if(!j)break;else i=i+(u<<2)|0}return}default:{h=(c[a+16>>2]|0)/(d[H+9>>0]|0|0)|0;i=c[a+20>>2]|0;k=(m|0)!=0;if((g|0)<(e|0)){i=i+((O(h,g)|0)<<2)+(f<<2)|0;i=k?i:i+(h<<2)|0;j=e-g|0}else{i=i+((O(h,e)|0)<<2)+(f<<2)|0;j=g-e|0}j=j+(k&1)|0;if(!j)return;e=I>>>(d[H+29>>0]|0)<<(d[H+33>>0]|0)|J>>>(d[H+28>>0]|0)<<(d[H+32>>0]|0);l=K>>>(d[H+30>>0]|0)<<(d[H+34>>0]|0);k=H+24|0;while(1){j=j+-1|0;c[i>>2]=e|c[k>>2]|l;if(!j)break;else i=i+(h<<2)|0}return}}F=b-f|0;i=e-g|0;if((((F|0)<0?0-F|0:F)|0)==(((i|0)<0?0-i|0:i)|0))switch(h|0){case 1:{k=(c[a+16>>2]|0)/(d[H+9>>0]|0|0)|0;j=c[a+20>>2]|0;if((g|0)<(e|0)){u=j+((O(k,g)|0)<<2)+(f<<2)|0;t=k+((f|0)>(b|0)?-1:1)|0;u=(m|0)==0?u+(t<<2)|0:u}else{u=j+((O(k,e)|0)<<2)+(b<<2)|0;i=g-e|0;t=k+((f|0)<(b|0)?-1:1)|0}i=i+((m|0)!=0&1)|0;if(!i)return;m=H+12|0;o=H+16|0;p=H+20|0;q=H+24|0;l=d[H+28>>0]|0;n=c[18232+(l<<2)>>2]|0;e=d[H+29>>0]|0;g=c[18232+(e<<2)>>2]|0;h=d[H+30>>0]|0;f=c[18232+(h<<2)>>2]|0;r=d[H+32>>0]|0;s=d[H+33>>0]|0;k=d[H+34>>0]|0;j=i;i=u;while(1){j=j+-1|0;H=c[i>>2]|0;b=((((O(d[g+((c[o>>2]&H)>>>s)>>0]|0,G)|0)>>>0)/255|0)+I|0)>>>e<<s|((((O(d[n+((c[m>>2]&H)>>>r)>>0]|0,G)|0)>>>0)/255|0)+J|0)>>>l<<r;H=((((O(d[f+((c[p>>2]&H)>>>k)>>0]|0,G)|0)>>>0)/255|0)+K|0)>>>h<<k;c[i>>2]=b|c[q>>2]|H;if(!j)break;else i=i+(t<<2)|0}return}case 2:{k=(c[a+16>>2]|0)/(d[H+9>>0]|0|0)|0;j=c[a+20>>2]|0;if((g|0)<(e|0)){u=j+((O(k,g)|0)<<2)+(f<<2)|0;t=k+((f|0)>(b|0)?-1:1)|0;u=(m|0)==0?u+(t<<2)|0:u}else{u=j+((O(k,e)|0)<<2)+(b<<2)|0;i=g-e|0;t=k+((f|0)<(b|0)?-1:1)|0}i=i+((m|0)!=0&1)|0;if(!i)return;m=H+12|0;o=H+16|0;p=H+20|0;q=H+24|0;l=d[H+28>>0]|0;n=c[18232+(l<<2)>>2]|0;e=d[H+29>>0]|0;g=c[18232+(e<<2)>>2]|0;h=d[H+30>>0]|0;f=c[18232+(h<<2)>>2]|0;r=d[H+32>>0]|0;s=d[H+33>>0]|0;k=d[H+34>>0]|0;j=i;i=u;while(1){j=j+-1|0;H=c[i>>2]|0;b=(d[n+((c[m>>2]&H)>>>r)>>0]|0)+J|0;G=(d[g+((c[o>>2]&H)>>>s)>>0]|0)+I|0;H=(d[f+((c[p>>2]&H)>>>k)>>0]|0)+K|0;c[i>>2]=(G>>>0<255?G:255)>>>e<<s|(b>>>0<255?b:255)>>>l<<r|c[q>>2]|(H>>>0<255?H:255)>>>h<<k;if(!j)break;else i=i+(t<<2)|0}return}case 4:{k=(c[a+16>>2]|0)/(d[H+9>>0]|0|0)|0;j=c[a+20>>2]|0;if((g|0)<(e|0)){u=j+((O(k,g)|0)<<2)+(f<<2)|0;t=k+((f|0)>(b|0)?-1:1)|0;u=(m|0)==0?u+(t<<2)|0:u}else{u=j+((O(k,e)|0)<<2)+(b<<2)|0;i=g-e|0;t=k+((f|0)<(b|0)?-1:1)|0}i=i+((m|0)!=0&1)|0;if(!i)return;m=H+12|0;o=H+16|0;p=H+20|0;q=H+24|0;l=d[H+28>>0]|0;n=c[18232+(l<<2)>>2]|0;e=d[H+29>>0]|0;g=c[18232+(e<<2)>>2]|0;h=d[H+30>>0]|0;f=c[18232+(h<<2)>>2]|0;r=d[H+32>>0]|0;s=d[H+33>>0]|0;k=d[H+34>>0]|0;j=i;i=u;while(1){j=j+-1|0;H=c[i>>2]|0;b=(((O(d[g+((c[o>>2]&H)>>>s)>>0]|0,I)|0)>>>0)/255|0)>>>e<<s|(((O(d[n+((c[m>>2]&H)>>>r)>>0]|0,J)|0)>>>0)/255|0)>>>l<<r;H=(((O(d[f+((c[p>>2]&H)>>>k)>>0]|0,K)|0)>>>0)/255|0)>>>h<<k;c[i>>2]=b|c[q>>2]|H;if(!j)break;else i=i+(t<<2)|0}return}default:{k=(c[a+16>>2]|0)/(d[H+9>>0]|0|0)|0;j=c[a+20>>2]|0;if((g|0)<(e|0)){G=j+((O(k,g)|0)<<2)+(f<<2)|0;h=k+((f|0)>(b|0)?-1:1)|0;j=i;i=(m|0)==0?G+(h<<2)|0:G}else{i=j+((O(k,e)|0)<<2)+(b<<2)|0;j=g-e|0;h=k+((f|0)<(b|0)?-1:1)|0}j=j+((m|0)!=0&1)|0;if(!j)return;e=I>>>(d[H+29>>0]|0)<<(d[H+33>>0]|0)|J>>>(d[H+28>>0]|0)<<(d[H+32>>0]|0);l=K>>>(d[H+30>>0]|0)<<(d[H+34>>0]|0);k=H+24|0;while(1){j=j+-1|0;c[i>>2]=e|c[k>>2]|l;if(!j)break;else i=i+(h<<2)|0}return}}else switch(h|0){case 1:{i=f-b|0;i=(i|0)<0?0-i|0:i;j=g-e|0;j=(j|0)<0?0-j|0:j;if((i|0)<(j|0)){E=i<<1;h=1;l=0;k=i-j|0;F=E;E=E-j|0;i=j}else{E=j<<1;h=0;l=1;k=j-i|0;F=E;E=E-i|0}D=k<<1;C=(f|0)<(b|0);B=C?0-l|0:l;C=C?-1:1;z=(g|0)<(e|0);A=z?0-h|0:h;z=z?-1:1;t=i+((m|0)!=0&1)|0;if((t|0)<=0)return;u=a+16|0;v=H+12|0;w=H+16|0;x=H+20|0;y=H+24|0;m=c[a+20>>2]|0;n=d[H+28>>0]|0;o=c[18232+(n<<2)>>2]|0;g=d[H+29>>0]|0;p=c[18232+(g<<2)>>2]|0;f=d[H+30>>0]|0;q=c[18232+(f<<2)>>2]|0;r=d[H+32>>0]|0;s=d[H+33>>0]|0;h=d[H+34>>0]|0;k=b;l=0;i=E;while(1){j=m+(O(c[u>>2]|0,e)|0)+(k<<2)|0;H=c[j>>2]|0;b=((((O(d[p+((c[w>>2]&H)>>>s)>>0]|0,G)|0)>>>0)/255|0)+I|0)>>>g<<s|((((O(d[o+((c[v>>2]&H)>>>r)>>0]|0,G)|0)>>>0)/255|0)+J|0)>>>n<<r;H=((((O(d[q+((c[x>>2]&H)>>>h)>>0]|0,G)|0)>>>0)/255|0)+K|0)>>>f<<h;c[j>>2]=b|c[y>>2]|H;j=(i|0)<0;l=l+1|0;if((l|0)>=(t|0))break;else{e=e+(j?A:z)|0;k=(j?B:C)+k|0;i=(j?F:D)+i|0}}return}case 2:{i=f-b|0;i=(i|0)<0?0-i|0:i;j=g-e|0;j=(j|0)<0?0-j|0:j;if((i|0)<(j|0)){E=i<<1;h=1;l=0;k=i-j|0;F=E;E=E-j|0;i=j}else{E=j<<1;h=0;l=1;k=j-i|0;F=E;E=E-i|0}D=k<<1;C=(f|0)<(b|0);B=C?0-l|0:l;C=C?-1:1;z=(g|0)<(e|0);A=z?0-h|0:h;z=z?-1:1;t=i+((m|0)!=0&1)|0;if((t|0)<=0)return;u=a+16|0;v=H+12|0;w=H+16|0;x=H+20|0;y=H+24|0;m=c[a+20>>2]|0;n=d[H+28>>0]|0;o=c[18232+(n<<2)>>2]|0;g=d[H+29>>0]|0;p=c[18232+(g<<2)>>2]|0;f=d[H+30>>0]|0;q=c[18232+(f<<2)>>2]|0;r=d[H+32>>0]|0;s=d[H+33>>0]|0;h=d[H+34>>0]|0;k=b;l=0;i=E;while(1){j=m+(O(c[u>>2]|0,e)|0)+(k<<2)|0;H=c[j>>2]|0;b=(d[o+((c[v>>2]&H)>>>r)>>0]|0)+J|0;G=(d[p+((c[w>>2]&H)>>>s)>>0]|0)+I|0;H=(d[q+((c[x>>2]&H)>>>h)>>0]|0)+K|0;c[j>>2]=(G>>>0<255?G:255)>>>g<<s|(b>>>0<255?b:255)>>>n<<r|c[y>>2]|(H>>>0<255?H:255)>>>f<<h;j=(i|0)<0;l=l+1|0;if((l|0)>=(t|0))break;else{e=e+(j?A:z)|0;k=(j?B:C)+k|0;i=(j?F:D)+i|0}}return}case 4:{i=f-b|0;i=(i|0)<0?0-i|0:i;j=g-e|0;j=(j|0)<0?0-j|0:j;if((i|0)<(j|0)){E=i<<1;h=1;l=0;k=i-j|0;F=E;E=E-j|0;i=j}else{E=j<<1;h=0;l=1;k=j-i|0;F=E;E=E-i|0}D=k<<1;C=(f|0)<(b|0);B=C?0-l|0:l;C=C?-1:1;z=(g|0)<(e|0);A=z?0-h|0:h;z=z?-1:1;t=i+((m|0)!=0&1)|0;if((t|0)<=0)return;u=a+16|0;v=H+12|0;w=H+16|0;x=H+20|0;y=H+24|0;m=c[a+20>>2]|0;n=d[H+28>>0]|0;o=c[18232+(n<<2)>>2]|0;g=d[H+29>>0]|0;p=c[18232+(g<<2)>>2]|0;f=d[H+30>>0]|0;q=c[18232+(f<<2)>>2]|0;r=d[H+32>>0]|0;s=d[H+33>>0]|0;h=d[H+34>>0]|0;k=b;l=0;i=E;while(1){j=m+(O(c[u>>2]|0,e)|0)+(k<<2)|0;H=c[j>>2]|0;b=(((O(d[p+((c[w>>2]&H)>>>s)>>0]|0,I)|0)>>>0)/255|0)>>>g<<s|(((O(d[o+((c[v>>2]&H)>>>r)>>0]|0,J)|0)>>>0)/255|0)>>>n<<r;H=(((O(d[q+((c[x>>2]&H)>>>h)>>0]|0,K)|0)>>>0)/255|0)>>>f<<h;c[j>>2]=b|c[y>>2]|H;j=(i|0)<0;l=l+1|0;if((l|0)>=(t|0))break;else{e=e+(j?A:z)|0;k=(j?B:C)+k|0;i=(j?F:D)+i|0}}return}default:{j=f-b|0;j=(j|0)<0?0-j|0:j;k=g-e|0;k=(k|0)<0?0-k|0:k;if((j|0)<(k|0)){i=j<<1;n=1;h=0;l=j-k|0;u=i;i=i-k|0;j=k}else{i=k<<1;n=0;h=1;l=k-j|0;u=i;i=i-j|0}t=l<<1;s=(f|0)<(b|0);r=s?0-h|0:h;s=s?-1:1;p=(g|0)<(e|0);q=p?0-n|0:n;p=p?-1:1;m=j+((m|0)!=0&1)|0;if((m|0)<=0)return;o=c[a+20>>2]|0;f=a+16|0;g=I>>>(d[H+29>>0]|0)<<(d[H+33>>0]|0)|J>>>(d[H+28>>0]|0)<<(d[H+32>>0]|0);n=K>>>(d[H+30>>0]|0)<<(d[H+34>>0]|0);h=H+24|0;k=b;l=0;while(1){j=o+(O(c[f>>2]|0,e)|0)+(k<<2)|0;c[j>>2]=g|c[h>>2]|n;j=(i|0)<0;l=l+1|0;if((l|0)>=(m|0))break;else{e=e+(j?q:p)|0;k=(j?r:s)+k|0;i=(j?u:t)+i|0}}return}}}function PJ(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=l;l=l+48|0;i=B+32|0;k=B+24|0;j=B+16|0;h=B+8|0;g=B;if(!a){c[g>>2]=296043;mE(310091,g);f=0;l=B;return f|0}if(!b){c[h>>2]=296048;mE(310091,h);f=0;l=B;return f|0}if(!d){c[j>>2]=296051;mE(310091,j);f=0;l=B;return f|0}if(!e){c[k>>2]=296054;mE(310091,k);f=0;l=B;return f|0}if(!f){c[i>>2]=296057;mE(310091,i);f=0;l=B;return f|0}j=c[a+8>>2]|0;if((j|0)<1){f=0;l=B;return f|0}k=c[a+12>>2]|0;if((k|0)<1){f=0;l=B;return f|0}t=c[b>>2]|0;g=c[d>>2]|0;h=c[e>>2]|0;i=c[f>>2]|0;z=c[a>>2]|0;y=c[a+4>>2]|0;w=j+z|0;x=w+-1|0;u=k+y|0;v=u+-1|0;p=(t|0)<(z|0);n=(t|0)>=(w|0);o=p|n;q=(h|0)<(z|0);r=(h|0)<(w|0);j=r^1;a=(g|0)<(y|0);k=(g|0)>=(u|0);s=(i|0)<(y|0);m=(i|0)<(u|0);if(m&((s|(k|(a|(q|o|j))))^1)){f=1;l=B;return f|0}if(p&q){f=0;l=B;return f|0}if(!((m|k^1)&((a&s|n&j)^1))){f=0;l=B;return f|0}if((g|0)==(i|0)){if(o)c[b>>2]=p?z:x;if(!(q|j)){f=1;l=B;return f|0}c[e>>2]=q?z:x;f=1;l=B;return f|0}if((t|0)==(h|0)){if(a|k)c[d>>2]=a?y:v;if(!(s|m^1)){f=1;l=B;return f|0}c[f>>2]=s?y:v;f=1;l=B;return f|0}j=a?2:k&1;if(p)k=j|4;else k=(w|0)>(t|0)?j:j|8;a=s?2:(u|0)<=(i|0)&1;a=q?a|4:r?a:a|8;a:do if(!(a|k))j=t;else{n=0;o=0;j=t;while(1){r=x-j|0;s=z-j|0;p=v-g|0;q=y-g|0;if(!k){m=o;k=h;break}if(a&k|0){g=0;A=57;break}do if(!(k&2)){if(k&1|0){m=((O(h-j|0,p)|0)/(i-g|0)|0)+j|0;g=v;break}if(k&4|0){m=z;g=((O(s,i-g|0)|0)/(h-j|0)|0)+g|0;break}if(!(k&8)){m=n;g=o;break}m=x;g=((O(r,i-g|0)|0)/(h-j|0)|0)+g|0}else{m=((O(h-j|0,q)|0)/(i-g|0)|0)+j|0;g=y}while(0);j=(y|0)>(g|0)?2:(u|0)<=(g|0)&1;if((z|0)>(m|0))k=j|4;else k=(w|0)>(m|0)?j:j|8;if(!(a|k)){j=m;break a}else{n=m;o=g;j=m}}if((A|0)==57){l=B;return g|0}while(1){do if(!(a&2)){if(a&1|0){h=((O(k-j|0,p)|0)/(i-g|0)|0)+j|0;i=v;break}if(a&4|0){h=z;i=((O(s,i-g|0)|0)/(k-j|0)|0)+g|0;break}if(!(a&8)){h=n;i=m;break}h=x;i=((O(r,i-g|0)|0)/(k-j|0)|0)+g|0}else{h=((O(k-j|0,q)|0)/(i-g|0)|0)+j|0;i=y}while(0);a=(y|0)>(i|0)?2:(u|0)<=(i|0)&1;if((z|0)>(h|0)){n=h;m=i;k=h;a=a|4;continue}if((w|0)<=(h|0)){n=h;m=i;k=h;a=a|8;continue}if(!a)break;else{n=h;m=i;k=h}}}while(0);c[b>>2]=j;c[d>>2]=g;c[e>>2]=h;c[f>>2]=i;f=1;l=B;return f|0}function QJ(a,f,g,h,i,j,k,l){a=a|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;l=~l&255;switch(h|0){case 1:{g=(c[a+20>>2]|0)+(O(c[a+16>>2]|0,g)|0)+(f<<1)|0;h=e[g>>1]|0;f=(((O(d[289322+(h&31)>>0]|0,l)|0)>>>0)/255|0)+(k&255)|0;a=(((O(d[289322+(h>>>5&31)>>0]|0,l)|0)>>>0)/255|0)+(j&255)|0;l=(((O(d[289322+(h>>>10&31)>>0]|0,l)|0)>>>0)/255|0)+(i&255)|0;break}case 2:{g=(c[a+20>>2]|0)+(O(c[a+16>>2]|0,g)|0)+(f<<1)|0;f=e[g>>1]|0;l=(d[289322+(f>>>10&31)>>0]|0)+(i&255)|0;a=(d[289322+(f>>>5&31)>>0]|0)+(j&255)|0;f=(d[289322+(f&31)>>0]|0)+(k&255)|0;f=f>>>0<255?f:255;a=a>>>0<255?a:255;l=l>>>0<255?l:255;break}case 4:{g=(c[a+20>>2]|0)+(O(c[a+16>>2]|0,g)|0)+(f<<1)|0;l=e[g>>1]|0;f=((O(d[289322+(l&31)>>0]|0,k&255)|0)>>>0)/255|0;a=((O(d[289322+(l>>>5&31)>>0]|0,j&255)|0)>>>0)/255|0;l=((O(d[289322+(l>>>10&31)>>0]|0,i&255)|0)>>>0)/255|0;break}default:{g=(c[a+20>>2]|0)+(O(c[a+16>>2]|0,g)|0)+(f<<1)|0;f=k&255;a=j&255;l=i&255}}b[g>>1]=a>>>3<<5|l>>>3<<10|f>>>3;return 0}function RJ(a,f,g,h,i,j,k,l){a=a|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;l=l|0;l=~l&255;switch(h|0){case 1:{g=(c[a+20>>2]|0)+(O(c[a+16>>2]|0,g)|0)+(f<<1)|0;h=e[g>>1]|0;f=(((O(d[289322+(h&31)>>0]|0,l)|0)>>>0)/255|0)+(k&255)|0;a=(((O(d[289258+(h>>>5&63)>>0]|0,l)|0)>>>0)/255|0)+(j&255)|0;l=(((O(d[289322+(h>>>11)>>0]|0,l)|0)>>>0)/255|0)+(i&255)|0;break}case 2:{g=(c[a+20>>2]|0)+(O(c[a+16>>2]|0,g)|0)+(f<<1)|0;f=e[g>>1]|0;l=(d[289322+(f>>>11)>>0]|0)+(i&255)|0;a=(d[289258+(f>>>5&63)>>0]|0)+(j&255)|0;f=(d[289322+(f&31)>>0]|0)+(k&255)|0;f=f>>>0<255?f:255;a=a>>>0<255?a:255;l=l>>>0<255?l:255;break}case 4:{g=(c[a+20>>2]|0)+(O(c[a+16>>2]|0,g)|0)+(f<<1)|0;l=e[g>>1]|0;f=((O(d[289322+(l&31)>>0]|0,k&255)|0)>>>0)/255|0;a=((O(d[289258+(l>>>5&63)>>0]|0,j&255)|0)>>>0)/255|0;l=((O(d[289322+(l>>>11)>>0]|0,i&255)|0)>>>0)/255|0;break}default:{g=(c[a+20>>2]|0)+(O(c[a+16>>2]|0,g)|0)+(f<<1)|0;f=k&255;a=j&255;l=i&255}}b[g>>1]=a>>>2<<5|l>>>3<<11|f>>>3;return 0}function SJ(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;i=~i&255;switch(e|0){case 1:{e=(c[a+20>>2]|0)+(O(c[a+16>>2]|0,d)|0)+(b<<2)|0;b=c[e>>2]|0;h=(((O(b&255,i)|0)>>>0)/255|0)+(h&255)|0;d=(((O(b>>>8&255,i)|0)>>>0)/255|0)+(g&255)|0;g=(((O(b>>>16&255,i)|0)>>>0)/255|0)+(f&255)|0;g=g<<16;f=d<<8;g=f|g;h=g|h;c[e>>2]=h;return 0}case 2:{d=(c[a+20>>2]|0)+(O(c[a+16>>2]|0,d)|0)+(b<<2)|0;b=c[d>>2]|0;f=(b>>>16&255)+(f&255)|0;e=(b>>>8&255)+(g&255)|0;g=(b&255)+(h&255)|0;h=d;g=g>>>0<255?g:255;e=e>>>0<255?e:255;f=f>>>0<255?f:255;f=f<<16;e=e<<8;f=e|f;g=f|g;c[h>>2]=g;return 0}case 4:{e=(c[a+20>>2]|0)+(O(c[a+16>>2]|0,d)|0)+(b<<2)|0;b=c[e>>2]|0;h=((O(b&255,h&255)|0)>>>0)/255|0;d=((O(b>>>8&255,g&255)|0)>>>0)/255|0;g=((O(b>>>16&255,f&255)|0)>>>0)/255|0;g=g<<16;f=d<<8;g=f|g;h=g|h;c[e>>2]=h;return 0}default:{e=(c[a+20>>2]|0)+(O(c[a+16>>2]|0,d)|0)+(b<<2)|0;h=h&255;d=g&255;g=f&255;g=g<<16;f=d<<8;g=f|g;h=g|h;c[e>>2]=h;return 0}}return 0}function TJ(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0;i=i&255;k=i^255;switch(e|0){case 1:{a=(c[a+20>>2]|0)+(O(c[a+16>>2]|0,d)|0)+(b<<2)|0;d=c[a>>2]|0;j=(((O(d>>>16&255,k)|0)>>>0)/255|0)+(f&255)|0;f=(((O(d&255,k)|0)>>>0)/255|0)+(h&255)|0;e=(((O(d>>>8&255,k)|0)>>>0)/255|0)+(g&255)|0;i=(((O(d>>>24,k)|0)>>>0)/255|0)+i<<24;break}case 2:{a=(c[a+20>>2]|0)+(O(c[a+16>>2]|0,d)|0)+(b<<2)|0;i=c[a>>2]|0;j=(i>>>16&255)+(f&255)|0;e=(i>>>8&255)+(g&255)|0;f=(i&255)+(h&255)|0;j=j>>>0<255?j:255;f=f>>>0<255?f:255;e=e>>>0<255?e:255;i=i&-16777216;break}case 4:{a=(c[a+20>>2]|0)+(O(c[a+16>>2]|0,d)|0)+(b<<2)|0;i=c[a>>2]|0;j=((O(i>>>16&255,f&255)|0)>>>0)/255|0;f=((O(i&255,h&255)|0)>>>0)/255|0;e=((O(i>>>8&255,g&255)|0)>>>0)/255|0;i=i&-16777216;break}default:{j=f&255;a=(c[a+20>>2]|0)+(O(c[a+16>>2]|0,d)|0)+(b<<2)|0;f=h&255;e=g&255;i=i<<24}}c[a>>2]=i|j<<16|e<<8|f;return 0}function UJ(f,g,h,i,j,k,m,n){f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;m=m|0;n=n|0;var o=0,p=0,q=0,r=0,s=0,t=0;q=l;l=l+16|0;o=q;p=c[f+4>>2]|0;n=~n&255;switch(a[p+9>>0]|0){case 2:{switch(i|0){case 1:{g=(c[f+20>>2]|0)+(O(c[f+16>>2]|0,h)|0)+(g<<1)|0;r=d[p+28>>0]|0;h=e[g>>1]|0;f=d[p+32>>0]|0;t=d[p+29>>0]|0;s=d[p+33>>0]|0;i=d[p+30>>0]|0;o=d[p+34>>0]|0;f=((((O(d[(c[18232+(t<<2)>>2]|0)+((c[p+16>>2]&h)>>>s)>>0]|0,n)|0)>>>0)/255|0)+(k&255)|0)>>>t<<s|((((O(d[(c[18232+(r<<2)>>2]|0)+((h&c[p+12>>2])>>>f)>>0]|0,n)|0)>>>0)/255|0)+(j&255)|0)>>>r<<f;n=((((O(d[(c[18232+(i<<2)>>2]|0)+((c[p+20>>2]&h)>>>o)>>0]|0,n)|0)>>>0)/255|0)+(m&255)|0)>>>i<<o;break}case 2:{g=(c[f+20>>2]|0)+(O(c[f+16>>2]|0,h)|0)+(g<<1)|0;r=d[p+28>>0]|0;s=e[g>>1]|0;f=d[p+32>>0]|0;i=d[p+29>>0]|0;o=d[p+33>>0]|0;t=d[p+30>>0]|0;n=d[p+34>>0]|0;j=(d[(c[18232+(r<<2)>>2]|0)+((s&c[p+12>>2])>>>f)>>0]|0)+(j&255)|0;k=(d[(c[18232+(i<<2)>>2]|0)+((c[p+16>>2]&s)>>>o)>>0]|0)+(k&255)|0;s=(d[(c[18232+(t<<2)>>2]|0)+((c[p+20>>2]&s)>>>n)>>0]|0)+(m&255)|0;f=(k>>>0<255?k:255)>>>i<<o|(j>>>0<255?j:255)>>>r<<f;n=(s>>>0<255?s:255)>>>t<<n;break}case 4:{g=(c[f+20>>2]|0)+(O(c[f+16>>2]|0,h)|0)+(g<<1)|0;r=d[p+28>>0]|0;s=e[g>>1]|0;f=d[p+32>>0]|0;i=d[p+29>>0]|0;o=d[p+33>>0]|0;t=d[p+30>>0]|0;n=d[p+34>>0]|0;f=(((O(d[(c[18232+(i<<2)>>2]|0)+((c[p+16>>2]&s)>>>o)>>0]|0,k&255)|0)>>>0)/255|0)>>>i<<o|(((O(d[(c[18232+(r<<2)>>2]|0)+((s&c[p+12>>2])>>>f)>>0]|0,j&255)|0)>>>0)/255|0)>>>r<<f;n=(((O(d[(c[18232+(t<<2)>>2]|0)+((c[p+20>>2]&s)>>>n)>>0]|0,m&255)|0)>>>0)/255|0)>>>t<<n;break}default:{g=(c[f+20>>2]|0)+(O(c[f+16>>2]|0,h)|0)+(g<<1)|0;f=(k&255)>>>(d[p+29>>0]|0)<<d[p+33>>0]|(j&255)>>>(d[p+28>>0]|0)<<d[p+32>>0];n=(m&255)>>>(d[p+30>>0]|0)<<d[p+34>>0]}}b[g>>1]=f|n|c[p+24>>2];t=0;l=q;return t|0}case 4:{switch(i|0){case 1:{g=(c[f+20>>2]|0)+(O(c[f+16>>2]|0,h)|0)+(g<<2)|0;o=d[p+28>>0]|0;r=c[g>>2]|0;f=d[p+32>>0]|0;h=d[p+29>>0]|0;i=d[p+33>>0]|0;s=d[p+30>>0]|0;t=d[p+34>>0]|0;f=((((O(d[(c[18232+(h<<2)>>2]|0)+((c[p+16>>2]&r)>>>i)>>0]|0,n)|0)>>>0)/255|0)+(k&255)|0)>>>h<<i|((((O(d[(c[18232+(o<<2)>>2]|0)+((c[p+12>>2]&r)>>>f)>>0]|0,n)|0)>>>0)/255|0)+(j&255)|0)>>>o<<f;n=((((O(d[(c[18232+(s<<2)>>2]|0)+((c[p+20>>2]&r)>>>t)>>0]|0,n)|0)>>>0)/255|0)+(m&255)|0)>>>s<<t;break}case 2:{g=(c[f+20>>2]|0)+(O(c[f+16>>2]|0,h)|0)+(g<<2)|0;r=d[p+28>>0]|0;s=c[g>>2]|0;f=d[p+32>>0]|0;i=d[p+29>>0]|0;o=d[p+33>>0]|0;t=d[p+30>>0]|0;n=d[p+34>>0]|0;j=(d[(c[18232+(r<<2)>>2]|0)+((c[p+12>>2]&s)>>>f)>>0]|0)+(j&255)|0;k=(d[(c[18232+(i<<2)>>2]|0)+((c[p+16>>2]&s)>>>o)>>0]|0)+(k&255)|0;s=(d[(c[18232+(t<<2)>>2]|0)+((c[p+20>>2]&s)>>>n)>>0]|0)+(m&255)|0;f=(k>>>0<255?k:255)>>>i<<o|(j>>>0<255?j:255)>>>r<<f;n=(s>>>0<255?s:255)>>>t<<n;break}case 4:{g=(c[f+20>>2]|0)+(O(c[f+16>>2]|0,h)|0)+(g<<2)|0;r=d[p+28>>0]|0;s=c[g>>2]|0;f=d[p+32>>0]|0;i=d[p+29>>0]|0;o=d[p+33>>0]|0;t=d[p+30>>0]|0;n=d[p+34>>0]|0;f=(((O(d[(c[18232+(i<<2)>>2]|0)+((c[p+16>>2]&s)>>>o)>>0]|0,k&255)|0)>>>0)/255|0)>>>i<<o|(((O(d[(c[18232+(r<<2)>>2]|0)+((c[p+12>>2]&s)>>>f)>>0]|0,j&255)|0)>>>0)/255|0)>>>r<<f;n=(((O(d[(c[18232+(t<<2)>>2]|0)+((c[p+20>>2]&s)>>>n)>>0]|0,m&255)|0)>>>0)/255|0)>>>t<<n;break}default:{g=(c[f+20>>2]|0)+(O(c[f+16>>2]|0,h)|0)+(g<<2)|0;f=(k&255)>>>(d[p+29>>0]|0)<<d[p+33>>0]|(j&255)>>>(d[p+28>>0]|0)<<d[p+32>>0];n=(m&255)>>>(d[p+30>>0]|0)<<d[p+34>>0]}}c[g>>2]=f|n|c[p+24>>2];t=0;l=q;return t|0}default:{mE(294969,o);t=-1;l=q;return t|0}}return 0}function VJ(b,e,f,g,h,i,j,k){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;k=k|0;var m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;o=l;l=l+16|0;n=c[b+4>>2]|0;k=k&255;m=k^255;if((a[n+9>>0]|0)!=4){mE(294969,o);n=-1;l=o;return n|0}switch(g|0){case 1:{e=(c[b+20>>2]|0)+(O(c[b+16>>2]|0,f)|0)+(e<<2)|0;s=d[n+28>>0]|0;p=c[e>>2]|0;r=d[n+32>>0]|0;u=d[n+29>>0]|0;t=d[n+33>>0]|0;q=d[n+30>>0]|0;b=d[n+34>>0]|0;f=d[n+31>>0]|0;g=d[n+35>>0]|0;b=((((O(d[(c[18232+(u<<2)>>2]|0)+((c[n+16>>2]&p)>>>t)>>0]|0,m)|0)>>>0)/255|0)+(i&255)|0)>>>u<<t|((((O(d[(c[18232+(s<<2)>>2]|0)+((c[n+12>>2]&p)>>>r)>>0]|0,m)|0)>>>0)/255|0)+(h&255)|0)>>>s<<r|((((O(d[(c[18232+(q<<2)>>2]|0)+((c[n+20>>2]&p)>>>b)>>0]|0,m)|0)>>>0)/255|0)+(j&255)|0)>>>q<<b;k=((((O(d[(c[18232+(f<<2)>>2]|0)+((c[n+24>>2]&p)>>>g)>>0]|0,m)|0)>>>0)/255|0)+k|0)>>>f<<g;break}case 2:{e=(c[b+20>>2]|0)+(O(c[b+16>>2]|0,f)|0)+(e<<2)|0;p=d[n+28>>0]|0;t=c[e>>2]|0;q=d[n+32>>0]|0;g=d[n+29>>0]|0;m=d[n+33>>0]|0;s=d[n+30>>0]|0;b=d[n+34>>0]|0;u=d[n+31>>0]|0;k=d[n+35>>0]|0;h=(d[(c[18232+(p<<2)>>2]|0)+((c[n+12>>2]&t)>>>q)>>0]|0)+(h&255)|0;i=(d[(c[18232+(g<<2)>>2]|0)+((c[n+16>>2]&t)>>>m)>>0]|0)+(i&255)|0;r=(d[(c[18232+(s<<2)>>2]|0)+((c[n+20>>2]&t)>>>b)>>0]|0)+(j&255)|0;b=(i>>>0<255?i:255)>>>g<<m|(h>>>0<255?h:255)>>>p<<q|(r>>>0<255?r:255)>>>s<<b;k=(d[(c[18232+(u<<2)>>2]|0)+((c[n+24>>2]&t)>>>k)>>0]|0)>>>u<<k;break}case 4:{e=(c[b+20>>2]|0)+(O(c[b+16>>2]|0,f)|0)+(e<<2)|0;q=d[n+28>>0]|0;t=c[e>>2]|0;r=d[n+32>>0]|0;m=d[n+29>>0]|0;p=d[n+33>>0]|0;s=d[n+30>>0]|0;b=d[n+34>>0]|0;u=d[n+31>>0]|0;k=d[n+35>>0]|0;b=(((O(d[(c[18232+(m<<2)>>2]|0)+((c[n+16>>2]&t)>>>p)>>0]|0,i&255)|0)>>>0)/255|0)>>>m<<p|(((O(d[(c[18232+(q<<2)>>2]|0)+((c[n+12>>2]&t)>>>r)>>0]|0,h&255)|0)>>>0)/255|0)>>>q<<r|(((O(d[(c[18232+(s<<2)>>2]|0)+((c[n+20>>2]&t)>>>b)>>0]|0,j&255)|0)>>>0)/255|0)>>>s<<b;k=(d[(c[18232+(u<<2)>>2]|0)+((c[n+24>>2]&t)>>>k)>>0]|0)>>>u<<k;break}default:{e=(c[b+20>>2]|0)+(O(c[b+16>>2]|0,f)|0)+(e<<2)|0;b=(i&255)>>>(d[n+29>>0]|0)<<d[n+33>>0]|(h&255)>>>(d[n+28>>0]|0)<<d[n+32>>0]|(j&255)>>>(d[n+30>>0]|0)<<d[n+34>>0];k=k>>>(d[n+31>>0]|0)<<d[n+35>>0]}}c[e>>2]=b|k;u=0;l=o;return u|0}
|
|
function Tp(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var i=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;y=l;l=l+2160|0;w=y;x=b+68|0;k=c[x>>2]|0;m=c[b+64>>2]|0;i=k-m>>4;i=i|0?m+(i+-1<<4)|0:0;i=(i|0)==0?936:i;if(c[i>>2]|0)In(b,1590,-1,281351);o=+h[i+8>>3];if((k|0)==(m|0))Jn(b,268620,50337407,268636);t=k+-16|0;c[x>>2]=t;v=c[k+-16>>2]|0;i=c[k+-8>>2]|0;c[t>>2]=2;if(v&8|0?(t=i+4|0,v=(c[t>>2]|0)+-1|0,c[t>>2]=v,(v|0)==0):0)Yn(c[b+44>>2]|0,i);n=iP(o)|0;h[j>>3]=o;s=c[j+4>>2]|0;k=(s|0)<0;s=JQ(c[j>>2]|0,s|0,63)|0;o=k?-o:o;switch(n|0){case 0:{i=c[(c[b+304>>2]|0)+236>>2]|0;k=c[x>>2]|0;if(k>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4153);c[x>>2]=k+16;c[k>>2]=8;c[k+8>>2]=i;x=i+4|0;b=c[x>>2]|0;b=b+1|0;c[x>>2]=b;l=y;return}case 1:{i=c[b+304>>2]|0;if(!s){i=c[i+240>>2]|0;k=c[x>>2]|0;if(k>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4153);c[x>>2]=k+16;c[k>>2]=8;c[k+8>>2]=i;x=i+4|0;b=c[x>>2]|0;b=b+1|0;c[x>>2]=b;l=y;return}else{i=c[i+244>>2]|0;k=c[x>>2]|0;if(k>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4153);c[x>>2]=k+16;c[k>>2]=8;c[k+8>>2]=i;x=i+4|0;b=c[x>>2]|0;b=b+1|0;c[x>>2]=b;l=y;return}}default:{i=~~o>>>0;if((g|0)==0&+(i>>>0)==o){if(k&(i|0)!=0){a[w>>0]=45;m=w+1|0}else m=w;n=m+32|0;k=n;do{f=i;i=(i>>>0)/(e>>>0)|0;k=k+-1|0;a[k>>0]=a[268793+(f-(O(i,e)|0))>>0]|0}while(f>>>0>=e>>>0);i=n-k|0;QQ(m|0,k|0,i|0)|0;i=m+i-w|0;if((c[x>>2]|0)>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4300);if((i|0)<0)Jn(b,268620,50335961,268982);b=Oo(b,w,i)|0;w=c[x>>2]|0;c[x>>2]=w+16;c[w>>2]=8;c[w+8>>2]=b;x=b+4|0;b=c[x>>2]|0;b=b+1|0;c[x>>2]=b;l=y;return}c[w+1064>>2]=0;c[w+1084>>2]=2;r=w+1088|0;c[r>>2]=e;t=w+1076|0;c[t>>2]=0;p=(g&1|0)!=0;v=w+1068|0;do if(p){c[v>>2]=1;if(!(g&8)){i=f+1|0;k=1;m=0;break}else{c[t>>2]=1;i=0-f|0;k=1;m=1;break}}else{c[v>>2]=0;i=0;k=0;m=0}while(0);c[w+1072>>2]=i;if((n|0)==2){do if(k)if(!m){i=f+1|0;break}else{i=f+2|0;break}else i=1;while(0);RQ(w+1108|0,0,i|0)|0;c[w+2148>>2]=i;c[w+1092>>2]=1;s=0}else{c[w>>2]=2;h[j>>3]=o;q=c[j>>2]|0;m=c[j+4>>2]|0;c[w+4>>2]=q;i=m&1048575;k=w+8|0;c[k>>2]=i;m=JQ(q|0,m|0,52)|0;m=m&2047;if(!m){k=2;while(1){i=k+-1|0;if((k|0)<=0)break;if(!(c[w+4+(i<<2)>>2]|0))k=i;else break}c[w>>2]=k;i=-1074}else{c[k>>2]=i|1048576;i=m+-1075|0}c[w+1080>>2]=i;Up(w);Vp(w);Wp(w)}do if(p){i=w+1092|0;k=((g&8|0)==0?0:c[i>>2]|0)+f|0;q=w+2148|0;if(!((k|0)<0?1:(c[q>>2]|0)<=(k|0))?(u=w+1108+k|0,(d[u>>0]|0)>>>0>=((((c[r>>2]|0)+1|0)/2|0)&255)>>>0):0){p=w+1108|0;k=u;while(1){a[k>>0]=0;if((k|0)==(p|0)){n=52;break}k=k+-1|0;m=(d[k>>0]|0)+1|0;if((m|0)<(c[r>>2]|0)){n=54;break}}if((n|0)==52){QQ(w+1109|0,p|0,c[q>>2]|0)|0;a[p>>0]=1;c[i>>2]=(c[i>>2]|0)+1;c[q>>2]=(c[q>>2]|0)+1;break}else if((n|0)==54){a[k>>0]=m;break}}}else i=w+1092|0;while(0);i=c[i>>2]|0;k=(c[t>>2]|0)==0;do if(k){if(((g&2|0)==0?!((g&4|0)!=0&(i|0)>(f|0)):0)?!((e|0)==10&(i+5|0)>>>0>26):0){q=i;r=65536;break}q=1;r=i+-1|0}else{q=i;r=65536}while(0);if(!s)i=w;else{a[w>>0]=45;i=w+1|0}m=(q|0)>1?q:1;do if(c[v>>2]|0)if(k){k=q-f|0;break}else{k=0-f|0;break}else k=q-(c[w+2148>>2]|0)|0;while(0);n=(k|0)<0?k:0;if((m|0)>(n|0)){p=w+2148|0;do{if(!m){a[i>>0]=46;i=i+1|0}if((q|0)>=(m|0)?(m|0)>(q-(c[p>>2]|0)|0):0)k=a[268793+(d[q-m+(w+1108)>>0]|0)>>0]|0;else k=48;a[i>>0]=k;i=i+1|0;m=m+-1|0}while((m|0)>(n|0))}if((r|0)!=65536){a[i>>0]=101;k=(r|0)>-1;a[i+1>>0]=k?43:45;n=i+34|0;k=k?r:0-r|0;m=n;do{f=k;k=(k>>>0)/(e>>>0)|0;m=m+-1|0;a[m>>0]=a[268793+(f-(O(k,e)|0))>>0]|0}while(f>>>0>=e>>>0);e=i+2|0;i=n-m|0;QQ(e|0,m|0,i|0)|0;i=e+i|0}i=i-w|0;if((c[x>>2]|0)>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4300);if((i|0)<0)Jn(b,268620,50335961,268982);b=Oo(b,w,i)|0;w=c[x>>2]|0;c[x>>2]=w+16;c[w>>2]=8;c[w+8>>2]=b;x=b+4|0;b=c[x>>2]|0;b=b+1|0;c[x>>2]=b;l=y;return}}}function Up(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=l;l=l+160|0;m=p;f=c[a>>2]|0;if(!f)b=1;else b=(c[a+4>>2]&1|0)==0;o=b&1;c[a+1096>>2]=o;c[a+1100>>2]=o;if((c[a+1064>>2]|0)==0&(f|0)==2?(c[a+4>>2]|0)==0:0)g=(c[a+8>>2]|0)==1048576;else g=0;o=a+1104|0;c[o>>2]=0;j=a+1080|0;b=c[j>>2]|0;if((b|0)<=-1){k=a+152|0;if(!(g&(b|0)>-1022)){d=f+1|0;if(!d){c[k>>2]=0;f=b}else{RQ(a+156|0,0,d<<2|0)|0;c[k>>2]=d;if((f|0)>=1){b=0;do{n=KQ(c[a+4+(b<<2)>>2]|0,0,1)|0;o=a+156+(b<<2)|0;n=yQ(c[o>>2]|0,0,n|0,z|0)|0;d=z;c[o>>2]=n;b=b+1|0;if(!((d|0)==0&0==0))c[a+156+(b<<2)>>2]=d}while((b|0)<(c[a>>2]|0));d=c[k>>2]|0}while(1){b=d+-1|0;if((d|0)<=0)break;if(!(c[a+156+(b<<2)>>2]|0))d=b;else break}c[k>>2]=d;f=c[j>>2]|0}e=a+760|0;d=c[a+1084>>2]|0;b=0-f|0;h=a+304|0;g=a+912|0;a:do if((d|0)==2){o=(f|0)/-32|0;n=o+1|0;RQ(a+764|0,0,n<<2|0)|0;c[e>>2]=n;c[a+764+(o<<2)>>2]=1<<(b&31)}else{c[e>>2]=1;c[a+764>>2]=1;if(!d)c[h>>2]=0;else{c[h>>2]=1;c[a+308>>2]=d}while(1){if(b&1|0)Yp(e,h,g);b=b>>1;if(!b)break a;Yp(h,h,g)}}while(0);d=(c[e>>2]|0)+1|0;if(!d)c[h>>2]=0;else{RQ(a+308|0,0,d<<2|0)|0;c[h>>2]=d;if((c[e>>2]|0)>=1){b=0;do{n=KQ(c[a+764+(b<<2)>>2]|0,0,1)|0;o=a+308+(b<<2)|0;n=yQ(c[o>>2]|0,0,n|0,z|0)|0;d=z;c[o>>2]=n;b=b+1|0;if(!((d|0)==0&0==0))c[a+308+(b<<2)>>2]=d}while((b|0)<(c[e>>2]|0));d=c[h>>2]|0}while(1){b=d+-1|0;if((d|0)<=0)break;if(!(c[a+308+(b<<2)>>2]|0))d=b;else break}c[h>>2]=d}c[a+456>>2]=1;c[a+460>>2]=1;c[a+608>>2]=1;c[a+612>>2]=1;l=p;return}i=a+1084|0;e=c[i>>2]|0;if(!e){c[m>>2]=0;h=0}else{c[m>>2]=1;c[m+4>>2]=e<<1;h=1}d=f+h|0;if(!d){c[k>>2]=0;d=e}else{RQ(a+156|0,0,d<<2|0)|0;c[k>>2]=d;if(!((h|0)==0|(f|0)<1)){b=0;do{e=a+4+(b<<2)|0;d=0;f=0;g=0;while(1){r=EQ(c[m+4+(d<<2)>>2]|0,0,c[e>>2]|0,0)|0;q=z;n=a+156+(d+b<<2)|0;g=yQ(c[n>>2]|0,0,f|0,g|0)|0;g=yQ(g|0,z|0,r|0,q|0)|0;f=z;c[n>>2]=g;d=d+1|0;if((d|0)==(h|0))break;else g=0}if(!((f|0)==0&0==0))c[a+156+(b+h<<2)>>2]=f;b=b+1|0}while((b|0)<(c[a>>2]|0));d=c[k>>2]|0}while(1){b=d+-1|0;if((d|0)<=0)break;if(!(c[a+156+(b<<2)>>2]|0))d=b;else break}c[k>>2]=d;b=c[j>>2]|0;d=c[i>>2]|0}e=a+760|0;b=1-b|0;g=a+304|0;f=a+912|0;b:do if((d|0)==2){r=(b|0)/32|0;q=r+1|0;RQ(a+764|0,0,q<<2|0)|0;c[e>>2]=q;c[a+764+(r<<2)>>2]=1<<(b&31)}else{c[e>>2]=1;c[a+764>>2]=1;if(!d)c[g>>2]=0;else{c[g>>2]=1;c[a+308>>2]=d}while(1){if(b&1|0)Yp(e,g,f);b=b>>1;if(!b)break b;Yp(g,g,f)}}while(0);d=(c[e>>2]|0)+1|0;if(!d)c[g>>2]=0;else{RQ(a+308|0,0,d<<2|0)|0;c[g>>2]=d;if((c[e>>2]|0)>=1){b=0;do{q=KQ(c[a+764+(b<<2)>>2]|0,0,1)|0;r=a+308+(b<<2)|0;q=yQ(c[r>>2]|0,0,q|0,z|0)|0;d=z;c[r>>2]=q;b=b+1|0;if(!((d|0)==0&0==0))c[a+308+(b<<2)>>2]=d}while((b|0)<(c[e>>2]|0));d=c[g>>2]|0}while(1){b=d+-1|0;if((d|0)<=0)break;if(!(c[a+308+(b<<2)>>2]|0))d=b;else break}c[g>>2]=d}c[a+456>>2]=1;c[a+460>>2]=2;c[a+608>>2]=1;c[a+612>>2]=1;c[o>>2]=1;l=p;return}j=a+608|0;n=a+1084|0;d=c[n>>2]|0;i=a+760|0;e=a+912|0;c:do if((d|0)==2){r=b>>>5;q=r+1|0;RQ(a+612|0,0,q<<2|0)|0;c[j>>2]=q;c[a+612+(r<<2)>>2]=1<<(b&31)}else{c[j>>2]=1;c[a+612>>2]=1;if(!d)c[i>>2]=0;else{c[i>>2]=1;c[a+764>>2]=d}while(1){if(b&1|0)Yp(j,i,e);b=b>>1;if(!b)break c;Yp(i,i,e)}}while(0);k=a+456|0;if(!g){e=c[j>>2]|0;c[k>>2]=e;if(e|0)PQ(a+460|0,a+612|0,e<<2|0)|0;b=c[a>>2]|0;d=b+1|0;if(!d){c[i>>2]=0;d=0}else{RQ(a+764|0,0,d<<2|0)|0;c[i>>2]=d;if((b|0)>=1){b=0;do{q=KQ(c[a+4+(b<<2)>>2]|0,0,1)|0;r=a+764+(b<<2)|0;q=yQ(c[r>>2]|0,0,q|0,z|0)|0;d=z;c[r>>2]=q;b=b+1|0;if(!((d|0)==0&0==0))c[a+764+(b<<2)>>2]=d}while((b|0)<(c[a>>2]|0));d=c[i>>2]|0}while(1){b=d+-1|0;if((d|0)<=0)break;if(!(c[a+764+(b<<2)>>2]|0))d=b;else break}c[i>>2]=d;e=c[k>>2]|0}j=a+152|0;d=e+d|0;if(!d)c[j>>2]=0;else{RQ(a+156|0,0,d<<2|0)|0;c[j>>2]=d;h=c[k>>2]|0;if((c[i>>2]|0)>0&(h|0)>0){b=0;do{e=a+764+(b<<2)|0;d=0;f=0;g=0;while(1){o=EQ(c[a+460+(d<<2)>>2]|0,0,c[e>>2]|0,0)|0;q=z;r=a+156+(d+b<<2)|0;n=yQ(c[r>>2]|0,0,f|0,g|0)|0;q=yQ(n|0,z|0,o|0,q|0)|0;f=z;c[r>>2]=q;d=d+1|0;if((d|0)==(h|0))break;else g=0}if(!((f|0)==0&0==0))c[a+156+(b+h<<2)>>2]=f;b=b+1|0}while((b|0)<(c[i>>2]|0));d=c[j>>2]|0}while(1){b=d+-1|0;if((d|0)<=0)break;if(!(c[a+156+(b<<2)>>2]|0))d=b;else break}c[j>>2]=d}c[a+304>>2]=1;c[a+308>>2]=2;l=p;return}b=c[n>>2]|0;if(!b){c[m>>2]=0;h=0}else{c[m>>2]=1;c[m+4>>2]=b;h=1}d=(c[j>>2]|0)+h|0;if(!d){c[k>>2]=0;d=0}else{RQ(a+460|0,0,d<<2|0)|0;c[k>>2]=d;if(!((h|0)==0|(c[j>>2]|0)<1)){b=0;do{e=a+612+(b<<2)|0;d=0;f=0;g=0;while(1){s=EQ(c[m+4+(d<<2)>>2]|0,0,c[e>>2]|0,0)|0;q=z;r=a+460+(d+b<<2)|0;g=yQ(c[r>>2]|0,0,f|0,g|0)|0;q=yQ(g|0,z|0,s|0,q|0)|0;f=z;c[r>>2]=q;d=d+1|0;if((d|0)==(h|0))break;else g=0}if(!((f|0)==0&0==0))c[a+460+(b+h<<2)>>2]=f;b=b+1|0}while((b|0)<(c[j>>2]|0));d=c[k>>2]|0}while(1){b=d+-1|0;if((d|0)<=0)break;if(!(c[a+460+(b<<2)>>2]|0))d=b;else break}c[k>>2]=d}b=c[a>>2]|0;e=b+1|0;if(!e){c[i>>2]=0;f=k;b=0}else{RQ(a+764|0,0,e<<2|0)|0;c[i>>2]=e;if((b|0)>=1){b=0;do{r=KQ(c[a+4+(b<<2)>>2]|0,0,1)|0;s=a+764+(b<<2)|0;r=yQ(c[s>>2]|0,0,r|0,z|0)|0;d=z;c[s>>2]=r;b=b+1|0;if(!((d|0)==0&0==0))c[a+764+(b<<2)>>2]=d}while((b|0)<(c[a>>2]|0));e=c[i>>2]|0}while(1){b=e+-1|0;if((e|0)<=0)break;if(!(c[a+764+(b<<2)>>2]|0))e=b;else break}c[i>>2]=e;f=k;d=c[k>>2]|0;b=e}j=a+152|0;d=d+b|0;if(!d)c[j>>2]=0;else{RQ(a+156|0,0,d<<2|0)|0;c[j>>2]=d;h=c[f>>2]|0;if((c[i>>2]|0)>0&(h|0)>0){b=0;do{e=a+764+(b<<2)|0;d=0;f=0;g=0;while(1){q=EQ(c[a+460+(d<<2)>>2]|0,0,c[e>>2]|0,0)|0;r=z;s=a+156+(d+b<<2)|0;m=yQ(c[s>>2]|0,0,f|0,g|0)|0;r=yQ(m|0,z|0,q|0,r|0)|0;f=z;c[s>>2]=r;d=d+1|0;if((d|0)==(h|0))break;else g=0}if(!((f|0)==0&0==0))c[a+156+(b+h<<2)>>2]=f;b=b+1|0}while((b|0)<(c[i>>2]|0));d=c[j>>2]|0}while(1){b=d+-1|0;if((d|0)<=0)break;if(!(c[a+156+(b<<2)>>2]|0))d=b;else break}c[j>>2]=d}b=c[n>>2]|0;d=a+304|0;if(!b)c[d>>2]=0;else{c[d>>2]=1;c[a+308>>2]=b<<1}c[o>>2]=1;l=p;return}function Vp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0;x=l;l=l+160|0;q=x;r=a+760|0;s=a+152|0;w=a+456|0;t=a+304|0;u=a+1088|0;v=a+1100|0;d=0;a:while(1){i=(c[w>>2]|0)>(c[s>>2]|0);g=i?s:w;i=i?w:s;b=c[i>>2]|0;j=c[g>>2]|0;if((b|0)>0){h=0;e=0;f=0;while(1){f=yQ(c[i+4+(h<<2)>>2]|0,0,e|0,f|0)|0;e=z;if((h|0)<(j|0)){f=yQ(c[g+4+(h<<2)>>2]|0,0,f|0,e|0)|0;e=z}c[a+764+(h<<2)>>2]=f;h=h+1|0;if((h|0)==(b|0))break;else f=0}if(!((e|0)==0&0==0)){c[a+764+(b<<2)>>2]=e;b=b+1|0}}else b=0;c[r>>2]=b;e=c[t>>2]|0;b:do if((b|0)<=(e|0)){if((b|0)<(e|0))break a;while(1){if((b|0)<=0)break;b=b+-1|0;e=c[a+764+(b<<2)>>2]|0;f=c[a+308+(b<<2)>>2]|0;if(e>>>0>f>>>0)break b;if(e>>>0<f>>>0)break a}if(!(c[v>>2]|0))break a}while(0);Xp(t,c[u>>2]|0,r);d=d+1|0}c:do if((d|0)>0)b=a+1104|0;else{m=a+912|0;b=a+1104|0;n=a+608|0;o=a+916|0;p=q+4|0;while(1){j=(c[w>>2]|0)>(c[s>>2]|0);h=j?s:w;j=j?w:s;g=c[j>>2]|0;k=c[h>>2]|0;if((g|0)>0){i=0;e=0;f=0;while(1){f=yQ(c[j+4+(i<<2)>>2]|0,0,e|0,f|0)|0;e=z;if((i|0)<(k|0)){f=yQ(c[h+4+(i<<2)>>2]|0,0,f|0,e|0)|0;e=z}c[a+764+(i<<2)>>2]=f;i=i+1|0;if((i|0)==(g|0))break;else f=0}if(!((e|0)==0&0==0)){c[a+764+(g<<2)>>2]=e;g=g+1|0}}else g=0;c[r>>2]=g;e=c[u>>2]|0;if(!e){c[q>>2]=0;j=0}else{c[q>>2]=1;c[p>>2]=e;j=1}f=g+j|0;d:do if(!f)f=0;else{RQ(o|0,0,f<<2|0)|0;c[m>>2]=f;if(!((j|0)==0|(g|0)<1)){e=0;do{i=a+764+(e<<2)|0;f=0;g=0;h=0;while(1){A=EQ(c[q+4+(f<<2)>>2]|0,0,c[i>>2]|0,0)|0;y=z;k=a+916+(f+e<<2)|0;h=yQ(c[k>>2]|0,0,g|0,h|0)|0;h=yQ(h|0,z|0,A|0,y|0)|0;g=z;c[k>>2]=h;f=f+1|0;if((f|0)==(j|0))break;else h=0}if(!((g|0)==0&0==0))c[a+916+(e+j<<2)>>2]=g;e=e+1|0}while((e|0)<(c[r>>2]|0));f=c[m>>2]|0}while(1){e=f+-1|0;if((f|0)<=0)break d;if(!(c[a+916+(e<<2)>>2]|0))f=e;else break}}while(0);c[m>>2]=f;e=c[t>>2]|0;if((f|0)>(e|0))break c;e:do if((f|0)>=(e|0)){while(1){if((f|0)<=0)break;f=f+-1|0;e=c[a+916+(f<<2)>>2]|0;g=c[a+308+(f<<2)>>2]|0;if(e>>>0>g>>>0)break c;if(e>>>0<g>>>0)break e}if(c[v>>2]|0)break c}while(0);Xp(s,c[u>>2]|0,r);Xp(w,c[u>>2]|0,r);if(c[b>>2]|0)Xp(n,c[u>>2]|0,r);d=d+-1|0}}while(0);if(c[b>>2]|0){A=a+1092|0;c[A>>2]=d;l=x;return}b=c[w>>2]|0;c[a+608>>2]=b;if(!b){A=a+1092|0;c[A>>2]=d;l=x;return}PQ(a+612|0,a+460|0,b<<2|0)|0;A=a+1092|0;c[A>>2]=d;l=x;return}function Wp(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;J=l;l=l+160|0;p=J;F=b+152|0;y=b+1088|0;H=b+760|0;G=b+304|0;A=b+912|0;o=b+916|0;n=b+764|0;B=b+456|0;C=b+912|0;D=b+608|0;q=b+1068|0;r=b+1096|0;s=b+1100|0;t=b+1076|0;u=b+1072|0;v=b+1092|0;w=b+156|0;E=b+764|0;x=p+4|0;I=0;while(1){d=c[y>>2]|0;if(!d){c[p>>2]=0;i=0}else{c[p>>2]=1;c[x>>2]=d;i=1}d=c[F>>2]|0;e=d+i|0;a:do if(!e)e=0;else{RQ(E|0,0,e<<2|0)|0;c[H>>2]=e;if(!((i|0)==0|(d|0)<1)){d=0;do{f=b+156+(d<<2)|0;e=0;g=0;h=0;while(1){j=EQ(c[p+4+(e<<2)>>2]|0,0,c[f>>2]|0,0)|0;k=z;m=b+764+(e+d<<2)|0;h=yQ(c[m>>2]|0,0,g|0,h|0)|0;k=yQ(h|0,z|0,j|0,k|0)|0;g=z;c[m>>2]=k;e=e+1|0;if((e|0)==(i|0))break;else h=0}if(!((g|0)==0&0==0))c[b+764+(d+i<<2)>>2]=g;d=d+1|0}while((d|0)<(c[F>>2]|0));e=c[H>>2]|0}while(1){d=e+-1|0;if((e|0)<=0)break a;if(!(c[b+764+(d<<2)>>2]|0))e=d;else break}}while(0);c[H>>2]=e;m=0;b:while(1){i=c[G>>2]|0;c:do if((e|0)<=(i|0)){if((e|0)<(i|0))break b;else d=e;while(1){if((d|0)<=0)break c;d=d+-1|0;f=c[b+764+(d<<2)>>2]|0;g=c[b+308+(d<<2)>>2]|0;if(f>>>0>g>>>0)break c;if(f>>>0<g>>>0)break b}}while(0);if((e|0)>0){f=0;g=0;h=0;while(1){if((f|0)<(i|0))d=c[b+308+(f<<2)>>2]|0;else d=0;k=zQ(c[b+764+(f<<2)>>2]|0,0,d|0,0)|0;k=yQ(k|0,z|0,g|0,h|0)|0;c[b+916+(f<<2)>>2]=k;g=IQ(k|0,z|0,32)|0;f=f+1|0;if((f|0)==(e|0))break;else h=z}}else e=0;c[A>>2]=e;while(1){d=e+-1|0;if((e|0)<=0){g=29;break}if(!(c[b+916+(d<<2)>>2]|0))e=d;else{g=28;break}}if((g|0)==28){c[A>>2]=e;c[H>>2]=e;g=30}else if((g|0)==29){g=0;c[A>>2]=e;c[H>>2]=e;if(!e)e=0;else g=30}if((g|0)==30)PQ(n|0,o|0,e<<2|0)|0;m=m+1|0}c[F>>2]=e;if(e|0)PQ(w|0,n|0,e<<2|0)|0;Xp(B,c[y>>2]|0,C);Xp(D,c[y>>2]|0,C);if(!(c[q>>2]|0)){g=c[F>>2]|0;d=c[D>>2]|0;d:do if((g|0)<=(d|0))if((g|0)<(d|0))d=-1;else{d=g;while(1){if((d|0)<=0){d=0;break d}d=d+-1|0;e=c[b+156+(d<<2)>>2]|0;f=c[b+612+(d<<2)>>2]|0;if(e>>>0>f>>>0){d=1;break d}if(e>>>0<f>>>0){d=-1;break}}}else d=1;while(0);k=(d|0)>(((c[r>>2]|0)==0)<<31>>31|0);i=(c[B>>2]|0)>(g|0);g=i?F:B;i=i?B:F;d=c[i>>2]|0;j=c[g>>2]|0;if((d|0)>0){h=0;e=0;f=0;while(1){f=yQ(c[i+4+(h<<2)>>2]|0,0,e|0,f|0)|0;e=z;if((h|0)<(j|0)){f=yQ(c[g+4+(h<<2)>>2]|0,0,f|0,e|0)|0;e=z}c[b+764+(h<<2)>>2]=f;h=h+1|0;if((h|0)==(d|0))break;else f=0}if(!((e|0)==0&0==0)){c[b+764+(d<<2)>>2]=e;d=d+1|0}}else d=0;c[H>>2]=d;f=c[G>>2]|0;e:do if((d|0)<=(f|0))if((d|0)<(f|0))d=-1;else while(1){if((d|0)<=0){d=0;break e}d=d+-1|0;e=c[b+764+(d<<2)>>2]|0;g=c[b+308+(d<<2)>>2]|0;if(e>>>0>g>>>0){d=1;break e}if(e>>>0<g>>>0){d=-1;break}}else d=1;while(0);e=(d|0)>=((c[s>>2]|0)==0|0);d=I+1|0;if(!k){g=53;break}if(e){g=72;break}}else d=I+1|0;a[b+1108+I>>0]=m;if(!(c[q>>2]|0)){I=d;continue}e=c[u>>2]|0;if(!(c[t>>2]|0))if((d|0)<(e|0)){I=d;continue}else{g=77;break}else if(((c[v>>2]|0)-d|0)<(e|0)){g=77;break}else{I=d;continue}}if((g|0)==53){if(!e){a[b+1108+I>>0]=m;I=d;b=b+2148|0;c[b>>2]=I;l=J;return}g=c[F>>2]|0;e=g+1|0;if(!e)e=0;else{RQ(E|0,0,e<<2|0)|0;c[H>>2]=e;if((g|0)>=1){e=0;do{D=KQ(c[b+156+(e<<2)>>2]|0,0,1)|0;E=b+764+(e<<2)|0;D=yQ(c[E>>2]|0,0,D|0,z|0)|0;f=z;c[E>>2]=D;e=e+1|0;if(!((f|0)==0&0==0))c[b+764+(e<<2)>>2]=f}while((e|0)<(c[F>>2]|0));e=c[H>>2]|0}while(1){f=e+-1|0;if((e|0)<=0)break;if(!(c[b+764+(f<<2)>>2]|0))e=f;else break}f=c[G>>2]|0}c[H>>2]=e;f:do if((e|0)<=(f|0)){if((e|0)>=(f|0))do{if((e|0)<=0)break f;e=e+-1|0;f=c[b+764+(e<<2)>>2]|0;g=c[b+308+(e<<2)>>2]|0;if(f>>>0>g>>>0)break f}while(f>>>0>=g>>>0);a[b+1108+I>>0]=m;I=d;b=b+2148|0;c[b>>2]=I;l=J;return}while(0);a[b+1108+I>>0]=m+1;I=d;b=b+2148|0;c[b>>2]=I;l=J;return}else if((g|0)==72){a[b+1108+I>>0]=m+1;I=d;b=b+2148|0;c[b>>2]=I;l=J;return}else if((g|0)==77){b=b+2148|0;c[b>>2]=d;l=J;return}}function Xp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;k=l;l=l+160|0;j=k;if(!b){c[j>>2]=0;i=0}else{c[j>>2]=1;c[j+4>>2]=b;i=1}e=(c[a>>2]|0)+i|0;if(!e){c[d>>2]=0;c[a>>2]=0;l=k;return}RQ(d+4|0,0,e<<2|0)|0;c[d>>2]=e;if(!((i|0)==0|(c[a>>2]|0)<1)){b=0;do{f=a+4+(b<<2)|0;e=0;g=0;h=0;while(1){o=EQ(c[j+4+(e<<2)>>2]|0,0,c[f>>2]|0,0)|0;n=z;m=d+4+(e+b<<2)|0;h=yQ(c[m>>2]|0,0,g|0,h|0)|0;h=yQ(h|0,z|0,o|0,n|0)|0;g=z;c[m>>2]=h;e=e+1|0;if((e|0)==(i|0))break;else h=0}if(!((g|0)==0&0==0))c[d+4+(b+i<<2)>>2]=g;b=b+1|0}while((b|0)<(c[a>>2]|0));e=c[d>>2]|0}while(1){b=e+-1|0;if((e|0)<=0){b=16;break}if(!(c[d+4+(b<<2)>>2]|0))e=b;else{b=15;break}}if((b|0)==15){c[d>>2]=e;c[a>>2]=e}else if((b|0)==16?(c[d>>2]=e,c[a>>2]=e,(e|0)==0):0){l=k;return}PQ(a+4|0,d+4|0,e<<2|0)|0;l=k;return}function Yp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;f=(c[b>>2]|0)+(c[a>>2]|0)|0;if(!f){c[d>>2]=0;c[a>>2]=0;return}RQ(d+4|0,0,f<<2|0)|0;c[d>>2]=f;j=c[b>>2]|0;if((c[a>>2]|0)>0&(j|0)>0){e=0;do{g=a+4+(e<<2)|0;f=0;h=0;i=0;while(1){m=EQ(c[b+4+(f<<2)>>2]|0,0,c[g>>2]|0,0)|0;l=z;k=d+4+(f+e<<2)|0;i=yQ(c[k>>2]|0,0,h|0,i|0)|0;i=yQ(i|0,z|0,m|0,l|0)|0;h=z;c[k>>2]=i;f=f+1|0;if((f|0)==(j|0))break;else i=0}if(!((h|0)==0&0==0))c[d+4+(e+j<<2)>>2]=h;e=e+1|0}while((e|0)<(c[a>>2]|0));f=c[d>>2]|0}while(1){e=f+-1|0;if((f|0)<=0){e=13;break}if(!(c[d+4+(e<<2)>>2]|0))f=e;else{e=12;break}}if((e|0)==12){c[d>>2]=f;c[a>>2]=f}else if((e|0)==13?(c[d>>2]=f,c[a>>2]=f,(f|0)==0):0)return;PQ(a+4|0,d+4|0,f<<2|0)|0;return}function Zp(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0,i=0;if(c[b>>2]&4194304|0)return c[b+40>>2]|0;g=a+68|0;d=c[g>>2]|0;e=a+56|0;if(d>>>0>=(c[e>>2]|0)>>>0)Un(a,4153);c[g>>2]=d+16;c[d>>2]=9;c[d+8>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[(c[a+304>>2]|0)+328>>2]|0;d=c[g>>2]|0;if(d>>>0>=(c[e>>2]|0)>>>0)Un(a,4153);c[g>>2]=d+16;c[d>>2]=8;c[d+8>>2]=b;d=b+4|0;c[d>>2]=(c[d>>2]|0)+1;d=c[g>>2]|0;ro(a,d+-32|0,d+-16|0)|0;d=a+64|0;b=c[d>>2]|0;i=(c[g>>2]|0)-b>>4;e=i+-1|0;if(!i)jo(a,300,-1);f=+ho(a,b+(e<<4)|0);b=c[d>>2]|0;d=b+(e<<4)|0;i=c[d>>2]|0;e=b+(e<<4)+8|0;b=c[e>>2]|0;c[d>>2]=0;h[e>>3]=f;if(i&8|0?(e=b+4|0,i=(c[e>>2]|0)+-1|0,c[e>>2]=i,(i|0)==0):0)Yn(c[a+44>>2]|0,b);e=c[g>>2]|0;d=a+44|0;a=e+-16|0;i=c[a>>2]|0;b=c[e+-8>>2]|0;c[a>>2]=2;if(i&8|0?(a=b+4|0,i=(c[a>>2]|0)+-1|0,c[a>>2]=i,(i|0)==0):0)bo(c[d>>2]|0,b);a=e+-32|0;i=c[a>>2]|0;b=c[e+-24>>2]|0;c[a>>2]=2;if(i&8|0?(a=b+4|0,i=(c[a>>2]|0)+-1|0,c[a>>2]=i,(i|0)==0):0)bo(c[d>>2]|0,b);a=e+-48|0;i=c[a>>2]|0;b=c[e+-40>>2]|0;c[a>>2]=2;if(i&8|0?(a=b+4|0,i=(c[a>>2]|0)+-1|0,c[a>>2]=i,(i|0)==0):0)bo(c[d>>2]|0,b);c[g>>2]=e+-48;b=c[d>>2]|0;if(!(c[b+32>>2]|0)){i=f>=0.0;g=f<=4294967295.0;g=i&g;i=~~f>>>0;i=g?i:0;return i|0}Tn(b);i=f>=0.0;g=f<=4294967295.0;g=i&g;i=~~f>>>0;i=g?i:0;return i|0}function _p(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0.0,i=0,k=0,l=0,m=0;l=a+68|0;i=a+64|0;e=c[i>>2]|0;f=(c[l>>2]|0)-e>>4;m=(b|0)<0;d=(m?f:0)+b|0;if(d>>>0>=f>>>0)jo(a,376,b);g=+ho(a,e+(d<<4)|0);h[j>>3]=g;d=c[j>>2]|0;e=c[j+4>>2]|0;f=e&2146435072;a:do if((f|0)<2146435072){switch(f|0){case 0:break;default:{k=6;break a}}if((e|0)<0)k=6;else f=0}else switch(f|0){case 2146435072:{f=0;break}default:k=6}while(0);if((k|0)==6){g=+A(+(+B(+g)));g=+TO((e|0)>-1|(e|0)==-1&d>>>0>4294967295?g:-g,4294967296.0);f=~~(g<0.0?g+4294967296.0:g)>>>0}e=c[i>>2]|0;l=(c[l>>2]|0)-e>>4;d=(m?l:0)+b|0;if(d>>>0>=l>>>0)jo(a,376,b);l=e+(d<<4)|0;b=c[l>>2]|0;m=e+(d<<4)+8|0;d=c[m>>2]|0;c[l>>2]=0;h[m>>3]=+(f>>>0);if(!(b&8))return f|0;m=d+4|0;b=(c[m>>2]|0)+-1|0;c[m>>2]=b;if(b|0)return f|0;Yn(c[a+44>>2]|0,d);return f|0}function $p(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=b+68|0;g=c[k>>2]|0;f=c[b+64>>2]|0;e=g-f>>4;e=e|0?f+(e+-1<<4)|0:0;e=(e|0)==0?936:e;a:do switch(c[e>>2]|0){case 9:{e=c[e+8>>2]|0;if(!e)In(b,2147,-1,268516);if((c[e>>2]&-134217728|0)!=-1744830464)In(b,2147,-1,268516);f=c[e+40>>2]|0;if(!f)Jn(b,268620,100668428,269834);else{h=f;i=e;j=c[e+48>>2]|0;break a}break}case 10:{e=c[e+8>>2]|0;if(!e)In(b,2147,-1,268516);else{h=e;i=0;j=0;break a}break}default:In(b,2147,-1,268516)}while(0);if((j+d|0)>>>0<j>>>0)Jn(b,268620,50336776,269834);if(g>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4988);g=vo(b,60)|0;e=c[b+44>>2]|0;c[g>>2]=-1342168959;e=e+24|0;f=c[e>>2]|0;if(f|0)c[f+12>>2]=g;c[g+12>>2]=0;c[g+8>>2]=f;c[e>>2]=g;e=c[b+268>>2]|0;c[g+20>>2]=e;if(e|0){b=e+4|0;c[b>>2]=(c[b>>2]|0)+1}b=c[k>>2]|0;c[b>>2]=9;c[b+8>>2]=g;b=g+4|0;c[b>>2]=(c[b>>2]|0)+1;c[k>>2]=(c[k>>2]|0)+16;c[g+40>>2]=h;k=h+4|0;c[k>>2]=(c[k>>2]|0)+1;c[g+44>>2]=i;if(!i){k=g+48|0;c[k>>2]=j;k=g+52|0;c[k>>2]=d;k=g+56|0;a[k>>0]=0;k=g+57|0;a[k>>0]=0;k=g+58|0;a[k>>0]=1;return}k=i+4|0;c[k>>2]=(c[k>>2]|0)+1;k=g+48|0;c[k>>2]=j;k=g+52|0;c[k>>2]=d;k=g+56|0;a[k>>0]=0;k=g+57|0;a[k>>0]=0;k=g+58|0;a[k>>0]=1;return}function aq(a,d,e,f,g){a=a|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0;j=a+68|0;if((c[j>>2]|0)>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4851);if(!d)Vn(a,268620,4884);if(e>>>0>=32767)if((e|0)==-1)h=-1;else Vn(a,268620,4884);else h=e&65535;i=vo(a,48)|0;e=c[a+44>>2]|0;c[i>>2]=f|1;e=e+24|0;f=c[e>>2]|0;if(f|0)c[f+12>>2]=i;c[i+12>>2]=0;c[i+8>>2]=f;c[e>>2]=i;c[i+40>>2]=d;b[i+44>>1]=h;e=c[j>>2]|0;c[e>>2]=9;c[e+8>>2]=i;e=i+4|0;c[e>>2]=(c[e>>2]|0)+1;c[j>>2]=(c[j>>2]|0)+16;e=c[a+100+(g<<2)>>2]|0;c[i+20>>2]=e;if(!e)return;j=e+4|0;c[j>>2]=(c[j>>2]|0)+1;return}function bq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+80|0;r=s+64|0;p=s;Lo(b,269745,p);m=d;n=a[268793+(m>>>28)>>0]|0;a[p>>0]=n;f=a[268793+(m>>>24&15)>>0]|0;a[p+1>>0]=f;g=a[268793+(m>>>20&15)>>0]|0;a[p+2>>0]=g;h=a[268793+(m>>>16&15)>>0]|0;a[p+3>>0]=h;i=a[268793+(m>>>12&15)>>0]|0;a[p+4>>0]=i;j=a[268793+(m>>>8&15)>>0]|0;a[p+5>>0]=j;k=a[268793+(m>>>4&15)>>0]|0;a[p+6>>0]=k;m=a[268793+(m&15)>>0]|0;a[p+7>>0]=m;q=b+68|0;d=c[q>>2]|0;if(d>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4300);o=c[b+44>>2]|0;g=(n&255)+(((f&255)+(((g&255)+(((h&255)+(((i&255)+(((j&255)+(((k&255)+(((m&255)+((c[o+148>>2]^8)*33|0)|0)*33|0)|0)*33|0)|0)*33|0)|0)*33|0)|0)*33|0)|0)*33|0)|0)*33|0)|0;f=c[(c[o+176>>2]|0)+((c[o+180>>2]&g)<<2)>>2]|0;a:do if(f|0){while(1){if(((c[f+12>>2]|0)==(g|0)?(c[f+20>>2]|0)==8:0)?(KN(p,f+28|0,8)|0)==0:0)break;f=c[f+8>>2]|0;if(!f)break a}p=d+16|0;c[q>>2]=p;c[d>>2]=8;q=d+8|0;c[q>>2]=f;q=f+4|0;p=c[q>>2]|0;p=p+1|0;c[q>>2]=p;c[r>>2]=e;Lo(b,269752,r);Mo(b,3,0);l=s;return}while(0);d=no(o,p,8,g)|0;if(!d)Mn(b,268998,803);p=d;o=c[q>>2]|0;n=o+16|0;c[q>>2]=n;c[o>>2]=8;q=o+8|0;c[q>>2]=p;q=p+4|0;p=c[q>>2]|0;p=p+1|0;c[q>>2]=p;c[r>>2]=e;Lo(b,269752,r);Mo(b,3,0);l=s;return}function cq(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+16|0;t=u;if(c[d>>2]&128|0){t=e;l=u;return t|0}h=Po(d)|0;if(c[d>>2]&128|0){t=e;l=u;return t|0}s=c[b+44>>2]|0;q=h>>>0>16;a:do if(q){j=0;f=0;do{k=s+196+(f*12|0)|0;m=(c[k>>2]|0)==(d|0);j=m?k:j;f=f+1|0}while((f|0)<4&(m^1));k=h-e|0;h=d+28|0;m=h+(c[d+20>>2]|0)|0;if(j){f=c[j+8>>2]|0;if(f>>>0>e>>>0){i=f-e|0;if(i>>>0>e>>>0|i>>>0>k>>>0){f=m;i=h;m=1;p=20;break}f=h+(c[j+4>>2]|0)|0;if(!i){i=1;p=31;break}b:while(1){do{f=f+-1|0;if(f>>>0<h>>>0)break b}while((a[f>>0]&-64)<<24>>24==-128);i=i+-1|0;if(!i){n=f;g=j;o=h;r=1;break a}}ko(b,269905,307)}else{i=e-f|0;if(i>>>0>e>>>0|i>>>0>k>>>0){f=m;i=h;m=1;p=20;break}f=h+(c[j+4>>2]|0)|0;if(!i){i=1;p=31;break}c:while(1){do{f=f+1|0;if(f>>>0>=m>>>0)break c}while((a[f>>0]&-64)<<24>>24==-128);i=i+-1|0;if(!i){n=f;g=j;o=h;r=1;break a}}ko(b,269905,307)}}else{j=0;f=m;i=h;m=0;p=20}}else{p=d+28|0;j=0;k=h-e|0;f=p+(c[d+20>>2]|0)|0;i=p;m=0;h=p;p=20}while(0);d:do if((p|0)==20)if(k>>>0<e>>>0){if(!k){i=m;p=31;break}e:while(1){do{f=f+-1|0;if(f>>>0<i>>>0)break e}while((a[f>>0]&-64)<<24>>24==-128);k=k+-1|0;if(!k){n=f;g=j;o=h;r=m;break d}}ko(b,269905,307)}else{if(!e){f=i;i=m;p=31;break}else k=e;f:while(1){do{i=i+1|0;if(i>>>0>=f>>>0)break f}while((a[i>>0]&-64)<<24>>24==-128);k=k+-1|0;if(!k){n=i;g=j;o=h;r=m;break d}}ko(b,269905,307)}while(0);if((p|0)==31)if(!f)ko(b,269905,307);else{n=f;g=j;o=h;r=i}h=n-o|0;if(!q){t=h;l=u;return t|0}if(!r){g=s+232|0;c[g>>2]=d}c[g+4>>2]=h;c[g+8>>2]=e;f=s+196|0;if(g>>>0<=f>>>0){t=h;l=u;return t|0};c[t>>2]=c[g>>2];c[t+4>>2]=c[g+4>>2];c[t+8>>2]=c[g+8>>2];QQ(s+208|0,f|0,g-f|0)|0;c[f>>2]=c[t>>2];c[f+4>>2]=c[t+4>>2];c[f+8>>2]=c[t+8>>2];t=h;l=u;return t|0}function dq(f,i,j,k){f=f|0;i=i|0;j=j|0;k=k|0;var m=0,n=0,o=0,p=0.0,q=0;q=l;l=l+16|0;o=q;PQ(o|0,j|0,k|0)|0;a:do switch(i<<24>>24){case 1:case 0:{i=f+68|0;j=c[i>>2]|0;if(j>>>0<(c[f+56>>2]|0)>>>0){m=i;n=j;p=+(d[o>>0]|0);break a}else Un(f,4274);break}case 2:{j=f+68|0;i=c[j>>2]|0;if(i>>>0<(c[f+56>>2]|0)>>>0){m=j;n=i;p=+(a[o>>0]|0);break a}else Un(f,4244);break}case 3:{i=f+68|0;j=c[i>>2]|0;if(j>>>0<(c[f+56>>2]|0)>>>0){m=i;n=j;p=+(e[o>>1]|0);break a}else Un(f,4274);break}case 4:{i=f+68|0;j=c[i>>2]|0;if(j>>>0<(c[f+56>>2]|0)>>>0){m=i;n=j;p=+(b[o>>1]|0);break a}else Un(f,4244);break}case 5:{i=f+68|0;j=c[i>>2]|0;if(j>>>0<(c[f+56>>2]|0)>>>0){m=i;n=j;p=+((c[o>>2]|0)>>>0);break a}else Un(f,4274);break}case 6:{i=f+68|0;j=c[i>>2]|0;if(j>>>0<(c[f+56>>2]|0)>>>0){m=i;n=j;p=+(c[o>>2]|0);break a}else Un(f,4244);break}case 7:{i=f+68|0;j=c[i>>2]|0;if(j>>>0<(c[f+56>>2]|0)>>>0){m=i;n=j;p=+g[o>>2]}else Un(f,4215);break}case 8:{i=f+68|0;j=c[i>>2]|0;if(j>>>0<(c[f+56>>2]|0)>>>0){m=i;n=j;p=+h[o>>3]}else Un(f,4215);break}default:{}}while(0);c[m>>2]=n+16;c[n>>2]=0;h[n+8>>3]=p;l=q;return}function eq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=b+68|0;o=c[t>>2]|0;q=b+64|0;e=c[q>>2]|0;f=o-e>>4;s=((d|0)<0?f:0)+d|0;if(s>>>0>=f>>>0)jo(b,300,d);r=(s|0)<0;d=(r?f:0)+s|0;d=d>>>0<f>>>0?e+(d<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)!=8)In(b,2101,s,287721);d=c[d+8>>2]|0;if(!d)In(b,2101,s,287721);l=d+28|0;k=l+(c[d+20>>2]|0)|0;a:do if(l>>>0<k>>>0){h=l;b:while(1){if(h>>>0<l>>>0){n=25;break}e=h+1|0;d=a[h>>0]|0;f=d&255;do if(d<<24>>24<=-1){if((d&255)<192){n=25;break b}if((d&255)<224){g=1;d=f&31;break}if((d&255)<240){g=2;d=f&15;break}if((d&255)<248){g=3;d=f&7;break}if((d&255)<252){g=4;d=f&3;break}if((d&255)>=254)if(d<<24>>24==-1){n=25;break b}else{g=6;d=0;break}else{g=5;d=f&1;break}}else{g=0;d=f&127}while(0);if((e+g|0)>>>0>k>>>0){n=25;break}if(g)while(1){f=e+1|0;d=a[e>>0]&63|d<<6;if((g|0)>1){e=f;g=g+-1|0}else{e=f;break}}c:do switch(d>>8|0){case 0:{switch((d&255)<<24>>24){case -96:case 32:case 12:case 11:case 9:break;default:n=31}break}case 32:{if((d&255)>>>0>=11)switch((d&255)<<24>>24){case 47:case 95:break;default:n=31}break}default:{if((d|0)<8232)if((d|0)<5760)switch(d|0){case 10:case 13:break c;default:{i=h;n=33;break b}}else switch(d|0){case 5760:case 6158:break c;default:{i=h;n=33;break b}}if((d|0)<12288)switch(d|0){case 8232:case 8233:break c;default:{i=h;n=33;break b}}if((d|0)<65279)switch(d|0){case 12288:break c;default:{i=h;n=33;break b}}else switch(d|0){case 65279:break c;default:{i=h;n=33;break b}}}}while(0);d:do if((n|0)==31){n=0;if((d|0)<8232)switch(d|0){case 10:case 13:break d;default:{i=h;n=33;break b}}else switch(d|0){case 8232:case 8233:break d;default:{i=h;n=33;break b}}}while(0);if(e>>>0<k>>>0)h=e;else{i=e;n=33;break}}if((n|0)==25)ko(b,270005,282);else if((n|0)==33){if((i|0)==(k|0)){m=k;p=k;break}else j=k;e:while(1){d=j;do{if(d>>>0<=l>>>0)break;d=d+-1|0}while((a[d>>0]&-64)<<24>>24==-128);if(!(d>>>0>=l>>>0&d>>>0<k>>>0)){n=55;break}h=d+1|0;e=a[d>>0]|0;f=e&255;do if(e<<24>>24<=-1){if((e&255)<192){n=55;break e}if((e&255)<224){g=1;e=f&31;break}if((e&255)<240){g=2;e=f&15;break}if((e&255)<248){g=3;e=f&7;break}if((e&255)<252){g=4;e=f&3;break}if((e&255)>=254)if(e<<24>>24==-1){n=55;break e}else{g=6;e=0;break}else{g=5;e=f&1;break}}else{g=0;e=f&127}while(0);if((h+g|0)>>>0>k>>>0){n=55;break}if(g)while(1){e=a[h>>0]&63|e<<6;if((g|0)>1){h=h+1|0;g=g+-1|0}else break}f:do switch(e>>8|0){case 0:{switch((e&255)<<24>>24){case -96:case 32:case 12:case 11:case 9:break;default:n=61}break}case 32:{if((e&255)>>>0>=11)switch((e&255)<<24>>24){case 47:case 95:break;default:n=61}break}default:{if((e|0)<8232)if((e|0)<5760)switch(e|0){case 10:case 13:break f;default:{m=j;p=i;break a}}else switch(e|0){case 5760:case 6158:break f;default:{m=j;p=i;break a}}if((e|0)<12288)switch(e|0){case 8232:case 8233:break f;default:{m=j;p=i;break a}}if((e|0)<65279)switch(e|0){case 12288:break f;default:{m=j;p=i;break a}}else switch(e|0){case 65279:break f;default:{m=j;p=i;break a}}}}while(0);g:do if((n|0)==61){n=0;if((e|0)<8232)switch(e|0){case 10:case 13:break g;default:{m=j;p=i;break a}}else switch(e|0){case 8232:case 8233:break g;default:{m=j;p=i;break a}}}while(0);if(d>>>0>l>>>0)j=d;else{m=d;p=i;break a}}if((n|0)==55)ko(b,270005,282)}}else{m=k;p=l}while(0);d=m>>>0<p>>>0?p:m;if((p|0)==(l|0)&(d|0)==(k|0))return;if(o>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4300);d=(p|0)==0?0:d-p|0;if((d|0)<0)Jn(b,268620,50335961,268982);e=Oo(b,p,d)|0;f=c[t>>2]|0;c[t>>2]=f+16;c[f>>2]=8;c[f+8>>2]=e;e=e+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[q>>2]|0;f=(c[t>>2]|0)-e>>4;if(!f)jo(b,376,-1);g=e+(f+-1<<4)|0;d=(r?f:0)+s|0;if(d>>>0>=f>>>0)jo(b,376,s);r=e+(d<<4)|0;s=c[r>>2]|0;d=c[e+(d<<4)+8>>2]|0;c[r>>2]=c[g>>2];c[r+4>>2]=c[g+4>>2];c[r+8>>2]=c[g+8>>2];c[r+12>>2]=c[g+12>>2];c[g>>2]=2;c[t>>2]=(c[t>>2]|0)+-16;if(!(s&8))return;s=d+4|0;t=(c[s>>2]|0)+-1|0;c[s>>2]=t;if(t|0)return;Yn(c[b+44>>2]|0,d);return}function fq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;i=a+68|0;e=c[a+64>>2]|0;f=(c[i>>2]|0)-e|0;g=f>>4;h=g+-1|0;if(!g)jo(a,300,-1);f=((f|0)<16?g:0)+h|0;e=f>>>0<g>>>0?e+(f<<4)|0:0;e=(e|0)==0?936:e;if((c[e>>2]|0)!=8)In(a,2101,h,287721);e=c[e+8>>2]|0;if(!e)In(a,2101,h,287721);f=Po(e)|0;d=f>>>0>d>>>0?d:f;f=cq(a,e,d>>>0<b>>>0?d:b)|0;e=Oo(a,e+28+f|0,(cq(a,e,d)|0)-f|0)|0;f=c[i>>2]|0;if(f>>>0<(c[a+56>>2]|0)>>>0){c[i>>2]=f+16;c[f>>2]=8;c[f+8>>2]=e;i=e+4|0;c[i>>2]=(c[i>>2]|0)+1;op(a,h);return}else Un(a,4153)}function gq(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0;h=l;l=l+16|0;c[h>>2]=g;Rp(a,b,d,e,f,h);xo(a)}function hq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,k=0.0,m=0,n=0,o=0,p=0;m=l;l=l+16|0;p=m+8|0;g=a+40|0;i=c[g>>2]|0;if(i|0){c[(c[a+72>>2]|0)+36>>2]=c[i>>2];c[g>>2]=0}o=a+44|0;i=c[o>>2]|0;n=i+72|0;if(c[n>>2]|0){c[n>>2]=0;g=c[a+248>>2]|0;if(!g){k=+(b|0);h[m>>3]=k;g=0}else{c[m>>2]=g;k=+h[m>>3];g=9}c[i+84>>2]=1;c[i+96>>2]=g;h[i+104>>3]=k;if(g&8|0){h[j>>3]=k;m=(c[j>>2]|0)+4|0;c[m>>2]=(c[m>>2]|0)+1}ep(a)}c[n>>2]=1;g=a+68|0;m=c[a+52>>2]|0;i=(c[g>>2]|0)-m+528|0;m=m+i|0;n=a+56|0;do if((c[n>>2]|0)>>>0<m>>>0)if((c[a+60>>2]|0)>>>0<m>>>0){lo(a,i,1)|0;break}else{c[n>>2]=m;break}while(0);c[p>>2]=d;Qp(a,b|16777216,e,f,294706,p);Jo(a,105);g=c[g>>2]|0;p=g+-16|0;f=c[o>>2]|0;c[f+84>>2]=1;f=f+96|0;c[f>>2]=c[p>>2];c[f+4>>2]=c[p+4>>2];c[f+8>>2]=c[p+8>>2];c[f+12>>2]=c[p+12>>2];if(c[p>>2]&8|0){p=(c[g+-8>>2]|0)+4|0;c[p>>2]=(c[p>>2]|0)+1}c[(c[o>>2]|0)+72>>2]=0;ep(a)}function iq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;e=a+68|0;d=c[e>>2]|0;f=c[a+64>>2]|0;g=(d-f>>4)-b|0;i=g+-1|0;h=f;if((i|b|0)<0)Vn(a,268605,55);if(d>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4162);d=d+16|0;c[e>>2]=d;d=d-f>>4;b=((g|0)<0?d:0)+g|0;if(b>>>0>=d>>>0)jo(a,376,g);e=h+(b<<4)|0;b=h+(d+-1<<4)|0;d=b-e|0;if(!d){so(a,i,0)|0;l=k;return};c[j>>2]=c[b>>2];c[j+4>>2]=c[b+4>>2];c[j+8>>2]=c[b+8>>2];c[j+12>>2]=c[b+12>>2];QQ(e+16|0,e|0,d|0)|0;c[e>>2]=c[j>>2];c[e+4>>2]=c[j+4>>2];c[e+8>>2]=c[j+8>>2];c[e+12>>2]=c[j+12>>2];so(a,i,0)|0;l=k;return}function jq(a,b){a=a|0;b=b|0;Pp(a,c[(c[a+68>>2]|0)+-8>>2]|0);return 0}function kq(a,b){a=a|0;b=b|0;var d=0,e=0;if(c[a+56>>2]|0)return;d=c[b+8>>2]|0;e=c[b+12>>2]|0;if(!e)c[a+24>>2]=d;else c[e+8>>2]=d;if(d|0)c[d+12>>2]=e;if((c[b>>2]&384|0)==128){e=a+12|0;d=a+16|0;Bg[c[e>>2]&255](c[d>>2]|0,c[b+20>>2]|0)}else{e=a+12|0;d=a+16|0}Bg[c[e>>2]&255](c[d>>2]|0,b);return}function lq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0;j=a+68|0;i=a+64|0;f=c[i>>2]|0;g=(c[j>>2]|0)-f>>4;e=((b|0)<0?g:0)+b|0;if(e>>>0>=g>>>0)jo(a,376,b);if(g>>>0<=1)jo(a,376,-2);d=g+-1|0;b=c[a+72>>2]|0;if(!b)b=1;else b=c[b+52>>2]&1;No(a,f+(e<<4)|0,f+(g+-2<<4)|0,c[f+(d<<4)>>2]|0,c[f+(d<<4)+4>>2]|0,+h[f+(d<<4)+8>>3],b)|0;d=c[j>>2]|0;if((d+-32|0)>>>0<(c[i>>2]|0)>>>0)Jn(a,268620,50337495,268636);b=d+-16|0;c[j>>2]=b;i=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[b>>2]=2;if((i&8|0)!=0?(g=d+4|0,i=(c[g>>2]|0)+-1|0,c[g>>2]=i,(i|0)==0):0){Yn(c[a+44>>2]|0,d);b=c[j>>2]|0}i=b+-16|0;c[j>>2]=i;j=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[i>>2]=2;if(!(j&8))return;i=b+4|0;j=(c[i>>2]|0)+-1|0;c[i>>2]=j;if(j|0)return;Yn(c[a+44>>2]|0,b);return}function mq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,l=0;k=a+68|0;e=c[k>>2]|0;j=a+64|0;f=c[j>>2]|0;l=e-f>>4;g=((b|0)<0?l:0)+b|0;i=f;if(g>>>0>=l>>>0)jo(a,300,b);if(e>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4274);l=e+16|0;c[k>>2]=l;c[e>>2]=0;h[e+8>>3]=+(d>>>0);f=l-f>>4;d=((g|0)<0?f:0)+g|0;if(d>>>0>=f>>>0)jo(a,376,g);if((f|0)==1)jo(a,376,-2);e=f+-2|0;b=c[a+72>>2]|0;if(!b)b=1;else b=c[b+52>>2]&1;No(a,i+(d<<4)|0,i+(f+-1<<4)|0,c[i+(e<<4)>>2]|0,c[i+(e<<4)+4>>2]|0,+h[i+(e<<4)+8>>3],b)|0;e=c[k>>2]|0;if((e+-32|0)>>>0<(c[j>>2]|0)>>>0)Jn(a,268620,50337495,268636);b=e+-16|0;c[k>>2]=b;l=c[e+-16>>2]|0;e=c[e+-8>>2]|0;c[b>>2]=2;if((l&8|0)!=0?(j=e+4|0,l=(c[j>>2]|0)+-1|0,c[j>>2]=l,(l|0)==0):0){Yn(c[a+44>>2]|0,e);b=c[k>>2]|0}j=b+-16|0;c[k>>2]=j;l=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[j>>2]=2;if(!(l&8))return;k=b+4|0;l=(c[k>>2]|0)+-1|0;c[k>>2]=l;if(l|0)return;Yn(c[a+44>>2]|0,b);return}function nq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=l;l=l+16|0;j=k;e=a+68|0;d=c[e>>2]|0;f=c[a+64>>2]|0;i=(d-f>>4)+~c[b>>2]|0;g=i+1|0;h=f;if(d>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4162);d=d+16|0;c[e>>2]=d;e=d-f>>4;d=((i|0)<-1?e:0)+g|0;if(d>>>0>=e>>>0)jo(a,376,g);f=h+(d<<4)|0;d=h+(e+-1<<4)|0;e=d-f|0;if(!e){j=b+4|0;j=c[j>>2]|0;so(a,i,j)|0;l=k;return 1};c[j>>2]=c[d>>2];c[j+4>>2]=c[d+4>>2];c[j+8>>2]=c[d+8>>2];c[j+12>>2]=c[d+12>>2];QQ(f+16|0,f|0,e|0)|0;c[f>>2]=c[j>>2];c[f+4>>2]=c[j+4>>2];c[f+8>>2]=c[j+8>>2];c[f+12>>2]=c[j+12>>2];j=b+4|0;j=c[j>>2]|0;so(a,i,j)|0;l=k;return 1}function oq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+16|0;j=m;f=a+68|0;b=c[f>>2]|0;g=a+64|0;h=b-(c[g>>2]|0)|0;k=h>>4;i=k+-1|0;k=k+-2|0;if((h|0)<32)Vn(a,268605,55);if(b>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4604);e=vo(a,40)|0;b=c[a+44>>2]|0;c[e>>2]=134234241;b=b+24|0;d=c[b>>2]|0;if(d|0)c[d+12>>2]=e;c[e+12>>2]=0;c[e+8>>2]=d;c[b>>2]=e;d=c[f>>2]|0;c[d>>2]=9;c[d+8>>2]=e;d=e+4|0;c[d>>2]=(c[d>>2]|0)+1;d=(c[f>>2]|0)+16|0;c[f>>2]=d;b=c[a+112>>2]|0;c[e+20>>2]=b;if(b|0){f=b+4|0;c[f>>2]=(c[f>>2]|0)+1}f=c[g>>2]|0;d=d-f>>4;b=((h|0)<16?d:0)+i|0;if(b>>>0>=d>>>0)jo(a,376,i);e=f+(b<<4)|0;b=f+(d+-1<<4)|0;d=b-e|0;if(!d){so(a,k,2)|0;l=m;return};c[j>>2]=c[b>>2];c[j+4>>2]=c[b+4>>2];c[j+8>>2]=c[b+8>>2];c[j+12>>2]=c[b+12>>2];QQ(e+16|0,e|0,d|0)|0;c[e>>2]=c[j>>2];c[e+4>>2]=c[j+4>>2];c[e+8>>2]=c[j+8>>2];c[e+12>>2]=c[j+12>>2];so(a,k,2)|0;l=m;return}function pq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;o=(d|0)!=0;if(o)c[d>>2]=0;j=a+68|0;k=a+64|0;p=c[k>>2]|0;q=(c[j>>2]|0)-p>>4;g=(b|0)<0;f=(g?q:0)+b|0;f=f>>>0<q>>>0?p+(f<<4)|0:0;f=(f|0)==0?936:f;switch(c[f>>2]|0){case 10:{e=c[f+8>>2]|0;if(o)c[d>>2]=c[e+16>>2];if(!(c[e>>2]&128)){q=e+24|0;return q|0}else{q=c[e+20>>2]|0;return q|0}}case 9:{l=9;break}default:{}}if((((l|0)==9?(h=c[f+8>>2]|0,c[h>>2]&8192|0):0)?(i=c[h+40>>2]|0,i|0):0)?(m=h+48|0,e=c[m>>2]|0,n=c[h+52>>2]|0,(n+e|0)>>>0<=(c[i+16>>2]|0)>>>0):0){if(!(c[i>>2]&128))f=i+24|0;else f=c[i+20>>2]|0;if(o){c[d>>2]=n;e=c[m>>2]|0}q=f+e|0;return q|0}Eo(a,b)|0;q=c[k>>2]|0;p=(c[j>>2]|0)-q>>4;e=(g?p:0)+b|0;e=e>>>0<p>>>0?q+(e<<4)|0:0;e=(e|0)==0?936:e;if((c[e>>2]|0)!=8)In(a,2101,b,287721);e=c[e+8>>2]|0;if(!e)In(a,2101,b,287721);if(d|0)c[d>>2]=c[e+20>>2];q=e+28|0;return q|0}function qq(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;t=l;l=l+16|0;i=t+4|0;o=t;s=e+68|0;p=e+64|0;q=(c[s>>2]|0)-(c[p>>2]|0)>>4;r=((f|0)<0?q:0)+f|0;if(r>>>0>=q>>>0)jo(e,300,f);n=pq(e,r,o)|0;f=c[o>>2]|0;if(f&1|0)Jn(e,270242,100663892,270812);f=f>>>1;if((c[s>>2]|0)>>>0>=(c[e+56>>2]|0)>>>0)Un(e,5237);if((f|0)==2147483647)Jn(e,268620,50336889,268576);q=e+44|0;f=ap(c[q>>2]|0,f,4,i)|0;if(!f)Mn(e,268620,5246);k=c[s>>2]|0;c[k>>2]=10;c[k+8>>2]=f;f=f+4|0;c[f>>2]=(c[f>>2]|0)+1;c[s>>2]=(c[s>>2]|0)+16;f=c[i>>2]|0;i=c[o>>2]|0;k=i&-8;do if(k){j=0;while(1){v=a[270556+(d[n+(j|1)>>0]|0)>>0]|b[34744+(d[n+j>>0]<<1)>>1];a[f>>0]=v;w=a[270556+(d[n+(j|3)>>0]|0)>>0]|b[34744+(d[n+(j|2)>>0]<<1)>>1];a[f+1>>0]=w;u=a[270556+(d[n+(j|5)>>0]|0)>>0]|b[34744+(d[n+(j|4)>>0]<<1)>>1];a[f+2>>0]=u;i=a[270556+(d[n+(j|7)>>0]|0)>>0]|b[34744+(d[n+(j|6)>>0]<<1)>>1];a[f+3>>0]=i;if((w|v|u|i|0)<0){i=25;break}f=f+4|0;j=j+8|0;if(j>>>0>=k>>>0){i=11;break}}if((i|0)==11){g=j;h=f;m=c[o>>2]|0;break}else if((i|0)==25)Jn(e,270242,100663892,270812)}else{g=0;h=f;m=i}while(0);a:do if(g>>>0<m>>>0){while(1){f=a[270556+(d[n+(g|1)>>0]|0)>>0]|a[270556+(d[n+g>>0]|0)>>0]<<4;if((f|0)<0)break;a[h>>0]=f;g=g+2|0;if(g>>>0>=(c[o>>2]|0)>>>0)break a;else h=h+1|0}Jn(e,270242,100663892,270812)}while(0);f=c[p>>2]|0;h=(c[s>>2]|0)-f>>4;if(!h)jo(e,376,-1);i=f+(h+-1<<4)|0;g=((r|0)<0?h:0)+r|0;if(g>>>0>=h>>>0)jo(e,376,r);v=f+(g<<4)|0;w=c[v>>2]|0;g=c[f+(g<<4)+8>>2]|0;c[v>>2]=c[i>>2];c[v+4>>2]=c[i+4>>2];c[v+8>>2]=c[i+8>>2];c[v+12>>2]=c[i+12>>2];c[i>>2]=2;c[s>>2]=(c[s>>2]|0)+-16;if(!(w&8)){l=t;return}v=g+4|0;w=(c[v>>2]|0)+-1|0;c[v>>2]=w;if(w|0){l=t;return}Yn(c[q>>2]|0,g);l=t;return}function rq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0.0;C=l;l=l+352|0;p=C+348|0;u=C;B=a+68|0;k=c[B>>2]|0;x=a+64|0;z=k-(c[x>>2]|0)|0;A=z>>4;v=u+4|0;RQ(v|0,0,344)|0;c[u>>2]=a;n=u+28|0;c[n>>2]=-1;c[u+36>>2]=f;c[u+40>>2]=f&1;g=f&2;c[u+44>>2]=g;w=f&4;c[u+48>>2]=w;i=f&8;c[u+52>>2]=i;j=f&12;c[u+56>>2]=j;f=u+72|0;c[f>>2]=150;if(!w){if(i|0){c[f>>2]=111;c[u+76>>2]=112;c[u+80>>2]=114;c[u+84>>2]=113;f=115;q=5}}else{c[f>>2]=58;c[u+76>>2]=59;c[u+80>>2]=61;c[u+84>>2]=60;f=(g>>>1)+115|0;q=5}if((q|0)==5)c[u+88>>2]=f;if(!j)c[u+68>>2]=770;t=a+56|0;if(k>>>0>=(c[t>>2]|0)>>>0)Un(a,5237);w=a+44|0;f=ap(c[w>>2]|0,128,1,p)|0;if(!f)Mn(a,268620,5246);j=c[B>>2]|0;c[j>>2]=10;c[j+8>>2]=f;j=f+4|0;c[j>>2]=(c[j>>2]|0)+1;j=c[B>>2]|0;k=j+16|0;c[B>>2]=k;j=c[j+8>>2]|0;c[u+16>>2]=j;j=c[j+20>>2]|0;c[v>>2]=j;s=u+8|0;c[s>>2]=j;c[u+12>>2]=j+128;if(k>>>0>=(c[t>>2]|0)>>>0)Un(a,4604);f=vo(a,40)|0;g=c[w>>2]|0;c[f>>2]=134234241;g=g+24|0;i=c[g>>2]|0;if(i|0)c[i+12>>2]=f;c[f+12>>2]=0;c[f+8>>2]=i;c[g>>2]=f;i=c[B>>2]|0;c[i>>2]=9;c[i+8>>2]=f;i=f+4|0;c[i>>2]=(c[i>>2]|0)+1;i=(c[B>>2]|0)+16|0;c[B>>2]=i;j=c[x>>2]|0;k=i-j>>4;c[u+32>>2]=k+-1;g=j;f=((d|0)<0?k:0)+d|0;f=f>>>0<k>>>0?g+(f<<4)|0:0;f=(f|0)==0?936:f;do if((c[f>>2]|0)==9?(m=c[f+8>>2]|0,(m|0)!=0):0){f=c[m>>2]|0;if(f&512|0){c[u+20>>2]=m;break}if((f&-134217728|0)==268435456){i=vo(a,48)|0;f=c[w>>2]|0;c[i>>2]=272679041;f=f+24|0;g=c[f>>2]|0;if(g|0)c[g+12>>2]=i;c[i+12>>2]=0;c[i+8>>2]=g;c[f>>2]=i;f=c[a+132>>2]|0;c[i+20>>2]=f;if(f|0){m=f+4|0;c[m>>2]=(c[m>>2]|0)+1}k=c[B>>2]|0;c[k>>2]=9;c[k+8>>2]=i;k=i+4|0;c[k>>2]=(c[k>>2]|0)+1;k=c[B>>2]|0;m=k-(c[x>>2]|0)>>4;c[B>>2]=k+16;c[n>>2]=m;sq(a,d,96);a:do if(tq(a,-1,1)|0){g=0;while(1){b:while(1){d=c[x>>2]|0;f=(c[B>>2]|0)-d>>4;f=f|0?d+(f+-1<<4)|0:0;switch(c[f>>2]|0){case 0:break b;case 8:{if(!(c[c[f+8>>2]>>2]&512))break b;break}case 9:{switch((c[c[f+8>>2]>>2]|0)>>>27&31){case 10:case 12:break b;default:{}}break}default:{}}uq(a);if(!(tq(a,-1,1)|0))break a}Eo(a,-1)|0;mq(a,-4,g);g=g+1|0;f=c[B>>2]|0;if((f|0)==(c[x>>2]|0))break;n=f+-16|0;c[B>>2]=n;d=c[f+-16>>2]|0;f=c[f+-8>>2]|0;c[n>>2]=2;if(d&8|0?(n=f+4|0,d=(c[n>>2]|0)+-1|0,c[n>>2]=d,(d|0)==0):0)Yn(c[w>>2]|0,f);if(!(tq(a,-1,1)|0))break a}Jn(a,268620,50337407,268636)}while(0);f=c[B>>2]|0;g=c[x>>2]|0;j=g;if((f|0)==(g|0))Jn(a,268620,50337407,268636);i=f+-16|0;c[B>>2]=i;d=c[f+-16>>2]|0;f=c[f+-8>>2]|0;c[i>>2]=2;if((d&8|0)!=0?(n=f+4|0,d=(c[n>>2]|0)+-1|0,c[n>>2]=d,(d|0)==0):0){Yn(c[w>>2]|0,f);j=c[x>>2]|0;g=j;i=c[B>>2]|0}}}while(0);d=i-g>>4;m=(e|0)<0;f=(m?d:0)+e|0;f=f>>>0<d>>>0?g+(f<<4)|0:0;f=(f|0)==0?936:f;c:do if((c[f>>2]|0)==9?(o=c[f+8>>2]|0,o|0):0){switch((c[o>>2]|0)>>>27&31){case 10:break;case 12:{Eo(a,e)|0;break c}default:break c}o=i-j>>4;f=(m?o:0)+e|0;if(f>>>0>=o>>>0)jo(a,300,e);D=+ho(a,j+(f<<4)|0);d=c[x>>2]|0;n=d+(f<<4)|0;o=c[n>>2]|0;d=d+(f<<4)+8|0;f=c[d>>2]|0;c[n>>2]=0;h[d>>3]=D;if(o&8|0?(d=f+4|0,o=(c[d>>2]|0)+-1|0,c[d>>2]=o,(o|0)==0):0)Yn(c[w>>2]|0,f)}while(0);k=c[B>>2]|0;f=c[x>>2]|0;g=k-f>>4;i=(m?g:0)+e|0;g=i>>>0<g>>>0;i=f+(i<<4)|0;f=g?i:0;f=(f|0)==0?936:f;j=k;d:do switch(c[f>>2]|0){case 0:{f=vq(a,e,0,10,p)|0;if((c[B>>2]|0)>>>0>=(c[t>>2]|0)>>>0)Un(a,4300);if((f|0)<0)Jn(a,268620,50335961,268982);else{q=Oo(a,270830,f)|0;r=c[B>>2]|0;c[B>>2]=r+16;c[r>>2]=8;c[r+8>>2]=q;q=q+4|0;c[q>>2]=(c[q>>2]|0)+1;q=66;break d}break}case 8:{r=c[f+8>>2]|0;if((r|0)!=0?(c[r>>2]&512|0)==0:0){if(j>>>0>=(c[t>>2]|0)>>>0)Un(a,1093);if(!g)jo(a,376,e);c[B>>2]=j+16;r=k;c[r>>2]=c[i>>2];c[r+4>>2]=c[i+4>>2];c[r+8>>2]=c[i+8>>2];c[r+12>>2]=c[i+12>>2];if(c[j>>2]&8|0){r=(c[j+8>>2]|0)+4|0;c[r>>2]=(c[r>>2]|0)+1}fq(a,0,10);q=66}else r=j;break}default:r=j}while(0);if((q|0)==66){r=c[B>>2]|0;c[u+24>>2]=c[r+-8>>2]}f=u+24|0;q=c[f>>2]|0;if(q|0?(c[q+20>>2]|0)==0:0)c[f>>2]=0;if(r>>>0>=(c[t>>2]|0)>>>0)Un(a,4604);i=vo(a,40)|0;f=c[w>>2]|0;c[i>>2]=134234241;f=f+24|0;g=c[f>>2]|0;if(g|0)c[g+12>>2]=i;c[i+12>>2]=0;c[i+8>>2]=g;c[f>>2]=i;o=c[B>>2]|0;c[o>>2]=9;c[o+8>>2]=i;o=i+4|0;c[o>>2]=(c[o>>2]|0)+1;o=(c[B>>2]|0)+16|0;c[B>>2]=o;f=c[a+112>>2]|0;c[i+20>>2]=f;if(f|0){r=f+4|0;c[r>>2]=(c[r>>2]|0)+1}d=c[x>>2]|0;g=c[B>>2]|0;if(g>>>0>=(c[t>>2]|0)>>>0)Un(a,1093);r=g-d>>4;f=((b|0)<0?r:0)+b|0;if(f>>>0>=r>>>0)jo(a,376,b);b=d+(f<<4)|0;c[B>>2]=g+16;c[g>>2]=c[b>>2];c[g+4>>2]=c[b+4>>2];c[g+8>>2]=c[b+8>>2];c[g+12>>2]=c[b+12>>2];if(c[g>>2]&8|0){b=(c[g+8>>2]|0)+4|0;c[b>>2]=(c[b>>2]|0)+1}f=c[B>>2]|0;i=f-(c[x>>2]|0)|0;b=i>>4;j=b+-2|0;if(b>>>0<=1)jo(a,300,-2);n=a+304|0;g=c[(c[n>>2]|0)+60>>2]|0;if(f>>>0>=(c[t>>2]|0)>>>0)Un(a,4153);c[B>>2]=f+16;c[f>>2]=8;c[f+8>>2]=g;k=g+4|0;c[k>>2]=(c[k>>2]|0)+1;k=c[x>>2]|0;m=(c[B>>2]|0)-k>>4;i=((i|0)<32?m:0)+j|0;if(i>>>0>=m>>>0)jo(a,376,j);if((m|0)==1)jo(a,376,-2);g=m+-2|0;f=c[a+72>>2]|0;if(!f)f=1;else f=c[f+52>>2]&1;No(a,k+(i<<4)|0,k+(m+-1<<4)|0,c[k+(g<<4)>>2]|0,c[k+(g<<4)+4>>2]|0,+h[k+(g<<4)+8>>3],f)|0;uq(a);f=c[(c[n>>2]|0)+60>>2]|0;g=c[B>>2]|0;if(g>>>0>=(c[t>>2]|0)>>>0)Un(a,4153);c[B>>2]=g+16;c[g>>2]=8;c[g+8>>2]=f;b=f+4|0;c[b>>2]=(c[b>>2]|0)+1;c[u+64>>2]=1e3;do if(!(wq(u,(o-d>>4)+-1|0)|0)){f=c[B>>2]|0;if(f>>>0<(c[t>>2]|0)>>>0){y=f+16|0;c[B>>2]=y;break}else Un(a,4162)}else{g=c[s>>2]|0;if((c[B>>2]|0)>>>0>=(c[t>>2]|0)>>>0)Un(a,4300);f=(g|0)==0?0:(c[v>>2]|0)-g|0;if((f|0)<0)Jn(a,268620,50335961,268982);else{y=Oo(a,g,f)|0;v=c[B>>2]|0;c[B>>2]=v+16;c[v>>2]=8;c[v+8>>2]=y;y=y+4|0;c[y>>2]=(c[y>>2]|0)+1;y=c[B>>2]|0;break}}while(0);i=c[x>>2]|0;g=y-i>>4;if(!g)jo(a,376,-1);j=i+(g+-1<<4)|0;f=((z|0)<0?g:0)+A|0;if(f>>>0>=g>>>0)jo(a,376,A);y=i+(f<<4)|0;z=c[y>>2]|0;f=c[i+(f<<4)+8>>2]|0;c[y>>2]=c[j>>2];c[y+4>>2]=c[j+4>>2];c[y+8>>2]=c[j+8>>2];c[y+12>>2]=c[j+12>>2];c[j>>2]=2;c[B>>2]=(c[B>>2]|0)+-16;if(!(z&8)){B=A+1|0;Gp(a,B);l=C;return}z=f+4|0;B=(c[z>>2]|0)+-1|0;c[z>>2]=B;if(B|0){B=A+1|0;Gp(a,B);l=C;return}Yn(c[w>>2]|0,f);B=A+1|0;Gp(a,B);l=C;return}function sq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;g=a+68|0;h=c[g>>2]|0;if(h>>>0>=(c[a+56>>2]|0)>>>0)Un(a,1093);i=a+64|0;f=c[i>>2]|0;j=h-f>>4;e=((b|0)<0?j:0)+b|0;if(e>>>0>=j>>>0)jo(a,376,b);j=f+(e<<4)|0;c[g>>2]=h+16;c[h>>2]=c[j>>2];c[h+4>>2]=c[j+4>>2];c[h+8>>2]=c[j+8>>2];c[h+12>>2]=c[j+12>>2];if(c[h>>2]&8|0){j=(c[h+8>>2]|0)+4|0;c[j>>2]=(c[j>>2]|0)+1}j=c[i>>2]|0;e=(c[g>>2]|0)-j>>4;e=e|0?j+(e+-1<<4)|0:0;e=(e|0)==0?936:e;switch(c[e>>2]|0){case 9:{if(!(c[e+8>>2]|0))In(a,2416,-1,268963);else{Lp(a,d);return}break}case 6:case 10:{to(a,-1);Lp(a,d);return}default:In(a,2416,-1,268963)}}function tq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;i=a+68|0;j=c[i>>2]|0;e=c[a+64>>2]|0;f=j-e>>4;g=((b|0)<0?f:0)+b|0;f=g>>>0<f>>>0;g=e+(g<<4)|0;e=f?g:0;e=(e|0)==0?936:e;h=j;if((c[e>>2]|0)!=9)In(a,2130,b,268963);if(!(c[e+8>>2]|0))In(a,2130,b,268963);if(h>>>0>=(c[a+56>>2]|0)>>>0)Un(a,1093);if(!f)jo(a,376,b);c[i>>2]=h+16;c[j>>2]=c[g>>2];c[j+4>>2]=c[g+4>>2];c[j+8>>2]=c[g+8>>2];c[j+12>>2]=c[g+12>>2];if(!(c[h>>2]&8)){j=Kp(a,d)|0;return j|0}j=(c[h+8>>2]|0)+4|0;c[j>>2]=(c[j>>2]|0)+1;j=Kp(a,d)|0;return j|0}function uq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;e=a+68|0;d=c[e>>2]|0;if((d+-32|0)>>>0<(c[a+64>>2]|0)>>>0)Jn(a,268620,50337495,268636);b=d+-16|0;c[e>>2]=b;f=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[b>>2]=2;if((f&8|0)!=0?(g=d+4|0,f=(c[g>>2]|0)+-1|0,c[g>>2]=f,(f|0)==0):0){Yn(c[a+44>>2]|0,d);b=c[e>>2]|0}f=b+-16|0;c[e>>2]=f;g=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[f>>2]=2;if(!(g&8))return;f=b+4|0;g=(c[f>>2]|0)+-1|0;c[f>>2]=g;if(g|0)return;Yn(c[a+44>>2]|0,b);return}function vq(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,i=0,k=0.0,l=0.0,m=0.0,n=0,o=0,p=0,q=0;o=a+68|0;p=a+64|0;i=c[p>>2]|0;q=(c[o>>2]|0)-i>>4;n=(b|0)<0;g=(n?q:0)+b|0;if(g>>>0>=q>>>0)jo(a,376,b);k=+ho(a,i+(g<<4)|0);h[j>>3]=k;g=c[j>>2]|0;i=c[j+4>>2]|0;if(0==0&(i&2146435072|0)==2146435072)m=(g|0)!=0|(i&1048575|0)!=0?0.0:k;else{m=+A(+(+B(+k)));m=(i|0)>-1|(i|0)==-1&g>>>0>4294967295?m:-m}k=+(d|0);l=+(e|0);if(!(m<k))if(m>l){k=l;d=e;i=1}else{k=m;d=~~m;i=0}else i=1;q=c[p>>2]|0;p=(c[o>>2]|0)-q>>4;o=(n?p:0)+b|0;o=o>>>0<p>>>0?q+(o<<4)|0:0;q=c[o>>2]|0;p=o+8|0;g=c[p>>2]|0;c[o>>2]=0;h[p>>3]=k;if(q&8|0?(p=g+4|0,q=(c[p>>2]|0)+-1|0,c[p>>2]=q,(q|0)==0):0)Yn(c[a+44>>2]|0,g);if(f|0){c[f>>2]=i;return d|0}if(!i)return d|0;else Jn(a,268620,50334830,271324);return 0}function wq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0.0;L=l;l=l+80|0;I=L+8|0;v=L;J=L+16|0;K=c[b>>2]|0;t=K+64|0;u=K+68|0;ro(K,(c[t>>2]|0)+(d<<4)|0,(c[u>>2]|0)+-16|0)|0;e=c[u>>2]|0;m=c[t>>2]|0;i=e-m|0;f=i>>4;k=f+-1|0;m=f|0?m+(k<<4)|0:0;do if(!(447>>>(c[((m|0)==0?936:m)>>2]|0)&1)){if(!f)jo(K,300,-1);f=c[(c[K+304>>2]|0)+316>>2]|0;m=K+56|0;if(e>>>0>=(c[m>>2]|0)>>>0)Un(K,4153);c[u>>2]=e+16;c[e>>2]=8;c[e+8>>2]=f;f=f+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[t>>2]|0;g=(c[u>>2]|0)-f>>4;e=((i|0)<16?g:0)+k|0;if(e>>>0>=g>>>0)jo(K,376,k);ro(K,f+(e<<4)|0,f+(g+-1<<4)|0)|0;f=c[t>>2]|0;g=(c[u>>2]|0)-f>>4;e=g+-2|0;if(g>>>0<=1)jo(K,376,-2);i=f+(e<<4)|0;g=f+(g+-1<<4)|0;k=c[i>>2]|0;e=c[f+(e<<4)+8>>2]|0;QQ(i|0,i+16|0,g-i|0)|0;c[g>>2]=2;g=(c[u>>2]|0)+-16|0;c[u>>2]=g;f=g;if((k&8|0)!=0?(i=e+4|0,k=(c[i>>2]|0)+-1|0,c[i>>2]=k,(k|0)==0):0){Yn(c[K+44>>2]|0,e);g=c[u>>2]|0;f=g}k=c[t>>2]|0;i=k;e=f-i>>4;e=e|0?k+(e+-1<<4)|0:0;e=(e|0)==0?936:e;switch(c[e>>2]|0){case 9:{if(!(c[c[e+8>>2]>>2]&512))o=34;break}case 6:break;default:o=34}if((o|0)==34){if((g|0)==(k|0))Jn(K,268620,50337407,268636);m=g+-16|0;c[u>>2]=m;o=c[g+-16>>2]|0;e=c[g+-8>>2]|0;c[m>>2]=2;if(!(o&8))break;m=e+4|0;o=(c[m>>2]|0)+-1|0;c[m>>2]=o;if(o|0)break;Yn(c[K+44>>2]|0,e);break}if(g>>>0>=(c[m>>2]|0)>>>0)Un(K,1093);e=g-i>>4;if(e>>>0<=1)jo(K,376,-2);o=k+(e+-2<<4)|0;c[u>>2]=g+16;c[g>>2]=c[o>>2];c[g+4>>2]=c[o+4>>2];c[g+8>>2]=c[o+8>>2];c[g+12>>2]=c[o+12>>2];if(c[g>>2]&8|0){o=(c[g+8>>2]|0)+4|0;c[o>>2]=(c[o>>2]|0)+1}g=c[u>>2]|0;if(g>>>0>=(c[m>>2]|0)>>>0)Un(K,1093);e=c[t>>2]|0;f=g-e>>4;if(f>>>0<=3)jo(K,376,-4);o=e+(f+-4<<4)|0;c[u>>2]=g+16;c[g>>2]=c[o>>2];c[g+4>>2]=c[o+4>>2];c[g+8>>2]=c[o+8>>2];c[g+12>>2]=c[o+12>>2];if(c[g>>2]&8|0){o=(c[g+8>>2]|0)+4|0;c[o>>2]=(c[o>>2]|0)+1}e=(c[u>>2]|0)-(c[t>>2]|0)|0;if((e|0)<48)Vn(K,268605,55);so(K,(e>>>4)+-3|0,0)|0;f=c[t>>2]|0;g=(c[u>>2]|0)-f>>4;e=g+-2|0;if(g>>>0<=1)jo(K,376,-2);k=f+(e<<4)|0;m=f+(g+-1<<4)|0;o=c[k>>2]|0;e=c[f+(e<<4)+8>>2]|0;QQ(k|0,k+16|0,m-k|0)|0;c[m>>2]=2;c[u>>2]=(c[u>>2]|0)+-16;if(o&8|0?(m=e+4|0,o=(c[m>>2]|0)+-1|0,c[m>>2]=o,(o|0)==0):0)Yn(c[K+44>>2]|0,e)}while(0);e=c[b+20>>2]|0;if(e|0){f=c[u>>2]|0;i=K+56|0;if(f>>>0>=(c[i>>2]|0)>>>0)Un(K,4153);c[u>>2]=f+16;c[f>>2]=9;c[f+8>>2]=e;f=e+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[u>>2]|0;if(f>>>0>=(c[i>>2]|0)>>>0)Un(K,1093);g=c[t>>2]|0;o=f-g>>4;e=((d|0)<0?o:0)+d|0;if(e>>>0>=o>>>0)jo(K,376,d);o=g+(e<<4)|0;c[u>>2]=f+16;c[f>>2]=c[o>>2];c[f+4>>2]=c[o+4>>2];c[f+8>>2]=c[o+8>>2];c[f+12>>2]=c[o+12>>2];if(c[f>>2]&8|0){o=(c[f+8>>2]|0)+4|0;c[o>>2]=(c[o>>2]|0)+1}e=c[u>>2]|0;if(e>>>0>=(c[i>>2]|0)>>>0)Un(K,1093);f=c[t>>2]|0;g=e-f>>4;if(g>>>0<=3)jo(K,376,-4);o=f+(g+-4<<4)|0;c[u>>2]=e+16;c[e>>2]=c[o>>2];c[e+4>>2]=c[o+4>>2];c[e+8>>2]=c[o+8>>2];c[e+12>>2]=c[o+12>>2];if(c[e>>2]&8|0){o=(c[e+8>>2]|0)+4|0;c[o>>2]=(c[o>>2]|0)+1}g=c[u>>2]|0;if(g>>>0>=(c[i>>2]|0)>>>0)Un(K,1093);e=c[t>>2]|0;f=g-e>>4;if(f>>>0<=3)jo(K,376,-4);o=e+(f+-4<<4)|0;c[u>>2]=g+16;c[g>>2]=c[o>>2];c[g+4>>2]=c[o+4>>2];c[g+8>>2]=c[o+8>>2];c[g+12>>2]=c[o+12>>2];if(c[g>>2]&8|0){o=(c[g+8>>2]|0)+4|0;c[o>>2]=(c[o>>2]|0)+1}e=(c[u>>2]|0)-(c[t>>2]|0)|0;if((e|0)<64)Vn(K,268605,55);so(K,(e>>>4)+-4|0,0)|0;f=c[t>>2]|0;g=(c[u>>2]|0)-f>>4;e=g+-2|0;if(g>>>0<=1)jo(K,376,-2);m=f+(e<<4)|0;d=f+(g+-1<<4)|0;o=c[m>>2]|0;e=c[f+(e<<4)+8>>2]|0;QQ(m|0,m+16|0,d-m|0)|0;c[d>>2]=2;c[u>>2]=(c[u>>2]|0)+-16;if(o&8|0?(d=e+4|0,o=(c[d>>2]|0)+-1|0,c[d>>2]=o,(o|0)==0):0)Yn(c[K+44>>2]|0,e)}m=c[u>>2]|0;g=m;a:do if((c[m+-16>>2]|0)==9){f=c[m+-8>>2]|0;e=c[f>>2]|0;if(e&8192|0?c[b+36>>2]&12|0:0){e=c[f+40>>2]|0;if(e|0?(n=c[f+48>>2]|0,r=c[f+52>>2]|0,(r+n|0)>>>0<=(c[e+16>>2]|0)>>>0):0){if(!(c[e>>2]&128))e=e+24|0;else e=c[e+20>>2]|0;d=e+n|0;g=r<<1;m=b+12|0;n=b+4|0;e=c[n>>2]|0;f=e;do if(((c[m>>2]|0)-f|0)>>>0<(g+11|0)>>>0){i=c[b>>2]|0;k=b+8|0;f=f-(c[k>>2]|0)|0;e=g+75+f+(f>>>2)|0;if(e>>>0<f>>>0)Jn(i,270142,50331712,268576);else{J=b+16|0;Kn(i,c[J>>2]|0,e);J=c[(c[J>>2]|0)+20>>2]|0;s=J+f|0;c[n>>2]=s;c[k>>2]=J;c[m>>2]=J+e;break}}else s=e;while(0);if(!(c[b+48>>2]|0)){f=s;e=270840;g=f+9|0;do{a[f>>0]=a[e>>0]|0;f=f+1|0;e=e+1|0}while((f|0)<(g|0));e=xq(d,r,s+9|0)|0;a[e>>0]=34;a[e+1>>0]=125;e=e+2|0}else{a[s>>0]=124;e=xq(d,r,s+1|0)|0;a[e>>0]=124;e=e+1|0}c[n>>2]=e;o=242;break}i=c[b>>2]|0;k=c[(c[i+304>>2]|0)+600>>2]|0;m=c[k+20>>2]|0;d=b+4|0;n=b+12|0;f=c[d>>2]|0;e=f;do if(((c[n>>2]|0)-f|0)>>>0<m>>>0){g=b+8|0;e=f-(c[g>>2]|0)|0;f=m+64+e+(e>>>2)|0;if(f>>>0<e>>>0)Jn(i,270142,50331712,268576);else{b=b+16|0;Kn(i,c[b>>2]|0,f);b=c[(c[b>>2]|0)+20>>2]|0;q=b+e|0;c[d>>2]=q;c[g>>2]=b;c[n>>2]=b+f;break}}else q=e;while(0);PQ(q|0,k+28|0,m|0)|0;c[d>>2]=(c[d>>2]|0)+m;o=242;break}switch(e>>>27&31){case 10:{f=c[t>>2]|0;s=g-f>>4;e=s+-1|0;if(!s)jo(K,300,-1);M=+ho(K,f+(e<<4)|0);r=c[t>>2]|0;q=r+(e<<4)|0;s=c[q>>2]|0;r=r+(e<<4)+8|0;e=c[r>>2]|0;c[q>>2]=0;h[r>>3]=M;if(!(s&8)){o=118;break a}r=e+4|0;s=(c[r>>2]|0)+-1|0;c[r>>2]=s;if(s|0){o=118;break a}Yn(c[K+44>>2]|0,e);o=118;break a}case 12:{Eo(K,-1)|0;o=118;break a}case 5:case 17:{i=g-(c[t>>2]|0)|0;s=i>>4;k=s+-1|0;if(!s)jo(K,300,-1);e=c[(c[K+304>>2]|0)+404>>2]|0;if(m>>>0>=(c[K+56>>2]|0)>>>0)Un(K,4153);c[u>>2]=m+16;c[m>>2]=8;c[m+8>>2]=e;f=e+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[t>>2]|0;g=(c[u>>2]|0)-f>>4;e=((i|0)<16?g:0)+k|0;if(e>>>0>=g>>>0)jo(K,376,k);ro(K,f+(e<<4)|0,f+(g+-1<<4)|0)|0;f=c[t>>2]|0;g=(c[u>>2]|0)-f>>4;e=g+-2|0;if(g>>>0<=1)jo(K,376,-2);q=f+(e<<4)|0;r=f+(g+-1<<4)|0;s=c[q>>2]|0;e=c[f+(e<<4)+8>>2]|0;QQ(q|0,q+16|0,r-q|0)|0;c[r>>2]=2;f=(c[u>>2]|0)+-16|0;c[u>>2]=f;if((s&8|0)!=0?(r=e+4|0,s=(c[r>>2]|0)+-1|0,c[r>>2]=s,(s|0)==0):0){Yn(c[K+44>>2]|0,e);f=c[u>>2]|0}g=c[t>>2]|0;f=f-g>>4;e=f+-2|0;if(f>>>0<=1)jo(K,376,-2);q=g+(e<<4)|0;r=g+(f+-1<<4)|0;s=c[q>>2]|0;e=c[g+(e<<4)+8>>2]|0;QQ(q|0,q+16|0,r-q|0)|0;c[r>>2]=2;c[u>>2]=(c[u>>2]|0)+-16;if(!(s&8)){o=118;break a}r=e+4|0;s=(c[r>>2]|0)+-1|0;c[r>>2]=s;if(s|0){o=118;break a}Yn(c[K+44>>2]|0,e);o=118;break a}default:{if(!(e&512)){o=118;break a}if(!(c[b+36>>2]&12)){o=243;break a}i=c[b>>2]|0;k=c[(c[i+304>>2]|0)+(c[b+88>>2]<<2)>>2]|0;m=c[k+20>>2]|0;d=b+4|0;n=b+12|0;f=c[d>>2]|0;e=f;do if(((c[n>>2]|0)-f|0)>>>0<m>>>0){g=b+8|0;e=f-(c[g>>2]|0)|0;f=m+64+e+(e>>>2)|0;if(f>>>0<e>>>0)Jn(i,270142,50331712,268576);else{b=b+16|0;Kn(i,c[b>>2]|0,f);b=c[(c[b>>2]|0)+20>>2]|0;p=b+e|0;c[d>>2]=p;c[g>>2]=b;c[n>>2]=b+f;break}}else p=e;while(0);PQ(p|0,k+28|0,m|0)|0;c[d>>2]=(c[d>>2]|0)+m;o=242;break a}}}else o=118;while(0);b:do if((o|0)==118){f=c[b+68>>2]|0;e=c[u>>2]|0;t=c[t>>2]|0;u=e-t>>4;u=u|0?t+(u+-1<<4)|0:0;if(!(c[4164+(c[((u|0)==0?936:u)>>2]<<2)>>2]&f)){if(f&1024|0)Jn(K,268620,100667121,269566);switch(c[e+-16>>2]|0){case 2:{i=c[b>>2]|0;k=c[(c[i+304>>2]|0)+(c[b+72>>2]<<2)>>2]|0;m=c[k+20>>2]|0;d=b+4|0;n=b+12|0;f=c[d>>2]|0;e=f;do if(((c[n>>2]|0)-f|0)>>>0<m>>>0){g=b+8|0;e=f-(c[g>>2]|0)|0;f=m+64+e+(e>>>2)|0;if(f>>>0<e>>>0)Jn(i,270142,50331712,268576);else{b=b+16|0;Kn(i,c[b>>2]|0,f);b=c[(c[b>>2]|0)+20>>2]|0;w=b+e|0;c[d>>2]=w;c[g>>2]=b;c[n>>2]=b+f;break}}else w=e;while(0);PQ(w|0,k+28|0,m|0)|0;c[d>>2]=(c[d>>2]|0)+m;o=242;break b}case 3:{i=c[b>>2]|0;k=c[(c[i+304>>2]|0)+600>>2]|0;m=c[k+20>>2]|0;d=b+4|0;n=b+12|0;f=c[d>>2]|0;e=f;do if(((c[n>>2]|0)-f|0)>>>0<m>>>0){g=b+8|0;e=f-(c[g>>2]|0)|0;f=m+64+e+(e>>>2)|0;if(f>>>0<e>>>0)Jn(i,270142,50331712,268576);else{b=b+16|0;Kn(i,c[b>>2]|0,f);b=c[(c[b>>2]|0)+20>>2]|0;x=b+e|0;c[d>>2]=x;c[g>>2]=b;c[n>>2]=b+f;break}}else x=e;while(0);PQ(x|0,k+28|0,m|0)|0;c[d>>2]=(c[d>>2]|0)+m;o=242;break b}case 4:{n=c[b>>2]|0;i=c[(c[n+304>>2]|0)+((c[e+-8>>2]|0?151:152)<<2)>>2]|0;k=c[i+20>>2]|0;m=b+4|0;d=b+12|0;f=c[m>>2]|0;e=f;do if(((c[d>>2]|0)-f|0)>>>0<k>>>0){g=b+8|0;e=f-(c[g>>2]|0)|0;f=k+64+e+(e>>>2)|0;if(f>>>0<e>>>0)Jn(n,270142,50331712,268576);else{b=b+16|0;Kn(n,c[b>>2]|0,f);b=c[(c[b>>2]|0)+20>>2]|0;y=b+e|0;c[m>>2]=y;c[g>>2]=b;c[d>>2]=b+f;break}}else y=e;while(0);PQ(y|0,i+28|0,k|0)|0;c[m>>2]=(c[m>>2]|0)+k;o=242;break b}case 5:{e=c[e+-8>>2]|0;f=J;g=f+64|0;do{a[f>>0]=0;f=f+1|0}while((f|0)<(g|0));k=(e|0)!=0;k=(c[b+48>>2]|0)==0?(k?270855:270869):k?270850:314298;c[v>>2]=e;_O(J,63,k,v);k=WO(J)|0;m=b+4|0;d=b+12|0;f=c[m>>2]|0;e=f;do if(((c[d>>2]|0)-f|0)>>>0<k>>>0){g=c[b>>2]|0;i=b+8|0;e=f-(c[i>>2]|0)|0;f=k+64+e+(e>>>2)|0;if(f>>>0<e>>>0)Jn(g,270142,50331712,268576);else{b=b+16|0;Kn(g,c[b>>2]|0,f);b=c[(c[b>>2]|0)+20>>2]|0;B=b+e|0;c[m>>2]=B;c[i>>2]=b;c[d>>2]=b+f;break}}else B=e;while(0);PQ(B|0,J|0,k|0)|0;c[m>>2]=(c[m>>2]|0)+k;o=242;break b}case 8:{e=c[e+-8>>2]|0;if(c[e>>2]&512|0){o=243;break b}yq(b,e);o=242;break b}case 9:{if((c[c[e+-8>>2]>>2]&-134217728|0)!=268435456){Bq(b);o=242;break b}t=c[b>>2]|0;zq(b,J);r=(c[J>>2]|0)+-1|0;w=b+4|0;x=b+12|0;f=c[x>>2]|0;E=c[w>>2]|0;e=E;do if((f|0)==(E|0)){g=c[b>>2]|0;i=b+8|0;e=f-(c[i>>2]|0)|0;f=e+65+(e>>>2)|0;if(f>>>0<e>>>0)Jn(g,270142,50331712,268576);else{E=b+16|0;Kn(g,c[E>>2]|0,f);E=c[(c[E>>2]|0)+20>>2]|0;z=E+e|0;c[w>>2]=z;c[i>>2]=E;c[x>>2]=E+f;break}}else z=e;while(0);c[w>>2]=z+1;a[z>>0]=91;n=Bo(t,r)|0;do if(n|0){s=b+24|0;o=t+68|0;p=t+56|0;u=b+8|0;v=b+16|0;q=b+60|0;d=0;while(1){if(c[s>>2]|0){i=c[q>>2]|0;f=c[x>>2]|0;E=c[w>>2]|0;e=E;if((f|0)==(E|0)){g=c[b>>2]|0;e=f-(c[u>>2]|0)|0;f=e+65+(e>>>2)|0;if(f>>>0<e>>>0){o=154;break}Kn(g,c[v>>2]|0,f);E=c[(c[v>>2]|0)+20>>2]|0;e=E+e|0;c[w>>2]=e;c[u>>2]=E;c[x>>2]=E+f}c[w>>2]=e+1;a[e>>0]=10;if(i|0){g=c[s>>2]|0;k=g+28|0;g=c[g+20>>2]|0;m=O(g,i)|0;e=c[w>>2]|0;f=e;if(((c[x>>2]|0)-f|0)>>>0<m>>>0){i=c[b>>2]|0;e=f-(c[u>>2]|0)|0;f=m+64+e+(e>>>2)|0;if(f>>>0<e>>>0){o=159;break}Kn(i,c[v>>2]|0,f);E=c[(c[v>>2]|0)+20>>2]|0;i=E+e|0;c[w>>2]=i;c[u>>2]=E;c[x>>2]=E+f}else i=e;PQ(i|0,k|0,g|0)|0;f=i+g|0;e=m-g|0;if(e>>>0>=g>>>0)do{PQ(f|0,i|0,g|0)|0;f=f+g|0;e=e-g|0;g=g<<1}while(e>>>0>=g>>>0);PQ(f|0,i|0,e|0)|0;c[w>>2]=f+e}}e=c[o>>2]|0;if(e>>>0>=(c[p>>2]|0)>>>0){o=165;break}c[o>>2]=e+16;c[e>>2]=0;h[e+8>>3]=+(d>>>0);Eo(t,-1)|0;if(!(wq(b,r)|0)){g=c[b>>2]|0;i=c[(c[g+304>>2]|0)+600>>2]|0;k=c[i+20>>2]|0;f=c[w>>2]|0;e=f;if(((c[x>>2]|0)-f|0)>>>0<k>>>0){e=f-(c[u>>2]|0)|0;f=k+64+e+(e>>>2)|0;if(f>>>0<e>>>0){o=170;break}Kn(g,c[v>>2]|0,f);E=c[(c[v>>2]|0)+20>>2]|0;e=E+e|0;c[w>>2]=e;c[u>>2]=E;c[x>>2]=E+f}PQ(e|0,i+28|0,k|0)|0;f=(c[w>>2]|0)+k|0;c[w>>2]=f}else f=c[w>>2]|0;e=f;if((c[x>>2]|0)==(f|0)){g=c[b>>2]|0;e=f-(c[u>>2]|0)|0;f=e+65+(e>>>2)|0;if(f>>>0<e>>>0){o=175;break}Kn(g,c[v>>2]|0,f);E=c[(c[v>>2]|0)+20>>2]|0;e=E+e|0;c[w>>2]=e;c[u>>2]=E;c[x>>2]=E+f}c[w>>2]=e+1;a[e>>0]=44;d=d+1|0;if(d>>>0>=n>>>0){o=178;break}}if((o|0)==154)Jn(g,270142,50331712,268576);else if((o|0)==159)Jn(i,270142,50331712,268576);else if((o|0)==165)Un(t,4274);else if((o|0)==170)Jn(g,270142,50331712,268576);else if((o|0)==175)Jn(g,270142,50331712,268576);else if((o|0)==178){f=b+4|0;e=(c[f>>2]|0)+-1|0;c[f>>2]=e;f=e;if(!(c[s>>2]|0))break;i=(c[q>>2]|0)+-1|0;do if((c[x>>2]|0)==(f|0)){g=c[b>>2]|0;e=f-(c[u>>2]|0)|0;f=e+65+(e>>>2)|0;if(f>>>0<e>>>0)Jn(g,270142,50331712,268576);else{Kn(g,c[v>>2]|0,f);E=c[(c[v>>2]|0)+20>>2]|0;F=E+e|0;c[w>>2]=F;c[u>>2]=E;c[x>>2]=E+f;break}}else F=e;while(0);c[w>>2]=F+1;a[F>>0]=10;if(!i)break;g=c[s>>2]|0;k=g+28|0;g=c[g+20>>2]|0;m=O(g,i)|0;e=c[w>>2]|0;f=e;do if(((c[x>>2]|0)-f|0)>>>0<m>>>0){i=c[b>>2]|0;e=f-(c[u>>2]|0)|0;f=m+64+e+(e>>>2)|0;if(f>>>0<e>>>0)Jn(i,270142,50331712,268576);else{Kn(i,c[v>>2]|0,f);F=c[(c[v>>2]|0)+20>>2]|0;G=F+e|0;c[w>>2]=G;c[u>>2]=F;c[x>>2]=F+f;break}}else G=e;while(0);PQ(G|0,k|0,g|0)|0;f=G+g|0;e=m-g|0;if(e>>>0>=g>>>0)do{PQ(f|0,G|0,g|0)|0;f=f+g|0;e=e-g|0;g=g<<1}while(e>>>0>=g>>>0);PQ(f|0,G|0,e|0)|0;c[w>>2]=f+e;break}}while(0);f=c[x>>2]|0;G=c[w>>2]|0;e=G;do if((f|0)==(G|0)){g=c[b>>2]|0;i=b+8|0;e=f-(c[i>>2]|0)|0;f=e+65+(e>>>2)|0;if(f>>>0<e>>>0)Jn(g,270142,50331712,268576);else{G=b+16|0;Kn(g,c[G>>2]|0,f);G=c[(c[G>>2]|0)+20>>2]|0;H=G+e|0;c[w>>2]=H;c[i>>2]=G;c[x>>2]=G+f;break}}else H=e;while(0);c[w>>2]=H+1;a[H>>0]=93;f=c[b>>2]|0;e=b+60|0;H=(c[e>>2]|0)+-1|0;c[e>>2]=H;e=c[J>>2]|0;if(H>>>0>=64){c[I>>2]=c[(c[((e|0)<1?f+68|0:f+64|0)>>2]|0)+(e+-1<<4)+8>>2];Lo(f,280535,I);Aq(f,c[b+32>>2]|0)}Gp(f,e);o=242;break b}case 10:{if(!(c[b+56>>2]|0)){to(K,-1);Bq(b);o=242;break b}e=c[e+-8>>2]|0;if(!(c[e>>2]&128))o=e+24|0;else o=c[e+20>>2]|0;d=c[e+16>>2]|0;g=d<<1;m=b+12|0;n=b+4|0;e=c[n>>2]|0;f=e;do if(((c[m>>2]|0)-f|0)>>>0<(g+11|0)>>>0){i=c[b>>2]|0;k=b+8|0;f=f-(c[k>>2]|0)|0;e=g+75+f+(f>>>2)|0;if(e>>>0<f>>>0)Jn(i,270142,50331712,268576);else{J=b+16|0;Kn(i,c[J>>2]|0,e);J=c[(c[J>>2]|0)+20>>2]|0;C=J+f|0;c[n>>2]=C;c[k>>2]=J;c[m>>2]=J+e;break}}else C=e;while(0);if(!(c[b+48>>2]|0)){f=C;e=270840;g=f+9|0;do{a[f>>0]=a[e>>0]|0;f=f+1|0;e=e+1|0}while((f|0)<(g|0));e=xq(o,d,C+9|0)|0;a[e>>0]=34;a[e+1>>0]=125;e=e+2|0}else{a[C>>0]=124;e=xq(o,d,C+1|0)|0;a[e>>0]=124;e=e+1|0}c[n>>2]=e;o=242;break b}case 6:{i=c[b>>2]|0;k=c[(c[i+304>>2]|0)+(c[b+88>>2]<<2)>>2]|0;m=c[k+20>>2]|0;d=b+4|0;n=b+12|0;f=c[d>>2]|0;e=f;do if(((c[n>>2]|0)-f|0)>>>0<m>>>0){g=b+8|0;e=f-(c[g>>2]|0)|0;f=m+64+e+(e>>>2)|0;if(f>>>0<e>>>0)Jn(i,270142,50331712,268576);else{b=b+16|0;Kn(i,c[b>>2]|0,f);b=c[(c[b>>2]|0)+20>>2]|0;A=b+e|0;c[d>>2]=A;c[g>>2]=b;c[n>>2]=b+f;break}}else A=e;while(0);PQ(A|0,k+28|0,m|0)|0;c[d>>2]=(c[d>>2]|0)+m;o=242;break b}default:{n=c[b>>2]|0;i=n+68|0;k=c[i>>2]|0;M=+h[k+-8>>3];e=iP(M)|0;h[j>>3]=M;f=JQ(c[j>>2]|0,c[j+4>>2]|0,63)|0;g=(e|0)==0;if((e|1|0)==1){if(!(c[b+36>>2]&12))e=150;else{do if(!g)if(!f){e=b+84|0;break}else{e=b+80|0;break}else e=b+76|0;while(0);e=c[e>>2]|0}m=c[(c[n+304>>2]|0)+(e<<2)>>2]|0;f=c[m+20>>2]|0;e=b+4|0;d=b+12|0;i=c[e>>2]|0;g=i;do if(((c[d>>2]|0)-i|0)>>>0<f>>>0){k=b+8|0;g=i-(c[k>>2]|0)|0;i=f+64+g+(g>>>2)|0;if(i>>>0<g>>>0)Jn(n,270142,50331712,268576);else{b=b+16|0;Kn(n,c[b>>2]|0,i);b=c[(c[b>>2]|0)+20>>2]|0;E=b+g|0;c[e>>2]=E;c[k>>2]=b;c[d>>2]=b+i;break}}else E=g;while(0);PQ(E|0,m+28|0,f|0)|0}else{do if((e|0)==2&(f|0)!=0?(c[b+56>>2]|0)!=0:0){e=c[(c[n+304>>2]|0)+248>>2]|0;if(k>>>0<(c[n+56>>2]|0)>>>0){c[i>>2]=k+16;c[k>>2]=8;c[k+8>>2]=e;J=e+4|0;c[J>>2]=(c[J>>2]|0)+1;break}else Un(n,4153)}else o=223;while(0);if((o|0)==223)Tp(n,10,0,0);d=c[(c[i>>2]|0)+-8>>2]|0;f=c[d+20>>2]|0;e=b+4|0;n=b+12|0;i=c[e>>2]|0;g=i;do if(((c[n>>2]|0)-i|0)>>>0<f>>>0){k=c[b>>2]|0;m=b+8|0;g=i-(c[m>>2]|0)|0;i=f+64+g+(g>>>2)|0;if(i>>>0<g>>>0)Jn(k,270142,50331712,268576);else{b=b+16|0;Kn(k,c[b>>2]|0,i);b=c[(c[b>>2]|0)+20>>2]|0;D=b+g|0;c[e>>2]=D;c[m>>2]=b;c[n>>2]=b+i;break}}else D=g;while(0);PQ(D|0,d+28|0,f|0)|0}c[e>>2]=(c[e>>2]|0)+f;o=242;break b}}}else o=243}while(0);if((o|0)==242){uq(K);K=1;l=L;return K|0}else if((o|0)==243){uq(K);K=0;l=L;return K|0}return 0}function xq(c,e,f){c=c|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0;k=(f&1|0)!=0;l=f+1|0;h=k?l:f;m=e&-4;if(!m)g=0;else{i=(m+-1|0)>>>2;j=h+((i<<3)+8)|0;g=0;while(1){b[h>>1]=b[34232+((d[c+g>>0]|0)<<1)>>1]|0;b[h+2>>1]=b[34232+((d[c+(g|1)>>0]|0)<<1)>>1]|0;b[h+4>>1]=b[34232+((d[c+(g|2)>>0]|0)<<1)>>1]|0;b[h+6>>1]=b[34232+((d[c+(g|3)>>0]|0)<<1)>>1]|0;g=g+4|0;if(g>>>0>=m>>>0)break;else h=h+8|0}g=(i<<2)+4|0;h=j}if(k){QQ(f|0,l|0,m<<1|0)|0;h=h+-1|0}if(g>>>0>=e>>>0){e=h;return e|0}j=e-g|0;i=h;while(1){m=d[c+g>>0]|0;a[i>>0]=a[268793+(m>>>4)>>0]|0;a[i+1>>0]=a[268793+(m&15)>>0]|0;g=g+1|0;if((g|0)==(e|0))break;else i=i+2|0}e=h+(j<<1)|0;return e|0}function yq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;r=c[b>>2]|0;s=d+28|0;q=s+(c[d+20>>2]|0)|0;v=b+4|0;w=b+12|0;e=c[w>>2]|0;p=c[v>>2]|0;d=p;do if((e|0)==(p|0)){f=b+8|0;d=e-(c[f>>2]|0)|0;e=d+65+(d>>>2)|0;if(e>>>0<d>>>0)Jn(r,270142,50331712,268576);else{p=b+16|0;Kn(r,c[p>>2]|0,e);p=c[(c[p>>2]|0)+20>>2]|0;g=p+d|0;c[v>>2]=g;c[f>>2]=p;c[w>>2]=p+e;break}}else g=d;while(0);c[v>>2]=g+1;a[g>>0]=34;a:do if(s>>>0<q>>>0){l=q;m=b+8|0;n=b+16|0;o=b+48|0;p=b+40|0;f=c[v>>2]|0;e=s;d=f;while(1){h=l-e|0;h=h>>>0<64?h:64;g=h*6|0;if(((c[w>>2]|0)-d|0)>>>0<g>>>0){f=f-(c[m>>2]|0)|0;d=g+64+f+(f>>>2)|0;if(d>>>0<f>>>0)break;Kn(r,c[n>>2]|0,d);j=c[(c[n>>2]|0)+20>>2]|0;k=j+f|0;c[v>>2]=k;c[m>>2]=j;c[w>>2]=j+d;d=k}k=e+h|0;b:do if((h|0)>0)do{f=e;while(1){e=f+1|0;g=a[f>>0]|0;j=g&255;h=a[271068+j>>0]|0;i=h&255;if(h<<24>>24>-1){a[d>>0]=h;d=d+1|0}else{if((h&255)<=159)break;a[d>>0]=92;a[d+1>>0]=i+128;d=d+2|0}if(e>>>0<k>>>0)f=e;else break b}do if(h<<24>>24==-128){h=(c[o>>2]|0)==0?285813:154744;a[d>>0]=92;f=d+2|0;a[d+1>>0]=h;h=h>>>16;if(!h)d=f;else{g=h;while(1){g=g+-1|0;a[f>>0]=a[268793+(j>>>(g<<2)&15)>>0]|0;if(!g)break;else f=f+1|0}d=d+(h+2)|0}}else{c:do if(f>>>0>=s>>>0&f>>>0<q>>>0){do if(g<<24>>24<=-1){if((g&255)<192){g=j;break c}if((g&255)<224){g=1;f=j&31;break}if((g&255)<240){g=2;f=j&15;break}if((g&255)<248){g=3;f=j&7;break}if((g&255)<252){g=4;f=j&3;break}if((g&255)>=254)if(g<<24>>24==-1){g=j;break c}else{g=6;f=0;break}else{g=5;f=j&1;break}}else{g=0;f=j&127}while(0);if((e+g|0)>>>0<=q>>>0)if(!g)g=f;else{h=e;while(1){e=h+1|0;f=a[h>>0]&63|f<<6;if((g|0)>1){h=e;g=g+-1|0}else{g=f;break}}}else g=j}else g=j;while(0);if((g|1|0)==8233|(c[p>>2]|0)!=0){if(g>>>0>=256)if(g>>>0<65536)f=285813;else f=(c[o>>2]|0)==0?546091:547925;else f=(c[o>>2]|0)==0?285813:154744;a[d>>0]=f>>>8;h=d+2|0;a[d+1>>0]=f;i=f>>>16;if(!i){d=h;break}else{f=h;h=i}while(1){h=h+-1|0;a[f>>0]=a[268793+(g>>>(h<<2)&15)>>0]|0;if(!h)break;else f=f+1|0}d=d+(i+2)|0;break}if(g>>>0<128){h=0;f=1}else{if(g>>>0>=2048)if(g>>>0>=65536)if(g>>>0>=2097152)if(g>>>0<67108864){f=5;t=54}else f=g>>>31|6;else{f=4;t=54}else{f=3;t=54}else{f=2;t=54}if((t|0)==54)t=0;h=a[269353+(f+-1)>>0]|0;i=f;do{i=i+-1|0;a[d+i>>0]=g&63|128;g=g>>>6}while((i|0)>1)}a[d>>0]=g+(h&255);d=d+f|0}while(0)}while(e>>>0<k>>>0);while(0);c[v>>2]=d;f=d;if(e>>>0>=q>>>0){u=f;break a}}Jn(r,270142,50331712,268576)}else u=c[v>>2]|0;while(0);if((c[w>>2]|0)!=(u|0)){b=u;w=b+1|0;c[v>>2]=w;a[b>>0]=34;return}f=c[b>>2]|0;g=b+8|0;d=u-(c[g>>2]|0)|0;e=d+65+(d>>>2)|0;if(e>>>0<d>>>0)Jn(f,270142,50331712,268576);u=b+16|0;Kn(f,c[u>>2]|0,e);u=c[(c[u>>2]|0)+20>>2]|0;b=u+d|0;c[v>>2]=b;c[g>>2]=u;c[w>>2]=u+e;w=b+1|0;c[v>>2]=w;a[b>>0]=34;return}function zq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+16|0;i=o;n=c[a>>2]|0;m=n+68|0;h=c[m>>2]|0;j=n+64|0;c[b>>2]=h-(c[j>>2]|0)>>4;e=c[n+52>>2]|0;d=h-e+1024|0;e=e+d|0;k=n+56|0;b=h;do if((c[k>>2]|0)>>>0<e>>>0)if((c[n+60>>2]|0)>>>0<e>>>0){lo(n,d,1)|0;b=c[m>>2]|0;break}else{c[k>>2]=e;break}while(0);e=c[b+-8>>2]|0;h=a+60|0;f=c[h>>2]|0;g=f>>>0<64;b=g?f:64;a:do if(b|0){d=0;while(1){if((c[a+92+(d<<2)>>2]|0)==(e|0))break;d=d+1|0;if(d>>>0>=b>>>0)break a}Jn(n,271013,100665051,271027)}while(0);do if(!g){c[i>>2]=e;Lo(n,280535,i);b=c[m>>2]|0;if(b>>>0>=(c[k>>2]|0)>>>0)Un(n,1111);if((b-(c[j>>2]|0)|0)<16)jo(n,1114,-1);j=b+-16|0;c[m>>2]=b+16;c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];c[b+8>>2]=c[j+8>>2];c[b+12>>2]=c[j+12>>2];if(c[b>>2]&8|0){j=(c[b+8>>2]|0)+4|0;c[j>>2]=(c[j>>2]|0)+1}b=a+32|0;if(Do(n,c[b>>2]|0)|0)Jn(n,271013,100665060,271027);d=c[m>>2]|0;if(d>>>0<(c[k>>2]|0)>>>0){c[m>>2]=d+16;c[d>>2]=4;c[d+8>>2]=1;lq(n,c[b>>2]|0);break}else Un(n,4195)}else c[a+92+(f<<2)>>2]=e;while(0);b=c[h>>2]|0;if(b>>>0<(c[a+64>>2]|0)>>>0){c[h>>2]=b+1;l=o;return}else Jn(n,271013,50333423,271040)}function Aq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=a+68|0;h=a+64|0;e=c[h>>2]|0;f=(c[g>>2]|0)-e>>4;d=((b|0)<0?f:0)+b|0;if(d>>>0>=f>>>0)jo(a,376,b);b=c[a+72>>2]|0;if(!b)b=1;else b=c[b+52>>2]&1;sp(a,e+(d<<4)|0,e+(f+-1<<4)|0,b)|0;b=c[g>>2]|0;if((b|0)==(c[h>>2]|0))Jn(a,268620,50337407,268636);f=b+-16|0;c[g>>2]=f;h=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[f>>2]=2;if(!(h&8))return;g=b+4|0;h=(c[g>>2]|0)+-1|0;c[g>>2]=h;if(h|0)return;Yn(c[a+44>>2]|0,b);return}function Bq(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,P=0,Q=0;Q=l;l=l+16|0;P=Q;N=Q+4|0;x=c[b>>2]|0;zq(b,N);f=c[N>>2]|0;G=f+-1|0;d=c[b+28>>2]|0;if((d|0)<=-1){j=x+68|0;g=c[j>>2]|0;if(g>>>0>=(c[x+56>>2]|0)>>>0)Un(x,1093);k=x+64|0;e=c[k>>2]|0;J=g-e>>4;d=((f|0)<1?J:0)+G|0;if(d>>>0>=J>>>0)jo(x,376,G);J=e+(d<<4)|0;c[j>>2]=g+16;c[g>>2]=c[J>>2];c[g+4>>2]=c[J+4>>2];c[g+8>>2]=c[J+8>>2];c[g+12>>2]=c[J+12>>2];if(c[g>>2]&8|0){J=(c[g+8>>2]|0)+4|0;c[J>>2]=(c[J>>2]|0)+1}Lp(x,16);h=c[(c[j>>2]|0)+-8>>2]|0;d=(c[h+28>>2]|0)+-2|0;g=vo(x,48)|0;i=x+44|0;e=c[i>>2]|0;c[g>>2]=272679041;e=e+24|0;f=c[e>>2]|0;if(f|0)c[f+12>>2]=g;c[g+12>>2]=0;c[g+8>>2]=f;c[e>>2]=g;e=c[x+132>>2]|0;c[g+20>>2]=e;if(e|0){J=e+4|0;c[J>>2]=(c[J>>2]|0)+1}e=c[j>>2]|0;c[e>>2]=9;c[e+8>>2]=g;e=g+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[j>>2]|0;c[j>>2]=e+16;e=c[e+8>>2]|0;io(x,e,0,d,0,0);c[e+40>>2]=d;f=c[e+24>>2]|0;if(d|0){g=(c[h+16>>2]|0)+(c[h+24>>2]<<4)+8|0;e=(c[e+16>>2]|0)+(f*21|0)+(0-f&7)|0;while(1){d=d+-1|0;J=c[g>>2]|0;c[e>>2]=8;c[e+8>>2]=J;J=J+4|0;c[J>>2]=(c[J>>2]|0)+1;if(!d)break;else{g=g+4|0;e=e+16|0}}}e=c[k>>2]|0;f=(c[j>>2]|0)-e>>4;d=f+-2|0;if(f>>>0<=1)jo(x,376,-2);v=e+(d<<4)|0;I=e+(f+-1<<4)|0;J=c[v>>2]|0;e=c[e+(d<<4)+8>>2]|0;QQ(v|0,v+16|0,I-v|0)|0;c[I>>2]=2;d=(c[j>>2]|0)+-16|0;c[j>>2]=d;if((J&8|0)!=0?(I=e+4|0,J=(c[I>>2]|0)+-1|0,c[I>>2]=J,(J|0)==0):0){Yn(c[i>>2]|0,e);d=c[j>>2]|0}d=d-(c[k>>2]|0)>>4;if(!d)jo(x,300,-1);else w=d+-1|0}else w=d;I=b+4|0;J=b+12|0;e=c[J>>2]|0;v=c[I>>2]|0;d=v;do if((e|0)==(v|0)){f=c[b>>2]|0;g=b+8|0;d=e-(c[g>>2]|0)|0;e=d+65+(d>>>2)|0;if(e>>>0<d>>>0)Jn(f,270142,50331712,268576);else{v=b+16|0;Kn(f,c[v>>2]|0,e);v=c[(c[v>>2]|0)+20>>2]|0;m=v+d|0;c[I>>2]=m;c[g>>2]=v;c[J>>2]=v+e;break}}else m=d;while(0);c[I>>2]=m+1;a[m>>0]=123;p=Bo(x,w)|0;do if(p|0){q=x+68|0;u=b+8|0;t=b+24|0;r=b+44|0;v=b+16|0;s=b+60|0;o=0;d=0;a:while(1){Np(x,w,o)|0;m=c[(c[q>>2]|0)+-8>>2]|0;g=c[I>>2]|0;n=g-(c[u>>2]|0)|0;if(!(c[t>>2]|0)){b:do if((((c[r>>2]|0)!=0?(C=c[m+20>>2]|0,D=m+28|0,E=D+C|0,(D|0)!=(E|0)):0)?(F=a[D>>0]|0,F<<24>>24>-1):0)?(a[270885+(F<<24>>24)>>0]|0)>0:0){e=D;while(1){e=e+1|0;if(e>>>0>=E>>>0)break;f=a[e>>0]|0;if(f<<24>>24<=-1){H=71;break b}if(!(a[270885+(f<<24>>24)>>0]|0)){H=71;break b}}e=g;if(((c[J>>2]|0)-g|0)>>>0<C>>>0){e=c[b>>2]|0;f=C+64+n+(n>>>2)|0;if(f>>>0<n>>>0){H=68;break a}Kn(e,c[v>>2]|0,f);m=c[(c[v>>2]|0)+20>>2]|0;e=m+n|0;c[I>>2]=e;c[u>>2]=m;c[J>>2]=m+f}PQ(e|0,D|0,C|0)|0;f=(c[I>>2]|0)+C|0;c[I>>2]=f}else H=71;while(0);if((H|0)==71){H=0;yq(b,m);f=c[I>>2]|0}e=f;if((c[J>>2]|0)==(f|0)){g=c[b>>2]|0;e=f-(c[u>>2]|0)|0;f=e+65+(e>>>2)|0;if(f>>>0<e>>>0){H=74;break}Kn(g,c[v>>2]|0,f);m=c[(c[v>>2]|0)+20>>2]|0;e=m+e|0;c[I>>2]=e;c[u>>2]=m;c[J>>2]=m+f}c[I>>2]=e+1;a[e>>0]=58}else{h=c[s>>2]|0;e=g;if((c[J>>2]|0)==(g|0)){e=c[b>>2]|0;f=n+65+(n>>>2)|0;if(f>>>0<n>>>0){H=31;break}Kn(e,c[v>>2]|0,f);k=c[(c[v>>2]|0)+20>>2]|0;e=k+n|0;c[I>>2]=e;c[u>>2]=k;c[J>>2]=k+f}c[I>>2]=e+1;a[e>>0]=10;if(h|0){j=c[t>>2]|0;i=j+28|0;j=c[j+20>>2]|0;h=O(j,h)|0;e=c[I>>2]|0;f=e;if(((c[J>>2]|0)-f|0)>>>0<h>>>0){g=c[b>>2]|0;e=f-(c[u>>2]|0)|0;f=h+64+e+(e>>>2)|0;if(f>>>0<e>>>0){H=36;break}Kn(g,c[v>>2]|0,f);g=c[(c[v>>2]|0)+20>>2]|0;k=g+e|0;c[I>>2]=k;c[u>>2]=g;c[J>>2]=g+f}else k=e;PQ(k|0,i|0,j|0)|0;f=k+j|0;e=h-j|0;if(e>>>0>=j>>>0){g=j;do{PQ(f|0,k|0,g|0)|0;f=f+g|0;e=e-g|0;g=g<<1}while(e>>>0>=g>>>0)}PQ(f|0,k|0,e|0)|0;c[I>>2]=f+e}c:do if((((c[r>>2]|0)!=0?(y=c[m+20>>2]|0,z=m+28|0,A=z+y|0,(z|0)!=(A|0)):0)?(B=a[z>>0]|0,B<<24>>24>-1):0)?(a[270885+(B<<24>>24)>>0]|0)>0:0){e=z;while(1){e=e+1|0;if(e>>>0>=A>>>0)break;f=a[e>>0]|0;if(f<<24>>24<=-1){H=53;break c}if(!(a[270885+(f<<24>>24)>>0]|0)){H=53;break c}}f=c[I>>2]|0;e=f;if(((c[J>>2]|0)-f|0)>>>0<y>>>0){g=c[b>>2]|0;e=f-(c[u>>2]|0)|0;f=y+64+e+(e>>>2)|0;if(f>>>0<e>>>0){H=50;break a}Kn(g,c[v>>2]|0,f);m=c[(c[v>>2]|0)+20>>2]|0;e=m+e|0;c[I>>2]=e;c[u>>2]=m;c[J>>2]=m+f}PQ(e|0,z|0,y|0)|0;f=(c[I>>2]|0)+y|0;c[I>>2]=f}else H=53;while(0);if((H|0)==53){H=0;yq(b,m);f=c[I>>2]|0}e=f;if(((c[J>>2]|0)-f|0)>>>0<2){g=c[b>>2]|0;e=f-(c[u>>2]|0)|0;f=e+66+(e>>>2)|0;if(f>>>0<e>>>0){H=56;break}Kn(g,c[v>>2]|0,f);m=c[(c[v>>2]|0)+20>>2]|0;e=m+e|0;c[I>>2]=e;c[u>>2]=m;c[J>>2]=m+f}a[e>>0]=58;a[e+1>>0]=32;c[I>>2]=e+2}if(!(wq(b,G)|0))c[I>>2]=(c[u>>2]|0)+n;else{e=c[J>>2]|0;n=c[I>>2]|0;d=n;if((e|0)==(n|0)){f=c[b>>2]|0;d=e-(c[u>>2]|0)|0;e=d+65+(d>>>2)|0;if(e>>>0<d>>>0){H=81;break}Kn(f,c[v>>2]|0,e);n=c[(c[v>>2]|0)+20>>2]|0;d=n+d|0;c[I>>2]=d;c[u>>2]=n;c[J>>2]=n+e}c[I>>2]=d+1;a[d>>0]=44;d=1}o=o+1|0;if(o>>>0>=p>>>0){H=85;break}}if((H|0)==31)Jn(e,270142,50331712,268576);else if((H|0)==36)Jn(g,270142,50331712,268576);else if((H|0)==50)Jn(g,270142,50331712,268576);else if((H|0)==56)Jn(g,270142,50331712,268576);else if((H|0)==68)Jn(e,270142,50331712,268576);else if((H|0)==74)Jn(g,270142,50331712,268576);else if((H|0)==81)Jn(f,270142,50331712,268576);else if((H|0)==85){if(!d)break;e=b+4|0;d=(c[e>>2]|0)+-1|0;c[e>>2]=d;e=d;if(!(c[t>>2]|0))break;g=(c[s>>2]|0)+-1|0;do if((c[J>>2]|0)==(e|0)){f=c[b>>2]|0;d=e-(c[u>>2]|0)|0;e=d+65+(d>>>2)|0;if(e>>>0<d>>>0)Jn(f,270142,50331712,268576);else{Kn(f,c[v>>2]|0,e);H=c[(c[v>>2]|0)+20>>2]|0;K=H+d|0;c[I>>2]=K;c[u>>2]=H;c[J>>2]=H+e;break}}else K=d;while(0);c[I>>2]=K+1;a[K>>0]=10;if(!g)break;f=c[t>>2]|0;h=f+28|0;f=c[f+20>>2]|0;i=O(f,g)|0;d=c[I>>2]|0;e=d;do if(((c[J>>2]|0)-e|0)>>>0<i>>>0){g=c[b>>2]|0;d=e-(c[u>>2]|0)|0;e=i+64+d+(d>>>2)|0;if(e>>>0<d>>>0)Jn(g,270142,50331712,268576);else{Kn(g,c[v>>2]|0,e);K=c[(c[v>>2]|0)+20>>2]|0;L=K+d|0;c[I>>2]=L;c[u>>2]=K;c[J>>2]=K+e;break}}else L=d;while(0);PQ(L|0,h|0,f|0)|0;e=L+f|0;d=i-f|0;if(d>>>0>=f>>>0)do{PQ(e|0,L|0,f|0)|0;e=e+f|0;d=d-f|0;f=f<<1}while(d>>>0>=f>>>0);PQ(e|0,L|0,d|0)|0;c[I>>2]=e+d;break}}while(0);e=c[J>>2]|0;L=c[I>>2]|0;d=L;do if((e|0)==(L|0)){f=c[b>>2]|0;g=b+8|0;d=e-(c[g>>2]|0)|0;e=d+65+(d>>>2)|0;if(e>>>0<d>>>0)Jn(f,270142,50331712,268576);else{L=b+16|0;Kn(f,c[L>>2]|0,e);L=c[(c[L>>2]|0)+20>>2]|0;M=L+d|0;c[I>>2]=M;c[g>>2]=L;c[J>>2]=L+e;break}}else M=d;while(0);c[I>>2]=M+1;a[M>>0]=125;e=c[b>>2]|0;d=b+60|0;M=(c[d>>2]|0)+-1|0;c[d>>2]=M;d=c[N>>2]|0;if(M>>>0<64){Gp(e,d);l=Q;return}c[P>>2]=c[(c[((d|0)<1?e+68|0:e+64|0)>>2]|0)+(d+-1<<4)+8>>2];Lo(e,280535,P);Aq(e,c[b+32>>2]|0);Gp(e,d);l=Q;return}function Cq(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+48|0;o=q;i=o+4|0;f=i;g=f+36|0;do{c[f>>2]=0;f=f+4|0}while((f|0)<(g|0));c[o>>2]=a;c[o+40>>2]=1e3;c[o+20>>2]=e;c[o+24>>2]=e&4;c[o+28>>2]=e&8;c[o+32>>2]=e&12;Eo(a,b)|0;p=a+68|0;n=a+64|0;m=c[n>>2]|0;k=(c[p>>2]|0)-m>>4;e=((b|0)<0?k:0)+b|0;e=e>>>0<k>>>0?m+(e<<4)|0:0;e=(e|0)==0?936:e;if((c[e>>2]|0)==8)e=c[e+8>>2]|0;else e=0;k=e+28|0;c[o+8>>2]=k;c[i>>2]=k;m=o+12|0;c[m>>2]=k+(c[e+20>>2]|0);Dq(o);if((c[i>>2]|0)!=(c[m>>2]|0))Eq(o);f=c[p>>2]|0;m=c[n>>2]|0;k=f-m>>4;e=((d|0)<0?k:0)+d|0;e=e>>>0<k>>>0?m+(e<<4)|0:0;e=(e|0)==0?936:e;switch(c[e>>2]|0){case 9:{j=6;break}case 6:break;default:{l=q;return}}if((j|0)==6?(c[c[e+8>>2]>>2]&512|0)==0:0){l=q;return}c[o+16>>2]=d;k=a+56|0;if(f>>>0>=(c[k>>2]|0)>>>0)Un(a,4604);g=vo(a,40)|0;m=a+44|0;e=c[m>>2]|0;c[g>>2]=134234241;e=e+24|0;f=c[e>>2]|0;if(f|0)c[f+12>>2]=g;c[g+12>>2]=0;c[g+8>>2]=f;c[e>>2]=g;b=c[p>>2]|0;c[b>>2]=9;c[b+8>>2]=g;b=g+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[p>>2]|0;i=b+16|0;c[p>>2]=i;e=c[a+112>>2]|0;c[g+20>>2]=e;if(e|0){j=e+4|0;c[j>>2]=(c[j>>2]|0)+1}if(i>>>0>=(c[k>>2]|0)>>>0)Un(a,1093);e=c[n>>2]|0;f=i-e>>4;if(f>>>0<=1)jo(a,376,-2);j=e+(f+-2<<4)|0;c[p>>2]=b+32;c[i>>2]=c[j>>2];c[i+4>>2]=c[j+4>>2];c[i+8>>2]=c[j+8>>2];c[i+12>>2]=c[j+12>>2];if(c[i>>2]&8|0){j=(c[b+24>>2]|0)+4|0;c[j>>2]=(c[j>>2]|0)+1}e=c[p>>2]|0;g=e-(c[n>>2]|0)|0;j=g>>4;b=j+-2|0;if(j>>>0<=1)jo(a,300,-2);j=a+304|0;f=c[(c[j>>2]|0)+60>>2]|0;if(e>>>0>=(c[k>>2]|0)>>>0)Un(a,4153);c[p>>2]=e+16;c[e>>2]=8;c[e+8>>2]=f;i=f+4|0;c[i>>2]=(c[i>>2]|0)+1;i=c[n>>2]|0;d=(c[p>>2]|0)-i>>4;g=((g|0)<32?d:0)+b|0;if(g>>>0>=d>>>0)jo(a,376,b);if((d|0)==1)jo(a,376,-2);f=d+-2|0;e=c[a+72>>2]|0;if(!e)e=1;else e=c[e+52>>2]&1;No(a,i+(g<<4)|0,i+(d+-1<<4)|0,c[i+(f<<4)>>2]|0,c[i+(f<<4)+4>>2]|0,+h[i+(f<<4)+8>>3],e)|0;uq(a);e=c[(c[j>>2]|0)+60>>2]|0;f=c[p>>2]|0;if(f>>>0>=(c[k>>2]|0)>>>0)Un(a,4153);c[p>>2]=f+16;c[f>>2]=8;c[f+8>>2]=e;f=e+4|0;c[f>>2]=(c[f>>2]|0)+1;Fq(o);f=c[n>>2]|0;g=(c[p>>2]|0)-f>>4;e=g+-2|0;if(g>>>0<=1)jo(a,376,-2);n=f+(e<<4)|0;o=f+(g+-1<<4)|0;a=c[n>>2]|0;e=c[f+(e<<4)+8>>2]|0;QQ(n|0,n+16|0,o-n|0)|0;c[o>>2]=2;c[p>>2]=(c[p>>2]|0)+-16;if(!(a&8)){l=q;return}p=e+4|0;a=(c[p>>2]|0)+-1|0;c[p>>2]=a;if(a|0){l=q;return}Yn(c[m>>2]|0,e);l=q;return}function Dq(b){b=b|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,u=0,v=0,w=0,x=0;x=l;l=l+16|0;k=x;m=x+4|0;v=c[b>>2]|0;w=b+4|0;j=c[w>>2]|0;while(1){f=j+1|0;if(!(a[271374+(d[j>>0]|0)>>0]|0))break;else j=f}c[w>>2]=f;n=a[j>>0]|0;a:do if(n<<24>>24==34)Gq(b);else{e=n<<24>>24==45;if(e|(n+-48&255)<10){if(e&(c[b+24>>2]|0)!=0?(a[f>>0]|0)==73:0){e=(c[(c[v+304>>2]|0)+244>>2]|0)+28|0;i=f;while(1){e=e+1|0;g=a[e>>0]|0;if(!(g<<24>>24))break;q=i;i=i+1|0;c[w>>2]=i;if(g<<24>>24!=(a[q>>0]|0)){u=11;break}}if((u|0)==11)Eq(b);e=v+68|0;g=c[e>>2]|0;if(g>>>0<(c[v+56>>2]|0)>>>0){c[e>>2]=g+16;c[g>>2]=0;h[g+8>>3]=-t;break}else Un(v,4215)}c[w>>2]=j;e=j;while(1)if(!(a[271630+(d[e>>0]|0)>>0]|0))break;else e=e+1|0;c[w>>2]=e;g=v+68|0;if((c[g>>2]|0)>>>0>=(c[v+56>>2]|0)>>>0)Un(v,4300);e=e-j|0;if((e|0)<0)Jn(v,268620,50335961,268982);q=Oo(v,j,e)|0;e=c[g>>2]|0;c[g>>2]=e+16;c[e>>2]=8;c[e+8>>2]=q;q=q+4|0;c[q>>2]=(c[q>>2]|0)+1;oo(v,10,82);q=c[v+64>>2]|0;e=(c[g>>2]|0)-q>>4;e=e|0?q+(e+-1<<4)|0:0;e=(e|0)==0?936:e;if(c[e>>2]|0)break;q=e+8|0;p=c[q+4>>2]&2147483647;if(!(p>>>0>2146435072|(p|0)==2146435072&(c[q>>2]|0)>>>0>0))break;Eq(b)}switch(n<<24>>24){case 116:{g=(c[(c[v+304>>2]|0)+604>>2]|0)+28|0;while(1){g=g+1|0;e=a[g>>0]|0;if(!(e<<24>>24))break;r=f;f=f+1|0;c[w>>2]=f;if(e<<24>>24!=(a[r>>0]|0)){u=28;break}}if((u|0)==28)Eq(b);e=v+68|0;f=c[e>>2]|0;if(f>>>0<(c[v+56>>2]|0)>>>0){c[e>>2]=f+16;c[f>>2]=4;c[f+8>>2]=1;break a}else Un(v,4195);break}case 102:{g=(c[(c[v+304>>2]|0)+608>>2]|0)+28|0;while(1){g=g+1|0;e=a[g>>0]|0;if(!(e<<24>>24))break;r=f;f=f+1|0;c[w>>2]=f;if(e<<24>>24!=(a[r>>0]|0)){u=35;break}}if((u|0)==35)Eq(b);e=v+68|0;f=c[e>>2]|0;if(f>>>0<(c[v+56>>2]|0)>>>0){c[e>>2]=f+16;c[f>>2]=4;c[f+8>>2]=0;break a}else Un(v,4204);break}case 110:{g=(c[(c[v+304>>2]|0)+600>>2]|0)+28|0;while(1){g=g+1|0;e=a[g>>0]|0;if(!(e<<24>>24))break;r=f;f=f+1|0;c[w>>2]=f;if(e<<24>>24!=(a[r>>0]|0)){u=42;break}}if((u|0)==42)Eq(b);e=v+68|0;f=c[e>>2]|0;if(f>>>0<(c[v+56>>2]|0)>>>0){c[e>>2]=f+16;c[f>>2]=3;break a}else Un(v,4175);break}default:{q=b+24|0;j=(c[q>>2]|0)!=0;if(n<<24>>24==117&j){e=(c[(c[v+304>>2]|0)+232>>2]|0)+28|0;i=f;while(1){e=e+1|0;g=a[e>>0]|0;if(!(g<<24>>24))break;p=i;i=i+1|0;c[w>>2]=i;if(g<<24>>24!=(a[p>>0]|0)){u=50;break}}if((u|0)==50)Eq(b);e=v+68|0;g=c[e>>2]|0;if(g>>>0<(c[v+56>>2]|0)>>>0){c[e>>2]=g+16;break a}else Un(v,4162)}if(n<<24>>24==78&j){e=(c[(c[v+304>>2]|0)+236>>2]|0)+28|0;i=f;while(1){e=e+1|0;g=a[e>>0]|0;if(!(g<<24>>24))break;p=i;i=i+1|0;c[w>>2]=i;if(g<<24>>24!=(a[p>>0]|0)){u=58;break}}if((u|0)==58)Eq(b);e=v+68|0;g=c[e>>2]|0;if(g>>>0<(c[v+56>>2]|0)>>>0){c[e>>2]=g+16;c[g>>2]=0;h[g+8>>3]=s;break a}else Un(v,4286)}if(n<<24>>24==73&j){e=(c[(c[v+304>>2]|0)+240>>2]|0)+28|0;i=f;while(1){e=e+1|0;g=a[e>>0]|0;if(!(g<<24>>24))break;p=i;i=i+1|0;c[w>>2]=i;if(g<<24>>24!=(a[p>>0]|0)){u=66;break}}if((u|0)==66)Eq(b);e=v+68|0;g=c[e>>2]|0;if(g>>>0<(c[v+56>>2]|0)>>>0){c[e>>2]=g+16;c[g>>2]=0;h[g+8>>3]=t;break a}else Un(v,4215)}if(n<<24>>24==40&j){i=f;b:while(1){switch(a[i>>0]|0){case 41:break b;case 0:{u=76;break b}default:{}}i=i+1|0}if((u|0)==76)Eq(b);c[m>>2]=0;c[k>>2]=m;AP(f,0,k);e=v+68|0;g=c[e>>2]|0;if(g>>>0<(c[v+56>>2]|0)>>>0){v=c[m>>2]|0;c[e>>2]=g+16;c[g>>2]=5;c[g+8>>2]=v;c[w>>2]=i+1;break a}else Un(v,4341)}if(n<<24>>24==124&j){i=f;c:while(1){switch(a[i>>0]|0){case 124:break c;case 0:{u=87;break c}default:{}}i=i+1|0}if((u|0)==87)Eq(b);e=i-f|0;f=v+68|0;if((c[f>>2]|0)>>>0>=(c[v+56>>2]|0)>>>0)Un(v,5237);if(e>>>0>2147483646)Jn(v,268620,50336889,268576);g=ap(c[v+44>>2]|0,e,4,m)|0;if(!g)Mn(v,268620,5246);else{b=c[f>>2]|0;c[b>>2]=10;c[b+8>>2]=g;b=g+4|0;c[b>>2]=(c[b>>2]|0)+1;c[f>>2]=(c[f>>2]|0)+16;PQ(c[m>>2]|0,c[w>>2]|0,e|0)|0;qq(v,-1);c[w>>2]=i+1;break a}}switch(n<<24>>24){case 123:{p=v+68|0;f=c[v+52>>2]|0;e=(c[p>>2]|0)-f+1024|0;f=f+e|0;g=v+56|0;do if((c[g>>2]|0)>>>0<f>>>0)if((c[v+60>>2]|0)>>>0<f>>>0){lo(v,e,1)|0;break}else{c[g>>2]=f;break}while(0);o=b+36|0;e=c[o>>2]|0;if((e|0)>=(c[b+40>>2]|0))Jn(v,271013,50332370,271886);c[o>>2]=e+1;if((c[p>>2]|0)>>>0>=(c[g>>2]|0)>>>0)Un(v,4604);g=vo(v,40)|0;n=v+44|0;e=c[n>>2]|0;c[g>>2]=134234241;e=e+24|0;f=c[e>>2]|0;if(f|0)c[f+12>>2]=g;c[g+12>>2]=0;c[g+8>>2]=f;c[e>>2]=g;e=c[p>>2]|0;c[e>>2]=9;c[e+8>>2]=g;e=g+4|0;c[e>>2]=(c[e>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+16;e=c[v+112>>2]|0;c[g+20>>2]=e;if(e|0){m=e+4|0;c[m>>2]=(c[m>>2]|0)+1}m=v+64|0;k=0;while(1){g=c[w>>2]|0;while(1){f=g+1|0;if(!(a[271374+(d[g>>0]|0)>>0]|0))break;else g=f}c[w>>2]=f;e=a[g>>0]|0;if(!((k|0)>0&e<<24>>24==44)){if(e<<24>>24==125){u=143;break}if(!k)f=g;else{u=142;break}}else{while(1){e=f+1|0;if(!(a[271374+(d[f>>0]|0)>>0]|0))break;else f=e}c[w>>2]=e;e=a[f>>0]|0}g=e&255;if(e<<24>>24==34){Gq(b);e=c[w>>2]|0}else{if(!(c[q>>2]|0)){u=142;break}if(e<<24>>24>-1){if((a[270885+g>>0]|0)<=0){u=142;break}}else if(!(Hq(264586,1036,g)|0)){u=142;break}j=c[b>>2]|0;c[w>>2]=f;e=f;d:while(1){i=a[e>>0]|0;g=i&255;do if(i<<24>>24>-1){if(!(a[270885+g>>0]|0))break d}else{if(Hq(264586,1036,g)|0)break;if(!(Hq(265664,530,g)|0))break d}while(0);e=e+1|0}g=j+68|0;if((c[g>>2]|0)>>>0>=(c[j+56>>2]|0)>>>0){u=123;break}i=e-f|0;if((i|0)<0){u=125;break}j=Oo(j,f,i)|0;i=c[g>>2]|0;c[g>>2]=i+16;c[i>>2]=8;c[i+8>>2]=j;j=j+4|0;c[j>>2]=(c[j>>2]|0)+1;c[w>>2]=e}while(1){f=e+1|0;if(!(a[271374+(d[e>>0]|0)>>0]|0))break;else e=f}c[w>>2]=f;if((a[e>>0]|0)!=58){u=142;break}Dq(b);j=c[m>>2]|0;e=(c[p>>2]|0)-j>>4;e=e>>>0>2?j+(e+-3<<4)|0:0;e=(e|0)==0?936:e;if((c[e>>2]|0)!=9){u=131;break}f=c[e+8>>2]|0;if(!f){u=131;break}po(v,-2,1);j=c[m>>2]|0;e=(c[p>>2]|0)-j>>4;e=e>>>0>1?j+(e+-2<<4)|0:0;e=(e|0)==0?936:e;if((c[e>>2]|0)==8?(r=c[e+8>>2]|0,(r|0)!=0):0)e=r;else u=134;do if((u|0)==134){u=0;Eo(v,-2)|0;j=c[m>>2]|0;e=(c[p>>2]|0)-j>>4;e=e>>>0>1?j+(e+-2<<4)|0:0;e=(e|0)==0?936:e;if((c[e>>2]|0)!=8){e=0;break}e=c[e+8>>2]|0}while(0);fo(v,f,e,7);e=c[p>>2]|0;if((e|0)==(c[m>>2]|0)){u=137;break}i=e+-16|0;c[p>>2]=i;j=c[e+-16>>2]|0;e=c[e+-8>>2]|0;c[i>>2]=2;do if(j&8|0){i=e+4|0;j=(c[i>>2]|0)+-1|0;c[i>>2]=j;if(j|0)break;Yn(c[n>>2]|0,e)}while(0);k=k+1|0}if((u|0)==123)Un(j,4300);else if((u|0)==125)Jn(j,268620,50335961,268982);else if((u|0)==131)In(v,2130,-3,268963);else if((u|0)==137)Jn(v,268620,50337407,268636);else if((u|0)==142)Eq(b);else if((u|0)==143){c[o>>2]=(c[o>>2]|0)+-1;break a}break}case 91:{k=v+68|0;f=c[v+52>>2]|0;e=(c[k>>2]|0)-f+1024|0;f=f+e|0;g=v+56|0;do if((c[g>>2]|0)>>>0<f>>>0)if((c[v+60>>2]|0)>>>0<f>>>0){lo(v,e,1)|0;break}else{c[g>>2]=f;break}while(0);j=b+36|0;e=c[j>>2]|0;if((e|0)>=(c[b+40>>2]|0))Jn(v,271013,50332370,271886);c[j>>2]=e+1;g=vo(v,48)|0;e=c[v+44>>2]|0;c[g>>2]=272679041;e=e+24|0;f=c[e>>2]|0;if(f|0)c[f+12>>2]=g;c[g+12>>2]=0;c[g+8>>2]=f;c[e>>2]=g;e=c[v+132>>2]|0;c[g+20>>2]=e;if(e|0){u=e+4|0;c[u>>2]=(c[u>>2]|0)+1}i=c[k>>2]|0;c[i>>2]=9;c[i+8>>2]=g;g=g+4|0;c[g>>2]=(c[g>>2]|0)+1;g=v+64|0;c[k>>2]=(c[k>>2]|0)+16;i=0;while(1){f=c[w>>2]|0;while(1){e=f+1|0;if(!(a[271374+(d[f>>0]|0)>>0]|0))break;else f=e}c[w>>2]=e;e=a[f>>0]|0;if(!((i|0)!=0&e<<24>>24==44)){if(e<<24>>24==93){u=166;break}if(i|0){u=165;break}c[w>>2]=f}Dq(b);u=c[g>>2]|0;e=(c[k>>2]|0)-u>>4;e=e>>>0>1?u+(e+-2<<4)|0:0;e=(e|0)==0?936:e;if((c[e>>2]|0)!=9){u=163;break}e=c[e+8>>2]|0;if(!e){u=163;break}Co(v,e,i);i=i+1|0}if((u|0)==163)In(v,2130,-2,268963);else if((u|0)==165)Eq(b);else if((u|0)==166){Iq(v,-1,i);c[j>>2]=(c[j>>2]|0)+-1;break a}break}default:Eq(b)}}}}while(0);e=c[w>>2]|0;while(1)if(!(a[271374+(d[e>>0]|0)>>0]|0))break;else e=e+1|0;c[w>>2]=e;l=x;return}function Eq(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=c[a>>2]|0;c[b>>2]=(c[a+4>>2]|0)-(c[a+8>>2]|0);_n(d,271013,83886296,271345,b)}function Fq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0.0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;r=l;l=l+16|0;n=r;q=c[a>>2]|0;o=q+68|0;b=c[o>>2]|0;m=q+56|0;if(b>>>0>=(c[m>>2]|0)>>>0)Un(q,1111);p=q+64|0;if((b-(c[p>>2]|0)|0)<16)jo(q,1114,-1);j=b+-16|0;c[o>>2]=b+16;c[b>>2]=c[j>>2];c[b+4>>2]=c[j+4>>2];c[b+8>>2]=c[j+8>>2];c[b+12>>2]=c[j+12>>2];if(c[b>>2]&8|0){j=(c[b+8>>2]|0)+4|0;c[j>>2]=(c[j>>2]|0)+1}b=c[p>>2]|0;d=(c[o>>2]|0)-b>>4;if(d>>>0<=2)jo(q,376,-3);ro(q,b+(d+-3<<4)|0,b+(d+-1<<4)|0)|0;d=c[p>>2]|0;e=(c[o>>2]|0)-d>>4;b=e+-2|0;if(e>>>0<=1)jo(q,376,-2);s=d+(b<<4)|0;g=d+(e+-1<<4)|0;j=c[s>>2]|0;d=c[d+(b<<4)+8>>2]|0;QQ(s|0,s+16|0,g-s|0)|0;c[g>>2]=2;b=(c[o>>2]|0)+-16|0;c[o>>2]=b;if((j&8|0)!=0?(j=d+4|0,s=(c[j>>2]|0)+-1|0,c[j>>2]=s,(s|0)==0):0){Yn(c[q+44>>2]|0,d);b=c[o>>2]|0}s=c[p>>2]|0;b=b-s>>4;b=b|0?s+(b+-1<<4)|0:0;b=(b|0)==0?936:b;a:do if((c[b>>2]|0)==9?(f=c[b+8>>2]|0,f|0):0){if((c[f>>2]&-134217728|0)==268435456){j=Bo(q,-1)|0;if(!j)break;g=q+44|0;f=0;while(1){b=c[o>>2]|0;if(b>>>0>=(c[m>>2]|0)>>>0){b=20;break}if((b-(c[p>>2]|0)|0)<16){b=22;break}s=b+-16|0;c[o>>2]=b+16;c[b>>2]=c[s>>2];c[b+4>>2]=c[s+4>>2];c[b+8>>2]=c[s+8>>2];c[b+12>>2]=c[s+12>>2];if(c[b>>2]&8|0){s=(c[b+8>>2]|0)+4|0;c[s>>2]=(c[s>>2]|0)+1}b=c[o>>2]|0;if(b>>>0>=(c[m>>2]|0)>>>0){b=26;break}i=+(f>>>0);c[o>>2]=b+16;c[b>>2]=0;h[b+8>>3]=i;Eo(q,-1)|0;Fq(a);d=c[o>>2]|0;e=c[p>>2]|0;b=e;s=d-b>>4;s=s|0?e+(s+-1<<4)|0:0;if((c[((s|0)==0?936:s)>>2]|0)==2){if((d|0)==(e|0)){b=29;break}e=d+-16|0;c[o>>2]=e;s=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[e>>2]=2;do if(s&8){t=d+4|0;s=(c[t>>2]|0)+-1|0;c[t>>2]=s;if(s|0)break;Yn(c[g>>2]|0,d);e=c[o>>2]|0;b=c[p>>2]|0}while(0);d=e-b>>4;b=e;if(!d){b=34;break}if(b>>>0>=(c[m>>2]|0)>>>0){b=36;break}c[o>>2]=b+16;c[b>>2]=0;h[b+8>>3]=i;Aq(q,d+-1|0)}else mq(q,-2,f);f=f+1|0;if(f>>>0>=j>>>0)break a}if((b|0)==20)Un(q,1111);else if((b|0)==22)jo(q,1114,-1);else if((b|0)==26)Un(q,4274);else if((b|0)==29)Jn(q,268620,50337407,268636);else if((b|0)==34)jo(q,300,-1);else if((b|0)==36)Un(q,4274)}sq(q,-1,16);t=(tq(q,-1,0)|0)==0;b=c[o>>2]|0;b:do if(!t){f=q+44|0;while(1){if(b>>>0>=(c[m>>2]|0)>>>0){b=43;break}d=c[p>>2]|0;e=b-d>>4;if(e>>>0<=2){b=45;break}t=d+(e+-3<<4)|0;c[o>>2]=b+16;c[b>>2]=c[t>>2];c[b+4>>2]=c[t+4>>2];c[b+8>>2]=c[t+8>>2];c[b+12>>2]=c[t+12>>2];if(c[b>>2]&8|0){t=(c[b+8>>2]|0)+4|0;c[t>>2]=(c[t>>2]|0)+1}b=c[o>>2]|0;if(b>>>0>=(c[m>>2]|0)>>>0){b=49;break}d=c[p>>2]|0;e=b-d>>4;if(e>>>0<=1){b=51;break}t=d+(e+-2<<4)|0;c[o>>2]=b+16;c[b>>2]=c[t>>2];c[b+4>>2]=c[t+4>>2];c[b+8>>2]=c[t+8>>2];c[b+12>>2]=c[t+12>>2];if(c[b>>2]&8|0){t=(c[b+8>>2]|0)+4|0;c[t>>2]=(c[t>>2]|0)+1}Fq(a);d=c[o>>2]|0;b=c[p>>2]|0;t=d-b>>4;t=t|0?b+(t+-1<<4)|0:0;if((c[((t|0)==0?936:t)>>2]|0)==2){if((d|0)==(b|0)){b=56;break}s=d+-16|0;c[o>>2]=s;t=c[d+-16>>2]|0;b=c[d+-8>>2]|0;c[s>>2]=2;do if(t&8|0){s=b+4|0;t=(c[s>>2]|0)+-1|0;c[s>>2]=t;if(t|0)break;Yn(c[f>>2]|0,b)}while(0);Aq(q,-3)}else lq(q,-4);t=(tq(q,-1,0)|0)==0;b=c[o>>2]|0;if(t){k=b;break b}}if((b|0)==43)Un(q,1093);else if((b|0)==45)jo(q,376,-3);else if((b|0)==49)Un(q,1093);else if((b|0)==51)jo(q,376,-2);else if((b|0)==56)Jn(q,268620,50337407,268636)}else k=b;while(0);if((k|0)==(c[p>>2]|0))Jn(q,268620,50337407,268636);s=k+-16|0;c[o>>2]=s;t=c[k+-16>>2]|0;b=c[k+-8>>2]|0;c[s>>2]=2;if(t&8|0?(s=b+4|0,t=(c[s>>2]|0)+-1|0,c[s>>2]=t,(t|0)==0):0)Yn(c[q+44>>2]|0,b)}while(0);e=c[a+16>>2]|0;f=c[o>>2]|0;if(f>>>0>=(c[m>>2]|0)>>>0)Un(q,1093);d=c[p>>2]|0;t=f-d>>4;b=((e|0)<0?t:0)+e|0;if(b>>>0>=t>>>0)jo(q,376,e);t=d+(b<<4)|0;c[o>>2]=f+16;c[f>>2]=c[t>>2];c[f+4>>2]=c[t+4>>2];c[f+8>>2]=c[t+8>>2];c[f+12>>2]=c[t+12>>2];if(c[f>>2]&8|0){t=(c[f+8>>2]|0)+4|0;c[t>>2]=(c[t>>2]|0)+1}d=c[o>>2]|0;e=c[p>>2]|0;b=e;f=d-b>>4;if(f>>>0<=3)jo(q,376,-4);g=e+(f+-4<<4)|0;e=e+(f+-1<<4)|0;f=e-g|0;if(f){c[n>>2]=c[e>>2];c[n+4>>2]=c[e+4>>2];c[n+8>>2]=c[e+8>>2];c[n+12>>2]=c[e+12>>2];QQ(g+16|0,g|0,f|0)|0;c[g>>2]=c[n>>2];c[g+4>>2]=c[n+4>>2];c[g+8>>2]=c[n+8>>2];c[g+12>>2]=c[n+12>>2];d=c[o>>2]|0;b=c[p>>2]|0}b=d-b|0;if((b|0)<64)Vn(q,268605,55);else{so(q,(b>>>4)+-4|0,0)|0;l=r;return}}function Gq(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+16|0;v=c[b>>2]|0;f=v+68|0;if((c[f>>2]|0)>>>0>=(c[v+56>>2]|0)>>>0)Un(v,5237);e=ap(c[v+44>>2]|0,128,1,w)|0;if(!e)Mn(v,268620,5246);r=c[f>>2]|0;c[r>>2]=10;c[r+8>>2]=e;r=e+4|0;c[r>>2]=(c[r>>2]|0)+1;r=c[f>>2]|0;c[f>>2]=r+16;r=c[r+8>>2]|0;s=r+20|0;e=c[s>>2]|0;f=e;t=b+4|0;u=b+24|0;h=f;e=e+128|0;a:while(1){if((e-h|0)>>>0>70)q=f;else{g=c[b>>2]|0;f=h-f|0;e=f+135+(f>>>2)|0;if(e>>>0<f>>>0){k=8;break}Kn(g,r,e);h=c[s>>2]|0;q=h;e=h+e|0;h=h+f|0}o=c[t>>2]|0;i=64;p=h;while(1){j=o+1|0;f=a[o>>0]|0;if(!(a[271914+(f&255)>>0]|0))break;i=i+-1|0;g=p+1|0;a[p>>0]=f;h=g;if(!i){k=11;break}else{o=j;p=g}}if((k|0)==11){k=0;c[t>>2]=j;f=q;continue}c[t>>2]=j;switch(f<<24>>24){case 34:{k=52;break a}case 92:break;default:{k=51;break a}}g=o+2|0;c[t>>2]=g;f=a[j>>0]|0;switch(f<<24>>24){case 47:case 34:case 92:{g=f&255;k=31;break}case 116:{g=9;h=0;f=1;break}case 110:{g=10;h=0;f=1;break}case 114:{g=13;h=0;f=1;break}case 102:{g=12;h=0;f=1;break}case 98:{g=8;h=0;f=1;break}case 117:{f=o+3|0;c[t>>2]=f;i=a[270556+(d[g>>0]|0)>>0]|0;if(i<<24>>24<=-1){k=22;break a}g=o+4|0;c[t>>2]=g;h=a[270556+(d[f>>0]|0)>>0]|0;if(h<<24>>24<=-1){k=22;break a}f=o+5|0;c[t>>2]=f;g=a[270556+(d[g>>0]|0)>>0]|0;if(g<<24>>24<=-1){k=22;break a}c[t>>2]=o+6;f=a[270556+(d[f>>0]|0)>>0]|0;if(f<<24>>24<=-1){k=22;break a}g=(f<<24>>24)+((g<<24>>24)+((h<<24>>24)+(i<<24>>24<<4)<<4)<<4)|0;k=31;break}case 85:{if(!(c[u>>2]|0)){k=51;break a}f=o+3|0;c[t>>2]=f;n=a[270556+(d[g>>0]|0)>>0]|0;if(n<<24>>24<=-1){k=26;break a}g=o+4|0;c[t>>2]=g;m=a[270556+(d[f>>0]|0)>>0]|0;if(m<<24>>24<=-1){k=26;break a}f=o+5|0;c[t>>2]=f;k=a[270556+(d[g>>0]|0)>>0]|0;if(k<<24>>24<=-1){k=26;break a}g=o+6|0;c[t>>2]=g;j=a[270556+(d[f>>0]|0)>>0]|0;if(j<<24>>24<=-1){k=26;break a}f=o+7|0;c[t>>2]=f;i=a[270556+(d[g>>0]|0)>>0]|0;if(i<<24>>24<=-1){k=26;break a}g=o+8|0;c[t>>2]=g;h=a[270556+(d[f>>0]|0)>>0]|0;if(h<<24>>24<=-1){k=26;break a}f=o+9|0;c[t>>2]=f;g=a[270556+(d[g>>0]|0)>>0]|0;if(g<<24>>24<=-1){k=26;break a}c[t>>2]=o+10;f=a[270556+(d[f>>0]|0)>>0]|0;if(f<<24>>24<=-1){k=26;break a}g=(f<<24>>24)+((g<<24>>24)+((h<<24>>24)+((i<<24>>24)+((j<<24>>24)+((k<<24>>24)+((m<<24>>24)+(n<<24>>24<<4)<<4)<<4)<<4)<<4)<<4)<<4)|0;k=31;break}case 120:{if(!(c[u>>2]|0)){k=51;break a}f=o+3|0;c[t>>2]=f;g=a[270556+(d[g>>0]|0)>>0]|0;if(g<<24>>24<=-1){k=30;break a}c[t>>2]=o+4;f=a[270556+(d[f>>0]|0)>>0]|0;if(f<<24>>24<=-1){k=30;break a}g=(f<<24>>24)+(g<<24>>24<<4)|0;k=31;break}default:{k=51;break a}}if((k|0)==31){k=0;if(g>>>0<128){h=0;f=1}else{if(g>>>0>=2048)if(g>>>0>=65536)if(g>>>0>=2097152)if(g>>>0<67108864){f=5;k=36}else f=g>>>31|6;else{f=4;k=36}else{f=3;k=36}else{f=2;k=36}if((k|0)==36)k=0;h=a[269353+(f+-1)>>0]|0;i=f;do{i=i+-1|0;a[p+i>>0]=g&63|128;g=g>>>6}while((i|0)>1)}}a[p>>0]=g+(h&255);h=p+f|0;f=q}if((k|0)==8)Jn(g,270142,50331712,268576);else if((k|0)==22)Eq(b);else if((k|0)==26)Eq(b);else if((k|0)==30)Eq(b);else if((k|0)==51)Eq(b);else if((k|0)==52){Kn(c[b>>2]|0,r,h-q|0);bp(v);l=w;return}}function Hq(a,b,c){a=a|0;b=b|0;c=c|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=0;g=0;e=0;i=0;a:while(1){if((i|0)<4){j=g;k=i;f=g;while(1){e=e<<8;h=f+1|0;if(f>>>0<b>>>0){g=h;e=d[a+f>>0]|0|e;f=h}else g=j;k=k+8|0;if((k|0)>=4)break;else j=g}i=i+8+(3-i&-8)|0}j=i+-4|0;l=e>>>j;f=l&15;b:do switch(l&15){case 0:{e=0;f=55;break a}case 15:{if((j|0)<8){h=g;f=g;while(1){e=e<<8;g=f+1|0;if(f>>>0<b>>>0){h=g;e=d[a+f>>0]|0|e;f=g}if((j|0)<0)j=j+8|0;else break}j=i+4+(11-i&-8)|0}else h=g;i=j+-8|0;f=e>>>i&255;if(f>>>0<254){f=f+15|0;g=h;j=i;break b}if((f|0)==254){if((i|0)<12){g=h;f=h;do{e=e<<8;h=f+1|0;if(f>>>0<b>>>0){g=h;e=d[a+f>>0]|0|e;f=h}i=i+8|0}while((i|0)<12);f=(19-j&-8)+j|0}else{f=i;g=h}j=f+-12|0;f=(e>>>j&4095)+269|0;break b}else{if((i|0)<24){g=h;f=h;do{e=e<<8;h=f+1|0;if(f>>>0<b>>>0){g=h;e=d[a+f>>0]|0|e;f=h}i=i+8|0}while((i|0)<24);f=(31-j&-8)+j|0}else{f=i;g=h}j=f+-24|0;f=(e>>>j&16777215)+4365|0;break b}}default:{}}while(0);if((j|0)<4){l=g;h=g;k=j;while(1){e=e<<8;i=h+1|0;if(h>>>0<b>>>0){g=i;e=d[a+h>>0]|0|e;h=i}else g=l;k=k+8|0;if((k|0)>=4)break;else l=g}l=j+8+(3-j&-8)|0}else l=j;i=l+-4|0;h=e>>>i&15;do if((h|0)==15){if((i|0)<8){k=g;h=g;while(1){e=e<<8;j=h+1|0;if(h>>>0<b>>>0){g=j;e=d[a+h>>0]|0|e;h=j}else g=k;if((i|0)<0){k=g;i=i+8|0}else break}i=l+4+(11-l&-8)|0}k=i+-8|0;h=e>>>k&255;if(h>>>0<254){h=h+15|0;i=k;break}if((h|0)==254){if((k|0)<12){l=g;h=g;while(1){e=e<<8;j=h+1|0;if(h>>>0<b>>>0){g=j;e=d[a+h>>0]|0|e;h=j}else g=l;k=k+8|0;if((k|0)>=12)break;else l=g}h=(19-i&-8)+i|0}else h=k;i=h+-12|0;h=(e>>>i&4095)+269|0;break}else{if((k|0)<24){l=g;h=g;while(1){e=e<<8;j=h+1|0;if(h>>>0<b>>>0){g=j;e=d[a+h>>0]|0|e;h=j}else g=l;k=k+8|0;if((k|0)>=24)break;else l=g}h=(31-i&-8)+i|0}else h=k;i=h+-24|0;h=(e>>>i&16777215)+4365|0;break}}while(0);l=f+m|0;m=h+l|0;if(!((l|0)>(c|0)|(m|0)<(c|0))){e=1;f=55;break}}if((f|0)==55)return e|0;return 0}function Iq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0;k=a+68|0;f=c[k>>2]|0;j=a+64|0;e=c[j>>2]|0;g=f-e>>4;b=((b|0)<0?g:0)+b|0;b=b>>>0<g>>>0?b:-2147483648;g=c[a+56>>2]|0;if(f>>>0>=g>>>0)Un(a,4274);i=f+16|0;c[k>>2]=i;c[f>>2]=0;h[f+8>>3]=+(d>>>0);e=i-e>>4;d=((b|0)<0?e:0)+b|0;if(d>>>0>=e>>>0)jo(a,300,b);b=c[(c[a+304>>2]|0)+328>>2]|0;if(i>>>0>=g>>>0)Un(a,4153);c[k>>2]=f+32;c[i>>2]=8;c[f+24>>2]=b;f=b+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[j>>2]|0;g=(c[k>>2]|0)-f>>4;e=((d|0)<0?g:0)+d|0;if(e>>>0>=g>>>0)jo(a,376,d);if((g|0)==1)jo(a,376,-2);d=g+-2|0;b=c[a+72>>2]|0;if(!b)b=1;else b=c[b+52>>2]&1;No(a,f+(e<<4)|0,f+(g+-1<<4)|0,c[f+(d<<4)>>2]|0,c[f+(d<<4)+4>>2]|0,+h[f+(d<<4)+8>>3],b)|0;d=c[k>>2]|0;if((d+-32|0)>>>0<(c[j>>2]|0)>>>0)Jn(a,268620,50337495,268636);b=d+-16|0;c[k>>2]=b;j=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[b>>2]=2;if((j&8|0)!=0?(i=d+4|0,j=(c[i>>2]|0)+-1|0,c[i>>2]=j,(j|0)==0):0){Yn(c[a+44>>2]|0,d);b=c[k>>2]|0}j=b+-16|0;c[k>>2]=j;k=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[j>>2]=2;if(!(k&8))return;j=b+4|0;k=(c[j>>2]|0)+-1|0;c[j>>2]=k;if(k|0)return;Yn(c[a+44>>2]|0,b);return}function Jq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+1168|0;n=s;j=c[b+8>>2]|0;do if(j&2048|0){d=c[(c[a+304>>2]|0)+((j&8|0?33:103)<<2)>>2]|0;e=a+68|0;f=c[e>>2]|0;if(f>>>0<(c[a+56>>2]|0)>>>0){c[e>>2]=f+16;c[f>>2]=8;c[f+8>>2]=d;i=d+4|0;c[i>>2]=(c[i>>2]|0)+1;break}else Un(a,4153)}while(0);i=b+4|0;d=c[i>>2]|0;do if(!d){e=a+68|0;f=c[e>>2]|0;g=a+64|0;h=c[g>>2]|0;d=f-h>>4;d=d>>>0>1?h+(d+-2<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)!=8)Jn(a,272170,100663387,272188);d=c[d+8>>2]|0;if((j&512|0)!=0|(d|0)==0)Jn(a,272170,100663387,272188);else{k=d+28|0;c[i>>2]=k;m=c[d+20>>2]|0;c[b>>2]=m;r=e;q=g;o=h;p=f;break}}else{p=a+68|0;o=a+64|0;r=p;q=o;k=d;m=c[b>>2]|0;o=c[o>>2]|0;p=c[p>>2]|0}while(0);f=(j&16|0)==0?j:j|4104;RQ(n|0,0,1160)|0;c[n>>2]=f;RQ(n+16|0,0,832)|0;c[n+792>>2]=k;c[n+796>>2]=m;c[n+848>>2]=f;d=a+88|0;e=c[d>>2]|0;c[d>>2]=n+8;if(p>>>0<(o+16|0)>>>0)Vn(a,268605,315);if((c[a+56>>2]|0)>>>0<p>>>0)Vn(a,268605,315);p=Xn(a,20,n,1,1)|0;c[d>>2]=e;if(p|0)xo(a);if(!(f&512)){e=c[q>>2]|0;f=(c[r>>2]|0)-e>>4;d=f+-2|0;if(f>>>0<=1)jo(a,376,-2);n=e+(d<<4)|0;o=e+(f+-1<<4)|0;p=c[n>>2]|0;d=c[e+(d<<4)+8>>2]|0;QQ(n|0,n+16|0,o-n|0)|0;c[o>>2]=2;c[r>>2]=(c[r>>2]|0)+-16;if(p&8|0?(o=d+4|0,p=(c[o>>2]|0)+-1|0,c[o>>2]=p,(p|0)==0):0)Yn(c[a+44>>2]|0,d)}f=c[a+104>>2]|0;vp(a,c[(c[r>>2]|0)+-8>>2]|0,f,f,1);f=c[q>>2]|0;e=(c[r>>2]|0)-f>>4;d=e+-2|0;if(e>>>0<=1)jo(a,376,-2);o=f+(d<<4)|0;p=f+(e+-1<<4)|0;q=c[o>>2]|0;d=c[f+(d<<4)+8>>2]|0;QQ(o|0,o+16|0,p-o|0)|0;c[p>>2]=2;c[r>>2]=(c[r>>2]|0)+-16;if(!(q&8)){l=s;return 1}q=d+4|0;r=(c[q>>2]|0)+-1|0;c[q>>2]=r;if(r|0){l=s;return 1}Yn(c[a+44>>2]|0,d);l=s;return 1}function Kq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+16|0;i=w;q=b+68|0;f=c[q>>2]|0;r=b+64|0;e=c[r>>2]|0;o=f-e|0;p=o>>4;v=d+8|0;k=d+1152|0;s=c[d>>2]|0;t=s&8;u=(t|0)!=0;m=(s&4096|0)==0;e=p|0?e+(p+-1<<4)|0:0;e=(e|0)==0?936:e;h=f;if((c[e>>2]|0)==8)j=c[e+8>>2]|0;else j=0;e=c[b+52>>2]|0;f=f-e+640|0;e=e+f|0;n=b+56|0;g=c[n>>2]|0;do if(g>>>0<e>>>0)if((c[b+60>>2]|0)>>>0<e>>>0){lo(b,f,1)|0;f=c[q>>2]|0;e=c[n>>2]|0;break}else{c[n>>2]=e;f=h;break}else{f=h;e=g}while(0);if(f>>>0>=e>>>0)Un(b,5237);e=ap(c[b+44>>2]|0,0,1,i)|0;if(!e)Mn(b,268620,5246);i=c[q>>2]|0;c[i>>2]=10;c[i+8>>2]=e;e=e+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[q>>2]|0;i=e+16|0;c[q>>2]=i;f=c[n>>2]|0;if(i>>>0>=f>>>0)Un(b,4162);i=e+32|0;c[q>>2]=i;if(i>>>0>=f>>>0)Un(b,4162);i=e+48|0;c[q>>2]=i;if(i>>>0>=f>>>0)Un(b,4162);i=e+64|0;c[q>>2]=i;if(i>>>0>=f>>>0)Un(b,4162);c[q>>2]=e+80;c[v>>2]=b;c[d+12>>2]=j;h=p+1|0;c[d+952>>2]=h;i=p+2|0;c[d+956>>2]=i;c[d+960>>2]=p+3;c[d+964>>2]=p+4;c[d+972>>2]=2500;j=d+16|0;c[d+788>>2]=b;c[d+808>>2]=h;c[d+812>>2]=i;c[d+816>>2]=p;c[d+820>>2]=c[(c[((o|0)<0?q:r)>>2]|0)+(p<<4)+8>>2];c[d+844>>2]=1e8;c[k>>2]=0;c[d+1156>>2]=1;c[d+800>>2]=0;c[d+804>>2]=1;c[j>>2]=d+20;Lq(j,0);c[d+932>>2]=0;Mq(v);if(!m){a[d+1134>>0]=s>>>5&1;a[d+1128>>0]=1;a[d+1131>>0]=1;a[d+1132>>0]=1;Oq(v,-1);Oq(v,13);Pq(v,0);Qq(v);l=w;return 1}e=c[(c[b+304>>2]|0)+((u?33:27)<<2)>>2]|0;f=c[q>>2]|0;if(f>>>0>=(c[n>>2]|0)>>>0)Un(b,4153);c[q>>2]=f+16;c[f>>2]=8;c[f+8>>2]=e;e=e+4|0;c[e>>2]=(c[e>>2]|0)+1;r=c[r>>2]|0;e=(c[q>>2]|0)-r>>4;e=e|0?r+(e+-1<<4)|0:0;e=(e|0)==0?936:e;if((c[e>>2]|0)==8)e=c[e+8>>2]|0;else e=0;c[d+996>>2]=e;a[d+1134>>0]=s>>>5&1;a[d+1129>>0]=t>>>3;a[d+1130>>0]=(u^1)&1;Nq(v,1,1,-1);Qq(v);l=w;return 1}function Lq(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;o=b+788|0;g=c[o>>2]|0;h=c[b+776>>2]|0;p=b+784|0;f=c[p>>2]|0;m=h+(c[b+780>>2]|0)|0;e=b+4+e|0;k=b+772|0;n=h;if((e|0)==(k|0)){b=g;n=f;c[p>>2]=n;c[o>>2]=b;return}l=m;h=h+f|0;a:while(1){c[e+4>>2]=f;c[e+8>>2]=g;b:do if(h>>>0<m>>>0){f=h+1|0;h=a[h>>0]|0;j=h&255;if(h<<24>>24>-1){if((h&255)>=14){h=f;f=j;break}switch(h<<24>>24){case 10:break;case 13:{if(f>>>0<m>>>0?(a[f>>0]|0)==10:0){h=f;f=j;break b}break}default:{h=f;f=j;break b}}h=f;g=g+1|0;f=j;break}if((h&255)<192){e=21;break a}if((h&255)>=224)if((h&255)>=240)if((h&255)<248){i=3;h=7}else{e=21;break a}else{i=2;h=15}else{i=1;h=31}if(i>>>0>(l-f|0)>>>0){e=21;break a}j=h&j;while(1){if(!i)break;h=f+1|0;f=d[f>>0]|0;if((f&192|0)==128){j=f&63|j<<6;i=i+-1|0;f=h}else{f=h;e=21;break a}}if(j>>>0>1114111){e=21;break a}h=f;g=((j|1|0)==8233&1)+g|0;f=j}else f=-1;while(0);c[e>>2]=f;e=e+12|0;f=h-n|0;if((e|0)==(k|0)){e=22;break}}if((e|0)==21){c[p>>2]=f-n;c[o>>2]=g;Jn(c[b+772>>2]|0,272404,83886395,273491)}else if((e|0)==22){c[p>>2]=f;c[o>>2]=g;return}}function Mq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;h=q;g=a+972|0;m=c[a>>2]|0;n=m+68|0;o=m+64|0;j=(c[n>>2]|0)-(c[o>>2]|0)|0;p=j>>4;RQ(g|0,0,168)|0;e=c[n>>2]|0;b=c[m+52>>2]|0;d=e-b+768|0;b=b+d|0;k=m+56|0;f=c[k>>2]|0;do if(f>>>0<b>>>0)if((c[m+60>>2]|0)>>>0<b>>>0){lo(m,d,1)|0;e=c[n>>2]|0;b=c[k>>2]|0;break}else{c[k>>2]=b;break}else b=f;while(0);if(e>>>0>=b>>>0)Un(m,5237);i=m+44|0;b=ap(c[i>>2]|0,2048,1,h)|0;if(!b)Mn(m,268620,5246);e=c[n>>2]|0;c[e>>2]=10;c[e+8>>2]=b;e=b+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[n>>2]|0;c[n>>2]=e+16;e=c[e+8>>2]|0;c[a+984>>2]=e;e=c[e+20>>2]|0;c[g>>2]=e;c[a+976>>2]=e;c[a+980>>2]=e+2048;e=vo(m,48)|0;b=c[i>>2]|0;c[e>>2]=272679041;b=b+24|0;d=c[b>>2]|0;if(d|0)c[d+12>>2]=e;c[e+12>>2]=0;c[e+8>>2]=d;c[b>>2]=e;f=m+132|0;b=c[f>>2]|0;c[e+20>>2]=b;if(b|0){g=b+4|0;c[g>>2]=(c[g>>2]|0)+1}b=c[n>>2]|0;c[b>>2]=9;c[b+8>>2]=e;e=e+4|0;c[e>>2]=(c[e>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+16;e=p+1|0;c[a+1020>>2]=e;c[a+992>>2]=c[(c[o>>2]|0)+(e<<4)+8>>2];e=vo(m,48)|0;b=c[i>>2]|0;c[e>>2]=272679041;b=b+24|0;d=c[b>>2]|0;if(d|0)c[d+12>>2]=e;c[e+12>>2]=0;c[e+8>>2]=d;c[b>>2]=e;b=c[f>>2]|0;c[e+20>>2]=b;if(b|0){g=b+4|0;c[g>>2]=(c[g>>2]|0)+1}b=c[n>>2]|0;c[b>>2]=9;c[b+8>>2]=e;e=e+4|0;c[e>>2]=(c[e>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+16;e=p+2|0;c[a+1024>>2]=e;c[a+996>>2]=c[(c[o>>2]|0)+(e<<4)+8>>2];e=vo(m,48)|0;b=c[i>>2]|0;c[e>>2]=272679041;b=b+24|0;d=c[b>>2]|0;if(d|0)c[d+12>>2]=e;c[e+12>>2]=0;c[e+8>>2]=d;c[b>>2]=e;b=c[f>>2]|0;c[e+20>>2]=b;if(b|0){g=b+4|0;c[g>>2]=(c[g>>2]|0)+1}b=c[n>>2]|0;c[b>>2]=9;c[b+8>>2]=e;e=e+4|0;c[e>>2]=(c[e>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+16;e=p+3|0;c[a+1028>>2]=e;c[a+1e3>>2]=c[(c[o>>2]|0)+(e<<4)+8>>2];e=vo(m,48)|0;b=c[i>>2]|0;c[e>>2]=272679041;b=b+24|0;d=c[b>>2]|0;if(d|0)c[d+12>>2]=e;c[e+12>>2]=0;c[e+8>>2]=d;c[b>>2]=e;b=c[f>>2]|0;c[e+20>>2]=b;if(b|0){g=b+4|0;c[g>>2]=(c[g>>2]|0)+1}g=c[n>>2]|0;c[g>>2]=9;c[g+8>>2]=e;g=e+4|0;c[g>>2]=(c[g>>2]|0)+1;g=(c[n>>2]|0)+16|0;c[n>>2]=g;e=p+4|0;c[a+1032>>2]=e;c[a+1004>>2]=c[(c[o>>2]|0)+(e<<4)+8>>2];if(g>>>0>=(c[k>>2]|0)>>>0)Un(m,5237);b=ap(c[i>>2]|0,0,1,h)|0;if(!b)Mn(m,268620,5246);e=c[n>>2]|0;c[e>>2]=10;c[e+8>>2]=b;e=b+4|0;c[e>>2]=(c[e>>2]|0)+1;c[n>>2]=(c[n>>2]|0)+16;e=p+5|0;c[a+1036>>2]=e;c[a+1008>>2]=c[(c[((j|0)<-80?n:o)>>2]|0)+(e<<4)+8>>2];e=vo(m,48)|0;b=c[i>>2]|0;c[e>>2]=272679041;b=b+24|0;d=c[b>>2]|0;if(d|0)c[d+12>>2]=e;c[e+12>>2]=0;c[e+8>>2]=d;c[b>>2]=e;b=c[f>>2]|0;c[e+20>>2]=b;if(b|0){j=b+4|0;c[j>>2]=(c[j>>2]|0)+1}j=c[n>>2]|0;c[j>>2]=9;c[j+8>>2]=e;j=e+4|0;c[j>>2]=(c[j>>2]|0)+1;j=(c[n>>2]|0)+16|0;c[n>>2]=j;h=p+6|0;c[a+1040>>2]=h;c[a+1012>>2]=c[(c[o>>2]|0)+(h<<4)+8>>2];if(j>>>0>=(c[k>>2]|0)>>>0)Un(m,4604);e=vo(m,40)|0;b=c[i>>2]|0;c[e>>2]=134234241;b=b+24|0;d=c[b>>2]|0;if(!d){m=e+12|0;c[m>>2]=0;m=e+8|0;c[m>>2]=d;c[b>>2]=e;m=c[n>>2]|0;c[m>>2]=9;m=m+8|0;c[m>>2]=e;m=e+4|0;k=c[m>>2]|0;k=k+1|0;c[m>>2]=k;m=c[n>>2]|0;m=m+16|0;c[n>>2]=m;p=p+7|0;n=a+1044|0;c[n>>2]=p;o=c[o>>2]|0;o=o+(p<<4)+8|0;o=c[o>>2]|0;p=a+1016|0;c[p>>2]=o;l=q;return}c[d+12>>2]=e;m=e+12|0;c[m>>2]=0;m=e+8|0;c[m>>2]=d;c[b>>2]=e;m=c[n>>2]|0;c[m>>2]=9;m=m+8|0;c[m>>2]=e;m=e+4|0;k=c[m>>2]|0;k=k+1|0;c[m>>2]=k;m=c[n>>2]|0;m=m+16|0;c[n>>2]=m;p=p+7|0;n=a+1044|0;c[n>>2]=p;o=c[o>>2]|0;o=o+(p<<4)+8|0;o=c[o>>2]|0;p=a+1016|0;c[p>>2]=o;l=q;return}function Nq(d,e,f,g){d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0;xa=l;l=l+16|0;na=xa;c[na>>2]=-1;pa=c[d>>2]|0;wa=d+960|0;i=c[wa>>2]|0;if((i|0)>=(c[d+964>>2]|0))Jn(pa,272202,50332059,272541);c[wa>>2]=i+1;j=c[pa+52>>2]|0;i=(c[pa+68>>2]|0)-j+768|0;j=j+i|0;k=pa+56|0;do if((c[k>>2]|0)>>>0<j>>>0)if((c[pa+60>>2]|0)>>>0<j>>>0){lo(pa,i,1)|0;break}else{c[k>>2]=j;break}while(0);ma=d+8|0;la=c[ma>>2]|0;ka=c[la+4>>2]|0;la=c[la+8>>2]|0;ja=(f|0)!=0;if(ja){qa=d+1052|0;i=c[qa>>2]|0;j=i+1|0;c[qa>>2]=j;if((i|0)>65534)Jn(c[d>>2]|0,272202,50333579,272566);k=d+1056|0;if((i|0)>=(c[k>>2]|0))c[k>>2]=j;c[na>>2]=i}else i=-1;da=d+1128|0;a[da>>0]=1;ea=d+1129|0;a[ea>>0]=1;qa=d+1130|0;fa=d+1131|0;ga=d+1132|0;ha=d+1133|0;ia=d+1116|0;b[qa>>1]=0;b[qa+2>>1]=0>>>16;c[ia>>2]=i;if((g|0)>-1){Oq(d,g);A=d+896|0}else{A=d+896|0;c[A>>2]=0;Oq(d,-1)}Vq(d,1,e);B=d+1135|0;C=d+792|0;D=d+796|0;E=d+12|0;oa=d+924|0;F=d+972|0;qa=d+976|0;H=d+1020|0;I=d+1108|0;J=d+1032|0;K=d+1008|0;L=d+1044|0;M=d+1016|0;N=ja?na:0;O=d+1121|0;P=d+1040|0;Q=d+1052|0;R=d+1056|0;S=(N|0)==0;T=d+1028|0;U=d+1048|0;V=d+1092|0;W=d+1096|0;X=d+1120|0;Y=d+1125|0;Z=d+988|0;_=d+1126|0;$=d+1134|0;aa=d+1060|0;ba=d+1064|0;ca=d+1068|0;y=1;G=a[B>>0]|0;a:while(1){z=y;y=y+1|0;c[C>>2]=ka;c[D>>2]=la;c[ma>>2]=E;Lq(ma,0);c[A>>2]=0;c[oa>>2]=0;Oq(d,-1);q=c[d>>2]|0;c[F>>2]=c[qa>>2];Iq(q,c[H>>2]|0,0);c[I>>2]=0;Iq(q,c[J>>2]|0,0);j=c[K>>2]|0;p=q+44|0;i=c[p>>2]|0;w=i+44|0;x=c[w>>2]|0;c[w>>2]=x+-1;if((x|0)<1)Ln(i,2);n=j+20|0;x=ig[c[i+8>>2]&63](c[i+16>>2]|0,c[n>>2]|0,0)|0;c[j+16>>2]=0;c[n>>2]=x;n=q+68|0;if((c[n>>2]|0)>>>0>=(c[q+56>>2]|0)>>>0){i=20;break}k=vo(q,40)|0;i=c[p>>2]|0;c[k>>2]=134234241;i=i+24|0;j=c[i>>2]|0;if(j|0)c[j+12>>2]=k;c[k+12>>2]=0;c[k+8>>2]=j;c[i>>2]=k;f=c[n>>2]|0;c[f>>2]=9;c[f+8>>2]=k;k=k+4|0;c[k>>2]=(c[k>>2]|0)+1;k=(c[n>>2]|0)+16|0;c[n>>2]=k;f=q+64|0;g=c[L>>2]|0;j=c[f>>2]|0;k=k-j>>4;if(!k){i=24;break}m=j+(k+-1<<4)|0;i=((g|0)<0?k:0)+g|0;if(i>>>0>=k>>>0){i=26;break}w=j+(i<<4)|0;x=c[w>>2]|0;i=c[j+(i<<4)+8>>2]|0;c[w>>2]=c[m>>2];c[w+4>>2]=c[m+4>>2];c[w+8>>2]=c[m+8>>2];c[w+12>>2]=c[m+12>>2];c[m>>2]=2;c[n>>2]=(c[n>>2]|0)+-16;if(x&8|0?(w=i+4|0,x=(c[w>>2]|0)+-1|0,c[w>>2]=x,(x|0)==0):0)Yn(c[p>>2]|0,i);c[M>>2]=c[(c[f>>2]|0)+(c[L>>2]<<4)+8>>2];a[da>>0]=1;a[ea>>0]=0;x=c[d>>2]|0;v=a[O>>0]|0;i=Bo(x,c[P>>2]|0)|0;if(i|0){g=x+68|0;m=x+56|0;n=x+64|0;f=0;do{Np(x,c[P>>2]|0,f)|0;j=c[g>>2]|0;if(a[_>>0]|0){k=c[j+-8>>2]|0;if(c[k>>2]&8192|0){i=171;break a}if(j>>>0>=(c[m>>2]|0)>>>0){i=35;break a}if((j-(c[n>>2]|0)|0)<16){i=37;break a}w=j+-16|0;c[g>>2]=j+16;c[j>>2]=c[w>>2];c[j+4>>2]=c[w+4>>2];c[j+8>>2]=c[w+8>>2];c[j+12>>2]=c[w+12>>2];if(c[j>>2]&8|0){w=(c[j+8>>2]|0)+4|0;c[w>>2]=(c[w>>2]|0)+1}if(Do(x,c[L>>2]|0)|0){i=171;break a}if(c[k>>2]&4096|0){i=171;break a}j=c[g>>2]|0}if(j>>>0>=(c[m>>2]|0)>>>0){i=44;break a}c[g>>2]=j+16;c[j>>2]=0;h[j+8>>3]=+(f>>>0);lq(x,c[L>>2]|0);f=f+1|0}while(f>>>0<i>>>0)}c[Q>>2]=i;j=c[R>>2]|0;if((j|0)<(i|0)){c[R>>2]=i;j=i}if(!S){k=i+1|0;c[Q>>2]=k;if((i|0)>65534){i=50;break}if((i|0)>=(j|0)){c[R>>2]=k;j=k}c[N>>2]=i;i=k}if(a[B>>0]|0){k=i+3|0;c[Q>>2]=k;if((k|0)>65535){i=56;break}if((k|0)>(j|0))c[R>>2]=k;c[aa>>2]=i;c[ba>>2]=i+1;c[ca>>2]=i+2;i=k}if((i|0)>256){i=170;break}w=Bo(x,c[T>>2]|0)|0;s=(w|0)==0;t=x+68|0;u=x+64|0;if(s)r=u;else{q=x+56|0;m=v<<24>>24==0?19:23;p=x+44|0;n=0;while(1){Np(x,c[T>>2]|0,n|1)|0;Wq(x,-1);f=c[t>>2]|0;k=c[u>>2]|0;i=f-k>>4;i=i|0?k+(i+-1<<4)|0:0;i=(i|0)==0?936:i;do if(!(c[i>>2]|0)){o=+h[i+8>>3];if(!(iP(o)|0)){i=0;break}if(o<-2147483648.0){i=-2147483648;break}if(o>2147483647.0){i=2147483647;break}i=~~o}else i=0;while(0);g=i>>8;j=i&255;if((f|0)==(k|0)){i=70;break a}k=f+-16|0;c[t>>2]=k;r=c[f+-16>>2]|0;i=c[f+-8>>2]|0;c[k>>2]=2;do if(r&8|0){f=i+4|0;r=(c[f>>2]|0)+-1|0;c[f>>2]=r;if(r|0)break;Yn(c[p>>2]|0,i)}while(0);if((j|0)==1){Np(x,c[T>>2]|0,n)|0;do if(!(a[X>>0]|0)){k=c[Q>>2]|0;i=k+1|0;c[Q>>2]=i;if((k|0)>65534){i=110;break a}if((k|0)>=(c[R>>2]|0))c[R>>2]=i;i=c[t>>2]|0;if(i>>>0>=(c[q>>2]|0)>>>0){i=114;break a}if((i-(c[u>>2]|0)|0)<16){i=116;break a}r=i+-16|0;c[t>>2]=i+16;c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];c[i+8>>2]=c[r+8>>2];c[i+12>>2]=c[r+12>>2];if(c[i>>2]&8|0){r=(c[i+8>>2]|0)+4|0;c[r>>2]=(c[r>>2]|0)+1}i=Yq(d)|0;j=c[t>>2]|0;if(j>>>0>=(c[q>>2]|0)>>>0){i=120;break a}c[t>>2]=j+16;c[j>>2]=3;Xq(d,152,k,g);Zq(d,16784,m,i,k);c[Q>>2]=k}else{i=c[t>>2]|0;if(i>>>0>=(c[q>>2]|0)>>>0){i=77;break a}if((i-(c[u>>2]|0)|0)<16){i=79;break a}r=i+-16|0;c[t>>2]=i+16;c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];c[i+8>>2]=c[r+8>>2];c[i+12>>2]=c[r+12>>2];if(c[i>>2]&8|0){r=(c[i+8>>2]|0)+4|0;c[r>>2]=(c[r>>2]|0)+1}if(!(Do(x,c[L>>2]|0)|0)){j=c[Q>>2]|0;i=j+1|0;c[Q>>2]=i;if((j|0)>65534){i=103;break a}if((j|0)>=(c[R>>2]|0))c[R>>2]=i;Xq(d,152,j,g);i=c[t>>2]|0;if(i>>>0>=(c[q>>2]|0)>>>0){i=107;break a}c[t>>2]=i+16;c[i>>2]=0;h[i+8>>3]=+(j|0);break}i=c[t>>2]|0;if(i>>>0>=(c[q>>2]|0)>>>0){i=84;break a}if((i-(c[u>>2]|0)|0)<16){i=86;break a}r=i+-16|0;c[t>>2]=i+16;c[i>>2]=c[r>>2];c[i+4>>2]=c[r+4>>2];c[i+8>>2]=c[r+8>>2];c[i+12>>2]=c[r+12>>2];if(c[i>>2]&8|0){r=(c[i+8>>2]|0)+4|0;c[r>>2]=(c[r>>2]|0)+1}f=c[L>>2]|0;j=c[u>>2]|0;k=(c[t>>2]|0)-j>>4;i=((f|0)<0?k:0)+f|0;if(i>>>0>=k>>>0){i=90;break a}ro(x,j+(i<<4)|0,j+(k+-1<<4)|0)|0;j=c[u>>2]|0;k=(c[t>>2]|0)-j>>4;i=k+-2|0;if(k>>>0<=1){i=92;break a}ya=j+(i<<4)|0;f=j+(k+-1<<4)|0;r=c[ya>>2]|0;i=c[j+(i<<4)+8>>2]|0;QQ(ya|0,ya+16|0,f-ya|0)|0;c[f>>2]=2;c[t>>2]=(c[t>>2]|0)+-16;do if(r&8|0){r=i+4|0;ya=(c[r>>2]|0)+-1|0;c[r>>2]=ya;if(ya|0)break;Yn(c[p>>2]|0,i)}while(0);Wq(x,-1);ya=c[u>>2]|0;i=(c[t>>2]|0)-ya>>4;i=i|0?ya+(i+-1<<4)|0:0;i=(i|0)==0?936:i;do if(!(c[i>>2]|0)){o=+h[i+8>>3];if(!(iP(o)|0)){i=0;break}if(o<-2147483648.0){i=-2147483648;break}if(o>2147483647.0){i=2147483647;break}i=~~o}else i=0;while(0);Xq(d,152,i,g)}while(0);lq(x,c[L>>2]|0)}n=n+2|0;if(n>>>0>=w>>>0){r=u;break}}}j=c[L>>2]|0;f=c[t>>2]|0;ya=f-(c[r>>2]|0)>>4;k=((j|0)<0?ya:0)+j|0;if(k>>>0>=ya>>>0){i=125;break}p=x+304|0;i=c[(c[p>>2]|0)+268>>2]|0;q=x+56|0;if(f>>>0>=(c[q>>2]|0)>>>0){i=127;break}c[t>>2]=f+16;c[f>>2]=8;c[f+8>>2]=i;ya=i+4|0;c[ya>>2]=(c[ya>>2]|0)+1;if(Do(x,k)|0)a[$>>0]=1;if(!s){n=x+44|0;g=v<<24>>24==0?3:7;m=0;do{Np(x,c[T>>2]|0,m|1)|0;Wq(x,-1);f=c[t>>2]|0;k=c[u>>2]|0;i=f-k>>4;i=i|0?k+(i+-1<<4)|0:0;i=(i|0)==0?936:i;do if(!(c[i>>2]|0)){o=+h[i+8>>3];if(!(iP(o)|0)){i=0;break}if(o<-2147483648.0){i=-2147483648;break}if(o>2147483647.0){i=2147483647;break}i=~~o}else i=0;while(0);j=i&255;if((f|0)==(k|0)){i=138;break a}v=f+-16|0;c[t>>2]=v;ya=c[f+-16>>2]|0;i=c[f+-8>>2]|0;c[v>>2]=2;do if(ya&8|0){v=i+4|0;ya=(c[v>>2]|0)+-1|0;c[v>>2]=ya;if(ya|0)break;Yn(c[n>>2]|0,i)}while(0);b:do if(!j){Np(x,c[T>>2]|0,m)|0;if(Do(x,c[L>>2]|0)|0)break;Np(x,c[T>>2]|0,m)|0;k=c[t>>2]|0;i=k+-8|0;do if((c[i>>2]|0)==(c[(c[p>>2]|0)+268>>2]|0)){if(a[$>>0]|0)break;if((k|0)==(c[u>>2]|0)){i=147;break a}v=k+-16|0;c[t>>2]=v;ya=c[k+-16>>2]|0;i=c[i>>2]|0;c[v>>2]=2;if(!(ya&8))break b;v=i+4|0;ya=(c[v>>2]|0)+-1|0;c[v>>2]=ya;if(ya|0)break b;Yn(c[n>>2]|0,i);break b}while(0);if(!(a[X>>0]|0)){if(k>>>0>=(c[q>>2]|0)>>>0){i=160;break a}if((k-(c[r>>2]|0)|0)<16){i=162;break a}ya=k+-16|0;c[t>>2]=k+16;c[k>>2]=c[ya>>2];c[k+4>>2]=c[ya+4>>2];c[k+8>>2]=c[ya+8>>2];c[k+12>>2]=c[ya+12>>2];if(c[k>>2]&8|0){ya=(c[k+8>>2]|0)+4|0;c[ya>>2]=(c[ya>>2]|0)+1}i=Yq(d)|0;j=c[t>>2]|0;if(j>>>0>=(c[q>>2]|0)>>>0){i=166;break a}c[t>>2]=j+16;c[j>>2]=3;Zq(d,16784,g,i,0)}else{i=c[Q>>2]|0;j=i+1|0;c[Q>>2]=j;if((i|0)>65534){i=153;break a}if((i|0)>=(c[R>>2]|0))c[R>>2]=j;if(k>>>0>=(c[q>>2]|0)>>>0){i=157;break a}c[t>>2]=k+16;c[k>>2]=0;h[k+8>>3]=+(i|0)}lq(x,c[L>>2]|0)}while(0);m=m+2|0}while(m>>>0<w>>>0)}c[ia>>2]=c[na>>2];c[U>>2]=c[Q>>2];c[V>>2]=0;c[W>>2]=0;a[fa>>0]=0;a[ga>>0]=0;a[ha>>0]=0;do if(a[X>>0]|0){if(a[Y>>0]|0)break;i=c[Z>>2]|0;if(!i)break;i=c[i>>2]|0;if(!(a[_>>0]|0))if((i&6144|0)==2048){i=201;break a}else break;else if(!(i&12288))break;else{i=201;break a}}while(0);if(ja)Xq(d,7,0,0);Vq(d,1,e);ya=G;G=a[B>>0]|0;if(ya<<24>>24==G<<24>>24){i=183;break}if((z|0)>1){i=182;break}}switch(i|0){case 20:{Un(q,4604);break}case 24:{jo(q,376,-1);break}case 26:{jo(q,376,g);break}case 35:{Un(x,1111);break}case 37:{jo(x,1114,-1);break}case 44:{Un(x,4274);break}case 50:{Jn(c[d>>2]|0,272202,50333579,272566);break}case 56:{Jn(c[d>>2]|0,272202,50333579,272566);break}case 70:{Jn(x,268620,50337407,268636);break}case 77:{Un(x,1111);break}case 79:{jo(x,1114,-1);break}case 84:{Un(x,1111);break}case 86:{jo(x,1114,-1);break}case 90:{jo(x,376,f);break}case 92:{jo(x,376,-2);break}case 103:{Jn(c[d>>2]|0,272202,50333579,272566);break}case 107:{Un(x,4244);break}case 110:{Jn(c[d>>2]|0,272202,50333579,272566);break}case 114:{Un(x,1111);break}case 116:{jo(x,1114,-1);break}case 120:{Un(x,4175);break}case 125:{jo(x,300,j);break}case 127:{Un(x,4153);break}case 138:{Jn(x,268620,50337407,268636);break}case 147:{Jn(x,268620,50337407,268636);break}case 153:{Jn(c[d>>2]|0,272202,50333579,272566);break}case 157:{Un(x,4244);break}case 160:{Un(x,1111);break}case 162:{jo(x,1114,-1);break}case 166:{Un(x,4175);break}case 170:{Jn(x,272202,50338805,272577);break}case 171:{Jn(x,272202,83893242,272592);break}case 182:{ko(pa,272202,7411);break}case 183:{i=c[na>>2]|0;do if((i|0)<=-1){f=d+980|0;g=d+972|0;i=c[g>>2]|0;j=i;do if(((c[f>>2]|0)-j|0)>>>0<=7){k=c[d>>2]|0;i=j-(c[qa>>2]|0)|0;j=i+72+(i>>>2)|0;if(j>>>0<i>>>0)Jn(k,270142,50331712,268576);else{ya=d+984|0;Kn(k,c[ya>>2]|0,j);ya=c[(c[ya>>2]|0)+20>>2]|0;ra=ya+i|0;c[g>>2]=ra;c[qa>>2]=ya;c[f>>2]=ya+j;break}}else ra=i;while(0);k=ra+8|0;c[g>>2]=k;j=c[d+876>>2]|0;if(!j)j=c[oa>>2]|0;c[ra>>2]=158;c[ra+4>>2]=j;i=c[qa>>2]|0;if((j|0)>2147418112|(k-i|0)>>>0>2147418112)Jn(c[d>>2]|0,272202,50332820,272614);else{ta=i;sa=k;break}}else{Xq(d,157,0,i);ta=c[qa>>2]|0;sa=c[d+972>>2]|0}while(0);m=(sa-ta|0)>>>3;if(!m){ya=c[wa>>2]|0;ya=ya+-1|0;c[wa>>2]=ya;l=xa;return}else f=0;do{g=0;i=0;do{j=ta+(g<<3)|0;k=c[j>>2]|0;if((k&255|0)==2?(ua=k>>>8,va=c[ta+(g+-8388607+ua<<3)>>2]|0,(va&255|0)==2):0){c[j>>2]=(ua<<8)+256+va&-256^-2147483646;i=i+1|0}g=g+1|0}while((g|0)!=(m|0));f=f+1|0}while(f>>>0<3&(i|0)!=0);ya=c[wa>>2]|0;ya=ya+-1|0;c[wa>>2]=ya;l=xa;return}case 201:{Jn(pa,272202,83893534,272629);break}}}function Oq(b,e){b=b|0;e=e|0;var f=0,g=0,i=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;k=c[b>>2]|0;H=b+896|0;i=c[H>>2]|0;f=b+1136|0;if(!(a[f>>0]|0))p=((d[272290+i>>0]|0)>>>5&1^1)&255;else{a[f>>0]=0;p=0}if(!((e|0)<0|(i|0)==(e|0)))Jn(k,272202,83886550,272392);f=b+848|0;e=H;i=f+48|0;do{c[f>>2]=c[e>>2];f=f+4|0;e=e+4|0}while((f|0)<(i|0));Sq(k,c[b+944>>2]|0,c[b+952>>2]|0);Sq(k,c[b+948>>2]|0,c[b+956>>2]|0);E=b+8|0;y=a[b+1126>>0]|0;F=b+832|0;G=(c[F>>2]|0)+1|0;c[F>>2]=G;if((G|0)>=(c[b+836>>2]|0))Jn(c[b+780>>2]|0,272404,50333434,272451);c[H>>2]=0;G=b+900|0;c[G>>2]=-1;A=b+928|0;c[A>>2]=0;m=b+924|0;n=b+920|0;F=b+12|0;D=F;o=b+840|0;f=0;a:while(1){l=c[E>>2]|0;c[m>>2]=c[l+8>>2];k=(f|0)==0;b:while(1){e=c[l+4>>2]|0;c[n>>2]=e;x=c[l>>2]|0;c:do switch(x|0){case 123:{g=3121;C=344;break a}case 125:{C=345;break a}case 40:{C=346;break a}case 41:{C=347;break a}case 91:{C=348;break a}case 93:{C=349;break a}case 59:{C=350;break a}case 44:{C=351;break a}case 62:{C=97;break a}case 61:{C=101;break a}case 33:{C=104;break a}case 43:{C=107;break a}case 42:{C=116;break a}case 37:{C=119;break a}case 38:{C=120;break a}case 124:{C=121;break a}case 94:{C=122;break a}case 126:{C=352;break a}case 63:{B=f;g=3156;break a}case 58:{C=123;break a}case 39:case 34:{C=124;break a}case 10:{C=12;break b}case 13:{C=208;break b}case 8233:case 8232:break b;case 9:case 32:{e=l+12|0;c[E>>2]=e;i=D-e+768|0;if(i>>>0<72){QQ(F|0,e|0,i|0)|0;c[E>>2]=F;Lq(E,i)}break}case 35:{if(!((e|0)==0?(c[l+12>>2]|0)==33:0)){C=361;break a}if(!(c[o>>2]&64)){C=361;break a}else{e=l;i=35}do{if((i|0)<8232)switch(i|0){case 10:case 13:break c;default:{}}else switch(i|0){case 8232:case 8233:break c;default:{}}e=e+12|0;c[E>>2]=e;i=D-e+768|0;if(i>>>0<72){QQ(F|0,e|0,i|0)|0;c[E>>2]=F;Lq(E,i);e=c[E>>2]|0}i=c[e>>2]|0}while((i|0)>=0);break}case 47:{e=c[l+12>>2]|0;switch(e|0){case 42:{C=25;break b}case 47:{e=l;i=47;break}default:{C=34;break a}}do{if((i|0)<8232)switch(i|0){case 10:case 13:break c;default:{}}else switch(i|0){case 8232:case 8233:break c;default:{}}e=e+12|0;c[E>>2]=e;i=D-e+768|0;if(i>>>0<72){QQ(F|0,e|0,i|0)|0;c[E>>2]=F;Lq(E,i);e=c[E>>2]|0}i=c[e>>2]|0}while((i|0)>=0);break}case 46:{if(((c[l+12>>2]|0)+-48|0)>>>0<10)C=215;else{g=3127;C=344;break a}break}case 60:{e=c[l+12>>2]|0;switch(e|0){case 60:{C=95;break a}case 33:break;default:{g=e;e=3130;C=96;break a}}if((c[l+24>>2]|0)!=45){g=33;e=3130;C=96;break a}if((c[l+36>>2]|0)==45){e=l;i=60}else{g=33;e=3130;C=96;break a}do{if((i|0)<8232)switch(i|0){case 10:case 13:break c;default:{}}else switch(i|0){case 8232:case 8233:break c;default:{}}e=e+12|0;c[E>>2]=e;i=D-e+768|0;if(i>>>0<72){QQ(F|0,e|0,i|0)|0;c[E>>2]=F;Lq(E,i);e=c[E>>2]|0}i=c[e>>2]|0}while((i|0)>=0);break}case 45:{e=c[l+12>>2]|0;if(k){f=0;g=e;C=115;break a}if((e|0)!=45){g=e;C=115;break a}if((c[l+24>>2]|0)==62){e=l;i=45}else{g=45;C=115;break a}do{if((i|0)<8232)switch(i|0){case 10:case 13:break c;default:{}}else switch(i|0){case 8232:case 8233:break c;default:{}}e=e+12|0;c[E>>2]=e;i=D-e+768|0;if(i>>>0<72){QQ(F|0,e|0,i|0)|0;c[E>>2]=F;Lq(E,i);e=c[E>>2]|0}i=c[e>>2]|0}while((i|0)>=0);break}default:if((x|0)<128)if((x|0)>-1){C=215;break c}else{e=0;C=217;break c}else{e=(Hq(264586,1036,x)|0)!=0;C=217;break c}}while(0);if((C|0)==215){e=(a[270885+x>>0]|0)>0;C=217}if((C|0)==217){C=0;if((x|0)==92|e){C=218;break a}if((x|0)==46|(x+-48|0)>>>0<10){C=271;break a}d:do switch(x>>8|0){case 0:{switch((x&255)<<24>>24){case -96:case 32:case 12:case 11:case 9:break;default:{C=343;break a}}break}case 32:{if((x&255)>>>0>=11)switch((x&255)<<24>>24){case 47:case 95:break;default:{C=343;break a}}break}default:{if((x|0)<12288)switch(x|0){case 5760:case 6158:break d;default:{C=343;break a}}if((x|0)<65279)switch(x|0){case 12288:break d;default:{C=343;break a}}else switch(x|0){case 65279:break d;default:{C=343;break a}}}}while(0);e=l+12|0;c[E>>2]=e;i=D-e+768|0;if(i>>>0<72){QQ(F|0,e|0,i|0)|0;c[E>>2]=F;Lq(E,i)}}l=c[E>>2]|0}if((C|0)==12){C=0;f=l+12|0;c[E>>2]=f;e=D-f+768|0;if(e>>>0>=72){f=1;continue}QQ(F|0,f|0,e|0)|0;c[E>>2]=F;Lq(E,e);f=1;continue}else if((C|0)==25){C=0;i=l+24|0;c[E>>2]=i;e=D-i+768|0;if(e>>>0<72){QQ(F|0,i|0,e|0)|0;c[E>>2]=F;Lq(E,e);e=c[E>>2]|0;k=e}else{k=i;e=i}e=c[e>>2]|0;if((e|0)<0){C=365;break}else l=0;while(1){i=k+12|0;c[E>>2]=i;k=D-i+768|0;if(k>>>0<72){QQ(F|0,i|0,k|0)|0;c[E>>2]=F;Lq(E,k)}if((e|0)==47&(l|0)!=0)continue a;if((e|0)<8232)switch(e|0){case 10:case 13:{f=1;break}default:C=32}else switch(e|0){case 8232:case 8233:{f=1;break}default:C=32}if((C|0)==32)C=0;k=c[E>>2]|0;i=c[k>>2]|0;if((i|0)<0){C=365;break a}else{l=(e|0)==42&1;e=i}}}else if((C|0)==208?(C=0,(c[l+12>>2]|0)==10):0){f=l+24|0;c[E>>2]=f;e=D-f+768|0;if(e>>>0>=72){f=1;continue}QQ(F|0,f|0,e|0)|0;c[E>>2]=F;Lq(E,e);f=1;continue}f=l+12|0;c[E>>2]=f;e=D-f+768|0;if(e>>>0>=72){f=1;continue}QQ(F|0,f|0,e|0)|0;c[E>>2]=F;Lq(E,e);f=1}e:switch(C|0){case 34:{if(!p){B=f;g=(e|0)==61?6234:3141;break}t=b+812|0;e=c[t>>2]|0;i=c[e+16>>2]|0;s=b+780|0;if(i>>>0>=256){Kn(c[s>>2]|0,e,256);i=c[t>>2]|0;e=i;i=c[i+16>>2]|0}u=b+828|0;c[u>>2]=e;n=c[e+20>>2]|0;o=b+816|0;c[o>>2]=n;p=b+820|0;c[p>>2]=n;q=b+824|0;c[q>>2]=n+i;n=b+816|0;k=0;f:while(1){i=(c[E>>2]|0)+12|0;c[E>>2]=i;e=D-i+768|0;if(e>>>0<72){QQ(F|0,i|0,e|0)|0;c[E>>2]=F;Lq(E,e);i=c[E>>2]|0;e=i}else e=i;m=c[e>>2]|0;if((m|0)<0){C=364;break}if((m|0)<8232)switch(m|0){case 10:case 13:{C=364;break f}default:{}}else switch(m|0){case 8232:case 8233:{C=364;break f}default:{}}g:do switch(k|0){case 0:switch(m|0){case 47:{C=44;break f}case 92:{k=1;break g}case 91:{k=2;break g}default:{k=0;break g}}case 1:{k=0;break}case 2:{k=(m|0)==93?0:(m|0)==92?3:2;break}default:k=2}while(0);i=c[n>>2]|0;e=i;if(((c[q>>2]|0)-i|0)>>>0<6){l=c[s>>2]|0;e=i-(c[p>>2]|0)|0;i=e+70+(e>>>2)|0;if(i>>>0<e>>>0){C=55;break}Kn(l,c[u>>2]|0,i);C=c[(c[u>>2]|0)+20>>2]|0;e=C+e|0;c[n>>2]=e;c[p>>2]=C;c[q>>2]=C+i}do if(m>>>0>=128){if(m>>>0<2048){a[e>>0]=m>>>6&31|192;a[e+1>>0]=m&63|128;e=2;break}if(m>>>0<65536){a[e>>0]=m>>>12&15|224;a[e+1>>0]=m>>>6&63|128;a[e+2>>0]=m&63|128;e=3;break}else{C=m+-65536|0;a[e>>0]=-19;a[e+1>>0]=C>>>16&15|160;a[e+2>>0]=C>>>10&63|128;a[e+3>>0]=-19;a[e+4>>0]=C>>>6&15|176;a[e+5>>0]=C&63|128;e=6;break}}else{a[e>>0]=m;e=1}while(0);c[n>>2]=(c[n>>2]|0)+e}if((C|0)==44){g=i+12|0;c[E>>2]=g;e=D-g+768|0;if(e>>>0<72){QQ(F|0,g|0,e|0)|0;c[E>>2]=F;Lq(E,e)}c[b+912>>2]=Tq(E,c[b+800>>2]|0)|0;g=c[t>>2]|0;e=c[g+16>>2]|0;if(e>>>0>=256){Kn(c[s>>2]|0,g,256);e=c[t>>2]|0;g=e;e=c[e+16>>2]|0}c[u>>2]=g;B=c[g+20>>2]|0;c[o>>2]=B;c[p>>2]=B;c[q>>2]=B+e;while(1){k=c[c[E>>2]>>2]|0;if((k|0)<128){if((k|0)<=-1)break;if(!(a[270885+k>>0]|0))break}else if((Hq(264586,1036,k)|0)==0?(Hq(265664,530,k)|0)==0:0)break;e=c[n>>2]|0;g=e;if(((c[q>>2]|0)-e|0)>>>0<6){i=c[s>>2]|0;g=e-(c[p>>2]|0)|0;e=g+70+(g>>>2)|0;if(e>>>0<g>>>0){C=72;break}Kn(i,c[u>>2]|0,e);B=c[(c[u>>2]|0)+20>>2]|0;g=B+g|0;c[n>>2]=g;c[p>>2]=B;c[q>>2]=B+e}do if(k>>>0>=128){if(k>>>0<2048){a[g>>0]=k>>>6&31|192;a[g+1>>0]=k&63|128;g=2;break}if(k>>>0<65536){a[g>>0]=k>>>12&15|224;a[g+1>>0]=k>>>6&63|128;a[g+2>>0]=k&63|128;g=3;break}else{B=k+-65536|0;a[g>>0]=-19;a[g+1>>0]=B>>>16&15|160;a[g+2>>0]=B>>>10&63|128;a[g+3>>0]=-19;a[g+4>>0]=B>>>6&15|176;a[g+5>>0]=B&63|128;g=6;break}}else{a[g>>0]=k;g=1}while(0);c[n>>2]=(c[n>>2]|0)+g;g=(c[E>>2]|0)+12|0;c[E>>2]=g;e=D-g+768|0;if(e>>>0>=72)continue;QQ(F|0,g|0,e|0)|0;c[E>>2]=F;Lq(E,e)}if((C|0)==72)Jn(i,270142,50331712,268576);c[b+916>>2]=Tq(E,c[b+804>>2]|0)|0;e=c[t>>2]|0;g=c[e+16>>2]|0;if(g>>>0>=256){Kn(c[s>>2]|0,e,256);g=c[t>>2]|0;e=g;g=c[g+16>>2]|0}c[u>>2]=e;B=c[e+20>>2]|0;c[o>>2]=B;c[p>>2]=B;c[q>>2]=B+g;B=f;g=101;break}else if((C|0)==55)Jn(l,270142,50331712,268576);else if((C|0)==364)Jn(c[s>>2]|0,272404,83887882,272500);break}case 95:{if((c[l+24>>2]|0)==61){B=f;g=9309}else{g=60;e=6218;C=96}break}case 97:{g=c[l+12>>2]|0;e=(g|0)==62;h:do if(e){switch(c[l+24>>2]|0){case 61:{B=f;g=9310;break e}case 62:break;default:break h}B=f;g=(c[l+36>>2]|0)==61?12383:9292;break e}while(0);B=f;g=(g|0)==61?6205:e?6219:3131;break}case 101:{g=(c[l+12>>2]|0)==61;if(g?(c[l+24>>2]|0)==61:0){B=f;g=9280;break}B=f;g=g?6206:3158;break}case 104:{g=(c[l+12>>2]|0)==61;if(g?(c[l+24>>2]|0)==61:0){B=f;g=9281;break}B=f;g=g?6207:3152;break}case 107:{g=c[l+12>>2]|0;B=f;g=(g|0)==43?6216:(g|0)==61?6231:3138;break}case 115:{B=f;g=(g|0)==45?6217:(g|0)==61?6232:3139;break}case 116:{g=c[l+12>>2]|0;e=(g|0)==42;if(e?(c[l+24>>2]|0)==61:0){B=f;g=9308;break}B=f;g=e?6215:(g|0)==61?6233:3140;break}case 119:{B=f;g=(c[l+12>>2]|0)==61?6235:3142;break}case 120:{g=c[l+12>>2]|0;B=f;g=(g|0)==38?6226:(g|0)==61?6240:3149;break}case 121:{g=c[l+12>>2]|0;B=f;g=(g|0)==124?6227:(g|0)==61?6241:3150;break}case 122:{B=f;g=(c[l+12>>2]|0)==61?6242:3151;break}case 123:{B=f;g=3157;break}case 124:{u=b+812|0;e=c[u>>2]|0;i=c[e+16>>2]|0;p=b+780|0;if(i>>>0>=256){Kn(c[p>>2]|0,e,256);i=c[u>>2]|0;e=i;i=c[i+16>>2]|0}v=b+828|0;c[v>>2]=e;n=c[e+20>>2]|0;q=b+816|0;c[q>>2]=n;s=b+820|0;c[s>>2]=n;t=b+824|0;c[t>>2]=n+i;n=y<<24>>24!=0;o=b+816|0;e=1;i:while(1){i=(c[E>>2]|0)+(e*12|0)|0;c[E>>2]=i;e=D-i+768|0;if(e>>>0<72){QQ(F|0,i|0,e|0)|0;c[E>>2]=F;Lq(E,e);e=c[E>>2]|0;k=e}else{k=i;e=i}l=c[k>>2]|0;if((l|0)==(x|0)){C=130;break}if((l|0)!=92){if((l+-32|0)>>>0<96){i=c[t>>2]|0;y=c[o>>2]|0;e=y;if((i|0)==(y|0)){k=c[p>>2]|0;e=i-(c[s>>2]|0)|0;i=e+65+(e>>>2)|0;if(i>>>0<e>>>0){C=186;break}Kn(k,c[v>>2]|0,i);y=c[(c[v>>2]|0)+20>>2]|0;e=y+e|0;c[o>>2]=e;c[s>>2]=y;c[t>>2]=y+i}c[o>>2]=e+1;a[e>>0]=l;e=1;continue}if((l|0)<0){C=204;break}if((l|0)<8232)switch(l|0){case 10:case 13:{C=204;break i}default:{}}else switch(l|0){case 8232:case 8233:{C=204;break i}default:{}}i=c[o>>2]|0;e=i;if(((c[t>>2]|0)-i|0)>>>0<6){k=c[p>>2]|0;e=i-(c[s>>2]|0)|0;i=e+70+(e>>>2)|0;if(i>>>0<e>>>0){C=193;break}Kn(k,c[v>>2]|0,i);y=c[(c[v>>2]|0)+20>>2]|0;e=y+e|0;c[o>>2]=e;c[s>>2]=y;c[t>>2]=y+i}do if(l>>>0>=128){if(l>>>0<2048){a[e>>0]=l>>>6&31|192;a[e+1>>0]=l&63|128;e=2;break}if(l>>>0<65536){a[e>>0]=l>>>12&15|224;a[e+1>>0]=l>>>6&63|128;a[e+2>>0]=l&63|128;e=3;break}else{y=l+-65536|0;a[e>>0]=-19;a[e+1>>0]=y>>>16&15|160;a[e+2>>0]=y>>>10&63|128;a[e+3>>0]=-19;a[e+4>>0]=y>>>6&15|176;a[e+5>>0]=y&63|128;e=6;break}}else{a[e>>0]=l;e=1}while(0);c[o>>2]=(c[o>>2]|0)+e;e=1;continue}l=c[k+12>>2]|0;j:do switch(l|0){case 92:case 34:case 39:{i=l;e=2;C=174;break}case 98:{i=8;e=2;C=174;break}case 102:{i=12;e=2;C=174;break}case 110:{i=10;e=2;C=174;break}case 114:{i=13;e=2;C=174;break}case 116:{i=9;e=2;C=174;break}case 118:{i=11;e=2;C=174;break}case 117:case 120:{l=Uq(E,1)|0;i=c[o>>2]|0;e=i;if(((c[t>>2]|0)-i|0)>>>0<6){k=c[p>>2]|0;e=i-(c[s>>2]|0)|0;i=e+70+(e>>>2)|0;if(i>>>0<e>>>0){C=142;break i}Kn(k,c[v>>2]|0,i);y=c[(c[v>>2]|0)+20>>2]|0;e=y+e|0;c[o>>2]=e;c[s>>2]=y;c[t>>2]=y+i}do if(l>>>0>=128){if(l>>>0<2048){a[e>>0]=l>>>6&31|192;a[e+1>>0]=l&63|128;e=2;break}if(l>>>0<65536){a[e>>0]=l>>>12&15|224;a[e+1>>0]=l>>>6&63|128;a[e+2>>0]=l&63|128;e=3;break}else{y=l+-65536|0;a[e>>0]=-19;a[e+1>>0]=y>>>16&15|160;a[e+2>>0]=y>>>10&63|128;a[e+3>>0]=-19;a[e+4>>0]=y>>>6&15|176;a[e+5>>0]=y&63|128;e=6;break}}else{a[e>>0]=l;e=1}while(0);c[o>>2]=(c[o>>2]|0)+e;e=0;break}case 13:{e=(c[k+24>>2]|0)==10?3:2;break}case 8233:case 8232:case 10:{e=2;break}default:{i=l+-48|0;if(i>>>0<10){if((l&-8|0)!=48){i=l;e=2;C=174;break j}e=c[k+24>>2]|0;if((e&-8|0)==48?(w=(i<<3)+-48+e|0,(w|0)<=255):0){e=c[k+36>>2]|0;if((e&-8|0)==48?(z=(w<<3)+-48+e|0,(z|0)<=255):0){e=4;i=z}else{e=3;i=w;C=156}}else{e=2;C=156}if((i|0)<0|n&((i|0)!=0|(e|0)!=2)){C=203;break i}else{C=174;break j}}if((l|0)<0){C=204;break i}i=c[o>>2]|0;e=i;if(((c[t>>2]|0)-i|0)>>>0<6){k=c[p>>2]|0;e=i-(c[s>>2]|0)|0;i=e+70+(e>>>2)|0;if(i>>>0<e>>>0){C=164;break i}Kn(k,c[v>>2]|0,i);y=c[(c[v>>2]|0)+20>>2]|0;e=y+e|0;c[o>>2]=e;c[s>>2]=y;c[t>>2]=y+i}do if(l>>>0>=128){if(l>>>0<2048){a[e>>0]=l>>>6&31|192;a[e+1>>0]=l&63|128;e=2;break}if(l>>>0<65536){a[e>>0]=l>>>12&15|224;a[e+1>>0]=l>>>6&63|128;a[e+2>>0]=l&63|128;e=3;break}else{y=l+-65536|0;a[e>>0]=-19;a[e+1>>0]=y>>>16&15|160;a[e+2>>0]=y>>>10&63|128;a[e+3>>0]=-19;a[e+4>>0]=y>>>6&15|176;a[e+5>>0]=y&63|128;e=6;break}}else{a[e>>0]=l;e=1}while(0);c[o>>2]=(c[o>>2]|0)+e;e=2}}while(0);if((C|0)==174){C=0;l=c[o>>2]|0;k=l;if(((c[t>>2]|0)-l|0)>>>0<6){m=c[p>>2]|0;k=l-(c[s>>2]|0)|0;l=k+70+(k>>>2)|0;if(l>>>0<k>>>0){C=176;break}Kn(m,c[v>>2]|0,l);y=c[(c[v>>2]|0)+20>>2]|0;k=y+k|0;c[o>>2]=k;c[s>>2]=y;c[t>>2]=y+l}if(i>>>0<128){a[k>>0]=i;i=1}else{a[k>>0]=i>>>6&31|192;a[k+1>>0]=i&63|128;i=2}c[o>>2]=(c[o>>2]|0)+i}c[A>>2]=(c[A>>2]|0)+1}if((C|0)==130){g=e+12|0;c[E>>2]=g;e=D-g+768|0;if(e>>>0<72){QQ(F|0,g|0,e|0)|0;c[E>>2]=F;Lq(E,e)}e=b+800|0;Tq(E,c[e>>2]|0)|0;i=c[p>>2]|0;e=c[e>>2]|0;c[b+912>>2]=c[(c[((e|0)<0?i+68|0:i+64|0)>>2]|0)+(e<<4)+8>>2];e=c[u>>2]|0;g=c[e+16>>2]|0;if(g>>>0>=256){Kn(i,e,256);g=c[u>>2]|0;e=g;g=c[g+16>>2]|0}c[v>>2]=e;B=c[e+20>>2]|0;c[q>>2]=B;c[s>>2]=B;c[t>>2]=B+g;B=f;g=100;break}else if((C|0)==142)Jn(k,270142,50331712,268576);else if((C|0)==164)Jn(k,270142,50331712,268576);else if((C|0)==176)Jn(m,270142,50331712,268576);else if((C|0)==186)Jn(k,270142,50331712,268576);else if((C|0)==193)Jn(k,270142,50331712,268576);else if((C|0)==203)Jn(c[p>>2]|0,272404,83887018,272416);else if((C|0)==204)Jn(c[p>>2]|0,272404,83887022,272431);break}case 218:{s=b+812|0;e=c[s>>2]|0;i=c[e+16>>2]|0;u=b+780|0;if(i>>>0>=256){Kn(c[u>>2]|0,e,256);i=c[s>>2]|0;e=i;i=c[i+16>>2]|0}t=b+828|0;c[t>>2]=e;n=c[e+20>>2]|0;o=b+816|0;c[o>>2]=n;p=b+820|0;c[p>>2]=n;q=b+824|0;c[q>>2]=n+i;n=b+816|0;m=1;k:while(1){e=c[E>>2]|0;l=c[e>>2]|0;if((l|0)!=92){if((l|0)<128){if((l|0)<=-1){C=263;break}if(!(a[270885+l>>0]|0)){C=263;break}}else if((Hq(264586,1036,l)|0)==0?(Hq(265664,530,l)|0)==0:0){C=263;break}i=c[n>>2]|0;e=i;if(((c[q>>2]|0)-i|0)>>>0<6){k=c[u>>2]|0;e=i-(c[p>>2]|0)|0;i=e+70+(e>>>2)|0;if(i>>>0<e>>>0){C=252;break}Kn(k,c[t>>2]|0,i);C=c[(c[t>>2]|0)+20>>2]|0;e=C+e|0;c[n>>2]=e;c[p>>2]=C;c[q>>2]=C+i}do if(l>>>0>=128){if(l>>>0<2048){a[e>>0]=l>>>6&31|192;a[e+1>>0]=l&63|128;e=2;break}if(l>>>0<65536){a[e>>0]=l>>>12&15|224;a[e+1>>0]=l>>>6&63|128;a[e+2>>0]=l&63|128;e=3;break}else{C=l+-65536|0;a[e>>0]=-19;a[e+1>>0]=C>>>16&15|160;a[e+2>>0]=C>>>10&63|128;a[e+3>>0]=-19;a[e+4>>0]=C>>>6&15|176;a[e+5>>0]=C&63|128;e=6;break}}else{a[e>>0]=l;e=1}while(0);c[n>>2]=(c[n>>2]|0)+e;e=(c[E>>2]|0)+12|0;c[E>>2]=e;i=D-e+768|0;if(i>>>0>=72){m=0;continue}QQ(F|0,e|0,i|0)|0;c[E>>2]=F;Lq(E,i);m=0;continue}if((c[e+12>>2]|0)!=117){C=363;break}l=Uq(E,1)|0;i=c[n>>2]|0;e=i;if(((c[q>>2]|0)-i|0)>>>0<6){k=c[u>>2]|0;e=i-(c[p>>2]|0)|0;i=e+70+(e>>>2)|0;if(i>>>0<e>>>0){C=225;break}Kn(k,c[t>>2]|0,i);C=c[(c[t>>2]|0)+20>>2]|0;e=C+e|0;c[n>>2]=e;c[p>>2]=C;c[q>>2]=C+i}do if(l>>>0>=128){if(l>>>0<2048){a[e>>0]=l>>>6&31|192;a[e+1>>0]=l&63|128;e=2;break}if(l>>>0<65536){a[e>>0]=l>>>12&15|224;a[e+1>>0]=l>>>6&63|128;a[e+2>>0]=l&63|128;e=3;break}else{C=l+-65536|0;a[e>>0]=-19;a[e+1>>0]=C>>>16&15|160;a[e+2>>0]=C>>>10&63|128;a[e+3>>0]=-19;a[e+4>>0]=C>>>6&15|176;a[e+5>>0]=C&63|128;e=6;break}}else{a[e>>0]=l;e=1}while(0);c[n>>2]=(c[n>>2]|0)+e;e=(l|0)<128;do if(!m)if(e){if((l|0)<=-1){C=363;break k}if(!(a[270885+l>>0]|0)){C=363;break k}else break}else{if(Hq(264586,1036,l)|0)break;if(!(Hq(265664,530,l)|0)){C=363;break k}else break}else{if(!e)if(!(Hq(264586,1036,l)|0)){C=363;break k}else break;if((l|0)<=-1){C=363;break k}if((a[270885+l>>0]|0)<=0){C=363;break k}}while(0);c[A>>2]=(c[A>>2]|0)+1;m=0}if((C|0)==225)Jn(k,270142,50331712,268576);else if((C|0)==252)Jn(k,270142,50331712,268576);else if((C|0)==263){k=Tq(E,c[b+800>>2]|0)|0;c[b+912>>2]=k;c[G>>2]=1;e=c[s>>2]|0;g=c[e+16>>2]|0;if(g>>>0>=256){Kn(c[u>>2]|0,e,256);g=c[s>>2]|0;e=g;g=c[g+16>>2]|0}c[t>>2]=e;i=c[e+20>>2]|0;c[o>>2]=i;c[p>>2]=i;c[q>>2]=i+g;i=y<<24>>24?162:153;if(c[A>>2]|0){B=f;g=1;break}e=c[(c[u>>2]|0)+304>>2]|0;g=117;while(1){if((c[e+(g<<2)>>2]|0)==(k|0))break;g=g+1|0;if(g>>>0>=i>>>0){B=f;g=1;break e}}B=f;g=g+-115|0;break}else if((C|0)==363)Jn(c[u>>2]|0,272404,83887878,272416);break}case 271:{w=b+812|0;g=c[w>>2]|0;e=c[g+16>>2]|0;if(e>>>0<256)k=g;else{Kn(c[b+780>>2]|0,g,256);e=c[w>>2]|0;l=c[E>>2]|0;k=e;e=c[e+16>>2]|0}s=b+828|0;c[s>>2]=k;g=c[k+20>>2]|0;t=b+816|0;c[t>>2]=g;u=b+820|0;c[u>>2]=g;v=b+824|0;c[v>>2]=g+e;i=c[l+12>>2]|0;l:do if((x|0)==48)switch(i|32|0){case 120:{i=0;e=24;k=16;g=l;break l}case 111:{i=0;e=24;k=8;g=l;break l}case 98:{i=0;e=24;k=2;g=l;break l}default:{if((i+-48|0)>>>0>=10){i=0;e=0;k=10;g=l;break l}if(y<<24>>24){B=b+780|0;B=c[B>>2]|0;Jn(B,272404,83887874,272477)}if(e>>>0<6){Kn(c[b+780>>2]|0,k,70);g=c[(c[s>>2]|0)+20>>2]|0;c[t>>2]=g;c[u>>2]=g;c[v>>2]=g+70}a[g>>0]=48;c[t>>2]=(c[t>>2]|0)+1;i=1;e=12;k=8;g=c[E>>2]|0;break l}}else{i=0;e=0;k=10;g=l}while(0);g=g+e|0;c[E>>2]=g;e=D-g+768|0;if(e>>>0<72){QQ(F|0,g|0,e|0)|0;c[E>>2]=F;Lq(E,e)}o=(i|0)!=0;p=b+816|0;g=b+780|0;e=0;q=k;m:while(1){l=c[c[E>>2]>>2]|0;do if((l+-48|0)>>>0>=10){if((q|0)==16){if(l>>>0<256)if((a[270556+l>>0]|0)<0)C=291;else{m=e;n=16;break}}else C=291;if((C|0)==291?(C=0,(l|0)==46):0)if((q|0)!=10|(e|0)>0)break m;else{m=1;n=10;break}if((l|32|0)==101)if((q|0)!=10|(e|0)>1)break m;else{m=2;n=10;break}else if((e|0)!=2|(l|0)==45^(l|0)!=43)break m;else{m=3;n=q;break}}else{m=(e|0)==2?3:e;n=o&(e|0)==0&(l|1|0)==57?10:q}while(0);i=c[p>>2]|0;e=i;if(((c[v>>2]|0)-i|0)>>>0<6){k=c[g>>2]|0;e=i-(c[u>>2]|0)|0;i=e+70+(e>>>2)|0;if(i>>>0<e>>>0){C=298;break}Kn(k,c[s>>2]|0,i);B=c[(c[s>>2]|0)+20>>2]|0;e=B+e|0;c[p>>2]=e;c[u>>2]=B;c[v>>2]=B+i}do if(l>>>0>=128){if(l>>>0<2048){a[e>>0]=l>>>6&31|192;a[e+1>>0]=l&63|128;e=2;break}if(l>>>0<65536){a[e>>0]=l>>>12&15|224;a[e+1>>0]=l>>>6&63|128;a[e+2>>0]=l&63|128;e=3;break}else{B=l+-65536|0;a[e>>0]=-19;a[e+1>>0]=B>>>16&15|160;a[e+2>>0]=B>>>10&63|128;a[e+3>>0]=-19;a[e+4>>0]=B>>>6&15|176;a[e+5>>0]=B&63|128;e=6;break}}else{a[e>>0]=l;e=1}while(0);c[p>>2]=(c[p>>2]|0)+e;e=(c[E>>2]|0)+12|0;c[E>>2]=e;i=D-e+768|0;if(i>>>0>=72){e=m;q=n;continue}QQ(F|0,e|0,i|0)|0;c[E>>2]=F;Lq(E,i);e=m;q=n}if((C|0)==298)Jn(k,270142,50331712,268576);p=b+800|0;Tq(E,c[p>>2]|0)|0;i=c[g>>2]|0;k=c[p>>2]|0;l=i+68|0;m=c[l>>2]|0;if(m>>>0>=(c[i+56>>2]|0)>>>0)Un(i,1093);n=c[i+64>>2]|0;B=m-n>>4;e=((k|0)<0?B:0)+k|0;if(e>>>0>=B>>>0)jo(i,376,k);B=n+(e<<4)|0;c[l>>2]=m+16;c[m>>2]=c[B>>2];c[m+4>>2]=c[B+4>>2];c[m+8>>2]=c[B+8>>2];c[m+12>>2]=c[B+12>>2];if(c[m>>2]&8|0){B=(c[m+8>>2]|0)+4|0;c[B>>2]=(c[B>>2]|0)+1}oo(c[g>>2]|0,q,(q|0)==10?1474:1024);l=c[g>>2]|0;i=l+64|0;e=c[i>>2]|0;B=(c[l+68>>2]|0)-e>>4;k=B+-1|0;if(!B)jo(l,300,-1);r=+ho(l,e+(k<<4)|0);A=c[i>>2]|0;z=A+(k<<4)|0;B=c[z>>2]|0;A=A+(k<<4)+8|0;e=c[A>>2]|0;c[z>>2]=0;h[A>>3]=r;if(B&8|0?(A=e+4|0,B=(c[A>>2]|0)+-1|0,c[A>>2]=B,(B|0)==0):0)Yn(c[l+44>>2]|0,e);h[j>>3]=r;B=c[j+4>>2]&2147483647;if(B>>>0>2146435072|(B|0)==2146435072&(c[j>>2]|0)>>>0>0){B=g;B=c[B>>2]|0;Jn(B,272404,83887874,272477)}o=c[g>>2]|0;i=c[p>>2]|0;m=o+68|0;k=c[o+64>>2]|0;l=(c[m>>2]|0)-k>>4;if(!l)jo(o,376,-1);n=k+(l+-1<<4)|0;e=((i|0)<0?l:0)+i|0;if(e>>>0>=l>>>0)jo(o,376,i);A=k+(e<<4)|0;B=c[A>>2]|0;e=c[k+(e<<4)+8>>2]|0;c[A>>2]=c[n>>2];c[A+4>>2]=c[n+4>>2];c[A+8>>2]=c[n+8>>2];c[A+12>>2]=c[n+12>>2];c[n>>2]=2;c[m>>2]=(c[m>>2]|0)+-16;if(B&8|0?(A=e+4|0,B=(c[A>>2]|0)+-1|0,c[A>>2]=B,(B|0)==0):0)Yn(c[o+44>>2]|0,e);i=c[w>>2]|0;e=c[i+16>>2]|0;if(e>>>0>=256){Kn(c[g>>2]|0,i,256);e=c[w>>2]|0;i=e;e=c[e+16>>2]|0}c[s>>2]=i;B=c[i+20>>2]|0;c[t>>2]=B;c[u>>2]=B;c[v>>2]=B+e;e=c[c[E>>2]>>2]|0;if((e+-48|0)>>>0<10){B=g;B=c[B>>2]|0;Jn(B,272404,83887874,272477)}do if((e|0)<128){if((e|0)<=-1)break;if((a[270885+e>>0]|0)<=0)break;B=c[g>>2]|0;Jn(B,272404,83887874,272477)}else{if(!(Hq(264586,1036,e)|0))break;B=c[g>>2]|0;Jn(B,272404,83887874,272477)}while(0);h[b+904>>3]=r;B=f;g=99;break}case 343:{if((x|0)<0){B=f;g=0}else{A=b+780|0;A=c[A>>2]|0;Jn(A,272404,83887870,272463)}break}case 344:{B=f;break}case 345:{B=f;g=3122;break}case 346:{B=f;g=3125;break}case 347:{B=f;g=3126;break}case 348:{B=f;g=3123;break}case 349:{B=f;g=3124;break}case 350:{B=f;g=3128;break}case 351:{B=f;g=3129;break}case 352:{B=f;g=3153;break}case 361:{A=b+780|0;A=c[A>>2]|0;Jn(A,272404,83887870,272463);break}case 365:{Jn(c[b+780>>2]|0,272404,83887886,272520);break}}if((C|0)==96){B=f;g=(g|0)==61?6204:e}e=(c[E>>2]|0)+(g>>>8)|0;c[E>>2]=e;f=D-e+768|0;if(f>>>0<72){QQ(F|0,e|0,f|0)|0;c[E>>2]=F;Lq(E,f)}f=g&255;c[H>>2]=f;if((c[G>>2]|0)==-1)c[G>>2]=f;c[b+932>>2]=B;if(B|0){G=1;H=b+936|0;c[H>>2]=G;return}switch((g&255)<<24>>24){case 0:case 50:{G=1;H=b+936|0;c[H>>2]=G;return}default:{}}G=0;H=b+936|0;c[H>>2]=G;return}function Pq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0.0;g=c[a>>2]|0;i=(b&16|0)==0;e=i?a+896|0:a+848|0;d=(c[e+4>>2]|0)==1;a:do if(!(b&2)){if(!d){if(!(b&1))break;Jn(g,272202,83893664,272247)}b=c[e+16>>2]|0;d=g+68|0;e=c[d>>2]|0;if(e>>>0<(c[g+56>>2]|0)>>>0){c[d>>2]=e+16;c[e>>2]=8;c[e+8>>2]=b;f=b+4|0;c[f>>2]=(c[f>>2]|0)+1;f=d;j=17;break}else Un(g,4153)}else{b:do if(!d){switch(c[e>>2]|0){case 100:break b;case 99:break;default:Jn(g,272202,83893647,272220)}b=g+68|0;d=c[b>>2]|0;if(d>>>0<(c[g+56>>2]|0)>>>0){l=+h[e+8>>3];c[b>>2]=d+16;c[d>>2]=0;h[d+8>>3]=l;Eo(g,-1)|0;f=b;j=17;break a}else Un(g,4215)}while(0);b=c[e+16>>2]|0;d=g+68|0;e=c[d>>2]|0;if(e>>>0<(c[g+56>>2]|0)>>>0){c[d>>2]=e+16;c[e>>2]=8;c[e+8>>2]=b;f=b+4|0;c[f>>2]=(c[f>>2]|0)+1;f=d;j=17;break}else Un(g,4153)}while(0);if((j|0)==17?(c[a+988>>2]=c[(c[f>>2]|0)+-8>>2],i):0)Oq(a,-1);Oq(a,53);k=c[a>>2]|0;e=a+896|0;b=c[e>>2]|0;if((b|0)==54){Oq(a,-1);Nq(a,0,0,49);Qq(a);return}f=a+912|0;g=k+68|0;i=k+56|0;j=a+1040|0;d=0;while(1){if(d){Oq(a,57);b=c[e>>2]|0}if((b|0)!=1){j=24;break}b=c[f>>2]|0;d=c[g>>2]|0;if(d>>>0>=(c[i>>2]|0)>>>0){j=26;break}c[g>>2]=d+16;c[d>>2]=8;c[d+8>>2]=b;b=b+4|0;c[b>>2]=(c[b>>2]|0)+1;b=Bo(k,c[j>>2]|0)|0;mq(k,c[j>>2]|0,b);Oq(a,-1);b=c[e>>2]|0;if((b|0)==54){j=28;break}else d=1}if((j|0)==24)Jn(k,272202,83893582,272270);else if((j|0)==26)Un(k,4153);else if((j|0)==28){Oq(a,-1);Nq(a,0,0,49);Qq(a);return}}function Qq(d){d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;C=l;l=l+16|0;u=C;h=d+972|0;B=c[d>>2]|0;A=B+68|0;z=B+56|0;if((c[A>>2]|0)>>>0>=(c[z>>2]|0)>>>0)Un(B,4784);r=vo(B,64)|0;v=B+44|0;f=c[v>>2]|0;c[r>>2]=402655873;f=f+24|0;g=c[f>>2]|0;if(g|0)c[g+12>>2]=r;c[r+12>>2]=0;c[r+8>>2]=g;c[f>>2]=r;if(!r)Mn(B,268620,4797);f=c[A>>2]|0;c[f>>2]=9;c[f+8>>2]=r;f=r+4|0;c[f>>2]=(c[f>>2]|0)+1;c[A>>2]=(c[A>>2]|0)+16;f=c[B+120>>2]|0;g=r+20|0;c[g>>2]=f;if(f){x=f+4|0;y=c[x>>2]|0;c[g>>2]=0;c[x>>2]=y;if(!y)tp(c[v>>2]|0,f)}else c[g>>2]=0;if(!(a[d+1120>>0]|0)){if(a[d+1121>>0]|0?a[d+1126>>0]|0:0)c[r>>2]=c[r>>2]|262144}else{g=c[r>>2]|0;f=g|262144;c[r>>2]=f;do if(!(a[d+1134>>0]|0)){if((a[d+1131>>0]|0)==0?(a[d+1130>>0]|0)==0:0)break;f=g|1310720;c[r>>2]=f}while(0);if(a[d+1123>>0]|0?c[d+988>>2]|0:0)c[r>>2]=f|524288}if(a[d+1126>>0]|0)c[r>>2]=c[r>>2]|65536;if(a[d+1127>>0]|0)c[r>>2]=c[r>>2]|131072;if(a[d+1124>>0]|0)c[r>>2]=c[r>>2]|256;k=d+992|0;m=Zp(B,c[k>>2]|0)|0;o=d+996|0;n=Zp(B,c[o>>2]|0)|0;p=(n>>>0)/3|0;q=d+976|0;y=((c[h>>2]|0)-(c[q>>2]|0)|0)>>>3;f=(p<<2)+(m<<4)+(y<<2)|0;if((c[A>>2]|0)>>>0>=(c[z>>2]|0)>>>0)Un(B,5237);if(f>>>0>2147483646)Jn(B,268620,50336889,268576);f=ap(c[v>>2]|0,f,4,u)|0;if(!f)Mn(B,268620,5246);x=c[A>>2]|0;c[x>>2]=10;c[x+8>>2]=f;f=f+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[A>>2]|0;c[A>>2]=f+16;f=c[f+8>>2]|0;c[r+40>>2]=f;x=f+4|0;c[x>>2]=(c[x>>2]|0)+1;f=f+24|0;if(m){j=m<<2;h=f;i=0;while(1){g=c[k>>2]|0;if((c[g>>2]&32768|0)!=0?(c[g+32>>2]|0)>>>0>i>>>0:0){x=c[g+24>>2]|0;g=(c[g+16>>2]|0)+(x*21|0)+(0-x&7)+(i<<4)|0}else g=0;c[h>>2]=c[g>>2];c[h+4>>2]=c[g+4>>2];c[h+8>>2]=c[g+8>>2];c[h+12>>2]=c[g+12>>2];if(c[g>>2]&8|0){x=(c[g+8>>2]|0)+4|0;c[x>>2]=(c[x>>2]|0)+1}i=i+1|0;if((i|0)==(m|0))break;else h=h+16|0}f=f+(j<<2)|0}c[r+44>>2]=f;i=n>>>0>2;if(i){h=0;while(1){g=c[o>>2]|0;x=c[g+24>>2]|0;x=c[(c[g+16>>2]|0)+(x*21|0)+(0-x&7)+(h*3<<4)+8>>2]|0;g=f+4|0;c[f>>2]=x;x=x+4|0;c[x>>2]=(c[x>>2]|0)+1;h=h+1|0;if(h>>>0>=p>>>0)break;else f=g}}else g=f;c[r+48>>2]=g;w=c[q>>2]|0;s=(y|0)==0;if(!s){f=0;do{c[g+(f<<2)>>2]=c[w+(f<<3)>>2];f=f+1|0}while((f|0)!=(y|0))}f=c[A>>2]|0;x=B+64|0;if((f|0)==(c[x>>2]|0))Jn(B,268620,50337407,268636);p=f+-16|0;c[A>>2]=p;q=c[f+-16>>2]|0;f=c[f+-8>>2]|0;c[p>>2]=2;if(q&8|0?(p=f+4|0,q=(c[p>>2]|0)+-1|0,c[p>>2]=q,(q|0)==0):0)Yn(c[v>>2]|0,f);b[r+60>>1]=c[d+1056>>2];r=r+62|0;b[r>>1]=Zp(B,c[d+1012>>2]|0)|0;if(!(((a[d+1133>>0]|0)==0?(a[d+1131>>0]|0)==0:0)?!(i|(a[d+1130>>0]|0)!=0):0))t=55;do if((t|0)==55){g=c[d+1044>>2]|0;h=c[A>>2]|0;if(h>>>0>=(c[z>>2]|0)>>>0)Un(B,1093);i=c[x>>2]|0;q=h-i>>4;f=((g|0)<0?q:0)+g|0;if(f>>>0>=q>>>0)jo(B,376,g);q=i+(f<<4)|0;c[A>>2]=h+16;c[h>>2]=c[q>>2];c[h+4>>2]=c[q+4>>2];c[h+8>>2]=c[q+8>>2];c[h+12>>2]=c[q+12>>2];if(c[h>>2]&8|0){q=(c[h+8>>2]|0)+4|0;c[q>>2]=(c[q>>2]|0)+1}q=c[d>>2]|0;p=q+68|0;f=c[p>>2]|0;g=c[f+-8>>2]|0;o=c[g+28>>2]|0;if(!o)g=0;else{n=g+16|0;m=g+24|0;k=q+44|0;j=0;g=0;do{f=c[n>>2]|0;h=f+(c[m>>2]<<4)+(j<<2)|0;i=c[h>>2]|0;do if(i){if(!(c[f+(j<<4)>>2]|0)){g=g+1|0;break}c[h>>2]=0;f=i+4|0;h=(c[f>>2]|0)+-1|0;c[f>>2]=h;if(h|0)break;_o(c[k>>2]|0,i)}while(0);j=j+1|0}while((j|0)!=(o|0));f=c[p>>2]|0}p=c[q+64>>2]|0;f=f-p>>4;f=f|0?p+(f+-1<<4)|0:0;f=(f|0)==0?936:f;do if((c[f>>2]|0)==9){f=c[f+8>>2]|0;if(!f)break;Pp(q,f)}while(0);if((g|0)>0){q=c[x>>2]|0;f=(c[A>>2]|0)-q>>4;f=f>>>0>1?q+(f+-2<<4)|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)!=9)In(B,2130,-2,268963);f=c[f+8>>2]|0;if(!f)In(B,2130,-2,268963);else{fo(B,f,c[(c[B+304>>2]|0)+380>>2]|0,0);break}}else{f=c[A>>2]|0;if((f|0)==(c[x>>2]|0))Jn(B,268620,50337407,268636);p=f+-16|0;c[A>>2]=p;q=c[f+-16>>2]|0;f=c[f+-8>>2]|0;c[p>>2]=2;if(!(q&8))break;p=f+4|0;q=(c[p>>2]|0)+-1|0;c[p>>2]=q;if(q|0)break;Yn(c[v>>2]|0,f);break}}while(0);g=d+1040|0;f=Bo(B,c[g>>2]|0)|0;do if((f|0)==(e[r>>1]|0)){f=(f|0)!=0;if(!(a[d+1131>>0]|0))if(f&(a[d+1130>>0]|0)!=0){t=88;break}else break;else if(f){t=88;break}else break}else t=88;while(0);do if((t|0)==88){g=c[g>>2]|0;h=c[A>>2]|0;if(h>>>0>=(c[z>>2]|0)>>>0)Un(B,1093);i=c[x>>2]|0;t=h-i>>4;f=((g|0)<0?t:0)+g|0;if(f>>>0>=t>>>0)jo(B,376,g);t=i+(f<<4)|0;c[A>>2]=h+16;c[h>>2]=c[t>>2];c[h+4>>2]=c[t+4>>2];c[h+8>>2]=c[t+8>>2];c[h+12>>2]=c[t+12>>2];if(c[h>>2]&8|0){t=(c[h+8>>2]|0)+4|0;c[t>>2]=(c[t>>2]|0)+1}t=c[x>>2]|0;f=(c[A>>2]|0)-t>>4;f=f>>>0>1?t+(f+-2<<4)|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)!=9)In(B,2130,-2,268963);f=c[f+8>>2]|0;if(!f)In(B,2130,-2,268963);else{fo(B,f,c[(c[B+304>>2]|0)+376>>2]|0,0);break}}while(0);f=c[d+988>>2]|0;do if(f|0){g=c[A>>2]|0;if(g>>>0>=(c[z>>2]|0)>>>0)Un(B,4153);c[A>>2]=g+16;c[g>>2]=8;c[g+8>>2]=f;t=f+4|0;c[t>>2]=(c[t>>2]|0)+1;t=c[x>>2]|0;f=(c[A>>2]|0)-t>>4;f=f>>>0>1?t+(f+-2<<4)|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)!=9)In(B,2130,-2,268963);f=c[f+8>>2]|0;if(!f)In(B,2130,-2,268963);else{fo(B,f,c[(c[B+304>>2]|0)+352>>2]|0,0);break}}while(0);f=(y+63|0)>>>6<<3|4;if((c[A>>2]|0)>>>0>=(c[z>>2]|0)>>>0)Un(B,5237);g=ap(c[v>>2]|0,f,1,u)|0;if(!g)Mn(B,268620,5246);r=c[A>>2]|0;c[r>>2]=10;c[r+8>>2]=g;r=g+4|0;c[r>>2]=(c[r>>2]|0)+1;r=c[A>>2]|0;c[A>>2]=r+16;r=c[r+8>>2]|0;q=r+20|0;c[c[q>>2]>>2]=y;if(!s){h=0;do{Kn(B,r,f+276|0);p=c[q>>2]|0;v=h>>>5|1;g=c[w+(h<<3)+4>>2]|0;c[p+(v<<2)>>2]=g;c[p+(v+1<<2)>>2]=f;p=p+f|0;h=h+1|0;if(h>>>0<y>>>0&(h&63|0)!=0){o=g;g=0;j=0;i=0;do{k=o;o=c[w+(h<<3)+4>>2]|0;k=o-k|0;do if(!k){j=j<<1;m=i+1|0;if((i|0)<=6){i=m;break}n=6-i|0;n=(n|0)>-8?n:-8;k=m;do if(g>>>0<276){k=k+-8|0;a[p+g>>0]=j>>>k;g=g+1|0}else k=k+-8|0;while((k|0)>7);i=i+-7-(n+m&-8)|0}else{if((k+-1|0)>>>0<4){j=k+7|j<<4;i=i+4|0;if((i|0)>7)k=i;else break;do if(g>>>0<276){k=k+-8|0;a[p+g>>0]=j>>>k;g=g+1|0}else k=k+-8|0;while((k|0)>7);i=i&7;break}if((k+128|0)>>>0<256){j=k+1664|j<<11;k=i+11|0;if((k|0)<=7){i=k;break}do if(g>>>0<276){k=k+-8|0;a[p+g>>0]=j>>>k;g=g+1|0}else k=k+-8|0;while((k|0)>7);i=i+3&7;break}m=o>>>16;k=j<<19|m|458752;j=i+19|0;if((j|0)>7){do if(g>>>0<276){j=j+-8|0;a[p+g>>0]=k>>>j;g=g+1|0}else j=j+-8|0;while((j|0)>7);k=i+3&7}else k=j;j=m<<16|o&65535;i=k+16|0;if((i|0)<=7)break;do if(g>>>0<276){i=i+-8|0;a[p+g>>0]=j>>>i;g=g+1|0}else i=i+-8|0;while((i|0)>7);i=k&7}while(0);h=h+1|0}while(h>>>0<y>>>0&(h&63|0)!=0)}else{g=0;j=0;i=0}i=8-i|0;if((i|0)>0&g>>>0<276){a[p+g>>0]=j<<i;g=g+1|0}f=g+f|0}while(h>>>0<y>>>0)}Kn(B,r,f);Rq(B,0,0);y=c[x>>2]|0;f=(c[A>>2]|0)-y>>4;f=f>>>0>1?y+(f+-2<<4)|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)!=9)In(B,2130,-2,268963);f=c[f+8>>2]|0;if(!f)In(B,2130,-2,268963);h=B+304|0;fo(B,f,c[(c[h>>2]|0)+388>>2]|0,0);f=c[d+4>>2]|0;do if(f|0){g=c[A>>2]|0;if(g>>>0>=(c[z>>2]|0)>>>0)Un(B,4153);c[A>>2]=g+16;c[g>>2]=8;c[g+8>>2]=f;z=f+4|0;c[z>>2]=(c[z>>2]|0)+1;z=c[x>>2]|0;f=(c[A>>2]|0)-z>>4;f=f>>>0>1?z+(f+-2<<4)|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)!=9)In(B,2130,-2,268963);f=c[f+8>>2]|0;if(!f)In(B,2130,-2,268963);else{fo(B,f,c[(c[h>>2]|0)+356>>2]|0,0);break}}while(0);z=c[x>>2]|0;f=(c[A>>2]|0)-z>>4;f=f|0?z+(f+-1<<4)|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)!=9){l=C;return}f=c[f+8>>2]|0;if(!f){l=C;return}Pp(B,f);l=C;return}function Rq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+16|0;n=s;r=a+68|0;e=c[r>>2]|0;o=a+64|0;g=c[o>>2]|0;f=e-g|0;i=f>>4;q=i+-1|0;if(!i)jo(a,300,-1);p=(f|0)<16;f=(p?i:0)+q|0;f=f>>>0<i>>>0?g+(f<<4)|0:0;f=(f|0)==0?936:f;do if((c[f>>2]|0)==10?(j=c[f+8>>2]|0,(j|0)!=0):0){g=c[j>>2]|0;if(!(g&128))i=j+24|0;else i=c[j+20>>2]|0;h=c[j+16>>2]|0;f=(d|0)==2;if((g>>>7&1|0)==(d|0))if(f|(g&256|0)==0)break;else{k=h;m=15;break}else if(f)break;else{k=h;m=15;break}}else m=11;while(0);do if((m|0)==11){Eo(a,q)|0;f=c[r>>2]|0;k=c[o>>2]|0;j=f-k>>4;e=(p?j:0)+q|0;e=e>>>0<j>>>0?k+(e<<4)|0:0;e=(e|0)==0?936:e;if((c[e>>2]|0)!=8)In(a,2101,q,287721);e=c[e+8>>2]|0;if(!e)In(a,2101,q,287721);else{i=e+28|0;k=c[e+20>>2]|0;e=f;m=15;break}}while(0);if((m|0)==15){if(e>>>0>=(c[a+56>>2]|0)>>>0)Un(a,5237);if(k>>>0>2147483646)Jn(a,268620,50336889,268576);j=a+44|0;e=ap(c[j>>2]|0,k,(d|0)==1&1,n)|0;if(!e)Mn(a,268620,5246);d=c[r>>2]|0;c[d>>2]=10;c[d+8>>2]=e;e=e+4|0;c[e>>2]=(c[e>>2]|0)+1;e=(c[r>>2]|0)+16|0;c[r>>2]=e;if(k){PQ(c[n>>2]|0,i|0,k|0)|0;e=c[r>>2]|0}g=c[o>>2]|0;f=e-g>>4;if(!f)jo(a,376,-1);h=g+(f+-1<<4)|0;e=(p?f:0)+q|0;if(e>>>0>=f>>>0)jo(a,376,q);q=g+(e<<4)|0;a=c[q>>2]|0;e=c[g+(e<<4)+8>>2]|0;c[q>>2]=c[h>>2];c[q+4>>2]=c[h+4>>2];c[q+8>>2]=c[h+8>>2];c[q+12>>2]=c[h+12>>2];c[h>>2]=2;c[r>>2]=(c[r>>2]|0)+-16;if((a&8|0)!=0?(a=e+4|0,r=(c[a>>2]|0)+-1|0,c[a>>2]=r,(r|0)==0):0){Yn(c[j>>2]|0,e);h=k}else h=k}if(!b){l=s;return}c[b>>2]=h;l=s;return}function Sq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=c[a+64>>2]|0;e=(c[a+68>>2]|0)-h>>4;f=((b|0)<0?e:0)+b|0;if(f>>>0>=e>>>0)jo(a,376,b);g=h+(f<<4)|0;b=((d|0)<0?e:0)+d|0;if(b>>>0>=e>>>0)jo(a,376,d);d=h+(b<<4)|0;if(c[g>>2]&8|0){f=(c[h+(f<<4)+8>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)+1}if(!(c[d>>2]&8)){c[d>>2]=c[g>>2];c[d+4>>2]=c[g+4>>2];c[d+8>>2]=c[g+8>>2];c[d+12>>2]=c[g+12>>2];return}b=c[h+(b<<4)+8>>2]|0;c[d>>2]=c[g>>2];c[d+4>>2]=c[g+4>>2];c[d+8>>2]=c[g+8>>2];c[d+12>>2]=c[g+12>>2];g=b+4|0;h=(c[g>>2]|0)+-1|0;c[g>>2]=h;if(h|0)return;Yn(c[a+44>>2]|0,b);return}function Tq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=a+772|0;d=c[j>>2]|0;e=c[a+812>>2]|0;f=d+68|0;if((c[f>>2]|0)>>>0>=(c[d+56>>2]|0)>>>0)Un(d,4300);a=(e|0)==0?0:(c[a+808>>2]|0)-e|0;if((a|0)<0)Jn(d,268620,50335961,268982);g=Oo(d,e,a)|0;d=c[f>>2]|0;c[f>>2]=d+16;c[d>>2]=8;c[d+8>>2]=g;f=g+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[j>>2]|0;g=f+68|0;d=c[f+64>>2]|0;e=(c[g>>2]|0)-d>>4;if(!e)jo(f,376,-1);h=d+(e+-1<<4)|0;i=(b|0)<0;a=(i?e:0)+b|0;if(a>>>0>=e>>>0)jo(f,376,b);k=d+(a<<4)|0;e=c[k>>2]|0;a=c[d+(a<<4)+8>>2]|0;c[k>>2]=c[h>>2];c[k+4>>2]=c[h+4>>2];c[k+8>>2]=c[h+8>>2];c[k+12>>2]=c[h+12>>2];c[h>>2]=2;c[g>>2]=(c[g>>2]|0)+-16;if(e&8|0?(h=a+4|0,k=(c[h>>2]|0)+-1|0,c[h>>2]=k,(k|0)==0):0)Yn(c[f+44>>2]|0,a);k=c[j>>2]|0;return c[(c[(i?k+68|0:k+64|0)>>2]|0)+(b<<4)+8>>2]|0}function Uq(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0;e=c[b>>2]|0;if((c[e+12>>2]|0)==117){d=d|0?(c[e+24>>2]|0)==123:0;f=d?0:4;d=d?36:24}else{f=2;d=24}d=e+d|0;c[b>>2]=d;i=b+4|0;j=i;e=j-d+768|0;if(e>>>0<72){QQ(i|0,d|0,e|0)|0;c[b>>2]=i;Lq(b,e);d=0;g=f}else{d=0;g=f}while(1){e=c[b>>2]|0;h=c[e>>2]|0;e=e+12|0;c[b>>2]=e;f=j-e+768|0;if(f>>>0<72){QQ(i|0,e|0,f|0)|0;c[b>>2]=i;Lq(b,f)}if(h>>>0<256){f=a[270556+h>>0]|0;f=(f<<24>>24>-1?f:-1)<<24>>24}else f=-1;if((g|0)>0){e=g+-1|0;if((f|0)<0){e=15;break}d=f+(d<<4)|0;if(!e){e=16;break}else{g=e;continue}}else{if((f|0)<=-1){e=14;break}d=f+(d<<4)|0;if((d|0)>1114111){e=15;break}else{g=-1;continue}}}if((e|0)==14)if((g|0)==0|(h|0)!=125){b=b+772|0;b=c[b>>2]|0;Jn(b,272404,83886822,272416)}else{b=d;return b|0}else if((e|0)==15){b=b+772|0;b=c[b>>2]|0;Jn(b,272404,83886822,272416)}else if((e|0)==16)return d|0;return 0}function Vq(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0;o=l;l=l+32|0;m=o;n=c[a>>2]|0;k=n+68|0;g=c[k>>2]|0;e=c[n+52>>2]|0;f=g-e+768|0;e=e+f|0;i=n+56|0;j=c[i>>2]|0;h=g;do if(j>>>0<e>>>0)if((c[n+60>>2]|0)>>>0<e>>>0){lo(n,f,1)|0;f=c[k>>2]|0;g=f;e=c[i>>2]|0;break}else{c[i>>2]=e;f=h;break}else{f=h;e=j}while(0);j=m+4|0;c[j>>2]=0;c[j+4>>2]=0;c[j+8>>2]=0;c[j+12>>2]=0;c[j+16>>2]=0;c[j+20>>2]=0;c[m>>2]=1;c[m+8>>2]=1;j=g-(c[n+64>>2]|0)>>4;c[m+16>>2]=j;c[m+28>>2]=j+1;if(f>>>0>=e>>>0)Un(n,4162);j=f+16|0;c[k>>2]=j;if(j>>>0>=e>>>0)Un(n,4162);c[k>>2]=f+32;e=a+896|0;f=c[e>>2]|0;if(!d){if((f|0)==50){Oq(a,-1);uq(n);l=o;return}do _q(a,m,b);while((c[e>>2]|0)!=50);Oq(a,-1);uq(n);l=o;return}else{if(!f){Oq(a,-1);uq(n);l=o;return}do _q(a,m,b);while((c[e>>2]|0)!=0);Oq(a,-1);uq(n);l=o;return}}function Wq(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0,i=0,k=0,l=0;i=a+68|0;g=a+64|0;e=c[g>>2]|0;l=(c[i>>2]|0)-e>>4;k=(b|0)<0;d=(k?l:0)+b|0;if(d>>>0>=l>>>0)jo(a,376,b);f=+ho(a,e+(d<<4)|0);h[j>>3]=f;d=c[j>>2]|0;e=c[j+4>>2]|0;if(0==0&(e&2146435072|0)==2146435072)f=(d|0)!=0|(e&1048575|0)!=0?0.0:f;else{f=+A(+(+B(+f)));f=(e|0)>-1|(e|0)==-1&d>>>0>4294967295?f:-f}e=c[g>>2]|0;l=(c[i>>2]|0)-e>>4;d=(k?l:0)+b|0;if(d>>>0>=l>>>0)jo(a,376,b);k=e+(d<<4)|0;l=c[k>>2]|0;b=e+(d<<4)+8|0;d=c[b>>2]|0;c[k>>2]=0;h[b>>3]=f;if(!(l&8))return;b=d+4|0;l=(c[b>>2]|0)+-1|0;c[b>>2]=l;if(l|0)return;Yn(c[a+44>>2]|0,d);return}function Xq(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;if((f&2147418112)>>>0>=65536){r=c[b>>2]|0;Jn(r,272202,50333202,272577)}if((e|0)<256){n=e<<8|d&255|f<<16;l=b+980|0;m=b+972|0;h=c[m>>2]|0;i=h;do if(((c[l>>2]|0)-i|0)>>>0<=7){j=c[b>>2]|0;k=b+976|0;h=i-(c[k>>2]|0)|0;i=h+72+(h>>>2)|0;if(i>>>0<h>>>0)Jn(j,270142,50331712,268576);else{r=b+984|0;Kn(j,c[r>>2]|0,i);r=c[(c[r>>2]|0)+20>>2]|0;o=r+h|0;c[m>>2]=o;c[k>>2]=r;c[l>>2]=r+i;break}}else o=h;while(0);i=o+8|0;c[m>>2]=i;h=c[b+876>>2]|0;if(!h)h=c[b+924>>2]|0;c[o>>2]=n;c[o+4>>2]=h;if((h|0)>2147418112?1:(i-(c[b+976>>2]|0)|0)>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);else return}if(d&256|0){r=c[b>>2]|0;Jn(r,272202,50333202,272577)}if((d&240|0)==176){a[b+1135>>0]=1;i=c[b+1060>>2]|0;h=e+32768|0;if(h>>>0<65536)Xq(b,4,i,h);else{Xq(b,4,i,(e>>>16)+32768|0);Xq(b,5,i,e&65535)}n=d&247|f<<16|i<<8|8;l=b+980|0;m=b+972|0;h=c[m>>2]|0;i=h;do if(((c[l>>2]|0)-i|0)>>>0<=7){j=c[b>>2]|0;k=b+976|0;h=i-(c[k>>2]|0)|0;i=h+72+(h>>>2)|0;if(i>>>0<h>>>0)Jn(j,270142,50331712,268576);else{r=b+984|0;Kn(j,c[r>>2]|0,i);r=c[(c[r>>2]|0)+20>>2]|0;p=r+h|0;c[m>>2]=p;c[k>>2]=r;c[l>>2]=r+i;break}}else p=h;while(0);i=p+8|0;c[m>>2]=i;h=c[b+876>>2]|0;if(!h)h=c[b+924>>2]|0;c[p>>2]=n;c[p+4>>2]=h;if((h|0)>2147418112?1:(i-(c[b+976>>2]|0)|0)>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);else return}if((e|0)>=65536){r=c[b>>2]|0;Jn(r,272202,50333202,272577)}a[b+1135>>0]=1;q=c[b+1060>>2]<<8;r=f<<16|d&255|q;if(!(d&2048)){f=b+980|0;h=c[f>>2]|0;d=b+972|0;i=c[d>>2]|0;j=i;do if((h-j|0)>>>0<=7){k=c[b>>2]|0;l=b+976|0;h=j-(c[l>>2]|0)|0;i=h+72+(h>>>2)|0;if(i>>>0<h>>>0)Jn(k,270142,50331712,268576);else{v=b+984|0;Kn(k,c[v>>2]|0,i);v=c[(c[v>>2]|0)+20>>2]|0;s=v+h|0;c[d>>2]=s;c[l>>2]=v;v=v+i|0;c[f>>2]=v;break}}else{s=i;v=h}while(0);k=s+8|0;c[d>>2]=k;p=b+876|0;l=c[p>>2]|0;m=k;if(!l)i=c[b+924>>2]|0;else i=l;c[s>>2]=r;c[s+4>>2]=i;n=b+976|0;h=c[n>>2]|0;o=m-h|0;if((i|0)>2147418112|o>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);j=e<<16|q|1;do if((v-m|0)>>>0<=7){h=c[b>>2]|0;i=o+72+(o>>>2)|0;if(i>>>0<o>>>0)Jn(h,270142,50331712,268576);else{A=b+984|0;Kn(h,c[A>>2]|0,i);A=c[(c[A>>2]|0)+20>>2]|0;z=A+o|0;c[d>>2]=z;c[n>>2]=A;c[f>>2]=A+i;g=c[p>>2]|0;break}}else{z=k;g=l;A=h}while(0);h=z+8|0;c[d>>2]=h;if(!g)g=c[b+924>>2]|0;c[z>>2]=j;c[z+4>>2]=g;if((g|0)>2147418112|(h-A|0)>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);else return}else{l=q|e<<16;o=b+980|0;g=c[o>>2]|0;p=b+972|0;h=c[p>>2]|0;i=h;do if((g-i|0)>>>0<=7){j=c[b>>2]|0;k=b+976|0;g=i-(c[k>>2]|0)|0;h=g+72+(g>>>2)|0;if(h>>>0<g>>>0)Jn(j,270142,50331712,268576);else{u=b+984|0;Kn(j,c[u>>2]|0,h);u=c[(c[u>>2]|0)+20>>2]|0;t=u+g|0;c[p>>2]=t;c[k>>2]=u;u=u+h|0;c[o>>2]=u;break}}else{t=h;u=g}while(0);i=t+8|0;c[p>>2]=i;n=b+876|0;j=c[n>>2]|0;k=i;if(!j)h=c[b+924>>2]|0;else h=j;c[t>>2]=l;c[t+4>>2]=h;l=b+976|0;g=c[l>>2]|0;m=k-g|0;if((h|0)>2147418112|m>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);do if((u-k|0)>>>0<=7){g=c[b>>2]|0;h=m+72+(m>>>2)|0;if(h>>>0<m>>>0)Jn(g,270142,50331712,268576);else{y=b+984|0;Kn(g,c[y>>2]|0,h);y=c[(c[y>>2]|0)+20>>2]|0;x=y+m|0;c[p>>2]=x;c[l>>2]=y;c[o>>2]=y+h;w=c[n>>2]|0;break}}else{x=i;w=j;y=g}while(0);h=x+8|0;c[p>>2]=h;if(!w)g=c[b+924>>2]|0;else g=w;c[x>>2]=r;c[x+4>>2]=g;if((g|0)>2147418112|(h-y|0)>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);else return}}function Yq(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c[a>>2]|0;d=a+1020|0;f=Bo(l,c[d>>2]|0)|0;j=l+68|0;g=(c[j>>2]|0)+-16|0;h=(f|0)<256?f:256;do if((f|0)>0){b=a+992|0;k=0;while(1){m=c[b>>2]|0;e=c[m+24>>2]|0;if(mp(0,g,(c[m+16>>2]|0)+(e*21|0)+(0-e&7)+(k<<4)|0,1)|0)break;e=k+1|0;if((e|0)<(h|0))k=e;else{i=10;break}}if((i|0)==10){if((f|0)<=65535)break;Jn(c[a>>2]|0,272202,50333638,272651)}a=c[j>>2]|0;if((a|0)==(c[l+64>>2]|0))Jn(l,268620,50337407,268636);i=a+-16|0;c[j>>2]=i;m=c[a+-16>>2]|0;a=c[a+-8>>2]|0;c[i>>2]=2;if(!(m&8)){m=k;m=m|-2147483648;return m|0}j=a+4|0;m=(c[j>>2]|0)+-1|0;c[j>>2]=m;if(m|0){m=k;m=m|-2147483648;return m|0}Yn(c[l+44>>2]|0,a);m=k;m=m|-2147483648;return m|0}while(0);mq(l,c[d>>2]|0,f);m=f;m=m|-2147483648;return m|0}function Zq(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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;I=d&255;do if((e|0)>=256){if(!((d&256|0)==0&(e|0)<65536)){q=c[b>>2]|0;Jn(q,272202,50333104,272577)}a[b+1135>>0]=1;q=c[b+1060>>2]|0;if(!(d&2048)){if(!((I|0)==172&(e|0)>65534)){x=q;C=e;break}p=c[b>>2]|0;Jn(p,272202,50333104,272577)}p=q<<8|e<<16;n=b+980|0;o=b+972|0;e=c[o>>2]|0;k=e;do if(((c[n>>2]|0)-k|0)>>>0<=7){l=c[b>>2]|0;m=b+976|0;e=k-(c[m>>2]|0)|0;k=e+72+(e>>>2)|0;if(k>>>0<e>>>0)Jn(l,270142,50331712,268576);else{r=b+984|0;Kn(l,c[r>>2]|0,k);l=c[(c[r>>2]|0)+20>>2]|0;r=l+e|0;c[o>>2]=r;c[m>>2]=l;c[n>>2]=l+k;break}}else r=e;while(0);k=r+8|0;c[o>>2]=k;e=c[b+876>>2]|0;if(!e)e=c[b+924>>2]|0;c[r>>2]=p;c[r+4>>2]=e;if((e|0)>2147418112?1:(k-(c[b+976>>2]|0)|0)>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);else{x=q;C=-1}}else{x=e;C=-1}while(0);do if((f|0)<0){e=f&2147483647;if(e>>>0<256){w=d>>>14&1;M=e;A=d;N=-1;break}if(e>>>0>=65536){s=c[b>>2]|0;Jn(s,272202,50333104,272577)}a[b+1135>>0]=1;q=c[b+1064>>2]|0;p=f<<16|q<<8|3;n=b+980|0;o=b+972|0;e=c[o>>2]|0;k=e;do if(((c[n>>2]|0)-k|0)>>>0<=7){l=c[b>>2]|0;m=b+976|0;e=k-(c[m>>2]|0)|0;k=e+72+(e>>>2)|0;if(k>>>0<e>>>0)Jn(l,270142,50331712,268576);else{s=b+984|0;Kn(l,c[s>>2]|0,k);s=c[(c[s>>2]|0)+20>>2]|0;t=s+e|0;c[o>>2]=t;c[m>>2]=s;c[n>>2]=s+k;break}}else t=e;while(0);k=t+8|0;c[o>>2]=k;e=c[b+876>>2]|0;if(!e)e=c[b+924>>2]|0;c[t>>2]=p;c[t+4>>2]=e;if((e|0)>2147418112?1:(k-(c[b+976>>2]|0)|0)>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);else{w=0;M=q;A=d;N=-1}}else if((f|0)>=256){if(!((d&512|0)==0&(f|0)<65536)){t=c[b>>2]|0;Jn(t,272202,50333104,272577)}a[b+1135>>0]=1;q=c[b+1064>>2]|0;if(!(d&4096)){if((I|4|0)==198){e=f+32768|0;if(e>>>0<65536)Xq(b,4,q,e);else{Xq(b,4,q,(f>>>16)+32768|0);Xq(b,5,q,f&65535)}w=0;M=q;A=d+1|0;N=-1;break}p=q<<8|f<<16;n=b+980|0;o=b+972|0;e=c[o>>2]|0;k=e;do if(((c[n>>2]|0)-k|0)>>>0<=7){l=c[b>>2]|0;m=b+976|0;e=k-(c[m>>2]|0)|0;k=e+72+(e>>>2)|0;if(k>>>0<e>>>0)Jn(l,270142,50331712,268576);else{t=b+984|0;Kn(l,c[t>>2]|0,k);t=c[(c[t>>2]|0)+20>>2]|0;s=t+e|0;c[o>>2]=s;c[m>>2]=t;c[n>>2]=t+k;break}}else s=e;while(0);k=s+8|0;c[o>>2]=k;e=c[b+876>>2]|0;if(!e)e=c[b+924>>2]|0;c[s>>2]=p;c[s+4>>2]=e;if((e|0)>2147418112?1:(k-(c[b+976>>2]|0)|0)>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);else{w=0;M=q;A=d;N=-1}}else{w=0;M=q;A=d;N=f}}else{w=0;M=f;A=d;N=-1}while(0);do if((g|0)<0){e=g&2147483647;if(e>>>0<256){Q=e;R=-1;y=A>>>13&2|w;break}if(e>>>0>=65536){u=c[b>>2]|0;Jn(u,272202,50333104,272577)}a[b+1135>>0]=1;q=c[b+1068>>2]|0;p=g<<16|q<<8|3;n=b+980|0;o=b+972|0;e=c[o>>2]|0;k=e;do if(((c[n>>2]|0)-k|0)>>>0<=7){l=c[b>>2]|0;m=b+976|0;e=k-(c[m>>2]|0)|0;k=e+72+(e>>>2)|0;if(k>>>0<e>>>0)Jn(l,270142,50331712,268576);else{u=b+984|0;Kn(l,c[u>>2]|0,k);u=c[(c[u>>2]|0)+20>>2]|0;v=u+e|0;c[o>>2]=v;c[m>>2]=u;c[n>>2]=u+k;break}}else v=e;while(0);k=v+8|0;c[o>>2]=k;e=c[b+876>>2]|0;if(!e)e=c[b+924>>2]|0;c[v>>2]=p;c[v+4>>2]=e;if((e|0)>2147418112?1:(k-(c[b+976>>2]|0)|0)>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);else{Q=q;R=-1;y=w}}else if((g|0)>=256){if(!((g|0)<65536&(A&1024|0)==0)){v=c[b>>2]|0;Jn(v,272202,50333104,272577)}a[b+1135>>0]=1;q=c[b+1068>>2]|0;if(!(A&8192)){p=q<<8|g<<16;n=b+980|0;o=b+972|0;e=c[o>>2]|0;k=e;do if(((c[n>>2]|0)-k|0)>>>0<=7){l=c[b>>2]|0;m=b+976|0;e=k-(c[m>>2]|0)|0;k=e+72+(e>>>2)|0;if(k>>>0<e>>>0)Jn(l,270142,50331712,268576);else{v=b+984|0;Kn(l,c[v>>2]|0,k);v=c[(c[v>>2]|0)+20>>2]|0;u=v+e|0;c[o>>2]=u;c[m>>2]=v;c[n>>2]=v+k;break}}else u=e;while(0);k=u+8|0;c[o>>2]=k;e=c[b+876>>2]|0;if(!e)e=c[b+924>>2]|0;c[u>>2]=p;c[u+4>>2]=e;if((e|0)>2147418112?1:(k-(c[b+976>>2]|0)|0)>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);else{Q=q;R=-1;y=w}}else{Q=q;R=g;y=w}}else{Q=g;R=-1;y=w}while(0);p=x<<8;o=M<<16|p|A&255|Q<<24|y;f=b+980|0;e=c[f>>2]|0;s=b+972|0;k=c[s>>2]|0;l=k;do if((e-l|0)>>>0<=7){m=c[b>>2]|0;n=b+976|0;e=l-(c[n>>2]|0)|0;k=e+72+(e>>>2)|0;if(k>>>0<e>>>0)Jn(m,270142,50331712,268576);else{B=b+984|0;Kn(m,c[B>>2]|0,k);B=c[(c[B>>2]|0)+20>>2]|0;z=B+e|0;c[s>>2]=z;c[n>>2]=B;B=B+k|0;c[f>>2]=B;break}}else{z=k;B=e}while(0);l=z+8|0;c[s>>2]=l;r=b+876|0;m=c[r>>2]|0;n=l;if(!m)k=c[b+924>>2]|0;else k=m;c[z>>2]=o;c[z+4>>2]=k;q=b+976|0;e=c[q>>2]|0;o=n-e|0;if((k|0)>2147418112|o>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);if(A&32768){c[b+968>>2]=o>>>3;do if((B-n|0)>>>0<=7){e=c[b>>2]|0;k=o+72+(o>>>2)|0;if(k>>>0<o>>>0)Jn(e,270142,50331712,268576);else{F=b+984|0;Kn(e,c[F>>2]|0,k);F=c[(c[F>>2]|0)+20>>2]|0;D=F+o|0;c[s>>2]=D;c[q>>2]=F;G=F+k|0;c[f>>2]=G;E=c[r>>2]|0;break}}else{D=l;E=m;F=e;G=B}while(0);k=D+8|0;c[s>>2]=k;l=k;if(!E)e=c[b+924>>2]|0;else e=E;c[D>>2]=2;c[D+4>>2]=e;if((e|0)>2147418112|(l-F|0)>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);else{U=k;V=G;X=l;Y=F;W=E}}else{U=l;V=B;X=n;Y=e;W=m}if((C|0)>-1){o=C<<16;n=o|p|1;do if((V-U|0)>>>0<=7){e=c[b>>2]|0;k=X-Y|0;l=k+72+(k>>>2)|0;if(l>>>0<k>>>0)Jn(e,270142,50331712,268576);else{K=b+984|0;Kn(e,c[K>>2]|0,l);K=c[(c[K>>2]|0)+20>>2]|0;H=K+k|0;c[s>>2]=H;c[q>>2]=K;L=K+l|0;c[f>>2]=L;J=c[r>>2]|0;break}}else{H=U;J=W;K=Y;L=V}while(0);k=H+8|0;c[s>>2]=k;m=k;if(!J)e=c[b+924>>2]|0;else e=J;c[H>>2]=n;c[H+4>>2]=e;n=m-K|0;if((e|0)>2147418112|n>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);if((I|0)!=172)return;l=o+65536|p+256|1;do if((L-m|0)>>>0<=7){e=c[b>>2]|0;k=n+72+(n>>>2)|0;if(k>>>0<n>>>0)Jn(e,270142,50331712,268576);else{P=b+984|0;Kn(e,c[P>>2]|0,k);P=c[(c[P>>2]|0)+20>>2]|0;O=P+n|0;c[s>>2]=O;c[q>>2]=P;c[f>>2]=P+k;j=c[r>>2]|0;break}}else{O=k;j=J;P=K}while(0);e=O+8|0;c[s>>2]=e;if(!j)j=c[b+924>>2]|0;c[O>>2]=l;c[O+4>>2]=j;if((j|0)>2147418112|(e-P|0)>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);else return}if((N|0)>-1){l=M<<8|N<<16|1;do if((V-U|0)>>>0<=7){j=c[b>>2]|0;e=X-Y|0;k=e+72+(e>>>2)|0;if(k>>>0<e>>>0)Jn(j,270142,50331712,268576);else{T=b+984|0;Kn(j,c[T>>2]|0,k);T=c[(c[T>>2]|0)+20>>2]|0;S=T+e|0;c[s>>2]=S;c[q>>2]=T;c[f>>2]=T+k;i=c[r>>2]|0;break}}else{S=U;i=W;T=Y}while(0);j=S+8|0;c[s>>2]=j;if(!i)i=c[b+924>>2]|0;c[S>>2]=l;c[S+4>>2]=i;if((i|0)>2147418112|(j-T|0)>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);else return}if((R|0)<=-1)return;k=Q<<8|R<<16|1;do if((V-U|0)>>>0<=7){e=c[b>>2]|0;i=X-Y|0;j=i+72+(i>>>2)|0;if(j>>>0<i>>>0)Jn(e,270142,50331712,268576);else{_=b+984|0;Kn(e,c[_>>2]|0,j);_=c[(c[_>>2]|0)+20>>2]|0;Z=_+i|0;c[s>>2]=Z;c[q>>2]=_;c[f>>2]=_+j;h=c[r>>2]|0;break}}else{Z=U;h=W;_=Y}while(0);i=Z+8|0;c[s>>2]=i;if(!h)h=c[b+924>>2]|0;c[Z>>2]=k;c[Z+4>>2]=h;if((h|0)>2147418112|(i-_|0)>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);else return}function _q(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0.0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0;Sa=l;l=l+16|0;x=Sa+4|0;z=Sa;pa=c[b>>2]|0;Ra=b+960|0;g=c[Ra>>2]|0;if((g|0)>=(c[b+964>>2]|0))Jn(pa,272202,50332059,272541);c[Ra>>2]=g+1;Na=b+1052|0;Oa=c[Na>>2]|0;Ka=b+972|0;La=b+976|0;Ja=((c[Ka>>2]|0)-(c[La>>2]|0)|0)>>>3;Pa=b+1032|0;Qa=Bo(pa,c[Pa>>2]|0)|0;ma=b+1092|0;c[ma>>2]=(c[ma>>2]|0)+1;ma=b+1128|0;m=a[ma>>0]|0;a[ma>>0]=0;Ia=b+896|0;Ca=b+1072|0;Da=b+1076|0;Ea=b+1080|0;Fa=b+1084|0;Ga=b+1088|0;j=b+848|0;n=b+864|0;k=pa+304|0;g=-1;a:while(1){i=c[Ia>>2]|0;switch(i|0){case 9:case 12:case 19:case 27:{Ma=$q(b,g)|0;ar(b,c[(c[k>>2]|0)+60>>2]|0,Ja,Ma);i=c[Ia>>2]|0;break}default:Ma=g}switch(i|0){case 13:{Ha=7;break a}case 49:{Ha=14;break a}case 25:{Ha=16;break a}case 24:{Ha=19;break a}case 56:{f=2;Ha=470;break a}case 14:{Ha=22;break a}case 9:{Ha=46;break a}case 27:{Ha=54;break a}case 12:{Ha=70;break a}case 2:case 5:{Ha=175;break a}case 18:{Ha=205;break a}case 28:{Ha=235;break a}case 19:{Ha=271;break a}case 21:{Ha=325;break a}case 22:{Ha=331;break a}case 6:{Ha=452;break a}default:{}}g=c[b>>2]|0;c[Ca>>2]=0;c[Da>>2]=0;c[Ea>>2]=0;c[Fa>>2]=1;c[Ga>>2]=1;dr(b,d,4);switch(c[Ca>>2]|0){case 0:{Ha=454;break a}case 1:break;default:{f=3;Ha=467;break a}}if(c[Da>>2]|0){f=3;Ha=467;break}g=c[j>>2]|0;if((g|0)!=1){Ha=459;break}if((c[Ia>>2]|0)!=85){f=3;Ha=467;break}e=c[n>>2]|0;Oq(b,-1);g=$q(b,Ma)|0;ar(b,e,Ja,g);e=0}b:switch(Ha|0){case 7:{if((e|0)==0?a[b+1126>>0]|0:0)Jn(pa,272202,83892481,272663);Oq(b,-1);f=br(b,9)|0;if(a[b+1129>>0]|0){g=b+1028|0;e=Bo(pa,c[g>>2]|0)|0;mq(pa,c[g>>2]|0,e);i=pa+68|0;j=c[i>>2]|0;if(j>>>0<(c[pa+56>>2]|0)>>>0){c[i>>2]=j+16;c[j>>2]=0;h[j+8>>3]=+(f<<8|1|0);mq(pa,c[g>>2]|0,e+1|0);Ha=476;break}else Un(pa,4244)}else Ha=476;break}case 14:{Oq(b,-1);Vq(b,0,0);if((Ma|0)>-1){f=c[La>>2]|0;g=f;f=(c[Ka>>2]|0)-f|0;Ha=477;break}else{c[Na>>2]=Oa;Oa=c[b>>2]|0;Pa=c[Pa>>2]|0;Iq(Oa,Pa,Qa);Pa=b+1008|0;Pa=c[Pa>>2]|0;b=Qa*20|0;Kn(Oa,Pa,b);b=c[Ra>>2]|0;b=b+-1|0;c[Ra>>2]=b;l=Sa;return}}case 16:{Oq(b,-1);cr(b,d,1024,x,z);if((c[Ia>>2]|0)==57)do{Oq(b,-1);cr(b,d,1024,x,z)}while((c[Ia>>2]|0)==57);f=2;Ha=470;break}case 19:{Oq(b,-1);cr(b,d,0,x,z);if((c[Ia>>2]|0)==57)do{Oq(b,-1);cr(b,d,0,x,z)}while((c[Ia>>2]|0)==57);f=2;Ha=470;break}case 22:{i=c[Na>>2]|0;Oq(b,-1);Oq(b,53);f=c[b>>2]|0;c[Ca>>2]=0;c[Da>>2]=0;c[Ea>>2]=0;c[Fa>>2]=1;c[Ga>>2]=1;dr(b,d,4);if((c[Ca>>2]|0)==0?(c[Da>>2]|0)==0:0)Jn(f,272202,83891003,272694);er(b,d,-1);f=fr(b,d+8|0,-1,1)|0;c[d>>2]=1;c[d+8>>2]=2;c[d+12>>2]=f;Xq(b,f>>>31|48,0,f);f=c[Ka>>2]|0;g=c[La>>2]|0;e=f-g|0;m=e>>>3;k=b+980|0;do if(((c[k>>2]|0)-f|0)>>>0<=7){f=c[b>>2]|0;g=e+72+(e>>>2)|0;if(g>>>0<e>>>0)Jn(f,270142,50331712,268576);else{w=b+984|0;Kn(f,c[w>>2]|0,g);w=c[(c[w>>2]|0)+20>>2]|0;v=w+e|0;c[Ka>>2]=v;c[La>>2]=w;c[k>>2]=w+g;break}}else{v=f;w=g}while(0);g=v+8|0;c[Ka>>2]=g;j=b+876|0;f=c[j>>2]|0;if(!f)f=c[b+924>>2]|0;c[v>>2]=2;c[v+4>>2]=f;if((f|0)>2147418112|(g-w|0)>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);c[Na>>2]=i;Oq(b,54);_q(b,d,0);do if((c[Ia>>2]|0)==10){Oq(b,-1);f=c[Ka>>2]|0;g=c[La>>2]|0;e=f-g|0;i=e>>>3;do if(((c[k>>2]|0)-f|0)>>>0<=7){f=c[b>>2]|0;g=e+72+(e>>>2)|0;if(g>>>0<e>>>0)Jn(f,270142,50331712,268576);else{L=b+984|0;Kn(f,c[L>>2]|0,g);L=c[(c[L>>2]|0)+20>>2]|0;I=L+e|0;c[Ka>>2]=I;c[La>>2]=L;c[k>>2]=L+g;break}}else{I=f;L=g}while(0);e=I+8|0;c[Ka>>2]=e;f=c[j>>2]|0;if(!f)g=c[b+924>>2]|0;else g=f;c[I>>2]=2;c[I+4>>2]=g;f=e-L|0;if((g|0)>2147418112|f>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);else{c[L+(m<<3)>>2]=((f>>>3)-m<<8)+2147483392|2;_q(b,d,0);N=c[Ka>>2]|0;M=c[La>>2]|0;J=i;K=N-M|0;break}}else{N=c[Ka>>2]|0;M=c[La>>2]|0;J=m;K=N-M|0}while(0);c[M+(J<<3)>>2]=((K>>>3)-J<<8)+2147483392|2;if((Ma|0)>-1){g=M;f=N-M|0;Ha=477;break}else{c[Na>>2]=Oa;Oa=c[b>>2]|0;Pa=c[Pa>>2]|0;Iq(Oa,Pa,Qa);Pa=b+1008|0;Pa=c[Pa>>2]|0;b=Qa*20|0;Kn(Oa,Pa,b);b=c[Ra>>2]|0;b=b+-1|0;c[Ra>>2]=b;l=Sa;return}}case 46:{g=c[b+1008>>2]|0;f=c[g+16>>2]|0;g=c[g+20>>2]|0;c:do if((f|0)>0){f=g+f|0;do{if((c[f+-16>>2]|0)!=(Ma|0))break c;f=f+-20|0;c[f>>2]=3}while(f>>>0>g>>>0)}while(0);Oq(b,-1);f=((c[Ka>>2]|0)-(c[La>>2]|0)|0)>>>3;_q(b,d,0);g=Ja+2|0;Ha=c[La>>2]|0;c[Ha+(g<<3)>>2]=((((c[Ka>>2]|0)-Ha|0)>>>3)-g<<8)+2147483392|2;Oq(b,27);Oq(b,53);g=c[b>>2]|0;c[Ca>>2]=0;c[Da>>2]=0;c[Ea>>2]=0;c[Fa>>2]=1;c[Ga>>2]=1;dr(b,d,4);if((c[Ca>>2]|0)==0?(c[Da>>2]|0)==0:0)Jn(g,272202,83891003,272694);er(b,d,-1);Ha=fr(b,d+8|0,-1,1)|0;c[d>>2]=1;c[d+8>>2]=2;c[d+12>>2]=Ha;Xq(b,Ha>>>31|50,0,Ha);gr(b,f);Oq(b,54);f=Ja+1|0;Ha=c[La>>2]|0;c[Ha+(f<<3)>>2]=((((c[Ka>>2]|0)-Ha|0)>>>3)-f<<8)+2147483392|2;f=6;Ha=470;break}case 54:{g=c[b+1008>>2]|0;f=c[g+16>>2]|0;g=c[g+20>>2]|0;d:do if((f|0)>0){f=g+f|0;do{if((c[f+-16>>2]|0)!=(Ma|0))break d;f=f+-20|0;c[f>>2]=3}while(f>>>0>g>>>0)}while(0);k=c[Na>>2]|0;Oq(b,-1);Oq(b,53);Ia=c[La>>2]|0;m=((c[Ka>>2]|0)-Ia|0)>>>3;f=Ja+2|0;c[Ia+(f<<3)>>2]=(m-f<<8)+2147483392|2;f=c[b>>2]|0;c[Ca>>2]=0;c[Da>>2]=0;c[Ea>>2]=0;c[Fa>>2]=1;c[Ga>>2]=1;dr(b,d,4);if((c[Ca>>2]|0)==0?(c[Da>>2]|0)==0:0)Jn(f,272202,83891003,272694);er(b,d,-1);f=fr(b,d+8|0,-1,1)|0;c[d>>2]=1;c[d+8>>2]=2;c[d+12>>2]=f;Xq(b,f>>>31|48,0,f);f=c[Ka>>2]|0;g=c[La>>2]|0;e=f-g|0;j=e>>>3;i=b+980|0;do if(((c[i>>2]|0)-f|0)>>>0<=7){f=c[b>>2]|0;g=e+72+(e>>>2)|0;if(g>>>0<e>>>0)Jn(f,270142,50331712,268576);else{B=b+984|0;Kn(f,c[B>>2]|0,g);B=c[(c[B>>2]|0)+20>>2]|0;A=B+e|0;c[Ka>>2]=A;c[La>>2]=B;c[i>>2]=B+g;break}}else{A=f;B=g}while(0);g=A+8|0;c[Ka>>2]=g;f=c[b+876>>2]|0;if(!f)f=c[b+924>>2]|0;c[A>>2]=2;c[A+4>>2]=f;if((f|0)>2147418112|(g-B|0)>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);else{c[Na>>2]=k;Oq(b,54);_q(b,d,0);gr(b,m);La=c[La>>2]|0;Ka=((c[Ka>>2]|0)-La|0)>>>3;c[La+(j<<3)>>2]=(Ka-j<<8)+2147483392|2;Ha=Ja+1|0;c[La+(Ha<<3)>>2]=(Ka-Ha<<8)+2147483392|2;Ha=476;break}break}case 70:{g=c[b+1008>>2]|0;f=c[g+16>>2]|0;g=c[g+20>>2]|0;e:do if((f|0)>0){f=g+f|0;do{if((c[f+-16>>2]|0)!=(Ma|0))break e;f=f+-20|0;c[f>>2]=3}while(f>>>0>g>>>0)}while(0);k=c[b>>2]|0;u=c[Na>>2]|0;t=u+2|0;c[Na>>2]=t;if((t|0)>65535)Jn(k,272202,50333579,272566);f=b+1056|0;if((t|0)>(c[f>>2]|0))c[f>>2]=t;Oq(b,-1);Oq(b,53);f:do if((c[Ia>>2]|0)==24){Oq(b,-1);cr(b,d,256,x,z);c[Na>>2]=t;switch(c[Ia>>2]|0){case 15:{g=((c[Ka>>2]|0)-(c[La>>2]|0)|0)>>>3;f=c[x>>2]|0;if((f|0)>-1)Xq(b,0,f,u);else Xq(b,2203,u,c[z>>2]|0);s=g;Ha=145;break f}case 57:{do{Oq(b,-1);cr(b,d,256,x,z)}while((c[Ia>>2]|0)==57);break}default:{}}}else{m=((c[Ka>>2]|0)-(c[La>>2]|0)|0)>>>3;c[Ca>>2]=0;c[Da>>2]=0;c[Ea>>2]=0;c[Fa>>2]=1;c[Ga>>2]=0;dr(b,d,772);if((c[Ia>>2]|0)!=15){Ia=c[Na>>2]|0;er(b,d,-1);c[Na>>2]=Ia;break}if((c[Ca>>2]|0)==0?(c[Da>>2]|0)==0:0)Jn(k,272202,83891566,272723);switch(c[d>>2]|0){case 4:{g=c[d+16>>2]|0;e=k+68|0;i=c[e>>2]|0;if(i>>>0>=(c[k+56>>2]|0)>>>0)Un(k,1093);j=c[k+64>>2]|0;Ia=i-j>>4;f=((g|0)<0?Ia:0)+g|0;if(f>>>0>=Ia>>>0)jo(k,376,g);Ia=j+(f<<4)|0;c[e>>2]=i+16;c[i>>2]=c[Ia>>2];c[i+4>>2]=c[Ia+4>>2];c[i+8>>2]=c[Ia+8>>2];c[i+12>>2]=c[Ia+12>>2];if(c[i>>2]&8|0){Ia=(c[i+8>>2]|0)+4|0;c[Ia>>2]=(c[Ia>>2]|0)+1}if(!(hr(b,x,z)|0))Xq(b,2203,u,c[z>>2]|0);else Xq(b,0,c[x>>2]|0,u);s=m;Ha=145;break f}case 3:{Zq(b,18544,fr(b,d+8|0,-1,0)|0,fr(b,d+20|0,-1,1)|0,u);s=m;Ha=145;break f}default:{i=c[Na>>2]|0;er(b,d,-1);c[Na>>2]=i;i=b+980|0;f=c[Ka>>2]|0;g=f;do if(((c[i>>2]|0)-g|0)>>>0<=7){e=c[b>>2]|0;f=g-(c[La>>2]|0)|0;g=f+72+(f>>>2)|0;if(g>>>0<f>>>0)Jn(e,270142,50331712,268576);else{Ia=b+984|0;Kn(e,c[Ia>>2]|0,g);Ia=c[(c[Ia>>2]|0)+20>>2]|0;C=Ia+f|0;c[Ka>>2]=C;c[La>>2]=Ia;c[i>>2]=Ia+g;break}}else C=f;while(0);g=C+8|0;c[Ka>>2]=g;f=c[b+876>>2]|0;if(!f)f=c[b+924>>2]|0;c[C>>2]=170;c[C+4>>2]=f;if(!((f|0)>2147418112?1:(g-(c[La>>2]|0)|0)>>>0>2147418112)){s=m;Ha=145;break f}Jn(c[b>>2]|0,272202,50332820,272614)}}}while(0);if((Ha|0)==145){c[Na>>2]=t;e=s<<3;i=c[b>>2]|0;r=b+980|0;f=c[Ka>>2]|0;do if(((c[r>>2]|0)-f|0)>>>0<8){f=f-(c[La>>2]|0)|0;g=f+72+(f>>>2)|0;if(g>>>0<f>>>0)Jn(i,270142,50331712,268576);else{_=b+984|0;Kn(i,c[_>>2]|0,g);_=c[(c[_>>2]|0)+20>>2]|0;$=_+f|0;c[Ka>>2]=$;c[La>>2]=_;c[r>>2]=_+g;aa=Ka;break}}else{aa=Ka;_=c[La>>2]|0;$=f}while(0);Ia=_+e|0;QQ(Ia+8|0,Ia|0,$-e-_|0)|0;n=b+924|0;f=c[n>>2]|0;c[Ia>>2]=2;c[Ia+4>>2]=f;Ia=(c[aa>>2]|0)+8|0;c[aa>>2]=Ia;f=c[La>>2]|0;if((Ia-f|0)>>>0>2147418112)Jn(c[b>>2]|0,272202,50333333,272614);p=s+1|0;g=c[Ka>>2]|0;e=g-f|0;q=e>>>3;do if(((c[r>>2]|0)-g|0)>>>0<=7){f=c[b>>2]|0;g=e+72+(e>>>2)|0;if(g>>>0<e>>>0)Jn(f,270142,50331712,268576);else{ja=b+984|0;Kn(f,c[ja>>2]|0,g);ja=c[(c[ja>>2]|0)+20>>2]|0;ia=ja+e|0;c[Ka>>2]=ia;c[La>>2]=ja;c[r>>2]=ja+g;break}}else{ia=g;ja=f}while(0);g=ia+8|0;c[Ka>>2]=g;i=b+876|0;f=c[i>>2]|0;if(!f)f=c[n>>2]|0;c[ia>>2]=2;c[ia+4>>2]=f;if((f|0)>2147418112|(g-ja|0)>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);Oq(b,-1);m=((c[Ka>>2]|0)-(c[La>>2]|0)|0)>>>3;f=c[b>>2]|0;c[Ca>>2]=0;c[Da>>2]=0;c[Ea>>2]=0;c[Fa>>2]=1;c[Ga>>2]=1;dr(b,d,4);if((c[Ca>>2]|0)==0?(c[Da>>2]|0)==0:0)Jn(f,272202,83891003,272694);er(b,d,-1);f=fr(b,d+8|0,-1,0)|0;c[d>>2]=1;c[d+8>>2]=2;c[d+12>>2]=f;j=u+1|0;Zq(b,4297,0,j,f);f=c[Ka>>2]|0;g=c[La>>2]|0;e=f-g|0;k=e>>>3;do if(((c[r>>2]|0)-f|0)>>>0<=7){f=c[b>>2]|0;g=e+72+(e>>>2)|0;if(g>>>0<e>>>0)Jn(f,270142,50331712,268576);else{oa=b+984|0;Kn(f,c[oa>>2]|0,g);oa=c[(c[oa>>2]|0)+20>>2]|0;na=oa+e|0;c[Ka>>2]=na;c[La>>2]=oa;c[r>>2]=oa+g;break}}else{na=f;oa=g}while(0);g=na+8|0;c[Ka>>2]=g;f=c[i>>2]|0;if(!f)f=c[n>>2]|0;c[na>>2]=2;c[na+4>>2]=f;if((f|0)>2147418112|(g-oa|0)>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);c[Na>>2]=t;Oq(b,54);Ia=((c[Ka>>2]|0)-(c[La>>2]|0)|0)>>>3;_q(b,d,0);i=((c[Ka>>2]|0)-(c[La>>2]|0)|0)>>>3;Zq(b,37066,0,u,j);e=c[b+968>>2]|0;gr(b,p);g=c[La>>2]|0;f=((c[Ka>>2]|0)-g|0)>>>3;c[g+(s<<3)>>2]=(m-s<<8)+2147483392|2;c[g+(q<<3)>>2]=(Ia-q<<8)+2147483392|2;c[g+(k<<3)>>2]=(i-k<<8)+2147483392|2;if((e|0)>=0)c[g+(e<<3)>>2]=(f-e<<8)+2147483392|2;Ha=Ja+1|0;c[g+(Ha<<3)>>2]=(f-Ha<<8)+2147483392|2;Ha=Ja+2|0;c[g+(Ha<<3)>>2]=(i-Ha<<8)+2147483392|2;Ha=476;break}c[Na>>2]=u;Oq(b,56);q=((c[Ka>>2]|0)-(c[La>>2]|0)|0)>>>3;c[Ca>>2]=0;c[Da>>2]=0;c[Ea>>2]=0;c[Fa>>2]=1;c[Ga>>2]=1;dr(b,d,516);if((c[Ca>>2]|0)==0?(c[Da>>2]|0)==0:0){f=c[Ka>>2]|0;g=c[La>>2]|0;i=f-g|0;e=b+980|0;do if(((c[e>>2]|0)-f|0)>>>0<=7){f=c[b>>2]|0;g=i+72+(i>>>2)|0;if(g>>>0<i>>>0)Jn(f,270142,50331712,268576);else{V=b+984|0;Kn(f,c[V>>2]|0,g);V=c[(c[V>>2]|0)+20>>2]|0;U=V+i|0;c[Ka>>2]=U;c[La>>2]=V;c[e>>2]=V+g;break}}else{U=f;V=g}while(0);g=U+8|0;c[Ka>>2]=g;f=c[b+876>>2]|0;if(!f)f=c[b+924>>2]|0;c[U>>2]=2;c[U+4>>2]=f;if((f|0)>2147418112|(g-V|0)>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);else{ka=i;la=-1}}else{er(b,d,-1);f=fr(b,d+8|0,-1,1)|0;c[d>>2]=1;c[d+8>>2]=2;c[d+12>>2]=f;Xq(b,f>>>31|50,0,f);f=c[Ka>>2]|0;g=c[La>>2]|0;p=f-g|0;n=b+980|0;e=c[n>>2]|0;do if((e-f|0)>>>0<=7){f=c[b>>2]|0;g=p+72+(p>>>2)|0;if(g>>>0<p>>>0)Jn(f,270142,50331712,268576);else{ba=b+984|0;Kn(f,c[ba>>2]|0,g);ba=c[(c[ba>>2]|0)+20>>2]|0;Z=ba+p|0;c[Ka>>2]=Z;c[La>>2]=ba;ca=ba+g|0;c[n>>2]=ca;break}}else{Z=f;ba=g;ca=e}while(0);g=Z+8|0;c[Ka>>2]=g;k=b+876|0;e=c[k>>2]|0;i=g;if(!e)f=c[b+924>>2]|0;else f=e;c[Z>>2]=2;c[Z+4>>2]=f;j=i-ba|0;if((f|0)>2147418112|j>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);m=j>>>3;do if((ca-i|0)>>>0<=7){f=c[b>>2]|0;g=j+72+(j>>>2)|0;if(g>>>0<j>>>0)Jn(f,270142,50331712,268576);else{ga=b+984|0;Kn(f,c[ga>>2]|0,g);ga=c[(c[ga>>2]|0)+20>>2]|0;fa=ga+j|0;c[Ka>>2]=fa;c[La>>2]=ga;c[n>>2]=ga+g;ea=c[k>>2]|0;break}}else{fa=g;ea=e;ga=ba}while(0);g=fa+8|0;c[Ka>>2]=g;if(!ea)f=c[b+924>>2]|0;else f=ea;c[fa>>2]=2;c[fa+4>>2]=f;if((f|0)>2147418112|(g-ga|0)>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);else{ka=p;la=m}}j=ka>>>3;c[Na>>2]=u;Oq(b,56);k=((c[Ka>>2]|0)-(c[La>>2]|0)|0)>>>3;c[Ca>>2]=0;c[Da>>2]=0;c[Ea>>2]=0;c[Fa>>2]=1;c[Ga>>2]=1;dr(b,d,516);if((c[Ca>>2]|0)==0?(c[Da>>2]|0)==0:0)i=1;else{i=c[Na>>2]|0;er(b,d,-1);c[Na>>2]=i;gr(b,q);i=0}c[Na>>2]=u;Oq(b,54);e=((c[Ka>>2]|0)-(c[La>>2]|0)|0)>>>3;_q(b,d,0);if(i)gr(b,q);else gr(b,k);g=c[La>>2]|0;f=((c[Ka>>2]|0)-g|0)>>>3;c[g+(j<<3)>>2]=(e-j<<8)+2147483392|2;if((la|0)>=0)c[g+(la<<3)>>2]=(f-la<<8)+2147483392|2;Ha=Ja+1|0;c[g+(Ha<<3)>>2]=(f-Ha<<8)+2147483392|2;Ha=Ja+2|0;c[g+(Ha<<3)>>2]=((i?q:k)-Ha<<8)+2147483392|2;Ha=476;break}case 175:{g=c[b>>2]|0;n=(i|0)==2;Oq(b,-1);f=c[Ia>>2]|0;if(((f|0)!=56?(c[b+932>>2]|0)==0:0)?(c[b+936>>2]|0)==0:0){if((f|0)!=1)Jn(g,272202,83891899,272759);j=c[b+912>>2]|0;k=c[b>>2]|0;i=c[b+1008>>2]|0;La=c[i+16>>2]|0;i=c[i+20>>2]|0;m=i+La|0;if((La|0)<=0)Jn(k,272202,83888848,272745);e=k+304|0;g:do if(!n){f=m;while(1){g=f;f=f+-20|0;if((c[g+-12>>2]|0)==(j|0)){if(c[f>>2]&2|0){s=g;u=f;break g}if((c[(c[e>>2]|0)+60>>2]|0)!=(j|0)){Ha=198;break}}if(f>>>0<=i>>>0){Ha=199;break}}if((Ha|0)==198)Jn(k,272202,83888839,272745);else if((Ha|0)==199)Jn(k,272202,83888848,272745)}else{f=m;do{g=f;f=f+-20|0;if((c[g+-12>>2]|0)==(j|0)){s=g;u=f;break g}}while(f>>>0>i>>>0);Jn(k,272202,83888848,272745)}while(0);f=c[s+-16>>2]|0;i=c[s+-8>>2]|0;e=c[s+-4>>2]|0;Oq(b,-1);g=(u|0)==(m+-20|0)&1}else{j=c[(c[g+304>>2]|0)+60>>2]|0;k=c[b>>2]|0;i=c[b+1008>>2]|0;La=c[i+16>>2]|0;i=c[i+20>>2]|0;m=i+La|0;if((La|0)<=0)Jn(k,272202,83888848,272745);e=k+304|0;h:do if(!n){f=m;while(1){g=f;f=f+-20|0;if((c[g+-12>>2]|0)==(j|0)){if(c[f>>2]&2|0){y=g;t=f;break h}if((c[(c[e>>2]|0)+60>>2]|0)!=(j|0)){Ha=186;break}}if(f>>>0<=i>>>0){Ha=187;break}}if((Ha|0)==186)Jn(k,272202,83888839,272745);else if((Ha|0)==187)Jn(k,272202,83888848,272745)}else{f=m;do{g=f;f=f+-20|0;if((c[g+-12>>2]|0)==(j|0)){y=g;t=f;break h}}while(f>>>0>i>>>0);Jn(k,272202,83888848,272745)}while(0);g=(t|0)==(m+-20|0)&1;e=c[y+-4>>2]|0;i=c[y+-8>>2]|0;f=c[y+-16>>2]|0}if(g|0?(i|0)==(c[b+1100>>2]|0):0){gr(b,e+(n?1:2)|0);f=18;Ha=470;break}else{Xq(b,n?163:164,0,f);f=18;Ha=470;break}}case 205:{f=c[b>>2]|0;Oq(b,-1);if(!(a[b+1120>>0]|0))Jn(f,272202,83891940,272788);if(((c[Ia>>2]|0)!=56?(c[b+932>>2]|0)==0:0)?(c[b+936>>2]|0)==0:0){i=((c[Ka>>2]|0)-(c[La>>2]|0)|0)>>>3;f=c[b>>2]|0;c[Ca>>2]=0;c[Da>>2]=0;c[Ea>>2]=0;c[Fa>>2]=1;c[Ga>>2]=1;dr(b,d,4);if((c[Ca>>2]|0)==0?(c[Da>>2]|0)==0:0)Jn(f,272202,83891003,272694);er(b,d,-1);e=fr(b,d+8|0,-1,1)|0;c[d>>2]=1;c[d+8>>2]=2;c[d+12>>2]=e;g=c[La>>2]|0;f=((c[Ka>>2]|0)-g|0)>>>3;if(((c[b+1100>>2]|0)==0&f>>>0>i>>>0?(p=g+(f+-1<<3)|0,q=c[p>>2]|0,(q&240|0)==176):0)?(e|0)>=(c[b+1048>>2]|0):0)c[p>>2]=q|1;if((e|0)>-1){Xq(b,157,0,e);f=18;Ha=470;break}e=e&2147483647;Np(c[b>>2]|0,c[b+1020>>2]|0,e)|0;i=c[b>>2]|0;f=i+68|0;g=c[f>>2]|0;La=c[i+64>>2]|0;j=g-La>>4;j=j|0?La+(j+-1<<4)|0:0;j=(c[((j|0)==0?936:j)>>2]|0)==0;if((g|0)==(La|0))Jn(i,268620,50337407,268636);Ka=g+-16|0;c[f>>2]=Ka;La=c[g+-16>>2]|0;f=c[g+-8>>2]|0;c[Ka>>2]=2;if(La&8|0?(Ka=f+4|0,La=(c[Ka>>2]|0)+-1|0,c[Ka>>2]=La,(La|0)==0):0)Yn(c[i+44>>2]|0,f);if(j){Xq(b,160,0,e);f=18;Ha=470;break}else{Xq(b,159,0,e);f=18;Ha=470;break}}i=b+980|0;f=c[Ka>>2]|0;g=f;do if(((c[i>>2]|0)-g|0)>>>0<=7){e=c[b>>2]|0;f=g-(c[La>>2]|0)|0;g=f+72+(f>>>2)|0;if(g>>>0<f>>>0)Jn(e,270142,50331712,268576);else{Ja=b+984|0;Kn(e,c[Ja>>2]|0,g);Ja=c[(c[Ja>>2]|0)+20>>2]|0;r=Ja+f|0;c[Ka>>2]=r;c[La>>2]=Ja;c[i>>2]=Ja+g;break}}else r=f;while(0);g=r+8|0;c[Ka>>2]=g;f=c[b+876>>2]|0;if(!f)f=c[b+924>>2]|0;c[r>>2]=158;c[r+4>>2]=f;if((f|0)>2147418112?1:(g-(c[La>>2]|0)|0)>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);else{f=18;Ha=470}break}case 235:{r=b+1104|0;c[r>>2]=(c[r>>2]|0)+1;if(a[b+1126>>0]|0)Jn(c[b>>2]|0,272202,83892291,272803);s=b+1100|0;c[s>>2]=(c[s>>2]|0)+1;Oq(b,-1);i=c[Na>>2]|0;g=i+2|0;c[Na>>2]=g;if((g|0)>65535)Jn(c[b>>2]|0,272202,50333579,272566);e=b+1056|0;if((g|0)>(c[e>>2]|0))c[e>>2]=g;Oq(b,53);g=c[b>>2]|0;c[Ca>>2]=0;c[Da>>2]=0;c[Ea>>2]=0;c[Fa>>2]=1;c[Ga>>2]=1;dr(b,d,4);if((c[Ca>>2]|0)==0?(c[Da>>2]|0)==0:0)Jn(g,272202,83891003,272694);er(b,d,i);q=fr(b,d+8|0,i,0)|0;c[d>>2]=1;c[d+8>>2]=2;c[d+12>>2]=q;Oq(b,54);q=((c[Ka>>2]|0)-(c[La>>2]|0)|0)>>>3;Xq(b,421,8,i);p=b+980|0;g=c[p>>2]|0;e=c[Ka>>2]|0;i=e;do if((g-i|0)>>>0<=7){j=c[b>>2]|0;g=i-(c[La>>2]|0)|0;e=g+72+(g>>>2)|0;if(e>>>0<g>>>0)Jn(j,270142,50331712,268576);else{H=b+984|0;Kn(j,c[H>>2]|0,e);H=c[(c[H>>2]|0)+20>>2]|0;E=H+g|0;c[Ka>>2]=E;c[La>>2]=H;H=H+e|0;c[p>>2]=H;break}}else{E=e;H=g}while(0);i=E+8|0;c[Ka>>2]=i;n=b+876|0;j=c[n>>2]|0;k=i;if(!j)e=c[b+924>>2]|0;else e=j;c[E>>2]=206;c[E+4>>2]=e;g=c[La>>2]|0;m=k-g|0;if((e|0)>2147418112|m>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);do if((H-k|0)>>>0<=7){g=c[b>>2]|0;e=m+72+(m>>>2)|0;if(e>>>0<m>>>0)Jn(g,270142,50331712,268576);else{P=b+984|0;Kn(g,c[P>>2]|0,e);P=c[(c[P>>2]|0)+20>>2]|0;O=P+m|0;c[Ka>>2]=O;c[La>>2]=P;c[p>>2]=P+e;f=c[n>>2]|0;break}}else{O=i;f=j;P=g}while(0);g=O+8|0;c[Ka>>2]=g;if(!f)f=c[b+924>>2]|0;c[O>>2]=206;c[O+4>>2]=f;if((f|0)>2147418112|(g-P|0)>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);_q(b,d,0);f=c[Ka>>2]|0;g=f;do if(((c[p>>2]|0)-g|0)>>>0<=7){e=c[b>>2]|0;f=g-(c[La>>2]|0)|0;g=f+72+(f>>>2)|0;if(g>>>0<f>>>0)Jn(e,270142,50331712,268576);else{d=b+984|0;Kn(e,c[d>>2]|0,g);d=c[(c[d>>2]|0)+20>>2]|0;da=d+f|0;c[Ka>>2]=da;c[La>>2]=d;c[p>>2]=d+g;break}}else da=f;while(0);g=da+8|0;c[Ka>>2]=g;f=c[n>>2]|0;if(!f)e=c[b+924>>2]|0;else e=f;c[da>>2]=166;c[da+4>>2]=e;La=c[La>>2]|0;f=g-La|0;g=La;if((e|0)>2147418112|f>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);f=f>>>3;La=q+2|0;c[g+(La<<3)>>2]=(f-La<<8)+2147483392|2;c[s>>2]=(c[s>>2]|0)+-1;if((Ma|0)>-1){La=Ja+1|0;c[g+(La<<3)>>2]=(f-La<<8)+2147483392|2}c[r>>2]=(c[r>>2]|0)+-1;Ha=476;break}case 271:{g=c[b+1008>>2]|0;f=c[g+16>>2]|0;g=c[g+20>>2]|0;i:do if((f|0)>0){f=g+f|0;do{if((c[f+-16>>2]|0)!=(Ma|0))break i;f=f+-20|0;c[f>>2]=1}while(f>>>0>g>>>0)}while(0);z=c[b>>2]|0;Oq(b,-1);Oq(b,53);f=c[b>>2]|0;c[Ca>>2]=0;c[Da>>2]=0;c[Ea>>2]=0;c[Fa>>2]=1;c[Ga>>2]=1;dr(b,d,4);if((c[Ca>>2]|0)==0?(c[Da>>2]|0)==0:0)Jn(f,272202,83891003,272694);er(b,d,-1);p=d+8|0;q=fr(b,p,-1,1)|0;c[d>>2]=1;r=d+8|0;c[r>>2]=2;s=d+12|0;c[s>>2]=q;Oq(b,54);Oq(b,49);t=c[Na>>2]|0;u=b+1056|0;v=b+980|0;w=b+876|0;x=b+924|0;y=b+984|0;g=-1;n=-1;i=-1;j:while(1){c[Na>>2]=t;switch(c[Ia>>2]|0){case 50:{Ha=315;break j}case 3:{if((g|0)>=0){Ha=c[La>>2]|0;c[Ha+(g<<3)>>2]=((((c[Ka>>2]|0)-Ha|0)>>>3)-g<<8)+2147483392|2}Oq(b,-1);f=c[b>>2]|0;c[Ca>>2]=0;c[Da>>2]=0;c[Ea>>2]=0;c[Fa>>2]=1;c[Ga>>2]=1;dr(b,d,4);if((c[Ca>>2]|0)==0?(c[Da>>2]|0)==0:0){Ha=284;break j}er(b,d,-1);f=fr(b,p,-1,1)|0;c[d>>2]=1;c[r>>2]=2;c[s>>2]=f;Oq(b,85);g=c[Na>>2]|0;e=g+1|0;c[Na>>2]=e;if((g|0)>65534){Ha=286;break j}if((g|0)>=(c[u>>2]|0))c[u>>2]=e;Zq(b,16408,g,q,f);Xq(b,g>>>31|48,0,g);k=i;Ha=293;break}case 7:{if((i|0)>-1){Ha=323;break j}Oq(b,-1);Oq(b,85);if((g|0)<0){k=-2;Ha=293}else{e=c[Ka>>2]|0;f=c[La>>2]|0;Ha=302}break}default:{Ha=323;break j}}if((Ha|0)==293){Ha=0;e=c[Ka>>2]|0;f=c[La>>2]|0;i=e-f|0;g=i>>>3;if(((c[v>>2]|0)-e|0)>>>0<=7){f=c[b>>2]|0;e=i+72+(i>>>2)|0;if(e>>>0<i>>>0){Ha=295;break}Kn(f,c[y>>2]|0,e);f=c[(c[y>>2]|0)+20>>2]|0;Ba=f+i|0;c[Ka>>2]=Ba;c[La>>2]=f;c[v>>2]=f+e;e=Ba}j=e+8|0;c[Ka>>2]=j;i=c[w>>2]|0;if(!i)i=c[x>>2]|0;c[e>>2]=2;c[e+4>>2]=i;if((i|0)>2147418112|(j-f|0)>>>0>2147418112){Ha=300;break}if((k|0)==-2){e=j;Ha=302}else{m=g;e=j}}if((Ha|0)==302){m=g;k=(e-f|0)>>>3}if((n|0)>=0)c[f+(n<<3)>>2]=(((e-f|0)>>>3)-n<<8)+2147483392|2;k:while(1){switch(c[Ia>>2]|0){case 3:case 7:case 50:break k;default:{}}_q(b,d,0)}f=c[Ka>>2]|0;g=c[La>>2]|0;e=f-g|0;j=e>>>3;if(((c[v>>2]|0)-f|0)>>>0>7)i=g;else{g=c[b>>2]|0;f=e+72+(e>>>2)|0;if(f>>>0<e>>>0){Ha=309;break}Kn(g,c[y>>2]|0,f);i=c[(c[y>>2]|0)+20>>2]|0;Ha=i+e|0;c[Ka>>2]=Ha;c[La>>2]=i;c[v>>2]=i+f;f=Ha}e=f+8|0;c[Ka>>2]=e;g=c[w>>2]|0;if(!g)g=c[x>>2]|0;c[f>>2]=2;c[f+4>>2]=g;if((g|0)>2147418112|(e-i|0)>>>0>2147418112){Ha=314;break}else{g=m;n=j;i=k}}if((Ha|0)==284)Jn(f,272202,83891003,272694);else if((Ha|0)==286)Jn(c[b>>2]|0,272202,50333579,272566);else if((Ha|0)==295)Jn(f,270142,50331712,268576);else if((Ha|0)==300)Jn(c[b>>2]|0,272202,50332820,272614);else if((Ha|0)==309)Jn(g,270142,50331712,268576);else if((Ha|0)==314)Jn(c[b>>2]|0,272202,50332820,272614);else if((Ha|0)==315){Oq(b,-1);f=(g|0)<0;if((i|0)>-1){if(!f)c[(c[La>>2]|0)+(g<<3)>>2]=(i-g<<8)+2147483392|2}else if(!f){d=c[La>>2]|0;c[d+(g<<3)>>2]=((((c[Ka>>2]|0)-d|0)>>>3)-g<<8)+2147483392|2}f=c[La>>2]|0;g=((c[Ka>>2]|0)-f|0)>>>3;if((n|0)>=0)c[f+(n<<3)>>2]=(g-n<<8)+2147483392|2;Ha=Ja+1|0;c[f+(Ha<<3)>>2]=(g-Ha<<8)+2147483392|2;Ha=476;break}else if((Ha|0)==323)Jn(z,272202,83891765,272823);break}case 325:{Oq(b,-1);f=c[b>>2]|0;if(c[b+932>>2]|0)Jn(f,272202,83892041,272848);c[Ca>>2]=0;c[Da>>2]=0;c[Ea>>2]=0;c[Fa>>2]=1;c[Ga>>2]=1;dr(b,d,4);if((c[Ca>>2]|0)==0?(c[Da>>2]|0)==0:0)Jn(f,272202,83891003,272694);er(b,d,-1);f=fr(b,d+8|0,-1,0)|0;c[d>>2]=1;c[d+8>>2]=2;c[d+12>>2]=f;Xq(b,169,0,f);f=18;Ha=470;break}case 331:{v=c[b>>2]|0;y=b+1100|0;c[y>>2]=(c[y>>2]|0)+1;Oq(b,-1);x=c[Na>>2]|0;f=x+2|0;c[Na>>2]=f;if((f|0)>65535)Jn(c[b>>2]|0,272202,50333579,272566);g=b+1056|0;if((f|0)>(c[g>>2]|0))c[g>>2]=f;u=((c[Ka>>2]|0)-(c[La>>2]|0)|0)>>>3;Xq(b,3,x,0);f=c[Ka>>2]|0;g=c[La>>2]|0;i=f-g|0;w=i>>>3;t=b+980|0;e=c[t>>2]|0;do if((e-f|0)>>>0<=7){f=c[b>>2]|0;g=i+72+(i>>>2)|0;if(g>>>0<i>>>0)Jn(f,270142,50331712,268576);else{F=b+984|0;Kn(f,c[F>>2]|0,g);F=c[(c[F>>2]|0)+20>>2]|0;D=F+i|0;c[Ka>>2]=D;c[La>>2]=F;G=F+g|0;c[t>>2]=G;break}}else{D=f;F=g;G=e}while(0);g=D+8|0;c[Ka>>2]=g;s=b+876|0;e=c[s>>2]|0;i=g;if(!e)f=c[b+924>>2]|0;else f=e;c[D>>2]=206;c[D+4>>2]=f;j=i-F|0;if((f|0)>2147418112|j>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);do if((G-i|0)>>>0<=7){f=c[b>>2]|0;g=j+72+(j>>>2)|0;if(g>>>0<j>>>0)Jn(f,270142,50331712,268576);else{S=b+984|0;Kn(f,c[S>>2]|0,g);S=c[(c[S>>2]|0)+20>>2]|0;Q=S+j|0;c[Ka>>2]=Q;c[La>>2]=S;T=S+g|0;c[t>>2]=T;R=c[s>>2]|0;break}}else{Q=g;R=e;S=F;T=G}while(0);g=Q+8|0;c[Ka>>2]=g;e=g;if(!R)f=c[b+924>>2]|0;else f=R;c[Q>>2]=206;c[Q+4>>2]=f;i=e-S|0;if((f|0)>2147418112|i>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);do if((T-e|0)>>>0<=7){f=c[b>>2]|0;g=i+72+(i>>>2)|0;if(g>>>0<i>>>0)Jn(f,270142,50331712,268576);else{Y=b+984|0;Kn(f,c[Y>>2]|0,g);Y=c[(c[Y>>2]|0)+20>>2]|0;X=Y+i|0;c[Ka>>2]=X;c[La>>2]=Y;c[t>>2]=Y+g;W=c[s>>2]|0;break}}else{X=g;W=R;Y=S}while(0);g=X+8|0;c[Ka>>2]=g;if(!W)f=c[b+924>>2]|0;else f=W;c[X>>2]=206;c[X+4>>2]=f;if((f|0)>2147418112|(g-Y|0)>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);Oq(b,49);Vq(b,0,0);f=c[Ka>>2]|0;g=f;do if(((c[t>>2]|0)-g|0)>>>0<=7){e=c[b>>2]|0;f=g-(c[La>>2]|0)|0;g=f+72+(f>>>2)|0;if(g>>>0<f>>>0)Jn(e,270142,50331712,268576);else{Ja=b+984|0;Kn(e,c[Ja>>2]|0,g);Ja=c[(c[Ja>>2]|0)+20>>2]|0;ha=Ja+f|0;c[Ka>>2]=ha;c[La>>2]=Ja;c[t>>2]=Ja+g;break}}else ha=f;while(0);i=ha+8|0;c[Ka>>2]=i;f=c[s>>2]|0;if(!f)f=c[b+924>>2]|0;c[ha>>2]=166;c[ha+4>>2]=f;g=c[La>>2]|0;e=i-g|0;if((f|0)>2147418112|e>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);f=c[Ia>>2]|0;do if((f|0)==4){r=e>>>3;Oq(b,-1);Oq(b,53);if((c[Ia>>2]|0)!=1)Jn(v,272202,83892281,272862);g=c[b+912>>2]|0;n=v+68|0;f=c[n>>2]|0;p=v+56|0;if(f>>>0>=(c[p>>2]|0)>>>0)Un(v,4153);c[n>>2]=f+16;c[f>>2]=8;c[f+8>>2]=g;Ja=g+4|0;c[Ja>>2]=(c[Ja>>2]|0)+1;do if(a[b+1126>>0]|0){f=c[v+304>>2]|0;if((g|0)==(c[f+132>>2]|0))Jn(v,272202,83892281,272862);if((g|0)!=(c[f+268>>2]|0))break;Jn(v,272202,83892281,272862)}while(0);f=c[n>>2]|0;if(f>>>0>=(c[p>>2]|0)>>>0)Un(v,1111);k=v+64|0;if((f-(c[k>>2]|0)|0)<16)jo(v,1114,-1);Ja=f+-16|0;c[n>>2]=f+16;c[f>>2]=c[Ja>>2];c[f+4>>2]=c[Ja+4>>2];c[f+8>>2]=c[Ja+8>>2];c[f+12>>2]=c[Ja+12>>2];if(c[f>>2]&8|0){Ja=(c[f+8>>2]|0)+4|0;c[Ja>>2]=(c[Ja>>2]|0)+1}q=Yq(b)|0;Oq(b,-1);Oq(b,54);Oq(b,49);f=c[n>>2]|0;if(f>>>0>=(c[p>>2]|0)>>>0)Un(v,1111);if((f-(c[k>>2]|0)|0)<16)jo(v,1114,-1);Ja=f+-16|0;c[n>>2]=f+16;c[f>>2]=c[Ja>>2];c[f+4>>2]=c[Ja+4>>2];c[f+8>>2]=c[Ja+8>>2];c[f+12>>2]=c[Ja+12>>2];if(c[f>>2]&8|0){Ja=(c[f+8>>2]|0)+4|0;c[Ja>>2]=(c[Ja>>2]|0)+1}m=b+1044|0;g=c[m>>2]|0;e=c[k>>2]|0;i=(c[n>>2]|0)-e>>4;f=((g|0)<0?i:0)+g|0;if(f>>>0>=i>>>0)jo(v,376,g);ro(v,e+(f<<4)|0,e+(i+-1<<4)|0)|0;g=c[k>>2]|0;e=(c[n>>2]|0)-g>>4;f=e+-2|0;if(e>>>0<=1)jo(v,376,-2);d=g+(f<<4)|0;e=g+(e+-1<<4)|0;Ja=c[d>>2]|0;f=c[g+(f<<4)+8>>2]|0;QQ(d|0,d+16|0,e-d|0)|0;c[e>>2]=2;e=(c[n>>2]|0)+-16|0;c[n>>2]=e;g=e;do if(Ja&8){d=f+4|0;Ja=(c[d>>2]|0)+-1|0;c[d>>2]=Ja;if(Ja|0)break;Yn(c[v+44>>2]|0,f);e=c[n>>2]|0;g=e}while(0);i=c[k>>2]|0;f=g-i>>4;f=f|0?i+(f+-1<<4)|0:0;f=(f|0)==0?936:f;l:do switch(c[f>>2]|0){case 2:{j=-2;break}case 3:{j=-1;break}case 0:{o=+h[f+8>>3];if(!(iP(o)|0)){j=0;break l}if(o<-2147483648.0){j=-2147483648;break l}if(o>2147483647.0){j=2147483647;break l}j=~~o;break}default:j=0}while(0);if((e|0)==(i|0))Jn(v,268620,50337407,268636);f=e+-16|0;c[n>>2]=f;Ja=c[e+-16>>2]|0;g=c[e+-8>>2]|0;c[f>>2]=2;do if(Ja&8){d=g+4|0;Ja=(c[d>>2]|0)+-1|0;c[d>>2]=Ja;if(Ja|0)break;Yn(c[v+44>>2]|0,g);f=c[n>>2]|0}while(0);if(f>>>0>=(c[p>>2]|0)>>>0)Un(v,1111);if((f-(c[k>>2]|0)|0)<16)jo(v,1114,-1);Ja=f+-16|0;c[n>>2]=f+16;c[f>>2]=c[Ja>>2];c[f+4>>2]=c[Ja+4>>2];c[f+8>>2]=c[Ja+8>>2];c[f+12>>2]=c[Ja+12>>2];if(c[f>>2]&8|0){Ja=(c[f+8>>2]|0)+4|0;c[Ja>>2]=(c[Ja>>2]|0)+1}f=c[n>>2]|0;if(f>>>0>=(c[p>>2]|0)>>>0)Un(v,4175);c[n>>2]=f+16;c[f>>2]=3;lq(v,c[m>>2]|0);Xq(b,2203,x,q);Vq(b,0,0);m:do switch(j|0){case -2:{Aq(v,c[m>>2]|0);break}case -1:{f=c[n>>2]|0;if(f>>>0<(c[p>>2]|0)>>>0){c[n>>2]=f+16;c[f>>2]=3;Ha=421;break m}else Un(v,4175);break}default:{f=c[n>>2]|0;if(f>>>0<(c[p>>2]|0)>>>0){c[n>>2]=f+16;c[f>>2]=0;h[f+8>>3]=+(j|0);Ha=421;break m}else Un(v,4244)}}while(0);if((Ha|0)==421)lq(v,c[m>>2]|0);f=c[Ka>>2]|0;g=f;do if(((c[t>>2]|0)-g|0)>>>0<=7){e=c[b>>2]|0;f=g-(c[La>>2]|0)|0;g=f+72+(f>>>2)|0;if(g>>>0<f>>>0)Jn(e,270142,50331712,268576);else{Ja=b+984|0;Kn(e,c[Ja>>2]|0,g);Ja=c[(c[Ja>>2]|0)+20>>2]|0;qa=Ja+f|0;c[Ka>>2]=qa;c[La>>2]=Ja;c[t>>2]=Ja+g;break}}else qa=f;while(0);e=qa+8|0;c[Ka>>2]=e;f=c[s>>2]|0;if(!f)f=c[b+924>>2]|0;c[qa>>2]=167;c[qa+4>>2]=f;g=c[La>>2]|0;if((f|0)>2147418112|(e-g|0)>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614);else{za=r;wa=q;ra=5;ta=g;sa=c[Ia>>2]|0;ua=e;break}}else{za=-1;wa=0;ra=0;ta=g;sa=f;ua=i}while(0);do if((sa|0)==11){k=ra|2;j=(ua-ta|0)>>>3;Oq(b,-1);Oq(b,49);Vq(b,0,0);if((x|0)>=16777216)Jn(c[b>>2]|0,272202,50333236,272577);i=x<<8|168;f=c[Ka>>2]|0;g=f;do if(((c[t>>2]|0)-g|0)>>>0<=7){e=c[b>>2]|0;f=g-(c[La>>2]|0)|0;g=f+72+(f>>>2)|0;if(g>>>0<f>>>0)Jn(e,270142,50331712,268576);else{Ja=b+984|0;Kn(e,c[Ja>>2]|0,g);Ja=c[(c[Ja>>2]|0)+20>>2]|0;va=Ja+f|0;c[Ka>>2]=va;c[La>>2]=Ja;c[t>>2]=Ja+g;break}}else va=f;while(0);e=va+8|0;c[Ka>>2]=e;f=c[s>>2]|0;if(!f)g=c[b+924>>2]|0;else g=f;c[va>>2]=i;c[va+4>>2]=g;f=c[La>>2]|0;if(!((g|0)>2147418112|(e-f|0)>>>0>2147418112)){ya=j;xa=k;Aa=f;Ba=e;break}Jn(c[b>>2]|0,272202,50332820,272614)}else{ya=-1;xa=ra;Aa=ta;Ba=ua}while(0);g=Aa;e=(xa&1|0)!=0;i=(xa&2|0)==0;if(i&(e^1))Jn(v,272202,83892281,272862);f=g+(u<<3)|0;do if((wa|0)<0)if((x|0)>65535|(wa&2147418112)>>>0>65535)Jn(c[b>>2]|0,272202,50333388,272577);else{c[f>>2]=c[f>>2]|wa<<16;break}else c[f>>2]=205;while(0);c[g+(w<<3)>>2]=x<<16|xa<<8|165;f=w+1|0;if(e)c[g+(f<<3)>>2]=(za-f<<8)+2147483392|2;Ha=w+2|0;c[g+(Ha<<3)>>2]=((i?(Ba-Aa|0)>>>3:ya)-Ha<<8)+2147483392|2;c[y>>2]=(c[y>>2]|0)+-1;Ha=476;break}case 452:{Oq(b,-1);f=2;Ha=470;break}case 454:{if(!(c[Da>>2]|0))Jn(g,272202,83891003,272694);else{f=3;Ha=467}break}case 459:{if(m<<24>>24!=0&(g|0)==100){f=c[n>>2]|0;if((c[b+880>>2]|0)>0){f=11;Ha=467}else switch(c[f+20>>2]|0){case 10:{if(LN(f+28|0,272874,10)|0){f=11;Ha=467;break b}a[b+1126>>0]=1;f=11;Ha=467;break b}case 14:{if(LN(f+28|0,272885,14)|0){f=11;Ha=467;break b}a[b+1127>>0]=1;f=11;Ha=467;break b}default:{f=11;Ha=467;break b}}}else{f=3;Ha=467}break}}do if((Ha|0)==467){g=c[b+1116>>2]|0;if((g|0)>-1){er(b,d,g);Ha=fr(b,d+8|0,g,0)|0;c[d>>2]=1;c[d+8>>2]=2;c[d+12>>2]=Ha;Ha=470;break}else{Ha=c[Na>>2]|0;er(b,d,-1);c[Na>>2]=Ha;Ha=470;break}}else if((Ha|0)==477){La=Ja+1|0;c[g+(La<<3)>>2]=((f>>>3)-La<<8)+2147483392|2}while(0);if((Ha|0)==470){if((c[Ia>>2]|0)!=56){if(!(c[b+936>>2]|f&4))Jn(pa,272202,83892818,272900)}else Oq(b,-1);if(!(f&8))Ha=476;else{a[ma>>0]=1;Ha=476}}if((Ha|0)==476?(Ma|0)<=-1:0){c[Na>>2]=Oa;Oa=c[b>>2]|0;Pa=c[Pa>>2]|0;Iq(Oa,Pa,Qa);Pa=b+1008|0;Pa=c[Pa>>2]|0;b=Qa*20|0;Kn(Oa,Pa,b);b=c[Ra>>2]|0;b=b+-1|0;c[Ra>>2]=b;l=Sa;return}Xq(b,162,0,Ma);c[Na>>2]=Oa;Oa=c[b>>2]|0;Pa=c[Pa>>2]|0;Iq(Oa,Pa,Qa);Pa=b+1008|0;Pa=c[Pa>>2]|0;b=Qa*20|0;Kn(Oa,Pa,b);b=c[Ra>>2]|0;b=b+-1|0;c[Ra>>2]=b;l=Sa;return}function $q(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;if((b|0)>-1){q=b;return q|0}m=a+1096|0;o=c[m>>2]|0;c[m>>2]=o+1;Xq(a,161,0,o);m=a+980|0;b=c[m>>2]|0;n=a+972|0;e=c[n>>2]|0;f=e;do if((b-f|0)>>>0<=7){g=c[a>>2]|0;h=a+976|0;b=f-(c[h>>2]|0)|0;e=b+72+(b>>>2)|0;if(e>>>0<b>>>0)Jn(g,270142,50331712,268576);else{l=a+984|0;Kn(g,c[l>>2]|0,e);l=c[(c[l>>2]|0)+20>>2]|0;i=l+b|0;c[n>>2]=i;c[h>>2]=l;l=l+e|0;c[m>>2]=l;break}}else{i=e;l=b}while(0);f=i+8|0;c[n>>2]=f;k=a+876|0;g=c[k>>2]|0;h=f;if(!g)e=c[a+924>>2]|0;else e=g;c[i>>2]=206;c[i+4>>2]=e;i=a+976|0;b=c[i>>2]|0;j=h-b|0;if((e|0)>2147418112|j>>>0>2147418112)Jn(c[a>>2]|0,272202,50332820,272614);do if((l-h|0)>>>0<=7){b=c[a>>2]|0;e=j+72+(j>>>2)|0;if(e>>>0<j>>>0)Jn(b,270142,50331712,268576);else{q=a+984|0;Kn(b,c[q>>2]|0,e);q=c[(c[q>>2]|0)+20>>2]|0;p=q+j|0;c[n>>2]=p;c[i>>2]=q;c[m>>2]=q+e;d=c[k>>2]|0;break}}else{p=f;d=g;q=b}while(0);b=p+8|0;c[n>>2]=b;if(!d)d=c[a+924>>2]|0;c[p>>2]=206;c[p+4>>2]=d;if((d|0)>2147418112|(b-q|0)>>>0>2147418112)Jn(c[a>>2]|0,272202,50332820,272614);else{q=o;return q|0}return 0}function ar(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=c[a>>2]|0;l=a+1008|0;i=c[l>>2]|0;h=c[i+20>>2]|0;i=c[i+16>>2]|0;j=(i|0)/20|0;a:do if((i|0)>0){g=k+304|0;f=h+i|0;while(1){if((c[f+-12>>2]|0)==(b|0)?(c[(c[g>>2]|0)+60>>2]|0)!=(b|0):0)break;f=f+-20|0;if(f>>>0<=h>>>0)break a}Jn(k,272202,83888710,273475)}while(0);f=k+68|0;g=c[f>>2]|0;if(g>>>0<(c[k+56>>2]|0)>>>0){c[f>>2]=g+16;c[g>>2]=8;c[g+8>>2]=b;h=b+4|0;c[h>>2]=(c[h>>2]|0)+1;mq(k,c[a+1032>>2]|0,j);Kn(k,c[l>>2]|0,i+20|0);l=c[l>>2]|0;l=(c[l+20>>2]|0)+(c[l+16>>2]|0)+-20|0;c[l>>2]=1;c[l+4>>2]=e;c[l+8>>2]=b;c[l+12>>2]=c[a+1100>>2];c[l+16>>2]=d;return}else Un(k,4153)}function br(d,e){d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0.0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;G=l;l=l+160|0;B=G+80|0;D=G;E=G+132|0;C=G+146|0;F=c[d>>2]|0;if(a[d+1129>>0]|0){x=d+972|0;y=F+68|0;j=F+64|0;k=(c[y>>2]|0)-(c[j>>2]|0)|0;z=k>>4;f=B;g=x;i=f+52|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(i|0));o=d+1024|0;p=c[o>>2]|0;r=d+1028|0;f=D;g=r;i=f+80|0;do{c[f>>2]=c[g>>2];f=f+4|0;g=g+4|0}while((f|0)<(i|0));s=d+1108|0;t=c[s>>2]|0;u=d+1112|0;c[E>>2]=c[u>>2];c[E+4>>2]=c[u+4>>2];c[E+8>>2]=c[u+8>>2];b[E+12>>1]=b[u+12>>1]|0;v=d+1126|0;w=a[v>>0]|0;m=d+1127|0;f=C;g=m;i=f+13|0;do{a[f>>0]=a[g>>0]|0;f=f+1|0;g=g+1|0}while((f|0)<(i|0));RQ(x|0,0,168)|0;Mq(d);a[v>>0]=w;a[d+1120>>0]=1;a[d+1125>>0]=e>>>1&1;a[d+1123>>0]=(e&7|0)==0&1;a[d+1124>>0]=(e&6|0)==0&1;Pq(d,e);A=t+1|0;if((t|0)>65535)Jn(c[d>>2]|0,272202,50339375,273460);g=t*3|0;mq(F,p,g);f=c[y>>2]|0;i=F+56|0;if(f>>>0>=(c[i>>2]|0)>>>0)Un(F,4274);q=+((c[d+872>>2]|0)>>>0);c[y>>2]=f+16;c[f>>2]=0;h[f+8>>3]=q;mq(F,p,g+1|0);f=c[y>>2]|0;if(f>>>0>=(c[i>>2]|0)>>>0)Un(F,4244);q=+(c[d+876>>2]|0);c[y>>2]=f+16;c[f>>2]=0;h[f+8>>3]=q;mq(F,p,g+2|0);if(!(e&8))Gp(F,z);else{f=c[d+988>>2]|0;g=c[y>>2]|0;if(g>>>0>=(c[i>>2]|0)>>>0)Un(F,4153);c[y>>2]=g+16;c[g>>2]=8;c[g+8>>2]=f;g=f+4|0;c[g>>2]=(c[g>>2]|0)+1;g=c[j>>2]|0;i=(c[y>>2]|0)-g>>4;if(!i)jo(F,376,-1);e=g+(i+-1<<4)|0;f=((k|0)<0?i:0)+z|0;if(f>>>0>=i>>>0)jo(F,376,z);k=g+(f<<4)|0;d=c[k>>2]|0;f=c[g+(f<<4)+8>>2]|0;c[k>>2]=c[e>>2];c[k+4>>2]=c[e+4>>2];c[k+8>>2]=c[e+8>>2];c[k+12>>2]=c[e+12>>2];c[e>>2]=2;c[y>>2]=(c[y>>2]|0)+-16;if(d&8|0?(y=f+4|0,d=(c[y>>2]|0)+-1|0,c[y>>2]=d,(d|0)==0):0)Yn(c[F+44>>2]|0,f);Gp(F,z+1|0)}f=x;g=B;i=f+52|0;do{a[f>>0]=a[g>>0]|0;f=f+1|0;g=g+1|0}while((f|0)<(i|0));a[o>>0]=p;a[o+1>>0]=p>>8;a[o+2>>0]=p>>16;a[o+3>>0]=p>>24;f=r;g=D;i=f+80|0;do{a[f>>0]=a[g>>0]|0;f=f+1|0;g=g+1|0}while((f|0)<(i|0));a[s>>0]=A;a[s+1>>0]=A>>8;a[s+2>>0]=A>>16;a[s+3>>0]=A>>24;f=u;g=E;i=f+14|0;do{a[f>>0]=a[g>>0]|0;f=f+1|0;g=g+1|0}while((f|0)<(i|0));a[v>>0]=w;f=m;g=C;i=f+13|0;do{a[f>>0]=a[g>>0]|0;f=f+1|0;g=g+1|0}while((f|0)<(i|0));F=t;l=G;return F|0}k=d+1108|0;p=c[k>>2]|0;c[k>>2]=p+1;k=d+1024|0;e=p*3|0;Np(F,c[k>>2]|0,e+1|0)|0;Wq(F,-1);o=F+68|0;i=c[o>>2]|0;j=F+64|0;g=c[j>>2]|0;f=i-g>>4;f=f|0?g+(f+-1<<4)|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)==0?(n=+h[f+8>>3],!(n<0.0|(iP(n)|0)==0)):0)if(n>4294967295.0)m=-1;else m=~~n>>>0;else m=0;if((i|0)==(g|0))Jn(F,268620,50337407,268636);D=i+-16|0;c[o>>2]=D;E=c[i+-16>>2]|0;f=c[i+-8>>2]|0;c[D>>2]=2;if(E&8|0?(D=f+4|0,E=(c[D>>2]|0)+-1|0,c[D>>2]=E,(E|0)==0):0)Yn(c[F+44>>2]|0,f);Np(F,c[k>>2]|0,e+2|0)|0;Wq(F,-1);e=c[o>>2]|0;i=c[j>>2]|0;f=e-i>>4;f=f|0?i+(f+-1<<4)|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)==0?(q=+h[f+8>>3],(iP(q)|0)!=0):0)if(!(q<-2147483648.0))if(q>2147483647.0)g=2147483647;else g=~~q;else g=-2147483648;else g=0;if((e|0)==(i|0))Jn(F,268620,50337407,268636);D=e+-16|0;c[o>>2]=D;E=c[e+-16>>2]|0;f=c[e+-8>>2]|0;c[D>>2]=2;if(E&8|0?(D=f+4|0,E=(c[D>>2]|0)+-1|0,c[D>>2]=E,(E|0)==0):0)Yn(c[F+44>>2]|0,f);F=d+8|0;c[d+792>>2]=m;c[d+796>>2]=g;c[F>>2]=d+12;Lq(F,0);c[d+896>>2]=0;c[d+924>>2]=0;Oq(d,-1);Oq(d,50);F=p;l=G;return F|0}function cr(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;v=l;l=l+16|0;s=v+4|0;t=v;u=c[b>>2]|0;q=b+896|0;if((c[q>>2]|0)!=1)Jn(u,272202,83891195,273431);o=c[b+912>>2]|0;if(a[b+1126>>0]|0?c[o>>2]&8192|0:0)Jn(u,272202,83891195,273431);do if(a[b+1129>>0]|0){j=b+1028|0;k=Bo(u,c[j>>2]|0)|0;m=u+68|0;i=c[m>>2]|0;n=u+56|0;if(i>>>0>=(c[n>>2]|0)>>>0)Un(u,4153);c[m>>2]=i+16;c[i>>2]=8;c[i+8>>2]=o;i=o+4|0;c[i>>2]=(c[i>>2]|0)+1;mq(u,c[j>>2]|0,k);i=c[m>>2]|0;if(i>>>0<(c[n>>2]|0)>>>0){c[m>>2]=i+16;c[i>>2]=0;h[i+8>>3]=0.0;mq(u,c[j>>2]|0,k+1|0);p=n;r=m;break}else Un(u,4244)}else{p=u+56|0;r=u+68|0}while(0);i=c[r>>2]|0;if(i>>>0>=(c[p>>2]|0)>>>0)Un(u,4153);c[r>>2]=i+16;c[i>>2]=8;c[i+8>>2]=o;i=o+4|0;c[i>>2]=(c[i>>2]|0)+1;i=c[r>>2]|0;if(i>>>0>=(c[p>>2]|0)>>>0)Un(u,1111);j=u+64|0;if((i-(c[j>>2]|0)|0)<16)jo(u,1114,-1);p=i+-16|0;c[r>>2]=i+16;c[i>>2]=c[p>>2];c[i+4>>2]=c[p+4>>2];c[i+8>>2]=c[p+8>>2];c[i+12>>2]=c[p+12>>2];if(c[i>>2]&8|0){p=(c[i+8>>2]|0)+4|0;c[p>>2]=(c[p>>2]|0)+1}hr(b,s,t)|0;Oq(b,-1);do if((c[q>>2]|0)==86){Oq(b,-1);i=c[b>>2]|0;p=b+1072|0;c[p>>2]=0;q=b+1076|0;c[q>>2]=0;c[b+1080>>2]=0;c[b+1084>>2]=1;c[b+1088>>2]=e>>>8&1^1;dr(b,d,e|6);if(((e&512|0)==0?(c[p>>2]|0)==0:0)?(c[q>>2]|0)==0:0)Jn(i,272202,83891003,272694);i=c[s>>2]|0;if((i|0)>-1){er(b,d,i);b=fr(b,d+8|0,i,0)|0;c[d>>2]=1;c[d+8>>2]=2;c[d+12>>2]=b;break}else{er(b,d,-1);e=fr(b,d+8|0,-1,0)|0;c[d>>2]=1;c[d+8>>2]=2;c[d+12>>2]=e;Xq(b,2203,e,c[t>>2]|0);break}}else if(e&1024|0)Jn(u,272202,83891195,273431);while(0);i=c[r>>2]|0;if((i|0)==(c[j>>2]|0))Jn(u,268620,50337407,268636);d=i+-16|0;c[r>>2]=d;r=c[i+-16>>2]|0;i=c[i+-8>>2]|0;c[d>>2]=2;if(!(r&8)){u=c[t>>2]|0;c[g>>2]=u;u=c[s>>2]|0;c[f>>2]=u;l=v;return}d=i+4|0;r=(c[d>>2]|0)+-1|0;c[d>>2]=r;if(r|0){u=c[t>>2]|0;c[g>>2]=u;u=c[s>>2]|0;c[f>>2]=u;l=v;return}Yn(c[u+44>>2]|0,i);u=c[t>>2]|0;c[g>>2]=u;u=c[s>>2]|0;c[f>>2]=u;l=v;return}function dr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0.0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0;ja=l;l=l+48|0;da=ja+36|0;ea=ja+32|0;fa=ja;ga=c[b>>2]|0;ha=b+960|0;f=c[ha>>2]|0;if((f|0)>=(c[b+964>>2]|0))Jn(ga,272202,50332059,272541);c[ha>>2]=f+1;o=ga+68|0;f=c[o>>2]|0;k=c[ga+52>>2]|0;g=f-k+768|0;k=k+g|0;m=ga+56|0;n=c[m>>2]|0;i=f;do if(n>>>0<k>>>0)if((c[ga+60>>2]|0)>>>0<k>>>0){lo(ga,g,1)|0;i=c[o>>2]|0;f=i;k=c[m>>2]|0;break}else{c[m>>2]=k;break}else k=n;while(0);ca=e&255;c[fa>>2]=0;c[fa+4>>2]=0;c[fa+8>>2]=0;c[fa+12>>2]=0;c[fa+16>>2]=0;c[fa+20>>2]=0;c[fa+24>>2]=0;ba=f-(c[ga+64>>2]|0)>>4;$=fa+16|0;c[$>>2]=ba;aa=fa+28|0;c[aa>>2]=ba+1;if(i>>>0>=k>>>0)Un(ga,4162);ba=i+16|0;c[o>>2]=ba;if(ba>>>0>=k>>>0)Un(ga,4162);f=i+32|0;c[o>>2]=f;ba=b+896|0;switch(c[ba>>2]|0){case 54:case 56:{if(!(e&512))Jn(ga,272202,83890965,272694);if(f>>>0>=k>>>0)Un(ga,4162);c[o>>2]=i+48;ir(c[b>>2]|0,d);uq(ga);ia=c[ha>>2]|0;ia=ia+-1|0;c[ha>>2]=ia;l=ja;return}default:{}}Oq(b,-1);G=c[b>>2]|0;Y=b+1052|0;H=c[Y>>2]|0;Z=b+1072|0;c[Z>>2]=(c[Z>>2]|0)+1;_=b+848|0;X=c[_>>2]|0;c[d>>2]=0;a:do switch(X|0){case 20:{g=H+1|0;c[Y>>2]=g;if((H|0)>65534)Jn(G,272202,50333579,272566);f=b+1056|0;if((H|0)>=(c[f>>2]|0))c[f>>2]=g;Xq(b,6,0,H);c[d>>2]=1;c[d+8>>2]=2;c[d+12>>2]=H;break}case 1:{jr(b,d,c[b+864>>2]|0);break}case 35:{f=G+68|0;g=c[f>>2]|0;if(g>>>0<(c[G+56>>2]|0)>>>0){c[f>>2]=g+16;c[g>>2]=3;ia=259;break a}else Un(G,4175);break}case 36:{f=G+68|0;g=c[f>>2]|0;if(g>>>0<(c[G+56>>2]|0)>>>0){c[f>>2]=g+16;c[g>>2]=4;c[g+8>>2]=1;ia=259;break a}else Un(G,4195);break}case 37:{f=G+68|0;g=c[f>>2]|0;if(g>>>0<(c[G+56>>2]|0)>>>0){c[f>>2]=g+16;c[g>>2]=4;c[g+8>>2]=0;ia=259;break a}else Un(G,4204);break}case 99:{f=G+68|0;g=c[f>>2]|0;if(g>>>0<(c[G+56>>2]|0)>>>0){j=+h[b+856>>3];c[f>>2]=g+16;c[g>>2]=0;h[g+8>>3]=j;ia=259;break a}else Un(G,4215);break}case 100:{f=c[b+864>>2]|0;g=G+68|0;i=c[g>>2]|0;if(i>>>0<(c[G+56>>2]|0)>>>0){c[g>>2]=i+16;c[i>>2]=8;c[i+8>>2]=f;ia=f+4|0;c[ia>>2]=(c[ia>>2]|0)+1;ia=259;break a}else Un(G,4153);break}case 101:{f=H+1|0;c[Y>>2]=f;if((H|0)>65534)Jn(G,272202,50333579,272566);g=b+1056|0;if((H|0)>=(c[g>>2]|0))c[g>>2]=f;f=c[b+864>>2]|0;i=G+68|0;g=c[i>>2]|0;k=G+56|0;if(g>>>0>=(c[k>>2]|0)>>>0)Un(G,4153);c[i>>2]=g+16;c[g>>2]=8;c[g+8>>2]=f;f=f+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[b+868>>2]|0;g=c[i>>2]|0;if(g>>>0<(c[k>>2]|0)>>>0){c[i>>2]=g+16;c[g>>2]=8;c[g+8>>2]=f;X=f+4|0;c[X>>2]=(c[X>>2]|0)+1;kr(G);X=Yq(b)|0;Zq(b,16532,H,X,Yq(b)|0);c[d>>2]=1;c[d+8>>2]=2;c[d+12>>2]=H;break a}else Un(G,4153);break}case 51:{f=H+1|0;c[Y>>2]=f;if((H|0)>65534)Jn(G,272202,50333579,272566);s=b+1056|0;if((H|0)>=(c[s>>2]|0))c[s>>2]=f;p=b+976|0;q=((c[b+972>>2]|0)-(c[p>>2]|0)|0)>>>3;Xq(b,193,0,H);t=c[Y>>2]|0;r=d+8|0;u=d+8|0;v=d+12|0;g=0;i=0;k=0;f=0;b:while(1){o=g;c:while(1){c[Y>>2]=t;m=c[ba>>2]|0;if((m|0)==52){ia=78;break b}else{n=0;g=o;o=i}while(1){i=(m|0)==57;if(!f){if(i){ia=60;break}do if(!n){i=c[Y>>2]|0;f=i+1|0;c[Y>>2]=f;if((i|0)>65534){ia=63;break b}if((i|0)>=(c[s>>2]|0))c[s>>2]=f;f=g+32768|0;if(f>>>0<65536){Xq(b,4,i,f);o=g;break}else{Xq(b,4,i,(g>>16)+32768|0);Xq(b,5,i,g&65535);o=g;break}}while(0);f=c[Y>>2]|0;i=f+1|0;c[Y>>2]=i;if((f|0)>65534){ia=70;break b}if((f|0)>=(c[s>>2]|0))c[s>>2]=i;c[Y>>2]=f;dr(b,d,6);er(b,d,f);f=fr(b,r,f,0)|0;c[d>>2]=1;c[u>>2]=2;c[v>>2]=f;c[Y>>2]=i;f=n+1|0;g=g+1|0;if(f>>>0>19){ia=74;break c}else{n=f;i=o;f=1}}else{if(!i){ia=87;break b}Oq(b,-1);i=o;f=0}m=c[ba>>2]|0;if((m|0)==52)break;else o=i}if((ia|0)==60){ia=0;Oq(b,-1);i=o;g=g+1|0;f=0}if(!n)o=g;else{ia=76;break}}if((ia|0)==74){ia=0;e=1;m=o;k=o+f|0;f=n+2|0}else if((ia|0)==76){ia=0;e=f;m=i;k=n+i|0;f=n+1|0}Zq(b,3270,H,t,f);i=m;f=e}if((ia|0)==63)Jn(c[b>>2]|0,272202,50333579,272566);else if((ia|0)==70)Jn(c[b>>2]|0,272202,50333579,272566);else if((ia|0)==78){X=(c[p>>2]|0)+(q<<3)|0;c[X>>2]=c[X>>2]|(o>>>0<255?o:255)<<8;Oq(b,-1);if(o>>>0>k>>>0){g=c[Y>>2]|0;f=g+1|0;c[Y>>2]=f;if((g|0)>65534)Jn(c[b>>2]|0,272202,50333579,272566);if((g|0)>=(c[s>>2]|0))c[s>>2]=f;f=o+32768|0;if(f>>>0<65536)Xq(b,4,g,f);else{Xq(b,4,g,(o>>16)+32768|0);Xq(b,5,g,o&65535)}Xq(b,2248,H,g)}c[Y>>2]=t;c[d>>2]=1;c[u>>2]=2;c[v>>2]=H;break a}else if((ia|0)==87)Jn(G,272202,83889037,273016);break}case 49:{y=H+1|0;c[Y>>2]=y;if((H|0)>65534)Jn(G,272202,50333579,272566);p=b+1056|0;if((H|0)>=(c[p>>2]|0))c[p>>2]=y;z=b+976|0;A=((c[b+972>>2]|0)-(c[z>>2]|0)|0)>>>3;Xq(b,192,0,H);q=b+896|0;i=c[q>>2]|0;do if((i|0)!=50){r=b+848|0;s=b+864|0;t=G+304|0;u=H+3|0;v=(u|0)>65535;w=H+2|0;x=d+8|0;B=d+8|0;C=d+12|0;k=0;g=0;f=0;d:while(1){if(k){if((i|0)!=57){ia=131;break}Oq(b,-1);if((c[q>>2]|0)==50){ia=129;break}}Oq(b,-1);if(g>>>0>9){Zq(b,3266,H,y,g<<1);c[Y>>2]=y;e=0;f=f+g|0}else e=g;m=e<<1;n=m+y|0;g=n+2|0;c[Y>>2]=g;if((g|0)>65535){ia=102;break}if((g|0)>(c[p>>2]|0))c[p>>2]=g;i=c[r>>2]|0;if((i|0)==1){X=c[s>>2]|0;k=c[t>>2]|0;g=1;o=(X|0)==(c[k+292>>2]|0);k=(X|0)==(c[k+332>>2]|0)}else{g=0;o=0;k=0}if(o|k?(c[q>>2]|0)!=85:0){if(e){Zq(b,3266,H,y,m);f=f+e|0}c[Y>>2]=u;if(v){ia=112;break}if((u|0)>(c[p>>2]|0))c[p>>2]=u;if(lr(b,d,q,y)|0){ia=131;break}Xq(b,152,w,br(b,2)|0);Xq(b,o?2245:2244,H,y);g=0}else ia=117;e:do if((ia|0)==117){ia=0;f:do if(g){switch(c[q>>2]|0){case 50:case 57:break;default:break f}lr(b,d,r,n)|0;jr(b,d,c[s>>2]|0);g=n+1|0;er(b,d,g);g=fr(b,x,g,0)|0;c[d>>2]=1;c[B>>2]=2;c[C>>2]=g;g=e+1|0;break e}while(0);g:do switch(i|0){case 99:case 100:case 1:{if((c[q>>2]|0)!=53)if((i|0)==51){ia=126;break g}else{ia=127;break g}if(lr(b,d,r,n)|0){ia=131;break d}Xq(b,152,n+1|0,br(b,20)|0);g=e+1|0;break e}case 51:{ia=126;break}default:ia=127}while(0);if((ia|0)==126){ia=0;c[Y>>2]=n;dr(b,d,4);er(b,d,n);X=fr(b,x,n,0)|0;c[d>>2]=1;c[B>>2]=2;c[C>>2]=X;Oq(b,52)}else if((ia|0)==127?(ia=0,lr(b,d,r,n)|0):0){ia=131;break d}Oq(b,85);g=n+1|0;c[Y>>2]=g;dr(b,d,6);er(b,d,g);g=fr(b,x,g,0)|0;c[d>>2]=1;c[B>>2]=2;c[C>>2]=g;g=e+1|0}while(0);i=c[q>>2]|0;if((i|0)==50){ia=129;break}else k=1}if((ia|0)==102)Jn(c[b>>2]|0,272202,50333579,272566);else if((ia|0)==112)Jn(c[b>>2]|0,272202,50333579,272566);else if((ia|0)==129){if(!g){E=C;F=B;D=f;break}Zq(b,3266,H,y,g<<1);E=C;F=B;D=f+g|0;break}else if((ia|0)==131)Jn(G,272202,83889320,272993)}else{E=d+12|0;F=d+8|0;D=0}while(0);c[Y>>2]=y;X=(c[z>>2]|0)+(A<<3)|0;c[X>>2]=c[X>>2]|(D>>>0<255?D:255)<<8;Oq(b,-1);c[d>>2]=1;c[F>>2]=2;c[E>>2]=H;break}case 53:{X=b+1080|0;c[X>>2]=(c[X>>2]|0)+1;W=b+1088|0;V=c[W>>2]|0;c[W>>2]=1;dr(b,d,4);Oq(b,54);c[W>>2]=V;c[X>>2]=(c[X>>2]|0)+-1;break}case 17:{g=H+2|0;c[Y>>2]=g;if((g|0)>65535)Jn(G,272202,50333579,272566);o=b+1056|0;if((g|0)>(c[o>>2]|0))c[o>>2]=g;if((c[ba>>2]|0)==55){Oq(b,-1);if((c[b+900>>2]|0)!=1)Jn(G,272202,83889899,272955);f=c[b+912>>2]|0;if((c[f+20>>2]|0)!=6)Jn(G,272202,83889899,272955);if(KN(272923,f+28|0,6)|0)Jn(G,272202,83889899,272955);if(!(a[b+1122>>0]|0)){Oq(b,-1);Xq(b,203,0,H);c[d>>2]=1;c[d+8>>2]=2;c[d+12>>2]=H;break a}else Jn(G,272202,83889899,272955)}dr(b,d,36);er(b,d,H);k=d+8|0;X=fr(b,k,H,0)|0;c[d>>2]=1;m=d+8|0;c[m>>2]=2;n=d+12|0;c[n>>2]=X;Xq(b,192,0,H+1|0);c[Y>>2]=g;if((c[ba>>2]|0)==53){Oq(b,-1);h:do if((c[ba>>2]|0)==54)r=0;else{f=0;while(1){if((f|0)>0)Oq(b,57);g=c[Y>>2]|0;i=g+1|0;c[Y>>2]=i;if((g|0)>65534)break;if((g|0)>=(c[o>>2]|0))c[o>>2]=i;c[Y>>2]=g;dr(b,d,6);er(b,d,g);X=fr(b,k,g,0)|0;c[d>>2]=1;c[m>>2]=2;c[n>>2]=X;c[Y>>2]=i;f=f+1|0;if((c[ba>>2]|0)==54){r=f;break h}}Jn(c[b>>2]|0,272202,50333579,272566)}while(0);Oq(b,54);f=r}else f=0;Xq(b,178,f,H);c[d>>2]=1;c[m>>2]=2;c[n>>2]=H;break}case 13:{g=H+1|0;c[Y>>2]=g;if((H|0)>65534)Jn(G,272202,50333579,272566);f=b+1056|0;if((H|0)>=(c[f>>2]|0))c[f>>2]=g;Xq(b,152,H,br(b,0)|0);c[d>>2]=1;c[d+8>>2]=2;c[d+12>>2]=H;break}case 8:{dr(b,d,30);switch(c[d>>2]|0){case 4:{if(a[b+1126>>0]|0)Jn(G,272202,83889631,272930);f=H+1|0;c[Y>>2]=f;if((H|0)>65534)Jn(c[b>>2]|0,272202,50333579,272566);g=b+1056|0;if((H|0)>=(c[g>>2]|0))c[g>>2]=f;g=d+16|0;i=c[g>>2]|0;e=G+68|0;k=c[e>>2]|0;n=G+56|0;if(k>>>0>=(c[n>>2]|0)>>>0)Un(G,1093);o=G+64|0;m=c[o>>2]|0;X=k-m>>4;f=((i|0)<0?X:0)+i|0;if(f>>>0>=X>>>0)jo(G,376,i);X=m+(f<<4)|0;c[e>>2]=k+16;c[k>>2]=c[X>>2];c[k+4>>2]=c[X+4>>2];c[k+8>>2]=c[X+8>>2];c[k+12>>2]=c[X+12>>2];if(c[k>>2]&8|0){X=(c[k+8>>2]|0)+4|0;c[X>>2]=(c[X>>2]|0)+1}if(!(hr(b,da,ea)|0)){i=c[g>>2]|0;k=c[e>>2]|0;if(k>>>0>=(c[n>>2]|0)>>>0)Un(G,1093);g=c[o>>2]|0;X=k-g>>4;f=((i|0)<0?X:0)+i|0;if(f>>>0>=X>>>0)jo(G,376,i);X=g+(f<<4)|0;c[e>>2]=k+16;c[k>>2]=c[X>>2];c[k+4>>2]=c[X+4>>2];c[k+8>>2]=c[X+8>>2];c[k+12>>2]=c[X+12>>2];if(c[k>>2]&8|0){X=(c[k+8>>2]|0)+4|0;c[X>>2]=(c[X>>2]|0)+1}X=Yq(b)|0;c[ea>>2]=X;Xq(b,156,H,X)}else Xq(b,10,0,H);c[d>>2]=1;c[d+8>>2]=2;c[d+12>>2]=H;break a}case 3:{f=H+1|0;c[Y>>2]=f;if((H|0)>65534)Jn(c[b>>2]|0,272202,50333579,272566);g=b+1056|0;if((H|0)>=(c[g>>2]|0))c[g>>2]=f;Zq(b,16500,H,fr(b,d+8|0,-1,0)|0,fr(b,d+20|0,-1,1)|0);c[d>>2]=1;c[d+8>>2]=2;c[d+12>>2]=H;break a}default:{f=G+68|0;g=c[f>>2]|0;if(g>>>0<(c[G+56>>2]|0)>>>0){c[f>>2]=g+16;c[g>>2]=4;c[g+8>>2]=1;ia=259;break a}else Un(G,4195)}}break}case 26:{dr(b,d,30);f=c[Y>>2]|0;er(b,d,-1);c[Y>>2]=f;f=G+68|0;g=c[f>>2]|0;if(g>>>0<(c[G+56>>2]|0)>>>0){c[f>>2]=g+16;ia=259;break a}else Un(G,4162);break}case 23:{dr(b,d,30);if((c[d>>2]|0)==4){g=c[d+16>>2]|0;i=G+68|0;k=c[i>>2]|0;if(k>>>0>=(c[G+56>>2]|0)>>>0)Un(G,1093);m=c[G+64>>2]|0;X=k-m>>4;f=((g|0)<0?X:0)+g|0;if(f>>>0>=X>>>0)jo(G,376,g);X=m+(f<<4)|0;c[i>>2]=k+16;c[k>>2]=c[X>>2];c[k+4>>2]=c[X+4>>2];c[k+8>>2]=c[X+8>>2];c[k+12>>2]=c[X+12>>2];if(c[k>>2]&8|0){X=(c[k+8>>2]|0)+4|0;c[X>>2]=(c[X>>2]|0)+1}if(hr(b,da,ea)|0){k=153;ia=226;break a}f=c[Y>>2]|0;g=f+1|0;c[Y>>2]=g;if((f|0)>65534)Jn(c[b>>2]|0,272202,50333579,272566);i=b+1056|0;if((f|0)>=(c[i>>2]|0))c[i>>2]=g;Xq(b,154,f,c[ea>>2]|0);c[d>>2]=1;c[d+8>>2]=2;c[d+12>>2]=f}else{k=153;ia=226}break}case 72:{f=32888;ia=232;break}case 73:{f=33913;ia=232;break}case 66:{dr(b,d,30);if(!(((c[d>>2]|0)==1?(c[d+8>>2]|0)==1:0)?(X=c[d+16>>2]|0,W=c[G+64>>2]|0,V=(c[G+68>>2]|0)-W>>4,X=((X|0)<0?V:0)+X|0,X=X>>>0<V>>>0?W+(X<<4)|0:0,!(c[((X|0)==0?936:X)>>2]|0)):0)){k=15;ia=226}break}case 67:{dr(b,d,30);if(((c[d>>2]|0)==1?(c[d+8>>2]|0)==1:0)?(p=c[d+16>>2]|0,q=c[G+64>>2]|0,W=(c[G+68>>2]|0)-q>>4,X=((p|0)<0?W:0)+p|0,X=X>>>0<W>>>0?q+(X<<4)|0:0,(c[((X|0)==0?936:X)>>2]|0)==0):0){X=q+(p<<4)+8|0;j=-+h[X>>3];c[q+(p<<4)>>2]=0;h[X>>3]=j}else{k=14;ia=226}break}case 81:{dr(b,d,30);k=12;ia=226;break}case 80:{dr(b,d,30);if((c[d>>2]|0)==1?(c[d+8>>2]|0)==1:0){f=c[G+64>>2]|0;g=c[d+16>>2]|0;i=f+(g<<4)|0;switch(c[i>>2]|0){case 0:break;case 4:{X=f+(g<<4)+8|0;W=c[X>>2]|0;c[i>>2]=4;c[X>>2]=W^1;break a}default:{k=13;ia=226;break a}}g=f+(g<<4)+8|0;j=+h[g>>3];if(!(j==0.0))if(j==1.0)f=0;else{k=13;ia=226;break a}else f=1;c[i>>2]=4;c[g>>2]=f}else{k=13;ia=226}break}default:Jn(G,272202,83889795,272392)}while(0);if((ia|0)==226){er(b,d,-1);m=fr(b,d+8|0,-1,0)|0;c[d>>2]=1;n=d+8|0;c[n>>2]=2;o=d+12|0;c[o>>2]=m;if((m|0)<(c[b+1048>>2]|0)){f=c[Y>>2]|0;g=f+1|0;c[Y>>2]=g;if((f|0)>65534)Jn(c[b>>2]|0,272202,50333579,272566);i=b+1056|0;if((f|0)>=(c[i>>2]|0))c[i>>2]=g}else f=m;Xq(b,k,f,m);c[d>>2]=1;c[n>>2]=2;c[o>>2]=f}else if((ia|0)==232){n=f&121;f=f>>>8;o=H+1|0;c[Y>>2]=o;if((H|0)>65534)Jn(G,272202,50333579,272566);g=b+1056|0;if((H|0)>=(c[g>>2]|0))c[g>>2]=o;dr(b,d,30);switch(c[d>>2]|0){case 4:{i=c[d+16>>2]|0;k=G+68|0;f=G+64|0;if(a[b+1126>>0]|0?c[c[(c[((i|0)<0?k:f)>>2]|0)+(i<<4)+8>>2]>>2]&8192|0:0)Jn(G,272202,83889903,272974);m=c[k>>2]|0;if(m>>>0>=(c[G+56>>2]|0)>>>0)Un(G,1093);g=c[f>>2]|0;X=m-g>>4;f=((i|0)<0?X:0)+i|0;if(f>>>0>=X>>>0)jo(G,376,i);X=g+(f<<4)|0;c[k>>2]=m+16;c[m>>2]=c[X>>2];c[m+4>>2]=c[X+4>>2];c[m+8>>2]=c[X+8>>2];c[m+12>>2]=c[X+12>>2];if(c[m>>2]&8|0){X=(c[m+8>>2]|0)+4|0;c[X>>2]=(c[X>>2]|0)+1}if(!(hr(b,da,ea)|0))Xq(b,n|4,H,c[ea>>2]|0);else Xq(b,n,H,c[da>>2]|0);break}case 3:{Zq(b,f|16384,H,fr(b,d+8|0,-1,0)|0,fr(b,d+20|0,-1,1)|0);break}default:{er(b,d,H);m=fr(b,d+8|0,H,0)|0;c[d>>2]=1;c[d+8>>2]=2;c[d+12>>2]=m;Xq(b,15,0,H);m=b+980|0;n=b+972|0;f=c[n>>2]|0;g=f;do if(((c[m>>2]|0)-g|0)>>>0<=7){i=c[b>>2]|0;k=b+976|0;f=g-(c[k>>2]|0)|0;g=f+72+(f>>>2)|0;if(g>>>0<f>>>0)Jn(i,270142,50331712,268576);else{X=b+984|0;Kn(i,c[X>>2]|0,g);X=c[(c[X>>2]|0)+20>>2]|0;s=X+f|0;c[n>>2]=s;c[k>>2]=X;c[m>>2]=X+g;break}}else s=f;while(0);g=s+8|0;c[n>>2]=g;f=c[b+876>>2]|0;if(!f)f=c[b+924>>2]|0;c[s>>2]=170;c[s+4>>2]=f;if((f|0)>2147418112?1:(g-(c[b+976>>2]|0)|0)>>>0>2147418112)Jn(c[b>>2]|0,272202,50332820,272614)}}c[Y>>2]=o;c[d>>2]=1;c[d+8>>2]=2;c[d+12>>2]=H}else if((ia|0)==259)ir(c[b>>2]|0,d);w=b+1088|0;x=b+1076|0;y=b+900|0;t=d+8|0;u=d+12|0;v=d+16|0;z=fa+8|0;A=fa+12|0;B=b+912|0;C=fa+20|0;D=b+1136|0;E=fa+4|0;F=d+4|0;G=d+20|0;H=fa+24|0;I=d+24|0;J=d+28|0;K=d+8|0;L=fa+8|0;M=b+1056|0;N=b+1130|0;O=d+20|0;P=b+972|0;Q=b+980|0;R=b+876|0;S=b+924|0;T=b+976|0;U=b+984|0;s=b+1126|0;V=b+1048|0;W=b+972|0;X=b+932|0;i:while(1){f=c[ba>>2]|0;if((f|0)==15)if(!(c[w>>2]|0))f=0;else ia=266;else if((f|1|0)==73?(c[X>>2]|0)!=0:0)f=0;else ia=266;if((ia|0)==266){ia=0;f=a[272290+f>>0]<<1&62}if(ca>>>0>=f>>>0){ia=467;break}Oq(b,-1);r=c[b>>2]|0;f=c[x>>2]|0;c[x>>2]=f+1;do switch(c[_>>2]|0){case 55:{er(b,d,-1);if((c[y>>2]|0)!=1){ia=270;break i}c[fa>>2]=3;n=c[b>>2]|0;g=c[u>>2]|0;f=c[v>>2]|0;c[z>>2]=c[t>>2];c[A>>2]=g;Sq(n,f,c[$>>2]|0);f=c[B>>2]|0;n=r+68|0;g=c[n>>2]|0;if(g>>>0>=(c[r+56>>2]|0)>>>0){ia=272;break i}c[n>>2]=g+16;c[g>>2]=8;c[g+8>>2]=f;g=f+4|0;c[g>>2]=(c[g>>2]|0)+1;g=c[aa>>2]|0;i=c[r+64>>2]|0;k=(c[n>>2]|0)-i>>4;if(!k){ia=274;break i}m=i+(k+-1<<4)|0;f=((g|0)<0?k:0)+g|0;if(f>>>0>=k>>>0){ia=276;break i}p=i+(f<<4)|0;q=c[p>>2]|0;f=c[i+(f<<4)+8>>2]|0;c[p>>2]=c[m>>2];c[p+4>>2]=c[m+4>>2];c[p+8>>2]=c[m+8>>2];c[p+12>>2]=c[m+12>>2];c[m>>2]=2;c[n>>2]=(c[n>>2]|0)+-16;if(q&8|0?(p=f+4|0,q=(c[p>>2]|0)+-1|0,c[p>>2]=q,(q|0)==0):0)Yn(c[r+44>>2]|0,f);c[C>>2]=1;a[D>>0]=1;Oq(b,-1);break}case 51:{er(b,d,-1);p=fr(b,K,-1,3)|0;c[d>>2]=1;c[t>>2]=2;c[u>>2]=p;dr(b,fa,4);er(b,fa,-1);Oq(b,52);c[fa>>2]=3;p=c[b>>2]|0;r=c[A>>2]|0;q=c[$>>2]|0;c[C>>2]=c[L>>2];c[H>>2]=r;Sq(p,q,c[aa>>2]|0);q=c[b>>2]|0;p=c[u>>2]|0;r=c[v>>2]|0;c[L>>2]=c[K>>2];c[A>>2]=p;Sq(q,r,c[$>>2]|0);break}case 53:{p=c[Y>>2]|0;i=p+2|0;c[Y>>2]=i;if((i|0)>65535){ia=283;break i}if((i|0)>(c[M>>2]|0))c[M>>2]=i;switch(c[d>>2]|0){case 4:{n=c[v>>2]|0;g=(n|0)<0;o=r+68|0;f=r+64|0;if((c[(c[(g?o:f)>>2]|0)+(n<<4)+8>>2]|0)==(c[(c[r+304>>2]|0)+132>>2]|0)){a[N>>0]=1;k=180}else k=176;e=c[o>>2]|0;if(e>>>0>=(c[r+56>>2]|0)>>>0){ia=290;break i}m=c[f>>2]|0;q=e-m>>4;f=(g?q:0)+n|0;if(f>>>0>=q>>>0){ia=292;break i}r=m+(f<<4)|0;c[o>>2]=e+16;c[e>>2]=c[r>>2];c[e+4>>2]=c[r+4>>2];c[e+8>>2]=c[r+8>>2];c[e+12>>2]=c[r+12>>2];if(c[e>>2]&8|0){r=(c[e+8>>2]|0)+4|0;c[r>>2]=(c[r>>2]|0)+1}if(!(hr(b,da,ea)|0))Zq(b,16556,p,c[ea>>2]|0,0);else Xq(b,2219,c[da>>2]|0,p);break}case 3:{k=p+1|0;fr(b,K,k,0)|0;Zq(b,16592,p,k,fr(b,O,-1,1)|0);k=176;break}default:{er(b,d,p);k=fr(b,K,p,0)|0;c[d>>2]=1;c[t>>2]=2;c[u>>2]=k;Xq(b,7,0,p+1|0);k=176}}c[Y>>2]=i;if((c[ba>>2]|0)==54)f=0;else{f=0;do{if((f|0)>0){Oq(b,57);g=c[Y>>2]|0}else g=i;i=g+1|0;c[Y>>2]=i;if((g|0)>65534){ia=305;break i}if((g|0)>=(c[M>>2]|0))c[M>>2]=i;c[Y>>2]=g;dr(b,fa,6);er(b,fa,g);r=fr(b,L,g,0)|0;c[fa>>2]=1;c[z>>2]=2;c[A>>2]=r;c[Y>>2]=i;f=f+1|0}while((c[ba>>2]|0)!=54)}Oq(b,54);Xq(b,k,f,p);c[Y>>2]=p+1;c[fa>>2]=1;c[z>>2]=2;c[A>>2]=p;break}case 72:{f=8944128;ia=437;break}case 73:{f=9206528;ia=437;break}case 71:{f=18463;ia=368;break}case 68:{f=15390;ia=368;break}case 69:{f=16414;ia=368;break}case 70:{f=17438;ia=368;break}case 66:{f=13340;ia=368;break}case 67:{f=14364;ia=368;break}case 74:{f=22554;ia=368;break}case 75:{f=24602;ia=368;break}case 76:{f=23578;ia=368;break}case 58:{f=10264;ia=368;break}case 59:{f=8216;ia=368;break}case 60:{f=11288;ia=368;break}case 61:{f=9240;ia=368;break}case 16:{f=25624;ia=368;break}case 15:{f=26648;ia=368;break}case 62:{f=4118;ia=368;break}case 63:{f=5142;ia=368;break}case 64:{f=6166;ia=368;break}case 65:{f=7190;ia=368;break}case 77:{f=19476;ia=368;break}case 79:{f=21522;ia=368;break}case 78:{f=20496;ia=368;break}case 82:{f=269;ia=369;break}case 83:{f=11;ia=369;break}case 84:{o=c[Y>>2]|0;e=o+1|0;c[Y>>2]=e;if((o|0)>65534){ia=334;break i}if((o|0)>=(c[M>>2]|0))c[M>>2]=e;er(b,d,o);f=fr(b,K,o,0)|0;c[d>>2]=1;c[t>>2]=2;c[u>>2]=f;Xq(b,o>>>31|48,0,o);f=c[P>>2]|0;g=c[T>>2]|0;i=f-g|0;n=i>>>3;if(((c[Q>>2]|0)-f|0)>>>0>7)k=g;else{f=c[b>>2]|0;g=i+72+(i>>>2)|0;if(g>>>0<i>>>0){ia=339;break i}Kn(f,c[U>>2]|0,g);k=c[(c[U>>2]|0)+20>>2]|0;f=k+i|0;c[P>>2]=f;c[T>>2]=k;c[Q>>2]=k+g}i=f+8|0;c[P>>2]=i;g=c[R>>2]|0;if(!g)g=c[S>>2]|0;c[f>>2]=2;c[f+4>>2]=g;if((g|0)>2147418112|(i-k|0)>>>0>2147418112){ia=344;break i}dr(b,fa,6);er(b,fa,o);f=fr(b,L,o,0)|0;c[fa>>2]=1;c[z>>2]=2;c[A>>2]=f;Oq(b,85);f=c[P>>2]|0;g=c[T>>2]|0;i=f-g|0;m=i>>>3;if(((c[Q>>2]|0)-f|0)>>>0<=7){f=c[b>>2]|0;g=i+72+(i>>>2)|0;if(g>>>0<i>>>0){ia=347;break i}Kn(f,c[U>>2]|0,g);r=c[(c[U>>2]|0)+20>>2]|0;f=r+i|0;c[P>>2]=f;c[T>>2]=r;c[Q>>2]=r+g;g=r}k=f+8|0;c[P>>2]=k;i=c[R>>2]|0;if(!i)i=c[S>>2]|0;c[f>>2]=2;c[f+4>>2]=i;f=k-g|0;if((i|0)>2147418112|f>>>0>2147418112){ia=352;break i}c[g+(n<<3)>>2]=((f>>>3)-n<<8)+2147483392|2;dr(b,fa,6);er(b,fa,o);fr(b,L,o,0)|0;r=c[T>>2]|0;c[r+(m<<3)>>2]=((((c[P>>2]|0)-r|0)>>>3)-m<<8)+2147483392|2;c[Y>>2]=e;c[fa>>2]=1;c[z>>2]=2;c[A>>2]=o;break}case 86:{q=256;ia=382;break}case 87:{q=52;ia=382;break}case 88:{q=56;ia=382;break}case 89:{q=60;ia=382;break}case 90:{q=64;ia=382;break}case 91:{q=68;ia=382;break}case 92:{q=72;ia=382;break}case 93:{q=88;ia=382;break}case 94:{q=96;ia=382;break}case 95:{q=92;ia=382;break}case 96:{q=76;ia=382;break}case 97:{q=80;ia=382;break}case 98:{q=84;ia=382;break}case 57:{r=c[Y>>2]|0;er(b,d,-1);c[Y>>2]=r;dr(b,fa,5);er(b,fa,-1);break}default:{ia=367;break i}}while(0);j:do if((ia|0)==368){ia=0;er(b,d,-1);dr(b,fa,f&31);er(b,fa,-1);c[fa>>2]=2;c[E>>2]=f>>>8;c[C>>2]=c[z>>2];c[H>>2]=c[A>>2];Sq(r,c[$>>2]|0,c[aa>>2]|0);c[z>>2]=c[t>>2];c[A>>2]=c[u>>2];Sq(r,c[v>>2]|0,c[$>>2]|0)}else if((ia|0)==369){ia=0;n=f&15;o=c[Y>>2]|0;g=o+1|0;c[Y>>2]=g;if((o|0)>65534){ia=370;break i}if((o|0)>=(c[M>>2]|0))c[M>>2]=g;er(b,d,o);g=fr(b,K,o,0)|0;c[d>>2]=1;c[t>>2]=2;c[u>>2]=g;Xq(b,f>>>7^50,0,o);f=c[P>>2]|0;g=c[T>>2]|0;i=f-g|0;m=i>>>3;if(((c[Q>>2]|0)-f|0)>>>0>7)k=g;else{f=c[b>>2]|0;g=i+72+(i>>>2)|0;if(g>>>0<i>>>0){ia=375;break i}Kn(f,c[U>>2]|0,g);k=c[(c[U>>2]|0)+20>>2]|0;f=k+i|0;c[P>>2]=f;c[T>>2]=k;c[Q>>2]=k+g}i=f+8|0;c[P>>2]=i;g=c[R>>2]|0;if(!g)g=c[S>>2]|0;c[f>>2]=2;c[f+4>>2]=g;if((g|0)>2147418112|(i-k|0)>>>0>2147418112){ia=380;break i}dr(b,fa,n);er(b,fa,o);fr(b,L,o,0)|0;r=c[T>>2]|0;c[r+(m<<3)>>2]=((((c[P>>2]|0)-r|0)>>>3)-m<<8)+2147483392|2;c[fa>>2]=1;c[z>>2]=2;c[A>>2]=o}else if((ia|0)==382){ia=0;p=(c[Z>>2]|0)==1&(f|0)==0;switch(c[d>>2]|0){case 4:{i=c[v>>2]|0;k=r+68|0;f=r+64|0;if(a[s>>0]|0?c[c[(c[((i|0)<0?k:f)>>2]|0)+(i<<4)+8>>2]>>2]&8192|0:0){ia=465;break i}m=c[k>>2]|0;if(m>>>0>=(c[r+56>>2]|0)>>>0){ia=386;break i}g=c[f>>2]|0;e=m-g>>4;f=((i|0)<0?e:0)+i|0;if(f>>>0>=e>>>0){ia=388;break i}r=g+(f<<4)|0;c[k>>2]=m+16;c[m>>2]=c[r>>2];c[m+4>>2]=c[r+4>>2];c[m+8>>2]=c[r+8>>2];c[m+12>>2]=c[r+12>>2];if(c[m>>2]&8|0){r=(c[m+8>>2]|0)+4|0;c[r>>2]=(c[r>>2]|0)+1}hr(b,da,ea)|0;do if((q|0)==256){dr(b,fa,7);if(!p){if((c[fa>>2]|0)==1){if((c[z>>2]|0)!=2)break;if((c[A>>2]|0)>>>0>=(c[V>>2]|0)>>>0)break}er(b,fa,-1);r=fr(b,L,-1,3)|0;c[fa>>2]=1;c[z>>2]=2;c[A>>2]=r}}else{k=c[Y>>2]|0;f=k+1|0;c[Y>>2]=f;if((k|0)>65534){ia=398;break i}g=c[M>>2]|0;if((k|0)>=(g|0)){c[M>>2]=f;g=f}e=c[da>>2]|0;if((e|0)<=-1){Xq(b,11,k,c[ea>>2]|0);dr(b,fa,7);er(b,fa,-1);r=fr(b,L,-1,1)|0;c[fa>>2]=1;c[z>>2]=2;c[A>>2]=r;Zq(b,q|16384,k,k,r);c[A>>2]=k;break}do if(p){f=k;k=e}else{i=k+2|0;c[Y>>2]=i;if((k|0)>65533){ia=404;break i}if((f|0)<(g|0))break;c[M>>2]=i}while(0);g=c[P>>2]|0;i=c[T>>2]|0;Xq(b,0,f,e);m=((c[P>>2]|0)-(c[T>>2]|0)|0)>>>3;dr(b,fa,7);er(b,fa,-1);o=fr(b,L,-1,1)|0;c[fa>>2]=1;c[z>>2]=2;c[A>>2]=o;n=c[P>>2]|0;if(((n-(c[T>>2]|0)|0)>>>3|0)==(m|0)){c[W>>2]=n+(g-i-(m<<3)&-8);f=e}Zq(b,q|16384,k,f,o);c[A>>2]=k;if((k|0)<(c[V>>2]|0))break;c[Y>>2]=k+1}while(0);f=c[da>>2]|0;do if((f|0)>-1){if((c[fa>>2]|0)==1){c[d>>2]=1;c[F>>2]=c[E>>2];c[t>>2]=c[z>>2];c[u>>2]=c[A>>2];c[G>>2]=c[C>>2];c[I>>2]=c[H>>2];Sq(c[b>>2]|0,c[$>>2]|0,c[v>>2]|0);Sq(c[b>>2]|0,c[aa>>2]|0,c[J>>2]|0);er(b,d,f);r=fr(b,K,f,0)|0;c[d>>2]=1;c[t>>2]=2;c[u>>2]=r;break}if(p){er(b,fa,f);r=fr(b,L,f,0)|0;c[fa>>2]=1;c[z>>2]=2;c[A>>2]=r;break}else{er(b,fa,-1);r=fr(b,L,-1,3)|0;c[fa>>2]=1;c[z>>2]=2;c[A>>2]=r;c[d>>2]=1;c[F>>2]=c[E>>2];c[t>>2]=2;c[u>>2]=r;c[G>>2]=c[C>>2];c[I>>2]=c[H>>2];Sq(c[b>>2]|0,c[$>>2]|0,c[v>>2]|0);Sq(c[b>>2]|0,c[aa>>2]|0,c[J>>2]|0);er(b,d,f);r=fr(b,K,f,0)|0;c[d>>2]=1;c[t>>2]=2;c[u>>2]=r;break}}else{er(b,fa,-1);r=fr(b,L,-1,0)|0;c[fa>>2]=1;c[z>>2]=2;c[A>>2]=r;Xq(b,2203,r,c[ea>>2]|0)}while(0);break j}case 3:{i=fr(b,K,-1,2)|0;k=fr(b,O,-1,3)|0;if((q|0)==256){dr(b,fa,7);er(b,fa,-1);f=fr(b,L,-1,1)|0;c[fa>>2]=1;c[z>>2]=2;c[A>>2]=f}else{f=c[Y>>2]|0;g=f+1|0;c[Y>>2]=g;if((f|0)>65534){ia=423;break i}if((f|0)>=(c[M>>2]|0))c[M>>2]=g;Zq(b,16492,f,i,k);dr(b,fa,7);er(b,fa,-1);r=fr(b,L,-1,1)|0;c[fa>>2]=1;c[z>>2]=2;c[A>>2]=r;Zq(b,q|16384,f,f,r)}Zq(b,18544,i,k,f);c[fa>>2]=1;c[z>>2]=2;c[A>>2]=f;break j}default:{k=c[Y>>2]|0;er(b,d,-1);c[Y>>2]=k;dr(b,fa,7);er(b,fa,-1);k=fr(b,L,-1,1)|0;c[fa>>2]=1;c[z>>2]=2;c[A>>2]=k;f=c[P>>2]|0;g=f;if(((c[Q>>2]|0)-g|0)>>>0<=7){i=c[b>>2]|0;f=g-(c[T>>2]|0)|0;g=f+72+(f>>>2)|0;if(g>>>0<f>>>0){ia=430;break i}Kn(i,c[U>>2]|0,g);r=c[(c[U>>2]|0)+20>>2]|0;f=r+f|0;c[P>>2]=f;c[T>>2]=r;c[Q>>2]=r+g}i=f+8|0;c[P>>2]=i;g=c[R>>2]|0;if(!g)g=c[S>>2]|0;c[f>>2]=170;c[f+4>>2]=g;if((g|0)>2147418112?1:(i-(c[T>>2]|0)|0)>>>0>2147418112){ia=435;break i}c[fa>>2]=1;c[z>>2]=2;c[A>>2]=k;break j}}}else if((ia|0)==437){ia=0;n=f>>>8&123;f=f>>>16;o=c[Y>>2]|0;e=o+1|0;c[Y>>2]=e;if((o|0)>65534){ia=438;break i}if((o|0)>=(c[M>>2]|0))c[M>>2]=e;switch(c[d>>2]|0){case 4:{i=c[v>>2]|0;k=r+68|0;f=r+64|0;if(a[s>>0]|0?c[c[(c[((i|0)<0?k:f)>>2]|0)+(i<<4)+8>>2]>>2]&8192|0:0){ia=464;break i}m=c[k>>2]|0;if(m>>>0>=(c[r+56>>2]|0)>>>0){ia=445;break i}g=c[f>>2]|0;q=m-g>>4;f=((i|0)<0?q:0)+i|0;if(f>>>0>=q>>>0){ia=447;break i}r=g+(f<<4)|0;c[k>>2]=m+16;c[m>>2]=c[r>>2];c[m+4>>2]=c[r+4>>2];c[m+8>>2]=c[r+8>>2];c[m+12>>2]=c[r+12>>2];if(c[m>>2]&8|0){r=(c[m+8>>2]|0)+4|0;c[r>>2]=(c[r>>2]|0)+1}if(!(hr(b,da,ea)|0))Xq(b,n|4,o,c[ea>>2]|0);else Xq(b,n,o,c[da>>2]|0);break}case 3:{Zq(b,f|16384,o,fr(b,K,-1,0)|0,fr(b,O,-1,1)|0);break}default:{er(b,d,o);f=fr(b,K,o,0)|0;c[d>>2]=1;c[t>>2]=2;c[u>>2]=f;Xq(b,15,0,o);f=c[P>>2]|0;g=f;if(((c[Q>>2]|0)-g|0)>>>0<=7){i=c[b>>2]|0;f=g-(c[T>>2]|0)|0;g=f+72+(f>>>2)|0;if(g>>>0<f>>>0){ia=457;break i}Kn(i,c[U>>2]|0,g);r=c[(c[U>>2]|0)+20>>2]|0;f=r+f|0;c[P>>2]=f;c[T>>2]=r;c[Q>>2]=r+g}i=f+8|0;c[P>>2]=i;g=c[R>>2]|0;if(!g)g=c[S>>2]|0;c[f>>2]=170;c[f+4>>2]=g;if((g|0)>2147418112?1:(i-(c[T>>2]|0)|0)>>>0>2147418112){ia=462;break i}}}c[Y>>2]=e;c[fa>>2]=1;c[z>>2]=2;c[A>>2]=o}while(0);c[d>>2]=c[fa>>2];c[F>>2]=c[E>>2];c[t>>2]=c[z>>2];c[u>>2]=c[A>>2];c[G>>2]=c[C>>2];c[I>>2]=c[H>>2];Sq(c[b>>2]|0,c[$>>2]|0,c[v>>2]|0);Sq(c[b>>2]|0,c[aa>>2]|0,c[J>>2]|0)}switch(ia|0){case 270:{Jn(r,272202,83889957,272270);break}case 272:{Un(r,4153);break}case 274:{jo(r,376,-1);break}case 276:{jo(r,376,g);break}case 283:{Jn(r,272202,50333579,272566);break}case 290:{Un(r,1093);break}case 292:{jo(r,376,n);break}case 305:{Jn(c[b>>2]|0,272202,50333579,272566);break}case 334:{Jn(r,272202,50333579,272566);break}case 339:{Jn(f,270142,50331712,268576);break}case 344:{Jn(c[b>>2]|0,272202,50332820,272614);break}case 347:{Jn(f,270142,50331712,268576);break}case 352:{Jn(c[b>>2]|0,272202,50332820,272614);break}case 367:{Jn(r,272202,83890386,272392);break}case 370:{Jn(r,272202,50333579,272566);break}case 375:{Jn(f,270142,50331712,268576);break}case 380:{Jn(c[b>>2]|0,272202,50332820,272614);break}case 386:{Un(r,1093);break}case 388:{jo(r,376,i);break}case 398:{Jn(c[b>>2]|0,272202,50333579,272566);break}case 404:{Jn(c[b>>2]|0,272202,50333579,272566);break}case 423:{Jn(c[b>>2]|0,272202,50333579,272566);break}case 430:{Jn(i,270142,50331712,268576);break}case 435:{Jn(c[b>>2]|0,272202,50332820,272614);break}case 438:{Jn(r,272202,50333579,272566);break}case 445:{Un(r,1093);break}case 447:{jo(r,376,i);break}case 457:{Jn(i,270142,50331712,268576);break}case 462:{Jn(c[b>>2]|0,272202,50332820,272614);break}case 464:{Jn(r,272202,83890876,272974);break}case 465:{Jn(r,272202,83890880,269414);break}case 467:{uq(ga);ia=c[ha>>2]|0;ia=ia+-1|0;c[ha>>2]=ia;l=ja;return}}}function er(a,b,d){a=a|0;b=b|0;d=d|0;var e=0.0,f=0,g=0,i=0,j=0,k=0.0,m=0,n=0,o=0,p=0,q=0,r=0,t=0,u=0;u=l;l=l+16|0;n=u+4|0;o=u;t=c[a>>2]|0;switch(c[b>>2]|0){case 2:{j=b+8|0;a:do if((c[j>>2]|0)==1?(c[b+20>>2]|0)==1:0){r=t+64|0;p=c[r>>2]|0;q=b+16|0;m=c[q>>2]|0;n=b+28|0;i=c[n>>2]|0;f=p+(i<<4)|0;o=p+(m<<4)|0;g=c[o>>2]|0;if(!g){if(c[f>>2]|0)break;f=p+(m<<4)+8|0;k=+h[f>>3];e=+h[p+(i<<4)+8>>3];t=(c[b+4>>2]|0)+-52|0;switch(t>>>2|t<<30|0){case 0:{e=k+e;break}case 1:{e=k-e;break}case 2:{e=k*e;break}case 3:{e=k/e;break}case 5:{a=iP(e)|0;if((a|0)!=0?!((a|0)==1&+B(+k)==1.0):0)e=+D(+k,+e);else e=s;break}default:break a}c[b>>2]=1;c[o>>2]=0;h[f>>3]=e;l=u;return}if(((g|0)==8?(c[b+4>>2]|0)==52:0)?(c[f>>2]|0)==8:0){o=t+68|0;f=c[o>>2]|0;j=t+56|0;if(f>>>0>=(c[j>>2]|0)>>>0)Un(t,1093);a=f-p>>4;d=((m|0)<0?a:0)+m|0;if(d>>>0>=a>>>0)jo(t,376,m);a=p+(d<<4)|0;c[o>>2]=f+16;c[f>>2]=c[a>>2];c[f+4>>2]=c[a+4>>2];c[f+8>>2]=c[a+8>>2];c[f+12>>2]=c[a+12>>2];if(c[f>>2]&8|0){a=(c[f+8>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+1}g=c[n>>2]|0;i=c[o>>2]|0;if(i>>>0>=(c[j>>2]|0)>>>0)Un(t,1093);f=c[r>>2]|0;a=i-f>>4;d=((g|0)<0?a:0)+g|0;if(d>>>0>=a>>>0)jo(t,376,g);a=f+(d<<4)|0;c[o>>2]=i+16;c[i>>2]=c[a>>2];c[i+4>>2]=c[a+4>>2];c[i+8>>2]=c[a+8>>2];c[i+12>>2]=c[a+12>>2];if(c[i>>2]&8|0){a=(c[i+8>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+1}Mo(t,2,0);j=c[q>>2]|0;g=c[r>>2]|0;f=(c[o>>2]|0)-g>>4;if(!f)jo(t,376,-1);i=g+(f+-1<<4)|0;d=((j|0)<0?f:0)+j|0;if(d>>>0>=f>>>0)jo(t,376,j);r=g+(d<<4)|0;a=c[r>>2]|0;d=c[g+(d<<4)+8>>2]|0;c[r>>2]=c[i>>2];c[r+4>>2]=c[i+4>>2];c[r+8>>2]=c[i+8>>2];c[r+12>>2]=c[i+12>>2];c[i>>2]=2;c[o>>2]=(c[o>>2]|0)+-16;if(a&8|0?(r=d+4|0,a=(c[r>>2]|0)+-1|0,c[r>>2]=a,(a|0)==0):0)Yn(c[t+44>>2]|0,d);c[b>>2]=1;l=u;return}}while(0);i=fr(a,j,-1,5)|0;j=fr(a,b+20|0,-1,5)|0;if((d|0)<=-1){d=c[a+1048>>2]|0;if((i|0)<(d|0))if((j|0)<(d|0)){t=a+1052|0;d=c[t>>2]|0;f=d+1|0;c[t>>2]=f;if((d|0)>65534)Jn(c[a>>2]|0,272202,50333579,272566);g=a+1056|0;if((d|0)>=(c[g>>2]|0))c[g>>2]=f}else d=j;else d=i}Zq(a,c[b+4>>2]|16384,d,i,j);c[b>>2]=1;c[b+8>>2]=2;c[b+12>>2]=d;l=u;return}case 3:{i=fr(a,b+8|0,-1,5)|0;j=fr(a,b+20|0,-1,5)|0;if((d|0)<=-1){d=c[a+1048>>2]|0;if((i|0)<(d|0))if((j|0)<(d|0)){t=a+1052|0;d=c[t>>2]|0;f=d+1|0;c[t>>2]=f;if((d|0)>65534)Jn(c[a>>2]|0,272202,50333579,272566);g=a+1056|0;if((d|0)>=(c[g>>2]|0))c[g>>2]=f}else d=j;else d=i}Zq(a,16492,d,i,j);c[b>>2]=1;c[b+8>>2]=2;c[b+12>>2]=d;l=u;return}case 4:{g=c[b+16>>2]|0;i=t+68|0;j=c[i>>2]|0;if(j>>>0>=(c[t+56>>2]|0)>>>0)Un(t,1093);m=c[t+64>>2]|0;r=j-m>>4;f=((g|0)<0?r:0)+g|0;if(f>>>0>=r>>>0)jo(t,376,g);t=m+(f<<4)|0;c[i>>2]=j+16;c[j>>2]=c[t>>2];c[j+4>>2]=c[t+4>>2];c[j+8>>2]=c[t+8>>2];c[j+12>>2]=c[t+12>>2];if(c[j>>2]&8|0){t=(c[j+8>>2]|0)+4|0;c[t>>2]=(c[t>>2]|0)+1}if(!(hr(a,n,o)|0)){if((d|0)<=-1){t=a+1052|0;d=c[t>>2]|0;f=d+1|0;c[t>>2]=f;if((d|0)>65534)Jn(c[a>>2]|0,272202,50333579,272566);g=a+1056|0;if((d|0)>=(c[g>>2]|0))c[g>>2]=f}Xq(a,11,d,c[o>>2]|0)}else d=c[n>>2]|0;c[b>>2]=1;c[b+8>>2]=2;c[b+12>>2]=d;l=u;return}case 1:{l=u;return}default:ko(t,272202,2398)}}function fr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0.0,k=0,l=0,m=0,n=0;m=c[a>>2]|0;switch(c[b>>2]|0){case 1:{l=c[m+64>>2]|0;k=c[b+8>>2]|0;switch(c[l+(k<<4)>>2]|0){case 2:{if((d|0)<=-1){l=a+1052|0;d=c[l>>2]|0;f=d+1|0;c[l>>2]=f;if((d|0)>65534)Jn(m,272202,50333579,272566);b=a+1056|0;if((d|0)>=(c[b>>2]|0))c[b>>2]=f}Xq(a,7,0,d);a=d;return a|0}case 3:{if((d|0)<=-1){l=a+1052|0;d=c[l>>2]|0;f=d+1|0;c[l>>2]=f;if((d|0)>65534)Jn(m,272202,50333579,272566);b=a+1056|0;if((d|0)>=(c[b>>2]|0))c[b>>2]=f}Xq(a,8,0,d);a=d;return a|0}case 4:{if((d|0)<=-1){e=a+1052|0;d=c[e>>2]|0;f=d+1|0;c[e>>2]=f;if((d|0)>65534)Jn(m,272202,50333579,272566);b=a+1056|0;if((d|0)>=(c[b>>2]|0))c[b>>2]=f}Xq(a,c[l+(k<<4)+8>>2]|0?9:10,0,d);a=d;return a|0}case 8:{f=m+68|0;g=c[f>>2]|0;if(g>>>0>=(c[m+56>>2]|0)>>>0)Un(m,1093);n=g-l>>4;b=((k|0)<0?n:0)+k|0;if(b>>>0>=n>>>0)jo(m,376,k);n=l+(b<<4)|0;c[f>>2]=g+16;c[g>>2]=c[n>>2];c[g+4>>2]=c[n+4>>2];c[g+8>>2]=c[n+8>>2];c[g+12>>2]=c[n+12>>2];if(c[g>>2]&8|0){n=(c[g+8>>2]|0)+4|0;c[n>>2]=(c[n>>2]|0)+1}g=Yq(a)|0;if(e&1|0){n=g;return n|0}if((d|0)<=-1){n=a+1052|0;d=c[n>>2]|0;b=d+1|0;c[n>>2]=b;if((d|0)>65534)Jn(c[a>>2]|0,272202,50333579,272566);f=a+1056|0;if((d|0)>=(c[f>>2]|0))c[f>>2]=b}Xq(a,3,d,g);n=d;return n|0}default:{e=(e&1|0)!=0;if((!e?(i=+h[l+(k<<4)+8>>3],g=~~i,+(g|0)==i):0)?(h[j>>3]=i,n=c[j+4>>2]|0,(g|0)!=0|((n|0)>-1|(n|0)==-1&(c[j>>2]|0)>>>0>4294967295)):0){if((d|0)<=-1){n=a+1052|0;d=c[n>>2]|0;f=d+1|0;c[n>>2]=f;if((d|0)>65534)Jn(m,272202,50333579,272566);b=a+1056|0;if((d|0)>=(c[b>>2]|0))c[b>>2]=f}b=g+32768|0;if(b>>>0<65536){Xq(a,4,d,b);n=d;return n|0}else{Xq(a,4,d,(g>>16)+32768|0);Xq(a,5,d,g&65535);n=d;return n|0}}f=m+68|0;g=c[f>>2]|0;if(g>>>0>=(c[m+56>>2]|0)>>>0)Un(m,1093);n=g-l>>4;b=((k|0)<0?n:0)+k|0;if(b>>>0>=n>>>0)jo(m,376,k);n=l+(b<<4)|0;c[f>>2]=g+16;c[g>>2]=c[n>>2];c[g+4>>2]=c[n+4>>2];c[g+8>>2]=c[n+8>>2];c[g+12>>2]=c[n+12>>2];if(c[g>>2]&8|0){n=(c[g+8>>2]|0)+4|0;c[n>>2]=(c[n>>2]|0)+1}g=Yq(a)|0;if(e){n=g;return n|0}if((d|0)<=-1){n=a+1052|0;d=c[n>>2]|0;b=d+1|0;c[n>>2]=b;if((d|0)>65534)Jn(c[a>>2]|0,272202,50333579,272566);f=a+1056|0;if((d|0)>=(c[f>>2]|0))c[f>>2]=b}Xq(a,3,d,g);n=d;return n|0}}}case 2:{g=c[b+4>>2]|0;b=(g|0)<0;if((d|0)>-1){if(b){Xq(a,3,d,g);n=d;return n|0}if((g|0)==(d|0)){n=d;return n|0}Xq(a,0,d,g);n=d;return n|0}if(b){if(e&1|0){n=g;return n|0}n=a+1052|0;b=c[n>>2]|0;f=b+1|0;c[n>>2]=f;if((b|0)>65534)Jn(m,272202,50333579,272566);d=a+1056|0;if((b|0)>=(c[d>>2]|0))c[d>>2]=f;Xq(a,3,b,g);n=b;return n|0}if(!(e&2)){n=g;return n|0}if((g|0)>=(c[a+1048>>2]|0)){n=g;return n|0}n=a+1052|0;b=c[n>>2]|0;f=b+1|0;c[n>>2]=f;if((b|0)>65534)Jn(m,272202,50333579,272566);d=a+1056|0;if((b|0)>=(c[d>>2]|0))c[d>>2]=f;Xq(a,0,b,g);n=b;return n|0}default:ko(m,272202,2200)}return 0}function gr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;j=a+972|0;d=c[j>>2]|0;g=a+976|0;f=c[g>>2]|0;h=d-f|0;b=b-(h>>>3)+8388607|0;if((b|0)>=16777216)Jn(c[a>>2]|0,272202,50333236,272577);i=b<<8|2;e=a+980|0;do if(((c[e>>2]|0)-d|0)>>>0<=7){b=c[a>>2]|0;d=h+72+(h>>>2)|0;if(d>>>0<h>>>0)Jn(b,270142,50331712,268576);else{l=a+984|0;Kn(b,c[l>>2]|0,d);l=c[(c[l>>2]|0)+20>>2]|0;k=l+h|0;c[j>>2]=k;c[g>>2]=l;c[e>>2]=l+d;break}}else{k=d;l=f}while(0);d=k+8|0;c[j>>2]=d;b=c[a+876>>2]|0;if(!b)b=c[a+924>>2]|0;c[k>>2]=i;c[k+4>>2]=b;if((b|0)>2147418112|(d-l|0)>>>0>2147418112)Jn(c[a>>2]|0,272202,50332820,272614);else return}function hr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0;s=c[b>>2]|0;p=s+68|0;f=c[p>>2]|0;if(f>>>0>=(c[s+56>>2]|0)>>>0)Un(s,1111);q=s+64|0;if((f-(c[q>>2]|0)|0)<16)jo(s,1114,-1);o=f+-16|0;c[p>>2]=f+16;c[f>>2]=c[o>>2];c[f+4>>2]=c[o+4>>2];c[f+8>>2]=c[o+8>>2];c[f+12>>2]=c[o+12>>2];if(c[f>>2]&8|0){o=(c[f+8>>2]|0)+4|0;c[o>>2]=(c[o>>2]|0)+1}o=c[b>>2]|0;m=o+68|0;f=c[m>>2]|0;if((c[f+-8>>2]|0)==(c[(c[o+304>>2]|0)+268>>2]|0))a[b+1131>>0]=1;l=b+1104|0;do if((c[l>>2]|0)<=0){i=c[b+1044>>2]|0;k=o+64|0;j=c[k>>2]|0;g=f-j>>4;f=((i|0)<0?g:0)+i|0;if(f>>>0>=g>>>0)jo(o,376,i);ro(o,j+(f<<4)|0,j+(g+-1<<4)|0)|0;g=c[k>>2]|0;i=(c[m>>2]|0)-g>>4;f=i+-2|0;if(i>>>0<=1)jo(o,376,-2);t=g+(f<<4)|0;i=g+(i+-1<<4)|0;j=c[t>>2]|0;f=c[g+(f<<4)+8>>2]|0;QQ(t|0,t+16|0,i-t|0)|0;c[i>>2]=2;g=(c[m>>2]|0)+-16|0;c[m>>2]=g;i=g;if((j&8|0)!=0?(j=f+4|0,t=(c[j>>2]|0)+-1|0,c[j>>2]=t,(t|0)==0):0){Yn(c[o+44>>2]|0,f);i=c[m>>2]|0;g=i}f=c[k>>2]|0;t=i-f>>4;t=t|0?f+(t+-1<<4)|0:0;if(c[((t|0)==0?936:t)>>2]|0){if((g|0)==(f|0))Jn(o,268620,50337407,268636);s=g+-16|0;c[m>>2]=s;t=c[g+-16>>2]|0;f=c[g+-8>>2]|0;c[s>>2]=2;if(t&8|0?(s=f+4|0,t=(c[s>>2]|0)+-1|0,c[s>>2]=t,(t|0)==0):0)Yn(c[o+44>>2]|0,f);if((c[b+1100>>2]|0)>0){r=36;break}if((c[l>>2]|0)>0){r=36;break}a[b+1132>>0]=1;break}Wq(o,-1);j=c[m>>2]|0;i=c[k>>2]|0;f=j-i>>4;f=f|0?i+(f+-1<<4)|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)==0?(n=+h[f+8>>3],(iP(n)|0)!=0):0)if(!(n<-2147483648.0))if(n>2147483647.0)g=2147483647;else g=~~n;else g=-2147483648;else g=0;if((j|0)==(i|0))Jn(o,268620,50337407,268636);l=j+-16|0;c[m>>2]=l;t=c[j+-16>>2]|0;f=c[j+-8>>2]|0;c[l>>2]=2;if(t&8|0?(m=f+4|0,t=(c[m>>2]|0)+-1|0,c[m>>2]=t,(t|0)==0):0)Yn(c[o+44>>2]|0,f);if((g|0)>-1){c[d>>2]=g;c[e>>2]=0;f=c[p>>2]|0;if((f|0)==(c[q>>2]|0))Jn(s,268620,50337407,268636);r=f+-16|0;c[p>>2]=r;t=c[f+-16>>2]|0;f=c[f+-8>>2]|0;c[r>>2]=2;if(!(t&8)){t=1;return t|0}r=f+4|0;t=(c[r>>2]|0)+-1|0;c[r>>2]=t;if(t|0){t=1;return t|0}Yn(c[s+44>>2]|0,f);t=1;return t|0}}else r=36;while(0);if((r|0)==36){a[b+1132>>0]=1;a[b+1133>>0]=1}t=Yq(b)|0;c[d>>2]=-1;c[e>>2]=t;t=0;return t|0}function ir(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;c[b>>2]=1;c[b+8>>2]=1;e=c[b+16>>2]|0;h=a+68|0;f=c[a+64>>2]|0;d=(c[h>>2]|0)-f>>4;if(!d)jo(a,376,-1);g=f+(d+-1<<4)|0;b=((e|0)<0?d:0)+e|0;if(b>>>0>=d>>>0)jo(a,376,e);d=f+(b<<4)|0;e=c[d>>2]|0;b=c[f+(b<<4)+8>>2]|0;c[d>>2]=c[g>>2];c[d+4>>2]=c[g+4>>2];c[d+8>>2]=c[g+8>>2];c[d+12>>2]=c[g+12>>2];c[g>>2]=2;c[h>>2]=(c[h>>2]|0)+-16;if(!(e&8))return;g=b+4|0;h=(c[g>>2]|0)+-1|0;c[g>>2]=h;if(h|0)return;Yn(c[a+44>>2]|0,b);return}function jr(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;e=c[a>>2]|0;f=e+68|0;g=c[f>>2]|0;if(g>>>0>=(c[e+56>>2]|0)>>>0)Un(e,4153);c[f>>2]=g+16;c[g>>2]=8;c[g+8>>2]=d;h=d+4|0;c[h>>2]=(c[h>>2]|0)+1;h=c[a>>2]|0;c[b>>2]=4;c[b+8>>2]=1;d=c[b+16>>2]|0;g=h+68|0;e=c[h+64>>2]|0;f=(c[g>>2]|0)-e>>4;if(!f)jo(h,376,-1);b=e+(f+-1<<4)|0;a=((d|0)<0?f:0)+d|0;if(a>>>0>=f>>>0)jo(h,376,d);d=e+(a<<4)|0;f=c[d>>2]|0;a=c[e+(a<<4)+8>>2]|0;c[d>>2]=c[b>>2];c[d+4>>2]=c[b+4>>2];c[d+8>>2]=c[b+8>>2];c[d+12>>2]=c[b+12>>2];c[b>>2]=2;c[g>>2]=(c[g>>2]|0)+-16;if(!(f&8))return;g=a+4|0;b=(c[g>>2]|0)+-1|0;c[g>>2]=b;if(b|0)return;Yn(c[h+44>>2]|0,a);return}function kr(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;D=l;l=l+912|0;t=D+904|0;A=D+4|0;w=D;C=b+68|0;g=c[C>>2]|0;B=b+64|0;f=c[B>>2]|0;e=g-f>>4;d=e>>>0>1?f+(e+-2<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)!=8)In(b,2113,-2,287721);r=c[d+8>>2]|0;if(!r)In(b,2113,-2,287721);if(c[r>>2]&512|0)In(b,2113,-2,287721);d=e|0?f+(e+-1<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)!=8)In(b,2113,-1,287721);q=c[d+8>>2]|0;if(!q)In(b,2113,-1,287721);if(c[q>>2]&512|0)In(b,2113,-1,287721);p=c[g+-24>>2]|0;o=p+28|0;p=c[p+20>>2]|0;do if(!p)if(g>>>0<(c[b+56>>2]|0)>>>0){p=Oo(b,273038,4)|0;o=c[C>>2]|0;c[C>>2]=o+16;c[o>>2]=8;c[o+8>>2]=p;p=p+4|0;c[p>>2]=(c[p>>2]|0)+1;break}else Un(b,4300);else{if(g>>>0>=(c[b+56>>2]|0)>>>0)Un(b,5237);if(p>>>0>2147483646)Jn(b,268620,50336889,268576);d=ap(c[b+44>>2]|0,p,1,t)|0;if(!d)Mn(b,268620,5246);n=c[C>>2]|0;c[n>>2]=10;c[n+8>>2]=d;n=d+4|0;c[n>>2]=(c[n>>2]|0)+1;n=c[C>>2]|0;c[C>>2]=n+16;n=c[n+8>>2]|0;m=n+20|0;f=c[m>>2]|0;g=f;j=0;k=0;e=f;f=f+p|0;while(1){h=j;j=a[o+k>>0]|0;d=g;if((f-d|0)>>>0>1){i=e;d=g}else{e=d-e|0;d=e+66+(e>>>2)|0;if(d>>>0<e>>>0){d=22;break}Kn(b,n,d);g=c[m>>2]|0;i=g;f=g+d|0;d=g+e|0}if(!(h<<24>>24==92|j<<24>>24!=47)){a[d>>0]=92;d=d+1|0}g=d+1|0;a[d>>0]=j;k=k+1|0;if(k>>>0>=p>>>0){d=27;break}else e=i}if((d|0)==22)Jn(b,270142,50331712,268576);else if((d|0)==27){Kn(b,n,g-i|0);bp(b);break}}while(0);h=A+8|0;n=A+4|0;RQ(n|0,0,896)|0;c[A>>2]=b;c[A+780>>2]=b;c[A+784>>2]=r+28;c[A+788>>2]=c[r+20>>2];c[A+836>>2]=1e8;c[A+892>>2]=1e4;d=q+28|0;g=d+(c[q+20>>2]|0)|0;a:do if(d>>>0<g>>>0){e=0;b:while(1){switch(a[d>>0]|0){case 103:{if(!(e&1))f=1;else{d=34;break b}break}case 105:{if(!(e&2))f=2;else{d=34;break b}break}case 109:{if(!(e&4))f=4;else{d=34;break b}break}default:{d=34;break b}}d=d+1|0;e=f|e;if(d>>>0>=g>>>0){s=e;break a}}if((d|0)==34)Jn(b,273043,83887118,273065)}else s=0;while(0);c[n>>2]=s;k=A+864|0;if((c[C>>2]|0)>>>0>=(c[b+56>>2]|0)>>>0)Un(b,5237);m=b+44|0;d=ap(c[m>>2]|0,64,1,t)|0;if(!d)Mn(b,268620,5246);e=c[C>>2]|0;c[e>>2]=10;c[e+8>>2]=d;e=d+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[C>>2]|0;c[C>>2]=e+16;e=c[e+8>>2]|0;g=A+876|0;c[g>>2]=e;e=c[e+20>>2]|0;c[k>>2]=e;i=A+868|0;c[i>>2]=e;j=A+872|0;c[j>>2]=e+64;c[A+792>>2]=0;c[A+796>>2]=1;c[h>>2]=A+12;Lq(h,0);e=c[j>>2]|0;t=c[k>>2]|0;d=t;do if((e|0)==(t|0)){f=c[A>>2]|0;d=e-(c[i>>2]|0)|0;e=d+65+(d>>>2)|0;if(e>>>0<d>>>0)Jn(f,270142,50331712,268576);else{Kn(f,c[g>>2]|0,e);t=c[(c[g>>2]|0)+20>>2]|0;u=t+d|0;c[k>>2]=u;c[i>>2]=t;c[j>>2]=t+e;break}}else u=d;while(0);c[k>>2]=u+1;a[u>>0]=11;e=c[j>>2]|0;u=c[k>>2]|0;d=u;do if((e|0)==(u|0)){f=c[A>>2]|0;d=e-(c[i>>2]|0)|0;e=d+65+(d>>>2)|0;if(e>>>0<d>>>0)Jn(f,270142,50331712,268576);else{Kn(f,c[g>>2]|0,e);u=c[(c[g>>2]|0)+20>>2]|0;v=u+d|0;c[k>>2]=v;c[i>>2]=u;c[j>>2]=u+e;break}}else v=d;while(0);c[k>>2]=v+1;a[v>>0]=0;mr(A,1,w);e=c[j>>2]|0;w=c[k>>2]|0;d=w;do if((e|0)==(w|0)){f=c[A>>2]|0;d=e-(c[i>>2]|0)|0;e=d+65+(d>>>2)|0;if(e>>>0<d>>>0)Jn(f,270142,50331712,268576);else{Kn(f,c[g>>2]|0,e);w=c[(c[g>>2]|0)+20>>2]|0;x=w+d|0;c[k>>2]=x;c[i>>2]=w;c[j>>2]=w+e;break}}else x=d;while(0);c[k>>2]=x+1;a[x>>0]=11;e=c[j>>2]|0;x=c[k>>2]|0;d=x;do if((e|0)==(x|0)){f=c[A>>2]|0;d=e-(c[i>>2]|0)|0;e=d+65+(d>>>2)|0;if(e>>>0<d>>>0)Jn(f,270142,50331712,268576);else{Kn(f,c[g>>2]|0,e);x=c[(c[g>>2]|0)+20>>2]|0;y=x+d|0;c[k>>2]=y;c[i>>2]=x;c[j>>2]=x+e;break}}else y=d;while(0);c[k>>2]=y+1;a[y>>0]=1;e=c[j>>2]|0;y=c[k>>2]|0;d=y;do if((e|0)==(y|0)){f=c[A>>2]|0;d=e-(c[i>>2]|0)|0;e=d+65+(d>>>2)|0;if(e>>>0<d>>>0)Jn(f,270142,50331712,268576);else{Kn(f,c[g>>2]|0,e);y=c[(c[g>>2]|0)+20>>2]|0;z=y+d|0;c[k>>2]=z;c[i>>2]=y;c[j>>2]=y+e;break}}else z=d;while(0);c[k>>2]=z+1;a[z>>0]=1;d=c[A+880>>2]|0;if((c[A+884>>2]|0)>>>0>d>>>0)Jn(b,273043,83887282,273086);nr(A,0,(d<<1)+2|0)|0;nr(A,0,c[n>>2]|0)|0;e=(c[k>>2]|0)-(c[i>>2]|0)|0;Kn(b,c[g>>2]|0,e);f=c[(c[g>>2]|0)+20>>2]|0;e=f+e|0;c[k>>2]=e;c[i>>2]=f;c[j>>2]=e;bp(b);e=c[B>>2]|0;f=(c[C>>2]|0)-e>>4;d=f+-4|0;if(f>>>0<=3)jo(b,376,-4);y=e+(d<<4)|0;z=e+(f+-1<<4)|0;A=c[y>>2]|0;d=c[e+(d<<4)+8>>2]|0;QQ(y|0,y+16|0,z-y|0)|0;c[z>>2]=2;e=(c[C>>2]|0)+-16|0;c[C>>2]=e;if((A&8|0)!=0?(z=d+4|0,A=(c[z>>2]|0)+-1|0,c[z>>2]=A,(A|0)==0):0){Yn(c[m>>2]|0,d);e=c[C>>2]|0}f=c[B>>2]|0;e=e-f>>4;d=e+-3|0;if(e>>>0<=2)jo(b,376,-3);A=f+(d<<4)|0;B=f+(e+-1<<4)|0;b=c[A>>2]|0;d=c[f+(d<<4)+8>>2]|0;QQ(A|0,A+16|0,B-A|0)|0;c[B>>2]=2;c[C>>2]=(c[C>>2]|0)+-16;if(!(b&8)){l=D;return}b=d+4|0;C=(c[b>>2]|0)+-1|0;c[b>>2]=C;if(C|0){l=D;return}Yn(c[m>>2]|0,d);l=D;return}function lr(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,i=0,j=0,k=0,l=0.0;a:do switch(c[d+4>>2]|0){case 100:case 1:{j=c[a>>2]|0;g=c[d+16>>2]|0;i=j+68|0;f=c[i>>2]|0;if(f>>>0<(c[j+56>>2]|0)>>>0){c[i>>2]=f+16;c[f>>2]=8;c[f+8>>2]=g;k=g+4|0;c[k>>2]=(c[k>>2]|0)+1;k=c[a>>2]|0;break a}else Un(j,4153);break}default:{if((c[d>>2]|0)!=99){e=1;return e|0}f=c[a>>2]|0;g=f+68|0;i=c[g>>2]|0;if(i>>>0<(c[f+56>>2]|0)>>>0){l=+h[d+8>>3];c[g>>2]=i+16;c[i>>2]=0;h[i+8>>3]=l;k=f;break a}else Un(f,4215)}}while(0);ir(k,b);j=e+1|0;k=a+1052|0;c[k>>2]=j;er(a,b,e);e=fr(a,b+8|0,e,0)|0;c[b>>2]=1;c[b+8>>2]=2;c[b+12>>2]=e;c[k>>2]=j;e=0;return e|0}function mr(d,e,f){d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0;_=l;l=l+16|0;R=_;S=d+880|0;h=c[S>>2]|0;T=d+864|0;U=d+868|0;O=(c[T>>2]|0)-(c[U>>2]|0)|0;Z=d+888|0;g=c[Z>>2]|0;if(g>>>0>=(c[d+892>>2]|0)>>>0)Jn(c[d>>2]|0,273043,50332174,273111);c[Z>>2]=g+1;w=d+8|0;x=d+844|0;y=d+832|0;Y=(c[y>>2]|0)+1|0;c[y>>2]=Y;z=d+836|0;if((Y|0)>=(c[z>>2]|0)){Y=d+780|0;Y=c[Y>>2]|0;Jn(Y,272404,50333807,272451)}A=d+852|0;B=d+12|0;C=B;D=d+872|0;E=d+876|0;F=O+1|0;G=d+856|0;H=d+860|0;I=d+848|0;J=d+4|0;K=d+884|0;L=d+896|0;M=d+792|0;N=d+796|0;t=1;s=0;V=1;X=-1;v=1;W=-1;Y=0;g=-1;a:while(1){c[x>>2]=0;c[x+4>>2]=0;c[x+8>>2]=0;c[x+12>>2]=0;c[x+16>>2]=0;i=c[w>>2]|0;j=c[i>>2]|0;k=c[i+12>>2]|0;b:do switch(j|0){case 124:{m=3073;break}case 94:{m=3075;break}case 36:{m=3076;break}case 63:{c[G>>2]=0;c[H>>2]=1;m=(k|0)==63;c[I>>2]=(m^1)&1;m=m?6146:3074;break}case 42:{c[G>>2]=0;c[H>>2]=-1;m=(k|0)==63;c[I>>2]=(m^1)&1;m=m?6146:3074;break}case 43:{c[G>>2]=1;c[H>>2]=-1;m=(k|0)==63;c[I>>2]=(m^1)&1;m=m?6146:3074;break}case 123:{q=c[i+4>>2]|0;r=c[i+8>>2]|0;p=-1;while(1){n=0;o=0;while(1){j=i+12|0;c[w>>2]=j;i=C-j+768|0;if(i>>>0<72){QQ(B|0,j|0,i|0)|0;c[w>>2]=B;Lq(w,i);m=c[w>>2]|0;i=m}else{i=j;m=j}j=c[i>>2]|0;if((j+-48|0)>>>0>=10)break;u=a[270556+j>>0]|0;n=((u<<24>>24>-1?u:-1)<<24>>24)+(n*10|0)|0;o=o+1|0}k=(o|0)>9;if((j|0)!=44){u=23;break}if((p|0)!=-1|k){u=30;break}if((c[i+12>>2]|0)==125){u=20;break}else p=n}if((u|0)==20){u=0;if(o){c[G>>2]=n;c[H>>2]=-1;i=m+24|0;c[w>>2]=i;j=C-i+768|0;if(j>>>0<72){QQ(B|0,i|0,j|0)|0;c[w>>2]=B;Lq(w,j)}}else u=30}else if((u|0)==23){u=0;if(!((o|0)==0|(k|(j|0)!=125))){c[G>>2]=(p|0)==-1?n:p;c[H>>2]=n;i=m+12|0;c[w>>2]=i;j=C-i+768|0;if(j>>>0<72){QQ(B|0,i|0,j|0)|0;c[w>>2]=B;Lq(w,j)}}else u=30}if((u|0)==30){u=0;c[M>>2]=q;c[N>>2]=r;c[w>>2]=B;Lq(w,0);c[A>>2]=123;m=3082;break b}i=c[w>>2]|0;if((c[i>>2]|0)!=63){c[I>>2]=1;m=2;break b}c[I>>2]=0;i=i+12|0;c[w>>2]=i;j=C-i+768|0;if(j>>>0<72){QQ(B|0,i|0,j|0)|0;c[w>>2]=B;Lq(w,j);m=2}else m=2;break}case 46:{m=3081;break}case 92:do switch(k|0){case 98:{m=6149;break b}case 66:{m=6150;break b}case 102:{c[A>>2]=12;m=6154;break b}case 110:{c[A>>2]=10;m=6154;break b}case 116:{c[A>>2]=9;m=6154;break b}case 114:{c[A>>2]=13;m=6154;break b}case 118:{c[A>>2]=11;m=6154;break b}case 99:{i=c[i+24>>2]|0;if(((i&-33)+-65|0)>>>0>=26){u=70;break a}c[A>>2]=(i|0)%32|0;m=9226;break b}case 117:case 120:{c[A>>2]=Uq(w,0)|0;m=10;break b}case 100:{m=6155;break b}case 68:{m=6156;break b}case 115:{m=6157;break b}case 83:{m=6158;break b}case 119:{m=6159;break b}case 87:{m=6160;break b}default:{if((k+-48|0)>>>0>=10){if((k|0)<=-1){u=70;break a}c[A>>2]=k;m=6154;break b}if((k|0)==48){if(((c[i+24>>2]|0)+-48|0)>>>0<10){u=70;break a}c[A>>2]=0;m=6154;break b}else{m=0;n=0}while(1){j=i+12|0;c[w>>2]=j;i=C-j+768|0;if(i>>>0<72){QQ(B|0,j|0,i|0)|0;c[w>>2]=B;Lq(w,i);i=c[w>>2]|0;k=i}else{k=j;i=j}j=c[k>>2]|0;if((j+-48|0)>>>0>=10)break;j=a[270556+j>>0]|0;if((m|0)>7){u=70;break a}else{m=m+1|0;n=((j<<24>>24>-1?j:-1)<<24>>24)+(n*10|0)|0}}c[A>>2]=n;m=17;break b}}while(0);case 40:{if((k|0)==63)switch(c[i+24>>2]|0){case 61:{m=9223;break b}case 33:{m=9224;break b}case 58:{m=9235;break b}default:{u=71;break a}}else m=3090;break}case 41:{m=3094;break}case 91:{m=(k|0)==94?6165:3092;break}case -1:{m=0;break}default:{c[A>>2]=j;m=3082}}while(0);i=(c[w>>2]|0)+(m>>>8)|0;c[w>>2]=i;j=C-i+768|0;if(j>>>0<72){QQ(B|0,i|0,j|0)|0;c[w>>2]=B;Lq(w,j)}i=m&31;c[x>>2]=i;k=h;h=c[S>>2]|0;c:do switch(m&31){case 22:{u=404;break a}case 0:{u=406;break a}case 1:{if((W|0)>-1){i=(c[T>>2]|0)-(c[U>>2]|0)+v|0;if((i|0)<0){if((i|0)<=-63)if((i|0)<=-1022)if((i|0)<=-32765)if((i|0)>-1048572)g=-4;else g=(i|0)>-33554427?-5:(i|0)>-1073741818?-6:-7;else g=-3;else g=-2;else g=-1;g=0-(i+g)<<1|1}else g=i<<1;i=V+W+(nr(d,W,g)|0)|0;if((i|0)<0){if((i|0)<=-63)if((i|0)<=-1022)if((i|0)<=-32765)if((i|0)>-1048572)g=-4;else g=(i|0)>-33554427?-5:(i|0)>-1073741818?-6:-7;else g=-3;else g=-2;else g=-1;g=0-(i+g)<<1|1}else g=i<<1;nr(d,X,g)|0}j=c[d>>2]|0;i=c[D>>2]|0;g=c[T>>2]|0;if((i|0)==(g|0)){g=i-(c[U>>2]|0)|0;i=g+65+(g>>>2)|0;if(i>>>0<g>>>0){u=94;break a}Kn(j,c[E>>2]|0,i);t=c[(c[E>>2]|0)+20>>2]|0;g=t+g|0;c[T>>2]=g;c[U>>2]=t;c[D>>2]=t+i;i=t}else i=c[U>>2]|0;t=i+O|0;QQ(t+1|0,t|0,g-O-i|0)|0;a[t>>0]=7;g=(c[T>>2]|0)+1|0;c[T>>2]=g;i=c[D>>2]|0;if((i|0)==(g|0)){j=c[d>>2]|0;g=i-(c[U>>2]|0)|0;i=g+65+(g>>>2)|0;if(i>>>0<g>>>0){u=98;break a}Kn(j,c[E>>2]|0,i);t=c[(c[E>>2]|0)+20>>2]|0;g=t+g|0;c[T>>2]=g;c[U>>2]=t;c[D>>2]=t+i}c[T>>2]=g+1;a[g>>0]=6;g=-1;i=-1;k=F;m=(c[T>>2]|0)-(c[U>>2]|0)|0;j=-1;break}case 2:{if((g|0)<0){u=102;break a}j=c[G>>2]|0;i=c[H>>2]|0;if(j>>>0>i>>>0){u=104;break a}if((s|0)>-1){p=(s|0)==0;q=p?(i|0)!=0&1:i;p=p?(j|0)!=0&1:j;j=c[D>>2]|0;r=c[T>>2]|0;i=r;if((j|0)==(r|0)){k=c[d>>2]|0;i=j-(c[U>>2]|0)|0;j=i+65+(i>>>2)|0;if(j>>>0<i>>>0){u=108;break a}Kn(k,c[E>>2]|0,j);r=c[(c[E>>2]|0)+20>>2]|0;i=r+i|0;c[T>>2]=i;c[U>>2]=r;c[D>>2]=r+j}c[T>>2]=i+1;a[i>>0]=1;i=c[T>>2]|0;j=c[U>>2]|0;m=i-j|0;o=m-g|0;n=c[d>>2]|0;k=(c[D>>2]|0)==(i|0);if(!(c[I>>2]|0)){if(k){i=m+65+(m>>>2)|0;if(i>>>0<m>>>0){u=126;break a}Kn(n,c[E>>2]|0,i);j=c[(c[E>>2]|0)+20>>2]|0;s=j+m|0;c[T>>2]=s;c[U>>2]=j;c[D>>2]=j+i;i=s}s=j+g|0;QQ(s+1|0,s|0,i+t-j|0)|0;a[s>>0]=9;c[T>>2]=(c[T>>2]|0)+1;i=g+1|0;i=(nr(d,i,p)|0)+i|0;i=i+(nr(d,i,q)|0)|0;if((o|0)<0){if((o|0)<=-63)if((o|0)<=-1022)if((o|0)<=-32765)if((o|0)>-1048572)g=-4;else g=(o|0)>-33554427?-5:(o|0)>-1073741818?-6:-7;else g=-3;else g=-2;else g=-1;g=0-(o+g)<<1|1}else g=o<<1;nr(d,i,g)|0;g=-1;i=-1;k=X;m=W;j=-1;break c}else{if(k){i=m+65+(m>>>2)|0;if(i>>>0<m>>>0){u=113;break a}Kn(n,c[E>>2]|0,i);j=c[(c[E>>2]|0)+20>>2]|0;r=j+m|0;c[T>>2]=r;c[U>>2]=j;c[D>>2]=j+i;i=r}r=j+g|0;QQ(r+1|0,r|0,i+t-j|0)|0;a[r>>0]=10;c[T>>2]=(c[T>>2]|0)+1;i=g+1|0;i=(nr(d,i,p)|0)+i|0;i=i+(nr(d,i,q)|0)|0;i=i+(nr(d,i,s)|0)|0;if((o|0)<0){if((o|0)<=-63)if((o|0)<=-1022)if((o|0)<=-32765)if((o|0)>-1048572)g=-4;else g=(o|0)>-33554427?-5:(o|0)>-1073741818?-6:-7;else g=-3;else g=-2;else g=-1;g=0-(o+g)<<1|1}else g=o<<1;nr(d,i,g)|0;g=-1;i=-1;k=X;m=W;j=-1;break c}}if((c[((i|0)==-1?G:H)>>2]|0)>>>0>1e3){u=138;break a}if((h|0)==(k|0))m=c[T>>2]|0;else{nr(d,g,h-k<<1)|0;nr(d,g,(k<<1)+2|0)|0;k=c[d>>2]|0;j=c[D>>2]|0;i=c[T>>2]|0;if((j|0)==(i|0)){i=j-(c[U>>2]|0)|0;j=i+65+(i>>>2)|0;if(j>>>0<i>>>0){u=144;break a}Kn(k,c[E>>2]|0,j);s=c[(c[E>>2]|0)+20>>2]|0;i=s+i|0;c[T>>2]=i;c[U>>2]=s;c[D>>2]=s+j;j=s}else j=c[U>>2]|0;m=j+g|0;QQ(m+1|0,m|0,i+t-j|0)|0;a[m>>0]=12;m=(c[T>>2]|0)+1|0;c[T>>2]=m;i=c[H>>2]|0;j=c[G>>2]|0}p=m-(c[U>>2]|0)|0;t=p-g|0;if(j){o=t+64|0;do{n=c[d>>2]|0;if(((c[D>>2]|0)-m|0)>>>0<t>>>0){k=m-(c[U>>2]|0)|0;m=o+k+(k>>>2)|0;if(m>>>0<k>>>0){u=152;break a}Kn(n,c[E>>2]|0,m);r=c[(c[E>>2]|0)+20>>2]|0;s=r+k|0;c[T>>2]=s;c[U>>2]=r;c[D>>2]=r+m;k=r;m=s}else k=c[U>>2]|0;PQ(m|0,k+g|0,t|0)|0;m=(c[T>>2]|0)+t|0;c[T>>2]=m;j=j+-1|0;i=(i|0)==-1?-1:i+-1|0}while((j|0)!=0)}d:do if((i|0)!=-1){r=m-(c[U>>2]|0)|0;if(i|0){s=t+64|0;o=r>>>0>g>>>0?g:p;q=r+1|0;p=~r;while(1){n=c[d>>2]|0;if(((c[D>>2]|0)-m|0)>>>0<t>>>0){j=m-(c[U>>2]|0)|0;k=s+j+(j>>>2)|0;if(k>>>0<j>>>0){u=198;break a}Kn(n,c[E>>2]|0,k);n=c[(c[E>>2]|0)+20>>2]|0;m=n+j|0;c[T>>2]=m;c[U>>2]=n;c[D>>2]=n+k;j=n}else j=c[U>>2]|0;n=j+r|0;QQ(n+t|0,n|0,m-r-j|0)|0;PQ(n|0,j+o|0,t|0)|0;j=(c[T>>2]|0)+t|0;c[T>>2]=j;n=c[d>>2]|0;k=c[D>>2]|0;m=(k|0)==(j|0);if(!(c[I>>2]|0)){if(m){j=k-(c[U>>2]|0)|0;k=j+65+(j>>>2)|0;if(k>>>0<j>>>0){u=210;break a}Kn(n,c[E>>2]|0,k);n=c[(c[E>>2]|0)+20>>2]|0;j=n+j|0;c[T>>2]=j;c[U>>2]=n;c[D>>2]=n+k;k=n}else k=c[U>>2]|0;n=k+r|0;QQ(n+1|0,n|0,j-r-k|0)|0;a[n>>0]=8}else{if(m){j=k-(c[U>>2]|0)|0;k=j+65+(j>>>2)|0;if(k>>>0<j>>>0){u=204;break a}Kn(n,c[E>>2]|0,k);n=c[(c[E>>2]|0)+20>>2]|0;j=n+j|0;c[T>>2]=j;c[U>>2]=n;c[D>>2]=n+k;k=n}else k=c[U>>2]|0;n=k+r|0;QQ(n+1|0,n|0,j-r-k|0)|0;a[n>>0]=7}k=(c[T>>2]|0)+1|0;c[T>>2]=k;k=k-(c[U>>2]|0)+p|0;if((k|0)<0){do if((k|0)>-63)j=-1;else{if((k|0)>-1022){j=-2;break}if((k|0)>-32765){j=-3;break}if((k|0)>-1048572){j=-4;break}j=(k|0)>-33554427?-5:(k|0)>-1073741818?-6:-7}while(0);j=0-(k+j)<<1|1}else j=k<<1;nr(d,q,j)|0;i=i+-1|0;if(!i)break d;m=c[T>>2]|0}}}else{if(!(c[G>>2]|0)){i=m;if((c[D>>2]|0)==(m|0)){k=c[d>>2]|0;i=m-(c[U>>2]|0)|0;j=i+65+(i>>>2)|0;if(j>>>0<i>>>0){u=159;break a}Kn(k,c[E>>2]|0,j);s=c[(c[E>>2]|0)+20>>2]|0;i=s+i|0;c[T>>2]=i;c[U>>2]=s;c[D>>2]=s+j}c[T>>2]=i+1;a[i>>0]=6;j=(c[T>>2]|0)-(c[U>>2]|0)|0;if((t|0)<0){do if((t|0)>-63)i=-1;else{if((t|0)>-1022){i=-2;break}if((t|0)>-32765){i=-3;break}i=(t|0)>-1048572?-4:(t|0)>-33554427?-5:(t|0)>-1073741818?-6:-7}while(0);i=0-(t+i)<<1|1}else i=t<<1;nr(d,j,i)|0;k=c[d>>2]|0;i=c[T>>2]|0;if(((c[D>>2]|0)-i|0)>>>0<t>>>0){i=i-(c[U>>2]|0)|0;j=t+64+i+(i>>>2)|0;if(j>>>0<i>>>0){u=171;break a}Kn(k,c[E>>2]|0,j);s=c[(c[E>>2]|0)+20>>2]|0;i=s+i|0;c[T>>2]=i;c[U>>2]=s;c[D>>2]=s+j;j=s}else j=c[U>>2]|0;PQ(i|0,j+g|0,t|0)|0;m=(c[T>>2]|0)+t|0;c[T>>2]=m}j=(c[D>>2]|0)==(m|0);i=m;if(!(c[I>>2]|0)){if(j){k=c[d>>2]|0;i=m-(c[U>>2]|0)|0;j=i+65+(i>>>2)|0;if(j>>>0<i>>>0){u=182;break a}Kn(k,c[E>>2]|0,j);s=c[(c[E>>2]|0)+20>>2]|0;i=s+i|0;c[T>>2]=i;c[U>>2]=s;c[D>>2]=s+j}c[T>>2]=i+1;a[i>>0]=7}else{if(j){k=c[d>>2]|0;i=m-(c[U>>2]|0)|0;j=i+65+(i>>>2)|0;if(j>>>0<i>>>0){u=177;break a}Kn(k,c[E>>2]|0,j);s=c[(c[E>>2]|0)+20>>2]|0;i=s+i|0;c[T>>2]=i;c[U>>2]=s;c[D>>2]=s+j}c[T>>2]=i+1;a[i>>0]=8}j=~t;k=(c[T>>2]|0)-(c[U>>2]|0)|0;if((t|0)>-1){do if((t|0)>=62)if((t|0)<1021)i=-2;else{if((t|0)<32764){i=-3;break}i=(t|0)<1048571?-4:(t|0)<33554426?-5:(t|0)<1073741817?-6:-7}else i=-1;while(0);i=0-(i+j)<<1|1}else i=j<<1;nr(d,k,i)|0}while(0);i=(c[U>>2]|0)+g|0;g=i+t|0;QQ(i|0,g|0,(c[T>>2]|0)-g|0)|0;c[T>>2]=(c[T>>2]|0)+(0-t);g=-1;i=-1;k=X;m=W;j=-1;break}case 3:{i=c[D>>2]|0;t=c[T>>2]|0;g=t;if((i|0)==(t|0)){j=c[d>>2]|0;g=i-(c[U>>2]|0)|0;i=g+65+(g>>>2)|0;if(i>>>0<g>>>0){u=226;break a}Kn(j,c[E>>2]|0,i);t=c[(c[E>>2]|0)+20>>2]|0;g=t+g|0;c[T>>2]=g;c[U>>2]=t;c[D>>2]=t+i}c[T>>2]=g+1;a[g>>0]=16;g=-1;i=-1;k=X;m=W;j=Y;break}case 4:{i=c[D>>2]|0;t=c[T>>2]|0;g=t;if((i|0)==(t|0)){j=c[d>>2]|0;g=i-(c[U>>2]|0)|0;i=g+65+(g>>>2)|0;if(i>>>0<g>>>0){u=231;break a}Kn(j,c[E>>2]|0,i);t=c[(c[E>>2]|0)+20>>2]|0;g=t+g|0;c[T>>2]=g;c[U>>2]=t;c[D>>2]=t+i}c[T>>2]=g+1;a[g>>0]=17;g=-1;i=-1;k=X;m=W;j=Y;break}case 5:{i=c[D>>2]|0;t=c[T>>2]|0;g=t;if((i|0)==(t|0)){j=c[d>>2]|0;g=i-(c[U>>2]|0)|0;i=g+65+(g>>>2)|0;if(i>>>0<g>>>0){u=236;break a}Kn(j,c[E>>2]|0,i);t=c[(c[E>>2]|0)+20>>2]|0;g=t+g|0;c[T>>2]=g;c[U>>2]=t;c[D>>2]=t+i}c[T>>2]=g+1;a[g>>0]=18;g=-1;i=-1;k=X;m=W;j=Y;break}case 6:{i=c[D>>2]|0;t=c[T>>2]|0;g=t;if((i|0)==(t|0)){j=c[d>>2]|0;g=i-(c[U>>2]|0)|0;i=g+65+(g>>>2)|0;if(i>>>0<g>>>0){u=241;break a}Kn(j,c[E>>2]|0,i);t=c[(c[E>>2]|0)+20>>2]|0;g=t+g|0;c[T>>2]=g;c[U>>2]=t;c[D>>2]=t+i}c[T>>2]=g+1;a[g>>0]=19;g=-1;i=-1;k=X;m=W;j=Y;break}case 8:case 7:{k=(i|0)==7?13:14;m=(c[T>>2]|0)-(c[U>>2]|0)|0;mr(d,0,R);i=c[D>>2]|0;t=c[T>>2]|0;g=t;if((i|0)==(t|0)){j=c[d>>2]|0;g=i-(c[U>>2]|0)|0;i=g+65+(g>>>2)|0;if(i>>>0<g>>>0){u=246;break a}Kn(j,c[E>>2]|0,i);t=c[(c[E>>2]|0)+20>>2]|0;g=t+g|0;c[T>>2]=g;c[U>>2]=t;c[D>>2]=t+i}c[T>>2]=g+1;a[g>>0]=1;nr(d,m,k)|0;j=m+1|0;i=(c[T>>2]|0)-(c[U>>2]|0)+~m|0;if((i|0)<0){if((i|0)<=-63)if((i|0)<=-1022)if((i|0)<=-32765)if((i|0)>-1048572)g=-4;else g=(i|0)>-33554427?-5:(i|0)>-1073741818?-6:-7;else g=-3;else g=-2;else g=-1;g=0-(i+g)<<1|1}else g=i<<1;nr(d,j,g)|0;g=-1;i=-1;k=X;m=W;j=-1;break}case 9:{u=c[T>>2]|0;j=u-(c[U>>2]|0)|0;g=u;if((c[D>>2]|0)==(u|0)){i=c[d>>2]|0;g=j+65+(j>>>2)|0;if(g>>>0<j>>>0){u=259;break a}Kn(i,c[E>>2]|0,g);t=c[(c[E>>2]|0)+20>>2]|0;u=t+j|0;c[T>>2]=u;c[U>>2]=t;c[D>>2]=t+g;g=u}c[T>>2]=g+1;a[g>>0]=3;n=1;g=j;u=409;break}case 10:{t=c[T>>2]|0;g=t-(c[U>>2]|0)|0;i=t;if((c[D>>2]|0)==(t|0)){i=c[d>>2]|0;j=g+65+(g>>>2)|0;if(j>>>0<g>>>0){u=264;break a}Kn(i,c[E>>2]|0,j);t=c[(c[E>>2]|0)+20>>2]|0;i=t+g|0;c[T>>2]=i;c[U>>2]=t;c[D>>2]=t+j}c[T>>2]=i+1;a[i>>0]=2;i=c[A>>2]|0;if(c[J>>2]&2){t=or(0,i,-1,-1,1)|0;i=(t|0)<0|(i|0)>127&(t|0)<128?i:t}k=c[T>>2]|0;j=k;if(((c[D>>2]|0)-k|0)>>>0<7){m=c[d>>2]|0;j=k-(c[U>>2]|0)|0;k=j+71+(j>>>2)|0;if(k>>>0<j>>>0){u=270;break a}Kn(m,c[E>>2]|0,k);t=c[(c[E>>2]|0)+20>>2]|0;n=t+j|0;c[T>>2]=n;c[U>>2]=t;c[D>>2]=t+k}else n=j;if(i>>>0<128){k=0;j=1}else{if(i>>>0>=2048)if(i>>>0>=65536)if(i>>>0>=2097152)if(i>>>0<67108864){j=5;u=277}else j=i>>>31|6;else{j=4;u=277}else{j=3;u=277}else{j=2;u=277}k=a[269353+(j+-1)>>0]|0;m=j;do{m=m+-1|0;a[n+m>>0]=i&63|128;i=i>>>6}while((m|0)>1)}a[n>>0]=i+(k&255);c[T>>2]=(c[T>>2]|0)+j;n=1;u=409;break}case 16:case 15:case 14:case 13:case 12:case 11:{u=c[T>>2]|0;g=u-(c[U>>2]|0)|0;k=5-(m&1)|0;n=(i+-11|0)>>>1;m=c[4208+(n<<2)>>2]|0;n=a[273301+n>>0]|0;o=n&255;i=u;if((c[D>>2]|0)==(u|0)){j=c[d>>2]|0;i=g+65+(g>>>2)|0;if(i>>>0<g>>>0){u=283;break a}Kn(j,c[E>>2]|0,i);t=c[(c[E>>2]|0)+20>>2]|0;u=t+g|0;c[T>>2]=u;c[U>>2]=t;c[D>>2]=t+i;i=u}c[T>>2]=i+1;a[i>>0]=k;j=c[D>>2]|0;u=c[T>>2]|0;i=u;if((j|0)==(u|0)){k=c[d>>2]|0;i=j-(c[U>>2]|0)|0;j=i+65+(i>>>2)|0;if(j>>>0<i>>>0){u=287;break a}Kn(k,c[E>>2]|0,j);u=c[(c[E>>2]|0)+20>>2]|0;i=u+i|0;c[T>>2]=i;c[U>>2]=u;c[D>>2]=u+j}c[T>>2]=i+1;a[i>>0]=n;p=m;o=o<<1;j=c[T>>2]|0;while(1){o=o+-1|0;n=b[p>>1]|0;p=p+2|0;k=n&65535;i=j;if(((c[D>>2]|0)-j|0)>>>0<7){m=c[d>>2]|0;i=j-(c[U>>2]|0)|0;j=i+71+(i>>>2)|0;if(j>>>0<i>>>0){u=292;break a}Kn(m,c[E>>2]|0,j);u=c[(c[E>>2]|0)+20>>2]|0;i=u+i|0;c[T>>2]=i;c[U>>2]=u;c[D>>2]=u+j}if((n&65535)<128){m=0;j=1}else{j=(n&65535)<2048?2:3;m=a[269353+(j+-1)>>0]|0;n=j;do{n=n+-1|0;a[i+n>>0]=k&63|128;k=k>>>6}while((n|0)>1)}a[i>>0]=k+(m&255);j=(c[T>>2]|0)+j|0;c[T>>2]=j;if(!o){n=1;u=409;break}}break}case 17:{m=c[A>>2]|0;if(m>>>0>(c[K>>2]|0)>>>0)c[K>>2]=m;t=c[T>>2]|0;g=t-(c[U>>2]|0)|0;i=t;if((c[D>>2]|0)==(t|0)){i=c[d>>2]|0;j=g+65+(g>>>2)|0;if(j>>>0<g>>>0){u=302;break a}Kn(i,c[E>>2]|0,j);t=c[(c[E>>2]|0)+20>>2]|0;i=t+g|0;c[T>>2]=i;c[U>>2]=t;c[D>>2]=t+j}c[T>>2]=i+1;a[i>>0]=15;j=c[T>>2]|0;i=j;if(((c[D>>2]|0)-j|0)>>>0<7){k=c[d>>2]|0;i=j-(c[U>>2]|0)|0;j=i+71+(i>>>2)|0;if(j>>>0<i>>>0){u=306;break a}Kn(k,c[E>>2]|0,j);t=c[(c[E>>2]|0)+20>>2]|0;n=t+i|0;c[T>>2]=n;c[U>>2]=t;c[D>>2]=t+j}else n=i;if(m>>>0<128){j=m;k=0;i=1}else{if(m>>>0>=2048)if(m>>>0>=65536)if(m>>>0>=2097152)if(m>>>0<67108864){i=5;u=313}else i=m>>>31|6;else{i=4;u=313}else{i=3;u=313}else{i=2;u=313}k=a[269353+(i+-1)>>0]|0;j=m;m=i;do{m=m+-1|0;a[n+m>>0]=j&63|128;j=j>>>6}while((m|0)>1)}a[n>>0]=j+(k&255);c[T>>2]=(c[T>>2]|0)+i;n=-1;u=409;break}case 18:{t=c[T>>2]|0;g=t-(c[U>>2]|0)|0;p=h+1|0;c[S>>2]=p;i=t;if((c[D>>2]|0)==(t|0)){i=c[d>>2]|0;j=g+65+(g>>>2)|0;if(j>>>0<g>>>0){u=319;break a}Kn(i,c[E>>2]|0,j);t=c[(c[E>>2]|0)+20>>2]|0;i=t+g|0;c[T>>2]=i;c[U>>2]=t;c[D>>2]=t+j}c[T>>2]=i+1;a[i>>0]=11;o=p<<1;j=c[T>>2]|0;i=j;if(((c[D>>2]|0)-j|0)>>>0<7){k=c[d>>2]|0;i=j-(c[U>>2]|0)|0;j=i+71+(i>>>2)|0;if(j>>>0<i>>>0){u=323;break a}Kn(k,c[E>>2]|0,j);t=c[(c[E>>2]|0)+20>>2]|0;n=t+i|0;c[T>>2]=n;c[U>>2]=t;c[D>>2]=t+j}else n=i;if(o>>>0<128){j=o;k=0;i=1}else{if(o>>>0>=2048)if(o>>>0>=65536)if(o>>>0>=2097152)if(o>>>0<67108864){i=5;u=330}else i=p>>>30|6;else{i=4;u=330}else{i=3;u=330}else{i=2;u=330}if((u|0)==330)u=0;k=a[269353+(i+-1)>>0]|0;j=o;m=i;do{m=m+-1|0;a[n+m>>0]=j&63|128;j=j>>>6}while((m|0)>1)}a[n>>0]=j+(k&255);c[T>>2]=(c[T>>2]|0)+i;mr(d,0,R);j=c[D>>2]|0;t=c[T>>2]|0;i=t;if((j|0)==(t|0)){k=c[d>>2]|0;i=j-(c[U>>2]|0)|0;j=i+65+(i>>>2)|0;if(j>>>0<i>>>0){u=335;break a}Kn(k,c[E>>2]|0,j);t=c[(c[E>>2]|0)+20>>2]|0;i=t+i|0;c[T>>2]=i;c[U>>2]=t;c[D>>2]=t+j}c[T>>2]=i+1;a[i>>0]=11;j=o|1;k=c[T>>2]|0;i=k;if(((c[D>>2]|0)-k|0)>>>0<7){m=c[d>>2]|0;i=k-(c[U>>2]|0)|0;k=i+71+(i>>>2)|0;if(k>>>0<i>>>0){u=339;break a}Kn(m,c[E>>2]|0,k);t=c[(c[E>>2]|0)+20>>2]|0;n=t+i|0;c[T>>2]=n;c[U>>2]=t;c[D>>2]=t+k}else n=i;if(j>>>0<128){k=0;i=1}else{if(j>>>0>=2048)if(j>>>0>=65536)if(j>>>0>=2097152)if(j>>>0<67108864){i=5;u=346}else i=p>>>30|6;else{i=4;u=346}else{i=3;u=346}else{i=2;u=346}k=a[269353+(i+-1)>>0]|0;m=i;do{m=m+-1|0;a[n+m>>0]=j&63|128;j=j>>>6}while((m|0)>1)}a[n>>0]=j+(k&255);c[T>>2]=(c[T>>2]|0)+i;n=-1;u=409;break}case 19:{g=(c[T>>2]|0)-(c[U>>2]|0)|0;mr(d,0,R);n=c[R>>2]|0;u=409;break}case 21:case 20:{u=c[T>>2]|0;g=u-(c[U>>2]|0)|0;k=(i|0)==20;i=u;if((c[D>>2]|0)==(u|0)){j=c[d>>2]|0;i=g+65+(g>>>2)|0;if(i>>>0<g>>>0){u=353;break a}Kn(j,c[E>>2]|0,i);t=c[(c[E>>2]|0)+20>>2]|0;u=t+g|0;c[T>>2]=u;c[U>>2]=t;c[D>>2]=t+i;i=u}c[T>>2]=i+1;a[i>>0]=k?4:5;p=(c[T>>2]|0)-(c[U>>2]|0)|0;c[L>>2]=0;n=-1;o=0;i=0;e:while(1){j=(c[w>>2]|0)+(i*12|0)|0;c[w>>2]=j;i=C-j+768|0;if(i>>>0<72){QQ(B|0,j|0,i|0)|0;c[w>>2]=B;Lq(w,i);i=c[w>>2]|0;m=i}else{m=j;i=j}j=c[m>>2]|0;if((j|0)<0){u=402;break a}f:do switch(j|0){case 93:break e;case 45:{if(!((o|0)!=0|(n|0)<0)?(c[m+12>>2]|0)!=93:0){u=n;o=1;i=1;n=u;continue e}else{j=45;i=1;u=389}break}case 92:{j=c[m+12>>2]|0;g:do switch(j|0){case 98:{j=8;i=2;u=389;break f}case 102:{j=12;i=2;u=389;break f}case 110:{j=10;i=2;u=389;break f}case 116:{j=9;i=2;u=389;break f}case 114:{j=13;i=2;u=389;break f}case 118:{j=11;i=2;u=389;break f}case 99:{i=c[m+24>>2]|0;if(((i&-33)+-65|0)>>>0>=26){u=400;break a}j=(i|0)%32|0;i=3;u=391;break}case 117:case 120:{j=Uq(w,0)|0;i=0;u=391;break}case 100:{qr(d,48,57);u=390;break}case 68:{qr(d,0,47);qr(d,58,65535);u=390;break}case 115:{qr(d,9,13);qr(d,32,32);qr(d,160,160);qr(d,5760,5760);qr(d,6158,6158);qr(d,8192,8202);qr(d,8232,8233);qr(d,8239,8239);qr(d,8287,8287);qr(d,12288,12288);qr(d,65279,65279);u=390;break}case 83:{qr(d,0,8);qr(d,14,31);qr(d,33,159);qr(d,161,5759);qr(d,5761,6157);qr(d,6159,8191);qr(d,8203,8231);qr(d,8234,8238);qr(d,8240,8286);qr(d,8288,12287);qr(d,12289,65278);qr(d,65280,65535);u=390;break}case 119:{qr(d,48,57);qr(d,65,90);qr(d,95,95);qr(d,97,122);u=390;break}case 87:{qr(d,0,47);qr(d,58,64);qr(d,91,94);qr(d,96,96);qr(d,123,65535);u=390;break}default:{k=j+-48|0;if(k>>>0>=10)if((j|0)>-1){i=2;u=389;break f}else{u=400;break a}if((j&-8|0)!=48){i=2;u=389;break f}i=c[m+24>>2]|0;if((i&-8|0)==48?(P=(k<<3)+-48+i|0,(P|0)<=255):0){i=c[m+36>>2]|0;if((i&-8|0)==48?(Q=(P<<3)+-48+i|0,(Q|0)<=255):0){j=Q;i=4;u=391;break g}else{i=3;j=P}}else{i=2;j=k}u=391}}while(0);do if((u|0)==390)if((n|0)>-1)i=2;else{t=o;u=n;i=2;o=t;n=u;continue e}else if((u|0)==391){u=0;k=(n|0)>-1;if((j|0)<0)if(k)break;else{t=o;u=n;o=t;n=u;continue e}else if(k)break f;else{u=o;n=j;o=u;continue e}}while(0);if(o|0){u=401;break a}pr(d,n,n);n=-1;o=0;continue e}default:{i=1;u=389}}while(0);if((u|0)==389)if((n|0)<=-1){u=o;n=j;o=u;continue}if(!o){pr(d,n,n);n=j;o=0;continue}if((n|0)>(j|0)){u=401;break a}pr(d,n,j);n=-1;o=0}if((n|0)>-1){pr(d,n,n);i=c[w>>2]|0}i=i+12|0;c[w>>2]=i;j=C-i+768|0;if(j>>>0<72){QQ(B|0,i|0,j|0)|0;c[w>>2]=B;Lq(w,j)}nr(d,p,c[L>>2]|0)|0;n=1;u=409;break}default:{u=408;break a}}while(0);if((u|0)==409){u=0;if((g|0)>-1){i=n;k=X;m=W;j=(n|0)<0?-1:((Y|0)>-1?n:0)+Y|0}else{i=n;k=X;m=W;j=Y}}t=(c[y>>2]|0)+1|0;c[y>>2]=t;if((t|0)>=(c[z>>2]|0)){u=69;break}else{t=0-g|0;s=i;V=0-k|0;X=k;v=0-m|0;W=m;Y=j}}switch(u|0){case 69:{S=d+780|0;S=c[S>>2]|0;Jn(S,272404,50333807,272451);break}case 70:{Jn(c[d+780>>2]|0,272404,83888243,273143);break}case 71:{Jn(c[d+780>>2]|0,272404,83888247,273165);break}case 94:{Jn(j,270142,50331712,268576);break}case 98:{Jn(j,270142,50331712,268576);break}case 102:{Jn(c[d>>2]|0,273043,83886679,273186);break}case 104:{Jn(c[d>>2]|0,273043,83886682,273220);break}case 108:{Jn(k,270142,50331712,268576);break}case 113:{Jn(n,270142,50331712,268576);break}case 126:{Jn(n,270142,50331712,268576);break}case 138:{Jn(c[d>>2]|0,273043,50332318,273260);break}case 144:{Jn(k,270142,50331712,268576);break}case 152:{Jn(n,270142,50331712,268576);break}case 159:{Jn(k,270142,50331712,268576);break}case 171:{Jn(k,270142,50331712,268576);break}case 177:{Jn(k,270142,50331712,268576);break}case 182:{Jn(k,270142,50331712,268576);break}case 198:{Jn(n,270142,50331712,268576);break}case 204:{Jn(n,270142,50331712,268576);break}case 210:{Jn(n,270142,50331712,268576);break}case 226:{Jn(j,270142,50331712,268576);break}case 231:{Jn(j,270142,50331712,268576);break}case 236:{Jn(j,270142,50331712,268576);break}case 241:{Jn(j,270142,50331712,268576);break}case 246:{Jn(j,270142,50331712,268576);break}case 259:{Jn(i,270142,50331712,268576);break}case 264:{Jn(i,270142,50331712,268576);break}case 270:{Jn(m,270142,50331712,268576);break}case 283:{Jn(j,270142,50331712,268576);break}case 287:{Jn(k,270142,50331712,268576);break}case 292:{Jn(m,270142,50331712,268576);break}case 302:{Jn(i,270142,50331712,268576);break}case 306:{Jn(k,270142,50331712,268576);break}case 319:{Jn(i,270142,50331712,268576);break}case 323:{Jn(k,270142,50331712,268576);break}case 335:{Jn(k,270142,50331712,268576);break}case 339:{Jn(m,270142,50331712,268576);break}case 353:{Jn(j,270142,50331712,268576);break}case 400:{Jn(c[d+780>>2]|0,272404,83888505,273143);break}case 401:{Jn(c[d+780>>2]|0,272404,83888509,273304);break}case 402:{Jn(c[d+780>>2]|0,272404,83888513,273318);break}case 404:{if(e|0)Jn(c[d>>2]|0,273043,83887013,273347);break}case 406:{if(!e)Jn(c[d>>2]|0,273043,83887019,273378);break}case 408:{Jn(c[d>>2]|0,273043,83887024,273404);break}}if((W|0)<=-1){c[f>>2]=Y;f=c[Z>>2]|0;f=f+-1|0;c[Z>>2]=f;l=_;return}h=(c[T>>2]|0)-(c[U>>2]|0)+v|0;if((h|0)<0){if((h|0)<=-63)if((h|0)<=-1022)if((h|0)<=-32765)if((h|0)>-1048572)g=-4;else g=(h|0)>-33554427?-5:(h|0)>-1073741818?-6:-7;else g=-3;else g=-2;else g=-1;g=0-(h+g)<<1|1}else g=h<<1;h=V+W+(nr(d,W,g)|0)|0;if((h|0)<0){if((h|0)<=-63)if((h|0)<=-1022)if((h|0)<=-32765)if((h|0)>-1048572)g=-4;else g=(h|0)>-33554427?-5:(h|0)>-1073741818?-6:-7;else g=-3;else g=-2;else g=-1;g=0-(h+g)<<1|1}else g=h<<1;nr(d,X,g)|0;c[f>>2]=Y;f=c[Z>>2]|0;f=f+-1|0;c[Z>>2]=f;l=_;return}function nr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;n=q;if(e>>>0<128){g=0;f=1}else{if(e>>>0>=2048)if(e>>>0>=65536)if(e>>>0>=2097152)if(e>>>0<67108864){f=5;g=6}else f=e>>>31|6;else{f=4;g=6}else{f=3;g=6}else{f=2;g=6}g=a[269353+(f+-1)>>0]|0;h=f;do{h=h+-1|0;a[n+h>>0]=e&63|128;e=e>>>6}while((h|0)>1)}a[n>>0]=e+(g&255);h=c[b>>2]|0;i=b+864|0;j=b+872|0;e=c[i>>2]|0;k=b+868|0;do if(((c[j>>2]|0)-e|0)>>>0<f>>>0){e=e-(c[k>>2]|0)|0;g=f+64+e+(e>>>2)|0;if(g>>>0<e>>>0)Jn(h,270142,50331712,268576);else{o=b+876|0;Kn(h,c[o>>2]|0,g);o=c[(c[o>>2]|0)+20>>2]|0;p=o+e|0;c[i>>2]=p;c[k>>2]=o;c[j>>2]=o+g;m=i;break}}else{m=i;o=c[k>>2]|0;p=e}while(0);b=o+d|0;QQ(b+f|0,b|0,p-d-o|0)|0;PQ(b|0,n|0,f|0)|0;c[m>>2]=(c[m>>2]|0)+f;l=q;return f|0}function or(b,e,f,g,h){b=b|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;h=(h|0)!=0;if((e|0)<128){h=(((h?-97:-65)+e|0)>>>0<26?(h?-32:32):0)+e|0;if(!b){b=h;return b|0}u=c[b>>2]|0;c[b>>2]=u+1;a[u>>0]=h;b=h;return b|0}do if((e|0)==931&(h^1)){if((f|0)<128){if(((f&-33)+-65|0)>>>0>=26)break}else{if(!(Hq(264586,1036,f)|0))break;if(Hq(265622,42,f)|0)break}if((g|0)<128){if(((g&-33)+-65|0)>>>0<26)break}else if(Hq(264586,1036,g)|0?(Hq(265622,42,g)|0)==0:0)break;if(!b){b=962;return b|0}u=c[b>>2]|0;a[u+1>>0]=-126;a[u>>0]=-49;c[b>>2]=(c[b>>2]|0)+2;b=962;return b|0}while(0);u=h?266194:267580;t=h?1386:680;f=0;g=0;h=0;j=0;a:while(1){r=f+1|0;if((j|0)<6){i=g;f=g;k=j;do{h=h<<8;g=f+1|0;if(f>>>0<t>>>0){i=g;h=d[u+f>>0]|0|h;f=g}k=k+8|0}while((k|0)<6);k=j+8+(5-j&-8)|0}else{k=j;i=g}j=k+-6|0;f=h>>>j;switch(f&63){case 0:{f=r;g=i;continue a}case 63:{p=42;break a}default:{}}g=f&63;f=h;while(1){q=g+-1|0;if((j|0)<16){l=i;h=i;k=j;while(1){f=f<<8;g=h+1|0;if(h>>>0<t>>>0){i=g;f=d[u+h>>0]|0|f;h=g}else i=l;k=k+8|0;if((k|0)>=16)break;else l=i}j=j+8+(15-j&-8)|0;k=f;h=f}else k=f;g=j+-16|0;p=k>>>g&65535;if((g|0)<16){l=i;f=k;h=i;while(1){f=f<<8;k=h+1|0;if(h>>>0<t>>>0){i=k;f=d[u+h>>0]|0|f;h=k}else i=l;g=g+8|0;if((g|0)>=16)break;else l=i}g=j+-8+(31-j&-8)|0;k=f;h=f}o=g+-16|0;if((o|0)<7){l=i;n=o;f=k;h=i;while(1){f=f<<8;j=h+1|0;if(h>>>0<t>>>0){i=j;m=d[u+h>>0]|0|f;h=j}else{i=l;m=f}n=n+8|0;if((n|0)>=7)break;else{l=i;f=m}}g=g+-8+(22-g&-8)|0;f=m;h=m}else{g=o;f=k}j=g+-7|0;if(((p|0)<=(e|0)?(s=e-p|0,(s|0)<(O(f>>>j&127,r)|0)):0)?((s|0)%(r|0)|0|0)==0:0){p=41;break a}if(!q){f=r;g=i;continue a}else g=q}}b:do if((p|0)==41)j=(k>>>o&65535)+s|0;else if((p|0)==42){if((j|0)<7){g=i;f=i;do{h=h<<8;i=f+1|0;if(f>>>0<t>>>0){g=i;h=d[u+f>>0]|0|h;f=i}j=j+8|0}while((j|0)<7);f=k+2+(12-k&-8)|0}else{f=j;g=i}j=f+-7|0;n=h>>>j&127;i=h;f=h;while(1){if(!n)break;n=n+-1|0;if((j|0)<16){l=g;f=g;k=j;while(1){h=i<<8;i=f+1|0;if(f>>>0<t>>>0){g=i;h=d[u+f>>0]|0|h;f=i}else g=l;k=k+8|0;if((k|0)>=16)break;else{l=g;i=h}}j=j+8+(15-j&-8)|0;i=h;f=h}h=j+-16|0;m=i>>>h&65535;if((h|0)<16){l=g;f=g;k=h;while(1){h=i<<8;i=f+1|0;if(f>>>0<t>>>0){g=i;h=d[u+f>>0]|0|h;f=i}else g=l;k=k+8|0;if((k|0)>=16)break;else{l=g;i=h}}j=j+-8+(31-j&-8)|0;i=h;f=h}else j=h;j=j+-16|0;if((m|0)==(e|0)){p=96;break}}if((p|0)==96){j=i>>>j&65535;break}if((j|0)<7){l=g;h=i;f=g;k=j;while(1){h=h<<8;i=f+1|0;if(f>>>0<t>>>0){g=i;h=d[u+f>>0]|0|h;f=i}else g=l;k=k+8|0;if((k|0)>=7)break;else l=g}j=j+8+(6-j&-8)|0;f=h;i=h}j=j+-7|0;h=i>>>j&127;if(!h)j=e;else{while(1){h=h+-1|0;if((j|0)<16){m=g;k=g;l=j;while(1){f=i<<8;i=k+1|0;if(k>>>0<t>>>0){g=i;f=d[u+k>>0]|0|f;k=i}else g=m;l=l+8|0;if((l|0)>=16)break;else{m=g;i=f}}j=j+8+(15-j&-8)|0;i=f}l=j+-16|0;o=i>>>l&65535;if((l|0)<2){m=g;k=g;while(1){f=i<<8;i=k+1|0;if(k>>>0<t>>>0){g=i;f=d[u+k>>0]|0|f;k=i}else g=m;l=l+8|0;if((l|0)>=2)break;else{m=g;i=f}}l=j+-8+(17-j&-8)|0;i=f}n=l+-2|0;j=i>>>n&3;if((o|0)==(e|0))break;if(!j)j=n;else while(1){j=j+-1|0;if((n|0)<16){m=g;k=g;l=n;while(1){f=i<<8;i=k+1|0;if(k>>>0<t>>>0){g=i;f=d[u+k>>0]|0|f;k=i}else g=m;l=l+8|0;if((l|0)>=16)break;else{m=g;i=f}}k=n+8+(15-n&-8)|0;i=f}else k=n;k=k+-16|0;if(!j){j=k;break}else n=k}if(!h){j=e;break b}}if((b|0)==0|(j|0)==0){b=-1;return b|0}h=n;while(1){j=j+-1|0;if((h|0)<16){k=g;l=h;do{f=f<<8;i=g+1|0;if(g>>>0<t>>>0){k=i;f=d[u+g>>0]|0|f;g=i}l=l+8|0}while((l|0)<16);h=h+8+(15-h&-8)|0;n=k}else n=g;h=h+-16|0;g=f>>>h&65535;m=c[b>>2]|0;if(g>>>0<128){k=0;i=1}else{i=g>>>0<2048?2:3;k=a[269353+(i+-1)>>0]|0;l=i;do{l=l+-1|0;a[m+l>>0]=g&63|128;g=g>>>6}while((l|0)>1)}a[m>>0]=g+(k&255);c[b>>2]=(c[b>>2]|0)+i;if(!j){h=-1;break}else g=n}return h|0}}while(0);if(!b){b=j;return b|0}k=c[b>>2]|0;if(j>>>0<128){f=j;g=0;h=1}else{if(j>>>0>=2048)if(j>>>0>=65536)if(j>>>0>=2097152)if(j>>>0<67108864){h=5;p=103}else h=j>>>31|6;else{h=4;p=103}else{h=3;p=103}else{h=2;p=103}g=a[269353+(h+-1)>>0]|0;f=j;i=h;do{i=i+-1|0;a[k+i>>0]=f&63|128;f=f>>>6}while((i|0)>1)}a[k>>0]=f+(g&255);c[b>>2]=(c[b>>2]|0)+h;b=j;return b|0}function pr(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;if(!(c[a+4>>2]&2)){qr(a,b,e);return}i=or(0,b,-1,-1,1)|0;j=e>>5;i=(i|0)<0|(b|0)>127&(i|0)<128?b:i;a:while(1){f=i;do{h=b+1|0;if((b|0)>=(e|0))break a;g=h>>5;b:do if(g>>>0>j>>>0|g>>>0>2047)b=e;else{b=g;while(1){if(!((d[268260+(b>>>3)>>0]|0)&1<<(b&7)))break;b=b+1|0;if(b>>>0>j>>>0|b>>>0>2047){b=e;break b}}b=b>>>0>g>>>0?b<<5:h}while(0);g=b-h+f|0;f=or(0,b,-1,-1,1)|0;f=(f|0)<0|(b|0)>127&(f|0)<128?b:f}while((f|0)==(g+1|0));qr(a,i,g);i=f}qr(a,i,f);return}function qr(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;m=b+864|0;k=b+872|0;g=c[m>>2]|0;f=g;do if(((c[k>>2]|0)-g|0)>>>0<7){h=c[b>>2]|0;i=b+868|0;f=g-(c[i>>2]|0)|0;g=f+71+(f>>>2)|0;if(g>>>0<f>>>0)Jn(h,270142,50331712,268576);else{j=b+876|0;Kn(h,c[j>>2]|0,g);h=c[(c[j>>2]|0)+20>>2]|0;j=h+f|0;c[m>>2]=j;c[i>>2]=h;c[k>>2]=h+g;break}}else j=f;while(0);if(d>>>0<128){g=0;f=1}else{if(d>>>0>=2048)if(d>>>0>=65536)if(d>>>0>=2097152)if(d>>>0<67108864){f=5;l=10}else f=d>>>31|6;else{f=4;l=10}else{f=3;l=10}else{f=2;l=10}g=a[269353+(f+-1)>>0]|0;h=f;do{h=h+-1|0;a[j+h>>0]=d&63|128;d=d>>>6}while((h|0)>1)}a[j>>0]=d+(g&255);f=(c[m>>2]|0)+f|0;c[m>>2]=f;d=f;do if(((c[k>>2]|0)-d|0)>>>0<7){g=c[b>>2]|0;h=b+868|0;f=d-(c[h>>2]|0)|0;d=f+71+(f>>>2)|0;if(d>>>0<f>>>0)Jn(g,270142,50331712,268576);else{j=b+876|0;Kn(g,c[j>>2]|0,d);j=c[(c[j>>2]|0)+20>>2]|0;n=j+f|0;c[m>>2]=n;c[h>>2]=j;c[k>>2]=j+d;break}}else n=f;while(0);if(e>>>0<128){j=e;k=0;l=1;k=k&255;k=j+k|0;k=k&255;a[n>>0]=k;n=c[m>>2]|0;n=n+l|0;c[m>>2]=n;n=b+896|0;m=c[n>>2]|0;m=m+1|0;c[n>>2]=m;return}if(e>>>0>=2048)if(e>>>0>=65536)if(e>>>0>=2097152)if(e>>>0<67108864){f=5;l=22}else f=e>>>31|6;else{f=4;l=22}else{f=3;l=22}else{f=2;l=22}d=a[269353+(f+-1)>>0]|0;g=f;do{g=g+-1|0;a[n+g>>0]=e&63|128;e=e>>>6}while((g|0)>1);l=d&255;l=e+l|0;l=l&255;a[n>>0]=l;n=c[m>>2]|0;n=n+f|0;c[m>>2]=n;n=b+896|0;m=c[n>>2]|0;m=m+1|0;c[n>>2]=m;return}function rr(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;k=a+68|0;d=c[k>>2]|0;n=a+64|0;e=c[n>>2]|0;b=d-e|0;f=b>>4;m=f+-1|0;g=d;if(!f)jo(a,300,-1);h=a+56|0;if(g>>>0>=(c[h>>2]|0)>>>0)Un(a,1093);l=(b|0)<16;b=(l?f:0)+m|0;if(b>>>0>=f>>>0)jo(a,376,m);e=e+(b<<4)|0;c[k>>2]=g+16;f=d;c[f>>2]=c[e>>2];c[f+4>>2]=c[e+4>>2];c[f+8>>2]=c[e+8>>2];c[f+12>>2]=c[e+12>>2];if(c[g>>2]&8|0){g=(c[g+8>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}b=c[k>>2]|0;if(b>>>0<((c[n>>2]|0)+16|0)>>>0)Vn(a,268605,315);if((c[h>>2]|0)>>>0<b>>>0)Vn(a,268605,315);Xn(a,21,0,1,1)|0;b=c[k>>2]|0;d=c[n>>2]|0;g=b-d>>4;g=g|0?d+(g+-1<<4)|0:0;e=b;do if((c[((g|0)==0?936:g)>>2]|0)!=8){if(e>>>0<(d+16|0)>>>0)Vn(a,268605,315);if((c[h>>2]|0)>>>0<e>>>0)Vn(a,268605,315);Xn(a,21,0,1,1)|0;b=c[k>>2]|0;d=c[n>>2]|0;g=b-d>>4;g=g|0?d+(g+-1<<4)|0:0;e=b;if((c[((g|0)==0?936:g)>>2]|0)!=8){d=e+-16|0;c[k>>2]=d;g=c[e+-16>>2]|0;b=c[e+-8>>2]|0;c[d>>2]=2;if((g&8|0)!=0?(f=b+4|0,g=(c[f>>2]|0)+-1|0,c[f>>2]=g,(g|0)==0):0){Yn(c[a+44>>2]|0,b);d=c[k>>2]|0}b=c[(c[a+304>>2]|0)+48>>2]|0;if(d>>>0<(c[h>>2]|0)>>>0){c[k>>2]=d+16;c[d>>2]=8;c[d+8>>2]=b;j=b+4|0;c[j>>2]=(c[j>>2]|0)+1;j=c[n>>2]|0;i=c[k>>2]|0;break}else Un(a,4153)}else{j=d;i=b}}else{j=d;i=b}while(0);d=i-j>>4;if(!d)jo(a,376,-1);e=j+(d+-1<<4)|0;b=(l?d:0)+m|0;if(b>>>0>=d>>>0)jo(a,376,m);h=j+(b<<4)|0;i=c[h>>2]|0;d=c[j+(b<<4)+8>>2]|0;c[h>>2]=c[e>>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[e>>2]=2;b=(c[k>>2]|0)+-16|0;c[k>>2]=b;if((i&8|0)!=0?(i=d+4|0,j=(c[i>>2]|0)+-1|0,c[i>>2]=j,(j|0)==0):0){Yn(c[a+44>>2]|0,d);b=c[k>>2]|0}n=c[n>>2]|0;k=b-n>>4;b=(l?k:0)+m|0;b=b>>>0<k>>>0?n+(b<<4)|0:0;b=(b|0)==0?936:b;if((c[b>>2]|0)!=8){n=0;return n|0}b=c[b+8>>2]|0;if(!b){n=0;return n|0}n=b+28|0;return n|0}function sr(a,b){a=a|0;b=b|0;Eo(a,-1)|0;return 1}function tr(a,b){a=a|0;b=b|0;return eN(b)|0}function ur(a,b){a=a|0;b=b|0;hb()}function vr(a,b){a=a|0;b=b|0;fN(b);return}function wr(a,b,c){a=a|0;b=b|0;c=c|0;return gN(b,c)|0}function xr(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=b+16|0;j=c[r>>2]|0;s=b+12|0;if((j|0)<5){k=b+4|0;h=c[b+8>>2]|0;g=c[k>>2]|0;i=j;f=c[s>>2]|0;do{f=f<<8;c[s>>2]=f;if(g>>>0<h>>>0){p=c[b>>2]|0;q=g+1|0;c[k>>2]=q;f=d[p+g>>0]|0|f;c[s>>2]=f;g=q}i=i+8|0;c[r>>2]=i}while((i|0)<5);j=j+8+(4-j&-8)|0}else f=c[s>>2]|0;g=j+-5|0;h=f>>>g&31;c[r>>2]=g;if((h|0)==31){if((g|0)<8){k=b+4|0;i=c[b+8>>2]|0;h=c[k>>2]|0;do{f=f<<8;c[s>>2]=f;if(h>>>0<i>>>0){p=c[b>>2]|0;q=h+1|0;c[k>>2]=q;f=d[p+h>>0]|0|f;c[s>>2]=f;h=q}q=g;g=g+8|0;c[r>>2]=g}while((q|0)<0);g=j+3+(12-j&-8)|0}g=g+-8|0;c[r>>2]=g;h=f>>>g&255}if(!h)return h|0;p=b+4|0;q=b+8|0;f=0;n=32;while(1){i=c[s>>2]|0;if((g|0)<5){l=c[q>>2]|0;j=c[p>>2]|0;k=g;do{i=i<<8;c[s>>2]=i;if(j>>>0<l>>>0){m=c[b>>2]|0;o=j+1|0;c[p>>2]=o;i=d[m+j>>0]|0|i;c[s>>2]=i;j=o}k=k+8|0;c[r>>2]=k}while((k|0)<5);g=g+8+(4-g&-8)|0;o=i}else o=i;l=g+-5|0;j=o>>>l;i=j&31;c[r>>2]=l;a:do if(i>>>0<26){i=n+65+i|0;g=n}else switch(j&31){case 26:{if((l|0)<3){k=c[q>>2]|0;j=o;i=c[p>>2]|0;do{j=j<<8;c[s>>2]=j;if(i>>>0<k>>>0){m=c[b>>2]|0;o=i+1|0;c[p>>2]=o;j=d[m+i>>0]|0|j;c[s>>2]=j;i=o}l=l+8|0;c[r>>2]=l}while((l|0)<3);i=g+3+(7-g&-8)|0;g=j}else{i=l;g=o}i=i+-3|0;c[r>>2]=i;i=d[279641+(g>>>i&7)>>0]|0;g=n;break a}case 27:{if((l|0)<3){m=c[q>>2]|0;j=o;k=c[p>>2]|0;do{i=j<<8;c[s>>2]=i;if(k>>>0<m>>>0){j=c[b>>2]|0;o=k+1|0;c[p>>2]=o;j=d[j+k>>0]|0|i;c[s>>2]=j;k=o}else j=i;l=l+8|0;c[r>>2]=l}while((l|0)<3);i=g+3+(7-g&-8)|0;g=j}else{i=l;g=o}i=i+-3|0;c[r>>2]=i;i=d[279641+(g>>>i&7|8)>>0]|0;g=n;break a}case 28:{if((l|0)<5){m=c[q>>2]|0;j=o;k=c[p>>2]|0;do{i=j<<8;c[s>>2]=i;if(k>>>0<m>>>0){j=c[b>>2]|0;o=k+1|0;c[p>>2]=o;j=d[j+k>>0]|0|i;c[s>>2]=j;k=o}else j=i;l=l+8|0;c[r>>2]=l}while((l|0)<5);i=g+3+(9-g&-8)|0;g=j}else{i=l;g=o}i=i+-5|0;c[r>>2]=i;i=(n^32)+65+(g>>>i&31)|0;g=n;break a}case 29:{n=n^32;if((l|0)<5){m=c[q>>2]|0;j=o;k=c[p>>2]|0;do{i=j<<8;c[s>>2]=i;if(k>>>0<m>>>0){j=c[b>>2]|0;o=k+1|0;c[p>>2]=o;j=d[j+k>>0]|0|i;c[s>>2]=j;k=o}else j=i;l=l+8|0;c[r>>2]=l}while((l|0)<5);i=g+3+(9-g&-8)|0;g=j}else{i=l;g=o}i=i+-5|0;c[r>>2]=i;i=n+65+(g>>>i&31)|0;g=n;break a}case 31:{if((l|0)<8){m=c[q>>2]|0;j=o;k=c[p>>2]|0;do{i=j<<8;c[s>>2]=i;if(k>>>0<m>>>0){j=c[b>>2]|0;o=k+1|0;c[p>>2]=o;j=d[j+k>>0]|0|i;c[s>>2]=j;k=o}else j=i;o=l;l=l+8|0;c[r>>2]=l}while((o|0)<0);i=g+3+(12-g&-8)|0;g=j}else{i=l;g=o}i=i+-8|0;c[r>>2]=i;i=g>>>i&255;g=n;break a}default:{g=n;break a}}while(0);a[e+f>>0]=i;f=f+1|0;if((f|0)==(h|0))break;n=g;g=c[r>>2]|0}return h|0}function yr(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;e=a+44|0;f=c[e>>2]|0;c[e>>2]=f+-1;if((f|0)<1)Ln(a,2);e=a+4|0;f=a+16|0;d=hg[c[e>>2]&63](c[f>>2]|0,b)|0;if((b|0)==0|(d|0)!=0){f=d;return f|0}Ln(a,0);d=hg[c[e>>2]&63](c[f>>2]|0,b)|0;if(d|0){f=d;return f|0}Ln(a,0);d=hg[c[e>>2]&63](c[f>>2]|0,b)|0;if(d|0){f=d;return f|0}Ln(a,1);d=hg[c[e>>2]&63](c[f>>2]|0,b)|0;if(d|0){f=d;return f|0}Ln(a,1);d=hg[c[e>>2]&63](c[f>>2]|0,b)|0;if(d|0){f=d;return f|0}Ln(a,1);d=hg[c[e>>2]&63](c[f>>2]|0,b)|0;if(d|0){f=d;return f|0}Ln(a,1);d=hg[c[e>>2]&63](c[f>>2]|0,b)|0;if(d|0){f=d;return f|0}Ln(a,1);d=hg[c[e>>2]&63](c[f>>2]|0,b)|0;if(d|0){f=d;return f|0}Ln(a,1);d=hg[c[e>>2]&63](c[f>>2]|0,b)|0;if(d|0){f=d;return f|0}Ln(a,1);d=hg[c[e>>2]&63](c[f>>2]|0,b)|0;if(!d){Ln(a,1);return hg[c[e>>2]&63](c[f>>2]|0,b)|0}else{f=d;return f|0}return 0}
|
|
function hE(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=0,zb=0,Ab=0,Bb=0,Cb=0,Db=0,Eb=0,Fb=0,Gb=0,Hb=0,Ib=0,Jb=0,Kb=0,Lb=0,Mb=0,Nb=0,Ob=0,Pb=0,Qb=0,Rb=0,Sb=0,Tb=0,Ub=0,Vb=0,Wb=0,Xb=0,Yb=0,Zb=0,_b=0,$b=0,ac=0,bc=0,cc=0,dc=0,ec=0,fc=0,gc=0,hc=0,ic=0,jc=0,kc=0,lc=0,mc=0,nc=0,oc=0,pc=0,qc=0,rc=0,sc=0,tc=0,uc=0,vc=0,wc=0,xc=0,yc=0,zc=0,Ac=0,Bc=0,Cc=0,Dc=0,Ec=0,Fc=0,Gc=0,Hc=0,Ic=0,Jc=0,Kc=0,Lc=0,Mc=0,Nc=0,Oc=0,Pc=0,Qc=0,Rc=0,Sc=0,Tc=0,Uc=0;Uc=l;l=l+1536|0;Qc=Uc+1488|0;Pc=Uc+1480|0;Mc=Uc+1472|0;Lc=Uc+1464|0;Tc=Uc+1440|0;Gc=Uc+1432|0;wc=Uc+1424|0;uc=Uc+1416|0;sc=Uc+1408|0;vc=Uc+1400|0;tc=Uc+1392|0;rc=Uc+1384|0;qc=Uc+1376|0;pc=Uc+1368|0;oc=Uc+1360|0;nc=Uc+1352|0;mc=Uc+1344|0;lc=Uc+1336|0;kc=Uc+1328|0;jc=Uc+1320|0;ic=Uc+1312|0;hc=Uc+1304|0;gc=Uc+1296|0;fc=Uc+1288|0;ec=Uc+1280|0;dc=Uc+1272|0;cc=Uc+1264|0;bc=Uc+1256|0;ac=Uc+1248|0;$b=Uc+1240|0;_b=Uc+1232|0;Zb=Uc+1224|0;Yb=Uc+1216|0;Xb=Uc+1208|0;Wb=Uc+1200|0;Vb=Uc+1192|0;Ub=Uc+1184|0;Tb=Uc+1176|0;Sb=Uc+1168|0;Rb=Uc+1160|0;Qb=Uc+1152|0;Pb=Uc+1144|0;Ob=Uc+1136|0;Nb=Uc+1128|0;Mb=Uc+1120|0;Lb=Uc+1112|0;Kb=Uc+1104|0;Jb=Uc+1096|0;Ib=Uc+1088|0;Hb=Uc+1080|0;Gb=Uc+1072|0;Fb=Uc+1064|0;Eb=Uc+1056|0;Db=Uc+1048|0;Cb=Uc+1040|0;Bb=Uc+1032|0;Ab=Uc+1024|0;zb=Uc+1016|0;yb=Uc+1008|0;xb=Uc+1e3|0;wb=Uc+992|0;vb=Uc+984|0;ub=Uc+976|0;tb=Uc+968|0;sb=Uc+960|0;rb=Uc+952|0;qb=Uc+944|0;pb=Uc+936|0;ob=Uc+928|0;nb=Uc+920|0;mb=Uc+912|0;lb=Uc+904|0;kb=Uc+896|0;jb=Uc+888|0;ib=Uc+880|0;hb=Uc+872|0;gb=Uc+864|0;fb=Uc+856|0;eb=Uc+848|0;db=Uc+840|0;cb=Uc+832|0;bb=Uc+824|0;ab=Uc+816|0;$a=Uc+808|0;_a=Uc+800|0;Za=Uc+792|0;Ya=Uc+784|0;Xa=Uc+776|0;Wa=Uc+768|0;Va=Uc+760|0;Ua=Uc+752|0;Ta=Uc+744|0;Sa=Uc+736|0;Ra=Uc+728|0;Qa=Uc+720|0;Pa=Uc+712|0;Oa=Uc+704|0;Na=Uc+696|0;Ma=Uc+688|0;La=Uc+680|0;Ka=Uc+672|0;Ja=Uc+664|0;Ia=Uc+656|0;Ha=Uc+648|0;Ga=Uc+640|0;Fa=Uc+632|0;Ea=Uc+624|0;Da=Uc+616|0;Ca=Uc+608|0;Ba=Uc+600|0;Aa=Uc+592|0;za=Uc+584|0;ya=Uc+576|0;xa=Uc+568|0;wa=Uc+560|0;va=Uc+552|0;ua=Uc+544|0;ta=Uc+536|0;sa=Uc+528|0;ra=Uc+520|0;qa=Uc+512|0;pa=Uc+504|0;oa=Uc+496|0;na=Uc+488|0;ma=Uc+480|0;la=Uc+472|0;ka=Uc+464|0;ja=Uc+456|0;ia=Uc+448|0;ha=Uc+440|0;ga=Uc+432|0;fa=Uc+424|0;ea=Uc+416|0;ca=Uc+408|0;da=Uc+400|0;ba=Uc+392|0;aa=Uc+384|0;$=Uc+376|0;_=Uc+368|0;Z=Uc+360|0;Y=Uc+352|0;X=Uc+344|0;W=Uc+336|0;V=Uc+328|0;U=Uc+320|0;T=Uc+312|0;S=Uc+304|0;R=Uc+296|0;Q=Uc+288|0;P=Uc+280|0;O=Uc+272|0;N=Uc+264|0;M=Uc+256|0;L=Uc+248|0;K=Uc+240|0;J=Uc+232|0;I=Uc+224|0;H=Uc+216|0;G=Uc+208|0;F=Uc+200|0;E=Uc+192|0;D=Uc+184|0;C=Uc+176|0;B=Uc+168|0;A=Uc+160|0;z=Uc+152|0;y=Uc+144|0;x=Uc+136|0;w=Uc+128|0;v=Uc+120|0;u=Uc+112|0;t=Uc+104|0;s=Uc+96|0;r=Uc+88|0;q=Uc+80|0;p=Uc+72|0;o=Uc+64|0;n=Uc+56|0;m=Uc+48|0;k=Uc+40|0;j=Uc+32|0;i=Uc+24|0;h=Uc+16|0;g=Uc+8|0;zc=Uc+1520|0;Ac=Uc+1512|0;Bc=Uc+1504|0;Hc=Uc+1500|0;Ic=Uc+1528|0;Jc=Uc+1496|0;Fc=Uc+1492|0;f=c[80021]|0;Kc=c[f+368>>2]|0;Oc=c[f+356>>2]|0;Rc=c[f+360>>2]|0;do if(!f){mE(288511,Uc);Nc=0}else{if(b|0?(c[b>>2]|0)==(f+280|0):0){Nc=c[b+48>>2]|0;break}mE(307733,g);Nc=0}while(0);if((Nc&2|0)==0|(Kc|0)!=4|(Oc|0)!=2|(Rc|0)!=0){f=c[80021]|0;if(!f){mE(288511,h);f=c[80021]|0;if(!f){mE(288511,i);f=c[80021]|0;if(!f)mE(288511,j);else Sc=14}else Sc=11}else{c[f+368>>2]=4;Sc=11}if((Sc|0)==11){c[f+356>>2]=2;Sc=14}if((Sc|0)==14)c[f+360>>2]=0;if((iE(b,Nc|2)|0)>=0){Ec=1;Sc=16}}else{Ec=0;Sc=16}if((Sc|0)==16){f=eN(324)|0;a:do if(!f)mE(294869,k);else{if(c[f+-4>>2]&3|0)RQ(f|0,0,324)|0;Cc=eN(308)|0;if(!Cc){jE(f);mE(294869,m);break}if(c[Cc+-4>>2]&3|0)RQ(Cc|0,0,308)|0;g=f+104|0;h=15604;i=g+84|0;do{c[g>>2]=c[h>>2];g=g+4|0;h=h+4|0}while((g|0)<(i|0));xc=f+108|0;c[xc>>2]=10;Dc=f+320|0;c[Dc>>2]=Cc;yc=f+188|0;c[yc>>2]=b;g=c[80021]|0;do if(!g)mE(288511,n);else{if(b|0?(c[b>>2]|0)==(g+280|0):0){if(!(c[b+48>>2]&2)){mE(288552,p);break}g=hg[c[g+176>>2]&63](g,b)|0;if(!g)break;p=c[80021]|0;c[p+652>>2]=b;c[p+656>>2]=g;FI(c[p+660>>2]|0,b);FI(c[(c[80021]|0)+664>>2]|0,g);c[Cc>>2]=g;if((kE(b,g)|0)<0){jE(f);break a}h=c[80021]|0;b:do if(!h){mE(288511,q);Sc=41}else{g=c[h+168>>2]|0;if(!g){mE(294785,s);Sc=41;break}if(!(c[h+388>>2]|0)){mE(294756,r);Sc=41;break}s=hg[g&63](h,312972)|0;c[Cc+16>>2]=s;if(!s){g=312972;break}h=c[80021]|0;do if(!h)mE(288511,t);else{g=c[h+168>>2]|0;if(!g){mE(294785,v);break}if(!(c[h+388>>2]|0)){mE(294756,u);break}v=hg[g&63](h,310730)|0;c[Cc+20>>2]=v;if(!v){g=310730;break b}h=c[80021]|0;do if(!h)mE(288511,w);else{g=c[h+168>>2]|0;if(!g){mE(294785,y);break}if(!(c[h+388>>2]|0)){mE(294756,x);break}y=hg[g&63](h,312028)|0;c[Cc+24>>2]=y;if(!y){g=312028;break b}h=c[80021]|0;do if(!h)mE(288511,z);else{g=c[h+168>>2]|0;if(!g){mE(294785,B);break}if(!(c[h+388>>2]|0)){mE(294756,A);break}B=hg[g&63](h,310963)|0;c[Cc+28>>2]=B;if(!B){g=310963;break b}h=c[80021]|0;do if(!h)mE(288511,C);else{g=c[h+168>>2]|0;if(!g){mE(294785,E);break}if(!(c[h+388>>2]|0)){mE(294756,D);break}E=hg[g&63](h,313318)|0;c[Cc+32>>2]=E;if(!E){g=313318;break b}h=c[80021]|0;do if(!h)mE(288511,F);else{g=c[h+168>>2]|0;if(!g){mE(294785,H);break}if(!(c[h+388>>2]|0)){mE(294756,G);break}H=hg[g&63](h,312869)|0;c[Cc+36>>2]=H;if(!H){g=312869;break b}h=c[80021]|0;do if(!h)mE(288511,I);else{g=c[h+168>>2]|0;if(!g){mE(294785,K);break}if(!(c[h+388>>2]|0)){mE(294756,J);break}K=hg[g&63](h,313244)|0;c[Cc+40>>2]=K;if(!K){g=313244;break b}h=c[80021]|0;do if(!h)mE(288511,L);else{g=c[h+168>>2]|0;if(!g){mE(294785,N);break}if(!(c[h+388>>2]|0)){mE(294756,M);break}N=hg[g&63](h,311846)|0;c[Cc+44>>2]=N;if(!N){g=311846;break b}h=c[80021]|0;do if(!h)mE(288511,O);else{g=c[h+168>>2]|0;if(!g){mE(294785,Q);break}if(!(c[h+388>>2]|0)){mE(294756,P);break}Q=hg[g&63](h,310631)|0;c[Cc+48>>2]=Q;if(!Q){g=310631;break b}h=c[80021]|0;do if(!h)mE(288511,R);else{g=c[h+168>>2]|0;if(!g){mE(294785,T);break}if(!(c[h+388>>2]|0)){mE(294756,S);break}T=hg[g&63](h,310700)|0;c[Cc+52>>2]=T;if(!T){g=310700;break b}h=c[80021]|0;do if(!h)mE(288511,U);else{g=c[h+168>>2]|0;if(!g){mE(294785,W);break}if(!(c[h+388>>2]|0)){mE(294756,V);break}W=hg[g&63](h,311921)|0;c[Cc+56>>2]=W;if(!W){g=311921;break b}h=c[80021]|0;do if(!h)mE(288511,X);else{g=c[h+168>>2]|0;if(!g){mE(294785,Z);break}if(!(c[h+388>>2]|0)){mE(294756,Y);break}Z=hg[g&63](h,311777)|0;c[Cc+60>>2]=Z;if(!Z){g=311777;break b}h=c[80021]|0;do if(!h)mE(288511,_);else{g=c[h+168>>2]|0;if(!g){mE(294785,aa);break}if(!(c[h+388>>2]|0)){mE(294756,$);break}aa=hg[g&63](h,310855)|0;c[Cc+64>>2]=aa;if(!aa){g=310855;break b}h=c[80021]|0;do if(!h)mE(288511,ba);else{g=c[h+168>>2]|0;if(!g){mE(294785,ca);break}if(!(c[h+388>>2]|0)){mE(294756,da);break}da=hg[g&63](h,312836)|0;c[Cc+68>>2]=da;if(!da){g=312836;break b}h=c[80021]|0;do if(!h)mE(288511,ea);else{g=c[h+168>>2]|0;if(!g){mE(294785,ga);break}if(!(c[h+388>>2]|0)){mE(294756,fa);break}ga=hg[g&63](h,312598)|0;c[Cc+72>>2]=ga;if(!ga){g=312598;break b}h=c[80021]|0;do if(!h)mE(288511,ha);else{g=c[h+168>>2]|0;if(!g){mE(294785,ja);break}if(!(c[h+388>>2]|0)){mE(294756,ia);break}ja=hg[g&63](h,312625)|0;c[Cc+76>>2]=ja;if(!ja){g=312625;break b}h=c[80021]|0;do if(!h)mE(288511,ka);else{g=c[h+168>>2]|0;if(!g){mE(294785,ma);break}if(!(c[h+388>>2]|0)){mE(294756,la);break}ma=hg[g&63](h,312827)|0;c[Cc+80>>2]=ma;if(!ma){g=312827;break b}h=c[80021]|0;do if(!h)mE(288511,na);else{g=c[h+168>>2]|0;if(!g){mE(294785,pa);break}if(!(c[h+388>>2]|0)){mE(294756,oa);break}pa=hg[g&63](h,312572)|0;c[Cc+84>>2]=pa;if(!pa){g=312572;break b}h=c[80021]|0;do if(!h)mE(288511,qa);else{g=c[h+168>>2]|0;if(!g){mE(294785,sa);break}if(!(c[h+388>>2]|0)){mE(294756,ra);break}sa=hg[g&63](h,312771)|0;c[Cc+88>>2]=sa;if(!sa){g=312771;break b}h=c[80021]|0;do if(!h)mE(288511,ta);else{g=c[h+168>>2]|0;if(!g){mE(294785,va);break}if(!(c[h+388>>2]|0)){mE(294756,ua);break}va=hg[g&63](h,312067)|0;c[Cc+92>>2]=va;if(!va){g=312067;break b}h=c[80021]|0;do if(!h)mE(288511,wa);else{g=c[h+168>>2]|0;if(!g){mE(294785,ya);break}if(!(c[h+388>>2]|0)){mE(294756,xa);break}ya=hg[g&63](h,310841)|0;c[Cc+96>>2]=ya;if(!ya){g=310841;break b}h=c[80021]|0;do if(!h)mE(288511,za);else{g=c[h+168>>2]|0;if(!g){mE(294785,Ba);break}if(!(c[h+388>>2]|0)){mE(294756,Aa);break}Ba=hg[g&63](h,310827)|0;n=Cc+100|0;c[n>>2]=Ba;if(!Ba){g=310827;break b}h=c[80021]|0;do if(!h)mE(288511,Ca);else{g=c[h+168>>2]|0;if(!g){mE(294785,Ea);break}if(!(c[h+388>>2]|0)){mE(294756,Da);break}Ea=hg[g&63](h,310789)|0;c[Cc+104>>2]=Ea;if(!Ea){g=310789;break b}h=c[80021]|0;do if(!h)mE(288511,Fa);else{g=c[h+168>>2]|0;if(!g){mE(294785,Ha);break}if(!(c[h+388>>2]|0)){mE(294756,Ga);break}Ha=hg[g&63](h,312692)|0;c[Cc+108>>2]=Ha;if(!Ha){g=312692;break b}h=c[80021]|0;do if(!h)mE(288511,Ia);else{g=c[h+168>>2]|0;if(!g){mE(294785,Ka);break}if(!(c[h+388>>2]|0)){mE(294756,Ja);break}Ka=hg[g&63](h,310801)|0;m=Cc+112|0;c[m>>2]=Ka;if(!Ka){g=310801;break b}h=c[80021]|0;do if(!h)mE(288511,La);else{g=c[h+168>>2]|0;if(!g){mE(294785,Na);break}if(!(c[h+388>>2]|0)){mE(294756,Ma);break}Na=hg[g&63](h,311895)|0;c[Cc+116>>2]=Na;if(!Na){g=311895;break b}h=c[80021]|0;do if(!h)mE(288511,Oa);else{g=c[h+168>>2]|0;if(!g){mE(294785,Qa);break}if(!(c[h+388>>2]|0)){mE(294756,Pa);break}Qa=hg[g&63](h,311862)|0;c[Cc+120>>2]=Qa;if(!Qa){g=311862;break b}h=c[80021]|0;do if(!h)mE(288511,Ra);else{g=c[h+168>>2]|0;if(!g){mE(294785,Ta);break}if(!(c[h+388>>2]|0)){mE(294756,Sa);break}Ta=hg[g&63](h,311881)|0;c[Cc+124>>2]=Ta;if(!Ta){g=311881;break b}h=c[80021]|0;do if(!h)mE(288511,Ua);else{g=c[h+168>>2]|0;if(!g){mE(294785,Wa);break}if(!(c[h+388>>2]|0)){mE(294756,Va);break}Wa=hg[g&63](h,311291)|0;c[Cc+128>>2]=Wa;if(!Wa){g=311291;break b}h=c[80021]|0;do if(!h)mE(288511,Xa);else{g=c[h+168>>2]|0;if(!g){mE(294785,Za);break}if(!(c[h+388>>2]|0)){mE(294756,Ya);break}Za=hg[g&63](h,311964)|0;c[Cc+132>>2]=Za;if(!Za){g=311964;break b}h=c[80021]|0;do if(!h)mE(288511,_a);else{g=c[h+168>>2]|0;if(!g){mE(294785,ab);break}if(!(c[h+388>>2]|0)){mE(294756,$a);break}ab=hg[g&63](h,310775)|0;c[Cc+136>>2]=ab;if(!ab){g=310775;break b}h=c[80021]|0;do if(!h)mE(288511,bb);else{g=c[h+168>>2]|0;if(!g){mE(294785,db);break}if(!(c[h+388>>2]|0)){mE(294756,cb);break}db=hg[g&63](h,310950)|0;c[Cc+140>>2]=db;if(!db){g=310950;break b}h=c[80021]|0;do if(!h)mE(288511,eb);else{g=c[h+168>>2]|0;if(!g){mE(294785,gb);break}if(!(c[h+388>>2]|0)){mE(294756,fb);break}gb=hg[g&63](h,313257)|0;c[Cc+144>>2]=gb;if(!gb){g=313257;break b}h=c[80021]|0;do if(!h)mE(288511,hb);else{g=c[h+168>>2]|0;if(!g){mE(294785,jb);break}if(!(c[h+388>>2]|0)){mE(294756,ib);break}jb=hg[g&63](h,312653)|0;c[Cc+148>>2]=jb;if(!jb){g=312653;break b}h=c[80021]|0;do if(!h)mE(288511,kb);else{g=c[h+168>>2]|0;if(!g){mE(294785,mb);break}if(!(c[h+388>>2]|0)){mE(294756,lb);break}mb=hg[g&63](h,311813)|0;c[Cc+152>>2]=mb;if(!mb){g=311813;break b}h=c[80021]|0;do if(!h)mE(288511,nb);else{g=c[h+168>>2]|0;if(!g){mE(294785,pb);break}if(!(c[h+388>>2]|0)){mE(294756,ob);break}pb=hg[g&63](h,310921)|0;c[Cc+156>>2]=pb;if(!pb){g=310921;break b}h=c[80021]|0;do if(!h)mE(288511,qb);else{g=c[h+168>>2]|0;if(!g){mE(294785,sb);break}if(!(c[h+388>>2]|0)){mE(294756,rb);break}sb=hg[g&63](h,313158)|0;c[Cc+160>>2]=sb;if(!sb){g=313158;break b}h=c[80021]|0;do if(!h)mE(288511,tb);else{g=c[h+168>>2]|0;if(!g){mE(294785,vb);break}if(!(c[h+388>>2]|0)){mE(294756,ub);break}vb=hg[g&63](h,310934)|0;c[Cc+164>>2]=vb;if(!vb){g=310934;break b}h=c[80021]|0;do if(!h)mE(288511,wb);else{g=c[h+168>>2]|0;if(!g){mE(294785,yb);break}if(!(c[h+388>>2]|0)){mE(294756,xb);break}yb=hg[g&63](h,311445)|0;c[Cc+168>>2]=yb;if(!yb){g=311445;break b}h=c[80021]|0;do if(!h)mE(288511,zb);else{g=c[h+168>>2]|0;if(!g){mE(294785,Bb);break}if(!(c[h+388>>2]|0)){mE(294756,Ab);break}Bb=hg[g&63](h,311433)|0;c[Cc+172>>2]=Bb;if(!Bb){g=311433;break b}h=c[80021]|0;do if(!h)mE(288511,Cb);else{g=c[h+168>>2]|0;if(!g){mE(294785,Eb);break}if(!(c[h+388>>2]|0)){mE(294756,Db);break}Eb=hg[g&63](h,311635)|0;c[Cc+176>>2]=Eb;if(!Eb){g=311635;break b}h=c[80021]|0;do if(!h)mE(288511,Fb);else{g=c[h+168>>2]|0;if(!g){mE(294785,Hb);break}if(!(c[h+388>>2]|0)){mE(294756,Gb);break}Hb=hg[g&63](h,310666)|0;c[Cc+180>>2]=Hb;if(!Hb){g=310666;break b}h=c[80021]|0;do if(!h)mE(288511,Ib);else{g=c[h+168>>2]|0;if(!g){mE(294785,Kb);break}if(!(c[h+388>>2]|0)){mE(294756,Jb);break}Kb=hg[g&63](h,312550)|0;c[Cc+184>>2]=Kb;if(!Kb){g=312550;break b}h=c[80021]|0;do if(!h)mE(288511,Lb);else{g=c[h+168>>2]|0;if(!g){mE(294785,Nb);break}if(!(c[h+388>>2]|0)){mE(294756,Mb);break}Nb=hg[g&63](h,313233)|0;c[Cc+188>>2]=Nb;if(!Nb){g=313233;break b}h=c[80021]|0;do if(!h)mE(288511,Ob);else{g=c[h+168>>2]|0;if(!g){mE(294785,Qb);break}if(!(c[h+388>>2]|0)){mE(294756,Pb);break}Qb=hg[g&63](h,312049)|0;c[Cc+192>>2]=Qb;if(!Qb){g=312049;break b}h=c[80021]|0;do if(!h)mE(288511,Rb);else{g=c[h+168>>2]|0;if(!g){mE(294785,Tb);break}if(!(c[h+388>>2]|0)){mE(294756,Sb);break}Tb=hg[g&63](h,312132)|0;c[Cc+196>>2]=Tb;if(!Tb){g=312132;break b}h=c[80021]|0;do if(!h)mE(288511,Ub);else{g=c[h+168>>2]|0;if(!g){mE(294785,Wb);break}if(!(c[h+388>>2]|0)){mE(294756,Vb);break}Wb=hg[g&63](h,312930)|0;c[Cc+200>>2]=Wb;if(!Wb){g=312930;break b}h=c[80021]|0;do if(!h)mE(288511,Xb);else{g=c[h+168>>2]|0;if(!g){mE(294785,Zb);break}if(!(c[h+388>>2]|0)){mE(294756,Yb);break}Zb=hg[g&63](h,312085)|0;c[Cc+204>>2]=Zb;if(!Zb){g=312085;break b}h=c[80021]|0;do if(!h)mE(288511,_b);else{g=c[h+168>>2]|0;if(!g){mE(294785,ac);break}if(!(c[h+388>>2]|0)){mE(294756,$b);break}ac=hg[g&63](h,311739)|0;c[Cc+208>>2]=ac;if(!ac){g=311739;break b}h=c[80021]|0;do if(!h)mE(288511,bc);else{g=c[h+168>>2]|0;if(!g){mE(294785,dc);break}if(!(c[h+388>>2]|0)){mE(294756,cc);break}dc=hg[g&63](h,311978)|0;c[Cc+212>>2]=dc;if(!dc){g=311978;break b}h=c[80021]|0;do if(!h)mE(288511,ec);else{g=c[h+168>>2]|0;if(!g){mE(294785,gc);break}if(!(c[h+388>>2]|0)){mE(294756,fc);break}gc=hg[g&63](h,311063)|0;c[Cc+216>>2]=gc;if(!gc){g=311063;break b}h=c[80021]|0;do if(!h)mE(288511,hc);else{g=c[h+168>>2]|0;if(!g){mE(294785,jc);break}if(!(c[h+388>>2]|0)){mE(294756,ic);break}jc=hg[g&63](h,311654)|0;c[Cc+220>>2]=jc;if(!jc){g=311654;break b}h=c[80021]|0;do if(!h)mE(288511,kc);else{g=c[h+168>>2]|0;if(!g){mE(294785,mc);break}if(!(c[h+388>>2]|0)){mE(294756,lc);break}mc=hg[g&63](h,311115)|0;c[Cc+224>>2]=mc;if(!mc){g=311115;break b}h=c[80021]|0;do if(!h)mE(288511,nc);else{g=c[h+168>>2]|0;if(!g){mE(294785,pc);break}if(!(c[h+388>>2]|0)){mE(294756,oc);break}pc=hg[g&63](h,311128)|0;c[Cc+228>>2]=pc;if(!pc){g=311128;break b}g=c[80021]|0;h=(g|0)==0;c:do if(!(e&4)){if(h){mE(288511,sc);break}k=c[g+664>>2]|0;c[Bc>>2]=0;vc=c[Bc>>2]|0;c[Bc>>2]=1;if(vc|0){g=zc+4|0;h=Ac+4|0;do{c[zc>>2]=0;c[g>>2]=0;i=0;j=0;while(1){c[8240]=0;c[Ac>>2]=i;c[h>>2]=j;vc=(Qf(Ac|0,zc|0)|0)!=0;if(!(vc&(c[8240]|0)==4))break;i=c[zc>>2]|0;j=c[g>>2]|0}vc=c[Bc>>2]|0;c[Bc>>2]=1}while((vc|0)!=0)}c[Bc>>2]=0;g=c[80022]|0;d:do if(g|0){while(1){if(!(c[g>>2]|0))break;g=c[g+8>>2]|0;if(!g)break d}g=c[g+4>>2]|0;if((k|0)==0|(g|0)==0)break;if((c[g>>2]|0)>>>0<k>>>0)break;if(!(c[g+4+(k+-1<<3)>>2]|0))break;g=c[80021]|0;h=c[g+188>>2]|0;if(!h){mE(294663,wc);break c}else{hg[h&63](g,0)|0;break c}}while(0);mE(294623,uc)}else{if(h){mE(288511,rc);break}k=c[g+664>>2]|0;c[Bc>>2]=0;wc=c[Bc>>2]|0;c[Bc>>2]=1;if(wc|0){g=zc+4|0;h=Ac+4|0;do{c[zc>>2]=0;c[g>>2]=0;i=0;j=0;while(1){c[8240]=0;c[Ac>>2]=i;c[h>>2]=j;wc=(Qf(Ac|0,zc|0)|0)!=0;if(!(wc&(c[8240]|0)==4))break;i=c[zc>>2]|0;j=c[g>>2]|0}wc=c[Bc>>2]|0;c[Bc>>2]=1}while((wc|0)!=0)}c[Bc>>2]=0;g=c[80022]|0;e:do if(g|0){while(1){if(!(c[g>>2]|0))break;g=c[g+8>>2]|0;if(!g)break e}g=c[g+4>>2]|0;if((k|0)==0|(g|0)==0)break;if((c[g>>2]|0)>>>0<k>>>0)break;if(!(c[g+4+(k+-1<<3)>>2]|0))break;g=c[80021]|0;h=c[g+188>>2]|0;if(!h){mE(294663,vc);break c}else{hg[h&63](g,1)|0;break c}}while(0);mE(294623,tc)}while(0);g=c[80021]|0;f:do if(g|0){k=c[g+664>>2]|0;c[Bc>>2]=0;wc=c[Bc>>2]|0;c[Bc>>2]=1;if(wc|0){g=zc+4|0;h=Ac+4|0;do{c[zc>>2]=0;c[g>>2]=0;i=0;j=0;while(1){c[8240]=0;c[Ac>>2]=i;c[h>>2]=j;wc=(Qf(Ac|0,zc|0)|0)!=0;if(!(wc&(c[8240]|0)==4))break;i=c[zc>>2]|0;j=c[g>>2]|0}wc=c[Bc>>2]|0;c[Bc>>2]=1}while((wc|0)!=0)}c[Bc>>2]=0;g=c[80022]|0;if(!g)break;while(1){if(!(c[g>>2]|0))break;g=c[g+8>>2]|0;if(!g)break f}g=c[g+4>>2]|0;if((k|0)==0|(g|0)==0)break;if((c[g>>2]|0)>>>0<k>>>0)break;if(!(c[g+4+(k+-1<<3)>>2]|0))break;g=c[80021]|0;h=c[g+192>>2]|0;if(!h)break;if((gg[h&511](g)|0)<=0)break;c[xc>>2]=c[xc>>2]|4}while(0);Bc=c[(c[80021]|0)+364>>2]|0;c[Fc>>2]=Bc;if(Bc&1|0)c[Cc+4>>2]=1;c[Fc>>2]=0;Bg[c[m>>2]&255](3379,Fc);c[f+180>>2]=c[Fc>>2];c[Fc>>2]=0;Bg[c[m>>2]&255](3379,Fc);c[f+184>>2]=c[Fc>>2];Bg[c[m>>2]&255](36345,Hc);Bg[c[n>>2]&255](36346,Ic);g=c[Hc>>2]|0;if(a[Ic>>0]|0){g=g+1|0;c[Hc>>2]=g}do if(!g)g=0;else{h=g<<2;if(g>>>0<=65535){g=h;break}g=((h>>>0)/(g>>>0)|0|0)==4?h:-1}while(0);h=eN(g)|0;if(!h){c[Cc+244>>2]=0;jE(f);mE(294869,Gc);break a}if(c[h+-4>>2]&3|0)RQ(h|0,0,g|0)|0;g=Cc+244|0;c[g>>2]=h;c[Cc+240>>2]=c[Hc>>2];Bg[c[m>>2]&255](36344,h);if(a[Ic>>0]|0)c[(c[g>>2]|0)+((c[Hc>>2]|0)+-1<<2)>>2]=-1;c[Cc+232>>2]=0;Bg[c[m>>2]&255](36006,Jc);c[Cc+236>>2]=c[Jc>>2];c[f+4>>2]=170;c[f+8>>2]=20;c[f+12>>2]=23;c[f+28>>2]=8;c[f+32>>2]=1;c[f+36>>2]=9;c[f+40>>2]=171;c[f+44>>2]=24;c[f+48>>2]=411;c[f+52>>2]=412;c[f+56>>2]=413;c[f+60>>2]=21;c[f+64>>2]=22;c[f+68>>2]=23;c[f+72>>2]=8;c[f+76>>2]=1;c[f+80>>2]=10;c[f+84>>2]=216;c[f+88>>2]=172;c[f+92>>2]=217;c[f+96>>2]=9;c[f+100>>2]=25;g=f+116|0;Sc=f+112|0;h=c[Sc>>2]|0;c[Sc>>2]=h+1;c[g+(h<<2)>>2]=842094169;h=c[Sc>>2]|0;c[Sc>>2]=h+1;c[g+(h<<2)>>2]=1448433993;h=c[Sc>>2]|0;c[Sc>>2]=h+1;c[g+(h<<2)>>2]=842094158;h=c[Sc>>2]|0;c[Sc>>2]=h+1;c[g+(h<<2)>>2]=825382478;h=c[Dc>>2]|0;g=c[h>>2]|0;do if((c[80020]|0)==(g|0))vE(f)|0;else{c[h+268>>2]=0;if((kE(c[yc>>2]|0,g)|0)<0)break;c[80020]=c[h>>2];vE(f)|0;g=c[Dc>>2]|0;if(!(c[g+4>>2]|0))break;g=g+108|0;do{}while((fg[c[g>>2]&7]()|0)!=0)}while(0);c[h+8>>2]=-1;c[h+12>>2]=0;vg[c[h+16>>2]&511](33984);g=h+136|0;Bg[c[g>>2]&255](3333,1);Bg[c[g>>2]&255](3317,1);sg[c[h+40>>2]&3](+(d[h+272>>0]|0)*.003921568859368563,+(d[h+273>>0]|0)*.003921568859368563,+(d[h+274>>0]|0)*.003921568859368563,+(d[h+275>>0]|0)*.003921568859368563);vg[c[h+84>>2]&511](0);vg[c[h+72>>2]&511](1);g=c[Dc>>2]|0;if(!(c[g+4>>2]|0)){Tc=f;l=Uc;return Tc|0}j=g+108|0;g=fg[c[j>>2]&7]()|0;if(!g){Tc=f;l=Uc;return Tc|0}else h=335059;while(1){if((h|0)!=0?(a[h>>0]|0)!=0:0)i=h;else i=288266;switch(g|0){case 1280:{h=288337;break}case 1281:{h=288320;break}case 1282:{h=288299;break}case 1285:{h=288282;break}default:h=288274}c[Tc>>2]=i;c[Tc+4>>2]=288379;c[Tc+8>>2]=1954;c[Tc+12>>2]=288473;c[Tc+16>>2]=h;c[Tc+20>>2]=g;mE(288353,Tc);g=fg[c[j>>2]&7]()|0;if(!g)break;else h=i}l=Uc;return f|0}while(0);c[Cc+228>>2]=0;g=311128;break b}while(0);c[Cc+224>>2]=0;g=311115;break b}while(0);c[Cc+220>>2]=0;g=311654;break b}while(0);c[Cc+216>>2]=0;g=311063;break b}while(0);c[Cc+212>>2]=0;g=311978;break b}while(0);c[Cc+208>>2]=0;g=311739;break b}while(0);c[Cc+204>>2]=0;g=312085;break b}while(0);c[Cc+200>>2]=0;g=312930;break b}while(0);c[Cc+196>>2]=0;g=312132;break b}while(0);c[Cc+192>>2]=0;g=312049;break b}while(0);c[Cc+188>>2]=0;g=313233;break b}while(0);c[Cc+184>>2]=0;g=312550;break b}while(0);c[Cc+180>>2]=0;g=310666;break b}while(0);c[Cc+176>>2]=0;g=311635;break b}while(0);c[Cc+172>>2]=0;g=311433;break b}while(0);c[Cc+168>>2]=0;g=311445;break b}while(0);c[Cc+164>>2]=0;g=310934;break b}while(0);c[Cc+160>>2]=0;g=313158;break b}while(0);c[Cc+156>>2]=0;g=310921;break b}while(0);c[Cc+152>>2]=0;g=311813;break b}while(0);c[Cc+148>>2]=0;g=312653;break b}while(0);c[Cc+144>>2]=0;g=313257;break b}while(0);c[Cc+140>>2]=0;g=310950;break b}while(0);c[Cc+136>>2]=0;g=310775;break b}while(0);c[Cc+132>>2]=0;g=311964;break b}while(0);c[Cc+128>>2]=0;g=311291;break b}while(0);c[Cc+124>>2]=0;g=311881;break b}while(0);c[Cc+120>>2]=0;g=311862;break b}while(0);c[Cc+116>>2]=0;g=311895;break b}while(0);c[Cc+112>>2]=0;g=310801;break b}while(0);c[Cc+108>>2]=0;g=312692;break b}while(0);c[Cc+104>>2]=0;g=310789;break b}while(0);c[Cc+100>>2]=0;g=310827;break b}while(0);c[Cc+96>>2]=0;g=310841;break b}while(0);c[Cc+92>>2]=0;g=312067;break b}while(0);c[Cc+88>>2]=0;g=312771;break b}while(0);c[Cc+84>>2]=0;g=312572;break b}while(0);c[Cc+80>>2]=0;g=312827;break b}while(0);c[Cc+76>>2]=0;g=312625;break b}while(0);c[Cc+72>>2]=0;g=312598;break b}while(0);c[Cc+68>>2]=0;g=312836;break b}while(0);c[Cc+64>>2]=0;g=310855;break b}while(0);c[Cc+60>>2]=0;g=311777;break b}while(0);c[Cc+56>>2]=0;g=311921;break b}while(0);c[Cc+52>>2]=0;g=310700;break b}while(0);c[Cc+48>>2]=0;g=310631;break b}while(0);c[Cc+44>>2]=0;g=311846;break b}while(0);c[Cc+40>>2]=0;g=313244;break b}while(0);c[Cc+36>>2]=0;g=312869;break b}while(0);c[Cc+32>>2]=0;g=313318;break b}while(0);c[Cc+28>>2]=0;g=310963;break b}while(0);c[Cc+24>>2]=0;g=312028;break b}while(0);c[Cc+20>>2]=0;g=310730}while(0);if((Sc|0)==41){c[Cc+16>>2]=0;g=312972}lE();c[qc>>2]=g;c[qc+4>>2]=332971;mE(288229,qc);jE(f);break a}mE(307733,o)}while(0);c[Cc>>2]=0;jE(f)}while(0);if(!Ec){Tc=0;l=Uc;return Tc|0}}f=c[80021]|0;g:do if(!f)mE(288511,Lc);else switch(Kc|0){case 0:case 1:case 2:case 4:{c[f+368>>2]=Kc;break g}default:{c[Mc>>2]=Kc;mE(295367,Mc);break g}}while(0);f=c[80021]|0;if(!f){mE(288511,Pc);f=c[80021]|0;if(!f)mE(288511,Qc);else Sc=561}else{c[f+356>>2]=Oc;Sc=561}if((Sc|0)==561)c[f+360>>2]=Rc;iE(b,Nc)|0;Tc=0;l=Uc;return Tc|0}function iE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=l;l=l+144|0;z=B+128|0;y=B+120|0;v=B+112|0;u=B+104|0;t=B+96|0;s=B+88|0;r=B+80|0;q=B+72|0;p=B+64|0;o=B+56|0;k=B+48|0;i=B+40|0;j=B+32|0;h=B+24|0;g=B+16|0;f=B+8|0;d=B;e=c[80021]|0;if(b&2|0?(c[e+176>>2]|0)==0:0){mE(295001,d);A=-1;l=B;return A|0}A=a+48|0;d=c[A>>2]|0;w=(d&2048|0)==0?b&-2049:b|2048;do if(e){if((c[a>>2]|0)!=(e+280|0)){mE(307733,g);break}if(d&4|0){d=a+116|0;c[d>>2]=1;GI(a,0)|0;b=c[80021]|0;e=c[b+84>>2]|0;if(e|0)Bg[e&255](b,a);c[d>>2]=0;HI(a,2,0,0)}}else mE(288511,f);while(0);d=a+108|0;b=c[d>>2]|0;if(b|0){c[b>>2]=c[b>>2]&-5;ME(b);c[d>>2]=0}d=c[80021]|0;b=c[d+140>>2]|0;if(b){Bg[b&255](d,a);d=c[80021]|0}b=c[d+128>>2]|0;g=w&2048;if((g|0)==0&(b|0)!=0)Bg[b&255](d,a);d=w&2;a:do if((c[A>>2]&2|0)==(d|0))b=0;else{e=c[80021]|0;b=(e|0)==0;if(!d){if(b){mE(288511,i);b=0;break}d=e+388|0;b=c[d>>2]|0;if((b|0)<=0){b=0;break}c[d>>2]=b+-1;if((b|0)!=1){b=0;break}d=c[e+172>>2]|0;if(!d){b=0;break}vg[d&511](e);b=0;break}if(b){mE(288511,h);A=-1;l=B;return A|0}d=c[e+388>>2]|0;do if(!d){d=c[e+164>>2]|0;if(!d){mE(294785,j);A=-1;l=B;return A|0}d=hg[d&63](e,0)|0;e=c[80021]|0;if(!d){b=e;d=c[e+388>>2]|0;break}b=c[e+172>>2]|0;if(b|0)vg[b&511](e);if((d|0)<0)d=-1;else{b=1;break a}l=B;return d|0}else b=e;while(0);c[b+388>>2]=d+1;b=1}while(0);e=w&1024050|8;c[A>>2]=e;c[a+52>>2]=e;c[a+120>>2]=0;e=c[80021]|0;f=c[e+32>>2]|0;d=(g|0)!=0;if(!(d|(f|0)==0)?(hg[f&63](e,a)|0)<0:0){if(!b){A=-1;l=B;return A|0}e=c[80021]|0;if(e){d=e+388|0;b=c[d>>2]|0;if(((b|0)>0?(c[d>>2]=b+-1,(b|0)==1):0)?(m=c[e+172>>2]|0,m|0):0)vg[m&511](e)}else mE(288511,k);c[A>>2]=c[A>>2]&-3;A=-1;l=B;return A|0}if(d)c[A>>2]=c[A>>2]|2048;d=c[80021]|0;b=c[d+40>>2]|0;if((b|0)!=0?(c[a+8>>2]|0)!=0:0){Bg[b&255](d,a);d=c[80021]|0}b=c[d+44>>2]|0;if(b|0?(n=c[a+12>>2]|0,n|0):0)Dg[b&63](d,a,n);if(c[a+132>>2]|0)hg[c[(c[80021]|0)+256>>2]&63](a,1)|0;do if(w&128|0){b=c[80021]|0;if(!b){mE(288511,o);break}if(a|0?(c[a>>2]|0)==(b+280|0):0){if(c[A>>2]&128|0)break;d=c[b+92>>2]|0;if(!d)break;Bg[d&255](b,a);break}mE(307733,p)}while(0);do if(w&64|0){d=c[80021]|0;if(!d){mE(288511,q);break}if(a|0?(c[a>>2]|0)==(d+280|0):0){if(c[A>>2]&64|0)break;GI(a,0)|0;d=c[80021]|0;b=c[d+96>>2]|0;if(!b)break;Bg[b&255](d,a);break}mE(307733,r)}while(0);do if(w&1|0){d=c[80021]|0;if(!d){mE(288511,s);break}if(a|0?(c[a>>2]|0)==(d+280|0):0){d=w&4097;b=c[A>>2]|0;e=b&4097;if((d|0)==(e|0))break;c[A>>2]=b&-4098|d;if(!(GI(a,(b&68|0)==4&1)|0))break;c[A>>2]=c[A>>2]&-4098|e;break}mE(307733,t)}while(0);do if(w&256|0){b=c[80021]|0;if(!b){mE(288511,u);break}if(a|0?(c[a>>2]|0)==(b+280|0):0){d=c[A>>2]|0;if(d&256|0)break;c[A>>2]=d|256;v=(d&512|0)==0;f=(v^1)&1;e=c[b+276>>2]|0;do if(v){if((e|0)==(a|0)){e=0;d=b;x=96}}else{if((e|0)==0|(e|0)==(a|0)){e=a;d=b;x=96;break}d=e+48|0;c[d>>2]=c[d>>2]&-257;d=c[b+124>>2]|0;if(!d){e=a;d=b;x=96;break}Dg[d&63](b,e,0);e=a;d=c[80021]|0;x=96}while(0);if((x|0)==96){c[d+276>>2]=e;b=d}d=c[b+124>>2]|0;if(!d)break;Dg[d&63](b,a,f);break}mE(307733,v)}while(0);if(w&8|0){A=0;l=B;return A|0}b=c[80021]|0;if(!b){mE(288511,y);A=0;l=B;return A|0}if(a|0?(c[a>>2]|0)==(b+280|0):0){if(c[A>>2]&4|0){A=0;l=B;return A|0}d=c[b+80>>2]|0;if(d|0)Bg[d&255](b,a);HI(a,1,0,0);A=0;l=B;return A|0}mE(307733,z);A=0;l=B;return A|0}function jE(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+48|0;n=s;o=s+40|0;p=s+32|0;q=s+24|0;j=b+320|0;r=c[j>>2]|0;if(!r){fN(b);l=s;return}e=c[r>>2]|0;if((c[80020]|0)!=(e|0)){c[r+268>>2]=0;if((kE(c[b+188>>2]|0,e)|0)>=0){c[80020]=c[r>>2];vE(b)|0;d=c[j>>2]|0;f=5}}else{d=r;f=5}if((f|0)==5?c[d+4>>2]|0:0){d=d+108|0;do{}while((fg[c[d>>2]&7]()|0)!=0)}d=c[r+252>>2]|0;if(d|0){e=r+60|0;do{vg[c[e>>2]&511](c[d>>2]|0);i=d;d=c[d+24>>2]|0;fN(i)}while((d|0)!=0)}d=c[r+260>>2]|0;if(d|0){e=r+56|0;do{vg[c[e>>2]&511](c[d>>2]|0);i=d;d=c[d+156>>2]|0;fN(i)}while((d|0)!=0)}d=c[r>>2]|0;if(d|0){i=r+232|0;e=c[i>>2]|0;if(!e)i=d;else{h=r+204|0;do{d=e;e=c[e+12>>2]|0;Bg[c[h>>2]&255](1,d+8|0);d=c[j>>2]|0;a:do if(c[d+4>>2]|0?(k=d+108|0,m=fg[c[k>>2]&7]()|0,m|0):0){d=335059;g=m;while(1){if(!((d|0)!=0?(a[d>>0]|0)!=0:0))d=288266;switch(g|0){case 1280:{f=288337;break}case 1281:{f=288320;break}case 1282:{f=288299;break}case 1285:{f=288282;break}default:f=288274}c[n>>2]=d;c[n+4>>2]=288379;c[n+8>>2]=464;c[n+12>>2]=294826;c[n+16>>2]=f;c[n+20>>2]=g;mE(288353,n);g=fg[c[k>>2]&7]()|0;if(!g)break a}}while(0);fN(c[i>>2]|0);c[i>>2]=e}while((e|0)!=0);i=c[r>>2]|0}d=c[80021]|0;if((i|0)!=0&(d|0)!=0){h=c[d+664>>2]|0;c[q>>2]=0;n=c[q>>2]|0;c[q>>2]=1;if(n|0){d=o+4|0;e=p+4|0;do{c[o>>2]=0;c[d>>2]=0;f=0;g=0;while(1){c[8240]=0;c[p>>2]=f;c[e>>2]=g;n=(Qf(p|0,o|0)|0)!=0;if(!(n&(c[8240]|0)==4))break;f=c[o>>2]|0;g=c[d>>2]|0}n=c[q>>2]|0;c[q>>2]=1}while((n|0)!=0)}c[q>>2]=0;d=c[80022]|0;b:do if(d){while(1){if(!(c[d>>2]|0))break;d=c[d+8>>2]|0;if(!d){d=0;break b}}d=c[d+4>>2]|0;if(!((h|0)==0|(d|0)==0)?(c[d>>2]|0)>>>0>=h>>>0:0)d=c[d+4+(h+-1<<3)>>2]|0;else d=0}else d=0;while(0);if((d|0)==(i|0))kE(0,0)|0;q=c[80021]|0;Bg[c[q+200>>2]&255](q,i)}}fN(c[r+244>>2]|0);fN(r);fN(b);l=s;return}function kE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+64|0;p=q+32|0;o=q+24|0;n=q+16|0;i=q+8|0;j=q+48|0;k=q+40|0;m=q+36|0;d=c[80021]|0;a:do if(d){h=c[d+660>>2]|0;c[m>>2]=0;g=c[m>>2]|0;c[m>>2]=1;if(g|0){d=j+4|0;e=k+4|0;do{c[j>>2]=0;c[d>>2]=0;f=0;g=0;while(1){c[8240]=0;c[k>>2]=f;c[e>>2]=g;g=(Qf(k|0,j|0)|0)!=0;if(!(g&(c[8240]|0)==4))break;f=c[j>>2]|0;g=c[d>>2]|0}g=c[m>>2]|0;c[m>>2]=1}while((g|0)!=0)}c[m>>2]=0;d=c[80022]|0;if(d){while(1){if(!(c[d>>2]|0))break;d=c[d+8>>2]|0;if(!d){d=0;break a}}d=c[d+4>>2]|0;if(!((h|0)==0|(d|0)==0)?(c[d>>2]|0)>>>0>=h>>>0:0)d=c[d+4+(h+-1<<3)>>2]|0;else d=0}else d=0}else{mE(288511,q);d=0}while(0);if((d|0)==(a|0)){d=c[80021]|0;b:do if(d){h=c[d+664>>2]|0;c[m>>2]=0;i=c[m>>2]|0;c[m>>2]=1;if(i|0){d=j+4|0;e=k+4|0;do{c[j>>2]=0;c[d>>2]=0;f=0;g=0;while(1){c[8240]=0;c[k>>2]=f;c[e>>2]=g;i=(Qf(k|0,j|0)|0)!=0;if(!(i&(c[8240]|0)==4))break;f=c[j>>2]|0;g=c[d>>2]|0}i=c[m>>2]|0;c[m>>2]=1}while((i|0)!=0)}c[m>>2]=0;d=c[80022]|0;if(d){while(1){if(!(c[d>>2]|0))break;d=c[d+8>>2]|0;if(!d){d=0;break b}}d=c[d+4>>2]|0;if(!((h|0)==0|(d|0)==0)?(c[d>>2]|0)>>>0>=h>>>0:0)d=c[d+4+(h+-1<<3)>>2]|0;else d=0}else d=0}else{mE(288511,i);d=0}while(0);if((d|0)==(b|0)){b=0;l=q;return b|0}}d=c[80021]|0;do if(!b)a=0;else{if(!d){mE(288511,n);b=-1;l=q;return b|0}if(a|0?(c[a>>2]|0)==(d+280|0):0){if(c[a+48>>2]&2|0)break;mE(288552,p);b=-1;l=q;return b|0}mE(307733,o);b=-1;l=q;return b|0}while(0);d=ig[c[d+180>>2]&63](d,a,b)|0;if(d|0){b=d;l=q;return b|0}p=c[80021]|0;c[p+652>>2]=a;c[p+656>>2]=b;FI(c[p+660>>2]|0,a);FI(c[(c[80021]|0)+664>>2]|0,b);b=0;l=q;return b|0}function lE(){var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;t=l;l=l+64|0;r=t+24|0;q=t+16|0;p=t+8|0;o=t;k=t+32|0;a[332971]=0;if(!(c[79098]|0)){l=t;return}e=a[316396]|0;a:do if(!(e<<24>>24)){d=332971;b=1023}else{m=k+1|0;n=k+30|0;f=0;d=332971;g=316396;b=1023;while(1){while(1){if(e<<24>>24==37)break;g=g+1|0;i=d+1|0;a[d>>0]=e;j=b+-1|0;e=a[g>>0]|0;if(!((b|0)>1&e<<24>>24!=0)){d=i;b=j;break a}else{d=i;b=j}}a[k>>0]=37;j=m;e=g+1|0;while(1){i=a[e>>0]|0;if(!(i<<24>>24==46|(i+-48&255)<10)){s=9;break}e=e+1|0;g=j+1|0;a[j>>0]=i;if(j>>>0<n>>>0)j=g;else{i=e;break}}if((s|0)==9){s=0;a[j>>0]=i;g=j+1|0;i=e+1|0}a[g>>0]=0;switch(a[j>>0]|0){case 37:{a[d>>0]=37;d=d+1|0;b=b+-1|0;break}case 88:case 120:case 111:case 117:case 100:case 105:case 99:{c[o>>2]=c[316528+(f<<7)>>2];j=EI(d,b,k,o)|0;g=(j|0)>0;f=f+1|0;d=g?d+j|0:d;b=b-(g?j:0)|0;break}case 102:{h[p>>3]=+h[316528+(f<<7)>>3];j=EI(d,b,k,p)|0;g=(j|0)>0;f=f+1|0;d=g?d+j|0:d;b=b-(g?j:0)|0;break}case 112:{c[q>>2]=c[316528+(f<<7)>>2];j=EI(d,b,k,q)|0;g=(j|0)>0;f=f+1|0;d=g?d+j|0:d;b=b-(g?j:0)|0;break}case 115:{c[r>>2]=316528+(f<<7);j=EI(d,b,k,r)|0;g=(j|0)>0;f=f+1|0;d=g?d+j|0:d;b=b-(g?j:0)|0;break}default:{}}e=a[i>>0]|0;if(!((b|0)>0&e<<24>>24!=0))break a;else g=i}}while(0);a[((b|0)<0?d+(b+-1)|0:d)>>0]=0;l=t;return}function mE(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0.0,m=0;j=l;l=l+32|0;i=j;g=j+8|0;if(!b){l=j;return}c[79098]=1;e=WO(b)|0;e=e>>>0<127?e:127;PQ(316396,b|0,e|0)|0;a[316396+e>>0]=0;c[g>>2]=d;c[79131]=0;e=a[b>>0]|0;a:do if(e<<24>>24){d=b;b=0;do{d=d+1|0;if(e<<24>>24==37){while(1){e=a[d>>0]|0;f=d+1|0;if(e<<24>>24==46|(e+-48&255)<10)d=f;else break}switch(e<<24>>24|0){case 0:break;case 88:case 120:case 111:case 117:case 100:case 105:case 99:{e=(c[g>>2]|0)+(4-1)&~(4-1);d=c[e>>2]|0;c[g>>2]=e+4;e=b+1|0;c[79131]=e;c[316528+(b<<7)>>2]=d;d=f;b=e;break}case 102:{e=(c[g>>2]|0)+(8-1)&~(8-1);k=+h[e>>3];c[g>>2]=e+8;e=b+1|0;c[79131]=e;h[316528+(b<<7)>>3]=k;d=f;b=e;break}case 112:{e=(c[g>>2]|0)+(4-1)&~(4-1);d=c[e>>2]|0;c[g>>2]=e+4;e=b+1|0;c[79131]=e;c[316528+(b<<7)>>2]=d;d=f;b=e;break}case 115:{e=(c[g>>2]|0)+(4-1)&~(4-1);m=c[e>>2]|0;c[g>>2]=e+4;m=(m|0)==0?314298:m;e=316528+(b<<7)|0;d=WO(m)|0;d=d>>>0<127?d:127;PQ(e|0,m|0,d|0)|0;a[e+d>>0]=0;b=b+1|0;c[79131]=b;d=f;break}default:d=f}if((b|0)>4)break a}e=a[d>>0]|0}while(e<<24>>24!=0)}while(0);lE();c[i>>2]=332971;CI(0,0,i);l=j;return}function nE(b,d){b=b|0;d=d|0;switch(a[d+12>>0]|0){case 2:case 1:case 6:{c[80020]=0;return}case 7:{pg[c[(c[b+320>>2]|0)+88>>2]&15]();return}default:return}}function oE(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0;h=l;l=l+16|0;g=h+8|0;e=c[a+188>>2]|0;f=c[80021]|0;if(!f){mE(288511,h);l=h;return 0}if(e|0?(c[e>>2]|0)==(f+280|0):0){a=c[f+184>>2]|0;if(a|0){Eg[a&63](f,e,b,d);l=h;return 0}if(b|0)c[b>>2]=c[e+24>>2];if(!d){l=h;return 0}c[d>>2]=c[e+28>>2];l=h;return 0}mE(307733,g);l=h;return 0}function pE(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0;Y=l;l=l+240|0;X=Y+216|0;V=Y+192|0;R=Y+168|0;N=Y+144|0;L=Y+120|0;I=Y+96|0;F=Y+72|0;y=Y+48|0;v=Y+24|0;p=Y+16|0;i=Y+8|0;h=Y;W=b+320|0;Q=c[W>>2]|0;g=c[Q>>2]|0;if((c[80020]|0)!=(g|0)){c[Q+268>>2]=0;if((kE(c[b+188>>2]|0,g)|0)>=0){c[80020]=c[Q>>2];vE(b)|0;f=c[W>>2]|0;j=4}}else{f=Q;j=4}if((j|0)==4?c[f+4>>2]|0:0){b=f+108|0;do{}while((fg[c[b>>2]&7]()|0)!=0)}g=d+4|0;b=c[g>>2]|0;a:do if((b|0)<825382478)if((b|0)<374740996)if((b|0)<372645892)switch(b|0){case 370546692:{A=6408;break a}default:{j=9;break a}}else switch(b|0){case 372645892:{A=6408;break a}default:{j=9;break a}}else if((b|0)<376840196)switch(b|0){case 374740996:{A=6408;break a}default:{j=9;break a}}else switch(b|0){case 376840196:{A=6408;break a}default:{j=9;break a}}else{b:do if((b|0)<842094169)if((b|0)<842094158)switch(b|0){case 825382478:break b;default:{j=9;break a}}else switch(b|0){case 842094158:break b;default:{j=9;break a}}else if((b|0)<1448433993)switch(b|0){case 842094169:break b;default:{j=9;break a}}else switch(b|0){case 1448433993:break b;default:{j=9;break a}}while(0);A=6409}while(0);if((j|0)==9){mE(294509,h);X=-1;l=Y;return X|0}T=eN(44)|0;if(!T){mE(294869,i);X=-1;l=Y;return X|0}if(c[T+-4>>2]&3|0){b=T;f=b+44|0;do{a[b>>0]=0;b=b+1|0}while((b|0)<(f|0))}c[T>>2]=0;z=T+4|0;c[z>>2]=3553;c[T+8>>2]=A;c[T+12>>2]=5121;g=c[g>>2]|0;h=(g|0)==1448433993;i=(g|0)==842094169;n=T+24|0;c[n>>2]=(h|i)&1;k=(g|0)==842094158;m=(g|0)==825382478;t=T+28|0;c[t>>2]=(k|m)&1;w=T+36|0;c[w>>2]=0;o=T+32|0;c[o>>2]=0;f=Df(295524)|0;b=c[80024]|0;c:do if(!b){b=f;j=20}else{while(1){if(!(JN(295524,c[b>>2]|0)|0))break;b=c[b+16>>2]|0;if(!b){b=f;j=20;break c}}if(f|0?(c[b+8>>2]|0)!=2:0){b=f;j=21;break}b=c[b+4>>2]|0;j=20}while(0);if((j|0)==20)if(!b)q=9728;else j=21;if((j|0)==21)if((a[b>>0]|0)==48)q=9728;else{q=(VO(b,295549)|0)==0;q=q?9728:9729}s=d+8|0;if((c[s>>2]|0)==1){f=c[d+12>>2]|0;d:do if((g|0)==0|(g&-268435456|0)==268435456)b=g&255;else{if((g|0)<1498831189)switch(g|0){case 844715353:{b=2;break d}default:{}}else switch(g|0){case 1498831189:{b=2;break d}default:{}}b=(g|0)==1431918169?2:1}while(0);f=O(b,f)|0;c[T+20>>2]=f;f=O(c[d+16>>2]|0,f)|0;if(h^(i^1))b=f;else b=((f|0)/2|0)+f|0;if(!(k^(m^1)))b=((f|0)/2|0)+b|0;f=eN(b)|0;if(!f){fN(T);mE(294869,p);X=-1;l=Y;return X|0}if(c[f+-4>>2]&3|0)RQ(f|0,0,b|0)|0;c[T+16>>2]=f}b=c[W>>2]|0;e:do if(c[b+4>>2]|0?(u=b+108|0,r=fg[c[u>>2]&7]()|0,r|0):0){b=335059;g=r;while(1){if((b|0)!=0?(a[b>>0]|0)!=0:0)f=b;else f=288266;switch(g|0){case 1280:{b=288337;break}case 1281:{b=288320;break}case 1282:{b=288299;break}case 1285:{b=288282;break}default:b=288274}c[v>>2]=f;c[v+4>>2]=288379;c[v+8>>2]=574;c[v+12>>2]=294538;c[v+16>>2]=b;c[v+20>>2]=g;mE(288353,v);g=fg[c[u>>2]&7]()|0;if(!g)break e;else b=f}}while(0);k=Q+96|0;if(c[n>>2]|0){Bg[c[k>>2]&255](1,o);b=c[W>>2]|0;if(c[b+4>>2]|0?(x=b+108|0,e=fg[c[x>>2]&7]()|0,e|0):0){while(1){switch(e|0){case 1280:{b=288337;break}case 1281:{b=288320;break}case 1282:{b=288299;break}case 1285:{b=288282;break}default:b=288274}c[y>>2]=294593;c[y+4>>2]=288379;c[y+8>>2]=578;c[y+12>>2]=294538;c[y+16>>2]=b;c[y+20>>2]=e;mE(288353,y);e=fg[c[x>>2]&7]()|0;if(!e){b=-1;break}}l=Y;return b|0}i=Q+16|0;vg[c[i>>2]&511](33986);j=Q+28|0;Bg[c[j>>2]&255](c[z>>2]|0,c[o>>2]|0);b=Q+160|0;Dg[c[b>>2]&63](c[z>>2]|0,10241,q);Dg[c[b>>2]&63](c[z>>2]|0,10240,q);Dg[c[b>>2]&63](c[z>>2]|0,10242,33071);Dg[c[b>>2]&63](c[z>>2]|0,10243,33071);e=Q+156|0;f=d+12|0;g=d+16|0;Jg[c[e>>2]&15](c[z>>2]|0,0,A,(c[f>>2]|0)/2|0,(c[g>>2]|0)/2|0,0,A,5121,0);Bg[c[k>>2]&255](1,w);h=c[W>>2]|0;if(c[h+4>>2]|0?(D=h+108|0,B=fg[c[D>>2]&7]()|0,B|0):0){e=B;while(1){switch(e|0){case 1280:{b=288337;break}case 1281:{b=288320;break}case 1282:{b=288299;break}case 1285:{b=288282;break}default:b=288274}c[F>>2]=294593;c[F+4>>2]=288379;c[F+8>>2]=590;c[F+12>>2]=294538;c[F+16>>2]=b;c[F+20>>2]=e;mE(288353,F);e=fg[c[D>>2]&7]()|0;if(!e){b=-1;break}}l=Y;return b|0}vg[c[i>>2]&511](33985);Bg[c[j>>2]&255](c[z>>2]|0,c[w>>2]|0);Dg[c[b>>2]&63](c[z>>2]|0,10241,q);Dg[c[b>>2]&63](c[z>>2]|0,10240,q);Dg[c[b>>2]&63](c[z>>2]|0,10242,33071);Dg[c[b>>2]&63](c[z>>2]|0,10243,33071);Jg[c[e>>2]&15](c[z>>2]|0,0,A,(c[f>>2]|0)/2|0,(c[g>>2]|0)/2|0,0,A,5121,0);b=c[W>>2]|0;if(c[b+4>>2]|0?(G=b+108|0,C=fg[c[G>>2]&7]()|0,C|0):0){e=C;while(1){switch(e|0){case 1280:{b=288337;break}case 1281:{b=288320;break}case 1282:{b=288299;break}case 1285:{b=288282;break}default:b=288274}c[I>>2]=294608;c[I+4>>2]=288379;c[I+8>>2]=600;c[I+12>>2]=294538;c[I+16>>2]=b;c[I+20>>2]=e;mE(288353,I);e=fg[c[G>>2]&7]()|0;if(!e){b=-1;break}}l=Y;return b|0}}if(c[t>>2]|0){Bg[c[k>>2]&255](1,w);b=c[W>>2]|0;if(c[b+4>>2]|0?(J=b+108|0,E=fg[c[J>>2]&7]()|0,E|0):0){e=E;while(1){switch(e|0){case 1280:{b=288337;break}case 1281:{b=288320;break}case 1282:{b=288299;break}case 1285:{b=288282;break}default:b=288274}c[L>>2]=294593;c[L+4>>2]=288379;c[L+8>>2]=607;c[L+12>>2]=294538;c[L+16>>2]=b;c[L+20>>2]=e;mE(288353,L);e=fg[c[J>>2]&7]()|0;if(!e){b=-1;break}}l=Y;return b|0}vg[c[Q+16>>2]&511](33985);Bg[c[Q+28>>2]&255](c[z>>2]|0,c[w>>2]|0);b=Q+160|0;Dg[c[b>>2]&63](c[z>>2]|0,10241,q);Dg[c[b>>2]&63](c[z>>2]|0,10240,q);Dg[c[b>>2]&63](c[z>>2]|0,10242,33071);Dg[c[b>>2]&63](c[z>>2]|0,10243,33071);Jg[c[Q+156>>2]&15](c[z>>2]|0,0,6410,(c[d+12>>2]|0)/2|0,(c[d+16>>2]|0)/2|0,0,6410,5121,0);b=c[W>>2]|0;if(c[b+4>>2]|0?(M=b+108|0,H=fg[c[M>>2]&7]()|0,H|0):0){e=H;while(1){switch(e|0){case 1280:{b=288337;break}case 1281:{b=288320;break}case 1282:{b=288299;break}case 1285:{b=288282;break}default:b=288274}c[N>>2]=294608;c[N+4>>2]=288379;c[N+8>>2]=617;c[N+12>>2]=294538;c[N+16>>2]=b;c[N+20>>2]=e;mE(288353,N);e=fg[c[M>>2]&7]()|0;if(!e){b=-1;break}}l=Y;return b|0}}Bg[c[k>>2]&255](1,T);b=c[W>>2]|0;if(c[b+4>>2]|0?(P=b+108|0,K=fg[c[P>>2]&7]()|0,K|0):0){e=K;while(1){switch(e|0){case 1280:{b=288337;break}case 1281:{b=288320;break}case 1282:{b=288299;break}case 1285:{b=288282;break}default:b=288274}c[R>>2]=294593;c[R+4>>2]=288379;c[R+8>>2]=623;c[R+12>>2]=294538;c[R+16>>2]=b;c[R+20>>2]=e;mE(288353,R);e=fg[c[P>>2]&7]()|0;if(!e){b=-1;break}}l=Y;return b|0}c[d+68>>2]=T;vg[c[Q+16>>2]&511](33984);Bg[c[Q+28>>2]&255](c[z>>2]|0,c[T>>2]|0);e=Q+160|0;Dg[c[e>>2]&63](c[z>>2]|0,10241,q);Dg[c[e>>2]&63](c[z>>2]|0,10240,q);Dg[c[e>>2]&63](c[z>>2]|0,10242,33071);Dg[c[e>>2]&63](c[z>>2]|0,10243,33071);e=d+12|0;f=d+16|0;Jg[c[Q+156>>2]&15](c[z>>2]|0,0,A,c[e>>2]|0,c[f>>2]|0,0,A,5121,0);b=c[W>>2]|0;if(c[b+4>>2]|0?(U=b+108|0,S=fg[c[U>>2]&7]()|0,S|0):0){e=S;while(1){switch(e|0){case 1280:{b=288337;break}case 1281:{b=288320;break}case 1282:{b=288299;break}case 1285:{b=288282;break}default:b=288274}c[V>>2]=294608;c[V+4>>2]=288379;c[V+8>>2]=634;c[V+12>>2]=294538;c[V+16>>2]=b;c[V+20>>2]=e;mE(288353,V);e=fg[c[U>>2]&7]()|0;if(!e){b=-1;break}}l=Y;return b|0}f:do if((c[s>>2]|0)==2){h=c[W>>2]|0;g=c[e>>2]|0;e=c[f>>2]|0;f=h+232|0;b=c[f>>2]|0;if(b|0)do{if((c[b>>2]|0)==(g|0)?(c[b+4>>2]|0)==(e|0):0)break f;b=c[b+12>>2]|0}while((b|0)!=0);b=eN(16)|0;c[b>>2]=g;c[b+4>>2]=e;Bg[c[h+92>>2]&255](1,b+8|0);c[b+12>>2]=c[f>>2];c[f>>2]=b}else b=0;while(0);c[T+40>>2]=b;b=c[W>>2]|0;if(!(c[b+4>>2]|0)){X=0;l=Y;return X|0}g=b+108|0;b=fg[c[g>>2]&7]()|0;if(!b){X=0;l=Y;return X|0}else e=335059;while(1){if((e|0)!=0?(a[e>>0]|0)!=0:0)f=e;else f=288266;switch(b|0){case 1280:{e=288337;break}case 1281:{e=288320;break}case 1282:{e=288299;break}case 1285:{e=288282;break}default:e=288274}c[X>>2]=f;c[X+4>>2]=288379;c[X+8>>2]=644;c[X+12>>2]=294538;c[X+16>>2]=e;c[X+20>>2]=b;mE(288353,X);b=fg[c[g>>2]&7]()|0;if(!b){b=-1;break}else e=f}l=Y;return b|0}function qE(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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;M=l;l=l+64|0;L=M+32|0;I=M+24|0;B=M+16|0;x=M+8|0;t=M;J=a+320|0;K=c[J>>2]|0;H=c[b+68>>2]|0;g=c[K>>2]|0;if((c[80020]|0)!=(g|0)){c[K+268>>2]=0;if((kE(c[a+188>>2]|0,g)|0)>=0){c[80020]=c[K>>2];vE(a)|0;h=c[J>>2]|0;u=4}}else{h=K;u=4}if((u|0)==4?c[h+4>>2]|0:0){a=h+108|0;do{}while((fg[c[a>>2]&7]()|0)!=0)}F=d+8|0;if((c[F>>2]|0)<1){L=0;l=M;return L|0}G=d+12|0;if((c[G>>2]|0)<1){L=0;l=M;return L|0}C=K+28|0;D=H+4|0;Bg[c[C>>2]&255](c[D>>2]|0,c[H>>2]|0);j=c[D>>2]|0;k=c[d>>2]|0;E=d+4|0;m=c[E>>2]|0;n=c[F>>2]|0;o=c[G>>2]|0;z=H+8|0;p=c[z>>2]|0;A=H+12|0;q=c[A>>2]|0;y=b+4|0;a=c[y>>2]|0;a:do if((a|0)==0|(a&-268435456|0)==268435456)a=a&255;else{if((a|0)<1498831189)switch(a|0){case 844715353:{a=2;break a}default:{}}else switch(a|0){case 1498831189:{a=2;break a}default:{}}a=(a|0)==1431918169?2:1}while(0);b=O(a,n)|0;do if((b|0)!=(f|0)){i=eN(O(b,o)|0)|0;if(!i){mE(294869,t);break}if((o|0)>0){a=0;g=i;h=e;while(1){PQ(g|0,h|0,b|0)|0;a=a+1|0;if((a|0)==(o|0)){r=i;s=i;u=18;break}else{g=g+b|0;h=h+f|0}}}else{r=i;s=i;u=18}}else{r=0;s=e;u=18}while(0);if((u|0)==18?(Jg[c[K+164>>2]&15](j,0,k,m,n,o,p,q,s),r|0):0)fN(r);do if(c[H+24>>2]|0){p=e+(O(c[G>>2]|0,f)|0)|0;e=c[C>>2]|0;a=c[D>>2]|0;if((c[y>>2]|0)==842094169)Bg[e&255](a,c[H+32>>2]|0);else Bg[e&255](a,c[H+36>>2]|0);h=c[D>>2]|0;b=(c[d>>2]|0)/2|0;i=(c[E>>2]|0)/2|0;j=(c[F>>2]|0)/2|0;e=c[G>>2]|0;k=(e|0)/2|0;m=c[z>>2]|0;n=c[A>>2]|0;q=(f|0)/2|0;do if((j|0)!=(q|0)){o=eN(O(k,j)|0)|0;if(!o){mE(294869,x);break}if((e|0)>1){e=0;a=o;g=p;while(1){PQ(a|0,g|0,j|0)|0;e=e+1|0;if((e|0)==(k|0)){v=o;w=o;u=29;break}else{a=a+j|0;g=g+q|0}}}else{v=o;w=o;u=29}}else{v=0;w=p;u=29}while(0);if((u|0)==29?(Jg[c[K+164>>2]&15](h,0,b,i,j,k,m,n,w),v|0):0)fN(v);e=p+((O(c[G>>2]|0,f)|0)/4|0)|0;a=c[C>>2]|0;g=c[D>>2]|0;if((c[y>>2]|0)==842094169)Bg[a&255](g,c[H+36>>2]|0);else Bg[a&255](g,c[H+32>>2]|0);k=c[D>>2]|0;m=(c[d>>2]|0)/2|0;n=(c[E>>2]|0)/2|0;o=(c[F>>2]|0)/2|0;a=c[G>>2]|0;p=(a|0)/2|0;j=c[z>>2]|0;i=c[A>>2]|0;if((o|0)!=(q|0)){b=eN(O(p,o)|0)|0;if(!b){mE(294869,B);break}if((a|0)>1){a=0;g=b;h=e;while(1){PQ(g|0,h|0,o|0)|0;a=a+1|0;if((a|0)==(p|0)){g=b;a=b;break}else{g=g+o|0;h=h+q|0}}}else{g=b;a=b}}else{g=0;a=e}Jg[c[K+164>>2]&15](k,0,m,n,o,p,j,i,a);if(g)fN(g)}while(0);do if(c[H+28>>2]|0){e=e+(O(c[G>>2]|0,f)|0)|0;Bg[c[C>>2]&255](c[D>>2]|0,c[H+36>>2]|0);n=c[D>>2]|0;m=(c[d>>2]|0)/2|0;k=(c[E>>2]|0)/2|0;j=(c[F>>2]|0)/2|0;a=c[G>>2]|0;i=(a|0)/2|0;h=j<<1;if((h|0)!=(f|0)){b=eN(O(h,i)|0)|0;if(!b){mE(294869,I);break}if((a|0)>1){a=0;g=b;while(1){PQ(g|0,e|0,h|0)|0;a=a+1|0;if((a|0)==(i|0)){a=b;e=b;break}else{g=g+h|0;e=e+f|0}}}else{a=b;e=b}}else a=0;Jg[c[K+164>>2]&15](n,0,m,k,j,i,6410,5121,e);if(a|0)fN(a)}while(0);e=c[J>>2]|0;if(!(c[e+4>>2]|0)){L=0;l=M;return L|0}g=e+108|0;e=fg[c[g>>2]&7]()|0;if(!e){L=0;l=M;return L|0}while(1){switch(e|0){case 1280:{a=288337;break}case 1281:{a=288320;break}case 1282:{a=288299;break}case 1285:{a=288282;break}default:a=288274}c[L>>2]=294263;c[L+4>>2]=288379;c[L+8>>2]=753;c[L+12>>2]=294417;c[L+16>>2]=a;c[L+20>>2]=e;mE(288353,L);e=fg[c[g>>2]&7]()|0;if(!e){e=-1;break}}l=M;return e|0}function rE(a,b,d,e,f,g,h,i,j){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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,P=0,Q=0;Q=l;l=l+48|0;P=Q+24|0;L=Q+16|0;C=Q+8|0;w=Q;N=a+320|0;M=c[N>>2]|0;E=c[b+68>>2]|0;b=c[M>>2]|0;if((c[80020]|0)!=(b|0)){c[M+268>>2]=0;if((kE(c[a+188>>2]|0,b)|0)>=0){c[80020]=c[M>>2];vE(a)|0;k=c[N>>2]|0;I=4}}else{k=M;I=4}if((I|0)==4?c[k+4>>2]|0:0){b=k+108|0;do{}while((fg[c[b>>2]&7]()|0)!=0)}D=d+8|0;if((c[D>>2]|0)<1){P=0;l=Q;return P|0}F=d+12|0;if((c[F>>2]|0)<1){P=0;l=Q;return P|0}x=M+28|0;y=E+4|0;Bg[c[x>>2]&255](c[y>>2]|0,c[E+32>>2]|0);m=c[y>>2]|0;n=(c[d>>2]|0)/2|0;B=d+4|0;o=(c[B>>2]|0)/2|0;p=(c[D>>2]|0)/2|0;b=c[F>>2]|0;q=(b|0)/2|0;G=E+8|0;r=c[G>>2]|0;H=E+12|0;s=c[H>>2]|0;do if((p|0)!=(j|0)){t=eN(O(q,p)|0)|0;if(!t){mE(294869,w);break}if((b|0)>1){a=0;k=t;b=i;while(1){PQ(k|0,b|0,p|0)|0;a=a+1|0;if((a|0)==(q|0)){u=t;v=t;I=14;break}else{k=k+p|0;b=b+j|0}}}else{u=t;v=t;I=14}}else{u=0;v=i;I=14}while(0);if((I|0)==14?(Jg[c[M+164>>2]&15](m,0,n,o,p,q,r,s,v),u|0):0)fN(u);Bg[c[x>>2]&255](c[y>>2]|0,c[E+36>>2]|0);m=c[y>>2]|0;n=(c[d>>2]|0)/2|0;o=(c[B>>2]|0)/2|0;p=(c[D>>2]|0)/2|0;b=c[F>>2]|0;q=(b|0)/2|0;r=c[G>>2]|0;s=c[H>>2]|0;do if((p|0)!=(h|0)){t=eN(O(q,p)|0)|0;if(!t){mE(294869,C);break}if((b|0)>1){a=0;k=t;b=g;while(1){PQ(k|0,b|0,p|0)|0;a=a+1|0;if((a|0)==(q|0)){z=t;A=t;I=21;break}else{k=k+p|0;b=b+h|0}}}else{z=t;A=t;I=21}}else{z=0;A=g;I=21}while(0);if((I|0)==21?(Jg[c[M+164>>2]&15](m,0,n,o,p,q,r,s,A),z|0):0)fN(z);Bg[c[x>>2]&255](c[y>>2]|0,c[E>>2]|0);s=c[y>>2]|0;r=c[d>>2]|0;q=c[B>>2]|0;p=c[D>>2]|0;o=c[F>>2]|0;n=c[G>>2]|0;k=c[H>>2]|0;do if((p|0)!=(f|0)){m=eN(O(o,p)|0)|0;if(!m){mE(294869,L);break}if((o|0)>0){b=0;a=m;while(1){PQ(a|0,e|0,p|0)|0;b=b+1|0;if((b|0)==(o|0)){J=m;K=m;I=28;break}else{a=a+p|0;e=e+f|0}}}else{J=m;K=m;I=28}}else{J=0;K=e;I=28}while(0);if((I|0)==28?(Jg[c[M+164>>2]&15](s,0,r,q,p,o,n,k,K),J|0):0)fN(J);e=c[N>>2]|0;if(!(c[e+4>>2]|0)){P=0;l=Q;return P|0}a=e+108|0;e=fg[c[a>>2]&7]()|0;if(!e){P=0;l=Q;return P|0}while(1){switch(e|0){case 1280:{b=288337;break}case 1281:{b=288320;break}case 1282:{b=288299;break}case 1285:{b=288282;break}default:b=288274}c[P>>2]=294263;c[P+4>>2]=288379;c[P+8>>2]=803;c[P+12>>2]=294281;c[P+16>>2]=b;c[P+20>>2]=e;mE(288353,P);e=fg[c[a>>2]&7]()|0;if(!e){e=-1;break}}l=Q;return e|0}function sE(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0;h=c[b+68>>2]|0;g=c[h+20>>2]|0;h=(c[h+16>>2]|0)+(O(c[d+4>>2]|0,g)|0)|0;d=c[d>>2]|0;a=c[b+4>>2]|0;a:do if((a|0)==0|(a&-268435456|0)==268435456)a=a&255;else{if((a|0)<1498831189)switch(a|0){case 844715353:{a=2;break a}default:{}}else switch(a|0){case 1498831189:{a=2;break a}default:{}}a=(a|0)==1431918169?2:1}while(0);c[e>>2]=h+(O(a,d)|0);c[f>>2]=g;return 0}function tE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;d=l;l=l+16|0;f=d;e=c[b+68>>2]|0;c[f>>2]=0;c[f+4>>2]=0;c[f+8>>2]=c[b+12>>2];c[f+12>>2]=c[b+16>>2];qE(a,b,f,c[e+16>>2]|0,c[e+20>>2]|0)|0;l=d;return}function uE(a,b){a=a|0;b=b|0;var d=0,e=0;e=l;l=l+16|0;a=c[a+320>>2]|0;d=c[a+192>>2]|0;if(!b){Bg[d&255](36160,c[a+236>>2]|0);b=0;l=e;return b|0}b=c[b+68>>2]|0;Bg[d&255](36160,c[(c[b+40>>2]|0)+8>>2]|0);Fg[c[a+196>>2]&15](36160,36064,c[b+4>>2]|0,c[b>>2]|0,0);if((gg[c[a+200>>2]&511](36160)|0)==36053){b=0;l=e;return b|0}mE(294231,e);b=-1;l=e;return b|0}function vE(b){b=b|0;var d=0,e=0,f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;u=l;l=l+112|0;t=u+16|0;f=u+8|0;e=u;d=u+48|0;h=u+40|0;s=b+320|0;k=c[s>>2]|0;if((c[80020]|0)!=(c[k>>2]|0)){t=0;l=u;return t|0}r=b+308|0;if(!(c[r>>2]|0)){i=c[b+188>>2]|0;j=c[80021]|0;do if(!j)mE(288511,e);else{if(i|0?(c[i>>2]|0)==(j+280|0):0){e=c[j+184>>2]|0;if(!e){c[d>>2]=c[i+24>>2];c[h>>2]=c[i+28>>2];break}else{Eg[e&63](j,i,d,h);break}}mE(307733,f)}while(0);j=c[b+228>>2]|0;Eg[c[k+188>>2]&63](c[b+216>>2]|0,(c[h>>2]|0)-(c[b+220>>2]|0)-j|0,c[b+224>>2]|0,j)}else Eg[c[k+188>>2]&63](c[b+216>>2]|0,c[b+220>>2]|0,c[b+224>>2]|0,c[b+228>>2]|0);if(((c[k+268>>2]|0?(m=c[s>>2]|0,n=c[b+224>>2]|0,n|0):0)?(o=c[b+228>>2]|0,o|0):0)?(g[d>>2]=2.0/+(n|0),p=d+4|0,c[p>>2]=0,c[p+4>>2]=0,c[p+8>>2]=0,c[p+12>>2]=0,p=(c[r>>2]|0)!=0,g[d+20>>2]=(p?2.0:-2.0)/+(o|0),q=d+24|0,c[q>>2]=0,c[q+4>>2]=0,c[q+8>>2]=0,c[q+12>>2]=0,c[q+16>>2]=0,c[q+20>>2]=0,g[d+48>>2]=-1.0,g[d+52>>2]=p?-1.0:1.0,g[d+56>>2]=0.0,g[d+60>>2]=1.0,p=m+268|0,q=c[p>>2]|0,KN(q+88|0,d,64)|0):0){Eg[c[m+176>>2]&63](c[q+16>>2]|0,1,0,d);f=(c[p>>2]|0)+88|0;e=f+64|0;do{a[f>>0]=a[d>>0]|0;f=f+1|0;d=d+1|0}while((f|0)<(e|0))}d=c[s>>2]|0;if(!(c[d+4>>2]|0)){t=0;l=u;return t|0}b=d+108|0;d=fg[c[b>>2]&7]()|0;if(!d){t=0;l=u;return t|0}else e=335059;while(1){if((e|0)!=0?(a[e>>0]|0)!=0:0)f=e;else f=288266;switch(d|0){case 1280:{e=288337;break}case 1281:{e=288320;break}case 1282:{e=288299;break}case 1285:{e=288282;break}default:e=288274}c[t>>2]=f;c[t+4>>2]=288379;c[t+8>>2]=399;c[t+12>>2]=294190;c[t+16>>2]=e;c[t+20>>2]=d;mE(288353,t);d=fg[c[b>>2]&7]()|0;if(!d){d=-1;break}else e=f}l=u;return d|0}function wE(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=l;l=l+32|0;b=j+8|0;d=j+16|0;f=j+12|0;i=c[a+320>>2]|0;if((c[80020]|0)!=(c[i>>2]|0)){l=j;return 0}if(!(c[a+280>>2]|0)){vg[c[i+68>>2]&511](3089);l=j;return 0}e=a+248|0;vg[c[i+80>>2]&511](3089);if(c[a+308>>2]|0){Eg[c[i+144>>2]&63]((c[e>>2]|0)+(c[a+216>>2]|0)|0,(c[a+252>>2]|0)+(c[a+220>>2]|0)|0,c[a+256>>2]|0,c[a+260>>2]|0);l=j;return 0}g=c[a+188>>2]|0;h=c[80021]|0;do if(!h)mE(288511,j);else{if(g|0?(c[g>>2]|0)==(h+280|0):0){b=c[h+184>>2]|0;if(!b){c[d>>2]=c[g+24>>2];c[f>>2]=c[g+28>>2];break}else{Eg[b&63](h,g,d,f);break}}mE(307733,b)}while(0);h=c[a+260>>2]|0;Eg[c[i+144>>2]&63]((c[e>>2]|0)+(c[a+216>>2]|0)|0,(c[f>>2]|0)-(c[a+220>>2]|0)-(c[a+252>>2]|0)-h|0,c[a+256>>2]|0,h);l=j;return 0}function xE(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;e=b+320|0;s=c[e>>2]|0;g=c[s>>2]|0;if((c[80020]|0)!=(g|0)){c[s+268>>2]=0;if((kE(c[b+188>>2]|0,g)|0)>=0){c[80020]=c[s>>2];vE(b)|0;f=c[e>>2]|0;r=4}}else{f=s;r=4}if((r|0)==4?c[f+4>>2]|0:0){e=f+108|0;do{}while((fg[c[e>>2]&7]()|0)!=0)}h=s+272|0;i=s+273|0;j=s+274|0;k=s+275|0;l=b+312|0;e=a[l>>0]|0;m=b+313|0;n=a[m>>0]|0;o=b+314|0;g=a[o>>0]|0;p=b+315|0;q=a[p>>0]|0;if(((d[i>>0]|0)<<16|(d[h>>0]|0)<<24|(d[j>>0]|0)<<8|(d[k>>0]|0)|0)!=((n&255)<<16|(e&255)<<24|(g&255)<<8|q&255|0)){f=c[b+308>>2]|0;a:do if(f){f=c[f+4>>2]|0;if((f|0)<372645892)switch(f|0){case 370546692:{f=g;break a}default:{r=10;break a}}else switch(f|0){case 372645892:{f=g;break a}default:{r=10;break a}}}else r=10;while(0);if((r|0)==10){f=e;e=g}sg[c[s+40>>2]&3](+(f&255)*.003921568859368563,+(n&255)*.003921568859368563,+(e&255)*.003921568859368563,+(q&255)*.003921568859368563);a[h>>0]=a[l>>0]|0;a[i>>0]=a[m>>0]|0;a[j>>0]=a[o>>0]|0;a[k>>0]=a[p>>0]|0}e=b+280|0;if(c[e>>2]|0)vg[c[s+68>>2]&511](3089);vg[c[s+36>>2]&511](16384);if(!(c[e>>2]|0))return 0;vg[c[s+80>>2]&511](3089);return 0}function yE(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,h=0,i=0,j=0,k=0,m=0.0;j=l;e=a+320|0;i=c[e>>2]|0;if((BI(a)|0)<0){i=-1;l=j;return i|0}f=d<<3;h=l;l=l+((1*f|0)+15&-16)|0;if((d|0)>0){a=0;do{m=+g[b+(a<<3)+4>>2]+.5;k=a<<1;g[h+(k<<2)>>2]=+g[b+(a<<3)>>2]+.5;g[h+((k|1)<<2)>>2]=m;a=a+1|0}while((a|0)!=(d|0))}e=c[e>>2]|0;b=e+276|0;a=c[b>>2]|0;if(!a){Bg[c[e+216>>2]&255](1,b);a=c[b>>2]|0}Bg[c[e+220>>2]&255](34962,a);a=e+292|0;if((c[a>>2]|0)>>>0<f>>>0){Eg[c[e+224>>2]&63](34962,f,h,35040);c[a>>2]=f}else Eg[c[e+228>>2]&63](34962,0,f,h);Gg[c[e+184>>2]&7](0,2,5126,0,0,0);Dg[c[i+76>>2]&63](0,0,d);k=0;l=j;return k|0}function zE(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0.0;o=l;l=l+32|0;n=o;m=b+320|0;k=c[m>>2]|0;if((BI(b)|0)<0){n=-1;l=o;return n|0}i=e<<3;j=l;l=l+((1*i|0)+15&-16)|0;if((e|0)>0){b=0;do{p=+g[d+(b<<3)+4>>2]+.5;h=b<<1;g[j+(h<<2)>>2]=+g[d+(b<<3)>>2]+.5;g[j+((h|1)<<2)>>2]=p;b=b+1|0}while((b|0)!=(e|0))}h=c[m>>2]|0;f=h+276|0;b=c[f>>2]|0;if(!b){Bg[c[h+216>>2]&255](1,f);b=c[f>>2]|0}Bg[c[h+220>>2]&255](34962,b);b=h+292|0;if((c[b>>2]|0)>>>0<i>>>0){Eg[c[h+224>>2]&63](34962,i,j,35040);c[b>>2]=i}else Eg[c[h+228>>2]&63](34962,0,i,j);Gg[c[h+184>>2]&7](0,2,5126,0,0,0);b=k+76|0;Dg[c[b>>2]&63](3,0,e);f=e+-1|0;if(!(((e|0)!=2?!(+g[d>>2]!=+g[d+(f<<3)>>2]):0)?!(+g[d+4>>2]!=+g[d+(f<<3)+4>>2]):0))Dg[c[b>>2]&63](0,f,1);b=c[m>>2]|0;if(!(c[b+4>>2]|0)){n=0;l=o;return n|0}i=b+108|0;b=fg[c[i>>2]&7]()|0;if(!b){n=0;l=o;return n|0}else f=335059;while(1){if((f|0)!=0?(a[f>>0]|0)!=0:0)h=f;else h=288266;switch(b|0){case 1280:{f=288337;break}case 1281:{f=288320;break}case 1282:{f=288299;break}case 1285:{f=288282;break}default:f=288274}c[n>>2]=h;c[n+4>>2]=288379;c[n+8>>2]=1514;c[n+12>>2]=294123;c[n+16>>2]=f;c[n+20>>2]=b;mE(288353,n);b=fg[c[i>>2]&7]()|0;if(!b){b=-1;break}else f=h}l=o;return b|0}function AE(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0.0,x=0.0,y=0.0,z=0.0;v=l;l=l+64|0;u=v;s=v+24|0;t=b+320|0;f=c[t>>2]|0;if((BI(b)|0)<0){u=-1;l=v;return u|0}if((e|0)>0){r=s+4|0;k=s+8|0;m=s+12|0;n=s+16|0;o=s+20|0;p=s+24|0;q=s+28|0;i=f+76|0;h=0;do{y=+g[d+(h<<4)>>2];x=y+ +g[d+(h<<4)+8>>2];z=+g[d+(h<<4)+4>>2];w=z+ +g[d+(h<<4)+12>>2];g[s>>2]=y;g[r>>2]=z;g[k>>2]=x;g[m>>2]=z;g[n>>2]=y;g[o>>2]=w;g[p>>2]=x;g[q>>2]=w;j=c[t>>2]|0;f=j+276|0;b=c[f>>2]|0;if(!b){Bg[c[j+216>>2]&255](1,f);b=c[f>>2]|0}Bg[c[j+220>>2]&255](34962,b);b=j+292|0;if((c[b>>2]|0)>>>0<32){Eg[c[j+224>>2]&63](34962,32,s,35040);c[b>>2]=32}else Eg[c[j+228>>2]&63](34962,0,32,s);Gg[c[j+184>>2]&7](0,2,5126,0,0,0);Dg[c[i>>2]&63](5,0,4);h=h+1|0}while((h|0)!=(e|0))}b=c[t>>2]|0;if(!(c[b+4>>2]|0)){u=0;l=v;return u|0}i=b+108|0;b=fg[c[i>>2]&7]()|0;if(!b){u=0;l=v;return u|0}else f=335059;while(1){if((f|0)!=0?(a[f>>0]|0)!=0:0)h=f;else h=288266;switch(b|0){case 1280:{f=288337;break}case 1281:{f=288320;break}case 1282:{f=288299;break}case 1285:{f=288282;break}default:f=288274}c[u>>2]=h;c[u+4>>2]=288379;c[u+8>>2]=1549;c[u+12>>2]=294057;c[u+16>>2]=f;c[u+20>>2]=b;mE(288353,u);b=fg[c[i>>2]&7]()|0;if(!b){b=-1;break}else f=h}l=v;return b|0}function BE(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0.0,s=0.0,t=0.0,u=0.0;q=l;l=l+96|0;p=q;k=q+56|0;m=q+24|0;n=b+320|0;o=c[n>>2]|0;i=c[o>>2]|0;if((c[80020]|0)!=(i|0)){c[o+268>>2]=0;if((kE(c[b+188>>2]|0,i)|0)>=0){c[80020]=c[o>>2];vE(b)|0;h=c[n>>2]|0;j=4}}else{h=o;j=4}if((j|0)==4?c[h+4>>2]|0:0){h=h+108|0;do{}while((fg[c[h>>2]&7]()|0)!=0)}if((yI(b,d)|0)<0){p=-1;l=q;return p|0}t=+g[f>>2];g[k>>2]=t;r=+g[f+4>>2];g[k+4>>2]=r;s=t+ +g[f+8>>2];g[k+8>>2]=s;g[k+12>>2]=r;g[k+16>>2]=t;r=r+ +g[f+12>>2];g[k+20>>2]=r;g[k+24>>2]=s;g[k+28>>2]=r;j=c[n>>2]|0;i=j+276|0;h=c[i>>2]|0;if(!h){Bg[c[j+216>>2]&255](1,i);h=c[i>>2]|0}Bg[c[j+220>>2]&255](34962,h);h=j+292|0;if((c[h>>2]|0)>>>0<32){Eg[c[j+224>>2]&63](34962,32,k,35040);c[h>>2]=32}else Eg[c[j+228>>2]&63](34962,0,32,k);Gg[c[j+184>>2]&7](0,2,5126,0,0,0);i=c[e>>2]|0;s=+(c[d+12>>2]|0);r=+(i|0)/s;g[m>>2]=r;j=c[e+4>>2]|0;t=+(c[d+16>>2]|0);u=+(j|0)/t;g[m+4>>2]=u;s=+((c[e+8>>2]|0)+i|0)/s;g[m+8>>2]=s;g[m+12>>2]=u;g[m+16>>2]=r;t=+((c[e+12>>2]|0)+j|0)/t;g[m+20>>2]=t;g[m+24>>2]=s;g[m+28>>2]=t;j=c[n>>2]|0;i=j+280|0;h=c[i>>2]|0;if(!h){Bg[c[j+216>>2]&255](1,i);h=c[i>>2]|0}Bg[c[j+220>>2]&255](34962,h);h=j+296|0;if((c[h>>2]|0)>>>0<32){Eg[c[j+224>>2]&63](34962,32,m,35040);c[h>>2]=32}else Eg[c[j+228>>2]&63](34962,0,32,m);Gg[c[j+184>>2]&7](1,2,5126,0,0,0);Dg[c[o+76>>2]&63](5,0,4);h=c[n>>2]|0;if(!(c[h+4>>2]|0)){p=0;l=q;return p|0}b=h+108|0;h=fg[c[b>>2]&7]()|0;if(!h){p=0;l=q;return p|0}else i=335059;while(1){if((i|0)!=0?(a[i>>0]|0)!=0:0)j=i;else j=288266;switch(h|0){case 1280:{i=288337;break}case 1281:{i=288320;break}case 1282:{i=288299;break}case 1285:{i=288282;break}default:i=288274}c[p>>2]=j;c[p+4>>2]=288379;c[p+8>>2]=1751;c[p+12>>2]=293968;c[p+16>>2]=i;c[p+20>>2]=h;mE(288353,p);h=fg[c[b>>2]&7]()|0;if(!h){h=-1;break}else i=j}l=q;return h|0}function CE(b,d,e,f,h,i,j){b=b|0;d=d|0;e=e|0;f=f|0;h=+h;i=i|0;j=j|0;var k=0,m=0,n=0,o=0.0,p=0,q=0,r=0.0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0;A=l;l=l+144|0;z=A;v=A+104|0;y=A+72|0;u=A+40|0;t=A+24|0;w=b+320|0;x=c[w>>2]|0;k=c[x>>2]|0;if((c[80020]|0)!=(k|0)){c[x+268>>2]=0;if((kE(c[b+188>>2]|0,k)|0)>=0){c[80020]=c[x>>2];vE(b)|0;m=c[w>>2]|0;n=4}}else{m=x;n=4}if((n|0)==4?c[m+4>>2]|0:0){k=m+108|0;do{}while((fg[c[k>>2]&7]()|0)!=0)}if((yI(b,d)|0)<0){z=-1;l=A;return z|0}b=x+84|0;vg[c[b>>2]&511](3);vg[c[b>>2]&511](2);r=360.0-h;g[t+12>>2]=r;g[t+8>>2]=r;g[t+4>>2]=r;g[t>>2]=r;r=+g[f>>2];s=+g[i>>2]+r;g[u+24>>2]=s;g[u+16>>2]=s;g[u+8>>2]=s;g[u>>2]=s;s=+g[f+4>>2];o=+g[i+4>>2]+s;g[u+28>>2]=o;g[u+20>>2]=o;g[u+12>>2]=o;g[u+4>>2]=o;g[v>>2]=r;b=v+4|0;g[b>>2]=s;o=r+ +g[f+8>>2];i=v+8|0;g[i>>2]=o;p=v+12|0;g[p>>2]=s;q=v+16|0;g[q>>2]=r;h=s+ +g[f+12>>2];k=v+20|0;g[k>>2]=h;m=v+24|0;g[m>>2]=o;n=v+28|0;g[n>>2]=h;if(j&1|0){g[q>>2]=o;g[v>>2]=o;g[m>>2]=r;g[i>>2]=r}if(j&2|0){g[p>>2]=h;g[b>>2]=h;g[n>>2]=s;g[k>>2]=s}n=c[w>>2]|0;m=n+284|0;k=c[m>>2]|0;if(!k){Bg[c[n+216>>2]&255](1,m);k=c[m>>2]|0}Bg[c[n+220>>2]&255](34962,k);k=n+300|0;if((c[k>>2]|0)>>>0<16){Eg[c[n+224>>2]&63](34962,16,t,35040);c[k>>2]=16}else Eg[c[n+228>>2]&63](34962,0,16,t);Gg[c[n+184>>2]&7](2,1,5126,0,0,0);n=c[w>>2]|0;m=n+288|0;k=c[m>>2]|0;if(!k){Bg[c[n+216>>2]&255](1,m);k=c[m>>2]|0}Bg[c[n+220>>2]&255](34962,k);k=n+304|0;if((c[k>>2]|0)>>>0<32){Eg[c[n+224>>2]&63](34962,32,u,35040);c[k>>2]=32}else Eg[c[n+228>>2]&63](34962,0,32,u);Gg[c[n+184>>2]&7](3,2,5126,0,0,0);n=c[w>>2]|0;m=n+276|0;k=c[m>>2]|0;if(!k){Bg[c[n+216>>2]&255](1,m);k=c[m>>2]|0}Bg[c[n+220>>2]&255](34962,k);k=n+292|0;if((c[k>>2]|0)>>>0<32){Eg[c[n+224>>2]&63](34962,32,v,35040);c[k>>2]=32}else Eg[c[n+228>>2]&63](34962,0,32,v);Gg[c[n+184>>2]&7](0,2,5126,0,0,0);m=c[e>>2]|0;r=+(c[d+12>>2]|0);o=+(m|0)/r;g[y>>2]=o;n=c[e+4>>2]|0;s=+(c[d+16>>2]|0);h=+(n|0)/s;g[y+4>>2]=h;r=+((c[e+8>>2]|0)+m|0)/r;g[y+8>>2]=r;g[y+12>>2]=h;g[y+16>>2]=o;s=+((c[e+12>>2]|0)+n|0)/s;g[y+20>>2]=s;g[y+24>>2]=r;g[y+28>>2]=s;n=c[w>>2]|0;m=n+280|0;k=c[m>>2]|0;if(!k){Bg[c[n+216>>2]&255](1,m);k=c[m>>2]|0}Bg[c[n+220>>2]&255](34962,k);k=n+296|0;if((c[k>>2]|0)>>>0<32){Eg[c[n+224>>2]&63](34962,32,y,35040);c[k>>2]=32}else Eg[c[n+228>>2]&63](34962,0,32,y);Gg[c[n+184>>2]&7](1,2,5126,0,0,0);Dg[c[x+76>>2]&63](5,0,4);k=x+72|0;vg[c[k>>2]&511](3);vg[c[k>>2]&511](2);k=c[w>>2]|0;if(!(c[k+4>>2]|0)){z=0;l=A;return z|0}b=k+108|0;k=fg[c[b>>2]&7]()|0;if(!k){z=0;l=A;return z|0}else m=335059;while(1){if((m|0)!=0?(a[m>>0]|0)!=0:0)n=m;else n=288266;switch(k|0){case 1280:{m=288337;break}case 1281:{m=288320;break}case 1282:{m=288299;break}case 1285:{m=288282;break}default:m=288274}c[z>>2]=n;c[z+4>>2]=288379;c[z+8>>2]=1820;c[z+12>>2]=289717;c[z+16>>2]=m;c[z+20>>2]=k;mE(288353,z);k=fg[c[b>>2]&7]()|0;if(!k){k=-1;break}else m=n}l=A;return k|0}function DE(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,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0;E=l;l=l+80|0;y=E+48|0;n=E+40|0;q=E+32|0;p=E+24|0;m=E+16|0;k=E+8|0;j=E;o=E+76|0;s=E+72|0;u=a+320|0;v=c[u>>2]|0;w=a+308|0;g=c[w>>2]|0;if(!g)D=376840196;else D=c[g+4>>2]|0;g=c[v>>2]|0;if((c[80020]|0)!=(g|0)){c[v+268>>2]=0;if((kE(c[a+188>>2]|0,g)|0)>=0){c[80020]=c[v>>2];vE(a)|0;i=c[u>>2]|0;r=6}}else{i=v;r=6}if((r|0)==6?c[i+4>>2]|0:0){g=i+108|0;do{}while((fg[c[g>>2]&7]()|0)!=0)}C=b+8|0;g=c[C>>2]|0;t=(D|0)==0|(D&-268435456|0)==268435456;a:do if(t)i=D&255;else{if((D|0)<1498831189)switch(D|0){case 844715353:{i=2;break a}default:{}}else switch(D|0){case 1498831189:{i=2;break a}default:{}}i=(D|0)==1431918169?2:1}while(0);z=O(i,g)|0;A=b+12|0;B=eN(O(c[A>>2]|0,z)|0)|0;if(!B){mE(294869,j);f=-1;l=E;return f|0}do if((a|0)!=0?(c[a>>2]|0)==332969:0){g=c[w>>2]|0;if(g|0)if((c[g>>2]|0)==332970){c[o>>2]=c[g+12>>2];c[s>>2]=c[g+16>>2];break}else{mE(289655,m);break}g=c[a+8>>2]|0;if(g|0){ig[g&63](a,o,s)|0;break}i=c[a+188>>2]|0;if(!i){mE(289671,n);break}g=c[80021]|0;if(!g){mE(288511,p);break}if((c[i>>2]|0)==(g+280|0)){c[o>>2]=c[i+24>>2];c[s>>2]=c[i+28>>2];break}else{mE(307733,q);break}}else r=17;while(0);if((r|0)==17)mE(289638,k);g=c[b+4>>2]|0;if(!(c[w>>2]|0)){i=c[A>>2]|0;g=(c[s>>2]|0)-g-i|0}else i=c[A>>2]|0;Hg[c[v+140>>2]&7](c[b>>2]|0,g,c[C>>2]|0,i,6408,5121,B);g=c[u>>2]|0;if(c[g+4>>2]|0?(x=g+108|0,h=fg[c[x>>2]&7]()|0,h|0):0){while(1){switch(h|0){case 1280:{g=288337;break}case 1281:{g=288320;break}case 1282:{g=288299;break}case 1285:{g=288282;break}default:g=288274}c[y>>2]=288643;c[y+4>>2]=288379;c[y+8>>2]=1847;c[y+12>>2]=288658;c[y+16>>2]=g;c[y+20>>2]=h;mE(288353,y);h=fg[c[x>>2]&7]()|0;if(!h){g=-1;break}}l=E;return g|0}if(!(c[w>>2]|0)){h=c[C>>2]|0;b:do if(t)g=D&255;else{if((D|0)<1498831189)switch(D|0){case 844715353:{g=2;break b}default:{}}else switch(D|0){case 1498831189:{g=2;break b}default:{}}g=(D|0)==1431918169?2:1}while(0);j=O(g,h)|0;g=c[A>>2]|0;k=l;l=l+((1*j|0)+15&-16)|0;if((g+1|0)>>>0>=3){m=0-z|0;i=(g|0)/2|0;g=B+(O(g+-1|0,z)|0)|0;h=B;while(1){i=i+-1|0;PQ(k|0,h|0,j|0)|0;PQ(h|0,g|0,j|0)|0;PQ(g|0,k|0,j|0)|0;if(!i)break;else{g=g+m|0;h=h+z|0}}}}f=IE(c[C>>2]|0,c[A>>2]|0,D,B,z,d,e,f)|0;fN(B);l=E;return f|0}function EE(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0;p=l;l=l+48|0;o=p+24|0;j=p+16|0;i=p+8|0;h=p;k=p+40|0;m=p+32|0;n=p+28|0;d=a+320|0;e=c[d>>2]|0;f=c[e>>2]|0;if((c[80020]|0)!=(f|0)){c[e+268>>2]=0;if((kE(c[a+188>>2]|0,f)|0)>=0){c[80020]=c[e>>2];vE(a)|0;b=c[d>>2]|0;g=4}}else{b=e;g=4}if((g|0)==4?c[b+4>>2]|0:0){b=b+108|0;do{}while((fg[c[b>>2]&7]()|0)!=0)}a=c[a+188>>2]|0;b=c[80021]|0;if(!b){mE(288511,h);l=p;return}if(a|0?(c[a>>2]|0)==(b+280|0):0){if(!(c[a+48>>2]&2)){mE(288552,j);l=p;return}g=c[b+660>>2]|0;c[n>>2]=0;j=c[n>>2]|0;c[n>>2]=1;if(j|0){b=k+4|0;d=m+4|0;do{c[k>>2]=0;c[b>>2]=0;e=0;f=0;while(1){c[8240]=0;c[m>>2]=e;c[d>>2]=f;j=(Qf(m|0,k|0)|0)!=0;if(!(j&(c[8240]|0)==4))break;e=c[k>>2]|0;f=c[b>>2]|0}j=c[n>>2]|0;c[n>>2]=1}while((j|0)!=0)}c[n>>2]=0;b=c[80022]|0;a:do if(b){while(1){if(!(c[b>>2]|0))break;b=c[b+8>>2]|0;if(!b){b=0;break a}}b=c[b+4>>2]|0;if(!((g|0)==0|(b|0)==0)?(c[b>>2]|0)>>>0>=g>>>0:0)b=c[b+4+(g+-1<<3)>>2]|0;else b=0}else b=0;while(0);if((b|0)==(a|0)){o=c[80021]|0;Bg[c[o+196>>2]&255](o,a);l=p;return}else{mE(288596,o);l=p;return}}mE(307733,i);l=p;return}function FE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;e=a+320|0;g=c[e>>2]|0;h=b+68|0;i=c[h>>2]|0;b=c[g>>2]|0;if((c[80020]|0)!=(b|0)){c[g+268>>2]=0;if((kE(c[a+188>>2]|0,b)|0)>=0){c[80020]=c[g>>2];vE(a)|0;d=c[e>>2]|0;f=4}}else{d=g;f=4}if((f|0)==4?c[d+4>>2]|0:0){b=d+108|0;do{}while((fg[c[b>>2]&7]()|0)!=0)}if(!i)return;a=g+64|0;Bg[c[a>>2]&255](1,i);b=i+32|0;if(c[b>>2]|0)Bg[c[a>>2]&255](1,b);b=i+36|0;if(c[b>>2]|0)Bg[c[a>>2]&255](1,b);fN(c[i+16>>2]|0);fN(i);c[h>>2]=0;return}function GE(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,h=0,i=0,j=0,k=0;h=a+320|0;k=c[h>>2]|0;i=c[b+68>>2]|0;b=c[k>>2]|0;if((c[80020]|0)!=(b|0)){c[k+268>>2]=0;if((kE(c[a+188>>2]|0,b)|0)>=0){c[80020]=c[k>>2];vE(a)|0;f=c[h>>2]|0;j=4}}else{f=k;j=4}if((j|0)==4?c[f+4>>2]|0:0){b=f+108|0;do{}while((fg[c[b>>2]&7]()|0)!=0)}Bg[c[k+28>>2]&255](c[i+4>>2]|0,c[i>>2]|0);if(d|0)g[d>>2]=1.0;if(!e)return 0;g[e>>2]=1.0;return 0}function HE(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;e=a+320|0;h=c[e>>2]|0;f=c[b+68>>2]|0;b=c[h>>2]|0;if((c[80020]|0)!=(b|0)){c[h+268>>2]=0;if((kE(c[a+188>>2]|0,b)|0)>=0){c[80020]=c[h>>2];vE(a)|0;d=c[e>>2]|0;g=4}}else{d=h;g=4}if((g|0)==4?c[d+4>>2]|0:0){b=d+108|0;do{}while((fg[c[b>>2]&7]()|0)!=0)}Bg[c[h+28>>2]&255](c[f+4>>2]|0,0);return 0}function IE(a,b,d,e,f,g,h,i){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;x=l;l=l+448|0;s=x+32|0;o=x+24|0;n=x+16|0;m=x+8|0;k=x;u=x+380|0;v=x+320|0;p=x+276|0;q=x+232|0;j=x+144|0;r=x+56|0;t=x+40|0;if(!h){c[k>>2]=288740;mE(310091,k);i=-1;l=x;return i|0}if(!i){c[m>>2]=288744;mE(310091,m);i=-1;l=x;return i|0}k=(d|0)==0|(d&-268435456|0)==268435456;if((d|0)!=(g|0)){if(k?((d>>>24&15)+-1|0)>>>0<3:0){mE(288782,o);i=-1;l=x;return i|0}if((JE(p,d)|0)<0){i=-1;l=x;return i|0}m=u+24|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;c[m+16>>2]=0;c[m+20>>2]=0;c[m+24>>2]=0;c[u>>2]=1;c[u+4>>2]=p;c[u+20>>2]=e;c[u+8>>2]=a;c[u+12>>2]=b;c[u+16>>2]=f;m=j;n=m+88|0;do{c[m>>2]=0;m=m+4|0}while((m|0)<(n|0));k=u+52|0;c[j+76>>2]=-1;c[k>>2]=j;c[u+56>>2]=1;if((g|0)==0|(g&-268435456|0)==268435456?((g>>>24&15)+-1|0)>>>0<3:0){mE(288782,s);i=-1;l=x;return i|0}if((JE(q,g)|0)<0){i=-1;l=x;return i|0}m=v+24|0;c[m>>2]=0;c[m+4>>2]=0;c[m+8>>2]=0;c[m+12>>2]=0;c[m+16>>2]=0;c[m+20>>2]=0;c[m+24>>2]=0;c[v>>2]=1;c[v+4>>2]=q;c[v+20>>2]=h;c[v+8>>2]=a;c[v+12>>2]=b;c[v+16>>2]=i;m=r;n=m+88|0;do{c[m>>2]=0;m=m+4|0}while((m|0)<(n|0));c[r+76>>2]=-1;c[v+52>>2]=r;c[v+56>>2]=1;c[t>>2]=0;c[t+4>>2]=0;c[t+8>>2]=a;c[t+12>>2]=b;do if((c[j>>2]|0)==(v|0)){i=c[q+4>>2]|0;if(i|0?(c[j+80>>2]|0)!=(c[i+8>>2]|0):0){w=35;break}i=c[p+4>>2]|0;if((i|0)!=0?(c[j+84>>2]|0)!=(c[i+8>>2]|0):0)w=35}else w=35;while(0);do if((w|0)==35)if((KE(u,v)|0)<0){i=-1;l=x;return i|0}else{j=c[k>>2]|0;break}while(0);i=jg[c[j+8>>2]&31](u,t,v,t)|0;l=x;return i|0}a:do if(k)j=d&255;else{b:do if((d|0)<844715353)if((d|0)<842094158)switch(d|0){case 825382478:{w=8;break b}default:break b}else switch(d|0){case 842094158:case 842094169:{w=8;break b}default:break b}else if((d|0)<1448433993)if((d|0)<1431918169)switch(d|0){case 844715353:{j=2;break a}default:break b}else switch(d|0){case 1431918169:{j=2;break a}default:break b}else if((d|0)<1498831189)switch(d|0){case 1448433993:{w=8;break b}default:break b}else switch(d|0){case 1498831189:{j=2;break a}default:break b}while(0);if((w|0)==8){j=1;break}mE(288754,n);i=-1;l=x;return i|0}while(0);o=O(j,a)|0;if(!b)j=e;else{n=O(f,b)|0;j=b;k=h;m=e;while(1){j=j+-1|0;PQ(k|0,m|0,o|0)|0;if(!j)break;else{k=k+i|0;m=m+f|0}}h=h+(O(i,b)|0)|0;j=e+n|0}if((d|0)<842094169){c:do if((d|0)<842094158){switch(d|0){case 825382478:break c;default:j=0}l=x;return j|0}else{switch(d|0){case 842094158:break c;default:j=0}l=x;return j|0}while(0);if((b+1|0)>>>0<3){i=0;l=x;return i|0}k=(b|0)/2|0;while(1){k=k+-1|0;PQ(h|0,j|0,o|0)|0;if(!k){j=0;break}else{h=h+i|0;j=j+f|0}}l=x;return j|0}else{d:do if((d|0)<1448433993){switch(d|0){case 842094169:break d;default:j=0}l=x;return j|0}else{switch(d|0){case 1448433993:break d;default:j=0}l=x;return j|0}while(0);o=(o|0)/2|0;n=(f|0)/2|0;m=(i|0)/2|0;if((b+1|0)>>>0<3){i=0;l=x;return i|0}k=h;h=j;j=((b|0)/2|0)<<1;while(1){j=j+-1|0;PQ(k|0,h|0,o|0)|0;if(!j){j=0;break}else{k=k+m|0;h=h+n|0}}l=x;return j|0}return 0}function JE(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0;m=l;l=l+32|0;e=m+16|0;f=m+12|0;i=m+8|0;j=m+4|0;k=m;if(!(xI(d,e,f,i,j,k)|0)){b=-1;l=m;return b|0}g=b+4|0;h=g+40|0;do{a[g>>0]=0;g=g+1|0}while((g|0)<(h|0));c[b>>2]=d;d=c[e>>2]|0;a[b+8>>0]=d;a[b+9>>0]=(d+7|0)/8|0;d=c[f>>2]|0;c[b+12>>2]=d;f=b+32|0;a[f>>0]=0;g=b+28|0;a[g>>0]=8;if(d|0){if(!(d&1)){e=0;do{e=e+1<<24>>24;d=d>>>1}while(!(d&1|0));a[f>>0]=e}if(d&1|0){e=8;do{e=e+-1<<24>>24;d=d>>>1}while((d&1|0)!=0);a[g>>0]=e}}d=c[i>>2]|0;c[b+16>>2]=d;f=b+33|0;a[f>>0]=0;g=b+29|0;a[g>>0]=8;if(d|0){if(!(d&1)){e=0;do{e=e+1<<24>>24;d=d>>>1}while(!(d&1|0));a[f>>0]=e}if(d&1|0){e=8;do{e=e+-1<<24>>24;d=d>>>1}while((d&1|0)!=0);a[g>>0]=e}}d=c[j>>2]|0;c[b+20>>2]=d;f=b+34|0;a[f>>0]=0;g=b+30|0;a[g>>0]=8;if(d|0){if(!(d&1)){e=0;do{e=e+1<<24>>24;d=d>>>1}while(!(d&1|0));a[f>>0]=e}if(d&1|0){e=8;do{e=e+-1<<24>>24;d=d>>>1}while((d&1|0)!=0);a[g>>0]=e}}d=c[k>>2]|0;c[b+24>>2]=d;f=b+35|0;a[f>>0]=0;g=b+31|0;a[g>>0]=8;if(d|0){if(!(d&1)){e=0;do{e=e+1<<24>>24;d=d>>>1}while(!(d&1|0));a[f>>0]=e}if(d&1|0){e=8;do{e=e+-1<<24>>24;d=d>>>1}while((d&1|0)!=0);a[g>>0]=e}}c[b+4>>2]=0;c[b+36>>2]=1;c[b+40>>2]=0;b=0;l=m;return b|0}function KE(e,f){e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,P=0,Q=0;Q=l;l=l+1072|0;P=Q+16|0;L=Q+8|0;m=Q;M=Q+24|0;k=Q+40|0;J=e+52|0;G=c[J>>2]|0;if(c[e>>2]&2|0)LE(e,1);if(G|0){h=c[G>>2]|0;if(h|0?(F=h+56|0,N=c[F>>2]|0,c[F>>2]=N+-1,(N|0)<2):0)ME(h);c[G>>2]=0;c[G+84>>2]=0;c[G+80>>2]=0;N=G+64|0;fN(c[N>>2]|0);c[N>>2]=0}j=G+4|0;c[j>>2]=0;N=e+4|0;F=c[N>>2]|0;E=c[f+4>>2]|0;D=c[F>>2]|0;do if((D|0)==0|(D&-268435456|0)==268435456?((D>>>24&15)+-1|0)>>>0<3:0){D=c[E>>2]|0;if((D|0)==0|(D&-268435456|0)==268435456?((D>>>24&15)+-1|0)>>>0<3:0){D=NE(c[F+4>>2]|0,c[E+4>>2]|0,j)|0;c[G+64>>2]=D;if((D|0)==0&(c[j>>2]|0)==0){P=-1;l=Q;return P|0}if((a[F+8>>0]|0)==(a[E+8>>0]|0)){m=35;break}c[j>>2]=0;m=35;break}k=c[J>>2]|0;h=a[k+76>>0]|0;i=a[k+77>>0]|0;j=a[k+78>>0]|0;k=a[k+79>>0]|0;B=c[F+4>>2]|0;C=E+9|0;A=a[C>>0]|0;A=A<<24>>24==3?4:A&255;D=eN(O(A,c[B>>2]|0)|0)|0;if(!D){mE(294869,m);c[G+64>>2]=0;P=-1;l=Q;return P|0}if((c[B>>2]|0)<=0){c[G+64>>2]=D;m=35;break}z=B+4|0;y=h&255;x=i&255;w=j&255;j=k&255;k=E+28|0;m=E+32|0;n=E+29|0;o=E+33|0;p=E+30|0;q=E+34|0;r=E+31|0;s=E+35|0;h=0;do{i=c[z>>2]|0;t=((O(d[i+(h<<2)>>0]|0,y)|0)>>>0)/255|0;u=((O(d[i+(h<<2)+1>>0]|0,x)|0)>>>0)/255|0;v=((O(d[i+(h<<2)+2>>0]|0,w)|0)>>>0)/255|0;i=((O(d[i+(h<<2)+3>>0]|0,j)|0)>>>0)/255|0;switch(a[C>>0]|0){case 1:{a[D+(O(h,A)|0)>>0]=(u&255)>>>(d[n>>0]|0)<<d[o>>0]|(t&255)>>>(d[k>>0]|0)<<d[m>>0]|(v&255)>>>(d[p>>0]|0)<<d[q>>0]|(i&255)>>>(d[r>>0]|0)<<d[s>>0];break}case 2:{b[D+(O(h,A)|0)>>1]=(u&255)>>>(d[n>>0]|0)<<d[o>>0]|(t&255)>>>(d[k>>0]|0)<<d[m>>0]|(v&255)>>>(d[p>>0]|0)<<d[q>>0]|(i&255)>>>(d[r>>0]|0)<<d[s>>0];break}case 3:{i=D+(O(h,A)|0)|0;a[i+((d[m>>0]|0)>>>3&255)>>0]=t;a[i+((d[o>>0]|0)>>>3&255)>>0]=u;a[i+((d[q>>0]|0)>>>3&255)>>0]=v;break}case 4:{c[D+(O(h,A)|0)>>2]=(u&255)>>>(d[n>>0]|0)<<d[o>>0]|(t&255)>>>(d[k>>0]|0)<<d[m>>0]|(v&255)>>>(d[p>>0]|0)<<d[q>>0]|(i&255)>>>(d[r>>0]|0)<<d[s>>0];break}default:{}}h=h+1|0}while((h|0)<(c[B>>2]|0));c[G+64>>2]=D;m=36}else m=27;while(0);do if((m|0)==27){D=c[E>>2]|0;if((D|0)==0|(D&-268435456|0)==268435456?((D>>>24&15)+-1|0)>>>0<3:0){i=c[E+4>>2]|0;c[M>>2]=256;h=0;do{D=h&224;a[k+(h<<2)>>0]=D>>>6|D|D>>>3;D=h<<3&224;a[k+(h<<2)+1>>0]=D>>>6|D|D>>>3;D=h&3;D=D<<2|D;a[k+(h<<2)+2>>0]=D<<4|D;a[k+(h<<2)+3>>0]=-1;h=h+1|0}while((h|0)!=256);c[M+4>>2]=k;D=NE(M,i,j)|0;c[G+64>>2]=D;if((D|0)==0&(c[j>>2]|0)==0){P=-1;l=Q;return P|0}else{c[j>>2]=0;m=36;break}}if((F|0)==(E|0)){c[j>>2]=1;m=35}else m=35}while(0);if((m|0)==35){c[G>>2]=f;m=37}else if((m|0)==36?(c[G>>2]=f,f|0):0)m=37;if((m|0)==37){f=f+56|0;c[f>>2]=(c[f>>2]|0)+1}h=c[E+4>>2]|0;if(!h)h=0;else h=c[h+8>>2]|0;c[G+80>>2]=h;h=c[F+4>>2]|0;if(!h)h=0;else h=c[h+8>>2]|0;c[G+84>>2]=h;z=c[J>>2]|0;h=c[z>>2]|0;if(c[e>>2]&2|0)LE(e,1);c[z+8>>2]=10;c[z+56>>2]=c[N>>2];c[z+28>>2]=c[e+16>>2];y=h+4|0;c[z+60>>2]=c[y>>2];c[z+48>>2]=c[h+16>>2];x=z+68|0;if(c[x>>2]&4096|0?(PE(e)|0)==0:0){P=0;l=Q;return P|0}if((c[z+4>>2]|0)!=0?(c[x>>2]&-4097|0)==0:0)g=229;else m=48;a:do if((m|0)==48){w=c[N>>2]|0;h=a[w+8>>0]|0;b:do if(((h&255)<8?(H=c[w>>2]|0,(H|0)==0|(H&-268435456|0)==268435456):0)?((H>>>24&15)+-1|0)>>>0<3:0){if(h<<24>>24==1){i=c[J>>2]|0;h=c[(c[i>>2]|0)+4>>2]|0;if((d[h+8>>0]|0)<8)h=0;else h=d[h+9>>0]|0;switch(c[i+68>>2]&-28673|0){case 0:{g=26920+(h<<2)|0;m=142;break b}case 256:{g=26940+(h<<2)|0;m=142;break b}case 18:if(h>>>0>1){g=230;break a}else break b;case 274:if(h>>>0>1){g=231;break a}else break b;default:break b}}}else m=59;while(0);c:do if((m|0)==59){v=a[w+9>>0]|0;if((v<<24>>24==1?(I=c[w>>2]|0,(I|0)==0|(I&-268435456|0)==268435456):0)?((I>>>24&15)+-1|0)>>>0<3:0){i=c[J>>2]|0;h=c[(c[i>>2]|0)+4>>2]|0;if((d[h+8>>0]|0)<8)h=0;else h=d[h+9>>0]|0;switch(c[i+68>>2]&-28673|0){case 0:{g=26880+(h<<2)|0;m=142;break c}case 256:{g=26900+(h<<2)|0;m=142;break c}case 18:if(h>>>0>1){g=232;break a}else break c;case 274:if(h>>>0>1){g=233;break a}else break c;default:break c}}h=c[J>>2]|0;u=c[(c[h>>2]|0)+4>>2]|0;if(c[x>>2]&16|0)switch(c[h+68>>2]&-28673|0){case 16:switch(a[u+9>>0]|0){case 1:{g=234;break a}case 2:{if(v<<24>>24!=4){g=218;break a}if((c[w+24>>2]|0)!=-16777216){g=218;break a}if((c[w+16>>2]|0)!=65280){g=218;break a}if(!((c[w+12>>2]|0)==255?(c[u+12>>2]|0)==31:0)){if((c[w+20>>2]|0)!=255){g=218;break a}if((c[u+20>>2]|0)!=31){g=218;break a}}g=c[u+16>>2]|0;g=(g|0)==2016?220:(g|0)==992?219:218;break a}case 4:{if((((c[w+12>>2]|0)==(c[u+12>>2]|0)?(c[w+16>>2]|0)==(c[u+16>>2]|0):0)?(v<<24>>24==4?(c[w+20>>2]|0)==(c[u+20>>2]|0):0):0)?(c[w+24>>2]|0)==-16777216:0){g=235;break a}g=218;break a}default:{g=218;break a}}case 18:{if(c[w+24>>2]|0)break c;switch(a[u+9>>0]|0){case 1:{g=236;break a}case 2:{if(!(c[h+4>>2]|0)){g=221;break a}g=c[u+16>>2]|0;g=(g|0)==2016?223:(g|0)==992?222:221;break a}case 4:{h=c[w+12>>2]|0;do if((h|0)==(c[u+12>>2]|0)?(K=c[w+16>>2]|0,(K|0)==(c[u+16>>2]|0)):0){g=c[w+20>>2]|0;if(!(v<<24>>24==4?(g|0)==(c[u+20>>2]|0):0))break;if((K|h|g|0)==16777215){g=237;break a}}while(0);g=221;break a}default:{g=221;break a}}}case 274:{if(c[w+24>>2]|0)break c;g=(a[u+9>>0]|0)==1?225:224;break a}default:break c}i=a[u+8>>0]|0;if((i&255)>=8){switch(c[h+68>>2]&-28673|0){case 0:break;case 256:{if(v<<24>>24==2?c[h+4>>2]|0:0){g=244;break a}if((a[u+9>>0]|0)==1){g=245;break a}if(c[w+24>>2]|0?c[u+24>>2]|0:0){g=246;break a}g=247;break a}default:break c}g=v&255;if(i<<24>>24==8){d:do if(v<<24>>24==4){g=c[w+12>>2]|0;if((g|0)<1072693248){switch(g|0){case 16711680:break;default:break d}if((c[w+16>>2]|0)!=65280)break;if((c[w+20>>2]|0)==255){g=238;break a}else break}else{switch(g|0){case 1072693248:break;default:break d}if((c[w+16>>2]|0)!=1047552)break;if((c[w+20>>2]|0)==1023){g=239;break a}else break}}while(0);g=240;break a}t=c[u+24>>2]|0;if(!t)s=1;else s=c[w+24>>2]|0?4:2;r=c[18272+(g+-1<<2)>>2]|0;h=c[r+12>>2]|0;e:do if(!h)g=0;else{j=w+16|0;k=w+20|0;m=u+12|0;n=u+16|0;o=u+20|0;p=u+9|0;q=c[w+12>>2]|0;g=0;do{K=c[r+(g*40|0)>>2]|0;do if((q|0)==(K|0)|(K|0)==0){K=c[r+(g*40|0)+4>>2]|0;if(!((K|0)==0?1:(c[j>>2]|0)==(K|0)))break;K=c[r+(g*40|0)+8>>2]|0;if(!((K|0)==0?1:(c[k>>2]|0)==(K|0)))break;K=c[r+(g*40|0)+16>>2]|0;if(!((K|0)==0?1:(c[m>>2]|0)==(K|0)))break;K=c[r+(g*40|0)+20>>2]|0;if(!((K|0)==0?1:(c[n>>2]|0)==(K|0)))break;K=c[r+(g*40|0)+24>>2]|0;if(!((K|0)==0?1:(c[o>>2]|0)==(K|0)))break;if((d[p>>0]|0)!=(h|0))break;if((c[r+(g*40|0)+36>>2]&s|0)!=(s|0))break;i=c[r+(g*40|0)+28>>2]|0;h=c[4567]|0;do if((h|0)==-1){c[4567]=0;c[M>>2]=0;if(!(c[M>>2]|0)){h=0;break}c[4567]=2;h=2}while(0);if((h>>>2&1&i|0)==(i|0))break e}while(0);g=g+1|0;h=c[r+(g*40|0)+12>>2]|0}while((h|0)!=0)}while(0);g=c[r+(g*40|0)+32>>2]|0;if((g|0)==158){if((c[w>>2]|0)==372711428){g=241;break a}if((c[u>>2]|0)==372711428){g=242;break a}do if(v<<24>>24==4){if((a[u+9>>0]|0)!=4)break;if((c[w+12>>2]|0)!=(c[u+12>>2]|0))break;if((c[w+16>>2]|0)!=(c[u+16>>2]|0))break;if((c[w+20>>2]|0)!=(c[u+20>>2]|0))break;if((s|0)!=4){g=243;break a}g=(c[w+24>>2]|0)==(t|0)?227:226;break a}while(0);g=(s|0)==4?226:158;break a}else m=143}}while(0);if((m|0)==142){g=c[g>>2]|0;m=143}if((m|0)==143?g|0:0)break;k=c[w>>2]|0;m=c[c[y>>2]>>2]|0;i=c[x>>2]|0;g=c[3922]|0;do if((g|0)==-1){g=Df(288818)|0;c[3922]=0;if(g|0){c[L>>2]=15688;QE(g,0,L);j=c[3922]|0;break}h=c[4567]|0;if((h|0)!=-1){J=(h&4|0)==0;g=J?0:1;K=(h&8|0)==0;g=K?g:g|2;L=(h&16|0)==0;g=L?g:g|4;M=(h&32|0)==0;g=M?g:g|8;if(((J^1|K^1)^1^1|L^1)^1^1|M^1)c[3922]=g;if(!(h&2)){j=g;break}}else{c[4567]=0;c[M>>2]=0;if(!(c[M>>2]|0)){j=0;break}c[4567]=2;g=0}j=g|16;c[3922]=j}else j=g;while(0);i=i&883;h=0;g=32;while(1){if((((c[15692+(h*20|0)>>2]|0)==(k|0)?(c[15692+(h*20|0)+4>>2]|0)==(m|0):0)?(c[15692+(h*20|0)+8>>2]&i|0)==(i|0):0)?(M=c[15692+(h*20|0)+12>>2]|0,(M&j|0)==(M|0)):0)break a;g=h+1|0;if((g|0)==126)break;else{h=g;g=c[15692+(g*20|0)+16>>2]|0}}M=c[c[N>>2]>>2]|0;N=c[c[y>>2]>>2]|0;if((((M|0)==0|(M&-268435456|0)==268435456?((M>>>24&15)+-1|0)>>>0>=3:0)?(N|0)==0|(N&-268435456|0)==268435456:0)?((N>>>24&15)+-1|0)>>>0>=3:0){c[z+12>>2]=228;P=0;l=Q;return P|0}c[z+12>>2]=0;if(z|0){g=c[z>>2]|0;if(g|0?(M=g+56|0,N=c[M>>2]|0,c[M>>2]=N+-1,(N|0)<2):0)ME(g);c[z>>2]=0;c[z+84>>2]=0;c[z+80>>2]=0;N=z+64|0;fN(c[N>>2]|0);c[N>>2]=0}mE(288843,P);P=-1;l=Q;return P|0}while(0);c[z+12>>2]=g;P=0;l=Q;return P|0}function LE(f,g){f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;s=l;l=l+16|0;i=s;h=c[f>>2]|0;if(!(h&2)){l=s;return}c[f>>2]=h&-3;r=f+52|0;a:do if((g|0)!=0&(h&1|0)==0){g=c[r>>2]|0;if(c[g+68>>2]&8192|0){g=f+12|0;q=eN(O(c[f+16>>2]|0,c[g>>2]|0)|0)|0;c[f+20>>2]=q;if(q|0){tI(f,0,c[(c[r>>2]|0)+72>>2]|0)|0;c[i+4>>2]=0;c[i>>2]=0;c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[g>>2];nI(f,i,f,i)|0;break}c[f>>2]=c[f>>2]|2;l=s;return}q=c[f+4>>2]|0;k=c[g+12>>2]|0;m=c[f+8>>2]|0;j=(a[k>>0]|0)==2;o=j?12:11;p=j?13:11;g=f+12|0;n=f+16|0;h=eN(O(c[n>>2]|0,c[g>>2]|0)|0)|0;i=f+20|0;c[i>>2]=h;if(!h){c[f>>2]=c[f>>2]|2;l=s;return}RQ(h|0,0,O(c[n>>2]|0,c[g>>2]|0)|0)|0;h=c[i>>2]|0;g=k+28|0;if(j)f=h;else{f=h;while(1){h=0;while(1){t=b[g+2>>1]|0;i=t&65535;j=g+4|0;g=(e[g>>1]|0)+h|0;if(!(t<<16>>16))if(!g)break a;else{h=g;g=j}else{h=g+i|0;g=j+(lg[o&31](f+(g<<2)|0,j,i,k,q)|0)|0}if((h|0)>=(m|0)){h=0;break}}do{i=(e[g>>1]|0)+h|0;t=b[g+2>>1]|0;j=t&65535;g=g+4|0;if(!(t<<16>>16))h=i;else{h=i+j|0;g=g+(lg[p&31](f+(i<<2)|0,g,j,k,q)|0)|0}}while((h|0)<(m|0));f=f+(c[n>>2]>>2<<2)|0}}while(1){h=0;do{t=a[g+1>>0]|0;i=t&255;j=g+2|0;g=(d[g>>0]|0)+h|0;if(!(t<<24>>24))if(!g)break a;else{h=g;g=j}else{h=g+i|0;g=j+(lg[o&31](f+(g<<2)|0,j,i,k,q)|0)|0}}while((h|0)<(m|0));h=0;g=g+(g&2)|0;do{i=(e[g>>1]|0)+h|0;t=b[g+2>>1]|0;j=t&65535;g=g+4|0;if(!(t<<16>>16))h=i;else{h=i+j|0;g=g+(lg[p&31](f+(i<<2)|0,g,j,k,q)|0)|0}}while((h|0)<(m|0));f=f+(c[n>>2]>>2<<2)|0}}while(0);t=c[r>>2]|0;q=t+68|0;c[q>>2]=c[q>>2]&-24577;fN(c[t+12>>2]|0);c[(c[r>>2]|0)+12>>2]=0;l=s;return}function ME(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;if(!a)return;b=c[a>>2]|0;if(b&4|0)return;d=a+56|0;f=c[d>>2]|0;c[d>>2]=f+-1;if((f|0)>1)return;f=a+28|0;d=c[f>>2]|0;if((d|0)>0){while(1){b=d+-1|0;c[f>>2]=b;if((d|0)==1?(e=c[a>>2]|0,(e&2|0)!=0):0){c[a>>2]=e&-3;PE(a)|0;b=c[f>>2]|0}if((b|0)>0)d=b;else break}b=c[a>>2]|0}if(b&2|0){c[a>>2]=b&-3;f=a+52|0;e=c[f>>2]|0;d=e+68|0;c[d>>2]=c[d>>2]&-24577;fN(c[e+12>>2]|0);c[(c[f>>2]|0)+12>>2]=0}f=a+4|0;b=c[f>>2]|0;if(!b)b=a+52|0;else{b=b+4|0;d=c[b>>2]|0;if(d|0){g=d+12|0;e=c[g>>2]|0;c[g>>2]=e+-1;if((e|0)<=1){fN(c[d+4>>2]|0);fN(d)}c[b>>2]=0}b=a+52|0;d=c[b>>2]|0;if(d|0){e=c[d>>2]|0;if(e|0?(h=e+56|0,g=c[h>>2]|0,c[h>>2]=g+-1,(g|0)<2):0)ME(e);c[d>>2]=0;c[d+84>>2]=0;c[d+80>>2]=0;h=d+64|0;fN(c[h>>2]|0);c[h>>2]=0}sI(c[f>>2]|0);c[f>>2]=0}d=c[b>>2]|0;if(d|0){e=c[d>>2]|0;if(e|0?(g=e+56|0,h=c[g>>2]|0,c[g>>2]=h+-1,(h|0)<2):0)ME(e);c[d>>2]=0;c[d+84>>2]=0;c[d+80>>2]=0;fN(c[d+64>>2]|0);fN(d);c[b>>2]=0}if(!(c[a>>2]&1))fN(c[a+20>>2]|0);fN(a);return}function NE(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;u=l;l=l+16|0;h=u;if(f|0){g=c[b>>2]|0;do if((g|0)<=(c[e>>2]|0)){if((b|0)!=(e|0)?KN(c[b+4>>2]|0,c[e+4>>2]|0,g<<2)|0:0)break;c[f>>2]=1;e=0;l=u;return e|0}while(0);c[f>>2]=0}f=eN(c[b>>2]|0)|0;if(!f){mE(294869,h);e=0;l=u;return e|0}if((c[b>>2]|0)<=0){e=f;l=u;return e|0}s=b+4|0;t=e+4|0;r=0;do{g=c[s>>2]|0;m=c[e>>2]|0;a:do if((m|0)>0){n=c[t>>2]|0;o=d[g+(r<<2)>>0]|0;p=d[g+(r<<2)+1>>0]|0;q=d[g+(r<<2)+2>>0]|0;k=d[g+(r<<2)+3>>0]|0;j=0;h=-1;g=0;do{w=(d[n+(j<<2)>>0]|0)-o|0;x=(d[n+(j<<2)+1>>0]|0)-p|0;v=(d[n+(j<<2)+2>>0]|0)-q|0;i=(d[n+(j<<2)+3>>0]|0)-k|0;i=(O(x,x)|0)+(O(w,w)|0)+(O(v,v)|0)+(O(i,i)|0)|0;if(i>>>0<h>>>0){g=j&255;if(!i)break a;else h=i}j=j+1|0}while((j|0)<(m|0))}else g=0;while(0);a[f+r>>0]=g;r=r+1|0}while((r|0)<(c[b>>2]|0));l=u;return f|0}function OE(a,b,e,f){a=a|0;b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;if(!(c[e>>2]&2))i=0;else{h=e+28|0;g=c[h>>2]|0;if(!g){LE(e,1);c[e>>2]=c[e>>2]|2;g=c[h>>2]|0}c[h>>2]=g+1;i=1}if(!(c[a>>2]&2))g=0;else{h=a+28|0;g=c[h>>2]|0;if(!g){LE(a,1);c[a>>2]=c[a>>2]|2;g=c[h>>2]|0}c[h>>2]=g+1;g=1}if((b|0?(j=c[b+8>>2]|0,(j|0)>=1):0)?(k=c[b+12>>2]|0,(k|0)>=1):0){o=c[a+52>>2]|0;h=o+16|0;q=c[a+16>>2]|0;r=(c[a+20>>2]|0)+(O(c[b+4>>2]&65535,q)|0)|0;p=d[(c[o+56>>2]|0)+9>>0]|0;c[h>>2]=r+(O(p,c[b>>2]&65535)|0);c[o+20>>2]=j;c[o+24>>2]=k;c[o+28>>2]=q;c[o+32>>2]=q-(O(j,p)|0);b=c[e+16>>2]|0;j=(c[e+20>>2]|0)+(O(c[f+4>>2]&65535,b)|0)|0;k=d[(c[o+60>>2]|0)+9>>0]|0;c[o+36>>2]=j+(O(k,c[f>>2]&65535)|0);j=c[f+8>>2]|0;c[o+40>>2]=j;c[o+44>>2]=c[f+12>>2];c[o+48>>2]=b;c[o+52>>2]=b-(O(j,k)|0);vg[c[o+12>>2]&511](h)}if(((i|0?(l=e+28|0,m=c[l>>2]|0,m|0):0)?(c[l>>2]=m+-1,(m|0)<=1):0)?(n=c[e>>2]|0,n&2|0):0){c[e>>2]=n&-3;PE(e)|0}if(!g)return 0;g=a+28|0;h=c[g>>2]|0;if(!h)return 0;c[g>>2]=h+-1;if((h|0)>1)return 0;g=c[a>>2]|0;if(!(g&2))return 0;c[a>>2]=g&-3;PE(a)|0;return 0}function PE(e){e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0;F=l;l=l+16|0;n=F+8|0;k=F;if(c[e>>2]&2|0)LE(e,1);o=e+4|0;i=c[o>>2]|0;j=a[i+8>>0]|0;if((j&255)<8){E=-1;l=F;return E|0}D=e+20|0;if(!(c[D>>2]|0)){E=-1;l=F;return E|0}E=e+52|0;g=c[E>>2]|0;h=c[g+68>>2]|0;if(!((h&272|0)!=0&(h&1|0)==0)){E=-1;l=F;return E|0}do if(!(h&2))if(!(h&608)){f=c[i+24>>2]|0;break}else{E=-1;l=F;return E|0}else{f=c[i+24>>2]|0;if(h&608|f){E=-1;l=F;return E|0}}while(0);if((h&16|0)==0|(f|0)==0){if(!(c[g+4>>2]|0)){E=-1;l=F;return E|0}g=a[i+9>>0]|0;A=g&255;switch(g<<24>>24){case 1:{f=(O((c[e+12>>2]|0)*3|0,((c[e+8>>2]|0)/2|0)+1|0)|0)+2|0;break}case 3:case 2:{f=c[e+8>>2]|0;f=(O((O(f,A)|0)+2+(((f|0)/255|0)<<1)|0,c[e+12>>2]|0)|0)+2|0;break}case 4:{f=c[e+8>>2]|0;f=(O((((f|0)/65535|0)+f<<2)+4|0,c[e+12>>2]|0)|0)+4|0;break}default:f=0}B=eN(f)|0;if(!B){mE(294869,k);E=-1;l=F;return E|0}z=g<<24>>24==4;y=z?65535:255;r=~c[(c[o>>2]|0)+24>>2];s=c[(c[E>>2]|0)+72>>2]&r;t=c[26960+(A+-1<<2)>>2]|0;u=c[e+8>>2]|0;v=c[e+12>>2]|0;if((v|0)>0){w=y&65535;x=e+16|0;f=B;p=0;q=c[D>>2]|0;g=B;while(1){o=0;j=0;while(1){a:do if((j|0)<(u|0)){h=j;do{C=q+(O(h,A)|0)|0;if(((gg[t&511](C)|0)&r|0)!=(s|0))break a;h=h+1|0}while((h|0)<(u|0))}else h=j;while(0);b:do if((h|0)<(u|0)){i=h;while(1){C=q+(O(i,A)|0)|0;if(((gg[t&511](C)|0)&r|0)==(s|0)){n=1;break b}i=i+1|0;if((i|0)>=(u|0)){n=0;break}}}else{i=h;n=0}while(0);j=h-j|0;o=(j|0)==(u|0)?1:o;k=i-h|0;if((j|0)>(y|0))if(z)do{b[f>>1]=w;b[f+2>>1]=0;f=f+4|0;j=j-y|0}while((j|0)>(y|0));else do{a[f>>0]=-1;a[f+1>>0]=0;f=f+2|0;j=j-y|0}while((j|0)>(y|0));m=(k|0)<(y|0)?k:y;if(z){b[f>>1]=j;b[f+2>>1]=m;j=4}else{a[f>>0]=j;a[f+1>>0]=m;j=2}C=f+j|0;f=O(m,A)|0;PQ(C|0,q+(O(h,A)|0)|0,f|0)|0;f=C+f|0;k=k-m|0;h=m+h|0;if(k)if(z)while(1){j=(k|0)<(y|0)?k:y;b[f>>1]=0;b[f+2>>1]=j;C=f+4|0;f=O(j,A)|0;PQ(C|0,q+(O(h,A)|0)|0,f|0)|0;f=C+f|0;k=k-j|0;if(!k)break;else h=j+h|0}else while(1){j=(k|0)<(y|0)?k:y;a[f>>0]=0;a[f+1>>0]=j;C=f+2|0;f=O(j,A)|0;PQ(C|0,q+(O(h,A)|0)|0,f|0)|0;f=C+f|0;k=k-j|0;if(!k)break;else h=j+h|0}g=(o|0)==0?f:g;if(!n)break;else j=i}p=p+1|0;if((p|0)==(v|0))break;else q=q+(c[x>>2]|0)|0}}else g=B;if(z){b[g>>1]=0;b[g+2>>1]=0;f=4}else{a[g>>0]=0;a[g+1>>0]=0;f=2}if(!(c[e>>2]&1)){fN(c[D>>2]|0);c[D>>2]=0}f=gN(B,g+f-B|0)|0;f=(f|0)==0?B:f;g=8192;h=11}else{f=c[g>>2]|0;if(!f){E=-1;l=F;return E|0}B=c[f+4>>2]|0;if(j<<24>>24!=32){E=-1;l=F;return E|0}j=B+12|0;f=c[j>>2]|0;k=B+16|0;g=c[k>>2]|0;m=B+20|0;h=c[m>>2]|0;i=g|f|h;C=B+9|0;c:do switch(a[C>>0]|0){case 2:{if((i|0)<65535){switch(i|0){case 32767:break;default:{E=-1;l=F;return E|0}}if((f|0)==992|(g|0)==992|(h|0)==992)f=15;else{E=-1;l=F;return E|0}}else{switch(i|0){case 65535:break;default:{E=-1;l=F;return E|0}}if((f|0)==2016|(g|0)==2016|(h|0)==2016)f=14;else{E=-1;l=F;return E|0}}g=(O(((c[e+8>>2]|0)*6|0)+8|0,c[e+12>>2]|0)|0)+2|0;y=f;z=16;break}case 4:if((i|0)==16777215){g=O(c[e+12>>2]<<3,(c[e+8>>2]|0)+1|0)|0|4;y=17;z=17;break c}else{E=-1;l=F;return E|0}default:{E=-1;l=F;return E|0}}while(0);A=eN(g+28|0)|0;if(!A){mE(294869,n);E=-1;l=F;return E|0}f=a[C>>0]|0;a[A>>0]=f;c[A+4>>2]=c[j>>2];c[A+8>>2]=c[k>>2];c[A+12>>2]=c[m>>2];c[A+16>>2]=c[B+24>>2];a[A+20>>0]=a[B+28>>0]|0;a[A+21>>0]=a[B+29>>0]|0;a[A+22>>0]=a[B+30>>0]|0;a[A+23>>0]=a[B+31>>0]|0;a[A+24>>0]=a[B+32>>0]|0;a[A+25>>0]=a[B+33>>0]|0;a[A+26>>0]=a[B+34>>0]|0;a[A+27>>0]=a[B+35>>0]|0;h=A+28|0;w=c[e+12>>2]|0;x=c[e+8>>2]|0;v=c[o>>2]|0;if((w|0)>0){s=v+24|0;t=v+35|0;u=e+16|0;g=h;q=c[D>>2]|0;r=0;f=h;while(1){o=0;m=0;while(1){d:do if((m|0)<(x|0)){i=c[s>>2]|0;j=d[t>>0]|0;h=m;do{if(((c[q+(h<<2)>>2]&i)>>>j|0)==255)break d;h=h+1|0}while((h|0)<(x|0))}else h=m;while(0);e:do if((h|0)<(x|0)){j=c[s>>2]|0;k=d[t>>0]|0;i=h;while(1){if(((c[q+(i<<2)>>2]&j)>>>k|0)!=255){p=1;break e}i=i+1|0;if((i|0)>=(x|0)){p=0;break}}}else{i=h;p=0}while(0);k=h-m|0;o=(k|0)==(x|0)?1:o;n=i-h|0;m=a[C>>0]|0;j=m<<24>>24==4;if((k|0)>255)do{if(j){b[f>>1]=255;b[f+2>>1]=0;j=4}else{a[f>>0]=-1;a[f+1>>0]=0;j=2;m=a[C>>0]|0}f=f+j|0;k=k+-255|0;j=m<<24>>24==4}while((k|0)>255);m=(n|0)<255?n:255;if(j){b[f>>1]=k;b[f+2>>1]=m;j=4}else{a[f>>0]=k;a[f+1>>0]=m;j=2}f=f+j|0;f=f+(lg[z&31](f,q+(h<<2)|0,m,v,B)|0)|0;j=n-m|0;if(j){m=m+h|0;while(1){k=(j|0)<255?j:255;if((a[C>>0]|0)==4){b[f>>1]=0;b[f+2>>1]=k;h=4}else{a[f>>0]=0;a[f+1>>0]=k;h=2}f=f+h|0;f=f+(lg[z&31](f,q+(m<<2)|0,k,v,B)|0)|0;j=j-k|0;if(!j)break;else m=k+m|0}}if(!p)break;else m=i}m=0;f=f+(f&2)|0;while(1){f:do if((m|0)<(x|0)){i=c[s>>2]|0;j=d[t>>0]|0;h=m;do{if((((c[q+(h<<2)>>2]&i)>>>j)+-1|0)>>>0<=253)break f;h=h+1|0}while((h|0)<(x|0))}else h=m;while(0);g:do if((h|0)<(x|0)){j=c[s>>2]|0;k=d[t>>0]|0;i=h;while(1){if((((c[q+(i<<2)>>2]&j)>>>k)+-1|0)>>>0>=254){n=1;break g}i=i+1|0;if((i|0)>=(x|0)){n=0;break}}}else{i=h;n=0}while(0);j=h-m|0;o=(j|0)==(x|0)&o;m=i-h|0;if((j|0)>65535)do{b[f>>1]=-1;b[f+2>>1]=0;f=f+4|0;j=j+-65535|0}while((j|0)>65535);k=(m|0)<65535?m:65535;b[f>>1]=j;b[f+2>>1]=k;f=f+4|0;f=f+(lg[y&31](f,q+(h<<2)|0,k,v,B)|0)|0;j=m-k|0;if(j){k=k+h|0;while(1){h=(j|0)<65535?j:65535;b[f>>1]=0;b[f+2>>1]=h;f=f+4|0;f=f+(lg[y&31](f,q+(k<<2)|0,h,v,B)|0)|0;j=j-h|0;if(!j)break;else k=h+k|0}}g=(o|0)==0?f:g;if(!n)break;else m=i}r=r+1|0;if((r|0)==(w|0))break;else q=q+(c[u>>2]>>2<<2)|0}f=a[C>>0]|0}else g=h;if(f<<24>>24==4){b[g>>1]=0;b[g+2>>1]=0;f=4}else{a[g>>0]=0;a[g+1>>0]=0;f=2}if(!(c[e>>2]&1)){fN(c[D>>2]|0);c[D>>2]=0}f=gN(A,g+f-A|0)|0;f=(f|0)==0?A:f;g=16384;h=12}E=c[E>>2]|0;c[E+12>>2]=f;c[E+8>>2]=h;E=E+68|0;c[E>>2]=c[E>>2]|g;c[e>>2]=c[e>>2]|2;E=0;l=F;return E|0}function QE(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;b=l;l=l+16|0;e=b;c[e>>2]=d;BP(a,288840,e);l=b;return}function RE(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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,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;g=c[f+52>>2]|0;Y=d[f+60>>0]|0;qa=d[f+61>>0]|0;E=d[f+62>>0]|0;F=d[f+63>>0]|0;i=c[f+40>>2]|0;h=c[f+44>>2]|0;G=a[i+9>>0]|0;H=G&255;I=a[h+9>>0]|0;J=I&255;K=i+24|0;L=~c[K>>2];M=c[f+56>>2]|0;N=f+28|0;pa=c[N>>2]|0;P=(c[f+8>>2]<<16|0)/(pa|0)|0;Q=f+24|0;j=c[Q>>2]|0;R=(c[f+4>>2]<<16|0)/(j|0)|0;c[N>>2]=pa+-1;if(!pa)return;S=f+20|0;T=f+32|0;U=i+28|0;V=i+12|0;W=i+32|0;X=i+29|0;Z=i+16|0;_=i+33|0;$=i+30|0;aa=i+20|0;ba=i+34|0;ca=(g&256|0)==0;da=h+24|0;ea=h+28|0;fa=h+12|0;ga=h+32|0;ha=h+29|0;ia=h+16|0;ja=h+33|0;ka=h+30|0;la=h+20|0;ma=h+34|0;na=(g&1|0)==0;oa=(g&2|0)==0;pa=(g&48|0)!=0;D=g>>>4&255;C=h+31|0;z=h+35|0;A=G<<24>>24==3;B=i+31|0;x=i+35|0;y=f+12|0;h=0;i=0;g=c[S>>2]|0;while(1){if((i|0)>65535){w=i+-65536|0;i=w>>>16;h=h+1+i|0;i=w-(i<<16)|0}if(j|0){k=0;l=-1;m=65536;while(1){j=j+-1|0;if((m|0)>65535){v=m+-65536|0;m=v>>>16;l=l+1+m|0;w=(c[f>>2]|0)+(O(c[y>>2]|0,h)|0)+(O(l,H)|0)|0;m=v-(m<<16)|0}else w=k;k=c[K>>2]|0;a:do if(!k)switch(G<<24>>24){case 1:{o=d[w>>0]|0;p=-1;q=o;k=a[(c[18232+((d[U>>0]|0)<<2)>>2]|0)+((c[V>>2]&o)>>>(d[W>>0]|0))>>0]|0;n=a[(c[18232+((d[X>>0]|0)<<2)>>2]|0)+((c[Z>>2]&o)>>>(d[_>>0]|0))>>0]|0;o=a[(c[18232+((d[$>>0]|0)<<2)>>2]|0)+((c[aa>>2]&o)>>>(d[ba>>0]|0))>>0]|0;break a}case 2:{o=e[w>>1]|0;p=-1;q=o;k=a[(c[18232+((d[U>>0]|0)<<2)>>2]|0)+((c[V>>2]&o)>>>(d[W>>0]|0))>>0]|0;n=a[(c[18232+((d[X>>0]|0)<<2)>>2]|0)+((c[Z>>2]&o)>>>(d[_>>0]|0))>>0]|0;o=a[(c[18232+((d[$>>0]|0)<<2)>>2]|0)+((c[aa>>2]&o)>>>(d[ba>>0]|0))>>0]|0;break a}case 3:{p=-1;q=0;k=a[w+((d[W>>0]|0)>>>3&255)>>0]|0;n=a[w+((d[_>>0]|0)>>>3&255)>>0]|0;o=a[w+((d[ba>>0]|0)>>>3&255)>>0]|0;break a}case 4:{o=c[w>>2]|0;p=-1;q=o;k=a[(c[18232+((d[U>>0]|0)<<2)>>2]|0)+((c[V>>2]&o)>>>(d[W>>0]|0))>>0]|0;n=a[(c[18232+((d[X>>0]|0)<<2)>>2]|0)+((c[Z>>2]&o)>>>(d[_>>0]|0))>>0]|0;o=a[(c[18232+((d[$>>0]|0)<<2)>>2]|0)+((c[aa>>2]&o)>>>(d[ba>>0]|0))>>0]|0;break a}default:{p=-1;q=0;k=0;n=0;o=0;break a}}else switch(G<<24>>24){case 1:{o=d[w>>0]|0;p=a[(c[18232+((d[B>>0]|0)<<2)>>2]|0)+((o&k)>>>(d[x>>0]|0))>>0]|0;q=o;k=a[(c[18232+((d[U>>0]|0)<<2)>>2]|0)+((c[V>>2]&o)>>>(d[W>>0]|0))>>0]|0;n=a[(c[18232+((d[X>>0]|0)<<2)>>2]|0)+((c[Z>>2]&o)>>>(d[_>>0]|0))>>0]|0;o=a[(c[18232+((d[$>>0]|0)<<2)>>2]|0)+((c[aa>>2]&o)>>>(d[ba>>0]|0))>>0]|0;break a}case 2:{o=e[w>>1]|0;p=a[(c[18232+((d[B>>0]|0)<<2)>>2]|0)+((o&k)>>>(d[x>>0]|0))>>0]|0;q=o;k=a[(c[18232+((d[U>>0]|0)<<2)>>2]|0)+((c[V>>2]&o)>>>(d[W>>0]|0))>>0]|0;n=a[(c[18232+((d[X>>0]|0)<<2)>>2]|0)+((c[Z>>2]&o)>>>(d[_>>0]|0))>>0]|0;o=a[(c[18232+((d[$>>0]|0)<<2)>>2]|0)+((c[aa>>2]&o)>>>(d[ba>>0]|0))>>0]|0;break a}case 3:{p=-1;q=0;k=a[w+((d[W>>0]|0)>>>3&255)>>0]|0;n=a[w+((d[_>>0]|0)>>>3&255)>>0]|0;o=a[w+((d[ba>>0]|0)>>>3&255)>>0]|0;break a}case 4:{o=c[w>>2]|0;p=a[(c[18232+((d[B>>0]|0)<<2)>>2]|0)+((o&k)>>>(d[x>>0]|0))>>0]|0;q=o;k=a[(c[18232+((d[U>>0]|0)<<2)>>2]|0)+((c[V>>2]&o)>>>(d[W>>0]|0))>>0]|0;n=a[(c[18232+((d[X>>0]|0)<<2)>>2]|0)+((c[Z>>2]&o)>>>(d[_>>0]|0))>>0]|0;o=a[(c[18232+((d[$>>0]|0)<<2)>>2]|0)+((c[aa>>2]&o)>>>(d[ba>>0]|0))>>0]|0;break a}default:{p=0;q=0;k=0;n=0;o=0;break a}}while(0);r=k&255;s=n&255;t=o&255;u=p&255;if(!ca){if(A)k=s<<(d[_>>0]|0)|r<<(d[W>>0]|0)|t<<(d[ba>>0]|0);else k=q;if((k^M)&L|0)ra=24}else ra=24;b:do if((ra|0)==24){ra=0;k=c[da>>2]|0;v=(k|0)==0;c:do if(v)switch(I<<24>>24){case 1:{p=d[g>>0]|0;q=-1;k=a[(c[18232+((d[ea>>0]|0)<<2)>>2]|0)+((c[fa>>2]&p)>>>(d[ga>>0]|0))>>0]|0;n=a[(c[18232+((d[ha>>0]|0)<<2)>>2]|0)+((c[ia>>2]&p)>>>(d[ja>>0]|0))>>0]|0;p=a[(c[18232+((d[ka>>0]|0)<<2)>>2]|0)+((c[la>>2]&p)>>>(d[ma>>0]|0))>>0]|0;break c}case 2:{p=e[g>>1]|0;q=-1;k=a[(c[18232+((d[ea>>0]|0)<<2)>>2]|0)+((c[fa>>2]&p)>>>(d[ga>>0]|0))>>0]|0;n=a[(c[18232+((d[ha>>0]|0)<<2)>>2]|0)+((c[ia>>2]&p)>>>(d[ja>>0]|0))>>0]|0;p=a[(c[18232+((d[ka>>0]|0)<<2)>>2]|0)+((c[la>>2]&p)>>>(d[ma>>0]|0))>>0]|0;break c}case 3:{q=-1;k=a[g+((d[ga>>0]|0)>>>3&255)>>0]|0;n=a[g+((d[ja>>0]|0)>>>3&255)>>0]|0;p=a[g+((d[ma>>0]|0)>>>3&255)>>0]|0;break c}case 4:{p=c[g>>2]|0;q=-1;k=a[(c[18232+((d[ea>>0]|0)<<2)>>2]|0)+((c[fa>>2]&p)>>>(d[ga>>0]|0))>>0]|0;n=a[(c[18232+((d[ha>>0]|0)<<2)>>2]|0)+((c[ia>>2]&p)>>>(d[ja>>0]|0))>>0]|0;p=a[(c[18232+((d[ka>>0]|0)<<2)>>2]|0)+((c[la>>2]&p)>>>(d[ma>>0]|0))>>0]|0;break c}default:{q=-1;k=0;n=0;p=0;break c}}else switch(I<<24>>24){case 1:{p=d[g>>0]|0;q=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((p&k)>>>(d[z>>0]|0))>>0]|0;k=a[(c[18232+((d[ea>>0]|0)<<2)>>2]|0)+((c[fa>>2]&p)>>>(d[ga>>0]|0))>>0]|0;n=a[(c[18232+((d[ha>>0]|0)<<2)>>2]|0)+((c[ia>>2]&p)>>>(d[ja>>0]|0))>>0]|0;p=a[(c[18232+((d[ka>>0]|0)<<2)>>2]|0)+((c[la>>2]&p)>>>(d[ma>>0]|0))>>0]|0;break c}case 2:{p=e[g>>1]|0;q=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((p&k)>>>(d[z>>0]|0))>>0]|0;k=a[(c[18232+((d[ea>>0]|0)<<2)>>2]|0)+((c[fa>>2]&p)>>>(d[ga>>0]|0))>>0]|0;n=a[(c[18232+((d[ha>>0]|0)<<2)>>2]|0)+((c[ia>>2]&p)>>>(d[ja>>0]|0))>>0]|0;p=a[(c[18232+((d[ka>>0]|0)<<2)>>2]|0)+((c[la>>2]&p)>>>(d[ma>>0]|0))>>0]|0;break c}case 3:{q=-1;k=a[g+((d[ga>>0]|0)>>>3&255)>>0]|0;n=a[g+((d[ja>>0]|0)>>>3&255)>>0]|0;p=a[g+((d[ma>>0]|0)>>>3&255)>>0]|0;break c}case 4:{p=c[g>>2]|0;q=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((p&k)>>>(d[z>>0]|0))>>0]|0;k=a[(c[18232+((d[ea>>0]|0)<<2)>>2]|0)+((c[fa>>2]&p)>>>(d[ga>>0]|0))>>0]|0;n=a[(c[18232+((d[ha>>0]|0)<<2)>>2]|0)+((c[ia>>2]&p)>>>(d[ja>>0]|0))>>0]|0;p=a[(c[18232+((d[ka>>0]|0)<<2)>>2]|0)+((c[la>>2]&p)>>>(d[ma>>0]|0))>>0]|0;break c}default:{q=0;k=0;n=0;p=0;break c}}while(0);o=k&255;n=n&255;k=p&255;p=q&255;if(!na){r=((O(r,Y)|0)>>>0)/255|0;s=((O(s,qa)|0)>>>0)/255|0;t=((O(t,E)|0)>>>0)/255|0}q=((O(u,F)|0)>>>0)/255|0;q=oa?u:q;if(pa&q>>>0<255){r=((O(r,q)|0)>>>0)/255|0;s=((O(s,q)|0)>>>0)/255|0;t=((O(t,q)|0)>>>0)/255|0}switch(D&7){case 0:{p=q;o=r;n=s;k=t;break}case 1:{u=255-q|0;p=(((O(p,u)|0)>>>0)/255|0)+q|0;o=r+(((O(o,u)|0)>>>0)/255|0)|0;n=s+(((O(n,u)|0)>>>0)/255|0)|0;k=t+(((O(k,u)|0)>>>0)/255|0)|0;break}case 2:{o=r+o|0;n=s+n|0;k=t+k|0;o=o>>>0<255?o:255;n=n>>>0<255?n:255;k=k>>>0<255?k:255;break}case 4:{o=((O(r,o)|0)>>>0)/255|0;n=((O(s,n)|0)>>>0)/255|0;k=((O(t,k)|0)>>>0)/255|0;break}default:{}}if(v)switch(I<<24>>24){case 1:{a[g>>0]=o>>>(d[ea>>0]|0)<<(d[ga>>0]|0)|n>>>(d[ha>>0]|0)<<(d[ja>>0]|0)|k>>>(d[ka>>0]|0)<<(d[ma>>0]|0);break b}case 2:{b[g>>1]=o>>>(d[ea>>0]|0)<<(d[ga>>0]|0)|n>>>(d[ha>>0]|0)<<(d[ja>>0]|0)|k>>>(d[ka>>0]|0)<<(d[ma>>0]|0);break b}case 3:{a[g+((d[ga>>0]|0)>>>3&255)>>0]=o;a[g+((d[ja>>0]|0)>>>3&255)>>0]=n;a[g+((d[ma>>0]|0)>>>3&255)>>0]=k;break b}case 4:{c[g>>2]=o>>>(d[ea>>0]|0)<<(d[ga>>0]|0)|n>>>(d[ha>>0]|0)<<(d[ja>>0]|0)|k>>>(d[ka>>0]|0)<<(d[ma>>0]|0);break b}default:break b}else switch(I<<24>>24){case 1:{a[g>>0]=n>>>(d[ha>>0]|0)<<(d[ja>>0]|0)|o>>>(d[ea>>0]|0)<<(d[ga>>0]|0)|k>>>(d[ka>>0]|0)<<(d[ma>>0]|0)|p>>>(d[C>>0]|0)<<(d[z>>0]|0);break b}case 2:{b[g>>1]=n>>>(d[ha>>0]|0)<<(d[ja>>0]|0)|o>>>(d[ea>>0]|0)<<(d[ga>>0]|0)|k>>>(d[ka>>0]|0)<<(d[ma>>0]|0)|p>>>(d[C>>0]|0)<<(d[z>>0]|0);break b}case 3:{a[g+((d[ga>>0]|0)>>>3&255)>>0]=o;a[g+((d[ja>>0]|0)>>>3&255)>>0]=n;a[g+((d[ma>>0]|0)>>>3&255)>>0]=k;break b}case 4:{c[g>>2]=n>>>(d[ha>>0]|0)<<(d[ja>>0]|0)|o>>>(d[ea>>0]|0)<<(d[ga>>0]|0)|k>>>(d[ka>>0]|0)<<(d[ma>>0]|0)|p>>>(d[C>>0]|0)<<(d[z>>0]|0);break b}default:break b}}while(0);if(!j)break;else{g=g+J|0;k=w;m=m+R|0}}}g=(c[S>>2]|0)+(c[T>>2]|0)|0;c[S>>2]=g;w=c[N>>2]|0;c[N>>2]=w+-1;if(!w)break;i=i+P|0;j=c[Q>>2]|0}return}function SE(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=O(d[(c[a+44>>2]|0)+9>>0]|0,c[a+24>>2]|0)|0;f=c[a+28>>2]|0;e=c[a>>2]|0;b=c[a+20>>2]|0;k=c[a+12>>2]|0;j=c[a+32>>2]|0;i=e>>>0<b>>>0;if((i?b:e)>>>0>=((i?e:b)+(O(i?k:j,f)|0)|0)>>>0){if(!f)return;else a=f;while(1){a=a+-1|0;PQ(b|0,e|0,l|0)|0;if(!a)break;else{b=b+j|0;e=e+k|0}}return}if(b>>>0<e>>>0){if(!f)return;else a=f;while(1){a=a+-1|0;QQ(b|0,e|0,l|0)|0;if(!a)break;else{e=e+k|0;b=b+j|0}}return}g=f+-1|0;if(!f)return;h=0-k|0;i=0-j|0;a=b+(O(j,g)|0)|0;b=e+(O(k,g)|0)|0;while(1){f=f+-1|0;QQ(a|0,b|0,l|0)|0;if(!f)break;else{a=a+i|0;b=b+h|0}}return}function TE(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=a+28|0;o=c[p>>2]|0;q=(c[a+8>>2]<<16|0)/(o|0)|0;k=a+24|0;b=c[k>>2]|0;l=(c[a+4>>2]<<16|0)/(b|0)|0;d=o+-1|0;c[p>>2]=d;if(!o)return;m=a+20|0;n=a+32|0;o=a+12|0;e=c[m>>2]|0;f=0;g=0;j=e;while(1){if((g|0)>65535){g=g+-65536|0;i=g>>>16;h=f+1+i|0;i=g-(i<<16)|0}else{h=f;i=g}if(!b)b=d;else{d=0;f=-1;g=65536;while(1){b=b+-1|0;if((g|0)>65535){r=g+-65536|0;g=r>>>16;f=f+1+g|0;d=(c[a>>2]|0)+(O(c[o>>2]|0,h)|0)+(f<<2)|0;g=r-(g<<16)|0}c[e>>2]=c[d>>2];if(!b)break;else{e=e+4|0;g=g+l|0}}b=c[p>>2]|0}e=j+(c[n>>2]|0)|0;d=b+-1|0;c[p>>2]=d;if(!b)break;f=h;g=i+q|0;b=c[k>>2]|0;j=e}c[m>>2]=e;return}function UE(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;b=c[a+52>>2]|0;o=a+28|0;r=c[o>>2]|0;c[o>>2]=r+-1;if(!r)return;p=a+20|0;q=a+24|0;r=a+12|0;n=a+32|0;m=b&112;d=c[a>>2]|0;e=c[p>>2]|0;l=(m&127)==64;j=d;k=e;while(1){i=c[q>>2]|0;b=i+-1|0;if(i|0)switch(m&127){case 16:{while(1){c[e>>2]=c[d>>2]&16777215;if(!b)break;else{e=e+4|0;d=d+4|0;b=b+-1|0}}break}case 32:{while(1){i=c[d>>2]|0;f=c[e>>2]|0;h=(f>>>16&255)+(i>>>16&255)|0;g=(f>>>8&255)+(i>>>8&255)|0;i=(f&255)+(i&255)|0;c[e>>2]=(g>>>0<255?g:255)<<8|(h>>>0<255?h:255)<<16|(i>>>0<255?i:255);if(!b)break;else{e=e+4|0;d=d+4|0;b=b+-1|0}}break}default:while(1){i=c[d>>2]|0;g=c[e>>2]|0;f=g>>>16&255;h=g>>>8&255;g=g&255;if(l){g=((O(g,i&255)|0)>>>0)/255|0;h=((O(h,i>>>8&255)|0)>>>0)/255|0;f=((O(f,i>>>16&255)|0)>>>0)/255|0}c[e>>2]=h<<8|f<<16|g;if(!b)break;else{e=e+4|0;d=d+4|0;b=b+-1|0}}}d=j+(c[r>>2]|0)|0;b=k+(c[n>>2]|0)|0;k=c[o>>2]|0;c[o>>2]=k+-1;if(!k)break;else{j=d;k=b;e=b}}c[a>>2]=d;c[p>>2]=b;return}function VE(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;b=c[a+52>>2]|0;x=a+28|0;w=c[x>>2]|0;y=(c[a+8>>2]<<16|0)/(w|0)|0;t=a+24|0;d=c[t>>2]|0;u=(c[a+4>>2]<<16|0)/(d|0)|0;c[x>>2]=w+-1;if(!w)return;v=a+20|0;w=a+32|0;s=b&112;q=a+12|0;r=(s&127)==16;b=c[v>>2]|0;e=0;f=0;p=b;while(1){if((e|0)>65535){e=e+-65536|0;o=e>>>16;e=e-(o<<16)|0;f=f+1+o|0}i=d+-1|0;a:do if(d|0){if(r){d=0;g=65536;h=-1;while(1){if((g|0)>65535){o=g+-65536|0;g=o>>>16;h=h+1+g|0;d=(c[a>>2]|0)+(O(c[q>>2]|0,f)|0)+(h<<2)|0;g=o-(g<<16)|0}c[b>>2]=c[d>>2]&16777215;if(!i)break a;else{b=b+4|0;g=g+u|0;i=i+-1|0}}}else{d=0;g=65536;h=-1;o=i}while(1){if((g|0)>65535){n=g+-65536|0;g=n>>>16;h=h+1+g|0;d=(c[a>>2]|0)+(O(c[q>>2]|0,f)|0)+(h<<2)|0;g=n-(g<<16)|0}k=c[d>>2]|0;n=k>>>16&255;m=k>>>8&255;k=k&255;l=c[b>>2]|0;i=l>>>16&255;j=l>>>8&255;l=l&255;switch(s&127){case 64:{l=((O(l,k)|0)>>>0)/255|0;j=((O(j,m)|0)>>>0)/255|0;i=((O(i,n)|0)>>>0)/255|0;break}case 32:{i=i+n|0;j=j+m|0;l=l+k|0;l=l>>>0<255?l:255;j=j>>>0<255?j:255;i=i>>>0<255?i:255;break}default:{}}c[b>>2]=j<<8|i<<16|l;if(!o)break a;else{b=b+4|0;g=g+u|0;o=o+-1|0}}}while(0);b=p+(c[w>>2]|0)|0;p=c[x>>2]|0;c[x>>2]=p+-1;if(!p)break;e=e+y|0;p=b;d=c[t>>2]|0}c[v>>2]=b;return}function WE(a){a=a|0;var b=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;b=c[a+52>>2]|0;k=d[a+60>>0]|0;l=d[a+61>>0]|0;j=d[a+62>>0]|0;m=a+28|0;q=c[m>>2]|0;g=q+-1|0;c[m>>2]=g;if(!q)return;q=a+20|0;n=a+24|0;o=a+12|0;p=a+32|0;f=c[a>>2]|0;e=c[q>>2]|0;if(!(b&1)){h=f;i=e;b=e;e=f;while(1){f=c[n>>2]|0;if(!f)f=g;else{while(1){f=f+-1|0;c[b>>2]=c[e>>2]&16777215;if(!f)break;else{b=b+4|0;e=e+4|0}}f=c[m>>2]|0}e=h+(c[o>>2]|0)|0;b=i+(c[p>>2]|0)|0;g=f+-1|0;c[m>>2]=g;if(!f)break;else{h=e;i=b}}}else{h=f;i=e;b=e;e=f;while(1){f=c[n>>2]|0;if(!f)f=g;else{while(1){f=f+-1|0;g=c[e>>2]|0;c[b>>2]=(((O(g>>>8&255,l)|0)>>>0)/255|0)<<8|(((O(g>>>16&255,k)|0)>>>0)/255|0)<<16|(((O(g&255,j)|0)>>>0)/255|0);if(!f)break;else{b=b+4|0;e=e+4|0}}f=c[m>>2]|0}e=h+(c[o>>2]|0)|0;b=i+(c[p>>2]|0)|0;g=f+-1|0;c[m>>2]=g;if(!f)break;else{h=e;i=b}}}c[a>>2]=e;c[q>>2]=b;return}function XE(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;b=c[a+52>>2]|0;u=d[a+60>>0]|0;v=d[a+61>>0]|0;n=d[a+62>>0]|0;o=a+28|0;t=c[o>>2]|0;p=(c[a+8>>2]<<16|0)/(t|0)|0;q=a+24|0;e=c[q>>2]|0;r=(c[a+4>>2]<<16|0)/(e|0)|0;c[o>>2]=t+-1;if(!t)return;s=a+20|0;t=a+32|0;l=(b&1|0)==0;m=a+12|0;k=c[s>>2]|0;f=0;g=0;h=k;while(1){if((f|0)>65535){f=f+-65536|0;j=f>>>16;f=f-(j<<16)|0;g=g+1+j|0}i=e+-1|0;if(e|0)if(l){j=h;b=0;e=65536;h=-1;while(1){if((e|0)>65535){w=e+-65536|0;e=w>>>16;h=h+1+e|0;b=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(h<<2)|0;e=w-(e<<16)|0}c[j>>2]=c[b>>2]&16777215;if(!i)break;else{j=j+4|0;e=e+r|0;i=i+-1|0}}}else{j=h;b=0;e=65536;h=-1;while(1){if((e|0)>65535){w=e+-65536|0;e=w>>>16;h=h+1+e|0;b=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(h<<2)|0;e=w-(e<<16)|0}w=c[b>>2]|0;c[j>>2]=((O(w&255,n)|0)>>>0)/255|0|(((O(w>>>8&255,v)|0)>>>0)/255|0)<<8|(((O(w>>>16&255,u)|0)>>>0)/255|0)<<16;if(!i)break;else{j=j+4|0;e=e+r|0;i=i+-1|0}}}b=k+(c[t>>2]|0)|0;w=c[o>>2]|0;c[o>>2]=w+-1;if(!w)break;f=f+p|0;h=b;e=c[q>>2]|0;k=b}c[s>>2]=b;return}function YE(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,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=c[b+52>>2]|0;A=d[b+60>>0]|0;B=d[b+61>>0]|0;t=d[b+62>>0]|0;e=a[b+63>>0]|0;u=b+28|0;z=c[u>>2]|0;c[u>>2]=z+-1;if(!z)return;v=b+20|0;w=b+24|0;x=b+12|0;y=b+32|0;z=(f&1|0)==0;r=(f&2|0)==0?255:e&255;s=(f&48|0)!=0&(r|0)!=255;q=f&112;p=r^255;f=c[b>>2]|0;e=c[v>>2]|0;n=f;o=e;while(1){m=c[w>>2]|0;g=m+-1|0;a:do if(m|0)if(z){m=g;while(1){i=c[f>>2]|0;k=i>>>16&255;j=i>>>8&255;i=i&255;l=c[e>>2]|0;g=l>>>16&255;h=l>>>8&255;l=l&255;if(s){i=((O(i,r)|0)>>>0)/255|0;j=((O(j,r)|0)>>>0)/255|0;k=((O(k,r)|0)>>>0)/255|0}switch(q&127){case 16:{i=i+(((O(l,p)|0)>>>0)/255|0)|0;h=j+(((O(h,p)|0)>>>0)/255|0)|0;g=k+(((O(g,p)|0)>>>0)/255|0)|0;break}case 32:{g=k+g|0;h=j+h|0;i=i+l|0;i=i>>>0<255?i:255;h=h>>>0<255?h:255;g=g>>>0<255?g:255;break}case 64:{i=((O(i,l)|0)>>>0)/255|0;h=((O(j,h)|0)>>>0)/255|0;g=((O(k,g)|0)>>>0)/255|0;break}default:i=l}c[e>>2]=h<<8|g<<16|i;if(!m)break a;else{e=e+4|0;f=f+4|0;m=m+-1|0}}}else{m=g;while(1){i=c[f>>2]|0;l=c[e>>2]|0;g=l>>>16&255;h=l>>>8&255;l=l&255;k=((O(i>>>16&255,A)|0)>>>0)/255|0;j=((O(i>>>8&255,B)|0)>>>0)/255|0;i=((O(i&255,t)|0)>>>0)/255|0;if(s){i=((O(i,r)|0)>>>0)/255|0;j=((O(j,r)|0)>>>0)/255|0;k=((O(k,r)|0)>>>0)/255|0}switch(q&127){case 16:{i=i+(((O(l,p)|0)>>>0)/255|0)|0;h=j+(((O(h,p)|0)>>>0)/255|0)|0;g=k+(((O(g,p)|0)>>>0)/255|0)|0;break}case 32:{g=k+g|0;h=j+h|0;i=i+l|0;i=i>>>0<255?i:255;h=h>>>0<255?h:255;g=g>>>0<255?g:255;break}case 64:{i=((O(i,l)|0)>>>0)/255|0;h=((O(j,h)|0)>>>0)/255|0;g=((O(k,g)|0)>>>0)/255|0;break}default:i=l}c[e>>2]=h<<8|g<<16|i;if(!m)break a;else{e=e+4|0;f=f+4|0;m=m+-1|0}}}while(0);f=n+(c[x>>2]|0)|0;e=o+(c[y>>2]|0)|0;o=c[u>>2]|0;c[u>>2]=o+-1;if(!o)break;else{n=f;o=e}}c[b>>2]=f;c[v>>2]=e;return}function ZE(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,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=c[b+52>>2]|0;F=d[b+60>>0]|0;G=d[b+61>>0]|0;x=d[b+62>>0]|0;e=a[b+63>>0]|0;y=b+28|0;E=c[y>>2]|0;z=(c[b+8>>2]<<16|0)/(E|0)|0;A=b+24|0;h=c[A>>2]|0;B=(c[b+4>>2]<<16|0)/(h|0)|0;g=E+-1|0;c[y>>2]=g;if(!E)return;C=b+20|0;D=b+32|0;E=(f&1|0)==0;v=(f&2|0)==0?255:e&255;w=(f&48|0)!=0&(v|0)!=255;u=f&112;s=v^255;t=b+12|0;f=c[C>>2]|0;i=0;j=0;r=f;e=g;while(1){if((i|0)>65535){i=i+-65536|0;q=i>>>16;i=i-(q<<16)|0;q=j+1+q|0}else q=j;if(h){e=0;g=65536;j=-1;while(1){h=h+-1|0;if((g|0)>65535){p=g+-65536|0;g=p>>>16;j=j+1+g|0;e=(c[b>>2]|0)+(O(c[t>>2]|0,q)|0)+(j<<2)|0;g=p-(g<<16)|0}m=c[e>>2]|0;n=m>>>16&255;o=m>>>8&255;m=m&255;p=c[f>>2]|0;k=p>>>16&255;l=p>>>8&255;p=p&255;if(!E){n=((O(n,F)|0)>>>0)/255|0;o=((O(o,G)|0)>>>0)/255|0;m=((O(m,x)|0)>>>0)/255|0}if(w){n=((O(n,v)|0)>>>0)/255|0;o=((O(o,v)|0)>>>0)/255|0;m=((O(m,v)|0)>>>0)/255|0}switch(u&127){case 16:{m=m+(((O(p,s)|0)>>>0)/255|0)|0;l=o+(((O(l,s)|0)>>>0)/255|0)|0;k=n+(((O(k,s)|0)>>>0)/255|0)|0;break}case 32:{k=n+k|0;l=o+l|0;m=m+p|0;m=m>>>0<255?m:255;l=l>>>0<255?l:255;k=k>>>0<255?k:255;break}case 64:{m=((O(m,p)|0)>>>0)/255|0;l=((O(o,l)|0)>>>0)/255|0;k=((O(n,k)|0)>>>0)/255|0;break}default:m=p}c[f>>2]=l<<8|k<<16|m;if(!h)break;else{f=f+4|0;g=g+B|0}}e=c[y>>2]|0}g=r+(c[D>>2]|0)|0;f=e+-1|0;c[y>>2]=f;if(!e)break;i=i+z|0;j=q;r=g;e=f;f=g;h=c[A>>2]|0}c[C>>2]=g;return}function _E(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=a+28|0;o=c[p>>2]|0;q=(c[a+8>>2]<<16|0)/(o|0)|0;k=a+24|0;b=c[k>>2]|0;l=(c[a+4>>2]<<16|0)/(b|0)|0;d=o+-1|0;c[p>>2]=d;if(!o)return;m=a+20|0;n=a+32|0;o=a+12|0;e=c[m>>2]|0;f=0;g=0;j=e;while(1){if((g|0)>65535){g=g+-65536|0;i=g>>>16;h=f+1+i|0;i=g-(i<<16)|0}else{h=f;i=g}if(!b)b=d;else{d=0;f=-1;g=65536;while(1){b=b+-1|0;if((g|0)>65535){r=g+-65536|0;g=r>>>16;f=f+1+g|0;d=(c[a>>2]|0)+(O(c[o>>2]|0,h)|0)+(f<<2)|0;g=r-(g<<16)|0}r=c[d>>2]|0;c[e>>2]=r<<16&16711680|r&65280|r>>>16&255;if(!b)break;else{e=e+4|0;g=g+l|0}}b=c[p>>2]|0}e=j+(c[n>>2]|0)|0;d=b+-1|0;c[p>>2]=d;if(!b)break;f=h;g=i+q|0;b=c[k>>2]|0;j=e}c[m>>2]=e;return}function $E(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;b=c[a+52>>2]|0;o=a+28|0;r=c[o>>2]|0;c[o>>2]=r+-1;if(!r)return;p=a+20|0;q=a+24|0;r=a+12|0;n=a+32|0;m=b&112;d=c[a>>2]|0;e=c[p>>2]|0;l=(m&127)==64;j=d;k=e;while(1){i=c[q>>2]|0;b=i+-1|0;if(i|0)switch(m&127){case 16:{while(1){i=c[d>>2]|0;c[e>>2]=i&65280|i>>>16&255|i<<16&16711680;if(!b)break;else{e=e+4|0;d=d+4|0;b=b+-1|0}}break}case 32:{while(1){i=c[d>>2]|0;f=c[e>>2]|0;h=(i>>>16&255)+(f&255)|0;g=(f>>>8&255)+(i>>>8&255)|0;i=(f>>>16&255)+(i&255)|0;c[e>>2]=(g>>>0<255?g:255)<<8|(h>>>0<255?h:255)|(i>>>0<255?i:255)<<16;if(!b)break;else{e=e+4|0;d=d+4|0;b=b+-1|0}}break}default:while(1){i=c[d>>2]|0;f=c[e>>2]|0;g=f>>>16&255;h=f>>>8&255;f=f&255;if(l){g=((O(g,i&255)|0)>>>0)/255|0;h=((O(h,i>>>8&255)|0)>>>0)/255|0;f=((O(i>>>16&255,f)|0)>>>0)/255|0}c[e>>2]=h<<8|f|g<<16;if(!b)break;else{e=e+4|0;d=d+4|0;b=b+-1|0}}}d=j+(c[r>>2]|0)|0;b=k+(c[n>>2]|0)|0;k=c[o>>2]|0;c[o>>2]=k+-1;if(!k)break;else{j=d;k=b;e=b}}c[a>>2]=d;c[p>>2]=b;return}function aF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;b=c[a+52>>2]|0;x=a+28|0;w=c[x>>2]|0;y=(c[a+8>>2]<<16|0)/(w|0)|0;t=a+24|0;d=c[t>>2]|0;u=(c[a+4>>2]<<16|0)/(d|0)|0;c[x>>2]=w+-1;if(!w)return;v=a+20|0;w=a+32|0;s=b&112;q=a+12|0;r=(s&127)==16;b=c[v>>2]|0;e=0;f=0;p=b;while(1){if((e|0)>65535){e=e+-65536|0;o=e>>>16;e=e-(o<<16)|0;f=f+1+o|0}i=d+-1|0;a:do if(d|0){if(r){d=0;g=65536;h=-1;while(1){if((g|0)>65535){o=g+-65536|0;g=o>>>16;h=h+1+g|0;d=(c[a>>2]|0)+(O(c[q>>2]|0,f)|0)+(h<<2)|0;g=o-(g<<16)|0}o=c[d>>2]|0;c[b>>2]=o&65280|o>>>16&255|o<<16&16711680;if(!i)break a;else{b=b+4|0;g=g+u|0;i=i+-1|0}}}else{d=0;g=65536;h=-1;o=i}while(1){if((g|0)>65535){n=g+-65536|0;g=n>>>16;h=h+1+g|0;d=(c[a>>2]|0)+(O(c[q>>2]|0,f)|0)+(h<<2)|0;g=n-(g<<16)|0}k=c[d>>2]|0;n=k>>>16&255;m=k>>>8&255;k=k&255;i=c[b>>2]|0;l=i>>>16&255;j=i>>>8&255;i=i&255;switch(s&127){case 64:{l=((O(l,k)|0)>>>0)/255|0;j=((O(j,m)|0)>>>0)/255|0;i=((O(n,i)|0)>>>0)/255|0;break}case 32:{i=n+i|0;j=j+m|0;l=l+k|0;l=l>>>0<255?l:255;j=j>>>0<255?j:255;i=i>>>0<255?i:255;break}default:{}}c[b>>2]=j<<8|i|l<<16;if(!o)break a;else{b=b+4|0;g=g+u|0;o=o+-1|0}}}while(0);b=p+(c[w>>2]|0)|0;p=c[x>>2]|0;c[x>>2]=p+-1;if(!p)break;e=e+y|0;p=b;d=c[t>>2]|0}c[v>>2]=b;return}function bF(a){a=a|0;var b=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;b=c[a+52>>2]|0;k=d[a+60>>0]|0;l=d[a+61>>0]|0;j=d[a+62>>0]|0;m=a+28|0;q=c[m>>2]|0;g=q+-1|0;c[m>>2]=g;if(!q)return;q=a+20|0;n=a+24|0;o=a+12|0;p=a+32|0;f=c[a>>2]|0;e=c[q>>2]|0;if(!(b&1)){h=f;i=e;b=e;e=f;while(1){f=c[n>>2]|0;if(!f)f=g;else{while(1){f=f+-1|0;l=c[e>>2]|0;c[b>>2]=l&65280|l>>>16&255|l<<16&16711680;if(!f)break;else{b=b+4|0;e=e+4|0}}f=c[m>>2]|0}e=h+(c[o>>2]|0)|0;b=i+(c[p>>2]|0)|0;g=f+-1|0;c[m>>2]=g;if(!f)break;else{h=e;i=b}}}else{h=f;i=e;b=e;e=f;while(1){f=c[n>>2]|0;if(!f)f=g;else{while(1){f=f+-1|0;g=c[e>>2]|0;c[b>>2]=(((O(g>>>8&255,l)|0)>>>0)/255|0)<<8|(((O(g>>>16&255,k)|0)>>>0)/255|0)|(((O(g&255,j)|0)>>>0)/255|0)<<16;if(!f)break;else{b=b+4|0;e=e+4|0}}f=c[m>>2]|0}e=h+(c[o>>2]|0)|0;b=i+(c[p>>2]|0)|0;g=f+-1|0;c[m>>2]=g;if(!f)break;else{h=e;i=b}}}c[a>>2]=e;c[q>>2]=b;return}function cF(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;b=c[a+52>>2]|0;u=d[a+60>>0]|0;v=d[a+61>>0]|0;n=d[a+62>>0]|0;o=a+28|0;t=c[o>>2]|0;p=(c[a+8>>2]<<16|0)/(t|0)|0;q=a+24|0;e=c[q>>2]|0;r=(c[a+4>>2]<<16|0)/(e|0)|0;c[o>>2]=t+-1;if(!t)return;s=a+20|0;t=a+32|0;l=(b&1|0)==0;m=a+12|0;b=c[s>>2]|0;f=0;g=0;k=b;while(1){if((f|0)>65535){f=f+-65536|0;j=f>>>16;f=f-(j<<16)|0;g=g+1+j|0}j=e+-1|0;if(e|0)if(l){e=0;h=65536;i=-1;while(1){if((h|0)>65535){w=h+-65536|0;h=w>>>16;i=i+1+h|0;e=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(i<<2)|0;h=w-(h<<16)|0}w=c[e>>2]|0;c[b>>2]=w<<16&16711680|w&65280|w>>>16&255;if(!j)break;else{b=b+4|0;h=h+r|0;j=j+-1|0}}}else{e=0;h=65536;i=-1;while(1){if((h|0)>65535){w=h+-65536|0;h=w>>>16;i=i+1+h|0;e=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(i<<2)|0;h=w-(h<<16)|0}w=c[e>>2]|0;c[b>>2]=(((O(w&255,n)|0)>>>0)/255|0)<<16|(((O(w>>>8&255,v)|0)>>>0)/255|0)<<8|(((O(w>>>16&255,u)|0)>>>0)/255|0);if(!j)break;else{b=b+4|0;h=h+r|0;j=j+-1|0}}}b=k+(c[t>>2]|0)|0;w=c[o>>2]|0;c[o>>2]=w+-1;if(!w)break;f=f+p|0;k=b;e=c[q>>2]|0}c[s>>2]=b;return}function dF(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,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=c[b+52>>2]|0;A=d[b+60>>0]|0;B=d[b+61>>0]|0;t=d[b+62>>0]|0;e=a[b+63>>0]|0;u=b+28|0;z=c[u>>2]|0;c[u>>2]=z+-1;if(!z)return;v=b+20|0;w=b+24|0;x=b+12|0;y=b+32|0;z=(f&1|0)==0;r=(f&2|0)==0?255:e&255;s=(f&48|0)!=0&(r|0)!=255;q=f&112;p=r^255;f=c[b>>2]|0;e=c[v>>2]|0;n=f;o=e;while(1){m=c[w>>2]|0;g=m+-1|0;a:do if(m|0)if(z){m=g;while(1){i=c[f>>2]|0;k=i>>>16&255;j=i>>>8&255;i=i&255;g=c[e>>2]|0;l=g>>>16&255;h=g>>>8&255;g=g&255;if(s){i=((O(i,r)|0)>>>0)/255|0;j=((O(j,r)|0)>>>0)/255|0;k=((O(k,r)|0)>>>0)/255|0}switch(q&127){case 16:{i=i+(((O(l,p)|0)>>>0)/255|0)|0;h=j+(((O(h,p)|0)>>>0)/255|0)|0;g=k+(((O(g,p)|0)>>>0)/255|0)|0;break}case 32:{g=k+g|0;h=j+h|0;i=i+l|0;i=i>>>0<255?i:255;h=h>>>0<255?h:255;g=g>>>0<255?g:255;break}case 64:{i=((O(i,l)|0)>>>0)/255|0;h=((O(j,h)|0)>>>0)/255|0;g=((O(k,g)|0)>>>0)/255|0;break}default:i=l}c[e>>2]=h<<8|g|i<<16;if(!m)break a;else{e=e+4|0;f=f+4|0;m=m+-1|0}}}else{m=g;while(1){i=c[f>>2]|0;g=c[e>>2]|0;l=g>>>16&255;h=g>>>8&255;g=g&255;k=((O(i>>>16&255,A)|0)>>>0)/255|0;j=((O(i>>>8&255,B)|0)>>>0)/255|0;i=((O(i&255,t)|0)>>>0)/255|0;if(s){i=((O(i,r)|0)>>>0)/255|0;j=((O(j,r)|0)>>>0)/255|0;k=((O(k,r)|0)>>>0)/255|0}switch(q&127){case 16:{i=i+(((O(l,p)|0)>>>0)/255|0)|0;h=j+(((O(h,p)|0)>>>0)/255|0)|0;g=k+(((O(g,p)|0)>>>0)/255|0)|0;break}case 32:{g=k+g|0;h=j+h|0;i=i+l|0;i=i>>>0<255?i:255;h=h>>>0<255?h:255;g=g>>>0<255?g:255;break}case 64:{i=((O(i,l)|0)>>>0)/255|0;h=((O(j,h)|0)>>>0)/255|0;g=((O(k,g)|0)>>>0)/255|0;break}default:i=l}c[e>>2]=h<<8|g|i<<16;if(!m)break a;else{e=e+4|0;f=f+4|0;m=m+-1|0}}}while(0);f=n+(c[x>>2]|0)|0;e=o+(c[y>>2]|0)|0;o=c[u>>2]|0;c[u>>2]=o+-1;if(!o)break;else{n=f;o=e}}c[b>>2]=f;c[v>>2]=e;return}function eF(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,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=c[b+52>>2]|0;F=d[b+60>>0]|0;G=d[b+61>>0]|0;x=d[b+62>>0]|0;e=a[b+63>>0]|0;y=b+28|0;E=c[y>>2]|0;z=(c[b+8>>2]<<16|0)/(E|0)|0;A=b+24|0;h=c[A>>2]|0;B=(c[b+4>>2]<<16|0)/(h|0)|0;g=E+-1|0;c[y>>2]=g;if(!E)return;C=b+20|0;D=b+32|0;E=(f&1|0)==0;v=(f&2|0)==0?255:e&255;w=(f&48|0)!=0&(v|0)!=255;u=f&112;s=v^255;t=b+12|0;f=c[C>>2]|0;i=0;j=0;r=f;e=g;while(1){if((i|0)>65535){i=i+-65536|0;q=i>>>16;i=i-(q<<16)|0;q=j+1+q|0}else q=j;if(h){e=0;g=65536;j=-1;while(1){h=h+-1|0;if((g|0)>65535){p=g+-65536|0;g=p>>>16;j=j+1+g|0;e=(c[b>>2]|0)+(O(c[t>>2]|0,q)|0)+(j<<2)|0;g=p-(g<<16)|0}m=c[e>>2]|0;n=m>>>16&255;o=m>>>8&255;m=m&255;k=c[f>>2]|0;p=k>>>16&255;l=k>>>8&255;k=k&255;if(!E){n=((O(n,F)|0)>>>0)/255|0;o=((O(o,G)|0)>>>0)/255|0;m=((O(m,x)|0)>>>0)/255|0}if(w){n=((O(n,v)|0)>>>0)/255|0;o=((O(o,v)|0)>>>0)/255|0;m=((O(m,v)|0)>>>0)/255|0}switch(u&127){case 16:{m=m+(((O(p,s)|0)>>>0)/255|0)|0;l=o+(((O(l,s)|0)>>>0)/255|0)|0;k=n+(((O(k,s)|0)>>>0)/255|0)|0;break}case 32:{k=n+k|0;l=o+l|0;m=m+p|0;m=m>>>0<255?m:255;l=l>>>0<255?l:255;k=k>>>0<255?k:255;break}case 64:{m=((O(m,p)|0)>>>0)/255|0;l=((O(o,l)|0)>>>0)/255|0;k=((O(n,k)|0)>>>0)/255|0;break}default:m=p}c[f>>2]=l<<8|k|m<<16;if(!h)break;else{f=f+4|0;g=g+B|0}}e=c[y>>2]|0}g=r+(c[D>>2]|0)|0;f=e+-1|0;c[y>>2]=f;if(!e)break;i=i+z|0;j=q;r=g;e=f;f=g;h=c[A>>2]|0}c[C>>2]=g;return}function fF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=a+28|0;o=c[p>>2]|0;q=(c[a+8>>2]<<16|0)/(o|0)|0;k=a+24|0;b=c[k>>2]|0;l=(c[a+4>>2]<<16|0)/(b|0)|0;d=o+-1|0;c[p>>2]=d;if(!o)return;m=a+20|0;n=a+32|0;o=a+12|0;e=c[m>>2]|0;f=0;g=0;j=e;while(1){if((g|0)>65535){g=g+-65536|0;i=g>>>16;h=f+1+i|0;i=g-(i<<16)|0}else{h=f;i=g}if(!b)b=d;else{d=0;f=-1;g=65536;while(1){b=b+-1|0;if((g|0)>65535){r=g+-65536|0;g=r>>>16;f=f+1+g|0;d=(c[a>>2]|0)+(O(c[o>>2]|0,h)|0)+(f<<2)|0;g=r-(g<<16)|0}c[e>>2]=c[d>>2]|-16777216;if(!b)break;else{e=e+4|0;g=g+l|0}}b=c[p>>2]|0}e=j+(c[n>>2]|0)|0;d=b+-1|0;c[p>>2]=d;if(!b)break;f=h;g=i+q|0;b=c[k>>2]|0;j=e}c[m>>2]=e;return}function gF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;b=c[a+52>>2]|0;r=a+28|0;u=c[r>>2]|0;c[r>>2]=u+-1;if(!u)return;s=a+20|0;t=a+24|0;u=a+12|0;q=a+32|0;p=b&112;m=(p&127)==16;d=c[a>>2]|0;e=c[s>>2]|0;n=d;o=e;while(1){l=c[t>>2]|0;b=l+-1|0;a:do if(l|0){if(m)while(1){c[e>>2]=c[d>>2]|-16777216;if(!b)break a;else{e=e+4|0;d=d+4|0;b=b+-1|0}}while(1){h=c[d>>2]|0;k=h>>>16&255;j=h>>>8&255;h=h&255;l=c[e>>2]|0;f=l>>>16&255;g=l>>>8&255;i=l&255;l=l&-16777216;switch(p&127){case 64:{i=((O(i,h)|0)>>>0)/255|0;g=((O(g,j)|0)>>>0)/255|0;f=((O(f,k)|0)>>>0)/255|0;break}case 32:{f=f+k|0;g=g+j|0;i=i+h|0;i=i>>>0<255?i:255;g=g>>>0<255?g:255;f=f>>>0<255?f:255;break}default:{}}c[e>>2]=g<<8|f<<16|i|l;if(!b)break a;else{e=e+4|0;d=d+4|0;b=b+-1|0}}}while(0);d=n+(c[u>>2]|0)|0;b=o+(c[q>>2]|0)|0;o=c[r>>2]|0;c[r>>2]=o+-1;if(!o)break;else{n=d;o=b;e=b}}c[a>>2]=d;c[s>>2]=b;return}function hF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;b=c[a+52>>2]|0;y=a+28|0;x=c[y>>2]|0;z=(c[a+8>>2]<<16|0)/(x|0)|0;u=a+24|0;d=c[u>>2]|0;v=(c[a+4>>2]<<16|0)/(d|0)|0;c[y>>2]=x+-1;if(!x)return;w=a+20|0;x=a+32|0;t=b&112;r=a+12|0;s=(t&127)==16;b=c[w>>2]|0;e=0;f=0;q=b;while(1){if((e|0)>65535){e=e+-65536|0;p=e>>>16;e=e-(p<<16)|0;f=f+1+p|0}i=d+-1|0;a:do if(d|0){if(s){d=0;g=65536;h=-1;while(1){if((g|0)>65535){p=g+-65536|0;g=p>>>16;h=h+1+g|0;d=(c[a>>2]|0)+(O(c[r>>2]|0,f)|0)+(h<<2)|0;g=p-(g<<16)|0}c[b>>2]=c[d>>2]|-16777216;if(!i)break a;else{b=b+4|0;g=g+v|0;i=i+-1|0}}}else{d=0;g=65536;h=-1}while(1){if((g|0)>65535){p=g+-65536|0;g=p>>>16;h=h+1+g|0;d=(c[a>>2]|0)+(O(c[r>>2]|0,f)|0)+(h<<2)|0;g=p-(g<<16)|0}l=c[d>>2]|0;o=l>>>16&255;n=l>>>8&255;l=l&255;p=c[b>>2]|0;j=p>>>16&255;k=p>>>8&255;m=p&255;p=p&-16777216;switch(t&127){case 64:{m=((O(m,l)|0)>>>0)/255|0;k=((O(k,n)|0)>>>0)/255|0;j=((O(j,o)|0)>>>0)/255|0;break}case 32:{j=j+o|0;k=k+n|0;m=m+l|0;m=m>>>0<255?m:255;k=k>>>0<255?k:255;j=j>>>0<255?j:255;break}default:{}}c[b>>2]=k<<8|j<<16|m|p;if(!i)break a;else{b=b+4|0;g=g+v|0;i=i+-1|0}}}while(0);b=q+(c[x>>2]|0)|0;q=c[y>>2]|0;c[y>>2]=q+-1;if(!q)break;e=e+z|0;q=b;d=c[u>>2]|0}c[w>>2]=b;return}function iF(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=c[b+52>>2]|0;l=d[b+60>>0]|0;m=d[b+61>>0]|0;k=d[b+62>>0]|0;e=a[b+63>>0]|0;o=b+28|0;s=c[o>>2]|0;h=s+-1|0;c[o>>2]=h;if(!s)return;s=b+20|0;p=b+24|0;q=b+12|0;r=b+32|0;n=(f&2|0)==0?-16777216:(e&255)<<24;g=c[b>>2]|0;e=c[s>>2]|0;if(!(f&1)){i=g;j=e;f=g;while(1){g=c[p>>2]|0;if(!g)g=h;else{while(1){g=g+-1|0;m=c[f>>2]|0;c[e>>2]=m&16711680|n|m&65280|m&255;if(!g)break;else{e=e+4|0;f=f+4|0}}g=c[o>>2]|0}f=i+(c[q>>2]|0)|0;e=j+(c[r>>2]|0)|0;h=g+-1|0;c[o>>2]=h;if(!g)break;else{i=f;j=e}}}else{i=g;j=e;f=g;while(1){g=c[p>>2]|0;if(!g)g=h;else{while(1){g=g+-1|0;h=c[f>>2]|0;c[e>>2]=(((O(h>>>16&255,l)|0)>>>0)/255|0)<<16|n|(((O(h>>>8&255,m)|0)>>>0)/255|0)<<8|(((O(h&255,k)|0)>>>0)/255|0);if(!g)break;else{e=e+4|0;f=f+4|0}}g=c[o>>2]|0}f=i+(c[q>>2]|0)|0;e=j+(c[r>>2]|0)|0;h=g+-1|0;c[o>>2]=h;if(!g)break;else{i=f;j=e}}}c[b>>2]=f;c[s>>2]=e;return}function jF(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;f=c[b+52>>2]|0;w=d[b+60>>0]|0;x=d[b+61>>0]|0;o=d[b+62>>0]|0;e=a[b+63>>0]|0;p=b+28|0;v=c[p>>2]|0;q=(c[b+8>>2]<<16|0)/(v|0)|0;r=b+24|0;g=c[r>>2]|0;s=(c[b+4>>2]<<16|0)/(g|0)|0;c[p>>2]=v+-1;if(!v)return;t=b+20|0;u=b+32|0;v=(f&1|0)==0;m=(f&2|0)==0?-16777216:(e&255)<<24;n=b+12|0;e=c[t>>2]|0;f=0;h=0;l=e;while(1){if((f|0)>65535){f=f+-65536|0;k=f>>>16;f=f-(k<<16)|0;h=h+1+k|0}k=g+-1|0;if(g|0)if(v){g=0;i=65536;j=-1;while(1){if((i|0)>65535){y=i+-65536|0;i=y>>>16;j=j+1+i|0;g=(c[b>>2]|0)+(O(c[n>>2]|0,h)|0)+(j<<2)|0;i=y-(i<<16)|0}y=c[g>>2]|0;c[e>>2]=y&65280|m|y&255|y&16711680;if(!k)break;else{e=e+4|0;i=i+s|0;k=k+-1|0}}}else{g=0;i=65536;j=-1;while(1){if((i|0)>65535){y=i+-65536|0;i=y>>>16;j=j+1+i|0;g=(c[b>>2]|0)+(O(c[n>>2]|0,h)|0)+(j<<2)|0;i=y-(i<<16)|0}y=c[g>>2]|0;c[e>>2]=(((O(y>>>8&255,x)|0)>>>0)/255|0)<<8|m|(((O(y&255,o)|0)>>>0)/255|0)|(((O(y>>>16&255,w)|0)>>>0)/255|0)<<16;if(!k)break;else{e=e+4|0;i=i+s|0;k=k+-1|0}}}e=l+(c[u>>2]|0)|0;y=c[p>>2]|0;c[p>>2]=y+-1;if(!y)break;f=f+q|0;l=e;g=c[r>>2]|0}c[t>>2]=e;return}function kF(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;f=c[b+52>>2]|0;B=d[b+60>>0]|0;C=d[b+61>>0]|0;u=d[b+62>>0]|0;e=a[b+63>>0]|0;v=b+28|0;A=c[v>>2]|0;g=A+-1|0;c[v>>2]=g;if(!A)return;w=b+20|0;x=b+24|0;y=b+12|0;z=b+32|0;A=(f&1|0)==0;s=(f&2|0)==0?255:e&255;t=(f&48|0)!=0&(s|0)!=255;r=f&112;q=s^255;o=c[b>>2]|0;p=c[w>>2]|0;e=p;i=o;while(1){f=c[x>>2]|0;if(f){while(1){f=f+-1|0;j=c[i>>2]|0;l=j>>>16&255;k=j>>>8&255;j=j&255;m=c[e>>2]|0;g=m>>>16&255;h=m>>>8&255;n=m&255;m=m>>>24;if(!A){j=((O(j,u)|0)>>>0)/255|0;k=((O(k,C)|0)>>>0)/255|0;l=((O(l,B)|0)>>>0)/255|0}if(t){j=((O(j,s)|0)>>>0)/255|0;k=((O(k,s)|0)>>>0)/255|0;l=((O(l,s)|0)>>>0)/255|0}switch(r&127){case 16:{m=(((O(m,q)|0)>>>0)/255|0)+s|0;j=j+(((O(n,q)|0)>>>0)/255|0)|0;h=k+(((O(h,q)|0)>>>0)/255|0)|0;g=l+(((O(g,q)|0)>>>0)/255|0)|0;break}case 32:{g=l+g|0;h=k+h|0;j=j+n|0;j=j>>>0<255?j:255;h=h>>>0<255?h:255;g=g>>>0<255?g:255;break}case 64:{j=((O(j,n)|0)>>>0)/255|0;h=((O(k,h)|0)>>>0)/255|0;g=((O(l,g)|0)>>>0)/255|0;break}default:j=n}c[e>>2]=h<<8|g<<16|j|m<<24;if(!f)break;else{e=e+4|0;i=i+4|0}}g=c[v>>2]|0}f=o+(c[y>>2]|0)|0;h=p+(c[z>>2]|0)|0;e=g+-1|0;c[v>>2]=e;if(!g)break;else{g=e;e=h;i=f;o=f;p=h}}c[b>>2]=f;c[w>>2]=h;return}function lF(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;f=c[b+52>>2]|0;G=d[b+60>>0]|0;H=d[b+61>>0]|0;y=d[b+62>>0]|0;e=a[b+63>>0]|0;z=b+28|0;F=c[z>>2]|0;A=(c[b+8>>2]<<16|0)/(F|0)|0;B=b+24|0;h=c[B>>2]|0;C=(c[b+4>>2]<<16|0)/(h|0)|0;g=F+-1|0;c[z>>2]=g;if(!F)return;D=b+20|0;E=b+32|0;F=(f&1|0)==0;w=(f&2|0)==0?255:e&255;x=(f&48|0)!=0&(w|0)!=255;v=f&112;t=w^255;u=b+12|0;f=c[D>>2]|0;i=0;j=0;s=f;e=g;while(1){if((i|0)>65535){i=i+-65536|0;r=i>>>16;i=i-(r<<16)|0;r=j+1+r|0}else r=j;if(h){e=0;g=65536;j=-1;while(1){h=h+-1|0;if((g|0)>65535){q=g+-65536|0;g=q>>>16;j=j+1+g|0;e=(c[b>>2]|0)+(O(c[u>>2]|0,r)|0)+(j<<2)|0;g=q-(g<<16)|0}o=c[e>>2]|0;m=o>>>16&255;p=o>>>8&255;o=o&255;q=c[f>>2]|0;k=q>>>16&255;l=q>>>8&255;n=q&255;q=q>>>24;if(!F){m=((O(m,G)|0)>>>0)/255|0;p=((O(p,H)|0)>>>0)/255|0;o=((O(o,y)|0)>>>0)/255|0}if(x){m=((O(m,w)|0)>>>0)/255|0;p=((O(p,w)|0)>>>0)/255|0;o=((O(o,w)|0)>>>0)/255|0}switch(v&127){case 16:{q=(((O(q,t)|0)>>>0)/255|0)+w|0;n=o+(((O(n,t)|0)>>>0)/255|0)|0;l=p+(((O(l,t)|0)>>>0)/255|0)|0;k=m+(((O(k,t)|0)>>>0)/255|0)|0;break}case 32:{k=m+k|0;l=p+l|0;n=o+n|0;n=n>>>0<255?n:255;l=l>>>0<255?l:255;k=k>>>0<255?k:255;break}case 64:{n=((O(o,n)|0)>>>0)/255|0;l=((O(p,l)|0)>>>0)/255|0;k=((O(m,k)|0)>>>0)/255|0;break}default:{}}c[f>>2]=l<<8|k<<16|n|q<<24;if(!h)break;else{f=f+4|0;g=g+C|0}}e=c[z>>2]|0}g=s+(c[E>>2]|0)|0;f=e+-1|0;c[z>>2]=f;if(!e)break;i=i+A|0;j=r;s=g;e=f;f=g;h=c[B>>2]|0}c[D>>2]=g;return}function mF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=a+28|0;o=c[p>>2]|0;q=(c[a+8>>2]<<16|0)/(o|0)|0;k=a+24|0;b=c[k>>2]|0;l=(c[a+4>>2]<<16|0)/(b|0)|0;d=o+-1|0;c[p>>2]=d;if(!o)return;m=a+20|0;n=a+32|0;o=a+12|0;e=c[m>>2]|0;f=0;g=0;j=e;while(1){if((g|0)>65535){g=g+-65536|0;i=g>>>16;h=f+1+i|0;i=g-(i<<16)|0}else{h=f;i=g}if(!b)b=d;else{d=0;f=-1;g=65536;while(1){b=b+-1|0;if((g|0)>65535){r=g+-65536|0;g=r>>>16;f=f+1+g|0;d=(c[a>>2]|0)+(O(c[o>>2]|0,h)|0)+(f<<2)|0;g=r-(g<<16)|0}r=c[d>>2]|0;c[e>>2]=r<<16&16711680|r&65280|r>>>16&255;if(!b)break;else{e=e+4|0;g=g+l|0}}b=c[p>>2]|0}e=j+(c[n>>2]|0)|0;d=b+-1|0;c[p>>2]=d;if(!b)break;f=h;g=i+q|0;b=c[k>>2]|0;j=e}c[m>>2]=e;return}function nF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;b=c[a+52>>2]|0;o=a+28|0;r=c[o>>2]|0;c[o>>2]=r+-1;if(!r)return;p=a+20|0;q=a+24|0;r=a+12|0;n=a+32|0;m=b&112;d=c[a>>2]|0;e=c[p>>2]|0;l=(m&127)==64;j=d;k=e;while(1){i=c[q>>2]|0;b=i+-1|0;if(i|0)switch(m&127){case 16:{while(1){i=c[d>>2]|0;c[e>>2]=i&65280|i<<16&16711680|i>>>16&255;if(!b)break;else{e=e+4|0;d=d+4|0;b=b+-1|0}}break}case 32:{while(1){f=c[d>>2]|0;i=c[e>>2]|0;h=(i>>>16&255)+(f&255)|0;g=(i>>>8&255)+(f>>>8&255)|0;i=(f>>>16&255)+(i&255)|0;c[e>>2]=(g>>>0<255?g:255)<<8|(h>>>0<255?h:255)<<16|(i>>>0<255?i:255);if(!b)break;else{e=e+4|0;d=d+4|0;b=b+-1|0}}break}default:while(1){i=c[d>>2]|0;g=c[e>>2]|0;f=g>>>16&255;h=g>>>8&255;g=g&255;if(l){g=((O(i>>>16&255,g)|0)>>>0)/255|0;h=((O(h,i>>>8&255)|0)>>>0)/255|0;f=((O(f,i&255)|0)>>>0)/255|0}c[e>>2]=h<<8|f<<16|g;if(!b)break;else{e=e+4|0;d=d+4|0;b=b+-1|0}}}d=j+(c[r>>2]|0)|0;b=k+(c[n>>2]|0)|0;k=c[o>>2]|0;c[o>>2]=k+-1;if(!k)break;else{j=d;k=b;e=b}}c[a>>2]=d;c[p>>2]=b;return}function oF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;b=c[a+52>>2]|0;x=a+28|0;w=c[x>>2]|0;y=(c[a+8>>2]<<16|0)/(w|0)|0;t=a+24|0;d=c[t>>2]|0;u=(c[a+4>>2]<<16|0)/(d|0)|0;c[x>>2]=w+-1;if(!w)return;v=a+20|0;w=a+32|0;s=b&112;q=a+12|0;r=(s&127)==16;b=c[v>>2]|0;e=0;f=0;p=b;while(1){if((e|0)>65535){e=e+-65536|0;o=e>>>16;e=e-(o<<16)|0;f=f+1+o|0}i=d+-1|0;a:do if(d|0){if(r){d=0;g=65536;h=-1;while(1){if((g|0)>65535){o=g+-65536|0;g=o>>>16;h=h+1+g|0;d=(c[a>>2]|0)+(O(c[q>>2]|0,f)|0)+(h<<2)|0;g=o-(g<<16)|0}o=c[d>>2]|0;c[b>>2]=o&65280|o<<16&16711680|o>>>16&255;if(!i)break a;else{b=b+4|0;g=g+u|0;i=i+-1|0}}}else{d=0;g=65536;h=-1;o=i}while(1){if((g|0)>65535){n=g+-65536|0;g=n>>>16;h=h+1+g|0;d=(c[a>>2]|0)+(O(c[q>>2]|0,f)|0)+(h<<2)|0;g=n-(g<<16)|0}n=c[d>>2]|0;k=n>>>16&255;m=n>>>8&255;n=n&255;l=c[b>>2]|0;i=l>>>16&255;j=l>>>8&255;l=l&255;switch(s&127){case 64:{l=((O(k,l)|0)>>>0)/255|0;j=((O(j,m)|0)>>>0)/255|0;i=((O(i,n)|0)>>>0)/255|0;break}case 32:{i=i+n|0;j=j+m|0;l=k+l|0;l=l>>>0<255?l:255;j=j>>>0<255?j:255;i=i>>>0<255?i:255;break}default:{}}c[b>>2]=j<<8|i<<16|l;if(!o)break a;else{b=b+4|0;g=g+u|0;o=o+-1|0}}}while(0);b=p+(c[w>>2]|0)|0;p=c[x>>2]|0;c[x>>2]=p+-1;if(!p)break;e=e+y|0;p=b;d=c[t>>2]|0}c[v>>2]=b;return}function pF(a){a=a|0;var b=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;b=c[a+52>>2]|0;k=d[a+60>>0]|0;l=d[a+61>>0]|0;j=d[a+62>>0]|0;m=a+28|0;q=c[m>>2]|0;g=q+-1|0;c[m>>2]=g;if(!q)return;q=a+20|0;n=a+24|0;o=a+12|0;p=a+32|0;f=c[a>>2]|0;e=c[q>>2]|0;if(!(b&1)){h=f;i=e;b=e;e=f;while(1){f=c[n>>2]|0;if(!f)f=g;else{while(1){f=f+-1|0;l=c[e>>2]|0;c[b>>2]=l&65280|l<<16&16711680|l>>>16&255;if(!f)break;else{b=b+4|0;e=e+4|0}}f=c[m>>2]|0}e=h+(c[o>>2]|0)|0;b=i+(c[p>>2]|0)|0;g=f+-1|0;c[m>>2]=g;if(!f)break;else{h=e;i=b}}}else{h=f;i=e;b=e;e=f;while(1){f=c[n>>2]|0;if(!f)f=g;else{while(1){f=f+-1|0;g=c[e>>2]|0;c[b>>2]=(((O(g>>>8&255,l)|0)>>>0)/255|0)<<8|(((O(g&255,k)|0)>>>0)/255|0)<<16|(((O(g>>>16&255,j)|0)>>>0)/255|0);if(!f)break;else{b=b+4|0;e=e+4|0}}f=c[m>>2]|0}e=h+(c[o>>2]|0)|0;b=i+(c[p>>2]|0)|0;g=f+-1|0;c[m>>2]=g;if(!f)break;else{h=e;i=b}}}c[a>>2]=e;c[q>>2]=b;return}function qF(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;b=c[a+52>>2]|0;u=d[a+60>>0]|0;v=d[a+61>>0]|0;n=d[a+62>>0]|0;o=a+28|0;t=c[o>>2]|0;p=(c[a+8>>2]<<16|0)/(t|0)|0;q=a+24|0;e=c[q>>2]|0;r=(c[a+4>>2]<<16|0)/(e|0)|0;c[o>>2]=t+-1;if(!t)return;s=a+20|0;t=a+32|0;l=(b&1|0)==0;m=a+12|0;b=c[s>>2]|0;f=0;g=0;k=b;while(1){if((f|0)>65535){f=f+-65536|0;j=f>>>16;f=f-(j<<16)|0;g=g+1+j|0}j=e+-1|0;if(e|0)if(l){e=0;h=65536;i=-1;while(1){if((h|0)>65535){w=h+-65536|0;h=w>>>16;i=i+1+h|0;e=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(i<<2)|0;h=w-(h<<16)|0}w=c[e>>2]|0;c[b>>2]=w>>>16&255|w&65280|w<<16&16711680;if(!j)break;else{b=b+4|0;h=h+r|0;j=j+-1|0}}}else{e=0;h=65536;i=-1;while(1){if((h|0)>65535){w=h+-65536|0;h=w>>>16;i=i+1+h|0;e=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(i<<2)|0;h=w-(h<<16)|0}w=c[e>>2]|0;c[b>>2]=((O(w>>>16&255,n)|0)>>>0)/255|0|(((O(w>>>8&255,v)|0)>>>0)/255|0)<<8|(((O(w&255,u)|0)>>>0)/255|0)<<16;if(!j)break;else{b=b+4|0;h=h+r|0;j=j+-1|0}}}b=k+(c[t>>2]|0)|0;w=c[o>>2]|0;c[o>>2]=w+-1;if(!w)break;f=f+p|0;k=b;e=c[q>>2]|0}c[s>>2]=b;return}function rF(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,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=c[b+52>>2]|0;A=d[b+60>>0]|0;B=d[b+61>>0]|0;t=d[b+62>>0]|0;e=a[b+63>>0]|0;u=b+28|0;z=c[u>>2]|0;c[u>>2]=z+-1;if(!z)return;v=b+20|0;w=b+24|0;x=b+12|0;y=b+32|0;z=(f&1|0)==0;r=(f&2|0)==0?255:e&255;s=(f&48|0)!=0&(r|0)!=255;q=f&112;p=r^255;f=c[b>>2]|0;e=c[v>>2]|0;n=f;o=e;while(1){m=c[w>>2]|0;g=m+-1|0;a:do if(m|0)if(z){m=g;while(1){k=c[f>>2]|0;i=k>>>16&255;j=k>>>8&255;k=k&255;l=c[e>>2]|0;g=l>>>16&255;h=l>>>8&255;l=l&255;if(s){i=((O(i,r)|0)>>>0)/255|0;j=((O(j,r)|0)>>>0)/255|0;k=((O(k,r)|0)>>>0)/255|0}switch(q&127){case 16:{i=i+(((O(l,p)|0)>>>0)/255|0)|0;h=j+(((O(h,p)|0)>>>0)/255|0)|0;g=k+(((O(g,p)|0)>>>0)/255|0)|0;break}case 32:{g=k+g|0;h=j+h|0;i=i+l|0;i=i>>>0<255?i:255;h=h>>>0<255?h:255;g=g>>>0<255?g:255;break}case 64:{i=((O(i,l)|0)>>>0)/255|0;h=((O(j,h)|0)>>>0)/255|0;g=((O(k,g)|0)>>>0)/255|0;break}default:i=l}c[e>>2]=h<<8|g<<16|i;if(!m)break a;else{e=e+4|0;f=f+4|0;m=m+-1|0}}}else{m=g;while(1){i=c[f>>2]|0;l=c[e>>2]|0;g=l>>>16&255;h=l>>>8&255;l=l&255;k=((O(i&255,A)|0)>>>0)/255|0;j=((O(i>>>8&255,B)|0)>>>0)/255|0;i=((O(i>>>16&255,t)|0)>>>0)/255|0;if(s){i=((O(i,r)|0)>>>0)/255|0;j=((O(j,r)|0)>>>0)/255|0;k=((O(k,r)|0)>>>0)/255|0}switch(q&127){case 16:{i=i+(((O(l,p)|0)>>>0)/255|0)|0;h=j+(((O(h,p)|0)>>>0)/255|0)|0;g=k+(((O(g,p)|0)>>>0)/255|0)|0;break}case 32:{g=k+g|0;h=j+h|0;i=i+l|0;i=i>>>0<255?i:255;h=h>>>0<255?h:255;g=g>>>0<255?g:255;break}case 64:{i=((O(i,l)|0)>>>0)/255|0;h=((O(j,h)|0)>>>0)/255|0;g=((O(k,g)|0)>>>0)/255|0;break}default:i=l}c[e>>2]=h<<8|g<<16|i;if(!m)break a;else{e=e+4|0;f=f+4|0;m=m+-1|0}}}while(0);f=n+(c[x>>2]|0)|0;e=o+(c[y>>2]|0)|0;o=c[u>>2]|0;c[u>>2]=o+-1;if(!o)break;else{n=f;o=e}}c[b>>2]=f;c[v>>2]=e;return}function sF(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,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=c[b+52>>2]|0;F=d[b+60>>0]|0;G=d[b+61>>0]|0;x=d[b+62>>0]|0;e=a[b+63>>0]|0;y=b+28|0;E=c[y>>2]|0;z=(c[b+8>>2]<<16|0)/(E|0)|0;A=b+24|0;h=c[A>>2]|0;B=(c[b+4>>2]<<16|0)/(h|0)|0;g=E+-1|0;c[y>>2]=g;if(!E)return;C=b+20|0;D=b+32|0;E=(f&1|0)==0;v=(f&2|0)==0?255:e&255;w=(f&48|0)!=0&(v|0)!=255;u=f&112;s=v^255;t=b+12|0;f=c[C>>2]|0;i=0;j=0;r=f;e=g;while(1){if((i|0)>65535){i=i+-65536|0;q=i>>>16;i=i-(q<<16)|0;q=j+1+q|0}else q=j;if(h){e=0;g=65536;j=-1;while(1){h=h+-1|0;if((g|0)>65535){p=g+-65536|0;g=p>>>16;j=j+1+g|0;e=(c[b>>2]|0)+(O(c[t>>2]|0,q)|0)+(j<<2)|0;g=p-(g<<16)|0}n=c[e>>2]|0;m=n>>>16&255;o=n>>>8&255;n=n&255;p=c[f>>2]|0;k=p>>>16&255;l=p>>>8&255;p=p&255;if(!E){n=((O(n,F)|0)>>>0)/255|0;o=((O(o,G)|0)>>>0)/255|0;m=((O(m,x)|0)>>>0)/255|0}if(w){n=((O(n,v)|0)>>>0)/255|0;o=((O(o,v)|0)>>>0)/255|0;m=((O(m,v)|0)>>>0)/255|0}switch(u&127){case 16:{m=m+(((O(p,s)|0)>>>0)/255|0)|0;l=o+(((O(l,s)|0)>>>0)/255|0)|0;k=n+(((O(k,s)|0)>>>0)/255|0)|0;break}case 32:{k=n+k|0;l=o+l|0;m=m+p|0;m=m>>>0<255?m:255;l=l>>>0<255?l:255;k=k>>>0<255?k:255;break}case 64:{m=((O(m,p)|0)>>>0)/255|0;l=((O(o,l)|0)>>>0)/255|0;k=((O(n,k)|0)>>>0)/255|0;break}default:m=p}c[f>>2]=l<<8|k<<16|m;if(!h)break;else{f=f+4|0;g=g+B|0}}e=c[y>>2]|0}g=r+(c[D>>2]|0)|0;f=e+-1|0;c[y>>2]=f;if(!e)break;i=i+z|0;j=q;r=g;e=f;f=g;h=c[A>>2]|0}c[C>>2]=g;return}function tF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=a+28|0;o=c[p>>2]|0;q=(c[a+8>>2]<<16|0)/(o|0)|0;k=a+24|0;b=c[k>>2]|0;l=(c[a+4>>2]<<16|0)/(b|0)|0;d=o+-1|0;c[p>>2]=d;if(!o)return;m=a+20|0;n=a+32|0;o=a+12|0;e=c[m>>2]|0;f=0;g=0;j=e;while(1){if((g|0)>65535){g=g+-65536|0;i=g>>>16;h=f+1+i|0;i=g-(i<<16)|0}else{h=f;i=g}if(!b)b=d;else{d=0;f=-1;g=65536;while(1){b=b+-1|0;if((g|0)>65535){r=g+-65536|0;g=r>>>16;f=f+1+g|0;d=(c[a>>2]|0)+(O(c[o>>2]|0,h)|0)+(f<<2)|0;g=r-(g<<16)|0}c[e>>2]=c[d>>2];if(!b)break;else{e=e+4|0;g=g+l|0}}b=c[p>>2]|0}e=j+(c[n>>2]|0)|0;d=b+-1|0;c[p>>2]=d;if(!b)break;f=h;g=i+q|0;b=c[k>>2]|0;j=e}c[m>>2]=e;return}function uF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;b=c[a+52>>2]|0;o=a+28|0;r=c[o>>2]|0;c[o>>2]=r+-1;if(!r)return;p=a+20|0;q=a+24|0;r=a+12|0;n=a+32|0;m=b&112;d=c[a>>2]|0;e=c[p>>2]|0;l=(m&127)==64;j=d;k=e;while(1){i=c[q>>2]|0;b=i+-1|0;if(i|0)switch(m&127){case 16:{while(1){c[e>>2]=c[d>>2]&16777215;if(!b)break;else{e=e+4|0;d=d+4|0;b=b+-1|0}}break}case 32:{while(1){i=c[d>>2]|0;f=c[e>>2]|0;h=(f&255)+(i&255)|0;g=(f>>>8&255)+(i>>>8&255)|0;i=(f>>>16&255)+(i>>>16&255)|0;c[e>>2]=(g>>>0<255?g:255)<<8|(h>>>0<255?h:255)|(i>>>0<255?i:255)<<16;if(!b)break;else{e=e+4|0;d=d+4|0;b=b+-1|0}}break}default:while(1){i=c[d>>2]|0;f=c[e>>2]|0;g=f>>>16&255;h=f>>>8&255;f=f&255;if(l){g=((O(g,i>>>16&255)|0)>>>0)/255|0;h=((O(h,i>>>8&255)|0)>>>0)/255|0;f=((O(f,i&255)|0)>>>0)/255|0}c[e>>2]=h<<8|f|g<<16;if(!b)break;else{e=e+4|0;d=d+4|0;b=b+-1|0}}}d=j+(c[r>>2]|0)|0;b=k+(c[n>>2]|0)|0;k=c[o>>2]|0;c[o>>2]=k+-1;if(!k)break;else{j=d;k=b;e=b}}c[a>>2]=d;c[p>>2]=b;return}function vF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;b=c[a+52>>2]|0;x=a+28|0;w=c[x>>2]|0;y=(c[a+8>>2]<<16|0)/(w|0)|0;t=a+24|0;d=c[t>>2]|0;u=(c[a+4>>2]<<16|0)/(d|0)|0;c[x>>2]=w+-1;if(!w)return;v=a+20|0;w=a+32|0;s=b&112;q=a+12|0;r=(s&127)==16;b=c[v>>2]|0;e=0;f=0;p=b;while(1){if((e|0)>65535){e=e+-65536|0;o=e>>>16;e=e-(o<<16)|0;f=f+1+o|0}i=d+-1|0;a:do if(d|0){if(r){d=0;g=65536;h=-1;while(1){if((g|0)>65535){o=g+-65536|0;g=o>>>16;h=h+1+g|0;d=(c[a>>2]|0)+(O(c[q>>2]|0,f)|0)+(h<<2)|0;g=o-(g<<16)|0}c[b>>2]=c[d>>2]&16777215;if(!i)break a;else{b=b+4|0;g=g+u|0;i=i+-1|0}}}else{d=0;g=65536;h=-1;o=i}while(1){if((g|0)>65535){n=g+-65536|0;g=n>>>16;h=h+1+g|0;d=(c[a>>2]|0)+(O(c[q>>2]|0,f)|0)+(h<<2)|0;g=n-(g<<16)|0}n=c[d>>2]|0;k=n>>>16&255;m=n>>>8&255;n=n&255;i=c[b>>2]|0;l=i>>>16&255;j=i>>>8&255;i=i&255;switch(s&127){case 64:{l=((O(l,k)|0)>>>0)/255|0;j=((O(j,m)|0)>>>0)/255|0;i=((O(i,n)|0)>>>0)/255|0;break}case 32:{i=i+n|0;j=j+m|0;l=l+k|0;l=l>>>0<255?l:255;j=j>>>0<255?j:255;i=i>>>0<255?i:255;break}default:{}}c[b>>2]=j<<8|i|l<<16;if(!o)break a;else{b=b+4|0;g=g+u|0;o=o+-1|0}}}while(0);b=p+(c[w>>2]|0)|0;p=c[x>>2]|0;c[x>>2]=p+-1;if(!p)break;e=e+y|0;p=b;d=c[t>>2]|0}c[v>>2]=b;return}function wF(a){a=a|0;var b=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;b=c[a+52>>2]|0;k=d[a+60>>0]|0;l=d[a+61>>0]|0;j=d[a+62>>0]|0;m=a+28|0;q=c[m>>2]|0;g=q+-1|0;c[m>>2]=g;if(!q)return;q=a+20|0;n=a+24|0;o=a+12|0;p=a+32|0;f=c[a>>2]|0;e=c[q>>2]|0;if(!(b&1)){h=f;i=e;b=e;e=f;while(1){f=c[n>>2]|0;if(!f)f=g;else{while(1){f=f+-1|0;c[b>>2]=c[e>>2]&16777215;if(!f)break;else{b=b+4|0;e=e+4|0}}f=c[m>>2]|0}e=h+(c[o>>2]|0)|0;b=i+(c[p>>2]|0)|0;g=f+-1|0;c[m>>2]=g;if(!f)break;else{h=e;i=b}}}else{h=f;i=e;b=e;e=f;while(1){f=c[n>>2]|0;if(!f)f=g;else{while(1){f=f+-1|0;g=c[e>>2]|0;c[b>>2]=(((O(g>>>8&255,l)|0)>>>0)/255|0)<<8|(((O(g&255,k)|0)>>>0)/255|0)|(((O(g>>>16&255,j)|0)>>>0)/255|0)<<16;if(!f)break;else{b=b+4|0;e=e+4|0}}f=c[m>>2]|0}e=h+(c[o>>2]|0)|0;b=i+(c[p>>2]|0)|0;g=f+-1|0;c[m>>2]=g;if(!f)break;else{h=e;i=b}}}c[a>>2]=e;c[q>>2]=b;return}function xF(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;b=c[a+52>>2]|0;u=d[a+60>>0]|0;v=d[a+61>>0]|0;n=d[a+62>>0]|0;o=a+28|0;t=c[o>>2]|0;p=(c[a+8>>2]<<16|0)/(t|0)|0;q=a+24|0;e=c[q>>2]|0;r=(c[a+4>>2]<<16|0)/(e|0)|0;c[o>>2]=t+-1;if(!t)return;s=a+20|0;t=a+32|0;l=(b&1|0)==0;m=a+12|0;k=c[s>>2]|0;f=0;g=0;h=k;while(1){if((f|0)>65535){f=f+-65536|0;j=f>>>16;f=f-(j<<16)|0;g=g+1+j|0}i=e+-1|0;if(e|0)if(l){j=h;b=0;e=65536;h=-1;while(1){if((e|0)>65535){w=e+-65536|0;e=w>>>16;h=h+1+e|0;b=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(h<<2)|0;e=w-(e<<16)|0}c[j>>2]=c[b>>2]&16777215;if(!i)break;else{j=j+4|0;e=e+r|0;i=i+-1|0}}}else{j=h;b=0;e=65536;h=-1;while(1){if((e|0)>65535){w=e+-65536|0;e=w>>>16;h=h+1+e|0;b=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(h<<2)|0;e=w-(e<<16)|0}w=c[b>>2]|0;c[j>>2]=(((O(w>>>16&255,n)|0)>>>0)/255|0)<<16|(((O(w>>>8&255,v)|0)>>>0)/255|0)<<8|(((O(w&255,u)|0)>>>0)/255|0);if(!i)break;else{j=j+4|0;e=e+r|0;i=i+-1|0}}}b=k+(c[t>>2]|0)|0;w=c[o>>2]|0;c[o>>2]=w+-1;if(!w)break;f=f+p|0;h=b;e=c[q>>2]|0;k=b}c[s>>2]=b;return}function yF(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,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=c[b+52>>2]|0;A=d[b+60>>0]|0;B=d[b+61>>0]|0;t=d[b+62>>0]|0;e=a[b+63>>0]|0;u=b+28|0;z=c[u>>2]|0;c[u>>2]=z+-1;if(!z)return;v=b+20|0;w=b+24|0;x=b+12|0;y=b+32|0;z=(f&1|0)==0;r=(f&2|0)==0?255:e&255;s=(f&48|0)!=0&(r|0)!=255;q=f&112;p=r^255;f=c[b>>2]|0;e=c[v>>2]|0;n=f;o=e;while(1){m=c[w>>2]|0;g=m+-1|0;a:do if(m|0)if(z){m=g;while(1){k=c[f>>2]|0;i=k>>>16&255;j=k>>>8&255;k=k&255;g=c[e>>2]|0;l=g>>>16&255;h=g>>>8&255;g=g&255;if(s){i=((O(i,r)|0)>>>0)/255|0;j=((O(j,r)|0)>>>0)/255|0;k=((O(k,r)|0)>>>0)/255|0}switch(q&127){case 16:{i=i+(((O(l,p)|0)>>>0)/255|0)|0;h=j+(((O(h,p)|0)>>>0)/255|0)|0;g=k+(((O(g,p)|0)>>>0)/255|0)|0;break}case 32:{g=k+g|0;h=j+h|0;i=i+l|0;i=i>>>0<255?i:255;h=h>>>0<255?h:255;g=g>>>0<255?g:255;break}case 64:{i=((O(i,l)|0)>>>0)/255|0;h=((O(j,h)|0)>>>0)/255|0;g=((O(k,g)|0)>>>0)/255|0;break}default:i=l}c[e>>2]=h<<8|g|i<<16;if(!m)break a;else{e=e+4|0;f=f+4|0;m=m+-1|0}}}else{m=g;while(1){i=c[f>>2]|0;g=c[e>>2]|0;l=g>>>16&255;h=g>>>8&255;g=g&255;k=((O(i&255,A)|0)>>>0)/255|0;j=((O(i>>>8&255,B)|0)>>>0)/255|0;i=((O(i>>>16&255,t)|0)>>>0)/255|0;if(s){i=((O(i,r)|0)>>>0)/255|0;j=((O(j,r)|0)>>>0)/255|0;k=((O(k,r)|0)>>>0)/255|0}switch(q&127){case 16:{i=i+(((O(l,p)|0)>>>0)/255|0)|0;h=j+(((O(h,p)|0)>>>0)/255|0)|0;g=k+(((O(g,p)|0)>>>0)/255|0)|0;break}case 32:{g=k+g|0;h=j+h|0;i=i+l|0;i=i>>>0<255?i:255;h=h>>>0<255?h:255;g=g>>>0<255?g:255;break}case 64:{i=((O(i,l)|0)>>>0)/255|0;h=((O(j,h)|0)>>>0)/255|0;g=((O(k,g)|0)>>>0)/255|0;break}default:i=l}c[e>>2]=h<<8|g|i<<16;if(!m)break a;else{e=e+4|0;f=f+4|0;m=m+-1|0}}}while(0);f=n+(c[x>>2]|0)|0;e=o+(c[y>>2]|0)|0;o=c[u>>2]|0;c[u>>2]=o+-1;if(!o)break;else{n=f;o=e}}c[b>>2]=f;c[v>>2]=e;return}function zF(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,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=c[b+52>>2]|0;F=d[b+60>>0]|0;G=d[b+61>>0]|0;x=d[b+62>>0]|0;e=a[b+63>>0]|0;y=b+28|0;E=c[y>>2]|0;z=(c[b+8>>2]<<16|0)/(E|0)|0;A=b+24|0;h=c[A>>2]|0;B=(c[b+4>>2]<<16|0)/(h|0)|0;g=E+-1|0;c[y>>2]=g;if(!E)return;C=b+20|0;D=b+32|0;E=(f&1|0)==0;v=(f&2|0)==0?255:e&255;w=(f&48|0)!=0&(v|0)!=255;u=f&112;s=v^255;t=b+12|0;f=c[C>>2]|0;i=0;j=0;r=f;e=g;while(1){if((i|0)>65535){i=i+-65536|0;q=i>>>16;i=i-(q<<16)|0;q=j+1+q|0}else q=j;if(h){e=0;g=65536;j=-1;while(1){h=h+-1|0;if((g|0)>65535){p=g+-65536|0;g=p>>>16;j=j+1+g|0;e=(c[b>>2]|0)+(O(c[t>>2]|0,q)|0)+(j<<2)|0;g=p-(g<<16)|0}n=c[e>>2]|0;m=n>>>16&255;o=n>>>8&255;n=n&255;k=c[f>>2]|0;p=k>>>16&255;l=k>>>8&255;k=k&255;if(!E){n=((O(n,F)|0)>>>0)/255|0;o=((O(o,G)|0)>>>0)/255|0;m=((O(m,x)|0)>>>0)/255|0}if(w){n=((O(n,v)|0)>>>0)/255|0;o=((O(o,v)|0)>>>0)/255|0;m=((O(m,v)|0)>>>0)/255|0}switch(u&127){case 16:{m=m+(((O(p,s)|0)>>>0)/255|0)|0;l=o+(((O(l,s)|0)>>>0)/255|0)|0;k=n+(((O(k,s)|0)>>>0)/255|0)|0;break}case 32:{k=n+k|0;l=o+l|0;m=m+p|0;m=m>>>0<255?m:255;l=l>>>0<255?l:255;k=k>>>0<255?k:255;break}case 64:{m=((O(m,p)|0)>>>0)/255|0;l=((O(o,l)|0)>>>0)/255|0;k=((O(n,k)|0)>>>0)/255|0;break}default:m=p}c[f>>2]=l<<8|k|m<<16;if(!h)break;else{f=f+4|0;g=g+B|0}}e=c[y>>2]|0}g=r+(c[D>>2]|0)|0;f=e+-1|0;c[y>>2]=f;if(!e)break;i=i+z|0;j=q;r=g;e=f;f=g;h=c[A>>2]|0}c[C>>2]=g;return}function AF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=a+28|0;o=c[p>>2]|0;q=(c[a+8>>2]<<16|0)/(o|0)|0;k=a+24|0;b=c[k>>2]|0;l=(c[a+4>>2]<<16|0)/(b|0)|0;d=o+-1|0;c[p>>2]=d;if(!o)return;m=a+20|0;n=a+32|0;o=a+12|0;e=c[m>>2]|0;f=0;g=0;j=e;while(1){if((g|0)>65535){g=g+-65536|0;i=g>>>16;h=f+1+i|0;i=g-(i<<16)|0}else{h=f;i=g}if(!b)b=d;else{d=0;f=-1;g=65536;while(1){b=b+-1|0;if((g|0)>65535){r=g+-65536|0;g=r>>>16;f=f+1+g|0;d=(c[a>>2]|0)+(O(c[o>>2]|0,h)|0)+(f<<2)|0;g=r-(g<<16)|0}r=c[d>>2]|0;c[e>>2]=r&65280|r<<16|r>>>16&255|-16777216;if(!b)break;else{e=e+4|0;g=g+l|0}}b=c[p>>2]|0}e=j+(c[n>>2]|0)|0;d=b+-1|0;c[p>>2]=d;if(!b)break;f=h;g=i+q|0;b=c[k>>2]|0;j=e}c[m>>2]=e;return}function BF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;b=c[a+52>>2]|0;r=a+28|0;u=c[r>>2]|0;c[r>>2]=u+-1;if(!u)return;s=a+20|0;t=a+24|0;u=a+12|0;q=a+32|0;p=b&112;m=(p&127)==16;d=c[a>>2]|0;e=c[s>>2]|0;n=d;o=e;while(1){l=c[t>>2]|0;b=l+-1|0;a:do if(l|0){if(m)while(1){l=c[d>>2]|0;c[e>>2]=l&65280|l<<16|l>>>16&255|-16777216;if(!b)break a;else{e=e+4|0;d=d+4|0;b=b+-1|0}}while(1){k=c[d>>2]|0;h=k>>>16&255;j=k>>>8&255;k=k&255;l=c[e>>2]|0;f=l>>>16&255;g=l>>>8&255;i=l&255;l=l&-16777216;switch(p&127){case 64:{i=((O(h,i)|0)>>>0)/255|0;g=((O(g,j)|0)>>>0)/255|0;f=((O(f,k)|0)>>>0)/255|0;break}case 32:{f=f+k|0;g=g+j|0;i=h+i|0;i=i>>>0<255?i:255;g=g>>>0<255?g:255;f=f>>>0<255?f:255;break}default:{}}c[e>>2]=g<<8|f<<16|i|l;if(!b)break a;else{e=e+4|0;d=d+4|0;b=b+-1|0}}}while(0);d=n+(c[u>>2]|0)|0;b=o+(c[q>>2]|0)|0;o=c[r>>2]|0;c[r>>2]=o+-1;if(!o)break;else{n=d;o=b;e=b}}c[a>>2]=d;c[s>>2]=b;return}function CF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;b=c[a+52>>2]|0;y=a+28|0;x=c[y>>2]|0;z=(c[a+8>>2]<<16|0)/(x|0)|0;u=a+24|0;d=c[u>>2]|0;v=(c[a+4>>2]<<16|0)/(d|0)|0;c[y>>2]=x+-1;if(!x)return;w=a+20|0;x=a+32|0;t=b&112;r=a+12|0;s=(t&127)==16;b=c[w>>2]|0;e=0;f=0;q=b;while(1){if((e|0)>65535){e=e+-65536|0;p=e>>>16;e=e-(p<<16)|0;f=f+1+p|0}i=d+-1|0;a:do if(d|0){if(s){d=0;g=65536;h=-1;while(1){if((g|0)>65535){p=g+-65536|0;g=p>>>16;h=h+1+g|0;d=(c[a>>2]|0)+(O(c[r>>2]|0,f)|0)+(h<<2)|0;g=p-(g<<16)|0}p=c[d>>2]|0;c[b>>2]=p&65280|p<<16|p>>>16&255|-16777216;if(!i)break a;else{b=b+4|0;g=g+v|0;i=i+-1|0}}}else{d=0;g=65536;h=-1}while(1){if((g|0)>65535){p=g+-65536|0;g=p>>>16;h=h+1+g|0;d=(c[a>>2]|0)+(O(c[r>>2]|0,f)|0)+(h<<2)|0;g=p-(g<<16)|0}o=c[d>>2]|0;l=o>>>16&255;n=o>>>8&255;o=o&255;p=c[b>>2]|0;j=p>>>16&255;k=p>>>8&255;m=p&255;p=p&-16777216;switch(t&127){case 64:{m=((O(l,m)|0)>>>0)/255|0;k=((O(k,n)|0)>>>0)/255|0;j=((O(j,o)|0)>>>0)/255|0;break}case 32:{j=j+o|0;k=k+n|0;m=l+m|0;m=m>>>0<255?m:255;k=k>>>0<255?k:255;j=j>>>0<255?j:255;break}default:{}}c[b>>2]=k<<8|j<<16|m|p;if(!i)break a;else{b=b+4|0;g=g+v|0;i=i+-1|0}}}while(0);b=q+(c[x>>2]|0)|0;q=c[y>>2]|0;c[y>>2]=q+-1;if(!q)break;e=e+z|0;q=b;d=c[u>>2]|0}c[w>>2]=b;return}function DF(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;f=c[b+52>>2]|0;l=d[b+60>>0]|0;m=d[b+61>>0]|0;k=d[b+62>>0]|0;e=a[b+63>>0]|0;o=b+28|0;s=c[o>>2]|0;h=s+-1|0;c[o>>2]=h;if(!s)return;s=b+20|0;p=b+24|0;q=b+12|0;r=b+32|0;n=(f&2|0)==0?-16777216:(e&255)<<24;g=c[b>>2]|0;e=c[s>>2]|0;if(!(f&1)){i=g;j=e;f=g;while(1){g=c[p>>2]|0;if(!g)g=h;else{while(1){g=g+-1|0;m=c[f>>2]|0;c[e>>2]=m<<16&16711680|n|m&65280|m>>>16&255;if(!g)break;else{e=e+4|0;f=f+4|0}}g=c[o>>2]|0}f=i+(c[q>>2]|0)|0;e=j+(c[r>>2]|0)|0;h=g+-1|0;c[o>>2]=h;if(!g)break;else{i=f;j=e}}}else{i=g;j=e;f=g;while(1){g=c[p>>2]|0;if(!g)g=h;else{while(1){g=g+-1|0;h=c[f>>2]|0;c[e>>2]=(((O(h&255,l)|0)>>>0)/255|0)<<16|n|(((O(h>>>8&255,m)|0)>>>0)/255|0)<<8|(((O(h>>>16&255,k)|0)>>>0)/255|0);if(!g)break;else{e=e+4|0;f=f+4|0}}g=c[o>>2]|0}f=i+(c[q>>2]|0)|0;e=j+(c[r>>2]|0)|0;h=g+-1|0;c[o>>2]=h;if(!g)break;else{i=f;j=e}}}c[b>>2]=f;c[s>>2]=e;return}function EF(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;f=c[b+52>>2]|0;w=d[b+60>>0]|0;x=d[b+61>>0]|0;o=d[b+62>>0]|0;e=a[b+63>>0]|0;p=b+28|0;v=c[p>>2]|0;q=(c[b+8>>2]<<16|0)/(v|0)|0;r=b+24|0;g=c[r>>2]|0;s=(c[b+4>>2]<<16|0)/(g|0)|0;c[p>>2]=v+-1;if(!v)return;t=b+20|0;u=b+32|0;v=(f&1|0)==0;m=(f&2|0)==0?-16777216:(e&255)<<24;n=b+12|0;e=c[t>>2]|0;f=0;h=0;l=e;while(1){if((f|0)>65535){f=f+-65536|0;k=f>>>16;f=f-(k<<16)|0;h=h+1+k|0}k=g+-1|0;if(g|0)if(v){g=0;i=65536;j=-1;while(1){if((i|0)>65535){y=i+-65536|0;i=y>>>16;j=j+1+i|0;g=(c[b>>2]|0)+(O(c[n>>2]|0,h)|0)+(j<<2)|0;i=y-(i<<16)|0}y=c[g>>2]|0;c[e>>2]=y&65280|m|y>>>16&255|y<<16&16711680;if(!k)break;else{e=e+4|0;i=i+s|0;k=k+-1|0}}}else{g=0;i=65536;j=-1;while(1){if((i|0)>65535){y=i+-65536|0;i=y>>>16;j=j+1+i|0;g=(c[b>>2]|0)+(O(c[n>>2]|0,h)|0)+(j<<2)|0;i=y-(i<<16)|0}y=c[g>>2]|0;c[e>>2]=(((O(y>>>8&255,x)|0)>>>0)/255|0)<<8|m|(((O(y>>>16&255,o)|0)>>>0)/255|0)|(((O(y&255,w)|0)>>>0)/255|0)<<16;if(!k)break;else{e=e+4|0;i=i+s|0;k=k+-1|0}}}e=l+(c[u>>2]|0)|0;y=c[p>>2]|0;c[p>>2]=y+-1;if(!y)break;f=f+q|0;l=e;g=c[r>>2]|0}c[t>>2]=e;return}function FF(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;f=c[b+52>>2]|0;B=d[b+60>>0]|0;C=d[b+61>>0]|0;u=d[b+62>>0]|0;e=a[b+63>>0]|0;v=b+28|0;A=c[v>>2]|0;g=A+-1|0;c[v>>2]=g;if(!A)return;w=b+20|0;x=b+24|0;y=b+12|0;z=b+32|0;A=(f&1|0)==0;s=(f&2|0)==0?255:e&255;t=(f&48|0)!=0&(s|0)!=255;r=f&112;q=s^255;o=c[b>>2]|0;p=c[w>>2]|0;e=p;i=o;while(1){f=c[x>>2]|0;if(f){while(1){f=f+-1|0;l=c[i>>2]|0;j=l>>>16&255;k=l>>>8&255;l=l&255;m=c[e>>2]|0;g=m>>>16&255;h=m>>>8&255;n=m&255;m=m>>>24;if(!A){j=((O(j,u)|0)>>>0)/255|0;k=((O(k,C)|0)>>>0)/255|0;l=((O(l,B)|0)>>>0)/255|0}if(t){j=((O(j,s)|0)>>>0)/255|0;k=((O(k,s)|0)>>>0)/255|0;l=((O(l,s)|0)>>>0)/255|0}switch(r&127){case 16:{m=(((O(m,q)|0)>>>0)/255|0)+s|0;j=j+(((O(n,q)|0)>>>0)/255|0)|0;h=k+(((O(h,q)|0)>>>0)/255|0)|0;g=l+(((O(g,q)|0)>>>0)/255|0)|0;break}case 32:{g=l+g|0;h=k+h|0;j=j+n|0;j=j>>>0<255?j:255;h=h>>>0<255?h:255;g=g>>>0<255?g:255;break}case 64:{j=((O(j,n)|0)>>>0)/255|0;h=((O(k,h)|0)>>>0)/255|0;g=((O(l,g)|0)>>>0)/255|0;break}default:j=n}c[e>>2]=h<<8|g<<16|j|m<<24;if(!f)break;else{e=e+4|0;i=i+4|0}}g=c[v>>2]|0}f=o+(c[y>>2]|0)|0;h=p+(c[z>>2]|0)|0;e=g+-1|0;c[v>>2]=e;if(!g)break;else{g=e;e=h;i=f;o=f;p=h}}c[b>>2]=f;c[w>>2]=h;return}function GF(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;f=c[b+52>>2]|0;G=d[b+60>>0]|0;H=d[b+61>>0]|0;y=d[b+62>>0]|0;e=a[b+63>>0]|0;z=b+28|0;F=c[z>>2]|0;A=(c[b+8>>2]<<16|0)/(F|0)|0;B=b+24|0;h=c[B>>2]|0;C=(c[b+4>>2]<<16|0)/(h|0)|0;g=F+-1|0;c[z>>2]=g;if(!F)return;D=b+20|0;E=b+32|0;F=(f&1|0)==0;w=(f&2|0)==0?255:e&255;x=(f&48|0)!=0&(w|0)!=255;v=f&112;t=w^255;u=b+12|0;f=c[D>>2]|0;i=0;j=0;s=f;e=g;while(1){if((i|0)>65535){i=i+-65536|0;r=i>>>16;i=i-(r<<16)|0;r=j+1+r|0}else r=j;if(h){e=0;g=65536;j=-1;while(1){h=h+-1|0;if((g|0)>65535){q=g+-65536|0;g=q>>>16;j=j+1+g|0;e=(c[b>>2]|0)+(O(c[u>>2]|0,r)|0)+(j<<2)|0;g=q-(g<<16)|0}m=c[e>>2]|0;o=m>>>16&255;p=m>>>8&255;m=m&255;q=c[f>>2]|0;k=q>>>16&255;l=q>>>8&255;n=q&255;q=q>>>24;if(!F){m=((O(m,G)|0)>>>0)/255|0;p=((O(p,H)|0)>>>0)/255|0;o=((O(o,y)|0)>>>0)/255|0}if(x){m=((O(m,w)|0)>>>0)/255|0;p=((O(p,w)|0)>>>0)/255|0;o=((O(o,w)|0)>>>0)/255|0}switch(v&127){case 16:{q=(((O(q,t)|0)>>>0)/255|0)+w|0;n=o+(((O(n,t)|0)>>>0)/255|0)|0;l=p+(((O(l,t)|0)>>>0)/255|0)|0;k=m+(((O(k,t)|0)>>>0)/255|0)|0;break}case 32:{k=m+k|0;l=p+l|0;n=o+n|0;n=n>>>0<255?n:255;l=l>>>0<255?l:255;k=k>>>0<255?k:255;break}case 64:{n=((O(o,n)|0)>>>0)/255|0;l=((O(p,l)|0)>>>0)/255|0;k=((O(m,k)|0)>>>0)/255|0;break}default:{}}c[f>>2]=l<<8|k<<16|n|q<<24;if(!h)break;else{f=f+4|0;g=g+C|0}}e=c[z>>2]|0}g=s+(c[E>>2]|0)|0;f=e+-1|0;c[z>>2]=f;if(!e)break;i=i+A|0;j=r;s=g;e=f;f=g;h=c[B>>2]|0}c[D>>2]=g;return}function HF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=a+28|0;o=c[p>>2]|0;q=(c[a+8>>2]<<16|0)/(o|0)|0;k=a+24|0;b=c[k>>2]|0;l=(c[a+4>>2]<<16|0)/(b|0)|0;d=o+-1|0;c[p>>2]=d;if(!o)return;m=a+20|0;n=a+32|0;o=a+12|0;e=c[m>>2]|0;f=0;g=0;j=e;while(1){if((g|0)>65535){g=g+-65536|0;i=g>>>16;h=f+1+i|0;i=g-(i<<16)|0}else{h=f;i=g}if(!b)b=d;else{d=0;f=-1;g=65536;while(1){b=b+-1|0;if((g|0)>65535){r=g+-65536|0;g=r>>>16;f=f+1+g|0;d=(c[a>>2]|0)+(O(c[o>>2]|0,h)|0)+(f<<2)|0;g=r-(g<<16)|0}c[e>>2]=c[d>>2]&16777215;if(!b)break;else{e=e+4|0;g=g+l|0}}b=c[p>>2]|0}e=j+(c[n>>2]|0)|0;d=b+-1|0;c[p>>2]=d;if(!b)break;f=h;g=i+q|0;b=c[k>>2]|0;j=e}c[m>>2]=e;return}function IF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;b=c[a+52>>2]|0;r=a+28|0;u=c[r>>2]|0;c[r>>2]=u+-1;if(!u)return;s=a+20|0;t=a+24|0;u=a+12|0;p=a+32|0;q=(b&48|0)==0;o=b&112;d=c[a>>2]|0;b=c[s>>2]|0;m=d;n=b;while(1){l=c[t>>2]|0;e=l+-1|0;a:do if(l|0){if(q){l=e;while(1){h=c[d>>2]|0;k=h>>>16&255;j=h>>>8&255;i=h&255;g=c[b>>2]|0;e=g>>>16&255;f=g>>>8&255;g=g&255;switch(o&127){case 16:{h=h>>>24^255;g=i+(((O(h,g)|0)>>>0)/255|0)|0;f=j+(((O(f,h)|0)>>>0)/255|0)|0;e=k+(((O(e,h)|0)>>>0)/255|0)|0;break}case 32:{e=k+e|0;f=j+f|0;g=i+g|0;g=g>>>0<255?g:255;f=f>>>0<255?f:255;e=e>>>0<255?e:255;break}case 64:{g=((O(i,g)|0)>>>0)/255|0;f=((O(j,f)|0)>>>0)/255|0;e=((O(k,e)|0)>>>0)/255|0;break}default:{}}c[b>>2]=f<<8|e<<16|g;if(!l)break a;else{b=b+4|0;d=d+4|0;l=l+-1|0}}}else l=e;while(1){k=c[d>>2]|0;h=k>>>16&255;j=k>>>8&255;i=k&255;k=k>>>24;g=c[b>>2]|0;e=g>>>16&255;f=g>>>8&255;g=g&255;if((k|0)!=255){h=((O(h,k)|0)>>>0)/255|0;i=((O(i,k)|0)>>>0)/255|0;j=((O(j,k)|0)>>>0)/255|0}switch(o&127){case 16:{k=k^255;g=i+(((O(k,g)|0)>>>0)/255|0)|0;f=j+(((O(f,k)|0)>>>0)/255|0)|0;e=h+(((O(e,k)|0)>>>0)/255|0)|0;break}case 32:{e=h+e|0;f=j+f|0;g=i+g|0;g=g>>>0<255?g:255;f=f>>>0<255?f:255;e=e>>>0<255?e:255;break}case 64:{g=((O(i,g)|0)>>>0)/255|0;f=((O(j,f)|0)>>>0)/255|0;e=((O(h,e)|0)>>>0)/255|0;break}default:{}}c[b>>2]=f<<8|e<<16|g;if(!l)break a;else{b=b+4|0;d=d+4|0;l=l+-1|0}}}while(0);d=m+(c[u>>2]|0)|0;b=n+(c[p>>2]|0)|0;n=c[r>>2]|0;c[r>>2]=n+-1;if(!n)break;else{m=d;n=b}}c[a>>2]=d;c[s>>2]=b;return}function JF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;b=c[a+52>>2]|0;y=a+28|0;x=c[y>>2]|0;z=(c[a+8>>2]<<16|0)/(x|0)|0;t=a+24|0;e=c[t>>2]|0;u=(c[a+4>>2]<<16|0)/(e|0)|0;d=x+-1|0;c[y>>2]=d;if(!x)return;v=a+20|0;w=a+32|0;x=(b&48|0)!=0;s=b&112;r=a+12|0;p=c[v>>2]|0;g=0;h=0;b=p;while(1){if((g|0)>65535){g=g+-65536|0;q=g>>>16;g=g-(q<<16)|0;q=h+1+q|0}else q=h;if(!e)b=d;else{d=0;f=65536;h=-1;while(1){e=e+-1|0;if((f|0)>65535){o=f+-65536|0;f=o>>>16;h=h+1+f|0;d=(c[a>>2]|0)+(O(c[r>>2]|0,q)|0)+(h<<2)|0;f=o-(f<<16)|0}o=c[d>>2]|0;m=o>>>16&255;n=o>>>8&255;l=o&255;o=o>>>24;k=c[b>>2]|0;i=k>>>16&255;j=k>>>8&255;k=k&255;if(x&(o|0)!=255){m=((O(m,o)|0)>>>0)/255|0;n=((O(n,o)|0)>>>0)/255|0;l=((O(l,o)|0)>>>0)/255|0}switch(s&127){case 16:{o=o^255;k=l+(((O(o,k)|0)>>>0)/255|0)|0;j=n+(((O(j,o)|0)>>>0)/255|0)|0;i=m+(((O(i,o)|0)>>>0)/255|0)|0;break}case 32:{i=m+i|0;j=n+j|0;k=l+k|0;k=k>>>0<255?k:255;j=j>>>0<255?j:255;i=i>>>0<255?i:255;break}case 64:{k=((O(l,k)|0)>>>0)/255|0;j=((O(n,j)|0)>>>0)/255|0;i=((O(m,i)|0)>>>0)/255|0;break}default:{}}c[b>>2]=j<<8|i<<16|k;if(!e)break;else{b=b+4|0;f=f+u|0}}b=c[y>>2]|0}f=p+(c[w>>2]|0)|0;d=b+-1|0;c[y>>2]=d;if(!b)break;g=g+z|0;h=q;b=f;e=c[t>>2]|0;p=f}c[v>>2]=f;return}function KF(a){a=a|0;var b=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;b=c[a+52>>2]|0;k=d[a+60>>0]|0;l=d[a+61>>0]|0;j=d[a+62>>0]|0;m=a+28|0;q=c[m>>2]|0;g=q+-1|0;c[m>>2]=g;if(!q)return;q=a+20|0;n=a+24|0;o=a+12|0;p=a+32|0;f=c[a>>2]|0;e=c[q>>2]|0;if(!(b&1)){h=f;i=e;b=e;e=f;while(1){f=c[n>>2]|0;if(!f)f=g;else{while(1){f=f+-1|0;c[b>>2]=c[e>>2]&16777215;if(!f)break;else{b=b+4|0;e=e+4|0}}f=c[m>>2]|0}e=h+(c[o>>2]|0)|0;b=i+(c[p>>2]|0)|0;g=f+-1|0;c[m>>2]=g;if(!f)break;else{h=e;i=b}}}else{h=f;i=e;b=e;e=f;while(1){f=c[n>>2]|0;if(!f)f=g;else{while(1){f=f+-1|0;g=c[e>>2]|0;c[b>>2]=(((O(g>>>8&255,l)|0)>>>0)/255|0)<<8|(((O(g>>>16&255,k)|0)>>>0)/255|0)<<16|(((O(g&255,j)|0)>>>0)/255|0);if(!f)break;else{b=b+4|0;e=e+4|0}}f=c[m>>2]|0}e=h+(c[o>>2]|0)|0;b=i+(c[p>>2]|0)|0;g=f+-1|0;c[m>>2]=g;if(!f)break;else{h=e;i=b}}}c[a>>2]=e;c[q>>2]=b;return}function LF(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;b=c[a+52>>2]|0;u=d[a+60>>0]|0;v=d[a+61>>0]|0;n=d[a+62>>0]|0;o=a+28|0;t=c[o>>2]|0;p=(c[a+8>>2]<<16|0)/(t|0)|0;q=a+24|0;e=c[q>>2]|0;r=(c[a+4>>2]<<16|0)/(e|0)|0;c[o>>2]=t+-1;if(!t)return;s=a+20|0;t=a+32|0;l=(b&1|0)==0;m=a+12|0;k=c[s>>2]|0;f=0;g=0;h=k;while(1){if((f|0)>65535){f=f+-65536|0;j=f>>>16;f=f-(j<<16)|0;g=g+1+j|0}i=e+-1|0;if(e|0)if(l){j=h;b=0;e=65536;h=-1;while(1){if((e|0)>65535){w=e+-65536|0;e=w>>>16;h=h+1+e|0;b=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(h<<2)|0;e=w-(e<<16)|0}c[j>>2]=c[b>>2]&16777215;if(!i)break;else{j=j+4|0;e=e+r|0;i=i+-1|0}}}else{j=h;b=0;e=65536;h=-1;while(1){if((e|0)>65535){w=e+-65536|0;e=w>>>16;h=h+1+e|0;b=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(h<<2)|0;e=w-(e<<16)|0}w=c[b>>2]|0;c[j>>2]=((O(w&255,n)|0)>>>0)/255|0|(((O(w>>>8&255,v)|0)>>>0)/255|0)<<8|(((O(w>>>16&255,u)|0)>>>0)/255|0)<<16;if(!i)break;else{j=j+4|0;e=e+r|0;i=i+-1|0}}}b=k+(c[t>>2]|0)|0;w=c[o>>2]|0;c[o>>2]=w+-1;if(!w)break;f=f+p|0;h=b;e=c[q>>2]|0;k=b}c[s>>2]=b;return}function MF(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;b=c[a+52>>2]|0;A=d[a+60>>0]|0;B=d[a+61>>0]|0;q=d[a+62>>0]|0;r=d[a+63>>0]|0;s=a+28|0;z=c[s>>2]|0;e=z+-1|0;c[s>>2]=e;if(!z)return;t=a+20|0;u=a+24|0;v=a+12|0;w=a+32|0;x=(b&1|0)==0;y=(b&2|0)==0;z=(b&48|0)!=0;p=b&112;n=c[a>>2]|0;o=c[t>>2]|0;h=o;i=n;while(1){b=c[u>>2]|0;if(!b)b=e;else{m=b;while(1){m=m+-1|0;l=c[i>>2]|0;k=l>>>16&255;j=l>>>8&255;g=l&255;l=l>>>24;f=c[h>>2]|0;b=f>>>16&255;e=f>>>8&255;f=f&255;if(!x){g=((O(g,q)|0)>>>0)/255|0;j=((O(j,B)|0)>>>0)/255|0;k=((O(k,A)|0)>>>0)/255|0}C=((O(l,r)|0)>>>0)/255|0;l=y?l:C;if(z&l>>>0<255){g=((O(g,l)|0)>>>0)/255|0;j=((O(j,l)|0)>>>0)/255|0;k=((O(k,l)|0)>>>0)/255|0}switch(p&127){case 16:{C=255-l|0;f=g+(((O(C,f)|0)>>>0)/255|0)|0;e=j+(((O(C,e)|0)>>>0)/255|0)|0;b=k+(((O(C,b)|0)>>>0)/255|0)|0;break}case 32:{b=k+b|0;e=j+e|0;f=g+f|0;f=f>>>0<255?f:255;e=e>>>0<255?e:255;b=b>>>0<255?b:255;break}case 64:{f=((O(g,f)|0)>>>0)/255|0;e=((O(j,e)|0)>>>0)/255|0;b=((O(k,b)|0)>>>0)/255|0;break}default:{}}c[h>>2]=e<<8|b<<16|f;if(!m)break;else{h=h+4|0;i=i+4|0}}b=c[s>>2]|0}f=n+(c[v>>2]|0)|0;g=o+(c[w>>2]|0)|0;e=b+-1|0;c[s>>2]=e;if(!b)break;else{h=g;i=f;n=f;o=g}}c[a>>2]=f;c[t>>2]=g;return}function NF(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;b=c[a+52>>2]|0;F=d[a+60>>0]|0;G=d[a+61>>0]|0;u=d[a+62>>0]|0;v=d[a+63>>0]|0;w=a+28|0;E=c[w>>2]|0;x=(c[a+8>>2]<<16|0)/(E|0)|0;y=a+24|0;f=c[y>>2]|0;z=(c[a+4>>2]<<16|0)/(f|0)|0;e=E+-1|0;c[w>>2]=e;if(!E)return;A=a+20|0;B=a+32|0;C=(b&1|0)==0;D=(b&2|0)==0;E=(b&48|0)!=0;t=b&112;s=a+12|0;q=c[A>>2]|0;g=0;h=0;r=q;b=e;e=q;while(1){if((g|0)>65535){p=g+-65536|0;q=p>>>16;p=p-(q<<16)|0;q=h+1+q|0}else{p=g;q=h}if(f){b=0;g=65536;h=-1;while(1){f=f+-1|0;if((g|0)>65535){o=g+-65536|0;g=o>>>16;h=h+1+g|0;b=(c[a>>2]|0)+(O(c[s>>2]|0,q)|0)+(h<<2)|0;g=o-(g<<16)|0}o=c[b>>2]|0;m=o>>>16&255;n=o>>>8&255;l=o&255;o=o>>>24;k=c[e>>2]|0;i=k>>>16&255;j=k>>>8&255;k=k&255;if(!C){m=((O(m,F)|0)>>>0)/255|0;n=((O(n,G)|0)>>>0)/255|0;l=((O(l,u)|0)>>>0)/255|0}H=((O(o,v)|0)>>>0)/255|0;o=D?o:H;if(E&o>>>0<255){m=((O(m,o)|0)>>>0)/255|0;n=((O(n,o)|0)>>>0)/255|0;l=((O(l,o)|0)>>>0)/255|0}switch(t&127){case 16:{H=255-o|0;k=l+(((O(H,k)|0)>>>0)/255|0)|0;j=n+(((O(H,j)|0)>>>0)/255|0)|0;i=m+(((O(H,i)|0)>>>0)/255|0)|0;break}case 32:{i=m+i|0;j=n+j|0;k=l+k|0;k=k>>>0<255?k:255;j=j>>>0<255?j:255;i=i>>>0<255?i:255;break}case 64:{k=((O(l,k)|0)>>>0)/255|0;j=((O(n,j)|0)>>>0)/255|0;i=((O(m,i)|0)>>>0)/255|0;break}default:{}}c[e>>2]=j<<8|i<<16|k;if(!f)break;else{e=e+4|0;g=g+z|0}}b=c[w>>2]|0}f=r+(c[B>>2]|0)|0;e=b+-1|0;c[w>>2]=e;if(!b)break;g=p+x|0;h=q;r=f;b=e;e=f;f=c[y>>2]|0}c[A>>2]=f;return}function OF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=a+28|0;o=c[p>>2]|0;q=(c[a+8>>2]<<16|0)/(o|0)|0;k=a+24|0;b=c[k>>2]|0;l=(c[a+4>>2]<<16|0)/(b|0)|0;d=o+-1|0;c[p>>2]=d;if(!o)return;m=a+20|0;n=a+32|0;o=a+12|0;e=c[m>>2]|0;f=0;g=0;j=e;while(1){if((g|0)>65535){g=g+-65536|0;i=g>>>16;h=f+1+i|0;i=g-(i<<16)|0}else{h=f;i=g}if(!b)b=d;else{d=0;f=-1;g=65536;while(1){b=b+-1|0;if((g|0)>65535){r=g+-65536|0;g=r>>>16;f=f+1+g|0;d=(c[a>>2]|0)+(O(c[o>>2]|0,h)|0)+(f<<2)|0;g=r-(g<<16)|0}r=c[d>>2]|0;c[e>>2]=r<<16&16711680|r&65280|r>>>16&255;if(!b)break;else{e=e+4|0;g=g+l|0}}b=c[p>>2]|0}e=j+(c[n>>2]|0)|0;d=b+-1|0;c[p>>2]=d;if(!b)break;f=h;g=i+q|0;b=c[k>>2]|0;j=e}c[m>>2]=e;return}function PF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;b=c[a+52>>2]|0;r=a+28|0;u=c[r>>2]|0;c[r>>2]=u+-1;if(!u)return;s=a+20|0;t=a+24|0;u=a+12|0;p=a+32|0;q=(b&48|0)==0;o=b&112;d=c[a>>2]|0;b=c[s>>2]|0;m=d;n=b;while(1){l=c[t>>2]|0;e=l+-1|0;a:do if(l|0){if(q){l=e;while(1){h=c[d>>2]|0;k=h>>>16&255;j=h>>>8&255;i=h&255;e=c[b>>2]|0;g=e>>>16&255;f=e>>>8&255;e=e&255;switch(o&127){case 16:{h=h>>>24^255;g=i+(((O(g,h)|0)>>>0)/255|0)|0;f=j+(((O(f,h)|0)>>>0)/255|0)|0;e=k+(((O(h,e)|0)>>>0)/255|0)|0;break}case 32:{e=k+e|0;f=j+f|0;g=i+g|0;g=g>>>0<255?g:255;f=f>>>0<255?f:255;e=e>>>0<255?e:255;break}case 64:{g=((O(i,g)|0)>>>0)/255|0;f=((O(j,f)|0)>>>0)/255|0;e=((O(k,e)|0)>>>0)/255|0;break}default:{}}c[b>>2]=f<<8|e|g<<16;if(!l)break a;else{b=b+4|0;d=d+4|0;l=l+-1|0}}}else l=e;while(1){k=c[d>>2]|0;h=k>>>16&255;j=k>>>8&255;i=k&255;k=k>>>24;e=c[b>>2]|0;g=e>>>16&255;f=e>>>8&255;e=e&255;if((k|0)!=255){h=((O(h,k)|0)>>>0)/255|0;i=((O(i,k)|0)>>>0)/255|0;j=((O(j,k)|0)>>>0)/255|0}switch(o&127){case 16:{k=k^255;g=i+(((O(g,k)|0)>>>0)/255|0)|0;f=j+(((O(f,k)|0)>>>0)/255|0)|0;e=h+(((O(k,e)|0)>>>0)/255|0)|0;break}case 32:{e=h+e|0;f=j+f|0;g=i+g|0;g=g>>>0<255?g:255;f=f>>>0<255?f:255;e=e>>>0<255?e:255;break}case 64:{g=((O(i,g)|0)>>>0)/255|0;f=((O(j,f)|0)>>>0)/255|0;e=((O(h,e)|0)>>>0)/255|0;break}default:{}}c[b>>2]=f<<8|e|g<<16;if(!l)break a;else{b=b+4|0;d=d+4|0;l=l+-1|0}}}while(0);d=m+(c[u>>2]|0)|0;b=n+(c[p>>2]|0)|0;n=c[r>>2]|0;c[r>>2]=n+-1;if(!n)break;else{m=d;n=b}}c[a>>2]=d;c[s>>2]=b;return}function QF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;b=c[a+52>>2]|0;y=a+28|0;x=c[y>>2]|0;z=(c[a+8>>2]<<16|0)/(x|0)|0;t=a+24|0;e=c[t>>2]|0;u=(c[a+4>>2]<<16|0)/(e|0)|0;d=x+-1|0;c[y>>2]=d;if(!x)return;v=a+20|0;w=a+32|0;x=(b&48|0)!=0;s=b&112;r=a+12|0;p=c[v>>2]|0;g=0;h=0;b=p;while(1){if((g|0)>65535){g=g+-65536|0;q=g>>>16;g=g-(q<<16)|0;q=h+1+q|0}else q=h;if(!e)b=d;else{d=0;f=65536;h=-1;while(1){e=e+-1|0;if((f|0)>65535){o=f+-65536|0;f=o>>>16;h=h+1+f|0;d=(c[a>>2]|0)+(O(c[r>>2]|0,q)|0)+(h<<2)|0;f=o-(f<<16)|0}o=c[d>>2]|0;m=o>>>16&255;n=o>>>8&255;l=o&255;o=o>>>24;i=c[b>>2]|0;k=i>>>16&255;j=i>>>8&255;i=i&255;if(x&(o|0)!=255){m=((O(m,o)|0)>>>0)/255|0;n=((O(n,o)|0)>>>0)/255|0;l=((O(l,o)|0)>>>0)/255|0}switch(s&127){case 16:{o=o^255;k=l+(((O(k,o)|0)>>>0)/255|0)|0;j=n+(((O(j,o)|0)>>>0)/255|0)|0;i=m+(((O(o,i)|0)>>>0)/255|0)|0;break}case 32:{i=m+i|0;j=n+j|0;k=l+k|0;k=k>>>0<255?k:255;j=j>>>0<255?j:255;i=i>>>0<255?i:255;break}case 64:{k=((O(l,k)|0)>>>0)/255|0;j=((O(n,j)|0)>>>0)/255|0;i=((O(m,i)|0)>>>0)/255|0;break}default:{}}c[b>>2]=j<<8|i|k<<16;if(!e)break;else{b=b+4|0;f=f+u|0}}b=c[y>>2]|0}f=p+(c[w>>2]|0)|0;d=b+-1|0;c[y>>2]=d;if(!b)break;g=g+z|0;h=q;b=f;e=c[t>>2]|0;p=f}c[v>>2]=f;return}function RF(a){a=a|0;var b=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;b=c[a+52>>2]|0;k=d[a+60>>0]|0;l=d[a+61>>0]|0;j=d[a+62>>0]|0;m=a+28|0;q=c[m>>2]|0;g=q+-1|0;c[m>>2]=g;if(!q)return;q=a+20|0;n=a+24|0;o=a+12|0;p=a+32|0;f=c[a>>2]|0;e=c[q>>2]|0;if(!(b&1)){h=f;i=e;b=e;e=f;while(1){f=c[n>>2]|0;if(!f)f=g;else{while(1){f=f+-1|0;l=c[e>>2]|0;c[b>>2]=l&65280|l>>>16&255|l<<16&16711680;if(!f)break;else{b=b+4|0;e=e+4|0}}f=c[m>>2]|0}e=h+(c[o>>2]|0)|0;b=i+(c[p>>2]|0)|0;g=f+-1|0;c[m>>2]=g;if(!f)break;else{h=e;i=b}}}else{h=f;i=e;b=e;e=f;while(1){f=c[n>>2]|0;if(!f)f=g;else{while(1){f=f+-1|0;g=c[e>>2]|0;c[b>>2]=(((O(g>>>8&255,l)|0)>>>0)/255|0)<<8|(((O(g>>>16&255,k)|0)>>>0)/255|0)|(((O(g&255,j)|0)>>>0)/255|0)<<16;if(!f)break;else{b=b+4|0;e=e+4|0}}f=c[m>>2]|0}e=h+(c[o>>2]|0)|0;b=i+(c[p>>2]|0)|0;g=f+-1|0;c[m>>2]=g;if(!f)break;else{h=e;i=b}}}c[a>>2]=e;c[q>>2]=b;return}function SF(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;b=c[a+52>>2]|0;u=d[a+60>>0]|0;v=d[a+61>>0]|0;n=d[a+62>>0]|0;o=a+28|0;t=c[o>>2]|0;p=(c[a+8>>2]<<16|0)/(t|0)|0;q=a+24|0;e=c[q>>2]|0;r=(c[a+4>>2]<<16|0)/(e|0)|0;c[o>>2]=t+-1;if(!t)return;s=a+20|0;t=a+32|0;l=(b&1|0)==0;m=a+12|0;b=c[s>>2]|0;f=0;g=0;k=b;while(1){if((f|0)>65535){f=f+-65536|0;j=f>>>16;f=f-(j<<16)|0;g=g+1+j|0}j=e+-1|0;if(e|0)if(l){e=0;h=65536;i=-1;while(1){if((h|0)>65535){w=h+-65536|0;h=w>>>16;i=i+1+h|0;e=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(i<<2)|0;h=w-(h<<16)|0}w=c[e>>2]|0;c[b>>2]=w<<16&16711680|w&65280|w>>>16&255;if(!j)break;else{b=b+4|0;h=h+r|0;j=j+-1|0}}}else{e=0;h=65536;i=-1;while(1){if((h|0)>65535){w=h+-65536|0;h=w>>>16;i=i+1+h|0;e=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(i<<2)|0;h=w-(h<<16)|0}w=c[e>>2]|0;c[b>>2]=(((O(w&255,n)|0)>>>0)/255|0)<<16|(((O(w>>>8&255,v)|0)>>>0)/255|0)<<8|(((O(w>>>16&255,u)|0)>>>0)/255|0);if(!j)break;else{b=b+4|0;h=h+r|0;j=j+-1|0}}}b=k+(c[t>>2]|0)|0;w=c[o>>2]|0;c[o>>2]=w+-1;if(!w)break;f=f+p|0;k=b;e=c[q>>2]|0}c[s>>2]=b;return}function TF(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;b=c[a+52>>2]|0;A=d[a+60>>0]|0;B=d[a+61>>0]|0;q=d[a+62>>0]|0;r=d[a+63>>0]|0;s=a+28|0;z=c[s>>2]|0;e=z+-1|0;c[s>>2]=e;if(!z)return;t=a+20|0;u=a+24|0;v=a+12|0;w=a+32|0;x=(b&1|0)==0;y=(b&2|0)==0;z=(b&48|0)!=0;p=b&112;n=c[a>>2]|0;o=c[t>>2]|0;h=o;i=n;while(1){b=c[u>>2]|0;if(!b)b=e;else{m=b;while(1){m=m+-1|0;l=c[i>>2]|0;k=l>>>16&255;j=l>>>8&255;g=l&255;l=l>>>24;b=c[h>>2]|0;f=b>>>16&255;e=b>>>8&255;b=b&255;if(!x){g=((O(g,q)|0)>>>0)/255|0;j=((O(j,B)|0)>>>0)/255|0;k=((O(k,A)|0)>>>0)/255|0}C=((O(l,r)|0)>>>0)/255|0;l=y?l:C;if(z&l>>>0<255){g=((O(g,l)|0)>>>0)/255|0;j=((O(j,l)|0)>>>0)/255|0;k=((O(k,l)|0)>>>0)/255|0}switch(p&127){case 16:{C=255-l|0;f=g+(((O(C,f)|0)>>>0)/255|0)|0;e=j+(((O(C,e)|0)>>>0)/255|0)|0;b=k+(((O(C,b)|0)>>>0)/255|0)|0;break}case 32:{b=k+b|0;e=j+e|0;f=g+f|0;f=f>>>0<255?f:255;e=e>>>0<255?e:255;b=b>>>0<255?b:255;break}case 64:{f=((O(g,f)|0)>>>0)/255|0;e=((O(j,e)|0)>>>0)/255|0;b=((O(k,b)|0)>>>0)/255|0;break}default:{}}c[h>>2]=e<<8|b|f<<16;if(!m)break;else{h=h+4|0;i=i+4|0}}b=c[s>>2]|0}f=n+(c[v>>2]|0)|0;g=o+(c[w>>2]|0)|0;e=b+-1|0;c[s>>2]=e;if(!b)break;else{h=g;i=f;n=f;o=g}}c[a>>2]=f;c[t>>2]=g;return}function UF(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;b=c[a+52>>2]|0;F=d[a+60>>0]|0;G=d[a+61>>0]|0;u=d[a+62>>0]|0;v=d[a+63>>0]|0;w=a+28|0;E=c[w>>2]|0;x=(c[a+8>>2]<<16|0)/(E|0)|0;y=a+24|0;f=c[y>>2]|0;z=(c[a+4>>2]<<16|0)/(f|0)|0;e=E+-1|0;c[w>>2]=e;if(!E)return;A=a+20|0;B=a+32|0;C=(b&1|0)==0;D=(b&2|0)==0;E=(b&48|0)!=0;t=b&112;s=a+12|0;q=c[A>>2]|0;g=0;h=0;r=q;b=e;e=q;while(1){if((g|0)>65535){p=g+-65536|0;q=p>>>16;p=p-(q<<16)|0;q=h+1+q|0}else{p=g;q=h}if(f){b=0;g=65536;h=-1;while(1){f=f+-1|0;if((g|0)>65535){o=g+-65536|0;g=o>>>16;h=h+1+g|0;b=(c[a>>2]|0)+(O(c[s>>2]|0,q)|0)+(h<<2)|0;g=o-(g<<16)|0}o=c[b>>2]|0;m=o>>>16&255;n=o>>>8&255;l=o&255;o=o>>>24;i=c[e>>2]|0;k=i>>>16&255;j=i>>>8&255;i=i&255;if(!C){m=((O(m,F)|0)>>>0)/255|0;n=((O(n,G)|0)>>>0)/255|0;l=((O(l,u)|0)>>>0)/255|0}H=((O(o,v)|0)>>>0)/255|0;o=D?o:H;if(E&o>>>0<255){m=((O(m,o)|0)>>>0)/255|0;n=((O(n,o)|0)>>>0)/255|0;l=((O(l,o)|0)>>>0)/255|0}switch(t&127){case 16:{H=255-o|0;k=l+(((O(H,k)|0)>>>0)/255|0)|0;j=n+(((O(H,j)|0)>>>0)/255|0)|0;i=m+(((O(H,i)|0)>>>0)/255|0)|0;break}case 32:{i=m+i|0;j=n+j|0;k=l+k|0;k=k>>>0<255?k:255;j=j>>>0<255?j:255;i=i>>>0<255?i:255;break}case 64:{k=((O(l,k)|0)>>>0)/255|0;j=((O(n,j)|0)>>>0)/255|0;i=((O(m,i)|0)>>>0)/255|0;break}default:{}}c[e>>2]=j<<8|i|k<<16;if(!f)break;else{e=e+4|0;g=g+z|0}}b=c[w>>2]|0}f=r+(c[B>>2]|0)|0;e=b+-1|0;c[w>>2]=e;if(!b)break;g=p+x|0;h=q;r=f;b=e;e=f;f=c[y>>2]|0}c[A>>2]=f;return}function VF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=a+28|0;o=c[p>>2]|0;q=(c[a+8>>2]<<16|0)/(o|0)|0;k=a+24|0;b=c[k>>2]|0;l=(c[a+4>>2]<<16|0)/(b|0)|0;d=o+-1|0;c[p>>2]=d;if(!o)return;m=a+20|0;n=a+32|0;o=a+12|0;e=c[m>>2]|0;f=0;g=0;j=e;while(1){if((g|0)>65535){g=g+-65536|0;i=g>>>16;h=f+1+i|0;i=g-(i<<16)|0}else{h=f;i=g}if(!b)b=d;else{d=0;f=-1;g=65536;while(1){b=b+-1|0;if((g|0)>65535){r=g+-65536|0;g=r>>>16;f=f+1+g|0;d=(c[a>>2]|0)+(O(c[o>>2]|0,h)|0)+(f<<2)|0;g=r-(g<<16)|0}c[e>>2]=c[d>>2];if(!b)break;else{e=e+4|0;g=g+l|0}}b=c[p>>2]|0}e=j+(c[n>>2]|0)|0;d=b+-1|0;c[p>>2]=d;if(!b)break;f=h;g=i+q|0;b=c[k>>2]|0;j=e}c[m>>2]=e;return}function WF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;b=c[a+52>>2]|0;s=a+28|0;v=c[s>>2]|0;c[s>>2]=v+-1;if(!v)return;t=a+20|0;u=a+24|0;v=a+12|0;q=a+32|0;r=(b&48|0)==0;p=b&112;d=c[a>>2]|0;b=c[t>>2]|0;n=d;o=b;while(1){m=c[u>>2]|0;e=m+-1|0;a:do if(m|0){if(r){m=e;while(1){h=c[d>>2]|0;l=h>>>16&255;k=h>>>8&255;j=h&255;h=h>>>24;i=c[b>>2]|0;e=i>>>16&255;f=i>>>8&255;g=i&255;i=i>>>24;switch(p&127){case 16:{w=h^255;i=(((O(w,i)|0)>>>0)/255|0)+h|0;g=j+(((O(w,g)|0)>>>0)/255|0)|0;f=k+(((O(f,w)|0)>>>0)/255|0)|0;e=l+(((O(e,w)|0)>>>0)/255|0)|0;break}case 32:{e=l+e|0;f=k+f|0;g=j+g|0;g=g>>>0<255?g:255;f=f>>>0<255?f:255;e=e>>>0<255?e:255;break}case 64:{g=((O(j,g)|0)>>>0)/255|0;f=((O(k,f)|0)>>>0)/255|0;e=((O(l,e)|0)>>>0)/255|0;break}default:{}}c[b>>2]=f<<8|e<<16|g|i<<24;if(!m)break a;else{b=b+4|0;d=d+4|0;m=m+-1|0}}}else m=e;while(1){l=c[d>>2]|0;k=l>>>16&255;i=l>>>8&255;h=l&255;l=l>>>24;j=c[b>>2]|0;e=j>>>16&255;f=j>>>8&255;g=j&255;j=j>>>24;if((l|0)!=255){h=((O(h,l)|0)>>>0)/255|0;i=((O(i,l)|0)>>>0)/255|0;k=((O(k,l)|0)>>>0)/255|0}switch(p&127){case 16:{w=l^255;j=(((O(w,j)|0)>>>0)/255|0)+l|0;g=h+(((O(w,g)|0)>>>0)/255|0)|0;f=i+(((O(f,w)|0)>>>0)/255|0)|0;e=k+(((O(e,w)|0)>>>0)/255|0)|0;break}case 32:{e=k+e|0;f=i+f|0;g=h+g|0;g=g>>>0<255?g:255;f=f>>>0<255?f:255;e=e>>>0<255?e:255;break}case 64:{g=((O(h,g)|0)>>>0)/255|0;f=((O(i,f)|0)>>>0)/255|0;e=((O(k,e)|0)>>>0)/255|0;break}default:{}}c[b>>2]=f<<8|e<<16|g|j<<24;if(!m)break a;else{b=b+4|0;d=d+4|0;m=m+-1|0}}}while(0);d=n+(c[v>>2]|0)|0;b=o+(c[q>>2]|0)|0;w=c[s>>2]|0;c[s>>2]=w+-1;if(!w)break;else{n=d;o=b}}c[a>>2]=d;c[t>>2]=b;return}function XF(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;b=c[a+52>>2]|0;z=a+28|0;y=c[z>>2]|0;A=(c[a+8>>2]<<16|0)/(y|0)|0;u=a+24|0;e=c[u>>2]|0;v=(c[a+4>>2]<<16|0)/(e|0)|0;d=y+-1|0;c[z>>2]=d;if(!y)return;w=a+20|0;x=a+32|0;y=(b&48|0)!=0;t=b&112;s=a+12|0;q=c[w>>2]|0;f=0;g=0;r=q;b=d;d=q;while(1){if((f|0)>65535){p=f+-65536|0;q=p>>>16;p=p-(q<<16)|0;q=g+1+q|0}else{p=f;q=g}if(e){b=0;f=65536;g=-1;while(1){e=e+-1|0;if((f|0)>65535){o=f+-65536|0;f=o>>>16;g=g+1+f|0;b=(c[a>>2]|0)+(O(c[s>>2]|0,q)|0)+(g<<2)|0;f=o-(f<<16)|0}o=c[b>>2]|0;k=o>>>16&255;m=o>>>8&255;l=o&255;o=o>>>24;n=c[d>>2]|0;h=n>>>16&255;i=n>>>8&255;j=n&255;n=n>>>24;if(y&(o|0)!=255){k=((O(k,o)|0)>>>0)/255|0;m=((O(m,o)|0)>>>0)/255|0;l=((O(l,o)|0)>>>0)/255|0}switch(t&127){case 16:{B=o^255;n=(((O(B,n)|0)>>>0)/255|0)+o|0;j=l+(((O(B,j)|0)>>>0)/255|0)|0;i=m+(((O(i,B)|0)>>>0)/255|0)|0;h=k+(((O(h,B)|0)>>>0)/255|0)|0;break}case 32:{h=k+h|0;i=m+i|0;j=l+j|0;j=j>>>0<255?j:255;i=i>>>0<255?i:255;h=h>>>0<255?h:255;break}case 64:{j=((O(l,j)|0)>>>0)/255|0;i=((O(m,i)|0)>>>0)/255|0;h=((O(k,h)|0)>>>0)/255|0;break}default:{}}c[d>>2]=i<<8|h<<16|j|n<<24;if(!e)break;else{d=d+4|0;f=f+v|0}}b=c[z>>2]|0}e=r+(c[x>>2]|0)|0;d=b+-1|0;c[z>>2]=d;if(!b)break;f=p+A|0;g=q;r=e;b=d;d=e;e=c[u>>2]|0}c[w>>2]=e;return}function YF(a){a=a|0;var b=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;b=c[a+52>>2]|0;r=d[a+60>>0]|0;s=d[a+61>>0]|0;j=d[a+62>>0]|0;k=d[a+63>>0]|0;l=a+28|0;q=c[l>>2]|0;c[l>>2]=q+-1;if(!q)return;m=a+20|0;n=a+24|0;o=a+12|0;p=a+32|0;q=(b&1|0)==0;g=(b&2|0)==0;e=c[a>>2]|0;f=c[m>>2]|0;h=e;i=f;while(1){t=c[n>>2]|0;b=t+-1|0;if(t|0)if(q)while(1){t=c[e>>2]|0;v=t>>>24;u=((O(v,k)|0)>>>0)/255|0;c[f>>2]=t&16711680|(g?v:u)<<24|t&65280|t&255;if(!b)break;else{f=f+4|0;e=e+4|0;b=b+-1|0}}else while(1){v=c[e>>2]|0;w=v>>>24;x=((O(v>>>16&255,r)|0)>>>0)/255|0;u=((O(v>>>8&255,s)|0)>>>0)/255|0;v=((O(v&255,j)|0)>>>0)/255|0;t=((O(w,k)|0)>>>0)/255|0;c[f>>2]=x<<16|(g?w:t)<<24|u<<8|v;if(!b)break;else{f=f+4|0;e=e+4|0;b=b+-1|0}}e=h+(c[o>>2]|0)|0;b=i+(c[p>>2]|0)|0;x=c[l>>2]|0;c[l>>2]=x+-1;if(!x)break;else{h=e;i=b;f=b}}c[a>>2]=e;c[m>>2]=b;return}function ZF(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;b=c[a+52>>2]|0;w=d[a+60>>0]|0;x=d[a+61>>0]|0;n=d[a+62>>0]|0;o=d[a+63>>0]|0;p=a+28|0;v=c[p>>2]|0;q=(c[a+8>>2]<<16|0)/(v|0)|0;r=a+24|0;e=c[r>>2]|0;s=(c[a+4>>2]<<16|0)/(e|0)|0;c[p>>2]=v+-1;if(!v)return;t=a+20|0;u=a+32|0;v=(b&1|0)==0;l=(b&2|0)==0;m=a+12|0;b=c[t>>2]|0;f=0;g=0;k=b;while(1){if((f|0)>65535){f=f+-65536|0;j=f>>>16;f=f-(j<<16)|0;g=g+1+j|0}j=e+-1|0;if(e|0)if(v){e=0;h=65536;i=-1;while(1){if((h|0)>65535){y=h+-65536|0;h=y>>>16;i=i+1+h|0;e=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(i<<2)|0;h=y-(h<<16)|0}y=c[e>>2]|0;A=y>>>24;z=((O(A,o)|0)>>>0)/255|0;c[b>>2]=y&65280|(l?A:z)<<24|y&255|y&16711680;if(!j)break;else{b=b+4|0;h=h+s|0;j=j+-1|0}}}else{e=0;h=65536;i=-1;while(1){if((h|0)>65535){A=h+-65536|0;h=A>>>16;i=i+1+h|0;e=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(i<<2)|0;h=A-(h<<16)|0}z=c[e>>2]|0;B=z>>>24;A=((O(z>>>16&255,w)|0)>>>0)/255|0;C=((O(z>>>8&255,x)|0)>>>0)/255|0;z=((O(z&255,n)|0)>>>0)/255|0;y=((O(B,o)|0)>>>0)/255|0;c[b>>2]=C<<8|(l?B:y)<<24|z|A<<16;if(!j)break;else{b=b+4|0;h=h+s|0;j=j+-1|0}}}b=k+(c[u>>2]|0)|0;C=c[p>>2]|0;c[p>>2]=C+-1;if(!C)break;f=f+q|0;k=b;e=c[r>>2]|0}c[t>>2]=b;return}function _F(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;b=c[a+52>>2]|0;B=d[a+60>>0]|0;C=d[a+61>>0]|0;r=d[a+62>>0]|0;s=d[a+63>>0]|0;t=a+28|0;A=c[t>>2]|0;e=A+-1|0;c[t>>2]=e;if(!A)return;u=a+20|0;v=a+24|0;w=a+12|0;x=a+32|0;y=(b&1|0)==0;z=(b&2|0)==0;A=(b&48|0)!=0;q=b&112;o=c[a>>2]|0;b=c[u>>2]|0;p=b;f=o;while(1){g=c[v>>2]|0;if(!g)f=e;else{while(1){g=g+-1|0;n=c[f>>2]|0;m=n>>>16&255;k=n>>>8&255;j=n&255;n=n>>>24;l=c[b>>2]|0;e=l>>>16&255;h=l>>>8&255;i=l&255;l=l>>>24;if(!y){j=((O(j,r)|0)>>>0)/255|0;k=((O(k,C)|0)>>>0)/255|0;m=((O(m,B)|0)>>>0)/255|0}D=((O(n,s)|0)>>>0)/255|0;n=z?n:D;if(A&n>>>0<255){j=((O(j,n)|0)>>>0)/255|0;k=((O(k,n)|0)>>>0)/255|0;m=((O(m,n)|0)>>>0)/255|0}switch(q&127){case 16:{D=255-n|0;l=(((O(D,l)|0)>>>0)/255|0)+n|0;i=j+(((O(D,i)|0)>>>0)/255|0)|0;h=k+(((O(D,h)|0)>>>0)/255|0)|0;e=m+(((O(D,e)|0)>>>0)/255|0)|0;break}case 32:{e=m+e|0;h=k+h|0;i=j+i|0;i=i>>>0<255?i:255;h=h>>>0<255?h:255;e=e>>>0<255?e:255;break}case 64:{i=((O(j,i)|0)>>>0)/255|0;h=((O(k,h)|0)>>>0)/255|0;e=((O(m,e)|0)>>>0)/255|0;break}default:{}}c[b>>2]=h<<8|e<<16|i|l<<24;if(!g)break;else{b=b+4|0;f=f+4|0}}f=c[t>>2]|0}g=o+(c[w>>2]|0)|0;b=p+(c[x>>2]|0)|0;e=f+-1|0;c[t>>2]=e;if(!f)break;else{p=b;f=g;o=g}}c[a>>2]=g;c[u>>2]=b;return}function $F(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;b=c[a+52>>2]|0;G=d[a+60>>0]|0;H=d[a+61>>0]|0;v=d[a+62>>0]|0;w=d[a+63>>0]|0;x=a+28|0;F=c[x>>2]|0;y=(c[a+8>>2]<<16|0)/(F|0)|0;z=a+24|0;f=c[z>>2]|0;A=(c[a+4>>2]<<16|0)/(f|0)|0;e=F+-1|0;c[x>>2]=e;if(!F)return;B=a+20|0;C=a+32|0;D=(b&1|0)==0;E=(b&2|0)==0;F=(b&48|0)!=0;u=b&112;t=a+12|0;r=c[B>>2]|0;g=0;h=0;s=r;b=e;e=r;while(1){if((g|0)>65535){q=g+-65536|0;r=q>>>16;q=q-(r<<16)|0;r=h+1+r|0}else{q=g;r=h}if(f){b=0;g=65536;h=-1;while(1){f=f+-1|0;if((g|0)>65535){p=g+-65536|0;g=p>>>16;h=h+1+g|0;b=(c[a>>2]|0)+(O(c[t>>2]|0,r)|0)+(h<<2)|0;g=p-(g<<16)|0}p=c[b>>2]|0;l=p>>>16&255;n=p>>>8&255;m=p&255;p=p>>>24;o=c[e>>2]|0;i=o>>>16&255;j=o>>>8&255;k=o&255;o=o>>>24;if(!D){l=((O(l,G)|0)>>>0)/255|0;n=((O(n,H)|0)>>>0)/255|0;m=((O(m,v)|0)>>>0)/255|0}I=((O(p,w)|0)>>>0)/255|0;p=E?p:I;if(F&p>>>0<255){l=((O(l,p)|0)>>>0)/255|0;n=((O(n,p)|0)>>>0)/255|0;m=((O(m,p)|0)>>>0)/255|0}switch(u&127){case 16:{I=255-p|0;o=(((O(I,o)|0)>>>0)/255|0)+p|0;k=m+(((O(I,k)|0)>>>0)/255|0)|0;j=n+(((O(I,j)|0)>>>0)/255|0)|0;i=l+(((O(I,i)|0)>>>0)/255|0)|0;break}case 32:{i=l+i|0;j=n+j|0;k=m+k|0;k=k>>>0<255?k:255;j=j>>>0<255?j:255;i=i>>>0<255?i:255;break}case 64:{k=((O(m,k)|0)>>>0)/255|0;j=((O(n,j)|0)>>>0)/255|0;i=((O(l,i)|0)>>>0)/255|0;break}default:{}}c[e>>2]=j<<8|i<<16|k|o<<24;if(!f)break;else{e=e+4|0;g=g+A|0}}b=c[x>>2]|0}f=s+(c[C>>2]|0)|0;e=b+-1|0;c[x>>2]=e;if(!b)break;g=q+y|0;h=r;s=f;b=e;e=f;f=c[z>>2]|0}c[B>>2]=f;return}function aG(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=a+28|0;o=c[p>>2]|0;q=(c[a+8>>2]<<16|0)/(o|0)|0;k=a+24|0;b=c[k>>2]|0;l=(c[a+4>>2]<<16|0)/(b|0)|0;d=o+-1|0;c[p>>2]=d;if(!o)return;m=a+20|0;n=a+32|0;o=a+12|0;e=c[m>>2]|0;f=0;g=0;j=e;while(1){if((g|0)>65535){g=g+-65536|0;i=g>>>16;h=f+1+i|0;i=g-(i<<16)|0}else{h=f;i=g}if(!b)b=d;else{d=0;f=-1;g=65536;while(1){b=b+-1|0;if((g|0)>65535){r=g+-65536|0;g=r>>>16;f=f+1+g|0;d=(c[a>>2]|0)+(O(c[o>>2]|0,h)|0)+(f<<2)|0;g=r-(g<<16)|0}s=c[d>>2]|0;r=s>>>8;c[e>>2]=s>>>24<<16|r&65280|r&255;if(!b)break;else{e=e+4|0;g=g+l|0}}b=c[p>>2]|0}e=j+(c[n>>2]|0)|0;d=b+-1|0;c[p>>2]=d;if(!b)break;f=h;g=i+q|0;b=c[k>>2]|0;j=e}c[m>>2]=e;return}function bG(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;b=c[a+52>>2]|0;r=a+28|0;u=c[r>>2]|0;c[r>>2]=u+-1;if(!u)return;s=a+20|0;t=a+24|0;u=a+12|0;p=a+32|0;q=(b&48|0)==0;o=b&112;d=c[a>>2]|0;b=c[s>>2]|0;m=d;n=b;while(1){l=c[t>>2]|0;e=l+-1|0;a:do if(l|0){if(q){l=e;while(1){h=c[d>>2]|0;k=h>>>24;j=h>>>16&255;i=h>>>8&255;g=c[b>>2]|0;e=g>>>16&255;f=g>>>8&255;g=g&255;switch(o&127){case 16:{h=h&255^255;g=i+(((O(h,g)|0)>>>0)/255|0)|0;f=j+(((O(f,h)|0)>>>0)/255|0)|0;e=k+(((O(e,h)|0)>>>0)/255|0)|0;break}case 32:{e=k+e|0;f=j+f|0;g=i+g|0;g=g>>>0<255?g:255;f=f>>>0<255?f:255;e=e>>>0<255?e:255;break}case 64:{g=((O(i,g)|0)>>>0)/255|0;f=((O(j,f)|0)>>>0)/255|0;e=((O(k,e)|0)>>>0)/255|0;break}default:{}}c[b>>2]=f<<8|e<<16|g;if(!l)break a;else{b=b+4|0;d=d+4|0;l=l+-1|0}}}else l=e;while(1){k=c[d>>2]|0;h=k>>>24;j=k>>>16&255;i=k>>>8&255;k=k&255;g=c[b>>2]|0;e=g>>>16&255;f=g>>>8&255;g=g&255;if((k|0)!=255){h=((O(h,k)|0)>>>0)/255|0;i=((O(i,k)|0)>>>0)/255|0;j=((O(j,k)|0)>>>0)/255|0}switch(o&127){case 16:{k=k^255;g=i+(((O(k,g)|0)>>>0)/255|0)|0;f=j+(((O(f,k)|0)>>>0)/255|0)|0;e=h+(((O(e,k)|0)>>>0)/255|0)|0;break}case 32:{e=h+e|0;f=j+f|0;g=i+g|0;g=g>>>0<255?g:255;f=f>>>0<255?f:255;e=e>>>0<255?e:255;break}case 64:{g=((O(i,g)|0)>>>0)/255|0;f=((O(j,f)|0)>>>0)/255|0;e=((O(h,e)|0)>>>0)/255|0;break}default:{}}c[b>>2]=f<<8|e<<16|g;if(!l)break a;else{b=b+4|0;d=d+4|0;l=l+-1|0}}}while(0);d=m+(c[u>>2]|0)|0;b=n+(c[p>>2]|0)|0;n=c[r>>2]|0;c[r>>2]=n+-1;if(!n)break;else{m=d;n=b}}c[a>>2]=d;c[s>>2]=b;return}function cG(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;b=c[a+52>>2]|0;y=a+28|0;x=c[y>>2]|0;z=(c[a+8>>2]<<16|0)/(x|0)|0;t=a+24|0;e=c[t>>2]|0;u=(c[a+4>>2]<<16|0)/(e|0)|0;d=x+-1|0;c[y>>2]=d;if(!x)return;v=a+20|0;w=a+32|0;x=(b&48|0)!=0;s=b&112;r=a+12|0;p=c[v>>2]|0;g=0;h=0;b=p;while(1){if((g|0)>65535){g=g+-65536|0;q=g>>>16;g=g-(q<<16)|0;q=h+1+q|0}else q=h;if(!e)b=d;else{d=0;f=65536;h=-1;while(1){e=e+-1|0;if((f|0)>65535){o=f+-65536|0;f=o>>>16;h=h+1+f|0;d=(c[a>>2]|0)+(O(c[r>>2]|0,q)|0)+(h<<2)|0;f=o-(f<<16)|0}o=c[d>>2]|0;m=o>>>24;n=o>>>16&255;l=o>>>8&255;o=o&255;k=c[b>>2]|0;i=k>>>16&255;j=k>>>8&255;k=k&255;if(x&(o|0)!=255){m=((O(m,o)|0)>>>0)/255|0;n=((O(n,o)|0)>>>0)/255|0;l=((O(l,o)|0)>>>0)/255|0}switch(s&127){case 16:{o=o^255;k=l+(((O(o,k)|0)>>>0)/255|0)|0;j=n+(((O(j,o)|0)>>>0)/255|0)|0;i=m+(((O(i,o)|0)>>>0)/255|0)|0;break}case 32:{i=m+i|0;j=n+j|0;k=l+k|0;k=k>>>0<255?k:255;j=j>>>0<255?j:255;i=i>>>0<255?i:255;break}case 64:{k=((O(l,k)|0)>>>0)/255|0;j=((O(n,j)|0)>>>0)/255|0;i=((O(m,i)|0)>>>0)/255|0;break}default:{}}c[b>>2]=j<<8|i<<16|k;if(!e)break;else{b=b+4|0;f=f+u|0}}b=c[y>>2]|0}f=p+(c[w>>2]|0)|0;d=b+-1|0;c[y>>2]=d;if(!b)break;g=g+z|0;h=q;b=f;e=c[t>>2]|0;p=f}c[v>>2]=f;return}function dG(a){a=a|0;var b=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;b=c[a+52>>2]|0;k=d[a+60>>0]|0;l=d[a+61>>0]|0;j=d[a+62>>0]|0;m=a+28|0;q=c[m>>2]|0;g=q+-1|0;c[m>>2]=g;if(!q)return;q=a+20|0;n=a+24|0;o=a+12|0;p=a+32|0;f=c[a>>2]|0;e=c[q>>2]|0;if(!(b&1)){h=f;i=e;b=e;e=f;while(1){f=c[n>>2]|0;if(!f)f=g;else{while(1){f=f+-1|0;k=c[e>>2]|0;l=k>>>8;c[b>>2]=l&65280|k>>>24<<16|l&255;if(!f)break;else{b=b+4|0;e=e+4|0}}f=c[m>>2]|0}e=h+(c[o>>2]|0)|0;b=i+(c[p>>2]|0)|0;g=f+-1|0;c[m>>2]=g;if(!f)break;else{h=e;i=b}}}else{h=f;i=e;b=e;e=f;while(1){f=c[n>>2]|0;if(!f)f=g;else{while(1){f=f+-1|0;g=c[e>>2]|0;c[b>>2]=(((O(g>>>16&255,l)|0)>>>0)/255|0)<<8|(((O(g>>>24,k)|0)>>>0)/255|0)<<16|(((O(g>>>8&255,j)|0)>>>0)/255|0);if(!f)break;else{b=b+4|0;e=e+4|0}}f=c[m>>2]|0}e=h+(c[o>>2]|0)|0;b=i+(c[p>>2]|0)|0;g=f+-1|0;c[m>>2]=g;if(!f)break;else{h=e;i=b}}}c[a>>2]=e;c[q>>2]=b;return}function eG(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;b=c[a+52>>2]|0;u=d[a+60>>0]|0;v=d[a+61>>0]|0;n=d[a+62>>0]|0;o=a+28|0;t=c[o>>2]|0;p=(c[a+8>>2]<<16|0)/(t|0)|0;q=a+24|0;e=c[q>>2]|0;r=(c[a+4>>2]<<16|0)/(e|0)|0;c[o>>2]=t+-1;if(!t)return;s=a+20|0;t=a+32|0;l=(b&1|0)==0;m=a+12|0;b=c[s>>2]|0;f=0;g=0;k=b;while(1){if((f|0)>65535){f=f+-65536|0;j=f>>>16;f=f-(j<<16)|0;g=g+1+j|0}j=e+-1|0;if(e|0)if(l){e=0;h=65536;i=-1;while(1){if((h|0)>65535){w=h+-65536|0;h=w>>>16;i=i+1+h|0;e=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(i<<2)|0;h=w-(h<<16)|0}w=c[e>>2]|0;c[b>>2]=w>>>8&65535|w>>>24<<16;if(!j)break;else{b=b+4|0;h=h+r|0;j=j+-1|0}}}else{e=0;h=65536;i=-1;while(1){if((h|0)>65535){w=h+-65536|0;h=w>>>16;i=i+1+h|0;e=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(i<<2)|0;h=w-(h<<16)|0}w=c[e>>2]|0;c[b>>2]=((O(w>>>8&255,n)|0)>>>0)/255|0|(((O(w>>>16&255,v)|0)>>>0)/255|0)<<8|(((O(w>>>24,u)|0)>>>0)/255|0)<<16;if(!j)break;else{b=b+4|0;h=h+r|0;j=j+-1|0}}}b=k+(c[t>>2]|0)|0;w=c[o>>2]|0;c[o>>2]=w+-1;if(!w)break;f=f+p|0;k=b;e=c[q>>2]|0}c[s>>2]=b;return}function fG(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;b=c[a+52>>2]|0;A=d[a+60>>0]|0;B=d[a+61>>0]|0;q=d[a+62>>0]|0;r=d[a+63>>0]|0;s=a+28|0;z=c[s>>2]|0;e=z+-1|0;c[s>>2]=e;if(!z)return;t=a+20|0;u=a+24|0;v=a+12|0;w=a+32|0;x=(b&1|0)==0;y=(b&2|0)==0;z=(b&48|0)!=0;p=b&112;n=c[a>>2]|0;o=c[t>>2]|0;h=o;i=n;while(1){b=c[u>>2]|0;if(!b)b=e;else{m=b;while(1){m=m+-1|0;l=c[i>>2]|0;k=l>>>24;j=l>>>16&255;g=l>>>8&255;l=l&255;f=c[h>>2]|0;b=f>>>16&255;e=f>>>8&255;f=f&255;if(!x){g=((O(g,q)|0)>>>0)/255|0;j=((O(j,B)|0)>>>0)/255|0;k=((O(k,A)|0)>>>0)/255|0}C=((O(l,r)|0)>>>0)/255|0;l=y?l:C;if(z&l>>>0<255){g=((O(g,l)|0)>>>0)/255|0;j=((O(j,l)|0)>>>0)/255|0;k=((O(k,l)|0)>>>0)/255|0}switch(p&127){case 16:{C=255-l|0;f=g+(((O(C,f)|0)>>>0)/255|0)|0;e=j+(((O(C,e)|0)>>>0)/255|0)|0;b=k+(((O(C,b)|0)>>>0)/255|0)|0;break}case 32:{b=k+b|0;e=j+e|0;f=g+f|0;f=f>>>0<255?f:255;e=e>>>0<255?e:255;b=b>>>0<255?b:255;break}case 64:{f=((O(g,f)|0)>>>0)/255|0;e=((O(j,e)|0)>>>0)/255|0;b=((O(k,b)|0)>>>0)/255|0;break}default:{}}c[h>>2]=e<<8|b<<16|f;if(!m)break;else{h=h+4|0;i=i+4|0}}b=c[s>>2]|0}f=n+(c[v>>2]|0)|0;g=o+(c[w>>2]|0)|0;e=b+-1|0;c[s>>2]=e;if(!b)break;else{h=g;i=f;n=f;o=g}}c[a>>2]=f;c[t>>2]=g;return}function gG(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;b=c[a+52>>2]|0;F=d[a+60>>0]|0;G=d[a+61>>0]|0;u=d[a+62>>0]|0;v=d[a+63>>0]|0;w=a+28|0;E=c[w>>2]|0;x=(c[a+8>>2]<<16|0)/(E|0)|0;y=a+24|0;f=c[y>>2]|0;z=(c[a+4>>2]<<16|0)/(f|0)|0;e=E+-1|0;c[w>>2]=e;if(!E)return;A=a+20|0;B=a+32|0;C=(b&1|0)==0;D=(b&2|0)==0;E=(b&48|0)!=0;t=b&112;s=a+12|0;q=c[A>>2]|0;g=0;h=0;r=q;b=e;e=q;while(1){if((g|0)>65535){p=g+-65536|0;q=p>>>16;p=p-(q<<16)|0;q=h+1+q|0}else{p=g;q=h}if(f){b=0;g=65536;h=-1;while(1){f=f+-1|0;if((g|0)>65535){o=g+-65536|0;g=o>>>16;h=h+1+g|0;b=(c[a>>2]|0)+(O(c[s>>2]|0,q)|0)+(h<<2)|0;g=o-(g<<16)|0}o=c[b>>2]|0;m=o>>>24;n=o>>>16&255;l=o>>>8&255;o=o&255;k=c[e>>2]|0;i=k>>>16&255;j=k>>>8&255;k=k&255;if(!C){m=((O(m,F)|0)>>>0)/255|0;n=((O(n,G)|0)>>>0)/255|0;l=((O(l,u)|0)>>>0)/255|0}H=((O(o,v)|0)>>>0)/255|0;o=D?o:H;if(E&o>>>0<255){m=((O(m,o)|0)>>>0)/255|0;n=((O(n,o)|0)>>>0)/255|0;l=((O(l,o)|0)>>>0)/255|0}switch(t&127){case 16:{H=255-o|0;k=l+(((O(H,k)|0)>>>0)/255|0)|0;j=n+(((O(H,j)|0)>>>0)/255|0)|0;i=m+(((O(H,i)|0)>>>0)/255|0)|0;break}case 32:{i=m+i|0;j=n+j|0;k=l+k|0;k=k>>>0<255?k:255;j=j>>>0<255?j:255;i=i>>>0<255?i:255;break}case 64:{k=((O(l,k)|0)>>>0)/255|0;j=((O(n,j)|0)>>>0)/255|0;i=((O(m,i)|0)>>>0)/255|0;break}default:{}}c[e>>2]=j<<8|i<<16|k;if(!f)break;else{e=e+4|0;g=g+z|0}}b=c[w>>2]|0}f=r+(c[B>>2]|0)|0;e=b+-1|0;c[w>>2]=e;if(!b)break;g=p+x|0;h=q;r=f;b=e;e=f;f=c[y>>2]|0}c[A>>2]=f;return}function hG(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=a+28|0;o=c[p>>2]|0;q=(c[a+8>>2]<<16|0)/(o|0)|0;k=a+24|0;b=c[k>>2]|0;l=(c[a+4>>2]<<16|0)/(b|0)|0;d=o+-1|0;c[p>>2]=d;if(!o)return;m=a+20|0;n=a+32|0;o=a+12|0;e=c[m>>2]|0;f=0;g=0;j=e;while(1){if((g|0)>65535){g=g+-65536|0;i=g>>>16;h=f+1+i|0;i=g-(i<<16)|0}else{h=f;i=g}if(!b)b=d;else{d=0;f=-1;g=65536;while(1){b=b+-1|0;if((g|0)>65535){r=g+-65536|0;g=r>>>16;f=f+1+g|0;d=(c[a>>2]|0)+(O(c[o>>2]|0,h)|0)+(f<<2)|0;g=r-(g<<16)|0}r=c[d>>2]|0;c[e>>2]=r>>>8&65280|r>>>24|r<<8&16711680;if(!b)break;else{e=e+4|0;g=g+l|0}}b=c[p>>2]|0}e=j+(c[n>>2]|0)|0;d=b+-1|0;c[p>>2]=d;if(!b)break;f=h;g=i+q|0;b=c[k>>2]|0;j=e}c[m>>2]=e;return}function iG(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;b=c[a+52>>2]|0;r=a+28|0;u=c[r>>2]|0;c[r>>2]=u+-1;if(!u)return;s=a+20|0;t=a+24|0;u=a+12|0;p=a+32|0;q=(b&48|0)==0;o=b&112;d=c[a>>2]|0;b=c[s>>2]|0;m=d;n=b;while(1){l=c[t>>2]|0;e=l+-1|0;a:do if(l|0){if(q){l=e;while(1){h=c[d>>2]|0;k=h>>>24;j=h>>>16&255;i=h>>>8&255;e=c[b>>2]|0;g=e>>>16&255;f=e>>>8&255;e=e&255;switch(o&127){case 16:{h=h&255^255;g=i+(((O(g,h)|0)>>>0)/255|0)|0;f=j+(((O(f,h)|0)>>>0)/255|0)|0;e=k+(((O(h,e)|0)>>>0)/255|0)|0;break}case 32:{e=k+e|0;f=j+f|0;g=i+g|0;g=g>>>0<255?g:255;f=f>>>0<255?f:255;e=e>>>0<255?e:255;break}case 64:{g=((O(i,g)|0)>>>0)/255|0;f=((O(j,f)|0)>>>0)/255|0;e=((O(k,e)|0)>>>0)/255|0;break}default:{}}c[b>>2]=f<<8|e|g<<16;if(!l)break a;else{b=b+4|0;d=d+4|0;l=l+-1|0}}}else l=e;while(1){k=c[d>>2]|0;h=k>>>24;j=k>>>16&255;i=k>>>8&255;k=k&255;e=c[b>>2]|0;g=e>>>16&255;f=e>>>8&255;e=e&255;if((k|0)!=255){h=((O(h,k)|0)>>>0)/255|0;i=((O(i,k)|0)>>>0)/255|0;j=((O(j,k)|0)>>>0)/255|0}switch(o&127){case 16:{k=k^255;g=i+(((O(g,k)|0)>>>0)/255|0)|0;f=j+(((O(f,k)|0)>>>0)/255|0)|0;e=h+(((O(k,e)|0)>>>0)/255|0)|0;break}case 32:{e=h+e|0;f=j+f|0;g=i+g|0;g=g>>>0<255?g:255;f=f>>>0<255?f:255;e=e>>>0<255?e:255;break}case 64:{g=((O(i,g)|0)>>>0)/255|0;f=((O(j,f)|0)>>>0)/255|0;e=((O(h,e)|0)>>>0)/255|0;break}default:{}}c[b>>2]=f<<8|e|g<<16;if(!l)break a;else{b=b+4|0;d=d+4|0;l=l+-1|0}}}while(0);d=m+(c[u>>2]|0)|0;b=n+(c[p>>2]|0)|0;n=c[r>>2]|0;c[r>>2]=n+-1;if(!n)break;else{m=d;n=b}}c[a>>2]=d;c[s>>2]=b;return}function jG(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;b=c[a+52>>2]|0;y=a+28|0;x=c[y>>2]|0;z=(c[a+8>>2]<<16|0)/(x|0)|0;t=a+24|0;e=c[t>>2]|0;u=(c[a+4>>2]<<16|0)/(e|0)|0;d=x+-1|0;c[y>>2]=d;if(!x)return;v=a+20|0;w=a+32|0;x=(b&48|0)!=0;s=b&112;r=a+12|0;p=c[v>>2]|0;g=0;h=0;b=p;while(1){if((g|0)>65535){g=g+-65536|0;q=g>>>16;g=g-(q<<16)|0;q=h+1+q|0}else q=h;if(!e)b=d;else{d=0;f=65536;h=-1;while(1){e=e+-1|0;if((f|0)>65535){o=f+-65536|0;f=o>>>16;h=h+1+f|0;d=(c[a>>2]|0)+(O(c[r>>2]|0,q)|0)+(h<<2)|0;f=o-(f<<16)|0}o=c[d>>2]|0;m=o>>>24;n=o>>>16&255;l=o>>>8&255;o=o&255;i=c[b>>2]|0;k=i>>>16&255;j=i>>>8&255;i=i&255;if(x&(o|0)!=255){m=((O(m,o)|0)>>>0)/255|0;n=((O(n,o)|0)>>>0)/255|0;l=((O(l,o)|0)>>>0)/255|0}switch(s&127){case 16:{o=o^255;k=l+(((O(k,o)|0)>>>0)/255|0)|0;j=n+(((O(j,o)|0)>>>0)/255|0)|0;i=m+(((O(o,i)|0)>>>0)/255|0)|0;break}case 32:{i=m+i|0;j=n+j|0;k=l+k|0;k=k>>>0<255?k:255;j=j>>>0<255?j:255;i=i>>>0<255?i:255;break}case 64:{k=((O(l,k)|0)>>>0)/255|0;j=((O(n,j)|0)>>>0)/255|0;i=((O(m,i)|0)>>>0)/255|0;break}default:{}}c[b>>2]=j<<8|i|k<<16;if(!e)break;else{b=b+4|0;f=f+u|0}}b=c[y>>2]|0}f=p+(c[w>>2]|0)|0;d=b+-1|0;c[y>>2]=d;if(!b)break;g=g+z|0;h=q;b=f;e=c[t>>2]|0;p=f}c[v>>2]=f;return}function kG(a){a=a|0;var b=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;b=c[a+52>>2]|0;k=d[a+60>>0]|0;l=d[a+61>>0]|0;j=d[a+62>>0]|0;m=a+28|0;q=c[m>>2]|0;g=q+-1|0;c[m>>2]=g;if(!q)return;q=a+20|0;n=a+24|0;o=a+12|0;p=a+32|0;f=c[a>>2]|0;e=c[q>>2]|0;if(!(b&1)){h=f;i=e;b=e;e=f;while(1){f=c[n>>2]|0;if(!f)f=g;else{while(1){f=f+-1|0;l=c[e>>2]|0;c[b>>2]=l>>>8&65280|l>>>24|l<<8&16711680;if(!f)break;else{b=b+4|0;e=e+4|0}}f=c[m>>2]|0}e=h+(c[o>>2]|0)|0;b=i+(c[p>>2]|0)|0;g=f+-1|0;c[m>>2]=g;if(!f)break;else{h=e;i=b}}}else{h=f;i=e;b=e;e=f;while(1){f=c[n>>2]|0;if(!f)f=g;else{while(1){f=f+-1|0;g=c[e>>2]|0;c[b>>2]=(((O(g>>>16&255,l)|0)>>>0)/255|0)<<8|(((O(g>>>24,k)|0)>>>0)/255|0)|(((O(g>>>8&255,j)|0)>>>0)/255|0)<<16;if(!f)break;else{b=b+4|0;e=e+4|0}}f=c[m>>2]|0}e=h+(c[o>>2]|0)|0;b=i+(c[p>>2]|0)|0;g=f+-1|0;c[m>>2]=g;if(!f)break;else{h=e;i=b}}}c[a>>2]=e;c[q>>2]=b;return}function lG(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;b=c[a+52>>2]|0;u=d[a+60>>0]|0;v=d[a+61>>0]|0;n=d[a+62>>0]|0;o=a+28|0;t=c[o>>2]|0;p=(c[a+8>>2]<<16|0)/(t|0)|0;q=a+24|0;e=c[q>>2]|0;r=(c[a+4>>2]<<16|0)/(e|0)|0;c[o>>2]=t+-1;if(!t)return;s=a+20|0;t=a+32|0;l=(b&1|0)==0;m=a+12|0;b=c[s>>2]|0;f=0;g=0;k=b;while(1){if((f|0)>65535){f=f+-65536|0;j=f>>>16;f=f-(j<<16)|0;g=g+1+j|0}j=e+-1|0;if(e|0)if(l){e=0;h=65536;i=-1;while(1){if((h|0)>65535){w=h+-65536|0;h=w>>>16;i=i+1+h|0;e=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(i<<2)|0;h=w-(h<<16)|0}w=c[e>>2]|0;c[b>>2]=w<<8&16711680|w>>>8&65280|w>>>24;if(!j)break;else{b=b+4|0;h=h+r|0;j=j+-1|0}}}else{e=0;h=65536;i=-1;while(1){if((h|0)>65535){w=h+-65536|0;h=w>>>16;i=i+1+h|0;e=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(i<<2)|0;h=w-(h<<16)|0}w=c[e>>2]|0;c[b>>2]=(((O(w>>>8&255,n)|0)>>>0)/255|0)<<16|(((O(w>>>16&255,v)|0)>>>0)/255|0)<<8|(((O(w>>>24,u)|0)>>>0)/255|0);if(!j)break;else{b=b+4|0;h=h+r|0;j=j+-1|0}}}b=k+(c[t>>2]|0)|0;w=c[o>>2]|0;c[o>>2]=w+-1;if(!w)break;f=f+p|0;k=b;e=c[q>>2]|0}c[s>>2]=b;return}function mG(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;b=c[a+52>>2]|0;A=d[a+60>>0]|0;B=d[a+61>>0]|0;q=d[a+62>>0]|0;r=d[a+63>>0]|0;s=a+28|0;z=c[s>>2]|0;e=z+-1|0;c[s>>2]=e;if(!z)return;t=a+20|0;u=a+24|0;v=a+12|0;w=a+32|0;x=(b&1|0)==0;y=(b&2|0)==0;z=(b&48|0)!=0;p=b&112;n=c[a>>2]|0;o=c[t>>2]|0;h=o;i=n;while(1){b=c[u>>2]|0;if(!b)b=e;else{m=b;while(1){m=m+-1|0;l=c[i>>2]|0;k=l>>>24;j=l>>>16&255;g=l>>>8&255;l=l&255;b=c[h>>2]|0;f=b>>>16&255;e=b>>>8&255;b=b&255;if(!x){g=((O(g,q)|0)>>>0)/255|0;j=((O(j,B)|0)>>>0)/255|0;k=((O(k,A)|0)>>>0)/255|0}C=((O(l,r)|0)>>>0)/255|0;l=y?l:C;if(z&l>>>0<255){g=((O(g,l)|0)>>>0)/255|0;j=((O(j,l)|0)>>>0)/255|0;k=((O(k,l)|0)>>>0)/255|0}switch(p&127){case 16:{C=255-l|0;f=g+(((O(C,f)|0)>>>0)/255|0)|0;e=j+(((O(C,e)|0)>>>0)/255|0)|0;b=k+(((O(C,b)|0)>>>0)/255|0)|0;break}case 32:{b=k+b|0;e=j+e|0;f=g+f|0;f=f>>>0<255?f:255;e=e>>>0<255?e:255;b=b>>>0<255?b:255;break}case 64:{f=((O(g,f)|0)>>>0)/255|0;e=((O(j,e)|0)>>>0)/255|0;b=((O(k,b)|0)>>>0)/255|0;break}default:{}}c[h>>2]=e<<8|b|f<<16;if(!m)break;else{h=h+4|0;i=i+4|0}}b=c[s>>2]|0}f=n+(c[v>>2]|0)|0;g=o+(c[w>>2]|0)|0;e=b+-1|0;c[s>>2]=e;if(!b)break;else{h=g;i=f;n=f;o=g}}c[a>>2]=f;c[t>>2]=g;return}function nG(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;b=c[a+52>>2]|0;F=d[a+60>>0]|0;G=d[a+61>>0]|0;u=d[a+62>>0]|0;v=d[a+63>>0]|0;w=a+28|0;E=c[w>>2]|0;x=(c[a+8>>2]<<16|0)/(E|0)|0;y=a+24|0;f=c[y>>2]|0;z=(c[a+4>>2]<<16|0)/(f|0)|0;e=E+-1|0;c[w>>2]=e;if(!E)return;A=a+20|0;B=a+32|0;C=(b&1|0)==0;D=(b&2|0)==0;E=(b&48|0)!=0;t=b&112;s=a+12|0;q=c[A>>2]|0;g=0;h=0;r=q;b=e;e=q;while(1){if((g|0)>65535){p=g+-65536|0;q=p>>>16;p=p-(q<<16)|0;q=h+1+q|0}else{p=g;q=h}if(f){b=0;g=65536;h=-1;while(1){f=f+-1|0;if((g|0)>65535){o=g+-65536|0;g=o>>>16;h=h+1+g|0;b=(c[a>>2]|0)+(O(c[s>>2]|0,q)|0)+(h<<2)|0;g=o-(g<<16)|0}o=c[b>>2]|0;m=o>>>24;n=o>>>16&255;l=o>>>8&255;o=o&255;i=c[e>>2]|0;k=i>>>16&255;j=i>>>8&255;i=i&255;if(!C){m=((O(m,F)|0)>>>0)/255|0;n=((O(n,G)|0)>>>0)/255|0;l=((O(l,u)|0)>>>0)/255|0}H=((O(o,v)|0)>>>0)/255|0;o=D?o:H;if(E&o>>>0<255){m=((O(m,o)|0)>>>0)/255|0;n=((O(n,o)|0)>>>0)/255|0;l=((O(l,o)|0)>>>0)/255|0}switch(t&127){case 16:{H=255-o|0;k=l+(((O(H,k)|0)>>>0)/255|0)|0;j=n+(((O(H,j)|0)>>>0)/255|0)|0;i=m+(((O(H,i)|0)>>>0)/255|0)|0;break}case 32:{i=m+i|0;j=n+j|0;k=l+k|0;k=k>>>0<255?k:255;j=j>>>0<255?j:255;i=i>>>0<255?i:255;break}case 64:{k=((O(l,k)|0)>>>0)/255|0;j=((O(n,j)|0)>>>0)/255|0;i=((O(m,i)|0)>>>0)/255|0;break}default:{}}c[e>>2]=j<<8|i|k<<16;if(!f)break;else{e=e+4|0;g=g+z|0}}b=c[w>>2]|0}f=r+(c[B>>2]|0)|0;e=b+-1|0;c[w>>2]=e;if(!b)break;g=p+x|0;h=q;r=f;b=e;e=f;f=c[y>>2]|0}c[A>>2]=f;return}function oG(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=a+28|0;o=c[p>>2]|0;q=(c[a+8>>2]<<16|0)/(o|0)|0;k=a+24|0;b=c[k>>2]|0;l=(c[a+4>>2]<<16|0)/(b|0)|0;d=o+-1|0;c[p>>2]=d;if(!o)return;m=a+20|0;n=a+32|0;o=a+12|0;e=c[m>>2]|0;f=0;g=0;j=e;while(1){if((g|0)>65535){g=g+-65536|0;i=g>>>16;h=f+1+i|0;i=g-(i<<16)|0}else{h=f;i=g}if(!b)b=d;else{d=0;f=-1;g=65536;while(1){b=b+-1|0;if((g|0)>65535){r=g+-65536|0;g=r>>>16;f=f+1+g|0;d=(c[a>>2]|0)+(O(c[o>>2]|0,h)|0)+(f<<2)|0;g=r-(g<<16)|0}s=c[d>>2]|0;r=s>>>8;c[e>>2]=s>>>24<<16|s<<24|r&65280|r&255;if(!b)break;else{e=e+4|0;g=g+l|0}}b=c[p>>2]|0}e=j+(c[n>>2]|0)|0;d=b+-1|0;c[p>>2]=d;if(!b)break;f=h;g=i+q|0;b=c[k>>2]|0;j=e}c[m>>2]=e;return}function pG(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;b=c[a+52>>2]|0;s=a+28|0;v=c[s>>2]|0;c[s>>2]=v+-1;if(!v)return;t=a+20|0;u=a+24|0;v=a+12|0;q=a+32|0;r=(b&48|0)==0;p=b&112;d=c[a>>2]|0;b=c[t>>2]|0;n=d;o=b;while(1){m=c[u>>2]|0;e=m+-1|0;a:do if(m|0){if(r){m=e;while(1){h=c[d>>2]|0;l=h>>>24;k=h>>>16&255;j=h>>>8&255;h=h&255;i=c[b>>2]|0;e=i>>>16&255;f=i>>>8&255;g=i&255;i=i>>>24;switch(p&127){case 16:{w=h^255;i=(((O(w,i)|0)>>>0)/255|0)+h|0;g=j+(((O(w,g)|0)>>>0)/255|0)|0;f=k+(((O(f,w)|0)>>>0)/255|0)|0;e=l+(((O(e,w)|0)>>>0)/255|0)|0;break}case 32:{e=l+e|0;f=k+f|0;g=j+g|0;g=g>>>0<255?g:255;f=f>>>0<255?f:255;e=e>>>0<255?e:255;break}case 64:{g=((O(j,g)|0)>>>0)/255|0;f=((O(k,f)|0)>>>0)/255|0;e=((O(l,e)|0)>>>0)/255|0;break}default:{}}c[b>>2]=f<<8|e<<16|g|i<<24;if(!m)break a;else{b=b+4|0;d=d+4|0;m=m+-1|0}}}else m=e;while(1){l=c[d>>2]|0;k=l>>>24;i=l>>>16&255;h=l>>>8&255;l=l&255;j=c[b>>2]|0;e=j>>>16&255;f=j>>>8&255;g=j&255;j=j>>>24;if((l|0)!=255){h=((O(h,l)|0)>>>0)/255|0;i=((O(i,l)|0)>>>0)/255|0;k=((O(k,l)|0)>>>0)/255|0}switch(p&127){case 16:{w=l^255;j=(((O(w,j)|0)>>>0)/255|0)+l|0;g=h+(((O(w,g)|0)>>>0)/255|0)|0;f=i+(((O(f,w)|0)>>>0)/255|0)|0;e=k+(((O(e,w)|0)>>>0)/255|0)|0;break}case 32:{e=k+e|0;f=i+f|0;g=h+g|0;g=g>>>0<255?g:255;f=f>>>0<255?f:255;e=e>>>0<255?e:255;break}case 64:{g=((O(h,g)|0)>>>0)/255|0;f=((O(i,f)|0)>>>0)/255|0;e=((O(k,e)|0)>>>0)/255|0;break}default:{}}c[b>>2]=f<<8|e<<16|g|j<<24;if(!m)break a;else{b=b+4|0;d=d+4|0;m=m+-1|0}}}while(0);d=n+(c[v>>2]|0)|0;b=o+(c[q>>2]|0)|0;w=c[s>>2]|0;c[s>>2]=w+-1;if(!w)break;else{n=d;o=b}}c[a>>2]=d;c[t>>2]=b;return}function qG(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;b=c[a+52>>2]|0;z=a+28|0;y=c[z>>2]|0;A=(c[a+8>>2]<<16|0)/(y|0)|0;u=a+24|0;e=c[u>>2]|0;v=(c[a+4>>2]<<16|0)/(e|0)|0;d=y+-1|0;c[z>>2]=d;if(!y)return;w=a+20|0;x=a+32|0;y=(b&48|0)!=0;t=b&112;s=a+12|0;q=c[w>>2]|0;f=0;g=0;r=q;b=d;d=q;while(1){if((f|0)>65535){p=f+-65536|0;q=p>>>16;p=p-(q<<16)|0;q=g+1+q|0}else{p=f;q=g}if(e){b=0;f=65536;g=-1;while(1){e=e+-1|0;if((f|0)>65535){o=f+-65536|0;f=o>>>16;g=g+1+f|0;b=(c[a>>2]|0)+(O(c[s>>2]|0,q)|0)+(g<<2)|0;f=o-(f<<16)|0}o=c[b>>2]|0;k=o>>>24;m=o>>>16&255;l=o>>>8&255;o=o&255;n=c[d>>2]|0;h=n>>>16&255;i=n>>>8&255;j=n&255;n=n>>>24;if(y&(o|0)!=255){k=((O(k,o)|0)>>>0)/255|0;m=((O(m,o)|0)>>>0)/255|0;l=((O(l,o)|0)>>>0)/255|0}switch(t&127){case 16:{B=o^255;n=(((O(B,n)|0)>>>0)/255|0)+o|0;j=l+(((O(B,j)|0)>>>0)/255|0)|0;i=m+(((O(i,B)|0)>>>0)/255|0)|0;h=k+(((O(h,B)|0)>>>0)/255|0)|0;break}case 32:{h=k+h|0;i=m+i|0;j=l+j|0;j=j>>>0<255?j:255;i=i>>>0<255?i:255;h=h>>>0<255?h:255;break}case 64:{j=((O(l,j)|0)>>>0)/255|0;i=((O(m,i)|0)>>>0)/255|0;h=((O(k,h)|0)>>>0)/255|0;break}default:{}}c[d>>2]=i<<8|h<<16|j|n<<24;if(!e)break;else{d=d+4|0;f=f+v|0}}b=c[z>>2]|0}e=r+(c[x>>2]|0)|0;d=b+-1|0;c[z>>2]=d;if(!b)break;f=p+A|0;g=q;r=e;b=d;d=e;e=c[u>>2]|0}c[w>>2]=e;return}function rG(a){a=a|0;var b=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;b=c[a+52>>2]|0;r=d[a+60>>0]|0;s=d[a+61>>0]|0;j=d[a+62>>0]|0;k=d[a+63>>0]|0;l=a+28|0;q=c[l>>2]|0;c[l>>2]=q+-1;if(!q)return;m=a+20|0;n=a+24|0;o=a+12|0;p=a+32|0;q=(b&1|0)==0;g=(b&2|0)==0;e=c[a>>2]|0;f=c[m>>2]|0;h=e;i=f;while(1){t=c[n>>2]|0;b=t+-1|0;if(t|0)if(q)while(1){v=c[e>>2]|0;t=v>>>8;u=((O(v&255,k)|0)>>>0)/255|0;c[f>>2]=v>>>24<<16|(g?v:u)<<24|t&65280|t&255;if(!b)break;else{f=f+4|0;e=e+4|0;b=b+-1|0}}else while(1){w=c[e>>2]|0;x=((O(w>>>24,r)|0)>>>0)/255|0;u=((O(w>>>16&255,s)|0)>>>0)/255|0;v=((O(w>>>8&255,j)|0)>>>0)/255|0;t=((O(w&255,k)|0)>>>0)/255|0;c[f>>2]=x<<16|(g?w:t)<<24|u<<8|v;if(!b)break;else{f=f+4|0;e=e+4|0;b=b+-1|0}}e=h+(c[o>>2]|0)|0;b=i+(c[p>>2]|0)|0;x=c[l>>2]|0;c[l>>2]=x+-1;if(!x)break;else{h=e;i=b;f=b}}c[a>>2]=e;c[m>>2]=b;return}function sG(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;b=c[a+52>>2]|0;w=d[a+60>>0]|0;x=d[a+61>>0]|0;n=d[a+62>>0]|0;o=d[a+63>>0]|0;p=a+28|0;v=c[p>>2]|0;q=(c[a+8>>2]<<16|0)/(v|0)|0;r=a+24|0;e=c[r>>2]|0;s=(c[a+4>>2]<<16|0)/(e|0)|0;c[p>>2]=v+-1;if(!v)return;t=a+20|0;u=a+32|0;v=(b&1|0)==0;l=(b&2|0)==0;m=a+12|0;b=c[t>>2]|0;f=0;g=0;k=b;while(1){if((f|0)>65535){f=f+-65536|0;j=f>>>16;f=f-(j<<16)|0;g=g+1+j|0}j=e+-1|0;if(e|0)if(v){e=0;h=65536;i=-1;while(1){if((h|0)>65535){y=h+-65536|0;h=y>>>16;i=i+1+h|0;e=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(i<<2)|0;h=y-(h<<16)|0}y=c[e>>2]|0;z=y>>>8;A=((O(y&255,o)|0)>>>0)/255|0;c[b>>2]=z&65280|(l?y:A)<<24|z&255|y>>>24<<16;if(!j)break;else{b=b+4|0;h=h+s|0;j=j+-1|0}}}else{e=0;h=65536;i=-1;while(1){if((h|0)>65535){A=h+-65536|0;h=A>>>16;i=i+1+h|0;e=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(i<<2)|0;h=A-(h<<16)|0}B=c[e>>2]|0;A=((O(B>>>24,w)|0)>>>0)/255|0;C=((O(B>>>16&255,x)|0)>>>0)/255|0;z=((O(B>>>8&255,n)|0)>>>0)/255|0;y=((O(B&255,o)|0)>>>0)/255|0;c[b>>2]=C<<8|(l?B:y)<<24|z|A<<16;if(!j)break;else{b=b+4|0;h=h+s|0;j=j+-1|0}}}b=k+(c[u>>2]|0)|0;C=c[p>>2]|0;c[p>>2]=C+-1;if(!C)break;f=f+q|0;k=b;e=c[r>>2]|0}c[t>>2]=b;return}function tG(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;b=c[a+52>>2]|0;B=d[a+60>>0]|0;C=d[a+61>>0]|0;r=d[a+62>>0]|0;s=d[a+63>>0]|0;t=a+28|0;A=c[t>>2]|0;e=A+-1|0;c[t>>2]=e;if(!A)return;u=a+20|0;v=a+24|0;w=a+12|0;x=a+32|0;y=(b&1|0)==0;z=(b&2|0)==0;A=(b&48|0)!=0;q=b&112;o=c[a>>2]|0;b=c[u>>2]|0;p=b;f=o;while(1){g=c[v>>2]|0;if(!g)f=e;else{while(1){g=g+-1|0;n=c[f>>2]|0;m=n>>>24;k=n>>>16&255;j=n>>>8&255;n=n&255;l=c[b>>2]|0;e=l>>>16&255;h=l>>>8&255;i=l&255;l=l>>>24;if(!y){j=((O(j,r)|0)>>>0)/255|0;k=((O(k,C)|0)>>>0)/255|0;m=((O(m,B)|0)>>>0)/255|0}D=((O(n,s)|0)>>>0)/255|0;n=z?n:D;if(A&n>>>0<255){j=((O(j,n)|0)>>>0)/255|0;k=((O(k,n)|0)>>>0)/255|0;m=((O(m,n)|0)>>>0)/255|0}switch(q&127){case 16:{D=255-n|0;l=(((O(D,l)|0)>>>0)/255|0)+n|0;i=j+(((O(D,i)|0)>>>0)/255|0)|0;h=k+(((O(D,h)|0)>>>0)/255|0)|0;e=m+(((O(D,e)|0)>>>0)/255|0)|0;break}case 32:{e=m+e|0;h=k+h|0;i=j+i|0;i=i>>>0<255?i:255;h=h>>>0<255?h:255;e=e>>>0<255?e:255;break}case 64:{i=((O(j,i)|0)>>>0)/255|0;h=((O(k,h)|0)>>>0)/255|0;e=((O(m,e)|0)>>>0)/255|0;break}default:{}}c[b>>2]=h<<8|e<<16|i|l<<24;if(!g)break;else{b=b+4|0;f=f+4|0}}f=c[t>>2]|0}g=o+(c[w>>2]|0)|0;b=p+(c[x>>2]|0)|0;e=f+-1|0;c[t>>2]=e;if(!f)break;else{p=b;f=g;o=g}}c[a>>2]=g;c[u>>2]=b;return}function uG(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;b=c[a+52>>2]|0;G=d[a+60>>0]|0;H=d[a+61>>0]|0;v=d[a+62>>0]|0;w=d[a+63>>0]|0;x=a+28|0;F=c[x>>2]|0;y=(c[a+8>>2]<<16|0)/(F|0)|0;z=a+24|0;f=c[z>>2]|0;A=(c[a+4>>2]<<16|0)/(f|0)|0;e=F+-1|0;c[x>>2]=e;if(!F)return;B=a+20|0;C=a+32|0;D=(b&1|0)==0;E=(b&2|0)==0;F=(b&48|0)!=0;u=b&112;t=a+12|0;r=c[B>>2]|0;g=0;h=0;s=r;b=e;e=r;while(1){if((g|0)>65535){q=g+-65536|0;r=q>>>16;q=q-(r<<16)|0;r=h+1+r|0}else{q=g;r=h}if(f){b=0;g=65536;h=-1;while(1){f=f+-1|0;if((g|0)>65535){p=g+-65536|0;g=p>>>16;h=h+1+g|0;b=(c[a>>2]|0)+(O(c[t>>2]|0,r)|0)+(h<<2)|0;g=p-(g<<16)|0}p=c[b>>2]|0;l=p>>>24;n=p>>>16&255;m=p>>>8&255;p=p&255;o=c[e>>2]|0;i=o>>>16&255;j=o>>>8&255;k=o&255;o=o>>>24;if(!D){l=((O(l,G)|0)>>>0)/255|0;n=((O(n,H)|0)>>>0)/255|0;m=((O(m,v)|0)>>>0)/255|0}I=((O(p,w)|0)>>>0)/255|0;p=E?p:I;if(F&p>>>0<255){l=((O(l,p)|0)>>>0)/255|0;n=((O(n,p)|0)>>>0)/255|0;m=((O(m,p)|0)>>>0)/255|0}switch(u&127){case 16:{I=255-p|0;o=(((O(I,o)|0)>>>0)/255|0)+p|0;k=m+(((O(I,k)|0)>>>0)/255|0)|0;j=n+(((O(I,j)|0)>>>0)/255|0)|0;i=l+(((O(I,i)|0)>>>0)/255|0)|0;break}case 32:{i=l+i|0;j=n+j|0;k=m+k|0;k=k>>>0<255?k:255;j=j>>>0<255?j:255;i=i>>>0<255?i:255;break}case 64:{k=((O(m,k)|0)>>>0)/255|0;j=((O(n,j)|0)>>>0)/255|0;i=((O(l,i)|0)>>>0)/255|0;break}default:{}}c[e>>2]=j<<8|i<<16|k|o<<24;if(!f)break;else{e=e+4|0;g=g+A|0}}b=c[x>>2]|0}f=s+(c[C>>2]|0)|0;e=b+-1|0;c[x>>2]=e;if(!b)break;g=q+y|0;h=r;s=f;b=e;e=f;f=c[z>>2]|0}c[B>>2]=f;return}function vG(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=a+28|0;o=c[p>>2]|0;q=(c[a+8>>2]<<16|0)/(o|0)|0;k=a+24|0;b=c[k>>2]|0;l=(c[a+4>>2]<<16|0)/(b|0)|0;d=o+-1|0;c[p>>2]=d;if(!o)return;m=a+20|0;n=a+32|0;o=a+12|0;e=c[m>>2]|0;f=0;g=0;j=e;while(1){if((g|0)>65535){g=g+-65536|0;i=g>>>16;h=f+1+i|0;i=g-(i<<16)|0}else{h=f;i=g}if(!b)b=d;else{d=0;f=-1;g=65536;while(1){b=b+-1|0;if((g|0)>65535){r=g+-65536|0;g=r>>>16;f=f+1+g|0;d=(c[a>>2]|0)+(O(c[o>>2]|0,h)|0)+(f<<2)|0;g=r-(g<<16)|0}r=c[d>>2]|0;c[e>>2]=r<<16&16711680|r&65280|r>>>16&255;if(!b)break;else{e=e+4|0;g=g+l|0}}b=c[p>>2]|0}e=j+(c[n>>2]|0)|0;d=b+-1|0;c[p>>2]=d;if(!b)break;f=h;g=i+q|0;b=c[k>>2]|0;j=e}c[m>>2]=e;return}function wG(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;b=c[a+52>>2]|0;r=a+28|0;u=c[r>>2]|0;c[r>>2]=u+-1;if(!u)return;s=a+20|0;t=a+24|0;u=a+12|0;p=a+32|0;q=(b&48|0)==0;o=b&112;d=c[a>>2]|0;b=c[s>>2]|0;m=d;n=b;while(1){l=c[t>>2]|0;e=l+-1|0;a:do if(l|0){if(q){l=e;while(1){h=c[d>>2]|0;i=h>>>16&255;j=h>>>8&255;k=h&255;g=c[b>>2]|0;e=g>>>16&255;f=g>>>8&255;g=g&255;switch(o&127){case 16:{h=h>>>24^255;g=i+(((O(h,g)|0)>>>0)/255|0)|0;f=j+(((O(f,h)|0)>>>0)/255|0)|0;e=k+(((O(e,h)|0)>>>0)/255|0)|0;break}case 32:{e=k+e|0;f=j+f|0;g=i+g|0;g=g>>>0<255?g:255;f=f>>>0<255?f:255;e=e>>>0<255?e:255;break}case 64:{g=((O(i,g)|0)>>>0)/255|0;f=((O(j,f)|0)>>>0)/255|0;e=((O(k,e)|0)>>>0)/255|0;break}default:{}}c[b>>2]=f<<8|e<<16|g;if(!l)break a;else{b=b+4|0;d=d+4|0;l=l+-1|0}}}else l=e;while(1){k=c[d>>2]|0;i=k>>>16&255;j=k>>>8&255;h=k&255;k=k>>>24;g=c[b>>2]|0;e=g>>>16&255;f=g>>>8&255;g=g&255;if((k|0)!=255){h=((O(h,k)|0)>>>0)/255|0;i=((O(i,k)|0)>>>0)/255|0;j=((O(j,k)|0)>>>0)/255|0}switch(o&127){case 16:{k=k^255;g=i+(((O(k,g)|0)>>>0)/255|0)|0;f=j+(((O(f,k)|0)>>>0)/255|0)|0;e=h+(((O(e,k)|0)>>>0)/255|0)|0;break}case 32:{e=h+e|0;f=j+f|0;g=i+g|0;g=g>>>0<255?g:255;f=f>>>0<255?f:255;e=e>>>0<255?e:255;break}case 64:{g=((O(i,g)|0)>>>0)/255|0;f=((O(j,f)|0)>>>0)/255|0;e=((O(h,e)|0)>>>0)/255|0;break}default:{}}c[b>>2]=f<<8|e<<16|g;if(!l)break a;else{b=b+4|0;d=d+4|0;l=l+-1|0}}}while(0);d=m+(c[u>>2]|0)|0;b=n+(c[p>>2]|0)|0;n=c[r>>2]|0;c[r>>2]=n+-1;if(!n)break;else{m=d;n=b}}c[a>>2]=d;c[s>>2]=b;return}function xG(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;b=c[a+52>>2]|0;y=a+28|0;x=c[y>>2]|0;z=(c[a+8>>2]<<16|0)/(x|0)|0;t=a+24|0;e=c[t>>2]|0;u=(c[a+4>>2]<<16|0)/(e|0)|0;d=x+-1|0;c[y>>2]=d;if(!x)return;v=a+20|0;w=a+32|0;x=(b&48|0)!=0;s=b&112;r=a+12|0;p=c[v>>2]|0;g=0;h=0;b=p;while(1){if((g|0)>65535){g=g+-65536|0;q=g>>>16;g=g-(q<<16)|0;q=h+1+q|0}else q=h;if(!e)b=d;else{d=0;f=65536;h=-1;while(1){e=e+-1|0;if((f|0)>65535){o=f+-65536|0;f=o>>>16;h=h+1+f|0;d=(c[a>>2]|0)+(O(c[r>>2]|0,q)|0)+(h<<2)|0;f=o-(f<<16)|0}o=c[d>>2]|0;l=o>>>16&255;n=o>>>8&255;m=o&255;o=o>>>24;k=c[b>>2]|0;i=k>>>16&255;j=k>>>8&255;k=k&255;if(x&(o|0)!=255){m=((O(m,o)|0)>>>0)/255|0;n=((O(n,o)|0)>>>0)/255|0;l=((O(l,o)|0)>>>0)/255|0}switch(s&127){case 16:{o=o^255;k=l+(((O(o,k)|0)>>>0)/255|0)|0;j=n+(((O(j,o)|0)>>>0)/255|0)|0;i=m+(((O(i,o)|0)>>>0)/255|0)|0;break}case 32:{i=m+i|0;j=n+j|0;k=l+k|0;k=k>>>0<255?k:255;j=j>>>0<255?j:255;i=i>>>0<255?i:255;break}case 64:{k=((O(l,k)|0)>>>0)/255|0;j=((O(n,j)|0)>>>0)/255|0;i=((O(m,i)|0)>>>0)/255|0;break}default:{}}c[b>>2]=j<<8|i<<16|k;if(!e)break;else{b=b+4|0;f=f+u|0}}b=c[y>>2]|0}f=p+(c[w>>2]|0)|0;d=b+-1|0;c[y>>2]=d;if(!b)break;g=g+z|0;h=q;b=f;e=c[t>>2]|0;p=f}c[v>>2]=f;return}function yG(a){a=a|0;var b=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;b=c[a+52>>2]|0;k=d[a+60>>0]|0;l=d[a+61>>0]|0;j=d[a+62>>0]|0;m=a+28|0;q=c[m>>2]|0;g=q+-1|0;c[m>>2]=g;if(!q)return;q=a+20|0;n=a+24|0;o=a+12|0;p=a+32|0;f=c[a>>2]|0;e=c[q>>2]|0;if(!(b&1)){h=f;i=e;b=e;e=f;while(1){f=c[n>>2]|0;if(!f)f=g;else{while(1){f=f+-1|0;l=c[e>>2]|0;c[b>>2]=l&65280|l<<16&16711680|l>>>16&255;if(!f)break;else{b=b+4|0;e=e+4|0}}f=c[m>>2]|0}e=h+(c[o>>2]|0)|0;b=i+(c[p>>2]|0)|0;g=f+-1|0;c[m>>2]=g;if(!f)break;else{h=e;i=b}}}else{h=f;i=e;b=e;e=f;while(1){f=c[n>>2]|0;if(!f)f=g;else{while(1){f=f+-1|0;g=c[e>>2]|0;c[b>>2]=(((O(g>>>8&255,l)|0)>>>0)/255|0)<<8|(((O(g&255,k)|0)>>>0)/255|0)<<16|(((O(g>>>16&255,j)|0)>>>0)/255|0);if(!f)break;else{b=b+4|0;e=e+4|0}}f=c[m>>2]|0}e=h+(c[o>>2]|0)|0;b=i+(c[p>>2]|0)|0;g=f+-1|0;c[m>>2]=g;if(!f)break;else{h=e;i=b}}}c[a>>2]=e;c[q>>2]=b;return}function zG(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;b=c[a+52>>2]|0;u=d[a+60>>0]|0;v=d[a+61>>0]|0;n=d[a+62>>0]|0;o=a+28|0;t=c[o>>2]|0;p=(c[a+8>>2]<<16|0)/(t|0)|0;q=a+24|0;e=c[q>>2]|0;r=(c[a+4>>2]<<16|0)/(e|0)|0;c[o>>2]=t+-1;if(!t)return;s=a+20|0;t=a+32|0;l=(b&1|0)==0;m=a+12|0;b=c[s>>2]|0;f=0;g=0;k=b;while(1){if((f|0)>65535){f=f+-65536|0;j=f>>>16;f=f-(j<<16)|0;g=g+1+j|0}j=e+-1|0;if(e|0)if(l){e=0;h=65536;i=-1;while(1){if((h|0)>65535){w=h+-65536|0;h=w>>>16;i=i+1+h|0;e=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(i<<2)|0;h=w-(h<<16)|0}w=c[e>>2]|0;c[b>>2]=w>>>16&255|w&65280|w<<16&16711680;if(!j)break;else{b=b+4|0;h=h+r|0;j=j+-1|0}}}else{e=0;h=65536;i=-1;while(1){if((h|0)>65535){w=h+-65536|0;h=w>>>16;i=i+1+h|0;e=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(i<<2)|0;h=w-(h<<16)|0}w=c[e>>2]|0;c[b>>2]=((O(w>>>16&255,n)|0)>>>0)/255|0|(((O(w>>>8&255,v)|0)>>>0)/255|0)<<8|(((O(w&255,u)|0)>>>0)/255|0)<<16;if(!j)break;else{b=b+4|0;h=h+r|0;j=j+-1|0}}}b=k+(c[t>>2]|0)|0;w=c[o>>2]|0;c[o>>2]=w+-1;if(!w)break;f=f+p|0;k=b;e=c[q>>2]|0}c[s>>2]=b;return}function AG(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;b=c[a+52>>2]|0;A=d[a+60>>0]|0;B=d[a+61>>0]|0;q=d[a+62>>0]|0;r=d[a+63>>0]|0;s=a+28|0;z=c[s>>2]|0;e=z+-1|0;c[s>>2]=e;if(!z)return;t=a+20|0;u=a+24|0;v=a+12|0;w=a+32|0;x=(b&1|0)==0;y=(b&2|0)==0;z=(b&48|0)!=0;p=b&112;n=c[a>>2]|0;o=c[t>>2]|0;h=o;i=n;while(1){b=c[u>>2]|0;if(!b)b=e;else{m=b;while(1){m=m+-1|0;l=c[i>>2]|0;g=l>>>16&255;j=l>>>8&255;k=l&255;l=l>>>24;f=c[h>>2]|0;b=f>>>16&255;e=f>>>8&255;f=f&255;if(!x){g=((O(g,q)|0)>>>0)/255|0;j=((O(j,B)|0)>>>0)/255|0;k=((O(k,A)|0)>>>0)/255|0}C=((O(l,r)|0)>>>0)/255|0;l=y?l:C;if(z&l>>>0<255){g=((O(g,l)|0)>>>0)/255|0;j=((O(j,l)|0)>>>0)/255|0;k=((O(k,l)|0)>>>0)/255|0}switch(p&127){case 16:{C=255-l|0;f=g+(((O(C,f)|0)>>>0)/255|0)|0;e=j+(((O(C,e)|0)>>>0)/255|0)|0;b=k+(((O(C,b)|0)>>>0)/255|0)|0;break}case 32:{b=k+b|0;e=j+e|0;f=g+f|0;f=f>>>0<255?f:255;e=e>>>0<255?e:255;b=b>>>0<255?b:255;break}case 64:{f=((O(g,f)|0)>>>0)/255|0;e=((O(j,e)|0)>>>0)/255|0;b=((O(k,b)|0)>>>0)/255|0;break}default:{}}c[h>>2]=e<<8|b<<16|f;if(!m)break;else{h=h+4|0;i=i+4|0}}b=c[s>>2]|0}f=n+(c[v>>2]|0)|0;g=o+(c[w>>2]|0)|0;e=b+-1|0;c[s>>2]=e;if(!b)break;else{h=g;i=f;n=f;o=g}}c[a>>2]=f;c[t>>2]=g;return}function BG(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;b=c[a+52>>2]|0;F=d[a+60>>0]|0;G=d[a+61>>0]|0;u=d[a+62>>0]|0;v=d[a+63>>0]|0;w=a+28|0;E=c[w>>2]|0;x=(c[a+8>>2]<<16|0)/(E|0)|0;y=a+24|0;f=c[y>>2]|0;z=(c[a+4>>2]<<16|0)/(f|0)|0;e=E+-1|0;c[w>>2]=e;if(!E)return;A=a+20|0;B=a+32|0;C=(b&1|0)==0;D=(b&2|0)==0;E=(b&48|0)!=0;t=b&112;s=a+12|0;q=c[A>>2]|0;g=0;h=0;r=q;b=e;e=q;while(1){if((g|0)>65535){p=g+-65536|0;q=p>>>16;p=p-(q<<16)|0;q=h+1+q|0}else{p=g;q=h}if(f){b=0;g=65536;h=-1;while(1){f=f+-1|0;if((g|0)>65535){o=g+-65536|0;g=o>>>16;h=h+1+g|0;b=(c[a>>2]|0)+(O(c[s>>2]|0,q)|0)+(h<<2)|0;g=o-(g<<16)|0}o=c[b>>2]|0;l=o>>>16&255;n=o>>>8&255;m=o&255;o=o>>>24;k=c[e>>2]|0;i=k>>>16&255;j=k>>>8&255;k=k&255;if(!C){m=((O(m,F)|0)>>>0)/255|0;n=((O(n,G)|0)>>>0)/255|0;l=((O(l,u)|0)>>>0)/255|0}H=((O(o,v)|0)>>>0)/255|0;o=D?o:H;if(E&o>>>0<255){m=((O(m,o)|0)>>>0)/255|0;n=((O(n,o)|0)>>>0)/255|0;l=((O(l,o)|0)>>>0)/255|0}switch(t&127){case 16:{H=255-o|0;k=l+(((O(H,k)|0)>>>0)/255|0)|0;j=n+(((O(H,j)|0)>>>0)/255|0)|0;i=m+(((O(H,i)|0)>>>0)/255|0)|0;break}case 32:{i=m+i|0;j=n+j|0;k=l+k|0;k=k>>>0<255?k:255;j=j>>>0<255?j:255;i=i>>>0<255?i:255;break}case 64:{k=((O(l,k)|0)>>>0)/255|0;j=((O(n,j)|0)>>>0)/255|0;i=((O(m,i)|0)>>>0)/255|0;break}default:{}}c[e>>2]=j<<8|i<<16|k;if(!f)break;else{e=e+4|0;g=g+z|0}}b=c[w>>2]|0}f=r+(c[B>>2]|0)|0;e=b+-1|0;c[w>>2]=e;if(!b)break;g=p+x|0;h=q;r=f;b=e;e=f;f=c[y>>2]|0}c[A>>2]=f;return}function CG(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=a+28|0;o=c[p>>2]|0;q=(c[a+8>>2]<<16|0)/(o|0)|0;k=a+24|0;b=c[k>>2]|0;l=(c[a+4>>2]<<16|0)/(b|0)|0;d=o+-1|0;c[p>>2]=d;if(!o)return;m=a+20|0;n=a+32|0;o=a+12|0;e=c[m>>2]|0;f=0;g=0;j=e;while(1){if((g|0)>65535){g=g+-65536|0;i=g>>>16;h=f+1+i|0;i=g-(i<<16)|0}else{h=f;i=g}if(!b)b=d;else{d=0;f=-1;g=65536;while(1){b=b+-1|0;if((g|0)>65535){r=g+-65536|0;g=r>>>16;f=f+1+g|0;d=(c[a>>2]|0)+(O(c[o>>2]|0,h)|0)+(f<<2)|0;g=r-(g<<16)|0}c[e>>2]=c[d>>2]&16777215;if(!b)break;else{e=e+4|0;g=g+l|0}}b=c[p>>2]|0}e=j+(c[n>>2]|0)|0;d=b+-1|0;c[p>>2]=d;if(!b)break;f=h;g=i+q|0;b=c[k>>2]|0;j=e}c[m>>2]=e;return}function DG(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;b=c[a+52>>2]|0;r=a+28|0;u=c[r>>2]|0;c[r>>2]=u+-1;if(!u)return;s=a+20|0;t=a+24|0;u=a+12|0;p=a+32|0;q=(b&48|0)==0;o=b&112;d=c[a>>2]|0;b=c[s>>2]|0;m=d;n=b;while(1){l=c[t>>2]|0;e=l+-1|0;a:do if(l|0){if(q){l=e;while(1){h=c[d>>2]|0;i=h>>>16&255;j=h>>>8&255;k=h&255;e=c[b>>2]|0;g=e>>>16&255;f=e>>>8&255;e=e&255;switch(o&127){case 16:{h=h>>>24^255;g=i+(((O(g,h)|0)>>>0)/255|0)|0;f=j+(((O(f,h)|0)>>>0)/255|0)|0;e=k+(((O(h,e)|0)>>>0)/255|0)|0;break}case 32:{e=k+e|0;f=j+f|0;g=i+g|0;g=g>>>0<255?g:255;f=f>>>0<255?f:255;e=e>>>0<255?e:255;break}case 64:{g=((O(i,g)|0)>>>0)/255|0;f=((O(j,f)|0)>>>0)/255|0;e=((O(k,e)|0)>>>0)/255|0;break}default:{}}c[b>>2]=f<<8|e|g<<16;if(!l)break a;else{b=b+4|0;d=d+4|0;l=l+-1|0}}}else l=e;while(1){k=c[d>>2]|0;i=k>>>16&255;j=k>>>8&255;h=k&255;k=k>>>24;e=c[b>>2]|0;g=e>>>16&255;f=e>>>8&255;e=e&255;if((k|0)!=255){h=((O(h,k)|0)>>>0)/255|0;i=((O(i,k)|0)>>>0)/255|0;j=((O(j,k)|0)>>>0)/255|0}switch(o&127){case 16:{k=k^255;g=i+(((O(g,k)|0)>>>0)/255|0)|0;f=j+(((O(f,k)|0)>>>0)/255|0)|0;e=h+(((O(k,e)|0)>>>0)/255|0)|0;break}case 32:{e=h+e|0;f=j+f|0;g=i+g|0;g=g>>>0<255?g:255;f=f>>>0<255?f:255;e=e>>>0<255?e:255;break}case 64:{g=((O(i,g)|0)>>>0)/255|0;f=((O(j,f)|0)>>>0)/255|0;e=((O(h,e)|0)>>>0)/255|0;break}default:{}}c[b>>2]=f<<8|e|g<<16;if(!l)break a;else{b=b+4|0;d=d+4|0;l=l+-1|0}}}while(0);d=m+(c[u>>2]|0)|0;b=n+(c[p>>2]|0)|0;n=c[r>>2]|0;c[r>>2]=n+-1;if(!n)break;else{m=d;n=b}}c[a>>2]=d;c[s>>2]=b;return}function EG(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;b=c[a+52>>2]|0;y=a+28|0;x=c[y>>2]|0;z=(c[a+8>>2]<<16|0)/(x|0)|0;t=a+24|0;e=c[t>>2]|0;u=(c[a+4>>2]<<16|0)/(e|0)|0;d=x+-1|0;c[y>>2]=d;if(!x)return;v=a+20|0;w=a+32|0;x=(b&48|0)!=0;s=b&112;r=a+12|0;p=c[v>>2]|0;g=0;h=0;b=p;while(1){if((g|0)>65535){g=g+-65536|0;q=g>>>16;g=g-(q<<16)|0;q=h+1+q|0}else q=h;if(!e)b=d;else{d=0;f=65536;h=-1;while(1){e=e+-1|0;if((f|0)>65535){o=f+-65536|0;f=o>>>16;h=h+1+f|0;d=(c[a>>2]|0)+(O(c[r>>2]|0,q)|0)+(h<<2)|0;f=o-(f<<16)|0}o=c[d>>2]|0;l=o>>>16&255;n=o>>>8&255;m=o&255;o=o>>>24;i=c[b>>2]|0;k=i>>>16&255;j=i>>>8&255;i=i&255;if(x&(o|0)!=255){m=((O(m,o)|0)>>>0)/255|0;n=((O(n,o)|0)>>>0)/255|0;l=((O(l,o)|0)>>>0)/255|0}switch(s&127){case 16:{o=o^255;k=l+(((O(k,o)|0)>>>0)/255|0)|0;j=n+(((O(j,o)|0)>>>0)/255|0)|0;i=m+(((O(o,i)|0)>>>0)/255|0)|0;break}case 32:{i=m+i|0;j=n+j|0;k=l+k|0;k=k>>>0<255?k:255;j=j>>>0<255?j:255;i=i>>>0<255?i:255;break}case 64:{k=((O(l,k)|0)>>>0)/255|0;j=((O(n,j)|0)>>>0)/255|0;i=((O(m,i)|0)>>>0)/255|0;break}default:{}}c[b>>2]=j<<8|i|k<<16;if(!e)break;else{b=b+4|0;f=f+u|0}}b=c[y>>2]|0}f=p+(c[w>>2]|0)|0;d=b+-1|0;c[y>>2]=d;if(!b)break;g=g+z|0;h=q;b=f;e=c[t>>2]|0;p=f}c[v>>2]=f;return}function FG(a){a=a|0;var b=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;b=c[a+52>>2]|0;k=d[a+60>>0]|0;l=d[a+61>>0]|0;j=d[a+62>>0]|0;m=a+28|0;q=c[m>>2]|0;g=q+-1|0;c[m>>2]=g;if(!q)return;q=a+20|0;n=a+24|0;o=a+12|0;p=a+32|0;f=c[a>>2]|0;e=c[q>>2]|0;if(!(b&1)){h=f;i=e;b=e;e=f;while(1){f=c[n>>2]|0;if(!f)f=g;else{while(1){f=f+-1|0;c[b>>2]=c[e>>2]&16777215;if(!f)break;else{b=b+4|0;e=e+4|0}}f=c[m>>2]|0}e=h+(c[o>>2]|0)|0;b=i+(c[p>>2]|0)|0;g=f+-1|0;c[m>>2]=g;if(!f)break;else{h=e;i=b}}}else{h=f;i=e;b=e;e=f;while(1){f=c[n>>2]|0;if(!f)f=g;else{while(1){f=f+-1|0;g=c[e>>2]|0;c[b>>2]=(((O(g>>>8&255,l)|0)>>>0)/255|0)<<8|(((O(g&255,k)|0)>>>0)/255|0)|(((O(g>>>16&255,j)|0)>>>0)/255|0)<<16;if(!f)break;else{b=b+4|0;e=e+4|0}}f=c[m>>2]|0}e=h+(c[o>>2]|0)|0;b=i+(c[p>>2]|0)|0;g=f+-1|0;c[m>>2]=g;if(!f)break;else{h=e;i=b}}}c[a>>2]=e;c[q>>2]=b;return}function GG(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;b=c[a+52>>2]|0;u=d[a+60>>0]|0;v=d[a+61>>0]|0;n=d[a+62>>0]|0;o=a+28|0;t=c[o>>2]|0;p=(c[a+8>>2]<<16|0)/(t|0)|0;q=a+24|0;e=c[q>>2]|0;r=(c[a+4>>2]<<16|0)/(e|0)|0;c[o>>2]=t+-1;if(!t)return;s=a+20|0;t=a+32|0;l=(b&1|0)==0;m=a+12|0;k=c[s>>2]|0;f=0;g=0;h=k;while(1){if((f|0)>65535){f=f+-65536|0;j=f>>>16;f=f-(j<<16)|0;g=g+1+j|0}i=e+-1|0;if(e|0)if(l){j=h;b=0;e=65536;h=-1;while(1){if((e|0)>65535){w=e+-65536|0;e=w>>>16;h=h+1+e|0;b=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(h<<2)|0;e=w-(e<<16)|0}c[j>>2]=c[b>>2]&16777215;if(!i)break;else{j=j+4|0;e=e+r|0;i=i+-1|0}}}else{j=h;b=0;e=65536;h=-1;while(1){if((e|0)>65535){w=e+-65536|0;e=w>>>16;h=h+1+e|0;b=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(h<<2)|0;e=w-(e<<16)|0}w=c[b>>2]|0;c[j>>2]=(((O(w>>>16&255,n)|0)>>>0)/255|0)<<16|(((O(w>>>8&255,v)|0)>>>0)/255|0)<<8|(((O(w&255,u)|0)>>>0)/255|0);if(!i)break;else{j=j+4|0;e=e+r|0;i=i+-1|0}}}b=k+(c[t>>2]|0)|0;w=c[o>>2]|0;c[o>>2]=w+-1;if(!w)break;f=f+p|0;h=b;e=c[q>>2]|0;k=b}c[s>>2]=b;return}function HG(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;b=c[a+52>>2]|0;A=d[a+60>>0]|0;B=d[a+61>>0]|0;q=d[a+62>>0]|0;r=d[a+63>>0]|0;s=a+28|0;z=c[s>>2]|0;e=z+-1|0;c[s>>2]=e;if(!z)return;t=a+20|0;u=a+24|0;v=a+12|0;w=a+32|0;x=(b&1|0)==0;y=(b&2|0)==0;z=(b&48|0)!=0;p=b&112;n=c[a>>2]|0;o=c[t>>2]|0;h=o;i=n;while(1){b=c[u>>2]|0;if(!b)b=e;else{m=b;while(1){m=m+-1|0;l=c[i>>2]|0;g=l>>>16&255;j=l>>>8&255;k=l&255;l=l>>>24;b=c[h>>2]|0;f=b>>>16&255;e=b>>>8&255;b=b&255;if(!x){g=((O(g,q)|0)>>>0)/255|0;j=((O(j,B)|0)>>>0)/255|0;k=((O(k,A)|0)>>>0)/255|0}C=((O(l,r)|0)>>>0)/255|0;l=y?l:C;if(z&l>>>0<255){g=((O(g,l)|0)>>>0)/255|0;j=((O(j,l)|0)>>>0)/255|0;k=((O(k,l)|0)>>>0)/255|0}switch(p&127){case 16:{C=255-l|0;f=g+(((O(C,f)|0)>>>0)/255|0)|0;e=j+(((O(C,e)|0)>>>0)/255|0)|0;b=k+(((O(C,b)|0)>>>0)/255|0)|0;break}case 32:{b=k+b|0;e=j+e|0;f=g+f|0;f=f>>>0<255?f:255;e=e>>>0<255?e:255;b=b>>>0<255?b:255;break}case 64:{f=((O(g,f)|0)>>>0)/255|0;e=((O(j,e)|0)>>>0)/255|0;b=((O(k,b)|0)>>>0)/255|0;break}default:{}}c[h>>2]=e<<8|b|f<<16;if(!m)break;else{h=h+4|0;i=i+4|0}}b=c[s>>2]|0}f=n+(c[v>>2]|0)|0;g=o+(c[w>>2]|0)|0;e=b+-1|0;c[s>>2]=e;if(!b)break;else{h=g;i=f;n=f;o=g}}c[a>>2]=f;c[t>>2]=g;return}function IG(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;b=c[a+52>>2]|0;F=d[a+60>>0]|0;G=d[a+61>>0]|0;u=d[a+62>>0]|0;v=d[a+63>>0]|0;w=a+28|0;E=c[w>>2]|0;x=(c[a+8>>2]<<16|0)/(E|0)|0;y=a+24|0;f=c[y>>2]|0;z=(c[a+4>>2]<<16|0)/(f|0)|0;e=E+-1|0;c[w>>2]=e;if(!E)return;A=a+20|0;B=a+32|0;C=(b&1|0)==0;D=(b&2|0)==0;E=(b&48|0)!=0;t=b&112;s=a+12|0;q=c[A>>2]|0;g=0;h=0;r=q;b=e;e=q;while(1){if((g|0)>65535){p=g+-65536|0;q=p>>>16;p=p-(q<<16)|0;q=h+1+q|0}else{p=g;q=h}if(f){b=0;g=65536;h=-1;while(1){f=f+-1|0;if((g|0)>65535){o=g+-65536|0;g=o>>>16;h=h+1+g|0;b=(c[a>>2]|0)+(O(c[s>>2]|0,q)|0)+(h<<2)|0;g=o-(g<<16)|0}o=c[b>>2]|0;l=o>>>16&255;n=o>>>8&255;m=o&255;o=o>>>24;i=c[e>>2]|0;k=i>>>16&255;j=i>>>8&255;i=i&255;if(!C){m=((O(m,F)|0)>>>0)/255|0;n=((O(n,G)|0)>>>0)/255|0;l=((O(l,u)|0)>>>0)/255|0}H=((O(o,v)|0)>>>0)/255|0;o=D?o:H;if(E&o>>>0<255){m=((O(m,o)|0)>>>0)/255|0;n=((O(n,o)|0)>>>0)/255|0;l=((O(l,o)|0)>>>0)/255|0}switch(t&127){case 16:{H=255-o|0;k=l+(((O(H,k)|0)>>>0)/255|0)|0;j=n+(((O(H,j)|0)>>>0)/255|0)|0;i=m+(((O(H,i)|0)>>>0)/255|0)|0;break}case 32:{i=m+i|0;j=n+j|0;k=l+k|0;k=k>>>0<255?k:255;j=j>>>0<255?j:255;i=i>>>0<255?i:255;break}case 64:{k=((O(l,k)|0)>>>0)/255|0;j=((O(n,j)|0)>>>0)/255|0;i=((O(m,i)|0)>>>0)/255|0;break}default:{}}c[e>>2]=j<<8|i|k<<16;if(!f)break;else{e=e+4|0;g=g+z|0}}b=c[w>>2]|0}f=r+(c[B>>2]|0)|0;e=b+-1|0;c[w>>2]=e;if(!b)break;g=p+x|0;h=q;r=f;b=e;e=f;f=c[y>>2]|0}c[A>>2]=f;return}function JG(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=a+28|0;o=c[p>>2]|0;q=(c[a+8>>2]<<16|0)/(o|0)|0;k=a+24|0;b=c[k>>2]|0;l=(c[a+4>>2]<<16|0)/(b|0)|0;d=o+-1|0;c[p>>2]=d;if(!o)return;m=a+20|0;n=a+32|0;o=a+12|0;e=c[m>>2]|0;f=0;g=0;j=e;while(1){if((g|0)>65535){g=g+-65536|0;i=g>>>16;h=f+1+i|0;i=g-(i<<16)|0}else{h=f;i=g}if(!b)b=d;else{d=0;f=-1;g=65536;while(1){b=b+-1|0;if((g|0)>65535){r=g+-65536|0;g=r>>>16;f=f+1+g|0;d=(c[a>>2]|0)+(O(c[o>>2]|0,h)|0)+(f<<2)|0;g=r-(g<<16)|0}r=c[d>>2]|0;c[e>>2]=r&-16711936|r<<16&16711680|r>>>16&255;if(!b)break;else{e=e+4|0;g=g+l|0}}b=c[p>>2]|0}e=j+(c[n>>2]|0)|0;d=b+-1|0;c[p>>2]=d;if(!b)break;f=h;g=i+q|0;b=c[k>>2]|0;j=e}c[m>>2]=e;return}function KG(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,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=c[a+52>>2]|0;s=a+28|0;v=c[s>>2]|0;c[s>>2]=v+-1;if(!v)return;t=a+20|0;u=a+24|0;v=a+12|0;q=a+32|0;r=(b&48|0)==0;p=b&112;d=c[a>>2]|0;b=c[t>>2]|0;n=d;o=b;while(1){m=c[u>>2]|0;e=m+-1|0;a:do if(m|0){if(r){m=e;while(1){h=c[d>>2]|0;j=h>>>16&255;k=h>>>8&255;l=h&255;h=h>>>24;i=c[b>>2]|0;e=i>>>16&255;f=i>>>8&255;g=i&255;i=i>>>24;switch(p&127){case 16:{w=h^255;i=(((O(w,i)|0)>>>0)/255|0)+h|0;g=j+(((O(w,g)|0)>>>0)/255|0)|0;f=k+(((O(f,w)|0)>>>0)/255|0)|0;e=l+(((O(e,w)|0)>>>0)/255|0)|0;break}case 32:{e=l+e|0;f=k+f|0;g=j+g|0;g=g>>>0<255?g:255;f=f>>>0<255?f:255;e=e>>>0<255?e:255;break}case 64:{g=((O(j,g)|0)>>>0)/255|0;f=((O(k,f)|0)>>>0)/255|0;e=((O(l,e)|0)>>>0)/255|0;break}default:{}}c[b>>2]=f<<8|e<<16|g|i<<24;if(!m)break a;else{b=b+4|0;d=d+4|0;m=m+-1|0}}}else m=e;while(1){l=c[d>>2]|0;h=l>>>16&255;i=l>>>8&255;k=l&255;l=l>>>24;j=c[b>>2]|0;e=j>>>16&255;f=j>>>8&255;g=j&255;j=j>>>24;if((l|0)!=255){h=((O(h,l)|0)>>>0)/255|0;i=((O(i,l)|0)>>>0)/255|0;k=((O(k,l)|0)>>>0)/255|0}switch(p&127){case 16:{w=l^255;j=(((O(w,j)|0)>>>0)/255|0)+l|0;g=h+(((O(w,g)|0)>>>0)/255|0)|0;f=i+(((O(f,w)|0)>>>0)/255|0)|0;e=k+(((O(e,w)|0)>>>0)/255|0)|0;break}case 32:{e=k+e|0;f=i+f|0;g=h+g|0;g=g>>>0<255?g:255;f=f>>>0<255?f:255;e=e>>>0<255?e:255;break}case 64:{g=((O(h,g)|0)>>>0)/255|0;f=((O(i,f)|0)>>>0)/255|0;e=((O(k,e)|0)>>>0)/255|0;break}default:{}}c[b>>2]=f<<8|e<<16|g|j<<24;if(!m)break a;else{b=b+4|0;d=d+4|0;m=m+-1|0}}}while(0);d=n+(c[v>>2]|0)|0;b=o+(c[q>>2]|0)|0;w=c[s>>2]|0;c[s>>2]=w+-1;if(!w)break;else{n=d;o=b}}c[a>>2]=d;c[t>>2]=b;return}function LG(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;b=c[a+52>>2]|0;z=a+28|0;y=c[z>>2]|0;A=(c[a+8>>2]<<16|0)/(y|0)|0;u=a+24|0;e=c[u>>2]|0;v=(c[a+4>>2]<<16|0)/(e|0)|0;d=y+-1|0;c[z>>2]=d;if(!y)return;w=a+20|0;x=a+32|0;y=(b&48|0)!=0;t=b&112;s=a+12|0;q=c[w>>2]|0;f=0;g=0;r=q;b=d;d=q;while(1){if((f|0)>65535){p=f+-65536|0;q=p>>>16;p=p-(q<<16)|0;q=g+1+q|0}else{p=f;q=g}if(e){b=0;f=65536;g=-1;while(1){e=e+-1|0;if((f|0)>65535){o=f+-65536|0;f=o>>>16;g=g+1+f|0;b=(c[a>>2]|0)+(O(c[s>>2]|0,q)|0)+(g<<2)|0;f=o-(f<<16)|0}o=c[b>>2]|0;l=o>>>16&255;m=o>>>8&255;k=o&255;o=o>>>24;n=c[d>>2]|0;h=n>>>16&255;i=n>>>8&255;j=n&255;n=n>>>24;if(y&(o|0)!=255){k=((O(k,o)|0)>>>0)/255|0;m=((O(m,o)|0)>>>0)/255|0;l=((O(l,o)|0)>>>0)/255|0}switch(t&127){case 16:{B=o^255;n=(((O(B,n)|0)>>>0)/255|0)+o|0;j=l+(((O(B,j)|0)>>>0)/255|0)|0;i=m+(((O(i,B)|0)>>>0)/255|0)|0;h=k+(((O(h,B)|0)>>>0)/255|0)|0;break}case 32:{h=k+h|0;i=m+i|0;j=l+j|0;j=j>>>0<255?j:255;i=i>>>0<255?i:255;h=h>>>0<255?h:255;break}case 64:{j=((O(l,j)|0)>>>0)/255|0;i=((O(m,i)|0)>>>0)/255|0;h=((O(k,h)|0)>>>0)/255|0;break}default:{}}c[d>>2]=i<<8|h<<16|j|n<<24;if(!e)break;else{d=d+4|0;f=f+v|0}}b=c[z>>2]|0}e=r+(c[x>>2]|0)|0;d=b+-1|0;c[z>>2]=d;if(!b)break;f=p+A|0;g=q;r=e;b=d;d=e;e=c[u>>2]|0}c[w>>2]=e;return}function MG(a){a=a|0;var b=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;b=c[a+52>>2]|0;r=d[a+60>>0]|0;s=d[a+61>>0]|0;j=d[a+62>>0]|0;k=d[a+63>>0]|0;l=a+28|0;q=c[l>>2]|0;c[l>>2]=q+-1;if(!q)return;m=a+20|0;n=a+24|0;o=a+12|0;p=a+32|0;q=(b&1|0)==0;g=(b&2|0)==0;e=c[a>>2]|0;f=c[m>>2]|0;h=e;i=f;while(1){t=c[n>>2]|0;b=t+-1|0;if(t|0)if(q)while(1){t=c[e>>2]|0;v=t>>>24;u=((O(v,k)|0)>>>0)/255|0;c[f>>2]=t<<16&16711680|(g?v:u)<<24|t&65280|t>>>16&255;if(!b)break;else{f=f+4|0;e=e+4|0;b=b+-1|0}}else while(1){v=c[e>>2]|0;w=v>>>24;x=((O(v&255,r)|0)>>>0)/255|0;u=((O(v>>>8&255,s)|0)>>>0)/255|0;v=((O(v>>>16&255,j)|0)>>>0)/255|0;t=((O(w,k)|0)>>>0)/255|0;c[f>>2]=x<<16|(g?w:t)<<24|u<<8|v;if(!b)break;else{f=f+4|0;e=e+4|0;b=b+-1|0}}e=h+(c[o>>2]|0)|0;b=i+(c[p>>2]|0)|0;x=c[l>>2]|0;c[l>>2]=x+-1;if(!x)break;else{h=e;i=b;f=b}}c[a>>2]=e;c[m>>2]=b;return}function NG(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;b=c[a+52>>2]|0;w=d[a+60>>0]|0;x=d[a+61>>0]|0;n=d[a+62>>0]|0;o=d[a+63>>0]|0;p=a+28|0;v=c[p>>2]|0;q=(c[a+8>>2]<<16|0)/(v|0)|0;r=a+24|0;e=c[r>>2]|0;s=(c[a+4>>2]<<16|0)/(e|0)|0;c[p>>2]=v+-1;if(!v)return;t=a+20|0;u=a+32|0;v=(b&1|0)==0;l=(b&2|0)==0;m=a+12|0;b=c[t>>2]|0;f=0;g=0;k=b;while(1){if((f|0)>65535){f=f+-65536|0;j=f>>>16;f=f-(j<<16)|0;g=g+1+j|0}j=e+-1|0;if(e|0)if(v){e=0;h=65536;i=-1;while(1){if((h|0)>65535){y=h+-65536|0;h=y>>>16;i=i+1+h|0;e=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(i<<2)|0;h=y-(h<<16)|0}y=c[e>>2]|0;A=y>>>24;z=((O(A,o)|0)>>>0)/255|0;c[b>>2]=y&65280|(l?A:z)<<24|y>>>16&255|y<<16&16711680;if(!j)break;else{b=b+4|0;h=h+s|0;j=j+-1|0}}}else{e=0;h=65536;i=-1;while(1){if((h|0)>65535){A=h+-65536|0;h=A>>>16;i=i+1+h|0;e=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(i<<2)|0;h=A-(h<<16)|0}z=c[e>>2]|0;B=z>>>24;A=((O(z&255,w)|0)>>>0)/255|0;C=((O(z>>>8&255,x)|0)>>>0)/255|0;z=((O(z>>>16&255,n)|0)>>>0)/255|0;y=((O(B,o)|0)>>>0)/255|0;c[b>>2]=C<<8|(l?B:y)<<24|z|A<<16;if(!j)break;else{b=b+4|0;h=h+s|0;j=j+-1|0}}}b=k+(c[u>>2]|0)|0;C=c[p>>2]|0;c[p>>2]=C+-1;if(!C)break;f=f+q|0;k=b;e=c[r>>2]|0}c[t>>2]=b;return}function OG(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;b=c[a+52>>2]|0;B=d[a+60>>0]|0;C=d[a+61>>0]|0;r=d[a+62>>0]|0;s=d[a+63>>0]|0;t=a+28|0;A=c[t>>2]|0;e=A+-1|0;c[t>>2]=e;if(!A)return;u=a+20|0;v=a+24|0;w=a+12|0;x=a+32|0;y=(b&1|0)==0;z=(b&2|0)==0;A=(b&48|0)!=0;q=b&112;o=c[a>>2]|0;b=c[u>>2]|0;p=b;f=o;while(1){g=c[v>>2]|0;if(!g)f=e;else{while(1){g=g+-1|0;n=c[f>>2]|0;j=n>>>16&255;k=n>>>8&255;m=n&255;n=n>>>24;l=c[b>>2]|0;e=l>>>16&255;h=l>>>8&255;i=l&255;l=l>>>24;if(!y){j=((O(j,r)|0)>>>0)/255|0;k=((O(k,C)|0)>>>0)/255|0;m=((O(m,B)|0)>>>0)/255|0}D=((O(n,s)|0)>>>0)/255|0;n=z?n:D;if(A&n>>>0<255){j=((O(j,n)|0)>>>0)/255|0;k=((O(k,n)|0)>>>0)/255|0;m=((O(m,n)|0)>>>0)/255|0}switch(q&127){case 16:{D=255-n|0;l=(((O(D,l)|0)>>>0)/255|0)+n|0;i=j+(((O(D,i)|0)>>>0)/255|0)|0;h=k+(((O(D,h)|0)>>>0)/255|0)|0;e=m+(((O(D,e)|0)>>>0)/255|0)|0;break}case 32:{e=m+e|0;h=k+h|0;i=j+i|0;i=i>>>0<255?i:255;h=h>>>0<255?h:255;e=e>>>0<255?e:255;break}case 64:{i=((O(j,i)|0)>>>0)/255|0;h=((O(k,h)|0)>>>0)/255|0;e=((O(m,e)|0)>>>0)/255|0;break}default:{}}c[b>>2]=h<<8|e<<16|i|l<<24;if(!g)break;else{b=b+4|0;f=f+4|0}}f=c[t>>2]|0}g=o+(c[w>>2]|0)|0;b=p+(c[x>>2]|0)|0;e=f+-1|0;c[t>>2]=e;if(!f)break;else{p=b;f=g;o=g}}c[a>>2]=g;c[u>>2]=b;return}function PG(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;b=c[a+52>>2]|0;G=d[a+60>>0]|0;H=d[a+61>>0]|0;v=d[a+62>>0]|0;w=d[a+63>>0]|0;x=a+28|0;F=c[x>>2]|0;y=(c[a+8>>2]<<16|0)/(F|0)|0;z=a+24|0;f=c[z>>2]|0;A=(c[a+4>>2]<<16|0)/(f|0)|0;e=F+-1|0;c[x>>2]=e;if(!F)return;B=a+20|0;C=a+32|0;D=(b&1|0)==0;E=(b&2|0)==0;F=(b&48|0)!=0;u=b&112;t=a+12|0;r=c[B>>2]|0;g=0;h=0;s=r;b=e;e=r;while(1){if((g|0)>65535){q=g+-65536|0;r=q>>>16;q=q-(r<<16)|0;r=h+1+r|0}else{q=g;r=h}if(f){b=0;g=65536;h=-1;while(1){f=f+-1|0;if((g|0)>65535){p=g+-65536|0;g=p>>>16;h=h+1+g|0;b=(c[a>>2]|0)+(O(c[t>>2]|0,r)|0)+(h<<2)|0;g=p-(g<<16)|0}p=c[b>>2]|0;m=p>>>16&255;n=p>>>8&255;l=p&255;p=p>>>24;o=c[e>>2]|0;i=o>>>16&255;j=o>>>8&255;k=o&255;o=o>>>24;if(!D){l=((O(l,G)|0)>>>0)/255|0;n=((O(n,H)|0)>>>0)/255|0;m=((O(m,v)|0)>>>0)/255|0}I=((O(p,w)|0)>>>0)/255|0;p=E?p:I;if(F&p>>>0<255){l=((O(l,p)|0)>>>0)/255|0;n=((O(n,p)|0)>>>0)/255|0;m=((O(m,p)|0)>>>0)/255|0}switch(u&127){case 16:{I=255-p|0;o=(((O(I,o)|0)>>>0)/255|0)+p|0;k=m+(((O(I,k)|0)>>>0)/255|0)|0;j=n+(((O(I,j)|0)>>>0)/255|0)|0;i=l+(((O(I,i)|0)>>>0)/255|0)|0;break}case 32:{i=l+i|0;j=n+j|0;k=m+k|0;k=k>>>0<255?k:255;j=j>>>0<255?j:255;i=i>>>0<255?i:255;break}case 64:{k=((O(m,k)|0)>>>0)/255|0;j=((O(n,j)|0)>>>0)/255|0;i=((O(l,i)|0)>>>0)/255|0;break}default:{}}c[e>>2]=j<<8|i<<16|k|o<<24;if(!f)break;else{e=e+4|0;g=g+A|0}}b=c[x>>2]|0}f=s+(c[C>>2]|0)|0;e=b+-1|0;c[x>>2]=e;if(!b)break;g=q+y|0;h=r;s=f;b=e;e=f;f=c[z>>2]|0}c[B>>2]=f;return}function QG(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=a+28|0;o=c[p>>2]|0;q=(c[a+8>>2]<<16|0)/(o|0)|0;k=a+24|0;b=c[k>>2]|0;l=(c[a+4>>2]<<16|0)/(b|0)|0;d=o+-1|0;c[p>>2]=d;if(!o)return;m=a+20|0;n=a+32|0;o=a+12|0;e=c[m>>2]|0;f=0;g=0;j=e;while(1){if((g|0)>65535){g=g+-65536|0;i=g>>>16;h=f+1+i|0;i=g-(i<<16)|0}else{h=f;i=g}if(!b)b=d;else{d=0;f=-1;g=65536;while(1){b=b+-1|0;if((g|0)>65535){r=g+-65536|0;g=r>>>16;f=f+1+g|0;d=(c[a>>2]|0)+(O(c[o>>2]|0,h)|0)+(f<<2)|0;g=r-(g<<16)|0}r=c[d>>2]|0;c[e>>2]=r>>>8&65280|r>>>24|r<<8&16711680;if(!b)break;else{e=e+4|0;g=g+l|0}}b=c[p>>2]|0}e=j+(c[n>>2]|0)|0;d=b+-1|0;c[p>>2]=d;if(!b)break;f=h;g=i+q|0;b=c[k>>2]|0;j=e}c[m>>2]=e;return}function RG(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;b=c[a+52>>2]|0;r=a+28|0;u=c[r>>2]|0;c[r>>2]=u+-1;if(!u)return;s=a+20|0;t=a+24|0;u=a+12|0;p=a+32|0;q=(b&48|0)==0;o=b&112;d=c[a>>2]|0;b=c[s>>2]|0;m=d;n=b;while(1){l=c[t>>2]|0;e=l+-1|0;a:do if(l|0){if(q){l=e;while(1){h=c[d>>2]|0;i=h>>>24;j=h>>>16&255;k=h>>>8&255;g=c[b>>2]|0;e=g>>>16&255;f=g>>>8&255;g=g&255;switch(o&127){case 16:{h=h&255^255;g=i+(((O(h,g)|0)>>>0)/255|0)|0;f=j+(((O(f,h)|0)>>>0)/255|0)|0;e=k+(((O(e,h)|0)>>>0)/255|0)|0;break}case 32:{e=k+e|0;f=j+f|0;g=i+g|0;g=g>>>0<255?g:255;f=f>>>0<255?f:255;e=e>>>0<255?e:255;break}case 64:{g=((O(i,g)|0)>>>0)/255|0;f=((O(j,f)|0)>>>0)/255|0;e=((O(k,e)|0)>>>0)/255|0;break}default:{}}c[b>>2]=f<<8|e<<16|g;if(!l)break a;else{b=b+4|0;d=d+4|0;l=l+-1|0}}}else l=e;while(1){k=c[d>>2]|0;i=k>>>24;j=k>>>16&255;h=k>>>8&255;k=k&255;g=c[b>>2]|0;e=g>>>16&255;f=g>>>8&255;g=g&255;if((k|0)!=255){h=((O(h,k)|0)>>>0)/255|0;i=((O(i,k)|0)>>>0)/255|0;j=((O(j,k)|0)>>>0)/255|0}switch(o&127){case 16:{k=k^255;g=i+(((O(k,g)|0)>>>0)/255|0)|0;f=j+(((O(f,k)|0)>>>0)/255|0)|0;e=h+(((O(e,k)|0)>>>0)/255|0)|0;break}case 32:{e=h+e|0;f=j+f|0;g=i+g|0;g=g>>>0<255?g:255;f=f>>>0<255?f:255;e=e>>>0<255?e:255;break}case 64:{g=((O(i,g)|0)>>>0)/255|0;f=((O(j,f)|0)>>>0)/255|0;e=((O(h,e)|0)>>>0)/255|0;break}default:{}}c[b>>2]=f<<8|e<<16|g;if(!l)break a;else{b=b+4|0;d=d+4|0;l=l+-1|0}}}while(0);d=m+(c[u>>2]|0)|0;b=n+(c[p>>2]|0)|0;n=c[r>>2]|0;c[r>>2]=n+-1;if(!n)break;else{m=d;n=b}}c[a>>2]=d;c[s>>2]=b;return}function SG(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;b=c[a+52>>2]|0;y=a+28|0;x=c[y>>2]|0;z=(c[a+8>>2]<<16|0)/(x|0)|0;t=a+24|0;e=c[t>>2]|0;u=(c[a+4>>2]<<16|0)/(e|0)|0;d=x+-1|0;c[y>>2]=d;if(!x)return;v=a+20|0;w=a+32|0;x=(b&48|0)!=0;s=b&112;r=a+12|0;p=c[v>>2]|0;g=0;h=0;b=p;while(1){if((g|0)>65535){g=g+-65536|0;q=g>>>16;g=g-(q<<16)|0;q=h+1+q|0}else q=h;if(!e)b=d;else{d=0;f=65536;h=-1;while(1){e=e+-1|0;if((f|0)>65535){o=f+-65536|0;f=o>>>16;h=h+1+f|0;d=(c[a>>2]|0)+(O(c[r>>2]|0,q)|0)+(h<<2)|0;f=o-(f<<16)|0}o=c[d>>2]|0;l=o>>>24;n=o>>>16&255;m=o>>>8&255;o=o&255;k=c[b>>2]|0;i=k>>>16&255;j=k>>>8&255;k=k&255;if(x&(o|0)!=255){m=((O(m,o)|0)>>>0)/255|0;n=((O(n,o)|0)>>>0)/255|0;l=((O(l,o)|0)>>>0)/255|0}switch(s&127){case 16:{o=o^255;k=l+(((O(o,k)|0)>>>0)/255|0)|0;j=n+(((O(j,o)|0)>>>0)/255|0)|0;i=m+(((O(i,o)|0)>>>0)/255|0)|0;break}case 32:{i=m+i|0;j=n+j|0;k=l+k|0;k=k>>>0<255?k:255;j=j>>>0<255?j:255;i=i>>>0<255?i:255;break}case 64:{k=((O(l,k)|0)>>>0)/255|0;j=((O(n,j)|0)>>>0)/255|0;i=((O(m,i)|0)>>>0)/255|0;break}default:{}}c[b>>2]=j<<8|i<<16|k;if(!e)break;else{b=b+4|0;f=f+u|0}}b=c[y>>2]|0}f=p+(c[w>>2]|0)|0;d=b+-1|0;c[y>>2]=d;if(!b)break;g=g+z|0;h=q;b=f;e=c[t>>2]|0;p=f}c[v>>2]=f;return}function TG(a){a=a|0;var b=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;b=c[a+52>>2]|0;k=d[a+60>>0]|0;l=d[a+61>>0]|0;j=d[a+62>>0]|0;m=a+28|0;q=c[m>>2]|0;g=q+-1|0;c[m>>2]=g;if(!q)return;q=a+20|0;n=a+24|0;o=a+12|0;p=a+32|0;f=c[a>>2]|0;e=c[q>>2]|0;if(!(b&1)){h=f;i=e;b=e;e=f;while(1){f=c[n>>2]|0;if(!f)f=g;else{while(1){f=f+-1|0;l=c[e>>2]|0;c[b>>2]=l>>>8&65280|l<<8&16711680|l>>>24;if(!f)break;else{b=b+4|0;e=e+4|0}}f=c[m>>2]|0}e=h+(c[o>>2]|0)|0;b=i+(c[p>>2]|0)|0;g=f+-1|0;c[m>>2]=g;if(!f)break;else{h=e;i=b}}}else{h=f;i=e;b=e;e=f;while(1){f=c[n>>2]|0;if(!f)f=g;else{while(1){f=f+-1|0;g=c[e>>2]|0;c[b>>2]=(((O(g>>>16&255,l)|0)>>>0)/255|0)<<8|(((O(g>>>8&255,k)|0)>>>0)/255|0)<<16|(((O(g>>>24,j)|0)>>>0)/255|0);if(!f)break;else{b=b+4|0;e=e+4|0}}f=c[m>>2]|0}e=h+(c[o>>2]|0)|0;b=i+(c[p>>2]|0)|0;g=f+-1|0;c[m>>2]=g;if(!f)break;else{h=e;i=b}}}c[a>>2]=e;c[q>>2]=b;return}function UG(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;b=c[a+52>>2]|0;u=d[a+60>>0]|0;v=d[a+61>>0]|0;n=d[a+62>>0]|0;o=a+28|0;t=c[o>>2]|0;p=(c[a+8>>2]<<16|0)/(t|0)|0;q=a+24|0;e=c[q>>2]|0;r=(c[a+4>>2]<<16|0)/(e|0)|0;c[o>>2]=t+-1;if(!t)return;s=a+20|0;t=a+32|0;l=(b&1|0)==0;m=a+12|0;b=c[s>>2]|0;f=0;g=0;k=b;while(1){if((f|0)>65535){f=f+-65536|0;j=f>>>16;f=f-(j<<16)|0;g=g+1+j|0}j=e+-1|0;if(e|0)if(l){e=0;h=65536;i=-1;while(1){if((h|0)>65535){w=h+-65536|0;h=w>>>16;i=i+1+h|0;e=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(i<<2)|0;h=w-(h<<16)|0}w=c[e>>2]|0;c[b>>2]=w>>>24|w>>>8&65280|w<<8&16711680;if(!j)break;else{b=b+4|0;h=h+r|0;j=j+-1|0}}}else{e=0;h=65536;i=-1;while(1){if((h|0)>65535){w=h+-65536|0;h=w>>>16;i=i+1+h|0;e=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(i<<2)|0;h=w-(h<<16)|0}w=c[e>>2]|0;c[b>>2]=((O(w>>>24,n)|0)>>>0)/255|0|(((O(w>>>16&255,v)|0)>>>0)/255|0)<<8|(((O(w>>>8&255,u)|0)>>>0)/255|0)<<16;if(!j)break;else{b=b+4|0;h=h+r|0;j=j+-1|0}}}b=k+(c[t>>2]|0)|0;w=c[o>>2]|0;c[o>>2]=w+-1;if(!w)break;f=f+p|0;k=b;e=c[q>>2]|0}c[s>>2]=b;return}function VG(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;b=c[a+52>>2]|0;A=d[a+60>>0]|0;B=d[a+61>>0]|0;q=d[a+62>>0]|0;r=d[a+63>>0]|0;s=a+28|0;z=c[s>>2]|0;e=z+-1|0;c[s>>2]=e;if(!z)return;t=a+20|0;u=a+24|0;v=a+12|0;w=a+32|0;x=(b&1|0)==0;y=(b&2|0)==0;z=(b&48|0)!=0;p=b&112;n=c[a>>2]|0;o=c[t>>2]|0;h=o;i=n;while(1){b=c[u>>2]|0;if(!b)b=e;else{m=b;while(1){m=m+-1|0;l=c[i>>2]|0;g=l>>>24;j=l>>>16&255;k=l>>>8&255;l=l&255;f=c[h>>2]|0;b=f>>>16&255;e=f>>>8&255;f=f&255;if(!x){g=((O(g,q)|0)>>>0)/255|0;j=((O(j,B)|0)>>>0)/255|0;k=((O(k,A)|0)>>>0)/255|0}C=((O(l,r)|0)>>>0)/255|0;l=y?l:C;if(z&l>>>0<255){g=((O(g,l)|0)>>>0)/255|0;j=((O(j,l)|0)>>>0)/255|0;k=((O(k,l)|0)>>>0)/255|0}switch(p&127){case 16:{C=255-l|0;f=g+(((O(C,f)|0)>>>0)/255|0)|0;e=j+(((O(C,e)|0)>>>0)/255|0)|0;b=k+(((O(C,b)|0)>>>0)/255|0)|0;break}case 32:{b=k+b|0;e=j+e|0;f=g+f|0;f=f>>>0<255?f:255;e=e>>>0<255?e:255;b=b>>>0<255?b:255;break}case 64:{f=((O(g,f)|0)>>>0)/255|0;e=((O(j,e)|0)>>>0)/255|0;b=((O(k,b)|0)>>>0)/255|0;break}default:{}}c[h>>2]=e<<8|b<<16|f;if(!m)break;else{h=h+4|0;i=i+4|0}}b=c[s>>2]|0}f=n+(c[v>>2]|0)|0;g=o+(c[w>>2]|0)|0;e=b+-1|0;c[s>>2]=e;if(!b)break;else{h=g;i=f;n=f;o=g}}c[a>>2]=f;c[t>>2]=g;return}function WG(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;b=c[a+52>>2]|0;F=d[a+60>>0]|0;G=d[a+61>>0]|0;u=d[a+62>>0]|0;v=d[a+63>>0]|0;w=a+28|0;E=c[w>>2]|0;x=(c[a+8>>2]<<16|0)/(E|0)|0;y=a+24|0;f=c[y>>2]|0;z=(c[a+4>>2]<<16|0)/(f|0)|0;e=E+-1|0;c[w>>2]=e;if(!E)return;A=a+20|0;B=a+32|0;C=(b&1|0)==0;D=(b&2|0)==0;E=(b&48|0)!=0;t=b&112;s=a+12|0;q=c[A>>2]|0;g=0;h=0;r=q;b=e;e=q;while(1){if((g|0)>65535){p=g+-65536|0;q=p>>>16;p=p-(q<<16)|0;q=h+1+q|0}else{p=g;q=h}if(f){b=0;g=65536;h=-1;while(1){f=f+-1|0;if((g|0)>65535){o=g+-65536|0;g=o>>>16;h=h+1+g|0;b=(c[a>>2]|0)+(O(c[s>>2]|0,q)|0)+(h<<2)|0;g=o-(g<<16)|0}o=c[b>>2]|0;l=o>>>24;n=o>>>16&255;m=o>>>8&255;o=o&255;k=c[e>>2]|0;i=k>>>16&255;j=k>>>8&255;k=k&255;if(!C){m=((O(m,F)|0)>>>0)/255|0;n=((O(n,G)|0)>>>0)/255|0;l=((O(l,u)|0)>>>0)/255|0}H=((O(o,v)|0)>>>0)/255|0;o=D?o:H;if(E&o>>>0<255){m=((O(m,o)|0)>>>0)/255|0;n=((O(n,o)|0)>>>0)/255|0;l=((O(l,o)|0)>>>0)/255|0}switch(t&127){case 16:{H=255-o|0;k=l+(((O(H,k)|0)>>>0)/255|0)|0;j=n+(((O(H,j)|0)>>>0)/255|0)|0;i=m+(((O(H,i)|0)>>>0)/255|0)|0;break}case 32:{i=m+i|0;j=n+j|0;k=l+k|0;k=k>>>0<255?k:255;j=j>>>0<255?j:255;i=i>>>0<255?i:255;break}case 64:{k=((O(l,k)|0)>>>0)/255|0;j=((O(n,j)|0)>>>0)/255|0;i=((O(m,i)|0)>>>0)/255|0;break}default:{}}c[e>>2]=j<<8|i<<16|k;if(!f)break;else{e=e+4|0;g=g+z|0}}b=c[w>>2]|0}f=r+(c[B>>2]|0)|0;e=b+-1|0;c[w>>2]=e;if(!b)break;g=p+x|0;h=q;r=f;b=e;e=f;f=c[y>>2]|0}c[A>>2]=f;return}function XG(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;p=a+28|0;o=c[p>>2]|0;q=(c[a+8>>2]<<16|0)/(o|0)|0;k=a+24|0;b=c[k>>2]|0;l=(c[a+4>>2]<<16|0)/(b|0)|0;d=o+-1|0;c[p>>2]=d;if(!o)return;m=a+20|0;n=a+32|0;o=a+12|0;e=c[m>>2]|0;f=0;g=0;j=e;while(1){if((g|0)>65535){g=g+-65536|0;i=g>>>16;h=f+1+i|0;i=g-(i<<16)|0}else{h=f;i=g}if(!b)b=d;else{d=0;f=-1;g=65536;while(1){b=b+-1|0;if((g|0)>65535){r=g+-65536|0;g=r>>>16;f=f+1+g|0;d=(c[a>>2]|0)+(O(c[o>>2]|0,h)|0)+(f<<2)|0;g=r-(g<<16)|0}s=c[d>>2]|0;r=s>>>8;c[e>>2]=s>>>24<<16|r&65280|r&255;if(!b)break;else{e=e+4|0;g=g+l|0}}b=c[p>>2]|0}e=j+(c[n>>2]|0)|0;d=b+-1|0;c[p>>2]=d;if(!b)break;f=h;g=i+q|0;b=c[k>>2]|0;j=e}c[m>>2]=e;return}function YG(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0;b=c[a+52>>2]|0;r=a+28|0;u=c[r>>2]|0;c[r>>2]=u+-1;if(!u)return;s=a+20|0;t=a+24|0;u=a+12|0;p=a+32|0;q=(b&48|0)==0;o=b&112;d=c[a>>2]|0;b=c[s>>2]|0;m=d;n=b;while(1){l=c[t>>2]|0;e=l+-1|0;a:do if(l|0){if(q){l=e;while(1){h=c[d>>2]|0;i=h>>>24;j=h>>>16&255;k=h>>>8&255;e=c[b>>2]|0;g=e>>>16&255;f=e>>>8&255;e=e&255;switch(o&127){case 16:{h=h&255^255;g=i+(((O(g,h)|0)>>>0)/255|0)|0;f=j+(((O(f,h)|0)>>>0)/255|0)|0;e=k+(((O(h,e)|0)>>>0)/255|0)|0;break}case 32:{e=k+e|0;f=j+f|0;g=i+g|0;g=g>>>0<255?g:255;f=f>>>0<255?f:255;e=e>>>0<255?e:255;break}case 64:{g=((O(i,g)|0)>>>0)/255|0;f=((O(j,f)|0)>>>0)/255|0;e=((O(k,e)|0)>>>0)/255|0;break}default:{}}c[b>>2]=f<<8|e|g<<16;if(!l)break a;else{b=b+4|0;d=d+4|0;l=l+-1|0}}}else l=e;while(1){k=c[d>>2]|0;i=k>>>24;j=k>>>16&255;h=k>>>8&255;k=k&255;e=c[b>>2]|0;g=e>>>16&255;f=e>>>8&255;e=e&255;if((k|0)!=255){h=((O(h,k)|0)>>>0)/255|0;i=((O(i,k)|0)>>>0)/255|0;j=((O(j,k)|0)>>>0)/255|0}switch(o&127){case 16:{k=k^255;g=i+(((O(g,k)|0)>>>0)/255|0)|0;f=j+(((O(f,k)|0)>>>0)/255|0)|0;e=h+(((O(k,e)|0)>>>0)/255|0)|0;break}case 32:{e=h+e|0;f=j+f|0;g=i+g|0;g=g>>>0<255?g:255;f=f>>>0<255?f:255;e=e>>>0<255?e:255;break}case 64:{g=((O(i,g)|0)>>>0)/255|0;f=((O(j,f)|0)>>>0)/255|0;e=((O(h,e)|0)>>>0)/255|0;break}default:{}}c[b>>2]=f<<8|e|g<<16;if(!l)break a;else{b=b+4|0;d=d+4|0;l=l+-1|0}}}while(0);d=m+(c[u>>2]|0)|0;b=n+(c[p>>2]|0)|0;n=c[r>>2]|0;c[r>>2]=n+-1;if(!n)break;else{m=d;n=b}}c[a>>2]=d;c[s>>2]=b;return}function ZG(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;b=c[a+52>>2]|0;y=a+28|0;x=c[y>>2]|0;z=(c[a+8>>2]<<16|0)/(x|0)|0;t=a+24|0;e=c[t>>2]|0;u=(c[a+4>>2]<<16|0)/(e|0)|0;d=x+-1|0;c[y>>2]=d;if(!x)return;v=a+20|0;w=a+32|0;x=(b&48|0)!=0;s=b&112;r=a+12|0;p=c[v>>2]|0;g=0;h=0;b=p;while(1){if((g|0)>65535){g=g+-65536|0;q=g>>>16;g=g-(q<<16)|0;q=h+1+q|0}else q=h;if(!e)b=d;else{d=0;f=65536;h=-1;while(1){e=e+-1|0;if((f|0)>65535){o=f+-65536|0;f=o>>>16;h=h+1+f|0;d=(c[a>>2]|0)+(O(c[r>>2]|0,q)|0)+(h<<2)|0;f=o-(f<<16)|0}o=c[d>>2]|0;l=o>>>24;n=o>>>16&255;m=o>>>8&255;o=o&255;i=c[b>>2]|0;k=i>>>16&255;j=i>>>8&255;i=i&255;if(x&(o|0)!=255){m=((O(m,o)|0)>>>0)/255|0;n=((O(n,o)|0)>>>0)/255|0;l=((O(l,o)|0)>>>0)/255|0}switch(s&127){case 16:{o=o^255;k=l+(((O(k,o)|0)>>>0)/255|0)|0;j=n+(((O(j,o)|0)>>>0)/255|0)|0;i=m+(((O(o,i)|0)>>>0)/255|0)|0;break}case 32:{i=m+i|0;j=n+j|0;k=l+k|0;k=k>>>0<255?k:255;j=j>>>0<255?j:255;i=i>>>0<255?i:255;break}case 64:{k=((O(l,k)|0)>>>0)/255|0;j=((O(n,j)|0)>>>0)/255|0;i=((O(m,i)|0)>>>0)/255|0;break}default:{}}c[b>>2]=j<<8|i|k<<16;if(!e)break;else{b=b+4|0;f=f+u|0}}b=c[y>>2]|0}f=p+(c[w>>2]|0)|0;d=b+-1|0;c[y>>2]=d;if(!b)break;g=g+z|0;h=q;b=f;e=c[t>>2]|0;p=f}c[v>>2]=f;return}function _G(a){a=a|0;var b=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;b=c[a+52>>2]|0;k=d[a+60>>0]|0;l=d[a+61>>0]|0;j=d[a+62>>0]|0;m=a+28|0;q=c[m>>2]|0;g=q+-1|0;c[m>>2]=g;if(!q)return;q=a+20|0;n=a+24|0;o=a+12|0;p=a+32|0;f=c[a>>2]|0;e=c[q>>2]|0;if(!(b&1)){h=f;i=e;b=e;e=f;while(1){f=c[n>>2]|0;if(!f)f=g;else{while(1){f=f+-1|0;l=c[e>>2]|0;c[b>>2]=l>>>8&65535|l>>>24<<16;if(!f)break;else{b=b+4|0;e=e+4|0}}f=c[m>>2]|0}e=h+(c[o>>2]|0)|0;b=i+(c[p>>2]|0)|0;g=f+-1|0;c[m>>2]=g;if(!f)break;else{h=e;i=b}}}else{h=f;i=e;b=e;e=f;while(1){f=c[n>>2]|0;if(!f)f=g;else{while(1){f=f+-1|0;g=c[e>>2]|0;c[b>>2]=(((O(g>>>16&255,l)|0)>>>0)/255|0)<<8|(((O(g>>>8&255,k)|0)>>>0)/255|0)|(((O(g>>>24,j)|0)>>>0)/255|0)<<16;if(!f)break;else{b=b+4|0;e=e+4|0}}f=c[m>>2]|0}e=h+(c[o>>2]|0)|0;b=i+(c[p>>2]|0)|0;g=f+-1|0;c[m>>2]=g;if(!f)break;else{h=e;i=b}}}c[a>>2]=e;c[q>>2]=b;return}function $G(a){a=a|0;var b=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;b=c[a+52>>2]|0;u=d[a+60>>0]|0;v=d[a+61>>0]|0;n=d[a+62>>0]|0;o=a+28|0;t=c[o>>2]|0;p=(c[a+8>>2]<<16|0)/(t|0)|0;q=a+24|0;e=c[q>>2]|0;r=(c[a+4>>2]<<16|0)/(e|0)|0;c[o>>2]=t+-1;if(!t)return;s=a+20|0;t=a+32|0;l=(b&1|0)==0;m=a+12|0;b=c[s>>2]|0;f=0;g=0;k=b;while(1){if((f|0)>65535){f=f+-65536|0;j=f>>>16;f=f-(j<<16)|0;g=g+1+j|0}j=e+-1|0;if(e|0)if(l){e=0;h=65536;i=-1;while(1){if((h|0)>65535){w=h+-65536|0;h=w>>>16;i=i+1+h|0;e=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(i<<2)|0;h=w-(h<<16)|0}x=c[e>>2]|0;w=x>>>8;c[b>>2]=x>>>24<<16|w&65280|w&255;if(!j)break;else{b=b+4|0;h=h+r|0;j=j+-1|0}}}else{e=0;h=65536;i=-1;while(1){if((h|0)>65535){x=h+-65536|0;h=x>>>16;i=i+1+h|0;e=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(i<<2)|0;h=x-(h<<16)|0}x=c[e>>2]|0;c[b>>2]=(((O(x>>>24,n)|0)>>>0)/255|0)<<16|(((O(x>>>16&255,v)|0)>>>0)/255|0)<<8|(((O(x>>>8&255,u)|0)>>>0)/255|0);if(!j)break;else{b=b+4|0;h=h+r|0;j=j+-1|0}}}b=k+(c[t>>2]|0)|0;x=c[o>>2]|0;c[o>>2]=x+-1;if(!x)break;f=f+p|0;k=b;e=c[q>>2]|0}c[s>>2]=b;return}function aH(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;b=c[a+52>>2]|0;A=d[a+60>>0]|0;B=d[a+61>>0]|0;q=d[a+62>>0]|0;r=d[a+63>>0]|0;s=a+28|0;z=c[s>>2]|0;e=z+-1|0;c[s>>2]=e;if(!z)return;t=a+20|0;u=a+24|0;v=a+12|0;w=a+32|0;x=(b&1|0)==0;y=(b&2|0)==0;z=(b&48|0)!=0;p=b&112;n=c[a>>2]|0;o=c[t>>2]|0;h=o;i=n;while(1){b=c[u>>2]|0;if(!b)b=e;else{m=b;while(1){m=m+-1|0;l=c[i>>2]|0;g=l>>>24;j=l>>>16&255;k=l>>>8&255;l=l&255;b=c[h>>2]|0;f=b>>>16&255;e=b>>>8&255;b=b&255;if(!x){g=((O(g,q)|0)>>>0)/255|0;j=((O(j,B)|0)>>>0)/255|0;k=((O(k,A)|0)>>>0)/255|0}C=((O(l,r)|0)>>>0)/255|0;l=y?l:C;if(z&l>>>0<255){g=((O(g,l)|0)>>>0)/255|0;j=((O(j,l)|0)>>>0)/255|0;k=((O(k,l)|0)>>>0)/255|0}switch(p&127){case 16:{C=255-l|0;f=g+(((O(C,f)|0)>>>0)/255|0)|0;e=j+(((O(C,e)|0)>>>0)/255|0)|0;b=k+(((O(C,b)|0)>>>0)/255|0)|0;break}case 32:{b=k+b|0;e=j+e|0;f=g+f|0;f=f>>>0<255?f:255;e=e>>>0<255?e:255;b=b>>>0<255?b:255;break}case 64:{f=((O(g,f)|0)>>>0)/255|0;e=((O(j,e)|0)>>>0)/255|0;b=((O(k,b)|0)>>>0)/255|0;break}default:{}}c[h>>2]=e<<8|b|f<<16;if(!m)break;else{h=h+4|0;i=i+4|0}}b=c[s>>2]|0}f=n+(c[v>>2]|0)|0;g=o+(c[w>>2]|0)|0;e=b+-1|0;c[s>>2]=e;if(!b)break;else{h=g;i=f;n=f;o=g}}c[a>>2]=f;c[t>>2]=g;return}function bH(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;b=c[a+52>>2]|0;F=d[a+60>>0]|0;G=d[a+61>>0]|0;u=d[a+62>>0]|0;v=d[a+63>>0]|0;w=a+28|0;E=c[w>>2]|0;x=(c[a+8>>2]<<16|0)/(E|0)|0;y=a+24|0;f=c[y>>2]|0;z=(c[a+4>>2]<<16|0)/(f|0)|0;e=E+-1|0;c[w>>2]=e;if(!E)return;A=a+20|0;B=a+32|0;C=(b&1|0)==0;D=(b&2|0)==0;E=(b&48|0)!=0;t=b&112;s=a+12|0;q=c[A>>2]|0;g=0;h=0;r=q;b=e;e=q;while(1){if((g|0)>65535){p=g+-65536|0;q=p>>>16;p=p-(q<<16)|0;q=h+1+q|0}else{p=g;q=h}if(f){b=0;g=65536;h=-1;while(1){f=f+-1|0;if((g|0)>65535){o=g+-65536|0;g=o>>>16;h=h+1+g|0;b=(c[a>>2]|0)+(O(c[s>>2]|0,q)|0)+(h<<2)|0;g=o-(g<<16)|0}o=c[b>>2]|0;l=o>>>24;n=o>>>16&255;m=o>>>8&255;o=o&255;i=c[e>>2]|0;k=i>>>16&255;j=i>>>8&255;i=i&255;if(!C){m=((O(m,F)|0)>>>0)/255|0;n=((O(n,G)|0)>>>0)/255|0;l=((O(l,u)|0)>>>0)/255|0}H=((O(o,v)|0)>>>0)/255|0;o=D?o:H;if(E&o>>>0<255){m=((O(m,o)|0)>>>0)/255|0;n=((O(n,o)|0)>>>0)/255|0;l=((O(l,o)|0)>>>0)/255|0}switch(t&127){case 16:{H=255-o|0;k=l+(((O(H,k)|0)>>>0)/255|0)|0;j=n+(((O(H,j)|0)>>>0)/255|0)|0;i=m+(((O(H,i)|0)>>>0)/255|0)|0;break}case 32:{i=m+i|0;j=n+j|0;k=l+k|0;k=k>>>0<255?k:255;j=j>>>0<255?j:255;i=i>>>0<255?i:255;break}case 64:{k=((O(l,k)|0)>>>0)/255|0;j=((O(n,j)|0)>>>0)/255|0;i=((O(m,i)|0)>>>0)/255|0;break}default:{}}c[e>>2]=j<<8|i|k<<16;if(!f)break;else{e=e+4|0;g=g+z|0}}b=c[w>>2]|0}f=r+(c[B>>2]|0)|0;e=b+-1|0;c[w>>2]=e;if(!b)break;g=p+x|0;h=q;r=f;b=e;e=f;f=c[y>>2]|0}c[A>>2]=f;return}function cH(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;p=a+28|0;o=c[p>>2]|0;q=(c[a+8>>2]<<16|0)/(o|0)|0;k=a+24|0;b=c[k>>2]|0;l=(c[a+4>>2]<<16|0)/(b|0)|0;d=o+-1|0;c[p>>2]=d;if(!o)return;m=a+20|0;n=a+32|0;o=a+12|0;e=c[m>>2]|0;f=0;g=0;j=e;while(1){if((g|0)>65535){g=g+-65536|0;i=g>>>16;h=f+1+i|0;i=g-(i<<16)|0}else{h=f;i=g}if(!b)b=d;else{d=0;f=-1;g=65536;while(1){b=b+-1|0;if((g|0)>65535){r=g+-65536|0;g=r>>>16;f=f+1+g|0;d=(c[a>>2]|0)+(O(c[o>>2]|0,h)|0)+(f<<2)|0;g=r-(g<<16)|0}c[e>>2]=MQ(c[d>>2]|0)|0;if(!b)break;else{e=e+4|0;g=g+l|0}}b=c[p>>2]|0}e=j+(c[n>>2]|0)|0;d=b+-1|0;c[p>>2]=d;if(!b)break;f=h;g=i+q|0;b=c[k>>2]|0;j=e}c[m>>2]=e;return}function dH(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;b=c[a+52>>2]|0;s=a+28|0;v=c[s>>2]|0;c[s>>2]=v+-1;if(!v)return;t=a+20|0;u=a+24|0;v=a+12|0;q=a+32|0;r=(b&48|0)==0;p=b&112;d=c[a>>2]|0;b=c[t>>2]|0;n=d;o=b;while(1){m=c[u>>2]|0;e=m+-1|0;a:do if(m|0){if(r){m=e;while(1){h=c[d>>2]|0;j=h>>>24;k=h>>>16&255;l=h>>>8&255;h=h&255;i=c[b>>2]|0;e=i>>>16&255;f=i>>>8&255;g=i&255;i=i>>>24;switch(p&127){case 16:{w=h^255;i=(((O(w,i)|0)>>>0)/255|0)+h|0;g=j+(((O(w,g)|0)>>>0)/255|0)|0;f=k+(((O(f,w)|0)>>>0)/255|0)|0;e=l+(((O(e,w)|0)>>>0)/255|0)|0;break}case 32:{e=l+e|0;f=k+f|0;g=j+g|0;g=g>>>0<255?g:255;f=f>>>0<255?f:255;e=e>>>0<255?e:255;break}case 64:{g=((O(j,g)|0)>>>0)/255|0;f=((O(k,f)|0)>>>0)/255|0;e=((O(l,e)|0)>>>0)/255|0;break}default:{}}c[b>>2]=f<<8|e<<16|g|i<<24;if(!m)break a;else{b=b+4|0;d=d+4|0;m=m+-1|0}}}else m=e;while(1){l=c[d>>2]|0;h=l>>>24;i=l>>>16&255;k=l>>>8&255;l=l&255;j=c[b>>2]|0;e=j>>>16&255;f=j>>>8&255;g=j&255;j=j>>>24;if((l|0)!=255){h=((O(h,l)|0)>>>0)/255|0;i=((O(i,l)|0)>>>0)/255|0;k=((O(k,l)|0)>>>0)/255|0}switch(p&127){case 16:{w=l^255;j=(((O(w,j)|0)>>>0)/255|0)+l|0;g=h+(((O(w,g)|0)>>>0)/255|0)|0;f=i+(((O(f,w)|0)>>>0)/255|0)|0;e=k+(((O(e,w)|0)>>>0)/255|0)|0;break}case 32:{e=k+e|0;f=i+f|0;g=h+g|0;g=g>>>0<255?g:255;f=f>>>0<255?f:255;e=e>>>0<255?e:255;break}case 64:{g=((O(h,g)|0)>>>0)/255|0;f=((O(i,f)|0)>>>0)/255|0;e=((O(k,e)|0)>>>0)/255|0;break}default:{}}c[b>>2]=f<<8|e<<16|g|j<<24;if(!m)break a;else{b=b+4|0;d=d+4|0;m=m+-1|0}}}while(0);d=n+(c[v>>2]|0)|0;b=o+(c[q>>2]|0)|0;w=c[s>>2]|0;c[s>>2]=w+-1;if(!w)break;else{n=d;o=b}}c[a>>2]=d;c[t>>2]=b;return}function eH(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;b=c[a+52>>2]|0;z=a+28|0;y=c[z>>2]|0;A=(c[a+8>>2]<<16|0)/(y|0)|0;u=a+24|0;e=c[u>>2]|0;v=(c[a+4>>2]<<16|0)/(e|0)|0;d=y+-1|0;c[z>>2]=d;if(!y)return;w=a+20|0;x=a+32|0;y=(b&48|0)!=0;t=b&112;s=a+12|0;q=c[w>>2]|0;f=0;g=0;r=q;b=d;d=q;while(1){if((f|0)>65535){p=f+-65536|0;q=p>>>16;p=p-(q<<16)|0;q=g+1+q|0}else{p=f;q=g}if(e){b=0;f=65536;g=-1;while(1){e=e+-1|0;if((f|0)>65535){o=f+-65536|0;f=o>>>16;g=g+1+f|0;b=(c[a>>2]|0)+(O(c[s>>2]|0,q)|0)+(g<<2)|0;f=o-(f<<16)|0}o=c[b>>2]|0;l=o>>>24;m=o>>>16&255;k=o>>>8&255;o=o&255;n=c[d>>2]|0;h=n>>>16&255;i=n>>>8&255;j=n&255;n=n>>>24;if(y&(o|0)!=255){k=((O(k,o)|0)>>>0)/255|0;m=((O(m,o)|0)>>>0)/255|0;l=((O(l,o)|0)>>>0)/255|0}switch(t&127){case 16:{B=o^255;n=(((O(B,n)|0)>>>0)/255|0)+o|0;j=l+(((O(B,j)|0)>>>0)/255|0)|0;i=m+(((O(i,B)|0)>>>0)/255|0)|0;h=k+(((O(h,B)|0)>>>0)/255|0)|0;break}case 32:{h=k+h|0;i=m+i|0;j=l+j|0;j=j>>>0<255?j:255;i=i>>>0<255?i:255;h=h>>>0<255?h:255;break}case 64:{j=((O(l,j)|0)>>>0)/255|0;i=((O(m,i)|0)>>>0)/255|0;h=((O(k,h)|0)>>>0)/255|0;break}default:{}}c[d>>2]=i<<8|h<<16|j|n<<24;if(!e)break;else{d=d+4|0;f=f+v|0}}b=c[z>>2]|0}e=r+(c[x>>2]|0)|0;d=b+-1|0;c[z>>2]=d;if(!b)break;f=p+A|0;g=q;r=e;b=d;d=e;e=c[u>>2]|0}c[w>>2]=e;return}function fH(a){a=a|0;var b=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;b=c[a+52>>2]|0;r=d[a+60>>0]|0;s=d[a+61>>0]|0;j=d[a+62>>0]|0;k=d[a+63>>0]|0;l=a+28|0;q=c[l>>2]|0;c[l>>2]=q+-1;if(!q)return;m=a+20|0;n=a+24|0;o=a+12|0;p=a+32|0;q=(b&1|0)==0;g=(b&2|0)==0;e=c[a>>2]|0;f=c[m>>2]|0;h=e;i=f;while(1){t=c[n>>2]|0;b=t+-1|0;if(t|0)if(q)while(1){t=c[e>>2]|0;u=((O(t&255,k)|0)>>>0)/255|0;c[f>>2]=t<<8&16711680|(g?t:u)<<24|t>>>8&65280|t>>>24;if(!b)break;else{f=f+4|0;e=e+4|0;b=b+-1|0}}else while(1){w=c[e>>2]|0;x=((O(w>>>8&255,r)|0)>>>0)/255|0;t=((O(w>>>16&255,s)|0)>>>0)/255|0;u=((O(w>>>24,j)|0)>>>0)/255|0;v=((O(w&255,k)|0)>>>0)/255|0;c[f>>2]=x<<16|(g?w:v)<<24|t<<8|u;if(!b)break;else{f=f+4|0;e=e+4|0;b=b+-1|0}}e=h+(c[o>>2]|0)|0;b=i+(c[p>>2]|0)|0;x=c[l>>2]|0;c[l>>2]=x+-1;if(!x)break;else{h=e;i=b;f=b}}c[a>>2]=e;c[m>>2]=b;return}function gH(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;b=c[a+52>>2]|0;w=d[a+60>>0]|0;x=d[a+61>>0]|0;n=d[a+62>>0]|0;o=d[a+63>>0]|0;p=a+28|0;v=c[p>>2]|0;q=(c[a+8>>2]<<16|0)/(v|0)|0;r=a+24|0;e=c[r>>2]|0;s=(c[a+4>>2]<<16|0)/(e|0)|0;c[p>>2]=v+-1;if(!v)return;t=a+20|0;u=a+32|0;v=(b&1|0)==0;l=(b&2|0)==0;m=a+12|0;b=c[t>>2]|0;f=0;g=0;k=b;while(1){if((f|0)>65535){f=f+-65536|0;j=f>>>16;f=f-(j<<16)|0;g=g+1+j|0}j=e+-1|0;if(e|0)if(v){e=0;h=65536;i=-1;while(1){if((h|0)>65535){y=h+-65536|0;h=y>>>16;i=i+1+h|0;e=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(i<<2)|0;h=y-(h<<16)|0}y=c[e>>2]|0;z=((O(y&255,o)|0)>>>0)/255|0;c[b>>2]=y>>>8&65280|(l?y:z)<<24|y>>>24|y<<8&16711680;if(!j)break;else{b=b+4|0;h=h+s|0;j=j+-1|0}}}else{e=0;h=65536;i=-1;while(1){if((h|0)>65535){z=h+-65536|0;h=z>>>16;i=i+1+h|0;e=(c[a>>2]|0)+(O(c[m>>2]|0,g)|0)+(i<<2)|0;h=z-(h<<16)|0}B=c[e>>2]|0;z=((O(B>>>8&255,w)|0)>>>0)/255|0;C=((O(B>>>16&255,x)|0)>>>0)/255|0;y=((O(B>>>24,n)|0)>>>0)/255|0;A=((O(B&255,o)|0)>>>0)/255|0;c[b>>2]=C<<8|(l?B:A)<<24|y|z<<16;if(!j)break;else{b=b+4|0;h=h+s|0;j=j+-1|0}}}b=k+(c[u>>2]|0)|0;C=c[p>>2]|0;c[p>>2]=C+-1;if(!C)break;f=f+q|0;k=b;e=c[r>>2]|0}c[t>>2]=b;return}function hH(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0;b=c[a+52>>2]|0;B=d[a+60>>0]|0;C=d[a+61>>0]|0;r=d[a+62>>0]|0;s=d[a+63>>0]|0;t=a+28|0;A=c[t>>2]|0;e=A+-1|0;c[t>>2]=e;if(!A)return;u=a+20|0;v=a+24|0;w=a+12|0;x=a+32|0;y=(b&1|0)==0;z=(b&2|0)==0;A=(b&48|0)!=0;q=b&112;o=c[a>>2]|0;b=c[u>>2]|0;p=b;f=o;while(1){g=c[v>>2]|0;if(!g)f=e;else{while(1){g=g+-1|0;n=c[f>>2]|0;j=n>>>24;k=n>>>16&255;m=n>>>8&255;n=n&255;l=c[b>>2]|0;e=l>>>16&255;h=l>>>8&255;i=l&255;l=l>>>24;if(!y){j=((O(j,r)|0)>>>0)/255|0;k=((O(k,C)|0)>>>0)/255|0;m=((O(m,B)|0)>>>0)/255|0}D=((O(n,s)|0)>>>0)/255|0;n=z?n:D;if(A&n>>>0<255){j=((O(j,n)|0)>>>0)/255|0;k=((O(k,n)|0)>>>0)/255|0;m=((O(m,n)|0)>>>0)/255|0}switch(q&127){case 16:{D=255-n|0;l=(((O(D,l)|0)>>>0)/255|0)+n|0;i=j+(((O(D,i)|0)>>>0)/255|0)|0;h=k+(((O(D,h)|0)>>>0)/255|0)|0;e=m+(((O(D,e)|0)>>>0)/255|0)|0;break}case 32:{e=m+e|0;h=k+h|0;i=j+i|0;i=i>>>0<255?i:255;h=h>>>0<255?h:255;e=e>>>0<255?e:255;break}case 64:{i=((O(j,i)|0)>>>0)/255|0;h=((O(k,h)|0)>>>0)/255|0;e=((O(m,e)|0)>>>0)/255|0;break}default:{}}c[b>>2]=h<<8|e<<16|i|l<<24;if(!g)break;else{b=b+4|0;f=f+4|0}}f=c[t>>2]|0}g=o+(c[w>>2]|0)|0;b=p+(c[x>>2]|0)|0;e=f+-1|0;c[t>>2]=e;if(!f)break;else{p=b;f=g;o=g}}c[a>>2]=g;c[u>>2]=b;return}function iH(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;b=c[a+52>>2]|0;G=d[a+60>>0]|0;H=d[a+61>>0]|0;v=d[a+62>>0]|0;w=d[a+63>>0]|0;x=a+28|0;F=c[x>>2]|0;y=(c[a+8>>2]<<16|0)/(F|0)|0;z=a+24|0;f=c[z>>2]|0;A=(c[a+4>>2]<<16|0)/(f|0)|0;e=F+-1|0;c[x>>2]=e;if(!F)return;B=a+20|0;C=a+32|0;D=(b&1|0)==0;E=(b&2|0)==0;F=(b&48|0)!=0;u=b&112;t=a+12|0;r=c[B>>2]|0;g=0;h=0;s=r;b=e;e=r;while(1){if((g|0)>65535){q=g+-65536|0;r=q>>>16;q=q-(r<<16)|0;r=h+1+r|0}else{q=g;r=h}if(f){b=0;g=65536;h=-1;while(1){f=f+-1|0;if((g|0)>65535){p=g+-65536|0;g=p>>>16;h=h+1+g|0;b=(c[a>>2]|0)+(O(c[t>>2]|0,r)|0)+(h<<2)|0;g=p-(g<<16)|0}p=c[b>>2]|0;m=p>>>24;n=p>>>16&255;l=p>>>8&255;p=p&255;o=c[e>>2]|0;i=o>>>16&255;j=o>>>8&255;k=o&255;o=o>>>24;if(!D){l=((O(l,G)|0)>>>0)/255|0;n=((O(n,H)|0)>>>0)/255|0;m=((O(m,v)|0)>>>0)/255|0}I=((O(p,w)|0)>>>0)/255|0;p=E?p:I;if(F&p>>>0<255){l=((O(l,p)|0)>>>0)/255|0;n=((O(n,p)|0)>>>0)/255|0;m=((O(m,p)|0)>>>0)/255|0}switch(u&127){case 16:{I=255-p|0;o=(((O(I,o)|0)>>>0)/255|0)+p|0;k=m+(((O(I,k)|0)>>>0)/255|0)|0;j=n+(((O(I,j)|0)>>>0)/255|0)|0;i=l+(((O(I,i)|0)>>>0)/255|0)|0;break}case 32:{i=l+i|0;j=n+j|0;k=m+k|0;k=k>>>0<255?k:255;j=j>>>0<255?j:255;i=i>>>0<255?i:255;break}case 64:{k=((O(m,k)|0)>>>0)/255|0;j=((O(n,j)|0)>>>0)/255|0;i=((O(l,i)|0)>>>0)/255|0;break}default:{}}c[e>>2]=j<<8|i<<16|k|o<<24;if(!f)break;else{e=e+4|0;g=g+A|0}}b=c[x>>2]|0}f=s+(c[C>>2]|0)|0;e=b+-1|0;c[x>>2]=e;if(!b)break;g=q+y|0;h=r;s=f;b=e;e=f;f=c[z>>2]|0}c[B>>2]=f;return}function jH(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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=c[f+24>>2]|0;j=c[f+28>>2]|0;P=c[f+16>>2]|0;I=c[f+36>>2]|0;i=c[f+40>>2]|0;J=a[i+9>>0]|0;K=J&255;h=c[f+44>>2]|0;M=a[h+9>>0]|0;N=M&255;if(!(c[h+24>>2]|0))L=0;else L=d[f+63>>0]|0;if(!j)return;O=(g+7|0)/8|0;H=g&255;A=h+28|0;B=h+32|0;C=h+29|0;D=h+33|0;E=h+30|0;F=h+34|0;G=h+31|0;r=h+35|0;s=i+28|0;t=i+12|0;u=i+32|0;v=i+29|0;w=i+16|0;x=i+33|0;y=i+30|0;z=i+20|0;q=i+34|0;g=c[f>>2]|0;n=c[f+20>>2]|0;a:while(1){j=j+-1|0;switch(H&7){case 0:{o=O;p=6;break}case 7:{o=O;p=18;break}case 6:{o=O;p=30;break}case 5:{o=O;p=42;break}case 4:{o=O;p=54;break}case 3:{o=O;p=66;break}case 2:{o=O;p=78;break}case 1:{o=O;p=90;break}default:{p=102;break a}}while(1)if((p|0)==6){p=0;switch(J<<24>>24){case 1:{f=d[g>>0]|0;h=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&f)>>>(d[u>>0]|0))|0;i=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&f)>>>(d[x>>0]|0))|0;f=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&f)>>>(d[q>>0]|0))|0;p=11;break}case 2:{f=e[g>>1]|0;h=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&f)>>>(d[u>>0]|0))|0;i=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&f)>>>(d[x>>0]|0))|0;f=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&f)>>>(d[q>>0]|0))|0;p=11;break}case 3:{h=g+((d[u>>0]|0)>>>3&255)|0;i=g+((d[x>>0]|0)>>>3&255)|0;f=g+((d[q>>0]|0)>>>3&255)|0;p=11;break}case 4:{f=c[g>>2]|0;h=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&f)>>>(d[u>>0]|0))|0;i=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&f)>>>(d[x>>0]|0))|0;f=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&f)>>>(d[q>>0]|0))|0;p=11;break}default:{m=0;l=0;k=0}}if((p|0)==11){m=a[h>>0]|0;l=a[i>>0]|0;k=a[f>>0]|0}h=m&255;i=l&255;f=k&255;switch(M<<24>>24){case 1:{a[n>>0]=i>>>(d[C>>0]|0)<<(d[D>>0]|0)|h>>>(d[A>>0]|0)<<(d[B>>0]|0)|f>>>(d[E>>0]|0)<<(d[F>>0]|0)|L>>>(d[G>>0]|0)<<(d[r>>0]|0);break}case 2:{b[n>>1]=i>>>(d[C>>0]|0)<<(d[D>>0]|0)|h>>>(d[A>>0]|0)<<(d[B>>0]|0)|f>>>(d[E>>0]|0)<<(d[F>>0]|0)|L>>>(d[G>>0]|0)<<(d[r>>0]|0);break}case 3:{a[n+((d[B>>0]|0)>>>3&255)>>0]=m;a[n+((d[D>>0]|0)>>>3&255)>>0]=l;a[n+((d[F>>0]|0)>>>3&255)>>0]=k;break}case 4:{c[n>>2]=i>>>(d[C>>0]|0)<<(d[D>>0]|0)|h>>>(d[A>>0]|0)<<(d[B>>0]|0)|f>>>(d[E>>0]|0)<<(d[F>>0]|0)|L>>>(d[G>>0]|0)<<(d[r>>0]|0);break}default:{}}g=g+K|0;n=n+N|0;p=18;continue}else if((p|0)==18){p=0;switch(J<<24>>24){case 1:{f=d[g>>0]|0;h=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&f)>>>(d[u>>0]|0))|0;i=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&f)>>>(d[x>>0]|0))|0;f=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&f)>>>(d[q>>0]|0))|0;p=23;break}case 2:{f=e[g>>1]|0;h=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&f)>>>(d[u>>0]|0))|0;i=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&f)>>>(d[x>>0]|0))|0;f=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&f)>>>(d[q>>0]|0))|0;p=23;break}case 3:{h=g+((d[u>>0]|0)>>>3&255)|0;i=g+((d[x>>0]|0)>>>3&255)|0;f=g+((d[q>>0]|0)>>>3&255)|0;p=23;break}case 4:{f=c[g>>2]|0;h=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&f)>>>(d[u>>0]|0))|0;i=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&f)>>>(d[x>>0]|0))|0;f=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&f)>>>(d[q>>0]|0))|0;p=23;break}default:{m=0;l=0;k=0}}if((p|0)==23){m=a[h>>0]|0;l=a[i>>0]|0;k=a[f>>0]|0}h=m&255;i=l&255;f=k&255;switch(M<<24>>24){case 1:{a[n>>0]=i>>>(d[C>>0]|0)<<(d[D>>0]|0)|h>>>(d[A>>0]|0)<<(d[B>>0]|0)|f>>>(d[E>>0]|0)<<(d[F>>0]|0)|L>>>(d[G>>0]|0)<<(d[r>>0]|0);break}case 2:{b[n>>1]=i>>>(d[C>>0]|0)<<(d[D>>0]|0)|h>>>(d[A>>0]|0)<<(d[B>>0]|0)|f>>>(d[E>>0]|0)<<(d[F>>0]|0)|L>>>(d[G>>0]|0)<<(d[r>>0]|0);break}case 3:{a[n+((d[B>>0]|0)>>>3&255)>>0]=m;a[n+((d[D>>0]|0)>>>3&255)>>0]=l;a[n+((d[F>>0]|0)>>>3&255)>>0]=k;break}case 4:{c[n>>2]=i>>>(d[C>>0]|0)<<(d[D>>0]|0)|h>>>(d[A>>0]|0)<<(d[B>>0]|0)|f>>>(d[E>>0]|0)<<(d[F>>0]|0)|L>>>(d[G>>0]|0)<<(d[r>>0]|0);break}default:{}}g=g+K|0;n=n+N|0;p=30;continue}else if((p|0)==30){p=0;switch(J<<24>>24){case 1:{f=d[g>>0]|0;h=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&f)>>>(d[u>>0]|0))|0;i=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&f)>>>(d[x>>0]|0))|0;f=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&f)>>>(d[q>>0]|0))|0;p=35;break}case 2:{f=e[g>>1]|0;h=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&f)>>>(d[u>>0]|0))|0;i=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&f)>>>(d[x>>0]|0))|0;f=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&f)>>>(d[q>>0]|0))|0;p=35;break}case 3:{h=g+((d[u>>0]|0)>>>3&255)|0;i=g+((d[x>>0]|0)>>>3&255)|0;f=g+((d[q>>0]|0)>>>3&255)|0;p=35;break}case 4:{f=c[g>>2]|0;h=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&f)>>>(d[u>>0]|0))|0;i=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&f)>>>(d[x>>0]|0))|0;f=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&f)>>>(d[q>>0]|0))|0;p=35;break}default:{m=0;l=0;k=0}}if((p|0)==35){m=a[h>>0]|0;l=a[i>>0]|0;k=a[f>>0]|0}h=m&255;i=l&255;f=k&255;switch(M<<24>>24){case 1:{a[n>>0]=i>>>(d[C>>0]|0)<<(d[D>>0]|0)|h>>>(d[A>>0]|0)<<(d[B>>0]|0)|f>>>(d[E>>0]|0)<<(d[F>>0]|0)|L>>>(d[G>>0]|0)<<(d[r>>0]|0);break}case 2:{b[n>>1]=i>>>(d[C>>0]|0)<<(d[D>>0]|0)|h>>>(d[A>>0]|0)<<(d[B>>0]|0)|f>>>(d[E>>0]|0)<<(d[F>>0]|0)|L>>>(d[G>>0]|0)<<(d[r>>0]|0);break}case 3:{a[n+((d[B>>0]|0)>>>3&255)>>0]=m;a[n+((d[D>>0]|0)>>>3&255)>>0]=l;a[n+((d[F>>0]|0)>>>3&255)>>0]=k;break}case 4:{c[n>>2]=i>>>(d[C>>0]|0)<<(d[D>>0]|0)|h>>>(d[A>>0]|0)<<(d[B>>0]|0)|f>>>(d[E>>0]|0)<<(d[F>>0]|0)|L>>>(d[G>>0]|0)<<(d[r>>0]|0);break}default:{}}g=g+K|0;n=n+N|0;p=42;continue}else if((p|0)==42){p=0;switch(J<<24>>24){case 1:{h=d[g>>0]|0;i=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&h)>>>(d[x>>0]|0))|0;f=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&h)>>>(d[u>>0]|0))|0;h=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&h)>>>(d[q>>0]|0))|0;p=47;break}case 2:{h=e[g>>1]|0;i=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&h)>>>(d[x>>0]|0))|0;f=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&h)>>>(d[u>>0]|0))|0;h=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&h)>>>(d[q>>0]|0))|0;p=47;break}case 3:{i=g+((d[x>>0]|0)>>>3&255)|0;f=g+((d[u>>0]|0)>>>3&255)|0;h=g+((d[q>>0]|0)>>>3&255)|0;p=47;break}case 4:{h=c[g>>2]|0;i=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&h)>>>(d[x>>0]|0))|0;f=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&h)>>>(d[u>>0]|0))|0;h=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&h)>>>(d[q>>0]|0))|0;p=47;break}default:{m=0;l=0;k=0}}if((p|0)==47){m=a[h>>0]|0;l=a[i>>0]|0;k=a[f>>0]|0}h=m&255;i=l&255;f=k&255;switch(M<<24>>24){case 1:{a[n>>0]=i>>>(d[C>>0]|0)<<(d[D>>0]|0)|f>>>(d[A>>0]|0)<<(d[B>>0]|0)|h>>>(d[E>>0]|0)<<(d[F>>0]|0)|L>>>(d[G>>0]|0)<<(d[r>>0]|0);break}case 2:{b[n>>1]=i>>>(d[C>>0]|0)<<(d[D>>0]|0)|f>>>(d[A>>0]|0)<<(d[B>>0]|0)|h>>>(d[E>>0]|0)<<(d[F>>0]|0)|L>>>(d[G>>0]|0)<<(d[r>>0]|0);break}case 3:{a[n+((d[B>>0]|0)>>>3&255)>>0]=k;a[n+((d[D>>0]|0)>>>3&255)>>0]=l;a[n+((d[F>>0]|0)>>>3&255)>>0]=m;break}case 4:{c[n>>2]=i>>>(d[C>>0]|0)<<(d[D>>0]|0)|f>>>(d[A>>0]|0)<<(d[B>>0]|0)|h>>>(d[E>>0]|0)<<(d[F>>0]|0)|L>>>(d[G>>0]|0)<<(d[r>>0]|0);break}default:{}}g=g+K|0;n=n+N|0;p=54;continue}else if((p|0)==54){p=0;switch(J<<24>>24){case 1:{h=d[g>>0]|0;i=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&h)>>>(d[x>>0]|0))|0;f=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&h)>>>(d[u>>0]|0))|0;h=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&h)>>>(d[q>>0]|0))|0;p=59;break}case 2:{h=e[g>>1]|0;i=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&h)>>>(d[x>>0]|0))|0;f=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&h)>>>(d[u>>0]|0))|0;h=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&h)>>>(d[q>>0]|0))|0;p=59;break}case 3:{i=g+((d[x>>0]|0)>>>3&255)|0;f=g+((d[u>>0]|0)>>>3&255)|0;h=g+((d[q>>0]|0)>>>3&255)|0;p=59;break}case 4:{h=c[g>>2]|0;i=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&h)>>>(d[x>>0]|0))|0;f=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&h)>>>(d[u>>0]|0))|0;h=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&h)>>>(d[q>>0]|0))|0;p=59;break}default:{m=0;l=0;k=0}}if((p|0)==59){m=a[h>>0]|0;l=a[i>>0]|0;k=a[f>>0]|0}h=m&255;i=l&255;f=k&255;switch(M<<24>>24){case 1:{a[n>>0]=i>>>(d[C>>0]|0)<<(d[D>>0]|0)|f>>>(d[A>>0]|0)<<(d[B>>0]|0)|h>>>(d[E>>0]|0)<<(d[F>>0]|0)|L>>>(d[G>>0]|0)<<(d[r>>0]|0);break}case 2:{b[n>>1]=i>>>(d[C>>0]|0)<<(d[D>>0]|0)|f>>>(d[A>>0]|0)<<(d[B>>0]|0)|h>>>(d[E>>0]|0)<<(d[F>>0]|0)|L>>>(d[G>>0]|0)<<(d[r>>0]|0);break}case 3:{a[n+((d[B>>0]|0)>>>3&255)>>0]=k;a[n+((d[D>>0]|0)>>>3&255)>>0]=l;a[n+((d[F>>0]|0)>>>3&255)>>0]=m;break}case 4:{c[n>>2]=i>>>(d[C>>0]|0)<<(d[D>>0]|0)|f>>>(d[A>>0]|0)<<(d[B>>0]|0)|h>>>(d[E>>0]|0)<<(d[F>>0]|0)|L>>>(d[G>>0]|0)<<(d[r>>0]|0);break}default:{}}g=g+K|0;n=n+N|0;p=66;continue}else if((p|0)==66){p=0;switch(J<<24>>24){case 1:{h=d[g>>0]|0;i=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&h)>>>(d[x>>0]|0))|0;f=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&h)>>>(d[u>>0]|0))|0;h=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&h)>>>(d[q>>0]|0))|0;p=71;break}case 2:{h=e[g>>1]|0;i=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&h)>>>(d[x>>0]|0))|0;f=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&h)>>>(d[u>>0]|0))|0;h=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&h)>>>(d[q>>0]|0))|0;p=71;break}case 3:{i=g+((d[x>>0]|0)>>>3&255)|0;f=g+((d[u>>0]|0)>>>3&255)|0;h=g+((d[q>>0]|0)>>>3&255)|0;p=71;break}case 4:{h=c[g>>2]|0;i=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&h)>>>(d[x>>0]|0))|0;f=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&h)>>>(d[u>>0]|0))|0;h=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&h)>>>(d[q>>0]|0))|0;p=71;break}default:{m=0;l=0;k=0}}if((p|0)==71){m=a[h>>0]|0;l=a[i>>0]|0;k=a[f>>0]|0}h=m&255;i=l&255;f=k&255;switch(M<<24>>24){case 1:{a[n>>0]=i>>>(d[C>>0]|0)<<(d[D>>0]|0)|f>>>(d[A>>0]|0)<<(d[B>>0]|0)|h>>>(d[E>>0]|0)<<(d[F>>0]|0)|L>>>(d[G>>0]|0)<<(d[r>>0]|0);break}case 2:{b[n>>1]=i>>>(d[C>>0]|0)<<(d[D>>0]|0)|f>>>(d[A>>0]|0)<<(d[B>>0]|0)|h>>>(d[E>>0]|0)<<(d[F>>0]|0)|L>>>(d[G>>0]|0)<<(d[r>>0]|0);break}case 3:{a[n+((d[B>>0]|0)>>>3&255)>>0]=k;a[n+((d[D>>0]|0)>>>3&255)>>0]=l;a[n+((d[F>>0]|0)>>>3&255)>>0]=m;break}case 4:{c[n>>2]=i>>>(d[C>>0]|0)<<(d[D>>0]|0)|f>>>(d[A>>0]|0)<<(d[B>>0]|0)|h>>>(d[E>>0]|0)<<(d[F>>0]|0)|L>>>(d[G>>0]|0)<<(d[r>>0]|0);break}default:{}}g=g+K|0;n=n+N|0;p=78;continue}else if((p|0)==78){p=0;switch(J<<24>>24){case 1:{h=d[g>>0]|0;i=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&h)>>>(d[x>>0]|0))|0;f=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&h)>>>(d[u>>0]|0))|0;h=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&h)>>>(d[q>>0]|0))|0;p=83;break}case 2:{h=e[g>>1]|0;i=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&h)>>>(d[x>>0]|0))|0;f=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&h)>>>(d[u>>0]|0))|0;h=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&h)>>>(d[q>>0]|0))|0;p=83;break}case 3:{i=g+((d[x>>0]|0)>>>3&255)|0;f=g+((d[u>>0]|0)>>>3&255)|0;h=g+((d[q>>0]|0)>>>3&255)|0;p=83;break}case 4:{h=c[g>>2]|0;i=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&h)>>>(d[x>>0]|0))|0;f=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&h)>>>(d[u>>0]|0))|0;h=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&h)>>>(d[q>>0]|0))|0;p=83;break}default:{m=0;l=0;k=0}}if((p|0)==83){m=a[h>>0]|0;l=a[i>>0]|0;k=a[f>>0]|0}h=m&255;i=l&255;f=k&255;switch(M<<24>>24){case 1:{a[n>>0]=i>>>(d[C>>0]|0)<<(d[D>>0]|0)|f>>>(d[A>>0]|0)<<(d[B>>0]|0)|h>>>(d[E>>0]|0)<<(d[F>>0]|0)|L>>>(d[G>>0]|0)<<(d[r>>0]|0);break}case 2:{b[n>>1]=i>>>(d[C>>0]|0)<<(d[D>>0]|0)|f>>>(d[A>>0]|0)<<(d[B>>0]|0)|h>>>(d[E>>0]|0)<<(d[F>>0]|0)|L>>>(d[G>>0]|0)<<(d[r>>0]|0);break}case 3:{a[n+((d[B>>0]|0)>>>3&255)>>0]=k;a[n+((d[D>>0]|0)>>>3&255)>>0]=l;a[n+((d[F>>0]|0)>>>3&255)>>0]=m;break}case 4:{c[n>>2]=i>>>(d[C>>0]|0)<<(d[D>>0]|0)|f>>>(d[A>>0]|0)<<(d[B>>0]|0)|h>>>(d[E>>0]|0)<<(d[F>>0]|0)|L>>>(d[G>>0]|0)<<(d[r>>0]|0);break}default:{}}g=g+K|0;n=n+N|0;p=90;continue}else if((p|0)==90){p=0;switch(J<<24>>24){case 1:{h=d[g>>0]|0;i=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&h)>>>(d[x>>0]|0))|0;f=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&h)>>>(d[u>>0]|0))|0;h=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&h)>>>(d[q>>0]|0))|0;p=95;break}case 2:{h=e[g>>1]|0;i=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&h)>>>(d[x>>0]|0))|0;f=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&h)>>>(d[u>>0]|0))|0;h=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&h)>>>(d[q>>0]|0))|0;p=95;break}case 3:{i=g+((d[x>>0]|0)>>>3&255)|0;f=g+((d[u>>0]|0)>>>3&255)|0;h=g+((d[q>>0]|0)>>>3&255)|0;p=95;break}case 4:{h=c[g>>2]|0;i=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&h)>>>(d[x>>0]|0))|0;f=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&h)>>>(d[u>>0]|0))|0;h=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&h)>>>(d[q>>0]|0))|0;p=95;break}default:{m=0;l=0;k=0}}if((p|0)==95){m=a[h>>0]|0;l=a[i>>0]|0;k=a[f>>0]|0}h=m&255;i=l&255;f=k&255;switch(M<<24>>24){case 1:{a[n>>0]=i>>>(d[C>>0]|0)<<(d[D>>0]|0)|f>>>(d[A>>0]|0)<<(d[B>>0]|0)|h>>>(d[E>>0]|0)<<(d[F>>0]|0)|L>>>(d[G>>0]|0)<<(d[r>>0]|0);break}case 2:{b[n>>1]=i>>>(d[C>>0]|0)<<(d[D>>0]|0)|f>>>(d[A>>0]|0)<<(d[B>>0]|0)|h>>>(d[E>>0]|0)<<(d[F>>0]|0)|L>>>(d[G>>0]|0)<<(d[r>>0]|0);break}case 3:{a[n+((d[B>>0]|0)>>>3&255)>>0]=k;a[n+((d[D>>0]|0)>>>3&255)>>0]=l;a[n+((d[F>>0]|0)>>>3&255)>>0]=m;break}case 4:{c[n>>2]=i>>>(d[C>>0]|0)<<(d[D>>0]|0)|f>>>(d[A>>0]|0)<<(d[B>>0]|0)|h>>>(d[E>>0]|0)<<(d[F>>0]|0)|L>>>(d[G>>0]|0)<<(d[r>>0]|0);break}default:{}}h=n+N|0;g=g+K|0;if((o|0)>1){o=o+-1|0;n=h;p=6;continue}else break}if(!j){p=104;break}else{g=g+P|0;n=h+I|0}}if((p|0)!=102)if((p|0)==104)return}function kH(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;d=c[a+24>>2]|0;j=c[a+28>>2]|0;b=c[a>>2]|0;k=c[a+16>>2]|0;f=c[a+20>>2]|0;i=c[a+36>>2]|0;e=j+-1|0;if(!j)return;a=d+7|0;j=(a|0)/8|0;h=d&255;switch(h&7){case 0:{a=f;while(1){d=j;while(1){c[a>>2]=c[b>>2];c[a+4>>2]=c[b+4>>2];c[a+8>>2]=c[b+8>>2];c[a+12>>2]=c[b+12>>2];c[a+16>>2]=c[b+16>>2];c[a+20>>2]=c[b+20>>2];c[a+24>>2]=c[b+24>>2];c[a+28>>2]=c[b+28>>2];a=a+32|0;b=b+32|0;if((d|0)<=1)break;else d=d+-1|0}if(!e)break;else{a=a+i|0;b=b+k|0;e=e+-1|0}}return}case 7:{h=(a|0)>15;while(1){c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];c[f+16>>2]=c[b+16>>2];c[f+20>>2]=c[b+20>>2];c[f+24>>2]=c[b+24>>2];a=f+28|0;d=b+28|0;if(h){g=j;do{g=g+-1|0;c[a>>2]=c[d>>2];a=f;f=f+32|0;d=b;b=b+32|0;c[f>>2]=c[b>>2];c[a+36>>2]=c[d+36>>2];c[a+40>>2]=c[d+40>>2];c[a+44>>2]=c[d+44>>2];c[a+48>>2]=c[d+48>>2];c[a+52>>2]=c[d+52>>2];c[a+56>>2]=c[d+56>>2];a=a+60|0;d=d+60|0}while((g|0)>1);b=d}else b=d;if(!e)break;else{f=a+i|0;b=b+k|0;e=e+-1|0}}return}default:{a:while(1){switch(h&7){case 1:{g=j;d=17;break}case 2:{a=j;d=16;break}case 6:{a=j;d=12;break}case 5:{a=j;d=13;break}case 4:{a=j;d=14;break}case 3:{a=j;d=15;break}default:{d=18;break a}}while(1)if((d|0)==12){c[f>>2]=c[b>>2];f=f+4|0;b=b+4|0;d=13;continue}else if((d|0)==13){c[f>>2]=c[b>>2];f=f+4|0;b=b+4|0;d=14;continue}else if((d|0)==14){c[f>>2]=c[b>>2];f=f+4|0;b=b+4|0;d=15;continue}else if((d|0)==15){c[f>>2]=c[b>>2];f=f+4|0;b=b+4|0;d=16;continue}else if((d|0)==16){c[f>>2]=c[b>>2];g=a;f=f+4|0;b=b+4|0;d=17;continue}else if((d|0)==17){c[f>>2]=c[b>>2];a=f+4|0;d=b+4|0;if((g|0)<=1)break;c[a>>2]=c[d>>2];c[f+8>>2]=c[b+8>>2];a=g+-1|0;f=f+12|0;b=b+12|0;d=12;continue}if(!e){d=20;break}else{f=a+i|0;b=d+k|0;e=e+-1|0}}if((d|0)!=18)if((d|0)==20)return}}}function lH(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;L=c[f+24>>2]|0;i=c[f+28>>2]|0;V=c[f+16>>2]|0;W=c[f+36>>2]|0;h=c[f+40>>2]|0;H=a[h+9>>0]|0;I=H&255;g=c[f+44>>2]|0;J=a[g+9>>0]|0;K=J&255;if(!i)return;M=(L|0)==0;N=g+28|0;P=g+32|0;Q=g+29|0;R=g+33|0;S=g+30|0;T=g+34|0;U=g+31|0;v=g+35|0;w=h+28|0;x=h+12|0;y=h+32|0;z=h+29|0;A=h+16|0;B=h+33|0;C=h+30|0;D=h+20|0;E=h+34|0;F=h+31|0;G=h+24|0;s=h+35|0;t=O(L,K)|0;u=O(L,I)|0;g=c[f>>2]|0;h=c[f+20>>2]|0;while(1){i=i+-1|0;if(!M){p=L;q=h;r=g;while(1){switch(H<<24>>24){case 1:{o=d[r>>0]|0;f=a[(c[18232+((d[F>>0]|0)<<2)>>2]|0)+((c[G>>2]&o)>>>(d[s>>0]|0))>>0]|0;m=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[D>>2]&o)>>>(d[E>>0]|0))>>0]|0;n=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&o)>>>(d[B>>0]|0))>>0]|0;o=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&o)>>>(d[y>>0]|0))>>0]|0;break}case 2:{o=e[r>>1]|0;f=a[(c[18232+((d[F>>0]|0)<<2)>>2]|0)+((c[G>>2]&o)>>>(d[s>>0]|0))>>0]|0;m=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[D>>2]&o)>>>(d[E>>0]|0))>>0]|0;n=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&o)>>>(d[B>>0]|0))>>0]|0;o=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&o)>>>(d[y>>0]|0))>>0]|0;break}case 3:{f=-1;m=a[r+((d[E>>0]|0)>>>3&255)>>0]|0;n=a[r+((d[B>>0]|0)>>>3&255)>>0]|0;o=a[r+((d[y>>0]|0)>>>3&255)>>0]|0;break}case 4:{o=c[r>>2]|0;f=a[(c[18232+((d[F>>0]|0)<<2)>>2]|0)+((c[G>>2]&o)>>>(d[s>>0]|0))>>0]|0;m=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[D>>2]&o)>>>(d[E>>0]|0))>>0]|0;n=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&o)>>>(d[B>>0]|0))>>0]|0;o=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&o)>>>(d[y>>0]|0))>>0]|0;break}default:{f=0;m=0;n=0;o=0}}f=f&255;j=m&255;k=n&255;l=o&255;switch(J<<24>>24){case 1:{a[q>>0]=k>>>(d[Q>>0]|0)<<(d[R>>0]|0)|l>>>(d[N>>0]|0)<<(d[P>>0]|0)|j>>>(d[S>>0]|0)<<(d[T>>0]|0)|f>>>(d[U>>0]|0)<<(d[v>>0]|0);break}case 2:{b[q>>1]=k>>>(d[Q>>0]|0)<<(d[R>>0]|0)|l>>>(d[N>>0]|0)<<(d[P>>0]|0)|j>>>(d[S>>0]|0)<<(d[T>>0]|0)|f>>>(d[U>>0]|0)<<(d[v>>0]|0);break}case 3:{a[q+((d[P>>0]|0)>>>3&255)>>0]=o;a[q+((d[R>>0]|0)>>>3&255)>>0]=n;a[q+((d[T>>0]|0)>>>3&255)>>0]=m;break}case 4:{c[q>>2]=k>>>(d[Q>>0]|0)<<(d[R>>0]|0)|l>>>(d[N>>0]|0)<<(d[P>>0]|0)|j>>>(d[S>>0]|0)<<(d[T>>0]|0)|f>>>(d[U>>0]|0)<<(d[v>>0]|0);break}default:{}}p=p+-1|0;if(!p)break;else{q=q+K|0;r=r+I|0}}g=g+u|0;h=h+t|0}if(!i)break;else{g=g+V|0;h=h+W|0}}return}
|
|
function mH(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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;g=c[f+24>>2]|0;j=c[f+28>>2]|0;Q=c[f+16>>2]|0;H=c[f+36>>2]|0;h=c[f+40>>2]|0;i=c[f+44>>2]|0;J=a[h+9>>0]|0;K=J&255;L=a[i+9>>0]|0;M=L&255;if(!(c[i+24>>2]|0))I=0;else I=d[f+63>>0]|0;N=~c[h+24>>2];O=c[f+56>>2]&N;if(!j)return;P=(g+7|0)/8|0;G=g&255;y=h+28|0;z=h+12|0;A=h+32|0;B=h+29|0;C=h+16|0;D=h+33|0;E=h+30|0;F=h+20|0;q=h+34|0;r=i+28|0;s=i+32|0;t=i+29|0;u=i+33|0;v=i+30|0;w=i+34|0;x=i+31|0;p=i+35|0;g=c[f>>2]|0;h=c[f+20>>2]|0;a:while(1){j=j+-1|0;switch(G&7){case 0:{o=P;i=6;break}case 7:{o=P;i=18;break}case 6:{o=P;i=30;break}case 5:{o=P;i=42;break}case 4:{o=P;i=54;break}case 3:{o=P;i=66;break}case 2:{o=P;i=78;break}case 1:{o=P;i=90;break}default:{i=102;break a}}while(1)if((i|0)==6){switch(J<<24>>24){case 1:{i=d[g>>0]|0;break}case 2:{i=e[g>>1]|0;break}case 3:{i=(d[g+1>>0]|0)<<8|(d[g>>0]|0)|(d[g+2>>0]|0)<<16;break}case 4:{i=c[g>>2]|0;break}default:i=0}b:do if((i&N|0)!=(O|0)){k=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&i)>>>(d[A>>0]|0))>>0]|0;l=k&255;m=a[(c[18232+((d[B>>0]|0)<<2)>>2]|0)+((c[C>>2]&i)>>>(d[D>>0]|0))>>0]|0;n=m&255;i=a[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[F>>2]&i)>>>(d[q>>0]|0))>>0]|0;f=i&255;switch(L<<24>>24){case 1:{a[h>>0]=n>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|I>>>(d[x>>0]|0)<<(d[p>>0]|0);break b}case 2:{b[h>>1]=n>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|I>>>(d[x>>0]|0)<<(d[p>>0]|0);break b}case 3:{a[h+((d[s>>0]|0)>>>3&255)>>0]=k;a[h+((d[u>>0]|0)>>>3&255)>>0]=m;a[h+((d[w>>0]|0)>>>3&255)>>0]=i;break b}case 4:{c[h>>2]=n>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|I>>>(d[x>>0]|0)<<(d[p>>0]|0);break b}default:break b}}while(0);g=g+K|0;h=h+M|0;i=18;continue}else if((i|0)==18){switch(J<<24>>24){case 1:{i=d[g>>0]|0;break}case 2:{i=e[g>>1]|0;break}case 3:{i=(d[g+1>>0]|0)<<8|(d[g>>0]|0)|(d[g+2>>0]|0)<<16;break}case 4:{i=c[g>>2]|0;break}default:i=0}c:do if((i&N|0)!=(O|0)){k=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&i)>>>(d[A>>0]|0))>>0]|0;l=k&255;m=a[(c[18232+((d[B>>0]|0)<<2)>>2]|0)+((c[C>>2]&i)>>>(d[D>>0]|0))>>0]|0;n=m&255;i=a[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[F>>2]&i)>>>(d[q>>0]|0))>>0]|0;f=i&255;switch(L<<24>>24){case 1:{a[h>>0]=n>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|I>>>(d[x>>0]|0)<<(d[p>>0]|0);break c}case 2:{b[h>>1]=n>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|I>>>(d[x>>0]|0)<<(d[p>>0]|0);break c}case 3:{a[h+((d[s>>0]|0)>>>3&255)>>0]=k;a[h+((d[u>>0]|0)>>>3&255)>>0]=m;a[h+((d[w>>0]|0)>>>3&255)>>0]=i;break c}case 4:{c[h>>2]=n>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|I>>>(d[x>>0]|0)<<(d[p>>0]|0);break c}default:break c}}while(0);g=g+K|0;h=h+M|0;i=30;continue}else if((i|0)==30){switch(J<<24>>24){case 1:{i=d[g>>0]|0;break}case 2:{i=e[g>>1]|0;break}case 3:{i=(d[g+1>>0]|0)<<8|(d[g>>0]|0)|(d[g+2>>0]|0)<<16;break}case 4:{i=c[g>>2]|0;break}default:i=0}d:do if((i&N|0)!=(O|0)){k=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&i)>>>(d[A>>0]|0))>>0]|0;l=k&255;m=a[(c[18232+((d[B>>0]|0)<<2)>>2]|0)+((c[C>>2]&i)>>>(d[D>>0]|0))>>0]|0;n=m&255;i=a[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[F>>2]&i)>>>(d[q>>0]|0))>>0]|0;f=i&255;switch(L<<24>>24){case 1:{a[h>>0]=n>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|I>>>(d[x>>0]|0)<<(d[p>>0]|0);break d}case 2:{b[h>>1]=n>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|I>>>(d[x>>0]|0)<<(d[p>>0]|0);break d}case 3:{a[h+((d[s>>0]|0)>>>3&255)>>0]=k;a[h+((d[u>>0]|0)>>>3&255)>>0]=m;a[h+((d[w>>0]|0)>>>3&255)>>0]=i;break d}case 4:{c[h>>2]=n>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|I>>>(d[x>>0]|0)<<(d[p>>0]|0);break d}default:break d}}while(0);g=g+K|0;h=h+M|0;i=42;continue}else if((i|0)==42){switch(J<<24>>24){case 1:{i=d[g>>0]|0;break}case 2:{i=e[g>>1]|0;break}case 3:{i=(d[g+1>>0]|0)<<8|(d[g>>0]|0)|(d[g+2>>0]|0)<<16;break}case 4:{i=c[g>>2]|0;break}default:i=0}e:do if((i&N|0)!=(O|0)){k=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&i)>>>(d[A>>0]|0))>>0]|0;l=k&255;m=a[(c[18232+((d[B>>0]|0)<<2)>>2]|0)+((c[C>>2]&i)>>>(d[D>>0]|0))>>0]|0;n=m&255;i=a[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[F>>2]&i)>>>(d[q>>0]|0))>>0]|0;f=i&255;switch(L<<24>>24){case 1:{a[h>>0]=n>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|I>>>(d[x>>0]|0)<<(d[p>>0]|0);break e}case 2:{b[h>>1]=n>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|I>>>(d[x>>0]|0)<<(d[p>>0]|0);break e}case 3:{a[h+((d[s>>0]|0)>>>3&255)>>0]=k;a[h+((d[u>>0]|0)>>>3&255)>>0]=m;a[h+((d[w>>0]|0)>>>3&255)>>0]=i;break e}case 4:{c[h>>2]=n>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|I>>>(d[x>>0]|0)<<(d[p>>0]|0);break e}default:break e}}while(0);g=g+K|0;h=h+M|0;i=54;continue}else if((i|0)==54){switch(J<<24>>24){case 1:{i=d[g>>0]|0;break}case 2:{i=e[g>>1]|0;break}case 3:{i=(d[g+1>>0]|0)<<8|(d[g>>0]|0)|(d[g+2>>0]|0)<<16;break}case 4:{i=c[g>>2]|0;break}default:i=0}f:do if((i&N|0)!=(O|0)){k=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&i)>>>(d[A>>0]|0))>>0]|0;l=k&255;m=a[(c[18232+((d[B>>0]|0)<<2)>>2]|0)+((c[C>>2]&i)>>>(d[D>>0]|0))>>0]|0;n=m&255;i=a[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[F>>2]&i)>>>(d[q>>0]|0))>>0]|0;f=i&255;switch(L<<24>>24){case 1:{a[h>>0]=n>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|I>>>(d[x>>0]|0)<<(d[p>>0]|0);break f}case 2:{b[h>>1]=n>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|I>>>(d[x>>0]|0)<<(d[p>>0]|0);break f}case 3:{a[h+((d[s>>0]|0)>>>3&255)>>0]=k;a[h+((d[u>>0]|0)>>>3&255)>>0]=m;a[h+((d[w>>0]|0)>>>3&255)>>0]=i;break f}case 4:{c[h>>2]=n>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|I>>>(d[x>>0]|0)<<(d[p>>0]|0);break f}default:break f}}while(0);g=g+K|0;h=h+M|0;i=66;continue}else if((i|0)==66){switch(J<<24>>24){case 1:{i=d[g>>0]|0;break}case 2:{i=e[g>>1]|0;break}case 3:{i=(d[g+1>>0]|0)<<8|(d[g>>0]|0)|(d[g+2>>0]|0)<<16;break}case 4:{i=c[g>>2]|0;break}default:i=0}g:do if((i&N|0)!=(O|0)){k=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&i)>>>(d[A>>0]|0))>>0]|0;l=k&255;m=a[(c[18232+((d[B>>0]|0)<<2)>>2]|0)+((c[C>>2]&i)>>>(d[D>>0]|0))>>0]|0;n=m&255;i=a[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[F>>2]&i)>>>(d[q>>0]|0))>>0]|0;f=i&255;switch(L<<24>>24){case 1:{a[h>>0]=n>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|I>>>(d[x>>0]|0)<<(d[p>>0]|0);break g}case 2:{b[h>>1]=n>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|I>>>(d[x>>0]|0)<<(d[p>>0]|0);break g}case 3:{a[h+((d[s>>0]|0)>>>3&255)>>0]=k;a[h+((d[u>>0]|0)>>>3&255)>>0]=m;a[h+((d[w>>0]|0)>>>3&255)>>0]=i;break g}case 4:{c[h>>2]=n>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|I>>>(d[x>>0]|0)<<(d[p>>0]|0);break g}default:break g}}while(0);g=g+K|0;h=h+M|0;i=78;continue}else if((i|0)==78){switch(J<<24>>24){case 1:{i=d[g>>0]|0;break}case 2:{i=e[g>>1]|0;break}case 3:{i=(d[g+1>>0]|0)<<8|(d[g>>0]|0)|(d[g+2>>0]|0)<<16;break}case 4:{i=c[g>>2]|0;break}default:i=0}h:do if((i&N|0)!=(O|0)){k=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&i)>>>(d[A>>0]|0))>>0]|0;l=k&255;m=a[(c[18232+((d[B>>0]|0)<<2)>>2]|0)+((c[C>>2]&i)>>>(d[D>>0]|0))>>0]|0;n=m&255;i=a[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[F>>2]&i)>>>(d[q>>0]|0))>>0]|0;f=i&255;switch(L<<24>>24){case 1:{a[h>>0]=n>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|I>>>(d[x>>0]|0)<<(d[p>>0]|0);break h}case 2:{b[h>>1]=n>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|I>>>(d[x>>0]|0)<<(d[p>>0]|0);break h}case 3:{a[h+((d[s>>0]|0)>>>3&255)>>0]=k;a[h+((d[u>>0]|0)>>>3&255)>>0]=m;a[h+((d[w>>0]|0)>>>3&255)>>0]=i;break h}case 4:{c[h>>2]=n>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|I>>>(d[x>>0]|0)<<(d[p>>0]|0);break h}default:break h}}while(0);g=g+K|0;h=h+M|0;i=90;continue}else if((i|0)==90){switch(J<<24>>24){case 1:{i=d[g>>0]|0;break}case 2:{i=e[g>>1]|0;break}case 3:{i=(d[g+1>>0]|0)<<8|(d[g>>0]|0)|(d[g+2>>0]|0)<<16;break}case 4:{i=c[g>>2]|0;break}default:i=0}i:do if((i&N|0)!=(O|0)){k=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&i)>>>(d[A>>0]|0))>>0]|0;l=k&255;m=a[(c[18232+((d[B>>0]|0)<<2)>>2]|0)+((c[C>>2]&i)>>>(d[D>>0]|0))>>0]|0;n=m&255;i=a[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[F>>2]&i)>>>(d[q>>0]|0))>>0]|0;f=i&255;switch(L<<24>>24){case 1:{a[h>>0]=n>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|I>>>(d[x>>0]|0)<<(d[p>>0]|0);break i}case 2:{b[h>>1]=n>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|I>>>(d[x>>0]|0)<<(d[p>>0]|0);break i}case 3:{a[h+((d[s>>0]|0)>>>3&255)>>0]=k;a[h+((d[u>>0]|0)>>>3&255)>>0]=m;a[h+((d[w>>0]|0)>>>3&255)>>0]=i;break i}case 4:{c[h>>2]=n>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|I>>>(d[x>>0]|0)<<(d[p>>0]|0);break i}default:break i}}while(0);h=h+M|0;g=g+K|0;if((o|0)>1){o=o+-1|0;i=6;continue}else break}if(!j){i=104;break}else{g=g+Q|0;h=h+H|0}}if((i|0)!=102)if((i|0)==104)return}function nH(b){b=b|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=0,zb=0,Ab=0,Bb=0,Cb=0,Db=0,Eb=0,Fb=0,Gb=0,Hb=0,Ib=0,Jb=0,Kb=0,Lb=0,Mb=0,Nb=0,Ob=0,Pb=0,Qb=0,Rb=0,Sb=0,Tb=0,Ub=0,Vb=0,Wb=0,Xb=0,Yb=0,Zb=0,_b=0,$b=0,ac=0,bc=0,cc=0,dc=0,ec=0,fc=0,gc=0;i=c[b+24>>2]|0;s=c[b+28>>2]|0;g=c[b>>2]|0;gc=c[b+16>>2]|0;f=c[b+20>>2]|0;fc=c[b+36>>2]|0;bc=c[b+48>>2]|0;cc=c[b+40>>2]|0;dc=a[cc+9>>0]|0;ec=dc&255;h=s+-1|0;b=(s|0)==0;if(!bc){if(b)return;s=(i+7|0)/8|0;r=i&255;j=cc+28|0;k=cc+12|0;l=cc+32|0;m=cc+29|0;n=cc+16|0;o=cc+33|0;p=cc+30|0;q=cc+20|0;i=cc+34|0;a:while(1){switch(r&7){case 0:{u=s;za=g;Aa=f;f=7;break}case 7:{ta=s;Ia=g;Ja=f;f=14;break}case 6:{Ca=s;Ra=g;Sa=f;f=21;break}case 5:{La=s;_a=g;$a=f;f=28;break}case 4:{Ua=s;hb=g;ib=f;f=35;break}case 3:{bb=s;qb=g;rb=f;f=42;break}case 2:{kb=s;zb=g;Ab=f;f=49;break}case 1:{tb=s;Gb=g;Hb=f;f=56;break}default:{f=63;break a}}while(1)if((f|0)==7){f=0;switch(dc<<24>>24){case 1:{Nb=d[za>>0]|0;x=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Nb)>>>(d[o>>0]|0))|0;z=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Nb)>>>(d[l>>0]|0))|0;Nb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Nb)>>>(d[i>>0]|0))|0;f=12;break}case 2:{Nb=e[za>>1]|0;x=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Nb)>>>(d[o>>0]|0))|0;z=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Nb)>>>(d[l>>0]|0))|0;Nb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Nb)>>>(d[i>>0]|0))|0;f=12;break}case 3:{x=za+((d[o>>0]|0)>>>3&255)|0;z=za+((d[l>>0]|0)>>>3&255)|0;Nb=za+((d[i>>0]|0)>>>3&255)|0;f=12;break}case 4:{Nb=c[za>>2]|0;x=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Nb)>>>(d[o>>0]|0))|0;z=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Nb)>>>(d[l>>0]|0))|0;Nb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Nb)>>>(d[i>>0]|0))|0;f=12;break}default:{v=0;w=0;y=0}}if((f|0)==12){v=a[Nb>>0]|0;w=a[x>>0]|0;y=a[z>>0]|0}a[Aa>>0]=(w&255)>>>5<<2|y&-32&255|(v&255)>>>6;ta=u;Ia=za+ec|0;Ja=Aa+1|0;f=14;continue}else if((f|0)==14){f=0;switch(dc<<24>>24){case 1:{Ob=d[Ia>>0]|0;wa=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Ob)>>>(d[o>>0]|0))|0;ya=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Ob)>>>(d[l>>0]|0))|0;Ob=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Ob)>>>(d[i>>0]|0))|0;f=19;break}case 2:{Ob=e[Ia>>1]|0;wa=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Ob)>>>(d[o>>0]|0))|0;ya=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Ob)>>>(d[l>>0]|0))|0;Ob=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Ob)>>>(d[i>>0]|0))|0;f=19;break}case 3:{wa=Ia+((d[o>>0]|0)>>>3&255)|0;ya=Ia+((d[l>>0]|0)>>>3&255)|0;Ob=Ia+((d[i>>0]|0)>>>3&255)|0;f=19;break}case 4:{Ob=c[Ia>>2]|0;wa=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Ob)>>>(d[o>>0]|0))|0;ya=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Ob)>>>(d[l>>0]|0))|0;Ob=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Ob)>>>(d[i>>0]|0))|0;f=19;break}default:{ua=0;va=0;xa=0}}if((f|0)==19){ua=a[Ob>>0]|0;va=a[wa>>0]|0;xa=a[ya>>0]|0}a[Ja>>0]=(va&255)>>>5<<2|xa&-32&255|(ua&255)>>>6;Ca=ta;Ra=Ia+ec|0;Sa=Ja+1|0;f=21;continue}else if((f|0)==21){f=0;switch(dc<<24>>24){case 1:{Pb=d[Ra>>0]|0;Fa=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Pb)>>>(d[o>>0]|0))|0;Ha=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Pb)>>>(d[l>>0]|0))|0;Pb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Pb)>>>(d[i>>0]|0))|0;f=26;break}case 2:{Pb=e[Ra>>1]|0;Fa=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Pb)>>>(d[o>>0]|0))|0;Ha=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Pb)>>>(d[l>>0]|0))|0;Pb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Pb)>>>(d[i>>0]|0))|0;f=26;break}case 3:{Fa=Ra+((d[o>>0]|0)>>>3&255)|0;Ha=Ra+((d[l>>0]|0)>>>3&255)|0;Pb=Ra+((d[i>>0]|0)>>>3&255)|0;f=26;break}case 4:{Pb=c[Ra>>2]|0;Fa=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Pb)>>>(d[o>>0]|0))|0;Ha=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Pb)>>>(d[l>>0]|0))|0;Pb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Pb)>>>(d[i>>0]|0))|0;f=26;break}default:{Da=0;Ea=0;Ga=0}}if((f|0)==26){Da=a[Pb>>0]|0;Ea=a[Fa>>0]|0;Ga=a[Ha>>0]|0}a[Sa>>0]=(Ea&255)>>>5<<2|Ga&-32&255|(Da&255)>>>6;La=Ca;_a=Ra+ec|0;$a=Sa+1|0;f=28;continue}else if((f|0)==28){f=0;switch(dc<<24>>24){case 1:{Qb=d[_a>>0]|0;Oa=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Qb)>>>(d[o>>0]|0))|0;Qa=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Qb)>>>(d[l>>0]|0))|0;Qb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Qb)>>>(d[i>>0]|0))|0;f=33;break}case 2:{Qb=e[_a>>1]|0;Oa=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Qb)>>>(d[o>>0]|0))|0;Qa=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Qb)>>>(d[l>>0]|0))|0;Qb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Qb)>>>(d[i>>0]|0))|0;f=33;break}case 3:{Oa=_a+((d[o>>0]|0)>>>3&255)|0;Qa=_a+((d[l>>0]|0)>>>3&255)|0;Qb=_a+((d[i>>0]|0)>>>3&255)|0;f=33;break}case 4:{Qb=c[_a>>2]|0;Oa=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Qb)>>>(d[o>>0]|0))|0;Qa=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Qb)>>>(d[l>>0]|0))|0;Qb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Qb)>>>(d[i>>0]|0))|0;f=33;break}default:{Ma=0;Na=0;Pa=0}}if((f|0)==33){Ma=a[Qb>>0]|0;Na=a[Oa>>0]|0;Pa=a[Qa>>0]|0}a[$a>>0]=(Na&255)>>>5<<2|Pa&-32&255|(Ma&255)>>>6;Ua=La;hb=_a+ec|0;ib=$a+1|0;f=35;continue}else if((f|0)==35){f=0;switch(dc<<24>>24){case 1:{Rb=d[hb>>0]|0;Xa=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Rb)>>>(d[o>>0]|0))|0;Za=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Rb)>>>(d[l>>0]|0))|0;Rb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Rb)>>>(d[i>>0]|0))|0;f=40;break}case 2:{Rb=e[hb>>1]|0;Xa=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Rb)>>>(d[o>>0]|0))|0;Za=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Rb)>>>(d[l>>0]|0))|0;Rb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Rb)>>>(d[i>>0]|0))|0;f=40;break}case 3:{Xa=hb+((d[o>>0]|0)>>>3&255)|0;Za=hb+((d[l>>0]|0)>>>3&255)|0;Rb=hb+((d[i>>0]|0)>>>3&255)|0;f=40;break}case 4:{Rb=c[hb>>2]|0;Xa=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Rb)>>>(d[o>>0]|0))|0;Za=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Rb)>>>(d[l>>0]|0))|0;Rb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Rb)>>>(d[i>>0]|0))|0;f=40;break}default:{Va=0;Wa=0;Ya=0}}if((f|0)==40){Va=a[Rb>>0]|0;Wa=a[Xa>>0]|0;Ya=a[Za>>0]|0}a[ib>>0]=(Wa&255)>>>5<<2|Ya&-32&255|(Va&255)>>>6;bb=Ua;qb=hb+ec|0;rb=ib+1|0;f=42;continue}else if((f|0)==42){f=0;switch(dc<<24>>24){case 1:{Sb=d[qb>>0]|0;eb=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Sb)>>>(d[o>>0]|0))|0;gb=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Sb)>>>(d[l>>0]|0))|0;Sb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Sb)>>>(d[i>>0]|0))|0;f=47;break}case 2:{Sb=e[qb>>1]|0;eb=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Sb)>>>(d[o>>0]|0))|0;gb=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Sb)>>>(d[l>>0]|0))|0;Sb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Sb)>>>(d[i>>0]|0))|0;f=47;break}case 3:{eb=qb+((d[o>>0]|0)>>>3&255)|0;gb=qb+((d[l>>0]|0)>>>3&255)|0;Sb=qb+((d[i>>0]|0)>>>3&255)|0;f=47;break}case 4:{Sb=c[qb>>2]|0;eb=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Sb)>>>(d[o>>0]|0))|0;gb=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Sb)>>>(d[l>>0]|0))|0;Sb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Sb)>>>(d[i>>0]|0))|0;f=47;break}default:{cb=0;db=0;fb=0}}if((f|0)==47){cb=a[Sb>>0]|0;db=a[eb>>0]|0;fb=a[gb>>0]|0}a[rb>>0]=(db&255)>>>5<<2|fb&-32&255|(cb&255)>>>6;kb=bb;zb=qb+ec|0;Ab=rb+1|0;f=49;continue}else if((f|0)==49){f=0;switch(dc<<24>>24){case 1:{Tb=d[zb>>0]|0;nb=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Tb)>>>(d[o>>0]|0))|0;pb=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Tb)>>>(d[l>>0]|0))|0;Tb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Tb)>>>(d[i>>0]|0))|0;f=54;break}case 2:{Tb=e[zb>>1]|0;nb=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Tb)>>>(d[o>>0]|0))|0;pb=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Tb)>>>(d[l>>0]|0))|0;Tb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Tb)>>>(d[i>>0]|0))|0;f=54;break}case 3:{nb=zb+((d[o>>0]|0)>>>3&255)|0;pb=zb+((d[l>>0]|0)>>>3&255)|0;Tb=zb+((d[i>>0]|0)>>>3&255)|0;f=54;break}case 4:{Tb=c[zb>>2]|0;nb=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Tb)>>>(d[o>>0]|0))|0;pb=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Tb)>>>(d[l>>0]|0))|0;Tb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Tb)>>>(d[i>>0]|0))|0;f=54;break}default:{lb=0;mb=0;ob=0}}if((f|0)==54){lb=a[Tb>>0]|0;mb=a[nb>>0]|0;ob=a[pb>>0]|0}a[Ab>>0]=(mb&255)>>>5<<2|ob&-32&255|(lb&255)>>>6;tb=kb;Gb=zb+ec|0;Hb=Ab+1|0;f=56;continue}else if((f|0)==56){f=0;switch(dc<<24>>24){case 1:{Ub=d[Gb>>0]|0;wb=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Ub)>>>(d[o>>0]|0))|0;yb=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Ub)>>>(d[l>>0]|0))|0;Ub=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Ub)>>>(d[i>>0]|0))|0;f=61;break}case 2:{Ub=e[Gb>>1]|0;wb=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Ub)>>>(d[o>>0]|0))|0;yb=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Ub)>>>(d[l>>0]|0))|0;Ub=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Ub)>>>(d[i>>0]|0))|0;f=61;break}case 3:{wb=Gb+((d[o>>0]|0)>>>3&255)|0;yb=Gb+((d[l>>0]|0)>>>3&255)|0;Ub=Gb+((d[i>>0]|0)>>>3&255)|0;f=61;break}case 4:{Ub=c[Gb>>2]|0;wb=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Ub)>>>(d[o>>0]|0))|0;yb=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Ub)>>>(d[l>>0]|0))|0;Ub=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Ub)>>>(d[i>>0]|0))|0;f=61;break}default:{ub=0;vb=0;xb=0}}if((f|0)==61){ub=a[Ub>>0]|0;vb=a[wb>>0]|0;xb=a[yb>>0]|0}a[Hb>>0]=(vb&255)>>>5<<2|xb&-32&255|(ub&255)>>>6;b=Hb+1|0;f=Gb+ec|0;if((tb|0)>1){u=tb+-1|0;za=f;Aa=b;f=7;continue}else break}if(!h){f=124;break}else{g=f+gc|0;f=b+fc|0;h=h+-1|0}}if((f|0)!=63)if((f|0)==124)return}else{if(b)return;s=(i+7|0)/8|0;r=i&255;j=cc+28|0;k=cc+12|0;l=cc+32|0;m=cc+29|0;n=cc+16|0;o=cc+33|0;p=cc+30|0;q=cc+20|0;i=cc+34|0;b:while(1){switch(r&7){case 0:{t=s;G=g;H=f;f=66;break}case 7:{A=s;N=g;O=f;f=73;break}case 6:{U=g;V=f;Ba=s;f=80;break}case 5:{$=g;aa=f;Ka=s;f=87;break}case 4:{ga=g;ha=f;Ta=s;f=94;break}case 3:{na=g;oa=f;ab=s;f=101;break}case 2:{pa=g;qa=f;jb=s;f=108;break}case 1:{ra=g;sa=f;sb=s;f=115;break}default:{f=122;break b}}while(1)if((f|0)==66){f=0;switch(dc<<24>>24){case 1:{Vb=d[G>>0]|0;Db=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Vb)>>>(d[o>>0]|0))|0;Fb=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Vb)>>>(d[l>>0]|0))|0;Vb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Vb)>>>(d[i>>0]|0))|0;f=71;break}case 2:{Vb=e[G>>1]|0;Db=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Vb)>>>(d[o>>0]|0))|0;Fb=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Vb)>>>(d[l>>0]|0))|0;Vb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Vb)>>>(d[i>>0]|0))|0;f=71;break}case 3:{Db=G+((d[o>>0]|0)>>>3&255)|0;Fb=G+((d[l>>0]|0)>>>3&255)|0;Vb=G+((d[i>>0]|0)>>>3&255)|0;f=71;break}case 4:{Vb=c[G>>2]|0;Db=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Vb)>>>(d[o>>0]|0))|0;Fb=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Vb)>>>(d[l>>0]|0))|0;Vb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Vb)>>>(d[i>>0]|0))|0;f=71;break}default:{Bb=0;Cb=0;Eb=0}}if((f|0)==71){Bb=a[Vb>>0]|0;Cb=a[Db>>0]|0;Eb=a[Fb>>0]|0}a[H>>0]=a[bc+((Cb&255)>>>5<<2|Eb&-32&255|(Bb&255)>>>6)>>0]|0;A=t;N=G+ec|0;O=H+1|0;f=73;continue}else if((f|0)==73){f=0;switch(dc<<24>>24){case 1:{Wb=d[N>>0]|0;Kb=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Wb)>>>(d[o>>0]|0))|0;Mb=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Wb)>>>(d[l>>0]|0))|0;Wb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Wb)>>>(d[i>>0]|0))|0;f=78;break}case 2:{Wb=e[N>>1]|0;Kb=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Wb)>>>(d[o>>0]|0))|0;Mb=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Wb)>>>(d[l>>0]|0))|0;Wb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Wb)>>>(d[i>>0]|0))|0;f=78;break}case 3:{Kb=N+((d[o>>0]|0)>>>3&255)|0;Mb=N+((d[l>>0]|0)>>>3&255)|0;Wb=N+((d[i>>0]|0)>>>3&255)|0;f=78;break}case 4:{Wb=c[N>>2]|0;Kb=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Wb)>>>(d[o>>0]|0))|0;Mb=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Wb)>>>(d[l>>0]|0))|0;Wb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Wb)>>>(d[i>>0]|0))|0;f=78;break}default:{Ib=0;Jb=0;Lb=0}}if((f|0)==78){Ib=a[Wb>>0]|0;Jb=a[Kb>>0]|0;Lb=a[Mb>>0]|0}a[O>>0]=a[bc+((Jb&255)>>>5<<2|Lb&-32&255|(Ib&255)>>>6)>>0]|0;U=N+ec|0;V=O+1|0;Ba=A;f=80;continue}else if((f|0)==80){f=0;switch(dc<<24>>24){case 1:{Xb=d[U>>0]|0;D=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Xb)>>>(d[o>>0]|0))|0;F=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Xb)>>>(d[l>>0]|0))|0;Xb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Xb)>>>(d[i>>0]|0))|0;f=85;break}case 2:{Xb=e[U>>1]|0;D=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Xb)>>>(d[o>>0]|0))|0;F=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Xb)>>>(d[l>>0]|0))|0;Xb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Xb)>>>(d[i>>0]|0))|0;f=85;break}case 3:{D=U+((d[o>>0]|0)>>>3&255)|0;F=U+((d[l>>0]|0)>>>3&255)|0;Xb=U+((d[i>>0]|0)>>>3&255)|0;f=85;break}case 4:{Xb=c[U>>2]|0;D=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Xb)>>>(d[o>>0]|0))|0;F=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Xb)>>>(d[l>>0]|0))|0;Xb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Xb)>>>(d[i>>0]|0))|0;f=85;break}default:{B=0;C=0;E=0}}if((f|0)==85){B=a[Xb>>0]|0;C=a[D>>0]|0;E=a[F>>0]|0}a[V>>0]=a[bc+((C&255)>>>5<<2|E&-32&255|(B&255)>>>6)>>0]|0;$=U+ec|0;aa=V+1|0;Ka=Ba;f=87;continue}else if((f|0)==87){f=0;switch(dc<<24>>24){case 1:{Yb=d[$>>0]|0;K=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Yb)>>>(d[o>>0]|0))|0;M=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Yb)>>>(d[l>>0]|0))|0;Yb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Yb)>>>(d[i>>0]|0))|0;f=92;break}case 2:{Yb=e[$>>1]|0;K=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Yb)>>>(d[o>>0]|0))|0;M=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Yb)>>>(d[l>>0]|0))|0;Yb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Yb)>>>(d[i>>0]|0))|0;f=92;break}case 3:{K=$+((d[o>>0]|0)>>>3&255)|0;M=$+((d[l>>0]|0)>>>3&255)|0;Yb=$+((d[i>>0]|0)>>>3&255)|0;f=92;break}case 4:{Yb=c[$>>2]|0;K=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Yb)>>>(d[o>>0]|0))|0;M=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Yb)>>>(d[l>>0]|0))|0;Yb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Yb)>>>(d[i>>0]|0))|0;f=92;break}default:{I=0;J=0;L=0}}if((f|0)==92){I=a[Yb>>0]|0;J=a[K>>0]|0;L=a[M>>0]|0}a[aa>>0]=a[bc+((J&255)>>>5<<2|L&-32&255|(I&255)>>>6)>>0]|0;ga=$+ec|0;ha=aa+1|0;Ta=Ka;f=94;continue}else if((f|0)==94){f=0;switch(dc<<24>>24){case 1:{Zb=d[ga>>0]|0;R=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Zb)>>>(d[o>>0]|0))|0;T=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Zb)>>>(d[l>>0]|0))|0;Zb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Zb)>>>(d[i>>0]|0))|0;f=99;break}case 2:{Zb=e[ga>>1]|0;R=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Zb)>>>(d[o>>0]|0))|0;T=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Zb)>>>(d[l>>0]|0))|0;Zb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Zb)>>>(d[i>>0]|0))|0;f=99;break}case 3:{R=ga+((d[o>>0]|0)>>>3&255)|0;T=ga+((d[l>>0]|0)>>>3&255)|0;Zb=ga+((d[i>>0]|0)>>>3&255)|0;f=99;break}case 4:{Zb=c[ga>>2]|0;R=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Zb)>>>(d[o>>0]|0))|0;T=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Zb)>>>(d[l>>0]|0))|0;Zb=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Zb)>>>(d[i>>0]|0))|0;f=99;break}default:{P=0;Q=0;S=0}}if((f|0)==99){P=a[Zb>>0]|0;Q=a[R>>0]|0;S=a[T>>0]|0}a[ha>>0]=a[bc+((Q&255)>>>5<<2|S&-32&255|(P&255)>>>6)>>0]|0;na=ga+ec|0;oa=ha+1|0;ab=Ta;f=101;continue}else if((f|0)==101){f=0;switch(dc<<24>>24){case 1:{_b=d[na>>0]|0;Y=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&_b)>>>(d[o>>0]|0))|0;_=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&_b)>>>(d[l>>0]|0))|0;_b=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&_b)>>>(d[i>>0]|0))|0;f=106;break}case 2:{_b=e[na>>1]|0;Y=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&_b)>>>(d[o>>0]|0))|0;_=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&_b)>>>(d[l>>0]|0))|0;_b=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&_b)>>>(d[i>>0]|0))|0;f=106;break}case 3:{Y=na+((d[o>>0]|0)>>>3&255)|0;_=na+((d[l>>0]|0)>>>3&255)|0;_b=na+((d[i>>0]|0)>>>3&255)|0;f=106;break}case 4:{_b=c[na>>2]|0;Y=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&_b)>>>(d[o>>0]|0))|0;_=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&_b)>>>(d[l>>0]|0))|0;_b=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&_b)>>>(d[i>>0]|0))|0;f=106;break}default:{W=0;X=0;Z=0}}if((f|0)==106){W=a[_b>>0]|0;X=a[Y>>0]|0;Z=a[_>>0]|0}a[oa>>0]=a[bc+((X&255)>>>5<<2|Z&-32&255|(W&255)>>>6)>>0]|0;pa=na+ec|0;qa=oa+1|0;jb=ab;f=108;continue}else if((f|0)==108){f=0;switch(dc<<24>>24){case 1:{$b=d[pa>>0]|0;da=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&$b)>>>(d[o>>0]|0))|0;fa=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&$b)>>>(d[l>>0]|0))|0;$b=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&$b)>>>(d[i>>0]|0))|0;f=113;break}case 2:{$b=e[pa>>1]|0;da=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&$b)>>>(d[o>>0]|0))|0;fa=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&$b)>>>(d[l>>0]|0))|0;$b=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&$b)>>>(d[i>>0]|0))|0;f=113;break}case 3:{da=pa+((d[o>>0]|0)>>>3&255)|0;fa=pa+((d[l>>0]|0)>>>3&255)|0;$b=pa+((d[i>>0]|0)>>>3&255)|0;f=113;break}case 4:{$b=c[pa>>2]|0;da=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&$b)>>>(d[o>>0]|0))|0;fa=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&$b)>>>(d[l>>0]|0))|0;$b=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&$b)>>>(d[i>>0]|0))|0;f=113;break}default:{ba=0;ca=0;ea=0}}if((f|0)==113){ba=a[$b>>0]|0;ca=a[da>>0]|0;ea=a[fa>>0]|0}a[qa>>0]=a[bc+((ca&255)>>>5<<2|ea&-32&255|(ba&255)>>>6)>>0]|0;ra=pa+ec|0;sa=qa+1|0;sb=jb;f=115;continue}else if((f|0)==115){f=0;switch(dc<<24>>24){case 1:{ac=d[ra>>0]|0;ka=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&ac)>>>(d[o>>0]|0))|0;ma=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&ac)>>>(d[l>>0]|0))|0;ac=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&ac)>>>(d[i>>0]|0))|0;f=120;break}case 2:{ac=e[ra>>1]|0;ka=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&ac)>>>(d[o>>0]|0))|0;ma=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&ac)>>>(d[l>>0]|0))|0;ac=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&ac)>>>(d[i>>0]|0))|0;f=120;break}case 3:{ka=ra+((d[o>>0]|0)>>>3&255)|0;ma=ra+((d[l>>0]|0)>>>3&255)|0;ac=ra+((d[i>>0]|0)>>>3&255)|0;f=120;break}case 4:{ac=c[ra>>2]|0;ka=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&ac)>>>(d[o>>0]|0))|0;ma=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&ac)>>>(d[l>>0]|0))|0;ac=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&ac)>>>(d[i>>0]|0))|0;f=120;break}default:{ia=0;ja=0;la=0}}if((f|0)==120){ia=a[ac>>0]|0;ja=a[ka>>0]|0;la=a[ma>>0]|0}a[sa>>0]=a[bc+((ja&255)>>>5<<2|la&-32&255|(ia&255)>>>6)>>0]|0;b=sa+1|0;f=ra+ec|0;if((sb|0)>1){t=sb+-1|0;G=f;H=b;f=66;continue}else break}if(!h){f=124;break}else{g=f+gc|0;f=b+fc|0;h=h+-1|0}}if((f|0)!=122)if((f|0)==124)return}}function oH(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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;i=c[b+24>>2]|0;f=c[b+28>>2]|0;e=c[b>>2]|0;Y=(c[b+16>>2]|0)/4|0;d=c[b+20>>2]|0;X=c[b+36>>2]|0;y=c[b+48>>2]|0;b=f+-1|0;f=(f|0)==0;if(!y){if(f)return;g=(i+7|0)/8|0;f=i&255;a:while(1){switch(f&7){case 0:{h=g;k=d;d=7;break}case 7:{j=g;m=d;d=8;break}case 6:{l=g;o=d;d=9;break}case 5:{n=g;q=d;d=10;break}case 4:{p=g;s=d;d=11;break}case 3:{r=g;u=d;d=12;break}case 2:{t=g;w=d;d=13;break}case 1:{v=g;x=d;d=14;break}default:{d=15;break a}}while(1)if((d|0)==7){j=c[e>>2]|0;a[k>>0]=j>>>16&224|j>>>11&28|j>>>6&3;j=h;m=k+1|0;d=8;continue}else if((d|0)==8){l=c[e>>2]|0;a[m>>0]=l>>>16&224|l>>>11&28|l>>>6&3;l=j;o=m+1|0;d=9;continue}else if((d|0)==9){n=c[e>>2]|0;a[o>>0]=n>>>16&224|n>>>11&28|n>>>6&3;n=l;q=o+1|0;d=10;continue}else if((d|0)==10){p=c[e>>2]|0;a[q>>0]=p>>>16&224|p>>>11&28|p>>>6&3;p=n;s=q+1|0;d=11;continue}else if((d|0)==11){r=c[e>>2]|0;a[s>>0]=r>>>16&224|r>>>11&28|r>>>6&3;r=p;u=s+1|0;d=12;continue}else if((d|0)==12){t=c[e>>2]|0;a[u>>0]=t>>>16&224|t>>>11&28|t>>>6&3;t=r;w=u+1|0;d=13;continue}else if((d|0)==13){v=c[e>>2]|0;a[w>>0]=v>>>16&224|v>>>11&28|v>>>6&3;v=t;x=w+1|0;d=14;continue}else if((d|0)==14){W=c[e>>2]|0;d=x+1|0;a[x>>0]=W>>>16&224|W>>>11&28|W>>>6&3;if((v|0)>1){h=v+-1|0;k=d;d=7;continue}else break}if(!b){d=28;break}else{e=e+(Y<<2)|0;d=d+X|0;b=b+-1|0}}if((d|0)!=15)if((d|0)==28)return}else{if(f)return;h=(i+7|0)/8|0;g=i&255;b:while(1){switch(g&7){case 0:{z=h;B=d;K=e;d=18;break}case 7:{A=h;C=d;M=e;d=19;break}case 6:{D=d;J=h;O=e;d=20;break}case 5:{E=d;L=h;Q=e;d=21;break}case 4:{F=d;N=h;S=e;d=22;break}case 3:{G=d;P=h;U=e;d=23;break}case 2:{H=d;R=h;V=e;d=24;break}case 1:{I=d;T=h;W=e;d=25;break}default:{d=26;break b}}while(1)if((d|0)==18){A=c[K>>2]|0;a[B>>0]=a[y+(A>>>16&224|A>>>11&28|A>>>6&3)>>0]|0;A=z;C=B+1|0;M=K+4|0;d=19;continue}else if((d|0)==19){D=c[M>>2]|0;a[C>>0]=a[y+(D>>>16&224|D>>>11&28|D>>>6&3)>>0]|0;D=C+1|0;J=A;O=M+4|0;d=20;continue}else if((d|0)==20){E=c[O>>2]|0;a[D>>0]=a[y+(E>>>16&224|E>>>11&28|E>>>6&3)>>0]|0;E=D+1|0;L=J;Q=O+4|0;d=21;continue}else if((d|0)==21){F=c[Q>>2]|0;a[E>>0]=a[y+(F>>>16&224|F>>>11&28|F>>>6&3)>>0]|0;F=E+1|0;N=L;S=Q+4|0;d=22;continue}else if((d|0)==22){G=c[S>>2]|0;a[F>>0]=a[y+(G>>>16&224|G>>>11&28|G>>>6&3)>>0]|0;G=F+1|0;P=N;U=S+4|0;d=23;continue}else if((d|0)==23){H=c[U>>2]|0;a[G>>0]=a[y+(H>>>16&224|H>>>11&28|H>>>6&3)>>0]|0;H=G+1|0;R=P;V=U+4|0;d=24;continue}else if((d|0)==24){I=c[V>>2]|0;a[H>>0]=a[y+(I>>>16&224|I>>>11&28|I>>>6&3)>>0]|0;I=H+1|0;T=R;W=V+4|0;d=25;continue}else if((d|0)==25){d=c[W>>2]|0;f=I+1|0;a[I>>0]=a[y+(d>>>16&224|d>>>11&28|d>>>6&3)>>0]|0;d=W+4|0;if((T|0)>1){z=T+-1|0;B=f;K=d;d=18;continue}else break}if(!b){d=28;break}else{e=d+(Y<<2)|0;d=f+X|0;b=b+-1|0}}if((d|0)!=26)if((d|0)==28)return}}function pH(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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;i=c[b+24>>2]|0;f=c[b+28>>2]|0;e=c[b>>2]|0;Y=(c[b+16>>2]|0)/4|0;d=c[b+20>>2]|0;X=c[b+36>>2]|0;y=c[b+48>>2]|0;b=f+-1|0;f=(f|0)==0;if(!y){if(f)return;g=(i+7|0)/8|0;f=i&255;a:while(1){switch(f&7){case 0:{h=g;k=d;d=7;break}case 7:{j=g;m=d;d=8;break}case 6:{l=g;o=d;d=9;break}case 5:{n=g;q=d;d=10;break}case 4:{p=g;s=d;d=11;break}case 3:{r=g;u=d;d=12;break}case 2:{t=g;w=d;d=13;break}case 1:{v=g;x=d;d=14;break}default:{d=15;break a}}while(1)if((d|0)==7){j=c[e>>2]|0;a[k>>0]=j>>>22&224|j>>>15&28|j>>>8&3;j=h;m=k+1|0;d=8;continue}else if((d|0)==8){l=c[e>>2]|0;a[m>>0]=l>>>22&224|l>>>15&28|l>>>8&3;l=j;o=m+1|0;d=9;continue}else if((d|0)==9){n=c[e>>2]|0;a[o>>0]=n>>>22&224|n>>>15&28|n>>>8&3;n=l;q=o+1|0;d=10;continue}else if((d|0)==10){p=c[e>>2]|0;a[q>>0]=p>>>22&224|p>>>15&28|p>>>8&3;p=n;s=q+1|0;d=11;continue}else if((d|0)==11){r=c[e>>2]|0;a[s>>0]=r>>>22&224|r>>>15&28|r>>>8&3;r=p;u=s+1|0;d=12;continue}else if((d|0)==12){t=c[e>>2]|0;a[u>>0]=t>>>22&224|t>>>15&28|t>>>8&3;t=r;w=u+1|0;d=13;continue}else if((d|0)==13){v=c[e>>2]|0;a[w>>0]=v>>>22&224|v>>>15&28|v>>>8&3;v=t;x=w+1|0;d=14;continue}else if((d|0)==14){W=c[e>>2]|0;d=x+1|0;a[x>>0]=W>>>22&224|W>>>15&28|W>>>8&3;if((v|0)>1){h=v+-1|0;k=d;d=7;continue}else break}if(!b){d=28;break}else{e=e+(Y<<2)|0;d=d+X|0;b=b+-1|0}}if((d|0)!=15)if((d|0)==28)return}else{if(f)return;h=(i+7|0)/8|0;g=i&255;b:while(1){switch(g&7){case 0:{z=h;B=d;K=e;d=18;break}case 7:{A=h;C=d;M=e;d=19;break}case 6:{D=d;J=h;O=e;d=20;break}case 5:{E=d;L=h;Q=e;d=21;break}case 4:{F=d;N=h;S=e;d=22;break}case 3:{G=d;P=h;U=e;d=23;break}case 2:{H=d;R=h;V=e;d=24;break}case 1:{I=d;T=h;W=e;d=25;break}default:{d=26;break b}}while(1)if((d|0)==18){A=c[K>>2]|0;a[B>>0]=a[y+(A>>>22&224|A>>>15&28|A>>>8&3)>>0]|0;A=z;C=B+1|0;M=K+4|0;d=19;continue}else if((d|0)==19){D=c[M>>2]|0;a[C>>0]=a[y+(D>>>22&224|D>>>15&28|D>>>8&3)>>0]|0;D=C+1|0;J=A;O=M+4|0;d=20;continue}else if((d|0)==20){E=c[O>>2]|0;a[D>>0]=a[y+(E>>>22&224|E>>>15&28|E>>>8&3)>>0]|0;E=D+1|0;L=J;Q=O+4|0;d=21;continue}else if((d|0)==21){F=c[Q>>2]|0;a[E>>0]=a[y+(F>>>22&224|F>>>15&28|F>>>8&3)>>0]|0;F=E+1|0;N=L;S=Q+4|0;d=22;continue}else if((d|0)==22){G=c[S>>2]|0;a[F>>0]=a[y+(G>>>22&224|G>>>15&28|G>>>8&3)>>0]|0;G=F+1|0;P=N;U=S+4|0;d=23;continue}else if((d|0)==23){H=c[U>>2]|0;a[G>>0]=a[y+(H>>>22&224|H>>>15&28|H>>>8&3)>>0]|0;H=G+1|0;R=P;V=U+4|0;d=24;continue}else if((d|0)==24){I=c[V>>2]|0;a[H>>0]=a[y+(I>>>22&224|I>>>15&28|I>>>8&3)>>0]|0;I=H+1|0;T=R;W=V+4|0;d=25;continue}else if((d|0)==25){d=c[W>>2]|0;f=I+1|0;a[I>>0]=a[y+(d>>>22&224|d>>>15&28|d>>>8&3)>>0]|0;d=W+4|0;if((T|0)>1){z=T+-1|0;B=f;K=d;d=18;continue}else break}if(!b){d=28;break}else{e=d+(Y<<2)|0;d=f+X|0;b=b+-1|0}}if((d|0)!=26)if((d|0)==28)return}}function qH(e){e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0;f=c[e+24>>2]|0;h=c[e+28>>2]|0;B=c[e+16>>2]|0;C=c[e+36>>2]|0;g=c[e+44>>2]|0;y=a[g+9>>0]|0;z=y&255;if(!h)return;A=(f+7|0)/8|0;x=f&255;q=g+28|0;r=g+32|0;s=g+29|0;t=g+33|0;u=g+30|0;v=g+34|0;w=g+31|0;p=g+35|0;f=c[e>>2]|0;g=c[e+20>>2]|0;a:while(1){h=h+-1|0;switch(x&7){case 0:{o=A;e=4;break}case 7:{o=A;e=10;break}case 6:{o=A;e=16;break}case 5:{o=A;e=22;break}case 4:{o=A;e=28;break}case 3:{o=A;e=34;break}case 2:{o=A;e=40;break}case 1:{o=A;e=46;break}default:{e=52;break a}}while(1)if((e|0)==4){n=c[f>>2]|0;e=n>>>22;i=e&255;j=n>>>12;k=j&255;l=n>>>2;m=l&255;n=d[289378+(n>>>30)>>0]|0;switch(y<<24>>24){case 1:{a[g>>0]=k>>>(d[s>>0]|0)<<(d[t>>0]|0)|i>>>(d[q>>0]|0)<<(d[r>>0]|0)|m>>>(d[u>>0]|0)<<(d[v>>0]|0)|n>>>(d[w>>0]|0)<<(d[p>>0]|0);break}case 2:{b[g>>1]=k>>>(d[s>>0]|0)<<(d[t>>0]|0)|i>>>(d[q>>0]|0)<<(d[r>>0]|0)|m>>>(d[u>>0]|0)<<(d[v>>0]|0)|n>>>(d[w>>0]|0)<<(d[p>>0]|0);break}case 3:{a[g+((d[r>>0]|0)>>>3&255)>>0]=e;a[g+((d[t>>0]|0)>>>3&255)>>0]=j;a[g+((d[v>>0]|0)>>>3&255)>>0]=l;break}case 4:{c[g>>2]=k>>>(d[s>>0]|0)<<(d[t>>0]|0)|i>>>(d[q>>0]|0)<<(d[r>>0]|0)|m>>>(d[u>>0]|0)<<(d[v>>0]|0)|n>>>(d[w>>0]|0)<<(d[p>>0]|0);break}default:{}}f=f+4|0;g=g+z|0;e=10;continue}else if((e|0)==10){n=c[f>>2]|0;e=n>>>22;i=e&255;j=n>>>12;k=j&255;l=n>>>2;m=l&255;n=d[289378+(n>>>30)>>0]|0;switch(y<<24>>24){case 1:{a[g>>0]=k>>>(d[s>>0]|0)<<(d[t>>0]|0)|i>>>(d[q>>0]|0)<<(d[r>>0]|0)|m>>>(d[u>>0]|0)<<(d[v>>0]|0)|n>>>(d[w>>0]|0)<<(d[p>>0]|0);break}case 2:{b[g>>1]=k>>>(d[s>>0]|0)<<(d[t>>0]|0)|i>>>(d[q>>0]|0)<<(d[r>>0]|0)|m>>>(d[u>>0]|0)<<(d[v>>0]|0)|n>>>(d[w>>0]|0)<<(d[p>>0]|0);break}case 3:{a[g+((d[r>>0]|0)>>>3&255)>>0]=e;a[g+((d[t>>0]|0)>>>3&255)>>0]=j;a[g+((d[v>>0]|0)>>>3&255)>>0]=l;break}case 4:{c[g>>2]=k>>>(d[s>>0]|0)<<(d[t>>0]|0)|i>>>(d[q>>0]|0)<<(d[r>>0]|0)|m>>>(d[u>>0]|0)<<(d[v>>0]|0)|n>>>(d[w>>0]|0)<<(d[p>>0]|0);break}default:{}}f=f+4|0;g=g+z|0;e=16;continue}else if((e|0)==16){n=c[f>>2]|0;e=n>>>22;i=e&255;j=n>>>12;k=j&255;l=n>>>2;m=l&255;n=d[289378+(n>>>30)>>0]|0;switch(y<<24>>24){case 1:{a[g>>0]=k>>>(d[s>>0]|0)<<(d[t>>0]|0)|i>>>(d[q>>0]|0)<<(d[r>>0]|0)|m>>>(d[u>>0]|0)<<(d[v>>0]|0)|n>>>(d[w>>0]|0)<<(d[p>>0]|0);break}case 2:{b[g>>1]=k>>>(d[s>>0]|0)<<(d[t>>0]|0)|i>>>(d[q>>0]|0)<<(d[r>>0]|0)|m>>>(d[u>>0]|0)<<(d[v>>0]|0)|n>>>(d[w>>0]|0)<<(d[p>>0]|0);break}case 3:{a[g+((d[r>>0]|0)>>>3&255)>>0]=e;a[g+((d[t>>0]|0)>>>3&255)>>0]=j;a[g+((d[v>>0]|0)>>>3&255)>>0]=l;break}case 4:{c[g>>2]=k>>>(d[s>>0]|0)<<(d[t>>0]|0)|i>>>(d[q>>0]|0)<<(d[r>>0]|0)|m>>>(d[u>>0]|0)<<(d[v>>0]|0)|n>>>(d[w>>0]|0)<<(d[p>>0]|0);break}default:{}}f=f+4|0;g=g+z|0;e=22;continue}else if((e|0)==22){n=c[f>>2]|0;e=n>>>22;i=e&255;j=n>>>12;k=j&255;l=n>>>2;m=l&255;n=d[289378+(n>>>30)>>0]|0;switch(y<<24>>24){case 1:{a[g>>0]=k>>>(d[s>>0]|0)<<(d[t>>0]|0)|i>>>(d[q>>0]|0)<<(d[r>>0]|0)|m>>>(d[u>>0]|0)<<(d[v>>0]|0)|n>>>(d[w>>0]|0)<<(d[p>>0]|0);break}case 2:{b[g>>1]=k>>>(d[s>>0]|0)<<(d[t>>0]|0)|i>>>(d[q>>0]|0)<<(d[r>>0]|0)|m>>>(d[u>>0]|0)<<(d[v>>0]|0)|n>>>(d[w>>0]|0)<<(d[p>>0]|0);break}case 3:{a[g+((d[r>>0]|0)>>>3&255)>>0]=e;a[g+((d[t>>0]|0)>>>3&255)>>0]=j;a[g+((d[v>>0]|0)>>>3&255)>>0]=l;break}case 4:{c[g>>2]=k>>>(d[s>>0]|0)<<(d[t>>0]|0)|i>>>(d[q>>0]|0)<<(d[r>>0]|0)|m>>>(d[u>>0]|0)<<(d[v>>0]|0)|n>>>(d[w>>0]|0)<<(d[p>>0]|0);break}default:{}}f=f+4|0;g=g+z|0;e=28;continue}else if((e|0)==28){n=c[f>>2]|0;e=n>>>22;i=e&255;j=n>>>12;k=j&255;l=n>>>2;m=l&255;n=d[289378+(n>>>30)>>0]|0;switch(y<<24>>24){case 1:{a[g>>0]=k>>>(d[s>>0]|0)<<(d[t>>0]|0)|i>>>(d[q>>0]|0)<<(d[r>>0]|0)|m>>>(d[u>>0]|0)<<(d[v>>0]|0)|n>>>(d[w>>0]|0)<<(d[p>>0]|0);break}case 2:{b[g>>1]=k>>>(d[s>>0]|0)<<(d[t>>0]|0)|i>>>(d[q>>0]|0)<<(d[r>>0]|0)|m>>>(d[u>>0]|0)<<(d[v>>0]|0)|n>>>(d[w>>0]|0)<<(d[p>>0]|0);break}case 3:{a[g+((d[r>>0]|0)>>>3&255)>>0]=e;a[g+((d[t>>0]|0)>>>3&255)>>0]=j;a[g+((d[v>>0]|0)>>>3&255)>>0]=l;break}case 4:{c[g>>2]=k>>>(d[s>>0]|0)<<(d[t>>0]|0)|i>>>(d[q>>0]|0)<<(d[r>>0]|0)|m>>>(d[u>>0]|0)<<(d[v>>0]|0)|n>>>(d[w>>0]|0)<<(d[p>>0]|0);break}default:{}}f=f+4|0;g=g+z|0;e=34;continue}else if((e|0)==34){n=c[f>>2]|0;e=n>>>22;i=e&255;j=n>>>12;k=j&255;l=n>>>2;m=l&255;n=d[289378+(n>>>30)>>0]|0;switch(y<<24>>24){case 1:{a[g>>0]=k>>>(d[s>>0]|0)<<(d[t>>0]|0)|i>>>(d[q>>0]|0)<<(d[r>>0]|0)|m>>>(d[u>>0]|0)<<(d[v>>0]|0)|n>>>(d[w>>0]|0)<<(d[p>>0]|0);break}case 2:{b[g>>1]=k>>>(d[s>>0]|0)<<(d[t>>0]|0)|i>>>(d[q>>0]|0)<<(d[r>>0]|0)|m>>>(d[u>>0]|0)<<(d[v>>0]|0)|n>>>(d[w>>0]|0)<<(d[p>>0]|0);break}case 3:{a[g+((d[r>>0]|0)>>>3&255)>>0]=e;a[g+((d[t>>0]|0)>>>3&255)>>0]=j;a[g+((d[v>>0]|0)>>>3&255)>>0]=l;break}case 4:{c[g>>2]=k>>>(d[s>>0]|0)<<(d[t>>0]|0)|i>>>(d[q>>0]|0)<<(d[r>>0]|0)|m>>>(d[u>>0]|0)<<(d[v>>0]|0)|n>>>(d[w>>0]|0)<<(d[p>>0]|0);break}default:{}}f=f+4|0;g=g+z|0;e=40;continue}else if((e|0)==40){n=c[f>>2]|0;e=n>>>22;i=e&255;j=n>>>12;k=j&255;l=n>>>2;m=l&255;n=d[289378+(n>>>30)>>0]|0;switch(y<<24>>24){case 1:{a[g>>0]=k>>>(d[s>>0]|0)<<(d[t>>0]|0)|i>>>(d[q>>0]|0)<<(d[r>>0]|0)|m>>>(d[u>>0]|0)<<(d[v>>0]|0)|n>>>(d[w>>0]|0)<<(d[p>>0]|0);break}case 2:{b[g>>1]=k>>>(d[s>>0]|0)<<(d[t>>0]|0)|i>>>(d[q>>0]|0)<<(d[r>>0]|0)|m>>>(d[u>>0]|0)<<(d[v>>0]|0)|n>>>(d[w>>0]|0)<<(d[p>>0]|0);break}case 3:{a[g+((d[r>>0]|0)>>>3&255)>>0]=e;a[g+((d[t>>0]|0)>>>3&255)>>0]=j;a[g+((d[v>>0]|0)>>>3&255)>>0]=l;break}case 4:{c[g>>2]=k>>>(d[s>>0]|0)<<(d[t>>0]|0)|i>>>(d[q>>0]|0)<<(d[r>>0]|0)|m>>>(d[u>>0]|0)<<(d[v>>0]|0)|n>>>(d[w>>0]|0)<<(d[p>>0]|0);break}default:{}}f=f+4|0;g=g+z|0;e=46;continue}else if((e|0)==46){n=c[f>>2]|0;e=n>>>22;i=e&255;j=n>>>12;k=j&255;l=n>>>2;m=l&255;n=d[289378+(n>>>30)>>0]|0;switch(y<<24>>24){case 1:{a[g>>0]=k>>>(d[s>>0]|0)<<(d[t>>0]|0)|i>>>(d[q>>0]|0)<<(d[r>>0]|0)|m>>>(d[u>>0]|0)<<(d[v>>0]|0)|n>>>(d[w>>0]|0)<<(d[p>>0]|0);break}case 2:{b[g>>1]=k>>>(d[s>>0]|0)<<(d[t>>0]|0)|i>>>(d[q>>0]|0)<<(d[r>>0]|0)|m>>>(d[u>>0]|0)<<(d[v>>0]|0)|n>>>(d[w>>0]|0)<<(d[p>>0]|0);break}case 3:{a[g+((d[r>>0]|0)>>>3&255)>>0]=e;a[g+((d[t>>0]|0)>>>3&255)>>0]=j;a[g+((d[v>>0]|0)>>>3&255)>>0]=l;break}case 4:{c[g>>2]=k>>>(d[s>>0]|0)<<(d[t>>0]|0)|i>>>(d[q>>0]|0)<<(d[r>>0]|0)|m>>>(d[u>>0]|0)<<(d[v>>0]|0)|n>>>(d[w>>0]|0)<<(d[p>>0]|0);break}default:{}}g=g+z|0;f=f+4|0;if((o|0)>1){o=o+-1|0;e=4;continue}else break}if(!h){e=54;break}else{f=f+B|0;g=g+C|0}}if((e|0)!=52)if((e|0)==54)return}function rH(b){b=b|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;f=c[b+24>>2]|0;h=c[b+28>>2]|0;F=c[b+16>>2]|0;G=c[b+36>>2]|0;g=c[b+40>>2]|0;C=a[g+9>>0]|0;D=C&255;if(!h)return;E=(f+7|0)/8|0;B=f&255;q=g+28|0;r=g+12|0;s=g+32|0;t=g+29|0;u=g+16|0;v=g+33|0;w=g+30|0;x=g+20|0;y=g+34|0;z=g+31|0;A=g+24|0;p=g+35|0;f=c[b>>2]|0;g=c[b+20>>2]|0;a:while(1){h=h+-1|0;switch(B&7){case 0:{n=E;o=4;break}case 7:{n=E;o=11;break}case 6:{n=E;o=18;break}case 5:{n=E;o=25;break}case 4:{n=E;o=32;break}case 3:{n=E;o=39;break}case 2:{n=E;o=46;break}case 1:{n=E;o=53;break}default:{o=60;break a}}while(1)if((o|0)==4){o=0;switch(C<<24>>24){case 1:{k=d[f>>0]|0;b=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[p>>0]|0))>>0]|0;i=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&k)>>>(d[y>>0]|0))|0;j=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&k)>>>(d[v>>0]|0))|0;k=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&k)>>>(d[s>>0]|0))|0;o=9;break}case 2:{k=e[f>>1]|0;b=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[p>>0]|0))>>0]|0;i=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&k)>>>(d[y>>0]|0))|0;j=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&k)>>>(d[v>>0]|0))|0;k=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&k)>>>(d[s>>0]|0))|0;o=9;break}case 3:{b=-1;i=f+((d[y>>0]|0)>>>3&255)|0;j=f+((d[v>>0]|0)>>>3&255)|0;k=f+((d[s>>0]|0)>>>3&255)|0;o=9;break}case 4:{k=c[f>>2]|0;b=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[p>>0]|0))>>0]|0;i=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&k)>>>(d[y>>0]|0))|0;j=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&k)>>>(d[v>>0]|0))|0;k=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&k)>>>(d[s>>0]|0))|0;o=9;break}default:{b=0;i=0;j=0;k=0;l=0;m=0}}if((o|0)==9){o=a[i>>0]|0;l=a[j>>0]|0;m=a[k>>0]|0;i=o;j=o&255;k=l;l=l&255;m=m<<24>>24==0?0:(m&255)<<22|3145728}c[g>>2]=(((b&255)/85|0)&255)<<30|m|(i<<24>>24==0?0:j<<2|3)|(k<<24>>24==0?0:l<<12|3072);f=f+D|0;g=g+4|0;o=11;continue}else if((o|0)==11){o=0;switch(C<<24>>24){case 1:{k=d[f>>0]|0;b=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[p>>0]|0))>>0]|0;i=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&k)>>>(d[y>>0]|0))|0;j=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&k)>>>(d[v>>0]|0))|0;k=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&k)>>>(d[s>>0]|0))|0;o=16;break}case 2:{k=e[f>>1]|0;b=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[p>>0]|0))>>0]|0;i=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&k)>>>(d[y>>0]|0))|0;j=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&k)>>>(d[v>>0]|0))|0;k=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&k)>>>(d[s>>0]|0))|0;o=16;break}case 3:{b=-1;i=f+((d[y>>0]|0)>>>3&255)|0;j=f+((d[v>>0]|0)>>>3&255)|0;k=f+((d[s>>0]|0)>>>3&255)|0;o=16;break}case 4:{k=c[f>>2]|0;b=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[p>>0]|0))>>0]|0;i=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&k)>>>(d[y>>0]|0))|0;j=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&k)>>>(d[v>>0]|0))|0;k=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&k)>>>(d[s>>0]|0))|0;o=16;break}default:{b=0;i=0;j=0;k=0;l=0;m=0}}if((o|0)==16){o=a[i>>0]|0;l=a[j>>0]|0;m=a[k>>0]|0;i=o;j=o&255;k=l;l=l&255;m=m<<24>>24==0?0:(m&255)<<22|3145728}c[g>>2]=(((b&255)/85|0)&255)<<30|m|(i<<24>>24==0?0:j<<2|3)|(k<<24>>24==0?0:l<<12|3072);f=f+D|0;g=g+4|0;o=18;continue}else if((o|0)==18){o=0;switch(C<<24>>24){case 1:{k=d[f>>0]|0;b=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[p>>0]|0))>>0]|0;i=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&k)>>>(d[y>>0]|0))|0;j=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&k)>>>(d[v>>0]|0))|0;k=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&k)>>>(d[s>>0]|0))|0;o=23;break}case 2:{k=e[f>>1]|0;b=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[p>>0]|0))>>0]|0;i=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&k)>>>(d[y>>0]|0))|0;j=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&k)>>>(d[v>>0]|0))|0;k=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&k)>>>(d[s>>0]|0))|0;o=23;break}case 3:{b=-1;i=f+((d[y>>0]|0)>>>3&255)|0;j=f+((d[v>>0]|0)>>>3&255)|0;k=f+((d[s>>0]|0)>>>3&255)|0;o=23;break}case 4:{k=c[f>>2]|0;b=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[p>>0]|0))>>0]|0;i=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&k)>>>(d[y>>0]|0))|0;j=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&k)>>>(d[v>>0]|0))|0;k=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&k)>>>(d[s>>0]|0))|0;o=23;break}default:{b=0;i=0;j=0;k=0;l=0;m=0}}if((o|0)==23){o=a[i>>0]|0;l=a[j>>0]|0;m=a[k>>0]|0;i=o;j=o&255;k=l;l=l&255;m=m<<24>>24==0?0:(m&255)<<22|3145728}c[g>>2]=(((b&255)/85|0)&255)<<30|m|(i<<24>>24==0?0:j<<2|3)|(k<<24>>24==0?0:l<<12|3072);f=f+D|0;g=g+4|0;o=25;continue}else if((o|0)==25){o=0;switch(C<<24>>24){case 1:{k=d[f>>0]|0;b=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[p>>0]|0))>>0]|0;i=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&k)>>>(d[y>>0]|0))|0;j=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&k)>>>(d[v>>0]|0))|0;k=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&k)>>>(d[s>>0]|0))|0;o=30;break}case 2:{k=e[f>>1]|0;b=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[p>>0]|0))>>0]|0;i=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&k)>>>(d[y>>0]|0))|0;j=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&k)>>>(d[v>>0]|0))|0;k=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&k)>>>(d[s>>0]|0))|0;o=30;break}case 3:{b=-1;i=f+((d[y>>0]|0)>>>3&255)|0;j=f+((d[v>>0]|0)>>>3&255)|0;k=f+((d[s>>0]|0)>>>3&255)|0;o=30;break}case 4:{k=c[f>>2]|0;b=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[p>>0]|0))>>0]|0;i=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&k)>>>(d[y>>0]|0))|0;j=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&k)>>>(d[v>>0]|0))|0;k=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&k)>>>(d[s>>0]|0))|0;o=30;break}default:{b=0;i=0;j=0;k=0;l=0;m=0}}if((o|0)==30){o=a[i>>0]|0;l=a[j>>0]|0;m=a[k>>0]|0;i=o;j=o&255;k=l;l=l&255;m=m<<24>>24==0?0:(m&255)<<22|3145728}c[g>>2]=(((b&255)/85|0)&255)<<30|m|(i<<24>>24==0?0:j<<2|3)|(k<<24>>24==0?0:l<<12|3072);f=f+D|0;g=g+4|0;o=32;continue}else if((o|0)==32){o=0;switch(C<<24>>24){case 1:{k=d[f>>0]|0;b=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[p>>0]|0))>>0]|0;i=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&k)>>>(d[y>>0]|0))|0;j=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&k)>>>(d[v>>0]|0))|0;k=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&k)>>>(d[s>>0]|0))|0;o=37;break}case 2:{k=e[f>>1]|0;b=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[p>>0]|0))>>0]|0;i=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&k)>>>(d[y>>0]|0))|0;j=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&k)>>>(d[v>>0]|0))|0;k=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&k)>>>(d[s>>0]|0))|0;o=37;break}case 3:{b=-1;i=f+((d[y>>0]|0)>>>3&255)|0;j=f+((d[v>>0]|0)>>>3&255)|0;k=f+((d[s>>0]|0)>>>3&255)|0;o=37;break}case 4:{k=c[f>>2]|0;b=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[p>>0]|0))>>0]|0;i=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&k)>>>(d[y>>0]|0))|0;j=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&k)>>>(d[v>>0]|0))|0;k=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&k)>>>(d[s>>0]|0))|0;o=37;break}default:{b=0;i=0;j=0;k=0;l=0;m=0}}if((o|0)==37){o=a[i>>0]|0;l=a[j>>0]|0;m=a[k>>0]|0;i=o;j=o&255;k=l;l=l&255;m=m<<24>>24==0?0:(m&255)<<22|3145728}c[g>>2]=(((b&255)/85|0)&255)<<30|m|(i<<24>>24==0?0:j<<2|3)|(k<<24>>24==0?0:l<<12|3072);f=f+D|0;g=g+4|0;o=39;continue}else if((o|0)==39){o=0;switch(C<<24>>24){case 1:{k=d[f>>0]|0;b=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[p>>0]|0))>>0]|0;i=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&k)>>>(d[y>>0]|0))|0;j=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&k)>>>(d[v>>0]|0))|0;k=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&k)>>>(d[s>>0]|0))|0;o=44;break}case 2:{k=e[f>>1]|0;b=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[p>>0]|0))>>0]|0;i=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&k)>>>(d[y>>0]|0))|0;j=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&k)>>>(d[v>>0]|0))|0;k=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&k)>>>(d[s>>0]|0))|0;o=44;break}case 3:{b=-1;i=f+((d[y>>0]|0)>>>3&255)|0;j=f+((d[v>>0]|0)>>>3&255)|0;k=f+((d[s>>0]|0)>>>3&255)|0;o=44;break}case 4:{k=c[f>>2]|0;b=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[p>>0]|0))>>0]|0;i=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&k)>>>(d[y>>0]|0))|0;j=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&k)>>>(d[v>>0]|0))|0;k=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&k)>>>(d[s>>0]|0))|0;o=44;break}default:{b=0;i=0;j=0;k=0;l=0;m=0}}if((o|0)==44){o=a[i>>0]|0;l=a[j>>0]|0;m=a[k>>0]|0;i=o;j=o&255;k=l;l=l&255;m=m<<24>>24==0?0:(m&255)<<22|3145728}c[g>>2]=(((b&255)/85|0)&255)<<30|m|(i<<24>>24==0?0:j<<2|3)|(k<<24>>24==0?0:l<<12|3072);f=f+D|0;g=g+4|0;o=46;continue}else if((o|0)==46){o=0;switch(C<<24>>24){case 1:{k=d[f>>0]|0;b=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[p>>0]|0))>>0]|0;i=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&k)>>>(d[y>>0]|0))|0;j=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&k)>>>(d[v>>0]|0))|0;k=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&k)>>>(d[s>>0]|0))|0;o=51;break}case 2:{k=e[f>>1]|0;b=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[p>>0]|0))>>0]|0;i=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&k)>>>(d[y>>0]|0))|0;j=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&k)>>>(d[v>>0]|0))|0;k=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&k)>>>(d[s>>0]|0))|0;o=51;break}case 3:{b=-1;i=f+((d[y>>0]|0)>>>3&255)|0;j=f+((d[v>>0]|0)>>>3&255)|0;k=f+((d[s>>0]|0)>>>3&255)|0;o=51;break}case 4:{k=c[f>>2]|0;b=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[p>>0]|0))>>0]|0;i=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&k)>>>(d[y>>0]|0))|0;j=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&k)>>>(d[v>>0]|0))|0;k=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&k)>>>(d[s>>0]|0))|0;o=51;break}default:{b=0;i=0;j=0;k=0;l=0;m=0}}if((o|0)==51){o=a[i>>0]|0;l=a[j>>0]|0;m=a[k>>0]|0;i=o;j=o&255;k=l;l=l&255;m=m<<24>>24==0?0:(m&255)<<22|3145728}c[g>>2]=(((b&255)/85|0)&255)<<30|m|(i<<24>>24==0?0:j<<2|3)|(k<<24>>24==0?0:l<<12|3072);f=f+D|0;g=g+4|0;o=53;continue}else if((o|0)==53){o=0;switch(C<<24>>24){case 1:{k=d[f>>0]|0;b=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[p>>0]|0))>>0]|0;i=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&k)>>>(d[y>>0]|0))|0;j=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&k)>>>(d[v>>0]|0))|0;k=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&k)>>>(d[s>>0]|0))|0;o=58;break}case 2:{k=e[f>>1]|0;b=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[p>>0]|0))>>0]|0;i=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&k)>>>(d[y>>0]|0))|0;j=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&k)>>>(d[v>>0]|0))|0;k=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&k)>>>(d[s>>0]|0))|0;o=58;break}case 3:{b=-1;i=f+((d[y>>0]|0)>>>3&255)|0;j=f+((d[v>>0]|0)>>>3&255)|0;k=f+((d[s>>0]|0)>>>3&255)|0;o=58;break}case 4:{k=c[f>>2]|0;b=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[p>>0]|0))>>0]|0;i=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&k)>>>(d[y>>0]|0))|0;j=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&k)>>>(d[v>>0]|0))|0;k=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&k)>>>(d[s>>0]|0))|0;o=58;break}default:{b=0;i=0;j=0;k=0;l=0;m=0}}if((o|0)==58){o=a[i>>0]|0;l=a[j>>0]|0;m=a[k>>0]|0;i=o;j=o&255;k=l;l=l&255;m=m<<24>>24==0?0:(m&255)<<22|3145728}c[g>>2]=(((b&255)/85|0)&255)<<30|m|(i<<24>>24==0?0:j<<2|3)|(k<<24>>24==0?0:l<<12|3072);g=g+4|0;f=f+D|0;if((n|0)>1){n=n+-1|0;o=4;continue}else break}if(!h){o=62;break}else{f=f+F|0;g=g+G|0}}if((o|0)!=60)if((o|0)==62)return}function sH(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;k=c[a+24>>2]|0;h=c[a+28>>2]|0;e=c[a>>2]|0;W=c[a+16>>2]|0;b=c[a+20>>2]|0;V=c[a+36>>2]|0;f=c[a+40>>2]|0;g=c[a+44>>2]|0;if(!(c[g+24>>2]|0)){j=c[f+16>>2]|c[f+12>>2]|c[f+20>>2];f=h+-1|0;if(!h)return;i=(k+7|0)/8|0;a=k&255;switch(a&7){case 0:{while(1){a=i;while(1){c[b>>2]=c[e>>2]&j;c[b+4>>2]=c[e+4>>2]&j;c[b+8>>2]=c[e+8>>2]&j;c[b+12>>2]=c[e+12>>2]&j;c[b+16>>2]=c[e+16>>2]&j;c[b+20>>2]=c[e+20>>2]&j;c[b+24>>2]=c[e+24>>2]&j;c[b+28>>2]=c[e+28>>2]&j;b=b+32|0;e=e+32|0;if((a|0)<=1)break;else a=a+-1|0}if(!f)break;else{b=b+V|0;e=e+W|0;f=f+-1|0}}return}case 7:{while(1){h=i;while(1){c[b>>2]=c[e>>2]&j;c[b+4>>2]=c[e+4>>2]&j;c[b+8>>2]=c[e+8>>2]&j;c[b+12>>2]=c[e+12>>2]&j;c[b+16>>2]=c[e+16>>2]&j;c[b+20>>2]=c[e+20>>2]&j;c[b+24>>2]=c[e+24>>2]&j;a=b+28|0;g=e+28|0;if((h|0)<=1)break;c[a>>2]=c[g>>2]&j;h=h+-1|0;e=e+32|0;b=b+32|0}if(!f)break;else{b=a+V|0;e=g+W|0;f=f+-1|0}}return}default:{a:while(1){switch(a&7){case 1:{v=e;w=b;P=i;b=37;break}case 2:{t=e;u=b;L=i;b=36;break}case 6:{l=e;m=b;x=i;b=32;break}case 5:{n=e;o=b;z=i;b=33;break}case 4:{p=e;q=b;D=i;b=34;break}case 3:{r=e;s=b;H=i;b=35;break}default:{b=38;break a}}while(1)if((b|0)==32){c[m>>2]=c[l>>2]&j;n=l+4|0;o=m+4|0;z=x;b=33;continue}else if((b|0)==33){c[o>>2]=c[n>>2]&j;p=n+4|0;q=o+4|0;D=z;b=34;continue}else if((b|0)==34){c[q>>2]=c[p>>2]&j;r=p+4|0;s=q+4|0;H=D;b=35;continue}else if((b|0)==35){c[s>>2]=c[r>>2]&j;t=r+4|0;u=s+4|0;L=H;b=36;continue}else if((b|0)==36){c[u>>2]=c[t>>2]&j;v=t+4|0;w=u+4|0;P=L;b=37;continue}else if((b|0)==37){c[w>>2]=c[v>>2]&j;b=w+4|0;e=v+4|0;if((P|0)<=1)break;c[b>>2]=c[e>>2]&j;c[w+8>>2]=c[v+8>>2]&j;l=v+12|0;m=w+12|0;x=P+-1|0;b=32;continue}if(!f){b=40;break}else{b=b+V|0;e=e+W|0;f=f+-1|0}}if((b|0)!=38)if((b|0)==40)return}}}else{j=(d[a+63>>0]|0)>>>(d[g+31>>0]|0)<<(d[g+35>>0]|0);f=h+-1|0;if(!h)return;i=(k+7|0)/8|0;g=k&255;switch(g&7){case 0:{while(1){a=i;while(1){c[b>>2]=c[e>>2]|j;c[b+4>>2]=c[e+4>>2]|j;c[b+8>>2]=c[e+8>>2]|j;c[b+12>>2]=c[e+12>>2]|j;c[b+16>>2]=c[e+16>>2]|j;c[b+20>>2]=c[e+20>>2]|j;c[b+24>>2]=c[e+24>>2]|j;c[b+28>>2]=c[e+28>>2]|j;b=b+32|0;e=e+32|0;if((a|0)<=1)break;else a=a+-1|0}if(!f)break;else{e=e+W|0;b=b+V|0;f=f+-1|0}}return}case 7:{while(1){h=i;while(1){c[b>>2]=c[e>>2]|j;c[b+4>>2]=c[e+4>>2]|j;c[b+8>>2]=c[e+8>>2]|j;c[b+12>>2]=c[e+12>>2]|j;c[b+16>>2]=c[e+16>>2]|j;c[b+20>>2]=c[e+20>>2]|j;c[b+24>>2]=c[e+24>>2]|j;g=b+28|0;a=e+28|0;if((h|0)<=1)break;c[g>>2]=c[a>>2]|j;h=h+-1|0;e=e+32|0;b=b+32|0}if(!f)break;else{e=a+W|0;b=g+V|0;f=f+-1|0}}return}default:{b:while(1){switch(g&7){case 1:{Q=i;T=e;U=b;b=18;break}case 2:{M=i;R=e;S=b;b=17;break}case 6:{y=i;B=e;C=b;b=13;break}case 5:{A=i;F=e;G=b;b=14;break}case 4:{E=i;J=e;K=b;b=15;break}case 3:{I=i;N=e;O=b;b=16;break}default:{b=19;break b}}while(1)if((b|0)==13){c[C>>2]=c[B>>2]|j;A=y;F=B+4|0;G=C+4|0;b=14;continue}else if((b|0)==14){c[G>>2]=c[F>>2]|j;E=A;J=F+4|0;K=G+4|0;b=15;continue}else if((b|0)==15){c[K>>2]=c[J>>2]|j;I=E;N=J+4|0;O=K+4|0;b=16;continue}else if((b|0)==16){c[O>>2]=c[N>>2]|j;M=I;R=N+4|0;S=O+4|0;b=17;continue}else if((b|0)==17){c[S>>2]=c[R>>2]|j;Q=M;T=R+4|0;U=S+4|0;b=18;continue}else if((b|0)==18){c[U>>2]=c[T>>2]|j;a=U+4|0;b=T+4|0;if((Q|0)<=1)break;c[a>>2]=c[b>>2]|j;c[U+8>>2]=c[T+8>>2]|j;y=Q+-1|0;B=T+12|0;C=U+12|0;b=13;continue}if(!f){b=40;break}else{e=b+W|0;b=a+V|0;f=f+-1|0}}if((b|0)!=19)if((b|0)==40)return}}}}function tH(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;d=c[a+24>>2]|0;k=c[a+28>>2]|0;e=c[a>>2]|0;f=c[a+20>>2]|0;l=~c[(c[a+40>>2]|0)+24>>2];m=(c[a+16>>2]|0)/2|0;n=(c[a+36>>2]|0)/2|0;j=c[a+56>>2]&l;g=k+-1|0;if(!k)return;k=(d+7|0)/8|0;i=d&255;if(!(i&7)){a=f;while(1){f=k;d=a;while(1){a=b[e>>1]|0;if((a&65535&l|0)!=(j|0))b[d>>1]=a;a=b[e+2>>1]|0;if((a&65535&l|0)!=(j|0))b[d+2>>1]=a;a=b[e+4>>1]|0;if((a&65535&l|0)!=(j|0))b[d+4>>1]=a;a=b[e+6>>1]|0;if((a&65535&l|0)!=(j|0))b[d+6>>1]=a;a=b[e+8>>1]|0;if((a&65535&l|0)!=(j|0))b[d+8>>1]=a;a=b[e+10>>1]|0;if((a&65535&l|0)!=(j|0))b[d+10>>1]=a;a=b[e+12>>1]|0;if((a&65535&l|0)!=(j|0))b[d+12>>1]=a;a=b[e+14>>1]|0;if((a&65535&l|0)!=(j|0))b[d+14>>1]=a;d=d+16|0;e=e+16|0;if((f|0)<=1)break;else f=f+-1|0}if(!g)break;else{e=e+(m<<1)|0;a=d+(n<<1)|0;g=g+-1|0}}return}else d=f;a:while(1){switch(i&7){case 1:{h=k;a=44;break}case 7:{f=k;a=26;break}case 6:{f=k;a=29;break}case 5:{f=k;a=32;break}case 4:{f=k;a=35;break}case 3:{f=k;a=38;break}case 2:{f=k;a=41;break}default:{a=47;break a}}while(1)if((a|0)==26){a=b[e>>1]|0;if((a&65535&l|0)!=(j|0))b[d>>1]=a;e=e+2|0;d=d+2|0;a=29;continue}else if((a|0)==29){a=b[e>>1]|0;if((a&65535&l|0)!=(j|0))b[d>>1]=a;e=e+2|0;d=d+2|0;a=32;continue}else if((a|0)==32){a=b[e>>1]|0;if((a&65535&l|0)!=(j|0))b[d>>1]=a;e=e+2|0;d=d+2|0;a=35;continue}else if((a|0)==35){a=b[e>>1]|0;if((a&65535&l|0)!=(j|0))b[d>>1]=a;e=e+2|0;d=d+2|0;a=38;continue}else if((a|0)==38){a=b[e>>1]|0;if((a&65535&l|0)!=(j|0))b[d>>1]=a;d=d+2|0;e=e+2|0;a=41;continue}else if((a|0)==41){a=b[e>>1]|0;if((a&65535&l|0)!=(j|0))b[d>>1]=a;h=f;d=d+2|0;e=e+2|0;a=44;continue}else if((a|0)==44){a=b[e>>1]|0;if((a&65535&l|0)!=(j|0))b[d>>1]=a;f=d+2|0;a=e+2|0;if((h|0)<=1)break;a=b[a>>1]|0;if((a&65535&l|0)!=(j|0))b[f>>1]=a;f=h+-1|0;e=e+4|0;d=d+4|0;a=26;continue}if(!g){a=49;break}else{e=a+(m<<1)|0;d=f+(n<<1)|0;g=g+-1|0}}if((a|0)!=47)if((a|0)==49)return}function uH(b){b=b|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0,Ra=0,Sa=0,Ta=0,Ua=0,Va=0,Wa=0,Xa=0,Ya=0,Za=0,_a=0,$a=0,ab=0,bb=0,cb=0,db=0,eb=0,fb=0,gb=0,hb=0,ib=0,jb=0,kb=0,lb=0,mb=0,nb=0,ob=0,pb=0,qb=0,rb=0,sb=0,tb=0,ub=0,vb=0,wb=0,xb=0,yb=0,zb=0,Ab=0,Bb=0,Cb=0,Db=0,Eb=0,Fb=0,Gb=0,Hb=0,Ib=0,Jb=0,Kb=0,Lb=0,Mb=0,Nb=0,Ob=0,Pb=0,Qb=0,Rb=0,Sb=0,Tb=0,Ub=0,Vb=0,Wb=0,Xb=0,Yb=0,Zb=0,_b=0,$b=0,ac=0,bc=0,cc=0,dc=0,ec=0,fc=0,gc=0,hc=0,ic=0,jc=0,kc=0,lc=0,mc=0,nc=0,oc=0,pc=0,qc=0,rc=0,sc=0,tc=0,uc=0,vc=0,wc=0,xc=0,yc=0,zc=0,Ac=0,Bc=0,Cc=0,Dc=0,Ec=0,Fc=0,Gc=0,Hc=0,Ic=0,Jc=0,Kc=0,Lc=0,Mc=0,Nc=0,Oc=0;i=c[b+24>>2]|0;s=c[b+28>>2]|0;g=c[b>>2]|0;Oc=c[b+16>>2]|0;f=c[b+20>>2]|0;Kc=c[b+36>>2]|0;Ic=c[b+40>>2]|0;Hc=c[b+48>>2]|0;Lc=~c[Ic+24>>2];Mc=a[Ic+9>>0]|0;Nc=Mc&255;Jc=c[b+56>>2]&Lc;h=s+-1|0;b=(s|0)==0;if(!Hc){if(b)return;s=(i+7|0)/8|0;r=i&255;j=Ic+28|0;k=Ic+12|0;l=Ic+32|0;m=Ic+29|0;n=Ic+16|0;o=Ic+33|0;p=Ic+30|0;q=Ic+20|0;i=Ic+34|0;a:while(1){switch(r&7){case 0:{w=s;P=g;Q=f;f=7;break}case 7:{La=s;Wa=g;Xa=f;f=16;break}case 6:{Ya=s;fb=g;gb=f;f=25;break}case 5:{hb=s;qb=g;rb=f;f=34;break}case 4:{sb=s;Bb=g;Cb=f;f=43;break}case 3:{Db=s;Mb=g;Nb=f;f=52;break}case 2:{Ob=s;Xb=g;Yb=f;f=61;break}case 1:{Zb=s;gc=g;hc=f;f=70;break}default:{f=79;break a}}while(1)if((f|0)==7){f=0;switch(Mc<<24>>24){case 1:{rc=d[P>>0]|0;v=rc;z=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&rc)>>>(d[o>>0]|0))|0;B=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&rc)>>>(d[l>>0]|0))|0;rc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&rc)>>>(d[i>>0]|0))|0;f=12;break}case 2:{rc=e[P>>1]|0;v=rc;z=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&rc)>>>(d[o>>0]|0))|0;B=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&rc)>>>(d[l>>0]|0))|0;rc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&rc)>>>(d[i>>0]|0))|0;f=12;break}case 3:{v=0;z=P+((d[o>>0]|0)>>>3&255)|0;B=P+((d[l>>0]|0)>>>3&255)|0;rc=P+((d[i>>0]|0)>>>3&255)|0;f=12;break}case 4:{rc=c[P>>2]|0;v=rc;z=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&rc)>>>(d[o>>0]|0))|0;B=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&rc)>>>(d[l>>0]|0))|0;rc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&rc)>>>(d[i>>0]|0))|0;f=12;break}default:{u=0;x=0;y=0;A=0}}if((f|0)==12){u=v;x=a[rc>>0]|0;y=a[z>>0]|0;A=a[B>>0]|0}if((u&Lc|0)!=(Jc|0))a[Q>>0]=(y&255)>>>5<<2|A&-32&255|(x&255)>>>6;La=w;Wa=P+Nc|0;Xa=Q+1|0;f=16;continue}else if((f|0)==16){f=0;switch(Mc<<24>>24){case 1:{sc=d[Wa>>0]|0;O=sc;Oa=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&sc)>>>(d[o>>0]|0))|0;Qa=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&sc)>>>(d[l>>0]|0))|0;sc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&sc)>>>(d[i>>0]|0))|0;f=21;break}case 2:{sc=e[Wa>>1]|0;O=sc;Oa=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&sc)>>>(d[o>>0]|0))|0;Qa=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&sc)>>>(d[l>>0]|0))|0;sc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&sc)>>>(d[i>>0]|0))|0;f=21;break}case 3:{O=0;Oa=Wa+((d[o>>0]|0)>>>3&255)|0;Qa=Wa+((d[l>>0]|0)>>>3&255)|0;sc=Wa+((d[i>>0]|0)>>>3&255)|0;f=21;break}case 4:{sc=c[Wa>>2]|0;O=sc;Oa=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&sc)>>>(d[o>>0]|0))|0;Qa=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&sc)>>>(d[l>>0]|0))|0;sc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&sc)>>>(d[i>>0]|0))|0;f=21;break}default:{N=0;Ma=0;Na=0;Pa=0}}if((f|0)==21){N=O;Ma=a[sc>>0]|0;Na=a[Oa>>0]|0;Pa=a[Qa>>0]|0}if((N&Lc|0)!=(Jc|0))a[Xa>>0]=(Na&255)>>>5<<2|Pa&-32&255|(Ma&255)>>>6;Ya=La;fb=Wa+Nc|0;gb=Xa+1|0;f=25;continue}else if((f|0)==25){f=0;switch(Mc<<24>>24){case 1:{tc=d[fb>>0]|0;Ta=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&tc)>>>(d[l>>0]|0))|0;Va=tc;$a=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&tc)>>>(d[o>>0]|0))|0;tc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&tc)>>>(d[i>>0]|0))|0;f=30;break}case 2:{tc=e[fb>>1]|0;Ta=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&tc)>>>(d[l>>0]|0))|0;Va=tc;$a=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&tc)>>>(d[o>>0]|0))|0;tc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&tc)>>>(d[i>>0]|0))|0;f=30;break}case 3:{Ta=fb+((d[l>>0]|0)>>>3&255)|0;Va=0;$a=fb+((d[o>>0]|0)>>>3&255)|0;tc=fb+((d[i>>0]|0)>>>3&255)|0;f=30;break}case 4:{tc=c[fb>>2]|0;Ta=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&tc)>>>(d[l>>0]|0))|0;Va=tc;$a=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&tc)>>>(d[o>>0]|0))|0;tc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&tc)>>>(d[i>>0]|0))|0;f=30;break}default:{Sa=0;Ua=0;Za=0;_a=0}}if((f|0)==30){Sa=a[Ta>>0]|0;Ua=Va;Za=a[tc>>0]|0;_a=a[$a>>0]|0}if((Ua&Lc|0)!=(Jc|0))a[gb>>0]=(_a&255)>>>5<<2|Sa&-32&255|(Za&255)>>>6;hb=Ya;qb=fb+Nc|0;rb=gb+1|0;f=34;continue}else if((f|0)==34){f=0;switch(Mc<<24>>24){case 1:{uc=d[qb>>0]|0;cb=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&uc)>>>(d[l>>0]|0))|0;eb=uc;kb=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&uc)>>>(d[o>>0]|0))|0;uc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&uc)>>>(d[i>>0]|0))|0;f=39;break}case 2:{uc=e[qb>>1]|0;cb=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&uc)>>>(d[l>>0]|0))|0;eb=uc;kb=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&uc)>>>(d[o>>0]|0))|0;uc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&uc)>>>(d[i>>0]|0))|0;f=39;break}case 3:{cb=qb+((d[l>>0]|0)>>>3&255)|0;eb=0;kb=qb+((d[o>>0]|0)>>>3&255)|0;uc=qb+((d[i>>0]|0)>>>3&255)|0;f=39;break}case 4:{uc=c[qb>>2]|0;cb=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&uc)>>>(d[l>>0]|0))|0;eb=uc;kb=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&uc)>>>(d[o>>0]|0))|0;uc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&uc)>>>(d[i>>0]|0))|0;f=39;break}default:{bb=0;db=0;ib=0;jb=0}}if((f|0)==39){bb=a[cb>>0]|0;db=eb;ib=a[uc>>0]|0;jb=a[kb>>0]|0}if((db&Lc|0)!=(Jc|0))a[rb>>0]=(jb&255)>>>5<<2|bb&-32&255|(ib&255)>>>6;sb=hb;Bb=qb+Nc|0;Cb=rb+1|0;f=43;continue}else if((f|0)==43){f=0;switch(Mc<<24>>24){case 1:{vc=d[Bb>>0]|0;nb=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&vc)>>>(d[l>>0]|0))|0;pb=vc;vb=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&vc)>>>(d[o>>0]|0))|0;vc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&vc)>>>(d[i>>0]|0))|0;f=48;break}case 2:{vc=e[Bb>>1]|0;nb=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&vc)>>>(d[l>>0]|0))|0;pb=vc;vb=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&vc)>>>(d[o>>0]|0))|0;vc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&vc)>>>(d[i>>0]|0))|0;f=48;break}case 3:{nb=Bb+((d[l>>0]|0)>>>3&255)|0;pb=0;vb=Bb+((d[o>>0]|0)>>>3&255)|0;vc=Bb+((d[i>>0]|0)>>>3&255)|0;f=48;break}case 4:{vc=c[Bb>>2]|0;nb=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&vc)>>>(d[l>>0]|0))|0;pb=vc;vb=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&vc)>>>(d[o>>0]|0))|0;vc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&vc)>>>(d[i>>0]|0))|0;f=48;break}default:{mb=0;ob=0;tb=0;ub=0}}if((f|0)==48){mb=a[nb>>0]|0;ob=pb;tb=a[vc>>0]|0;ub=a[vb>>0]|0}if((ob&Lc|0)!=(Jc|0))a[Cb>>0]=(ub&255)>>>5<<2|mb&-32&255|(tb&255)>>>6;Db=sb;Mb=Bb+Nc|0;Nb=Cb+1|0;f=52;continue}else if((f|0)==52){f=0;switch(Mc<<24>>24){case 1:{wc=d[Mb>>0]|0;yb=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&wc)>>>(d[l>>0]|0))|0;Ab=wc;Gb=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&wc)>>>(d[o>>0]|0))|0;wc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&wc)>>>(d[i>>0]|0))|0;f=57;break}case 2:{wc=e[Mb>>1]|0;yb=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&wc)>>>(d[l>>0]|0))|0;Ab=wc;Gb=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&wc)>>>(d[o>>0]|0))|0;wc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&wc)>>>(d[i>>0]|0))|0;f=57;break}case 3:{yb=Mb+((d[l>>0]|0)>>>3&255)|0;Ab=0;Gb=Mb+((d[o>>0]|0)>>>3&255)|0;wc=Mb+((d[i>>0]|0)>>>3&255)|0;f=57;break}case 4:{wc=c[Mb>>2]|0;yb=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&wc)>>>(d[l>>0]|0))|0;Ab=wc;Gb=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&wc)>>>(d[o>>0]|0))|0;wc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&wc)>>>(d[i>>0]|0))|0;f=57;break}default:{xb=0;zb=0;Eb=0;Fb=0}}if((f|0)==57){xb=a[yb>>0]|0;zb=Ab;Eb=a[wc>>0]|0;Fb=a[Gb>>0]|0}if((zb&Lc|0)!=(Jc|0))a[Nb>>0]=(Fb&255)>>>5<<2|xb&-32&255|(Eb&255)>>>6;Ob=Db;Xb=Mb+Nc|0;Yb=Nb+1|0;f=61;continue}else if((f|0)==61){f=0;switch(Mc<<24>>24){case 1:{xc=d[Xb>>0]|0;Jb=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&xc)>>>(d[l>>0]|0))|0;Lb=xc;Rb=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&xc)>>>(d[o>>0]|0))|0;xc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&xc)>>>(d[i>>0]|0))|0;f=66;break}case 2:{xc=e[Xb>>1]|0;Jb=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&xc)>>>(d[l>>0]|0))|0;Lb=xc;Rb=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&xc)>>>(d[o>>0]|0))|0;xc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&xc)>>>(d[i>>0]|0))|0;f=66;break}case 3:{Jb=Xb+((d[l>>0]|0)>>>3&255)|0;Lb=0;Rb=Xb+((d[o>>0]|0)>>>3&255)|0;xc=Xb+((d[i>>0]|0)>>>3&255)|0;f=66;break}case 4:{xc=c[Xb>>2]|0;Jb=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&xc)>>>(d[l>>0]|0))|0;Lb=xc;Rb=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&xc)>>>(d[o>>0]|0))|0;xc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&xc)>>>(d[i>>0]|0))|0;f=66;break}default:{Ib=0;Kb=0;Pb=0;Qb=0}}if((f|0)==66){Ib=a[Jb>>0]|0;Kb=Lb;Pb=a[xc>>0]|0;Qb=a[Rb>>0]|0}if((Kb&Lc|0)!=(Jc|0))a[Yb>>0]=(Qb&255)>>>5<<2|Ib&-32&255|(Pb&255)>>>6;Zb=Ob;gc=Xb+Nc|0;hc=Yb+1|0;f=70;continue}else if((f|0)==70){f=0;switch(Mc<<24>>24){case 1:{yc=d[gc>>0]|0;Ub=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&yc)>>>(d[l>>0]|0))|0;Wb=yc;ac=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&yc)>>>(d[o>>0]|0))|0;yc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&yc)>>>(d[i>>0]|0))|0;f=75;break}case 2:{yc=e[gc>>1]|0;Ub=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&yc)>>>(d[l>>0]|0))|0;Wb=yc;ac=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&yc)>>>(d[o>>0]|0))|0;yc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&yc)>>>(d[i>>0]|0))|0;f=75;break}case 3:{Ub=gc+((d[l>>0]|0)>>>3&255)|0;Wb=0;ac=gc+((d[o>>0]|0)>>>3&255)|0;yc=gc+((d[i>>0]|0)>>>3&255)|0;f=75;break}case 4:{yc=c[gc>>2]|0;Ub=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&yc)>>>(d[l>>0]|0))|0;Wb=yc;ac=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&yc)>>>(d[o>>0]|0))|0;yc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&yc)>>>(d[i>>0]|0))|0;f=75;break}default:{Tb=0;Vb=0;_b=0;$b=0}}if((f|0)==75){Tb=a[Ub>>0]|0;Vb=Wb;_b=a[yc>>0]|0;$b=a[ac>>0]|0}if((Vb&Lc|0)!=(Jc|0))a[hc>>0]=($b&255)>>>5<<2|Tb&-32&255|(_b&255)>>>6;b=hc+1|0;f=gc+Nc|0;if((Zb|0)>1){w=Zb+-1|0;P=f;Q=b;f=7;continue}else break}if(!h){f=156;break}else{g=f+Oc|0;f=b+Kc|0;h=h+-1|0}}if((f|0)!=79)if((f|0)==156)return}else{if(b)return;s=(i+7|0)/8|0;r=i&255;j=Ic+28|0;k=Ic+12|0;l=Ic+32|0;m=Ic+29|0;n=Ic+16|0;o=Ic+33|0;p=Ic+30|0;q=Ic+20|0;i=Ic+34|0;b:while(1){switch(r&7){case 0:{t=s;I=g;J=f;f=82;break}case 7:{C=s;V=g;W=f;f=91;break}case 6:{ca=g;da=f;Ra=s;f=100;break}case 5:{la=g;ma=f;ab=s;f=109;break}case 4:{ua=g;va=f;lb=s;f=118;break}case 3:{Da=g;Ea=f;wb=s;f=127;break}case 2:{Ha=g;Ia=f;Hb=s;f=136;break}case 1:{Ja=g;Ka=f;Sb=s;f=145;break}default:{f=154;break b}}while(1)if((f|0)==82){f=0;switch(Mc<<24>>24){case 1:{zc=d[I>>0]|0;dc=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&zc)>>>(d[l>>0]|0))|0;fc=zc;jc=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&zc)>>>(d[o>>0]|0))|0;zc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&zc)>>>(d[i>>0]|0))|0;f=87;break}case 2:{zc=e[I>>1]|0;dc=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&zc)>>>(d[l>>0]|0))|0;fc=zc;jc=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&zc)>>>(d[o>>0]|0))|0;zc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&zc)>>>(d[i>>0]|0))|0;f=87;break}case 3:{dc=I+((d[l>>0]|0)>>>3&255)|0;fc=0;jc=I+((d[o>>0]|0)>>>3&255)|0;zc=I+((d[i>>0]|0)>>>3&255)|0;f=87;break}case 4:{zc=c[I>>2]|0;dc=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&zc)>>>(d[l>>0]|0))|0;fc=zc;jc=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&zc)>>>(d[o>>0]|0))|0;zc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&zc)>>>(d[i>>0]|0))|0;f=87;break}default:{bc=0;cc=0;ec=0;ic=0}}if((f|0)==87){bc=a[zc>>0]|0;cc=a[dc>>0]|0;ec=fc;ic=a[jc>>0]|0}if((ec&Lc|0)!=(Jc|0))a[J>>0]=a[Hc+((ic&255)>>>5<<2|cc&-32&255|(bc&255)>>>6)>>0]|0;C=t;V=I+Nc|0;W=J+1|0;f=91;continue}else if((f|0)==91){f=0;switch(Mc<<24>>24){case 1:{Ac=d[V>>0]|0;mc=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Ac)>>>(d[l>>0]|0))|0;oc=Ac;qc=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Ac)>>>(d[o>>0]|0))|0;Ac=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Ac)>>>(d[i>>0]|0))|0;f=96;break}case 2:{Ac=e[V>>1]|0;mc=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Ac)>>>(d[l>>0]|0))|0;oc=Ac;qc=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Ac)>>>(d[o>>0]|0))|0;Ac=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Ac)>>>(d[i>>0]|0))|0;f=96;break}case 3:{mc=V+((d[l>>0]|0)>>>3&255)|0;oc=0;qc=V+((d[o>>0]|0)>>>3&255)|0;Ac=V+((d[i>>0]|0)>>>3&255)|0;f=96;break}case 4:{Ac=c[V>>2]|0;mc=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Ac)>>>(d[l>>0]|0))|0;oc=Ac;qc=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Ac)>>>(d[o>>0]|0))|0;Ac=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Ac)>>>(d[i>>0]|0))|0;f=96;break}default:{kc=0;lc=0;nc=0;pc=0}}if((f|0)==96){kc=a[Ac>>0]|0;lc=a[mc>>0]|0;nc=oc;pc=a[qc>>0]|0}if((nc&Lc|0)!=(Jc|0))a[W>>0]=a[Hc+((pc&255)>>>5<<2|lc&-32&255|(kc&255)>>>6)>>0]|0;ca=V+Nc|0;da=W+1|0;Ra=C;f=100;continue}else if((f|0)==100){f=0;switch(Mc<<24>>24){case 1:{Bc=d[ca>>0]|0;F=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Bc)>>>(d[l>>0]|0))|0;H=Bc;L=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Bc)>>>(d[o>>0]|0))|0;Bc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Bc)>>>(d[i>>0]|0))|0;f=105;break}case 2:{Bc=e[ca>>1]|0;F=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Bc)>>>(d[l>>0]|0))|0;H=Bc;L=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Bc)>>>(d[o>>0]|0))|0;Bc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Bc)>>>(d[i>>0]|0))|0;f=105;break}case 3:{F=ca+((d[l>>0]|0)>>>3&255)|0;H=0;L=ca+((d[o>>0]|0)>>>3&255)|0;Bc=ca+((d[i>>0]|0)>>>3&255)|0;f=105;break}case 4:{Bc=c[ca>>2]|0;F=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Bc)>>>(d[l>>0]|0))|0;H=Bc;L=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Bc)>>>(d[o>>0]|0))|0;Bc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Bc)>>>(d[i>>0]|0))|0;f=105;break}default:{D=0;E=0;G=0;K=0}}if((f|0)==105){D=a[Bc>>0]|0;E=a[F>>0]|0;G=H;K=a[L>>0]|0}if((G&Lc|0)!=(Jc|0))a[da>>0]=a[Hc+((K&255)>>>5<<2|E&-32&255|(D&255)>>>6)>>0]|0;la=ca+Nc|0;ma=da+1|0;ab=Ra;f=109;continue}else if((f|0)==109){f=0;switch(Mc<<24>>24){case 1:{Cc=d[la>>0]|0;S=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Cc)>>>(d[l>>0]|0))|0;U=Cc;Y=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Cc)>>>(d[o>>0]|0))|0;Cc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Cc)>>>(d[i>>0]|0))|0;f=114;break}case 2:{Cc=e[la>>1]|0;S=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Cc)>>>(d[l>>0]|0))|0;U=Cc;Y=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Cc)>>>(d[o>>0]|0))|0;Cc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Cc)>>>(d[i>>0]|0))|0;f=114;break}case 3:{S=la+((d[l>>0]|0)>>>3&255)|0;U=0;Y=la+((d[o>>0]|0)>>>3&255)|0;Cc=la+((d[i>>0]|0)>>>3&255)|0;f=114;break}case 4:{Cc=c[la>>2]|0;S=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Cc)>>>(d[l>>0]|0))|0;U=Cc;Y=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Cc)>>>(d[o>>0]|0))|0;Cc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Cc)>>>(d[i>>0]|0))|0;f=114;break}default:{M=0;R=0;T=0;X=0}}if((f|0)==114){M=a[Cc>>0]|0;R=a[S>>0]|0;T=U;X=a[Y>>0]|0}if((T&Lc|0)!=(Jc|0))a[ma>>0]=a[Hc+((X&255)>>>5<<2|R&-32&255|(M&255)>>>6)>>0]|0;ua=la+Nc|0;va=ma+1|0;lb=ab;f=118;continue}else if((f|0)==118){f=0;switch(Mc<<24>>24){case 1:{Dc=d[ua>>0]|0;$=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Dc)>>>(d[l>>0]|0))|0;ba=Dc;fa=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Dc)>>>(d[o>>0]|0))|0;Dc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Dc)>>>(d[i>>0]|0))|0;f=123;break}case 2:{Dc=e[ua>>1]|0;$=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Dc)>>>(d[l>>0]|0))|0;ba=Dc;fa=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Dc)>>>(d[o>>0]|0))|0;Dc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Dc)>>>(d[i>>0]|0))|0;f=123;break}case 3:{$=ua+((d[l>>0]|0)>>>3&255)|0;ba=0;fa=ua+((d[o>>0]|0)>>>3&255)|0;Dc=ua+((d[i>>0]|0)>>>3&255)|0;f=123;break}case 4:{Dc=c[ua>>2]|0;$=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Dc)>>>(d[l>>0]|0))|0;ba=Dc;fa=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Dc)>>>(d[o>>0]|0))|0;Dc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Dc)>>>(d[i>>0]|0))|0;f=123;break}default:{Z=0;_=0;aa=0;ea=0}}if((f|0)==123){Z=a[Dc>>0]|0;_=a[$>>0]|0;aa=ba;ea=a[fa>>0]|0}if((aa&Lc|0)!=(Jc|0))a[va>>0]=a[Hc+((ea&255)>>>5<<2|_&-32&255|(Z&255)>>>6)>>0]|0;Da=ua+Nc|0;Ea=va+1|0;wb=lb;f=127;continue}else if((f|0)==127){f=0;switch(Mc<<24>>24){case 1:{Ec=d[Da>>0]|0;ia=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Ec)>>>(d[l>>0]|0))|0;ka=Ec;oa=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Ec)>>>(d[o>>0]|0))|0;Ec=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Ec)>>>(d[i>>0]|0))|0;f=132;break}case 2:{Ec=e[Da>>1]|0;ia=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Ec)>>>(d[l>>0]|0))|0;ka=Ec;oa=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Ec)>>>(d[o>>0]|0))|0;Ec=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Ec)>>>(d[i>>0]|0))|0;f=132;break}case 3:{ia=Da+((d[l>>0]|0)>>>3&255)|0;ka=0;oa=Da+((d[o>>0]|0)>>>3&255)|0;Ec=Da+((d[i>>0]|0)>>>3&255)|0;f=132;break}case 4:{Ec=c[Da>>2]|0;ia=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Ec)>>>(d[l>>0]|0))|0;ka=Ec;oa=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Ec)>>>(d[o>>0]|0))|0;Ec=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Ec)>>>(d[i>>0]|0))|0;f=132;break}default:{ga=0;ha=0;ja=0;na=0}}if((f|0)==132){ga=a[Ec>>0]|0;ha=a[ia>>0]|0;ja=ka;na=a[oa>>0]|0}if((ja&Lc|0)!=(Jc|0))a[Ea>>0]=a[Hc+((na&255)>>>5<<2|ha&-32&255|(ga&255)>>>6)>>0]|0;Ha=Da+Nc|0;Ia=Ea+1|0;Hb=wb;f=136;continue}else if((f|0)==136){f=0;switch(Mc<<24>>24){case 1:{Fc=d[Ha>>0]|0;ra=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Fc)>>>(d[l>>0]|0))|0;ta=Fc;xa=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Fc)>>>(d[o>>0]|0))|0;Fc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Fc)>>>(d[i>>0]|0))|0;f=141;break}case 2:{Fc=e[Ha>>1]|0;ra=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Fc)>>>(d[l>>0]|0))|0;ta=Fc;xa=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Fc)>>>(d[o>>0]|0))|0;Fc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Fc)>>>(d[i>>0]|0))|0;f=141;break}case 3:{ra=Ha+((d[l>>0]|0)>>>3&255)|0;ta=0;xa=Ha+((d[o>>0]|0)>>>3&255)|0;Fc=Ha+((d[i>>0]|0)>>>3&255)|0;f=141;break}case 4:{Fc=c[Ha>>2]|0;ra=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Fc)>>>(d[l>>0]|0))|0;ta=Fc;xa=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Fc)>>>(d[o>>0]|0))|0;Fc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Fc)>>>(d[i>>0]|0))|0;f=141;break}default:{pa=0;qa=0;sa=0;wa=0}}if((f|0)==141){pa=a[Fc>>0]|0;qa=a[ra>>0]|0;sa=ta;wa=a[xa>>0]|0}if((sa&Lc|0)!=(Jc|0))a[Ia>>0]=a[Hc+((wa&255)>>>5<<2|qa&-32&255|(pa&255)>>>6)>>0]|0;Ja=Ha+Nc|0;Ka=Ia+1|0;Sb=Hb;f=145;continue}else if((f|0)==145){f=0;switch(Mc<<24>>24){case 1:{Gc=d[Ja>>0]|0;Aa=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Gc)>>>(d[l>>0]|0))|0;Ca=Gc;Ga=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Gc)>>>(d[o>>0]|0))|0;Gc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Gc)>>>(d[i>>0]|0))|0;f=150;break}case 2:{Gc=e[Ja>>1]|0;Aa=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Gc)>>>(d[l>>0]|0))|0;Ca=Gc;Ga=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Gc)>>>(d[o>>0]|0))|0;Gc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Gc)>>>(d[i>>0]|0))|0;f=150;break}case 3:{Aa=Ja+((d[l>>0]|0)>>>3&255)|0;Ca=0;Ga=Ja+((d[o>>0]|0)>>>3&255)|0;Gc=Ja+((d[i>>0]|0)>>>3&255)|0;f=150;break}case 4:{Gc=c[Ja>>2]|0;Aa=(c[18232+((d[j>>0]|0)<<2)>>2]|0)+((c[k>>2]&Gc)>>>(d[l>>0]|0))|0;Ca=Gc;Ga=(c[18232+((d[m>>0]|0)<<2)>>2]|0)+((c[n>>2]&Gc)>>>(d[o>>0]|0))|0;Gc=(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&Gc)>>>(d[i>>0]|0))|0;f=150;break}default:{ya=0;za=0;Ba=0;Fa=0}}if((f|0)==150){ya=a[Gc>>0]|0;za=a[Aa>>0]|0;Ba=Ca;Fa=a[Ga>>0]|0}if((Ba&Lc|0)!=(Jc|0))a[Ka>>0]=a[Hc+((Fa&255)>>>5<<2|za&-32&255|(ya&255)>>>6)>>0]|0;b=Ka+1|0;f=Ja+Nc|0;if((Sb|0)>1){t=Sb+-1|0;I=f;J=b;f=82;continue}else break}if(!h){f=156;break}else{g=f+Oc|0;f=b+Kc|0;h=h+-1|0}}if((f|0)!=154)if((f|0)==156)return}}function vH(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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;g=c[f+24>>2]|0;j=c[f+28>>2]|0;T=c[f+16>>2]|0;U=c[f+36>>2]|0;i=c[f+40>>2]|0;h=c[f+44>>2]|0;N=i+24|0;O=~c[N>>2];P=a[i+9>>0]|0;Q=a[h+9>>0]|0;R=c[f+56>>2]&O;if(!j)return;S=(g+7|0)/8|0;M=g&255;D=P&255;E=Q&255;F=h+28|0;G=h+32|0;H=h+29|0;I=h+33|0;J=h+30|0;K=h+34|0;L=h+31|0;s=h+35|0;t=i+28|0;u=i+12|0;v=i+32|0;w=i+29|0;x=i+16|0;y=i+33|0;z=i+30|0;A=i+20|0;B=i+34|0;C=i+31|0;r=i+35|0;g=c[f>>2]|0;h=c[f+20>>2]|0;a:while(1){j=j+-1|0;switch(M&7){case 0:{q=S;i=4;break}case 7:{q=S;i=16;break}case 6:{q=S;i=28;break}case 5:{q=S;i=40;break}case 4:{q=S;i=52;break}case 3:{q=S;i=64;break}case 2:{q=S;i=76;break}case 1:{q=S;i=88;break}default:{i=100;break a}}while(1)if((i|0)==4){switch(P<<24>>24){case 1:{i=d[g>>0]|0;f=i;l=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&i)>>>(d[v>>0]|0))>>0]|0;n=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&i)>>>(d[y>>0]|0))>>0]|0;p=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&i)>>>(d[B>>0]|0))>>0]|0;i=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[N>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}case 2:{i=e[g>>1]|0;f=i;l=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&i)>>>(d[v>>0]|0))>>0]|0;n=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&i)>>>(d[y>>0]|0))>>0]|0;p=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&i)>>>(d[B>>0]|0))>>0]|0;i=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[N>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}case 3:{f=0;l=a[g+((d[v>>0]|0)>>>3&255)>>0]|0;n=a[g+((d[y>>0]|0)>>>3&255)>>0]|0;p=a[g+((d[B>>0]|0)>>>3&255)>>0]|0;i=-1;break}case 4:{i=c[g>>2]|0;f=i;l=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&i)>>>(d[v>>0]|0))>>0]|0;n=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&i)>>>(d[y>>0]|0))>>0]|0;p=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&i)>>>(d[B>>0]|0))>>0]|0;i=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[N>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}default:{f=0;l=0;n=0;p=0;i=0}}k=l&255;m=n&255;o=p&255;i=i&255;b:do if((f&O|0)!=(R|0))switch(Q<<24>>24){case 1:{a[h>>0]=m>>>(d[H>>0]|0)<<(d[I>>0]|0)|k>>>(d[F>>0]|0)<<(d[G>>0]|0)|o>>>(d[J>>0]|0)<<(d[K>>0]|0)|i>>>(d[L>>0]|0)<<(d[s>>0]|0);break b}case 2:{b[h>>1]=m>>>(d[H>>0]|0)<<(d[I>>0]|0)|k>>>(d[F>>0]|0)<<(d[G>>0]|0)|o>>>(d[J>>0]|0)<<(d[K>>0]|0)|i>>>(d[L>>0]|0)<<(d[s>>0]|0);break b}case 3:{a[h+((d[G>>0]|0)>>>3&255)>>0]=l;a[h+((d[I>>0]|0)>>>3&255)>>0]=n;a[h+((d[K>>0]|0)>>>3&255)>>0]=p;break b}case 4:{c[h>>2]=m>>>(d[H>>0]|0)<<(d[I>>0]|0)|k>>>(d[F>>0]|0)<<(d[G>>0]|0)|o>>>(d[J>>0]|0)<<(d[K>>0]|0)|i>>>(d[L>>0]|0)<<(d[s>>0]|0);break b}default:break b}while(0);g=g+D|0;h=h+E|0;i=16;continue}else if((i|0)==16){switch(P<<24>>24){case 1:{i=d[g>>0]|0;f=i;l=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&i)>>>(d[v>>0]|0))>>0]|0;n=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&i)>>>(d[y>>0]|0))>>0]|0;p=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&i)>>>(d[B>>0]|0))>>0]|0;i=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[N>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}case 2:{i=e[g>>1]|0;f=i;l=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&i)>>>(d[v>>0]|0))>>0]|0;n=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&i)>>>(d[y>>0]|0))>>0]|0;p=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&i)>>>(d[B>>0]|0))>>0]|0;i=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[N>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}case 3:{f=0;l=a[g+((d[v>>0]|0)>>>3&255)>>0]|0;n=a[g+((d[y>>0]|0)>>>3&255)>>0]|0;p=a[g+((d[B>>0]|0)>>>3&255)>>0]|0;i=-1;break}case 4:{i=c[g>>2]|0;f=i;l=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&i)>>>(d[v>>0]|0))>>0]|0;n=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&i)>>>(d[y>>0]|0))>>0]|0;p=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&i)>>>(d[B>>0]|0))>>0]|0;i=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[N>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}default:{f=0;l=0;n=0;p=0;i=0}}k=l&255;m=n&255;o=p&255;i=i&255;c:do if((f&O|0)!=(R|0))switch(Q<<24>>24){case 1:{a[h>>0]=m>>>(d[H>>0]|0)<<(d[I>>0]|0)|k>>>(d[F>>0]|0)<<(d[G>>0]|0)|o>>>(d[J>>0]|0)<<(d[K>>0]|0)|i>>>(d[L>>0]|0)<<(d[s>>0]|0);break c}case 2:{b[h>>1]=m>>>(d[H>>0]|0)<<(d[I>>0]|0)|k>>>(d[F>>0]|0)<<(d[G>>0]|0)|o>>>(d[J>>0]|0)<<(d[K>>0]|0)|i>>>(d[L>>0]|0)<<(d[s>>0]|0);break c}case 3:{a[h+((d[G>>0]|0)>>>3&255)>>0]=l;a[h+((d[I>>0]|0)>>>3&255)>>0]=n;a[h+((d[K>>0]|0)>>>3&255)>>0]=p;break c}case 4:{c[h>>2]=m>>>(d[H>>0]|0)<<(d[I>>0]|0)|k>>>(d[F>>0]|0)<<(d[G>>0]|0)|o>>>(d[J>>0]|0)<<(d[K>>0]|0)|i>>>(d[L>>0]|0)<<(d[s>>0]|0);break c}default:break c}while(0);g=g+D|0;h=h+E|0;i=28;continue}else if((i|0)==28){switch(P<<24>>24){case 1:{i=d[g>>0]|0;f=i;l=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&i)>>>(d[v>>0]|0))>>0]|0;n=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&i)>>>(d[y>>0]|0))>>0]|0;p=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&i)>>>(d[B>>0]|0))>>0]|0;i=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[N>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}case 2:{i=e[g>>1]|0;f=i;l=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&i)>>>(d[v>>0]|0))>>0]|0;n=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&i)>>>(d[y>>0]|0))>>0]|0;p=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&i)>>>(d[B>>0]|0))>>0]|0;i=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[N>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}case 3:{f=0;l=a[g+((d[v>>0]|0)>>>3&255)>>0]|0;n=a[g+((d[y>>0]|0)>>>3&255)>>0]|0;p=a[g+((d[B>>0]|0)>>>3&255)>>0]|0;i=-1;break}case 4:{i=c[g>>2]|0;f=i;l=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&i)>>>(d[v>>0]|0))>>0]|0;n=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&i)>>>(d[y>>0]|0))>>0]|0;p=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&i)>>>(d[B>>0]|0))>>0]|0;i=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[N>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}default:{f=0;l=0;n=0;p=0;i=0}}k=l&255;m=n&255;o=p&255;i=i&255;d:do if((f&O|0)!=(R|0))switch(Q<<24>>24){case 1:{a[h>>0]=m>>>(d[H>>0]|0)<<(d[I>>0]|0)|k>>>(d[F>>0]|0)<<(d[G>>0]|0)|o>>>(d[J>>0]|0)<<(d[K>>0]|0)|i>>>(d[L>>0]|0)<<(d[s>>0]|0);break d}case 2:{b[h>>1]=m>>>(d[H>>0]|0)<<(d[I>>0]|0)|k>>>(d[F>>0]|0)<<(d[G>>0]|0)|o>>>(d[J>>0]|0)<<(d[K>>0]|0)|i>>>(d[L>>0]|0)<<(d[s>>0]|0);break d}case 3:{a[h+((d[G>>0]|0)>>>3&255)>>0]=l;a[h+((d[I>>0]|0)>>>3&255)>>0]=n;a[h+((d[K>>0]|0)>>>3&255)>>0]=p;break d}case 4:{c[h>>2]=m>>>(d[H>>0]|0)<<(d[I>>0]|0)|k>>>(d[F>>0]|0)<<(d[G>>0]|0)|o>>>(d[J>>0]|0)<<(d[K>>0]|0)|i>>>(d[L>>0]|0)<<(d[s>>0]|0);break d}default:break d}while(0);g=g+D|0;h=h+E|0;i=40;continue}else if((i|0)==40){switch(P<<24>>24){case 1:{i=d[g>>0]|0;f=i;l=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&i)>>>(d[v>>0]|0))>>0]|0;n=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&i)>>>(d[y>>0]|0))>>0]|0;p=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&i)>>>(d[B>>0]|0))>>0]|0;i=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[N>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}case 2:{i=e[g>>1]|0;f=i;l=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&i)>>>(d[v>>0]|0))>>0]|0;n=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&i)>>>(d[y>>0]|0))>>0]|0;p=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&i)>>>(d[B>>0]|0))>>0]|0;i=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[N>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}case 3:{f=0;l=a[g+((d[v>>0]|0)>>>3&255)>>0]|0;n=a[g+((d[y>>0]|0)>>>3&255)>>0]|0;p=a[g+((d[B>>0]|0)>>>3&255)>>0]|0;i=-1;break}case 4:{i=c[g>>2]|0;f=i;l=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&i)>>>(d[v>>0]|0))>>0]|0;n=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&i)>>>(d[y>>0]|0))>>0]|0;p=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&i)>>>(d[B>>0]|0))>>0]|0;i=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[N>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}default:{f=0;l=0;n=0;p=0;i=0}}k=l&255;m=n&255;o=p&255;i=i&255;e:do if((f&O|0)!=(R|0))switch(Q<<24>>24){case 1:{a[h>>0]=m>>>(d[H>>0]|0)<<(d[I>>0]|0)|k>>>(d[F>>0]|0)<<(d[G>>0]|0)|o>>>(d[J>>0]|0)<<(d[K>>0]|0)|i>>>(d[L>>0]|0)<<(d[s>>0]|0);break e}case 2:{b[h>>1]=m>>>(d[H>>0]|0)<<(d[I>>0]|0)|k>>>(d[F>>0]|0)<<(d[G>>0]|0)|o>>>(d[J>>0]|0)<<(d[K>>0]|0)|i>>>(d[L>>0]|0)<<(d[s>>0]|0);break e}case 3:{a[h+((d[G>>0]|0)>>>3&255)>>0]=l;a[h+((d[I>>0]|0)>>>3&255)>>0]=n;a[h+((d[K>>0]|0)>>>3&255)>>0]=p;break e}case 4:{c[h>>2]=m>>>(d[H>>0]|0)<<(d[I>>0]|0)|k>>>(d[F>>0]|0)<<(d[G>>0]|0)|o>>>(d[J>>0]|0)<<(d[K>>0]|0)|i>>>(d[L>>0]|0)<<(d[s>>0]|0);break e}default:break e}while(0);g=g+D|0;h=h+E|0;i=52;continue}else if((i|0)==52){switch(P<<24>>24){case 1:{i=d[g>>0]|0;f=i;l=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&i)>>>(d[v>>0]|0))>>0]|0;n=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&i)>>>(d[y>>0]|0))>>0]|0;p=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&i)>>>(d[B>>0]|0))>>0]|0;i=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[N>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}case 2:{i=e[g>>1]|0;f=i;l=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&i)>>>(d[v>>0]|0))>>0]|0;n=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&i)>>>(d[y>>0]|0))>>0]|0;p=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&i)>>>(d[B>>0]|0))>>0]|0;i=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[N>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}case 3:{f=0;l=a[g+((d[v>>0]|0)>>>3&255)>>0]|0;n=a[g+((d[y>>0]|0)>>>3&255)>>0]|0;p=a[g+((d[B>>0]|0)>>>3&255)>>0]|0;i=-1;break}case 4:{i=c[g>>2]|0;f=i;l=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&i)>>>(d[v>>0]|0))>>0]|0;n=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&i)>>>(d[y>>0]|0))>>0]|0;p=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&i)>>>(d[B>>0]|0))>>0]|0;i=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[N>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}default:{f=0;l=0;n=0;p=0;i=0}}k=l&255;m=n&255;o=p&255;i=i&255;f:do if((f&O|0)!=(R|0))switch(Q<<24>>24){case 1:{a[h>>0]=m>>>(d[H>>0]|0)<<(d[I>>0]|0)|k>>>(d[F>>0]|0)<<(d[G>>0]|0)|o>>>(d[J>>0]|0)<<(d[K>>0]|0)|i>>>(d[L>>0]|0)<<(d[s>>0]|0);break f}case 2:{b[h>>1]=m>>>(d[H>>0]|0)<<(d[I>>0]|0)|k>>>(d[F>>0]|0)<<(d[G>>0]|0)|o>>>(d[J>>0]|0)<<(d[K>>0]|0)|i>>>(d[L>>0]|0)<<(d[s>>0]|0);break f}case 3:{a[h+((d[G>>0]|0)>>>3&255)>>0]=l;a[h+((d[I>>0]|0)>>>3&255)>>0]=n;a[h+((d[K>>0]|0)>>>3&255)>>0]=p;break f}case 4:{c[h>>2]=m>>>(d[H>>0]|0)<<(d[I>>0]|0)|k>>>(d[F>>0]|0)<<(d[G>>0]|0)|o>>>(d[J>>0]|0)<<(d[K>>0]|0)|i>>>(d[L>>0]|0)<<(d[s>>0]|0);break f}default:break f}while(0);g=g+D|0;h=h+E|0;i=64;continue}else if((i|0)==64){switch(P<<24>>24){case 1:{i=d[g>>0]|0;f=i;l=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&i)>>>(d[v>>0]|0))>>0]|0;n=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&i)>>>(d[y>>0]|0))>>0]|0;p=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&i)>>>(d[B>>0]|0))>>0]|0;i=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[N>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}case 2:{i=e[g>>1]|0;f=i;l=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&i)>>>(d[v>>0]|0))>>0]|0;n=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&i)>>>(d[y>>0]|0))>>0]|0;p=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&i)>>>(d[B>>0]|0))>>0]|0;i=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[N>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}case 3:{f=0;l=a[g+((d[v>>0]|0)>>>3&255)>>0]|0;n=a[g+((d[y>>0]|0)>>>3&255)>>0]|0;p=a[g+((d[B>>0]|0)>>>3&255)>>0]|0;i=-1;break}case 4:{i=c[g>>2]|0;f=i;l=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&i)>>>(d[v>>0]|0))>>0]|0;n=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&i)>>>(d[y>>0]|0))>>0]|0;p=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&i)>>>(d[B>>0]|0))>>0]|0;i=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[N>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}default:{f=0;l=0;n=0;p=0;i=0}}k=l&255;m=n&255;o=p&255;i=i&255;g:do if((f&O|0)!=(R|0))switch(Q<<24>>24){case 1:{a[h>>0]=m>>>(d[H>>0]|0)<<(d[I>>0]|0)|k>>>(d[F>>0]|0)<<(d[G>>0]|0)|o>>>(d[J>>0]|0)<<(d[K>>0]|0)|i>>>(d[L>>0]|0)<<(d[s>>0]|0);break g}case 2:{b[h>>1]=m>>>(d[H>>0]|0)<<(d[I>>0]|0)|k>>>(d[F>>0]|0)<<(d[G>>0]|0)|o>>>(d[J>>0]|0)<<(d[K>>0]|0)|i>>>(d[L>>0]|0)<<(d[s>>0]|0);break g}case 3:{a[h+((d[G>>0]|0)>>>3&255)>>0]=l;a[h+((d[I>>0]|0)>>>3&255)>>0]=n;a[h+((d[K>>0]|0)>>>3&255)>>0]=p;break g}case 4:{c[h>>2]=m>>>(d[H>>0]|0)<<(d[I>>0]|0)|k>>>(d[F>>0]|0)<<(d[G>>0]|0)|o>>>(d[J>>0]|0)<<(d[K>>0]|0)|i>>>(d[L>>0]|0)<<(d[s>>0]|0);break g}default:break g}while(0);g=g+D|0;h=h+E|0;i=76;continue}else if((i|0)==76){switch(P<<24>>24){case 1:{i=d[g>>0]|0;f=i;l=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&i)>>>(d[v>>0]|0))>>0]|0;n=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&i)>>>(d[y>>0]|0))>>0]|0;p=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&i)>>>(d[B>>0]|0))>>0]|0;i=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[N>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}case 2:{i=e[g>>1]|0;f=i;l=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&i)>>>(d[v>>0]|0))>>0]|0;n=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&i)>>>(d[y>>0]|0))>>0]|0;p=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&i)>>>(d[B>>0]|0))>>0]|0;i=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[N>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}case 3:{f=0;l=a[g+((d[v>>0]|0)>>>3&255)>>0]|0;n=a[g+((d[y>>0]|0)>>>3&255)>>0]|0;p=a[g+((d[B>>0]|0)>>>3&255)>>0]|0;i=-1;break}case 4:{i=c[g>>2]|0;f=i;l=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&i)>>>(d[v>>0]|0))>>0]|0;n=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&i)>>>(d[y>>0]|0))>>0]|0;p=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&i)>>>(d[B>>0]|0))>>0]|0;i=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[N>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}default:{f=0;l=0;n=0;p=0;i=0}}k=l&255;m=n&255;o=p&255;i=i&255;h:do if((f&O|0)!=(R|0))switch(Q<<24>>24){case 1:{a[h>>0]=m>>>(d[H>>0]|0)<<(d[I>>0]|0)|k>>>(d[F>>0]|0)<<(d[G>>0]|0)|o>>>(d[J>>0]|0)<<(d[K>>0]|0)|i>>>(d[L>>0]|0)<<(d[s>>0]|0);break h}case 2:{b[h>>1]=m>>>(d[H>>0]|0)<<(d[I>>0]|0)|k>>>(d[F>>0]|0)<<(d[G>>0]|0)|o>>>(d[J>>0]|0)<<(d[K>>0]|0)|i>>>(d[L>>0]|0)<<(d[s>>0]|0);break h}case 3:{a[h+((d[G>>0]|0)>>>3&255)>>0]=l;a[h+((d[I>>0]|0)>>>3&255)>>0]=n;a[h+((d[K>>0]|0)>>>3&255)>>0]=p;break h}case 4:{c[h>>2]=m>>>(d[H>>0]|0)<<(d[I>>0]|0)|k>>>(d[F>>0]|0)<<(d[G>>0]|0)|o>>>(d[J>>0]|0)<<(d[K>>0]|0)|i>>>(d[L>>0]|0)<<(d[s>>0]|0);break h}default:break h}while(0);g=g+D|0;h=h+E|0;i=88;continue}else if((i|0)==88){switch(P<<24>>24){case 1:{i=d[g>>0]|0;f=i;l=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&i)>>>(d[v>>0]|0))>>0]|0;n=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&i)>>>(d[y>>0]|0))>>0]|0;p=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&i)>>>(d[B>>0]|0))>>0]|0;i=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[N>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}case 2:{i=e[g>>1]|0;f=i;l=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&i)>>>(d[v>>0]|0))>>0]|0;n=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&i)>>>(d[y>>0]|0))>>0]|0;p=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&i)>>>(d[B>>0]|0))>>0]|0;i=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[N>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}case 3:{f=0;l=a[g+((d[v>>0]|0)>>>3&255)>>0]|0;n=a[g+((d[y>>0]|0)>>>3&255)>>0]|0;p=a[g+((d[B>>0]|0)>>>3&255)>>0]|0;i=-1;break}case 4:{i=c[g>>2]|0;f=i;l=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&i)>>>(d[v>>0]|0))>>0]|0;n=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&i)>>>(d[y>>0]|0))>>0]|0;p=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[A>>2]&i)>>>(d[B>>0]|0))>>0]|0;i=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[N>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}default:{f=0;l=0;n=0;p=0;i=0}}k=l&255;m=n&255;o=p&255;i=i&255;i:do if((f&O|0)!=(R|0))switch(Q<<24>>24){case 1:{a[h>>0]=m>>>(d[H>>0]|0)<<(d[I>>0]|0)|k>>>(d[F>>0]|0)<<(d[G>>0]|0)|o>>>(d[J>>0]|0)<<(d[K>>0]|0)|i>>>(d[L>>0]|0)<<(d[s>>0]|0);break i}case 2:{b[h>>1]=m>>>(d[H>>0]|0)<<(d[I>>0]|0)|k>>>(d[F>>0]|0)<<(d[G>>0]|0)|o>>>(d[J>>0]|0)<<(d[K>>0]|0)|i>>>(d[L>>0]|0)<<(d[s>>0]|0);break i}case 3:{a[h+((d[G>>0]|0)>>>3&255)>>0]=l;a[h+((d[I>>0]|0)>>>3&255)>>0]=n;a[h+((d[K>>0]|0)>>>3&255)>>0]=p;break i}case 4:{c[h>>2]=m>>>(d[H>>0]|0)<<(d[I>>0]|0)|k>>>(d[F>>0]|0)<<(d[G>>0]|0)|o>>>(d[J>>0]|0)<<(d[K>>0]|0)|i>>>(d[L>>0]|0)<<(d[s>>0]|0);break i}default:break i}while(0);h=h+E|0;g=g+D|0;if((q|0)>1){q=q+-1|0;i=4;continue}else break}if(!j){i=102;break}else{g=g+T|0;h=h+U|0}}if((i|0)!=100)if((i|0)==102)return}function wH(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;d=c[a+24>>2]|0;e=c[a+28>>2]|0;k=(c[a+16>>2]|0)/4|0;i=(c[a+36>>2]|0)/2|0;if(!e)return;j=(d+7|0)/8|0;h=d&255;g=c[a>>2]|0;d=c[a+20>>2]|0;a:while(1){e=e+-1|0;switch(h&7){case 0:{f=j;a=g;g=4;break}case 7:{f=j;a=g;g=5;break}case 6:{f=j;a=g;g=6;break}case 5:{f=j;a=g;g=7;break}case 4:{f=j;a=g;g=8;break}case 3:{f=j;a=g;g=9;break}case 2:{f=j;a=g;g=10;break}case 1:{f=j;a=g;g=11;break}default:{g=12;break a}}while(1)if((g|0)==4){l=c[a>>2]|0;b[d>>1]=l>>>8&63488|l>>>5&2016|l>>>3&31;a=a+4|0;d=d+2|0;g=5;continue}else if((g|0)==5){l=c[a>>2]|0;b[d>>1]=l>>>8&63488|l>>>5&2016|l>>>3&31;a=a+4|0;d=d+2|0;g=6;continue}else if((g|0)==6){l=c[a>>2]|0;b[d>>1]=l>>>8&63488|l>>>5&2016|l>>>3&31;a=a+4|0;d=d+2|0;g=7;continue}else if((g|0)==7){l=c[a>>2]|0;b[d>>1]=l>>>8&63488|l>>>5&2016|l>>>3&31;a=a+4|0;d=d+2|0;g=8;continue}else if((g|0)==8){l=c[a>>2]|0;b[d>>1]=l>>>8&63488|l>>>5&2016|l>>>3&31;a=a+4|0;d=d+2|0;g=9;continue}else if((g|0)==9){l=c[a>>2]|0;b[d>>1]=l>>>8&63488|l>>>5&2016|l>>>3&31;a=a+4|0;d=d+2|0;g=10;continue}else if((g|0)==10){l=c[a>>2]|0;b[d>>1]=l>>>8&63488|l>>>5&2016|l>>>3&31;a=a+4|0;d=d+2|0;g=11;continue}else if((g|0)==11){l=c[a>>2]|0;b[d>>1]=l>>>8&63488|l>>>5&2016|l>>>3&31;a=a+4|0;d=d+2|0;if((f|0)>1){f=f+-1|0;g=4;continue}else break}if(!e){g=14;break}else{g=a+(k<<2)|0;d=d+(i<<1)|0}}if((g|0)!=12)if((g|0)==14)return}function xH(a){a=a|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;d=c[a+24>>2]|0;e=c[a+28>>2]|0;k=(c[a+16>>2]|0)/4|0;i=(c[a+36>>2]|0)/2|0;if(!e)return;j=(d+7|0)/8|0;h=d&255;g=c[a>>2]|0;d=c[a+20>>2]|0;a:while(1){e=e+-1|0;switch(h&7){case 0:{f=j;a=g;g=4;break}case 7:{f=j;a=g;g=5;break}case 6:{f=j;a=g;g=6;break}case 5:{f=j;a=g;g=7;break}case 4:{f=j;a=g;g=8;break}case 3:{f=j;a=g;g=9;break}case 2:{f=j;a=g;g=10;break}case 1:{f=j;a=g;g=11;break}default:{g=12;break a}}while(1)if((g|0)==4){l=c[a>>2]|0;b[d>>1]=l>>>9&31744|l>>>6&992|l>>>3&31;a=a+4|0;d=d+2|0;g=5;continue}else if((g|0)==5){l=c[a>>2]|0;b[d>>1]=l>>>9&31744|l>>>6&992|l>>>3&31;a=a+4|0;d=d+2|0;g=6;continue}else if((g|0)==6){l=c[a>>2]|0;b[d>>1]=l>>>9&31744|l>>>6&992|l>>>3&31;a=a+4|0;d=d+2|0;g=7;continue}else if((g|0)==7){l=c[a>>2]|0;b[d>>1]=l>>>9&31744|l>>>6&992|l>>>3&31;a=a+4|0;d=d+2|0;g=8;continue}else if((g|0)==8){l=c[a>>2]|0;b[d>>1]=l>>>9&31744|l>>>6&992|l>>>3&31;a=a+4|0;d=d+2|0;g=9;continue}else if((g|0)==9){l=c[a>>2]|0;b[d>>1]=l>>>9&31744|l>>>6&992|l>>>3&31;a=a+4|0;d=d+2|0;g=10;continue}else if((g|0)==10){l=c[a>>2]|0;b[d>>1]=l>>>9&31744|l>>>6&992|l>>>3&31;a=a+4|0;d=d+2|0;g=11;continue}else if((g|0)==11){l=c[a>>2]|0;b[d>>1]=l>>>9&31744|l>>>6&992|l>>>3&31;a=a+4|0;d=d+2|0;if((f|0)>1){f=f+-1|0;g=4;continue}else break}if(!e){g=14;break}else{g=a+(k<<2)|0;d=d+(i<<1)|0}}if((g|0)!=12)if((g|0)==14)return}function yH(a){a=a|0;CH(a,24832);return}function zH(a){a=a|0;CH(a,22784);return}function AH(a){a=a|0;CH(a,20736);return}function BH(a){a=a|0;CH(a,18688);return}function CH(a,b){a=a|0;b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;e=c[a+24>>2]|0;f=c[a+28>>2]|0;l=c[a+16>>2]|0;j=(c[a+36>>2]|0)/4|0;if(!f)return;k=(e+7|0)/8|0;i=e&255;e=c[a>>2]|0;a=c[a+20>>2]|0;a:while(1){f=f+-1|0;switch(i&7){case 0:{g=k;h=4;break}case 7:{g=k;h=5;break}case 6:{g=k;h=6;break}case 5:{g=k;h=7;break}case 4:{g=k;h=8;break}case 3:{g=k;h=9;break}case 2:{g=k;h=10;break}case 1:{g=k;h=11;break}default:{h=12;break a}}while(1)if((h|0)==4){c[a>>2]=(c[b+(((d[e+1>>0]|0)<<1|1)<<2)>>2]|0)+(c[b+((d[e>>0]|0)<<1<<2)>>2]|0);e=e+2|0;a=a+4|0;h=5;continue}else if((h|0)==5){c[a>>2]=(c[b+(((d[e+1>>0]|0)<<1|1)<<2)>>2]|0)+(c[b+((d[e>>0]|0)<<1<<2)>>2]|0);e=e+2|0;a=a+4|0;h=6;continue}else if((h|0)==6){c[a>>2]=(c[b+(((d[e+1>>0]|0)<<1|1)<<2)>>2]|0)+(c[b+((d[e>>0]|0)<<1<<2)>>2]|0);e=e+2|0;a=a+4|0;h=7;continue}else if((h|0)==7){c[a>>2]=(c[b+(((d[e+1>>0]|0)<<1|1)<<2)>>2]|0)+(c[b+((d[e>>0]|0)<<1<<2)>>2]|0);e=e+2|0;a=a+4|0;h=8;continue}else if((h|0)==8){c[a>>2]=(c[b+(((d[e+1>>0]|0)<<1|1)<<2)>>2]|0)+(c[b+((d[e>>0]|0)<<1<<2)>>2]|0);e=e+2|0;a=a+4|0;h=9;continue}else if((h|0)==9){c[a>>2]=(c[b+(((d[e+1>>0]|0)<<1|1)<<2)>>2]|0)+(c[b+((d[e>>0]|0)<<1<<2)>>2]|0);e=e+2|0;a=a+4|0;h=10;continue}else if((h|0)==10){c[a>>2]=(c[b+(((d[e+1>>0]|0)<<1|1)<<2)>>2]|0)+(c[b+((d[e>>0]|0)<<1<<2)>>2]|0);e=e+2|0;a=a+4|0;h=11;continue}else if((h|0)==11){h=a+4|0;c[a>>2]=(c[b+(((d[e+1>>0]|0)<<1|1)<<2)>>2]|0)+(c[b+((d[e>>0]|0)<<1<<2)>>2]|0);e=e+2|0;if((g|0)>1){g=g+-1|0;a=h;h=4;continue}else break}if(!f){h=14;break}else{e=e+l|0;a=h+(j<<2)|0}}if((h|0)!=12)if((h|0)==14)return}function DH(a){a=a|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;d=c[a+24>>2]|0;f=c[a+28>>2]|0;o=c[a+16>>2]>>2;m=c[a+36>>2]>>1;if(!f)return;n=(d+3|0)/4|0;l=d&255;d=c[a>>2]|0;a=c[a+20>>2]|0;a:while(1){f=f+-1|0;switch(l&3){case 0:{k=n;j=d;d=4;break}case 3:{k=n;j=d;d=10;break}case 2:{k=n;j=d;d=16;break}case 1:{k=n;j=d;d=22;break}default:{d=28;break a}}while(1)if((d|0)==4){d=c[j>>2]|0;g=d>>>27;if(g|0){h=d>>>9&31744;i=d>>>3&31;if((g|0)==31)d=h|d>>>6&992|i;else{p=e[a>>1]|0;p=(p<<16|p)&65043487;d=((O((d<<10&65011712|h|i)-p|0,g)|0)>>>5)+p&65043487;d=d>>>16|d}b[a>>1]=d}j=j+4|0;a=a+2|0;d=10;continue}else if((d|0)==10){d=c[j>>2]|0;g=d>>>27;if(g|0){h=d>>>9&31744;i=d>>>3&31;if((g|0)==31)d=h|d>>>6&992|i;else{p=e[a>>1]|0;p=(p<<16|p)&65043487;d=((O((d<<10&65011712|h|i)-p|0,g)|0)>>>5)+p&65043487;d=d>>>16|d}b[a>>1]=d}j=j+4|0;a=a+2|0;d=16;continue}else if((d|0)==16){d=c[j>>2]|0;g=d>>>27;if(g|0){h=d>>>9&31744;i=d>>>3&31;if((g|0)==31)d=h|d>>>6&992|i;else{p=e[a>>1]|0;p=(p<<16|p)&65043487;d=((O((d<<10&65011712|h|i)-p|0,g)|0)>>>5)+p&65043487;d=d>>>16|d}b[a>>1]=d}j=j+4|0;a=a+2|0;d=22;continue}else if((d|0)==22){d=c[j>>2]|0;g=d>>>27;if(g|0){h=d>>>3&31;i=d>>>9&31744;if((g|0)==31)d=i|d>>>6&992|h;else{p=e[a>>1]|0;p=(p<<16|p)&65043487;d=((O((d<<10&65011712|i|h)-p|0,g)|0)>>>5)+p&65043487;d=d>>>16|d}b[a>>1]=d}d=j+4|0;a=a+2|0;if((k|0)>1){k=k+-1|0;j=d;d=4;continue}else break}if(!f){d=30;break}else{d=d+(o<<2)|0;a=a+(m<<1)|0}}if((d|0)!=28)if((d|0)==30)return}function EH(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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,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;g=c[f+24>>2]|0;j=c[f+28>>2]|0;ba=c[f+16>>2]|0;da=c[f+36>>2]|0;h=c[f+40>>2]|0;i=c[f+44>>2]|0;X=a[h+9>>0]|0;Y=X&255;Z=a[i+9>>0]|0;_=Z&255;if(!j)return;$=(g+3|0)/4|0;Q=g&255;E=h+28|0;F=h+12|0;G=h+32|0;H=h+29|0;I=h+16|0;J=h+33|0;K=h+30|0;L=h+20|0;M=h+34|0;N=h+31|0;P=h+24|0;s=h+35|0;t=i+28|0;u=i+32|0;v=i+29|0;w=i+33|0;x=i+30|0;y=i+34|0;z=i+31|0;A=i+35|0;B=i+12|0;C=i+16|0;D=i+20|0;r=i+24|0;g=c[f>>2]|0;h=c[f+20>>2]|0;a:while(1){j=j+-1|0;switch(Q&3){case 0:{q=$;i=4;break}case 3:{q=$;i=21;break}case 2:{q=$;i=38;break}case 1:{q=$;i=55;break}default:{i=72;break a}}while(1)if((i|0)==4){i=0;switch(X<<24>>24){case 1:{R=d[g>>0]|0;i=9;break}case 2:{R=e[g>>1]|0;i=9;break}case 3:{m=d[g+((d[G>>0]|0)>>>3&255)>>0]|0;n=d[g+((d[J>>0]|0)>>>3&255)>>0]|0;o=d[g+((d[M>>0]|0)>>>3&255)>>0]|0;p=255;i=10;break}case 4:{R=c[g>>2]|0;i=9;break}default:{}}if((i|0)==9?(i=0,W=a[(c[18232+((d[N>>0]|0)<<2)>>2]|0)+((c[P>>2]&R)>>>(d[s>>0]|0))>>0]|0,W<<24>>24):0){m=d[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[F>>2]&R)>>>(d[G>>0]|0))>>0]|0;n=d[(c[18232+((d[H>>0]|0)<<2)>>2]|0)+((c[I>>2]&R)>>>(d[J>>0]|0))>>0]|0;o=d[(c[18232+((d[K>>0]|0)<<2)>>2]|0)+((c[L>>2]&R)>>>(d[M>>0]|0))>>0]|0;p=W&255;i=10}b:do if((i|0)==10){switch(Z<<24>>24){case 1:{l=d[h>>0]|0;i=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[u>>0]|0))>>0]|0;f=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[C>>2]&l)>>>(d[w>>0]|0))>>0]|0;k=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[D>>2]&l)>>>(d[y>>0]|0))>>0]|0;l=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[r>>2]&l)>>>(d[A>>0]|0))>>0]|0;break}case 2:{l=e[h>>1]|0;i=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[u>>0]|0))>>0]|0;f=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[C>>2]&l)>>>(d[w>>0]|0))>>0]|0;k=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[D>>2]&l)>>>(d[y>>0]|0))>>0]|0;l=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[r>>2]&l)>>>(d[A>>0]|0))>>0]|0;break}case 3:{i=a[h+((d[u>>0]|0)>>>3&255)>>0]|0;f=a[h+((d[w>>0]|0)>>>3&255)>>0]|0;k=a[h+((d[y>>0]|0)>>>3&255)>>0]|0;l=-1;break}case 4:{l=c[h>>2]|0;i=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[u>>0]|0))>>0]|0;f=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[C>>2]&l)>>>(d[w>>0]|0))>>0]|0;k=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[D>>2]&l)>>>(d[y>>0]|0))>>0]|0;l=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[r>>2]&l)>>>(d[A>>0]|0))>>0]|0;break}default:{i=0;f=0;k=0;l=0}}fa=i&255;ea=f&255;f=k&255;i=l&255;l=(((O(m-fa|0,p)|0)>>>0)/255|0)+fa|0;k=(((O(n-ea|0,p)|0)>>>0)/255|0)+ea|0;f=(((O(o-f|0,p)|0)>>>0)/255|0)+f|0;i=i+p-(((O(i,p)|0)>>>0)/255|0)|0;switch(Z<<24>>24){case 1:{a[h>>0]=k>>>(d[v>>0]|0)<<(d[w>>0]|0)|l>>>(d[t>>0]|0)<<(d[u>>0]|0)|f>>>(d[x>>0]|0)<<(d[y>>0]|0)|i>>>(d[z>>0]|0)<<(d[A>>0]|0);break b}case 2:{b[h>>1]=k>>>(d[v>>0]|0)<<(d[w>>0]|0)|l>>>(d[t>>0]|0)<<(d[u>>0]|0)|f>>>(d[x>>0]|0)<<(d[y>>0]|0)|i>>>(d[z>>0]|0)<<(d[A>>0]|0);break b}case 3:{a[h+((d[u>>0]|0)>>>3&255)>>0]=l;a[h+((d[w>>0]|0)>>>3&255)>>0]=k;a[h+((d[y>>0]|0)>>>3&255)>>0]=f;break b}case 4:{c[h>>2]=k>>>(d[v>>0]|0)<<(d[w>>0]|0)|l>>>(d[t>>0]|0)<<(d[u>>0]|0)|f>>>(d[x>>0]|0)<<(d[y>>0]|0)|i>>>(d[z>>0]|0)<<(d[A>>0]|0);break b}default:break b}}while(0);g=g+Y|0;h=h+_|0;i=21;continue}else if((i|0)==21){i=0;switch(X<<24>>24){case 1:{S=d[g>>0]|0;i=26;break}case 2:{S=e[g>>1]|0;i=26;break}case 3:{m=d[g+((d[G>>0]|0)>>>3&255)>>0]|0;n=d[g+((d[J>>0]|0)>>>3&255)>>0]|0;o=d[g+((d[M>>0]|0)>>>3&255)>>0]|0;p=255;i=27;break}case 4:{S=c[g>>2]|0;i=26;break}default:{}}if((i|0)==26?(i=0,aa=a[(c[18232+((d[N>>0]|0)<<2)>>2]|0)+((c[P>>2]&S)>>>(d[s>>0]|0))>>0]|0,aa<<24>>24):0){m=d[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[F>>2]&S)>>>(d[G>>0]|0))>>0]|0;n=d[(c[18232+((d[H>>0]|0)<<2)>>2]|0)+((c[I>>2]&S)>>>(d[J>>0]|0))>>0]|0;o=d[(c[18232+((d[K>>0]|0)<<2)>>2]|0)+((c[L>>2]&S)>>>(d[M>>0]|0))>>0]|0;p=aa&255;i=27}c:do if((i|0)==27){switch(Z<<24>>24){case 1:{l=d[h>>0]|0;i=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[u>>0]|0))>>0]|0;f=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[C>>2]&l)>>>(d[w>>0]|0))>>0]|0;k=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[D>>2]&l)>>>(d[y>>0]|0))>>0]|0;l=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[r>>2]&l)>>>(d[A>>0]|0))>>0]|0;break}case 2:{l=e[h>>1]|0;i=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[u>>0]|0))>>0]|0;f=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[C>>2]&l)>>>(d[w>>0]|0))>>0]|0;k=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[D>>2]&l)>>>(d[y>>0]|0))>>0]|0;l=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[r>>2]&l)>>>(d[A>>0]|0))>>0]|0;break}case 3:{i=a[h+((d[u>>0]|0)>>>3&255)>>0]|0;f=a[h+((d[w>>0]|0)>>>3&255)>>0]|0;k=a[h+((d[y>>0]|0)>>>3&255)>>0]|0;l=-1;break}case 4:{l=c[h>>2]|0;i=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[u>>0]|0))>>0]|0;f=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[C>>2]&l)>>>(d[w>>0]|0))>>0]|0;k=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[D>>2]&l)>>>(d[y>>0]|0))>>0]|0;l=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[r>>2]&l)>>>(d[A>>0]|0))>>0]|0;break}default:{i=0;f=0;k=0;l=0}}ea=i&255;fa=f&255;f=k&255;i=l&255;l=(((O(m-ea|0,p)|0)>>>0)/255|0)+ea|0;k=(((O(n-fa|0,p)|0)>>>0)/255|0)+fa|0;f=(((O(o-f|0,p)|0)>>>0)/255|0)+f|0;i=i+p-(((O(i,p)|0)>>>0)/255|0)|0;switch(Z<<24>>24){case 1:{a[h>>0]=k>>>(d[v>>0]|0)<<(d[w>>0]|0)|l>>>(d[t>>0]|0)<<(d[u>>0]|0)|f>>>(d[x>>0]|0)<<(d[y>>0]|0)|i>>>(d[z>>0]|0)<<(d[A>>0]|0);break c}case 2:{b[h>>1]=k>>>(d[v>>0]|0)<<(d[w>>0]|0)|l>>>(d[t>>0]|0)<<(d[u>>0]|0)|f>>>(d[x>>0]|0)<<(d[y>>0]|0)|i>>>(d[z>>0]|0)<<(d[A>>0]|0);break c}case 3:{a[h+((d[u>>0]|0)>>>3&255)>>0]=l;a[h+((d[w>>0]|0)>>>3&255)>>0]=k;a[h+((d[y>>0]|0)>>>3&255)>>0]=f;break c}case 4:{c[h>>2]=k>>>(d[v>>0]|0)<<(d[w>>0]|0)|l>>>(d[t>>0]|0)<<(d[u>>0]|0)|f>>>(d[x>>0]|0)<<(d[y>>0]|0)|i>>>(d[z>>0]|0)<<(d[A>>0]|0);break c}default:break c}}while(0);g=g+Y|0;h=h+_|0;i=38;continue}else if((i|0)==38){i=0;switch(X<<24>>24){case 1:{T=d[g>>0]|0;i=43;break}case 2:{T=e[g>>1]|0;i=43;break}case 3:{m=d[g+((d[G>>0]|0)>>>3&255)>>0]|0;n=d[g+((d[J>>0]|0)>>>3&255)>>0]|0;o=d[g+((d[M>>0]|0)>>>3&255)>>0]|0;p=255;i=44;break}case 4:{T=c[g>>2]|0;i=43;break}default:{}}if((i|0)==43?(i=0,ca=a[(c[18232+((d[N>>0]|0)<<2)>>2]|0)+((c[P>>2]&T)>>>(d[s>>0]|0))>>0]|0,ca<<24>>24):0){m=d[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[F>>2]&T)>>>(d[G>>0]|0))>>0]|0;n=d[(c[18232+((d[H>>0]|0)<<2)>>2]|0)+((c[I>>2]&T)>>>(d[J>>0]|0))>>0]|0;o=d[(c[18232+((d[K>>0]|0)<<2)>>2]|0)+((c[L>>2]&T)>>>(d[M>>0]|0))>>0]|0;p=ca&255;i=44}d:do if((i|0)==44){switch(Z<<24>>24){case 1:{l=d[h>>0]|0;i=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[u>>0]|0))>>0]|0;f=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[C>>2]&l)>>>(d[w>>0]|0))>>0]|0;k=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[D>>2]&l)>>>(d[y>>0]|0))>>0]|0;l=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[r>>2]&l)>>>(d[A>>0]|0))>>0]|0;break}case 2:{l=e[h>>1]|0;i=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[u>>0]|0))>>0]|0;f=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[C>>2]&l)>>>(d[w>>0]|0))>>0]|0;k=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[D>>2]&l)>>>(d[y>>0]|0))>>0]|0;l=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[r>>2]&l)>>>(d[A>>0]|0))>>0]|0;break}case 3:{i=a[h+((d[u>>0]|0)>>>3&255)>>0]|0;f=a[h+((d[w>>0]|0)>>>3&255)>>0]|0;k=a[h+((d[y>>0]|0)>>>3&255)>>0]|0;l=-1;break}case 4:{l=c[h>>2]|0;i=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[u>>0]|0))>>0]|0;f=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[C>>2]&l)>>>(d[w>>0]|0))>>0]|0;k=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[D>>2]&l)>>>(d[y>>0]|0))>>0]|0;l=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[r>>2]&l)>>>(d[A>>0]|0))>>0]|0;break}default:{i=0;f=0;k=0;l=0}}ea=i&255;fa=f&255;f=k&255;i=l&255;l=(((O(m-ea|0,p)|0)>>>0)/255|0)+ea|0;k=(((O(n-fa|0,p)|0)>>>0)/255|0)+fa|0;f=(((O(o-f|0,p)|0)>>>0)/255|0)+f|0;i=i+p-(((O(i,p)|0)>>>0)/255|0)|0;switch(Z<<24>>24){case 1:{a[h>>0]=k>>>(d[v>>0]|0)<<(d[w>>0]|0)|l>>>(d[t>>0]|0)<<(d[u>>0]|0)|f>>>(d[x>>0]|0)<<(d[y>>0]|0)|i>>>(d[z>>0]|0)<<(d[A>>0]|0);break d}case 2:{b[h>>1]=k>>>(d[v>>0]|0)<<(d[w>>0]|0)|l>>>(d[t>>0]|0)<<(d[u>>0]|0)|f>>>(d[x>>0]|0)<<(d[y>>0]|0)|i>>>(d[z>>0]|0)<<(d[A>>0]|0);break d}case 3:{a[h+((d[u>>0]|0)>>>3&255)>>0]=l;a[h+((d[w>>0]|0)>>>3&255)>>0]=k;a[h+((d[y>>0]|0)>>>3&255)>>0]=f;break d}case 4:{c[h>>2]=k>>>(d[v>>0]|0)<<(d[w>>0]|0)|l>>>(d[t>>0]|0)<<(d[u>>0]|0)|f>>>(d[x>>0]|0)<<(d[y>>0]|0)|i>>>(d[z>>0]|0)<<(d[A>>0]|0);break d}default:break d}}while(0);g=g+Y|0;h=h+_|0;i=55;continue}else if((i|0)==55){i=0;switch(X<<24>>24){case 1:{U=d[g>>0]|0;i=60;break}case 2:{U=e[g>>1]|0;i=60;break}case 3:{m=d[g+((d[G>>0]|0)>>>3&255)>>0]|0;n=d[g+((d[J>>0]|0)>>>3&255)>>0]|0;o=d[g+((d[M>>0]|0)>>>3&255)>>0]|0;p=255;i=61;break}case 4:{U=c[g>>2]|0;i=60;break}default:{}}if((i|0)==60?(i=0,V=a[(c[18232+((d[N>>0]|0)<<2)>>2]|0)+((c[P>>2]&U)>>>(d[s>>0]|0))>>0]|0,V<<24>>24):0){m=d[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[F>>2]&U)>>>(d[G>>0]|0))>>0]|0;n=d[(c[18232+((d[H>>0]|0)<<2)>>2]|0)+((c[I>>2]&U)>>>(d[J>>0]|0))>>0]|0;o=d[(c[18232+((d[K>>0]|0)<<2)>>2]|0)+((c[L>>2]&U)>>>(d[M>>0]|0))>>0]|0;p=V&255;i=61}e:do if((i|0)==61){switch(Z<<24>>24){case 1:{l=d[h>>0]|0;i=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[u>>0]|0))>>0]|0;f=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[C>>2]&l)>>>(d[w>>0]|0))>>0]|0;k=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[D>>2]&l)>>>(d[y>>0]|0))>>0]|0;l=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[r>>2]&l)>>>(d[A>>0]|0))>>0]|0;break}case 2:{l=e[h>>1]|0;i=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[u>>0]|0))>>0]|0;f=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[C>>2]&l)>>>(d[w>>0]|0))>>0]|0;k=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[D>>2]&l)>>>(d[y>>0]|0))>>0]|0;l=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[r>>2]&l)>>>(d[A>>0]|0))>>0]|0;break}case 3:{i=a[h+((d[u>>0]|0)>>>3&255)>>0]|0;f=a[h+((d[w>>0]|0)>>>3&255)>>0]|0;k=a[h+((d[y>>0]|0)>>>3&255)>>0]|0;l=-1;break}case 4:{l=c[h>>2]|0;i=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[u>>0]|0))>>0]|0;f=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[C>>2]&l)>>>(d[w>>0]|0))>>0]|0;k=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[D>>2]&l)>>>(d[y>>0]|0))>>0]|0;l=a[(c[18232+((d[z>>0]|0)<<2)>>2]|0)+((c[r>>2]&l)>>>(d[A>>0]|0))>>0]|0;break}default:{i=0;f=0;k=0;l=0}}ea=i&255;fa=f&255;f=k&255;i=l&255;l=(((O(m-ea|0,p)|0)>>>0)/255|0)+ea|0;k=(((O(n-fa|0,p)|0)>>>0)/255|0)+fa|0;f=(((O(o-f|0,p)|0)>>>0)/255|0)+f|0;i=i+p-(((O(i,p)|0)>>>0)/255|0)|0;switch(Z<<24>>24){case 1:{a[h>>0]=k>>>(d[v>>0]|0)<<(d[w>>0]|0)|l>>>(d[t>>0]|0)<<(d[u>>0]|0)|f>>>(d[x>>0]|0)<<(d[y>>0]|0)|i>>>(d[z>>0]|0)<<(d[A>>0]|0);break e}case 2:{b[h>>1]=k>>>(d[v>>0]|0)<<(d[w>>0]|0)|l>>>(d[t>>0]|0)<<(d[u>>0]|0)|f>>>(d[x>>0]|0)<<(d[y>>0]|0)|i>>>(d[z>>0]|0)<<(d[A>>0]|0);break e}case 3:{a[h+((d[u>>0]|0)>>>3&255)>>0]=l;a[h+((d[w>>0]|0)>>>3&255)>>0]=k;a[h+((d[y>>0]|0)>>>3&255)>>0]=f;break e}case 4:{c[h>>2]=k>>>(d[v>>0]|0)<<(d[w>>0]|0)|l>>>(d[t>>0]|0)<<(d[u>>0]|0)|f>>>(d[x>>0]|0)<<(d[y>>0]|0)|i>>>(d[z>>0]|0)<<(d[A>>0]|0);break e}default:break e}}while(0);g=g+Y|0;h=h+_|0;if((q|0)>1){q=q+-1|0;i=4;continue}else break}if(!j){i=74;break}else{g=g+ba|0;h=h+da|0}}if((i|0)!=72)if((i|0)==74)return}function FH(a){a=a|0;var d=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;d=c[a+24>>2]|0;f=c[a+28>>2]|0;o=c[a+16>>2]>>2;m=c[a+36>>2]>>1;if(!f)return;n=(d+3|0)/4|0;l=d&255;d=c[a>>2]|0;a=c[a+20>>2]|0;a:while(1){f=f+-1|0;switch(l&3){case 0:{k=n;j=d;d=4;break}case 3:{k=n;j=d;d=10;break}case 2:{k=n;j=d;d=16;break}case 1:{k=n;j=d;d=22;break}default:{d=28;break a}}while(1)if((d|0)==4){d=c[j>>2]|0;g=d>>>27;if(g|0){h=d>>>3&31;i=d>>>8&63488;if((g|0)==31)d=i|d>>>5&2016|h;else{p=e[a>>1]|0;p=(p<<16|p)&132184095;d=((O((d<<11&132120576|i|h)-p|0,g)|0)>>>5)+p&132184095;d=d>>>16|d}b[a>>1]=d}j=j+4|0;a=a+2|0;d=10;continue}else if((d|0)==10){d=c[j>>2]|0;g=d>>>27;if(g|0){h=d>>>8&63488;i=d>>>3&31;if((g|0)==31)d=h|d>>>5&2016|i;else{p=e[a>>1]|0;p=(p<<16|p)&132184095;d=((O((d<<11&132120576|h|i)-p|0,g)|0)>>>5)+p&132184095;d=d>>>16|d}b[a>>1]=d}j=j+4|0;a=a+2|0;d=16;continue}else if((d|0)==16){d=c[j>>2]|0;g=d>>>27;if(g|0){h=d>>>3&31;i=d>>>8&63488;if((g|0)==31)d=i|d>>>5&2016|h;else{p=e[a>>1]|0;p=(p<<16|p)&132184095;d=((O((d<<11&132120576|i|h)-p|0,g)|0)>>>5)+p&132184095;d=d>>>16|d}b[a>>1]=d}j=j+4|0;a=a+2|0;d=22;continue}else if((d|0)==22){d=c[j>>2]|0;g=d>>>27;if(g|0){h=d>>>8&63488;i=d>>>3&31;if((g|0)==31)d=h|d>>>5&2016|i;else{p=e[a>>1]|0;p=(p<<16|p)&132184095;d=((O((d<<11&132120576|h|i)-p|0,g)|0)>>>5)+p&132184095;d=d>>>16|d}b[a>>1]=d}d=j+4|0;a=a+2|0;if((k|0)>1){k=k+-1|0;j=d;d=4;continue}else break}if(!f){d=30;break}else{d=d+(o<<2)|0;a=a+(m<<1)|0}}if((d|0)!=28)if((d|0)==30)return}function GH(d){d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=a[d+63>>0]|0;if(f<<24>>24==-128){PH(d,-1058);return}g=c[d+24>>2]|0;n=c[d+28>>2]|0;i=c[d>>2]|0;p=c[d+16>>2]>>1;j=c[d+20>>2]|0;o=c[d+36>>2]>>1;m=(f&255)>>>3;h=n+-1|0;if(!n)return;n=(g+3|0)/4|0;l=g&255;if(!(l&3)){d=i;f=j;while(1){g=n;while(1){l=e[d>>1]|0;j=e[f>>1]|0;j=(j<<16|j)&65043487;j=((O(((l<<16|l)&65043487)-j|0,m)|0)>>>5)+j&65043487;l=f+2|0;b[f>>1]=j>>>16|j;j=e[d+2>>1]|0;k=e[l>>1]|0;k=(k<<16|k)&65043487;k=((O(((j<<16|j)&65043487)-k|0,m)|0)>>>5)+k&65043487;j=f+4|0;b[l>>1]=k>>>16|k;l=e[d+4>>1]|0;k=e[j>>1]|0;k=(k<<16|k)&65043487;k=((O(((l<<16|l)&65043487)-k|0,m)|0)>>>5)+k&65043487;l=f+6|0;b[j>>1]=k>>>16|k;j=d;d=d+8|0;j=e[j+6>>1]|0;k=e[l>>1]|0;k=(k<<16|k)&65043487;k=((O(((j<<16|j)&65043487)-k|0,m)|0)>>>5)+k&65043487;f=f+8|0;b[l>>1]=k>>>16|k;if((g|0)<=1)break;else g=g+-1|0}if(!h)break;else{d=d+(p<<1)|0;f=f+(o<<1)|0;h=h+-1|0}}return}else d=j;a:while(1){switch(l&3){case 1:{j=n;g=d;k=12;break}case 3:{f=n;k=10;break}case 2:{f=n;k=11;break}default:{k=13;break a}}while(1)if((k|0)==10){g=e[i>>1]|0;j=e[d>>1]|0;j=(j<<16|j)&65043487;j=((O(((g<<16|g)&65043487)-j|0,m)|0)>>>5)+j&65043487;b[d>>1]=j>>>16|j;i=i+2|0;d=d+2|0;k=11;continue}else if((k|0)==11){g=e[i>>1]|0;j=e[d>>1]|0;j=(j<<16|j)&65043487;j=((O(((g<<16|g)&65043487)-j|0,m)|0)>>>5)+j&65043487;b[d>>1]=j>>>16|j;j=f;i=i+2|0;g=d+2|0;k=12;continue}else if((k|0)==12){d=i+2|0;f=e[i>>1]|0;k=e[g>>1]|0;k=(k<<16|k)&65043487;k=((O(((f<<16|f)&65043487)-k|0,m)|0)>>>5)+k&65043487;f=g+2|0;b[g>>1]=k>>>16|k;if((j|0)<=1)break;k=e[d>>1]|0;d=e[f>>1]|0;d=(d<<16|d)&65043487;d=((O(((k<<16|k)&65043487)-d|0,m)|0)>>>5)+d&65043487;b[f>>1]=d>>>16|d;f=j+-1|0;i=i+4|0;d=g+4|0;k=10;continue}if(!h){k=15;break}else{i=d+(p<<1)|0;d=f+(o<<1)|0;h=h+-1|0}}if((k|0)!=13)if((k|0)==15)return}function HH(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0;g=c[f+24>>2]|0;j=c[f+28>>2]|0;T=c[f+16>>2]|0;U=c[f+36>>2]|0;i=c[f+40>>2]|0;h=c[f+44>>2]|0;M=a[i+9>>0]|0;N=M&255;P=a[h+9>>0]|0;Q=P&255;S=a[f+63>>0]|0;R=S&255;if(S<<24>>24==0|(j|0)==0)return;S=(g+3|0)/4|0;L=g&255;A=h+28|0;B=h+32|0;C=h+29|0;D=h+33|0;E=h+30|0;F=h+34|0;G=h+31|0;H=h+35|0;I=h+12|0;J=h+16|0;K=h+20|0;r=h+24|0;s=i+28|0;t=i+12|0;u=i+32|0;v=i+29|0;w=i+16|0;x=i+33|0;y=i+30|0;z=i+20|0;q=i+34|0;g=c[f>>2]|0;h=c[f+20>>2]|0;a:while(1){j=j+-1|0;switch(L&3){case 0:{p=S;l=4;break}case 3:{p=S;l=21;break}case 2:{p=S;l=38;break}case 1:{p=S;l=55;break}default:{l=72;break a}}while(1)if((l|0)==4){l=0;switch(M<<24>>24){case 1:{k=d[g>>0]|0;i=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&k)>>>(d[u>>0]|0))|0;f=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&k)>>>(d[x>>0]|0))|0;k=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&k)>>>(d[q>>0]|0))|0;l=9;break}case 2:{k=e[g>>1]|0;i=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&k)>>>(d[u>>0]|0))|0;f=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&k)>>>(d[x>>0]|0))|0;k=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&k)>>>(d[q>>0]|0))|0;l=9;break}case 3:{i=g+((d[u>>0]|0)>>>3&255)|0;f=g+((d[x>>0]|0)>>>3&255)|0;k=g+((d[q>>0]|0)>>>3&255)|0;l=9;break}case 4:{k=c[g>>2]|0;i=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&k)>>>(d[u>>0]|0))|0;f=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&k)>>>(d[x>>0]|0))|0;k=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&k)>>>(d[q>>0]|0))|0;l=9;break}default:{i=0;f=0;k=0}}if((l|0)==9){i=a[i>>0]|0;f=a[f>>0]|0;k=a[k>>0]|0}m=i&255;n=f&255;o=k&255;switch(P<<24>>24){case 1:{l=d[h>>0]|0;i=a[(c[18232+((d[A>>0]|0)<<2)>>2]|0)+((c[I>>2]&l)>>>(d[B>>0]|0))>>0]|0;f=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[J>>2]&l)>>>(d[D>>0]|0))>>0]|0;k=a[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[K>>2]&l)>>>(d[F>>0]|0))>>0]|0;l=a[(c[18232+((d[G>>0]|0)<<2)>>2]|0)+((c[r>>2]&l)>>>(d[H>>0]|0))>>0]|0;break}case 2:{l=e[h>>1]|0;i=a[(c[18232+((d[A>>0]|0)<<2)>>2]|0)+((c[I>>2]&l)>>>(d[B>>0]|0))>>0]|0;f=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[J>>2]&l)>>>(d[D>>0]|0))>>0]|0;k=a[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[K>>2]&l)>>>(d[F>>0]|0))>>0]|0;l=a[(c[18232+((d[G>>0]|0)<<2)>>2]|0)+((c[r>>2]&l)>>>(d[H>>0]|0))>>0]|0;break}case 3:{i=a[h+((d[B>>0]|0)>>>3&255)>>0]|0;f=a[h+((d[D>>0]|0)>>>3&255)>>0]|0;k=a[h+((d[F>>0]|0)>>>3&255)>>0]|0;l=-1;break}case 4:{l=c[h>>2]|0;i=a[(c[18232+((d[A>>0]|0)<<2)>>2]|0)+((c[I>>2]&l)>>>(d[B>>0]|0))>>0]|0;f=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[J>>2]&l)>>>(d[D>>0]|0))>>0]|0;k=a[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[K>>2]&l)>>>(d[F>>0]|0))>>0]|0;l=a[(c[18232+((d[G>>0]|0)<<2)>>2]|0)+((c[r>>2]&l)>>>(d[H>>0]|0))>>0]|0;break}default:{i=0;f=0;k=0;l=0}}W=i&255;V=f&255;i=k&255;f=l&255;l=(((O(m-W|0,R)|0)>>>0)/255|0)+W|0;k=(((O(n-V|0,R)|0)>>>0)/255|0)+V|0;i=(((O(o-i|0,R)|0)>>>0)/255|0)+i|0;f=f+R-(((O(f,R)|0)>>>0)/255|0)|0;switch(P<<24>>24){case 1:{a[h>>0]=k>>>(d[C>>0]|0)<<(d[D>>0]|0)|l>>>(d[A>>0]|0)<<(d[B>>0]|0)|i>>>(d[E>>0]|0)<<(d[F>>0]|0)|f>>>(d[G>>0]|0)<<(d[H>>0]|0);break}case 2:{b[h>>1]=k>>>(d[C>>0]|0)<<(d[D>>0]|0)|l>>>(d[A>>0]|0)<<(d[B>>0]|0)|i>>>(d[E>>0]|0)<<(d[F>>0]|0)|f>>>(d[G>>0]|0)<<(d[H>>0]|0);break}case 3:{a[h+((d[B>>0]|0)>>>3&255)>>0]=l;a[h+((d[D>>0]|0)>>>3&255)>>0]=k;a[h+((d[F>>0]|0)>>>3&255)>>0]=i;break}case 4:{c[h>>2]=k>>>(d[C>>0]|0)<<(d[D>>0]|0)|l>>>(d[A>>0]|0)<<(d[B>>0]|0)|i>>>(d[E>>0]|0)<<(d[F>>0]|0)|f>>>(d[G>>0]|0)<<(d[H>>0]|0);break}default:{}}g=g+N|0;h=h+Q|0;l=21;continue}else if((l|0)==21){l=0;switch(M<<24>>24){case 1:{k=d[g>>0]|0;i=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&k)>>>(d[u>>0]|0))|0;f=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&k)>>>(d[x>>0]|0))|0;k=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&k)>>>(d[q>>0]|0))|0;l=26;break}case 2:{k=e[g>>1]|0;i=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&k)>>>(d[u>>0]|0))|0;f=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&k)>>>(d[x>>0]|0))|0;k=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&k)>>>(d[q>>0]|0))|0;l=26;break}case 3:{i=g+((d[u>>0]|0)>>>3&255)|0;f=g+((d[x>>0]|0)>>>3&255)|0;k=g+((d[q>>0]|0)>>>3&255)|0;l=26;break}case 4:{k=c[g>>2]|0;i=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&k)>>>(d[u>>0]|0))|0;f=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&k)>>>(d[x>>0]|0))|0;k=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&k)>>>(d[q>>0]|0))|0;l=26;break}default:{i=0;f=0;k=0}}if((l|0)==26){i=a[i>>0]|0;f=a[f>>0]|0;k=a[k>>0]|0}m=i&255;n=f&255;o=k&255;switch(P<<24>>24){case 1:{l=d[h>>0]|0;i=a[(c[18232+((d[A>>0]|0)<<2)>>2]|0)+((c[I>>2]&l)>>>(d[B>>0]|0))>>0]|0;f=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[J>>2]&l)>>>(d[D>>0]|0))>>0]|0;k=a[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[K>>2]&l)>>>(d[F>>0]|0))>>0]|0;l=a[(c[18232+((d[G>>0]|0)<<2)>>2]|0)+((c[r>>2]&l)>>>(d[H>>0]|0))>>0]|0;break}case 2:{l=e[h>>1]|0;i=a[(c[18232+((d[A>>0]|0)<<2)>>2]|0)+((c[I>>2]&l)>>>(d[B>>0]|0))>>0]|0;f=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[J>>2]&l)>>>(d[D>>0]|0))>>0]|0;k=a[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[K>>2]&l)>>>(d[F>>0]|0))>>0]|0;l=a[(c[18232+((d[G>>0]|0)<<2)>>2]|0)+((c[r>>2]&l)>>>(d[H>>0]|0))>>0]|0;break}case 3:{i=a[h+((d[B>>0]|0)>>>3&255)>>0]|0;f=a[h+((d[D>>0]|0)>>>3&255)>>0]|0;k=a[h+((d[F>>0]|0)>>>3&255)>>0]|0;l=-1;break}case 4:{l=c[h>>2]|0;i=a[(c[18232+((d[A>>0]|0)<<2)>>2]|0)+((c[I>>2]&l)>>>(d[B>>0]|0))>>0]|0;f=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[J>>2]&l)>>>(d[D>>0]|0))>>0]|0;k=a[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[K>>2]&l)>>>(d[F>>0]|0))>>0]|0;l=a[(c[18232+((d[G>>0]|0)<<2)>>2]|0)+((c[r>>2]&l)>>>(d[H>>0]|0))>>0]|0;break}default:{i=0;f=0;k=0;l=0}}V=i&255;W=f&255;i=k&255;f=l&255;l=(((O(m-V|0,R)|0)>>>0)/255|0)+V|0;k=(((O(n-W|0,R)|0)>>>0)/255|0)+W|0;i=(((O(o-i|0,R)|0)>>>0)/255|0)+i|0;f=f+R-(((O(f,R)|0)>>>0)/255|0)|0;switch(P<<24>>24){case 1:{a[h>>0]=k>>>(d[C>>0]|0)<<(d[D>>0]|0)|l>>>(d[A>>0]|0)<<(d[B>>0]|0)|i>>>(d[E>>0]|0)<<(d[F>>0]|0)|f>>>(d[G>>0]|0)<<(d[H>>0]|0);break}case 2:{b[h>>1]=k>>>(d[C>>0]|0)<<(d[D>>0]|0)|l>>>(d[A>>0]|0)<<(d[B>>0]|0)|i>>>(d[E>>0]|0)<<(d[F>>0]|0)|f>>>(d[G>>0]|0)<<(d[H>>0]|0);break}case 3:{a[h+((d[B>>0]|0)>>>3&255)>>0]=l;a[h+((d[D>>0]|0)>>>3&255)>>0]=k;a[h+((d[F>>0]|0)>>>3&255)>>0]=i;break}case 4:{c[h>>2]=k>>>(d[C>>0]|0)<<(d[D>>0]|0)|l>>>(d[A>>0]|0)<<(d[B>>0]|0)|i>>>(d[E>>0]|0)<<(d[F>>0]|0)|f>>>(d[G>>0]|0)<<(d[H>>0]|0);break}default:{}}g=g+N|0;h=h+Q|0;l=38;continue}else if((l|0)==38){l=0;switch(M<<24>>24){case 1:{k=d[g>>0]|0;i=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&k)>>>(d[u>>0]|0))|0;f=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&k)>>>(d[x>>0]|0))|0;k=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&k)>>>(d[q>>0]|0))|0;l=43;break}case 2:{k=e[g>>1]|0;i=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&k)>>>(d[u>>0]|0))|0;f=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&k)>>>(d[x>>0]|0))|0;k=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&k)>>>(d[q>>0]|0))|0;l=43;break}case 3:{i=g+((d[u>>0]|0)>>>3&255)|0;f=g+((d[x>>0]|0)>>>3&255)|0;k=g+((d[q>>0]|0)>>>3&255)|0;l=43;break}case 4:{k=c[g>>2]|0;i=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&k)>>>(d[u>>0]|0))|0;f=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&k)>>>(d[x>>0]|0))|0;k=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&k)>>>(d[q>>0]|0))|0;l=43;break}default:{i=0;f=0;k=0}}if((l|0)==43){i=a[i>>0]|0;f=a[f>>0]|0;k=a[k>>0]|0}m=i&255;n=f&255;o=k&255;switch(P<<24>>24){case 1:{l=d[h>>0]|0;i=a[(c[18232+((d[A>>0]|0)<<2)>>2]|0)+((c[I>>2]&l)>>>(d[B>>0]|0))>>0]|0;f=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[J>>2]&l)>>>(d[D>>0]|0))>>0]|0;k=a[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[K>>2]&l)>>>(d[F>>0]|0))>>0]|0;l=a[(c[18232+((d[G>>0]|0)<<2)>>2]|0)+((c[r>>2]&l)>>>(d[H>>0]|0))>>0]|0;break}case 2:{l=e[h>>1]|0;i=a[(c[18232+((d[A>>0]|0)<<2)>>2]|0)+((c[I>>2]&l)>>>(d[B>>0]|0))>>0]|0;f=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[J>>2]&l)>>>(d[D>>0]|0))>>0]|0;k=a[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[K>>2]&l)>>>(d[F>>0]|0))>>0]|0;l=a[(c[18232+((d[G>>0]|0)<<2)>>2]|0)+((c[r>>2]&l)>>>(d[H>>0]|0))>>0]|0;break}case 3:{i=a[h+((d[B>>0]|0)>>>3&255)>>0]|0;f=a[h+((d[D>>0]|0)>>>3&255)>>0]|0;k=a[h+((d[F>>0]|0)>>>3&255)>>0]|0;l=-1;break}case 4:{l=c[h>>2]|0;i=a[(c[18232+((d[A>>0]|0)<<2)>>2]|0)+((c[I>>2]&l)>>>(d[B>>0]|0))>>0]|0;f=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[J>>2]&l)>>>(d[D>>0]|0))>>0]|0;k=a[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[K>>2]&l)>>>(d[F>>0]|0))>>0]|0;l=a[(c[18232+((d[G>>0]|0)<<2)>>2]|0)+((c[r>>2]&l)>>>(d[H>>0]|0))>>0]|0;break}default:{i=0;f=0;k=0;l=0}}V=i&255;W=f&255;i=k&255;f=l&255;l=(((O(m-V|0,R)|0)>>>0)/255|0)+V|0;k=(((O(n-W|0,R)|0)>>>0)/255|0)+W|0;i=(((O(o-i|0,R)|0)>>>0)/255|0)+i|0;f=f+R-(((O(f,R)|0)>>>0)/255|0)|0;switch(P<<24>>24){case 1:{a[h>>0]=k>>>(d[C>>0]|0)<<(d[D>>0]|0)|l>>>(d[A>>0]|0)<<(d[B>>0]|0)|i>>>(d[E>>0]|0)<<(d[F>>0]|0)|f>>>(d[G>>0]|0)<<(d[H>>0]|0);break}case 2:{b[h>>1]=k>>>(d[C>>0]|0)<<(d[D>>0]|0)|l>>>(d[A>>0]|0)<<(d[B>>0]|0)|i>>>(d[E>>0]|0)<<(d[F>>0]|0)|f>>>(d[G>>0]|0)<<(d[H>>0]|0);break}case 3:{a[h+((d[B>>0]|0)>>>3&255)>>0]=l;a[h+((d[D>>0]|0)>>>3&255)>>0]=k;a[h+((d[F>>0]|0)>>>3&255)>>0]=i;break}case 4:{c[h>>2]=k>>>(d[C>>0]|0)<<(d[D>>0]|0)|l>>>(d[A>>0]|0)<<(d[B>>0]|0)|i>>>(d[E>>0]|0)<<(d[F>>0]|0)|f>>>(d[G>>0]|0)<<(d[H>>0]|0);break}default:{}}g=g+N|0;h=h+Q|0;l=55;continue}else if((l|0)==55){l=0;switch(M<<24>>24){case 1:{k=d[g>>0]|0;i=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&k)>>>(d[u>>0]|0))|0;f=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&k)>>>(d[x>>0]|0))|0;k=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&k)>>>(d[q>>0]|0))|0;l=60;break}case 2:{k=e[g>>1]|0;i=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&k)>>>(d[u>>0]|0))|0;f=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&k)>>>(d[x>>0]|0))|0;k=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&k)>>>(d[q>>0]|0))|0;l=60;break}case 3:{i=g+((d[u>>0]|0)>>>3&255)|0;f=g+((d[x>>0]|0)>>>3&255)|0;k=g+((d[q>>0]|0)>>>3&255)|0;l=60;break}case 4:{k=c[g>>2]|0;i=(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&k)>>>(d[u>>0]|0))|0;f=(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&k)>>>(d[x>>0]|0))|0;k=(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&k)>>>(d[q>>0]|0))|0;l=60;break}default:{i=0;f=0;k=0}}if((l|0)==60){i=a[i>>0]|0;f=a[f>>0]|0;k=a[k>>0]|0}m=i&255;n=f&255;o=k&255;switch(P<<24>>24){case 1:{l=d[h>>0]|0;i=a[(c[18232+((d[A>>0]|0)<<2)>>2]|0)+((c[I>>2]&l)>>>(d[B>>0]|0))>>0]|0;f=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[J>>2]&l)>>>(d[D>>0]|0))>>0]|0;k=a[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[K>>2]&l)>>>(d[F>>0]|0))>>0]|0;l=a[(c[18232+((d[G>>0]|0)<<2)>>2]|0)+((c[r>>2]&l)>>>(d[H>>0]|0))>>0]|0;break}case 2:{l=e[h>>1]|0;i=a[(c[18232+((d[A>>0]|0)<<2)>>2]|0)+((c[I>>2]&l)>>>(d[B>>0]|0))>>0]|0;f=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[J>>2]&l)>>>(d[D>>0]|0))>>0]|0;k=a[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[K>>2]&l)>>>(d[F>>0]|0))>>0]|0;l=a[(c[18232+((d[G>>0]|0)<<2)>>2]|0)+((c[r>>2]&l)>>>(d[H>>0]|0))>>0]|0;break}case 3:{i=a[h+((d[B>>0]|0)>>>3&255)>>0]|0;f=a[h+((d[D>>0]|0)>>>3&255)>>0]|0;k=a[h+((d[F>>0]|0)>>>3&255)>>0]|0;l=-1;break}case 4:{l=c[h>>2]|0;i=a[(c[18232+((d[A>>0]|0)<<2)>>2]|0)+((c[I>>2]&l)>>>(d[B>>0]|0))>>0]|0;f=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[J>>2]&l)>>>(d[D>>0]|0))>>0]|0;k=a[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[K>>2]&l)>>>(d[F>>0]|0))>>0]|0;l=a[(c[18232+((d[G>>0]|0)<<2)>>2]|0)+((c[r>>2]&l)>>>(d[H>>0]|0))>>0]|0;break}default:{i=0;f=0;k=0;l=0}}V=i&255;W=f&255;i=k&255;f=l&255;l=(((O(m-V|0,R)|0)>>>0)/255|0)+V|0;k=(((O(n-W|0,R)|0)>>>0)/255|0)+W|0;i=(((O(o-i|0,R)|0)>>>0)/255|0)+i|0;f=f+R-(((O(f,R)|0)>>>0)/255|0)|0;switch(P<<24>>24){case 1:{a[h>>0]=k>>>(d[C>>0]|0)<<(d[D>>0]|0)|l>>>(d[A>>0]|0)<<(d[B>>0]|0)|i>>>(d[E>>0]|0)<<(d[F>>0]|0)|f>>>(d[G>>0]|0)<<(d[H>>0]|0);break}case 2:{b[h>>1]=k>>>(d[C>>0]|0)<<(d[D>>0]|0)|l>>>(d[A>>0]|0)<<(d[B>>0]|0)|i>>>(d[E>>0]|0)<<(d[F>>0]|0)|f>>>(d[G>>0]|0)<<(d[H>>0]|0);break}case 3:{a[h+((d[B>>0]|0)>>>3&255)>>0]=l;a[h+((d[D>>0]|0)>>>3&255)>>0]=k;a[h+((d[F>>0]|0)>>>3&255)>>0]=i;break}case 4:{c[h>>2]=k>>>(d[C>>0]|0)<<(d[D>>0]|0)|l>>>(d[A>>0]|0)<<(d[B>>0]|0)|i>>>(d[E>>0]|0)<<(d[F>>0]|0)|f>>>(d[G>>0]|0)<<(d[H>>0]|0);break}default:{}}g=g+N|0;h=h+Q|0;if((p|0)>1){p=p+-1|0;l=4;continue}else break}if(!j){l=74;break}else{g=g+T|0;h=h+U|0}}if((l|0)!=72)if((l|0)==74)return}function IH(d){d=d|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;f=a[d+63>>0]|0;if(f<<24>>24==-128){PH(d,-2082);return}g=c[d+24>>2]|0;n=c[d+28>>2]|0;i=c[d>>2]|0;p=c[d+16>>2]>>1;j=c[d+20>>2]|0;o=c[d+36>>2]>>1;m=(f&255)>>>3;h=n+-1|0;if(!n)return;n=(g+3|0)/4|0;l=g&255;if(!(l&3)){d=i;f=j;while(1){g=n;while(1){l=e[d>>1]|0;j=e[f>>1]|0;j=(j<<16|j)&132184095;j=((O(((l<<16|l)&132184095)-j|0,m)|0)>>>5)+j&132184095;l=f+2|0;b[f>>1]=j>>>16|j;j=e[d+2>>1]|0;k=e[l>>1]|0;k=(k<<16|k)&132184095;k=((O(((j<<16|j)&132184095)-k|0,m)|0)>>>5)+k&132184095;j=f+4|0;b[l>>1]=k>>>16|k;l=e[d+4>>1]|0;k=e[j>>1]|0;k=(k<<16|k)&132184095;k=((O(((l<<16|l)&132184095)-k|0,m)|0)>>>5)+k&132184095;l=f+6|0;b[j>>1]=k>>>16|k;j=d;d=d+8|0;j=e[j+6>>1]|0;k=e[l>>1]|0;k=(k<<16|k)&132184095;k=((O(((j<<16|j)&132184095)-k|0,m)|0)>>>5)+k&132184095;f=f+8|0;b[l>>1]=k>>>16|k;if((g|0)<=1)break;else g=g+-1|0}if(!h)break;else{d=d+(p<<1)|0;f=f+(o<<1)|0;h=h+-1|0}}return}else d=j;a:while(1){switch(l&3){case 1:{j=n;g=d;k=12;break}case 3:{f=n;k=10;break}case 2:{f=n;k=11;break}default:{k=13;break a}}while(1)if((k|0)==10){g=e[i>>1]|0;j=e[d>>1]|0;j=(j<<16|j)&132184095;j=((O(((g<<16|g)&132184095)-j|0,m)|0)>>>5)+j&132184095;b[d>>1]=j>>>16|j;i=i+2|0;d=d+2|0;k=11;continue}else if((k|0)==11){g=e[i>>1]|0;j=e[d>>1]|0;j=(j<<16|j)&132184095;j=((O(((g<<16|g)&132184095)-j|0,m)|0)>>>5)+j&132184095;b[d>>1]=j>>>16|j;j=f;i=i+2|0;g=d+2|0;k=12;continue}else if((k|0)==12){d=i+2|0;f=e[i>>1]|0;k=e[g>>1]|0;k=(k<<16|k)&132184095;k=((O(((f<<16|f)&132184095)-k|0,m)|0)>>>5)+k&132184095;f=g+2|0;b[g>>1]=k>>>16|k;if((j|0)<=1)break;k=e[d>>1]|0;d=e[f>>1]|0;d=(d<<16|d)&132184095;d=((O(((k<<16|k)&132184095)-d|0,m)|0)>>>5)+d&132184095;b[f>>1]=d>>>16|d;f=j+-1|0;i=i+4|0;d=g+4|0;k=10;continue}if(!h){k=15;break}else{i=d+(p<<1)|0;d=f+(o<<1)|0;h=h+-1|0}}if((k|0)!=13)if((k|0)==15)return}function JH(b){b=b|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0;f=c[b+24>>2]|0;h=c[b+28>>2]|0;G=c[b+16>>2]|0;H=c[b+36>>2]|0;A=c[b+48>>2]|0;g=c[b+40>>2]|0;B=a[g+9>>0]|0;C=B&255;D=c[b+56>>2]|0;E=d[b+63>>0]|0;if(!h)return;F=(f+7|0)/8|0;z=f&255;p=(c[b+44>>2]|0)+4|0;q=(A|0)==0;r=g+28|0;s=g+12|0;t=g+32|0;u=g+29|0;v=g+16|0;w=g+33|0;x=g+30|0;y=g+20|0;o=g+34|0;f=c[b>>2]|0;g=c[b+20>>2]|0;a:while(1){h=h+-1|0;switch(z&7){case 0:{m=F;l=f;n=4;break}case 7:{m=F;l=f;n=16;break}case 6:{m=F;l=f;n=28;break}case 5:{m=F;l=f;n=40;break}case 4:{m=F;l=f;n=52;break}case 3:{m=F;l=f;n=64;break}case 2:{m=F;l=f;n=76;break}case 1:{m=F;l=f;n=88;break}default:{n=100;break a}}while(1)if((n|0)==4){n=0;switch(B<<24>>24){case 1:{b=d[l>>0]|0;i=(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[v>>2]&b)>>>(d[w>>0]|0))|0;j=(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[s>>2]&b)>>>(d[t>>0]|0))|0;f=b;b=(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[y>>2]&b)>>>(d[o>>0]|0))|0;n=9;break}case 2:{b=e[l>>1]|0;i=(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[v>>2]&b)>>>(d[w>>0]|0))|0;j=(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[s>>2]&b)>>>(d[t>>0]|0))|0;f=b;b=(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[y>>2]&b)>>>(d[o>>0]|0))|0;n=9;break}case 3:{i=l+((d[w>>0]|0)>>>3&255)|0;j=l+((d[t>>0]|0)>>>3&255)|0;f=0;b=l+((d[o>>0]|0)>>>3&255)|0;n=9;break}case 4:{b=c[l>>2]|0;i=(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[v>>2]&b)>>>(d[w>>0]|0))|0;j=(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[s>>2]&b)>>>(d[t>>0]|0))|0;f=b;b=(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[y>>2]&b)>>>(d[o>>0]|0))|0;n=9;break}default:{k=0;i=0;b=0;f=0}}if((n|0)==9){k=a[b>>0]|0;i=a[i>>0]|0;b=a[j>>0]|0}if((f|0)!=(D|0)){I=c[(c[p>>2]|0)+4>>2]|0;f=d[g>>0]|0;n=d[I+(f<<2)>>0]|0;j=d[I+(f<<2)+1>>0]|0;f=d[I+(f<<2)+2>>0]|0;f=((((O((i&255)-j|0,E)|0)>>>0)/255|0)+j|0)>>>3&28|(((O((b&255)-n|0,E)|0)>>>0)/255|0)+n&224|((((O((k&255)-f|0,E)|0)>>>0)/255|0)+f|0)>>>6&3;if(q)f=f&255;else f=a[A+f>>0]|0;a[g>>0]=f}l=l+C|0;g=g+1|0;n=16;continue}else if((n|0)==16){n=0;switch(B<<24>>24){case 1:{b=d[l>>0]|0;i=(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[v>>2]&b)>>>(d[w>>0]|0))|0;j=(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[s>>2]&b)>>>(d[t>>0]|0))|0;f=b;b=(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[y>>2]&b)>>>(d[o>>0]|0))|0;n=21;break}case 2:{b=e[l>>1]|0;i=(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[v>>2]&b)>>>(d[w>>0]|0))|0;j=(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[s>>2]&b)>>>(d[t>>0]|0))|0;f=b;b=(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[y>>2]&b)>>>(d[o>>0]|0))|0;n=21;break}case 3:{i=l+((d[w>>0]|0)>>>3&255)|0;j=l+((d[t>>0]|0)>>>3&255)|0;f=0;b=l+((d[o>>0]|0)>>>3&255)|0;n=21;break}case 4:{b=c[l>>2]|0;i=(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[v>>2]&b)>>>(d[w>>0]|0))|0;j=(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[s>>2]&b)>>>(d[t>>0]|0))|0;f=b;b=(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[y>>2]&b)>>>(d[o>>0]|0))|0;n=21;break}default:{k=0;i=0;b=0;f=0}}if((n|0)==21){k=a[b>>0]|0;i=a[i>>0]|0;b=a[j>>0]|0}if((f|0)!=(D|0)){j=c[(c[p>>2]|0)+4>>2]|0;f=d[g>>0]|0;I=d[j+(f<<2)>>0]|0;n=d[j+(f<<2)+1>>0]|0;f=d[j+(f<<2)+2>>0]|0;f=((((O((i&255)-n|0,E)|0)>>>0)/255|0)+n|0)>>>3&28|(((O((b&255)-I|0,E)|0)>>>0)/255|0)+I&224|((((O((k&255)-f|0,E)|0)>>>0)/255|0)+f|0)>>>6&3;if(q)f=f&255;else f=a[A+f>>0]|0;a[g>>0]=f}l=l+C|0;g=g+1|0;n=28;continue}else if((n|0)==28){n=0;switch(B<<24>>24){case 1:{b=d[l>>0]|0;i=(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[v>>2]&b)>>>(d[w>>0]|0))|0;j=(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[s>>2]&b)>>>(d[t>>0]|0))|0;f=b;b=(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[y>>2]&b)>>>(d[o>>0]|0))|0;n=33;break}case 2:{b=e[l>>1]|0;i=(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[v>>2]&b)>>>(d[w>>0]|0))|0;j=(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[s>>2]&b)>>>(d[t>>0]|0))|0;f=b;b=(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[y>>2]&b)>>>(d[o>>0]|0))|0;n=33;break}case 3:{i=l+((d[w>>0]|0)>>>3&255)|0;j=l+((d[t>>0]|0)>>>3&255)|0;f=0;b=l+((d[o>>0]|0)>>>3&255)|0;n=33;break}case 4:{b=c[l>>2]|0;i=(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[v>>2]&b)>>>(d[w>>0]|0))|0;j=(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[s>>2]&b)>>>(d[t>>0]|0))|0;f=b;b=(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[y>>2]&b)>>>(d[o>>0]|0))|0;n=33;break}default:{k=0;i=0;b=0;f=0}}if((n|0)==33){k=a[b>>0]|0;i=a[i>>0]|0;b=a[j>>0]|0}if((f|0)!=(D|0)){j=c[(c[p>>2]|0)+4>>2]|0;f=d[g>>0]|0;I=d[j+(f<<2)>>0]|0;n=d[j+(f<<2)+1>>0]|0;f=d[j+(f<<2)+2>>0]|0;f=((((O((i&255)-n|0,E)|0)>>>0)/255|0)+n|0)>>>3&28|(((O((b&255)-I|0,E)|0)>>>0)/255|0)+I&224|((((O((k&255)-f|0,E)|0)>>>0)/255|0)+f|0)>>>6&3;if(q)f=f&255;else f=a[A+f>>0]|0;a[g>>0]=f}l=l+C|0;g=g+1|0;n=40;continue}else if((n|0)==40){n=0;switch(B<<24>>24){case 1:{b=d[l>>0]|0;i=(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[v>>2]&b)>>>(d[w>>0]|0))|0;j=(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[s>>2]&b)>>>(d[t>>0]|0))|0;f=b;b=(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[y>>2]&b)>>>(d[o>>0]|0))|0;n=45;break}case 2:{b=e[l>>1]|0;i=(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[v>>2]&b)>>>(d[w>>0]|0))|0;j=(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[s>>2]&b)>>>(d[t>>0]|0))|0;f=b;b=(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[y>>2]&b)>>>(d[o>>0]|0))|0;n=45;break}case 3:{i=l+((d[w>>0]|0)>>>3&255)|0;j=l+((d[t>>0]|0)>>>3&255)|0;f=0;b=l+((d[o>>0]|0)>>>3&255)|0;n=45;break}case 4:{b=c[l>>2]|0;i=(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[v>>2]&b)>>>(d[w>>0]|0))|0;j=(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[s>>2]&b)>>>(d[t>>0]|0))|0;f=b;b=(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[y>>2]&b)>>>(d[o>>0]|0))|0;n=45;break}default:{k=0;i=0;b=0;f=0}}if((n|0)==45){k=a[b>>0]|0;i=a[i>>0]|0;b=a[j>>0]|0}if((f|0)!=(D|0)){j=c[(c[p>>2]|0)+4>>2]|0;f=d[g>>0]|0;I=d[j+(f<<2)>>0]|0;n=d[j+(f<<2)+1>>0]|0;f=d[j+(f<<2)+2>>0]|0;f=((((O((i&255)-n|0,E)|0)>>>0)/255|0)+n|0)>>>3&28|(((O((b&255)-I|0,E)|0)>>>0)/255|0)+I&224|((((O((k&255)-f|0,E)|0)>>>0)/255|0)+f|0)>>>6&3;if(q)f=f&255;else f=a[A+f>>0]|0;a[g>>0]=f}l=l+C|0;g=g+1|0;n=52;continue}else if((n|0)==52){n=0;switch(B<<24>>24){case 1:{b=d[l>>0]|0;i=(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[v>>2]&b)>>>(d[w>>0]|0))|0;j=(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[s>>2]&b)>>>(d[t>>0]|0))|0;f=b;b=(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[y>>2]&b)>>>(d[o>>0]|0))|0;n=57;break}case 2:{b=e[l>>1]|0;i=(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[v>>2]&b)>>>(d[w>>0]|0))|0;j=(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[s>>2]&b)>>>(d[t>>0]|0))|0;f=b;b=(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[y>>2]&b)>>>(d[o>>0]|0))|0;n=57;break}case 3:{i=l+((d[w>>0]|0)>>>3&255)|0;j=l+((d[t>>0]|0)>>>3&255)|0;f=0;b=l+((d[o>>0]|0)>>>3&255)|0;n=57;break}case 4:{b=c[l>>2]|0;i=(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[v>>2]&b)>>>(d[w>>0]|0))|0;j=(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[s>>2]&b)>>>(d[t>>0]|0))|0;f=b;b=(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[y>>2]&b)>>>(d[o>>0]|0))|0;n=57;break}default:{k=0;i=0;b=0;f=0}}if((n|0)==57){k=a[b>>0]|0;i=a[i>>0]|0;b=a[j>>0]|0}if((f|0)!=(D|0)){j=c[(c[p>>2]|0)+4>>2]|0;f=d[g>>0]|0;I=d[j+(f<<2)>>0]|0;n=d[j+(f<<2)+1>>0]|0;f=d[j+(f<<2)+2>>0]|0;f=((((O((i&255)-n|0,E)|0)>>>0)/255|0)+n|0)>>>3&28|(((O((b&255)-I|0,E)|0)>>>0)/255|0)+I&224|((((O((k&255)-f|0,E)|0)>>>0)/255|0)+f|0)>>>6&3;if(q)f=f&255;else f=a[A+f>>0]|0;a[g>>0]=f}l=l+C|0;g=g+1|0;n=64;continue}else if((n|0)==64){n=0;switch(B<<24>>24){case 1:{b=d[l>>0]|0;i=(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[v>>2]&b)>>>(d[w>>0]|0))|0;j=(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[s>>2]&b)>>>(d[t>>0]|0))|0;f=b;b=(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[y>>2]&b)>>>(d[o>>0]|0))|0;n=69;break}case 2:{b=e[l>>1]|0;i=(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[v>>2]&b)>>>(d[w>>0]|0))|0;j=(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[s>>2]&b)>>>(d[t>>0]|0))|0;f=b;b=(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[y>>2]&b)>>>(d[o>>0]|0))|0;n=69;break}case 3:{i=l+((d[w>>0]|0)>>>3&255)|0;j=l+((d[t>>0]|0)>>>3&255)|0;f=0;b=l+((d[o>>0]|0)>>>3&255)|0;n=69;break}case 4:{b=c[l>>2]|0;i=(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[v>>2]&b)>>>(d[w>>0]|0))|0;j=(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[s>>2]&b)>>>(d[t>>0]|0))|0;f=b;b=(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[y>>2]&b)>>>(d[o>>0]|0))|0;n=69;break}default:{k=0;i=0;b=0;f=0}}if((n|0)==69){k=a[b>>0]|0;i=a[i>>0]|0;b=a[j>>0]|0}if((f|0)!=(D|0)){j=c[(c[p>>2]|0)+4>>2]|0;f=d[g>>0]|0;I=d[j+(f<<2)>>0]|0;n=d[j+(f<<2)+1>>0]|0;f=d[j+(f<<2)+2>>0]|0;f=((((O((i&255)-n|0,E)|0)>>>0)/255|0)+n|0)>>>3&28|(((O((b&255)-I|0,E)|0)>>>0)/255|0)+I&224|((((O((k&255)-f|0,E)|0)>>>0)/255|0)+f|0)>>>6&3;if(q)f=f&255;else f=a[A+f>>0]|0;a[g>>0]=f}l=l+C|0;g=g+1|0;n=76;continue}else if((n|0)==76){n=0;switch(B<<24>>24){case 1:{b=d[l>>0]|0;i=(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[v>>2]&b)>>>(d[w>>0]|0))|0;j=(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[s>>2]&b)>>>(d[t>>0]|0))|0;f=b;b=(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[y>>2]&b)>>>(d[o>>0]|0))|0;n=81;break}case 2:{b=e[l>>1]|0;i=(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[v>>2]&b)>>>(d[w>>0]|0))|0;j=(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[s>>2]&b)>>>(d[t>>0]|0))|0;f=b;b=(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[y>>2]&b)>>>(d[o>>0]|0))|0;n=81;break}case 3:{i=l+((d[w>>0]|0)>>>3&255)|0;j=l+((d[t>>0]|0)>>>3&255)|0;f=0;b=l+((d[o>>0]|0)>>>3&255)|0;n=81;break}case 4:{b=c[l>>2]|0;i=(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[v>>2]&b)>>>(d[w>>0]|0))|0;j=(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[s>>2]&b)>>>(d[t>>0]|0))|0;f=b;b=(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[y>>2]&b)>>>(d[o>>0]|0))|0;n=81;break}default:{k=0;i=0;b=0;f=0}}if((n|0)==81){k=a[b>>0]|0;i=a[i>>0]|0;b=a[j>>0]|0}if((f|0)!=(D|0)){j=c[(c[p>>2]|0)+4>>2]|0;f=d[g>>0]|0;I=d[j+(f<<2)>>0]|0;n=d[j+(f<<2)+1>>0]|0;f=d[j+(f<<2)+2>>0]|0;f=((((O((i&255)-n|0,E)|0)>>>0)/255|0)+n|0)>>>3&28|(((O((b&255)-I|0,E)|0)>>>0)/255|0)+I&224|((((O((k&255)-f|0,E)|0)>>>0)/255|0)+f|0)>>>6&3;if(q)f=f&255;else f=a[A+f>>0]|0;a[g>>0]=f}l=l+C|0;g=g+1|0;n=88;continue}else if((n|0)==88){n=0;switch(B<<24>>24){case 1:{b=d[l>>0]|0;i=(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[v>>2]&b)>>>(d[w>>0]|0))|0;j=(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[s>>2]&b)>>>(d[t>>0]|0))|0;f=b;b=(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[y>>2]&b)>>>(d[o>>0]|0))|0;n=93;break}case 2:{b=e[l>>1]|0;i=(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[v>>2]&b)>>>(d[w>>0]|0))|0;j=(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[s>>2]&b)>>>(d[t>>0]|0))|0;f=b;b=(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[y>>2]&b)>>>(d[o>>0]|0))|0;n=93;break}case 3:{i=l+((d[w>>0]|0)>>>3&255)|0;j=l+((d[t>>0]|0)>>>3&255)|0;f=0;b=l+((d[o>>0]|0)>>>3&255)|0;n=93;break}case 4:{b=c[l>>2]|0;i=(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[v>>2]&b)>>>(d[w>>0]|0))|0;j=(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[s>>2]&b)>>>(d[t>>0]|0))|0;f=b;b=(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[y>>2]&b)>>>(d[o>>0]|0))|0;n=93;break}default:{k=0;i=0;b=0;f=0}}if((n|0)==93){k=a[b>>0]|0;i=a[i>>0]|0;b=a[j>>0]|0}if((f|0)!=(D|0)){j=c[(c[p>>2]|0)+4>>2]|0;f=d[g>>0]|0;I=d[j+(f<<2)>>0]|0;n=d[j+(f<<2)+1>>0]|0;f=d[j+(f<<2)+2>>0]|0;f=((((O((i&255)-n|0,E)|0)>>>0)/255|0)+n|0)>>>3&28|(((O((b&255)-I|0,E)|0)>>>0)/255|0)+I&224|((((O((k&255)-f|0,E)|0)>>>0)/255|0)+f|0)>>>6&3;if(q)f=f&255;else f=a[A+f>>0]|0;a[g>>0]=f}g=g+1|0;f=l+C|0;if((m|0)>1){m=m+-1|0;l=f;n=4;continue}else break}if(!h){n=102;break}else{f=f+G|0;g=g+H|0}}if((n|0)!=100)if((n|0)==102)return}function KH(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0;g=c[f+24>>2]|0;k=c[f+28>>2]|0;V=c[f+16>>2]|0;W=c[f+36>>2]|0;i=c[f+40>>2]|0;j=c[f+44>>2]|0;N=c[f+56>>2]|0;P=a[i+9>>0]|0;Q=P&255;R=a[j+9>>0]|0;S=R&255;h=a[f+63>>0]|0;T=h&255;if(!k)return;U=(g+3|0)/4|0;M=g&255;D=h<<24>>24==0;E=i+28|0;F=i+12|0;G=i+32|0;H=i+29|0;I=i+16|0;J=i+33|0;K=i+30|0;L=i+20|0;r=i+34|0;s=j+28|0;t=j+32|0;u=j+29|0;v=j+33|0;w=j+30|0;x=j+34|0;y=j+31|0;z=j+35|0;A=j+12|0;B=j+16|0;C=j+20|0;q=j+24|0;g=c[f>>2]|0;h=c[f+20>>2]|0;a:while(1){k=k+-1|0;switch(M&3){case 0:{p=U;o=h;h=4;break}case 3:{p=U;o=h;h=21;break}case 2:{p=U;o=h;h=38;break}case 1:{p=U;o=h;h=55;break}default:{h=72;break a}}while(1)if((h|0)==4){switch(P<<24>>24){case 1:{h=d[g>>0]|0;break}case 2:{h=e[g>>1]|0;break}case 3:{h=(d[g+1>>0]|0)<<8|(d[g>>0]|0)|(d[g+2>>0]|0)<<16;break}case 4:{h=c[g>>2]|0;break}default:h=0}b:do if(!(D|(h|0)==(N|0))){l=d[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[F>>2]&h)>>>(d[G>>0]|0))>>0]|0;n=d[(c[18232+((d[H>>0]|0)<<2)>>2]|0)+((c[I>>2]&h)>>>(d[J>>0]|0))>>0]|0;m=d[(c[18232+((d[K>>0]|0)<<2)>>2]|0)+((c[L>>2]&h)>>>(d[r>>0]|0))>>0]|0;switch(R<<24>>24){case 1:{f=d[o>>0]|0;h=a[(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[A>>2]&f)>>>(d[t>>0]|0))>>0]|0;i=a[(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[B>>2]&f)>>>(d[v>>0]|0))>>0]|0;j=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[C>>2]&f)>>>(d[x>>0]|0))>>0]|0;f=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[q>>2]&f)>>>(d[z>>0]|0))>>0]|0;break}case 2:{f=e[o>>1]|0;h=a[(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[A>>2]&f)>>>(d[t>>0]|0))>>0]|0;i=a[(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[B>>2]&f)>>>(d[v>>0]|0))>>0]|0;j=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[C>>2]&f)>>>(d[x>>0]|0))>>0]|0;f=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[q>>2]&f)>>>(d[z>>0]|0))>>0]|0;break}case 3:{h=a[o+((d[t>>0]|0)>>>3&255)>>0]|0;i=a[o+((d[v>>0]|0)>>>3&255)>>0]|0;j=a[o+((d[x>>0]|0)>>>3&255)>>0]|0;f=-1;break}case 4:{f=c[o>>2]|0;h=a[(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[A>>2]&f)>>>(d[t>>0]|0))>>0]|0;i=a[(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[B>>2]&f)>>>(d[v>>0]|0))>>0]|0;j=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[C>>2]&f)>>>(d[x>>0]|0))>>0]|0;f=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[q>>2]&f)>>>(d[z>>0]|0))>>0]|0;break}default:{h=0;i=0;j=0;f=0}}Y=h&255;X=i&255;h=j&255;i=f&255;f=(((O(l-Y|0,T)|0)>>>0)/255|0)+Y|0;j=(((O(n-X|0,T)|0)>>>0)/255|0)+X|0;h=(((O(m-h|0,T)|0)>>>0)/255|0)+h|0;i=i+T-(((O(i,T)|0)>>>0)/255|0)|0;switch(R<<24>>24){case 1:{a[o>>0]=j>>>(d[u>>0]|0)<<(d[v>>0]|0)|f>>>(d[s>>0]|0)<<(d[t>>0]|0)|h>>>(d[w>>0]|0)<<(d[x>>0]|0)|i>>>(d[y>>0]|0)<<(d[z>>0]|0);break b}case 2:{b[o>>1]=j>>>(d[u>>0]|0)<<(d[v>>0]|0)|f>>>(d[s>>0]|0)<<(d[t>>0]|0)|h>>>(d[w>>0]|0)<<(d[x>>0]|0)|i>>>(d[y>>0]|0)<<(d[z>>0]|0);break b}case 3:{a[o+((d[t>>0]|0)>>>3&255)>>0]=f;a[o+((d[v>>0]|0)>>>3&255)>>0]=j;a[o+((d[x>>0]|0)>>>3&255)>>0]=h;break b}case 4:{c[o>>2]=j>>>(d[u>>0]|0)<<(d[v>>0]|0)|f>>>(d[s>>0]|0)<<(d[t>>0]|0)|h>>>(d[w>>0]|0)<<(d[x>>0]|0)|i>>>(d[y>>0]|0)<<(d[z>>0]|0);break b}default:break b}}while(0);g=g+Q|0;o=o+S|0;h=21;continue}else if((h|0)==21){switch(P<<24>>24){case 1:{h=d[g>>0]|0;break}case 2:{h=e[g>>1]|0;break}case 3:{h=(d[g+1>>0]|0)<<8|(d[g>>0]|0)|(d[g+2>>0]|0)<<16;break}case 4:{h=c[g>>2]|0;break}default:h=0}c:do if(!(D|(h|0)==(N|0))){l=d[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[F>>2]&h)>>>(d[G>>0]|0))>>0]|0;m=d[(c[18232+((d[H>>0]|0)<<2)>>2]|0)+((c[I>>2]&h)>>>(d[J>>0]|0))>>0]|0;n=d[(c[18232+((d[K>>0]|0)<<2)>>2]|0)+((c[L>>2]&h)>>>(d[r>>0]|0))>>0]|0;switch(R<<24>>24){case 1:{f=d[o>>0]|0;h=a[(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[A>>2]&f)>>>(d[t>>0]|0))>>0]|0;i=a[(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[B>>2]&f)>>>(d[v>>0]|0))>>0]|0;j=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[C>>2]&f)>>>(d[x>>0]|0))>>0]|0;f=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[q>>2]&f)>>>(d[z>>0]|0))>>0]|0;break}case 2:{f=e[o>>1]|0;h=a[(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[A>>2]&f)>>>(d[t>>0]|0))>>0]|0;i=a[(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[B>>2]&f)>>>(d[v>>0]|0))>>0]|0;j=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[C>>2]&f)>>>(d[x>>0]|0))>>0]|0;f=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[q>>2]&f)>>>(d[z>>0]|0))>>0]|0;break}case 3:{h=a[o+((d[t>>0]|0)>>>3&255)>>0]|0;i=a[o+((d[v>>0]|0)>>>3&255)>>0]|0;j=a[o+((d[x>>0]|0)>>>3&255)>>0]|0;f=-1;break}case 4:{f=c[o>>2]|0;h=a[(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[A>>2]&f)>>>(d[t>>0]|0))>>0]|0;i=a[(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[B>>2]&f)>>>(d[v>>0]|0))>>0]|0;j=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[C>>2]&f)>>>(d[x>>0]|0))>>0]|0;f=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[q>>2]&f)>>>(d[z>>0]|0))>>0]|0;break}default:{h=0;i=0;j=0;f=0}}X=h&255;Y=i&255;h=j&255;i=f&255;f=(((O(l-X|0,T)|0)>>>0)/255|0)+X|0;j=(((O(m-Y|0,T)|0)>>>0)/255|0)+Y|0;h=(((O(n-h|0,T)|0)>>>0)/255|0)+h|0;i=i+T-(((O(i,T)|0)>>>0)/255|0)|0;switch(R<<24>>24){case 1:{a[o>>0]=j>>>(d[u>>0]|0)<<(d[v>>0]|0)|f>>>(d[s>>0]|0)<<(d[t>>0]|0)|h>>>(d[w>>0]|0)<<(d[x>>0]|0)|i>>>(d[y>>0]|0)<<(d[z>>0]|0);break c}case 2:{b[o>>1]=j>>>(d[u>>0]|0)<<(d[v>>0]|0)|f>>>(d[s>>0]|0)<<(d[t>>0]|0)|h>>>(d[w>>0]|0)<<(d[x>>0]|0)|i>>>(d[y>>0]|0)<<(d[z>>0]|0);break c}case 3:{a[o+((d[t>>0]|0)>>>3&255)>>0]=f;a[o+((d[v>>0]|0)>>>3&255)>>0]=j;a[o+((d[x>>0]|0)>>>3&255)>>0]=h;break c}case 4:{c[o>>2]=j>>>(d[u>>0]|0)<<(d[v>>0]|0)|f>>>(d[s>>0]|0)<<(d[t>>0]|0)|h>>>(d[w>>0]|0)<<(d[x>>0]|0)|i>>>(d[y>>0]|0)<<(d[z>>0]|0);break c}default:break c}}while(0);g=g+Q|0;o=o+S|0;h=38;continue}else if((h|0)==38){switch(P<<24>>24){case 1:{h=d[g>>0]|0;break}case 2:{h=e[g>>1]|0;break}case 3:{h=(d[g+1>>0]|0)<<8|(d[g>>0]|0)|(d[g+2>>0]|0)<<16;break}case 4:{h=c[g>>2]|0;break}default:h=0}d:do if(!(D|(h|0)==(N|0))){l=d[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[F>>2]&h)>>>(d[G>>0]|0))>>0]|0;m=d[(c[18232+((d[H>>0]|0)<<2)>>2]|0)+((c[I>>2]&h)>>>(d[J>>0]|0))>>0]|0;n=d[(c[18232+((d[K>>0]|0)<<2)>>2]|0)+((c[L>>2]&h)>>>(d[r>>0]|0))>>0]|0;switch(R<<24>>24){case 1:{f=d[o>>0]|0;h=a[(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[A>>2]&f)>>>(d[t>>0]|0))>>0]|0;i=a[(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[B>>2]&f)>>>(d[v>>0]|0))>>0]|0;j=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[C>>2]&f)>>>(d[x>>0]|0))>>0]|0;f=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[q>>2]&f)>>>(d[z>>0]|0))>>0]|0;break}case 2:{f=e[o>>1]|0;h=a[(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[A>>2]&f)>>>(d[t>>0]|0))>>0]|0;i=a[(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[B>>2]&f)>>>(d[v>>0]|0))>>0]|0;j=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[C>>2]&f)>>>(d[x>>0]|0))>>0]|0;f=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[q>>2]&f)>>>(d[z>>0]|0))>>0]|0;break}case 3:{h=a[o+((d[t>>0]|0)>>>3&255)>>0]|0;i=a[o+((d[v>>0]|0)>>>3&255)>>0]|0;j=a[o+((d[x>>0]|0)>>>3&255)>>0]|0;f=-1;break}case 4:{f=c[o>>2]|0;h=a[(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[A>>2]&f)>>>(d[t>>0]|0))>>0]|0;i=a[(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[B>>2]&f)>>>(d[v>>0]|0))>>0]|0;j=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[C>>2]&f)>>>(d[x>>0]|0))>>0]|0;f=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[q>>2]&f)>>>(d[z>>0]|0))>>0]|0;break}default:{h=0;i=0;j=0;f=0}}X=h&255;Y=i&255;h=j&255;i=f&255;f=(((O(l-X|0,T)|0)>>>0)/255|0)+X|0;j=(((O(m-Y|0,T)|0)>>>0)/255|0)+Y|0;h=(((O(n-h|0,T)|0)>>>0)/255|0)+h|0;i=i+T-(((O(i,T)|0)>>>0)/255|0)|0;switch(R<<24>>24){case 1:{a[o>>0]=j>>>(d[u>>0]|0)<<(d[v>>0]|0)|f>>>(d[s>>0]|0)<<(d[t>>0]|0)|h>>>(d[w>>0]|0)<<(d[x>>0]|0)|i>>>(d[y>>0]|0)<<(d[z>>0]|0);break d}case 2:{b[o>>1]=j>>>(d[u>>0]|0)<<(d[v>>0]|0)|f>>>(d[s>>0]|0)<<(d[t>>0]|0)|h>>>(d[w>>0]|0)<<(d[x>>0]|0)|i>>>(d[y>>0]|0)<<(d[z>>0]|0);break d}case 3:{a[o+((d[t>>0]|0)>>>3&255)>>0]=f;a[o+((d[v>>0]|0)>>>3&255)>>0]=j;a[o+((d[x>>0]|0)>>>3&255)>>0]=h;break d}case 4:{c[o>>2]=j>>>(d[u>>0]|0)<<(d[v>>0]|0)|f>>>(d[s>>0]|0)<<(d[t>>0]|0)|h>>>(d[w>>0]|0)<<(d[x>>0]|0)|i>>>(d[y>>0]|0)<<(d[z>>0]|0);break d}default:break d}}while(0);g=g+Q|0;o=o+S|0;h=55;continue}else if((h|0)==55){switch(P<<24>>24){case 1:{h=d[g>>0]|0;break}case 2:{h=e[g>>1]|0;break}case 3:{h=(d[g+1>>0]|0)<<8|(d[g>>0]|0)|(d[g+2>>0]|0)<<16;break}case 4:{h=c[g>>2]|0;break}default:h=0}e:do if(!(D|(h|0)==(N|0))){l=d[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[F>>2]&h)>>>(d[G>>0]|0))>>0]|0;m=d[(c[18232+((d[H>>0]|0)<<2)>>2]|0)+((c[I>>2]&h)>>>(d[J>>0]|0))>>0]|0;n=d[(c[18232+((d[K>>0]|0)<<2)>>2]|0)+((c[L>>2]&h)>>>(d[r>>0]|0))>>0]|0;switch(R<<24>>24){case 1:{f=d[o>>0]|0;h=a[(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[A>>2]&f)>>>(d[t>>0]|0))>>0]|0;i=a[(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[B>>2]&f)>>>(d[v>>0]|0))>>0]|0;j=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[C>>2]&f)>>>(d[x>>0]|0))>>0]|0;f=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[q>>2]&f)>>>(d[z>>0]|0))>>0]|0;break}case 2:{f=e[o>>1]|0;h=a[(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[A>>2]&f)>>>(d[t>>0]|0))>>0]|0;i=a[(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[B>>2]&f)>>>(d[v>>0]|0))>>0]|0;j=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[C>>2]&f)>>>(d[x>>0]|0))>>0]|0;f=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[q>>2]&f)>>>(d[z>>0]|0))>>0]|0;break}case 3:{h=a[o+((d[t>>0]|0)>>>3&255)>>0]|0;i=a[o+((d[v>>0]|0)>>>3&255)>>0]|0;j=a[o+((d[x>>0]|0)>>>3&255)>>0]|0;f=-1;break}case 4:{f=c[o>>2]|0;h=a[(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[A>>2]&f)>>>(d[t>>0]|0))>>0]|0;i=a[(c[18232+((d[u>>0]|0)<<2)>>2]|0)+((c[B>>2]&f)>>>(d[v>>0]|0))>>0]|0;j=a[(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[C>>2]&f)>>>(d[x>>0]|0))>>0]|0;f=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[q>>2]&f)>>>(d[z>>0]|0))>>0]|0;break}default:{h=0;i=0;j=0;f=0}}X=h&255;Y=i&255;h=j&255;i=f&255;f=(((O(l-X|0,T)|0)>>>0)/255|0)+X|0;j=(((O(m-Y|0,T)|0)>>>0)/255|0)+Y|0;h=(((O(n-h|0,T)|0)>>>0)/255|0)+h|0;i=i+T-(((O(i,T)|0)>>>0)/255|0)|0;switch(R<<24>>24){case 1:{a[o>>0]=j>>>(d[u>>0]|0)<<(d[v>>0]|0)|f>>>(d[s>>0]|0)<<(d[t>>0]|0)|h>>>(d[w>>0]|0)<<(d[x>>0]|0)|i>>>(d[y>>0]|0)<<(d[z>>0]|0);break e}case 2:{b[o>>1]=j>>>(d[u>>0]|0)<<(d[v>>0]|0)|f>>>(d[s>>0]|0)<<(d[t>>0]|0)|h>>>(d[w>>0]|0)<<(d[x>>0]|0)|i>>>(d[y>>0]|0)<<(d[z>>0]|0);break e}case 3:{a[o+((d[t>>0]|0)>>>3&255)>>0]=f;a[o+((d[v>>0]|0)>>>3&255)>>0]=j;a[o+((d[x>>0]|0)>>>3&255)>>0]=h;break e}case 4:{c[o>>2]=j>>>(d[u>>0]|0)<<(d[v>>0]|0)|f>>>(d[s>>0]|0)<<(d[t>>0]|0)|h>>>(d[w>>0]|0)<<(d[x>>0]|0)|i>>>(d[y>>0]|0)<<(d[z>>0]|0);break e}default:break e}}while(0);g=g+Q|0;h=o+S|0;if((p|0)>1){p=p+-1|0;o=h;h=4;continue}else break}if(!k){h=74;break}else{g=g+V|0;h=h+W|0}}if((h|0)!=72)if((h|0)==74)return}function LH(b){b=b|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0;f=c[b+24>>2]|0;h=c[b+28>>2]|0;F=c[b+16>>2]|0;G=c[b+36>>2]|0;B=c[b+48>>2]|0;g=c[b+40>>2]|0;C=a[g+9>>0]|0;D=C&255;if(!h)return;E=(f+3|0)/4|0;A=f&255;n=(c[b+44>>2]|0)+4|0;o=(B|0)==0;p=g+28|0;q=g+12|0;r=g+32|0;s=g+29|0;t=g+16|0;u=g+33|0;v=g+30|0;w=g+20|0;x=g+34|0;y=g+31|0;z=g+24|0;m=g+35|0;f=c[b>>2]|0;j=c[b+20>>2]|0;a:while(1){h=h+-1|0;switch(A&3){case 0:{l=E;k=f;f=4;break}case 3:{l=E;k=f;f=13;break}case 2:{l=E;k=f;f=22;break}case 1:{l=E;k=f;f=31;break}default:{f=40;break a}}while(1)if((f|0)==4){switch(C<<24>>24){case 1:{i=d[k>>0]|0;f=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&i)>>>(d[m>>0]|0))>>0]|0;g=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&i)>>>(d[x>>0]|0))>>0]|0;b=a[(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&i)>>>(d[u>>0]|0))>>0]|0;i=a[(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}case 2:{i=e[k>>1]|0;f=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&i)>>>(d[m>>0]|0))>>0]|0;g=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&i)>>>(d[x>>0]|0))>>0]|0;b=a[(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&i)>>>(d[u>>0]|0))>>0]|0;i=a[(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}case 3:{f=-1;g=a[k+((d[x>>0]|0)>>>3&255)>>0]|0;b=a[k+((d[u>>0]|0)>>>3&255)>>0]|0;i=a[k+((d[r>>0]|0)>>>3&255)>>0]|0;break}case 4:{i=c[k>>2]|0;f=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&i)>>>(d[m>>0]|0))>>0]|0;g=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&i)>>>(d[x>>0]|0))>>0]|0;b=a[(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&i)>>>(d[u>>0]|0))>>0]|0;i=a[(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}default:{f=0;g=0;b=0;i=0}}H=f&255;K=c[(c[n>>2]|0)+4>>2]|0;f=d[j>>0]|0;I=d[K+(f<<2)>>0]|0;J=d[K+(f<<2)+1>>0]|0;f=d[K+(f<<2)+2>>0]|0;f=((((O((b&255)-J|0,H)|0)>>>0)/255|0)+J|0)>>>3&28|(((O((i&255)-I|0,H)|0)>>>0)/255|0)+I&224|((((O((g&255)-f|0,H)|0)>>>0)/255|0)+f|0)>>>6&3;if(o)f=f&255;else f=a[B+f>>0]|0;a[j>>0]=f;k=k+D|0;j=j+1|0;f=13;continue}else if((f|0)==13){switch(C<<24>>24){case 1:{i=d[k>>0]|0;f=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&i)>>>(d[m>>0]|0))>>0]|0;g=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&i)>>>(d[x>>0]|0))>>0]|0;b=a[(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&i)>>>(d[u>>0]|0))>>0]|0;i=a[(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}case 2:{i=e[k>>1]|0;f=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&i)>>>(d[m>>0]|0))>>0]|0;g=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&i)>>>(d[x>>0]|0))>>0]|0;b=a[(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&i)>>>(d[u>>0]|0))>>0]|0;i=a[(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}case 3:{f=-1;g=a[k+((d[x>>0]|0)>>>3&255)>>0]|0;b=a[k+((d[u>>0]|0)>>>3&255)>>0]|0;i=a[k+((d[r>>0]|0)>>>3&255)>>0]|0;break}case 4:{i=c[k>>2]|0;f=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&i)>>>(d[m>>0]|0))>>0]|0;g=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&i)>>>(d[x>>0]|0))>>0]|0;b=a[(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&i)>>>(d[u>>0]|0))>>0]|0;i=a[(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}default:{f=0;g=0;b=0;i=0}}K=f&255;H=c[(c[n>>2]|0)+4>>2]|0;f=d[j>>0]|0;J=d[H+(f<<2)>>0]|0;I=d[H+(f<<2)+1>>0]|0;f=d[H+(f<<2)+2>>0]|0;f=((((O((b&255)-I|0,K)|0)>>>0)/255|0)+I|0)>>>3&28|(((O((i&255)-J|0,K)|0)>>>0)/255|0)+J&224|((((O((g&255)-f|0,K)|0)>>>0)/255|0)+f|0)>>>6&3;if(o)f=f&255;else f=a[B+f>>0]|0;a[j>>0]=f;k=k+D|0;j=j+1|0;f=22;continue}else if((f|0)==22){switch(C<<24>>24){case 1:{i=d[k>>0]|0;f=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&i)>>>(d[m>>0]|0))>>0]|0;g=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&i)>>>(d[x>>0]|0))>>0]|0;b=a[(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&i)>>>(d[u>>0]|0))>>0]|0;i=a[(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}case 2:{i=e[k>>1]|0;f=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&i)>>>(d[m>>0]|0))>>0]|0;g=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&i)>>>(d[x>>0]|0))>>0]|0;b=a[(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&i)>>>(d[u>>0]|0))>>0]|0;i=a[(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}case 3:{f=-1;g=a[k+((d[x>>0]|0)>>>3&255)>>0]|0;b=a[k+((d[u>>0]|0)>>>3&255)>>0]|0;i=a[k+((d[r>>0]|0)>>>3&255)>>0]|0;break}case 4:{i=c[k>>2]|0;f=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&i)>>>(d[m>>0]|0))>>0]|0;g=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&i)>>>(d[x>>0]|0))>>0]|0;b=a[(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&i)>>>(d[u>>0]|0))>>0]|0;i=a[(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}default:{f=0;g=0;b=0;i=0}}K=f&255;H=c[(c[n>>2]|0)+4>>2]|0;f=d[j>>0]|0;J=d[H+(f<<2)>>0]|0;I=d[H+(f<<2)+1>>0]|0;f=d[H+(f<<2)+2>>0]|0;f=((((O((b&255)-I|0,K)|0)>>>0)/255|0)+I|0)>>>3&28|(((O((i&255)-J|0,K)|0)>>>0)/255|0)+J&224|((((O((g&255)-f|0,K)|0)>>>0)/255|0)+f|0)>>>6&3;if(o)f=f&255;else f=a[B+f>>0]|0;a[j>>0]=f;k=k+D|0;j=j+1|0;f=31;continue}else if((f|0)==31){switch(C<<24>>24){case 1:{i=d[k>>0]|0;f=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&i)>>>(d[m>>0]|0))>>0]|0;g=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&i)>>>(d[x>>0]|0))>>0]|0;b=a[(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&i)>>>(d[u>>0]|0))>>0]|0;i=a[(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}case 2:{i=e[k>>1]|0;f=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&i)>>>(d[m>>0]|0))>>0]|0;g=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&i)>>>(d[x>>0]|0))>>0]|0;b=a[(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&i)>>>(d[u>>0]|0))>>0]|0;i=a[(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}case 3:{f=-1;g=a[k+((d[x>>0]|0)>>>3&255)>>0]|0;b=a[k+((d[u>>0]|0)>>>3&255)>>0]|0;i=a[k+((d[r>>0]|0)>>>3&255)>>0]|0;break}case 4:{i=c[k>>2]|0;f=a[(c[18232+((d[y>>0]|0)<<2)>>2]|0)+((c[z>>2]&i)>>>(d[m>>0]|0))>>0]|0;g=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[w>>2]&i)>>>(d[x>>0]|0))>>0]|0;b=a[(c[18232+((d[s>>0]|0)<<2)>>2]|0)+((c[t>>2]&i)>>>(d[u>>0]|0))>>0]|0;i=a[(c[18232+((d[p>>0]|0)<<2)>>2]|0)+((c[q>>2]&i)>>>(d[r>>0]|0))>>0]|0;break}default:{f=0;g=0;b=0;i=0}}K=f&255;H=c[(c[n>>2]|0)+4>>2]|0;f=d[j>>0]|0;J=d[H+(f<<2)>>0]|0;I=d[H+(f<<2)+1>>0]|0;f=d[H+(f<<2)+2>>0]|0;f=((((O((b&255)-I|0,K)|0)>>>0)/255|0)+I|0)>>>3&28|(((O((i&255)-J|0,K)|0)>>>0)/255|0)+J&224|((((O((g&255)-f|0,K)|0)>>>0)/255|0)+f|0)>>>6&3;if(o)f=f&255;else f=a[B+f>>0]|0;a[j>>0]=f;g=j+1|0;f=k+D|0;if((l|0)>1){l=l+-1|0;k=f;j=g;f=4;continue}else break}if(!h){f=42;break}else{f=f+F|0;j=g+G|0}}if((f|0)!=40)if((f|0)==42)return}function MH(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;b=c[a+24>>2]|0;d=c[a+28>>2]|0;l=c[a+16>>2]>>2;j=c[a+36>>2]>>2;if(!d)return;k=(b+3|0)/4|0;i=b&255;b=c[a>>2]|0;a=c[a+20>>2]|0;a:while(1){d=d+-1|0;switch(i&3){case 0:{g=k;f=b;h=4;break}case 3:{g=k;f=b;h=8;break}case 2:{g=k;f=b;h=12;break}case 1:{g=k;f=b;e=a;h=16;break}default:{h=20;break a}}while(1)if((h|0)==4){h=0;b=c[f>>2]|0;e=b>>>24;switch((e&255)<<24>>24){case 0:break;case -1:{h=6;break}default:{m=c[a>>2]|0;h=m&16711935;n=m&65280;b=((O((b&65280)-n|0,e)|0)>>>8)+n&65280|((O(m>>>24,e^255)|0)>>>8)+e<<24|((O((b&16711935)-h|0,e)|0)>>>8)+h&16711935;h=6}}if((h|0)==6)c[a>>2]=b;f=f+4|0;a=a+4|0;h=8;continue}else if((h|0)==8){h=0;b=c[f>>2]|0;e=b>>>24;switch((e&255)<<24>>24){case 0:break;case -1:{h=10;break}default:{n=c[a>>2]|0;h=n&16711935;m=n&65280;b=((O((b&65280)-m|0,e)|0)>>>8)+m&65280|((O(n>>>24,e^255)|0)>>>8)+e<<24|((O((b&16711935)-h|0,e)|0)>>>8)+h&16711935;h=10}}if((h|0)==10)c[a>>2]=b;f=f+4|0;a=a+4|0;h=12;continue}else if((h|0)==12){h=0;b=c[f>>2]|0;e=b>>>24;switch((e&255)<<24>>24){case 0:break;case -1:{h=14;break}default:{n=c[a>>2]|0;h=n&16711935;m=n&65280;b=((O((b&65280)-m|0,e)|0)>>>8)+m&65280|((O(n>>>24,e^255)|0)>>>8)+e<<24|((O((b&16711935)-h|0,e)|0)>>>8)+h&16711935;h=14}}if((h|0)==14)c[a>>2]=b;f=f+4|0;e=a+4|0;h=16;continue}else if((h|0)==16){h=0;b=c[f>>2]|0;a=b>>>24;switch((a&255)<<24>>24){case 0:break;case -1:{h=18;break}default:{n=c[e>>2]|0;h=n&16711935;m=n&65280;b=((O((b&65280)-m|0,a)|0)>>>8)+m&65280|((O(n>>>24,a^255)|0)>>>8)+a<<24|((O((b&16711935)-h|0,a)|0)>>>8)+h&16711935;h=18}}if((h|0)==18)c[e>>2]=b;b=f+4|0;a=e+4|0;if((g|0)>1){g=g+-1|0;f=b;h=4;continue}else break}if(!d){h=22;break}else{b=b+(l<<2)|0;a=a+(j<<2)|0}}if((h|0)!=20)if((h|0)==22)return}function NH(b){b=b|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;f=c[b+24>>2]|0;h=c[b+28>>2]|0;E=c[b+16>>2]|0;F=c[b+36>>2]|0;z=c[b+48>>2]|0;g=c[b+40>>2]|0;A=a[g+9>>0]|0;B=A&255;C=d[b+63>>0]|0;if(!h)return;D=(f+3|0)/4|0;y=f&255;o=(c[b+44>>2]|0)+4|0;p=(z|0)==0;q=g+28|0;r=g+12|0;s=g+32|0;t=g+29|0;u=g+16|0;v=g+33|0;w=g+30|0;x=g+20|0;n=g+34|0;f=c[b>>2]|0;g=c[b+20>>2]|0;a:while(1){h=h+-1|0;switch(y&3){case 0:{l=D;k=f;m=4;break}case 3:{l=D;k=f;m=14;break}case 2:{l=D;k=f;m=24;break}case 1:{l=D;k=f;m=34;break}default:{m=44;break a}}while(1)if((m|0)==4){m=0;switch(A<<24>>24){case 1:{f=d[k>>0]|0;b=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&f)>>>(d[v>>0]|0))|0;j=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&f)>>>(d[s>>0]|0))|0;f=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&f)>>>(d[n>>0]|0))|0;m=9;break}case 2:{f=e[k>>1]|0;b=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&f)>>>(d[v>>0]|0))|0;j=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&f)>>>(d[s>>0]|0))|0;f=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&f)>>>(d[n>>0]|0))|0;m=9;break}case 3:{b=k+((d[v>>0]|0)>>>3&255)|0;j=k+((d[s>>0]|0)>>>3&255)|0;f=k+((d[n>>0]|0)>>>3&255)|0;m=9;break}case 4:{f=c[k>>2]|0;b=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&f)>>>(d[v>>0]|0))|0;j=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&f)>>>(d[s>>0]|0))|0;f=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&f)>>>(d[n>>0]|0))|0;m=9;break}default:{i=0;b=0;f=0}}if((m|0)==9){i=a[f>>0]|0;b=a[b>>0]|0;f=a[j>>0]|0}H=c[(c[o>>2]|0)+4>>2]|0;m=d[g>>0]|0;j=d[H+(m<<2)>>0]|0;G=d[H+(m<<2)+1>>0]|0;m=d[H+(m<<2)+2>>0]|0;f=((((O((b&255)-G|0,C)|0)>>>0)/255|0)+G|0)>>>3&28|(((O((f&255)-j|0,C)|0)>>>0)/255|0)+j&224|((((O((i&255)-m|0,C)|0)>>>0)/255|0)+m|0)>>>6&3;if(p)f=f&255;else f=a[z+f>>0]|0;a[g>>0]=f;k=k+B|0;g=g+1|0;m=14;continue}else if((m|0)==14){m=0;switch(A<<24>>24){case 1:{f=d[k>>0]|0;b=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&f)>>>(d[v>>0]|0))|0;j=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&f)>>>(d[s>>0]|0))|0;f=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&f)>>>(d[n>>0]|0))|0;m=19;break}case 2:{f=e[k>>1]|0;b=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&f)>>>(d[v>>0]|0))|0;j=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&f)>>>(d[s>>0]|0))|0;f=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&f)>>>(d[n>>0]|0))|0;m=19;break}case 3:{b=k+((d[v>>0]|0)>>>3&255)|0;j=k+((d[s>>0]|0)>>>3&255)|0;f=k+((d[n>>0]|0)>>>3&255)|0;m=19;break}case 4:{f=c[k>>2]|0;b=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&f)>>>(d[v>>0]|0))|0;j=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&f)>>>(d[s>>0]|0))|0;f=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&f)>>>(d[n>>0]|0))|0;m=19;break}default:{i=0;b=0;f=0}}if((m|0)==19){i=a[f>>0]|0;b=a[b>>0]|0;f=a[j>>0]|0}j=c[(c[o>>2]|0)+4>>2]|0;H=d[g>>0]|0;G=d[j+(H<<2)>>0]|0;m=d[j+(H<<2)+1>>0]|0;H=d[j+(H<<2)+2>>0]|0;f=((((O((b&255)-m|0,C)|0)>>>0)/255|0)+m|0)>>>3&28|(((O((f&255)-G|0,C)|0)>>>0)/255|0)+G&224|((((O((i&255)-H|0,C)|0)>>>0)/255|0)+H|0)>>>6&3;if(p)f=f&255;else f=a[z+f>>0]|0;a[g>>0]=f;k=k+B|0;g=g+1|0;m=24;continue}else if((m|0)==24){m=0;switch(A<<24>>24){case 1:{f=d[k>>0]|0;b=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&f)>>>(d[v>>0]|0))|0;j=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&f)>>>(d[s>>0]|0))|0;f=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&f)>>>(d[n>>0]|0))|0;m=29;break}case 2:{f=e[k>>1]|0;b=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&f)>>>(d[v>>0]|0))|0;j=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&f)>>>(d[s>>0]|0))|0;f=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&f)>>>(d[n>>0]|0))|0;m=29;break}case 3:{b=k+((d[v>>0]|0)>>>3&255)|0;j=k+((d[s>>0]|0)>>>3&255)|0;f=k+((d[n>>0]|0)>>>3&255)|0;m=29;break}case 4:{f=c[k>>2]|0;b=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&f)>>>(d[v>>0]|0))|0;j=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&f)>>>(d[s>>0]|0))|0;f=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&f)>>>(d[n>>0]|0))|0;m=29;break}default:{i=0;b=0;f=0}}if((m|0)==29){i=a[f>>0]|0;b=a[b>>0]|0;f=a[j>>0]|0}j=c[(c[o>>2]|0)+4>>2]|0;H=d[g>>0]|0;G=d[j+(H<<2)>>0]|0;m=d[j+(H<<2)+1>>0]|0;H=d[j+(H<<2)+2>>0]|0;f=((((O((b&255)-m|0,C)|0)>>>0)/255|0)+m|0)>>>3&28|(((O((f&255)-G|0,C)|0)>>>0)/255|0)+G&224|((((O((i&255)-H|0,C)|0)>>>0)/255|0)+H|0)>>>6&3;if(p)f=f&255;else f=a[z+f>>0]|0;a[g>>0]=f;k=k+B|0;g=g+1|0;m=34;continue}else if((m|0)==34){m=0;switch(A<<24>>24){case 1:{f=d[k>>0]|0;b=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&f)>>>(d[v>>0]|0))|0;j=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&f)>>>(d[s>>0]|0))|0;f=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&f)>>>(d[n>>0]|0))|0;m=39;break}case 2:{f=e[k>>1]|0;b=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&f)>>>(d[v>>0]|0))|0;j=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&f)>>>(d[s>>0]|0))|0;f=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&f)>>>(d[n>>0]|0))|0;m=39;break}case 3:{b=k+((d[v>>0]|0)>>>3&255)|0;j=k+((d[s>>0]|0)>>>3&255)|0;f=k+((d[n>>0]|0)>>>3&255)|0;m=39;break}case 4:{f=c[k>>2]|0;b=(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[u>>2]&f)>>>(d[v>>0]|0))|0;j=(c[18232+((d[q>>0]|0)<<2)>>2]|0)+((c[r>>2]&f)>>>(d[s>>0]|0))|0;f=(c[18232+((d[w>>0]|0)<<2)>>2]|0)+((c[x>>2]&f)>>>(d[n>>0]|0))|0;m=39;break}default:{i=0;b=0;f=0}}if((m|0)==39){i=a[f>>0]|0;b=a[b>>0]|0;f=a[j>>0]|0}j=c[(c[o>>2]|0)+4>>2]|0;H=d[g>>0]|0;G=d[j+(H<<2)>>0]|0;m=d[j+(H<<2)+1>>0]|0;H=d[j+(H<<2)+2>>0]|0;f=((((O((b&255)-m|0,C)|0)>>>0)/255|0)+m|0)>>>3&28|(((O((f&255)-G|0,C)|0)>>>0)/255|0)+G&224|((((O((i&255)-H|0,C)|0)>>>0)/255|0)+H|0)>>>6&3;if(p)f=f&255;else f=a[z+f>>0]|0;a[g>>0]=f;g=g+1|0;f=k+B|0;if((l|0)>1){l=l+-1|0;k=f;m=4;continue}else break}if(!h){m=46;break}else{f=f+E|0;g=g+F|0}}if((m|0)!=44)if((m|0)==46)return}function OH(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0;v=a[b+63>>0]|0;w=v&255;u=c[b+24>>2]|0;i=c[b+28>>2]|0;d=c[b>>2]|0;H=c[b+16>>2]>>2;e=c[b+20>>2]|0;G=c[b+36>>2]>>2;f=i+-1|0;i=(i|0)==0;if(v<<24>>24!=-128){if(i)return;v=(u+3|0)/4|0;k=u&255;if(!(k&3)){while(1){b=v;while(1){E=c[d>>2]|0;D=c[e>>2]|0;F=D&16711935;D=D&65280;c[e>>2]=((O((E&65280)-D|0,w)|0)>>>8)+D&65280|((O((E&16711935)-F|0,w)|0)>>>8)+F&16711935|-16777216;F=e+4|0;E=c[d+4>>2]|0;D=c[F>>2]|0;C=D&16711935;D=D&65280;c[F>>2]=((O((E&65280)-D|0,w)|0)>>>8)+D&65280|((O((E&16711935)-C|0,w)|0)>>>8)+C&16711935|-16777216;F=e+8|0;C=c[d+8>>2]|0;E=c[F>>2]|0;D=E&16711935;E=E&65280;c[F>>2]=((O((C&65280)-E|0,w)|0)>>>8)+E&65280|((O((C&16711935)-D|0,w)|0)>>>8)+D&16711935|-16777216;F=e+12|0;D=c[d+12>>2]|0;C=c[F>>2]|0;E=C&16711935;C=C&65280;c[F>>2]=((O((D&65280)-C|0,w)|0)>>>8)+C&65280|((O((D&16711935)-E|0,w)|0)>>>8)+E&16711935|-16777216;d=d+16|0;e=e+16|0;if((b|0)<=1)break;else b=b+-1|0}if(!f)break;else{e=e+(G<<2)|0;d=d+(H<<2)|0;f=f+-1|0}}return}else{g=e;b=d;j=f}a:while(1){switch(k&3){case 1:{p=v;s=g;t=b;b=27;break}case 3:{l=v;n=g;o=b;b=25;break}case 2:{m=v;q=g;r=b;b=26;break}default:{b=28;break a}}while(1)if((b|0)==25){q=c[o>>2]|0;r=c[n>>2]|0;m=r&16711935;r=r&65280;c[n>>2]=((O((q&65280)-r|0,w)|0)>>>8)+r&65280|((O((q&16711935)-m|0,w)|0)>>>8)+m&16711935|-16777216;m=l;q=n+4|0;r=o+4|0;b=26;continue}else if((b|0)==26){s=c[r>>2]|0;t=c[q>>2]|0;p=t&16711935;t=t&65280;c[q>>2]=((O((s&65280)-t|0,w)|0)>>>8)+t&65280|((O((s&16711935)-p|0,w)|0)>>>8)+p&16711935|-16777216;p=m;s=q+4|0;t=r+4|0;b=27;continue}else if((b|0)==27){b=c[t>>2]|0;g=c[s>>2]|0;h=g&16711935;g=g&65280;c[s>>2]=((O((b&65280)-g|0,w)|0)>>>8)+g&65280|((O((b&16711935)-h|0,w)|0)>>>8)+h&16711935|-16777216;h=t+4|0;b=s+4|0;if((p|0)<=1)break;n=c[h>>2]|0;o=c[b>>2]|0;l=o&16711935;o=o&65280;c[b>>2]=((O((n&65280)-o|0,w)|0)>>>8)+o&65280|((O((n&16711935)-l|0,w)|0)>>>8)+l&16711935|-16777216;l=p+-1|0;n=s+8|0;o=t+8|0;b=25;continue}if(!j){b=30;break}else{g=b+(G<<2)|0;b=h+(H<<2)|0;j=j+-1|0}}if((b|0)!=28)if((b|0)==30)return}if(i)return;b=u+3|0;j=(b|0)/4|0;g=u&255;switch(g&3){case 0:{while(1){b=j;while(1){E=c[d>>2]|0;F=c[e>>2]|0;C=e+4|0;c[e>>2]=(((F&16711422)+(E&16711422)|0)>>>1)+(E&65793&F)|-16777216;F=c[d+4>>2]|0;E=c[C>>2]|0;D=e+8|0;c[C>>2]=(((E&16711422)+(F&16711422)|0)>>>1)+(F&65793&E)|-16777216;C=c[d+8>>2]|0;E=c[D>>2]|0;F=e+12|0;c[D>>2]=(((E&16711422)+(C&16711422)|0)>>>1)+(C&65793&E)|-16777216;D=d;d=d+16|0;D=c[D+12>>2]|0;E=c[F>>2]|0;e=e+16|0;c[F>>2]=(((E&16711422)+(D&16711422)|0)>>>1)+(D&65793&E)|-16777216;if((b|0)<=1)break;else b=b+-1|0}if(!f)break;else{d=d+(H<<2)|0;e=e+(G<<2)|0;f=f+-1|0}}return}case 1:{i=(b|0)>7;g=d;while(1){d=g+4|0;E=c[g>>2]|0;F=c[e>>2]|0;b=e+4|0;c[e>>2]=(((F&16711422)+(E&16711422)|0)>>>1)+(E&65793&F)|-16777216;if(i){h=j;do{h=h+-1|0;D=c[d>>2]|0;F=c[b>>2]|0;d=e+8|0;c[b>>2]=(((F&16711422)+(D&16711422)|0)>>>1)+(D&65793&F)|-16777216;F=c[g+8>>2]|0;D=c[d>>2]|0;E=e+12|0;c[d>>2]=(((D&16711422)+(F&16711422)|0)>>>1)+(F&65793&D)|-16777216;d=g;g=g+16|0;D=c[d+12>>2]|0;F=c[E>>2]|0;b=e;e=e+16|0;c[E>>2]=(((F&16711422)+(D&16711422)|0)>>>1)+(D&65793&F)|-16777216;d=d+20|0;E=c[g>>2]|0;F=c[e>>2]|0;b=b+20|0;c[e>>2]=(((F&16711422)+(E&16711422)|0)>>>1)+(E&65793&F)|-16777216}while((h|0)>1);e=b}else e=b;if(!f)break;else{g=d+(H<<2)|0;e=e+(G<<2)|0;f=f+-1|0}}return}default:{b:while(1){switch(g&3){case 1:{D=j;E=d;F=e;b=20;break}case 3:{x=j;y=d;z=e;b=18;break}case 2:{A=j;B=d;C=e;b=19;break}default:{b=21;break b}}while(1)if((b|0)==18){B=c[y>>2]|0;A=c[z>>2]|0;c[z>>2]=(((A&16711422)+(B&16711422)|0)>>>1)+(B&65793&A)|-16777216;A=x;B=y+4|0;C=z+4|0;b=19;continue}else if((b|0)==19){E=c[B>>2]|0;D=c[C>>2]|0;c[C>>2]=(((D&16711422)+(E&16711422)|0)>>>1)+(E&65793&D)|-16777216;D=A;E=B+4|0;F=C+4|0;b=20;continue}else if((b|0)==20){d=E+4|0;v=c[E>>2]|0;w=c[F>>2]|0;e=F+4|0;c[F>>2]=(((w&16711422)+(v&16711422)|0)>>>1)+(v&65793&w)|-16777216;if((D|0)<=1)break;y=c[d>>2]|0;x=c[e>>2]|0;c[e>>2]=(((x&16711422)+(y&16711422)|0)>>>1)+(y&65793&x)|-16777216;x=D+-1|0;y=E+8|0;z=F+8|0;b=18;continue}if(!f){b=30;break}else{d=d+(H<<2)|0;e=e+(G<<2)|0;f=f+-1|0}}if((b|0)!=21)if((b|0)==30)return}}}function PH(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;t=c[a+24>>2]|0;f=c[a+28>>2]|0;u=c[a+16>>2]>>1;l=c[a+36>>2]>>1;if(!f)return;m=~d;n=t+-1|0;o=d&65535;p=o<<16|o;q=~p;r=u+-1|0;s=o^65535;h=c[a>>2]|0;e=c[a+20>>2]|0;while(1){f=f+-1|0;a=h;g=e;if(!((a^g)&2)){if(!(a&2)){g=t;a=h}else{a=b[e>>1]|0;g=b[h>>1]|0;b[e>>1]=(((g&d&65535)+(a&d&65535)|0)>>>1)+(a&m&g&65535);g=n;a=h+2|0;e=e+2|0}if((g|0)>1){i=g+-2|0;j=e+4|0;h=a;while(1){v=c[h>>2]|0;k=c[e>>2]|0;c[e>>2]=((k&p)>>>1)+((v&p)>>>1)+(v&q&k);g=g+-2|0;if((g|0)<=1)break;else{e=e+4|0;h=h+4|0}}e=i&-2;g=i-e|0;a=a+4+(e<<1)|0;e=j+(e<<1)|0}if(g){k=b[e>>1]|0;v=b[a>>1]|0;b[e>>1]=(((v&d&65535)+(k&d&65535)|0)>>>1)+(k&m&v&65535);a=a+2|0;e=e+2|0}a=a+(u<<1)|0}else{if(!(g&2)){i=t;g=h}else{g=b[e>>1]|0;i=b[h>>1]|0;b[e>>1]=(((i&d&65535)+(g&d&65535)|0)>>>1)+(g&m&i&65535);i=n;g=h+2|0;e=e+2|0}a=g+2|0;h=c[g+-2>>2]|0;if((i|0)>1){j=i+-2|0;k=g+6|0;g=i;i=e;while(1){v=h;h=c[a>>2]|0;w=c[i>>2]|0;v=h<<16|v>>>16;c[i>>2]=((v&p)>>>1)+((w&p)>>>1)+(w&q&v);g=g+-2|0;if((g|0)<=1)break;else{i=i+4|0;a=a+4|0}}w=j&-2;g=j-w|0;a=k+(w<<1)|0;e=e+4+(w<<1)|0}else g=i;if(g){w=b[e>>1]|0;v=h>>>16;b[e>>1]=(((w&d&65535)+(v&o)|0)>>>1)+(v&s&(w&65535));a=a+2|0;e=e+2|0}a=a+(r<<1)|0}if(!f)break;else{h=a;e=e+(l<<1)|0}}return}function QH(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0;g=c[f+24>>2]|0;i=c[f+28>>2]|0;I=c[f+16>>2]|0;J=c[f+36>>2]|0;h=c[f+44>>2]|0;D=c[(c[(c[f+40>>2]|0)+4>>2]|0)+4>>2]|0;E=d[f+63>>0]|0;F=a[h+9>>0]|0;G=F&255;if(!i)return;H=(g+3|0)/4|0;C=g&255;r=h+28|0;s=h+32|0;t=h+29|0;u=h+33|0;v=h+30|0;w=h+34|0;x=h+31|0;y=h+35|0;z=h+12|0;A=h+16|0;B=h+20|0;q=h+24|0;g=c[f>>2]|0;h=c[f+20>>2]|0;a:while(1){i=i+-1|0;switch(C&3){case 0:{p=H;f=4;break}case 3:{p=H;f=15;break}case 2:{p=H;f=26;break}case 1:{p=H;f=37;break}default:{f=48;break a}}while(1)if((f|0)==4){o=d[g>>0]|0;m=d[D+(o<<2)>>0]|0;n=d[D+(o<<2)+1>>0]|0;o=d[D+(o<<2)+2>>0]|0;switch(F<<24>>24){case 1:{l=d[h>>0]|0;f=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&l)>>>(d[s>>0]|0))>>0]|0;j=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&l)>>>(d[u>>0]|0))>>0]|0;k=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[w>>0]|0))>>0]|0;l=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&l)>>>(d[y>>0]|0))>>0]|0;break}case 2:{l=e[h>>1]|0;f=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&l)>>>(d[s>>0]|0))>>0]|0;j=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&l)>>>(d[u>>0]|0))>>0]|0;k=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[w>>0]|0))>>0]|0;l=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&l)>>>(d[y>>0]|0))>>0]|0;break}case 3:{f=a[h+((d[s>>0]|0)>>>3&255)>>0]|0;j=a[h+((d[u>>0]|0)>>>3&255)>>0]|0;k=a[h+((d[w>>0]|0)>>>3&255)>>0]|0;l=-1;break}case 4:{l=c[h>>2]|0;f=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&l)>>>(d[s>>0]|0))>>0]|0;j=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&l)>>>(d[u>>0]|0))>>0]|0;k=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[w>>0]|0))>>0]|0;l=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&l)>>>(d[y>>0]|0))>>0]|0;break}default:{f=0;j=0;k=0;l=0}}L=f&255;K=j&255;f=k&255;j=l&255;l=(((O(m-L|0,E)|0)>>>0)/255|0)+L|0;k=(((O(n-K|0,E)|0)>>>0)/255|0)+K|0;f=(((O(o-f|0,E)|0)>>>0)/255|0)+f|0;j=j+E-(((O(j,E)|0)>>>0)/255|0)|0;switch(F<<24>>24){case 1:{a[h>>0]=k>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|j>>>(d[x>>0]|0)<<(d[y>>0]|0);break}case 2:{b[h>>1]=k>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|j>>>(d[x>>0]|0)<<(d[y>>0]|0);break}case 3:{a[h+((d[s>>0]|0)>>>3&255)>>0]=l;a[h+((d[u>>0]|0)>>>3&255)>>0]=k;a[h+((d[w>>0]|0)>>>3&255)>>0]=f;break}case 4:{c[h>>2]=k>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|j>>>(d[x>>0]|0)<<(d[y>>0]|0);break}default:{}}g=g+1|0;h=h+G|0;f=15;continue}else if((f|0)==15){o=d[g>>0]|0;m=d[D+(o<<2)>>0]|0;n=d[D+(o<<2)+1>>0]|0;o=d[D+(o<<2)+2>>0]|0;switch(F<<24>>24){case 1:{l=d[h>>0]|0;f=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&l)>>>(d[s>>0]|0))>>0]|0;j=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&l)>>>(d[u>>0]|0))>>0]|0;k=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[w>>0]|0))>>0]|0;l=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&l)>>>(d[y>>0]|0))>>0]|0;break}case 2:{l=e[h>>1]|0;f=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&l)>>>(d[s>>0]|0))>>0]|0;j=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&l)>>>(d[u>>0]|0))>>0]|0;k=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[w>>0]|0))>>0]|0;l=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&l)>>>(d[y>>0]|0))>>0]|0;break}case 3:{f=a[h+((d[s>>0]|0)>>>3&255)>>0]|0;j=a[h+((d[u>>0]|0)>>>3&255)>>0]|0;k=a[h+((d[w>>0]|0)>>>3&255)>>0]|0;l=-1;break}case 4:{l=c[h>>2]|0;f=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&l)>>>(d[s>>0]|0))>>0]|0;j=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&l)>>>(d[u>>0]|0))>>0]|0;k=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[w>>0]|0))>>0]|0;l=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&l)>>>(d[y>>0]|0))>>0]|0;break}default:{f=0;j=0;k=0;l=0}}K=f&255;L=j&255;f=k&255;j=l&255;l=(((O(m-K|0,E)|0)>>>0)/255|0)+K|0;k=(((O(n-L|0,E)|0)>>>0)/255|0)+L|0;f=(((O(o-f|0,E)|0)>>>0)/255|0)+f|0;j=j+E-(((O(j,E)|0)>>>0)/255|0)|0;switch(F<<24>>24){case 1:{a[h>>0]=k>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|j>>>(d[x>>0]|0)<<(d[y>>0]|0);break}case 2:{b[h>>1]=k>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|j>>>(d[x>>0]|0)<<(d[y>>0]|0);break}case 3:{a[h+((d[s>>0]|0)>>>3&255)>>0]=l;a[h+((d[u>>0]|0)>>>3&255)>>0]=k;a[h+((d[w>>0]|0)>>>3&255)>>0]=f;break}case 4:{c[h>>2]=k>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|j>>>(d[x>>0]|0)<<(d[y>>0]|0);break}default:{}}g=g+1|0;h=h+G|0;f=26;continue}else if((f|0)==26){o=d[g>>0]|0;m=d[D+(o<<2)>>0]|0;n=d[D+(o<<2)+1>>0]|0;o=d[D+(o<<2)+2>>0]|0;switch(F<<24>>24){case 1:{l=d[h>>0]|0;f=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&l)>>>(d[s>>0]|0))>>0]|0;j=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&l)>>>(d[u>>0]|0))>>0]|0;k=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[w>>0]|0))>>0]|0;l=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&l)>>>(d[y>>0]|0))>>0]|0;break}case 2:{l=e[h>>1]|0;f=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&l)>>>(d[s>>0]|0))>>0]|0;j=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&l)>>>(d[u>>0]|0))>>0]|0;k=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[w>>0]|0))>>0]|0;l=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&l)>>>(d[y>>0]|0))>>0]|0;break}case 3:{f=a[h+((d[s>>0]|0)>>>3&255)>>0]|0;j=a[h+((d[u>>0]|0)>>>3&255)>>0]|0;k=a[h+((d[w>>0]|0)>>>3&255)>>0]|0;l=-1;break}case 4:{l=c[h>>2]|0;f=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&l)>>>(d[s>>0]|0))>>0]|0;j=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&l)>>>(d[u>>0]|0))>>0]|0;k=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[w>>0]|0))>>0]|0;l=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&l)>>>(d[y>>0]|0))>>0]|0;break}default:{f=0;j=0;k=0;l=0}}K=f&255;L=j&255;f=k&255;j=l&255;l=(((O(m-K|0,E)|0)>>>0)/255|0)+K|0;k=(((O(n-L|0,E)|0)>>>0)/255|0)+L|0;f=(((O(o-f|0,E)|0)>>>0)/255|0)+f|0;j=j+E-(((O(j,E)|0)>>>0)/255|0)|0;switch(F<<24>>24){case 1:{a[h>>0]=k>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|j>>>(d[x>>0]|0)<<(d[y>>0]|0);break}case 2:{b[h>>1]=k>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|j>>>(d[x>>0]|0)<<(d[y>>0]|0);break}case 3:{a[h+((d[s>>0]|0)>>>3&255)>>0]=l;a[h+((d[u>>0]|0)>>>3&255)>>0]=k;a[h+((d[w>>0]|0)>>>3&255)>>0]=f;break}case 4:{c[h>>2]=k>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|j>>>(d[x>>0]|0)<<(d[y>>0]|0);break}default:{}}g=g+1|0;h=h+G|0;f=37;continue}else if((f|0)==37){o=d[g>>0]|0;m=d[D+(o<<2)>>0]|0;n=d[D+(o<<2)+1>>0]|0;o=d[D+(o<<2)+2>>0]|0;switch(F<<24>>24){case 1:{l=d[h>>0]|0;f=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&l)>>>(d[s>>0]|0))>>0]|0;j=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&l)>>>(d[u>>0]|0))>>0]|0;k=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[w>>0]|0))>>0]|0;l=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&l)>>>(d[y>>0]|0))>>0]|0;break}case 2:{l=e[h>>1]|0;f=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&l)>>>(d[s>>0]|0))>>0]|0;j=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&l)>>>(d[u>>0]|0))>>0]|0;k=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[w>>0]|0))>>0]|0;l=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&l)>>>(d[y>>0]|0))>>0]|0;break}case 3:{f=a[h+((d[s>>0]|0)>>>3&255)>>0]|0;j=a[h+((d[u>>0]|0)>>>3&255)>>0]|0;k=a[h+((d[w>>0]|0)>>>3&255)>>0]|0;l=-1;break}case 4:{l=c[h>>2]|0;f=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&l)>>>(d[s>>0]|0))>>0]|0;j=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&l)>>>(d[u>>0]|0))>>0]|0;k=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[w>>0]|0))>>0]|0;l=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&l)>>>(d[y>>0]|0))>>0]|0;break}default:{f=0;j=0;k=0;l=0}}K=f&255;L=j&255;f=k&255;j=l&255;l=(((O(m-K|0,E)|0)>>>0)/255|0)+K|0;k=(((O(n-L|0,E)|0)>>>0)/255|0)+L|0;f=(((O(o-f|0,E)|0)>>>0)/255|0)+f|0;j=j+E-(((O(j,E)|0)>>>0)/255|0)|0;switch(F<<24>>24){case 1:{a[h>>0]=k>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|j>>>(d[x>>0]|0)<<(d[y>>0]|0);break}case 2:{b[h>>1]=k>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|j>>>(d[x>>0]|0)<<(d[y>>0]|0);break}case 3:{a[h+((d[s>>0]|0)>>>3&255)>>0]=l;a[h+((d[u>>0]|0)>>>3&255)>>0]=k;a[h+((d[w>>0]|0)>>>3&255)>>0]=f;break}case 4:{c[h>>2]=k>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|j>>>(d[x>>0]|0)<<(d[y>>0]|0);break}default:{}}g=g+1|0;h=h+G|0;if((p|0)>1){p=p+-1|0;f=4;continue}else break}if(!i){f=50;break}else{g=g+I|0;h=h+J|0}}if((f|0)!=48)if((f|0)==50)return}function RH(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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;g=c[f+24>>2]|0;i=c[f+28>>2]|0;J=c[f+16>>2]|0;K=c[f+36>>2]|0;h=c[f+44>>2]|0;D=c[(c[(c[f+40>>2]|0)+4>>2]|0)+4>>2]|0;E=c[f+56>>2]|0;F=d[f+63>>0]|0;G=a[h+9>>0]|0;H=G&255;if(!i)return;I=(g+7|0)/8|0;C=g&255;r=h+28|0;s=h+32|0;t=h+29|0;u=h+33|0;v=h+30|0;w=h+34|0;x=h+31|0;y=h+35|0;z=h+12|0;A=h+16|0;B=h+20|0;q=h+24|0;g=c[f>>2]|0;h=c[f+20>>2]|0;a:while(1){i=i+-1|0;switch(C&7){case 0:{p=I;f=4;break}case 7:{p=I;f=16;break}case 6:{p=I;f=28;break}case 5:{p=I;f=40;break}case 4:{p=I;o=h;f=52;break}case 3:{p=I;o=h;f=64;break}case 2:{p=I;o=h;f=76;break}case 1:{p=I;o=h;f=88;break}default:{f=100;break a}}while(1)if((f|0)==4){f=d[g>>0]|0;b:do if((f|0)!=(E|0)){m=d[D+(f<<2)>>0]|0;n=d[D+(f<<2)+1>>0]|0;o=d[D+(f<<2)+2>>0]|0;switch(G<<24>>24){case 1:{l=d[h>>0]|0;f=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&l)>>>(d[s>>0]|0))>>0]|0;j=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&l)>>>(d[u>>0]|0))>>0]|0;k=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[w>>0]|0))>>0]|0;l=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&l)>>>(d[y>>0]|0))>>0]|0;break}case 2:{l=e[h>>1]|0;f=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&l)>>>(d[s>>0]|0))>>0]|0;j=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&l)>>>(d[u>>0]|0))>>0]|0;k=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[w>>0]|0))>>0]|0;l=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&l)>>>(d[y>>0]|0))>>0]|0;break}case 3:{f=a[h+((d[s>>0]|0)>>>3&255)>>0]|0;j=a[h+((d[u>>0]|0)>>>3&255)>>0]|0;k=a[h+((d[w>>0]|0)>>>3&255)>>0]|0;l=-1;break}case 4:{l=c[h>>2]|0;f=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&l)>>>(d[s>>0]|0))>>0]|0;j=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&l)>>>(d[u>>0]|0))>>0]|0;k=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[w>>0]|0))>>0]|0;l=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&l)>>>(d[y>>0]|0))>>0]|0;break}default:{f=0;j=0;k=0;l=0}}M=f&255;L=j&255;f=k&255;j=l&255;l=(((O(m-M|0,F)|0)>>>0)/255|0)+M|0;k=(((O(n-L|0,F)|0)>>>0)/255|0)+L|0;f=(((O(o-f|0,F)|0)>>>0)/255|0)+f|0;j=j+F-(((O(j,F)|0)>>>0)/255|0)|0;switch(G<<24>>24){case 1:{a[h>>0]=k>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|j>>>(d[x>>0]|0)<<(d[y>>0]|0);break b}case 2:{b[h>>1]=k>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|j>>>(d[x>>0]|0)<<(d[y>>0]|0);break b}case 3:{a[h+((d[s>>0]|0)>>>3&255)>>0]=l;a[h+((d[u>>0]|0)>>>3&255)>>0]=k;a[h+((d[w>>0]|0)>>>3&255)>>0]=f;break b}case 4:{c[h>>2]=k>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|j>>>(d[x>>0]|0)<<(d[y>>0]|0);break b}default:break b}}while(0);g=g+1|0;h=h+H|0;f=16;continue}else if((f|0)==16){f=d[g>>0]|0;c:do if((f|0)!=(E|0)){m=d[D+(f<<2)>>0]|0;n=d[D+(f<<2)+1>>0]|0;o=d[D+(f<<2)+2>>0]|0;switch(G<<24>>24){case 1:{l=d[h>>0]|0;f=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&l)>>>(d[s>>0]|0))>>0]|0;j=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&l)>>>(d[u>>0]|0))>>0]|0;k=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[w>>0]|0))>>0]|0;l=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&l)>>>(d[y>>0]|0))>>0]|0;break}case 2:{l=e[h>>1]|0;f=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&l)>>>(d[s>>0]|0))>>0]|0;j=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&l)>>>(d[u>>0]|0))>>0]|0;k=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[w>>0]|0))>>0]|0;l=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&l)>>>(d[y>>0]|0))>>0]|0;break}case 3:{f=a[h+((d[s>>0]|0)>>>3&255)>>0]|0;j=a[h+((d[u>>0]|0)>>>3&255)>>0]|0;k=a[h+((d[w>>0]|0)>>>3&255)>>0]|0;l=-1;break}case 4:{l=c[h>>2]|0;f=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&l)>>>(d[s>>0]|0))>>0]|0;j=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&l)>>>(d[u>>0]|0))>>0]|0;k=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[w>>0]|0))>>0]|0;l=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&l)>>>(d[y>>0]|0))>>0]|0;break}default:{f=0;j=0;k=0;l=0}}L=f&255;M=j&255;f=k&255;j=l&255;l=(((O(m-L|0,F)|0)>>>0)/255|0)+L|0;k=(((O(n-M|0,F)|0)>>>0)/255|0)+M|0;f=(((O(o-f|0,F)|0)>>>0)/255|0)+f|0;j=j+F-(((O(j,F)|0)>>>0)/255|0)|0;switch(G<<24>>24){case 1:{a[h>>0]=k>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|j>>>(d[x>>0]|0)<<(d[y>>0]|0);break c}case 2:{b[h>>1]=k>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|j>>>(d[x>>0]|0)<<(d[y>>0]|0);break c}case 3:{a[h+((d[s>>0]|0)>>>3&255)>>0]=l;a[h+((d[u>>0]|0)>>>3&255)>>0]=k;a[h+((d[w>>0]|0)>>>3&255)>>0]=f;break c}case 4:{c[h>>2]=k>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|j>>>(d[x>>0]|0)<<(d[y>>0]|0);break c}default:break c}}while(0);g=g+1|0;h=h+H|0;f=28;continue}else if((f|0)==28){f=d[g>>0]|0;d:do if((f|0)!=(E|0)){m=d[D+(f<<2)>>0]|0;n=d[D+(f<<2)+1>>0]|0;o=d[D+(f<<2)+2>>0]|0;switch(G<<24>>24){case 1:{l=d[h>>0]|0;f=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&l)>>>(d[s>>0]|0))>>0]|0;j=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&l)>>>(d[u>>0]|0))>>0]|0;k=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[w>>0]|0))>>0]|0;l=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&l)>>>(d[y>>0]|0))>>0]|0;break}case 2:{l=e[h>>1]|0;f=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&l)>>>(d[s>>0]|0))>>0]|0;j=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&l)>>>(d[u>>0]|0))>>0]|0;k=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[w>>0]|0))>>0]|0;l=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&l)>>>(d[y>>0]|0))>>0]|0;break}case 3:{f=a[h+((d[s>>0]|0)>>>3&255)>>0]|0;j=a[h+((d[u>>0]|0)>>>3&255)>>0]|0;k=a[h+((d[w>>0]|0)>>>3&255)>>0]|0;l=-1;break}case 4:{l=c[h>>2]|0;f=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&l)>>>(d[s>>0]|0))>>0]|0;j=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&l)>>>(d[u>>0]|0))>>0]|0;k=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[w>>0]|0))>>0]|0;l=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&l)>>>(d[y>>0]|0))>>0]|0;break}default:{f=0;j=0;k=0;l=0}}L=f&255;M=j&255;f=k&255;j=l&255;l=(((O(m-L|0,F)|0)>>>0)/255|0)+L|0;k=(((O(n-M|0,F)|0)>>>0)/255|0)+M|0;f=(((O(o-f|0,F)|0)>>>0)/255|0)+f|0;j=j+F-(((O(j,F)|0)>>>0)/255|0)|0;switch(G<<24>>24){case 1:{a[h>>0]=k>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|j>>>(d[x>>0]|0)<<(d[y>>0]|0);break d}case 2:{b[h>>1]=k>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|j>>>(d[x>>0]|0)<<(d[y>>0]|0);break d}case 3:{a[h+((d[s>>0]|0)>>>3&255)>>0]=l;a[h+((d[u>>0]|0)>>>3&255)>>0]=k;a[h+((d[w>>0]|0)>>>3&255)>>0]=f;break d}case 4:{c[h>>2]=k>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|j>>>(d[x>>0]|0)<<(d[y>>0]|0);break d}default:break d}}while(0);g=g+1|0;h=h+H|0;f=40;continue}else if((f|0)==40){f=d[g>>0]|0;e:do if((f|0)!=(E|0)){m=d[D+(f<<2)>>0]|0;n=d[D+(f<<2)+1>>0]|0;o=d[D+(f<<2)+2>>0]|0;switch(G<<24>>24){case 1:{l=d[h>>0]|0;f=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&l)>>>(d[s>>0]|0))>>0]|0;j=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&l)>>>(d[u>>0]|0))>>0]|0;k=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[w>>0]|0))>>0]|0;l=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&l)>>>(d[y>>0]|0))>>0]|0;break}case 2:{l=e[h>>1]|0;f=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&l)>>>(d[s>>0]|0))>>0]|0;j=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&l)>>>(d[u>>0]|0))>>0]|0;k=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[w>>0]|0))>>0]|0;l=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&l)>>>(d[y>>0]|0))>>0]|0;break}case 3:{f=a[h+((d[s>>0]|0)>>>3&255)>>0]|0;j=a[h+((d[u>>0]|0)>>>3&255)>>0]|0;k=a[h+((d[w>>0]|0)>>>3&255)>>0]|0;l=-1;break}case 4:{l=c[h>>2]|0;f=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&l)>>>(d[s>>0]|0))>>0]|0;j=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&l)>>>(d[u>>0]|0))>>0]|0;k=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&l)>>>(d[w>>0]|0))>>0]|0;l=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&l)>>>(d[y>>0]|0))>>0]|0;break}default:{f=0;j=0;k=0;l=0}}L=f&255;M=j&255;f=k&255;j=l&255;l=(((O(m-L|0,F)|0)>>>0)/255|0)+L|0;k=(((O(n-M|0,F)|0)>>>0)/255|0)+M|0;f=(((O(o-f|0,F)|0)>>>0)/255|0)+f|0;j=j+F-(((O(j,F)|0)>>>0)/255|0)|0;switch(G<<24>>24){case 1:{a[h>>0]=k>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|j>>>(d[x>>0]|0)<<(d[y>>0]|0);break e}case 2:{b[h>>1]=k>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|j>>>(d[x>>0]|0)<<(d[y>>0]|0);break e}case 3:{a[h+((d[s>>0]|0)>>>3&255)>>0]=l;a[h+((d[u>>0]|0)>>>3&255)>>0]=k;a[h+((d[w>>0]|0)>>>3&255)>>0]=f;break e}case 4:{c[h>>2]=k>>>(d[t>>0]|0)<<(d[u>>0]|0)|l>>>(d[r>>0]|0)<<(d[s>>0]|0)|f>>>(d[v>>0]|0)<<(d[w>>0]|0)|j>>>(d[x>>0]|0)<<(d[y>>0]|0);break e}default:break e}}while(0);g=g+1|0;o=h+H|0;f=52;continue}else if((f|0)==52){h=d[g>>0]|0;f:do if((h|0)!=(E|0)){l=d[D+(h<<2)>>0]|0;m=d[D+(h<<2)+1>>0]|0;n=d[D+(h<<2)+2>>0]|0;switch(G<<24>>24){case 1:{k=d[o>>0]|0;h=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&k)>>>(d[s>>0]|0))>>0]|0;f=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[u>>0]|0))>>0]|0;j=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&k)>>>(d[w>>0]|0))>>0]|0;k=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&k)>>>(d[y>>0]|0))>>0]|0;break}case 2:{k=e[o>>1]|0;h=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&k)>>>(d[s>>0]|0))>>0]|0;f=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[u>>0]|0))>>0]|0;j=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&k)>>>(d[w>>0]|0))>>0]|0;k=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&k)>>>(d[y>>0]|0))>>0]|0;break}case 3:{h=a[o+((d[s>>0]|0)>>>3&255)>>0]|0;f=a[o+((d[u>>0]|0)>>>3&255)>>0]|0;j=a[o+((d[w>>0]|0)>>>3&255)>>0]|0;k=-1;break}case 4:{k=c[o>>2]|0;h=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&k)>>>(d[s>>0]|0))>>0]|0;f=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[u>>0]|0))>>0]|0;j=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&k)>>>(d[w>>0]|0))>>0]|0;k=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&k)>>>(d[y>>0]|0))>>0]|0;break}default:{h=0;f=0;j=0;k=0}}L=h&255;M=f&255;h=j&255;f=k&255;k=(((O(l-L|0,F)|0)>>>0)/255|0)+L|0;j=(((O(m-M|0,F)|0)>>>0)/255|0)+M|0;h=(((O(n-h|0,F)|0)>>>0)/255|0)+h|0;f=f+F-(((O(f,F)|0)>>>0)/255|0)|0;switch(G<<24>>24){case 1:{a[o>>0]=j>>>(d[t>>0]|0)<<(d[u>>0]|0)|k>>>(d[r>>0]|0)<<(d[s>>0]|0)|h>>>(d[v>>0]|0)<<(d[w>>0]|0)|f>>>(d[x>>0]|0)<<(d[y>>0]|0);break f}case 2:{b[o>>1]=j>>>(d[t>>0]|0)<<(d[u>>0]|0)|k>>>(d[r>>0]|0)<<(d[s>>0]|0)|h>>>(d[v>>0]|0)<<(d[w>>0]|0)|f>>>(d[x>>0]|0)<<(d[y>>0]|0);break f}case 3:{a[o+((d[s>>0]|0)>>>3&255)>>0]=k;a[o+((d[u>>0]|0)>>>3&255)>>0]=j;a[o+((d[w>>0]|0)>>>3&255)>>0]=h;break f}case 4:{c[o>>2]=j>>>(d[t>>0]|0)<<(d[u>>0]|0)|k>>>(d[r>>0]|0)<<(d[s>>0]|0)|h>>>(d[v>>0]|0)<<(d[w>>0]|0)|f>>>(d[x>>0]|0)<<(d[y>>0]|0);break f}default:break f}}while(0);g=g+1|0;o=o+H|0;f=64;continue}else if((f|0)==64){h=d[g>>0]|0;g:do if((h|0)!=(E|0)){l=d[D+(h<<2)>>0]|0;m=d[D+(h<<2)+1>>0]|0;n=d[D+(h<<2)+2>>0]|0;switch(G<<24>>24){case 1:{k=d[o>>0]|0;h=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&k)>>>(d[s>>0]|0))>>0]|0;f=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[u>>0]|0))>>0]|0;j=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&k)>>>(d[w>>0]|0))>>0]|0;k=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&k)>>>(d[y>>0]|0))>>0]|0;break}case 2:{k=e[o>>1]|0;h=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&k)>>>(d[s>>0]|0))>>0]|0;f=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[u>>0]|0))>>0]|0;j=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&k)>>>(d[w>>0]|0))>>0]|0;k=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&k)>>>(d[y>>0]|0))>>0]|0;break}case 3:{h=a[o+((d[s>>0]|0)>>>3&255)>>0]|0;f=a[o+((d[u>>0]|0)>>>3&255)>>0]|0;j=a[o+((d[w>>0]|0)>>>3&255)>>0]|0;k=-1;break}case 4:{k=c[o>>2]|0;h=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&k)>>>(d[s>>0]|0))>>0]|0;f=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[u>>0]|0))>>0]|0;j=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&k)>>>(d[w>>0]|0))>>0]|0;k=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&k)>>>(d[y>>0]|0))>>0]|0;break}default:{h=0;f=0;j=0;k=0}}L=h&255;M=f&255;h=j&255;f=k&255;k=(((O(l-L|0,F)|0)>>>0)/255|0)+L|0;j=(((O(m-M|0,F)|0)>>>0)/255|0)+M|0;h=(((O(n-h|0,F)|0)>>>0)/255|0)+h|0;f=f+F-(((O(f,F)|0)>>>0)/255|0)|0;switch(G<<24>>24){case 1:{a[o>>0]=j>>>(d[t>>0]|0)<<(d[u>>0]|0)|k>>>(d[r>>0]|0)<<(d[s>>0]|0)|h>>>(d[v>>0]|0)<<(d[w>>0]|0)|f>>>(d[x>>0]|0)<<(d[y>>0]|0);break g}case 2:{b[o>>1]=j>>>(d[t>>0]|0)<<(d[u>>0]|0)|k>>>(d[r>>0]|0)<<(d[s>>0]|0)|h>>>(d[v>>0]|0)<<(d[w>>0]|0)|f>>>(d[x>>0]|0)<<(d[y>>0]|0);break g}case 3:{a[o+((d[s>>0]|0)>>>3&255)>>0]=k;a[o+((d[u>>0]|0)>>>3&255)>>0]=j;a[o+((d[w>>0]|0)>>>3&255)>>0]=h;break g}case 4:{c[o>>2]=j>>>(d[t>>0]|0)<<(d[u>>0]|0)|k>>>(d[r>>0]|0)<<(d[s>>0]|0)|h>>>(d[v>>0]|0)<<(d[w>>0]|0)|f>>>(d[x>>0]|0)<<(d[y>>0]|0);break g}default:break g}}while(0);g=g+1|0;o=o+H|0;f=76;continue}else if((f|0)==76){h=d[g>>0]|0;h:do if((h|0)!=(E|0)){l=d[D+(h<<2)>>0]|0;m=d[D+(h<<2)+1>>0]|0;n=d[D+(h<<2)+2>>0]|0;switch(G<<24>>24){case 1:{k=d[o>>0]|0;h=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&k)>>>(d[s>>0]|0))>>0]|0;f=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[u>>0]|0))>>0]|0;j=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&k)>>>(d[w>>0]|0))>>0]|0;k=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&k)>>>(d[y>>0]|0))>>0]|0;break}case 2:{k=e[o>>1]|0;h=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&k)>>>(d[s>>0]|0))>>0]|0;f=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[u>>0]|0))>>0]|0;j=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&k)>>>(d[w>>0]|0))>>0]|0;k=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&k)>>>(d[y>>0]|0))>>0]|0;break}case 3:{h=a[o+((d[s>>0]|0)>>>3&255)>>0]|0;f=a[o+((d[u>>0]|0)>>>3&255)>>0]|0;j=a[o+((d[w>>0]|0)>>>3&255)>>0]|0;k=-1;break}case 4:{k=c[o>>2]|0;h=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&k)>>>(d[s>>0]|0))>>0]|0;f=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[u>>0]|0))>>0]|0;j=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&k)>>>(d[w>>0]|0))>>0]|0;k=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&k)>>>(d[y>>0]|0))>>0]|0;break}default:{h=0;f=0;j=0;k=0}}L=h&255;M=f&255;h=j&255;f=k&255;k=(((O(l-L|0,F)|0)>>>0)/255|0)+L|0;j=(((O(m-M|0,F)|0)>>>0)/255|0)+M|0;h=(((O(n-h|0,F)|0)>>>0)/255|0)+h|0;f=f+F-(((O(f,F)|0)>>>0)/255|0)|0;switch(G<<24>>24){case 1:{a[o>>0]=j>>>(d[t>>0]|0)<<(d[u>>0]|0)|k>>>(d[r>>0]|0)<<(d[s>>0]|0)|h>>>(d[v>>0]|0)<<(d[w>>0]|0)|f>>>(d[x>>0]|0)<<(d[y>>0]|0);break h}case 2:{b[o>>1]=j>>>(d[t>>0]|0)<<(d[u>>0]|0)|k>>>(d[r>>0]|0)<<(d[s>>0]|0)|h>>>(d[v>>0]|0)<<(d[w>>0]|0)|f>>>(d[x>>0]|0)<<(d[y>>0]|0);break h}case 3:{a[o+((d[s>>0]|0)>>>3&255)>>0]=k;a[o+((d[u>>0]|0)>>>3&255)>>0]=j;a[o+((d[w>>0]|0)>>>3&255)>>0]=h;break h}case 4:{c[o>>2]=j>>>(d[t>>0]|0)<<(d[u>>0]|0)|k>>>(d[r>>0]|0)<<(d[s>>0]|0)|h>>>(d[v>>0]|0)<<(d[w>>0]|0)|f>>>(d[x>>0]|0)<<(d[y>>0]|0);break h}default:break h}}while(0);g=g+1|0;o=o+H|0;f=88;continue}else if((f|0)==88){h=d[g>>0]|0;i:do if((h|0)!=(E|0)){l=d[D+(h<<2)>>0]|0;m=d[D+(h<<2)+1>>0]|0;n=d[D+(h<<2)+2>>0]|0;switch(G<<24>>24){case 1:{k=d[o>>0]|0;h=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&k)>>>(d[s>>0]|0))>>0]|0;f=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[u>>0]|0))>>0]|0;j=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&k)>>>(d[w>>0]|0))>>0]|0;k=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&k)>>>(d[y>>0]|0))>>0]|0;break}case 2:{k=e[o>>1]|0;h=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&k)>>>(d[s>>0]|0))>>0]|0;f=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[u>>0]|0))>>0]|0;j=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&k)>>>(d[w>>0]|0))>>0]|0;k=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&k)>>>(d[y>>0]|0))>>0]|0;break}case 3:{h=a[o+((d[s>>0]|0)>>>3&255)>>0]|0;f=a[o+((d[u>>0]|0)>>>3&255)>>0]|0;j=a[o+((d[w>>0]|0)>>>3&255)>>0]|0;k=-1;break}case 4:{k=c[o>>2]|0;h=a[(c[18232+((d[r>>0]|0)<<2)>>2]|0)+((c[z>>2]&k)>>>(d[s>>0]|0))>>0]|0;f=a[(c[18232+((d[t>>0]|0)<<2)>>2]|0)+((c[A>>2]&k)>>>(d[u>>0]|0))>>0]|0;j=a[(c[18232+((d[v>>0]|0)<<2)>>2]|0)+((c[B>>2]&k)>>>(d[w>>0]|0))>>0]|0;k=a[(c[18232+((d[x>>0]|0)<<2)>>2]|0)+((c[q>>2]&k)>>>(d[y>>0]|0))>>0]|0;break}default:{h=0;f=0;j=0;k=0}}L=h&255;M=f&255;h=j&255;f=k&255;k=(((O(l-L|0,F)|0)>>>0)/255|0)+L|0;j=(((O(m-M|0,F)|0)>>>0)/255|0)+M|0;h=(((O(n-h|0,F)|0)>>>0)/255|0)+h|0;f=f+F-(((O(f,F)|0)>>>0)/255|0)|0;switch(G<<24>>24){case 1:{a[o>>0]=j>>>(d[t>>0]|0)<<(d[u>>0]|0)|k>>>(d[r>>0]|0)<<(d[s>>0]|0)|h>>>(d[v>>0]|0)<<(d[w>>0]|0)|f>>>(d[x>>0]|0)<<(d[y>>0]|0);break i}case 2:{b[o>>1]=j>>>(d[t>>0]|0)<<(d[u>>0]|0)|k>>>(d[r>>0]|0)<<(d[s>>0]|0)|h>>>(d[v>>0]|0)<<(d[w>>0]|0)|f>>>(d[x>>0]|0)<<(d[y>>0]|0);break i}case 3:{a[o+((d[s>>0]|0)>>>3&255)>>0]=k;a[o+((d[u>>0]|0)>>>3&255)>>0]=j;a[o+((d[w>>0]|0)>>>3&255)>>0]=h;break i}case 4:{c[o>>2]=j>>>(d[t>>0]|0)<<(d[u>>0]|0)|k>>>(d[r>>0]|0)<<(d[s>>0]|0)|h>>>(d[v>>0]|0)<<(d[w>>0]|0)|f>>>(d[x>>0]|0)<<(d[y>>0]|0);break i}default:break i}}while(0);g=g+1|0;h=o+H|0;if((p|0)>1){p=p+-1|0;f=4;continue}else break}if(!i){f=102;break}else{g=g+J|0;h=h+K|0}}if((f|0)!=100)if((f|0)==102)return}function SH(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0;g=c[b+24>>2]|0;i=c[b+28>>2]|0;e=c[b>>2]|0;aa=c[b+16>>2]|0;f=c[b+20>>2]|0;$=c[b+36>>2]|0;Z=c[b+48>>2]|0;_=c[b+56>>2]|0;h=i+-1|0;b=(i|0)==0;if(!Z){if(b)return;i=(g+7|0)/8|0;b=g&255;if(!(b&7)){while(1){g=i;b=f;while(1){f=a[e>>0]|0;if((f&255|0)!=(_|0))a[b>>0]=f;f=a[e+1>>0]|0;if((f&255|0)!=(_|0))a[b+1>>0]=f;f=a[e+2>>0]|0;if((f&255|0)!=(_|0))a[b+2>>0]=f;f=a[e+3>>0]|0;if((f&255|0)!=(_|0))a[b+3>>0]=f;f=a[e+4>>0]|0;if((f&255|0)!=(_|0))a[b+4>>0]=f;f=a[e+5>>0]|0;if((f&255|0)!=(_|0))a[b+5>>0]=f;f=a[e+6>>0]|0;if((f&255|0)!=(_|0))a[b+6>>0]=f;f=a[e+7>>0]|0;if((f&255|0)!=(_|0))a[b+7>>0]=f;b=b+8|0;e=e+8|0;if((g|0)<=1)break;else g=g+-1|0}if(!h)break;else{f=b+$|0;e=e+aa|0;h=h+-1|0}}return}a:while(1){switch(b&7){case 1:{x=e;y=f;T=i;e=93;break}case 7:{j=i;k=e;l=f;e=75;break}case 6:{n=e;o=f;z=i;e=78;break}case 5:{p=e;q=f;D=i;e=81;break}case 4:{r=e;s=f;H=i;e=84;break}case 3:{t=e;u=f;L=i;e=87;break}case 2:{v=e;w=f;P=i;e=90;break}default:{e=96;break a}}while(1)if((e|0)==75){e=a[k>>0]|0;if((e&255|0)!=(_|0))a[l>>0]=e;n=k+1|0;o=l+1|0;z=j;e=78;continue}else if((e|0)==78){e=a[n>>0]|0;if((e&255|0)!=(_|0))a[o>>0]=e;p=n+1|0;q=o+1|0;D=z;e=81;continue}else if((e|0)==81){e=a[p>>0]|0;if((e&255|0)!=(_|0))a[q>>0]=e;r=p+1|0;s=q+1|0;H=D;e=84;continue}else if((e|0)==84){e=a[r>>0]|0;if((e&255|0)!=(_|0))a[s>>0]=e;t=r+1|0;u=s+1|0;L=H;e=87;continue}else if((e|0)==87){e=a[t>>0]|0;if((e&255|0)!=(_|0))a[u>>0]=e;v=t+1|0;w=u+1|0;P=L;e=90;continue}else if((e|0)==90){e=a[v>>0]|0;if((e&255|0)!=(_|0))a[w>>0]=e;x=v+1|0;y=w+1|0;T=P;e=93;continue}else if((e|0)==93){e=a[x>>0]|0;if((e&255|0)!=(_|0))a[y>>0]=e;f=y+1|0;e=x+1|0;if((T|0)<=1)break;e=a[e>>0]|0;if((e&255|0)!=(_|0))a[f>>0]=e;j=T+-1|0;k=x+2|0;l=y+2|0;e=75;continue}if(!h){e=98;break}else{f=f+$|0;e=e+aa|0;h=h+-1|0}}if((e|0)!=96)if((e|0)==98)return}else{if(b)return;i=(g+7|0)/8|0;b=g&255;if(!(b&7)){while(1){g=i;b=f;while(1){f=d[e>>0]|0;if((f|0)!=(_|0))a[b>>0]=a[Z+f>>0]|0;f=d[e+1>>0]|0;if((f|0)!=(_|0))a[b+1>>0]=a[Z+f>>0]|0;f=d[e+2>>0]|0;if((f|0)!=(_|0))a[b+2>>0]=a[Z+f>>0]|0;f=d[e+3>>0]|0;if((f|0)!=(_|0))a[b+3>>0]=a[Z+f>>0]|0;f=d[e+4>>0]|0;if((f|0)!=(_|0))a[b+4>>0]=a[Z+f>>0]|0;f=d[e+5>>0]|0;if((f|0)!=(_|0))a[b+5>>0]=a[Z+f>>0]|0;f=d[e+6>>0]|0;if((f|0)!=(_|0))a[b+6>>0]=a[Z+f>>0]|0;f=d[e+7>>0]|0;if((f|0)!=(_|0))a[b+7>>0]=a[Z+f>>0]|0;b=b+8|0;e=e+8|0;if((g|0)<=1)break;else g=g+-1|0}if(!h)break;else{e=e+aa|0;f=b+$|0;h=h+-1|0}}return}b:while(1){switch(b&7){case 1:{U=i;X=e;Y=f;e=66;break}case 7:{m=i;B=e;C=f;e=48;break}case 6:{A=i;F=e;G=f;e=51;break}case 5:{E=i;J=e;K=f;e=54;break}case 4:{I=i;N=e;O=f;e=57;break}case 3:{M=i;R=e;S=f;e=60;break}case 2:{Q=i;V=e;W=f;e=63;break}default:{e=69;break b}}while(1)if((e|0)==48){e=d[B>>0]|0;if((e|0)!=(_|0))a[C>>0]=a[Z+e>>0]|0;A=m;F=B+1|0;G=C+1|0;e=51;continue}else if((e|0)==51){e=d[F>>0]|0;if((e|0)!=(_|0))a[G>>0]=a[Z+e>>0]|0;E=A;J=F+1|0;K=G+1|0;e=54;continue}else if((e|0)==54){e=d[J>>0]|0;if((e|0)!=(_|0))a[K>>0]=a[Z+e>>0]|0;I=E;N=J+1|0;O=K+1|0;e=57;continue}else if((e|0)==57){e=d[N>>0]|0;if((e|0)!=(_|0))a[O>>0]=a[Z+e>>0]|0;M=I;R=N+1|0;S=O+1|0;e=60;continue}else if((e|0)==60){e=d[R>>0]|0;if((e|0)!=(_|0))a[S>>0]=a[Z+e>>0]|0;Q=M;V=R+1|0;W=S+1|0;e=63;continue}else if((e|0)==63){e=d[V>>0]|0;if((e|0)!=(_|0))a[W>>0]=a[Z+e>>0]|0;U=Q;X=V+1|0;Y=W+1|0;e=66;continue}else if((e|0)==66){e=d[X>>0]|0;if((e|0)!=(_|0))a[Y>>0]=a[Z+e>>0]|0;f=Y+1|0;e=X+1|0;if((U|0)<=1)break;e=d[e>>0]|0;if((e|0)!=(_|0))a[f>>0]=a[Z+e>>0]|0;m=U+-1|0;B=X+2|0;C=Y+2|0;e=48;continue}if(!h){e=98;break}else{e=e+aa|0;f=f+$|0;h=h+-1|0}}if((e|0)!=69)if((e|0)==98)return}}function TH(a){a=a|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;e=c[a+24>>2]|0;l=c[a+28>>2]|0;f=c[a>>2]|0;o=c[a+16>>2]|0;g=c[a+20>>2]|0;m=c[a+48>>2]|0;n=c[a+56>>2]|0;k=(c[a+36>>2]|0)/2|0;h=l+-1|0;if(!l)return;l=(e+7|0)/8|0;j=e&255;if(!(j&7)){a=g;while(1){g=l;e=a;while(1){a=d[f>>0]|0;if((a|0)!=(n|0))b[e>>1]=b[m+(a<<1)>>1]|0;a=d[f+1>>0]|0;if((a|0)!=(n|0))b[e+2>>1]=b[m+(a<<1)>>1]|0;a=d[f+2>>0]|0;if((a|0)!=(n|0))b[e+4>>1]=b[m+(a<<1)>>1]|0;a=d[f+3>>0]|0;if((a|0)!=(n|0))b[e+6>>1]=b[m+(a<<1)>>1]|0;a=d[f+4>>0]|0;if((a|0)!=(n|0))b[e+8>>1]=b[m+(a<<1)>>1]|0;a=d[f+5>>0]|0;if((a|0)!=(n|0))b[e+10>>1]=b[m+(a<<1)>>1]|0;a=d[f+6>>0]|0;if((a|0)!=(n|0))b[e+12>>1]=b[m+(a<<1)>>1]|0;a=d[f+7>>0]|0;if((a|0)!=(n|0))b[e+14>>1]=b[m+(a<<1)>>1]|0;f=f+8|0;e=e+16|0;if((g|0)<=1)break;else g=g+-1|0}if(!h)break;else{f=f+o|0;a=e+(k<<1)|0;h=h+-1|0}}return}a:while(1){switch(j&7){case 1:{i=l;a=44;break}case 7:{e=l;a=26;break}case 6:{e=l;a=29;break}case 5:{e=l;a=32;break}case 4:{e=l;a=35;break}case 3:{e=l;a=38;break}case 2:{e=l;a=41;break}default:{a=47;break a}}while(1)if((a|0)==26){a=d[f>>0]|0;if((a|0)!=(n|0))b[g>>1]=b[m+(a<<1)>>1]|0;g=g+2|0;f=f+1|0;a=29;continue}else if((a|0)==29){a=d[f>>0]|0;if((a|0)!=(n|0))b[g>>1]=b[m+(a<<1)>>1]|0;g=g+2|0;f=f+1|0;a=32;continue}else if((a|0)==32){a=d[f>>0]|0;if((a|0)!=(n|0))b[g>>1]=b[m+(a<<1)>>1]|0;g=g+2|0;f=f+1|0;a=35;continue}else if((a|0)==35){a=d[f>>0]|0;if((a|0)!=(n|0))b[g>>1]=b[m+(a<<1)>>1]|0;g=g+2|0;f=f+1|0;a=38;continue}else if((a|0)==38){a=d[f>>0]|0;if((a|0)!=(n|0))b[g>>1]=b[m+(a<<1)>>1]|0;g=g+2|0;f=f+1|0;a=41;continue}else if((a|0)==41){a=d[f>>0]|0;if((a|0)!=(n|0))b[g>>1]=b[m+(a<<1)>>1]|0;i=e;f=f+1|0;g=g+2|0;a=44;continue}else if((a|0)==44){a=d[f>>0]|0;if((a|0)!=(n|0))b[g>>1]=b[m+(a<<1)>>1]|0;a=f+1|0;e=g+2|0;if((i|0)<=1)break;a=d[a>>0]|0;if((a|0)!=(n|0))b[e>>1]=b[m+(a<<1)>>1]|0;e=i+-1|0;g=g+4|0;f=f+2|0;a=26;continue}if(!h){a=49;break}else{f=a+o|0;g=e+(k<<1)|0;h=h+-1|0}}if((a|0)!=47)if((a|0)==49)return}function UH(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;e=c[b+24>>2]|0;f=c[b+28>>2]|0;m=c[b+16>>2]|0;n=c[b+36>>2]|0;j=c[b+48>>2]|0;k=c[b+56>>2]|0;if(!f)return;l=(e+7|0)/8|0;i=e&255;g=c[b>>2]|0;b=c[b+20>>2]|0;a:while(1){f=f+-1|0;switch(i&7){case 0:{h=l;e=4;break}case 7:{h=l;e=7;break}case 6:{h=l;e=10;break}case 5:{h=l;e=13;break}case 4:{h=l;e=16;break}case 3:{h=l;e=19;break}case 2:{h=l;e=22;break}case 1:{h=l;e=25;break}default:{e=28;break a}}while(1)if((e|0)==4){e=d[g>>0]|0;if((e|0)!=(k|0)){o=e<<2;e=o|1;a[b>>0]=a[j+o>>0]|0;a[b+1>>0]=a[j+e>>0]|0;a[b+2>>0]=a[j+(e+1)>>0]|0}g=g+1|0;b=b+3|0;e=7;continue}else if((e|0)==7){e=d[g>>0]|0;if((e|0)!=(k|0)){e=e<<2;o=e|1;a[b>>0]=a[j+e>>0]|0;a[b+1>>0]=a[j+o>>0]|0;a[b+2>>0]=a[j+(o+1)>>0]|0}g=g+1|0;b=b+3|0;e=10;continue}else if((e|0)==10){e=d[g>>0]|0;if((e|0)!=(k|0)){e=e<<2;o=e|1;a[b>>0]=a[j+e>>0]|0;a[b+1>>0]=a[j+o>>0]|0;a[b+2>>0]=a[j+(o+1)>>0]|0}g=g+1|0;b=b+3|0;e=13;continue}else if((e|0)==13){e=d[g>>0]|0;if((e|0)!=(k|0)){e=e<<2;o=e|1;a[b>>0]=a[j+e>>0]|0;a[b+1>>0]=a[j+o>>0]|0;a[b+2>>0]=a[j+(o+1)>>0]|0}g=g+1|0;b=b+3|0;e=16;continue}else if((e|0)==16){e=d[g>>0]|0;if((e|0)!=(k|0)){e=e<<2;o=e|1;a[b>>0]=a[j+e>>0]|0;a[b+1>>0]=a[j+o>>0]|0;a[b+2>>0]=a[j+(o+1)>>0]|0}g=g+1|0;b=b+3|0;e=19;continue}else if((e|0)==19){e=d[g>>0]|0;if((e|0)!=(k|0)){e=e<<2;o=e|1;a[b>>0]=a[j+e>>0]|0;a[b+1>>0]=a[j+o>>0]|0;a[b+2>>0]=a[j+(o+1)>>0]|0}g=g+1|0;b=b+3|0;e=22;continue}else if((e|0)==22){e=d[g>>0]|0;if((e|0)!=(k|0)){e=e<<2;o=e|1;a[b>>0]=a[j+e>>0]|0;a[b+1>>0]=a[j+o>>0]|0;a[b+2>>0]=a[j+(o+1)>>0]|0}g=g+1|0;b=b+3|0;e=25;continue}else if((e|0)==25){e=d[g>>0]|0;if((e|0)!=(k|0)){e=e<<2;o=e|1;a[b>>0]=a[j+e>>0]|0;a[b+1>>0]=a[j+o>>0]|0;a[b+2>>0]=a[j+(o+1)>>0]|0}e=g+1|0;b=b+3|0;if((h|0)>1){h=h+-1|0;g=e;e=4;continue}else break}if(!f){e=30;break}else{g=e+m|0;b=b+n|0}}if((e|0)!=28)if((e|0)==30)return}function VH(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;b=c[a+24>>2]|0;k=c[a+28>>2]|0;e=c[a>>2]|0;n=c[a+16>>2]|0;f=c[a+20>>2]|0;l=c[a+48>>2]|0;m=c[a+56>>2]|0;j=(c[a+36>>2]|0)/4|0;g=k+-1|0;if(!k)return;k=(b+7|0)/8|0;i=b&255;if(!(i&7)){a=f;while(1){f=k;b=a;while(1){a=d[e>>0]|0;if((a|0)!=(m|0))c[b>>2]=c[l+(a<<2)>>2];a=d[e+1>>0]|0;if((a|0)!=(m|0))c[b+4>>2]=c[l+(a<<2)>>2];a=d[e+2>>0]|0;if((a|0)!=(m|0))c[b+8>>2]=c[l+(a<<2)>>2];a=d[e+3>>0]|0;if((a|0)!=(m|0))c[b+12>>2]=c[l+(a<<2)>>2];a=d[e+4>>0]|0;if((a|0)!=(m|0))c[b+16>>2]=c[l+(a<<2)>>2];a=d[e+5>>0]|0;if((a|0)!=(m|0))c[b+20>>2]=c[l+(a<<2)>>2];a=d[e+6>>0]|0;if((a|0)!=(m|0))c[b+24>>2]=c[l+(a<<2)>>2];a=d[e+7>>0]|0;if((a|0)!=(m|0))c[b+28>>2]=c[l+(a<<2)>>2];e=e+8|0;b=b+32|0;if((f|0)<=1)break;else f=f+-1|0}if(!g)break;else{e=e+n|0;a=b+(j<<2)|0;g=g+-1|0}}return}a:while(1){switch(i&7){case 1:{h=k;a=44;break}case 7:{b=k;a=26;break}case 6:{b=k;a=29;break}case 5:{b=k;a=32;break}case 4:{b=k;a=35;break}case 3:{b=k;a=38;break}case 2:{b=k;a=41;break}default:{a=47;break a}}while(1)if((a|0)==26){a=d[e>>0]|0;if((a|0)!=(m|0))c[f>>2]=c[l+(a<<2)>>2];f=f+4|0;e=e+1|0;a=29;continue}else if((a|0)==29){a=d[e>>0]|0;if((a|0)!=(m|0))c[f>>2]=c[l+(a<<2)>>2];f=f+4|0;e=e+1|0;a=32;continue}else if((a|0)==32){a=d[e>>0]|0;if((a|0)!=(m|0))c[f>>2]=c[l+(a<<2)>>2];f=f+4|0;e=e+1|0;a=35;continue}else if((a|0)==35){a=d[e>>0]|0;if((a|0)!=(m|0))c[f>>2]=c[l+(a<<2)>>2];f=f+4|0;e=e+1|0;a=38;continue}else if((a|0)==38){a=d[e>>0]|0;if((a|0)!=(m|0))c[f>>2]=c[l+(a<<2)>>2];f=f+4|0;e=e+1|0;a=41;continue}else if((a|0)==41){a=d[e>>0]|0;if((a|0)!=(m|0))c[f>>2]=c[l+(a<<2)>>2];h=b;e=e+1|0;f=f+4|0;a=44;continue}else if((a|0)==44){a=d[e>>0]|0;if((a|0)!=(m|0))c[f>>2]=c[l+(a<<2)>>2];a=e+1|0;b=f+4|0;if((h|0)<=1)break;a=d[a>>0]|0;if((a|0)!=(m|0))c[b>>2]=c[l+(a<<2)>>2];b=h+-1|0;f=f+8|0;e=e+2|0;a=26;continue}if(!g){a=49;break}else{e=a+n|0;f=b+(j<<2)|0;g=g+-1|0}}if((a|0)!=47)if((a|0)==49)return}function WH(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;f=c[b+24>>2]|0;l=c[b+28>>2]|0;g=c[b>>2]|0;n=c[b+16>>2]|0;e=c[b+20>>2]|0;m=c[b+36>>2]|0;k=c[b+48>>2]|0;i=l+-1|0;if(!l)return;l=(f+7|0)/8|0;j=f&255;switch(j&7){case 0:{b=g;g=i;while(1){f=l;while(1){a[e>>0]=a[k+(d[b>>0]|0)>>0]|0;a[e+1>>0]=a[k+(d[b+1>>0]|0)>>0]|0;a[e+2>>0]=a[k+(d[b+2>>0]|0)>>0]|0;a[e+3>>0]=a[k+(d[b+3>>0]|0)>>0]|0;a[e+4>>0]=a[k+(d[b+4>>0]|0)>>0]|0;a[e+5>>0]=a[k+(d[b+5>>0]|0)>>0]|0;a[e+6>>0]=a[k+(d[b+6>>0]|0)>>0]|0;a[e+7>>0]=a[k+(d[b+7>>0]|0)>>0]|0;e=e+8|0;b=b+8|0;if((f|0)<=1)break;else f=f+-1|0}if(!g)break;else{b=b+n|0;e=e+m|0;g=g+-1|0}}return}case 7:{while(1){h=l;while(1){a[e>>0]=a[k+(d[g>>0]|0)>>0]|0;a[e+1>>0]=a[k+(d[g+1>>0]|0)>>0]|0;a[e+2>>0]=a[k+(d[g+2>>0]|0)>>0]|0;a[e+3>>0]=a[k+(d[g+3>>0]|0)>>0]|0;a[e+4>>0]=a[k+(d[g+4>>0]|0)>>0]|0;a[e+5>>0]=a[k+(d[g+5>>0]|0)>>0]|0;a[e+6>>0]=a[k+(d[g+6>>0]|0)>>0]|0;f=e+7|0;b=g+7|0;if((h|0)<=1)break;a[f>>0]=a[k+(d[b>>0]|0)>>0]|0;h=h+-1|0;g=g+8|0;e=e+8|0}if(!i)break;else{g=b+n|0;e=f+m|0;i=i+-1|0}}return}default:{a:while(1){switch(j&7){case 1:{h=l;f=17;break}case 2:{b=l;f=16;break}case 6:{b=l;f=12;break}case 5:{b=l;f=13;break}case 4:{b=l;f=14;break}case 3:{b=l;f=15;break}default:{f=18;break a}}while(1)if((f|0)==12){a[e>>0]=a[k+(d[g>>0]|0)>>0]|0;g=g+1|0;e=e+1|0;f=13;continue}else if((f|0)==13){a[e>>0]=a[k+(d[g>>0]|0)>>0]|0;g=g+1|0;e=e+1|0;f=14;continue}else if((f|0)==14){a[e>>0]=a[k+(d[g>>0]|0)>>0]|0;g=g+1|0;e=e+1|0;f=15;continue}else if((f|0)==15){a[e>>0]=a[k+(d[g>>0]|0)>>0]|0;g=g+1|0;e=e+1|0;f=16;continue}else if((f|0)==16){a[e>>0]=a[k+(d[g>>0]|0)>>0]|0;h=b;g=g+1|0;e=e+1|0;f=17;continue}else if((f|0)==17){a[e>>0]=a[k+(d[g>>0]|0)>>0]|0;f=e+1|0;b=g+1|0;if((h|0)<=1)break;a[f>>0]=a[k+(d[b>>0]|0)>>0]|0;a[e+2>>0]=a[k+(d[g+2>>0]|0)>>0]|0;b=h+-1|0;g=g+3|0;e=e+3|0;f=12;continue}if(!i){f=20;break}else{g=b+n|0;e=f+m|0;i=i+-1|0}}if((f|0)!=18)if((f|0)==20)return}}}function XH(a){a=a|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;f=c[a+24>>2]|0;l=c[a+28>>2]|0;g=c[a>>2]|0;n=c[a+16>>2]|0;e=c[a+20>>2]|0;m=c[a+36>>2]|0;k=c[a+48>>2]|0;h=l+-1|0;if(!l)return;l=(f+7|0)/8|0;j=f&255;if(!(j&7)){a=g;g=h;while(1){f=l;while(1){b[e>>1]=b[k+((d[a>>0]|0)<<1)>>1]|0;b[e+2>>1]=b[k+((d[a+1>>0]|0)<<1)>>1]|0;b[e+4>>1]=b[k+((d[a+2>>0]|0)<<1)>>1]|0;b[e+6>>1]=b[k+((d[a+3>>0]|0)<<1)>>1]|0;b[e+8>>1]=b[k+((d[a+4>>0]|0)<<1)>>1]|0;b[e+10>>1]=b[k+((d[a+5>>0]|0)<<1)>>1]|0;b[e+12>>1]=b[k+((d[a+6>>0]|0)<<1)>>1]|0;j=a;a=a+8|0;b[e+14>>1]=b[k+((d[j+7>>0]|0)<<1)>>1]|0;e=e+16|0;if((f|0)<=1)break;else f=f+-1|0}if(!g)break;else{a=a+n|0;e=e+m|0;g=g+-1|0}}return}a:while(1){switch(j&7){case 1:{i=l;f=14;break}case 7:{a=l;f=8;break}case 6:{a=l;f=9;break}case 5:{a=l;f=10;break}case 4:{a=l;f=11;break}case 3:{a=l;f=12;break}case 2:{a=l;f=13;break}default:{f=15;break a}}while(1)if((f|0)==8){b[e>>1]=b[k+((d[g>>0]|0)<<1)>>1]|0;g=g+1|0;e=e+2|0;f=9;continue}else if((f|0)==9){b[e>>1]=b[k+((d[g>>0]|0)<<1)>>1]|0;g=g+1|0;e=e+2|0;f=10;continue}else if((f|0)==10){b[e>>1]=b[k+((d[g>>0]|0)<<1)>>1]|0;g=g+1|0;e=e+2|0;f=11;continue}else if((f|0)==11){b[e>>1]=b[k+((d[g>>0]|0)<<1)>>1]|0;g=g+1|0;e=e+2|0;f=12;continue}else if((f|0)==12){b[e>>1]=b[k+((d[g>>0]|0)<<1)>>1]|0;g=g+1|0;e=e+2|0;f=13;continue}else if((f|0)==13){b[e>>1]=b[k+((d[g>>0]|0)<<1)>>1]|0;i=a;g=g+1|0;e=e+2|0;f=14;continue}else if((f|0)==14){a=g+1|0;b[e>>1]=b[k+((d[g>>0]|0)<<1)>>1]|0;f=e+2|0;if((i|0)<=1)break;b[f>>1]=b[k+((d[a>>0]|0)<<1)>>1]|0;a=i+-1|0;g=g+2|0;e=e+4|0;f=8;continue}if(!h){f=17;break}else{g=a+n|0;e=f+m|0;h=h+-1|0}}if((f|0)!=15)if((f|0)==17)return}function YH(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;e=c[b+24>>2]|0;f=c[b+28>>2]|0;l=c[b+16>>2]|0;m=c[b+36>>2]|0;j=c[b+48>>2]|0;if(!f)return;k=(e+7|0)/8|0;i=e&255;h=c[b+20>>2]|0;e=c[b>>2]|0;a:while(1){f=f+-1|0;switch(i&7){case 0:{g=k;b=h;h=4;break}case 7:{g=k;b=h;h=5;break}case 6:{g=k;b=h;h=6;break}case 5:{g=k;b=h;h=7;break}case 4:{g=k;b=h;h=8;break}case 3:{g=k;b=h;h=9;break}case 2:{g=k;b=h;h=10;break}case 1:{g=k;b=h;h=11;break}default:{h=12;break a}}while(1)if((h|0)==4){o=(d[e>>0]|0)<<2;n=o|1;a[b>>0]=a[j+o>>0]|0;a[b+1>>0]=a[j+n>>0]|0;a[b+2>>0]=a[j+(n+1)>>0]|0;b=b+3|0;e=e+1|0;h=5;continue}else if((h|0)==5){n=(d[e>>0]|0)<<2;o=n|1;a[b>>0]=a[j+n>>0]|0;a[b+1>>0]=a[j+o>>0]|0;a[b+2>>0]=a[j+(o+1)>>0]|0;b=b+3|0;e=e+1|0;h=6;continue}else if((h|0)==6){n=(d[e>>0]|0)<<2;o=n|1;a[b>>0]=a[j+n>>0]|0;a[b+1>>0]=a[j+o>>0]|0;a[b+2>>0]=a[j+(o+1)>>0]|0;b=b+3|0;e=e+1|0;h=7;continue}else if((h|0)==7){n=(d[e>>0]|0)<<2;o=n|1;a[b>>0]=a[j+n>>0]|0;a[b+1>>0]=a[j+o>>0]|0;a[b+2>>0]=a[j+(o+1)>>0]|0;b=b+3|0;e=e+1|0;h=8;continue}else if((h|0)==8){n=(d[e>>0]|0)<<2;o=n|1;a[b>>0]=a[j+n>>0]|0;a[b+1>>0]=a[j+o>>0]|0;a[b+2>>0]=a[j+(o+1)>>0]|0;b=b+3|0;e=e+1|0;h=9;continue}else if((h|0)==9){n=(d[e>>0]|0)<<2;o=n|1;a[b>>0]=a[j+n>>0]|0;a[b+1>>0]=a[j+o>>0]|0;a[b+2>>0]=a[j+(o+1)>>0]|0;b=b+3|0;e=e+1|0;h=10;continue}else if((h|0)==10){n=(d[e>>0]|0)<<2;o=n|1;a[b>>0]=a[j+n>>0]|0;a[b+1>>0]=a[j+o>>0]|0;a[b+2>>0]=a[j+(o+1)>>0]|0;b=b+3|0;e=e+1|0;h=11;continue}else if((h|0)==11){n=(d[e>>0]|0)<<2;o=n|1;a[b>>0]=a[j+n>>0]|0;a[b+1>>0]=a[j+o>>0]|0;a[b+2>>0]=a[j+(o+1)>>0]|0;e=e+1|0;b=b+3|0;if((g|0)>1){g=g+-1|0;h=4;continue}else break}if(!f){h=14;break}else{h=b+m|0;e=e+l|0}}if((h|0)!=12)if((h|0)==14)return}function ZH(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;e=c[a+24>>2]|0;k=c[a+28>>2]|0;f=c[a>>2]|0;m=c[a+16>>2]|0;b=c[a+20>>2]|0;l=(c[a+36>>2]|0)/4|0;j=c[a+48>>2]|0;g=k+-1|0;if(!k)return;k=(e+7|0)/8|0;i=e&255;if(!(i&7)){a=f;f=g;while(1){e=k;while(1){c[b>>2]=c[j+((d[a>>0]|0)<<2)>>2];c[b+4>>2]=c[j+((d[a+1>>0]|0)<<2)>>2];c[b+8>>2]=c[j+((d[a+2>>0]|0)<<2)>>2];c[b+12>>2]=c[j+((d[a+3>>0]|0)<<2)>>2];c[b+16>>2]=c[j+((d[a+4>>0]|0)<<2)>>2];c[b+20>>2]=c[j+((d[a+5>>0]|0)<<2)>>2];c[b+24>>2]=c[j+((d[a+6>>0]|0)<<2)>>2];h=a;a=a+8|0;i=b;b=b+32|0;c[i+28>>2]=c[j+((d[h+7>>0]|0)<<2)>>2];if((e|0)<=1)break;else e=e+-1|0}if(!f)break;else{a=a+m|0;b=b+(l<<2)|0;f=f+-1|0}}return}a:while(1){switch(i&7){case 1:{h=k;e=14;break}case 7:{a=k;e=8;break}case 6:{a=k;e=9;break}case 5:{a=k;e=10;break}case 4:{a=k;e=11;break}case 3:{a=k;e=12;break}case 2:{a=k;e=13;break}default:{e=15;break a}}while(1)if((e|0)==8){c[b>>2]=c[j+((d[f>>0]|0)<<2)>>2];f=f+1|0;b=b+4|0;e=9;continue}else if((e|0)==9){c[b>>2]=c[j+((d[f>>0]|0)<<2)>>2];f=f+1|0;b=b+4|0;e=10;continue}else if((e|0)==10){c[b>>2]=c[j+((d[f>>0]|0)<<2)>>2];f=f+1|0;b=b+4|0;e=11;continue}else if((e|0)==11){c[b>>2]=c[j+((d[f>>0]|0)<<2)>>2];f=f+1|0;b=b+4|0;e=12;continue}else if((e|0)==12){c[b>>2]=c[j+((d[f>>0]|0)<<2)>>2];f=f+1|0;b=b+4|0;e=13;continue}else if((e|0)==13){c[b>>2]=c[j+((d[f>>0]|0)<<2)>>2];h=a;f=f+1|0;b=b+4|0;e=14;continue}else if((e|0)==14){a=f+1|0;e=b+4|0;c[b>>2]=c[j+((d[f>>0]|0)<<2)>>2];if((h|0)<=1)break;c[e>>2]=c[j+((d[a>>0]|0)<<2)>>2];a=h+-1|0;f=f+2|0;b=b+8|0;e=8;continue}if(!g){e=17;break}else{f=a+m|0;b=e+(l<<2)|0;g=g+-1|0}}if((e|0)!=15)if((e|0)==17)return}function _H(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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;w=c[f+24>>2]|0;h=c[f+28>>2]|0;M=c[f+36>>2]|0;u=c[(c[(c[f+40>>2]|0)+4>>2]|0)+4>>2]|0;g=c[f+44>>2]|0;v=d[f+63>>0]|0;x=a[g+9>>0]|0;y=x&255;z=((w+7|0)/-8|0)+w+(c[f+16>>2]|0)|0;if(!h)return;A=(w|0)>0;B=g+28|0;C=g+32|0;D=g+29|0;E=g+33|0;F=g+30|0;G=g+34|0;H=g+31|0;I=g+35|0;J=g+12|0;K=g+16|0;L=g+20|0;s=g+24|0;t=O(w,y)|0;g=c[f>>2]|0;f=c[f+20>>2]|0;while(1){h=h+-1|0;if(A){i=0;q=0;r=f;while(1){if(!(q&7)){i=a[g>>0]|0;g=g+1|0}p=i&255;o=(i&255)>>>7&255;m=d[u+(o<<2)>>0]|0;n=d[u+(o<<2)+1>>0]|0;o=d[u+(o<<2)+2>>0]|0;switch(x<<24>>24){case 1:{l=d[r>>0]|0;i=a[(c[18232+((d[H>>0]|0)<<2)>>2]|0)+((c[s>>2]&l)>>>(d[I>>0]|0))>>0]|0;j=a[(c[18232+((d[F>>0]|0)<<2)>>2]|0)+((c[L>>2]&l)>>>(d[G>>0]|0))>>0]|0;k=a[(c[18232+((d[D>>0]|0)<<2)>>2]|0)+((c[K>>2]&l)>>>(d[E>>0]|0))>>0]|0;l=a[(c[18232+((d[B>>0]|0)<<2)>>2]|0)+((c[J>>2]&l)>>>(d[C>>0]|0))>>0]|0;break}case 2:{l=e[r>>1]|0;i=a[(c[18232+((d[H>>0]|0)<<2)>>2]|0)+((c[s>>2]&l)>>>(d[I>>0]|0))>>0]|0;j=a[(c[18232+((d[F>>0]|0)<<2)>>2]|0)+((c[L>>2]&l)>>>(d[G>>0]|0))>>0]|0;k=a[(c[18232+((d[D>>0]|0)<<2)>>2]|0)+((c[K>>2]&l)>>>(d[E>>0]|0))>>0]|0;l=a[(c[18232+((d[B>>0]|0)<<2)>>2]|0)+((c[J>>2]&l)>>>(d[C>>0]|0))>>0]|0;break}case 3:{i=-1;j=a[r+((d[G>>0]|0)>>>3&255)>>0]|0;k=a[r+((d[E>>0]|0)>>>3&255)>>0]|0;l=a[r+((d[C>>0]|0)>>>3&255)>>0]|0;break}case 4:{l=c[r>>2]|0;i=a[(c[18232+((d[H>>0]|0)<<2)>>2]|0)+((c[s>>2]&l)>>>(d[I>>0]|0))>>0]|0;j=a[(c[18232+((d[F>>0]|0)<<2)>>2]|0)+((c[L>>2]&l)>>>(d[G>>0]|0))>>0]|0;k=a[(c[18232+((d[D>>0]|0)<<2)>>2]|0)+((c[K>>2]&l)>>>(d[E>>0]|0))>>0]|0;l=a[(c[18232+((d[B>>0]|0)<<2)>>2]|0)+((c[J>>2]&l)>>>(d[C>>0]|0))>>0]|0;break}default:{i=0;j=0;k=0;l=0}}N=i&255;i=j&255;k=k&255;l=l&255;l=(((O(m-l|0,v)|0)>>>0)/255|0)+l|0;k=(((O(n-k|0,v)|0)>>>0)/255|0)+k|0;i=(((O(o-i|0,v)|0)>>>0)/255|0)+i|0;j=N+v-(((O(N,v)|0)>>>0)/255|0)|0;switch(x<<24>>24){case 1:{a[r>>0]=k>>>(d[D>>0]|0)<<(d[E>>0]|0)|l>>>(d[B>>0]|0)<<(d[C>>0]|0)|i>>>(d[F>>0]|0)<<(d[G>>0]|0)|j>>>(d[H>>0]|0)<<(d[I>>0]|0);break}case 2:{b[r>>1]=k>>>(d[D>>0]|0)<<(d[E>>0]|0)|l>>>(d[B>>0]|0)<<(d[C>>0]|0)|i>>>(d[F>>0]|0)<<(d[G>>0]|0)|j>>>(d[H>>0]|0)<<(d[I>>0]|0);break}case 3:{a[r+((d[C>>0]|0)>>>3&255)>>0]=l;a[r+((d[E>>0]|0)>>>3&255)>>0]=k;a[r+((d[G>>0]|0)>>>3&255)>>0]=i;break}case 4:{c[r>>2]=k>>>(d[D>>0]|0)<<(d[E>>0]|0)|l>>>(d[B>>0]|0)<<(d[C>>0]|0)|i>>>(d[F>>0]|0)<<(d[G>>0]|0)|j>>>(d[H>>0]|0)<<(d[I>>0]|0);break}default:{}}q=q+1|0;if((q|0)==(w|0))break;else{i=p<<1&255;r=r+y|0}}f=f+t|0}if(!h)break;else{g=g+z|0;f=f+M|0}}return}function $H(f){f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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,P=0;w=c[f+24>>2]|0;h=c[f+28>>2]|0;N=c[f+36>>2]|0;g=c[f+44>>2]|0;u=c[(c[(c[f+40>>2]|0)+4>>2]|0)+4>>2]|0;v=d[f+63>>0]|0;x=c[f+56>>2]|0;y=a[g+9>>0]|0;z=y&255;A=((w+7|0)/-8|0)+w+(c[f+16>>2]|0)|0;if(!h)return;B=(w|0)>0;C=g+28|0;D=g+32|0;E=g+29|0;F=g+33|0;G=g+30|0;H=g+34|0;I=g+31|0;J=g+35|0;K=g+12|0;L=g+16|0;M=g+20|0;s=g+24|0;t=O(w,z)|0;g=c[f>>2]|0;f=c[f+20>>2]|0;while(1){h=h+-1|0;if(B){i=0;q=0;r=f;while(1){if(!(q&7)){i=a[g>>0]|0;g=g+1|0}p=i&255;i=(i&255)>>>7&255;a:do if((i|0)!=(x|0)){m=d[u+(i<<2)>>0]|0;n=d[u+(i<<2)+1>>0]|0;o=d[u+(i<<2)+2>>0]|0;switch(y<<24>>24){case 1:{l=d[r>>0]|0;i=a[(c[18232+((d[I>>0]|0)<<2)>>2]|0)+((c[s>>2]&l)>>>(d[J>>0]|0))>>0]|0;j=a[(c[18232+((d[G>>0]|0)<<2)>>2]|0)+((c[M>>2]&l)>>>(d[H>>0]|0))>>0]|0;k=a[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[L>>2]&l)>>>(d[F>>0]|0))>>0]|0;l=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[K>>2]&l)>>>(d[D>>0]|0))>>0]|0;break}case 2:{l=e[r>>1]|0;i=a[(c[18232+((d[I>>0]|0)<<2)>>2]|0)+((c[s>>2]&l)>>>(d[J>>0]|0))>>0]|0;j=a[(c[18232+((d[G>>0]|0)<<2)>>2]|0)+((c[M>>2]&l)>>>(d[H>>0]|0))>>0]|0;k=a[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[L>>2]&l)>>>(d[F>>0]|0))>>0]|0;l=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[K>>2]&l)>>>(d[D>>0]|0))>>0]|0;break}case 3:{i=-1;j=a[r+((d[H>>0]|0)>>>3&255)>>0]|0;k=a[r+((d[F>>0]|0)>>>3&255)>>0]|0;l=a[r+((d[D>>0]|0)>>>3&255)>>0]|0;break}case 4:{l=c[r>>2]|0;i=a[(c[18232+((d[I>>0]|0)<<2)>>2]|0)+((c[s>>2]&l)>>>(d[J>>0]|0))>>0]|0;j=a[(c[18232+((d[G>>0]|0)<<2)>>2]|0)+((c[M>>2]&l)>>>(d[H>>0]|0))>>0]|0;k=a[(c[18232+((d[E>>0]|0)<<2)>>2]|0)+((c[L>>2]&l)>>>(d[F>>0]|0))>>0]|0;l=a[(c[18232+((d[C>>0]|0)<<2)>>2]|0)+((c[K>>2]&l)>>>(d[D>>0]|0))>>0]|0;break}default:{i=0;j=0;k=0;l=0}}P=i&255;i=j&255;k=k&255;l=l&255;l=(((O(m-l|0,v)|0)>>>0)/255|0)+l|0;k=(((O(n-k|0,v)|0)>>>0)/255|0)+k|0;i=(((O(o-i|0,v)|0)>>>0)/255|0)+i|0;j=P+v-(((O(P,v)|0)>>>0)/255|0)|0;switch(y<<24>>24){case 1:{a[r>>0]=k>>>(d[E>>0]|0)<<(d[F>>0]|0)|l>>>(d[C>>0]|0)<<(d[D>>0]|0)|i>>>(d[G>>0]|0)<<(d[H>>0]|0)|j>>>(d[I>>0]|0)<<(d[J>>0]|0);break a}case 2:{b[r>>1]=k>>>(d[E>>0]|0)<<(d[F>>0]|0)|l>>>(d[C>>0]|0)<<(d[D>>0]|0)|i>>>(d[G>>0]|0)<<(d[H>>0]|0)|j>>>(d[I>>0]|0)<<(d[J>>0]|0);break a}case 3:{a[r+((d[D>>0]|0)>>>3&255)>>0]=l;a[r+((d[F>>0]|0)>>>3&255)>>0]=k;a[r+((d[H>>0]|0)>>>3&255)>>0]=i;break a}case 4:{c[r>>2]=k>>>(d[E>>0]|0)<<(d[F>>0]|0)|l>>>(d[C>>0]|0)<<(d[D>>0]|0)|i>>>(d[G>>0]|0)<<(d[H>>0]|0)|j>>>(d[I>>0]|0)<<(d[J>>0]|0);break a}default:break a}}while(0);q=q+1|0;if((q|0)==(w|0))break;else{i=p<<1&255;r=r+z|0}}f=f+t|0}if(!h)break;else{g=g+A|0;f=f+N|0}}return}function aI(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=c[b+24>>2]|0;i=c[b+28>>2]|0;d=c[b>>2]|0;e=c[b+20>>2]|0;l=c[b+36>>2]|0;m=c[b+56>>2]|0;j=c[b+48>>2]|0;k=(c[b+16>>2]|0)+(n-((n+7|0)/8|0))|0;f=i+-1|0;b=(i|0)!=0&(n|0)>0;if(!j){if(b){b=d;i=f}else return;while(1){d=0;g=0;h=e;while(1){if(!(g&7)){f=a[b>>0]|0;b=b+1|0}else f=d;d=(f&255)>>>7;if((d&255|0)!=(m|0))a[h>>0]=d;g=g+1|0;if((g|0)==(n|0))break;else{d=(f&255)<<1&255;h=h+1|0}}if(!i)break;else{e=e+n+l|0;b=b+k|0;i=i+-1|0}}return}else{if(b)i=f;else return;while(1){b=0;h=0;g=e;while(1){if(!(h&7)){f=a[d>>0]|0;d=d+1|0}else f=b;b=(f&255)>>>7&255;if((b|0)!=(m|0))a[g>>0]=a[j+b>>0]|0;h=h+1|0;if((h|0)==(n|0))break;else{b=(f&255)<<1&255;g=g+1|0}}if(!i)break;else{d=d+k|0;e=e+n+l|0;i=i+-1|0}}return}}function bI(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;o=c[d+24>>2]|0;e=c[d+28>>2]|0;k=c[d+56>>2]|0;l=c[d+48>>2]|0;m=((o+7|0)/-8|0)+o+(c[d+16>>2]|0)|0;n=(c[d+36>>2]|0)/2|0;if(!((e|0)!=0&(o|0)>0))return;f=c[d>>2]|0;j=c[d+20>>2]|0;while(1){d=0;i=0;h=j;while(1){if(!(i&7)){g=a[f>>0]|0;f=f+1|0}else g=d;d=(g&255)>>>7&255;if((d|0)!=(k|0))b[h>>1]=b[l+(d<<1)>>1]|0;i=i+1|0;if((i|0)==(o|0))break;else{d=(g&255)<<1&255;h=h+2|0}}e=e+-1|0;if(!e)break;else{f=f+m|0;j=j+(o<<1)+(n<<1)|0}}return}function cI(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;m=c[b+24>>2]|0;d=c[b+28>>2]|0;o=c[b+36>>2]|0;j=c[b+56>>2]|0;k=c[b+48>>2]|0;l=((m+7|0)/-8|0)+m+(c[b+16>>2]|0)|0;if(!((d|0)!=0&(m|0)>0))return;n=m*3|0;e=c[b>>2]|0;i=c[b+20>>2]|0;while(1){b=0;h=0;g=i;while(1){if(!(h&7)){f=a[e>>0]|0;e=e+1|0}else f=b;b=(f&255)>>>7;if((b&255|0)!=(j|0)){b=k+(b<<2&255)|0;a[g>>0]=a[b>>0]|0;a[g+1>>0]=a[b+1>>0]|0;a[g+2>>0]=a[b+2>>0]|0}h=h+1|0;if((h|0)==(m|0))break;else{b=(f&255)<<1&255;g=g+3|0}}d=d+-1|0;if(!d)break;else{e=e+l|0;i=i+n+o|0}}return}function dI(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0;n=c[b+24>>2]|0;d=c[b+28>>2]|0;j=c[b+56>>2]|0;k=c[b+48>>2]|0;l=((n+7|0)/-8|0)+n+(c[b+16>>2]|0)|0;m=(c[b+36>>2]|0)/4|0;if(!((d|0)!=0&(n|0)>0))return;e=c[b>>2]|0;i=c[b+20>>2]|0;while(1){b=0;h=0;g=i;while(1){if(!(h&7)){f=a[e>>0]|0;e=e+1|0}else f=b;b=(f&255)>>>7&255;if((b|0)!=(j|0))c[g>>2]=c[k+(b<<2)>>2];h=h+1|0;if((h|0)==(n|0))break;else{b=(f&255)<<1&255;g=g+4|0}}d=d+-1|0;if(!d)break;else{e=e+l|0;i=i+(n<<2)+(m<<2)|0}}return}function eI(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=c[b+24>>2]|0;h=c[b+28>>2]|0;d=c[b>>2]|0;e=c[b+20>>2]|0;k=c[b+36>>2]|0;i=c[b+48>>2]|0;j=(c[b+16>>2]|0)+(l-((l+7|0)/8|0))|0;f=h+-1|0;b=(h|0)!=0&(l|0)>0;if(!i){if(b)h=f;else return;while(1){b=0;f=0;g=e;while(1){if(!(f&7)){b=a[d>>0]|0;d=d+1|0}a[g>>0]=(b&255)>>>7;f=f+1|0;if((f|0)==(l|0))break;else{b=(b&255)<<1&255;g=g+1|0}}if(!h)break;else{e=e+l+k|0;d=d+j|0;h=h+-1|0}}return}else{if(b)h=f;else return;while(1){b=0;g=0;f=e;while(1){if(!(g&7)){b=a[d>>0]|0;d=d+1|0}a[f>>0]=a[i+((b&255)>>>7&255)>>0]|0;g=g+1|0;if((g|0)==(l|0))break;else{b=(b&255)<<1&255;f=f+1|0}}if(!h)break;else{d=d+j|0;e=e+l+k|0;h=h+-1|0}}return}}function fI(d){d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=c[d+24>>2]|0;e=c[d+28>>2]|0;m=(c[d+36>>2]|0)/2|0;j=c[d+48>>2]|0;k=((l+7|0)/-8|0)+l+(c[d+16>>2]|0)|0;if(!((e|0)!=0&(l|0)>0))return;i=c[d+20>>2]|0;d=c[d>>2]|0;while(1){f=0;g=0;h=i;while(1){if(!(g&7)){f=a[d>>0]|0;d=d+1|0}b[h>>1]=b[j+(((f&255)>>>7&255)<<1)>>1]|0;g=g+1|0;if((g|0)==(l|0))break;else{f=(f&255)<<1&255;h=h+2|0}}e=e+-1|0;if(!e)break;else{i=i+(l<<1)+(m<<1)|0;d=d+k|0}}return}function gI(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;l=c[b+24>>2]|0;d=c[b+28>>2]|0;m=c[b+36>>2]|0;i=c[b+48>>2]|0;j=((l+7|0)/-8|0)+l+(c[b+16>>2]|0)|0;if(!((d|0)!=0&(l|0)>0))return;k=l*3|0;h=c[b+20>>2]|0;b=c[b>>2]|0;while(1){e=0;f=0;g=h;while(1){if(!(f&7)){e=a[b>>0]|0;b=b+1|0}o=(e&255)>>>7<<2&255;n=o|1;a[g>>0]=a[i+o>>0]|0;a[g+1>>0]=a[i+n>>0]|0;a[g+2>>0]=a[i+(n+1)>>0]|0;f=f+1|0;if((f|0)==(l|0))break;else{e=(e&255)<<1&255;g=g+3|0}}d=d+-1|0;if(!d)break;else{h=h+k+m|0;b=b+j|0}}return}function hI(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;k=c[b+24>>2]|0;d=c[b+28>>2]|0;l=(c[b+36>>2]|0)/4|0;i=c[b+48>>2]|0;j=((k+7|0)/-8|0)+k+(c[b+16>>2]|0)|0;if(!((d|0)!=0&(k|0)>0))return;e=c[b>>2]|0;h=c[b+20>>2]|0;while(1){b=0;g=0;f=h;while(1){if(!(g&7)){b=a[e>>0]|0;e=e+1|0}c[f>>2]=c[i+(((b&255)>>>7&255)<<2)>>2];g=g+1|0;if((g|0)==(k|0))break;else{b=(b&255)<<1&255;f=f+4|0}}d=d+-1|0;if(!d)break;else{e=e+j|0;h=h+(k<<2)+(l<<2)|0}}return}function iI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;if((e|0)<=0){w=e<<2;return w|0}v=f+12|0;w=d[f+32>>0]|0;q=f+16|0;r=d[f+33>>0]|0;s=f+20|0;t=d[f+34>>0]|0;u=f+24|0;j=d[f+35>>0]|0;k=d[g+28>>0]|0;l=d[g+32>>0]|0;m=d[g+29>>0]|0;n=d[g+33>>0]|0;o=d[g+30>>0]|0;p=d[g+34>>0]|0;i=g+24|0;h=0;g=a;f=b;while(1){a=c[f>>2]|0;b=(c[q>>2]&a)>>>r>>>m<<n|(c[v>>2]&a)>>>w>>>k<<l|c[i>>2]|(c[s>>2]&a)>>>t>>>o<<p;c[g>>2]=b&63519|(c[u>>2]&a)>>>j<<2&2016|b<<16&132120576;h=h+1|0;if((h|0)==(e|0))break;else{g=g+4|0;f=f+4|0}}w=e<<2;return w|0}function jI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;if((e|0)<=0){w=e<<2;return w|0}v=f+12|0;w=d[f+32>>0]|0;q=f+16|0;r=d[f+33>>0]|0;s=f+20|0;t=d[f+34>>0]|0;u=f+24|0;j=d[f+35>>0]|0;k=d[g+28>>0]|0;l=d[g+32>>0]|0;m=d[g+29>>0]|0;n=d[g+33>>0]|0;o=d[g+30>>0]|0;p=d[g+34>>0]|0;i=g+24|0;h=0;g=a;f=b;while(1){a=c[f>>2]|0;b=(c[q>>2]&a)>>>r>>>m<<n|(c[v>>2]&a)>>>w>>>k<<l|c[i>>2]|(c[s>>2]&a)>>>t>>>o<<p;c[g>>2]=b&64543|(c[u>>2]&a)>>>j<<2&992|b<<16&65011712;h=h+1|0;if((h|0)==(e|0))break;else{g=g+4|0;f=f+4|0}}w=e<<2;return w|0}function kI(a,b,e,f,g){a=a|0;b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0;if((e|0)<=0){v=e<<2;return v|0}u=f+12|0;v=d[f+32>>0]|0;p=f+16|0;q=d[f+33>>0]|0;r=f+20|0;s=d[f+34>>0]|0;t=f+24|0;j=d[f+35>>0]|0;k=d[g+28>>0]|0;l=d[g+32>>0]|0;m=d[g+29>>0]|0;n=d[g+33>>0]|0;o=d[g+30>>0]|0;i=d[g+34>>0]|0;h=0;g=a;f=b;while(1){b=c[f>>2]|0;c[g>>2]=(c[u>>2]&b)>>>v>>>k<<l|(c[t>>2]&b)>>>j<<24|(c[p>>2]&b)>>>q>>>m<<n|(c[r>>2]&b)>>>s>>>o<<i;h=h+1|0;if((h|0)==(e|0))break;else{g=g+4|0;f=f+4|0}}v=e<<2;return v|0}function lI(a,e,f,g,h){a=a|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0;if((f|0)<=0){y=f<<1;return y|0}q=c[18232+((d[g+28>>0]|0)<<2)>>2]|0;r=c[g+12>>2]|0;s=c[18232+((d[g+29>>0]|0)<<2)>>2]|0;t=c[g+16>>2]|0;u=c[18232+((d[g+30>>0]|0)<<2)>>2]|0;v=c[g+20>>2]|0;w=c[h+24>>2]|0;x=d[g+32>>0]|0;y=d[g+33>>0]|0;k=d[g+34>>0]|0;l=d[h+28>>0]|0;m=d[h+32>>0]|0;n=d[h+29>>0]|0;o=d[h+33>>0]|0;p=d[h+30>>0]|0;j=d[h+34>>0]|0;i=0;h=a;g=e;while(1){e=c[g>>2]|0;b[h>>1]=(d[s+((t&e)>>>y)>>0]|0)>>>n<<o|(d[q+((r&e)>>>x)>>0]|0)>>>l<<m|w|(d[u+((v&e)>>>k)>>0]|0)>>>p<<j;i=i+1|0;if((i|0)==(f|0))break;else{h=h+2|0;g=g+4|0}}y=f<<1;return y|0}function mI(f,g,h,i){f=f|0;g=g|0;h=h|0;i=i|0;var j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0;o=f+8|0;t=c[o>>2]|0;p=h+4|0;q=c[p>>2]|0;if(c[h>>2]&2|0){k=h+28|0;j=c[k>>2]|0;if(!j){LE(h,1);c[h>>2]=c[h>>2]|2;j=c[k>>2]|0}c[k>>2]=j+1}s=h+16|0;n=(c[h+20>>2]|0)+(O(c[s>>2]|0,c[i+4>>2]|0)|0)|0;l=a[q+9>>0]|0;n=n+(O(l&255,c[i>>2]|0)|0)|0;j=(c[(c[f+52>>2]|0)+12>>2]|0)+28|0;k=c[g+4>>2]|0;a:do if(!k)m=22;else{if(l<<24>>24!=2){f=k<<1;while(1){k=0;do{k=(e[j>>1]|0)+k|0;r=b[j+2>>1]|0;i=r&65535;j=j+4|0;if(!(r<<16>>16)){if(!k)break a}else{k=k+i|0;j=j+(i<<2)|0}}while((k|0)<(t|0));f=f+-1|0;if(!f){m=22;break a}}}while(1){i=0;do{i=(d[j>>0]|0)+i|0;r=a[j+1>>0]|0;f=r&255;j=j+2|0;if(!(r<<24>>24)){if(!i)break a}else{i=i+f|0;j=j+(f<<1)|0}}while((i|0)<(t|0));i=0;j=j+(j&2)|0;do{r=e[j+2>>1]|0;f=j;j=j+((r<<2)+4)|0;i=(e[f>>1]|0)+i+r|0}while((i|0)<(t|0));k=k+-1|0;if(!k){m=22;break}}}while(0);b:do if((m|0)==22){r=c[g>>2]|0;if((r|0)==0?(c[g+8>>2]|0)==(c[o>>2]|0):0){switch(l<<24>>24){case 2:break;case 4:{o=c[g+12>>2]|0;while(1){k=0;do{k=(e[j>>1]|0)+k|0;r=b[j+2>>1]|0;i=r&65535;j=j+4|0;if(!(r<<16>>16)){if(!k)break b}else{r=i<<2;PQ(n+(k<<2)|0,j|0,r|0)|0;k=k+i|0;j=j+r|0}}while((k|0)<(t|0));k=0;do{k=(e[j>>1]|0)+k|0;r=b[j+2>>1]|0;m=r&65535;j=j+4|0;if(r<<16>>16){i=0;f=n+(k<<2)|0;l=j;while(1){q=c[l>>2]|0;p=c[f>>2]|0;g=q>>>24;r=p&16711935;p=p&65280;c[f>>2]=((O((q&65280)-p|0,g)|0)>>>8)+p&65280|((O((q&16711935)-r|0,g)|0)>>>8)+r&16711935|-16777216;i=i+1|0;if((i|0)==(m|0))break;else{f=f+4|0;l=l+4|0}}j=j+(m<<2)|0;k=k+m|0}}while((k|0)<(t|0));o=o+-1|0;if(!o)break b;else n=n+(c[s>>2]|0)|0}}default:break b}if(((c[q+16>>2]|0)!=2016?(c[q+12>>2]|0)!=2016:0)?(c[q+20>>2]|0)!=2016:0){o=c[g+12>>2]|0;while(1){k=0;do{k=(d[j>>0]|0)+k|0;r=a[j+1>>0]|0;i=r&255;j=j+2|0;if(!(r<<24>>24)){if(!k)break b}else{r=i<<1;PQ(n+(k<<1)|0,j|0,r|0)|0;k=k+i|0;j=j+r|0}}while((k|0)<(t|0));j=j+(j&2)|0;k=0;do{k=(e[j>>1]|0)+k|0;r=b[j+2>>1]|0;m=r&65535;j=j+4|0;if(r<<16>>16){i=0;f=n+(k<<1)|0;l=j;while(1){g=c[l>>2]|0;r=e[f>>1]|0;r=(r<<16|r)&65043487;r=((O((g&65043487)-r|0,g>>>5&31)|0)>>>5)+r&65043487;b[f>>1]=r>>>16|r;i=i+1|0;if((i|0)==(m|0))break;else{f=f+2|0;l=l+4|0}}j=j+(m<<2)|0;k=k+m|0}}while((k|0)<(t|0));o=o+-1|0;if(!o)break b;else n=n+(c[s>>2]|0)|0}}o=c[g+12>>2]|0;while(1){k=0;do{k=(d[j>>0]|0)+k|0;r=a[j+1>>0]|0;i=r&255;j=j+2|0;if(!(r<<24>>24)){if(!k)break b}else{r=i<<1;PQ(n+(k<<1)|0,j|0,r|0)|0;k=k+i|0;j=j+r|0}}while((k|0)<(t|0));j=j+(j&2)|0;k=0;do{k=(e[j>>1]|0)+k|0;r=b[j+2>>1]|0;m=r&65535;j=j+4|0;if(r<<16>>16){i=n+(k<<1)|0;f=0;l=j;while(1){g=c[l>>2]|0;r=e[i>>1]|0;r=(r<<16|r)&132184095;r=((O((g&132184095)-r|0,g>>>5&31)|0)>>>5)+r&132184095;b[i>>1]=r>>>16|r;f=f+1|0;if((f|0)==(m|0))break;else{i=i+2|0;l=l+4|0}}j=j+(m<<2)|0;k=k+m|0}}while((k|0)<(t|0));o=o+-1|0;if(!o)break b;else n=n+(c[s>>2]|0)|0}}k=c[p>>2]|0;switch(a[k+9>>0]|0){case 2:break;case 4:{q=(c[g+8>>2]|0)+r|0;p=c[g+12>>2]|0;o=n+(0-(r<<2))|0;while(1){k=0;do{k=(e[j>>1]|0)+k|0;g=b[j+2>>1]|0;l=g&65535;j=j+4|0;if(!(g<<16>>16)){if(!k)break b}else{i=r-k|0;g=(i|0)>0;f=g?r:k;i=l-(g?i:0)|0;g=q-f|0;i=(i|0)>(g|0)?g:i;if((i|0)>0)PQ(o+(f<<2)|0,j+(f-k<<2)|0,i<<2|0)|0;k=k+l|0;j=j+(l<<2)|0}}while((k|0)<(t|0));k=0;do{k=(e[j>>1]|0)+k|0;g=b[j+2>>1]|0;n=g&65535;j=j+4|0;if(g<<16>>16){l=r-k|0;g=(l|0)>0;i=g?r:k;l=n-(g?l:0)|0;g=q-i|0;l=(l|0)>(g|0)?g:l;if((l|0)>0){m=o+(i<<2)|0;f=j+(i-k<<2)|0;i=0;do{w=c[f+(i<<2)>>2]|0;g=m+(i<<2)|0;u=c[g>>2]|0;v=w>>>24;x=u&16711935;u=u&65280;c[g>>2]=((O((w&16711935)-x|0,v)|0)>>>8)+x&16711935|((O((w&65280)-u|0,v)|0)>>>8)+u&65280|-16777216;i=i+1|0}while((i|0)<(l|0))}j=j+(n<<2)|0;k=k+n|0}}while((k|0)<(t|0));p=p+-1|0;if(!p)break b;else o=o+(c[s>>2]|0)|0}}default:break b}if(((c[k+16>>2]|0)!=2016?(c[k+12>>2]|0)!=2016:0)?(c[k+20>>2]|0)!=2016:0){q=(c[g+8>>2]|0)+r|0;p=c[g+12>>2]|0;o=n+(0-(r<<1))|0;while(1){k=0;do{k=(d[j>>0]|0)+k|0;x=a[j+1>>0]|0;l=x&255;j=j+2|0;if(!(x<<24>>24)){if(!k)break b}else{i=r-k|0;f=(i|0)>0;i=l-(f?i:0)|0;f=f?r:k;x=q-f|0;i=(i|0)>(x|0)?x:i;if((i|0)>0)PQ(o+(f<<1)|0,j+(f-k<<1)|0,i<<1|0)|0;k=k+l|0;j=j+(l<<1)|0}}while((k|0)<(t|0));j=j+(j&2)|0;k=0;do{k=(e[j>>1]|0)+k|0;x=b[j+2>>1]|0;n=x&65535;j=j+4|0;if(x<<16>>16){l=r-k|0;i=(l|0)>0;l=n-(i?l:0)|0;i=i?r:k;x=q-i|0;l=(l|0)>(x|0)?x:l;if((l|0)>0){m=o+(i<<1)|0;f=j+(i-k<<2)|0;i=0;do{v=c[f+(i<<2)>>2]|0;x=m+(i<<1)|0;w=e[x>>1]|0;w=(w<<16|w)&65043487;w=((O((v&65043487)-w|0,v>>>5&31)|0)>>>5)+w&65043487;b[x>>1]=w>>>16|w;i=i+1|0}while((i|0)<(l|0))}j=j+(n<<2)|0;k=k+n|0}}while((k|0)<(t|0));p=p+-1|0;if(!p)break b;else o=o+(c[s>>2]|0)|0}}q=(c[g+8>>2]|0)+r|0;p=n+(0-(r<<1))|0;o=c[g+12>>2]|0;while(1){k=0;do{k=(d[j>>0]|0)+k|0;x=a[j+1>>0]|0;l=x&255;j=j+2|0;if(!(x<<24>>24)){if(!k)break b}else{i=r-k|0;f=(i|0)>0;i=l-(f?i:0)|0;f=f?r:k;x=q-f|0;i=(i|0)>(x|0)?x:i;if((i|0)>0)PQ(p+(f<<1)|0,j+(f-k<<1)|0,i<<1|0)|0;k=k+l|0;j=j+(l<<1)|0}}while((k|0)<(t|0));k=0;j=j+(j&2)|0;do{k=(e[j>>1]|0)+k|0;x=b[j+2>>1]|0;n=x&65535;j=j+4|0;if(x<<16>>16){l=r-k|0;i=(l|0)>0;l=n-(i?l:0)|0;i=i?r:k;x=q-i|0;l=(l|0)>(x|0)?x:l;if((l|0)>0){m=p+(i<<1)|0;f=j+(i-k<<2)|0;i=0;do{v=c[f+(i<<2)>>2]|0;x=m+(i<<1)|0;w=e[x>>1]|0;w=(w<<16|w)&132184095;w=((O((v&132184095)-w|0,v>>>5&31)|0)>>>5)+w&132184095;b[x>>1]=w>>>16|w;i=i+1|0}while((i|0)<(l|0))}k=k+n|0;j=j+(n<<2)|0}}while((k|0)<(t|0));o=o+-1|0;if(!o)break;else p=p+(c[s>>2]|0)|0}}while(0);j=c[h>>2]|0;if(!(j&2))return 0;k=h+28|0;i=c[k>>2]|0;if(!i)return 0;c[k>>2]=i+-1;if((i|0)>1)return 0;c[h>>2]=j&-3;PE(h)|0;return 0}
|
|
function Ln(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=a+60|0;if(c[z>>2]|0)return;w=c[a+52>>2]|b;y=a+32|0;w=(c[y>>2]|0)==0?w:w|4;c[z>>2]=1;x=a+56|0;c[x>>2]=1;f=a+36|0;b=c[f>>2]|0;if(b|0){d=a+12|0;e=a+16|0;do{u=b;b=c[b+20>>2]|0;Bg[c[d>>2]&255](c[e>>2]|0,u)}while((b|0)!=0)}c[f>>2]=0;f=a+40|0;b=c[f>>2]|0;if(b|0){d=a+12|0;e=a+16|0;do{u=b;b=c[b>>2]|0;Bg[c[d>>2]&255](c[e>>2]|0,u)}while((b|0)!=0)}c[f>>2]=0;u=a+128|0;d=c[u>>2]|0;do if(d|0?(g=c[d>>2]|0,(g&4|0)==0):0){c[d>>2]=g|4;e=a+48|0;b=c[e>>2]|0;if(b>>>0>255){c[a>>2]=c[a>>2]|1;c[d>>2]=g|12;break}b=b+1|0;c[e>>2]=b;if((g&3)==1){Nn(a,d);b=c[e>>2]|0}c[e>>2]=b+-1}while(0);d=c[a+136>>2]|0;do if(d|0?(h=c[d>>2]|0,(h&4|0)==0):0){c[d>>2]=h|4;e=a+48|0;b=c[e>>2]|0;if(b>>>0>255){c[a>>2]=c[a>>2]|1;c[d>>2]=h|12;break}b=b+1|0;c[e>>2]=b;if((h&3)==1){Nn(a,d);b=c[e>>2]|0}c[e>>2]=b+-1}while(0);j=a+48|0;e=0;do{d=c[a+244+(e<<2)>>2]|0;do if(d|0?(i=c[d>>2]|0,(i&4|0)==0):0){c[d>>2]=i|4;b=c[j>>2]|0;if(b>>>0>255){c[a>>2]=c[a>>2]|1;c[d>>2]=i|12;break}b=b+1|0;c[j>>2]=b;if((i&3)==1){Nn(a,d);b=c[j>>2]|0}c[j>>2]=b+-1}while(0);e=e+1|0}while((e|0)!=162);do if((c[a+96>>2]&8|0?(k=c[a+104>>2]|0,k|0):0)?(l=c[k>>2]|0,(l&4|0)==0):0){c[k>>2]=l|4;b=c[j>>2]|0;if(b>>>0>255){c[a>>2]=c[a>>2]|1;c[k>>2]=l|12;break}b=b+1|0;c[j>>2]=b;if((l&3)==1){Nn(a,k);b=c[j>>2]|0}c[j>>2]=b+-1}while(0);do if((c[a+112>>2]&8|0?(m=c[a+120>>2]|0,m|0):0)?(n=c[m>>2]|0,(n&4|0)==0):0){c[m>>2]=n|4;b=c[j>>2]|0;if(b>>>0>255){c[a>>2]=c[a>>2]|1;c[m>>2]=n|12;break}b=b+1|0;c[j>>2]=b;if((n&3)==1){Nn(a,m);b=c[j>>2]|0}c[j>>2]=b+-1}while(0);On(a);t=a+24|0;e=c[t>>2]|0;if(e|0){h=e;b=0;do{g=c[h>>2]|0;a:do if((g&37|0)==1){d=1e4;f=h;while(1){if(c[f>>2]&2097152|0)break;if(!d)break a;f=c[f+20>>2]|0;if(!f)break a;else d=d+-1|0}c[h>>2]=g|16;b=b+1|0}while(0);h=c[h+8>>2]|0}while((h|0)!=0);if(b|0)do{d=c[e>>2]|0;do if((d&20|0)==16){c[e>>2]=d|4;b=c[j>>2]|0;if(b>>>0>255){c[a>>2]=c[a>>2]|1;c[e>>2]=d|12;break}b=b+1|0;c[j>>2]=b;if((d&3)==1){Nn(a,e);b=c[j>>2]|0}c[j>>2]=b+-1}while(0);e=c[e+8>>2]|0}while((e|0)!=0)}b=c[y>>2]|0;if(b|0)do{e=c[b>>2]|0;do if(!(e&4)){c[b>>2]=e|4;d=c[j>>2]|0;if(d>>>0>255){c[a>>2]=c[a>>2]|1;c[b>>2]=e|12;break}d=d+1|0;c[j>>2]=d;if((e&3)==1){Nn(a,b);d=c[j>>2]|0}c[j>>2]=d+-1}while(0);b=c[b+8>>2]|0}while((b|0)!=0);On(a);b=c[t>>2]|0;if(b){do{if((c[b>>2]&5|0)==1)Pn(c[u>>2]|0,b);b=c[b+8>>2]|0}while((b|0)!=0);e=c[t>>2]|0;c[t>>2]=0;if(e){j=a+12|0;k=a+16|0;l=(w&4|0)==0;m=(w&1|0)==0;d=0;b=0;b:while(1){while(1){g=e+8|0;i=c[g>>2]|0;f=c[e>>2]|0;if(f&4|0)break;switch(f&3){case 0:{Bg[c[j>>2]&255](c[k>>2]|0,e);break}case 1:{Bg[c[j>>2]&255](c[k>>2]|0,c[e+16>>2]|0);f=c[e>>2]|0;do if(!(f&6144)){if((f&-134217728|0)!=-1879048192){if(!(f&1024))break;Bg[c[j>>2]&255](c[k>>2]|0,c[e+72>>2]|0);break}Bg[c[j>>2]&255](c[k>>2]|0,c[e+52>>2]|0);f=c[e+72>>2]|0;if(f|0)do{g=c[f+32>>2]|0;if(g|0)do{s=g;g=c[g>>2]|0;Bg[c[j>>2]&255](c[k>>2]|0,s)}while((g|0)!=0);s=f;f=c[f+20>>2]|0;Bg[c[j>>2]&255](c[k>>2]|0,s)}while((f|0)!=0)}while(0);Bg[c[j>>2]&255](c[k>>2]|0,e);break}default:{if((f&384|0)==128)Bg[c[j>>2]&255](c[k>>2]|0,c[e+20>>2]|0);Bg[c[j>>2]&255](c[k>>2]|0,e)}}if(!i)break b;else e=i}if(!(f&16)){do if(f&32)if(l){f=f&-33;c[e>>2]=f;break}else{b=b+1|0;break}else b=b+1|0;while(0);if(!d)c[t>>2]=e;else c[d+8>>2]=e;c[e+12>>2]=d;d=e}else{h=e+4|0;c[h>>2]=(c[h>>2]|0)+1;h=c[y>>2]|0;c[e+12>>2]=0;if(h|0)c[h+12>>2]=e;c[g>>2]=h;c[y>>2]=e}do if((f&-134217727|0)==-1879048191){g=c[e+52>>2]|0;h=(c[e+60>>2]|0)-g|0;g=(c[e+56>>2]|0)-g|0;if(m)if((h-g|0)>>>0<h>>>2>>>0)break;else g=(h>>>8<<4)+g|0;if(g>>>0<h>>>0){Qn(e,g>>>4)|0;f=c[e>>2]|0}}while(0);c[e>>2]=f&-5;if(!i)break;else e=i}if(d)c[d+8>>2]=0}else b=0}else{c[t>>2]=0;b=0}s=a+176|0;d=c[s>>2]|0;c:do if((d|0)!=0?(v=a+184|0,(c[v>>2]|0)!=0):0){m=a+196|0;n=a+208|0;o=a+220|0;p=a+232|0;q=a+188|0;r=a+180|0;k=a+12|0;l=a+16|0;e=0;j=0;while(1){d=c[d+(j<<2)>>2]|0;d:do if(d){f=0;while(1){e:do if(!f)while(1){g=d;d=c[d+8>>2]|0;f=c[g>>2]|0;if(f&4|0){i=g;break e}if((c[m>>2]|0)==(g|0))c[m>>2]=0;if((c[n>>2]|0)==(g|0))c[n>>2]=0;if((c[o>>2]|0)==(g|0))c[o>>2]=0;if((c[p>>2]|0)==(g|0))c[p>>2]=0;c[q>>2]=(c[q>>2]|0)+-1;c[(c[s>>2]|0)+((c[r>>2]&c[g+12>>2])<<2)>>2]=d;Bg[c[k>>2]&255](c[l>>2]|0,g);if(!d)break d}else{g=f+8|0;while(1){h=d;d=c[d+8>>2]|0;f=c[h>>2]|0;if(f&4|0){i=h;g=h;break e}if((c[m>>2]|0)==(h|0))c[m>>2]=0;if((c[n>>2]|0)==(h|0))c[n>>2]=0;if((c[o>>2]|0)==(h|0))c[o>>2]=0;if((c[p>>2]|0)==(h|0))c[p>>2]=0;c[q>>2]=(c[q>>2]|0)+-1;c[g>>2]=d;Bg[c[k>>2]&255](c[l>>2]|0,h);if(!d)break d}}while(0);c[g>>2]=f&-5;e=e+1|0;if(!d)break;else f=i}}while(0);d=j+1|0;if(d>>>0>=(c[v>>2]|0)>>>0)break c;j=d;d=c[s>>2]|0}}else e=0;while(0);d=c[y>>2]|0;if(d|0)do{c[d>>2]=c[d>>2]&-5;d=c[d+8>>2]|0}while((d|0)!=0);if((w&9|0)==1){Rn(c[u>>2]|0,c[t>>2]|0);Rn(c[u>>2]|0,c[y>>2]|0)}if(w&1|0?c[s>>2]|0:0)Sn(a);c[z>>2]=0;c[x>>2]=0;c[a+44>>2]=(((e+b|0)>>>8)*12800|0)+1024;Tn(a);return}function Mn(a,b,c){a=a|0;b=b|0;c=c|0;Jn(a,b,c|16777216,268592)}function Nn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,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;m=d+28|0;if(c[m>>2]|0){o=d+16|0;p=d+24|0;r=b+48|0;l=0;do{k=c[o>>2]|0;i=c[p>>2]|0;g=c[k+(i<<4)+(l<<2)>>2]|0;do if(g|0){h=c[g>>2]|0;do if(!(h&4)){c[g>>2]=h|4;e=c[r>>2]|0;if(e>>>0>255){c[b>>2]=c[b>>2]|1;c[g>>2]=h|12;e=k;g=i;h=k;i=k;break}f=e+1|0;c[r>>2]=f;if((h&3)==1){Nn(b,g);e=c[o>>2]|0;j=e;g=c[p>>2]|0;f=c[r>>2]|0}else{j=k;g=i;e=k}c[r>>2]=f+-1;h=j;i=j}else{e=k;g=i;h=k;i=k}while(0);f=h+(l<<4)|0;if(!(a[h+(g*20|0)+l>>0]&8)){if(!f)break;if(!(c[f>>2]&8))break;f=c[h+(l<<4)+8>>2]|0;if(!f)break;g=c[f>>2]|0;if(g&4|0)break;c[f>>2]=g|4;e=c[r>>2]|0;if(e>>>0>255){c[b>>2]=c[b>>2]|1;c[f>>2]=g|12;break}e=e+1|0;c[r>>2]=e;if((g&3)==1){Nn(b,f);e=c[r>>2]|0}c[r>>2]=e+-1;break}g=c[f>>2]|0;do if((g|0)!=0?(n=c[g>>2]|0,(n&4|0)==0):0){c[g>>2]=n|4;f=c[r>>2]|0;if(f>>>0>255){c[b>>2]=c[b>>2]|1;c[g>>2]=n|12;e=i;break}f=f+1|0;c[r>>2]=f;if((n&3)==1){Nn(b,g);e=c[o>>2]|0;f=c[r>>2]|0}c[r>>2]=f+-1}else e=i;while(0);f=c[e+(l<<4)+4>>2]|0;if(f|0?(q=c[f>>2]|0,(q&4|0)==0):0){c[f>>2]=q|4;e=c[r>>2]|0;if(e>>>0>255){c[b>>2]=c[b>>2]|1;c[f>>2]=q|12;break}e=e+1|0;c[r>>2]=e;if((q&3)==1){Nn(b,f);e=c[r>>2]|0}c[r>>2]=e+-1}}while(0);l=l+1|0}while(l>>>0<(c[m>>2]|0)>>>0)}k=d+32|0;e=c[k>>2]|0;if(e|0){h=d+16|0;i=d+24|0;j=b+48|0;g=0;do{f=c[i>>2]|0;f=(c[h>>2]|0)+(f*21|0)+(0-f&7)|0;r=f+(g<<4)|0;do if((((r|0)!=0?(c[r>>2]&8|0)!=0:0)?(s=c[f+(g<<4)+8>>2]|0,(s|0)!=0):0)?(t=c[s>>2]|0,(t&4|0)==0):0){c[s>>2]=t|4;f=c[j>>2]|0;if(f>>>0>255){c[b>>2]=c[b>>2]|1;c[s>>2]=t|12;break}f=f+1|0;c[j>>2]=f;if((t&3)==1){Nn(b,s);e=c[k>>2]|0;f=c[j>>2]|0}c[j>>2]=f+-1}while(0);g=g+1|0}while(g>>>0<e>>>0)}f=c[d+20>>2]|0;do if(f|0?(u=c[f>>2]|0,(u&4|0)==0):0){c[f>>2]=u|4;g=b+48|0;e=c[g>>2]|0;if(e>>>0>255){c[b>>2]=c[b>>2]|1;c[f>>2]=u|12;break}e=e+1|0;c[g>>2]=e;if((u&3)==1){Nn(b,f);e=c[g>>2]|0}c[g>>2]=e+-1}while(0);f=c[d>>2]|0;if(f&16384|0)return;if(f&2048|0){h=d+40|0;f=c[h>>2]|0;do if(f|0?(x=c[f>>2]|0,(x&4|0)==0):0){c[f>>2]=x|4;g=b+48|0;e=c[g>>2]|0;if(e>>>0>255){c[b>>2]=c[b>>2]|1;c[f>>2]=x|12;break}e=e+1|0;c[g>>2]=e;if((x&3)==1){Nn(b,f);e=c[g>>2]|0}c[g>>2]=e+-1}while(0);f=c[d+52>>2]|0;do if(f|0?(D=c[f>>2]|0,(D&4|0)==0):0){c[f>>2]=D|4;g=b+48|0;e=c[g>>2]|0;if(e>>>0>255){c[b>>2]=c[b>>2]|1;c[f>>2]=D|12;break}e=e+1|0;c[g>>2]=e;if((D&3)==1){Nn(b,f);e=c[g>>2]|0}c[g>>2]=e+-1}while(0);f=c[d+56>>2]|0;do if(f|0?(G=c[f>>2]|0,(G&4|0)==0):0){c[f>>2]=G|4;g=b+48|0;e=c[g>>2]|0;if(e>>>0>255){c[b>>2]=c[b>>2]|1;c[f>>2]=G|12;break}e=e+1|0;c[g>>2]=e;if((G&3)==1){Nn(b,f);e=c[g>>2]|0}c[g>>2]=e+-1}while(0);e=c[h>>2]|0;if(!e)return;f=e+24|0;h=d+44|0;e=c[h>>2]|0;if(f>>>0<e>>>0){i=b+48|0;do{do if(((f|0?c[f>>2]&8|0:0)?(J=c[f+8>>2]|0,J|0):0)?(K=c[J>>2]|0,(K&4|0)==0):0){c[J>>2]=K|4;g=c[i>>2]|0;if(g>>>0>255){c[b>>2]=c[b>>2]|1;c[J>>2]=K|12;break}g=g+1|0;c[i>>2]=g;if((K&3)==1){Nn(b,J);g=c[i>>2]|0}c[i>>2]=g+-1}while(0);f=f+16|0}while(f>>>0<e>>>0);e=c[h>>2]|0}h=c[d+48>>2]|0;if(e>>>0>=h>>>0)return;i=b+48|0;do{g=c[e>>2]|0;do if(g|0?(P=c[g>>2]|0,(P&4|0)==0):0){c[g>>2]=P|4;f=c[i>>2]|0;if(f>>>0>255){c[b>>2]=c[b>>2]|1;c[g>>2]=P|12;break}f=f+1|0;c[i>>2]=f;if((P&3)==1){Nn(b,g);f=c[i>>2]|0}c[i>>2]=f+-1}while(0);e=e+4|0}while(e>>>0<h>>>0);return}e=f>>>27;switch(e&31){case 16:{f=c[d+40>>2]|0;do if(f|0?(y=c[f>>2]|0,(y&4|0)==0):0){c[f>>2]=y|4;g=b+48|0;e=c[g>>2]|0;if(e>>>0>255){c[b>>2]=c[b>>2]|1;c[f>>2]=y|12;break}e=e+1|0;c[g>>2]=e;if((y&3)==1){Nn(b,f);e=c[g>>2]|0}c[g>>2]=e+-1}while(0);f=c[d+44>>2]|0;if(!f)return;g=c[f>>2]|0;if(g&4|0)return;c[f>>2]=g|4;h=b+48|0;e=c[h>>2]|0;if(e>>>0>255){c[b>>2]=c[b>>2]|1;c[f>>2]=g|12;return}e=e+1|0;c[h>>2]=e;if((g&3)==1){Nn(b,f);e=c[h>>2]|0}c[h>>2]=e+-1;return}case 15:{f=c[d+40>>2]|0;if(!f)return;g=c[f>>2]|0;if(g&4|0)return;c[f>>2]=g|4;h=b+48|0;e=c[h>>2]|0;if(e>>>0>255){c[b>>2]=c[b>>2]|1;c[f>>2]=g|12;return}e=e+1|0;c[h>>2]=e;if((g&3)==1){Nn(b,f);e=c[h>>2]|0}c[h>>2]=e+-1;return}default:{if(f&8192|0){f=c[d+40>>2]|0;do if(f|0?(z=c[f>>2]|0,(z&4|0)==0):0){c[f>>2]=z|4;g=b+48|0;e=c[g>>2]|0;if(e>>>0>255){c[b>>2]=c[b>>2]|1;c[f>>2]=z|12;break}e=e+1|0;c[g>>2]=e;if((z&3)==1){Nn(b,f);e=c[g>>2]|0}c[g>>2]=e+-1}while(0);f=c[d+44>>2]|0;if(!f)return;g=c[f>>2]|0;if(g&4|0)return;c[f>>2]=g|4;h=b+48|0;e=c[h>>2]|0;if(e>>>0>255){c[b>>2]=c[b>>2]|1;c[f>>2]=g|12;return}e=e+1|0;c[h>>2]=e;if((g&3)==1){Nn(b,f);e=c[h>>2]|0}c[h>>2]=e+-1;return}if(f&1024|0){do if((c[d+40>>2]&8|0?(v=c[d+48>>2]|0,v|0):0)?(w=c[v>>2]|0,(w&4|0)==0):0){c[v>>2]=w|4;f=b+48|0;e=c[f>>2]|0;if(e>>>0>255){c[b>>2]=c[b>>2]|1;c[v>>2]=w|12;break}e=e+1|0;c[f>>2]=e;if((w&3)==1){Nn(b,v);e=c[f>>2]|0}c[f>>2]=e+-1}while(0);e=d+56|0;do if((c[e>>2]&8|0?(B=c[e+8>>2]|0,B|0):0)?(C=c[B>>2]|0,(C&4|0)==0):0){c[B>>2]=C|4;f=b+48|0;e=c[f>>2]|0;if(e>>>0>255){c[b>>2]=c[b>>2]|1;c[B>>2]=C|12;break}e=e+1|0;c[f>>2]=e;if((C&3)==1){Nn(b,B);e=c[f>>2]|0}c[f>>2]=e+-1}while(0);e=c[d+76>>2]|0;if((e|0)<=0)return;i=b+48|0;h=c[d+72>>2]|0;while(1){g=e;e=e+-1|0;do if((c[h>>2]&8|0?(H=c[h+8>>2]|0,H|0):0)?(I=c[H>>2]|0,(I&4|0)==0):0){c[H>>2]=I|4;f=c[i>>2]|0;if(f>>>0>255){c[b>>2]=c[b>>2]|1;c[H>>2]=I|12;break}f=f+1|0;c[i>>2]=f;if((I&3)==1){Nn(b,H);f=c[i>>2]|0}c[i>>2]=f+-1}while(0);if((g|0)<=1)break;else h=h+16|0}return}if(f&33554432|0){f=c[d+40>>2]|0;do if(f|0?(A=c[f>>2]|0,(A&4|0)==0):0){c[f>>2]=A|4;g=b+48|0;e=c[g>>2]|0;if(e>>>0>255){c[b>>2]=c[b>>2]|1;c[f>>2]=A|12;break}e=e+1|0;c[g>>2]=e;if((A&3)==1){Nn(b,f);e=c[g>>2]|0}c[g>>2]=e+-1}while(0);f=c[d+44>>2]|0;if(!f)return;g=c[f>>2]|0;if(g&4|0)return;c[f>>2]=g|4;h=b+48|0;e=c[h>>2]|0;if(e>>>0>255){c[b>>2]=c[b>>2]|1;c[f>>2]=g|12;return}e=e+1|0;c[h>>2]=e;if((g&3)==1){Nn(b,f);e=c[h>>2]|0}c[h>>2]=e+-1;return}if((e|0)!=18)return;e=c[d+52>>2]|0;h=d+68|0;f=c[h>>2]|0;if(e>>>0<f>>>0){i=b+48|0;do{do if((((e|0)!=0?(c[e>>2]&8|0)!=0:0)?(E=c[e+8>>2]|0,(E|0)!=0):0)?(F=c[E>>2]|0,(F&4|0)==0):0){c[E>>2]=F|4;g=c[i>>2]|0;if(g>>>0>255){c[b>>2]=c[b>>2]|1;c[E>>2]=F|12;break}g=g+1|0;c[i>>2]=g;if((F&3)==1){Nn(b,E);f=c[h>>2]|0;g=c[i>>2]|0}c[i>>2]=g+-1}while(0);e=e+16|0}while(e>>>0<f>>>0)}e=c[d+72>>2]|0;if(e|0){h=b+48|0;do{g=c[e+16>>2]|0;do if(g|0?(L=c[g>>2]|0,(L&4|0)==0):0){c[g>>2]=L|4;f=c[h>>2]|0;if(f>>>0>255){c[b>>2]=c[b>>2]|1;c[g>>2]=L|12;break}f=f+1|0;c[h>>2]=f;if((L&3)==1){Nn(b,g);f=c[h>>2]|0}c[h>>2]=f+-1}while(0);g=c[e+24>>2]|0;do if(g|0?(M=c[g>>2]|0,(M&4|0)==0):0){c[g>>2]=M|4;f=c[h>>2]|0;if(f>>>0>255){c[b>>2]=c[b>>2]|1;c[g>>2]=M|12;break}f=f+1|0;c[h>>2]=f;if((M&3)==1){Nn(b,g);f=c[h>>2]|0}c[h>>2]=f+-1}while(0);g=c[e+28>>2]|0;do if(g|0?(N=c[g>>2]|0,(N&4|0)==0):0){c[g>>2]=N|4;f=c[h>>2]|0;if(f>>>0>255){c[b>>2]=c[b>>2]|1;c[g>>2]=N|12;break}f=f+1|0;c[h>>2]=f;if((N&3)==1){Nn(b,g);f=c[h>>2]|0}c[h>>2]=f+-1}while(0);e=c[e+20>>2]|0}while((e|0)!=0)}f=c[d+84>>2]|0;do if(f|0?(O=c[f>>2]|0,(O&4|0)==0):0){c[f>>2]=O|4;g=b+48|0;e=c[g>>2]|0;if(e>>>0>255){c[b>>2]=c[b>>2]|1;c[f>>2]=O|12;break}e=e+1|0;c[g>>2]=e;if((O&3)==1){Nn(b,f);e=c[g>>2]|0}c[g>>2]=e+-1}while(0);h=d+100|0;i=b+48|0;g=0;do{f=c[h+(g<<2)>>2]|0;do if(f|0?(Q=c[f>>2]|0,(Q&4|0)==0):0){c[f>>2]=Q|4;e=c[i>>2]|0;if(e>>>0>255){c[b>>2]=c[b>>2]|1;c[f>>2]=Q|12;break}e=e+1|0;c[i>>2]=e;if((Q&3)==1){Nn(b,f);e=c[i>>2]|0}c[i>>2]=e+-1}while(0);g=g+1|0}while((g|0)!=51);return}}}function On(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;b=c[a>>2]|0;if(!(b&1))return;f=a+24|0;g=a+32|0;h=a+48|0;do{c[a>>2]=b&-2;b=c[f>>2]|0;if(b|0)do{e=c[b>>2]|0;do if(e&8|0){c[b>>2]=e&-13|4;d=c[h>>2]|0;if(d>>>0>255){c[a>>2]=c[a>>2]|1;c[b>>2]=e|12;break}d=d+1|0;c[h>>2]=d;if((e&3)==1){Nn(a,b);d=c[h>>2]|0}c[h>>2]=d+-1}while(0);b=c[b+8>>2]|0}while((b|0)!=0);b=c[g>>2]|0;if(b|0)do{e=c[b>>2]|0;do if(e&8|0){c[b>>2]=e&-13|4;d=c[h>>2]|0;if(d>>>0>255){c[a>>2]=c[a>>2]|1;c[b>>2]=e|12;break}d=d+1|0;c[h>>2]=d;if((e&3)==1){Nn(a,b);d=c[h>>2]|0}c[h>>2]=d+-1}while(0);b=c[b+8>>2]|0}while((b|0)!=0);b=c[a>>2]|0}while((b&1|0)!=0);return}function Pn(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0;l=d+16|0;e=c[l>>2]|0;i=d+24|0;f=c[i>>2]|0;j=e+(f<<4)|0;k=e+(f*20|0)|0;g=c[d+28>>2]|0;if(g){h=b+44|0;do{g=g+-1|0;f=c[j+(g<<2)>>2]|0;do if(f|0){t=f+4|0;s=(c[t>>2]|0)+-1|0;c[t>>2]=s;if(!s)_o(c[h>>2]|0,f);if(!(a[k+g>>0]&8)){if(!(c[e+(g<<4)>>2]&8))break;f=c[e+(g<<4)+8>>2]|0;s=f+4|0;t=(c[s>>2]|0)+-1|0;c[s>>2]=t;if(t|0)break;bo(c[h>>2]|0,f);break}f=c[e+(g<<4)>>2]|0;if(f|0?(s=f+4|0,t=(c[s>>2]|0)+-1|0,c[s>>2]=t,(t|0)==0):0)eo(c[h>>2]|0,f);f=c[e+(g<<4)+4>>2]|0;if(f|0?(s=f+4|0,t=(c[s>>2]|0)+-1|0,c[s>>2]=t,(t|0)==0):0)eo(c[h>>2]|0,f)}while(0)}while((g|0)!=0);f=c[i>>2]|0;e=c[l>>2]|0}g=e+(f*21|0)+(0-f&7)|0;e=c[d+32>>2]|0;if(e|0){f=b+44|0;do{e=e+-1|0;if(c[g+(e<<4)>>2]&8|0?(m=c[g+(e<<4)+8>>2]|0,s=m+4|0,t=(c[s>>2]|0)+-1|0,c[s>>2]=t,(t|0)==0):0)bo(c[f>>2]|0,m)}while((e|0)!=0)}e=c[d+20>>2]|0;if(e|0?(s=e+4|0,t=(c[s>>2]|0)+-1|0,c[s>>2]=t,(t|0)==0):0)eo(c[b+44>>2]|0,e);f=c[d>>2]|0;if(f&16384|0)return;if(f&2048|0){i=d+40|0;e=c[i>>2]|0;if(e|0){f=e+24|0;h=d+44|0;e=c[h>>2]|0;if(f>>>0<e>>>0){g=b+44|0;do{if(c[f>>2]&8|0?(q=c[f+8>>2]|0,s=q+4|0,t=(c[s>>2]|0)+-1|0,c[s>>2]=t,(t|0)==0):0)bo(c[g>>2]|0,q);f=f+16|0}while(f>>>0<e>>>0);e=c[h>>2]|0}h=c[d+48>>2]|0;if(e>>>0<h>>>0){g=b+44|0;do{f=c[e>>2]|0;s=f+4|0;t=(c[s>>2]|0)+-1|0;c[s>>2]=t;if(!t)eo(c[g>>2]|0,f);e=e+4|0}while(e>>>0<h>>>0)}}e=c[d+52>>2]|0;if(e|0?(s=e+4|0,t=(c[s>>2]|0)+-1|0,c[s>>2]=t,(t|0)==0):0)Yn(c[b+44>>2]|0,e);e=c[d+56>>2]|0;if(e|0?(s=e+4|0,t=(c[s>>2]|0)+-1|0,c[s>>2]=t,(t|0)==0):0)Yn(c[b+44>>2]|0,e);e=c[i>>2]|0;if(!e)return;s=e+4|0;t=(c[s>>2]|0)+-1|0;c[s>>2]=t;if(t|0)return;Yn(c[b+44>>2]|0,e);return}e=f>>>27;switch(e&31){case 16:{e=c[d+40>>2]|0;if(e|0?(s=e+4|0,t=(c[s>>2]|0)+-1|0,c[s>>2]=t,(t|0)==0):0)eo(c[b+44>>2]|0,e);e=c[d+44>>2]|0;if(!e)return;s=e+4|0;t=(c[s>>2]|0)+-1|0;c[s>>2]=t;if(t|0)return;eo(c[b+44>>2]|0,e);return}case 15:{e=c[d+40>>2]|0;s=e+4|0;t=(c[s>>2]|0)+-1|0;c[s>>2]=t;if(t|0)return;eo(c[b+44>>2]|0,e);return}default:{if(f&8192|0){e=c[d+40>>2]|0;if(e|0?(s=e+4|0,t=(c[s>>2]|0)+-1|0,c[s>>2]=t,(t|0)==0):0)kq(c[b+44>>2]|0,e);e=c[d+44>>2]|0;if(!e)return;s=e+4|0;t=(c[s>>2]|0)+-1|0;c[s>>2]=t;if(t|0)return;eo(c[b+44>>2]|0,e);return}if(f&1024|0){if(c[d+40>>2]&8|0?(n=c[d+48>>2]|0,s=n+4|0,t=(c[s>>2]|0)+-1|0,c[s>>2]=t,(t|0)==0):0)bo(c[b+44>>2]|0,n);e=d+56|0;if(c[e>>2]&8|0?(o=c[e+8>>2]|0,s=o+4|0,t=(c[s>>2]|0)+-1|0,c[s>>2]=t,(t|0)==0):0)bo(c[b+44>>2]|0,o);e=c[d+76>>2]|0;if((e|0)<=0)return;h=b+44|0;g=c[d+72>>2]|0;while(1){f=e;e=e+-1|0;if(c[g>>2]&8|0?(p=c[g+8>>2]|0,s=p+4|0,t=(c[s>>2]|0)+-1|0,c[s>>2]=t,(t|0)==0):0)bo(c[h>>2]|0,p);if((f|0)<=1)break;else g=g+16|0}return}if(f&33554432|0){e=c[d+40>>2]|0;s=e+4|0;t=(c[s>>2]|0)+-1|0;c[s>>2]=t;if(!t)eo(c[b+44>>2]|0,e);e=c[d+44>>2]|0;s=e+4|0;t=(c[s>>2]|0)+-1|0;c[s>>2]=t;if(t|0)return;eo(c[b+44>>2]|0,e);return}if((e|0)!=18)return;f=c[d+52>>2]|0;g=d+68|0;e=c[g>>2]|0;h=b+44|0;if(f>>>0<e>>>0)do{if((c[f>>2]&8|0)!=0?(r=c[f+8>>2]|0,s=r+4|0,t=(c[s>>2]|0)+-1|0,c[s>>2]=t,(t|0)==0):0){bo(c[h>>2]|0,r);e=c[g>>2]|0}f=f+16|0}while(f>>>0<e>>>0);e=c[d+72>>2]|0;if(e|0)do{f=c[e+16>>2]|0;if(f|0?(s=f+4|0,t=(c[s>>2]|0)+-1|0,c[s>>2]=t,(t|0)==0):0)eo(c[h>>2]|0,f);f=c[e+24>>2]|0;if(f|0?(s=f+4|0,t=(c[s>>2]|0)+-1|0,c[s>>2]=t,(t|0)==0):0)eo(c[h>>2]|0,f);f=c[e+28>>2]|0;if(f|0?(s=f+4|0,t=(c[s>>2]|0)+-1|0,c[s>>2]=t,(t|0)==0):0)eo(c[h>>2]|0,f);e=c[e+20>>2]|0}while((e|0)!=0);f=d+100|0;e=0;do{g=c[f+(e<<2)>>2]|0;if(g|0?(s=g+4|0,t=(c[s>>2]|0)+-1|0,c[s>>2]=t,(t|0)==0):0)eo(c[h>>2]|0,g);e=e+1|0}while((e|0)!=51);e=c[d+84>>2]|0;if(!e)return;s=e+4|0;t=(c[s>>2]|0)+-1|0;c[s>>2]=t;if(t|0)return;eo(c[h>>2]|0,e);return}}}function Qn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;g=a+52|0;h=a+64|0;i=a+68|0;j=a+56|0;k=a+60|0;f=b<<4;e=c[a+44>>2]|0;a=e+44|0;d=c[a>>2]|0;c[a>>2]=d+-1;if((d|0)<1)Ln(e,2);b=e+8|0;d=e+16|0;a=ig[c[b>>2]&63](c[d>>2]|0,c[g>>2]|0,f)|0;if((f|0)==0|(a|0)!=0){if(!a){k=0;return k|0}}else{Ln(e,0);a=ig[c[b>>2]&63](c[d>>2]|0,c[g>>2]|0,f)|0;if(!a){Ln(e,0);a=ig[c[b>>2]&63](c[d>>2]|0,c[g>>2]|0,f)|0;if(!a){Ln(e,1);a=ig[c[b>>2]&63](c[d>>2]|0,c[g>>2]|0,f)|0;if(!a){Ln(e,1);a=ig[c[b>>2]&63](c[d>>2]|0,c[g>>2]|0,f)|0;if(!a){Ln(e,1);a=ig[c[b>>2]&63](c[d>>2]|0,c[g>>2]|0,f)|0;if(!a){Ln(e,1);a=ig[c[b>>2]&63](c[d>>2]|0,c[g>>2]|0,f)|0;if(!a){Ln(e,1);a=ig[c[b>>2]&63](c[d>>2]|0,c[g>>2]|0,f)|0;if(!a){Ln(e,1);a=ig[c[b>>2]&63](c[d>>2]|0,c[g>>2]|0,f)|0;if(!a){Ln(e,1);a=ig[c[b>>2]&63](c[d>>2]|0,c[g>>2]|0,f)|0;if(!a){Ln(e,1);b=ig[c[b>>2]&63](c[d>>2]|0,c[g>>2]|0,f)|0;if(!b){k=0;return k|0}else a=b}}}}}}}}}}e=a-(c[g>>2]|0)|0;b=(c[k>>2]|0)+e|0;c[g>>2]=a;c[h>>2]=(c[h>>2]|0)+e;c[i>>2]=(c[i>>2]|0)+e;c[j>>2]=(c[j>>2]|0)+e;a=a+f|0;c[k>>2]=a;if(b>>>0>=a>>>0){k=1;return k|0}do{c[b>>2]=2;b=b+16|0}while(b>>>0<a>>>0);b=1;return b|0}function Rn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;if(!b)return;e=a+68|0;f=a+56|0;g=a+64|0;while(1){if((c[b>>2]&3|0)==1){d=c[e>>2]|0;if(d>>>0>=(c[f>>2]|0)>>>0){b=5;break}c[e>>2]=d+16;c[d>>2]=9;c[d+8>>2]=b;d=b+4|0;c[d>>2]=(c[d>>2]|0)+1;d=c[e>>2]|0;if(d>>>0<((c[g>>2]|0)+16|0)>>>0){b=8;break}if(((c[f>>2]|0)+16|0)>>>0<d>>>0){b=8;break}Xn(a,16,0,1,0)|0}b=c[b+8>>2]|0;if(!b){b=11;break}}if((b|0)==5)Un(a,4153);else if((b|0)==8)Vn(a,268605,315);else if((b|0)==11)return}function Sn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;p=a+192|0;if(c[p>>2]|0)return;c[p>>2]=1;o=a+184|0;d=c[o>>2]|0;b=((c[a+188>>2]|0)>>>0)/(d>>>4>>>0)|0;do if(b>>>0>16){if(d>>>0<=268435455){n=d<<1;h=a+176|0;g=c[h>>2]|0;d=d<<3;l=a+44|0;m=c[l>>2]|0;c[l>>2]=m+-1;if((m|0)<1)Ln(a,2);e=a+8|0;f=a+16|0;b=ig[c[e>>2]&63](c[f>>2]|0,g,d)|0;if((d|0)==0|(b|0)!=0){if(!b)break}else{Ln(a,0);b=ig[c[e>>2]&63](c[f>>2]|0,g,d)|0;if(!b){Ln(a,0);b=ig[c[e>>2]&63](c[f>>2]|0,g,d)|0;if(!b){Ln(a,1);b=ig[c[e>>2]&63](c[f>>2]|0,g,d)|0;if(!b){Ln(a,1);b=ig[c[e>>2]&63](c[f>>2]|0,g,d)|0;if(!b){Ln(a,1);b=ig[c[e>>2]&63](c[f>>2]|0,g,d)|0;if(!b){Ln(a,1);b=ig[c[e>>2]&63](c[f>>2]|0,g,d)|0;if(!b){Ln(a,1);b=ig[c[e>>2]&63](c[f>>2]|0,g,d)|0;if(!b){Ln(a,1);b=ig[c[e>>2]&63](c[f>>2]|0,g,d)|0;if(!b){Ln(a,1);b=ig[c[e>>2]&63](c[f>>2]|0,g,d)|0;if(!b){Ln(a,1);b=ig[c[e>>2]&63](c[f>>2]|0,g,d)|0;if(!b)break}}}}}}}}}}c[h>>2]=b;k=c[o>>2]|0;l=b+(k<<2)|0;if(k|0){j=0;do{m=b+(j<<2)|0;e=c[m>>2]|0;a:do if(!e){e=0;d=0}else{h=0;d=e;f=e;e=0;while(1){i=e+8|0;b:do if(!e){e=h;g=f;while(1){f=g+8|0;h=c[f>>2]|0;if(!(c[g+12>>2]&k)){f=h;break b}c[f>>2]=e;if(!h){e=g;d=0;break a}else{e=g;d=h;g=h}}}else{e=h;while(1){g=f+8|0;h=c[g>>2]|0;if(!(c[f+12>>2]&k)){g=f;f=h;break b}c[i>>2]=h;c[g>>2]=e;if(!h){e=f;break a}else{e=f;f=h}}}while(0);if(!f)break;else{h=e;e=g}}}while(0);c[m>>2]=d;c[l+(j<<2)>>2]=e;j=j+1|0}while((j|0)!=(k|0))}c[o>>2]=n;c[a+180>>2]=n+-1}}else if(!(d>>>0<1025|b>>>0>6)){l=d>>>1;j=a+176|0;k=c[j>>2]|0;h=k+(l<<2)|0;if(!l)g=j;else{g=0;do{i=k+(g<<2)|0;b=c[i>>2]|0;e=c[h+(g<<2)>>2]|0;if(!b)b=e;else{d=b;do{f=d+8|0;d=c[f>>2]|0}while((d|0)!=0);c[f>>2]=e}c[i>>2]=b;g=g+1|0}while((g|0)!=(l|0));g=j;k=c[j>>2]|0}c[o>>2]=l;c[a+180>>2]=l+-1;d=l<<2;n=a+44|0;o=c[n>>2]|0;c[n>>2]=o+-1;if((o|0)<1)Ln(a,2);e=a+8|0;f=a+16|0;b=ig[c[e>>2]&63](c[f>>2]|0,k,d)|0;if(!((d|0)==0|(b|0)!=0)){Ln(a,0);b=ig[c[e>>2]&63](c[f>>2]|0,k,d)|0;if(!b){Ln(a,0);b=ig[c[e>>2]&63](c[f>>2]|0,k,d)|0;if(!b){Ln(a,1);b=ig[c[e>>2]&63](c[f>>2]|0,k,d)|0;if(!b){Ln(a,1);b=ig[c[e>>2]&63](c[f>>2]|0,k,d)|0;if(!b){Ln(a,1);b=ig[c[e>>2]&63](c[f>>2]|0,k,d)|0;if(!b){Ln(a,1);b=ig[c[e>>2]&63](c[f>>2]|0,k,d)|0;if(!b){Ln(a,1);b=ig[c[e>>2]&63](c[f>>2]|0,k,d)|0;if(!b){Ln(a,1);b=ig[c[e>>2]&63](c[f>>2]|0,k,d)|0;if(!b){Ln(a,1);b=ig[c[e>>2]&63](c[f>>2]|0,k,d)|0;if(!b){Ln(a,1);b=ig[c[e>>2]&63](c[f>>2]|0,k,d)|0}}}}}}}}}}c[g>>2]=b}while(0);c[p>>2]=0;return}function Tn(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;p=a+64|0;if(c[p>>2]|0)return;c[p>>2]=1;m=a+32|0;b=c[m>>2]|0;a:do if(b|0){n=a+68|0;o=a+128|0;k=a+12|0;l=a+16|0;j=a+24|0;while(1){a=c[b>>2]|0;d=a&-17;c[b>>2]=d;if(!(c[n>>2]|0)){g=b+4|0;h=c[g>>2]|0;i=c[o>>2]|0;c[b>>2]=d|32;if(!(a&33554432)){f=i+68|0;a=c[f>>2]|0;d=i+56|0;if(a>>>0>=(c[d>>2]|0)>>>0){a=7;break}c[f>>2]=a+16;c[a>>2]=9;c[a+8>>2]=b;c[g>>2]=(c[g>>2]|0)+1;a=c[f>>2]|0;e=i+64|0;if(a>>>0<(c[e>>2]|0)>>>0){a=10;break}if((c[d>>2]|0)>>>0<(a+16|0)>>>0){a=10;break}Xn(i,17,0,0,1)|0;d=c[f>>2]|0;if((d+-32|0)>>>0<(c[e>>2]|0)>>>0){a=12;break}a=d+-16|0;c[f>>2]=a;e=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[a>>2]=2;if((e&8|0)!=0?(q=d+4|0,e=(c[q>>2]|0)+-1|0,c[q>>2]=e,(e|0)==0):0){Yn(c[i+44>>2]|0,d);a=c[f>>2]|0}e=a+-16|0;c[f>>2]=e;q=c[a+-16>>2]|0;a=c[a+-8>>2]|0;c[e>>2]=2;if(q&8|0?(f=a+4|0,q=(c[f>>2]|0)+-1|0,c[f>>2]=q,(q|0)==0):0)Yn(c[i+44>>2]|0,a)}if((c[g>>2]|0)!=1)if((h|0)==1){c[b>>2]=c[b>>2]&-33;a=1}else a=1;else a=0}else a=1;f=b+8|0;d=c[f>>2]|0;g=b+12|0;e=c[g>>2]|0;if(d|0)c[d+12>>2]=e;if(!e)c[m>>2]=d;else c[e+8>>2]=d;if(!a){Pn(c[o>>2]|0,b);Bg[c[k>>2]&255](c[l>>2]|0,c[b+16>>2]|0);a=c[b>>2]|0;do if(!(a&6144)){if((a&-134217728|0)!=-1879048192){if(!(a&1024))break;Bg[c[k>>2]&255](c[l>>2]|0,c[b+72>>2]|0);break}Bg[c[k>>2]&255](c[l>>2]|0,c[b+52>>2]|0);a=c[b+72>>2]|0;if(a|0)do{d=c[a+32>>2]|0;if(d|0)do{q=d;d=c[d>>2]|0;Bg[c[k>>2]&255](c[l>>2]|0,q)}while((d|0)!=0);q=a;a=c[a+20>>2]|0;Bg[c[k>>2]&255](c[l>>2]|0,q)}while((a|0)!=0)}while(0);Bg[c[k>>2]&255](c[l>>2]|0,b)}else{a=b+4|0;c[a>>2]=(c[a>>2]|0)+-1;c[b>>2]=c[b>>2]&-17;a=c[j>>2]|0;if(a|0)c[a+12>>2]=b;c[g>>2]=0;c[f>>2]=a;c[j>>2]=b}b=c[m>>2]|0;if(!b)break a}if((a|0)==7)Un(i,4153);else if((a|0)==10)Vn(i,268605,315);else if((a|0)==12)Jn(i,268620,50337495,268636)}while(0);c[p>>2]=0;return}function Un(a,b){a=a|0;b=b|0;Jn(a,268620,b|50331648,270067)}function Vn(a,b,c){a=a|0;b=b|0;c=c|0;Jn(a,b,c|100663296,269834)}function Wn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=a+68|0;d=c[j>>2]|0;h=a+64|0;f=d-(c[h>>2]|0)|0;i=f>>4;g=i+-1|0;if(!i)jo(a,300,-1);b=c[(c[a+304>>2]|0)+400>>2]|0;i=a+56|0;if(d>>>0>=(c[i>>2]|0)>>>0)Un(a,4153);c[j>>2]=d+16;c[d>>2]=8;c[d+8>>2]=b;d=b+4|0;c[d>>2]=(c[d>>2]|0)+1;d=c[h>>2]|0;e=(c[j>>2]|0)-d>>4;b=((f|0)<16?e:0)+g|0;if(b>>>0>=e>>>0)jo(a,376,g);ro(a,d+(b<<4)|0,d+(e+-1<<4)|0)|0;d=c[h>>2]|0;e=(c[j>>2]|0)-d>>4;b=e+-2|0;if(e>>>0<=1)jo(a,376,-2);k=d+(b<<4)|0;f=d+(e+-1<<4)|0;g=c[k>>2]|0;b=c[d+(b<<4)+8>>2]|0;QQ(k|0,k+16|0,f-k|0)|0;c[f>>2]=2;d=(c[j>>2]|0)+-16|0;c[j>>2]=d;if((g&8|0)!=0?(g=b+4|0,k=(c[g>>2]|0)+-1|0,c[g>>2]=k,(k|0)==0):0){Yn(c[a+44>>2]|0,b);d=c[j>>2]|0}if(d>>>0>=(c[i>>2]|0)>>>0)Un(a,1093);b=c[h>>2]|0;e=d-b>>4;if(e>>>0<=1)jo(a,376,-2);k=b+(e+-2<<4)|0;c[j>>2]=d+16;c[d>>2]=c[k>>2];c[d+4>>2]=c[k+4>>2];c[d+8>>2]=c[k+8>>2];c[d+12>>2]=c[k+12>>2];if(c[d>>2]&8|0){k=(c[d+8>>2]|0)+4|0;c[k>>2]=(c[k>>2]|0)+1}b=c[j>>2]|0;if(b>>>0<(c[i>>2]|0)>>>0){k=(c[c[a+44>>2]>>2]|0)>>>2&1;c[j>>2]=b+16;c[b>>2]=4;c[b+8>>2]=k;iq(a,2);return 0}else Un(a,4185);return 0}function Xn(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,m=0,n=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0;O=l;l=l+160|0;M=O;t=4;u=eN(40)|0;c[u>>2]=0;n=O+4|0;H=b+72|0;I=c[H>>2]|0;J=b+64|0;K=c[J>>2]|0;v=b+52|0;w=c[v>>2]|0;x=b+44|0;s=c[x>>2]|0;y=c[s+140>>2]|0;A=c[s+132>>2]|0;B=b+49|0;C=a[B>>0]|0;D=b+40|0;E=c[D>>2]|0;F=b+68|0;q=((c[F>>2]|0)-K>>4)-f|0;s=s+80|0;r=c[s>>2]|0;c[s>>2]=n;s=b+80|0;c[s>>2]=(c[s>>2]|0)+1;t=NQ(n,1,u|0,t|0)|0;u=z;o=0;f=o;o=0;if((f|0)!=0&(p|0)!=0){h=OQ(c[f>>2]|0,t|0,u|0)|0;if(!h)Of(f|0,p|0);z=p}else h=-1;if((h|0)==1)f=z;else f=0;a:while(1){if(!f){h=c[x>>2]|0;k=h+132|0;j=c[k>>2]|0;f=a[B>>0]|0;i=f&255;if((j|0)==(b|0)){if(f<<24>>24!=2)N=10}else if(f<<24>>24==1){if(!j){i=0;f=0}else{i=c[j+96>>2]|0;f=c[j+92>>2]|0}c[b+92>>2]=f;c[b+96>>2]=i;c[k>>2]=b;a[B>>0]=2}else N=10;if((N|0)==10){N=0;o=0;c[M>>2]=i;ya(11,b|0,268650,100665180,268664,M|0);f=o;o=0;if((f|0)!=0&(p|0)!=0){n=OQ(c[f>>2]|0,t|0,u|0)|0;if(!n)Of(f|0,p|0);z=p};f=z;continue}f=c[h+140>>2]|0;if((f|0)>=(c[h+144>>2]|0)){o=0;oa(212,b|0);f=o;o=0;if((f|0)!=0&(p|0)!=0){h=OQ(c[f>>2]|0,t|0,u|0)|0;if(!h)Of(f|0,p|0);z=p}else h=-1;if((h|0)==1){f=z;continue}f=c[x>>2]|0;h=f;f=c[f+140>>2]|0}c[h+140>>2]=f+1;o=0;i=aa(d|0,b|0,e|0)|0;f=o;o=0;if((f|0)!=0&(p|0)!=0){h=OQ(c[f>>2]|0,t|0,u|0)|0;if(!h)Of(f|0,p|0);z=p}else h=-1;if((h|0)==1){f=z;continue}if((i|0)<0){o=0;ua(156,b|0,i|0);f=o;o=0;if((f|0)!=0&(p|0)!=0){n=OQ(c[f>>2]|0,t|0,u|0)|0;if(!n)Of(f|0,p|0);z=p};f=z;continue}j=c[F>>2]|0;h=c[J>>2]|0;f=(j-h>>4)-i|0;i=j;if((f|0)<0){o=0;xa(15,b|0,268650,100664671,268691);f=o;o=0;if((f|0)!=0&(p|0)!=0){n=OQ(c[f>>2]|0,t|0,u|0)|0;if(!n)Of(f|0,p|0);z=p};f=z;continue}if((f|0)<=(q|0)){n=q-f|0;f=h+(f<<4)|0;h=f+(n<<4)|0;c[F>>2]=i+(n<<4);QQ(h|0,f|0,j-f|0)|0;if((f|0)!=(h|0))do{c[f>>2]=2;f=f+16|0}while((f|0)!=(h|0))}else{n=f-q|0;k=h+(q<<4)|0;m=k+(n<<4)|0;i=j-m|0;if((n|0)>0){f=k;while(1){if(c[f>>2]&8|0?(L=c[f+8>>2]|0,h=L+4|0,j=(c[h>>2]|0)+-1|0,c[h>>2]=j,(j|0)==0):0){o=0;ua(157,c[x>>2]|0,L|0);j=o;o=0;if((j|0)!=0&(p|0)!=0){h=OQ(c[j>>2]|0,t|0,u|0)|0;if(!h)Of(j|0,p|0);z=p}else h=-1;if((h|0)==1){f=z;continue a}}f=f+16|0;if(f>>>0>=m>>>0)break}}QQ(k|0,m|0,i|0)|0;i=c[F>>2]|0;n=0-n|0;h=i+(n<<4)|0;if((n|0)<0){f=h;do{c[f>>2]=2;f=f+16|0}while(f>>>0<i>>>0)}c[F>>2]=h}f=q+g|0;j=c[F>>2]|0;h=c[J>>2]|0;i=j-h>>4;if(f>>>0<i>>>0){k=j+(f-i<<4)|0;i=j;while(1){n=c[i+-16>>2]|0;f=c[i+-8>>2]|0;i=i+-16|0;c[i>>2]=2;if(n&8|0?(m=f+4|0,n=(c[m>>2]|0)+-1|0,c[m>>2]=n,(n|0)==0):0){o=0;ua(157,c[x>>2]|0,f|0);f=o;o=0;if((f|0)!=0&(p|0)!=0){h=OQ(c[f>>2]|0,t|0,u|0)|0;if(!h)Of(f|0,p|0);z=p}else h=-1;if((h|0)==1){f=z;continue a}}if((i|0)==(k|0))break}c[F>>2]=k;f=c[x>>2]|0;if(c[f+32>>2]|0){o=0;oa(213,f|0);f=o;o=0;if((f|0)!=0&(p|0)!=0){h=OQ(c[f>>2]|0,t|0,u|0)|0;if(!h)Of(f|0,p|0);z=p}else h=-1;if((h|0)==1){f=z;continue}}}else c[F>>2]=h+(f<<4);f=c[x>>2]|0;i=f+132|0;if(A){f=c[i>>2]|0;if(!f){h=0;f=0}else{h=c[f+96>>2]|0;f=c[f+92>>2]|0}c[A+92>>2]=f;c[A+96>>2]=h;f=c[x>>2]|0}c[i>>2]=A;a[B>>0]=C;c[f+80>>2]=r;i=0}else{j=K-w|0;f=c[x>>2]|0;c[f+80>>2]=r;if((c[H>>2]|0)!=(I|0)){i=b+76|0;while(1){o=0;oa(214,b|0);f=o;o=0;if((f|0)!=0&(p|0)!=0){h=OQ(c[f>>2]|0,t|0,u|0)|0;if(!h)Of(f|0,p|0);z=p}else h=-1;if((h|0)==1){f=z;continue a}k=c[H>>2]|0;h=k+20|0;n=c[h>>2]|0;c[H>>2]=n;c[i>>2]=(c[i>>2]|0)+-1;f=c[x>>2]|0;m=f+36|0;c[h>>2]=c[m>>2];c[m>>2]=k;if((n|0)==(I|0))break}}i=f+132|0;if(A){f=c[i>>2]|0;if(!f){h=0;f=0}else{h=c[f+96>>2]|0;f=c[f+92>>2]|0}c[A+92>>2]=f;c[A+96>>2]=h;f=c[x>>2]|0}c[i>>2]=A;a[B>>0]=C;c[J>>2]=(c[v>>2]|0)+j;h=f+96|0;i=c[F>>2]|0;if(i>>>0>=(c[b+56>>2]|0)>>>0){o=0;ua(158,b|0,4153);f=o;o=0;if((f|0)!=0&(p|0)!=0){n=OQ(c[f>>2]|0,t|0,u|0)|0;if(!n)Of(f|0,p|0);z=p};f=z;continue}c[F>>2]=i+16;c[i>>2]=c[h>>2];c[i+4>>2]=c[h+4>>2];c[i+8>>2]=c[h+8>>2];c[i+12>>2]=c[h+12>>2];if(c[h>>2]&8|0){n=(c[f+104>>2]|0)+4|0;c[n>>2]=(c[n>>2]|0)+1}j=c[F>>2]|0;h=c[J>>2]|0;n=j-h|0;f=(n>>4)+-1|0;i=j;if((n|0)<16){o=0;xa(15,b|0,268650,100664671,268691);f=o;o=0;if((f|0)!=0&(p|0)!=0){n=OQ(c[f>>2]|0,t|0,u|0)|0;if(!n)Of(f|0,p|0);z=p};f=z;continue}if((f|0)<=(q|0)){n=q-f|0;f=h+(f<<4)|0;h=f+(n<<4)|0;c[F>>2]=i+(n<<4);QQ(h|0,f|0,j-f|0)|0;if((f|0)!=(h|0))do{c[f>>2]=2;f=f+16|0}while((f|0)!=(h|0))}else{n=f-q|0;k=h+(q<<4)|0;m=k+(n<<4)|0;h=j-m|0;if((n|0)>0){f=k;while(1){if(c[f>>2]&8|0?(G=c[f+8>>2]|0,i=G+4|0,j=(c[i>>2]|0)+-1|0,c[i>>2]=j,(j|0)==0):0){o=0;ua(157,c[x>>2]|0,G|0);i=o;o=0;if((i|0)!=0&(p|0)!=0){j=OQ(c[i>>2]|0,t|0,u|0)|0;if(!j)Of(i|0,p|0);z=p}else j=-1;if((j|0)==1){f=z;continue a}}f=f+16|0;if(f>>>0>=m>>>0)break}}QQ(k|0,m|0,h|0)|0;i=c[F>>2]|0;n=0-n|0;h=i+(n<<4)|0;if((n|0)<0){f=h;do{c[f>>2]=2;f=f+16|0}while(f>>>0<i>>>0)}c[F>>2]=h}f=q+g|0;j=c[F>>2]|0;h=c[J>>2]|0;i=j-h>>4;if(f>>>0<i>>>0){k=j+(f-i<<4)|0;i=j;while(1){n=c[i+-16>>2]|0;f=c[i+-8>>2]|0;i=i+-16|0;c[i>>2]=2;if(n&8|0?(m=f+4|0,n=(c[m>>2]|0)+-1|0,c[m>>2]=n,(n|0)==0):0){o=0;ua(157,c[x>>2]|0,f|0);f=o;o=0;if((f|0)!=0&(p|0)!=0){h=OQ(c[f>>2]|0,t|0,u|0)|0;if(!h)Of(f|0,p|0);z=p}else h=-1;if((h|0)==1){f=z;continue a}}if((i|0)==(k|0))break}c[F>>2]=k;f=c[x>>2]|0;if(c[f+32>>2]|0){o=0;oa(213,f|0);f=o;o=0;if((f|0)!=0&(p|0)!=0){h=OQ(c[f>>2]|0,t|0,u|0)|0;if(!h)Of(f|0,p|0);z=p}else h=-1;if((h|0)==1){f=z;continue}}}else c[F>>2]=h+(f<<4);f=c[x>>2]|0;c[f+84>>2]=0;c[f+88>>2]=0;m=f+96|0;n=c[m>>2]|0;h=c[f+104>>2]|0;c[m>>2]=2;if((n&8|0)!=0?(m=h+4|0,n=(c[m>>2]|0)+-1|0,c[m>>2]=n,(n|0)==0):0){o=0;ua(157,f|0,h|0);f=o;o=0;if((f|0)!=0&(p|0)!=0){h=OQ(c[f>>2]|0,t|0,u|0)|0;if(!h)Of(f|0,p|0);z=p}else h=-1;if((h|0)==1){f=z;continue}f=c[x>>2]|0}m=f+112|0;n=c[m>>2]|0;h=c[f+120>>2]|0;c[m>>2]=2;if((n&8|0)!=0?(m=h+4|0,n=(c[m>>2]|0)+-1|0,c[m>>2]=n,(n|0)==0):0){o=0;ua(157,f|0,h|0);f=o;o=0;if((f|0)!=0&(p|0)!=0){h=OQ(c[f>>2]|0,t|0,u|0)|0;if(!h)Of(f|0,p|0);z=p}else h=-1;if((h|0)==1){f=z;continue}f=c[x>>2]|0}i=f+64|0;c[i>>2]=(c[i>>2]|0)+-1;i=1}c[D>>2]=E;c[f+140>>2]=y;c[s>>2]=(c[s>>2]|0)+-1;if(!(c[f+32>>2]|0)){N=96;break}o=0;oa(213,f|0);f=o;o=0;if((f|0)!=0&(p|0)!=0){h=OQ(c[f>>2]|0,t|0,u|0)|0;if(!h)Of(f|0,p|0);z=p}else h=-1;if((h|0)==1)f=z;else break}if((N|0)==96){fN(t|0);l=O;return i|0}fN(t|0);l=O;return i|0}function Yn(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;if(c[a+56>>2]|0)return;f=c[b>>2]|0;switch(f&3){case 0:{d=a+196|0;if((c[d>>2]|0)==(b|0))c[d>>2]=0;d=a+208|0;if((c[d>>2]|0)==(b|0))c[d>>2]=0;d=a+220|0;if((c[d>>2]|0)==(b|0))c[d>>2]=0;d=a+232|0;if((c[d>>2]|0)==(b|0))c[d>>2]=0;f=a+188|0;c[f>>2]=(c[f>>2]|0)+-1;f=(c[a+176>>2]|0)+((c[a+180>>2]&c[b+12>>2])<<2)|0;e=0;d=f;while(1){d=c[d>>2]|0;if((d|0)==(b|0))break;else{e=d;d=d+8|0}}c[(e|0?e+8|0:f)>>2]=c[b+8>>2];Bg[c[a+12>>2]&255](c[a+16>>2]|0,b);return}case 1:{Zn(a,b,0);return}default:{d=c[b+8>>2]|0;e=c[b+12>>2]|0;if(!e)c[a+24>>2]=d;else c[e+8>>2]=d;if(d|0)c[d+12>>2]=e;if((f&384|0)==128){e=a+12|0;d=a+16|0;Bg[c[e>>2]&255](c[d>>2]|0,c[b+20>>2]|0)}else{e=a+12|0;d=a+16|0}Bg[c[e>>2]&255](c[d>>2]|0,b);return}}}function Zn(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=b+8|0;e=c[i>>2]|0;j=b+12|0;f=c[j>>2]|0;if(!f)c[a+24>>2]=e;else c[f+8>>2]=e;if(!e){e=1e4;f=b}else{c[e+12>>2]=f;e=1e4;f=b}while(1){if(c[f>>2]&2097152|0){h=9;break}if(!e)break;f=c[f+20>>2]|0;if(!f)break;else e=e+-1|0}if((h|0)==9?(g=c[b>>2]|0,(g&32|0)==0):0){c[b>>2]=g|16;e=b+4|0;c[e>>2]=(c[e>>2]|0)+1;e=a+32|0;f=c[e>>2]|0;c[j>>2]=0;if(f|0)c[f+12>>2]=b;c[i>>2]=f;c[e>>2]=b;if(d|0)return;if(c[a+28>>2]|0)return;Tn(a);return}l=a+28|0;e=c[l>>2]|0;c[j>>2]=0;c[l>>2]=b;if(e|0){c[e+12>>2]=b;return}i=a+128|0;j=a+12|0;k=a+16|0;g=b;do{Pn(c[i>>2]|0,g);h=g;g=c[g+12>>2]|0;Bg[c[j>>2]&255](c[k>>2]|0,c[h+16>>2]|0);e=c[h>>2]|0;do if(!(e&6144)){if((e&-134217728|0)!=-1879048192){if(!(e&1024))break;Bg[c[j>>2]&255](c[k>>2]|0,c[h+72>>2]|0);break}Bg[c[j>>2]&255](c[k>>2]|0,c[h+52>>2]|0);e=c[h+72>>2]|0;if(e|0)do{f=c[e+32>>2]|0;if(f|0)do{b=f;f=c[f>>2]|0;Bg[c[j>>2]&255](c[k>>2]|0,b)}while((f|0)!=0);b=e;e=c[e+20>>2]|0;Bg[c[j>>2]&255](c[k>>2]|0,b)}while((e|0)!=0)}while(0);Bg[c[j>>2]&255](c[k>>2]|0,h)}while((g|0)!=0);c[l>>2]=0;if(d|0)return;if(!(c[a+32>>2]|0))return;Tn(a);return}function _n(b,d,e,f,g){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0;h=l;l=l+272|0;i=h;h=h+16|0;c[i>>2]=g;ON(h,256,f,i)|0;a[h+255>>0]=0;hq(b,e>>>24,h,d,e&16777215)}function $n(a){a=a|0;var b=0;b=c[a+44>>2]|0;if(c[b+76>>2]|0?(c[b+140>>2]|0)<((c[b+144>>2]|0)+12|0):0)return;Jn(a,268650,50331707,270042)}function ao(a,b){a=a|0;b=b|0;var d=0;d=l;l=l+16|0;c[d>>2]=b;gq(a,0-b|0,0,0,270027,d)}function bo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;if(c[a+56>>2]|0)return;f=c[b>>2]|0;switch(f&3){case 0:{d=a+196|0;if((c[d>>2]|0)==(b|0))c[d>>2]=0;d=a+208|0;if((c[d>>2]|0)==(b|0))c[d>>2]=0;d=a+220|0;if((c[d>>2]|0)==(b|0))c[d>>2]=0;d=a+232|0;if((c[d>>2]|0)==(b|0))c[d>>2]=0;f=a+188|0;c[f>>2]=(c[f>>2]|0)+-1;f=(c[a+176>>2]|0)+((c[a+180>>2]&c[b+12>>2])<<2)|0;e=0;d=f;while(1){d=c[d>>2]|0;if((d|0)==(b|0))break;else{e=d;d=d+8|0}}c[(e|0?e+8|0:f)>>2]=c[b+8>>2];Bg[c[a+12>>2]&255](c[a+16>>2]|0,b);return}case 1:{Zn(a,b,1);return}default:{d=c[b+8>>2]|0;e=c[b+12>>2]|0;if(!e)c[a+24>>2]=d;else c[e+8>>2]=d;if(d|0)c[d+12>>2]=e;if((f&384|0)==128){e=a+12|0;d=a+16|0;Bg[c[e>>2]&255](c[d>>2]|0,c[b+20>>2]|0)}else{e=a+12|0;d=a+16|0}Bg[c[e>>2]&255](c[d>>2]|0,b);return}}}function co(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;r=c[a+72>>2]|0;f=r+32|0;b=c[f>>2]|0;if(b|0){d=a+44|0;g=r+28|0;do{if(c[b+16>>2]&128|0?(e=c[g>>2]|0,n=c[e+20>>2]|0,c[g>>2]=n,n=n+4|0,c[n>>2]=(c[n>>2]|0)+1,n=e+4|0,o=(c[n>>2]|0)+-1|0,c[n>>2]=o,(o|0)==0):0)eo(c[d>>2]|0,e);n=b;b=c[b>>2]|0;c[f>>2]=b;o=(c[d>>2]|0)+40|0;c[n>>2]=c[o>>2];c[o>>2]=n}while((b|0)!=0)}o=r+16|0;n=c[o>>2]|0;if(!((n|0)!=0?!(c[n>>2]&262144|0):0))i=9;if((((i|0)==9?(p=c[r+24>>2]|0,p|0):0)?(c[p>>2]&-134217728|0)==-2147483648:0)?(q=p+44|0,j=c[q>>2]|0,j|0):0){m=j+28|0;a:do if(c[m>>2]|0){n=j+16|0;d=j+24|0;e=p+48|0;f=a+52|0;g=a+68|0;i=a+56|0;b=0;while(1){k=c[n>>2]|0;j=c[k+(c[d>>2]<<4)+(b<<2)>>2]|0;k=(c[f>>2]|0)+(c[e>>2]|0)+(~~+h[k+(b<<4)+8>>3]>>>0<<4)|0;l=c[g>>2]|0;if(l>>>0>=(c[i>>2]|0)>>>0)break;c[g>>2]=l+16;c[l>>2]=c[k>>2];c[l+4>>2]=c[k+4>>2];c[l+8>>2]=c[k+8>>2];c[l+12>>2]=c[k+12>>2];if(c[k>>2]&8|0){l=(c[k+8>>2]|0)+4|0;c[l>>2]=(c[l>>2]|0)+1}fo(a,p,j,3);b=b+1|0;if(b>>>0>=(c[m>>2]|0)>>>0)break a}Un(a,4153)}while(0);d=p+40|0;b=c[d>>2]|0;n=b+4|0;p=(c[n>>2]|0)+-1|0;c[n>>2]=p;if(!p)eo(c[a+44>>2]|0,b);b=c[q>>2]|0;n=b+4|0;p=(c[n>>2]|0)+-1|0;c[n>>2]=p;if(!p)eo(c[a+44>>2]|0,b);c[d>>2]=0;c[q>>2]=0}if(c[r+52>>2]&8|0){q=a+80|0;c[q>>2]=(c[q>>2]|0)+-1}b=c[r+24>>2]|0;if(b|0?(p=b+4|0,q=(c[p>>2]|0)+-1|0,c[p>>2]=q,(q|0)==0):0)eo(c[a+44>>2]|0,b);b=c[r+28>>2]|0;if(b|0?(q=b+4|0,r=(c[q>>2]|0)+-1|0,c[q>>2]=r,(r|0)==0):0)eo(c[a+44>>2]|0,b);b=c[o>>2]|0;if(!b)return;q=b+4|0;r=(c[q>>2]|0)+-1|0;c[q>>2]=r;if(r|0)return;eo(c[a+44>>2]|0,b);return}function eo(a,b){a=a|0;b=b|0;if(c[a+56>>2]|0)return;Zn(a,b,1);return}function fo(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0.0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+32|0;n=r;q=f&15;i=c[e+16>>2]|0;do if(go(b,d,e,i,n,0)|0){k=n+12|0;i=c[k>>2]|0;m=(f&16|0)!=0;if((i|0)>-1){if(m)break;j=d+16|0;f=(c[j>>2]|0)+((c[d+24>>2]|0)*20|0)+i|0;if(!(a[f>>0]&8)){a[f>>0]=q;k=(c[j>>2]|0)+(c[k>>2]<<4)|0;o=39;break}else ko(b,268713,4717)}f=c[n+20>>2]|0;if((f|0)>-1){if(m)break;if((q|0)==7){k=c[d+24>>2]|0;k=(c[d+16>>2]|0)+(k*21|0)+(0-k&7)+(f<<4)|0;o=39;break}else ko(b,268713,4717)}if(!m){if((c[(c[b+304>>2]|0)+328>>2]|0)!=(e|0))ko(b,268713,4717);if(!(c[d>>2]&4194304))ko(b,268713,4717);f=c[b+68>>2]|0;i=f+-16|0;if(!(c[i>>2]|0))g=+h[f+-8>>3];else g=+ho(b,i);f=~~g>>>0;if(+(f>>>0)!=g)Jn(b,268713,50334677,268733);else{c[d+40>>2]=f;break}}}else{if((i|0)!=-1&(c[d>>2]&32768|0)!=0){if(i>>>0<(c[d+32>>2]|0)>>>0)f=d+24|0;else{f=d+24|0;io(b,d,c[f>>2]|0,((i+16|0)>>>3)+i|0,c[d+36>>2]|0,0)}k=c[f>>2]|0;k=(c[d+16>>2]|0)+(k*21|0)+(0-k&7)+(i<<4)|0;o=39;break}n=d+28|0;m=c[n>>2]|0;p=d+24|0;f=c[p>>2]|0;if(m>>>0>=f>>>0){if(!m)f=0;else{i=0;k=0;j=(c[d+16>>2]|0)+(f<<4)|0;while(1){f=((c[j>>2]|0)!=0&1)+i|0;k=k+1|0;if((k|0)==(m|0))break;else{i=f;j=j+4|0}}}j=((f+16|0)>>>3)+f|0;do if(j>>>0>7){if(j>>>0>63){f=2;i=j;do{o=i;i=i>>>6;f=f<<6}while(o>>>0>4095);if(!i)break}else{f=2;i=j}do{i=i>>>1;f=f<<1}while((i|0)!=0)}else f=0;while(0);io(b,d,j,c[d+32>>2]|0,f,0);m=c[n>>2]|0;f=c[p>>2]|0}c[n>>2]=m+1;o=d+16|0;c[(c[o>>2]|0)+(f<<4)+(m<<2)>>2]=e;i=e+4|0;c[i>>2]=(c[i>>2]|0)+1;i=c[d+36>>2]|0;n=c[o>>2]|0;if(i){k=n+(f*21|0)+(0-f&7)+(c[d+32>>2]<<4)|0;j=i+-1|0;f=c[e+12>>2]|0;while(1){f=f&j;i=k+(f<<2)|0;if((c[i>>2]|0)>>>0>4294967293)break;else f=f+1|0}c[i>>2]=m;f=c[p>>2]|0}a[n+(f*20|0)+m>>0]=q;k=(c[o>>2]|0)+(m<<4)|0;c[k>>2]=2;o=39}while(0);do if((o|0)==39){i=c[b+64>>2]|0;f=(c[b+68>>2]|0)-i>>4;if(!f)jo(b,376,-1);f=f+-1|0;j=i+(f<<4)|0;if(c[j>>2]&8|0){q=(c[i+(f<<4)+8>>2]|0)+4|0;c[q>>2]=(c[q>>2]|0)+1}if(!(c[k>>2]&8)){c[k>>2]=c[j>>2];c[k+4>>2]=c[j+4>>2];c[k+8>>2]=c[j+8>>2];c[k+12>>2]=c[j+12>>2];break}f=c[k+8>>2]|0;c[k>>2]=c[j>>2];c[k+4>>2]=c[j+4>>2];c[k+8>>2]=c[j+8>>2];c[k+12>>2]=c[j+12>>2];d=f+4|0;q=(c[d>>2]|0)+-1|0;c[d>>2]=q;if(!q)Yn(c[b+44>>2]|0,f)}while(0);q=b+68|0;f=c[q>>2]|0;d=f+-16|0;c[q>>2]=d;q=c[f+-16>>2]|0;f=c[f+-8>>2]|0;c[d>>2]=2;if(!(q&8)){l=r;return}d=f+4|0;q=(c[d>>2]|0)+-1|0;c[d>>2]=q;if(q|0){l=r;return}Yn(c[b+44>>2]|0,f);l=r;return}function go(b,e,f,g,i,j){b=b|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0.0;F=l;l=l+32|0;x=F+28|0;z=F+24|0;y=F;A=b+44|0;D=i+12|0;E=i+16|0;q=e+36|0;m=c[q>>2]|0;u=e+24|0;k=c[u>>2]|0;C=c[e+16>>2]|0;a:do if(!m){k=C+(k<<4)|0;m=c[e+28>>2]|0;if(!m)B=24;else{o=0;while(1){if((c[k+(o<<2)>>2]|0)==(f|0))break;o=o+1|0;if(o>>>0>=m>>>0){B=24;break a}}c[D>>2]=o;c[E>>2]=-1;B=14}}else{o=C+(k*21|0)+(0-k&7)+(c[e+32>>2]<<4)|0;n=m+-1|0;k=c[f+12>>2]&n;b:while(1){m=c[o+(k<<2)>>2]|0;switch(m|0){case -1:{m=19;break}case -2:{B=10;break}default:if((c[C+(c[u>>2]<<4)+(m<<2)>>2]|0)==(f|0)){c[D>>2]=m;c[E>>2]=k;m=1}else B=10}if((B|0)==10){B=0;m=0;k=k+1&n}switch(m&31){case 19:{B=24;break a}case 0:break;default:break b}}if(!m)B=24;else{o=c[D>>2]|0;B=14}}while(0);do if((B|0)==14){c[i+20>>2]=-1;E=d[C+((c[u>>2]|0)*20|0)+o>>0]|0;c[i>>2]=E;m=i+4|0;c[m>>2]=0;k=i+8|0;c[k>>2]=0;n=C+(o<<4)|0;if(E&8|0){c[m>>2]=c[n>>2];c[k>>2]=c[C+(o<<4)+4>>2];if(!(j&1)){k=0;break}k=b+68|0;m=c[k>>2]|0;if(m>>>0<(c[b+56>>2]|0)>>>0){c[k>>2]=m+16;k=1;break}else Un(b,4162)}if(j&1){k=b+68|0;m=c[k>>2]|0;if(m>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4153);c[k>>2]=m+16;c[m>>2]=c[n>>2];c[m+4>>2]=c[n+4>>2];c[m+8>>2]=c[n+8>>2];c[m+12>>2]=c[n+12>>2];if(!(c[n>>2]&8))k=1;else{k=(c[C+(o<<4)+8>>2]|0)+4|0;c[k>>2]=(c[k>>2]|0)+1;k=1}}else k=0}else if((B|0)==24){p=c[e>>2]|0;k=(g|0)!=-1;if((k&(p&32768|0)!=0?(c[e+32>>2]|0)>>>0>g>>>0:0)?(r=c[u>>2]|0,r=C+(r*21|0)+(0-r&7)|0,s=r+(g<<4)|0,t=c[s>>2]|0,(t|0)!=7):0){k=j&1;if(k|0){m=b+68|0;n=c[m>>2]|0;if(n>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4153);c[m>>2]=n+16;c[n>>2]=c[s>>2];c[n+4>>2]=c[s+4>>2];c[n+8>>2]=c[s+8>>2];c[n+12>>2]=c[s+12>>2];if(t&8|0){j=(c[r+(g<<4)+8>>2]|0)+4|0;c[j>>2]=(c[j>>2]|0)+1}}c[i>>2]=7;c[i+4>>2]=0;c[i+8>>2]=0;c[D>>2]=-1;c[E>>2]=-1;c[i+20>>2]=g;k=(k|0)!=0;break}if(!(p&12591104)){b=0;l=F;return b|0}if(p&4194304|0){if((c[(c[b+304>>2]|0)+328>>2]|0)!=(f|0)){b=0;l=F;return b|0}do if(j&1|0){k=b+68|0;m=c[k>>2]|0;if(m>>>0<(c[b+56>>2]|0)>>>0){G=+((c[e+40>>2]|0)>>>0);c[k>>2]=m+16;c[m>>2]=0;h[m+8>>3]=G;break}else Un(b,4274)}while(0);c[i>>2]=16;c[i>>2]=(c[e+44>>2]|0)==0?17:16;c[i+4>>2]=0;c[i+8>>2]=0;c[D>>2]=-1;c[E>>2]=-1;c[i+20>>2]=-1;b=1;l=F;return b|0}if(!(p&8388608)){if(!(p&8192)){b=0;l=F;return b|0}o=c[e+40>>2]|0;if(k?a[e+58>>0]|0:0){k=d[e+56>>0]|0;if((c[e+52>>2]|0)>>>k>>>0<=g>>>0){b=0;l=F;return b|0}n=g<<k;m=1<<k;do if(j&1){if(o|0?(v=c[e+48>>2]|0,(n+m+v|0)>>>0<=(c[o+16>>2]|0)>>>0):0){if(!(c[o>>2]&128))k=o+24|0;else k=c[o+20>>2]|0;dq(b,a[e+57>>0]|0,k+v+n|0,m);w=c[e>>2]|0;break}k=b+68|0;m=c[k>>2]|0;if(m>>>0<(c[b+56>>2]|0)>>>0){c[k>>2]=m+16;c[m>>2]=0;h[m+8>>3]=0.0;w=p;break}else Un(b,4274)}else w=p;while(0);c[i>>2]=(w&-134217728|0)==-1744830464?17:19;c[i+4>>2]=0;c[i+8>>2]=0;c[D>>2]=-1;c[E>>2]=-1;c[i+20>>2]=-1;b=1;l=F;return b|0}if((c[(c[b+304>>2]|0)+328>>2]|0)!=(f|0)){b=0;l=F;return b|0}if(!(a[e+58>>0]|0)){b=0;l=F;return b|0}do if(j&1|0){k=b+68|0;m=c[k>>2]|0;if(m>>>0<(c[b+56>>2]|0)>>>0){G=+((c[e+52>>2]|0)>>>(d[e+56>>0]|0)>>>0);c[k>>2]=m+16;c[m>>2]=0;h[m+8>>3]=G;break}else Un(b,4274)}while(0);c[i>>2]=16;c[i+4>>2]=0;c[i+8>>2]=0;c[D>>2]=-1;c[E>>2]=-1;c[i+20>>2]=-1;b=1;l=F;return b|0}if(k){r=c[(c[A>>2]|0)+648>>2]|0;k=c[q>>2]|0;m=c[u>>2]|0;c:do if(!k){n=C+(m<<4)|0;m=c[e+28>>2]|0;if(!m){n=0;o=0}else{k=0;while(1){if((c[n+(k<<2)>>2]|0)==(r|0)){B=53;break c}k=k+1|0;if(k>>>0>=m>>>0){n=0;o=0;break}}}}else{q=C+(m*21|0)+(0-m&7)+(c[e+32>>2]<<4)|0;p=k+-1|0;o=C+(m<<4)|0;k=0;n=c[r+12>>2]&p;d:while(1){m=c[q+(n<<2)>>2]|0;switch(m|0){case -1:{m=19;break}case -2:{B=50;break}default:if((c[o+(m<<2)>>2]|0)==(r|0)){k=m;m=1}else B=50}if((B|0)==50){B=0;m=0;n=n+1&p}switch(m&31){case 19:{n=0;o=0;break c}case 0:break;default:break d}}if(!m){n=0;o=0}else B=53}while(0);if((B|0)==53){o=c[C+(k<<4)+8>>2]|0;n=o}if((Po(n)|0)>>>0<=g>>>0){b=0;l=F;return b|0}do if(j&1|0){k=b+68|0;m=c[k>>2]|0;if(m>>>0<(c[b+56>>2]|0)>>>0){c[k>>2]=m+16;c[m>>2]=8;c[m+8>>2]=n;j=o+4|0;c[j>>2]=(c[j>>2]|0)+1;fq(b,g,g+1|0);break}else Un(b,4153)}while(0);c[i>>2]=18;c[i+4>>2]=0;c[i+8>>2]=0;c[D>>2]=-1;c[E>>2]=-1;c[i+20>>2]=-1;b=1;l=F;return b|0}else{if((c[(c[b+304>>2]|0)+328>>2]|0)!=(f|0)){b=0;l=F;return b|0}r=c[(c[A>>2]|0)+648>>2]|0;k=c[q>>2]|0;m=c[u>>2]|0;e:do if(!k){n=C+(m<<4)|0;m=c[e+28>>2]|0;if(!m)k=0;else{k=0;while(1){if((c[n+(k<<2)>>2]|0)==(r|0)){B=71;break e}k=k+1|0;if(k>>>0>=m>>>0){k=0;break}}}}else{q=C+(m*21|0)+(0-m&7)+(c[e+32>>2]<<4)|0;p=k+-1|0;o=C+(m<<4)|0;k=0;n=c[r+12>>2]&p;f:while(1){m=c[q+(n<<2)>>2]|0;switch(m|0){case -1:{m=19;break}case -2:{B=68;break}default:if((c[o+(m<<2)>>2]|0)==(r|0)){k=m;m=1}else B=68}if((B|0)==68){B=0;m=0;n=n+1&p}switch(m&31){case 19:{k=0;break e}case 0:break;default:break f}}if(!m)k=0;else B=71}while(0);if((B|0)==71)k=c[C+(k<<4)+8>>2]|0;do if(j&1|0){k=Po(k)|0;m=b+68|0;n=c[m>>2]|0;if(n>>>0<(c[b+56>>2]|0)>>>0){c[m>>2]=n+16;c[n>>2]=0;h[n+8>>3]=+(k>>>0);break}else Un(b,4274)}while(0);c[i>>2]=16;c[i+4>>2]=0;c[i+8>>2]=0;c[D>>2]=-1;c[E>>2]=-1;c[i+20>>2]=-1;b=1;l=F;return b|0}}while(0);if(!(k&((g|0)!=-1&(c[e>>2]&16777216|0)!=0))){b=1;l=F;return b|0}if(Uo(b,e,f,y,x,z)|0){p=b+68|0;m=c[p>>2]|0;o=b+64|0;i=c[o>>2]|0;k=m-i>>4;k=k|0?i+(k+-1<<4)|0:0;k=(k|0)==0?936:k;if((c[k>>2]|0)!=8)In(b,2101,-1,287721);n=c[k+8>>2]|0;if(!n)In(b,2101,-1,287721);E=m+-16|0;c[p>>2]=E;i=c[m+-16>>2]|0;k=c[m+-8>>2]|0;c[E>>2]=2;if(i&8|0?(E=k+4|0,i=(c[E>>2]|0)+-1|0,c[E>>2]=i,(i|0)==0):0)Yn(c[A>>2]|0,k);lp(b,c[z>>2]|0,0,n,1)|0;k=c[p>>2]|0;m=k+-16|0;c[p>>2]=m;i=c[k+-16>>2]|0;k=c[k+-8>>2]|0;c[m>>2]=2;if((i&8|0)!=0?(E=k+4|0,i=(c[E>>2]|0)+-1|0,c[E>>2]=i,(i|0)==0):0){Yn(c[A>>2]|0,k);m=c[p>>2]|0}n=c[o>>2]|0;m=m-n>>4;k=m+-2|0;if(m>>>0<=1)jo(b,376,-2);E=n+(k<<4)|0;i=n+(m+-1<<4)|0;b=c[E>>2]|0;k=c[n+(k<<4)+8>>2]|0;QQ(E|0,E+16|0,i-E|0)|0;c[i>>2]=2;c[p>>2]=(c[p>>2]|0)+-16;if(b&8|0?(i=k+4|0,b=(c[i>>2]|0)+-1|0,c[i>>2]=b,(b|0)==0):0)Yn(c[A>>2]|0,k)}b=1;l=F;return b|0}function ho(a,b){a=a|0;b=b|0;var d=0,e=0.0,f=0,g=0;d=c[b>>2]|0;switch(d|0){case 3:{e=0.0;return +e}case 4:{e=(c[b+8>>2]|0)==0?0.0:1.0;return +e}case 8:{f=c[b+8>>2]|0;if(c[f>>2]&512|0)Jn(a,268844,100663515,268857);b=a+68|0;d=c[b>>2]|0;if(d>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4153);c[b>>2]=d+16;c[d>>2]=8;c[d+8>>2]=f;g=f+4|0;c[g>>2]=(c[g>>2]|0)+1;oo(a,10,28667);g=c[b>>2]|0;a=g+-16|0;c[b>>2]=a;e=+h[g+-8>>3];c[a>>2]=2;return +e}case 9:case 10:{g=a+68|0;f=c[g>>2]|0;if(f>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4153);c[g>>2]=f+16;c[f>>2]=c[b>>2];c[f+4>>2]=c[b+4>>2];c[f+8>>2]=c[b+8>>2];c[f+12>>2]=c[b+12>>2];if(d&8|0){f=(c[b+8>>2]|0)+4|0;c[f>>2]=(c[f>>2]|0)+1}po(a,-1,2);f=c[a+64>>2]|0;b=(c[g>>2]|0)-f>>4;e=+ho(a,b|0?f+(b+-1<<4)|0:0);b=c[g>>2]|0;f=b+-16|0;c[g>>2]=f;g=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[f>>2]=2;if(!(g&8))return +e;f=b+4|0;g=(c[f>>2]|0)+-1|0;c[f>>2]=g;if(g|0)return +e;Yn(c[a+44>>2]|0,b);return +e}case 5:{e=c[b+8>>2]|0?1.0:0.0;return +e}case 6:case 2:{e=s;return +e}default:{e=+h[b+8>>3];return +e}}return 0.0}function io(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0;if((f+e|0)>>>0>1073741823)Mn(b,268713,605);G=b+44|0;m=c[G>>2]|0;n=m+52|0;E=c[n>>2]|0;c[n>>2]=E|8;n=m+64|0;c[n>>2]=(c[n>>2]|0)+1;n=0-e&7;B=f<<4;C=g<<2;j=(e*21|0)+n+B+C|0;if(j){z=m+44|0;A=c[z>>2]|0;c[z>>2]=A+-1;if((A|0)<1)Ln(m,2);k=m+4|0;l=m+16|0;i=hg[c[k>>2]&63](c[l>>2]|0,j)|0;if(!i){Ln(m,0);i=hg[c[k>>2]&63](c[l>>2]|0,j)|0;if(!i){Ln(m,0);i=hg[c[k>>2]&63](c[l>>2]|0,j)|0;if(!i){Ln(m,1);i=hg[c[k>>2]&63](c[l>>2]|0,j)|0;if(!i){Ln(m,1);i=hg[c[k>>2]&63](c[l>>2]|0,j)|0;if(!i){Ln(m,1);i=hg[c[k>>2]&63](c[l>>2]|0,j)|0;if(!i){Ln(m,1);i=hg[c[k>>2]&63](c[l>>2]|0,j)|0;if(!i){Ln(m,1);i=hg[c[k>>2]&63](c[l>>2]|0,j)|0;if(!i){Ln(m,1);i=hg[c[k>>2]&63](c[l>>2]|0,j)|0;if(!i){Ln(m,1);i=hg[c[k>>2]&63](c[l>>2]|0,j)|0;if(!i){Ln(m,1);i=hg[c[k>>2]&63](c[l>>2]|0,j)|0;if(!i){A=0;z=c[G>>2]|0;y=z+12|0;y=c[y>>2]|0;z=z+16|0;z=c[z>>2]|0;Bg[y&255](z,A);A=c[G>>2]|0;z=A+64|0;y=c[z>>2]|0;y=y+-1|0;c[z>>2]=y;A=A+52|0;c[A>>2]=E;Mn(b,268713,954)}else D=i}else D=i}else D=i}else D=i}else D=i}else D=i}else D=i}else D=i}else D=i}else D=i}else D=i}else D=0;A=D+(e<<4)|0;w=A+(e<<2)|0;x=w+e+n|0;z=x+(f<<4)|0;y=(h|0)!=0;if(y){n=d+32|0;i=c[n>>2]|0;do if(i){h=d+16|0;o=d+24|0;s=b+68|0;p=b+52|0;q=b+56|0;r=b+60|0;l=0;m=0;a:while(1){k=c[o>>2]|0;k=(c[h>>2]|0)+(k*21|0)+(0-k&7)+(m<<4)|0;if((c[k>>2]|0)==7)k=l;else{j=c[p>>2]|0;i=(c[s>>2]|0)-j+528|0;j=j+i|0;do if((c[q>>2]|0)>>>0<j>>>0)if((c[r>>2]|0)>>>0<j>>>0)if(!(lo(b,i,0)|0)){i=D;j=42;break a}else break;else{c[q>>2]=j;break}while(0);i=mo(c[G>>2]|0,m)|0;if(!i){i=D;j=42;break}j=c[s>>2]|0;if(j>>>0>=(c[q>>2]|0)>>>0){j=20;break}c[s>>2]=j+16;c[j>>2]=8;c[j+8>>2]=i;j=i+4|0;c[j>>2]=(c[j>>2]|0)+1;c[A+(l<<2)>>2]=i;i=D+(l<<4)|0;c[i>>2]=c[k>>2];c[i+4>>2]=c[k+4>>2];c[i+8>>2]=c[k+8>>2];c[i+12>>2]=c[k+12>>2];a[w+l>>0]=7;k=l+1|0;i=c[n>>2]|0}m=m+1|0;if(m>>>0>=i>>>0){j=23;break}else l=k}if((j|0)==20)Un(b,4153);else if((j|0)==23){i=c[s>>2]|0;if((k|0)>0)j=k;else{t=i;u=k;v=s;break}while(1){i=i+-16|0;c[i>>2]=2;if((j|0)>1)j=j+-1|0;else{t=i;u=k;v=s;break}}}else if((j|0)==42){s=c[G>>2]|0;r=s+12|0;r=c[r>>2]|0;s=s+16|0;s=c[s>>2]|0;Bg[r&255](s,i);s=c[G>>2]|0;r=s+64|0;q=c[r>>2]|0;q=q+-1|0;c[r>>2]=q;s=s+52|0;c[s>>2]=E;Mn(b,268713,954)}}else{v=b+68|0;t=c[v>>2]|0;u=0}while(0);c[v>>2]=t;i=u}else i=0;h=d+28|0;j=c[h>>2]|0;if(!j)l=i;else{m=d+16|0;n=d+24|0;l=0;do{k=c[(c[m>>2]|0)+(c[n>>2]<<4)+(l<<2)>>2]|0;if(k){c[A+(i<<2)>>2]=k;j=D+(i<<4)|0;b=(c[m>>2]|0)+(l<<4)|0;c[j>>2]=c[b>>2];c[j+4>>2]=c[b+4>>2];c[j+8>>2]=c[b+8>>2];c[j+12>>2]=c[b+12>>2];a[w+i>>0]=a[(c[m>>2]|0)+((c[n>>2]|0)*20|0)+l>>0]|0;i=i+1|0;j=c[h>>2]|0}l=l+1|0}while(l>>>0<j>>>0);l=i}m=d+32|0;i=c[m>>2]|0;j=i>>>0<f>>>0?i<<4:B;if(j){i=c[d+24>>2]|0;PQ(x|0,(c[d+16>>2]|0)+(i*21|0)+(0-i&7)|0,j|0)|0;i=c[m>>2]|0}if(i>>>0<f>>>0)do{c[x+(i<<4)>>2]=7;i=i+1|0}while((i|0)!=(f|0));if(g|0?(RQ(z|0,-1,C|0)|0,F=g+-1|0,l|0):0){k=0;do{i=c[(c[A+(k<<2)>>2]|0)+12>>2]|0;while(1){i=i&F;j=z+(i<<2)|0;if((c[j>>2]|0)==-1)break;else i=i+1|0}c[j>>2]=k;k=k+1|0}while((k|0)!=(l|0))}C=c[G>>2]|0;F=d+16|0;Bg[c[C+12>>2]&255](c[C+16>>2]|0,c[F>>2]|0);c[F>>2]=D;c[d+24>>2]=e;c[h>>2]=l;c[m>>2]=f;c[d+36>>2]=g;if(!y){G=c[G>>2]|0;g=G+64|0;f=c[g>>2]|0;f=f+-1|0;c[g>>2]=f;G=G+52|0;c[G>>2]=E;return}c[d>>2]=c[d>>2]&-32769;G=c[G>>2]|0;g=G+64|0;f=c[g>>2]|0;f=f+-1|0;c[g>>2]=f;G=G+52|0;c[G>>2]=E;return}function jo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=l;l=l+16|0;c[e>>2]=d;_n(a,268620,b|50331648,268769,e)}function ko(a,b,c){a=a|0;b=b|0;c=c|0;Jn(a,b,c|16777216,268754)}function lo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;e=b>>>4;b=e+(b>>>6)|0;if(b>>>0>1e6)if(!d){e=0;return e|0}else Jn(a,268620,50332495,268829);if(Qn(a,b)|0){c[a+56>>2]=(c[a+52>>2]|0)+(e<<4);e=1;return e|0}if(!d){e=0;return e|0}else Mn(a,268620,854);return 0}function mo(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;j=l;l=l+16|0;f=j+10|0;i=f;while(1){i=i+-1|0;a[i>>0]=a[268793+((e>>>0)%10|0)>>0]|0;if(e>>>0<=9)break;else e=(e>>>0)/10|0}h=f-i|0;e=c[b+148>>2]^h;g=(h>>>5)+1|0;if(g>>>0>h>>>0)f=e;else{f=h;do{e=(d[i+(f+-1)>>0]|0)+(e*33|0)|0;f=f-g|0}while(f>>>0>=g>>>0);f=e}e=c[(c[b+176>>2]|0)+((c[b+180>>2]&f)<<2)>>2]|0;a:do if(e|0){while(1){if(((c[e+12>>2]|0)==(f|0)?(c[e+20>>2]|0)==(h|0):0)?(KN(i,e+28|0,h)|0)==0:0)break;e=c[e+8>>2]|0;if(!e)break a}l=j;return e|0}while(0);b=no(b,i,h,f)|0;l=j;return b|0}function no(b,e,f,g){b=b|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0;m=b+64|0;c[m>>2]=(c[m>>2]|0)+1;o=b+188|0;if(!(c[o>>2]&255))Sn(b);i=f+29|0;k=b+44|0;l=c[k>>2]|0;c[k>>2]=l+-1;if((l|0)<1)Ln(b,2);j=b+4|0;k=b+16|0;h=hg[c[j>>2]&63](c[k>>2]|0,i)|0;if((i|0)==0|(h|0)!=0){if(!h)p=25}else{Ln(b,0);h=hg[c[j>>2]&63](c[k>>2]|0,i)|0;if(!h){Ln(b,0);h=hg[c[j>>2]&63](c[k>>2]|0,i)|0;if(!h){Ln(b,1);h=hg[c[j>>2]&63](c[k>>2]|0,i)|0;if(!h){Ln(b,1);h=hg[c[j>>2]&63](c[k>>2]|0,i)|0;if(!h){Ln(b,1);h=hg[c[j>>2]&63](c[k>>2]|0,i)|0;if(!h){Ln(b,1);h=hg[c[j>>2]&63](c[k>>2]|0,i)|0;if(!h){Ln(b,1);h=hg[c[j>>2]&63](c[k>>2]|0,i)|0;if(!h){Ln(b,1);h=hg[c[j>>2]&63](c[k>>2]|0,i)|0;if(!h){Ln(b,1);h=hg[c[j>>2]&63](c[k>>2]|0,i)|0;if(!h){Ln(b,1);h=hg[c[j>>2]&63](c[k>>2]|0,i)|0;if(!h)p=25}}}}}}}}}}if((p|0)==25){c[m>>2]=(c[m>>2]|0)+-1;p=0;return p|0}l=h+28|0;c[h>>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[h+24>>2]=0;PQ(l|0,e|0,f|0)|0;a[l+f>>0]=0;c[h+20>>2]=f;c[h+12>>2]=g;a:do if(!f)p=17;else{i=0;e=l;b:while(1){k=d[e>>0]|0;e=e+1|0;j=k+-48|0;if(j>>>0>=10){p=17;break a}if(i>>>0<=429496728){i=j+(i*10|0)|0;if(!i){j=(f|0)==1?1:2;i=0;p=14}}else{p=(i|0)!=429496729|j>>>0>5;j=p?2:0;i=p?i:k+-54|0;p=14}if((p|0)==14){p=0;switch(j&3){case 2:{p=17;break a}case 0:break;default:{p=15;break b}}}f=f+-1|0;if(!f){p=18;break}}if((p|0)==15)c[h+16>>2]=0;else if((p|0)==18?(c[h+16>>2]=i,(i|0)==-1):0){p=20;break}c[h>>2]=c[h>>2]|384}while(0);if((p|0)==17){c[h+16>>2]=-1;p=20}c:do if((p|0)==20?(n=a[l>>0]|0,n<<24>>24<0):0){if((n&255)<130){c[h>>2]=c[h>>2]|512;break}switch(n<<24>>24){case -1:case -126:break;default:break c}c[h>>2]=c[h>>2]|1536}while(0);c[m>>2]=(c[m>>2]|0)+-1;p=(c[b+176>>2]|0)+((c[b+180>>2]&g)<<2)|0;c[h+8>>2]=c[p>>2];c[p>>2]=h;c[o>>2]=(c[o>>2]|0)+1;p=h;return p|0}function oo(e,f,g){e=e|0;f=f|0;g=g|0;var i=0,k=0,m=0.0,n=0.0,o=0,p=0,q=0,r=0,t=0,u=0,v=0,w=0,x=0,y=0,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,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;aa=l;l=l+2304|0;P=aa+2152|0;X=aa;if(g&1|0)eq(e,-1);$=e+68|0;_=c[$>>2]|0;Y=e+64|0;Z=c[Y>>2]|0;i=_-Z>>4;i=i|0?Z+(i+-1<<4)|0:0;i=(i|0)==0?936:i;if((c[i>>2]|0)!=8)In(e,2101,-1,287721);i=c[i+8>>2]|0;if(!i)In(e,2101,-1,287721);i=i+28|0;switch(a[i>>0]|0){case 43:{if(g&8|0){i=i+1|0;W=0;U=11}break}case 45:{if(g&16|0){i=i+1|0;W=1;U=11}break}default:{W=0;U=11}}a:do if((U|0)==11){if((g&32|0)!=0?(LN(i,269928,8)|0)==0:0)if((g&4|0)==0?(a[i+8>>0]|0)!=0:0)break;else{k=2146435072;i=0}else U=15;do if((U|0)==15){if((a[i>>0]|0)==48){k=a[i+1>>0]|32;if((g&2048|0)!=0&k<<24>>24==120)k=16;else k=(g&8192|0)!=0&k<<24>>24==111?8:(g&16384|0)!=0&k<<24>>24==98?2:0;S=(k|0)==0;T=S?f:k;g=S?g:g&-1987|1024;i=S?i:i+2|0}else T=f;c[X>>2]=0;F=(g&2|0)!=0;G=(g&68|0)==4;S=T+-2|0;M=269937+S|0;Q=X+760|0;H=(T|0)==0;I=P+4|0;J=X+764|0;K=P+4|0;o=0;k=-1;f=-1;r=0;t=0;q=0;u=0;L=0;p=i;i=0;b:while(1){E=u;c:while(1){D=t;d:while(1){B=o;A=r;C=q;o=p;while(1){e:do if(G){t=o+1|0;p=a[o>>0]|0;q=p&255;if((p+-48&255)<10){o=t;U=43}else{if(!F)switch(p<<24>>24){case 46:{U=25;break b}case 0:{R=k;N=f;break b}default:{r=q;o=t;U=49;break e}}while(1){switch(p<<24>>24){case 46:{U=25;break b}case 0:{R=k;N=f;break b}default:{}}if(!((k|0)<0&(p|32)<<24>>24==101)){r=q;o=t;U=49;break e}k=a[t>>0]|0;switch(k<<24>>24){case 45:{p=o;break d}case 43:{p=o+2|0;o=p;p=a[p>>0]|0;break}default:{o=t;p=k}}t=o+1|0;q=p&255;if((p+-48&255)<10){k=0;o=t;U=43;break e}else k=0}}}else{if(!F){f:while(1){p=o;o=o+1|0;p=a[p>>0]|0;if((p+-48&255)<10){U=42;break}switch(p<<24>>24){case 0:{R=k;N=f;break b}case 46:break;default:{U=48;break f}}if((k&f|0)>-1){U=46;break b}else f=0}if((U|0)==42){q=p&255;U=43;break}else if((U|0)==48){r=p&255;U=49;break}}else p=o;while(1){o=p+1|0;q=a[p>>0]|0;r=q&255;if((q+-48&255)<10){q=r;U=43;break e}g:while(1){switch(q<<24>>24){case 0:{R=k;N=f;break b}case 46:break g;default:{}}if(!((k|0)<0&(q|32)<<24>>24==101)){p=q;U=49;break e}k=a[o>>0]|0;switch(k<<24>>24){case 45:break d;case 43:{q=p+2|0;o=q;q=a[q>>0]|0;break}default:q=k}t=o+1|0;r=q&255;if((q+-48&255)<10){k=0;q=r;o=t;U=43;break e}else{k=0;p=o;o=t}}if((k&f|0)>-1){U=46;break b}else{f=0;p=o}}}while(0);do if((U|0)==43){U=0;x=q+-48|0;y=o}else if((U|0)==49){U=0;if((p+-97&255)<26){x=r+-87|0;y=o;break}else{x=(p+-65&255)<26?r+-55|0:255;y=o;break}}while(0);if((x|0)>=(T|0)){U=53;break b}if((k|0)>=0)break c;do if((B|0)<(d[M>>0]|0)){w=(x|0)==0;if(!(i|x)){q=C;o=B;p=(f>>>31)+A|0;break}if(H){c[P>>2]=0;r=0}else{c[P>>2]=1;c[K>>2]=T;r=1}o=i+r|0;h:do if(!o)o=0;else{RQ(J|0,0,o<<2|0)|0;c[Q>>2]=o;if(!((r|0)==0|(i|0)<1)){p=0;do{t=X+4+(p<<2)|0;q=0;u=0;v=0;while(1){da=EQ(c[P+4+(q<<2)>>2]|0,0,c[t>>2]|0,0)|0;ca=z;ba=X+764+(q+p<<2)|0;v=yQ(c[ba>>2]|0,0,u|0,v|0)|0;v=yQ(v|0,z|0,da|0,ca|0)|0;u=z;c[ba>>2]=v;q=q+1|0;if((q|0)==(r|0))break;else v=0}if(!((u|0)==0&0==0))c[X+764+(p+r<<2)>>2]=u;p=p+1|0}while((p|0)!=(i|0))}while(1){i=o+-1|0;if((o|0)<=0)break h;if(!(c[X+764+(i<<2)>>2]|0))o=i;else break}}while(0);c[Q>>2]=o;if(w){c[P>>2]=0;i=0}else{c[P>>2]=1;c[I>>2]=x;i=1}t=(i|0)>(o|0);q=t?Q:P;t=t?P:Q;i=c[t>>2]|0;u=c[q>>2]|0;do if((i|0)>0){r=0;o=0;p=0;while(1){p=yQ(c[t+4+(r<<2)>>2]|0,0,o|0,p|0)|0;o=z;if((r|0)<(u|0)){p=yQ(c[q+4+(r<<2)>>2]|0,0,p|0,o|0)|0;o=z}c[X+4+(r<<2)>>2]=p;r=r+1|0;if((r|0)==(i|0))break;else p=0}if((o|0)==0&0==0)break;c[X+4+(i<<2)>>2]=o;i=i+1|0}else i=0;while(0);c[X>>2]=i;q=C;o=B+1|0;p=A}else{q=C+1|0;o=B;p=A}while(0);if((f|0)<=-1)break;B=o;f=f+1|0;A=p;C=q+-1|0;o=y}r=p;D=D+1|0;p=y}o=B;k=0;r=A;t=D;q=C;E=1;p=p+2|0}p=x+(O(L,T)|0)|0;if((p|0)>1e9){U=128;break}else{o=B;k=k+1|0;r=A;t=D;q=C;u=E;L=p;p=y}}if((U|0)==25)if((k&f|0)>-1)U=46;else{R=k;N=f}else if((U|0)==53)if(!(g&4))break a;else{R=k;N=f}else if((U|0)==128)Jn(e,269972,50333909,269986);if((U|0)==46)if(!(g&4))break a;else{R=k;N=f}if((g&1024|0)==0&((D|0)>1&(A|0)>0))break a;do if(!D){if(!N)break a;if((N|0)>0)if(!(g&128))break a;else break;else if(!(g&512))break a;else break}else if(!(N|g&256))break a;while(0);if(!(R|g&4))break a;f=(E|0)==0?L:0-L|0;k=f+C|0;if((k|0)==0&(i|0)<2){if((i|0)!=1){k=0;i=0;break}h[j>>3]=+((c[X+4>>2]|0)>>>0);k=c[j+4>>2]|0;i=c[j>>2]|0;break}g=d[M>>0]|0;if((B|0)<(g|0)){k=f+B+C|0;i=B;do{Xp(X,T,Q);i=i+1|0}while((i|0)!=(g|0));k=k-g|0;i=c[X>>2]|0}if(i)if((k|0)<=(b[34092+(S<<2)>>1]|0))if((k|0)<(b[34092+(S<<2)+2>>1]|0)){k=0;i=0}else{c[X+1064>>2]=1;c[X+1080>>2]=k;c[X+1084>>2]=T;g=X+1088|0;c[g>>2]=2;c[X+1068>>2]=1;c[X+1076>>2]=0;c[X+1072>>2]=54;Up(X);Vp(X);Wp(X);o=X+1092|0;r=c[o>>2]|0;t=r+-1|0;p=(t|0)>1023;t=(t|0)>-1023;r=r+1022|0;i=p?-255:t?1:r;r=p?2146435072:t?r<<20:0;t=X+2148|0;p=X+1108|0;q=X+1109|0;k=i+52|0;f=c[t>>2]|0;do if(!((i|0)<-52|(f|0)<=(k|0))?(V=X+1108+k|0,(d[V>>0]|0)>>>0>=((((c[g>>2]|0)+1|0)/2|0)&255)>>>0):0){k=V;while(1){a[k>>0]=0;if((k|0)==(p|0)){U=109;break}k=k+-1|0;f=(d[k>>0]|0)+1|0;if((f|0)<(c[g>>2]|0)){U=108;break}}if((U|0)==108){a[k>>0]=f;q=c[t>>2]|0;break}else if((U|0)==109){QQ(q|0,p|0,c[t>>2]|0)|0;a[p>>0]=1;r=c[o>>2]|0;c[o>>2]=r+1;q=(c[t>>2]|0)+1|0;c[t>>2]=q;ca=(r|0)>1023;da=(r|0)>-1023;r=r+1023|0;i=ca?-255:da?1:r;r=ca?2146435072:da?r<<20:0;break}}else q=f;while(0);o=i+51|0;f=0;g=0;i=0;p=0;while(1){k=o-g|0;if((k|0)<0|(k|0)>=(q|0))k=0;else k=d[X+1108+k>>0]|0;da=(k<<(g&31))+f|0;k=(g|0)==31;i=k?da:i;f=k?0:da;g=g+1|0;if((g|0)==52)break;else p=k?0:p}k=f+r|0}else{k=2146435072;i=0}else{k=0;i=0}}while(0);f=(W|0)==0;c[j>>2]=i;c[j+4>>2]=k;m=+h[j>>3];n=-m;k=c[$>>2]|0;if((k|0)==(c[Y>>2]|0))Jn(e,268620,50337407,268636);i=k+-16|0;c[$>>2]=i;da=c[k+-16>>2]|0;k=c[k+-8>>2]|0;c[i>>2]=2;if((da&8|0)!=0?(ca=k+4|0,da=(c[ca>>2]|0)+-1|0,c[ca>>2]=da,(da|0)==0):0){Yn(c[e+44>>2]|0,k);i=c[$>>2]|0}if(i>>>0<(c[e+56>>2]|0)>>>0){n=f?m:n;da=i;ca=da+16|0;c[$>>2]=ca;c[da>>2]=0;da=da+8|0;h[da>>3]=n;l=aa;return}else Un(e,4215)}while(0);if((_|0)==(Z|0))Jn(e,268620,50337407,268636);i=_+-16|0;c[$>>2]=i;da=c[_+-16>>2]|0;k=c[_+-8>>2]|0;c[i>>2]=2;if((da&8|0)!=0?(ca=k+4|0,da=(c[ca>>2]|0)+-1|0,c[ca>>2]=da,(da|0)==0):0){Yn(c[e+44>>2]|0,k);i=c[$>>2]|0}if(i>>>0<(c[e+56>>2]|0)>>>0){n=s;da=i;ca=da+16|0;c[$>>2]=ca;c[da>>2]=0;da=da+8|0;h[da>>3]=n;l=aa;return}else Un(e,4286)}function po(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0;q=a+68|0;n=c[q>>2]|0;o=a+64|0;e=c[o>>2]|0;f=n-e>>4;r=((b|0)<0?f:0)+b|0;if(r>>>0>=f>>>0)jo(a,300,b);p=(r|0)<0;b=(p?f:0)+r|0;b=b>>>0<f>>>0?e+(b<<4)|0:0;b=(b|0)==0?936:b;e=c[b>>2]|0;if(447>>>e&1|0)return;a:do switch(e|0){case 9:{b=(c[c[b+8>>2]>>2]|0)>>>27;if((b|0)==14){b=c[(c[(p?q:o)>>2]|0)+(r<<4)+8>>2]|0;m=a+44|0;j=c[(c[m>>2]|0)+648>>2]|0;e=c[b+36>>2]|0;f=c[b+24>>2]|0;k=c[b+16>>2]|0;b:do if(e){i=k+(f*21|0)+(0-f&7)+(c[b+32>>2]<<4)|0;h=e+-1|0;g=k+(f<<4)|0;b=0;f=c[j+12>>2]&h;c:while(1){e=c[i+(f<<2)>>2]|0;switch(e|0){case -1:{e=19;break}case -2:{l=15;break}default:if((c[g+(e<<2)>>2]|0)==(j|0)){b=e;e=1}else l=15}if((l|0)==15){l=0;e=0;f=f+1&h}switch(e&31){case 19:{b=14;break a}case 0:break;default:break c}}if(!e){b=14;break a}}else{f=k+(f<<4)|0;e=c[b+28>>2]|0;if(!e){b=14;break a}else b=0;while(1){if((c[f+(b<<2)>>2]|0)==(j|0))break b;b=b+1|0;if(b>>>0>=e>>>0){b=14;break a}}}while(0);b=c[k+(b<<4)+8>>2]|0;if(!b)b=14;else{if(n>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4153);c[q>>2]=n+16;c[n>>2]=8;c[n+8>>2]=b;e=b+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[o>>2]|0;f=(c[q>>2]|0)-e>>4;if(!f)jo(a,376,-1);g=e+(f+-1<<4)|0;b=(p?f:0)+r|0;if(b>>>0>=f>>>0)jo(a,376,r);r=e+(b<<4)|0;a=c[r>>2]|0;b=c[e+(b<<4)+8>>2]|0;c[r>>2]=c[g>>2];c[r+4>>2]=c[g+4>>2];c[r+8>>2]=c[g+8>>2];c[r+12>>2]=c[g+12>>2];c[g>>2]=2;c[q>>2]=(c[q>>2]|0)+-16;if(!(a&8))return;r=b+4|0;a=(c[r>>2]|0)+-1|0;c[r>>2]=a;if(a|0)return;Yn(c[m>>2]|0,b);return}}break}case 10:{b=22;break}case 6:{b=3;break}default:b=0}while(0);b=(((d|0)==0?((b|0)==6?1:2):d)|0)==1;if(qo(a,r,b?78:40)|0)return;if(!(qo(a,r,b?40:78)|0))Jn(a,268620,100666041,268885);else return}function qo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;l=a+68|0;e=c[l>>2]|0;j=a+64|0;i=e-(c[j>>2]|0)>>4;k=(b|0)<0;g=(k?i:0)+b|0;if(g>>>0>=i>>>0)jo(a,300,b);d=c[(c[a+304>>2]|0)+(d<<2)>>2]|0;i=a+56|0;if(e>>>0>=(c[i>>2]|0)>>>0)Un(a,4153);c[l>>2]=e+16;c[e>>2]=8;c[e+8>>2]=d;e=d+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[j>>2]|0;f=(c[l>>2]|0)-e>>4;d=((g|0)<0?f:0)+g|0;if(d>>>0>=f>>>0)jo(a,376,g);g=ro(a,e+(d<<4)|0,e+(f+-1<<4)|0)|0;e=c[j>>2]|0;f=(c[l>>2]|0)-e>>4;d=f+-2|0;if(f>>>0<=1)jo(a,376,-2);m=e+(d<<4)|0;f=e+(f+-1<<4)|0;h=c[m>>2]|0;d=c[e+(d<<4)+8>>2]|0;QQ(m|0,m+16|0,f-m|0)|0;c[f>>2]=2;c[l>>2]=(c[l>>2]|0)+-16;if(h&8|0?(h=d+4|0,m=(c[h>>2]|0)+-1|0,c[h>>2]=m,(m|0)==0):0)Yn(c[a+44>>2]|0,d);a:do if(g){f=c[l>>2]|0;g=c[j>>2]|0;h=f-g>>4;e=h|0?g+(h+-1<<4)|0:0;e=(e|0)==0?936:e;d=f;switch(c[e>>2]|0){case 9:{if(!(c[c[e+8>>2]>>2]&512))break a;break}case 6:break;default:break a}if(d>>>0>=(c[i>>2]|0)>>>0)Un(a,1093);e=(k?h:0)+b|0;if(e>>>0>=h>>>0)jo(a,376,b);i=g+(e<<4)|0;c[l>>2]=d+16;m=f;c[m>>2]=c[i>>2];c[m+4>>2]=c[i+4>>2];c[m+8>>2]=c[i+8>>2];c[m+12>>2]=c[i+12>>2];if(c[d>>2]&8|0){m=(c[d+8>>2]|0)+4|0;c[m>>2]=(c[m>>2]|0)+1}d=(c[l>>2]|0)-(c[j>>2]|0)|0;if((d|0)<32)Vn(a,268605,55);so(a,(d>>>4)+-2|0,0)|0;d=c[l>>2]|0;e=c[j>>2]|0;f=d-e>>4;g=e+(f+-1<<4)|0;m=f|0?g:0;if(!(1728>>>(c[((m|0)==0?936:m)>>2]|0)&1)){if(!f)jo(a,376,-1);d=(k?f:0)+b|0;if(d>>>0>=f>>>0)jo(a,376,b);b=e+(d<<4)|0;m=c[b>>2]|0;d=c[e+(d<<4)+8>>2]|0;c[b>>2]=c[g>>2];c[b+4>>2]=c[g+4>>2];c[b+8>>2]=c[g+8>>2];c[b+12>>2]=c[g+12>>2];c[g>>2]=2;c[l>>2]=(c[l>>2]|0)+-16;if(!(m&8)){m=1;return m|0}l=d+4|0;m=(c[l>>2]|0)+-1|0;c[l>>2]=m;if(m|0){m=1;return m|0}Yn(c[a+44>>2]|0,d);m=1;return m|0}}else d=c[l>>2]|0;while(0);b=d+-16|0;c[l>>2]=b;m=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[b>>2]=2;if(!(m&8)){m=0;return m|0}l=d+4|0;m=(c[l>>2]|0)+-1|0;c[l>>2]=m;if(m|0){m=0;return m|0}Yn(c[a+44>>2]|0,d);m=0;return m|0}function ro(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,i=0,j=0,k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0;J=l;l=l+80|0;j=J+32|0;y=J+68|0;C=J+64|0;I=J+16|0;E=J;H=J+40|0;c[I>>2]=c[e>>2];c[I+4>>2]=c[e+4>>2];c[I+8>>2]=c[e+8>>2];c[I+12>>2]=c[e+12>>2];c[E>>2]=c[f>>2];c[E+4>>2]=c[f+4>>2];c[E+8>>2]=c[f+8>>2];c[E+12>>2]=c[f+12>>2];a:do switch(c[I>>2]|0){case 3:case 2:{C=yo(b,E)|0;E=yo(b,I)|0;c[j>>2]=C;c[j+4>>2]=E;_n(b,268713,100665681,269847,j);break}case 4:{g=12;D=198;break}case 8:{p=c[I+8>>2]|0;if(!(c[p>>2]&512)){i=c[E>>2]|0;if(!i){n=+h[E+8>>3];g=~~n>>>0;if(+(g>>>0)==n){e=0;o=g;j=0;D=18}else D=38}else{f=b+68|0;g=c[f>>2]|0;if(g>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4153);c[f>>2]=g+16;c[g>>2]=c[E>>2];c[g+4>>2]=c[E+4>>2];c[g+8>>2]=c[E+8>>2];c[g+12>>2]=c[E+12>>2];if(i&8|0){D=(c[E+8>>2]|0)+4|0;c[D>>2]=(c[D>>2]|0)+1}g=c[f>>2]|0;do if((c[g+-16>>2]|0)!=8){po(b,-1,1);e=b+64|0;D=c[e>>2]|0;g=(c[f>>2]|0)-D>>4;g=g|0?D+(g+-1<<4)|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)==8?(t=c[g+8>>2]|0,t|0):0){g=t;break}Eo(b,-1)|0;D=c[e>>2]|0;g=(c[f>>2]|0)-D>>4;g=g|0?D+(g+-1<<4)|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)==8)g=c[g+8>>2]|0;else g=0}else g=c[g+-8>>2]|0;while(0);e=g;o=c[g+16>>2]|0;j=1;D=18}if((D|0)==18){if((o|0)!=-1)if(o>>>0<(Po(p)|0)>>>0){m=b+68|0;e=c[m>>2]|0;f=e+(0-j<<4)|0;i=b+44|0;if(j){do{I=c[e+-16>>2]|0;g=c[e+-8>>2]|0;e=e+-16|0;c[e>>2]=2;if(I&8|0?(H=g+4|0,I=(c[H>>2]|0)+-1|0,c[H>>2]=I,(I|0)==0):0)bo(c[i>>2]|0,g)}while((e|0)!=(f|0));e=f}c[m>>2]=e;g=c[i>>2]|0;if(!(c[g+32>>2]|0))g=e;else{Tn(g);g=c[m>>2]|0}k=b+56|0;if(g>>>0>=(c[k>>2]|0)>>>0)Un(b,4153);c[m>>2]=g+16;c[g>>2]=8;c[g+8>>2]=p;i=p+4|0;c[i>>2]=(c[i>>2]|0)+1;i=o+1|0;f=c[b+64>>2]|0;g=(c[m>>2]|0)-f|0;e=g>>4;j=e+-1|0;if(!e)jo(b,300,-1);g=((g|0)<16?e:0)+j|0;g=g>>>0<e>>>0?f+(g<<4)|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)!=8)In(b,2101,j,287721);g=c[g+8>>2]|0;if(!g)In(b,2101,j,287721);I=Po(g)|0;I=I>>>0>i>>>0?i:I;e=cq(b,g,I>>>0<o>>>0?I:o)|0;g=Oo(b,g+28+e|0,(cq(b,g,I)|0)-e|0)|0;e=c[m>>2]|0;if(e>>>0>=(c[k>>2]|0)>>>0)Un(b,4153);c[m>>2]=e+16;c[e>>2]=8;c[e+8>>2]=g;I=g+4|0;c[I>>2]=(c[I>>2]|0)+1;op(b,j);b=1;l=J;return b|0}else g=o;else g=-1;if(!j)D=38}if((D|0)==38){f=b+68|0;g=c[f>>2]|0;if(g>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4153);c[f>>2]=g+16;c[g>>2]=c[E>>2];c[g+4>>2]=c[E+4>>2];c[g+8>>2]=c[E+8>>2];c[g+12>>2]=c[E+12>>2];if(i&8|0){E=(c[E+8>>2]|0)+4|0;c[E>>2]=(c[E>>2]|0)+1}g=c[f>>2]|0;do if((c[g+-16>>2]|0)!=8){po(b,-1,1);e=b+64|0;E=c[e>>2]|0;g=(c[f>>2]|0)-E>>4;g=g|0?E+(g+-1<<4)|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)==8?(A=c[g+8>>2]|0,A|0):0){g=A;break}Eo(b,-1)|0;E=c[e>>2]|0;g=(c[f>>2]|0)-E>>4;g=g|0?E+(g+-1<<4)|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)==8)g=c[g+8>>2]|0;else g=0}else g=c[g+-8>>2]|0;while(0);e=g;g=c[g+16>>2]|0}if((e|0)!=(c[(c[b+304>>2]|0)+328>>2]|0)){i=c[b+140>>2]|0;m=g;x=e;break a}f=b+68|0;g=c[f>>2]|0;H=g+-16|0;c[f>>2]=H;I=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[H>>2]=2;if(I&8|0?(H=g+4|0,I=(c[H>>2]|0)+-1|0,c[H>>2]=I,(I|0)==0):0)Yn(c[b+44>>2]|0,g);g=Po(p)|0;e=c[f>>2]|0;if(e>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4274);c[f>>2]=e+16;c[e>>2]=0;h[e+8>>3]=+(g>>>0);b=1;l=J;return b|0}else{g=38;D=198}break}case 9:{m=I+8|0;i=c[m>>2]|0;n=+h[E+8>>3];f=c[i>>2]|0;e=(c[E>>2]|0)==0;if((e&(f&58761216|0)==32768?(p=~~n>>>0,p=+(p>>>0)==n?p:-1,p>>>0<(c[i+32>>2]|0)>>>0):0)?(q=c[i+24>>2]|0,q=(c[i+16>>2]|0)+(q*21|0)+(0-q&7)|0,r=q+(p<<4)|0,s=c[r>>2]|0,!((s|0)==7|(r|0)==0)):0){g=b+68|0;e=c[g>>2]|0;if(e>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4153);c[g>>2]=e+16;c[e>>2]=c[r>>2];c[e+4>>2]=c[r+4>>2];c[e+8>>2]=c[r+8>>2];c[e+12>>2]=c[r+12>>2];if(!(s&8)){b=1;l=J;return b|0}b=(c[q+(p<<4)+8>>2]|0)+4|0;c[b>>2]=(c[b>>2]|0)+1;b=1;l=J;return b|0}if((f&8192|0?!((a[i+58>>0]|0)==0|e^1):0)?(k=~~n>>>0,k=+(k>>>0)==n?k:-1,o=d[i+56>>0]|0,k>>>0<(c[i+52>>2]|0)>>>o>>>0):0){f=k<<o;e=1<<o;g=c[i+40>>2]|0;if(g|0?(v=c[i+48>>2]|0,(f+e+v|0)>>>0<=(c[g+16>>2]|0)>>>0):0){if(!(c[g>>2]&128))g=g+24|0;else g=c[g+20>>2]|0;dq(b,a[i+57>>0]|0,g+v+f|0,e);b=1;l=J;return b|0}g=b+68|0;e=c[g>>2]|0;if(e>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4274);c[g>>2]=e+16;c[e>>2]=0;h[e+8>>3]=0.0;b=1;l=J;return b|0}do if(!(f&33554432))g=f;else{B=(Yo(b,i,73,E,y)|0)==0;j=c[y>>2]|0;if(B){c[I>>2]=9;c[m>>2]=j;i=j;g=c[j>>2]|0;break}k=b+68|0;e=c[k>>2]|0;i=b+56|0;if(e>>>0>=(c[i>>2]|0)>>>0)Un(b,4153);c[k>>2]=e+16;c[e>>2]=9;c[e+8>>2]=j;e=j+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[k>>2]|0;if(e>>>0>=(c[i>>2]|0)>>>0)Un(b,4153);c[k>>2]=e+16;c[e>>2]=c[E>>2];c[e+4>>2]=c[E+4>>2];c[e+8>>2]=c[E+8>>2];c[e+12>>2]=c[E+12>>2];if(c[E>>2]&8|0){G=(c[E+8>>2]|0)+4|0;c[G>>2]=(c[G>>2]|0)+1}e=c[k>>2]|0;if(e>>>0>=(c[i>>2]|0)>>>0)Un(b,4153);c[k>>2]=e+16;c[e>>2]=c[I>>2];c[e+4>>2]=c[I+4>>2];c[e+8>>2]=c[I+8>>2];c[e+12>>2]=c[I+12>>2];if(c[I>>2]&8|0){I=(c[m>>2]|0)+4|0;c[I>>2]=(c[I>>2]|0)+1}f=b+64|0;e=(c[k>>2]|0)-(c[f>>2]|0)|0;if((e|0)<80)Vn(b,268605,55);so(b,(e>>>4)+-5|0,0)|0;e=c[k>>2]|0;if(e>>>0>=(c[i>>2]|0)>>>0)Un(b,4153);c[k>>2]=e+16;c[e>>2]=c[E>>2];c[e+4>>2]=c[E+4>>2];c[e+8>>2]=c[E+8>>2];c[e+12>>2]=c[E+12>>2];if(c[E>>2]&8|0){I=(c[E+8>>2]|0)+4|0;c[I>>2]=(c[I>>2]|0)+1}e=c[k>>2]|0;do if((c[e+-16>>2]|0)!=8){po(b,-1,1);I=c[f>>2]|0;e=(c[k>>2]|0)-I>>4;e=e|0?I+(e+-1<<4)|0:0;e=(e|0)==0?936:e;if((c[e>>2]|0)==8?(g=c[e+8>>2]|0,g|0):0)break;Eo(b,-1)|0;I=c[f>>2]|0;g=(c[k>>2]|0)-I>>4;g=g|0?I+(g+-1<<4)|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)==8)g=c[g+8>>2]|0;else g=0}else g=c[e+-8>>2]|0;while(0);do if(!(go(b,j,g,c[g+16>>2]|0,H,1)|0)){g=c[k>>2]|0;H=g+-16|0;c[k>>2]=H;I=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[H>>2]=2;if(I&8|0?(H=g+4|0,I=(c[H>>2]|0)+-1|0,c[H>>2]=I,(I|0)==0):0)Yn(c[b+44>>2]|0,g)}else{e=c[f>>2]|0;f=(c[k>>2]|0)-e>>4;if(f>>>0<=2)jo(b,376,-3);i=e+(f+-3<<4)|0;g=c[H>>2]|0;if(!(g&13)){e=(mp(0,i,e+(f+-1<<4)|0,1)|0)==0;g=c[H>>2]|0}else e=0;do if((g&12|0)==8){if(c[H+4>>2]|0){g=0;break}g=(c[i>>2]|0)!=2}else g=0;while(0);if(e|g)Jn(b,268713,100665838,269052);e=c[k>>2]|0;g=e+-16|0;c[k>>2]=g;I=c[e+-16>>2]|0;e=c[e+-8>>2]|0;c[g>>2]=2;do if(I&8){H=e+4|0;I=(c[H>>2]|0)+-1|0;c[H>>2]=I;if(I|0)break;Yn(c[b+44>>2]|0,e);g=c[k>>2]|0}while(0);H=g+-16|0;c[k>>2]=H;I=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[H>>2]=2;if(!(I&8))break;H=g+4|0;I=(c[H>>2]|0)+-1|0;c[H>>2]=I;if(I|0)break;Yn(c[b+44>>2]|0,g)}while(0);b=1;l=J;return b|0}while(0);if(!(g&16777216))D=199;else{j=b+68|0;g=c[j>>2]|0;if(g>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4153);c[j>>2]=g+16;c[g>>2]=c[E>>2];c[g+4>>2]=c[E+4>>2];c[g+8>>2]=c[E+8>>2];c[g+12>>2]=c[E+12>>2];if(c[E>>2]&8|0){E=(c[E+8>>2]|0)+4|0;c[E>>2]=(c[E>>2]|0)+1}g=c[j>>2]|0;do if((c[g+-16>>2]|0)!=8){po(b,-1,1);e=b+64|0;E=c[e>>2]|0;g=(c[j>>2]|0)-E>>4;g=g|0?E+(g+-1<<4)|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)==8?(w=c[g+8>>2]|0,w|0):0){e=w;break}Eo(b,-1)|0;E=c[e>>2]|0;g=(c[j>>2]|0)-E>>4;g=g|0?E+(g+-1<<4)|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)==8)e=c[g+8>>2]|0;else e=0}else e=c[g+-8>>2]|0;while(0);g=c[e+16>>2]|0;if(!(Uo(b,i,e,H,y,C)|0)){m=g;x=e;break a}e=c[j>>2]|0;i=b+64|0;I=c[i>>2]|0;g=e-I>>4;g=g|0?I+(g+-1<<4)|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)!=8)In(b,2101,-1,287721);f=c[g+8>>2]|0;if(!f)In(b,2101,-1,287721);H=e+-16|0;c[j>>2]=H;I=c[e+-16>>2]|0;g=c[e+-8>>2]|0;c[H>>2]=2;if(I&8|0?(H=g+4|0,I=(c[H>>2]|0)+-1|0,c[H>>2]=I,(I|0)==0):0)Yn(c[b+44>>2]|0,g);lp(b,c[C>>2]|0,0,f,1)|0;g=c[j>>2]|0;e=g+-16|0;c[j>>2]=e;I=c[g+-16>>2]|0;g=c[g+-8>>2]|0;c[e>>2]=2;if((I&8|0)!=0?(H=g+4|0,I=(c[H>>2]|0)+-1|0,c[H>>2]=I,(I|0)==0):0){Yn(c[b+44>>2]|0,g);e=c[j>>2]|0}f=c[i>>2]|0;e=e-f>>4;g=e+-2|0;if(e>>>0<=1)jo(b,376,-2);G=f+(g<<4)|0;H=f+(e+-1<<4)|0;I=c[G>>2]|0;g=c[f+(g<<4)+8>>2]|0;QQ(G|0,G+16|0,H-G|0)|0;c[H>>2]=2;c[j>>2]=(c[j>>2]|0)+-16;if(!(I&8)){b=1;l=J;return b|0}H=g+4|0;I=(c[H>>2]|0)+-1|0;c[H>>2]=I;if(I|0){b=1;l=J;return b|0}Yn(c[b+44>>2]|0,g);b=1;l=J;return b|0}break}case 10:{o=c[I+8>>2]|0;i=c[E>>2]|0;if(!i){n=+h[E+8>>3];g=~~n>>>0;if(+(g>>>0)==n){k=0;m=g;g=0;D=161}else D=177}else{f=b+68|0;g=c[f>>2]|0;if(g>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4153);c[f>>2]=g+16;c[g>>2]=c[E>>2];c[g+4>>2]=c[E+4>>2];c[g+8>>2]=c[E+8>>2];c[g+12>>2]=c[E+12>>2];if(i&8|0){D=(c[E+8>>2]|0)+4|0;c[D>>2]=(c[D>>2]|0)+1}g=c[f>>2]|0;do if((c[g+-16>>2]|0)!=8){po(b,-1,1);e=b+64|0;D=c[e>>2]|0;g=(c[f>>2]|0)-D>>4;g=g|0?D+(g+-1<<4)|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)==8?(u=c[g+8>>2]|0,u|0):0){g=u;break}Eo(b,-1)|0;D=c[e>>2]|0;g=(c[f>>2]|0)-D>>4;g=g|0?D+(g+-1<<4)|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)==8)g=c[g+8>>2]|0;else g=0}else g=c[g+-8>>2]|0;while(0);k=1;m=c[g+16>>2]|0;D=161}if((D|0)==161){if((m|0)!=-1)if(m>>>0<(c[o+16>>2]|0)>>>0){j=b+68|0;g=c[j>>2]|0;f=g+(0-k<<4)|0;i=b+44|0;if(k){do{I=c[g+-16>>2]|0;e=c[g+-8>>2]|0;g=g+-16|0;c[g>>2]=2;if(I&8|0?(H=e+4|0,I=(c[H>>2]|0)+-1|0,c[H>>2]=I,(I|0)==0):0)bo(c[i>>2]|0,e)}while((g|0)!=(f|0));g=f}c[j>>2]=g;g=c[i>>2]|0;if(c[g+32>>2]|0)Tn(g);if(!(c[o>>2]&128))e=o+24|0;else e=c[o+20>>2]|0;g=c[j>>2]|0;if(g>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4274);n=+(d[e+m>>0]|0);c[j>>2]=g+16;c[g>>2]=0;h[g+8>>3]=n;b=1;l=J;return b|0}else e=m;else e=-1;if(!k)D=177}if((D|0)==177){f=b+68|0;g=c[f>>2]|0;if(g>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4153);c[f>>2]=g+16;c[g>>2]=c[E>>2];c[g+4>>2]=c[E+4>>2];c[g+8>>2]=c[E+8>>2];c[g+12>>2]=c[E+12>>2];if(i&8|0){E=(c[E+8>>2]|0)+4|0;c[E>>2]=(c[E>>2]|0)+1}g=c[f>>2]|0;do if((c[g+-16>>2]|0)!=8){po(b,-1,1);e=b+64|0;E=c[e>>2]|0;g=(c[f>>2]|0)-E>>4;g=g|0?E+(g+-1<<4)|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)==8?(B=c[g+8>>2]|0,B|0):0){g=B;break}Eo(b,-1)|0;E=c[e>>2]|0;g=(c[f>>2]|0)-E>>4;g=g|0?E+(g+-1<<4)|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)==8)g=c[g+8>>2]|0;else g=0}else g=c[g+-8>>2]|0;while(0);e=c[g+16>>2]|0}if((g|0)!=(c[(c[b+304>>2]|0)+328>>2]|0)){i=c[b+268>>2]|0;m=e;x=g;break a}f=b+68|0;e=c[f>>2]|0;g=e+-16|0;c[f>>2]=g;I=c[e+-16>>2]|0;e=c[e+-8>>2]|0;c[g>>2]=2;if((I&8|0)!=0?(H=e+4|0,I=(c[H>>2]|0)+-1|0,c[H>>2]=I,(I|0)==0):0){Yn(c[b+44>>2]|0,e);g=c[f>>2]|0}if(g>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4274);n=+((c[o+16>>2]|0)>>>0);c[f>>2]=g+16;c[g>>2]=0;h[g+8>>3]=n;b=1;l=J;return b|0}case 5:{g=36;D=198;break}case 6:{g=6;D=198;break}default:{g=14;D=198}}while(0);if((D|0)==198){i=c[b+100+(g<<2)>>2]|0;D=199}if((D|0)==199){f=b+68|0;g=c[f>>2]|0;if(g>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4153);c[f>>2]=g+16;c[g>>2]=c[E>>2];c[g+4>>2]=c[E+4>>2];c[g+8>>2]=c[E+8>>2];c[g+12>>2]=c[E+12>>2];if(c[E>>2]&8|0){E=(c[E+8>>2]|0)+4|0;c[E>>2]=(c[E>>2]|0)+1}g=c[f>>2]|0;do if((c[g+-16>>2]|0)!=8){po(b,-1,1);e=b+64|0;E=c[e>>2]|0;g=(c[f>>2]|0)-E>>4;g=g|0?E+(g+-1<<4)|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)==8?(z=c[g+8>>2]|0,z|0):0){g=z;break}Eo(b,-1)|0;E=c[e>>2]|0;g=(c[f>>2]|0)-E>>4;g=g|0?E+(g+-1<<4)|0:0;g=(g|0)==0?936:g;if((c[g>>2]|0)==8)g=c[g+8>>2]|0;else g=0}else g=c[g+-8>>2]|0;while(0);m=c[g+16>>2]|0;x=g}e=1e4;g=i;while(1){if(go(b,g,x,m,H,1)|0){D=212;break}if(!e){D=232;break}g=c[g+20>>2]|0;if(!g){D=234;break}else e=e+-1|0}if((D|0)==212){i=H+4|0;H=c[i>>2]|0;g=H;do if(H|0){j=b+68|0;e=c[j>>2]|0;f=e+-16|0;c[j>>2]=f;H=c[e+-16>>2]|0;e=c[e+-8>>2]|0;c[f>>2]=2;if((H&8|0)!=0?(E=e+4|0,H=(c[E>>2]|0)+-1|0,c[E>>2]=H,(H|0)==0):0){Yn(c[b+44>>2]|0,e);f=c[j>>2]|0;g=c[i>>2]|0}e=b+56|0;if(f>>>0>=(c[e>>2]|0)>>>0)Un(b,4153);c[j>>2]=f+16;c[f>>2]=9;c[f+8>>2]=g;g=g+4|0;c[g>>2]=(c[g>>2]|0)+1;g=c[j>>2]|0;if(g>>>0>=(c[e>>2]|0)>>>0)Un(b,4153);c[j>>2]=g+16;c[g>>2]=c[I>>2];c[g+4>>2]=c[I+4>>2];c[g+8>>2]=c[I+8>>2];c[g+12>>2]=c[I+12>>2];if(c[I>>2]&8|0){H=(c[I+8>>2]|0)+4|0;c[H>>2]=(c[H>>2]|0)+1}i=c[j>>2]|0;if(i>>>0>=(c[e>>2]|0)>>>0)Un(b,1093);g=b+64|0;e=c[g>>2]|0;f=i-e>>4;if(f>>>0<=2)jo(b,376,-3);H=e+(f+-3<<4)|0;c[j>>2]=i+16;c[i>>2]=c[H>>2];c[i+4>>2]=c[H+4>>2];c[i+8>>2]=c[H+8>>2];c[i+12>>2]=c[H+12>>2];if(c[i>>2]&8|0){H=(c[i+8>>2]|0)+4|0;c[H>>2]=(c[H>>2]|0)+1}g=(c[j>>2]|0)-(c[g>>2]|0)|0;if((g|0)<48)Vn(b,268605,55);else{so(b,(g>>>4)+-3|0,0)|0;break}}while(0);if((((((c[I>>2]|0)==9?(x|0)==(c[(c[b+304>>2]|0)+276>>2]|0):0)?c[c[I+8>>2]>>2]&16783360|0:0)?(I=c[b+64>>2]|0,F=(c[b+68>>2]|0)-I>>4,F=F|0?I+(F+-1<<4)|0:0,F=(F|0)==0?936:F,(c[F>>2]|0)==9):0)?(G=c[F+8>>2]|0,G|0):0)?(I=c[G>>2]|0,!((I&7168|0)==0|(I&65536|0)==0)):0)Jn(b,268713,100666099,269877);i=b+68|0;e=c[b+64>>2]|0;f=(c[i>>2]|0)-e>>4;g=f+-2|0;if(f>>>0<=1)jo(b,376,-2);G=e+(g<<4)|0;H=e+(f+-1<<4)|0;I=c[G>>2]|0;g=c[e+(g<<4)+8>>2]|0;QQ(G|0,G+16|0,H-G|0)|0;c[H>>2]=2;c[i>>2]=(c[i>>2]|0)+-16;if(!(I&8)){b=1;l=J;return b|0}H=g+4|0;I=(c[H>>2]|0)+-1|0;c[H>>2]=I;if(I|0){b=1;l=J;return b|0}Yn(c[b+44>>2]|0,g);b=1;l=J;return b|0}else if((D|0)==232)Jn(b,268713,50334381,269067);else if((D|0)==234){g=c[b+64>>2]|0;e=(c[b+68>>2]|0)-g>>4;if(!e)jo(b,376,-1);G=e+-1|0;H=g+(G<<4)|0;I=c[H>>2]|0;g=c[g+(G<<4)+8>>2]|0;c[H>>2]=2;if(!(I&8)){b=0;l=J;return b|0}H=g+4|0;I=(c[H>>2]|0)+-1|0;c[H>>2]=I;if(I|0){b=0;l=J;return b|0}Yn(c[b+44>>2]|0,g);b=0;l=J;return b|0}return 0}function so(d,f,g){d=d|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0.0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0,O=0,P=0,Q=0,R=0,S=0,T=0,U=0,V=0,W=0,X=0,Y=0,Z=0,_=0,$=0,aa=0,ba=0,ca=0,da=0,ea=0,fa=0,ga=0,ha=0,ia=0,ja=0,ka=0,la=0,ma=0,na=0,oa=0,pa=0,qa=0,ra=0,sa=0,ta=0,ua=0,va=0,wa=0,xa=0,ya=0,za=0,Aa=0,Ba=0,Ca=0,Da=0,Ea=0,Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0,La=0,Ma=0,Na=0,Oa=0,Pa=0,Qa=0;Pa=l;l=l+48|0;M=Pa+32|0;U=Pa+24|0;j=Pa+16|0;L=Pa;Ea=d+64|0;n=c[Ea>>2]|0;Ia=d+52|0;Fa=c[Ia>>2]|0;Da=n-Fa|0;Ja=d+56|0;Fa=(c[Ja>>2]|0)-Fa|0;Ka=d+44|0;k=c[Ka>>2]|0;La=c[k+140>>2]|0;k=k+132|0;Ma=c[k>>2]|0;Na=d+49|0;Oa=a[Na>>0]|0;Ga=d+40|0;Ha=c[Ga>>2]|0;if(Ha|0){c[(c[d+72>>2]|0)+36>>2]=c[Ha>>2];c[Ga>>2]=0}i=Oa&255;if((Ma|0)==(d|0)){if(Oa<<24>>24!=2){c[j>>2]=i;_n(d,268650,100665180,268664,j)}}else{if(Oa<<24>>24!=1){c[j>>2]=i;_n(d,268650,100665180,268664,j)}if(!Ma){i=0;j=0}else{i=c[Ma+96>>2]|0;j=c[Ma+92>>2]|0}c[d+92>>2]=j;c[d+96>>2]=i;c[k>>2]=d;a[Na>>0]=2}a:do if(!(g&2)){switch(c[n+(f<<4)>>2]|0){case 6:{G=0;H=g;break a}case 9:break;default:{za=11;break a}}m=c[n+(f<<4)+8>>2]|0;i=c[m>>2]|0;if((i&67110400|0)==512)if(!(i&65536)){i=f+1|0;j=n+(i<<4)|0;switch(c[j>>2]|0){case 9:{G=m;H=g;break a}case 3:case 2:break;default:{to(d,i);G=m;H=g;break a}}k=c[d+100>>2]|0;if(!k){c[j>>2]=2;G=m;H=g;break}else{c[j>>2]=9;c[n+(i<<4)+8>>2]=k;G=k+4|0;c[G>>2]=(c[G>>2]|0)+1;G=m;H=g;break}}else{G=m;H=g}else za=11}else za=11;while(0);b:do if((za|0)==11){N=d+68|0;w=(f|0)<0;x=f+3|0;y=f+2|0;z=(f|0)<-2;A=d+112|0;O=f+1|0;B=(f|0)<-1;C=d+304|0;D=(f|0)<-3;v=-5-f|0;E=d+132|0;F=f+4|0;G=(f|0)<-4;H=d+60|0;i=g;r=1;u=n;c:while(1){t=u+(f<<4)|0;switch(c[t>>2]|0){case 6:{G=0;H=i;break b}case 9:break;default:{za=249;break c}}V=u+(f<<4)+8|0;Y=c[V>>2]|0;q=(i&2|0)==0;W=c[Y>>2]|0;p=Y;if(q){if(!(W&512)){za=235;break}}else if(!(W&256)){za=250;break}if(!(W&100664320)){X=i;break}d:do if(!(W&1024)){if(W&33554432|0){j=c[Y+44>>2]|0;k=c[N>>2]|0;if(k>>>0>=(c[Ja>>2]|0)>>>0){za=65;break c}c[N>>2]=k+16;c[k>>2]=9;c[k+8>>2]=j;j=j+4|0;c[j>>2]=(c[j>>2]|0)+1;j=c[N>>2]|0;g=j-(c[Ea>>2]|0)|0;o=g>>4;K=o+-1|0;if(!o){za=67;break c}k=c[(c[C>>2]|0)+((i>>>1&1|70)<<2)>>2]|0;if(j>>>0>=(c[Ja>>2]|0)>>>0){za=69;break c}c[N>>2]=j+16;c[j>>2]=8;c[j+8>>2]=k;k=k+4|0;c[k>>2]=(c[k>>2]|0)+1;k=c[Ea>>2]|0;m=(c[N>>2]|0)-k>>4;j=((g|0)<16?m:0)+K|0;if(j>>>0>=m>>>0){za=71;break c}g=ro(d,k+(j<<4)|0,k+(m+-1<<4)|0)|0;k=c[Ea>>2]|0;m=(c[N>>2]|0)-k>>4;j=m+-2|0;if(m>>>0<=1){za=73;break c}Qa=k+(j<<4)|0;n=k+(m+-1<<4)|0;o=c[Qa>>2]|0;j=c[k+(j<<4)+8>>2]|0;QQ(Qa|0,Qa+16|0,n-Qa|0)|0;c[n>>2]=2;c[N>>2]=(c[N>>2]|0)+-16;if(o&8|0?(o=j+4|0,Qa=(c[o>>2]|0)+-1|0,c[o>>2]=Qa,(Qa|0)==0):0)Yn(c[Ka>>2]|0,j);if(!g){if((i&66|0)==2){uo(d,f);n=i|64}else n=i;j=c[N>>2]|0;if((j+-32|0)>>>0<(c[Ea>>2]|0)>>>0){za=81;break c}k=j+-16|0;c[N>>2]=k;Qa=c[j+-16>>2]|0;j=c[j+-8>>2]|0;c[k>>2]=2;do if(!(Qa&8))j=k;else{q=j+4|0;Qa=(c[q>>2]|0)+-1|0;c[q>>2]=Qa;if(Qa|0){j=k;break}Yn(c[Ka>>2]|0,j);j=c[N>>2]|0}while(0);k=j+-16|0;c[N>>2]=k;Qa=c[j+-16>>2]|0;j=c[j+-8>>2]|0;c[k>>2]=2;do if(Qa&8){q=j+4|0;Qa=(c[q>>2]|0)+-1|0;c[q>>2]=Qa;if(Qa|0)break;Yn(c[Ka>>2]|0,j);k=c[N>>2]|0}while(0);j=c[Y+40>>2]|0;if(k>>>0>=(c[Ja>>2]|0)>>>0){za=89;break c}c[N>>2]=k+16;c[k>>2]=9;c[k+8>>2]=j;k=j+4|0;c[k>>2]=(c[k>>2]|0)+1;k=c[Ea>>2]|0;m=(c[N>>2]|0)-k>>4;if(!m){za=91;break c}g=k+(m+-1<<4)|0;j=(w?m:0)+f|0;if(j>>>0>=m>>>0){za=93;break c}u=k+(j<<4)|0;Qa=c[u>>2]|0;i=c[k+(j<<4)+8>>2]|0;c[u>>2]=c[g>>2];c[u+4>>2]=c[g+4>>2];c[u+8>>2]=c[g+8>>2];c[u+12>>2]=c[g+12>>2];c[g>>2]=2;c[N>>2]=(c[N>>2]|0)+-16;if(!(Qa&8)){i=n;break}u=i+4|0;Qa=(c[u>>2]|0)+-1|0;c[u>>2]=Qa;if(Qa|0){i=n;break}Yn(c[Ka>>2]|0,i);i=n;break}k=c[N>>2]|0;n=c[Ea>>2]|0;m=k-n>>4;j=(B?m:0)+O|0;if(j>>>0>=m>>>0){za=98;break c}g=n+(j<<4)|0;j=n+(m+-1<<4)|0;m=j-g|0;if(!m)m=n;else{c[L>>2]=c[j>>2];c[L+4>>2]=c[j+4>>2];c[L+8>>2]=c[j+8>>2];c[L+12>>2]=c[j+12>>2];QQ(g+16|0,g|0,m|0)|0;c[g>>2]=c[L>>2];c[g+4>>2]=c[L+4>>2];c[g+8>>2]=c[L+8>>2];c[g+12>>2]=c[L+12>>2];k=c[N>>2]|0;m=c[Ea>>2]|0}g=k-m>>4;j=(z?g:0)+y|0;if(j>>>0>=g>>>0){za=102;break c}n=m+(j<<4)|0;j=m+(g+-1<<4)|0;m=j-n|0;if(m){c[L>>2]=c[j>>2];c[L+4>>2]=c[j+4>>2];c[L+8>>2]=c[j+8>>2];c[L+12>>2]=c[j+12>>2];QQ(n+16|0,n|0,m|0)|0;c[n>>2]=c[L>>2];c[n+4>>2]=c[L+4>>2];c[n+8>>2]=c[L+8>>2];c[n+12>>2]=c[L+12>>2];k=c[N>>2]|0}j=c[Y+40>>2]|0;if(k>>>0>=(c[Ja>>2]|0)>>>0){za=106;break c}c[N>>2]=k+16;c[k>>2]=9;c[k+8>>2]=j;k=j+4|0;c[k>>2]=(c[k>>2]|0)+1;k=c[N>>2]|0;g=c[Ea>>2]|0;j=g;n=k-j>>4;m=(D?n:0)+x|0;if(m>>>0>=n>>>0){za=108;break c}o=g+(m<<4)|0;m=g+(n+-1<<4)|0;g=m-o|0;if(g){c[L>>2]=c[m>>2];c[L+4>>2]=c[m+4>>2];c[L+8>>2]=c[m+8>>2];c[L+12>>2]=c[m+12>>2];QQ(o+16|0,o|0,g|0)|0;c[o>>2]=c[L>>2];c[o+4>>2]=c[L+4>>2];c[o+8>>2]=c[L+8>>2];c[o+12>>2]=c[L+12>>2];k=c[N>>2]|0;j=c[Ea>>2]|0}Qa=k-j>>4;m=v+Qa|0;if(Qa>>>0<m>>>0){za=112;break c}g=vo(d,48)|0;j=c[Ka>>2]|0;c[g>>2]=272679041;j=j+24|0;k=c[j>>2]|0;if(k|0)c[k+12>>2]=g;c[g+12>>2]=0;c[g+8>>2]=k;c[j>>2]=g;j=c[E>>2]|0;c[g+20>>2]=j;if(j|0){Qa=j+4|0;c[Qa>>2]=(c[Qa>>2]|0)+1}o=c[N>>2]|0;c[o>>2]=9;c[o+8>>2]=g;o=g+4|0;c[o>>2]=(c[o>>2]|0)+1;o=c[N>>2]|0;c[N>>2]=o+16;o=c[o+8>>2]|0;io(d,o,0,m,0,0);c[o+40>>2]=m;Qa=c[o+24>>2]|0;j=(c[N>>2]|0)+(0-m<<4)+-16|0;PQ((c[o+16>>2]|0)+(Qa*21|0)+(0-Qa&7)|0,j|0,m<<4|0)|0;m=(c[N>>2]|0)+-16|0;c[j>>2]=c[m>>2];c[j+4>>2]=c[m+4>>2];c[j+8>>2]=c[m+8>>2];c[j+12>>2]=c[m+12>>2];j=j+16|0;m=c[N>>2]|0;if((j|0)!=(m|0)){k=j;do{c[k>>2]=2;k=k+16|0}while((k|0)!=(m|0))}c[N>>2]=j;if(q)g=i;else{g=i&-35|32;m=c[Ea>>2]|0;k=j-m>>4;j=(G?k:0)+F|0;if(j>>>0>=k>>>0){za=121;break c}o=m+(j<<4)|0;q=m+(k+-1<<4)|0;Qa=c[o>>2]|0;k=c[m+(j<<4)+8>>2]|0;QQ(o|0,o+16|0,q-o|0)|0;c[q>>2]=2;j=(c[N>>2]|0)+-16|0;c[N>>2]=j;do if(Qa&8){q=k+4|0;Qa=(c[q>>2]|0)+-1|0;c[q>>2]=Qa;if(Qa|0)break;Yn(c[Ka>>2]|0,k);j=c[N>>2]|0}while(0);if(j>>>0>=(c[Ja>>2]|0)>>>0){za=126;break c}c[N>>2]=j+16;c[j>>2]=9;c[j+8>>2]=p;j=Y+4|0;c[j>>2]=(c[j>>2]|0)+1;j=c[N>>2]|0}m=c[Ea>>2]|0;k=j-m>>4;j=(w?k:0)+f|0;if(j>>>0>=k>>>0){za=129;break c}t=m+(j<<4)|0;u=m+(k+-1<<4)|0;Qa=c[t>>2]|0;i=c[m+(j<<4)+8>>2]|0;QQ(t|0,t+16|0,u-t|0)|0;c[u>>2]=2;c[N>>2]=(c[N>>2]|0)+-16;if(!(Qa&8)){i=g;break}u=i+4|0;Qa=(c[u>>2]|0)+-1|0;c[u>>2]=Qa;if(Qa|0){i=g;break}Yn(c[Ka>>2]|0,i);i=g;break}j=b[Y+46>>1]|0;if(j<<16>>16==15){za=134;break c}switch(j<<16>>16|0){case 0:{k=(c[N>>2]|0)-u>>4;j=(w?k:0)+f|0;if(j>>>0>=k>>>0){za=138;break c}t=u+(j<<4)|0;k=u+(k+-1<<4)|0;Qa=c[t>>2]|0;j=c[u+(j<<4)+8>>2]|0;QQ(t|0,t+16|0,k-t|0)|0;c[k>>2]=2;k=(c[N>>2]|0)+-16|0;c[N>>2]=k;if((Qa&8|0)!=0?(u=j+4|0,Qa=(c[u>>2]|0)+-1|0,c[u>>2]=Qa,(Qa|0)==0):0){Yn(c[Ka>>2]|0,j);k=c[N>>2]|0}j=(c[Ea>>2]|0)+(f<<4)+32|0;if(k>>>0>=j>>>0)break d;c[N>>2]=j;break d}case 1:{k=(c[N>>2]|0)-u>>4;j=(w?k:0)+f|0;if(j>>>0>=k>>>0){za=145;break c}q=u+(j<<4)|0;k=u+(k+-1<<4)|0;Qa=c[q>>2]|0;m=c[u+(j<<4)+8>>2]|0;QQ(q|0,q+16|0,k-q|0)|0;c[k>>2]=2;k=(c[N>>2]|0)+-16|0;c[N>>2]=k;j=k;if((Qa&8|0)!=0?(q=m+4|0,Qa=(c[q>>2]|0)+-1|0,c[q>>2]=Qa,(Qa|0)==0):0){Yn(c[Ka>>2]|0,m);k=c[N>>2]|0;j=k}break}case 2:{k=t+32|0;m=c[N>>2]|0;g=k;q=Y+4|0;Qa=(c[q>>2]|0)+-1|0;c[q>>2]=Qa;if(!Qa)bo(c[Ka>>2]|0,Y);j=t+16|0;if(c[j>>2]&8|0?(J=c[j+8>>2]|0,q=J+4|0,Qa=(c[q>>2]|0)+-1|0,c[q>>2]=Qa,(Qa|0)==0):0)bo(c[Ka>>2]|0,J);QQ(t|0,k|0,m-g|0)|0;j=c[N>>2]|0;k=j+-32|0;c[k>>2]=2;c[j+-16>>2]=2;c[N>>2]=k;j=k;break}case 3:{k=t+32|0;m=c[N>>2]|0;g=k;q=Y+4|0;Qa=(c[q>>2]|0)+-1|0;c[q>>2]=Qa;if(!Qa)bo(c[Ka>>2]|0,Y);j=t+16|0;if(c[j>>2]&8|0?(I=c[j+8>>2]|0,q=I+4|0,Qa=(c[q>>2]|0)+-1|0,c[q>>2]=Qa,(Qa|0)==0):0)bo(c[Ka>>2]|0,I);q=i|2;QQ(t|0,k|0,m-g|0)|0;k=c[N>>2]|0;g=k+-32|0;c[g>>2]=2;c[k+-16>>2]=2;c[N>>2]=g;k=c[Ea>>2]|0;m=g-k>>4;j=(w?m:0)+f|0;j=j>>>0<m>>>0?k+(j<<4)|0:0;j=(j|0)==0?936:j;switch(c[j>>2]|0){case 9:{if(!(c[c[j+8>>2]>>2]&256))za=158;break}case 6:break;default:za=158}if((za|0)==158){za=0;if(y>>>0>=m>>>0){c[N>>2]=k+(y<<4);i=q;break d}k=g+(y-m<<4)|0;i=g;do{Qa=c[i+-16>>2]|0;j=c[i+-8>>2]|0;i=i+-16|0;c[i>>2]=2;if(Qa&8|0?(u=j+4|0,Qa=(c[u>>2]|0)+-1|0,c[u>>2]=Qa,(Qa|0)==0):0)bo(c[Ka>>2]|0,j)}while((i|0)!=(k|0));c[N>>2]=k;i=c[Ka>>2]|0;if(!(c[i+32>>2]|0)){i=q;break d}Tn(i);i=q;break d}if(g>>>0>=(c[Ja>>2]|0)>>>0){za=168;break c}m=vo(d,40)|0;j=c[Ka>>2]|0;c[m>>2]=134234241;j=j+24|0;k=c[j>>2]|0;if(k|0)c[k+12>>2]=m;c[m+12>>2]=0;c[m+8>>2]=k;c[j>>2]=m;j=c[N>>2]|0;c[j>>2]=9;c[j+8>>2]=m;j=m+4|0;c[j>>2]=(c[j>>2]|0)+1;j=(c[N>>2]|0)+16|0;c[N>>2]=j;k=c[A>>2]|0;c[m+20>>2]=k;n=j;if(k|0){Qa=k+4|0;c[Qa>>2]=(c[Qa>>2]|0)+1}p=c[Ea>>2]|0;o=p;m=n-o>>4;k=(B?m:0)+O|0;if(k>>>0>=m>>>0){za=174;break c}g=p+(k<<4)|0;k=p+(m+-1<<4)|0;m=k-g|0;if(!m){m=n;k=o}else{c[L>>2]=c[k>>2];c[L+4>>2]=c[k+4>>2];c[L+8>>2]=c[k+8>>2];c[L+12>>2]=c[k+12>>2];QQ(g+16|0,g|0,m|0)|0;c[g>>2]=c[L>>2];c[g+4>>2]=c[L+4>>2];c[g+8>>2]=c[L+8>>2];c[g+12>>2]=c[L+12>>2];j=c[N>>2]|0;p=c[Ea>>2]|0;m=j;k=p}k=m-k>>4;if((k|0)<(x|0)){za=178;break c}do if((k|0)>(x|0)){Qa=m-p>>4;m=(w?Qa:0)+f|0;m=m>>>0<Qa>>>0?p+(m<<4)|0:0;k=(D?Qa:0)+x|0;k=k>>>0<Qa>>>0?p+(k<<4)|0:0;if((m|0)==0|(k|0)==0){za=192;break c}g=c[m>>2]|0;n=c[k>>2]|0;e:do if(!(n|g)){if(!(+h[m+8>>3]==+h[k+8>>3])){za=192;break c}}else{if((g|0)!=(n|0)){za=192;break c}switch(g|0){case 3:case 2:break e;case 4:if((c[m+8>>2]|0)==(c[k+8>>2]|0))break e;else{za=192;break c}case 5:if((c[m+8>>2]|0)==(c[k+8>>2]|0))break e;else{za=192;break c}case 9:case 8:if((c[m+8>>2]|0)==(c[k+8>>2]|0))break e;else{za=192;break c}case 10:if((c[m+8>>2]|0)==(c[k+8>>2]|0))break e;else{za=192;break c}case 6:{if((c[m+8>>2]|0)!=(c[k+8>>2]|0)){za=192;break c}if((c[m+4>>2]|0)==(c[k+4>>2]|0))break e;else{za=192;break c}}default:{za=190;break c}}}while(0);k=j-p>>4;if(x>>>0>=k>>>0){c[N>>2]=p+(x<<4);break}m=j+(x-k<<4)|0;do{Qa=c[j+-16>>2]|0;k=c[j+-8>>2]|0;j=j+-16|0;c[j>>2]=2;do if(Qa&8|0){p=k+4|0;Qa=(c[p>>2]|0)+-1|0;c[p>>2]=Qa;if(Qa|0)break;bo(c[Ka>>2]|0,k)}while(0)}while((j|0)!=(m|0));c[N>>2]=m;j=c[Ka>>2]|0;if(!(c[j+32>>2]|0))break;Tn(j)}while(0);wo(d,y);k=c[Ea>>2]|0;m=(c[N>>2]|0)-k>>4;j=(z?m:0)+y|0;if(j>>>0>=m>>>0){za=203;break c}t=k+(j<<4)|0;u=k+(m+-1<<4)|0;Qa=c[t>>2]|0;i=c[k+(j<<4)+8>>2]|0;QQ(t|0,t+16|0,u-t|0)|0;c[u>>2]=2;c[N>>2]=(c[N>>2]|0)+-16;if(!(Qa&8)){i=q;break d}u=i+4|0;Qa=(c[u>>2]|0)+-1|0;c[u>>2]=Qa;if(Qa|0){i=q;break d}Yn(c[Ka>>2]|0,i);i=q;break d}default:{za=207;break c}}g=c[Ea>>2]|0;m=g+(f<<4)+32|0;if(k>>>0<=m>>>0){c[N>>2]=m;break}do if(k>>>0>(m+16|0)>>>0){j=k-g>>4;if(x>>>0>=j>>>0){j=g+(x<<4)|0;c[N>>2]=j;break}j=k+(x-j<<4)|0;do{Qa=c[k+-16>>2]|0;m=c[k+-8>>2]|0;k=k+-16|0;c[k>>2]=2;if(Qa&8|0?(q=m+4|0,Qa=(c[q>>2]|0)+-1|0,c[q>>2]=Qa,(Qa|0)==0):0)bo(c[Ka>>2]|0,m)}while((k|0)!=(j|0));c[N>>2]=j;k=c[Ka>>2]|0;if(c[k+32>>2]|0){Tn(k);j=c[N>>2]|0}}while(0);Qa=c[Ea>>2]|0;q=j-Qa>>4;j=(w?q:0)+f|0;j=j>>>0<q>>>0?Qa+(j<<4)|0:0;j=(j|0)==0?936:j;switch(c[j>>2]|0){case 9:{if(!(c[c[j+8>>2]>>2]&512))break d;break}case 6:break;default:break d}wo(d,y);k=c[Ea>>2]|0;m=(c[N>>2]|0)-k>>4;j=(z?m:0)+y|0;if(j>>>0>=m>>>0){za=223;break c}t=k+(j<<4)|0;u=k+(m+-1<<4)|0;Qa=c[t>>2]|0;j=c[k+(j<<4)+8>>2]|0;QQ(t|0,t+16|0,u-t|0)|0;c[u>>2]=2;c[N>>2]=(c[N>>2]|0)+-16;if((Qa&8|0)!=0?(u=j+4|0,Qa=(c[u>>2]|0)+-1|0,c[u>>2]=Qa,(Qa|0)==0):0)Yn(c[Ka>>2]|0,j)}else{k=c[N>>2]|0;Qa=k-u>>4;j=(w?Qa:0)+f|0;g=k;m=k;if(j>>>0>=Qa>>>0){za=27;break c}switch(c[u+(j<<4)>>2]|0){case 6:break d;case 9:break;default:{za=62;break c}}p=c[u+(j<<4)+8>>2]|0;if(c[p>>2]&1024){o=c[p+72>>2]|0;j=c[p+76>>2]|0;if(q){k=p+56|0;if(g>>>0>=(c[Ja>>2]|0)>>>0){za=32;break c}c[N>>2]=g+16;c[m>>2]=c[k>>2];c[m+4>>2]=c[k+4>>2];c[m+8>>2]=c[k+8>>2];c[m+12>>2]=c[k+12>>2];if(c[k>>2]&8|0){Qa=(c[k+8>>2]|0)+4|0;c[Qa>>2]=(c[Qa>>2]|0)+1}m=c[Ea>>2]|0;g=(c[N>>2]|0)-m>>4;if(!g){za=36;break c}n=m+(g+-1<<4)|0;k=(B?g:0)+O|0;if(k>>>0>=g>>>0){za=38;break c}q=m+(k<<4)|0;Qa=c[q>>2]|0;g=c[m+(k<<4)+8>>2]|0;c[q>>2]=c[n>>2];c[q+4>>2]=c[n+4>>2];c[q+8>>2]=c[n+8>>2];c[q+12>>2]=c[n+12>>2];c[n>>2]=2;m=(c[N>>2]|0)+-16|0;c[N>>2]=m;k=m;if((Qa&8|0)!=0?(q=g+4|0,Qa=(c[q>>2]|0)+-1|0,c[q>>2]=Qa,(Qa|0)==0):0){Yn(c[Ka>>2]|0,g);m=c[N>>2]|0;k=m}}g=c[Ia>>2]|0;k=((j>>>0>1e6?(j>>31&267435456)+1e6|0:j)<<4)+512+(k-g)|0;g=g+k|0;do if((c[Ja>>2]|0)>>>0<g>>>0)if((c[H>>2]|0)>>>0<g>>>0){lo(d,k,1)|0;m=c[N>>2]|0;break}else{c[Ja>>2]=g;break}while(0);k=(c[Ea>>2]|0)+(y<<4)|0;Qa=j<<4;c[N>>2]=m+Qa;QQ(k+(j<<4)|0,k|0,m-k|0)|0;PQ(k|0,o|0,Qa|0)|0;if(j|0)while(1){j=j+-1|0;if(c[k>>2]&8|0){Qa=(c[k+8>>2]|0)+4|0;c[Qa>>2]=(c[Qa>>2]|0)+1}if(!j)break;else k=k+16|0}j=p+40|0;k=c[N>>2]|0;if(k>>>0>=(c[Ja>>2]|0)>>>0){za=51;break c}c[N>>2]=k+16;c[k>>2]=c[j>>2];c[k+4>>2]=c[j+4>>2];c[k+8>>2]=c[j+8>>2];c[k+12>>2]=c[j+12>>2];if(c[j>>2]&8|0){Qa=(c[p+48>>2]|0)+4|0;c[Qa>>2]=(c[Qa>>2]|0)+1}k=c[Ea>>2]|0;m=(c[N>>2]|0)-k>>4;if(!m){za=55;break c}g=k+(m+-1<<4)|0;j=(w?m:0)+f|0;if(j>>>0>=m>>>0){za=57;break c}u=k+(j<<4)|0;Qa=c[u>>2]|0;j=c[k+(j<<4)+8>>2]|0;c[u>>2]=c[g>>2];c[u+4>>2]=c[g+4>>2];c[u+8>>2]=c[g+8>>2];c[u+12>>2]=c[g+12>>2];c[g>>2]=2;c[N>>2]=(c[N>>2]|0)+-16;if((Qa&8|0)!=0?(u=j+4|0,Qa=(c[u>>2]|0)+-1|0,c[u>>2]=Qa,(Qa|0)==0):0)Yn(c[Ka>>2]|0,j)}}while(0);r=0;u=c[Ea>>2]|0}switch(za|0){case 27:{jo(d,376,f);break}case 32:{Un(d,4153);break}case 36:{jo(d,376,-1);break}case 38:{jo(d,376,O);break}case 51:{Un(d,4153);break}case 55:{jo(d,376,-1);break}case 57:{jo(d,376,f);break}case 62:{ko(d,268650,607);break}case 65:{Un(d,4153);break}case 67:{jo(d,300,-1);break}case 69:{Un(d,4153);break}case 71:{jo(d,376,K);break}case 73:{jo(d,376,-2);break}case 81:{Jn(d,268620,50337495,268636);break}case 89:{Un(d,4153);break}case 91:{jo(d,376,-1);break}case 93:{jo(d,376,f);break}case 98:{jo(d,376,O);break}case 102:{jo(d,376,y);break}case 106:{Un(d,4153);break}case 108:{jo(d,376,x);break}case 112:{Jn(d,268620,50337552,268636);break}case 121:{jo(d,376,F);break}case 126:{Un(d,4153);break}case 129:{jo(d,376,f);break}case 134:{if(!r)X=i;else X=(i&4|0)==0?i:i&-21|16;break}case 138:{jo(d,376,f);break}case 145:{jo(d,376,f);break}case 168:{Un(d,4604);break}case 174:{jo(d,376,O);break}case 178:{Vn(d,268650,782);break}case 190:break;case 192:{Jn(d,268650,16778003,268914);break}case 203:{jo(d,376,y);break}case 207:break;case 223:{jo(d,376,y);break}case 235:{o=c[(c[C>>2]|0)+364>>2]|0;i=c[Y+36>>2]|0;p=c[Y+24>>2]|0;q=c[Y+16>>2]|0;f:do if(i){n=q+(p*21|0)+(0-p&7)+(c[Y+32>>2]<<4)|0;k=i+-1|0;m=q+(p<<4)|0;i=0;j=c[o+12>>2]&k;g:while(1){g=c[n+(j<<2)>>2]|0;switch(g|0){case -1:{Q=i;R=19;S=j;break}case -2:{za=242;break}default:if((c[m+(g<<2)>>2]|0)==(o|0)){Q=g;R=1;S=j}else za=242}if((za|0)==242){za=0;Q=i;R=0;S=j+1&k}switch(R&31){case 0:{i=Q;j=S;break}case 19:{za=249;break g}default:break g}}if((za|0)==249){Qa=yo(d,t)|0;c[U>>2]=Qa;_n(d,268650,100664628,268926,U)}if(!R){Qa=yo(d,t)|0;c[U>>2]=Qa;_n(d,268650,100664628,268926,U)}else T=Q}else{i=q+(p<<4)|0;j=c[Y+28>>2]|0;if(!j){Qa=yo(d,t)|0;c[U>>2]=Qa;_n(d,268650,100664628,268926,U)}else P=0;do{if((c[i+(P<<2)>>2]|0)==(o|0)){T=P;break f}P=P+1|0}while(P>>>0<j>>>0);Qa=yo(d,t)|0;c[U>>2]=Qa;_n(d,268650,100664628,268926,U)}while(0);if((q+(T<<4)|0)==0?1:(a[q+(p*20|0)+T>>0]&8)!=0){Qa=yo(d,t)|0;c[U>>2]=Qa;_n(d,268650,100664628,268926,U)}i=c[N>>2]|0;if(i>>>0<(c[Ja>>2]|0)>>>0){c[N>>2]=i+16;c[i>>2]=c[t>>2];c[i+4>>2]=c[t+4>>2];c[i+8>>2]=c[t+8>>2];c[i+12>>2]=c[t+12>>2];Qa=(c[V>>2]|0)+4|0;c[Qa>>2]=(c[Qa>>2]|0)+1;xo(d)}else Un(d,4153);break}case 249:{Qa=yo(d,t)|0;c[U>>2]=Qa;_n(d,268650,100664628,268926,U);break}case 250:{c[M>>2]=yo(d,t)|0;_n(d,268650,100664642,268942,M);break}}h:do if(!(W&65536)){i=u+(O<<4)|0;switch(c[i>>2]|0){case 9:break h;case 3:case 2:break;default:{to(d,O);break h}}j=c[d+100>>2]|0;if(!j){c[i>>2]=2;break}else{c[i>>2]=9;c[u+(O<<4)+8>>2]=j;Qa=j+4|0;c[Qa>>2]=(c[Qa>>2]|0)+1;break}}while(0);if((X&66|0)==2){uo(d,f);G=Y;H=X|64}else{G=Y;H=X}}while(0);if(((((H&1|0)!=0?(da=c[d+72>>2]|0,(G|0)!=0):0)?(Z=c[G>>2]|0,(Z&2048|0)!=0):0)?(_=da+52|0,$=c[_>>2]|0,($&8|0)==0):0)?(aa=H&2,ba=H&32,(Z&131072|0)==0?($>>>2&1|$>>>4&2|0)==(aa>>>1|ba>>>4|0):0):0){co(d);c[da+32>>2]=0;c[da+24>>2]=0;c[da+28>>2]=0;c[da+16>>2]=G;c[da+36>>2]=c[G+48>>2];c[da>>2]=9;c[da+8>>2]=G;i=G+4|0;c[i>>2]=(c[i>>2]|0)+1;c[_>>2]=2;c[_>>2]=ba|((c[G>>2]|0)>>>16&1|(aa<<1|2));c[da+40>>2]=Da;c[da+48>>2]=0;i=c[Ea>>2]|0;j=i+-16|0;k=i+(f<<4)+16|0;if(c[k>>2]&8|0){Qa=(c[k+8>>2]|0)+4|0;c[Qa>>2]=(c[Qa>>2]|0)+1}if(c[j>>2]&8){i=c[i+-8>>2]|0;c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];c[j+8>>2]=c[k+8>>2];c[j+12>>2]=c[k+12>>2];za=i+4|0;Qa=(c[za>>2]|0)+-1|0;c[za>>2]=Qa;if(!Qa)Yn(c[Ka>>2]|0,i)}else{c[j>>2]=c[k>>2];c[j+4>>2]=c[k+4>>2];c[j+8>>2]=c[k+8>>2];c[j+12>>2]=c[k+12>>2]}j=c[Ea>>2]|0;k=j+(f+2<<4)|0;g=d+68|0;m=(c[g>>2]|0)-k|0;if((f|0)>-2){i=j;do{if(c[i>>2]&8|0?(ca=c[i+8>>2]|0,za=ca+4|0,Qa=(c[za>>2]|0)+-1|0,c[za>>2]=Qa,(Qa|0)==0):0)bo(c[Ka>>2]|0,ca);i=i+16|0}while(i>>>0<k>>>0)}QQ(j|0,k|0,m|0)|0;j=c[g>>2]|0;Qa=-2-f|0;k=j+(Qa<<4)|0;if((Qa|0)<0){i=k;do{c[i>>2]=2;i=i+16|0}while(i>>>0<j>>>0)}c[g>>2]=k;xa=e[G+60>>1]|0;na=0;ua=da;va=xa;wa=e[G+62>>1]|0;xa=Da+512+(xa<<4)|0;ta=G;ya=1;za=290}else{m=d+76|0;if((c[m>>2]|0)>>>0>=1e4)zo(d);i=(c[Ka>>2]|0)+36|0;j=c[i>>2]|0;if(!j)j=Ao(d)|0;else c[i>>2]=c[j+20>>2];i=d+72|0;k=c[i>>2]|0;if(k|0)c[k+44>>2]=Da+(f<<4);c[j+20>>2]=k;c[i>>2]=j;c[m>>2]=(c[m>>2]|0)+1;c[j+32>>2]=0;i=j+52|0;k=H&16|(H&32|H<<1&4);c[i>>2]=k;c[j+16>>2]=G;n=(G|0)!=0;do if(n){c[j>>2]=9;c[j+8>>2]=G;m=c[G>>2]|0;if(m&65536|0)c[i>>2]=k|1;if(m&2048|0){i=e[G+60>>1]|0;m=i;g=e[G+62>>1]|0;k=Da+512|0;i=f+2+i<<4;break}Qa=b[G+44>>1]|0;i=Qa<<16>>16;if(Qa<<16>>16>-1){m=i;g=i;k=Da+1536|0;i=f+2+i<<4;break}else{m=i;g=i;k=(c[d+68>>2]|0)+1536|0;i=0-(c[Ia>>2]|0)|0;break}}else{c[i>>2]=k|1;i=c[Ea>>2]|0;Qa=i+(f<<4)|0;c[j>>2]=c[Qa>>2];c[j+4>>2]=c[Qa+4>>2];c[j+8>>2]=c[Qa+8>>2];c[j+12>>2]=c[Qa+12>>2];i=c[i+(f<<4)+4>>2]&15;if((i|0)==15){m=-1;g=-1;k=(c[d+68>>2]|0)+1536|0;i=0-(c[Ia>>2]|0)|0;break}else{m=i;g=i;k=Da+1536|0;i=f+2+i<<4;break}}while(0);i=k+i|0;c[j+24>>2]=0;c[j+28>>2]=0;c[j+36>>2]=0;c[j+40>>2]=(f<<4)+32+Da;c[j+48>>2]=0;if(n){na=G+4|0;c[na>>2]=(c[na>>2]|0)+1;na=f+2|0;ua=j;va=m;wa=g;xa=i;ta=G;ya=0;za=290}else{la=j;ha=m;ga=g;ea=i;ma=1;fa=0}}do if((za|0)==290){i=c[ta>>2]|0;if(!(i&262144)){ha=c[G+52>>2]|0;la=c[G+56>>2]|0;c[ua+28>>2]=ha;c[ua+24>>2]=la;ha=ha+4|0;c[ha>>2]=(c[ha>>2]|0)+1;la=la+4|0;c[la>>2]=(c[la>>2]|0)+1;la=ua;ha=va;ga=wa;ea=xa;ma=0;fa=ya;break}if(!(i&1048576)){la=ua;ha=va;ga=wa;ea=xa;ma=0;fa=ya}else{r=c[ua+40>>2]|0;i=c[G+52>>2]|0;if(!i)i=c[d+104>>2]|0;F=vo(d,52)|0;j=c[Ka>>2]|0;c[F>>2]=-2147483519;j=j+24|0;k=c[j>>2]|0;if(k|0)c[k+12>>2]=F;c[F+12>>2]=0;c[F+8>>2]=k;c[j>>2]=F;B=F;E=d+68|0;j=c[E>>2]|0;if(j>>>0>=(c[Ja>>2]|0)>>>0)Un(d,4153);c[E>>2]=j+16;c[j>>2]=9;c[j+8>>2]=B;D=F+4|0;c[D>>2]=(c[D>>2]|0)+1;c[F+20>>2]=i;if(i|0){Qa=i+4|0;c[Qa>>2]=(c[Qa>>2]|0)+1}i:do if(c[ta>>2]&2048|0){o=c[(c[d+304>>2]|0)+380>>2]|0;i=c[G+36>>2]|0;p=c[G+24>>2]|0;q=c[G+16>>2]|0;j:do if(i){n=q+(p*21|0)+(0-p&7)+(c[G+32>>2]<<4)|0;k=i+-1|0;m=q+(p<<4)|0;i=0;j=c[o+12>>2]&k;k:while(1){g=c[n+(j<<2)>>2]|0;switch(g|0){case -1:{ia=i;ja=19;ka=j;break}case -2:{za=308;break}default:if((c[m+(g<<2)>>2]|0)==(o|0)){ia=g;ja=1;ka=j}else za=308}if((za|0)==308){za=0;ia=i;ja=0;ka=j+1&k}switch(ja&31){case 19:break i;case 0:{i=ia;j=ka;break}default:break k}}if(!ja)break i;else i=ia}else{j=q+(p<<4)|0;k=c[G+28>>2]|0;if(!k)break i;else i=0;while(1){if((c[j+(i<<2)>>2]|0)==(o|0))break j;i=i+1|0;if(i>>>0>=k>>>0)break i}}while(0);Qa=q+(i<<4)|0;if(!((Qa|0)==0?1:(a[q+(p*20|0)+i>>0]&8)!=0)?(c[Qa>>2]|0)==9:0){Qa=c[q+(i<<4)+8>>2]|0;c[F+44>>2]=Qa;Qa=Qa+4|0;c[Qa>>2]=(c[Qa>>2]|0)+1;c[F+40>>2]=d;Qa=d+4|0;c[Qa>>2]=(c[Qa>>2]|0)+1;c[F+48>>2]=r}}while(0);i=c[E>>2]|0;o=(i-(c[Ea>>2]|0)>>4)-na|0;n=o+-1|0;A=G;if(i>>>0>=(c[Ja>>2]|0)>>>0)Un(d,4153);c[E>>2]=i+16;c[i>>2]=9;c[i+8>>2]=A;z=G+4|0;c[z>>2]=(c[z>>2]|0)+1;i=c[E>>2]|0;m=i-(c[Ea>>2]|0)|0;Qa=m>>4;g=Qa+-1|0;if(!Qa)jo(d,300,-1);C=d+304|0;j=c[(c[C>>2]|0)+376>>2]|0;if(i>>>0>=(c[Ja>>2]|0)>>>0)Un(d,4153);c[E>>2]=i+16;c[i>>2]=8;c[i+8>>2]=j;j=j+4|0;c[j>>2]=(c[j>>2]|0)+1;j=c[Ea>>2]|0;k=(c[E>>2]|0)-j>>4;i=((m|0)<16?k:0)+g|0;if(i>>>0>=k>>>0)jo(d,376,g);ro(d,j+(i<<4)|0,j+(k+-1<<4)|0)|0;j=c[Ea>>2]|0;k=(c[E>>2]|0)-j>>4;i=k+-2|0;if(k>>>0<=1)jo(d,376,-2);la=j+(i<<4)|0;ma=j+(k+-1<<4)|0;Qa=c[la>>2]|0;i=c[j+(i<<4)+8>>2]|0;QQ(la|0,la+16|0,ma-la|0)|0;c[ma>>2]=2;j=(c[E>>2]|0)+-16|0;c[E>>2]=j;if((Qa&8|0)!=0?(ma=i+4|0,Qa=(c[ma>>2]|0)+-1|0,c[ma>>2]=Qa,(Qa|0)==0):0){Yn(c[Ka>>2]|0,i);j=c[E>>2]|0}k=c[Ea>>2]|0;i=j-k>>4;i=i|0?k+(i+-1<<4)|0:0;i=(i|0)==0?936:i;do if((c[i>>2]|0)==9){if(!(c[i+8>>2]|0)){w=0;break}w=Bo(d,-1)|0;k=c[Ea>>2]|0;j=c[E>>2]|0}else w=0;while(0);j=j-k>>4;i=j+-2|0;if(j>>>0<=1)jo(d,376,-2);ma=k+(i<<4)|0;j=k+(j+-1<<4)|0;Qa=c[ma>>2]|0;i=c[k+(i<<4)+8>>2]|0;QQ(ma|0,ma+16|0,j-ma|0)|0;c[j>>2]=2;j=(c[E>>2]|0)+-16|0;c[E>>2]=j;do if(Qa&8){ma=i+4|0;Qa=(c[ma>>2]|0)+-1|0;c[ma>>2]=Qa;if(Qa|0)break;Yn(c[Ka>>2]|0,i);j=c[E>>2]|0}while(0);i=j-(c[Ea>>2]|0)|0;if((i|0)<16)jo(d,646,-1);g=i>>>4;u=g+-1|0;if(j>>>0>=(c[Ja>>2]|0)>>>0)Un(d,4604);y=vo(d,40)|0;i=c[Ka>>2]|0;c[y>>2]=536920193;i=i+24|0;j=c[i>>2]|0;if(j|0)c[j+12>>2]=y;c[y+12>>2]=0;c[y+8>>2]=j;c[i>>2]=y;i=c[E>>2]|0;c[i>>2]=9;c[i+8>>2]=y;i=y+4|0;c[i>>2]=(c[i>>2]|0)+1;i=(c[E>>2]|0)+16|0;c[E>>2]=i;j=c[d+112>>2]|0;c[y+20>>2]=j;if(j|0){Qa=j+4|0;c[Qa>>2]=(c[Qa>>2]|0)+1}if(i>>>0>=(c[Ja>>2]|0)>>>0)Un(d,4604);i=vo(d,40)|0;j=c[Ka>>2]|0;c[i>>2]=134234241;j=j+24|0;k=c[j>>2]|0;if(k|0)c[k+12>>2]=i;c[i+12>>2]=0;c[i+8>>2]=k;c[j>>2]=i;Qa=c[E>>2]|0;c[Qa>>2]=9;c[Qa+8>>2]=i;Qa=i+4|0;c[Qa>>2]=(c[Qa>>2]|0)+1;Qa=(c[E>>2]|0)+16|0;c[E>>2]=Qa;if(Qa>>>0>=(c[Ja>>2]|0)>>>0)Un(d,4604);i=vo(d,40)|0;j=c[Ka>>2]|0;c[i>>2]=134234241;j=j+24|0;k=c[j>>2]|0;if(k|0)c[k+12>>2]=i;c[i+12>>2]=0;c[i+8>>2]=k;c[j>>2]=i;j=c[E>>2]|0;c[j>>2]=9;c[j+8>>2]=i;i=i+4|0;c[i>>2]=(c[i>>2]|0)+1;i=c[E>>2]|0;j=i+16|0;c[E>>2]=j;k=c[Ea>>2]|0;m=j-k|0;r=m>>4;x=r+-3|0;t=r+-2|0;r=r+-1|0;if(j>>>0>=(c[Ja>>2]|0)>>>0)Un(d,4244);Qa=i+32|0;c[E>>2]=Qa;c[j>>2]=0;h[i+24>>3]=+(n|0);Qa=Qa-k>>4;v=(m|0)<48;i=(v?Qa:0)+x|0;i=i>>>0<Qa>>>0?k+(i<<4)|0:0;i=(i|0)==0?936:i;if((c[i>>2]|0)!=9)In(d,2130,x,268963);i=c[i+8>>2]|0;if(!i)In(d,2130,x,268963);fo(d,i,c[(c[C>>2]|0)+328>>2]|0,5);i=o+-2|0;l:do if((i|0)>-1){o=(g|0)==0;p=(m|0)<16;q=(m|0)<32;j=0;g=i;m:while(1){n=g+na|0;k=c[E>>2]|0;if(k>>>0>=(c[Ja>>2]|0)>>>0){za=359;break}m=c[Ea>>2]|0;Qa=k-m>>4;i=((n|0)<0?Qa:0)+n|0;if(i>>>0>=Qa>>>0){za=361;break}Qa=m+(i<<4)|0;c[E>>2]=k+16;c[k>>2]=c[Qa>>2];c[k+4>>2]=c[Qa+4>>2];c[k+8>>2]=c[Qa+8>>2];c[k+12>>2]=c[Qa+12>>2];if(c[k>>2]&8|0){Qa=(c[k+8>>2]|0)+4|0;c[Qa>>2]=(c[Qa>>2]|0)+1}Qa=c[Ea>>2]|0;ma=(c[E>>2]|0)-Qa>>4;i=(v?ma:0)+x|0;i=i>>>0<ma>>>0?Qa+(i<<4)|0:0;i=(i|0)==0?936:i;if((c[i>>2]|0)!=9){za=366;break}i=c[i+8>>2]|0;if(!i){za=366;break}Co(d,i,g);do if((g|0)<(w|0)&(c[ta>>2]&65536|0)==0){k=c[E>>2]|0;i=c[Ea>>2]|0;Qa=k-i>>4;qa=(o?Qa:0)+u|0;m=i;if(qa>>>0>=Qa>>>0){za=369;break m}if(k>>>0>=(c[Ja>>2]|0)>>>0){za=371;break m}s=+(g>>>0);Qa=k+16|0;c[E>>2]=Qa;c[k>>2]=0;h[k+8>>3]=s;k=Qa-i>>4;i=((qa|0)<0?k:0)+qa|0;if(i>>>0>=k>>>0){za=373;break m}ro(d,m+(i<<4)|0,m+(k+-1<<4)|0)|0;k=c[Ea>>2]|0;m=(c[E>>2]|0)-k>>4;i=m+-2|0;if(m>>>0<=1){za=375;break m}la=k+(i<<4)|0;ma=k+(m+-1<<4)|0;Qa=c[la>>2]|0;k=c[k+(i<<4)+8>>2]|0;QQ(la|0,la+16|0,ma-la|0)|0;c[ma>>2]=2;i=(c[E>>2]|0)+-16|0;c[E>>2]=i;do if(Qa&8){ma=k+4|0;Qa=(c[ma>>2]|0)+-1|0;c[ma>>2]=Qa;if(Qa|0)break;Yn(c[Ka>>2]|0,k);i=c[E>>2]|0}while(0);if(i>>>0>=(c[Ja>>2]|0)>>>0){za=380;break m}if((i-(c[Ea>>2]|0)|0)<16){za=382;break m}Qa=i+-16|0;c[E>>2]=i+16;c[i>>2]=c[Qa>>2];c[i+4>>2]=c[Qa+4>>2];c[i+8>>2]=c[Qa+8>>2];c[i+12>>2]=c[Qa+12>>2];if(c[i>>2]&8|0){Qa=(c[i+8>>2]|0)+4|0;c[Qa>>2]=(c[Qa>>2]|0)+1}if(!(Do(d,r)|0)){i=c[E>>2]|0;if(i>>>0>=(c[Ja>>2]|0)>>>0){za=387;break m}if((i-(c[Ea>>2]|0)|0)<16){za=389;break m}Qa=i+-16|0;c[E>>2]=i+16;c[i>>2]=c[Qa>>2];c[i+4>>2]=c[Qa+4>>2];c[i+8>>2]=c[Qa+8>>2];c[i+12>>2]=c[Qa+12>>2];if(c[i>>2]&8|0){Qa=(c[i+8>>2]|0)+4|0;c[Qa>>2]=(c[Qa>>2]|0)+1}i=c[E>>2]|0;if(i>>>0>=(c[Ja>>2]|0)>>>0){za=393;break m}c[E>>2]=i+16;c[i>>2]=0;h[i+8>>3]=s;Eo(d,-1)|0;Qa=c[Ea>>2]|0;ma=(c[E>>2]|0)-Qa>>4;i=(p?ma:0)+r|0;i=i>>>0<ma>>>0?Qa+(i<<4)|0:0;i=(i|0)==0?936:i;if((c[i>>2]|0)!=9){za=396;break m}j=c[i+8>>2]|0;if(!j){za=396;break m}po(d,-2,1);Qa=c[Ea>>2]|0;i=(c[E>>2]|0)-Qa>>4;i=i>>>0>1?Qa+(i+-2<<4)|0:0;i=(i|0)==0?936:i;if((c[i>>2]|0)==8?(ra=c[i+8>>2]|0,(ra|0)!=0):0)oa=ra;else za=399;do if((za|0)==399){za=0;Eo(d,-2)|0;Qa=c[Ea>>2]|0;i=(c[E>>2]|0)-Qa>>4;i=i>>>0>1?Qa+(i+-2<<4)|0:0;i=(i|0)==0?936:i;if((c[i>>2]|0)!=8){oa=0;break}oa=c[i+8>>2]|0}while(0);fo(d,j,oa,7);j=c[E>>2]|0;if((j|0)==(c[Ea>>2]|0)){za=402;break m}i=j+-16|0;c[E>>2]=i;Qa=c[j+-16>>2]|0;j=c[j+-8>>2]|0;c[i>>2]=2;do if(Qa&8){ma=j+4|0;Qa=(c[ma>>2]|0)+-1|0;c[ma>>2]=Qa;if(Qa|0)break;Yn(c[Ka>>2]|0,j);i=c[E>>2]|0}while(0);if(i>>>0>=(c[Ja>>2]|0)>>>0){za=407;break m}if((i-(c[Ea>>2]|0)|0)<16){za=409;break m}Qa=i+-16|0;c[E>>2]=i+16;c[i>>2]=c[Qa>>2];c[i+4>>2]=c[Qa+4>>2];c[i+8>>2]=c[Qa+8>>2];c[i+12>>2]=c[Qa+12>>2];if(c[i>>2]&8|0){Qa=(c[i+8>>2]|0)+4|0;c[Qa>>2]=(c[Qa>>2]|0)+1}Qa=c[Ea>>2]|0;ma=(c[E>>2]|0)-Qa>>4;i=(q?ma:0)+t|0;i=i>>>0<ma>>>0?Qa+(i<<4)|0:0;i=(i|0)==0?936:i;if((c[i>>2]|0)!=9){za=414;break m}i=c[i+8>>2]|0;if(!i){za=414;break m}Co(d,i,g);j=1}i=c[E>>2]|0;if((i|0)==(c[Ea>>2]|0)){za=417;break m}pa=i+-16|0;c[E>>2]=pa;Qa=c[i+-16>>2]|0;i=c[i+-8>>2]|0;c[pa>>2]=2;if(!(Qa&8)){pa=j;break}pa=i+4|0;Qa=(c[pa>>2]|0)+-1|0;c[pa>>2]=Qa;if(Qa|0){pa=j;break}Yn(c[Ka>>2]|0,i);pa=j}else pa=j;while(0);if((g|0)>0){j=pa;g=g+-1|0}else{za=422;break}}switch(za|0){case 359:{Un(d,1093);break}case 361:{jo(d,376,n);break}case 366:{In(d,2130,x,268963);break}case 369:{jo(d,300,u);break}case 371:{Un(d,4274);break}case 373:{jo(d,376,qa);break}case 375:{jo(d,376,-2);break}case 380:{Un(d,1111);break}case 382:{jo(d,1114,-1);break}case 387:{Un(d,1111);break}case 389:{jo(d,1114,-1);break}case 393:{Un(d,4274);break}case 396:{In(d,2130,r,268963);break}case 402:{Jn(d,268620,50337407,268636);break}case 407:{Un(d,1111);break}case 409:{jo(d,1114,-1);break}case 414:{In(d,2130,t,268963);break}case 417:{Jn(d,268620,50337407,268636);break}case 422:{if(!pa){sa=0;break l}j=c[E>>2]|0;if(j>>>0>=(c[Ja>>2]|0)>>>0)Un(d,1093);k=c[Ea>>2]|0;Qa=j-k>>4;i=(q?Qa:0)+t|0;if(i>>>0>=Qa>>>0)jo(d,376,t);Qa=k+(i<<4)|0;c[E>>2]=j+16;c[j>>2]=c[Qa>>2];c[j+4>>2]=c[Qa+4>>2];c[j+8>>2]=c[Qa+8>>2];c[j+12>>2]=c[Qa+12>>2];if(c[j>>2]&8|0){Qa=(c[j+8>>2]|0)+4|0;c[Qa>>2]=(c[Qa>>2]|0)+1}Qa=c[Ea>>2]|0;ra=(c[E>>2]|0)-Qa>>4;i=(v?ra:0)+x|0;i=i>>>0<ra>>>0?Qa+(i<<4)|0:0;i=(i|0)==0?936:i;if((c[i>>2]|0)!=9)In(d,2130,x,268963);i=c[i+8>>2]|0;if(!i)In(d,2130,x,268963);fo(d,i,c[(c[C>>2]|0)+392>>2]|0,0);i=c[E>>2]|0;if(i>>>0>=(c[Ja>>2]|0)>>>0)Un(d,4153);c[E>>2]=i+16;c[i>>2]=9;c[i+8>>2]=B;c[D>>2]=(c[D>>2]|0)+1;Qa=c[Ea>>2]|0;ra=(c[E>>2]|0)-Qa>>4;i=(v?ra:0)+x|0;i=i>>>0<ra>>>0?Qa+(i<<4)|0:0;i=(i|0)==0?936:i;if((c[i>>2]|0)!=9)In(d,2130,x,268963);i=c[i+8>>2]|0;if(!i)In(d,2130,x,268963);else{fo(d,i,c[(c[C>>2]|0)+396>>2]|0,0);sa=1;break l}break}}}else sa=0;while(0);do if(!(c[ta>>2]&65536)){i=c[E>>2]|0;if(i>>>0>=(c[Ja>>2]|0)>>>0)Un(d,4153);c[E>>2]=i+16;c[i>>2]=9;c[i+8>>2]=A;c[z>>2]=(c[z>>2]|0)+1;Qa=c[Ea>>2]|0;ra=(c[E>>2]|0)-Qa>>4;i=(v?ra:0)+x|0;i=i>>>0<ra>>>0?Qa+(i<<4)|0:0;i=(i|0)==0?936:i;if((c[i>>2]|0)!=9)In(d,2130,x,268963);i=c[i+8>>2]|0;if(!i)In(d,2130,x,268963);else{fo(d,i,c[(c[C>>2]|0)+272>>2]|0,5);break}}else{i=c[E>>2]|0;Qa=i-(c[Ea>>2]|0)>>4;k=(v?Qa:0)+x|0;if(k>>>0>=Qa>>>0)jo(d,300,x);j=c[(c[C>>2]|0)+276>>2]|0;if(i>>>0>=(c[Ja>>2]|0)>>>0)Un(d,4153);c[E>>2]=i+16;c[i>>2]=8;c[i+8>>2]=j;m=j+4|0;c[m>>2]=(c[m>>2]|0)+1;m=d+232|0;i=c[m>>2]|0;j=c[E>>2]|0;if(j>>>0>=(c[Ja>>2]|0)>>>0)Un(d,4153);c[E>>2]=j+16;c[j>>2]=9;c[j+8>>2]=i;i=i+4|0;c[i>>2]=(c[i>>2]|0)+1;i=c[E>>2]|0;if(i>>>0>=(c[Ja>>2]|0)>>>0)Un(d,1111);if((i-(c[Ea>>2]|0)|0)<16)jo(d,1114,-1);Qa=i+-16|0;c[E>>2]=i+16;c[i>>2]=c[Qa>>2];c[i+4>>2]=c[Qa+4>>2];c[i+8>>2]=c[Qa+8>>2];c[i+12>>2]=c[Qa+12>>2];if(c[i>>2]&8|0){Qa=(c[i+8>>2]|0)+4|0;c[Qa>>2]=(c[Qa>>2]|0)+1}Fo(d,k,896);j=c[E>>2]|0;Qa=j-(c[Ea>>2]|0)>>4;k=(v?Qa:0)+x|0;if(k>>>0>=Qa>>>0)jo(d,300,x);i=c[(c[C>>2]|0)+272>>2]|0;if(j>>>0>=(c[Ja>>2]|0)>>>0)Un(d,4153);c[E>>2]=j+16;c[j>>2]=8;c[j+8>>2]=i;i=i+4|0;c[i>>2]=(c[i>>2]|0)+1;i=c[m>>2]|0;j=c[E>>2]|0;if(j>>>0>=(c[Ja>>2]|0)>>>0)Un(d,4153);c[E>>2]=j+16;c[j>>2]=9;c[j+8>>2]=i;i=i+4|0;c[i>>2]=(c[i>>2]|0)+1;i=c[E>>2]|0;if(i>>>0>=(c[Ja>>2]|0)>>>0)Un(d,1111);if((i-(c[Ea>>2]|0)|0)<16)jo(d,1114,-1);Qa=i+-16|0;c[E>>2]=i+16;c[i>>2]=c[Qa>>2];c[i+4>>2]=c[Qa+4>>2];c[i+8>>2]=c[Qa+8>>2];c[i+12>>2]=c[Qa+12>>2];if(c[i>>2]&8|0){Qa=(c[i+8>>2]|0)+4|0;c[Qa>>2]=(c[Qa>>2]|0)+1}Fo(d,k,896)}while(0);if(sa)c[y>>2]=c[y>>2]|16777216;j=c[E>>2]|0;if((j+-32|0)>>>0<(c[Ea>>2]|0)>>>0)Jn(d,268620,50337495,268636);i=j+-16|0;c[E>>2]=i;Qa=c[j+-16>>2]|0;j=c[j+-8>>2]|0;c[i>>2]=2;do if(Qa&8){sa=j+4|0;Qa=(c[sa>>2]|0)+-1|0;c[sa>>2]=Qa;if(Qa|0)break;Yn(c[Ka>>2]|0,j);i=c[E>>2]|0}while(0);j=i+-16|0;c[E>>2]=j;Qa=c[i+-16>>2]|0;i=c[i+-8>>2]|0;c[j>>2]=2;do if(Qa&8){sa=i+4|0;Qa=(c[sa>>2]|0)+-1|0;c[sa>>2]=Qa;if(Qa|0)break;Yn(c[Ka>>2]|0,i);j=c[E>>2]|0}while(0);k=c[Ea>>2]|0;j=j-k>>4;i=j+-2|0;if(j>>>0<=1)jo(d,376,-2);sa=k+(i<<4)|0;j=k+(j+-1<<4)|0;Qa=c[sa>>2]|0;i=c[k+(i<<4)+8>>2]|0;QQ(sa|0,sa+16|0,j-sa|0)|0;c[j>>2]=2;j=(c[E>>2]|0)+-16|0;c[E>>2]=j;do if(Qa&8){sa=i+4|0;Qa=(c[sa>>2]|0)+-1|0;c[sa>>2]=Qa;if(Qa|0)break;Yn(c[Ka>>2]|0,i);j=c[E>>2]|0}while(0);k=-33537277-((c[ta>>2]|0)>>>16&1)&3;Qa=c[Ea>>2]|0;i=j-Qa>>4;i=i>>>0>1?Qa+(i+-2<<4)|0:0;i=(i|0)==0?936:i;if((c[i>>2]|0)!=9)In(d,2130,-2,268963);i=c[i+8>>2]|0;if(!i)In(d,2130,-2,268963);fo(d,i,c[(c[C>>2]|0)+268>>2]|0,k);c[ua+28>>2]=F;c[ua+24>>2]=F;c[D>>2]=(c[D>>2]|0)+2;i=c[E>>2]|0;if((i|0)==(c[Ea>>2]|0))Jn(d,268620,50337407,268636);ta=i+-16|0;c[E>>2]=ta;Qa=c[i+-16>>2]|0;i=c[i+-8>>2]|0;c[ta>>2]=2;if(!(Qa&8)){la=ua;ha=va;ga=wa;ea=xa;ma=0;fa=ya;break}ta=i+4|0;Qa=(c[ta>>2]|0)+-1|0;c[ta>>2]=Qa;if(Qa|0){la=ua;ha=va;ga=wa;ea=xa;ma=0;fa=ya;break}Yn(c[Ka>>2]|0,i);la=ua;ha=va;ga=wa;ea=xa;ma=0;fa=ya}}while(0);i=c[Ia>>2]|0;j=i+ea|0;Qa=c[Ja>>2]|0;k=Qa;do if(Qa>>>0<j>>>0)if((c[d+60>>2]|0)>>>0<j>>>0){lo(d,ea,1)|0;j=c[Ja>>2]|0;i=c[Ia>>2]|0;break}else{c[Ja>>2]=j;break}else j=k;while(0);c[la+48>>2]=j-i;do if(fa){m=d+68|0;j=c[m>>2]|0;i=c[Ea>>2]|0;k=j-i>>4;if(ga>>>0<k>>>0){i=j+(ga-k<<4)|0;do{Qa=c[j+-16>>2]|0;k=c[j+-8>>2]|0;j=j+-16|0;c[j>>2]=2;if(Qa&8|0?(ya=k+4|0,Qa=(c[ya>>2]|0)+-1|0,c[ya>>2]=Qa,(Qa|0)==0):0)bo(c[Ka>>2]|0,k)}while((j|0)!=(i|0));c[m>>2]=i;j=c[Ka>>2]|0;if(c[j+32>>2]|0){Tn(j);i=c[m>>2]|0}}else{i=i+(ga<<4)|0;c[m>>2]=i}j=c[Ea>>2]|0;k=i-j>>4;if(ha>>>0>=k>>>0){c[m>>2]=j+(ha<<4);break}k=i+(ha-k<<4)|0;do{Qa=c[i+-16>>2]|0;j=c[i+-8>>2]|0;i=i+-16|0;c[i>>2]=2;if(Qa&8|0?(ya=j+4|0,Qa=(c[ya>>2]|0)+-1|0,c[ya>>2]=Qa,(Qa|0)==0):0)bo(c[Ka>>2]|0,j)}while((i|0)!=(k|0));c[m>>2]=k;i=c[Ka>>2]|0;if(c[i+32>>2]|0)Tn(i)}else{do if((ha|0)>-1){i=f+2|0;g=ha+i|0;i=ga+i|0;n=d+68|0;j=c[n>>2]|0;k=c[Ea>>2]|0;m=j-k>>4;if(i>>>0<m>>>0){i=j+(i-m<<4)|0;do{Qa=c[j+-16>>2]|0;k=c[j+-8>>2]|0;j=j+-16|0;c[j>>2]=2;if(Qa&8|0?(ya=k+4|0,Qa=(c[ya>>2]|0)+-1|0,c[ya>>2]=Qa,(Qa|0)==0):0)bo(c[Ka>>2]|0,k)}while((j|0)!=(i|0));c[n>>2]=i;j=c[Ka>>2]|0;if(c[j+32>>2]|0){Tn(j);i=c[n>>2]|0}}else{i=k+(i<<4)|0;c[n>>2]=i}j=c[Ea>>2]|0;k=i-j>>4;if(g>>>0>=k>>>0){c[n>>2]=j+(g<<4);break}k=i+(g-k<<4)|0;do{Qa=c[i+-16>>2]|0;j=c[i+-8>>2]|0;i=i+-16|0;c[i>>2]=2;if(Qa&8|0?(ya=j+4|0,Qa=(c[ya>>2]|0)+-1|0,c[ya>>2]=Qa,(Qa|0)==0):0)bo(c[Ka>>2]|0,j)}while((i|0)!=(k|0));c[n>>2]=k;i=c[Ka>>2]|0;if(c[i+32>>2]|0)Tn(i)}while(0);c[Ea>>2]=(c[Ea>>2]|0)+(f<<4)+32}while(0);do if(!ma?(c[G>>2]&2048|0)!=0:0){c[la+36>>2]=c[G+48>>2];if(!(H&8)){i=la+52|0;c[i>>2]=c[i>>2]|8;i=d+80|0;c[i>>2]=(c[i>>2]|0)+1;i=c[Ka>>2]|0;j=c[i+140>>2]|0;if((j|0)>=(c[i+144>>2]|0)){$n(d);j=c[Ka>>2]|0;i=j;j=c[j+140>>2]|0}c[i+140>>2]=j+1;Go(d);break}i=c[Ka>>2]|0;if(!(c[i+32>>2]|0)){Qa=1;l=Pa;return Qa|0}Tn(i);Qa=1;l=Pa;return Qa|0}else za=545;while(0);n:do if((za|0)==545){i=la+52|0;c[i>>2]=c[i>>2]|8;i=d+80|0;c[i>>2]=(c[i>>2]|0)+1;i=c[Ka>>2]|0;j=c[i+140>>2]|0;if((j|0)>=(c[i+144>>2]|0)){$n(d);j=c[Ka>>2]|0;i=j;j=c[j+140>>2]|0}c[i+140>>2]=j+1;if(ma)i=gg[c[la+8>>2]&511](d)|0;else i=gg[c[G+40>>2]&511](d)|0;switch(i|0){case 1:break n;case 0:{Qa=d+68|0;c[Qa>>2]=(c[Qa>>2]|0)+16;break n}default:{}}if((i|0)<0)ao(d,i);else Jn(d,268650,100665534,268691)}while(0);g=d+68|0;o:do if(H&34|0){j=c[g>>2]|0;i=c[Ea>>2]|0;Qa=j-i>>4;Qa=Qa|0?i+(Qa+-1<<4)|0:0;if(447>>>(c[((Qa|0)==0?936:Qa)>>2]|0)&1|0){if(H&32|0)Ho(d,268650,507);if((j|0)==(i|0))Jn(d,268620,50337407,268636);i=j+-16|0;c[g>>2]=i;Qa=c[j+-16>>2]|0;j=c[j+-8>>2]|0;c[i>>2]=2;if((Qa&8|0)!=0?(za=j+4|0,Qa=(c[za>>2]|0)+-1|0,c[za>>2]=Qa,(Qa|0)==0):0){Yn(c[Ka>>2]|0,j);i=c[g>>2]|0}if(i>>>0>=(c[Ja>>2]|0)>>>0)Un(d,4361);c[g>>2]=i+16;if(c[d+72>>2]|0?(Aa=c[Ea>>2]|0,Qa=Aa+-16|0,c[i>>2]=c[Qa>>2],c[i+4>>2]=c[Qa+4>>2],c[i+8>>2]=c[Qa+8>>2],c[i+12>>2]=c[Qa+12>>2],c[Qa>>2]&8|0):0){Qa=(c[Aa+-8>>2]|0)+4|0;c[Qa>>2]=(c[Qa>>2]|0)+1}}Qa=c[Ea>>2]|0;i=(c[g>>2]|0)-Qa>>4;i=i|0?Qa+(i+-1<<4)|0:0;i=(i|0)==0?936:i;if(((c[i>>2]|0)==9?(Ba=c[i+8>>2]|0,Ba|0):0)?(Ca=c[d+180>>2]|0,Ca|0):0){i=1e4;j=Ba;while(1){if((j|0)==(Ca|0))break;if(!i)break o;j=c[j+20>>2]|0;if(!j)break o;else i=i+-1|0}if(c[Ba>>2]&128|0)Io(d,d,0,0,Ba,3);Jo(d,104)}}while(0);co(d);i=d+72|0;k=c[i>>2]|0;j=k+20|0;c[i>>2]=c[j>>2];i=d+76|0;c[i>>2]=(c[i>>2]|0)+-1;i=(c[Ka>>2]|0)+36|0;c[j>>2]=c[i>>2];c[i>>2]=k;i=(c[Ia>>2]|0)+Da|0;c[Ea>>2]=i;k=i+(f<<4)|0;j=c[g>>2]|0;m=j+-16|0;if(c[m>>2]&8|0){Qa=(c[j+-8>>2]|0)+4|0;c[Qa>>2]=(c[Qa>>2]|0)+1}if(c[k>>2]&8){i=c[i+(f<<4)+8>>2]|0;c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2];Da=i+4|0;Qa=(c[Da>>2]|0)+-1|0;c[Da>>2]=Qa;if(!Qa)Yn(c[Ka>>2]|0,i)}else{c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2]}m=f+1|0;i=c[g>>2]|0;j=c[Ea>>2]|0;k=i-j>>4;if(m>>>0<k>>>0){k=i+(m-k<<4)|0;do{Qa=c[i+-16>>2]|0;j=c[i+-8>>2]|0;i=i+-16|0;c[i>>2]=2;if(Qa&8|0?(Ea=j+4|0,Qa=(c[Ea>>2]|0)+-1|0,c[Ea>>2]=Qa,(Qa|0)==0):0)bo(c[Ka>>2]|0,j)}while((i|0)!=(k|0));c[g>>2]=k;i=c[Ka>>2]|0;if(c[i+32>>2]|0)Tn(i)}else c[g>>2]=j+(m<<4);c[Ja>>2]=(c[Ia>>2]|0)+Fa;c[Ga>>2]=Ha;i=c[Ka>>2]|0;k=i+132|0;if(Ma){i=c[k>>2]|0;if(!i){j=0;i=0}else{j=c[i+96>>2]|0;i=c[i+92>>2]|0}c[Ma+92>>2]=i;c[Ma+96>>2]=j;i=c[Ka>>2]|0}c[k>>2]=Ma;a[Na>>0]=Oa;c[i+140>>2]=La;if(!(c[i+32>>2]|0)){Qa=0;l=Pa;return Qa|0}Tn(i);Qa=0;l=Pa;return Qa|0}function to(a,d){a=a|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,l=0,m=0,n=0;n=a+68|0;f=c[n>>2]|0;l=a+64|0;e=c[l>>2]|0;k=f-e>>4;m=((d|0)<0?k:0)+d|0;if(m>>>0>=k>>>0)jo(a,300,d);a:do switch(c[e+(m<<4)>>2]|0){case 3:case 2:{Jn(a,268620,100666814,269813);break}case 4:{d=671105153;j=12;i=26;break}case 8:{j=(c[c[e+(m<<4)+8>>2]>>2]&512|0)==0;d=j?1619017857:1879064705;j=j?10:38;i=26;break}case 10:{d=c[e+(m<<4)+8>>2]|0;if(f>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4153);c[n>>2]=f+16;c[f>>2]=10;c[f+8>>2]=d;e=d+4|0;c[e>>2]=(c[e>>2]|0)+1;$p(a,c[d+16>>2]|0);e=c[l>>2]|0;f=(c[n>>2]|0)-e>>4;d=f+-2|0;if(f>>>0<=1)jo(a,376,-2);g=e+(d<<4)|0;j=e+(f+-1<<4)|0;k=c[g>>2]|0;d=c[e+(d<<4)+8>>2]|0;QQ(g|0,g+16|0,j-g|0)|0;c[j>>2]=2;c[n>>2]=(c[n>>2]|0)+-16;if(k&8|0?(j=d+4|0,k=(c[j>>2]|0)+-1|0,c[j>>2]=k,(k|0)==0):0)Yn(c[a+44>>2]|0,d);break}case 5:{d=-2013249407;j=36;i=26;break}case 6:{g=c[e+(m<<4)+4>>2]|0;f=c[e+(m<<4)+8>>2]|0;k=g&15;k=(k|0)==15?-1:k;aq(a,f,k,403133312,6);d=g>>>4&15;do if((d|0)!=(k|0)){e=c[n>>2]|0;if(e>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4244);j=e+16|0;c[n>>2]=j;c[e>>2]=0;h[e+8>>3]=+(d|0);k=c[l>>2]|0;d=j-k>>4;d=d>>>0>1?k+(d+-2<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)!=9)In(a,2130,-2,268963);d=c[d+8>>2]|0;if(!d)In(a,2130,-2,268963);else{fo(a,d,c[(c[a+304>>2]|0)+328>>2]|0,0);break}}while(0);bq(a,f,g);k=c[l>>2]|0;d=(c[n>>2]|0)-k>>4;d=d>>>0>1?k+(d+-2<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)!=9)In(a,2130,-2,268963);d=c[d+8>>2]|0;if(!d)In(a,2130,-2,268963);else{fo(a,d,c[(c[a+304>>2]|0)+352>>2]|0,4);b[(c[(c[n>>2]|0)+-8>>2]|0)+46>>1]=(g>>>8&255)<<24>>24;break a}break}case 9:return;default:{d=1342193793;j=14;i=26}}while(0);do if((i|0)==26){k=a+56|0;if(f>>>0>=(c[k>>2]|0)>>>0)Un(a,4604);i=vo(a,40)|0;e=c[a+44>>2]|0;c[i>>2]=d;d=e+24|0;e=c[d>>2]|0;if(e|0)c[e+12>>2]=i;c[i+12>>2]=0;c[i+8>>2]=e;c[d>>2]=i;f=c[n>>2]|0;c[f>>2]=9;c[f+8>>2]=i;f=i+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[n>>2]|0;g=f+16|0;c[n>>2]=g;d=c[a+100+(j<<2)>>2]|0;c[i+20>>2]=d;if(d|0){j=d+4|0;c[j>>2]=(c[j>>2]|0)+1}if(g>>>0>=(c[k>>2]|0)>>>0)Un(a,1093);e=c[l>>2]|0;k=g-e>>4;d=((m|0)<0?k:0)+m|0;if(d>>>0>=k>>>0)jo(a,376,m);k=e+(d<<4)|0;c[n>>2]=f+32;c[g>>2]=c[k>>2];c[g+4>>2]=c[k+4>>2];c[g+8>>2]=c[k+8>>2];c[g+12>>2]=c[k+12>>2];if(c[g>>2]&8|0){k=(c[f+24>>2]|0)+4|0;c[k>>2]=(c[k>>2]|0)+1}k=c[l>>2]|0;d=(c[n>>2]|0)-k>>4;d=d>>>0>1?k+(d+-2<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)!=9)In(a,2130,-2,268963);d=c[d+8>>2]|0;if(!d)In(a,2130,-2,268963);else{fo(a,d,c[(c[a+304>>2]|0)+404>>2]|0,0);break}}while(0);e=c[l>>2]|0;f=(c[n>>2]|0)-e>>4;if(!f)jo(a,376,-1);g=e+(f+-1<<4)|0;d=((m|0)<0?f:0)+m|0;if(d>>>0>=f>>>0)jo(a,376,m);l=e+(d<<4)|0;m=c[l>>2]|0;d=c[e+(d<<4)+8>>2]|0;c[l>>2]=c[g>>2];c[l+4>>2]=c[g+4>>2];c[l+8>>2]=c[g+8>>2];c[l+12>>2]=c[g+12>>2];c[g>>2]=2;c[n>>2]=(c[n>>2]|0)+-16;if(!(m&8))return;m=d+4|0;n=(c[m>>2]|0)+-1|0;c[m>>2]=n;if(n|0)return;Yn(c[a+44>>2]|0,d);return}function uo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;g=b<<16;d=g>>16;k=a+68|0;e=c[k>>2]|0;j=a+64|0;f=e-(c[j>>2]|0)>>4;g=((g|0)<0?f:0)+d|0;if(g>>>0>=f>>>0)jo(a,300,d);d=c[(c[a+304>>2]|0)+200>>2]|0;if(e>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4153);c[k>>2]=e+16;c[e>>2]=8;c[e+8>>2]=d;e=d+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[j>>2]|0;f=(c[k>>2]|0)-e>>4;d=((g|0)<0?f:0)+g|0;if(d>>>0>=f>>>0)jo(a,376,g);ro(a,e+(d<<4)|0,e+(f+-1<<4)|0)|0;e=c[j>>2]|0;f=(c[k>>2]|0)-e>>4;d=f+-2|0;if(f>>>0<=1)jo(a,376,-2);l=e+(d<<4)|0;f=e+(f+-1<<4)|0;g=c[l>>2]|0;d=c[e+(d<<4)+8>>2]|0;QQ(l|0,l+16|0,f-l|0)|0;c[f>>2]=2;e=(c[k>>2]|0)+-16|0;c[k>>2]=e;if((g&8|0)!=0?(g=d+4|0,l=(c[g>>2]|0)+-1|0,c[g>>2]=l,(l|0)==0):0){Yn(c[a+44>>2]|0,d);e=c[k>>2]|0}d=c[j>>2]|0;f=e-d>>4;f=f|0?d+(f+-1<<4)|0:0;f=(f|0)==0?936:f;if((((c[f>>2]|0)==9?(h=c[f+8>>2]|0,(h|0)!=0):0)?(l=(c[(c[((b|0)<-1?k:j)>>2]|0)+(b+1<<4)+8>>2]|0)+20|0,i=c[l>>2]|0,c[l>>2]=h,l=h+4|0,c[l>>2]=(c[l>>2]|0)+1,(i|0)!=0):0)?(h=i+4|0,l=(c[h>>2]|0)+-1|0,c[h>>2]=l,(l|0)==0):0){tp(c[a+44>>2]|0,i);e=c[k>>2]|0;d=c[j>>2]|0}if((e|0)==(d|0))Jn(a,268620,50337407,268636);j=e+-16|0;c[k>>2]=j;l=c[e+-16>>2]|0;d=c[e+-8>>2]|0;c[j>>2]=2;if(!(l&8))return;k=d+4|0;l=(c[k>>2]|0)+-1|0;c[k>>2]=l;if(l|0)return;Yn(c[a+44>>2]|0,d);return}function vo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;f=c[a+44>>2]|0;g=f+44|0;h=c[g>>2]|0;c[g>>2]=h+-1;if((h|0)<1)Ln(f,2);g=f+4|0;e=f+16|0;d=hg[c[g>>2]&63](c[e>>2]|0,b)|0;h=(b|0)==0;if(h|(d|0)!=0){if(d|0)i=7}else{Ln(f,0);d=hg[c[g>>2]&63](c[e>>2]|0,b)|0;if(!d){Ln(f,0);d=hg[c[g>>2]&63](c[e>>2]|0,b)|0;if(!d){Ln(f,1);d=hg[c[g>>2]&63](c[e>>2]|0,b)|0;if(!d){Ln(f,1);d=hg[c[g>>2]&63](c[e>>2]|0,b)|0;if(!d){Ln(f,1);d=hg[c[g>>2]&63](c[e>>2]|0,b)|0;if(!d){Ln(f,1);d=hg[c[g>>2]&63](c[e>>2]|0,b)|0;if(!d){Ln(f,1);d=hg[c[g>>2]&63](c[e>>2]|0,b)|0;if(!d){Ln(f,1);d=hg[c[g>>2]&63](c[e>>2]|0,b)|0;if(!d){Ln(f,1);d=hg[c[g>>2]&63](c[e>>2]|0,b)|0;if(!d){Ln(f,1);d=hg[c[g>>2]&63](c[e>>2]|0,b)|0;if(d|0)i=7}else i=7}else i=7}else i=7}else i=7}else i=7}else i=7}else i=7}else i=7}else i=7}if((i|0)==7){RQ(d|0,0,b|0)|0;i=d;return i|0}if(h){i=0;return i|0}else Mn(a,269480,156);return 0}function wo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;m=a+68|0;f=c[m>>2]|0;l=a+64|0;e=c[l>>2]|0;j=f-e>>4;i=(b|0)<0;d=(i?j:0)+b|0;if(d>>>0>=j>>>0)jo(a,376,b);switch(c[e+(d<<4)>>2]|0){case 9:{j=c[e+(d<<4)+8>>2]|0;if(c[j>>2]&4194304|0?(g=j+40|0,k=c[g>>2]|0,h=j+32|0,k>>>0<=(c[h>>2]|0)>>>0):0){if((k|0)<0)Jn(a,268620,50337693,269798);e=c[a+52>>2]|0;d=((k>>>0<1e6?k:1e6)<<4)+512+(f-e)|0;e=e+d|0;f=a+56|0;do if((c[f>>2]|0)>>>0<e>>>0)if((c[a+60>>2]|0)>>>0<e>>>0){lo(a,d,1)|0;d=c[g>>2]|0;break}else{c[f>>2]=e;d=k;break}else d=k;while(0);if((k|0)==(d|0)?k>>>0<=(c[h>>2]|0)>>>0:0){e=c[j+24>>2]|0;d=c[m>>2]|0;if(k){g=d;e=(c[j+16>>2]|0)+(e*21|0)+(0-e&7)|0;f=k;while(1){f=f+-1|0;if((c[e>>2]|0)!=7?(c[g>>2]=c[e>>2],c[g+4>>2]=c[e+4>>2],c[g+8>>2]=c[e+8>>2],c[g+12>>2]=c[e+12>>2],c[g>>2]&8|0):0){a=(c[g+8>>2]|0)+4|0;c[a>>2]=(c[a>>2]|0)+1}if(!f)break;else{g=g+16|0;e=e+16|0}}d=d+(k<<4)|0}c[m>>2]=d;return}}d=c[m>>2]|0;k=d-(c[l>>2]|0)>>4;h=(i?k:0)+b|0;h=h>>>0<k>>>0?h:-2147483648;g=((h|0)<0?k:0)+h|0;if(g>>>0>=k>>>0)jo(a,300,h);e=c[(c[a+304>>2]|0)+328>>2]|0;b=a+56|0;if(d>>>0>=(c[b>>2]|0)>>>0)Un(a,4153);c[m>>2]=d+16;c[d>>2]=8;c[d+8>>2]=e;e=e+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[l>>2]|0;f=(c[m>>2]|0)-e>>4;d=((g|0)<0?f:0)+g|0;if(d>>>0>=f>>>0)jo(a,376,g);ro(a,e+(d<<4)|0,e+(f+-1<<4)|0)|0;e=c[l>>2]|0;f=(c[m>>2]|0)-e>>4;d=f+-2|0;if(f>>>0<=1)jo(a,376,-2);j=e+(d<<4)|0;k=e+(f+-1<<4)|0;l=c[j>>2]|0;d=c[e+(d<<4)+8>>2]|0;QQ(j|0,j+16|0,k-j|0)|0;c[k>>2]=2;c[m>>2]=(c[m>>2]|0)+-16;if(l&8|0?(k=d+4|0,l=(c[k>>2]|0)+-1|0,c[k>>2]=l,(l|0)==0):0)Yn(c[a+44>>2]|0,d);f=_p(a,-1)|0;if((f|0)<0)Jn(a,268620,50337693,269798);e=c[m>>2]|0;d=e+-16|0;c[m>>2]=d;l=c[e+-16>>2]|0;e=c[e+-8>>2]|0;c[d>>2]=2;if((l&8|0)!=0?(k=e+4|0,l=(c[k>>2]|0)+-1|0,c[k>>2]=l,(l|0)==0):0){Yn(c[a+44>>2]|0,e);d=c[m>>2]|0}e=c[a+52>>2]|0;d=((f>>>0<1e6?f:1e6)<<4)+512+(d-e)|0;e=e+d|0;do if((c[b>>2]|0)>>>0<e>>>0)if((c[a+60>>2]|0)>>>0<e>>>0){lo(a,d,1)|0;break}else{c[b>>2]=e;break}while(0);if(!f)return;else d=0;do{Np(a,h,d)|0;d=d+1|0}while((d|0)!=(f|0));return}case 3:case 2:return;default:Vn(a,268620,6041)}}function xo(a){a=a|0;var b=0,d=0,e=0;b=a+68|0;if((c[b>>2]|0)==(c[a+64>>2]|0))Vn(a,268620,6062);d=a+40|0;e=c[d>>2]|0;if(e|0){c[(c[a+72>>2]|0)+36>>2]=c[e>>2];c[d>>2]=0}Dp(a);Ep(c[a+44>>2]|0,1,(c[b>>2]|0)+-16|0);ep(a)}function yo(a,b){a=a|0;b=b|0;return fp(a,b,0)|0}function zo(a){a=a|0;if(c[(c[a+44>>2]|0)+76>>2]|0?(c[a+76>>2]|0)>>>0<10012:0)return;Jn(a,268650,50331742,269782)}function Ao(a){a=a|0;var b=0,d=0,e=0,f=0;d=c[a+44>>2]|0;e=d+44|0;f=c[e>>2]|0;c[e>>2]=f+-1;if((f|0)<1)Ln(d,2);e=d+4|0;f=d+16|0;b=hg[c[e>>2]&63](c[f>>2]|0,56)|0;if(b|0){a=b;return a|0}Ln(d,0);b=hg[c[e>>2]&63](c[f>>2]|0,56)|0;if(b|0){a=b;return a|0}Ln(d,0);b=hg[c[e>>2]&63](c[f>>2]|0,56)|0;if(b|0){a=b;return a|0}Ln(d,1);b=hg[c[e>>2]&63](c[f>>2]|0,56)|0;if(b|0){a=b;return a|0}Ln(d,1);b=hg[c[e>>2]&63](c[f>>2]|0,56)|0;if(b|0){a=b;return a|0}Ln(d,1);b=hg[c[e>>2]&63](c[f>>2]|0,56)|0;if(b|0){a=b;return a|0}Ln(d,1);b=hg[c[e>>2]&63](c[f>>2]|0,56)|0;if(b|0){a=b;return a|0}Ln(d,1);b=hg[c[e>>2]&63](c[f>>2]|0,56)|0;if(b|0){a=b;return a|0}Ln(d,1);b=hg[c[e>>2]&63](c[f>>2]|0,56)|0;if(b|0){a=b;return a|0}Ln(d,1);b=hg[c[e>>2]&63](c[f>>2]|0,56)|0;if(b|0){a=b;return a|0}Ln(d,1);b=hg[c[e>>2]&63](c[f>>2]|0,56)|0;if(!b)Mn(a,269480,144);else{a=b;return a|0}return 0}function Bo(a,b){a=a|0;b=b|0;var d=0,e=0,f=0.0,g=0,i=0,j=0,k=0,l=0;k=a+68|0;g=c[k>>2]|0;j=a+64|0;d=c[j>>2]|0;e=g-d>>4;i=((b|0)<0?e:0)+b|0;e=i>>>0<e>>>0;d=e?d+(i<<4)|0:0;d=(d|0)==0?936:d;switch(c[d>>2]|0){case 9:{a=Zp(a,c[d+8>>2]|0)|0;return a|0}case 6:{if(!e)jo(a,300,b);d=c[(c[a+304>>2]|0)+328>>2]|0;if(g>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4153);c[k>>2]=g+16;c[g>>2]=8;c[g+8>>2]=d;b=d+4|0;c[b>>2]=(c[b>>2]|0)+1;b=c[j>>2]|0;e=(c[k>>2]|0)-b>>4;d=((i|0)<0?e:0)+i|0;if(d>>>0>=e>>>0)jo(a,376,i);ro(a,b+(d<<4)|0,b+(e+-1<<4)|0)|0;b=c[j>>2]|0;e=(c[k>>2]|0)-b>>4;d=e+-2|0;if(e>>>0<=1)jo(a,376,-2);l=b+(d<<4)|0;g=b+(e+-1<<4)|0;i=c[l>>2]|0;d=c[b+(d<<4)+8>>2]|0;QQ(l|0,l+16|0,g-l|0)|0;c[g>>2]=2;b=(c[k>>2]|0)+-16|0;c[k>>2]=b;if((i&8|0)!=0?(i=d+4|0,l=(c[i>>2]|0)+-1|0,c[i>>2]=l,(l|0)==0):0){Yn(c[a+44>>2]|0,d);b=c[k>>2]|0}d=c[j>>2]|0;l=b-d>>4;b=l+-1|0;if(!l)jo(a,300,-1);f=+ho(a,d+(b<<4)|0);j=c[j>>2]|0;i=j+(b<<4)|0;l=c[i>>2]|0;j=j+(b<<4)+8|0;d=c[j>>2]|0;c[i>>2]=0;h[j>>3]=f;if(l&8|0?(j=d+4|0,l=(c[j>>2]|0)+-1|0,c[j>>2]=l,(l|0)==0):0)Yn(c[a+44>>2]|0,d);b=~~f>>>0;d=c[k>>2]|0;j=d+-16|0;c[k>>2]=j;l=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[j>>2]=2;if(!(l&8)){l=b;return l|0}k=d+4|0;l=(c[k>>2]|0)+-1|0;c[k>>2]=l;if(l|0){l=b;return l|0}Yn(c[a+44>>2]|0,d);l=b;return l|0}case 10:{l=c[(c[d+8>>2]|0)+16>>2]|0;return l|0}case 8:{d=c[d+8>>2]|0;if(c[d>>2]&512|0){l=0;return l|0}l=Po(d)|0;return l|0}default:{l=0;return l|0}}return 0}function Co(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0;n=l;l=l+16|0;k=n;if(!((d|0)!=-1&(c[b>>2]&32768|0)!=0)){m=a+68|0;e=c[m>>2]|0;if(e>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4274);c[m>>2]=e+16;c[e>>2]=0;h[e+8>>3]=+(d>>>0);Eo(a,-1)|0;f=c[a+64>>2]|0;g=(c[m>>2]|0)-f>>4;j=f+(g+-1<<4)|0;e=g|0?j:0;e=(e|0)==0?936:e;if((c[e>>2]|0)==8)i=c[e+8>>2]|0;else i=0;if(g>>>0<=1)jo(a,376,-2);e=f+(g+-2<<4)|0;f=j-e|0;if(f|0){c[k>>2]=c[j>>2];c[k+4>>2]=c[j+4>>2];c[k+8>>2]=c[j+8>>2];c[k+12>>2]=c[j+12>>2];QQ(e+16|0,e|0,f|0)|0;c[e>>2]=c[k>>2];c[e+4>>2]=c[k+4>>2];c[e+8>>2]=c[k+8>>2];c[e+12>>2]=c[k+12>>2]}fo(a,b,i,7);e=c[m>>2]|0;b=e+-16|0;c[m>>2]=b;d=c[e+-16>>2]|0;e=c[e+-8>>2]|0;c[b>>2]=2;if(!(d&8)){l=n;return}b=e+4|0;d=(c[b>>2]|0)+-1|0;c[b>>2]=d;if(d|0){l=n;return}Yn(c[a+44>>2]|0,e);l=n;return}if((c[b+32>>2]|0)>>>0>d>>>0)e=b+24|0;else{e=b+24|0;io(a,b,c[e>>2]|0,((d+16|0)>>>3)+d|0,c[b+36>>2]|0,0)}f=c[e>>2]|0;f=(c[b+16>>2]|0)+(f*21|0)+(0-f&7)|0;j=f+(d<<4)|0;k=a+68|0;g=c[a+64>>2]|0;e=(c[k>>2]|0)-g>>4;if(!e)jo(a,376,-1);e=e+-1|0;i=g+(e<<4)|0;if(c[i>>2]&8|0){b=(c[g+(e<<4)+8>>2]|0)+4|0;c[b>>2]=(c[b>>2]|0)+1}if(c[j>>2]&8){e=c[f+(d<<4)+8>>2]|0;c[j>>2]=c[i>>2];c[j+4>>2]=c[i+4>>2];c[j+8>>2]=c[i+8>>2];c[j+12>>2]=c[i+12>>2];b=e+4|0;d=(c[b>>2]|0)+-1|0;c[b>>2]=d;if(!d)Yn(c[a+44>>2]|0,e)}else{c[j>>2]=c[i>>2];c[j+4>>2]=c[i+4>>2];c[j+8>>2]=c[i+8>>2];c[j+12>>2]=c[i+12>>2]}e=c[k>>2]|0;b=e+-16|0;c[k>>2]=b;d=c[e+-16>>2]|0;e=c[e+-8>>2]|0;c[b>>2]=2;if(!(d&8)){l=n;return}b=e+4|0;d=(c[b>>2]|0)+-1|0;c[b>>2]=d;if(d|0){l=n;return}Yn(c[a+44>>2]|0,e);l=n;return}function Do(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;g=a+68|0;h=a+64|0;e=c[h>>2]|0;f=(c[g>>2]|0)-e>>4;d=((b|0)<0?f:0)+b|0;if(d>>>0>=f>>>0)jo(a,376,b);b=Xo(a,e+(d<<4)|0,e+(f+-1<<4)|0)|0;d=c[g>>2]|0;if((d|0)==(c[h>>2]|0))Jn(a,268620,50337407,268636);f=d+-16|0;c[g>>2]=f;h=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[f>>2]=2;if(!(h&8))return b|0;g=d+4|0;h=(c[g>>2]|0)+-1|0;c[g>>2]=h;if(h|0)return b|0;Yn(c[a+44>>2]|0,d);return b|0}function Eo(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0;z=l;l=l+80|0;u=z+72|0;r=z+8|0;h=z;w=b+68|0;g=c[w>>2]|0;x=b+64|0;i=c[x>>2]|0;q=g-i>>4;y=((d|0)<0?q:0)+d|0;j=g;if(y>>>0>=q>>>0)jo(b,300,d);d=i+(y<<4)|0;f=c[d>>2]|0;a:do switch(f|0){case 2:{d=c[(c[b+304>>2]|0)+232>>2]|0;if(j>>>0<(c[b+56>>2]|0)>>>0){c[w>>2]=j+16;c[j>>2]=8;c[j+8>>2]=d;v=d+4|0;c[v>>2]=(c[v>>2]|0)+1;v=45;break a}else Un(b,4153);break}case 3:{d=c[(c[b+304>>2]|0)+600>>2]|0;if(j>>>0<(c[b+56>>2]|0)>>>0){c[w>>2]=j+16;c[j>>2]=8;c[j+8>>2]=d;v=d+4|0;c[v>>2]=(c[v>>2]|0)+1;v=45;break a}else Un(b,4153);break}case 4:{d=c[b+304>>2]|0;if(!(c[i+(y<<4)+8>>2]|0)){d=c[d+608>>2]|0;if(j>>>0<(c[b+56>>2]|0)>>>0){c[w>>2]=j+16;c[j>>2]=8;c[j+8>>2]=d;v=d+4|0;c[v>>2]=(c[v>>2]|0)+1;v=45;break a}else Un(b,4153)}else{d=c[d+604>>2]|0;if(j>>>0<(c[b+56>>2]|0)>>>0){c[w>>2]=j+16;c[j>>2]=8;c[j+8>>2]=d;v=d+4|0;c[v>>2]=(c[v>>2]|0)+1;v=45;break a}else Un(b,4153)}break}case 8:{if(!(c[c[i+(y<<4)+8>>2]>>2]&512))e=g;else Jn(b,268620,100666535,269707);break}case 9:case 10:{po(b,y,1);b=Eo(b,y)|0;l=z;return b|0}case 5:{d=c[i+(y<<4)+8>>2]|0;if(d|0){c[h>>2]=d;Lo(b,280535,h);v=45;break a}d=c[(c[b+304>>2]|0)+600>>2]|0;if(j>>>0<(c[b+56>>2]|0)>>>0){c[w>>2]=j+16;c[j>>2]=8;c[j+8>>2]=d;v=d+4|0;c[v>>2]=(c[v>>2]|0)+1;v=45;break a}else Un(b,4153);break}case 6:{p=c[i+(y<<4)+4>>2]|0;q=b+56|0;if(j>>>0>=(c[q>>2]|0)>>>0)Un(b,4300);m=c[i+(y<<4)+8>>2]|0;d=Oo(b,269735,9)|0;f=c[w>>2]|0;c[w>>2]=f+16;c[f>>2]=8;c[f+8>>2]=d;d=d+4|0;c[d>>2]=(c[d>>2]|0)+1;Lo(b,269745,r);d=a[268793+(m>>>28)>>0]|0;a[r>>0]=d;f=a[268793+(m>>>24&15)>>0]|0;a[r+1>>0]=f;g=a[268793+(m>>>20&15)>>0]|0;a[r+2>>0]=g;h=a[268793+(m>>>16&15)>>0]|0;a[r+3>>0]=h;i=a[268793+(m>>>12&15)>>0]|0;a[r+4>>0]=i;j=a[268793+(m>>>8&15)>>0]|0;a[r+5>>0]=j;k=a[268793+(m>>>4&15)>>0]|0;a[r+6>>0]=k;m=a[268793+(m&15)>>0]|0;a[r+7>>0]=m;n=c[w>>2]|0;if(n>>>0>=(c[q>>2]|0)>>>0)Un(b,4300);o=c[b+44>>2]|0;f=(d&255)+(((f&255)+(((g&255)+(((h&255)+(((i&255)+(((j&255)+(((k&255)+(((m&255)+((c[o+148>>2]^8)*33|0)|0)*33|0)|0)*33|0)|0)*33|0)|0)*33|0)|0)*33|0)|0)*33|0)|0)*33|0)|0;d=c[(c[o+176>>2]|0)+((c[o+180>>2]&f)<<2)>>2]|0;b:do if(!d)v=34;else while(1){if(((c[d+12>>2]|0)==(f|0)?(c[d+20>>2]|0)==8:0)?(KN(r,d+28|0,8)|0)==0:0){s=d;t=n;break b}d=c[d+8>>2]|0;if(!d){v=34;break}}while(0);do if((v|0)==34){d=no(o,r,8,f)|0;if(!d)Mn(b,268998,803);else{s=d;t=c[w>>2]|0;break}}while(0);c[w>>2]=t+16;c[t>>2]=8;c[t+8>>2]=s;t=s+4|0;c[t>>2]=(c[t>>2]|0)+1;c[u>>2]=p;Lo(b,269752,u);Mo(b,3,0);if((c[w>>2]|0)>>>0<(c[q>>2]|0)>>>0){v=Oo(b,269758,23)|0;u=c[w>>2]|0;c[w>>2]=u+16;c[u>>2]=8;c[u+8>>2]=v;v=v+4|0;c[v>>2]=(c[v>>2]|0)+1;Mo(b,3,0);v=45;break a}else Un(b,4300);break}default:{if(j>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4153);c[w>>2]=j+16;v=g;c[v>>2]=c[d>>2];c[v+4>>2]=c[d+4>>2];c[v+8>>2]=c[d+8>>2];c[v+12>>2]=c[d+12>>2];if(f&8|0){v=(c[i+(y<<4)+8>>2]|0)+4|0;c[v>>2]=(c[v>>2]|0)+1}Tp(b,10,0,0);v=45}}while(0);if((v|0)==45){d=c[x>>2]|0;f=(c[w>>2]|0)-d>>4;if(!f)jo(b,376,-1);g=d+(f+-1<<4)|0;e=((y|0)<0?f:0)+y|0;if(e>>>0>=f>>>0)jo(b,376,y);u=d+(e<<4)|0;v=c[u>>2]|0;d=c[d+(e<<4)+8>>2]|0;c[u>>2]=c[g>>2];c[u+4>>2]=c[g+4>>2];c[u+8>>2]=c[g+8>>2];c[u+12>>2]=c[g+12>>2];c[g>>2]=2;e=(c[w>>2]|0)+-16|0;c[w>>2]=e;if((v&8|0)!=0?(u=d+4|0,v=(c[u>>2]|0)+-1|0,c[u>>2]=v,(v|0)==0):0){Yn(c[b+44>>2]|0,d);e=c[w>>2]|0}}x=c[x>>2]|0;w=e-x>>4;e=((y|0)<0?w:0)+y|0;e=e>>>0<w>>>0?x+(e<<4)|0:0;e=(e|0)==0?936:e;if((c[e>>2]|0)!=8)In(b,2101,y,287721);e=c[e+8>>2]|0;if(!e)In(b,2101,y,287721);b=e+28|0;l=z;return b|0}function Fo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;n=a+68|0;p=a+64|0;h=c[p>>2]|0;f=(c[n>>2]|0)-h|0;i=f>>4;e=((b|0)<0?i:0)+b|0;e=e>>>0<i>>>0?h+(e<<4)|0:0;e=(e|0)==0?936:e;if((c[e>>2]|0)!=9)In(a,2130,b,268963);q=c[e+8>>2]|0;if(!q)In(a,2130,b,268963);if((d&72|0)!=0&(d&384|0)!=0)Jn(a,269658,100663809,269675);e=(f|0)<16?-2147483648:i+-1|0;if(!(d&256))m=0;else{g=(e|0)<0;b=(g?i:0)+e|0;b=b>>>0<i>>>0?h+(b<<4)|0:0;b=(b|0)==0?936:b;f=c[b>>2]|0;if(1467>>>f&1|0)Jn(a,268620,100667121,269566);switch(f|0){case 9:{b=c[b+8>>2]|0;if(!b)j=0;else l=11;break}case 6:{to(a,e);b=c[(c[(g?n:p)>>2]|0)+(e<<4)+8>>2]|0;if(!b)j=0;else l=11;break}default:j=0}if((l|0)==11)if(!(c[b>>2]&512))Jn(a,269658,100663813,269694);else j=b;e=e+-1|0;m=j}if(!(d&128))k=0;else{f=c[p>>2]|0;j=(c[n>>2]|0)-f>>4;g=(e|0)<0;b=(g?j:0)+e|0;b=b>>>0<j>>>0?f+(b<<4)|0:0;b=(b|0)==0?936:b;f=c[b>>2]|0;if(1467>>>f&1|0)Jn(a,268620,100667121,269566);switch(f|0){case 9:{b=c[b+8>>2]|0;if(!b)k=0;else l=19;break}case 6:{to(a,e);b=c[(c[(g?n:p)>>2]|0)+(e<<4)+8>>2]|0;if(!b)k=0;else l=19;break}default:k=0}if((l|0)==19)if(!(c[b>>2]&512))Jn(a,269658,100663813,269694);else k=b;e=e+-1|0}h=(d&64|0)==0;j=h?-1:e;h=e+((h^1)<<31>>31)|0;po(a,h,1);b=c[n>>2]|0;l=c[p>>2]|0;e=l;g=b-e>>4;i=(h|0)<0;f=(i?g:0)+h|0;f=f>>>0<g>>>0?l+(f<<4)|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)==8?(o=c[f+8>>2]|0,(o|0)!=0):0)g=o;else{Eo(a,h)|0;b=c[n>>2]|0;p=c[p>>2]|0;f=p;o=b-f>>4;e=(i?o:0)+h|0;e=e>>>0<o>>>0?p+(e<<4)|0:0;e=(e|0)==0?936:e;if((c[e>>2]|0)==8){g=c[e+8>>2]|0;e=f}else{g=0;e=f}}p=b-e>>4;o=(i?p:0)+h|0;if((o|0)<0|o>>>0>=p>>>0)jo(a,394,h);else{Fp(a,d,q,g,j,k,m,1)|0;Gp(a,h);return}}function Go(b){b=b|0;var d=0,f=0,g=0,i=0,j=0,k=0,m=0,n=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,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;P=l;l=l+160|0;N=4;O=eN(40)|0;c[O>>2]=0;B=P;C=c[b+44>>2]|0;F=c[b+72>>2]|0;G=C+140|0;K=c[G>>2]|0;L=C+80|0;M=c[L>>2]|0;c[L>>2]=B;N=NQ(B,2,O|0,N|0)|0;O=z;o=0;d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 1:{g=0;f=0;w=231;break}case 2:{g=0;f=0;w=3;break}default:{d=0;g=0;f=0;w=3}}a:while(1){if((w|0)==3){w=0;if(!d){i=g;w=5}else{g=C+64|0;A=C+132|0}}else if((w|0)==231){w=0;if(!d){i=g;w=5}else A=f}if((w|0)==5){o=0;ua(159,b|0,F|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){g=OQ(c[d>>2]|0,N|0,O|0)|0;if(!g)Of(d|0,p|0);z=p}else g=-1;d=z;switch(g|0){case 2:{g=i;w=3;continue a}case 1:{g=i;w=231;continue a}default:{w=6;break a}}}c[G>>2]=K;c[L>>2]=M;x=c[A>>2]|0;b:while(1){y=x+44|0;d=c[y>>2]|0;switch(c[d+84>>2]|0){case 3:{u=c[d+120>>2]|0;if(!(c[d+88>>2]|0)){w=16;break b}c[u+84>>2]=x;f=x+4|0;c[f>>2]=(c[f>>2]|0)+1;a[u+49>>0]=2;a[x+49>>0]=3;f=d+132|0;if(u|0){d=c[f>>2]|0;if(!d){i=0;d=0}else{i=c[d+96>>2]|0;d=c[d+92>>2]|0}c[u+92>>2]=d;c[u+96>>2]=i}c[f>>2]=u;c[(c[u+44>>2]|0)+84>>2]=1;x=u;continue b}case 2:{t=x+84|0;u=c[t>>2]|0;if(!(c[d+88>>2]|0)){w=73;break b}a[x+49>>0]=4;c[t>>2]=0;w=u+4|0;x=(c[w>>2]|0)+-1|0;c[w>>2]=x;if(!x){o=0;ua(161,d|0,u|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}d=c[y>>2]|0}a[u+49>>0]=2;f=d+132|0;d=c[f>>2]|0;if(!d){i=0;d=0}else{i=c[d+96>>2]|0;d=c[d+92>>2]|0}c[u+92>>2]=d;c[u+96>>2]=i;c[f>>2]=u;c[(c[u+44>>2]|0)+84>>2]=1;x=u;continue b}case 1:{q=x+72|0;f=c[q>>2]|0;c:do if(f){n=x+76|0;while(1){k=f+32|0;i=c[k>>2]|0;if(i|0){m=f+28|0;while(1){j=c[i+16>>2]|0;if(j&16|0){w=112;break b}if(j&32|0){w=186;break b}if((j&128|0)!=0?(J=c[m>>2]|0,v=c[J+20>>2]|0,c[m>>2]=v,v=v+4|0,c[v>>2]=(c[v>>2]|0)+1,v=J+4|0,w=(c[v>>2]|0)+-1|0,c[v>>2]=w,(w|0)==0):0){o=0;ua(161,d|0,J|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){j=OQ(c[d>>2]|0,N|0,O|0)|0;if(!j)Of(d|0,p|0);z=p}else j=-1;d=z;switch(j|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}d=c[y>>2]|0}v=i;i=c[i>>2]|0;c[k>>2]=i;w=d+40|0;c[v>>2]=c[w>>2];c[w>>2]=v;if(!i)break}}if((f|0)==(F|0)){w=226;break b}o=0;oa(214,x|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}v=c[q>>2]|0;u=v+20|0;f=c[u>>2]|0;c[q>>2]=f;c[n>>2]=(c[n>>2]|0)+-1;d=c[y>>2]|0;w=d+36|0;c[u>>2]=c[w>>2];c[w>>2]=v;if(!f)break c}}while(0);m=x+84|0;n=c[m>>2]|0;f=c[x+52>>2]|0;k=x+68|0;j=c[k>>2]|0;c[x+64>>2]=f;i=j-f>>4;if(i){i=j+(0-i<<4)|0;while(1){w=c[j+-16>>2]|0;d=c[j+-8>>2]|0;j=j+-16|0;c[j>>2]=2;if(w&8|0?(v=d+4|0,w=(c[v>>2]|0)+-1|0,c[v>>2]=w,(w|0)==0):0){o=0;ua(157,c[y>>2]|0,d|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}}if((j|0)==(i|0))break}c[k>>2]=i;d=c[y>>2]|0;if(c[d+32>>2]|0){o=0;oa(213,d|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}d=c[y>>2]|0}}else c[k>>2]=f;a[x+49>>0]=5;if(c[d+32>>2]|0){o=0;oa(213,d|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}}c[m>>2]=0;w=n+4|0;x=(c[w>>2]|0)+-1|0;c[w>>2]=x;if(!x){o=0;ua(161,c[y>>2]|0,n|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}}a[n+49>>0]=2;f=(c[y>>2]|0)+132|0;d=c[f>>2]|0;if(!d){i=0;d=0}else{i=c[d+96>>2]|0;d=c[d+92>>2]|0}c[n+92>>2]=d;c[n+96>>2]=i;c[f>>2]=n;x=n;continue b}default:{w=224;break b}}}do if((w|0)==16){t=u+49|0;if((a[t>>0]|0)!=4){f=u+68|0;i=c[f>>2]|0;j=c[u+56>>2]|0;if(i>>>0>=j>>>0){o=0;ua(158,u|0,4162);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{w=52;break a}}}k=i+16|0;c[f>>2]=k;m=d+96|0;if(k>>>0>=j>>>0){o=0;ua(158,u|0,4153);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{w=55;break a}}}c[f>>2]=i+32;c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2];if(c[m>>2]&8|0){w=(c[d+104>>2]|0)+4|0;c[w>>2]=(c[w>>2]|0)+1}o=0;f=ba(14,u|0,((c[f>>2]|0)-(c[u+64>>2]|0)>>4)+-3|0,8)|0;d=o;o=0;if((d|0)!=0&(p|0)!=0){i=OQ(c[d>>2]|0,N|0,O|0)|0;if(!i)Of(d|0,p|0);z=p}else i=-1;d=z;switch(i|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}if(!f){o=0;wa(14,x|0,269377,1210);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{w=61;break a}}}c[u+84>>2]=x;f=x+4|0;c[f>>2]=(c[f>>2]|0)+1;a[t>>0]=2;a[x+49>>0]=3;f=(c[y>>2]|0)+132|0;d=c[f>>2]|0;if(!d){i=0;d=0}else{i=c[d+96>>2]|0;d=c[d+92>>2]|0}c[u+92>>2]=d;c[u+96>>2]=i;c[f>>2]=u;break}j=u+72|0;s=u+52|0;f=(c[s>>2]|0)+(c[(c[(c[j>>2]|0)+20>>2]|0)+44>>2]|0)|0;i=d+96|0;if(c[i>>2]&8|0){w=(c[d+104>>2]|0)+4|0;c[w>>2]=(c[w>>2]|0)+1}if(c[f>>2]&8){d=c[f+8>>2]|0;c[f>>2]=c[i>>2];c[f+4>>2]=c[i+4>>2];c[f+8>>2]=c[i+8>>2];c[f+12>>2]=c[i+12>>2];v=d+4|0;w=(c[v>>2]|0)+-1|0;c[v>>2]=w;if(!w){o=0;ua(160,c[y>>2]|0,d|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}}}else{c[f>>2]=c[i>>2];c[f+4>>2]=c[i+4>>2];c[f+8>>2]=c[i+8>>2];c[f+12>>2]=c[i+12>>2]}o=0;oa(214,u|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}d=c[j>>2]|0;i=d+20|0;r=c[i>>2]|0;c[j>>2]=r;n=u+76|0;c[n>>2]=(c[n>>2]|0)+-1;n=u+44|0;m=(c[n>>2]|0)+36|0;c[i>>2]=c[m>>2];c[m>>2]=d;m=c[r+16>>2]|0;d=c[r+40>>2]|0;i=(c[s>>2]|0)+d|0;k=u+64|0;c[k>>2]=i;d=(16-d+(c[r+44>>2]|0)|0)>>>4;m=e[m+60>>1]|0;q=u+68|0;j=c[q>>2]|0;f=j-i>>4;if(d>>>0<f>>>0){i=j+(d-f<<4)|0;while(1){w=c[j+-16>>2]|0;d=c[j+-8>>2]|0;j=j+-16|0;c[j>>2]=2;if(w&8|0?(v=d+4|0,w=(c[v>>2]|0)+-1|0,c[v>>2]=w,(w|0)==0):0){o=0;ua(157,c[n>>2]|0,d|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}}if((j|0)==(i|0))break}c[q>>2]=i;d=c[n>>2]|0;if(c[d+32>>2]|0){o=0;oa(213,d|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}i=c[q>>2]|0}}else{i=i+(d<<4)|0;c[q>>2]=i}d=c[k>>2]|0;f=i-d>>4;if(m>>>0<f>>>0){j=i+(m-f<<4)|0;while(1){w=c[i+-16>>2]|0;d=c[i+-8>>2]|0;i=i+-16|0;c[i>>2]=2;if(w&8|0?(v=d+4|0,w=(c[v>>2]|0)+-1|0,c[v>>2]=w,(w|0)==0):0){o=0;ua(157,c[n>>2]|0,d|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}}if((i|0)==(j|0))break}c[q>>2]=j;d=c[n>>2]|0;if(c[d+32>>2]|0){o=0;oa(213,d|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}}}else c[q>>2]=d+(m<<4);c[u+56>>2]=(c[s>>2]|0)+(c[r+48>>2]|0);c[u+84>>2]=x;f=x+4|0;c[f>>2]=(c[f>>2]|0)+1;a[t>>0]=2;a[x+49>>0]=3;f=(c[y>>2]|0)+132|0;d=c[f>>2]|0;if(!d){i=0;d=0}else{i=c[d+96>>2]|0;d=c[d+92>>2]|0}c[u+92>>2]=d;c[u+96>>2]=i;c[f>>2]=u}else if((w|0)==73){o=0;oa(214,u|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}j=u+72|0;f=c[j>>2]|0;s=f+20|0;i=c[s>>2]|0;c[j>>2]=i;r=u+76|0;c[r>>2]=(c[r>>2]|0)+-1;r=u+44|0;d=(c[r>>2]|0)+36|0;c[s>>2]=c[d>>2];c[d>>2]=f;d=c[y>>2]|0;f=d+96|0;s=u+52|0;i=(c[s>>2]|0)+(c[i+44>>2]|0)|0;if(c[f>>2]&8|0){w=(c[d+104>>2]|0)+4|0;c[w>>2]=(c[w>>2]|0)+1}if(c[i>>2]&8){d=c[i+8>>2]|0;c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2];v=d+4|0;w=(c[v>>2]|0)+-1|0;c[v>>2]=w;if(!w){o=0;ua(160,c[y>>2]|0,d|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}}}else{c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2]}q=c[j>>2]|0;m=c[q+16>>2]|0;f=c[q+40>>2]|0;d=(c[s>>2]|0)+f|0;k=u+64|0;c[k>>2]=d;f=(16-f+(c[q+44>>2]|0)|0)>>>4;m=e[m+60>>1]|0;n=u+68|0;j=c[n>>2]|0;i=j-d>>4;if(f>>>0<i>>>0){i=j+(f-i<<4)|0;while(1){w=c[j+-16>>2]|0;d=c[j+-8>>2]|0;j=j+-16|0;c[j>>2]=2;if(w&8|0?(v=d+4|0,w=(c[v>>2]|0)+-1|0,c[v>>2]=w,(w|0)==0):0){o=0;ua(157,c[r>>2]|0,d|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}}if((j|0)==(i|0))break}c[n>>2]=i;d=c[r>>2]|0;if(c[d+32>>2]|0){o=0;oa(213,d|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}i=c[n>>2]|0}}else{i=d+(f<<4)|0;c[n>>2]=i}d=c[k>>2]|0;f=i-d>>4;if(m>>>0<f>>>0){j=i+(m-f<<4)|0;while(1){w=c[i+-16>>2]|0;d=c[i+-8>>2]|0;i=i+-16|0;c[i>>2]=2;if(w&8|0?(v=d+4|0,w=(c[v>>2]|0)+-1|0,c[v>>2]=w,(w|0)==0):0){o=0;ua(157,c[r>>2]|0,d|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}}if((i|0)==(j|0))break}c[n>>2]=j;d=c[r>>2]|0;if(c[d+32>>2]|0){o=0;oa(213,d|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}}}else c[n>>2]=d+(m<<4);c[u+56>>2]=(c[s>>2]|0)+(c[q+48>>2]|0);a[x+49>>0]=4;c[t>>2]=0;w=u+4|0;x=(c[w>>2]|0)+-1|0;c[w>>2]=x;if(!x){o=0;ua(161,c[y>>2]|0,u|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}}a[u+49>>0]=2;f=(c[y>>2]|0)+132|0;d=c[f>>2]|0;if(!d){i=0;d=0}else{i=c[d+96>>2]|0;d=c[d+92>>2]|0}c[u+92>>2]=d;c[u+96>>2]=i;c[f>>2]=u}else if((w|0)==112){w=0;m=d+96|0;r=c[q>>2]|0;n=r+32|0;t=x+52|0;i=c[t>>2]|0;j=c[(c[n>>2]|0)+12>>2]|0;k=i+(j<<4)|0;if(c[k>>2]&8|0?(D=c[i+(j<<4)+8>>2]|0,u=D+4|0,v=(c[u>>2]|0)+-1|0,c[u>>2]=v,(v|0)==0):0){o=0;ua(157,d|0,D|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}};c[k>>2]=c[m>>2];c[k+4>>2]=c[m+4>>2];c[k+8>>2]=c[m+8>>2];c[k+12>>2]=c[m+12>>2];if(c[k>>2]&8|0){v=(c[i+(j<<4)+8>>2]|0)+4|0;c[v>>2]=(c[v>>2]|0)+1}f=k+16|0;if(c[f>>2]&8|0?(E=c[f+8>>2]|0,u=E+4|0,v=(c[u>>2]|0)+-1|0,c[u>>2]=v,(v|0)==0):0){o=0;ua(157,c[y>>2]|0,E|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){i=OQ(c[d>>2]|0,N|0,O|0)|0;if(!i)Of(d|0,p|0);z=p}else i=-1;d=z;switch(i|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}}c[f>>2]=0;h[f+8>>3]=1.0;v=c[n>>2]|0;k=c[r+16>>2]|0;f=c[t>>2]|0;d=f+(c[r+40>>2]|0)|0;u=x+64|0;c[u>>2]=d;i=d;f=(c[v+12>>2]|0)-(i-f>>4)+2|0;k=e[k+60>>1]|0;v=x+68|0;j=c[v>>2]|0;i=j-i>>4;if(f>>>0<i>>>0){i=j+(f-i<<4)|0;while(1){s=c[j+-16>>2]|0;d=c[j+-8>>2]|0;j=j+-16|0;c[j>>2]=2;if(s&8|0?(q=d+4|0,s=(c[q>>2]|0)+-1|0,c[q>>2]=s,(s|0)==0):0){o=0;ua(157,c[y>>2]|0,d|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}}if((j|0)==(i|0))break}c[v>>2]=i;d=c[y>>2]|0;if(c[d+32>>2]|0){o=0;oa(213,d|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}i=c[v>>2]|0}}else{i=d+(f<<4)|0;c[v>>2]=i}d=c[u>>2]|0;f=i-d>>4;if(k>>>0<f>>>0){j=i+(k-f<<4)|0;while(1){s=c[i+-16>>2]|0;d=c[i+-8>>2]|0;i=i+-16|0;c[i>>2]=2;if(s&8|0?(q=d+4|0,s=(c[q>>2]|0)+-1|0,c[q>>2]=s,(s|0)==0):0){o=0;ua(157,c[y>>2]|0,d|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}}if((i|0)==(j|0))break}c[v>>2]=j;d=c[y>>2]|0;if(c[d+32>>2]|0){o=0;oa(213,d|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}}}else c[v>>2]=d+(k<<4);k=x+56|0;c[k>>2]=(c[t>>2]|0)+(c[r+48>>2]|0);i=c[n>>2]|0;c[r+36>>2]=c[i+8>>2];s=i+16|0;d=c[s>>2]|0;do if(d&64){q=r+28|0;if(!(c[q>>2]|0)){o=0;ua(162,x|0,r|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}}o=0;n=aa(18,x|0,52)|0;d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}d=c[y>>2]|0;c[n>>2]=-2147483519;d=d+24|0;f=c[d>>2]|0;if(f|0)c[f+12>>2]=n;c[n+12>>2]=0;c[n+8>>2]=f;c[d>>2]=n;d=c[v>>2]|0;if(d>>>0>=(c[k>>2]|0)>>>0){o=0;ua(158,x|0,4153);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{w=153;break a}}}c[v>>2]=d+16;c[d>>2]=9;c[d+8>>2]=n;m=n+4|0;c[m>>2]=(c[m>>2]|0)+1;d=c[i+4>>2]|0;f=c[v>>2]|0;if(f>>>0>=(c[k>>2]|0)>>>0){o=0;ua(158,x|0,4153);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{w=156;break a}}}c[v>>2]=f+16;c[f>>2]=8;c[f+8>>2]=d;j=d+4|0;c[j>>2]=(c[j>>2]|0)+1;j=c[t>>2]|0;d=c[i+12>>2]|0;f=j+(d<<4)|0;i=c[v>>2]|0;if(i>>>0>=(c[k>>2]|0)>>>0){o=0;ua(158,x|0,4153);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{w=159;break a}}}c[v>>2]=i+16;c[i>>2]=c[f>>2];c[i+4>>2]=c[f+4>>2];c[i+8>>2]=c[f+8>>2];c[i+12>>2]=c[f+12>>2];if(c[f>>2]&8|0){t=(c[j+(d<<4)+8>>2]|0)+4|0;c[t>>2]=(c[t>>2]|0)+1}t=c[u>>2]|0;d=(c[v>>2]|0)-t>>4;d=d>>>0>2?t+(d+-3<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==9?(H=c[d+8>>2]|0,H|0):0){o=0;wa(15,x|0,-2,1);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}t=c[u>>2]|0;d=(c[v>>2]|0)-t>>4;d=d>>>0>1?t+(d+-2<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==8?(I=c[d+8>>2]|0,(I|0)!=0):0)d=I;else w=169;do if((w|0)==169){o=0;aa(19,x|0,-2)|0;d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}w=c[u>>2]|0;d=(c[v>>2]|0)-w>>4;d=d>>>0>1?w+(d+-2<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)!=8){d=0;break}d=c[d+8>>2]|0}while(0);o=0;xa(17,x|0,H|0,d|0,1);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}d=c[v>>2]|0;if((d|0)==(c[u>>2]|0)){o=0;xa(15,x|0,268620,50337407,268636);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{w=175;break a}}}f=d+-16|0;c[v>>2]=f;x=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[f>>2]=2;do if(x&8){w=d+4|0;x=(c[w>>2]|0)+-1|0;c[w>>2]=x;if(x|0)break;o=0;ua(160,c[y>>2]|0,d|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}f=c[v>>2]|0}while(0);c[n+20>>2]=c[q>>2];c[q>>2]=n;c[m>>2]=(c[m>>2]|0)+1;d=c[s>>2]|128;c[s>>2]=d;w=f+-16|0;c[v>>2]=w;x=c[f+-16>>2]|0;f=c[f+-8>>2]|0;c[w>>2]=2;if(!(x&8))break;w=f+4|0;x=(c[w>>2]|0)+-1|0;c[w>>2]=x;if(x|0)break;o=0;ua(160,c[y>>2]|0,f|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}d=c[s>>2]|0;break}o=0;xa(16,x|0,2130,-3,268963);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{w=165;break a}}}while(0);c[s>>2]=d&-17}else if((w|0)==186){o=0;wa(16,x|0,d+96|0,1);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}}else if((w|0)==224){o=0;wa(14,x|0,269377,1446);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{w=225;break a}}}else if((w|0)==226){c[g>>2]=(c[g>>2]|0)+-1;o=0;oa(215,c[A>>2]|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{w=227;break a}}}while(0);d=c[y>>2]|0;c[d+84>>2]=0;c[d+88>>2]=0;w=d+96|0;x=c[w>>2]|0;f=c[d+104>>2]|0;c[w>>2]=2;if((x&8|0)!=0?(w=f+4|0,x=(c[w>>2]|0)+-1|0,c[w>>2]=x,(x|0)==0):0){o=0;ua(160,d|0,f|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}d=c[y>>2]|0}x=d+112|0;y=c[x>>2]|0;f=c[d+120>>2]|0;c[x>>2]=2;if(y&8|0?(x=f+4|0,y=(c[x>>2]|0)+-1|0,c[x>>2]=y,(y|0)==0):0){o=0;ua(160,d|0,f|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}}c[g>>2]=(c[g>>2]|0)+-1;d=c[(c[A>>2]|0)+44>>2]|0;if(c[d+32>>2]|0){o=0;oa(213,d|0);d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}}c[L>>2]=B;N=NQ(B,1,N|0,O|0)|0;O=z;o=0;d=o;o=0;if((d|0)!=0&(p|0)!=0){f=OQ(c[d>>2]|0,N|0,O|0)|0;if(!f)Of(d|0,p|0);z=p}else f=-1;d=z;switch(f|0){case 2:{f=A;w=3;continue a}case 1:{f=A;w=231;continue a}default:{}}f=A;d=0;w=231}switch(w|0){case 6:{c[L>>2]=M;fN(N|0);l=P;return}case 52:break;case 55:break;case 61:break;case 153:break;case 156:break;case 159:break;case 165:break;case 175:break;case 225:break;case 227:break}}function Ho(a,b,c){a=a|0;b=b|0;c=c|0;Jn(a,b,c|100663296,269242)}function Io(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 i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0.0;y=l;l=l+32|0;o=y;t=y+8|0;x=a+88|0;s=c[x>>2]|0;do if(s|0?c[s+4>>2]|0:0){s=a+68|0;i=c[s>>2]|0;r=a+64|0;m=i-(c[r>>2]|0)|0;q=m>>4;n=q+-1|0;if(!q)jo(a,300,-1);p=a+304|0;j=c[(c[p>>2]|0)+208>>2]|0;q=a+56|0;if(i>>>0>=(c[q>>2]|0)>>>0)Un(a,4153);c[s>>2]=i+16;c[i>>2]=8;c[i+8>>2]=j;j=j+4|0;c[j>>2]=(c[j>>2]|0)+1;j=c[r>>2]|0;k=(c[s>>2]|0)-j>>4;i=((m|0)<16?k:0)+n|0;if(i>>>0>=k>>>0)jo(a,376,n);m=ro(a,j+(i<<4)|0,j+(k+-1<<4)|0)|0;j=c[r>>2]|0;k=(c[s>>2]|0)-j>>4;i=k+-2|0;if(k>>>0<=1)jo(a,376,-2);z=j+(i<<4)|0;k=j+(k+-1<<4)|0;n=c[z>>2]|0;i=c[j+(i<<4)+8>>2]|0;QQ(z|0,z+16|0,k-z|0)|0;c[k>>2]=2;c[s>>2]=(c[s>>2]|0)+-16;if(n&8|0?(n=i+4|0,z=(c[n>>2]|0)+-1|0,c[n>>2]=z,(z|0)==0):0)Yn(c[a+44>>2]|0,i);if(!m){i=c[s>>2]|0;if((i|0)==(c[r>>2]|0))Jn(a,268620,50337407,268636);r=i+-16|0;c[s>>2]=r;z=c[i+-16>>2]|0;i=c[i+-8>>2]|0;c[r>>2]=2;if(!(z&8))break;s=i+4|0;z=(c[s>>2]|0)+-1|0;c[s>>2]=z;if(z|0)break;Yn(c[a+44>>2]|0,i);break}c[o>>2]=c[(c[x>>2]|0)+924>>2];Lo(a,268970,o);Mo(a,2,0);j=c[s>>2]|0;k=j-(c[r>>2]|0)|0;z=k>>4;o=z+-2|0;if(z>>>0<=1)jo(a,300,-2);i=c[(c[p>>2]|0)+208>>2]|0;if(j>>>0>=(c[q>>2]|0)>>>0)Un(a,4153);c[s>>2]=j+16;c[j>>2]=8;c[j+8>>2]=i;m=i+4|0;c[m>>2]=(c[m>>2]|0)+1;m=c[r>>2]|0;n=(c[s>>2]|0)-m>>4;k=((k|0)<32?n:0)+o|0;if(k>>>0>=n>>>0)jo(a,376,o);if((n|0)==1)jo(a,376,-2);j=n+-2|0;i=c[a+72>>2]|0;if(!i)i=1;else i=c[i+52>>2]&1;No(a,m+(k<<4)|0,m+(n+-1<<4)|0,c[m+(j<<4)>>2]|0,c[m+(j<<4)+4>>2]|0,+h[m+(j<<4)+8>>3],i)|0;j=c[s>>2]|0;if((j+-32|0)>>>0<(c[r>>2]|0)>>>0)Jn(a,268620,50337495,268636);i=j+-16|0;c[s>>2]=i;z=c[j+-16>>2]|0;j=c[j+-8>>2]|0;c[i>>2]=2;if((z&8|0)!=0?(r=j+4|0,z=(c[r>>2]|0)+-1|0,c[r>>2]=z,(z|0)==0):0){Yn(c[a+44>>2]|0,j);i=c[s>>2]|0}r=i+-16|0;c[s>>2]=r;z=c[i+-16>>2]|0;i=c[i+-8>>2]|0;c[r>>2]=2;if(z&8|0?(s=i+4|0,z=(c[s>>2]|0)+-1|0,c[s>>2]=z,(z|0)==0):0)Yn(c[a+44>>2]|0,i)}while(0);s=a+304|0;k=c[(c[s>>2]|0)+348>>2]|0;m=c[k+16>>2]|0;j=1e4;i=f;while(1){if(go(a,i,k,m,t,2)|0){u=42;break}if(!j)break;i=c[i+20>>2]|0;if(!i)break;else j=j+-1|0}if((u|0)==42){l=y;return}j=c[a+72>>2]|0;i=c[b+76>>2]|0;i=(i|0)<10?i:10;if((g&2|0)==0|(i|0)<1)k=i;else{j=c[j+20>>2]|0;k=i+-1|0}i=k<<1;m=c[x>>2]|0;if(m)i=(c[m+4>>2]|0)==0?i:i+2|0;q=(d|0)!=0;do if(q){m=WO(d)|0;n=a+68|0;if((c[n>>2]|0)>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4300);if((m|0)<0)Jn(a,268620,50335961,268982);else{v=Oo(a,d,m)|0;z=c[n>>2]|0;c[n>>2]=z+16;c[z>>2]=8;c[z+8>>2]=v;v=v+4|0;c[v>>2]=(c[v>>2]|0)+1;v=i+2|0;break}}else v=i;while(0);n=vo(a,48)|0;r=a+44|0;i=c[r>>2]|0;c[n>>2]=272679041;i=i+24|0;m=c[i>>2]|0;if(m|0)c[m+12>>2]=n;c[n+12>>2]=0;c[n+8>>2]=m;c[i>>2]=n;i=c[a+132>>2]|0;c[n+20>>2]=i;if(i|0){z=i+4|0;c[z>>2]=(c[z>>2]|0)+1}p=a+68|0;m=c[p>>2]|0;c[m>>2]=9;c[m+8>>2]=n;m=n+4|0;c[m>>2]=(c[m>>2]|0)+1;m=c[p>>2]|0;o=a+64|0;c[p>>2]=m+16;m=c[m+8>>2]|0;io(a,m,0,v,0,0);c[m+40>>2]=v;i=c[m+24>>2]|0;i=(c[m+16>>2]|0)+(i*21|0)+(0-i&7)|0;m=c[x>>2]|0;if((m|0)!=0?(w=c[m+4>>2]|0,(w|0)!=0):0){c[i>>2]=8;c[i+8>>2]=w;z=w+4|0;c[z>>2]=(c[z>>2]|0)+1;A=+((c[(c[x>>2]|0)+924>>2]|0)>>>0);c[i+16>>2]=0;h[i+24>>3]=A;i=i+32|0}if(q){z=c[(c[p>>2]|0)+-24>>2]|0;c[i>>2]=8;c[i+8>>2]=z;z=z+4|0;c[z>>2]=(c[z>>2]|0)+1;c[i+16>>2]=0;h[i+24>>3]=+(e|0)+(g&1|0?4294967296.0:0.0);i=i+32|0}if((k|0)>0){n=j;while(1){m=k;k=k+-1|0;c[i>>2]=c[n>>2];c[i+4>>2]=c[n+4>>2];c[i+8>>2]=c[n+8>>2];c[i+12>>2]=c[n+12>>2];if(c[i>>2]&8|0){z=(c[i+8>>2]|0)+4|0;c[z>>2]=(c[z>>2]|0)+1}j=c[n+16>>2]|0;if((j|0)!=0?(c[j>>2]&2048|0)!=0:0){j=(c[n+36>>2]|0)-(c[j+48>>2]|0)>>2;j=(j|0)==0?0:j+-1|0}else j=0;A=+(j>>>0)+ +((c[n+52>>2]|0)>>>0)*4294967296.0;c[i+16>>2]=0;h[i+24>>3]=A;if((m|0)<=1)break;else{n=c[n+20>>2]|0;i=i+32|0}}}if(q){j=c[o>>2]|0;k=(c[p>>2]|0)-j>>4;i=k+-2|0;if(k>>>0<=1)jo(a,376,-2);e=j+(i<<4)|0;g=j+(k+-1<<4)|0;z=c[e>>2]|0;i=c[j+(i<<4)+8>>2]|0;QQ(e|0,e+16|0,g-e|0)|0;c[g>>2]=2;c[p>>2]=(c[p>>2]|0)+-16;if(z&8|0?(g=i+4|0,z=(c[g>>2]|0)+-1|0,c[g>>2]=z,(z|0)==0):0)Yn(c[r>>2]|0,i)}z=c[o>>2]|0;i=(c[p>>2]|0)-z>>4;i=i>>>0>1?z+(i+-2<<4)|0:0;i=(i|0)==0?936:i;if((c[i>>2]|0)!=9)In(a,2130,-2,268963);i=c[i+8>>2]|0;if(!i)In(a,2130,-2,268963);fo(a,i,c[(c[s>>2]|0)+348>>2]|0,7);l=y;return}function Jo(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;q=l;l=l+16|0;o=q;p=b+44|0;if(c[(c[p>>2]|0)+76>>2]|0){l=q;return}e=c[b+236>>2]|0;if(!e){l=q;return}k=c[(c[b+304>>2]|0)+(d<<2)>>2]|0;d=c[e+36>>2]|0;m=c[e+24>>2]|0;n=c[e+16>>2]|0;a:do if(d){i=n+(m*21|0)+(0-m&7)+(c[e+32>>2]<<4)|0;g=d+-1|0;h=n+(m<<4)|0;d=0;f=c[k+12>>2]&g;b:while(1){e=c[i+(f<<2)>>2]|0;switch(e|0){case -1:{e=19;break}case -2:{j=10;break}default:if((c[h+(e<<2)>>2]|0)==(k|0)){d=e;e=1}else j=10}if((j|0)==10){j=0;e=0;f=f+1&g}switch(e&31){case 0:break;case 19:{j=32;break b}default:break b}}if((j|0)==32){l=q;return}if(!e){l=q;return}}else{f=n+(m<<4)|0;e=c[e+28>>2]|0;if(!e){l=q;return}else d=0;do{if((c[f+(d<<2)>>2]|0)==(k|0))break a;d=d+1|0}while(d>>>0<e>>>0);l=q;return}while(0);f=n+(d<<4)|0;if((f|0)==0?1:(a[n+(m*20|0)+d>>0]&8)!=0){l=q;return}j=b+68|0;e=c[j>>2]|0;k=b+56|0;if(e>>>0>=(c[k>>2]|0)>>>0)Un(b,4153);c[j>>2]=e+16;c[e>>2]=c[f>>2];c[e+4>>2]=c[f+4>>2];c[e+8>>2]=c[f+8>>2];c[e+12>>2]=c[f+12>>2];if(c[f>>2]&8|0){n=(c[n+(d<<4)+8>>2]|0)+4|0;c[n>>2]=(c[n>>2]|0)+1}d=c[j>>2]|0;i=b+64|0;e=c[i>>2]|0;f=d-e>>4;if(f>>>0<=1)jo(b,376,-2);g=e+(f+-2<<4)|0;e=e+(f+-1<<4)|0;f=e-g|0;if(f){c[o>>2]=c[e>>2];c[o+4>>2]=c[e+4>>2];c[o+8>>2]=c[e+8>>2];c[o+12>>2]=c[e+12>>2];QQ(g+16|0,g|0,f|0)|0;c[g>>2]=c[o>>2];c[g+4>>2]=c[o+4>>2];c[g+8>>2]=c[o+8>>2];c[g+12>>2]=c[o+12>>2];d=c[j>>2]|0}if(d>>>0>=(c[k>>2]|0)>>>0)Un(b,4162);d=d+16|0;c[j>>2]=d;e=c[i>>2]|0;f=d-e>>4;if(f>>>0<=1)jo(b,376,-2);h=e+(f+-2<<4)|0;f=e+(f+-1<<4)|0;g=f-h|0;if(g){c[o>>2]=c[f>>2];c[o+4>>2]=c[f+4>>2];c[o+8>>2]=c[f+8>>2];c[o+12>>2]=c[f+12>>2];QQ(h+16|0,h|0,g|0)|0;c[h>>2]=c[o>>2];c[h+4>>2]=c[o+4>>2];c[h+8>>2]=c[o+8>>2];c[h+12>>2]=c[o+12>>2];e=c[i>>2]|0;d=c[j>>2]|0}c[(c[p>>2]|0)+76>>2]=1;c[o>>2]=1;c[o+4>>2]=0;if(d>>>0<(e+48|0)>>>0)Vn(b,268605,315);if(((c[k>>2]|0)+48|0)>>>0<(d+16|0)>>>0)Vn(b,268605,315);Xn(b,14,o,3,1)|0;c[(c[p>>2]|0)+76>>2]=0;l=q;return}function Ko(a,b){a=a|0;b=b|0;so(a,-2-(c[b>>2]|0)+((c[a+68>>2]|0)-(c[a+64>>2]|0)>>4)|0,c[b+4>>2]|0)|0;return 1}function Lo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0;e=l;l=l+16|0;f=e;c[f>>2]=d;cp(a,b,f);l=e;return}function Mo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0;w=l;l=l+16|0;h=w;if((b|0)<1){if((b|0)<0)Jn(a,269209,50331667,268636);f=c[(c[a+304>>2]|0)+60>>2]|0;d=a+68|0;e=c[d>>2]|0;if(e>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4153);c[d>>2]=e+16;c[e>>2]=8;c[e+8>>2]=f;a=f+4|0;c[a>>2]=(c[a>>2]|0)+1;l=w;return}r=(d|0)!=0;if(r){d=~b;Eo(a,d)|0;g=a+68|0;f=a+64|0;e=c[f>>2]|0;v=(c[g>>2]|0)-e>>4;d=v+d|0;d=d>>>0<v>>>0?e+(d<<4)|0:0;d=c[(c[((d|0)==0?936:d)+8>>2]|0)+20>>2]|0;e=b+-1|0;if(e|0?d>>>0>(2147483647/(e>>>0)|0)>>>0:0)Jn(a,269209,50331754,269226);d=O(d,e)|0;s=g;t=f;v=g}else{v=a+68|0;d=0;s=v;t=a+64|0}e=b;f=d;do{Eo(a,0-e|0)|0;d=c[s>>2]|0;u=c[t>>2]|0;o=d-u>>4;p=((e|0)>0?o:0)-e|0;p=p>>>0<o>>>0?u+(p<<4)|0:0;u=f;f=(c[(c[((p|0)==0?936:p)+8>>2]|0)+20>>2]|0)+f|0;e=e+-1|0;if(f>>>0<u>>>0|(f|0)<0){i=69;break}}while((e|0)!=0);if((i|0)==69)Jn(a,269209,50331754,269226);if(d>>>0>=(c[a+56>>2]|0)>>>0)Un(a,5237);if(f>>>0>2147483646)Jn(a,268620,50336889,268576);u=a+44|0;d=ap(c[u>>2]|0,f,4,h)|0;if(!d)Mn(a,268620,5246);i=c[v>>2]|0;c[i>>2]=10;c[i+8>>2]=d;d=d+4|0;c[d>>2]=(c[d>>2]|0)+1;d=(c[v>>2]|0)+16|0;c[v>>2]=d;i=c[h>>2]|0;p=-2-b|0;o=(p|0)<0;a:do if(r){e=0;h=b;while(1){if((h|0)!=(b|0)){n=c[t>>2]|0;m=(c[s>>2]|0)-n>>4;d=(o?m:0)+p|0;d=d>>>0<m>>>0?n+(d<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)!=8){i=29;break}d=c[d+8>>2]|0;if(!d){i=29;break}n=d+20|0;PQ(i+e|0,d+28|0,c[n>>2]|0)|0;e=(c[n>>2]|0)+e|0}f=~h;n=c[t>>2]|0;m=(c[s>>2]|0)-n>>4;d=((h|0)>-1?m:0)+f|0;d=d>>>0<m>>>0?n+(d<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)!=8){q=f;i=33;break}g=c[d+8>>2]|0;if(!g){q=f;i=33;break}d=g+20|0;PQ(i+e|0,g+28|0,c[d>>2]|0)|0;h=h+-1|0;if(!h)break a;else e=(c[d>>2]|0)+e|0}if((i|0)==29)In(a,2101,p,287721);else if((i|0)==33)In(a,2101,q,287721)}else{e=~b;q=c[t>>2]|0;h=d-q>>4;d=((b|0)>-1?h:0)+e|0;d=d>>>0<h>>>0?q+(d<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==8){k=d;m=0;n=b;j=e}else{q=e;In(a,2101,q,287721)}while(1){d=c[k+8>>2]|0;if(!d){q=j;i=33;break}f=d+20|0;PQ(i+m|0,d+28|0,c[f>>2]|0)|0;d=n;n=n+-1|0;if(!n)break a;e=0-d|0;q=c[t>>2]|0;j=(c[s>>2]|0)-q>>4;k=((n|0)>-1?j:0)-d|0;k=k>>>0<j>>>0?q+(k<<4)|0:0;k=(k|0)==0?936:k;if((c[k>>2]|0)!=8){q=e;i=33;break}else{m=(c[f>>2]|0)+m|0;j=e}}if((i|0)==33)In(a,2101,q,287721)}while(0);if(r){e=c[t>>2]|0;f=(c[s>>2]|0)-e>>4;if(!f)jo(a,376,-1);g=e+(f+-1<<4)|0;d=(o?f:0)+p|0;if(d>>>0>=f>>>0)jo(a,376,p);q=e+(d<<4)|0;r=c[q>>2]|0;f=c[e+(d<<4)+8>>2]|0;c[q>>2]=c[g>>2];c[q+4>>2]=c[g+4>>2];c[q+8>>2]=c[g+8>>2];c[q+12>>2]=c[g+12>>2];c[g>>2]=2;d=(c[v>>2]|0)+-16|0;c[v>>2]=d;e=d;if((r&8|0)!=0?(q=f+4|0,r=(c[q>>2]|0)+-1|0,c[q>>2]=r,(r|0)==0):0){Yn(c[u>>2]|0,f);d=c[s>>2]|0;e=d}if(e-(c[t>>2]|0)>>4>>>0<b>>>0)Jn(a,268620,50337319,268636);f=d+(0-b<<4)|0;do{b=c[d+-16>>2]|0;e=c[d+-8>>2]|0;d=d+-16|0;c[d>>2]=2;if(b&8|0?(t=e+4|0,b=(c[t>>2]|0)+-1|0,c[t>>2]=b,(b|0)==0):0)bo(c[u>>2]|0,e)}while((d|0)!=(f|0));c[v>>2]=f;d=c[u>>2]|0;if(c[d+32>>2]|0)Tn(d)}else{e=~b;f=c[t>>2]|0;g=(c[s>>2]|0)-f>>4;if(!g)jo(a,376,-1);h=f+(g+-1<<4)|0;d=((b|0)>-1?g:0)+e|0;if(d>>>0>=g>>>0)jo(a,376,e);e=f+(d<<4)|0;r=c[e>>2]|0;f=c[f+(d<<4)+8>>2]|0;c[e>>2]=c[h>>2];c[e+4>>2]=c[h+4>>2];c[e+8>>2]=c[h+8>>2];c[e+12>>2]=c[h+12>>2];c[h>>2]=2;e=(c[v>>2]|0)+-16|0;c[v>>2]=e;d=e;if((r&8|0)!=0?(q=f+4|0,r=(c[q>>2]|0)+-1|0,c[q>>2]=r,(r|0)==0):0){Yn(c[u>>2]|0,f);e=c[s>>2]|0;d=e}if(d-(c[t>>2]|0)>>4>>>0<(b+-1|0)>>>0)Jn(a,268620,50337319,268636);b=1-b|0;d=e+(b<<4)|0;if(!b)d=e;else do{b=c[e+-16>>2]|0;f=c[e+-8>>2]|0;e=e+-16|0;c[e>>2]=2;if(b&8|0?(t=f+4|0,b=(c[t>>2]|0)+-1|0,c[t>>2]=b,(b|0)==0):0)bo(c[u>>2]|0,f)}while((e|0)!=(d|0));c[v>>2]=d;d=c[u>>2]|0;if(c[d+32>>2]|0)Tn(d)}bp(a);l=w;return}function No(b,e,f,g,i,k,m){b=b|0;e=e|0;f=f|0;g=g|0;i=i|0;k=+k;m=m|0;var n=0,o=0,p=0.0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=0,L=0,M=0,N=0;N=l;l=l+112|0;C=N+64|0;q=N+56|0;J=N+40|0;I=N+96|0;H=N+24|0;G=N+8|0;M=N;K=N+72|0;c[H>>2]=c[e>>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[G>>2]=c[f>>2];c[G+4>>2]=c[f+4>>2];c[G+8>>2]=c[f+8>>2];c[G+12>>2]=c[f+12>>2];h[M>>3]=k;h[j>>3]=k;r=c[j>>2]|0;a:do switch(c[H>>2]|0){case 3:case 2:{M=yo(b,G)|0;g=yo(b,H)|0;c[q>>2]=M;c[q+4>>2]=g;_n(b,268713,100666682,269021,q);break}case 4:{q=0;r=c[b+148>>2]|0;L=194;break}case 8:{f=c[H+8>>2]|0;e=b+68|0;n=c[e>>2]|0;if(n>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4153);c[e>>2]=n+16;c[n>>2]=c[G>>2];c[n+4>>2]=c[G+4>>2];c[n+8>>2]=c[G+8>>2];c[n+12>>2]=c[G+12>>2];if(c[G>>2]&8|0){z=(c[G+8>>2]|0)+4|0;c[z>>2]=(c[z>>2]|0)+1}n=c[e>>2]|0;do if((c[n+-16>>2]|0)!=8){po(b,-1,1);o=b+64|0;z=c[o>>2]|0;n=(c[e>>2]|0)-z>>4;n=n|0?z+(n+-1<<4)|0:0;n=(n|0)==0?936:n;if((c[n>>2]|0)==8?(u=c[n+8>>2]|0,u|0):0){n=u;break}Eo(b,-1)|0;z=c[o>>2]|0;n=(c[e>>2]|0)-z>>4;n=n|0?z+(n+-1<<4)|0:0;n=(n|0)==0?936:n;if((c[n>>2]|0)==8)n=c[n+8>>2]|0;else n=0}else n=c[n+-8>>2]|0;while(0);o=c[n+16>>2]|0;if(c[f>>2]&512|0){v=n;w=0;n=c[b+252>>2]|0;s=o;L=205;break a}if((n|0)!=(c[(c[b+304>>2]|0)+328>>2]|0)){if((o|0)!=-1?o>>>0<(Po(f)|0)>>>0:0)break a;v=n;w=0;n=c[b+140>>2]|0;s=o;L=205}break}case 9:{w=H+8|0;u=c[w>>2]|0;e=c[u>>2]|0;do if(((e&4227200|0)==4227200?(c[G>>2]|0)==0:0)?(p=+h[G+8>>3],v=~~p>>>0,v=+(v>>>0)==p?v:-1,v>>>0<(c[u+32>>2]|0)>>>0):0){f=u+40|0;if(v>>>0>=(c[f>>2]|0)>>>0){if(c[u+44>>2]|0)break;c[f>>2]=v+1}e=c[u+24>>2]|0;e=(c[u+16>>2]|0)+(e*21|0)+(0-e&7)|0;if(g&8|0){m=r+4|0;c[m>>2]=(c[m>>2]|0)+1}n=e+(v<<4)|0;if(!(c[n>>2]&8)){c[n>>2]=g;c[e+(v<<4)+4>>2]=i;h[e+(v<<4)+8>>3]=+h[M>>3];b=1;l=N;return b|0}o=c[e+(v<<4)+8>>2]|0;c[n>>2]=g;c[e+(v<<4)+4>>2]=i;h[e+(v<<4)+8>>3]=+h[M>>3];M=o+4|0;g=(c[M>>2]|0)+-1|0;c[M>>2]=g;if(g|0){b=1;l=N;return b|0}Yn(c[b+44>>2]|0,o);b=1;l=N;return b|0}while(0);if((((g|0)==0&(e&8192|0)!=0?a[u+58>>0]|0:0)?(c[G>>2]|0)==0:0)?(p=+h[G+8>>3],s=~~p>>>0,s=+(s>>>0)==p?s:-1,t=d[u+56>>0]|0,s>>>0<(c[u+52>>2]|0)>>>t>>>0):0){f=s<<t;o=1<<t;e=b+68|0;n=c[e>>2]|0;if(n>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4153);c[e>>2]=n+16;c[n>>2]=0;c[n+4>>2]=i;h[n+8>>3]=+h[M>>3];n=c[u+40>>2]|0;if(n|0?(x=c[u+48>>2]|0,(f+o+x|0)>>>0<=(c[n+16>>2]|0)>>>0):0){if(!(c[n>>2]&128))n=n+24|0;else n=c[n+20>>2]|0;Qo(b,a[u+57>>0]|0,n+x+f|0,o)}n=c[e>>2]|0;M=n+-16|0;c[e>>2]=M;g=c[n+-16>>2]|0;n=c[n+-8>>2]|0;c[M>>2]=2;if(!(g&8)){b=1;l=N;return b|0}M=n+4|0;g=(c[M>>2]|0)+-1|0;c[M>>2]=g;if(g|0){b=1;l=N;return b|0}Yn(c[b+44>>2]|0,n);b=1;l=N;return b|0}if(!(e&33554432)){q=u;r=u;L=194}else{s=c[u+44>>2]|0;u=c[u+40>>2]|0;if(!((c[G>>2]|0)==8?(c[c[G+8>>2]>>2]&1024|0)!=0:0))L=50;do if((L|0)==50){x=b+68|0;q=c[x>>2]|0;e=c[b+52>>2]|0;f=q-e+832|0;e=e+f|0;v=b+56|0;r=c[v>>2]|0;do if(r>>>0<e>>>0)if((c[b+60>>2]|0)>>>0<e>>>0){lo(b,f,1)|0;q=c[x>>2]|0;e=c[v>>2]|0;break}else{c[v>>2]=e;break}else e=r;while(0);if(q>>>0>=e>>>0)Un(b,4153);c[x>>2]=q+16;c[q>>2]=9;c[q+8>>2]=s;e=s+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[x>>2]|0;t=b+64|0;r=e-(c[t>>2]|0)|0;L=r>>4;s=L+-1|0;if(!L)jo(b,300,-1);f=c[(c[b+304>>2]|0)+332>>2]|0;if(e>>>0>=(c[v>>2]|0)>>>0)Un(b,4153);c[x>>2]=e+16;c[e>>2]=8;c[e+8>>2]=f;f=f+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[t>>2]|0;q=(c[x>>2]|0)-f>>4;e=((r|0)<16?q:0)+s|0;if(e>>>0>=q>>>0)jo(b,376,s);r=ro(b,f+(e<<4)|0,f+(q+-1<<4)|0)|0;f=c[t>>2]|0;q=(c[x>>2]|0)-f>>4;e=q+-2|0;if(q>>>0<=1)jo(b,376,-2);s=f+(e<<4)|0;y=f+(q+-1<<4)|0;L=c[s>>2]|0;e=c[f+(e<<4)+8>>2]|0;QQ(s|0,s+16|0,y-s|0)|0;c[y>>2]=2;c[x>>2]=(c[x>>2]|0)+-16;if(L&8|0?(y=e+4|0,L=(c[y>>2]|0)+-1|0,c[y>>2]=L,(L|0)==0):0)Yn(c[b+44>>2]|0,e);if(!r){e=c[x>>2]|0;n=e+-16|0;c[x>>2]=n;L=c[e+-16>>2]|0;e=c[e+-8>>2]|0;c[n>>2]=2;if((L&8|0)!=0?(z=e+4|0,L=(c[z>>2]|0)+-1|0,c[z>>2]=L,(L|0)==0):0){Yn(c[b+44>>2]|0,e);n=c[x>>2]|0}z=n+-16|0;c[x>>2]=z;L=c[n+-16>>2]|0;n=c[n+-8>>2]|0;c[z>>2]=2;if(!(L&8))break;z=n+4|0;L=(c[z>>2]|0)+-1|0;c[z>>2]=L;if(L|0)break;Yn(c[b+44>>2]|0,n);break}o=c[x>>2]|0;e=c[t>>2]|0;f=o-e>>4;if(f>>>0<=1)jo(b,376,-2);q=e+(f+-2<<4)|0;e=e+(f+-1<<4)|0;f=e-q|0;if(f){c[J>>2]=c[e>>2];c[J+4>>2]=c[e+4>>2];c[J+8>>2]=c[e+8>>2];c[J+12>>2]=c[e+12>>2];QQ(q+16|0,q|0,f|0)|0;c[q>>2]=c[J>>2];c[q+4>>2]=c[J+4>>2];c[q+8>>2]=c[J+8>>2];c[q+12>>2]=c[J+12>>2];o=c[x>>2]|0}f=u;if(o>>>0>=(c[v>>2]|0)>>>0)Un(b,4153);c[x>>2]=o+16;c[o>>2]=9;c[o+8>>2]=u;o=u+4|0;c[o>>2]=(c[o>>2]|0)+1;o=c[x>>2]|0;if(o>>>0>=(c[v>>2]|0)>>>0)Un(b,4153);c[x>>2]=o+16;c[o>>2]=c[G>>2];c[o+4>>2]=c[G+4>>2];c[o+8>>2]=c[G+8>>2];c[o+12>>2]=c[G+12>>2];if(c[G>>2]&8|0){L=(c[G+8>>2]|0)+4|0;c[L>>2]=(c[L>>2]|0)+1}o=c[x>>2]|0;if(o>>>0>=(c[v>>2]|0)>>>0)Un(b,4153);c[x>>2]=o+16;c[o>>2]=g;c[o+4>>2]=i;k=+h[M>>3];h[o+8>>3]=k;if(g&8|0){h[j>>3]=k;L=(c[j>>2]|0)+4|0;c[L>>2]=(c[L>>2]|0)+1}o=c[x>>2]|0;if(o>>>0>=(c[v>>2]|0)>>>0)Un(b,4153);c[x>>2]=o+16;c[o>>2]=c[H>>2];c[o+4>>2]=c[H+4>>2];c[o+8>>2]=c[H+8>>2];c[o+12>>2]=c[H+12>>2];if(c[H>>2]&8|0){L=(c[w>>2]|0)+4|0;c[L>>2]=(c[L>>2]|0)+1}o=(c[x>>2]|0)-(c[t>>2]|0)|0;if((o|0)<96)Vn(b,268605,55);so(b,(o>>>4)+-6|0,0)|0;L=Ro(b,-1)|0;o=c[x>>2]|0;e=o+-16|0;c[x>>2]=e;c[e>>2]=2;if(!L)if(!m){b=0;l=N;return b|0}else Jn(b,268713,100667468,269052);if(e>>>0>=(c[v>>2]|0)>>>0)Un(b,4153);c[x>>2]=o;c[e>>2]=c[G>>2];c[e+4>>2]=c[G+4>>2];c[e+8>>2]=c[G+8>>2];c[e+12>>2]=c[G+12>>2];if(c[G>>2]&8|0){m=(c[G+8>>2]|0)+4|0;c[m>>2]=(c[m>>2]|0)+1}o=c[x>>2]|0;do if((c[o+-16>>2]|0)==8)n=c[o+-8>>2]|0;else{po(b,-1,1);m=c[t>>2]|0;o=(c[x>>2]|0)-m>>4;o=o|0?m+(o+-1<<4)|0:0;o=(o|0)==0?936:o;if((c[o>>2]|0)==8?(n=c[o+8>>2]|0,n|0):0)break;Eo(b,-1)|0;m=c[t>>2]|0;n=(c[x>>2]|0)-m>>4;n=n|0?m+(n+-1<<4)|0:0;n=(n|0)==0?936:n;if((c[n>>2]|0)!=8){n=0;break}n=c[n+8>>2]|0}while(0);if(!(go(b,f,n,c[n+16>>2]|0,K,1)|0)){n=c[x>>2]|0;M=n+-16|0;c[x>>2]=M;g=c[n+-16>>2]|0;n=c[n+-8>>2]|0;c[M>>2]=2;if(!(g&8)){b=1;l=N;return b|0}M=n+4|0;g=(c[M>>2]|0)+-1|0;c[M>>2]=g;if(g|0){b=1;l=N;return b|0}Yn(c[b+44>>2]|0,n);b=1;l=N;return b|0}q=c[x>>2]|0;e=c[t>>2]|0;n=q-e>>4;if(!n)jo(b,376,-1);o=n+-1|0;f=c[K>>2]|0;if(!(f&13)){n=c[e+(o<<4)>>2]|0;b:do if(!(n|g)){p=+h[M>>3];k=+h[e+(o<<4)+8>>3];n=iP(p)|0;o=iP(k)|0;if(!(p==k)){z=(o|n|0)==0&1;break}if(!((n|0)==2&(o|0)==2)){z=1;break}h[j>>3]=k;g=c[j>>2]|0;z=c[j+4>>2]|0;h[j>>3]=p;z=JQ(g^c[j>>2]|0,z^c[j+4>>2]|0,63)|0;z=z^1}else{if((n|0)!=(g|0)){z=0;break}switch(g|0){case 3:case 2:{z=1;break b}case 4:{z=(c[M>>2]|0)==(c[e+(o<<4)+8>>2]|0)&1;break b}case 5:{z=(c[M>>2]|0)==(c[e+(o<<4)+8>>2]|0)&1;break b}case 9:case 8:{z=(c[M>>2]|0)==(c[e+(o<<4)+8>>2]|0)&1;break b}case 10:{z=(c[M>>2]|0)==(c[e+(o<<4)+8>>2]|0)&1;break b}case 6:{if((c[M>>2]|0)==(c[e+(o<<4)+8>>2]|0))n=(c[e+(o<<4)+4>>2]|0)==(i|0);else n=0;z=n&1;break b}default:{}}}while(0);n=(z|0)==0}else n=0;if(n|(f&12|0)==8&(c[K+8>>2]|0)==0)Jn(b,268713,100666820,269052);n=q+-16|0;c[x>>2]=n;g=c[q+-16>>2]|0;o=c[q+-8>>2]|0;c[n>>2]=2;do if(g&8){M=o+4|0;g=(c[M>>2]|0)+-1|0;c[M>>2]=g;if(g|0)break;Yn(c[b+44>>2]|0,o);n=c[x>>2]|0}while(0);M=n+-16|0;c[x>>2]=M;g=c[n+-16>>2]|0;n=c[n+-8>>2]|0;c[M>>2]=2;if(!(g&8)){b=1;l=N;return b|0}M=n+4|0;g=(c[M>>2]|0)+-1|0;c[M>>2]=g;if(g|0){b=1;l=N;return b|0}Yn(c[b+44>>2]|0,n);b=1;l=N;return b|0}while(0);r=u;c[H>>2]=9;c[w>>2]=r;q=r;L=194}break}case 10:{f=c[H+8>>2]|0;q=c[G>>2]|0;if(!q){p=+h[G+8>>3];n=~~p>>>0;if(+(n>>>0)==p){o=0;s=n;t=0;L=150}else L=178}else{e=b+68|0;n=c[e>>2]|0;if(n>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4153);c[e>>2]=n+16;c[n>>2]=c[G>>2];c[n+4>>2]=c[G+4>>2];c[n+8>>2]=c[G+8>>2];c[n+12>>2]=c[G+12>>2];if(q&8|0){L=(c[G+8>>2]|0)+4|0;c[L>>2]=(c[L>>2]|0)+1}n=c[e>>2]|0;do if((c[n+-16>>2]|0)!=8){po(b,-1,1);o=b+64|0;L=c[o>>2]|0;n=(c[e>>2]|0)-L>>4;n=n|0?L+(n+-1<<4)|0:0;n=(n|0)==0?936:n;if((c[n>>2]|0)==8?(w=c[n+8>>2]|0,w|0):0){n=w;break}Eo(b,-1)|0;L=c[o>>2]|0;n=(c[e>>2]|0)-L>>4;n=n|0?L+(n+-1<<4)|0:0;n=(n|0)==0?936:n;if((c[n>>2]|0)==8)n=c[n+8>>2]|0;else n=0}else n=c[n+-8>>2]|0;while(0);o=n;s=c[n+16>>2]|0;t=1;L=150}if((L|0)==150){if((s|0)!=-1)if(s>>>0<(c[f+16>>2]|0)>>>0){if(!(c[f>>2]&128))q=f+24|0;else q=c[f+20>>2]|0;r=b+68|0;n=c[r>>2]|0;if(n>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4153);c[r>>2]=n+16;c[n>>2]=g;c[n+4>>2]=i;k=+h[M>>3];h[n+8>>3]=k;if(g&8|0){h[j>>3]=k;g=(c[j>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}f=b+64|0;n=c[f>>2]|0;o=(c[r>>2]|0)-n>>4;if(!o)jo(b,376,-1);k=+ho(b,n+(o+-1<<4)|0);h[j>>3]=k;n=c[j>>2]|0;o=c[j+4>>2]|0;e=o&2146435072;c:do if((e|0)<2146435072){switch(e|0){case 0:break;default:{L=164;break c}}if((o|0)<0)L=164;else e=0}else switch(e|0){case 2146435072:{e=0;break}default:L=164}while(0);if((L|0)==164){p=+A(+(+B(+k)));p=+TO((o|0)>-1|(o|0)==-1&n>>>0>4294967295?p:-p,4294967296.0);e=~~(p<0.0?p+4294967296.0:p)>>>0}n=c[f>>2]|0;o=(c[r>>2]|0)-n>>4;if(!o)jo(b,376,-1);M=o+-1|0;i=n+(M<<4)|0;g=c[i>>2]|0;M=n+(M<<4)+8|0;n=c[M>>2]|0;c[i>>2]=0;h[M>>3]=+(e>>>0);if(g&8|0?(M=n+4|0,g=(c[M>>2]|0)+-1|0,c[M>>2]=g,(g|0)==0):0)Yn(c[b+44>>2]|0,n);a[q+s>>0]=e;n=c[r>>2]|0;f=n+(~t<<4)|0;o=b+44|0;do{b=c[n+-16>>2]|0;e=c[n+-8>>2]|0;n=n+-16|0;c[n>>2]=2;if(b&8|0?(g=e+4|0,b=(c[g>>2]|0)+-1|0,c[g>>2]=b,(b|0)==0):0)bo(c[o>>2]|0,e)}while((n|0)!=(f|0));c[r>>2]=f;n=c[o>>2]|0;if(!(c[n+32>>2]|0)){b=1;l=N;return b|0}Tn(n);b=1;l=N;return b|0}else e=s;else e=-1;if(!t)L=178}if((L|0)==178){e=b+68|0;n=c[e>>2]|0;if(n>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4153);c[e>>2]=n+16;c[n>>2]=c[G>>2];c[n+4>>2]=c[G+4>>2];c[n+8>>2]=c[G+8>>2];c[n+12>>2]=c[G+12>>2];if(q&8|0){z=(c[G+8>>2]|0)+4|0;c[z>>2]=(c[z>>2]|0)+1}n=c[e>>2]|0;do if((c[n+-16>>2]|0)!=8){po(b,-1,1);o=b+64|0;z=c[o>>2]|0;n=(c[e>>2]|0)-z>>4;n=n|0?z+(n+-1<<4)|0:0;n=(n|0)==0?936:n;if((c[n>>2]|0)==8?(y=c[n+8>>2]|0,y|0):0){n=y;break}Eo(b,-1)|0;z=c[o>>2]|0;n=(c[e>>2]|0)-z>>4;n=n|0?z+(n+-1<<4)|0:0;n=(n|0)==0?936:n;if((c[n>>2]|0)==8)n=c[n+8>>2]|0;else n=0}else n=c[n+-8>>2]|0;while(0);o=n;e=c[n+16>>2]|0}if((o|0)!=(c[(c[b+304>>2]|0)+328>>2]|0)){v=o;w=0;n=c[b+268>>2]|0;s=e;L=205}break}case 5:{q=0;r=c[b+244>>2]|0;L=194;break}case 6:{q=0;r=c[b+124>>2]|0;L=194;break}default:{q=0;r=c[b+156>>2]|0;L=194}}while(0);if((L|0)==194){f=b+68|0;n=c[f>>2]|0;if(n>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4153);c[f>>2]=n+16;c[n>>2]=c[G>>2];c[n+4>>2]=c[G+4>>2];c[n+8>>2]=c[G+8>>2];c[n+12>>2]=c[G+12>>2];if(c[G>>2]&8|0){L=(c[G+8>>2]|0)+4|0;c[L>>2]=(c[L>>2]|0)+1}n=c[f>>2]|0;do if((c[n+-16>>2]|0)!=8){po(b,-1,1);e=b+64|0;L=c[e>>2]|0;n=(c[f>>2]|0)-L>>4;n=n|0?L+(n+-1<<4)|0:0;n=(n|0)==0?936:n;if((c[n>>2]|0)==8?(o=c[n+8>>2]|0,o|0):0)break;Eo(b,-1)|0;L=c[e>>2]|0;n=(c[f>>2]|0)-L>>4;n=n|0?L+(n+-1<<4)|0:0;n=(n|0)==0?936:n;if((c[n>>2]|0)==8)o=c[n+8>>2]|0;else o=0}else o=c[n+-8>>2]|0;while(0);v=o;w=q;n=r;s=c[o+16>>2]|0;L=205}d:do if((L|0)==205){o=1e4;while(1){if(go(b,n,v,s,K,0)|0){L=207;break}if(!o){L=276;break}n=c[n+20>>2]|0;if(!n){L=278;break}else o=o+-1|0}do if((L|0)==207){o=c[K>>2]|0;if(o&8|0){o=c[(c[n+16>>2]|0)+(c[K+12>>2]<<4)+4>>2]|0;if(!o){if(m|0)Jn(b,268713,100667523,269134);g=b+68|0;n=c[g>>2]|0;M=n+-16|0;c[g>>2]=M;g=c[n+-16>>2]|0;n=c[n+-8>>2]|0;c[M>>2]=2;if(!(g&8)){b=0;l=N;return b|0}M=n+4|0;g=(c[M>>2]|0)+-1|0;c[M>>2]=g;if(g|0){b=0;l=N;return b|0}Yn(c[b+44>>2]|0,n);b=0;l=N;return b|0}q=b+68|0;n=c[q>>2]|0;e=b+56|0;if(n>>>0>=(c[e>>2]|0)>>>0)Un(b,4153);c[q>>2]=n+16;c[n>>2]=9;c[n+8>>2]=o;n=o+4|0;c[n>>2]=(c[n>>2]|0)+1;n=c[q>>2]|0;if(n>>>0>=(c[e>>2]|0)>>>0)Un(b,4153);c[q>>2]=n+16;c[n>>2]=c[H>>2];c[n+4>>2]=c[H+4>>2];c[n+8>>2]=c[H+8>>2];c[n+12>>2]=c[H+12>>2];if(c[H>>2]&8|0){m=(c[H+8>>2]|0)+4|0;c[m>>2]=(c[m>>2]|0)+1}n=c[q>>2]|0;if(n>>>0>=(c[e>>2]|0)>>>0)Un(b,4153);c[q>>2]=n+16;c[n>>2]=g;c[n+4>>2]=i;k=+h[M>>3];h[n+8>>3]=k;if(g&8|0){h[j>>3]=k;g=(c[j>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}f=c[q>>2]|0;if(f>>>0>=(c[e>>2]|0)>>>0)Un(b,1093);n=b+64|0;o=c[n>>2]|0;e=f-o>>4;if(e>>>0<=3)jo(b,376,-4);g=o+(e+-4<<4)|0;c[q>>2]=f+16;c[f>>2]=c[g>>2];c[f+4>>2]=c[g+4>>2];c[f+8>>2]=c[g+8>>2];c[f+12>>2]=c[g+12>>2];if(c[f>>2]&8|0){g=(c[f+8>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}n=(c[q>>2]|0)-(c[n>>2]|0)|0;if((n|0)<64)Vn(b,268605,55);so(b,(n>>>4)+-4|0,0)|0;n=c[q>>2]|0;M=n+-16|0;c[q>>2]=M;g=c[n+-16>>2]|0;n=c[n+-8>>2]|0;c[M>>2]=2;if(!(g&8))break;M=n+4|0;g=(c[M>>2]|0)+-1|0;c[M>>2]=g;if(g|0)break;Yn(c[b+44>>2]|0,n);break}if(!w)L=353;else{if((n|0)!=(w|0)){n=c[w>>2]|0;if(!(n&128)){L=358;break}if(!(o&1))break d;else{L=293;break}}if(!(o&1))break d;if(!(o&16)){e=c[K+12>>2]|0;f=c[w+16>>2]|0;q=g&8;n=(q|0)!=0;do if((e|0)>-1){if(n){H=(c[M>>2]|0)+4|0;c[H>>2]=(c[H>>2]|0)+1}n=f+(e<<4)|0;if(!(c[n>>2]&8)){c[n>>2]=g;c[f+(e<<4)+4>>2]=i;h[f+(e<<4)+8>>3]=+h[M>>3];break}o=c[f+(e<<4)+8>>2]|0;c[n>>2]=g;c[f+(e<<4)+4>>2]=i;h[f+(e<<4)+8>>3]=+h[M>>3];G=o+4|0;H=(c[G>>2]|0)+-1|0;c[G>>2]=H;if(!H)Yn(c[b+44>>2]|0,o)}else{e=c[w+24>>2]|0;e=f+(e*21|0)+(0-e&7)|0;f=c[K+20>>2]|0;if(n){H=(c[M>>2]|0)+4|0;c[H>>2]=(c[H>>2]|0)+1}n=e+(f<<4)|0;if(!(c[n>>2]&8)){c[n>>2]=g;c[e+(f<<4)+4>>2]=i;h[e+(f<<4)+8>>3]=+h[M>>3];break}o=c[e+(f<<4)+8>>2]|0;c[n>>2]=g;c[e+(f<<4)+4>>2]=i;h[e+(f<<4)+8>>3]=+h[M>>3];G=o+4|0;H=(c[G>>2]|0)+-1|0;c[G>>2]=H;if(!H)Yn(c[b+44>>2]|0,o)}while(0);if((s|0)==-1)break;if(!(c[w>>2]&16777216))break;r=b+68|0;n=c[r>>2]|0;if(n>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4153);c[r>>2]=n+16;c[n>>2]=g;c[n+4>>2]=i;k=+h[M>>3];h[n+8>>3]=k;if(q|0){h[j>>3]=k;g=(c[j>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}do if(Uo(b,w,v,K,J,I)|0){o=c[r>>2]|0;e=b+64|0;f=c[e>>2]|0;n=o-f>>4;n=n|0?f+(n+-1<<4)|0:0;n=(n|0)==0?936:n;if((c[n>>2]|0)!=8)In(b,2101,-1,287721);q=c[n+8>>2]|0;if(!q)In(b,2101,-1,287721);n=o+-16|0;c[r>>2]=n;g=c[o+-16>>2]|0;o=c[o+-8>>2]|0;c[n>>2]=2;if((g&8|0)!=0?(M=o+4|0,g=(c[M>>2]|0)+-1|0,c[M>>2]=g,(g|0)==0):0){Yn(c[b+44>>2]|0,o);o=c[e>>2]|0;n=c[r>>2]|0}else o=f;n=n-o>>4;if(!n)jo(b,376,-1);else{Vo(b,c[I>>2]|0,0,q,o+(n+-1<<4)|0,m);break}}while(0);n=c[r>>2]|0;M=n+-16|0;c[r>>2]=M;g=c[n+-16>>2]|0;n=c[n+-8>>2]|0;c[M>>2]=2;if(!(g&8))break;M=n+4|0;g=(c[M>>2]|0)+-1|0;c[M>>2]=g;if(g|0)break;Yn(c[b+44>>2]|0,n);break}n=c[w>>2]|0;if(n&4194304|0){q=b+68|0;n=c[q>>2]|0;if(n>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4153);c[q>>2]=n+16;c[n>>2]=g;c[n+4>>2]=i;k=+h[M>>3];h[n+8>>3]=k;if(g&8|0){h[j>>3]=k;g=(c[j>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}f=w+40|0;e=c[f>>2]|0;n=c[q>>2]|0;o=n+-16|0;if(!(c[o>>2]|0))k=+h[n+-8>>3];else k=+ho(b,o);o=~~k>>>0;if(+(o>>>0)!=k)Jn(b,268713,50334677,268733);if(!(c[w+44>>2]|0)){if(o>>>0<e>>>0){n=So(b,w,e,o,0,J)|0;o=c[J>>2]|0}else n=1;c[f>>2]=o}else n=0;o=c[q>>2]|0;M=o+-16|0;c[q>>2]=M;g=c[o+-16>>2]|0;o=c[o+-8>>2]|0;c[M>>2]=2;if(g&8|0?(M=o+4|0,g=(c[M>>2]|0)+-1|0,c[M>>2]=g,(g|0)==0):0)Yn(c[b+44>>2]|0,o);if(n|0)break;if(m|0)Jn(b,268713,100667515,269117);n=c[q>>2]|0;M=n+-16|0;c[q>>2]=M;g=c[n+-16>>2]|0;n=c[n+-8>>2]|0;c[M>>2]=2;if(!(g&8)){b=0;l=N;return b|0}M=n+4|0;g=(c[M>>2]|0)+-1|0;c[M>>2]=g;if(g|0){b=0;l=N;return b|0}Yn(c[b+44>>2]|0,n);b=0;l=N;return b|0}if((n&8192|0?(E=w+40|0,D=d[w+56>>0]|0,s>>>0<(c[w+52>>2]|0)>>>D>>>0):0)?a[w+58>>0]|0:0){r=s<<D;f=1<<D;q=b+68|0;n=c[q>>2]|0;if(n>>>0>=(c[b+56>>2]|0)>>>0)Un(b,4153);c[q>>2]=n+16;c[n>>2]=g;c[n+4>>2]=i;k=+h[M>>3];h[n+8>>3]=k;if(g&8|0){h[j>>3]=k;g=(c[j>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}n=b+64|0;o=c[n>>2]|0;g=(c[q>>2]|0)-o>>4;e=g+-1|0;if(!g)jo(b,300,-1);p=+ho(b,o+(e<<4)|0);M=c[n>>2]|0;i=M+(e<<4)|0;g=c[i>>2]|0;M=M+(e<<4)+8|0;n=c[M>>2]|0;c[i>>2]=0;h[M>>3]=p;if(g&8|0?(M=n+4|0,g=(c[M>>2]|0)+-1|0,c[M>>2]=g,(g|0)==0):0)Yn(c[b+44>>2]|0,n);n=c[E>>2]|0;if(n|0?(F=c[w+48>>2]|0,(r+f+F|0)>>>0<=(c[n+16>>2]|0)>>>0):0){if(!(c[n>>2]&128))n=n+24|0;else n=c[n+20>>2]|0;Qo(b,a[w+57>>0]|0,n+F+r|0,f)}n=c[q>>2]|0;M=n+-16|0;c[q>>2]=M;g=c[n+-16>>2]|0;n=c[n+-8>>2]|0;c[M>>2]=2;if(!(g&8))break;M=n+4|0;g=(c[M>>2]|0)+-1|0;c[M>>2]=g;if(g|0)break;Yn(c[b+44>>2]|0,n);break}if(m|0)ko(b,268713,4235);g=b+68|0;n=c[g>>2]|0;M=n+-16|0;c[g>>2]=M;g=c[n+-16>>2]|0;n=c[n+-8>>2]|0;c[M>>2]=2;if(!(g&8)){b=0;l=N;return b|0}M=n+4|0;g=(c[M>>2]|0)+-1|0;c[M>>2]=g;if(g|0){b=0;l=N;return b|0}Yn(c[b+44>>2]|0,n);b=0;l=N;return b|0}}else if((L|0)==276)Jn(b,268713,50335471,269067);else if((L|0)==278)if(w){n=c[w>>2]|0;if(!(n&128))L=358;else L=293}else L=353;while(0);if((L|0)==293){o=(s|0)!=-1;if(o&(n&4194304|0)!=0?s>>>0>=(c[w+40>>2]|0)>>>0:0)if(!(c[w+44>>2]|0))u=s+1|0;else break;else u=0;do if(!((n&32768|0)==0|o^1)){q=c[w+32>>2]|0;if(s>>>0<q>>>0)n=w+24|0;else{n=w+24|0;r=c[n>>2]|0;if((((q+7|0)>>>3)*9|0)>>>0<s>>>0){if(!q)o=0;else{e=(c[w+16>>2]|0)+(r*21|0)+(0-r&7)|0;o=0;f=0;while(1){o=((c[e>>2]|0)!=7&1)+o|0;f=f+1|0;if((f|0)==(q|0))break;else e=e+16|0}}if(s>>>3<<1>>>0>o>>>0){To(b,w);L=309;break}}io(b,w,r,((s+16|0)>>>3)+s|0,c[w+36>>2]|0,0)}m=c[n>>2]|0;m=(c[w+16>>2]|0)+(m*21|0)+(0-m&7)|0;c[m+(s<<4)>>2]=g;c[m+(s<<4)+4>>2]=i;k=+h[M>>3];h[m+(s<<4)+8>>3]=k;if(g&8|0){h[j>>3]=k;g=(c[j>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}}else{n=w+24|0;L=309}while(0);if((L|0)==309){r=w+28|0;q=c[r>>2]|0;e=c[n>>2]|0;if(q>>>0>=e>>>0){if(!q)o=0;else{o=0;f=0;e=(c[w+16>>2]|0)+(e<<4)|0;while(1){o=((c[e>>2]|0)!=0&1)+o|0;f=f+1|0;if((f|0)==(q|0))break;else e=e+4|0}}f=((o+16|0)>>>3)+o|0;do if(f>>>0>7){if(f>>>0>63){o=2;e=f;do{m=e;e=e>>>6;o=o<<6}while(m>>>0>4095);if(!e)break}else{o=2;e=f}do{e=e>>>1;o=o<<1}while((e|0)!=0)}else o=0;while(0);io(b,w,f,c[w+32>>2]|0,o,0);q=c[r>>2]|0;e=c[n>>2]|0}c[r>>2]=q+1;t=w+16|0;c[(c[t>>2]|0)+(e<<4)+(q<<2)>>2]=v;f=v+4|0;c[f>>2]=(c[f>>2]|0)+1;f=c[w+36>>2]|0;if(!f)o=c[t>>2]|0;else{o=c[t>>2]|0;s=o+(e*21|0)+(0-e&7)+(c[w+32>>2]<<4)|0;r=f+-1|0;e=c[v+12>>2]|0;while(1){e=e&r;f=s+(e<<2)|0;if((c[f>>2]|0)>>>0>4294967293)break;else e=e+1|0}c[f>>2]=q}c[o+(q<<4)>>2]=g;c[o+(q<<4)+4>>2]=i;k=+h[M>>3];h[o+(q<<4)+8>>3]=k;if(g&8|0){h[j>>3]=k;g=(c[j>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}a[(c[t>>2]|0)+((c[n>>2]|0)*20|0)+q>>0]=7}if(u|0)c[w+40>>2]=u}else if((L|0)==353){if(m|0){M=yo(b,G)|0;g=yo(b,H)|0;c[C>>2]=M;c[C+4>>2]=g;_n(b,268713,100667481,269021,C)}g=b+68|0;n=c[g>>2]|0;M=n+-16|0;c[g>>2]=M;g=c[n+-16>>2]|0;n=c[n+-8>>2]|0;c[M>>2]=2;if(!(g&8)){b=0;l=N;return b|0}M=n+4|0;g=(c[M>>2]|0)+-1|0;c[M>>2]=g;if(g|0){b=0;l=N;return b|0}Yn(c[b+44>>2]|0,n);b=0;l=N;return b|0}else if((L|0)==358){if(m|0)Jn(b,268713,100667490,269089);g=b+68|0;n=c[g>>2]|0;M=n+-16|0;c[g>>2]=M;g=c[n+-16>>2]|0;n=c[n+-8>>2]|0;c[M>>2]=2;if(!(g&8)){b=0;l=N;return b|0}M=n+4|0;g=(c[M>>2]|0)+-1|0;c[M>>2]=g;if(g|0){b=0;l=N;return b|0}Yn(c[b+44>>2]|0,n);b=0;l=N;return b|0}g=b+68|0;n=c[g>>2]|0;M=n+-16|0;c[g>>2]=M;g=c[n+-16>>2]|0;n=c[n+-8>>2]|0;c[M>>2]=2;if(!(g&8)){b=1;l=N;return b|0}M=n+4|0;g=(c[M>>2]|0)+-1|0;c[M>>2]=g;if(g|0){b=1;l=N;return b|0}Yn(c[b+44>>2]|0,n);b=1;l=N;return b|0}while(0);if(m|0)Jn(b,268713,100667498,269104);g=b+68|0;n=c[g>>2]|0;M=n+-16|0;c[g>>2]=M;g=c[n+-16>>2]|0;n=c[n+-8>>2]|0;c[M>>2]=2;if(!(g&8)){b=0;l=N;return b|0}M=n+4|0;g=(c[M>>2]|0)+-1|0;c[M>>2]=g;if(g|0){b=0;l=N;return b|0}Yn(c[b+44>>2]|0,n);b=0;l=N;return b|0}function Oo(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0,i=0;i=c[a+44>>2]|0;f=c[i+148>>2]^e;h=(e>>>5)+1|0;if(h>>>0>e>>>0)g=f;else{g=e;do{f=(d[b+(g+-1)>>0]|0)+(f*33|0)|0;g=g-h|0}while(g>>>0>=h>>>0);g=f}f=c[(c[i+176>>2]|0)+((c[i+180>>2]&g)<<2)>>2]|0;a:do if(f|0){while(1){if(((c[f+12>>2]|0)==(g|0)?(c[f+20>>2]|0)==(e|0):0)?(KN(b,f+28|0,e)|0)==0:0)break;f=c[f+8>>2]|0;if(!f)break a}return f|0}while(0);f=no(i,b,e,g)|0;if(!f)Mn(a,268998,803);else{a=f;return a|0}return 0}function Po(b){b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0;j=b+24|0;d=c[j>>2]|0;if(d|0){j=d;return j|0}d=b+28|0;i=c[b+20>>2]|0;h=d+i|0;a:do if(i>>>0<16)e=0;else{f=d;if(!(f&3))e=0;else{e=0;while(1){g=d+1|0;f=a[d>>0]|0;e=(f<<24>>24<0&(f&255)<192&1)+e|0;f=g;if(!(f&3)){d=g;break}else d=g}}g=d+(h-f&-4)|0;while(1){do{if((d|0)==(g|0)){d=g;break a}f=d;d=d+4|0;f=c[f>>2]|0}while(!(f&-2139062144|0));f=f^-2139062144;e=(f>>>0<1073741824&1)+e+((f&12582912|0)==0&1)+((f&49152|0)==0&1)+((f&192|0)==0&1)|0}}while(0);if((d|0)!=(h|0))do{g=a[d>>0]|0;d=d+1|0;e=(g<<24>>24<0&(g&255)<192&1)+e|0}while((d|0)!=(h|0));d=i-e|0;c[j>>2]=d;if(e|0){j=d;return j|0}c[b>>2]=c[b>>2]|128;j=d;return j|0}function Qo(d,e,f,i){d=d|0;e=e|0;f=f|0;i=i|0;var k=0,m=0,n=0.0,o=0,p=0,q=0,r=0,s=0;s=l;l=l+16|0;r=s;do switch(e<<24>>24){case 0:{p=d+68|0;o=d+64|0;e=c[o>>2]|0;k=(c[p>>2]|0)-e>>4;if(!k)jo(d,376,-1);n=+ho(d,e+(k+-1<<4)|0);h[j>>3]=n;e=c[j>>2]|0;k=c[j+4>>2]|0;m=k&2146435072;a:do if((m|0)<2146435072){switch(m|0){case 0:break;default:{q=7;break a}}if((k|0)<0)q=7;else m=0}else switch(m|0){case 2146435072:{m=0;break}default:q=7}while(0);if((q|0)==7){n=+A(+(+B(+n)));n=+TO((k|0)>-1|(k|0)==-1&e>>>0>4294967295?n:-n,4294967296.0);m=~~(n<0.0?n+4294967296.0:n)>>>0}k=c[o>>2]|0;e=(c[p>>2]|0)-k>>4;if(!e)jo(d,376,-1);p=e+-1|0;o=k+(p<<4)|0;q=c[o>>2]|0;p=k+(p<<4)+8|0;e=c[p>>2]|0;c[o>>2]=0;h[p>>3]=+(m>>>0);if(q&8|0?(p=e+4|0,q=(c[p>>2]|0)+-1|0,c[p>>2]=q,(q|0)==0):0)Yn(c[d+44>>2]|0,e);a[r>>0]=m;PQ(f|0,r|0,i|0)|0;l=s;return}case 1:{k=d+64|0;e=c[k>>2]|0;q=(c[d+68>>2]|0)-e>>4;m=q+-1|0;if(!q)jo(d,300,-1);n=+ho(d,e+(m<<4)|0);p=c[k>>2]|0;o=p+(m<<4)|0;q=c[o>>2]|0;p=p+(m<<4)+8|0;e=c[p>>2]|0;c[o>>2]=0;h[p>>3]=n;if(q&8|0?(p=e+4|0,q=(c[p>>2]|0)+-1|0,c[p>>2]=q,(q|0)==0):0)Yn(c[d+44>>2]|0,e);do if(!(n<=0.0))if(!(n>=255.0)){h[j>>3]=n;d=c[j+4>>2]&2147483647;if(!(d>>>0>2146435072|(d|0)==2146435072&(c[j>>2]|0)>>>0>0))if(n-+A(+n)==.5){e=(~~n&255)+1&254;break}else{e=~~(n+.5)&255;break}else e=0}else e=-1;else e=0;while(0);a[r>>0]=e;PQ(f|0,r|0,i|0)|0;l=s;return}case 2:{a[r>>0]=$o(d,-1)|0;PQ(f|0,r|0,i|0)|0;l=s;return}case 3:{p=d+68|0;o=d+64|0;e=c[o>>2]|0;k=(c[p>>2]|0)-e>>4;if(!k)jo(d,376,-1);n=+ho(d,e+(k+-1<<4)|0);h[j>>3]=n;e=c[j>>2]|0;k=c[j+4>>2]|0;m=k&2146435072;b:do if((m|0)<2146435072){switch(m|0){case 0:break;default:{q=32;break b}}if((k|0)<0)q=32;else m=0}else switch(m|0){case 2146435072:{m=0;break}default:q=32}while(0);if((q|0)==32){n=+A(+(+B(+n)));n=+TO((k|0)>-1|(k|0)==-1&e>>>0>4294967295?n:-n,4294967296.0);m=~~(n<0.0?n+4294967296.0:n)>>>0}k=c[o>>2]|0;e=(c[p>>2]|0)-k>>4;if(!e)jo(d,376,-1);p=e+-1|0;o=k+(p<<4)|0;q=c[o>>2]|0;p=k+(p<<4)+8|0;e=c[p>>2]|0;c[o>>2]=0;h[p>>3]=+(m>>>0);if(q&8|0?(p=e+4|0,q=(c[p>>2]|0)+-1|0,c[p>>2]=q,(q|0)==0):0)Yn(c[d+44>>2]|0,e);b[r>>1]=m;PQ(f|0,r|0,i|0)|0;l=s;return}case 4:{b[r>>1]=$o(d,-1)|0;PQ(f|0,r|0,i|0)|0;l=s;return}case 5:{p=d+68|0;o=d+64|0;e=c[o>>2]|0;k=(c[p>>2]|0)-e>>4;if(!k)jo(d,376,-1);n=+ho(d,e+(k+-1<<4)|0);h[j>>3]=n;e=c[j>>2]|0;k=c[j+4>>2]|0;m=k&2146435072;c:do if((m|0)<2146435072){switch(m|0){case 0:break;default:{q=45;break c}}if((k|0)<0)q=45;else m=0}else switch(m|0){case 2146435072:{m=0;break}default:q=45}while(0);if((q|0)==45){n=+A(+(+B(+n)));n=+TO((k|0)>-1|(k|0)==-1&e>>>0>4294967295?n:-n,4294967296.0);m=~~(n<0.0?n+4294967296.0:n)>>>0}k=c[o>>2]|0;e=(c[p>>2]|0)-k>>4;if(!e)jo(d,376,-1);p=e+-1|0;o=k+(p<<4)|0;q=c[o>>2]|0;p=k+(p<<4)+8|0;e=c[p>>2]|0;c[o>>2]=0;h[p>>3]=+(m>>>0);if(q&8|0?(p=e+4|0,q=(c[p>>2]|0)+-1|0,c[p>>2]=q,(q|0)==0):0)Yn(c[d+44>>2]|0,e);c[r>>2]=m;PQ(f|0,r|0,i|0)|0;l=s;return}case 6:{c[r>>2]=$o(d,-1)|0;PQ(f|0,r|0,i|0)|0;l=s;return}case 7:{k=d+64|0;e=c[k>>2]|0;q=(c[d+68>>2]|0)-e>>4;m=q+-1|0;if(!q)jo(d,300,-1);n=+ho(d,e+(m<<4)|0);p=c[k>>2]|0;o=p+(m<<4)|0;q=c[o>>2]|0;p=p+(m<<4)+8|0;e=c[p>>2]|0;c[o>>2]=0;h[p>>3]=n;if(q&8|0?(p=e+4|0,q=(c[p>>2]|0)+-1|0,c[p>>2]=q,(q|0)==0):0)Yn(c[d+44>>2]|0,e);g[r>>2]=n;PQ(f|0,r|0,i|0)|0;l=s;return}case 8:{k=d+64|0;e=c[k>>2]|0;q=(c[d+68>>2]|0)-e>>4;m=q+-1|0;if(!q)jo(d,300,-1);n=+ho(d,e+(m<<4)|0);p=c[k>>2]|0;o=p+(m<<4)|0;q=c[o>>2]|0;p=p+(m<<4)+8|0;e=c[p>>2]|0;c[o>>2]=0;h[p>>3]=n;if(q&8|0?(p=e+4|0,q=(c[p>>2]|0)+-1|0,c[p>>2]=q,(q|0)==0):0)Yn(c[d+44>>2]|0,e);h[r>>3]=n;PQ(f|0,r|0,i|0)|0;l=s;return}default:{}}while(0)}function Ro(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0;g=c[a+64>>2]|0;i=(c[a+68>>2]|0)-g>>4;f=((b|0)<0?i:0)+b|0;if(f>>>0>=i>>>0)jo(a,300,b);h=g+(f<<4)|0;e=c[h>>2]|0;switch(e|0){case 3:case 2:{d=0;i=11;break}case 4:{b=g+(f<<4)+8|0;d=c[b>>2]|0;i=9;break}case 8:{d=(c[(c[g+(f<<4)+8>>2]|0)+20>>2]|0)!=0&1;i=10;break}case 10:case 9:{d=1;i=10;break}case 5:{b=g+(f<<4)+8|0;d=(c[b>>2]|0)!=0&1;i=9;break}case 6:{d=1;b=g+(f<<4)+8|0;i=9;break}default:{d=g+(f<<4)+8|0;i=c[d>>2]|0;d=c[d+4>>2]|0;d=(((i|0)==0&(d&2147483647|0)==0|((i|0)!=0|(d&1048575|0)!=0)&(0==0&(d&2146435072|0)==2146435072))^1)&1;i=11}}if((i|0)==9){c[h>>2]=4;c[b>>2]=d;i=d;return i|0}else if((i|0)==10){i=g+(f<<4)+8|0;b=c[i>>2]|0;c[h>>2]=4;c[i>>2]=d}else if((i|0)==11){i=g+(f<<4)+8|0;b=c[i>>2]|0;c[h>>2]=4;c[i>>2]=d;if(!(e&8)){i=d;return i|0}}h=b+4|0;i=(c[h>>2]|0)+-1|0;c[h>>2]=i;if(i|0){i=d;return i|0}Yn(c[a+44>>2]|0,b);i=d;return i|0}function So(b,d,e,f,g,h){b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;h=h|0;var i=0,j=0,k=0,l=0,m=0,n=0,o=0;if(c[d>>2]&32768|0){o=c[d+32>>2]|0;e=o>>>0>e>>>0?e:o;if(e>>>0>f>>>0){k=d+16|0;j=d+24|0;i=b+44|0;do{e=e+-1|0;g=c[j>>2]|0;g=(c[k>>2]|0)+(g*21|0)+(0-g&7)|0;d=g+(e<<4)|0;b=c[d>>2]|0;g=c[g+(e<<4)+8>>2]|0;c[d>>2]=7;if(b&8|0?(d=g+4|0,b=(c[d>>2]|0)+-1|0,c[d>>2]=b,(b|0)==0):0)Yn(c[i>>2]|0,g)}while(e>>>0>f>>>0)}c[h>>2]=f;h=1;return h|0}n=(g|0)!=0;o=d+28|0;g=c[o>>2]|0;if(!n)if(!g)e=f;else{e=c[d+16>>2]|0;l=c[d+24>>2]|0;k=e+(l<<4)|0;l=e+(l*20|0)|0;e=f;j=0;do{i=c[k+(j<<2)>>2]|0;if(((i|0)!=0?(c[i>>2]&256|0)!=0:0)?(m=c[i+16>>2]|0,m>>>0>=f>>>0):0)e=(m>>>0<e>>>0?1:(a[l+j>>0]&4)!=0)?e:m+1|0;j=j+1|0}while((j|0)!=(g|0));i=17}else{e=f;i=17}if((i|0)==17)if(g){l=d+16|0;m=d+24|0;k=n?2:0;j=0;do{i=c[(c[l>>2]|0)+(c[m>>2]<<4)+(j<<2)>>2]|0;if(((i|0)!=0?(c[i>>2]&256|0)!=0:0)?(c[i+16>>2]|0)>>>0>=e>>>0:0){Zo(b,d,i,k)|0;g=c[o>>2]|0}j=j+1|0}while(j>>>0<g>>>0)}c[h>>2]=e;h=(e|0)==(f|0)&1;return h|0}function To(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;h=c[b+28>>2]|0;if(!h){e=0;d=c[b+24>>2]|0}else{d=c[b+24>>2]|0;e=0;f=0;g=(c[b+16>>2]|0)+(d<<4)|0;while(1){e=((c[g>>2]|0)!=0&1)+e|0;f=f+1|0;if((f|0)==(h|0))break;else g=g+4|0}}h=c[b+32>>2]|0;if(!h)d=0;else{f=(c[b+16>>2]|0)+(d*21|0)+(0-d&7)|0;d=0;g=0;while(1){d=((c[f>>2]|0)!=7&1)+d|0;g=g+1|0;if((g|0)==(h|0))break;else f=f+16|0}}f=d+e|0;f=((f+16|0)>>>3)+f|0;if(f>>>0<=7){h=0;io(a,b,f,0,h,1);return}if(f>>>0>63){d=2;e=f;do{h=e;e=e>>>6;d=d<<6}while(h>>>0>4095);if(!e){h=d;io(a,b,f,0,h,1);return}}else{d=2;e=f}do{e=e>>>1;d=d<<1}while((e|0)!=0);io(a,b,f,0,d,1);return}function Uo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0;k=a+304|0;m=c[(c[k>>2]|0)+392>>2]|0;if(!(go(a,b,m,c[m+16>>2]|0,e,1)|0)){g=0;return g|0}l=a+68|0;i=c[l>>2]|0;j=a+64|0;m=c[j>>2]|0;h=i-m>>4;h=h|0?m+(h+-1<<4)|0:0;h=(h|0)==0?936:h;if((c[h>>2]|0)!=9)In(a,2130,-1,268963);m=c[h+8>>2]|0;if(!m)In(a,2130,-1,268963);o=i+-16|0;c[l>>2]=o;n=c[i+-16>>2]|0;h=c[i+-8>>2]|0;c[o>>2]=2;if(n&8|0?(n=h+4|0,o=(c[n>>2]|0)+-1|0,c[n>>2]=o,(o|0)==0):0)Yn(c[a+44>>2]|0,h);if(!(go(a,m,d,c[d+16>>2]|0,e,1)|0)){o=0;return o|0}i=c[(c[k>>2]|0)+396>>2]|0;go(a,b,i,c[i+16>>2]|0,e,1)|0;i=c[l>>2]|0;o=c[j>>2]|0;h=i-o>>4;h=h|0?o+(h+-1<<4)|0:0;h=(h|0)==0?936:h;if((c[h>>2]|0)!=9)In(a,2130,-1,268963);b=c[h+8>>2]|0;if(!b)In(a,2130,-1,268963);n=i+-16|0;c[l>>2]=n;o=c[i+-16>>2]|0;h=c[i+-8>>2]|0;c[n>>2]=2;if(o&8|0?(n=h+4|0,o=(c[n>>2]|0)+-1|0,c[n>>2]=o,(o|0)==0):0)Yn(c[a+44>>2]|0,h);c[f>>2]=m;c[g>>2]=b;o=1;return o|0}function Vo(a,b,d,e,f,g){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;g=g|0;var i=0,j=0,k=0,m=0,n=0;n=l;l=l+64|0;i=n+32|0;j=n+36|0;k=n+16|0;m=n;if(!(Wo(a,b,e,d,1,j)|0)){if(g|0){c[i>>2]=e+28;_n(a,269151,67110186,269164,i)}c[k>>2]=9;c[k+8>>2]=c[a+100>>2];c[m>>2]=8;c[m+8>>2]=e;No(a,k,m,c[f>>2]|0,c[f+4>>2]|0,+h[f+8>>3],0)|0;l=n;return}d=c[j+8>>2]|0;if(d|0?c[j+12>>2]&1|0:0){if(c[f>>2]&8|0){m=(c[f+8>>2]|0)+4|0;c[m>>2]=(c[m>>2]|0)+1}if(!(c[d>>2]&8)){c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];l=n;return}b=c[d+8>>2]|0;c[d>>2]=c[f>>2];c[d+4>>2]=c[f+4>>2];c[d+8>>2]=c[f+8>>2];c[d+12>>2]=c[f+12>>2];m=b+4|0;f=(c[m>>2]|0)+-1|0;c[m>>2]=f;if(f|0){l=n;return}Yn(c[a+44>>2]|0,b);l=n;return}c[k>>2]=9;c[k+8>>2]=c[j+4>>2];c[m>>2]=8;c[m+8>>2]=e;No(a,k,m,c[f>>2]|0,c[f+4>>2]|0,+h[f+8>>3],g)|0;l=n;return}function Wo(b,e,f,g,i,j){b=b|0;e=e|0;f=f|0;g=g|0;i=i|0;j=j|0;var k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0;B=l;l=l+48|0;y=B+16|0;z=B;if((e|0)==0&(g|0)!=0){t=c[g+16>>2]|0;a:do if(c[t>>2]&2048|0){q=c[(c[b+304>>2]|0)+380>>2]|0;e=c[t+36>>2]|0;r=c[t+24>>2]|0;s=c[t+16>>2]|0;b:do if(e){p=s+(r*21|0)+(0-r&7)+(c[t+32>>2]<<4)|0;n=e+-1|0;o=s+(r<<4)|0;e=0;m=c[q+12>>2]&n;c:while(1){k=c[p+(m<<2)>>2]|0;switch(k|0){case -1:{k=19;break}case -2:{A=10;break}default:if((c[o+(k<<2)>>2]|0)==(q|0)){e=k;k=1}else A=10}if((A|0)==10){A=0;k=0;m=m+1&n}switch(k&31){case 19:break a;case 0:break;default:break c}}if(!k)break a}else{k=s+(r<<4)|0;m=c[t+28>>2]|0;if(!m)break a;else e=0;while(1){if((c[k+(e<<2)>>2]|0)==(q|0))break b;e=e+1|0;if(e>>>0>=m>>>0)break a}}while(0);if(!((s+(e<<4)|0)==0?1:(a[s+(r*20|0)+e>>0]&8)!=0)){e=c[s+(e<<4)+8>>2]|0;k=c[e+36>>2]|0;q=c[e+24>>2]|0;r=c[e+16>>2]|0;d:do if(k){p=r+(q*21|0)+(0-q&7)+(c[e+32>>2]<<4)|0;n=k+-1|0;o=r+(q<<4)|0;e=0;m=c[f+12>>2]&n;e:while(1){k=c[p+(m<<2)>>2]|0;switch(k|0){case -1:{k=19;break}case -2:{A=21;break}default:if((c[o+(k<<2)>>2]|0)==(f|0)){e=k;k=1}else A=21}if((A|0)==21){A=0;k=0;m=m+1&n}switch(k&31){case 19:break a;case 0:break;default:break e}}if(!k)break a}else{m=r+(q<<4)|0;k=c[e+28>>2]|0;if(!k)break a;else e=0;while(1){if((c[m+(e<<2)>>2]|0)==(f|0))break d;e=e+1|0;if(e>>>0>=k>>>0)break a}}while(0);if(!((r+(e<<4)|0)==0?1:(a[r+(q*20|0)+e>>0]&8)!=0)){c[j+8>>2]=(c[b+52>>2]|0)+(c[g+40>>2]|0)+(~~+h[r+(e<<4)+8>>3]>>>0<<4);c[j+12>>2]=1;c[j>>2]=0;c[j+4>>2]=0;c[j+16>>2]=0;A=1;l=B;return A|0}}}while(0);if(!i){A=0;l=B;return A|0}e=c[t+52>>2]|0;if(!e){e=c[b+104>>2]|0;A=29}}else A=29;if((A|0)==29)if(!e){A=0;l=B;return A|0}x=f+12|0;i=(i|0)==0;u=f+16|0;v=y+8|0;w=z+8|0;g=1e4;f:while(1){k=e+40|0;g:do if((c[e>>2]&-134217728|0)==-2147483648){r=c[k>>2]|0;h:do if(r|0){k=c[e+44>>2]|0;m=c[k+36>>2]|0;s=c[k+24>>2]|0;t=c[k+16>>2]|0;i:do if(m){q=t+(s*21|0)+(0-s&7)+(c[k+32>>2]<<4)|0;o=m+-1|0;p=t+(s<<4)|0;k=0;n=c[x>>2]&o;j:while(1){m=c[q+(n<<2)>>2]|0;switch(m|0){case -1:{m=19;break}case -2:{A=40;break}default:if((c[p+(m<<2)>>2]|0)==(f|0)){k=m;m=1}else A=40}if((A|0)==40){A=0;m=0;n=n+1&o}switch(m&31){case 19:break h;case 0:break;default:break j}}if(!m)break h}else{n=t+(s<<4)|0;m=c[k+28>>2]|0;if(!m)break h;else k=0;while(1){if((c[n+(k<<2)>>2]|0)==(f|0))break i;k=k+1|0;if(k>>>0>=m>>>0)break h}}while(0);if(!((t+(k<<4)|0)==0?1:(a[t+(s*20|0)+k>>0]&8)!=0)){A=44;break f}}while(0);k=c[e+36>>2]|0;r=c[e+24>>2]|0;s=c[e+16>>2]|0;k:do if(k){q=s+(r*21|0)+(0-r&7)+(c[e+32>>2]<<4)|0;o=k+-1|0;p=s+(r<<4)|0;k=0;n=c[x>>2]&o;l:while(1){m=c[q+(n<<2)>>2]|0;switch(m|0){case -1:{m=19;break}case -2:{A=52;break}default:if((c[p+(m<<2)>>2]|0)==(f|0)){k=m;m=1}else A=52}if((A|0)==52){A=0;m=0;n=n+1&o}switch(m&31){case 19:break g;case 0:break;default:break l}}if(!m)break g}else{m=s+(r<<4)|0;n=c[e+28>>2]|0;if(!n)break g;else k=0;while(1){if((c[m+(k<<2)>>2]|0)==(f|0))break k;k=k+1|0;if(k>>>0>=n>>>0)break g}}while(0);m=d[s+(r*20|0)+k>>0]|0;k=s+(k<<4)|0;if(!((m&8|0)!=0|(k|0)==0)){A=56;break f}}else{o=c[k>>2]|0;if(!(c[o>>2]&33554432)){n=c[u>>2]|0;k=1e4;m=o;while(1){if(go(b,m,f,n,y,2)|0){k=1;break}if(!k){k=0;break}m=c[m+20>>2]|0;if(!m){k=0;break}else k=k+-1|0}}else{c[y>>2]=8;c[v>>2]=f;c[z>>2]=9;c[w>>2]=o;k=Xo(b,z,y)|0}if(k|0){A=65;break f}}while(0);if(i){e=0;A=70;break}if(!g){A=68;break}e=c[e+20>>2]|0;if(!e){e=0;A=70;break}else g=g+-1|0}if((A|0)==44){c[j+8>>2]=(c[r+52>>2]|0)+(c[e+48>>2]|0)+(~~+h[t+(k<<4)+8>>3]>>>0<<4);c[j+12>>2]=1;c[j>>2]=e;c[j+4>>2]=0;c[j+16>>2]=0;A=1;l=B;return A|0}else if((A|0)==56){c[j+8>>2]=k;c[j+12>>2]=m;c[j>>2]=e;c[j+4>>2]=e;c[j+16>>2]=0;A=1;l=B;return A|0}else if((A|0)==65){c[j+8>>2]=0;c[j+12>>2]=0;c[j>>2]=e;c[j+4>>2]=o;c[j+16>>2]=c[e+44>>2];A=1;l=B;return A|0}else if((A|0)==68)Jn(b,269151,50332707,269067);else if((A|0)==70){l=B;return e|0}return 0}function Xo(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0;r=l;l=l+48|0;p=r;q=r+24|0;m=r+16|0;c[p>>2]=c[d>>2];c[p+4>>2]=c[d+4>>2];c[p+8>>2]=c[d+8>>2];c[p+12>>2]=c[d+12>>2];switch(c[b>>2]|0){case 9:{d=c[b+8>>2]|0;h=a+68|0;f=c[h>>2]|0;if(f>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4153);c[h>>2]=f+16;c[f>>2]=c[p>>2];c[f+4>>2]=c[p+4>>2];c[f+8>>2]=c[p+8>>2];c[f+12>>2]=c[p+12>>2];i=c[p>>2]|0;if(i&8|0){k=(c[p+8>>2]|0)+4|0;c[k>>2]=(c[k>>2]|0)+1}f=c[h>>2]|0;do if((c[f+-16>>2]|0)!=8){po(a,-1,1);g=a+64|0;k=c[g>>2]|0;f=(c[h>>2]|0)-k>>4;f=f|0?k+(f+-1<<4)|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)==8?(j=c[f+8>>2]|0,j|0):0){f=j;break}Eo(a,-1)|0;k=c[g>>2]|0;f=(c[h>>2]|0)-k>>4;f=f|0?k+(f+-1<<4)|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)==8)f=c[f+8>>2]|0;else f=0}else f=c[f+-8>>2]|0;while(0);g=c[f+16>>2]|0;j=f;k=38;break}case 10:{j=a+68|0;d=c[j>>2]|0;if(d>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4153);c[j>>2]=d+16;c[d>>2]=c[p>>2];c[d+4>>2]=c[p+4>>2];c[d+8>>2]=c[p+8>>2];c[d+12>>2]=c[p+12>>2];i=c[p>>2]|0;if(i&8|0){g=(c[p+8>>2]|0)+4|0;c[g>>2]=(c[g>>2]|0)+1}f=c[j>>2]|0;do if((c[f+-16>>2]|0)!=8){po(a,-1,1);f=c[j>>2]|0;g=a+64|0;s=c[g>>2]|0;d=f-s>>4;d=d|0?s+(d+-1<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==8?(h=c[d+8>>2]|0,h|0):0)break;Eo(a,-1)|0;f=c[j>>2]|0;s=c[g>>2]|0;d=f-s>>4;d=d|0?s+(d+-1<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==8)h=c[d+8>>2]|0;else h=0}else h=c[f+-8>>2]|0;while(0);g=c[h+16>>2]|0;if((c[(c[b+8>>2]|0)+16>>2]|0)>>>0<=g>>>0?(c[(c[a+304>>2]|0)+328>>2]|0)!=(h|0):0){d=c[a+268>>2]|0;j=h;k=38}else{e=1;n=j;o=f}break}case 6:{h=a+68|0;d=c[h>>2]|0;if(d>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4153);c[h>>2]=d+16;c[d>>2]=c[p>>2];c[d+4>>2]=c[p+4>>2];c[d+8>>2]=c[p+8>>2];c[d+12>>2]=c[p+12>>2];i=c[p>>2]|0;if(i&8|0){s=(c[p+8>>2]|0)+4|0;c[s>>2]=(c[s>>2]|0)+1}d=c[h>>2]|0;do if((c[d+-16>>2]|0)!=8){po(a,-1,1);g=a+64|0;s=c[g>>2]|0;d=(c[h>>2]|0)-s>>4;d=d|0?s+(d+-1<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==8?(f=c[d+8>>2]|0,f|0):0)break;Eo(a,-1)|0;s=c[g>>2]|0;d=(c[h>>2]|0)-s>>4;d=d|0?s+(d+-1<<4)|0:0;d=(d|0)==0?936:d;if((c[d>>2]|0)==8)f=c[d+8>>2]|0;else f=0}else f=c[d+-8>>2]|0;while(0);d=c[a+124>>2]|0;g=c[f+16>>2]|0;j=f;k=38;break}default:Jn(a,268713,100666177,269190)}do if((k|0)==38){do if(c[d>>2]&33554432){s=(Yo(a,d,74,p,m)|0)==0;d=c[m>>2]|0;if(s){g=c[j+16>>2]|0;break}h=a+68|0;e=c[h>>2]|0;f=a+56|0;if(e>>>0>=(c[f>>2]|0)>>>0)Un(a,4153);c[h>>2]=e+16;c[e>>2]=9;c[e+8>>2]=d;e=d+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[h>>2]|0;if(e>>>0>=(c[f>>2]|0)>>>0)Un(a,4153);c[h>>2]=e+16;c[e>>2]=c[p>>2];c[e+4>>2]=c[p+4>>2];c[e+8>>2]=c[p+8>>2];c[e+12>>2]=c[p+12>>2];if(i&8|0){s=(c[p+8>>2]|0)+4|0;c[s>>2]=(c[s>>2]|0)+1}e=(c[h>>2]|0)-(c[a+64>>2]|0)|0;if((e|0)<64)Vn(a,268605,55);so(a,(e>>>4)+-4|0,0)|0;f=Ro(a,-1)|0;if((f|0)==0?go(a,d,j,g,q,0)|0:0){if(!(c[q>>2]&4))Jn(a,268713,100666220,269052);if(!(c[d>>2]&128))Jn(a,268713,100666220,269052)}d=c[h>>2]|0;e=d+-16|0;c[h>>2]=e;s=c[d+-16>>2]|0;d=c[d+-8>>2]|0;c[e>>2]=2;if((s&8|0)!=0?(q=d+4|0,s=(c[q>>2]|0)+-1|0,c[q>>2]=s,(s|0)==0):0){Yn(c[a+44>>2]|0,d);e=c[h>>2]|0}q=e+-16|0;c[h>>2]=q;s=c[e+-16>>2]|0;e=c[e+-8>>2]|0;c[q>>2]=2;if(s&8|0?(q=e+4|0,s=(c[q>>2]|0)+-1|0,c[q>>2]=s,(s|0)==0):0)Yn(c[a+44>>2]|0,e);s=f;l=r;return s|0}while(0);f=1e4;while(1){if(go(a,d,j,g,q,0)|0){e=1;k=66;break}if(!f){k=64;break}d=c[d+20>>2]|0;if(!d){e=0;k=66;break}else f=f+-1|0}if((k|0)==64)Jn(a,268713,50333699,269067);else if((k|0)==66){o=a+68|0;n=o;o=c[o>>2]|0;break}}while(0);q=o+-16|0;c[n>>2]=q;s=c[o+-16>>2]|0;d=c[o+-8>>2]|0;c[q>>2]=2;if(!(s&8)){s=e;l=r;return s|0}q=d+4|0;s=(c[q>>2]|0)+-1|0;c[q>>2]=s;if(s|0){s=e;l=r;return s|0}Yn(c[a+44>>2]|0,d);s=e;l=r;return s|0}function Yo(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,m=0,n=0;m=l;l=l+16|0;k=m;if(!(c[b>>2]&33554432)){a=0;l=m;return a|0}h=c[b+44>>2]|0;c[f>>2]=c[b+40>>2];if((c[e>>2]|0)==8?c[c[e+8>>2]>>2]&1024|0:0){a=0;l=m;return a|0}j=a+68|0;f=c[j>>2]|0;b=c[a+52>>2]|0;e=f-b+832|0;b=b+e|0;i=a+56|0;g=c[i>>2]|0;do if(g>>>0<b>>>0)if((c[a+60>>2]|0)>>>0<b>>>0){lo(a,e,1)|0;f=c[j>>2]|0;b=c[i>>2]|0;break}else{c[i>>2]=b;break}else b=g;while(0);if(f>>>0>=b>>>0)Un(a,4153);c[j>>2]=f+16;c[f>>2]=9;c[f+8>>2]=h;b=h+4|0;c[b>>2]=(c[b>>2]|0)+1;b=d+-65536|0;e=b>>16;f=c[j>>2]|0;d=a+64|0;h=f-(c[d>>2]|0)>>4;g=((e|0)<0?h:0)+e|0;if(g>>>0>=h>>>0)jo(a,300,e);b=c[(c[a+304>>2]|0)+((b&65535)<<2)>>2]|0;if(f>>>0>=(c[i>>2]|0)>>>0)Un(a,4153);c[j>>2]=f+16;c[f>>2]=8;c[f+8>>2]=b;e=b+4|0;c[e>>2]=(c[e>>2]|0)+1;e=c[d>>2]|0;f=(c[j>>2]|0)-e>>4;b=((g|0)<0?f:0)+g|0;if(b>>>0>=f>>>0)jo(a,376,g);g=ro(a,e+(b<<4)|0,e+(f+-1<<4)|0)|0;e=c[d>>2]|0;f=(c[j>>2]|0)-e>>4;b=f+-2|0;if(f>>>0<=1)jo(a,376,-2);n=e+(b<<4)|0;h=e+(f+-1<<4)|0;i=c[n>>2]|0;b=c[e+(b<<4)+8>>2]|0;QQ(n|0,n+16|0,h-n|0)|0;c[h>>2]=2;c[j>>2]=(c[j>>2]|0)+-16;if(i&8|0?(i=b+4|0,n=(c[i>>2]|0)+-1|0,c[i>>2]=n,(n|0)==0):0)Yn(c[a+44>>2]|0,b);if(g|0){e=c[d>>2]|0;b=(c[j>>2]|0)-e>>4;if(b>>>0<=1)jo(a,376,-2);f=e+(b+-2<<4)|0;b=e+(b+-1<<4)|0;e=b-f|0;if(e|0){c[k>>2]=c[b>>2];c[k+4>>2]=c[b+4>>2];c[k+8>>2]=c[b+8>>2];c[k+12>>2]=c[b+12>>2];QQ(f+16|0,f|0,e|0)|0;c[f>>2]=c[k>>2];c[f+4>>2]=c[k+4>>2];c[f+8>>2]=c[k+8>>2];c[f+12>>2]=c[k+12>>2]}n=1;l=m;return n|0}e=c[j>>2]|0;b=e+-16|0;c[j>>2]=b;n=c[e+-16>>2]|0;e=c[e+-8>>2]|0;c[b>>2]=2;if((n&8|0)!=0?(k=e+4|0,n=(c[k>>2]|0)+-1|0,c[k>>2]=n,(n|0)==0):0){Yn(c[a+44>>2]|0,e);b=c[j>>2]|0}k=b+-16|0;c[j>>2]=k;n=c[b+-16>>2]|0;b=c[b+-8>>2]|0;c[k>>2]=2;if(!(n&8)){n=0;l=m;return n|0}k=b+4|0;n=(c[k>>2]|0)+-1|0;c[k>>2]=n;if(n|0){n=0;l=m;return n|0}Yn(c[a+44>>2]|0,b);n=0;l=m;return n|0}function Zo(b,d,e,f){b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0;o=l;l=l+32|0;m=o;g=f&1;n=c[e+16>>2]|0;do if(go(b,d,e,n,m,0)|0){if(c[m>>2]&4|f&2|0){f=c[m+20>>2]|0;if((f|0)>=0){i=c[d+24>>2]|0;i=(c[d+16>>2]|0)+(i*21|0)+(0-i&7)|0;j=i+(f<<4)|0;k=c[j>>2]|0;f=c[i+(f<<4)+8>>2]|0;c[j>>2]=7;if(!(k&8))break;j=f+4|0;k=(c[j>>2]|0)+-1|0;c[j>>2]=k;if(k|0)break;Yn(c[b+44>>2]|0,f);break}k=m+12|0;f=c[k>>2]|0;if((f|0)>=0){i=d+16|0;h=c[i>>2]|0;g=c[m+16>>2]|0;j=d+24|0;if((g|0)>-1){f=c[j>>2]|0;c[h+(f*21|0)+(0-f&7)+(c[d+32>>2]<<4)+(g<<2)>>2]=-2;f=c[k>>2]|0}if(!(a[h+((c[j>>2]|0)*20|0)+f>>0]&8)){p=h+(f<<4)|0;g=c[p>>2]|0;f=c[h+(f<<4)+8>>2]|0;c[p>>2]=2;if(g&8|0?(h=f+4|0,p=(c[h>>2]|0)+-1|0,c[h>>2]=p,(p|0)==0):0)bo(c[b+44>>2]|0,f)}else{p=h+(f<<4)|0;g=c[p>>2]|0;c[p>>2]=0;if((g|0)!=0?(q=g+4|0,p=(c[q>>2]|0)+-1|0,c[q>>2]=p,(p|0)==0):0){eo(c[b+44>>2]|0,g);g=c[i>>2]|0;f=c[k>>2]|0}else g=h;q=g+(f<<4)+4|0;f=c[q>>2]|0;c[q>>2]=0;if(f|0?(p=f+4|0,q=(c[p>>2]|0)+-1|0,c[p>>2]=q,(q|0)==0):0)eo(c[b+44>>2]|0,f)}c[(c[i>>2]|0)+(c[j>>2]<<4)+(c[k>>2]<<2)>>2]=0;f=e+4|0;q=(c[f>>2]|0)+-1|0;c[f>>2]=q;f=b+44|0;if(!q)_o(c[f>>2]|0,e);f=c[f>>2]|0;if(!(c[f+32>>2]|0))break;Tn(f);break}}if(!g){q=0;l=o;return q|0}else Jn(b,268713,100667691,269117)}while(0);if((n|0)==-1){q=1;l=o;return q|0}if(!(c[d>>2]&16777216)){q=1;l=o;return q|0}q=c[(c[b+304>>2]|0)+392>>2]|0;if(!(go(b,d,q,c[q+16>>2]|0,m,1)|0)){q=1;l=o;return q|0}g=b+68|0;h=c[g>>2]|0;q=c[b+64>>2]|0;f=h-q>>4;f=f|0?q+(f+-1<<4)|0:0;f=(f|0)==0?936:f;if((c[f>>2]|0)!=9)In(b,2130,-1,268963);i=c[f+8>>2]|0;if(!i)In(b,2130,-1,268963);p=h+-16|0;c[g>>2]=p;q=c[h+-16>>2]|0;f=c[h+-8>>2]|0;c[p>>2]=2;if(q&8|0?(p=f+4|0,q=(c[p>>2]|0)+-1|0,c[p>>2]=q,(q|0)==0):0)Yn(c[b+44>>2]|0,f);Zo(b,i,e,0)|0;q=1;l=o;return q|0}function _o(a,b){a=a|0;b=b|0;var d=0,e=0,f=0;if(c[a+56>>2]|0)return;d=a+196|0;if((c[d>>2]|0)==(b|0))c[d>>2]=0;d=a+208|0;if((c[d>>2]|0)==(b|0))c[d>>2]=0;d=a+220|0;if((c[d>>2]|0)==(b|0))c[d>>2]=0;d=a+232|0;if((c[d>>2]|0)==(b|0))c[d>>2]=0;f=a+188|0;c[f>>2]=(c[f>>2]|0)+-1;f=(c[a+176>>2]|0)+((c[a+180>>2]&c[b+12>>2])<<2)|0;e=0;d=f;while(1){d=c[d>>2]|0;if((d|0)==(b|0))break;else{e=d;d=d+8|0}}c[(e|0?e+8|0:f)>>2]=c[b+8>>2];Bg[c[a+12>>2]&255](c[a+16>>2]|0,b);return}function $o(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0.0,i=0,k=0,l=0,m=0;l=a+68|0;i=a+64|0;e=c[i>>2]|0;f=(c[l>>2]|0)-e>>4;m=(b|0)<0;d=(m?f:0)+b|0;if(d>>>0>=f>>>0)jo(a,376,b);g=+ho(a,e+(d<<4)|0);h[j>>3]=g;d=c[j>>2]|0;e=c[j+4>>2]|0;f=e&2146435072;a:do if((f|0)<2146435072){switch(f|0){case 0:break;default:{k=6;break a}}if((e|0)<0)k=6;else f=0}else switch(f|0){case 2146435072:{f=0;break}default:k=6}while(0);if((k|0)==6){g=+A(+(+B(+g)));g=+TO((e|0)>-1|(e|0)==-1&d>>>0>4294967295?g:-g,4294967296.0);g=g<0.0?g+4294967296.0:g;f=~~(g>=2147483648.0?g+-4294967296.0:g)}e=c[i>>2]|0;l=(c[l>>2]|0)-e>>4;d=(m?l:0)+b|0;if(d>>>0>=l>>>0)jo(a,376,b);l=e+(d<<4)|0;b=c[l>>2]|0;m=e+(d<<4)+8|0;d=c[m>>2]|0;c[l>>2]=0;h[m>>3]=+(f|0);if(!(b&8))return f|0;m=d+4|0;b=(c[m>>2]|0)+-1|0;c[m>>2]=b;if(b|0)return f|0;Yn(c[a+44>>2]|0,d);return f|0}function ap(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0;if(b>>>0>2147483646){a=0;return a|0}l=(d&2|0)!=0;m=(d&1|0)==0;g=m&(l^1)?b+24|0:24;h=a+44|0;k=c[h>>2]|0;c[h>>2]=k+-1;if((k|0)<1)Ln(a,2);j=a+4|0;k=a+16|0;f=hg[c[j>>2]&63](c[k>>2]|0,g)|0;if(!f){Ln(a,0);f=hg[c[j>>2]&63](c[k>>2]|0,g)|0;if(!f){Ln(a,0);f=hg[c[j>>2]&63](c[k>>2]|0,g)|0;if(!f){Ln(a,1);f=hg[c[j>>2]&63](c[k>>2]|0,g)|0;if(!f){Ln(a,1);f=hg[c[j>>2]&63](c[k>>2]|0,g)|0;if(!f){Ln(a,1);f=hg[c[j>>2]&63](c[k>>2]|0,g)|0;if(!f){Ln(a,1);f=hg[c[j>>2]&63](c[k>>2]|0,g)|0;if(!f){Ln(a,1);f=hg[c[j>>2]&63](c[k>>2]|0,g)|0;if(!f){Ln(a,1);f=hg[c[j>>2]&63](c[k>>2]|0,g)|0;if(!f){Ln(a,1);f=hg[c[j>>2]&63](c[k>>2]|0,g)|0;if(!f){Ln(a,1);f=hg[c[j>>2]&63](c[k>>2]|0,g)|0;if(!f)f=0;else i=7}else i=7}else i=7}else i=7}else i=7}else i=7}else i=7}else i=7}else i=7}else i=7}else i=7;a:do if((i|0)==7){RQ(f|0,0,(d&4|0?24:g)|0)|0;do if(l){g=0;i=20}else{if(m){g=f+24|0;i=20;break}if(!b){c[e>>2]=0;c[f+16>>2]=0;c[f>>2]=c[f>>2]&-132|130;d=f;break}i=c[h>>2]|0;c[h>>2]=i+-1;if((i|0)<1)Ln(a,2);g=hg[c[j>>2]&63](c[k>>2]|0,b)|0;if(!g){Ln(a,0);g=hg[c[j>>2]&63](c[k>>2]|0,b)|0;do if(!g){Ln(a,0);g=hg[c[j>>2]&63](c[k>>2]|0,b)|0;if(!g){Ln(a,1);g=hg[c[j>>2]&63](c[k>>2]|0,b)|0;if(!g){Ln(a,1);g=hg[c[j>>2]&63](c[k>>2]|0,b)|0;if(!g){Ln(a,1);g=hg[c[j>>2]&63](c[k>>2]|0,b)|0;if(!g){Ln(a,1);g=hg[c[j>>2]&63](c[k>>2]|0,b)|0;if(!g){Ln(a,1);g=hg[c[j>>2]&63](c[k>>2]|0,b)|0;if(!g){Ln(a,1);g=hg[c[j>>2]&63](c[k>>2]|0,b)|0;if(!g){Ln(a,1);g=hg[c[j>>2]&63](c[k>>2]|0,b)|0;if(g|0)break;Ln(a,1);g=hg[c[j>>2]&63](c[k>>2]|0,b)|0;if(!g)break a}}}}}}}}while(0);RQ(g|0,0,b|0)|0}else RQ(g|0,0,b|0)|0;c[e>>2]=g;c[f+20>>2]=g;i=21}while(0);if((i|0)==20){c[e>>2]=g;i=21}if((i|0)==21){c[f+16>>2]=b;g=c[f>>2]&-4;c[f>>2]=g|2;if(!m?(c[f>>2]=g|130,l):0){c[f>>2]=g|386;d=f}else d=f}g=a+24|0;h=c[g>>2]|0;if(h|0)c[h+12>>2]=d;c[d+12>>2]=0;c[d+8>>2]=h;c[g>>2]=d;a=f;return a|0}while(0);Bg[c[a+12>>2]&255](c[k>>2]|0,f);a=0;return a|0}function bp(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;l=a+68|0;h=c[l>>2]|0;i=a+64|0;e=c[i>>2]|0;d=h-e|0;f=d>>4;k=f+-1|0;if(!f)jo(a,300,-1);j=(d|0)<16;d=(j?f:0)+k|0;d=d>>>0<f>>>0?e+(d<<4)|0:0;d=(d|0)==0?936:d;a:do switch(c[d>>2]|0){case 10:{d=c[d+8>>2]|0;b=c[d+16>>2]|0;if(!(c[d>>2]&128)){g=d+24|0;break a}else{g=c[d+20>>2]|0;break a}}case 9:{b=c[d+8>>2]|0;if(!(c[b>>2]&8192))In(a,2022,k,268516);d=c[b+40>>2]|0;if(!d)In(a,2022,k,268516);e=c[b+48>>2]|0;b=c[b+52>>2]|0;if((b+e|0)>>>0>(c[d+16>>2]|0)>>>0)In(a,2022,k,268516);if(!(c[d>>2]&128))d=d+24|0;else d=c[d+20>>2]|0;g=d+e|0;break}default:In(a,2022,k,268516)}while(0);if(h>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4300);b=(g|0)==0?0:b;if((b|0)<0)Jn(a,268620,50335961,268982);d=Oo(a,g,b)|0;e=c[l>>2]|0;c[l>>2]=e+16;c[e>>2]=8;c[e+8>>2]=d;d=d+4|0;c[d>>2]=(c[d>>2]|0)+1;d=c[i>>2]|0;e=(c[l>>2]|0)-d>>4;if(!e)jo(a,376,-1);f=d+(e+-1<<4)|0;b=(j?e:0)+k|0;if(b>>>0>=e>>>0)jo(a,376,k);j=d+(b<<4)|0;k=c[j>>2]|0;b=c[d+(b<<4)+8>>2]|0;c[j>>2]=c[f>>2];c[j+4>>2]=c[f+4>>2];c[j+8>>2]=c[f+8>>2];c[j+12>>2]=c[f+12>>2];c[f>>2]=2;c[l>>2]=(c[l>>2]|0)+-16;if(!(k&8))return;k=b+4|0;l=(c[k>>2]|0)+-1|0;c[k>>2]=l;if(l|0)return;Yn(c[a+44>>2]|0,b);return}function cp(a,b,d){a=a|0;b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,m=0,n=0,o=0,p=0,q=0,r=0;r=l;l=l+288|0;j=r+16|0;k=r+24|0;m=r;if(!b){e=c[(c[a+304>>2]|0)+60>>2]|0;f=a+68|0;g=c[f>>2]|0;if(g>>>0>=(c[a+56>>2]|0)>>>0)Un(a,4153);c[f>>2]=g+16;c[g>>2]=8;c[g+8>>2]=e;a=e+4|0;c[a>>2]=(c[a>>2]|0)+1;l=r;return}i=(WO(b)|0)+16|0;p=a+68|0;n=a+56|0;q=a+44|0;o=a+64|0;i=i>>>0>256?i:256;f=0;a:while(1){do if(i>>>0>=257)if(!f){if((c[p>>2]|0)>>>0>=(c[n>>2]|0)>>>0){e=9;break a}if(i>>>0>2147483646){e=11;break a}e=ap(c[q>>2]|0,i,1,j)|0;if(!e){e=13;break a}g=c[p>>2]|0;c[g>>2]=10;c[g+8>>2]=e;g=e+4|0;c[g>>2]=(c[g>>2]|0)+1;c[p>>2]=(c[p>>2]|0)+16;g=c[j>>2]|0;h=1;break}else{h=c[o>>2]|0;e=(c[p>>2]|0)-h>>4;e=e|0?h+(e+-1<<4)|0:0;e=(e|0)==0?936:e;if((c[e>>2]|0)!=10){e=17;break a}e=c[e+8>>2]|0;if(!e){e=17;break a}if((c[e>>2]&384|0)!=128){e=19;break a}Kn(a,e,i);g=c[e+20>>2]|0;h=f;break}else{g=k;h=f}while(0);c[m>>2]=c[d>>2];f=ON(g,i,b,m)|0;f=(f|0)<(i|0)?f:-1;if((f|0)>-1){e=25;break}e=i<<1;if(e>>>0>1073741823){e=24;break}i=e;f=h}if((e|0)==9)Un(a,5237);else if((e|0)==11)Jn(a,268620,50336889,268576);else if((e|0)==13)Mn(a,268620,5246);else if((e|0)==17)In(a,2147,-1,268516);else if((e|0)==19)Jn(a,268523,100663312,268540);else if((e|0)==24)Jn(a,268620,50336216,269226);else if((e|0)==25){if((c[p>>2]|0)>>>0>=(c[n>>2]|0)>>>0)Un(a,4300);e=(g|0)==0?0:f;if((e|0)<0)Jn(a,268620,50335961,268982);n=Oo(a,g,e)|0;m=c[p>>2]|0;c[p>>2]=m+16;c[m>>2]=8;c[m+8>>2]=n;n=n+4|0;c[n>>2]=(c[n>>2]|0)+1;if(!h){l=r;return}f=c[o>>2]|0;g=(c[p>>2]|0)-f>>4;e=g+-2|0;if(g>>>0<=1)jo(a,376,-2);n=f+(e<<4)|0;o=f+(g+-1<<4)|0;a=c[n>>2]|0;e=c[f+(e<<4)+8>>2]|0;QQ(n|0,n+16|0,o-n|0)|0;c[o>>2]=2;c[p>>2]=(c[p>>2]|0)+-16;if(!(a&8)){l=r;return}p=e+4|0;a=(c[p>>2]|0)+-1|0;c[p>>2]=a;if(a|0){l=r;return}Yn(c[q>>2]|0,e);l=r;return}}
|
|
|
|
// EMSCRIPTEN_END_FUNCS
|
|
var cg=[DR,ev,fv,gv,hv,iv,jv,kv,lv,mv,nv,ov,pv,qv,rv,sv,tv,uv,DR,DR,DR,DR,DR,DR,DR,DR,DR,DR,DR,DR,DR,DR];var dg=[ER,cv,dv,ER];var eg=[FR,rl];var fg=[GR,ZJ,bL,bN,cN,HR,IR,JR];var gg=[KR,dm,em,fm,gm,hm,im,jm,km,lm,mm,nm,om,pm,qm,rm,sm,tm,um,vm,wm,xm,ym,zm,Am,Bm,Cm,Dm,Em,Fm,Gm,Hm,Im,Jm,Km,Lm,Xm,Ym,Zm,_m,$m,an,bn,cn,dn,en,fn,gn,hn,jn,kn,ln,mn,nn,on,pn,qn,rn,sn,tn,un,vn,wn,xn,yn,zn,An,Bn,Cn,Dn,En,Br,Cr,Dr,Er,Fr,Gr,Hr,Ir,Jr,Kr,Lr,Mr,Nr,Or,Pr,Qr,Rr,Sr,Tr,Ur,Vr,Wr,Xr,Yr,Zr,_r,$r,as,bs,cs,ds,es,fs,gs,hs,is,js,ks,ls,ms,ns,os,ps,qs,rs,ss,ts,us,vs,ws,xs,ys,zs,As,Bs,Cs,Ds,Es,Fs,Gs,Hs,Is,Js,Ks,Ls,Ms,Ns,Os,Ps,Qs,Rs,Ss,Ts,Us,Vs,Ws,Xs,Ys,Zs,_s,$s,at,bt,ct,dt,et,ft,gt,ht,it,jt,kt,lt,mt,nt,ot,pt,qt,rt,st,tt,ut,vt,wt,xt,yt,zt,At,Bt,Ct,Dt,Et,Ft,Gt,Ht,It,Jt,Kt,Lt,Mt,Nt,Ot,Pt,Qt,Rt,St,Tt,Ut,Vt,Wt,Xt,Yt,Zt,_t,$t,au,bu,cu,du,eu,fu,gu,hu,iu,ju,ku,lu,mu,nu,ou,pu,qu,ru,su,tu,uu,vu,wu,xu,yu,zu,Au,Bu,Cu,Du,Eu,Fu,Gu,Hu,Iu,Ju,Ku,Lu,Mu,Nu,ry,sy,ty,uy,vy,wy,xy,yy,zy,Ay,By,Cy,Dy,Ey,Fy,Gy,Hy,Iy,Jy,Ky,Ly,Ty,Uy,Vy,Wy,Xy,Yy,Zy,bz,cz,dz,ez,fz,gz,hz,iz,jz,kz,lz,mz,nz,oz,pz,qz,tz,uz,vz,wz,xz,yz,zz,Az,Bz,Cz,Dz,Ez,Fz,Gz,Hz,Iz,Jz,Kz,Lz,Mz,Nz,Oz,Pz,Qz,Rz,Sz,Tz,Uz,Vz,Wz,Yz,Zz,_z,$z,aA,bA,cA,dA,eA,fA,gA,hA,iA,jA,kA,lA,mA,xA,yA,zA,AA,BA,CA,DA,RA,SA,NA,uB,vB,wB,TA,xB,yB,zB,AB,UA,VA,WA,XA,YA,ZA,_A,$A,aB,bB,cB,dB,eB,fB,gB,hB,iB,jB,kB,lB,mB,nB,oI,pI,qI,rI,_J,YK,cL,tL,EL,jN,TM,xh,oi,oy,Hl,py,Sy,wA,Xz,sz,Um,Vm,HA,az,qy,Qy,Py,_y,uA,IA,JA,KA,LA,MA,vE,wE,xE,eJ,fJ,gJ,aK,sK,TK,WK,XK,LR,MR,NR,OR,PR,dL,oL,sL,xL,ZL,_L,QR,RR,SR,TR,UR,VR,WR,XR,YR,ZR,_R,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR,KR];var hg=[$R,Zl,cm,Nm,Sm,Gn,Hn,hE,UI,rk,Al,Dl,tr,Jq,Ko,nq,jq,Wn,vo,Eo,Kq,sr,tx,pE,uE,HE,SI,YI,ZI,_I,$I,dJ,eK,mK,nK,pK,rK,aS,bS,cS,dS,KL,oM,eS,fS,$R,$R,$R,$R,$R,$R,$R,$R,$R,$R,$R,$R,$R,$R,$R,$R,$R,$R,$R];var ig=[gS,kN,lN,pN,qN,mO,ui,fy,nk,mk,Yk,Pl,Ll,wr,so,ey,Ry,Oy,My,vi,oE,yE,zE,AE,XI,hJ,iJ,jJ,cK,qK,SK,CK,DK,EK,FK,GK,HK,IK,JK,KK,LK,MK,zK,hS,fL,yL,GL,$L,PL,QL,CP,gS,gS,gS,gS,gS,gS,gS,gS,gS,gS,gS,gS,gS];var jg=[iS,ny,fl,zl,Bl,vA,Wv,Xv,BE,GE,OE,nI,mI,kJ,kK,jS,kS,lS,mS,ZK,iL,pL,qL,rL,uL,FL,VL,kM,iS,iS,iS,iS];var kg=[nS,CE,lJ,nS];var lg=[oS,Ah,gi,Ci,Nk,Sk,Tk,Uk,qE,sE,DE,vI,uI,wI,iI,jI,lI,kI,aJ,bJ,mJ,jK,pS,hL,jM,oS,oS,oS,oS,oS,oS,oS];var mg=[qS,Vk,DJ,CJ,FJ,EJ,GJ,HJ];var ng=[rS,Wl,Vl,Qk,Ok,TJ,SJ,VJ,UJ,QJ,RJ,rS,rS,rS,rS,rS];var og=[sS,rE];var pg=[tS,nh,BL,UL,gM,uS,vS,wS,xS,tS,tS,tS,tS,tS,tS,tS];var qg=[yS,zS,AS,BS];var rg=[CS,DS,ES,FS];var sg=[GS,HS,IS,JS];var tg=[KS,LS];var ug=[MS,NS];var vg=[OS,Li,Mi,Ni,dj,ej,fj,gj,$i,aj,bj,cj,Yi,Zi,_i,Xi,mj,nj,oj,pj,Pj,Qj,Rj,Sj,Bk,Ck,Dk,Ek,_l,$l,Om,Pm,TE,UE,VE,WE,XE,YE,ZE,_E,$E,aF,bF,cF,dF,eF,fF,gF,hF,iF,jF,kF,lF,mF,nF,oF,pF,qF,rF,sF,tF,uF,vF,wF,xF,yF,zF,AF,BF,CF,DF,EF,FF,GF,HF,IF,JF,KF,LF,MF,NF,OF,PF,QF,RF,SF,TF,UF,VF,WF,XF,YF,ZF,_F,$F,aG,bG,cG,dG,eG,fG,gG,hG,iG,jG,kG,lG,mG,nG,oG,pG,qG,rG,sG,tG,uG,vG,wG,xG,yG,zG,AG,BG,CG,DG,EG,FG,GG,HG,IG,JG,KG,LG,MG,NG,OG,PG,QG,RG,SG,TG,UG,VG,WG,XG,YG,ZG,_G,$G,aH,bH,cH,dH,eH,fH,gH,hH,iH,jH,yH,zH,AH,BH,wH,xH,WH,XH,YH,ZH,SH,TH,UH,VH,eI,fI,gI,hI,aI,bI,cI,dI,sk,tk,Fk,Gk,xk,Wj,Xj,Ki,wh,hh,jh,ni,qi,ih,Pi,ij,vj,Fj,Vj,_j,$j,bk,uk,wk,Jk,Lk,Mk,vl,wl,xl,Fl,$n,Tn,co,ep,EE,jE,EH,DH,FH,HH,GH,IH,KH,JH,lH,kH,RE,SE,_H,$H,QH,RH,LH,MH,NH,OH,oH,pH,nH,qH,rH,sH,tH,uH,vH,mH,nJ,pJ,bK,dK,oK,wK,UK,_K,$K,aL,eL,gL,kL,vL,wL,zL,AL,PM,TL,WL,XL,YL,aM,bM,cM,dM,eM,fM,PS,QS,RS,SS,TS,US,VS,WS,XS,YS,ZS,_S,$S,aT,bT,cT,dT,eT,fT,gT,hT,iT,jT,kT,lT,mT,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS,OS];var wg=[nT,oT,pT,nT];var xg=[qT,rT,sT,qT];var yg=[tT,uT,vT,tT];var zg=[wT,xT,yT,wT];var Ag=[zT,jl];var Bg=[AT,Bh,Ch,Dh,Eh,Fh,Gh,Hh,Ih,Jh,Kh,Lh,Mh,Nh,Oh,Ph,Qh,Rh,Sh,Th,Uh,Vh,Wh,bm,Rm,zC,AC,BC,CC,DC,EC,FC,GC,HC,IC,JC,KC,LC,MC,NC,OC,PC,QC,RC,SC,TC,UC,VC,WC,XC,YC,ZC,_C,$C,aD,bD,cD,dD,eD,fD,gD,hD,iD,jD,kD,lD,mD,nD,oD,pD,qD,rD,sD,tD,uD,vD,wD,xD,yD,zD,AD,BD,CD,DD,ED,FD,GD,HD,ID,JD,KD,LD,MD,ND,OD,PD,QD,RD,SD,TD,UD,VD,WD,XD,YD,ZD,_D,$D,aE,bE,cE,dE,eE,fE,gE,_g,Xh,UM,VM,WM,XM,sh,th,uh,YM,ZM,ph,ii,hi,ei,bi,ci,di,Zh,Yh,mi,pi,Qi,Ri,jj,kj,wj,zj,Bj,Cj,Dj,Gj,cw,ak,Wk,ml,sl,ul,vr,ur,Wm,ao,bo,Un,dp,Yn,eo,ip,Bw,Mw,ux,Qv,xw,yw,rz,nE,tE,FE,WI,cJ,oJ,fK,gK,hK,lK,tK,uK,jL,lM,BT,CT,DT,ET,FT,GT,HT,IT,JT,KT,LT,MT,NT,OT,PT,QT,RT,ST,TT,UT,VT,WT,XT,YT,ZT,_T,$T,aU,bU,cU,dU,eU,fU,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT,AT];var Cg=[gU,hU];var Dg=[iU,am,Qm,SM,vh,fi,li,Kj,Mj,Nj,Oj,ol,tl,El,ko,po,jp,zv,yv,xv,vv,VK,jU,kU,lU,mU,nU,oU,pU,qU,rU,sU,tU,uU,vU,wU,xU,yU,zU,AU,BU,CU,DU,EU,FU,GU,HU,IU,JU,KU,LU,iU,iU,iU,iU,iU,iU,iU,iU,iU,iU,iU,iU,iU];var Eg=[MU,Xl,_h,$h,ai,Ak,zk,Xk,yl,Cl,Gl,Ol,Kl,Mm,Fn,Jn,In,fo,_v,$v,iK,vK,OL,NU,OU,PU,QU,RU,SU,TU,UU,VU,WU,XU,YU,ZU,_U,$U,aV,bV,cV,dV,eV,fV,gV,hV,iV,jV,kV,lV,MU,MU,MU,MU,MU,MU,MU,MU,MU,MU,MU,MU,MU,MU];var Fg=[mV,yi,Ai,el,gl,hl,kl,pl,ql,Ql,Ml,_n,nV,oV,pV,qV];var Gg=[rV,Zk,_k,$k,ll,sV,tV,rV];var Hg=[uV,al,WJ,XJ,YJ,vV,wV,xV];var Ig=[yV,il,nl,zV,AV,BV,yV,yV];var Jg=[CV,xM,yM,zM,AM,BM,CM,DM,EM,FM,GM,HM,IM,DV,EV,FV];var Kg=[GV,cl,JJ,IJ,KJ,MJ,LJ,OJ,NJ,GV,GV,GV,GV,GV,GV,GV];var Lg=[HV,bl];var Mg=[IV,dl];return{___divdi3:CQ,___errno_location:nN,___muldi3:EQ,___remdi3:FQ,___udivdi3:GQ,___uremdi3:HQ,_bitshift64Ashr:IQ,_bitshift64Lshr:JQ,_bitshift64Shl:KQ,_emscripten_GetProcAddress:dN,_emscripten_get_global_libc:iN,_free:fN,_htonl:VP,_htons:TP,_i64Add:yQ,_i64Subtract:zQ,_llvm_bswap_i16:LQ,_llvm_bswap_i32:MQ,_main:kh,_malloc:eN,_memcpy:PQ,_memmove:QQ,_memset:RQ,_ntohs:$P,_realloc:gN,_round:SQ,_saveSetjmp:NQ,_sbrk:TQ,_strstr:MP,_testSetjmp:OQ,dynCall_dd:UQ,dynCall_ddd:VQ,dynCall_di:WQ,dynCall_i:XQ,dynCall_ii:YQ,dynCall_iii:ZQ,dynCall_iiii:_Q,dynCall_iiiii:$Q,dynCall_iiiiidii:aR,dynCall_iiiiii:bR,dynCall_iiiiiiii:cR,dynCall_iiiiiiiii:dR,dynCall_iiiiiiiiii:eR,dynCall_v:fR,dynCall_vd:gR,dynCall_vdd:hR,dynCall_vdddd:iR,dynCall_vdddddd:jR,dynCall_vdi:kR,dynCall_vi:lR,dynCall_vid:mR,dynCall_vidd:nR,dynCall_viddd:oR,dynCall_vidddd:pR,dynCall_viddddddddddddii:qR,dynCall_vii:rR,dynCall_viid:sR,dynCall_viii:tR,dynCall_viiii:uR,dynCall_viiiii:vR,dynCall_viiiiii:wR,dynCall_viiiiiii:xR,dynCall_viiiiiiii:yR,dynCall_viiiiiiiii:zR,dynCall_viiiiiiiiiii:AR,dynCall_viiiiiiiiiiii:BR,dynCall_viiiiiiiiiiiii:CR,establishStackSpace:Qg,getTempRet0:Tg,runPostSets:xQ,setTempRet0:Sg,setThrew:Rg,stackAlloc:Ng,stackRestore:Pg,stackSave:Og}})
|
|
|
|
|
|
// EMSCRIPTEN_END_ASM
|
|
(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var ___divdi3=Module["___divdi3"]=asm["___divdi3"];var ___errno_location=Module["___errno_location"]=asm["___errno_location"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___remdi3=Module["___remdi3"]=asm["___remdi3"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var _bitshift64Ashr=Module["_bitshift64Ashr"]=asm["_bitshift64Ashr"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _emscripten_GetProcAddress=Module["_emscripten_GetProcAddress"]=asm["_emscripten_GetProcAddress"];var _emscripten_get_global_libc=Module["_emscripten_get_global_libc"]=asm["_emscripten_get_global_libc"];var _free=Module["_free"]=asm["_free"];var _htonl=Module["_htonl"]=asm["_htonl"];var _htons=Module["_htons"]=asm["_htons"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var _llvm_bswap_i16=Module["_llvm_bswap_i16"]=asm["_llvm_bswap_i16"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var _main=Module["_main"]=asm["_main"];var _malloc=Module["_malloc"]=asm["_malloc"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _memmove=Module["_memmove"]=asm["_memmove"];var _memset=Module["_memset"]=asm["_memset"];var _ntohs=Module["_ntohs"]=asm["_ntohs"];var _realloc=Module["_realloc"]=asm["_realloc"];var _round=Module["_round"]=asm["_round"];var _saveSetjmp=Module["_saveSetjmp"]=asm["_saveSetjmp"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var _strstr=Module["_strstr"]=asm["_strstr"];var _testSetjmp=Module["_testSetjmp"]=asm["_testSetjmp"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var setThrew=Module["setThrew"]=asm["setThrew"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var stackSave=Module["stackSave"]=asm["stackSave"];var dynCall_dd=Module["dynCall_dd"]=asm["dynCall_dd"];var dynCall_ddd=Module["dynCall_ddd"]=asm["dynCall_ddd"];var dynCall_di=Module["dynCall_di"]=asm["dynCall_di"];var dynCall_i=Module["dynCall_i"]=asm["dynCall_i"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iii=Module["dynCall_iii"]=asm["dynCall_iii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_iiiii=Module["dynCall_iiiii"]=asm["dynCall_iiiii"];var dynCall_iiiiidii=Module["dynCall_iiiiidii"]=asm["dynCall_iiiiidii"];var dynCall_iiiiii=Module["dynCall_iiiiii"]=asm["dynCall_iiiiii"];var dynCall_iiiiiiii=Module["dynCall_iiiiiiii"]=asm["dynCall_iiiiiiii"];var dynCall_iiiiiiiii=Module["dynCall_iiiiiiiii"]=asm["dynCall_iiiiiiiii"];var dynCall_iiiiiiiiii=Module["dynCall_iiiiiiiiii"]=asm["dynCall_iiiiiiiiii"];var dynCall_v=Module["dynCall_v"]=asm["dynCall_v"];var dynCall_vd=Module["dynCall_vd"]=asm["dynCall_vd"];var dynCall_vdd=Module["dynCall_vdd"]=asm["dynCall_vdd"];var dynCall_vdddd=Module["dynCall_vdddd"]=asm["dynCall_vdddd"];var dynCall_vdddddd=Module["dynCall_vdddddd"]=asm["dynCall_vdddddd"];var dynCall_vdi=Module["dynCall_vdi"]=asm["dynCall_vdi"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];var dynCall_vid=Module["dynCall_vid"]=asm["dynCall_vid"];var dynCall_vidd=Module["dynCall_vidd"]=asm["dynCall_vidd"];var dynCall_viddd=Module["dynCall_viddd"]=asm["dynCall_viddd"];var dynCall_vidddd=Module["dynCall_vidddd"]=asm["dynCall_vidddd"];var dynCall_viddddddddddddii=Module["dynCall_viddddddddddddii"]=asm["dynCall_viddddddddddddii"];var dynCall_vii=Module["dynCall_vii"]=asm["dynCall_vii"];var dynCall_viid=Module["dynCall_viid"]=asm["dynCall_viid"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viiiii=Module["dynCall_viiiii"]=asm["dynCall_viiiii"];var dynCall_viiiiii=Module["dynCall_viiiiii"]=asm["dynCall_viiiiii"];var dynCall_viiiiiii=Module["dynCall_viiiiiii"]=asm["dynCall_viiiiiii"];var dynCall_viiiiiiii=Module["dynCall_viiiiiiii"]=asm["dynCall_viiiiiiii"];var dynCall_viiiiiiiii=Module["dynCall_viiiiiiiii"]=asm["dynCall_viiiiiiiii"];var dynCall_viiiiiiiiiii=Module["dynCall_viiiiiiiiiii"]=asm["dynCall_viiiiiiiiiii"];var dynCall_viiiiiiiiiiii=Module["dynCall_viiiiiiiiiiii"]=asm["dynCall_viiiiiiiiiiii"];var dynCall_viiiiiiiiiiiii=Module["dynCall_viiiiiiiiiiiii"]=asm["dynCall_viiiiiiiiiiiii"];Runtime.stackAlloc=Module["stackAlloc"];Runtime.stackSave=Module["stackSave"];Runtime.stackRestore=Module["stackRestore"];Runtime.establishStackSpace=Module["establishStackSpace"];Runtime.setTempRet0=Module["setTempRet0"];Runtime.getTempRet0=Module["getTempRet0"];Module["asm"]=asm;if(memoryInitializer){if(typeof Module["locateFile"]==="function"){memoryInitializer=Module["locateFile"](memoryInitializer)}else if(Module["memoryInitializerPrefixURL"]){memoryInitializer=Module["memoryInitializerPrefixURL"]+memoryInitializer}if(ENVIRONMENT_IS_NODE||ENVIRONMENT_IS_SHELL){var data=Module["readBinary"](memoryInitializer);HEAPU8.set(data,Runtime.GLOBAL_BASE)}else{addRunDependency("memory initializer");var applyMemoryInitializer=(function(data){if(data.byteLength)data=new Uint8Array(data);HEAPU8.set(data,Runtime.GLOBAL_BASE);if(Module["memoryInitializerRequest"])delete Module["memoryInitializerRequest"].response;removeRunDependency("memory initializer")});function doBrowserLoad(){Module["readAsync"](memoryInitializer,applyMemoryInitializer,(function(){throw"could not load memory initializer "+memoryInitializer}))}var memoryInitializerBytes=tryParseAsDataURI(memoryInitializer);if(memoryInitializerBytes){applyMemoryInitializer(memoryInitializerBytes.buffer)}else if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];var response=request.response;if(request.status!==200&&request.status!==0){var data=tryParseAsDataURI(Module["memoryInitializerRequestURL"]);if(data){response=data.buffer}else{console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}}applyMemoryInitializer(response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;var preloadStartTime=null;var calledMain=false;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};Module["callMain"]=function callMain(args){args=args||[];ensureInitRuntime();var argc=args.length+1;function pad(){for(var i=0;i<4-1;i++){argv.push(0)}}var argv=[allocate(intArrayFromString(Module["thisProgram"]),"i8",ALLOC_NORMAL)];pad();for(var i=0;i<argc-1;i=i+1){argv.push(allocate(intArrayFromString(args[i]),"i8",ALLOC_NORMAL));pad()}argv.push(0);argv=allocate(argv,"i32",ALLOC_NORMAL);try{var ret=Module["_main"](argc,argv,0);exit(ret,true)}catch(e){if(e instanceof ExitStatus){return}else if(e=="SimulateInfiniteLoop"){Module["noExitRuntime"]=true;return}else{var toLog=e;if(e&&typeof e==="object"&&e.stack){toLog=[e,e.stack]}Module.printErr("exception thrown: "+toLog);Module["quit"](1,e)}}finally{calledMain=true}};function run(args){args=args||Module["arguments"];if(preloadStartTime===null)preloadStartTime=Date.now();if(runDependencies>0){return}preRun();if(runDependencies>0)return;if(Module["calledRun"])return;function doRun(){if(Module["calledRun"])return;Module["calledRun"]=true;if(ABORT)return;ensureInitRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();if(Module["_main"]&&shouldRunNow)Module["callMain"](args);postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout((function(){setTimeout((function(){Module["setStatus"]("")}),1);doRun()}),1)}else{doRun()}}Module["run"]=run;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]&&status===0){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=exit;var abortDecorators=[];function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;var extra="\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.";var output="abort("+what+") at "+stackTrace()+extra;if(abortDecorators){abortDecorators.forEach((function(decorator){output=decorator(output,what)}))}throw output}Module["abort"]=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}Module["noExitRuntime"]=true;run()
|
|
|
|
|
|
|
|
|
|
</script>
|
|
|
|
|
|
</body>
|
|
</html>
|