varModule=typeofModule!="undefined"?Module:{};varmoduleOverrides=Object.assign({},Module);vararguments_=[];varthisProgram="./this.program";varquit_=(status,toThrow)=>{throwtoThrow};varENVIRONMENT_IS_WEB=typeofwindow=="object";varENVIRONMENT_IS_WORKER=typeofimportScripts=="function";varENVIRONMENT_IS_NODE=typeofprocess=="object"&&typeofprocess.versions=="object"&&typeofprocess.versions.node=="string";varscriptDirectory="";functionlocateFile(path){if(Module["locateFile"]){returnModule["locateFile"](path,scriptDirectory)}returnscriptDirectory+path}varread_,readAsync,readBinary,setWindowTitle;functionlogExceptionOnExit(e){if(einstanceofExitStatus)return;lettoLog=e;err("exiting due to exception: "+toLog)}varfs;varnodePath;varrequireNodeFS;if(ENVIRONMENT_IS_NODE){if(ENVIRONMENT_IS_WORKER){scriptDirectory=require("path").dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}requireNodeFS=(()=>{if(!nodePath){fs=require("fs");nodePath=require("path")}});read_=functionshell_read(filename,binary){requireNodeFS();filename=nodePath["normalize"](filename);returnfs.readFileSync(filename,binary?undefined:"utf8")};readBinary=(filename=>{varret=read_(filename,true);if(!ret.buffer){ret=newUint8Array(ret)}returnret});readAsync=((filename,onload,onerror)=>{requireNodeFS();filename=nodePath["normalize"](filename);fs.readFile(filename,function(err,data){if(err)onerror(err);elseonload(data.buffer)})});if(process["argv"].length>1){thisProgram=process["argv"][1].replace(/\\/g,"/")}arguments_=process["argv"].slice(2);if(typeofmodule!="undefined"){module["exports"]=Module}process["on"]("uncaughtException",function(ex){if(!(exinstanceofExitStatus)){throwex}});process["on"]("unhandledRejection",function(reason){throwreason});quit_=((status,toThrow)=>{if(keepRuntimeAlive()){process["exitCode"]=status;throwtoThrow}logExceptionOnExit(toThrow);process["exit"](status)});Module["inspect"]=function(){return"[Emscripten Module object]"}}elseif(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}elseif(typeofdocument!="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}else{scriptDirectory=""}{read_=(url=>{varxhr=newXMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);returnxhr.responseText});if(ENVIRONMENT_IS_WORKER){readBinary=(url=>{varxhr=newXMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);returnnewUint8Array(xhr.response)})}readAsync=((url,onload,onerror)=>{varxhr=newXMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=(()=>{if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()});xhr.onerror=onerror;xhr.send(null)})}setWindowTitle=(title=>document.title=title)}else{}varout=Module["print"]||console.log.bind(console);varerr=Module["printErr"]||console.warn.bind(console);Object.assign(Module,moduleOverrides);moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];varwasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];varnoExitRuntime=Module["noExitRuntime"]||true;if(typeofWebAssembly!="object"){abort("no native wasm support detected")}varwasmMemory;varABORT=false;varEXITSTATUS;varUTF8Decoder=typeofTextDecoder!="undefined"?newTextDecoder("utf8"):undefined;functionUTF8ArrayToString(heapOrArray,idx,maxBytesToRead){varendIdx=idx+maxBytesToRead;varendPtr=idx;while(heapOrArray[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&heapOrArray.buffer&&UTF8Decoder){returnUTF8Decoder.decode(heapOrArray.subarray(idx,endPtr))}else{varstr="";while(idx<endPtr){varu0=heapOrArray[idx++];if(!(u0&128)){str+=String.fromCharCode(u0);continue}varu1=heapOrArray[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}varu2=heapOrArray