From ca6a6ff30a8c8ca6fab30ffa4edaf72b8102add1 Mon Sep 17 00:00:00 2001 From: MeGaL0DoN <62940883+MeGaL0DoN@users.noreply.github.com> Date: Sun, 24 Nov 2024 03:14:07 -0800 Subject: [PATCH] Add files via upload --- MegaBoy.js | 2 +- MegaBoy.wasm | Bin 974035 -> 992288 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/MegaBoy.js b/MegaBoy.js index c1218eb..676006f 100644 --- a/MegaBoy.js +++ b/MegaBoy.js @@ -1 +1 @@ -var Module=typeof Module!="undefined"?Module:{};var ENVIRONMENT_IS_WEB=typeof window=="object";var ENVIRONMENT_IS_WORKER=typeof importScripts=="function";var ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string";if(ENVIRONMENT_IS_NODE){}var moduleOverrides=Object.assign({},Module);var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var readAsync,readBinary;if(ENVIRONMENT_IS_NODE){var fs=require("fs");var nodePath=require("path");scriptDirectory=__dirname+"/";readBinary=filename=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);var ret=fs.readFileSync(filename);return ret};readAsync=(filename,binary=true)=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);return new Promise((resolve,reject)=>{fs.readFile(filename,binary?undefined:"utf8",(err,data)=>{if(err)reject(err);else resolve(binary?data.buffer:data)})})};if(!Module["thisProgram"]&&process.argv.length>1){thisProgram=process.argv[1].replace(/\\/g,"/")}arguments_=process.argv.slice(2);if(typeof module!="undefined"){module["exports"]=Module}process.on("uncaughtException",ex=>{if(ex!=="unwind"&&!(ex instanceof ExitStatus)&&!(ex.context instanceof ExitStatus)){throw ex}});quit_=(status,toThrow)=>{process.exitCode=status;throw toThrow}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(scriptDirectory.startsWith("blob:")){scriptDirectory=""}else{scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}{if(ENVIRONMENT_IS_WORKER){readBinary=url=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=url=>{if(isFileURI(url)){return new Promise((reject,resolve)=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=()=>{if(xhr.status==200||xhr.status==0&&xhr.response){resolve(xhr.response)}reject(xhr.status)};xhr.onerror=reject;xhr.send(null)})}return fetch(url,{credentials:"same-origin"}).then(response=>{if(response.ok){return response.arrayBuffer()}return Promise.reject(new Error(response.status+" : "+response.url))})}}}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.error.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"];var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];var wasmMemory;var ABORT=false;var EXITSTATUS;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateMemoryViews(){var b=wasmMemory.buffer;Module["HEAP8"]=HEAP8=new Int8Array(b);Module["HEAP16"]=HEAP16=new Int16Array(b);Module["HEAPU8"]=HEAPU8=new Uint8Array(b);Module["HEAPU16"]=HEAPU16=new Uint16Array(b);Module["HEAP32"]=HEAP32=new Int32Array(b);Module["HEAPU32"]=HEAPU32=new Uint32Array(b);Module["HEAPF32"]=HEAPF32=new Float32Array(b);Module["HEAPF64"]=HEAPF64=new Float64Array(b)}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;if(!Module["noFSInit"]&&!FS.init.initialized)FS.init();FS.ignorePermissions=false;TTY.init();callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;Module["monitorRunDependencies"]?.(runDependencies)}function removeRunDependency(id){runDependencies--;Module["monitorRunDependencies"]?.(runDependencies);if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}function abort(what){Module["onAbort"]?.(what);what="Aborted("+what+")";err(what);ABORT=true;EXITSTATUS=1;what+=". Build with -sASSERTIONS for more info.";var e=new WebAssembly.RuntimeError(what);throw e}var dataURIPrefix="data:application/octet-stream;base64,";var isDataURI=filename=>filename.startsWith(dataURIPrefix);var isFileURI=filename=>filename.startsWith("file://");function findWasmBinary(){var f="MegaBoy.wasm";if(!isDataURI(f)){return locateFile(f)}return f}var wasmBinaryFile;function getBinarySync(file){if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(file)}throw"both async and sync fetching of the wasm failed"}function getBinaryPromise(binaryFile){if(!wasmBinary){return readAsync(binaryFile).then(response=>new Uint8Array(response),()=>getBinarySync(binaryFile))}return Promise.resolve().then(()=>getBinarySync(binaryFile))}function instantiateArrayBuffer(binaryFile,imports,receiver){return getBinaryPromise(binaryFile).then(binary=>WebAssembly.instantiate(binary,imports)).then(receiver,reason=>{err(`failed to asynchronously prepare wasm: ${reason}`);abort(reason)})}function instantiateAsync(binary,binaryFile,imports,callback){if(!binary&&typeof WebAssembly.instantiateStreaming=="function"&&!isDataURI(binaryFile)&&!isFileURI(binaryFile)&&!ENVIRONMENT_IS_NODE&&typeof fetch=="function"){return fetch(binaryFile,{credentials:"same-origin"}).then(response=>{var result=WebAssembly.instantiateStreaming(response,imports);return result.then(callback,function(reason){err(`wasm streaming compile failed: ${reason}`);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(binaryFile,imports,callback)})})}return instantiateArrayBuffer(binaryFile,imports,callback)}function getWasmImports(){return{a:wasmImports}}function createWasm(){var info=getWasmImports();function receiveInstance(instance,module){wasmExports=instance.exports;wasmMemory=wasmExports["Ib"];updateMemoryViews();wasmTable=wasmExports["Ub"];addOnInit(wasmExports["Jb"]);removeRunDependency("wasm-instantiate");return wasmExports}addRunDependency("wasm-instantiate");function receiveInstantiationResult(result){receiveInstance(result["instance"])}if(Module["instantiateWasm"]){try{return Module["instantiateWasm"](info,receiveInstance)}catch(e){err(`Module.instantiateWasm callback failed with error: ${e}`);return false}}if(!wasmBinaryFile)wasmBinaryFile=findWasmBinary();instantiateAsync(wasmBinary,wasmBinaryFile,info,receiveInstantiationResult);return{}}var tempDouble;var tempI64;var ASM_CONSTS={153520:()=>window.screen.width*window.devicePixelRatio,153578:()=>window.screen.height*window.devicePixelRatio,153637:()=>window.devicePixelRatio,153673:()=>window.devicePixelRatio,153709:()=>window.innerWidth,153739:()=>window.innerHeight,153770:()=>{FS.mkdir("/data");FS.mount(IDBFS,{autoPersist:true},"/data");FS.syncfs(true,function(err){if(err!=null){console.log(err)}FS.mkdir("/batterySaves");FS.mount(IDBFS,{autoPersist:true},"/batterySaves");FS.syncfs(true,function(err){if(err!=null){console.log(err)}});Module.ccall("runApp",null,[],[])})},154114:($0,$1,$2,$3,$4)=>{if(typeof window==="undefined"||(window.AudioContext||window.webkitAudioContext)===undefined){return 0}if(typeof window.miniaudio==="undefined"){window.miniaudio={referenceCount:0};window.miniaudio.device_type={};window.miniaudio.device_type.playback=$0;window.miniaudio.device_type.capture=$1;window.miniaudio.device_type.duplex=$2;window.miniaudio.device_state={};window.miniaudio.device_state.stopped=$3;window.miniaudio.device_state.started=$4;miniaudio.devices=[];miniaudio.track_device=function(device){for(var iDevice=0;iDevice0){if(miniaudio.devices[miniaudio.devices.length-1]==null){miniaudio.devices.pop()}else{break}}};miniaudio.untrack_device=function(device){for(var iDevice=0;iDevice{Module._ma_device__on_notification_unlocked(device.pDevice)},error=>{console.error("Failed to resume audiocontext",error)})}}miniaudio.unlock_event_types.map(function(event_type){document.removeEventListener(event_type,miniaudio.unlock,true)})};miniaudio.unlock_event_types.map(function(event_type){document.addEventListener(event_type,miniaudio.unlock,true)})}window.miniaudio.referenceCount+=1;return 1},156272:()=>{if(typeof window.miniaudio!=="undefined"){window.miniaudio.referenceCount-=1;if(window.miniaudio.referenceCount===0){delete window.miniaudio}}},156436:()=>navigator.mediaDevices!==undefined&&navigator.mediaDevices.getUserMedia!==undefined,156540:()=>{try{var temp=new(window.AudioContext||window.webkitAudioContext);var sampleRate=temp.sampleRate;temp.close();return sampleRate}catch(e){return 0}},156711:($0,$1,$2,$3,$4,$5)=>{var deviceType=$0;var channels=$1;var sampleRate=$2;var bufferSize=$3;var pIntermediaryBuffer=$4;var pDevice=$5;if(typeof window.miniaudio==="undefined"){return-1}var device={};var audioContextOptions={};if(deviceType==window.miniaudio.device_type.playback&&sampleRate!=0){audioContextOptions.sampleRate=sampleRate}device.webaudio=new(window.AudioContext||window.webkitAudioContext)(audioContextOptions);device.webaudio.suspend();device.state=window.miniaudio.device_state.stopped;var channelCountIn=0;var channelCountOut=channels;if(deviceType!=window.miniaudio.device_type.playback){channelCountIn=channels}device.scriptNode=device.webaudio.createScriptProcessor(bufferSize,channelCountIn,channelCountOut);device.scriptNode.onaudioprocess=function(e){if(device.intermediaryBufferView==null||device.intermediaryBufferView.length==0){device.intermediaryBufferView=new Float32Array(Module.HEAPF32.buffer,pIntermediaryBuffer,bufferSize*channels)}if(deviceType==miniaudio.device_type.capture||deviceType==miniaudio.device_type.duplex){for(var iChannel=0;iChannelminiaudio.get_device_by_index($0).webaudio.sampleRate,159605:$0=>{var device=miniaudio.get_device_by_index($0);if(device.scriptNode!==undefined){device.scriptNode.onaudioprocess=function(e){};device.scriptNode.disconnect();device.scriptNode=undefined}if(device.streamNode!==undefined){device.streamNode.disconnect();device.streamNode=undefined}device.webaudio.close();device.webaudio=undefined;device.pDevice=undefined},159998:$0=>{miniaudio.untrack_device_by_index($0)},160041:$0=>{var device=miniaudio.get_device_by_index($0);device.webaudio.resume();device.state=miniaudio.device_state.started},160166:$0=>{var device=miniaudio.get_device_by_index($0);device.webaudio.suspend();device.state=miniaudio.device_state.stopped}};function upload(accept_types,callback,callback_data){globalThis["open_file"]=function(e){const file_reader=new FileReader;file_reader.onload=event=>{const uint8Arr=new Uint8Array(event.target.result);const data_ptr=Module["_malloc"](uint8Arr.length);const data_on_heap=new Uint8Array(Module["HEAPU8"].buffer,data_ptr,uint8Arr.length);data_on_heap.set(uint8Arr);Module["ccall"]("upload_file_return","number",["string","string","number","number","number","number"],[event.target.filename,event.target.mime_type,data_on_heap.byteOffset,uint8Arr.length,callback,callback_data]);Module["_free"](data_ptr)};file_reader.filename=e.target.files[0].name;file_reader.mime_type=e.target.files[0].type;file_reader.readAsArrayBuffer(e.target.files[0])};var file_selector=document.createElement("input");file_selector.setAttribute("type","file");file_selector.setAttribute("onchange",'globalThis["open_file"](event)');file_selector.style.outline="none";file_selector.addEventListener("cancel",()=>{Module["ccall"]("upload_file_return","number",["string","string","number","number","number","number"],["","",0,0,callback,callback_data])});file_selector.setAttribute("accept",UTF8ToString(accept_types));var is_safari=/^((?!chrome|android).)*safari/i.test(navigator.userAgent);if(is_safari){var dialog=document.createElement("dialog");dialog.setAttribute("id","EmJsFileDialog");file_selector.setAttribute("onclick",'var dg = document.getElementById("EmJsFileDialog"); dg.close(); dg.remove()');dialog.appendChild(file_selector);var cancel_button=document.createElement("button");cancel_button.textContent="Cancel";cancel_button.setAttribute("onclick",'var dg = document.getElementById("EmJsFileDialog"); dg.close(); dg.remove()');var lineBreak=document.createElement("br");dialog.appendChild(lineBreak);dialog.appendChild(cancel_button);document.body.append(dialog);dialog.showModal()}else{file_selector.click()}}function download(filename,mime_type,buffer,buffer_size){var a=document.createElement("a");a.download=UTF8ToString(filename);a.href=URL.createObjectURL(new Blob([new Uint8Array(Module["HEAPU8"].buffer,buffer,buffer_size)],{type:UTF8ToString(mime_type)}));a.click()}function ImGui_ImplGlfw_EmscriptenOpenURL(url){url=url?UTF8ToString(url):null;if(url)window.open(url,"_blank")}function ExitStatus(status){this.name="ExitStatus";this.message=`Program terminated with exit(${status})`;this.status=status}var callRuntimeCallbacks=callbacks=>{while(callbacks.length>0){callbacks.shift()(Module)}};var noExitRuntime=Module["noExitRuntime"]||true;var stackRestore=val=>__emscripten_stack_restore(val);var stackSave=()=>_emscripten_stack_get_current();class ExceptionInfo{constructor(excPtr){this.excPtr=excPtr;this.ptr=excPtr-24}set_type(type){HEAPU32[this.ptr+4>>2]=type}get_type(){return HEAPU32[this.ptr+4>>2]}set_destructor(destructor){HEAPU32[this.ptr+8>>2]=destructor}get_destructor(){return HEAPU32[this.ptr+8>>2]}set_caught(caught){caught=caught?1:0;HEAP8[this.ptr+12]=caught}get_caught(){return HEAP8[this.ptr+12]!=0}set_rethrown(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+13]=rethrown}get_rethrown(){return HEAP8[this.ptr+13]!=0}init(type,destructor){this.set_adjusted_ptr(0);this.set_type(type);this.set_destructor(destructor)}set_adjusted_ptr(adjustedPtr){HEAPU32[this.ptr+16>>2]=adjustedPtr}get_adjusted_ptr(){return HEAPU32[this.ptr+16>>2]}get_exception_ptr(){var isPointer=___cxa_is_pointer_type(this.get_type());if(isPointer){return HEAPU32[this.excPtr>>2]}var adjusted=this.get_adjusted_ptr();if(adjusted!==0)return adjusted;return this.excPtr}}var exceptionLast=0;var uncaughtExceptionCount=0;var ___cxa_throw=(ptr,type,destructor)=>{var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;uncaughtExceptionCount++;throw exceptionLast};var PATH={isAbs:path=>path.charAt(0)==="/",splitPath:filename=>{var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)},normalizeArray:(parts,allowAboveRoot)=>{var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts},normalize:path=>{var isAbsolute=PATH.isAbs(path),trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter(p=>!!p),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path},dirname:path=>{var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir},basename:path=>{if(path==="/")return"/";path=PATH.normalize(path);path=path.replace(/\/$/,"");var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)},join:(...paths)=>PATH.normalize(paths.join("/")),join2:(l,r)=>PATH.normalize(l+"/"+r)};var initRandomFill=()=>{if(typeof crypto=="object"&&typeof crypto["getRandomValues"]=="function"){return view=>crypto.getRandomValues(view)}else if(ENVIRONMENT_IS_NODE){try{var crypto_module=require("crypto");var randomFillSync=crypto_module["randomFillSync"];if(randomFillSync){return view=>crypto_module["randomFillSync"](view)}var randomBytes=crypto_module["randomBytes"];return view=>(view.set(randomBytes(view.byteLength)),view)}catch(e){}}abort("initRandomDevice")};var randomFill=view=>(randomFill=initRandomFill())(view);var PATH_FS={resolve:(...args)=>{var resolvedPath="",resolvedAbsolute=false;for(var i=args.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?args[i]:FS.cwd();if(typeof path!="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=PATH.isAbs(path)}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter(p=>!!p),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."},relative:(from,to)=>{from=PATH_FS.resolve(from).substr(1);to=PATH_FS.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i{var endIdx=idx+maxBytesToRead;var endPtr=idx;while(heapOrArray[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&heapOrArray.buffer&&UTF8Decoder){return UTF8Decoder.decode(heapOrArray.subarray(idx,endPtr))}var str="";while(idx>10,56320|ch&1023)}}return str};var FS_stdin_getChar_buffer=[];var lengthBytesUTF8=str=>{var len=0;for(var i=0;i=55296&&c<=57343){len+=4;++i}else{len+=3}}return len};var stringToUTF8Array=(str,heap,outIdx,maxBytesToWrite)=>{if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx};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}var FS_stdin_getChar=()=>{if(!FS_stdin_getChar_buffer.length){var result=null;if(ENVIRONMENT_IS_NODE){var BUFSIZE=256;var buf=Buffer.alloc(BUFSIZE);var bytesRead=0;var fd=process.stdin.fd;try{bytesRead=fs.readSync(fd,buf,0,BUFSIZE)}catch(e){if(e.toString().includes("EOF"))bytesRead=0;else throw e}if(bytesRead>0){result=buf.slice(0,bytesRead).toString("utf-8")}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else{}if(!result){return null}FS_stdin_getChar_buffer=intArrayFromString(result,true)}return FS_stdin_getChar_buffer.shift()};var TTY={ttys:[],init(){},shutdown(){},register(dev,ops){TTY.ttys[dev]={input:[],output:[],ops:ops};FS.registerDevice(dev,TTY.stream_ops)},stream_ops:{open(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(43)}stream.tty=tty;stream.seekable=false},close(stream){stream.tty.ops.fsync(stream.tty)},fsync(stream){stream.tty.ops.fsync(stream.tty)},read(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.get_char){throw new FS.ErrnoError(60)}var bytesRead=0;for(var i=0;i0){out(UTF8ArrayToString(tty.output,0));tty.output=[]}},ioctl_tcgets(tty){return{c_iflag:25856,c_oflag:5,c_cflag:191,c_lflag:35387,c_cc:[3,28,127,21,4,0,1,0,17,19,26,0,18,15,23,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]}},ioctl_tcsets(tty,optional_actions,data){return 0},ioctl_tiocgwinsz(tty){return[24,80]}},default_tty1_ops:{put_char(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},fsync(tty){if(tty.output&&tty.output.length>0){err(UTF8ArrayToString(tty.output,0));tty.output=[]}}}};var mmapAlloc=size=>{abort()};var MEMFS={ops_table:null,mount(mount){return MEMFS.createNode(null,"/",16384|511,0)},createNode(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(63)}MEMFS.ops_table||={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}};var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node;parent.timestamp=node.timestamp}return node},getFileDataAsTypedArray(node){if(!node.contents)return new Uint8Array(0);if(node.contents.subarray)return node.contents.subarray(0,node.usedBytes);return new Uint8Array(node.contents)},expandFileStorage(node,newCapacity){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity>>0);if(prevCapacity!=0)newCapacity=Math.max(newCapacity,256);var oldContents=node.contents;node.contents=new Uint8Array(newCapacity);if(node.usedBytes>0)node.contents.set(oldContents.subarray(0,node.usedBytes),0)},resizeFileStorage(node,newSize){if(node.usedBytes==newSize)return;if(newSize==0){node.contents=null;node.usedBytes=0}else{var oldContents=node.contents;node.contents=new Uint8Array(newSize);if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize}},node_ops:{getattr(node){var attr={};attr.dev=FS.isChrdev(node.mode)?node.id:1;attr.ino=node.id;attr.mode=node.mode;attr.nlink=1;attr.uid=0;attr.gid=0;attr.rdev=node.rdev;if(FS.isDir(node.mode)){attr.size=4096}else if(FS.isFile(node.mode)){attr.size=node.usedBytes}else if(FS.isLink(node.mode)){attr.size=node.link.length}else{attr.size=0}attr.atime=new Date(node.timestamp);attr.mtime=new Date(node.timestamp);attr.ctime=new Date(node.timestamp);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr},setattr(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}},lookup(parent,name){throw FS.genericErrors[44]},mknod(parent,name,mode,dev){return MEMFS.createNode(parent,name,mode,dev)},rename(old_node,new_dir,new_name){if(FS.isDir(old_node.mode)){var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(new_node){for(var i in new_node.contents){throw new FS.ErrnoError(55)}}}delete old_node.parent.contents[old_node.name];old_node.parent.timestamp=Date.now();old_node.name=new_name;new_dir.contents[new_name]=old_node;new_dir.timestamp=old_node.parent.timestamp},unlink(parent,name){delete parent.contents[name];parent.timestamp=Date.now()},rmdir(parent,name){var node=FS.lookupNode(parent,name);for(var i in node.contents){throw new FS.ErrnoError(55)}delete parent.contents[name];parent.timestamp=Date.now()},readdir(node){var entries=[".",".."];for(var key of Object.keys(node.contents)){entries.push(key)}return entries},symlink(parent,newname,oldpath){var node=MEMFS.createNode(parent,newname,511|40960,0);node.link=oldpath;return node},readlink(node){if(!FS.isLink(node.mode)){throw new FS.ErrnoError(28)}return node.link}},stream_ops:{read(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+length{var dep=!noRunDep?getUniqueRunDependency(`al ${url}`):"";readAsync(url).then(arrayBuffer=>{onload(new Uint8Array(arrayBuffer));if(dep)removeRunDependency(dep)},err=>{if(onerror){onerror()}else{throw`Loading data file "${url}" failed.`}});if(dep)addRunDependency(dep)};var FS_createDataFile=(parent,name,fileData,canRead,canWrite,canOwn)=>{FS.createDataFile(parent,name,fileData,canRead,canWrite,canOwn)};var preloadPlugins=Module["preloadPlugins"]||[];var FS_handledByPreloadPlugin=(byteArray,fullname,finish,onerror)=>{if(typeof Browser!="undefined")Browser.init();var handled=false;preloadPlugins.forEach(plugin=>{if(handled)return;if(plugin["canHandle"](fullname)){plugin["handle"](byteArray,fullname,finish,onerror);handled=true}});return handled};var FS_createPreloadedFile=(parent,name,url,canRead,canWrite,onload,onerror,dontCreateFile,canOwn,preFinish)=>{var fullname=name?PATH_FS.resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency(`cp ${fullname}`);function processData(byteArray){function finish(byteArray){preFinish?.();if(!dontCreateFile){FS_createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}onload?.();removeRunDependency(dep)}if(FS_handledByPreloadPlugin(byteArray,fullname,finish,()=>{onerror?.();removeRunDependency(dep)})){return}finish(byteArray)}addRunDependency(dep);if(typeof url=="string"){asyncLoad(url,processData,onerror)}else{processData(url)}};var FS_modeStringToFlags=str=>{var flagModes={r:0,"r+":2,w:512|64|1,"w+":512|64|2,a:1024|64|1,"a+":1024|64|2};var flags=flagModes[str];if(typeof flags=="undefined"){throw new Error(`Unknown file open mode: ${str}`)}return flags};var FS_getMode=(canRead,canWrite)=>{var mode=0;if(canRead)mode|=292|73;if(canWrite)mode|=146;return mode};var IDBFS={dbs:{},indexedDB:()=>{if(typeof indexedDB!="undefined")return indexedDB;var ret=null;if(typeof window=="object")ret=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB;return ret},DB_VERSION:21,DB_STORE_NAME:"FILE_DATA",queuePersist:mount=>{function onPersistComplete(){if(mount.idbPersistState==="again")startPersist();else mount.idbPersistState=0}function startPersist(){mount.idbPersistState="idb";IDBFS.syncfs(mount,false,onPersistComplete)}if(!mount.idbPersistState){mount.idbPersistState=setTimeout(startPersist,0)}else if(mount.idbPersistState==="idb"){mount.idbPersistState="again"}},mount:mount=>{var mnt=MEMFS.mount(mount);if(mount?.opts?.autoPersist){mnt.idbPersistState=0;var memfs_node_ops=mnt.node_ops;mnt.node_ops=Object.assign({},mnt.node_ops);mnt.node_ops.mknod=(parent,name,mode,dev)=>{var node=memfs_node_ops.mknod(parent,name,mode,dev);node.node_ops=mnt.node_ops;node.idbfs_mount=mnt.mount;node.memfs_stream_ops=node.stream_ops;node.stream_ops=Object.assign({},node.stream_ops);node.stream_ops.write=(stream,buffer,offset,length,position,canOwn)=>{stream.node.isModified=true;return node.memfs_stream_ops.write(stream,buffer,offset,length,position,canOwn)};node.stream_ops.close=stream=>{var n=stream.node;if(n.isModified){IDBFS.queuePersist(n.idbfs_mount);n.isModified=false}if(n.memfs_stream_ops.close)return n.memfs_stream_ops.close(stream)};return node};mnt.node_ops.mkdir=(...args)=>(IDBFS.queuePersist(mnt.mount),memfs_node_ops.mkdir(...args));mnt.node_ops.rmdir=(...args)=>(IDBFS.queuePersist(mnt.mount),memfs_node_ops.rmdir(...args));mnt.node_ops.symlink=(...args)=>(IDBFS.queuePersist(mnt.mount),memfs_node_ops.symlink(...args));mnt.node_ops.unlink=(...args)=>(IDBFS.queuePersist(mnt.mount),memfs_node_ops.unlink(...args));mnt.node_ops.rename=(...args)=>(IDBFS.queuePersist(mnt.mount),memfs_node_ops.rename(...args))}return mnt},syncfs:(mount,populate,callback)=>{IDBFS.getLocalSet(mount,(err,local)=>{if(err)return callback(err);IDBFS.getRemoteSet(mount,(err,remote)=>{if(err)return callback(err);var src=populate?remote:local;var dst=populate?local:remote;IDBFS.reconcile(src,dst,callback)})})},quit:()=>{Object.values(IDBFS.dbs).forEach(value=>value.close());IDBFS.dbs={}},getDB:(name,callback)=>{var db=IDBFS.dbs[name];if(db){return callback(null,db)}var req;try{req=IDBFS.indexedDB().open(name,IDBFS.DB_VERSION)}catch(e){return callback(e)}if(!req){return callback("Unable to connect to IndexedDB")}req.onupgradeneeded=e=>{var db=e.target.result;var transaction=e.target.transaction;var fileStore;if(db.objectStoreNames.contains(IDBFS.DB_STORE_NAME)){fileStore=transaction.objectStore(IDBFS.DB_STORE_NAME)}else{fileStore=db.createObjectStore(IDBFS.DB_STORE_NAME)}if(!fileStore.indexNames.contains("timestamp")){fileStore.createIndex("timestamp","timestamp",{unique:false})}};req.onsuccess=()=>{db=req.result;IDBFS.dbs[name]=db;callback(null,db)};req.onerror=e=>{callback(e.target.error);e.preventDefault()}},getLocalSet:(mount,callback)=>{var entries={};function isRealDir(p){return p!=="."&&p!==".."}function toAbsolute(root){return p=>PATH.join2(root,p)}var check=FS.readdir(mount.mountpoint).filter(isRealDir).map(toAbsolute(mount.mountpoint));while(check.length){var path=check.pop();var stat;try{stat=FS.stat(path)}catch(e){return callback(e)}if(FS.isDir(stat.mode)){check.push(...FS.readdir(path).filter(isRealDir).map(toAbsolute(path)))}entries[path]={timestamp:stat.mtime}}return callback(null,{type:"local",entries:entries})},getRemoteSet:(mount,callback)=>{var entries={};IDBFS.getDB(mount.mountpoint,(err,db)=>{if(err)return callback(err);try{var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readonly");transaction.onerror=e=>{callback(e.target.error);e.preventDefault()};var store=transaction.objectStore(IDBFS.DB_STORE_NAME);var index=store.index("timestamp");index.openKeyCursor().onsuccess=event=>{var cursor=event.target.result;if(!cursor){return callback(null,{type:"remote",db:db,entries:entries})}entries[cursor.primaryKey]={timestamp:cursor.key};cursor.continue()}}catch(e){return callback(e)}})},loadLocalEntry:(path,callback)=>{var stat,node;try{var lookup=FS.lookupPath(path);node=lookup.node;stat=FS.stat(path)}catch(e){return callback(e)}if(FS.isDir(stat.mode)){return callback(null,{timestamp:stat.mtime,mode:stat.mode})}else if(FS.isFile(stat.mode)){node.contents=MEMFS.getFileDataAsTypedArray(node);return callback(null,{timestamp:stat.mtime,mode:stat.mode,contents:node.contents})}else{return callback(new Error("node type not supported"))}},storeLocalEntry:(path,entry,callback)=>{try{if(FS.isDir(entry["mode"])){FS.mkdirTree(path,entry["mode"])}else if(FS.isFile(entry["mode"])){FS.writeFile(path,entry["contents"],{canOwn:true})}else{return callback(new Error("node type not supported"))}FS.chmod(path,entry["mode"]);FS.utime(path,entry["timestamp"],entry["timestamp"])}catch(e){return callback(e)}callback(null)},removeLocalEntry:(path,callback)=>{try{var stat=FS.stat(path);if(FS.isDir(stat.mode)){FS.rmdir(path)}else if(FS.isFile(stat.mode)){FS.unlink(path)}}catch(e){return callback(e)}callback(null)},loadRemoteEntry:(store,path,callback)=>{var req=store.get(path);req.onsuccess=event=>callback(null,event.target.result);req.onerror=e=>{callback(e.target.error);e.preventDefault()}},storeRemoteEntry:(store,path,entry,callback)=>{try{var req=store.put(entry,path)}catch(e){callback(e);return}req.onsuccess=event=>callback();req.onerror=e=>{callback(e.target.error);e.preventDefault()}},removeRemoteEntry:(store,path,callback)=>{var req=store.delete(path);req.onsuccess=event=>callback();req.onerror=e=>{callback(e.target.error);e.preventDefault()}},reconcile:(src,dst,callback)=>{var total=0;var create=[];Object.keys(src.entries).forEach(function(key){var e=src.entries[key];var e2=dst.entries[key];if(!e2||e["timestamp"].getTime()!=e2["timestamp"].getTime()){create.push(key);total++}});var remove=[];Object.keys(dst.entries).forEach(function(key){if(!src.entries[key]){remove.push(key);total++}});if(!total){return callback(null)}var errored=false;var db=src.type==="remote"?src.db:dst.db;var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readwrite");var store=transaction.objectStore(IDBFS.DB_STORE_NAME);function done(err){if(err&&!errored){errored=true;return callback(err)}}transaction.onerror=transaction.onabort=e=>{done(e.target.error);e.preventDefault()};transaction.oncomplete=e=>{if(!errored){callback(null)}};create.sort().forEach(path=>{if(dst.type==="local"){IDBFS.loadRemoteEntry(store,path,(err,entry)=>{if(err)return done(err);IDBFS.storeLocalEntry(path,entry,done)})}else{IDBFS.loadLocalEntry(path,(err,entry)=>{if(err)return done(err);IDBFS.storeRemoteEntry(store,path,entry,done)})}});remove.sort().reverse().forEach(path=>{if(dst.type==="local"){IDBFS.removeLocalEntry(path,done)}else{IDBFS.removeRemoteEntry(store,path,done)}})}};var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,ErrnoError:class{constructor(errno){this.name="ErrnoError";this.errno=errno}},genericErrors:{},filesystems:null,syncFSRequests:0,FSStream:class{constructor(){this.shared={}}get object(){return this.node}set object(val){this.node=val}get isRead(){return(this.flags&2097155)!==1}get isWrite(){return(this.flags&2097155)!==0}get isAppend(){return this.flags&1024}get flags(){return this.shared.flags}set flags(val){this.shared.flags=val}get position(){return this.shared.position}set position(val){this.shared.position=val}},FSNode:class{constructor(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev;this.readMode=292|73;this.writeMode=146}get read(){return(this.mode&this.readMode)===this.readMode}set read(val){val?this.mode|=this.readMode:this.mode&=~this.readMode}get write(){return(this.mode&this.writeMode)===this.writeMode}set write(val){val?this.mode|=this.writeMode:this.mode&=~this.writeMode}get isFolder(){return FS.isDir(this.mode)}get isDevice(){return FS.isChrdev(this.mode)}},lookupPath(path,opts={}){path=PATH_FS.resolve(path);if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};opts=Object.assign(defaults,opts);if(opts.recurse_count>8){throw new FS.ErrnoError(32)}var parts=path.split("/").filter(p=>!!p);var current=FS.root;var current_path="/";for(var i=0;i40){throw new FS.ErrnoError(32)}}}}return{path:current_path,node:current}},getPath(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?`${mount}/${path}`:mount+path}path=path?`${node.name}/${path}`:node.name;node=node.parent}},hashName(parentid,name){var hash=0;for(var i=0;i>>0)%FS.nameTable.length},hashAddNode(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node},hashRemoveNode(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}},lookupNode(parent,name){var errCode=FS.mayLookup(parent);if(errCode){throw new FS.ErrnoError(errCode)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)},createNode(parent,name,mode,rdev){var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node},destroyNode(node){FS.hashRemoveNode(node)},isRoot(node){return node===node.parent},isMountpoint(node){return!!node.mounted},isFile(mode){return(mode&61440)===32768},isDir(mode){return(mode&61440)===16384},isLink(mode){return(mode&61440)===40960},isChrdev(mode){return(mode&61440)===8192},isBlkdev(mode){return(mode&61440)===24576},isFIFO(mode){return(mode&61440)===4096},isSocket(mode){return(mode&49152)===49152},flagsToPermissionString(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms},nodePermissions(node,perms){if(FS.ignorePermissions){return 0}if(perms.includes("r")&&!(node.mode&292)){return 2}else if(perms.includes("w")&&!(node.mode&146)){return 2}else if(perms.includes("x")&&!(node.mode&73)){return 2}return 0},mayLookup(dir){if(!FS.isDir(dir.mode))return 54;var errCode=FS.nodePermissions(dir,"x");if(errCode)return errCode;if(!dir.node_ops.lookup)return 2;return 0},mayCreate(dir,name){try{var node=FS.lookupNode(dir,name);return 20}catch(e){}return FS.nodePermissions(dir,"wx")},mayDelete(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var errCode=FS.nodePermissions(dir,"wx");if(errCode){return errCode}if(isdir){if(!FS.isDir(node.mode)){return 54}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return 10}}else{if(FS.isDir(node.mode)){return 31}}return 0},mayOpen(node,flags){if(!node){return 44}if(FS.isLink(node.mode)){return 32}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return 31}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))},MAX_OPEN_FDS:4096,nextfd(){for(var fd=0;fd<=FS.MAX_OPEN_FDS;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(33)},getStreamChecked(fd){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(8)}return stream},getStream:fd=>FS.streams[fd],createStream(stream,fd=-1){stream=Object.assign(new FS.FSStream,stream);if(fd==-1){fd=FS.nextfd()}stream.fd=fd;FS.streams[fd]=stream;return stream},closeStream(fd){FS.streams[fd]=null},dupStream(origStream,fd=-1){var stream=FS.createStream(origStream,fd);stream.stream_ops?.dup?.(stream);return stream},chrdev_stream_ops:{open(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;stream.stream_ops.open?.(stream)},llseek(){throw new FS.ErrnoError(70)}},major:dev=>dev>>8,minor:dev=>dev&255,makedev:(ma,mi)=>ma<<8|mi,registerDevice(dev,ops){FS.devices[dev]={stream_ops:ops}},getDevice:dev=>FS.devices[dev],getMounts(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push(...m.mounts)}return mounts},syncfs(populate,callback){if(typeof populate=="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){err(`warning: ${FS.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`)}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(errCode){FS.syncFSRequests--;return callback(errCode)}function done(errCode){if(errCode){if(!done.errored){done.errored=true;return doCallback(errCode)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach(mount=>{if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)})},mount(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(10)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot},unmount(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(28)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach(hash=>{var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.includes(current.mount)){FS.destroyNode(current)}current=next}});node.mounted=null;var idx=node.mount.mounts.indexOf(mount);node.mount.mounts.splice(idx,1)},lookup(parent,name){return parent.node_ops.lookup(parent,name)},mknod(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(28)}var errCode=FS.mayCreate(parent,name);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(63)}return parent.node_ops.mknod(parent,name,mode,dev)},create(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)},mkdir(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)},mkdirTree(path,mode){var dirs=path.split("/");var d="";for(var i=0;iFS.currentPath,chdir(path){var lookup=FS.lookupPath(path,{follow:true});if(lookup.node===null){throw new FS.ErrnoError(44)}if(!FS.isDir(lookup.node.mode)){throw new FS.ErrnoError(54)}var errCode=FS.nodePermissions(lookup.node,"x");if(errCode){throw new FS.ErrnoError(errCode)}FS.currentPath=lookup.path},createDefaultDirectories(){FS.mkdir("/tmp");FS.mkdir("/home");FS.mkdir("/home/web_user")},createDefaultDevices(){FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:()=>0,write:(stream,buffer,offset,length,pos)=>length});FS.mkdev("/dev/null",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev("/dev/tty",FS.makedev(5,0));FS.mkdev("/dev/tty1",FS.makedev(6,0));var randomBuffer=new Uint8Array(1024),randomLeft=0;var randomByte=()=>{if(randomLeft===0){randomLeft=randomFill(randomBuffer).byteLength}return randomBuffer[--randomLeft]};FS.createDevice("/dev","random",randomByte);FS.createDevice("/dev","urandom",randomByte);FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")},createSpecialDirectories(){FS.mkdir("/proc");var proc_self=FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd");FS.mount({mount(){var node=FS.createNode(proc_self,"fd",16384|511,73);node.node_ops={lookup(parent,name){var fd=+name;var stream=FS.getStreamChecked(fd);var ret={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:()=>stream.path}};ret.parent=ret;return ret}};return node}},{},"/proc/self/fd")},createStandardStreams(){if(Module["stdin"]){FS.createDevice("/dev","stdin",Module["stdin"])}else{FS.symlink("/dev/tty","/dev/stdin")}if(Module["stdout"]){FS.createDevice("/dev","stdout",null,Module["stdout"])}else{FS.symlink("/dev/tty","/dev/stdout")}if(Module["stderr"]){FS.createDevice("/dev","stderr",null,Module["stderr"])}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin",0);var stdout=FS.open("/dev/stdout",1);var stderr=FS.open("/dev/stderr",1)},staticInit(){[44].forEach(code=>{FS.genericErrors[code]=new FS.ErrnoError(code);FS.genericErrors[code].stack=""});FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={MEMFS:MEMFS,IDBFS:IDBFS}},init(input,output,error){FS.init.initialized=true;Module["stdin"]=input||Module["stdin"];Module["stdout"]=output||Module["stdout"];Module["stderr"]=error||Module["stderr"];FS.createStandardStreams()},quit(){FS.init.initialized=false;for(var i=0;ithis.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]}setDataGetter(getter){this.getter=getter}cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(from,to)=>{if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}return intArrayFromString(xhr.responseText||"",true)};var lazyArray=this;lazyArray.setDataGetter(chunkNum=>{var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]=="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]=="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]});if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;out("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true}get length(){if(!this.lengthKnown){this.cacheLength()}return this._length}get chunkSize(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize}}if(typeof XMLHttpRequest!="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:function(){return this.contents.length}}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach(key=>{var fn=node.stream_ops[key];stream_ops[key]=(...args)=>{FS.forceLoadFile(node);return fn(...args)}});function writeChunks(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);if(contents.slice){for(var i=0;i{FS.forceLoadFile(node);return writeChunks(stream,buffer,offset,length,position)};stream_ops.mmap=(stream,length,position,prot,flags)=>{FS.forceLoadFile(node);var ptr=mmapAlloc(length);if(!ptr){throw new FS.ErrnoError(48)}writeChunks(stream,HEAP8,ptr,length,position);return{ptr:ptr,allocated:true}};node.stream_ops=stream_ops;return node}};var UTF8ToString=(ptr,maxBytesToRead)=>ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):"";var SYSCALLS={DEFAULT_POLLMASK:5,calculateAt(dirfd,path,allowEmpty){if(PATH.isAbs(path)){return path}var dir;if(dirfd===-100){dir=FS.cwd()}else{var dirstream=SYSCALLS.getStreamFromFD(dirfd);dir=dirstream.path}if(path.length==0){if(!allowEmpty){throw new FS.ErrnoError(44)}return dir}return PATH.join2(dir,path)},doStat(func,path,buf){var stat=func(path);HEAP32[buf>>2]=stat.dev;HEAP32[buf+4>>2]=stat.mode;HEAPU32[buf+8>>2]=stat.nlink;HEAP32[buf+12>>2]=stat.uid;HEAP32[buf+16>>2]=stat.gid;HEAP32[buf+20>>2]=stat.rdev;tempI64=[stat.size>>>0,(tempDouble=stat.size,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+24>>2]=tempI64[0],HEAP32[buf+28>>2]=tempI64[1];HEAP32[buf+32>>2]=4096;HEAP32[buf+36>>2]=stat.blocks;var atime=stat.atime.getTime();var mtime=stat.mtime.getTime();var ctime=stat.ctime.getTime();tempI64=[Math.floor(atime/1e3)>>>0,(tempDouble=Math.floor(atime/1e3),+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+40>>2]=tempI64[0],HEAP32[buf+44>>2]=tempI64[1];HEAPU32[buf+48>>2]=atime%1e3*1e3;tempI64=[Math.floor(mtime/1e3)>>>0,(tempDouble=Math.floor(mtime/1e3),+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+56>>2]=tempI64[0],HEAP32[buf+60>>2]=tempI64[1];HEAPU32[buf+64>>2]=mtime%1e3*1e3;tempI64=[Math.floor(ctime/1e3)>>>0,(tempDouble=Math.floor(ctime/1e3),+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+72>>2]=tempI64[0],HEAP32[buf+76>>2]=tempI64[1];HEAPU32[buf+80>>2]=ctime%1e3*1e3;tempI64=[stat.ino>>>0,(tempDouble=stat.ino,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+88>>2]=tempI64[0],HEAP32[buf+92>>2]=tempI64[1];return 0},doMsync(addr,stream,len,flags,offset){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(43)}if(flags&2){return 0}var buffer=HEAPU8.slice(addr,addr+len);FS.msync(stream,buffer,offset,len,flags)},getStreamFromFD(fd){var stream=FS.getStreamChecked(fd);return stream},varargs:undefined,getStr(ptr){var ret=UTF8ToString(ptr);return ret}};function ___syscall_chmod(path,mode){try{path=SYSCALLS.getStr(path);FS.chmod(path,mode);return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_fchmod(fd,mode){try{FS.fchmod(fd,mode);return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function syscallGetVarargI(){var ret=HEAP32[+SYSCALLS.varargs>>2];SYSCALLS.varargs+=4;return ret}var syscallGetVarargP=syscallGetVarargI;function ___syscall_fcntl64(fd,cmd,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(fd);switch(cmd){case 0:{var arg=syscallGetVarargI();if(arg<0){return-28}while(FS.streams[arg]){arg++}var newStream;newStream=FS.dupStream(stream,arg);return newStream.fd}case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=syscallGetVarargI();stream.flags|=arg;return 0}case 12:{var arg=syscallGetVarargP();var offset=0;HEAP16[arg+offset>>1]=2;return 0}case 13:case 14:return 0}return-28}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_fstat64(fd,buf){try{var stream=SYSCALLS.getStreamFromFD(fd);return SYSCALLS.doStat(FS.stat,stream.path,buf)}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}var convertI32PairToI53Checked=(lo,hi)=>hi+2097152>>>0<4194305-!!lo?(lo>>>0)+hi*4294967296:NaN;function ___syscall_ftruncate64(fd,length_low,length_high){var length=convertI32PairToI53Checked(length_low,length_high);try{if(isNaN(length))return 61;FS.ftruncate(fd,length);return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_ioctl(fd,op,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(fd);switch(op){case 21509:{if(!stream.tty)return-59;return 0}case 21505:{if(!stream.tty)return-59;if(stream.tty.ops.ioctl_tcgets){var termios=stream.tty.ops.ioctl_tcgets(stream);var argp=syscallGetVarargP();HEAP32[argp>>2]=termios.c_iflag||0;HEAP32[argp+4>>2]=termios.c_oflag||0;HEAP32[argp+8>>2]=termios.c_cflag||0;HEAP32[argp+12>>2]=termios.c_lflag||0;for(var i=0;i<32;i++){HEAP8[argp+i+17]=termios.c_cc[i]||0}return 0}return 0}case 21510:case 21511:case 21512:{if(!stream.tty)return-59;return 0}case 21506:case 21507:case 21508:{if(!stream.tty)return-59;if(stream.tty.ops.ioctl_tcsets){var argp=syscallGetVarargP();var c_iflag=HEAP32[argp>>2];var c_oflag=HEAP32[argp+4>>2];var c_cflag=HEAP32[argp+8>>2];var c_lflag=HEAP32[argp+12>>2];var c_cc=[];for(var i=0;i<32;i++){c_cc.push(HEAP8[argp+i+17])}return stream.tty.ops.ioctl_tcsets(stream.tty,op,{c_iflag:c_iflag,c_oflag:c_oflag,c_cflag:c_cflag,c_lflag:c_lflag,c_cc:c_cc})}return 0}case 21519:{if(!stream.tty)return-59;var argp=syscallGetVarargP();HEAP32[argp>>2]=0;return 0}case 21520:{if(!stream.tty)return-59;return-28}case 21531:{var argp=syscallGetVarargP();return FS.ioctl(stream,op,argp)}case 21523:{if(!stream.tty)return-59;if(stream.tty.ops.ioctl_tiocgwinsz){var winsize=stream.tty.ops.ioctl_tiocgwinsz(stream.tty);var argp=syscallGetVarargP();HEAP16[argp>>1]=winsize[0];HEAP16[argp+2>>1]=winsize[1]}return 0}case 21524:{if(!stream.tty)return-59;return 0}case 21515:{if(!stream.tty)return-59;return 0}default:return-28}}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_lstat64(path,buf){try{path=SYSCALLS.getStr(path);return SYSCALLS.doStat(FS.lstat,path,buf)}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_mkdirat(dirfd,path,mode){try{path=SYSCALLS.getStr(path);path=SYSCALLS.calculateAt(dirfd,path);path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_newfstatat(dirfd,path,buf,flags){try{path=SYSCALLS.getStr(path);var nofollow=flags&256;var allowEmpty=flags&4096;flags=flags&~6400;path=SYSCALLS.calculateAt(dirfd,path,allowEmpty);return SYSCALLS.doStat(nofollow?FS.lstat:FS.stat,path,buf)}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_openat(dirfd,path,flags,varargs){SYSCALLS.varargs=varargs;try{path=SYSCALLS.getStr(path);path=SYSCALLS.calculateAt(dirfd,path);var mode=varargs?syscallGetVarargI():0;return FS.open(path,flags,mode).fd}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_rmdir(path){try{path=SYSCALLS.getStr(path);FS.rmdir(path);return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_stat64(path,buf){try{path=SYSCALLS.getStr(path);return SYSCALLS.doStat(FS.stat,path,buf)}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_unlinkat(dirfd,path,flags){try{path=SYSCALLS.getStr(path);path=SYSCALLS.calculateAt(dirfd,path);if(flags===0){FS.unlink(path)}else if(flags===512){FS.rmdir(path)}else{abort("Invalid flags passed to unlinkat")}return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}var __abort_js=()=>{abort("")};var nowIsMonotonic=1;var __emscripten_get_now_is_monotonic=()=>nowIsMonotonic;var __emscripten_memcpy_js=(dest,src,num)=>HEAPU8.copyWithin(dest,src,src+num);var stringToUTF8=(str,outPtr,maxBytesToWrite)=>stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite);var __tzset_js=(timezone,daylight,std_name,dst_name)=>{var currentYear=(new Date).getFullYear();var winter=new Date(currentYear,0,1);var summer=new Date(currentYear,6,1);var winterOffset=winter.getTimezoneOffset();var summerOffset=summer.getTimezoneOffset();var stdTimezoneOffset=Math.max(winterOffset,summerOffset);HEAPU32[timezone>>2]=stdTimezoneOffset*60;HEAP32[daylight>>2]=Number(winterOffset!=summerOffset);var extractZone=timezoneOffset=>{var sign=timezoneOffset>=0?"-":"+";var absOffset=Math.abs(timezoneOffset);var hours=String(Math.floor(absOffset/60)).padStart(2,"0");var minutes=String(absOffset%60).padStart(2,"0");return`UTC${sign}${hours}${minutes}`};var winterName=extractZone(winterOffset);var summerName=extractZone(summerOffset);if(summerOffset{readEmAsmArgsArray.length=0;var ch;while(ch=HEAPU8[sigPtr++]){var wide=ch!=105;wide&=ch!=112;buf+=wide&&buf%8?4:0;readEmAsmArgsArray.push(ch==112?HEAPU32[buf>>2]:ch==105?HEAP32[buf>>2]:HEAPF64[buf>>3]);buf+=wide?8:4}return readEmAsmArgsArray};var runEmAsmFunction=(code,sigPtr,argbuf)=>{var args=readEmAsmArgs(sigPtr,argbuf);return ASM_CONSTS[code](...args)};var _emscripten_asm_const_double=(code,sigPtr,argbuf)=>runEmAsmFunction(code,sigPtr,argbuf);var _emscripten_asm_const_int=(code,sigPtr,argbuf)=>runEmAsmFunction(code,sigPtr,argbuf);var _emscripten_date_now=()=>Date.now();var _emscripten_get_now;_emscripten_get_now=()=>performance.now();var getHeapMax=()=>2147483648;var growMemory=size=>{var b=wasmMemory.buffer;var pages=(size-b.byteLength+65535)/65536;try{wasmMemory.grow(pages);updateMemoryViews();return 1}catch(e){}};var _emscripten_resize_heap=requestedSize=>{var oldSize=HEAPU8.length;requestedSize>>>=0;var maxHeapSize=getHeapMax();if(requestedSize>maxHeapSize){return false}var alignUp=(x,multiple)=>x+(multiple-x%multiple)%multiple;for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=growMemory(newSize);if(replacement){return true}}return false};var JSEvents={removeAllEventListeners(){while(JSEvents.eventHandlers.length){JSEvents._removeHandler(JSEvents.eventHandlers.length-1)}JSEvents.deferredCalls=[]},inEventHandler:0,deferredCalls:[],deferCall(targetFunction,precedence,argsList){function arraysHaveEqualContent(arrA,arrB){if(arrA.length!=arrB.length)return false;for(var i in arrA){if(arrA[i]!=arrB[i])return false}return true}for(var call of JSEvents.deferredCalls){if(call.targetFunction==targetFunction&&arraysHaveEqualContent(call.argsList,argsList)){return}}JSEvents.deferredCalls.push({targetFunction:targetFunction,precedence:precedence,argsList:argsList});JSEvents.deferredCalls.sort((x,y)=>x.precedencecall.targetFunction!=targetFunction)},canPerformEventHandlerRequests(){if(navigator.userActivation){return navigator.userActivation.isActive}return JSEvents.inEventHandler&&JSEvents.currentEventHandler.allowsDeferredCalls},runDeferredCalls(){if(!JSEvents.canPerformEventHandlerRequests()){return}var deferredCalls=JSEvents.deferredCalls;JSEvents.deferredCalls=[];for(var call of deferredCalls){call.targetFunction(...call.argsList)}},eventHandlers:[],removeAllHandlersOnTarget:(target,eventTypeString)=>{for(var i=0;icString>2?UTF8ToString(cString):cString;var specialHTMLTargets=[0,typeof document!="undefined"?document:0,typeof window!="undefined"?window:0];var findEventTarget=target=>{target=maybeCStringToJsString(target);var domElement=specialHTMLTargets[target]||(typeof document!="undefined"?document.querySelector(target):undefined);return domElement};var wasmTableMirror=[];var wasmTable;var getWasmTableEntry=funcPtr=>{var func=wasmTableMirror[funcPtr];if(!func){if(funcPtr>=wasmTableMirror.length)wasmTableMirror.length=funcPtr+1;wasmTableMirror[funcPtr]=func=wasmTable.get(funcPtr)}return func};var registerBeforeUnloadEventCallback=(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString)=>{var beforeUnloadEventHandlerFunc=(e=event)=>{var confirmationMessage=getWasmTableEntry(callbackfunc)(eventTypeId,0,userData);if(confirmationMessage){confirmationMessage=UTF8ToString(confirmationMessage)}if(confirmationMessage){e.preventDefault();e.returnValue=confirmationMessage;return confirmationMessage}};var eventHandler={target:findEventTarget(target),eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:beforeUnloadEventHandlerFunc,useCapture:useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)};var _emscripten_set_beforeunload_callback_on_thread=(userData,callbackfunc,targetThread)=>{if(typeof onbeforeunload=="undefined")return-1;if(targetThread!==1)return-5;return registerBeforeUnloadEventCallback(2,userData,true,callbackfunc,28,"beforeunload")};var _emscripten_set_element_css_size=(target,width,height)=>{target=findEventTarget(target);if(!target)return-4;target.style.width=width+"px";target.style.height=height+"px";return 0};var handleException=e=>{if(e instanceof ExitStatus||e=="unwind"){return EXITSTATUS}quit_(1,e)};var runtimeKeepaliveCounter=0;var keepRuntimeAlive=()=>noExitRuntime||runtimeKeepaliveCounter>0;var _proc_exit=code=>{EXITSTATUS=code;if(!keepRuntimeAlive()){Module["onExit"]?.(code);ABORT=true}quit_(code,new ExitStatus(code))};var exitJS=(status,implicit)=>{EXITSTATUS=status;_proc_exit(status)};var _exit=exitJS;var maybeExit=()=>{if(!keepRuntimeAlive()){try{_exit(EXITSTATUS)}catch(e){handleException(e)}}};var callUserCallback=func=>{if(ABORT){return}try{func();maybeExit()}catch(e){handleException(e)}};var safeSetTimeout=(func,timeout)=>setTimeout(()=>{callUserCallback(func)},timeout);var warnOnce=text=>{warnOnce.shown||={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;if(ENVIRONMENT_IS_NODE)text="warning: "+text;err(text)}};var Browser={mainLoop:{running:false,scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause(){Browser.mainLoop.scheduler=null;Browser.mainLoop.currentlyRunningMainloop++},resume(){Browser.mainLoop.currentlyRunningMainloop++;var timingMode=Browser.mainLoop.timingMode;var timingValue=Browser.mainLoop.timingValue;var func=Browser.mainLoop.func;Browser.mainLoop.func=null;setMainLoop(func,0,false,Browser.mainLoop.arg,true);_emscripten_set_main_loop_timing(timingMode,timingValue);Browser.mainLoop.scheduler()},updateStatus(){if(Module["setStatus"]){var message=Module["statusMessage"]||"Please wait...";var remaining=Browser.mainLoop.remainingBlockers;var expected=Browser.mainLoop.expectedBlockers;if(remaining){if(remaining{var canvas=document.createElement("canvas");canvas.width=img.width;canvas.height=img.height;var ctx=canvas.getContext("2d");ctx.drawImage(img,0,0);preloadedImages[name]=canvas;URL.revokeObjectURL(url);onload?.(byteArray)};img.onerror=event=>{err(`Image ${url} could not be decoded`);onerror?.()};img.src=url};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;preloadedAudios[name]=audio;onload?.(byteArray)}var b=new Blob([byteArray],{type:Browser.getMimetype(name)});var url=URL.createObjectURL(b);var audio=new Audio;audio.addEventListener("canplaythrough",()=>finish(audio),false);audio.onerror=function audio_onerror(event){if(done)return;err(`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=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;safeSetTimeout(()=>{finish(audio)},1e4)};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"]||(()=>{});canvas.exitPointerLock=document["exitPointerLock"]||document["mozExitPointerLock"]||document["webkitExitPointerLock"]||document["msExitPointerLock"]||(()=>{});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",ev=>{if(!Browser.pointerLock&&Module["canvas"].requestPointerLock){Module["canvas"].requestPointerLock();ev.preventDefault()}},false)}}},createContext(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,majorVersion:2};if(webGLContextAttributes){for(var attribute in webGLContextAttributes){contextAttributes[attribute]=webGLContextAttributes[attribute]}}if(typeof GL!="undefined"){contextHandle=GL.createContext(canvas,contextAttributes);if(contextHandle){ctx=GL.getContext(contextHandle).GLctx}}}else{ctx=canvas.getContext("2d")}if(!ctx)return null;if(setInModule){Module.ctx=ctx;if(useWebGL)GL.makeContextCurrent(contextHandle);Module.useWebGL=useWebGL;Browser.moduleContextCreatedCallbacks.forEach(callback=>callback());Browser.init()}return ctx},destroyContext(canvas,useWebGL,setInModule){},fullscreenHandlersInstalled:false,lockPointer:undefined,resizeCanvas:undefined,requestFullscreen(lockPointer,resizeCanvas){Browser.lockPointer=lockPointer;Browser.resizeCanvas=resizeCanvas;if(typeof Browser.lockPointer=="undefined")Browser.lockPointer=true;if(typeof Browser.resizeCanvas=="undefined")Browser.resizeCanvas=false;var canvas=Module["canvas"];function fullscreenChange(){Browser.isFullscreen=false;var canvasContainer=canvas.parentNode;if((document["fullscreenElement"]||document["mozFullScreenElement"]||document["msFullscreenElement"]||document["webkitFullscreenElement"]||document["webkitCurrentFullScreenElement"])===canvasContainer){canvas.exitFullscreen=Browser.exitFullscreen;if(Browser.lockPointer)canvas.requestPointerLock();Browser.isFullscreen=true;if(Browser.resizeCanvas){Browser.setFullscreenCanvasSize()}else{Browser.updateCanvasDimensions(canvas)}}else{canvasContainer.parentNode.insertBefore(canvas,canvasContainer);canvasContainer.parentNode.removeChild(canvasContainer);if(Browser.resizeCanvas){Browser.setWindowedCanvasSize()}else{Browser.updateCanvasDimensions(canvas)}}Module["onFullScreen"]?.(Browser.isFullscreen);Module["onFullscreen"]?.(Browser.isFullscreen)}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"]?()=>canvasContainer["webkitRequestFullscreen"](Element["ALLOW_KEYBOARD_INPUT"]):null)||(canvasContainer["webkitRequestFullScreen"]?()=>canvasContainer["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"]):null);canvasContainer.requestFullscreen()},exitFullscreen(){if(!Browser.isFullscreen){return false}var CFS=document["exitFullscreen"]||document["cancelFullScreen"]||document["mozCancelFullScreen"]||document["msExitFullscreen"]||document["webkitCancelFullScreen"]||(()=>{});CFS.apply(document,[]);return true},nextRAF:0,fakeRequestAnimationFrame(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(func){if(typeof requestAnimationFrame=="function"){requestAnimationFrame(func);return}var RAF=Browser.fakeRequestAnimationFrame;RAF(func)},safeSetTimeout(func,timeout){return safeSetTimeout(func,timeout)},safeRequestAnimationFrame(func){return Browser.requestAnimationFrame(()=>{callUserCallback(func)})},getMimetype(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(func){window.getUserMedia||=navigator["getUserMedia"]||navigator["mozGetUserMedia"];window.getUserMedia(func)},getMovementX(event){return event["movementX"]||event["mozMovementX"]||event["webkitMovementX"]||0},getMovementY(event){return event["movementY"]||event["mozMovementY"]||event["webkitMovementY"]||0},getMouseWheelDelta(event){var delta=0;switch(event.type){case"DOMMouseScroll":delta=event.detail/3;break;case"mousewheel":delta=event.wheelDelta/120;break;case"wheel":delta=event.deltaY;switch(event.deltaMode){case 0:delta/=100;break;case 1:delta/=3;break;case 2:delta*=80;break;default:throw"unrecognized mouse wheel delta mode: "+event.deltaMode}break;default:throw"unrecognized mouse wheel event: "+event.type}return delta},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseCoords(pageX,pageY){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;var adjustedX=pageX-(scrollX+rect.left);var adjustedY=pageY-(scrollY+rect.top);adjustedX=adjustedX*(cw/rect.width);adjustedY=adjustedY*(ch/rect.height);return{x:adjustedX,y:adjustedY}},setMouseCoords(pageX,pageY){const{x:x,y:y}=Browser.calculateMouseCoords(pageX,pageY);Browser.mouseMovementX=x-Browser.mouseX;Browser.mouseMovementY=y-Browser.mouseY;Browser.mouseX=x;Browser.mouseY=y},calculateMouseEvent(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)}Browser.mouseX+=Browser.mouseMovementX;Browser.mouseY+=Browser.mouseMovementY}else{if(event.type==="touchstart"||event.type==="touchend"||event.type==="touchmove"){var touch=event.touch;if(touch===undefined){return}var coords=Browser.calculateMouseCoords(touch.pageX,touch.pageY);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];last||=coords;Browser.lastTouches[touch.identifier]=last;Browser.touches[touch.identifier]=coords}return}Browser.setMouseCoords(event.pageX,event.pageY)}},resizeListeners:[],updateResizeListeners(){var canvas=Module["canvas"];Browser.resizeListeners.forEach(listener=>listener(canvas.width,canvas.height))},setCanvasSize(width,height,noUpdates){var canvas=Module["canvas"];Browser.updateCanvasDimensions(canvas,width,height);if(!noUpdates)Browser.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullscreenCanvasSize(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen>>2];flags=flags|8388608;HEAP32[SDL.screen>>2]=flags}Browser.updateCanvasDimensions(Module["canvas"]);Browser.updateResizeListeners()},setWindowedCanvasSize(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen>>2];flags=flags&~8388608;HEAP32[SDL.screen>>2]=flags}Browser.updateCanvasDimensions(Module["canvas"]);Browser.updateResizeListeners()},updateCanvasDimensions(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{Browser.mainLoop.timingMode=mode;Browser.mainLoop.timingValue=value;if(!Browser.mainLoop.func){return 1}if(!Browser.mainLoop.running){Browser.mainLoop.running=true}if(mode==0){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setTimeout(){var timeUntilNextTick=Math.max(0,Browser.mainLoop.tickStartTime+value-_emscripten_get_now())|0;setTimeout(Browser.mainLoop.runner,timeUntilNextTick)};Browser.mainLoop.method="timeout"}else if(mode==1){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_rAF(){Browser.requestAnimationFrame(Browser.mainLoop.runner)};Browser.mainLoop.method="rAF"}else if(mode==2){if(typeof Browser.setImmediate=="undefined"){if(typeof setImmediate=="undefined"){var setImmediates=[];var emscriptenMainLoopMessageId="setimmediate";var Browser_setImmediate_messageHandler=event=>{if(event.data===emscriptenMainLoopMessageId||event.data.target===emscriptenMainLoopMessageId){event.stopPropagation();setImmediates.shift()()}};addEventListener("message",Browser_setImmediate_messageHandler,true);Browser.setImmediate=function Browser_emulated_setImmediate(func){setImmediates.push(func);if(ENVIRONMENT_IS_WORKER){Module["setImmediates"]??=[];Module["setImmediates"].push(func);postMessage({target:emscriptenMainLoopMessageId})}else postMessage(emscriptenMainLoopMessageId,"*")}}else{Browser.setImmediate=setImmediate}}Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setImmediate(){Browser.setImmediate(Browser.mainLoop.runner)};Browser.mainLoop.method="immediate"}return 0};var setMainLoop=(browserIterationFunc,fps,simulateInfiniteLoop,arg,noSetTiming)=>{Browser.mainLoop.func=browserIterationFunc;Browser.mainLoop.arg=arg;var thisMainLoopId=Browser.mainLoop.currentlyRunningMainloop;function checkIsRunning(){if(thisMainLoopId0){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}}Browser.mainLoop.updateStatus();if(!checkIsRunning())return;setTimeout(Browser.mainLoop.runner,0);return}if(!checkIsRunning())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()}Browser.mainLoop.runIter(browserIterationFunc);if(!checkIsRunning())return;if(typeof SDL=="object")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"unwind"}};var _emscripten_set_main_loop=(func,fps,simulateInfiniteLoop)=>{var browserIterationFunc=getWasmTableEntry(func);setMainLoop(browserIterationFunc,fps,simulateInfiniteLoop)};var registerUiEventCallback=(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread)=>{if(!JSEvents.uiEvent)JSEvents.uiEvent=_malloc(36);target=findEventTarget(target);var uiEventHandlerFunc=(e=event)=>{if(e.target!=target){return}var b=document.body;if(!b){return}var uiEvent=JSEvents.uiEvent;HEAP32[uiEvent>>2]=0;HEAP32[uiEvent+4>>2]=b.clientWidth;HEAP32[uiEvent+8>>2]=b.clientHeight;HEAP32[uiEvent+12>>2]=innerWidth;HEAP32[uiEvent+16>>2]=innerHeight;HEAP32[uiEvent+20>>2]=outerWidth;HEAP32[uiEvent+24>>2]=outerHeight;HEAP32[uiEvent+28>>2]=pageXOffset|0;HEAP32[uiEvent+32>>2]=pageYOffset|0;if(getWasmTableEntry(callbackfunc)(eventTypeId,uiEvent,userData))e.preventDefault()};var eventHandler={target:target,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:uiEventHandlerFunc,useCapture:useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)};var _emscripten_set_resize_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>registerUiEventCallback(target,userData,useCapture,callbackfunc,10,"resize",targetThread);var fillVisibilityChangeEventData=eventStruct=>{var visibilityStates=["hidden","visible","prerender","unloaded"];var visibilityState=visibilityStates.indexOf(document.visibilityState);HEAP8[eventStruct]=document.hidden;HEAP32[eventStruct+4>>2]=visibilityState};var registerVisibilityChangeEventCallback=(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread)=>{if(!JSEvents.visibilityChangeEvent)JSEvents.visibilityChangeEvent=_malloc(8);var visibilityChangeEventHandlerFunc=(e=event)=>{var visibilityChangeEvent=JSEvents.visibilityChangeEvent;fillVisibilityChangeEventData(visibilityChangeEvent);if(getWasmTableEntry(callbackfunc)(eventTypeId,visibilityChangeEvent,userData))e.preventDefault()};var eventHandler={target:target,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:visibilityChangeEventHandlerFunc,useCapture:useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)};var _emscripten_set_visibilitychange_callback_on_thread=(userData,useCapture,callbackfunc,targetThread)=>{if(!specialHTMLTargets[1]){return-4}return registerVisibilityChangeEventCallback(specialHTMLTargets[1],userData,useCapture,callbackfunc,21,"visibilitychange",targetThread)};var ENV={};var getExecutableName=()=>thisProgram||"./this.program";var getEnvStrings=()=>{if(!getEnvStrings.strings){var lang=(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8";var env={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:lang,_:getExecutableName()};for(var x in ENV){if(ENV[x]===undefined)delete env[x];else env[x]=ENV[x]}var strings=[];for(var x in env){strings.push(`${x}=${env[x]}`)}getEnvStrings.strings=strings}return getEnvStrings.strings};var stringToAscii=(str,buffer)=>{for(var i=0;i{var bufSize=0;getEnvStrings().forEach((string,i)=>{var ptr=environ_buf+bufSize;HEAPU32[__environ+i*4>>2]=ptr;stringToAscii(string,ptr);bufSize+=string.length+1});return 0};var _environ_sizes_get=(penviron_count,penviron_buf_size)=>{var strings=getEnvStrings();HEAPU32[penviron_count>>2]=strings.length;var bufSize=0;strings.forEach(string=>bufSize+=string.length+1);HEAPU32[penviron_buf_size>>2]=bufSize;return 0};function _fd_close(fd){try{var stream=SYSCALLS.getStreamFromFD(fd);FS.close(stream);return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}function _fd_fdstat_get(fd,pbuf){try{var rightsBase=0;var rightsInheriting=0;var flags=0;{var stream=SYSCALLS.getStreamFromFD(fd);var type=stream.tty?2:FS.isDir(stream.mode)?3:FS.isLink(stream.mode)?7:4}HEAP8[pbuf]=type;HEAP16[pbuf+2>>1]=flags;tempI64=[rightsBase>>>0,(tempDouble=rightsBase,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[pbuf+8>>2]=tempI64[0],HEAP32[pbuf+12>>2]=tempI64[1];tempI64=[rightsInheriting>>>0,(tempDouble=rightsInheriting,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[pbuf+16>>2]=tempI64[0],HEAP32[pbuf+20>>2]=tempI64[1];return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}var doReadv=(stream,iov,iovcnt,offset)=>{var ret=0;for(var i=0;i>2];var len=HEAPU32[iov+4>>2];iov+=8;var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr>2]=num;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}function _fd_seek(fd,offset_low,offset_high,whence,newOffset){var offset=convertI32PairToI53Checked(offset_low,offset_high);try{if(isNaN(offset))return 61;var stream=SYSCALLS.getStreamFromFD(fd);FS.llseek(stream,offset,whence);tempI64=[stream.position>>>0,(tempDouble=stream.position,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[newOffset>>2]=tempI64[0],HEAP32[newOffset+4>>2]=tempI64[1];if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}var doWritev=(stream,iov,iovcnt,offset)=>{var ret=0;for(var i=0;i>2];var len=HEAPU32[iov+4>>2];iov+=8;var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(typeof offset!="undefined"){offset+=curr}}return ret};function _fd_write(fd,iov,iovcnt,pnum){try{var stream=SYSCALLS.getStreamFromFD(fd);var num=doWritev(stream,iov,iovcnt);HEAPU32[pnum>>2]=num;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}var webgl_enable_WEBGL_draw_instanced_base_vertex_base_instance=ctx=>!!(ctx.dibvbi=ctx.getExtension("WEBGL_draw_instanced_base_vertex_base_instance"));var webgl_enable_WEBGL_multi_draw_instanced_base_vertex_base_instance=ctx=>!!(ctx.mdibvbi=ctx.getExtension("WEBGL_multi_draw_instanced_base_vertex_base_instance"));var webgl_enable_WEBGL_multi_draw=ctx=>!!(ctx.multiDrawWebgl=ctx.getExtension("WEBGL_multi_draw"));var getEmscriptenSupportedExtensions=ctx=>{var supportedExtensions=["EXT_color_buffer_float","EXT_conservative_depth","EXT_disjoint_timer_query_webgl2","EXT_texture_norm16","NV_shader_noperspective_interpolation","WEBGL_clip_cull_distance","EXT_color_buffer_half_float","EXT_depth_clamp","EXT_float_blend","EXT_texture_compression_bptc","EXT_texture_compression_rgtc","EXT_texture_filter_anisotropic","KHR_parallel_shader_compile","OES_texture_float_linear","WEBGL_blend_func_extended","WEBGL_compressed_texture_astc","WEBGL_compressed_texture_etc","WEBGL_compressed_texture_etc1","WEBGL_compressed_texture_s3tc","WEBGL_compressed_texture_s3tc_srgb","WEBGL_debug_renderer_info","WEBGL_debug_shaders","WEBGL_lose_context","WEBGL_multi_draw"];return(ctx.getSupportedExtensions()||[]).filter(ext=>supportedExtensions.includes(ext))};var GL={counter:1,buffers:[],programs:[],framebuffers:[],renderbuffers:[],textures:[],shaders:[],vaos:[],contexts:[],offscreenCanvases:{},queries:[],samplers:[],transformFeedbacks:[],syncs:[],stringCache:{},stringiCache:{},unpackAlignment:4,unpackRowLength:0,recordError:errorCode=>{if(!GL.lastError){GL.lastError=errorCode}},getNewId:table=>{var ret=GL.counter++;for(var i=table.length;i{for(var i=0;i>2]=id}},getSource:(shader,count,string,length)=>{var source="";for(var i=0;i>2]:undefined;source+=UTF8ToString(HEAPU32[string+i*4>>2],len)}return source},createContext:(canvas,webGLContextAttributes)=>{if(!canvas.getContextSafariWebGL2Fixed){canvas.getContextSafariWebGL2Fixed=canvas.getContext;function fixedGetContext(ver,attrs){var gl=canvas.getContextSafariWebGL2Fixed(ver,attrs);return ver=="webgl"==gl instanceof WebGLRenderingContext?gl:null}canvas.getContext=fixedGetContext}var ctx=canvas.getContext("webgl2",webGLContextAttributes);if(!ctx)return 0;var handle=GL.registerContext(ctx,webGLContextAttributes);return handle},registerContext:(ctx,webGLContextAttributes)=>{var handle=GL.getNewId(GL.contexts);var context={handle:handle,attributes:webGLContextAttributes,version:webGLContextAttributes.majorVersion,GLctx:ctx};if(ctx.canvas)ctx.canvas.GLctxObject=context;GL.contexts[handle]=context;if(typeof webGLContextAttributes.enableExtensionsByDefault=="undefined"||webGLContextAttributes.enableExtensionsByDefault){GL.initExtensions(context)}return handle},makeContextCurrent:contextHandle=>{GL.currentContext=GL.contexts[contextHandle];Module.ctx=GLctx=GL.currentContext?.GLctx;return!(contextHandle&&!GLctx)},getContext:contextHandle=>GL.contexts[contextHandle],deleteContext:contextHandle=>{if(GL.currentContext===GL.contexts[contextHandle]){GL.currentContext=null}if(typeof JSEvents=="object"){JSEvents.removeAllHandlersOnTarget(GL.contexts[contextHandle].GLctx.canvas)}if(GL.contexts[contextHandle]&&GL.contexts[contextHandle].GLctx.canvas){GL.contexts[contextHandle].GLctx.canvas.GLctxObject=undefined}GL.contexts[contextHandle]=null},initExtensions:context=>{context||=GL.currentContext;if(context.initExtensionsDone)return;context.initExtensionsDone=true;var GLctx=context.GLctx;webgl_enable_WEBGL_draw_instanced_base_vertex_base_instance(GLctx);webgl_enable_WEBGL_multi_draw_instanced_base_vertex_base_instance(GLctx);if(context.version>=2){GLctx.disjointTimerQueryExt=GLctx.getExtension("EXT_disjoint_timer_query_webgl2")}if(context.version<2||!GLctx.disjointTimerQueryExt){GLctx.disjointTimerQueryExt=GLctx.getExtension("EXT_disjoint_timer_query")}webgl_enable_WEBGL_multi_draw(GLctx);getEmscriptenSupportedExtensions(GLctx).forEach(ext=>{if(!ext.includes("lose_context")&&!ext.includes("debug")){GLctx.getExtension(ext)}})}};var _glActiveTexture=x0=>GLctx.activeTexture(x0);var _glAttachShader=(program,shader)=>{GLctx.attachShader(GL.programs[program],GL.shaders[shader])};var _glBindBuffer=(target,buffer)=>{if(target==35051){GLctx.currentPixelPackBufferBinding=buffer}else if(target==35052){GLctx.currentPixelUnpackBufferBinding=buffer}GLctx.bindBuffer(target,GL.buffers[buffer])};var _glBindTexture=(target,texture)=>{GLctx.bindTexture(target,GL.textures[texture])};var _glBindVertexArray=vao=>{GLctx.bindVertexArray(GL.vaos[vao])};var _glBindVertexArrayOES=_glBindVertexArray;var _glBlendEquation=x0=>GLctx.blendEquation(x0);var _glBlendEquationSeparate=(x0,x1)=>GLctx.blendEquationSeparate(x0,x1);var _glBlendFunc=(x0,x1)=>GLctx.blendFunc(x0,x1);var _glBlendFuncSeparate=(x0,x1,x2,x3)=>GLctx.blendFuncSeparate(x0,x1,x2,x3);var _glBufferData=(target,size,data,usage)=>{if(true){if(data&&size){GLctx.bufferData(target,HEAPU8,usage,data,size)}else{GLctx.bufferData(target,size,usage)}return}GLctx.bufferData(target,data?HEAPU8.subarray(data,data+size):size,usage)};var _glBufferSubData=(target,offset,size,data)=>{if(true){size&&GLctx.bufferSubData(target,offset,HEAPU8,data,size);return}GLctx.bufferSubData(target,offset,HEAPU8.subarray(data,data+size))};var _glClear=x0=>GLctx.clear(x0);var _glClearColor=(x0,x1,x2,x3)=>GLctx.clearColor(x0,x1,x2,x3);var _glCompileShader=shader=>{GLctx.compileShader(GL.shaders[shader])};var _glCreateProgram=()=>{var id=GL.getNewId(GL.programs);var program=GLctx.createProgram();program.name=id;program.maxUniformLength=program.maxAttributeLength=program.maxUniformBlockNameLength=0;program.uniformIdCounter=1;GL.programs[id]=program;return id};var _glCreateShader=shaderType=>{var id=GL.getNewId(GL.shaders);GL.shaders[id]=GLctx.createShader(shaderType);return id};var _glDeleteShader=id=>{if(!id)return;var shader=GL.shaders[id];if(!shader){GL.recordError(1281);return}GLctx.deleteShader(shader);GL.shaders[id]=null};var _glDeleteVertexArrays=(n,vaos)=>{for(var i=0;i>2];GLctx.deleteVertexArray(GL.vaos[id]);GL.vaos[id]=null}};var _glDeleteVertexArraysOES=_glDeleteVertexArrays;var _glDetachShader=(program,shader)=>{GLctx.detachShader(GL.programs[program],GL.shaders[shader])};var _glDisable=x0=>GLctx.disable(x0);var _glDrawElements=(mode,count,type,indices)=>{GLctx.drawElements(mode,count,type,indices)};var _glEnable=x0=>GLctx.enable(x0);var _glEnableVertexAttribArray=index=>{GLctx.enableVertexAttribArray(index)};var _glGenBuffers=(n,buffers)=>{GL.genObject(n,buffers,"createBuffer",GL.buffers)};var _glGenTextures=(n,textures)=>{GL.genObject(n,textures,"createTexture",GL.textures)};var _glGenVertexArrays=(n,arrays)=>{GL.genObject(n,arrays,"createVertexArray",GL.vaos)};var _glGenVertexArraysOES=_glGenVertexArrays;var _glGenerateMipmap=x0=>GLctx.generateMipmap(x0);var _glGetAttribLocation=(program,name)=>GLctx.getAttribLocation(GL.programs[program],UTF8ToString(name));var writeI53ToI64=(ptr,num)=>{HEAPU32[ptr>>2]=num;var lower=HEAPU32[ptr>>2];HEAPU32[ptr+4>>2]=(num-lower)/4294967296};var webglGetExtensions=function $webglGetExtensions(){var exts=getEmscriptenSupportedExtensions(GLctx);exts=exts.concat(exts.map(e=>"GL_"+e));return exts};var emscriptenWebGLGet=(name_,p,type)=>{if(!p){GL.recordError(1281);return}var ret=undefined;switch(name_){case 36346:ret=1;break;case 36344:if(type!=0&&type!=1){GL.recordError(1280)}return;case 34814:case 36345:ret=0;break;case 34466:var formats=GLctx.getParameter(34467);ret=formats?formats.length:0;break;case 33309:if(GL.currentContext.version<2){GL.recordError(1282);return}ret=webglGetExtensions().length;break;case 33307:case 33308:if(GL.currentContext.version<2){GL.recordError(1280);return}ret=name_==33307?3:0;break}if(ret===undefined){var result=GLctx.getParameter(name_);switch(typeof result){case"number":ret=result;break;case"boolean":ret=result?1:0;break;case"string":GL.recordError(1280);return;case"object":if(result===null){switch(name_){case 34964:case 35725:case 34965:case 36006:case 36007:case 32873:case 34229:case 36662:case 36663:case 35053:case 35055:case 36010:case 35097:case 35869:case 32874:case 36389:case 35983:case 35368:case 34068:{ret=0;break}default:{GL.recordError(1280);return}}}else if(result instanceof Float32Array||result instanceof Uint32Array||result instanceof Int32Array||result instanceof Array){for(var i=0;i>2]=result[i];break;case 2:HEAPF32[p+i*4>>2]=result[i];break;case 4:HEAP8[p+i]=result[i]?1:0;break}}return}else{try{ret=result.name|0}catch(e){GL.recordError(1280);err(`GL_INVALID_ENUM in glGet${type}v: Unknown object returned from WebGL getParameter(${name_})! (error: ${e})`);return}}break;default:GL.recordError(1280);err(`GL_INVALID_ENUM in glGet${type}v: Native code calling glGet${type}v(${name_}) and it returns ${result} of type ${typeof result}!`);return}}switch(type){case 1:writeI53ToI64(p,ret);break;case 0:HEAP32[p>>2]=ret;break;case 2:HEAPF32[p>>2]=ret;break;case 4:HEAP8[p]=ret?1:0;break}};var _glGetIntegerv=(name_,p)=>emscriptenWebGLGet(name_,p,0);var _glGetProgramInfoLog=(program,maxLength,length,infoLog)=>{var log=GLctx.getProgramInfoLog(GL.programs[program]);if(log===null)log="(unknown error)";var numBytesWrittenExclNull=maxLength>0&&infoLog?stringToUTF8(log,infoLog,maxLength):0;if(length)HEAP32[length>>2]=numBytesWrittenExclNull};var _glGetProgramiv=(program,pname,p)=>{if(!p){GL.recordError(1281);return}if(program>=GL.counter){GL.recordError(1281);return}program=GL.programs[program];if(pname==35716){var log=GLctx.getProgramInfoLog(program);if(log===null)log="(unknown error)";HEAP32[p>>2]=log.length+1}else if(pname==35719){if(!program.maxUniformLength){for(var i=0;i>2]=program.maxUniformLength}else if(pname==35722){if(!program.maxAttributeLength){for(var i=0;i>2]=program.maxAttributeLength}else if(pname==35381){if(!program.maxUniformBlockNameLength){for(var i=0;i>2]=program.maxUniformBlockNameLength}else{HEAP32[p>>2]=GLctx.getProgramParameter(program,pname)}};var _glGetShaderInfoLog=(shader,maxLength,length,infoLog)=>{var log=GLctx.getShaderInfoLog(GL.shaders[shader]);if(log===null)log="(unknown error)";var numBytesWrittenExclNull=maxLength>0&&infoLog?stringToUTF8(log,infoLog,maxLength):0;if(length)HEAP32[length>>2]=numBytesWrittenExclNull};var _glGetShaderiv=(shader,pname,p)=>{if(!p){GL.recordError(1281);return}if(pname==35716){var log=GLctx.getShaderInfoLog(GL.shaders[shader]);if(log===null)log="(unknown error)";var logLength=log?log.length+1:0;HEAP32[p>>2]=logLength}else if(pname==35720){var source=GLctx.getShaderSource(GL.shaders[shader]);var sourceLength=source?source.length+1:0;HEAP32[p>>2]=sourceLength}else{HEAP32[p>>2]=GLctx.getShaderParameter(GL.shaders[shader],pname)}};var jstoi_q=str=>parseInt(str);var webglGetLeftBracePos=name=>name.slice(-1)=="]"&&name.lastIndexOf("[");var webglPrepareUniformLocationsBeforeFirstUse=program=>{var uniformLocsById=program.uniformLocsById,uniformSizeAndIdsByName=program.uniformSizeAndIdsByName,i,j;if(!uniformLocsById){program.uniformLocsById=uniformLocsById={};program.uniformArrayNamesById={};for(i=0;i0?nm.slice(0,lb):nm;var id=program.uniformIdCounter;program.uniformIdCounter+=sz;uniformSizeAndIdsByName[arrayName]=[sz,id];for(j=0;j{name=UTF8ToString(name);if(program=GL.programs[program]){webglPrepareUniformLocationsBeforeFirstUse(program);var uniformLocsById=program.uniformLocsById;var arrayIndex=0;var uniformBaseName=name;var leftBrace=webglGetLeftBracePos(name);if(leftBrace>0){arrayIndex=jstoi_q(name.slice(leftBrace+1))>>>0;uniformBaseName=name.slice(0,leftBrace)}var sizeAndId=program.uniformSizeAndIdsByName[uniformBaseName];if(sizeAndId&&arrayIndexGLctx.isEnabled(x0);var _glIsProgram=program=>{program=GL.programs[program];if(!program)return 0;return GLctx.isProgram(program)};var _glLinkProgram=program=>{program=GL.programs[program];GLctx.linkProgram(program);program.uniformLocsById=0;program.uniformSizeAndIdsByName={}};var _glScissor=(x0,x1,x2,x3)=>GLctx.scissor(x0,x1,x2,x3);var _glShaderSource=(shader,count,string,length)=>{var source=GL.getSource(shader,count,string,length);GLctx.shaderSource(GL.shaders[shader],source)};var computeUnpackAlignedImageSize=(width,height,sizePerPixel)=>{function roundedToNextMultipleOf(x,y){return x+y-1&-y}var plainRowSize=(GL.unpackRowLength||width)*sizePerPixel;var alignedRowSize=roundedToNextMultipleOf(plainRowSize,GL.unpackAlignment);return height*alignedRowSize};var colorChannelsInGlTextureFormat=format=>{var colorChannels={5:3,6:4,8:2,29502:3,29504:4,26917:2,26918:2,29846:3,29847:4};return colorChannels[format-6402]||1};var heapObjectForWebGLType=type=>{type-=5120;if(type==0)return HEAP8;if(type==1)return HEAPU8;if(type==2)return HEAP16;if(type==4)return HEAP32;if(type==6)return HEAPF32;if(type==5||type==28922||type==28520||type==30779||type==30782)return HEAPU32;return HEAPU16};var toTypedArrayIndex=(pointer,heap)=>pointer>>>31-Math.clz32(heap.BYTES_PER_ELEMENT);var emscriptenWebGLGetTexPixelData=(type,format,width,height,pixels,internalFormat)=>{var heap=heapObjectForWebGLType(type);var sizePerPixel=colorChannelsInGlTextureFormat(format)*heap.BYTES_PER_ELEMENT;var bytes=computeUnpackAlignedImageSize(width,height,sizePerPixel);return heap.subarray(toTypedArrayIndex(pixels,heap),toTypedArrayIndex(pixels+bytes,heap))};var _glTexImage2D=(target,level,internalFormat,width,height,border,format,type,pixels)=>{if(true){if(GLctx.currentPixelUnpackBufferBinding){GLctx.texImage2D(target,level,internalFormat,width,height,border,format,type,pixels);return}if(pixels){var heap=heapObjectForWebGLType(type);var index=toTypedArrayIndex(pixels,heap);GLctx.texImage2D(target,level,internalFormat,width,height,border,format,type,heap,index);return}}var pixelData=pixels?emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,internalFormat):null;GLctx.texImage2D(target,level,internalFormat,width,height,border,format,type,pixelData)};var _glTexParameteri=(x0,x1,x2)=>GLctx.texParameteri(x0,x1,x2);var _glTexSubImage2D=(target,level,xoffset,yoffset,width,height,format,type,pixels)=>{if(true){if(GLctx.currentPixelUnpackBufferBinding){GLctx.texSubImage2D(target,level,xoffset,yoffset,width,height,format,type,pixels);return}if(pixels){var heap=heapObjectForWebGLType(type);GLctx.texSubImage2D(target,level,xoffset,yoffset,width,height,format,type,heap,toTypedArrayIndex(pixels,heap));return}}var pixelData=pixels?emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,0):null;GLctx.texSubImage2D(target,level,xoffset,yoffset,width,height,format,type,pixelData)};var webglGetUniformLocation=location=>{var p=GLctx.currentProgram;if(p){var webglLoc=p.uniformLocsById[location];if(typeof webglLoc=="number"){p.uniformLocsById[location]=webglLoc=GLctx.getUniformLocation(p,p.uniformArrayNamesById[location]+(webglLoc>0?`[${webglLoc}]`:""))}return webglLoc}else{GL.recordError(1282)}};var _glUniform1f=(location,v0)=>{GLctx.uniform1f(webglGetUniformLocation(location),v0)};var _glUniform1i=(location,v0)=>{GLctx.uniform1i(webglGetUniformLocation(location),v0)};var _glUniform2f=(location,v0,v1)=>{GLctx.uniform2f(webglGetUniformLocation(location),v0,v1)};var _glUniformMatrix4fv=(location,count,transpose,value)=>{count&&GLctx.uniformMatrix4fv(webglGetUniformLocation(location),!!transpose,HEAPF32,value>>2,count*16)};var _glUseProgram=program=>{program=GL.programs[program];GLctx.useProgram(program);GLctx.currentProgram=program};var _glVertexAttribPointer=(index,size,type,normalized,stride,ptr)=>{GLctx.vertexAttribPointer(index,size,type,!!normalized,stride,ptr)};var _glViewport=(x0,x1,x2,x3)=>GLctx.viewport(x0,x1,x2,x3);function GLFW_Window(id,width,height,framebufferWidth,framebufferHeight,title,monitor,share){this.id=id;this.x=0;this.y=0;this.fullscreen=false;this.storedX=0;this.storedY=0;this.width=width;this.height=height;this.framebufferWidth=framebufferWidth;this.framebufferHeight=framebufferHeight;this.storedWidth=width;this.storedHeight=height;this.title=title;this.monitor=monitor;this.share=share;this.attributes=Object.assign({},GLFW.hints);this.inputModes={208897:212993,208898:0,208899:0};this.buttons=0;this.keys=new Array;this.domKeys=new Array;this.shouldClose=0;this.title=null;this.windowPosFunc=0;this.windowSizeFunc=0;this.windowCloseFunc=0;this.windowRefreshFunc=0;this.windowFocusFunc=0;this.windowIconifyFunc=0;this.windowMaximizeFunc=0;this.framebufferSizeFunc=0;this.windowContentScaleFunc=0;this.mouseButtonFunc=0;this.cursorPosFunc=0;this.cursorEnterFunc=0;this.scrollFunc=0;this.dropFunc=0;this.keyFunc=0;this.charFunc=0;this.userptr=0}var stringToNewUTF8=str=>{var size=lengthBytesUTF8(str)+1;var ret=_malloc(size);if(ret)stringToUTF8(str,ret,size);return ret};var _emscripten_set_window_title=title=>document.title=UTF8ToString(title);var GLFW={WindowFromId:id=>{if(id<=0||!GLFW.windows)return null;return GLFW.windows[id-1]},joystickFunc:0,errorFunc:0,monitorFunc:0,active:null,scale:null,windows:null,monitors:null,monitorString:null,versionString:null,initialTime:null,extensions:null,devicePixelRatioMQL:null,hints:null,primaryTouchId:null,defaultHints:{131073:0,131074:0,131075:1,131076:1,131077:1,131082:0,135169:8,135170:8,135171:8,135172:8,135173:24,135174:8,135175:0,135176:0,135177:0,135178:0,135179:0,135180:0,135181:0,135182:0,135183:0,139265:196609,139266:1,139267:0,139268:0,139269:0,139270:0,139271:0,139272:0,139276:0},DOMToGLFWKeyCode:keycode=>{switch(keycode){case 32:return 32;case 222:return 39;case 188:return 44;case 173:return 45;case 189:return 45;case 190:return 46;case 191:return 47;case 48:return 48;case 49:return 49;case 50:return 50;case 51:return 51;case 52:return 52;case 53:return 53;case 54:return 54;case 55:return 55;case 56:return 56;case 57:return 57;case 59:return 59;case 61:return 61;case 187:return 61;case 65:return 65;case 66:return 66;case 67:return 67;case 68:return 68;case 69:return 69;case 70:return 70;case 71:return 71;case 72:return 72;case 73:return 73;case 74:return 74;case 75:return 75;case 76:return 76;case 77:return 77;case 78:return 78;case 79:return 79;case 80:return 80;case 81:return 81;case 82:return 82;case 83:return 83;case 84:return 84;case 85:return 85;case 86:return 86;case 87:return 87;case 88:return 88;case 89:return 89;case 90:return 90;case 219:return 91;case 220:return 92;case 221:return 93;case 192:return 96;case 27:return 256;case 13:return 257;case 9:return 258;case 8:return 259;case 45:return 260;case 46:return 261;case 39:return 262;case 37:return 263;case 40:return 264;case 38:return 265;case 33:return 266;case 34:return 267;case 36:return 268;case 35:return 269;case 20:return 280;case 145:return 281;case 144:return 282;case 44:return 283;case 19:return 284;case 112:return 290;case 113:return 291;case 114:return 292;case 115:return 293;case 116:return 294;case 117:return 295;case 118:return 296;case 119:return 297;case 120:return 298;case 121:return 299;case 122:return 300;case 123:return 301;case 124:return 302;case 125:return 303;case 126:return 304;case 127:return 305;case 128:return 306;case 129:return 307;case 130:return 308;case 131:return 309;case 132:return 310;case 133:return 311;case 134:return 312;case 135:return 313;case 136:return 314;case 96:return 320;case 97:return 321;case 98:return 322;case 99:return 323;case 100:return 324;case 101:return 325;case 102:return 326;case 103:return 327;case 104:return 328;case 105:return 329;case 110:return 330;case 111:return 331;case 106:return 332;case 109:return 333;case 107:return 334;case 16:return 340;case 17:return 341;case 18:return 342;case 91:return 343;case 224:return 343;case 93:return 348;default:return-1}},getModBits:win=>{var mod=0;if(win.keys[340])mod|=1;if(win.keys[341])mod|=2;if(win.keys[342])mod|=4;if(win.keys[343]||win.keys[348])mod|=8;return mod},onKeyPress:event=>{if(!GLFW.active||!GLFW.active.charFunc)return;if(event.ctrlKey||event.metaKey)return;var charCode=event.charCode;if(charCode==0||charCode>=0&&charCode<=31)return;getWasmTableEntry(GLFW.active.charFunc)(GLFW.active.id,charCode)},onKeyChanged:(keyCode,status)=>{if(!GLFW.active)return;var key=GLFW.DOMToGLFWKeyCode(keyCode);if(key==-1)return;var repeat=status&&GLFW.active.keys[key];GLFW.active.keys[key]=status;GLFW.active.domKeys[keyCode]=status;if(GLFW.active.keyFunc){if(repeat)status=2;getWasmTableEntry(GLFW.active.keyFunc)(GLFW.active.id,key,keyCode,status,GLFW.getModBits(GLFW.active))}},onGamepadConnected:event=>{GLFW.refreshJoysticks()},onGamepadDisconnected:event=>{GLFW.refreshJoysticks()},onKeydown:event=>{GLFW.onKeyChanged(event.keyCode,1);if(event.keyCode===8||event.keyCode===9){event.preventDefault()}},onKeyup:event=>{GLFW.onKeyChanged(event.keyCode,0)},onBlur:event=>{if(!GLFW.active)return;for(var i=0;i{if(!GLFW.active)return;if(event.type==="touchmove"){event.preventDefault();let primaryChanged=false;for(let i of event.changedTouches){if(GLFW.primaryTouchId===i.identifier){Browser.setMouseCoords(i.pageX,i.pageY);primaryChanged=true;break}}if(!primaryChanged){return}}else{Browser.calculateMouseEvent(event)}if(event.target!=Module["canvas"]||!GLFW.active.cursorPosFunc)return;if(GLFW.active.cursorPosFunc){getWasmTableEntry(GLFW.active.cursorPosFunc)(GLFW.active.id,Browser.mouseX,Browser.mouseY)}},DOMToGLFWMouseButton:event=>{var eventButton=event["button"];if(eventButton>0){if(eventButton==1){eventButton=2}else{eventButton=1}}return eventButton},onMouseenter:event=>{if(!GLFW.active)return;if(event.target!=Module["canvas"])return;if(GLFW.active.cursorEnterFunc){getWasmTableEntry(GLFW.active.cursorEnterFunc)(GLFW.active.id,1)}},onMouseleave:event=>{if(!GLFW.active)return;if(event.target!=Module["canvas"])return;if(GLFW.active.cursorEnterFunc){getWasmTableEntry(GLFW.active.cursorEnterFunc)(GLFW.active.id,0)}},onMouseButtonChanged:(event,status)=>{if(!GLFW.active)return;if(event.target!=Module["canvas"])return;const isTouchType=event.type==="touchstart"||event.type==="touchend"||event.type==="touchcancel";let eventButton=0;if(isTouchType){event.preventDefault();let primaryChanged=false;if(GLFW.primaryTouchId===null&&event.type==="touchstart"&&event.targetTouches.length>0){const chosenTouch=event.targetTouches[0];GLFW.primaryTouchId=chosenTouch.identifier;Browser.setMouseCoords(chosenTouch.pageX,chosenTouch.pageY);primaryChanged=true}else if(event.type==="touchend"||event.type==="touchcancel"){for(let i of event.changedTouches){if(GLFW.primaryTouchId===i.identifier){GLFW.primaryTouchId=null;primaryChanged=true;break}}}if(!primaryChanged){return}}else{Browser.calculateMouseEvent(event);eventButton=GLFW.DOMToGLFWMouseButton(event)}if(status==1){GLFW.active.buttons|=1<{if(!GLFW.active)return;GLFW.onMouseButtonChanged(event,1)},onMouseButtonUp:event=>{if(!GLFW.active)return;GLFW.onMouseButtonChanged(event,0)},onMouseWheel:event=>{var delta=-Browser.getMouseWheelDelta(event);delta=delta==0?0:delta>0?Math.max(delta,1):Math.min(delta,-1);GLFW.wheelPos+=delta;if(!GLFW.active||!GLFW.active.scrollFunc||event.target!=Module["canvas"])return;var sx=0;var sy=delta;if(event.type=="mousewheel"){sx=event.wheelDeltaX}else{sx=event.deltaX}getWasmTableEntry(GLFW.active.scrollFunc)(GLFW.active.id,sx,sy);event.preventDefault()},onCanvasResize:(width,height,framebufferWidth,framebufferHeight)=>{if(!GLFW.active)return;var resizeNeeded=false;if(document["fullscreen"]||document["fullScreen"]||document["mozFullScreen"]||document["webkitIsFullScreen"]){if(!GLFW.active.fullscreen){resizeNeeded=width!=screen.width||height!=screen.height;GLFW.active.storedX=GLFW.active.x;GLFW.active.storedY=GLFW.active.y;GLFW.active.storedWidth=GLFW.active.width;GLFW.active.storedHeight=GLFW.active.height;GLFW.active.x=GLFW.active.y=0;GLFW.active.width=screen.width;GLFW.active.height=screen.height;GLFW.active.fullscreen=true}}else if(GLFW.active.fullscreen==true){resizeNeeded=width!=GLFW.active.storedWidth||height!=GLFW.active.storedHeight;GLFW.active.x=GLFW.active.storedX;GLFW.active.y=GLFW.active.storedY;GLFW.active.width=GLFW.active.storedWidth;GLFW.active.height=GLFW.active.storedHeight;GLFW.active.fullscreen=false}if(resizeNeeded){Browser.setCanvasSize(GLFW.active.width,GLFW.active.height)}else if(GLFW.active.width!=width||GLFW.active.height!=height||GLFW.active.framebufferWidth!=framebufferWidth||GLFW.active.framebufferHeight!=framebufferHeight){GLFW.active.width=width;GLFW.active.height=height;GLFW.active.framebufferWidth=framebufferWidth;GLFW.active.framebufferHeight=framebufferHeight;GLFW.onWindowSizeChanged();GLFW.onFramebufferSizeChanged()}},onWindowSizeChanged:()=>{if(!GLFW.active)return;if(GLFW.active.windowSizeFunc){getWasmTableEntry(GLFW.active.windowSizeFunc)(GLFW.active.id,GLFW.active.width,GLFW.active.height)}},onFramebufferSizeChanged:()=>{if(!GLFW.active)return;if(GLFW.active.framebufferSizeFunc){getWasmTableEntry(GLFW.active.framebufferSizeFunc)(GLFW.active.id,GLFW.active.framebufferWidth,GLFW.active.framebufferHeight)}},onWindowContentScaleChanged:scale=>{GLFW.scale=scale;if(!GLFW.active)return;if(GLFW.active.windowContentScaleFunc){getWasmTableEntry(GLFW.active.windowContentScaleFunc)(GLFW.active.id,GLFW.scale,GLFW.scale)}},getTime:()=>_emscripten_get_now()/1e3,setWindowTitle:(winid,title)=>{var win=GLFW.WindowFromId(winid);if(!win)return;win.title=title;if(GLFW.active.id==win.id){_emscripten_set_window_title(title)}},setJoystickCallback:cbfun=>{var prevcbfun=GLFW.joystickFunc;GLFW.joystickFunc=cbfun;GLFW.refreshJoysticks();return prevcbfun},joys:{},lastGamepadState:[],lastGamepadStateFrame:null,refreshJoysticks:()=>{if(Browser.mainLoop.currentFrameNumber!==GLFW.lastGamepadStateFrame||!Browser.mainLoop.currentFrameNumber){GLFW.lastGamepadState=navigator.getGamepads?navigator.getGamepads():navigator.webkitGetGamepads||[];GLFW.lastGamepadStateFrame=Browser.mainLoop.currentFrameNumber;for(var joy=0;joy>2]=gamepad.axes[i]}}else{if(GLFW.joys[joy]){out("glfw joystick disconnected",joy);if(GLFW.joystickFunc){getWasmTableEntry(GLFW.joystickFunc)(joy,262146)}_free(GLFW.joys[joy].id);_free(GLFW.joys[joy].buttons);_free(GLFW.joys[joy].axes);delete GLFW.joys[joy]}}}}},setKeyCallback:(winid,cbfun)=>{var win=GLFW.WindowFromId(winid);if(!win)return null;var prevcbfun=win.keyFunc;win.keyFunc=cbfun;return prevcbfun},setCharCallback:(winid,cbfun)=>{var win=GLFW.WindowFromId(winid);if(!win)return null;var prevcbfun=win.charFunc;win.charFunc=cbfun;return prevcbfun},setMouseButtonCallback:(winid,cbfun)=>{var win=GLFW.WindowFromId(winid);if(!win)return null;var prevcbfun=win.mouseButtonFunc;win.mouseButtonFunc=cbfun;return prevcbfun},setCursorPosCallback:(winid,cbfun)=>{var win=GLFW.WindowFromId(winid);if(!win)return null;var prevcbfun=win.cursorPosFunc;win.cursorPosFunc=cbfun;return prevcbfun},setScrollCallback:(winid,cbfun)=>{var win=GLFW.WindowFromId(winid);if(!win)return null;var prevcbfun=win.scrollFunc;win.scrollFunc=cbfun;return prevcbfun},setDropCallback:(winid,cbfun)=>{var win=GLFW.WindowFromId(winid);if(!win)return null;var prevcbfun=win.dropFunc;win.dropFunc=cbfun;return prevcbfun},onDrop:event=>{if(!GLFW.active||!GLFW.active.dropFunc)return;if(!event.dataTransfer||!event.dataTransfer.files||event.dataTransfer.files.length==0)return;event.preventDefault();var filenames=_malloc(event.dataTransfer.files.length*4);var filenamesArray=[];var count=event.dataTransfer.files.length;var written=0;var drop_dir=".glfw_dropped_files";FS.createPath("/",drop_dir);function save(file){var path="/"+drop_dir+"/"+file.name.replace(/\//g,"_");var reader=new FileReader;reader.onloadend=e=>{if(reader.readyState!=2){++written;out("failed to read dropped file: "+file.name+": "+reader.error);return}var data=e.target.result;FS.writeFile(path,new Uint8Array(data));if(++written===count){getWasmTableEntry(GLFW.active.dropFunc)(GLFW.active.id,count,filenames);for(var i=0;i>2]=filename}for(var i=0;i{if(!GLFW.active||!GLFW.active.dropFunc)return;event.preventDefault();return false},setWindowSizeCallback:(winid,cbfun)=>{var win=GLFW.WindowFromId(winid);if(!win)return null;var prevcbfun=win.windowSizeFunc;win.windowSizeFunc=cbfun;return prevcbfun},setWindowCloseCallback:(winid,cbfun)=>{var win=GLFW.WindowFromId(winid);if(!win)return null;var prevcbfun=win.windowCloseFunc;win.windowCloseFunc=cbfun;return prevcbfun},setWindowRefreshCallback:(winid,cbfun)=>{var win=GLFW.WindowFromId(winid);if(!win)return null;var prevcbfun=win.windowRefreshFunc;win.windowRefreshFunc=cbfun;return prevcbfun},onClickRequestPointerLock:e=>{if(!Browser.pointerLock&&Module["canvas"].requestPointerLock){Module["canvas"].requestPointerLock();e.preventDefault()}},setInputMode:(winid,mode,value)=>{var win=GLFW.WindowFromId(winid);if(!win)return;switch(mode){case 208897:{switch(value){case 212993:{win.inputModes[mode]=value;Module["canvas"].removeEventListener("click",GLFW.onClickRequestPointerLock,true);Module["canvas"].exitPointerLock();break}case 212994:{err("glfwSetInputMode called with GLFW_CURSOR_HIDDEN value not implemented");break}case 212995:{win.inputModes[mode]=value;Module["canvas"].addEventListener("click",GLFW.onClickRequestPointerLock,true);Module["canvas"].requestPointerLock();break}default:{err(`glfwSetInputMode called with unknown value parameter value: ${value}`);break}}break}case 208898:{err("glfwSetInputMode called with GLFW_STICKY_KEYS mode not implemented");break}case 208899:{err("glfwSetInputMode called with GLFW_STICKY_MOUSE_BUTTONS mode not implemented");break}case 208900:{err("glfwSetInputMode called with GLFW_LOCK_KEY_MODS mode not implemented");break}case 3342341:{err("glfwSetInputMode called with GLFW_RAW_MOUSE_MOTION mode not implemented");break}default:{err(`glfwSetInputMode called with unknown mode parameter value: ${mode}`);break}}},getKey:(winid,key)=>{var win=GLFW.WindowFromId(winid);if(!win)return 0;return win.keys[key]},getMouseButton:(winid,button)=>{var win=GLFW.WindowFromId(winid);if(!win)return 0;return(win.buttons&1<0},getCursorPos:(winid,x,y)=>{HEAPF64[x>>3]=Browser.mouseX;HEAPF64[y>>3]=Browser.mouseY},getMousePos:(winid,x,y)=>{HEAP32[x>>2]=Browser.mouseX;HEAP32[y>>2]=Browser.mouseY},setCursorPos:(winid,x,y)=>{},getWindowPos:(winid,x,y)=>{var wx=0;var wy=0;var win=GLFW.WindowFromId(winid);if(win){wx=win.x;wy=win.y}if(x){HEAP32[x>>2]=wx}if(y){HEAP32[y>>2]=wy}},setWindowPos:(winid,x,y)=>{var win=GLFW.WindowFromId(winid);if(!win)return;win.x=x;win.y=y},getWindowSize:(winid,width,height)=>{var ww=0;var wh=0;var win=GLFW.WindowFromId(winid);if(win){ww=win.width;wh=win.height}if(width){HEAP32[width>>2]=ww}if(height){HEAP32[height>>2]=wh}},setWindowSize:(winid,width,height)=>{var win=GLFW.WindowFromId(winid);if(!win)return;if(GLFW.active.id==win.id){Browser.setCanvasSize(width,height)}},defaultWindowHints:()=>{GLFW.hints=Object.assign({},GLFW.defaultHints)},createWindow:(width,height,title,monitor,share)=>{var i,id;for(i=0;i0)throw"glfwCreateWindow only supports one window at time currently";id=i+1;if(width<=0||height<=0)return 0;if(monitor){Browser.requestFullscreen()}else{Browser.setCanvasSize(width,height)}for(i=0;i0;if(i==GLFW.windows.length){if(useWebGL){var contextAttributes={antialias:GLFW.hints[135181]>1,depth:GLFW.hints[135173]>0,stencil:GLFW.hints[135174]>0,alpha:GLFW.hints[135172]>0};Module.ctx=Browser.createContext(Module["canvas"],true,true,contextAttributes)}else{Browser.init()}}if(!Module.ctx&&useWebGL)return 0;const canvas=Module["canvas"];var win=new GLFW_Window(id,canvas.clientWidth,canvas.clientHeight,canvas.width,canvas.height,title,monitor,share);if(id-1==GLFW.windows.length){GLFW.windows.push(win)}else{GLFW.windows[id-1]=win}GLFW.active=win;GLFW.adjustCanvasDimensions();return win.id},destroyWindow:winid=>{var win=GLFW.WindowFromId(winid);if(!win)return;if(win.windowCloseFunc){getWasmTableEntry(win.windowCloseFunc)(win.id)}GLFW.windows[win.id-1]=null;if(GLFW.active.id==win.id)GLFW.active=null;for(var i=0;i{},requestFullscreen(lockPointer,resizeCanvas){Browser.lockPointer=lockPointer;Browser.resizeCanvas=resizeCanvas;if(typeof Browser.lockPointer=="undefined")Browser.lockPointer=true;if(typeof Browser.resizeCanvas=="undefined")Browser.resizeCanvas=false;var canvas=Module["canvas"];function fullscreenChange(){Browser.isFullscreen=false;var canvasContainer=canvas.parentNode;if((document["fullscreenElement"]||document["mozFullScreenElement"]||document["msFullscreenElement"]||document["webkitFullscreenElement"]||document["webkitCurrentFullScreenElement"])===canvasContainer){canvas.exitFullscreen=Browser.exitFullscreen;if(Browser.lockPointer)canvas.requestPointerLock();Browser.isFullscreen=true;if(Browser.resizeCanvas){Browser.setFullscreenCanvasSize()}else{Browser.updateCanvasDimensions(canvas);Browser.updateResizeListeners()}}else{canvasContainer.parentNode.insertBefore(canvas,canvasContainer);canvasContainer.parentNode.removeChild(canvasContainer);if(Browser.resizeCanvas){Browser.setWindowedCanvasSize()}else{Browser.updateCanvasDimensions(canvas);Browser.updateResizeListeners()}}Module["onFullScreen"]?.(Browser.isFullscreen);Module["onFullscreen"]?.(Browser.isFullscreen)}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"]?()=>canvasContainer["webkitRequestFullscreen"](Element["ALLOW_KEYBOARD_INPUT"]):null)||(canvasContainer["webkitRequestFullScreen"]?()=>canvasContainer["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"]):null);canvasContainer.requestFullscreen()},updateCanvasDimensions(canvas,wNative,hNative){const scale=GLFW.getHiDPIScale();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{var win=GLFW.WindowFromId(winid);if(!win)return;const isHiDPIAware=GLFW.isHiDPIAware();win.attributes[attrib]=value;if(isHiDPIAware!==GLFW.isHiDPIAware())GLFW.adjustCanvasDimensions()},getDevicePixelRatio(){return typeof devicePixelRatio=="number"&&devicePixelRatio||1},isHiDPIAware(){if(GLFW.active)return GLFW.active.attributes[139276]>0;else return false},adjustCanvasDimensions(){const canvas=Module["canvas"];Browser.updateCanvasDimensions(canvas,canvas.clientWidth,canvas.clientHeight);Browser.updateResizeListeners()},getHiDPIScale(){return GLFW.isHiDPIAware()?GLFW.scale:1},onDevicePixelRatioChange(){GLFW.onWindowContentScaleChanged(GLFW.getDevicePixelRatio());GLFW.adjustCanvasDimensions()},GLFW2ParamToGLFW3Param:param=>{var table={196609:0,196610:0,196611:0,196612:0,196613:0,196614:0,131073:0,131074:0,131075:0,131076:0,131077:135169,131078:135170,131079:135171,131080:135172,131081:135173,131082:135174,131083:135183,131084:135175,131085:135176,131086:135177,131087:135178,131088:135179,131089:135180,131090:0,131091:135181,131092:139266,131093:139267,131094:139270,131095:139271,131096:139272};return table[param]}};var _glfwCreateStandardCursor=shape=>{};var _glfwCreateWindow=(width,height,title,monitor,share)=>GLFW.createWindow(width,height,title,monitor,share);var _glfwDestroyWindow=winid=>GLFW.destroyWindow(winid);var _glfwFocusWindow=winid=>{};var _glfwGetClipboardString=win=>{};var _glfwGetCurrentContext=()=>GLFW.active?GLFW.active.id:0;var _glfwGetCursorPos=(winid,x,y)=>GLFW.getCursorPos(winid,x,y);var _glfwGetFramebufferSize=(winid,width,height)=>{var ww=0;var wh=0;var win=GLFW.WindowFromId(winid);if(win){ww=win.framebufferWidth;wh=win.framebufferHeight}if(width){HEAP32[width>>2]=ww}if(height){HEAP32[height>>2]=wh}};var _glfwGetInputMode=(winid,mode)=>{var win=GLFW.WindowFromId(winid);if(!win)return;switch(mode){case 208897:{if(Browser.pointerLock){win.inputModes[mode]=212995}else{win.inputModes[mode]=212993}}}return win.inputModes[mode]};var _glfwGetJoystickAxes=(joy,count)=>{GLFW.refreshJoysticks();var state=GLFW.joys[joy];if(!state||!state.axes){HEAP32[count>>2]=0;return}HEAP32[count>>2]=state.axesCount;return state.axes};var _glfwGetJoystickButtons=(joy,count)=>{GLFW.refreshJoysticks();var state=GLFW.joys[joy];if(!state||!state.buttons){HEAP32[count>>2]=0;return}HEAP32[count>>2]=state.buttonsCount;return state.buttons};var _glfwGetKey=(winid,key)=>GLFW.getKey(winid,key);var _glfwGetMonitorContentScale=(monitor,x,y)=>{HEAPF32[x>>2]=GLFW.scale;HEAPF32[y>>2]=GLFW.scale};var _glfwGetMonitorPos=(monitor,x,y)=>{HEAP32[x>>2]=0;HEAP32[y>>2]=0};var _glfwGetMonitorWorkarea=(monitor,x,y,w,h)=>{HEAP32[x>>2]=0;HEAP32[y>>2]=0;HEAP32[w>>2]=screen.availWidth;HEAP32[h>>2]=screen.availHeight};var _glfwGetMonitors=count=>{HEAP32[count>>2]=1;if(!GLFW.monitors){GLFW.monitors=_malloc(4);HEAP32[GLFW.monitors>>2]=1}return GLFW.monitors};var _glfwGetTime=()=>GLFW.getTime()-GLFW.initialTime;var _glfwGetVideoMode=monitor=>0;var _glfwGetWindowAttrib=(winid,attrib)=>{var win=GLFW.WindowFromId(winid);if(!win)return 0;return win.attributes[attrib]};var _glfwGetWindowContentScale=(winid,x,y)=>{HEAPF32[x>>2]=GLFW.scale;HEAPF32[y>>2]=GLFW.scale};var _glfwGetWindowPos=(winid,x,y)=>GLFW.getWindowPos(winid,x,y);var _glfwGetWindowSize=(winid,width,height)=>GLFW.getWindowSize(winid,width,height);var _glfwInit=()=>{if(GLFW.windows)return 1;GLFW.initialTime=GLFW.getTime();GLFW.defaultWindowHints();GLFW.windows=new Array;GLFW.active=null;GLFW.scale=GLFW.getDevicePixelRatio();window.addEventListener("gamepadconnected",GLFW.onGamepadConnected,true);window.addEventListener("gamepaddisconnected",GLFW.onGamepadDisconnected,true);window.addEventListener("keydown",GLFW.onKeydown,true);window.addEventListener("keypress",GLFW.onKeyPress,true);window.addEventListener("keyup",GLFW.onKeyup,true);window.addEventListener("blur",GLFW.onBlur,true);GLFW.devicePixelRatioMQL=window.matchMedia("(resolution: "+GLFW.getDevicePixelRatio()+"dppx)");GLFW.devicePixelRatioMQL.addEventListener("change",GLFW.onDevicePixelRatioChange);Module["canvas"].addEventListener("touchmove",GLFW.onMousemove,true);Module["canvas"].addEventListener("touchstart",GLFW.onMouseButtonDown,true);Module["canvas"].addEventListener("touchcancel",GLFW.onMouseButtonUp,true);Module["canvas"].addEventListener("touchend",GLFW.onMouseButtonUp,true);Module["canvas"].addEventListener("mousemove",GLFW.onMousemove,true);Module["canvas"].addEventListener("mousedown",GLFW.onMouseButtonDown,true);Module["canvas"].addEventListener("mouseup",GLFW.onMouseButtonUp,true);Module["canvas"].addEventListener("wheel",GLFW.onMouseWheel,true);Module["canvas"].addEventListener("mousewheel",GLFW.onMouseWheel,true);Module["canvas"].addEventListener("mouseenter",GLFW.onMouseenter,true);Module["canvas"].addEventListener("mouseleave",GLFW.onMouseleave,true);Module["canvas"].addEventListener("drop",GLFW.onDrop,true);Module["canvas"].addEventListener("dragover",GLFW.onDragover,true);Browser.requestFullscreen=GLFW.requestFullscreen;Browser.calculateMouseCoords=GLFW.calculateMouseCoords;Browser.updateCanvasDimensions=GLFW.updateCanvasDimensions;Browser.resizeListeners.push((width,height)=>{if(GLFW.isHiDPIAware()){var canvas=Module["canvas"];GLFW.onCanvasResize(canvas.clientWidth,canvas.clientHeight,width,height)}else{GLFW.onCanvasResize(width,height,width,height)}});return 1};var _glfwMakeContextCurrent=winid=>{};var _glfwPollEvents=()=>{};var _glfwSetCharCallback=(winid,cbfun)=>GLFW.setCharCallback(winid,cbfun);var _glfwSetClipboardString=(win,string)=>{};var _glfwSetCursor=(winid,cursor)=>{};var _glfwSetCursorEnterCallback=(winid,cbfun)=>{var win=GLFW.WindowFromId(winid);if(!win)return null;var prevcbfun=win.cursorEnterFunc;win.cursorEnterFunc=cbfun;return prevcbfun};var _glfwSetCursorPos=(winid,x,y)=>GLFW.setCursorPos(winid,x,y);var _glfwSetCursorPosCallback=(winid,cbfun)=>GLFW.setCursorPosCallback(winid,cbfun);var _glfwSetDropCallback=(winid,cbfun)=>GLFW.setDropCallback(winid,cbfun);var _glfwSetErrorCallback=cbfun=>{var prevcbfun=GLFW.errorFunc;GLFW.errorFunc=cbfun;return prevcbfun};var _glfwSetInputMode=(winid,mode,value)=>{GLFW.setInputMode(winid,mode,value)};var _glfwSetKeyCallback=(winid,cbfun)=>GLFW.setKeyCallback(winid,cbfun);var _glfwSetMonitorCallback=cbfun=>{var prevcbfun=GLFW.monitorFunc;GLFW.monitorFunc=cbfun;return prevcbfun};var _glfwSetMouseButtonCallback=(winid,cbfun)=>GLFW.setMouseButtonCallback(winid,cbfun);var _glfwSetScrollCallback=(winid,cbfun)=>GLFW.setScrollCallback(winid,cbfun);var _glfwSetWindowCloseCallback=(winid,cbfun)=>GLFW.setWindowCloseCallback(winid,cbfun);var _glfwSetWindowContentScaleCallback=(winid,cbfun)=>{var win=GLFW.WindowFromId(winid);if(!win)return null;var prevcbfun=win.windowContentScaleFunc;win.windowContentScaleFunc=cbfun;return prevcbfun};var _glfwSetWindowFocusCallback=(winid,cbfun)=>{var win=GLFW.WindowFromId(winid);if(!win)return null;var prevcbfun=win.windowFocusFunc;win.windowFocusFunc=cbfun;return prevcbfun};var _glfwSetWindowOpacity=(winid,opacity)=>{};var _glfwSetWindowPos=(winid,x,y)=>GLFW.setWindowPos(winid,x,y);var _glfwSetWindowPosCallback=(winid,cbfun)=>{var win=GLFW.WindowFromId(winid);if(!win)return null;var prevcbfun=win.windowPosFunc;win.windowPosFunc=cbfun;return prevcbfun};var _glfwSetWindowRefreshCallback=(winid,cbfun)=>GLFW.setWindowRefreshCallback(winid,cbfun);var _glfwSetWindowSize=(winid,width,height)=>GLFW.setWindowSize(winid,width,height);var _glfwSetWindowSizeCallback=(winid,cbfun)=>GLFW.setWindowSizeCallback(winid,cbfun);var _glfwSetWindowTitle=(winid,title)=>GLFW.setWindowTitle(winid,title);var _glfwShowWindow=winid=>{};var _glfwSwapBuffers=winid=>GLFW.swapBuffers(winid);var _glfwSwapInterval=interval=>{interval=Math.abs(interval);if(interval==0)_emscripten_set_main_loop_timing(0,0);else _emscripten_set_main_loop_timing(1,interval)};var _glfwTerminate=()=>{window.removeEventListener("gamepadconnected",GLFW.onGamepadConnected,true);window.removeEventListener("gamepaddisconnected",GLFW.onGamepadDisconnected,true);window.removeEventListener("keydown",GLFW.onKeydown,true);window.removeEventListener("keypress",GLFW.onKeyPress,true);window.removeEventListener("keyup",GLFW.onKeyup,true);window.removeEventListener("blur",GLFW.onBlur,true);Module["canvas"].removeEventListener("touchmove",GLFW.onMousemove,true);Module["canvas"].removeEventListener("touchstart",GLFW.onMouseButtonDown,true);Module["canvas"].removeEventListener("touchcancel",GLFW.onMouseButtonUp,true);Module["canvas"].removeEventListener("touchend",GLFW.onMouseButtonUp,true);Module["canvas"].removeEventListener("mousemove",GLFW.onMousemove,true);Module["canvas"].removeEventListener("mousedown",GLFW.onMouseButtonDown,true);Module["canvas"].removeEventListener("mouseup",GLFW.onMouseButtonUp,true);Module["canvas"].removeEventListener("wheel",GLFW.onMouseWheel,true);Module["canvas"].removeEventListener("mousewheel",GLFW.onMouseWheel,true);Module["canvas"].removeEventListener("mouseenter",GLFW.onMouseenter,true);Module["canvas"].removeEventListener("mouseleave",GLFW.onMouseleave,true);Module["canvas"].removeEventListener("drop",GLFW.onDrop,true);Module["canvas"].removeEventListener("dragover",GLFW.onDragover,true);if(GLFW.devicePixelRatioMQL)GLFW.devicePixelRatioMQL.removeEventListener("change",GLFW.onDevicePixelRatioChange);Module["canvas"].width=Module["canvas"].height=1;GLFW.windows=null;GLFW.active=null};var _glfwWaitEvents=()=>{};var _glfwWindowHint=(target,hint)=>{GLFW.hints[target]=hint};var stackAlloc=sz=>__emscripten_stack_alloc(sz);var stringToUTF8OnStack=str=>{var size=lengthBytesUTF8(str)+1;var ret=stackAlloc(size);stringToUTF8(str,ret,size);return ret};var getCFunc=ident=>{var func=Module["_"+ident];return func};var writeArrayToMemory=(array,buffer)=>{HEAP8.set(array,buffer)};var ccall=(ident,returnType,argTypes,args,opts)=>{var toC={string:str=>{var ret=0;if(str!==null&&str!==undefined&&str!==0){ret=stringToUTF8OnStack(str)}return ret},array:arr=>{var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}};function convertReturnValue(ret){if(returnType==="string"){return UTF8ToString(ret)}if(returnType==="boolean")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i(___wasm_call_ctors=wasmExports["Jb"])();var _upload_file_return=Module["_upload_file_return"]=(a0,a1,a2,a3,a4,a5)=>(_upload_file_return=Module["_upload_file_return"]=wasmExports["Kb"])(a0,a1,a2,a3,a4,a5);var _runApp=Module["_runApp"]=()=>(_runApp=Module["_runApp"]=wasmExports["Lb"])();var _main=Module["_main"]=(a0,a1)=>(_main=Module["_main"]=wasmExports["Mb"])(a0,a1);var __Z35ma_device__on_notification_unlockedP9ma_device=Module["__Z35ma_device__on_notification_unlockedP9ma_device"]=a0=>(__Z35ma_device__on_notification_unlockedP9ma_device=Module["__Z35ma_device__on_notification_unlockedP9ma_device"]=wasmExports["Nb"])(a0);var _ma_malloc_emscripten=Module["_ma_malloc_emscripten"]=(a0,a1)=>(_ma_malloc_emscripten=Module["_ma_malloc_emscripten"]=wasmExports["Ob"])(a0,a1);var _ma_free_emscripten=Module["_ma_free_emscripten"]=(a0,a1)=>(_ma_free_emscripten=Module["_ma_free_emscripten"]=wasmExports["Pb"])(a0,a1);var _ma_device_process_pcm_frames_capture__webaudio=Module["_ma_device_process_pcm_frames_capture__webaudio"]=(a0,a1,a2)=>(_ma_device_process_pcm_frames_capture__webaudio=Module["_ma_device_process_pcm_frames_capture__webaudio"]=wasmExports["Qb"])(a0,a1,a2);var _ma_device_process_pcm_frames_playback__webaudio=Module["_ma_device_process_pcm_frames_playback__webaudio"]=(a0,a1,a2)=>(_ma_device_process_pcm_frames_playback__webaudio=Module["_ma_device_process_pcm_frames_playback__webaudio"]=wasmExports["Rb"])(a0,a1,a2);var _malloc=Module["_malloc"]=a0=>(_malloc=Module["_malloc"]=wasmExports["Sb"])(a0);var _free=Module["_free"]=a0=>(_free=Module["_free"]=wasmExports["Tb"])(a0);var __emscripten_stack_restore=a0=>(__emscripten_stack_restore=wasmExports["Vb"])(a0);var __emscripten_stack_alloc=a0=>(__emscripten_stack_alloc=wasmExports["Wb"])(a0);var _emscripten_stack_get_current=()=>(_emscripten_stack_get_current=wasmExports["Xb"])();var ___cxa_is_pointer_type=a0=>(___cxa_is_pointer_type=wasmExports["Yb"])(a0);Module["ccall"]=ccall;var calledRun;dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function callMain(args=[]){var entryFunction=_main;args.unshift(thisProgram);var argc=args.length;var argv=stackAlloc((argc+1)*4);var argv_ptr=argv;args.forEach(arg=>{HEAPU32[argv_ptr>>2]=stringToUTF8OnStack(arg);argv_ptr+=4});HEAPU32[argv_ptr>>2]=0;try{var ret=entryFunction(argc,argv);exitJS(ret,true);return ret}catch(e){return handleException(e)}}function run(args=arguments_){if(runDependencies>0){return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();preMain();Module["onRuntimeInitialized"]?.();if(shouldRunNow)callMain(args);postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}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(); +var Module=typeof Module!="undefined"?Module:{};var ENVIRONMENT_IS_WEB=typeof window=="object";var ENVIRONMENT_IS_WORKER=typeof importScripts=="function";var ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string";if(ENVIRONMENT_IS_NODE){}var moduleOverrides=Object.assign({},Module);var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var readAsync,readBinary;if(ENVIRONMENT_IS_NODE){var fs=require("fs");var nodePath=require("path");scriptDirectory=__dirname+"/";readBinary=filename=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);var ret=fs.readFileSync(filename);return ret};readAsync=(filename,binary=true)=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);return new Promise((resolve,reject)=>{fs.readFile(filename,binary?undefined:"utf8",(err,data)=>{if(err)reject(err);else resolve(binary?data.buffer:data)})})};if(!Module["thisProgram"]&&process.argv.length>1){thisProgram=process.argv[1].replace(/\\/g,"/")}arguments_=process.argv.slice(2);if(typeof module!="undefined"){module["exports"]=Module}process.on("uncaughtException",ex=>{if(ex!=="unwind"&&!(ex instanceof ExitStatus)&&!(ex.context instanceof ExitStatus)){throw ex}});quit_=(status,toThrow)=>{process.exitCode=status;throw toThrow}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(scriptDirectory.startsWith("blob:")){scriptDirectory=""}else{scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}{if(ENVIRONMENT_IS_WORKER){readBinary=url=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=url=>{if(isFileURI(url)){return new Promise((reject,resolve)=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=()=>{if(xhr.status==200||xhr.status==0&&xhr.response){resolve(xhr.response)}reject(xhr.status)};xhr.onerror=reject;xhr.send(null)})}return fetch(url,{credentials:"same-origin"}).then(response=>{if(response.ok){return response.arrayBuffer()}return Promise.reject(new Error(response.status+" : "+response.url))})}}}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.error.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"];var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];var wasmMemory;var ABORT=false;var EXITSTATUS;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateMemoryViews(){var b=wasmMemory.buffer;Module["HEAP8"]=HEAP8=new Int8Array(b);Module["HEAP16"]=HEAP16=new Int16Array(b);Module["HEAPU8"]=HEAPU8=new Uint8Array(b);Module["HEAPU16"]=HEAPU16=new Uint16Array(b);Module["HEAP32"]=HEAP32=new Int32Array(b);Module["HEAPU32"]=HEAPU32=new Uint32Array(b);Module["HEAPF32"]=HEAPF32=new Float32Array(b);Module["HEAPF64"]=HEAPF64=new Float64Array(b)}var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;if(!Module["noFSInit"]&&!FS.init.initialized)FS.init();FS.ignorePermissions=false;TTY.init();callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;Module["monitorRunDependencies"]?.(runDependencies)}function removeRunDependency(id){runDependencies--;Module["monitorRunDependencies"]?.(runDependencies);if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}function abort(what){Module["onAbort"]?.(what);what="Aborted("+what+")";err(what);ABORT=true;EXITSTATUS=1;what+=". Build with -sASSERTIONS for more info.";var e=new WebAssembly.RuntimeError(what);throw e}var dataURIPrefix="data:application/octet-stream;base64,";var isDataURI=filename=>filename.startsWith(dataURIPrefix);var isFileURI=filename=>filename.startsWith("file://");function findWasmBinary(){var f="MegaBoy.wasm";if(!isDataURI(f)){return locateFile(f)}return f}var wasmBinaryFile;function getBinarySync(file){if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(file)}throw"both async and sync fetching of the wasm failed"}function getBinaryPromise(binaryFile){if(!wasmBinary){return readAsync(binaryFile).then(response=>new Uint8Array(response),()=>getBinarySync(binaryFile))}return Promise.resolve().then(()=>getBinarySync(binaryFile))}function instantiateArrayBuffer(binaryFile,imports,receiver){return getBinaryPromise(binaryFile).then(binary=>WebAssembly.instantiate(binary,imports)).then(receiver,reason=>{err(`failed to asynchronously prepare wasm: ${reason}`);abort(reason)})}function instantiateAsync(binary,binaryFile,imports,callback){if(!binary&&typeof WebAssembly.instantiateStreaming=="function"&&!isDataURI(binaryFile)&&!isFileURI(binaryFile)&&!ENVIRONMENT_IS_NODE&&typeof fetch=="function"){return fetch(binaryFile,{credentials:"same-origin"}).then(response=>{var result=WebAssembly.instantiateStreaming(response,imports);return result.then(callback,function(reason){err(`wasm streaming compile failed: ${reason}`);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(binaryFile,imports,callback)})})}return instantiateArrayBuffer(binaryFile,imports,callback)}function getWasmImports(){return{a:wasmImports}}function createWasm(){var info=getWasmImports();function receiveInstance(instance,module){wasmExports=instance.exports;wasmMemory=wasmExports["Jb"];updateMemoryViews();wasmTable=wasmExports["Vb"];addOnInit(wasmExports["Kb"]);removeRunDependency("wasm-instantiate");return wasmExports}addRunDependency("wasm-instantiate");function receiveInstantiationResult(result){receiveInstance(result["instance"])}if(Module["instantiateWasm"]){try{return Module["instantiateWasm"](info,receiveInstance)}catch(e){err(`Module.instantiateWasm callback failed with error: ${e}`);return false}}if(!wasmBinaryFile)wasmBinaryFile=findWasmBinary();instantiateAsync(wasmBinary,wasmBinaryFile,info,receiveInstantiationResult);return{}}var tempDouble;var tempI64;var ASM_CONSTS={154944:()=>window.screen.width*window.devicePixelRatio,155002:()=>window.screen.height*window.devicePixelRatio,155061:()=>window.devicePixelRatio,155097:()=>window.devicePixelRatio,155133:()=>window.innerWidth,155163:()=>window.innerHeight,155194:()=>{FS.mkdir("/data");FS.mount(IDBFS,{autoPersist:true},"/data");FS.syncfs(true,function(err){if(err!=null){console.log(err)}FS.mkdir("/batterySaves");FS.mount(IDBFS,{autoPersist:true},"/batterySaves");FS.syncfs(true,function(err){if(err!=null){console.log(err)}});Module.ccall("runApp",null,[],[])})},155538:($0,$1,$2,$3,$4)=>{if(typeof window==="undefined"||(window.AudioContext||window.webkitAudioContext)===undefined){return 0}if(typeof window.miniaudio==="undefined"){window.miniaudio={referenceCount:0};window.miniaudio.device_type={};window.miniaudio.device_type.playback=$0;window.miniaudio.device_type.capture=$1;window.miniaudio.device_type.duplex=$2;window.miniaudio.device_state={};window.miniaudio.device_state.stopped=$3;window.miniaudio.device_state.started=$4;miniaudio.devices=[];miniaudio.track_device=function(device){for(var iDevice=0;iDevice0){if(miniaudio.devices[miniaudio.devices.length-1]==null){miniaudio.devices.pop()}else{break}}};miniaudio.untrack_device=function(device){for(var iDevice=0;iDevice{Module._ma_device__on_notification_unlocked(device.pDevice)},error=>{console.error("Failed to resume audiocontext",error)})}}miniaudio.unlock_event_types.map(function(event_type){document.removeEventListener(event_type,miniaudio.unlock,true)})};miniaudio.unlock_event_types.map(function(event_type){document.addEventListener(event_type,miniaudio.unlock,true)})}window.miniaudio.referenceCount+=1;return 1},157696:()=>{if(typeof window.miniaudio!=="undefined"){window.miniaudio.referenceCount-=1;if(window.miniaudio.referenceCount===0){delete window.miniaudio}}},157860:()=>navigator.mediaDevices!==undefined&&navigator.mediaDevices.getUserMedia!==undefined,157964:()=>{try{var temp=new(window.AudioContext||window.webkitAudioContext);var sampleRate=temp.sampleRate;temp.close();return sampleRate}catch(e){return 0}},158135:($0,$1,$2,$3,$4,$5)=>{var deviceType=$0;var channels=$1;var sampleRate=$2;var bufferSize=$3;var pIntermediaryBuffer=$4;var pDevice=$5;if(typeof window.miniaudio==="undefined"){return-1}var device={};var audioContextOptions={};if(deviceType==window.miniaudio.device_type.playback&&sampleRate!=0){audioContextOptions.sampleRate=sampleRate}device.webaudio=new(window.AudioContext||window.webkitAudioContext)(audioContextOptions);device.webaudio.suspend();device.state=window.miniaudio.device_state.stopped;var channelCountIn=0;var channelCountOut=channels;if(deviceType!=window.miniaudio.device_type.playback){channelCountIn=channels}device.scriptNode=device.webaudio.createScriptProcessor(bufferSize,channelCountIn,channelCountOut);device.scriptNode.onaudioprocess=function(e){if(device.intermediaryBufferView==null||device.intermediaryBufferView.length==0){device.intermediaryBufferView=new Float32Array(Module.HEAPF32.buffer,pIntermediaryBuffer,bufferSize*channels)}if(deviceType==miniaudio.device_type.capture||deviceType==miniaudio.device_type.duplex){for(var iChannel=0;iChannelminiaudio.get_device_by_index($0).webaudio.sampleRate,161029:$0=>{var device=miniaudio.get_device_by_index($0);if(device.scriptNode!==undefined){device.scriptNode.onaudioprocess=function(e){};device.scriptNode.disconnect();device.scriptNode=undefined}if(device.streamNode!==undefined){device.streamNode.disconnect();device.streamNode=undefined}device.webaudio.close();device.webaudio=undefined;device.pDevice=undefined},161422:$0=>{miniaudio.untrack_device_by_index($0)},161465:$0=>{var device=miniaudio.get_device_by_index($0);device.webaudio.resume();device.state=miniaudio.device_state.started},161590:$0=>{var device=miniaudio.get_device_by_index($0);device.webaudio.suspend();device.state=miniaudio.device_state.stopped}};function upload(accept_types,callback,callback_data){globalThis["open_file"]=function(e){const file_reader=new FileReader;file_reader.onload=event=>{const uint8Arr=new Uint8Array(event.target.result);const data_ptr=Module["_malloc"](uint8Arr.length);const data_on_heap=new Uint8Array(Module["HEAPU8"].buffer,data_ptr,uint8Arr.length);data_on_heap.set(uint8Arr);Module["ccall"]("upload_file_return","number",["string","string","number","number","number","number"],[event.target.filename,event.target.mime_type,data_on_heap.byteOffset,uint8Arr.length,callback,callback_data]);Module["_free"](data_ptr)};file_reader.filename=e.target.files[0].name;file_reader.mime_type=e.target.files[0].type;file_reader.readAsArrayBuffer(e.target.files[0])};var file_selector=document.createElement("input");file_selector.setAttribute("type","file");file_selector.setAttribute("onchange",'globalThis["open_file"](event)');file_selector.style.outline="none";file_selector.addEventListener("cancel",()=>{Module["ccall"]("upload_file_return","number",["string","string","number","number","number","number"],["","",0,0,callback,callback_data])});file_selector.setAttribute("accept",UTF8ToString(accept_types));var is_safari=/^((?!chrome|android).)*safari/i.test(navigator.userAgent);if(is_safari){var dialog=document.createElement("dialog");dialog.setAttribute("id","EmJsFileDialog");file_selector.setAttribute("onclick",'var dg = document.getElementById("EmJsFileDialog"); dg.close(); dg.remove()');dialog.appendChild(file_selector);var cancel_button=document.createElement("button");cancel_button.textContent="Cancel";cancel_button.setAttribute("onclick",'var dg = document.getElementById("EmJsFileDialog"); dg.close(); dg.remove()');var lineBreak=document.createElement("br");dialog.appendChild(lineBreak);dialog.appendChild(cancel_button);document.body.append(dialog);dialog.showModal()}else{file_selector.click()}}function download(filename,mime_type,buffer,buffer_size){var a=document.createElement("a");a.download=UTF8ToString(filename);a.href=URL.createObjectURL(new Blob([new Uint8Array(Module["HEAPU8"].buffer,buffer,buffer_size)],{type:UTF8ToString(mime_type)}));a.click()}function ImGui_ImplGlfw_EmscriptenOpenURL(url){url=url?UTF8ToString(url):null;if(url)window.open(url,"_blank")}function ExitStatus(status){this.name="ExitStatus";this.message=`Program terminated with exit(${status})`;this.status=status}var callRuntimeCallbacks=callbacks=>{while(callbacks.length>0){callbacks.shift()(Module)}};var noExitRuntime=Module["noExitRuntime"]||true;var stackRestore=val=>__emscripten_stack_restore(val);var stackSave=()=>_emscripten_stack_get_current();class ExceptionInfo{constructor(excPtr){this.excPtr=excPtr;this.ptr=excPtr-24}set_type(type){HEAPU32[this.ptr+4>>2]=type}get_type(){return HEAPU32[this.ptr+4>>2]}set_destructor(destructor){HEAPU32[this.ptr+8>>2]=destructor}get_destructor(){return HEAPU32[this.ptr+8>>2]}set_caught(caught){caught=caught?1:0;HEAP8[this.ptr+12]=caught}get_caught(){return HEAP8[this.ptr+12]!=0}set_rethrown(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+13]=rethrown}get_rethrown(){return HEAP8[this.ptr+13]!=0}init(type,destructor){this.set_adjusted_ptr(0);this.set_type(type);this.set_destructor(destructor)}set_adjusted_ptr(adjustedPtr){HEAPU32[this.ptr+16>>2]=adjustedPtr}get_adjusted_ptr(){return HEAPU32[this.ptr+16>>2]}get_exception_ptr(){var isPointer=___cxa_is_pointer_type(this.get_type());if(isPointer){return HEAPU32[this.excPtr>>2]}var adjusted=this.get_adjusted_ptr();if(adjusted!==0)return adjusted;return this.excPtr}}var exceptionLast=0;var uncaughtExceptionCount=0;var ___cxa_throw=(ptr,type,destructor)=>{var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;uncaughtExceptionCount++;throw exceptionLast};var PATH={isAbs:path=>path.charAt(0)==="/",splitPath:filename=>{var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)},normalizeArray:(parts,allowAboveRoot)=>{var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts},normalize:path=>{var isAbsolute=PATH.isAbs(path),trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter(p=>!!p),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path},dirname:path=>{var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir},basename:path=>{if(path==="/")return"/";path=PATH.normalize(path);path=path.replace(/\/$/,"");var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)},join:(...paths)=>PATH.normalize(paths.join("/")),join2:(l,r)=>PATH.normalize(l+"/"+r)};var initRandomFill=()=>{if(typeof crypto=="object"&&typeof crypto["getRandomValues"]=="function"){return view=>crypto.getRandomValues(view)}else if(ENVIRONMENT_IS_NODE){try{var crypto_module=require("crypto");var randomFillSync=crypto_module["randomFillSync"];if(randomFillSync){return view=>crypto_module["randomFillSync"](view)}var randomBytes=crypto_module["randomBytes"];return view=>(view.set(randomBytes(view.byteLength)),view)}catch(e){}}abort("initRandomDevice")};var randomFill=view=>(randomFill=initRandomFill())(view);var PATH_FS={resolve:(...args)=>{var resolvedPath="",resolvedAbsolute=false;for(var i=args.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?args[i]:FS.cwd();if(typeof path!="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=PATH.isAbs(path)}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter(p=>!!p),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."},relative:(from,to)=>{from=PATH_FS.resolve(from).substr(1);to=PATH_FS.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i{var endIdx=idx+maxBytesToRead;var endPtr=idx;while(heapOrArray[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&heapOrArray.buffer&&UTF8Decoder){return UTF8Decoder.decode(heapOrArray.subarray(idx,endPtr))}var str="";while(idx>10,56320|ch&1023)}}return str};var FS_stdin_getChar_buffer=[];var lengthBytesUTF8=str=>{var len=0;for(var i=0;i=55296&&c<=57343){len+=4;++i}else{len+=3}}return len};var stringToUTF8Array=(str,heap,outIdx,maxBytesToWrite)=>{if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx};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}var FS_stdin_getChar=()=>{if(!FS_stdin_getChar_buffer.length){var result=null;if(ENVIRONMENT_IS_NODE){var BUFSIZE=256;var buf=Buffer.alloc(BUFSIZE);var bytesRead=0;var fd=process.stdin.fd;try{bytesRead=fs.readSync(fd,buf,0,BUFSIZE)}catch(e){if(e.toString().includes("EOF"))bytesRead=0;else throw e}if(bytesRead>0){result=buf.slice(0,bytesRead).toString("utf-8")}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else{}if(!result){return null}FS_stdin_getChar_buffer=intArrayFromString(result,true)}return FS_stdin_getChar_buffer.shift()};var TTY={ttys:[],init(){},shutdown(){},register(dev,ops){TTY.ttys[dev]={input:[],output:[],ops:ops};FS.registerDevice(dev,TTY.stream_ops)},stream_ops:{open(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(43)}stream.tty=tty;stream.seekable=false},close(stream){stream.tty.ops.fsync(stream.tty)},fsync(stream){stream.tty.ops.fsync(stream.tty)},read(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.get_char){throw new FS.ErrnoError(60)}var bytesRead=0;for(var i=0;i0){out(UTF8ArrayToString(tty.output,0));tty.output=[]}},ioctl_tcgets(tty){return{c_iflag:25856,c_oflag:5,c_cflag:191,c_lflag:35387,c_cc:[3,28,127,21,4,0,1,0,17,19,26,0,18,15,23,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]}},ioctl_tcsets(tty,optional_actions,data){return 0},ioctl_tiocgwinsz(tty){return[24,80]}},default_tty1_ops:{put_char(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},fsync(tty){if(tty.output&&tty.output.length>0){err(UTF8ArrayToString(tty.output,0));tty.output=[]}}}};var mmapAlloc=size=>{abort()};var MEMFS={ops_table:null,mount(mount){return MEMFS.createNode(null,"/",16384|511,0)},createNode(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(63)}MEMFS.ops_table||={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}};var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node;parent.timestamp=node.timestamp}return node},getFileDataAsTypedArray(node){if(!node.contents)return new Uint8Array(0);if(node.contents.subarray)return node.contents.subarray(0,node.usedBytes);return new Uint8Array(node.contents)},expandFileStorage(node,newCapacity){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity>>0);if(prevCapacity!=0)newCapacity=Math.max(newCapacity,256);var oldContents=node.contents;node.contents=new Uint8Array(newCapacity);if(node.usedBytes>0)node.contents.set(oldContents.subarray(0,node.usedBytes),0)},resizeFileStorage(node,newSize){if(node.usedBytes==newSize)return;if(newSize==0){node.contents=null;node.usedBytes=0}else{var oldContents=node.contents;node.contents=new Uint8Array(newSize);if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize}},node_ops:{getattr(node){var attr={};attr.dev=FS.isChrdev(node.mode)?node.id:1;attr.ino=node.id;attr.mode=node.mode;attr.nlink=1;attr.uid=0;attr.gid=0;attr.rdev=node.rdev;if(FS.isDir(node.mode)){attr.size=4096}else if(FS.isFile(node.mode)){attr.size=node.usedBytes}else if(FS.isLink(node.mode)){attr.size=node.link.length}else{attr.size=0}attr.atime=new Date(node.timestamp);attr.mtime=new Date(node.timestamp);attr.ctime=new Date(node.timestamp);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr},setattr(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}},lookup(parent,name){throw FS.genericErrors[44]},mknod(parent,name,mode,dev){return MEMFS.createNode(parent,name,mode,dev)},rename(old_node,new_dir,new_name){if(FS.isDir(old_node.mode)){var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(new_node){for(var i in new_node.contents){throw new FS.ErrnoError(55)}}}delete old_node.parent.contents[old_node.name];old_node.parent.timestamp=Date.now();old_node.name=new_name;new_dir.contents[new_name]=old_node;new_dir.timestamp=old_node.parent.timestamp},unlink(parent,name){delete parent.contents[name];parent.timestamp=Date.now()},rmdir(parent,name){var node=FS.lookupNode(parent,name);for(var i in node.contents){throw new FS.ErrnoError(55)}delete parent.contents[name];parent.timestamp=Date.now()},readdir(node){var entries=[".",".."];for(var key of Object.keys(node.contents)){entries.push(key)}return entries},symlink(parent,newname,oldpath){var node=MEMFS.createNode(parent,newname,511|40960,0);node.link=oldpath;return node},readlink(node){if(!FS.isLink(node.mode)){throw new FS.ErrnoError(28)}return node.link}},stream_ops:{read(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+length{var dep=!noRunDep?getUniqueRunDependency(`al ${url}`):"";readAsync(url).then(arrayBuffer=>{onload(new Uint8Array(arrayBuffer));if(dep)removeRunDependency(dep)},err=>{if(onerror){onerror()}else{throw`Loading data file "${url}" failed.`}});if(dep)addRunDependency(dep)};var FS_createDataFile=(parent,name,fileData,canRead,canWrite,canOwn)=>{FS.createDataFile(parent,name,fileData,canRead,canWrite,canOwn)};var preloadPlugins=Module["preloadPlugins"]||[];var FS_handledByPreloadPlugin=(byteArray,fullname,finish,onerror)=>{if(typeof Browser!="undefined")Browser.init();var handled=false;preloadPlugins.forEach(plugin=>{if(handled)return;if(plugin["canHandle"](fullname)){plugin["handle"](byteArray,fullname,finish,onerror);handled=true}});return handled};var FS_createPreloadedFile=(parent,name,url,canRead,canWrite,onload,onerror,dontCreateFile,canOwn,preFinish)=>{var fullname=name?PATH_FS.resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency(`cp ${fullname}`);function processData(byteArray){function finish(byteArray){preFinish?.();if(!dontCreateFile){FS_createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}onload?.();removeRunDependency(dep)}if(FS_handledByPreloadPlugin(byteArray,fullname,finish,()=>{onerror?.();removeRunDependency(dep)})){return}finish(byteArray)}addRunDependency(dep);if(typeof url=="string"){asyncLoad(url,processData,onerror)}else{processData(url)}};var FS_modeStringToFlags=str=>{var flagModes={r:0,"r+":2,w:512|64|1,"w+":512|64|2,a:1024|64|1,"a+":1024|64|2};var flags=flagModes[str];if(typeof flags=="undefined"){throw new Error(`Unknown file open mode: ${str}`)}return flags};var FS_getMode=(canRead,canWrite)=>{var mode=0;if(canRead)mode|=292|73;if(canWrite)mode|=146;return mode};var IDBFS={dbs:{},indexedDB:()=>{if(typeof indexedDB!="undefined")return indexedDB;var ret=null;if(typeof window=="object")ret=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB;return ret},DB_VERSION:21,DB_STORE_NAME:"FILE_DATA",queuePersist:mount=>{function onPersistComplete(){if(mount.idbPersistState==="again")startPersist();else mount.idbPersistState=0}function startPersist(){mount.idbPersistState="idb";IDBFS.syncfs(mount,false,onPersistComplete)}if(!mount.idbPersistState){mount.idbPersistState=setTimeout(startPersist,0)}else if(mount.idbPersistState==="idb"){mount.idbPersistState="again"}},mount:mount=>{var mnt=MEMFS.mount(mount);if(mount?.opts?.autoPersist){mnt.idbPersistState=0;var memfs_node_ops=mnt.node_ops;mnt.node_ops=Object.assign({},mnt.node_ops);mnt.node_ops.mknod=(parent,name,mode,dev)=>{var node=memfs_node_ops.mknod(parent,name,mode,dev);node.node_ops=mnt.node_ops;node.idbfs_mount=mnt.mount;node.memfs_stream_ops=node.stream_ops;node.stream_ops=Object.assign({},node.stream_ops);node.stream_ops.write=(stream,buffer,offset,length,position,canOwn)=>{stream.node.isModified=true;return node.memfs_stream_ops.write(stream,buffer,offset,length,position,canOwn)};node.stream_ops.close=stream=>{var n=stream.node;if(n.isModified){IDBFS.queuePersist(n.idbfs_mount);n.isModified=false}if(n.memfs_stream_ops.close)return n.memfs_stream_ops.close(stream)};return node};mnt.node_ops.mkdir=(...args)=>(IDBFS.queuePersist(mnt.mount),memfs_node_ops.mkdir(...args));mnt.node_ops.rmdir=(...args)=>(IDBFS.queuePersist(mnt.mount),memfs_node_ops.rmdir(...args));mnt.node_ops.symlink=(...args)=>(IDBFS.queuePersist(mnt.mount),memfs_node_ops.symlink(...args));mnt.node_ops.unlink=(...args)=>(IDBFS.queuePersist(mnt.mount),memfs_node_ops.unlink(...args));mnt.node_ops.rename=(...args)=>(IDBFS.queuePersist(mnt.mount),memfs_node_ops.rename(...args))}return mnt},syncfs:(mount,populate,callback)=>{IDBFS.getLocalSet(mount,(err,local)=>{if(err)return callback(err);IDBFS.getRemoteSet(mount,(err,remote)=>{if(err)return callback(err);var src=populate?remote:local;var dst=populate?local:remote;IDBFS.reconcile(src,dst,callback)})})},quit:()=>{Object.values(IDBFS.dbs).forEach(value=>value.close());IDBFS.dbs={}},getDB:(name,callback)=>{var db=IDBFS.dbs[name];if(db){return callback(null,db)}var req;try{req=IDBFS.indexedDB().open(name,IDBFS.DB_VERSION)}catch(e){return callback(e)}if(!req){return callback("Unable to connect to IndexedDB")}req.onupgradeneeded=e=>{var db=e.target.result;var transaction=e.target.transaction;var fileStore;if(db.objectStoreNames.contains(IDBFS.DB_STORE_NAME)){fileStore=transaction.objectStore(IDBFS.DB_STORE_NAME)}else{fileStore=db.createObjectStore(IDBFS.DB_STORE_NAME)}if(!fileStore.indexNames.contains("timestamp")){fileStore.createIndex("timestamp","timestamp",{unique:false})}};req.onsuccess=()=>{db=req.result;IDBFS.dbs[name]=db;callback(null,db)};req.onerror=e=>{callback(e.target.error);e.preventDefault()}},getLocalSet:(mount,callback)=>{var entries={};function isRealDir(p){return p!=="."&&p!==".."}function toAbsolute(root){return p=>PATH.join2(root,p)}var check=FS.readdir(mount.mountpoint).filter(isRealDir).map(toAbsolute(mount.mountpoint));while(check.length){var path=check.pop();var stat;try{stat=FS.stat(path)}catch(e){return callback(e)}if(FS.isDir(stat.mode)){check.push(...FS.readdir(path).filter(isRealDir).map(toAbsolute(path)))}entries[path]={timestamp:stat.mtime}}return callback(null,{type:"local",entries:entries})},getRemoteSet:(mount,callback)=>{var entries={};IDBFS.getDB(mount.mountpoint,(err,db)=>{if(err)return callback(err);try{var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readonly");transaction.onerror=e=>{callback(e.target.error);e.preventDefault()};var store=transaction.objectStore(IDBFS.DB_STORE_NAME);var index=store.index("timestamp");index.openKeyCursor().onsuccess=event=>{var cursor=event.target.result;if(!cursor){return callback(null,{type:"remote",db:db,entries:entries})}entries[cursor.primaryKey]={timestamp:cursor.key};cursor.continue()}}catch(e){return callback(e)}})},loadLocalEntry:(path,callback)=>{var stat,node;try{var lookup=FS.lookupPath(path);node=lookup.node;stat=FS.stat(path)}catch(e){return callback(e)}if(FS.isDir(stat.mode)){return callback(null,{timestamp:stat.mtime,mode:stat.mode})}else if(FS.isFile(stat.mode)){node.contents=MEMFS.getFileDataAsTypedArray(node);return callback(null,{timestamp:stat.mtime,mode:stat.mode,contents:node.contents})}else{return callback(new Error("node type not supported"))}},storeLocalEntry:(path,entry,callback)=>{try{if(FS.isDir(entry["mode"])){FS.mkdirTree(path,entry["mode"])}else if(FS.isFile(entry["mode"])){FS.writeFile(path,entry["contents"],{canOwn:true})}else{return callback(new Error("node type not supported"))}FS.chmod(path,entry["mode"]);FS.utime(path,entry["timestamp"],entry["timestamp"])}catch(e){return callback(e)}callback(null)},removeLocalEntry:(path,callback)=>{try{var stat=FS.stat(path);if(FS.isDir(stat.mode)){FS.rmdir(path)}else if(FS.isFile(stat.mode)){FS.unlink(path)}}catch(e){return callback(e)}callback(null)},loadRemoteEntry:(store,path,callback)=>{var req=store.get(path);req.onsuccess=event=>callback(null,event.target.result);req.onerror=e=>{callback(e.target.error);e.preventDefault()}},storeRemoteEntry:(store,path,entry,callback)=>{try{var req=store.put(entry,path)}catch(e){callback(e);return}req.onsuccess=event=>callback();req.onerror=e=>{callback(e.target.error);e.preventDefault()}},removeRemoteEntry:(store,path,callback)=>{var req=store.delete(path);req.onsuccess=event=>callback();req.onerror=e=>{callback(e.target.error);e.preventDefault()}},reconcile:(src,dst,callback)=>{var total=0;var create=[];Object.keys(src.entries).forEach(function(key){var e=src.entries[key];var e2=dst.entries[key];if(!e2||e["timestamp"].getTime()!=e2["timestamp"].getTime()){create.push(key);total++}});var remove=[];Object.keys(dst.entries).forEach(function(key){if(!src.entries[key]){remove.push(key);total++}});if(!total){return callback(null)}var errored=false;var db=src.type==="remote"?src.db:dst.db;var transaction=db.transaction([IDBFS.DB_STORE_NAME],"readwrite");var store=transaction.objectStore(IDBFS.DB_STORE_NAME);function done(err){if(err&&!errored){errored=true;return callback(err)}}transaction.onerror=transaction.onabort=e=>{done(e.target.error);e.preventDefault()};transaction.oncomplete=e=>{if(!errored){callback(null)}};create.sort().forEach(path=>{if(dst.type==="local"){IDBFS.loadRemoteEntry(store,path,(err,entry)=>{if(err)return done(err);IDBFS.storeLocalEntry(path,entry,done)})}else{IDBFS.loadLocalEntry(path,(err,entry)=>{if(err)return done(err);IDBFS.storeRemoteEntry(store,path,entry,done)})}});remove.sort().reverse().forEach(path=>{if(dst.type==="local"){IDBFS.removeLocalEntry(path,done)}else{IDBFS.removeRemoteEntry(store,path,done)}})}};var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,ErrnoError:class{constructor(errno){this.name="ErrnoError";this.errno=errno}},genericErrors:{},filesystems:null,syncFSRequests:0,FSStream:class{constructor(){this.shared={}}get object(){return this.node}set object(val){this.node=val}get isRead(){return(this.flags&2097155)!==1}get isWrite(){return(this.flags&2097155)!==0}get isAppend(){return this.flags&1024}get flags(){return this.shared.flags}set flags(val){this.shared.flags=val}get position(){return this.shared.position}set position(val){this.shared.position=val}},FSNode:class{constructor(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev;this.readMode=292|73;this.writeMode=146}get read(){return(this.mode&this.readMode)===this.readMode}set read(val){val?this.mode|=this.readMode:this.mode&=~this.readMode}get write(){return(this.mode&this.writeMode)===this.writeMode}set write(val){val?this.mode|=this.writeMode:this.mode&=~this.writeMode}get isFolder(){return FS.isDir(this.mode)}get isDevice(){return FS.isChrdev(this.mode)}},lookupPath(path,opts={}){path=PATH_FS.resolve(path);if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};opts=Object.assign(defaults,opts);if(opts.recurse_count>8){throw new FS.ErrnoError(32)}var parts=path.split("/").filter(p=>!!p);var current=FS.root;var current_path="/";for(var i=0;i40){throw new FS.ErrnoError(32)}}}}return{path:current_path,node:current}},getPath(node){var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?`${mount}/${path}`:mount+path}path=path?`${node.name}/${path}`:node.name;node=node.parent}},hashName(parentid,name){var hash=0;for(var i=0;i>>0)%FS.nameTable.length},hashAddNode(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node},hashRemoveNode(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}},lookupNode(parent,name){var errCode=FS.mayLookup(parent);if(errCode){throw new FS.ErrnoError(errCode)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)},createNode(parent,name,mode,rdev){var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node},destroyNode(node){FS.hashRemoveNode(node)},isRoot(node){return node===node.parent},isMountpoint(node){return!!node.mounted},isFile(mode){return(mode&61440)===32768},isDir(mode){return(mode&61440)===16384},isLink(mode){return(mode&61440)===40960},isChrdev(mode){return(mode&61440)===8192},isBlkdev(mode){return(mode&61440)===24576},isFIFO(mode){return(mode&61440)===4096},isSocket(mode){return(mode&49152)===49152},flagsToPermissionString(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms},nodePermissions(node,perms){if(FS.ignorePermissions){return 0}if(perms.includes("r")&&!(node.mode&292)){return 2}else if(perms.includes("w")&&!(node.mode&146)){return 2}else if(perms.includes("x")&&!(node.mode&73)){return 2}return 0},mayLookup(dir){if(!FS.isDir(dir.mode))return 54;var errCode=FS.nodePermissions(dir,"x");if(errCode)return errCode;if(!dir.node_ops.lookup)return 2;return 0},mayCreate(dir,name){try{var node=FS.lookupNode(dir,name);return 20}catch(e){}return FS.nodePermissions(dir,"wx")},mayDelete(dir,name,isdir){var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var errCode=FS.nodePermissions(dir,"wx");if(errCode){return errCode}if(isdir){if(!FS.isDir(node.mode)){return 54}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return 10}}else{if(FS.isDir(node.mode)){return 31}}return 0},mayOpen(node,flags){if(!node){return 44}if(FS.isLink(node.mode)){return 32}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return 31}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))},MAX_OPEN_FDS:4096,nextfd(){for(var fd=0;fd<=FS.MAX_OPEN_FDS;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(33)},getStreamChecked(fd){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(8)}return stream},getStream:fd=>FS.streams[fd],createStream(stream,fd=-1){stream=Object.assign(new FS.FSStream,stream);if(fd==-1){fd=FS.nextfd()}stream.fd=fd;FS.streams[fd]=stream;return stream},closeStream(fd){FS.streams[fd]=null},dupStream(origStream,fd=-1){var stream=FS.createStream(origStream,fd);stream.stream_ops?.dup?.(stream);return stream},chrdev_stream_ops:{open(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;stream.stream_ops.open?.(stream)},llseek(){throw new FS.ErrnoError(70)}},major:dev=>dev>>8,minor:dev=>dev&255,makedev:(ma,mi)=>ma<<8|mi,registerDevice(dev,ops){FS.devices[dev]={stream_ops:ops}},getDevice:dev=>FS.devices[dev],getMounts(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push(...m.mounts)}return mounts},syncfs(populate,callback){if(typeof populate=="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){err(`warning: ${FS.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`)}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(errCode){FS.syncFSRequests--;return callback(errCode)}function done(errCode){if(errCode){if(!done.errored){done.errored=true;return doCallback(errCode)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach(mount=>{if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)})},mount(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(10)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot},unmount(mountpoint){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(28)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach(hash=>{var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.includes(current.mount)){FS.destroyNode(current)}current=next}});node.mounted=null;var idx=node.mount.mounts.indexOf(mount);node.mount.mounts.splice(idx,1)},lookup(parent,name){return parent.node_ops.lookup(parent,name)},mknod(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(28)}var errCode=FS.mayCreate(parent,name);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(63)}return parent.node_ops.mknod(parent,name,mode,dev)},create(path,mode){mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)},mkdir(path,mode){mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)},mkdirTree(path,mode){var dirs=path.split("/");var d="";for(var i=0;iFS.currentPath,chdir(path){var lookup=FS.lookupPath(path,{follow:true});if(lookup.node===null){throw new FS.ErrnoError(44)}if(!FS.isDir(lookup.node.mode)){throw new FS.ErrnoError(54)}var errCode=FS.nodePermissions(lookup.node,"x");if(errCode){throw new FS.ErrnoError(errCode)}FS.currentPath=lookup.path},createDefaultDirectories(){FS.mkdir("/tmp");FS.mkdir("/home");FS.mkdir("/home/web_user")},createDefaultDevices(){FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:()=>0,write:(stream,buffer,offset,length,pos)=>length});FS.mkdev("/dev/null",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev("/dev/tty",FS.makedev(5,0));FS.mkdev("/dev/tty1",FS.makedev(6,0));var randomBuffer=new Uint8Array(1024),randomLeft=0;var randomByte=()=>{if(randomLeft===0){randomLeft=randomFill(randomBuffer).byteLength}return randomBuffer[--randomLeft]};FS.createDevice("/dev","random",randomByte);FS.createDevice("/dev","urandom",randomByte);FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")},createSpecialDirectories(){FS.mkdir("/proc");var proc_self=FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd");FS.mount({mount(){var node=FS.createNode(proc_self,"fd",16384|511,73);node.node_ops={lookup(parent,name){var fd=+name;var stream=FS.getStreamChecked(fd);var ret={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:()=>stream.path}};ret.parent=ret;return ret}};return node}},{},"/proc/self/fd")},createStandardStreams(){if(Module["stdin"]){FS.createDevice("/dev","stdin",Module["stdin"])}else{FS.symlink("/dev/tty","/dev/stdin")}if(Module["stdout"]){FS.createDevice("/dev","stdout",null,Module["stdout"])}else{FS.symlink("/dev/tty","/dev/stdout")}if(Module["stderr"]){FS.createDevice("/dev","stderr",null,Module["stderr"])}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin",0);var stdout=FS.open("/dev/stdout",1);var stderr=FS.open("/dev/stderr",1)},staticInit(){[44].forEach(code=>{FS.genericErrors[code]=new FS.ErrnoError(code);FS.genericErrors[code].stack=""});FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={MEMFS:MEMFS,IDBFS:IDBFS}},init(input,output,error){FS.init.initialized=true;Module["stdin"]=input||Module["stdin"];Module["stdout"]=output||Module["stdout"];Module["stderr"]=error||Module["stderr"];FS.createStandardStreams()},quit(){FS.init.initialized=false;for(var i=0;ithis.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]}setDataGetter(getter){this.getter=getter}cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(from,to)=>{if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}return intArrayFromString(xhr.responseText||"",true)};var lazyArray=this;lazyArray.setDataGetter(chunkNum=>{var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]=="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]=="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]});if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;out("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true}get length(){if(!this.lengthKnown){this.cacheLength()}return this._length}get chunkSize(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize}}if(typeof XMLHttpRequest!="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:function(){return this.contents.length}}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach(key=>{var fn=node.stream_ops[key];stream_ops[key]=(...args)=>{FS.forceLoadFile(node);return fn(...args)}});function writeChunks(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);if(contents.slice){for(var i=0;i{FS.forceLoadFile(node);return writeChunks(stream,buffer,offset,length,position)};stream_ops.mmap=(stream,length,position,prot,flags)=>{FS.forceLoadFile(node);var ptr=mmapAlloc(length);if(!ptr){throw new FS.ErrnoError(48)}writeChunks(stream,HEAP8,ptr,length,position);return{ptr:ptr,allocated:true}};node.stream_ops=stream_ops;return node}};var UTF8ToString=(ptr,maxBytesToRead)=>ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):"";var SYSCALLS={DEFAULT_POLLMASK:5,calculateAt(dirfd,path,allowEmpty){if(PATH.isAbs(path)){return path}var dir;if(dirfd===-100){dir=FS.cwd()}else{var dirstream=SYSCALLS.getStreamFromFD(dirfd);dir=dirstream.path}if(path.length==0){if(!allowEmpty){throw new FS.ErrnoError(44)}return dir}return PATH.join2(dir,path)},doStat(func,path,buf){var stat=func(path);HEAP32[buf>>2]=stat.dev;HEAP32[buf+4>>2]=stat.mode;HEAPU32[buf+8>>2]=stat.nlink;HEAP32[buf+12>>2]=stat.uid;HEAP32[buf+16>>2]=stat.gid;HEAP32[buf+20>>2]=stat.rdev;tempI64=[stat.size>>>0,(tempDouble=stat.size,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+24>>2]=tempI64[0],HEAP32[buf+28>>2]=tempI64[1];HEAP32[buf+32>>2]=4096;HEAP32[buf+36>>2]=stat.blocks;var atime=stat.atime.getTime();var mtime=stat.mtime.getTime();var ctime=stat.ctime.getTime();tempI64=[Math.floor(atime/1e3)>>>0,(tempDouble=Math.floor(atime/1e3),+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+40>>2]=tempI64[0],HEAP32[buf+44>>2]=tempI64[1];HEAPU32[buf+48>>2]=atime%1e3*1e3;tempI64=[Math.floor(mtime/1e3)>>>0,(tempDouble=Math.floor(mtime/1e3),+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+56>>2]=tempI64[0],HEAP32[buf+60>>2]=tempI64[1];HEAPU32[buf+64>>2]=mtime%1e3*1e3;tempI64=[Math.floor(ctime/1e3)>>>0,(tempDouble=Math.floor(ctime/1e3),+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+72>>2]=tempI64[0],HEAP32[buf+76>>2]=tempI64[1];HEAPU32[buf+80>>2]=ctime%1e3*1e3;tempI64=[stat.ino>>>0,(tempDouble=stat.ino,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+88>>2]=tempI64[0],HEAP32[buf+92>>2]=tempI64[1];return 0},doMsync(addr,stream,len,flags,offset){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(43)}if(flags&2){return 0}var buffer=HEAPU8.slice(addr,addr+len);FS.msync(stream,buffer,offset,len,flags)},getStreamFromFD(fd){var stream=FS.getStreamChecked(fd);return stream},varargs:undefined,getStr(ptr){var ret=UTF8ToString(ptr);return ret}};function ___syscall_chmod(path,mode){try{path=SYSCALLS.getStr(path);FS.chmod(path,mode);return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_fchmod(fd,mode){try{FS.fchmod(fd,mode);return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function syscallGetVarargI(){var ret=HEAP32[+SYSCALLS.varargs>>2];SYSCALLS.varargs+=4;return ret}var syscallGetVarargP=syscallGetVarargI;function ___syscall_fcntl64(fd,cmd,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(fd);switch(cmd){case 0:{var arg=syscallGetVarargI();if(arg<0){return-28}while(FS.streams[arg]){arg++}var newStream;newStream=FS.dupStream(stream,arg);return newStream.fd}case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=syscallGetVarargI();stream.flags|=arg;return 0}case 12:{var arg=syscallGetVarargP();var offset=0;HEAP16[arg+offset>>1]=2;return 0}case 13:case 14:return 0}return-28}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_fstat64(fd,buf){try{var stream=SYSCALLS.getStreamFromFD(fd);return SYSCALLS.doStat(FS.stat,stream.path,buf)}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}var convertI32PairToI53Checked=(lo,hi)=>hi+2097152>>>0<4194305-!!lo?(lo>>>0)+hi*4294967296:NaN;function ___syscall_ftruncate64(fd,length_low,length_high){var length=convertI32PairToI53Checked(length_low,length_high);try{if(isNaN(length))return 61;FS.ftruncate(fd,length);return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_ioctl(fd,op,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(fd);switch(op){case 21509:{if(!stream.tty)return-59;return 0}case 21505:{if(!stream.tty)return-59;if(stream.tty.ops.ioctl_tcgets){var termios=stream.tty.ops.ioctl_tcgets(stream);var argp=syscallGetVarargP();HEAP32[argp>>2]=termios.c_iflag||0;HEAP32[argp+4>>2]=termios.c_oflag||0;HEAP32[argp+8>>2]=termios.c_cflag||0;HEAP32[argp+12>>2]=termios.c_lflag||0;for(var i=0;i<32;i++){HEAP8[argp+i+17]=termios.c_cc[i]||0}return 0}return 0}case 21510:case 21511:case 21512:{if(!stream.tty)return-59;return 0}case 21506:case 21507:case 21508:{if(!stream.tty)return-59;if(stream.tty.ops.ioctl_tcsets){var argp=syscallGetVarargP();var c_iflag=HEAP32[argp>>2];var c_oflag=HEAP32[argp+4>>2];var c_cflag=HEAP32[argp+8>>2];var c_lflag=HEAP32[argp+12>>2];var c_cc=[];for(var i=0;i<32;i++){c_cc.push(HEAP8[argp+i+17])}return stream.tty.ops.ioctl_tcsets(stream.tty,op,{c_iflag:c_iflag,c_oflag:c_oflag,c_cflag:c_cflag,c_lflag:c_lflag,c_cc:c_cc})}return 0}case 21519:{if(!stream.tty)return-59;var argp=syscallGetVarargP();HEAP32[argp>>2]=0;return 0}case 21520:{if(!stream.tty)return-59;return-28}case 21531:{var argp=syscallGetVarargP();return FS.ioctl(stream,op,argp)}case 21523:{if(!stream.tty)return-59;if(stream.tty.ops.ioctl_tiocgwinsz){var winsize=stream.tty.ops.ioctl_tiocgwinsz(stream.tty);var argp=syscallGetVarargP();HEAP16[argp>>1]=winsize[0];HEAP16[argp+2>>1]=winsize[1]}return 0}case 21524:{if(!stream.tty)return-59;return 0}case 21515:{if(!stream.tty)return-59;return 0}default:return-28}}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_lstat64(path,buf){try{path=SYSCALLS.getStr(path);return SYSCALLS.doStat(FS.lstat,path,buf)}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_mkdirat(dirfd,path,mode){try{path=SYSCALLS.getStr(path);path=SYSCALLS.calculateAt(dirfd,path);path=PATH.normalize(path);if(path[path.length-1]==="/")path=path.substr(0,path.length-1);FS.mkdir(path,mode,0);return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_newfstatat(dirfd,path,buf,flags){try{path=SYSCALLS.getStr(path);var nofollow=flags&256;var allowEmpty=flags&4096;flags=flags&~6400;path=SYSCALLS.calculateAt(dirfd,path,allowEmpty);return SYSCALLS.doStat(nofollow?FS.lstat:FS.stat,path,buf)}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_openat(dirfd,path,flags,varargs){SYSCALLS.varargs=varargs;try{path=SYSCALLS.getStr(path);path=SYSCALLS.calculateAt(dirfd,path);var mode=varargs?syscallGetVarargI():0;return FS.open(path,flags,mode).fd}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_rmdir(path){try{path=SYSCALLS.getStr(path);FS.rmdir(path);return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_stat64(path,buf){try{path=SYSCALLS.getStr(path);return SYSCALLS.doStat(FS.stat,path,buf)}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_unlinkat(dirfd,path,flags){try{path=SYSCALLS.getStr(path);path=SYSCALLS.calculateAt(dirfd,path);if(flags===0){FS.unlink(path)}else if(flags===512){FS.rmdir(path)}else{abort("Invalid flags passed to unlinkat")}return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}var __abort_js=()=>{abort("")};var nowIsMonotonic=1;var __emscripten_get_now_is_monotonic=()=>nowIsMonotonic;var __emscripten_memcpy_js=(dest,src,num)=>HEAPU8.copyWithin(dest,src,src+num);var isLeapYear=year=>year%4===0&&(year%100!==0||year%400===0);var MONTH_DAYS_LEAP_CUMULATIVE=[0,31,60,91,121,152,182,213,244,274,305,335];var MONTH_DAYS_REGULAR_CUMULATIVE=[0,31,59,90,120,151,181,212,243,273,304,334];var ydayFromDate=date=>{var leap=isLeapYear(date.getFullYear());var monthDaysCumulative=leap?MONTH_DAYS_LEAP_CUMULATIVE:MONTH_DAYS_REGULAR_CUMULATIVE;var yday=monthDaysCumulative[date.getMonth()]+date.getDate()-1;return yday};var setTempRet0=val=>__emscripten_tempret_set(val);var __mktime_js=function(tmPtr){var ret=(()=>{var date=new Date(HEAP32[tmPtr+20>>2]+1900,HEAP32[tmPtr+16>>2],HEAP32[tmPtr+12>>2],HEAP32[tmPtr+8>>2],HEAP32[tmPtr+4>>2],HEAP32[tmPtr>>2],0);var dst=HEAP32[tmPtr+32>>2];var guessedOffset=date.getTimezoneOffset();var start=new Date(date.getFullYear(),0,1);var summerOffset=new Date(date.getFullYear(),6,1).getTimezoneOffset();var winterOffset=start.getTimezoneOffset();var dstOffset=Math.min(winterOffset,summerOffset);if(dst<0){HEAP32[tmPtr+32>>2]=Number(summerOffset!=winterOffset&&dstOffset==guessedOffset)}else if(dst>0!=(dstOffset==guessedOffset)){var nonDstOffset=Math.max(winterOffset,summerOffset);var trueOffset=dst>0?dstOffset:nonDstOffset;date.setTime(date.getTime()+(trueOffset-guessedOffset)*6e4)}HEAP32[tmPtr+24>>2]=date.getDay();var yday=ydayFromDate(date)|0;HEAP32[tmPtr+28>>2]=yday;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.getYear();var timeMs=date.getTime();if(isNaN(timeMs)){return-1}return timeMs/1e3})();return setTempRet0((tempDouble=ret,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)),ret>>>0};var stringToUTF8=(str,outPtr,maxBytesToWrite)=>stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite);var __tzset_js=(timezone,daylight,std_name,dst_name)=>{var currentYear=(new Date).getFullYear();var winter=new Date(currentYear,0,1);var summer=new Date(currentYear,6,1);var winterOffset=winter.getTimezoneOffset();var summerOffset=summer.getTimezoneOffset();var stdTimezoneOffset=Math.max(winterOffset,summerOffset);HEAPU32[timezone>>2]=stdTimezoneOffset*60;HEAP32[daylight>>2]=Number(winterOffset!=summerOffset);var extractZone=timezoneOffset=>{var sign=timezoneOffset>=0?"-":"+";var absOffset=Math.abs(timezoneOffset);var hours=String(Math.floor(absOffset/60)).padStart(2,"0");var minutes=String(absOffset%60).padStart(2,"0");return`UTC${sign}${hours}${minutes}`};var winterName=extractZone(winterOffset);var summerName=extractZone(summerOffset);if(summerOffset{readEmAsmArgsArray.length=0;var ch;while(ch=HEAPU8[sigPtr++]){var wide=ch!=105;wide&=ch!=112;buf+=wide&&buf%8?4:0;readEmAsmArgsArray.push(ch==112?HEAPU32[buf>>2]:ch==105?HEAP32[buf>>2]:HEAPF64[buf>>3]);buf+=wide?8:4}return readEmAsmArgsArray};var runEmAsmFunction=(code,sigPtr,argbuf)=>{var args=readEmAsmArgs(sigPtr,argbuf);return ASM_CONSTS[code](...args)};var _emscripten_asm_const_double=(code,sigPtr,argbuf)=>runEmAsmFunction(code,sigPtr,argbuf);var _emscripten_asm_const_int=(code,sigPtr,argbuf)=>runEmAsmFunction(code,sigPtr,argbuf);var _emscripten_date_now=()=>Date.now();var _emscripten_get_now;_emscripten_get_now=()=>performance.now();var getHeapMax=()=>2147483648;var growMemory=size=>{var b=wasmMemory.buffer;var pages=(size-b.byteLength+65535)/65536;try{wasmMemory.grow(pages);updateMemoryViews();return 1}catch(e){}};var _emscripten_resize_heap=requestedSize=>{var oldSize=HEAPU8.length;requestedSize>>>=0;var maxHeapSize=getHeapMax();if(requestedSize>maxHeapSize){return false}var alignUp=(x,multiple)=>x+(multiple-x%multiple)%multiple;for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=growMemory(newSize);if(replacement){return true}}return false};var JSEvents={removeAllEventListeners(){while(JSEvents.eventHandlers.length){JSEvents._removeHandler(JSEvents.eventHandlers.length-1)}JSEvents.deferredCalls=[]},inEventHandler:0,deferredCalls:[],deferCall(targetFunction,precedence,argsList){function arraysHaveEqualContent(arrA,arrB){if(arrA.length!=arrB.length)return false;for(var i in arrA){if(arrA[i]!=arrB[i])return false}return true}for(var call of JSEvents.deferredCalls){if(call.targetFunction==targetFunction&&arraysHaveEqualContent(call.argsList,argsList)){return}}JSEvents.deferredCalls.push({targetFunction:targetFunction,precedence:precedence,argsList:argsList});JSEvents.deferredCalls.sort((x,y)=>x.precedencecall.targetFunction!=targetFunction)},canPerformEventHandlerRequests(){if(navigator.userActivation){return navigator.userActivation.isActive}return JSEvents.inEventHandler&&JSEvents.currentEventHandler.allowsDeferredCalls},runDeferredCalls(){if(!JSEvents.canPerformEventHandlerRequests()){return}var deferredCalls=JSEvents.deferredCalls;JSEvents.deferredCalls=[];for(var call of deferredCalls){call.targetFunction(...call.argsList)}},eventHandlers:[],removeAllHandlersOnTarget:(target,eventTypeString)=>{for(var i=0;icString>2?UTF8ToString(cString):cString;var specialHTMLTargets=[0,typeof document!="undefined"?document:0,typeof window!="undefined"?window:0];var findEventTarget=target=>{target=maybeCStringToJsString(target);var domElement=specialHTMLTargets[target]||(typeof document!="undefined"?document.querySelector(target):undefined);return domElement};var wasmTableMirror=[];var wasmTable;var getWasmTableEntry=funcPtr=>{var func=wasmTableMirror[funcPtr];if(!func){if(funcPtr>=wasmTableMirror.length)wasmTableMirror.length=funcPtr+1;wasmTableMirror[funcPtr]=func=wasmTable.get(funcPtr)}return func};var registerBeforeUnloadEventCallback=(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString)=>{var beforeUnloadEventHandlerFunc=(e=event)=>{var confirmationMessage=getWasmTableEntry(callbackfunc)(eventTypeId,0,userData);if(confirmationMessage){confirmationMessage=UTF8ToString(confirmationMessage)}if(confirmationMessage){e.preventDefault();e.returnValue=confirmationMessage;return confirmationMessage}};var eventHandler={target:findEventTarget(target),eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:beforeUnloadEventHandlerFunc,useCapture:useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)};var _emscripten_set_beforeunload_callback_on_thread=(userData,callbackfunc,targetThread)=>{if(typeof onbeforeunload=="undefined")return-1;if(targetThread!==1)return-5;return registerBeforeUnloadEventCallback(2,userData,true,callbackfunc,28,"beforeunload")};var _emscripten_set_element_css_size=(target,width,height)=>{target=findEventTarget(target);if(!target)return-4;target.style.width=width+"px";target.style.height=height+"px";return 0};var handleException=e=>{if(e instanceof ExitStatus||e=="unwind"){return EXITSTATUS}quit_(1,e)};var runtimeKeepaliveCounter=0;var keepRuntimeAlive=()=>noExitRuntime||runtimeKeepaliveCounter>0;var _proc_exit=code=>{EXITSTATUS=code;if(!keepRuntimeAlive()){Module["onExit"]?.(code);ABORT=true}quit_(code,new ExitStatus(code))};var exitJS=(status,implicit)=>{EXITSTATUS=status;_proc_exit(status)};var _exit=exitJS;var maybeExit=()=>{if(!keepRuntimeAlive()){try{_exit(EXITSTATUS)}catch(e){handleException(e)}}};var callUserCallback=func=>{if(ABORT){return}try{func();maybeExit()}catch(e){handleException(e)}};var safeSetTimeout=(func,timeout)=>setTimeout(()=>{callUserCallback(func)},timeout);var warnOnce=text=>{warnOnce.shown||={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;if(ENVIRONMENT_IS_NODE)text="warning: "+text;err(text)}};var Browser={mainLoop:{running:false,scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause(){Browser.mainLoop.scheduler=null;Browser.mainLoop.currentlyRunningMainloop++},resume(){Browser.mainLoop.currentlyRunningMainloop++;var timingMode=Browser.mainLoop.timingMode;var timingValue=Browser.mainLoop.timingValue;var func=Browser.mainLoop.func;Browser.mainLoop.func=null;setMainLoop(func,0,false,Browser.mainLoop.arg,true);_emscripten_set_main_loop_timing(timingMode,timingValue);Browser.mainLoop.scheduler()},updateStatus(){if(Module["setStatus"]){var message=Module["statusMessage"]||"Please wait...";var remaining=Browser.mainLoop.remainingBlockers;var expected=Browser.mainLoop.expectedBlockers;if(remaining){if(remaining{var canvas=document.createElement("canvas");canvas.width=img.width;canvas.height=img.height;var ctx=canvas.getContext("2d");ctx.drawImage(img,0,0);preloadedImages[name]=canvas;URL.revokeObjectURL(url);onload?.(byteArray)};img.onerror=event=>{err(`Image ${url} could not be decoded`);onerror?.()};img.src=url};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;preloadedAudios[name]=audio;onload?.(byteArray)}var b=new Blob([byteArray],{type:Browser.getMimetype(name)});var url=URL.createObjectURL(b);var audio=new Audio;audio.addEventListener("canplaythrough",()=>finish(audio),false);audio.onerror=function audio_onerror(event){if(done)return;err(`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=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;safeSetTimeout(()=>{finish(audio)},1e4)};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"]||(()=>{});canvas.exitPointerLock=document["exitPointerLock"]||document["mozExitPointerLock"]||document["webkitExitPointerLock"]||document["msExitPointerLock"]||(()=>{});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",ev=>{if(!Browser.pointerLock&&Module["canvas"].requestPointerLock){Module["canvas"].requestPointerLock();ev.preventDefault()}},false)}}},createContext(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,majorVersion:2};if(webGLContextAttributes){for(var attribute in webGLContextAttributes){contextAttributes[attribute]=webGLContextAttributes[attribute]}}if(typeof GL!="undefined"){contextHandle=GL.createContext(canvas,contextAttributes);if(contextHandle){ctx=GL.getContext(contextHandle).GLctx}}}else{ctx=canvas.getContext("2d")}if(!ctx)return null;if(setInModule){Module.ctx=ctx;if(useWebGL)GL.makeContextCurrent(contextHandle);Module.useWebGL=useWebGL;Browser.moduleContextCreatedCallbacks.forEach(callback=>callback());Browser.init()}return ctx},destroyContext(canvas,useWebGL,setInModule){},fullscreenHandlersInstalled:false,lockPointer:undefined,resizeCanvas:undefined,requestFullscreen(lockPointer,resizeCanvas){Browser.lockPointer=lockPointer;Browser.resizeCanvas=resizeCanvas;if(typeof Browser.lockPointer=="undefined")Browser.lockPointer=true;if(typeof Browser.resizeCanvas=="undefined")Browser.resizeCanvas=false;var canvas=Module["canvas"];function fullscreenChange(){Browser.isFullscreen=false;var canvasContainer=canvas.parentNode;if((document["fullscreenElement"]||document["mozFullScreenElement"]||document["msFullscreenElement"]||document["webkitFullscreenElement"]||document["webkitCurrentFullScreenElement"])===canvasContainer){canvas.exitFullscreen=Browser.exitFullscreen;if(Browser.lockPointer)canvas.requestPointerLock();Browser.isFullscreen=true;if(Browser.resizeCanvas){Browser.setFullscreenCanvasSize()}else{Browser.updateCanvasDimensions(canvas)}}else{canvasContainer.parentNode.insertBefore(canvas,canvasContainer);canvasContainer.parentNode.removeChild(canvasContainer);if(Browser.resizeCanvas){Browser.setWindowedCanvasSize()}else{Browser.updateCanvasDimensions(canvas)}}Module["onFullScreen"]?.(Browser.isFullscreen);Module["onFullscreen"]?.(Browser.isFullscreen)}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"]?()=>canvasContainer["webkitRequestFullscreen"](Element["ALLOW_KEYBOARD_INPUT"]):null)||(canvasContainer["webkitRequestFullScreen"]?()=>canvasContainer["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"]):null);canvasContainer.requestFullscreen()},exitFullscreen(){if(!Browser.isFullscreen){return false}var CFS=document["exitFullscreen"]||document["cancelFullScreen"]||document["mozCancelFullScreen"]||document["msExitFullscreen"]||document["webkitCancelFullScreen"]||(()=>{});CFS.apply(document,[]);return true},nextRAF:0,fakeRequestAnimationFrame(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(func){if(typeof requestAnimationFrame=="function"){requestAnimationFrame(func);return}var RAF=Browser.fakeRequestAnimationFrame;RAF(func)},safeSetTimeout(func,timeout){return safeSetTimeout(func,timeout)},safeRequestAnimationFrame(func){return Browser.requestAnimationFrame(()=>{callUserCallback(func)})},getMimetype(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(func){window.getUserMedia||=navigator["getUserMedia"]||navigator["mozGetUserMedia"];window.getUserMedia(func)},getMovementX(event){return event["movementX"]||event["mozMovementX"]||event["webkitMovementX"]||0},getMovementY(event){return event["movementY"]||event["mozMovementY"]||event["webkitMovementY"]||0},getMouseWheelDelta(event){var delta=0;switch(event.type){case"DOMMouseScroll":delta=event.detail/3;break;case"mousewheel":delta=event.wheelDelta/120;break;case"wheel":delta=event.deltaY;switch(event.deltaMode){case 0:delta/=100;break;case 1:delta/=3;break;case 2:delta*=80;break;default:throw"unrecognized mouse wheel delta mode: "+event.deltaMode}break;default:throw"unrecognized mouse wheel event: "+event.type}return delta},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseCoords(pageX,pageY){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;var adjustedX=pageX-(scrollX+rect.left);var adjustedY=pageY-(scrollY+rect.top);adjustedX=adjustedX*(cw/rect.width);adjustedY=adjustedY*(ch/rect.height);return{x:adjustedX,y:adjustedY}},setMouseCoords(pageX,pageY){const{x:x,y:y}=Browser.calculateMouseCoords(pageX,pageY);Browser.mouseMovementX=x-Browser.mouseX;Browser.mouseMovementY=y-Browser.mouseY;Browser.mouseX=x;Browser.mouseY=y},calculateMouseEvent(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)}Browser.mouseX+=Browser.mouseMovementX;Browser.mouseY+=Browser.mouseMovementY}else{if(event.type==="touchstart"||event.type==="touchend"||event.type==="touchmove"){var touch=event.touch;if(touch===undefined){return}var coords=Browser.calculateMouseCoords(touch.pageX,touch.pageY);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];last||=coords;Browser.lastTouches[touch.identifier]=last;Browser.touches[touch.identifier]=coords}return}Browser.setMouseCoords(event.pageX,event.pageY)}},resizeListeners:[],updateResizeListeners(){var canvas=Module["canvas"];Browser.resizeListeners.forEach(listener=>listener(canvas.width,canvas.height))},setCanvasSize(width,height,noUpdates){var canvas=Module["canvas"];Browser.updateCanvasDimensions(canvas,width,height);if(!noUpdates)Browser.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullscreenCanvasSize(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen>>2];flags=flags|8388608;HEAP32[SDL.screen>>2]=flags}Browser.updateCanvasDimensions(Module["canvas"]);Browser.updateResizeListeners()},setWindowedCanvasSize(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen>>2];flags=flags&~8388608;HEAP32[SDL.screen>>2]=flags}Browser.updateCanvasDimensions(Module["canvas"]);Browser.updateResizeListeners()},updateCanvasDimensions(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{Browser.mainLoop.timingMode=mode;Browser.mainLoop.timingValue=value;if(!Browser.mainLoop.func){return 1}if(!Browser.mainLoop.running){Browser.mainLoop.running=true}if(mode==0){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setTimeout(){var timeUntilNextTick=Math.max(0,Browser.mainLoop.tickStartTime+value-_emscripten_get_now())|0;setTimeout(Browser.mainLoop.runner,timeUntilNextTick)};Browser.mainLoop.method="timeout"}else if(mode==1){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_rAF(){Browser.requestAnimationFrame(Browser.mainLoop.runner)};Browser.mainLoop.method="rAF"}else if(mode==2){if(typeof Browser.setImmediate=="undefined"){if(typeof setImmediate=="undefined"){var setImmediates=[];var emscriptenMainLoopMessageId="setimmediate";var Browser_setImmediate_messageHandler=event=>{if(event.data===emscriptenMainLoopMessageId||event.data.target===emscriptenMainLoopMessageId){event.stopPropagation();setImmediates.shift()()}};addEventListener("message",Browser_setImmediate_messageHandler,true);Browser.setImmediate=function Browser_emulated_setImmediate(func){setImmediates.push(func);if(ENVIRONMENT_IS_WORKER){Module["setImmediates"]??=[];Module["setImmediates"].push(func);postMessage({target:emscriptenMainLoopMessageId})}else postMessage(emscriptenMainLoopMessageId,"*")}}else{Browser.setImmediate=setImmediate}}Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setImmediate(){Browser.setImmediate(Browser.mainLoop.runner)};Browser.mainLoop.method="immediate"}return 0};var setMainLoop=(browserIterationFunc,fps,simulateInfiniteLoop,arg,noSetTiming)=>{Browser.mainLoop.func=browserIterationFunc;Browser.mainLoop.arg=arg;var thisMainLoopId=Browser.mainLoop.currentlyRunningMainloop;function checkIsRunning(){if(thisMainLoopId0){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}}Browser.mainLoop.updateStatus();if(!checkIsRunning())return;setTimeout(Browser.mainLoop.runner,0);return}if(!checkIsRunning())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()}Browser.mainLoop.runIter(browserIterationFunc);if(!checkIsRunning())return;if(typeof SDL=="object")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"unwind"}};var _emscripten_set_main_loop=(func,fps,simulateInfiniteLoop)=>{var browserIterationFunc=getWasmTableEntry(func);setMainLoop(browserIterationFunc,fps,simulateInfiniteLoop)};var registerUiEventCallback=(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread)=>{if(!JSEvents.uiEvent)JSEvents.uiEvent=_malloc(36);target=findEventTarget(target);var uiEventHandlerFunc=(e=event)=>{if(e.target!=target){return}var b=document.body;if(!b){return}var uiEvent=JSEvents.uiEvent;HEAP32[uiEvent>>2]=0;HEAP32[uiEvent+4>>2]=b.clientWidth;HEAP32[uiEvent+8>>2]=b.clientHeight;HEAP32[uiEvent+12>>2]=innerWidth;HEAP32[uiEvent+16>>2]=innerHeight;HEAP32[uiEvent+20>>2]=outerWidth;HEAP32[uiEvent+24>>2]=outerHeight;HEAP32[uiEvent+28>>2]=pageXOffset|0;HEAP32[uiEvent+32>>2]=pageYOffset|0;if(getWasmTableEntry(callbackfunc)(eventTypeId,uiEvent,userData))e.preventDefault()};var eventHandler={target:target,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:uiEventHandlerFunc,useCapture:useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)};var _emscripten_set_resize_callback_on_thread=(target,userData,useCapture,callbackfunc,targetThread)=>registerUiEventCallback(target,userData,useCapture,callbackfunc,10,"resize",targetThread);var fillVisibilityChangeEventData=eventStruct=>{var visibilityStates=["hidden","visible","prerender","unloaded"];var visibilityState=visibilityStates.indexOf(document.visibilityState);HEAP8[eventStruct]=document.hidden;HEAP32[eventStruct+4>>2]=visibilityState};var registerVisibilityChangeEventCallback=(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread)=>{if(!JSEvents.visibilityChangeEvent)JSEvents.visibilityChangeEvent=_malloc(8);var visibilityChangeEventHandlerFunc=(e=event)=>{var visibilityChangeEvent=JSEvents.visibilityChangeEvent;fillVisibilityChangeEventData(visibilityChangeEvent);if(getWasmTableEntry(callbackfunc)(eventTypeId,visibilityChangeEvent,userData))e.preventDefault()};var eventHandler={target:target,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:visibilityChangeEventHandlerFunc,useCapture:useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)};var _emscripten_set_visibilitychange_callback_on_thread=(userData,useCapture,callbackfunc,targetThread)=>{if(!specialHTMLTargets[1]){return-4}return registerVisibilityChangeEventCallback(specialHTMLTargets[1],userData,useCapture,callbackfunc,21,"visibilitychange",targetThread)};var ENV={};var getExecutableName=()=>thisProgram||"./this.program";var getEnvStrings=()=>{if(!getEnvStrings.strings){var lang=(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8";var env={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:lang,_:getExecutableName()};for(var x in ENV){if(ENV[x]===undefined)delete env[x];else env[x]=ENV[x]}var strings=[];for(var x in env){strings.push(`${x}=${env[x]}`)}getEnvStrings.strings=strings}return getEnvStrings.strings};var stringToAscii=(str,buffer)=>{for(var i=0;i{var bufSize=0;getEnvStrings().forEach((string,i)=>{var ptr=environ_buf+bufSize;HEAPU32[__environ+i*4>>2]=ptr;stringToAscii(string,ptr);bufSize+=string.length+1});return 0};var _environ_sizes_get=(penviron_count,penviron_buf_size)=>{var strings=getEnvStrings();HEAPU32[penviron_count>>2]=strings.length;var bufSize=0;strings.forEach(string=>bufSize+=string.length+1);HEAPU32[penviron_buf_size>>2]=bufSize;return 0};function _fd_close(fd){try{var stream=SYSCALLS.getStreamFromFD(fd);FS.close(stream);return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}function _fd_fdstat_get(fd,pbuf){try{var rightsBase=0;var rightsInheriting=0;var flags=0;{var stream=SYSCALLS.getStreamFromFD(fd);var type=stream.tty?2:FS.isDir(stream.mode)?3:FS.isLink(stream.mode)?7:4}HEAP8[pbuf]=type;HEAP16[pbuf+2>>1]=flags;tempI64=[rightsBase>>>0,(tempDouble=rightsBase,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[pbuf+8>>2]=tempI64[0],HEAP32[pbuf+12>>2]=tempI64[1];tempI64=[rightsInheriting>>>0,(tempDouble=rightsInheriting,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[pbuf+16>>2]=tempI64[0],HEAP32[pbuf+20>>2]=tempI64[1];return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}var doReadv=(stream,iov,iovcnt,offset)=>{var ret=0;for(var i=0;i>2];var len=HEAPU32[iov+4>>2];iov+=8;var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr>2]=num;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}function _fd_seek(fd,offset_low,offset_high,whence,newOffset){var offset=convertI32PairToI53Checked(offset_low,offset_high);try{if(isNaN(offset))return 61;var stream=SYSCALLS.getStreamFromFD(fd);FS.llseek(stream,offset,whence);tempI64=[stream.position>>>0,(tempDouble=stream.position,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[newOffset>>2]=tempI64[0],HEAP32[newOffset+4>>2]=tempI64[1];if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}var doWritev=(stream,iov,iovcnt,offset)=>{var ret=0;for(var i=0;i>2];var len=HEAPU32[iov+4>>2];iov+=8;var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(typeof offset!="undefined"){offset+=curr}}return ret};function _fd_write(fd,iov,iovcnt,pnum){try{var stream=SYSCALLS.getStreamFromFD(fd);var num=doWritev(stream,iov,iovcnt);HEAPU32[pnum>>2]=num;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}var webgl_enable_WEBGL_draw_instanced_base_vertex_base_instance=ctx=>!!(ctx.dibvbi=ctx.getExtension("WEBGL_draw_instanced_base_vertex_base_instance"));var webgl_enable_WEBGL_multi_draw_instanced_base_vertex_base_instance=ctx=>!!(ctx.mdibvbi=ctx.getExtension("WEBGL_multi_draw_instanced_base_vertex_base_instance"));var webgl_enable_WEBGL_multi_draw=ctx=>!!(ctx.multiDrawWebgl=ctx.getExtension("WEBGL_multi_draw"));var getEmscriptenSupportedExtensions=ctx=>{var supportedExtensions=["EXT_color_buffer_float","EXT_conservative_depth","EXT_disjoint_timer_query_webgl2","EXT_texture_norm16","NV_shader_noperspective_interpolation","WEBGL_clip_cull_distance","EXT_color_buffer_half_float","EXT_depth_clamp","EXT_float_blend","EXT_texture_compression_bptc","EXT_texture_compression_rgtc","EXT_texture_filter_anisotropic","KHR_parallel_shader_compile","OES_texture_float_linear","WEBGL_blend_func_extended","WEBGL_compressed_texture_astc","WEBGL_compressed_texture_etc","WEBGL_compressed_texture_etc1","WEBGL_compressed_texture_s3tc","WEBGL_compressed_texture_s3tc_srgb","WEBGL_debug_renderer_info","WEBGL_debug_shaders","WEBGL_lose_context","WEBGL_multi_draw"];return(ctx.getSupportedExtensions()||[]).filter(ext=>supportedExtensions.includes(ext))};var GL={counter:1,buffers:[],programs:[],framebuffers:[],renderbuffers:[],textures:[],shaders:[],vaos:[],contexts:[],offscreenCanvases:{},queries:[],samplers:[],transformFeedbacks:[],syncs:[],stringCache:{},stringiCache:{},unpackAlignment:4,unpackRowLength:0,recordError:errorCode=>{if(!GL.lastError){GL.lastError=errorCode}},getNewId:table=>{var ret=GL.counter++;for(var i=table.length;i{for(var i=0;i>2]=id}},getSource:(shader,count,string,length)=>{var source="";for(var i=0;i>2]:undefined;source+=UTF8ToString(HEAPU32[string+i*4>>2],len)}return source},createContext:(canvas,webGLContextAttributes)=>{if(!canvas.getContextSafariWebGL2Fixed){canvas.getContextSafariWebGL2Fixed=canvas.getContext;function fixedGetContext(ver,attrs){var gl=canvas.getContextSafariWebGL2Fixed(ver,attrs);return ver=="webgl"==gl instanceof WebGLRenderingContext?gl:null}canvas.getContext=fixedGetContext}var ctx=canvas.getContext("webgl2",webGLContextAttributes);if(!ctx)return 0;var handle=GL.registerContext(ctx,webGLContextAttributes);return handle},registerContext:(ctx,webGLContextAttributes)=>{var handle=GL.getNewId(GL.contexts);var context={handle:handle,attributes:webGLContextAttributes,version:webGLContextAttributes.majorVersion,GLctx:ctx};if(ctx.canvas)ctx.canvas.GLctxObject=context;GL.contexts[handle]=context;if(typeof webGLContextAttributes.enableExtensionsByDefault=="undefined"||webGLContextAttributes.enableExtensionsByDefault){GL.initExtensions(context)}return handle},makeContextCurrent:contextHandle=>{GL.currentContext=GL.contexts[contextHandle];Module.ctx=GLctx=GL.currentContext?.GLctx;return!(contextHandle&&!GLctx)},getContext:contextHandle=>GL.contexts[contextHandle],deleteContext:contextHandle=>{if(GL.currentContext===GL.contexts[contextHandle]){GL.currentContext=null}if(typeof JSEvents=="object"){JSEvents.removeAllHandlersOnTarget(GL.contexts[contextHandle].GLctx.canvas)}if(GL.contexts[contextHandle]&&GL.contexts[contextHandle].GLctx.canvas){GL.contexts[contextHandle].GLctx.canvas.GLctxObject=undefined}GL.contexts[contextHandle]=null},initExtensions:context=>{context||=GL.currentContext;if(context.initExtensionsDone)return;context.initExtensionsDone=true;var GLctx=context.GLctx;webgl_enable_WEBGL_draw_instanced_base_vertex_base_instance(GLctx);webgl_enable_WEBGL_multi_draw_instanced_base_vertex_base_instance(GLctx);if(context.version>=2){GLctx.disjointTimerQueryExt=GLctx.getExtension("EXT_disjoint_timer_query_webgl2")}if(context.version<2||!GLctx.disjointTimerQueryExt){GLctx.disjointTimerQueryExt=GLctx.getExtension("EXT_disjoint_timer_query")}webgl_enable_WEBGL_multi_draw(GLctx);getEmscriptenSupportedExtensions(GLctx).forEach(ext=>{if(!ext.includes("lose_context")&&!ext.includes("debug")){GLctx.getExtension(ext)}})}};var _glActiveTexture=x0=>GLctx.activeTexture(x0);var _glAttachShader=(program,shader)=>{GLctx.attachShader(GL.programs[program],GL.shaders[shader])};var _glBindBuffer=(target,buffer)=>{if(target==35051){GLctx.currentPixelPackBufferBinding=buffer}else if(target==35052){GLctx.currentPixelUnpackBufferBinding=buffer}GLctx.bindBuffer(target,GL.buffers[buffer])};var _glBindTexture=(target,texture)=>{GLctx.bindTexture(target,GL.textures[texture])};var _glBindVertexArray=vao=>{GLctx.bindVertexArray(GL.vaos[vao])};var _glBindVertexArrayOES=_glBindVertexArray;var _glBlendEquation=x0=>GLctx.blendEquation(x0);var _glBlendEquationSeparate=(x0,x1)=>GLctx.blendEquationSeparate(x0,x1);var _glBlendFunc=(x0,x1)=>GLctx.blendFunc(x0,x1);var _glBlendFuncSeparate=(x0,x1,x2,x3)=>GLctx.blendFuncSeparate(x0,x1,x2,x3);var _glBufferData=(target,size,data,usage)=>{if(true){if(data&&size){GLctx.bufferData(target,HEAPU8,usage,data,size)}else{GLctx.bufferData(target,size,usage)}return}GLctx.bufferData(target,data?HEAPU8.subarray(data,data+size):size,usage)};var _glBufferSubData=(target,offset,size,data)=>{if(true){size&&GLctx.bufferSubData(target,offset,HEAPU8,data,size);return}GLctx.bufferSubData(target,offset,HEAPU8.subarray(data,data+size))};var _glClear=x0=>GLctx.clear(x0);var _glClearColor=(x0,x1,x2,x3)=>GLctx.clearColor(x0,x1,x2,x3);var _glCompileShader=shader=>{GLctx.compileShader(GL.shaders[shader])};var _glCreateProgram=()=>{var id=GL.getNewId(GL.programs);var program=GLctx.createProgram();program.name=id;program.maxUniformLength=program.maxAttributeLength=program.maxUniformBlockNameLength=0;program.uniformIdCounter=1;GL.programs[id]=program;return id};var _glCreateShader=shaderType=>{var id=GL.getNewId(GL.shaders);GL.shaders[id]=GLctx.createShader(shaderType);return id};var _glDeleteShader=id=>{if(!id)return;var shader=GL.shaders[id];if(!shader){GL.recordError(1281);return}GLctx.deleteShader(shader);GL.shaders[id]=null};var _glDeleteVertexArrays=(n,vaos)=>{for(var i=0;i>2];GLctx.deleteVertexArray(GL.vaos[id]);GL.vaos[id]=null}};var _glDeleteVertexArraysOES=_glDeleteVertexArrays;var _glDetachShader=(program,shader)=>{GLctx.detachShader(GL.programs[program],GL.shaders[shader])};var _glDisable=x0=>GLctx.disable(x0);var _glDrawElements=(mode,count,type,indices)=>{GLctx.drawElements(mode,count,type,indices)};var _glEnable=x0=>GLctx.enable(x0);var _glEnableVertexAttribArray=index=>{GLctx.enableVertexAttribArray(index)};var _glGenBuffers=(n,buffers)=>{GL.genObject(n,buffers,"createBuffer",GL.buffers)};var _glGenTextures=(n,textures)=>{GL.genObject(n,textures,"createTexture",GL.textures)};var _glGenVertexArrays=(n,arrays)=>{GL.genObject(n,arrays,"createVertexArray",GL.vaos)};var _glGenVertexArraysOES=_glGenVertexArrays;var _glGenerateMipmap=x0=>GLctx.generateMipmap(x0);var _glGetAttribLocation=(program,name)=>GLctx.getAttribLocation(GL.programs[program],UTF8ToString(name));var writeI53ToI64=(ptr,num)=>{HEAPU32[ptr>>2]=num;var lower=HEAPU32[ptr>>2];HEAPU32[ptr+4>>2]=(num-lower)/4294967296};var webglGetExtensions=function $webglGetExtensions(){var exts=getEmscriptenSupportedExtensions(GLctx);exts=exts.concat(exts.map(e=>"GL_"+e));return exts};var emscriptenWebGLGet=(name_,p,type)=>{if(!p){GL.recordError(1281);return}var ret=undefined;switch(name_){case 36346:ret=1;break;case 36344:if(type!=0&&type!=1){GL.recordError(1280)}return;case 34814:case 36345:ret=0;break;case 34466:var formats=GLctx.getParameter(34467);ret=formats?formats.length:0;break;case 33309:if(GL.currentContext.version<2){GL.recordError(1282);return}ret=webglGetExtensions().length;break;case 33307:case 33308:if(GL.currentContext.version<2){GL.recordError(1280);return}ret=name_==33307?3:0;break}if(ret===undefined){var result=GLctx.getParameter(name_);switch(typeof result){case"number":ret=result;break;case"boolean":ret=result?1:0;break;case"string":GL.recordError(1280);return;case"object":if(result===null){switch(name_){case 34964:case 35725:case 34965:case 36006:case 36007:case 32873:case 34229:case 36662:case 36663:case 35053:case 35055:case 36010:case 35097:case 35869:case 32874:case 36389:case 35983:case 35368:case 34068:{ret=0;break}default:{GL.recordError(1280);return}}}else if(result instanceof Float32Array||result instanceof Uint32Array||result instanceof Int32Array||result instanceof Array){for(var i=0;i>2]=result[i];break;case 2:HEAPF32[p+i*4>>2]=result[i];break;case 4:HEAP8[p+i]=result[i]?1:0;break}}return}else{try{ret=result.name|0}catch(e){GL.recordError(1280);err(`GL_INVALID_ENUM in glGet${type}v: Unknown object returned from WebGL getParameter(${name_})! (error: ${e})`);return}}break;default:GL.recordError(1280);err(`GL_INVALID_ENUM in glGet${type}v: Native code calling glGet${type}v(${name_}) and it returns ${result} of type ${typeof result}!`);return}}switch(type){case 1:writeI53ToI64(p,ret);break;case 0:HEAP32[p>>2]=ret;break;case 2:HEAPF32[p>>2]=ret;break;case 4:HEAP8[p]=ret?1:0;break}};var _glGetIntegerv=(name_,p)=>emscriptenWebGLGet(name_,p,0);var _glGetProgramInfoLog=(program,maxLength,length,infoLog)=>{var log=GLctx.getProgramInfoLog(GL.programs[program]);if(log===null)log="(unknown error)";var numBytesWrittenExclNull=maxLength>0&&infoLog?stringToUTF8(log,infoLog,maxLength):0;if(length)HEAP32[length>>2]=numBytesWrittenExclNull};var _glGetProgramiv=(program,pname,p)=>{if(!p){GL.recordError(1281);return}if(program>=GL.counter){GL.recordError(1281);return}program=GL.programs[program];if(pname==35716){var log=GLctx.getProgramInfoLog(program);if(log===null)log="(unknown error)";HEAP32[p>>2]=log.length+1}else if(pname==35719){if(!program.maxUniformLength){for(var i=0;i>2]=program.maxUniformLength}else if(pname==35722){if(!program.maxAttributeLength){for(var i=0;i>2]=program.maxAttributeLength}else if(pname==35381){if(!program.maxUniformBlockNameLength){for(var i=0;i>2]=program.maxUniformBlockNameLength}else{HEAP32[p>>2]=GLctx.getProgramParameter(program,pname)}};var _glGetShaderInfoLog=(shader,maxLength,length,infoLog)=>{var log=GLctx.getShaderInfoLog(GL.shaders[shader]);if(log===null)log="(unknown error)";var numBytesWrittenExclNull=maxLength>0&&infoLog?stringToUTF8(log,infoLog,maxLength):0;if(length)HEAP32[length>>2]=numBytesWrittenExclNull};var _glGetShaderiv=(shader,pname,p)=>{if(!p){GL.recordError(1281);return}if(pname==35716){var log=GLctx.getShaderInfoLog(GL.shaders[shader]);if(log===null)log="(unknown error)";var logLength=log?log.length+1:0;HEAP32[p>>2]=logLength}else if(pname==35720){var source=GLctx.getShaderSource(GL.shaders[shader]);var sourceLength=source?source.length+1:0;HEAP32[p>>2]=sourceLength}else{HEAP32[p>>2]=GLctx.getShaderParameter(GL.shaders[shader],pname)}};var jstoi_q=str=>parseInt(str);var webglGetLeftBracePos=name=>name.slice(-1)=="]"&&name.lastIndexOf("[");var webglPrepareUniformLocationsBeforeFirstUse=program=>{var uniformLocsById=program.uniformLocsById,uniformSizeAndIdsByName=program.uniformSizeAndIdsByName,i,j;if(!uniformLocsById){program.uniformLocsById=uniformLocsById={};program.uniformArrayNamesById={};for(i=0;i0?nm.slice(0,lb):nm;var id=program.uniformIdCounter;program.uniformIdCounter+=sz;uniformSizeAndIdsByName[arrayName]=[sz,id];for(j=0;j{name=UTF8ToString(name);if(program=GL.programs[program]){webglPrepareUniformLocationsBeforeFirstUse(program);var uniformLocsById=program.uniformLocsById;var arrayIndex=0;var uniformBaseName=name;var leftBrace=webglGetLeftBracePos(name);if(leftBrace>0){arrayIndex=jstoi_q(name.slice(leftBrace+1))>>>0;uniformBaseName=name.slice(0,leftBrace)}var sizeAndId=program.uniformSizeAndIdsByName[uniformBaseName];if(sizeAndId&&arrayIndexGLctx.isEnabled(x0);var _glIsProgram=program=>{program=GL.programs[program];if(!program)return 0;return GLctx.isProgram(program)};var _glLinkProgram=program=>{program=GL.programs[program];GLctx.linkProgram(program);program.uniformLocsById=0;program.uniformSizeAndIdsByName={}};var _glScissor=(x0,x1,x2,x3)=>GLctx.scissor(x0,x1,x2,x3);var _glShaderSource=(shader,count,string,length)=>{var source=GL.getSource(shader,count,string,length);GLctx.shaderSource(GL.shaders[shader],source)};var computeUnpackAlignedImageSize=(width,height,sizePerPixel)=>{function roundedToNextMultipleOf(x,y){return x+y-1&-y}var plainRowSize=(GL.unpackRowLength||width)*sizePerPixel;var alignedRowSize=roundedToNextMultipleOf(plainRowSize,GL.unpackAlignment);return height*alignedRowSize};var colorChannelsInGlTextureFormat=format=>{var colorChannels={5:3,6:4,8:2,29502:3,29504:4,26917:2,26918:2,29846:3,29847:4};return colorChannels[format-6402]||1};var heapObjectForWebGLType=type=>{type-=5120;if(type==0)return HEAP8;if(type==1)return HEAPU8;if(type==2)return HEAP16;if(type==4)return HEAP32;if(type==6)return HEAPF32;if(type==5||type==28922||type==28520||type==30779||type==30782)return HEAPU32;return HEAPU16};var toTypedArrayIndex=(pointer,heap)=>pointer>>>31-Math.clz32(heap.BYTES_PER_ELEMENT);var emscriptenWebGLGetTexPixelData=(type,format,width,height,pixels,internalFormat)=>{var heap=heapObjectForWebGLType(type);var sizePerPixel=colorChannelsInGlTextureFormat(format)*heap.BYTES_PER_ELEMENT;var bytes=computeUnpackAlignedImageSize(width,height,sizePerPixel);return heap.subarray(toTypedArrayIndex(pixels,heap),toTypedArrayIndex(pixels+bytes,heap))};var _glTexImage2D=(target,level,internalFormat,width,height,border,format,type,pixels)=>{if(true){if(GLctx.currentPixelUnpackBufferBinding){GLctx.texImage2D(target,level,internalFormat,width,height,border,format,type,pixels);return}if(pixels){var heap=heapObjectForWebGLType(type);var index=toTypedArrayIndex(pixels,heap);GLctx.texImage2D(target,level,internalFormat,width,height,border,format,type,heap,index);return}}var pixelData=pixels?emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,internalFormat):null;GLctx.texImage2D(target,level,internalFormat,width,height,border,format,type,pixelData)};var _glTexParameteri=(x0,x1,x2)=>GLctx.texParameteri(x0,x1,x2);var _glTexSubImage2D=(target,level,xoffset,yoffset,width,height,format,type,pixels)=>{if(true){if(GLctx.currentPixelUnpackBufferBinding){GLctx.texSubImage2D(target,level,xoffset,yoffset,width,height,format,type,pixels);return}if(pixels){var heap=heapObjectForWebGLType(type);GLctx.texSubImage2D(target,level,xoffset,yoffset,width,height,format,type,heap,toTypedArrayIndex(pixels,heap));return}}var pixelData=pixels?emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,0):null;GLctx.texSubImage2D(target,level,xoffset,yoffset,width,height,format,type,pixelData)};var webglGetUniformLocation=location=>{var p=GLctx.currentProgram;if(p){var webglLoc=p.uniformLocsById[location];if(typeof webglLoc=="number"){p.uniformLocsById[location]=webglLoc=GLctx.getUniformLocation(p,p.uniformArrayNamesById[location]+(webglLoc>0?`[${webglLoc}]`:""))}return webglLoc}else{GL.recordError(1282)}};var _glUniform1f=(location,v0)=>{GLctx.uniform1f(webglGetUniformLocation(location),v0)};var _glUniform1i=(location,v0)=>{GLctx.uniform1i(webglGetUniformLocation(location),v0)};var _glUniform2f=(location,v0,v1)=>{GLctx.uniform2f(webglGetUniformLocation(location),v0,v1)};var _glUniformMatrix4fv=(location,count,transpose,value)=>{count&&GLctx.uniformMatrix4fv(webglGetUniformLocation(location),!!transpose,HEAPF32,value>>2,count*16)};var _glUseProgram=program=>{program=GL.programs[program];GLctx.useProgram(program);GLctx.currentProgram=program};var _glVertexAttribPointer=(index,size,type,normalized,stride,ptr)=>{GLctx.vertexAttribPointer(index,size,type,!!normalized,stride,ptr)};var _glViewport=(x0,x1,x2,x3)=>GLctx.viewport(x0,x1,x2,x3);function GLFW_Window(id,width,height,framebufferWidth,framebufferHeight,title,monitor,share){this.id=id;this.x=0;this.y=0;this.fullscreen=false;this.storedX=0;this.storedY=0;this.width=width;this.height=height;this.framebufferWidth=framebufferWidth;this.framebufferHeight=framebufferHeight;this.storedWidth=width;this.storedHeight=height;this.title=title;this.monitor=monitor;this.share=share;this.attributes=Object.assign({},GLFW.hints);this.inputModes={208897:212993,208898:0,208899:0};this.buttons=0;this.keys=new Array;this.domKeys=new Array;this.shouldClose=0;this.title=null;this.windowPosFunc=0;this.windowSizeFunc=0;this.windowCloseFunc=0;this.windowRefreshFunc=0;this.windowFocusFunc=0;this.windowIconifyFunc=0;this.windowMaximizeFunc=0;this.framebufferSizeFunc=0;this.windowContentScaleFunc=0;this.mouseButtonFunc=0;this.cursorPosFunc=0;this.cursorEnterFunc=0;this.scrollFunc=0;this.dropFunc=0;this.keyFunc=0;this.charFunc=0;this.userptr=0}var stringToNewUTF8=str=>{var size=lengthBytesUTF8(str)+1;var ret=_malloc(size);if(ret)stringToUTF8(str,ret,size);return ret};var _emscripten_set_window_title=title=>document.title=UTF8ToString(title);var GLFW={WindowFromId:id=>{if(id<=0||!GLFW.windows)return null;return GLFW.windows[id-1]},joystickFunc:0,errorFunc:0,monitorFunc:0,active:null,scale:null,windows:null,monitors:null,monitorString:null,versionString:null,initialTime:null,extensions:null,devicePixelRatioMQL:null,hints:null,primaryTouchId:null,defaultHints:{131073:0,131074:0,131075:1,131076:1,131077:1,131082:0,135169:8,135170:8,135171:8,135172:8,135173:24,135174:8,135175:0,135176:0,135177:0,135178:0,135179:0,135180:0,135181:0,135182:0,135183:0,139265:196609,139266:1,139267:0,139268:0,139269:0,139270:0,139271:0,139272:0,139276:0},DOMToGLFWKeyCode:keycode=>{switch(keycode){case 32:return 32;case 222:return 39;case 188:return 44;case 173:return 45;case 189:return 45;case 190:return 46;case 191:return 47;case 48:return 48;case 49:return 49;case 50:return 50;case 51:return 51;case 52:return 52;case 53:return 53;case 54:return 54;case 55:return 55;case 56:return 56;case 57:return 57;case 59:return 59;case 61:return 61;case 187:return 61;case 65:return 65;case 66:return 66;case 67:return 67;case 68:return 68;case 69:return 69;case 70:return 70;case 71:return 71;case 72:return 72;case 73:return 73;case 74:return 74;case 75:return 75;case 76:return 76;case 77:return 77;case 78:return 78;case 79:return 79;case 80:return 80;case 81:return 81;case 82:return 82;case 83:return 83;case 84:return 84;case 85:return 85;case 86:return 86;case 87:return 87;case 88:return 88;case 89:return 89;case 90:return 90;case 219:return 91;case 220:return 92;case 221:return 93;case 192:return 96;case 27:return 256;case 13:return 257;case 9:return 258;case 8:return 259;case 45:return 260;case 46:return 261;case 39:return 262;case 37:return 263;case 40:return 264;case 38:return 265;case 33:return 266;case 34:return 267;case 36:return 268;case 35:return 269;case 20:return 280;case 145:return 281;case 144:return 282;case 44:return 283;case 19:return 284;case 112:return 290;case 113:return 291;case 114:return 292;case 115:return 293;case 116:return 294;case 117:return 295;case 118:return 296;case 119:return 297;case 120:return 298;case 121:return 299;case 122:return 300;case 123:return 301;case 124:return 302;case 125:return 303;case 126:return 304;case 127:return 305;case 128:return 306;case 129:return 307;case 130:return 308;case 131:return 309;case 132:return 310;case 133:return 311;case 134:return 312;case 135:return 313;case 136:return 314;case 96:return 320;case 97:return 321;case 98:return 322;case 99:return 323;case 100:return 324;case 101:return 325;case 102:return 326;case 103:return 327;case 104:return 328;case 105:return 329;case 110:return 330;case 111:return 331;case 106:return 332;case 109:return 333;case 107:return 334;case 16:return 340;case 17:return 341;case 18:return 342;case 91:return 343;case 224:return 343;case 93:return 348;default:return-1}},getModBits:win=>{var mod=0;if(win.keys[340])mod|=1;if(win.keys[341])mod|=2;if(win.keys[342])mod|=4;if(win.keys[343]||win.keys[348])mod|=8;return mod},onKeyPress:event=>{if(!GLFW.active||!GLFW.active.charFunc)return;if(event.ctrlKey||event.metaKey)return;var charCode=event.charCode;if(charCode==0||charCode>=0&&charCode<=31)return;getWasmTableEntry(GLFW.active.charFunc)(GLFW.active.id,charCode)},onKeyChanged:(keyCode,status)=>{if(!GLFW.active)return;var key=GLFW.DOMToGLFWKeyCode(keyCode);if(key==-1)return;var repeat=status&&GLFW.active.keys[key];GLFW.active.keys[key]=status;GLFW.active.domKeys[keyCode]=status;if(GLFW.active.keyFunc){if(repeat)status=2;getWasmTableEntry(GLFW.active.keyFunc)(GLFW.active.id,key,keyCode,status,GLFW.getModBits(GLFW.active))}},onGamepadConnected:event=>{GLFW.refreshJoysticks()},onGamepadDisconnected:event=>{GLFW.refreshJoysticks()},onKeydown:event=>{GLFW.onKeyChanged(event.keyCode,1);if(event.keyCode===8||event.keyCode===9){event.preventDefault()}},onKeyup:event=>{GLFW.onKeyChanged(event.keyCode,0)},onBlur:event=>{if(!GLFW.active)return;for(var i=0;i{if(!GLFW.active)return;if(event.type==="touchmove"){event.preventDefault();let primaryChanged=false;for(let i of event.changedTouches){if(GLFW.primaryTouchId===i.identifier){Browser.setMouseCoords(i.pageX,i.pageY);primaryChanged=true;break}}if(!primaryChanged){return}}else{Browser.calculateMouseEvent(event)}if(event.target!=Module["canvas"]||!GLFW.active.cursorPosFunc)return;if(GLFW.active.cursorPosFunc){getWasmTableEntry(GLFW.active.cursorPosFunc)(GLFW.active.id,Browser.mouseX,Browser.mouseY)}},DOMToGLFWMouseButton:event=>{var eventButton=event["button"];if(eventButton>0){if(eventButton==1){eventButton=2}else{eventButton=1}}return eventButton},onMouseenter:event=>{if(!GLFW.active)return;if(event.target!=Module["canvas"])return;if(GLFW.active.cursorEnterFunc){getWasmTableEntry(GLFW.active.cursorEnterFunc)(GLFW.active.id,1)}},onMouseleave:event=>{if(!GLFW.active)return;if(event.target!=Module["canvas"])return;if(GLFW.active.cursorEnterFunc){getWasmTableEntry(GLFW.active.cursorEnterFunc)(GLFW.active.id,0)}},onMouseButtonChanged:(event,status)=>{if(!GLFW.active)return;if(event.target!=Module["canvas"])return;const isTouchType=event.type==="touchstart"||event.type==="touchend"||event.type==="touchcancel";let eventButton=0;if(isTouchType){event.preventDefault();let primaryChanged=false;if(GLFW.primaryTouchId===null&&event.type==="touchstart"&&event.targetTouches.length>0){const chosenTouch=event.targetTouches[0];GLFW.primaryTouchId=chosenTouch.identifier;Browser.setMouseCoords(chosenTouch.pageX,chosenTouch.pageY);primaryChanged=true}else if(event.type==="touchend"||event.type==="touchcancel"){for(let i of event.changedTouches){if(GLFW.primaryTouchId===i.identifier){GLFW.primaryTouchId=null;primaryChanged=true;break}}}if(!primaryChanged){return}}else{Browser.calculateMouseEvent(event);eventButton=GLFW.DOMToGLFWMouseButton(event)}if(status==1){GLFW.active.buttons|=1<{if(!GLFW.active)return;GLFW.onMouseButtonChanged(event,1)},onMouseButtonUp:event=>{if(!GLFW.active)return;GLFW.onMouseButtonChanged(event,0)},onMouseWheel:event=>{var delta=-Browser.getMouseWheelDelta(event);delta=delta==0?0:delta>0?Math.max(delta,1):Math.min(delta,-1);GLFW.wheelPos+=delta;if(!GLFW.active||!GLFW.active.scrollFunc||event.target!=Module["canvas"])return;var sx=0;var sy=delta;if(event.type=="mousewheel"){sx=event.wheelDeltaX}else{sx=event.deltaX}getWasmTableEntry(GLFW.active.scrollFunc)(GLFW.active.id,sx,sy);event.preventDefault()},onCanvasResize:(width,height,framebufferWidth,framebufferHeight)=>{if(!GLFW.active)return;var resizeNeeded=false;if(document["fullscreen"]||document["fullScreen"]||document["mozFullScreen"]||document["webkitIsFullScreen"]){if(!GLFW.active.fullscreen){resizeNeeded=width!=screen.width||height!=screen.height;GLFW.active.storedX=GLFW.active.x;GLFW.active.storedY=GLFW.active.y;GLFW.active.storedWidth=GLFW.active.width;GLFW.active.storedHeight=GLFW.active.height;GLFW.active.x=GLFW.active.y=0;GLFW.active.width=screen.width;GLFW.active.height=screen.height;GLFW.active.fullscreen=true}}else if(GLFW.active.fullscreen==true){resizeNeeded=width!=GLFW.active.storedWidth||height!=GLFW.active.storedHeight;GLFW.active.x=GLFW.active.storedX;GLFW.active.y=GLFW.active.storedY;GLFW.active.width=GLFW.active.storedWidth;GLFW.active.height=GLFW.active.storedHeight;GLFW.active.fullscreen=false}if(resizeNeeded){Browser.setCanvasSize(GLFW.active.width,GLFW.active.height)}else if(GLFW.active.width!=width||GLFW.active.height!=height||GLFW.active.framebufferWidth!=framebufferWidth||GLFW.active.framebufferHeight!=framebufferHeight){GLFW.active.width=width;GLFW.active.height=height;GLFW.active.framebufferWidth=framebufferWidth;GLFW.active.framebufferHeight=framebufferHeight;GLFW.onWindowSizeChanged();GLFW.onFramebufferSizeChanged()}},onWindowSizeChanged:()=>{if(!GLFW.active)return;if(GLFW.active.windowSizeFunc){getWasmTableEntry(GLFW.active.windowSizeFunc)(GLFW.active.id,GLFW.active.width,GLFW.active.height)}},onFramebufferSizeChanged:()=>{if(!GLFW.active)return;if(GLFW.active.framebufferSizeFunc){getWasmTableEntry(GLFW.active.framebufferSizeFunc)(GLFW.active.id,GLFW.active.framebufferWidth,GLFW.active.framebufferHeight)}},onWindowContentScaleChanged:scale=>{GLFW.scale=scale;if(!GLFW.active)return;if(GLFW.active.windowContentScaleFunc){getWasmTableEntry(GLFW.active.windowContentScaleFunc)(GLFW.active.id,GLFW.scale,GLFW.scale)}},getTime:()=>_emscripten_get_now()/1e3,setWindowTitle:(winid,title)=>{var win=GLFW.WindowFromId(winid);if(!win)return;win.title=title;if(GLFW.active.id==win.id){_emscripten_set_window_title(title)}},setJoystickCallback:cbfun=>{var prevcbfun=GLFW.joystickFunc;GLFW.joystickFunc=cbfun;GLFW.refreshJoysticks();return prevcbfun},joys:{},lastGamepadState:[],lastGamepadStateFrame:null,refreshJoysticks:()=>{if(Browser.mainLoop.currentFrameNumber!==GLFW.lastGamepadStateFrame||!Browser.mainLoop.currentFrameNumber){GLFW.lastGamepadState=navigator.getGamepads?navigator.getGamepads():navigator.webkitGetGamepads||[];GLFW.lastGamepadStateFrame=Browser.mainLoop.currentFrameNumber;for(var joy=0;joy>2]=gamepad.axes[i]}}else{if(GLFW.joys[joy]){out("glfw joystick disconnected",joy);if(GLFW.joystickFunc){getWasmTableEntry(GLFW.joystickFunc)(joy,262146)}_free(GLFW.joys[joy].id);_free(GLFW.joys[joy].buttons);_free(GLFW.joys[joy].axes);delete GLFW.joys[joy]}}}}},setKeyCallback:(winid,cbfun)=>{var win=GLFW.WindowFromId(winid);if(!win)return null;var prevcbfun=win.keyFunc;win.keyFunc=cbfun;return prevcbfun},setCharCallback:(winid,cbfun)=>{var win=GLFW.WindowFromId(winid);if(!win)return null;var prevcbfun=win.charFunc;win.charFunc=cbfun;return prevcbfun},setMouseButtonCallback:(winid,cbfun)=>{var win=GLFW.WindowFromId(winid);if(!win)return null;var prevcbfun=win.mouseButtonFunc;win.mouseButtonFunc=cbfun;return prevcbfun},setCursorPosCallback:(winid,cbfun)=>{var win=GLFW.WindowFromId(winid);if(!win)return null;var prevcbfun=win.cursorPosFunc;win.cursorPosFunc=cbfun;return prevcbfun},setScrollCallback:(winid,cbfun)=>{var win=GLFW.WindowFromId(winid);if(!win)return null;var prevcbfun=win.scrollFunc;win.scrollFunc=cbfun;return prevcbfun},setDropCallback:(winid,cbfun)=>{var win=GLFW.WindowFromId(winid);if(!win)return null;var prevcbfun=win.dropFunc;win.dropFunc=cbfun;return prevcbfun},onDrop:event=>{if(!GLFW.active||!GLFW.active.dropFunc)return;if(!event.dataTransfer||!event.dataTransfer.files||event.dataTransfer.files.length==0)return;event.preventDefault();var filenames=_malloc(event.dataTransfer.files.length*4);var filenamesArray=[];var count=event.dataTransfer.files.length;var written=0;var drop_dir=".glfw_dropped_files";FS.createPath("/",drop_dir);function save(file){var path="/"+drop_dir+"/"+file.name.replace(/\//g,"_");var reader=new FileReader;reader.onloadend=e=>{if(reader.readyState!=2){++written;out("failed to read dropped file: "+file.name+": "+reader.error);return}var data=e.target.result;FS.writeFile(path,new Uint8Array(data));if(++written===count){getWasmTableEntry(GLFW.active.dropFunc)(GLFW.active.id,count,filenames);for(var i=0;i>2]=filename}for(var i=0;i{if(!GLFW.active||!GLFW.active.dropFunc)return;event.preventDefault();return false},setWindowSizeCallback:(winid,cbfun)=>{var win=GLFW.WindowFromId(winid);if(!win)return null;var prevcbfun=win.windowSizeFunc;win.windowSizeFunc=cbfun;return prevcbfun},setWindowCloseCallback:(winid,cbfun)=>{var win=GLFW.WindowFromId(winid);if(!win)return null;var prevcbfun=win.windowCloseFunc;win.windowCloseFunc=cbfun;return prevcbfun},setWindowRefreshCallback:(winid,cbfun)=>{var win=GLFW.WindowFromId(winid);if(!win)return null;var prevcbfun=win.windowRefreshFunc;win.windowRefreshFunc=cbfun;return prevcbfun},onClickRequestPointerLock:e=>{if(!Browser.pointerLock&&Module["canvas"].requestPointerLock){Module["canvas"].requestPointerLock();e.preventDefault()}},setInputMode:(winid,mode,value)=>{var win=GLFW.WindowFromId(winid);if(!win)return;switch(mode){case 208897:{switch(value){case 212993:{win.inputModes[mode]=value;Module["canvas"].removeEventListener("click",GLFW.onClickRequestPointerLock,true);Module["canvas"].exitPointerLock();break}case 212994:{err("glfwSetInputMode called with GLFW_CURSOR_HIDDEN value not implemented");break}case 212995:{win.inputModes[mode]=value;Module["canvas"].addEventListener("click",GLFW.onClickRequestPointerLock,true);Module["canvas"].requestPointerLock();break}default:{err(`glfwSetInputMode called with unknown value parameter value: ${value}`);break}}break}case 208898:{err("glfwSetInputMode called with GLFW_STICKY_KEYS mode not implemented");break}case 208899:{err("glfwSetInputMode called with GLFW_STICKY_MOUSE_BUTTONS mode not implemented");break}case 208900:{err("glfwSetInputMode called with GLFW_LOCK_KEY_MODS mode not implemented");break}case 3342341:{err("glfwSetInputMode called with GLFW_RAW_MOUSE_MOTION mode not implemented");break}default:{err(`glfwSetInputMode called with unknown mode parameter value: ${mode}`);break}}},getKey:(winid,key)=>{var win=GLFW.WindowFromId(winid);if(!win)return 0;return win.keys[key]},getMouseButton:(winid,button)=>{var win=GLFW.WindowFromId(winid);if(!win)return 0;return(win.buttons&1<0},getCursorPos:(winid,x,y)=>{HEAPF64[x>>3]=Browser.mouseX;HEAPF64[y>>3]=Browser.mouseY},getMousePos:(winid,x,y)=>{HEAP32[x>>2]=Browser.mouseX;HEAP32[y>>2]=Browser.mouseY},setCursorPos:(winid,x,y)=>{},getWindowPos:(winid,x,y)=>{var wx=0;var wy=0;var win=GLFW.WindowFromId(winid);if(win){wx=win.x;wy=win.y}if(x){HEAP32[x>>2]=wx}if(y){HEAP32[y>>2]=wy}},setWindowPos:(winid,x,y)=>{var win=GLFW.WindowFromId(winid);if(!win)return;win.x=x;win.y=y},getWindowSize:(winid,width,height)=>{var ww=0;var wh=0;var win=GLFW.WindowFromId(winid);if(win){ww=win.width;wh=win.height}if(width){HEAP32[width>>2]=ww}if(height){HEAP32[height>>2]=wh}},setWindowSize:(winid,width,height)=>{var win=GLFW.WindowFromId(winid);if(!win)return;if(GLFW.active.id==win.id){Browser.setCanvasSize(width,height)}},defaultWindowHints:()=>{GLFW.hints=Object.assign({},GLFW.defaultHints)},createWindow:(width,height,title,monitor,share)=>{var i,id;for(i=0;i0)throw"glfwCreateWindow only supports one window at time currently";id=i+1;if(width<=0||height<=0)return 0;if(monitor){Browser.requestFullscreen()}else{Browser.setCanvasSize(width,height)}for(i=0;i0;if(i==GLFW.windows.length){if(useWebGL){var contextAttributes={antialias:GLFW.hints[135181]>1,depth:GLFW.hints[135173]>0,stencil:GLFW.hints[135174]>0,alpha:GLFW.hints[135172]>0};Module.ctx=Browser.createContext(Module["canvas"],true,true,contextAttributes)}else{Browser.init()}}if(!Module.ctx&&useWebGL)return 0;const canvas=Module["canvas"];var win=new GLFW_Window(id,canvas.clientWidth,canvas.clientHeight,canvas.width,canvas.height,title,monitor,share);if(id-1==GLFW.windows.length){GLFW.windows.push(win)}else{GLFW.windows[id-1]=win}GLFW.active=win;GLFW.adjustCanvasDimensions();return win.id},destroyWindow:winid=>{var win=GLFW.WindowFromId(winid);if(!win)return;if(win.windowCloseFunc){getWasmTableEntry(win.windowCloseFunc)(win.id)}GLFW.windows[win.id-1]=null;if(GLFW.active.id==win.id)GLFW.active=null;for(var i=0;i{},requestFullscreen(lockPointer,resizeCanvas){Browser.lockPointer=lockPointer;Browser.resizeCanvas=resizeCanvas;if(typeof Browser.lockPointer=="undefined")Browser.lockPointer=true;if(typeof Browser.resizeCanvas=="undefined")Browser.resizeCanvas=false;var canvas=Module["canvas"];function fullscreenChange(){Browser.isFullscreen=false;var canvasContainer=canvas.parentNode;if((document["fullscreenElement"]||document["mozFullScreenElement"]||document["msFullscreenElement"]||document["webkitFullscreenElement"]||document["webkitCurrentFullScreenElement"])===canvasContainer){canvas.exitFullscreen=Browser.exitFullscreen;if(Browser.lockPointer)canvas.requestPointerLock();Browser.isFullscreen=true;if(Browser.resizeCanvas){Browser.setFullscreenCanvasSize()}else{Browser.updateCanvasDimensions(canvas);Browser.updateResizeListeners()}}else{canvasContainer.parentNode.insertBefore(canvas,canvasContainer);canvasContainer.parentNode.removeChild(canvasContainer);if(Browser.resizeCanvas){Browser.setWindowedCanvasSize()}else{Browser.updateCanvasDimensions(canvas);Browser.updateResizeListeners()}}Module["onFullScreen"]?.(Browser.isFullscreen);Module["onFullscreen"]?.(Browser.isFullscreen)}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"]?()=>canvasContainer["webkitRequestFullscreen"](Element["ALLOW_KEYBOARD_INPUT"]):null)||(canvasContainer["webkitRequestFullScreen"]?()=>canvasContainer["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"]):null);canvasContainer.requestFullscreen()},updateCanvasDimensions(canvas,wNative,hNative){const scale=GLFW.getHiDPIScale();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{var win=GLFW.WindowFromId(winid);if(!win)return;const isHiDPIAware=GLFW.isHiDPIAware();win.attributes[attrib]=value;if(isHiDPIAware!==GLFW.isHiDPIAware())GLFW.adjustCanvasDimensions()},getDevicePixelRatio(){return typeof devicePixelRatio=="number"&&devicePixelRatio||1},isHiDPIAware(){if(GLFW.active)return GLFW.active.attributes[139276]>0;else return false},adjustCanvasDimensions(){const canvas=Module["canvas"];Browser.updateCanvasDimensions(canvas,canvas.clientWidth,canvas.clientHeight);Browser.updateResizeListeners()},getHiDPIScale(){return GLFW.isHiDPIAware()?GLFW.scale:1},onDevicePixelRatioChange(){GLFW.onWindowContentScaleChanged(GLFW.getDevicePixelRatio());GLFW.adjustCanvasDimensions()},GLFW2ParamToGLFW3Param:param=>{var table={196609:0,196610:0,196611:0,196612:0,196613:0,196614:0,131073:0,131074:0,131075:0,131076:0,131077:135169,131078:135170,131079:135171,131080:135172,131081:135173,131082:135174,131083:135183,131084:135175,131085:135176,131086:135177,131087:135178,131088:135179,131089:135180,131090:0,131091:135181,131092:139266,131093:139267,131094:139270,131095:139271,131096:139272};return table[param]}};var _glfwCreateStandardCursor=shape=>{};var _glfwCreateWindow=(width,height,title,monitor,share)=>GLFW.createWindow(width,height,title,monitor,share);var _glfwDestroyWindow=winid=>GLFW.destroyWindow(winid);var _glfwFocusWindow=winid=>{};var _glfwGetClipboardString=win=>{};var _glfwGetCurrentContext=()=>GLFW.active?GLFW.active.id:0;var _glfwGetCursorPos=(winid,x,y)=>GLFW.getCursorPos(winid,x,y);var _glfwGetFramebufferSize=(winid,width,height)=>{var ww=0;var wh=0;var win=GLFW.WindowFromId(winid);if(win){ww=win.framebufferWidth;wh=win.framebufferHeight}if(width){HEAP32[width>>2]=ww}if(height){HEAP32[height>>2]=wh}};var _glfwGetInputMode=(winid,mode)=>{var win=GLFW.WindowFromId(winid);if(!win)return;switch(mode){case 208897:{if(Browser.pointerLock){win.inputModes[mode]=212995}else{win.inputModes[mode]=212993}}}return win.inputModes[mode]};var _glfwGetJoystickAxes=(joy,count)=>{GLFW.refreshJoysticks();var state=GLFW.joys[joy];if(!state||!state.axes){HEAP32[count>>2]=0;return}HEAP32[count>>2]=state.axesCount;return state.axes};var _glfwGetJoystickButtons=(joy,count)=>{GLFW.refreshJoysticks();var state=GLFW.joys[joy];if(!state||!state.buttons){HEAP32[count>>2]=0;return}HEAP32[count>>2]=state.buttonsCount;return state.buttons};var _glfwGetKey=(winid,key)=>GLFW.getKey(winid,key);var _glfwGetMonitorContentScale=(monitor,x,y)=>{HEAPF32[x>>2]=GLFW.scale;HEAPF32[y>>2]=GLFW.scale};var _glfwGetMonitorPos=(monitor,x,y)=>{HEAP32[x>>2]=0;HEAP32[y>>2]=0};var _glfwGetMonitorWorkarea=(monitor,x,y,w,h)=>{HEAP32[x>>2]=0;HEAP32[y>>2]=0;HEAP32[w>>2]=screen.availWidth;HEAP32[h>>2]=screen.availHeight};var _glfwGetMonitors=count=>{HEAP32[count>>2]=1;if(!GLFW.monitors){GLFW.monitors=_malloc(4);HEAP32[GLFW.monitors>>2]=1}return GLFW.monitors};var _glfwGetTime=()=>GLFW.getTime()-GLFW.initialTime;var _glfwGetVideoMode=monitor=>0;var _glfwGetWindowAttrib=(winid,attrib)=>{var win=GLFW.WindowFromId(winid);if(!win)return 0;return win.attributes[attrib]};var _glfwGetWindowContentScale=(winid,x,y)=>{HEAPF32[x>>2]=GLFW.scale;HEAPF32[y>>2]=GLFW.scale};var _glfwGetWindowPos=(winid,x,y)=>GLFW.getWindowPos(winid,x,y);var _glfwGetWindowSize=(winid,width,height)=>GLFW.getWindowSize(winid,width,height);var _glfwInit=()=>{if(GLFW.windows)return 1;GLFW.initialTime=GLFW.getTime();GLFW.defaultWindowHints();GLFW.windows=new Array;GLFW.active=null;GLFW.scale=GLFW.getDevicePixelRatio();window.addEventListener("gamepadconnected",GLFW.onGamepadConnected,true);window.addEventListener("gamepaddisconnected",GLFW.onGamepadDisconnected,true);window.addEventListener("keydown",GLFW.onKeydown,true);window.addEventListener("keypress",GLFW.onKeyPress,true);window.addEventListener("keyup",GLFW.onKeyup,true);window.addEventListener("blur",GLFW.onBlur,true);GLFW.devicePixelRatioMQL=window.matchMedia("(resolution: "+GLFW.getDevicePixelRatio()+"dppx)");GLFW.devicePixelRatioMQL.addEventListener("change",GLFW.onDevicePixelRatioChange);Module["canvas"].addEventListener("touchmove",GLFW.onMousemove,true);Module["canvas"].addEventListener("touchstart",GLFW.onMouseButtonDown,true);Module["canvas"].addEventListener("touchcancel",GLFW.onMouseButtonUp,true);Module["canvas"].addEventListener("touchend",GLFW.onMouseButtonUp,true);Module["canvas"].addEventListener("mousemove",GLFW.onMousemove,true);Module["canvas"].addEventListener("mousedown",GLFW.onMouseButtonDown,true);Module["canvas"].addEventListener("mouseup",GLFW.onMouseButtonUp,true);Module["canvas"].addEventListener("wheel",GLFW.onMouseWheel,true);Module["canvas"].addEventListener("mousewheel",GLFW.onMouseWheel,true);Module["canvas"].addEventListener("mouseenter",GLFW.onMouseenter,true);Module["canvas"].addEventListener("mouseleave",GLFW.onMouseleave,true);Module["canvas"].addEventListener("drop",GLFW.onDrop,true);Module["canvas"].addEventListener("dragover",GLFW.onDragover,true);Browser.requestFullscreen=GLFW.requestFullscreen;Browser.calculateMouseCoords=GLFW.calculateMouseCoords;Browser.updateCanvasDimensions=GLFW.updateCanvasDimensions;Browser.resizeListeners.push((width,height)=>{if(GLFW.isHiDPIAware()){var canvas=Module["canvas"];GLFW.onCanvasResize(canvas.clientWidth,canvas.clientHeight,width,height)}else{GLFW.onCanvasResize(width,height,width,height)}});return 1};var _glfwMakeContextCurrent=winid=>{};var _glfwPollEvents=()=>{};var _glfwSetCharCallback=(winid,cbfun)=>GLFW.setCharCallback(winid,cbfun);var _glfwSetClipboardString=(win,string)=>{};var _glfwSetCursor=(winid,cursor)=>{};var _glfwSetCursorEnterCallback=(winid,cbfun)=>{var win=GLFW.WindowFromId(winid);if(!win)return null;var prevcbfun=win.cursorEnterFunc;win.cursorEnterFunc=cbfun;return prevcbfun};var _glfwSetCursorPos=(winid,x,y)=>GLFW.setCursorPos(winid,x,y);var _glfwSetCursorPosCallback=(winid,cbfun)=>GLFW.setCursorPosCallback(winid,cbfun);var _glfwSetDropCallback=(winid,cbfun)=>GLFW.setDropCallback(winid,cbfun);var _glfwSetErrorCallback=cbfun=>{var prevcbfun=GLFW.errorFunc;GLFW.errorFunc=cbfun;return prevcbfun};var _glfwSetInputMode=(winid,mode,value)=>{GLFW.setInputMode(winid,mode,value)};var _glfwSetKeyCallback=(winid,cbfun)=>GLFW.setKeyCallback(winid,cbfun);var _glfwSetMonitorCallback=cbfun=>{var prevcbfun=GLFW.monitorFunc;GLFW.monitorFunc=cbfun;return prevcbfun};var _glfwSetMouseButtonCallback=(winid,cbfun)=>GLFW.setMouseButtonCallback(winid,cbfun);var _glfwSetScrollCallback=(winid,cbfun)=>GLFW.setScrollCallback(winid,cbfun);var _glfwSetWindowCloseCallback=(winid,cbfun)=>GLFW.setWindowCloseCallback(winid,cbfun);var _glfwSetWindowContentScaleCallback=(winid,cbfun)=>{var win=GLFW.WindowFromId(winid);if(!win)return null;var prevcbfun=win.windowContentScaleFunc;win.windowContentScaleFunc=cbfun;return prevcbfun};var _glfwSetWindowFocusCallback=(winid,cbfun)=>{var win=GLFW.WindowFromId(winid);if(!win)return null;var prevcbfun=win.windowFocusFunc;win.windowFocusFunc=cbfun;return prevcbfun};var _glfwSetWindowOpacity=(winid,opacity)=>{};var _glfwSetWindowPos=(winid,x,y)=>GLFW.setWindowPos(winid,x,y);var _glfwSetWindowPosCallback=(winid,cbfun)=>{var win=GLFW.WindowFromId(winid);if(!win)return null;var prevcbfun=win.windowPosFunc;win.windowPosFunc=cbfun;return prevcbfun};var _glfwSetWindowRefreshCallback=(winid,cbfun)=>GLFW.setWindowRefreshCallback(winid,cbfun);var _glfwSetWindowSize=(winid,width,height)=>GLFW.setWindowSize(winid,width,height);var _glfwSetWindowSizeCallback=(winid,cbfun)=>GLFW.setWindowSizeCallback(winid,cbfun);var _glfwSetWindowTitle=(winid,title)=>GLFW.setWindowTitle(winid,title);var _glfwShowWindow=winid=>{};var _glfwSwapBuffers=winid=>GLFW.swapBuffers(winid);var _glfwSwapInterval=interval=>{interval=Math.abs(interval);if(interval==0)_emscripten_set_main_loop_timing(0,0);else _emscripten_set_main_loop_timing(1,interval)};var _glfwTerminate=()=>{window.removeEventListener("gamepadconnected",GLFW.onGamepadConnected,true);window.removeEventListener("gamepaddisconnected",GLFW.onGamepadDisconnected,true);window.removeEventListener("keydown",GLFW.onKeydown,true);window.removeEventListener("keypress",GLFW.onKeyPress,true);window.removeEventListener("keyup",GLFW.onKeyup,true);window.removeEventListener("blur",GLFW.onBlur,true);Module["canvas"].removeEventListener("touchmove",GLFW.onMousemove,true);Module["canvas"].removeEventListener("touchstart",GLFW.onMouseButtonDown,true);Module["canvas"].removeEventListener("touchcancel",GLFW.onMouseButtonUp,true);Module["canvas"].removeEventListener("touchend",GLFW.onMouseButtonUp,true);Module["canvas"].removeEventListener("mousemove",GLFW.onMousemove,true);Module["canvas"].removeEventListener("mousedown",GLFW.onMouseButtonDown,true);Module["canvas"].removeEventListener("mouseup",GLFW.onMouseButtonUp,true);Module["canvas"].removeEventListener("wheel",GLFW.onMouseWheel,true);Module["canvas"].removeEventListener("mousewheel",GLFW.onMouseWheel,true);Module["canvas"].removeEventListener("mouseenter",GLFW.onMouseenter,true);Module["canvas"].removeEventListener("mouseleave",GLFW.onMouseleave,true);Module["canvas"].removeEventListener("drop",GLFW.onDrop,true);Module["canvas"].removeEventListener("dragover",GLFW.onDragover,true);if(GLFW.devicePixelRatioMQL)GLFW.devicePixelRatioMQL.removeEventListener("change",GLFW.onDevicePixelRatioChange);Module["canvas"].width=Module["canvas"].height=1;GLFW.windows=null;GLFW.active=null};var _glfwWaitEvents=()=>{};var _glfwWindowHint=(target,hint)=>{GLFW.hints[target]=hint};var stackAlloc=sz=>__emscripten_stack_alloc(sz);var stringToUTF8OnStack=str=>{var size=lengthBytesUTF8(str)+1;var ret=stackAlloc(size);stringToUTF8(str,ret,size);return ret};var getCFunc=ident=>{var func=Module["_"+ident];return func};var writeArrayToMemory=(array,buffer)=>{HEAP8.set(array,buffer)};var ccall=(ident,returnType,argTypes,args,opts)=>{var toC={string:str=>{var ret=0;if(str!==null&&str!==undefined&&str!==0){ret=stringToUTF8OnStack(str)}return ret},array:arr=>{var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}};function convertReturnValue(ret){if(returnType==="string"){return UTF8ToString(ret)}if(returnType==="boolean")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i(___wasm_call_ctors=wasmExports["Kb"])();var _upload_file_return=Module["_upload_file_return"]=(a0,a1,a2,a3,a4,a5)=>(_upload_file_return=Module["_upload_file_return"]=wasmExports["Lb"])(a0,a1,a2,a3,a4,a5);var _runApp=Module["_runApp"]=()=>(_runApp=Module["_runApp"]=wasmExports["Mb"])();var _main=Module["_main"]=(a0,a1)=>(_main=Module["_main"]=wasmExports["Nb"])(a0,a1);var __Z35ma_device__on_notification_unlockedP9ma_device=Module["__Z35ma_device__on_notification_unlockedP9ma_device"]=a0=>(__Z35ma_device__on_notification_unlockedP9ma_device=Module["__Z35ma_device__on_notification_unlockedP9ma_device"]=wasmExports["Ob"])(a0);var _ma_malloc_emscripten=Module["_ma_malloc_emscripten"]=(a0,a1)=>(_ma_malloc_emscripten=Module["_ma_malloc_emscripten"]=wasmExports["Pb"])(a0,a1);var _ma_free_emscripten=Module["_ma_free_emscripten"]=(a0,a1)=>(_ma_free_emscripten=Module["_ma_free_emscripten"]=wasmExports["Qb"])(a0,a1);var _ma_device_process_pcm_frames_capture__webaudio=Module["_ma_device_process_pcm_frames_capture__webaudio"]=(a0,a1,a2)=>(_ma_device_process_pcm_frames_capture__webaudio=Module["_ma_device_process_pcm_frames_capture__webaudio"]=wasmExports["Rb"])(a0,a1,a2);var _ma_device_process_pcm_frames_playback__webaudio=Module["_ma_device_process_pcm_frames_playback__webaudio"]=(a0,a1,a2)=>(_ma_device_process_pcm_frames_playback__webaudio=Module["_ma_device_process_pcm_frames_playback__webaudio"]=wasmExports["Sb"])(a0,a1,a2);var _malloc=Module["_malloc"]=a0=>(_malloc=Module["_malloc"]=wasmExports["Tb"])(a0);var _free=Module["_free"]=a0=>(_free=Module["_free"]=wasmExports["Ub"])(a0);var __emscripten_tempret_set=a0=>(__emscripten_tempret_set=wasmExports["Wb"])(a0);var __emscripten_stack_restore=a0=>(__emscripten_stack_restore=wasmExports["Xb"])(a0);var __emscripten_stack_alloc=a0=>(__emscripten_stack_alloc=wasmExports["Yb"])(a0);var _emscripten_stack_get_current=()=>(_emscripten_stack_get_current=wasmExports["Zb"])();var ___cxa_is_pointer_type=a0=>(___cxa_is_pointer_type=wasmExports["_b"])(a0);Module["ccall"]=ccall;var calledRun;dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function callMain(args=[]){var entryFunction=_main;args.unshift(thisProgram);var argc=args.length;var argv=stackAlloc((argc+1)*4);var argv_ptr=argv;args.forEach(arg=>{HEAPU32[argv_ptr>>2]=stringToUTF8OnStack(arg);argv_ptr+=4});HEAPU32[argv_ptr>>2]=0;try{var ret=entryFunction(argc,argv);exitJS(ret,true);return ret}catch(e){return handleException(e)}}function run(args=arguments_){if(runDependencies>0){return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();preMain();Module["onRuntimeInitialized"]?.();if(shouldRunNow)callMain(args);postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}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(); diff --git a/MegaBoy.wasm b/MegaBoy.wasm index e277e7a88c7dd3c1ac91e3259558be5de303b589..925d95a8a460f537f636a9b109e0b250915f1eca 100644 GIT binary patch delta 202654 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∨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

}1^z^GctYS! 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 YNTs*MyXS5B{+P&|--Jog4s5Xf4GuCYxc~qF delta 186360 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

h#7ij?@Rw|L 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