Files
2026-04-05 03:08:53 +02:00

4 lines
95 KiB
JavaScript

"use strict";var B=Object.create;var C=Object.defineProperty;var j=Object.getOwnPropertyDescriptor;var W=Object.getOwnPropertyNames;var Y=Object.getPrototypeOf,z=Object.prototype.hasOwnProperty;var K=(e,r,t)=>r in e?C(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t;var G=(e,r)=>{for(var t in r)C(e,t,{get:r[t],enumerable:!0})},I=(e,r,t,n)=>{if(r&&typeof r=="object"||typeof r=="function")for(let o of W(r))!z.call(e,o)&&o!==t&&C(e,o,{get:()=>r[o],enumerable:!(n=j(r,o))||n.enumerable});return e};var V=(e,r,t)=>(t=e!=null?B(Y(e)):{},I(r||!e||!e.__esModule?C(t,"default",{value:e,enumerable:!0}):t,e)),q=e=>I(C({},"__esModule",{value:!0}),e);var b=(e,r,t)=>K(e,typeof r!="symbol"?r+"":r,t);var ee={};G(ee,{pgDump:()=>Q});module.exports=q(ee);var X=()=>typeof document>"u"?new URL(`file:${__filename}`).href:document.currentScript&&document.currentScript.src||new URL("main.js",document.baseURI).href,M=X();var $=(()=>{var _scriptName=M;return async function(moduleArg={}){var moduleRtn,Module=moduleArg,readyPromiseResolve,readyPromiseReject,readyPromise=new Promise((e,r)=>{readyPromiseResolve=e,readyPromiseReject=r}),ENVIRONMENT_IS_WEB=typeof window=="object",ENVIRONMENT_IS_WORKER=typeof WorkerGlobalScope<"u",ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string"&&process.type!="renderer";if(ENVIRONMENT_IS_NODE){let{createRequire:e}=await import("module"),r=M;r.startsWith("data:")&&(r="/");var require=e(r)}var moduleOverrides=Object.assign({},Module),arguments_=[],thisProgram="./this.program",quit_=(e,r)=>{throw r},scriptDirectory="";function locateFile(e){return Module.locateFile?Module.locateFile(e,scriptDirectory):scriptDirectory+e}var readAsync,readBinary;if(ENVIRONMENT_IS_NODE){var fs=require("fs"),nodePath=require("path");M.startsWith("data:")||(scriptDirectory=nodePath.dirname(require("url").fileURLToPath(M))+"/"),readBinary=e=>{e=isFileURI(e)?new URL(e):e;var r=fs.readFileSync(e);return r},readAsync=async(e,r=!0)=>{e=isFileURI(e)?new URL(e):e;var t=fs.readFileSync(e,r?void 0:"utf8");return t},!Module.thisProgram&&process.argv.length>1&&(thisProgram=process.argv[1].replace(/\\/g,"/")),arguments_=process.argv.slice(2),quit_=(e,r)=>{throw process.exitCode=e,r}}else(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)&&(ENVIRONMENT_IS_WORKER?scriptDirectory=self.location.href:typeof document<"u"&&document.currentScript&&(scriptDirectory=document.currentScript.src),_scriptName&&(scriptDirectory=_scriptName),scriptDirectory.startsWith("blob:")?scriptDirectory="":scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1),ENVIRONMENT_IS_WORKER&&(readBinary=e=>{var r=new XMLHttpRequest;return r.open("GET",e,!1),r.responseType="arraybuffer",r.send(null),new Uint8Array(r.response)}),readAsync=async e=>{var r=await fetch(e,{credentials:"same-origin"});if(r.ok)return r.arrayBuffer();throw new Error(r.status+" : "+r.url)});var out=Module.print||console.log.bind(console),err=Module.printErr||console.error.bind(console);Object.assign(Module,moduleOverrides),moduleOverrides=null,Module.arguments&&(arguments_=Module.arguments),Module.thisProgram&&(thisProgram=Module.thisProgram);var dynamicLibraries=Module.dynamicLibraries||[],wasmBinary=Module.wasmBinary;function intArrayFromBase64(e){if(typeof ENVIRONMENT_IS_NODE<"u"&&ENVIRONMENT_IS_NODE){var r=Buffer.from(e,"base64");return new Uint8Array(r.buffer,r.byteOffset,r.length)}for(var t=atob(e),n=new Uint8Array(t.length),o=0;o<t.length;++o)n[o]=t.charCodeAt(o);return n}var wasmMemory,ABORT=!1,EXITSTATUS;function assert(e,r){e||abort(r)}var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAP64,HEAPU64,HEAPF64;function updateMemoryViews(){var e=wasmMemory.buffer;Module.HEAP8=HEAP8=new Int8Array(e),Module.HEAP16=HEAP16=new Int16Array(e),Module.HEAPU8=HEAPU8=new Uint8Array(e),Module.HEAPU16=HEAPU16=new Uint16Array(e),Module.HEAP32=HEAP32=new Int32Array(e),Module.HEAPU32=HEAPU32=new Uint32Array(e),Module.HEAPF32=HEAPF32=new Float32Array(e),Module.HEAPF64=HEAPF64=new Float64Array(e),Module.HEAP64=HEAP64=new BigInt64Array(e),Module.HEAPU64=HEAPU64=new BigUint64Array(e)}if(Module.wasmMemory)wasmMemory=Module.wasmMemory;else{var INITIAL_MEMORY=Module.INITIAL_MEMORY||33554432;wasmMemory=new WebAssembly.Memory({initial:INITIAL_MEMORY/65536,maximum:32768})}updateMemoryViews();var __ATPRERUN__=[],__ATINIT__=[],__ATMAIN__=[],__ATEXIT__=[],__ATPOSTRUN__=[],__RELOC_FUNCS__=[],runtimeInitialized=!1,runtimeExited=!1;function preRun(){if(Module.preRun)for(typeof Module.preRun=="function"&&(Module.preRun=[Module.preRun]);Module.preRun.length;)addOnPreRun(Module.preRun.shift());callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=!0,callRuntimeCallbacks(__RELOC_FUNCS__),!Module.noFSInit&&!FS.initialized&&FS.init(),FS.ignorePermissions=!1,TTY.init(),PIPEFS.root=FS.mount(PIPEFS,{},null),SOCKFS.root=FS.mount(SOCKFS,{},null),callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){___funcs_on_exit(),callRuntimeCallbacks(__ATEXIT__),FS.quit(),TTY.shutdown(),runtimeExited=!0}function postRun(){if(Module.postRun)for(typeof Module.postRun=="function"&&(Module.postRun=[Module.postRun]);Module.postRun.length;)addOnPostRun(Module.postRun.shift());callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(e){__ATPRERUN__.unshift(e)}function addOnInit(e){__ATINIT__.unshift(e)}function addOnPostRun(e){__ATPOSTRUN__.unshift(e)}var runDependencies=0,dependenciesFulfilled=null;function getUniqueRunDependency(e){return e}function addRunDependency(e){runDependencies++,Module.monitorRunDependencies?.(runDependencies)}function removeRunDependency(e){if(runDependencies--,Module.monitorRunDependencies?.(runDependencies),runDependencies==0&&dependenciesFulfilled){var r=dependenciesFulfilled;dependenciesFulfilled=null,r()}}function abort(e){Module.onAbort?.(e),e="Aborted("+e+")",err(e),ABORT=!0,e+=". Build with -sASSERTIONS for more info.";var r=new WebAssembly.RuntimeError(e);throw readyPromiseReject(r),r}var dataURIPrefix="data:application/octet-stream;base64,",isDataURI=e=>e.startsWith(dataURIPrefix),isFileURI=e=>e.startsWith("file://");function findWasmBinary(){if(Module.locateFile){var e="pg_dump.wasm";return isDataURI(e)?e:locateFile(e)}return new URL("pg_dump.wasm",M).href}var wasmBinaryFile;function getBinarySync(e){if(e==wasmBinaryFile&&wasmBinary)return new Uint8Array(wasmBinary);if(readBinary)return readBinary(e);throw"both async and sync fetching of the wasm failed"}async function getWasmBinary(e){if(!wasmBinary)try{var r=await readAsync(e);return new Uint8Array(r)}catch{}return getBinarySync(e)}async function instantiateArrayBuffer(e,r){try{var t=await getWasmBinary(e),n=await WebAssembly.instantiate(t,r);return n}catch(o){err(`failed to asynchronously prepare wasm: ${o}`),abort(o)}}async function instantiateAsync(e,r,t){if(!e&&typeof WebAssembly.instantiateStreaming=="function"&&!isDataURI(r)&&!ENVIRONMENT_IS_NODE&&typeof fetch=="function")try{var n=fetch(r,{credentials:"same-origin"}),o=await WebAssembly.instantiateStreaming(n,t);return o}catch(a){err(`wasm streaming compile failed: ${a}`),err("falling back to ArrayBuffer instantiation")}return instantiateArrayBuffer(r,t)}function getWasmImports(){return{env:wasmImports,wasi_snapshot_preview1:wasmImports,"GOT.mem":new Proxy(wasmImports,GOTHandler),"GOT.func":new Proxy(wasmImports,GOTHandler)}}async function createWasm(){function e(o,a){wasmExports=o.exports,wasmExports=relocateExports(wasmExports,1024);var s=getDylinkMetadata(a);return s.neededDynlibs&&(dynamicLibraries=s.neededDynlibs.concat(dynamicLibraries)),mergeLibSymbols(wasmExports,"main"),LDSO.init(),loadDylibs(),addOnInit(wasmExports.__wasm_call_ctors),__RELOC_FUNCS__.push(wasmExports.__wasm_apply_data_relocs),removeRunDependency("wasm-instantiate"),wasmExports}addRunDependency("wasm-instantiate");function r(o){e(o.instance,o.module)}var t=getWasmImports();if(Module.instantiateWasm)try{return Module.instantiateWasm(t,e)}catch(o){err(`Module.instantiateWasm callback failed with error: ${o}`),readyPromiseReject(o)}wasmBinaryFile??(wasmBinaryFile=findWasmBinary());try{var n=await instantiateAsync(wasmBinary,wasmBinaryFile,t);return r(n),n}catch(o){readyPromiseReject(o);return}}var ASM_CONSTS={};class ExitStatus{constructor(r){b(this,"name","ExitStatus");this.message=`Program terminated with exit(${r})`,this.status=r}}var GOT={},currentModuleWeakSymbols=new Set([]),GOTHandler={get(e,r){var t=GOT[r];return t||(t=GOT[r]=new WebAssembly.Global({value:"i32",mutable:!0})),currentModuleWeakSymbols.has(r)||(t.required=!0),t}},callRuntimeCallbacks=e=>{for(;e.length>0;)e.shift()(Module)},UTF8Decoder=typeof TextDecoder<"u"?new TextDecoder:void 0,UTF8ArrayToString=(e,r=0,t=NaN)=>{for(var n=r+t,o=r;e[o]&&!(o>=n);)++o;if(o-r>16&&e.buffer&&UTF8Decoder)return UTF8Decoder.decode(e.subarray(r,o));for(var a="";r<o;){var s=e[r++];if(!(s&128)){a+=String.fromCharCode(s);continue}var l=e[r++]&63;if((s&224)==192){a+=String.fromCharCode((s&31)<<6|l);continue}var _=e[r++]&63;if((s&240)==224?s=(s&15)<<12|l<<6|_:s=(s&7)<<18|l<<12|_<<6|e[r++]&63,s<65536)a+=String.fromCharCode(s);else{var u=s-65536;a+=String.fromCharCode(55296|u>>10,56320|u&1023)}}return a},getDylinkMetadata=e=>{var r=0,t=0;function n(){return e[r++]}function o(){for(var P=0,R=1;;){var H=e[r++];if(P+=(H&127)*R,R*=128,!(H&128))break}return P}function a(){var P=o();return r+=P,UTF8ArrayToString(e,r-P,P)}function s(P,R){if(P)throw new Error(R)}var l="dylink.0";if(e instanceof WebAssembly.Module){var _=WebAssembly.Module.customSections(e,l);_.length===0&&(l="dylink",_=WebAssembly.Module.customSections(e,l)),s(_.length===0,"need dylink section"),e=new Uint8Array(_[0]),t=e.length}else{var u=new Uint32Array(new Uint8Array(e.subarray(0,24)).buffer),d=u[0]==1836278016;s(!d,"need to see wasm magic number"),s(e[8]!==0,"need the dylink section to be first"),r=9;var m=o();t=r+m,l=a()}var f={neededDynlibs:[],tlsExports:new Set,weakImports:new Set};if(l=="dylink"){f.memorySize=o(),f.memoryAlign=o(),f.tableSize=o(),f.tableAlign=o();for(var c=o(),S=0;S<c;++S){var p=a();f.neededDynlibs.push(p)}}else{s(l!=="dylink.0");for(var E=1,y=2,h=3,A=4,F=256,v=3,w=1;r<t;){var g=n(),T=o();if(g===E)f.memorySize=o(),f.memoryAlign=o(),f.tableSize=o(),f.tableAlign=o();else if(g===y)for(var c=o(),S=0;S<c;++S)p=a(),f.neededDynlibs.push(p);else if(g===h)for(var k=o();k--;){var D=a(),N=o();N&F&&f.tlsExports.add(D)}else if(g===A)for(var k=o();k--;){var O=a(),D=a(),N=o();(N&v)==w&&f.weakImports.add(D)}else r+=T}}return f},newDSO=(e,r,t)=>{var n={refcount:1/0,name:e,exports:t,global:!0};return LDSO.loadedLibsByName[e]=n,r!=null&&(LDSO.loadedLibsByHandle[r]=n),n},LDSO={loadedLibsByName:{},loadedLibsByHandle:{},init(){newDSO("__main__",0,wasmImports)}},___heap_base=290192,alignMemory=(e,r)=>Math.ceil(e/r)*r,getMemory=e=>{if(runtimeInitialized)return _calloc(e,1);var r=___heap_base,t=r+alignMemory(e,16);return ___heap_base=t,GOT.__heap_base.value=t,r},isInternalSym=e=>["__cpp_exception","__c_longjmp","__wasm_apply_data_relocs","__dso_handle","__tls_size","__tls_align","__set_stack_limits","_emscripten_tls_init","__wasm_init_tls","__wasm_call_ctors","__start_em_asm","__stop_em_asm","__start_em_js","__stop_em_js"].includes(e)||e.startsWith("__em_js__"),uleb128Encode=(e,r)=>{e<128?r.push(e):r.push(e%128|128,e>>7)},sigToWasmTypes=e=>{for(var r={i:"i32",j:"i64",f:"f32",d:"f64",e:"externref",p:"i32"},t={parameters:[],results:e[0]=="v"?[]:[r[e[0]]]},n=1;n<e.length;++n)t.parameters.push(r[e[n]]);return t},generateFuncType=(e,r)=>{var t=e.slice(0,1),n=e.slice(1),o={i:127,p:127,j:126,f:125,d:124,e:111};r.push(96),uleb128Encode(n.length,r);for(var a=0;a<n.length;++a)r.push(o[n[a]]);t=="v"?r.push(0):r.push(1,o[t])},convertJsFunctionToWasm=(e,r)=>{if(typeof WebAssembly.Function=="function")return new WebAssembly.Function(sigToWasmTypes(r),e);var t=[1];generateFuncType(r,t);var n=[0,97,115,109,1,0,0,0,1];uleb128Encode(t.length,n),n.push(...t),n.push(2,7,1,1,101,1,102,0,0,7,5,1,1,102,0,0);var o=new WebAssembly.Module(new Uint8Array(n)),a=new WebAssembly.Instance(o,{e:{f:e}}),s=a.exports.f;return s},wasmTableMirror=[],wasmTable=new WebAssembly.Table({initial:215,element:"anyfunc"}),getWasmTableEntry=e=>{var r=wasmTableMirror[e];return r||(e>=wasmTableMirror.length&&(wasmTableMirror.length=e+1),wasmTableMirror[e]=r=wasmTable.get(e)),r},updateTableMap=(e,r)=>{if(functionsInTableMap)for(var t=e;t<e+r;t++){var n=getWasmTableEntry(t);n&&functionsInTableMap.set(n,t)}},functionsInTableMap,getFunctionAddress=e=>(functionsInTableMap||(functionsInTableMap=new WeakMap,updateTableMap(0,wasmTable.length)),functionsInTableMap.get(e)||0),freeTableIndexes=[],getEmptyTableSlot=()=>{if(freeTableIndexes.length)return freeTableIndexes.pop();try{wasmTable.grow(1)}catch(e){throw e instanceof RangeError?"Unable to grow wasm table. Set ALLOW_TABLE_GROWTH.":e}return wasmTable.length-1},setWasmTableEntry=(e,r)=>{wasmTable.set(e,r),wasmTableMirror[e]=wasmTable.get(e)},addFunction=(e,r)=>{var t=getFunctionAddress(e);if(t)return t;var n=getEmptyTableSlot();try{setWasmTableEntry(n,e)}catch(a){if(!(a instanceof TypeError))throw a;var o=convertJsFunctionToWasm(e,r);setWasmTableEntry(n,o)}return functionsInTableMap.set(e,n),n},updateGOT=(e,r)=>{for(var t in e)if(!isInternalSym(t)){var n=e[t];GOT[t]||(GOT[t]=new WebAssembly.Global({value:"i32",mutable:!0})),(r||GOT[t].value==0)&&(typeof n=="function"?GOT[t].value=addFunction(n):typeof n=="number"?GOT[t].value=n:err(`unhandled export type for '${t}': ${typeof n}`))}},relocateExports=(e,r,t)=>{var n={};for(var o in e){var a=e[o];typeof a=="object"&&(a=a.value),typeof a=="number"&&(a+=r),n[o]=a}return updateGOT(n,t),n},isSymbolDefined=e=>{var r=wasmImports[e];return!(!r||r.stub)},dynCall=(e,r,t=[])=>{var n=getWasmTableEntry(r)(...t);return n},stackSave=()=>_emscripten_stack_get_current(),stackRestore=e=>__emscripten_stack_restore(e),createInvokeFunction=e=>(r,...t)=>{var n=stackSave();try{return dynCall(e,r,t)}catch(o){if(stackRestore(n),o!==o+0)throw o;if(_setThrew(1,0),e[0]=="j")return 0n}},resolveGlobalSymbol=(e,r=!1)=>{var t;return isSymbolDefined(e)?t=wasmImports[e]:e.startsWith("invoke_")&&(t=wasmImports[e]=createInvokeFunction(e.split("_")[1])),{sym:t,name:e}},UTF8ToString=(e,r)=>e?UTF8ArrayToString(HEAPU8,e,r):"",loadWebAssemblyModule=(binary,flags,libName,localScope,handle)=>{var metadata=getDylinkMetadata(binary);currentModuleWeakSymbols=metadata.weakImports;function loadModule(){var firstLoad=!handle||!HEAP8[handle+8];if(firstLoad){var memAlign=Math.pow(2,metadata.memoryAlign),memoryBase=metadata.memorySize?alignMemory(getMemory(metadata.memorySize+memAlign),memAlign):0,tableBase=metadata.tableSize?wasmTable.length:0;handle&&(HEAP8[handle+8]=1,HEAPU32[handle+12>>2]=memoryBase,HEAP32[handle+16>>2]=metadata.memorySize,HEAPU32[handle+20>>2]=tableBase,HEAP32[handle+24>>2]=metadata.tableSize)}else memoryBase=HEAPU32[handle+12>>2],tableBase=HEAPU32[handle+20>>2];var tableGrowthNeeded=tableBase+metadata.tableSize-wasmTable.length;tableGrowthNeeded>0&&wasmTable.grow(tableGrowthNeeded);var moduleExports;function resolveSymbol(e){var r=resolveGlobalSymbol(e).sym;return!r&&localScope&&(r=localScope[e]),r||(r=moduleExports[e]),r}var proxyHandler={get(e,r){switch(r){case"__memory_base":return memoryBase;case"__table_base":return tableBase}if(r in wasmImports&&!wasmImports[r].stub)return wasmImports[r];if(!(r in e)){var t;e[r]=(...n)=>(t||(t=resolveSymbol(r)),t(...n))}return e[r]}},proxy=new Proxy({},proxyHandler),info={"GOT.mem":new Proxy({},GOTHandler),"GOT.func":new Proxy({},GOTHandler),env:proxy,wasi_snapshot_preview1:proxy};function postInstantiation(module,instance){updateTableMap(tableBase,metadata.tableSize),moduleExports=relocateExports(instance.exports,memoryBase),flags.allowUndefined||reportUndefinedSymbols();function addEmAsm(addr,body){for(var args=[],arity=0;arity<16&&body.indexOf("$"+arity)!=-1;arity++)args.push("$"+arity);args=args.join(",");var func=`(${args}) => { ${body} };`;ASM_CONSTS[start]=eval(func)}if("__start_em_asm"in moduleExports)for(var start=moduleExports.__start_em_asm,stop=moduleExports.__stop_em_asm;start<stop;){var jsString=UTF8ToString(start);addEmAsm(start,jsString),start=HEAPU8.indexOf(0,start)+1}function addEmJs(name,cSig,body){var jsArgs=[];if(cSig=cSig.slice(1,-1),cSig!="void"){cSig=cSig.split(",");for(var i in cSig){var jsArg=cSig[i].split(" ").pop();jsArgs.push(jsArg.replace("*",""))}}var func=`(${jsArgs}) => ${body};`;moduleExports[name]=eval(func)}for(var name in moduleExports)if(name.startsWith("__em_js__")){var start=moduleExports[name],jsString=UTF8ToString(start),parts=jsString.split("<::>");addEmJs(name.replace("__em_js__",""),parts[0],parts[1]),delete moduleExports[name]}var applyRelocs=moduleExports.__wasm_apply_data_relocs;applyRelocs&&(runtimeInitialized?applyRelocs():__RELOC_FUNCS__.push(applyRelocs));var init=moduleExports.__wasm_call_ctors;return init&&(runtimeInitialized?init():__ATINIT__.push(init)),moduleExports}if(flags.loadAsync){if(binary instanceof WebAssembly.Module){var instance=new WebAssembly.Instance(binary,info);return Promise.resolve(postInstantiation(binary,instance))}return WebAssembly.instantiate(binary,info).then(e=>postInstantiation(e.module,e.instance))}var module=binary instanceof WebAssembly.Module?binary:new WebAssembly.Module(binary),instance=new WebAssembly.Instance(module,info);return postInstantiation(module,instance)}return flags.loadAsync?metadata.neededDynlibs.reduce((e,r)=>e.then(()=>loadDynamicLibrary(r,flags,localScope)),Promise.resolve()).then(loadModule):(metadata.neededDynlibs.forEach(e=>loadDynamicLibrary(e,flags,localScope)),loadModule())},mergeLibSymbols=(e,r)=>{for(var[t,n]of Object.entries(e)){let o=s=>{isSymbolDefined(s)||(wasmImports[s]=n)};o(t);let a="__main_argc_argv";t=="main"&&o(a),t==a&&o("main")}},asyncLoad=async e=>{var r=await readAsync(e);return new Uint8Array(r)},preloadPlugins=Module.preloadPlugins||[],registerWasmPlugin=()=>{var e={promiseChainEnd:Promise.resolve(),canHandle:r=>!Module.noWasmDecoding&&r.endsWith(".so"),handle:(r,t,n,o)=>{e.promiseChainEnd=e.promiseChainEnd.then(()=>loadWebAssemblyModule(r,{loadAsync:!0,nodelete:!0},t,{})).then(a=>{preloadedWasm[t]=a,n(r)},a=>{err(`failed to instantiate wasm: ${t}: ${a}`),o()})}};preloadPlugins.push(e)},preloadedWasm={};function loadDynamicLibrary(e,r={global:!0,nodelete:!0},t,n){var o=LDSO.loadedLibsByName[e];if(o)return r.global?o.global||(o.global=!0,mergeLibSymbols(o.exports,e)):t&&Object.assign(t,o.exports),r.nodelete&&o.refcount!==1/0&&(o.refcount=1/0),o.refcount++,n&&(LDSO.loadedLibsByHandle[n]=o),r.loadAsync?Promise.resolve(!0):!0;o=newDSO(e,n,"loading"),o.refcount=r.nodelete?1/0:1,o.global=r.global;function a(){if(n){var _=HEAPU32[n+28>>2],u=HEAPU32[n+32>>2];if(_&&u){var d=HEAP8.slice(_,_+u);return r.loadAsync?Promise.resolve(d):d}}var m=locateFile(e);if(r.loadAsync)return asyncLoad(m);if(!readBinary)throw new Error(`${m}: file not found, and synchronous loading of external files is not available`);return readBinary(m)}function s(){var _=preloadedWasm[e];return _?r.loadAsync?Promise.resolve(_):_:r.loadAsync?a().then(u=>loadWebAssemblyModule(u,r,e,t,n)):loadWebAssemblyModule(a(),r,e,t,n)}function l(_){o.global?mergeLibSymbols(_,e):t&&Object.assign(t,_),o.exports=_}return r.loadAsync?s().then(_=>(l(_),!0)):(l(s()),!0)}var reportUndefinedSymbols=()=>{for(var[e,r]of Object.entries(GOT))if(r.value==0){var t=resolveGlobalSymbol(e,!0).sym;if(!t&&!r.required)continue;if(typeof t=="function")r.value=addFunction(t,t.sig);else if(typeof t=="number")r.value=t;else throw new Error(`bad export type for '${e}': ${typeof t}`)}},loadDylibs=()=>{if(!dynamicLibraries.length){reportUndefinedSymbols();return}addRunDependency("loadDylibs"),dynamicLibraries.reduce((e,r)=>e.then(()=>loadDynamicLibrary(r,{loadAsync:!0,global:!0,nodelete:!0,allowUndefined:!0})),Promise.resolve()).then(()=>{reportUndefinedSymbols(),removeRunDependency("loadDylibs")})},noExitRuntime=Module.noExitRuntime||!1,___call_sighandler=(e,r)=>getWasmTableEntry(e)(r);___call_sighandler.sig="vpi";var ___memory_base=new WebAssembly.Global({value:"i32",mutable:!1},1024),___stack_pointer=new WebAssembly.Global({value:"i32",mutable:!0},290192),PATH={isAbs:e=>e.charAt(0)==="/",splitPath:e=>{var r=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return r.exec(e).slice(1)},normalizeArray:(e,r)=>{for(var t=0,n=e.length-1;n>=0;n--){var o=e[n];o==="."?e.splice(n,1):o===".."?(e.splice(n,1),t++):t&&(e.splice(n,1),t--)}if(r)for(;t;t--)e.unshift("..");return e},normalize:e=>{var r=PATH.isAbs(e),t=e.substr(-1)==="/";return e=PATH.normalizeArray(e.split("/").filter(n=>!!n),!r).join("/"),!e&&!r&&(e="."),e&&t&&(e+="/"),(r?"/":"")+e},dirname:e=>{var r=PATH.splitPath(e),t=r[0],n=r[1];return!t&&!n?".":(n&&(n=n.substr(0,n.length-1)),t+n)},basename:e=>{if(e==="/")return"/";e=PATH.normalize(e),e=e.replace(/\/$/,"");var r=e.lastIndexOf("/");return r===-1?e:e.substr(r+1)},join:(...e)=>PATH.normalize(e.join("/")),join2:(e,r)=>PATH.normalize(e+"/"+r)},initRandomFill=()=>{if(typeof crypto=="object"&&typeof crypto.getRandomValues=="function")return n=>crypto.getRandomValues(n);if(ENVIRONMENT_IS_NODE)try{var e=require("crypto"),r=e.randomFillSync;if(r)return n=>e.randomFillSync(n);var t=e.randomBytes;return n=>(n.set(t(n.byteLength)),n)}catch{}abort("initRandomDevice")},randomFill=e=>(randomFill=initRandomFill())(e),PATH_FS={resolve:(...e)=>{for(var r="",t=!1,n=e.length-1;n>=-1&&!t;n--){var o=n>=0?e[n]:FS.cwd();if(typeof o!="string")throw new TypeError("Arguments to path.resolve must be strings");if(!o)return"";r=o+"/"+r,t=PATH.isAbs(o)}return r=PATH.normalizeArray(r.split("/").filter(a=>!!a),!t).join("/"),(t?"/":"")+r||"."},relative:(e,r)=>{e=PATH_FS.resolve(e).substr(1),r=PATH_FS.resolve(r).substr(1);function t(u){for(var d=0;d<u.length&&u[d]==="";d++);for(var m=u.length-1;m>=0&&u[m]==="";m--);return d>m?[]:u.slice(d,m-d+1)}for(var n=t(e.split("/")),o=t(r.split("/")),a=Math.min(n.length,o.length),s=a,l=0;l<a;l++)if(n[l]!==o[l]){s=l;break}for(var _=[],l=s;l<n.length;l++)_.push("..");return _=_.concat(o.slice(s)),_.join("/")}},FS_stdin_getChar_buffer=[],lengthBytesUTF8=e=>{for(var r=0,t=0;t<e.length;++t){var n=e.charCodeAt(t);n<=127?r++:n<=2047?r+=2:n>=55296&&n<=57343?(r+=4,++t):r+=3}return r},stringToUTF8Array=(e,r,t,n)=>{if(!(n>0))return 0;for(var o=t,a=t+n-1,s=0;s<e.length;++s){var l=e.charCodeAt(s);if(l>=55296&&l<=57343){var _=e.charCodeAt(++s);l=65536+((l&1023)<<10)|_&1023}if(l<=127){if(t>=a)break;r[t++]=l}else if(l<=2047){if(t+1>=a)break;r[t++]=192|l>>6,r[t++]=128|l&63}else if(l<=65535){if(t+2>=a)break;r[t++]=224|l>>12,r[t++]=128|l>>6&63,r[t++]=128|l&63}else{if(t+3>=a)break;r[t++]=240|l>>18,r[t++]=128|l>>12&63,r[t++]=128|l>>6&63,r[t++]=128|l&63}}return r[t]=0,t-o};function intArrayFromString(e,r,t){var n=t>0?t:lengthBytesUTF8(e)+1,o=new Array(n),a=stringToUTF8Array(e,o,0,o.length);return r&&(o.length=a),o}var FS_stdin_getChar=()=>{if(!FS_stdin_getChar_buffer.length){var e=null;if(ENVIRONMENT_IS_NODE){var r=256,t=Buffer.alloc(r),n=0,o=process.stdin.fd;try{n=fs.readSync(o,t,0,r)}catch(a){if(a.toString().includes("EOF"))n=0;else throw a}n>0&&(e=t.slice(0,n).toString("utf-8"))}else typeof window<"u"&&typeof window.prompt=="function"&&(e=window.prompt("Input: "),e!==null&&(e+=`
`));if(!e)return null;FS_stdin_getChar_buffer=intArrayFromString(e,!0)}return FS_stdin_getChar_buffer.shift()},TTY={ttys:[],init(){},shutdown(){},register(e,r){TTY.ttys[e]={input:[],output:[],ops:r},FS.registerDevice(e,TTY.stream_ops)},stream_ops:{open(e){var r=TTY.ttys[e.node.rdev];if(!r)throw new FS.ErrnoError(43);e.tty=r,e.seekable=!1},close(e){e.tty.ops.fsync(e.tty)},fsync(e){e.tty.ops.fsync(e.tty)},read(e,r,t,n,o){if(!e.tty||!e.tty.ops.get_char)throw new FS.ErrnoError(60);for(var a=0,s=0;s<n;s++){var l;try{l=e.tty.ops.get_char(e.tty)}catch{throw new FS.ErrnoError(29)}if(l===void 0&&a===0)throw new FS.ErrnoError(6);if(l==null)break;a++,r[t+s]=l}return a&&(e.node.atime=Date.now()),a},write(e,r,t,n,o){if(!e.tty||!e.tty.ops.put_char)throw new FS.ErrnoError(60);try{for(var a=0;a<n;a++)e.tty.ops.put_char(e.tty,r[t+a])}catch{throw new FS.ErrnoError(29)}return n&&(e.node.mtime=e.node.ctime=Date.now()),a}},default_tty_ops:{get_char(e){return FS_stdin_getChar()},put_char(e,r){r===null||r===10?(out(UTF8ArrayToString(e.output)),e.output=[]):r!=0&&e.output.push(r)},fsync(e){e.output&&e.output.length>0&&(out(UTF8ArrayToString(e.output)),e.output=[])},ioctl_tcgets(e){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(e,r,t){return 0},ioctl_tiocgwinsz(e){return[24,80]}},default_tty1_ops:{put_char(e,r){r===null||r===10?(err(UTF8ArrayToString(e.output)),e.output=[]):r!=0&&e.output.push(r)},fsync(e){e.output&&e.output.length>0&&(err(UTF8ArrayToString(e.output)),e.output=[])}}},zeroMemory=(e,r)=>{HEAPU8.fill(0,e,e+r)},mmapAlloc=e=>{abort()},MEMFS={ops_table:null,mount(e){return MEMFS.createNode(null,"/",16895,0)},createNode(e,r,t,n){if(FS.isBlkdev(t)||FS.isFIFO(t))throw new FS.ErrnoError(63);MEMFS.ops_table||(MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}});var o=FS.createNode(e,r,t,n);return FS.isDir(o.mode)?(o.node_ops=MEMFS.ops_table.dir.node,o.stream_ops=MEMFS.ops_table.dir.stream,o.contents={}):FS.isFile(o.mode)?(o.node_ops=MEMFS.ops_table.file.node,o.stream_ops=MEMFS.ops_table.file.stream,o.usedBytes=0,o.contents=null):FS.isLink(o.mode)?(o.node_ops=MEMFS.ops_table.link.node,o.stream_ops=MEMFS.ops_table.link.stream):FS.isChrdev(o.mode)&&(o.node_ops=MEMFS.ops_table.chrdev.node,o.stream_ops=MEMFS.ops_table.chrdev.stream),o.atime=o.mtime=o.ctime=Date.now(),e&&(e.contents[r]=o,e.atime=e.mtime=e.ctime=o.atime),o},getFileDataAsTypedArray(e){return e.contents?e.contents.subarray?e.contents.subarray(0,e.usedBytes):new Uint8Array(e.contents):new Uint8Array(0)},expandFileStorage(e,r){var t=e.contents?e.contents.length:0;if(!(t>=r)){var n=1024*1024;r=Math.max(r,t*(t<n?2:1.125)>>>0),t!=0&&(r=Math.max(r,256));var o=e.contents;e.contents=new Uint8Array(r),e.usedBytes>0&&e.contents.set(o.subarray(0,e.usedBytes),0)}},resizeFileStorage(e,r){if(e.usedBytes!=r)if(r==0)e.contents=null,e.usedBytes=0;else{var t=e.contents;e.contents=new Uint8Array(r),t&&e.contents.set(t.subarray(0,Math.min(r,e.usedBytes))),e.usedBytes=r}},node_ops:{getattr(e){var r={};return r.dev=FS.isChrdev(e.mode)?e.id:1,r.ino=e.id,r.mode=e.mode,r.nlink=1,r.uid=0,r.gid=0,r.rdev=e.rdev,FS.isDir(e.mode)?r.size=4096:FS.isFile(e.mode)?r.size=e.usedBytes:FS.isLink(e.mode)?r.size=e.link.length:r.size=0,r.atime=new Date(e.atime),r.mtime=new Date(e.mtime),r.ctime=new Date(e.ctime),r.blksize=4096,r.blocks=Math.ceil(r.size/r.blksize),r},setattr(e,r){for(let t of["mode","atime","mtime","ctime"])r[t]&&(e[t]=r[t]);r.size!==void 0&&MEMFS.resizeFileStorage(e,r.size)},lookup(e,r){throw MEMFS.doesNotExistError},mknod(e,r,t,n){return MEMFS.createNode(e,r,t,n)},rename(e,r,t){var n;try{n=FS.lookupNode(r,t)}catch{}if(n){if(FS.isDir(e.mode))for(var o in n.contents)throw new FS.ErrnoError(55);FS.hashRemoveNode(n)}delete e.parent.contents[e.name],r.contents[t]=e,e.name=t,r.ctime=r.mtime=e.parent.ctime=e.parent.mtime=Date.now()},unlink(e,r){delete e.contents[r],e.ctime=e.mtime=Date.now()},rmdir(e,r){var t=FS.lookupNode(e,r);for(var n in t.contents)throw new FS.ErrnoError(55);delete e.contents[r],e.ctime=e.mtime=Date.now()},readdir(e){return[".","..",...Object.keys(e.contents)]},symlink(e,r,t){var n=MEMFS.createNode(e,r,41471,0);return n.link=t,n},readlink(e){if(!FS.isLink(e.mode))throw new FS.ErrnoError(28);return e.link}},stream_ops:{read(e,r,t,n,o){var a=e.node.contents;if(o>=e.node.usedBytes)return 0;var s=Math.min(e.node.usedBytes-o,n);if(s>8&&a.subarray)r.set(a.subarray(o,o+s),t);else for(var l=0;l<s;l++)r[t+l]=a[o+l];return s},write(e,r,t,n,o,a){if(r.buffer===HEAP8.buffer&&(a=!1),!n)return 0;var s=e.node;if(s.mtime=s.ctime=Date.now(),r.subarray&&(!s.contents||s.contents.subarray)){if(a)return s.contents=r.subarray(t,t+n),s.usedBytes=n,n;if(s.usedBytes===0&&o===0)return s.contents=r.slice(t,t+n),s.usedBytes=n,n;if(o+n<=s.usedBytes)return s.contents.set(r.subarray(t,t+n),o),n}if(MEMFS.expandFileStorage(s,o+n),s.contents.subarray&&r.subarray)s.contents.set(r.subarray(t,t+n),o);else for(var l=0;l<n;l++)s.contents[o+l]=r[t+l];return s.usedBytes=Math.max(s.usedBytes,o+n),n},llseek(e,r,t){var n=r;if(t===1?n+=e.position:t===2&&FS.isFile(e.node.mode)&&(n+=e.node.usedBytes),n<0)throw new FS.ErrnoError(28);return n},allocate(e,r,t){MEMFS.expandFileStorage(e.node,r+t),e.node.usedBytes=Math.max(e.node.usedBytes,r+t)},mmap(e,r,t,n,o){if(!FS.isFile(e.node.mode))throw new FS.ErrnoError(43);var a,s,l=e.node.contents;if(!(o&2)&&l&&l.buffer===HEAP8.buffer)s=!1,a=l.byteOffset;else{if(s=!0,a=mmapAlloc(r),!a)throw new FS.ErrnoError(48);l&&((t>0||t+r<l.length)&&(l.subarray?l=l.subarray(t,t+r):l=Array.prototype.slice.call(l,t,t+r)),HEAP8.set(l,a))}return{ptr:a,allocated:s}},msync(e,r,t,n,o){return MEMFS.stream_ops.write(e,r,0,n,t,!1),0}}},FS_createDataFile=(e,r,t,n,o,a)=>{FS.createDataFile(e,r,t,n,o,a)},FS_handledByPreloadPlugin=(e,r,t,n)=>{typeof Browser<"u"&&Browser.init();var o=!1;return preloadPlugins.forEach(a=>{o||a.canHandle(r)&&(a.handle(e,r,t,n),o=!0)}),o},FS_createPreloadedFile=(e,r,t,n,o,a,s,l,_,u)=>{var d=r?PATH_FS.resolve(PATH.join2(e,r)):e,m=`cp ${d}`;function f(c){function S(p){u?.(),l||FS_createDataFile(e,r,p,n,o,_),a?.(),removeRunDependency(m)}FS_handledByPreloadPlugin(c,d,S,()=>{s?.(),removeRunDependency(m)})||S(c)}addRunDependency(m),typeof t=="string"?asyncLoad(t).then(f,s):f(t)},FS_modeStringToFlags=e=>{var r={r:0,"r+":2,w:577,"w+":578,a:1089,"a+":1090},t=r[e];if(typeof t>"u")throw new Error(`Unknown file open mode: ${e}`);return t},FS_getMode=(e,r)=>{var t=0;return e&&(t|=365),r&&(t|=146),t},ERRNO_CODES={EPERM:63,ENOENT:44,ESRCH:71,EINTR:27,EIO:29,ENXIO:60,E2BIG:1,ENOEXEC:45,EBADF:8,ECHILD:12,EAGAIN:6,EWOULDBLOCK:6,ENOMEM:48,EACCES:2,EFAULT:21,ENOTBLK:105,EBUSY:10,EEXIST:20,EXDEV:75,ENODEV:43,ENOTDIR:54,EISDIR:31,EINVAL:28,ENFILE:41,EMFILE:33,ENOTTY:59,ETXTBSY:74,EFBIG:22,ENOSPC:51,ESPIPE:70,EROFS:69,EMLINK:34,EPIPE:64,EDOM:18,ERANGE:68,ENOMSG:49,EIDRM:24,ECHRNG:106,EL2NSYNC:156,EL3HLT:107,EL3RST:108,ELNRNG:109,EUNATCH:110,ENOCSI:111,EL2HLT:112,EDEADLK:16,ENOLCK:46,EBADE:113,EBADR:114,EXFULL:115,ENOANO:104,EBADRQC:103,EBADSLT:102,EDEADLOCK:16,EBFONT:101,ENOSTR:100,ENODATA:116,ETIME:117,ENOSR:118,ENONET:119,ENOPKG:120,EREMOTE:121,ENOLINK:47,EADV:122,ESRMNT:123,ECOMM:124,EPROTO:65,EMULTIHOP:36,EDOTDOT:125,EBADMSG:9,ENOTUNIQ:126,EBADFD:127,EREMCHG:128,ELIBACC:129,ELIBBAD:130,ELIBSCN:131,ELIBMAX:132,ELIBEXEC:133,ENOSYS:52,ENOTEMPTY:55,ENAMETOOLONG:37,ELOOP:32,EOPNOTSUPP:138,EPFNOSUPPORT:139,ECONNRESET:15,ENOBUFS:42,EAFNOSUPPORT:5,EPROTOTYPE:67,ENOTSOCK:57,ENOPROTOOPT:50,ESHUTDOWN:140,ECONNREFUSED:14,EADDRINUSE:3,ECONNABORTED:13,ENETUNREACH:40,ENETDOWN:38,ETIMEDOUT:73,EHOSTDOWN:142,EHOSTUNREACH:23,EINPROGRESS:26,EALREADY:7,EDESTADDRREQ:17,EMSGSIZE:35,EPROTONOSUPPORT:66,ESOCKTNOSUPPORT:137,EADDRNOTAVAIL:4,ENETRESET:39,EISCONN:30,ENOTCONN:53,ETOOMANYREFS:141,EUSERS:136,EDQUOT:19,ESTALE:72,ENOTSUP:138,ENOMEDIUM:148,EILSEQ:25,EOVERFLOW:61,ECANCELED:11,ENOTRECOVERABLE:56,EOWNERDEAD:62,ESTRPIPE:135},PROXYFS={mount(e){return PROXYFS.createNode(null,"/",e.opts.fs.lstat(e.opts.root).mode,0)},createNode(e,r,t,n){if(!FS.isDir(t)&&!FS.isFile(t)&&!FS.isLink(t))throw new FS.ErrnoError(ERRNO_CODES.EINVAL);var o=FS.createNode(e,r,t);return o.node_ops=PROXYFS.node_ops,o.stream_ops=PROXYFS.stream_ops,o},realPath(e){for(var r=[];e.parent!==e;)r.push(e.name),e=e.parent;return r.push(e.mount.opts.root),r.reverse(),PATH.join(...r)},node_ops:{getattr(e){var r=PROXYFS.realPath(e),t;try{t=e.mount.opts.fs.lstat(r)}catch(n){throw n.code?new FS.ErrnoError(ERRNO_CODES[n.code]):n}return{dev:t.dev,ino:t.ino,mode:t.mode,nlink:t.nlink,uid:t.uid,gid:t.gid,rdev:t.rdev,size:t.size,atime:t.atime,mtime:t.mtime,ctime:t.ctime,blksize:t.blksize,blocks:t.blocks}},setattr(e,r){var t=PROXYFS.realPath(e);try{if(r.mode!==void 0&&(e.mount.opts.fs.chmod(t,r.mode),e.mode=r.mode),r.atime||r.mtime){var n=new Date(r.atime||r.mtime),o=new Date(r.mtime||r.atime);e.mount.opts.fs.utime(t,n,o)}r.size!==void 0&&e.mount.opts.fs.truncate(t,r.size)}catch(a){throw a.code?new FS.ErrnoError(ERRNO_CODES[a.code]):a}},lookup(e,r){try{var t=PATH.join2(PROXYFS.realPath(e),r),n=e.mount.opts.fs.lstat(t).mode,o=PROXYFS.createNode(e,r,n);return o}catch(a){throw a.code?new FS.ErrnoError(ERRNO_CODES[a.code]):a}},mknod(e,r,t,n){var o=PROXYFS.createNode(e,r,t,n),a=PROXYFS.realPath(o);try{FS.isDir(o.mode)?o.mount.opts.fs.mkdir(a,o.mode):o.mount.opts.fs.writeFile(a,"",{mode:o.mode})}catch(s){throw s.code?new FS.ErrnoError(ERRNO_CODES[s.code]):s}return o},rename(e,r,t){var n=PROXYFS.realPath(e),o=PATH.join2(PROXYFS.realPath(r),t);try{e.mount.opts.fs.rename(n,o),e.name=t}catch(a){throw a.code?new FS.ErrnoError(ERRNO_CODES[a.code]):a}},unlink(e,r){var t=PATH.join2(PROXYFS.realPath(e),r);try{e.mount.opts.fs.unlink(t)}catch(n){throw n.code?new FS.ErrnoError(ERRNO_CODES[n.code]):n}},rmdir(e,r){var t=PATH.join2(PROXYFS.realPath(e),r);try{e.mount.opts.fs.rmdir(t)}catch(n){throw n.code?new FS.ErrnoError(ERRNO_CODES[n.code]):n}},readdir(e){var r=PROXYFS.realPath(e);try{return e.mount.opts.fs.readdir(r)}catch(t){throw t.code?new FS.ErrnoError(ERRNO_CODES[t.code]):t}},symlink(e,r,t){var n=PATH.join2(PROXYFS.realPath(e),r);try{e.mount.opts.fs.symlink(t,n)}catch(o){throw o.code?new FS.ErrnoError(ERRNO_CODES[o.code]):o}},readlink(e){var r=PROXYFS.realPath(e);try{return e.mount.opts.fs.readlink(r)}catch(t){throw t.code?new FS.ErrnoError(ERRNO_CODES[t.code]):t}}},stream_ops:{open(e){var r=PROXYFS.realPath(e.node);try{e.nfd=e.node.mount.opts.fs.open(r,e.flags)}catch(t){throw t.code?new FS.ErrnoError(ERRNO_CODES[t.code]):t}},close(e){try{e.node.mount.opts.fs.close(e.nfd)}catch(r){throw r.code?new FS.ErrnoError(ERRNO_CODES[r.code]):r}},read(e,r,t,n,o){try{return e.node.mount.opts.fs.read(e.nfd,r,t,n,o)}catch(a){throw a.code?new FS.ErrnoError(ERRNO_CODES[a.code]):a}},write(e,r,t,n,o){try{return e.node.mount.opts.fs.write(e.nfd,r,t,n,o)}catch(a){throw a.code?new FS.ErrnoError(ERRNO_CODES[a.code]):a}},llseek(e,r,t){var n=r;if(t===1)n+=e.position;else if(t===2&&FS.isFile(e.node.mode))try{var o=e.node.node_ops.getattr(e.node);n+=o.size}catch(a){throw new FS.ErrnoError(ERRNO_CODES[a.code])}if(n<0)throw new FS.ErrnoError(ERRNO_CODES.EINVAL);return n}}},FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:!1,ignorePermissions:!0,ErrnoError:class{constructor(e){b(this,"name","ErrnoError");this.errno=e}},filesystems:null,syncFSRequests:0,readFiles:{},FSStream:class{constructor(){b(this,"shared",{})}get object(){return this.node}set object(e){this.node=e}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(e){this.shared.flags=e}get position(){return this.shared.position}set position(e){this.shared.position=e}},FSNode:class{constructor(e,r,t,n){b(this,"node_ops",{});b(this,"stream_ops",{});b(this,"readMode",365);b(this,"writeMode",146);b(this,"mounted",null);e||(e=this),this.parent=e,this.mount=e.mount,this.id=FS.nextInode++,this.name=r,this.mode=t,this.rdev=n,this.atime=this.mtime=this.ctime=Date.now()}get read(){return(this.mode&this.readMode)===this.readMode}set read(e){e?this.mode|=this.readMode:this.mode&=~this.readMode}get write(){return(this.mode&this.writeMode)===this.writeMode}set write(e){e?this.mode|=this.writeMode:this.mode&=~this.writeMode}get isFolder(){return FS.isDir(this.mode)}get isDevice(){return FS.isChrdev(this.mode)}},lookupPath(e,r={}){if(!e)return{path:"",node:null};r.follow_mount??(r.follow_mount=!0),PATH.isAbs(e)||(e=FS.cwd()+"/"+e);e:for(var t=0;t<40;t++){for(var n=e.split("/").filter(u=>!!u&&u!=="."),o=FS.root,a="/",s=0;s<n.length;s++){var l=s===n.length-1;if(l&&r.parent)break;if(n[s]===".."){a=PATH.dirname(a),o=o.parent;continue}a=PATH.join2(a,n[s]);try{o=FS.lookupNode(o,n[s])}catch(u){if(u?.errno===44&&l&&r.noent_okay)return{path:a};throw u}if(FS.isMountpoint(o)&&(!l||r.follow_mount)&&(o=o.mounted.root),FS.isLink(o.mode)&&(!l||r.follow)){if(!o.node_ops.readlink)throw new FS.ErrnoError(52);var _=o.node_ops.readlink(o);PATH.isAbs(_)||(_=PATH.dirname(a)+"/"+_),e=_+"/"+n.slice(s+1).join("/");continue e}}return{path:a,node:o}}throw new FS.ErrnoError(32)},getPath(e){for(var r;;){if(FS.isRoot(e)){var t=e.mount.mountpoint;return r?t[t.length-1]!=="/"?`${t}/${r}`:t+r:t}r=r?`${e.name}/${r}`:e.name,e=e.parent}},hashName(e,r){for(var t=0,n=0;n<r.length;n++)t=(t<<5)-t+r.charCodeAt(n)|0;return(e+t>>>0)%FS.nameTable.length},hashAddNode(e){var r=FS.hashName(e.parent.id,e.name);e.name_next=FS.nameTable[r],FS.nameTable[r]=e},hashRemoveNode(e){var r=FS.hashName(e.parent.id,e.name);if(FS.nameTable[r]===e)FS.nameTable[r]=e.name_next;else for(var t=FS.nameTable[r];t;){if(t.name_next===e){t.name_next=e.name_next;break}t=t.name_next}},lookupNode(e,r){var t=FS.mayLookup(e);if(t)throw new FS.ErrnoError(t);for(var n=FS.hashName(e.id,r),o=FS.nameTable[n];o;o=o.name_next){var a=o.name;if(o.parent.id===e.id&&a===r)return o}return FS.lookup(e,r)},createNode(e,r,t,n){var o=new FS.FSNode(e,r,t,n);return FS.hashAddNode(o),o},destroyNode(e){FS.hashRemoveNode(e)},isRoot(e){return e===e.parent},isMountpoint(e){return!!e.mounted},isFile(e){return(e&61440)===32768},isDir(e){return(e&61440)===16384},isLink(e){return(e&61440)===40960},isChrdev(e){return(e&61440)===8192},isBlkdev(e){return(e&61440)===24576},isFIFO(e){return(e&61440)===4096},isSocket(e){return(e&49152)===49152},flagsToPermissionString(e){var r=["r","w","rw"][e&3];return e&512&&(r+="w"),r},nodePermissions(e,r){return FS.ignorePermissions?0:r.includes("r")&&!(e.mode&292)||r.includes("w")&&!(e.mode&146)||r.includes("x")&&!(e.mode&73)?2:0},mayLookup(e){if(!FS.isDir(e.mode))return 54;var r=FS.nodePermissions(e,"x");return r||(e.node_ops.lookup?0:2)},mayCreate(e,r){if(!FS.isDir(e.mode))return 54;try{var t=FS.lookupNode(e,r);return 20}catch{}return FS.nodePermissions(e,"wx")},mayDelete(e,r,t){var n;try{n=FS.lookupNode(e,r)}catch(a){return a.errno}var o=FS.nodePermissions(e,"wx");if(o)return o;if(t){if(!FS.isDir(n.mode))return 54;if(FS.isRoot(n)||FS.getPath(n)===FS.cwd())return 10}else if(FS.isDir(n.mode))return 31;return 0},mayOpen(e,r){return e?FS.isLink(e.mode)?32:FS.isDir(e.mode)&&(FS.flagsToPermissionString(r)!=="r"||r&512)?31:FS.nodePermissions(e,FS.flagsToPermissionString(r)):44},MAX_OPEN_FDS:4096,nextfd(){for(var e=0;e<=FS.MAX_OPEN_FDS;e++)if(!FS.streams[e])return e;throw new FS.ErrnoError(33)},getStreamChecked(e){var r=FS.getStream(e);if(!r)throw new FS.ErrnoError(8);return r},getStream:e=>FS.streams[e],createStream(e,r=-1){return e=Object.assign(new FS.FSStream,e),r==-1&&(r=FS.nextfd()),e.fd=r,FS.streams[r]=e,e},closeStream(e){FS.streams[e]=null},dupStream(e,r=-1){var t=FS.createStream(e,r);return t.stream_ops?.dup?.(t),t},chrdev_stream_ops:{open(e){var r=FS.getDevice(e.node.rdev);e.stream_ops=r.stream_ops,e.stream_ops.open?.(e)},llseek(){throw new FS.ErrnoError(70)}},major:e=>e>>8,minor:e=>e&255,makedev:(e,r)=>e<<8|r,registerDevice(e,r){FS.devices[e]={stream_ops:r}},getDevice:e=>FS.devices[e],getMounts(e){for(var r=[],t=[e];t.length;){var n=t.pop();r.push(n),t.push(...n.mounts)}return r},syncfs(e,r){typeof e=="function"&&(r=e,e=!1),FS.syncFSRequests++,FS.syncFSRequests>1&&err(`warning: ${FS.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`);var t=FS.getMounts(FS.root.mount),n=0;function o(s){return FS.syncFSRequests--,r(s)}function a(s){if(s)return a.errored?void 0:(a.errored=!0,o(s));++n>=t.length&&o(null)}t.forEach(s=>{if(!s.type.syncfs)return a(null);s.type.syncfs(s,e,a)})},mount(e,r,t){var n=t==="/",o=!t,a;if(n&&FS.root)throw new FS.ErrnoError(10);if(!n&&!o){var s=FS.lookupPath(t,{follow_mount:!1});if(t=s.path,a=s.node,FS.isMountpoint(a))throw new FS.ErrnoError(10);if(!FS.isDir(a.mode))throw new FS.ErrnoError(54)}var l={type:e,opts:r,mountpoint:t,mounts:[]},_=e.mount(l);return _.mount=l,l.root=_,n?FS.root=_:a&&(a.mounted=l,a.mount&&a.mount.mounts.push(l)),_},unmount(e){var r=FS.lookupPath(e,{follow_mount:!1});if(!FS.isMountpoint(r.node))throw new FS.ErrnoError(28);var t=r.node,n=t.mounted,o=FS.getMounts(n);Object.keys(FS.nameTable).forEach(s=>{for(var l=FS.nameTable[s];l;){var _=l.name_next;o.includes(l.mount)&&FS.destroyNode(l),l=_}}),t.mounted=null;var a=t.mount.mounts.indexOf(n);t.mount.mounts.splice(a,1)},lookup(e,r){return e.node_ops.lookup(e,r)},mknod(e,r,t){var n=FS.lookupPath(e,{parent:!0}),o=n.node,a=PATH.basename(e);if(!a||a==="."||a==="..")throw new FS.ErrnoError(28);var s=FS.mayCreate(o,a);if(s)throw new FS.ErrnoError(s);if(!o.node_ops.mknod)throw new FS.ErrnoError(63);return o.node_ops.mknod(o,a,r,t)},statfs(e){var r={bsize:4096,frsize:4096,blocks:1e6,bfree:5e5,bavail:5e5,files:FS.nextInode,ffree:FS.nextInode-1,fsid:42,flags:2,namelen:255},t=FS.lookupPath(e,{follow:!0}).node;return t?.node_ops.statfs&&Object.assign(r,t.node_ops.statfs(t.mount.opts.root)),r},create(e,r=438){return r&=4095,r|=32768,FS.mknod(e,r,0)},mkdir(e,r=511){return r&=1023,r|=16384,FS.mknod(e,r,0)},mkdirTree(e,r){for(var t=e.split("/"),n="",o=0;o<t.length;++o)if(t[o]){n+="/"+t[o];try{FS.mkdir(n,r)}catch(a){if(a.errno!=20)throw a}}},mkdev(e,r,t){return typeof t>"u"&&(t=r,r=438),r|=8192,FS.mknod(e,r,t)},symlink(e,r){if(!PATH_FS.resolve(e))throw new FS.ErrnoError(44);var t=FS.lookupPath(r,{parent:!0}),n=t.node;if(!n)throw new FS.ErrnoError(44);var o=PATH.basename(r),a=FS.mayCreate(n,o);if(a)throw new FS.ErrnoError(a);if(!n.node_ops.symlink)throw new FS.ErrnoError(63);return n.node_ops.symlink(n,o,e)},rename(e,r){var t=PATH.dirname(e),n=PATH.dirname(r),o=PATH.basename(e),a=PATH.basename(r),s,l,_;if(s=FS.lookupPath(e,{parent:!0}),l=s.node,s=FS.lookupPath(r,{parent:!0}),_=s.node,!l||!_)throw new FS.ErrnoError(44);if(l.mount!==_.mount)throw new FS.ErrnoError(75);var u=FS.lookupNode(l,o),d=PATH_FS.relative(e,n);if(d.charAt(0)!==".")throw new FS.ErrnoError(28);if(d=PATH_FS.relative(r,t),d.charAt(0)!==".")throw new FS.ErrnoError(55);var m;try{m=FS.lookupNode(_,a)}catch{}if(u!==m){var f=FS.isDir(u.mode),c=FS.mayDelete(l,o,f);if(c)throw new FS.ErrnoError(c);if(c=m?FS.mayDelete(_,a,f):FS.mayCreate(_,a),c)throw new FS.ErrnoError(c);if(!l.node_ops.rename)throw new FS.ErrnoError(63);if(FS.isMountpoint(u)||m&&FS.isMountpoint(m))throw new FS.ErrnoError(10);if(_!==l&&(c=FS.nodePermissions(l,"w"),c))throw new FS.ErrnoError(c);FS.hashRemoveNode(u);try{l.node_ops.rename(u,_,a),u.parent=_}catch(S){throw S}finally{FS.hashAddNode(u)}}},rmdir(e){var r=FS.lookupPath(e,{parent:!0}),t=r.node,n=PATH.basename(e),o=FS.lookupNode(t,n),a=FS.mayDelete(t,n,!0);if(a)throw new FS.ErrnoError(a);if(!t.node_ops.rmdir)throw new FS.ErrnoError(63);if(FS.isMountpoint(o))throw new FS.ErrnoError(10);t.node_ops.rmdir(t,n),FS.destroyNode(o)},readdir(e){var r=FS.lookupPath(e,{follow:!0}),t=r.node;if(!t.node_ops.readdir)throw new FS.ErrnoError(54);return t.node_ops.readdir(t)},unlink(e){var r=FS.lookupPath(e,{parent:!0}),t=r.node;if(!t)throw new FS.ErrnoError(44);var n=PATH.basename(e),o=FS.lookupNode(t,n),a=FS.mayDelete(t,n,!1);if(a)throw new FS.ErrnoError(a);if(!t.node_ops.unlink)throw new FS.ErrnoError(63);if(FS.isMountpoint(o))throw new FS.ErrnoError(10);t.node_ops.unlink(t,n),FS.destroyNode(o)},readlink(e){var r=FS.lookupPath(e),t=r.node;if(!t)throw new FS.ErrnoError(44);if(!t.node_ops.readlink)throw new FS.ErrnoError(28);return t.node_ops.readlink(t)},stat(e,r){var t=FS.lookupPath(e,{follow:!r}),n=t.node;if(!n)throw new FS.ErrnoError(44);if(!n.node_ops.getattr)throw new FS.ErrnoError(63);return n.node_ops.getattr(n)},lstat(e){return FS.stat(e,!0)},chmod(e,r,t){var n;if(typeof e=="string"){var o=FS.lookupPath(e,{follow:!t});n=o.node}else n=e;if(!n.node_ops.setattr)throw new FS.ErrnoError(63);n.node_ops.setattr(n,{mode:r&4095|n.mode&-4096,ctime:Date.now()})},lchmod(e,r){FS.chmod(e,r,!0)},fchmod(e,r){var t=FS.getStreamChecked(e);FS.chmod(t.node,r)},chown(e,r,t,n){var o;if(typeof e=="string"){var a=FS.lookupPath(e,{follow:!n});o=a.node}else o=e;if(!o.node_ops.setattr)throw new FS.ErrnoError(63);o.node_ops.setattr(o,{timestamp:Date.now()})},lchown(e,r,t){FS.chown(e,r,t,!0)},fchown(e,r,t){var n=FS.getStreamChecked(e);FS.chown(n.node,r,t)},truncate(e,r){if(r<0)throw new FS.ErrnoError(28);var t;if(typeof e=="string"){var n=FS.lookupPath(e,{follow:!0});t=n.node}else t=e;if(!t.node_ops.setattr)throw new FS.ErrnoError(63);if(FS.isDir(t.mode))throw new FS.ErrnoError(31);if(!FS.isFile(t.mode))throw new FS.ErrnoError(28);var o=FS.nodePermissions(t,"w");if(o)throw new FS.ErrnoError(o);t.node_ops.setattr(t,{size:r,timestamp:Date.now()})},ftruncate(e,r){var t=FS.getStreamChecked(e);if(!(t.flags&2097155))throw new FS.ErrnoError(28);FS.truncate(t.node,r)},utime(e,r,t){var n=FS.lookupPath(e,{follow:!0}),o=n.node;o.node_ops.setattr(o,{atime:r,mtime:t})},open(e,r,t=438){if(e==="")throw new FS.ErrnoError(44);r=typeof r=="string"?FS_modeStringToFlags(r):r,r&64?t=t&4095|32768:t=0;var n;if(typeof e=="object")n=e;else{var o=FS.lookupPath(e,{follow:!(r&131072),noent_okay:!0});n=o.node,e=o.path}var a=!1;if(r&64)if(n){if(r&128)throw new FS.ErrnoError(20)}else n=FS.mknod(e,t,0),a=!0;if(!n)throw new FS.ErrnoError(44);if(FS.isChrdev(n.mode)&&(r&=-513),r&65536&&!FS.isDir(n.mode))throw new FS.ErrnoError(54);if(!a){var s=FS.mayOpen(n,r);if(s)throw new FS.ErrnoError(s)}r&512&&!a&&FS.truncate(n,0),r&=-131713;var l=FS.createStream({node:n,path:FS.getPath(n),flags:r,seekable:!0,position:0,stream_ops:n.stream_ops,ungotten:[],error:!1});return l.stream_ops.open&&l.stream_ops.open(l),Module.logReadFiles&&!(r&1)&&(e in FS.readFiles||(FS.readFiles[e]=1)),l},close(e){if(FS.isClosed(e))throw new FS.ErrnoError(8);e.getdents&&(e.getdents=null);try{e.stream_ops.close&&e.stream_ops.close(e)}catch(r){throw r}finally{FS.closeStream(e.fd)}e.fd=null},isClosed(e){return e.fd===null},llseek(e,r,t){if(FS.isClosed(e))throw new FS.ErrnoError(8);if(!e.seekable||!e.stream_ops.llseek)throw new FS.ErrnoError(70);if(t!=0&&t!=1&&t!=2)throw new FS.ErrnoError(28);return e.position=e.stream_ops.llseek(e,r,t),e.ungotten=[],e.position},read(e,r,t,n,o){if(n<0||o<0)throw new FS.ErrnoError(28);if(FS.isClosed(e))throw new FS.ErrnoError(8);if((e.flags&2097155)===1)throw new FS.ErrnoError(8);if(FS.isDir(e.node.mode))throw new FS.ErrnoError(31);if(!e.stream_ops.read)throw new FS.ErrnoError(28);var a=typeof o<"u";if(!a)o=e.position;else if(!e.seekable)throw new FS.ErrnoError(70);var s=e.stream_ops.read(e,r,t,n,o);return a||(e.position+=s),s},write(e,r,t,n,o,a){if(n<0||o<0)throw new FS.ErrnoError(28);if(FS.isClosed(e))throw new FS.ErrnoError(8);if(!(e.flags&2097155))throw new FS.ErrnoError(8);if(FS.isDir(e.node.mode))throw new FS.ErrnoError(31);if(!e.stream_ops.write)throw new FS.ErrnoError(28);e.seekable&&e.flags&1024&&FS.llseek(e,0,2);var s=typeof o<"u";if(!s)o=e.position;else if(!e.seekable)throw new FS.ErrnoError(70);var l=e.stream_ops.write(e,r,t,n,o,a);return s||(e.position+=l),l},allocate(e,r,t){if(FS.isClosed(e))throw new FS.ErrnoError(8);if(r<0||t<=0)throw new FS.ErrnoError(28);if(!(e.flags&2097155))throw new FS.ErrnoError(8);if(!FS.isFile(e.node.mode)&&!FS.isDir(e.node.mode))throw new FS.ErrnoError(43);if(!e.stream_ops.allocate)throw new FS.ErrnoError(138);e.stream_ops.allocate(e,r,t)},mmap(e,r,t,n,o){if(n&2&&!(o&2)&&(e.flags&2097155)!==2)throw new FS.ErrnoError(2);if((e.flags&2097155)===1)throw new FS.ErrnoError(2);if(!e.stream_ops.mmap)throw new FS.ErrnoError(43);if(!r)throw new FS.ErrnoError(28);return e.stream_ops.mmap(e,r,t,n,o)},msync(e,r,t,n,o){return e.stream_ops.msync?e.stream_ops.msync(e,r,t,n,o):0},ioctl(e,r,t){if(!e.stream_ops.ioctl)throw new FS.ErrnoError(59);return e.stream_ops.ioctl(e,r,t)},readFile(e,r={}){if(r.flags=r.flags||0,r.encoding=r.encoding||"binary",r.encoding!=="utf8"&&r.encoding!=="binary")throw new Error(`Invalid encoding type "${r.encoding}"`);var t,n=FS.open(e,r.flags),o=FS.stat(e),a=o.size,s=new Uint8Array(a);return FS.read(n,s,0,a,0),r.encoding==="utf8"?t=UTF8ArrayToString(s):r.encoding==="binary"&&(t=s),FS.close(n),t},writeFile(e,r,t={}){t.flags=t.flags||577;var n=FS.open(e,t.flags,t.mode);if(typeof r=="string"){var o=new Uint8Array(lengthBytesUTF8(r)+1),a=stringToUTF8Array(r,o,0,o.length);FS.write(n,o,0,a,void 0,t.canOwn)}else if(ArrayBuffer.isView(r))FS.write(n,r,0,r.byteLength,void 0,t.canOwn);else throw new Error("Unsupported data type");FS.close(n)},cwd:()=>FS.currentPath,chdir(e){var r=FS.lookupPath(e,{follow:!0});if(r.node===null)throw new FS.ErrnoError(44);if(!FS.isDir(r.node.mode))throw new FS.ErrnoError(54);var t=FS.nodePermissions(r.node,"x");if(t)throw new FS.ErrnoError(t);FS.currentPath=r.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:(n,o,a,s,l)=>s,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 e=new Uint8Array(1024),r=0,t=()=>(r===0&&(r=randomFill(e).byteLength),e[--r]);FS.createDevice("/dev","random",t),FS.createDevice("/dev","urandom",t),FS.mkdir("/dev/shm"),FS.mkdir("/dev/shm/tmp")},createSpecialDirectories(){FS.mkdir("/proc");var e=FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd"),FS.mount({mount(){var r=FS.createNode(e,"fd",16895,73);return r.stream_ops={llseek:MEMFS.stream_ops.llseek},r.node_ops={lookup(t,n){var o=+n,a=FS.getStreamChecked(o),s={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:()=>a.path},id:o+1};return s.parent=s,s},readdir(){return Array.from(FS.streams.entries()).filter(([t,n])=>n).map(([t,n])=>t.toString())}},r}},{},"/proc/self/fd")},createStandardStreams(e,r,t){e?FS.createDevice("/dev","stdin",e):FS.symlink("/dev/tty","/dev/stdin"),r?FS.createDevice("/dev","stdout",null,r):FS.symlink("/dev/tty","/dev/stdout"),t?FS.createDevice("/dev","stderr",null,t):FS.symlink("/dev/tty1","/dev/stderr");var n=FS.open("/dev/stdin",0),o=FS.open("/dev/stdout",1),a=FS.open("/dev/stderr",1)},staticInit(){FS.nameTable=new Array(4096),FS.mount(MEMFS,{},"/"),FS.createDefaultDirectories(),FS.createDefaultDevices(),FS.createSpecialDirectories(),FS.filesystems={MEMFS,PROXYFS}},init(e,r,t){FS.initialized=!0,e??(e=Module.stdin),r??(r=Module.stdout),t??(t=Module.stderr),FS.createStandardStreams(e,r,t)},quit(){FS.initialized=!1,_fflush(0);for(var e=0;e<FS.streams.length;e++){var r=FS.streams[e];r&&FS.close(r)}},findObject(e,r){var t=FS.analyzePath(e,r);return t.exists?t.object:null},analyzePath(e,r){try{var t=FS.lookupPath(e,{follow:!r});e=t.path}catch{}var n={isRoot:!1,exists:!1,error:0,name:null,path:null,object:null,parentExists:!1,parentPath:null,parentObject:null};try{var t=FS.lookupPath(e,{parent:!0});n.parentExists=!0,n.parentPath=t.path,n.parentObject=t.node,n.name=PATH.basename(e),t=FS.lookupPath(e,{follow:!r}),n.exists=!0,n.path=t.path,n.object=t.node,n.name=t.node.name,n.isRoot=t.path==="/"}catch(o){n.error=o.errno}return n},createPath(e,r,t,n){e=typeof e=="string"?e:FS.getPath(e);for(var o=r.split("/").reverse();o.length;){var a=o.pop();if(a){var s=PATH.join2(e,a);try{FS.mkdir(s)}catch{}e=s}}return s},createFile(e,r,t,n,o){var a=PATH.join2(typeof e=="string"?e:FS.getPath(e),r),s=FS_getMode(n,o);return FS.create(a,s)},createDataFile(e,r,t,n,o,a){var s=r;e&&(e=typeof e=="string"?e:FS.getPath(e),s=r?PATH.join2(e,r):e);var l=FS_getMode(n,o),_=FS.create(s,l);if(t){if(typeof t=="string"){for(var u=new Array(t.length),d=0,m=t.length;d<m;++d)u[d]=t.charCodeAt(d);t=u}FS.chmod(_,l|146);var f=FS.open(_,577);FS.write(f,t,0,t.length,0,a),FS.close(f),FS.chmod(_,l)}},createDevice(e,r,t,n){var l;var o=PATH.join2(typeof e=="string"?e:FS.getPath(e),r),a=FS_getMode(!!t,!!n);(l=FS.createDevice).major??(l.major=64);var s=FS.makedev(FS.createDevice.major++,0);return FS.registerDevice(s,{open(_){_.seekable=!1},close(_){n?.buffer?.length&&n(10)},read(_,u,d,m,f){for(var c=0,S=0;S<m;S++){var p;try{p=t()}catch{throw new FS.ErrnoError(29)}if(p===void 0&&c===0)throw new FS.ErrnoError(6);if(p==null)break;c++,u[d+S]=p}return c&&(_.node.atime=Date.now()),c},write(_,u,d,m,f){for(var c=0;c<m;c++)try{n(u[d+c])}catch{throw new FS.ErrnoError(29)}return m&&(_.node.mtime=_.node.ctime=Date.now()),c}}),FS.mkdev(o,a,s)},forceLoadFile(e){if(e.isDevice||e.isFolder||e.link||e.contents)return!0;if(typeof XMLHttpRequest<"u")throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.");try{e.contents=readBinary(e.url),e.usedBytes=e.contents.length}catch{throw new FS.ErrnoError(29)}},createLazyFile(e,r,t,n,o){class a{constructor(){b(this,"lengthKnown",!1);b(this,"chunks",[])}get(c){if(!(c>this.length-1||c<0)){var S=c%this.chunkSize,p=c/this.chunkSize|0;return this.getter(p)[S]}}setDataGetter(c){this.getter=c}cacheLength(){var c=new XMLHttpRequest;if(c.open("HEAD",t,!1),c.send(null),!(c.status>=200&&c.status<300||c.status===304))throw new Error("Couldn't load "+t+". Status: "+c.status);var S=Number(c.getResponseHeader("Content-length")),p,E=(p=c.getResponseHeader("Accept-Ranges"))&&p==="bytes",y=(p=c.getResponseHeader("Content-Encoding"))&&p==="gzip",h=1024*1024;E||(h=S);var A=(v,w)=>{if(v>w)throw new Error("invalid range ("+v+", "+w+") or no bytes requested!");if(w>S-1)throw new Error("only "+S+" bytes available! programmer error!");var g=new XMLHttpRequest;if(g.open("GET",t,!1),S!==h&&g.setRequestHeader("Range","bytes="+v+"-"+w),g.responseType="arraybuffer",g.overrideMimeType&&g.overrideMimeType("text/plain; charset=x-user-defined"),g.send(null),!(g.status>=200&&g.status<300||g.status===304))throw new Error("Couldn't load "+t+". Status: "+g.status);return g.response!==void 0?new Uint8Array(g.response||[]):intArrayFromString(g.responseText||"",!0)},F=this;F.setDataGetter(v=>{var w=v*h,g=(v+1)*h-1;if(g=Math.min(g,S-1),typeof F.chunks[v]>"u"&&(F.chunks[v]=A(w,g)),typeof F.chunks[v]>"u")throw new Error("doXHR failed!");return F.chunks[v]}),(y||!S)&&(h=S=1,S=this.getter(0).length,h=S,out("LazyFiles on gzip forces download of the whole file when length is accessed")),this._length=S,this._chunkSize=h,this.lengthKnown=!0}get length(){return this.lengthKnown||this.cacheLength(),this._length}get chunkSize(){return this.lengthKnown||this.cacheLength(),this._chunkSize}}if(typeof XMLHttpRequest<"u"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var s=new a,l={isDevice:!1,contents:s}}else var l={isDevice:!1,url:t};var _=FS.createFile(e,r,l,n,o);l.contents?_.contents=l.contents:l.url&&(_.contents=null,_.url=l.url),Object.defineProperties(_,{usedBytes:{get:function(){return this.contents.length}}});var u={},d=Object.keys(_.stream_ops);d.forEach(f=>{var c=_.stream_ops[f];u[f]=(...S)=>(FS.forceLoadFile(_),c(...S))});function m(f,c,S,p,E){var y=f.node.contents;if(E>=y.length)return 0;var h=Math.min(y.length-E,p);if(y.slice)for(var A=0;A<h;A++)c[S+A]=y[E+A];else for(var A=0;A<h;A++)c[S+A]=y.get(E+A);return h}return u.read=(f,c,S,p,E)=>(FS.forceLoadFile(_),m(f,c,S,p,E)),u.mmap=(f,c,S,p,E)=>{FS.forceLoadFile(_);var y=mmapAlloc(c);if(!y)throw new FS.ErrnoError(48);return m(f,HEAP8,y,c,S),{ptr:y,allocated:!0}},_.stream_ops=u,_}},SYSCALLS={DEFAULT_POLLMASK:5,calculateAt(e,r,t){if(PATH.isAbs(r))return r;var n;if(e===-100)n=FS.cwd();else{var o=SYSCALLS.getStreamFromFD(e);n=o.path}if(r.length==0){if(!t)throw new FS.ErrnoError(44);return n}return n+"/"+r},doStat(e,r,t){var n=e(r);HEAP32[t>>2]=n.dev,HEAP32[t+4>>2]=n.mode,HEAPU32[t+8>>2]=n.nlink,HEAP32[t+12>>2]=n.uid,HEAP32[t+16>>2]=n.gid,HEAP32[t+20>>2]=n.rdev,HEAP64[t+24>>3]=BigInt(n.size),HEAP32[t+32>>2]=4096,HEAP32[t+36>>2]=n.blocks;var o=n.atime.getTime(),a=n.mtime.getTime(),s=n.ctime.getTime();return HEAP64[t+40>>3]=BigInt(Math.floor(o/1e3)),HEAPU32[t+48>>2]=o%1e3*1e3*1e3,HEAP64[t+56>>3]=BigInt(Math.floor(a/1e3)),HEAPU32[t+64>>2]=a%1e3*1e3*1e3,HEAP64[t+72>>3]=BigInt(Math.floor(s/1e3)),HEAPU32[t+80>>2]=s%1e3*1e3*1e3,HEAP64[t+88>>3]=BigInt(n.ino),0},doMsync(e,r,t,n,o){if(!FS.isFile(r.node.mode))throw new FS.ErrnoError(43);if(n&2)return 0;var a=HEAPU8.slice(e,e+t);FS.msync(r,a,o,t,n)},getStreamFromFD(e){var r=FS.getStreamChecked(e);return r},varargs:void 0,getStr(e){var r=UTF8ToString(e);return r}},___syscall__newselect=function(e,r,t,n,o){try{for(var a=0,s=r?HEAP32[r>>2]:0,l=r?HEAP32[r+4>>2]:0,_=t?HEAP32[t>>2]:0,u=t?HEAP32[t+4>>2]:0,d=n?HEAP32[n>>2]:0,m=n?HEAP32[n+4>>2]:0,f=0,c=0,S=0,p=0,E=0,y=0,h=(r?HEAP32[r>>2]:0)|(t?HEAP32[t>>2]:0)|(n?HEAP32[n>>2]:0),A=(r?HEAP32[r+4>>2]:0)|(t?HEAP32[t+4>>2]:0)|(n?HEAP32[n+4>>2]:0),F=(O,P,R,H)=>O<32?P&H:R&H,v=0;v<e;v++){var w=1<<v%32;if(F(v,h,A,w)){var g=SYSCALLS.getStreamFromFD(v),T=SYSCALLS.DEFAULT_POLLMASK;if(g.stream_ops.poll){var k=-1;if(o){var D=r?HEAP32[o>>2]:0,N=r?HEAP32[o+4>>2]:0;k=(D+N/1e6)*1e3}T=g.stream_ops.poll(g,k)}T&1&&F(v,s,l,w)&&(v<32?f=f|w:c=c|w,a++),T&4&&F(v,_,u,w)&&(v<32?S=S|w:p=p|w,a++),T&2&&F(v,d,m,w)&&(v<32?E=E|w:y=y|w,a++)}}return r&&(HEAP32[r>>2]=f,HEAP32[r+4>>2]=c),t&&(HEAP32[t>>2]=S,HEAP32[t+4>>2]=p),n&&(HEAP32[n>>2]=E,HEAP32[n+4>>2]=y),a}catch(O){if(typeof FS>"u"||O.name!=="ErrnoError")throw O;return-O.errno}};___syscall__newselect.sig="iipppp";function ___syscall_dup(e){try{var r=SYSCALLS.getStreamFromFD(e);return FS.dupStream(r).fd}catch(t){if(typeof FS>"u"||t.name!=="ErrnoError")throw t;return-t.errno}}___syscall_dup.sig="ii";function ___syscall_dup3(e,r,t){try{var n=SYSCALLS.getStreamFromFD(e);if(n.fd===r)return-28;if(r<0||r>=FS.MAX_OPEN_FDS)return-8;var o=FS.getStream(r);return o&&FS.close(o),FS.dupStream(n,r).fd}catch(a){if(typeof FS>"u"||a.name!=="ErrnoError")throw a;return-a.errno}}___syscall_dup3.sig="iiii";function ___syscall_faccessat(e,r,t,n){try{if(r=SYSCALLS.getStr(r),r=SYSCALLS.calculateAt(e,r),t&-8)return-28;var o=FS.lookupPath(r,{follow:!0}),a=o.node;if(!a)return-44;var s="";return t&4&&(s+="r"),t&2&&(s+="w"),t&1&&(s+="x"),s&&FS.nodePermissions(a,s)?-2:0}catch(l){if(typeof FS>"u"||l.name!=="ErrnoError")throw l;return-l.errno}}___syscall_faccessat.sig="iipii";var ___syscall_fadvise64=(e,r,t,n)=>0;___syscall_fadvise64.sig="iijji";var syscallGetVarargI=()=>{var e=HEAP32[+SYSCALLS.varargs>>2];return SYSCALLS.varargs+=4,e},syscallGetVarargP=syscallGetVarargI;function ___syscall_fcntl64(e,r,t){SYSCALLS.varargs=t;try{var n=SYSCALLS.getStreamFromFD(e);switch(r){case 0:{var o=syscallGetVarargI();if(o<0)return-28;for(;FS.streams[o];)o++;var a;return a=FS.dupStream(n,o),a.fd}case 1:case 2:return 0;case 3:return n.flags;case 4:{var o=syscallGetVarargI();return n.flags|=o,0}case 12:{var o=syscallGetVarargP(),s=0;return HEAP16[o+s>>1]=2,0}case 13:case 14:return 0}return-28}catch(l){if(typeof FS>"u"||l.name!=="ErrnoError")throw l;return-l.errno}}___syscall_fcntl64.sig="iiip";function ___syscall_fstat64(e,r){try{var t=SYSCALLS.getStreamFromFD(e);return SYSCALLS.doStat(FS.stat,t.path,r)}catch(n){if(typeof FS>"u"||n.name!=="ErrnoError")throw n;return-n.errno}}___syscall_fstat64.sig="iip";var stringToUTF8=(e,r,t)=>stringToUTF8Array(e,HEAPU8,r,t);function ___syscall_getcwd(e,r){try{if(r===0)return-28;var t=FS.cwd(),n=lengthBytesUTF8(t)+1;return r<n?-68:(stringToUTF8(t,e,r),n)}catch(o){if(typeof FS>"u"||o.name!=="ErrnoError")throw o;return-o.errno}}___syscall_getcwd.sig="ipp";function ___syscall_getdents64(e,r,t){try{var n=SYSCALLS.getStreamFromFD(e);n.getdents||(n.getdents=FS.readdir(n.path));for(var o=280,a=0,s=FS.llseek(n,0,1),l=Math.floor(s/o),_=Math.min(n.getdents.length,l+Math.floor(t/o)),u=l;u<_;u++){var d,m,f=n.getdents[u];if(f===".")d=n.node.id,m=4;else if(f===".."){var c=FS.lookupPath(n.path,{parent:!0});d=c.node.id,m=4}else{var S;try{S=FS.lookupNode(n.node,f)}catch(p){if(p?.errno===28)continue;throw p}d=S.id,m=FS.isChrdev(S.mode)?2:FS.isDir(S.mode)?4:FS.isLink(S.mode)?10:8}HEAP64[r+a>>3]=BigInt(d),HEAP64[r+a+8>>3]=BigInt((u+1)*o),HEAP16[r+a+16>>1]=280,HEAP8[r+a+18]=m,stringToUTF8(f,r+a+19,256),a+=o}return FS.llseek(n,u*o,0),a}catch(p){if(typeof FS>"u"||p.name!=="ErrnoError")throw p;return-p.errno}}___syscall_getdents64.sig="iipp";function ___syscall_ioctl(e,r,t){SYSCALLS.varargs=t;try{var n=SYSCALLS.getStreamFromFD(e);switch(r){case 21509:return n.tty?0:-59;case 21505:{if(!n.tty)return-59;if(n.tty.ops.ioctl_tcgets){var o=n.tty.ops.ioctl_tcgets(n),a=syscallGetVarargP();HEAP32[a>>2]=o.c_iflag||0,HEAP32[a+4>>2]=o.c_oflag||0,HEAP32[a+8>>2]=o.c_cflag||0,HEAP32[a+12>>2]=o.c_lflag||0;for(var s=0;s<32;s++)HEAP8[a+s+17]=o.c_cc[s]||0;return 0}return 0}case 21510:case 21511:case 21512:return n.tty?0:-59;case 21506:case 21507:case 21508:{if(!n.tty)return-59;if(n.tty.ops.ioctl_tcsets){for(var a=syscallGetVarargP(),l=HEAP32[a>>2],_=HEAP32[a+4>>2],u=HEAP32[a+8>>2],d=HEAP32[a+12>>2],m=[],s=0;s<32;s++)m.push(HEAP8[a+s+17]);return n.tty.ops.ioctl_tcsets(n.tty,r,{c_iflag:l,c_oflag:_,c_cflag:u,c_lflag:d,c_cc:m})}return 0}case 21519:{if(!n.tty)return-59;var a=syscallGetVarargP();return HEAP32[a>>2]=0,0}case 21520:return n.tty?-28:-59;case 21531:{var a=syscallGetVarargP();return FS.ioctl(n,r,a)}case 21523:{if(!n.tty)return-59;if(n.tty.ops.ioctl_tiocgwinsz){var f=n.tty.ops.ioctl_tiocgwinsz(n.tty),a=syscallGetVarargP();HEAP16[a>>1]=f[0],HEAP16[a+2>>1]=f[1]}return 0}case 21524:return n.tty?0:-59;case 21515:return n.tty?0:-59;default:return-28}}catch(c){if(typeof FS>"u"||c.name!=="ErrnoError")throw c;return-c.errno}}___syscall_ioctl.sig="iiip";function ___syscall_lstat64(e,r){try{return e=SYSCALLS.getStr(e),SYSCALLS.doStat(FS.lstat,e,r)}catch(t){if(typeof FS>"u"||t.name!=="ErrnoError")throw t;return-t.errno}}___syscall_lstat64.sig="ipp";function ___syscall_mkdirat(e,r,t){try{return r=SYSCALLS.getStr(r),r=SYSCALLS.calculateAt(e,r),FS.mkdir(r,t,0),0}catch(n){if(typeof FS>"u"||n.name!=="ErrnoError")throw n;return-n.errno}}___syscall_mkdirat.sig="iipi";function ___syscall_newfstatat(e,r,t,n){try{r=SYSCALLS.getStr(r);var o=n&256,a=n&4096;return n=n&-6401,r=SYSCALLS.calculateAt(e,r,a),SYSCALLS.doStat(o?FS.lstat:FS.stat,r,t)}catch(s){if(typeof FS>"u"||s.name!=="ErrnoError")throw s;return-s.errno}}___syscall_newfstatat.sig="iippi";function ___syscall_openat(e,r,t,n){SYSCALLS.varargs=n;try{r=SYSCALLS.getStr(r),r=SYSCALLS.calculateAt(e,r);var o=n?syscallGetVarargI():0;return FS.open(r,t,o).fd}catch(a){if(typeof FS>"u"||a.name!=="ErrnoError")throw a;return-a.errno}}___syscall_openat.sig="iipip";var PIPEFS={BUCKET_BUFFER_SIZE:8192,mount(e){return FS.createNode(null,"/",16895,0)},createPipe(){var e={buckets:[],refcnt:2};e.buckets.push({buffer:new Uint8Array(PIPEFS.BUCKET_BUFFER_SIZE),offset:0,roffset:0});var r=PIPEFS.nextname(),t=PIPEFS.nextname(),n=FS.createNode(PIPEFS.root,r,4096,0),o=FS.createNode(PIPEFS.root,t,4096,0);n.pipe=e,o.pipe=e;var a=FS.createStream({path:r,node:n,flags:0,seekable:!1,stream_ops:PIPEFS.stream_ops});n.stream=a;var s=FS.createStream({path:t,node:o,flags:1,seekable:!1,stream_ops:PIPEFS.stream_ops});return o.stream=s,{readable_fd:a.fd,writable_fd:s.fd}},stream_ops:{poll(e){var r=e.node.pipe;if((e.flags&2097155)===1)return 260;if(r.buckets.length>0)for(var t=0;t<r.buckets.length;t++){var n=r.buckets[t];if(n.offset-n.roffset>0)return 65}return 0},ioctl(e,r,t){return 28},fsync(e){return 28},read(e,r,t,n,o){for(var a=e.node.pipe,s=0,l=0;l<a.buckets.length;l++){var _=a.buckets[l];s+=_.offset-_.roffset}var u=r.subarray(t,t+n);if(n<=0)return 0;if(s==0)throw new FS.ErrnoError(6);for(var d=Math.min(s,n),m=d,f=0,l=0;l<a.buckets.length;l++){var c=a.buckets[l],S=c.offset-c.roffset;if(d<=S){var p=c.buffer.subarray(c.roffset,c.offset);d<S?(p=p.subarray(0,d),c.roffset+=d):f++,u.set(p);break}else{var p=c.buffer.subarray(c.roffset,c.offset);u.set(p),u=u.subarray(p.byteLength),d-=p.byteLength,f++}}return f&&f==a.buckets.length&&(f--,a.buckets[f].offset=0,a.buckets[f].roffset=0),a.buckets.splice(0,f),m},write(e,r,t,n,o){var a=e.node.pipe,s=r.subarray(t,t+n),l=s.byteLength;if(l<=0)return 0;var _=null;a.buckets.length==0?(_={buffer:new Uint8Array(PIPEFS.BUCKET_BUFFER_SIZE),offset:0,roffset:0},a.buckets.push(_)):_=a.buckets[a.buckets.length-1],assert(_.offset<=PIPEFS.BUCKET_BUFFER_SIZE);var u=PIPEFS.BUCKET_BUFFER_SIZE-_.offset;if(u>=l)return _.buffer.set(s,_.offset),_.offset+=l,l;u>0&&(_.buffer.set(s.subarray(0,u),_.offset),_.offset+=u,s=s.subarray(u,s.byteLength));for(var d=s.byteLength/PIPEFS.BUCKET_BUFFER_SIZE|0,m=s.byteLength%PIPEFS.BUCKET_BUFFER_SIZE,f=0;f<d;f++){var c={buffer:new Uint8Array(PIPEFS.BUCKET_BUFFER_SIZE),offset:PIPEFS.BUCKET_BUFFER_SIZE,roffset:0};a.buckets.push(c),c.buffer.set(s.subarray(0,PIPEFS.BUCKET_BUFFER_SIZE)),s=s.subarray(PIPEFS.BUCKET_BUFFER_SIZE,s.byteLength)}if(m>0){var c={buffer:new Uint8Array(PIPEFS.BUCKET_BUFFER_SIZE),offset:s.byteLength,roffset:0};a.buckets.push(c),c.buffer.set(s)}return l},close(e){var r=e.node.pipe;r.refcnt--,r.refcnt===0&&(r.buckets=null)}},nextname(){return PIPEFS.nextname.current||(PIPEFS.nextname.current=0),"pipe["+PIPEFS.nextname.current+++"]"}};function ___syscall_pipe(e){try{if(e==0)throw new FS.ErrnoError(21);var r=PIPEFS.createPipe();return HEAP32[e>>2]=r.readable_fd,HEAP32[e+4>>2]=r.writable_fd,0}catch(t){if(typeof FS>"u"||t.name!=="ErrnoError")throw t;return-t.errno}}___syscall_pipe.sig="ip";function ___syscall_readlinkat(e,r,t,n){try{if(r=SYSCALLS.getStr(r),r=SYSCALLS.calculateAt(e,r),n<=0)return-28;var o=FS.readlink(r),a=Math.min(n,lengthBytesUTF8(o)),s=HEAP8[t+a];return stringToUTF8(o,t,n+1),HEAP8[t+a]=s,a}catch(l){if(typeof FS>"u"||l.name!=="ErrnoError")throw l;return-l.errno}}___syscall_readlinkat.sig="iippp";var SOCKFS={websocketArgs:{},callbacks:{},on(e,r){SOCKFS.callbacks[e]=r},emit(e,r){SOCKFS.callbacks[e]?.(r)},mount(e){return SOCKFS.websocketArgs=Module.websocket||{},(Module.websocket??(Module.websocket={})).on=SOCKFS.on,FS.createNode(null,"/",16895,0)},createSocket(e,r,t){r&=-526337;var n=r==1;if(n&&t&&t!=6)throw new FS.ErrnoError(66);var o={family:e,type:r,protocol:t,server:null,error:null,peers:{},pending:[],recv_queue:[],sock_ops:SOCKFS.websocket_sock_ops},a=SOCKFS.nextname(),s=FS.createNode(SOCKFS.root,a,49152,0);s.sock=o;var l=FS.createStream({path:a,node:s,flags:2,seekable:!1,stream_ops:SOCKFS.stream_ops});return o.stream=l,o},getSocket(e){var r=FS.getStream(e);return!r||!FS.isSocket(r.node.mode)?null:r.node.sock},stream_ops:{poll(e){var r=e.node.sock;return r.sock_ops.poll(r)},ioctl(e,r,t){var n=e.node.sock;return n.sock_ops.ioctl(n,r,t)},read(e,r,t,n,o){var a=e.node.sock,s=a.sock_ops.recvmsg(a,n);return s?(r.set(s.buffer,t),s.buffer.length):0},write(e,r,t,n,o){var a=e.node.sock;return a.sock_ops.sendmsg(a,r,t,n)},close(e){var r=e.node.sock;r.sock_ops.close(r)}},nextname(){return SOCKFS.nextname.current||(SOCKFS.nextname.current=0),`socket[${SOCKFS.nextname.current++}]`},websocket_sock_ops:{createPeer(e,r,t){var n;if(typeof r=="object"&&(n=r,r=null,t=null),n)if(n._socket)r=n._socket.remoteAddress,t=n._socket.remotePort;else{var o=/ws[s]?:\/\/([^:]+):(\d+)/.exec(n.url);if(!o)throw new Error("WebSocket URL must be in the format ws(s)://address:port");r=o[1],t=parseInt(o[2],10)}else try{var a="ws:#".replace("#","//"),s="binary",l=void 0;if(SOCKFS.websocketArgs.url&&(a=SOCKFS.websocketArgs.url),SOCKFS.websocketArgs.subprotocol?s=SOCKFS.websocketArgs.subprotocol:SOCKFS.websocketArgs.subprotocol===null&&(s="null"),a==="ws://"||a==="wss://"){var _=r.split("/");a=a+_[0]+":"+t+"/"+_.slice(1).join("/")}s!=="null"&&(s=s.replace(/^ +| +$/g,"").split(/ *, */),l=s);var u;ENVIRONMENT_IS_NODE?u=require("ws"):u=WebSocket,n=new u(a,l),n.binaryType="arraybuffer"}catch{throw new FS.ErrnoError(23)}var d={addr:r,port:t,socket:n,msg_send_queue:[]};return SOCKFS.websocket_sock_ops.addPeer(e,d),SOCKFS.websocket_sock_ops.handlePeerEvents(e,d),e.type===2&&typeof e.sport<"u"&&d.msg_send_queue.push(new Uint8Array([255,255,255,255,112,111,114,116,(e.sport&65280)>>8,e.sport&255])),d},getPeer(e,r,t){return e.peers[r+":"+t]},addPeer(e,r){e.peers[r.addr+":"+r.port]=r},removePeer(e,r){delete e.peers[r.addr+":"+r.port]},handlePeerEvents(e,r){var t=!0,n=function(){e.connecting=!1,SOCKFS.emit("open",e.stream.fd);try{for(var a=r.msg_send_queue.shift();a;)r.socket.send(a),a=r.msg_send_queue.shift()}catch{r.socket.close()}};function o(a){if(typeof a=="string"){var s=new TextEncoder;a=s.encode(a)}else{if(assert(a.byteLength!==void 0),a.byteLength==0)return;a=new Uint8Array(a)}var l=t;if(t=!1,l&&a.length===10&&a[0]===255&&a[1]===255&&a[2]===255&&a[3]===255&&a[4]===112&&a[5]===111&&a[6]===114&&a[7]===116){var _=a[8]<<8|a[9];SOCKFS.websocket_sock_ops.removePeer(e,r),r.port=_,SOCKFS.websocket_sock_ops.addPeer(e,r);return}e.recv_queue.push({addr:r.addr,port:r.port,data:a}),SOCKFS.emit("message",e.stream.fd)}ENVIRONMENT_IS_NODE?(r.socket.on("open",n),r.socket.on("message",function(a,s){s&&o(new Uint8Array(a).buffer)}),r.socket.on("close",function(){SOCKFS.emit("close",e.stream.fd)}),r.socket.on("error",function(a){e.error=14,SOCKFS.emit("error",[e.stream.fd,e.error,"ECONNREFUSED: Connection refused"])})):(r.socket.onopen=n,r.socket.onclose=function(){SOCKFS.emit("close",e.stream.fd)},r.socket.onmessage=function(s){o(s.data)},r.socket.onerror=function(a){e.error=14,SOCKFS.emit("error",[e.stream.fd,e.error,"ECONNREFUSED: Connection refused"])})},poll(e){if(e.type===1&&e.server)return e.pending.length?65:0;var r=0,t=e.type===1?SOCKFS.websocket_sock_ops.getPeer(e,e.daddr,e.dport):null;return(e.recv_queue.length||!t||t&&t.socket.readyState===t.socket.CLOSING||t&&t.socket.readyState===t.socket.CLOSED)&&(r|=65),(!t||t&&t.socket.readyState===t.socket.OPEN)&&(r|=4),(t&&t.socket.readyState===t.socket.CLOSING||t&&t.socket.readyState===t.socket.CLOSED)&&(e.connecting?r|=4:r|=16),r},ioctl(e,r,t){switch(r){case 21531:var n=0;return e.recv_queue.length&&(n=e.recv_queue[0].data.length),HEAP32[t>>2]=n,0;default:return 28}},close(e){if(e.server){try{e.server.close()}catch{}e.server=null}for(var r=Object.keys(e.peers),t=0;t<r.length;t++){var n=e.peers[r[t]];try{n.socket.close()}catch{}SOCKFS.websocket_sock_ops.removePeer(e,n)}return 0},bind(e,r,t){if(typeof e.saddr<"u"||typeof e.sport<"u")throw new FS.ErrnoError(28);if(e.saddr=r,e.sport=t,e.type===2){e.server&&(e.server.close(),e.server=null);try{e.sock_ops.listen(e,0)}catch(n){if(n.name!=="ErrnoError"||n.errno!==138)throw n}}},connect(e,r,t){if(e.server)throw new FS.ErrnoError(138);if(typeof e.daddr<"u"&&typeof e.dport<"u"){var n=SOCKFS.websocket_sock_ops.getPeer(e,e.daddr,e.dport);if(n)throw n.socket.readyState===n.socket.CONNECTING?new FS.ErrnoError(7):new FS.ErrnoError(30)}var o=SOCKFS.websocket_sock_ops.createPeer(e,r,t);e.daddr=o.addr,e.dport=o.port,e.connecting=!0},listen(e,r){if(!ENVIRONMENT_IS_NODE)throw new FS.ErrnoError(138);if(e.server)throw new FS.ErrnoError(28);var t=require("ws").Server,n=e.saddr;e.server=new t({host:n,port:e.sport}),SOCKFS.emit("listen",e.stream.fd),e.server.on("connection",function(o){if(e.type===1){var a=SOCKFS.createSocket(e.family,e.type,e.protocol),s=SOCKFS.websocket_sock_ops.createPeer(a,o);a.daddr=s.addr,a.dport=s.port,e.pending.push(a),SOCKFS.emit("connection",a.stream.fd)}else SOCKFS.websocket_sock_ops.createPeer(e,o),SOCKFS.emit("connection",e.stream.fd)}),e.server.on("close",function(){SOCKFS.emit("close",e.stream.fd),e.server=null}),e.server.on("error",function(o){e.error=23,SOCKFS.emit("error",[e.stream.fd,e.error,"EHOSTUNREACH: Host is unreachable"])})},accept(e){if(!e.server||!e.pending.length)throw new FS.ErrnoError(28);var r=e.pending.shift();return r.stream.flags=e.stream.flags,r},getname(e,r){var t,n;if(r){if(e.daddr===void 0||e.dport===void 0)throw new FS.ErrnoError(53);t=e.daddr,n=e.dport}else t=e.saddr||0,n=e.sport||0;return{addr:t,port:n}},sendmsg(e,r,t,n,o,a){if(e.type===2){if((o===void 0||a===void 0)&&(o=e.daddr,a=e.dport),o===void 0||a===void 0)throw new FS.ErrnoError(17)}else o=e.daddr,a=e.dport;var s=SOCKFS.websocket_sock_ops.getPeer(e,o,a);if(e.type===1&&(!s||s.socket.readyState===s.socket.CLOSING||s.socket.readyState===s.socket.CLOSED))throw new FS.ErrnoError(53);ArrayBuffer.isView(r)&&(t+=r.byteOffset,r=r.buffer);var l=r.slice(t,t+n);if(!s||s.socket.readyState!==s.socket.OPEN)return e.type===2&&(!s||s.socket.readyState===s.socket.CLOSING||s.socket.readyState===s.socket.CLOSED)&&(s=SOCKFS.websocket_sock_ops.createPeer(e,o,a)),s.msg_send_queue.push(l),n;try{return s.socket.send(l),n}catch{throw new FS.ErrnoError(28)}},recvmsg(e,r){if(e.type===1&&e.server)throw new FS.ErrnoError(53);var t=e.recv_queue.shift();if(!t){if(e.type===1){var n=SOCKFS.websocket_sock_ops.getPeer(e,e.daddr,e.dport);if(!n)throw new FS.ErrnoError(53);if(n.socket.readyState===n.socket.CLOSING||n.socket.readyState===n.socket.CLOSED)return null;throw new FS.ErrnoError(6)}throw new FS.ErrnoError(6)}var o=t.data.byteLength||t.data.length,a=t.data.byteOffset||0,s=t.data.buffer||t.data,l=Math.min(r,o),_={buffer:new Uint8Array(s,a,l),addr:t.addr,port:t.port};if(e.type===1&&l<o){var u=o-l;t.data=new Uint8Array(s,a+l,u),e.recv_queue.unshift(t)}return _}}};function ___syscall_socket(e,r,t){try{var n=SOCKFS.createSocket(e,r,t);return n.stream.fd}catch(o){if(typeof FS>"u"||o.name!=="ErrnoError")throw o;return-o.errno}}___syscall_socket.sig="iiiiiii";function ___syscall_stat64(e,r){try{return e=SYSCALLS.getStr(e),SYSCALLS.doStat(FS.stat,e,r)}catch(t){if(typeof FS>"u"||t.name!=="ErrnoError")throw t;return-t.errno}}___syscall_stat64.sig="ipp";function ___syscall_unlinkat(e,r,t){try{return r=SYSCALLS.getStr(r),r=SYSCALLS.calculateAt(e,r),t===0?FS.unlink(r):t===512?FS.rmdir(r):abort("Invalid flags passed to unlinkat"),0}catch(n){if(typeof FS>"u"||n.name!=="ErrnoError")throw n;return-n.errno}}___syscall_unlinkat.sig="iipi";var ___table_base=new WebAssembly.Global({value:"i32",mutable:!1},1),__abort_js=()=>abort("");__abort_js.sig="v";var runtimeKeepaliveCounter=0,__emscripten_runtime_keepalive_clear=()=>{noExitRuntime=!1,runtimeKeepaliveCounter=0};__emscripten_runtime_keepalive_clear.sig="v";var __emscripten_throw_longjmp=()=>{throw 1/0};__emscripten_throw_longjmp.sig="v";var isLeapYear=e=>e%4===0&&(e%100!==0||e%400===0),MONTH_DAYS_LEAP_CUMULATIVE=[0,31,60,91,121,152,182,213,244,274,305,335],MONTH_DAYS_REGULAR_CUMULATIVE=[0,31,59,90,120,151,181,212,243,273,304,334],ydayFromDate=e=>{var r=isLeapYear(e.getFullYear()),t=r?MONTH_DAYS_LEAP_CUMULATIVE:MONTH_DAYS_REGULAR_CUMULATIVE,n=t[e.getMonth()]+e.getDate()-1;return n},INT53_MAX=9007199254740992,INT53_MIN=-9007199254740992,bigintToI53Checked=e=>e<INT53_MIN||e>INT53_MAX?NaN:Number(e);function __localtime_js(e,r){e=bigintToI53Checked(e);var t=new Date(e*1e3);HEAP32[r>>2]=t.getSeconds(),HEAP32[r+4>>2]=t.getMinutes(),HEAP32[r+8>>2]=t.getHours(),HEAP32[r+12>>2]=t.getDate(),HEAP32[r+16>>2]=t.getMonth(),HEAP32[r+20>>2]=t.getFullYear()-1900,HEAP32[r+24>>2]=t.getDay();var n=ydayFromDate(t)|0;HEAP32[r+28>>2]=n,HEAP32[r+36>>2]=-(t.getTimezoneOffset()*60);var o=new Date(t.getFullYear(),0,1),a=new Date(t.getFullYear(),6,1).getTimezoneOffset(),s=o.getTimezoneOffset(),l=(a!=s&&t.getTimezoneOffset()==Math.min(s,a))|0;HEAP32[r+32>>2]=l}__localtime_js.sig="vjp";var __mktime_js=function(e){var r=(()=>{var t=new Date(HEAP32[e+20>>2]+1900,HEAP32[e+16>>2],HEAP32[e+12>>2],HEAP32[e+8>>2],HEAP32[e+4>>2],HEAP32[e>>2],0),n=HEAP32[e+32>>2],o=t.getTimezoneOffset(),a=new Date(t.getFullYear(),0,1),s=new Date(t.getFullYear(),6,1).getTimezoneOffset(),l=a.getTimezoneOffset(),_=Math.min(l,s);if(n<0)HEAP32[e+32>>2]=+(s!=l&&_==o);else if(n>0!=(_==o)){var u=Math.max(l,s),d=n>0?_:u;t.setTime(t.getTime()+(d-o)*6e4)}HEAP32[e+24>>2]=t.getDay();var m=ydayFromDate(t)|0;HEAP32[e+28>>2]=m,HEAP32[e>>2]=t.getSeconds(),HEAP32[e+4>>2]=t.getMinutes(),HEAP32[e+8>>2]=t.getHours(),HEAP32[e+12>>2]=t.getDate(),HEAP32[e+16>>2]=t.getMonth(),HEAP32[e+20>>2]=t.getYear();var f=t.getTime();return isNaN(f)?-1:f/1e3})();return BigInt(r)};__mktime_js.sig="jp";var timers={},handleException=e=>{if(e instanceof ExitStatus||e=="unwind")return EXITSTATUS;quit_(1,e)},keepRuntimeAlive=()=>noExitRuntime||runtimeKeepaliveCounter>0,_proc_exit=e=>{EXITSTATUS=e,keepRuntimeAlive()||(Module.onExit?.(e),ABORT=!0),quit_(e,new ExitStatus(e))};_proc_exit.sig="vi";var exitJS=(e,r)=>{EXITSTATUS=e,keepRuntimeAlive()||exitRuntime(),_proc_exit(e)},_exit=exitJS;_exit.sig="vi";var maybeExit=()=>{if(!runtimeExited&&!keepRuntimeAlive())try{_exit(EXITSTATUS)}catch(e){handleException(e)}},callUserCallback=e=>{if(!(runtimeExited||ABORT))try{e(),maybeExit()}catch(r){handleException(r)}},_emscripten_get_now=()=>performance.now();_emscripten_get_now.sig="d";var __setitimer_js=(e,r)=>{if(timers[e]&&(clearTimeout(timers[e].id),delete timers[e]),!r)return 0;var t=setTimeout(()=>{delete timers[e],callUserCallback(()=>__emscripten_timeout(e,_emscripten_get_now()))},r);return timers[e]={id:t,timeout_ms:r},0};__setitimer_js.sig="iid";var __tzset_js=(e,r,t,n)=>{var o=new Date().getFullYear(),a=new Date(o,0,1),s=new Date(o,6,1),l=a.getTimezoneOffset(),_=s.getTimezoneOffset(),u=Math.max(l,_);HEAPU32[e>>2]=u*60,HEAP32[r>>2]=+(l!=_);var d=c=>{var S=c>=0?"-":"+",p=Math.abs(c),E=String(Math.floor(p/60)).padStart(2,"0"),y=String(p%60).padStart(2,"0");return`UTC${S}${E}${y}`},m=d(l),f=d(_);_<l?(stringToUTF8(m,t,17),stringToUTF8(f,n,17)):(stringToUTF8(m,n,17),stringToUTF8(f,t,17))};__tzset_js.sig="vpppp";var _emscripten_date_now=()=>Date.now();_emscripten_date_now.sig="d";var nowIsMonotonic=1,checkWasiClock=e=>e>=0&&e<=3;function _clock_time_get(e,r,t){if(r=bigintToI53Checked(r),!checkWasiClock(e))return 28;var n;if(e===0)n=_emscripten_date_now();else if(nowIsMonotonic)n=_emscripten_get_now();else return 52;var o=Math.round(n*1e3*1e3);return HEAP64[t>>3]=BigInt(o),0}_clock_time_get.sig="iijp";var getHeapMax=()=>2147483648,growMemory=e=>{var r=wasmMemory.buffer,t=(e-r.byteLength+65535)/65536|0;try{return wasmMemory.grow(t),updateMemoryViews(),1}catch{}},_emscripten_resize_heap=e=>{var r=HEAPU8.length;e>>>=0;var t=getHeapMax();if(e>t)return!1;for(var n=1;n<=4;n*=2){var o=r*(1+.2/n);o=Math.min(o,e+100663296);var a=Math.min(t,alignMemory(Math.max(e,o),65536)),s=growMemory(a);if(s)return!0}return!1};_emscripten_resize_heap.sig="ip";var ENV={},getExecutableName=()=>thisProgram||"./this.program",getEnvStrings=()=>{if(!getEnvStrings.strings){var e=(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",r={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:e,_:getExecutableName()};for(var t in ENV)ENV[t]===void 0?delete r[t]:r[t]=ENV[t];var n=[];for(var t in r)n.push(`${t}=${r[t]}`);getEnvStrings.strings=n}return getEnvStrings.strings},stringToAscii=(e,r)=>{for(var t=0;t<e.length;++t)HEAP8[r++]=e.charCodeAt(t);HEAP8[r]=0},_environ_get=(e,r)=>{var t=0;return getEnvStrings().forEach((n,o)=>{var a=r+t;HEAPU32[e+o*4>>2]=a,stringToAscii(n,a),t+=n.length+1}),0};_environ_get.sig="ipp";var _environ_sizes_get=(e,r)=>{var t=getEnvStrings();HEAPU32[e>>2]=t.length;var n=0;return t.forEach(o=>n+=o.length+1),HEAPU32[r>>2]=n,0};_environ_sizes_get.sig="ipp";function _fd_close(e){try{var r=SYSCALLS.getStreamFromFD(e);return FS.close(r),0}catch(t){if(typeof FS>"u"||t.name!=="ErrnoError")throw t;return t.errno}}_fd_close.sig="ii";function _fd_fdstat_get(e,r){try{var t=0,n=0,o=0,a=SYSCALLS.getStreamFromFD(e),s=a.tty?2:FS.isDir(a.mode)?3:FS.isLink(a.mode)?7:4;return HEAP8[r]=s,HEAP16[r+2>>1]=o,HEAP64[r+8>>3]=BigInt(t),HEAP64[r+16>>3]=BigInt(n),0}catch(l){if(typeof FS>"u"||l.name!=="ErrnoError")throw l;return l.errno}}_fd_fdstat_get.sig="iip";var doReadv=(e,r,t,n)=>{for(var o=0,a=0;a<t;a++){var s=HEAPU32[r>>2],l=HEAPU32[r+4>>2];r+=8;var _=FS.read(e,HEAP8,s,l,n);if(_<0)return-1;if(o+=_,_<l)break;typeof n<"u"&&(n+=_)}return o};function _fd_read(e,r,t,n){try{var o=SYSCALLS.getStreamFromFD(e),a=doReadv(o,r,t);return HEAPU32[n>>2]=a,0}catch(s){if(typeof FS>"u"||s.name!=="ErrnoError")throw s;return s.errno}}_fd_read.sig="iippp";function _fd_seek(e,r,t,n){r=bigintToI53Checked(r);try{if(isNaN(r))return 61;var o=SYSCALLS.getStreamFromFD(e);return FS.llseek(o,r,t),HEAP64[n>>3]=BigInt(o.position),o.getdents&&r===0&&t===0&&(o.getdents=null),0}catch(a){if(typeof FS>"u"||a.name!=="ErrnoError")throw a;return a.errno}}_fd_seek.sig="iijip";function _fd_sync(e){try{var r=SYSCALLS.getStreamFromFD(e);return r.stream_ops?.fsync?r.stream_ops.fsync(r):0}catch(t){if(typeof FS>"u"||t.name!=="ErrnoError")throw t;return t.errno}}_fd_sync.sig="ii";var doWritev=(e,r,t,n)=>{for(var o=0,a=0;a<t;a++){var s=HEAPU32[r>>2],l=HEAPU32[r+4>>2];r+=8;var _=FS.write(e,HEAP8,s,l,n);if(_<0)return-1;if(o+=_,_<l)break;typeof n<"u"&&(n+=_)}return o};function _fd_write(e,r,t,n){try{var o=SYSCALLS.getStreamFromFD(e),a=doWritev(o,r,t);return HEAPU32[n>>2]=a,0}catch(s){if(typeof FS>"u"||s.name!=="ErrnoError")throw s;return s.errno}}_fd_write.sig="iippp";var inetPton4=e=>{for(var r=e.split("."),t=0;t<4;t++){var n=Number(r[t]);if(isNaN(n))return null;r[t]=n}return(r[0]|r[1]<<8|r[2]<<16|r[3]<<24)>>>0},jstoi_q=e=>parseInt(e),inetPton6=e=>{var r,t,n,o,a=/^((?=.*::)(?!.*::.+::)(::)?([\dA-F]{1,4}:(:|\b)|){5}|([\dA-F]{1,4}:){6})((([\dA-F]{1,4}((?!\3)::|:\b|$))|(?!\2\3)){2}|(((2[0-4]|1\d|[1-9])?\d|25[0-5])\.?\b){4})$/i,s=[];if(!a.test(e))return null;if(e==="::")return[0,0,0,0,0,0,0,0];for(e.startsWith("::")?e=e.replace("::","Z:"):e=e.replace("::",":Z:"),e.indexOf(".")>0?(e=e.replace(new RegExp("[.]","g"),":"),r=e.split(":"),r[r.length-4]=jstoi_q(r[r.length-4])+jstoi_q(r[r.length-3])*256,r[r.length-3]=jstoi_q(r[r.length-2])+jstoi_q(r[r.length-1])*256,r=r.slice(0,r.length-2)):r=e.split(":"),n=0,o=0,t=0;t<r.length;t++)if(typeof r[t]=="string")if(r[t]==="Z"){for(o=0;o<8-r.length+1;o++)s[t+o]=0;n=o-1}else s[t+n]=_htons(parseInt(r[t],16));else s[t+n]=r[t];return[s[1]<<16|s[0],s[3]<<16|s[2],s[5]<<16|s[4],s[7]<<16|s[6]]},DNS={address_map:{id:1,addrs:{},names:{}},lookup_name(e){var r=inetPton4(e);if(r!==null||(r=inetPton6(e),r!==null))return e;var t;if(DNS.address_map.addrs[e])t=DNS.address_map.addrs[e];else{var n=DNS.address_map.id++;assert(n<65535,"exceeded max address mappings of 65535"),t="172.29."+(n&255)+"."+(n&65280),DNS.address_map.names[t]=e,DNS.address_map.addrs[e]=t}return t},lookup_addr(e){return DNS.address_map.names[e]?DNS.address_map.names[e]:null}},inetNtop4=e=>(e&255)+"."+(e>>8&255)+"."+(e>>16&255)+"."+(e>>24&255),inetNtop6=e=>{var r="",t=0,n=0,o=0,a=0,s=0,l=0,_=[e[0]&65535,e[0]>>16,e[1]&65535,e[1]>>16,e[2]&65535,e[2]>>16,e[3]&65535,e[3]>>16],u=!0,d="";for(l=0;l<5;l++)if(_[l]!==0){u=!1;break}if(u){if(d=inetNtop4(_[6]|_[7]<<16),_[5]===-1)return r="::ffff:",r+=d,r;if(_[5]===0)return r="::",d==="0.0.0.0"&&(d=""),d==="0.0.0.1"&&(d="1"),r+=d,r}for(t=0;t<8;t++)_[t]===0&&(t-o>1&&(s=0),o=t,s++),s>n&&(n=s,a=t-n+1);for(t=0;t<8;t++){if(n>1&&_[t]===0&&t>=a&&t<a+n){t===a&&(r+=":",a===0&&(r+=":"));continue}r+=Number(_ntohs(_[t]&65535)).toString(16),r+=t<7?":":""}return r},writeSockaddr=(e,r,t,n,o)=>{switch(r){case 2:t=inetPton4(t),zeroMemory(e,16),o&&(HEAP32[o>>2]=16),HEAP16[e>>1]=r,HEAP32[e+4>>2]=t,HEAP16[e+2>>1]=_htons(n);break;case 10:t=inetPton6(t),zeroMemory(e,28),o&&(HEAP32[o>>2]=28),HEAP32[e>>2]=r,HEAP32[e+8>>2]=t[0],HEAP32[e+12>>2]=t[1],HEAP32[e+16>>2]=t[2],HEAP32[e+20>>2]=t[3],HEAP16[e+2>>1]=_htons(n);break;default:return 5}return 0},_getaddrinfo=(e,r,t,n)=>{var o=0,a=0,s=0,l=0,_=0,u=0,d;function m(f,c,S,p,E,y){var h,A,F,v;return A=f===10?28:16,E=f===10?inetNtop6(E):inetNtop4(E),h=_malloc(A),v=writeSockaddr(h,f,E,y),assert(!v),F=_malloc(32),HEAP32[F+4>>2]=f,HEAP32[F+8>>2]=c,HEAP32[F+12>>2]=S,HEAPU32[F+24>>2]=p,HEAPU32[F+20>>2]=h,f===10?HEAP32[F+16>>2]=28:HEAP32[F+16>>2]=16,HEAP32[F+28>>2]=0,F}if(t&&(s=HEAP32[t>>2],l=HEAP32[t+4>>2],_=HEAP32[t+8>>2],u=HEAP32[t+12>>2]),_&&!u&&(u=_===2?17:6),!_&&u&&(_=u===17?2:1),u===0&&(u=6),_===0&&(_=1),!e&&!r)return-2;if(s&-1088||t!==0&&HEAP32[t>>2]&2&&!e)return-1;if(s&32)return-2;if(_!==0&&_!==1&&_!==2)return-7;if(l!==0&&l!==2&&l!==10)return-6;if(r&&(r=UTF8ToString(r),a=parseInt(r,10),isNaN(a)))return s&1024?-2:-8;if(!e)return l===0&&(l=2),s&1||(l===2?o=_htonl(2130706433):o=[0,0,0,_htonl(1)]),d=m(l,_,u,null,o,a),HEAPU32[n>>2]=d,0;if(e=UTF8ToString(e),o=inetPton4(e),o!==null)if(l===0||l===2)l=2;else if(l===10&&s&8)o=[0,0,_htonl(65535),o],l=10;else return-2;else if(o=inetPton6(e),o!==null)if(l===0||l===10)l=10;else return-2;return o!=null?(d=m(l,_,u,e,o,a),HEAPU32[n>>2]=d,0):s&4?-2:(e=DNS.lookup_name(e),o=inetPton4(e),l===0?l=2:l===10&&(o=[0,0,_htonl(65535),o]),d=m(l,_,u,null,o,a),HEAPU32[n>>2]=d,0)};_getaddrinfo.sig="ipppp";var readSockaddr=(e,r)=>{var t=HEAP16[e>>1],n=_ntohs(HEAPU16[e+2>>1]),o;switch(t){case 2:if(r!==16)return{errno:28};o=HEAP32[e+4>>2],o=inetNtop4(o);break;case 10:if(r!==28)return{errno:28};o=[HEAP32[e+8>>2],HEAP32[e+12>>2],HEAP32[e+16>>2],HEAP32[e+20>>2]],o=inetNtop6(o);break;default:return{errno:5}}return{family:t,addr:o,port:n}},_getnameinfo=(e,r,t,n,o,a,s)=>{var l=readSockaddr(e,r);if(l.errno)return-6;var _=l.port,u=l.addr,d=!1;if(t&&n){var m;if(s&1||!(m=DNS.lookup_addr(u))){if(s&8)return-2}else u=m;var f=stringToUTF8(u,t,n);f+1>=n&&(d=!0)}if(o&&a){_=""+_;var f=stringToUTF8(_,o,a);f+1>=a&&(d=!0)}return d?-12:0};_getnameinfo.sig="ipipipii";function _pg_encoding_to_char(...e){return wasmImports.pg_encoding_to_char(...e)}_pg_encoding_to_char.stub=!0;var stackAlloc=e=>__emscripten_stack_alloc(e),stringToUTF8OnStack=e=>{var r=lengthBytesUTF8(e)+1,t=stackAlloc(r);return stringToUTF8(e,t,r),t},removeFunction=e=>{functionsInTableMap.delete(getWasmTableEntry(e)),setWasmTableEntry(e,null),freeTableIndexes.push(e)},stringToNewUTF8=e=>{var r=lengthBytesUTF8(e)+1,t=_malloc(r);return t&&stringToUTF8(e,t,r),t},FS_createPath=FS.createPath,FS_unlink=e=>FS.unlink(e),FS_createLazyFile=FS.createLazyFile,FS_createDevice=FS.createDevice;registerWasmPlugin(),FS.createPreloadedFile=FS_createPreloadedFile,FS.staticInit(),Module.FS_createPath=FS.createPath,Module.FS_createDataFile=FS.createDataFile,Module.FS_createPreloadedFile=FS.createPreloadedFile,Module.FS_unlink=FS.unlink,Module.FS_createLazyFile=FS.createLazyFile,Module.FS_createDevice=FS.createDevice,MEMFS.doesNotExistError=new FS.ErrnoError(44),MEMFS.doesNotExistError.stack="<generic error, no stack>";var wasmImports={__call_sighandler:___call_sighandler,__heap_base:___heap_base,__indirect_function_table:wasmTable,__memory_base:___memory_base,__stack_pointer:___stack_pointer,__syscall__newselect:___syscall__newselect,__syscall_dup:___syscall_dup,__syscall_dup3:___syscall_dup3,__syscall_faccessat:___syscall_faccessat,__syscall_fadvise64:___syscall_fadvise64,__syscall_fcntl64:___syscall_fcntl64,__syscall_fstat64:___syscall_fstat64,__syscall_getcwd:___syscall_getcwd,__syscall_getdents64:___syscall_getdents64,__syscall_ioctl:___syscall_ioctl,__syscall_lstat64:___syscall_lstat64,__syscall_mkdirat:___syscall_mkdirat,__syscall_newfstatat:___syscall_newfstatat,__syscall_openat:___syscall_openat,__syscall_pipe:___syscall_pipe,__syscall_readlinkat:___syscall_readlinkat,__syscall_socket:___syscall_socket,__syscall_stat64:___syscall_stat64,__syscall_unlinkat:___syscall_unlinkat,__table_base:___table_base,_abort_js:__abort_js,_emscripten_runtime_keepalive_clear:__emscripten_runtime_keepalive_clear,_emscripten_throw_longjmp:__emscripten_throw_longjmp,_localtime_js:__localtime_js,_mktime_js:__mktime_js,_setitimer_js:__setitimer_js,_tzset_js:__tzset_js,clock_time_get:_clock_time_get,emscripten_date_now:_emscripten_date_now,emscripten_get_now:_emscripten_get_now,emscripten_resize_heap:_emscripten_resize_heap,environ_get:_environ_get,environ_sizes_get:_environ_sizes_get,exit:_exit,fd_close:_fd_close,fd_fdstat_get:_fd_fdstat_get,fd_read:_fd_read,fd_seek:_fd_seek,fd_sync:_fd_sync,fd_write:_fd_write,getaddrinfo:_getaddrinfo,getnameinfo:_getnameinfo,invoke_ii,invoke_iiii,invoke_vii,memory:wasmMemory,pg_encoding_to_char:_pg_encoding_to_char,proc_exit:_proc_exit},wasmExports;createWasm();var ___wasm_call_ctors=()=>(___wasm_call_ctors=wasmExports.__wasm_call_ctors)(),_main=Module._main=(e,r)=>(_main=Module._main=wasmExports.__main_argc_argv)(e,r),___errno_location=Module.___errno_location=()=>(___errno_location=Module.___errno_location=wasmExports.__errno_location)(),_fopen=Module._fopen=(e,r)=>(_fopen=Module._fopen=wasmExports.fopen)(e,r),_fgets=Module._fgets=(e,r,t)=>(_fgets=Module._fgets=wasmExports.fgets)(e,r,t),_fclose=Module._fclose=e=>(_fclose=Module._fclose=wasmExports.fclose)(e),_fflush=Module._fflush=e=>(_fflush=Module._fflush=wasmExports.fflush)(e),_pgl_exit=Module._pgl_exit=e=>(_pgl_exit=Module._pgl_exit=wasmExports.pgl_exit)(e),_malloc=e=>(_malloc=wasmExports.malloc)(e),_calloc=(e,r)=>(_calloc=wasmExports.calloc)(e,r),_pgl_setsockopt=Module._pgl_setsockopt=(e,r,t,n,o)=>(_pgl_setsockopt=Module._pgl_setsockopt=wasmExports.pgl_setsockopt)(e,r,t,n,o),_pgl_connect=Module._pgl_connect=(e,r,t)=>(_pgl_connect=Module._pgl_connect=wasmExports.pgl_connect)(e,r,t),_pgl_send=Module._pgl_send=(e,r,t,n)=>(_pgl_send=Module._pgl_send=wasmExports.pgl_send)(e,r,t,n),_pgl_recv=Module._pgl_recv=(e,r,t,n)=>(_pgl_recv=Module._pgl_recv=wasmExports.pgl_recv)(e,r,t,n),_pgl_geteuid=Module._pgl_geteuid=()=>(_pgl_geteuid=Module._pgl_geteuid=wasmExports.pgl_geteuid)(),_pgl_getsockopt=Module._pgl_getsockopt=(e,r,t,n,o)=>(_pgl_getsockopt=Module._pgl_getsockopt=wasmExports.pgl_getsockopt)(e,r,t,n,o),_pgl_getsockname=Module._pgl_getsockname=(e,r,t)=>(_pgl_getsockname=Module._pgl_getsockname=wasmExports.pgl_getsockname)(e,r,t),_pgl_poll=Module._pgl_poll=(e,r,t)=>(_pgl_poll=Module._pgl_poll=wasmExports.pgl_poll)(e,r,t),_clear_setitimer=Module._clear_setitimer=()=>(_clear_setitimer=Module._clear_setitimer=wasmExports.clear_setitimer)(),_pgl_longjmp=Module._pgl_longjmp=(e,r)=>(_pgl_longjmp=Module._pgl_longjmp=wasmExports.pgl_longjmp)(e,r),_pgl_siglongjmp=Module._pgl_siglongjmp=(e,r)=>(_pgl_siglongjmp=Module._pgl_siglongjmp=wasmExports.pgl_siglongjmp)(e,r),_pgl_set_system_fn=Module._pgl_set_system_fn=e=>(_pgl_set_system_fn=Module._pgl_set_system_fn=wasmExports.pgl_set_system_fn)(e),_pgl_system=Module._pgl_system=e=>(_pgl_system=Module._pgl_system=wasmExports.pgl_system)(e),_pgl_set_popen_fn=Module._pgl_set_popen_fn=e=>(_pgl_set_popen_fn=Module._pgl_set_popen_fn=wasmExports.pgl_set_popen_fn)(e),_pgl_popen=Module._pgl_popen=(e,r)=>(_pgl_popen=Module._pgl_popen=wasmExports.pgl_popen)(e,r),_pgl_set_pclose_fn=Module._pgl_set_pclose_fn=e=>(_pgl_set_pclose_fn=Module._pgl_set_pclose_fn=wasmExports.pgl_set_pclose_fn)(e),_pgl_pclose=Module._pgl_pclose=e=>(_pgl_pclose=Module._pgl_pclose=wasmExports.pgl_pclose)(e),_pclose=Module._pclose=e=>(_pclose=Module._pclose=wasmExports.pclose)(e),_pgl_getuid=Module._pgl_getuid=()=>(_pgl_getuid=Module._pgl_getuid=wasmExports.pgl_getuid)(),_pgl_getpwuid=Module._pgl_getpwuid=e=>(_pgl_getpwuid=Module._pgl_getpwuid=wasmExports.pgl_getpwuid)(e),_pgl_atexit=Module._pgl_atexit=e=>(_pgl_atexit=Module._pgl_atexit=wasmExports.pgl_atexit)(e),_pgl_run_atexit_funcs=Module._pgl_run_atexit_funcs=()=>(_pgl_run_atexit_funcs=Module._pgl_run_atexit_funcs=wasmExports.pgl_run_atexit_funcs)(),_pgl_freopen=Module._pgl_freopen=(e,r,t)=>(_pgl_freopen=Module._pgl_freopen=wasmExports.pgl_freopen)(e,r,t),_pgl_shmget=Module._pgl_shmget=(e,r,t)=>(_pgl_shmget=Module._pgl_shmget=wasmExports.pgl_shmget)(e,r,t),_pgl_shmat=Module._pgl_shmat=(e,r,t)=>(_pgl_shmat=Module._pgl_shmat=wasmExports.pgl_shmat)(e,r,t),_pgl_shmdt=Module._pgl_shmdt=e=>(_pgl_shmdt=Module._pgl_shmdt=wasmExports.pgl_shmdt)(e),_pgl_shmctl=Module._pgl_shmctl=(e,r,t)=>(_pgl_shmctl=Module._pgl_shmctl=wasmExports.pgl_shmctl)(e,r,t),_pgl_munmap=Module._pgl_munmap=(e,r)=>(_pgl_munmap=Module._pgl_munmap=wasmExports.pgl_munmap)(e,r),_pgl_set_rw_cbs=Module._pgl_set_rw_cbs=(e,r)=>(_pgl_set_rw_cbs=Module._pgl_set_rw_cbs=wasmExports.pgl_set_rw_cbs)(e,r),_pgl_fcntl=Module._pgl_fcntl=(e,r,t)=>(_pgl_fcntl=Module._pgl_fcntl=wasmExports.pgl_fcntl)(e,r,t),_fputs=Module._fputs=(e,r)=>(_fputs=Module._fputs=wasmExports.fputs)(e,r),_strerror=Module._strerror=e=>(_strerror=Module._strerror=wasmExports.strerror)(e),___funcs_on_exit=()=>(___funcs_on_exit=wasmExports.__funcs_on_exit)(),_htonl=e=>(_htonl=wasmExports.htonl)(e),_htons=e=>(_htons=wasmExports.htons)(e),_ntohs=e=>(_ntohs=wasmExports.ntohs)(e),__emscripten_timeout=(e,r)=>(__emscripten_timeout=wasmExports._emscripten_timeout)(e,r),_setThrew=(e,r)=>(_setThrew=wasmExports.setThrew)(e,r),__emscripten_stack_restore=e=>(__emscripten_stack_restore=wasmExports._emscripten_stack_restore)(e),__emscripten_stack_alloc=e=>(__emscripten_stack_alloc=wasmExports._emscripten_stack_alloc)(e),_emscripten_stack_get_current=()=>(_emscripten_stack_get_current=wasmExports.emscripten_stack_get_current)(),___wasm_apply_data_relocs=()=>(___wasm_apply_data_relocs=wasmExports.__wasm_apply_data_relocs)();function invoke_iiii(e,r,t,n){var o=stackSave();try{return getWasmTableEntry(e)(r,t,n)}catch(a){if(stackRestore(o),a!==a+0)throw a;_setThrew(1,0)}}function invoke_ii(e,r){var t=stackSave();try{return getWasmTableEntry(e)(r)}catch(n){if(stackRestore(t),n!==n+0)throw n;_setThrew(1,0)}}function invoke_vii(e,r,t){var n=stackSave();try{getWasmTableEntry(e)(r,t)}catch(o){if(stackRestore(n),o!==o+0)throw o;_setThrew(1,0)}}Module.addRunDependency=addRunDependency,Module.removeRunDependency=removeRunDependency,Module.callMain=callMain,Module.ENV=ENV,Module.addFunction=addFunction,Module.removeFunction=removeFunction,Module.UTF8ToString=UTF8ToString,Module.stringToNewUTF8=stringToNewUTF8,Module.stringToUTF8OnStack=stringToUTF8OnStack,Module.FS_createPreloadedFile=FS_createPreloadedFile,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.MEMFS=MEMFS,Module.PROXYFS=PROXYFS;var calledRun;dependenciesFulfilled=function e(){calledRun||run(),calledRun||(dependenciesFulfilled=e)};function callMain(e=[]){var r=resolveGlobalSymbol("main").sym;if(r){e.unshift(thisProgram);var t=e.length,n=stackAlloc((t+1)*4),o=n;e.forEach(s=>{HEAPU32[o>>2]=stringToUTF8OnStack(s),o+=4}),HEAPU32[o>>2]=0;try{var a=r(t,n);return exitJS(a,!0),a}catch(s){return handleException(s)}}}function run(e=arguments_){if(runDependencies>0||(preRun(),runDependencies>0))return;function r(){calledRun||(calledRun=!0,Module.calledRun=!0,!ABORT&&(initRuntime(),preMain(),readyPromiseResolve(Module),Module.onRuntimeInitialized?.(),shouldRunNow&&callMain(e),postRun()))}Module.setStatus?(Module.setStatus("Running..."),setTimeout(()=>{setTimeout(()=>Module.setStatus(""),1),r()},1)):r()}if(Module.preInit)for(typeof Module.preInit=="function"&&(Module.preInit=[Module.preInit]);Module.preInit.length>0;)Module.preInit.pop()();var shouldRunNow=!1;return Module.noInitialRun&&(shouldRunNow=!1),run(),moduleRtn=readyPromise,moduleRtn}})(),L=$;var U=L;var x="/tmp/out.sql";function Z(e,r){let t=new Uint8Array(e.byteLength+r.byteLength);return t.set(new Uint8Array(e),0),t.set(new Uint8Array(r),e.byteLength),t}async function J({pg:e,args:r}){let t,n,o=0,a="",s="",_=await U({noExitRuntime:!1,print:d=>{s+=d},printErr:d=>{a+=d},onExit:d=>{o=d},preRun:[d=>{d.onRuntimeInitialized=()=>{let m=new Uint8Array;t=d.addFunction((f,c)=>{let S;try{S=d.HEAPU8.subarray(f,f+c)}catch(E){throw console.error("error",E),E}let p=e.execProtocolRawSync(S);return m=Z(m,p),c},"iii"),n=d.addFunction((f,c)=>{let S=m.length;S>c&&(S=c);try{d.HEAP8.set(m.subarray(0,S),f)}catch(p){console.error(p)}return m=m.subarray(S,m.length),S},"iii"),d._pgl_set_rw_cbs(n,t),d.FS.chmod("/home/web_user/.pgpass",384)}}]});_.callMain(r);let u="";return o||(u=_.FS.readFile(x,{encoding:"utf8"})),{exitCode:o,fileContents:u,stderr:a,stdout:s}}async function Q({pg:e,args:r,fileName:t="dump.sql"}){let o=(await e.query("SHOW SEARCH_PATH;")).rows[0].search_path,a=["-U","web_user","--inserts","-j","1","-f",x],s=await J({pg:e,args:[...r??[],...a]});await e.exec("DEALLOCATE ALL"),await e.exec(`SET SEARCH_PATH = ${o}`);let l=await e.query("SHOW SEARCH_PATH;");if(l.rows[0].search_path!==o&&console.warn(`Warning: search_path has been changed from ${o} to ${l}`,o,l),s.exitCode!==0)throw new Error(`pg_dump failed with exit code ${s.exitCode}.
Error message: ${s.stderr}`);return new File([s.fileContents],t,{type:"text/plain"})}0&&(module.exports={pgDump});
//# sourceMappingURL=pg_dump.cjs.map