varModule=typeofModule!=="undefined"?Module:{};varIDHandler=function(){varids={};varsize=0;this.has=function(id){returnids.hasOwnProperty(id)};this.add=function(obj){size+=1;varid=crypto.getRandomValues(newInt32Array(32))[0];ids[id]=obj;returnid};this.get=function(id){returnids[id]};this.remove=function(id){size-=1;deleteids[id]};this.size=function(){returnsize};this.ids=ids};Module.IDHandler=newIDHandler;varmoduleOverrides={};varkey;for(keyinModule){if(Module.hasOwnProperty(key)){moduleOverrides[key]=Module[key]}}vararguments_=[];varthisProgram="./this.program";varquit_=function(status,toThrow){throwtoThrow};varENVIRONMENT_IS_WEB=true;varENVIRONMENT_IS_WORKER=false;varENVIRONMENT_IS_NODE=false;varscriptDirectory="";functionlocateFile(path){if(Module["locateFile"]){returnModule["locateFile"](path,scriptDirectory)}returnscriptDirectory+path}varread_,readAsync,readBinary,setWindowTitle;if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}elseif(document.currentScript){scriptDirectory=document.currentScript.src}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.lastIndexOf("/")+1)}else{scriptDirectory=""}{read_=functionshell_read(url){varxhr=newXMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);returnxhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=functionreadBinary(url){varxhr=newXMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);returnnewUint8Array(xhr.response)}}readAsync=functionreadAsync(url,onload,onerror){varxhr=newXMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=functionxhr_onload(){if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}setWindowTitle=function(title){document.title=title}}else{}varout=Module["print"]||console.log.bind(console);varerr=Module["printErr"]||console.warn.bind(console);for(keyinmoduleOverrides){if(moduleOverrides.hasOwnProperty(key)){Module[key]=moduleOverrides[key]}}moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];varSTACK_ALIGN=16;functionalignMemory(size,factor){if(!factor)factor=STACK_ALIGN;returnMath.ceil(size/factor)*factor}functionwarnOnce(text){if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;err(text)}}vartempRet0=0;varsetTempRet0=function(value){tempRet0=value};vargetTempRet0=function(){returntempRet0};varwasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];varnoExitRuntime;if(Module["noExitRuntime"])noExitRuntime=Module["noExitRuntime"];if(typeofWebAssembly!=="object"){abort("no native wasm support detected")}functionsetValue(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)}}functiongetValue(ptr,type,noSafe){type=type||"i8";if(type.charAt(type.length-1)==="*")type="i32";switch(type){case"i1":returnHEAP8[ptr>>0];case"i8":returnHEAP8[ptr>>0];case"i16":returnHEAP16[ptr>>1];case"i32":returnHEAP32[ptr>>2];case"i64":returnHEAP32[ptr>>2];case"float":returnHEAPF32[ptr>>2];case"double":returnHEAPF64[ptr>>3];default:abort("invalid type for getValue: "+type)}returnnull}varwasmMemory;varwasmTable=newWebAssembly.Table({"initial":26015,"maximum":26015+0,"element":"anyfunc"});varABORT=false;varEXITSTATUS=0;functio