From 902b052281121d6477119ef48501c8927255c555 Mon Sep 17 00:00:00 2001 From: Etan Kissling Date: Sat, 5 Aug 2023 16:18:11 +0200 Subject: [PATCH] display transaction input in details view For each transaction, display the validated input. --- UpdateWasm | 2 +- index.html | 35 ++++++++++++++++++++++++++++++++++- libnimbus_lc.js | 2 +- libnimbus_lc.wasm | Bin 2953884 -> 2954594 bytes 4 files changed, 36 insertions(+), 3 deletions(-) diff --git a/UpdateWasm b/UpdateWasm index 274d1e9..4ae0613 100755 --- a/UpdateWasm +++ b/UpdateWasm @@ -88,7 +88,7 @@ nim c \ --passL:'-sUSE_PTHREADS=1' \ --passC:'-sPTHREAD_POOL_SIZE_STRICT=0' \ --passL:'-sPTHREAD_POOL_SIZE_STRICT=0' \ - --passL:'-sEXPORTED_FUNCTIONS="[_free, _malloc, _NimMain, _ETHRandomNumberCreate, _ETHConsensusConfigCreateFromYaml, _ETHConsensusConfigGetConsensusVersionAtEpoch, _ETHBeaconStateCreateFromSsz, _ETHBeaconStateDestroy, _ETHBeaconStateCopyGenesisValidatorsRoot, _ETHRootDestroy, _ETHForkDigestsCreateFromState, _ETHBeaconClockCreateFromState, _ETHBeaconClockGetSlot, _ETHLightClientStoreCreateFromBootstrap, _ETHLightClientStoreDestroy, _kETHLcSyncKind_UpdatesByRange, _kETHLcSyncKind_FinalityUpdate, _kETHLcSyncKind_OptimisticUpdate, _ETHLightClientStoreGetNextSyncTask, _ETHLightClientStoreGetMillisecondsToNextSyncTask, _ETHLightClientStoreProcessUpdatesByRange, _ETHLightClientStoreProcessFinalityUpdate, _ETHLightClientStoreProcessOptimisticUpdate, _ETHLightClientStoreGetFinalizedHeader, _ETHLightClientStoreIsNextSyncCommitteeKnown, _ETHLightClientStoreGetOptimisticHeader, _ETHLightClientStoreGetSafetyThreshold, _ETHLightClientHeaderCreateCopy, _ETHLightClientHeaderDestroy, _ETHLightClientHeaderCopyBeaconRoot, _ETHLightClientHeaderGetBeacon, _ETHBeaconBlockHeaderGetSlot, _ETHBeaconBlockHeaderGetProposerIndex, _ETHBeaconBlockHeaderGetParentRoot, _ETHBeaconBlockHeaderGetStateRoot, _ETHBeaconBlockHeaderGetBodyRoot, _ETHLightClientHeaderCopyExecutionHash, _ETHLightClientHeaderGetExecution, _ETHExecutionPayloadHeaderGetParentHash, _ETHExecutionPayloadHeaderGetFeeRecipient, _ETHExecutionPayloadHeaderGetStateRoot, _ETHExecutionPayloadHeaderGetReceiptsRoot, _ETHExecutionPayloadHeaderGetLogsBloom, _ETHExecutionPayloadHeaderGetPrevRandao, _ETHExecutionPayloadHeaderGetBlockNumber, _ETHExecutionPayloadHeaderGetGasLimit, _ETHExecutionPayloadHeaderGetGasUsed, _ETHExecutionPayloadHeaderGetTimestamp, _ETHExecutionPayloadHeaderGetExtraDataBytes, _ETHExecutionPayloadHeaderGetNumExtraDataBytes, _ETHExecutionPayloadHeaderGetBaseFeePerGas, _ETHExecutionPayloadHeaderGetBlobGasUsed, _ETHExecutionPayloadHeaderGetExcessBlobGas, _ETHExecutionBlockHeaderCreateFromJson, _ETHExecutionBlockHeaderDestroy, _ETHExecutionBlockHeaderGetTransactionsRoot, _ETHExecutionBlockHeaderGetWithdrawalsRoot, _ETHTransactionsCreateFromJson, _ETHTransactionsDestroy, _ETHTransactionsGetCount, _ETHTransactionsGet, _ETHTransactionGetHash, _ETHTransactionGetFrom, _ETHTransactionGetNonce, _ETHTransactionGetMaxPriorityFeePerGas, _ETHTransactionGetMaxFeePerGas, _ETHTransactionGetGas, _ETHTransactionIsCreatingContract, _ETHTransactionGetTo, _ETHTransactionGetValue, _ETHTransactionGetBytes]"' \ + --passL:'-sEXPORTED_FUNCTIONS="[_free, _malloc, _NimMain, _ETHRandomNumberCreate, _ETHConsensusConfigCreateFromYaml, _ETHConsensusConfigGetConsensusVersionAtEpoch, _ETHBeaconStateCreateFromSsz, _ETHBeaconStateDestroy, _ETHBeaconStateCopyGenesisValidatorsRoot, _ETHRootDestroy, _ETHForkDigestsCreateFromState, _ETHBeaconClockCreateFromState, _ETHBeaconClockGetSlot, _ETHLightClientStoreCreateFromBootstrap, _ETHLightClientStoreDestroy, _kETHLcSyncKind_UpdatesByRange, _kETHLcSyncKind_FinalityUpdate, _kETHLcSyncKind_OptimisticUpdate, _ETHLightClientStoreGetNextSyncTask, _ETHLightClientStoreGetMillisecondsToNextSyncTask, _ETHLightClientStoreProcessUpdatesByRange, _ETHLightClientStoreProcessFinalityUpdate, _ETHLightClientStoreProcessOptimisticUpdate, _ETHLightClientStoreGetFinalizedHeader, _ETHLightClientStoreIsNextSyncCommitteeKnown, _ETHLightClientStoreGetOptimisticHeader, _ETHLightClientStoreGetSafetyThreshold, _ETHLightClientHeaderCreateCopy, _ETHLightClientHeaderDestroy, _ETHLightClientHeaderCopyBeaconRoot, _ETHLightClientHeaderGetBeacon, _ETHBeaconBlockHeaderGetSlot, _ETHBeaconBlockHeaderGetProposerIndex, _ETHBeaconBlockHeaderGetParentRoot, _ETHBeaconBlockHeaderGetStateRoot, _ETHBeaconBlockHeaderGetBodyRoot, _ETHLightClientHeaderCopyExecutionHash, _ETHLightClientHeaderGetExecution, _ETHExecutionPayloadHeaderGetParentHash, _ETHExecutionPayloadHeaderGetFeeRecipient, _ETHExecutionPayloadHeaderGetStateRoot, _ETHExecutionPayloadHeaderGetReceiptsRoot, _ETHExecutionPayloadHeaderGetLogsBloom, _ETHExecutionPayloadHeaderGetPrevRandao, _ETHExecutionPayloadHeaderGetBlockNumber, _ETHExecutionPayloadHeaderGetGasLimit, _ETHExecutionPayloadHeaderGetGasUsed, _ETHExecutionPayloadHeaderGetTimestamp, _ETHExecutionPayloadHeaderGetExtraDataBytes, _ETHExecutionPayloadHeaderGetNumExtraDataBytes, _ETHExecutionPayloadHeaderGetBaseFeePerGas, _ETHExecutionPayloadHeaderGetBlobGasUsed, _ETHExecutionPayloadHeaderGetExcessBlobGas, _ETHExecutionBlockHeaderCreateFromJson, _ETHExecutionBlockHeaderDestroy, _ETHExecutionBlockHeaderGetTransactionsRoot, _ETHExecutionBlockHeaderGetWithdrawalsRoot, _ETHTransactionsCreateFromJson, _ETHTransactionsDestroy, _ETHTransactionsGetCount, _ETHTransactionsGet, _ETHTransactionGetHash, _ETHTransactionGetFrom, _ETHTransactionGetNonce, _ETHTransactionGetMaxPriorityFeePerGas, _ETHTransactionGetMaxFeePerGas, _ETHTransactionGetGas, _ETHTransactionIsCreatingContract, _ETHTransactionGetTo, _ETHTransactionGetValue, _ETHTransactionGetInputBytes, _ETHTransactionGetBytes]"' \ --passL:'-sEXPORTED_RUNTIME_METHODS="[lengthBytesUTF8, stringToNewUTF8]"' \ --passL:'-Wl,--no-entry' \ --noMain:on \ diff --git a/index.html b/index.html index 4a8cf38..dc4a88e 100644 --- a/index.html +++ b/index.html @@ -214,6 +214,31 @@ return num.toString(); } + function toHumanReadableByteCountString(numBytes) { + if (numBytes >= 1e12) { + return (number / 1e12).toFixed(1) + ' TB'; + } + if (numBytes >= 1e11) { + return (number / 1e9).toFixed(0) + ' GB'; + } + if (numBytes >= 1e9) { + return (number / 1e9).toFixed(1) + ' GB'; + } + if (numBytes >= 1e8) { + return (number / 1e6).toFixed(0) + ' MB'; + } + if (numBytes >= 1e6) { + return (number / 1e6).toFixed(1) + ' MB'; + } + if (numBytes >= 1e5) { + return (number / 1e3).toFixed(0) + ' KB'; + } + if (numBytes >= 1e3) { + return (number / 1e3).toFixed(1) + ' KB'; + } + return numBytes + ' bytes' + } + function toHumanReadableNumberString(number) { if (number >= 1e12) { return (number / 1e12).toFixed(1) + 'T'; @@ -509,6 +534,8 @@ const numTransactions = Module._ETHTransactionsGetCount(transactions); document.getElementById(prefix + 'TransactionList').innerHTML = ''; + const numTransactionInputBytesPtr = Module._malloc(4); + assert(numTransactionInputBytesPtr); const numTransactionBytesPtr = Module._malloc(4); assert(numTransactionBytesPtr); for (let transactionIndex = 0; transactionIndex < numTransactions; transactionIndex++) { @@ -524,6 +551,8 @@ const transactionIsCreatingContract = Module._ETHTransactionIsCreatingContract(transaction); const transactionTo = Module._ETHTransactionGetTo(transaction); const transactionValue = Module._ETHTransactionGetValue(transaction); + const transactionInputBytes = Module._ETHTransactionGetBytes(transaction, numTransactionInputBytesPtr); + const numTransactionInputBytes = Module.HEAPU32[numTransactionInputBytesPtr >>> 2]; const transactionBytes = Module._ETHTransactionGetBytes(transaction, numTransactionBytesPtr); const transactionBytesString = toHexString(transactionBytes, Module.HEAPU32[numTransactionBytesPtr >>> 2]); @@ -559,9 +588,12 @@ '' + ' ' + ' ' + - ' ' + + ' ' + toEthString(transactionValue, 32) + ' ETH' + '' + + ' ' + + toHumanReadableByteCountString(numTransactionInputBytes) + + '' + ' ' + ' ' + ' {throw toThrow};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";var ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(Module["ENVIRONMENT"]){throw new Error("Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -sENVIRONMENT=web or -sENVIRONMENT=node)")}var ENVIRONMENT_IS_PTHREAD=Module["ENVIRONMENT_IS_PTHREAD"]||false;var _scriptDir=typeof document!="undefined"&&document.currentScript?document.currentScript.src:undefined;if(ENVIRONMENT_IS_WORKER){_scriptDir=self.location.href}else if(ENVIRONMENT_IS_NODE){_scriptDir=__filename}var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;if(ENVIRONMENT_IS_NODE){if(typeof process=="undefined"||!process.release||process.release.name!=="node")throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)");var nodeVersion=process.versions.node;var numericVersion=nodeVersion.split(".").slice(0,3);numericVersion=numericVersion[0]*1e4+numericVersion[1]*100+numericVersion[2].split("-")[0]*1;if(numericVersion<16e4){throw new Error("This emscripten-generated code requires node v16.0.0 (detected v"+nodeVersion+")")}var fs=require("fs");var nodePath=require("path");if(ENVIRONMENT_IS_WORKER){scriptDirectory=nodePath.dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}read_=(filename,binary)=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);return fs.readFileSync(filename,binary?undefined:"utf8")};readBinary=filename=>{var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};readAsync=(filename,onload,onerror,binary=true)=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);fs.readFile(filename,binary?undefined:"utf8",(err,data)=>{if(err)onerror(err);else onload(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};Module["inspect"]=()=>"[Emscripten Module object]";let nodeWorkerThreads;try{nodeWorkerThreads=require("worker_threads")}catch(e){console.error('The "worker_threads" module is not supported in this node.js build - perhaps a newer version is needed?');throw e}global.Worker=nodeWorkerThreads.Worker}else if(ENVIRONMENT_IS_SHELL){if(typeof process=="object"&&typeof require==="function"||typeof window=="object"||typeof importScripts=="function")throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)");if(typeof read!="undefined"){read_=read}readBinary=f=>{if(typeof readbuffer=="function"){return new Uint8Array(readbuffer(f))}let data=read(f,"binary");assert(typeof data=="object");return data};readAsync=(f,onload,onerror)=>{setTimeout(()=>onload(readBinary(f)))};if(typeof clearTimeout=="undefined"){globalThis.clearTimeout=id=>{}}if(typeof setTimeout=="undefined"){globalThis.setTimeout=f=>typeof f=="function"?f():abort()}if(typeof scriptArgs!="undefined"){arguments_=scriptArgs}else if(typeof arguments!="undefined"){arguments_=arguments}if(typeof quit=="function"){quit_=(status,toThrow)=>{setTimeout(()=>{if(!(toThrow instanceof ExitStatus)){let toLog=toThrow;if(toThrow&&typeof toThrow=="object"&&toThrow.stack){toLog=[toThrow,toThrow.stack]}err(`exiting due to exception: ${toLog}`)}quit(status)});throw toThrow}}if(typeof print!="undefined"){if(typeof console=="undefined")console={};console.log=print;console.warn=console.error=typeof printErr!="undefined"?printErr:print}}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.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}else{scriptDirectory=""}if(!(typeof window=="object"||typeof importScripts=="function"))throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)");if(!ENVIRONMENT_IS_NODE){read_=url=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};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,onload,onerror)=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=()=>{if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}setWindowTitle=title=>document.title=title}else{throw new Error("environment detection error")}if(ENVIRONMENT_IS_NODE){if(typeof performance=="undefined"){global.performance=require("perf_hooks").performance}}var defaultPrint=console.log.bind(console);var defaultPrintErr=console.error.bind(console);if(ENVIRONMENT_IS_NODE){defaultPrint=(...args)=>fs.writeSync(1,args.join(" ")+"\n");defaultPrintErr=(...args)=>fs.writeSync(2,args.join(" ")+"\n")}var out=Module["print"]||defaultPrint;var err=Module["printErr"]||defaultPrintErr;Object.assign(Module,moduleOverrides);moduleOverrides=null;checkIncomingModuleAPI();if(Module["arguments"])arguments_=Module["arguments"];legacyModuleProp("arguments","arguments_");if(Module["thisProgram"])thisProgram=Module["thisProgram"];legacyModuleProp("thisProgram","thisProgram");if(Module["quit"])quit_=Module["quit"];legacyModuleProp("quit","quit_");assert(typeof Module["memoryInitializerPrefixURL"]=="undefined","Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["pthreadMainPrefixURL"]=="undefined","Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["cdInitializerPrefixURL"]=="undefined","Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["filePackagePrefixURL"]=="undefined","Module.filePackagePrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["read"]=="undefined","Module.read option was removed (modify read_ in JS)");assert(typeof Module["readAsync"]=="undefined","Module.readAsync option was removed (modify readAsync in JS)");assert(typeof Module["readBinary"]=="undefined","Module.readBinary option was removed (modify readBinary in JS)");assert(typeof Module["setWindowTitle"]=="undefined","Module.setWindowTitle option was removed (modify setWindowTitle in JS)");assert(typeof Module["TOTAL_MEMORY"]=="undefined","Module.TOTAL_MEMORY has been renamed Module.INITIAL_MEMORY");legacyModuleProp("asm","wasmExports");legacyModuleProp("read","read_");legacyModuleProp("readAsync","readAsync");legacyModuleProp("readBinary","readBinary");legacyModuleProp("setWindowTitle","setWindowTitle");assert(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER||ENVIRONMENT_IS_NODE,"Pthreads do not work in this environment yet (need Web Workers, or an alternative to them)");assert(!ENVIRONMENT_IS_SHELL,"shell environment detected but not enabled at build time. Add 'shell' to `-sENVIRONMENT` to enable.");var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];legacyModuleProp("wasmBinary","wasmBinary");var noExitRuntime=Module["noExitRuntime"]||true;legacyModuleProp("noExitRuntime","noExitRuntime");if(typeof WebAssembly!="object"){abort("no native wasm support detected")}var wasmMemory;var wasmExports;var wasmModule;var ABORT=false;var EXITSTATUS;function assert(condition,text){if(!condition){abort("Assertion failed"+(text?": "+text:""))}}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["HEAP32"]=HEAP32=new Int32Array(b);Module["HEAPU8"]=HEAPU8=new Uint8Array(b);Module["HEAPU16"]=HEAPU16=new Uint16Array(b);Module["HEAPU32"]=HEAPU32=new Uint32Array(b);Module["HEAPF32"]=HEAPF32=new Float32Array(b);Module["HEAPF64"]=HEAPF64=new Float64Array(b)}assert(!Module["STACK_SIZE"],"STACK_SIZE can no longer be set at runtime. Use -sSTACK_SIZE at link time");assert(typeof Int32Array!="undefined"&&typeof Float64Array!=="undefined"&&Int32Array.prototype.subarray!=undefined&&Int32Array.prototype.set!=undefined,"JS engine does not provide full typed array support");var INITIAL_MEMORY=Module["INITIAL_MEMORY"]||268435456;legacyModuleProp("INITIAL_MEMORY","INITIAL_MEMORY");assert(INITIAL_MEMORY>=134217728,"INITIAL_MEMORY should be larger than STACK_SIZE, was "+INITIAL_MEMORY+"! (STACK_SIZE="+134217728+")");if(ENVIRONMENT_IS_PTHREAD){wasmMemory=Module["wasmMemory"]}else{if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_MEMORY/65536,"maximum":INITIAL_MEMORY/65536,"shared":true});if(!(wasmMemory.buffer instanceof SharedArrayBuffer)){err("requested a shared WebAssembly.Memory but the returned buffer is not a SharedArrayBuffer, indicating that while the browser has SharedArrayBuffer it does not have WebAssembly threads support - you may need to set a flag");if(ENVIRONMENT_IS_NODE){err("(on node you may need: --experimental-wasm-threads --experimental-wasm-bulk-memory and/or recent version)")}throw Error("bad memory")}}}updateMemoryViews();INITIAL_MEMORY=wasmMemory.buffer.byteLength;assert(INITIAL_MEMORY%65536===0);var wasmTable;function writeStackCookie(){var max=_emscripten_stack_get_end();assert((max&3)==0);if(max==0){max+=4}HEAPU32[max>>2]=34821223;HEAPU32[max+4>>2]=2310721022;HEAPU32[0>>2]=1668509029}function checkStackCookie(){if(ABORT)return;var max=_emscripten_stack_get_end();if(max==0){max+=4}var cookie1=HEAPU32[max>>2];var cookie2=HEAPU32[max+4>>2];if(cookie1!=34821223||cookie2!=2310721022){abort(`Stack overflow! Stack cookie has been overwritten at ${ptrToString(max)}, expected hex dwords 0x89BACDFE and 0x2135467, but received ${ptrToString(cookie2)} ${ptrToString(cookie1)}`)}if(HEAPU32[0>>2]!=1668509029){abort("Runtime error: The application has corrupted its heap memory area (address zero)!")}}(function(){var h16=new Int16Array(1);var h8=new Int8Array(h16.buffer);h16[0]=25459;if(h8[0]!==115||h8[1]!==99)throw"Runtime error: expected the system to be little-endian! (Run with -sSUPPORT_BIG_ENDIAN to bypass)"})();var __ATPRERUN__=[];var __ATINIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeKeepaliveCounter=0;function keepRuntimeAlive(){return noExitRuntime||runtimeKeepaliveCounter>0}function preRun(){assert(!ENVIRONMENT_IS_PTHREAD);if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){assert(!runtimeInitialized);runtimeInitialized=true;if(ENVIRONMENT_IS_PTHREAD)return;checkStackCookie();if(!Module["noFSInit"]&&!FS.init.initialized)FS.init();FS.ignorePermissions=false;TTY.init();SOCKFS.root=FS.mount(SOCKFS,{},null);callRuntimeCallbacks(__ATINIT__)}function postRun(){checkStackCookie();if(ENVIRONMENT_IS_PTHREAD)return;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)}assert(Math.imul,"This browser does not support Math.imul(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.fround,"This browser does not support Math.fround(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.clz32,"This browser does not support Math.clz32(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.trunc,"This browser does not support Math.trunc(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;var runDependencyTracking={};function getUniqueRunDependency(id){var orig=id;while(1){if(!runDependencyTracking[id])return id;id=orig+Math.random()}}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(!runDependencyTracking[id]);runDependencyTracking[id]=1;if(runDependencyWatcher===null&&typeof setInterval!="undefined"){runDependencyWatcher=setInterval(()=>{if(ABORT){clearInterval(runDependencyWatcher);runDependencyWatcher=null;return}var shown=false;for(var dep in runDependencyTracking){if(!shown){shown=true;err("still waiting on run dependencies:")}err("dependency: "+dep)}if(shown){err("(end of list)")}},1e4)}}else{err("warning: run dependency added without ID")}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(runDependencyTracking[id]);delete runDependencyTracking[id]}else{err("warning: run dependency removed without ID")}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}what="Aborted("+what+")";err(what);ABORT=true;EXITSTATUS=1;var e=new WebAssembly.RuntimeError(what);throw e}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return filename.startsWith(dataURIPrefix)}function isFileURI(filename){return filename.startsWith("file://")}function createExportWrapper(name){return function(){assert(runtimeInitialized,`native function \`${name}\` called before runtime initialization`);var f=wasmExports[name];assert(f,`exported native function \`${name}\` not found`);return f.apply(null,arguments)}}var wasmBinaryFile;wasmBinaryFile="libnimbus_lc.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(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&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)){if(typeof fetch=="function"&&!isFileURI(binaryFile)){return fetch(binaryFile,{credentials:"same-origin"}).then(response=>{if(!response["ok"]){throw"failed to load wasm binary file at '"+binaryFile+"'"}return response["arrayBuffer"]()}).catch(()=>getBinarySync(binaryFile))}else if(readAsync){return new Promise((resolve,reject)=>{readAsync(binaryFile,response=>resolve(new Uint8Array(response)),reject)})}}return Promise.resolve().then(()=>getBinarySync(binaryFile))}function instantiateArrayBuffer(binaryFile,imports,receiver){return getBinaryPromise(binaryFile).then(binary=>WebAssembly.instantiate(binary,imports)).then(instance=>instance).then(receiver,reason=>{err("failed to asynchronously prepare wasm: "+reason);if(isFileURI(wasmBinaryFile)){err("warning: Loading from a file URI ("+wasmBinaryFile+") is not supported in most browsers. See https://emscripten.org/docs/getting_started/FAQ.html#how-do-i-run-a-local-webserver-for-testing-why-does-my-program-stall-in-downloading-or-preparing")}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 createWasm(){var info={"env":wasmImports,"wasi_snapshot_preview1":wasmImports};function receiveInstance(instance,module){var exports=instance.exports;wasmExports=exports;registerTLSInit(wasmExports["_emscripten_tls_init"]);wasmTable=wasmExports["__indirect_function_table"];assert(wasmTable,"table not found in wasm exports");addOnInit(wasmExports["__wasm_call_ctors"]);wasmModule=module;removeRunDependency("wasm-instantiate");return exports}addRunDependency("wasm-instantiate");var trueModule=Module;function receiveInstantiationResult(result){assert(Module===trueModule,"the Module object should not be replaced during async compilation - perhaps the order of HTML elements is wrong?");trueModule=null;receiveInstance(result["instance"],result["module"])}if(Module["instantiateWasm"]){try{return Module["instantiateWasm"](info,receiveInstance)}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync(wasmBinary,wasmBinaryFile,info,receiveInstantiationResult);return{}}var tempDouble;var tempI64;function legacyModuleProp(prop,newName,incomming=true){if(!Object.getOwnPropertyDescriptor(Module,prop)){Object.defineProperty(Module,prop,{configurable:true,get(){let extra=incomming?" (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)":"";abort(`\`Module.${prop}\` has been replaced by \`${newName}\``+extra)}})}}function ignoredModuleProp(prop){if(Object.getOwnPropertyDescriptor(Module,prop)){abort(`\`Module.${prop}\` was supplied but \`${prop}\` not included in INCOMING_MODULE_JS_API`)}}function isExportedByForceFilesystem(name){return name==="FS_createPath"||name==="FS_createDataFile"||name==="FS_createPreloadedFile"||name==="FS_unlink"||name==="addRunDependency"||name==="FS_createLazyFile"||name==="FS_createDevice"||name==="removeRunDependency"}function missingGlobal(sym,msg){if(typeof globalThis!=="undefined"){Object.defineProperty(globalThis,sym,{configurable:true,get(){warnOnce("`"+sym+"` is not longer defined by emscripten. "+msg);return undefined}})}}missingGlobal("buffer","Please use HEAP8.buffer or wasmMemory.buffer");function missingLibrarySymbol(sym){if(typeof globalThis!=="undefined"&&!Object.getOwnPropertyDescriptor(globalThis,sym)){Object.defineProperty(globalThis,sym,{configurable:true,get(){var msg="`"+sym+"` is a library symbol and not included by default; add it to your library.js __deps or to DEFAULT_LIBRARY_FUNCS_TO_INCLUDE on the command line";var librarySymbol=sym;if(!librarySymbol.startsWith("_")){librarySymbol="$"+sym}msg+=" (e.g. -sDEFAULT_LIBRARY_FUNCS_TO_INCLUDE='"+librarySymbol+"')";if(isExportedByForceFilesystem(sym)){msg+=". Alternatively, forcing filesystem support (-sFORCE_FILESYSTEM) can export this for you"}warnOnce(msg);return undefined}})}unexportedRuntimeSymbol(sym)}function unexportedRuntimeSymbol(sym){if(!Object.getOwnPropertyDescriptor(Module,sym)){Object.defineProperty(Module,sym,{configurable:true,get(){var msg="'"+sym+"' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the Emscripten FAQ)";if(isExportedByForceFilesystem(sym)){msg+=". Alternatively, forcing filesystem support (-sFORCE_FILESYSTEM) can export this for you"}abort(msg)}})}}function dbg(text){if(ENVIRONMENT_IS_NODE){fs.writeSync(2,Array.from(arguments).join(" ")+"\n")}else console.warn.apply(console,arguments)}function ExitStatus(status){this.name="ExitStatus";this.message=`Program terminated with exit(${status})`;this.status=status}var terminateWorker=function(worker){worker.terminate();worker.onmessage=e=>{var cmd=e["data"]["cmd"];err('received "'+cmd+'" command from terminated worker: '+worker.workerID)}};function killThread(pthread_ptr){assert(!ENVIRONMENT_IS_PTHREAD,"Internal Error! killThread() can only ever be called from main application thread!");assert(pthread_ptr,"Internal Error! Null pthread_ptr in killThread!");var worker=PThread.pthreads[pthread_ptr];delete PThread.pthreads[pthread_ptr];terminateWorker(worker);__emscripten_thread_free_data(pthread_ptr);PThread.runningWorkers.splice(PThread.runningWorkers.indexOf(worker),1);worker.pthread_ptr=0}function cancelThread(pthread_ptr){assert(!ENVIRONMENT_IS_PTHREAD,"Internal Error! cancelThread() can only ever be called from main application thread!");assert(pthread_ptr,"Internal Error! Null pthread_ptr in cancelThread!");var worker=PThread.pthreads[pthread_ptr];worker.postMessage({"cmd":"cancel"})}function cleanupThread(pthread_ptr){assert(!ENVIRONMENT_IS_PTHREAD,"Internal Error! cleanupThread() can only ever be called from main application thread!");assert(pthread_ptr,"Internal Error! Null pthread_ptr in cleanupThread!");var worker=PThread.pthreads[pthread_ptr];assert(worker);PThread.returnWorkerToPool(worker)}var zeroMemory=(address,size)=>{HEAPU8.fill(0,address,address+size);return address};function spawnThread(threadParams){assert(!ENVIRONMENT_IS_PTHREAD,"Internal Error! spawnThread() can only ever be called from main application thread!");assert(threadParams.pthread_ptr,"Internal error, no pthread ptr!");var worker=PThread.getNewWorker();if(!worker){return 6}assert(!worker.pthread_ptr,"Internal error!");PThread.runningWorkers.push(worker);PThread.pthreads[threadParams.pthread_ptr]=worker;worker.pthread_ptr=threadParams.pthread_ptr;var msg={"cmd":"run","start_routine":threadParams.startRoutine,"arg":threadParams.arg,"pthread_ptr":threadParams.pthread_ptr};if(ENVIRONMENT_IS_NODE){worker.unref()}worker.postMessage(msg,threadParams.transferList);return 0}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:function(){var paths=Array.prototype.slice.call(arguments);return PATH.normalize(paths.join("/"))},join2:(l,r)=>PATH.normalize(l+"/"+r)};var initRandomFill=()=>{if(typeof crypto=="object"&&typeof crypto["getRandomValues"]=="function"){return view=>(view.set(crypto.getRandomValues(new Uint8Array(view.byteLength))),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("no cryptographic support found for randomDevice. consider polyfilling it if you want to use something insecure like Math.random(), e.g. put this in a --pre-js: var crypto = { getRandomValues: (array) => { for (var i = 0; i < array.length; i++) array[i] = (Math.random()*256)|0 } };")};var randomFill=view=>(randomFill=initRandomFill())(view);var PATH_FS={resolve:function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=PATH.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.buffer instanceof SharedArrayBuffer?heapOrArray.slice(idx,endPtr):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)=>{assert(typeof str==="string");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;if(u>1114111)warnOnce("Invalid Unicode code point "+ptrToString(u)+" encountered when serializing a JS string to a UTF-8 string in wasm memory! (Valid unicode code points should be in range 0-0x10FFFF).");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,-1)}catch(e){if(e.toString().includes("EOF"))bytesRead=0;else throw e}if(bytesRead>0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}FS_stdin_getChar_buffer=intArrayFromString(result,true)}return FS_stdin_getChar_buffer.shift()};var TTY={ttys:[],init:function(){},shutdown:function(){},register:function(dev,ops){TTY.ttys[dev]={input:[],output:[],ops:ops};FS.registerDevice(dev,TTY.stream_ops)},stream_ops:{open:function(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(43)}stream.tty=tty;stream.seekable=false},close:function(stream){stream.tty.ops.fsync(stream.tty)},fsync:function(stream){stream.tty.ops.fsync(stream.tty)},read:function(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:function(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:function(tty,optional_actions,data){return 0},ioctl_tiocgwinsz:function(tty){return[24,80]}},default_tty1_ops:{put_char:function(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},fsync:function(tty){if(tty.output&&tty.output.length>0){err(UTF8ArrayToString(tty.output,0));tty.output=[]}}}};var alignMemory=(size,alignment)=>{assert(alignment,"alignment argument is required");return Math.ceil(size/alignment)*alignment};var mmapAlloc=size=>{size=alignMemory(size,65536);var ptr=_emscripten_builtin_memalign(65536,size);if(!ptr)return 0;return zeroMemory(ptr,size)};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)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node;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;old_node.parent=new_dir},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 in node.contents){if(!node.contents.hasOwnProperty(key)){continue}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);assert(size>=0);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,arrayBuffer=>{assert(arrayBuffer,`Loading data file "${url}" failed (no arrayBuffer).`);onload(new Uint8Array(arrayBuffer));if(dep)removeRunDependency(dep)},event=>{if(onerror){onerror()}else{throw`Loading data file "${url}" failed.`}});if(dep)addRunDependency(dep)};var preloadPlugins=Module["preloadPlugins"]||[];function FS_handledByPreloadPlugin(byteArray,fullname,finish,onerror){if(typeof Browser!="undefined")Browser.init();var handled=false;preloadPlugins.forEach(function(plugin){if(handled)return;if(plugin["canHandle"](fullname)){plugin["handle"](byteArray,fullname,finish,onerror);handled=true}});return handled}function 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){if(preFinish)preFinish();if(!dontCreateFile){FS.createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}if(onload)onload();removeRunDependency(dep)}if(FS_handledByPreloadPlugin(byteArray,fullname,finish,()=>{if(onerror)onerror();removeRunDependency(dep)})){return}finish(byteArray)}addRunDependency(dep);if(typeof url=="string"){asyncLoad(url,byteArray=>processData(byteArray),onerror)}else{processData(url)}}function 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}function FS_getMode(canRead,canWrite){var mode=0;if(canRead)mode|=292|73;if(canWrite)mode|=146;return mode}var ERRNO_MESSAGES={0:"Success",1:"Arg list too long",2:"Permission denied",3:"Address already in use",4:"Address not available",5:"Address family not supported by protocol family",6:"No more processes",7:"Socket already connected",8:"Bad file number",9:"Trying to read unreadable message",10:"Mount device busy",11:"Operation canceled",12:"No children",13:"Connection aborted",14:"Connection refused",15:"Connection reset by peer",16:"File locking deadlock error",17:"Destination address required",18:"Math arg out of domain of func",19:"Quota exceeded",20:"File exists",21:"Bad address",22:"File too large",23:"Host is unreachable",24:"Identifier removed",25:"Illegal byte sequence",26:"Connection already in progress",27:"Interrupted system call",28:"Invalid argument",29:"I/O error",30:"Socket is already connected",31:"Is a directory",32:"Too many symbolic links",33:"Too many open files",34:"Too many links",35:"Message too long",36:"Multihop attempted",37:"File or path name too long",38:"Network interface is not configured",39:"Connection reset by network",40:"Network is unreachable",41:"Too many open files in system",42:"No buffer space available",43:"No such device",44:"No such file or directory",45:"Exec format error",46:"No record locks available",47:"The link has been severed",48:"Not enough core",49:"No message of desired type",50:"Protocol not available",51:"No space left on device",52:"Function not implemented",53:"Socket is not connected",54:"Not a directory",55:"Directory not empty",56:"State not recoverable",57:"Socket operation on non-socket",59:"Not a typewriter",60:"No such device or address",61:"Value too large for defined data type",62:"Previous owner died",63:"Not super-user",64:"Broken pipe",65:"Protocol error",66:"Unknown protocol",67:"Protocol wrong type for socket",68:"Math result not representable",69:"Read only file system",70:"Illegal seek",71:"No such process",72:"Stale file handle",73:"Connection timed out",74:"Text file busy",75:"Cross-device link",100:"Device not a stream",101:"Bad font file fmt",102:"Invalid slot",103:"Invalid request code",104:"No anode",105:"Block device required",106:"Channel number out of range",107:"Level 3 halted",108:"Level 3 reset",109:"Link number out of range",110:"Protocol driver not attached",111:"No CSI structure available",112:"Level 2 halted",113:"Invalid exchange",114:"Invalid request descriptor",115:"Exchange full",116:"No data (for no delay io)",117:"Timer expired",118:"Out of streams resources",119:"Machine is not on the network",120:"Package not installed",121:"The object is remote",122:"Advertise error",123:"Srmount error",124:"Communication error on send",125:"Cross mount point (not really error)",126:"Given log. name not unique",127:"f.d. invalid for this operation",128:"Remote address changed",129:"Can access a needed shared lib",130:"Accessing a corrupted shared lib",131:".lib section in a.out corrupted",132:"Attempting to link in too many libs",133:"Attempting to exec a shared library",135:"Streams pipe error",136:"Too many users",137:"Socket type not supported",138:"Not supported",139:"Protocol family not supported",140:"Can't send after socket shutdown",141:"Too many references",142:"Host is down",148:"No medium (in tape drive)",156:"Level 2 not synchronized"};var ERRNO_CODES={};function demangle(func){warnOnce("warning: build with -sDEMANGLE_SUPPORT to link in libcxxabi demangling");return func}function demangleAll(text){var regex=/\b_Z[\w\d_]+/g;return text.replace(regex,function(x){var y=demangle(x);return x===y?x:y+" ["+x+"]"})}var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,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,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)},createNode:(parent,name,mode,rdev)=>{assert(typeof parent=="object");var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node},destroyNode:node=>{FS.hashRemoveNode(node)},isRoot:node=>node===node.parent,isMountpoint:node=>!!node.mounted,isFile:mode=>(mode&61440)===32768,isDir:mode=>(mode&61440)===16384,isLink:mode=>(mode&61440)===40960,isChrdev:mode=>(mode&61440)===8192,isBlkdev:mode=>(mode&61440)===24576,isFIFO:mode=>(mode&61440)===4096,isSocket:mode=>(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=>{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)=>{if(!FS.FSStream){FS.FSStream=function(){this.shared={}};FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get(){return this.node},set(val){this.node=val}},isRead:{get(){return(this.flags&2097155)!==1}},isWrite:{get(){return(this.flags&2097155)!==0}},isAppend:{get(){return this.flags&1024}},flags:{get(){return this.shared.flags},set(val){this.shared.flags=val}},position:{get(){return this.shared.position},set(val){this.shared.position=val}}})}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},chrdev_stream_ops:{open:stream=>{var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}},llseek:()=>{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.apply(check,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){assert(FS.syncFSRequests>0);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)=>{if(typeof type=="string"){throw type}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);assert(idx!==-1);node.mount.mounts.splice(idx,1)},lookup:(parent,name)=>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;i{if(typeof dev=="undefined"){dev=mode;mode=438}mode|=8192;return FS.mknod(path,mode,dev)},symlink:(oldpath,newpath)=>{if(!PATH_FS.resolve(oldpath)){throw new FS.ErrnoError(44)}var lookup=FS.lookupPath(newpath,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(44)}var newname=PATH.basename(newpath);var errCode=FS.mayCreate(parent,newname);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.symlink){throw new FS.ErrnoError(63)}return parent.node_ops.symlink(parent,newname,oldpath)},rename:(old_path,new_path)=>{var old_dirname=PATH.dirname(old_path);var new_dirname=PATH.dirname(new_path);var old_name=PATH.basename(old_path);var new_name=PATH.basename(new_path);var lookup,old_dir,new_dir;lookup=FS.lookupPath(old_path,{parent:true});old_dir=lookup.node;lookup=FS.lookupPath(new_path,{parent:true});new_dir=lookup.node;if(!old_dir||!new_dir)throw new FS.ErrnoError(44);if(old_dir.mount!==new_dir.mount){throw new FS.ErrnoError(75)}var old_node=FS.lookupNode(old_dir,old_name);var relative=PATH_FS.relative(old_path,new_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(28)}relative=PATH_FS.relative(new_path,old_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(55)}var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(old_node===new_node){return}var isdir=FS.isDir(old_node.mode);var errCode=FS.mayDelete(old_dir,old_name,isdir);if(errCode){throw new FS.ErrnoError(errCode)}errCode=new_node?FS.mayDelete(new_dir,new_name,isdir):FS.mayCreate(new_dir,new_name);if(errCode){throw new FS.ErrnoError(errCode)}if(!old_dir.node_ops.rename){throw new FS.ErrnoError(63)}if(FS.isMountpoint(old_node)||new_node&&FS.isMountpoint(new_node)){throw new FS.ErrnoError(10)}if(new_dir!==old_dir){errCode=FS.nodePermissions(old_dir,"w");if(errCode){throw new FS.ErrnoError(errCode)}}FS.hashRemoveNode(old_node);try{old_dir.node_ops.rename(old_node,new_dir,new_name)}catch(e){throw e}finally{FS.hashAddNode(old_node)}},rmdir:path=>{var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var errCode=FS.mayDelete(parent,name,true);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.rmdir){throw new FS.ErrnoError(63)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}parent.node_ops.rmdir(parent,name);FS.destroyNode(node)},readdir:path=>{var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;if(!node.node_ops.readdir){throw new FS.ErrnoError(54)}return node.node_ops.readdir(node)},unlink:path=>{var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(44)}var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var errCode=FS.mayDelete(parent,name,false);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.unlink){throw new FS.ErrnoError(63)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}parent.node_ops.unlink(parent,name);FS.destroyNode(node)},readlink:path=>{var lookup=FS.lookupPath(path);var link=lookup.node;if(!link){throw new FS.ErrnoError(44)}if(!link.node_ops.readlink){throw new FS.ErrnoError(28)}return PATH_FS.resolve(FS.getPath(link.parent),link.node_ops.readlink(link))},stat:(path,dontFollow)=>{var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;if(!node){throw new FS.ErrnoError(44)}if(!node.node_ops.getattr){throw new FS.ErrnoError(63)}return node.node_ops.getattr(node)},lstat:path=>FS.stat(path,true),chmod:(path,mode,dontFollow)=>{var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(63)}node.node_ops.setattr(node,{mode:mode&4095|node.mode&~4095,timestamp:Date.now()})},lchmod:(path,mode)=>{FS.chmod(path,mode,true)},fchmod:(fd,mode)=>{var stream=FS.getStreamChecked(fd);FS.chmod(stream.node,mode)},chown:(path,uid,gid,dontFollow)=>{var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(63)}node.node_ops.setattr(node,{timestamp:Date.now()})},lchown:(path,uid,gid)=>{FS.chown(path,uid,gid,true)},fchown:(fd,uid,gid)=>{var stream=FS.getStreamChecked(fd);FS.chown(stream.node,uid,gid)},truncate:(path,len)=>{if(len<0){throw new FS.ErrnoError(28)}var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:true});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(63)}if(FS.isDir(node.mode)){throw new FS.ErrnoError(31)}if(!FS.isFile(node.mode)){throw new FS.ErrnoError(28)}var errCode=FS.nodePermissions(node,"w");if(errCode){throw new FS.ErrnoError(errCode)}node.node_ops.setattr(node,{size:len,timestamp:Date.now()})},ftruncate:(fd,len)=>{var stream=FS.getStreamChecked(fd);if((stream.flags&2097155)===0){throw new FS.ErrnoError(28)}FS.truncate(stream.node,len)},utime:(path,atime,mtime)=>{var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;node.node_ops.setattr(node,{timestamp:Math.max(atime,mtime)})},open:(path,flags,mode)=>{if(path===""){throw new FS.ErrnoError(44)}flags=typeof flags=="string"?FS_modeStringToFlags(flags):flags;mode=typeof mode=="undefined"?438:mode;if(flags&64){mode=mode&4095|32768}else{mode=0}var node;if(typeof path=="object"){node=path}else{path=PATH.normalize(path);try{var lookup=FS.lookupPath(path,{follow:!(flags&131072)});node=lookup.node}catch(e){}}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(20)}}else{node=FS.mknod(path,mode,0);created=true}}if(!node){throw new FS.ErrnoError(44)}if(FS.isChrdev(node.mode)){flags&=~512}if(flags&65536&&!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}if(!created){var errCode=FS.mayOpen(node,flags);if(errCode){throw new FS.ErrnoError(errCode)}}if(flags&512&&!created){FS.truncate(node,0)}flags&=~(128|512|131072);var stream=FS.createStream({node:node,path:FS.getPath(node),flags:flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false});if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(Module["logReadFiles"]&&!(flags&1)){if(!FS.readFiles)FS.readFiles={};if(!(path in FS.readFiles)){FS.readFiles[path]=1}}return stream},close:stream=>{if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if(stream.getdents)stream.getdents=null;try{if(stream.stream_ops.close){stream.stream_ops.close(stream)}}catch(e){throw e}finally{FS.closeStream(stream.fd)}stream.fd=null},isClosed:stream=>stream.fd===null,llseek:(stream,offset,whence)=>{if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if(!stream.seekable||!stream.stream_ops.llseek){throw new FS.ErrnoError(70)}if(whence!=0&&whence!=1&&whence!=2){throw new FS.ErrnoError(28)}stream.position=stream.stream_ops.llseek(stream,offset,whence);stream.ungotten=[];return stream.position},read:(stream,buffer,offset,length,position)=>{assert(offset>=0);if(length<0||position<0){throw new FS.ErrnoError(28)}if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(8)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(31)}if(!stream.stream_ops.read){throw new FS.ErrnoError(28)}var seeking=typeof position!="undefined";if(!seeking){position=stream.position}else if(!stream.seekable){throw new FS.ErrnoError(70)}var bytesRead=stream.stream_ops.read(stream,buffer,offset,length,position);if(!seeking)stream.position+=bytesRead;return bytesRead},write:(stream,buffer,offset,length,position,canOwn)=>{assert(offset>=0);if(length<0||position<0){throw new FS.ErrnoError(28)}if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(8)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(31)}if(!stream.stream_ops.write){throw new FS.ErrnoError(28)}if(stream.seekable&&stream.flags&1024){FS.llseek(stream,0,2)}var seeking=typeof position!="undefined";if(!seeking){position=stream.position}else if(!stream.seekable){throw new FS.ErrnoError(70)}var bytesWritten=stream.stream_ops.write(stream,buffer,offset,length,position,canOwn);if(!seeking)stream.position+=bytesWritten;return bytesWritten},allocate:(stream,offset,length)=>{if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if(offset<0||length<=0){throw new FS.ErrnoError(28)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(8)}if(!FS.isFile(stream.node.mode)&&!FS.isDir(stream.node.mode)){throw new FS.ErrnoError(43)}if(!stream.stream_ops.allocate){throw new FS.ErrnoError(138)}stream.stream_ops.allocate(stream,offset,length)},mmap:(stream,length,position,prot,flags)=>{if((prot&2)!==0&&(flags&2)===0&&(stream.flags&2097155)!==2){throw new FS.ErrnoError(2)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(2)}if(!stream.stream_ops.mmap){throw new FS.ErrnoError(43)}return stream.stream_ops.mmap(stream,length,position,prot,flags)},msync:(stream,buffer,offset,length,mmapFlags)=>{assert(offset>=0);if(!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)},munmap:stream=>0,ioctl:(stream,cmd,arg)=>{if(!stream.stream_ops.ioctl){throw new FS.ErrnoError(59)}return stream.stream_ops.ioctl(stream,cmd,arg)},readFile:(path,opts={})=>{opts.flags=opts.flags||0;opts.encoding=opts.encoding||"binary";if(opts.encoding!=="utf8"&&opts.encoding!=="binary"){throw new Error(`Invalid encoding type "${opts.encoding}"`)}var ret;var stream=FS.open(path,opts.flags);var stat=FS.stat(path);var length=stat.size;var buf=new Uint8Array(length);FS.read(stream,buf,0,length,0);if(opts.encoding==="utf8"){ret=UTF8ArrayToString(buf,0)}else if(opts.encoding==="binary"){ret=buf}FS.close(stream);return ret},writeFile:(path,data,opts={})=>{opts.flags=opts.flags||577;var stream=FS.open(path,opts.flags,opts.mode);if(typeof data=="string"){var buf=new Uint8Array(lengthBytesUTF8(data)+1);var actualNumBytes=stringToUTF8Array(data,buf,0,buf.length);FS.write(stream,buf,0,actualNumBytes,undefined,opts.canOwn)}else if(ArrayBuffer.isView(data)){FS.write(stream,data,0,data.byteLength,undefined,opts.canOwn)}else{throw new Error("Unsupported data type")}FS.close(stream)},cwd:()=>FS.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);assert(stdin.fd===0,`invalid handle for stdin (${stdin.fd})`);assert(stdout.fd===1,`invalid handle for stdout (${stdout.fd})`);assert(stderr.fd===2,`invalid handle for stderr (${stderr.fd})`)},ensureErrnoError:()=>{if(FS.ErrnoError)return;FS.ErrnoError=function ErrnoError(errno,node){this.name="ErrnoError";this.node=node;this.setErrno=function(errno){this.errno=errno;for(var key in ERRNO_CODES){if(ERRNO_CODES[key]===errno){this.code=key;break}}};this.setErrno(errno);this.message=ERRNO_MESSAGES[errno];if(this.stack){Object.defineProperty(this,"stack",{value:(new Error).stack,writable:true});this.stack=demangleAll(this.stack)}};FS.ErrnoError.prototype=new Error;FS.ErrnoError.prototype.constructor=FS.ErrnoError;[44].forEach(code=>{FS.genericErrors[code]=new FS.ErrnoError(code);FS.genericErrors[code].stack=""})},staticInit:()=>{FS.ensureErrnoError();FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={"MEMFS":MEMFS}},init:(input,output,error)=>{assert(!FS.init.initialized,"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)");FS.init.initialized=true;FS.ensureErrnoError();Module["stdin"]=input||Module["stdin"];Module["stdout"]=output||Module["stdout"];Module["stderr"]=error||Module["stderr"];FS.createStandardStreams()},quit:()=>{FS.init.initialized=false;_fflush(0);for(var i=0;i{var ret=FS.analyzePath(path,dontResolveLastLink);if(!ret.exists){return null}return ret.object},analyzePath:(path,dontResolveLastLink)=>{try{var lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});path=lookup.path}catch(e){}var ret={isRoot:false,exists:false,error:0,name:null,path:null,object:null,parentExists:false,parentPath:null,parentObject:null};try{var lookup=FS.lookupPath(path,{parent:true});ret.parentExists=true;ret.parentPath=lookup.path;ret.parentObject=lookup.node;ret.name=PATH.basename(path);lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});ret.exists=true;ret.path=lookup.path;ret.object=lookup.node;ret.name=lookup.node.name;ret.isRoot=lookup.path==="/"}catch(e){ret.error=e.errno}return ret},createPath:(parent,path,canRead,canWrite)=>{parent=typeof parent=="string"?parent:FS.getPath(parent);var parts=path.split("/").reverse();while(parts.length){var part=parts.pop();if(!part)continue;var current=PATH.join2(parent,part);try{FS.mkdir(current)}catch(e){}parent=current}return current},createFile:(parent,name,properties,canRead,canWrite)=>{var path=PATH.join2(typeof parent=="string"?parent:FS.getPath(parent),name);var mode=FS_getMode(canRead,canWrite);return FS.create(path,mode)},createDataFile:(parent,name,data,canRead,canWrite,canOwn)=>{var path=name;if(parent){parent=typeof parent=="string"?parent:FS.getPath(parent);path=name?PATH.join2(parent,name):parent}var mode=FS_getMode(canRead,canWrite);var node=FS.create(path,mode);if(data){if(typeof data=="string"){var arr=new Array(data.length);for(var i=0,len=data.length;i{var path=PATH.join2(typeof parent=="string"?parent:FS.getPath(parent),name);var mode=FS_getMode(!!input,!!output);if(!FS.createDevice.major)FS.createDevice.major=64;var dev=FS.makedev(FS.createDevice.major++,0);FS.registerDevice(dev,{open:stream=>{stream.seekable=false},close:stream=>{if(output&&output.buffer&&output.buffer.length){output(10)}},read:(stream,buffer,offset,length,pos)=>{var bytesRead=0;for(var i=0;i{for(var i=0;i{if(obj.isDevice||obj.isFolder||obj.link||obj.contents)return true;if(typeof XMLHttpRequest!="undefined"){throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.")}else if(read_){try{obj.contents=intArrayFromString(read_(obj.url),true);obj.usedBytes=obj.contents.length}catch(e){throw new FS.ErrnoError(29)}}else{throw new Error("Cannot load without read() or XMLHttpRequest.")}},createLazyFile:(parent,name,url,canRead,canWrite)=>{function LazyUint8Array(){this.lengthKnown=false;this.chunks=[]}LazyUint8Array.prototype.get=function LazyUint8Array_get(idx){if(idx>this.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(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};if(typeof XMLHttpRequest!="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._length}},chunkSize:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize}}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:function(){return this.contents.length}}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach(key=>{var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){FS.forceLoadFile(node);return fn.apply(null,arguments)}});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);assert(size>=0);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},absolutePath:()=>{abort("FS.absolutePath has been removed; use PATH_FS.resolve instead")},createFolder:()=>{abort("FS.createFolder has been removed; use FS.mkdir instead")},createLink:()=>{abort("FS.createLink has been removed; use FS.symlink instead")},joinPath:()=>{abort("FS.joinPath has been removed; use PATH.join instead")},mmapAlloc:()=>{abort("FS.mmapAlloc has been replaced by the top level function mmapAlloc")},standardizePath:()=>{abort("FS.standardizePath has been removed; use PATH.normalize instead")}};var UTF8ToString=(ptr,maxBytesToRead)=>{assert(typeof ptr=="number");return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""};var SYSCALLS={DEFAULT_POLLMASK:5,calculateAt:function(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:function(func,path,buf){try{var stat=func(path)}catch(e){if(e&&e.node&&PATH.normalize(path)!==PATH.normalize(FS.getPath(e.node))){return-54}throw e}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:function(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)},varargs:undefined,get(){assert(SYSCALLS.varargs!=undefined);SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret},getStr(ptr){var ret=UTF8ToString(ptr);return ret},getStreamFromFD:function(fd){var stream=FS.getStreamChecked(fd);return stream}};function _proc_exit(code){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(1,1,code);EXITSTATUS=code;if(!keepRuntimeAlive()){PThread.terminateAllThreads();if(Module["onExit"])Module["onExit"](code);ABORT=true}quit_(code,new ExitStatus(code))}var exitJS=(status,implicit)=>{EXITSTATUS=status;checkUnflushedContent();if(ENVIRONMENT_IS_PTHREAD){assert(!implicit);exitOnMainThread(status);throw"unwind"}if(keepRuntimeAlive()&&!implicit){var msg=`program exited (with status: ${status}), but keepRuntimeAlive() is set (counter=${runtimeKeepaliveCounter}) due to an async operation, so halting execution but not exiting the runtime or preventing further async execution (you can use emscripten_force_exit, if you want to force a true shutdown)`;err(msg)}_proc_exit(status)};var _exit=exitJS;var ptrToString=ptr=>{assert(typeof ptr==="number");ptr>>>=0;return"0x"+ptr.toString(16).padStart(8,"0")};var handleException=e=>{if(e instanceof ExitStatus||e=="unwind"){return EXITSTATUS}checkStackCookie();if(e instanceof WebAssembly.RuntimeError){if(_emscripten_stack_get_current()<=0){err("Stack overflow detected. You can try increasing -sSTACK_SIZE (currently set to 134217728)")}}quit_(1,e)};var PThread={unusedWorkers:[],runningWorkers:[],tlsInitFunctions:[],pthreads:{},nextWorkerID:1,debugInit:function(){function pthreadLogPrefix(){var t=0;if(runtimeInitialized&&typeof _pthread_self!="undefined"){t=_pthread_self()}return"w:"+(Module["workerID"]||0)+",t:"+ptrToString(t)+": "}var origDbg=dbg;dbg=message=>origDbg(pthreadLogPrefix()+message)},init:function(){PThread.debugInit();if(ENVIRONMENT_IS_PTHREAD){PThread.initWorker()}else{PThread.initMainThread()}},initMainThread:function(){addOnPreRun(()=>{addRunDependency("loading-workers");PThread.loadWasmModuleToAllWorkers(()=>removeRunDependency("loading-workers"))})},initWorker:function(){noExitRuntime=false},setExitStatus:function(status){EXITSTATUS=status},terminateAllThreads__deps:["$terminateWorker"],terminateAllThreads:function(){assert(!ENVIRONMENT_IS_PTHREAD,"Internal Error! terminateAllThreads() can only ever be called from main application thread!");for(var worker of PThread.runningWorkers){terminateWorker(worker)}for(var worker of PThread.unusedWorkers){terminateWorker(worker)}PThread.unusedWorkers=[];PThread.runningWorkers=[];PThread.pthreads=[]},returnWorkerToPool:function(worker){var pthread_ptr=worker.pthread_ptr;delete PThread.pthreads[pthread_ptr];PThread.unusedWorkers.push(worker);PThread.runningWorkers.splice(PThread.runningWorkers.indexOf(worker),1);worker.pthread_ptr=0;__emscripten_thread_free_data(pthread_ptr)},receiveObjectTransfer:function(data){},threadInitTLS:function(){PThread.tlsInitFunctions.forEach(f=>f())},loadWasmModuleToWorker:worker=>new Promise(onFinishedLoading=>{worker.onmessage=e=>{var d=e["data"];var cmd=d["cmd"];if(d["targetThread"]&&d["targetThread"]!=_pthread_self()){var targetWorker=PThread.pthreads[d.targetThread];if(targetWorker){targetWorker.postMessage(d,d["transferList"])}else{err('Internal error! Worker sent a message "'+cmd+'" to target pthread '+d["targetThread"]+", but that thread no longer exists!")}return}if(cmd==="checkMailbox"){checkMailbox()}else if(cmd==="spawnThread"){spawnThread(d)}else if(cmd==="cleanupThread"){cleanupThread(d["thread"])}else if(cmd==="killThread"){killThread(d["thread"])}else if(cmd==="cancelThread"){cancelThread(d["thread"])}else if(cmd==="loaded"){worker.loaded=true;onFinishedLoading(worker)}else if(cmd==="alert"){alert("Thread "+d["threadId"]+": "+d["text"])}else if(d.target==="setimmediate"){worker.postMessage(d)}else if(cmd==="callHandler"){Module[d["handler"]](...d["args"])}else if(cmd){err("worker sent an unknown command "+cmd)}};worker.onerror=e=>{var message="worker sent an error!";if(worker.pthread_ptr){message="Pthread "+ptrToString(worker.pthread_ptr)+" sent an error!"}err(message+" "+e.filename+":"+e.lineno+": "+e.message);throw e};if(ENVIRONMENT_IS_NODE){worker.on("message",function(data){worker.onmessage({data:data})});worker.on("error",function(e){worker.onerror(e)})}assert(wasmMemory instanceof WebAssembly.Memory,"WebAssembly memory should have been loaded by now!");assert(wasmModule instanceof WebAssembly.Module,"WebAssembly Module should have been loaded by now!");var handlers=[];var knownHandlers=["onExit","onAbort","print","printErr"];for(var handler of knownHandlers){if(Module.hasOwnProperty(handler)){handlers.push(handler)}}worker.workerID=PThread.nextWorkerID++;worker.postMessage({"cmd":"load","handlers":handlers,"urlOrBlob":Module["mainScriptUrlOrBlob"]||_scriptDir,"wasmMemory":wasmMemory,"wasmModule":wasmModule,"workerID":worker.workerID})}),loadWasmModuleToAllWorkers:function(onMaybeReady){onMaybeReady()},allocateUnusedWorker:function(){var worker;var pthreadMainJs=locateFile("libnimbus_lc.worker.js");worker=new Worker(pthreadMainJs);PThread.unusedWorkers.push(worker)},getNewWorker:function(){if(PThread.unusedWorkers.length==0){PThread.allocateUnusedWorker();PThread.loadWasmModuleToWorker(PThread.unusedWorkers[0])}return PThread.unusedWorkers.pop()}};Module["PThread"]=PThread;var callRuntimeCallbacks=callbacks=>{while(callbacks.length>0){callbacks.shift()(Module)}};function establishStackSpace(){var pthread_ptr=_pthread_self();var stackHigh=HEAP32[pthread_ptr+52>>2];var stackSize=HEAP32[pthread_ptr+56>>2];var stackLow=stackHigh-stackSize;assert(stackHigh!=0);assert(stackLow!=0);assert(stackHigh>stackLow,"stackHigh must be higher then stackLow");_emscripten_stack_set_limits(stackHigh,stackLow);stackRestore(stackHigh);writeStackCookie()}Module["establishStackSpace"]=establishStackSpace;function exitOnMainThread(returnCode){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(2,0,returnCode);_exit(returnCode)}var getWasmTableEntry=funcPtr=>wasmTable.get(funcPtr);function invokeEntryPoint(ptr,arg){var result=getWasmTableEntry(ptr)(arg);checkStackCookie();function finish(result){if(keepRuntimeAlive()){PThread.setExitStatus(result)}else{__emscripten_thread_exit(result)}}finish(result)}Module["invokeEntryPoint"]=invokeEntryPoint;function registerTLSInit(tlsInitFunc){PThread.tlsInitFunctions.push(tlsInitFunc)}var warnOnce=text=>{if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;if(ENVIRONMENT_IS_NODE)text="warning: "+text;err(text)}};var ___assert_fail=(condition,filename,line,func)=>{abort(`Assertion failed: ${UTF8ToString(condition)}, at: `+[filename?UTF8ToString(filename):"unknown filename",line,func?UTF8ToString(func):"unknown function"])};var ___call_sighandler=(fp,sig)=>getWasmTableEntry(fp)(sig);function ___emscripten_init_main_thread_js(tb){__emscripten_thread_init(tb,!ENVIRONMENT_IS_WORKER,1,!ENVIRONMENT_IS_WEB,134217728,false);PThread.threadInitTLS()}function ___emscripten_thread_cleanup(thread){if(!ENVIRONMENT_IS_PTHREAD)cleanupThread(thread);else postMessage({"cmd":"cleanupThread","thread":thread})}function pthreadCreateProxied(pthread_ptr,attr,startRoutine,arg){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(3,1,pthread_ptr,attr,startRoutine,arg);return ___pthread_create_js(pthread_ptr,attr,startRoutine,arg)}function ___pthread_create_js(pthread_ptr,attr,startRoutine,arg){if(typeof SharedArrayBuffer=="undefined"){err("Current environment does not support SharedArrayBuffer, pthreads are not available!");return 6}var transferList=[];var error=0;if(ENVIRONMENT_IS_PTHREAD&&(transferList.length===0||error)){return pthreadCreateProxied(pthread_ptr,attr,startRoutine,arg)}if(error)return error;var threadParams={startRoutine:startRoutine,pthread_ptr:pthread_ptr,arg:arg,transferList:transferList};if(ENVIRONMENT_IS_PTHREAD){threadParams.cmd="spawnThread";postMessage(threadParams,transferList);return 0}return spawnThread(threadParams)}var SOCKFS={mount(mount){Module["websocket"]=Module["websocket"]&&"object"===typeof Module["websocket"]?Module["websocket"]:{};Module["websocket"]._callbacks={};Module["websocket"]["on"]=function(event,callback){if("function"===typeof callback){this._callbacks[event]=callback}return this};Module["websocket"].emit=function(event,param){if("function"===typeof this._callbacks[event]){this._callbacks[event].call(this,param)}};return FS.createNode(null,"/",16384|511,0)},createSocket(family,type,protocol){type&=~526336;var streaming=type==1;if(streaming&&protocol&&protocol!=6){throw new FS.ErrnoError(66)}var sock={family:family,type:type,protocol:protocol,server:null,error:null,peers:{},pending:[],recv_queue:[],sock_ops:SOCKFS.websocket_sock_ops};var name=SOCKFS.nextname();var node=FS.createNode(SOCKFS.root,name,49152,0);node.sock=sock;var stream=FS.createStream({path:name,node:node,flags:2,seekable:false,stream_ops:SOCKFS.stream_ops});sock.stream=stream;return sock},getSocket(fd){var stream=FS.getStream(fd);if(!stream||!FS.isSocket(stream.node.mode)){return null}return stream.node.sock},stream_ops:{poll(stream){var sock=stream.node.sock;return sock.sock_ops.poll(sock)},ioctl(stream,request,varargs){var sock=stream.node.sock;return sock.sock_ops.ioctl(sock,request,varargs)},read(stream,buffer,offset,length,position){var sock=stream.node.sock;var msg=sock.sock_ops.recvmsg(sock,length);if(!msg){return 0}buffer.set(msg.buffer,offset);return msg.buffer.length},write(stream,buffer,offset,length,position){var sock=stream.node.sock;return sock.sock_ops.sendmsg(sock,buffer,offset,length)},close(stream){var sock=stream.node.sock;sock.sock_ops.close(sock)}},nextname(){if(!SOCKFS.nextname.current){SOCKFS.nextname.current=0}return"socket["+SOCKFS.nextname.current+++"]"},websocket_sock_ops:{createPeer(sock,addr,port){var ws;if(typeof addr=="object"){ws=addr;addr=null;port=null}if(ws){if(ws._socket){addr=ws._socket.remoteAddress;port=ws._socket.remotePort}else{var result=/ws[s]?:\/\/([^:]+):(\d+)/.exec(ws.url);if(!result){throw new Error("WebSocket URL must be in the format ws(s)://address:port")}addr=result[1];port=parseInt(result[2],10)}}else{try{var runtimeConfig=Module["websocket"]&&"object"===typeof Module["websocket"];var url="ws:#".replace("#","//");if(runtimeConfig){if("string"===typeof Module["websocket"]["url"]){url=Module["websocket"]["url"]}}if(url==="ws://"||url==="wss://"){var parts=addr.split("/");url=url+parts[0]+":"+port+"/"+parts.slice(1).join("/")}var subProtocols="binary";if(runtimeConfig){if("string"===typeof Module["websocket"]["subprotocol"]){subProtocols=Module["websocket"]["subprotocol"]}}var opts=undefined;if(subProtocols!=="null"){subProtocols=subProtocols.replace(/^ +| +$/g,"").split(/ *, */);opts=subProtocols}if(runtimeConfig&&null===Module["websocket"]["subprotocol"]){subProtocols="null";opts=undefined}var WebSocketConstructor;if(ENVIRONMENT_IS_NODE){WebSocketConstructor=require("ws")}else{WebSocketConstructor=WebSocket}ws=new WebSocketConstructor(url,opts);ws.binaryType="arraybuffer"}catch(e){throw new FS.ErrnoError(23)}}var peer={addr:addr,port:port,socket:ws,dgram_send_queue:[]};SOCKFS.websocket_sock_ops.addPeer(sock,peer);SOCKFS.websocket_sock_ops.handlePeerEvents(sock,peer);if(sock.type===2&&typeof sock.sport!="undefined"){peer.dgram_send_queue.push(new Uint8Array([255,255,255,255,"p".charCodeAt(0),"o".charCodeAt(0),"r".charCodeAt(0),"t".charCodeAt(0),(sock.sport&65280)>>8,sock.sport&255]))}return peer},getPeer(sock,addr,port){return sock.peers[addr+":"+port]},addPeer(sock,peer){sock.peers[peer.addr+":"+peer.port]=peer},removePeer(sock,peer){delete sock.peers[peer.addr+":"+peer.port]},handlePeerEvents(sock,peer){var first=true;var handleOpen=function(){Module["websocket"].emit("open",sock.stream.fd);try{var queued=peer.dgram_send_queue.shift();while(queued){peer.socket.send(queued);queued=peer.dgram_send_queue.shift()}}catch(e){peer.socket.close()}};function handleMessage(data){if(typeof data=="string"){var encoder=new TextEncoder;data=encoder.encode(data)}else{assert(data.byteLength!==undefined);if(data.byteLength==0){return}data=new Uint8Array(data)}var wasfirst=first;first=false;if(wasfirst&&data.length===10&&data[0]===255&&data[1]===255&&data[2]===255&&data[3]===255&&data[4]==="p".charCodeAt(0)&&data[5]==="o".charCodeAt(0)&&data[6]==="r".charCodeAt(0)&&data[7]==="t".charCodeAt(0)){var newport=data[8]<<8|data[9];SOCKFS.websocket_sock_ops.removePeer(sock,peer);peer.port=newport;SOCKFS.websocket_sock_ops.addPeer(sock,peer);return}sock.recv_queue.push({addr:peer.addr,port:peer.port,data:data});Module["websocket"].emit("message",sock.stream.fd)}if(ENVIRONMENT_IS_NODE){peer.socket.on("open",handleOpen);peer.socket.on("message",function(data,isBinary){if(!isBinary){return}handleMessage(new Uint8Array(data).buffer)});peer.socket.on("close",function(){Module["websocket"].emit("close",sock.stream.fd)});peer.socket.on("error",function(error){sock.error=14;Module["websocket"].emit("error",[sock.stream.fd,sock.error,"ECONNREFUSED: Connection refused"])})}else{peer.socket.onopen=handleOpen;peer.socket.onclose=function(){Module["websocket"].emit("close",sock.stream.fd)};peer.socket.onmessage=function peer_socket_onmessage(event){handleMessage(event.data)};peer.socket.onerror=function(error){sock.error=14;Module["websocket"].emit("error",[sock.stream.fd,sock.error,"ECONNREFUSED: Connection refused"])}}},poll(sock){if(sock.type===1&&sock.server){return sock.pending.length?64|1:0}var mask=0;var dest=sock.type===1?SOCKFS.websocket_sock_ops.getPeer(sock,sock.daddr,sock.dport):null;if(sock.recv_queue.length||!dest||dest&&dest.socket.readyState===dest.socket.CLOSING||dest&&dest.socket.readyState===dest.socket.CLOSED){mask|=64|1}if(!dest||dest&&dest.socket.readyState===dest.socket.OPEN){mask|=4}if(dest&&dest.socket.readyState===dest.socket.CLOSING||dest&&dest.socket.readyState===dest.socket.CLOSED){mask|=16}return mask},ioctl(sock,request,arg){switch(request){case 21531:var bytes=0;if(sock.recv_queue.length){bytes=sock.recv_queue[0].data.length}HEAP32[arg>>2]=bytes;return 0;default:return 28}},close(sock){if(sock.server){try{sock.server.close()}catch(e){}sock.server=null}var peers=Object.keys(sock.peers);for(var i=0;i{HEAP32[___errno_location()>>2]=value;return value};var inetNtop4=addr=>(addr&255)+"."+(addr>>8&255)+"."+(addr>>16&255)+"."+(addr>>24&255);var inetNtop6=ints=>{var str="";var word=0;var longest=0;var lastzero=0;var zstart=0;var len=0;var i=0;var parts=[ints[0]&65535,ints[0]>>16,ints[1]&65535,ints[1]>>16,ints[2]&65535,ints[2]>>16,ints[3]&65535,ints[3]>>16];var hasipv4=true;var v4part="";for(i=0;i<5;i++){if(parts[i]!==0){hasipv4=false;break}}if(hasipv4){v4part=inetNtop4(parts[6]|parts[7]<<16);if(parts[5]===-1){str="::ffff:";str+=v4part;return str}if(parts[5]===0){str="::";if(v4part==="0.0.0.0")v4part="";if(v4part==="0.0.0.1")v4part="1";str+=v4part;return str}}for(word=0;word<8;word++){if(parts[word]===0){if(word-lastzero>1){len=0}lastzero=word;len++}if(len>longest){longest=len;zstart=word-longest+1}}for(word=0;word<8;word++){if(longest>1){if(parts[word]===0&&word>=zstart&&word{var family=HEAP16[sa>>1];var port=_ntohs(HEAPU16[sa+2>>1]);var addr;switch(family){case 2:if(salen!==16){return{errno:28}}addr=HEAP32[sa+4>>2];addr=inetNtop4(addr);break;case 10:if(salen!==28){return{errno:28}}addr=[HEAP32[sa+8>>2],HEAP32[sa+12>>2],HEAP32[sa+16>>2],HEAP32[sa+20>>2]];addr=inetNtop6(addr);break;default:return{errno:5}}return{family:family,addr:addr,port:port}};var inetPton4=str=>{var b=str.split(".");for(var i=0;i<4;i++){var tmp=Number(b[i]);if(isNaN(tmp))return null;b[i]=tmp}return(b[0]|b[1]<<8|b[2]<<16|b[3]<<24)>>>0};var jstoi_q=str=>parseInt(str);var inetPton6=str=>{var words;var w,offset,z;var valid6regx=/^((?=.*::)(?!.*::.+::)(::)?([\dA-F]{1,4}:(:|\b)|){5}|([\dA-F]{1,4}:){6})((([\dA-F]{1,4}((?!\3)::|:\b|$))|(?!\2\3)){2}|(((2[0-4]|1\d|[1-9])?\d|25[0-5])\.?\b){4})$/i;var parts=[];if(!valid6regx.test(str)){return null}if(str==="::"){return[0,0,0,0,0,0,0,0]}if(str.startsWith("::")){str=str.replace("::","Z:")}else{str=str.replace("::",":Z:")}if(str.indexOf(".")>0){str=str.replace(new RegExp("[.]","g"),":");words=str.split(":");words[words.length-4]=jstoi_q(words[words.length-4])+jstoi_q(words[words.length-3])*256;words[words.length-3]=jstoi_q(words[words.length-2])+jstoi_q(words[words.length-1])*256;words=words.slice(0,words.length-2)}else{words=str.split(":")}offset=0;z=0;for(w=0;w{var res=inetPton4(name);if(res!==null){return name}res=inetPton6(name);if(res!==null){return name}var addr;if(DNS.address_map.addrs[name]){addr=DNS.address_map.addrs[name]}else{var id=DNS.address_map.id++;assert(id<65535,"exceeded max address mappings of 65535");addr="172.29."+(id&255)+"."+(id&65280);DNS.address_map.names[addr]=name;DNS.address_map.addrs[name]=addr}return addr},lookup_addr:addr=>{if(DNS.address_map.names[addr]){return DNS.address_map.names[addr]}return null}};function getSocketAddress(addrp,addrlen,allowNull){if(allowNull&&addrp===0)return null;var info=readSockaddr(addrp,addrlen);if(info.errno)throw new FS.ErrnoError(info.errno);info.addr=DNS.lookup_addr(info.addr)||info.addr;return info}function ___syscall_connect(fd,addr,addrlen,d1,d2,d3){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(4,1,fd,addr,addrlen,d1,d2,d3);try{var sock=getSocketFromFD(fd);var info=getSocketAddress(addr,addrlen);sock.sock_ops.connect(sock,info.addr,info.port);return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_fcntl64(fd,cmd,varargs){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(5,1,fd,cmd,varargs);SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(fd);switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-28}var newStream;newStream=FS.createStream(stream,arg);return newStream.fd}case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0}case 5:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0}case 6:case 7:return 0;case 16:case 8:return-28;case 9:setErrNo(28);return-1;default:{return-28}}}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_fstat64(fd,buf){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(6,1,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}}function ___syscall_getsockopt(fd,level,optname,optval,optlen,d1){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(7,1,fd,level,optname,optval,optlen,d1);try{var sock=getSocketFromFD(fd);if(level===1){if(optname===4){HEAP32[optval>>2]=sock.error;HEAP32[optlen>>2]=4;sock.error=null;return 0}}return-50}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_ioctl(fd,op,varargs){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(8,1,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=SYSCALLS.get();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>>0]=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=SYSCALLS.get();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>>0])}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=SYSCALLS.get();HEAP32[argp>>2]=0;return 0}case 21520:{if(!stream.tty)return-59;return-28}case 21531:{var argp=SYSCALLS.get();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=SYSCALLS.get();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){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(9,1,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_newfstatat(dirfd,path,buf,flags){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(10,1,dirfd,path,buf,flags);try{path=SYSCALLS.getStr(path);var nofollow=flags&256;var allowEmpty=flags&4096;flags=flags&~6400;assert(!flags,`unknown flags in __syscall_newfstatat: ${flags}`);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){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(11,1,dirfd,path,flags,varargs);SYSCALLS.varargs=varargs;try{path=SYSCALLS.getStr(path);path=SYSCALLS.calculateAt(dirfd,path);var mode=varargs?SYSCALLS.get():0;return FS.open(path,flags,mode).fd}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_poll(fds,nfds,timeout){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(12,1,fds,nfds,timeout);try{var nonzero=0;for(var i=0;i>2];var events=HEAP16[pollfd+4>>1];var mask=32;var stream=FS.getStream(fd);if(stream){mask=SYSCALLS.DEFAULT_POLLMASK;if(stream.stream_ops.poll){mask=stream.stream_ops.poll(stream,-1)}}mask&=events|8|16;if(mask)nonzero++;HEAP16[pollfd+6>>1]=mask}return nonzero}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_sendto(fd,message,length,flags,addr,addr_len){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(13,1,fd,message,length,flags,addr,addr_len);try{var sock=getSocketFromFD(fd);var dest=getSocketAddress(addr,addr_len,true);if(!dest){return FS.write(sock.stream,HEAP8,message,length)}return sock.sock_ops.sendmsg(sock,HEAP8,message,length,dest.addr,dest.port)}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_socket(domain,type,protocol){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(14,1,domain,type,protocol);try{var sock=SOCKFS.createSocket(domain,type,protocol);assert(sock.stream.fd<64);return sock.stream.fd}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_stat64(path,buf){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(15,1,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}}var nowIsMonotonic=true;var __emscripten_get_now_is_monotonic=()=>nowIsMonotonic;var maybeExit=()=>{if(!keepRuntimeAlive()){try{if(ENVIRONMENT_IS_PTHREAD)__emscripten_thread_exit(EXITSTATUS);else _exit(EXITSTATUS)}catch(e){handleException(e)}}};var callUserCallback=func=>{if(ABORT){err("user callback triggered after runtime exited or application aborted. Ignoring.");return}try{func();maybeExit()}catch(e){handleException(e)}};function __emscripten_thread_mailbox_await(pthread_ptr){if(typeof Atomics.waitAsync==="function"){var wait=Atomics.waitAsync(HEAP32,pthread_ptr>>2,pthread_ptr);assert(wait.async);wait.value.then(checkMailbox);var waitingAsync=pthread_ptr+128;Atomics.store(HEAP32,waitingAsync>>2,1)}}Module["__emscripten_thread_mailbox_await"]=__emscripten_thread_mailbox_await;var checkMailbox=function(){var pthread_ptr=_pthread_self();if(pthread_ptr){__emscripten_thread_mailbox_await(pthread_ptr);callUserCallback(()=>__emscripten_check_mailbox())}};Module["checkMailbox"]=checkMailbox;var __emscripten_notify_mailbox_postmessage=function(targetThreadId,currThreadId,mainThreadId){if(targetThreadId==currThreadId){setTimeout(()=>checkMailbox())}else if(ENVIRONMENT_IS_PTHREAD){postMessage({"targetThread":targetThreadId,"cmd":"checkMailbox"})}else{var worker=PThread.pthreads[targetThreadId];if(!worker){err("Cannot send message to thread with ID "+targetThreadId+", unknown thread ID!");return}worker.postMessage({"cmd":"checkMailbox"})}};function __emscripten_set_offscreencanvas_size(target,width,height){err("emscripten_set_offscreencanvas_size: Build with -sOFFSCREENCANVAS_SUPPORT=1 to enable transferring canvases to pthreads.");return-1}function __emscripten_thread_set_strongref(thread){if(ENVIRONMENT_IS_NODE){PThread.pthreads[thread].ref()}}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};function convertI32PairToI53Checked(lo,hi){assert(lo==lo>>>0||lo==(lo|0));assert(hi===(hi|0));return hi+2097152>>>0<4194305-!!lo?(lo>>>0)+hi*4294967296:NaN}function __localtime_js(time_low,time_high,tmPtr){var time=convertI32PairToI53Checked(time_low,time_high);var date=new Date(time*1e3);HEAP32[tmPtr>>2]=date.getSeconds();HEAP32[tmPtr+4>>2]=date.getMinutes();HEAP32[tmPtr+8>>2]=date.getHours();HEAP32[tmPtr+12>>2]=date.getDate();HEAP32[tmPtr+16>>2]=date.getMonth();HEAP32[tmPtr+20>>2]=date.getFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getDay();var yday=ydayFromDate(date)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr+36>>2]=-(date.getTimezoneOffset()*60);var start=new Date(date.getFullYear(),0,1);var summerOffset=new Date(date.getFullYear(),6,1).getTimezoneOffset();var winterOffset=start.getTimezoneOffset();var dst=(summerOffset!=winterOffset&&date.getTimezoneOffset()==Math.min(winterOffset,summerOffset))|0;HEAP32[tmPtr+32>>2]=dst}function __mmap_js(len,prot,flags,fd,offset_low,offset_high,allocated,addr){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(16,1,len,prot,flags,fd,offset_low,offset_high,allocated,addr);var offset=convertI32PairToI53Checked(offset_low,offset_high);try{if(isNaN(offset))return 61;var stream=SYSCALLS.getStreamFromFD(fd);var res=FS.mmap(stream,len,offset,prot,flags);var ptr=res.ptr;HEAP32[allocated>>2]=res.allocated;HEAPU32[addr>>2]=ptr;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function __munmap_js(addr,len,prot,flags,fd,offset_low,offset_high){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(17,1,addr,len,prot,flags,fd,offset_low,offset_high);var offset=convertI32PairToI53Checked(offset_low,offset_high);try{if(isNaN(offset))return 61;var stream=SYSCALLS.getStreamFromFD(fd);if(prot&2){SYSCALLS.doMsync(addr,stream,len,flags,offset)}FS.munmap(stream)}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}var stringToUTF8=(str,outPtr,maxBytesToWrite)=>{assert(typeof maxBytesToWrite=="number","stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!");return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)};var stringToNewUTF8=str=>{var size=lengthBytesUTF8(str)+1;var ret=_malloc(size);if(ret)stringToUTF8(str,ret,size);return ret};var __tzset_js=(timezone,daylight,tzname)=>{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);function extractZone(date){var match=date.toTimeString().match(/\(([A-Za-z ]+)\)$/);return match?match[1]:"GMT"}var winterName=extractZone(winter);var summerName=extractZone(summer);var winterNamePtr=stringToNewUTF8(winterName);var summerNamePtr=stringToNewUTF8(summerName);if(summerOffset>2]=winterNamePtr;HEAPU32[tzname+4>>2]=summerNamePtr}else{HEAPU32[tzname>>2]=summerNamePtr;HEAPU32[tzname+4>>2]=winterNamePtr}};var _abort=()=>{abort("native code called abort()")};function _emscripten_check_blocking_allowed(){if(ENVIRONMENT_IS_NODE)return;if(ENVIRONMENT_IS_WORKER)return;warnOnce("Blocking on the main thread is very dangerous, see https://emscripten.org/docs/porting/pthreads.html#blocking-on-the-main-browser-thread")}function _emscripten_date_now(){return Date.now()}var runtimeKeepalivePush=()=>{runtimeKeepaliveCounter+=1};var _emscripten_exit_with_live_runtime=()=>{runtimeKeepalivePush();throw"unwind"};var getHeapMax=()=>HEAPU8.length;var _emscripten_get_heap_max=()=>getHeapMax();var _emscripten_get_now;_emscripten_get_now=()=>performance.timeOrigin+performance.now();function _emscripten_num_logical_cores(){if(ENVIRONMENT_IS_NODE)return require("os").cpus().length;return navigator["hardwareConcurrency"]}var withStackSave=f=>{var stack=stackSave();var ret=f();stackRestore(stack);return ret};function proxyToMainThread(index,sync){var numCallArgs=arguments.length-2;var outerArgs=arguments;var maxArgs=19;if(numCallArgs>maxArgs){throw"proxyToMainThread: Too many arguments "+numCallArgs+" to proxied function idx="+index+", maximum supported is "+maxArgs}return withStackSave(()=>{var serializedNumCallArgs=numCallArgs;var args=stackAlloc(serializedNumCallArgs*8);var b=args>>3;for(var i=0;i>3;for(var i=0;i{abort(`Cannot enlarge memory arrays to size ${requestedSize} bytes (OOM). Either (1) compile with -sINITIAL_MEMORY=X with X higher than the current value ${HEAP8.length}, (2) compile with -sALLOW_MEMORY_GROWTH which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -sABORTING_MALLOC=0`)};var _emscripten_resize_heap=requestedSize=>{var oldSize=HEAPU8.length;requestedSize>>>=0;abortOnCannotGrowMemory(requestedSize)};function _fd_close(fd){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(18,1,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}}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){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(20,1,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){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(21,1,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 writeSockaddr=(sa,family,addr,port,addrlen)=>{switch(family){case 2:addr=inetPton4(addr);zeroMemory(sa,16);if(addrlen){HEAP32[addrlen>>2]=16}HEAP16[sa>>1]=family;HEAP32[sa+4>>2]=addr;HEAP16[sa+2>>1]=_htons(port);break;case 10:addr=inetPton6(addr);zeroMemory(sa,28);if(addrlen){HEAP32[addrlen>>2]=28}HEAP32[sa>>2]=family;HEAP32[sa+8>>2]=addr[0];HEAP32[sa+12>>2]=addr[1];HEAP32[sa+16>>2]=addr[2];HEAP32[sa+20>>2]=addr[3];HEAP16[sa+2>>1]=_htons(port);break;default:return 5}return 0};function _getaddrinfo(node,service,hint,out){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(22,1,node,service,hint,out);var addr=0;var port=0;var flags=0;var family=0;var type=0;var proto=0;var ai;function allocaddrinfo(family,type,proto,canon,addr,port){var sa,salen,ai;var errno;salen=family===10?28:16;addr=family===10?inetNtop6(addr):inetNtop4(addr);sa=_malloc(salen);errno=writeSockaddr(sa,family,addr,port);assert(!errno);ai=_malloc(32);HEAP32[ai+4>>2]=family;HEAP32[ai+8>>2]=type;HEAP32[ai+12>>2]=proto;HEAPU32[ai+24>>2]=canon;HEAPU32[ai+20>>2]=sa;if(family===10){HEAP32[ai+16>>2]=28}else{HEAP32[ai+16>>2]=16}HEAP32[ai+28>>2]=0;return ai}if(hint){flags=HEAP32[hint>>2];family=HEAP32[hint+4>>2];type=HEAP32[hint+8>>2];proto=HEAP32[hint+12>>2]}if(type&&!proto){proto=type===2?17:6}if(!type&&proto){type=proto===17?2:1}if(proto===0){proto=6}if(type===0){type=1}if(!node&&!service){return-2}if(flags&~(1|2|4|1024|8|16|32)){return-1}if(hint!==0&&HEAP32[hint>>2]&2&&!node){return-1}if(flags&32){return-2}if(type!==0&&type!==1&&type!==2){return-7}if(family!==0&&family!==2&&family!==10){return-6}if(service){service=UTF8ToString(service);port=parseInt(service,10);if(isNaN(port)){if(flags&1024){return-2}return-8}}if(!node){if(family===0){family=2}if((flags&1)===0){if(family===2){addr=_htonl(2130706433)}else{addr=[0,0,0,1]}}ai=allocaddrinfo(family,type,proto,null,addr,port);HEAPU32[out>>2]=ai;return 0}node=UTF8ToString(node);addr=inetPton4(node);if(addr!==null){if(family===0||family===2){family=2}else if(family===10&&flags&8){addr=[0,0,_htonl(65535),addr];family=10}else{return-2}}else{addr=inetPton6(node);if(addr!==null){if(family===0||family===10){family=10}else{return-2}}}if(addr!=null){ai=allocaddrinfo(family,type,proto,node,addr,port);HEAPU32[out>>2]=ai;return 0}if(flags&4){return-2}node=DNS.lookup_name(node);addr=inetPton4(node);if(family===0){family=2}else if(family===10){addr=[0,0,_htonl(65535),addr]}ai=allocaddrinfo(family,type,proto,null,addr,port);HEAPU32[out>>2]=ai;return 0}PThread.init();var FSNode=function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev};var readMode=292|73;var writeMode=146;Object.defineProperties(FSNode.prototype,{read:{get:function(){return(this.mode&readMode)===readMode},set:function(val){val?this.mode|=readMode:this.mode&=~readMode}},write:{get:function(){return(this.mode&writeMode)===writeMode},set:function(val){val?this.mode|=writeMode:this.mode&=~writeMode}},isFolder:{get:function(){return FS.isDir(this.mode)}},isDevice:{get:function(){return FS.isChrdev(this.mode)}}});FS.FSNode=FSNode;FS.createPreloadedFile=FS_createPreloadedFile;FS.staticInit();ERRNO_CODES={"EPERM":63,"ENOENT":44,"ESRCH":71,"EINTR":27,"EIO":29,"ENXIO":60,"E2BIG":1,"ENOEXEC":45,"EBADF":8,"ECHILD":12,"EAGAIN":6,"EWOULDBLOCK":6,"ENOMEM":48,"EACCES":2,"EFAULT":21,"ENOTBLK":105,"EBUSY":10,"EEXIST":20,"EXDEV":75,"ENODEV":43,"ENOTDIR":54,"EISDIR":31,"EINVAL":28,"ENFILE":41,"EMFILE":33,"ENOTTY":59,"ETXTBSY":74,"EFBIG":22,"ENOSPC":51,"ESPIPE":70,"EROFS":69,"EMLINK":34,"EPIPE":64,"EDOM":18,"ERANGE":68,"ENOMSG":49,"EIDRM":24,"ECHRNG":106,"EL2NSYNC":156,"EL3HLT":107,"EL3RST":108,"ELNRNG":109,"EUNATCH":110,"ENOCSI":111,"EL2HLT":112,"EDEADLK":16,"ENOLCK":46,"EBADE":113,"EBADR":114,"EXFULL":115,"ENOANO":104,"EBADRQC":103,"EBADSLT":102,"EDEADLOCK":16,"EBFONT":101,"ENOSTR":100,"ENODATA":116,"ETIME":117,"ENOSR":118,"ENONET":119,"ENOPKG":120,"EREMOTE":121,"ENOLINK":47,"EADV":122,"ESRMNT":123,"ECOMM":124,"EPROTO":65,"EMULTIHOP":36,"EDOTDOT":125,"EBADMSG":9,"ENOTUNIQ":126,"EBADFD":127,"EREMCHG":128,"ELIBACC":129,"ELIBBAD":130,"ELIBSCN":131,"ELIBMAX":132,"ELIBEXEC":133,"ENOSYS":52,"ENOTEMPTY":55,"ENAMETOOLONG":37,"ELOOP":32,"EOPNOTSUPP":138,"EPFNOSUPPORT":139,"ECONNRESET":15,"ENOBUFS":42,"EAFNOSUPPORT":5,"EPROTOTYPE":67,"ENOTSOCK":57,"ENOPROTOOPT":50,"ESHUTDOWN":140,"ECONNREFUSED":14,"EADDRINUSE":3,"ECONNABORTED":13,"ENETUNREACH":40,"ENETDOWN":38,"ETIMEDOUT":73,"EHOSTDOWN":142,"EHOSTUNREACH":23,"EINPROGRESS":26,"EALREADY":7,"EDESTADDRREQ":17,"EMSGSIZE":35,"EPROTONOSUPPORT":66,"ESOCKTNOSUPPORT":137,"EADDRNOTAVAIL":4,"ENETRESET":39,"EISCONN":30,"ENOTCONN":53,"ETOOMANYREFS":141,"EUSERS":136,"EDQUOT":19,"ESTALE":72,"ENOTSUP":138,"ENOMEDIUM":148,"EILSEQ":25,"EOVERFLOW":61,"ECANCELED":11,"ENOTRECOVERABLE":56,"EOWNERDEAD":62,"ESTRPIPE":135};var proxiedFunctionTable=[null,_proc_exit,exitOnMainThread,pthreadCreateProxied,___syscall_connect,___syscall_fcntl64,___syscall_fstat64,___syscall_getsockopt,___syscall_ioctl,___syscall_lstat64,___syscall_newfstatat,___syscall_openat,___syscall_poll,___syscall_sendto,___syscall_socket,___syscall_stat64,__mmap_js,__munmap_js,_fd_close,_fd_read,_fd_seek,_fd_write,_getaddrinfo];function checkIncomingModuleAPI(){ignoredModuleProp("fetchSettings")}var wasmImports={__assert_fail:___assert_fail,__call_sighandler:___call_sighandler,__emscripten_init_main_thread_js:___emscripten_init_main_thread_js,__emscripten_thread_cleanup:___emscripten_thread_cleanup,__pthread_create_js:___pthread_create_js,__syscall_connect:___syscall_connect,__syscall_fcntl64:___syscall_fcntl64,__syscall_fstat64:___syscall_fstat64,__syscall_getsockopt:___syscall_getsockopt,__syscall_ioctl:___syscall_ioctl,__syscall_lstat64:___syscall_lstat64,__syscall_newfstatat:___syscall_newfstatat,__syscall_openat:___syscall_openat,__syscall_poll:___syscall_poll,__syscall_sendto:___syscall_sendto,__syscall_socket:___syscall_socket,__syscall_stat64:___syscall_stat64,_emscripten_get_now_is_monotonic:__emscripten_get_now_is_monotonic,_emscripten_notify_mailbox_postmessage:__emscripten_notify_mailbox_postmessage,_emscripten_set_offscreencanvas_size:__emscripten_set_offscreencanvas_size,_emscripten_thread_mailbox_await:__emscripten_thread_mailbox_await,_emscripten_thread_set_strongref:__emscripten_thread_set_strongref,_localtime_js:__localtime_js,_mmap_js:__mmap_js,_munmap_js:__munmap_js,_tzset_js:__tzset_js,abort:_abort,emscripten_check_blocking_allowed:_emscripten_check_blocking_allowed,emscripten_date_now:_emscripten_date_now,emscripten_exit_with_live_runtime:_emscripten_exit_with_live_runtime,emscripten_get_heap_max:_emscripten_get_heap_max,emscripten_get_now:_emscripten_get_now,emscripten_num_logical_cores:_emscripten_num_logical_cores,emscripten_receive_on_main_thread_js:_emscripten_receive_on_main_thread_js,emscripten_resize_heap:_emscripten_resize_heap,exit:_exit,fd_close:_fd_close,fd_read:_fd_read,fd_seek:_fd_seek,fd_write:_fd_write,getaddrinfo:_getaddrinfo,memory:wasmMemory};var asm=createWasm();var ___wasm_call_ctors=createExportWrapper("__wasm_call_ctors");var _malloc=Module["_malloc"]=createExportWrapper("malloc");var _free=Module["_free"]=createExportWrapper("free");var ___errno_location=createExportWrapper("__errno_location");var _fflush=Module["_fflush"]=createExportWrapper("fflush");var _ETHRandomNumberCreate=Module["_ETHRandomNumberCreate"]=createExportWrapper("ETHRandomNumberCreate");var _ETHConsensusConfigCreateFromYaml=Module["_ETHConsensusConfigCreateFromYaml"]=createExportWrapper("ETHConsensusConfigCreateFromYaml");var _ETHConsensusConfigGetConsensusVersionAtEpoch=Module["_ETHConsensusConfigGetConsensusVersionAtEpoch"]=createExportWrapper("ETHConsensusConfigGetConsensusVersionAtEpoch");var _ETHBeaconStateCreateFromSsz=Module["_ETHBeaconStateCreateFromSsz"]=createExportWrapper("ETHBeaconStateCreateFromSsz");var _ETHBeaconStateDestroy=Module["_ETHBeaconStateDestroy"]=createExportWrapper("ETHBeaconStateDestroy");var _ETHBeaconStateCopyGenesisValidatorsRoot=Module["_ETHBeaconStateCopyGenesisValidatorsRoot"]=createExportWrapper("ETHBeaconStateCopyGenesisValidatorsRoot");var _ETHRootDestroy=Module["_ETHRootDestroy"]=createExportWrapper("ETHRootDestroy");var _ETHForkDigestsCreateFromState=Module["_ETHForkDigestsCreateFromState"]=createExportWrapper("ETHForkDigestsCreateFromState");var _ETHBeaconClockCreateFromState=Module["_ETHBeaconClockCreateFromState"]=createExportWrapper("ETHBeaconClockCreateFromState");var _ETHBeaconClockGetSlot=Module["_ETHBeaconClockGetSlot"]=createExportWrapper("ETHBeaconClockGetSlot");var _ETHLightClientStoreCreateFromBootstrap=Module["_ETHLightClientStoreCreateFromBootstrap"]=createExportWrapper("ETHLightClientStoreCreateFromBootstrap");var _ETHLightClientStoreDestroy=Module["_ETHLightClientStoreDestroy"]=createExportWrapper("ETHLightClientStoreDestroy");var _ETHLightClientStoreGetNextSyncTask=Module["_ETHLightClientStoreGetNextSyncTask"]=createExportWrapper("ETHLightClientStoreGetNextSyncTask");var _ETHLightClientStoreGetMillisecondsToNextSyncTask=Module["_ETHLightClientStoreGetMillisecondsToNextSyncTask"]=createExportWrapper("ETHLightClientStoreGetMillisecondsToNextSyncTask");var _ETHLightClientStoreProcessUpdatesByRange=Module["_ETHLightClientStoreProcessUpdatesByRange"]=createExportWrapper("ETHLightClientStoreProcessUpdatesByRange");var _ETHLightClientStoreProcessFinalityUpdate=Module["_ETHLightClientStoreProcessFinalityUpdate"]=createExportWrapper("ETHLightClientStoreProcessFinalityUpdate");var _ETHLightClientStoreProcessOptimisticUpdate=Module["_ETHLightClientStoreProcessOptimisticUpdate"]=createExportWrapper("ETHLightClientStoreProcessOptimisticUpdate");var _ETHLightClientStoreGetFinalizedHeader=Module["_ETHLightClientStoreGetFinalizedHeader"]=createExportWrapper("ETHLightClientStoreGetFinalizedHeader");var _ETHLightClientStoreIsNextSyncCommitteeKnown=Module["_ETHLightClientStoreIsNextSyncCommitteeKnown"]=createExportWrapper("ETHLightClientStoreIsNextSyncCommitteeKnown");var _ETHLightClientStoreGetOptimisticHeader=Module["_ETHLightClientStoreGetOptimisticHeader"]=createExportWrapper("ETHLightClientStoreGetOptimisticHeader");var _ETHLightClientStoreGetSafetyThreshold=Module["_ETHLightClientStoreGetSafetyThreshold"]=createExportWrapper("ETHLightClientStoreGetSafetyThreshold");var _ETHLightClientHeaderCreateCopy=Module["_ETHLightClientHeaderCreateCopy"]=createExportWrapper("ETHLightClientHeaderCreateCopy");var _ETHLightClientHeaderDestroy=Module["_ETHLightClientHeaderDestroy"]=createExportWrapper("ETHLightClientHeaderDestroy");var _ETHLightClientHeaderCopyBeaconRoot=Module["_ETHLightClientHeaderCopyBeaconRoot"]=createExportWrapper("ETHLightClientHeaderCopyBeaconRoot");var _ETHLightClientHeaderGetBeacon=Module["_ETHLightClientHeaderGetBeacon"]=createExportWrapper("ETHLightClientHeaderGetBeacon");var _ETHBeaconBlockHeaderGetSlot=Module["_ETHBeaconBlockHeaderGetSlot"]=createExportWrapper("ETHBeaconBlockHeaderGetSlot");var _ETHBeaconBlockHeaderGetProposerIndex=Module["_ETHBeaconBlockHeaderGetProposerIndex"]=createExportWrapper("ETHBeaconBlockHeaderGetProposerIndex");var _ETHBeaconBlockHeaderGetParentRoot=Module["_ETHBeaconBlockHeaderGetParentRoot"]=createExportWrapper("ETHBeaconBlockHeaderGetParentRoot");var _ETHBeaconBlockHeaderGetStateRoot=Module["_ETHBeaconBlockHeaderGetStateRoot"]=createExportWrapper("ETHBeaconBlockHeaderGetStateRoot");var _ETHBeaconBlockHeaderGetBodyRoot=Module["_ETHBeaconBlockHeaderGetBodyRoot"]=createExportWrapper("ETHBeaconBlockHeaderGetBodyRoot");var _ETHLightClientHeaderCopyExecutionHash=Module["_ETHLightClientHeaderCopyExecutionHash"]=createExportWrapper("ETHLightClientHeaderCopyExecutionHash");var _ETHLightClientHeaderGetExecution=Module["_ETHLightClientHeaderGetExecution"]=createExportWrapper("ETHLightClientHeaderGetExecution");var _ETHExecutionPayloadHeaderGetParentHash=Module["_ETHExecutionPayloadHeaderGetParentHash"]=createExportWrapper("ETHExecutionPayloadHeaderGetParentHash");var _ETHExecutionPayloadHeaderGetFeeRecipient=Module["_ETHExecutionPayloadHeaderGetFeeRecipient"]=createExportWrapper("ETHExecutionPayloadHeaderGetFeeRecipient");var _ETHExecutionPayloadHeaderGetStateRoot=Module["_ETHExecutionPayloadHeaderGetStateRoot"]=createExportWrapper("ETHExecutionPayloadHeaderGetStateRoot");var _ETHExecutionPayloadHeaderGetReceiptsRoot=Module["_ETHExecutionPayloadHeaderGetReceiptsRoot"]=createExportWrapper("ETHExecutionPayloadHeaderGetReceiptsRoot");var _ETHExecutionPayloadHeaderGetLogsBloom=Module["_ETHExecutionPayloadHeaderGetLogsBloom"]=createExportWrapper("ETHExecutionPayloadHeaderGetLogsBloom");var _ETHExecutionPayloadHeaderGetPrevRandao=Module["_ETHExecutionPayloadHeaderGetPrevRandao"]=createExportWrapper("ETHExecutionPayloadHeaderGetPrevRandao");var _ETHExecutionPayloadHeaderGetBlockNumber=Module["_ETHExecutionPayloadHeaderGetBlockNumber"]=createExportWrapper("ETHExecutionPayloadHeaderGetBlockNumber");var _ETHExecutionPayloadHeaderGetGasLimit=Module["_ETHExecutionPayloadHeaderGetGasLimit"]=createExportWrapper("ETHExecutionPayloadHeaderGetGasLimit");var _ETHExecutionPayloadHeaderGetGasUsed=Module["_ETHExecutionPayloadHeaderGetGasUsed"]=createExportWrapper("ETHExecutionPayloadHeaderGetGasUsed");var _ETHExecutionPayloadHeaderGetTimestamp=Module["_ETHExecutionPayloadHeaderGetTimestamp"]=createExportWrapper("ETHExecutionPayloadHeaderGetTimestamp");var _ETHExecutionPayloadHeaderGetExtraDataBytes=Module["_ETHExecutionPayloadHeaderGetExtraDataBytes"]=createExportWrapper("ETHExecutionPayloadHeaderGetExtraDataBytes");var _ETHExecutionPayloadHeaderGetNumExtraDataBytes=Module["_ETHExecutionPayloadHeaderGetNumExtraDataBytes"]=createExportWrapper("ETHExecutionPayloadHeaderGetNumExtraDataBytes");var _ETHExecutionPayloadHeaderGetBaseFeePerGas=Module["_ETHExecutionPayloadHeaderGetBaseFeePerGas"]=createExportWrapper("ETHExecutionPayloadHeaderGetBaseFeePerGas");var _ETHExecutionPayloadHeaderGetBlobGasUsed=Module["_ETHExecutionPayloadHeaderGetBlobGasUsed"]=createExportWrapper("ETHExecutionPayloadHeaderGetBlobGasUsed");var _ETHExecutionPayloadHeaderGetExcessBlobGas=Module["_ETHExecutionPayloadHeaderGetExcessBlobGas"]=createExportWrapper("ETHExecutionPayloadHeaderGetExcessBlobGas");var _ETHExecutionBlockHeaderCreateFromJson=Module["_ETHExecutionBlockHeaderCreateFromJson"]=createExportWrapper("ETHExecutionBlockHeaderCreateFromJson");var _ETHExecutionBlockHeaderDestroy=Module["_ETHExecutionBlockHeaderDestroy"]=createExportWrapper("ETHExecutionBlockHeaderDestroy");var _ETHExecutionBlockHeaderGetTransactionsRoot=Module["_ETHExecutionBlockHeaderGetTransactionsRoot"]=createExportWrapper("ETHExecutionBlockHeaderGetTransactionsRoot");var _ETHExecutionBlockHeaderGetWithdrawalsRoot=Module["_ETHExecutionBlockHeaderGetWithdrawalsRoot"]=createExportWrapper("ETHExecutionBlockHeaderGetWithdrawalsRoot");var _ETHTransactionsCreateFromJson=Module["_ETHTransactionsCreateFromJson"]=createExportWrapper("ETHTransactionsCreateFromJson");var _ETHTransactionsDestroy=Module["_ETHTransactionsDestroy"]=createExportWrapper("ETHTransactionsDestroy");var _ETHTransactionsGetCount=Module["_ETHTransactionsGetCount"]=createExportWrapper("ETHTransactionsGetCount");var _ETHTransactionsGet=Module["_ETHTransactionsGet"]=createExportWrapper("ETHTransactionsGet");var _ETHTransactionGetHash=Module["_ETHTransactionGetHash"]=createExportWrapper("ETHTransactionGetHash");var _ETHTransactionGetFrom=Module["_ETHTransactionGetFrom"]=createExportWrapper("ETHTransactionGetFrom");var _ETHTransactionGetNonce=Module["_ETHTransactionGetNonce"]=createExportWrapper("ETHTransactionGetNonce");var _ETHTransactionGetMaxPriorityFeePerGas=Module["_ETHTransactionGetMaxPriorityFeePerGas"]=createExportWrapper("ETHTransactionGetMaxPriorityFeePerGas");var _ETHTransactionGetMaxFeePerGas=Module["_ETHTransactionGetMaxFeePerGas"]=createExportWrapper("ETHTransactionGetMaxFeePerGas");var _ETHTransactionGetGas=Module["_ETHTransactionGetGas"]=createExportWrapper("ETHTransactionGetGas");var _ETHTransactionIsCreatingContract=Module["_ETHTransactionIsCreatingContract"]=createExportWrapper("ETHTransactionIsCreatingContract");var _ETHTransactionGetTo=Module["_ETHTransactionGetTo"]=createExportWrapper("ETHTransactionGetTo");var _ETHTransactionGetValue=Module["_ETHTransactionGetValue"]=createExportWrapper("ETHTransactionGetValue");var _ETHTransactionGetBytes=Module["_ETHTransactionGetBytes"]=createExportWrapper("ETHTransactionGetBytes");var _NimMain=Module["_NimMain"]=createExportWrapper("NimMain");var __emscripten_tls_init=Module["__emscripten_tls_init"]=createExportWrapper("_emscripten_tls_init");var _pthread_self=Module["_pthread_self"]=()=>(_pthread_self=Module["_pthread_self"]=wasmExports["pthread_self"])();var _emscripten_builtin_memalign=createExportWrapper("emscripten_builtin_memalign");var __emscripten_thread_init=Module["__emscripten_thread_init"]=createExportWrapper("_emscripten_thread_init");var __emscripten_thread_crashed=Module["__emscripten_thread_crashed"]=createExportWrapper("_emscripten_thread_crashed");var _emscripten_main_thread_process_queued_calls=createExportWrapper("emscripten_main_thread_process_queued_calls");var _htonl=createExportWrapper("htonl");var _htons=createExportWrapper("htons");var _emscripten_main_runtime_thread_id=createExportWrapper("emscripten_main_runtime_thread_id");var __emscripten_run_in_main_runtime_thread_js=createExportWrapper("_emscripten_run_in_main_runtime_thread_js");var _emscripten_dispatch_to_thread_=createExportWrapper("emscripten_dispatch_to_thread_");var _emscripten_stack_get_base=()=>(_emscripten_stack_get_base=wasmExports["emscripten_stack_get_base"])();var _emscripten_stack_get_end=()=>(_emscripten_stack_get_end=wasmExports["emscripten_stack_get_end"])();var _ntohs=createExportWrapper("ntohs");var __emscripten_thread_free_data=createExportWrapper("_emscripten_thread_free_data");var __emscripten_thread_exit=Module["__emscripten_thread_exit"]=createExportWrapper("_emscripten_thread_exit");var __emscripten_check_mailbox=Module["__emscripten_check_mailbox"]=createExportWrapper("_emscripten_check_mailbox");var setTempRet0=createExportWrapper("setTempRet0");var _emscripten_stack_init=()=>(_emscripten_stack_init=wasmExports["emscripten_stack_init"])();var _emscripten_stack_set_limits=(a0,a1)=>(_emscripten_stack_set_limits=wasmExports["emscripten_stack_set_limits"])(a0,a1);var _emscripten_stack_get_free=()=>(_emscripten_stack_get_free=wasmExports["emscripten_stack_get_free"])();var stackSave=createExportWrapper("stackSave");var stackRestore=createExportWrapper("stackRestore");var stackAlloc=createExportWrapper("stackAlloc");var _emscripten_stack_get_current=()=>(_emscripten_stack_get_current=wasmExports["emscripten_stack_get_current"])();var dynCall_jii=Module["dynCall_jii"]=createExportWrapper("dynCall_jii");var dynCall_viij=Module["dynCall_viij"]=createExportWrapper("dynCall_viij");var dynCall_jiji=Module["dynCall_jiji"]=createExportWrapper("dynCall_jiji");var _kETHLcSyncKind_UpdatesByRange=Module["_kETHLcSyncKind_UpdatesByRange"]=1140124;var _kETHLcSyncKind_FinalityUpdate=Module["_kETHLcSyncKind_FinalityUpdate"]=1140128;var _kETHLcSyncKind_OptimisticUpdate=Module["_kETHLcSyncKind_OptimisticUpdate"]=1140132;Module["keepRuntimeAlive"]=keepRuntimeAlive;Module["wasmMemory"]=wasmMemory;Module["lengthBytesUTF8"]=lengthBytesUTF8;Module["stringToNewUTF8"]=stringToNewUTF8;Module["ExitStatus"]=ExitStatus;var missingLibrarySymbols=["writeI53ToI64","writeI53ToI64Clamped","writeI53ToI64Signaling","writeI53ToU64Clamped","writeI53ToU64Signaling","readI53FromI64","readI53FromU64","convertI32PairToI53","convertU32PairToI53","growMemory","arraySum","addDays","getHostByName","getCallstack","emscriptenLog","convertPCtoSourceLocation","readEmAsmArgs","jstoi_s","getExecutableName","listenOnce","autoResumeAudioContext","dynCallLegacy","getDynCaller","dynCall","setWasmTableEntry","runtimeKeepalivePop","safeSetTimeout","asmjsMangle","handleAllocatorInit","HandleAllocator","getNativeTypeSize","STACK_SIZE","STACK_ALIGN","POINTER_SIZE","ASSERTIONS","getCFunc","ccall","cwrap","uleb128Encode","sigToWasmTypes","generateFuncType","convertJsFunctionToWasm","getEmptyTableSlot","updateTableMap","getFunctionAddress","addFunction","removeFunction","reallyNegative","unSign","strLen","reSign","formatString","intArrayToString","AsciiToString","stringToAscii","UTF16ToString","stringToUTF16","lengthBytesUTF16","UTF32ToString","stringToUTF32","lengthBytesUTF32","stringToUTF8OnStack","writeArrayToMemory","registerKeyEventCallback","maybeCStringToJsString","findEventTarget","findCanvasEventTarget","getBoundingClientRect","fillMouseEventData","registerMouseEventCallback","registerWheelEventCallback","registerUiEventCallback","registerFocusEventCallback","fillDeviceOrientationEventData","registerDeviceOrientationEventCallback","fillDeviceMotionEventData","registerDeviceMotionEventCallback","screenOrientation","fillOrientationChangeEventData","registerOrientationChangeEventCallback","fillFullscreenChangeEventData","registerFullscreenChangeEventCallback","JSEvents_requestFullscreen","JSEvents_resizeCanvasForFullscreen","registerRestoreOldStyle","hideEverythingExceptGivenElement","restoreHiddenElements","setLetterbox","softFullscreenResizeWebGLRenderTarget","doRequestFullscreen","fillPointerlockChangeEventData","registerPointerlockChangeEventCallback","registerPointerlockErrorEventCallback","requestPointerLock","fillVisibilityChangeEventData","registerVisibilityChangeEventCallback","registerTouchEventCallback","fillGamepadEventData","registerGamepadEventCallback","registerBeforeUnloadEventCallback","fillBatteryEventData","battery","registerBatteryEventCallback","setCanvasElementSizeCallingThread","setCanvasElementSizeMainThread","setCanvasElementSize","getCanvasSizeCallingThread","getCanvasSizeMainThread","getCanvasElementSize","jsStackTrace","stackTrace","getEnvStrings","checkWasiClock","wasiRightsToMuslOFlags","wasiOFlagsToMuslOFlags","createDyncallWrapper","setImmediateWrapped","clearImmediateWrapped","polyfillSetImmediate","getPromise","makePromise","idsToPromises","makePromiseCallback","ExceptionInfo","findMatchingCatch","setMainLoop","_setNetworkCallback","heapObjectForWebGLType","heapAccessShiftForWebGLHeap","webgl_enable_ANGLE_instanced_arrays","webgl_enable_OES_vertex_array_object","webgl_enable_WEBGL_draw_buffers","webgl_enable_WEBGL_multi_draw","emscriptenWebGLGet","computeUnpackAlignedImageSize","colorChannelsInGlTextureFormat","emscriptenWebGLGetTexPixelData","__glGenObject","emscriptenWebGLGetUniform","webglGetUniformLocation","webglPrepareUniformLocationsBeforeFirstUse","webglGetLeftBracePos","emscriptenWebGLGetVertexAttrib","__glGetActiveAttribOrUniform","writeGLArray","emscripten_webgl_destroy_context_before_on_calling_thread","registerWebGlEventCallback","runAndAbortIfError","SDL_unicode","SDL_ttfContext","SDL_audio","GLFW_Window","ALLOC_NORMAL","ALLOC_STACK","allocate","writeStringToMemory","writeAsciiToMemory"];missingLibrarySymbols.forEach(missingLibrarySymbol);var unexportedSymbols=["run","addOnPreRun","addOnInit","addOnPreMain","addOnExit","addOnPostRun","addRunDependency","removeRunDependency","FS_createFolder","FS_createPath","FS_createDataFile","FS_createLazyFile","FS_createLink","FS_createDevice","FS_unlink","out","err","callMain","abort","wasmTable","wasmExports","stackAlloc","stackSave","stackRestore","getTempRet0","setTempRet0","writeStackCookie","checkStackCookie","convertI32PairToI53Checked","ptrToString","zeroMemory","exitJS","getHeapMax","abortOnCannotGrowMemory","ENV","MONTH_DAYS_REGULAR","MONTH_DAYS_LEAP","MONTH_DAYS_REGULAR_CUMULATIVE","MONTH_DAYS_LEAP_CUMULATIVE","isLeapYear","ydayFromDate","ERRNO_CODES","ERRNO_MESSAGES","setErrNo","inetPton4","inetNtop4","inetPton6","inetNtop6","readSockaddr","writeSockaddr","DNS","Protocols","Sockets","initRandomFill","randomFill","timers","warnOnce","UNWIND_CACHE","readEmAsmArgsArray","jstoi_q","getWasmTableEntry","handleException","runtimeKeepalivePush","callUserCallback","maybeExit","asyncLoad","alignMemory","mmapAlloc","freeTableIndexes","functionsInTableMap","setValue","getValue","PATH","PATH_FS","UTF8Decoder","UTF8ArrayToString","UTF8ToString","stringToUTF8Array","stringToUTF8","intArrayFromString","UTF16Decoder","JSEvents","specialHTMLTargets","currentFullscreenStrategy","restoreOldWindowedStyle","demangle","demangleAll","doReadv","doWritev","promiseMap","uncaughtExceptionCount","exceptionLast","exceptionCaught","Browser","wget","SYSCALLS","getSocketFromFD","getSocketAddress","preloadPlugins","FS_createPreloadedFile","FS_modeStringToFlags","FS_getMode","FS_stdin_getChar_buffer","FS_stdin_getChar","FS","MEMFS","TTY","PIPEFS","SOCKFS","tempFixedLengthArray","miniTempWebGLFloatBuffers","miniTempWebGLIntBuffers","GL","emscripten_webgl_power_preferences","AL","GLUT","EGL","GLEW","IDBStore","SDL","SDL_gfx","GLFW","allocateUTF8","allocateUTF8OnStack","PThread","terminateWorker","killThread","cleanupThread","registerTLSInit","cancelThread","spawnThread","exitOnMainThread","proxyToMainThread","emscripten_receive_on_main_thread_js_callArgs","invokeEntryPoint","checkMailbox"];unexportedSymbols.forEach(unexportedRuntimeSymbol);var calledRun;dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function stackCheckInit(){assert(!ENVIRONMENT_IS_PTHREAD);_emscripten_stack_init();writeStackCookie()}function run(){if(runDependencies>0){return}if(!ENVIRONMENT_IS_PTHREAD)stackCheckInit();if(ENVIRONMENT_IS_PTHREAD){initRuntime();startWorker(Module);return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();assert(!Module["_main"],'compiled without a main, but one is present. if you added it from JS, use Module["onRuntimeInitialized"]');postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}checkStackCookie()}function checkUnflushedContent(){var oldOut=out;var oldErr=err;var has=false;out=err=x=>{has=true};try{_fflush(0);["stdout","stderr"].forEach(function(name){var info=FS.analyzePath("/dev/"+name);if(!info)return;var stream=info.object;var rdev=stream.rdev;var tty=TTY.ttys[rdev];if(tty&&tty.output&&tty.output.length){has=true}})}catch(e){}out=oldOut;err=oldErr;if(has){warnOnce("stdio streams had content in them that was not flushed. you should set EXIT_RUNTIME to 1 (see the Emscripten FAQ), or make sure to emit a newline when you printf etc.")}}if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}run(); +var Module=typeof Module!="undefined"?Module:{};var moduleOverrides=Object.assign({},Module);var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};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";var ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER;if(Module["ENVIRONMENT"]){throw new Error("Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -sENVIRONMENT=web or -sENVIRONMENT=node)")}var ENVIRONMENT_IS_PTHREAD=Module["ENVIRONMENT_IS_PTHREAD"]||false;var _scriptDir=typeof document!="undefined"&&document.currentScript?document.currentScript.src:undefined;if(ENVIRONMENT_IS_WORKER){_scriptDir=self.location.href}else if(ENVIRONMENT_IS_NODE){_scriptDir=__filename}var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;if(ENVIRONMENT_IS_NODE){if(typeof process=="undefined"||!process.release||process.release.name!=="node")throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)");var nodeVersion=process.versions.node;var numericVersion=nodeVersion.split(".").slice(0,3);numericVersion=numericVersion[0]*1e4+numericVersion[1]*100+numericVersion[2].split("-")[0]*1;if(numericVersion<16e4){throw new Error("This emscripten-generated code requires node v16.0.0 (detected v"+nodeVersion+")")}var fs=require("fs");var nodePath=require("path");if(ENVIRONMENT_IS_WORKER){scriptDirectory=nodePath.dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}read_=(filename,binary)=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);return fs.readFileSync(filename,binary?undefined:"utf8")};readBinary=filename=>{var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}assert(ret.buffer);return ret};readAsync=(filename,onload,onerror,binary=true)=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);fs.readFile(filename,binary?undefined:"utf8",(err,data)=>{if(err)onerror(err);else onload(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};Module["inspect"]=()=>"[Emscripten Module object]";let nodeWorkerThreads;try{nodeWorkerThreads=require("worker_threads")}catch(e){console.error('The "worker_threads" module is not supported in this node.js build - perhaps a newer version is needed?');throw e}global.Worker=nodeWorkerThreads.Worker}else if(ENVIRONMENT_IS_SHELL){if(typeof process=="object"&&typeof require==="function"||typeof window=="object"||typeof importScripts=="function")throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)");if(typeof read!="undefined"){read_=read}readBinary=f=>{if(typeof readbuffer=="function"){return new Uint8Array(readbuffer(f))}let data=read(f,"binary");assert(typeof data=="object");return data};readAsync=(f,onload,onerror)=>{setTimeout(()=>onload(readBinary(f)))};if(typeof clearTimeout=="undefined"){globalThis.clearTimeout=id=>{}}if(typeof setTimeout=="undefined"){globalThis.setTimeout=f=>typeof f=="function"?f():abort()}if(typeof scriptArgs!="undefined"){arguments_=scriptArgs}else if(typeof arguments!="undefined"){arguments_=arguments}if(typeof quit=="function"){quit_=(status,toThrow)=>{setTimeout(()=>{if(!(toThrow instanceof ExitStatus)){let toLog=toThrow;if(toThrow&&typeof toThrow=="object"&&toThrow.stack){toLog=[toThrow,toThrow.stack]}err(`exiting due to exception: ${toLog}`)}quit(status)});throw toThrow}}if(typeof print!="undefined"){if(typeof console=="undefined")console={};console.log=print;console.warn=console.error=typeof printErr!="undefined"?printErr:print}}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.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}else{scriptDirectory=""}if(!(typeof window=="object"||typeof importScripts=="function"))throw new Error("not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)");if(!ENVIRONMENT_IS_NODE){read_=url=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};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,onload,onerror)=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=()=>{if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}setWindowTitle=title=>document.title=title}else{throw new Error("environment detection error")}if(ENVIRONMENT_IS_NODE){if(typeof performance=="undefined"){global.performance=require("perf_hooks").performance}}var defaultPrint=console.log.bind(console);var defaultPrintErr=console.error.bind(console);if(ENVIRONMENT_IS_NODE){defaultPrint=(...args)=>fs.writeSync(1,args.join(" ")+"\n");defaultPrintErr=(...args)=>fs.writeSync(2,args.join(" ")+"\n")}var out=Module["print"]||defaultPrint;var err=Module["printErr"]||defaultPrintErr;Object.assign(Module,moduleOverrides);moduleOverrides=null;checkIncomingModuleAPI();if(Module["arguments"])arguments_=Module["arguments"];legacyModuleProp("arguments","arguments_");if(Module["thisProgram"])thisProgram=Module["thisProgram"];legacyModuleProp("thisProgram","thisProgram");if(Module["quit"])quit_=Module["quit"];legacyModuleProp("quit","quit_");assert(typeof Module["memoryInitializerPrefixURL"]=="undefined","Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["pthreadMainPrefixURL"]=="undefined","Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["cdInitializerPrefixURL"]=="undefined","Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["filePackagePrefixURL"]=="undefined","Module.filePackagePrefixURL option was removed, use Module.locateFile instead");assert(typeof Module["read"]=="undefined","Module.read option was removed (modify read_ in JS)");assert(typeof Module["readAsync"]=="undefined","Module.readAsync option was removed (modify readAsync in JS)");assert(typeof Module["readBinary"]=="undefined","Module.readBinary option was removed (modify readBinary in JS)");assert(typeof Module["setWindowTitle"]=="undefined","Module.setWindowTitle option was removed (modify setWindowTitle in JS)");assert(typeof Module["TOTAL_MEMORY"]=="undefined","Module.TOTAL_MEMORY has been renamed Module.INITIAL_MEMORY");legacyModuleProp("asm","wasmExports");legacyModuleProp("read","read_");legacyModuleProp("readAsync","readAsync");legacyModuleProp("readBinary","readBinary");legacyModuleProp("setWindowTitle","setWindowTitle");assert(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER||ENVIRONMENT_IS_NODE,"Pthreads do not work in this environment yet (need Web Workers, or an alternative to them)");assert(!ENVIRONMENT_IS_SHELL,"shell environment detected but not enabled at build time. Add 'shell' to `-sENVIRONMENT` to enable.");var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];legacyModuleProp("wasmBinary","wasmBinary");var noExitRuntime=Module["noExitRuntime"]||true;legacyModuleProp("noExitRuntime","noExitRuntime");if(typeof WebAssembly!="object"){abort("no native wasm support detected")}var wasmMemory;var wasmExports;var wasmModule;var ABORT=false;var EXITSTATUS;function assert(condition,text){if(!condition){abort("Assertion failed"+(text?": "+text:""))}}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["HEAP32"]=HEAP32=new Int32Array(b);Module["HEAPU8"]=HEAPU8=new Uint8Array(b);Module["HEAPU16"]=HEAPU16=new Uint16Array(b);Module["HEAPU32"]=HEAPU32=new Uint32Array(b);Module["HEAPF32"]=HEAPF32=new Float32Array(b);Module["HEAPF64"]=HEAPF64=new Float64Array(b)}assert(!Module["STACK_SIZE"],"STACK_SIZE can no longer be set at runtime. Use -sSTACK_SIZE at link time");assert(typeof Int32Array!="undefined"&&typeof Float64Array!=="undefined"&&Int32Array.prototype.subarray!=undefined&&Int32Array.prototype.set!=undefined,"JS engine does not provide full typed array support");var INITIAL_MEMORY=Module["INITIAL_MEMORY"]||268435456;legacyModuleProp("INITIAL_MEMORY","INITIAL_MEMORY");assert(INITIAL_MEMORY>=134217728,"INITIAL_MEMORY should be larger than STACK_SIZE, was "+INITIAL_MEMORY+"! (STACK_SIZE="+134217728+")");if(ENVIRONMENT_IS_PTHREAD){wasmMemory=Module["wasmMemory"]}else{if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{wasmMemory=new WebAssembly.Memory({"initial":INITIAL_MEMORY/65536,"maximum":INITIAL_MEMORY/65536,"shared":true});if(!(wasmMemory.buffer instanceof SharedArrayBuffer)){err("requested a shared WebAssembly.Memory but the returned buffer is not a SharedArrayBuffer, indicating that while the browser has SharedArrayBuffer it does not have WebAssembly threads support - you may need to set a flag");if(ENVIRONMENT_IS_NODE){err("(on node you may need: --experimental-wasm-threads --experimental-wasm-bulk-memory and/or recent version)")}throw Error("bad memory")}}}updateMemoryViews();INITIAL_MEMORY=wasmMemory.buffer.byteLength;assert(INITIAL_MEMORY%65536===0);var wasmTable;function writeStackCookie(){var max=_emscripten_stack_get_end();assert((max&3)==0);if(max==0){max+=4}HEAPU32[max>>2]=34821223;HEAPU32[max+4>>2]=2310721022;HEAPU32[0>>2]=1668509029}function checkStackCookie(){if(ABORT)return;var max=_emscripten_stack_get_end();if(max==0){max+=4}var cookie1=HEAPU32[max>>2];var cookie2=HEAPU32[max+4>>2];if(cookie1!=34821223||cookie2!=2310721022){abort(`Stack overflow! Stack cookie has been overwritten at ${ptrToString(max)}, expected hex dwords 0x89BACDFE and 0x2135467, but received ${ptrToString(cookie2)} ${ptrToString(cookie1)}`)}if(HEAPU32[0>>2]!=1668509029){abort("Runtime error: The application has corrupted its heap memory area (address zero)!")}}(function(){var h16=new Int16Array(1);var h8=new Int8Array(h16.buffer);h16[0]=25459;if(h8[0]!==115||h8[1]!==99)throw"Runtime error: expected the system to be little-endian! (Run with -sSUPPORT_BIG_ENDIAN to bypass)"})();var __ATPRERUN__=[];var __ATINIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeKeepaliveCounter=0;function keepRuntimeAlive(){return noExitRuntime||runtimeKeepaliveCounter>0}function preRun(){assert(!ENVIRONMENT_IS_PTHREAD);if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){assert(!runtimeInitialized);runtimeInitialized=true;if(ENVIRONMENT_IS_PTHREAD)return;checkStackCookie();if(!Module["noFSInit"]&&!FS.init.initialized)FS.init();FS.ignorePermissions=false;TTY.init();SOCKFS.root=FS.mount(SOCKFS,{},null);callRuntimeCallbacks(__ATINIT__)}function postRun(){checkStackCookie();if(ENVIRONMENT_IS_PTHREAD)return;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)}assert(Math.imul,"This browser does not support Math.imul(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.fround,"This browser does not support Math.fround(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.clz32,"This browser does not support Math.clz32(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");assert(Math.trunc,"This browser does not support Math.trunc(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill");var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;var runDependencyTracking={};function getUniqueRunDependency(id){var orig=id;while(1){if(!runDependencyTracking[id])return id;id=orig+Math.random()}}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(!runDependencyTracking[id]);runDependencyTracking[id]=1;if(runDependencyWatcher===null&&typeof setInterval!="undefined"){runDependencyWatcher=setInterval(()=>{if(ABORT){clearInterval(runDependencyWatcher);runDependencyWatcher=null;return}var shown=false;for(var dep in runDependencyTracking){if(!shown){shown=true;err("still waiting on run dependencies:")}err("dependency: "+dep)}if(shown){err("(end of list)")}},1e4)}}else{err("warning: run dependency added without ID")}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(id){assert(runDependencyTracking[id]);delete runDependencyTracking[id]}else{err("warning: run dependency removed without ID")}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}what="Aborted("+what+")";err(what);ABORT=true;EXITSTATUS=1;var e=new WebAssembly.RuntimeError(what);throw e}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return filename.startsWith(dataURIPrefix)}function isFileURI(filename){return filename.startsWith("file://")}function createExportWrapper(name){return function(){assert(runtimeInitialized,`native function \`${name}\` called before runtime initialization`);var f=wasmExports[name];assert(f,`exported native function \`${name}\` not found`);return f.apply(null,arguments)}}var wasmBinaryFile;wasmBinaryFile="libnimbus_lc.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(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&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)){if(typeof fetch=="function"&&!isFileURI(binaryFile)){return fetch(binaryFile,{credentials:"same-origin"}).then(response=>{if(!response["ok"]){throw"failed to load wasm binary file at '"+binaryFile+"'"}return response["arrayBuffer"]()}).catch(()=>getBinarySync(binaryFile))}else if(readAsync){return new Promise((resolve,reject)=>{readAsync(binaryFile,response=>resolve(new Uint8Array(response)),reject)})}}return Promise.resolve().then(()=>getBinarySync(binaryFile))}function instantiateArrayBuffer(binaryFile,imports,receiver){return getBinaryPromise(binaryFile).then(binary=>WebAssembly.instantiate(binary,imports)).then(instance=>instance).then(receiver,reason=>{err("failed to asynchronously prepare wasm: "+reason);if(isFileURI(wasmBinaryFile)){err("warning: Loading from a file URI ("+wasmBinaryFile+") is not supported in most browsers. See https://emscripten.org/docs/getting_started/FAQ.html#how-do-i-run-a-local-webserver-for-testing-why-does-my-program-stall-in-downloading-or-preparing")}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 createWasm(){var info={"env":wasmImports,"wasi_snapshot_preview1":wasmImports};function receiveInstance(instance,module){var exports=instance.exports;wasmExports=exports;registerTLSInit(wasmExports["_emscripten_tls_init"]);wasmTable=wasmExports["__indirect_function_table"];assert(wasmTable,"table not found in wasm exports");addOnInit(wasmExports["__wasm_call_ctors"]);wasmModule=module;removeRunDependency("wasm-instantiate");return exports}addRunDependency("wasm-instantiate");var trueModule=Module;function receiveInstantiationResult(result){assert(Module===trueModule,"the Module object should not be replaced during async compilation - perhaps the order of HTML elements is wrong?");trueModule=null;receiveInstance(result["instance"],result["module"])}if(Module["instantiateWasm"]){try{return Module["instantiateWasm"](info,receiveInstance)}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync(wasmBinary,wasmBinaryFile,info,receiveInstantiationResult);return{}}var tempDouble;var tempI64;function legacyModuleProp(prop,newName,incomming=true){if(!Object.getOwnPropertyDescriptor(Module,prop)){Object.defineProperty(Module,prop,{configurable:true,get(){let extra=incomming?" (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)":"";abort(`\`Module.${prop}\` has been replaced by \`${newName}\``+extra)}})}}function ignoredModuleProp(prop){if(Object.getOwnPropertyDescriptor(Module,prop)){abort(`\`Module.${prop}\` was supplied but \`${prop}\` not included in INCOMING_MODULE_JS_API`)}}function isExportedByForceFilesystem(name){return name==="FS_createPath"||name==="FS_createDataFile"||name==="FS_createPreloadedFile"||name==="FS_unlink"||name==="addRunDependency"||name==="FS_createLazyFile"||name==="FS_createDevice"||name==="removeRunDependency"}function missingGlobal(sym,msg){if(typeof globalThis!=="undefined"){Object.defineProperty(globalThis,sym,{configurable:true,get(){warnOnce("`"+sym+"` is not longer defined by emscripten. "+msg);return undefined}})}}missingGlobal("buffer","Please use HEAP8.buffer or wasmMemory.buffer");function missingLibrarySymbol(sym){if(typeof globalThis!=="undefined"&&!Object.getOwnPropertyDescriptor(globalThis,sym)){Object.defineProperty(globalThis,sym,{configurable:true,get(){var msg="`"+sym+"` is a library symbol and not included by default; add it to your library.js __deps or to DEFAULT_LIBRARY_FUNCS_TO_INCLUDE on the command line";var librarySymbol=sym;if(!librarySymbol.startsWith("_")){librarySymbol="$"+sym}msg+=" (e.g. -sDEFAULT_LIBRARY_FUNCS_TO_INCLUDE='"+librarySymbol+"')";if(isExportedByForceFilesystem(sym)){msg+=". Alternatively, forcing filesystem support (-sFORCE_FILESYSTEM) can export this for you"}warnOnce(msg);return undefined}})}unexportedRuntimeSymbol(sym)}function unexportedRuntimeSymbol(sym){if(!Object.getOwnPropertyDescriptor(Module,sym)){Object.defineProperty(Module,sym,{configurable:true,get(){var msg="'"+sym+"' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the Emscripten FAQ)";if(isExportedByForceFilesystem(sym)){msg+=". Alternatively, forcing filesystem support (-sFORCE_FILESYSTEM) can export this for you"}abort(msg)}})}}function dbg(text){if(ENVIRONMENT_IS_NODE){fs.writeSync(2,Array.from(arguments).join(" ")+"\n")}else console.warn.apply(console,arguments)}function ExitStatus(status){this.name="ExitStatus";this.message=`Program terminated with exit(${status})`;this.status=status}var terminateWorker=function(worker){worker.terminate();worker.onmessage=e=>{var cmd=e["data"]["cmd"];err('received "'+cmd+'" command from terminated worker: '+worker.workerID)}};function killThread(pthread_ptr){assert(!ENVIRONMENT_IS_PTHREAD,"Internal Error! killThread() can only ever be called from main application thread!");assert(pthread_ptr,"Internal Error! Null pthread_ptr in killThread!");var worker=PThread.pthreads[pthread_ptr];delete PThread.pthreads[pthread_ptr];terminateWorker(worker);__emscripten_thread_free_data(pthread_ptr);PThread.runningWorkers.splice(PThread.runningWorkers.indexOf(worker),1);worker.pthread_ptr=0}function cancelThread(pthread_ptr){assert(!ENVIRONMENT_IS_PTHREAD,"Internal Error! cancelThread() can only ever be called from main application thread!");assert(pthread_ptr,"Internal Error! Null pthread_ptr in cancelThread!");var worker=PThread.pthreads[pthread_ptr];worker.postMessage({"cmd":"cancel"})}function cleanupThread(pthread_ptr){assert(!ENVIRONMENT_IS_PTHREAD,"Internal Error! cleanupThread() can only ever be called from main application thread!");assert(pthread_ptr,"Internal Error! Null pthread_ptr in cleanupThread!");var worker=PThread.pthreads[pthread_ptr];assert(worker);PThread.returnWorkerToPool(worker)}var zeroMemory=(address,size)=>{HEAPU8.fill(0,address,address+size);return address};function spawnThread(threadParams){assert(!ENVIRONMENT_IS_PTHREAD,"Internal Error! spawnThread() can only ever be called from main application thread!");assert(threadParams.pthread_ptr,"Internal error, no pthread ptr!");var worker=PThread.getNewWorker();if(!worker){return 6}assert(!worker.pthread_ptr,"Internal error!");PThread.runningWorkers.push(worker);PThread.pthreads[threadParams.pthread_ptr]=worker;worker.pthread_ptr=threadParams.pthread_ptr;var msg={"cmd":"run","start_routine":threadParams.startRoutine,"arg":threadParams.arg,"pthread_ptr":threadParams.pthread_ptr};if(ENVIRONMENT_IS_NODE){worker.unref()}worker.postMessage(msg,threadParams.transferList);return 0}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:function(){var paths=Array.prototype.slice.call(arguments);return PATH.normalize(paths.join("/"))},join2:(l,r)=>PATH.normalize(l+"/"+r)};var initRandomFill=()=>{if(typeof crypto=="object"&&typeof crypto["getRandomValues"]=="function"){return view=>(view.set(crypto.getRandomValues(new Uint8Array(view.byteLength))),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("no cryptographic support found for randomDevice. consider polyfilling it if you want to use something insecure like Math.random(), e.g. put this in a --pre-js: var crypto = { getRandomValues: (array) => { for (var i = 0; i < array.length; i++) array[i] = (Math.random()*256)|0 } };")};var randomFill=view=>(randomFill=initRandomFill())(view);var PATH_FS={resolve:function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=PATH.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.buffer instanceof SharedArrayBuffer?heapOrArray.slice(idx,endPtr):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)=>{assert(typeof str==="string");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;if(u>1114111)warnOnce("Invalid Unicode code point "+ptrToString(u)+" encountered when serializing a JS string to a UTF-8 string in wasm memory! (Valid unicode code points should be in range 0-0x10FFFF).");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,-1)}catch(e){if(e.toString().includes("EOF"))bytesRead=0;else throw e}if(bytesRead>0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}FS_stdin_getChar_buffer=intArrayFromString(result,true)}return FS_stdin_getChar_buffer.shift()};var TTY={ttys:[],init:function(){},shutdown:function(){},register:function(dev,ops){TTY.ttys[dev]={input:[],output:[],ops:ops};FS.registerDevice(dev,TTY.stream_ops)},stream_ops:{open:function(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(43)}stream.tty=tty;stream.seekable=false},close:function(stream){stream.tty.ops.fsync(stream.tty)},fsync:function(stream){stream.tty.ops.fsync(stream.tty)},read:function(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:function(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:function(tty,optional_actions,data){return 0},ioctl_tiocgwinsz:function(tty){return[24,80]}},default_tty1_ops:{put_char:function(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},fsync:function(tty){if(tty.output&&tty.output.length>0){err(UTF8ArrayToString(tty.output,0));tty.output=[]}}}};var alignMemory=(size,alignment)=>{assert(alignment,"alignment argument is required");return Math.ceil(size/alignment)*alignment};var mmapAlloc=size=>{size=alignMemory(size,65536);var ptr=_emscripten_builtin_memalign(65536,size);if(!ptr)return 0;return zeroMemory(ptr,size)};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)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node;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;old_node.parent=new_dir},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 in node.contents){if(!node.contents.hasOwnProperty(key)){continue}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);assert(size>=0);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,arrayBuffer=>{assert(arrayBuffer,`Loading data file "${url}" failed (no arrayBuffer).`);onload(new Uint8Array(arrayBuffer));if(dep)removeRunDependency(dep)},event=>{if(onerror){onerror()}else{throw`Loading data file "${url}" failed.`}});if(dep)addRunDependency(dep)};var preloadPlugins=Module["preloadPlugins"]||[];function FS_handledByPreloadPlugin(byteArray,fullname,finish,onerror){if(typeof Browser!="undefined")Browser.init();var handled=false;preloadPlugins.forEach(function(plugin){if(handled)return;if(plugin["canHandle"](fullname)){plugin["handle"](byteArray,fullname,finish,onerror);handled=true}});return handled}function 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){if(preFinish)preFinish();if(!dontCreateFile){FS.createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}if(onload)onload();removeRunDependency(dep)}if(FS_handledByPreloadPlugin(byteArray,fullname,finish,()=>{if(onerror)onerror();removeRunDependency(dep)})){return}finish(byteArray)}addRunDependency(dep);if(typeof url=="string"){asyncLoad(url,byteArray=>processData(byteArray),onerror)}else{processData(url)}}function 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}function FS_getMode(canRead,canWrite){var mode=0;if(canRead)mode|=292|73;if(canWrite)mode|=146;return mode}var ERRNO_MESSAGES={0:"Success",1:"Arg list too long",2:"Permission denied",3:"Address already in use",4:"Address not available",5:"Address family not supported by protocol family",6:"No more processes",7:"Socket already connected",8:"Bad file number",9:"Trying to read unreadable message",10:"Mount device busy",11:"Operation canceled",12:"No children",13:"Connection aborted",14:"Connection refused",15:"Connection reset by peer",16:"File locking deadlock error",17:"Destination address required",18:"Math arg out of domain of func",19:"Quota exceeded",20:"File exists",21:"Bad address",22:"File too large",23:"Host is unreachable",24:"Identifier removed",25:"Illegal byte sequence",26:"Connection already in progress",27:"Interrupted system call",28:"Invalid argument",29:"I/O error",30:"Socket is already connected",31:"Is a directory",32:"Too many symbolic links",33:"Too many open files",34:"Too many links",35:"Message too long",36:"Multihop attempted",37:"File or path name too long",38:"Network interface is not configured",39:"Connection reset by network",40:"Network is unreachable",41:"Too many open files in system",42:"No buffer space available",43:"No such device",44:"No such file or directory",45:"Exec format error",46:"No record locks available",47:"The link has been severed",48:"Not enough core",49:"No message of desired type",50:"Protocol not available",51:"No space left on device",52:"Function not implemented",53:"Socket is not connected",54:"Not a directory",55:"Directory not empty",56:"State not recoverable",57:"Socket operation on non-socket",59:"Not a typewriter",60:"No such device or address",61:"Value too large for defined data type",62:"Previous owner died",63:"Not super-user",64:"Broken pipe",65:"Protocol error",66:"Unknown protocol",67:"Protocol wrong type for socket",68:"Math result not representable",69:"Read only file system",70:"Illegal seek",71:"No such process",72:"Stale file handle",73:"Connection timed out",74:"Text file busy",75:"Cross-device link",100:"Device not a stream",101:"Bad font file fmt",102:"Invalid slot",103:"Invalid request code",104:"No anode",105:"Block device required",106:"Channel number out of range",107:"Level 3 halted",108:"Level 3 reset",109:"Link number out of range",110:"Protocol driver not attached",111:"No CSI structure available",112:"Level 2 halted",113:"Invalid exchange",114:"Invalid request descriptor",115:"Exchange full",116:"No data (for no delay io)",117:"Timer expired",118:"Out of streams resources",119:"Machine is not on the network",120:"Package not installed",121:"The object is remote",122:"Advertise error",123:"Srmount error",124:"Communication error on send",125:"Cross mount point (not really error)",126:"Given log. name not unique",127:"f.d. invalid for this operation",128:"Remote address changed",129:"Can access a needed shared lib",130:"Accessing a corrupted shared lib",131:".lib section in a.out corrupted",132:"Attempting to link in too many libs",133:"Attempting to exec a shared library",135:"Streams pipe error",136:"Too many users",137:"Socket type not supported",138:"Not supported",139:"Protocol family not supported",140:"Can't send after socket shutdown",141:"Too many references",142:"Host is down",148:"No medium (in tape drive)",156:"Level 2 not synchronized"};var ERRNO_CODES={};function demangle(func){warnOnce("warning: build with -sDEMANGLE_SUPPORT to link in libcxxabi demangling");return func}function demangleAll(text){var regex=/\b_Z[\w\d_]+/g;return text.replace(regex,function(x){var y=demangle(x);return x===y?x:y+" ["+x+"]"})}var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,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,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)},createNode:(parent,name,mode,rdev)=>{assert(typeof parent=="object");var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node},destroyNode:node=>{FS.hashRemoveNode(node)},isRoot:node=>node===node.parent,isMountpoint:node=>!!node.mounted,isFile:mode=>(mode&61440)===32768,isDir:mode=>(mode&61440)===16384,isLink:mode=>(mode&61440)===40960,isChrdev:mode=>(mode&61440)===8192,isBlkdev:mode=>(mode&61440)===24576,isFIFO:mode=>(mode&61440)===4096,isSocket:mode=>(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=>{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)=>{if(!FS.FSStream){FS.FSStream=function(){this.shared={}};FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get(){return this.node},set(val){this.node=val}},isRead:{get(){return(this.flags&2097155)!==1}},isWrite:{get(){return(this.flags&2097155)!==0}},isAppend:{get(){return this.flags&1024}},flags:{get(){return this.shared.flags},set(val){this.shared.flags=val}},position:{get(){return this.shared.position},set(val){this.shared.position=val}}})}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},chrdev_stream_ops:{open:stream=>{var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}},llseek:()=>{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.apply(check,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){assert(FS.syncFSRequests>0);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)=>{if(typeof type=="string"){throw type}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);assert(idx!==-1);node.mount.mounts.splice(idx,1)},lookup:(parent,name)=>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;i{if(typeof dev=="undefined"){dev=mode;mode=438}mode|=8192;return FS.mknod(path,mode,dev)},symlink:(oldpath,newpath)=>{if(!PATH_FS.resolve(oldpath)){throw new FS.ErrnoError(44)}var lookup=FS.lookupPath(newpath,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(44)}var newname=PATH.basename(newpath);var errCode=FS.mayCreate(parent,newname);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.symlink){throw new FS.ErrnoError(63)}return parent.node_ops.symlink(parent,newname,oldpath)},rename:(old_path,new_path)=>{var old_dirname=PATH.dirname(old_path);var new_dirname=PATH.dirname(new_path);var old_name=PATH.basename(old_path);var new_name=PATH.basename(new_path);var lookup,old_dir,new_dir;lookup=FS.lookupPath(old_path,{parent:true});old_dir=lookup.node;lookup=FS.lookupPath(new_path,{parent:true});new_dir=lookup.node;if(!old_dir||!new_dir)throw new FS.ErrnoError(44);if(old_dir.mount!==new_dir.mount){throw new FS.ErrnoError(75)}var old_node=FS.lookupNode(old_dir,old_name);var relative=PATH_FS.relative(old_path,new_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(28)}relative=PATH_FS.relative(new_path,old_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(55)}var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(old_node===new_node){return}var isdir=FS.isDir(old_node.mode);var errCode=FS.mayDelete(old_dir,old_name,isdir);if(errCode){throw new FS.ErrnoError(errCode)}errCode=new_node?FS.mayDelete(new_dir,new_name,isdir):FS.mayCreate(new_dir,new_name);if(errCode){throw new FS.ErrnoError(errCode)}if(!old_dir.node_ops.rename){throw new FS.ErrnoError(63)}if(FS.isMountpoint(old_node)||new_node&&FS.isMountpoint(new_node)){throw new FS.ErrnoError(10)}if(new_dir!==old_dir){errCode=FS.nodePermissions(old_dir,"w");if(errCode){throw new FS.ErrnoError(errCode)}}FS.hashRemoveNode(old_node);try{old_dir.node_ops.rename(old_node,new_dir,new_name)}catch(e){throw e}finally{FS.hashAddNode(old_node)}},rmdir:path=>{var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var errCode=FS.mayDelete(parent,name,true);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.rmdir){throw new FS.ErrnoError(63)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}parent.node_ops.rmdir(parent,name);FS.destroyNode(node)},readdir:path=>{var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;if(!node.node_ops.readdir){throw new FS.ErrnoError(54)}return node.node_ops.readdir(node)},unlink:path=>{var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(44)}var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var errCode=FS.mayDelete(parent,name,false);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.unlink){throw new FS.ErrnoError(63)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}parent.node_ops.unlink(parent,name);FS.destroyNode(node)},readlink:path=>{var lookup=FS.lookupPath(path);var link=lookup.node;if(!link){throw new FS.ErrnoError(44)}if(!link.node_ops.readlink){throw new FS.ErrnoError(28)}return PATH_FS.resolve(FS.getPath(link.parent),link.node_ops.readlink(link))},stat:(path,dontFollow)=>{var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;if(!node){throw new FS.ErrnoError(44)}if(!node.node_ops.getattr){throw new FS.ErrnoError(63)}return node.node_ops.getattr(node)},lstat:path=>FS.stat(path,true),chmod:(path,mode,dontFollow)=>{var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(63)}node.node_ops.setattr(node,{mode:mode&4095|node.mode&~4095,timestamp:Date.now()})},lchmod:(path,mode)=>{FS.chmod(path,mode,true)},fchmod:(fd,mode)=>{var stream=FS.getStreamChecked(fd);FS.chmod(stream.node,mode)},chown:(path,uid,gid,dontFollow)=>{var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(63)}node.node_ops.setattr(node,{timestamp:Date.now()})},lchown:(path,uid,gid)=>{FS.chown(path,uid,gid,true)},fchown:(fd,uid,gid)=>{var stream=FS.getStreamChecked(fd);FS.chown(stream.node,uid,gid)},truncate:(path,len)=>{if(len<0){throw new FS.ErrnoError(28)}var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:true});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(63)}if(FS.isDir(node.mode)){throw new FS.ErrnoError(31)}if(!FS.isFile(node.mode)){throw new FS.ErrnoError(28)}var errCode=FS.nodePermissions(node,"w");if(errCode){throw new FS.ErrnoError(errCode)}node.node_ops.setattr(node,{size:len,timestamp:Date.now()})},ftruncate:(fd,len)=>{var stream=FS.getStreamChecked(fd);if((stream.flags&2097155)===0){throw new FS.ErrnoError(28)}FS.truncate(stream.node,len)},utime:(path,atime,mtime)=>{var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;node.node_ops.setattr(node,{timestamp:Math.max(atime,mtime)})},open:(path,flags,mode)=>{if(path===""){throw new FS.ErrnoError(44)}flags=typeof flags=="string"?FS_modeStringToFlags(flags):flags;mode=typeof mode=="undefined"?438:mode;if(flags&64){mode=mode&4095|32768}else{mode=0}var node;if(typeof path=="object"){node=path}else{path=PATH.normalize(path);try{var lookup=FS.lookupPath(path,{follow:!(flags&131072)});node=lookup.node}catch(e){}}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(20)}}else{node=FS.mknod(path,mode,0);created=true}}if(!node){throw new FS.ErrnoError(44)}if(FS.isChrdev(node.mode)){flags&=~512}if(flags&65536&&!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}if(!created){var errCode=FS.mayOpen(node,flags);if(errCode){throw new FS.ErrnoError(errCode)}}if(flags&512&&!created){FS.truncate(node,0)}flags&=~(128|512|131072);var stream=FS.createStream({node:node,path:FS.getPath(node),flags:flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false});if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(Module["logReadFiles"]&&!(flags&1)){if(!FS.readFiles)FS.readFiles={};if(!(path in FS.readFiles)){FS.readFiles[path]=1}}return stream},close:stream=>{if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if(stream.getdents)stream.getdents=null;try{if(stream.stream_ops.close){stream.stream_ops.close(stream)}}catch(e){throw e}finally{FS.closeStream(stream.fd)}stream.fd=null},isClosed:stream=>stream.fd===null,llseek:(stream,offset,whence)=>{if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if(!stream.seekable||!stream.stream_ops.llseek){throw new FS.ErrnoError(70)}if(whence!=0&&whence!=1&&whence!=2){throw new FS.ErrnoError(28)}stream.position=stream.stream_ops.llseek(stream,offset,whence);stream.ungotten=[];return stream.position},read:(stream,buffer,offset,length,position)=>{assert(offset>=0);if(length<0||position<0){throw new FS.ErrnoError(28)}if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(8)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(31)}if(!stream.stream_ops.read){throw new FS.ErrnoError(28)}var seeking=typeof position!="undefined";if(!seeking){position=stream.position}else if(!stream.seekable){throw new FS.ErrnoError(70)}var bytesRead=stream.stream_ops.read(stream,buffer,offset,length,position);if(!seeking)stream.position+=bytesRead;return bytesRead},write:(stream,buffer,offset,length,position,canOwn)=>{assert(offset>=0);if(length<0||position<0){throw new FS.ErrnoError(28)}if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(8)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(31)}if(!stream.stream_ops.write){throw new FS.ErrnoError(28)}if(stream.seekable&&stream.flags&1024){FS.llseek(stream,0,2)}var seeking=typeof position!="undefined";if(!seeking){position=stream.position}else if(!stream.seekable){throw new FS.ErrnoError(70)}var bytesWritten=stream.stream_ops.write(stream,buffer,offset,length,position,canOwn);if(!seeking)stream.position+=bytesWritten;return bytesWritten},allocate:(stream,offset,length)=>{if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if(offset<0||length<=0){throw new FS.ErrnoError(28)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(8)}if(!FS.isFile(stream.node.mode)&&!FS.isDir(stream.node.mode)){throw new FS.ErrnoError(43)}if(!stream.stream_ops.allocate){throw new FS.ErrnoError(138)}stream.stream_ops.allocate(stream,offset,length)},mmap:(stream,length,position,prot,flags)=>{if((prot&2)!==0&&(flags&2)===0&&(stream.flags&2097155)!==2){throw new FS.ErrnoError(2)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(2)}if(!stream.stream_ops.mmap){throw new FS.ErrnoError(43)}return stream.stream_ops.mmap(stream,length,position,prot,flags)},msync:(stream,buffer,offset,length,mmapFlags)=>{assert(offset>=0);if(!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)},munmap:stream=>0,ioctl:(stream,cmd,arg)=>{if(!stream.stream_ops.ioctl){throw new FS.ErrnoError(59)}return stream.stream_ops.ioctl(stream,cmd,arg)},readFile:(path,opts={})=>{opts.flags=opts.flags||0;opts.encoding=opts.encoding||"binary";if(opts.encoding!=="utf8"&&opts.encoding!=="binary"){throw new Error(`Invalid encoding type "${opts.encoding}"`)}var ret;var stream=FS.open(path,opts.flags);var stat=FS.stat(path);var length=stat.size;var buf=new Uint8Array(length);FS.read(stream,buf,0,length,0);if(opts.encoding==="utf8"){ret=UTF8ArrayToString(buf,0)}else if(opts.encoding==="binary"){ret=buf}FS.close(stream);return ret},writeFile:(path,data,opts={})=>{opts.flags=opts.flags||577;var stream=FS.open(path,opts.flags,opts.mode);if(typeof data=="string"){var buf=new Uint8Array(lengthBytesUTF8(data)+1);var actualNumBytes=stringToUTF8Array(data,buf,0,buf.length);FS.write(stream,buf,0,actualNumBytes,undefined,opts.canOwn)}else if(ArrayBuffer.isView(data)){FS.write(stream,data,0,data.byteLength,undefined,opts.canOwn)}else{throw new Error("Unsupported data type")}FS.close(stream)},cwd:()=>FS.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);assert(stdin.fd===0,`invalid handle for stdin (${stdin.fd})`);assert(stdout.fd===1,`invalid handle for stdout (${stdout.fd})`);assert(stderr.fd===2,`invalid handle for stderr (${stderr.fd})`)},ensureErrnoError:()=>{if(FS.ErrnoError)return;FS.ErrnoError=function ErrnoError(errno,node){this.name="ErrnoError";this.node=node;this.setErrno=function(errno){this.errno=errno;for(var key in ERRNO_CODES){if(ERRNO_CODES[key]===errno){this.code=key;break}}};this.setErrno(errno);this.message=ERRNO_MESSAGES[errno];if(this.stack){Object.defineProperty(this,"stack",{value:(new Error).stack,writable:true});this.stack=demangleAll(this.stack)}};FS.ErrnoError.prototype=new Error;FS.ErrnoError.prototype.constructor=FS.ErrnoError;[44].forEach(code=>{FS.genericErrors[code]=new FS.ErrnoError(code);FS.genericErrors[code].stack=""})},staticInit:()=>{FS.ensureErrnoError();FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={"MEMFS":MEMFS}},init:(input,output,error)=>{assert(!FS.init.initialized,"FS.init was previously called. If you want to initialize later with custom parameters, remove any earlier calls (note that one is automatically added to the generated code)");FS.init.initialized=true;FS.ensureErrnoError();Module["stdin"]=input||Module["stdin"];Module["stdout"]=output||Module["stdout"];Module["stderr"]=error||Module["stderr"];FS.createStandardStreams()},quit:()=>{FS.init.initialized=false;_fflush(0);for(var i=0;i{var ret=FS.analyzePath(path,dontResolveLastLink);if(!ret.exists){return null}return ret.object},analyzePath:(path,dontResolveLastLink)=>{try{var lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});path=lookup.path}catch(e){}var ret={isRoot:false,exists:false,error:0,name:null,path:null,object:null,parentExists:false,parentPath:null,parentObject:null};try{var lookup=FS.lookupPath(path,{parent:true});ret.parentExists=true;ret.parentPath=lookup.path;ret.parentObject=lookup.node;ret.name=PATH.basename(path);lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});ret.exists=true;ret.path=lookup.path;ret.object=lookup.node;ret.name=lookup.node.name;ret.isRoot=lookup.path==="/"}catch(e){ret.error=e.errno}return ret},createPath:(parent,path,canRead,canWrite)=>{parent=typeof parent=="string"?parent:FS.getPath(parent);var parts=path.split("/").reverse();while(parts.length){var part=parts.pop();if(!part)continue;var current=PATH.join2(parent,part);try{FS.mkdir(current)}catch(e){}parent=current}return current},createFile:(parent,name,properties,canRead,canWrite)=>{var path=PATH.join2(typeof parent=="string"?parent:FS.getPath(parent),name);var mode=FS_getMode(canRead,canWrite);return FS.create(path,mode)},createDataFile:(parent,name,data,canRead,canWrite,canOwn)=>{var path=name;if(parent){parent=typeof parent=="string"?parent:FS.getPath(parent);path=name?PATH.join2(parent,name):parent}var mode=FS_getMode(canRead,canWrite);var node=FS.create(path,mode);if(data){if(typeof data=="string"){var arr=new Array(data.length);for(var i=0,len=data.length;i{var path=PATH.join2(typeof parent=="string"?parent:FS.getPath(parent),name);var mode=FS_getMode(!!input,!!output);if(!FS.createDevice.major)FS.createDevice.major=64;var dev=FS.makedev(FS.createDevice.major++,0);FS.registerDevice(dev,{open:stream=>{stream.seekable=false},close:stream=>{if(output&&output.buffer&&output.buffer.length){output(10)}},read:(stream,buffer,offset,length,pos)=>{var bytesRead=0;for(var i=0;i{for(var i=0;i{if(obj.isDevice||obj.isFolder||obj.link||obj.contents)return true;if(typeof XMLHttpRequest!="undefined"){throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.")}else if(read_){try{obj.contents=intArrayFromString(read_(obj.url),true);obj.usedBytes=obj.contents.length}catch(e){throw new FS.ErrnoError(29)}}else{throw new Error("Cannot load without read() or XMLHttpRequest.")}},createLazyFile:(parent,name,url,canRead,canWrite)=>{function LazyUint8Array(){this.lengthKnown=false;this.chunks=[]}LazyUint8Array.prototype.get=function LazyUint8Array_get(idx){if(idx>this.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(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};if(typeof XMLHttpRequest!="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._length}},chunkSize:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize}}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:function(){return this.contents.length}}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach(key=>{var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){FS.forceLoadFile(node);return fn.apply(null,arguments)}});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);assert(size>=0);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},absolutePath:()=>{abort("FS.absolutePath has been removed; use PATH_FS.resolve instead")},createFolder:()=>{abort("FS.createFolder has been removed; use FS.mkdir instead")},createLink:()=>{abort("FS.createLink has been removed; use FS.symlink instead")},joinPath:()=>{abort("FS.joinPath has been removed; use PATH.join instead")},mmapAlloc:()=>{abort("FS.mmapAlloc has been replaced by the top level function mmapAlloc")},standardizePath:()=>{abort("FS.standardizePath has been removed; use PATH.normalize instead")}};var UTF8ToString=(ptr,maxBytesToRead)=>{assert(typeof ptr=="number");return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""};var SYSCALLS={DEFAULT_POLLMASK:5,calculateAt:function(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:function(func,path,buf){try{var stat=func(path)}catch(e){if(e&&e.node&&PATH.normalize(path)!==PATH.normalize(FS.getPath(e.node))){return-54}throw e}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:function(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)},varargs:undefined,get(){assert(SYSCALLS.varargs!=undefined);SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret},getStr(ptr){var ret=UTF8ToString(ptr);return ret},getStreamFromFD:function(fd){var stream=FS.getStreamChecked(fd);return stream}};function _proc_exit(code){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(1,1,code);EXITSTATUS=code;if(!keepRuntimeAlive()){PThread.terminateAllThreads();if(Module["onExit"])Module["onExit"](code);ABORT=true}quit_(code,new ExitStatus(code))}var exitJS=(status,implicit)=>{EXITSTATUS=status;checkUnflushedContent();if(ENVIRONMENT_IS_PTHREAD){assert(!implicit);exitOnMainThread(status);throw"unwind"}if(keepRuntimeAlive()&&!implicit){var msg=`program exited (with status: ${status}), but keepRuntimeAlive() is set (counter=${runtimeKeepaliveCounter}) due to an async operation, so halting execution but not exiting the runtime or preventing further async execution (you can use emscripten_force_exit, if you want to force a true shutdown)`;err(msg)}_proc_exit(status)};var _exit=exitJS;var ptrToString=ptr=>{assert(typeof ptr==="number");ptr>>>=0;return"0x"+ptr.toString(16).padStart(8,"0")};var handleException=e=>{if(e instanceof ExitStatus||e=="unwind"){return EXITSTATUS}checkStackCookie();if(e instanceof WebAssembly.RuntimeError){if(_emscripten_stack_get_current()<=0){err("Stack overflow detected. You can try increasing -sSTACK_SIZE (currently set to 134217728)")}}quit_(1,e)};var PThread={unusedWorkers:[],runningWorkers:[],tlsInitFunctions:[],pthreads:{},nextWorkerID:1,debugInit:function(){function pthreadLogPrefix(){var t=0;if(runtimeInitialized&&typeof _pthread_self!="undefined"){t=_pthread_self()}return"w:"+(Module["workerID"]||0)+",t:"+ptrToString(t)+": "}var origDbg=dbg;dbg=message=>origDbg(pthreadLogPrefix()+message)},init:function(){PThread.debugInit();if(ENVIRONMENT_IS_PTHREAD){PThread.initWorker()}else{PThread.initMainThread()}},initMainThread:function(){addOnPreRun(()=>{addRunDependency("loading-workers");PThread.loadWasmModuleToAllWorkers(()=>removeRunDependency("loading-workers"))})},initWorker:function(){noExitRuntime=false},setExitStatus:function(status){EXITSTATUS=status},terminateAllThreads__deps:["$terminateWorker"],terminateAllThreads:function(){assert(!ENVIRONMENT_IS_PTHREAD,"Internal Error! terminateAllThreads() can only ever be called from main application thread!");for(var worker of PThread.runningWorkers){terminateWorker(worker)}for(var worker of PThread.unusedWorkers){terminateWorker(worker)}PThread.unusedWorkers=[];PThread.runningWorkers=[];PThread.pthreads=[]},returnWorkerToPool:function(worker){var pthread_ptr=worker.pthread_ptr;delete PThread.pthreads[pthread_ptr];PThread.unusedWorkers.push(worker);PThread.runningWorkers.splice(PThread.runningWorkers.indexOf(worker),1);worker.pthread_ptr=0;__emscripten_thread_free_data(pthread_ptr)},receiveObjectTransfer:function(data){},threadInitTLS:function(){PThread.tlsInitFunctions.forEach(f=>f())},loadWasmModuleToWorker:worker=>new Promise(onFinishedLoading=>{worker.onmessage=e=>{var d=e["data"];var cmd=d["cmd"];if(d["targetThread"]&&d["targetThread"]!=_pthread_self()){var targetWorker=PThread.pthreads[d.targetThread];if(targetWorker){targetWorker.postMessage(d,d["transferList"])}else{err('Internal error! Worker sent a message "'+cmd+'" to target pthread '+d["targetThread"]+", but that thread no longer exists!")}return}if(cmd==="checkMailbox"){checkMailbox()}else if(cmd==="spawnThread"){spawnThread(d)}else if(cmd==="cleanupThread"){cleanupThread(d["thread"])}else if(cmd==="killThread"){killThread(d["thread"])}else if(cmd==="cancelThread"){cancelThread(d["thread"])}else if(cmd==="loaded"){worker.loaded=true;onFinishedLoading(worker)}else if(cmd==="alert"){alert("Thread "+d["threadId"]+": "+d["text"])}else if(d.target==="setimmediate"){worker.postMessage(d)}else if(cmd==="callHandler"){Module[d["handler"]](...d["args"])}else if(cmd){err("worker sent an unknown command "+cmd)}};worker.onerror=e=>{var message="worker sent an error!";if(worker.pthread_ptr){message="Pthread "+ptrToString(worker.pthread_ptr)+" sent an error!"}err(message+" "+e.filename+":"+e.lineno+": "+e.message);throw e};if(ENVIRONMENT_IS_NODE){worker.on("message",function(data){worker.onmessage({data:data})});worker.on("error",function(e){worker.onerror(e)})}assert(wasmMemory instanceof WebAssembly.Memory,"WebAssembly memory should have been loaded by now!");assert(wasmModule instanceof WebAssembly.Module,"WebAssembly Module should have been loaded by now!");var handlers=[];var knownHandlers=["onExit","onAbort","print","printErr"];for(var handler of knownHandlers){if(Module.hasOwnProperty(handler)){handlers.push(handler)}}worker.workerID=PThread.nextWorkerID++;worker.postMessage({"cmd":"load","handlers":handlers,"urlOrBlob":Module["mainScriptUrlOrBlob"]||_scriptDir,"wasmMemory":wasmMemory,"wasmModule":wasmModule,"workerID":worker.workerID})}),loadWasmModuleToAllWorkers:function(onMaybeReady){onMaybeReady()},allocateUnusedWorker:function(){var worker;var pthreadMainJs=locateFile("libnimbus_lc.worker.js");worker=new Worker(pthreadMainJs);PThread.unusedWorkers.push(worker)},getNewWorker:function(){if(PThread.unusedWorkers.length==0){PThread.allocateUnusedWorker();PThread.loadWasmModuleToWorker(PThread.unusedWorkers[0])}return PThread.unusedWorkers.pop()}};Module["PThread"]=PThread;var callRuntimeCallbacks=callbacks=>{while(callbacks.length>0){callbacks.shift()(Module)}};function establishStackSpace(){var pthread_ptr=_pthread_self();var stackHigh=HEAP32[pthread_ptr+52>>2];var stackSize=HEAP32[pthread_ptr+56>>2];var stackLow=stackHigh-stackSize;assert(stackHigh!=0);assert(stackLow!=0);assert(stackHigh>stackLow,"stackHigh must be higher then stackLow");_emscripten_stack_set_limits(stackHigh,stackLow);stackRestore(stackHigh);writeStackCookie()}Module["establishStackSpace"]=establishStackSpace;function exitOnMainThread(returnCode){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(2,0,returnCode);_exit(returnCode)}var getWasmTableEntry=funcPtr=>wasmTable.get(funcPtr);function invokeEntryPoint(ptr,arg){var result=getWasmTableEntry(ptr)(arg);checkStackCookie();function finish(result){if(keepRuntimeAlive()){PThread.setExitStatus(result)}else{__emscripten_thread_exit(result)}}finish(result)}Module["invokeEntryPoint"]=invokeEntryPoint;function registerTLSInit(tlsInitFunc){PThread.tlsInitFunctions.push(tlsInitFunc)}var warnOnce=text=>{if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;if(ENVIRONMENT_IS_NODE)text="warning: "+text;err(text)}};var ___assert_fail=(condition,filename,line,func)=>{abort(`Assertion failed: ${UTF8ToString(condition)}, at: `+[filename?UTF8ToString(filename):"unknown filename",line,func?UTF8ToString(func):"unknown function"])};var ___call_sighandler=(fp,sig)=>getWasmTableEntry(fp)(sig);function ___emscripten_init_main_thread_js(tb){__emscripten_thread_init(tb,!ENVIRONMENT_IS_WORKER,1,!ENVIRONMENT_IS_WEB,134217728,false);PThread.threadInitTLS()}function ___emscripten_thread_cleanup(thread){if(!ENVIRONMENT_IS_PTHREAD)cleanupThread(thread);else postMessage({"cmd":"cleanupThread","thread":thread})}function pthreadCreateProxied(pthread_ptr,attr,startRoutine,arg){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(3,1,pthread_ptr,attr,startRoutine,arg);return ___pthread_create_js(pthread_ptr,attr,startRoutine,arg)}function ___pthread_create_js(pthread_ptr,attr,startRoutine,arg){if(typeof SharedArrayBuffer=="undefined"){err("Current environment does not support SharedArrayBuffer, pthreads are not available!");return 6}var transferList=[];var error=0;if(ENVIRONMENT_IS_PTHREAD&&(transferList.length===0||error)){return pthreadCreateProxied(pthread_ptr,attr,startRoutine,arg)}if(error)return error;var threadParams={startRoutine:startRoutine,pthread_ptr:pthread_ptr,arg:arg,transferList:transferList};if(ENVIRONMENT_IS_PTHREAD){threadParams.cmd="spawnThread";postMessage(threadParams,transferList);return 0}return spawnThread(threadParams)}var SOCKFS={mount(mount){Module["websocket"]=Module["websocket"]&&"object"===typeof Module["websocket"]?Module["websocket"]:{};Module["websocket"]._callbacks={};Module["websocket"]["on"]=function(event,callback){if("function"===typeof callback){this._callbacks[event]=callback}return this};Module["websocket"].emit=function(event,param){if("function"===typeof this._callbacks[event]){this._callbacks[event].call(this,param)}};return FS.createNode(null,"/",16384|511,0)},createSocket(family,type,protocol){type&=~526336;var streaming=type==1;if(streaming&&protocol&&protocol!=6){throw new FS.ErrnoError(66)}var sock={family:family,type:type,protocol:protocol,server:null,error:null,peers:{},pending:[],recv_queue:[],sock_ops:SOCKFS.websocket_sock_ops};var name=SOCKFS.nextname();var node=FS.createNode(SOCKFS.root,name,49152,0);node.sock=sock;var stream=FS.createStream({path:name,node:node,flags:2,seekable:false,stream_ops:SOCKFS.stream_ops});sock.stream=stream;return sock},getSocket(fd){var stream=FS.getStream(fd);if(!stream||!FS.isSocket(stream.node.mode)){return null}return stream.node.sock},stream_ops:{poll(stream){var sock=stream.node.sock;return sock.sock_ops.poll(sock)},ioctl(stream,request,varargs){var sock=stream.node.sock;return sock.sock_ops.ioctl(sock,request,varargs)},read(stream,buffer,offset,length,position){var sock=stream.node.sock;var msg=sock.sock_ops.recvmsg(sock,length);if(!msg){return 0}buffer.set(msg.buffer,offset);return msg.buffer.length},write(stream,buffer,offset,length,position){var sock=stream.node.sock;return sock.sock_ops.sendmsg(sock,buffer,offset,length)},close(stream){var sock=stream.node.sock;sock.sock_ops.close(sock)}},nextname(){if(!SOCKFS.nextname.current){SOCKFS.nextname.current=0}return"socket["+SOCKFS.nextname.current+++"]"},websocket_sock_ops:{createPeer(sock,addr,port){var ws;if(typeof addr=="object"){ws=addr;addr=null;port=null}if(ws){if(ws._socket){addr=ws._socket.remoteAddress;port=ws._socket.remotePort}else{var result=/ws[s]?:\/\/([^:]+):(\d+)/.exec(ws.url);if(!result){throw new Error("WebSocket URL must be in the format ws(s)://address:port")}addr=result[1];port=parseInt(result[2],10)}}else{try{var runtimeConfig=Module["websocket"]&&"object"===typeof Module["websocket"];var url="ws:#".replace("#","//");if(runtimeConfig){if("string"===typeof Module["websocket"]["url"]){url=Module["websocket"]["url"]}}if(url==="ws://"||url==="wss://"){var parts=addr.split("/");url=url+parts[0]+":"+port+"/"+parts.slice(1).join("/")}var subProtocols="binary";if(runtimeConfig){if("string"===typeof Module["websocket"]["subprotocol"]){subProtocols=Module["websocket"]["subprotocol"]}}var opts=undefined;if(subProtocols!=="null"){subProtocols=subProtocols.replace(/^ +| +$/g,"").split(/ *, */);opts=subProtocols}if(runtimeConfig&&null===Module["websocket"]["subprotocol"]){subProtocols="null";opts=undefined}var WebSocketConstructor;if(ENVIRONMENT_IS_NODE){WebSocketConstructor=require("ws")}else{WebSocketConstructor=WebSocket}ws=new WebSocketConstructor(url,opts);ws.binaryType="arraybuffer"}catch(e){throw new FS.ErrnoError(23)}}var peer={addr:addr,port:port,socket:ws,dgram_send_queue:[]};SOCKFS.websocket_sock_ops.addPeer(sock,peer);SOCKFS.websocket_sock_ops.handlePeerEvents(sock,peer);if(sock.type===2&&typeof sock.sport!="undefined"){peer.dgram_send_queue.push(new Uint8Array([255,255,255,255,"p".charCodeAt(0),"o".charCodeAt(0),"r".charCodeAt(0),"t".charCodeAt(0),(sock.sport&65280)>>8,sock.sport&255]))}return peer},getPeer(sock,addr,port){return sock.peers[addr+":"+port]},addPeer(sock,peer){sock.peers[peer.addr+":"+peer.port]=peer},removePeer(sock,peer){delete sock.peers[peer.addr+":"+peer.port]},handlePeerEvents(sock,peer){var first=true;var handleOpen=function(){Module["websocket"].emit("open",sock.stream.fd);try{var queued=peer.dgram_send_queue.shift();while(queued){peer.socket.send(queued);queued=peer.dgram_send_queue.shift()}}catch(e){peer.socket.close()}};function handleMessage(data){if(typeof data=="string"){var encoder=new TextEncoder;data=encoder.encode(data)}else{assert(data.byteLength!==undefined);if(data.byteLength==0){return}data=new Uint8Array(data)}var wasfirst=first;first=false;if(wasfirst&&data.length===10&&data[0]===255&&data[1]===255&&data[2]===255&&data[3]===255&&data[4]==="p".charCodeAt(0)&&data[5]==="o".charCodeAt(0)&&data[6]==="r".charCodeAt(0)&&data[7]==="t".charCodeAt(0)){var newport=data[8]<<8|data[9];SOCKFS.websocket_sock_ops.removePeer(sock,peer);peer.port=newport;SOCKFS.websocket_sock_ops.addPeer(sock,peer);return}sock.recv_queue.push({addr:peer.addr,port:peer.port,data:data});Module["websocket"].emit("message",sock.stream.fd)}if(ENVIRONMENT_IS_NODE){peer.socket.on("open",handleOpen);peer.socket.on("message",function(data,isBinary){if(!isBinary){return}handleMessage(new Uint8Array(data).buffer)});peer.socket.on("close",function(){Module["websocket"].emit("close",sock.stream.fd)});peer.socket.on("error",function(error){sock.error=14;Module["websocket"].emit("error",[sock.stream.fd,sock.error,"ECONNREFUSED: Connection refused"])})}else{peer.socket.onopen=handleOpen;peer.socket.onclose=function(){Module["websocket"].emit("close",sock.stream.fd)};peer.socket.onmessage=function peer_socket_onmessage(event){handleMessage(event.data)};peer.socket.onerror=function(error){sock.error=14;Module["websocket"].emit("error",[sock.stream.fd,sock.error,"ECONNREFUSED: Connection refused"])}}},poll(sock){if(sock.type===1&&sock.server){return sock.pending.length?64|1:0}var mask=0;var dest=sock.type===1?SOCKFS.websocket_sock_ops.getPeer(sock,sock.daddr,sock.dport):null;if(sock.recv_queue.length||!dest||dest&&dest.socket.readyState===dest.socket.CLOSING||dest&&dest.socket.readyState===dest.socket.CLOSED){mask|=64|1}if(!dest||dest&&dest.socket.readyState===dest.socket.OPEN){mask|=4}if(dest&&dest.socket.readyState===dest.socket.CLOSING||dest&&dest.socket.readyState===dest.socket.CLOSED){mask|=16}return mask},ioctl(sock,request,arg){switch(request){case 21531:var bytes=0;if(sock.recv_queue.length){bytes=sock.recv_queue[0].data.length}HEAP32[arg>>2]=bytes;return 0;default:return 28}},close(sock){if(sock.server){try{sock.server.close()}catch(e){}sock.server=null}var peers=Object.keys(sock.peers);for(var i=0;i{HEAP32[___errno_location()>>2]=value;return value};var inetNtop4=addr=>(addr&255)+"."+(addr>>8&255)+"."+(addr>>16&255)+"."+(addr>>24&255);var inetNtop6=ints=>{var str="";var word=0;var longest=0;var lastzero=0;var zstart=0;var len=0;var i=0;var parts=[ints[0]&65535,ints[0]>>16,ints[1]&65535,ints[1]>>16,ints[2]&65535,ints[2]>>16,ints[3]&65535,ints[3]>>16];var hasipv4=true;var v4part="";for(i=0;i<5;i++){if(parts[i]!==0){hasipv4=false;break}}if(hasipv4){v4part=inetNtop4(parts[6]|parts[7]<<16);if(parts[5]===-1){str="::ffff:";str+=v4part;return str}if(parts[5]===0){str="::";if(v4part==="0.0.0.0")v4part="";if(v4part==="0.0.0.1")v4part="1";str+=v4part;return str}}for(word=0;word<8;word++){if(parts[word]===0){if(word-lastzero>1){len=0}lastzero=word;len++}if(len>longest){longest=len;zstart=word-longest+1}}for(word=0;word<8;word++){if(longest>1){if(parts[word]===0&&word>=zstart&&word{var family=HEAP16[sa>>1];var port=_ntohs(HEAPU16[sa+2>>1]);var addr;switch(family){case 2:if(salen!==16){return{errno:28}}addr=HEAP32[sa+4>>2];addr=inetNtop4(addr);break;case 10:if(salen!==28){return{errno:28}}addr=[HEAP32[sa+8>>2],HEAP32[sa+12>>2],HEAP32[sa+16>>2],HEAP32[sa+20>>2]];addr=inetNtop6(addr);break;default:return{errno:5}}return{family:family,addr:addr,port:port}};var inetPton4=str=>{var b=str.split(".");for(var i=0;i<4;i++){var tmp=Number(b[i]);if(isNaN(tmp))return null;b[i]=tmp}return(b[0]|b[1]<<8|b[2]<<16|b[3]<<24)>>>0};var jstoi_q=str=>parseInt(str);var inetPton6=str=>{var words;var w,offset,z;var valid6regx=/^((?=.*::)(?!.*::.+::)(::)?([\dA-F]{1,4}:(:|\b)|){5}|([\dA-F]{1,4}:){6})((([\dA-F]{1,4}((?!\3)::|:\b|$))|(?!\2\3)){2}|(((2[0-4]|1\d|[1-9])?\d|25[0-5])\.?\b){4})$/i;var parts=[];if(!valid6regx.test(str)){return null}if(str==="::"){return[0,0,0,0,0,0,0,0]}if(str.startsWith("::")){str=str.replace("::","Z:")}else{str=str.replace("::",":Z:")}if(str.indexOf(".")>0){str=str.replace(new RegExp("[.]","g"),":");words=str.split(":");words[words.length-4]=jstoi_q(words[words.length-4])+jstoi_q(words[words.length-3])*256;words[words.length-3]=jstoi_q(words[words.length-2])+jstoi_q(words[words.length-1])*256;words=words.slice(0,words.length-2)}else{words=str.split(":")}offset=0;z=0;for(w=0;w{var res=inetPton4(name);if(res!==null){return name}res=inetPton6(name);if(res!==null){return name}var addr;if(DNS.address_map.addrs[name]){addr=DNS.address_map.addrs[name]}else{var id=DNS.address_map.id++;assert(id<65535,"exceeded max address mappings of 65535");addr="172.29."+(id&255)+"."+(id&65280);DNS.address_map.names[addr]=name;DNS.address_map.addrs[name]=addr}return addr},lookup_addr:addr=>{if(DNS.address_map.names[addr]){return DNS.address_map.names[addr]}return null}};function getSocketAddress(addrp,addrlen,allowNull){if(allowNull&&addrp===0)return null;var info=readSockaddr(addrp,addrlen);if(info.errno)throw new FS.ErrnoError(info.errno);info.addr=DNS.lookup_addr(info.addr)||info.addr;return info}function ___syscall_connect(fd,addr,addrlen,d1,d2,d3){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(4,1,fd,addr,addrlen,d1,d2,d3);try{var sock=getSocketFromFD(fd);var info=getSocketAddress(addr,addrlen);sock.sock_ops.connect(sock,info.addr,info.port);return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_fcntl64(fd,cmd,varargs){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(5,1,fd,cmd,varargs);SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(fd);switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-28}var newStream;newStream=FS.createStream(stream,arg);return newStream.fd}case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0}case 5:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0}case 6:case 7:return 0;case 16:case 8:return-28;case 9:setErrNo(28);return-1;default:{return-28}}}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_fstat64(fd,buf){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(6,1,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}}function ___syscall_getsockopt(fd,level,optname,optval,optlen,d1){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(7,1,fd,level,optname,optval,optlen,d1);try{var sock=getSocketFromFD(fd);if(level===1){if(optname===4){HEAP32[optval>>2]=sock.error;HEAP32[optlen>>2]=4;sock.error=null;return 0}}return-50}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_ioctl(fd,op,varargs){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(8,1,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=SYSCALLS.get();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>>0]=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=SYSCALLS.get();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>>0])}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=SYSCALLS.get();HEAP32[argp>>2]=0;return 0}case 21520:{if(!stream.tty)return-59;return-28}case 21531:{var argp=SYSCALLS.get();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=SYSCALLS.get();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){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(9,1,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_newfstatat(dirfd,path,buf,flags){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(10,1,dirfd,path,buf,flags);try{path=SYSCALLS.getStr(path);var nofollow=flags&256;var allowEmpty=flags&4096;flags=flags&~6400;assert(!flags,`unknown flags in __syscall_newfstatat: ${flags}`);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){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(11,1,dirfd,path,flags,varargs);SYSCALLS.varargs=varargs;try{path=SYSCALLS.getStr(path);path=SYSCALLS.calculateAt(dirfd,path);var mode=varargs?SYSCALLS.get():0;return FS.open(path,flags,mode).fd}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_poll(fds,nfds,timeout){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(12,1,fds,nfds,timeout);try{var nonzero=0;for(var i=0;i>2];var events=HEAP16[pollfd+4>>1];var mask=32;var stream=FS.getStream(fd);if(stream){mask=SYSCALLS.DEFAULT_POLLMASK;if(stream.stream_ops.poll){mask=stream.stream_ops.poll(stream,-1)}}mask&=events|8|16;if(mask)nonzero++;HEAP16[pollfd+6>>1]=mask}return nonzero}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_sendto(fd,message,length,flags,addr,addr_len){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(13,1,fd,message,length,flags,addr,addr_len);try{var sock=getSocketFromFD(fd);var dest=getSocketAddress(addr,addr_len,true);if(!dest){return FS.write(sock.stream,HEAP8,message,length)}return sock.sock_ops.sendmsg(sock,HEAP8,message,length,dest.addr,dest.port)}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_socket(domain,type,protocol){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(14,1,domain,type,protocol);try{var sock=SOCKFS.createSocket(domain,type,protocol);assert(sock.stream.fd<64);return sock.stream.fd}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_stat64(path,buf){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(15,1,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}}var nowIsMonotonic=true;var __emscripten_get_now_is_monotonic=()=>nowIsMonotonic;var maybeExit=()=>{if(!keepRuntimeAlive()){try{if(ENVIRONMENT_IS_PTHREAD)__emscripten_thread_exit(EXITSTATUS);else _exit(EXITSTATUS)}catch(e){handleException(e)}}};var callUserCallback=func=>{if(ABORT){err("user callback triggered after runtime exited or application aborted. Ignoring.");return}try{func();maybeExit()}catch(e){handleException(e)}};function __emscripten_thread_mailbox_await(pthread_ptr){if(typeof Atomics.waitAsync==="function"){var wait=Atomics.waitAsync(HEAP32,pthread_ptr>>2,pthread_ptr);assert(wait.async);wait.value.then(checkMailbox);var waitingAsync=pthread_ptr+128;Atomics.store(HEAP32,waitingAsync>>2,1)}}Module["__emscripten_thread_mailbox_await"]=__emscripten_thread_mailbox_await;var checkMailbox=function(){var pthread_ptr=_pthread_self();if(pthread_ptr){__emscripten_thread_mailbox_await(pthread_ptr);callUserCallback(()=>__emscripten_check_mailbox())}};Module["checkMailbox"]=checkMailbox;var __emscripten_notify_mailbox_postmessage=function(targetThreadId,currThreadId,mainThreadId){if(targetThreadId==currThreadId){setTimeout(()=>checkMailbox())}else if(ENVIRONMENT_IS_PTHREAD){postMessage({"targetThread":targetThreadId,"cmd":"checkMailbox"})}else{var worker=PThread.pthreads[targetThreadId];if(!worker){err("Cannot send message to thread with ID "+targetThreadId+", unknown thread ID!");return}worker.postMessage({"cmd":"checkMailbox"})}};function __emscripten_set_offscreencanvas_size(target,width,height){err("emscripten_set_offscreencanvas_size: Build with -sOFFSCREENCANVAS_SUPPORT=1 to enable transferring canvases to pthreads.");return-1}function __emscripten_thread_set_strongref(thread){if(ENVIRONMENT_IS_NODE){PThread.pthreads[thread].ref()}}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};function convertI32PairToI53Checked(lo,hi){assert(lo==lo>>>0||lo==(lo|0));assert(hi===(hi|0));return hi+2097152>>>0<4194305-!!lo?(lo>>>0)+hi*4294967296:NaN}function __localtime_js(time_low,time_high,tmPtr){var time=convertI32PairToI53Checked(time_low,time_high);var date=new Date(time*1e3);HEAP32[tmPtr>>2]=date.getSeconds();HEAP32[tmPtr+4>>2]=date.getMinutes();HEAP32[tmPtr+8>>2]=date.getHours();HEAP32[tmPtr+12>>2]=date.getDate();HEAP32[tmPtr+16>>2]=date.getMonth();HEAP32[tmPtr+20>>2]=date.getFullYear()-1900;HEAP32[tmPtr+24>>2]=date.getDay();var yday=ydayFromDate(date)|0;HEAP32[tmPtr+28>>2]=yday;HEAP32[tmPtr+36>>2]=-(date.getTimezoneOffset()*60);var start=new Date(date.getFullYear(),0,1);var summerOffset=new Date(date.getFullYear(),6,1).getTimezoneOffset();var winterOffset=start.getTimezoneOffset();var dst=(summerOffset!=winterOffset&&date.getTimezoneOffset()==Math.min(winterOffset,summerOffset))|0;HEAP32[tmPtr+32>>2]=dst}function __mmap_js(len,prot,flags,fd,offset_low,offset_high,allocated,addr){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(16,1,len,prot,flags,fd,offset_low,offset_high,allocated,addr);var offset=convertI32PairToI53Checked(offset_low,offset_high);try{if(isNaN(offset))return 61;var stream=SYSCALLS.getStreamFromFD(fd);var res=FS.mmap(stream,len,offset,prot,flags);var ptr=res.ptr;HEAP32[allocated>>2]=res.allocated;HEAPU32[addr>>2]=ptr;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function __munmap_js(addr,len,prot,flags,fd,offset_low,offset_high){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(17,1,addr,len,prot,flags,fd,offset_low,offset_high);var offset=convertI32PairToI53Checked(offset_low,offset_high);try{if(isNaN(offset))return 61;var stream=SYSCALLS.getStreamFromFD(fd);if(prot&2){SYSCALLS.doMsync(addr,stream,len,flags,offset)}FS.munmap(stream)}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}var stringToUTF8=(str,outPtr,maxBytesToWrite)=>{assert(typeof maxBytesToWrite=="number","stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!");return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)};var stringToNewUTF8=str=>{var size=lengthBytesUTF8(str)+1;var ret=_malloc(size);if(ret)stringToUTF8(str,ret,size);return ret};var __tzset_js=(timezone,daylight,tzname)=>{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);function extractZone(date){var match=date.toTimeString().match(/\(([A-Za-z ]+)\)$/);return match?match[1]:"GMT"}var winterName=extractZone(winter);var summerName=extractZone(summer);var winterNamePtr=stringToNewUTF8(winterName);var summerNamePtr=stringToNewUTF8(summerName);if(summerOffset>2]=winterNamePtr;HEAPU32[tzname+4>>2]=summerNamePtr}else{HEAPU32[tzname>>2]=summerNamePtr;HEAPU32[tzname+4>>2]=winterNamePtr}};var _abort=()=>{abort("native code called abort()")};function _emscripten_check_blocking_allowed(){if(ENVIRONMENT_IS_NODE)return;if(ENVIRONMENT_IS_WORKER)return;warnOnce("Blocking on the main thread is very dangerous, see https://emscripten.org/docs/porting/pthreads.html#blocking-on-the-main-browser-thread")}function _emscripten_date_now(){return Date.now()}var runtimeKeepalivePush=()=>{runtimeKeepaliveCounter+=1};var _emscripten_exit_with_live_runtime=()=>{runtimeKeepalivePush();throw"unwind"};var getHeapMax=()=>HEAPU8.length;var _emscripten_get_heap_max=()=>getHeapMax();var _emscripten_get_now;_emscripten_get_now=()=>performance.timeOrigin+performance.now();function _emscripten_num_logical_cores(){if(ENVIRONMENT_IS_NODE)return require("os").cpus().length;return navigator["hardwareConcurrency"]}var withStackSave=f=>{var stack=stackSave();var ret=f();stackRestore(stack);return ret};function proxyToMainThread(index,sync){var numCallArgs=arguments.length-2;var outerArgs=arguments;var maxArgs=19;if(numCallArgs>maxArgs){throw"proxyToMainThread: Too many arguments "+numCallArgs+" to proxied function idx="+index+", maximum supported is "+maxArgs}return withStackSave(()=>{var serializedNumCallArgs=numCallArgs;var args=stackAlloc(serializedNumCallArgs*8);var b=args>>3;for(var i=0;i>3;for(var i=0;i{abort(`Cannot enlarge memory arrays to size ${requestedSize} bytes (OOM). Either (1) compile with -sINITIAL_MEMORY=X with X higher than the current value ${HEAP8.length}, (2) compile with -sALLOW_MEMORY_GROWTH which allows increasing the size at runtime, or (3) if you want malloc to return NULL (0) instead of this abort, compile with -sABORTING_MALLOC=0`)};var _emscripten_resize_heap=requestedSize=>{var oldSize=HEAPU8.length;requestedSize>>>=0;abortOnCannotGrowMemory(requestedSize)};function _fd_close(fd){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(18,1,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}}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){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(20,1,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){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(21,1,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 writeSockaddr=(sa,family,addr,port,addrlen)=>{switch(family){case 2:addr=inetPton4(addr);zeroMemory(sa,16);if(addrlen){HEAP32[addrlen>>2]=16}HEAP16[sa>>1]=family;HEAP32[sa+4>>2]=addr;HEAP16[sa+2>>1]=_htons(port);break;case 10:addr=inetPton6(addr);zeroMemory(sa,28);if(addrlen){HEAP32[addrlen>>2]=28}HEAP32[sa>>2]=family;HEAP32[sa+8>>2]=addr[0];HEAP32[sa+12>>2]=addr[1];HEAP32[sa+16>>2]=addr[2];HEAP32[sa+20>>2]=addr[3];HEAP16[sa+2>>1]=_htons(port);break;default:return 5}return 0};function _getaddrinfo(node,service,hint,out){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(22,1,node,service,hint,out);var addr=0;var port=0;var flags=0;var family=0;var type=0;var proto=0;var ai;function allocaddrinfo(family,type,proto,canon,addr,port){var sa,salen,ai;var errno;salen=family===10?28:16;addr=family===10?inetNtop6(addr):inetNtop4(addr);sa=_malloc(salen);errno=writeSockaddr(sa,family,addr,port);assert(!errno);ai=_malloc(32);HEAP32[ai+4>>2]=family;HEAP32[ai+8>>2]=type;HEAP32[ai+12>>2]=proto;HEAPU32[ai+24>>2]=canon;HEAPU32[ai+20>>2]=sa;if(family===10){HEAP32[ai+16>>2]=28}else{HEAP32[ai+16>>2]=16}HEAP32[ai+28>>2]=0;return ai}if(hint){flags=HEAP32[hint>>2];family=HEAP32[hint+4>>2];type=HEAP32[hint+8>>2];proto=HEAP32[hint+12>>2]}if(type&&!proto){proto=type===2?17:6}if(!type&&proto){type=proto===17?2:1}if(proto===0){proto=6}if(type===0){type=1}if(!node&&!service){return-2}if(flags&~(1|2|4|1024|8|16|32)){return-1}if(hint!==0&&HEAP32[hint>>2]&2&&!node){return-1}if(flags&32){return-2}if(type!==0&&type!==1&&type!==2){return-7}if(family!==0&&family!==2&&family!==10){return-6}if(service){service=UTF8ToString(service);port=parseInt(service,10);if(isNaN(port)){if(flags&1024){return-2}return-8}}if(!node){if(family===0){family=2}if((flags&1)===0){if(family===2){addr=_htonl(2130706433)}else{addr=[0,0,0,1]}}ai=allocaddrinfo(family,type,proto,null,addr,port);HEAPU32[out>>2]=ai;return 0}node=UTF8ToString(node);addr=inetPton4(node);if(addr!==null){if(family===0||family===2){family=2}else if(family===10&&flags&8){addr=[0,0,_htonl(65535),addr];family=10}else{return-2}}else{addr=inetPton6(node);if(addr!==null){if(family===0||family===10){family=10}else{return-2}}}if(addr!=null){ai=allocaddrinfo(family,type,proto,node,addr,port);HEAPU32[out>>2]=ai;return 0}if(flags&4){return-2}node=DNS.lookup_name(node);addr=inetPton4(node);if(family===0){family=2}else if(family===10){addr=[0,0,_htonl(65535),addr]}ai=allocaddrinfo(family,type,proto,null,addr,port);HEAPU32[out>>2]=ai;return 0}PThread.init();var FSNode=function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev};var readMode=292|73;var writeMode=146;Object.defineProperties(FSNode.prototype,{read:{get:function(){return(this.mode&readMode)===readMode},set:function(val){val?this.mode|=readMode:this.mode&=~readMode}},write:{get:function(){return(this.mode&writeMode)===writeMode},set:function(val){val?this.mode|=writeMode:this.mode&=~writeMode}},isFolder:{get:function(){return FS.isDir(this.mode)}},isDevice:{get:function(){return FS.isChrdev(this.mode)}}});FS.FSNode=FSNode;FS.createPreloadedFile=FS_createPreloadedFile;FS.staticInit();ERRNO_CODES={"EPERM":63,"ENOENT":44,"ESRCH":71,"EINTR":27,"EIO":29,"ENXIO":60,"E2BIG":1,"ENOEXEC":45,"EBADF":8,"ECHILD":12,"EAGAIN":6,"EWOULDBLOCK":6,"ENOMEM":48,"EACCES":2,"EFAULT":21,"ENOTBLK":105,"EBUSY":10,"EEXIST":20,"EXDEV":75,"ENODEV":43,"ENOTDIR":54,"EISDIR":31,"EINVAL":28,"ENFILE":41,"EMFILE":33,"ENOTTY":59,"ETXTBSY":74,"EFBIG":22,"ENOSPC":51,"ESPIPE":70,"EROFS":69,"EMLINK":34,"EPIPE":64,"EDOM":18,"ERANGE":68,"ENOMSG":49,"EIDRM":24,"ECHRNG":106,"EL2NSYNC":156,"EL3HLT":107,"EL3RST":108,"ELNRNG":109,"EUNATCH":110,"ENOCSI":111,"EL2HLT":112,"EDEADLK":16,"ENOLCK":46,"EBADE":113,"EBADR":114,"EXFULL":115,"ENOANO":104,"EBADRQC":103,"EBADSLT":102,"EDEADLOCK":16,"EBFONT":101,"ENOSTR":100,"ENODATA":116,"ETIME":117,"ENOSR":118,"ENONET":119,"ENOPKG":120,"EREMOTE":121,"ENOLINK":47,"EADV":122,"ESRMNT":123,"ECOMM":124,"EPROTO":65,"EMULTIHOP":36,"EDOTDOT":125,"EBADMSG":9,"ENOTUNIQ":126,"EBADFD":127,"EREMCHG":128,"ELIBACC":129,"ELIBBAD":130,"ELIBSCN":131,"ELIBMAX":132,"ELIBEXEC":133,"ENOSYS":52,"ENOTEMPTY":55,"ENAMETOOLONG":37,"ELOOP":32,"EOPNOTSUPP":138,"EPFNOSUPPORT":139,"ECONNRESET":15,"ENOBUFS":42,"EAFNOSUPPORT":5,"EPROTOTYPE":67,"ENOTSOCK":57,"ENOPROTOOPT":50,"ESHUTDOWN":140,"ECONNREFUSED":14,"EADDRINUSE":3,"ECONNABORTED":13,"ENETUNREACH":40,"ENETDOWN":38,"ETIMEDOUT":73,"EHOSTDOWN":142,"EHOSTUNREACH":23,"EINPROGRESS":26,"EALREADY":7,"EDESTADDRREQ":17,"EMSGSIZE":35,"EPROTONOSUPPORT":66,"ESOCKTNOSUPPORT":137,"EADDRNOTAVAIL":4,"ENETRESET":39,"EISCONN":30,"ENOTCONN":53,"ETOOMANYREFS":141,"EUSERS":136,"EDQUOT":19,"ESTALE":72,"ENOTSUP":138,"ENOMEDIUM":148,"EILSEQ":25,"EOVERFLOW":61,"ECANCELED":11,"ENOTRECOVERABLE":56,"EOWNERDEAD":62,"ESTRPIPE":135};var proxiedFunctionTable=[null,_proc_exit,exitOnMainThread,pthreadCreateProxied,___syscall_connect,___syscall_fcntl64,___syscall_fstat64,___syscall_getsockopt,___syscall_ioctl,___syscall_lstat64,___syscall_newfstatat,___syscall_openat,___syscall_poll,___syscall_sendto,___syscall_socket,___syscall_stat64,__mmap_js,__munmap_js,_fd_close,_fd_read,_fd_seek,_fd_write,_getaddrinfo];function checkIncomingModuleAPI(){ignoredModuleProp("fetchSettings")}var wasmImports={__assert_fail:___assert_fail,__call_sighandler:___call_sighandler,__emscripten_init_main_thread_js:___emscripten_init_main_thread_js,__emscripten_thread_cleanup:___emscripten_thread_cleanup,__pthread_create_js:___pthread_create_js,__syscall_connect:___syscall_connect,__syscall_fcntl64:___syscall_fcntl64,__syscall_fstat64:___syscall_fstat64,__syscall_getsockopt:___syscall_getsockopt,__syscall_ioctl:___syscall_ioctl,__syscall_lstat64:___syscall_lstat64,__syscall_newfstatat:___syscall_newfstatat,__syscall_openat:___syscall_openat,__syscall_poll:___syscall_poll,__syscall_sendto:___syscall_sendto,__syscall_socket:___syscall_socket,__syscall_stat64:___syscall_stat64,_emscripten_get_now_is_monotonic:__emscripten_get_now_is_monotonic,_emscripten_notify_mailbox_postmessage:__emscripten_notify_mailbox_postmessage,_emscripten_set_offscreencanvas_size:__emscripten_set_offscreencanvas_size,_emscripten_thread_mailbox_await:__emscripten_thread_mailbox_await,_emscripten_thread_set_strongref:__emscripten_thread_set_strongref,_localtime_js:__localtime_js,_mmap_js:__mmap_js,_munmap_js:__munmap_js,_tzset_js:__tzset_js,abort:_abort,emscripten_check_blocking_allowed:_emscripten_check_blocking_allowed,emscripten_date_now:_emscripten_date_now,emscripten_exit_with_live_runtime:_emscripten_exit_with_live_runtime,emscripten_get_heap_max:_emscripten_get_heap_max,emscripten_get_now:_emscripten_get_now,emscripten_num_logical_cores:_emscripten_num_logical_cores,emscripten_receive_on_main_thread_js:_emscripten_receive_on_main_thread_js,emscripten_resize_heap:_emscripten_resize_heap,exit:_exit,fd_close:_fd_close,fd_read:_fd_read,fd_seek:_fd_seek,fd_write:_fd_write,getaddrinfo:_getaddrinfo,memory:wasmMemory};var asm=createWasm();var ___wasm_call_ctors=createExportWrapper("__wasm_call_ctors");var _malloc=Module["_malloc"]=createExportWrapper("malloc");var _free=Module["_free"]=createExportWrapper("free");var ___errno_location=createExportWrapper("__errno_location");var _fflush=Module["_fflush"]=createExportWrapper("fflush");var _ETHRandomNumberCreate=Module["_ETHRandomNumberCreate"]=createExportWrapper("ETHRandomNumberCreate");var _ETHConsensusConfigCreateFromYaml=Module["_ETHConsensusConfigCreateFromYaml"]=createExportWrapper("ETHConsensusConfigCreateFromYaml");var _ETHConsensusConfigGetConsensusVersionAtEpoch=Module["_ETHConsensusConfigGetConsensusVersionAtEpoch"]=createExportWrapper("ETHConsensusConfigGetConsensusVersionAtEpoch");var _ETHBeaconStateCreateFromSsz=Module["_ETHBeaconStateCreateFromSsz"]=createExportWrapper("ETHBeaconStateCreateFromSsz");var _ETHBeaconStateDestroy=Module["_ETHBeaconStateDestroy"]=createExportWrapper("ETHBeaconStateDestroy");var _ETHBeaconStateCopyGenesisValidatorsRoot=Module["_ETHBeaconStateCopyGenesisValidatorsRoot"]=createExportWrapper("ETHBeaconStateCopyGenesisValidatorsRoot");var _ETHRootDestroy=Module["_ETHRootDestroy"]=createExportWrapper("ETHRootDestroy");var _ETHForkDigestsCreateFromState=Module["_ETHForkDigestsCreateFromState"]=createExportWrapper("ETHForkDigestsCreateFromState");var _ETHBeaconClockCreateFromState=Module["_ETHBeaconClockCreateFromState"]=createExportWrapper("ETHBeaconClockCreateFromState");var _ETHBeaconClockGetSlot=Module["_ETHBeaconClockGetSlot"]=createExportWrapper("ETHBeaconClockGetSlot");var _ETHLightClientStoreCreateFromBootstrap=Module["_ETHLightClientStoreCreateFromBootstrap"]=createExportWrapper("ETHLightClientStoreCreateFromBootstrap");var _ETHLightClientStoreDestroy=Module["_ETHLightClientStoreDestroy"]=createExportWrapper("ETHLightClientStoreDestroy");var _ETHLightClientStoreGetNextSyncTask=Module["_ETHLightClientStoreGetNextSyncTask"]=createExportWrapper("ETHLightClientStoreGetNextSyncTask");var _ETHLightClientStoreGetMillisecondsToNextSyncTask=Module["_ETHLightClientStoreGetMillisecondsToNextSyncTask"]=createExportWrapper("ETHLightClientStoreGetMillisecondsToNextSyncTask");var _ETHLightClientStoreProcessUpdatesByRange=Module["_ETHLightClientStoreProcessUpdatesByRange"]=createExportWrapper("ETHLightClientStoreProcessUpdatesByRange");var _ETHLightClientStoreProcessFinalityUpdate=Module["_ETHLightClientStoreProcessFinalityUpdate"]=createExportWrapper("ETHLightClientStoreProcessFinalityUpdate");var _ETHLightClientStoreProcessOptimisticUpdate=Module["_ETHLightClientStoreProcessOptimisticUpdate"]=createExportWrapper("ETHLightClientStoreProcessOptimisticUpdate");var _ETHLightClientStoreGetFinalizedHeader=Module["_ETHLightClientStoreGetFinalizedHeader"]=createExportWrapper("ETHLightClientStoreGetFinalizedHeader");var _ETHLightClientStoreIsNextSyncCommitteeKnown=Module["_ETHLightClientStoreIsNextSyncCommitteeKnown"]=createExportWrapper("ETHLightClientStoreIsNextSyncCommitteeKnown");var _ETHLightClientStoreGetOptimisticHeader=Module["_ETHLightClientStoreGetOptimisticHeader"]=createExportWrapper("ETHLightClientStoreGetOptimisticHeader");var _ETHLightClientStoreGetSafetyThreshold=Module["_ETHLightClientStoreGetSafetyThreshold"]=createExportWrapper("ETHLightClientStoreGetSafetyThreshold");var _ETHLightClientHeaderCreateCopy=Module["_ETHLightClientHeaderCreateCopy"]=createExportWrapper("ETHLightClientHeaderCreateCopy");var _ETHLightClientHeaderDestroy=Module["_ETHLightClientHeaderDestroy"]=createExportWrapper("ETHLightClientHeaderDestroy");var _ETHLightClientHeaderCopyBeaconRoot=Module["_ETHLightClientHeaderCopyBeaconRoot"]=createExportWrapper("ETHLightClientHeaderCopyBeaconRoot");var _ETHLightClientHeaderGetBeacon=Module["_ETHLightClientHeaderGetBeacon"]=createExportWrapper("ETHLightClientHeaderGetBeacon");var _ETHBeaconBlockHeaderGetSlot=Module["_ETHBeaconBlockHeaderGetSlot"]=createExportWrapper("ETHBeaconBlockHeaderGetSlot");var _ETHBeaconBlockHeaderGetProposerIndex=Module["_ETHBeaconBlockHeaderGetProposerIndex"]=createExportWrapper("ETHBeaconBlockHeaderGetProposerIndex");var _ETHBeaconBlockHeaderGetParentRoot=Module["_ETHBeaconBlockHeaderGetParentRoot"]=createExportWrapper("ETHBeaconBlockHeaderGetParentRoot");var _ETHBeaconBlockHeaderGetStateRoot=Module["_ETHBeaconBlockHeaderGetStateRoot"]=createExportWrapper("ETHBeaconBlockHeaderGetStateRoot");var _ETHBeaconBlockHeaderGetBodyRoot=Module["_ETHBeaconBlockHeaderGetBodyRoot"]=createExportWrapper("ETHBeaconBlockHeaderGetBodyRoot");var _ETHLightClientHeaderCopyExecutionHash=Module["_ETHLightClientHeaderCopyExecutionHash"]=createExportWrapper("ETHLightClientHeaderCopyExecutionHash");var _ETHLightClientHeaderGetExecution=Module["_ETHLightClientHeaderGetExecution"]=createExportWrapper("ETHLightClientHeaderGetExecution");var _ETHExecutionPayloadHeaderGetParentHash=Module["_ETHExecutionPayloadHeaderGetParentHash"]=createExportWrapper("ETHExecutionPayloadHeaderGetParentHash");var _ETHExecutionPayloadHeaderGetFeeRecipient=Module["_ETHExecutionPayloadHeaderGetFeeRecipient"]=createExportWrapper("ETHExecutionPayloadHeaderGetFeeRecipient");var _ETHExecutionPayloadHeaderGetStateRoot=Module["_ETHExecutionPayloadHeaderGetStateRoot"]=createExportWrapper("ETHExecutionPayloadHeaderGetStateRoot");var _ETHExecutionPayloadHeaderGetReceiptsRoot=Module["_ETHExecutionPayloadHeaderGetReceiptsRoot"]=createExportWrapper("ETHExecutionPayloadHeaderGetReceiptsRoot");var _ETHExecutionPayloadHeaderGetLogsBloom=Module["_ETHExecutionPayloadHeaderGetLogsBloom"]=createExportWrapper("ETHExecutionPayloadHeaderGetLogsBloom");var _ETHExecutionPayloadHeaderGetPrevRandao=Module["_ETHExecutionPayloadHeaderGetPrevRandao"]=createExportWrapper("ETHExecutionPayloadHeaderGetPrevRandao");var _ETHExecutionPayloadHeaderGetBlockNumber=Module["_ETHExecutionPayloadHeaderGetBlockNumber"]=createExportWrapper("ETHExecutionPayloadHeaderGetBlockNumber");var _ETHExecutionPayloadHeaderGetGasLimit=Module["_ETHExecutionPayloadHeaderGetGasLimit"]=createExportWrapper("ETHExecutionPayloadHeaderGetGasLimit");var _ETHExecutionPayloadHeaderGetGasUsed=Module["_ETHExecutionPayloadHeaderGetGasUsed"]=createExportWrapper("ETHExecutionPayloadHeaderGetGasUsed");var _ETHExecutionPayloadHeaderGetTimestamp=Module["_ETHExecutionPayloadHeaderGetTimestamp"]=createExportWrapper("ETHExecutionPayloadHeaderGetTimestamp");var _ETHExecutionPayloadHeaderGetExtraDataBytes=Module["_ETHExecutionPayloadHeaderGetExtraDataBytes"]=createExportWrapper("ETHExecutionPayloadHeaderGetExtraDataBytes");var _ETHExecutionPayloadHeaderGetNumExtraDataBytes=Module["_ETHExecutionPayloadHeaderGetNumExtraDataBytes"]=createExportWrapper("ETHExecutionPayloadHeaderGetNumExtraDataBytes");var _ETHExecutionPayloadHeaderGetBaseFeePerGas=Module["_ETHExecutionPayloadHeaderGetBaseFeePerGas"]=createExportWrapper("ETHExecutionPayloadHeaderGetBaseFeePerGas");var _ETHExecutionPayloadHeaderGetBlobGasUsed=Module["_ETHExecutionPayloadHeaderGetBlobGasUsed"]=createExportWrapper("ETHExecutionPayloadHeaderGetBlobGasUsed");var _ETHExecutionPayloadHeaderGetExcessBlobGas=Module["_ETHExecutionPayloadHeaderGetExcessBlobGas"]=createExportWrapper("ETHExecutionPayloadHeaderGetExcessBlobGas");var _ETHExecutionBlockHeaderCreateFromJson=Module["_ETHExecutionBlockHeaderCreateFromJson"]=createExportWrapper("ETHExecutionBlockHeaderCreateFromJson");var _ETHExecutionBlockHeaderDestroy=Module["_ETHExecutionBlockHeaderDestroy"]=createExportWrapper("ETHExecutionBlockHeaderDestroy");var _ETHExecutionBlockHeaderGetTransactionsRoot=Module["_ETHExecutionBlockHeaderGetTransactionsRoot"]=createExportWrapper("ETHExecutionBlockHeaderGetTransactionsRoot");var _ETHExecutionBlockHeaderGetWithdrawalsRoot=Module["_ETHExecutionBlockHeaderGetWithdrawalsRoot"]=createExportWrapper("ETHExecutionBlockHeaderGetWithdrawalsRoot");var _ETHTransactionsCreateFromJson=Module["_ETHTransactionsCreateFromJson"]=createExportWrapper("ETHTransactionsCreateFromJson");var _ETHTransactionsDestroy=Module["_ETHTransactionsDestroy"]=createExportWrapper("ETHTransactionsDestroy");var _ETHTransactionsGetCount=Module["_ETHTransactionsGetCount"]=createExportWrapper("ETHTransactionsGetCount");var _ETHTransactionsGet=Module["_ETHTransactionsGet"]=createExportWrapper("ETHTransactionsGet");var _ETHTransactionGetHash=Module["_ETHTransactionGetHash"]=createExportWrapper("ETHTransactionGetHash");var _ETHTransactionGetFrom=Module["_ETHTransactionGetFrom"]=createExportWrapper("ETHTransactionGetFrom");var _ETHTransactionGetNonce=Module["_ETHTransactionGetNonce"]=createExportWrapper("ETHTransactionGetNonce");var _ETHTransactionGetMaxPriorityFeePerGas=Module["_ETHTransactionGetMaxPriorityFeePerGas"]=createExportWrapper("ETHTransactionGetMaxPriorityFeePerGas");var _ETHTransactionGetMaxFeePerGas=Module["_ETHTransactionGetMaxFeePerGas"]=createExportWrapper("ETHTransactionGetMaxFeePerGas");var _ETHTransactionGetGas=Module["_ETHTransactionGetGas"]=createExportWrapper("ETHTransactionGetGas");var _ETHTransactionIsCreatingContract=Module["_ETHTransactionIsCreatingContract"]=createExportWrapper("ETHTransactionIsCreatingContract");var _ETHTransactionGetTo=Module["_ETHTransactionGetTo"]=createExportWrapper("ETHTransactionGetTo");var _ETHTransactionGetValue=Module["_ETHTransactionGetValue"]=createExportWrapper("ETHTransactionGetValue");var _ETHTransactionGetInputBytes=Module["_ETHTransactionGetInputBytes"]=createExportWrapper("ETHTransactionGetInputBytes");var _ETHTransactionGetBytes=Module["_ETHTransactionGetBytes"]=createExportWrapper("ETHTransactionGetBytes");var _NimMain=Module["_NimMain"]=createExportWrapper("NimMain");var __emscripten_tls_init=Module["__emscripten_tls_init"]=createExportWrapper("_emscripten_tls_init");var _pthread_self=Module["_pthread_self"]=()=>(_pthread_self=Module["_pthread_self"]=wasmExports["pthread_self"])();var _emscripten_builtin_memalign=createExportWrapper("emscripten_builtin_memalign");var __emscripten_thread_init=Module["__emscripten_thread_init"]=createExportWrapper("_emscripten_thread_init");var __emscripten_thread_crashed=Module["__emscripten_thread_crashed"]=createExportWrapper("_emscripten_thread_crashed");var _emscripten_main_thread_process_queued_calls=createExportWrapper("emscripten_main_thread_process_queued_calls");var _htonl=createExportWrapper("htonl");var _htons=createExportWrapper("htons");var _emscripten_main_runtime_thread_id=createExportWrapper("emscripten_main_runtime_thread_id");var __emscripten_run_in_main_runtime_thread_js=createExportWrapper("_emscripten_run_in_main_runtime_thread_js");var _emscripten_dispatch_to_thread_=createExportWrapper("emscripten_dispatch_to_thread_");var _emscripten_stack_get_base=()=>(_emscripten_stack_get_base=wasmExports["emscripten_stack_get_base"])();var _emscripten_stack_get_end=()=>(_emscripten_stack_get_end=wasmExports["emscripten_stack_get_end"])();var _ntohs=createExportWrapper("ntohs");var __emscripten_thread_free_data=createExportWrapper("_emscripten_thread_free_data");var __emscripten_thread_exit=Module["__emscripten_thread_exit"]=createExportWrapper("_emscripten_thread_exit");var __emscripten_check_mailbox=Module["__emscripten_check_mailbox"]=createExportWrapper("_emscripten_check_mailbox");var setTempRet0=createExportWrapper("setTempRet0");var _emscripten_stack_init=()=>(_emscripten_stack_init=wasmExports["emscripten_stack_init"])();var _emscripten_stack_set_limits=(a0,a1)=>(_emscripten_stack_set_limits=wasmExports["emscripten_stack_set_limits"])(a0,a1);var _emscripten_stack_get_free=()=>(_emscripten_stack_get_free=wasmExports["emscripten_stack_get_free"])();var stackSave=createExportWrapper("stackSave");var stackRestore=createExportWrapper("stackRestore");var stackAlloc=createExportWrapper("stackAlloc");var _emscripten_stack_get_current=()=>(_emscripten_stack_get_current=wasmExports["emscripten_stack_get_current"])();var dynCall_jii=Module["dynCall_jii"]=createExportWrapper("dynCall_jii");var dynCall_viij=Module["dynCall_viij"]=createExportWrapper("dynCall_viij");var dynCall_jiji=Module["dynCall_jiji"]=createExportWrapper("dynCall_jiji");var _kETHLcSyncKind_UpdatesByRange=Module["_kETHLcSyncKind_UpdatesByRange"]=1140156;var _kETHLcSyncKind_FinalityUpdate=Module["_kETHLcSyncKind_FinalityUpdate"]=1140160;var _kETHLcSyncKind_OptimisticUpdate=Module["_kETHLcSyncKind_OptimisticUpdate"]=1140164;Module["keepRuntimeAlive"]=keepRuntimeAlive;Module["wasmMemory"]=wasmMemory;Module["lengthBytesUTF8"]=lengthBytesUTF8;Module["stringToNewUTF8"]=stringToNewUTF8;Module["ExitStatus"]=ExitStatus;var missingLibrarySymbols=["writeI53ToI64","writeI53ToI64Clamped","writeI53ToI64Signaling","writeI53ToU64Clamped","writeI53ToU64Signaling","readI53FromI64","readI53FromU64","convertI32PairToI53","convertU32PairToI53","growMemory","arraySum","addDays","getHostByName","getCallstack","emscriptenLog","convertPCtoSourceLocation","readEmAsmArgs","jstoi_s","getExecutableName","listenOnce","autoResumeAudioContext","dynCallLegacy","getDynCaller","dynCall","setWasmTableEntry","runtimeKeepalivePop","safeSetTimeout","asmjsMangle","handleAllocatorInit","HandleAllocator","getNativeTypeSize","STACK_SIZE","STACK_ALIGN","POINTER_SIZE","ASSERTIONS","getCFunc","ccall","cwrap","uleb128Encode","sigToWasmTypes","generateFuncType","convertJsFunctionToWasm","getEmptyTableSlot","updateTableMap","getFunctionAddress","addFunction","removeFunction","reallyNegative","unSign","strLen","reSign","formatString","intArrayToString","AsciiToString","stringToAscii","UTF16ToString","stringToUTF16","lengthBytesUTF16","UTF32ToString","stringToUTF32","lengthBytesUTF32","stringToUTF8OnStack","writeArrayToMemory","registerKeyEventCallback","maybeCStringToJsString","findEventTarget","findCanvasEventTarget","getBoundingClientRect","fillMouseEventData","registerMouseEventCallback","registerWheelEventCallback","registerUiEventCallback","registerFocusEventCallback","fillDeviceOrientationEventData","registerDeviceOrientationEventCallback","fillDeviceMotionEventData","registerDeviceMotionEventCallback","screenOrientation","fillOrientationChangeEventData","registerOrientationChangeEventCallback","fillFullscreenChangeEventData","registerFullscreenChangeEventCallback","JSEvents_requestFullscreen","JSEvents_resizeCanvasForFullscreen","registerRestoreOldStyle","hideEverythingExceptGivenElement","restoreHiddenElements","setLetterbox","softFullscreenResizeWebGLRenderTarget","doRequestFullscreen","fillPointerlockChangeEventData","registerPointerlockChangeEventCallback","registerPointerlockErrorEventCallback","requestPointerLock","fillVisibilityChangeEventData","registerVisibilityChangeEventCallback","registerTouchEventCallback","fillGamepadEventData","registerGamepadEventCallback","registerBeforeUnloadEventCallback","fillBatteryEventData","battery","registerBatteryEventCallback","setCanvasElementSizeCallingThread","setCanvasElementSizeMainThread","setCanvasElementSize","getCanvasSizeCallingThread","getCanvasSizeMainThread","getCanvasElementSize","jsStackTrace","stackTrace","getEnvStrings","checkWasiClock","wasiRightsToMuslOFlags","wasiOFlagsToMuslOFlags","createDyncallWrapper","setImmediateWrapped","clearImmediateWrapped","polyfillSetImmediate","getPromise","makePromise","idsToPromises","makePromiseCallback","ExceptionInfo","findMatchingCatch","setMainLoop","_setNetworkCallback","heapObjectForWebGLType","heapAccessShiftForWebGLHeap","webgl_enable_ANGLE_instanced_arrays","webgl_enable_OES_vertex_array_object","webgl_enable_WEBGL_draw_buffers","webgl_enable_WEBGL_multi_draw","emscriptenWebGLGet","computeUnpackAlignedImageSize","colorChannelsInGlTextureFormat","emscriptenWebGLGetTexPixelData","__glGenObject","emscriptenWebGLGetUniform","webglGetUniformLocation","webglPrepareUniformLocationsBeforeFirstUse","webglGetLeftBracePos","emscriptenWebGLGetVertexAttrib","__glGetActiveAttribOrUniform","writeGLArray","emscripten_webgl_destroy_context_before_on_calling_thread","registerWebGlEventCallback","runAndAbortIfError","SDL_unicode","SDL_ttfContext","SDL_audio","GLFW_Window","ALLOC_NORMAL","ALLOC_STACK","allocate","writeStringToMemory","writeAsciiToMemory"];missingLibrarySymbols.forEach(missingLibrarySymbol);var unexportedSymbols=["run","addOnPreRun","addOnInit","addOnPreMain","addOnExit","addOnPostRun","addRunDependency","removeRunDependency","FS_createFolder","FS_createPath","FS_createDataFile","FS_createLazyFile","FS_createLink","FS_createDevice","FS_unlink","out","err","callMain","abort","wasmTable","wasmExports","stackAlloc","stackSave","stackRestore","getTempRet0","setTempRet0","writeStackCookie","checkStackCookie","convertI32PairToI53Checked","ptrToString","zeroMemory","exitJS","getHeapMax","abortOnCannotGrowMemory","ENV","MONTH_DAYS_REGULAR","MONTH_DAYS_LEAP","MONTH_DAYS_REGULAR_CUMULATIVE","MONTH_DAYS_LEAP_CUMULATIVE","isLeapYear","ydayFromDate","ERRNO_CODES","ERRNO_MESSAGES","setErrNo","inetPton4","inetNtop4","inetPton6","inetNtop6","readSockaddr","writeSockaddr","DNS","Protocols","Sockets","initRandomFill","randomFill","timers","warnOnce","UNWIND_CACHE","readEmAsmArgsArray","jstoi_q","getWasmTableEntry","handleException","runtimeKeepalivePush","callUserCallback","maybeExit","asyncLoad","alignMemory","mmapAlloc","freeTableIndexes","functionsInTableMap","setValue","getValue","PATH","PATH_FS","UTF8Decoder","UTF8ArrayToString","UTF8ToString","stringToUTF8Array","stringToUTF8","intArrayFromString","UTF16Decoder","JSEvents","specialHTMLTargets","currentFullscreenStrategy","restoreOldWindowedStyle","demangle","demangleAll","doReadv","doWritev","promiseMap","uncaughtExceptionCount","exceptionLast","exceptionCaught","Browser","wget","SYSCALLS","getSocketFromFD","getSocketAddress","preloadPlugins","FS_createPreloadedFile","FS_modeStringToFlags","FS_getMode","FS_stdin_getChar_buffer","FS_stdin_getChar","FS","MEMFS","TTY","PIPEFS","SOCKFS","tempFixedLengthArray","miniTempWebGLFloatBuffers","miniTempWebGLIntBuffers","GL","emscripten_webgl_power_preferences","AL","GLUT","EGL","GLEW","IDBStore","SDL","SDL_gfx","GLFW","allocateUTF8","allocateUTF8OnStack","PThread","terminateWorker","killThread","cleanupThread","registerTLSInit","cancelThread","spawnThread","exitOnMainThread","proxyToMainThread","emscripten_receive_on_main_thread_js_callArgs","invokeEntryPoint","checkMailbox"];unexportedSymbols.forEach(unexportedRuntimeSymbol);var calledRun;dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function stackCheckInit(){assert(!ENVIRONMENT_IS_PTHREAD);_emscripten_stack_init();writeStackCookie()}function run(){if(runDependencies>0){return}if(!ENVIRONMENT_IS_PTHREAD)stackCheckInit();if(ENVIRONMENT_IS_PTHREAD){initRuntime();startWorker(Module);return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();assert(!Module["_main"],'compiled without a main, but one is present. if you added it from JS, use Module["onRuntimeInitialized"]');postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}checkStackCookie()}function checkUnflushedContent(){var oldOut=out;var oldErr=err;var has=false;out=err=x=>{has=true};try{_fflush(0);["stdout","stderr"].forEach(function(name){var info=FS.analyzePath("/dev/"+name);if(!info)return;var stream=info.object;var rdev=stream.rdev;var tty=TTY.ttys[rdev];if(tty&&tty.output&&tty.output.length){has=true}})}catch(e){}out=oldOut;err=oldErr;if(has){warnOnce("stdio streams had content in them that was not flushed. you should set EXIT_RUNTIME to 1 (see the Emscripten FAQ), or make sure to emit a newline when you printf etc.")}}if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}run(); diff --git a/libnimbus_lc.wasm b/libnimbus_lc.wasm index 727cb68e9ac931d062759697f42617aec94f10a4..0dbb3352b33b64e01c8148e29d083782082bff73 100755 GIT binary patch delta 334196 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%0A5@RQ4!T>?ytKG)R1*Q0MXZ zL1IL@6y_uVE9~hhHC8SXJW6x#et6VVdK)M3w|hyAo8{2hsl2f5LUqy}5AMo2#Ir{c zKE8*bw9K$@YR~Bw z56yZ@ule)w4qrpjQV{pPBsoz~07rX2flcu6vG8}oD)B3yh)swF!rv9p@A8B8xr-TO}8fJR0qz*?g8Cu4#c8ChK6dMAs! z%@bsC*Li|0?h;Rs)#UO7S=?#(?q#V{lli<-GPteO9GzgJde(CY)w7BxsGj5v(D@bV zmEz|2ggL5+`K7?USEM%0Qp+p-5wB{@EDbiksxh++xb&*jwJsNJ_4XFs3-0aACgwbc zm2A>5X9j*zePmy$i|gdCA+xX4x70?4Z<*qbS2JsQ**W-{)WXSTbHJych8-KU?Z<|z znf)aHQg)X-INA?c$=C?p$CZJVd|1~XSt%$lE2aTbBd1xKPQ5cwk&vEYTYblOF8@fN3UyCl?ppv*QhED zZobY`)q0TRS4vf7z$b%HRXAcC8uT<)oXjK(ULK69$}TS}CkAUekrgVxpe;G`jI`X*87rnQv({l?u1sVw!3@ObRTe z(WSw}VW_FB?Qn7N(|B<*x(w+5Hfk!XysVsgTcfFLs5)H3iWRyKXRIt4E(Mj6l^n1Q zN6#P+YQ0ki&%g$|-$73D%F9WkcQs1MhY#M>a8dxN@7k3TSvnubvJINQCv~op@(o@( zlJ8RJ<3eGVn=o;x)cwh`k(0T_Zv(#(Xl@DH%4u#hMreGSq-}6&gcRju1S#M-(mpb9 z*GA(X!mUqmGMzh;sU>%08Pt*nBi=`~WR#cq%kOK{k_9zB(5NLFUipC0p8CNPTz@0n z`alv(^8c-PM}X9$`}diuYt|4wqNA9w`~L@cg1o3qo**x3D^HLYwVo%)8(RhGA4;7f zb9o+lW4AHEyfG?zokOVTC5ZUwUvvL+;Kz?p$hPtdx%((hFV2JcqclR!ha;n&Vj#;c zXdo|+Mgz%!Wuu>FAWr6O*$$1ypn1n{FQ<8bIY#56By5K(V>B*G(srmembva_n8Z`y z%dt3~p56^9qsuU!rotB=qbAbI%glq1HJZqP_Md1pkp-haVVc~oeOXD>i*9I_N!wEXHY$W3Z_ zx$*u?qpCFM^qEFg88GfMsjEH2kIOHM`&0cbW&Pzd2|H2FfwH-e*^oC0`LULlpMH}y zohS!ZPS)^agPh6#2Gh%fH$O+yOM$e{%V2u>&|wNPS5RK&c1+O>ca{veH$`K5@flG6 z3ub!bzL2Vx()1ECVD}dozRm@&_@^=BG6%_-g^klStmMF@>5LT&AXPK6*q-wK zqf;D?g^)^eQ*5wm2D&NtzD3VOhcUzkOsP{;{C8?SdvgVci_5Yg@;v*ZZlXaB=3+pvhb|VOr)sjW;K6AOoa%sJX22vNmm=MsxW2-+3C= ztl&Oh>e}AH8h(7;R1WTPVBUP>t^j_XUk2`MFftLj%PTK;zb9%Gmk$vOG~5-ys|&Of z&eP+U#WiQy0aq5Fdyr)<#lYq?NXPGh!$1qj9p$vkR!JIfCus+KmQ-W`xjpGA>jSoc zY`>7kCmVbgGvWuXD0N)S3JVsandO3QaT&}k z2R=+jPHg4n&{sI0W| za<_1~Mp+qfez`_jSs<<`tJ!74vK7e50l2cF44hbD{7U2`r@Wl}wNlf8Y|vnphLb!P zvZ}0{DUZry?_{+*r%Y&7F0c?vev7ztV7HgArdbBP&DTBM%;Yg`8wSr}bsvBp-fSkDL^g zmy@^+Qlulei${yx@@h17%ddjF@|ImNXM+^uG>FFUg5w*c9=NT1?OQycpoW#T+scvO zNp+mIl_&F~3kkbm$=A58yz0UM{5dM^HWhdbz z?Se6Bw7T3?&i?*Knp8(~%8RKYgH(|U(VL_OP983PX=0NUhl=QWT&ihgL@KYsIxo+r z9hd4jEzj(#$beRxr5>-HwmE6yC?@QhIKUI6iAE@}lHhutAPKJG3DQKe4Z3WU zo^6uLGf5TqF=1E5Z4RM|uJZ&{bjemeRX9l}3;ecXr^qg^CT4CeNfQ>*gcYn?HJZqQ zO53EkD%_316M2!t%m?6|ZBk%uwS#ER_Sk3qNxWxduma1EOL9rdvO(@PTua}+ctE+W zrV+^t6ZWE{4^vK`mbg*=bcGyfOW9H{6FOt2QH=;UAE z+V+w;W5CI9Ynj!+ACmeem2Dr3J$f!v*%evt|R znZ^3WQKXOi*W0-%&plyKR9Y zvQUCzw~a7Sa9K@|vhsO?l$FO5Bx4&-kc@M9f|OoXis><@r28 zs+*AqiM!CRJIXUjUDq*T9}_Qe2vwBJ6I9XZJP>x5LtRb+OoNq2u%l&^S6cz!mekSG zNLyLZ_ghUz%Z7#D7E@MkS(TOhSY=sZ=y&MBAB7#?NnQFTUscsa0zHZeCeTKhIKUyK zvrL{Koo(d_67_nXAW^U43H)5JIR;K{l)BY+IH+Zwi*mr@7>eCiUa^02tR%4)(6RYE z*nLbR_I$X1teDtsWp(9jj}?0X-b03B-wHt|q|VP2UbBnc)x7GuD)u@!E+u1v^&9$@ z;C!B-SKMas1b+X>Jo!4TJyDWTKgBh6^2#h(@QRfplUd~)gHBjAaiWAQkWXsjL`hlj z+(~xg{bS{^?xf@Nk;VywpRr^~-c|}!Jtf7t&iDh~IVE-OoAZZVZupIi8%|3T3nrM{ z$Xp9J8kuW8PmsCh@dTNxjVH)lqyJ@dO@;LD(OlEYE6=*8HKD2u7=Bt4+{uFFr&)04 z=IK(0;IpCb84T{^!RRw(2<}+H_bgs!bm9l85?@Pd4!YTW<{~dbOgvjshqL-%hqJ+f zvl?#l;O<%J8N7X?^$(ICy#&+y2YTmh!H-fPEc`)g(yXA=ay+4Z8Nw^4q`5JPsIcsX z=W{eR8ow7TIZ}HkI&yQQaHqxCF}_?**bCB+QfpXv?rBmfLeJD6H9@-+ys%CqiBxbq zCw0|KH?N+f>1Je+GUMhah)v#@Yu%9(lD5HGqp4aSt&DArzMx?W4<%pFFolPbFBH*b7aQqvUpaNT$5up_4{e$T zv!UTdjTEgg?;@$KybYRfOTiHFi{|ZR8$ADurqw*K{GwqqA98*{-Ho_ZMtOGoRTJp7 z?1$;UYIV0CvVLWANdB)ziAjvgVDbs zqg8${JEMN!ep%C67DQdvw3ZG1F0&WKW?zepAw!|KXBsj8Es93;9(w9Y`rU5#U6l>S4go3%CFdJ;C@vK zaFSpOL|)Z!n+mU8)o_~z+pZ$FU9Xps+gX3(m6*?5)3lZaL#}CB%ZB7@OtHtV6;W)J z>)7a`Kg!rBv)vWfizxK)bxosrP_n=dimvHv&l^jnO%0o=kZ@DOW*X$*q#^fUIqe78^n>yFnpU%5 zMZTuhZ1^Ex)2bDk-l9HQ-d34PzrCet)dn|jXVIll&4nZ(@-`%`dibG75d-7hOYio#)g>U{=8E}aen`3TEka>|IxIT59|NI)}rs0 zu{G8QTNG&f;9=-rpjF&qm|vh(++ny~Ahm+g_sZBHWAF33lD}p&O}(o*+LQ{pccq?A z7-`Vr9`^W;3(MHr#(SDoc@|v1C)ISSHyf&v&sx-Vy?wuk>)NJJYSlC6aQTc>y>G&; zu5!Ve&U})u0oK5=LMfWA0(ev?eeRu?g7-kU<4(M1KQdH zsfQz8XFkPOELa9#ARqEjs_VtBHP{-CpYryt>cbMWM*SZ4JY@GF^nD~XRIVnV>{GDt zku(dJO^H!5u9_0#IPAx5SNydTlHBDw4E)ZtsI1-6k?byoqjyx4aBLd0o4k9D!eRpIAX29kQ-~pjdx```cme*nqq8 zq4-?-csG7SKChdcSe1P`p5^4vLF=JwaOep;2Cql{lzDXMuJygl&2t}f*^-i;JjCa3yb7tc&mo&fuPvl zXuWsfo!)Y^Q&U;IsT{g|Dtj)Z_tubV>GL#FZ3aea zvzO#>q^IvoMYXZ`C3zeIb`F&T!F{P5QiOrAFU!#Z4l~K;1f&uH1#nA}n>z7lna5Q{ z;P`p4_fI(j`n@HKPDlwHDVvaz=0WXbxhA9;WREA=qXfHNVVrb$RU>qBN->(ZzpAmH z6y9Ee4%%qtR}#4CP>02;K69Fd|U)aMG5IW9ATM-aNbv zKyL1A5geXJ@B+9PC^tsx^9IPz=&nPZfpS$$bs8u~;bY`L4H1_4sM(snqczb>1Ct|y~daoF-PTc(}H4~Dz5i^>`L z9r){YIU2F650c-)$E-oD!)_cT$2f79#+!Hv%Vx}nyMyG$PT(vK9*W@X`4I9@4u|O1 zW!VYG%5laZPR@LI=b;<~qx;BJo^0(m1{X1$0Z61essz5NA=1WMh{P81=0ip*Qc-QN ztaqX!pX1PVO9k^`)0=V=C$J?^RRvz^V~$T;Fhs6}&D9ts`h$z3Yp)kNmwUUc!Fh+aqK2(&+ZQN5*cw3K~coj9}fZ-=?!#EJLqf!WU8%I~-Ya{-*pK9wF(YQ5Y;+@ju74yaVfyn?yh;g74dg+X#Tu``$bNS; zL-HEKkwkcZj64{TuwBW+n<3?oVMtTQGNg-R<=zNSF&F~~tuYrwp%+8G_AwWP5v-rc zFDO-sp7{#6)i_qynQ?M2gfPjr9`C?PQ?R}q&#*=|=e&!s_)}Jb>BVh=+=7?3w2-^0 zZNL_%{OFdB{6Q9(KI;C5jFJWm)2}d5?#!#WU^G^MQ4{4Zyq@nTGW_2s$_pv$GY9I= zpRtzv1{$j(L^zH;wD%L?Fj`z0r9-DNB;9lcDa05AgQl}C#!Srmtn7|erG*&7;mCAmplxS3>U(dd;04QO z$h8rNRZ91DX2UH{!36Fz+0d>FP9@opMOk0FSEvuWhv~gw z!YsM559^KNSS7n>$=Qg7GBm=H*>dfm;vG3@9(v|VUmm$a2wIRJzopdBm(|eHSEvSA z&&#WoYW$$v961DkGXqMCWt>f!!;N>V9w!&PrERX<8gZCej+l$HP&TZdD|dn5ZgQn^ zIPOlPVLl%X6~`SGbeHQsX*B!~^4k}1XOQ{r3yS&e9Ip873z*;T#CZybD}Fnq^^#jS zfzvoxaofS|#U~4q*V8v&Lm-{@8&VPf; z?&QGb^Y#^&eF2R8Q;sR>J`VY_uC!d2=ryYE2qx(O*K=y&N z17rc6yHfe@NgDq>shI!H;fnvB#Qb+BB2zeA@!z4}>wM|(FS+mjj^%0^Z-Ke*P%ud2 z^k#7=^WKw6_TD)T^WKyGC%kvw0`uOJ9NxPVANd@IdGC<+rlu!Y7CJlc3mwjTW36ZI z?6-RieZ1e^4)tHuW#>&Wmwh2~*`4T1;b7*n!_>FrT2GpzBsl+85s&>voFy*|`>&Ud zj>CVwbSH28zg{}?D*rRR^zk!`dFjHef0LIU|L^hAu|LUkaciKMZ{8aRoWi**o*q8W zIi7BF)5O!)lkFvFq(v08j)1Qh^Y{`& zO5sS%2~LHH3%SF=z-b)JoZyT_6u7Plv**hmj}zBB$ry{Qzlia^Wf2SP{ICek?G6Ml zW|6u!i+O0BwUEVIU~X>qB64#TDxFxda-c-k<}EM}G!;&!a8E>0 zGY2!bGXp}GYpfuPgPGfzz1Z${R(`rEoLJ6?tiO&&|Iz-vVfh;vp~Qf?LGg5WpV+>F zxfiWhvOd#)Wl^;(T`7NoJVvZy@Xo88IbN_z!?BgqoJ2upyr*)NhGQECrxG|1qE~A; z&gb9^0v9ZXffQ$7vKsd+@4z>!S&aO_Y8E5+Un55;T%agj&2uKf@>Oz#;x04cT9Q>0 zpzGG-lVQdh9*bt+1P&g7;G|?Yw?=N}R62!&Ei70Lwb!y(`GB=@6D3TJl{muWR{Uy` z8YbVomW9cGUCYAcT~k@-dpA{%QT#vFb{emoeAo;~Pn8=vHJ!zwc7R>+ObOC~qA8l%LCmwb*xzH9-Q zzha^A;a|zkm0i$Ys2rRR(!P?%D?Tn|r19yX9VRlM!+JT&hYi34yaQi;Eq@M$>t(a# z$efQ`6T_9d;x@>i$P7Xm?8jt^iD5GrH^{q-)N~w8XHPoD2xo7Ump!(^k+3CAuKM^| zpMe^iFdr#`x4aHg7Eo&9g&WBhs>Md?`WnWN|S^VDst z&O&&vr=JnpZI^=`YO-+@6Qbn7huhh<)Y9#8yCQ<<22IlCcx)d9{SZBc-5G3Yl9wSn zZy;3BY#@Zf{BLmB$%eokPuxJjxPCZn-@${wnMyRj&Q2EozQ5D4ix8jb*hM&&>AZ_j zV;7G<=K3&6?B2yn&)m&-5sXk}4-PWfPGP`K+U6 zwvo{KhY~juR{X%sDKLkj<3<9RF|#>kw*mJN=3-9IALS1CV1fIue#FB!+CcwbKgzQ( z>$7vXkC_dr=j65c=<$>MEn`9d6~{rvC?mzXZud9^pW#;vWVpmR8et%$IXoI9AA(ZV2)^G?67jf zZESxF%TY&QO@v;=12XEyhnu>C=@I3Ypjig|lp^@C)l2voGPUN!~AV z?Gg&7@WOR}<%M&V!iRq4h0RF7$xCdX>FOnpm8oD&`i)~5;q}W*WwS0b)U}s6YO;db z?so@jNFF++s;v9u$$I=fG>@6Q>lH3j5&B(WTP{p?Yp-zGN$}Sdxvo-Ll?`_6tE_EA z6=Ba+hw?nHv0bL7*VrZ|-^lTX^lRuGX2YdxxOw@Q6If~56(h=&tr!cg^A#h@u`E&D zH?~5GUjl3Y;AeLjoK5?yl*OVe?7g9!!1DA=p)5Q}bc3%O6>QjcgRL7U++;rN@|%3! zs8#|0++@ztC;1G%B%k}h9G;uc){PE$IQ0969mCpmi|yL~aEmV$S&Ipreq|ZBgqDH9 z(DqN+Uvc#qQVK_6tFTlU@hA6|890rD+4?I3vi{`WG6QFEFk5+LFJT)DK?NjFCLM-U zOimKK{g*tY3eT@>@-|h}=flVc{7ejTtRBuJ9sCZedCawy0u8B-pf@1}Yt6q2c@{K8l9p2JXe&{Y=ezB_3czbO5 zl>z#D8iUH>V7C0qh5`3924&@7w*1Ojsw}^b-IJd}t?&I}26dYmlwI)4-arSKo#Z-y zlb_^Ldlq`Z$;wGC&=<0!T;mE^A6!~kRF^*&vUTVi59Cng_!d^79^cYR<;(-V-eOX* zalVF<5kj?xaudZ5X3%^N9fQyU82*r-nqpAPG9F2wg<$+LJd(>+g14~}Jh4^#5nGKu z`-r*5BOYnAk-*DFW6`8#u;Y>3(5c}R4sM6w)I<+sQzu{=2lhZmYQ#1Z zv+zX7oy2oSI*#S5GrpxrxzH72s>{`?73u$3ydGM^WiO*OoQZWnr(wv-acB*fvy6@q zRWC)?>*H#qW1Z(+jq0&ZR0oSObcF71##T7~&u}vqKS*TJt^>$LxZ-Yn(itK=x}%;U zDpVZsdmctQLv%67C_=8M@lE{A9L3&VM*Bgc#a>3IgG7IM@hXy)DrR`|D*WL63Pw65 z!*&vWs$itkMCjt1Ai&2s6@RbvF{($3L_j~k0#x-i((xhZBS7KswXcy@0HGBbjCt6& z0`P{!ipIAvpH(haa?tluCF5|+Cl?QXtYmC}zwyXVRfwo;d|Aa;&jm4m|C`FjF_oE< zQs`wO$3DRu_QqgYuS3i!VpA}#0A5n-^sqbsNtlzWH#+u)wjEqd?;nV4`T>6zV3G$DiKlGt!B#okKjL<+b zK7+qWHBJixq9;;zG{DvZ@iHTjq2_xqFB^{$5$Y790~J>Wq$s9qToiaicRwaLMkreu zB>NdDdd)EY@ne)TU`KzW{rD2D1-xOSztNWvPvGkEyuWc2{(dpQXg{m8DZuywug9;d zk&ZRtG60WWS7oRNt2$6a16ecbS*6i|c0*GZ3;G}<9aBPq&}s_>?vD>VHWUthf{k<- z?O3pbK|DKD0qR#{y#{%ZJnYVYI3!kM=)NHey7FLV1Wchz(<=y(i4*?EF^%Q@AlgsaOQ{s89cJBdq{# zgflfT(c=LhFX&O-NUr6l)s02`LOh`VVGU!La=15B@da^8*y;+_#7YwEtYI9kj8qI} zU9OJC%wfubb`eH3*v!CeCOxe>l=-!dGQ3yQIEaqsdwN=#Uj$w?jq3S)r37@ZX{7V{ z0g*;JpWialsGiT~)y#=B()s+tCk6W_^2zKd;z_SgeW5&M|Pl7 zbolvNMmniKvX)UjEz8=rab}p`lLtF%8P!9k44luw%y%dNpV~(C@HhioR;Z$2{#X18 z^1lM$Y_!p&I4KM%fg>^hD`^G!UjcBqwowgnGo+$YqY(X!Iz~DGpH>Hr;|{cKU^L;w zudY!&-OkFT@XDFHkO~9p8r6e744lTn%!|r^w7N$1#0djuac~Yztl2Bbe+q!$dQT+H zANtiZPEwp#l)d7-{t2N`Mp+3rVrE7CuV9Wcs?lLpL(s9lkq++ftBZM2d=e z3Y)`XnAP2gF@`%ac8M4ZfHqBx^!|scl>rSjR%KbK+QmyqRQyU<*TATr!Dd7!a4`8o zNh|3Thd<~W8cj~UEQRBcN0hpfPI36d8%>`=@`{Fx->3&b=bxl*oYprIC*KW-ig`YGtMkyYgVjjF=^1SjO zvzf7x6EvSg$>%Bn@8-r@%B~YDTeM61!+_?j#Y@dui{33*i;Y_tYocggYhj#=-d27K zySEj>rf7QKDXo${>PmBUBQ{m*Am%sy|Ht0Dz}Z-R|KoGc+;1Fa=Gpt1i#am}<329A z#~hKAgmlpjsSizvQhkb=QIyJM5NnbcT^JHWV#=j)2}K!|BGgPb%54-yiQjwe{XFNK zVMu-YT)zK*uNSk=voCA!z4qE`ueJ8tdmFT|Ek*<$+3gHAaK6^gV3+H6+Sv=(LhZYJ z+oeiUO1T!oR%Ux8Y|U%0R)Wc$5Ot=#lCwH=P^E9^V3*!%nKe7ur3HPGsh02h9wi0c z>M`b{zR-?Jx&o|NdY~h>WO^6Fc8NaH(O^sK*vphqrRpocOabZKNeK*y>aR;sXlJ7p z@~TYNb~d_etBmR}oYG+e@5s-dYrEvi&PulEeYsluRNad%H{czNx_NyzyQuV~UF`H2 zio8Ne1h-wGGCX*N%HZm1XNaY&u14zwg?C?_aD*=&lWDonuIXyy=Abq#-f*SC-nYQ4 zK`pK_E~~V~r8@7_t5k&zy4e-R(AaK9(@Klv>mu8`sUlfd`--f;8hXTLI&rnZmRE(U zKHZH*_&u(>FX}r)RSLLNiz7|0QGnmO#s|1&kMp%f7rCd0DiYSySEPSWB{$9NseHUw z^t6$)RZAW{dMUXH$Z1_^TZ(nI5!Wif(YduRRl5ZP{?iRcN1R=3eWOv!@Rqwk{#R}^ zsw02V#pX}zqw=@xbCK|0()pKPZ2r`n6#PqWx;XghcqTkDDlih5;G?pP9Q*XAb;1;= zLgY$%_a=kT(f&7sBVGhz((o8I%GntI{SrMQRK>CG5YHK!G(a||*|!*NVss=pW@eUk z&SewjCWNl;QEHA*o6@>8jwfV z5Ka71u&Rc*<9uC=qs9Y`VHyvY)0t#(>G^Xme#BXo4(*l?P{|M~XJdqM&xlIQ za((5Xl)*9%XLkOMMhM5C@(Dk#Y1#kttM?Wekp`Z5S;V zB5@u$*!5eeO73wtCN^!OyYB{<05Mpo!cF!~aVz69T6OlWlYjOs=(ccZH7TL-7uQBUI_Sd_=*33I*S zNQqNritmB7X%ij2$7t->M=8UMXPWOD3!J7Q6~ym$Cv*(BHYgKc#qV0;rwbphEZ3uv z2?(@o-%YgWK4U|yFN-&2C#MYO%infYYvJsTa0vz8Z``cm zbJ>l1Xz_hUJUxCtM2sc$&HYARlQB}^fw>ms(Ge`eomIyMZsCcS=8ek&m@D+OOVPj;1N>tx5%x42N;O6+To8(AiHyUzmB((7*lsd}j z5~Z?p>c%}z>VKEZq=};-g)O1Oql~tW<5cevqm^mFjPjgu3{MsADz2ZMDLgZl(8x#p zVQlt;QH!D;#R|WKx;&}?J^rYXiLVWh8l8NVRxHpfTNRj)jRH&P-E89y1dVcxrn&$$ z35RFWr_}FhX!e7iF#bs=a}4RlMyUsvC#aT2VXD7F?M55Js(ZiZhx29i0iGqaX0$O= zGYdnp_Dn+xCZ%h#~LpuE1=`KW4ke2P}3c{ zp0oQp9RDvj$ zL*OU=Nf!{#EM*KAe*ShWTPo_ z++LH7ksNNDY`Ei!KeTvHD|a<_TFbypcQxpQK~s!coTdI0EQ$zwPBEV1aL*KDsN(=# zH5Hur01cjsDRF>iOf~999{5GIINURKDV0pcQgnbk&jR)O5(&&}#OKe1ZTL7HdDe)7 z2`lpj*ddQot7%4^*yF2J=^#&oEO(e|8}otVwCDw+Q-rtt0$Mu_>f8d#nPs@OGTa;d z4-QPjrW=oHEs-NiU$#2LoOS=pSoc9V1KL!^dGY@jzPt+jKo;7x(Yv#V@=$l`I#Cz(SWpf&T2dXZCtTR6W~1=i8_=M2+O>!=3N%ub?h z(`Oj-d2C*tVGI!KrelTCSqe8pjNZ)kA+g^}IA7ZNd2o}98NGoKIh&oQA_H)L$$xej zeS=VH<5>+OWzL44u1C=~7UgyxHHxp$P_peDOb9u1{fBWbtsvW&z^S=*sv5_+6~=L3 z{&~moT531Pi2Dr-yO_vU&LS@pz{vq?HI@PFBz!_zI_P-MkTYb+skSe zu7265t!E*xy_kiEUp9td8r|}Wktx)?zQ^hHSB$!bH!Q@qY$ zPs<-(F|N?lk_#@NPIJ|?+&tGv*3&W(=*6`BVXiS;`|fdsvd%QuDc1xC#?$0^STTR1 zqw~N~mQcR}mTCb=Nqlho^s8i{bm>@&FT5ZB%WE578tj2cw~W5heP?Q z(IsK=yYJ{*>toP_0(_|3bh%;q^zf@jXU@3xRij1~f(0Nb!G$fTKvrlUT?7xL@P$Uh zC?z~@%?(EUdg{0k`vr&TjfKV~T=L*TBf&qzUW$1QW}OW*|25-=gw3c9mo2pkU_Mjq zUw08DEHbXEtWI2|{QM%LHv>Pq$dGX*HshC?@w>tJaa+`4qh{-^dH|rqzpq)6QxAaC zGj4}>0IGqlV4Utiu@5mk{UCI1rH2>mbz{zABav%*d$F;L!x@D}gQ!U-k^kivBcMdi zp$`jqLoDRQ9@&Km(QFes-|NN=7b^Nr#ZpU`sZu+ZVSO*7s&8Ogl~IQ`V5%#j>^BTU`dZ-*sT)}M zVnoY8iDtkI_=Zv2S5cBDz>}}}XOic0`u+`LEavC1b?1J@M1g(BQn zWF&DI@}`lTe|nAz(wv^59|0z znz`P%BvPftLaEAGMSIp8Peraeyk2qOFwaREwgIx=L7Ke55Ha42`ogj5o^eNLCDNS; z_iiu}!O(u$V7w2wo8K{7aZ8VU0*XPHv=IyfVcU&H0*5zl)C8Qn(Wt3Wz=-tX;!~Ql z-+1_ZxJjU)n~eSpX8R^1EzCk(6uGXBilu%Z8Pz!nxDw>rYy?yBZX-Bit{45(W3!Qb zR-KIYcj%s7##}C1?_DF|tPFa<(5M9J_nFc6ye*slo^Du=-51xeXs&PDZX-EE^#Vw6 zN7Z$vw+sw$tEHvD;d(2?U4?JjgIzGlQ|RkPlPwyx-L@F@V(rozh1{Jpi)h#`EIo6# z7}*h4aun98##=FuP-)k#7wTm8-t%`-k>)+08)+JBZ+Da@iu$k9q`KsY(Up=vFjAW; zaYA#0G2jMD0#*!9$7Qr|j#uoBS;g8AFqz}j?+c?_2S2%(bqt*w@-OGcT${>^zSFf5 z7R_)*3&KDTi_RL_Iy(J<;o({B*=EEz^FE^Mw;3(1DL=B}Y&WTM2?Y5IPWge`Ol0TN=7aDfS5u;cFu?`6{oe@}R8!bg+& zg%S5>XMNhm%z7&M0=AF?bl?l$40q&H$5N~{_L@$mXRqldH7!%KymOga*qKKxYe{G-MlEdGc5U^L+Z zt$#4?Y_1xnHO=ww!U_giBgCU*4IK$tLu;D3oC;wh1j5FLKNweM+H9vnc2C~3pAq>T_y6B`_uPTwDmfy{h1|7f)3_5>fpwoHyzs6((_dC4)DWXovCF+)a_ z7C}D>L*->O=@_h(Ww^`RxSC6c9yjVlDwQ@C($vJ+)cUybK!i74B*u#40nXGmLvkgJlc1{cm%4& zoFIW6FWtEibZ&c)sL;6(bT0fCH2246tOkU-t70p;=YFRM;fTqv+1 z53VC`Je4{`8~~v=8fXnKPL6Ud4-ApRr6)!Lz`#Pe9#AR{ z6EmuOyv!Ozwt0U-gTlp4JYP42i+(Z6=$Z!S9km#=!;e$cGD6JOivfS4Mu=jMCg|@k5RX-ENrDjcaQ+@`MyTBpHi{I` z^s3_SMDO=fDF5s~sv^?xfY~f5tiQE}zy6NqG~_x&#X@8O8}+5|AQ&RW)d*Hf;kKP>B0Rgf<3NDgr2e=d z0zX&M2`MI^!B3bXt-6;|{uGHMM>!(_(xS3|4Hi{R5YhiydwQc+A&KJr4qkBz59~l( z@&)Yn4)_i^FoJM_n+VhuC5eW=}i}PG9>|#I@Q}suQNl>6h>( zgA{aYs<;D4S(hqWA^0^_ut&mGHAM{sSv5ubh*=vjd!yj}@gXg(DP}olt>~GCOxjZ+ z9TMssT2M=j)h<{3tuV-D>hGyzZSfd3Uf!uKTG&o-K@i@8>joLyCr!Sg(uQJ2g143@ zPzmqpcx#)&wT-3t#v!gX8Vta(dpP;0!Uy_x%k$m?0)dT99!`%JVcj zL&Q++CSqiiH+IUWPAdB>D1lzc5O>?{a(WJ6abv%BZ@%}ads8vBuczvFFc*&O12$t0`yn`vNkF$4s%qq#^!>MzYj$Fo5u(y7ma z>QdttA~V^k$BOS$KXi73*r5sy@5DJD*6fYxVuzxOP~Grj#ZE*mq>U}a4Ak1crMOa0 zh#puOC$6UDEya9LR=-xFwy7wK<8$Cd-_2dm^;T#~BYbY6*{wvgn%?9mRB|+LuHM4Q zQ_(lLj6{R_kGB%f@>2CoYthIi|4@+s`qn=354FiZ6y$$t8&L@IKitMg{%5Br(Ti=x zAv7|#ooL3u-)SfQ$zg{}g`Xo(I(FgewG7N~8(8T^Tq=|!(DRpyB+mNQrD9uKB~dKf z7~z>&;N*SnNNYO+A^^HlxRDnEI}d(-#cNLk{3!awNmcs_JWka?gi?41(ai9ssUHWA zg(BP2&rz=qSVX>}(hj0?gbfKAUgJ#B!1w(g-I*y;xK-ma#pN89WMa+wh}wF@g9u*t zfHFR!ogTqXq$hO{-%)+F?I^BNB|C~#4i|Pr$pbX!22q0^zFI`!cjjf{632n*H$qmK zaG8j;_x@bGy?69#F)*TNyYi87LC{F*B)qOpp`5|fNwBMv>l&zL3#hD=`6giPNDFrc%idkSErQAMQX*1jjp*|jMfKn)P+bTwinAV(Dlx_ z)TpPZ52uQodZLp*(a4@6Lwn1p%%yf_-mBkFk9HB(At#kuZl|&{_KCSvt(UM4UaRDs zdDbQ^`}U8cTY8BWexP&h)E-F9qXoSLA3vIMg}4qu!)t|g#z#TQxAVG?w}6ITE36ZI zDz(r~btAQC9<4@Uz<9AM`0C4armN_w-4oedsXeS1fAe~a>uAN5B2GK4fHpx#UvG!x z3e!&n5L)LtFw*1GuM$^#ojxKkZZBLX>b05yc~KLs5(c?&DhiczakyVqpyf$mvNnO! znd`(>jq~CgF7t3$@+DR7(Gw z#X}g7-8YN=x&%8lphTBj1V0M%&Mo35umbn3;_`Uq3CxeZpNwK3Fm4b#U2ZeQQ6_+26S=)Ze)*6dU%d`-$$H zF}lBqSB_qx%DF6poy#uiFS=;AF};+or*ZuS`<4CLUvy5fS5okzX*DR&`Rq}I z=UYEXf%@JdKIblVxKsE!riE!i#05cQGY!5|xH-#2WZ|&jPVpj#-ToocBbB?)K?lIj zq3nN%B@ob>3>0yZ%8^XP<6?$^;?6ipv$P z>`oSezLsQ(ky33}pzUGqa6~S{{>r`}{5U`Z?iL*|dtbU+WY{uE4W7N9-z^3s{;I*E zj&?<24<5unGFS{@2akh;gmP)v>P6PBZzj>!R{6$e4??E6GcvR`$Z z?dpc9>dLt~sxbn>G%{a1LMT7A*&{?+TZKdhSPgDpo+@3UnJ1mb6wxj5OI{qpCMC=n zoq{=hdIV5|u+IG&HJ9Hn>TBmZ-NF)jh-T+)Uih8#79zB=1zk5;;Hn-NoXE&JmvOOo#k(Ei$=Js7&dVW@_%qEvIKk33p^} zIk%v>s=9Q7FdTa*aW)3)$S4t(yhkNwRtlmU6vA6(i+IX-M1(oYDSI~BeVAUDjV+3k z^yX|VD8SgZiF$Tc%@@k$u3^4VE_YYv>#2C_B;j?rJA24t=+U_%j22B2UKh7>2e028 zJ$SQnHJcduvUl7Rn@E~0y#955rQe}zCJW_Xm-v$K`q!PO1({RM-vZ@-mNE65%2Og< zh0MhJqrk%Aslw}17wUFdK6Nf6F4Y{Px~0U1T0V8E)aj`jckN#hUY|O@F2JX*$7D>k zyjR3%+o#UuSxTp$#Uh1DFP-~49UEvn4*CH-cS zeRI5Aw3Gs$6fJBfbN!R&Fqs&Z!z3(eo>geTQ9f6HL5?%9QJz+$g>F}@`~Mc}`TUtb z#(G9ouY~0s8h=5S(|p23u$&Rd^!qI5jR_ZEIj)Hp$#TNK0tNK|m;IaT@I?1xdH>($ zI=%k@!|{6VUWnmn&t0Fm#%iu+UkB)YIv*3-Pic9gwPr%2Sn%-)Iqb5Z{v0-~4p7!} z=gKz&smcry{(n%&X{6+gJK)a`F*h~Qa_A3N4*mTw5q0v#2|umAKCkdoQJ67V77q7( zqa>Vg>|dNuCh9ZmA{f+j$n^UR>a$trWl$*>BMznhEeR=s;r};0sVT)2h!pLOsD&C9 zJYe``!J}(|U~fbSKsfVPAX?V9J^U_$DbesHF-CG#4-VP|09d8sP&rkb4>=nwsM~x| z!Br848=tEp8*bj5FO;id@&ch;6?-iZ>P*b|1tRSdr4q(MUtApGj)y4PIXWPcEhRW| zgIyxN>%hwK$5i*juWGS4cA=IYJ1!I>_2Ecm7CDATIFyC_0Bv6g!S6T@9%5t5#u1wv zJg-3`nL{_erZwh$MlC@&wj7_OmHg<@!9``aDHu6VGpgnCZ>s9i_{S^OWv z-jJLUhL7>b=(#1LuI*LGqVv`zFrPpjZ@W})1J7Li1l2yZl{yBH-GSyG*@0 z=P9_Mi0S&2qKe4dLGjD=KzNpm!CYkVa?ubq?_Dlx@aJ#K#RzS6>>cS2?Tq6v)Nibe zjY(ql28W0|FDbz-3LA76Q`_(&Z*6h(T9Hsk^2&-tmy0_jYUq8y-Z0@6s(Sg5X#Y2b za&j$vQ#4K7vRuVSE2p+@*!#rMLRWquexQM;-_(9X<@=z>mr=%B;!jZEl7hu z<03qCA*NvSxa&#`!7LiQQY1y}pAEueGuJ_yx>AgE?5C=$gwWB=5q)Sy#wy`-AimjZ zF(T5+9_|^vhL*0zZu2@yUnAP$EWsUX#I*>D)`)58PrL_8(H@yNUCtlu=oyQh>Jz>r zxVT$@?tfe4G07Z#AG%@vVpy|h(WZA*>%M#ed5^LZ9swMErCbc^VC$&Z|!9dT=- z%?E9Od^-DU`-6M4$Nu0=_>bwEEq=WL)DX&E4+Fz2TD?_)F5L>yGq+eLlKFO0NX)a;G_4nzTJ2#y>6I}kPM-TwxnlBwAi%)-Bz zqLOLWR^{9Bml9JuG_%nM!mT}6*juuYZu~&BiuH1v3v(HR4t@Z0{wAuj4J*xNYP1bP z1YDc8iCWqd@Z;@H5b*P_&?DQxdzO)_M6}UCJl$CWhP;cWmiT-WLtv=fTjKLk4Dq}L zHHTg8Eg!`Y_EBv2p%_j(wu`H5SH=*}>dLbnKwTevEK;cJM{tPTMFTz(nUR(!V~A(! z`?TmI?C`Cl4abd?|~g+R0F>lKHyyVv6D}xj|sjzRo{-K(obP~Fc{Y})%XO?Zinc#PryA7(RZJ~ z58)6+dohq&GPL=lLPSMzz^9~j5 zgwxm|Ladg1u>N}PGm#u?_od@^0j@D&DdAj*wtl9X{~Z@zNABGs9i_VN zhF<~$jHM@cV-OC}oZZ}6#2B=5H@AQK9ue2th6qSwfjzXQV@oe+cBIuUW#=uO1_#Ur zs@m>*L?eJjuj6RS9#zG{J)%XJ4Uyd4UGeP48M0T*MaI|miaQ~|#e5FRJw%s$F8Uyt z^tl*|Anps$191L@xB-Cz`QsNN?n1btnx*hl*g?Zf#ceS;@1T856`)xcoOD7whv>^v z(UylGxlAGCiZX0H9HLQWqHTmCGUoUDXl%UTiAM>@S6Ro;_EGHO{bC*$O1kmL~(#pj@}%n!u#(O$m2L-rG4kkUdTPW1}5s$FL*? zKH_K_u+YJBIb&e*x8i!toBiK{NgSuJeITdf)L@@TyLdjcaGx+PK6j1%!gcYvpWZK; zL@B2-<@WIS8~oIpL3{U$@o06{ccKY`ncso3Hqr9$geTdT_ft%q9F}a=?(oaJxrRH$ zjPJ$k*jjz>dno9>yqoFx_YikCQThRqq5Z~HeYsG=zT$m1NJ2vnpq4T!t1T1hr2`^W zJK1rzj*z_BwFH}KAgvd<&Q0{?0fpGs2ccs?47~3k_8}1-Iq2`F*2*2_PT&ixqOc*I zc1X*qR~^zGVM7mz94=CRNDPD}==9I*2ti3Fz+SLLdICy|waulrNV89ffs}a!nvB?l6**oX7I03H1x|{VrTA$ z%sUI{>QlnH(iteml~{H%-;=Z-E?0!RR0~guBtH=4cAiY+IZ?pZW*Kzql&ImCCuhFb z2?uxa%%=%Isy4m(BN)I>H10P)H!n<3JF^P_^XT2*{CseNJ^6O38>x82=a}-r@tnr? z-=bsCpIB-1t45;lm zJ#$8M^{TRblhqezMEWIs@x#}gU#%0WWO;HHzHv_wZWIXD8jFhOOSU*CZJX9k&SY|G z{$4%rC7F^BYWt4L-@=}yVyljoFmqm<{;o*+2o zBjJ6gyx*~aE(?@=31xPm6bL9#wn6Y=plq+N0aLjbP(qNL7^;dN3sT-$`b|#WE`4kX zYtPQinh~jCl$i-n|Lo;4(G(agFS9T7I>%!R&qf5xJHQ4$4wlU-xNTJrks}d5F+?)P zzX_3@(42aqvTo)dx#&x^n%%Q@@}Vf}s;{Y`@_N5v0y<&LVh(UBR5AxJ!lcibWpjX7 z-?X*|3NyRSWwHjn6DEiAG;b9y`*1ilT&iOOnU{Lq?;~@(7A7p zkO_W{S>fs$>nMpwc_U=KNVTFKOGY!-(}xlAZfw}MkCe@8`N*cVW;?tx=D3j0S7I+w zqR7OPe)7dEns*Az`6x2 zNc+y=g#_O%U~ESM7VkhYeG6C+>=55ZOXV~kT}8G`QkOs}fdEb}N~XY4&wN}tZ5l^S*oiV}el17$A%U8nsZy^4L7PtR?{u`)RZ^7VQ{wnWfh z$QY_3WJIE!C&cY=eWFh7;ex)l0bIz+)<2~_`HO0Jm*-GPIfr7%;^E&XFU*hE?q&}S>2Y^!@PLRp?s*)(XBDgV8 zjzX{_Q4U0KX_D-LU}BQ2eSt2&pCn&nJdLU$6Qh*A7K`I&JKuNGWL(8gMK$F8oZL8B zD(&i)WO*xqzLhMm;^3n({rATAhaVZyg;>lWZ@DuO&x=ns2>DCf48j;X46Ykit`f*m(}uFDSmE zIFaHsm8%}ICM$IppWmdrYs+eJJ_hE`xF$0l|aFbWnKFsVM_-~rW+bVT&d(X;eCzeBU<9^4Q5$ri;pa>7A?@? z>XZ!0*ZsbdA#3|CtSz>4vha&na$8HkD}_t!L}t)CseTh_9gN^QO6^1zQTHnm)u0JY zR2}(EAicdzyPL@FmC31Xo60*IY86O8Qt+xkjKuvMgSqiFhqh>RoZfFLD{4h4&191X zTBqTh~p-t!+|BBGE=xsuzPEdeOo*GUhKJiu6miff=bW*D6Z|>e%+X)X}z`SJ~l` zXHiEIz1vQB3uDKgp9^SGN2R*V?|7E#f@zwrR2Mx7?Fo+Q z2-QVhQ@rIet+mwdr1g+)oqk_y>BMW;;ZEl&ETXf#%+gh=qJ8V>&dy3#+1}Z!t8hbD zS3#(B6`WMCbQLbKm+D=vbd}|o|Guu$i3WC&RnvVZN?2(E#uN{O-k_+EDF}K)xMvy7 z>Y{a+@-7v17_~6Du`q3>q$@5~hl#Xxm`Fbz=AkR}x|V;%@9HqeuJGzGyk4)T)?F2< zUg;{;G20=xYQ@EWEl#~sHmpo>*~yAaY{V*C4A?}Yuk>m#EM(#qjG`-L6kkm7&Q+jt zOFO{^QVCV*Chzj?9hCq^C0k7K^jbH$kca)|tL1k9)497(0pacR3Ed^{9i8qjuSBjD zS6%~S1hVz+A=52QDvSl;5*pV-=@*N8oULE{&_g~7iEVgK85f}hY`!#LBjxslA>a^2 z^@99^ODlTGczsPpCwFLNn#6s*lq5N;mrOVtWhGOv{r9LD$`^aFTPglCIylSxMge zZU!g(1CnuNvf=hyWXxH%`^vJ_zEz5hN(ExpK3Q(9XUVU5;h3!ankxvcvI+3Ut@5%e z*hI);X^#t@e3^!KjDLu-ZOKiBPcEMn_u@a?jO{f39bvk=wsSgNg(=J>Ia zGMmI2RQgLKE+M{M-i8(=4^Tkb43Jmh>xluf;`Ji>?(a?Hx9_MNh-W8J(KcgjHf{*gfa`c|NB zS_UqS_?~(Uf_|kQol2y`gD`Wwk8PDx^j-42FHgl%k4xi+ z^1ZX}9~pz_aO*Xo9O+AWMPH$5AcLYyP$#e z!^5&&g@nEHbitQK%61i+x`XmZ$wAb6l}JfGxT*Z>8&Yu{)&)H!Y}-SC)f9;4$ihun9kR)xY@ z6|^$zF*(7W;#GNyhq@jMQYjrCSF`h`$7Kepd**SO0z!T5ars1yH94x;S8!DGEL(B; z7))ZWY3f+nHd56z4!0bl3A@I^_=1EUPsomOzJz&4!8KpzEVC$Myc{3tizuh|PpV3{ zkCXLj#*@`dOaOCLN2rGQE% z$Y#3bX_PZr2K(W@kXlW|nqNfyC&~s9s=u-B>KGE5D2L)!kdR68QWWix3$?>HFvaxG zNiv-l=E`uIKMAbhoE#-|8aW(0sZK6}bCOGG49D-M*D6ger-;db-+l_TALVO7 z&S{!FS=MomJ56sPv}*9nkb9cM6j_I6O$UrFQ>4(HW9P=@G-!%^9GyEjMYi@u@1(|4 zL7;Ea$f@!H1V2ob-4S@6l}SBM%>iYwu(<3={o+T6w)Ka2O2<?UoF;ETFl-uT zKbXPzX|N`qgX?@Mp9WkPkU71wp(vyWIKGHxSDIW*r#OBy)grsJ8Pf>D3{Oknc$Cn? zBpdP^?*F`u!MLv`NQZ}M^(@&)GZi(}u>$3B!BR@f1GxQkIR~oAadgcr8B9;*NtYj` zmD9_d;{?6$%~;oOlylBd{pT>sx6QyP-~3!!8`QWVq2o!7owpR{{QSKKOoRb5Zut3$hl@=3*=oW~t!^-_Vu# zbt9h!&XP5)Dq<;rmgILZm{9yO71B?$pgk2)(rg5ksZ`q{E3 z3hkRMlMHXNYp*jE+aQYmHdB1QU9F^R@@3yZ$gq?$T8i^5qcL-2OID<;Wt3lNn8b2! zWs7biEt(_4LX=$FfC?u>Ce!XYGX0{9r)|X}fqW~WhTwLlJ9mbru*Le@tza;n@ZHmAoXYMS6j3@d06vC)Ye^*1kk8 z@niyAAT5w5Dg!x=K7K`3zxbY&{E?nLLZ{~{Wu}srEx719sa=5#I~P5C@V8=TpNOjj z(SA6}qLK4uV=W1>D0M*^NCQHR1u$YL-RO6-C(tVkWQ~jNQ~2jL9x3BhSw|0PEbKa< zi`!q7PhT`3>ah@_6JADMi21sSau#CCY7>315b7FqfQ6Vwo2dG0axjAI*JLM_YFUnS z)D6rFN-?PHoACI^AD%=UZ%MrUI{kC096;{vRif#dWipJ0E|OPZfm*Q$2A@q-b1~MZ zO?2&I1+RFqtfR?|@9^G2M;FUnq&`*%speZ+R0zwX8lNbnsvl|if&MjHBIl*;e@d^z z4!sT|NDc9f`($H4mbDn844qyg@3CtL@oZf2;8GdK!t;dJWwI}R5+VLBN?rz|%qE(( zO!ax)GDw%3=*MM{-|#Zz8)y@>pf^C_8GSMB2_d8F%AxG8F->ie; zR)}y2(Ba?^$kG5maClj(D7;=iibk8j~7E&Pw?pUAj^l&T%K{x|Qc7j(6ss zq$;aq!td3gTcT0G?NnL9(pLgb+qzS9f1)q_B(pq=@Ysi%Tjjkp5eUTjo^ zHkCr(metQ!*H~)2M#j}FumSVF1O`L_E&%?0fa%DS;qe;fQ8?@MAw?IaYkT01m70X+Zk<0cE$=BK3^-J{k;s2QsjErEI}JL zte4Xw6{#{xrxw%ERd8O2*nnO24fNy&*rUCuT4r^zBFYp}T=djCu!DHBeoMnP%c*#> zO1jR6%xU!F#!8C3vPrt^Ds}(QrOoMQRW#49K&8Zdc7f?M=sj8ARL$k-_@SOW>CRT5 z=5U;VSoof-!PwdQo_rYR(YkDbGI}v9{`M_0O<&R4Kr7CAr}i*~ZIu%mEB@~ScZA{` zz%m04JMbf89HnnGE)MWG_*rar8$V1Nw#ppvn$GV-O8b_Eyf25xDBMRO)uMz*j~tO&k@=QFx5>daKX-bbi~uiE{9KzG zn4hntSGLI^XiQ9rY;=(enL)EkWSc5zDI_Irxx^Bha=(0t`fiu?s*EqPWP7Vq@naWlRGH6S(6`$pe?yc{E+A}U>UwGfQpr#)_e>QSU$G@8vZ0*+B9C)w$~8v z>x}`a0TtE|HkEx#`8(td-u`ec8{edAAB5dOrE7zNY3L`ivo{r{HqWFtY3(O+sdfNo zESBbwD^c8;Fc}!;L03yCn<+E1Qnfu5H;yKXF@4V(h>+W zfT{24Op^Fd+=u-3S*FNG!k~jD0x@%`?OtVW>9<$*1&tK%l?4dy`dmKU_zs6N+s!BM zJONh*Wx^A};mLOlPIYn|Ux^3dIUmTyhufJ2_rPjj$QCzkd^XrwFFWp0U?#t+ZNOE? zdbSFB{Qd$A=Xm}V(AJTsLbxhbQC^r4s46v3yS72a9B1X4QNVZk!Hs7e-Z(eW|CV&BirzMm!DpUCI@+N%B_LjK;P!@xo-exVf>Sn>J% z{RPH9mw)*Bv_B#XJ3B8rlF%||-N5}3sSR2Na%MNe8*4_U#3B1m$|;p`=D{k~MOX@k z+G9|7$)`o7vT?TJDJtTrP^+GTDp{_{tfS1}cXCzQuk4-0ZCHr3FM0c6|6-t3rG11< zDy`5?s|4mAq^;qp>PsuY^vlJKQclm;NSvyS|IFYN(C_WW9Hd4;W@@LeD?tK#OFDu5 z9;|5`tdhbT2>_K6V~J7v7?slF_~g%W`o2t#YHNLCxp1Vwi68iL_GpO{%MMS7UZIZ# zf;J*kYv_Z$!JenlrgS7hf1dLtj9sb+JV9ThPrrn*>o8sZ751?Y(^Fr`C!G^!uBiUC zyfqNt!}iHe+SI|-Kcm37T%S2pQ#=9Pq60wQcC31cmk)J%8>?)MJrFaCj_-rf=`cOC zUv>!M#?q?&w#vIR5Y1jr$Ma0EZTkuu5o4G$)Vbcsba^CrklT4 zmY-+7x2>2eVL6q3FGpxAri#cNP5lqZrh4C6!QM>$kIVS@%?w>Ny0RL_`&E`Vnz9Zm zqb4e=PsInNi?$tx#=q+zbcVxp@}Nx7D!GDGK(!9ZhFS^d2v)+e?ejI)S4e{n!3h=S z>K|pJBwy{IQPrNa`fZtiRY!_w&|zi#^fjWS9F5p{ST*98a+&Ja2pF%9oZSd;G1Z6? z8gxXND*kvQcG6wtsu9!5;bT!s+sl>d=BQ=OydtGt}Dj(RKCW-^5}U_dqQ1ig1u zraN;Uqhm*v(PsNG*i&}>DC4vZOl2PT81?!A2Cm%4Xe2`56S+)U^@9xa%a!*SmHZ$Z zT;fGDkA#hc{Ku>*n2+@hBa@Gd-ouoBdxk&t2vyR)0=oA{^tq6p=Rj4go9Bo8B07mg zYIq#OQ}39v(4l>nHCc6FGi4t`@e(TFKtb_O-bum75noD;I5;PHKRtu^dgXQ(N^m8l zr^Jz!k_7gV*AK|#k}t3PC^XaC<=Kcheh?< zpJW@hRHgn5XJ~|de#REZ5*qolOw-eaAuva{!d-bf;O0VxS+amL-LT71MRmk#EH;%rD(#rZh@a{BCq-mkgxq^ubuGZAIadW`dfc8Mh@z>u zT0vX9qx>x1=>M=^WUM2B#{MFkyAnNxpIYx=MY$7kNa@{QWS8{3-QG8yOi!Wxk?1x( z1@=cQKJuy6ukxBkY#(2~fbHXGl3LTak2Q6lp=CizP(6h4yrw&W-uM-63WxCw6nvah z>GZEQwfmFH3A*VN=xyR}ptomEdFjn>DvW!a%1-fwd7L7C^MdfpkoPzZL;}q|4H)#B z4MWckXngls|F^~^+Sbq1D-b3pB+C(p<_(^i?`wBn3nbc!FG1!@1ZATzBZ$F=8q`Ly^ZZaUZVXj-n949*=tKj1Im}qAfquF2#?TyxS&Ifc(Zp>I zlXn0rYhnQzN>SH^i+g}$Zyt+N~y`e!?IFpK#oG`aBgm?LpS%gFl;tMzz*QH zpTI|0$81YXFU6N~tK+0^@DZi+)nJZ^ID7?`Lr~>#rxli1;bto=w!(ZXEI{a)Fw+*6 zNuh`lw7-fw4LBT}1P&mYjd+aB3hZ8?53(w^rAl-NIjUDr&GIk%HcC@yU3`Aha*O(Of>ph~2JdX;*J zh0lSp*D4}LE**sH)e+T~I~6wx=WC_W!3rD@#l^3{9Z->)giEO!sPYDd9iM7)L4^d$ z%5G;=C~H-G`I0K?8$~r}<9X12%ym#%XrKsDTBd{MTw5(x4OGvyEzUT9p;R!mg7IKr(j+)t<*?9hgAF+#g;$E zDC*FW+GaGpSj9|D|LL4QGz=*9YrA4df3lw1&77H-cY(Y)==r&lipu|@iW2uk1VS`E-Ej$toHpQ6rq>ZD4uG+okJE41O6(`P&=7vLCHmU9P@7`aRH<4 zA0UZ;6O;H{fJuzT&XXdfvxF?g)&C_X(fDj8p-6)lr@xL*q&LEiqoC=>&gn%ZH2o)e zQ99L#H$%@|^8O^azgZjGk1ovG{@7xdl4z#>#$lE}`C+wOo7rv?~w4@C}7am1IpV7^cL4NIH61OhWw$)>LH^00_ZrDe0Jv z->goqu=M^s2Nm8|&7d9kRg1&zsnx=|^g|A%!kuCp3gEVI9^+py%H~w%5Vz5>@#L(H z$8syrV^x*%UamGC<2V+!C%y6LO)9BjCS7}i3-~Hhznc{y+s6ekfnEEr8wRr3K=fxVMK+TE1svao$);>u zw)yGLAo+K2{3i?pjAPH_b5?)s+FOPJNVeF8*0Z@1!$6=i9NC5ePo1b(BZmzGK^9|R z!vKoIXt2G8nV4A7isYwG*(!Sw^8(uaRIq8;5VzMfO@sNI7o=@NbWoEuaq(0bV@9!o zAo=el>_YSJ&(g-!N@(MRMH^61{-%u!7?^!*<9}Nd{?oj<@NeGiT>yWFH#h&|)`l=G z@!ghp9*GZp6>f#NOPIy2$-5w0{b^~=s8pKMZe-WPjZsN-zRKXHh}Dc`w89DaRf$A* zju6SB8w;8~sm(K}T3lS^0^RT$)e;63f$6i53$Fzg7FeMYdh0;kVu-$$s9%E-wRb+6 zbce2uokk(m4mww;WnmA^xfiRA>vLBfwc3=@+HO&1QW6Rv)eBJlP-`DR^QK8$m}T?R ztDm)PGAG>?OSuOEgY^n%i^jec5MpXZ2wD#jmF6@sW9j(@W@0wWlBqs9@;@y`+H$Lp zSN&y1JJ0#t>X=^bO{^w@a`k>398$ZXR(OIB68UT} zFIaQN?PwD)4)=3#)*MSQD&?%WRwN}FVQFYqN-*_|4vdF`?cheH*Du+jrIR#>wOgpX zk@*4A-)?MXWasjAAHJIA*fl{`9T(X$Fb~OEZdGoN_`)NvsEO@)?gp-PVZ7nuSN=u2 zJe(s7tg`!6{&M_f`4?p{3+!5N*J9)=b}?irjA|KJ6b>5aN}^oLwN5hE%HgZaUC*^X zEY*=7fM@-9R^h-)fTcz9Pt?M53{P25j@HHzp=TiK|29)C35C&x}1zyrPbAX8sb(%Si!;=V4Aoe0q zEX&Hyit{2LC?|L!1AwoE|F*Gm2xXnup&T`?Kw^0nRs%Of4V;D{Pe;L2yfm$SgH_X6 z+~vmQGAJ}6kHf{jssdS7_O!E`4G`eq@TngRC-AxfLBK$8dO$2U#Eox^G6Qs@`3#V8 z0=c?ca}%Dv_~wc#S}jg@ zKI=#cVmeDlS5kS;f|YI087gRQ*2vD|;a6fh76-ncAxPKB6jKC>NkkNW7UE~D{>gL{ zrGGMY@jkuJm*WWcvx==%hIQd>alq$khBuR0mB-Iq`~;Kd7NzH*0BiGz&OtPDczalV zbHD>zLVj3$BYN%aTy7V)Nu{0> zi^f{y%a3p;xTUgWNc{`e4VV6fPLsA~GJ=1!HXp2}4)E}MGU2YpOhOyzaBDNZr4@~f zW`RN6lg5Yjr0aE+gHNlaA?y3Tqzo&GI-b#9M#`;xppy0x8ukM`O*D(TVZc8~V7GwZhYHonv@g5!>kvrt%OrzumSMi8~X zv=S72w^O6Q{6-bQK ze!!Q}i;v>=W-H+IWP3GgaUIOM`0Aj8yE>Q&N#4>&?b808o72H;6QZ)jQvcIc$T`TO z0mf1+h?O1paq3QiQ)GUx$Lt)ZW*|Rd_56#F=cCj)kg7D{n;1b~dCcljiEf;wV`Fld zJCPh6%|<+}nshX4>T_eL$SvG1Pqh(Qo}8R8*OEYhI!^a=G@GIyFLpE=BlxhRIfRRO zE;9|BMUOJ$<3p_}P7TfY1bX%|vn66!ekrC8FEg9;@o|sUHuosE4>({s@MPZY8s)C( zuBnWqiLSXoPaOO3f{ms-^-`MdEDlqiW6afdT2fmHZQm3ZlkQn#L$xb%cyOWy*ZL&z z>fk93g?E%IFHl*){lta0tzrxkJy3pu_zRIbHP8i#5Z;rnwd$_oztBS>`;YpW{l%iS zUV1J@w*EcQdc)aR*QkTkwYV;*a|m?V8y{Wg)rhb zR$Sk{v-Zom@cxjNfvu3S92wbk)G7<>huiffkDWdAPR~2KT@LJ^bnvz#->Rx0+inQj zQDjBtT45fZQ3R-5fOlM|9YttI2Ih*>lYz5JRtsQytY&S!=UdD6yXRo2ZeUP;L`nmt zF~t7#112$q1xPR?{~Nw(wZyG*)7L^2G$Y8 zEXv`T3nyuAVE!z`!MPZfxV8o2i6d{6!}AK~!S#yIc7?O@r?j%G8DHc04yQXb9j`d@ z-vUQ9E!;{4?~aOY?ilh6rwUG79gK!7Hh6NqNgDW^-f z#U&8J&vo?MDbDR(}}?Zn#hed?l9W1!bj#>T?A_=sLLV zPZ)qi{MfOAn(T1mIfkpufgw7U%HE8Lk5s>z5$CO;{@u*!HFN}kl;BXimVZ=Kb6}}p z7rC#5MANOec`rSGwHcA%O~NfPe05qTPBgd{@|_{yQ}NZN;meT08A4b-QEM4zIC`~d zI=-jK?kcF&9n0zW)UP`hxbJCXcQakLg)45M3peOk^O26uY+jtX{MzoOVR~E8O6Bnc z@G`5!t8ygMWqr(K=IY&gnr$24hHTs_4}|l%?hAGFiN|m@|4J7wU+Zm-@bw|}+)ifn z@b6^Wxt;9aL-lSXf(UP0>rkWaW)pO?q=)M5fgWZ$x00I-$M^<4O?5aKjlLr3LhUT3 zB|Xij0HZbji*-a5DY za@gIr3x7zS8zEMFPus3j{XcM>>VMqze*G`0(Es{iNx`1u0Qq}l`L%EUjY#x1W|wMA z#kn{722=Q^2FuHg3MFteDwf=!$ZjhF-!Omf>y+JXyHj8IlG1IAB;BZBw7Su3t7(); z>`ObNEq8Nmxi=~lyoJD*ljUOz$vH~gM$YMd%=%s;+3Am@HZ-e`*$%vQcOUbzNX52e z!K|Ntj_TfI4r=r!b3sR&0L3Wrrl-YF1GZ~M8t|?at_@-iPjBC3)^U76`))Gty?&LI z^syCgwZaX2b=4PZF?C|`!{osM?`O+U02kq(vSk35;-9XT0bG!O!sN3dhW z7+M^j@=}OHNJ_`=6V~qx{LU%U@vZPX^KQ>L>ywxF+%kHhzxjk?H>KTfx?3OoSUm&l z`SJ@V9v=HS%oPy8@-?m#=e3?!x)(5}E|_ZqJ%y+nviap$ybo@q;RAr{$+w#^Zg1Av z7s|TxcC$^DQV8U3mK}l_apWF=Nsren@#cne>?aCj2tUK(`HF@Oz1I(Vz zHs7(lk$VY5Ey#~8QyXOl{cF@kDBqjsY%}qp*d_QP?sy13B>D^&Qp!hiSG} zsU=9w;QXA}*e;U;s0|R|1yYU(t^og0{E>f{HCn3TIW4oel&@qlGBT)!UQnojK{Y}p z9Jk`bf0%&|$9MF}K(k3r1*Fs}qkwa#O06;|huZ25G6x|4#6e~soj)J>0pC|gvFbzs z*Ms~KcbPqq|K_{QrxAR6m-#V*m057d(migb@KMy(hYzl^SVxyM>ln~6_m`ZU983?5 zz&ls>BbGB^G=y z-k!f3cx$e@kdM-g^`>?cbF9)n3|gf%Mm`*@FxX;8QP`OAv7h9!>1#BNdmVA-bcl4mSsAl;&FP@uIZY0_8Vx>?KmXh=pVk8mj>ywpW=N0>FFhKE*RmiiD|*pQAqW*WNwoJN#9*%WAD zwfntDDnt=R@g+9w|3}@s$HzV8|Kl^0OOvK)r+S_DyO&AYQi>L}u50^_Tdm9T*_+R2 zZ+wmUvt&l8PJ632AH3))WN-!lDD{SlrzvuIH-tRN- zNxQ!Lx&85LACvPu=XGAMbI$9$&gFgH=Y38Rd7|t>QQg#aQCI%TQ&PswM1j*41#!Bq z#37366;bNdUx|{I{aTdt-Cr9eWtONbF2o0tiO==F3Fo8Z^eG|bCbwr@ zP~G^O$YdyS{cnsC^Pm+imjo*4o%z~2<3ra*piZV(}K~zDBzdJ{i z_{2G)#81wNq}Y4j{(G-AW)`oCPA_ha+27;iFHvd|#BEz+9-&OYbnmI1$7wQ!80fne z{}WB-5x*$Q2}#GNz4#PFVH&2HUi1f}yew!%%{05yxMrGgxwY~hh$!PjPwVvZ(E)Tv0}GX^1K)?uv^=aoLMSag#35ZSPN)VqcsT zCL0~!_E@3}LNOD|Mz_&p3Y2Y|W4uPEX_{ji0mi&2F-?h1E?Q`gUn%O@;-W)e7m}2O zeC;vereT`nwT(ufdC*Xig+|3oTsa#+9^5IA%dPeK)McJNQ*K60bIiJ;j9sK$QJV9V z%SE4myj=A8#^u@&Kfgi@aY-Ul2YdWk0-;+~Ln2b6$HMfyai$fAOrsvvm+)F&9ECQf zrN$DGIgk@sjbjY9cJ8y<6gLC*BJ)Yl9cMl%H$|Q4pIzw{H;?cl^GUm+jQJ!Xs$f24 zYoxf}S|i0hZ%yQ*;9{|x_#7`q|4cn?Yqdl5n8x0Cm6=jWxI0HTNu?lzNg1ojBU(W% zA6#XoREWs(8qTfQ9Dx~fJ0kOHZo2{ zNdy#BwDWbIiW103k&04oS|+P;SCmoFAFeYh%79j+qJ+zhq;&hqyWF~<_q2E_O1Swk zDoVSeOuG45y3m^QsOv>V*IzFxdh~jzNE=jk=JpIKiBPsupltq$s1Udy__6ac~!DEA4U{Z6)1|=rX^%*3(wn z&5zMm9sv|(w3T#4Y0mnaL|f0^B-#qztPLu9i)T=oX+HHxH;VumRAySSL7fN=w=0@H zPDOD96b$N`TRauz5niOCgqxPhY8C-SDthl0qoNeJi&T`~LFd${DC1^C7j)6Bo{I92 z%KR7=C0$V_-Ha8aZ@s5n9k1{J^En`UOh+cT&* zhf29ZO);|I!(n1m3*%bRu$Dw#i?o=QbbJ+_nBt~kEN!Pdj2g3`6{#`lvYYhdNPs!i z%J_b}r^ck4QKQC;E6S)b?uyc!AGM1b54%&;c;=mvXF1JWc~``JV#XJj{4mD<#QcZ5 zyw(^8aog6IL1>Zk5>x!9mboi3PupY$;YCWySL;fWysD|G$TW<9i&91{X)qM2CG9d8 zwQvhoK`r0i;Hf3<%%k(#TBL1^5F(i%OM*@EvIkP!~G?9d$aFsm7aY+b+`9; zoT-u)n5`;mfoz+pD&K@WF-d38%r-L!pxsLm)VDjl$Kwq0W2OWYldSSR9_OpP+2vn4 zjCzt_p+3#zI)OYbj7h+~cVS$JI#00;ekq;@oinhd5HPx@r>lih8!(E9$B4 zgnIPjLb_5Ok0;8om#9Q_s+#j6)6~zqB0K7b+qR4D|9(=IKc{IX)~O`$u_L{=pxOO0%FAsT4=i z6st7lDn_gH>iayEX28i@7gUOfMb@5#sDes&yI)lLhxMm=Ukgg=g^!n4PZJwhU8lKD4r~{Bz`cnltNW$28A`E6OCBc13B<1?k9F(M|m< z9a)SXLZu^puCh|4+f!D)#ILMN|KcetE#c#56Ij_UR#ws#D#cJQ|HV^Q0(mN`(UhBx z$#vWnWt6q_Ax~KukcyOr^Sz3dm3NtSk&o-~l$CI^W0aM4MVVytAuURCzSbkk+U;Rc z*0&yx+=edx>P=pI%Lb)E#`i5Oin6M3xS%`=28-G$DJf94)9VMuX)TUS6gAtlmYAc& zcpPn3B{xONwcVu=xk#1V22ay5Wy05$#di1drpOzxfrok{%k*%<+eeD5jhBT$1^nTu zWaguh|3LgR9*rEQPA?6nJLf%#7doN% z>*}3M+B;saIg#gUk~pba zw6LrDmO~|`9-HBqX(c4?97 zy3lYCqqn?Z!0Mf>QQ&slcrT=~5{v?|gQSpY_2n&|0&y~2v0>)MxA87llxgEvY>B*w zqW$4D?=8{5_?F!ap-f%Z*3+*=zK8hBUXOfT8|DBc78z!*D?rCz_qw#_4_=R)E8{E+ zp9`tj3y~Ui{ZQoBU#1>MvE?Zm4TpEbHQlH&B#1Njadigj0&N>Rio((P5`eeS$I8KE zZQz(6ov)62BhrrSeD+4922S)%Z1a$6rHL`6;toL__onxVG2k{gqtgc1i7^Cq@tdAb zw=qi3_)SZsl~O@Qr!T!3$sspAZ+S-9jNBA8b~coPPG{xBD9_A!jlIZbX~Ye#0IkzE zbCDxh2U{cOR1?gim$pWJxgzSSbcxoQtI{Q&O2e*psm$nP>`X_5Wa@pfbx5_s@!S=xC;JO6+~D=(Ek71Qh}O}K9Cu{)o-`sI1LYbfRR#b_zM>Il~T z?);+8SRMCHWF}vxfFBkDRoA`!;p&a=CFe+o7kdX=A%vRHy+GZXt~Yu`P=+6gJU{{Ooz3$QM zhkctbysX@lq7EIFIsU&7N4~-5j`i5q4$ix zVw+F4^Ul9Uu3`s&^haopbJXP{kq3%=`>M=Gk>yk7IN8_n9YuKW=mh+qqkjKaY`V=V za4+cm(Z`WDgTda;qemlqm4?piROgLFE}q*|a%i>Q(-_E<;A0W)d%$-Ry}%8nD*S2W zpl|OSXfEN734T71z&;4>i@*`1vM(a;x((bPQP?Zk@9h;tZ-h%2@Wm6{N^D=q#+M^4z?4%_c=`e;j50dW?U7uszYxNUUi%`y&Ag~d2h@l zZWU+;aY68UiE^=(4E0Hr&aVWm*`ZlR-fff@E$7b65`3HVvl8oB-xlC!bun?_On8j@ z4^Ytm`vU}Hs3PCyTJMv7-_ck9w;$2PcsRZPD>`3hw)+v?OP(>f_JOUg*rwB8>3vD{ z+BiBaY=^?PVtLpjI!JyimK7M2kHvB@NBwmRs+4iKODE^Lj7a|}(9|2-NGIh4P%s0l z<#yv~vdtG(FJJD+w_LIlUQSFHh5^WjK%ww`wEfV|F`SO#eF7BnzV#_EE`<69g$4aM?yutO}hfNmXI*d_n?T5X?_s4hSLMps35LjJG|dLHw@b6K#B z%9p<<-25^3EIE&KjmBJUCE;O7!}n15JZ$sPwZX`3_ymYGLYxH7hMZuP?4V6U^W0>d zbPuI9d3WA+Yl|EAadU~3q6E9Uxq&}g>J|aHjA7ew9tx36p|8rhI1Zd8#x}KPH|^$1 z>;iM?ZNPCiJO$j~;x1rZ2!;Rnk}mY6z-?}LF0@Zzt&6k3*AP$Jxg>_eTY6oLZ=TXF zL@B#mh{u;Kct*WYt|9}{9If4$bz== z@wg_2em?4*xh@xF@S>eh)!ItySD|Z_icGZT?`XouU@;Zoz|}3fXBWzBbhm5UgDQA$ z)l7BPMC;TOOz^^0;WxOm)&yL^5yT10G3zz>qOU;V-5j_H4Lj6cFXC8D4lg1%RNi}q z>_ncfzFuXWG*2WiN1nJjTVItSL2}i_&1%bSrL)v zsg)rw>UWc@-6m#VMVh=Oen{Ot$@;OKJRi-9{+kgF({^6`5P%<&eXj5!&`dS|(2_EB zY_;|M;EU?6Y7A9L^-Q((G!=O3WNWwJ$LiV1*6-nbeTuacoO7mFr%${4TvuwbwBJC+ z*u)teWBA+kJkXustb-1evGpw)TWN&`kAl(eMBBE^%POhEeoy#4^vDqBQMsb`rkJWwQ^(ZCA%g0O(|yLE77aE@K|&kE<7HciNM_gC+r_ctIad5#jydG$bl#8V)n{8 z7xSCcyvF!UcAt{jQ5Fr?w)L|IEZI4PZ(U2mQI;E*0Wi?lLw({lWcEM}m1qFGa!?iKDOIE8({}?!J2OTd}nMR?JP0 z--`X)_tNs27(cQ172}Mse5wfDY-wH#Ld0|rRV_UnIVF$pCv7M^jww6z_@dXfaS^>va!#27IFGh3+wP22QERsHJj&;E7sraNW5Y9ss zO{GhUjJbfNHqEhiN2HJESWBk5X_s<%*g+EAbFTH>>ZxEtBKYRIBsx`HH`h863~$Y~ zYIhKZ9#-Ck7)qhl9h5!Ks+}g8U_tT7%Cr7T&>tN;&zg-*;Xj#Y?V~UCkQQJ@n1)Jq z&pc~EZDADuhgSu0TpuZ4tg~I=^n}07v*uSxOVXcOtD5=N%%6>GT4;|<856Wg0?arw z=7}w&gl0%%WjjN&^B|g>3+d!|2o#N>3~p|sdTLo@Zk3duo7=CuP1P)`o~B}1Ts<~8 z-%{hhuKr*Cf=*BMzTlwtJ;t5XUN}?{_D-?iDFKeRDY?p4*PMz49<0r z@kez-BE_^#u33cANt6*9!2LI%{S6c0CnwB^LXfPQ>KM=$1rIDf~vdx#B# z37#LCK9j*P7tCCXXj4y~G<))VN;0XbKQFNC|DRgX_-uP8rF_9NUJ0$pbO!&!1D|96 z<%<;lcbjKSkMsY-4_rh4ZI$pikpJ=B68{60#Pk(*g>J-avH#L}I$vNV`1l@?qeDL-wg*B*N!{bbIPiPYU*NZ@s!JY^;Mrd(By{aL+Wb} zRqTaprGv}V9gD5Wc7cp9F#qb_pN^55QEQf4XH1{Yt9j7TVUj~SFZJA2%|EEDw&D;@ z0ufO;6GOH-VQQ#ct%y!JMs*!jwqjy|M;*9}wKQ~vM4P7KyI8kO)(Me6VEB(&V)abM z3012&vyqA5y(+q^b*5DaLwkNn=a3_M>dz{DUfG#y-fq^U&}A>FU3asr5CWsGS4>yw zlCny5@^0389CkE)ck4H^aCYk|UTw!yTHq{%Q;K6;)wxT`@D+1?*)P(X2Y? z{tik$$tB;r+`8Oi5Lp=rrxmJz3A~F*s@h`VblzX=ZJiaozcaVD6%0<+{8V@uqNtkP zt?%Dv9QY3iCE&i<}_DaQ6N9wcQbcQ1L>&m@~v_@vqOa}5ED!$HhjaJ$~; z80&fLP&%Pj�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