From 9a9b8f6d00f7697f0c573f4a63798649b0ce9865 Mon Sep 17 00:00:00 2001 From: quantumaikr Date: Fri, 10 Apr 2026 20:12:35 +0900 Subject: [PATCH] =?UTF-8?q?fix(wasm):=20drop=20pthreads=20=E2=80=94=20fixe?= =?UTF-8?q?s=20UI=20hang=20during=20prefill=20and=20generation?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit pthreads + ASYNCIFY conflict: emscripten_sleep() on the main thread doesn't yield properly when pthreads are active (Atomics.wait-based scheduling interferes with ASYNCIFY's stack unwinding). Result: UI hangs during both prefill and generation despite yield calls. Fix: remove -pthread and PTHREAD_POOL_SIZE. Keep ASYNCIFY + SIMD128 + relaxed-simd + O3 + LTO. The emscripten_sleep(0) calls in both prefill (every 2 tokens) and generation (every 4 tokens) now work correctly, keeping the browser responsive. quant.h's matmul still uses pthread_create internally, but without -pthread they become no-ops in Emscripten — single-threaded matmul with SIMD vectorization. Binary: 384K → 320K (-17%, no pthread runtime). Co-Authored-By: Claude Opus 4.6 (1M context) --- wasm/build.sh | 13 +++++-------- wasm/quant.js | 2 +- wasm/quant.wasm | Bin 336693 -> 292933 bytes 3 files changed, 6 insertions(+), 9 deletions(-) diff --git a/wasm/build.sh b/wasm/build.sh index ab6452b..04fbfbc 100755 --- a/wasm/build.sh +++ b/wasm/build.sh @@ -1,12 +1,12 @@ #!/bin/bash # Build quant.cpp WASM demo -# pthreads for parallel matmul + SIMD + ASYNCIFY for UI streaming +# SIMD + ASYNCIFY for streaming (no pthreads — conflicts with ASYNCIFY sleep) set -e SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" PROJECT_DIR="$(dirname "$SCRIPT_DIR")" -echo "=== Building quant.cpp WASM (pthreads + SIMD) ===" +echo "=== Building quant.cpp WASM (SIMD + ASYNCIFY) ===" if ! command -v emcc &>/dev/null; then echo "Error: emcc not found. Install Emscripten SDK." @@ -22,24 +22,21 @@ emcc "$SCRIPT_DIR/quant_wasm.c" \ -msimd128 \ -mrelaxed-simd \ -flto \ - -pthread \ -s WASM=1 \ - -s INITIAL_MEMORY=256MB \ - -s MAXIMUM_MEMORY=4GB \ -s ALLOW_MEMORY_GROWTH=1 \ + -s MAXIMUM_MEMORY=4GB \ + -s INITIAL_MEMORY=256MB \ -s EXPORTED_FUNCTIONS='["_main","_wasm_load_model","_wasm_generate","_wasm_generate_async","_wasm_model_info","_wasm_is_ready","_malloc","_free"]' \ -s EXPORTED_RUNTIME_METHODS='["UTF8ToString","allocateUTF8","FS"]' \ -s FORCE_FILESYSTEM=1 \ -s MODULARIZE=0 \ - -s ENVIRONMENT='web,worker' \ + -s ENVIRONMENT=web \ -s NO_EXIT_RUNTIME=1 \ -s ASSERTIONS=0 \ -s STACK_SIZE=1MB \ -s ASYNCIFY \ -s 'ASYNCIFY_IMPORTS=["emscripten_sleep"]' \ -s ASYNCIFY_STACK_SIZE=65536 \ - -s PTHREAD_POOL_SIZE=4 \ - -s PTHREAD_POOL_SIZE_STRICT=0 \ -lm \ -DNDEBUG \ -D__EMSCRIPTEN__ \ diff --git a/wasm/quant.js b/wasm/quant.js index 09e7b67..992bc00 100644 --- a/wasm/quant.js +++ b/wasm/quant.js @@ -1 +1 @@ -var Module=typeof Module!="undefined"?Module:{};var ENVIRONMENT_IS_WEB=!!globalThis.window;var ENVIRONMENT_IS_WORKER=!!globalThis.WorkerGlobalScope;var ENVIRONMENT_IS_NODE=globalThis.process?.versions?.node&&globalThis.process?.type!="renderer";var ENVIRONMENT_IS_PTHREAD=ENVIRONMENT_IS_WORKER&&globalThis.name=="em-pthread";var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var _scriptName=globalThis.document?.currentScript?.src;if(ENVIRONMENT_IS_WORKER){_scriptName=self.location.href}var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var readAsync,readBinary;if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){try{scriptDirectory=new URL(".",_scriptName).href}catch{}{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=async url=>{var response=await fetch(url,{credentials:"same-origin"});if(response.ok){return response.arrayBuffer()}throw new Error(response.status+" : "+response.url)}}}else{}var out=console.log.bind(console);var err=console.error.bind(console);var wasmBinary;var wasmModule;var ABORT=false;var EXITSTATUS;class EmscriptenEH{}class EmscriptenSjLj extends EmscriptenEH{}function growMemViews(){if(wasmMemory.buffer!=HEAP8.buffer){updateMemoryViews()}}var startWorker;if(ENVIRONMENT_IS_PTHREAD){var initializedJS=false;self.onunhandledrejection=e=>{throw e.reason||e};function handleMessage(e){try{var msgData=e["data"];var cmd=msgData.cmd;if(cmd==="load"){let messageQueue=[];self.onmessage=e=>messageQueue.push(e);startWorker=()=>{postMessage({cmd:"loaded"});for(let msg of messageQueue){handleMessage(msg)}self.onmessage=handleMessage};for(const handler of msgData.handlers){if(!Module[handler]||Module[handler].proxy){Module[handler]=(...args)=>{postMessage({cmd:"callHandler",handler,args})};if(handler=="print")out=Module[handler];if(handler=="printErr")err=Module[handler]}}wasmMemory=msgData.wasmMemory;updateMemoryViews();wasmModule=msgData.wasmModule;createWasm();run()}else if(cmd==="run"){establishStackSpace(msgData.pthread_ptr);__emscripten_thread_init(msgData.pthread_ptr,0,0,1,0,0);PThread.threadInitTLS();__emscripten_thread_mailbox_await(msgData.pthread_ptr);if(!initializedJS){initializedJS=true}try{invokeEntryPoint(msgData.start_routine,msgData.arg)}catch(ex){if(ex!="unwind"){throw ex}}}else if(msgData.target==="setimmediate"){}else if(cmd==="checkMailbox"){if(initializedJS){checkMailbox()}}else if(cmd){err(`worker: received unknown command ${cmd}`);err(msgData)}}catch(ex){__emscripten_thread_crashed();throw ex}}self.onmessage=handleMessage}var runtimeInitialized=false;function updateMemoryViews(){var b=wasmMemory.buffer;HEAP8=new Int8Array(b);HEAP16=new Int16Array(b);HEAPU8=new Uint8Array(b);HEAPU16=new Uint16Array(b);HEAP32=new Int32Array(b);HEAPU32=new Uint32Array(b);HEAPF32=new Float32Array(b);HEAPF64=new Float64Array(b);HEAP64=new BigInt64Array(b);HEAPU64=new BigUint64Array(b)}function initMemory(){if(ENVIRONMENT_IS_PTHREAD){return}if(Module["wasmMemory"]){wasmMemory=Module["wasmMemory"]}else{var INITIAL_MEMORY=Module["INITIAL_MEMORY"]||268435456;wasmMemory=new WebAssembly.Memory({initial:INITIAL_MEMORY/65536,maximum:65536,shared:true})}updateMemoryViews()}function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(onPreRuns)}function initRuntime(){runtimeInitialized=true;if(ENVIRONMENT_IS_PTHREAD)return startWorker();if(!Module["noFSInit"]&&!FS.initialized)FS.init();TTY.init();wasmExports["J"]();FS.ignorePermissions=false}function preMain(){}function postRun(){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(onPostRuns)}function abort(what){Module["onAbort"]?.(what);what=`Aborted(${what})`;err(what);ABORT=true;what+=". Build with -sASSERTIONS for more info.";var e=new WebAssembly.RuntimeError(what);throw e}var wasmBinaryFile;function findWasmBinary(){return locateFile("quant.wasm")}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"}async function getWasmBinary(binaryFile){if(!wasmBinary){try{var response=await readAsync(binaryFile);return new Uint8Array(response)}catch{}}return getBinarySync(binaryFile)}async function instantiateArrayBuffer(binaryFile,imports){try{var binary=await getWasmBinary(binaryFile);var instance=await WebAssembly.instantiate(binary,imports);return instance}catch(reason){err(`failed to asynchronously prepare wasm: ${reason}`);abort(reason)}}async function instantiateAsync(binary,binaryFile,imports){if(!binary){try{var response=fetch(binaryFile,{credentials:"same-origin"});var instantiationResult=await WebAssembly.instantiateStreaming(response,imports);return instantiationResult}catch(reason){err(`wasm streaming compile failed: ${reason}`);err("falling back to ArrayBuffer instantiation")}}return instantiateArrayBuffer(binaryFile,imports)}function getWasmImports(){assignWasmImports();var imports={a:wasmImports};return imports}async function createWasm(){function receiveInstance(instance,module){wasmExports=instance.exports;wasmExports=Asyncify.instrumentWasmExports(wasmExports);wasmExports=applySignatureConversions(wasmExports);registerTLSInit(wasmExports["S"]);assignWasmExports(wasmExports);wasmModule=module;removeRunDependency("wasm-instantiate");return wasmExports}addRunDependency("wasm-instantiate");function receiveInstantiationResult(result){return receiveInstance(result["instance"],result["module"])}var info=getWasmImports();if(Module["instantiateWasm"]){return new Promise((resolve,reject)=>{Module["instantiateWasm"](info,(inst,mod)=>{resolve(receiveInstance(inst,mod))})})}if(ENVIRONMENT_IS_PTHREAD){var instance=new WebAssembly.Instance(wasmModule,getWasmImports());return receiveInstance(instance,wasmModule)}wasmBinaryFile??=findWasmBinary();var result=await instantiateAsync(wasmBinary,wasmBinaryFile,info);var exports=receiveInstantiationResult(result);return exports}class ExitStatus{name="ExitStatus";constructor(status){this.message=`Program terminated with exit(${status})`;this.status=status}}var HEAP16;var HEAP32;var HEAP64;var HEAP8;var HEAPF32;var HEAPF64;var HEAPU16;var HEAPU32;var HEAPU64;var HEAPU8;var terminateWorker=worker=>{worker.terminate();worker.onmessage=e=>{}};var cleanupThread=pthread_ptr=>{var worker=PThread.pthreads[pthread_ptr];PThread.returnWorkerToPool(worker)};var callRuntimeCallbacks=callbacks=>{while(callbacks.length>0){callbacks.shift()(Module)}};var onPreRuns=[];var addOnPreRun=cb=>onPreRuns.push(cb);var runDependencies=0;var dependenciesFulfilled=null;var removeRunDependency=id=>{runDependencies--;Module["monitorRunDependencies"]?.(runDependencies);if(runDependencies==0){if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}};var addRunDependency=id=>{runDependencies++;Module["monitorRunDependencies"]?.(runDependencies)};var spawnThread=threadParams=>{var worker=PThread.getNewWorker();if(!worker){return 6}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};worker.postMessage(msg,threadParams.transferList);return 0};var runtimeKeepaliveCounter=0;var keepRuntimeAlive=()=>noExitRuntime||runtimeKeepaliveCounter>0;var stackSave=()=>_emscripten_stack_get_current();var stackRestore=val=>__emscripten_stack_restore(val);var stackAlloc=sz=>__emscripten_stack_alloc(sz);var proxyToMainThread=(funcIndex,emAsmAddr,proxyMode,...callArgs)=>{var bufSize=8*callArgs.length*2;var sp=stackSave();var args=stackAlloc(bufSize);var b=args>>>3;for(var arg of callArgs){if(typeof arg=="bigint"){(growMemViews(),HEAP64)[b++>>>0]=1n;(growMemViews(),HEAP64)[b++>>>0]=arg}else{(growMemViews(),HEAP64)[b++>>>0]=0n;(growMemViews(),HEAPF64)[b++>>>0]=arg}}var rtn=__emscripten_run_js_on_main_thread(funcIndex,emAsmAddr,bufSize,args,proxyMode);stackRestore(sp);return rtn};function _proc_exit(code){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(0,0,1,code);EXITSTATUS=code;if(!keepRuntimeAlive()){PThread.terminateAllThreads();Module["onExit"]?.(code);ABORT=true}quit_(code,new ExitStatus(code))}function exitOnMainThread(returnCode){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(1,0,0,returnCode);_exit(returnCode)}var exitJS=(status,implicit)=>{EXITSTATUS=status;if(ENVIRONMENT_IS_PTHREAD){exitOnMainThread(status);throw"unwind"}_proc_exit(status)};var _exit=exitJS;var PThread={unusedWorkers:[],runningWorkers:[],tlsInitFunctions:[],pthreads:{},init(){if(!ENVIRONMENT_IS_PTHREAD){PThread.initMainThread()}},initMainThread(){var pthreadPoolSize=4;while(pthreadPoolSize--){PThread.allocateUnusedWorker()}addOnPreRun(async()=>{var pthreadPoolReady=PThread.loadWasmModuleToAllWorkers();addRunDependency("loading-workers");await pthreadPoolReady;removeRunDependency("loading-workers")})},terminateAllThreads:()=>{for(var worker of PThread.runningWorkers){terminateWorker(worker)}for(var worker of PThread.unusedWorkers){terminateWorker(worker)}PThread.unusedWorkers=[];PThread.runningWorkers=[];PThread.pthreads={}},returnWorkerToPool: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)},threadInitTLS(){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"){callUserCallback(()=>cleanupThread(d.thread))}else if(cmd==="loaded"){worker.loaded=true;onFinishedLoading(worker)}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!";err(`${message} ${e.filename}:${e.lineno}: ${e.message}`);throw e};var handlers=[];var knownHandlers=["onExit","onAbort","print","printErr"];for(var handler of knownHandlers){if(Module.propertyIsEnumerable(handler)){handlers.push(handler)}}worker.postMessage({cmd:"load",handlers,wasmMemory,wasmModule})}),async loadWasmModuleToAllWorkers(){if(ENVIRONMENT_IS_PTHREAD){return}let pthreadPoolReady=Promise.all(PThread.unusedWorkers.map(PThread.loadWasmModuleToWorker));return pthreadPoolReady},allocateUnusedWorker(){var worker;var pthreadMainJs=_scriptName;if(Module["mainScriptUrlOrBlob"]){pthreadMainJs=Module["mainScriptUrlOrBlob"];if(typeof pthreadMainJs!="string"){pthreadMainJs=URL.createObjectURL(pthreadMainJs)}}worker=new Worker(pthreadMainJs,{name:"em-pthread"});PThread.unusedWorkers.push(worker)},getNewWorker(){if(PThread.unusedWorkers.length==0){PThread.allocateUnusedWorker();PThread.loadWasmModuleToWorker(PThread.unusedWorkers[0])}return PThread.unusedWorkers.pop()}};var onPostRuns=[];var addOnPostRun=cb=>onPostRuns.push(cb);var dynCalls={};function establishStackSpace(pthread_ptr){var stackHigh=(growMemViews(),HEAPU32)[pthread_ptr+48>>>2>>>0];var stackSize=(growMemViews(),HEAPU32)[pthread_ptr+52>>>2>>>0];var stackLow=stackHigh-stackSize;_emscripten_stack_set_limits(stackHigh,stackLow);stackRestore(stackHigh)}var invokeEntryPoint=(ptr,arg)=>{runtimeKeepaliveCounter=0;noExitRuntime=0;var result=(a1=>dynCall_ii(ptr,a1))(arg);function finish(result){if(keepRuntimeAlive()){EXITSTATUS=result;return}__emscripten_thread_exit(result)}finish(result)};var noExitRuntime=true;var registerTLSInit=tlsInitFunc=>PThread.tlsInitFunctions.push(tlsInitFunc);var wasmMemory;function pthreadCreateProxied(pthread_ptr,attr,startRoutine,arg){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(2,0,1,pthread_ptr,attr,startRoutine,arg);return ___pthread_create_js(pthread_ptr,attr,startRoutine,arg)}var _emscripten_has_threading_support=()=>!!globalThis.SharedArrayBuffer;var INT53_MAX=9007199254740992;var INT53_MIN=-9007199254740992;var bigintToI53Checked=num=>numINT53_MAX?NaN:Number(num);function ___pthread_create_js(pthread_ptr,attr,startRoutine,arg){pthread_ptr>>>=0;attr>>>=0;startRoutine>>>=0;arg>>>=0;if(!_emscripten_has_threading_support()){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,pthread_ptr,arg,transferList};if(ENVIRONMENT_IS_PTHREAD){threadParams.cmd="spawnThread";postMessage(threadParams,transferList);return 0}return spawnThread(threadParams)}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.slice(-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.slice(0,-1)}return root+dir},basename:path=>path&&path.match(/([^\/]+|\/)\/*$/)[1],join:(...paths)=>PATH.normalize(paths.join("/")),join2:(l,r)=>PATH.normalize(l+"/"+r)};var initRandomFill=()=>view=>(view.set(crypto.getRandomValues(new Uint8Array(view.byteLength))),0);var randomFill=view=>(randomFill=initRandomFill())(view);var PATH_FS={resolve:(...args)=>{var resolvedPath="",resolvedAbsolute=false;for(var i=args.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?args[i]:FS.cwd();if(typeof path!="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=PATH.isAbs(path)}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter(p=>!!p),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."},relative:(from,to)=>{from=PATH_FS.resolve(from).slice(1);to=PATH_FS.resolve(to).slice(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 maxIdx=idx+maxBytesToRead;if(ignoreNul)return maxIdx;while(heapOrArray[idx]&&!(idx>=maxIdx))++idx;return idx};var UTF8ArrayToString=(heapOrArray,idx=0,maxBytesToRead,ignoreNul)=>{idx>>>=0;var endPtr=findStringEnd(heapOrArray,idx,maxBytesToRead,ignoreNul);if(endPtr-idx>16&&heapOrArray.buffer&&UTF8Decoder){return UTF8Decoder.decode(heapOrArray.buffer instanceof ArrayBuffer?heapOrArray.subarray(idx,endPtr):heapOrArray.slice(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)=>{outIdx>>>=0;if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=endIdx)break;heap[outIdx++>>>0]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++>>>0]=192|u>>6;heap[outIdx++>>>0]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++>>>0]=224|u>>12;heap[outIdx++>>>0]=128|u>>6&63;heap[outIdx++>>>0]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++>>>0]=240|u>>18;heap[outIdx++>>>0]=128|u>>12&63;heap[outIdx++>>>0]=128|u>>6&63;heap[outIdx++>>>0]=128|u&63;i++}}heap[outIdx>>>0]=0;return outIdx-startIdx};var 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(globalThis.window?.prompt){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else{}if(!result){return null}FS_stdin_getChar_buffer=intArrayFromString(result,true)}return FS_stdin_getChar_buffer.shift()};var TTY={ttys:[],init(){},shutdown(){},register(dev,ops){TTY.ttys[dev]={input:[],output:[],ops};FS.registerDevice(dev,TTY.stream_ops)},stream_ops:{open(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(43)}stream.tty=tty;stream.seekable=false},close(stream){stream.tty.ops.fsync(stream.tty)},fsync(stream){stream.tty.ops.fsync(stream.tty)},read(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.get_char){throw new FS.ErrnoError(60)}var bytesRead=0;for(var i=0;i0){out(UTF8ArrayToString(tty.output));tty.output=[]}},ioctl_tcgets(tty){return{c_iflag:25856,c_oflag:5,c_cflag:191,c_lflag:35387,c_cc:[3,28,127,21,4,0,1,0,17,19,26,0,18,15,23,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]}},ioctl_tcsets(tty,optional_actions,data){return 0},ioctl_tiocgwinsz(tty){return[24,80]}},default_tty1_ops:{put_char(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output));tty.output=[]}else{if(val!=0)tty.output.push(val)}},fsync(tty){if(tty.output?.length>0){err(UTF8ArrayToString(tty.output));tty.output=[]}}}};var zeroMemory=(ptr,size)=>(growMemViews(),HEAPU8).fill(0,ptr,ptr+size);var alignMemory=(size,alignment)=>Math.ceil(size/alignment)*alignment;var mmapAlloc=size=>{size=alignMemory(size,65536);var ptr=_emscripten_builtin_memalign(65536,size);if(ptr)zeroMemory(ptr,size);return ptr};var MEMFS={ops_table:null,mount(mount){return MEMFS.createNode(null,"/",16895,0)},createNode(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(63)}MEMFS.ops_table||={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,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=MEMFS.emptyFileContents??=new Uint8Array(0)}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.atime=node.mtime=node.ctime=Date.now();if(parent){parent.contents[name]=node;parent.atime=parent.mtime=parent.ctime=node.atime}return node},getFileDataAsTypedArray(node){return node.contents.subarray(0,node.usedBytes)},expandFileStorage(node,newCapacity){var prevCapacity=node.contents.length;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity>>0);if(prevCapacity)newCapacity=Math.max(newCapacity,256);var oldContents=MEMFS.getFileDataAsTypedArray(node);node.contents=new Uint8Array(newCapacity);node.contents.set(oldContents)},resizeFileStorage(node,newSize){if(node.usedBytes==newSize)return;var oldContents=node.contents;node.contents=new Uint8Array(newSize);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.atime);attr.mtime=new Date(node.mtime);attr.ctime=new Date(node.ctime);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr},setattr(node,attr){for(const key of["mode","atime","mtime","ctime"]){if(attr[key]!=null){node[key]=attr[key]}}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}},lookup(parent,name){if(!MEMFS.doesNotExistError){MEMFS.doesNotExistError=new FS.ErrnoError(44);MEMFS.doesNotExistError.stack=""}throw MEMFS.doesNotExistError},mknod(parent,name,mode,dev){return MEMFS.createNode(parent,name,mode,dev)},rename(old_node,new_dir,new_name){var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(new_node){if(FS.isDir(old_node.mode)){for(var i in new_node.contents){throw new FS.ErrnoError(55)}}FS.hashRemoveNode(new_node)}delete old_node.parent.contents[old_node.name];new_dir.contents[new_name]=old_node;old_node.name=new_name;new_dir.ctime=new_dir.mtime=old_node.parent.ctime=old_node.parent.mtime=Date.now()},unlink(parent,name){delete parent.contents[name];parent.ctime=parent.mtime=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.ctime=parent.mtime=Date.now()},readdir(node){return[".","..",...Object.keys(node.contents)]},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);buffer.set(contents.subarray(position,position+size),offset);return size},write(stream,buffer,offset,length,position,canOwn){if(buffer.buffer===(growMemViews(),HEAP8).buffer){canOwn=false}if(!length)return 0;var node=stream.node;node.mtime=node.ctime=Date.now();if(canOwn){node.contents=buffer.subarray(offset,offset+length);node.usedBytes=length}else if(node.usedBytes===0&&position===0){node.contents=buffer.slice(offset,offset+length);node.usedBytes=length}else{MEMFS.expandFileStorage(node,position+length);node.contents.set(buffer.subarray(offset,offset+length),position);node.usedBytes=Math.max(node.usedBytes,position+length)}return length},llseek(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.usedBytes}}if(position<0){throw new FS.ErrnoError(28)}return position},mmap(stream,length,position,prot,flags){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(43)}var ptr;var allocated;var contents=stream.node.contents;if(!(flags&2)&&contents.buffer===(growMemViews(),HEAP8).buffer){allocated=false;ptr=contents.byteOffset}else{allocated=true;ptr=mmapAlloc(length);if(!ptr){throw new FS.ErrnoError(48)}if(contents){if(position>0||position+length>>0)}}return{ptr,allocated}},msync(stream,buffer,offset,length,mmapFlags){MEMFS.stream_ops.write(stream,buffer,0,length,offset,false);return 0}}};var FS_modeStringToFlags=str=>{if(typeof str!="string")return str;var flagModes={r:0,"r+":2,w:512|64|1,"w+":512|64|2,a:1024|64|1,"a+":1024|64|2};var flags=flagModes[str];if(typeof flags=="undefined"){throw new Error(`Unknown file open mode: ${str}`)}return flags};var FS_fileDataToTypedArray=data=>{if(typeof data=="string"){data=intArrayFromString(data,true)}if(!data.subarray){data=new Uint8Array(data)}return data};var FS_getMode=(canRead,canWrite)=>{var mode=0;if(canRead)mode|=292|73;if(canWrite)mode|=146;return mode};var asyncLoad=async url=>{var arrayBuffer=await readAsync(url);return new Uint8Array(arrayBuffer)};var FS_createDataFile=(...args)=>FS.createDataFile(...args);var getUniqueRunDependency=id=>id;var preloadPlugins=[];var FS_handledByPreloadPlugin=async(byteArray,fullname)=>{if(typeof Browser!="undefined")Browser.init();for(var plugin of preloadPlugins){if(plugin["canHandle"](fullname)){return plugin["handle"](byteArray,fullname)}}return byteArray};var FS_preloadFile=async(parent,name,url,canRead,canWrite,dontCreateFile,canOwn,preFinish)=>{var fullname=name?PATH_FS.resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency(`cp ${fullname}`);addRunDependency(dep);try{var byteArray=url;if(typeof url=="string"){byteArray=await asyncLoad(url)}byteArray=await FS_handledByPreloadPlugin(byteArray,fullname);preFinish?.();if(!dontCreateFile){FS_createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}}finally{removeRunDependency(dep)}};var FS_createPreloadedFile=(parent,name,url,canRead,canWrite,onload,onerror,dontCreateFile,canOwn,preFinish)=>{FS_preloadFile(parent,name,url,canRead,canWrite,dontCreateFile,canOwn,preFinish).then(onload).catch(onerror)};var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,filesystems:null,syncFSRequests:0,ErrnoError:class{name="ErrnoError";constructor(errno){this.errno=errno}},FSStream:class{shared={};get object(){return this.node}set object(val){this.node=val}get isRead(){return(this.flags&2097155)!==1}get isWrite(){return(this.flags&2097155)!==0}get isAppend(){return this.flags&1024}get flags(){return this.shared.flags}set flags(val){this.shared.flags=val}get position(){return this.shared.position}set position(val){this.shared.position=val}},FSNode:class{node_ops={};stream_ops={};readMode=292|73;writeMode=146;mounted=null;constructor(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.rdev=rdev;this.atime=this.mtime=this.ctime=Date.now()}get read(){return(this.mode&this.readMode)===this.readMode}set read(val){val?this.mode|=this.readMode:this.mode&=~this.readMode}get write(){return(this.mode&this.writeMode)===this.writeMode}set write(val){val?this.mode|=this.writeMode:this.mode&=~this.writeMode}get isFolder(){return FS.isDir(this.mode)}get isDevice(){return FS.isChrdev(this.mode)}},lookupPath(path,opts={}){if(!path){throw new FS.ErrnoError(44)}opts.follow_mount??=true;if(!PATH.isAbs(path)){path=FS.cwd()+"/"+path}linkloop:for(var nlinks=0;nlinks<40;nlinks++){var parts=path.split("/").filter(p=>!!p);var current=FS.root;var current_path="/";for(var i=0;i>>0)%FS.nameTable.length},hashAddNode(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node},hashRemoveNode(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}},lookupNode(parent,name){var errCode=FS.mayLookup(parent);if(errCode){throw new FS.ErrnoError(errCode)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)},createNode(parent,name,mode,rdev){var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node},destroyNode(node){FS.hashRemoveNode(node)},isRoot(node){return node===node.parent},isMountpoint(node){return!!node.mounted},isFile(mode){return(mode&61440)===32768},isDir(mode){return(mode&61440)===16384},isLink(mode){return(mode&61440)===40960},isChrdev(mode){return(mode&61440)===8192},isBlkdev(mode){return(mode&61440)===24576},isFIFO(mode){return(mode&61440)===4096},isSocket(mode){return(mode&49152)===49152},flagsToPermissionString(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms},nodePermissions(node,perms){if(FS.ignorePermissions){return 0}if(perms.includes("r")&&!(node.mode&292)){return 2}if(perms.includes("w")&&!(node.mode&146)){return 2}if(perms.includes("x")&&!(node.mode&73)){return 2}return 0},mayLookup(dir){if(!FS.isDir(dir.mode))return 54;var errCode=FS.nodePermissions(dir,"x");if(errCode)return errCode;if(!dir.node_ops.lookup)return 2;return 0},mayCreate(dir,name){if(!FS.isDir(dir.mode)){return 54}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}var mode=FS.flagsToPermissionString(flags);if(FS.isDir(node.mode)){if(mode!=="r"||flags&(512|64)){return 31}}return FS.nodePermissions(node,mode)},checkOpExists(op,err){if(!op){throw new FS.ErrnoError(err)}return op},MAX_OPEN_FDS:4096,nextfd(){for(var fd=0;fd<=FS.MAX_OPEN_FDS;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(33)},getStreamChecked(fd){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(8)}return stream},getStream:fd=>FS.streams[fd],createStream(stream,fd=-1){stream=Object.assign(new FS.FSStream,stream);if(fd==-1){fd=FS.nextfd()}stream.fd=fd;FS.streams[fd]=stream;return stream},closeStream(fd){FS.streams[fd]=null},dupStream(origStream,fd=-1){var stream=FS.createStream(origStream,fd);stream.stream_ops?.dup?.(stream);return stream},doSetAttr(stream,node,attr){var setattr=stream?.stream_ops.setattr;var arg=setattr?stream:node;setattr??=node.node_ops.setattr;FS.checkOpExists(setattr,63);setattr(arg,attr)},chrdev_stream_ops:{open(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;stream.stream_ops.open?.(stream)},llseek(){throw new FS.ErrnoError(70)}},major:dev=>dev>>8,minor:dev=>dev&255,makedev:(ma,mi)=>ma<<8|mi,registerDevice(dev,ops){FS.devices[dev]={stream_ops:ops}},getDevice:dev=>FS.devices[dev],getMounts(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push(...m.mounts)}return mounts},syncfs(populate,callback){if(typeof populate=="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){err(`warning: ${FS.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`)}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(errCode){FS.syncFSRequests--;return callback(errCode)}function done(errCode){if(errCode){if(!done.errored){done.errored=true;return doCallback(errCode)}return}if(++completed>=mounts.length){doCallback(null)}}for(var mount of mounts){if(mount.type.syncfs){mount.type.syncfs(mount,populate,done)}else{done(null)}}},mount(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(10)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}}var mount={type,opts,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);for(var[hash,current]of Object.entries(FS.nameTable)){while(current){var next=current.name_next;if(mounts.includes(current.mount)){FS.destroyNode(current)}current=next}}node.mounted=null;var idx=node.mount.mounts.indexOf(mount);node.mount.mounts.splice(idx,1)},lookup(parent,name){return parent.node_ops.lookup(parent,name)},mknod(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name){throw new FS.ErrnoError(28)}if(name==="."||name===".."){throw new FS.ErrnoError(20)}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)},statfs(path){return FS.statfsNode(FS.lookupPath(path,{follow:true}).node)},statfsStream(stream){return FS.statfsNode(stream.node)},statfsNode(node){var rtn={bsize:4096,frsize:4096,blocks:1e6,bfree:5e5,bavail:5e5,files:FS.nextInode,ffree:FS.nextInode-1,fsid:42,flags:2,namelen:255};if(node.node_ops.statfs){Object.assign(rtn,node.node_ops.statfs(node.mount.opts.root))}return rtn},create(path,mode=438){mode&=4095;mode|=32768;return FS.mknod(path,mode,0)},mkdir(path,mode=511){mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)},mkdirTree(path,mode){var dirs=path.split("/");var d="";for(var dir of dirs){if(!dir)continue;if(d||PATH.isAbs(path))d+="/";d+=dir;try{FS.mkdir(d,mode)}catch(e){if(e.errno!=20)throw e}}},mkdev(path,mode,dev){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);old_node.parent=new_dir}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;var readdir=FS.checkOpExists(node.node_ops.readdir,54);return 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 link.node_ops.readlink(link)},stat(path,dontFollow){var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;var getattr=FS.checkOpExists(node.node_ops.getattr,63);return getattr(node)},fstat(fd){var stream=FS.getStreamChecked(fd);var node=stream.node;var getattr=stream.stream_ops.getattr;var arg=getattr?stream:node;getattr??=node.node_ops.getattr;FS.checkOpExists(getattr,63);return getattr(arg)},lstat(path){return FS.stat(path,true)},doChmod(stream,node,mode,dontFollow){FS.doSetAttr(stream,node,{mode:mode&4095|node.mode&~4095,ctime:Date.now(),dontFollow})},chmod(path,mode,dontFollow){var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}FS.doChmod(null,node,mode,dontFollow)},lchmod(path,mode){FS.chmod(path,mode,true)},fchmod(fd,mode){var stream=FS.getStreamChecked(fd);FS.doChmod(stream,stream.node,mode,false)},doChown(stream,node,dontFollow){FS.doSetAttr(stream,node,{timestamp:Date.now(),dontFollow})},chown(path,uid,gid,dontFollow){var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}FS.doChown(null,node,dontFollow)},lchown(path,uid,gid){FS.chown(path,uid,gid,true)},fchown(fd,uid,gid){var stream=FS.getStreamChecked(fd);FS.doChown(stream,stream.node,false)},doTruncate(stream,node,len){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)}FS.doSetAttr(stream,node,{size:len,timestamp:Date.now()})},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}FS.doTruncate(null,node,len)},ftruncate(fd,len){var stream=FS.getStreamChecked(fd);if(len<0||(stream.flags&2097155)===0){throw new FS.ErrnoError(28)}FS.doTruncate(stream,stream.node,len)},utime(path,atime,mtime){var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;var setattr=FS.checkOpExists(node.node_ops.setattr,63);setattr(node,{atime,mtime})},open(path,flags,mode=438){if(path===""){throw new FS.ErrnoError(44)}flags=FS_modeStringToFlags(flags);if(flags&64){mode=mode&4095|32768}else{mode=0}var node;var isDirPath;if(typeof path=="object"){node=path}else{isDirPath=path.endsWith("/");var lookup=FS.lookupPath(path,{follow:!(flags&131072),noent_okay:true});node=lookup.node;path=lookup.path}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(20)}}else if(isDirPath){throw new FS.ErrnoError(31)}else{node=FS.mknod(path,mode|511,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,path:FS.getPath(node),flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false});if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(created){FS.chmod(node,mode&511)}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){return 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){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){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},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)}if(!length){throw new FS.ErrnoError(28)}return stream.stream_ops.mmap(stream,length,position,prot,flags)},msync(stream,buffer,offset,length,mmapFlags){if(!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)},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"){abort(`Invalid encoding type "${opts.encoding}"`)}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"){buf=UTF8ArrayToString(buf)}FS.close(stream);return buf},writeFile(path,data,opts={}){opts.flags=opts.flags||577;var stream=FS.open(path,opts.flags,opts.mode);data=FS_fileDataToTypedArray(data);FS.write(stream,data,0,data.byteLength,undefined,opts.canOwn);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,llseek:()=>0});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){randomFill(randomBuffer);randomLeft=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",16895,73);node.stream_ops={llseek:MEMFS.stream_ops.llseek};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},id:fd+1};ret.parent=ret;return ret},readdir(){return Array.from(FS.streams.entries()).filter(([k,v])=>v).map(([k,v])=>k.toString())}};return node}},{},"/proc/self/fd")},createStandardStreams(input,output,error){if(input){FS.createDevice("/dev","stdin",input)}else{FS.symlink("/dev/tty","/dev/stdin")}if(output){FS.createDevice("/dev","stdout",null,output)}else{FS.symlink("/dev/tty","/dev/stdout")}if(error){FS.createDevice("/dev","stderr",null,error)}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin",0);var stdout=FS.open("/dev/stdout",1);var stderr=FS.open("/dev/stderr",1)},staticInit(){FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={MEMFS}},init(input,output,error){FS.initialized=true;input??=Module["stdin"];output??=Module["stdout"];error??=Module["stderr"];FS.createStandardStreams(input,output,error)},quit(){FS.initialized=false;for(var stream of FS.streams){if(stream){FS.close(stream)}}},findObject(path,dontResolveLastLink){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){if(e.errno!=20)throw 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){data=FS_fileDataToTypedArray(data);FS.chmod(node,mode|146);var stream=FS.open(node,577);FS.write(stream,data,0,data.length,0,canOwn);FS.close(stream);FS.chmod(node,mode)}},createDevice(parent,name,input,output){var path=PATH.join2(typeof parent=="string"?parent:FS.getPath(parent),name);var mode=FS_getMode(!!input,!!output);FS.createDevice.major??=64;var dev=FS.makedev(FS.createDevice.major++,0);FS.registerDevice(dev,{open(stream){stream.seekable=false},close(stream){if(output?.buffer?.length){output(10)}},read(stream,buffer,offset,length,pos){var bytesRead=0;for(var i=0;ithis.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]}setDataGetter(getter){this.getter=getter}cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))abort("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)abort("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)abort("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))abort("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")abort("doXHR failed!");return lazyArray.chunks[chunkNum]});if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;out("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true}get length(){if(!this.lengthKnown){this.cacheLength()}return this._length}get chunkSize(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize}}if(globalThis.XMLHttpRequest){if(!ENVIRONMENT_IS_WORKER)abort("Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc");var lazyArray=new LazyUint8Array;var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url}}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={};for(const[key,fn]of Object.entries(node.stream_ops)){stream_ops[key]=(...args)=>{FS.forceLoadFile(node);return fn(...args)}}function writeChunks(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);if(contents.slice){for(var i=0;i{FS.forceLoadFile(node);return writeChunks(stream,buffer,offset,length,position)};stream_ops.mmap=(stream,length,position,prot,flags)=>{FS.forceLoadFile(node);var ptr=mmapAlloc(length);if(!ptr){throw new FS.ErrnoError(48)}writeChunks(stream,(growMemViews(),HEAP8),ptr,length,position);return{ptr,allocated:true}};node.stream_ops=stream_ops;return node}};var UTF8ToString=(ptr,maxBytesToRead,ignoreNul)=>{ptr>>>=0;return ptr?UTF8ArrayToString((growMemViews(),HEAPU8),ptr,maxBytesToRead,ignoreNul):""};var SYSCALLS={calculateAt(dirfd,path,allowEmpty){if(PATH.isAbs(path)){return path}var dir;if(dirfd===-100){dir=FS.cwd()}else{var dirstream=SYSCALLS.getStreamFromFD(dirfd);dir=dirstream.path}if(path.length==0){if(!allowEmpty){throw new FS.ErrnoError(44)}return dir}return dir+"/"+path},writeStat(buf,stat){(growMemViews(),HEAPU32)[buf>>>2>>>0]=stat.dev;(growMemViews(),HEAPU32)[buf+4>>>2>>>0]=stat.mode;(growMemViews(),HEAPU32)[buf+8>>>2>>>0]=stat.nlink;(growMemViews(),HEAPU32)[buf+12>>>2>>>0]=stat.uid;(growMemViews(),HEAPU32)[buf+16>>>2>>>0]=stat.gid;(growMemViews(),HEAPU32)[buf+20>>>2>>>0]=stat.rdev;(growMemViews(),HEAP64)[buf+24>>>3>>>0]=BigInt(stat.size);(growMemViews(),HEAP32)[buf+32>>>2>>>0]=4096;(growMemViews(),HEAP32)[buf+36>>>2>>>0]=stat.blocks;var atime=stat.atime.getTime();var mtime=stat.mtime.getTime();var ctime=stat.ctime.getTime();(growMemViews(),HEAP64)[buf+40>>>3>>>0]=BigInt(Math.floor(atime/1e3));(growMemViews(),HEAPU32)[buf+48>>>2>>>0]=atime%1e3*1e3*1e3;(growMemViews(),HEAP64)[buf+56>>>3>>>0]=BigInt(Math.floor(mtime/1e3));(growMemViews(),HEAPU32)[buf+64>>>2>>>0]=mtime%1e3*1e3*1e3;(growMemViews(),HEAP64)[buf+72>>>3>>>0]=BigInt(Math.floor(ctime/1e3));(growMemViews(),HEAPU32)[buf+80>>>2>>>0]=ctime%1e3*1e3*1e3;(growMemViews(),HEAP64)[buf+88>>>3>>>0]=BigInt(stat.ino);return 0},writeStatFs(buf,stats){(growMemViews(),HEAPU32)[buf+4>>>2>>>0]=stats.bsize;(growMemViews(),HEAPU32)[buf+60>>>2>>>0]=stats.bsize;(growMemViews(),HEAP64)[buf+8>>>3>>>0]=BigInt(stats.blocks);(growMemViews(),HEAP64)[buf+16>>>3>>>0]=BigInt(stats.bfree);(growMemViews(),HEAP64)[buf+24>>>3>>>0]=BigInt(stats.bavail);(growMemViews(),HEAP64)[buf+32>>>3>>>0]=BigInt(stats.files);(growMemViews(),HEAP64)[buf+40>>>3>>>0]=BigInt(stats.ffree);(growMemViews(),HEAPU32)[buf+48>>>2>>>0]=stats.fsid;(growMemViews(),HEAPU32)[buf+64>>>2>>>0]=stats.flags;(growMemViews(),HEAPU32)[buf+56>>>2>>>0]=stats.namelen},doMsync(addr,stream,len,flags,offset){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(43)}if(flags&2){return 0}var buffer=(growMemViews(),HEAPU8).slice(addr,addr+len);FS.msync(stream,buffer,offset,len,flags)},getStreamFromFD(fd){var stream=FS.getStreamChecked(fd);return stream},varargs:undefined,getStr(ptr){var ret=UTF8ToString(ptr);return ret}};function ___syscall_faccessat(dirfd,path,amode,flags){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(3,0,1,dirfd,path,amode,flags);path>>>=0;try{path=SYSCALLS.getStr(path);path=SYSCALLS.calculateAt(dirfd,path);if(amode&~7){return-28}var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;if(!node){return-44}var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-2}return 0}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(4,0,1,fd,buf);buf>>>=0;try{return SYSCALLS.writeStat(buf,FS.fstat(fd))}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}var stringToUTF8=(str,outPtr,maxBytesToWrite)=>stringToUTF8Array(str,(growMemViews(),HEAPU8),outPtr,maxBytesToWrite);function ___syscall_getdents64(fd,dirp,count){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(5,0,1,fd,dirp,count);dirp>>>=0;count>>>=0;try{var stream=SYSCALLS.getStreamFromFD(fd);stream.getdents||=FS.readdir(stream.path);var struct_size=280;var pos=0;var off=FS.llseek(stream,0,1);var startIdx=Math.floor(off/struct_size);var endIdx=Math.min(stream.getdents.length,startIdx+Math.floor(count/struct_size));for(var idx=startIdx;idx>>3>>>0]=BigInt(id);(growMemViews(),HEAP64)[dirp+pos+8>>>3>>>0]=BigInt((idx+1)*struct_size);(growMemViews(),HEAP16)[dirp+pos+16>>>1>>>0]=280;(growMemViews(),HEAP8)[dirp+pos+18>>>0]=type;stringToUTF8(name,dirp+pos+19,256);pos+=struct_size}FS.llseek(stream,idx*struct_size,0);return pos}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}var syscallGetVarargI=()=>{var ret=(growMemViews(),HEAP32)[+SYSCALLS.varargs>>>2>>>0];SYSCALLS.varargs+=4;return ret};var syscallGetVarargP=syscallGetVarargI;function ___syscall_ioctl(fd,op,varargs){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(6,0,1,fd,op,varargs);varargs>>>=0;SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(fd);switch(op){case 21509:{if(!stream.tty)return-59;return 0}case 21505:{if(!stream.tty)return-59;if(stream.tty.ops.ioctl_tcgets){var termios=stream.tty.ops.ioctl_tcgets(stream);var argp=syscallGetVarargP();(growMemViews(),HEAP32)[argp>>>2>>>0]=termios.c_iflag||0;(growMemViews(),HEAP32)[argp+4>>>2>>>0]=termios.c_oflag||0;(growMemViews(),HEAP32)[argp+8>>>2>>>0]=termios.c_cflag||0;(growMemViews(),HEAP32)[argp+12>>>2>>>0]=termios.c_lflag||0;for(var i=0;i<32;i++){(growMemViews(),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=syscallGetVarargP();var c_iflag=(growMemViews(),HEAP32)[argp>>>2>>>0];var c_oflag=(growMemViews(),HEAP32)[argp+4>>>2>>>0];var c_cflag=(growMemViews(),HEAP32)[argp+8>>>2>>>0];var c_lflag=(growMemViews(),HEAP32)[argp+12>>>2>>>0];var c_cc=[];for(var i=0;i<32;i++){c_cc.push((growMemViews(),HEAP8)[argp+i+17>>>0])}return stream.tty.ops.ioctl_tcsets(stream.tty,op,{c_iflag,c_oflag,c_cflag,c_lflag,c_cc})}return 0}case 21519:{if(!stream.tty)return-59;var argp=syscallGetVarargP();(growMemViews(),HEAP32)[argp>>>2>>>0]=0;return 0}case 21520:{if(!stream.tty)return-59;return-28}case 21537:case 21531:{var argp=syscallGetVarargP();return FS.ioctl(stream,op,argp)}case 21523:{if(!stream.tty)return-59;if(stream.tty.ops.ioctl_tiocgwinsz){var winsize=stream.tty.ops.ioctl_tiocgwinsz(stream.tty);var argp=syscallGetVarargP();(growMemViews(),HEAP16)[argp>>>1>>>0]=winsize[0];(growMemViews(),HEAP16)[argp+2>>>1>>>0]=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_openat(dirfd,path,flags,varargs){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(7,0,1,dirfd,path,flags,varargs);path>>>=0;varargs>>>=0;SYSCALLS.varargs=varargs;try{path=SYSCALLS.getStr(path);path=SYSCALLS.calculateAt(dirfd,path);var mode=varargs?syscallGetVarargI():0;return FS.open(path,flags,mode).fd}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}var __abort_js=()=>abort("");function __emscripten_init_main_thread_js(tb){tb>>>=0;__emscripten_thread_init(tb,!ENVIRONMENT_IS_WORKER,1,!ENVIRONMENT_IS_WEB,1048576,false);PThread.threadInitTLS()}var handleException=e=>{if(e instanceof ExitStatus||e=="unwind"){return EXITSTATUS}quit_(1,e)};var maybeExit=()=>{if(!keepRuntimeAlive()){try{if(ENVIRONMENT_IS_PTHREAD){if(_pthread_self())__emscripten_thread_exit(EXITSTATUS);return}_exit(EXITSTATUS)}catch(e){handleException(e)}}};var callUserCallback=func=>{if(ABORT){return}try{return func()}catch(e){handleException(e)}finally{maybeExit()}};var waitAsyncPolyfilled=!Atomics.waitAsync||globalThis.navigator?.userAgent&&Number((navigator.userAgent.match(/Chrom(e|ium)\/([0-9]+)\./)||[])[2])<91;function __emscripten_thread_mailbox_await(pthread_ptr){pthread_ptr>>>=0;if(!waitAsyncPolyfilled){var wait=Atomics.waitAsync((growMemViews(),HEAP32),pthread_ptr>>>2,pthread_ptr);wait.value.then(checkMailbox);var waitingAsync=pthread_ptr+120;Atomics.store((growMemViews(),HEAP32),waitingAsync>>>2,1)}}var checkMailbox=()=>callUserCallback(()=>{var pthread_ptr=_pthread_self();if(pthread_ptr){__emscripten_thread_mailbox_await(pthread_ptr);__emscripten_check_mailbox()}});function __emscripten_notify_mailbox_postmessage(targetThread,currThreadId){targetThread>>>=0;currThreadId>>>=0;if(targetThread==currThreadId){setTimeout(checkMailbox)}else if(ENVIRONMENT_IS_PTHREAD){postMessage({targetThread,cmd:"checkMailbox"})}else{var worker=PThread.pthreads[targetThread];if(!worker){return}worker.postMessage({cmd:"checkMailbox"})}}var proxiedJSCallArgs=[];function __emscripten_receive_on_main_thread_js(funcIndex,emAsmAddr,callingThread,bufSize,args,ctx,ctxArgs){emAsmAddr>>>=0;callingThread>>>=0;args>>>=0;ctx>>>=0;ctxArgs>>>=0;proxiedJSCallArgs.length=0;var b=args>>>3;var end=args+bufSize>>>3;while(b>>0]){arg=(growMemViews(),HEAP64)[b++>>>0]}else{arg=(growMemViews(),HEAPF64)[b++>>>0]}proxiedJSCallArgs.push(arg)}var func=proxiedFunctionTable[funcIndex];PThread.currentProxiedOperationCallerThread=callingThread;var rtn=func(...proxiedJSCallArgs);PThread.currentProxiedOperationCallerThread=0;if(ctx){rtn.then(rtn=>__emscripten_run_js_on_main_thread_done(ctx,ctxArgs,rtn));return}return rtn}var __emscripten_runtime_keepalive_clear=()=>{noExitRuntime=false;runtimeKeepaliveCounter=0};function __emscripten_thread_cleanup(thread){thread>>>=0;if(!ENVIRONMENT_IS_PTHREAD)cleanupThread(thread);else postMessage({cmd:"cleanupThread",thread})}function __emscripten_thread_set_strongref(thread){thread>>>=0}function __mmap_js(len,prot,flags,fd,offset,allocated,addr){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(8,0,1,len,prot,flags,fd,offset,allocated,addr);len>>>=0;offset=bigintToI53Checked(offset);allocated>>>=0;addr>>>=0;try{var stream=SYSCALLS.getStreamFromFD(fd);var res=FS.mmap(stream,len,offset,prot,flags);var ptr=res.ptr;(growMemViews(),HEAP32)[allocated>>>2>>>0]=res.allocated;(growMemViews(),HEAPU32)[addr>>>2>>>0]=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){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(9,0,1,addr,len,prot,flags,fd,offset);addr>>>=0;len>>>=0;offset=bigintToI53Checked(offset);try{var stream=SYSCALLS.getStreamFromFD(fd);if(prot&2){SYSCALLS.doMsync(addr,stream,len,flags,offset)}}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}var timers={};var _emscripten_get_now=()=>performance.timeOrigin+performance.now();function __setitimer_js(which,timeout_ms){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(10,0,1,which,timeout_ms);if(timers[which]){clearTimeout(timers[which].id);delete timers[which]}if(!timeout_ms)return 0;var id=setTimeout(()=>{delete timers[which];callUserCallback(()=>__emscripten_timeout(which,_emscripten_get_now()))},timeout_ms);timers[which]={id,timeout_ms};return 0}var _emscripten_check_blocking_allowed=()=>{};var runtimeKeepalivePush=()=>{runtimeKeepaliveCounter+=1};var _emscripten_exit_with_live_runtime=()=>{runtimeKeepalivePush();throw"unwind"};var getHeapMax=()=>4294901760;var growMemory=size=>{var oldHeapSize=wasmMemory.buffer.byteLength;var pages=(size-oldHeapSize+65535)/65536|0;try{wasmMemory.grow(pages);updateMemoryViews();return 1}catch(e){}};function _emscripten_resize_heap(requestedSize){requestedSize>>>=0;var oldSize=(growMemViews(),HEAPU8).length;if(requestedSize<=oldSize){return false}var maxHeapSize=getHeapMax();if(requestedSize>maxHeapSize){return false}for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignMemory(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=growMemory(newSize);if(replacement){return true}}return false}var _emscripten_sleep=function(ms){let innerFunc=()=>new Promise(resolve=>setTimeout(resolve,ms));return Asyncify.handleAsync(innerFunc)};_emscripten_sleep.isAsync=true;var ENV={};var getExecutableName=()=>thisProgram||"./this.program";var getEnvStrings=()=>{if(!getEnvStrings.strings){var lang=(globalThis.navigator?.language??"C").replace("-","_")+".UTF-8";var env={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:lang,_:getExecutableName()};for(var x in ENV){if(ENV[x]===undefined)delete env[x];else env[x]=ENV[x]}var strings=[];for(var x in env){strings.push(`${x}=${env[x]}`)}getEnvStrings.strings=strings}return getEnvStrings.strings};function _environ_get(__environ,environ_buf){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(11,0,1,__environ,environ_buf);__environ>>>=0;environ_buf>>>=0;var bufSize=0;var envp=0;for(var string of getEnvStrings()){var ptr=environ_buf+bufSize;(growMemViews(),HEAPU32)[__environ+envp>>>2>>>0]=ptr;bufSize+=stringToUTF8(string,ptr,Infinity)+1;envp+=4}return 0}function _environ_sizes_get(penviron_count,penviron_buf_size){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(12,0,1,penviron_count,penviron_buf_size);penviron_count>>>=0;penviron_buf_size>>>=0;var strings=getEnvStrings();(growMemViews(),HEAPU32)[penviron_count>>>2>>>0]=strings.length;var bufSize=0;for(var string of strings){bufSize+=lengthBytesUTF8(string)+1}(growMemViews(),HEAPU32)[penviron_buf_size>>>2>>>0]=bufSize;return 0}function _fd_close(fd){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(13,0,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>>>0];var len=(growMemViews(),HEAPU32)[iov+4>>>2>>>0];iov+=8;var curr=FS.read(stream,(growMemViews(),HEAP8),ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr>>=0;iovcnt>>>=0;pnum>>>=0;try{var stream=SYSCALLS.getStreamFromFD(fd);var num=doReadv(stream,iov,iovcnt);(growMemViews(),HEAPU32)[pnum>>>2>>>0]=num;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}function _fd_seek(fd,offset,whence,newOffset){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(15,0,1,fd,offset,whence,newOffset);offset=bigintToI53Checked(offset);newOffset>>>=0;try{if(isNaN(offset))return 61;var stream=SYSCALLS.getStreamFromFD(fd);FS.llseek(stream,offset,whence);(growMemViews(),HEAP64)[newOffset>>>3>>>0]=BigInt(stream.position);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>>>0];var len=(growMemViews(),HEAPU32)[iov+4>>>2>>>0];iov+=8;var curr=FS.write(stream,(growMemViews(),HEAP8),ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr>>=0;iovcnt>>>=0;pnum>>>=0;try{var stream=SYSCALLS.getStreamFromFD(fd);var num=doWritev(stream,iov,iovcnt);(growMemViews(),HEAPU32)[pnum>>>2>>>0]=num;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}var runAndAbortIfError=func=>{try{return func()}catch(e){abort(e)}};var runtimeKeepalivePop=()=>{runtimeKeepaliveCounter-=1};var Asyncify={instrumentWasmImports(imports){var importPattern=/^(emscripten_sleep|invoke_.*|__asyncjs__.*)$/;for(let[x,original]of Object.entries(imports)){if(typeof original=="function"){let isAsyncifyImport=original.isAsync||importPattern.test(x)}}},instrumentFunction(original){var wrapper=(...args)=>{Asyncify.exportCallStack.push(original);try{return original(...args)}finally{if(!ABORT){var top=Asyncify.exportCallStack.pop();Asyncify.maybeStopUnwind()}}};Asyncify.funcWrappers.set(original,wrapper);return wrapper},instrumentWasmExports(exports){var ret={};for(let[x,original]of Object.entries(exports)){if(typeof original=="function"){var wrapper=Asyncify.instrumentFunction(original);ret[x]=wrapper}else{ret[x]=original}}return ret},State:{Normal:0,Unwinding:1,Rewinding:2,Disabled:3},state:0,StackSize:65536,currData:null,handleSleepReturnValue:0,exportCallStack:[],callstackFuncToId:new Map,callStackIdToFunc:new Map,funcWrappers:new Map,callStackId:0,asyncPromiseHandlers:null,sleepCallbacks:[],getCallStackId(func){if(!Asyncify.callstackFuncToId.has(func)){var id=Asyncify.callStackId++;Asyncify.callstackFuncToId.set(func,id);Asyncify.callStackIdToFunc.set(id,func)}return Asyncify.callstackFuncToId.get(func)},maybeStopUnwind(){if(Asyncify.currData&&Asyncify.state===Asyncify.State.Unwinding&&Asyncify.exportCallStack.length===0){Asyncify.state=Asyncify.State.Normal;runtimeKeepalivePush();runAndAbortIfError(_asyncify_stop_unwind);if(typeof Fibers!="undefined"){Fibers.trampoline()}}},whenDone(){return new Promise((resolve,reject)=>{Asyncify.asyncPromiseHandlers={resolve,reject}})},allocateData(){var ptr=_malloc(12+Asyncify.StackSize);Asyncify.setDataHeader(ptr,ptr+12,Asyncify.StackSize);Asyncify.setDataRewindFunc(ptr);return ptr},setDataHeader(ptr,stack,stackSize){(growMemViews(),HEAPU32)[ptr>>>2>>>0]=stack;(growMemViews(),HEAPU32)[ptr+4>>>2>>>0]=stack+stackSize},setDataRewindFunc(ptr){var bottomOfCallStack=Asyncify.exportCallStack[0];var rewindId=Asyncify.getCallStackId(bottomOfCallStack);(growMemViews(),HEAP32)[ptr+8>>>2>>>0]=rewindId},getDataRewindFunc(ptr){var id=(growMemViews(),HEAP32)[ptr+8>>>2>>>0];var func=Asyncify.callStackIdToFunc.get(id);return func},doRewind(ptr){var original=Asyncify.getDataRewindFunc(ptr);var func=Asyncify.funcWrappers.get(original);runtimeKeepalivePop();return callUserCallback(func)},handleSleep(startAsync){if(ABORT)return;if(Asyncify.state===Asyncify.State.Normal){var reachedCallback=false;var reachedAfterCallback=false;startAsync((handleSleepReturnValue=0)=>{if(ABORT)return;Asyncify.handleSleepReturnValue=handleSleepReturnValue;reachedCallback=true;if(!reachedAfterCallback){return}Asyncify.state=Asyncify.State.Rewinding;runAndAbortIfError(()=>_asyncify_start_rewind(Asyncify.currData));if(typeof MainLoop!="undefined"&&MainLoop.func){MainLoop.resume()}var asyncWasmReturnValue,isError=false;try{asyncWasmReturnValue=Asyncify.doRewind(Asyncify.currData)}catch(err){asyncWasmReturnValue=err;isError=true}var handled=false;if(!Asyncify.currData){var asyncPromiseHandlers=Asyncify.asyncPromiseHandlers;if(asyncPromiseHandlers){Asyncify.asyncPromiseHandlers=null;(isError?asyncPromiseHandlers.reject:asyncPromiseHandlers.resolve)(asyncWasmReturnValue);handled=true}}if(isError&&!handled){throw asyncWasmReturnValue}});reachedAfterCallback=true;if(!reachedCallback){Asyncify.state=Asyncify.State.Unwinding;Asyncify.currData=Asyncify.allocateData();if(typeof MainLoop!="undefined"&&MainLoop.func){MainLoop.pause()}runAndAbortIfError(()=>_asyncify_start_unwind(Asyncify.currData))}}else if(Asyncify.state===Asyncify.State.Rewinding){Asyncify.state=Asyncify.State.Normal;runAndAbortIfError(_asyncify_stop_rewind);_free(Asyncify.currData);Asyncify.currData=null;Asyncify.sleepCallbacks.forEach(callUserCallback)}else{abort(`invalid state: ${Asyncify.state}`)}return Asyncify.handleSleepReturnValue},handleAsync:startAsync=>Asyncify.handleSleep(async wakeUp=>{wakeUp(await startAsync())})};var stringToNewUTF8=str=>{var size=lengthBytesUTF8(str)+1;var ret=_malloc(size);if(ret)stringToUTF8(str,ret,size);return ret};var allocateUTF8=(...args)=>stringToNewUTF8(...args);var FS_createPath=(...args)=>FS.createPath(...args);var FS_unlink=(...args)=>FS.unlink(...args);var FS_createLazyFile=(...args)=>FS.createLazyFile(...args);var FS_createDevice=(...args)=>FS.createDevice(...args);PThread.init();FS.createPreloadedFile=FS_createPreloadedFile;FS.preloadFile=FS_preloadFile;FS.staticInit();{initMemory();if(Module["noExitRuntime"])noExitRuntime=Module["noExitRuntime"];if(Module["preloadPlugins"])preloadPlugins=Module["preloadPlugins"];if(Module["print"])out=Module["print"];if(Module["printErr"])err=Module["printErr"];if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].shift()()}}}Module["addRunDependency"]=addRunDependency;Module["removeRunDependency"]=removeRunDependency;Module["UTF8ToString"]=UTF8ToString;Module["FS_preloadFile"]=FS_preloadFile;Module["FS_unlink"]=FS_unlink;Module["FS_createPath"]=FS_createPath;Module["FS_createDevice"]=FS_createDevice;Module["FS"]=FS;Module["FS_createDataFile"]=FS_createDataFile;Module["FS_createLazyFile"]=FS_createLazyFile;Module["allocateUTF8"]=allocateUTF8;var proxiedFunctionTable=[_proc_exit,exitOnMainThread,pthreadCreateProxied,___syscall_faccessat,___syscall_fstat64,___syscall_getdents64,___syscall_ioctl,___syscall_openat,__mmap_js,__munmap_js,__setitimer_js,_environ_get,_environ_sizes_get,_fd_close,_fd_read,_fd_seek,_fd_write];function js_on_token(text){if(Module.onToken)Module.onToken(UTF8ToString(text))}function js_on_done(n_tokens,elapsed_ms){if(Module.onDone)Module.onDone(n_tokens,elapsed_ms)}function js_on_status(msg){if(Module.onStatus)Module.onStatus(UTF8ToString(msg))}function js_get_hw_concurrency(){return Math.min(navigator.hardwareConcurrency||1,8)}var _free,_malloc,_wasm_load_model,_wasm_generate_async,_wasm_generate,_wasm_model_info,_wasm_is_ready,_main,__emscripten_tls_init,_pthread_self,_emscripten_builtin_memalign,__emscripten_thread_init,__emscripten_thread_crashed,__emscripten_run_js_on_main_thread_done,__emscripten_run_js_on_main_thread,__emscripten_thread_free_data,__emscripten_thread_exit,__emscripten_timeout,__emscripten_check_mailbox,_emscripten_stack_set_limits,__emscripten_stack_restore,__emscripten_stack_alloc,_emscripten_stack_get_current,dynCall_vii,dynCall_ii,dynCall_iii,dynCall_jiji,dynCall_iiii,dynCall_iidiiii,dynCall_vi,dynCall_v,dynCall_viii,dynCall_viiiii,dynCall_fiii,_asyncify_start_unwind,_asyncify_stop_unwind,_asyncify_start_rewind,_asyncify_stop_rewind,__indirect_function_table;function assignWasmExports(wasmExports){_free=Module["_free"]=wasmExports["K"];_malloc=Module["_malloc"]=wasmExports["L"];_wasm_load_model=Module["_wasm_load_model"]=wasmExports["M"];_wasm_generate_async=Module["_wasm_generate_async"]=wasmExports["N"];_wasm_generate=Module["_wasm_generate"]=wasmExports["O"];_wasm_model_info=Module["_wasm_model_info"]=wasmExports["P"];_wasm_is_ready=Module["_wasm_is_ready"]=wasmExports["Q"];_main=Module["_main"]=wasmExports["R"];__emscripten_tls_init=wasmExports["S"];_pthread_self=wasmExports["T"];_emscripten_builtin_memalign=wasmExports["U"];__emscripten_thread_init=wasmExports["V"];__emscripten_thread_crashed=wasmExports["W"];__emscripten_run_js_on_main_thread_done=wasmExports["X"];__emscripten_run_js_on_main_thread=wasmExports["Y"];__emscripten_thread_free_data=wasmExports["Z"];__emscripten_thread_exit=wasmExports["_"];__emscripten_timeout=wasmExports["$"];__emscripten_check_mailbox=wasmExports["aa"];_emscripten_stack_set_limits=wasmExports["ba"];__emscripten_stack_restore=wasmExports["ca"];__emscripten_stack_alloc=wasmExports["da"];_emscripten_stack_get_current=wasmExports["ea"];dynCall_vii=dynCalls["vii"]=wasmExports["fa"];dynCall_ii=dynCalls["ii"]=wasmExports["ga"];dynCall_iii=dynCalls["iii"]=wasmExports["ha"];dynCall_jiji=dynCalls["jiji"]=wasmExports["ia"];dynCall_iiii=dynCalls["iiii"]=wasmExports["ja"];dynCall_iidiiii=dynCalls["iidiiii"]=wasmExports["ka"];dynCall_vi=dynCalls["vi"]=wasmExports["la"];dynCall_v=dynCalls["v"]=wasmExports["ma"];dynCall_viii=dynCalls["viii"]=wasmExports["na"];dynCall_viiiii=dynCalls["viiiii"]=wasmExports["oa"];dynCall_fiii=dynCalls["fiii"]=wasmExports["pa"];_asyncify_start_unwind=wasmExports["qa"];_asyncify_stop_unwind=wasmExports["ra"];_asyncify_start_rewind=wasmExports["sa"];_asyncify_stop_rewind=wasmExports["ta"];__indirect_function_table=wasmExports["__indirect_function_table"]}var wasmImports;function assignWasmImports(){wasmImports={x:___pthread_create_js,n:___syscall_faccessat,F:___syscall_fstat64,v:___syscall_getdents64,I:___syscall_ioctl,i:___syscall_openat,s:__abort_js,C:__emscripten_init_main_thread_js,u:__emscripten_notify_mailbox_postmessage,g:__emscripten_receive_on_main_thread_js,q:__emscripten_runtime_keepalive_clear,e:__emscripten_thread_cleanup,B:__emscripten_thread_mailbox_await,m:__emscripten_thread_set_strongref,y:__mmap_js,z:__munmap_js,r:__setitimer_js,f:_emscripten_check_blocking_allowed,l:_emscripten_exit_with_live_runtime,b:_emscripten_get_now,t:_emscripten_resize_heap,k:_emscripten_sleep,D:_environ_get,E:_environ_sizes_get,w:_exit,d:_fd_close,H:_fd_read,A:_fd_seek,G:_fd_write,o:js_get_hw_concurrency,h:js_on_done,c:js_on_status,j:js_on_token,a:wasmMemory,p:_proc_exit}}function applySignatureConversions(wasmExports){wasmExports=Object.assign({},wasmExports);var makeWrapper_pp=f=>a0=>f(a0)>>>0;var makeWrapper_p=f=>()=>f()>>>0;var makeWrapper_ppp=f=>(a0,a1)=>f(a0,a1)>>>0;wasmExports["L"]=makeWrapper_pp(wasmExports["L"]);wasmExports["T"]=makeWrapper_p(wasmExports["T"]);wasmExports["U"]=makeWrapper_ppp(wasmExports["U"]);wasmExports["da"]=makeWrapper_pp(wasmExports["da"]);wasmExports["ea"]=makeWrapper_p(wasmExports["ea"]);return wasmExports}function callMain(){var entryFunction=_main;var argc=0;var argv=0;try{var ret=entryFunction(argc,argv);exitJS(ret,true);return ret}catch(e){return handleException(e)}}function run(){if(runDependencies>0){dependenciesFulfilled=run;return}if(ENVIRONMENT_IS_PTHREAD){initRuntime();return}preRun();if(runDependencies>0){dependenciesFulfilled=run;return}function doRun(){Module["calledRun"]=true;if(ABORT)return;initRuntime();preMain();Module["onRuntimeInitialized"]?.();var noInitialRun=Module["noInitialRun"]||false;if(!noInitialRun)callMain();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(()=>{setTimeout(()=>Module["setStatus"](""),1);doRun()},1)}else{doRun()}}var wasmExports;if(!ENVIRONMENT_IS_PTHREAD){createWasm();run()} +var Module=typeof Module!="undefined"?Module:{};var ENVIRONMENT_IS_WEB=true;var ENVIRONMENT_IS_WORKER=false;var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var _scriptName=globalThis.document?.currentScript?.src;var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var readAsync,readBinary;if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){try{scriptDirectory=new URL(".",_scriptName).href}catch{}{readAsync=async url=>{var response=await fetch(url,{credentials:"same-origin"});if(response.ok){return response.arrayBuffer()}throw new Error(response.status+" : "+response.url)}}}else{}var out=console.log.bind(console);var err=console.error.bind(console);var wasmBinary;var ABORT=false;var EXITSTATUS;class EmscriptenEH{}class EmscriptenSjLj extends EmscriptenEH{}var runtimeInitialized=false;function updateMemoryViews(){var b=wasmMemory.buffer;HEAP8=new Int8Array(b);HEAP16=new Int16Array(b);HEAPU8=new Uint8Array(b);HEAPU16=new Uint16Array(b);HEAP32=new Int32Array(b);HEAPU32=new Uint32Array(b);HEAPF32=new Float32Array(b);HEAPF64=new Float64Array(b);HEAP64=new BigInt64Array(b);HEAPU64=new BigUint64Array(b)}function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(onPreRuns)}function initRuntime(){runtimeInitialized=true;if(!Module["noFSInit"]&&!FS.initialized)FS.init();TTY.init();wasmExports["z"]();FS.ignorePermissions=false}function preMain(){}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(onPostRuns)}function abort(what){Module["onAbort"]?.(what);what=`Aborted(${what})`;err(what);ABORT=true;what+=". Build with -sASSERTIONS for more info.";var e=new WebAssembly.RuntimeError(what);throw e}var wasmBinaryFile;function findWasmBinary(){return locateFile("quant.wasm")}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"}async function getWasmBinary(binaryFile){if(!wasmBinary){try{var response=await readAsync(binaryFile);return new Uint8Array(response)}catch{}}return getBinarySync(binaryFile)}async function instantiateArrayBuffer(binaryFile,imports){try{var binary=await getWasmBinary(binaryFile);var instance=await WebAssembly.instantiate(binary,imports);return instance}catch(reason){err(`failed to asynchronously prepare wasm: ${reason}`);abort(reason)}}async function instantiateAsync(binary,binaryFile,imports){if(!binary){try{var response=fetch(binaryFile,{credentials:"same-origin"});var instantiationResult=await WebAssembly.instantiateStreaming(response,imports);return instantiationResult}catch(reason){err(`wasm streaming compile failed: ${reason}`);err("falling back to ArrayBuffer instantiation")}}return instantiateArrayBuffer(binaryFile,imports)}function getWasmImports(){var imports={a:wasmImports};return imports}async function createWasm(){function receiveInstance(instance,module){wasmExports=instance.exports;wasmExports=Asyncify.instrumentWasmExports(wasmExports);wasmExports=applySignatureConversions(wasmExports);assignWasmExports(wasmExports);updateMemoryViews();removeRunDependency("wasm-instantiate");return wasmExports}addRunDependency("wasm-instantiate");function receiveInstantiationResult(result){return receiveInstance(result["instance"])}var info=getWasmImports();if(Module["instantiateWasm"]){return new Promise((resolve,reject)=>{Module["instantiateWasm"](info,(inst,mod)=>{resolve(receiveInstance(inst,mod))})})}wasmBinaryFile??=findWasmBinary();var result=await instantiateAsync(wasmBinary,wasmBinaryFile,info);var exports=receiveInstantiationResult(result);return exports}class ExitStatus{name="ExitStatus";constructor(status){this.message=`Program terminated with exit(${status})`;this.status=status}}var HEAP16;var HEAP32;var HEAP64;var HEAP8;var HEAPF32;var HEAPF64;var HEAPU16;var HEAPU32;var HEAPU64;var HEAPU8;var callRuntimeCallbacks=callbacks=>{while(callbacks.length>0){callbacks.shift()(Module)}};var onPostRuns=[];var addOnPostRun=cb=>onPostRuns.push(cb);var onPreRuns=[];var addOnPreRun=cb=>onPreRuns.push(cb);var runDependencies=0;var dependenciesFulfilled=null;var removeRunDependency=id=>{runDependencies--;Module["monitorRunDependencies"]?.(runDependencies);if(runDependencies==0){if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}};var addRunDependency=id=>{runDependencies++;Module["monitorRunDependencies"]?.(runDependencies)};var dynCalls={};var noExitRuntime=true;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.slice(-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.slice(0,-1)}return root+dir},basename:path=>path&&path.match(/([^\/]+|\/)\/*$/)[1],join:(...paths)=>PATH.normalize(paths.join("/")),join2:(l,r)=>PATH.normalize(l+"/"+r)};var initRandomFill=()=>view=>(crypto.getRandomValues(view),0);var randomFill=view=>(randomFill=initRandomFill())(view);var PATH_FS={resolve:(...args)=>{var resolvedPath="",resolvedAbsolute=false;for(var i=args.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?args[i]:FS.cwd();if(typeof path!="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=PATH.isAbs(path)}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter(p=>!!p),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."},relative:(from,to)=>{from=PATH_FS.resolve(from).slice(1);to=PATH_FS.resolve(to).slice(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 maxIdx=idx+maxBytesToRead;if(ignoreNul)return maxIdx;while(heapOrArray[idx]&&!(idx>=maxIdx))++idx;return idx};var UTF8ArrayToString=(heapOrArray,idx=0,maxBytesToRead,ignoreNul)=>{idx>>>=0;var endPtr=findStringEnd(heapOrArray,idx,maxBytesToRead,ignoreNul);if(endPtr-idx>16&&heapOrArray.buffer&&UTF8Decoder){return UTF8Decoder.decode(heapOrArray.subarray(idx,endPtr))}var str="";while(idx>10,56320|ch&1023)}}return str};var FS_stdin_getChar_buffer=[];var lengthBytesUTF8=str=>{var len=0;for(var i=0;i=55296&&c<=57343){len+=4;++i}else{len+=3}}return len};var stringToUTF8Array=(str,heap,outIdx,maxBytesToWrite)=>{outIdx>>>=0;if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=endIdx)break;heap[outIdx++>>>0]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++>>>0]=192|u>>6;heap[outIdx++>>>0]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++>>>0]=224|u>>12;heap[outIdx++>>>0]=128|u>>6&63;heap[outIdx++>>>0]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++>>>0]=240|u>>18;heap[outIdx++>>>0]=128|u>>12&63;heap[outIdx++>>>0]=128|u>>6&63;heap[outIdx++>>>0]=128|u&63;i++}}heap[outIdx>>>0]=0;return outIdx-startIdx};var 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(globalThis.window?.prompt){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else{}if(!result){return null}FS_stdin_getChar_buffer=intArrayFromString(result,true)}return FS_stdin_getChar_buffer.shift()};var TTY={ttys:[],init(){},shutdown(){},register(dev,ops){TTY.ttys[dev]={input:[],output:[],ops};FS.registerDevice(dev,TTY.stream_ops)},stream_ops:{open(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(43)}stream.tty=tty;stream.seekable=false},close(stream){stream.tty.ops.fsync(stream.tty)},fsync(stream){stream.tty.ops.fsync(stream.tty)},read(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.get_char){throw new FS.ErrnoError(60)}var bytesRead=0;for(var i=0;i0){out(UTF8ArrayToString(tty.output));tty.output=[]}},ioctl_tcgets(tty){return{c_iflag:25856,c_oflag:5,c_cflag:191,c_lflag:35387,c_cc:[3,28,127,21,4,0,1,0,17,19,26,0,18,15,23,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]}},ioctl_tcsets(tty,optional_actions,data){return 0},ioctl_tiocgwinsz(tty){return[24,80]}},default_tty1_ops:{put_char(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output));tty.output=[]}else{if(val!=0)tty.output.push(val)}},fsync(tty){if(tty.output?.length>0){err(UTF8ArrayToString(tty.output));tty.output=[]}}}};var zeroMemory=(ptr,size)=>HEAPU8.fill(0,ptr,ptr+size);var alignMemory=(size,alignment)=>Math.ceil(size/alignment)*alignment;var mmapAlloc=size=>{size=alignMemory(size,65536);var ptr=_emscripten_builtin_memalign(65536,size);if(ptr)zeroMemory(ptr,size);return ptr};var MEMFS={ops_table:null,mount(mount){return MEMFS.createNode(null,"/",16895,0)},createNode(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(63)}MEMFS.ops_table||={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,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=MEMFS.emptyFileContents??=new Uint8Array(0)}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.atime=node.mtime=node.ctime=Date.now();if(parent){parent.contents[name]=node;parent.atime=parent.mtime=parent.ctime=node.atime}return node},getFileDataAsTypedArray(node){return node.contents.subarray(0,node.usedBytes)},expandFileStorage(node,newCapacity){var prevCapacity=node.contents.length;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity>>0);if(prevCapacity)newCapacity=Math.max(newCapacity,256);var oldContents=MEMFS.getFileDataAsTypedArray(node);node.contents=new Uint8Array(newCapacity);node.contents.set(oldContents)},resizeFileStorage(node,newSize){if(node.usedBytes==newSize)return;var oldContents=node.contents;node.contents=new Uint8Array(newSize);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.atime);attr.mtime=new Date(node.mtime);attr.ctime=new Date(node.ctime);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr},setattr(node,attr){for(const key of["mode","atime","mtime","ctime"]){if(attr[key]!=null){node[key]=attr[key]}}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}},lookup(parent,name){if(!MEMFS.doesNotExistError){MEMFS.doesNotExistError=new FS.ErrnoError(44);MEMFS.doesNotExistError.stack=""}throw MEMFS.doesNotExistError},mknod(parent,name,mode,dev){return MEMFS.createNode(parent,name,mode,dev)},rename(old_node,new_dir,new_name){var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(new_node){if(FS.isDir(old_node.mode)){for(var i in new_node.contents){throw new FS.ErrnoError(55)}}FS.hashRemoveNode(new_node)}delete old_node.parent.contents[old_node.name];new_dir.contents[new_name]=old_node;old_node.name=new_name;new_dir.ctime=new_dir.mtime=old_node.parent.ctime=old_node.parent.mtime=Date.now()},unlink(parent,name){delete parent.contents[name];parent.ctime=parent.mtime=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.ctime=parent.mtime=Date.now()},readdir(node){return[".","..",...Object.keys(node.contents)]},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);buffer.set(contents.subarray(position,position+size),offset);return size},write(stream,buffer,offset,length,position,canOwn){if(buffer.buffer===HEAP8.buffer){canOwn=false}if(!length)return 0;var node=stream.node;node.mtime=node.ctime=Date.now();if(canOwn){node.contents=buffer.subarray(offset,offset+length);node.usedBytes=length}else if(node.usedBytes===0&&position===0){node.contents=buffer.slice(offset,offset+length);node.usedBytes=length}else{MEMFS.expandFileStorage(node,position+length);node.contents.set(buffer.subarray(offset,offset+length),position);node.usedBytes=Math.max(node.usedBytes,position+length)}return length},llseek(stream,offset,whence){var position=offset;if(whence===1){position+=stream.position}else if(whence===2){if(FS.isFile(stream.node.mode)){position+=stream.node.usedBytes}}if(position<0){throw new FS.ErrnoError(28)}return position},mmap(stream,length,position,prot,flags){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(43)}var ptr;var allocated;var contents=stream.node.contents;if(!(flags&2)&&contents.buffer===HEAP8.buffer){allocated=false;ptr=contents.byteOffset}else{allocated=true;ptr=mmapAlloc(length);if(!ptr){throw new FS.ErrnoError(48)}if(contents){if(position>0||position+length>>0)}}return{ptr,allocated}},msync(stream,buffer,offset,length,mmapFlags){MEMFS.stream_ops.write(stream,buffer,0,length,offset,false);return 0}}};var FS_modeStringToFlags=str=>{if(typeof str!="string")return str;var flagModes={r:0,"r+":2,w:512|64|1,"w+":512|64|2,a:1024|64|1,"a+":1024|64|2};var flags=flagModes[str];if(typeof flags=="undefined"){throw new Error(`Unknown file open mode: ${str}`)}return flags};var FS_fileDataToTypedArray=data=>{if(typeof data=="string"){data=intArrayFromString(data,true)}if(!data.subarray){data=new Uint8Array(data)}return data};var FS_getMode=(canRead,canWrite)=>{var mode=0;if(canRead)mode|=292|73;if(canWrite)mode|=146;return mode};var asyncLoad=async url=>{var arrayBuffer=await readAsync(url);return new Uint8Array(arrayBuffer)};var FS_createDataFile=(...args)=>FS.createDataFile(...args);var getUniqueRunDependency=id=>id;var preloadPlugins=[];var FS_handledByPreloadPlugin=async(byteArray,fullname)=>{if(typeof Browser!="undefined")Browser.init();for(var plugin of preloadPlugins){if(plugin["canHandle"](fullname)){return plugin["handle"](byteArray,fullname)}}return byteArray};var FS_preloadFile=async(parent,name,url,canRead,canWrite,dontCreateFile,canOwn,preFinish)=>{var fullname=name?PATH_FS.resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency(`cp ${fullname}`);addRunDependency(dep);try{var byteArray=url;if(typeof url=="string"){byteArray=await asyncLoad(url)}byteArray=await FS_handledByPreloadPlugin(byteArray,fullname);preFinish?.();if(!dontCreateFile){FS_createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}}finally{removeRunDependency(dep)}};var FS_createPreloadedFile=(parent,name,url,canRead,canWrite,onload,onerror,dontCreateFile,canOwn,preFinish)=>{FS_preloadFile(parent,name,url,canRead,canWrite,dontCreateFile,canOwn,preFinish).then(onload).catch(onerror)};var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,filesystems:null,syncFSRequests:0,ErrnoError:class{name="ErrnoError";constructor(errno){this.errno=errno}},FSStream:class{shared={};get object(){return this.node}set object(val){this.node=val}get isRead(){return(this.flags&2097155)!==1}get isWrite(){return(this.flags&2097155)!==0}get isAppend(){return this.flags&1024}get flags(){return this.shared.flags}set flags(val){this.shared.flags=val}get position(){return this.shared.position}set position(val){this.shared.position=val}},FSNode:class{node_ops={};stream_ops={};readMode=292|73;writeMode=146;mounted=null;constructor(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.rdev=rdev;this.atime=this.mtime=this.ctime=Date.now()}get read(){return(this.mode&this.readMode)===this.readMode}set read(val){val?this.mode|=this.readMode:this.mode&=~this.readMode}get write(){return(this.mode&this.writeMode)===this.writeMode}set write(val){val?this.mode|=this.writeMode:this.mode&=~this.writeMode}get isFolder(){return FS.isDir(this.mode)}get isDevice(){return FS.isChrdev(this.mode)}},lookupPath(path,opts={}){if(!path){throw new FS.ErrnoError(44)}opts.follow_mount??=true;if(!PATH.isAbs(path)){path=FS.cwd()+"/"+path}linkloop:for(var nlinks=0;nlinks<40;nlinks++){var parts=path.split("/").filter(p=>!!p);var current=FS.root;var current_path="/";for(var i=0;i>>0)%FS.nameTable.length},hashAddNode(node){var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node},hashRemoveNode(node){var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}},lookupNode(parent,name){var errCode=FS.mayLookup(parent);if(errCode){throw new FS.ErrnoError(errCode)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)},createNode(parent,name,mode,rdev){var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node},destroyNode(node){FS.hashRemoveNode(node)},isRoot(node){return node===node.parent},isMountpoint(node){return!!node.mounted},isFile(mode){return(mode&61440)===32768},isDir(mode){return(mode&61440)===16384},isLink(mode){return(mode&61440)===40960},isChrdev(mode){return(mode&61440)===8192},isBlkdev(mode){return(mode&61440)===24576},isFIFO(mode){return(mode&61440)===4096},isSocket(mode){return(mode&49152)===49152},flagsToPermissionString(flag){var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms},nodePermissions(node,perms){if(FS.ignorePermissions){return 0}if(perms.includes("r")&&!(node.mode&292)){return 2}if(perms.includes("w")&&!(node.mode&146)){return 2}if(perms.includes("x")&&!(node.mode&73)){return 2}return 0},mayLookup(dir){if(!FS.isDir(dir.mode))return 54;var errCode=FS.nodePermissions(dir,"x");if(errCode)return errCode;if(!dir.node_ops.lookup)return 2;return 0},mayCreate(dir,name){if(!FS.isDir(dir.mode)){return 54}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}var mode=FS.flagsToPermissionString(flags);if(FS.isDir(node.mode)){if(mode!=="r"||flags&(512|64)){return 31}}return FS.nodePermissions(node,mode)},checkOpExists(op,err){if(!op){throw new FS.ErrnoError(err)}return op},MAX_OPEN_FDS:4096,nextfd(){for(var fd=0;fd<=FS.MAX_OPEN_FDS;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(33)},getStreamChecked(fd){var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(8)}return stream},getStream:fd=>FS.streams[fd],createStream(stream,fd=-1){stream=Object.assign(new FS.FSStream,stream);if(fd==-1){fd=FS.nextfd()}stream.fd=fd;FS.streams[fd]=stream;return stream},closeStream(fd){FS.streams[fd]=null},dupStream(origStream,fd=-1){var stream=FS.createStream(origStream,fd);stream.stream_ops?.dup?.(stream);return stream},doSetAttr(stream,node,attr){var setattr=stream?.stream_ops.setattr;var arg=setattr?stream:node;setattr??=node.node_ops.setattr;FS.checkOpExists(setattr,63);setattr(arg,attr)},chrdev_stream_ops:{open(stream){var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;stream.stream_ops.open?.(stream)},llseek(){throw new FS.ErrnoError(70)}},major:dev=>dev>>8,minor:dev=>dev&255,makedev:(ma,mi)=>ma<<8|mi,registerDevice(dev,ops){FS.devices[dev]={stream_ops:ops}},getDevice:dev=>FS.devices[dev],getMounts(mount){var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push(...m.mounts)}return mounts},syncfs(populate,callback){if(typeof populate=="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){err(`warning: ${FS.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`)}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(errCode){FS.syncFSRequests--;return callback(errCode)}function done(errCode){if(errCode){if(!done.errored){done.errored=true;return doCallback(errCode)}return}if(++completed>=mounts.length){doCallback(null)}}for(var mount of mounts){if(mount.type.syncfs){mount.type.syncfs(mount,populate,done)}else{done(null)}}},mount(type,opts,mountpoint){var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(10)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}}var mount={type,opts,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);for(var[hash,current]of Object.entries(FS.nameTable)){while(current){var next=current.name_next;if(mounts.includes(current.mount)){FS.destroyNode(current)}current=next}}node.mounted=null;var idx=node.mount.mounts.indexOf(mount);node.mount.mounts.splice(idx,1)},lookup(parent,name){return parent.node_ops.lookup(parent,name)},mknod(path,mode,dev){var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name){throw new FS.ErrnoError(28)}if(name==="."||name===".."){throw new FS.ErrnoError(20)}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)},statfs(path){return FS.statfsNode(FS.lookupPath(path,{follow:true}).node)},statfsStream(stream){return FS.statfsNode(stream.node)},statfsNode(node){var rtn={bsize:4096,frsize:4096,blocks:1e6,bfree:5e5,bavail:5e5,files:FS.nextInode,ffree:FS.nextInode-1,fsid:42,flags:2,namelen:255};if(node.node_ops.statfs){Object.assign(rtn,node.node_ops.statfs(node.mount.opts.root))}return rtn},create(path,mode=438){mode&=4095;mode|=32768;return FS.mknod(path,mode,0)},mkdir(path,mode=511){mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)},mkdirTree(path,mode){var dirs=path.split("/");var d="";for(var dir of dirs){if(!dir)continue;if(d||PATH.isAbs(path))d+="/";d+=dir;try{FS.mkdir(d,mode)}catch(e){if(e.errno!=20)throw e}}},mkdev(path,mode,dev){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);old_node.parent=new_dir}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;var readdir=FS.checkOpExists(node.node_ops.readdir,54);return 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 link.node_ops.readlink(link)},stat(path,dontFollow){var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;var getattr=FS.checkOpExists(node.node_ops.getattr,63);return getattr(node)},fstat(fd){var stream=FS.getStreamChecked(fd);var node=stream.node;var getattr=stream.stream_ops.getattr;var arg=getattr?stream:node;getattr??=node.node_ops.getattr;FS.checkOpExists(getattr,63);return getattr(arg)},lstat(path){return FS.stat(path,true)},doChmod(stream,node,mode,dontFollow){FS.doSetAttr(stream,node,{mode:mode&4095|node.mode&~4095,ctime:Date.now(),dontFollow})},chmod(path,mode,dontFollow){var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}FS.doChmod(null,node,mode,dontFollow)},lchmod(path,mode){FS.chmod(path,mode,true)},fchmod(fd,mode){var stream=FS.getStreamChecked(fd);FS.doChmod(stream,stream.node,mode,false)},doChown(stream,node,dontFollow){FS.doSetAttr(stream,node,{timestamp:Date.now(),dontFollow})},chown(path,uid,gid,dontFollow){var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}FS.doChown(null,node,dontFollow)},lchown(path,uid,gid){FS.chown(path,uid,gid,true)},fchown(fd,uid,gid){var stream=FS.getStreamChecked(fd);FS.doChown(stream,stream.node,false)},doTruncate(stream,node,len){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)}FS.doSetAttr(stream,node,{size:len,timestamp:Date.now()})},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}FS.doTruncate(null,node,len)},ftruncate(fd,len){var stream=FS.getStreamChecked(fd);if(len<0||(stream.flags&2097155)===0){throw new FS.ErrnoError(28)}FS.doTruncate(stream,stream.node,len)},utime(path,atime,mtime){var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;var setattr=FS.checkOpExists(node.node_ops.setattr,63);setattr(node,{atime,mtime})},open(path,flags,mode=438){if(path===""){throw new FS.ErrnoError(44)}flags=FS_modeStringToFlags(flags);if(flags&64){mode=mode&4095|32768}else{mode=0}var node;var isDirPath;if(typeof path=="object"){node=path}else{isDirPath=path.endsWith("/");var lookup=FS.lookupPath(path,{follow:!(flags&131072),noent_okay:true});node=lookup.node;path=lookup.path}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(20)}}else if(isDirPath){throw new FS.ErrnoError(31)}else{node=FS.mknod(path,mode|511,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,path:FS.getPath(node),flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false});if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(created){FS.chmod(node,mode&511)}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){return 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){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){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},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)}if(!length){throw new FS.ErrnoError(28)}return stream.stream_ops.mmap(stream,length,position,prot,flags)},msync(stream,buffer,offset,length,mmapFlags){if(!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)},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"){abort(`Invalid encoding type "${opts.encoding}"`)}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"){buf=UTF8ArrayToString(buf)}FS.close(stream);return buf},writeFile(path,data,opts={}){opts.flags=opts.flags||577;var stream=FS.open(path,opts.flags,opts.mode);data=FS_fileDataToTypedArray(data);FS.write(stream,data,0,data.byteLength,undefined,opts.canOwn);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,llseek:()=>0});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){randomFill(randomBuffer);randomLeft=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",16895,73);node.stream_ops={llseek:MEMFS.stream_ops.llseek};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},id:fd+1};ret.parent=ret;return ret},readdir(){return Array.from(FS.streams.entries()).filter(([k,v])=>v).map(([k,v])=>k.toString())}};return node}},{},"/proc/self/fd")},createStandardStreams(input,output,error){if(input){FS.createDevice("/dev","stdin",input)}else{FS.symlink("/dev/tty","/dev/stdin")}if(output){FS.createDevice("/dev","stdout",null,output)}else{FS.symlink("/dev/tty","/dev/stdout")}if(error){FS.createDevice("/dev","stderr",null,error)}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin",0);var stdout=FS.open("/dev/stdout",1);var stderr=FS.open("/dev/stderr",1)},staticInit(){FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={MEMFS}},init(input,output,error){FS.initialized=true;input??=Module["stdin"];output??=Module["stdout"];error??=Module["stderr"];FS.createStandardStreams(input,output,error)},quit(){FS.initialized=false;for(var stream of FS.streams){if(stream){FS.close(stream)}}},findObject(path,dontResolveLastLink){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){if(e.errno!=20)throw 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){data=FS_fileDataToTypedArray(data);FS.chmod(node,mode|146);var stream=FS.open(node,577);FS.write(stream,data,0,data.length,0,canOwn);FS.close(stream);FS.chmod(node,mode)}},createDevice(parent,name,input,output){var path=PATH.join2(typeof parent=="string"?parent:FS.getPath(parent),name);var mode=FS_getMode(!!input,!!output);FS.createDevice.major??=64;var dev=FS.makedev(FS.createDevice.major++,0);FS.registerDevice(dev,{open(stream){stream.seekable=false},close(stream){if(output?.buffer?.length){output(10)}},read(stream,buffer,offset,length,pos){var bytesRead=0;for(var i=0;ithis.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]}setDataGetter(getter){this.getter=getter}cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))abort("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)abort("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)abort("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))abort("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")abort("doXHR failed!");return lazyArray.chunks[chunkNum]});if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;out("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true}get length(){if(!this.lengthKnown){this.cacheLength()}return this._length}get chunkSize(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize}}if(globalThis.XMLHttpRequest){if(!ENVIRONMENT_IS_WORKER)abort("Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc");var lazyArray=new LazyUint8Array;var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url}}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={};for(const[key,fn]of Object.entries(node.stream_ops)){stream_ops[key]=(...args)=>{FS.forceLoadFile(node);return fn(...args)}}function writeChunks(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);if(contents.slice){for(var i=0;i{FS.forceLoadFile(node);return writeChunks(stream,buffer,offset,length,position)};stream_ops.mmap=(stream,length,position,prot,flags)=>{FS.forceLoadFile(node);var ptr=mmapAlloc(length);if(!ptr){throw new FS.ErrnoError(48)}writeChunks(stream,HEAP8,ptr,length,position);return{ptr,allocated:true}};node.stream_ops=stream_ops;return node}};var UTF8ToString=(ptr,maxBytesToRead,ignoreNul)=>{ptr>>>=0;return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead,ignoreNul):""};var SYSCALLS={calculateAt(dirfd,path,allowEmpty){if(PATH.isAbs(path)){return path}var dir;if(dirfd===-100){dir=FS.cwd()}else{var dirstream=SYSCALLS.getStreamFromFD(dirfd);dir=dirstream.path}if(path.length==0){if(!allowEmpty){throw new FS.ErrnoError(44)}return dir}return dir+"/"+path},writeStat(buf,stat){HEAPU32[buf>>>2>>>0]=stat.dev;HEAPU32[buf+4>>>2>>>0]=stat.mode;HEAPU32[buf+8>>>2>>>0]=stat.nlink;HEAPU32[buf+12>>>2>>>0]=stat.uid;HEAPU32[buf+16>>>2>>>0]=stat.gid;HEAPU32[buf+20>>>2>>>0]=stat.rdev;HEAP64[buf+24>>>3>>>0]=BigInt(stat.size);HEAP32[buf+32>>>2>>>0]=4096;HEAP32[buf+36>>>2>>>0]=stat.blocks;var atime=stat.atime.getTime();var mtime=stat.mtime.getTime();var ctime=stat.ctime.getTime();HEAP64[buf+40>>>3>>>0]=BigInt(Math.floor(atime/1e3));HEAPU32[buf+48>>>2>>>0]=atime%1e3*1e3*1e3;HEAP64[buf+56>>>3>>>0]=BigInt(Math.floor(mtime/1e3));HEAPU32[buf+64>>>2>>>0]=mtime%1e3*1e3*1e3;HEAP64[buf+72>>>3>>>0]=BigInt(Math.floor(ctime/1e3));HEAPU32[buf+80>>>2>>>0]=ctime%1e3*1e3*1e3;HEAP64[buf+88>>>3>>>0]=BigInt(stat.ino);return 0},writeStatFs(buf,stats){HEAPU32[buf+4>>>2>>>0]=stats.bsize;HEAPU32[buf+60>>>2>>>0]=stats.bsize;HEAP64[buf+8>>>3>>>0]=BigInt(stats.blocks);HEAP64[buf+16>>>3>>>0]=BigInt(stats.bfree);HEAP64[buf+24>>>3>>>0]=BigInt(stats.bavail);HEAP64[buf+32>>>3>>>0]=BigInt(stats.files);HEAP64[buf+40>>>3>>>0]=BigInt(stats.ffree);HEAPU32[buf+48>>>2>>>0]=stats.fsid;HEAPU32[buf+64>>>2>>>0]=stats.flags;HEAPU32[buf+56>>>2>>>0]=stats.namelen},doMsync(addr,stream,len,flags,offset){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(43)}if(flags&2){return 0}var buffer=HEAPU8.slice(addr,addr+len);FS.msync(stream,buffer,offset,len,flags)},getStreamFromFD(fd){var stream=FS.getStreamChecked(fd);return stream},varargs:undefined,getStr(ptr){var ret=UTF8ToString(ptr);return ret}};var INT53_MAX=9007199254740992;var INT53_MIN=-9007199254740992;var bigintToI53Checked=num=>numINT53_MAX?NaN:Number(num);function ___syscall_faccessat(dirfd,path,amode,flags){path>>>=0;try{path=SYSCALLS.getStr(path);path=SYSCALLS.calculateAt(dirfd,path);if(amode&~7){return-28}var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;if(!node){return-44}var perms="";if(amode&4)perms+="r";if(amode&2)perms+="w";if(amode&1)perms+="x";if(perms&&FS.nodePermissions(node,perms)){return-2}return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_fstat64(fd,buf){buf>>>=0;try{return SYSCALLS.writeStat(buf,FS.fstat(fd))}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}var stringToUTF8=(str,outPtr,maxBytesToWrite)=>stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite);function ___syscall_getdents64(fd,dirp,count){dirp>>>=0;count>>>=0;try{var stream=SYSCALLS.getStreamFromFD(fd);stream.getdents||=FS.readdir(stream.path);var struct_size=280;var pos=0;var off=FS.llseek(stream,0,1);var startIdx=Math.floor(off/struct_size);var endIdx=Math.min(stream.getdents.length,startIdx+Math.floor(count/struct_size));for(var idx=startIdx;idx>>3>>>0]=BigInt(id);HEAP64[dirp+pos+8>>>3>>>0]=BigInt((idx+1)*struct_size);HEAP16[dirp+pos+16>>>1>>>0]=280;HEAP8[dirp+pos+18>>>0]=type;stringToUTF8(name,dirp+pos+19,256);pos+=struct_size}FS.llseek(stream,idx*struct_size,0);return pos}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}var syscallGetVarargI=()=>{var ret=HEAP32[+SYSCALLS.varargs>>>2>>>0];SYSCALLS.varargs+=4;return ret};var syscallGetVarargP=syscallGetVarargI;function ___syscall_ioctl(fd,op,varargs){varargs>>>=0;SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(fd);switch(op){case 21509:{if(!stream.tty)return-59;return 0}case 21505:{if(!stream.tty)return-59;if(stream.tty.ops.ioctl_tcgets){var termios=stream.tty.ops.ioctl_tcgets(stream);var argp=syscallGetVarargP();HEAP32[argp>>>2>>>0]=termios.c_iflag||0;HEAP32[argp+4>>>2>>>0]=termios.c_oflag||0;HEAP32[argp+8>>>2>>>0]=termios.c_cflag||0;HEAP32[argp+12>>>2>>>0]=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=syscallGetVarargP();var c_iflag=HEAP32[argp>>>2>>>0];var c_oflag=HEAP32[argp+4>>>2>>>0];var c_cflag=HEAP32[argp+8>>>2>>>0];var c_lflag=HEAP32[argp+12>>>2>>>0];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_oflag,c_cflag,c_lflag,c_cc})}return 0}case 21519:{if(!stream.tty)return-59;var argp=syscallGetVarargP();HEAP32[argp>>>2>>>0]=0;return 0}case 21520:{if(!stream.tty)return-59;return-28}case 21537:case 21531:{var argp=syscallGetVarargP();return FS.ioctl(stream,op,argp)}case 21523:{if(!stream.tty)return-59;if(stream.tty.ops.ioctl_tiocgwinsz){var winsize=stream.tty.ops.ioctl_tiocgwinsz(stream.tty);var argp=syscallGetVarargP();HEAP16[argp>>>1>>>0]=winsize[0];HEAP16[argp+2>>>1>>>0]=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_openat(dirfd,path,flags,varargs){path>>>=0;varargs>>>=0;SYSCALLS.varargs=varargs;try{path=SYSCALLS.getStr(path);path=SYSCALLS.calculateAt(dirfd,path);var mode=varargs?syscallGetVarargI():0;return FS.open(path,flags,mode).fd}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}var __abort_js=()=>abort("");var runtimeKeepaliveCounter=0;var __emscripten_runtime_keepalive_clear=()=>{noExitRuntime=false;runtimeKeepaliveCounter=0};function __mmap_js(len,prot,flags,fd,offset,allocated,addr){len>>>=0;offset=bigintToI53Checked(offset);allocated>>>=0;addr>>>=0;try{var stream=SYSCALLS.getStreamFromFD(fd);var res=FS.mmap(stream,len,offset,prot,flags);var ptr=res.ptr;HEAP32[allocated>>>2>>>0]=res.allocated;HEAPU32[addr>>>2>>>0]=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){addr>>>=0;len>>>=0;offset=bigintToI53Checked(offset);try{var stream=SYSCALLS.getStreamFromFD(fd);if(prot&2){SYSCALLS.doMsync(addr,stream,len,flags,offset)}}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}var timers={};var handleException=e=>{if(e instanceof ExitStatus||e=="unwind"){return EXITSTATUS}quit_(1,e)};var keepRuntimeAlive=()=>noExitRuntime||runtimeKeepaliveCounter>0;var _proc_exit=code=>{EXITSTATUS=code;if(!keepRuntimeAlive()){Module["onExit"]?.(code);ABORT=true}quit_(code,new ExitStatus(code))};var exitJS=(status,implicit)=>{EXITSTATUS=status;_proc_exit(status)};var _exit=exitJS;var maybeExit=()=>{if(!keepRuntimeAlive()){try{_exit(EXITSTATUS)}catch(e){handleException(e)}}};var callUserCallback=func=>{if(ABORT){return}try{return func()}catch(e){handleException(e)}finally{maybeExit()}};var _emscripten_get_now=()=>performance.now();var __setitimer_js=(which,timeout_ms)=>{if(timers[which]){clearTimeout(timers[which].id);delete timers[which]}if(!timeout_ms)return 0;var id=setTimeout(()=>{delete timers[which];callUserCallback(()=>__emscripten_timeout(which,_emscripten_get_now()))},timeout_ms);timers[which]={id,timeout_ms};return 0};var getHeapMax=()=>4294901760;var growMemory=size=>{var oldHeapSize=wasmMemory.buffer.byteLength;var pages=(size-oldHeapSize+65535)/65536|0;try{wasmMemory.grow(pages);updateMemoryViews();return 1}catch(e){}};function _emscripten_resize_heap(requestedSize){requestedSize>>>=0;var oldSize=HEAPU8.length;var maxHeapSize=getHeapMax();if(requestedSize>maxHeapSize){return false}for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignMemory(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=growMemory(newSize);if(replacement){return true}}return false}var _emscripten_sleep=function(ms){let innerFunc=()=>new Promise(resolve=>setTimeout(resolve,ms));return Asyncify.handleAsync(innerFunc)};_emscripten_sleep.isAsync=true;var ENV={};var getExecutableName=()=>thisProgram||"./this.program";var getEnvStrings=()=>{if(!getEnvStrings.strings){var lang=(globalThis.navigator?.language??"C").replace("-","_")+".UTF-8";var env={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:lang,_:getExecutableName()};for(var x in ENV){if(ENV[x]===undefined)delete env[x];else env[x]=ENV[x]}var strings=[];for(var x in env){strings.push(`${x}=${env[x]}`)}getEnvStrings.strings=strings}return getEnvStrings.strings};function _environ_get(__environ,environ_buf){__environ>>>=0;environ_buf>>>=0;var bufSize=0;var envp=0;for(var string of getEnvStrings()){var ptr=environ_buf+bufSize;HEAPU32[__environ+envp>>>2>>>0]=ptr;bufSize+=stringToUTF8(string,ptr,Infinity)+1;envp+=4}return 0}function _environ_sizes_get(penviron_count,penviron_buf_size){penviron_count>>>=0;penviron_buf_size>>>=0;var strings=getEnvStrings();HEAPU32[penviron_count>>>2>>>0]=strings.length;var bufSize=0;for(var string of strings){bufSize+=lengthBytesUTF8(string)+1}HEAPU32[penviron_buf_size>>>2>>>0]=bufSize;return 0}function _fd_close(fd){try{var stream=SYSCALLS.getStreamFromFD(fd);FS.close(stream);return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}var doReadv=(stream,iov,iovcnt,offset)=>{var ret=0;for(var i=0;i>>2>>>0];var len=HEAPU32[iov+4>>>2>>>0];iov+=8;var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr>>=0;iovcnt>>>=0;pnum>>>=0;try{var stream=SYSCALLS.getStreamFromFD(fd);var num=doReadv(stream,iov,iovcnt);HEAPU32[pnum>>>2>>>0]=num;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}function _fd_seek(fd,offset,whence,newOffset){offset=bigintToI53Checked(offset);newOffset>>>=0;try{if(isNaN(offset))return 61;var stream=SYSCALLS.getStreamFromFD(fd);FS.llseek(stream,offset,whence);HEAP64[newOffset>>>3>>>0]=BigInt(stream.position);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>>>0];var len=HEAPU32[iov+4>>>2>>>0];iov+=8;var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr>>=0;iovcnt>>>=0;pnum>>>=0;try{var stream=SYSCALLS.getStreamFromFD(fd);var num=doWritev(stream,iov,iovcnt);HEAPU32[pnum>>>2>>>0]=num;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}var runAndAbortIfError=func=>{try{return func()}catch(e){abort(e)}};var Asyncify={instrumentWasmImports(imports){var importPattern=/^(emscripten_sleep|invoke_.*|__asyncjs__.*)$/;for(let[x,original]of Object.entries(imports)){if(typeof original=="function"){let isAsyncifyImport=original.isAsync||importPattern.test(x)}}},instrumentFunction(original){var wrapper=(...args)=>{Asyncify.exportCallStack.push(original);try{return original(...args)}finally{if(!ABORT){var top=Asyncify.exportCallStack.pop();Asyncify.maybeStopUnwind()}}};Asyncify.funcWrappers.set(original,wrapper);return wrapper},instrumentWasmExports(exports){var ret={};for(let[x,original]of Object.entries(exports)){if(typeof original=="function"){var wrapper=Asyncify.instrumentFunction(original);ret[x]=wrapper}else{ret[x]=original}}return ret},State:{Normal:0,Unwinding:1,Rewinding:2,Disabled:3},state:0,StackSize:65536,currData:null,handleSleepReturnValue:0,exportCallStack:[],callstackFuncToId:new Map,callStackIdToFunc:new Map,funcWrappers:new Map,callStackId:0,asyncPromiseHandlers:null,sleepCallbacks:[],getCallStackId(func){if(!Asyncify.callstackFuncToId.has(func)){var id=Asyncify.callStackId++;Asyncify.callstackFuncToId.set(func,id);Asyncify.callStackIdToFunc.set(id,func)}return Asyncify.callstackFuncToId.get(func)},maybeStopUnwind(){if(Asyncify.currData&&Asyncify.state===Asyncify.State.Unwinding&&Asyncify.exportCallStack.length===0){Asyncify.state=Asyncify.State.Normal;runAndAbortIfError(_asyncify_stop_unwind);if(typeof Fibers!="undefined"){Fibers.trampoline()}}},whenDone(){return new Promise((resolve,reject)=>{Asyncify.asyncPromiseHandlers={resolve,reject}})},allocateData(){var ptr=_malloc(12+Asyncify.StackSize);Asyncify.setDataHeader(ptr,ptr+12,Asyncify.StackSize);Asyncify.setDataRewindFunc(ptr);return ptr},setDataHeader(ptr,stack,stackSize){HEAPU32[ptr>>>2>>>0]=stack;HEAPU32[ptr+4>>>2>>>0]=stack+stackSize},setDataRewindFunc(ptr){var bottomOfCallStack=Asyncify.exportCallStack[0];var rewindId=Asyncify.getCallStackId(bottomOfCallStack);HEAP32[ptr+8>>>2>>>0]=rewindId},getDataRewindFunc(ptr){var id=HEAP32[ptr+8>>>2>>>0];var func=Asyncify.callStackIdToFunc.get(id);return func},doRewind(ptr){var original=Asyncify.getDataRewindFunc(ptr);var func=Asyncify.funcWrappers.get(original);return callUserCallback(func)},handleSleep(startAsync){if(ABORT)return;if(Asyncify.state===Asyncify.State.Normal){var reachedCallback=false;var reachedAfterCallback=false;startAsync((handleSleepReturnValue=0)=>{if(ABORT)return;Asyncify.handleSleepReturnValue=handleSleepReturnValue;reachedCallback=true;if(!reachedAfterCallback){return}Asyncify.state=Asyncify.State.Rewinding;runAndAbortIfError(()=>_asyncify_start_rewind(Asyncify.currData));if(typeof MainLoop!="undefined"&&MainLoop.func){MainLoop.resume()}var asyncWasmReturnValue,isError=false;try{asyncWasmReturnValue=Asyncify.doRewind(Asyncify.currData)}catch(err){asyncWasmReturnValue=err;isError=true}var handled=false;if(!Asyncify.currData){var asyncPromiseHandlers=Asyncify.asyncPromiseHandlers;if(asyncPromiseHandlers){Asyncify.asyncPromiseHandlers=null;(isError?asyncPromiseHandlers.reject:asyncPromiseHandlers.resolve)(asyncWasmReturnValue);handled=true}}if(isError&&!handled){throw asyncWasmReturnValue}});reachedAfterCallback=true;if(!reachedCallback){Asyncify.state=Asyncify.State.Unwinding;Asyncify.currData=Asyncify.allocateData();if(typeof MainLoop!="undefined"&&MainLoop.func){MainLoop.pause()}runAndAbortIfError(()=>_asyncify_start_unwind(Asyncify.currData))}}else if(Asyncify.state===Asyncify.State.Rewinding){Asyncify.state=Asyncify.State.Normal;runAndAbortIfError(_asyncify_stop_rewind);_free(Asyncify.currData);Asyncify.currData=null;Asyncify.sleepCallbacks.forEach(callUserCallback)}else{abort(`invalid state: ${Asyncify.state}`)}return Asyncify.handleSleepReturnValue},handleAsync:startAsync=>Asyncify.handleSleep(async wakeUp=>{wakeUp(await startAsync())})};var stringToNewUTF8=str=>{var size=lengthBytesUTF8(str)+1;var ret=_malloc(size);if(ret)stringToUTF8(str,ret,size);return ret};var allocateUTF8=(...args)=>stringToNewUTF8(...args);var FS_createPath=(...args)=>FS.createPath(...args);var FS_unlink=(...args)=>FS.unlink(...args);var FS_createLazyFile=(...args)=>FS.createLazyFile(...args);var FS_createDevice=(...args)=>FS.createDevice(...args);FS.createPreloadedFile=FS_createPreloadedFile;FS.preloadFile=FS_preloadFile;FS.staticInit();{if(Module["noExitRuntime"])noExitRuntime=Module["noExitRuntime"];if(Module["preloadPlugins"])preloadPlugins=Module["preloadPlugins"];if(Module["print"])out=Module["print"];if(Module["printErr"])err=Module["printErr"];if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].shift()()}}}Module["addRunDependency"]=addRunDependency;Module["removeRunDependency"]=removeRunDependency;Module["UTF8ToString"]=UTF8ToString;Module["FS_preloadFile"]=FS_preloadFile;Module["FS_unlink"]=FS_unlink;Module["FS_createPath"]=FS_createPath;Module["FS_createDevice"]=FS_createDevice;Module["FS"]=FS;Module["FS_createDataFile"]=FS_createDataFile;Module["FS_createLazyFile"]=FS_createLazyFile;Module["allocateUTF8"]=allocateUTF8;function js_on_token(text){if(Module.onToken)Module.onToken(UTF8ToString(text))}function js_on_done(n_tokens,elapsed_ms){if(Module.onDone)Module.onDone(n_tokens,elapsed_ms)}function js_on_status(msg){if(Module.onStatus)Module.onStatus(UTF8ToString(msg))}function js_get_hw_concurrency(){return Math.min(navigator.hardwareConcurrency||1,8)}var _free,_malloc,_wasm_load_model,_wasm_generate_async,_wasm_generate,_wasm_model_info,_wasm_is_ready,_main,_emscripten_builtin_memalign,__emscripten_timeout,dynCall_vii,dynCall_iii,dynCall_ii,dynCall_jiji,dynCall_iiii,dynCall_iidiiii,dynCall_viii,dynCall_viiiii,dynCall_fiii,dynCall_vi,_asyncify_start_unwind,_asyncify_stop_unwind,_asyncify_start_rewind,_asyncify_stop_rewind,memory,__indirect_function_table,wasmMemory;function assignWasmExports(wasmExports){_free=Module["_free"]=wasmExports["A"];_malloc=Module["_malloc"]=wasmExports["B"];_wasm_load_model=Module["_wasm_load_model"]=wasmExports["C"];_wasm_generate_async=Module["_wasm_generate_async"]=wasmExports["D"];_wasm_generate=Module["_wasm_generate"]=wasmExports["E"];_wasm_model_info=Module["_wasm_model_info"]=wasmExports["F"];_wasm_is_ready=Module["_wasm_is_ready"]=wasmExports["G"];_main=Module["_main"]=wasmExports["H"];_emscripten_builtin_memalign=wasmExports["I"];__emscripten_timeout=wasmExports["J"];dynCall_vii=dynCalls["vii"]=wasmExports["K"];dynCall_iii=dynCalls["iii"]=wasmExports["L"];dynCall_ii=dynCalls["ii"]=wasmExports["M"];dynCall_jiji=dynCalls["jiji"]=wasmExports["N"];dynCall_iiii=dynCalls["iiii"]=wasmExports["O"];dynCall_iidiiii=dynCalls["iidiiii"]=wasmExports["P"];dynCall_viii=dynCalls["viii"]=wasmExports["Q"];dynCall_viiiii=dynCalls["viiiii"]=wasmExports["R"];dynCall_fiii=dynCalls["fiii"]=wasmExports["S"];dynCall_vi=dynCalls["vi"]=wasmExports["T"];_asyncify_start_unwind=wasmExports["U"];_asyncify_stop_unwind=wasmExports["V"];_asyncify_start_rewind=wasmExports["W"];_asyncify_stop_rewind=wasmExports["X"];memory=wasmMemory=wasmExports["y"];__indirect_function_table=wasmExports["__indirect_function_table"]}var wasmImports={i:___syscall_faccessat,v:___syscall_fstat64,p:___syscall_getdents64,h:___syscall_ioctl,d:___syscall_openat,m:__abort_js,l:__emscripten_runtime_keepalive_clear,q:__mmap_js,r:__munmap_js,n:__setitimer_js,c:_emscripten_get_now,o:_emscripten_resize_heap,g:_emscripten_sleep,t:_environ_get,u:_environ_sizes_get,b:_fd_close,x:_fd_read,s:_fd_seek,w:_fd_write,j:js_get_hw_concurrency,e:js_on_done,a:js_on_status,f:js_on_token,k:_proc_exit};function applySignatureConversions(wasmExports){wasmExports=Object.assign({},wasmExports);var makeWrapper_pp=f=>a0=>f(a0)>>>0;var makeWrapper_ppp=f=>(a0,a1)=>f(a0,a1)>>>0;var makeWrapper_p=f=>()=>f()>>>0;wasmExports["B"]=makeWrapper_pp(wasmExports["B"]);wasmExports["I"]=makeWrapper_ppp(wasmExports["I"]);wasmExports["_emscripten_stack_alloc"]=makeWrapper_pp(wasmExports["_emscripten_stack_alloc"]);wasmExports["emscripten_stack_get_current"]=makeWrapper_p(wasmExports["emscripten_stack_get_current"]);return wasmExports}function callMain(){var entryFunction=_main;var argc=0;var argv=0;try{var ret=entryFunction(argc,argv);exitJS(ret,true);return ret}catch(e){return handleException(e)}}function run(){if(runDependencies>0){dependenciesFulfilled=run;return}preRun();if(runDependencies>0){dependenciesFulfilled=run;return}function doRun(){Module["calledRun"]=true;if(ABORT)return;initRuntime();preMain();Module["onRuntimeInitialized"]?.();var noInitialRun=Module["noInitialRun"]||false;if(!noInitialRun)callMain();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(()=>{setTimeout(()=>Module["setStatus"](""),1);doRun()},1)}else{doRun()}}var wasmExports;createWasm();run(); diff --git a/wasm/quant.wasm b/wasm/quant.wasm index c0e99e4fbe3bc624adbba51d2111af40b5e468ff..73ba59c4f75f153d26bb2e0506847cea8db7f919 100755 GIT binary patch delta 112197 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

5ItlaHdXA+l>Ue% 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 F{{X^y11