(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.Hugo = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){
/*

Emglken VM
==========

Copyright (c) 2017 Dannii Willis
MIT licenced
https://github.com/curiousdannii/emglken

*/

const base_options = {
	siglen: 64,
}

class EmglkenVM
{

	// Store the data and options
	prepare( data, options )
	{
		// If we are not given the Glk and GiDispa options then we cannot continue
		if ( !options.Glk )
		{
			throw new Error( 'A reference to Glk is required' )
		}
		if ( !options.GiDispa )
		{
			throw new Error( 'A reference to GiDispa is required' )
		}
		this.data = data
		this.options = Object.assign( {}, base_options, this.default_options(), options )

		this.setsig()
	}

	// Initialise the Module and then call the start func
	init()
	{
		const moduleoptions = {
			Glk: this.options.Glk,
			GiDispa: this.options.GiDispa,
		}
		// Node
		if ( typeof process === 'object' )
		{
			const fs = require( 'fs' )

			moduleoptions.memoryInitializerPrefixURL = this.options.dirname + '/'
			fs.readFile( this.options.dirname + '/' + this.options.emptfile, ( err, data ) =>
			{
				if ( err )
				{
					throw err
				}
				moduleoptions.emterpreterFile = data.buffer
				this.vm = this.options.module( moduleoptions )
				this.vm.then( () => this.start() )
			})
		}
		else
		{
			throw new Error( 'Unsupported runtime environment' )
		}
	}

	get_signature()
	{
		return this.signature
	}

	resume( res )
	{
		this.vm.glem_callback( res )
	}

	setsig()
	{
		this.signature = ''
		var i = 0
		while ( i < this.options.siglen )
		{
			this.signature += ( this.data[i] < 0x10 ? '0' : '' ) + this.data[i++].toString( 16 )
		}
	}

}

module.exports = EmglkenVM
},{"fs":undefined}],2:[function(require,module,exports){
var Module = function(Module) {
  Module = Module || {};
  var Module = Module;

var Module;if(!Module)Module=(typeof Module!=="undefined"?Module:null)||{};var moduleOverrides={};for(var key in Module){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}var ENVIRONMENT_IS_WEB=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){if(!nodeFS)nodeFS=require("fs");if(!nodePath)nodePath=require("path");filename=nodePath["normalize"](filename);var 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};Module["load"]=function load(f){globalEval(read(f))};if(!Module["thisProgram"]){if(process["argv"].length>1){Module["thisProgram"]=process["argv"][1].replace(/\\/g,"/")}else{Module["thisProgram"]="unknown-program"}}Module["arguments"]=process["argv"].slice(2);if(typeof module!=="undefined"){module["exports"]=Module}process["on"]("uncaughtException",(function(ex){if(!(ex instanceof ExitStatus)){throw ex}}));Module["inspect"]=(function(){return"[Emscripten Module object]"})}else if(ENVIRONMENT_IS_SHELL){if(!Module["print"])Module["print"]=print;if(typeof printErr!="undefined")Module["printErr"]=printErr;if(typeof read!="undefined"){Module["read"]=read}else{Module["read"]=function shell_read(){throw"no read() available"}}Module["readBinary"]=function readBinary(f){if(typeof readbuffer==="function"){return new Uint8Array(readbuffer(f))}var data=read(f,"binary");assert(typeof data==="object");return data};if(typeof scriptArgs!="undefined"){Module["arguments"]=scriptArgs}else if(typeof arguments!="undefined"){Module["arguments"]=arguments}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){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){Module["readBinary"]=function readBinary(url){var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}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)}else{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(ENVIRONMENT_IS_WORKER){Module["load"]=importScripts}if(typeof Module["setWindowTitle"]==="undefined"){Module["setWindowTitle"]=(function(title){document.title=title})}}else{throw"Unknown runtime environment. Where are we?"}function globalEval(x){eval.call(null,x)}if(!Module["load"]&&Module["read"]){Module["load"]=function load(f){globalEval(Module["read"](f))}}if(!Module["print"]){Module["print"]=(function(){})}if(!Module["printErr"]){Module["printErr"]=Module["print"]}if(!Module["arguments"]){Module["arguments"]=[]}if(!Module["thisProgram"]){Module["thisProgram"]="./this.program"}if(!Module["quit"]){Module["quit"]=(function(status,toThrow){throw toThrow})}Module.print=Module["print"];Module.printErr=Module["printErr"];Module["preRun"]=[];Module["postRun"]=[];for(var key in moduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}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){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];if(!func){try{func=eval("_"+ident)}catch(e){}}assert(func,"Cannot call unknown function "+ident+" (perhaps LLVM optimizations or closure removed it?)");return func}var cwrap,ccall;((function(){var JSfuncs={"stackSave":(function(){Runtime.stackSave()}),"stackRestore":(function(){Runtime.stackRestore()}),"arrayToC":(function(arr){var ret=Runtime.stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}),"stringToC":(function(str){var ret=0;if(str!==null&&str!==undefined&&str!==0){var len=(str.length<<2)+1;ret=Runtime.stackAlloc(len);stringToUTF8(str,ret,len)}return ret})};var toC={"string":JSfuncs["stringToC"],"array":JSfuncs["arrayToC"]};ccall=function ccallFunc(ident,returnType,argTypes,args,opts){var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i<args.length;i++){var converter=toC[argTypes[i]];if(converter){if(stack===0)stack=Runtime.stackSave();cArgs[i]=converter(args[i])}else{cArgs[i]=args[i]}}}var ret=func.apply(null,cArgs);if(returnType==="string")ret=Pointer_stringify(ret);if(stack!==0){if(opts&&opts.async){EmterpreterAsync.asyncFinalizers.push((function(){Runtime.stackRestore(stack)}));return}Runtime.stackRestore(stack)}return ret};var sourceRegex=/^function\s*[a-zA-Z$_0-9]*\s*\(([^)]*)\)\s*{\s*([^*]*?)[\s;]*(?:return\s*(.*?)[;\s]*)?}$/;function parseJSFunc(jsfunc){var parsed=jsfunc.toString().match(sourceRegex).slice(1);return{arguments:parsed[0],body:parsed[1],returnValue:parsed[2]}}var JSsource=null;function ensureJSsource(){if(!JSsource){JSsource={};for(var fun in JSfuncs){if(JSfuncs.hasOwnProperty(fun)){JSsource[fun]=parseJSFunc(JSfuncs[fun])}}}}cwrap=function cwrap(ident,returnType,argTypes){argTypes=argTypes||[];var cfunc=getCFunc(ident);var numericArgs=argTypes.every((function(type){return type==="number"}));var numericRet=returnType!=="string";if(numericRet&&numericArgs){return cfunc}var argNames=argTypes.map((function(x,i){return"$"+i}));var funcstr="(function("+argNames.join(",")+") {";var nargs=argTypes.length;if(!numericArgs){ensureJSsource();funcstr+="var stack = "+JSsource["stackSave"].body+";";for(var i=0;i<nargs;i++){var arg=argNames[i],type=argTypes[i];if(type==="number")continue;var convertCode=JSsource[type+"ToC"];funcstr+="var "+convertCode.arguments+" = "+arg+";";funcstr+=convertCode.body+";";funcstr+=arg+"=("+convertCode.returnValue+");"}}var cfuncname=parseJSFunc((function(){return cfunc})).returnValue;funcstr+="var ret = "+cfuncname+"("+argNames.join(",")+");";if(!numericRet){var strgfy=parseJSFunc((function(){return Pointer_stringify})).returnValue;funcstr+="ret = "+strgfy+"(ret);"}if(!numericArgs){ensureJSsource();funcstr+=JSsource["stackRestore"].body.replace("()","(stack)")+";"}funcstr+="return ret})";return eval(funcstr)}}))();Module["ccall"]=ccall;Module["cwrap"]=cwrap;function setValue(ptr,value,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";switch(type){case"i1":HEAP8[ptr>>0]=value;break;case"i8":HEAP8[ptr>>0]=value;break;case"i16":HEAP16[ptr>>1]=value;break;case"i32":HEAP32[ptr>>2]=value;break;case"i64":tempI64=[value>>>0,(tempDouble=value,+Math_abs(tempDouble)>=+1?tempDouble>+0?(Math_min(+Math_floor(tempDouble/+4294967296),+4294967295)|0)>>>0:~~+Math_ceil((tempDouble- +(~~tempDouble>>>0))/+4294967296)>>>0:0)],HEAP32[ptr>>2]=tempI64[0],HEAP32[ptr+4>>2]=tempI64[1];break;case"float":HEAPF32[ptr>>2]=value;break;case"double":HEAPF64[ptr>>3]=value;break;default:abort("invalid type for setValue: "+type)}}Module["setValue"]=setValue;function getValue(ptr,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";switch(type){case"i1":return HEAP8[ptr>>0];case"i8":return HEAP8[ptr>>0];case"i16":return HEAP16[ptr>>1];case"i32":return HEAP32[ptr>>2];case"i64":return HEAP32[ptr>>2];case"float":return HEAPF32[ptr>>2];case"double":return HEAPF64[ptr>>3];default:abort("invalid type for setValue: "+type)}return null}Module["getValue"]=getValue;var ALLOC_NORMAL=0;var ALLOC_STACK=1;var ALLOC_STATIC=2;var ALLOC_DYNAMIC=3;var ALLOC_NONE=4;Module["ALLOC_NORMAL"]=ALLOC_NORMAL;Module["ALLOC_STACK"]=ALLOC_STACK;Module["ALLOC_STATIC"]=ALLOC_STATIC;Module["ALLOC_DYNAMIC"]=ALLOC_DYNAMIC;Module["ALLOC_NONE"]=ALLOC_NONE;function allocate(slab,types,allocator,ptr){var zeroinit,size;if(typeof slab==="number"){zeroinit=true;size=slab}else{zeroinit=false;size=slab.length}var singleType=typeof types==="string"?types:null;var ret;if(allocator==ALLOC_NONE){ret=ptr}else{ret=[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 ptr=ret,stop;assert((ret&3)==0);stop=ret+(size&~3);for(;ptr<stop;ptr+=4){HEAP32[ptr>>2]=0}stop=ret+size;while(ptr<stop){HEAP8[ptr++>>0]=0}return ret}if(singleType==="i8"){if(slab.subarray||slab.slice){HEAPU8.set(slab,ret)}else{HEAPU8.set(new Uint8Array(slab),ret)}return ret}var i=0,type,typeSize,previousType;while(i<size){var curr=slab[i];if(typeof curr==="function"){curr=Runtime.getFunctionIndex(curr)}type=singleType||types[i];if(type===0){i++;continue}if(type=="i64")type="i32";setValue(ret+i,curr,type);if(previousType!==type){typeSize=Runtime.getNativeTypeSize(type);previousType=type}i+=typeSize}return ret}Module["allocate"]=allocate;function getMemory(size){if(!staticSealed)return Runtime.staticAlloc(size);if(!runtimeInitialized)return Runtime.dynamicAlloc(size);return _malloc(size)}Module["getMemory"]=getMemory;function Pointer_stringify(ptr,length){if(length===0||!ptr)return"";var hasUtf=0;var t;var i=0;while(1){t=HEAPU8[ptr+i>>0];hasUtf|=t;if(t==0&&!length)break;i++;if(length&&i==length)break}if(!length)length=i;var ret="";if(hasUtf<128){var MAX_CHUNK=1024;var curr;while(length>0){curr=String.fromCharCode.apply(String,HEAPU8.subarray(ptr,ptr+Math.min(length,MAX_CHUNK)));ret=ret?ret+curr:curr;ptr+=MAX_CHUNK;length-=MAX_CHUNK}return ret}return Module["UTF8ToString"](ptr)}Module["Pointer_stringify"]=Pointer_stringify;function AsciiToString(ptr){var str="";while(1){var ch=HEAP8[ptr++>>0];if(!ch)return str;str+=String.fromCharCode(ch)}}Module["AsciiToString"]=AsciiToString;function stringToAscii(str,outPtr){return writeAsciiToMemory(str,outPtr,false)}Module["stringToAscii"]=stringToAscii;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)}}}}Module["UTF8ArrayToString"]=UTF8ArrayToString;function UTF8ToString(ptr){return UTF8ArrayToString(HEAPU8,ptr)}Module["UTF8ToString"]=UTF8ToString;function stringToUTF8Array(str,outU8Array,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){if(outIdx>=endIdx)break;outU8Array[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;outU8Array[outIdx++]=192|u>>6;outU8Array[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;outU8Array[outIdx++]=224|u>>12;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=2097151){if(outIdx+3>=endIdx)break;outU8Array[outIdx++]=240|u>>18;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else if(u<=67108863){if(outIdx+4>=endIdx)break;outU8Array[outIdx++]=248|u>>24;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}else{if(outIdx+5>=endIdx)break;outU8Array[outIdx++]=252|u>>30;outU8Array[outIdx++]=128|u>>24&63;outU8Array[outIdx++]=128|u>>18&63;outU8Array[outIdx++]=128|u>>12&63;outU8Array[outIdx++]=128|u>>6&63;outU8Array[outIdx++]=128|u&63}}outU8Array[outIdx]=0;return outIdx-startIdx}Module["stringToUTF8Array"]=stringToUTF8Array;function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}Module["stringToUTF8"]=stringToUTF8;function lengthBytesUTF8(str){var len=0;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343)u=65536+((u&1023)<<10)|str.charCodeAt(++i)&1023;if(u<=127){++len}else if(u<=2047){len+=2}else if(u<=65535){len+=3}else if(u<=2097151){len+=4}else if(u<=67108863){len+=5}else{len+=6}}return len}Module["lengthBytesUTF8"]=lengthBytesUTF8;var UTF16Decoder=typeof TextDecoder!=="undefined"?new TextDecoder("utf-16le"):undefined;function demangle(func){var __cxa_demangle_func=Module["___cxa_demangle"]||Module["__cxa_demangle"];if(__cxa_demangle_func){try{var s=func.substr(1);var len=lengthBytesUTF8(s)+1;var buf=_malloc(len);stringToUTF8(s,buf,len);var status=_malloc(4);var ret=__cxa_demangle_func(buf,0,0,status);if(getValue(status,"i32")===0&&ret){return Pointer_stringify(ret)}}catch(e){}finally{if(buf)_free(buf);if(status)_free(status);if(ret)_free(ret)}return func}Runtime.warnOnce("warning: build with  -s DEMANGLE_SUPPORT=1  to link in libcxxabi demangling");return func}function demangleAll(text){var regex=/__Z[\w\d_]+/g;return text.replace(regex,(function(x){var y=demangle(x);return x===y?x:x+" ["+y+"]"}))}function jsStackTrace(){var err=new Error;if(!err.stack){try{throw new Error(0)}catch(e){err=e}if(!err.stack){return"(no stack trace available)"}}return err.stack.toString()}function stackTrace(){var js=jsStackTrace();if(Module["extraStackTrace"])js+="\n"+Module["extraStackTrace"]();return demangleAll(js)}Module["stackTrace"]=stackTrace;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"]||16777216;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)}Module["addOnPreRun"]=addOnPreRun;function addOnInit(cb){__ATINIT__.unshift(cb)}Module["addOnInit"]=addOnInit;function addOnPreMain(cb){__ATMAIN__.unshift(cb)}Module["addOnPreMain"]=addOnPreMain;function addOnExit(cb){__ATEXIT__.unshift(cb)}Module["addOnExit"]=addOnExit;function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}Module["addOnPostRun"]=addOnPostRun;function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}Module["intArrayFromString"]=intArrayFromString;function intArrayToString(array){var ret=[];for(var i=0;i<array.length;i++){var chr=array[i];if(chr>255){chr&=255}ret.push(String.fromCharCode(chr))}return ret.join("")}Module["intArrayToString"]=intArrayToString;function writeStringToMemory(string,buffer,dontAddNull){Runtime.warnOnce("writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!");var lastChar,end;if(dontAddNull){end=buffer+lengthBytesUTF8(string);lastChar=HEAP8[end]}stringToUTF8(string,buffer,Infinity);if(dontAddNull)HEAP8[end]=lastChar}Module["writeStringToMemory"]=writeStringToMemory;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}Module["writeAsciiToMemory"]=writeAsciiToMemory;if(!Math["imul"]||Math["imul"](4294967295,5)!==-5)Math["imul"]=function imul(a,b){var ah=a>>>16;var al=a&65535;var bh=b>>>16;var bl=b&65535;return al*bl+(ah*bl+al*bh<<16)|0};Math.imul=Math["imul"];if(!Math["clz32"])Math["clz32"]=(function(x){x=x>>>0;for(var i=0;i<32;i++){if(x&1<<31-i)return i}return 32});Math.clz32=Math["clz32"];if(!Math["trunc"])Math["trunc"]=(function(x){return x<0?Math.ceil(x):Math.floor(x)});Math.trunc=Math["trunc"];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=[];STATIC_BASE=Runtime.GLOBAL_BASE;STATICTOP=STATIC_BASE+110848;__ATINIT__.push();memoryInitializer="hugo-core.js.mem";var tempDoublePtr=STATICTOP;STATICTOP+=16;var EMTSTACKTOP=getMemory(1048576);var EMT_STACK_MAX=EMTSTACKTOP+1048576;var eb=getMemory(99584);__ATPRERUN__.push((function(){var bytecodeFile=Module["emterpreterFile"];var codeSize=99584;HEAPU8.set((new Uint8Array(bytecodeFile)).subarray(0,codeSize),eb);var relocationsStart=codeSize+3>>2;var relocations=(new Uint32Array(bytecodeFile)).subarray(relocationsStart);if(relocations.length>0)for(var i=0;i<relocations.length;i++){HEAPU32[eb+relocations[i]>>2]=HEAPU32[eb+relocations[i]>>2]+eb}}));function _window_to_id(tag){return GiDispa.class_obj_to_id("window",tag)}function _stream_to_id(tag){return GiDispa.class_obj_to_id("stream",tag)}function _fileref_to_id(tag){return GiDispa.class_obj_to_id("fileref",tag)}function _window_from_ptr(winptr){return _window_from_id(getValue(winptr,"i32"))}function _stream_from_ptr(streamptr){return _stream_from_id(getValue(streamptr,"i32"))}function _fileref_from_ptr(structptr){return _fileref_from_id(getValue(structptr,"i32"))}function _window_from_id(tag){return GiDispa.class_obj_from_id("window",tag)}function _stream_from_id(tag){return GiDispa.class_obj_from_id("stream",tag)}function _fileref_from_id(tag){return GiDispa.class_obj_from_id("fileref",tag)}function _glk_get_buffer_stream(str,bufaddr,len){return Glk.glk_get_buffer_stream(_stream_from_ptr(str),new Uint8Array(HEAPU8.buffer,bufaddr,len))}function _glem_get_window_stream_tag(tag){return _window_from_id(tag).str.disprock}function _glem_request_line_event(tag,bufaddr,maxlen,initlen,unicode){var win=_window_from_id(tag);if(unicode){var buf=new Uint32Array(HEAPU8.buffer,bufaddr,maxlen);Glk.glk_request_line_event_uni(win,buf,initlen)}else{var buf=new Uint8Array(HEAPU8.buffer,bufaddr,maxlen);Glk.glk_request_line_event(win,buf,initlen)}}Module["_i64Add"]=_i64Add;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(!window["setImmediate"]){var setImmediates=[];var emscriptenMainLoopMessageId="setimmediate";function Browser_setImmediate_messageHandler(event){if(event.source===window&&event.data===emscriptenMainLoopMessageId){event.stopPropagation();setImmediates.shift()()}}window.addEventListener("message",Browser_setImmediate_messageHandler,true);window["setImmediate"]=function Browser_emulated_setImmediate(func){setImmediates.push(func);if(ENVIRONMENT_IS_WORKER){if(Module["setImmediates"]===undefined)Module["setImmediates"]=[];Module["setImmediates"].push(func);window.postMessage({target:emscriptenMainLoopMessageId})}else window.postMessage(emscriptenMainLoopMessageId,"*")}}Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setImmediate(){window["setImmediate"](Browser.mainLoop.runner)};Browser.mainLoop.method="immediate"}return 0}function _emscripten_get_now(){abort()}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 EmterpreterAsync={initted:false,state:0,saveStack:"",yieldCallbacks:[],postAsync:null,asyncFinalizers:[],ensureInit:(function(){if(this.initted)return;this.initted=true}),setState:(function(s){this.ensureInit();this.state=s;Module["asm"].setAsyncState(s)}),handle:(function(doAsyncOp,yieldDuring){Module["noExitRuntime"]=true;if(EmterpreterAsync.state===0){var stack=new Int32Array(HEAP32.subarray(EMTSTACKTOP>>2,Module["asm"].emtStackSave()>>2));var stacktop=Module["asm"].stackSave();var resumedCallbacksForYield=false;function resumeCallbacksForYield(){if(resumedCallbacksForYield)return;resumedCallbacksForYield=true;EmterpreterAsync.yieldCallbacks.forEach((function(func){func()}));Browser.resumeAsyncCallbacks()}var callingDoAsyncOp=1;doAsyncOp(function resume(post){if(callingDoAsyncOp){assert(callingDoAsyncOp===1);callingDoAsyncOp++;setTimeout((function(){resume(post)}),0);return}assert(EmterpreterAsync.state===1||EmterpreterAsync.state===3);EmterpreterAsync.setState(3);if(yieldDuring){resumeCallbacksForYield()}HEAP32.set(stack,EMTSTACKTOP>>2);EmterpreterAsync.setState(2);if(Browser.mainLoop.func){Browser.mainLoop.resume()}assert(!EmterpreterAsync.postAsync);EmterpreterAsync.postAsync=post||null;Module["asm"].emterpret(stack[0]);if(!yieldDuring&&EmterpreterAsync.state===0){Browser.resumeAsyncCallbacks()}if(EmterpreterAsync.state===0){EmterpreterAsync.asyncFinalizers.forEach((function(func){func()}));EmterpreterAsync.asyncFinalizers.length=0}});callingDoAsyncOp=0;EmterpreterAsync.setState(1);if(Browser.mainLoop.func){Browser.mainLoop.pause()}if(yieldDuring){setTimeout((function(){resumeCallbacksForYield()}),0)}else{Browser.pauseAsyncCallbacks()}}else{assert(EmterpreterAsync.state===2);EmterpreterAsync.setState(0);if(EmterpreterAsync.postAsync){var ret=EmterpreterAsync.postAsync();EmterpreterAsync.postAsync=null;return ret}}})};function _glem_fileref_create_by_prompt(usage,fmode,rock,tagptr){EmterpreterAsync.handle((function(resume){Glk.glk_fileref_create_by_prompt(usage,fmode,rock);Module.glem_callback=(function(fref){if(ABORT){return}Module.setValue(tagptr,_fileref_to_id(fref),"i32");resume()});Glk.update()}))}Module["_memset"]=_memset;function _glem_fileref_create_by_name(usage,name,rock){var fref=Glk.glk_fileref_create_by_name(usage,AsciiToString(name),rock);return _fileref_to_id(fref)}Module["_bitshift64Shl"]=_bitshift64Shl;function _abort(){Module["abort"]()}function _glk_put_string(string){Glk.glk_put_string(AsciiToString(string))}function _glk_get_line_stream(str,bufaddr,len){return Glk.glk_get_line_stream(_stream_from_ptr(str),new Uint8Array(HEAPU8.buffer,bufaddr,len))}Module["_i64Subtract"]=_i64Subtract;function _glem_fatal_error(msg){Glk.fatal_error(Pointer_stringify(msg))}function ___lock(){}function _glem_window_close(tag){Glk.glk_window_close(_window_from_id(tag))}function _glk_window_set_arrangement(window,method,size,keywin){Glk.glk_window_set_arrangement(_window_from_ptr(window),method,size,_window_from_ptr(keywin))}function _glk_fileref_does_file_exist(fref){return Glk.glk_fileref_does_file_exist(_fileref_from_ptr(fref))}function _glem_fileref_destroy(tag){Glk.glk_fileref_destroy(_fileref_from_id(tag))}function _glk_request_char_event(window){Glk.glk_request_char_event(_window_from_ptr(window))}function _glem_select(data){EmterpreterAsync.handle((function(resume){var glk_event=new Glk.RefStruct;Glk.glk_select(glk_event);Module.glem_callback=(function(){if(ABORT){return}Module.setValue(data,glk_event.get_field(0),"i32");Module.setValue(data+4,_window_to_id(glk_event.get_field(1)),"i32");Module.setValue(data+8,glk_event.get_field(2),"i32");Module.setValue(data+12,glk_event.get_field(3),"i32");resume()});Glk.update()}))}function __exit(status){Module["exit"](status)}function _exit(status){__exit(status)}function ___unlock(){}function _glem_stream_open_memory(bufaddr,buflen,fmode,rock,unicode){var buf;var str;if(unicode){buf=new Uint32Array(HEAPU8.buffer,bufaddr,buflen);str=Glk.glk_stream_open_memory_uni(buf,fmode,rock)}else{buf=new Uint8Array(HEAPU8.buffer,bufaddr,buflen);str=Glk.glk_stream_open_memory(buf,fmode,rock)}return _stream_to_id(str)}function _glk_stream_set_position(str,pos,seekmode){Glk.glk_stream_set_position(_stream_from_ptr(str),pos,seekmode)}function _glk_put_string_stream(str,string){Glk.glk_put_string_stream(_stream_from_ptr(str),AsciiToString(string))}var SYSCALLS={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}),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 ___syscall54(which,varargs){SYSCALLS.varargs=varargs;try{return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}var ___tm_current=STATICTOP;STATICTOP+=48;var ___tm_timezone=allocate(intArrayFromString("GMT"),"i8",ALLOC_STATIC);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=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 _localtime(time){return _localtime_r(time,___tm_current)}function _glem_new_window(splitwin,method,size,wintype,rock,pairwintag){var win=Glk.glk_window_open(_window_from_id(splitwin),method,size,wintype,rock);var pairwin=win?Glk.glk_window_get_parent(win):0;setValue(pairwintag,_window_to_id(pairwin),"i32");return _window_to_id(win)}Module["_bitshift64Lshr"]=_bitshift64Lshr;function _glem_exit(){Glk.glk_exit();Glk.update()}function _glk_window_clear(window){Glk.glk_window_clear(_window_from_ptr(window))}function _glk_set_style(style){Glk.glk_set_style(style)}function _glk_window_get_size(window,width,height){var widthBox=new Glk.RefBox;var heightBox=new Glk.RefBox;Glk.glk_window_get_size(_window_from_ptr(window),widthBox,heightBox);if(width){setValue(width,widthBox.value,"i32")}if(height){setValue(height,heightBox.value,"i32")}}function _glk_gestalt_ext(sel,val,arraddr,arrlen){var arr=new Uint32Array(HEAPU8.buffer,arraddr,arrlen);return Glk.glk_gestalt_ext(sel,val,arr)}function _time(ptr){var ret=Date.now()/1e3|0;if(ptr){HEAP32[ptr>>2]=ret}return 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 _glk_put_buffer_stream(str,bufaddr,len){Glk.glk_put_buffer_stream(_stream_from_ptr(str),new Uint8Array(HEAPU8.buffer,bufaddr,len))}function _glem_stream_open_file(freftag,fmode,rock,unicode){var fileref=_fileref_from_id(freftag);var str;if(unicode){str=Glk.glk_stream_open_file_uni(fileref,fmode,rock)}else{str=Glk.glk_stream_open_file(fileref,fmode,rock)}return _stream_to_id(str)}function _glem_stream_finalise(tag,resultstruct,close){var str=_stream_from_id(tag);if(resultstruct){setValue(resultstruct,str.readcount,"i32");setValue(resultstruct+4,str.writecount,"i32")}if(close){Glk.glk_stream_close(str)}}function _emscripten_memcpy_big(dest,src,num){HEAPU8.set(HEAPU8.subarray(src,src+num),dest);return dest}Module["_memcpy"]=_memcpy;function _glem_stream_set_current(tag){Glk.glk_stream_set_current(_stream_from_id(tag))}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}}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);Module["_llvm_cttz_i32"]=_llvm_cttz_i32;Module["___udivmoddi4"]=___udivmoddi4;Module["___udivdi3"]=___udivdi3;Module["___muldsi3"]=___muldsi3;Module["___muldi3"]=___muldi3;function ___setErrNo(value){if(Module["___errno_location"])HEAP32[Module["___errno_location"]()>>2]=value;return value}Module["_sbrk"]=_sbrk;Module["_memmove"]=_memmove;function _glk_get_char_stream(str){return Glk.glk_get_char_stream(_stream_from_ptr(str))}function _glk_stream_get_position(str){return Glk.glk_stream_get_position(_stream_from_ptr(str))}function _glk_window_move_cursor(window,xpos,ypos){Glk.glk_window_move_cursor(_window_from_ptr(window),xpos,ypos)}Module["___uremdi3"]=___uremdi3;Module["_llvm_bswap_i32"]=_llvm_bswap_i32;function _glk_put_char_stream(str,ch){Glk.glk_put_char_stream(_stream_from_ptr(str),ch)}function ___syscall140(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(),offset_high=SYSCALLS.get(),offset_low=SYSCALLS.get(),result=SYSCALLS.get(),whence=SYSCALLS.get();var offset=offset_low;FS.llseek(stream,offset,whence);HEAP32[result>>2]=stream.position;if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}function ___syscall146(which,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.get(),iov=SYSCALLS.get(),iovcnt=SYSCALLS.get();var ret=0;if(!___syscall146.buffer){___syscall146.buffers=[null,[],[]];___syscall146.printChar=(function(stream,curr){var buffer=___syscall146.buffers[stream];assert(buffer);if(curr===0||curr===10){(stream===1?Module["print"]:Module["printErr"])(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}})}for(var i=0;i<iovcnt;i++){var ptr=HEAP32[iov+i*8>>2];var len=HEAP32[iov+(i*8+4)>>2];for(var j=0;j<len;j++){___syscall146.printChar(stream,HEAPU8[ptr+j])}ret+=len}return ret}catch(e){if(typeof FS==="undefined"||!(e instanceof FS.ErrnoError))abort(e);return-e.errno}}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}var Glk=Module["Glk"],GiDispa=Module["GiDispa"];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)};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}__ATEXIT__.push((function(){var fflush=Module["_fflush"];if(fflush)fflush(0);var printChar=___syscall146.printChar;if(!printChar)return;var buffers=___syscall146.buffers;if(buffers[1].length)printChar(1,10);if(buffers[2].length)printChar(2,10)}));DYNAMICTOP_PTR=allocate(1,"i32",ALLOC_STATIC);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;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_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_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_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_vi(index,a1){try{Module["dynCall_vi"](index,a1)}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_ii":invoke_ii,"invoke_iiii":invoke_iiii,"invoke_viiii":invoke_viiii,"invoke_viii":invoke_viii,"invoke_vi":invoke_vi,"_glem_fatal_error":_glem_fatal_error,"___lock":___lock,"_glem_fileref_create_by_prompt":_glem_fileref_create_by_prompt,"_glk_put_string":_glk_put_string,"_glem_window_close":_glem_window_close,"_glk_put_string_stream":_glk_put_string_stream,"_glk_window_get_size":_glk_window_get_size,"_glk_put_buffer_stream":_glk_put_buffer_stream,"_abort":_abort,"_glem_stream_set_current":_glem_stream_set_current,"_emscripten_set_main_loop_timing":_emscripten_set_main_loop_timing,"_glem_get_window_stream_tag":_glem_get_window_stream_tag,"_glk_get_line_stream":_glk_get_line_stream,"_glk_stream_get_position":_glk_stream_get_position,"_glem_request_line_event":_glem_request_line_event,"_glk_put_char_stream":_glk_put_char_stream,"_fileref_to_id":_fileref_to_id,"_glk_window_set_arrangement":_glk_window_set_arrangement,"_glem_fileref_destroy":_glem_fileref_destroy,"_localtime_r":_localtime_r,"_tzset":_tzset,"_glk_gestalt_ext":_glk_gestalt_ext,"_glk_fileref_does_file_exist":_glk_fileref_does_file_exist,"_fileref_from_id":_fileref_from_id,"_emscripten_memcpy_big":_emscripten_memcpy_big,"___syscall54":___syscall54,"_glem_stream_open_memory":_glem_stream_open_memory,"__exit":__exit,"_glk_window_move_cursor":_glk_window_move_cursor,"_glk_stream_set_position":_glk_stream_set_position,"_strftime":_strftime,"_stream_to_id":_stream_to_id,"__arraySum":__arraySum,"_fileref_from_ptr":_fileref_from_ptr,"_glem_exit":_glem_exit,"_glk_get_buffer_stream":_glk_get_buffer_stream,"_stream_from_id":_stream_from_id,"_glk_window_clear":_glk_window_clear,"_glk_request_char_event":_glk_request_char_event,"_glem_stream_open_file":_glem_stream_open_file,"_glem_new_window":_glem_new_window,"_window_from_ptr":_window_from_ptr,"___unlock":___unlock,"_window_from_id":_window_from_id,"__isLeapYear":__isLeapYear,"_emscripten_set_main_loop":_emscripten_set_main_loop,"_exit":_exit,"_emscripten_get_now":_emscripten_get_now,"_stream_from_ptr":_stream_from_ptr,"_glem_fileref_create_by_name":_glem_fileref_create_by_name,"_glem_select":_glem_select,"__addDays":__addDays,"_glk_set_style":_glk_set_style,"___syscall6":___syscall6,"_window_to_id":_window_to_id,"_time":_time,"_gettimeofday":_gettimeofday,"___syscall146":___syscall146,"___syscall140":___syscall140,"_localtime":_localtime,"_glem_stream_finalise":_glem_stream_finalise,"_glk_get_char_stream":_glk_get_char_stream,"___setErrNo":___setErrNo,"DYNAMICTOP_PTR":DYNAMICTOP_PTR,"tempDoublePtr":tempDoublePtr,"ABORT":ABORT,"STACKTOP":STACKTOP,"STACK_MAX":STACK_MAX,"cttz_i8":cttz_i8};Module.asmLibraryArg["EMTSTACKTOP"]=EMTSTACKTOP;Module.asmLibraryArg["EMT_STACK_MAX"]=EMT_STACK_MAX;Module.asmLibraryArg["eb"]=eb;// EMSCRIPTEN_START_ASM
var asm=(function(global,env,buffer) {
"use asm";var a=new global.Int8Array(buffer);var b=new global.Int16Array(buffer);var c=new global.Int32Array(buffer);var d=new global.Uint8Array(buffer);var e=new global.Uint16Array(buffer);var f=new global.Uint32Array(buffer);var g=new global.Float32Array(buffer);var h=new global.Float64Array(buffer);var i=env.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_ii;var Y=env.invoke_iiii;var Z=env.invoke_viiii;var _=env.invoke_viii;var $=env.invoke_vi;var aa=env._glem_fatal_error;var ba=env.___lock;var ca=env._glem_fileref_create_by_prompt;var da=env._glk_put_string;var ea=env._glem_window_close;var fa=env._glk_put_string_stream;var ga=env._glk_window_get_size;var ha=env._glk_put_buffer_stream;var ia=env._abort;var ja=env._glem_stream_set_current;var ka=env._emscripten_set_main_loop_timing;var la=env._glem_get_window_stream_tag;var ma=env._glk_get_line_stream;var na=env._glk_stream_get_position;var oa=env._glem_request_line_event;var pa=env._glk_put_char_stream;var qa=env._fileref_to_id;var ra=env._glk_window_set_arrangement;var sa=env._glem_fileref_destroy;var ta=env._localtime_r;var ua=env._tzset;var va=env._glk_gestalt_ext;var wa=env._glk_fileref_does_file_exist;var xa=env._fileref_from_id;var ya=env._emscripten_memcpy_big;var za=env.___syscall54;var Aa=env._glem_stream_open_memory;var Ba=env.__exit;var Ca=env._glk_window_move_cursor;var Da=env._glk_stream_set_position;var Ea=env._strftime;var Fa=env._stream_to_id;var Ga=env.__arraySum;var Ha=env._fileref_from_ptr;var Ia=env._glem_exit;var Ja=env._glk_get_buffer_stream;var Ka=env._stream_from_id;var La=env._glk_window_clear;var Ma=env._glk_request_char_event;var Na=env._glem_stream_open_file;var Oa=env._glem_new_window;var Pa=env._window_from_ptr;var Qa=env.___unlock;var Ra=env._window_from_id;var Sa=env.__isLeapYear;var Ta=env._emscripten_set_main_loop;var Ua=env._exit;var Va=env._emscripten_get_now;var Wa=env._stream_from_ptr;var Xa=env._glem_fileref_create_by_name;var Ya=env._glem_select;var Za=env.__addDays;var _a=env._glk_set_style;var $a=env.___syscall6;var ab=env._window_to_id;var bb=env._time;var cb=env._gettimeofday;var db=env.___syscall146;var eb=env.___syscall140;var fb=env._localtime;var gb=env._glem_stream_finalise;var hb=env._glk_get_char_stream;var ib=env.___setErrNo;var jb=0.0;var kb=0;var lb=env.EMTSTACKTOP|0;var mb=env.EMT_STACK_MAX|0;var nb=env.eb|0;
// EMSCRIPTEN_START_FUNCS
function tb(b){b=b|0;var f=0,i=0,j=0,k=0,m=0,n=0.0;c[lb>>2]=b;f=lb+8|0;j=e[b+2>>1]|0;lb=lb+(j+1<<3)|0;if((kb|0)!=2){}else{b=(c[f-4>>2]|0)-8|0}b=b+4|0;while(1){b=b+4|0;i=c[b>>2]|0;j=i>>8&255;k=i>>16&255;m=i>>>24;switch(i&255){case 0:c[f+(j<<3)>>2]=c[f+(k<<3)>>2]|0;break;case 1:c[f+(j<<3)>>2]=i>>16;break;case 2:b=b+4|0;c[f+(j<<3)>>2]=c[b>>2]|0;break;case 3:c[f+(j<<3)>>2]=(c[f+(k<<3)>>2]|0)+(c[f+(m<<3)>>2]|0)|0;break;case 4:c[f+(j<<3)>>2]=(c[f+(k<<3)>>2]|0)-(c[f+(m<<3)>>2]|0)|0;break;case 5:c[f+(j<<3)>>2]=O(c[f+(k<<3)>>2]|0,c[f+(m<<3)>>2]|0)|0;break;case 6:c[f+(j<<3)>>2]=(c[f+(k<<3)>>2]|0)/(c[f+(m<<3)>>2]|0)|0;break;case 8:c[f+(j<<3)>>2]=(c[f+(k<<3)>>2]|0)%(c[f+(m<<3)>>2]|0)|0;break;case 11:c[f+(j<<3)>>2]=~(c[f+(k<<3)>>2]|0);break;case 13:c[f+(j<<3)>>2]=(c[f+(k<<3)>>2]|0)==(c[f+(m<<3)>>2]|0)|0;break;case 14:c[f+(j<<3)>>2]=(c[f+(k<<3)>>2]|0)!=(c[f+(m<<3)>>2]|0)|0;break;case 15:c[f+(j<<3)>>2]=(c[f+(k<<3)>>2]|0)<(c[f+(m<<3)>>2]|0)|0;break;case 17:c[f+(j<<3)>>2]=(c[f+(k<<3)>>2]|0)<=(c[f+(m<<3)>>2]|0)|0;break;case 19:c[f+(j<<3)>>2]=(c[f+(k<<3)>>2]|0)&(c[f+(m<<3)>>2]|0);break;case 20:c[f+(j<<3)>>2]=c[f+(k<<3)>>2]|0|(c[f+(m<<3)>>2]|0);break;case 21:c[f+(j<<3)>>2]=(c[f+(k<<3)>>2]|0)^(c[f+(m<<3)>>2]|0);break;case 22:c[f+(j<<3)>>2]=(c[f+(k<<3)>>2]|0)<<(c[f+(m<<3)>>2]|0);break;case 25:c[f+(j<<3)>>2]=(c[f+(k<<3)>>2]|0)+(i>>24)|0;break;case 26:c[f+(j<<3)>>2]=(c[f+(k<<3)>>2]|0)-(i>>24)|0;break;case 27:c[f+(j<<3)>>2]=O(c[f+(k<<3)>>2]|0,i>>24)|0;break;case 28:c[f+(j<<3)>>2]=(c[f+(k<<3)>>2]|0)/(i>>24)|0;break;case 29:c[f+(j<<3)>>2]=(c[f+(k<<3)>>2]>>>0)/(m>>>0)>>>0;break;case 30:c[f+(j<<3)>>2]=(c[f+(k<<3)>>2]|0)%(i>>24)|0;break;case 31:c[f+(j<<3)>>2]=(c[f+(k<<3)>>2]>>>0)%(m>>>0)>>>0;break;case 32:c[f+(j<<3)>>2]=(c[f+(k<<3)>>2]|0)==i>>24|0;break;case 33:c[f+(j<<3)>>2]=(c[f+(k<<3)>>2]|0)!=i>>24|0;break;case 34:c[f+(j<<3)>>2]=(c[f+(k<<3)>>2]|0)<i>>24|0;break;case 35:c[f+(j<<3)>>2]=c[f+(k<<3)>>2]>>>0<m>>>0|0;break;case 36:c[f+(j<<3)>>2]=(c[f+(k<<3)>>2]|0)<=i>>24|0;break;case 38:c[f+(j<<3)>>2]=(c[f+(k<<3)>>2]|0)&i>>24;break;case 39:c[f+(j<<3)>>2]=c[f+(k<<3)>>2]|0|i>>24;break;case 40:c[f+(j<<3)>>2]=(c[f+(k<<3)>>2]|0)^i>>24;break;case 41:c[f+(j<<3)>>2]=(c[f+(k<<3)>>2]|0)<<m;break;case 42:c[f+(j<<3)>>2]=(c[f+(k<<3)>>2]|0)>>m;break;case 43:c[f+(j<<3)>>2]=(c[f+(k<<3)>>2]|0)>>>m;break;case 45:if((c[f+(k<<3)>>2]|0)==(c[f+(m<<3)>>2]|0)){b=b+4|0}else{b=c[b+4>>2]|0;b=b-4|0;continue}break;case 46:if((c[f+(k<<3)>>2]|0)!=(c[f+(m<<3)>>2]|0)){b=b+4|0}else{b=c[b+4>>2]|0;b=b-4|0;continue}break;case 47:if((c[f+(k<<3)>>2]|0)<(c[f+(m<<3)>>2]|0)){b=b+4|0}else{b=c[b+4>>2]|0;b=b-4|0;continue}break;case 48:if(c[f+(k<<3)>>2]>>>0<c[f+(m<<3)>>2]>>>0){b=b+4|0}else{b=c[b+4>>2]|0;b=b-4|0;continue}break;case 49:if((c[f+(k<<3)>>2]|0)<=(c[f+(m<<3)>>2]|0)){b=b+4|0}else{b=c[b+4>>2]|0;b=b-4|0;continue}break;case 50:if(c[f+(k<<3)>>2]>>>0<=c[f+(m<<3)>>2]>>>0){b=b+4|0}else{b=c[b+4>>2]|0;b=b-4|0;continue}break;case 52:if((c[f+(k<<3)>>2]|0)==(c[f+(m<<3)>>2]|0)){b=c[b+4>>2]|0;b=b-4|0;continue}else{b=b+4|0}break;case 53:if((c[f+(k<<3)>>2]|0)!=(c[f+(m<<3)>>2]|0)){b=c[b+4>>2]|0;b=b-4|0;continue}else{b=b+4|0}break;case 54:if((c[f+(k<<3)>>2]|0)<(c[f+(m<<3)>>2]|0)){b=c[b+4>>2]|0;b=b-4|0;continue}else{b=b+4|0}break;case 56:if((c[f+(k<<3)>>2]|0)<=(c[f+(m<<3)>>2]|0)){b=c[b+4>>2]|0;b=b-4|0;continue}else{b=b+4|0}break;case 58:h[f+(j<<3)>>3]=+h[f+(k<<3)>>3];break;case 61:b=b+4|0;h[f+(j<<3)>>3]=+g[b>>2];break;case 63:h[f+(j<<3)>>3]=+h[f+(k<<3)>>3]+ +h[f+(m<<3)>>3];break;case 65:h[f+(j<<3)>>3]=+h[f+(k<<3)>>3]*+h[f+(m<<3)>>3];break;case 66:h[f+(j<<3)>>3]=+h[f+(k<<3)>>3]/+h[f+(m<<3)>>3];break;case 75:c[f+(j<<3)>>2]=~~+h[f+(k<<3)>>3];break;case 76:h[f+(j<<3)>>3]=+(c[f+(k<<3)>>2]|0);break;case 78:c[f+(j<<3)>>2]=a[c[f+(k<<3)>>2]>>0];break;case 79:c[f+(j<<3)>>2]=d[c[f+(k<<3)>>2]>>0];break;case 82:c[f+(j<<3)>>2]=c[c[f+(k<<3)>>2]>>2];break;case 83:a[c[f+(j<<3)>>2]>>0]=c[f+(k<<3)>>2]|0;break;case 85:c[c[f+(j<<3)>>2]>>2]=c[f+(k<<3)>>2]|0;break;case 90:c[f+(j<<3)>>2]=a[(c[f+(k<<3)>>2]|0)+(c[f+(m<<3)>>2]|0)>>0];break;case 91:c[f+(j<<3)>>2]=d[(c[f+(k<<3)>>2]|0)+(c[f+(m<<3)>>2]|0)>>0];break;case 94:c[f+(j<<3)>>2]=c[(c[f+(k<<3)>>2]|0)+(c[f+(m<<3)>>2]|0)>>2];break;case 95:a[(c[f+(j<<3)>>2]|0)+(c[f+(k<<3)>>2]|0)>>0]=c[f+(m<<3)>>2]|0;break;case 97:c[(c[f+(j<<3)>>2]|0)+(c[f+(k<<3)>>2]|0)>>2]=c[f+(m<<3)>>2]|0;break;case 102:c[f+(j<<3)>>2]=a[(c[f+(k<<3)>>2]|0)+(i>>24)>>0];break;case 106:c[f+(j<<3)>>2]=c[(c[f+(k<<3)>>2]|0)+(i>>24)>>2];break;case 107:a[(c[f+(j<<3)>>2]|0)+(k<<24>>24)>>0]=c[f+(m<<3)>>2]|0;break;case 109:c[(c[f+(j<<3)>>2]|0)+(k<<24>>24)>>2]=c[f+(m<<3)>>2]|0;break;case 116:c[c[f+(j<<3)>>2]>>2]=c[c[f+(k<<3)>>2]>>2]|0;break;case 119:b=b+(i>>16<<2)|0;b=b-4|0;continue;break;case 120:if(c[f+(j<<3)>>2]|0){b=b+(i>>16<<2)|0;b=b-4|0;continue}break;case 121:if(!(c[f+(j<<3)>>2]|0)){b=b+(i>>16<<2)|0;b=b-4|0;continue}break;case 125:b=b+4|0;c[f+(j<<3)>>2]=c[f+(k<<3)>>2]|0?c[f+(m<<3)>>2]|0:c[f+((d[b>>0]|0)<<3)>>2]|0;break;case 134:m=d[(c[b+4>>2]|0)+1|0]|0;k=0;if((kb|0)!=2){while((k|0)<(m|0)){c[lb+(k<<3)+8>>2]=c[f+(d[b+8+k>>0]<<3)>>2]|0;c[lb+(k<<3)+12>>2]=c[f+(d[b+8+k>>0]<<3)+4>>2]|0;k=k+1|0}}c[f-4>>2]=b;tb(c[b+4>>2]|0);if((kb|0)==1){lb=f-8|0;return}c[f+(j<<3)>>2]=c[lb>>2]|0;c[f+(j<<3)+4>>2]=c[lb+4>>2]|0;b=b+(4+m+3>>2<<2)|0;break;case 135:switch(i>>>16|0){case 0:{c[f-4>>2]=b;m=Ic(c[f+(d[b+4>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 1:{c[f-4>>2]=b;m=ke(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 2:{c[f-4>>2]=b;m=Lb(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 3:{c[f-4>>2]=b;Ib(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0,c[f+(d[b+6>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 4:{c[f-4>>2]=b;m=Yc(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 5:{c[f-4>>2]=b;m=ad(c[f+(d[b+4>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 6:{c[f-4>>2]=b;m=kc(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0,c[f+(d[b+6>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 7:{c[f-4>>2]=b;nc(c[f+(d[b+4>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 8:{c[f-4>>2]=b;dd(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0,c[f+(d[b+6>>0]<<3)>>2]|0,c[f+(d[b+7>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 9:{c[f-4>>2]=b;m=Mb(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0,c[f+(d[b+6>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 10:{c[f-4>>2]=b;Ab();if((kb|0)==1){lb=f-8|0;return};continue}case 11:{c[f-4>>2]=b;m=Cd(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0,c[f+(d[b+6>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 12:{c[f-4>>2]=b;m=jc(c[f+(d[b+4>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 13:{c[f-4>>2]=b;m=ze(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 14:{c[f-4>>2]=b;m=wc(c[f+(d[b+4>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 15:{c[f-4>>2]=b;m=Gd(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0,c[f+(d[b+6>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 16:{c[f-4>>2]=b;vc(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0,c[f+(d[b+6>>0]<<3)>>2]|0,c[f+(d[b+7>>0]<<3)>>2]|0,c[f+(d[b+8>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+8|0;continue}case 17:{c[f-4>>2]=b;m=yc(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 18:{c[f-4>>2]=b;Eb(c[f+(d[b+4>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 19:{c[f-4>>2]=b;m=ie(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0,c[f+(d[b+6>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 20:{c[f-4>>2]=b;m=Cc(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0,c[f+(d[b+6>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 21:{c[f-4>>2]=b;$b(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0,c[f+(d[b+6>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 22:{c[f-4>>2]=b;m=Lc(c[f+(d[b+4>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 23:{c[f-4>>2]=b;m=kd(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 24:{c[f-4>>2]=b;m=Pc(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0,c[f+(d[b+6>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 25:{c[f-4>>2]=b;m=Uc(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 26:{c[f-4>>2]=b;m=$c(c[f+(d[b+4>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 27:{c[f-4>>2]=b;m=bd(c[f+(d[b+4>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 28:{c[f-4>>2]=b;m=Vb(c[f+(d[b+4>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 29:{c[f-4>>2]=b;m=Pb(c[f+(d[b+4>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 30:{c[f-4>>2]=b;m=md()|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;continue}case 31:{c[f-4>>2]=b;m=pd()|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;continue}case 32:{c[f-4>>2]=b;m=hc(c[f+(d[b+4>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 33:{c[f-4>>2]=b;m=Bb()|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;continue}case 34:{c[f-4>>2]=b;m=hb(c[f+(d[b+4>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 35:{c[f-4>>2]=b;jd(c[f+(d[b+4>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 36:{c[f-4>>2]=b;ed();if((kb|0)==1){lb=f-8|0;return};continue}case 37:{c[f-4>>2]=b;Wc(c[f+(d[b+4>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 38:{c[f-4>>2]=b;Xc(c[f+(d[b+4>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 39:{c[f-4>>2]=b;m=Wb(c[f+(d[b+4>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 40:{c[f-4>>2]=b;m=Ce(c[f+(d[b+4>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 41:{c[f-4>>2]=b;Xb(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 42:{c[f-4>>2]=b;m=Fe()|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;continue}case 43:{c[f-4>>2]=b;uc();if((kb|0)==1){lb=f-8|0;return};continue}case 44:{c[f-4>>2]=b;pa(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 45:{c[f-4>>2]=b;xc(c[f+(d[b+4>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 46:{c[f-4>>2]=b;m=ma(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0,c[f+(d[b+6>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 47:{c[f-4>>2]=b;_b(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 48:{c[f-4>>2]=b;fa(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 49:{c[f-4>>2]=b;ha(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0,c[f+(d[b+6>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 50:{c[f-4>>2]=b;m=sd()|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;continue}case 51:{c[f-4>>2]=b;m=Qc(c[f+(d[b+4>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 52:{c[f-4>>2]=b;m=lf()|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;continue}case 53:{c[f-4>>2]=b;m=Rb(c[f+(d[b+4>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 54:{c[f-4>>2]=b;m=cd(c[f+(d[b+4>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 55:{c[f-4>>2]=b;m=zb(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 56:{c[f-4>>2]=b;Sc(c[f+(d[b+4>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 57:{c[f-4>>2]=b;m=Me(c[f+(d[b+4>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 58:{c[f-4>>2]=b;m=hd(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0,c[f+(d[b+6>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 59:{c[f-4>>2]=b;Da(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0,c[f+(d[b+6>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 60:{c[f-4>>2]=b;m=na(c[f+(d[b+4>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 61:{c[f-4>>2]=b;m=Dd(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 62:{c[f-4>>2]=b;Oe(c[f+(d[b+4>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 63:{c[f-4>>2]=b;ce();if((kb|0)==1){lb=f-8|0;return};continue}case 64:{c[f-4>>2]=b;m=Ne(c[f+(d[b+4>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 65:{c[f-4>>2]=b;m=Ja(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0,c[f+(d[b+6>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 66:{c[f-4>>2]=b;Nb(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0,c[f+(d[b+6>>0]<<3)>>2]|0,c[f+(d[b+7>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 67:{c[f-4>>2]=b;m=Ac(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0,c[f+(d[b+6>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 68:{c[f-4>>2]=b;m=fc(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0,c[f+(d[b+6>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 69:{c[f-4>>2]=b;Dc(c[f+(d[b+4>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 70:{c[f-4>>2]=b;m=wa(c[f+(d[b+4>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 71:{c[f-4>>2]=b;Zc(c[f+(d[b+4>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 72:{c[f-4>>2]=b;m=Fb(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 73:{c[f-4>>2]=b;m=_c(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0,c[f+(d[b+6>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 74:{c[f-4>>2]=b;m=je(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0,c[f+(d[b+6>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 75:{c[f-4>>2]=b;Rd(c[f+(d[b+4>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 76:{c[f-4>>2]=b;Ca(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0,c[f+(d[b+6>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 77:{c[f-4>>2]=b;da(c[f+(d[b+4>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 78:{c[f-4>>2]=b;Ma(c[f+(d[b+4>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 79:{c[f-4>>2]=b;m=yd(c[f+(d[b+4>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 80:{c[f-4>>2]=b;m=pc(c[f+(d[b+4>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 81:{c[f-4>>2]=b;m=Zb(c[f+(d[b+4>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 82:{c[f-4>>2]=b;m=qf()|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;continue}case 83:{c[f-4>>2]=b;ee(c[f+(d[b+4>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 84:{c[f-4>>2]=b;m=bb(c[f+(d[b+4>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 85:{c[f-4>>2]=b;m=fb(c[f+(d[b+4>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 86:{c[f-4>>2]=b;m=Ea(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0,c[f+(d[b+6>>0]<<3)>>2]|0,c[f+(d[b+7>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 87:{c[f-4>>2]=b;m=xd(c[f+(d[b+4>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 88:{c[f-4>>2]=b;m=wd(c[f+(d[b+4>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 89:{c[f-4>>2]=b;Xd(c[f+(d[b+4>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 90:{c[f-4>>2]=b;Ya(c[f+(d[b+4>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 91:{c[f-4>>2]=b;m=od(c[f+(d[b+4>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 92:{c[f-4>>2]=b;sc(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 93:{c[f-4>>2]=b;m=he(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0,c[f+(d[b+6>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 94:{c[f-4>>2]=b;ca(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0,c[f+(d[b+6>>0]<<3)>>2]|0,c[f+(d[b+7>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 95:{c[f-4>>2]=b;m=ub(c[f+(d[b+4>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 96:{c[f-4>>2]=b;rb[c[f+(d[b+4>>0]<<3)>>2]&0](c[f+(d[b+5>>0]<<3)>>2]|0,c[f+(d[b+6>>0]<<3)>>2]|0,c[f+(d[b+7>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 97:{c[f-4>>2]=b;aa(c[f+(d[b+4>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 98:{c[f-4>>2]=b;qc(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0,c[f+(d[b+6>>0]<<3)>>2]|0,c[f+(d[b+7>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 99:{c[f-4>>2]=b;m=se(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 100:{c[f-4>>2]=b;Od();if((kb|0)==1){lb=f-8|0;return};continue}case 101:{c[f-4>>2]=b;m=Db(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0,c[f+(d[b+6>>0]<<3)>>2]|0,c[f+(d[b+7>>0]<<3)>>2]|0,c[f+(d[b+8>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+8|0;continue}case 102:{c[f-4>>2]=b;m=Tb(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0,c[f+(d[b+6>>0]<<3)>>2]|0,c[f+(d[b+7>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 103:{c[f-4>>2]=b;Sd();if((kb|0)==1){lb=f-8|0;return};continue}case 104:{c[f-4>>2]=b;Hb(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}case 105:{c[f-4>>2]=b;m=Gb()|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;continue}case 106:{c[f-4>>2]=b;m=pe(c[f+(d[b+4>>0]<<3)>>2]|0,c[f+(d[b+5>>0]<<3)>>2]|0)|0;if((kb|0)==1){lb=f-8|0;return}else c[f+(j<<3)>>2]=m;b=b+4|0;continue}case 107:{c[f-4>>2]=b;Ud(c[f+(d[b+4>>0]<<3)>>2]|0);if((kb|0)==1){lb=f-8|0;return};b=b+4|0;continue}default:}break;case 136:c[f+(j<<3)>>2]=l;break;case 137:l=c[f+(j<<3)>>2]|0;break;case 138:m=c[f+(m<<3)>>2]|0;j=(c[f+(j<<3)>>2]|0)-(c[f+(k<<3)>>2]|0)>>>0;if(j>>>0>=m>>>0){b=b+(m<<2)|0;continue}b=c[b+4+(j<<2)>>2]|0;b=b-4|0;continue;break;case 139:lb=f-8|0;c[lb>>2]=c[f+(j<<3)>>2]|0;c[lb+4>>2]=c[f+(j<<3)+4>>2]|0;return;break;default:}}}function ub(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,z=0,A=0,B=0,C=0;v=0;C=l;l=l+16|0;i=C;do if(a>>>0<245){o=a>>>0<11?16:a+11&-8;a=o>>>3;s=c[23872]|0;b=s>>>a;if(b&3|0){b=(b&1^1)+a|0;d=95528+(b<<1<<2)|0;e=d+8|0;f=c[e>>2]|0;g=f+8|0;h=c[g>>2]|0;do if((d|0)==(h|0))c[23872]=s&~(1<<b);else{if(h>>>0<(c[23876]|0)>>>0)ia();a=h+12|0;if((c[a>>2]|0)==(f|0)){c[a>>2]=d;c[e>>2]=h;break}else ia()}while(0);B=b<<3;c[f+4>>2]=B|3;B=f+B+4|0;c[B>>2]=c[B>>2]|1;B=g;l=C;return B|0}r=c[23874]|0;if(o>>>0>r>>>0){if(b|0){i=2<<a;b=b<<a&(i|0-i);b=(b&0-b)+-1|0;i=b>>>12&16;b=b>>>i;e=b>>>5&8;b=b>>>e;g=b>>>2&4;b=b>>>g;d=b>>>1&2;b=b>>>d;a=b>>>1&1;a=(e|i|g|d|a)+(b>>>a)|0;b=95528+(a<<1<<2)|0;d=b+8|0;g=c[d>>2]|0;i=g+8|0;e=c[i>>2]|0;do if((b|0)==(e|0)){j=s&~(1<<a);c[23872]=j}else{if(e>>>0<(c[23876]|0)>>>0)ia();f=e+12|0;if((c[f>>2]|0)==(g|0)){c[f>>2]=b;c[d>>2]=e;j=s;break}else ia()}while(0);h=(a<<3)-o|0;c[g+4>>2]=o|3;e=g+o|0;c[e+4>>2]=h|1;c[e+h>>2]=h;if(r|0){f=c[23877]|0;a=r>>>3;d=95528+(a<<1<<2)|0;a=1<<a;if(!(j&a)){c[23872]=j|a;k=d;m=d+8|0}else{a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[23876]|0)>>>0)ia();else{k=b;m=a}}c[m>>2]=f;c[k+12>>2]=f;c[f+8>>2]=k;c[f+12>>2]=d}c[23874]=h;c[23877]=e;B=i;l=C;return B|0}k=c[23873]|0;if(k){b=(k&0-k)+-1|0;A=b>>>12&16;b=b>>>A;z=b>>>5&8;b=b>>>z;B=b>>>2&4;b=b>>>B;d=b>>>1&2;b=b>>>d;a=b>>>1&1;a=c[95792+((z|A|B|d|a)+(b>>>a)<<2)>>2]|0;b=(c[a+4>>2]&-8)-o|0;d=c[a+16+(((c[a+16>>2]|0)==0&1)<<2)>>2]|0;if(!d){j=a;h=b}else{do{A=(c[d+4>>2]&-8)-o|0;B=A>>>0<b>>>0;b=B?A:b;a=B?d:a;d=c[d+16+(((c[d+16>>2]|0)==0&1)<<2)>>2]|0}while((d|0)!=0);j=a;h=b}f=c[23876]|0;if(j>>>0<f>>>0)ia();i=j+o|0;if(j>>>0>=i>>>0)ia();g=c[j+24>>2]|0;d=c[j+12>>2]|0;do if((d|0)==(j|0)){b=j+20|0;a=c[b>>2]|0;if(!a){b=j+16|0;a=c[b>>2]|0;if(!a){n=0;break}}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}}if(b>>>0<f>>>0)ia();else{c[b>>2]=0;n=a;break}}else{e=c[j+8>>2]|0;if(e>>>0<f>>>0)ia();a=e+12|0;if((c[a>>2]|0)!=(j|0))ia();b=d+8|0;if((c[b>>2]|0)==(j|0)){c[a>>2]=d;c[b>>2]=e;n=d;break}else ia()}while(0);a:do if(g|0){a=c[j+28>>2]|0;b=95792+(a<<2)|0;do if((j|0)==(c[b>>2]|0)){c[b>>2]=n;if(!n){c[23873]=k&~(1<<a);break a}}else if(g>>>0<(c[23876]|0)>>>0)ia();else{c[g+16+(((c[g+16>>2]|0)!=(j|0)&1)<<2)>>2]=n;if(!n)break a;else break}while(0);b=c[23876]|0;if(n>>>0<b>>>0)ia();c[n+24>>2]=g;a=c[j+16>>2]|0;do if(a|0)if(a>>>0<b>>>0)ia();else{c[n+16>>2]=a;c[a+24>>2]=n;break}while(0);a=c[j+20>>2]|0;if(a|0)if(a>>>0<(c[23876]|0)>>>0)ia();else{c[n+20>>2]=a;c[a+24>>2]=n;break}}while(0);if(h>>>0<16){B=h+o|0;c[j+4>>2]=B|3;B=j+B+4|0;c[B>>2]=c[B>>2]|1}else{c[j+4>>2]=o|3;c[i+4>>2]=h|1;c[i+h>>2]=h;if(r|0){e=c[23877]|0;a=r>>>3;d=95528+(a<<1<<2)|0;a=1<<a;if(!(s&a)){c[23872]=s|a;p=d;q=d+8|0}else{a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[23876]|0)>>>0)ia();else{p=b;q=a}}c[q>>2]=e;c[p+12>>2]=e;c[e+8>>2]=p;c[e+12>>2]=d}c[23874]=h;c[23877]=i}B=j+8|0;l=C;return B|0}}}else if(a>>>0>4294967231)o=-1;else{a=a+11|0;o=a&-8;k=c[23873]|0;if(k){d=0-o|0;a=a>>>8;if(!a)h=0;else if(o>>>0>16777215)h=31;else{q=(a+1048320|0)>>>16&8;v=a<<q;p=(v+520192|0)>>>16&4;v=v<<p;h=(v+245760|0)>>>16&2;h=14-(p|q|h)+(v<<h>>>15)|0;h=o>>>(h+7|0)&1|h<<1}b=c[95792+(h<<2)>>2]|0;b:do if(!b){b=0;a=0;v=81}else{a=0;g=o<<((h|0)==31?0:25-(h>>>1)|0);f=0;while(1){e=(c[b+4>>2]&-8)-o|0;if(e>>>0<d>>>0)if(!e){a=b;d=0;e=b;v=85;break b}else{a=b;d=e}e=c[b+20>>2]|0;b=c[b+16+(g>>>31<<2)>>2]|0;f=(e|0)==0|(e|0)==(b|0)?f:e;e=(b|0)==0;if(e){b=f;v=81;break}else g=g<<((e^1)&1)}}while(0);if((v|0)==81){if((b|0)==0&(a|0)==0){a=2<<h;a=k&(a|0-a);if(!a)break;q=(a&0-a)+-1|0;m=q>>>12&16;q=q>>>m;j=q>>>5&8;q=q>>>j;n=q>>>2&4;q=q>>>n;p=q>>>1&2;q=q>>>p;b=q>>>1&1;a=0;b=c[95792+((j|m|n|p|b)+(q>>>b)<<2)>>2]|0}if(!b){j=a;h=d}else{e=b;v=85}}if((v|0)==85)while(1){v=0;b=(c[e+4>>2]&-8)-o|0;q=b>>>0<d>>>0;b=q?b:d;a=q?e:a;e=c[e+16+(((c[e+16>>2]|0)==0&1)<<2)>>2]|0;if(!e){j=a;h=b;break}else{d=b;v=85}}if(j)if(h>>>0<((c[23874]|0)-o|0)>>>0){f=c[23876]|0;if(j>>>0<f>>>0)ia();i=j+o|0;if(j>>>0>=i>>>0)ia();g=c[j+24>>2]|0;d=c[j+12>>2]|0;do if((d|0)==(j|0)){b=j+20|0;a=c[b>>2]|0;if(!a){b=j+16|0;a=c[b>>2]|0;if(!a){r=0;break}}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}}if(b>>>0<f>>>0)ia();else{c[b>>2]=0;r=a;break}}else{e=c[j+8>>2]|0;if(e>>>0<f>>>0)ia();a=e+12|0;if((c[a>>2]|0)!=(j|0))ia();b=d+8|0;if((c[b>>2]|0)==(j|0)){c[a>>2]=d;c[b>>2]=e;r=d;break}else ia()}while(0);c:do if(!g)s=k;else{a=c[j+28>>2]|0;b=95792+(a<<2)|0;do if((j|0)==(c[b>>2]|0)){c[b>>2]=r;if(!r){s=k&~(1<<a);c[23873]=s;break c}}else if(g>>>0<(c[23876]|0)>>>0)ia();else{c[g+16+(((c[g+16>>2]|0)!=(j|0)&1)<<2)>>2]=r;if(!r){s=k;break c}else break}while(0);b=c[23876]|0;if(r>>>0<b>>>0)ia();c[r+24>>2]=g;a=c[j+16>>2]|0;do if(a|0)if(a>>>0<b>>>0)ia();else{c[r+16>>2]=a;c[a+24>>2]=r;break}while(0);a=c[j+20>>2]|0;if(!a)s=k;else if(a>>>0<(c[23876]|0)>>>0)ia();else{c[r+20>>2]=a;c[a+24>>2]=r;s=k;break}}while(0);do if(h>>>0<16){B=h+o|0;c[j+4>>2]=B|3;B=j+B+4|0;c[B>>2]=c[B>>2]|1}else{c[j+4>>2]=o|3;c[i+4>>2]=h|1;c[i+h>>2]=h;a=h>>>3;if(h>>>0<256){d=95528+(a<<1<<2)|0;b=c[23872]|0;a=1<<a;if(!(b&a)){c[23872]=b|a;t=d;u=d+8|0}else{a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[23876]|0)>>>0)ia();else{t=b;u=a}}c[u>>2]=i;c[t+12>>2]=i;c[i+8>>2]=t;c[i+12>>2]=d;break}a=h>>>8;if(!a)a=0;else if(h>>>0>16777215)a=31;else{A=(a+1048320|0)>>>16&8;B=a<<A;z=(B+520192|0)>>>16&4;B=B<<z;a=(B+245760|0)>>>16&2;a=14-(z|A|a)+(B<<a>>>15)|0;a=h>>>(a+7|0)&1|a<<1}d=95792+(a<<2)|0;c[i+28>>2]=a;b=i+16|0;c[b+4>>2]=0;c[b>>2]=0;b=1<<a;if(!(s&b)){c[23873]=s|b;c[d>>2]=i;c[i+24>>2]=d;c[i+12>>2]=i;c[i+8>>2]=i;break}b=h<<((a|0)==31?0:25-(a>>>1)|0);e=c[d>>2]|0;while(1){if((c[e+4>>2]&-8|0)==(h|0)){v=139;break}d=e+16+(b>>>31<<2)|0;a=c[d>>2]|0;if(!a){v=136;break}else{b=b<<1;e=a}}if((v|0)==136)if(d>>>0<(c[23876]|0)>>>0)ia();else{c[d>>2]=i;c[i+24>>2]=e;c[i+12>>2]=i;c[i+8>>2]=i;break}else if((v|0)==139){a=e+8|0;b=c[a>>2]|0;B=c[23876]|0;if(b>>>0>=B>>>0&e>>>0>=B>>>0){c[b+12>>2]=i;c[a>>2]=i;c[i+8>>2]=b;c[i+12>>2]=e;c[i+24>>2]=0;break}else ia()}}while(0);B=j+8|0;l=C;return B|0}}}while(0);d=c[23874]|0;if(d>>>0>=o>>>0){a=d-o|0;b=c[23877]|0;if(a>>>0>15){B=b+o|0;c[23877]=B;c[23874]=a;c[B+4>>2]=a|1;c[B+a>>2]=a;c[b+4>>2]=o|3}else{c[23874]=0;c[23877]=0;c[b+4>>2]=d|3;B=b+d+4|0;c[B>>2]=c[B>>2]|1}B=b+8|0;l=C;return B|0}h=c[23875]|0;if(h>>>0>o>>>0){z=h-o|0;c[23875]=z;B=c[23878]|0;A=B+o|0;c[23878]=A;c[A+4>>2]=z|1;c[B+4>>2]=o|3;B=B+8|0;l=C;return B|0}if(!(c[23990]|0)){c[23992]=4096;c[23991]=4096;c[23993]=-1;c[23994]=-1;c[23995]=0;c[23983]=0;a=i&-16^1431655768;c[i>>2]=a;c[23990]=a;a=4096}else a=c[23992]|0;i=o+48|0;j=o+47|0;g=a+j|0;e=0-a|0;k=g&e;if(k>>>0<=o>>>0){B=0;l=C;return B|0}a=c[23982]|0;if(a|0){t=c[23980]|0;u=t+k|0;if(u>>>0<=t>>>0|u>>>0>a>>>0){B=0;l=C;return B|0}}d:do if(!(c[23983]&4)){b=c[23878]|0;e:do if(!b)v=163;else{d=95936;while(1){a=c[d>>2]|0;if(a>>>0<=b>>>0){f=d+4|0;if((a+(c[f>>2]|0)|0)>>>0>b>>>0)break}a=c[d+8>>2]|0;if(!a){v=163;break e}else d=a}a=g-h&e;if(a>>>0<2147483647){b=Vc(a|0)|0;if((b|0)==((c[d>>2]|0)+(c[f>>2]|0)|0)){if((b|0)!=(-1|0)){h=a;g=b;v=180;break d}}else{e=b;v=171}}else a=0}while(0);do if((v|0)==163){f=Vc(0)|0;if((f|0)==(-1|0))a=0;else{a=f;b=c[23991]|0;d=b+-1|0;a=((d&a|0)==0?0:(d+a&0-b)-a|0)+k|0;b=c[23980]|0;d=a+b|0;if(a>>>0>o>>>0&a>>>0<2147483647){e=c[23982]|0;if(e|0)if(d>>>0<=b>>>0|d>>>0>e>>>0){a=0;break}b=Vc(a|0)|0;if((b|0)==(f|0)){h=a;g=f;v=180;break d}else{e=b;v=171}}else a=0}}while(0);do if((v|0)==171){d=0-a|0;if(!(i>>>0>a>>>0&(a>>>0<2147483647&(e|0)!=(-1|0))))if((e|0)==(-1|0)){a=0;break}else{h=a;g=e;v=180;break d}b=c[23992]|0;b=j-a+b&0-b;if(b>>>0>=2147483647){h=a;g=e;v=180;break d}if((Vc(b|0)|0)==(-1|0)){Vc(d|0)|0;a=0;break}else{h=b+a|0;g=e;v=180;break d}}while(0);c[23983]=c[23983]|4;v=178}else{a=0;v=178}while(0);if((v|0)==178)if(k>>>0<2147483647){e=Vc(k|0)|0;u=Vc(0)|0;b=u-e|0;d=b>>>0>(o+40|0)>>>0;if(!((e|0)==(-1|0)|d^1|e>>>0<u>>>0&((e|0)!=(-1|0)&(u|0)!=(-1|0))^1)){h=d?b:a;g=e;v=180}}if((v|0)==180){a=(c[23980]|0)+h|0;c[23980]=a;if(a>>>0>(c[23981]|0)>>>0)c[23981]=a;k=c[23878]|0;do if(!k){B=c[23876]|0;if((B|0)==0|g>>>0<B>>>0)c[23876]=g;c[23984]=g;c[23985]=h;c[23987]=0;c[23881]=c[23990];c[23880]=-1;a=0;do{B=95528+(a<<1<<2)|0;c[B+12>>2]=B;c[B+8>>2]=B;a=a+1|0}while((a|0)!=32);B=g+8|0;B=(B&7|0)==0?0:0-B&7;A=g+B|0;B=h+-40-B|0;c[23878]=A;c[23875]=B;c[A+4>>2]=B|1;c[A+B+4>>2]=40;c[23879]=c[23994]}else{a=95936;do{b=c[a>>2]|0;d=a+4|0;e=c[d>>2]|0;if((g|0)==(b+e|0)){v=190;break}a=c[a+8>>2]|0}while((a|0)!=0);if((v|0)==190)if(!(c[a+12>>2]&8))if(k>>>0<g>>>0&k>>>0>=b>>>0){c[d>>2]=e+h;B=k+8|0;B=(B&7|0)==0?0:0-B&7;A=k+B|0;B=(c[23875]|0)+(h-B)|0;c[23878]=A;c[23875]=B;c[A+4>>2]=B|1;c[A+B+4>>2]=40;c[23879]=c[23994];break}a=c[23876]|0;if(g>>>0<a>>>0){c[23876]=g;i=g}else i=a;b=g+h|0;a=95936;do{if((c[a>>2]|0)==(b|0)){v=198;break}a=c[a+8>>2]|0}while((a|0)!=0);if((v|0)==198)if(!(c[a+12>>2]&8)){c[a>>2]=g;n=a+4|0;c[n>>2]=(c[n>>2]|0)+h;n=g+8|0;n=g+((n&7|0)==0?0:0-n&7)|0;a=b+8|0;a=b+((a&7|0)==0?0:0-a&7)|0;m=n+o|0;j=a-n-o|0;c[n+4>>2]=o|3;do if((a|0)==(k|0)){B=(c[23875]|0)+j|0;c[23875]=B;c[23878]=m;c[m+4>>2]=B|1}else{if((a|0)==(c[23877]|0)){B=(c[23874]|0)+j|0;c[23874]=B;c[23877]=m;c[m+4>>2]=B|1;c[m+B>>2]=B;break}b=c[a+4>>2]|0;if((b&3|0)==1){h=b&-8;f=b>>>3;f:do if(b>>>0<256){d=c[a+8>>2]|0;e=c[a+12>>2]|0;b=95528+(f<<1<<2)|0;do if((d|0)!=(b|0)){if(d>>>0<i>>>0)ia();if((c[d+12>>2]|0)==(a|0))break;ia()}while(0);if((e|0)==(d|0)){c[23872]=c[23872]&~(1<<f);break}do if((e|0)==(b|0))w=e+8|0;else{if(e>>>0<i>>>0)ia();b=e+8|0;if((c[b>>2]|0)==(a|0)){w=b;break}ia()}while(0);c[d+12>>2]=e;c[w>>2]=d}else{g=c[a+24>>2]|0;e=c[a+12>>2]|0;do if((e|0)==(a|0)){e=a+16|0;d=e+4|0;b=c[d>>2]|0;if(!b){b=c[e>>2]|0;if(!b){z=0;break}else d=e}while(1){e=b+20|0;f=c[e>>2]|0;if(f|0){b=f;d=e;continue}e=b+16|0;f=c[e>>2]|0;if(!f)break;else{b=f;d=e}}if(d>>>0<i>>>0)ia();else{c[d>>2]=0;z=b;break}}else{f=c[a+8>>2]|0;if(f>>>0<i>>>0)ia();b=f+12|0;if((c[b>>2]|0)!=(a|0))ia();d=e+8|0;if((c[d>>2]|0)==(a|0)){c[b>>2]=e;c[d>>2]=f;z=e;break}else ia()}while(0);if(!g)break;b=c[a+28>>2]|0;d=95792+(b<<2)|0;do if((a|0)==(c[d>>2]|0)){c[d>>2]=z;if(z|0)break;c[23873]=c[23873]&~(1<<b);break f}else if(g>>>0<(c[23876]|0)>>>0)ia();else{c[g+16+(((c[g+16>>2]|0)!=(a|0)&1)<<2)>>2]=z;if(!z)break f;else break}while(0);e=c[23876]|0;if(z>>>0<e>>>0)ia();c[z+24>>2]=g;b=a+16|0;d=c[b>>2]|0;do if(d|0)if(d>>>0<e>>>0)ia();else{c[z+16>>2]=d;c[d+24>>2]=z;break}while(0);b=c[b+4>>2]|0;if(!b)break;if(b>>>0<(c[23876]|0)>>>0)ia();else{c[z+20>>2]=b;c[b+24>>2]=z;break}}while(0);a=a+h|0;f=h+j|0}else f=j;a=a+4|0;c[a>>2]=c[a>>2]&-2;c[m+4>>2]=f|1;c[m+f>>2]=f;a=f>>>3;if(f>>>0<256){d=95528+(a<<1<<2)|0;b=c[23872]|0;a=1<<a;do if(!(b&a)){c[23872]=b|a;A=d;B=d+8|0}else{a=d+8|0;b=c[a>>2]|0;if(b>>>0>=(c[23876]|0)>>>0){A=b;B=a;break}ia()}while(0);c[B>>2]=m;c[A+12>>2]=m;c[m+8>>2]=A;c[m+12>>2]=d;break}a=f>>>8;do if(!a)a=0;else{if(f>>>0>16777215){a=31;break}A=(a+1048320|0)>>>16&8;B=a<<A;z=(B+520192|0)>>>16&4;B=B<<z;a=(B+245760|0)>>>16&2;a=14-(z|A|a)+(B<<a>>>15)|0;a=f>>>(a+7|0)&1|a<<1}while(0);e=95792+(a<<2)|0;c[m+28>>2]=a;b=m+16|0;c[b+4>>2]=0;c[b>>2]=0;b=c[23873]|0;d=1<<a;if(!(b&d)){c[23873]=b|d;c[e>>2]=m;c[m+24>>2]=e;c[m+12>>2]=m;c[m+8>>2]=m;break}b=f<<((a|0)==31?0:25-(a>>>1)|0);e=c[e>>2]|0;while(1){if((c[e+4>>2]&-8|0)==(f|0)){v=265;break}d=e+16+(b>>>31<<2)|0;a=c[d>>2]|0;if(!a){v=262;break}else{b=b<<1;e=a}}if((v|0)==262)if(d>>>0<(c[23876]|0)>>>0)ia();else{c[d>>2]=m;c[m+24>>2]=e;c[m+12>>2]=m;c[m+8>>2]=m;break}else if((v|0)==265){a=e+8|0;b=c[a>>2]|0;B=c[23876]|0;if(b>>>0>=B>>>0&e>>>0>=B>>>0){c[b+12>>2]=m;c[a>>2]=m;c[m+8>>2]=b;c[m+12>>2]=e;c[m+24>>2]=0;break}else ia()}}while(0);B=n+8|0;l=C;return B|0}b=95936;while(1){a=c[b>>2]|0;if(a>>>0<=k>>>0){d=a+(c[b+4>>2]|0)|0;if(d>>>0>k>>>0)break}b=c[b+8>>2]|0}f=d+-47|0;b=f+8|0;b=f+((b&7|0)==0?0:0-b&7)|0;f=k+16|0;b=b>>>0<f>>>0?k:b;a=b+8|0;e=g+8|0;e=(e&7|0)==0?0:0-e&7;B=g+e|0;e=h+-40-e|0;c[23878]=B;c[23875]=e;c[B+4>>2]=e|1;c[B+e+4>>2]=40;c[23879]=c[23994];e=b+4|0;c[e>>2]=27;c[a>>2]=c[23984];c[a+4>>2]=c[23985];c[a+8>>2]=c[23986];c[a+12>>2]=c[23987];c[23984]=g;c[23985]=h;c[23987]=0;c[23986]=a;a=b+24|0;do{B=a;a=a+4|0;c[a>>2]=7}while((B+8|0)>>>0<d>>>0);if((b|0)!=(k|0)){g=b-k|0;c[e>>2]=c[e>>2]&-2;c[k+4>>2]=g|1;c[b>>2]=g;a=g>>>3;if(g>>>0<256){d=95528+(a<<1<<2)|0;b=c[23872]|0;a=1<<a;if(!(b&a)){c[23872]=b|a;x=d;y=d+8|0}else{a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[23876]|0)>>>0)ia();else{x=b;y=a}}c[y>>2]=k;c[x+12>>2]=k;c[k+8>>2]=x;c[k+12>>2]=d;break}a=g>>>8;if(!a)d=0;else if(g>>>0>16777215)d=31;else{A=(a+1048320|0)>>>16&8;B=a<<A;z=(B+520192|0)>>>16&4;B=B<<z;d=(B+245760|0)>>>16&2;d=14-(z|A|d)+(B<<d>>>15)|0;d=g>>>(d+7|0)&1|d<<1}e=95792+(d<<2)|0;c[k+28>>2]=d;c[k+20>>2]=0;c[f>>2]=0;a=c[23873]|0;b=1<<d;if(!(a&b)){c[23873]=a|b;c[e>>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}b=g<<((d|0)==31?0:25-(d>>>1)|0);e=c[e>>2]|0;while(1){if((c[e+4>>2]&-8|0)==(g|0)){v=292;break}d=e+16+(b>>>31<<2)|0;a=c[d>>2]|0;if(!a){v=289;break}else{b=b<<1;e=a}}if((v|0)==289)if(d>>>0<(c[23876]|0)>>>0)ia();else{c[d>>2]=k;c[k+24>>2]=e;c[k+12>>2]=k;c[k+8>>2]=k;break}else if((v|0)==292){a=e+8|0;b=c[a>>2]|0;B=c[23876]|0;if(b>>>0>=B>>>0&e>>>0>=B>>>0){c[b+12>>2]=k;c[a>>2]=k;c[k+8>>2]=b;c[k+12>>2]=e;c[k+24>>2]=0;break}else ia()}}}while(0);a=c[23875]|0;if(a>>>0>o>>>0){z=a-o|0;c[23875]=z;B=c[23878]|0;A=B+o|0;c[23878]=A;c[A+4>>2]=z|1;c[B+4>>2]=o|3;B=B+8|0;l=C;return B|0}}c[(Le()|0)>>2]=12;B=0;l=C;return B|0}function vb(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;w=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[(Le()|0)>>2]=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)_d(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)if((a[n+2>>0]|0)==36){c[i+(k<<2)>>2]=10;k=c[g+((a[m>>0]|0)+-48<<3)>>2]|0;p=1;n=n+3|0}else w=23;else w=23;if((w|0)==23){w=0;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=nd(D)|0;if((k|0)<0){j=-1;break}n=c[D>>2]|0}do if((a[n>>0]|0)==46){if((a[n+1>>0]|0)!=42){c[D>>2]=n+1;m=nd(D)|0;n=c[D>>2]|0;break}q=n+2|0;m=(a[q>>0]|0)+-48|0;if(m>>>0<10)if((a[n+3>>0]|0)==36){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+(2909+(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}Jb(E,r,f)}while(0);if((w|0)==49){w=0;if(!x){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=ud(e,n,y)|0;s=A-r|0;o=0;q=3373;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=Jd(0,0,e|0,n|0)|0;n=z;o=E;c[o>>2]=e;c[o+4>>2]=n;o=1;q=3373;w=66;break e}else{o=(u&2049|0)!=0&1;q=(u&2048|0)==0?((u&1|0)==0?3373:3375):3374;w=66;break e}}case 117:{n=E;o=0;q=3373;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=3373;r=y;n=1;m=s;break}case 109:{n=ge(c[(Le()|0)>>2]|0)|0;w=71;break}case 115:{n=c[E>>2]|0;n=n|0?n:3383;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){Jc(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=wb(d,+h[E>>3],k,m,u,n)|0;e=v;continue a}default:{o=0;q=3373;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=qd(t,u,y,n&32)|0;q=(e&8|0)==0|(t|0)==0&(u|0)==0;o=q?0:2;q=q?3373:3373+(n>>4)|0;s=e;e=t;n=u;w=67}else if((w|0)==66){r=Ec(e,n,y)|0;s=u;w=67}else if((w|0)==71){w=0;u=Yb(n,0,m)|0;t=(u|0)==0;e=n;o=0;q=3373;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=de(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}Jc(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=de(G,m)|0;o=m+o|0;if((o|0)>(e|0)){w=84;break f}_d(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;Jc(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;Jc(d,32,k,u,m);_d(d,q,o);Jc(d,48,k,u,m^65536);Jc(d,48,s,t,0);_d(d,e,t);Jc(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)break;Jb(g+(j<<3)|0,e,f);j=j+1|0;if((j|0)>=10){j=1;break g}}while(1){if(c[i+(j<<2)>>2]|0){j=-1;break g}j=j+1|0;if((j|0)>=10){j=1;break}}}while(0);l=H;return j|0}function wb(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.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+560|0;m=G+8|0;u=G;F=G+524|0;E=F;n=G+512|0;c[u>>2]=0;D=n+12|0;Nd(e)|0;if((z|0)<0){e=-e;B=1;A=3390}else{B=(h&2049|0)!=0&1;A=(h&2048|0)==0?((h&1|0)==0?3391:3396):3393}Nd(e)|0;C=z&2146435072;do if(C>>>0<2146435072|(C|0)==2146435072&0<0){e=+He(e,u)*2.0;j=e!=0.0;if(j)c[u>>2]=(c[u>>2]|0)+-1;w=i|32;if((w|0)==97){s=i&32;r=(s|0)==0?A:A+9|0;q=B|2;j=12-g|0;do if(!(g>>>0>11|(j|0)==0)){o=8.0;do{j=j+-1|0;o=o*16.0}while((j|0)!=0);if((a[r>>0]|0)==45){e=-(o+(-e-o));break}else{e=e+o-o;break}}while(0);k=c[u>>2]|0;j=(k|0)<0?0-k|0:k;j=Ec(j,((j|0)<0)<<31>>31,D)|0;if((j|0)==(D|0)){j=n+11|0;a[j>>0]=48}a[j+-1>>0]=(k>>31&2)+43;p=j+-2|0;a[p>>0]=i+15;n=(g|0)<1;m=(h&8|0)==0;j=F;do{C=~~e;k=j+1|0;a[j>>0]=d[3425+C>>0]|s;e=(e-+(C|0))*16.0;if((k-E|0)==1)if(m&(n&e==0.0))j=k;else{a[k>>0]=46;j=j+2|0}else j=k}while(e!=0.0);C=j-E|0;E=D-p|0;D=(g|0)!=0&(C+-2|0)<(g|0)?g+2|0:C;j=E+q+D|0;Jc(b,32,f,j,h);_d(b,r,q);Jc(b,48,f,j,h^65536);_d(b,F,C);Jc(b,48,D-C|0,0,0);_d(b,p,E);Jc(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=e*268435456.0}else j=c[u>>2]|0;C=(j|0)<0?m:m+288|0;m=C;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=C;q=m;while(1){p=(j|0)<29?j:29;j=q+-4|0;if(j>>>0>=n>>>0){m=0;do{x=Ed(c[j>>2]|0,0,p|0)|0;x=Id(x|0,z|0,m|0,0)|0;y=z;v=td(x|0,y|0,1e9,0)|0;c[j>>2]=v;m=$d(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=q;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)-p|0;c[u>>2]=j;if((j|0)>0)q=m;else break}}else n=C;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){p=(1<<s)+-1|0;q=1e9>>>s;r=0;j=n;do{y=c[j>>2]|0;c[j>>2]=(y>>>s)+r;r=O(y&p,q)|0;j=j+4|0}while(j>>>0<m>>>0);j=(c[n>>2]|0)==0?n+4|0:n;if(!r){n=j;j=m}else{c[m>>2]=r;n=j;j=m+4|0}}else{n=(c[n>>2]|0)==0?n+4|0:n;j=m}m=t?C: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=C;if(j>>>0<g>>>0){m=(y-j>>2)*9|0;p=c[j>>2]|0;if(p>>>0>=10){n=10;do{n=n*10|0;m=m+1|0}while(p>>>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=C+4+(((n|0)/9|0)+-1024<<2)|0;n=((n|0)%9|0)+1|0;if((n|0)<9){p=10;do{p=p*10|0;n=n+1|0}while((n|0)!=9)}else p=10;q=c[s>>2]|0;r=(q>>>0)%(p>>>0)|0;n=(s+4|0)==(g|0);if(n&(r|0)==0)n=s;else{o=(((q>>>0)/(p>>>0)|0)&1|0)==0?9007199254740992.0:9007199254740994.0;x=(p|0)/2|0;e=r>>>0<x>>>0?.5:n&(r|0)==(x|0)?1.0:1.5;if(B){x=(a[A>>0]|0)==45;e=x?-e:e;o=x?-o:o}n=q-r|0;c[s>>2]=n;if(o+e!=o){x=n+p|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;q=c[j>>2]|0;if(q>>>0>=10){p=10;do{p=p*10|0;m=m+1|0}while(q>>>0>=p>>>0)}}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){q=i+-1|0;k=j+-1-m|0}else{q=i+-2|0;k=j+-1|0}j=h&8;if(!j){if(u){p=c[w+-4>>2]|0;if(!p)n=9;else if(!((p>>>0)%10|0)){n=0;j=10;do{j=j*10|0;n=n+1|0}while(!((p>>>0)%(j>>>0)|0|0))}else n=0}else n=9;j=((w-y>>2)*9|0)+-9|0;if((q|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{q=i;s=h&8}while(0);t=k|s;p=(t|0)!=0&1;r=(q|32|0)==102;if(r){v=0;j=(m|0)>0?m:0}else{j=(m|0)<0?g:m;j=Ec(j,((j|0)<0)<<31>>31,D)|0;n=D;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]=q;v=j;j=n-j|0}j=B+1+k+p+j|0;Jc(b,32,f,j,h);_d(b,A,B);Jc(b,48,f,j,h^65536);if(r){p=x>>>0>C>>>0?C:x;s=F+9|0;q=s;r=F+8|0;n=p;do{m=Ec(c[n>>2]|0,0,s)|0;if((n|0)==(p|0)){if((m|0)==(s|0)){a[r>>0]=48;m=r}}else if(m>>>0>F>>>0){ec(F|0,48,m-E|0)|0;do m=m+-1|0;while(m>>>0>F>>>0)}_d(b,m,q-m|0);n=n+4|0}while(n>>>0<=C>>>0);if(t|0)_d(b,3441,1);if(n>>>0<w>>>0&(k|0)>0)while(1){m=Ec(c[n>>2]|0,0,s)|0;if(m>>>0>F>>>0){ec(F|0,48,m-E|0)|0;do m=m+-1|0;while(m>>>0>F>>>0)}_d(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}Jc(b,48,k+9|0,9,0)}else{t=u?w:x+4|0;if((k|0)>-1){u=F+9|0;s=(s|0)==0;g=u;q=0-E|0;r=F+8|0;p=x;do{m=Ec(c[p>>2]|0,0,u)|0;if((m|0)==(u|0)){a[r>>0]=48;m=r}do if((p|0)==(x|0)){n=m+1|0;_d(b,m,1);if(s&(k|0)<1){m=n;break}_d(b,3441,1);m=n}else{if(m>>>0<=F>>>0)break;ec(F|0,48,m+q|0)|0;do m=m+-1|0;while(m>>>0>F>>>0)}while(0);E=g-m|0;_d(b,m,(k|0)>(E|0)?E:k);k=k-E|0;p=p+4|0}while(p>>>0<t>>>0&(k|0)>-1)}Jc(b,48,k+18|0,18,0);_d(b,v,D-v|0)}Jc(b,32,f,j,h^8192)}else{F=(i&32|0)!=0;j=B+3|0;Jc(b,32,f,j,h&-65537);_d(b,A,B);_d(b,e!=e|0.0!=0.0?(F?3417:3421):F?3409:3413,3);Jc(b,32,f,j,h^8192)}while(0);l=G;return ((j|0)<(f|0)?f:j)|0}function xb(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;if(!a)return;d=a+-8|0;h=c[23876]|0;if(d>>>0<h>>>0)ia();a=c[a+-4>>2]|0;b=a&3;if((b|0)==1)ia();e=a&-8;o=d+e|0;a:do if(!(a&1)){a=c[d>>2]|0;if(!b)return;k=d+(0-a)|0;j=a+e|0;if(k>>>0<h>>>0)ia();if((k|0)==(c[23877]|0)){a=o+4|0;b=c[a>>2]|0;if((b&3|0)!=3){r=k;f=j;m=k;break}c[23874]=j;c[a>>2]=b&-2;c[k+4>>2]=j|1;c[k+j>>2]=j;return}e=a>>>3;if(a>>>0<256){b=c[k+8>>2]|0;d=c[k+12>>2]|0;a=95528+(e<<1<<2)|0;if((b|0)!=(a|0)){if(b>>>0<h>>>0)ia();if((c[b+12>>2]|0)!=(k|0))ia()}if((d|0)==(b|0)){c[23872]=c[23872]&~(1<<e);r=k;f=j;m=k;break}if((d|0)==(a|0))g=d+8|0;else{if(d>>>0<h>>>0)ia();a=d+8|0;if((c[a>>2]|0)==(k|0))g=a;else ia()}c[b+12>>2]=d;c[g>>2]=b;r=k;f=j;m=k;break}g=c[k+24>>2]|0;d=c[k+12>>2]|0;do if((d|0)==(k|0)){d=k+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){i=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}}if(b>>>0<h>>>0)ia();else{c[b>>2]=0;i=a;break}}else{e=c[k+8>>2]|0;if(e>>>0<h>>>0)ia();a=e+12|0;if((c[a>>2]|0)!=(k|0))ia();b=d+8|0;if((c[b>>2]|0)==(k|0)){c[a>>2]=d;c[b>>2]=e;i=d;break}else ia()}while(0);if(!g){r=k;f=j;m=k}else{a=c[k+28>>2]|0;b=95792+(a<<2)|0;do if((k|0)==(c[b>>2]|0)){c[b>>2]=i;if(!i){c[23873]=c[23873]&~(1<<a);r=k;f=j;m=k;break a}}else if(g>>>0<(c[23876]|0)>>>0)ia();else{c[g+16+(((c[g+16>>2]|0)!=(k|0)&1)<<2)>>2]=i;if(!i){r=k;f=j;m=k;break a}else break}while(0);d=c[23876]|0;if(i>>>0<d>>>0)ia();c[i+24>>2]=g;a=k+16|0;b=c[a>>2]|0;do if(b|0)if(b>>>0<d>>>0)ia();else{c[i+16>>2]=b;c[b+24>>2]=i;break}while(0);a=c[a+4>>2]|0;if(!a){r=k;f=j;m=k}else if(a>>>0<(c[23876]|0)>>>0)ia();else{c[i+20>>2]=a;c[a+24>>2]=i;r=k;f=j;m=k;break}}}else{r=d;f=e;m=d}while(0);if(m>>>0>=o>>>0)ia();a=o+4|0;b=c[a>>2]|0;if(!(b&1))ia();if(!(b&2)){a=c[23877]|0;if((o|0)==(c[23878]|0)){q=(c[23875]|0)+f|0;c[23875]=q;c[23878]=r;c[r+4>>2]=q|1;if((r|0)!=(a|0))return;c[23877]=0;c[23874]=0;return}if((o|0)==(a|0)){q=(c[23874]|0)+f|0;c[23874]=q;c[23877]=m;c[r+4>>2]=q|1;c[m+q>>2]=q;return}f=(b&-8)+f|0;e=b>>>3;b:do if(b>>>0<256){b=c[o+8>>2]|0;d=c[o+12>>2]|0;a=95528+(e<<1<<2)|0;if((b|0)!=(a|0)){if(b>>>0<(c[23876]|0)>>>0)ia();if((c[b+12>>2]|0)!=(o|0))ia()}if((d|0)==(b|0)){c[23872]=c[23872]&~(1<<e);break}if((d|0)==(a|0))l=d+8|0;else{if(d>>>0<(c[23876]|0)>>>0)ia();a=d+8|0;if((c[a>>2]|0)==(o|0))l=a;else ia()}c[b+12>>2]=d;c[l>>2]=b}else{g=c[o+24>>2]|0;a=c[o+12>>2]|0;do if((a|0)==(o|0)){d=o+16|0;b=d+4|0;a=c[b>>2]|0;if(!a){a=c[d>>2]|0;if(!a){n=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}}if(b>>>0<(c[23876]|0)>>>0)ia();else{c[b>>2]=0;n=a;break}}else{b=c[o+8>>2]|0;if(b>>>0<(c[23876]|0)>>>0)ia();d=b+12|0;if((c[d>>2]|0)!=(o|0))ia();e=a+8|0;if((c[e>>2]|0)==(o|0)){c[d>>2]=a;c[e>>2]=b;n=a;break}else ia()}while(0);if(g|0){a=c[o+28>>2]|0;b=95792+(a<<2)|0;do if((o|0)==(c[b>>2]|0)){c[b>>2]=n;if(!n){c[23873]=c[23873]&~(1<<a);break b}}else if(g>>>0<(c[23876]|0)>>>0)ia();else{c[g+16+(((c[g+16>>2]|0)!=(o|0)&1)<<2)>>2]=n;if(!n)break b;else break}while(0);d=c[23876]|0;if(n>>>0<d>>>0)ia();c[n+24>>2]=g;a=o+16|0;b=c[a>>2]|0;do if(b|0)if(b>>>0<d>>>0)ia();else{c[n+16>>2]=b;c[b+24>>2]=n;break}while(0);a=c[a+4>>2]|0;if(a|0)if(a>>>0<(c[23876]|0)>>>0)ia();else{c[n+20>>2]=a;c[a+24>>2]=n;break}}}while(0);c[r+4>>2]=f|1;c[m+f>>2]=f;if((r|0)==(c[23877]|0)){c[23874]=f;return}}else{c[a>>2]=b&-2;c[r+4>>2]=f|1;c[m+f>>2]=f}a=f>>>3;if(f>>>0<256){d=95528+(a<<1<<2)|0;b=c[23872]|0;a=1<<a;if(!(b&a)){c[23872]=b|a;p=d;q=d+8|0}else{a=d+8|0;b=c[a>>2]|0;if(b>>>0<(c[23876]|0)>>>0)ia();else{p=b;q=a}}c[q>>2]=r;c[p+12>>2]=r;c[r+8>>2]=p;c[r+12>>2]=d;return}a=f>>>8;if(!a)a=0;else if(f>>>0>16777215)a=31;else{p=(a+1048320|0)>>>16&8;q=a<<p;o=(q+520192|0)>>>16&4;q=q<<o;a=(q+245760|0)>>>16&2;a=14-(o|p|a)+(q<<a>>>15)|0;a=f>>>(a+7|0)&1|a<<1}e=95792+(a<<2)|0;c[r+28>>2]=a;c[r+20>>2]=0;c[r+16>>2]=0;b=c[23873]|0;d=1<<a;do if(!(b&d)){c[23873]=b|d;c[e>>2]=r;c[r+24>>2]=e;c[r+12>>2]=r;c[r+8>>2]=r}else{b=f<<((a|0)==31?0:25-(a>>>1)|0);e=c[e>>2]|0;while(1){if((c[e+4>>2]&-8|0)==(f|0)){a=124;break}d=e+16+(b>>>31<<2)|0;a=c[d>>2]|0;if(!a){a=121;break}else{b=b<<1;e=a}}if((a|0)==121)if(d>>>0<(c[23876]|0)>>>0)ia();else{c[d>>2]=r;c[r+24>>2]=e;c[r+12>>2]=r;c[r+8>>2]=r;break}else if((a|0)==124){a=e+8|0;b=c[a>>2]|0;q=c[23876]|0;if(b>>>0>=q>>>0&e>>>0>=q>>>0){c[b+12>>2]=r;c[a>>2]=r;c[r+8>>2]=b;c[r+12>>2]=e;c[r+24>>2]=0;break}else ia()}}while(0);r=(c[23880]|0)+-1|0;c[23880]=r;if(!r)a=95944;else return;while(1){a=c[a>>2]|0;if(!a)break;else a=a+8|0}c[23880]=-1;return}function yb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;if((kb|0)!=2){c[lb+8>>2]=a;c[lb+16>>2]=b;c[lb+24>>2]=d;c[lb+32>>2]=e;if((kb|0)==1)kb=3}tb(nb+51060|0);return c[lb>>2]|0}function zb(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0;h=0;g=c[e>>2]|0;f=a[b+g>>0]|0;if(f<<24>>24==34){e=34;return e|0}a:do if((c[1870]|0)<23){switch(f<<24>>24){case 40:{h=5;break a}case 94:case 126:break;default:{i=0;j=f;break a}}return f|0}else if(f<<24>>24==40)h=5;else{i=0;j=f}while(0);if((h|0)==5){g=g+1|0;c[e>>2]=g;i=1;j=a[b+g>>0]|0}b:do switch(j<<24>>24|0){case 96:{g=g+1|0;c[e>>2]=g;f=a[b+g>>0]|0;do switch(f<<24>>24|0){case 97:{f=-32;break b}case 101:{f=-24;break b}case 105:{f=-20;break b}case 111:{f=-14;break b}case 117:{f=-7;break b}case 65:{f=-64;break b}case 69:{f=-56;break b}case 73:{f=-52;break b}case 79:{f=-46;break b}case 85:{f=-39;break b}default:break b}while(0)}case 39:{g=g+1|0;c[e>>2]=g;f=a[b+g>>0]|0;h=(f<<24>>24)+-65|0;do switch(h>>>1|h<<31|0){case 16:{f=-31;break b}case 18:{f=-23;break b}case 20:{f=-19;break b}case 23:{f=-13;break b}case 26:{f=-6;break b}case 28:{f=-3;break b}case 0:{f=-63;break b}case 2:{f=-55;break b}case 4:{f=-51;break b}case 7:{f=-45;break b}case 10:{f=-38;break b}case 12:{f=-35;break b}default:break b}while(0)}case 126:{g=g+1|0;c[e>>2]=g;f=a[b+g>>0]|0;switch(f<<24>>24|0){case 97:{f=-29;break b}case 110:{f=-15;break b}case 111:{f=-11;break b}case 65:{f=-61;break b}case 78:{f=-47;break b}case 79:{f=-43;break b}default:break b}}case 94:{g=g+1|0;c[e>>2]=g;f=a[b+g>>0]|0;do switch(f<<24>>24|0){case 97:{f=-30;break b}case 101:{f=-22;break b}case 105:{f=-18;break b}case 111:{f=-12;break b}case 117:{f=-5;break b}case 65:{f=-62;break b}case 69:{f=-54;break b}case 73:{f=-50;break b}case 79:{f=-44;break b}case 85:{f=-37;break b}default:break b}while(0)}case 58:{g=g+1|0;c[e>>2]=g;f=a[b+g>>0]|0;do switch(f<<24>>24|0){case 97:{f=-28;break b}case 101:{f=-21;break b}case 105:{f=-17;break b}case 111:{f=-10;break b}case 117:{f=-4;break b}case 65:{f=-60;break b}case 69:{f=-53;break b}case 73:{f=-49;break b}case 79:{f=-42;break b}case 85:{f=-36;break b}default:break b}while(0)}case 44:{g=g+1|0;c[e>>2]=g;f=a[b+g>>0]|0;switch(f<<24>>24|0){case 67:{f=-57;break b}case 99:{f=-25;break b}default:break b}}case 60:{f=-85;break}case 62:{f=-69;break}case 33:{f=-95;break}case 63:{f=-65;break}case 97:{g=g+1|0;c[e>>2]=g;f=-26;break}case 65:{g=g+1|0;c[e>>2]=g;f=-58;break}case 99:{f=-94;break}case 76:{f=-93;break}case 89:{f=-91;break}case 35:{h=g+1|0;c[e>>2]=h;h=a[b+h>>0]|0;f=g+2|0;c[e>>2]=f;f=a[b+f>>0]|0;h=O(h,1677721600)|0;g=g+3|0;c[e>>2]=g;f=(d[b+g>>0]|0)+208+((h+1610612736+(O(f,167772160)|0)|0)>>>24)&255;break}default:{}}while(0);if(!(i<<24>>24)){e=f;return e|0}else{i=g+1|0;c[e>>2]=i;h=g+2|0;c[e>>2]=(a[b+h>>0]|0)==41?h:i;return (f<<24>>24==41?j:f)|0}return 0}function Ab(){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;q=l;l=l+1088|0;k=q+54|0;m=q+52|0;n=q+34|0;o=q+17|0;p=q;b=105016+(cc(105016,107614)|0)|0;if(a[b>>0]|0)do{a[b>>0]=32;b=105016+(cc(105016,107614)|0)|0}while((a[b>>0]|0)!=0);c[22392]=1;ec(91768,0,132)|0;c[22977]=108195;c[22979]=108195;c[22980]=108195;c[22981]=108195;c[22982]=108195;c[22983]=108195;c[22984]=108195;c[22985]=108195;c[22986]=108195;c[22987]=108195;c[22988]=108195;c[22989]=108195;c[22990]=108195;c[22991]=108195;c[22992]=108195;c[22993]=108195;c[22994]=108195;c[22995]=108195;c[22996]=108195;c[22997]=108195;c[22998]=108195;c[22999]=108195;c[23e3]=108195;c[23001]=108195;c[23002]=108195;c[23003]=108195;c[23004]=108195;c[23005]=108195;c[23006]=108195;c[23007]=108195;c[23008]=108195;c[23009]=108195;c[22978]=105016;ze(k,105016)|0;a[105016]=0;if((Ic(k)|0)>=1){j=m+1|0;d=0;b=0;i=1;while(1){e=a[k+(i+-1)>>0]|0;if(b<<24>>24!=1&e<<24>>24>-1){e=De(e)|0;a[m>>0]=e;a[j>>0]=0;f=e<<24>>24==34;g=9}else{a[m>>0]=e;a[j>>0]=0;f=e<<24>>24==34;if(b<<24>>24==1&f){ze(105016+d|0,m)|0;d=d+1|0;b=2;g=11}else g=9}a:do if((g|0)==9){g=0;switch(e<<24>>24){case 34:{g=11;break a}case 63:case 33:case 32:{if(b<<24>>24!=1){g=11;break a}switch(e<<24>>24){case 44:case 46:{g=16;break}default:{}}break}case 44:case 46:{g=16;break}default:{}}if((g|0)==16){g=0;if(b<<24>>24==1)b=1;else{e=c[22392]|0;f=e+1|0;if(a[c[91908+(e<<2)>>2]>>0]|0){e=(f|0)<32?f:32;c[22392]=e;d=d+1|0}f=105016+d|0;c[91908+(e<<2)>>2]=f;ze(f,m)|0;d=d+1+(Ic(m)|0)|0;f=(c[22392]|0)+1|0;f=(f|0)<32?f:32;c[22392]=f;h=105016+d|0;c[91908+(f<<2)>>2]=h;a[h>>0]=0;break}}ze(105016+d|0,m)|0;d=d+1|0}while(0);if((g|0)==11){r=c[22392]|0;g=d+1|0;e=r+1|0;e=(e|0)<32?e:32;h=105016+g|0;if(a[c[91908+(r<<2)>>2]>>0]|0){c[22392]=e;c[91908+(e<<2)>>2]=h;a[h>>0]=0;d=g}if(b<<24>>24==0&f){ze(105016+d|0,m)|0;b=1;d=d+1|0}}if((i|0)<(Ic(k)|0))i=i+1|0;else break}}b=c[22392]|0;if(!(a[c[91908+(b<<2)>>2]>>0]|0)){b=b+-1|0;c[22392]=b}if((b|0)<1){l=q;return}else g=1;while(1){h=91908+(g<<2)|0;b=c[h>>2]|0;d=cc(b,1780)|0;r=Ic(b)|0;if((d|0)!=(r|0)&r>>>0<6){ze(n,kd(b,d)|0)|0;b=c[h>>2]|0;d=Ic(b)|0;ze(o,Uc(b,d+-1-(cc(b,1780)|0)|0)|0)|0;b=wc(n)|0;d=wc(o)|0;if(!(Yc(kd(o,1)|0,1782)|0))ze(o,Uc(o,(Ic(o)|0)+-1|0)|0)|0;f=b<<16;e=f>>16;if(!(Yc(n,Gd(e,p,10)|0)|0)){r=d<<16;b=r>>16;if((r|65535)>>>0<3997695&((f+-1|0)>>>0<1638399&(Yc(o,Gd(b,p,10)|0)|0)==0)){ze(100148,c[h>>2]|0)|0;Gd((e*60|0)+b|0,c[h>>2]|0,10)|0}}}if((g|0)<(c[22392]|0))g=g+1|0;else break}l=q;return}function Bb(){var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;k=0;e=c[1867]|0;e=(e|0)<1?4095:e+-1|0;c[1867]=e;g=c[7592+(e*20|0)+4>>2]|0;if(!((g|0)==0|(g|0)>4095)){b=0;f=e;do{f=(f|0)<1?4095:f+-1|0;b=b+1|0}while((c[7592+(f*20|0)>>2]|0)!=0);c[1867]=f;if((b|0)>=(g+-1|0)){c[1867]=e;b=0;a:while(1){e=(e|0)<1?4095:e+-1|0;c[1867]=e;switch(c[7592+(e*20|0)>>2]|0){case 0:break a;case 58:{j=7592+(e*20|0)|0;Hb(c[j+4>>2]|0,c[j+8>>2]|0);b=b+1|0;break}case 67:{i=7592+(e*20|0)|0;f=c[i+12>>2]|0;h=c[i+16>>2]|0;i=kc(c[i+4>>2]|0,c[i+8>>2]|0,0)|0;if(i|0){g=c[1884]|0;c[1874]=g;j=i+1|0;g=(c[1858]|0)+((g<<4)+j)|0;do if((f|0)==255){e=1;f=-1;k=12}else{e=a[g>>0]|0;if(e<<24>>24!=-1)if((e&255)>>>0>=(f&255)>>>0){e=f;break}e=f;f=f&255;k=12}while(0);if((k|0)==12){k=0;a[g>>0]=f}f=c[1858]|0;g=c[1874]<<4;if((e|0)<=(d[f+(g+j)>>0]|0)){j=(e<<1)+i|0;a[f+(g+j)>>0]=h;a[(c[1858]|0)+(j+1+(c[1874]<<4))>>0]=h>>>8}}b=b+1|0;break}case 68:{j=7592+(e*20|0)|0;$b(c[j+4>>2]|0,c[j+8>>2]|0,c[j+12>>2]|0);b=b+1|0;break}case 69:{j=7592+(e*20|0)|0;c[6384+(c[j+4>>2]<<2)>>2]=c[j+8>>2];b=b+1|0;break}case 89:{h=c[1871]|0;c[1874]=h;j=7592+(e*20|0)|0;i=c[j+12>>2]|0;j=(c[j+8>>2]<<1)+(c[j+4>>2]|0)|0;a[(c[1858]|0)+(j+(h<<4))>>0]=i;a[(c[1858]|0)+(j+1+(c[1874]<<4))>>0]=i>>>8;b=b+1|0;break}case 108:{i=c[1876]|0;c[1874]=i;j=(c[1877]|0)+-1|0;c[1877]=j;a[(c[1858]|0)+(i<<4)>>0]=j;a[(c[1858]|0)+(c[1874]<<4|1)>>0]=j>>>8;b=b+1|0;break}case 82:{j=7592+(e*20|0)|0;i=c[j+4>>2]|0;j=c[j+8>>2]|0;c[91768+(i<<2)>>2]=j;f=j&65535;b:do switch((j&65535)<<16>>16){case 0:{e=108195;break}case -16:{e=100148;break}case -15:{e=98554;break}default:{e=c[1876]|0;g=e<<4;if((g+f|0)>(c[1878]|0)){c[22389]=108195;e=108195;break b}c[1874]=e;h=c[1858]|0;g=f+2+g|0;e=a[h+g>>0]|0;if(!(e<<24>>24))e=0;else{e=e&255;f=1;while(1){a[98829+(f+-1)>>0]=(d[h+(f+g)>>0]|0)+236;if((f|0)==(e|0))break;else f=f+1|0}}a[98829+e>>0]=0;c[22389]=98829;c[1874]=c[1875];e=98829}}while(0);c[91908+(i<<2)>>2]=e;b=b+1|0;break}default:{}}c[1874]=c[1875];e=c[1867]|0}if(b|0){a[108193]=1;c[1867]=e+1;k=1;return k|0}}}a[95991]=1;a[108193]=0;k=0;return k|0}function Cb(a,b,d,e,f){a=a|0;b=b|0;d=d|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0;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){if(f|0){c[f>>2]=(k>>>0)%(h>>>0);c[f+4>>2]=0}n=0;f=(k>>>0)/(h>>>0)>>>0;return (z=n,f)|0}if(!l){if(f|0){c[f>>2]=0;c[f+4>>2]=(k>>>0)%(i>>>0)}n=0;f=(k>>>0)/(i>>>0)>>>0;return (z=n,f)|0}g=i-1|0;if(!(g&i)){if(f|0){c[f>>2]=a|0;c[f+4>>2]=g&k|b&0}n=0;f=k>>>((id(i|0)|0)>>>0);return (z=n,f)|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){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}else{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=id(h|0)|0;o=k>>>(p>>>0)|0;p=k<<32-p|l>>>(p>>>0)|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=Id(m|0,l|0,-1,-1)|0;d=z;j=i;i=0;do{q=j;j=g>>>31|j<<1;g=i|g<<1;q=a<<1|q>>>31|0;e=a>>>31|b<<1|0;Jd(k|0,d|0,q|0,e|0)|0;o=z;p=((o|0)<0?-1:0)<<1|0;n=o>>31|p;i=n&1;a=Jd(q|0,e|0,n&m|0,(((o|0)<0?-1:0)>>31|p)&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}p=(g|0)>>>31|(k|h)<<1|(h<<1|g>>>31)&0|j;q=(g<<1|0>>>31)&-2|i;return (z=p,q)|0}function Db(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;o=l;l=l+16|0;m=o+4|0;h=o;i=(a|0)!=0;if(!(c[23846]|0))if(i){aa(2335);n=0;l=o;return n|0}else k=0;else{if(!i){aa(2365);n=0;l=o;return n|0}switch((b&240)<<24>>24){case 16:case 32:break;default:{aa(2399);n=0;l=o;return n|0}}if((b&14)>>>0>=3){aa(2455);n=0;l=o;return n|0}g=c[a+12>>2]|0;if(!g)k=0;else if((c[g+8>>2]|0)==1)k=g;else{aa(2499);n=0;l=o;return n|0}}if((e|0)==5)if(!(pe(6,0)|0)){n=0;l=o;return n|0}if(i)g=c[a>>2]|0;else g=0;g=Oa(g|0,b|0,d|0,e|0,f|0,h|0)|0;if(!g){n=0;l=o;return n|0}n=ub(64)|0;if(!n){aa(2538);n=0;l=o;return n|0}c[n+4>>2]=f;c[n+8>>2]=e;c[n>>2]=g;d=n+12|0;c[d>>2]=0;c[n+28>>2]=0;b=n+24|0;c[b>>2]=rc(n)|0;f=n+60|0;c[f>>2]=0;g=c[23848]|0;j=n+56|0;c[j>>2]=g;c[23848]=n;if(g|0)c[g+60>>2]=n;g=c[23840]|0;if(g|0){rb[g&0](m,n,0);c[n+52>>2]=c[m>>2]}switch(e|0){case 5:case 3:case 4:case 2:{if(!i){c[23846]=n;l=o;return n|0}b=c[h>>2]|0;g=ub(64)|0;if(!g)g=0;else{c[g+4>>2]=0;c[g+8>>2]=1;c[g>>2]=b;c[g+12>>2]=0;c[g+28>>2]=0;c[g+24>>2]=rc(g)|0;c[g+60>>2]=0;b=c[23848]|0;c[g+56>>2]=b;c[23848]=g;if(b|0)c[b+60>>2]=g;b=c[23840]|0;if(b){rb[b&0](m,g,0);c[g+52>>2]=c[m>>2]}}c[g+16>>2]=a;c[g+20>>2]=n;c[a+12>>2]=g;c[d>>2]=g;c[g+12>>2]=k;if(!k){c[23846]=g;l=o;return n|0}else{m=k+16|0;c[((c[m>>2]|0)==(a|0)?m:k+20|0)>>2]=g;l=o;return n|0}}case 1:{aa(2575);g=c[23841]|0;if(g|0){c[m>>2]=c[n+52>>2];rb[g&0](n,0,m)}g=c[b>>2]|0;if(g|0){gc(g);c[b>>2]=0}g=c[f>>2]|0;b=c[j>>2]|0;c[f>>2]=0;c[j>>2]=0;c[(g|0?g+56|0:95392)>>2]=b;if(b|0)c[b+60>>2]=g;xb(n);n=0;l=o;return n|0}default:{g=c[23841]|0;if(g|0){c[m>>2]=c[n+52>>2];rb[g&0](n,0,m)}g=c[b>>2]|0;if(g|0){gc(g);c[b>>2]=0}g=c[f>>2]|0;b=c[j>>2]|0;c[f>>2]=0;c[j>>2]=0;c[(g|0?g+56|0:95392)>>2]=b;if(b|0)c[b+60>>2]=g;xb(n);n=0;l=o;return n|0}}return 0}function Eb(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;p=l;l=l+160|0;q=p+80|0;m=p+72|0;k=p+64|0;j=p+56|0;i=p+48|0;h=p+40|0;g=p+32|0;o=p+24|0;n=p+16|0;f=p+8|0;e=p;p=p+88|0;d=c[1873]|0;switch(b|0){case 1:{b=103991;d=814;e=b+15|0;do{a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}while((b|0)<(e|0));break}case 2:{b=103991;d=829;e=b+18|0;do{a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}while((b|0)<(e|0));break}case 3:{b=103991;d=847;e=b+23|0;do{a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}while((b|0)<(e|0));break}case 4:{b=103991;d=870;e=b+27|0;do{a[b>>0]=a[d>>0]|0;b=b+1|0;d=d+1|0}while((b|0)<(e|0));break}case 5:{b=(d|0)>0?d:0;a[98822]=48;if((b|0)<65536){a[98823]=48;if((b|0)<4096){a[98824]=48;if((b|0)<256){a[98825]=48;if((b|0)<16){a[98826]=48;d=5}else d=4}else d=3}else d=2}else d=1;c[e>>2]=b;Cd(98822+d|0,897,e)|0;c[f>>2]=98822;Cd(103991,901,f)|0;break}case 6:{b=(d|0)>0?d:0;a[98822]=48;if((b|0)<65536){a[98823]=48;if((b|0)<4096){a[98824]=48;if((b|0)<256){a[98825]=48;if((b|0)<16){a[98826]=48;d=5}else d=4}else d=3}else d=2}else d=1;c[n>>2]=b;Cd(98822+d|0,897,n)|0;c[o>>2]=98822;Cd(103991,925,o)|0;break}case 7:{b=(d|0)>0?d:0;a[98822]=48;if((b|0)<65536){a[98823]=48;if((b|0)<4096){a[98824]=48;if((b|0)<256){a[98825]=48;if((b|0)<16){a[98826]=48;d=5}else d=4}else d=3}else d=2}else d=1;c[g>>2]=b;Cd(98822+d|0,897,g)|0;c[h>>2]=98822;Cd(103991,951,h)|0;break}case 8:{b=(d|0)>0?d:0;a[98822]=48;if((b|0)<65536){a[98823]=48;if((b|0)<4096){a[98824]=48;if((b|0)<256){a[98825]=48;if((b|0)<16){a[98826]=48;d=5}else d=4}else d=3}else d=2}else d=1;c[i>>2]=b;Cd(98822+d|0,897,i)|0;c[j>>2]=98822;Cd(103991,977,j)|0;break}case 9:{b=(d|0)>0?d:0;a[98822]=48;if((b|0)<65536){a[98823]=48;if((b|0)<4096){a[98824]=48;if((b|0)<256){a[98825]=48;if((b|0)<16){a[98826]=48;d=5}else d=4}else d=3}else d=2}else d=1;c[k>>2]=b;Cd(98822+d|0,897,k)|0;c[m>>2]=98822;Cd(103991,994,m)|0;break}default:{}}c[q>>2]=103991;Cd(p,1017,q)|0;ld(p);Oe(c[1858]|0);c[1858]=0;ce()}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,r=0;g=0;r=l;l=l+256|0;q=r;c[23017]=0;ze(107680,b)|0;ze(107935,d)|0;if(!(a[b>>0]|0)){ze(107680,d)|0;if(a[b>>0]|0)g=3}else g=3;if((g|0)==3){wd(b)|0;f=Ac(0,b,0)|0;if(!(wa(f|0)|0))e=0;else e=fc(f,2,0)|0;c[23017]=e;Dc(f);e=c[23017]|0;if(!e){c[6384+(c[12]<<2)>>2]=101;b=0;l=r;return b|0}switch(hb(e|0)|0){case 114:{e=1;g=9;break}case 82:{e=0;g=9;break}default:{}}a:do if((g|0)==9){hb(c[23017]|0)|0;o=hb(c[23017]|0)|0;o=((hb(c[23017]|0)|0)<<8)+o|0;p=hb(c[23017]|0)|0;p=((hb(c[23017]|0)|0)<<8)+p|0;if((o|0)>=1){if(!e){e=1;while(1){n=hb(c[23017]|0)|0;if(!(ma(c[23017]|0,q|0,n+1|0)|0))break a;i=hb(c[23017]|0)|0;j=hb(c[23017]|0)|0;k=hb(c[23017]|0)|0;f=hb(c[23017]|0)|0;g=hb(c[23017]|0)|0;h=hb(c[23017]|0)|0;if(!(Yc(d,q)|0))break;if((e|0)<(o|0))e=e+1|0;else break a}f=(g<<8)+f+(h<<16)|0;e=(j<<8)+i+(k<<16)|0}else{e=1;while(1){n=hb(c[23017]|0)|0;if(!(ma(c[23017]|0,q|0,n+1|0)|0))break a;j=hb(c[23017]|0)|0;k=hb(c[23017]|0)|0;m=hb(c[23017]|0)|0;n=hb(c[23017]|0)|0;f=hb(c[23017]|0)|0;g=hb(c[23017]|0)|0;h=hb(c[23017]|0)|0;i=hb(c[23017]|0)|0;if(!(Yc(d,q)|0))break;if((e|0)<(o|0))e=e+1|0;else break a}f=(i<<24)+((g<<8)+f+(h<<16))|0;e=(n<<24)+((k<<8)+j+(m<<16))|0}Da(c[23017]|0,p+e|0,0);b=f;l=r;return b|0}}while(0);c[6384+(c[12]<<2)>>2]=102;_b(c[23017]|0,0);c[23017]=0}f=Ac(0,d,0)|0;if(!(wa(f|0)|0))e=0;else e=fc(f,2,0)|0;c[23017]=e;Dc(f);e=c[23017]|0;if(!e){c[6384+(c[12]<<2)>>2]=a[b>>0]|0?102:101;b=0;l=r;return b|0}else{Da(e|0,0,2);b=na(c[23017]|0)|0;Da(c[23017]|0,0,0);l=r;return b|0}return 0}function Gb(){var b=0,d=0,e=0,f=0,g=0;g=0;pa(c[1854]|0,a[98819]|0);pa(c[1854]|0,a[98820]|0);b=c[1854]|0;ha(b|0,98554,Ic(98554)|0);b=0;do{f=c[6384+(b<<2)>>2]|0;pa(c[1854]|0,f&255|0);pa(c[1854]|0,f>>>8&255|0);b=b+1|0}while((b|0)!=256);Da(c[1852]|0,c[1883]<<4|0,0);if((c[1878]|0)>=(c[1883]<<4|0)){f=0;b=0;while(1){d=hb(c[1852]|0)|0;if((d|0)==-1){b=0;g=17;break}e=a[(c[1858]|0)+((c[1883]<<4)+f)>>0]|0;d=(d|0)==(e&255|0);if((b|0)<255&d)b=b+1|0;else{if(b|0)pa(c[1854]|0,b&255|0);if(d)b=1;else{pa(c[1854]|0,0);pa(c[1854]|0,e|0);b=0}}if((f|0)<((c[1878]|0)-(c[1883]<<4)|0))f=f+1|0;else break}if((g|0)==17)return b|0;if(b|0)pa(c[1854]|0,b&255|0)}pa(c[1854]|0,0);pa(c[1854]|0,16);b=0;do{g=7592+(b*20|0)|0;f=c[g>>2]|0;pa(c[1854]|0,f&255|0);pa(c[1854]|0,f>>>8&255|0);f=c[g+4>>2]|0;pa(c[1854]|0,f&255|0);pa(c[1854]|0,f>>>8&255|0);f=c[g+8>>2]|0;pa(c[1854]|0,f&255|0);pa(c[1854]|0,f>>>8&255|0);f=c[g+12>>2]|0;pa(c[1854]|0,f&255|0);pa(c[1854]|0,f>>>8&255|0);g=c[g+16>>2]|0;pa(c[1854]|0,g&255|0);pa(c[1854]|0,g>>>8&255|0);b=b+1|0}while((b|0)!=4096);pa(c[1854]|0,c[1867]&255|0);pa(c[1854]|0,((c[1867]|0)/256|0)&255|0);pa(c[1854]|0,c[1868]&255|0);pa(c[1854]|0,((c[1868]|0)/256|0)&255|0);pa(c[1854]|0,a[95991]|0);pa(c[1854]|0,a[95992]|0);g=1;return g|0}function Hb(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;if((b|0)==(e|0))return;if(!((b|0)>-1&(c[1879]|0)>(b|0)))return;j=c[1883]|0;c[1874]=j;h=c[31]|0;g=O(h,b)|0;i=c[1858]|0;g=(j<<4)+-6+h+g|0;g=(d[i+(g+1)>>0]|0)<<8|(d[i+g>>0]|0);c[1874]=c[1875];h=(O(h,b)|0)+2|0;i=Pb(b)|0;j=c[1883]|0;if((c[1879]|0)>(b|0)){c[1874]=j;k=c[31]|0;f=O(k,b)|0;l=c[1858]|0;f=(j<<4)+-4+k+f|0;f=(d[l+(f+1)>>0]|0)<<8|(d[l+f>>0]|0);c[1874]=c[1875]}else{f=0;k=c[31]|0;l=c[1858]|0}c[1874]=j;m=(i|0)==0;i=O(k,m?g:i)|0;k=(m?-2:-4)+k+i|0;a[l+(k+(j<<4))>>0]=f;a[(c[1858]|0)+(k+1+(c[1874]<<4))>>0]=f>>>8;k=c[1883]|0;c[1874]=k;l=(c[31]|0)+h|0;a[(c[1858]|0)+((k<<4)+-8+l)>>0]=e;a[(c[1858]|0)+(l+-7+(c[1874]<<4))>>0]=e>>>8;l=(c[31]|0)+h|0;a[(c[1858]|0)+(l+-6+(c[1874]<<4))>>0]=0;a[(c[1858]|0)+(l+-5+(c[1874]<<4))>>0]=0;if(!e)return;if((e|0)>-1&(c[1879]|0)>(e|0)){h=c[1883]|0;c[1874]=h;f=c[31]|0;m=O(f,e)|0;g=c[1858]|0;m=(h<<4)+-2+f+m|0;m=(d[g+(m+1)>>0]|0)<<8|(d[g+m>>0]|0);c[1874]=c[1875];if(m){m=Vb(e)|0;l=c[31]|0;m=O(l,m)|0;e=c[1883]|0;c[1874]=e;m=l+2+m|0;a[(c[1858]|0)+((e<<4)+-6+m)>>0]=b;a[(c[1858]|0)+(m+-5+(c[1874]<<4))>>0]=b>>>8;return}}else{f=c[31]|0;h=c[1883]|0;g=c[1858]|0}m=O(f,e)|0;c[1874]=h;m=f+2+m|0;a[g+((h<<4)+-4+m)>>0]=b;a[(c[1858]|0)+(m+-3+(c[1874]<<4))>>0]=b>>>8;return}function Ib(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;l=0;h=c[22428]|0;if((h|0)==256)return;a:do if((h|0)>0){g=0;while(1){if((c[89716+(g<<3)>>2]|0)==(b|0))break;g=g+1|0;if((g|0)>=(h|0))break a}i=c[15]|0;l=i&255;b:do if((e<<24>>24|0)!=(i<<24>>24|0)){e=kc(b,i,0)|0;c:do if(e|0){h=c[1884]|0;c[1874]=h;j=c[1858]|0;h=h<<4;m=a[j+(e+1+h)>>0]|0;k=m&255;switch(m<<24>>24){case 0:break c;case -1:{m=(yb(b,i,1,0)|0)==(f|0);c[1874]=c[1875];if(m)break b;return}default:{}}h=h+e|0;e=1;while(1){m=h+(e<<1)|0;if((d[j+(m+1)>>0]<<8|d[j+m>>0]|0)==(f|0))break;if((e|0)<(k|0))e=e+1|0;else break c}c[1874]=c[1875];break b}while(0);c[1874]=c[1875];return}while(0);a[89716+(g<<3)+4>>0]=l;return}while(0);i=c[15]|0;g=kc(b,i,0)|0;d:do if(!g)l=21;else{h=c[1884]|0;c[1874]=h;j=c[1858]|0;h=h<<4;m=a[j+(g+1+h)>>0]|0;k=m&255;switch(m<<24>>24){case 0:{l=21;break d}case -1:{m=(yb(b,i,1,0)|0)==(f|0);c[1874]=c[1875];if(m){e=i&255;break d}else{l=23;break d}}default:{}}h=h+g|0;g=1;while(1){m=h+(g<<1)|0;if((d[j+(m+1)>>0]<<8|d[j+m>>0]|0)==(f|0))break;if((g|0)<(k|0))g=g+1|0;else{l=21;break d}}c[1874]=c[1875];e=i&255}while(0);if((l|0)==21){c[1874]=c[1875];l=23}m=c[22428]|0;f=89716+(m<<3)|0;c[f>>2]=b;a[f+4>>0]=e;c[22428]=m+1;return}function Jb(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 Kb(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;i=0;m=l;l=l+16|0;j=m;if(!a){aa(2621);l=m;return}ea(c[a>>2]|0);if((c[23846]|0)!=(a|0)){k=c[a+12>>2]|0;if(k|0){d=k+16|0;e=c[d>>2]|0;h=k+20|0;f=c[h>>2]|0;if((e|0)==(a|0))e=f;else if((f|0)!=(a|0)){aa(2647);l=m;return}f=c[k+12>>2]|0;if(!f){g=0;f=95384}else{n=f+16|0;g=f;f=(c[n>>2]|0)==(k|0)?n:f+20|0}c[f>>2]=e;c[e+12>>2]=g;gb(c[c[a+24>>2]>>2]|0,b|0,0);ic(a,1);if((c[d>>2]|0)==(a|0))i=13;else if((c[h>>2]|0)==(a|0)){d=h;i=13}if((i|0)==13)c[d>>2]=0;if((c[23847]|0)==(k|0))c[23847]=0;d=c[23841]|0;if(d|0){c[j>>2]=c[k+52>>2];rb[d&0](k,0,j)}d=k+24|0;e=c[d>>2]|0;if(e|0){gc(e);c[d>>2]=0}j=k+60|0;d=c[j>>2]|0;n=k+56|0;e=c[n>>2]|0;c[j>>2]=0;c[n>>2]=0;c[(d|0?d+56|0:95392)>>2]=e;if(e|0)c[e+60>>2]=d;xb(k);l=m;return}}c[23846]=0;gb(c[c[a+24>>2]>>2]|0,b|0,0);ic(a,1);l=m;return}function Lb(b,e){b=b|0;e=e|0;var f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=0;f=c[22393]|0;if(f|0)if(!(a[f+((b|0)/8|0)>>0]&1<<(b&7))){e=0;return e|0}f=c[16]|0;g=kc(b,f,0)|0;a:do if(!g)i=9;else{h=c[1884]|0;c[1874]=h;j=c[1858]|0;h=h<<4;l=a[j+(g+1+h)>>0]|0;k=l&255;switch(l<<24>>24){case 0:{i=9;break a}case -1:{l=(yb(b,f,1,0)|0)==(e|0);c[1874]=c[1875];if(!l)break a;return f|0}default:{}}h=h+g|0;g=1;while(1){l=h+(g<<1)|0;if((d[j+(l+1)>>0]<<8|d[j+l>>0]|0)==(e|0))break;if((g|0)<(k|0))g=g+1|0;else{i=9;break a}}c[1874]=c[1875];l=f;return l|0}while(0);if((i|0)==9)c[1874]=c[1875];f=c[15]|0;g=kc(b,f,0)|0;b:do if(!g)f=0;else{h=c[1884]|0;c[1874]=h;i=c[1858]|0;h=h<<4;l=a[i+(g+1+h)>>0]|0;j=l&255;switch(l<<24>>24){case 0:{f=0;break b}case -1:{l=(yb(b,f,1,0)|0)==(e|0);f=l?f:0;break b}default:{}}h=h+g|0;g=1;while(1){l=h+(g<<1)|0;if((d[i+(l+1)>>0]<<8|d[i+l>>0]|0)==(e|0))break b;if((g|0)<(j|0))g=g+1|0;else{f=0;break}}}while(0);c[1874]=c[1875];l=f;return l|0}function Mb(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;if((e|0)>=8192)return ya(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 Nb(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if((b|0)==1)if(((c[1897]|0)/(c[1896]|0)|0|0)<(e|0))g=4;else{f=c[1870]|0;g=8}else g=4;do if((g|0)==4){f=c[1870]|0;if((f|0)<24&(c[1864]|0)!=0)g=8;else{c[23822]=0;f=c[23820]|0;if(((c[1897]|0)/(c[1896]|0)|0|0)<(e|0)){c[23821]=f;Rd(f);break}c[23821]=0;Rd(f);return}}while(0);if((g|0)==8){e=(f|0)<24?4:e;f=c[23826]|0;if(!f){Ld(c[23820]|0)|0;f=Db(c[23820]|0,18,e,4,0)|0;c[23826]=f;g=12}else if((e|0)!=(c[23827]|0)){f=Ld(f)|0;ra(f|0,18,e|0,c[23826]|0);f=c[23826]|0;g=12}if((g|0)==12)if(!f){c[23821]=0;Rd(c[23820]|0);c[23827]=0;return}if((c[1870]|0)<24){La(f|0);f=c[23826]|0}c[23821]=f;Rd(f);c[23822]=1;c[23827]=e}f=c[22379]|0;c[22382]=O(f,a+-1|0)|0;g=c[1896]|0;c[22381]=O(g,b+-1|0)|0;c[22383]=(O(f,d)|0)+-1;c[1897]=(O(g,e)|0)+-1;c[1872]=O(f,1-a+d|0)|0;c[1881]=O(g,1-b+e|0)|0;return}function Ob(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;m=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=Vd(db(146,g|0)|0)|0;a:do if((e|0)==(g|0))m=3;else{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=Vd(db(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}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 Pb(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0;g=c[1879]|0;if(!((a|0)>-1&(g|0)>(a|0))){g=0;return g|0}h=c[1883]|0;c[1874]=h;b=c[31]|0;e=O(b,a)|0;f=c[1858]|0;e=(h<<4)+-6+b+e|0;e=(d[f+(e+1)>>0]|0)<<8|(d[f+e>>0]|0);c[1874]=c[1875];if((g|0)>(e|0)){i=c[1883]|0;c[1874]=i;f=c[31]|0;b=O(f,e)|0;h=c[1858]|0;b=(i<<4)+-2+f+b|0;b=(d[h+(b+1)>>0]|0)<<8|(d[h+b>>0]|0);c[1874]=c[1875]}else b=0;if((e|0)==0|(b|0)==(a|0)){i=0;return i|0}while(1){f=(b|0)>-1&(g|0)>(b|0);if(f){j=c[1883]|0;c[1874]=j;h=c[31]|0;e=O(h,b)|0;i=c[1858]|0;e=(j<<4)+-4+h+e|0;e=(d[i+(e+1)>>0]|0)<<8|(d[i+e>>0]|0);c[1874]=c[1875]}else e=0;if((e|0)==(a|0))break;if(!f){b=0;continue}f=c[1883]|0;c[1874]=f;h=c[31]|0;j=O(h,b)|0;i=c[1858]|0;j=(f<<4)+-4+h+j|0;j=(d[i+(j+1)>>0]|0)<<8|(d[i+j>>0]|0);c[1874]=c[1875];b=j}return b|0}function Qb(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+224|0;n=s+120|0;p=s+80|0;q=s;r=s+136|0;f=p;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((vb(0,d,n,q,p)|0)<0)e=-1;else{if((c[b+76>>2]|0)>-1)o=ef(b)|0;else o=0;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]=r;i=b+28|0;c[i>>2]=r;j=b+20|0;c[j>>2]=r;c[f>>2]=80;k=b+16|0;c[k>>2]=r+80;e=vb(b,d,n,q,p)|0;if(h){pb[c[b+36>>2]&7](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=vb(b,d,n,q,p)|0;f=c[b>>2]|0;c[b>>2]=f|m;if(o|0)df(b);e=(f&32|0)==0?e:-1}l=s;return e|0}function Rb(b){b=b|0;var e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;if(!(a[b>>0]|0)){l=0;return l|0}l=Ic(b)|0;f=c[1876]|0;c[1874]=f;e=c[1877]|0;a:do if((e|0)>=1){i=1;j=0;while(1){g=j+2|0;h=c[1858]|0;f=d[h+((f<<4)+g)>>0]|0;if((l|0)==(f|0))if((a[b>>0]|0)==((d[h+(j+3+(c[1876]<<4))>>0]|0)+236&255)<<24>>24){if(!(Yc(Oc(g)|0,b)|0))break;e=c[1877]|0}if((i|0)>=(e|0))break a;i=i+1|0;j=j+1+f|0;f=c[1874]|0}c[1874]=c[1875];l=j;return l|0}while(0);if(!((l|0)<6|(e|0)<1)){e=0;f=0;i=1;j=0;while(1){g=j+2|0;h=c[1858]|0;k=d[h+((c[1874]<<4)+g)>>0]|0;if((l|0)<=(k|0))if(((d[h+(j+3+(c[1876]<<4))>>0]|0)+-20|0)==(a[b>>0]|0))if(!(Gc(Oc(g)|0,b,l)|0)){h=(oe(Oc(g)|0,32)|0)==0;f=(h&1)+f|0;e=h?j:e}if((i|0)<(c[1877]|0)){i=i+1|0;j=j+1+k|0}else break}if((f|0)==1){l=e;return l|0}}c[1874]=c[1875];l=65535;return l|0}function Sb(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=Zd(c[b+8>>2]|0,o)|0;f=Zd(c[b+12>>2]|0,o)|0;g=Zd(c[b+16>>2]|0,o)|0;a:do if(h>>>0<d>>>2>>>0){n=d-(h<<2)|0;if(f>>>0<n>>>0&g>>>0<n>>>0)if(!((g|f)&3)){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=Zd(c[b+(g<<2)>>2]|0,o)|0;g=Zd(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=Yc(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=Zd(c[b+(f<<2)>>2]|0,o)|0;f=Zd(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;else f=0}else f=0;while(0);return f|0}function Tb(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;m=l;l=l+16|0;h=m+4|0;k=m;if((d+-1|0)>>>0>=3){aa(2171);k=0;l=m;return k|0}i=Aa(a|0,b|0,d|0,e|0,0)|0;j=ub(40)|0;if(j){c[j+8>>2]=3;c[j+4>>2]=e;c[j+12>>2]=0;f=j+16|0;c[f>>2]=0;g=j+20|0;c[g>>2]=0;c[j+36>>2]=0;d=c[23844]|0;c[j+32>>2]=d;c[23844]=j;if(d|0)c[d+36>>2]=j;d=c[23840]|0;e=j+28|0;if(!d)c[e>>2]=0;else{rb[d&0](h,j,1);c[e>>2]=c[h>>2]}if(i|0){if(!((a|0)!=0&(b|0)!=0)){k=j;l=m;return k|0}c[f>>2]=a;c[g>>2]=b;d=c[23842]|0;if(d|0){qb[d&0](k,a,b,2755);c[j+24>>2]=c[k>>2]}c[j>>2]=i;k=j;l=m;return k|0}}aa(2208);k=0;l=m;return k|0}function Ub(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0;h=0;g=d;do if(!((g^b)&3)){f=(e|0)!=0;a:do if(f&(g&3|0)!=0)while(1){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;if(!(f&(d&3|0)!=0)){h=5;break}}else h=5;while(0);if((h|0)==5)if(!f){e=0;break}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 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);ec(b|0,0,e|0)|0;return b|0}function Vb(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0,l=0;i=c[1879]|0;if(!((a|0)>-1&(i|0)>(a|0))){k=0;return k|0}j=c[1883]|0;c[1874]=j;k=c[31]|0;b=O(k,a)|0;h=c[1858]|0;e=j<<4;b=e+-2+k+b|0;a=h+b|0;b=h+(b+1)|0;f=(d[b>>0]|0)<<8|(d[a>>0]|0);g=c[1875]|0;c[1874]=g;if(!f){k=0;return k|0}c[1874]=j;a=(d[b>>0]|0)<<8|(d[a>>0]|0);c[1874]=g;if((i|0)<=(a|0)){k=a;return k|0}f=e+-4+k|0;while(1){c[1874]=j;e=f+(O(k,a)|0)|0;b=h+e|0;e=h+(e+1)|0;l=(d[e>>0]|0)<<8|(d[b>>0]|0);c[1874]=g;if(!l){b=9;break}if((i|0)>(a|0)){c[1874]=j;a=(d[e>>0]|0)<<8|(d[b>>0]|0);c[1874]=g}else a=0;if(!((a|0)>-1&(i|0)>(a|0))){b=9;break}}if((b|0)==9)return a|0;return 0}function Wb(b){b=b|0;var e=0,f=0,g=0;b=(c[1878]|0)+b|0;if(c[32]|0){g=c[1858]|0;f=(d[g+(b+1)>>0]|0)<<8|(d[g+b>>0]|0);if(!f){g=0;g=99085+g|0;a[g>>0]=0;return 99085}e=b+2|0;b=0;do{a[99085+b>>0]=(d[g+(e+b)>>0]|0)+236;b=b+1|0}while((b|0)<(f|0));g=99085+b|0;a[g>>0]=0;return 99085}Da(c[1852]|0,b|0,0);b=hb(c[1852]|0)|0;e=hb(c[1852]|0)|0;if((b|0)==-1|(e|0)==-1)Eb(3);f=(e<<8)+b|0;if((f|0)>0)b=0;else{g=0;g=99085+g|0;a[g>>0]=0;return 99085}while(1){e=hb(c[1852]|0)|0;if((e|0)==-1){e=9;break}a[99085+b>>0]=e+236;b=b+1|0;if((b|0)>=(f|0)){e=11;break}}if((e|0)==9)Eb(3);else if((e|0)==11){g=99085+b|0;a[g>>0]=0;return 99085}return 0}function Xb(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;h=0;i=l;l=l+16|0;f=i;g=c[23821]|0;if(!g){l=i;return}if((a[109287]|0)!=0|(c[1864]|0)!=0)h=10;else if((d|0)!=1&(c[23825]&8|0)==0)if(((c[22380]|0)+-15|0)>(d|0)){e=c[23829]|0;if((g|0)!=(e|0)){if(!e){e=Db(c[23820]|0,35,100,4,0)|0;c[23829]=e}else{La(e|0);e=c[23829]|0}c[23821]=e;Rd(e)}}else h=10;else h=10;if((h|0)==10){e=c[23829]|0;if(e|0){Kb(e,f);c[23829]=0;La(c[23820]|0);La(c[23826]|0);h=c[23820]|0;c[23821]=h;Rd(h)}}a[109287]=0;f=c[23821]|0;e=b+-1|0;if((f|0)!=(c[23820]|0))Ca(f|0,e|0,d+-1|0);c[1860]=d;c[1859]=e;l=i;return}function Yb(b,d,e){b=b|0;d=d|0;e=e|0;var f=0,g=0,h=0,i=0;h=d&255;f=(e|0)!=0;a:do if(f&(b&3|0)!=0){g=d&255;while(1){if((a[b>>0]|0)==g<<24>>24){i=6;break a}b=b+1|0;e=e+-1|0;f=(e|0)!=0;if(!(f&(b&3|0)!=0)){i=5;break}}}else i=5;while(0);if((i|0)==5)if(f)i=6;else e=0;b:do if((i|0)==6){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}}}}while(0);return (e|0?b:0)|0}function Zb(b){b=b|0;var d=0,e=0,f=0,g=0;g=6384+(c[6]<<2)|0;if((c[g>>2]|0)==(b|0)){g=0;return g|0}switch(c[22395]|0){case -1:case 0:break;default:return (ad(b)|0)==(c[22395]|0)|0}f=ad(b)|0;a:do if((f|0)==(c[22976]|0))d=1;else{if(a[100112]|0){f=Lc(b)|0;if((f|0)==(c[22976]|0)){d=1;break}}f=ad(b)|0;if((f|0)==(c[22976]|0)){f=ad(b)|0;d=a[100114]|0;if(d<<24>>24>0){e=d<<24>>24;d=0;while(1){if((c[89584+(d<<2)>>2]|0)==(f|0)){d=0;break a}d=d+1|0;if((d|0)>=(e|0)){d=1;break}}}else d=1}else d=0}while(0);if((a[(c[1858]|0)+((c[1874]<<4)+(c[22941]|0))>>0]|0)!=79){g=d;return g|0}b=ad(b)|0;g=(b|0)==(c[g>>2]|0)?0:d;return g|0}function _b(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0;f=l;l=l+16|0;e=f;if(!a){aa(2103);l=f;return}d=a+8|0;if((c[d>>2]|0)==2){aa(2130);l=f;return}gb(c[a>>2]|0,b|0,1);if((c[23845]|0)==(a|0))c[23845]=0;b=c[23843]|0;if((c[d>>2]|0)==3&(b|0)!=0){d=c[a+12>>2]|0?2748:2755;h=c[a+16>>2]|0;g=c[a+20>>2]|0;c[e>>2]=c[a+24>>2];qb[b&0](h,g,d,e)}b=c[23841]|0;if(b|0){h=a+28|0;c[e>>2]=c[h>>2];rb[b&0](a,1,e);c[h>>2]=0}g=a+36|0;b=c[g>>2]|0;h=a+32|0;d=c[h>>2]|0;c[g>>2]=0;c[h>>2]=0;c[(b|0?b+32|0:95376)>>2]=d;if(d|0)c[d+36>>2]=b;xb(a);l=f;return}function $b(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0,j=0,k=0,l=0;if(!((b|0)>-1&(c[1879]|0)>(b|0)))return;h=(e|0)/32|0;i=c[1883]|0;c[1874]=i;l=(O(c[31]|0,b)|0)+(h<<2|2)|0;j=c[1858]|0;g=i<<4;k=l+g|0;g=l+(g|2)|0;g=(d[j+(k+1)>>0]|0)<<8|(d[j+k>>0]|0)|((d[j+(g+1)>>0]|0)<<8|(d[j+g>>0]|0))<<16;c[1874]=c[1875];e=1<<(e&31);if((f|0)==1)e=g|e;else e=((g&e|0)==0?0:e)^g;c[1874]=i;l=h<<2|2;k=(O(c[31]|0,b)|0)+l|0;a[(c[1858]|0)+(k+(i<<4))>>0]=e;a[(c[1858]|0)+(k+1+(c[1874]<<4))>>0]=e>>>8;l=(O(c[31]|0,b)|0)+l|0;a[(c[1858]|0)+(l+2+(c[1874]<<4))>>0]=e>>>16;a[(c[1858]|0)+(l+3+(c[1874]<<4))>>0]=e>>>24;c[1874]=c[1875];return}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;h=0;f=e+16|0;g=c[f>>2]|0;if(!g)if(!(Rc(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=pb[c[e+36>>2]&7](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=pb[c[e+36>>2]&7](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);Mb(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 bc(b,d,e){b=b|0;d=d|0;e=e|0;do if(!b)b=1;else{if(d>>>0<128){a[b>>0]=d;b=1;break}if(!(c[c[(Qe()|0)+188>>2]>>2]|0))if((d&-128|0)==57216){a[b>>0]=d;b=1;break}else{c[(Le()|0)>>2]=84;b=-1;break}if(d>>>0<2048){a[b>>0]=d>>>6|192;a[b+1>>0]=d&63|128;b=2;break}if(d>>>0<55296|(d&-8192|0)==57344){a[b>>0]=d>>>12|224;a[b+1>>0]=d>>>6&63|128;a[b+2>>0]=d&63|128;b=3;break}if((d+-65536|0)>>>0<1048576){a[b>>0]=d>>>18|240;a[b+1>>0]=d>>>12&63|128;a[b+2>>0]=d>>>6&63|128;a[b+3>>0]=d&63|128;b=4;break}else{c[(Le()|0)>>2]=84;b=-1;break}}while(0);return b|0}function cc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0,h=0,i=0;g=0;h=l;l=l+32|0;f=h;e=a[d>>0]|0;a:do if(!(e<<24>>24))g=3;else if(!(a[d+1>>0]|0))g=3;else{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)}}while(0);if((g|0)==3)d=lc(b,e<<24>>24)|0;l=h;return d-b|0}function dc(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;k=0;n=l;l=l+128|0;g=n+124|0;m=n;h=m;i=524;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[(Le()|0)>>2]=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=Qb(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 ec(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 fc(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;if(!a){aa(2253);g=0;l=h;return g|0}e=Na(c[a>>2]|0,b|0,d|0,0)|0;f=ub(40)|0;if(f){c[f+8>>2]=1;c[f+4>>2]=d;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[f+36>>2]=0;a=c[23844]|0;c[f+32>>2]=a;c[23844]=f;if(a|0)c[a+36>>2]=f;a=c[23840]|0;b=f+28|0;if(!a)c[b>>2]=0;else{rb[a&0](g,f,1);c[b>>2]=c[g>>2]}if(e|0){c[f>>2]=e;g=f;l=h;return g|0}}aa(2292);g=0;l=h;return g|0}function gc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;e=l;l=l+16|0;d=e;if((c[23845]|0)==(a|0))c[23845]=0;b=c[23843]|0;if(b|0?(c[a+8>>2]|0)==3:0){f=c[a+12>>2]|0?2748:2755;h=c[a+16>>2]|0;g=c[a+20>>2]|0;c[d>>2]=c[a+24>>2];qb[b&0](h,g,f,d)}b=c[23841]|0;if(b|0){h=a+28|0;c[d>>2]=c[h>>2];rb[b&0](a,1,d);c[h>>2]=0}g=a+36|0;b=c[g>>2]|0;h=a+32|0;d=c[h>>2]|0;c[g>>2]=0;c[h>>2]=0;c[(b|0?b+32|0:95376)>>2]=d;if(!d){xb(a);l=e;return}c[d+36>>2]=b;xb(a);l=e;return}function hc(a){a=a|0;var b=0,e=0,f=0,g=0,h=0,i=0;e=c[1879]|0;if(!((a|0)>-1&(e|0)>(a|0))){e=0;return e|0}g=c[1883]|0;c[1874]=g;f=c[31]|0;b=O(f,a)|0;a=c[1858]|0;b=(g<<4)+-2+f+b|0;b=(d[a+(b+1)>>0]|0)<<8|(d[a+b>>0]|0);c[1874]=c[1875];if(!b){g=0;return g|0}else a=0;while(1){a=a+1|0;if(!((b|0)>-1&(e|0)>(b|0))){b=5;break}i=c[1883]|0;c[1874]=i;h=c[31]|0;g=O(h,b)|0;f=c[1858]|0;g=(i<<4)+-4+h+g|0;b=(d[f+(g+1)>>0]|0)<<8|(d[f+g>>0]|0);c[1874]=c[1875];if(!b){b=5;break}}if((b|0)==5)return a|0;return 0}function ic(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0;e=l;l=l+16|0;d=e;if((c[23847]|0)==(a|0))c[23847]=0;if(b|0?(c[a+8>>2]|0)==1:0){b=c[a+16>>2]|0;if(b|0)ic(b,1);b=c[a+20>>2]|0;if(b|0)ic(b,1)}b=c[23841]|0;if(b|0){c[d>>2]=c[a+52>>2];rb[b&0](a,0,d)}b=a+24|0;d=c[b>>2]|0;if(d|0){gc(d);c[b>>2]=0}g=a+60|0;b=c[g>>2]|0;f=a+56|0;d=c[f>>2]|0;c[g>>2]=0;c[f>>2]=0;c[(b|0?b+56|0:95392)>>2]=d;if(!d){xb(a);l=e;return}c[d+60>>2]=b;xb(a);l=e;return}function jc(b){b=b|0;var e=0,f=0,g=0;f=b&65535;switch((b&65535)<<16>>16){case -16:{g=100148;return g|0}case -15:{g=98554;return g|0}case 0:{g=108195;return g|0}default:{b=c[1876]|0;e=b<<4;if((e+f|0)>(c[1878]|0)){c[22389]=108195;g=108195;return g|0}c[1874]=b;g=c[1858]|0;f=e+(f+2)|0;b=a[g+f>>0]|0;if(!(b<<24>>24))b=0;else{b=b&255;e=1;while(1){a[98829+(e+-1)>>0]=(d[g+(f+e)>>0]|0)+236;if((e|0)==(b|0))break;else e=e+1|0}}a[98829+b>>0]=0;c[22389]=98829;c[1874]=c[1875];g=98829;return g|0}}return 0}function kc(b,e,f){b=b|0;e=e|0;f=f|0;var g=0,h=0,i=0;if(!((b|0)>-1&(c[1879]|0)>(b|0))){h=0;return h|0}g=c[1883]|0;c[1874]=g;b=O(c[31]|0,b+1|0)|0;h=c[1858]|0;b=b+(g<<4)|0;b=(f|0)==0?(d[h+(b+1)>>0]|0)<<8|(d[h+b>>0]|0):f;g=c[1884]|0;c[1874]=g;g=g<<4;i=a[h+(g+b)>>0]|0;f=i<<24>>24==-1;e=e&255;if(!(f|i<<24>>24==e<<24>>24))do{i=a[h+(b+1+g)>>0]|0;b=(i<<24>>24==-1?4:((i&255)<<1)+2|0)+b|0;i=a[h+(g+b)>>0]|0;f=i<<24>>24==-1}while(!(f|i<<24>>24==e<<24>>24));c[1874]=c[1875];i=f?0:b;return i|0}function lc(b,d){b=b|0;d=d|0;var e=0,f=0,g=0;f=d&255;a:do if(!f)b=b+(Ic(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 mc(b,d){b=b|0;d=d|0;var e=0,f=0;f=0;e=d;a:do if(!((e^b)&3)){if(e&3)do{e=a[d>>0]|0;a[b>>0]=e;if(!(e<<24>>24))break a;d=d+1|0;b=b+1|0}while((d&3|0)!=0);e=c[d>>2]|0;if(!((e&-2139062144^-2139062144)&e+-16843009)){f=b;while(1){d=d+4|0;b=f+4|0;c[f>>2]=e;e=c[d>>2]|0;if((e&-2139062144^-2139062144)&e+-16843009|0)break;else f=b}}f=8}else f=8;while(0);if((f|0)==8){f=a[d>>0]|0;a[b>>0]=f;if(f<<24>>24)do{d=d+1|0;b=b+1|0;f=a[d>>0]|0;a[b>>0]=f}while(f<<24>>24!=0)}return b|0}function nc(a){a=a|0;c[1836]=c[23024];c[23024]=0;c[1837]=c[23025];c[23025]=0;c[1838]=c[23026];c[23026]=0;c[1839]=c[23027];c[23027]=0;c[1840]=c[23028];c[23028]=0;c[1841]=c[23029];c[23029]=0;c[1842]=c[23030];c[23030]=0;c[1843]=c[23031];c[23031]=0;c[1844]=c[23032];c[23032]=0;c[1845]=c[23033];c[23033]=0;c[1846]=c[23034];c[23034]=0;c[1847]=c[23035];c[23035]=0;c[1848]=c[23036];c[23036]=0;c[1849]=c[23037];c[23037]=0;c[1850]=c[23038];c[23038]=0;c[1851]=c[23039];c[23039]=0;c[23813]=a;return}function oc(){var a=0,b=0,d=0,e=0,f=0,g=0,h=0,i=0;h=l;l=l+16|0;g=h;a=c[23844]|0;if(!a){l=h;return}do{f=a+32|0;e=a;a=c[f>>2]|0;if((c[e+8>>2]|0)==1){if((c[23845]|0)==(e|0))c[23845]=0;b=c[23841]|0;if(!b)d=a;else{d=e+28|0;c[g>>2]=c[d>>2];rb[b&0](e,1,g);c[d>>2]=0;d=c[f>>2]|0}i=e+36|0;b=c[i>>2]|0;c[i>>2]=0;c[f>>2]=0;c[(b|0?b+32|0:95376)>>2]=d;if(d|0)c[d+36>>2]=b;xb(e)}}while((a|0)!=0);l=h;return}function pc(b){b=b|0;var d=0,e=0,f=0;c[23819]=108262;ze(108262,b)|0;d=c[23819]|0;b=Ic(d)|0;if(!b){f=d;return f|0}else{e=b;f=d}a:while(1){b=e+-1|0;switch(a[f+b>>0]|0){case 9:case 32:break;default:{b=f;d=6;break a}}c[23815]=108262;e=Ic(f)|0;b=(e|0)<(b|0)?e:b;if((b|0)>0){d=0;do{a[108262+d>>0]=a[f+d>>0]|0;d=d+1|0}while((d|0)<(b|0))}else b=0;a[108262+b>>0]=0;ze(f,108262)|0;b=c[23819]|0;e=Ic(b)|0;if(!e){d=6;break}else f=b}if((d|0)==6)return b|0;return 0}function qc(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;if(!a){aa(2762);l=h;return}f=a+28|0;if(c[f>>2]|0){aa(2794);l=h;return}if(((c[a+8>>2]|0)+-3|0)>>>0>=2)aa(2850);c[f>>2]=1;c[a+36>>2]=b;c[a+32>>2]=0;c[a+40>>2]=d;c[a+44>>2]=e;f=c[23842]|0;if(f|0){qb[f&0](g,b,d,2755);c[a+48>>2]=c[g>>2]}oa(c[a>>2]|0,b|0,d|0,e|0,0);l=h;return}function rc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;g=l;l=l+16|0;e=g;f=ub(40)|0;if(!f){f=0;l=g;return f|0}c[f+8>>2]=2;c[f+4>>2]=0;c[f+12>>2]=0;c[f+16>>2]=0;c[f+20>>2]=0;c[f+36>>2]=0;b=c[23844]|0;c[f+32>>2]=b;c[23844]=f;if(b|0)c[b+36>>2]=f;b=c[23840]|0;d=f+28|0;if(!b)c[d>>2]=0;else{rb[b&0](e,f,1);c[d>>2]=c[e>>2]}c[f>>2]=la(c[a>>2]|0)|0;l=g;return f|0}function sc(a,b){a=a|0;b=b|0;var d=0,e=0,f=0,g=0,h=0,i=0,j=0,k=0;j=l;l=l+16|0;f=j;d=a+28|0;if(!(c[d>>2]|0)){l=j;return}e=a+36|0;h=c[e>>2]|0;if(!h){l=j;return}k=a+40|0;i=c[k>>2]|0;g=c[a+32>>2]|0;zd(3,a,b,0);c[d>>2]=0;c[e>>2]=0;c[a+44>>2]=0;c[k>>2]=0;b=c[23843]|0;if(!b){l=j;return}c[f>>2]=c[a+48>>2];qb[b&0](h,i,g|0?2748:2755,f);l=j;return}function tc(a){a=a|0;var b=0,d=0;do if(!a){if(!(c[130]|0))b=0;else b=tc(c[130]|0)|0;a=c[(Ze()|0)>>2]|0;if(a)do{if((c[a+76>>2]|0)>-1)d=ef(a)|0;else d=0;if((c[a+20>>2]|0)>>>0>(c[a+28>>2]|0)>>>0)b=zc(a)|0|b;if(d|0)df(a);a=c[a+56>>2]|0}while((a|0)!=0);bf()}else{if((c[a+76>>2]|0)<=-1){b=zc(a)|0;break}d=(ef(a)|0)==0;b=zc(a)|0;if(!d)df(a)}while(0);return b|0}function uc(){var b=0,d=0,e=0,f=0;f=l;l=l+16|0;e=f;b=c[23821]|0;d=(b|0)==0;if(!(c[1864]|0)){if(d){l=f;return}}else if(d|(b|0)==(c[23820]|0)){l=f;return}La(b|0);if((c[23821]|0)==(c[23820]|0))c[23824]=c[36];b=c[23829]|0;if(b|0){Kb(b,e);c[23829]=0;e=c[23820]|0;c[23821]=e;Rd(e)}c[1859]=0;c[1860]=1;if(c[1864]|0){l=f;return}a[109287]=1;l=f;return}function vc(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;if(!(a[95992]|0))return;h=c[1867]|0;i=7592+(h*20|0)|0;c[i>>2]=b;c[i+4>>2]=d;c[i+8>>2]=e;c[i+12>>2]=f;c[i+16>>2]=g;g=h+1|0;g=(g|0)==4096?0:g;g=7592+(g*20|0)|0;c[g>>2]=0;c[g+4>>2]=0;c[1867]=h;g=(c[1868]|0)+1|0;c[1868]=g;if((g|0)==4096){c[1867]=0;c[1868]=4096;a[95991]=1;h=0}i=h+1|0;c[1867]=(i|0)==4096?0:i;return}function wc(b){b=b|0;var c=0,d=0,e=0,f=0,g=0,h=0;g=0;while(1){e=a[b>>0]|0;c=e<<24>>24;f=b+1|0;if(!(xe(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 xc(b){b=b|0;var d=0,e=0,f=0,g=0;f=c[22392]|0;if((f|0)<(b|0))return;e=(f|0)>(b|0);if(e){d=b;do{g=d;d=d+1|0;c[91908+(g<<2)>>2]=c[91908+(d<<2)>>2]}while((d|0)!=(f|0));c[91908+(f<<2)>>2]=108195;if(e)do{g=b;b=b+1|0;c[91768+(g<<2)>>2]=c[91768+(b<<2)>>2];a[100115+g>>0]=a[100115+b>>0]|0}while((b|0)!=(f|0))}else c[91908+(f<<2)>>2]=108195;c[91768+(f<<2)>>2]=0;a[100115+f>>0]=0;c[22392]=f+-1;return}function yc(a,b){a=a|0;b=b|0;switch(b<<24>>24|0){case 6:{a=(a<<16>>16)-(c[1595]|0)|0;break}case 7:{a=(c[1595]|0)+(a<<16>>16)|0;break}case 8:{a=O(c[1595]|0,a<<16>>16)|0;break}case 21:{a=c[1595]&a<<16>>16;break}case 10:{a=c[1595]|a<<16>>16;break}case 9:{a=(a<<16>>16|0)/(c[1595]|0)|0;break}default:{}}if(b<<24>>24==1){b=a<<16;b=b>>16;return b|0}c[1595]=0;b=a<<16;b=b>>16;return b|0}function zc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0,h=0;d=0;g=a+20|0;h=a+28|0;if((c[g>>2]|0)>>>0>(c[h>>2]|0)>>>0){pb[c[a+36>>2]&7](a,0,0)|0;if(!(c[g>>2]|0))b=-1;else d=3}else d=3;if((d|0)==3){b=a+4|0;d=c[b>>2]|0;e=a+8|0;f=c[e>>2]|0;if(d>>>0<f>>>0)pb[c[a+40>>2]&7](a,d-f|0,1)|0;c[a+16>>2]=0;c[h>>2]=0;c[g>>2]=0;c[e>>2]=0;c[b>>2]=0;b=0}return b|0}function Ac(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;f=h;g=ub(20)|0;if(!g){aa(2001);g=0;l=h;return g|0}c[g+4>>2]=d;c[g+16>>2]=0;e=c[23839]|0;c[g+12>>2]=e;c[23839]=g;if(e|0)c[e+16>>2]=g;e=c[23840]|0;if(e|0){rb[e&0](f,g,2);c[g+8>>2]=c[f>>2]}c[g>>2]=Xa(a|0,b|0,d|0)|0;l=h;return g|0}function Bc(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=Fd(d|0,e|0,52)|0;switch(f&2047){case 0:{if(a!=0.0){a=+Bc(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 Cc(a,b,e){a=a|0;b=b|0;e=e|0;var f=0,g=0,h=0;if(!((a|0)>-1&(c[1879]|0)>(a|0))){e=0;return e|0}g=c[1883]|0;c[1874]=g;h=(O(c[31]|0,a)|0)+(((b|0)/32|0)<<2|2)|0;f=c[1858]|0;a=g<<4;g=h+a|0;a=h+(a|2)|0;a=(d[f+(g+1)>>0]|0)<<8|(d[f+g>>0]|0)|((d[f+(a+1)>>0]|0)<<8|(d[f+a>>0]|0))<<16;c[1874]=c[1875];e=((e|0)!=0^(a&1<<(b&31)|0)!=0)&1;return e|0}function Dc(a){a=a|0;var b=0,d=0,e=0,f=0,g=0;e=l;l=l+16|0;b=e;if(!a){aa(1972);l=e;return}d=c[23841]|0;if(d|0){c[b>>2]=c[a+8>>2];rb[d&0](a,2,b)}g=a+16|0;b=c[g>>2]|0;f=a+12|0;d=c[f>>2]|0;c[g>>2]=0;c[f>>2]=0;c[(b|0?b+12|0:95356)>>2]=d;if(d|0)c[d+16>>2]=b;sa(c[a>>2]|0);xb(a);l=e;return}function Ec(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=td(b|0,c|0,10,0)|0;d=d+-1|0;a[d>>0]=e&255|48;e=b;b=$d(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 Fc(a,b){a=a|0;b=b|0;if((kb|0)!=2){c[lb+8>>2]=a;c[lb+16>>2]=b;if((kb|0)==1)kb=3}tb(nb+97996|0)}function Gc(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 Hc(b,e){b=b|0;e=e|0;var f=0,g=0;g=0;while(1){if((d[3443+g>>0]|0)==(b|0)){b=2;break}f=g+1|0;if((f|0)==87){f=3531;g=87;b=5;break}else g=f}if((b|0)==2)if(!g)f=3531;else{f=3531;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 Ae(f,c[e+20>>2]|0)|0}function Ic(b){b=b|0;var d=0,e=0,f=0;e=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 Jc(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){e=c-d|0;ec(f|0,b|0,(e>>>0<256?e:256)|0)|0;if(e>>>0>255){b=c-d|0;do{_d(a,f,256);e=e+-256|0}while(e>>>0>255);e=b&255}_d(a,f,e)}l=g;return}function Kc(a){a=a|0;var b=0,d=0,e=0,f=0;f=c[162]|0;if(!f)c[c[163]>>2]=a;else{c[164]=(f|0)==31|(f|0)==7?3:1;c[23871]=0;if((f|0)>0){b=c[163]|0;e=0;d=0;do{a=Qd(a,d)|0;d=z;c[b+(e<<2)>>2]=d;e=e+1|0}while((e|0)<(f|0))}else b=c[163]|0;c[b>>2]=c[b>>2]|1}return}function Lc(a){a=a|0;var b=0,e=0,f=0,g=0,h=0;if(!((a|0)>-1&(c[1879]|0)>(a|0))){h=0;return h|0}g=c[1883]|0;c[1874]=g;e=c[31]|0;f=c[1858]|0;g=g<<4;h=e+-6|0;while(1){b=h+(O(e,a)|0)+g|0;b=(d[f+(b+1)>>0]|0)<<8|(d[f+b>>0]|0);if(!b)break;else a=b}c[1874]=c[1875];h=a;return h|0}function Mc(){var b=0,c=0,d=0;c=0;b=0;do{d=b&255;a[109290+b>>0]=d;a[109546+b>>0]=d;b=b+1|0}while((b|0)!=256);b=0;do{if((b+-65|0)>>>0<26)c=5;else if(!((b+-192|0)>>>0>30|(b|0)==215))c=5;if((c|0)==5){c=0;d=b+32|0;a[109546+b>>0]=d;a[109290+d>>0]=b}b=b+1|0}while((b|0)!=256);return}function Nc(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((Vd(eb(140,g|0)|0)|0)<0){c[e>>2]=-1;a=-1}else a=c[e>>2]|0;l=f;return a|0}function Oc(b){b=b|0;var e=0,f=0,g=0,h=0;g=c[1858]|0;h=c[1874]<<4;e=a[g+(h+b)>>0]|0;if(!(e<<24>>24)){h=0;h=98829+h|0;a[h>>0]=0;return 98829}e=e&255;f=1;while(1){a[98829+(f+-1)>>0]=(d[g+(f+b+h)>>0]|0)+236;if((f|0)==(e|0))break;else f=f+1|0}h=98829+e|0;a[h>>0]=0;return 98829}function Pc(b,d,e){b=b|0;d=d|0;e=e|0;var f=0;c[23817]=108262;f=d+-1|0;d=Ic(b)|0;d=(f+e|0)>(d|0)?d-f|0:e;if((d|0)>0)e=0;else{b=0;b=108262+b|0;a[b>>0]=0;return 108262}do{a[108262+e>>0]=a[b+(e+f)>>0]|0;e=e+1|0}while((e|0)<(d|0));b=108262+d|0;a[b>>0]=0;return 108262}function Qc(b){b=b|0;var c=0,d=0,e=0,f=0;f=Ic(b)|0;if((f|0)>0){d=0;c=0}else{f=0;return f|0}do{e=a[b+d>>0]|0;switch(e<<24>>24){case 2:{d=d+2|0;break}case 1:{d=d+1|0;break}default:c=((e&255)>30&1)+c|0}d=d+1|0}while((d|0)<(f|0));return c|0}function Rc(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 Sc(b){b=b|0;c[23825]=b;_a(0);if(b&1|0)_a(4);if(b&4|0)_a(1);if(b&2|0)_a(1);if(b&8|0){a[109289]=1;return}if((a[109289]|0)==0|((c[1860]|0)!=1?1:(c[1859]|c[1864]|0)!=0))return;a[109287]=0;Xb(1,2);Ca(c[23821]|0,0,0);return}function Tc(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]=4;if(!(c[b>>2]&64)){c[f>>2]=c[b+60>>2];c[f+4>>2]=21523;c[f+8>>2]=g+16;if(za(54,f|0)|0)a[b+75>>0]=-1}f=Ob(b,d,e)|0;l=g;return f|0}function Uc(b,d){b=b|0;d=d|0;var e=0;c[23818]=108262;e=Ic(b)|0;d=(e|0)<(d|0)?e:d;if((d|0)>0)e=0;else{b=0;b=108262+b|0;a[b>>0]=0;return 108262}do{a[108262+e>>0]=a[b+(e-d+(Ic(b)|0))>>0]|0;e=e+1|0}while((e|0)<(d|0));b=108262+d|0;a[b>>0]=0;return 108262}function Vc(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;ib(12);return -1}c[i>>2]=a;if((a|0)>(V()|0))if(!(U()|0)){c[i>>2]=b;ib(12);return -1}return b|0}function Wc(b){b=b|0;var d=0,e=0;e=0;d=a[788]|0;a:while(1)switch(b|0){case 20:{b=d;break}case 16:{b=0;break a}case 18:case 17:{e=3;break a}case 19:{e=4;break a}default:{e=5;break a}}if((e|0)==3)b=15;else if((e|0)==4)b=1;c[23823]=b;return}function Xc(b){b=b|0;var d=0,e=0;e=0;d=a[788]|0;a:while(1)switch(b|0){case 20:{b=d;break}case 16:{b=0;break a}case 18:case 17:{e=3;break a}case 19:{e=4;break a}default:{e=5;break a}}if((e|0)==3)b=15;else if((e|0)==4)b=1;c[36]=b;return}function Yc(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 Zc(b){b=b|0;if(!(c[23821]|0))return;switch(a[b>>0]|0){case 10:if(!(a[109288]|0)){da(1966);return}else{a[109288]=0;return}case 13:{if(!(a[109288]|0)){da(1966);b=1}else b=0;break}default:{da(b|0);b=0}}a[109288]=b;return}function _c(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 $c(a){a=a|0;var b=0,e=0,f=0;if(!((a|0)>-1&(c[1879]|0)>(a|0))){a=0;return a|0}f=c[1883]|0;c[1874]=f;e=c[31]|0;a=O(e,a)|0;b=c[1858]|0;a=(f<<4)+-4+e+a|0;a=(d[b+(a+1)>>0]|0)<<8|(d[b+a>>0]|0);c[1874]=c[1875];return a|0}function ad(a){a=a|0;var b=0,e=0,f=0;if(!((a|0)>-1&(c[1879]|0)>(a|0))){a=0;return a|0}f=c[1883]|0;c[1874]=f;e=c[31]|0;a=O(e,a)|0;b=c[1858]|0;a=(f<<4)+-6+e+a|0;a=(d[b+(a+1)>>0]|0)<<8|(d[b+a>>0]|0);c[1874]=c[1875];return a|0}function bd(a){a=a|0;var b=0,e=0,f=0;if(!((a|0)>-1&(c[1879]|0)>(a|0))){a=0;return a|0}f=c[1883]|0;c[1874]=f;e=c[31]|0;a=O(e,a)|0;b=c[1858]|0;a=(f<<4)+-2+e+a|0;a=(d[b+(a+1)>>0]|0)<<8|(d[b+a>>0]|0);c[1874]=c[1875];return a|0}function cd(b){b=b|0;var c=0,d=0,e=0;e=Ic(b)|0;if((e|0)>0){d=0;c=0}else{e=0;return e|0}do{switch(a[b+d>>0]|0){case 2:{d=d+2|0;break}case 1:{d=d+1|0;break}default:c=c+1|0}d=d+1|0}while((d|0)<(e|0));return c|0}function dd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0,g=0;if((a|0)==-1){c[23023]=0;f=0}else{g=c[23023]|0;a=g+1|0;c[23023]=a;if((g|0)>254)Eb(1);else f=a}g=92160+(f*12|0)|0;c[g>>2]=b;c[g+4>>2]=d;c[g+8>>2]=e;return}function ed(){ue();Nb(1,1,(c[22378]|0)/(c[22379]|0)|0,(c[22380]|0)/(c[1896]|0)|0);c[23809]=1;c[23810]=1;c[23811]=(c[22378]|0)/(c[22379]|0)|0;c[23812]=(c[22380]|0)/(c[1896]|0)|0;Wc(16);Xc(17);gd();return}function fd(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 gd(){var b=0;La(c[23820]|0);b=c[23826]|0;if(b|0)La(b|0);b=c[23829]|0;if(b|0)La(b|0);if((c[23821]|0)==(c[23820]|0))c[23824]=c[36];c[1859]=0;c[1860]=1;if(c[1864]|0)return;a[109287]=1;return}function hd(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 Mb(b,c,d)|0;return b|0}function id(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 jd(a){a=a|0;c[1873]=a;c[23019]=(c[23020]|0)==-2&1;a=c[23023]|0;a:do if(a|0)do{if((c[92160+(a*12|0)>>2]|0)==1)break a;a=a+-1|0;c[23023]=a}while((a|0)!=0);while(0);c[23020]=0;c[23021]=0;return}function kd(b,d){b=b|0;d=d|0;var e=0;c[23815]=108262;e=Ic(b)|0;d=(e|0)<(d|0)?e:d;if((d|0)>0){e=0;do{a[108262+e>>0]=a[b+e>>0]|0;e=e+1|0}while((e|0)<(d|0))}else d=0;a[108262+d>>0]=0;return 108262}function ld(a){a=a|0;var b=0;b=c[23828]|0;if(!b){b=Ue()|0;if(!b)b=Db(0,0,0,3,0)|0;else b=Db(b,19,3,3,0)|0;c[23828]=b;if(!b)return}fa(Kd(b)|0,a|0);return}function md(){var a=0;a=c[23826]|0;do if(!a){a=c[23829]|0;if(!a){ga(c[23820]|0,95320,0);break}else{ga(a|0,95320,0);break}}else ga(a|0,95320,0);while(0);return (c[23830]|0)+-1|0}function nd(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 od(a){a=a|0;var b=0;b=c[23848]|0;if(!b){a=0;return a|0}while(1){if((c[b>>2]|0)==(a|0)){a=4;break}b=c[b+56>>2]|0;if(!b){b=0;a=4;break}}if((a|0)==4)return b|0;return 0}function pd(){var a=0,b=0,d=0;b=5336;b=vd(c[b>>2]|0,c[b+4>>2]|0,1284865837,1481765933)|0;b=Id(b|0,z|0,1,0)|0;a=z;d=5336;c[d>>2]=b;c[d+4>>2]=a;a=Fd(b|0,a|0,33)|0;return a|0}function qd(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[3425+(b&15)>>0]|0|f;b=Fd(b|0,c|0,4)|0;c=z}while(!((b|0)==0&(c|0)==0));return e|0}function rd(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;Mb(f|0,b|0,a|0)|0;c[e>>2]=(c[e>>2]|0)+a;return d|0}function sd(){var a=0;a=c[23826]|0;if(!a){a=c[23829]|0;if(a|0)ga(a|0,0,95324)}else ga(a|0,0,95324);ga(c[23820]|0,0,95328);return (c[23832]|0)+(c[23831]|0)|0}function td(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;Cb(a,b,d,e,f)|0;l=g;return (z=c[f+4>>2]|0,c[f>>2]|0)|0}function ud(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=Fd(b|0,c|0,3)|0;c=z}while(!((b|0)==0&(c|0)==0));return d|0}function vd(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=fd(e,f)|0;a=z;return (z=(O(b,f)|0)+(O(d,e)|0)+a|a&0,c|0|0)|0}function wd(b){b=b|0;var c=0,d=0;c=a[b>>0]|0;if(c<<24>>24){d=b;do{a[d>>0]=me(c<<24>>24)|0;d=d+1|0;c=a[d>>0]|0}while(c<<24>>24!=0)}return b|0}function xd(b){b=b|0;var c=0,d=0;c=a[b>>0]|0;if(c<<24>>24){d=b;do{a[d>>0]=ne(c<<24>>24)|0;d=d+1|0;c=a[d>>0]|0}while(c<<24>>24!=0)}return b|0}function yd(b){b=b|0;c[23816]=108262;ze(108262,b)|0;a:while(1){b=c[23816]|0;switch(a[108262]|0){case 9:case 32:break;default:break a}ze(b,b+1|0)|0}return b|0}function zd(a,b,d,e){a=a|0;b=b|0;d=d|0;e=e|0;var f=0;f=c[23836]|0;if(!f)return;c[f>>2]=a;c[f+4>>2]=b;c[f+8>>2]=d;c[f+12>>2]=e;return}function Ad(a){a=a|0;var b=0,d=0;b=l;l=l+16|0;d=b;c[d>>2]=af(c[a+60>>2]|0)|0;a=Vd($a(6,d|0)|0)|0;l=b;return a|0}function Bd(b,c,d){b=b|0;c=c|0;d=d|0;var e=0;e=c&255;do{if(!d){c=0;break}d=d+-1|0;c=b+d|0}while((a[c>>0]|0)!=e<<24>>24);return c|0}function Cd(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=fe(a,b,f)|0;l=e;return d|0}function Dd(a,b){a=a|0;b=b|0;var d=0,e=0;d=l;l=l+16|0;e=d;c[e>>2]=b;b=Qb(c[98]|0,a,e)|0;l=d;return b|0}function Ed(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 Fd(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 Gd(a,b,d){a=a|0;b=b|0;d=d|0;var e=0;d=l;l=l+16|0;e=d;c[e>>2]=a;Cd(b,1963,e)|0;l=d;return b|0}function Hd(){}function Id(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 Jd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;d=b-d|0;d=(d|0)-(c>>>0>a>>>0|0)>>>0;return (z=d,a-c>>>0|0)|0}function Kd(a){a=a|0;if(!a){aa(2717);a=0;return a|0}else{a=c[a+24>>2]|0;return a|0}return 0}function Ld(a){a=a|0;if(!a){aa(2686);a=0;return a|0}else{a=c[a+12>>2]|0;return a|0}return 0}function Md(a,b){a=a|0;b=b|0;if(!b)b=0;else b=Sb(c[b>>2]|0,c[b+4>>2]|0,a)|0;return (b|0?b:a)|0}function Nd(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 Od(){Mc();re();Ge();if(!(c[23833]|0))return;Xd(1);return}function Pd(a,b,c,d,e){a=a|0;b=b|0;c=c|0;d=d|0;e=e|0;qb[a&0](b|0,c|0,d|0,e|0)}function Qd(a,b){a=a|0;b=b|0;b=vd(a|0,b|0,1284865837,1481765933)|0;b=Id(b|0,z|0,1,0)|0;return b|0}function Rd(a){a=a|0;if(!a){be(0);return}else{be(c[a+24>>2]|0);return}}function Sd(){c[22378]=32767;c[22380]=32767;c[22379]=1;c[1896]=1;Nb(1,1,32767,32767);return}function Td(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return pb[a&7](b|0,c|0,d|0)|0}function Ud(a){a=a|0;if(!(pe(5,0)|0))return;c[23834]=a;cb(95348,0)|0;return}function Vd(a){a=a|0;if(a>>>0>4294963200){c[(Le()|0)>>2]=0-a;a=-1}return a|0}function Wd(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;rb[a&0](b|0,c|0,d|0)}function Xd(a){a=a|0;var b=0;b=c[23849]|0;if(!b)return;sb[b&0](a);return}function Yd(a){a=a|0;var b=0;b=l;l=l+a|0;l=l+15&-16;return b|0}function Zd(a,b){a=a|0;b=b|0;var c=0;c=ae(a|0)|0;return ((b|0)==0?a:c)|0}function _d(a,b,d){a=a|0;b=b|0;d=d|0;if(!(c[a>>2]&32))ac(b,d,a)|0;return}function $d(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return Cb(a,b,c,d,0)|0}function ae(a){a=a|0;return (a&255)<<24|(a>>8&255)<<16|(a>>16&255)<<8|a>>>24|0}function be(a){a=a|0;c[23845]=a;ja(c[a>>2]|0);return}function ce(){oc();if(c[23833]|0)Xd(2);Ia(0);Ua(0)}function de(a,b){a=a|0;b=b|0;if(!a)a=0;else a=bc(a,b,0)|0;return a|0}function ee(a){a=a|0;var b=0;b=5336;c[b>>2]=a+-1;c[b+4>>2]=0;return}function fe(a,b,c){a=a|0;b=b|0;c=c|0;return dc(a,2147483647,b,c)|0}function ge(a){a=a|0;return Hc(a,c[(Re()|0)+188>>2]|0)|0}function he(a,b,c){a=a|0;b=b|0;c=c|0;_b(a,0);return 1}function ie(a,b,c){a=a|0;b=b|0;c=c|0;Ub(a,b,c)|0;return a|0}function je(a,b,c){a=a|0;b=b|0;c=c|0;_b(a,0);return 1}function ke(a,b){a=a|0;b=b|0;ze(a+(Ic(a)|0)|0,b)|0;return a|0}function le(a,b){a=a|0;b=b|0;if(!o){o=a;p=b}}function me(a){a=a|0;var b=0;b=(Ke(a)|0)==0;return (b?a:a&95)|0}function ne(a){a=a|0;var b=0;b=(Je(a)|0)==0;return (b?a:a|32)|0}function oe(a,b){a=a|0;b=b|0;return Bd(a,b,(Ic(a)|0)+1|0)|0}function pe(a,b){a=a|0;b=b|0;return va(a|0,b|0,0,0)|0}function qe(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;return}function re(){we(bb(0)|0);c[23846]=0;c[23847]=0;return}function se(a,b){a=a|0;b=b|0;_b(a,0);return 1}function te(a,b){a=a|0;b=b|0;return ob[a&1](b|0)|0}function ue(){c[22384]=c[22379];c[1869]=c[1896];return}function ve(a,b){a=a|0;b=b|0;l=a;m=b}function we(a){a=a|0;ba(95476);Kc(a);Qa(95476);return}function xe(a){a=a|0;return ((a|0)==32|(a+-9|0)>>>0<5)&1|0}function ye(a,b,c,d){a=a|0;b=b|0;c=c|0;d=d|0;S(2)}function ze(a,b){a=a|0;b=b|0;mc(a,b)|0;return a|0}function Ae(a,b){a=a|0;b=b|0;return Md(a,b)|0}function Be(a,b){a=a|0;b=b|0;sb[a&0](b|0)}function Ce(b){b=b|0;return a[109290+(b&255)>>0]|0}function De(b){b=b|0;return a[109546+(b&255)>>0]|0}function Ee(a,b,c){a=a|0;b=b|0;c=c|0;S(1);return 0}function Fe(){c[6384+(c[12]<<2)>>2]=-1;return 0}function Ge(){c[23834]=0;c[23835]=0;return}function He(a,b){a=+a;b=b|0;return +(+Bc(a,b))}function Ie(a,b,c){a=a|0;b=b|0;c=c|0;S(3)}function Je(a){a=a|0;return (a+-65|0)>>>0<26|0}function Ke(a){a=a|0;return (a+-97|0)>>>0<26|0}function Le(){return (Se()|0)+64|0}function Me(a){a=a|0;return (a&255)>30|0}function Ne(a){a=a|0;return ub(a)|0}function Oe(a){a=a|0;xb(a);return}function Pe(a){a=a|0;lb=a}function Qe(){return mf()|0}function Re(){return mf()|0}function Se(){return mf()|0}function Te(a){a=a|0;kb=a}function Ue(){return c[23846]|0}function Ve(a){a=a|0;l=a}function We(a){a=a|0;z=a}function Xe(a){a=a|0;return}function Ye(a){a=a|0;return}function Ze(){ba(95464);return 95472}function _e(a){a=a|0;return}function $e(){return 95400}function af(a){a=a|0;return a|0}function bf(){Qa(95464);return}function cf(a){a=a|0;S(0);return 0}function df(a){a=a|0;return}function ef(a){a=a|0;return 0}function ff(){return lb|0}function gf(){return z|0}function hf(){return l|0}function jf(a){a=a|0;S(4)}function kf(){return}function lf(){return 0}function mf(){return 148}function nf(){return}function of(){return}function pf(){return}function qf(){return 0}

// EMSCRIPTEN_END_FUNCS
var ob=[cf,Ad];var pb=[Ee,Tc,Nc,rd,Ob,Ee,Ee,Ee];var qb=[ye];var rb=[Ie];var sb=[jf];return{stackSave:hf,getTempRet0:gf,_llvm_cttz_i32:id,setThrew:le,_bitshift64Lshr:Fd,_bitshift64Shl:Ed,_fflush:tc,_emhugoen:Fc,_memset:ec,_sbrk:Vc,_memcpy:Mb,_llvm_bswap_i32:ae,___muldi3:vd,___uremdi3:td,stackAlloc:Yd,_i64Subtract:Jd,___udivmoddi4:Cb,setTempRet0:We,_i64Add:Id,_emscripten_get_global_libc:$e,___udivdi3:$d,___errno_location:Le,___muldsi3:fd,_free:xb,runPostSets:Hd,establishStackSpace:ve,_memmove:hd,stackRestore:Ve,_malloc:ub,stackAlloc:Yd,stackSave:hf,stackRestore:Ve,establishStackSpace:ve,setThrew:le,setTempRet0:We,getTempRet0:gf,emterpret:tb,setAsyncState:Te,emtStackSave:ff,emtStackRestore:Pe,dynCall_ii:te,dynCall_iiii:Td,dynCall_viiii:Pd,dynCall_viii:Wd,dynCall_vi:Be}})


// EMSCRIPTEN_END_ASM
(Module.asmGlobalArg,Module.asmLibraryArg,buffer);var stackSave=Module["stackSave"]=asm["stackSave"];var getTempRet0=Module["getTempRet0"]=asm["getTempRet0"];var _llvm_cttz_i32=Module["_llvm_cttz_i32"]=asm["_llvm_cttz_i32"];var setThrew=Module["setThrew"]=asm["setThrew"];var _bitshift64Lshr=Module["_bitshift64Lshr"]=asm["_bitshift64Lshr"];var _bitshift64Shl=Module["_bitshift64Shl"]=asm["_bitshift64Shl"];var _fflush=Module["_fflush"]=asm["_fflush"];var _emhugoen=Module["_emhugoen"]=asm["_emhugoen"];var _memset=Module["_memset"]=asm["_memset"];var _sbrk=Module["_sbrk"]=asm["_sbrk"];var _memcpy=Module["_memcpy"]=asm["_memcpy"];var _llvm_bswap_i32=Module["_llvm_bswap_i32"]=asm["_llvm_bswap_i32"];var ___muldi3=Module["___muldi3"]=asm["___muldi3"];var ___uremdi3=Module["___uremdi3"]=asm["___uremdi3"];var stackAlloc=Module["stackAlloc"]=asm["stackAlloc"];var _i64Subtract=Module["_i64Subtract"]=asm["_i64Subtract"];var ___udivmoddi4=Module["___udivmoddi4"]=asm["___udivmoddi4"];var setTempRet0=Module["setTempRet0"]=asm["setTempRet0"];var _i64Add=Module["_i64Add"]=asm["_i64Add"];var _emscripten_get_global_libc=Module["_emscripten_get_global_libc"]=asm["_emscripten_get_global_libc"];var ___udivdi3=Module["___udivdi3"]=asm["___udivdi3"];var ___errno_location=Module["___errno_location"]=asm["___errno_location"];var ___muldsi3=Module["___muldsi3"]=asm["___muldsi3"];var _free=Module["_free"]=asm["_free"];var runPostSets=Module["runPostSets"]=asm["runPostSets"];var establishStackSpace=Module["establishStackSpace"]=asm["establishStackSpace"];var _memmove=Module["_memmove"]=asm["_memmove"];var stackRestore=Module["stackRestore"]=asm["stackRestore"];var _malloc=Module["_malloc"]=asm["_malloc"];var dynCall_ii=Module["dynCall_ii"]=asm["dynCall_ii"];var dynCall_iiii=Module["dynCall_iiii"]=asm["dynCall_iiii"];var dynCall_viiii=Module["dynCall_viiii"]=asm["dynCall_viiii"];var dynCall_viii=Module["dynCall_viii"]=asm["dynCall_viii"];var dynCall_vi=Module["dynCall_vi"]=asm["dynCall_vi"];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}))}if(Module["memoryInitializerRequest"]){function useRequest(){var request=Module["memoryInitializerRequest"];if(request.status!==200&&request.status!==0){console.warn("a problem seems to have happened with Module.memoryInitializerRequest, status: "+request.status+", retrying "+memoryInitializer);doBrowserLoad();return}applyMemoryInitializer(request.response)}if(Module["memoryInitializerRequest"].response){setTimeout(useRequest,0)}else{Module["memoryInitializerRequest"].addEventListener("load",useRequest)}}else{doBrowserLoad()}}}Module["then"]=(function(func){if(Module["calledRun"]){func(Module)}else{var old=Module["onRuntimeInitialized"];Module["onRuntimeInitialized"]=(function(){if(old)old();func(Module)})}return Module});function ExitStatus(status){this.name="ExitStatus";this.message="Program terminated with exit("+status+")";this.status=status}ExitStatus.prototype=new Error;ExitStatus.prototype.constructor=ExitStatus;var initialStackTop;var preloadStartTime=null;var calledMain=false;dependenciesFulfilled=function runCaller(){if(!Module["calledRun"])run();if(!Module["calledRun"])dependenciesFulfilled=runCaller};Module["callMain"]=Module.callMain=function callMain(args){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);var initialEmtStackTop=Module["asm"].emtStackSave();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;Module["asm"].emtStackRestore(initialEmtStackTop);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"]=Module.run=run;function exit(status,implicit){if(implicit&&Module["noExitRuntime"]){return}if(Module["noExitRuntime"]){}else{ABORT=true;EXITSTATUS=status;STACKTOP=initialStackTop;exitRuntime();if(Module["onExit"])Module["onExit"](status)}if(ENVIRONMENT_IS_NODE){process["exit"](status)}Module["quit"](status,new ExitStatus(status))}Module["exit"]=Module.exit=exit;var abortDecorators=[];function abort(what){if(what!==undefined){Module.print(what);Module.printErr(what);what=JSON.stringify(what)}else{what=""}ABORT=true;EXITSTATUS=1;var extra="\nIf this abort() is unexpected, build with -s ASSERTIONS=1 which can give more information.";var output="abort("+what+") at "+stackTrace()+extra;if(abortDecorators){abortDecorators.forEach((function(decorator){output=decorator(output,what)}))}throw output}Module["abort"]=Module.abort=abort;if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}var shouldRunNow=true;if(Module["noInitialRun"]){shouldRunNow=false}run()





  return Module;
};
if (typeof module === "object" && module.exports) {
  module['exports'] = Module;
};

},{"fs":undefined,"path":undefined}],3:[function(require,module,exports){
/*

Emglken port of Hugo
===================

Copyright (c) 2017 Dannii Willis
MIT licenced
https://github.com/curiousdannii/emglken

*/

const EmglkenVM = require( '../../emglken/emglken_vm.js' )

class Hugo extends EmglkenVM
{

	default_options()
	{
		return {
			dirname: __dirname,
			emptfile: 'hugo-core.js.bin',
			module: require( './hugo-core.js' ),
		}
	}
	
	start()
	{
		this.vm.ccall(
			'emhugoen',
			null,
			[ 'array', 'number' ],
			[ this.data, this.data.length ],
			{ async: true }
		)
		delete this.data
	}

}

module.exports = Hugo
},{"../../emglken/emglken_vm.js":1,"./hugo-core.js":2}]},{},[3])(3)
});