-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathflames.js
More file actions
1 lines (1 loc) · 276 KB
/
Copy pathflames.js
File metadata and controls
1 lines (1 loc) · 276 KB
1
(function(){"use strict";if(window.Flames=window.Flames||{},window.Flames.Surface=window.Flames.Surface||{},window.Flames.Surface._prefetchStarted)return;window.Flames.Surface._prefetchStarted=!0;function e(){var a=document.querySelectorAll('script[src*="flames.js"]'),o=a.length?a[a.length-1]:null;return o?new URL(".",o.src).href:new URL("/flames/",location.origin).href}var r=new URL("/&flames/app.js",window.location.origin).href,t=new URL("flames.wasm",e()).href,n={credentials:"same-origin"};window.Flames.Surface._prefetch={app:fetch(r,n),wasm:fetch(t,n)}})(),(function(){function __flamesInstallRuntime(){if(window.Flames=window.Flames||{},window.Flames.Surface=window.Flames.Surface||{},!window.Flames.Surface.PhpWeb){var __flamesScriptUrl=(function(){var e=document.querySelectorAll('script[src*="flames"]'),r=e.length?e[e.length-1]:null;return r?r.src:location.href})(),__FlamesRuntime=(()=>{var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__defNormalProp=(e,r,t)=>r in e?__defProp(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,__require=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(r,t)=>(typeof require<"u"?require:r)[t]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+e+'" is not supported')}),__export=(e,r)=>{for(var t in r)__defProp(e,t,{get:r[t],enumerable:!0})},__copyProps=(e,r,t,n)=>{if(r&&typeof r=="object"||typeof r=="function")for(let a of __getOwnPropNames(r))!__hasOwnProp.call(e,a)&&a!==t&&__defProp(e,a,{get:()=>r[a],enumerable:!(n=__getOwnPropDesc(r,a))||n.enumerable});return e},__toCommonJS=e=>__copyProps(__defProp({},"__esModule",{value:!0}),e),__publicField=(e,r,t)=>__defNormalProp(e,typeof r!="symbol"?r+"":r,t),flames_entry_exports={};__export(flames_entry_exports,{PhpBase:()=>PhpBase,PhpWeb:()=>PhpWeb});var _Event=globalThis.CustomEvent??class extends globalThis.Event{constructor(e,r={}){super(e,r),this.detail=r.detail}},OutputBuffer=class{constructor(e,r,t){__publicField(this,"target"),__publicField(this,"buffer"),__publicField(this,"eventType"),__publicField(this,"maxLength"),__publicField(this,"decoder"),Object.defineProperty(this,"target",{value:e}),Object.defineProperty(this,"buffer",{value:[]}),Object.defineProperty(this,"eventType",{value:r}),Object.defineProperty(this,"maxLength",{value:t}),Object.defineProperty(this,"decoder",{value:new TextDecoder})}push(...e){this.buffer.push(...e);const r=this.buffer.length-1;this.maxLength===-1&&this.buffer[r]===10&&this.flush(),this.maxLength>=0&&this.buffer.length>=this.maxLength&&this.flush()}flush(){if(!this.buffer.length)return;const e=[this.decoder.decode(new Uint8Array(this.buffer))],r=new _Event(this.eventType,{detail:e}),t=this.target,n=t["on"+this.eventType];n&&n(r)===!1||t.dispatchEvent(r)&&this.buffer.splice(0)}},fsOps=class{static async analyzePath(e,r){const t=(await e).FS.analyzePath(r);if(!t.object)return{exists:!1};const n={exists:!0,id:t.object.id,mode:t.object.mode,mount:{mountpoint:t.object.mount.mountpoint,mounts:t.object.mount.mounts.map(a=>a.mountpoint)},isDevice:t.object.isDevice,isFolder:t.object.isFolder,read:t.object.read,write:t.object.write};return{...t,object:n,parentObject:void 0}}static async readdir(e,r){return(await e).FS.readdir(r)}static async readFile(e,r,t){return(await e).FS.readFile(r,t)}static async stat(e,r){return(await e).FS.stat(r)}static async mkdir(e,r){const n=(await e).FS.mkdir(r);return{id:n.id,mode:n.mode,mount:{mountpoint:n.mount.mountpoint,mounts:n.mount.mounts.map(a=>a.mountpoint)},isDevice:n.isDevice,isFolder:n.isFolder,read:n.read,write:n.write}}static async rmdir(e,r){return(await e).FS.rmdir(r)}static async rename(e,r,t){return(await e).FS.rename(r,t)}static async writeFile(e,r,t,n){const a=await e,o=a.FS.analyzePath(r);let _=!1;o.object&&o.object.mode&&(o.object.mode&128||await a.FS.chmod(r,o.object.mode|128));const c=a.FS.writeFile(r,t,n);return _&&await a.FS.chmod(r,o.object.mode),c}static async unlink(e,r){return(await e).FS.unlink(r)}static async chmod(e,r){return(await e).FS.chmod(r)}},resolveDependencies=(e,r)=>{const t=[],n=[];(e||[]).flat().forEach(c=>{typeof c=="object"?(typeof c.getLibs=="function"?n.push(...c.getLibs(r)):n.push(c),typeof c.getFiles=="function"&&t.push(...c.getFiles(r))):n.push(c)});const a=t.map(c=>{const l=new URL(c.url).href,u=c.path,d=c.name||u.split("/").pop();return{parent:u.substr(0,u.length-d.length),name:d,path:u,url:l}}),o={},_=n.map(c=>{if(typeof c=="string"||c instanceof URL){if(c=String(c),c.substr(0,1)=="/"||c.substr(0,2)=="./"||c.substr(0,2)=="../"||c.substr(0,8)=="https://"||c.substr(0,7)=="http://"||c.substr(0,7)=="file://"){const l=c.split("/").pop(),u=c;return o[l]=u,{name:l,url:u,ini:!0}}return c}else if(typeof c=="object"){const l=c.name??String(c.url).split("/").pop();return o[l]=String(c.url),c.url=String(c.url),c}});return{files:a,libs:_,urlLibs:o}},STR="string",NUM="number",normalizeRuntimeModule=e=>e&&typeof e=="object"&&"default"in e?e:{default:e},PhpBase=class extends EventTarget{constructor(e,r={},t="embed"){super(),__publicField(this,"queue"),__publicField(this,"onerror"),__publicField(this,"onoutput"),__publicField(this,"onready"),__publicField(this,"encoder"),__publicField(this,"buffers"),__publicField(this,"autoTransaction"),__publicField(this,"transactionStarted"),__publicField(this,"phpVersion"),__publicField(this,"phpVariant"),__publicField(this,"shared"),__publicField(this,"phpArgs"),__publicField(this,"valueIndex"),__publicField(this,"binary"),this.queue=[],this.onerror=function(){},this.onoutput=function(){},this.onready=function(){},Object.defineProperty(this,"encoder",{value:new TextEncoder}),Object.defineProperty(this,"buffers",{value:{stdin:[],stdout:new OutputBuffer(this,"output",-1),stderr:new OutputBuffer(this,"error",-1)}}),Object.freeze(this.buffers),this.autoTransaction="autoTransaction"in r?r.autoTransaction:!0,this.transactionStarted=!1,this.phpVersion=r.version,this.phpVariant=r.variant,this.shared=r.shared="shared"in r?r.shared:{},this.phpArgs=r;const n={stdin:()=>this.buffers.stdin.shift()??null,stdout:S=>this.buffers.stdout.push(S),stderr:S=>this.buffers.stderr.push(S),postRun:()=>{const S=new _Event("ready");this.onready(S),this.dispatchEvent(S)}},a={onRefresh:new Set},o=globalThis.phpSettings??{},_=r.locateFile||(()=>{}),c=r.files||[],{files:l,libs:u,urlLibs:d}=resolveDependencies(r.sharedLibs,this),{files:p,libs:g,urlLibs:v}=resolveDependencies(r.dynamicLibs,this);r.locateFile=(S,F)=>{r.debug&&console.error("Loading %s",S);let f=_(S,F);if(f!==void 0)return f;if(d[S])return d[S];if(v[S])return v[S];if(S==="libxml2.so")return"data:,"},this.valueIndex=0;const w=Object.assign({},n,o,r,a);this.binary=e.then(normalizeRuntimeModule).then(({default:S})=>new S(w)).then(async S=>{await S.ccall("pib_storage_init",NUM,[],[],{async:!0}),S.FS.analyzePath("/preload").exists||S.FS.mkdir("/preload");const F=c.concat(l,p);F.forEach(m=>{const y=m.parent.split("/");let b="";for(const E of y)E&&(b+=E+"/",S.FS.analyzePath(b).exists||S.FS.mkdir(b))}),await Promise.all(F.map(m=>new Promise(y=>S.FS.createPreloadedFile(m.parent,m.name,m.url instanceof URL?m.url.href:m.url,!0,!1,y))));const f=u.map(m=>{if(typeof m=="string"||m instanceof URL)return`extension=${m}`;if(typeof m=="object"&&m.ini)return`extension=${m.name??String(m.url).split("/").pop()}`});return r.ini&&f.push(r.ini.replace(/\n\s+/g,`\n`)),S.FS.writeFile("/php.ini",f.join(`\n`)+`\n`,{encoding:"utf8"}),await S.ccall("pib_init",NUM,[STR],[t],{async:!0}),S})}inputString(e){this.input(this.encoder.encode(e))}input(e){this.buffers.stdin.push(...e)}flush(){this.buffers.stdout.flush(),this.buffers.stderr.flush()}tokenize(e){return this.binary.then(r=>r.ccall("pib_tokenize",STR,[STR],[e]))}startTransaction(){return Promise.resolve()}commitTransaction(e=!1){return Promise.resolve()}async _enqueue(e,r=[],t=!1){let n,a;const o=new Promise((l,u)=>[n,a]=[l,u]),_=l=>n(l),c=l=>a(l);if(this.queue.push([e,r,_,c]),!!this.queue.length){for(await(this.autoTransaction&&!t)?this.startTransaction():Promise.resolve();this.queue.length;){const[l,u,d,p]=this.queue.shift();await l(...u).then(d).catch(p)}return await this.autoTransaction?this.commitTransaction(t):Promise.resolve(),o}}run(e){return this._enqueue(r=>this._run(r),[e])}_run(e){return this.binary.then(r=>r.ccall("pib_run",NUM,[STR],[`?>${e}`])).finally(()=>this.flush())}exec(e){return this._enqueue(r=>this._exec(r),[e])}async _exec(e){return(await this.binary).ccall("pib_exec",STR,[STR],[e],{async:!0}).finally(()=>this.flush())}async x(e,...r){const t=[],n=await this.binary;if(n.hasVrzno){for(const o of r){const _=`___value__${this.valueIndex++}`;this.shared[_]=o,t.push(_)}let a="";for(e=[...e];e.length||t.length;)e.length&&(a+=e.shift()),t.length&&(a+=`(\\Flames\\Surface\\Surface\\Js\\Bridge::shared('${t.shift()}'))`);return a=`\\Flames\\Surface\\Surface\\Js\\Bridge::zval( ${a} );`,n.zvalToJS(await this.exec(a))}else{const a=r.map(_=>JSON.stringify(_));e=[...e];let o="";for(;e.length||t.length;)e.length&&(o+=e.shift()),a.length&&(o+=`(json_decode('${a.shift()}'))`);return this.exec(o)}}async r(e,...r){const t=[];if((await this.binary).hasVrzno){for(const o of r){const _=`___value__${this.valueIndex++}`;this.shared[_]=o,t.push(_)}let a="";for(e=[...e];e.length||t.length;)e.length&&(a+=e.shift()),t.length&&(a+=`(\\Flames\\Surface\\Surface\\Js\\Bridge::shared('${t.shift()}'))`);return this.run(a)}else{const a=r.map(_=>JSON.stringify(_));e=[...e];let o="";for(;e.length||t.length;)e.length&&(o+=e.shift()),a.length&&(o+=`(json_decode('${a.shift()}'))`);return this.run(o)}}async refresh(){const e=await this.binary;for(const r of e.onRefresh)r();return Object.keys(this.shared).forEach(r=>delete this.shared[r]),e.ccall("pib_refresh",NUM,[],[],{async:!0})}analyzePath(e){return this._enqueue(fsOps.analyzePath,[this.binary,e])}readdir(e){return this._enqueue(fsOps.readdir,[this.binary,e])}readFile(e,r){return this._enqueue(fsOps.readFile,[this.binary,e,r])}stat(e){return this._enqueue(fsOps.stat,[this.binary,e])}mkdir(e){return this._enqueue(fsOps.mkdir,[this.binary,e])}rmdir(e){return this._enqueue(fsOps.rmdir,[this.binary,e])}rename(e,r){return this._enqueue(fsOps.rename,[this.binary,e,r])}writeFile(e,r,t){return this._enqueue(fsOps.writeFile,[this.binary,e,r,t])}unlink(e){return this._enqueue(fsOps.unlink,[this.binary,e])}};async function startTransaction(e){const r=await e.binary;if(r.persist){if(e.transactionStarted){await e.transactionStarted;return}return e.transactionStarted=new Promise((t,n)=>r.FS.syncfs(!0,a=>{a?n(a):t()})),await e.transactionStarted}}async function commitTransaction(e,r=!1){const t=await e.binary;if(t.persist){if(!e.transactionStarted)throw new Error("No transaction initialized.");return r?(e.transactionStarted=!1,Promise.resolve()):await new Promise((n,a)=>t.FS.syncfs(!1,o=>{o?a(o):(e.transactionStarted=!1,n())}))}}var PHP=(()=>{const importMeta={url:__flamesScriptUrl};var _scriptName=__flamesScriptUrl;return(function(moduleArg={}){var moduleRtn,Module=moduleArg,readyPromiseResolve,readyPromiseReject,readyPromise=new Promise((e,r)=>{readyPromiseResolve=e,readyPromiseReject=r}),ENVIRONMENT_IS_WEB=!0,ENVIRONMENT_IS_WORKER=!1,ENVIRONMENT_IS_NODE=!1,ENVIRONMENT_IS_SHELL=!1;Module.preRun=Module.preRun||[],typeof Module.preRun=="function"&&(Module.preRun=[Module.preRun]),Module.preRun.push(()=>Object.assign(ENV,Module.ENV||{}));var moduleOverrides=Object.assign({},Module),arguments_=[],thisProgram="./this.program",quit_=(e,r)=>{throw r},scriptDirectory="";function locateFile(e,r=null){return Module.locateFile?Module.locateFile(e,scriptDirectory)??r??scriptDirectory+e:r??scriptDirectory+e}var readAsync,readBinary;(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),readAsync=e=>fetch(e,{credentials:"same-origin"}).then(r=>r.ok?r.arrayBuffer():Promise.reject(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){for(var r=atob(e),t=new Uint8Array(r.length),n=0;n<r.length;++n)t[n]=r.charCodeAt(n);return t}function tryParseAsDataURI(e){if(isDataURI(e))return intArrayFromBase64(e.slice(dataURIPrefix.length))}var wasmMemory,ABORT=!1,EXITSTATUS;function assert(e,r){e||abort(r)}var HEAP,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||134217728;wasmMemory=new WebAssembly.Memory({initial:INITIAL_MEMORY/65536,maximum:65536})}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(),SOCKFS.root=FS.mount(SOCKFS,{},null),PIPEFS.root=FS.mount(PIPEFS,{},null),callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function exitRuntime(){___funcs_on_exit(),callRuntimeCallbacks(__ATEXIT__),FS.quit(),TTY.shutdown(),IDBFS.quit(),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 addOnPreMain(e){__ATMAIN__.unshift(e)}function addOnExit(e){__ATEXIT__.unshift(e)}function addOnPostRun(e){__ATPOSTRUN__.unshift(e)}var runDependencies=0,runDependencyWatcher=null,dependenciesFulfilled=null;function getUniqueRunDependency(e){return e}function addRunDependency(e){runDependencies++,Module.monitorRunDependencies?.(runDependencies)}function removeRunDependency(e){if(runDependencies--,Module.monitorRunDependencies?.(runDependencies),runDependencies==0&&(runDependencyWatcher!==null&&(clearInterval(runDependencyWatcher),runDependencyWatcher=null),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="flames.wasm";return isDataURI(e)?e:locateFile(e,new URL("flames.wasm",__flamesScriptUrl).href)}return new URL("flames.wasm",__flamesScriptUrl).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"}function getBinaryPromise(e){return!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)?typeof fetch=="function"?fetch(e,{credentials:"same-origin"}).then(r=>{if(!r.ok)throw`failed to load wasm binary file at '${e}'`;return r.arrayBuffer()}).catch(()=>getBinarySync(e)):readAsync(e).then(r=>new Uint8Array(r),()=>getBinarySync(e)):Promise.resolve().then(()=>getBinarySync(e))}function instantiateArrayBuffer(e,r,t){return getBinaryPromise(e).then(n=>WebAssembly.instantiate(n,r)).then(t,n=>{err(`failed to asynchronously prepare wasm: ${n}`),abort(n)})}function instantiateAsync(e,r,t,n){return!e&&typeof WebAssembly.instantiateStreaming=="function"&&!isDataURI(r)&&typeof fetch=="function"?fetch(r,{credentials:"same-origin"}).then(a=>{var o=WebAssembly.instantiateStreaming(a,t);return o.then(n,function(_){return err(`wasm streaming compile failed: ${_}`),err("falling back to ArrayBuffer instantiation"),instantiateArrayBuffer(r,t,n)})}):instantiateArrayBuffer(r,t,n)}function getWasmImports(){return{env:wasmImports,wasi_snapshot_preview1:wasmImports,"GOT.mem":new Proxy(wasmImports,GOTHandler),"GOT.func":new Proxy(wasmImports,GOTHandler)}}function createWasm(){var e=getWasmImports();function r(n,a){wasmExports=n.exports,wasmExports=relocateExports(wasmExports,1024),wasmExports=Asyncify.instrumentWasmExports(wasmExports);var o=getDylinkMetadata(a);return o.neededDynlibs&&(dynamicLibraries=o.neededDynlibs.concat(dynamicLibraries)),mergeLibSymbols(wasmExports,"main"),LDSO.init(),loadDylibs(),wasmExports=applySignatureConversions(wasmExports),addOnInit(wasmExports.__wasm_call_ctors),__RELOC_FUNCS__.push(wasmExports.__wasm_apply_data_relocs),removeRunDependency("wasm-instantiate"),wasmExports}addRunDependency("wasm-instantiate");function t(n){r(n.instance,n.module)}if(Module.instantiateWasm)try{return Module.instantiateWasm(e,r)}catch(n){err(`Module.instantiateWasm callback failed with error: ${n}`),readyPromiseReject(n)}return wasmBinaryFile??(wasmBinaryFile=findWasmBinary()),instantiateAsync(wasmBinary,wasmBinaryFile,e,t).catch(readyPromiseReject),{}}var asyncifyStubs={},ASM_CONSTS={4511776:(e,r,t)=>{const n=Module.targets.get(e),a=UTF8ToString(r),o=t;if(!(a in n))return Module.jsToZval(void 0,o);Module.jsToZval(n[a],o)},4511977:(e,r,t,n,a)=>{(()=>{const o=Module.targets.get(e),_=UTF8ToString(r),c=t,l=n,u=a;o[_]=Module.callableToJs(c);const d=Module.ccall("vrzno_expose_closure","number",["number"],[c]);Module.refcountRegistry.register(o[_],d,o[_])})()},4512341:(e,r,t)=>{(()=>{const n=Module.targets.get(e),a=UTF8ToString(r),o=t,_=Module.ccall("vrzno_expose_object","number",["number"],[o]);n[a]=Module.marshalZObject(_)})()},4512584:(e,r,t)=>{(()=>{const n=Module.targets.get(e),a=UTF8ToString(r),o=t,_=Module.ccall("vrzno_expose_array","number",["number"],[o]);n[a]=Module.marshalZArray(_,o)})()},4512834:(e,r)=>{(()=>{const t=Module.targets.get(e),n=UTF8ToString(r);delete t[n]})()},4512950:(e,r)=>{(()=>{const t=Module.targets.get(e),n=UTF8ToString(r);t[n]=null})()},4513066:(e,r)=>{(()=>{const t=Module.targets.get(e),n=UTF8ToString(r);t[n]=!1})()},4513183:(e,r)=>{(()=>{const t=Module.targets.get(e),n=UTF8ToString(r);t[n]=!0})()},4513299:(e,r,t)=>{(()=>{const n=Module.targets.get(e),a=UTF8ToString(r);n[a]=t})()},4513413:(e,r,t)=>{(()=>{const n=Module.targets.get(e),a=UTF8ToString(r);n[a]=t})()},4513527:(e,r,t)=>{(()=>{const n=Module.targets.get(e),a=UTF8ToString(r),o=UTF8ToString(t);n[a]=o})()},4513682:(e,r,t)=>{let n=Module.targets.get(e);const a=r,o=t;if(n instanceof ArrayBuffer&&(Module.bufferMaps.has(n)||Module.bufferMaps.set(n,new Uint8Array(n)),n=Module.bufferMaps.get(n)),!(a in n))return Module.jsToZval(void 0,o);Module.jsToZval(n[a],o)},4514039:(e,r,t,n)=>{(()=>{const a=Module.targets.get(e),o=r,_=t,c=n;a[o]=Module.callableToJs(_);const l=Module.ccall("vrzno_expose_closure","number",["number"],[_]);Module.refcountRegistry.register(a[o],l,a[o])})()},4514367:(e,r,t)=>{(()=>{const n=Module.targets.get(e),a=r,o=t,_=Module.ccall("vrzno_expose_object","number",["number"],[o]);n[a]=Module.marshalZObject(_)})()},4514596:(e,r,t)=>{(()=>{const n=Module.targets.get(e),a=r,o=t,_=Module.ccall("vrzno_expose_array","number",["number"],[o]);n[a]=Module.marshalZArray(_,o)})()},4514832:(e,r)=>{(()=>{const t=Module.targets.get(e),n=r;delete t[n]})()},4514934:(e,r)=>{(()=>{const t=Module.targets.get(e),n=r;t[n]=null})()},4515036:(e,r)=>{(()=>{const t=Module.targets.get(e),n=r;t[n]=!1})()},4515139:(e,r)=>{(()=>{const t=Module.targets.get(e),n=r;t[n]=!0})()},4515241:(e,r,t)=>{(()=>{const n=Module.targets.get(e),a=r;n[a]=t})()},4515341:(e,r,t)=>{(()=>{const n=Module.targets.get(e),a=r;n[a]=t})()},4515441:(e,r,t)=>{(()=>{const n=Module.targets.get(e),a=r,o=UTF8ToString(t);n[a]=o})()},4515582:(e,r,t)=>{const n=Module.targets.get(e),a=r,o=t;return Array.isArray(n)?typeof n[a]<"u":n instanceof ArrayBuffer?(Module.bufferMaps.has(n)||Module.bufferMaps.set(n,new Uint8Array(n)),Module.bufferMaps.get(n)[a]!=="undefined"):o?!!n[a]:a in n},4516061:(e,r)=>{(()=>{const t=Module.targets.get(e),n=UTF8ToString(r);delete t[n]})()},4516177:(e,r)=>{(()=>{const t=Module.targets.get(e),n=r;delete t[n]})()},4516279:e=>{const r=Module.targets.get(e);let t;if(typeof r=="function")t=JSON.stringify({});else try{t=JSON.stringify({...r})}catch{t=JSON.stringify({})}const n=String(t),a=1+lengthBytesUTF8(n),o=_malloc(a);return stringToUTF8(n,o,a),o},4516616:(e,r)=>{const t=Module.targets.get(e);return UTF8ToString(r)in t},4516721:(e,r,t)=>{const n=Module.targets.get(e),a=UTF8ToString(r),o=t;return Module.jsToZval(n[a],o)},4516870:(e,r,t,n,a,o)=>{const _=Module.targets.get(e),c=UTF8ToString(r),l=t,u=n,d=a,p=o,g=[];for(let v=0;v<u;v++){const w=l+v*d,S=Module.getValue(w,"*"),F=Module.zvalToJS(S);g.push(F)}Module.jsToZval(_[c](...g),p)},4517237:(e,r,t,n,a)=>{const o=Module.targets.get(e),_=r,c=t,l=n,u=a,d=[];for(let p=0;p<c;p++)d.push(Module.zvalToJS(_+p*l));return Module.jsToZval(o(...d),u)},4517487:(e,r,t,n)=>{const a=Module._classes.get(e),o=r,_=t,c=n,l=[];for(let p=0;p<_;p++)l.push(Module.zvalToJS(o+p*c));const u=new a(...l),d=Module.targets.add(u);return Module.tacked.add(u),d},4517800:e=>{const r=Module.targets.get(e);Module.tacked.delete(r),Module.targets.remove(r)},4517904:e=>{const r=Module.targets.get(e),t=String(r),n=1+lengthBytesUTF8(t),a=_malloc(n);return stringToUTF8(t,a,n),a},4518080:()=>{const e={};return Module.tacked.add(e),Module.targets.add(e)},4518168:(e,r)=>{const t=Module.targets.get(e),n=UTF8ToString(r);t.method=n},4518274:(e,r)=>{(()=>{const t=Module.targets.get(e),n=UTF8ToString(r),a=n.indexOf(":"),o=n.substr(0,a).trim(),_=n.substr(1+a).trim();t.headers=t.headers??{},t.headers[o]=_})()},4518574:(e,r)=>{(()=>{const t=Module.targets.get(e);UTF8ToString(r).split(`\n`).forEach(a=>{const o=Module.targets.get(e),_=a.indexOf(":"),c=a.substr(0,_).trim(),l=a.substr(1+_).trim();o.headers=o.headers??{},o.headers[c]=l})})()},4518967:(e,r,t)=>{(()=>{const n=Module.targets.get(e);n.body=Module.HEAPU8.slice(r,r+t)})()},4519074:(e,r)=>{const t=Module.targets.get(e);t.ignoreErrors=r},4519149:e=>{const r=Module.targets.get(e);return r.status<0&&Module.tacked.delete(r),r.status},4519274:$0=>{const str=String(eval(UTF8ToString($0))),len=lengthBytesUTF8(str)+1,loc=_malloc(len);return stringToUTF8(str,loc,len),loc},4519427:(e,r)=>{const t=UTF8ToString(e),n=UTF8ToString(r),a=globalThis[t],o=JSON.parse(n||"[]")||[],_=String(a(...o)),c=lengthBytesUTF8(_)+1,l=_malloc(c);return stringToUTF8(_,l,c),l},4519723:(e,r)=>{const t=Number(UTF8ToString(e)),n=r;setTimeout(()=>{const a=Module.ccall("vrzno_exec_callback","number",["number","number","number","number"],[n,null,0,0]);Module.ccall("vrzno_expose_efree","number",["number"],[a]),Module.ccall("vrzno_del_callback","number",["number"],[n])},t)},4520087:(e,r)=>{const t=UTF8ToString(e),n=r;Module.jsToZval(Module[t],n)},4520172:(e,r)=>{const t=UTF8ToString(e),n=r;Module.jsToZval(Module.shared[t],n)},4520264:(e,r)=>{const t=UTF8ToString(e),n=r;Module.jsToZval(import(t),n)},4520349:e=>Module.targets.get(e)!==void 0?1:0,4520406:e=>Module.targets.get(e)!==void 0?1:0,4520463:e=>{const r=Module.targets.get(e);Module.tacked.add(r)},4520533:e=>typeof Module.targets.get(e)=="function"?e:0,4520624:e=>{const r=Module.targets.get(e);return typeof r=="function"&&r.prototype&&r.prototype.constructor?1:0},4520766:e=>{const r=Module.targets.get(e);return Array.isArray(r)?1:0},4520847:()=>{Module.tacked.clear(),Module.classes=new WeakMap,Module._classes=new Module.WeakerMap,Module._objects=new Module.WeakerMap,Module._arrays=new Module.WeakerMap,Module.callables=new WeakMap,Module._callables=new Module.WeakerMap;const e=[...Module.refcountRegistry.registered.entries()],r=[...Module.heapRegistry.registered.entries()];e.forEach(([t,n])=>Module.refcountRegistry.unregister(n)),r.forEach(([t,n])=>Module.heapRegistry.unregister(n))},4521431:()=>{Module.hasVrzno=!0;const e=0,r=1,t=2,n=3,a=4,o=5,_=6,c=7,l=8,u=9,d=12;Module.tacked=new Set;const p=Symbol("origZval"),g=globalThis.FinalizationRegistry||class{register(){}unregister(){}};Module.WeakerMap=Module.WeakerMap||class{constructor(m){this.map=new Map,this.registry=v(this),m&&m.forEach(([y,b])=>this.set(y,b))}get size(){return this.map.size}clear(){this.registry=v(this),this.map.clear()}delete(m){this.has(m)&&(this.registry.unregister(this.get(m)),this.map.delete(m))}[Symbol.iterator](){const m=this.map[Symbol.iterator]();return{next:()=>{do{const y=m.next();if(y.done)return{done:!0};const[b,E]=y.value,k=E.deref();if(!k){this.map.delete(b);continue}return{done:!1,value:[b,k]}}while(!0)}}}entries(){return{[Symbol.iterator]:()=>this[Symbol.iterator]()}}forEach(m){for(const[y,b]of this)m(b,y,this)}get(m){if(!this.has(m))return;const y=this.map.get(m).deref();return y||this.map.delete(m),y}has(m){if(!this.map.has(m))return!1;const y=this.map.get(m).deref();return y||this.map.delete(m),!!y}keys(){return[...this].map(m=>m[0])}set(m,y){if(typeof y!="function"&&typeof y!="object")throw new Error("WeakerMap values must be objects.");return this.has(m)&&this.registry.unregister(this.get(m)),this.registry.register(y,m,y),this.map.set(m,new F(y))}values(){return[...this].map(m=>m[1])}};const v=f=>{const m=new g(y=>{f.registry===m&&(f.map.has(y)&&f.map.get(y).deref()||f.delete(y))});return m},w=class{constructor(){this.unregisterTokens=new WeakMap,this.registered=new Module.WeakerMap,this.registry=new g(f=>{Module.ccall("vrzno_expose_dec_refcount","number",["number"],[f])})}register(f,m,y){this.unregisterTokens.has(y)||(Module.ccall("vrzno_expose_inc_refcount","number",["number"],[m]),this.registry.register(f,m,y),this.unregisterTokens.set(y,m),this.registered.set(m,y))}unregister(f){if(this.registry.unregister(f),this.unregisterTokens.has(f)){const m=this.unregisterTokens.get(f);this.unregisterTokens.delete(f),this.registered.delete(m)}}},S=class{constructor(){this.unregisterTokens=new WeakMap,this.registered=new Module.WeakerMap,this.registry=new g(f=>{Module.ccall("vrzno_expose_zv_dec_refcount","number",["number"],[f]),Module.ccall("vrzno_expose_efree","number",["number"],[f])})}register(f,m,y){this.unregisterTokens.has(y)||(this.registry.register(f,m,y),this.unregisterTokens.set(y,m),this.registered.set(m,y))}unregister(f){if(this.registry.unregister(f),this.unregisterTokens.has(f)){const m=this.unregisterTokens.get(f);this.unregisterTokens.delete(f),this.registered.delete(m)}}};Module.heapRegistry=Module.heapRegistry||new S;const F=globalThis.WeakRef||class{constructor(f){this.val=f}deref(){return this.val}};Module.refcountRegistry=new w,Module.bufferMaps=new WeakMap,Module.marshalZObject=(f=>{const m=Module.ccall("vrzno_expose_target","number",["number"],[f]);if(m)return Module.targets.get(m);if(Module._objects.has(f))return Module._objects.get(f);const y=new Proxy({},{ownKeys:b=>{const E=Module.ccall("vrzno_expose_object_keys","number",["number"],[f]);if(E){const k=UTF8ToString(E),h=JSON.parse(k);return _free(E),h.push(...Reflect.ownKeys(b)),[...new Set(h)]}return[]},has:(b,E)=>{const k=lengthBytesUTF8(E)+1,h=_malloc(k);stringToUTF8(E,h,k);const A=Module.ccall("vrzno_expose_property_pointer","number",["number","number"],[f,h]);return _free(h),A},get:(b,E)=>{let k;if(E===Symbol.iterator)return;if(E===Symbol.toPrimitive){const M="__toString",C=lengthBytesUTF8(M)+1,T=_malloc(C);stringToUTF8(M,T,C);const x=Module.ccall("vrzno_expose_method_pointer","number",["number","number"],[f,T]);return _free(T),()=>Module.callableToJs(x,f)()}E=String(E);const h=lengthBytesUTF8(E)+1,A=_malloc(h);stringToUTF8(E,A,h);const P=Module.ccall("vrzno_expose_method_pointer","number",["number","number"],[f,A]);if(P){const M=Module.callableToJs(P,f),C=Module.ccall("vrzno_expose_closure","number",["number"],[P]);return Module.refcountRegistry.register(M,C,M),M}if(k=Module.ccall("vrzno_expose_property_pointer","number",["number","number"],[f,A]),_free(A),!!k)return Module.zvalToJS(k)??Reflect.get(b,E)},getOwnPropertyDescriptor:(b,E)=>{E=String(E);const k=lengthBytesUTF8(E)+1,h=_malloc(k);stringToUTF8(E,h,k);const A=Module.ccall("vrzno_expose_property_pointer","number",["number","number"],[f,h]);_free(h);const P=Module.zvalToJS(A);return{configurable:!0,enumerable:!0,value:b[E]}}});return Module.refcountRegistry.register(y,f,y),Module._objects.set(f,y),y}),Module.marshalZArray=((f,m)=>{if(Module._arrays.has(f))return Module._arrays.get(f);const y=new Proxy({},{ownKeys:b=>{const E=Module.ccall("vrzno_expose_array_keys","number",["number"],[f]);if(E){const k=UTF8ToString(E),h=JSON.parse(k);return _free(E),h.push(...Reflect.ownKeys(b)),[...new Set(h)]}return[]},has:(b,E)=>{switch(typeof E=="string"&&Number.isInteger(Number(E))&&(E=Number(E)),typeof E){case"number":return!!Module.ccall("vrzno_expose_dimension_pointer","number",["number","number"],[f,E]);case"string":const k=lengthBytesUTF8(E)+1,h=_malloc(k);stringToUTF8(E,h,k);const A=Module.ccall("vrzno_expose_key_pointer","number",["number","number"],[f,h]);return _free(h),A;default:return!1}},get:(b,E)=>{let k;if(E==="length")return Module.ccall("vrzno_expose_array_length","number",["number"],[f]);if(typeof E=="string"&&Number.isInteger(Number(E))&&(E=Number(E)),E===Symbol.iterator){const A=Module.ccall("vrzno_expose_array_length","number",["number"],[f]),P=()=>{let M=-1;return{next(){return{done:++M>=A,value:Module.zvalToJS(Module.ccall("vrzno_expose_dimension_pointer","number",["number","number"],[f,M]))}}}};return Module.refcountRegistry.register(P,f,P),P}switch(typeof E){case"symbol":return Reflect.get(b,E);case"number":k=Module.ccall("vrzno_expose_dimension_pointer","number",["number","number"],[f,E]);break;case"string":E=String(E);const A=lengthBytesUTF8(E)+1,P=_malloc(A);stringToUTF8(E,P,A),k=Module.ccall("vrzno_expose_key_pointer","number",["number","number"],[f,P]),_free(P);break;default:return!1}return k?Module.zvalToJS(k)??Reflect.get(b,E):void 0},getOwnPropertyDescriptor:(b,E)=>{if(E==="length"){const A=Module.ccall("vrzno_expose_array_length","number",["number"],[f]);return{...Object.getOwnPropertyDescriptor(b,E),value:A}}typeof E=="string"&&Number.isInteger(Number(E))&&(E=Number(E));let k;switch(typeof E){case"number":k=Module.ccall("vrzno_expose_dimension_pointer","number",["number","number"],[f,E]);break;case"string":const A=lengthBytesUTF8(E)+1,P=_malloc(A);stringToUTF8(E,P,A),k=Module.ccall("vrzno_expose_key_pointer","number",["number","number"],[f,P]),_free(P);break;default:return}const h=Module.zvalToJS(k);return{configurable:!0,enumerable:!0,value:b[E]}}});return Module.refcountRegistry.register(y,f,y),Module._arrays.set(f,y),y[p]=m,y}),Module.callableToJs=((f,m=null)=>{if(Module._callables.has(f))return Module._callables.get(f);const y=(...b)=>{if(!Module.callables.has(y)){console.warn(`Tried to call ${y.name}, but PHPs memory has been refreshed.`);return}let E=null;if(b.length){E=Module.ccall("vrzno_expose_create_params","number",["number"],[b.length]);for(let h=0;h<b.length;h++)Module.jsToZval(b[h],getValue(h*4+E,"*"))}const k=Module.ccall("vrzno_exec_callback","number",["number","number","number","number"],[f,E,b.length,m]);if(b.length&&Module.ccall("vrzno_expose_efree","number",["number"],[E]),k){const h=Module.zvalToJS(k);return h&&(typeof h=="function"||typeof h=="object")?Module.heapRegistry.register(h,k,h):Module.ccall("vrzno_expose_efree","number",["number"],[k]),h}};return Object.defineProperty(y,"name",{value:`PHP_@{${f.toString()}}`}),Module.callables.set(y,f),Module._callables.set(f,y),y}),Module.resourceToJs=((f,m)=>{const y={[p]:m};return Module.refcountRegistry.register(y,f,y),Object.freeze(y),y}),Module.zvalToJS=Module.zvalToJS||(f=>{if(!f)return;f=Module.ccall("vrzno_expose_zval_deref","number",["number"],[f]);const m=Module.ccall("vrzno_expose_zval_target","number",["number"],[f]);if(m)return Module.targets.get(m);let y=Module.ccall("vrzno_expose_type","number",["number"],[f]);y===d&&(f=Module.ccall("vrzno_expose_zval_direct","number",["number"],[f]),f=Module.ccall("vrzno_expose_zval_deref","number",["number"],[f]),y=Module.ccall("vrzno_expose_type","number",["number"],[f]));const b=Module.ccall("vrzno_expose_callable","number",["number"],[f]);if(b&&y!==_){const k=Module.callableToJs(b),h=Module.ccall("vrzno_expose_closure","number",["number"],[b]);return Module.refcountRegistry.register(k,h,k),k}let E;switch(y){case e:return;case r:return null;case n:return!0;case t:return!1;case a:return Module._vrzno_expose_long_value(f);case o:return E=Module.ccall("vrzno_expose_double","number",["number"],[f]),E?getValue(E,"double"):null;case _:return E=Module.ccall("vrzno_expose_string","number",["number"],[f]),E?UTF8ToString(E):null;case c:const k=Module.ccall("vrzno_expose_array","number",["number"],[f]);return Module.marshalZArray(k,f);case l:const h=Module.ccall("vrzno_expose_object","number",["number"],[f]);return Module.marshalZObject(h);case u:const A=Module.ccall("vrzno_expose_resource","number",["number"],[f]);return Module.resourceToJs(A,f);default:return console.warn("ZVal at 0x%s has invalid type %d (0b%s)",Number(f).toString(16),y,Number(y).toString(2)),null;break}}),Module.jsToZval=Module.jsToZval||((f,m)=>{if(typeof f>"u")Module.ccall("vrzno_expose_create_null","number",["number"],[m]);else if(f===null)Module.ccall("vrzno_expose_create_null","number",["number"],[m]);else if([!0,!1].includes(f))Module.ccall("vrzno_expose_create_bool","number",["number","number"],[f,m]);else if(f&&["function","object"].includes(typeof f)){if(f[p]){Module.ccall("vrzno_expose_zval_ref","number",["number","number"],[m,f[p]]);return}const y=Module.targets.add(f),b=typeof f=="function"?y:0,E=b&&!!(f.prototype&&f.prototype.constructor),k=Array.isArray(f);Module.tacked.add(f),Module.ccall("vrzno_expose_create_object_for_target","number",["number","number","number","number","number"],[y,b,E,k,m])}else if(typeof f=="bigint"||typeof f=="number"&&Number.isInteger(f)){const y=stackSave(),b=stackAlloc(8),E=typeof f=="bigint"?f:BigInt(f);setValue(b,E,"i64"),Module.ccall("vrzno_expose_create_long_at","number",["number","number"],[b,m]),stackRestore(y)}else if(typeof f=="number")Number.isFinite(f)&&Module.ccall("vrzno_expose_create_double","number",["number","number"],[f,m]);else if(typeof f=="string"){const y=lengthBytesUTF8(f)+1,b=_malloc(y);stringToUTF8(f,b,y),Module.ccall("vrzno_expose_create_string","number",["number","number"],[b,m]),_free(b)}}),Module.UniqueIndex=Module.UniqueIndex||class{constructor(){this.byObject=new WeakMap,this.byInteger=new Module.WeakerMap,this.id=0,Object.defineProperty(this,"add",{configurable:!1,writable:!1,value:m=>{if(this.byObject.has(m))return this.byObject.get(m);const y=++this.id;return this.byObject.set(m,y),this.byInteger.set(y,m),y}}),Object.defineProperty(this,"has",{configurable:!1,writable:!1,value:m=>{if(this.byObject.has(m))return this.byObject.get(m)}}),Object.defineProperty(this,"hasId",{configurable:!1,writable:!1,value:m=>{if(this.byInteger.has(m))return this.byInteger.get(m)}}),Object.defineProperty(this,"get",{configurable:!1,writable:!1,value:m=>{if(this.byInteger.has(m))return this.byInteger.get(m)}}),Object.defineProperty(this,"getId",{configurable:!1,writable:!1,value:m=>{if(this.byObject.has(m))return this.byObject.get(m)}}),Object.defineProperty(this,"remove",{configurable:!1,writable:!1,value:m=>{const y=this.byInteger.get(m);y&&(this.byObject.delete(y),this.byInteger.delete(m))}})}},Module.classes=new WeakMap,Module._classes=new Module.WeakerMap,Module._objects=new Module.WeakerMap,Module._arrays=new Module.WeakerMap,Module.targets=new Module.UniqueIndex,Module.callables=new WeakMap,Module._callables=new Module.WeakerMap,Module.targets.add(globalThis),Module.PdoParams=new WeakMap},4538883:e=>{const r=Module.targets.get(e);return Module.classes.get(r)},4538961:(e,r)=>{const t=Module.targets.get(e);Module.classes.set(t,r),Module._classes.set(r,t)},4539069:(e,r,t,n)=>{const a=Module.targets.get(e),o=r,_=t;let c=n;return a.status>=400&&!a.context.ignoreErrors?0:(_>=a.buffer.length?c=0:_+c>a.buffer.length&&(c=a.buffer.length-_),c&&Module.HEAPU8.set(a.buffer.slice(_,_+c),o),c)},4539461:e=>{const r=Module.targets.get(e);Module.tacked.delete(r)},4539534:e=>{const r=Module._classes.get(e);return r?Module.targets.getId(r):Module.targets.add(globalThis)},4539669:(e,r)=>{let t=Module.targets.get(e);const n=r;return t instanceof ArrayBuffer&&(Module.bufferMaps.has(t)||Module.bufferMaps.set(t,new Uint8Array(t)),t=Module.bufferMaps.get(t)),(Array.isArray(t)||ArrayBuffer.isView(t))&&n>=0&&n<t.length?1:0},4540032:(e,r,t)=>{let n=Module.targets.get(e);const a=r,o=t;return n instanceof ArrayBuffer&&(Module.bufferMaps.has(n)||Module.bufferMaps.set(n,new Uint8Array(n)),n=Module.bufferMaps.get(n)),Module.jsToZval(n[a],o)},4540327:e=>{const r=Module.targets.get(e);r&&Module.tacked.delete(r)},4540415:e=>{if(Module.persist){const r=Array.isArray(Module.persist)?Module.persist:[Module.persist],t=e;r.forEach(n=>{const a=n.mountPath||"/persist",o=n.localPath||"./persist";if(FS.mkdir(a),ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)FS.mount(IDBFS,{autoPersist:!1},a);else if(ENVIRONMENT_IS_NODE&&!t){const _=(globalThis.__non_webpack_require__||__require)("fs");_.existsSync(o)||_.mkdirSync(o,{recursive:!0}),FS.mount(NODEFS,{root:o},a)}})}}};function __asyncjs__php_stream_fetch_real_open(e,r,t,n,a){return Asyncify.handleAsync(async()=>{const o=UTF8ToString(e),_=Module.targets.get(r)||{};try{const c=await fetch(o,_),l=new Uint8Array(await c.arrayBuffer()),u=c.status,d=[...c.headers.entries()].map(([w,S])=>`${w}: ${S}`);d.unshift(`HTTP/1.1 ${c.status} ${c.statusText}`);const p=_malloc(t*d.length);setValue(n,p,"*"),setValue(a,d.length,"i32");let g=0;for(const w of d){const S=lengthBytesUTF8(w)+1,F=_malloc(S);stringToUTF8(w,F,S),setValue(p+g*t,F,"i"+8*t),g++}const v={status:u,buffer:l,context:_};return Module.tacked.add(v),Module.tacked.delete(_),Module.targets.add(v)}catch(c){const l={status:-1,buffer:new TextEncoder().encode(c),context:_};return Module.tacked.add(l),Module.tacked.delete(_),Module.targets.add(l)}})}__asyncjs__php_stream_fetch_real_open.sig="iiiiii";function __asyncjs__vrzno_await_internal(e,r){return Asyncify.handleAsync(async()=>{const n=await Module.targets.get(e);Module.jsToZval(n,r)})}__asyncjs__vrzno_await_internal.sig="vii";function ExitStatus(e){this.name="ExitStatus",this.message=`Program terminated with exit(${e})`,this.status=e}var GOT={},currentModuleWeakSymbols=new Set(["phpdbg_arm_auto_global","phpdbg_restore_frame","phpdbg_globals"]),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,t)=>{r>>>=0;for(var n=r+t,a=r;e[a]&&!(a>=n);)++a;if(a-r>16&&e.buffer&&UTF8Decoder)return UTF8Decoder.decode(e.subarray(r,a));for(var o="";r<a;){var _=e[r++];if(!(_&128)){o+=String.fromCharCode(_);continue}var c=e[r++]&63;if((_&224)==192){o+=String.fromCharCode((_&31)<<6|c);continue}var l=e[r++]&63;if((_&240)==224?_=(_&15)<<12|c<<6|l:_=(_&7)<<18|c<<12|l<<6|e[r++]&63,_<65536)o+=String.fromCharCode(_);else{var u=_-65536;o+=String.fromCharCode(55296|u>>10,56320|u&1023)}}return o},getDylinkMetadata=e=>{var r=0,t=0;function n(){return e[r++]}function a(){for(var x=0,R=1;;){var U=e[r++];if(x+=(U&127)*R,R*=128,!(U&128))break}return x}function o(){var x=a();return r+=x,UTF8ArrayToString(e,r-x,x)}function _(x,R){if(x)throw new Error(R)}var c="dylink.0";if(e instanceof WebAssembly.Module){var l=WebAssembly.Module.customSections(e,c);l.length===0&&(c="dylink",l=WebAssembly.Module.customSections(e,c)),_(l.length===0,"need dylink section"),e=new Uint8Array(l[0]),t=e.length}else{var u=new Uint32Array(new Uint8Array(e.subarray(0,24)).buffer),d=u[0]==1836278016;_(!d,"need to see wasm magic number"),_(e[8]!==0,"need the dylink section to be first"),r=9;var p=a();t=r+p,c=o()}var g={neededDynlibs:[],tlsExports:new Set,weakImports:new Set};if(c=="dylink"){g.memorySize=a(),g.memoryAlign=a(),g.tableSize=a(),g.tableAlign=a();for(var v=a(),w=0;w<v;++w){var S=o();g.neededDynlibs.push(S)}}else{_(c!=="dylink.0");for(var F=1,f=2,m=3,y=4,b=256,E=3,k=1;r<t;){var h=n(),A=a();if(h===F)g.memorySize=a(),g.memoryAlign=a(),g.tableSize=a(),g.tableAlign=a();else if(h===f)for(var v=a(),w=0;w<v;++w)S=o(),g.neededDynlibs.push(S);else if(h===m)for(var P=a();P--;){var M=o(),C=a();C&b&&g.tlsExports.add(M)}else if(h===y)for(var P=a();P--;){var T=o(),M=o(),C=a();(C&E)==k&&g.weakImports.add(M)}else r+=A}}return g};function getValue(e,r="i8"){switch(r.endsWith("*")&&(r="*"),r){case"i1":return HEAP8[e>>>0];case"i8":return HEAP8[e>>>0];case"i16":return HEAP16[e>>>1>>>0];case"i32":return HEAP32[e>>>2>>>0];case"i64":return HEAP64[e>>>3];case"float":return HEAPF32[e>>>2>>>0];case"double":return HEAPF64[e>>>3>>>0];case"*":return HEAPU32[e>>>2>>>0];default:abort(`invalid type for getValue: ${r}`)}}var 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=38250016,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),a={i:127,p:127,j:126,f:125,d:124,e:111};r.push(96),uleb128Encode(n.length,r);for(var o=0;o<n.length;++o)r.push(a[n[o]]);t=="v"?r.push(0):r.push(1,a[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 a=new WebAssembly.Module(new Uint8Array(n)),o=new WebAssembly.Instance(a,{e:{f:e}}),_=o.exports.f;return _},wasmTable=new WebAssembly.Table({initial:6330,element:"anyfunc"}),getWasmTableEntry=e=>wasmTable.get(e),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),addFunction=(e,r)=>{var t=getFunctionAddress(e);if(t)return t;var n=getEmptyTableSlot();try{setWasmTableEntry(n,e)}catch(o){if(!(o instanceof TypeError))throw o;var a=convertJsFunctionToWasm(e,r);setWasmTableEntry(n,a)}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 a in e){var o=e[a];typeof o=="object"&&(o=o.value),typeof o=="number"&&(o+=r),n[a]=o}return updateGOT(n,t),n},isSymbolDefined=e=>{var r=wasmImports[e];return!(!r||r.stub||e in asyncifyStubs&&!asyncifyStubs[e])},setTempRet0=e=>__emscripten_tempret_set(e),setTempRet0=setTempRet0;Module.setTempRet0=setTempRet0;var createDyncallWrapper=e=>{var r=[],t=[0,97,115,109,1,0,0,0];r.push(t);var n=[e[0].replace("j","i"),"i",e.slice(1).replace(/j/g,"ii")].join(""),a=[3];generateFuncType(n,a),generateFuncType(e,a),generateFuncType("vi",a);var o=[1];uleb128Encode(a.length,o),o.push(...a),r.push(o);var _=[2,15,2,1,101,1,116,1,112,0,0,1,101,1,114,0,2];r.push(_);var c=[3,2,1,0];r.push(c);var l=[7,5,1,1,102,0,1];r.push(l);var u=[];e[0]==="j"?u=[1,1,126]:u.push(0);function d(y){u.push(32),uleb128Encode(y,u)}for(var p=1,g=1;g<e.length;g++)e[g]=="j"?(d(p+1),u.push(173,66,32,134),d(p),u.push(172,132),p+=2):(d(p),p++);u.push(32,0,17,1,0),e[0]==="j"&&(u.push(34),uleb128Encode(p,u),u.push(66,32,136,167,16,0),d(p),u.push(167)),u.push(11);var v=[1];uleb128Encode(u.length,v),v.push(...u);var w=[10];uleb128Encode(v.length,w),w.push(...v),r.push(w);var S=new Uint8Array([].concat.apply([],r)),F=new WebAssembly.Module(S),f=new WebAssembly.Instance(F,{e:{t:wasmTable,r:setTempRet0}}),m=f.exports.f;return m},dynCallLegacy=(e,r,t)=>{e=e.replace(/p/g,"i"),"dynCall_"+e in Module||(Module["dynCall_"+e]=createDyncallWrapper(e));var n=Module["dynCall_"+e];return n(r,...t)},dynCall=(e,r,t=[])=>{var n=dynCallLegacy(e,r,t);return e[0]=="p"?n>>>0: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(a){if(stackRestore(n),a!==a+0)throw a;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>>>=0,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>>>0];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>>>0]=1,HEAPU32[handle+12>>>2>>>0]=memoryBase,HEAP32[handle+16>>>2>>>0]=metadata.memorySize,HEAPU32[handle+20>>>2>>>0]=tableBase,HEAP32[handle+24>>>2>>>0]=metadata.tableSize)}else memoryBase=HEAPU32[handle+12>>>2>>>0],tableBase=HEAPU32[handle+20>>>2>>>0];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),moduleExports=Asyncify.instrumentWasmExports(moduleExports),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))(o=>{o in asyncifyStubs&&(asyncifyStubs[o]=n),isSymbolDefined(o)||(wasmImports[o]=n)})(t),t.startsWith("dynCall_")&&!Module.hasOwnProperty(t)&&(Module[t]=n)},asyncLoad=(e,r,t,n)=>{var a=n?"":`al ${e}`;readAsync(e).then(o=>{r(new Uint8Array(o)),a&&removeRunDependency(a)},o=>{if(t)t();else throw`Loading data file "${e}" failed.`}),a&&addRunDependency(a)},preloadPlugins=Module.preloadPlugins||[],registerWasmPlugin=()=>{var e={promiseChainEnd:Promise.resolve(),canHandle:r=>!Module.noWasmDecoding&&r.endsWith(".so"),handle:(r,t,n,a)=>{e.promiseChainEnd=e.promiseChainEnd.then(()=>loadWebAssemblyModule(r,{loadAsync:!0,nodelete:!0},t,{})).then(o=>{preloadedWasm[t]=o,n(r)},o=>{err(`failed to instantiate wasm: ${t}: ${o}`),a()})}};preloadPlugins.push(e)},preloadedWasm={};function loadDynamicLibrary(e,r={global:!0,nodelete:!0},t,n){var a=LDSO.loadedLibsByName[e];if(a)return r.global?a.global||(a.global=!0,mergeLibSymbols(a.exports,e)):t&&Object.assign(t,a.exports),r.nodelete&&a.refcount!==1/0&&(a.refcount=1/0),a.refcount++,n&&(LDSO.loadedLibsByHandle[n]=a),r.loadAsync?Promise.resolve(!0):!0;a=newDSO(e,n,"loading"),a.refcount=r.nodelete?1/0:1,a.global=r.global;function o(){if(n){var l=HEAPU32[n+28>>>2>>>0],u=HEAPU32[n+32>>>2>>>0];if(l&&u){var d=HEAP8.slice(l,l+u);return r.loadAsync?Promise.resolve(d):d}}var p=locateFile(e);if(r.loadAsync)return new Promise((g,v)=>asyncLoad(p,g,v));if(!readBinary)throw new Error(`${p}: file not found, and synchronous loading of external files is not available`);return readBinary(p)}function _(){var l=preloadedWasm[e];return l?r.loadAsync?Promise.resolve(l):l:r.loadAsync?o().then(u=>loadWebAssemblyModule(u,r,e,t,n)):loadWebAssemblyModule(o(),r,e,t,n)}function c(l){a.global?mergeLibSymbols(l,e):t&&Object.assign(t,l),a.exports=l}return r.loadAsync?_().then(l=>(c(l),!0)):(c(_()),!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;function setValue(e,r,t="i8"){switch(t.endsWith("*")&&(t="*"),t){case"i1":HEAP8[e>>>0]=r;break;case"i8":HEAP8[e>>>0]=r;break;case"i16":HEAP16[e>>>1>>>0]=r;break;case"i32":HEAP32[e>>>2>>>0]=r;break;case"i64":HEAP64[e>>>3]=BigInt(r);break;case"float":HEAPF32[e>>>2>>>0]=r;break;case"double":HEAPF64[e>>>3>>>0]=r;break;case"*":HEAPU32[e>>>2>>>0]=r;break;default:abort(`invalid type for setValue: ${t}`)}}var ___asyncify_data=new WebAssembly.Global({value:"i32",mutable:!0},0),___asyncify_state=new WebAssembly.Global({value:"i32",mutable:!0},0),INT53_MAX=9007199254740992,INT53_MIN=-9007199254740992,bigintToI53Checked=e=>e<INT53_MIN||e>INT53_MAX?NaN:Number(e),___call_sighandler=function(e,r){return e>>>=0,(t=>{})(r)};___call_sighandler.sig="vpi";var ___memory_base=new WebAssembly.Global({value:"i32",mutable:!1},1024),___stack_high=38250016,___stack_low=4695584,___stack_pointer=new WebAssembly.Global({value:"i32",mutable:!0},38250016),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 a=e[n];a==="."?e.splice(n,1):a===".."?(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 e=>crypto.getRandomValues(e);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 a=n>=0?e[n]:FS.cwd();if(typeof a!="string")throw new TypeError("Arguments to path.resolve must be strings");if(!a)return"";r=a+"/"+r,t=PATH.isAbs(a)}return r=PATH.normalizeArray(r.split("/").filter(o=>!!o),!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 p=u.length-1;p>=0&&u[p]==="";p--);return d>p?[]:u.slice(d,p-d+1)}for(var n=t(e.split("/")),a=t(r.split("/")),o=Math.min(n.length,a.length),_=o,c=0;c<o;c++)if(n[c]!==a[c]){_=c;break}for(var l=[],c=_;c<n.length;c++)l.push("..");return l=l.concat(a.slice(_)),l.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(t>>>=0,!(n>0))return 0;for(var a=t,o=t+n-1,_=0;_<e.length;++_){var c=e.charCodeAt(_);if(c>=55296&&c<=57343){var l=e.charCodeAt(++_);c=65536+((c&1023)<<10)|l&1023}if(c<=127){if(t>=o)break;r[t++>>>0]=c}else if(c<=2047){if(t+1>=o)break;r[t++>>>0]=192|c>>6,r[t++>>>0]=128|c&63}else if(c<=65535){if(t+2>=o)break;r[t++>>>0]=224|c>>12,r[t++>>>0]=128|c>>6&63,r[t++>>>0]=128|c&63}else{if(t+3>=o)break;r[t++>>>0]=240|c>>18,r[t++>>>0]=128|c>>12&63,r[t++>>>0]=128|c>>6&63,r[t++>>>0]=128|c&63}}return r[t>>>0]=0,t-a};function intArrayFromString(e,r,t){var n=t>0?t:lengthBytesUTF8(e)+1,a=new Array(n),o=stringToUTF8Array(e,a,0,a.length);return r&&(a.length=o),a}var FS_stdin_getChar=()=>{if(!FS_stdin_getChar_buffer.length){var e=null;if(typeof window<"u"&&typeof window.prompt=="function"&&(e=window.prompt("Input: "),e!==null&&(e+=`\n`)),!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,a){if(!e.tty||!e.tty.ops.get_char)throw new FS.ErrnoError(60);for(var o=0,_=0;_<n;_++){var c;try{c=e.tty.ops.get_char(e.tty)}catch{throw new FS.ErrnoError(29)}if(c===void 0&&o===0)throw new FS.ErrnoError(6);if(c==null)break;o++,r[t+_]=c}return o&&(e.node.timestamp=Date.now()),o},write(e,r,t,n,a){if(!e.tty||!e.tty.ops.put_char)throw new FS.ErrnoError(60);try{for(var o=0;o<n;o++)e.tty.ops.put_char(e.tty,r[t+o])}catch{throw new FS.ErrnoError(29)}return n&&(e.node.timestamp=Date.now()),o}},default_tty_ops:{get_char(e){return FS_stdin_getChar()},put_char(e,r){r===null||r===10?(out(UTF8ArrayToString(e.output,0)),e.output=[]):r!=0&&e.output.push(r)},fsync(e){e.output&&e.output.length>0&&(out(UTF8ArrayToString(e.output,0)),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,0)),e.output=[]):r!=0&&e.output.push(r)},fsync(e){e.output&&e.output.length>0&&(err(UTF8ArrayToString(e.output,0)),e.output=[])}}},zeroMemory=(e,r)=>(HEAPU8.fill(0,e,e+r),e),mmapAlloc=e=>{e=alignMemory(e,65536);var r=_emscripten_builtin_memalign(65536,e);return r?zeroMemory(r,e):0},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 a=FS.createNode(e,r,t,n);return FS.isDir(a.mode)?(a.node_ops=MEMFS.ops_table.dir.node,a.stream_ops=MEMFS.ops_table.dir.stream,a.contents={}):FS.isFile(a.mode)?(a.node_ops=MEMFS.ops_table.file.node,a.stream_ops=MEMFS.ops_table.file.stream,a.usedBytes=0,a.contents=null):FS.isLink(a.mode)?(a.node_ops=MEMFS.ops_table.link.node,a.stream_ops=MEMFS.ops_table.link.stream):FS.isChrdev(a.mode)&&(a.node_ops=MEMFS.ops_table.chrdev.node,a.stream_ops=MEMFS.ops_table.chrdev.stream),a.timestamp=Date.now(),e&&(e.contents[r]=a,e.timestamp=a.timestamp),a},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 a=e.contents;e.contents=new Uint8Array(r),e.usedBytes>0&&e.contents.set(a.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.timestamp),r.mtime=new Date(e.timestamp),r.ctime=new Date(e.timestamp),r.blksize=4096,r.blocks=Math.ceil(r.size/r.blksize),r},setattr(e,r){r.mode!==void 0&&(e.mode=r.mode),r.timestamp!==void 0&&(e.timestamp=r.timestamp),r.size!==void 0&&MEMFS.resizeFileStorage(e,r.size)},lookup(e,r){throw FS.genericErrors[44]},mknod(e,r,t,n){return MEMFS.createNode(e,r,t,n)},rename(e,r,t){if(FS.isDir(e.mode)){var n;try{n=FS.lookupNode(r,t)}catch{}if(n)for(var a in n.contents)throw new FS.ErrnoError(55)}delete e.parent.contents[e.name],e.parent.timestamp=Date.now(),e.name=t,r.contents[t]=e,r.timestamp=e.parent.timestamp},unlink(e,r){delete e.contents[r],e.timestamp=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.timestamp=Date.now()},readdir(e){var r=[".",".."];for(var t of Object.keys(e.contents))r.push(t);return r},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,a){var o=e.node.contents;if(a>=e.node.usedBytes)return 0;var _=Math.min(e.node.usedBytes-a,n);if(_>8&&o.subarray)r.set(o.subarray(a,a+_),t);else for(var c=0;c<_;c++)r[t+c]=o[a+c];return _},write(e,r,t,n,a,o){if(r.buffer===HEAP8.buffer&&(o=!1),!n)return 0;var _=e.node;if(_.timestamp=Date.now(),r.subarray&&(!_.contents||_.contents.subarray)){if(o)return _.contents=r.subarray(t,t+n),_.usedBytes=n,n;if(_.usedBytes===0&&a===0)return _.contents=r.slice(t,t+n),_.usedBytes=n,n;if(a+n<=_.usedBytes)return _.contents.set(r.subarray(t,t+n),a),n}if(MEMFS.expandFileStorage(_,a+n),_.contents.subarray&&r.subarray)_.contents.set(r.subarray(t,t+n),a);else for(var c=0;c<n;c++)_.contents[a+c]=r[t+c];return _.usedBytes=Math.max(_.usedBytes,a+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,a){if(!FS.isFile(e.node.mode))throw new FS.ErrnoError(43);var o,_,c=e.node.contents;if(!(a&2)&&c&&c.buffer===HEAP8.buffer)_=!1,o=c.byteOffset;else{if(_=!0,o=mmapAlloc(r),!o)throw new FS.ErrnoError(48);c&&((t>0||t+r<c.length)&&(c.subarray?c=c.subarray(t,t+r):c=Array.prototype.slice.call(c,t,t+r)),HEAP8.set(c,o>>>0))}return{ptr:o,allocated:_}},msync(e,r,t,n,a){return MEMFS.stream_ops.write(e,r,0,n,t,!1),0}}},FS_createDataFile=(e,r,t,n,a,o)=>{FS.createDataFile(e,r,t,n,a,o)},FS_handledByPreloadPlugin=(e,r,t,n)=>{typeof Browser<"u"&&Browser.init();var a=!1;return preloadPlugins.forEach(o=>{a||o.canHandle(r)&&(o.handle(e,r,t,n),a=!0)}),a},FS_createPreloadedFile=(e,r,t,n,a,o,_,c,l,u)=>{var d=r?PATH_FS.resolve(PATH.join2(e,r)):e,p=`cp ${d}`;function g(v){function w(S){u?.(),c||FS_createDataFile(e,r,S,n,a,l),o?.(),removeRunDependency(p)}FS_handledByPreloadPlugin(v,d,w,()=>{_?.(),removeRunDependency(p)})||w(v)}addRunDependency(p),typeof t=="string"?asyncLoad(t,g,_):g(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},IDBFS={dbs:{},indexedDB:()=>{if(typeof indexedDB<"u")return indexedDB;var e=null;return typeof window=="object"&&(e=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB),e},DB_VERSION:21,DB_STORE_NAME:"FILE_DATA",queuePersist:e=>{function r(){e.idbPersistState==="again"?t():e.idbPersistState=0}function t(){e.idbPersistState="idb",IDBFS.syncfs(e,!1,r)}e.idbPersistState?e.idbPersistState==="idb"&&(e.idbPersistState="again"):e.idbPersistState=setTimeout(t,0)},mount:e=>{var r=MEMFS.mount(e);if(e?.opts?.autoPersist){r.idbPersistState=0;var t=r.node_ops;r.node_ops=Object.assign({},r.node_ops),r.node_ops.mknod=(n,a,o,_)=>{var c=t.mknod(n,a,o,_);return c.node_ops=r.node_ops,c.idbfs_mount=r.mount,c.memfs_stream_ops=c.stream_ops,c.stream_ops=Object.assign({},c.stream_ops),c.stream_ops.write=(l,u,d,p,g,v)=>(l.node.isModified=!0,c.memfs_stream_ops.write(l,u,d,p,g,v)),c.stream_ops.close=l=>{var u=l.node;if(u.isModified&&(IDBFS.queuePersist(u.idbfs_mount),u.isModified=!1),u.memfs_stream_ops.close)return u.memfs_stream_ops.close(l)},c},r.node_ops.mkdir=(...n)=>(IDBFS.queuePersist(r.mount),t.mkdir(...n)),r.node_ops.rmdir=(...n)=>(IDBFS.queuePersist(r.mount),t.rmdir(...n)),r.node_ops.symlink=(...n)=>(IDBFS.queuePersist(r.mount),t.symlink(...n)),r.node_ops.unlink=(...n)=>(IDBFS.queuePersist(r.mount),t.unlink(...n)),r.node_ops.rename=(...n)=>(IDBFS.queuePersist(r.mount),t.rename(...n))}return r},syncfs:(e,r,t)=>{IDBFS.getLocalSet(e,(n,a)=>{if(n)return t(n);IDBFS.getRemoteSet(e,(o,_)=>{if(o)return t(o);var c=r?_:a,l=r?a:_;IDBFS.reconcile(c,l,t)})})},quit:()=>{Object.values(IDBFS.dbs).forEach(e=>e.close()),IDBFS.dbs={}},getDB:(e,r)=>{var t=IDBFS.dbs[e];if(t)return r(null,t);var n;try{n=IDBFS.indexedDB().open(e,IDBFS.DB_VERSION)}catch(a){return r(a)}if(!n)return r("Unable to connect to IndexedDB");n.onupgradeneeded=a=>{var o=a.target.result,_=a.target.transaction,c;o.objectStoreNames.contains(IDBFS.DB_STORE_NAME)?c=_.objectStore(IDBFS.DB_STORE_NAME):c=o.createObjectStore(IDBFS.DB_STORE_NAME),c.indexNames.contains("timestamp")||c.createIndex("timestamp","timestamp",{unique:!1})},n.onsuccess=()=>{t=n.result,IDBFS.dbs[e]=t,r(null,t)},n.onerror=a=>{r(a.target.error),a.preventDefault()}},getLocalSet:(e,r)=>{var t={};function n(l){return l!=="."&&l!==".."}function a(l){return u=>PATH.join2(l,u)}for(var o=FS.readdir(e.mountpoint).filter(n).map(a(e.mountpoint));o.length;){var _=o.pop(),c;try{c=FS.stat(_)}catch(l){return r(l)}FS.isDir(c.mode)&&o.push(...FS.readdir(_).filter(n).map(a(_))),t[_]={timestamp:c.mtime}}return r(null,{type:"local",entries:t})},getRemoteSet:(e,r)=>{var t={};IDBFS.getDB(e.mountpoint,(n,a)=>{if(n)return r(n);try{var o=a.transaction([IDBFS.DB_STORE_NAME],"readonly");o.onerror=l=>{r(l.target.error),l.preventDefault()};var _=o.objectStore(IDBFS.DB_STORE_NAME),c=_.index("timestamp");c.openKeyCursor().onsuccess=l=>{var u=l.target.result;if(!u)return r(null,{type:"remote",db:a,entries:t});t[u.primaryKey]={timestamp:u.key},u.continue()}}catch(l){return r(l)}})},loadLocalEntry:(e,r)=>{var t,n;try{var a=FS.lookupPath(e);n=a.node,t=FS.stat(e)}catch(o){return r(o)}return FS.isDir(t.mode)?r(null,{timestamp:t.mtime,mode:t.mode}):FS.isFile(t.mode)?(n.contents=MEMFS.getFileDataAsTypedArray(n),r(null,{timestamp:t.mtime,mode:t.mode,contents:n.contents})):r(new Error("node type not supported"))},storeLocalEntry:(e,r,t)=>{const n=FS.ignorePermissions;try{if(FS.ignorePermissions=!0,FS.isDir(r.mode))FS.mkdirTree(e,r.mode);else if(FS.isFile(r.mode))FS.writeFile(e,r.contents,{canOwn:!0});else return t(new Error("node type not supported"));FS.chmod(e,r.mode),FS.utime(e,r.timestamp,r.timestamp)}catch(a){return t(a)}finally{FS.ignorePermissions=n}t(null)},removeLocalEntry:(e,r)=>{try{var t=FS.stat(e);FS.isDir(t.mode)?FS.rmdir(e):FS.isFile(t.mode)&&FS.unlink(e)}catch(n){return r(n)}r(null)},loadRemoteEntry:(e,r,t)=>{var n=e.get(r);n.onsuccess=a=>t(null,a.target.result),n.onerror=a=>{t(a.target.error),a.preventDefault()}},storeRemoteEntry:(e,r,t,n)=>{try{var a=e.put(t,r)}catch(o){n(o);return}a.onsuccess=o=>n(),a.onerror=o=>{n(o.target.error),o.preventDefault()}},removeRemoteEntry:(e,r,t)=>{var n=e.delete(r);n.onsuccess=a=>t(),n.onerror=a=>{t(a.target.error),a.preventDefault()}},reconcile:(e,r,t)=>{var n=0,a=[];Object.keys(e.entries).forEach(p=>{var g=e.entries[p],v=r.entries[p];(!v||g.timestamp.getTime()!=v.timestamp.getTime())&&(a.push(p),n++)});var o=[];if(Object.keys(r.entries).forEach(p=>{e.entries[p]||(o.push(p),n++)}),!n)return t(null);var _=!1,c=e.type==="remote"?e.db:r.db,l=c.transaction([IDBFS.DB_STORE_NAME],"readwrite"),u=l.objectStore(IDBFS.DB_STORE_NAME);function d(p){if(p&&!_)return _=!0,t(p)}l.onerror=l.onabort=p=>{d(p.target.error),p.preventDefault()},l.oncomplete=p=>{_||t(null)},a.sort().forEach(p=>{r.type==="local"?IDBFS.loadRemoteEntry(u,p,(g,v)=>{if(g)return d(g);IDBFS.storeLocalEntry(p,v,d)}):IDBFS.loadLocalEntry(p,(g,v)=>{if(g)return d(g);IDBFS.storeRemoteEntry(u,p,v,d)})}),o.sort().reverse().forEach(p=>{r.type==="local"?IDBFS.removeLocalEntry(p,d):IDBFS.removeRemoteEntry(u,p,d)})}},FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:!1,ignorePermissions:!0,ErrnoError:class{constructor(e){this.name="ErrnoError",this.errno=e}},genericErrors:{},filesystems:null,syncFSRequests:0,readFiles:{},FSStream:class{constructor(){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){e||(e=this),this.parent=e,this.mount=e.mount,this.mounted=null,this.id=FS.nextInode++,this.name=r,this.mode=t,this.node_ops={},this.stream_ops={},this.rdev=n,this.readMode=365,this.writeMode=146}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=PATH_FS.resolve(e),!e)return{path:"",node:null};var t={follow_mount:!0,recurse_count:0};if(r=Object.assign(t,r),r.recurse_count>8)throw new FS.ErrnoError(32);for(var n=e.split("/").filter(p=>!!p),a=FS.root,o="/",_=0;_<n.length;_++){var c=_===n.length-1;if(c&&r.parent)break;if(a=FS.lookupNode(a,n[_]),o=PATH.join2(o,n[_]),FS.isMountpoint(a)&&(!c||c&&r.follow_mount)&&(a=a.mounted.root),!c||r.follow)for(var l=0;FS.isLink(a.mode);){var u=FS.readlink(o);o=PATH_FS.resolve(PATH.dirname(o),u);var d=FS.lookupPath(o,{recurse_count:r.recurse_count+1});if(a=d.node,l++>40)throw new FS.ErrnoError(32)}}return{path:o,node:a}},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),a=FS.nameTable[n];a;a=a.name_next){var o=a.name;if(a.parent.id===e.id&&o===r)return a}return FS.lookup(e,r)},createNode(e,r,t,n){var a=new FS.FSNode(e,r,t,n);return FS.hashAddNode(a),a},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){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(o){return o.errno}var a=FS.nodePermissions(e,"wx");if(a)return a;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 a(_){return FS.syncFSRequests--,r(_)}function o(_){if(_)return o.errored?void 0:(o.errored=!0,a(_));++n>=t.length&&a(null)}t.forEach(_=>{if(!_.type.syncfs)return o(null);_.type.syncfs(_,e,o)})},mount(e,r,t){var n=t==="/",a=!t,o;if(n&&FS.root)throw new FS.ErrnoError(10);if(!n&&!a){var _=FS.lookupPath(t,{follow_mount:!1});if(t=_.path,o=_.node,FS.isMountpoint(o))throw new FS.ErrnoError(10);if(!FS.isDir(o.mode))throw new FS.ErrnoError(54)}var c={type:e,opts:r,mountpoint:t,mounts:[]},l=e.mount(c);return l.mount=c,c.root=l,n?FS.root=l:o&&(o.mounted=c,o.mount&&o.mount.mounts.push(c)),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,a=FS.getMounts(n);Object.keys(FS.nameTable).forEach(_=>{for(var c=FS.nameTable[_];c;){var l=c.name_next;a.includes(c.mount)&&FS.destroyNode(c),c=l}}),t.mounted=null;var o=t.mount.mounts.indexOf(n);t.mount.mounts.splice(o,1)},lookup(e,r){return e.node_ops.lookup(e,r)},mknod(e,r,t){var n=FS.lookupPath(e,{parent:!0}),a=n.node,o=PATH.basename(e);if(!o||o==="."||o==="..")throw new FS.ErrnoError(28);var _=FS.mayCreate(a,o);if(_)throw new FS.ErrnoError(_);if(!a.node_ops.mknod)throw new FS.ErrnoError(63);return a.node_ops.mknod(a,o,r,t)},create(e,r){return r=r!==void 0?r:438,r&=4095,r|=32768,FS.mknod(e,r,0)},mkdir(e,r){return r=r!==void 0?r:511,r&=1023,r|=16384,FS.mknod(e,r,0)},mkdirTree(e,r){for(var t=e.split("/"),n="",a=0;a<t.length;++a)if(t[a]){n+="/"+t[a];try{FS.mkdir(n,r)}catch(o){if(o.errno!=20)throw o}}},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 a=PATH.basename(r),o=FS.mayCreate(n,a);if(o)throw new FS.ErrnoError(o);if(!n.node_ops.symlink)throw new FS.ErrnoError(63);return n.node_ops.symlink(n,a,e)},rename(e,r){var t=PATH.dirname(e),n=PATH.dirname(r),a=PATH.basename(e),o=PATH.basename(r),_,c,l;if(_=FS.lookupPath(e,{parent:!0}),c=_.node,_=FS.lookupPath(r,{parent:!0}),l=_.node,!c||!l)throw new FS.ErrnoError(44);if(c.mount!==l.mount)throw new FS.ErrnoError(75);var u=FS.lookupNode(c,a),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 p;try{p=FS.lookupNode(l,o)}catch{}if(u!==p){var g=FS.isDir(u.mode),v=FS.mayDelete(c,a,g);if(v)throw new FS.ErrnoError(v);if(v=p?FS.mayDelete(l,o,g):FS.mayCreate(l,o),v)throw new FS.ErrnoError(v);if(!c.node_ops.rename)throw new FS.ErrnoError(63);if(FS.isMountpoint(u)||p&&FS.isMountpoint(p))throw new FS.ErrnoError(10);if(l!==c&&(v=FS.nodePermissions(c,"w"),v))throw new FS.ErrnoError(v);FS.hashRemoveNode(u);try{c.node_ops.rename(u,l,o),u.parent=l}catch(w){throw w}finally{FS.hashAddNode(u)}}},rmdir(e){var r=FS.lookupPath(e,{parent:!0}),t=r.node,n=PATH.basename(e),a=FS.lookupNode(t,n),o=FS.mayDelete(t,n,!0);if(o)throw new FS.ErrnoError(o);if(!t.node_ops.rmdir)throw new FS.ErrnoError(63);if(FS.isMountpoint(a))throw new FS.ErrnoError(10);t.node_ops.rmdir(t,n),FS.destroyNode(a)},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),a=FS.lookupNode(t,n),o=FS.mayDelete(t,n,!1);if(o)throw new FS.ErrnoError(o);if(!t.node_ops.unlink)throw new FS.ErrnoError(63);if(FS.isMountpoint(a))throw new FS.ErrnoError(10);t.node_ops.unlink(t,n),FS.destroyNode(a)},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 PATH_FS.resolve(FS.getPath(t.parent),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 a=FS.lookupPath(e,{follow:!t});n=a.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,timestamp: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 a;if(typeof e=="string"){var o=FS.lookupPath(e,{follow:!n});a=o.node}else a=e;if(!a.node_ops.setattr)throw new FS.ErrnoError(63);a.node_ops.setattr(a,{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 a=FS.nodePermissions(t,"w");if(a)throw new FS.ErrnoError(a);t.node_ops.setattr(t,{size:r,timestamp:Date.now()})},ftruncate(e,r){var t=FS.getStreamChecked(e);if((t.flags&2097155)===0)throw new FS.ErrnoError(28);FS.truncate(t.node,r)},utime(e,r,t){var n=FS.lookupPath(e,{follow:!0}),a=n.node;a.node_ops.setattr(a,{timestamp:Math.max(r,t)})},open(e,r,t){if(e==="")throw new FS.ErrnoError(44);r=typeof r=="string"?FS_modeStringToFlags(r):r,r&64?(t=typeof t>"u"?438:t,t=t&4095|32768):t=0;var n;if(typeof e=="object")n=e;else{e=PATH.normalize(e);try{var a=FS.lookupPath(e,{follow:!(r&131072)});n=a.node}catch{}}var o=!1;if(r&64)if(n){if(r&128)throw new FS.ErrnoError(20)}else n=FS.mknod(e,t,0),o=!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(!o){var _=FS.mayOpen(n,r);if(_)throw new FS.ErrnoError(_)}r&512&&!o&&FS.truncate(n,0),r&=-131713;var c=FS.createStream({node:n,path:FS.getPath(n),flags:r,seekable:!0,position:0,stream_ops:n.stream_ops,ungotten:[],error:!1});return c.stream_ops.open&&c.stream_ops.open(c),Module.logReadFiles&&!(r&1)&&(e in FS.readFiles||(FS.readFiles[e]=1)),c},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,a){if(n<0||a<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 o=typeof a<"u";if(!o)a=e.position;else if(!e.seekable)throw new FS.ErrnoError(70);var _=e.stream_ops.read(e,r,t,n,a);return o||(e.position+=_),_},write(e,r,t,n,a,o){if(n<0||a<0)throw new FS.ErrnoError(28);if(FS.isClosed(e))throw new FS.ErrnoError(8);if((e.flags&2097155)===0)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 _=typeof a<"u";if(!_)a=e.position;else if(!e.seekable)throw new FS.ErrnoError(70);var c=e.stream_ops.write(e,r,t,n,a,o);return _||(e.position+=c),c},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)===0)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,a){if((n&2)!==0&&(a&2)===0&&(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,a)},msync(e,r,t,n,a){return e.stream_ops.msync?e.stream_ops.msync(e,r,t,n,a):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),a=FS.stat(e),o=a.size,_=new Uint8Array(o);return FS.read(n,_,0,o,0),r.encoding==="utf8"?t=UTF8ArrayToString(_,0):r.encoding==="binary"&&(t=_),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 a=new Uint8Array(lengthBytesUTF8(r)+1),o=stringToUTF8Array(r,a,0,a.length);FS.write(n,a,0,o,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,a,o,_,c)=>_}),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.node_ops={lookup(t,n){var a=+n,o=FS.getStreamChecked(a),_={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:()=>o.path}};return _.parent=_,_}},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),a=FS.open("/dev/stdout",1),o=FS.open("/dev/stderr",1)},staticInit(){[44].forEach(e=>{FS.genericErrors[e]=new FS.ErrnoError(e),FS.genericErrors[e].stack="<generic error, no stack>"}),FS.nameTable=new Array(4096),FS.mount(MEMFS,{},"/"),FS.createDefaultDirectories(),FS.createDefaultDevices(),FS.createSpecialDirectories(),FS.filesystems={MEMFS,IDBFS}},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(a){n.error=a.errno}return n},createPath(e,r,t,n){e=typeof e=="string"?e:FS.getPath(e);for(var a=r.split("/").reverse();a.length;){var o=a.pop();if(o){var _=PATH.join2(e,o);try{FS.mkdir(_)}catch{}e=_}}return _},createFile(e,r,t,n,a){var o=PATH.join2(typeof e=="string"?e:FS.getPath(e),r),_=FS_getMode(n,a);return FS.create(o,_)},createDataFile(e,r,t,n,a,o){var _=r;e&&(e=typeof e=="string"?e:FS.getPath(e),_=r?PATH.join2(e,r):e);var c=FS_getMode(n,a),l=FS.create(_,c);if(t){if(typeof t=="string"){for(var u=new Array(t.length),d=0,p=t.length;d<p;++d)u[d]=t.charCodeAt(d);t=u}FS.chmod(l,c|146);var g=FS.open(l,577);FS.write(g,t,0,t.length,0,o),FS.close(g),FS.chmod(l,c)}},createDevice(e,r,t,n){var a,o=PATH.join2(typeof e=="string"?e:FS.getPath(e),r),_=FS_getMode(!!t,!!n);(a=FS.createDevice).major??(a.major=64);var c=FS.makedev(FS.createDevice.major++,0);return FS.registerDevice(c,{open(l){l.seekable=!1},close(l){n?.buffer?.length&&n(10)},read(l,u,d,p,g){for(var v=0,w=0;w<p;w++){var S;try{S=t()}catch{throw new FS.ErrnoError(29)}if(S===void 0&&v===0)throw new FS.ErrnoError(6);if(S==null)break;v++,u[d+w]=S}return v&&(l.node.timestamp=Date.now()),v},write(l,u,d,p,g){for(var v=0;v<p;v++)try{n(u[d+v])}catch{throw new FS.ErrnoError(29)}return p&&(l.node.timestamp=Date.now()),v}}),FS.mkdev(o,_,c)},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,a){class o{constructor(){this.lengthKnown=!1,this.chunks=[]}get(v){if(!(v>this.length-1||v<0)){var w=v%this.chunkSize,S=v/this.chunkSize|0;return this.getter(S)[w]}}setDataGetter(v){this.getter=v}cacheLength(){var v=new XMLHttpRequest;if(v.open("HEAD",t,!1),v.send(null),!(v.status>=200&&v.status<300||v.status===304))throw new Error("Couldn't load "+t+". Status: "+v.status);var w=Number(v.getResponseHeader("Content-length")),S,F=(S=v.getResponseHeader("Accept-Ranges"))&&S==="bytes",f=(S=v.getResponseHeader("Content-Encoding"))&&S==="gzip",m=1024*1024;F||(m=w);var y=(E,k)=>{if(E>k)throw new Error("invalid range ("+E+", "+k+") or no bytes requested!");if(k>w-1)throw new Error("only "+w+" bytes available! programmer error!");var h=new XMLHttpRequest;if(h.open("GET",t,!1),w!==m&&h.setRequestHeader("Range","bytes="+E+"-"+k),h.responseType="arraybuffer",h.overrideMimeType&&h.overrideMimeType("text/plain; charset=x-user-defined"),h.send(null),!(h.status>=200&&h.status<300||h.status===304))throw new Error("Couldn't load "+t+". Status: "+h.status);return h.response!==void 0?new Uint8Array(h.response||[]):intArrayFromString(h.responseText||"",!0)},b=this;b.setDataGetter(E=>{var k=E*m,h=(E+1)*m-1;if(h=Math.min(h,w-1),typeof b.chunks[E]>"u"&&(b.chunks[E]=y(k,h)),typeof b.chunks[E]>"u")throw new Error("doXHR failed!");return b.chunks[E]}),(f||!w)&&(m=w=1,w=this.getter(0).length,m=w,out("LazyFiles on gzip forces download of the whole file when length is accessed")),this._length=w,this._chunkSize=m,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 _=new o,c={isDevice:!1,contents:_}}else var c={isDevice:!1,url:t};var l=FS.createFile(e,r,c,n,a);c.contents?l.contents=c.contents:c.url&&(l.contents=null,l.url=c.url),Object.defineProperties(l,{usedBytes:{get:function(){return this.contents.length}}});var u={},d=Object.keys(l.stream_ops);d.forEach(g=>{var v=l.stream_ops[g];u[g]=(...w)=>(FS.forceLoadFile(l),v(...w))});function p(g,v,w,S,F){var f=g.node.contents;if(F>=f.length)return 0;var m=Math.min(f.length-F,S);if(f.slice)for(var y=0;y<m;y++)v[w+y]=f[F+y];else for(var y=0;y<m;y++)v[w+y]=f.get(F+y);return m}return u.read=(g,v,w,S,F)=>(FS.forceLoadFile(l),p(g,v,w,S,F)),u.mmap=(g,v,w,S,F)=>{FS.forceLoadFile(l);var f=mmapAlloc(v);if(!f)throw new FS.ErrnoError(48);return p(g,HEAP8,f,v,w),{ptr:f,allocated:!0}},l.stream_ops=u,l}},SYSCALLS={DEFAULT_POLLMASK:5,calculateAt(e,r,t){if(PATH.isAbs(r))return r;var n;if(e===-100)n=FS.cwd();else{var a=SYSCALLS.getStreamFromFD(e);n=a.path}if(r.length==0){if(!t)throw new FS.ErrnoError(44);return n}return PATH.join2(n,r)},doStat(e,r,t){var n=e(r);HEAP32[t>>>2>>>0]=n.dev,HEAP32[t+4>>>2>>>0]=n.mode,HEAPU32[t+8>>>2>>>0]=n.nlink,HEAP32[t+12>>>2>>>0]=n.uid,HEAP32[t+16>>>2>>>0]=n.gid,HEAP32[t+20>>>2>>>0]=n.rdev,HEAP64[t+24>>>3]=BigInt(n.size),HEAP32[t+32>>>2>>>0]=4096,HEAP32[t+36>>>2>>>0]=n.blocks;var a=n.atime.getTime(),o=n.mtime.getTime(),_=n.ctime.getTime();return HEAP64[t+40>>>3]=BigInt(Math.floor(a/1e3)),HEAPU32[t+48>>>2>>>0]=a%1e3*1e3*1e3,HEAP64[t+56>>>3]=BigInt(Math.floor(o/1e3)),HEAPU32[t+64>>>2>>>0]=o%1e3*1e3*1e3,HEAP64[t+72>>>3]=BigInt(Math.floor(_/1e3)),HEAPU32[t+80>>>2>>>0]=_%1e3*1e3*1e3,HEAP64[t+88>>>3]=BigInt(n.ino),0},doMsync(e,r,t,n,a){if(!FS.isFile(r.node.mode))throw new FS.ErrnoError(43);if(n&2)return 0;var o=HEAPU8.slice(e,e+t);FS.msync(r,o,a,t,n)},getStreamFromFD(e){var r=FS.getStreamChecked(e);return r},varargs:void 0,getStr(e){var r=UTF8ToString(e);return r}};function ___syscall__newselect(e,r,t,n,a){r>>>=0,t>>>=0,n>>>=0,a>>>=0;try{for(var o=0,_=r?HEAP32[r>>>2>>>0]:0,c=r?HEAP32[r+4>>>2>>>0]:0,l=t?HEAP32[t>>>2>>>0]:0,u=t?HEAP32[t+4>>>2>>>0]:0,d=n?HEAP32[n>>>2>>>0]:0,p=n?HEAP32[n+4>>>2>>>0]:0,g=0,v=0,w=0,S=0,F=0,f=0,m=(r?HEAP32[r>>>2>>>0]:0)|(t?HEAP32[t>>>2>>>0]:0)|(n?HEAP32[n>>>2>>>0]:0),y=(r?HEAP32[r+4>>>2>>>0]:0)|(t?HEAP32[t+4>>>2>>>0]:0)|(n?HEAP32[n+4>>>2>>>0]:0),b=function(T,x,R,U){return T<32?x&U:R&U},E=0;E<e;E++){var k=1<<E%32;if(b(E,m,y,k)){var h=SYSCALLS.getStreamFromFD(E),A=SYSCALLS.DEFAULT_POLLMASK;if(h.stream_ops.poll){var P=-1;if(a){var M=r?HEAP32[a>>>2>>>0]:0,C=r?HEAP32[a+4>>>2>>>0]:0;P=(M+C/1e6)*1e3}A=h.stream_ops.poll(h,P)}A&1&&b(E,_,c,k)&&(E<32?g=g|k:v=v|k,o++),A&4&&b(E,l,u,k)&&(E<32?w=w|k:S=S|k,o++),A&2&&b(E,d,p,k)&&(E<32?F=F|k:f=f|k,o++)}}return r&&(HEAP32[r>>>2>>>0]=g,HEAP32[r+4>>>2>>>0]=v),t&&(HEAP32[t>>>2>>>0]=w,HEAP32[t+4>>>2>>>0]=S),n&&(HEAP32[n>>>2>>>0]=F,HEAP32[n+4>>>2>>>0]=f),o}catch(T){if(typeof FS>"u"||T.name!=="ErrnoError")throw T;return-T.errno}}___syscall__newselect.sig="iipppp";var SOCKFS={mount(e){return Module.websocket=Module.websocket&&typeof Module.websocket=="object"?Module.websocket:{},Module.websocket._callbacks={},Module.websocket.on=function(r,t){return typeof t=="function"&&(this._callbacks[r]=t),this},Module.websocket.emit=function(r,t){typeof this._callbacks[r]=="function"&&this._callbacks[r].call(this,t)},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 a={family:e,type:r,protocol:t,server:null,error:null,peers:{},pending:[],recv_queue:[],sock_ops:SOCKFS.websocket_sock_ops},o=SOCKFS.nextname(),_=FS.createNode(SOCKFS.root,o,49152,0);_.sock=a;var c=FS.createStream({path:o,node:_,flags:2,seekable:!1,stream_ops:SOCKFS.stream_ops});return a.stream=c,a},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,a){var o=e.node.sock,_=o.sock_ops.recvmsg(o,n);return _?(r.set(_.buffer,t),_.buffer.length):0},write(e,r,t,n,a){var o=e.node.sock;return o.sock_ops.sendmsg(o,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 a=/ws[s]?:\/\/([^:]+):(\d+)/.exec(n.url);if(!a)throw new Error("WebSocket URL must be in the format ws(s)://address:port");r=a[1],t=parseInt(a[2],10)}else try{var o=Module.websocket&&typeof Module.websocket=="object",_="ws:#".replace("#","//");if(o&&typeof Module.websocket.url=="string"&&(_=Module.websocket.url),_==="ws://"||_==="wss://"){var c=r.split("/");_=_+c[0]+":"+t+"/"+c.slice(1).join("/")}var l="binary";o&&typeof Module.websocket.subprotocol=="string"&&(l=Module.websocket.subprotocol);var u=void 0;l!=="null"&&(l=l.replace(/^ +| +$/g,"").split(/ *, */),u=l),o&&Module.websocket.subprotocol===null&&(l="null",u=void 0);var d;d=WebSocket,n=new d(_,u),n.binaryType="arraybuffer"}catch{throw new FS.ErrnoError(23)}var p={addr:r,port:t,socket:n,dgram_send_queue:[]};return SOCKFS.websocket_sock_ops.addPeer(e,p),SOCKFS.websocket_sock_ops.handlePeerEvents(e,p),e.type===2&&typeof e.sport<"u"&&p.dgram_send_queue.push(new Uint8Array([255,255,255,255,112,111,114,116,(e.sport&65280)>>8,e.sport&255])),p},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(){Module.websocket.emit("open",e.stream.fd);try{for(var o=r.dgram_send_queue.shift();o;)r.socket.send(o),o=r.dgram_send_queue.shift()}catch{r.socket.close()}};function a(o){if(typeof o=="string"){var _=new TextEncoder;o=_.encode(o)}else{if(assert(o.byteLength!==void 0),o.byteLength==0)return;o=new Uint8Array(o)}var c=t;if(t=!1,c&&o.length===10&&o[0]===255&&o[1]===255&&o[2]===255&&o[3]===255&&o[4]===112&&o[5]===111&&o[6]===114&&o[7]===116){var l=o[8]<<8|o[9];SOCKFS.websocket_sock_ops.removePeer(e,r),r.port=l,SOCKFS.websocket_sock_ops.addPeer(e,r);return}e.recv_queue.push({addr:r.addr,port:r.port,data:o}),Module.websocket.emit("message",e.stream.fd)}ENVIRONMENT_IS_NODE?(r.socket.on("open",n),r.socket.on("message",function(o,_){_&&a(new Uint8Array(o).buffer)}),r.socket.on("close",function(){Module.websocket.emit("close",e.stream.fd)}),r.socket.on("error",function(o){e.error=14,Module.websocket.emit("error",[e.stream.fd,e.error,"ECONNREFUSED: Connection refused"])})):(r.socket.onopen=n,r.socket.onclose=function(){Module.websocket.emit("close",e.stream.fd)},r.socket.onmessage=function(_){a(_.data)},r.socket.onerror=function(o){e.error=14,Module.websocket.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)&&(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>>>0]=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 a=SOCKFS.websocket_sock_ops.createPeer(e,r,t);throw e.daddr=a.addr,e.dport=a.port,new FS.ErrnoError(26)},listen(e,r){if(!ENVIRONMENT_IS_NODE)throw new FS.ErrnoError(138)},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,a,o){if(e.type===2){if((a===void 0||o===void 0)&&(a=e.daddr,o=e.dport),a===void 0||o===void 0)throw new FS.ErrnoError(17)}else a=e.daddr,o=e.dport;var _=SOCKFS.websocket_sock_ops.getPeer(e,a,o);if(e.type===1){if(!_||_.socket.readyState===_.socket.CLOSING||_.socket.readyState===_.socket.CLOSED)throw new FS.ErrnoError(53);if(_.socket.readyState===_.socket.CONNECTING)throw new FS.ErrnoError(6)}ArrayBuffer.isView(r)&&(t+=r.byteOffset,r=r.buffer);var c;if(c=r.slice(t,t+n),e.type===2&&(!_||_.socket.readyState!==_.socket.OPEN))return(!_||_.socket.readyState===_.socket.CLOSING||_.socket.readyState===_.socket.CLOSED)&&(_=SOCKFS.websocket_sock_ops.createPeer(e,a,o)),_.dgram_send_queue.push(c),n;try{return _.socket.send(c),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 a=t.data.byteLength||t.data.length,o=t.data.byteOffset||0,_=t.data.buffer||t.data,c=Math.min(r,a),l={buffer:new Uint8Array(_,o,c),addr:t.addr,port:t.port};if(e.type===1&&c<a){var u=a-c;t.data=new Uint8Array(_,o+c,u),e.recv_queue.unshift(t)}return l}}},getSocketFromFD=e=>{var r=SOCKFS.getSocket(e);if(!r)throw new FS.ErrnoError(8);return r},Sockets={BUFFER_SIZE:10240,MAX_BUFFER_SIZE:10485760,nextFd:1,fds:{},nextport:1,maxport:65535,peer:null,connections:{},portmap:{},localAddr:4261412874,addrPool:[33554442,50331658,67108874,83886090,100663306,117440522,134217738,150994954,167772170,184549386,201326602,218103818,234881034]},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,a,o,_=/^((?=.*::)(?!.*::.+::)(::)?([\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,c=[];if(!_.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,a=0,t=0;t<r.length;t++)if(typeof r[t]=="string")if(r[t]==="Z"){for(a=0;a<8-r.length+1;a++)c[t+a]=0;n=a-1}else c[t+n]=_htons(parseInt(r[t],16));else c[t+n]=r[t];return[c[1]<<16|c[0],c[3]<<16|c[2],c[5]<<16|c[4],c[7]<<16|c[6]]},writeSockaddr=(e,r,t,n,a)=>{switch(r){case 2:t=inetPton4(t),zeroMemory(e,16),a&&(HEAP32[a>>>2>>>0]=16),HEAP16[e>>>1>>>0]=r,HEAP32[e+4>>>2>>>0]=t,HEAP16[e+2>>>1>>>0]=_htons(n);break;case 10:t=inetPton6(t),zeroMemory(e,28),a&&(HEAP32[a>>>2>>>0]=28),HEAP32[e>>>2>>>0]=r,HEAP32[e+8>>>2>>>0]=t[0],HEAP32[e+12>>>2>>>0]=t[1],HEAP32[e+16>>>2>>>0]=t[2],HEAP32[e+20>>>2>>>0]=t[3],HEAP16[e+2>>>1>>>0]=_htons(n);break;default:return 5}return 0},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}};function ___syscall_accept4(e,r,t,n,a,o){r>>>=0,t>>>=0;try{var _=getSocketFromFD(e),c=_.sock_ops.accept(_);if(r)var l=writeSockaddr(r,c.family,DNS.lookup_name(c.daddr),c.dport,t);return c.stream.fd}catch(u){if(typeof FS>"u"||u.name!=="ErrnoError")throw u;return-u.errno}}___syscall_accept4.sig="iippiii";var inetNtop4=e=>(e&255)+"."+(e>>8&255)+"."+(e>>16&255)+"."+(e>>24&255),inetNtop6=e=>{var r="",t=0,n=0,a=0,o=0,_=0,c=0,l=[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(c=0;c<5;c++)if(l[c]!==0){u=!1;break}if(u){if(d=inetNtop4(l[6]|l[7]<<16),l[5]===-1)return r="::ffff:",r+=d,r;if(l[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++)l[t]===0&&(t-a>1&&(_=0),a=t,_++),_>n&&(n=_,o=t-n+1);for(t=0;t<8;t++){if(n>1&&l[t]===0&&t>=o&&t<o+n){t===o&&(r+=":",o===0&&(r+=":"));continue}r+=Number(_ntohs(l[t]&65535)).toString(16),r+=t<7?":":""}return r},readSockaddr=(e,r)=>{var t=HEAP16[e>>>1>>>0],n=_ntohs(HEAPU16[e+2>>>1>>>0]),a;switch(t){case 2:if(r!==16)return{errno:28};a=HEAP32[e+4>>>2>>>0],a=inetNtop4(a);break;case 10:if(r!==28)return{errno:28};a=[HEAP32[e+8>>>2>>>0],HEAP32[e+12>>>2>>>0],HEAP32[e+16>>>2>>>0],HEAP32[e+20>>>2>>>0]],a=inetNtop6(a);break;default:return{errno:5}}return{family:t,addr:a,port:n}},getSocketAddress=(e,r,t)=>{if(t&&e===0)return null;var n=readSockaddr(e,r);if(n.errno)throw new FS.ErrnoError(n.errno);return n.addr=DNS.lookup_addr(n.addr)||n.addr,n};function ___syscall_bind(e,r,t,n,a,o){r>>>=0,t>>>=0;try{var _=getSocketFromFD(e),c=getSocketAddress(r,t);return _.sock_ops.bind(_,c.addr,c.port),0}catch(l){if(typeof FS>"u"||l.name!=="ErrnoError")throw l;return-l.errno}}___syscall_bind.sig="iippiii";function ___syscall_chdir(e){e>>>=0;try{return e=SYSCALLS.getStr(e),FS.chdir(e),0}catch(r){if(typeof FS>"u"||r.name!=="ErrnoError")throw r;return-r.errno}}___syscall_chdir.sig="ip";function ___syscall_chmod(e,r){e>>>=0;try{return e=SYSCALLS.getStr(e),FS.chmod(e,r),0}catch(t){if(typeof FS>"u"||t.name!=="ErrnoError")throw t;return-t.errno}}___syscall_chmod.sig="ipi";function ___syscall_connect(e,r,t,n,a,o){r>>>=0,t>>>=0;try{var _=getSocketFromFD(e),c=getSocketAddress(r,t);return _.sock_ops.connect(_,c.addr,c.port),0}catch(l){if(typeof FS>"u"||l.name!=="ErrnoError")throw l;return-l.errno}}___syscall_connect.sig="iippiii";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 a=FS.getStream(r);return a&&FS.close(a),FS.dupStream(n,r).fd}catch(o){if(typeof FS>"u"||o.name!=="ErrnoError")throw o;return-o.errno}}___syscall_dup3.sig="iiii";function ___syscall_faccessat(e,r,t,n){r>>>=0;try{if(r=SYSCALLS.getStr(r),r=SYSCALLS.calculateAt(e,r),t&-8)return-28;var a=FS.lookupPath(r,{follow:!0}),o=a.node;if(!o)return-44;var _="";return t&4&&(_+="r"),t&2&&(_+="w"),t&1&&(_+="x"),_&&FS.nodePermissions(o,_)?-2:0}catch(c){if(typeof FS>"u"||c.name!=="ErrnoError")throw c;return-c.errno}}___syscall_faccessat.sig="iipii";var ___syscall_fadvise64=(e,r,t,n)=>0;___syscall_fadvise64.sig="iijji";function ___syscall_fallocate(e,r,t,n){t=bigintToI53Checked(t),n=bigintToI53Checked(n);try{if(isNaN(t))return 61;var a=SYSCALLS.getStreamFromFD(e);return FS.allocate(a,t,n),0}catch(o){if(typeof FS>"u"||o.name!=="ErrnoError")throw o;return-o.errno}}___syscall_fallocate.sig="iiijj";function ___syscall_fchdir(e){try{var r=SYSCALLS.getStreamFromFD(e);return FS.chdir(r.path),0}catch(t){if(typeof FS>"u"||t.name!=="ErrnoError")throw t;return-t.errno}}___syscall_fchdir.sig="ii";function ___syscall_fchmod(e,r){try{return FS.fchmod(e,r),0}catch(t){if(typeof FS>"u"||t.name!=="ErrnoError")throw t;return-t.errno}}___syscall_fchmod.sig="iii";function ___syscall_fchmodat2(e,r,t,n){r>>>=0;try{var a=n&256;return r=SYSCALLS.getStr(r),r=SYSCALLS.calculateAt(e,r),FS.chmod(r,t,a),0}catch(o){if(typeof FS>"u"||o.name!=="ErrnoError")throw o;return-o.errno}}___syscall_fchmodat2.sig="iipii";function ___syscall_fchown32(e,r,t){try{return FS.fchown(e,r,t),0}catch(n){if(typeof FS>"u"||n.name!=="ErrnoError")throw n;return-n.errno}}___syscall_fchown32.sig="iiii";function ___syscall_fchownat(e,r,t,n,a){r>>>=0;try{r=SYSCALLS.getStr(r);var o=a&256;return a=a&-257,r=SYSCALLS.calculateAt(e,r),(o?FS.lchown:FS.chown)(r,t,n),0}catch(_){if(typeof FS>"u"||_.name!=="ErrnoError")throw _;return-_.errno}}___syscall_fchownat.sig="iipiii";function syscallGetVarargI(){var e=HEAP32[+SYSCALLS.varargs>>>2>>>0];return SYSCALLS.varargs+=4,e}var syscallGetVarargP=syscallGetVarargI;function ___syscall_fcntl64(e,r,t){t>>>=0,SYSCALLS.varargs=t;try{var n=SYSCALLS.getStreamFromFD(e);switch(r){case 0:{var a=syscallGetVarargI();if(a<0)return-28;for(;FS.streams[a];)a++;var o;return o=FS.dupStream(n,a),o.fd}case 1:case 2:return 0;case 3:return n.flags;case 4:{var a=syscallGetVarargI();return n.flags|=a,0}case 12:{var a=syscallGetVarargP(),_=0;return HEAP16[a+_>>>1>>>0]=2,0}case 13:case 14:return 0}return-28}catch(c){if(typeof FS>"u"||c.name!=="ErrnoError")throw c;return-c.errno}}___syscall_fcntl64.sig="iiip";function ___syscall_fdatasync(e){try{var r=SYSCALLS.getStreamFromFD(e);return 0}catch(t){if(typeof FS>"u"||t.name!=="ErrnoError")throw t;return-t.errno}}___syscall_fdatasync.sig="ii";function ___syscall_fstat64(e,r){r>>>=0;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";function ___syscall_statfs64(e,r,t){e>>>=0,r>>>=0,t>>>=0;try{return e=SYSCALLS.getStr(e),HEAP32[t+4>>>2>>>0]=4096,HEAP32[t+40>>>2>>>0]=4096,HEAP32[t+8>>>2>>>0]=1e6,HEAP32[t+12>>>2>>>0]=5e5,HEAP32[t+16>>>2>>>0]=5e5,HEAP32[t+20>>>2>>>0]=FS.nextInode,HEAP32[t+24>>>2>>>0]=1e6,HEAP32[t+28>>>2>>>0]=42,HEAP32[t+44>>>2>>>0]=2,HEAP32[t+36>>>2>>>0]=255,0}catch(n){if(typeof FS>"u"||n.name!=="ErrnoError")throw n;return-n.errno}}___syscall_statfs64.sig="ippp";function ___syscall_fstatfs64(e,r,t){r>>>=0,t>>>=0;try{var n=SYSCALLS.getStreamFromFD(e);return ___syscall_statfs64(0,r,t)}catch(a){if(typeof FS>"u"||a.name!=="ErrnoError")throw a;return-a.errno}}___syscall_fstatfs64.sig="iipp";function ___syscall_ftruncate64(e,r){r=bigintToI53Checked(r);try{return isNaN(r)?61:(FS.ftruncate(e,r),0)}catch(t){if(typeof FS>"u"||t.name!=="ErrnoError")throw t;return-t.errno}}___syscall_ftruncate64.sig="iij";var stringToUTF8=(e,r,t)=>stringToUTF8Array(e,HEAPU8,r,t);function ___syscall_getcwd(e,r){e>>>=0,r>>>=0;try{if(r===0)return-28;var t=FS.cwd(),n=lengthBytesUTF8(t)+1;return r<n?-68:(stringToUTF8(t,e,r),n)}catch(a){if(typeof FS>"u"||a.name!=="ErrnoError")throw a;return-a.errno}}___syscall_getcwd.sig="ipp";function ___syscall_getdents64(e,r,t){r>>>=0,t>>>=0;try{var n=SYSCALLS.getStreamFromFD(e);n.getdents||(n.getdents=FS.readdir(n.path));for(var a=280,o=0,_=FS.llseek(n,0,1),c=Math.floor(_/a);c<n.getdents.length&&o+a<=t;){var l,u,d=n.getdents[c];if(d===".")l=n.node.id,u=4;else if(d===".."){var p=FS.lookupPath(n.path,{parent:!0});l=p.node.id,u=4}else{var g=FS.lookupNode(n.node,d);l=g.id,u=FS.isChrdev(g.mode)?2:FS.isDir(g.mode)?4:FS.isLink(g.mode)?10:8}HEAP64[r+o>>>3]=BigInt(l),HEAP64[r+o+8>>>3]=BigInt((c+1)*a),HEAP16[r+o+16>>>1>>>0]=280,HEAP8[r+o+18>>>0]=u,stringToUTF8(d,r+o+19,256),o+=a,c+=1}return FS.llseek(n,c*a,0),o}catch(v){if(typeof FS>"u"||v.name!=="ErrnoError")throw v;return-v.errno}}___syscall_getdents64.sig="iipp";function ___syscall_getpeername(e,r,t,n,a,o){r>>>=0,t>>>=0;try{var _=getSocketFromFD(e);if(!_.daddr)return-53;var c=writeSockaddr(r,_.family,DNS.lookup_name(_.daddr),_.dport,t);return 0}catch(l){if(typeof FS>"u"||l.name!=="ErrnoError")throw l;return-l.errno}}___syscall_getpeername.sig="iippiii";function ___syscall_getsockname(e,r,t,n,a,o){r>>>=0,t>>>=0;try{var _=getSocketFromFD(e),c=writeSockaddr(r,_.family,DNS.lookup_name(_.saddr||"0.0.0.0"),_.sport,t);return 0}catch(l){if(typeof FS>"u"||l.name!=="ErrnoError")throw l;return-l.errno}}___syscall_getsockname.sig="iippiii";function ___syscall_getsockopt(e,r,t,n,a,o){n>>>=0,a>>>=0;try{var _=getSocketFromFD(e);return r===1&&t===4?(HEAP32[n>>>2>>>0]=_.error,HEAP32[a>>>2>>>0]=4,_.error=null,0):-50}catch(c){if(typeof FS>"u"||c.name!=="ErrnoError")throw c;return-c.errno}}___syscall_getsockopt.sig="iiiippi";function ___syscall_ioctl(e,r,t){t>>>=0,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 a=n.tty.ops.ioctl_tcgets(n),o=syscallGetVarargP();HEAP32[o>>>2>>>0]=a.c_iflag||0,HEAP32[o+4>>>2>>>0]=a.c_oflag||0,HEAP32[o+8>>>2>>>0]=a.c_cflag||0,HEAP32[o+12>>>2>>>0]=a.c_lflag||0;for(var _=0;_<32;_++)HEAP8[o+_+17>>>0]=a.c_cc[_]||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 o=syscallGetVarargP(),c=HEAP32[o>>>2>>>0],l=HEAP32[o+4>>>2>>>0],u=HEAP32[o+8>>>2>>>0],d=HEAP32[o+12>>>2>>>0],p=[],_=0;_<32;_++)p.push(HEAP8[o+_+17>>>0]);return n.tty.ops.ioctl_tcsets(n.tty,r,{c_iflag:c,c_oflag:l,c_cflag:u,c_lflag:d,c_cc:p})}return 0}case 21519:{if(!n.tty)return-59;var o=syscallGetVarargP();return HEAP32[o>>>2>>>0]=0,0}case 21520:return n.tty?-28:-59;case 21531:{var o=syscallGetVarargP();return FS.ioctl(n,r,o)}case 21523:{if(!n.tty)return-59;if(n.tty.ops.ioctl_tiocgwinsz){var g=n.tty.ops.ioctl_tiocgwinsz(n.tty),o=syscallGetVarargP();HEAP16[o>>>1>>>0]=g[0],HEAP16[o+2>>>1>>>0]=g[1]}return 0}case 21524:return n.tty?0:-59;case 21515:return n.tty?0:-59;default:return-28}}catch(v){if(typeof FS>"u"||v.name!=="ErrnoError")throw v;return-v.errno}}___syscall_ioctl.sig="iiip";function ___syscall_listen(e,r){try{var t=getSocketFromFD(e);return t.sock_ops.listen(t,r),0}catch(n){if(typeof FS>"u"||n.name!=="ErrnoError")throw n;return-n.errno}}___syscall_listen.sig="iiiiiii";function ___syscall_lstat64(e,r){e>>>=0,r>>>=0;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){r>>>=0;try{return r=SYSCALLS.getStr(r),r=SYSCALLS.calculateAt(e,r),r=PATH.normalize(r),r[r.length-1]==="/"&&(r=r.substr(0,r.length-1)),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_mknodat(e,r,t,n){r>>>=0;try{switch(r=SYSCALLS.getStr(r),r=SYSCALLS.calculateAt(e,r),t&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-28}return FS.mknod(r,t,n),0}catch(a){if(typeof FS>"u"||a.name!=="ErrnoError")throw a;return-a.errno}}___syscall_mknodat.sig="iipii";function ___syscall_newfstatat(e,r,t,n){r>>>=0,t>>>=0;try{r=SYSCALLS.getStr(r);var a=n&256,o=n&4096;return n=n&-6401,r=SYSCALLS.calculateAt(e,r,o),SYSCALLS.doStat(a?FS.lstat:FS.stat,r,t)}catch(_){if(typeof FS>"u"||_.name!=="ErrnoError")throw _;return-_.errno}}___syscall_newfstatat.sig="iippi";function ___syscall_openat(e,r,t,n){r>>>=0,n>>>=0,SYSCALLS.varargs=n;try{r=SYSCALLS.getStr(r),r=SYSCALLS.calculateAt(e,r);var a=n?syscallGetVarargI():0;return FS.open(r,t,a).fd}catch(o){if(typeof FS>"u"||o.name!=="ErrnoError")throw o;return-o.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),a=FS.createNode(PIPEFS.root,t,4096,0);n.pipe=e,a.pipe=e;var o=FS.createStream({path:r,node:n,flags:0,seekable:!1,stream_ops:PIPEFS.stream_ops});n.stream=o;var _=FS.createStream({path:t,node:a,flags:1,seekable:!1,stream_ops:PIPEFS.stream_ops});return a.stream=_,{readable_fd:o.fd,writable_fd:_.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,a){for(var o=e.node.pipe,_=0,c=0;c<o.buckets.length;c++){var l=o.buckets[c];_+=l.offset-l.roffset}var u=r.subarray(t,t+n);if(n<=0)return 0;if(_==0)throw new FS.ErrnoError(6);for(var d=Math.min(_,n),p=d,g=0,c=0;c<o.buckets.length;c++){var v=o.buckets[c],w=v.offset-v.roffset;if(d<=w){var S=v.buffer.subarray(v.roffset,v.offset);d<w?(S=S.subarray(0,d),v.roffset+=d):g++,u.set(S);break}else{var S=v.buffer.subarray(v.roffset,v.offset);u.set(S),u=u.subarray(S.byteLength),d-=S.byteLength,g++}}return g&&g==o.buckets.length&&(g--,o.buckets[g].offset=0,o.buckets[g].roffset=0),o.buckets.splice(0,g),p},write(e,r,t,n,a){var o=e.node.pipe,_=r.subarray(t,t+n),c=_.byteLength;if(c<=0)return 0;var l=null;o.buckets.length==0?(l={buffer:new Uint8Array(PIPEFS.BUCKET_BUFFER_SIZE),offset:0,roffset:0},o.buckets.push(l)):l=o.buckets[o.buckets.length-1],assert(l.offset<=PIPEFS.BUCKET_BUFFER_SIZE);var u=PIPEFS.BUCKET_BUFFER_SIZE-l.offset;if(u>=c)return l.buffer.set(_,l.offset),l.offset+=c,c;u>0&&(l.buffer.set(_.subarray(0,u),l.offset),l.offset+=u,_=_.subarray(u,_.byteLength));for(var d=_.byteLength/PIPEFS.BUCKET_BUFFER_SIZE|0,p=_.byteLength%PIPEFS.BUCKET_BUFFER_SIZE,g=0;g<d;g++){var v={buffer:new Uint8Array(PIPEFS.BUCKET_BUFFER_SIZE),offset:PIPEFS.BUCKET_BUFFER_SIZE,roffset:0};o.buckets.push(v),v.buffer.set(_.subarray(0,PIPEFS.BUCKET_BUFFER_SIZE)),_=_.subarray(PIPEFS.BUCKET_BUFFER_SIZE,_.byteLength)}if(p>0){var v={buffer:new Uint8Array(PIPEFS.BUCKET_BUFFER_SIZE),offset:_.byteLength,roffset:0};o.buckets.push(v),v.buffer.set(_)}return c},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){e>>>=0;try{if(e==0)throw new FS.ErrnoError(21);var r=PIPEFS.createPipe();return HEAP32[e>>>2>>>0]=r.readable_fd,HEAP32[e+4>>>2>>>0]=r.writable_fd,0}catch(t){if(typeof FS>"u"||t.name!=="ErrnoError")throw t;return-t.errno}}___syscall_pipe.sig="ip";function ___syscall_poll(e,r,t){e>>>=0;try{for(var n=0,a=0;a<r;a++){var o=e+8*a,_=HEAP32[o>>>2>>>0],c=HEAP16[o+4>>>1>>>0],l=32,u=FS.getStream(_);u&&(l=SYSCALLS.DEFAULT_POLLMASK,u.stream_ops.poll&&(l=u.stream_ops.poll(u,-1))),l&=c|8|16,l&&n++,HEAP16[o+6>>>1>>>0]=l}return n}catch(d){if(typeof FS>"u"||d.name!=="ErrnoError")throw d;return-d.errno}}___syscall_poll.sig="ipii";function ___syscall_readlinkat(e,r,t,n){r>>>=0,t>>>=0,n>>>=0;try{if(r=SYSCALLS.getStr(r),r=SYSCALLS.calculateAt(e,r),n<=0)return-28;var a=FS.readlink(r),o=Math.min(n,lengthBytesUTF8(a)),_=HEAP8[t+o>>>0];return stringToUTF8(a,t,n+1),HEAP8[t+o>>>0]=_,o}catch(c){if(typeof FS>"u"||c.name!=="ErrnoError")throw c;return-c.errno}}___syscall_readlinkat.sig="iippp";function ___syscall_recvfrom(e,r,t,n,a,o){r>>>=0,t>>>=0,a>>>=0,o>>>=0;try{var _=getSocketFromFD(e),c=_.sock_ops.recvmsg(_,t);if(!c)return 0;if(a)var l=writeSockaddr(a,_.family,DNS.lookup_name(c.addr),c.port,o);return HEAPU8.set(c.buffer,r>>>0),c.buffer.byteLength}catch(u){if(typeof FS>"u"||u.name!=="ErrnoError")throw u;return-u.errno}}___syscall_recvfrom.sig="iippipp";function ___syscall_recvmsg(e,r,t,n,a,o){r>>>=0;try{for(var _=getSocketFromFD(e),c=HEAPU32[r+8>>>2>>>0],l=HEAP32[r+12>>>2>>>0],u=0,d=0;d<l;d++)u+=HEAP32[c+(8*d+4)>>>2>>>0];var p=_.sock_ops.recvmsg(_,u);if(!p)return 0;var g=HEAPU32[r>>>2>>>0];if(g)var v=writeSockaddr(g,_.family,DNS.lookup_name(p.addr),p.port);for(var w=0,S=p.buffer.byteLength,d=0;S>0&&d<l;d++){var F=HEAPU32[c+(8*d+0)>>>2>>>0],f=HEAP32[c+(8*d+4)>>>2>>>0];if(f){var m=Math.min(f,S),y=p.buffer.subarray(w,w+m);HEAPU8.set(y,F+w>>>0),w+=m,S-=m}}return w}catch(b){if(typeof FS>"u"||b.name!=="ErrnoError")throw b;return-b.errno}}___syscall_recvmsg.sig="iipiiii";function ___syscall_renameat(e,r,t,n){r>>>=0,n>>>=0;try{return r=SYSCALLS.getStr(r),n=SYSCALLS.getStr(n),r=SYSCALLS.calculateAt(e,r),n=SYSCALLS.calculateAt(t,n),FS.rename(r,n),0}catch(a){if(typeof FS>"u"||a.name!=="ErrnoError")throw a;return-a.errno}}___syscall_renameat.sig="iipip";function ___syscall_rmdir(e){e>>>=0;try{return e=SYSCALLS.getStr(e),FS.rmdir(e),0}catch(r){if(typeof FS>"u"||r.name!=="ErrnoError")throw r;return-r.errno}}___syscall_rmdir.sig="ip";function ___syscall_sendmsg(e,r,t,n,a,o){r>>>=0,n>>>=0,a>>>=0;try{var _=getSocketFromFD(e),c=HEAPU32[r+8>>>2>>>0],l=HEAP32[r+12>>>2>>>0],u,d,p=HEAPU32[r>>>2>>>0],g=HEAP32[r+4>>>2>>>0];if(p){var v=readSockaddr(p,g);if(v.errno)return-v.errno;d=v.port,u=DNS.lookup_addr(v.addr)||v.addr}for(var w=0,S=0;S<l;S++)w+=HEAP32[c+(8*S+4)>>>2>>>0];for(var F=new Uint8Array(w),f=0,S=0;S<l;S++)for(var m=HEAPU32[c+(8*S+0)>>>2>>>0],y=HEAP32[c+(8*S+4)>>>2>>>0],b=0;b<y;b++)F[f++]=HEAP8[m+b>>>0];return _.sock_ops.sendmsg(_,F,0,w,u,d)}catch(E){if(typeof FS>"u"||E.name!=="ErrnoError")throw E;return-E.errno}}___syscall_sendmsg.sig="iipippi";function ___syscall_sendto(e,r,t,n,a,o){r>>>=0,t>>>=0,a>>>=0,o>>>=0;try{var _=getSocketFromFD(e),c=getSocketAddress(a,o,!0);return c?_.sock_ops.sendmsg(_,HEAP8,r,t,c.addr,c.port):FS.write(_.stream,HEAP8,r,t)}catch(l){if(typeof FS>"u"||l.name!=="ErrnoError")throw l;return-l.errno}}___syscall_sendto.sig="iippipp";function ___syscall_socket(e,r,t){try{var n=SOCKFS.createSocket(e,r,t);return n.stream.fd}catch(a){if(typeof FS>"u"||a.name!=="ErrnoError")throw a;return-a.errno}}___syscall_socket.sig="iiiiiii";function ___syscall_stat64(e,r){e>>>=0,r>>>=0;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_symlink(e,r){e>>>=0,r>>>=0;try{return e=SYSCALLS.getStr(e),r=SYSCALLS.getStr(r),FS.symlink(e,r),0}catch(t){if(typeof FS>"u"||t.name!=="ErrnoError")throw t;return-t.errno}}___syscall_symlink.sig="ipp";function ___syscall_symlinkat(e,r,t){e>>>=0,t>>>=0;try{return t=SYSCALLS.calculateAt(r,t),FS.symlink(e,t),0}catch(n){if(typeof FS>"u"||n.name!=="ErrnoError")throw n;return-n.errno}}___syscall_symlinkat.sig="ipip";function ___syscall_truncate64(e,r){e>>>=0,r=bigintToI53Checked(r);try{return isNaN(r)?61:(e=SYSCALLS.getStr(e),FS.truncate(e,r),0)}catch(t){if(typeof FS>"u"||t.name!=="ErrnoError")throw t;return-t.errno}}___syscall_truncate64.sig="ipj";function ___syscall_unlinkat(e,r,t){r>>>=0;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 readI53FromI64=e=>HEAPU32[e>>>2>>>0]+HEAP32[e+4>>>2>>>0]*4294967296;function ___syscall_utimensat(e,r,t,n){r>>>=0,t>>>=0;try{r=SYSCALLS.getStr(r),r=SYSCALLS.calculateAt(e,r,!0);var a=Date.now(),o,_;if(!t)o=a,_=a;else{var c=readI53FromI64(t),l=HEAP32[t+8>>>2>>>0];l==1073741823?o=a:l==1073741822?o=-1:o=c*1e3+l/(1e3*1e3),t+=16,c=readI53FromI64(t),l=HEAP32[t+8>>>2>>>0],l==1073741823?_=a:l==1073741822?_=-1:_=c*1e3+l/(1e3*1e3)}return(_!=-1||o!=-1)&&FS.utime(r,o,_),0}catch(u){if(typeof FS>"u"||u.name!=="ErrnoError")throw u;return-u.errno}}___syscall_utimensat.sig="iippi";var ___table_base=new WebAssembly.Global({value:"i32",mutable:!1},1),__abort_js=()=>{abort("")};__abort_js.sig="v";var ENV={},stackAlloc=e=>__emscripten_stack_alloc(e),stringToUTF8OnStack=e=>{var r=lengthBytesUTF8(e)+1,t=stackAlloc(r);return stringToUTF8(e,t,r),t},dlSetError=e=>{var r=stackSave(),t=stringToUTF8OnStack(e);___dl_seterr(t,0),stackRestore(r)},dlopenInternal=(e,r)=>{var t=UTF8ToString(e+36),n=HEAP32[e+4>>>2>>>0];t=PATH.normalize(t);var a=[],o=!!(n&256),_=o?null:{},c={global:o,nodelete:!!(n&4096),loadAsync:r.loadAsync};if(r.loadAsync)return loadDynamicLibrary(t,c,_,e);try{return loadDynamicLibrary(t,c,_,e)}catch(l){return dlSetError(`Could not load dynamic lib: ${t}\n${l}`),0}},__dlopen_js=function(e){return e>>>=0,Asyncify.handleSleep(r=>{dlopenInternal(e,{loadAsync:!0}).then(r).catch(()=>r(0))})};__dlopen_js.sig="pp",__dlopen_js.isAsync=!0;function __dlsym_js(e,r,t){e>>>=0,r>>>=0,t>>>=0,r=UTF8ToString(r);var n,a,o=LDSO.loadedLibsByHandle[e];if(!o.exports.hasOwnProperty(r)||o.exports[r].stub)return dlSetError(`Tried to lookup unknown symbol "${r}" in dynamic lib: ${o.name}`),0;if(a=Object.keys(o.exports).indexOf(r),n=o.exports[r],typeof n=="function"){"orig"in n&&(n=n.orig);var _=getFunctionAddress(n);_?n=_:(n=addFunction(n,n.sig),HEAPU32[t>>>2>>>0]=a)}return n}__dlsym_js.sig="pppp";var handleException=e=>{if(e instanceof ExitStatus||e=="unwind")return EXITSTATUS;quit_(1,e)},runtimeKeepaliveCounter=0,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)}},runtimeKeepalivePush=()=>{runtimeKeepaliveCounter+=1};runtimeKeepalivePush.sig="v";var runtimeKeepalivePop=()=>{runtimeKeepaliveCounter-=1};runtimeKeepalivePop.sig="v";function __emscripten_dlopen_js(e,r,t,n){e>>>=0,r>>>=0,t>>>=0,n>>>=0;function a(c){var l=UTF8ToString(e+36);dlSetError(`'Could not load dynamic lib: ${l}\n${c}`),runtimeKeepalivePop(),callUserCallback(()=>((u,d)=>{})(e,n))}function o(){runtimeKeepalivePop(),callUserCallback(()=>((c,l)=>{})(e,n))}runtimeKeepalivePush();var _=dlopenInternal(e,{loadAsync:!0});_?_.then(o,a):a()}__emscripten_dlopen_js.sig="vpppp";var nowIsMonotonic=1,__emscripten_get_now_is_monotonic=()=>nowIsMonotonic;__emscripten_get_now_is_monotonic.sig="i";var getExecutableName=()=>thisProgram||"./this.program";function __emscripten_get_progname(e,r){e>>>=0,stringToUTF8(getExecutableName(),e,r)}__emscripten_get_progname.sig="vpi";function __emscripten_lookup_name(e){e>>>=0;var r=UTF8ToString(e);return inetPton4(DNS.lookup_name(r))}__emscripten_lookup_name.sig="ip";var __emscripten_runtime_keepalive_clear=()=>{noExitRuntime=!1,runtimeKeepaliveCounter=0};__emscripten_runtime_keepalive_clear.sig="v";function __emscripten_system(e){return e>>>=0,e?-52:0}__emscripten_system.sig="ip";var __emscripten_throw_longjmp=()=>{throw 1/0};__emscripten_throw_longjmp.sig="v";function __gmtime_js(e,r){e=bigintToI53Checked(e),r>>>=0;var t=new Date(e*1e3);HEAP32[r>>>2>>>0]=t.getUTCSeconds(),HEAP32[r+4>>>2>>>0]=t.getUTCMinutes(),HEAP32[r+8>>>2>>>0]=t.getUTCHours(),HEAP32[r+12>>>2>>>0]=t.getUTCDate(),HEAP32[r+16>>>2>>>0]=t.getUTCMonth(),HEAP32[r+20>>>2>>>0]=t.getUTCFullYear()-1900,HEAP32[r+24>>>2>>>0]=t.getUTCDay();var n=Date.UTC(t.getUTCFullYear(),0,1,0,0,0,0),a=(t.getTime()-n)/(1e3*60*60*24)|0;HEAP32[r+28>>>2>>>0]=a}__gmtime_js.sig="vjp";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};function __localtime_js(e,r){e=bigintToI53Checked(e),r>>>=0;var t=new Date(e*1e3);HEAP32[r>>>2>>>0]=t.getSeconds(),HEAP32[r+4>>>2>>>0]=t.getMinutes(),HEAP32[r+8>>>2>>>0]=t.getHours(),HEAP32[r+12>>>2>>>0]=t.getDate(),HEAP32[r+16>>>2>>>0]=t.getMonth(),HEAP32[r+20>>>2>>>0]=t.getFullYear()-1900,HEAP32[r+24>>>2>>>0]=t.getDay();var n=ydayFromDate(t)|0;HEAP32[r+28>>>2>>>0]=n,HEAP32[r+36>>>2>>>0]=-(t.getTimezoneOffset()*60);var a=new Date(t.getFullYear(),0,1),o=new Date(t.getFullYear(),6,1).getTimezoneOffset(),_=a.getTimezoneOffset(),c=(o!=_&&t.getTimezoneOffset()==Math.min(_,o))|0;HEAP32[r+32>>>2>>>0]=c}__localtime_js.sig="vjp";var __mktime_js=function(e){e>>>=0;var r=(()=>{var t=new Date(HEAP32[e+20>>>2>>>0]+1900,HEAP32[e+16>>>2>>>0],HEAP32[e+12>>>2>>>0],HEAP32[e+8>>>2>>>0],HEAP32[e+4>>>2>>>0],HEAP32[e>>>2>>>0],0),n=HEAP32[e+32>>>2>>>0],a=t.getTimezoneOffset(),o=new Date(t.getFullYear(),0,1),_=new Date(t.getFullYear(),6,1).getTimezoneOffset(),c=o.getTimezoneOffset(),l=Math.min(c,_);if(n<0)HEAP32[e+32>>>2>>>0]=+(_!=c&&l==a);else if(n>0!=(l==a)){var u=Math.max(c,_),d=n>0?l:u;t.setTime(t.getTime()+(d-a)*6e4)}HEAP32[e+24>>>2>>>0]=t.getDay();var p=ydayFromDate(t)|0;HEAP32[e+28>>>2>>>0]=p,HEAP32[e>>>2>>>0]=t.getSeconds(),HEAP32[e+4>>>2>>>0]=t.getMinutes(),HEAP32[e+8>>>2>>>0]=t.getHours(),HEAP32[e+12>>>2>>>0]=t.getDate(),HEAP32[e+16>>>2>>>0]=t.getMonth(),HEAP32[e+20>>>2>>>0]=t.getYear();var g=t.getTime();return isNaN(g)?-1:g/1e3})();return BigInt(r)};__mktime_js.sig="jp";function __mmap_js(e,r,t,n,a,o,_){e>>>=0,a=bigintToI53Checked(a),o>>>=0,_>>>=0;try{if(isNaN(a))return 61;var c=SYSCALLS.getStreamFromFD(n),l=FS.mmap(c,e,a,r,t),u=l.ptr;return HEAP32[o>>>2>>>0]=l.allocated,HEAPU32[_>>>2>>>0]=u,0}catch(d){if(typeof FS>"u"||d.name!=="ErrnoError")throw d;return-d.errno}}__mmap_js.sig="ipiiijpp";function __msync_js(e,r,t,n,a,o){e>>>=0,r>>>=0,o=bigintToI53Checked(o);try{return isNaN(o)?61:(SYSCALLS.doMsync(e,SYSCALLS.getStreamFromFD(a),r,n,o),0)}catch(_){if(typeof FS>"u"||_.name!=="ErrnoError")throw _;return-_.errno}}__msync_js.sig="ippiiij";function __munmap_js(e,r,t,n,a,o){e>>>=0,r>>>=0,o=bigintToI53Checked(o);try{var _=SYSCALLS.getStreamFromFD(a);t&2&&SYSCALLS.doMsync(e,_,r,n,o)}catch(c){if(typeof FS>"u"||c.name!=="ErrnoError")throw c;return-c.errno}}__munmap_js.sig="ippiiij";var timers={},_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 __timegm_js=function(e){e>>>=0;var r=(()=>{var t=Date.UTC(HEAP32[e+20>>>2>>>0]+1900,HEAP32[e+16>>>2>>>0],HEAP32[e+12>>>2>>>0],HEAP32[e+8>>>2>>>0],HEAP32[e+4>>>2>>>0],HEAP32[e>>>2>>>0],0),n=new Date(t);HEAP32[e+24>>>2>>>0]=n.getUTCDay();var a=Date.UTC(n.getUTCFullYear(),0,1,0,0,0,0),o=(n.getTime()-a)/(1e3*60*60*24)|0;return HEAP32[e+28>>>2>>>0]=o,n.getTime()/1e3})();return BigInt(r)};__timegm_js.sig="jp";var __tzset_js=function(e,r,t,n){e>>>=0,r>>>=0,t>>>=0,n>>>=0;var a=new Date().getFullYear(),o=new Date(a,0,1),_=new Date(a,6,1),c=o.getTimezoneOffset(),l=_.getTimezoneOffset(),u=Math.max(c,l);HEAPU32[e>>>2>>>0]=u*60,HEAP32[r>>>2>>>0]=+(c!=l);var d=v=>{var w=v>=0?"-":"+",S=Math.abs(v),F=String(Math.floor(S/60)).padStart(2,"0"),f=String(S%60).padStart(2,"0");return`UTC${w}${F}${f}`},p=d(c),g=d(l);l<c?(stringToUTF8(p,t,17),stringToUTF8(g,n,17)):(stringToUTF8(p,n,17),stringToUTF8(g,t,17))};__tzset_js.sig="vpppp";var readEmAsmArgsArray=[],readEmAsmArgs=(e,r)=>{readEmAsmArgsArray.length=0;for(var t;t=HEAPU8[e++>>>0];){var n=t!=105;n&=t!=112,r+=n&&r%8?4:0,readEmAsmArgsArray.push(t==112?HEAPU32[r>>>2>>>0]:t==106?HEAP64[r>>>3]:t==105?HEAP32[r>>>2>>>0]:HEAPF64[r>>>3>>>0]),r+=n?8:4}return readEmAsmArgsArray},runEmAsmFunction=(e,r,t)=>{var n=readEmAsmArgs(r,t);return ASM_CONSTS[e](...n)};function _emscripten_asm_const_int(e,r,t){return e>>>=0,r>>>=0,t>>>=0,runEmAsmFunction(e,r,t)}_emscripten_asm_const_int.sig="ippp";function _emscripten_asm_const_ptr(e,r,t){return e>>>=0,r>>>=0,t>>>=0,runEmAsmFunction(e,r,t)}_emscripten_asm_const_ptr.sig="pppp";function _emscripten_console_error(e){e>>>=0,console.error(UTF8ToString(e))}_emscripten_console_error.sig="vp";function _emscripten_console_log(e){e>>>=0,console.log(UTF8ToString(e))}_emscripten_console_log.sig="vp";function _emscripten_console_trace(e){e>>>=0,console.trace(UTF8ToString(e))}_emscripten_console_trace.sig="vp";function _emscripten_console_warn(e){e>>>=0,console.warn(UTF8ToString(e))}_emscripten_console_warn.sig="vp";var _emscripten_date_now=()=>Date.now();_emscripten_date_now.sig="d";function _emscripten_err(e){return e>>>=0,err(UTF8ToString(e))}_emscripten_err.sig="vp";var getHeapMax=()=>4294901760;function _emscripten_get_heap_max(){return getHeapMax()}_emscripten_get_heap_max.sig="p";var _emscripten_get_now_res=()=>1e3;_emscripten_get_now_res.sig="d";function _emscripten_out(e){return e>>>=0,out(UTF8ToString(e))}_emscripten_out.sig="vp";class HandleAllocator{constructor(){this.allocated=[void 0],this.freelist=[]}get(r){return this.allocated[r]}has(r){return this.allocated[r]!==void 0}allocate(r){var t=this.freelist.pop()||this.allocated.length;return this.allocated[t]=r,t}free(r){this.allocated[r]=void 0,this.freelist.push(r)}}var promiseMap=new HandleAllocator,makePromise=()=>{var e={};return e.promise=new Promise((r,t)=>{e.reject=t,e.resolve=r}),e.id=promiseMap.allocate(e),e};function _emscripten_promise_create(){return makePromise().id}_emscripten_promise_create.sig="p";function _emscripten_promise_destroy(e){e>>>=0,promiseMap.free(e)}_emscripten_promise_destroy.sig="vp";var getPromise=e=>promiseMap.get(e).promise;function _emscripten_promise_resolve(e,r,t){e>>>=0,t>>>=0;var n=promiseMap.get(e);switch(r){case 0:n.resolve(t);return;case 1:n.resolve(getPromise(t));return;case 2:n.resolve(getPromise(t)),_emscripten_promise_destroy(t);return;case 3:n.reject(t);return}}_emscripten_promise_resolve.sig="vpip";var growMemory=e=>{var r=wasmMemory.buffer,t=(e-r.byteLength+65535)/65536;try{return wasmMemory.grow(t),updateMemoryViews(),1}catch{}};function _emscripten_resize_heap(e){e>>>=0;var r=HEAPU8.length,t=getHeapMax();if(e>t)return!1;for(var n=1;n<=4;n*=2){var a=r*(1+.2/n);a=Math.min(a,e+100663296);var o=Math.min(t,alignMemory(Math.max(e,a),65536)),_=growMemory(o);if(_)return!0}return!1}_emscripten_resize_heap.sig="ip";var 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++>>>0]=e.charCodeAt(t);HEAP8[r>>>0]=0},_environ_get=function(e,r){e>>>=0,r>>>=0;var t=0;return getEnvStrings().forEach((n,a)=>{var o=r+t;HEAPU32[e+a*4>>>2>>>0]=o,stringToAscii(n,o),t+=n.length+1}),0};_environ_get.sig="ipp";var _environ_sizes_get=function(e,r){e>>>=0,r>>>=0;var t=getEnvStrings();HEAPU32[e>>>2>>>0]=t.length;var n=0;return t.forEach(a=>n+=a.length+1),HEAPU32[r>>>2>>>0]=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){r>>>=0;try{var t=0,n=0,a=0,o=SYSCALLS.getStreamFromFD(e),_=o.tty?2:FS.isDir(o.mode)?3:FS.isLink(o.mode)?7:4;return HEAP8[r>>>0]=_,HEAP16[r+2>>>1>>>0]=a,HEAP64[r+8>>>3]=BigInt(t),HEAP64[r+16>>>3]=BigInt(n),0}catch(c){if(typeof FS>"u"||c.name!=="ErrnoError")throw c;return c.errno}}_fd_fdstat_get.sig="iip";var doReadv=(e,r,t,n)=>{for(var a=0,o=0;o<t;o++){var _=HEAPU32[r>>>2>>>0],c=HEAPU32[r+4>>>2>>>0];r+=8;var l=FS.read(e,HEAP8,_,c,n);if(l<0)return-1;if(a+=l,l<c)break;typeof n<"u"&&(n+=l)}return a};function _fd_pread(e,r,t,n,a){r>>>=0,t>>>=0,n=bigintToI53Checked(n),a>>>=0;try{if(isNaN(n))return 61;var o=SYSCALLS.getStreamFromFD(e),_=doReadv(o,r,t,n);return HEAPU32[a>>>2>>>0]=_,0}catch(c){if(typeof FS>"u"||c.name!=="ErrnoError")throw c;return c.errno}}_fd_pread.sig="iippjp";var doWritev=(e,r,t,n)=>{for(var a=0,o=0;o<t;o++){var _=HEAPU32[r>>>2>>>0],c=HEAPU32[r+4>>>2>>>0];r+=8;var l=FS.write(e,HEAP8,_,c,n);if(l<0)return-1;if(a+=l,l<c)break;typeof n<"u"&&(n+=l)}return a};function _fd_pwrite(e,r,t,n,a){r>>>=0,t>>>=0,n=bigintToI53Checked(n),a>>>=0;try{if(isNaN(n))return 61;var o=SYSCALLS.getStreamFromFD(e),_=doWritev(o,r,t,n);return HEAPU32[a>>>2>>>0]=_,0}catch(c){if(typeof FS>"u"||c.name!=="ErrnoError")throw c;return c.errno}}_fd_pwrite.sig="iippjp";function _fd_read(e,r,t,n){r>>>=0,t>>>=0,n>>>=0;try{var a=SYSCALLS.getStreamFromFD(e),o=doReadv(a,r,t);return HEAPU32[n>>>2>>>0]=o,0}catch(_){if(typeof FS>"u"||_.name!=="ErrnoError")throw _;return _.errno}}_fd_read.sig="iippp";function _fd_seek(e,r,t,n){r=bigintToI53Checked(r),n>>>=0;try{if(isNaN(r))return 61;var a=SYSCALLS.getStreamFromFD(e);return FS.llseek(a,r,t),HEAP64[n>>>3]=BigInt(a.position),a.getdents&&r===0&&t===0&&(a.getdents=null),0}catch(o){if(typeof FS>"u"||o.name!=="ErrnoError")throw o;return o.errno}}_fd_seek.sig="iijip";var _fd_sync=function(e){try{var r=SYSCALLS.getStreamFromFD(e);return Asyncify.handleSleep(t=>{var n=r.node.mount;if(!n.type.syncfs){t(0);return}n.type.syncfs(n,!1,a=>{if(a){t(29);return}t(0)})})}catch(t){if(typeof FS>"u"||t.name!=="ErrnoError")throw t;return t.errno}};_fd_sync.sig="ii",_fd_sync.isAsync=!0;function _fd_write(e,r,t,n){r>>>=0,t>>>=0,n>>>=0;try{var a=SYSCALLS.getStreamFromFD(e),o=doWritev(a,r,t);return HEAPU32[n>>>2>>>0]=o,0}catch(_){if(typeof FS>"u"||_.name!=="ErrnoError")throw _;return _.errno}}_fd_write.sig="iippp";function _getaddrinfo(e,r,t,n){e>>>=0,r>>>=0,t>>>=0,n>>>=0;var a=[],o=null,_=0,c=0,l=0,u=0,d=0,p=0,g,v;function w(S,F,f,m,y,b){var E,k,h,A;return k=S===10?28:16,y=S===10?inetNtop6(y):inetNtop4(y),E=_malloc(k),A=writeSockaddr(E,S,y,b),assert(!A),h=_malloc(32),HEAP32[h+4>>>2>>>0]=S,HEAP32[h+8>>>2>>>0]=F,HEAP32[h+12>>>2>>>0]=f,HEAPU32[h+24>>>2>>>0]=m,HEAPU32[h+20>>>2>>>0]=E,S===10?HEAP32[h+16>>>2>>>0]=28:HEAP32[h+16>>>2>>>0]=16,HEAP32[h+28>>>2>>>0]=0,h}if(t&&(l=HEAP32[t>>>2>>>0],u=HEAP32[t+4>>>2>>>0],d=HEAP32[t+8>>>2>>>0],p=HEAP32[t+12>>>2>>>0]),d&&!p&&(p=d===2?17:6),!d&&p&&(d=p===17?2:1),p===0&&(p=6),d===0&&(d=1),!e&&!r)return-2;if(l&-1088||t!==0&&HEAP32[t>>>2>>>0]&2&&!e)return-1;if(l&32)return-2;if(d!==0&&d!==1&&d!==2)return-7;if(u!==0&&u!==2&&u!==10)return-6;if(r&&(r=UTF8ToString(r),c=parseInt(r,10),isNaN(c)))return l&1024?-2:-8;if(!e)return u===0&&(u=2),(l&1)===0&&(u===2?_=_htonl(2130706433):_=[0,0,0,1]),g=w(u,d,p,null,_,c),HEAPU32[n>>>2>>>0]=g,0;if(e=UTF8ToString(e),_=inetPton4(e),_!==null)if(u===0||u===2)u=2;else if(u===10&&l&8)_=[0,0,_htonl(65535),_],u=10;else return-2;else if(_=inetPton6(e),_!==null)if(u===0||u===10)u=10;else return-2;return _!=null?(g=w(u,d,p,e,_,c),HEAPU32[n>>>2>>>0]=g,0):l&4?-2:(e=DNS.lookup_name(e),_=inetPton4(e),u===0?u=2:u===10&&(_=[0,0,_htonl(65535),_]),g=w(u,d,p,null,_,c),HEAPU32[n>>>2>>>0]=g,0)}_getaddrinfo.sig="ipppp";function _getcontext(...e){return asyncifyStubs.getcontext(...e)}_getcontext.stub=!0,asyncifyStubs.getcontext=void 0;function _getdtablesize(...e){return asyncifyStubs.getdtablesize(...e)}_getdtablesize.stub=!0,asyncifyStubs.getdtablesize=void 0;function _getentropy(e,r){return e>>>=0,r>>>=0,randomFill(HEAPU8.subarray(e>>>0,e+r>>>0)),0}_getentropy.sig="ipp";function _getnameinfo(e,r,t,n,a,o,_){e>>>=0,t>>>=0,a>>>=0;var c=readSockaddr(e,r);if(c.errno)return-6;var l=c.port,u=c.addr,d=!1;if(t&&n){var p;if(_&1||!(p=DNS.lookup_addr(u))){if(_&8)return-2}else u=p;var g=stringToUTF8(u,t,n);g+1>=n&&(d=!0)}if(a&&o){l=""+l;var g=stringToUTF8(l,a,o);g+1>=o&&(d=!0)}return d?-12:0}_getnameinfo.sig="ipipipii";var Protocols={list:[],map:{}},_setprotoent=e=>{function r(o,_,c){var l=_malloc(o.length+1);stringToAscii(o,l);for(var u=0,d=c.length,p=_malloc((d+1)*4),g=0;g<d;g++,u+=4){var v=c[g],w=_malloc(v.length+1);stringToAscii(v,w),HEAPU32[p+u>>>2>>>0]=w}HEAPU32[p+u>>>2>>>0]=0;var S=_malloc(12);return HEAPU32[S>>>2>>>0]=l,HEAPU32[S+4>>>2>>>0]=p,HEAP32[S+8>>>2>>>0]=_,S}var t=Protocols.list,n=Protocols.map;if(t.length===0){var a=r("tcp",6,["TCP"]);t.push(a),n.tcp=n[6]=a,a=r("udp",17,["UDP"]),t.push(a),n.udp=n[17]=a}_setprotoent.index=0};_setprotoent.sig="vi";function _getprotobyname(e){e>>>=0,e=UTF8ToString(e),_setprotoent(!0);var r=Protocols.map[e];return r}_getprotobyname.sig="pp";function _getprotobynumber(e){_setprotoent(!0);var r=Protocols.map[e];return r}_getprotobynumber.sig="pi";function _makecontext(...e){return asyncifyStubs.makecontext(...e)}_makecontext.stub=!0,asyncifyStubs.makecontext=void 0;function _phpdbg_arm_auto_global(...e){return asyncifyStubs.phpdbg_arm_auto_global(...e)}_phpdbg_arm_auto_global.stub=!0,asyncifyStubs.phpdbg_arm_auto_global=void 0;function _phpdbg_globals(...e){return asyncifyStubs.phpdbg_globals(...e)}_phpdbg_globals.stub=!0,asyncifyStubs.phpdbg_globals=void 0;function _phpdbg_restore_frame(...e){return asyncifyStubs.phpdbg_restore_frame(...e)}_phpdbg_restore_frame.stub=!0,asyncifyStubs.phpdbg_restore_frame=void 0;function _posix_spawnp(...e){return asyncifyStubs.posix_spawnp(...e)}_posix_spawnp.stub=!0,asyncifyStubs.posix_spawnp=void 0;function _reallocarray(...e){return asyncifyStubs.reallocarray(...e)}_reallocarray.stub=!0,asyncifyStubs.reallocarray=void 0;var arraySum=(e,r)=>{for(var t=0,n=0;n<=r;t+=e[n++]);return t},MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31],MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31],addDays=(e,r)=>{for(var t=new Date(e.getTime());r>0;){var n=isLeapYear(t.getFullYear()),a=t.getMonth(),o=(n?MONTH_DAYS_LEAP:MONTH_DAYS_REGULAR)[a];if(r>o-t.getDate())r-=o-t.getDate()+1,t.setDate(1),a<11?t.setMonth(a+1):(t.setMonth(0),t.setFullYear(t.getFullYear()+1));else return t.setDate(t.getDate()+r),t}return t};function _strptime(e,r,t){e>>>=0,r>>>=0,t>>>=0;for(var n=UTF8ToString(r),a="\\!@#$^&*()+=-[]/{}|:<>?,.",o=0,_=a.length;o<_;++o)n=n.replace(new RegExp("\\"+a[o],"g"),"\\"+a[o]);var c={A:"%a",B:"%b",c:"%a %b %d %H:%M:%S %Y",D:"%m\\/%d\\/%y",e:"%d",F:"%Y-%m-%d",h:"%b",R:"%H\\:%M",r:"%I\\:%M\\:%S\\s%p",T:"%H\\:%M\\:%S",x:"%m\\/%d\\/(?:%y|%Y)",X:"%H\\:%M\\:%S"},l={a:"(?:Sun(?:day)?)|(?:Mon(?:day)?)|(?:Tue(?:sday)?)|(?:Wed(?:nesday)?)|(?:Thu(?:rsday)?)|(?:Fri(?:day)?)|(?:Sat(?:urday)?)",b:"(?:Jan(?:uary)?)|(?:Feb(?:ruary)?)|(?:Mar(?:ch)?)|(?:Apr(?:il)?)|May|(?:Jun(?:e)?)|(?:Jul(?:y)?)|(?:Aug(?:ust)?)|(?:Sep(?:tember)?)|(?:Oct(?:ober)?)|(?:Nov(?:ember)?)|(?:Dec(?:ember)?)",C:"\\d\\d",d:"0[1-9]|[1-9](?!\\d)|1\\d|2\\d|30|31",H:"\\d(?!\\d)|[0,1]\\d|20|21|22|23",I:"\\d(?!\\d)|0\\d|10|11|12",j:"00[1-9]|0?[1-9](?!\\d)|0?[1-9]\\d(?!\\d)|[1,2]\\d\\d|3[0-6]\\d",m:"0[1-9]|[1-9](?!\\d)|10|11|12",M:"0\\d|\\d(?!\\d)|[1-5]\\d",n:" ",p:"AM|am|PM|pm|A\\.M\\.|a\\.m\\.|P\\.M\\.|p\\.m\\.",S:"0\\d|\\d(?!\\d)|[1-5]\\d|60",U:"0\\d|\\d(?!\\d)|[1-4]\\d|50|51|52|53",W:"0\\d|\\d(?!\\d)|[1-4]\\d|50|51|52|53",w:"[0-6]",y:"\\d\\d",Y:"\\d\\d\\d\\d",t:" ",z:"Z|(?:[\\+\\-]\\d\\d:?(?:\\d\\d)?)"},u={JAN:0,FEB:1,MAR:2,APR:3,MAY:4,JUN:5,JUL:6,AUG:7,SEP:8,OCT:9,NOV:10,DEC:11},d={SUN:0,MON:1,TUE:2,WED:3,THU:4,FRI:5,SAT:6},p={MON:0,TUE:1,WED:2,THU:3,FRI:4,SAT:5,SUN:6},g=[],v=n.replace(/%(.)/g,(H,L)=>c[L]||H).replace(/%(.)/g,(H,L)=>{let z=l[L];return z?(g.push(L),`(${z})`):L}).replace(/\s+/g,"\\s*"),w=new RegExp("^"+v,"i").exec(UTF8ToString(e));function S(){function H(L,z,D){return typeof L!="number"||isNaN(L)?z:L>=z?L<=D?L:D:z}return{year:H(HEAP32[t+20>>>2>>>0]+1900,1970,9999),month:H(HEAP32[t+16>>>2>>>0],0,11),day:H(HEAP32[t+12>>>2>>>0],1,31),hour:H(HEAP32[t+8>>>2>>>0],0,23),min:H(HEAP32[t+4>>>2>>>0],0,59),sec:H(HEAP32[t>>>2>>>0],0,59),gmtoff:0}}if(w){var F=S(),f,m=H=>{var L=g.indexOf(H);if(L>=0)return w[L+1]};if((f=m("S"))&&(F.sec=jstoi_q(f)),(f=m("M"))&&(F.min=jstoi_q(f)),f=m("H"))F.hour=jstoi_q(f);else if(f=m("I")){var y=jstoi_q(f);(f=m("p"))&&(y+=f.toUpperCase()[0]==="P"?12:0),F.hour=y}if(f=m("Y"))F.year=jstoi_q(f);else if(f=m("y")){var b=jstoi_q(f);(f=m("C"))?b+=jstoi_q(f)*100:b+=b<69?2e3:1900,F.year=b}if((f=m("m"))?F.month=jstoi_q(f)-1:(f=m("b"))&&(F.month=u[f.substring(0,3).toUpperCase()]||0),f=m("d"))F.day=jstoi_q(f);else if(f=m("j"))for(var E=jstoi_q(f),k=isLeapYear(F.year),h=0;h<12;++h){var A=arraySum(k?MONTH_DAYS_LEAP:MONTH_DAYS_REGULAR,h-1);E<=A+(k?MONTH_DAYS_LEAP:MONTH_DAYS_REGULAR)[h]&&(F.day=E-A)}else if(f=m("a")){var P=f.substring(0,3).toUpperCase();if(f=m("U")){var M=d[P],C=jstoi_q(f),T=new Date(F.year,0,1),x;T.getDay()===0?x=addDays(T,M+7*(C-1)):x=addDays(T,7-T.getDay()+M+7*(C-1)),F.day=x.getDate(),F.month=x.getMonth()}else if(f=m("W")){var M=p[P],C=jstoi_q(f),T=new Date(F.year,0,1),x;T.getDay()===1?x=addDays(T,M+7*(C-1)):x=addDays(T,7-T.getDay()+1+M+7*(C-1)),F.day=x.getDate(),F.month=x.getMonth()}}if(f=m("z"))if(f.toLowerCase()==="z")F.gmtoff=0;else{var R=f.match(/^((?:\-|\+)\d\d):?(\d\d)?/);F.gmtoff=R[1]*3600,R[2]&&(F.gmtoff+=F.gmtoff>0?R[2]*60:-R[2]*60)}var U=new Date(F.year,F.month,F.day,F.hour,F.min,F.sec,0);return HEAP32[t>>>2>>>0]=U.getSeconds(),HEAP32[t+4>>>2>>>0]=U.getMinutes(),HEAP32[t+8>>>2>>>0]=U.getHours(),HEAP32[t+12>>>2>>>0]=U.getDate(),HEAP32[t+16>>>2>>>0]=U.getMonth(),HEAP32[t+20>>>2>>>0]=U.getFullYear()-1900,HEAP32[t+24>>>2>>>0]=U.getDay(),HEAP32[t+28>>>2>>>0]=arraySum(isLeapYear(U.getFullYear())?MONTH_DAYS_LEAP:MONTH_DAYS_REGULAR,U.getMonth()-1)+U.getDate()-1,HEAP32[t+32>>>2>>>0]=0,HEAP32[t+36>>>2>>>0]=F.gmtoff,e+intArrayFromString(w[0]).length-1}return 0}_strptime.sig="pppp";function _swapcontext(...e){return asyncifyStubs.swapcontext(...e)}_swapcontext.stub=!0,asyncifyStubs.swapcontext=void 0;var runAndAbortIfError=e=>{try{return e()}catch(r){abort(r)}},Asyncify={instrumentWasmImports(e){var r=/^(invoke_.*|__asyncjs__.*)$/;for(let[t,n]of Object.entries(e))if(typeof n=="function"){let a=n.isAsync||r.test(t)}},instrumentWasmExports(e){var r={};for(let[t,n]of Object.entries(e))typeof n=="function"?(r[t]=(...a)=>{Asyncify.exportCallStack.push(t);try{return n(...a)}finally{if(!ABORT){var o=Asyncify.exportCallStack.pop();Asyncify.maybeStopUnwind()}}},r[t].orig=n):r[t]=n;return r},State:{Normal:0,Unwinding:1,Rewinding:2,Disabled:3},state:0,StackSize:4096,currData:null,handleSleepReturnValue:0,exportCallStack:[],callStackNameToId:{},callStackIdToName:{},callStackId:0,asyncPromiseHandlers:null,sleepCallbacks:[],getCallStackId(e){var r=Asyncify.callStackNameToId[e];return r===void 0&&(r=Asyncify.callStackId++,Asyncify.callStackNameToId[e]=r,Asyncify.callStackIdToName[r]=e),r},maybeStopUnwind(){Asyncify.currData&&Asyncify.state===Asyncify.State.Unwinding&&Asyncify.exportCallStack.length===0&&(Asyncify.state=Asyncify.State.Normal,runtimeKeepalivePush(),runAndAbortIfError(_asyncify_stop_unwind),typeof Fibers<"u"&&Fibers.trampoline())},whenDone(){return new Promise((e,r)=>{Asyncify.asyncPromiseHandlers={resolve:e,reject:r}})},allocateData(){var e=_malloc(12+Asyncify.StackSize);return Asyncify.setDataHeader(e,e+12,Asyncify.StackSize),Asyncify.setDataRewindFunc(e),e},setDataHeader(e,r,t){HEAPU32[e>>>2>>>0]=r,HEAPU32[e+4>>>2>>>0]=r+t},setDataRewindFunc(e){var r=Asyncify.exportCallStack[0],t=Asyncify.getCallStackId(r);HEAP32[e+8>>>2>>>0]=t},getDataRewindFuncName(e){var r=HEAP32[e+8>>>2>>>0],t=Asyncify.callStackIdToName[r];return t},getDataRewindFunc__deps:["$resolveGlobalSymbol"],getDataRewindFunc(e){var r=wasmExports[e];return r||(r=resolveGlobalSymbol(e,!1).sym),r},doRewind(e){var r=Asyncify.getDataRewindFuncName(e),t=Asyncify.getDataRewindFunc(r);return runtimeKeepalivePop(),t()},handleSleep(e){if(!ABORT){if(Asyncify.state===Asyncify.State.Normal){var r=!1,t=!1;e((n=0)=>{if(!ABORT&&(Asyncify.handleSleepReturnValue=n,r=!0,!!t)){Asyncify.state=Asyncify.State.Rewinding,runAndAbortIfError(()=>_asyncify_start_rewind(Asyncify.currData)),typeof Browser<"u"&&Browser.mainLoop.func&&Browser.mainLoop.resume();var a,o=!1;try{a=Asyncify.doRewind(Asyncify.currData)}catch(l){a=l,o=!0}var _=!1;if(!Asyncify.currData){var c=Asyncify.asyncPromiseHandlers;c&&(Asyncify.asyncPromiseHandlers=null,(o?c.reject:c.resolve)(a),_=!0)}if(o&&!_)throw a}}),t=!0,r||(Asyncify.state=Asyncify.State.Unwinding,Asyncify.currData=Asyncify.allocateData(),typeof Browser<"u"&&Browser.mainLoop.func&&Browser.mainLoop.pause(),runAndAbortIfError(()=>_asyncify_start_unwind(Asyncify.currData)))}else Asyncify.state===Asyncify.State.Rewinding?(Asyncify.state=Asyncify.State.Normal,runAndAbortIfError(_asyncify_stop_rewind),_free(Asyncify.currData),Asyncify.currData=null,Asyncify.sleepCallbacks.forEach(callUserCallback)):abort(`invalid state: ${Asyncify.state}`);return Asyncify.handleSleepReturnValue}},handleAsync(e){return Asyncify.handleSleep(r=>{e().then(r)})}},getCFunc=e=>{var r=Module["_"+e];return r},writeArrayToMemory=(e,r)=>{HEAP8.set(e,r>>>0)},ccall=(e,r,t,n,a)=>{var o={string:F=>{var f=0;return F!=null&&F!==0&&(f=stringToUTF8OnStack(F)),f},array:F=>{var f=stackAlloc(F.length);return writeArrayToMemory(F,f),f}};function _(F){return r==="string"?UTF8ToString(F):r==="boolean"?!!F:F}var c=getCFunc(e),l=[],u=0;if(n)for(var d=0;d<n.length;d++){var p=o[t[d]];p?(u===0&&(u=stackSave()),l[d]=p(n[d])):l[d]=n[d]}var g=Asyncify.currData,v=c(...l);function w(F){return runtimeKeepalivePop(),u!==0&&stackRestore(u),_(F)}var S=a?.async;return runtimeKeepalivePush(),Asyncify.currData!=g?Asyncify.whenDone().then(w):(v=w(v),S?Promise.resolve(v):v)},FS_createPath=FS.createPath,FS_unlink=e=>FS.unlink(e),FS_createLazyFile=FS.createLazyFile,FS_createDevice=FS.createDevice,writeI53ToI64=(e,r)=>{HEAPU32[e>>>2>>>0]=r;var t=HEAPU32[e>>>2>>>0];HEAPU32[e+4>>>2>>>0]=(r-t)/4294967296},writeI53ToI64Clamped=(e,r)=>{r>9223372036854776e3?(HEAPU32[e>>>2>>>0]=4294967295,HEAPU32[e+4>>>2>>>0]=2147483647):r<-9223372036854776e3?(HEAPU32[e>>>2>>>0]=0,HEAPU32[e+4>>>2>>>0]=2147483648):writeI53ToI64(e,r)},writeI53ToI64Signaling=(e,r)=>{if(r>9223372036854776e3||r<-9223372036854776e3)throw`RangeError: ${r}`;writeI53ToI64(e,r)},writeI53ToU64Clamped=(e,r)=>{r>18446744073709552e3?(HEAPU32[e>>>2>>>0]=4294967295,HEAPU32[e+4>>>2>>>0]=4294967295):r<0?(HEAPU32[e>>>2>>>0]=0,HEAPU32[e+4>>>2>>>0]=0):writeI53ToI64(e,r)},writeI53ToU64Signaling=(e,r)=>{if(r<0||r>18446744073709552e3)throw`RangeError: ${r}`;writeI53ToI64(e,r)},readI53FromU64=e=>HEAPU32[e>>>2>>>0]+HEAPU32[e+4>>>2>>>0]*4294967296,convertI32PairToI53=(e,r)=>(e>>>0)+r*4294967296,convertI32PairToI53Checked=(e,r)=>r+2097152>>>0<4194305-!!e?(e>>>0)+r*4294967296:NaN,convertU32PairToI53=(e,r)=>(e>>>0)+(r>>>0)*4294967296,getTempRet0=e=>__emscripten_tempret_get(),_stackAlloc=stackAlloc,_stackSave=stackSave,_stackRestore=stackSave,_getTempRet0=getTempRet0;Module._getTempRet0=_getTempRet0;var ptrToString=e=>"0x"+e.toString(16).padStart(8,"0");function _emscripten_notify_memory_growth(e){e>>>=0,updateMemoryViews()}_emscripten_notify_memory_growth.sig="vp";function ___assert_fail(e,r,t,n){e>>>=0,r>>>=0,n>>>=0,abort(`Assertion failed: ${UTF8ToString(e)}, at: `+[r?UTF8ToString(r):"unknown filename",t,n?UTF8ToString(n):"unknown function"])}___assert_fail.sig="vppip";var withStackSave=e=>{var r=stackSave(),t=e();return stackRestore(r),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},strError=e=>UTF8ToString(_strerror(e)),_endprotoent=()=>{};_endprotoent.sig="v";function _getprotoent(e){if(_setprotoent.index===Protocols.list.length)return 0;var r=Protocols.list[_setprotoent.index++];return r}_getprotoent.sig="p";function _emscripten_run_script(ptr){ptr>>>=0,eval(UTF8ToString(ptr))}_emscripten_run_script.sig="vp";function _emscripten_run_script_int(ptr){return ptr>>>=0,eval(UTF8ToString(ptr))|0}_emscripten_run_script_int.sig="ip";function _emscripten_run_script_string(ptr){ptr>>>=0;var s=eval(UTF8ToString(ptr));if(s==null)return 0;s+="";var me=_emscripten_run_script_string,len=lengthBytesUTF8(s);return(!me.bufferSize||me.bufferSize<len+1)&&(me.bufferSize&&_free(me.buffer),me.bufferSize=len+1,me.buffer=_malloc(me.bufferSize)),stringToUTF8(s,me.buffer,me.bufferSize),me.buffer}_emscripten_run_script_string.sig="pp";var _emscripten_random=()=>Math.random();_emscripten_random.sig="f";var warnOnce=e=>{warnOnce.shown||(warnOnce.shown={}),warnOnce.shown[e]||(warnOnce.shown[e]=1,err(e))};function jsStackTrace(){return new Error().stack.toString()}function getCallstack(e){var r=jsStackTrace(),t=r.lastIndexOf("_emscripten_log"),n=r.lastIndexOf("_emscripten_get_callstack"),a=r.indexOf(`\n`,Math.max(t,n))+1;r=r.slice(a),e&8&&typeof emscripten_source_map>"u"&&(warnOnce('Source map information is not available, emscripten_log with EM_LOG_C_STACK will be ignored. Build with "--pre-js $EMSCRIPTEN/src/emscripten-source-map.min.js" linker flag to add source map loading to code.'),e^=8,e|=16);var o=r.split(`\n`);r="";var _=new RegExp("\\s*(.*?)@(.*?):([0-9]+):([0-9]+)"),c=new RegExp("\\s*(.*?)@(.*):(.*)(:(.*))?"),l=new RegExp("\\s*at (.*?) \\((.*):(.*):(.*)\\)");for(var u in o){var d=o[u],p="",g="",v=0,w=0,S=l.exec(d);if(S&&S.length==5)p=S[1],g=S[2],v=S[3],w=S[4];else if(S=_.exec(d)||c.exec(d),S&&S.length>=4)p=S[1],g=S[2],v=S[3],w=S[4]|0;else{r+=d+`\n`;continue}var F=!1;if(e&8){var f=emscripten_source_map.originalPositionFor({line:v,column:w});F=f?.source,F&&(e&64&&(f.source=f.source.substring(f.source.replace(/\\/g,"/").lastIndexOf("/")+1)),r+=` at ${p} (${f.source}:${f.line}:${f.column})\n`)}(e&16||!F)&&(e&64&&(g=g.substring(g.replace(/\\/g,"/").lastIndexOf("/")+1)),r+=(F?` = ${p}`:` at ${p}`)+` (${g}:${v}:${w})\n`)}return r=r.replace(/\s+$/,""),r}var emscriptenLog=(e,r)=>{e&24&&(r=r.replace(/\s+$/,""),r+=(r.length>0?`\n`:"")+getCallstack(e)),e&1?e&4?console.error(r):e&2?console.warn(r):e&512?console.info(r):e&256?console.debug(r):console.log(r):e&6?err(r):out(r)},reallyNegative=e=>e<0||e===0&&1/e===-1/0,reSign=(e,r)=>{if(e<=0)return e;var t=r<=32?Math.abs(1<<r-1):Math.pow(2,r-1);return e>=t&&(r<=32||e>t)&&(e=-2*t+e),e},unSign=(e,r)=>e>=0?e:r<=32?2*Math.abs(1<<r-1)+e:Math.pow(2,r)+e,strLen=e=>{for(var r=e;HEAPU8[r>>>0];)++r;return r-e},formatString=(e,r)=>{var t=e,n=r;function a(I,O){return(O==="double"||O==="i64")&&I&7&&(I+=4),I}function o(I){var O;return n=a(n,I),I==="double"?(O=HEAPF64[n>>>3>>>0],n+=8):I=="i64"?(O=[HEAP32[n>>>2>>>0],HEAP32[n+4>>>2>>>0]],n+=8):(I="i32",O=HEAP32[n>>>2>>>0],n+=4),O}for(var _=[],c,l,u;;){var d=t;if(c=HEAP8[t>>>0],c===0)break;if(l=HEAP8[t+1>>>0],c==37){var p=!1,g=!1,v=!1,w=!1,S=!1;e:for(;;){switch(l){case 43:p=!0;break;case 45:g=!0;break;case 35:v=!0;break;case 48:if(w)break e;w=!0;break;case 32:S=!0;break;default:break e}t++,l=HEAP8[t+1>>>0]}var F=0;if(l==42)F=o("i32"),t++,l=HEAP8[t+1>>>0];else for(;l>=48&&l<=57;)F=F*10+(l-48),t++,l=HEAP8[t+1>>>0];var f=!1,m=-1;if(l==46){if(m=0,f=!0,t++,l=HEAP8[t+1>>>0],l==42)m=o("i32"),t++;else for(;;){var y=HEAP8[t+1>>>0];if(y<48||y>57)break;m=m*10+(y-48),t++}l=HEAP8[t+1>>>0]}m<0&&(m=6,f=!1);var b;switch(String.fromCharCode(l)){case"h":var E=HEAP8[t+2>>>0];E==104?(t++,b=1):b=2;break;case"l":var E=HEAP8[t+2>>>0];E==108?(t++,b=8):b=4;break;case"L":case"q":case"j":b=8;break;case"z":case"t":case"I":b=4;break;default:b=null}switch(b&&t++,l=HEAP8[t+1>>>0],String.fromCharCode(l)){case"d":case"i":case"u":case"o":case"x":case"X":case"p":{var k=l==100||l==105;b=b||4,u=o("i"+b*8);var h;if(b==8&&(u=l==117?convertU32PairToI53(u[0],u[1]):convertI32PairToI53(u[0],u[1])),b<=4){var A=Math.pow(256,b)-1;u=(k?reSign:unSign)(u&A,b*8)}var P=Math.abs(u),M="";if(l==100||l==105)h=reSign(u,8*b).toString(10);else if(l==117)h=unSign(u,8*b).toString(10),u=Math.abs(u);else if(l==111)h=(v?"0":"")+P.toString(8);else if(l==120||l==88){if(M=v&&u!=0?"0x":"",u<0){u=-u,h=(P-1).toString(16);for(var C=[],T=0;T<h.length;T++)C.push((15-parseInt(h[T],16)).toString(16));for(h=C.join("");h.length<b*2;)h="f"+h}else h=P.toString(16);l==88&&(M=M.toUpperCase(),h=h.toUpperCase())}else l==112&&(P===0?h="(nil)":(M="0x",h=P.toString(16)));if(f)for(;h.length<m;)h="0"+h;for(u>=0&&(p?M="+"+M:S&&(M=" "+M)),h.charAt(0)=="-"&&(M="-"+M,h=h.substr(1));M.length+h.length<F;)g?h+=" ":w?h="0"+h:M=" "+M;h=M+h,h.split("").forEach(I=>_.push(I.charCodeAt(0)));break}case"f":case"F":case"e":case"E":case"g":case"G":{u=o("double");var h;if(isNaN(u))h="nan",w=!1;else if(!isFinite(u))h=(u<0?"-":"")+"inf",w=!1;else{var x=!1,R=Math.min(m,20);if(l==103||l==71){x=!0,m=m||1;var U=parseInt(u.toExponential(R).split("e")[1],10);m>U&&U>=-4?(l=(l==103?"f":"F").charCodeAt(0),m-=U+1):(l=(l==103?"e":"E").charCodeAt(0),m--),R=Math.min(m,20)}l==101||l==69?(h=u.toExponential(R),/[eE][-+]\d$/.test(h)&&(h=h.slice(0,-1)+"0"+h.slice(-1))):(l==102||l==70)&&(h=u.toFixed(R),u===0&&reallyNegative(u)&&(h="-"+h));var H=h.split("e");if(x&&!v)for(;H[0].length>1&&H[0].includes(".")&&(H[0].slice(-1)=="0"||H[0].slice(-1)==".");)H[0]=H[0].slice(0,-1);else for(v&&h.indexOf(".")==-1&&(H[0]+=".");m>R++;)H[0]+="0";h=H[0]+(H.length>1?"e"+H[1]:""),l==69&&(h=h.toUpperCase()),u>=0&&(p?h="+"+h:S&&(h=" "+h))}for(;h.length<F;)g?h+=" ":w&&(h[0]=="-"||h[0]=="+")?h=h[0]+"0"+h.slice(1):h=(w?"0":" ")+h;l<97&&(h=h.toUpperCase()),h.split("").forEach(O=>_.push(O.charCodeAt(0)));break}case"s":{var L=o("i8*"),z=L?strLen(L):6;if(f&&(z=Math.min(z,m)),!g)for(;z<F--;)_.push(32);if(L)for(var T=0;T<z;T++)_.push(HEAPU8[L++>>>0]);else _=_.concat(intArrayFromString("(null)".substr(0,z),!0));if(g)for(;z<F--;)_.push(32);break}case"c":{for(g&&_.push(o("i8"));--F>0;)_.push(32);g||_.push(o("i8"));break}case"n":{var D=o("i32*");HEAP32[D>>>2>>>0]=_.length;break}case"%":{_.push(c);break}default:for(var T=d;T<t+2;T++)_.push(HEAP8[T>>>0])}t+=2}else _.push(c),t+=1}return _};function _emscripten_log(e,r,t){r>>>=0,t>>>=0;var n=formatString(r,t),a=UTF8ArrayToString(n,0);emscriptenLog(e,a)}_emscripten_log.sig="vipp";function _emscripten_get_compiler_setting(e){throw e>>>=0,"You must build with -sRETAIN_COMPILER_SETTINGS for getCompilerSetting or emscripten_get_compiler_setting to work"}_emscripten_get_compiler_setting.sig="pp";var _emscripten_has_asyncify=()=>1;_emscripten_has_asyncify.sig="i";function _emscripten_debugger(){debugger}_emscripten_debugger.sig="v";function _emscripten_print_double(e,r,t){r>>>=0;var n=e+"";return r?stringToUTF8(n,r,t):lengthBytesUTF8(n)}_emscripten_print_double.sig="idpi";function _emscripten_asm_const_double(e,r,t){return e>>>=0,r>>>=0,t>>>=0,runEmAsmFunction(e,r,t)}_emscripten_asm_const_double.sig="dppp";var runMainThreadEmAsm=(e,r,t,n)=>{var a=readEmAsmArgs(r,t);return ASM_CONSTS[e](...a)};function _emscripten_asm_const_int_sync_on_main_thread(e,r,t){return e>>>=0,r>>>=0,t>>>=0,runMainThreadEmAsm(e,r,t,1)}_emscripten_asm_const_int_sync_on_main_thread.sig="ippp";function _emscripten_asm_const_ptr_sync_on_main_thread(e,r,t){return e>>>=0,r>>>=0,t>>>=0,runMainThreadEmAsm(e,r,t,1)}_emscripten_asm_const_ptr_sync_on_main_thread.sig="pppp";var _emscripten_asm_const_double_sync_on_main_thread=_emscripten_asm_const_int_sync_on_main_thread;_emscripten_asm_const_double_sync_on_main_thread.sig="dppp";function _emscripten_asm_const_async_on_main_thread(e,r,t){return e>>>=0,r>>>=0,t>>>=0,runMainThreadEmAsm(e,r,t,0)}_emscripten_asm_const_async_on_main_thread.sig="vppp";var jstoi_s=Number,__Unwind_Backtrace=function(e,r){e>>>=0,r>>>=0;for(var t=getCallstack(),n=t.split(`\n`),a=0;a<n.length;a++){var o=((_,c)=>{})(0,r);if(o!==0)return}};__Unwind_Backtrace.sig="ipp";function __Unwind_GetIPInfo(e,r){return e>>>=0,r>>>=0,abort("Unwind_GetIPInfo")}__Unwind_GetIPInfo.sig="ppp";function __Unwind_FindEnclosingFunction(e){return e>>>=0,0}__Unwind_FindEnclosingFunction.sig="pp";class ExceptionInfo{constructor(r){this.excPtr=r,this.ptr=r-24}set_type(r){HEAPU32[this.ptr+4>>>2>>>0]=r}get_type(){return HEAPU32[this.ptr+4>>>2>>>0]}set_destructor(r){HEAPU32[this.ptr+8>>>2>>>0]=r}get_destructor(){return HEAPU32[this.ptr+8>>>2>>>0]}set_caught(r){r=r?1:0,HEAP8[this.ptr+12>>>0]=r}get_caught(){return HEAP8[this.ptr+12>>>0]!=0}set_rethrown(r){r=r?1:0,HEAP8[this.ptr+13>>>0]=r}get_rethrown(){return HEAP8[this.ptr+13>>>0]!=0}init(r,t){this.set_adjusted_ptr(0),this.set_type(r),this.set_destructor(t)}set_adjusted_ptr(r){HEAPU32[this.ptr+16>>>2>>>0]=r}get_adjusted_ptr(){return HEAPU32[this.ptr+16>>>2>>>0]}}var exceptionLast=0,uncaughtExceptionCount=0;function ___cxa_throw(e,r,t){e>>>=0,r>>>=0,t>>>=0;var n=new ExceptionInfo(e);throw n.init(r,t),exceptionLast=e,uncaughtExceptionCount++,exceptionLast}___cxa_throw.sig="vppp";function __Unwind_RaiseException(e){return e>>>=0,err("Warning: _Unwind_RaiseException is not correctly implemented"),___cxa_throw(e,0,0)}__Unwind_RaiseException.sig="ip";function __Unwind_DeleteException(e){e>>>=0,err("TODO: Unwind_DeleteException")}__Unwind_DeleteException.sig="vp";var listenOnce=(e,r,t)=>{e.addEventListener(r,t,{once:!0})},autoResumeAudioContext=(e,r)=>{r||(r=[document,document.getElementById("canvas")]),["keydown","mousedown","touchstart"].forEach(t=>{r.forEach(n=>{n&&listenOnce(n,t,()=>{e.state==="suspended"&&e.resume()})})})},getDynCaller=(e,r)=>(...t)=>dynCall(e,r,t),_emscripten_exit_with_live_runtime=()=>{throw runtimeKeepalivePush(),"unwind"};_emscripten_exit_with_live_runtime.sig="v";var _emscripten_force_exit=e=>{__emscripten_runtime_keepalive_clear(),_exit(e)};_emscripten_force_exit.sig="vi";function _emscripten_outn(e,r){return e>>>=0,r>>>=0,out(UTF8ToString(e,r))}_emscripten_outn.sig="vpp";function _emscripten_errn(e,r){return e>>>=0,r>>>=0,err(UTF8ToString(e,r))}_emscripten_errn.sig="vpp";var _emscripten_throw_number=e=>{throw e};_emscripten_throw_number.sig="vd";function _emscripten_throw_string(e){throw e>>>=0,UTF8ToString(e)}_emscripten_throw_string.sig="vp";var _emscripten_runtime_keepalive_push=runtimeKeepalivePush;_emscripten_runtime_keepalive_push.sig="v";var _emscripten_runtime_keepalive_pop=runtimeKeepalivePop;_emscripten_runtime_keepalive_pop.sig="v";var _emscripten_runtime_keepalive_check=keepRuntimeAlive;_emscripten_runtime_keepalive_check.sig="i";var asmjsMangle=e=>(e=="__main_argc_argv"&&(e="main"),e.startsWith("dynCall_")?e:"_"+e),___global_base=1024;function __emscripten_fs_load_embedded_files(e){e>>>=0;do{var r=HEAPU32[e>>>2>>>0];e+=4;var t=HEAPU32[e>>>2>>>0];e+=4;var n=HEAPU32[e>>>2>>>0];e+=4;var a=UTF8ToString(r);FS.createPath("/",PATH.dirname(a),!0,!0),FS.createDataFile(a,null,HEAP8.subarray(n>>>0,n+t>>>0),!0,!0,!0)}while(HEAPU32[e>>>2>>>0])}__emscripten_fs_load_embedded_files.sig="vp";var POINTER_SIZE=4;function getNativeTypeSize(e){switch(e){case"i1":case"i8":case"u8":return 1;case"i16":case"u16":return 2;case"i32":case"u32":return 4;case"i64":case"u64":return 8;case"float":return 4;case"double":return 8;default:{if(e[e.length-1]==="*")return POINTER_SIZE;if(e[0]==="i"){const r=Number(e.substr(1));return assert(r%8===0,`getNativeTypeSize invalid bits ${r}, ${e} type`),r/8}return 0}}}var STACK_SIZE=33554432,STACK_ALIGN=16,ASSERTIONS=0,cwrap=(e,r,t,n)=>{var a=!t||t.every(_=>_==="number"||_==="boolean"),o=r!=="string";return o&&a&&!n?getCFunc(e):(..._)=>ccall(e,r,t,_,n)},removeFunction=e=>{functionsInTableMap.delete(getWasmTableEntry(e)),setWasmTableEntry(e,null),freeTableIndexes.push(e)},_emscripten_math_cbrt=Math.cbrt;_emscripten_math_cbrt.sig="dd";var _emscripten_math_pow=Math.pow;_emscripten_math_pow.sig="ddd";var _emscripten_math_random=Math.random;_emscripten_math_random.sig="d";var _emscripten_math_sign=Math.sign;_emscripten_math_sign.sig="dd";var _emscripten_math_sqrt=Math.sqrt;_emscripten_math_sqrt.sig="dd";var _emscripten_math_exp=Math.exp;_emscripten_math_exp.sig="dd";var _emscripten_math_expm1=Math.expm1;_emscripten_math_expm1.sig="dd";var _emscripten_math_fmod=(e,r)=>e%r;_emscripten_math_fmod.sig="ddd";var _emscripten_math_log=Math.log;_emscripten_math_log.sig="dd";var _emscripten_math_log1p=Math.log1p;_emscripten_math_log1p.sig="dd";var _emscripten_math_log10=Math.log10;_emscripten_math_log10.sig="dd";var _emscripten_math_log2=Math.log2;_emscripten_math_log2.sig="dd";var _emscripten_math_round=Math.round;_emscripten_math_round.sig="dd";var _emscripten_math_acos=Math.acos;_emscripten_math_acos.sig="dd";var _emscripten_math_acosh=Math.acosh;_emscripten_math_acosh.sig="dd";var _emscripten_math_asin=Math.asin;_emscripten_math_asin.sig="dd";var _emscripten_math_asinh=Math.asinh;_emscripten_math_asinh.sig="dd";var _emscripten_math_atan=Math.atan;_emscripten_math_atan.sig="dd";var _emscripten_math_atanh=Math.atanh;_emscripten_math_atanh.sig="dd";var _emscripten_math_atan2=Math.atan2;_emscripten_math_atan2.sig="ddd";var _emscripten_math_cos=Math.cos;_emscripten_math_cos.sig="dd";var _emscripten_math_cosh=Math.cosh;_emscripten_math_cosh.sig="dd";function _emscripten_math_hypot(e,r){r>>>=0;for(var t=[],n=0;n<e;++n)t.push(HEAPF64[r+n*8>>>3>>>0]);return Math.hypot(...t)}_emscripten_math_hypot.sig="dip";var _emscripten_math_sin=Math.sin;_emscripten_math_sin.sig="dd";var _emscripten_math_sinh=Math.sinh;_emscripten_math_sinh.sig="dd";var _emscripten_math_tan=Math.tan;_emscripten_math_tan.sig="dd";var _emscripten_math_tanh=Math.tanh;_emscripten_math_tanh.sig="dd";function intArrayToString(e){for(var r=[],t=0;t<e.length;t++){var n=e[t];n>255&&(n&=255),r.push(String.fromCharCode(n))}return r.join("")}var AsciiToString=e=>{e>>>=0;for(var r="";;){var t=HEAPU8[e++>>>0];if(!t)return r;r+=String.fromCharCode(t)}},UTF16Decoder=typeof TextDecoder<"u"?new TextDecoder("utf-16le"):void 0,UTF16ToString=(e,r)=>{for(var t=e,n=t>>1,a=n+r/2;!(n>=a)&&HEAPU16[n>>>0];)++n;if(t=n<<1,t-e>32&&UTF16Decoder)return UTF16Decoder.decode(HEAPU8.subarray(e>>>0,t>>>0));for(var o="",_=0;!(_>=r/2);++_){var c=HEAP16[e+_*2>>>1>>>0];if(c==0)break;o+=String.fromCharCode(c)}return o},stringToUTF16=(e,r,t)=>{if(t??(t=2147483647),t<2)return 0;t-=2;for(var n=r,a=t<e.length*2?t/2:e.length,o=0;o<a;++o){var _=e.charCodeAt(o);HEAP16[r>>>1>>>0]=_,r+=2}return HEAP16[r>>>1>>>0]=0,r-n},lengthBytesUTF16=e=>e.length*2,UTF32ToString=(e,r)=>{for(var t=0,n="";!(t>=r/4);){var a=HEAP32[e+t*4>>>2>>>0];if(a==0)break;if(++t,a>=65536){var o=a-65536;n+=String.fromCharCode(55296|o>>10,56320|o&1023)}else n+=String.fromCharCode(a)}return n},stringToUTF32=(e,r,t)=>{if(r>>>=0,t??(t=2147483647),t<4)return 0;for(var n=r,a=n+t-4,o=0;o<e.length;++o){var _=e.charCodeAt(o);if(_>=55296&&_<=57343){var c=e.charCodeAt(++o);_=65536+((_&1023)<<10)|c&1023}if(HEAP32[r>>>2>>>0]=_,r+=4,r+4>a)break}return HEAP32[r>>>2>>>0]=0,r-n},lengthBytesUTF32=e=>{for(var r=0,t=0;t<e.length;++t){var n=e.charCodeAt(t);n>=55296&&n<=57343&&++t,r+=4}return r},stringToNewUTF8=e=>{var r=lengthBytesUTF8(e)+1,t=_malloc(r);return t&&stringToUTF8(e,t,r),t},JSEvents={removeAllEventListeners(){for(;JSEvents.eventHandlers.length;)JSEvents._removeHandler(JSEvents.eventHandlers.length-1);JSEvents.deferredCalls=[]},registerRemoveEventListeners(){JSEvents.removeEventListenersRegistered||(__ATEXIT__.push(JSEvents.removeAllEventListeners),JSEvents.removeEventListenersRegistered=!0)},inEventHandler:0,deferredCalls:[],deferCall(e,r,t){function n(o,_){if(o.length!=_.length)return!1;for(var c in o)if(o[c]!=_[c])return!1;return!0}for(var a of JSEvents.deferredCalls)if(a.targetFunction==e&&n(a.argsList,t))return;JSEvents.deferredCalls.push({targetFunction:e,precedence:r,argsList:t}),JSEvents.deferredCalls.sort((o,_)=>o.precedence<_.precedence)},removeDeferredCalls(e){JSEvents.deferredCalls=JSEvents.deferredCalls.filter(r=>r.targetFunction!=e)},canPerformEventHandlerRequests(){return navigator.userActivation?navigator.userActivation.isActive:JSEvents.inEventHandler&&JSEvents.currentEventHandler.allowsDeferredCalls},runDeferredCalls(){if(JSEvents.canPerformEventHandlerRequests()){var e=JSEvents.deferredCalls;JSEvents.deferredCalls=[];for(var r of e)r.targetFunction(...r.argsList)}},eventHandlers:[],removeAllHandlersOnTarget:(e,r)=>{for(var t=0;t<JSEvents.eventHandlers.length;++t)JSEvents.eventHandlers[t].target==e&&(!r||r==JSEvents.eventHandlers[t].eventTypeString)&&JSEvents._removeHandler(t--)},_removeHandler(e){var r=JSEvents.eventHandlers[e];r.target.removeEventListener(r.eventTypeString,r.eventListenerFunc,r.useCapture),JSEvents.eventHandlers.splice(e,1)},registerOrRemoveHandler(e){if(!e.target)return-4;if(e.callbackfunc)e.eventListenerFunc=function(t){++JSEvents.inEventHandler,JSEvents.currentEventHandler=e,JSEvents.runDeferredCalls(),e.handlerFunc(t),JSEvents.runDeferredCalls(),--JSEvents.inEventHandler},e.target.addEventListener(e.eventTypeString,e.eventListenerFunc,e.useCapture),JSEvents.eventHandlers.push(e),JSEvents.registerRemoveEventListeners();else for(var r=0;r<JSEvents.eventHandlers.length;++r)JSEvents.eventHandlers[r].target==e.target&&JSEvents.eventHandlers[r].eventTypeString==e.eventTypeString&&JSEvents._removeHandler(r--);return 0},getNodeNameForTarget(e){return e?e==window?"#window":e==screen?"#screen":e?.nodeName||"":""},fullscreenEnabled(){return document.fullscreenEnabled||document.webkitFullscreenEnabled}},maybeCStringToJsString=e=>e>2?UTF8ToString(e):e,specialHTMLTargets=[0,document,window],findEventTarget=e=>{e=maybeCStringToJsString(e);var r=specialHTMLTargets[e]||document.querySelector(e);return r},registerKeyEventCallback=(e,r,t,n,a,o,_)=>{JSEvents.keyEvent||(JSEvents.keyEvent=_malloc(160));var c=u=>{var d=JSEvents.keyEvent;HEAPF64[d>>>3>>>0]=u.timeStamp;var p=d>>>2;HEAP32[p+2>>>0]=u.location,HEAP8[d+12>>>0]=u.ctrlKey,HEAP8[d+13>>>0]=u.shiftKey,HEAP8[d+14>>>0]=u.altKey,HEAP8[d+15>>>0]=u.metaKey,HEAP8[d+16>>>0]=u.repeat,HEAP32[p+5>>>0]=u.charCode,HEAP32[p+6>>>0]=u.keyCode,HEAP32[p+7>>>0]=u.which,stringToUTF8(u.key||"",d+32,32),stringToUTF8(u.code||"",d+64,32),stringToUTF8(u.char||"",d+96,32),stringToUTF8(u.locale||"",d+128,32),((g,v,w)=>{})(a,d,r)&&u.preventDefault()},l={target:findEventTarget(e),eventTypeString:o,callbackfunc:n,handlerFunc:c,useCapture:t};return JSEvents.registerOrRemoveHandler(l)},findCanvasEventTarget=findEventTarget;function _emscripten_set_keypress_callback_on_thread(e,r,t,n,a){return e>>>=0,r>>>=0,n>>>=0,a>>>=0,registerKeyEventCallback(e,r,t,n,1,"keypress",a)}_emscripten_set_keypress_callback_on_thread.sig="ippipp";function _emscripten_set_keydown_callback_on_thread(e,r,t,n,a){return e>>>=0,r>>>=0,n>>>=0,a>>>=0,registerKeyEventCallback(e,r,t,n,2,"keydown",a)}_emscripten_set_keydown_callback_on_thread.sig="ippipp";function _emscripten_set_keyup_callback_on_thread(e,r,t,n,a){return e>>>=0,r>>>=0,n>>>=0,a>>>=0,registerKeyEventCallback(e,r,t,n,3,"keyup",a)}_emscripten_set_keyup_callback_on_thread.sig="ippipp";var getBoundingClientRect=e=>specialHTMLTargets.indexOf(e)<0?e.getBoundingClientRect():{left:0,top:0},fillMouseEventData=(e,r,t)=>{HEAPF64[e>>>3>>>0]=r.timeStamp;var n=e>>>2;HEAP32[n+2>>>0]=r.screenX,HEAP32[n+3>>>0]=r.screenY,HEAP32[n+4>>>0]=r.clientX,HEAP32[n+5>>>0]=r.clientY,HEAP8[e+24>>>0]=r.ctrlKey,HEAP8[e+25>>>0]=r.shiftKey,HEAP8[e+26>>>0]=r.altKey,HEAP8[e+27>>>0]=r.metaKey,HEAP16[n*2+14>>>0]=r.button,HEAP16[n*2+15>>>0]=r.buttons,HEAP32[n+8>>>0]=r.movementX,HEAP32[n+9>>>0]=r.movementY;var a=getBoundingClientRect(t);HEAP32[n+10>>>0]=r.clientX-(a.left|0),HEAP32[n+11>>>0]=r.clientY-(a.top|0)},registerMouseEventCallback=(e,r,t,n,a,o,_)=>{JSEvents.mouseEvent||(JSEvents.mouseEvent=_malloc(64)),e=findEventTarget(e);var c=(u=event)=>{fillMouseEventData(JSEvents.mouseEvent,u,e),((d,p,g)=>{})(a,JSEvents.mouseEvent,r)&&u.preventDefault()},l={target:e,allowsDeferredCalls:o!="mousemove"&&o!="mouseenter"&&o!="mouseleave",eventTypeString:o,callbackfunc:n,handlerFunc:c,useCapture:t};return JSEvents.registerOrRemoveHandler(l)};function _emscripten_set_click_callback_on_thread(e,r,t,n,a){return e>>>=0,r>>>=0,n>>>=0,a>>>=0,registerMouseEventCallback(e,r,t,n,4,"click",a)}_emscripten_set_click_callback_on_thread.sig="ippipp";function _emscripten_set_mousedown_callback_on_thread(e,r,t,n,a){return e>>>=0,r>>>=0,n>>>=0,a>>>=0,registerMouseEventCallback(e,r,t,n,5,"mousedown",a)}_emscripten_set_mousedown_callback_on_thread.sig="ippipp";function _emscripten_set_mouseup_callback_on_thread(e,r,t,n,a){return e>>>=0,r>>>=0,n>>>=0,a>>>=0,registerMouseEventCallback(e,r,t,n,6,"mouseup",a)}_emscripten_set_mouseup_callback_on_thread.sig="ippipp";function _emscripten_set_dblclick_callback_on_thread(e,r,t,n,a){return e>>>=0,r>>>=0,n>>>=0,a>>>=0,registerMouseEventCallback(e,r,t,n,7,"dblclick",a)}_emscripten_set_dblclick_callback_on_thread.sig="ippipp";function _emscripten_set_mousemove_callback_on_thread(e,r,t,n,a){return e>>>=0,r>>>=0,n>>>=0,a>>>=0,registerMouseEventCallback(e,r,t,n,8,"mousemove",a)}_emscripten_set_mousemove_callback_on_thread.sig="ippipp";function _emscripten_set_mouseenter_callback_on_thread(e,r,t,n,a){return e>>>=0,r>>>=0,n>>>=0,a>>>=0,registerMouseEventCallback(e,r,t,n,33,"mouseenter",a)}_emscripten_set_mouseenter_callback_on_thread.sig="ippipp";function _emscripten_set_mouseleave_callback_on_thread(e,r,t,n,a){return e>>>=0,r>>>=0,n>>>=0,a>>>=0,registerMouseEventCallback(e,r,t,n,34,"mouseleave",a)}_emscripten_set_mouseleave_callback_on_thread.sig="ippipp";function _emscripten_set_mouseover_callback_on_thread(e,r,t,n,a){return e>>>=0,r>>>=0,n>>>=0,a>>>=0,registerMouseEventCallback(e,r,t,n,35,"mouseover",a)}_emscripten_set_mouseover_callback_on_thread.sig="ippipp";function _emscripten_set_mouseout_callback_on_thread(e,r,t,n,a){return e>>>=0,r>>>=0,n>>>=0,a>>>=0,registerMouseEventCallback(e,r,t,n,36,"mouseout",a)}_emscripten_set_mouseout_callback_on_thread.sig="ippipp";function _emscripten_get_mouse_status(e){return e>>>=0,JSEvents.mouseEvent?(HEAP8.set(HEAP8.subarray(JSEvents.mouseEvent>>>0,JSEvents.mouseEvent+64>>>0),e>>>0),0):-7}_emscripten_get_mouse_status.sig="ip";var registerWheelEventCallback=(e,r,t,n,a,o,_)=>{JSEvents.wheelEvent||(JSEvents.wheelEvent=_malloc(96));var c=(u=event)=>{var d=JSEvents.wheelEvent;fillMouseEventData(d,u,e),HEAPF64[d+64>>>3>>>0]=u.deltaX,HEAPF64[d+72>>>3>>>0]=u.deltaY,HEAPF64[d+80>>>3>>>0]=u.deltaZ,HEAP32[d+88>>>2>>>0]=u.deltaMode,((p,g,v)=>{})(a,d,r)&&u.preventDefault()},l={target:e,allowsDeferredCalls:!0,eventTypeString:o,callbackfunc:n,handlerFunc:c,useCapture:t};return JSEvents.registerOrRemoveHandler(l)};function _emscripten_set_wheel_callback_on_thread(e,r,t,n,a){return e>>>=0,r>>>=0,n>>>=0,a>>>=0,e=findEventTarget(e),e?typeof e.onwheel<"u"?registerWheelEventCallback(e,r,t,n,9,"wheel",a):-1:-4}_emscripten_set_wheel_callback_on_thread.sig="ippipp";var registerUiEventCallback=(e,r,t,n,a,o,_)=>{JSEvents.uiEvent||(JSEvents.uiEvent=_malloc(36)),e=findEventTarget(e);var c=(u=event)=>{if(u.target==e){var d=document.body;if(d){var p=JSEvents.uiEvent;HEAP32[p>>>2>>>0]=0,HEAP32[p+4>>>2>>>0]=d.clientWidth,HEAP32[p+8>>>2>>>0]=d.clientHeight,HEAP32[p+12>>>2>>>0]=innerWidth,HEAP32[p+16>>>2>>>0]=innerHeight,HEAP32[p+20>>>2>>>0]=outerWidth,HEAP32[p+24>>>2>>>0]=outerHeight,HEAP32[p+28>>>2>>>0]=pageXOffset|0,HEAP32[p+32>>>2>>>0]=pageYOffset|0,((g,v,w)=>{})(a,p,r)&&u.preventDefault()}}},l={target:e,eventTypeString:o,callbackfunc:n,handlerFunc:c,useCapture:t};return JSEvents.registerOrRemoveHandler(l)};function _emscripten_set_resize_callback_on_thread(e,r,t,n,a){return e>>>=0,r>>>=0,n>>>=0,a>>>=0,registerUiEventCallback(e,r,t,n,10,"resize",a)}_emscripten_set_resize_callback_on_thread.sig="ippipp";function _emscripten_set_scroll_callback_on_thread(e,r,t,n,a){return e>>>=0,r>>>=0,n>>>=0,a>>>=0,registerUiEventCallback(e,r,t,n,11,"scroll",a)}_emscripten_set_scroll_callback_on_thread.sig="ippipp";var registerFocusEventCallback=(e,r,t,n,a,o,_)=>{JSEvents.focusEvent||(JSEvents.focusEvent=_malloc(256));var c=(u=event)=>{var d=JSEvents.getNodeNameForTarget(u.target),p=u.target.id?u.target.id:"",g=JSEvents.focusEvent;stringToUTF8(d,g+0,128),stringToUTF8(p,g+128,128),((v,w,S)=>{})(a,g,r)&&u.preventDefault()},l={target:findEventTarget(e),eventTypeString:o,callbackfunc:n,handlerFunc:c,useCapture:t};return JSEvents.registerOrRemoveHandler(l)};function _emscripten_set_blur_callback_on_thread(e,r,t,n,a){return e>>>=0,r>>>=0,n>>>=0,a>>>=0,registerFocusEventCallback(e,r,t,n,12,"blur",a)}_emscripten_set_blur_callback_on_thread.sig="ippipp";function _emscripten_set_focus_callback_on_thread(e,r,t,n,a){return e>>>=0,r>>>=0,n>>>=0,a>>>=0,registerFocusEventCallback(e,r,t,n,13,"focus",a)}_emscripten_set_focus_callback_on_thread.sig="ippipp";function _emscripten_set_focusin_callback_on_thread(e,r,t,n,a){return e>>>=0,r>>>=0,n>>>=0,a>>>=0,registerFocusEventCallback(e,r,t,n,14,"focusin",a)}_emscripten_set_focusin_callback_on_thread.sig="ippipp";function _emscripten_set_focusout_callback_on_thread(e,r,t,n,a){return e>>>=0,r>>>=0,n>>>=0,a>>>=0,registerFocusEventCallback(e,r,t,n,15,"focusout",a)}_emscripten_set_focusout_callback_on_thread.sig="ippipp";var fillDeviceOrientationEventData=(e,r,t)=>{HEAPF64[e>>>3>>>0]=r.alpha,HEAPF64[e+8>>>3>>>0]=r.beta,HEAPF64[e+16>>>3>>>0]=r.gamma,HEAP8[e+24>>>0]=r.absolute},registerDeviceOrientationEventCallback=(e,r,t,n,a,o,_)=>{JSEvents.deviceOrientationEvent||(JSEvents.deviceOrientationEvent=_malloc(32));var c=(u=event)=>{fillDeviceOrientationEventData(JSEvents.deviceOrientationEvent,u,e),((d,p,g)=>{})(a,JSEvents.deviceOrientationEvent,r)&&u.preventDefault()},l={target:findEventTarget(e),eventTypeString:o,callbackfunc:n,handlerFunc:c,useCapture:t};return JSEvents.registerOrRemoveHandler(l)};function _emscripten_set_deviceorientation_callback_on_thread(e,r,t,n){return e>>>=0,t>>>=0,n>>>=0,registerDeviceOrientationEventCallback(2,e,r,t,16,"deviceorientation",n)}_emscripten_set_deviceorientation_callback_on_thread.sig="ipipp";function _emscripten_get_deviceorientation_status(e){return e>>>=0,JSEvents.deviceOrientationEvent?(HEAP32.set(HEAP32.subarray(JSEvents.deviceOrientationEvent>>>0,32),e>>>0),0):-7}_emscripten_get_deviceorientation_status.sig="ip";var fillDeviceMotionEventData=(e,r,t)=>{var n=0,a=r.acceleration;n|=a&&1;var o=r.accelerationIncludingGravity;n|=o&&2;var _=r.rotationRate;n|=_&&4,a=a||{},o=o||{},_=_||{},HEAPF64[e>>>3>>>0]=a.x,HEAPF64[e+8>>>3>>>0]=a.y,HEAPF64[e+16>>>3>>>0]=a.z,HEAPF64[e+24>>>3>>>0]=o.x,HEAPF64[e+32>>>3>>>0]=o.y,HEAPF64[e+40>>>3>>>0]=o.z,HEAPF64[e+48>>>3>>>0]=_.alpha,HEAPF64[e+56>>>3>>>0]=_.beta,HEAPF64[e+64>>>3>>>0]=_.gamma},registerDeviceMotionEventCallback=(e,r,t,n,a,o,_)=>{JSEvents.deviceMotionEvent||(JSEvents.deviceMotionEvent=_malloc(80));var c=(u=event)=>{fillDeviceMotionEventData(JSEvents.deviceMotionEvent,u,e),((d,p,g)=>{})(a,JSEvents.deviceMotionEvent,r)&&u.preventDefault()},l={target:findEventTarget(e),eventTypeString:o,callbackfunc:n,handlerFunc:c,useCapture:t};return JSEvents.registerOrRemoveHandler(l)};function _emscripten_set_devicemotion_callback_on_thread(e,r,t,n){return e>>>=0,t>>>=0,n>>>=0,registerDeviceMotionEventCallback(2,e,r,t,17,"devicemotion",n)}_emscripten_set_devicemotion_callback_on_thread.sig="ipipp";function _emscripten_get_devicemotion_status(e){return e>>>=0,JSEvents.deviceMotionEvent?(HEAP32.set(HEAP32.subarray(JSEvents.deviceMotionEvent>>>0,80),e>>>0),0):-7}_emscripten_get_devicemotion_status.sig="ip";var screenOrientation=()=>{if(window.screen)return screen.orientation||screen.mozOrientation||screen.webkitOrientation},fillOrientationChangeEventData=e=>{var r=["portrait-primary","portrait-secondary","landscape-primary","landscape-secondary"],t=["portrait","portrait","landscape","landscape"],n=0,a=0,o=screenOrientation();typeof o=="object"?(n=r.indexOf(o.type),n<0&&(n=t.indexOf(o.type)),n>=0&&(n=1<<n),a=o.angle):a=window.orientation,HEAP32[e>>>2>>>0]=n,HEAP32[e+4>>>2>>>0]=a},registerOrientationChangeEventCallback=(e,r,t,n,a,o,_)=>{JSEvents.orientationChangeEvent||(JSEvents.orientationChangeEvent=_malloc(8));var c=(u=event)=>{var d=JSEvents.orientationChangeEvent;fillOrientationChangeEventData(d),((p,g,v)=>{})(a,d,r)&&u.preventDefault()},l={target:e,eventTypeString:o,callbackfunc:n,handlerFunc:c,useCapture:t};return JSEvents.registerOrRemoveHandler(l)};function _emscripten_set_orientationchange_callback_on_thread(e,r,t,n){return e>>>=0,t>>>=0,n>>>=0,!window.screen||!screen.orientation?-1:registerOrientationChangeEventCallback(screen.orientation,e,r,t,18,"change",n)}_emscripten_set_orientationchange_callback_on_thread.sig="ipipp";function _emscripten_get_orientation_status(e){return e>>>=0,!screenOrientation()&&typeof orientation>"u"?-1:(fillOrientationChangeEventData(e),0)}_emscripten_get_orientation_status.sig="ip";var _emscripten_lock_orientation=e=>{var r=[];e&1&&r.push("portrait-primary"),e&2&&r.push("portrait-secondary"),e&4&&r.push("landscape-primary"),e&8&&r.push("landscape-secondary");var t;if(screen.lockOrientation)t=screen.lockOrientation(r);else if(screen.mozLockOrientation)t=screen.mozLockOrientation(r);else if(screen.webkitLockOrientation)t=screen.webkitLockOrientation(r);else return-1;return t?0:-6};_emscripten_lock_orientation.sig="ii";var _emscripten_unlock_orientation=()=>{if(screen.unlockOrientation)screen.unlockOrientation();else if(screen.mozUnlockOrientation)screen.mozUnlockOrientation();else if(screen.webkitUnlockOrientation)screen.webkitUnlockOrientation();else return-1;return 0};_emscripten_unlock_orientation.sig="i";var fillFullscreenChangeEventData=e=>{var r=document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.msFullscreenElement,t=!!r;HEAP8[e>>>0]=t,HEAP8[e+1>>>0]=JSEvents.fullscreenEnabled();var n=t?r:JSEvents.previousFullscreenElement,a=JSEvents.getNodeNameForTarget(n),o=n?.id||"";stringToUTF8(a,e+2,128),stringToUTF8(o,e+130,128),HEAP32[e+260>>>2>>>0]=n?n.clientWidth:0,HEAP32[e+264>>>2>>>0]=n?n.clientHeight:0,HEAP32[e+268>>>2>>>0]=screen.width,HEAP32[e+272>>>2>>>0]=screen.height,t&&(JSEvents.previousFullscreenElement=r)},registerFullscreenChangeEventCallback=(e,r,t,n,a,o,_)=>{JSEvents.fullscreenChangeEvent||(JSEvents.fullscreenChangeEvent=_malloc(276));var c=(u=event)=>{var d=JSEvents.fullscreenChangeEvent;fillFullscreenChangeEventData(d),((p,g,v)=>{})(a,d,r)&&u.preventDefault()},l={target:e,eventTypeString:o,callbackfunc:n,handlerFunc:c,useCapture:t};return JSEvents.registerOrRemoveHandler(l)};function _emscripten_set_fullscreenchange_callback_on_thread(e,r,t,n,a){return e>>>=0,r>>>=0,n>>>=0,a>>>=0,JSEvents.fullscreenEnabled()?(e=findEventTarget(e),e?(registerFullscreenChangeEventCallback(e,r,t,n,19,"webkitfullscreenchange",a),registerFullscreenChangeEventCallback(e,r,t,n,19,"fullscreenchange",a)):-4):-1}_emscripten_set_fullscreenchange_callback_on_thread.sig="ippipp";function _emscripten_get_fullscreen_status(e){return e>>>=0,JSEvents.fullscreenEnabled()?(fillFullscreenChangeEventData(e),0):-1}_emscripten_get_fullscreen_status.sig="ip";function _emscripten_get_canvas_element_size(e,r,t){e>>>=0,r>>>=0,t>>>=0;var n=findCanvasEventTarget(e);if(!n)return-4;HEAP32[r>>>2>>>0]=n.width,HEAP32[t>>>2>>>0]=n.height}_emscripten_get_canvas_element_size.sig="ippp";var getCanvasElementSize=e=>{var r=stackSave(),t=stackAlloc(8),n=t+4,a=stringToUTF8OnStack(e.id),o=_emscripten_get_canvas_element_size(a,t,n),_=[HEAP32[t>>>2>>>0],HEAP32[n>>>2>>>0]];return stackRestore(r),_};function _emscripten_set_canvas_element_size(e,r,t){e>>>=0;var n=findCanvasEventTarget(e);return n?(n.width=r,n.height=t,0):-4}_emscripten_set_canvas_element_size.sig="ipii";var setCanvasElementSize=(e,r,t)=>{if(!e.controlTransferredOffscreen)e.width=r,e.height=t;else{var n=stackSave(),a=stringToUTF8OnStack(e.id);_emscripten_set_canvas_element_size(a,r,t),stackRestore(n)}},registerRestoreOldStyle=e=>{var r=getCanvasElementSize(e),t=r[0],n=r[1],a=e.style.width,o=e.style.height,_=e.style.backgroundColor,c=document.body.style.backgroundColor,l=e.style.paddingLeft,u=e.style.paddingRight,d=e.style.paddingTop,p=e.style.paddingBottom,g=e.style.marginLeft,v=e.style.marginRight,w=e.style.marginTop,S=e.style.marginBottom,F=document.body.style.margin,f=document.documentElement.style.overflow,m=document.body.scroll,y=e.style.imageRendering;function b(){var E=document.fullscreenElement||document.webkitFullscreenElement;E||(document.removeEventListener("fullscreenchange",b),document.removeEventListener("webkitfullscreenchange",b),setCanvasElementSize(e,t,n),e.style.width=a,e.style.height=o,e.style.backgroundColor=_,c||(document.body.style.backgroundColor="white"),document.body.style.backgroundColor=c,e.style.paddingLeft=l,e.style.paddingRight=u,e.style.paddingTop=d,e.style.paddingBottom=p,e.style.marginLeft=g,e.style.marginRight=v,e.style.marginTop=w,e.style.marginBottom=S,document.body.style.margin=F,document.documentElement.style.overflow=f,document.body.scroll=m,e.style.imageRendering=y,e.GLctxObject&&e.GLctxObject.GLctx.viewport(0,0,t,n),currentFullscreenStrategy.canvasResizedCallback&¤tFullscreenStrategy.canvasResizedCallbackUserData)}return document.addEventListener("fullscreenchange",b),document.addEventListener("webkitfullscreenchange",b),b},setLetterbox=(e,r,t)=>{e.style.paddingLeft=e.style.paddingRight=t+"px",e.style.paddingTop=e.style.paddingBottom=r+"px"},JSEvents_resizeCanvasForFullscreen=(e,r)=>{var t,n,a=registerRestoreOldStyle(e),o=r.softFullscreen?innerWidth:screen.width,_=r.softFullscreen?innerHeight:screen.height,c=getBoundingClientRect(e),l=c.width,u=c.height,d=getCanvasElementSize(e),p=d[0],g=d[1];if(r.scaleMode==3)setLetterbox(e,(_-u)/2,(o-l)/2),o=l,_=u;else if(r.scaleMode==2)if(o*g<p*_){var v=g*o/p;setLetterbox(e,(_-v)/2,0),_=v}else{var w=p*_/g;setLetterbox(e,0,(o-w)/2),o=w}(t=e.style).backgroundColor||(t.backgroundColor="black"),(n=document.body.style).backgroundColor||(n.backgroundColor="black"),e.style.width=o+"px",e.style.height=_+"px",r.filteringMode==1&&(e.style.imageRendering="optimizeSpeed",e.style.imageRendering="-moz-crisp-edges",e.style.imageRendering="-o-crisp-edges",e.style.imageRendering="-webkit-optimize-contrast",e.style.imageRendering="optimize-contrast",e.style.imageRendering="crisp-edges",e.style.imageRendering="pixelated");var S=r.canvasResolutionScaleMode==2?devicePixelRatio:1;if(r.canvasResolutionScaleMode!=0){var F=o*S|0,f=_*S|0;setCanvasElementSize(e,F,f),e.GLctxObject&&e.GLctxObject.GLctx.viewport(0,0,F,f)}return a},JSEvents_requestFullscreen=(e,r)=>{if((r.scaleMode!=0||r.canvasResolutionScaleMode!=0)&&JSEvents_resizeCanvasForFullscreen(e,r),e.requestFullscreen)e.requestFullscreen();else if(e.webkitRequestFullscreen)e.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT);else return JSEvents.fullscreenEnabled()?-3:-1;return currentFullscreenStrategy=r,r.canvasResizedCallback&&r.canvasResizedCallbackUserData,0},hideEverythingExceptGivenElement=e=>{for(var r=e,t=r.parentNode,n=[];r!=document.body;){for(var a=t.children,o=0;o<a.length;++o)a[o]!=r&&(n.push({node:a[o],displayState:a[o].style.display}),a[o].style.display="none");r=t,t=t.parentNode}return n},restoreHiddenElements=e=>{for(var r of e)r.node.style.display=r.displayState},currentFullscreenStrategy={},restoreOldWindowedStyle=null,softFullscreenResizeWebGLRenderTarget=()=>{var e=devicePixelRatio,r=currentFullscreenStrategy.canvasResolutionScaleMode==2,t=currentFullscreenStrategy.scaleMode==2,n=currentFullscreenStrategy.canvasResolutionScaleMode!=0,a=currentFullscreenStrategy.scaleMode==3,o=r?Math.round(innerWidth*e):innerWidth,_=r?Math.round(innerHeight*e):innerHeight,c=o,l=_,u=currentFullscreenStrategy.target,d=getCanvasElementSize(u),p=d[0],g=d[1],v;if(t&&(c*g<p*l?l=c*g/p|0:c*g>p*l&&(c=l*p/g|0),v=(_-l)/2|0),n&&(setCanvasElementSize(u,c,l),u.GLctxObject&&u.GLctxObject.GLctx.viewport(0,0,c,l)),r&&(v/=e,c/=e,l/=e,c=Math.round(c*1e4)/1e4,l=Math.round(l*1e4)/1e4,v=Math.round(v*1e4)/1e4),a){var w=(innerHeight-jstoi_q(u.style.height))/2,S=(innerWidth-jstoi_q(u.style.width))/2;setLetterbox(u,w,S)}else{u.style.width=c+"px",u.style.height=l+"px";var S=(innerWidth-c)/2;setLetterbox(u,v,S)}!a&¤tFullscreenStrategy.canvasResizedCallback&¤tFullscreenStrategy.canvasResizedCallbackUserData},doRequestFullscreen=(e,r)=>JSEvents.fullscreenEnabled()?(e=findEventTarget(e),e?!e.requestFullscreen&&!e.webkitRequestFullscreen?-3:JSEvents.canPerformEventHandlerRequests()?JSEvents_requestFullscreen(e,r):r.deferUntilInEventHandler?(JSEvents.deferCall(JSEvents_requestFullscreen,1,[e,r]),1):-2:-4):-1;function _emscripten_request_fullscreen(e,r){e>>>=0;var t={scaleMode:0,canvasResolutionScaleMode:0,filteringMode:0,deferUntilInEventHandler:r,canvasResizedCallbackTargetThread:2};return doRequestFullscreen(e,t)}_emscripten_request_fullscreen.sig="ipi";function _emscripten_request_fullscreen_strategy(e,r,t){e>>>=0,t>>>=0;var n={scaleMode:HEAP32[t>>>2>>>0],canvasResolutionScaleMode:HEAP32[t+4>>>2>>>0],filteringMode:HEAP32[t+8>>>2>>>0],deferUntilInEventHandler:r,canvasResizedCallback:HEAP32[t+12>>>2>>>0],canvasResizedCallbackUserData:HEAP32[t+16>>>2>>>0]};return doRequestFullscreen(e,n)}_emscripten_request_fullscreen_strategy.sig="ipip";function _emscripten_enter_soft_fullscreen(e,r){if(e>>>=0,r>>>=0,e=findEventTarget(e),!e)return-4;var t={scaleMode:HEAP32[r>>>2>>>0],canvasResolutionScaleMode:HEAP32[r+4>>>2>>>0],filteringMode:HEAP32[r+8>>>2>>>0],canvasResizedCallback:HEAP32[r+12>>>2>>>0],canvasResizedCallbackUserData:HEAP32[r+16>>>2>>>0],target:e,softFullscreen:!0},n=JSEvents_resizeCanvasForFullscreen(e,t);document.documentElement.style.overflow="hidden",document.body.scroll="no",document.body.style.margin="0px";var a=hideEverythingExceptGivenElement(e);function o(){n(),restoreHiddenElements(a),removeEventListener("resize",softFullscreenResizeWebGLRenderTarget),t.canvasResizedCallback&&t.canvasResizedCallbackUserData,currentFullscreenStrategy=0}return restoreOldWindowedStyle=o,currentFullscreenStrategy=t,addEventListener("resize",softFullscreenResizeWebGLRenderTarget),t.canvasResizedCallback&&t.canvasResizedCallbackUserData,0}_emscripten_enter_soft_fullscreen.sig="ipp";var _emscripten_exit_soft_fullscreen=()=>(restoreOldWindowedStyle?.(),restoreOldWindowedStyle=null,0);_emscripten_exit_soft_fullscreen.sig="i";var _emscripten_exit_fullscreen=()=>{if(!JSEvents.fullscreenEnabled())return-1;JSEvents.removeDeferredCalls(JSEvents_requestFullscreen);var e=specialHTMLTargets[1];if(e.exitFullscreen)e.fullscreenElement&&e.exitFullscreen();else if(e.webkitExitFullscreen)e.webkitFullscreenElement&&e.webkitExitFullscreen();else return-1;return 0};_emscripten_exit_fullscreen.sig="i";var fillPointerlockChangeEventData=e=>{var r=document.pointerLockElement||document.mozPointerLockElement||document.webkitPointerLockElement||document.msPointerLockElement,t=!!r;HEAP8[e>>>0]=t;var n=JSEvents.getNodeNameForTarget(r),a=r?.id||"";stringToUTF8(n,e+1,128),stringToUTF8(a,e+129,128)},registerPointerlockChangeEventCallback=(e,r,t,n,a,o,_)=>{JSEvents.pointerlockChangeEvent||(JSEvents.pointerlockChangeEvent=_malloc(257));var c=(u=event)=>{var d=JSEvents.pointerlockChangeEvent;fillPointerlockChangeEventData(d),((p,g,v)=>{})(a,d,r)&&u.preventDefault()},l={target:e,eventTypeString:o,callbackfunc:n,handlerFunc:c,useCapture:t};return JSEvents.registerOrRemoveHandler(l)};function _emscripten_set_pointerlockchange_callback_on_thread(e,r,t,n,a){return e>>>=0,r>>>=0,n>>>=0,a>>>=0,!document||!document.body||!document.body.requestPointerLock&&!document.body.mozRequestPointerLock&&!document.body.webkitRequestPointerLock&&!document.body.msRequestPointerLock?-1:(e=findEventTarget(e),e?(registerPointerlockChangeEventCallback(e,r,t,n,20,"mozpointerlockchange",a),registerPointerlockChangeEventCallback(e,r,t,n,20,"webkitpointerlockchange",a),registerPointerlockChangeEventCallback(e,r,t,n,20,"mspointerlockchange",a),registerPointerlockChangeEventCallback(e,r,t,n,20,"pointerlockchange",a)):-4)}_emscripten_set_pointerlockchange_callback_on_thread.sig="ippipp";var registerPointerlockErrorEventCallback=(e,r,t,n,a,o,_)=>{var c=(u=event)=>{((d,p,g)=>{})(a,0,r)&&u.preventDefault()},l={target:e,eventTypeString:o,callbackfunc:n,handlerFunc:c,useCapture:t};return JSEvents.registerOrRemoveHandler(l)};function _emscripten_set_pointerlockerror_callback_on_thread(e,r,t,n,a){return e>>>=0,r>>>=0,n>>>=0,a>>>=0,!document||!document.body.requestPointerLock&&!document.body.mozRequestPointerLock&&!document.body.webkitRequestPointerLock&&!document.body.msRequestPointerLock?-1:(e=findEventTarget(e),e?(registerPointerlockErrorEventCallback(e,r,t,n,38,"mozpointerlockerror",a),registerPointerlockErrorEventCallback(e,r,t,n,38,"webkitpointerlockerror",a),registerPointerlockErrorEventCallback(e,r,t,n,38,"mspointerlockerror",a),registerPointerlockErrorEventCallback(e,r,t,n,38,"pointerlockerror",a)):-4)}_emscripten_set_pointerlockerror_callback_on_thread.sig="ippipp";function _emscripten_get_pointerlock_status(e){return e>>>=0,e&&fillPointerlockChangeEventData(e),!document.body||!document.body.requestPointerLock&&!document.body.mozRequestPointerLock&&!document.body.webkitRequestPointerLock&&!document.body.msRequestPointerLock?-1:0}_emscripten_get_pointerlock_status.sig="ip";var requestPointerLock=e=>{if(e.requestPointerLock)e.requestPointerLock();else return document.body.requestPointerLock?-3:-1;return 0};function _emscripten_request_pointerlock(e,r){return e>>>=0,e=findEventTarget(e),e?e.requestPointerLock?JSEvents.canPerformEventHandlerRequests()?requestPointerLock(e):r?(JSEvents.deferCall(requestPointerLock,2,[e]),1):-2:-1:-4}_emscripten_request_pointerlock.sig="ipi";var _emscripten_exit_pointerlock=()=>{if(JSEvents.removeDeferredCalls(requestPointerLock),document.exitPointerLock)document.exitPointerLock();else return-1;return 0};_emscripten_exit_pointerlock.sig="i";var _emscripten_vibrate=e=>navigator.vibrate?(navigator.vibrate(e),0):-1;_emscripten_vibrate.sig="ii";function _emscripten_vibrate_pattern(e,r){if(e>>>=0,!navigator.vibrate)return-1;for(var t=[],n=0;n<r;++n){var a=HEAP32[e+n*4>>>2>>>0];t.push(a)}return navigator.vibrate(t),0}_emscripten_vibrate_pattern.sig="ipi";var fillVisibilityChangeEventData=e=>{var r=["hidden","visible","prerender","unloaded"],t=r.indexOf(document.visibilityState);HEAP8[e>>>0]=document.hidden,HEAP32[e+4>>>2>>>0]=t},registerVisibilityChangeEventCallback=(e,r,t,n,a,o,_)=>{JSEvents.visibilityChangeEvent||(JSEvents.visibilityChangeEvent=_malloc(8));var c=(u=event)=>{var d=JSEvents.visibilityChangeEvent;fillVisibilityChangeEventData(d),((p,g,v)=>{})(a,d,r)&&u.preventDefault()},l={target:e,eventTypeString:o,callbackfunc:n,handlerFunc:c,useCapture:t};return JSEvents.registerOrRemoveHandler(l)};function _emscripten_set_visibilitychange_callback_on_thread(e,r,t,n){return e>>>=0,t>>>=0,n>>>=0,registerVisibilityChangeEventCallback(specialHTMLTargets[1],e,r,t,21,"visibilitychange",n)}_emscripten_set_visibilitychange_callback_on_thread.sig="ipipp";function _emscripten_get_visibility_status(e){return e>>>=0,typeof document.visibilityState>"u"&&typeof document.hidden>"u"?-1:(fillVisibilityChangeEventData(e),0)}_emscripten_get_visibility_status.sig="ip";var registerTouchEventCallback=(e,r,t,n,a,o,_)=>{JSEvents.touchEvent||(JSEvents.touchEvent=_malloc(1552)),e=findEventTarget(e);var c=u=>{var d,p={},g=u.touches;for(let m of g)m.isChanged=m.onTarget=0,p[m.identifier]=m;for(let m of u.changedTouches)m.isChanged=1,p[m.identifier]=m;for(let m of u.targetTouches)p[m.identifier].onTarget=1;var v=JSEvents.touchEvent;HEAPF64[v>>>3>>>0]=u.timeStamp,HEAP8[v+12>>>0]=u.ctrlKey,HEAP8[v+13>>>0]=u.shiftKey,HEAP8[v+14>>>0]=u.altKey,HEAP8[v+15>>>0]=u.metaKey;var w=v+16,S=getBoundingClientRect(e),F=0;for(let m of Object.values(p)){var f=w>>>2;if(HEAP32[f+0>>>0]=m.identifier,HEAP32[f+1>>>0]=m.screenX,HEAP32[f+2>>>0]=m.screenY,HEAP32[f+3>>>0]=m.clientX,HEAP32[f+4>>>0]=m.clientY,HEAP32[f+5>>>0]=m.pageX,HEAP32[f+6>>>0]=m.pageY,HEAP8[w+28>>>0]=m.isChanged,HEAP8[w+29>>>0]=m.onTarget,HEAP32[f+8>>>0]=m.clientX-(S.left|0),HEAP32[f+9>>>0]=m.clientY-(S.top|0),w+=48,++F>31)break}HEAP32[v+8>>>2>>>0]=F,((m,y,b)=>{})(a,v,r)&&u.preventDefault()},l={target:e,allowsDeferredCalls:o=="touchstart"||o=="touchend",eventTypeString:o,callbackfunc:n,handlerFunc:c,useCapture:t};return JSEvents.registerOrRemoveHandler(l)};function _emscripten_set_touchstart_callback_on_thread(e,r,t,n,a){return e>>>=0,r>>>=0,n>>>=0,a>>>=0,registerTouchEventCallback(e,r,t,n,22,"touchstart",a)}_emscripten_set_touchstart_callback_on_thread.sig="ippipp";function _emscripten_set_touchend_callback_on_thread(e,r,t,n,a){return e>>>=0,r>>>=0,n>>>=0,a>>>=0,registerTouchEventCallback(e,r,t,n,23,"touchend",a)}_emscripten_set_touchend_callback_on_thread.sig="ippipp";function _emscripten_set_touchmove_callback_on_thread(e,r,t,n,a){return e>>>=0,r>>>=0,n>>>=0,a>>>=0,registerTouchEventCallback(e,r,t,n,24,"touchmove",a)}_emscripten_set_touchmove_callback_on_thread.sig="ippipp";function _emscripten_set_touchcancel_callback_on_thread(e,r,t,n,a){return e>>>=0,r>>>=0,n>>>=0,a>>>=0,registerTouchEventCallback(e,r,t,n,25,"touchcancel",a)}_emscripten_set_touchcancel_callback_on_thread.sig="ippipp";var fillGamepadEventData=(e,r)=>{HEAPF64[e>>>3>>>0]=r.timestamp;for(var t=0;t<r.axes.length;++t)HEAPF64[e+t*8+16>>>3>>>0]=r.axes[t];for(var t=0;t<r.buttons.length;++t)typeof r.buttons[t]=="object"?HEAPF64[e+t*8+528>>>3>>>0]=r.buttons[t].value:HEAPF64[e+t*8+528>>>3>>>0]=r.buttons[t];for(var t=0;t<r.buttons.length;++t)typeof r.buttons[t]=="object"?HEAP8[e+t+1040>>>0]=r.buttons[t].pressed:HEAP8[e+t+1040>>>0]=r.buttons[t]==1;HEAP8[e+1104>>>0]=r.connected,HEAP32[e+1108>>>2>>>0]=r.index,HEAP32[e+8>>>2>>>0]=r.axes.length,HEAP32[e+12>>>2>>>0]=r.buttons.length,stringToUTF8(r.id,e+1112,64),stringToUTF8(r.mapping,e+1176,64)},registerGamepadEventCallback=(e,r,t,n,a,o,_)=>{JSEvents.gamepadEvent||(JSEvents.gamepadEvent=_malloc(1240));var c=(u=event)=>{var d=JSEvents.gamepadEvent;fillGamepadEventData(d,u.gamepad),((p,g,v)=>{})(a,d,r)&&u.preventDefault()},l={target:findEventTarget(e),allowsDeferredCalls:!0,eventTypeString:o,callbackfunc:n,handlerFunc:c,useCapture:t};return JSEvents.registerOrRemoveHandler(l)},_emscripten_sample_gamepad_data=()=>{try{if(navigator.getGamepads)return(JSEvents.lastGamepadState=navigator.getGamepads())?0:-1}catch{navigator.getGamepads=null}return-1};_emscripten_sample_gamepad_data.sig="i";function _emscripten_set_gamepadconnected_callback_on_thread(e,r,t,n){return e>>>=0,t>>>=0,n>>>=0,_emscripten_sample_gamepad_data()?-1:registerGamepadEventCallback(2,e,r,t,26,"gamepadconnected",n)}_emscripten_set_gamepadconnected_callback_on_thread.sig="ipipp";function _emscripten_set_gamepaddisconnected_callback_on_thread(e,r,t,n){return e>>>=0,t>>>=0,n>>>=0,_emscripten_sample_gamepad_data()?-1:registerGamepadEventCallback(2,e,r,t,27,"gamepaddisconnected",n)}_emscripten_set_gamepaddisconnected_callback_on_thread.sig="ipipp";var _emscripten_get_num_gamepads=()=>JSEvents.lastGamepadState.length;_emscripten_get_num_gamepads.sig="i";function _emscripten_get_gamepad_status(e,r){return r>>>=0,e<0||e>=JSEvents.lastGamepadState.length?-5:JSEvents.lastGamepadState[e]?(fillGamepadEventData(r,JSEvents.lastGamepadState[e]),0):-7}_emscripten_get_gamepad_status.sig="iip";var registerBeforeUnloadEventCallback=(e,r,t,n,a,o)=>{var _=(l=event)=>{var u=((d,p,g)=>{})(a,0,r);if(u&&(u=UTF8ToString(u)),u)return l.preventDefault(),l.returnValue=u,u},c={target:findEventTarget(e),eventTypeString:o,callbackfunc:n,handlerFunc:_,useCapture:t};return JSEvents.registerOrRemoveHandler(c)};function _emscripten_set_beforeunload_callback_on_thread(e,r,t){return e>>>=0,r>>>=0,t>>>=0,typeof onbeforeunload>"u"?-1:t!==1?-5:registerBeforeUnloadEventCallback(2,e,!0,r,28,"beforeunload")}_emscripten_set_beforeunload_callback_on_thread.sig="ippp";var fillBatteryEventData=(e,r)=>{HEAPF64[e>>>3>>>0]=r.chargingTime,HEAPF64[e+8>>>3>>>0]=r.dischargingTime,HEAPF64[e+16>>>3>>>0]=r.level,HEAP8[e+24>>>0]=r.charging},battery=()=>navigator.battery||navigator.mozBattery||navigator.webkitBattery,registerBatteryEventCallback=(e,r,t,n,a,o,_)=>{JSEvents.batteryEvent||(JSEvents.batteryEvent=_malloc(32));var c=(u=event)=>{var d=JSEvents.batteryEvent;fillBatteryEventData(d,battery()),((p,g,v)=>{})(a,d,r)&&u.preventDefault()},l={target:findEventTarget(e),eventTypeString:o,callbackfunc:n,handlerFunc:c,useCapture:t};return JSEvents.registerOrRemoveHandler(l)};function _emscripten_set_batterychargingchange_callback_on_thread(e,r,t){return e>>>=0,r>>>=0,t>>>=0,battery()?registerBatteryEventCallback(battery(),e,!0,r,29,"chargingchange",t):-1}_emscripten_set_batterychargingchange_callback_on_thread.sig="ippp";function _emscripten_set_batterylevelchange_callback_on_thread(e,r,t){return e>>>=0,r>>>=0,t>>>=0,battery()?registerBatteryEventCallback(battery(),e,!0,r,30,"levelchange",t):-1}_emscripten_set_batterylevelchange_callback_on_thread.sig="ippp";function _emscripten_get_battery_status(e){return e>>>=0,battery()?(fillBatteryEventData(e,battery()),0):-1}_emscripten_get_battery_status.sig="ip";function __emscripten_set_offscreencanvas_size(e,r,t){return e>>>=0,-1}__emscripten_set_offscreencanvas_size.sig="ipii";function _emscripten_set_element_css_size(e,r,t){return e>>>=0,e=findEventTarget(e),e?(e.style.width=r+"px",e.style.height=t+"px",0):-4}_emscripten_set_element_css_size.sig="ipdd";function _emscripten_get_element_css_size(e,r,t){if(e>>>=0,r>>>=0,t>>>=0,e=findEventTarget(e),!e)return-4;var n=getBoundingClientRect(e);return HEAPF64[r>>>3>>>0]=n.width,HEAPF64[t>>>3>>>0]=n.height,0}_emscripten_get_element_css_size.sig="ippp";var _emscripten_html5_remove_all_event_listeners=()=>JSEvents.removeAllEventListeners();_emscripten_html5_remove_all_event_listeners.sig="v";var _emscripten_request_animation_frame=function(e,r){return e>>>=0,r>>>=0,requestAnimationFrame(t=>((n,a)=>{})(t,r))};_emscripten_request_animation_frame.sig="ipp";var _emscripten_cancel_animation_frame=e=>cancelAnimationFrame(e);_emscripten_cancel_animation_frame.sig="vi";var _emscripten_request_animation_frame_loop=function(e,r){e>>>=0,r>>>=0;function t(n){((a,o)=>{})(n,r)&&requestAnimationFrame(t)}return requestAnimationFrame(t)};_emscripten_request_animation_frame_loop.sig="vpp";var _emscripten_performance_now=()=>performance.now();_emscripten_performance_now.sig="d";var _emscripten_get_device_pixel_ratio=()=>devicePixelRatio;_emscripten_get_device_pixel_ratio.sig="d";function _emscripten_get_callstack(e,r,t){r>>>=0;var n=getCallstack(e);if(!r||t<=0)return lengthBytesUTF8(n)+1;var a=stringToUTF8(n,r,t);return a+1}_emscripten_get_callstack.sig="iipi";var convertFrameToPC=e=>(abort("Cannot use convertFrameToPC (needed by __builtin_return_address) without -sUSE_OFFSET_CONVERTER"),0);function _emscripten_return_address(e){var r=jsStackTrace().split(`\n`);r[0]=="Error"&&r.shift();var t=r[e+3];return convertFrameToPC(t)}_emscripten_return_address.sig="pi";var UNWIND_CACHE={},saveInUnwindCache=e=>{e.forEach(r=>{var t=convertFrameToPC(r);t&&(UNWIND_CACHE[t]=r)})};function _emscripten_stack_snapshot(){var e=jsStackTrace().split(`\n`);return e[0]=="Error"&&e.shift(),saveInUnwindCache(e),UNWIND_CACHE.last_addr=convertFrameToPC(e[3]),UNWIND_CACHE.last_stack=e,UNWIND_CACHE.last_addr}_emscripten_stack_snapshot.sig="p";function _emscripten_stack_unwind_buffer(e,r,t){e>>>=0,r>>>=0;var n;UNWIND_CACHE.last_addr==e?n=UNWIND_CACHE.last_stack:(n=jsStackTrace().split(`\n`),n[0]=="Error"&&n.shift(),saveInUnwindCache(n));for(var a=3;n[a]&&convertFrameToPC(n[a])!=e;)++a;for(var o=0;o<t&&n[o+a];++o)HEAP32[r+o*4>>>2>>>0]=convertFrameToPC(n[o+a]);return o}_emscripten_stack_unwind_buffer.sig="ippi";function _emscripten_pc_get_function(e){return e>>>=0,abort("Cannot use emscripten_pc_get_function without -sUSE_OFFSET_CONVERTER"),0}_emscripten_pc_get_function.sig="pp";var convertPCtoSourceLocation=e=>{if(UNWIND_CACHE.last_get_source_pc==e)return UNWIND_CACHE.last_source;var r,t;if(!t){var n=UNWIND_CACHE[e];if(!n)return null;(r=/\((.*):(\d+):(\d+)\)$/.exec(n))?t={file:r[1],line:r[2],column:r[3]}:(r=/@(.*):(\d+):(\d+)/.exec(n))&&(t={file:r[1],line:r[2],column:r[3]})}return UNWIND_CACHE.last_get_source_pc=e,UNWIND_CACHE.last_source=t,t};function _emscripten_pc_get_file(e){e>>>=0;var r=convertPCtoSourceLocation(e);return r?(_emscripten_pc_get_file.ret&&_free(_emscripten_pc_get_file.ret),_emscripten_pc_get_file.ret=stringToNewUTF8(r.file),_emscripten_pc_get_file.ret):0}_emscripten_pc_get_file.sig="pp";function _emscripten_pc_get_line(e){e>>>=0;var r=convertPCtoSourceLocation(e);return r?r.line:0}_emscripten_pc_get_line.sig="ip";function _emscripten_pc_get_column(e){e>>>=0;var r=convertPCtoSourceLocation(e);return r&&r.column||0}_emscripten_pc_get_column.sig="ip";var _sched_yield=()=>0;Module._sched_yield=_sched_yield,_sched_yield.sig="i";function _random_get(e,r){e>>>=0,r>>>=0;try{return _getentropy(e,r),0}catch(t){if(typeof FS>"u"||t.name!=="ErrnoError")throw t;return t.errno}}_random_get.sig="ipp";var checkWasiClock=e=>e==0||e==1||e==2||e==3;function _clock_time_get(e,r,t){if(r=bigintToI53Checked(r),t>>>=0,!checkWasiClock(e))return 28;var n;if(e===0)n=Date.now();else if(nowIsMonotonic)n=_emscripten_get_now();else return 52;var a=Math.round(n*1e3*1e3);return HEAP32[t>>>2>>>0]=a>>>0,HEAP32[t+4>>>2>>>0]=a/Math.pow(2,32)>>>0,0}_clock_time_get.sig="iijp";function _clock_res_get(e,r){if(r>>>=0,!checkWasiClock(e))return 28;var t;if(e===0)t=1e3*1e3;else if(nowIsMonotonic)t=_emscripten_get_now_res();else return 52;return HEAP32[r>>>2>>>0]=t>>>0,HEAP32[r+4>>>2>>>0]=t/Math.pow(2,32)>>>0,0}_clock_res_get.sig="iip";var wasiRightsToMuslOFlags=e=>{if(e&2&&e&64)return 2;if(e&2)return 0;if(e&64)return 1;throw new FS.ErrnoError(28)},wasiOFlagsToMuslOFlags=e=>{var r=0;return e&1&&(r|=64),e&8&&(r|=512),e&2&&(r|=65536),e&4&&(r|=128),r},_emscripten_unwind_to_js_event_loop=()=>{throw"unwind"};_emscripten_unwind_to_js_event_loop.sig="v";var safeSetTimeout=(e,r)=>(runtimeKeepalivePush(),setTimeout(()=>{runtimeKeepalivePop(),callUserCallback(e)},r)),setImmediateWrapped=e=>{setImmediateWrapped.mapping||(setImmediateWrapped.mapping=[]);var r=setImmediateWrapped.mapping.length;return setImmediateWrapped.mapping[r]=setImmediate(()=>{setImmediateWrapped.mapping[r]=void 0,e()}),r},clearImmediateWrapped=e=>{clearImmediate(setImmediateWrapped.mapping[e]),setImmediateWrapped.mapping[e]=void 0},polyfillSetImmediate=()=>{},_emscripten_set_immediate=function(e,r){return e>>>=0,r>>>=0,runtimeKeepalivePush(),emSetImmediate(()=>{runtimeKeepalivePop(),callUserCallback(()=>(t=>{})(r))})};_emscripten_set_immediate.sig="ipp";var _emscripten_clear_immediate=e=>{runtimeKeepalivePop(),emClearImmediate(e)};_emscripten_clear_immediate.sig="vi";var _emscripten_set_immediate_loop=function(e,r){e>>>=0,r>>>=0;function t(){callUserCallback(()=>{(n=>{})(r)?emSetImmediate(t):runtimeKeepalivePop()})}runtimeKeepalivePush(),emSetImmediate(t)};_emscripten_set_immediate_loop.sig="vpp";var _emscripten_set_timeout=function(e,r,t){return e>>>=0,t>>>=0,safeSetTimeout(()=>(n=>{})(t),r)};_emscripten_set_timeout.sig="ipdp";var _emscripten_clear_timeout=clearTimeout;_emscripten_clear_timeout.sig="vi";var _emscripten_set_timeout_loop=function(e,r,t){e>>>=0,t>>>=0;function n(){var a=_emscripten_get_now(),o=a+r;runtimeKeepalivePop(),callUserCallback(()=>{((_,c)=>{})(a,t)&&(runtimeKeepalivePush(),setTimeout(n,o-_emscripten_get_now()))})}return runtimeKeepalivePush(),setTimeout(n,0)};_emscripten_set_timeout_loop.sig="vpdp";var _emscripten_set_interval=function(e,r,t){return e>>>=0,t>>>=0,runtimeKeepalivePush(),setInterval(()=>{callUserCallback(()=>(n=>{})(t))},r)};_emscripten_set_interval.sig="ipdp";var _emscripten_clear_interval=e=>{runtimeKeepalivePop(),clearInterval(e)};_emscripten_clear_interval.sig="vi";var idsToPromises=(e,r)=>{for(var t=[],n=0;n<r;n++){var a=HEAP32[e+n*4>>>2>>>0];t[n]=getPromise(a)}return t},makePromiseCallback=(e,r)=>t=>{runtimeKeepalivePop();var n=stackSave(),a=stackAlloc(POINTER_SIZE);HEAPU32[a>>>2>>>0]=0;try{var o=((l,u,d)=>{})(a,r,t),_=HEAPU32[a>>>2>>>0]}catch(l){throw typeof l!="number"?0:l}finally{stackRestore(n)}switch(o){case 0:return _;case 1:return getPromise(_);case 2:var c=getPromise(_);return _emscripten_promise_destroy(_),c;case 3:throw _}};function _emscripten_promise_then(e,r,t,n){e>>>=0,r>>>=0,t>>>=0,n>>>=0,runtimeKeepalivePush();var a=getPromise(e),o=promiseMap.allocate({promise:a.then(makePromiseCallback(r,n),makePromiseCallback(t,n))});return o}_emscripten_promise_then.sig="ppppp";var _emscripten_promise_all=function(e,r,t){e>>>=0,r>>>=0,t>>>=0;var n=idsToPromises(e,t),a=promiseMap.allocate({promise:Promise.all(n).then(o=>{if(r)for(var _=0;_<t;_++){var c=o[_];HEAPU32[r+_*4>>>2>>>0]=c}return r})});return a};_emscripten_promise_all.sig="pppp";var setPromiseResult=(e,r,t)=>{var n=r?0:3;HEAP32[e>>>2>>>0]=n,HEAPU32[e+4>>>2>>>0]=t},_emscripten_promise_all_settled=function(e,r,t){e>>>=0,r>>>=0,t>>>=0;var n=idsToPromises(e,t),a=promiseMap.allocate({promise:Promise.allSettled(n).then(o=>{if(r)for(var _=r,c=0;c<t;c++,_+=8)o[c].status==="fulfilled"?setPromiseResult(_,!0,o[c].value):setPromiseResult(_,!1,o[c].reason);return r})});return a};_emscripten_promise_all_settled.sig="pppp";var _emscripten_promise_any=function(e,r,t){e>>>=0,r>>>=0,t>>>=0;var n=idsToPromises(e,t),a=promiseMap.allocate({promise:Promise.any(n).catch(o=>{if(r)for(var _=0;_<t;_++)HEAPU32[r+_*4>>>2>>>0]=o.errors[_];throw r})});return a};_emscripten_promise_any.sig="pppp";function _emscripten_promise_race(e,r){e>>>=0,r>>>=0;var t=idsToPromises(e,r),n=promiseMap.allocate({promise:Promise.race(t)});return n}_emscripten_promise_race.sig="ppp";var _emscripten_promise_await=function(e,r){return e>>>=0,r>>>=0,Asyncify.handleSleep(t=>{getPromise(r).then(n=>{setPromiseResult(e,!0,n),t()},n=>{setPromiseResult(e,!1,n),t()})})};_emscripten_promise_await.sig="vpp",_emscripten_promise_await.isAsync=!0;function ___resumeException(e){throw e>>>=0,exceptionLast||(exceptionLast=e),exceptionLast}___resumeException.sig="vp";var findMatchingCatch=e=>{var r=exceptionLast;if(!r)return setTempRet0(0),0;var t=new ExceptionInfo(r);t.set_adjusted_ptr(r);var n=t.get_type();if(!n)return setTempRet0(0),r;for(var a of e){if(a===0||a===n)break;var o=t.ptr+16;if(___cxa_can_catch(a,n,o))return setTempRet0(a),r}return setTempRet0(n),r};function ___cxa_find_matching_catch_2(){return findMatchingCatch([])}___cxa_find_matching_catch_2.sig="p";function ___cxa_find_matching_catch_3(e){return e>>>=0,findMatchingCatch([e])}___cxa_find_matching_catch_3.sig="pp";function ___cxa_find_matching_catch_4(e,r){return e>>>=0,r>>>=0,findMatchingCatch([e,r])}___cxa_find_matching_catch_4.sig="ppp";var exceptionCaught=[],___cxa_rethrow=()=>{var e=exceptionCaught.pop();e||abort("no exception to throw");var r=e.excPtr;throw e.get_rethrown()||(exceptionCaught.push(e),e.set_rethrown(!0),e.set_caught(!1),uncaughtExceptionCount++),exceptionLast=r,exceptionLast};___cxa_rethrow.sig="v";function _llvm_eh_typeid_for(e){return e>>>=0,e}_llvm_eh_typeid_for.sig="vp";function ___cxa_begin_catch(e){e>>>=0;var r=new ExceptionInfo(e);return r.get_caught()||(r.set_caught(!0),uncaughtExceptionCount--),r.set_rethrown(!1),exceptionCaught.push(r),___cxa_increment_exception_refcount(e),___cxa_get_exception_ptr(e)}___cxa_begin_catch.sig="pp";var ___cxa_end_catch=()=>{_setThrew(0,0);var e=exceptionCaught.pop();___cxa_decrement_exception_refcount(e.excPtr),exceptionLast=0};___cxa_end_catch.sig="v";var ___cxa_uncaught_exceptions=()=>uncaughtExceptionCount;Module.___cxa_uncaught_exceptions=___cxa_uncaught_exceptions,___cxa_uncaught_exceptions.sig="i";function ___cxa_call_unexpected(e){return e>>>=0,abort("Unexpected exception thrown, this is not properly supported - aborting")}___cxa_call_unexpected.sig="vp";function ___cxa_current_primary_exception(){if(!exceptionCaught.length)return 0;var e=exceptionCaught[exceptionCaught.length-1];return ___cxa_increment_exception_refcount(e.excPtr),e.excPtr}Module.___cxa_current_primary_exception=___cxa_current_primary_exception,___cxa_current_primary_exception.sig="p";function ___cxa_rethrow_primary_exception(e){if(e>>>=0,!!e){var r=new ExceptionInfo(e);exceptionCaught.push(r),r.set_rethrown(!0),___cxa_rethrow()}}Module.___cxa_rethrow_primary_exception=___cxa_rethrow_primary_exception,___cxa_rethrow_primary_exception.sig="vp";var _emscripten_set_main_loop_timing=(e,r)=>{if(Browser.mainLoop.timingMode=e,Browser.mainLoop.timingValue=r,!Browser.mainLoop.func)return 1;if(Browser.mainLoop.running||(runtimeKeepalivePush(),Browser.mainLoop.running=!0),e==0)Browser.mainLoop.scheduler=function(){var _=Math.max(0,Browser.mainLoop.tickStartTime+r-_emscripten_get_now())|0;setTimeout(Browser.mainLoop.runner,_)},Browser.mainLoop.method="timeout";else if(e==1)Browser.mainLoop.scheduler=function(){Browser.requestAnimationFrame(Browser.mainLoop.runner)},Browser.mainLoop.method="rAF";else if(e==2){if(typeof Browser.setImmediate>"u")if(typeof setImmediate>"u"){var t=[],n="setimmediate",a=o=>{(o.data===n||o.data.target===n)&&(o.stopPropagation(),t.shift()())};addEventListener("message",a,!0),Browser.setImmediate=(o=>{t.push(o),ENVIRONMENT_IS_WORKER?(Module.setImmediates??(Module.setImmediates=[]),Module.setImmediates.push(o),postMessage({target:n})):postMessage(n,"*")})}else Browser.setImmediate=setImmediate;Browser.mainLoop.scheduler=function(){Browser.setImmediate(Browser.mainLoop.runner)},Browser.mainLoop.method="immediate"}return 0};_emscripten_set_main_loop_timing.sig="iii";var setMainLoop=(e,r,t,n,a)=>{Browser.mainLoop.func=e,Browser.mainLoop.arg=n;var o=Browser.mainLoop.currentlyRunningMainloop;function _(){return o<Browser.mainLoop.currentlyRunningMainloop?(runtimeKeepalivePop(),maybeExit(),!1):!0}if(Browser.mainLoop.running=!1,Browser.mainLoop.runner=function(){if(!ABORT){if(Browser.mainLoop.queue.length>0){var l=Date.now(),u=Browser.mainLoop.queue.shift();if(u.func(u.arg),Browser.mainLoop.remainingBlockers){var d=Browser.mainLoop.remainingBlockers,p=d%1==0?d-1:Math.floor(d);u.counted?Browser.mainLoop.remainingBlockers=p:(p=p+.5,Browser.mainLoop.remainingBlockers=(8*d+p)/9)}if(Browser.mainLoop.updateStatus(),!_())return;setTimeout(Browser.mainLoop.runner,0);return}if(_()){if(Browser.mainLoop.currentFrameNumber=Browser.mainLoop.currentFrameNumber+1|0,Browser.mainLoop.timingMode==1&&Browser.mainLoop.timingValue>1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}else Browser.mainLoop.timingMode==0&&(Browser.mainLoop.tickStartTime=_emscripten_get_now());Browser.mainLoop.runIter(e),_()&&(typeof SDL=="object"&&SDL.audio?.queueNewAudioData?.(),Browser.mainLoop.scheduler())}}},a||(r&&r>0?_emscripten_set_main_loop_timing(0,1e3/r):_emscripten_set_main_loop_timing(1,1),Browser.mainLoop.scheduler()),t)throw"unwind"},Browser={mainLoop:{running:!1,scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause(){Browser.mainLoop.scheduler=null,Browser.mainLoop.currentlyRunningMainloop++},resume(){Browser.mainLoop.currentlyRunningMainloop++;var e=Browser.mainLoop.timingMode,r=Browser.mainLoop.timingValue,t=Browser.mainLoop.func;Browser.mainLoop.func=null,setMainLoop(t,0,!1,Browser.mainLoop.arg,!0),_emscripten_set_main_loop_timing(e,r),Browser.mainLoop.scheduler()},updateStatus(){if(Module.setStatus){var e=Module.statusMessage||"Please wait...",r=Browser.mainLoop.remainingBlockers,t=Browser.mainLoop.expectedBlockers;r?r<t?Module.setStatus("{message} ({expected - remaining}/{expected})"):Module.setStatus(e):Module.setStatus("")}},runIter(e){if(!ABORT){if(Module.preMainLoop){var r=Module.preMainLoop();if(r===!1)return}callUserCallback(e),Module.postMainLoop?.()}}},useWebGL:!1,isFullscreen:!1,pointerLock:!1,moduleContextCreatedCallbacks:[],workers:[],init(){if(Browser.initted)return;Browser.initted=!0;var e={};e.canHandle=function(o){return!Module.noImageDecoding&&/\.(jpg|jpeg|png|bmp|webp)$/i.test(o)},e.handle=function(o,_,c,l){var u=new Blob([o],{type:Browser.getMimetype(_)});u.size!==o.length&&(u=new Blob([new Uint8Array(o).buffer],{type:Browser.getMimetype(_)}));var d=URL.createObjectURL(u),p=new Image;p.onload=()=>{var g=document.createElement("canvas");g.width=p.width,g.height=p.height;var v=g.getContext("2d");v.drawImage(p,0,0),preloadedImages[_]=g,URL.revokeObjectURL(d),c?.(o)},p.onerror=g=>{err(`Image ${d} could not be decoded`),l?.()},p.src=d},preloadPlugins.push(e);var r={};r.canHandle=function(o){return!Module.noAudioDecoding&&o.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},r.handle=function(o,_,c,l){var u=!1;function d(S){u||(u=!0,preloadedAudios[_]=S,c?.(o))}function p(){u||(u=!0,preloadedAudios[_]=new Audio,l?.())}var g=new Blob([o],{type:Browser.getMimetype(_)}),v=URL.createObjectURL(g),w=new Audio;w.addEventListener("canplaythrough",()=>d(w),!1),w.onerror=function(F){if(u)return;err(`warning: browser could not fully decode audio ${_}, trying slower base64 approach`);function f(m){for(var y="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",b="=",E="",k=0,h=0,A=0;A<m.length;A++)for(k=k<<8|m[A],h+=8;h>=6;){var P=k>>h-6&63;h-=6,E+=y[P]}return h==2?(E+=y[(k&3)<<4],E+=b+b):h==4&&(E+=y[(k&15)<<2],E+=b),E}w.src="data:audio/x-"+_.substr(-3)+";base64,"+f(o),d(w)},w.src=v,safeSetTimeout(()=>{d(w)},1e4)},preloadPlugins.push(r);function t(){Browser.pointerLock=document.pointerLockElement===Module.canvas||document.mozPointerLockElement===Module.canvas||document.webkitPointerLockElement===Module.canvas||document.msPointerLockElement===Module.canvas}var n=Module.canvas;n&&(n.requestPointerLock=n.requestPointerLock||n.mozRequestPointerLock||n.webkitRequestPointerLock||n.msRequestPointerLock||(()=>{}),n.exitPointerLock=document.exitPointerLock||document.mozExitPointerLock||document.webkitExitPointerLock||document.msExitPointerLock||(()=>{}),n.exitPointerLock=n.exitPointerLock.bind(document),document.addEventListener("pointerlockchange",t,!1),document.addEventListener("mozpointerlockchange",t,!1),document.addEventListener("webkitpointerlockchange",t,!1),document.addEventListener("mspointerlockchange",t,!1),Module.elementPointerLock&&n.addEventListener("click",a=>{!Browser.pointerLock&&Module.canvas.requestPointerLock&&(Module.canvas.requestPointerLock(),a.preventDefault())},!1))},createContext(e,r,t,n){if(r&&Module.ctx&&e==Module.canvas)return Module.ctx;var a,o;if(r){var _={antialias:!1,alpha:!1,majorVersion:1};if(n)for(var c in n)_[c]=n[c];typeof GL<"u"&&(o=GL.createContext(e,_),o&&(a=GL.getContext(o).GLctx))}else a=e.getContext("2d");return a?(t&&(Module.ctx=a,r&&GL.makeContextCurrent(o),Browser.useWebGL=r,Browser.moduleContextCreatedCallbacks.forEach(l=>l()),Browser.init()),a):null},fullscreenHandlersInstalled:!1,lockPointer:void 0,resizeCanvas:void 0,requestFullscreen(e,r){Browser.lockPointer=e,Browser.resizeCanvas=r,typeof Browser.lockPointer>"u"&&(Browser.lockPointer=!0),typeof Browser.resizeCanvas>"u"&&(Browser.resizeCanvas=!1);var t=Module.canvas;function n(){Browser.isFullscreen=!1;var o=t.parentNode;(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===o?(t.exitFullscreen=Browser.exitFullscreen,Browser.lockPointer&&t.requestPointerLock(),Browser.isFullscreen=!0,Browser.resizeCanvas?Browser.setFullscreenCanvasSize():Browser.updateCanvasDimensions(t)):(o.parentNode.insertBefore(t,o),o.parentNode.removeChild(o),Browser.resizeCanvas?Browser.setWindowedCanvasSize():Browser.updateCanvasDimensions(t)),Module.onFullScreen?.(Browser.isFullscreen),Module.onFullscreen?.(Browser.isFullscreen)}Browser.fullscreenHandlersInstalled||(Browser.fullscreenHandlersInstalled=!0,document.addEventListener("fullscreenchange",n,!1),document.addEventListener("mozfullscreenchange",n,!1),document.addEventListener("webkitfullscreenchange",n,!1),document.addEventListener("MSFullscreenChange",n,!1));var a=document.createElement("div");t.parentNode.insertBefore(a,t),a.appendChild(t),a.requestFullscreen=a.requestFullscreen||a.mozRequestFullScreen||a.msRequestFullscreen||(a.webkitRequestFullscreen?()=>a.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT):null)||(a.webkitRequestFullScreen?()=>a.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT):null),a.requestFullscreen()},exitFullscreen(){if(!Browser.isFullscreen)return!1;var e=document.exitFullscreen||document.cancelFullScreen||document.mozCancelFullScreen||document.msExitFullscreen||document.webkitCancelFullScreen||(()=>{});return e.apply(document,[]),!0},nextRAF:0,fakeRequestAnimationFrame(e){var r=Date.now();if(Browser.nextRAF===0)Browser.nextRAF=r+1e3/60;else for(;r+2>=Browser.nextRAF;)Browser.nextRAF+=1e3/60;var t=Math.max(Browser.nextRAF-r,0);setTimeout(e,t)},requestAnimationFrame(e){if(typeof requestAnimationFrame=="function"){requestAnimationFrame(e);return}var r=Browser.fakeRequestAnimationFrame;r(e)},safeSetTimeout(e,r){return safeSetTimeout(e,r)},safeRequestAnimationFrame(e){return runtimeKeepalivePush(),Browser.requestAnimationFrame(()=>{runtimeKeepalivePop(),callUserCallback(e)})},getMimetype(e){return{jpg:"image/jpeg",jpeg:"image/jpeg",png:"image/png",bmp:"image/bmp",ogg:"audio/ogg",wav:"audio/wav",mp3:"audio/mpeg"}[e.substr(e.lastIndexOf(".")+1)]},getUserMedia(e){window.getUserMedia||(window.getUserMedia=navigator.getUserMedia||navigator.mozGetUserMedia),window.getUserMedia(e)},getMovementX(e){return e.movementX||e.mozMovementX||e.webkitMovementX||0},getMovementY(e){return e.movementY||e.mozMovementY||e.webkitMovementY||0},getMouseWheelDelta(e){var r=0;switch(e.type){case"DOMMouseScroll":r=e.detail/3;break;case"mousewheel":r=e.wheelDelta/120;break;case"wheel":switch(r=e.deltaY,e.deltaMode){case 0:r/=100;break;case 1:r/=3;break;case 2:r*=80;break;default:throw"unrecognized mouse wheel delta mode: "+e.deltaMode}break;default:throw"unrecognized mouse wheel event: "+e.type}return r},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseCoords(e,r){var t=Module.canvas.getBoundingClientRect(),n=Module.canvas.width,a=Module.canvas.height,o=typeof window.scrollX<"u"?window.scrollX:window.pageXOffset,_=typeof window.scrollY<"u"?window.scrollY:window.pageYOffset,c=e-(o+t.left),l=r-(_+t.top);return c=c*(n/t.width),l=l*(a/t.height),{x:c,y:l}},setMouseCoords(e,r){const{x:t,y:n}=Browser.calculateMouseCoords(e,r);Browser.mouseMovementX=t-Browser.mouseX,Browser.mouseMovementY=n-Browser.mouseY,Browser.mouseX=t,Browser.mouseY=n},calculateMouseEvent(e){if(Browser.pointerLock)e.type!="mousemove"&&"mozMovementX"in e?Browser.mouseMovementX=Browser.mouseMovementY=0:(Browser.mouseMovementX=Browser.getMovementX(e),Browser.mouseMovementY=Browser.getMovementY(e)),Browser.mouseX+=Browser.mouseMovementX,Browser.mouseY+=Browser.mouseMovementY;else{if(e.type==="touchstart"||e.type==="touchend"||e.type==="touchmove"){var r=e.touch;if(r===void 0)return;var t=Browser.calculateMouseCoords(r.pageX,r.pageY);if(e.type==="touchstart")Browser.lastTouches[r.identifier]=t,Browser.touches[r.identifier]=t;else if(e.type==="touchend"||e.type==="touchmove"){var n=Browser.touches[r.identifier];n||(n=t),Browser.lastTouches[r.identifier]=n,Browser.touches[r.identifier]=t}return}Browser.setMouseCoords(e.pageX,e.pageY)}},resizeListeners:[],updateResizeListeners(){var e=Module.canvas;Browser.resizeListeners.forEach(r=>r(e.width,e.height))},setCanvasSize(e,r,t){var n=Module.canvas;Browser.updateCanvasDimensions(n,e,r),t||Browser.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullscreenCanvasSize(){if(typeof SDL<"u"){var e=HEAPU32[SDL.screen>>>2>>>0];e=e|8388608,HEAP32[SDL.screen>>>2>>>0]=e}Browser.updateCanvasDimensions(Module.canvas),Browser.updateResizeListeners()},setWindowedCanvasSize(){if(typeof SDL<"u"){var e=HEAPU32[SDL.screen>>>2>>>0];e=e&-8388609,HEAP32[SDL.screen>>>2>>>0]=e}Browser.updateCanvasDimensions(Module.canvas),Browser.updateResizeListeners()},updateCanvasDimensions(e,r,t){r&&t?(e.widthNative=r,e.heightNative=t):(r=e.widthNative,t=e.heightNative);var n=r,a=t;if(Module.forcedAspectRatio&&Module.forcedAspectRatio>0&&(n/a<Module.forcedAspectRatio?n=Math.round(a*Module.forcedAspectRatio):a=Math.round(n/Module.forcedAspectRatio)),(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===e.parentNode&&typeof screen<"u"){var o=Math.min(screen.width/n,screen.height/a);n=Math.round(n*o),a=Math.round(a*o)}Browser.resizeCanvas?(e.width!=n&&(e.width=n),e.height!=a&&(e.height=a),typeof e.style<"u"&&(e.style.removeProperty("width"),e.style.removeProperty("height"))):(e.width!=r&&(e.width=r),e.height!=t&&(e.height=t),typeof e.style<"u"&&(n!=r||a!=t?(e.style.setProperty("width",n+"px","important"),e.style.setProperty("height",a+"px","important")):(e.style.removeProperty("width"),e.style.removeProperty("height"))))}},_emscripten_run_preload_plugins=function(e,r,t){e>>>=0,r>>>=0,t>>>=0,runtimeKeepalivePush();var n=UTF8ToString(e),a=FS.analyzePath(n);return a.exists?(FS.createPreloadedFile(PATH.dirname(n),PATH.basename(n),new Uint8Array(a.object.contents),!0,!0,()=>{runtimeKeepalivePop()},()=>{runtimeKeepalivePop()},!0),0):-1};_emscripten_run_preload_plugins.sig="ippp";var Browser_asyncPrepareDataCounter=0,_emscripten_run_preload_plugins_data=function(e,r,t,n,a,o){e>>>=0,t>>>=0,n>>>=0,a>>>=0,o>>>=0,runtimeKeepalivePush();var _=UTF8ToString(t),c="prepare_data_"+Browser_asyncPrepareDataCounter+++"."+_,l=stringToNewUTF8(c);FS.createPreloadedFile("/",c,HEAPU8.subarray(e>>>0,e+r>>>0),!0,!0,()=>{runtimeKeepalivePop()},()=>{runtimeKeepalivePop()},!0)};_emscripten_run_preload_plugins_data.sig="vpipppp";var _emscripten_async_run_script=function(e,r){e>>>=0,safeSetTimeout(()=>_emscripten_run_script(e),r)};_emscripten_async_run_script.sig="vpi";var _emscripten_async_load_script=function(e,r,t){e>>>=0,r>>>=0,t>>>=0,e=UTF8ToString(e),runtimeKeepalivePush();var n=()=>{if(runtimeKeepalivePop(),r){var _=()=>callUserCallback((()=>{}));runDependencies>0?dependenciesFulfilled=_:_()}},a=()=>{runtimeKeepalivePop(),t&&callUserCallback((()=>{}))},o=document.createElement("script");o.onload=n,o.onerror=a,o.src=e,document.body.appendChild(o)};_emscripten_async_load_script.sig="vppp";function _emscripten_get_main_loop_timing(e,r){e>>>=0,r>>>=0,e&&(HEAP32[e>>>2>>>0]=Browser.mainLoop.timingMode),r&&(HEAP32[r>>>2>>>0]=Browser.mainLoop.timingValue)}_emscripten_get_main_loop_timing.sig="vpp";var _emscripten_set_main_loop=function(e,r,t){e>>>=0;var n=(()=>{});setMainLoop(n,r,t)};_emscripten_set_main_loop.sig="vpii";var _emscripten_set_main_loop_arg=function(e,r,t,n){e>>>=0,r>>>=0;var a=()=>(o=>{})(r);setMainLoop(a,t,n,r)};_emscripten_set_main_loop_arg.sig="vppii";var _emscripten_cancel_main_loop=()=>{Browser.mainLoop.pause(),Browser.mainLoop.func=null};_emscripten_cancel_main_loop.sig="v";var _emscripten_pause_main_loop=()=>{Browser.mainLoop.pause()};_emscripten_pause_main_loop.sig="v";var _emscripten_resume_main_loop=()=>{Browser.mainLoop.resume()};_emscripten_resume_main_loop.sig="v";var __emscripten_push_main_loop_blocker=function(e,r,t){e>>>=0,r>>>=0,t>>>=0,Browser.mainLoop.queue.push({func:()=>{},name:UTF8ToString(t),counted:!0}),Browser.mainLoop.updateStatus()};__emscripten_push_main_loop_blocker.sig="vppp";var __emscripten_push_uncounted_main_loop_blocker=function(e,r,t){e>>>=0,r>>>=0,t>>>=0,Browser.mainLoop.queue.push({func:()=>{},name:UTF8ToString(t),counted:!1}),Browser.mainLoop.updateStatus()};__emscripten_push_uncounted_main_loop_blocker.sig="vppp";var _emscripten_set_main_loop_expected_blockers=e=>{Browser.mainLoop.expectedBlockers=e,Browser.mainLoop.remainingBlockers=e,Browser.mainLoop.updateStatus()};_emscripten_set_main_loop_expected_blockers.sig="vi";var _emscripten_async_call=function(e,r,t){e>>>=0,r>>>=0;function n(){}t>=0?safeSetTimeout(n,t):Browser.safeRequestAnimationFrame(n)};_emscripten_async_call.sig="vppi";function _emscripten_get_window_title(){var e=256;return _emscripten_get_window_title.buffer||(_emscripten_get_window_title.buffer=_malloc(e)),stringToUTF8(document.title,_emscripten_get_window_title.buffer,e),_emscripten_get_window_title.buffer}_emscripten_get_window_title.sig="p";function _emscripten_set_window_title(e){return e>>>=0,document.title=UTF8ToString(e)}_emscripten_set_window_title.sig="vp";function _emscripten_get_screen_size(e,r){e>>>=0,r>>>=0,HEAP32[e>>>2>>>0]=screen.width,HEAP32[r>>>2>>>0]=screen.height}_emscripten_get_screen_size.sig="vpp";var _emscripten_hide_mouse=()=>{for(var e=document.styleSheets[0],r=e.cssRules,t=0;t<r.length;t++)r[t].cssText.substr(0,6)=="canvas"&&(e.deleteRule(t),t--);e.insertRule("canvas.emscripten { border: 1px solid black; cursor: none; }",0)};_emscripten_hide_mouse.sig="v";var _emscripten_set_canvas_size=(e,r)=>{Browser.setCanvasSize(e,r)};_emscripten_set_canvas_size.sig="vii";function _emscripten_get_canvas_size(e,r,t){e>>>=0,r>>>=0,t>>>=0;var n=Module.canvas;HEAP32[e>>>2>>>0]=n.width,HEAP32[r>>>2>>>0]=n.height,HEAP32[t>>>2>>>0]=Browser.isFullscreen?1:0}_emscripten_get_canvas_size.sig="vppp";function _emscripten_create_worker(e){e>>>=0,e=UTF8ToString(e);var r=Browser.workers.length,t={worker:new Worker(e),callbacks:[],awaited:0,buffer:0,bufferSize:0};return t.worker.onmessage=function(a){if(!ABORT){var o=Browser.workers[r];if(o){var _=a.data.callbackId,c=o.callbacks[_];if(c){a.data.finalResponse&&(o.awaited--,o.callbacks[_]=null,runtimeKeepalivePop());var l=a.data.data;l?(l.byteLength||(l=new Uint8Array(l)),(!o.buffer||o.bufferSize<l.length)&&(o.buffer&&_free(o.buffer),o.bufferSize=l.length,o.buffer=_malloc(l.length)),HEAPU8.set(l,o.buffer>>>0),c.func(o.buffer,l.length,c.arg)):c.func(0,0,c.arg)}}}},Browser.workers.push(t),r}_emscripten_create_worker.sig="ip";var _emscripten_destroy_worker=e=>{var r=Browser.workers[e];r.worker.terminate(),r.buffer&&_free(r.buffer),Browser.workers[e]=null};_emscripten_destroy_worker.sig="vi";var _emscripten_call_worker=function(e,r,t,n,a,o){r>>>=0,t>>>=0,a>>>=0,o>>>=0,r=UTF8ToString(r);var _=Browser.workers[e],c=-1;a&&(runtimeKeepalivePush(),c=_.callbacks.length,_.callbacks.push({func:((u,d,p)=>{}),arg:o}),_.awaited++);var l={funcName:r,callbackId:c,data:t?new Uint8Array(HEAPU8.subarray(t>>>0,t+n>>>0)):0};t?_.worker.postMessage(l,[l.data.buffer]):_.worker.postMessage(l)};_emscripten_call_worker.sig="vippipp";var _emscripten_get_worker_queue_size=e=>{var r=Browser.workers[e];return r?r.awaited:-1};_emscripten_get_worker_queue_size.sig="ii";var getPreloadedImageData=(e,r,t)=>{e=PATH_FS.resolve(e);var n=preloadedImages[e];if(!n)return 0;var a=n.getContext("2d"),o=a.getImageData(0,0,n.width,n.height),_=_malloc(n.width*n.height*4);return HEAPU8.set(o.data,_>>>0),HEAP32[r>>>2>>>0]=n.width,HEAP32[t>>>2>>>0]=n.height,_};function _emscripten_get_preloaded_image_data(e,r,t){return e>>>=0,r>>>=0,t>>>=0,getPreloadedImageData(UTF8ToString(e),r,t)}_emscripten_get_preloaded_image_data.sig="pppp";var getPreloadedImageData__data=["$PATH_FS","malloc"];function _emscripten_get_preloaded_image_data_from_FILE(e,r,t){e>>>=0,r>>>=0,t>>>=0;var n=_fileno(e),a=FS.getStream(n);return a?getPreloadedImageData(a.path,r,t):0}_emscripten_get_preloaded_image_data_from_FILE.sig="pppp";var wget={wgetRequests:{},nextWgetRequestHandle:0,getNextWgetRequestHandle(){var e=wget.nextWgetRequestHandle;return wget.nextWgetRequestHandle++,e}},FS_mkdirTree=(e,r)=>FS.mkdirTree(e,r),_emscripten_async_wget=function(e,r,t,n){e>>>=0,r>>>=0,t>>>=0,n>>>=0,runtimeKeepalivePush();var a=UTF8ToString(e),o=UTF8ToString(r);o=PATH_FS.resolve(o);function _(l){l&&(runtimeKeepalivePop(),callUserCallback(()=>{var u=stackSave();stringToUTF8OnStack(o),stackRestore(u)}))}var c=PATH.dirname(o);FS_createPreloadedFile(c,PATH.basename(o),a,!0,!0,()=>_(t),()=>_(n),!1,!1,()=>{try{FS_unlink(o)}catch{}FS_mkdirTree(c)})};_emscripten_async_wget.sig="vpppp";var _emscripten_async_wget_data=function(e,r,t,n){e>>>=0,r>>>=0,t>>>=0,n>>>=0,runtimeKeepalivePush(),asyncLoad(UTF8ToString(e),a=>{runtimeKeepalivePop(),callUserCallback(()=>{var o=_malloc(a.length);HEAPU8.set(a,o>>>0),a.length,_free(o)})},()=>{n&&(runtimeKeepalivePop(),callUserCallback(()=>{}))},!0)};_emscripten_async_wget_data.sig="vpppp";var _emscripten_async_wget2=function(e,r,t,n,a,o,_,c){e>>>=0,r>>>=0,t>>>=0,n>>>=0,a>>>=0,o>>>=0,_>>>=0,c>>>=0,runtimeKeepalivePush();var l=UTF8ToString(e),u=UTF8ToString(r);u=PATH_FS.resolve(u);var d=UTF8ToString(t),p=UTF8ToString(n),g=u.lastIndexOf("/"),v=new XMLHttpRequest;v.open(d,l,!0),v.responseType="arraybuffer";var w=wget.getNextWgetRequestHandle(),S=PATH.dirname(u);return v.onload=F=>{if(runtimeKeepalivePop(),v.status>=200&&v.status<300){try{FS.unlink(u)}catch{}if(FS.mkdirTree(S),FS.createDataFile(u.substr(0,g),u.substr(g+1),new Uint8Array(v.response),!0,!0,!1),o){var f=stackSave();stringToUTF8OnStack(u),stackRestore(f)}}else _&&v.status;delete wget.wgetRequests[w]},v.onerror=F=>{runtimeKeepalivePop(),_&&v.status,delete wget.wgetRequests[w]},v.onprogress=F=>{if(F.lengthComputable||F.lengthComputable===void 0&&F.total!=0)var f=F.loaded/F.total*100},v.onabort=F=>{runtimeKeepalivePop(),delete wget.wgetRequests[w]},d=="POST"?(v.setRequestHeader("Content-type","application/x-www-form-urlencoded"),v.send(p)):v.send(null),wget.wgetRequests[w]=v,w};_emscripten_async_wget2.sig="ipppppppp";function _emscripten_async_wget2_data(e,r,t,n,a,o,_,c){e>>>=0,r>>>=0,t>>>=0,n>>>=0,o>>>=0,_>>>=0,c>>>=0;var l=UTF8ToString(e),u=UTF8ToString(r),d=UTF8ToString(t),p=new XMLHttpRequest;p.open(u,l,!0),p.responseType="arraybuffer";var g=wget.getNextWgetRequestHandle();function v(){if(_){var w=stackSave(),S=0;p.statusText&&(S=stringToUTF8OnStack(p.statusText)),p.status,stackRestore(w)}}return p.onload=w=>{if(p.status>=200&&p.status<300||p.status===0&&l.substr(0,4).toLowerCase()!="http"){var S=new Uint8Array(p.response),F=_malloc(S.length);HEAPU8.set(S,F>>>0),o&&S.length,a&&_free(F)}else v();delete wget.wgetRequests[g]},p.onerror=w=>{v(),delete wget.wgetRequests[g]},p.onprogress=w=>{c&&(w.loaded,(w.lengthComputable||w.lengthComputable===void 0)&&w.total)},p.onabort=w=>{delete wget.wgetRequests[g]},u=="POST"?(p.setRequestHeader("Content-type","application/x-www-form-urlencoded"),p.send(d)):p.send(null),wget.wgetRequests[g]=p,g}_emscripten_async_wget2_data.sig="ippppippp";var _emscripten_async_wget2_abort=e=>{var r=wget.wgetRequests[e];r?.abort()};_emscripten_async_wget2_abort.sig="vi";function ___asctime_r(e,r){e>>>=0,r>>>=0;var t={tm_sec:HEAP32[e>>>2>>>0],tm_min:HEAP32[e+4>>>2>>>0],tm_hour:HEAP32[e+8>>>2>>>0],tm_mday:HEAP32[e+12>>>2>>>0],tm_mon:HEAP32[e+16>>>2>>>0],tm_year:HEAP32[e+20>>>2>>>0],tm_wday:HEAP32[e+24>>>2>>>0]},n=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],a=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],o=n[t.tm_wday]+" "+a[t.tm_mon]+(t.tm_mday<10?" ":" ")+t.tm_mday+(t.tm_hour<10?" 0":" ")+t.tm_hour+(t.tm_min<10?":0":":")+t.tm_min+(t.tm_sec<10?":0":":")+t.tm_sec+" "+(1900+t.tm_year)+`\n`;return stringToUTF8(o,r,26),r}___asctime_r.sig="ppp";function _strptime_l(e,r,t,n){return e>>>=0,r>>>=0,t>>>=0,n>>>=0,_strptime(e,r,t)}_strptime_l.sig="ppppp";function ___syscall_shutdown(e,r){try{return getSocketFromFD(e),-52}catch(t){if(typeof FS>"u"||t.name!=="ErrnoError")throw t;return-t.errno}}Module.___syscall_shutdown=___syscall_shutdown,___syscall_shutdown.sig="iiiiiii";function __dlsym_catchup_js(e,r){e>>>=0;var t=LDSO.loadedLibsByHandle[e],n=t.exports,a=Object.keys(n)[r],o=n[a],_=addFunction(o,o.sig);return _}__dlsym_catchup_js.sig="ppi";var FS_readFile=FS.readFile,_setNetworkCallback=(e,r,t)=>{function n(a){try{if(e==="error"){var o=stackSave(),_=stringToUTF8OnStack(a[2]);a[0],a[1],stackRestore(o)}}catch(c){if(!(c instanceof ExitStatus))throw c&&typeof c=="object"&&c.stack&&err("exception thrown: "+[c,c.stack]),c}}runtimeKeepalivePush(),Module.websocket.on(e,t?n:null)};function _emscripten_set_socket_error_callback(e,r){e>>>=0,r>>>=0,_setNetworkCallback("error",e,r)}_emscripten_set_socket_error_callback.sig="vpp";function _emscripten_set_socket_open_callback(e,r){e>>>=0,r>>>=0,_setNetworkCallback("open",e,r)}_emscripten_set_socket_open_callback.sig="vpp";function _emscripten_set_socket_listen_callback(e,r){e>>>=0,r>>>=0,_setNetworkCallback("listen",e,r)}_emscripten_set_socket_listen_callback.sig="vpp";function _emscripten_set_socket_connection_callback(e,r){e>>>=0,r>>>=0,_setNetworkCallback("connection",e,r)}_emscripten_set_socket_connection_callback.sig="vpp";function _emscripten_set_socket_message_callback(e,r){e>>>=0,r>>>=0,_setNetworkCallback("message",e,r)}_emscripten_set_socket_message_callback.sig="vpp";function _emscripten_set_socket_close_callback(e,r){e>>>=0,r>>>=0,_setNetworkCallback("close",e,r)}_emscripten_set_socket_close_callback.sig="vpp";var _emscripten_sleep=e=>Asyncify.handleSleep(r=>safeSetTimeout(r,e));_emscripten_sleep.sig="vi",_emscripten_sleep.isAsync=!0;var _emscripten_wget_data=function(e,r,t,n){return e>>>=0,r>>>=0,t>>>=0,n>>>=0,Asyncify.handleSleep(a=>{asyncLoad(UTF8ToString(e),o=>{var _=_malloc(o.length);HEAPU8.set(o,_>>>0),HEAPU32[r>>>2>>>0]=_,HEAP32[t>>>2>>>0]=o.length,HEAP32[n>>>2>>>0]=0,a()},()=>{HEAP32[n>>>2>>>0]=1,a()},!0)})};_emscripten_wget_data.sig="vpppp",_emscripten_wget_data.isAsync=!0;var _emscripten_scan_registers=function(e){return e>>>=0,Asyncify.handleSleep(r=>{safeSetTimeout(()=>{var t=Asyncify.currData+12,n=HEAPU32[Asyncify.currData>>>2>>>0];r()},0)})};_emscripten_scan_registers.sig="vp",_emscripten_scan_registers.isAsync=!0;var _emscripten_lazy_load_code=()=>Asyncify.handleSleep(e=>{wasmBinaryFile+=".lazy.wasm",dependenciesFulfilled=e,createWasm()});_emscripten_lazy_load_code.sig="v",_emscripten_lazy_load_code.isAsync=!0;async function __load_secondary_module(){wasmExports.load_secondary_module_status.value=1;var e={primary:wasmExports},r=wasmBinaryFile.slice(0,-5)+".deferred.wasm";await new Promise(t=>{instantiateAsync(null,r,e,t)})}__load_secondary_module.sig="v",__load_secondary_module.isAsync=!0;var Fibers={nextFiber:0,trampolineRunning:!1,trampoline(){if(!Fibers.trampolineRunning&&Fibers.nextFiber){Fibers.trampolineRunning=!0;do{var e=Fibers.nextFiber;Fibers.nextFiber=0,Fibers.finishContextSwitch(e)}while(Fibers.nextFiber);Fibers.trampolineRunning=!1}},finishContextSwitch(e){var r=HEAPU32[e>>>2>>>0],t=HEAPU32[e+4>>>2>>>0];_emscripten_stack_set_limits(r,t),stackRestore(HEAPU32[e+8>>>2>>>0]);var n=HEAPU32[e+12>>>2>>>0];if(n!==0){Asyncify.currData=null,HEAPU32[e+12>>>2>>>0]=0;var a=HEAPU32[e+16>>>2>>>0]}else{var o=e+20;Asyncify.currData=o,Asyncify.state=Asyncify.State.Rewinding,_asyncify_start_rewind(o),Asyncify.doRewind(o)}}};function _emscripten_fiber_swap(e,r){if(e>>>=0,r>>>=0,!ABORT)if(Asyncify.state===Asyncify.State.Normal){Asyncify.state=Asyncify.State.Unwinding;var t=e+20;Asyncify.setDataRewindFunc(t),Asyncify.currData=t,_asyncify_start_unwind(t);var n=stackSave();HEAPU32[e+8>>>2>>>0]=n,Fibers.nextFiber=r}else Asyncify.state=Asyncify.State.Normal,_asyncify_stop_rewind(),Asyncify.currData=null}_emscripten_fiber_swap.sig="vpp",_emscripten_fiber_swap.isAsync=!0;var ALLOC_NORMAL=0,ALLOC_STACK=1,allocate=(e,r)=>{var t;return r==ALLOC_STACK?t=stackAlloc(e.length):t=_malloc(e.length),!e.subarray&&!e.slice&&(e=new Uint8Array(e)),HEAPU8.set(e,t>>>0),t},writeStringToMemory=(e,r,t)=>{warnOnce("writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!");var n,a;t&&(a=r+lengthBytesUTF8(e),n=HEAP8[a>>>0]),stringToUTF8(e,r,1/0),t&&(HEAP8[a>>>0]=n)},writeAsciiToMemory=(e,r,t)=>{for(var n=0;n<e.length;++n)HEAP8[r++>>>0]=e.charCodeAt(n);t||(HEAP8[r>>>0]=0)},allocateUTF8=stringToNewUTF8,allocateUTF8OnStack=stringToUTF8OnStack,setErrNo=e=>(HEAP32[___errno_location()>>>2>>>0]=e,e),demangle=e=>(demangle.recursionGuard=(demangle.recursionGuard|0)+1,demangle.recursionGuard>1?e:withStackSave(()=>{try{var r=e;r.startsWith("__Z")&&(r=r.substr(1));var t=stringToUTF8OnStack(r),n=stackAlloc(4),a=___cxa_demangle(t,0,0,n);if(HEAP32[n>>>2>>>0]===0&&a)return UTF8ToString(a)}catch{}finally{_free(a),demangle.recursionGuard<2&&--demangle.recursionGuard}return e}));function stackTrace(){var e=jsStackTrace();return Module.extraStackTrace&&(e+=`\n`+Module.extraStackTrace()),e}var print=out,printErr=err,_emscripten_is_main_browser_thread=()=>!ENVIRONMENT_IS_WORKER;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;var emSetImmediate,emClearImmediate;if(typeof setImmediate<"u")emSetImmediate=setImmediateWrapped,emClearImmediate=clearImmediateWrapped;else if(typeof addEventListener=="function"){var __setImmediate_id_counter=0,__setImmediate_queue=[],__setImmediate_message_id="_si",__setImmediate_cb=e=>{e.data===__setImmediate_message_id&&(e.stopPropagation(),__setImmediate_queue.shift()(),++__setImmediate_id_counter)};addEventListener("message",__setImmediate_cb,!0),emSetImmediate=e=>(postMessage(__setImmediate_message_id,"*"),__setImmediate_id_counter+__setImmediate_queue.push(e)-1),emClearImmediate=(e=>{var r=e-__setImmediate_id_counter;r>=0&&r<__setImmediate_queue.length&&(__setImmediate_queue[r]=()=>{})})}Module.requestFullscreen=Browser.requestFullscreen,Module.requestAnimationFrame=Browser.requestAnimationFrame,Module.setCanvasSize=Browser.setCanvasSize,Module.pauseMainLoop=Browser.mainLoop.pause,Module.resumeMainLoop=Browser.mainLoop.resume,Module.getUserMedia=Browser.getUserMedia,Module.createContext=Browser.createContext;var preloadedImages={},preloadedAudios={},wasmImports={_Unwind_Backtrace:__Unwind_Backtrace,_Unwind_DeleteException:__Unwind_DeleteException,_Unwind_FindEnclosingFunction:__Unwind_FindEnclosingFunction,_Unwind_GetIPInfo:__Unwind_GetIPInfo,_Unwind_RaiseException:__Unwind_RaiseException,__asctime_r:___asctime_r,__assert_fail:___assert_fail,__asyncify_data:___asyncify_data,__asyncify_state:___asyncify_state,__asyncjs__php_stream_fetch_real_open,__asyncjs__vrzno_await_internal,__call_sighandler:___call_sighandler,__cxa_begin_catch:___cxa_begin_catch,__cxa_call_unexpected:___cxa_call_unexpected,__cxa_end_catch:___cxa_end_catch,__cxa_find_matching_catch_2:___cxa_find_matching_catch_2,__cxa_find_matching_catch_3:___cxa_find_matching_catch_3,__cxa_find_matching_catch_4:___cxa_find_matching_catch_4,__cxa_rethrow:___cxa_rethrow,__cxa_throw:___cxa_throw,__global_base:___global_base,__heap_base:___heap_base,__indirect_function_table:wasmTable,__memory_base:___memory_base,__resumeException:___resumeException,__stack_high:___stack_high,__stack_low:___stack_low,__stack_pointer:___stack_pointer,__syscall__newselect:___syscall__newselect,__syscall_accept4:___syscall_accept4,__syscall_bind:___syscall_bind,__syscall_chdir:___syscall_chdir,__syscall_chmod:___syscall_chmod,__syscall_connect:___syscall_connect,__syscall_dup:___syscall_dup,__syscall_dup3:___syscall_dup3,__syscall_faccessat:___syscall_faccessat,__syscall_fadvise64:___syscall_fadvise64,__syscall_fallocate:___syscall_fallocate,__syscall_fchdir:___syscall_fchdir,__syscall_fchmod:___syscall_fchmod,__syscall_fchmodat2:___syscall_fchmodat2,__syscall_fchown32:___syscall_fchown32,__syscall_fchownat:___syscall_fchownat,__syscall_fcntl64:___syscall_fcntl64,__syscall_fdatasync:___syscall_fdatasync,__syscall_fstat64:___syscall_fstat64,__syscall_fstatfs64:___syscall_fstatfs64,__syscall_ftruncate64:___syscall_ftruncate64,__syscall_getcwd:___syscall_getcwd,__syscall_getdents64:___syscall_getdents64,__syscall_getpeername:___syscall_getpeername,__syscall_getsockname:___syscall_getsockname,__syscall_getsockopt:___syscall_getsockopt,__syscall_ioctl:___syscall_ioctl,__syscall_listen:___syscall_listen,__syscall_lstat64:___syscall_lstat64,__syscall_mkdirat:___syscall_mkdirat,__syscall_mknodat:___syscall_mknodat,__syscall_newfstatat:___syscall_newfstatat,__syscall_openat:___syscall_openat,__syscall_pipe:___syscall_pipe,__syscall_poll:___syscall_poll,__syscall_readlinkat:___syscall_readlinkat,__syscall_recvfrom:___syscall_recvfrom,__syscall_recvmsg:___syscall_recvmsg,__syscall_renameat:___syscall_renameat,__syscall_rmdir:___syscall_rmdir,__syscall_sendmsg:___syscall_sendmsg,__syscall_sendto:___syscall_sendto,__syscall_socket:___syscall_socket,__syscall_stat64:___syscall_stat64,__syscall_statfs64:___syscall_statfs64,__syscall_symlink:___syscall_symlink,__syscall_symlinkat:___syscall_symlinkat,__syscall_truncate64:___syscall_truncate64,__syscall_unlinkat:___syscall_unlinkat,__syscall_utimensat:___syscall_utimensat,__table_base:___table_base,_abort_js:__abort_js,_dlopen_js:__dlopen_js,_dlsym_catchup_js:__dlsym_catchup_js,_dlsym_js:__dlsym_js,_emscripten_dlopen_js:__emscripten_dlopen_js,_emscripten_fs_load_embedded_files:__emscripten_fs_load_embedded_files,_emscripten_get_now_is_monotonic:__emscripten_get_now_is_monotonic,_emscripten_get_progname:__emscripten_get_progname,_emscripten_lookup_name:__emscripten_lookup_name,_emscripten_push_main_loop_blocker:__emscripten_push_main_loop_blocker,_emscripten_push_uncounted_main_loop_blocker:__emscripten_push_uncounted_main_loop_blocker,_emscripten_runtime_keepalive_clear:__emscripten_runtime_keepalive_clear,_emscripten_set_offscreencanvas_size:__emscripten_set_offscreencanvas_size,_emscripten_system:__emscripten_system,_emscripten_throw_longjmp:__emscripten_throw_longjmp,_gmtime_js:__gmtime_js,_load_secondary_module:__load_secondary_module,_localtime_js:__localtime_js,_mktime_js:__mktime_js,_mmap_js:__mmap_js,_msync_js:__msync_js,_munmap_js:__munmap_js,_setitimer_js:__setitimer_js,_timegm_js:__timegm_js,_tzset_js:__tzset_js,clock_res_get:_clock_res_get,clock_time_get:_clock_time_get,emscripten_asm_const_async_on_main_thread:_emscripten_asm_const_async_on_main_thread,emscripten_asm_const_double:_emscripten_asm_const_double,emscripten_asm_const_double_sync_on_main_thread:_emscripten_asm_const_double_sync_on_main_thread,emscripten_asm_const_int:_emscripten_asm_const_int,emscripten_asm_const_int_sync_on_main_thread:_emscripten_asm_const_int_sync_on_main_thread,emscripten_asm_const_ptr:_emscripten_asm_const_ptr,emscripten_asm_const_ptr_sync_on_main_thread:_emscripten_asm_const_ptr_sync_on_main_thread,emscripten_async_call:_emscripten_async_call,emscripten_async_load_script:_emscripten_async_load_script,emscripten_async_run_script:_emscripten_async_run_script,emscripten_async_wget:_emscripten_async_wget,emscripten_async_wget2:_emscripten_async_wget2,emscripten_async_wget2_abort:_emscripten_async_wget2_abort,emscripten_async_wget2_data:_emscripten_async_wget2_data,emscripten_async_wget_data:_emscripten_async_wget_data,emscripten_call_worker:_emscripten_call_worker,emscripten_cancel_animation_frame:_emscripten_cancel_animation_frame,emscripten_cancel_main_loop:_emscripten_cancel_main_loop,emscripten_clear_immediate:_emscripten_clear_immediate,emscripten_clear_interval:_emscripten_clear_interval,emscripten_clear_timeout:_emscripten_clear_timeout,emscripten_console_error:_emscripten_console_error,emscripten_console_log:_emscripten_console_log,emscripten_console_trace:_emscripten_console_trace,emscripten_console_warn:_emscripten_console_warn,emscripten_create_worker:_emscripten_create_worker,emscripten_date_now:_emscripten_date_now,emscripten_debugger:_emscripten_debugger,emscripten_destroy_worker:_emscripten_destroy_worker,emscripten_enter_soft_fullscreen:_emscripten_enter_soft_fullscreen,emscripten_err:_emscripten_err,emscripten_errn:_emscripten_errn,emscripten_exit_fullscreen:_emscripten_exit_fullscreen,emscripten_exit_pointerlock:_emscripten_exit_pointerlock,emscripten_exit_soft_fullscreen:_emscripten_exit_soft_fullscreen,emscripten_exit_with_live_runtime:_emscripten_exit_with_live_runtime,emscripten_fiber_swap:_emscripten_fiber_swap,emscripten_force_exit:_emscripten_force_exit,emscripten_get_battery_status:_emscripten_get_battery_status,emscripten_get_callstack:_emscripten_get_callstack,emscripten_get_canvas_element_size:_emscripten_get_canvas_element_size,emscripten_get_canvas_size:_emscripten_get_canvas_size,emscripten_get_compiler_setting:_emscripten_get_compiler_setting,emscripten_get_device_pixel_ratio:_emscripten_get_device_pixel_ratio,emscripten_get_devicemotion_status:_emscripten_get_devicemotion_status,emscripten_get_deviceorientation_status:_emscripten_get_deviceorientation_status,emscripten_get_element_css_size:_emscripten_get_element_css_size,emscripten_get_fullscreen_status:_emscripten_get_fullscreen_status,emscripten_get_gamepad_status:_emscripten_get_gamepad_status,emscripten_get_heap_max:_emscripten_get_heap_max,emscripten_get_main_loop_timing:_emscripten_get_main_loop_timing,emscripten_get_mouse_status:_emscripten_get_mouse_status,emscripten_get_now:_emscripten_get_now,emscripten_get_now_res:_emscripten_get_now_res,emscripten_get_num_gamepads:_emscripten_get_num_gamepads,emscripten_get_orientation_status:_emscripten_get_orientation_status,emscripten_get_pointerlock_status:_emscripten_get_pointerlock_status,emscripten_get_preloaded_image_data:_emscripten_get_preloaded_image_data,emscripten_get_preloaded_image_data_from_FILE:_emscripten_get_preloaded_image_data_from_FILE,emscripten_get_screen_size:_emscripten_get_screen_size,emscripten_get_visibility_status:_emscripten_get_visibility_status,emscripten_get_window_title:_emscripten_get_window_title,emscripten_get_worker_queue_size:_emscripten_get_worker_queue_size,emscripten_has_asyncify:_emscripten_has_asyncify,emscripten_hide_mouse:_emscripten_hide_mouse,emscripten_html5_remove_all_event_listeners:_emscripten_html5_remove_all_event_listeners,emscripten_is_main_browser_thread:_emscripten_is_main_browser_thread,emscripten_lazy_load_code:_emscripten_lazy_load_code,emscripten_lock_orientation:_emscripten_lock_orientation,emscripten_log:_emscripten_log,emscripten_math_acos:_emscripten_math_acos,emscripten_math_acosh:_emscripten_math_acosh,emscripten_math_asin:_emscripten_math_asin,emscripten_math_asinh:_emscripten_math_asinh,emscripten_math_atan:_emscripten_math_atan,emscripten_math_atan2:_emscripten_math_atan2,emscripten_math_atanh:_emscripten_math_atanh,emscripten_math_cbrt:_emscripten_math_cbrt,emscripten_math_cos:_emscripten_math_cos,emscripten_math_cosh:_emscripten_math_cosh,emscripten_math_exp:_emscripten_math_exp,emscripten_math_expm1:_emscripten_math_expm1,emscripten_math_fmod:_emscripten_math_fmod,emscripten_math_hypot:_emscripten_math_hypot,emscripten_math_log:_emscripten_math_log,emscripten_math_log10:_emscripten_math_log10,emscripten_math_log1p:_emscripten_math_log1p,emscripten_math_log2:_emscripten_math_log2,emscripten_math_pow:_emscripten_math_pow,emscripten_math_random:_emscripten_math_random,emscripten_math_round:_emscripten_math_round,emscripten_math_sign:_emscripten_math_sign,emscripten_math_sin:_emscripten_math_sin,emscripten_math_sinh:_emscripten_math_sinh,emscripten_math_sqrt:_emscripten_math_sqrt,emscripten_math_tan:_emscripten_math_tan,emscripten_math_tanh:_emscripten_math_tanh,emscripten_notify_memory_growth:_emscripten_notify_memory_growth,emscripten_out:_emscripten_out,emscripten_outn:_emscripten_outn,emscripten_pause_main_loop:_emscripten_pause_main_loop,emscripten_pc_get_column:_emscripten_pc_get_column,emscripten_pc_get_file:_emscripten_pc_get_file,emscripten_pc_get_function:_emscripten_pc_get_function,emscripten_pc_get_line:_emscripten_pc_get_line,emscripten_performance_now:_emscripten_performance_now,emscripten_print_double:_emscripten_print_double,emscripten_promise_all:_emscripten_promise_all,emscripten_promise_all_settled:_emscripten_promise_all_settled,emscripten_promise_any:_emscripten_promise_any,emscripten_promise_await:_emscripten_promise_await,emscripten_promise_create:_emscripten_promise_create,emscripten_promise_destroy:_emscripten_promise_destroy,emscripten_promise_race:_emscripten_promise_race,emscripten_promise_resolve:_emscripten_promise_resolve,emscripten_promise_then:_emscripten_promise_then,emscripten_random:_emscripten_random,emscripten_request_animation_frame:_emscripten_request_animation_frame,emscripten_request_animation_frame_loop:_emscripten_request_animation_frame_loop,emscripten_request_fullscreen:_emscripten_request_fullscreen,emscripten_request_fullscreen_strategy:_emscripten_request_fullscreen_strategy,emscripten_request_pointerlock:_emscripten_request_pointerlock,emscripten_resize_heap:_emscripten_resize_heap,emscripten_resume_main_loop:_emscripten_resume_main_loop,emscripten_return_address:_emscripten_return_address,emscripten_run_preload_plugins:_emscripten_run_preload_plugins,emscripten_run_preload_plugins_data:_emscripten_run_preload_plugins_data,emscripten_run_script:_emscripten_run_script,emscripten_run_script_int:_emscripten_run_script_int,emscripten_run_script_string:_emscripten_run_script_string,emscripten_runtime_keepalive_check:_emscripten_runtime_keepalive_check,emscripten_runtime_keepalive_pop:_emscripten_runtime_keepalive_pop,emscripten_runtime_keepalive_push:_emscripten_runtime_keepalive_push,emscripten_sample_gamepad_data:_emscripten_sample_gamepad_data,emscripten_scan_registers:_emscripten_scan_registers,emscripten_set_batterychargingchange_callback_on_thread:_emscripten_set_batterychargingchange_callback_on_thread,emscripten_set_batterylevelchange_callback_on_thread:_emscripten_set_batterylevelchange_callback_on_thread,emscripten_set_beforeunload_callback_on_thread:_emscripten_set_beforeunload_callback_on_thread,emscripten_set_blur_callback_on_thread:_emscripten_set_blur_callback_on_thread,emscripten_set_canvas_element_size:_emscripten_set_canvas_element_size,emscripten_set_canvas_size:_emscripten_set_canvas_size,emscripten_set_click_callback_on_thread:_emscripten_set_click_callback_on_thread,emscripten_set_dblclick_callback_on_thread:_emscripten_set_dblclick_callback_on_thread,emscripten_set_devicemotion_callback_on_thread:_emscripten_set_devicemotion_callback_on_thread,emscripten_set_deviceorientation_callback_on_thread:_emscripten_set_deviceorientation_callback_on_thread,emscripten_set_element_css_size:_emscripten_set_element_css_size,emscripten_set_focus_callback_on_thread:_emscripten_set_focus_callback_on_thread,emscripten_set_focusin_callback_on_thread:_emscripten_set_focusin_callback_on_thread,emscripten_set_focusout_callback_on_thread:_emscripten_set_focusout_callback_on_thread,emscripten_set_fullscreenchange_callback_on_thread:_emscripten_set_fullscreenchange_callback_on_thread,emscripten_set_gamepadconnected_callback_on_thread:_emscripten_set_gamepadconnected_callback_on_thread,emscripten_set_gamepaddisconnected_callback_on_thread:_emscripten_set_gamepaddisconnected_callback_on_thread,emscripten_set_immediate:_emscripten_set_immediate,emscripten_set_immediate_loop:_emscripten_set_immediate_loop,emscripten_set_interval:_emscripten_set_interval,emscripten_set_keydown_callback_on_thread:_emscripten_set_keydown_callback_on_thread,emscripten_set_keypress_callback_on_thread:_emscripten_set_keypress_callback_on_thread,emscripten_set_keyup_callback_on_thread:_emscripten_set_keyup_callback_on_thread,emscripten_set_main_loop:_emscripten_set_main_loop,emscripten_set_main_loop_arg:_emscripten_set_main_loop_arg,emscripten_set_main_loop_expected_blockers:_emscripten_set_main_loop_expected_blockers,emscripten_set_main_loop_timing:_emscripten_set_main_loop_timing,emscripten_set_mousedown_callback_on_thread:_emscripten_set_mousedown_callback_on_thread,emscripten_set_mouseenter_callback_on_thread:_emscripten_set_mouseenter_callback_on_thread,emscripten_set_mouseleave_callback_on_thread:_emscripten_set_mouseleave_callback_on_thread,emscripten_set_mousemove_callback_on_thread:_emscripten_set_mousemove_callback_on_thread,emscripten_set_mouseout_callback_on_thread:_emscripten_set_mouseout_callback_on_thread,emscripten_set_mouseover_callback_on_thread:_emscripten_set_mouseover_callback_on_thread,emscripten_set_mouseup_callback_on_thread:_emscripten_set_mouseup_callback_on_thread,emscripten_set_orientationchange_callback_on_thread:_emscripten_set_orientationchange_callback_on_thread,emscripten_set_pointerlockchange_callback_on_thread:_emscripten_set_pointerlockchange_callback_on_thread,emscripten_set_pointerlockerror_callback_on_thread:_emscripten_set_pointerlockerror_callback_on_thread,emscripten_set_resize_callback_on_thread:_emscripten_set_resize_callback_on_thread,emscripten_set_scroll_callback_on_thread:_emscripten_set_scroll_callback_on_thread,emscripten_set_socket_close_callback:_emscripten_set_socket_close_callback,emscripten_set_socket_connection_callback:_emscripten_set_socket_connection_callback,emscripten_set_socket_error_callback:_emscripten_set_socket_error_callback,emscripten_set_socket_listen_callback:_emscripten_set_socket_listen_callback,emscripten_set_socket_message_callback:_emscripten_set_socket_message_callback,emscripten_set_socket_open_callback:_emscripten_set_socket_open_callback,emscripten_set_timeout:_emscripten_set_timeout,emscripten_set_timeout_loop:_emscripten_set_timeout_loop,emscripten_set_touchcancel_callback_on_thread:_emscripten_set_touchcancel_callback_on_thread,emscripten_set_touchend_callback_on_thread:_emscripten_set_touchend_callback_on_thread,emscripten_set_touchmove_callback_on_thread:_emscripten_set_touchmove_callback_on_thread,emscripten_set_touchstart_callback_on_thread:_emscripten_set_touchstart_callback_on_thread,emscripten_set_visibilitychange_callback_on_thread:_emscripten_set_visibilitychange_callback_on_thread,emscripten_set_wheel_callback_on_thread:_emscripten_set_wheel_callback_on_thread,emscripten_set_window_title:_emscripten_set_window_title,emscripten_sleep:_emscripten_sleep,emscripten_stack_snapshot:_emscripten_stack_snapshot,emscripten_stack_unwind_buffer:_emscripten_stack_unwind_buffer,emscripten_throw_number:_emscripten_throw_number,emscripten_throw_string:_emscripten_throw_string,emscripten_unlock_orientation:_emscripten_unlock_orientation,emscripten_unwind_to_js_event_loop:_emscripten_unwind_to_js_event_loop,emscripten_vibrate:_emscripten_vibrate,emscripten_vibrate_pattern:_emscripten_vibrate_pattern,emscripten_wget_data:_emscripten_wget_data,endprotoent:_endprotoent,environ_get:_environ_get,environ_sizes_get:_environ_sizes_get,exit:_exit,fd_close:_fd_close,fd_fdstat_get:_fd_fdstat_get,fd_pread:_fd_pread,fd_pwrite:_fd_pwrite,fd_read:_fd_read,fd_seek:_fd_seek,fd_sync:_fd_sync,fd_write:_fd_write,getaddrinfo:_getaddrinfo,getcontext:_getcontext,getdtablesize:_getdtablesize,getentropy:_getentropy,getnameinfo:_getnameinfo,getprotobyname:_getprotobyname,getprotobynumber:_getprotobynumber,getprotoent:_getprotoent,invoke_i,invoke_ii,invoke_iii,invoke_iiii,invoke_iiiii,invoke_iiiiii,invoke_iiiiiii,invoke_iiiiiiii,invoke_iiiiiiiiii,invoke_iij,invoke_ji,invoke_jii,invoke_jiii,invoke_v,invoke_vi,invoke_vii,invoke_viii,invoke_viiii,invoke_viiiii,invoke_viiiiii,invoke_vji,llvm_eh_typeid_for:_llvm_eh_typeid_for,makecontext:_makecontext,memory:wasmMemory,phpdbg_arm_auto_global:_phpdbg_arm_auto_global,phpdbg_globals:_phpdbg_globals,phpdbg_restore_frame:_phpdbg_restore_frame,posix_spawnp:_posix_spawnp,proc_exit:_proc_exit,random_get:_random_get,reallocarray:_reallocarray,setNetworkCallback:_setNetworkCallback,setprotoent:_setprotoent,stackAlloc:_stackAlloc,stackRestore:_stackRestore,stackSave:_stackSave,strptime:_strptime,strptime_l:_strptime_l,swapcontext:_swapcontext},wasmExports=createWasm(),___wasm_call_ctors=()=>(___wasm_call_ctors=wasmExports.__wasm_call_ctors)(),___wasm_apply_data_relocs=()=>(___wasm_apply_data_relocs=wasmExports.__wasm_apply_data_relocs)(),_free=Module._free=e=>(_free=Module._free=wasmExports.free)(e),___errno_location=()=>(___errno_location=wasmExports.__errno_location)(),_malloc=Module._malloc=e=>(_malloc=Module._malloc=wasmExports.malloc)(e),_vrzno_expose_gc_ptr=Module._vrzno_expose_gc_ptr=e=>(_vrzno_expose_gc_ptr=Module._vrzno_expose_gc_ptr=wasmExports.vrzno_expose_gc_ptr)(e),_vrzno_expose_zv_inc_refcount=Module._vrzno_expose_zv_inc_refcount=e=>(_vrzno_expose_zv_inc_refcount=Module._vrzno_expose_zv_inc_refcount=wasmExports.vrzno_expose_zv_inc_refcount)(e),_vrzno_expose_zv_dec_refcount=Module._vrzno_expose_zv_dec_refcount=e=>(_vrzno_expose_zv_dec_refcount=Module._vrzno_expose_zv_dec_refcount=wasmExports.vrzno_expose_zv_dec_refcount)(e),_vrzno_expose_zv_refcount=Module._vrzno_expose_zv_refcount=e=>(_vrzno_expose_zv_refcount=Module._vrzno_expose_zv_refcount=wasmExports.vrzno_expose_zv_refcount)(e),_vrzno_expose_inc_refcount=Module._vrzno_expose_inc_refcount=e=>(_vrzno_expose_inc_refcount=Module._vrzno_expose_inc_refcount=wasmExports.vrzno_expose_inc_refcount)(e),_vrzno_expose_dec_refcount=Module._vrzno_expose_dec_refcount=e=>(_vrzno_expose_dec_refcount=Module._vrzno_expose_dec_refcount=wasmExports.vrzno_expose_dec_refcount)(e),_vrzno_expose_refcount=Module._vrzno_expose_refcount=e=>(_vrzno_expose_refcount=Module._vrzno_expose_refcount=wasmExports.vrzno_expose_refcount)(e),_vrzno_expose_efree=Module._vrzno_expose_efree=e=>(_vrzno_expose_efree=Module._vrzno_expose_efree=wasmExports.vrzno_expose_efree)(e),_vrzno_expose_create_bool=Module._vrzno_expose_create_bool=(e,r)=>(_vrzno_expose_create_bool=Module._vrzno_expose_create_bool=wasmExports.vrzno_expose_create_bool)(e,r),_vrzno_expose_create_null=Module._vrzno_expose_create_null=e=>(_vrzno_expose_create_null=Module._vrzno_expose_create_null=wasmExports.vrzno_expose_create_null)(e),_vrzno_expose_create_undef=Module._vrzno_expose_create_undef=e=>(_vrzno_expose_create_undef=Module._vrzno_expose_create_undef=wasmExports.vrzno_expose_create_undef)(e),_vrzno_expose_create_long=Module._vrzno_expose_create_long=(e,r)=>(_vrzno_expose_create_long=Module._vrzno_expose_create_long=wasmExports.vrzno_expose_create_long)(e,r),_vrzno_expose_create_long_at=Module._vrzno_expose_create_long_at=(e,r)=>(_vrzno_expose_create_long_at=Module._vrzno_expose_create_long_at=wasmExports.vrzno_expose_create_long_at)(e,r),_vrzno_expose_create_double=Module._vrzno_expose_create_double=(e,r)=>(_vrzno_expose_create_double=Module._vrzno_expose_create_double=wasmExports.vrzno_expose_create_double)(e,r),_vrzno_expose_create_string=Module._vrzno_expose_create_string=(e,r)=>(_vrzno_expose_create_string=Module._vrzno_expose_create_string=wasmExports.vrzno_expose_create_string)(e,r),_vrzno_expose_create_object_for_target=Module._vrzno_expose_create_object_for_target=(e,r,t,n,a)=>(_vrzno_expose_create_object_for_target=Module._vrzno_expose_create_object_for_target=wasmExports.vrzno_expose_create_object_for_target)(e,r,t,n,a),_vrzno_expose_create_params=Module._vrzno_expose_create_params=e=>(_vrzno_expose_create_params=Module._vrzno_expose_create_params=wasmExports.vrzno_expose_create_params)(e),_vrzno_expose_object_keys=Module._vrzno_expose_object_keys=e=>(_vrzno_expose_object_keys=Module._vrzno_expose_object_keys=wasmExports.vrzno_expose_object_keys)(e),_vrzno_expose_array_keys=Module._vrzno_expose_array_keys=e=>(_vrzno_expose_array_keys=Module._vrzno_expose_array_keys=wasmExports.vrzno_expose_array_keys)(e),_vrzno_expose_zval_deref=Module._vrzno_expose_zval_deref=e=>(_vrzno_expose_zval_deref=Module._vrzno_expose_zval_deref=wasmExports.vrzno_expose_zval_deref)(e),_vrzno_expose_zval_direct=Module._vrzno_expose_zval_direct=e=>(_vrzno_expose_zval_direct=Module._vrzno_expose_zval_direct=wasmExports.vrzno_expose_zval_direct)(e),_vrzno_expose_zval_ref=Module._vrzno_expose_zval_ref=(e,r)=>(_vrzno_expose_zval_ref=Module._vrzno_expose_zval_ref=wasmExports.vrzno_expose_zval_ref)(e,r),_vrzno_expose_zval_dump=Module._vrzno_expose_zval_dump=(e,r)=>(_vrzno_expose_zval_dump=Module._vrzno_expose_zval_dump=wasmExports.vrzno_expose_zval_dump)(e,r),_vrzno_expose_type=Module._vrzno_expose_type=e=>(_vrzno_expose_type=Module._vrzno_expose_type=wasmExports.vrzno_expose_type)(e),_vrzno_expose_array_length=Module._vrzno_expose_array_length=e=>(_vrzno_expose_array_length=Module._vrzno_expose_array_length=wasmExports.vrzno_expose_array_length)(e),_vrzno_expose_zval_target=Module._vrzno_expose_zval_target=e=>(_vrzno_expose_zval_target=Module._vrzno_expose_zval_target=wasmExports.vrzno_expose_zval_target)(e),_vrzno_expose_target=Module._vrzno_expose_target=e=>(_vrzno_expose_target=Module._vrzno_expose_target=wasmExports.vrzno_expose_target)(e),_vrzno_expose_callable=Module._vrzno_expose_callable=e=>(_vrzno_expose_callable=Module._vrzno_expose_callable=wasmExports.vrzno_expose_callable)(e),_vrzno_expose_long=Module._vrzno_expose_long=e=>(_vrzno_expose_long=Module._vrzno_expose_long=wasmExports.vrzno_expose_long)(e),_vrzno_expose_long_value=Module._vrzno_expose_long_value=e=>(_vrzno_expose_long_value=Module._vrzno_expose_long_value=wasmExports.vrzno_expose_long_value)(e),_vrzno_expose_double=Module._vrzno_expose_double=e=>(_vrzno_expose_double=Module._vrzno_expose_double=wasmExports.vrzno_expose_double)(e),_vrzno_expose_string=Module._vrzno_expose_string=e=>(_vrzno_expose_string=Module._vrzno_expose_string=wasmExports.vrzno_expose_string)(e),_vrzno_expose_object=Module._vrzno_expose_object=e=>(_vrzno_expose_object=Module._vrzno_expose_object=wasmExports.vrzno_expose_object)(e),_vrzno_expose_array=Module._vrzno_expose_array=e=>(_vrzno_expose_array=Module._vrzno_expose_array=wasmExports.vrzno_expose_array)(e),_vrzno_expose_resource=Module._vrzno_expose_resource=e=>(_vrzno_expose_resource=Module._vrzno_expose_resource=wasmExports.vrzno_expose_resource)(e),_vrzno_expose_closure=Module._vrzno_expose_closure=e=>(_vrzno_expose_closure=Module._vrzno_expose_closure=wasmExports.vrzno_expose_closure)(e),_vrzno_expose_key_pointer=Module._vrzno_expose_key_pointer=(e,r)=>(_vrzno_expose_key_pointer=Module._vrzno_expose_key_pointer=wasmExports.vrzno_expose_key_pointer)(e,r),_vrzno_expose_property_pointer=Module._vrzno_expose_property_pointer=(e,r)=>(_vrzno_expose_property_pointer=Module._vrzno_expose_property_pointer=wasmExports.vrzno_expose_property_pointer)(e,r),_vrzno_expose_dimension_pointer=Module._vrzno_expose_dimension_pointer=(e,r)=>(_vrzno_expose_dimension_pointer=Module._vrzno_expose_dimension_pointer=wasmExports.vrzno_expose_dimension_pointer)(e,r),_vrzno_expose_method_pointer=Module._vrzno_expose_method_pointer=(e,r)=>(_vrzno_expose_method_pointer=Module._vrzno_expose_method_pointer=wasmExports.vrzno_expose_method_pointer)(e,r),_vrzno_expose_is_iterable=Module._vrzno_expose_is_iterable=e=>(_vrzno_expose_is_iterable=Module._vrzno_expose_is_iterable=wasmExports.vrzno_expose_is_iterable)(e),_vrzno_dbg_dump_symbols=Module._vrzno_dbg_dump_symbols=e=>(_vrzno_dbg_dump_symbols=Module._vrzno_dbg_dump_symbols=wasmExports.vrzno_dbg_dump_symbols)(e),_vrzno_dbg_dump_constants=Module._vrzno_dbg_dump_constants=()=>(_vrzno_dbg_dump_constants=Module._vrzno_dbg_dump_constants=wasmExports.vrzno_dbg_dump_constants)(),_vrzno_dbg_dump_classes=Module._vrzno_dbg_dump_classes=()=>(_vrzno_dbg_dump_classes=Module._vrzno_dbg_dump_classes=wasmExports.vrzno_dbg_dump_classes)(),_vrzno_dbg_dump_functions=Module._vrzno_dbg_dump_functions=()=>(_vrzno_dbg_dump_functions=Module._vrzno_dbg_dump_functions=wasmExports.vrzno_dbg_dump_functions)(),_vrzno_dbg_dump_files=Module._vrzno_dbg_dump_files=()=>(_vrzno_dbg_dump_files=Module._vrzno_dbg_dump_files=wasmExports.vrzno_dbg_dump_files)(),_vrzno_dbg_dump_backtrace=Module._vrzno_dbg_dump_backtrace=()=>(_vrzno_dbg_dump_backtrace=Module._vrzno_dbg_dump_backtrace=wasmExports.vrzno_dbg_dump_backtrace)(),_vrzno_dbg_switch_frame=Module._vrzno_dbg_switch_frame=e=>(_vrzno_dbg_switch_frame=Module._vrzno_dbg_switch_frame=wasmExports.vrzno_dbg_switch_frame)(e),_vrzno_exec_callback=Module._vrzno_exec_callback=(e,r,t,n)=>(_vrzno_exec_callback=Module._vrzno_exec_callback=wasmExports.vrzno_exec_callback)(e,r,t,n),_vrzno_del_callback=Module._vrzno_del_callback=e=>(_vrzno_del_callback=Module._vrzno_del_callback=wasmExports.vrzno_del_callback)(e),_main=Module._main=(e,r)=>(_main=Module._main=wasmExports.main)(e,r),_pib_init=Module._pib_init=e=>(_pib_init=Module._pib_init=wasmExports.pib_init)(e),_pib_storage_init=Module._pib_storage_init=()=>(_pib_storage_init=Module._pib_storage_init=wasmExports.pib_storage_init)(),_pib_refresh=Module._pib_refresh=()=>(_pib_refresh=Module._pib_refresh=wasmExports.pib_refresh)(),_pib_flush=Module._pib_flush=()=>(_pib_flush=Module._pib_flush=wasmExports.pib_flush)(),_pib_exec=Module._pib_exec=e=>(_pib_exec=Module._pib_exec=wasmExports.pib_exec)(e),_pib_run=Module._pib_run=e=>(_pib_run=Module._pib_run=wasmExports.pib_run)(e),_pib_php_version=Module._pib_php_version=()=>(_pib_php_version=Module._pib_php_version=wasmExports.pib_php_version)(),_pib_php_ext_api_version=Module._pib_php_ext_api_version=()=>(_pib_php_ext_api_version=Module._pib_php_ext_api_version=wasmExports.pib_php_ext_api_version)(),_pib_tokenize=Module._pib_tokenize=e=>(_pib_tokenize=Module._pib_tokenize=wasmExports.pib_tokenize)(e),_calloc=(e,r)=>(_calloc=wasmExports.calloc)(e,r),_fflush=e=>(_fflush=wasmExports.fflush)(e),_strerror=e=>(_strerror=wasmExports.strerror)(e),_fileno=e=>(_fileno=wasmExports.fileno)(e),_htonl=e=>(_htonl=wasmExports.htonl)(e),_ntohs=e=>(_ntohs=wasmExports.ntohs)(e),_htons=e=>(_htons=wasmExports.htons)(e),___funcs_on_exit=()=>(___funcs_on_exit=wasmExports.__funcs_on_exit)(),___dl_seterr=(e,r)=>(___dl_seterr=wasmExports.__dl_seterr)(e,r),_emscripten_builtin_memalign=(e,r)=>(_emscripten_builtin_memalign=wasmExports.emscripten_builtin_memalign)(e,r),__emscripten_timeout=(e,r)=>(__emscripten_timeout=wasmExports._emscripten_timeout)(e,r),_setThrew=(e,r)=>(_setThrew=wasmExports.setThrew)(e,r),__emscripten_tempret_set=e=>(__emscripten_tempret_set=wasmExports._emscripten_tempret_set)(e),__emscripten_tempret_get=()=>(__emscripten_tempret_get=wasmExports._emscripten_tempret_get)(),_emscripten_stack_set_limits=(e,r)=>(_emscripten_stack_set_limits=wasmExports.emscripten_stack_set_limits)(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)(),___cxa_demangle=(e,r,t,n)=>(___cxa_demangle=wasmExports.__cxa_demangle)(e,r,t,n),___cxa_increment_exception_refcount=e=>(___cxa_increment_exception_refcount=wasmExports.__cxa_increment_exception_refcount)(e),___cxa_decrement_exception_refcount=e=>(___cxa_decrement_exception_refcount=wasmExports.__cxa_decrement_exception_refcount)(e),___cxa_can_catch=(e,r,t)=>(___cxa_can_catch=wasmExports.__cxa_can_catch)(e,r,t),___cxa_get_exception_ptr=e=>(___cxa_get_exception_ptr=wasmExports.__cxa_get_exception_ptr)(e),_asyncify_start_unwind=e=>(_asyncify_start_unwind=wasmExports.asyncify_start_unwind)(e),_asyncify_stop_unwind=()=>(_asyncify_stop_unwind=wasmExports.asyncify_stop_unwind)(),_asyncify_start_rewind=e=>(_asyncify_start_rewind=wasmExports.asyncify_start_rewind)(e),_asyncify_stop_rewind=()=>(_asyncify_stop_rewind=wasmExports.asyncify_stop_rewind)();function invoke_iiii(e,r,t,n){var a=stackSave();try{return Module.dynCall_iiii(e,r,t,n)}catch(o){if(stackRestore(a),o!==o+0)throw o;_setThrew(1,0)}}function invoke_vii(e,r,t){var n=stackSave();try{Module.dynCall_vii(e,r,t)}catch(a){if(stackRestore(n),a!==a+0)throw a;_setThrew(1,0)}}function invoke_i(e){var r=stackSave();try{return Module.dynCall_i(e)}catch(t){if(stackRestore(r),t!==t+0)throw t;_setThrew(1,0)}}function invoke_ii(e,r){var t=stackSave();try{return Module.dynCall_ii(e,r)}catch(n){if(stackRestore(t),n!==n+0)throw n;_setThrew(1,0)}}function invoke_iii(e,r,t){var n=stackSave();try{return Module.dynCall_iii(e,r,t)}catch(a){if(stackRestore(n),a!==a+0)throw a;_setThrew(1,0)}}function invoke_viiii(e,r,t,n,a){var o=stackSave();try{Module.dynCall_viiii(e,r,t,n,a)}catch(_){if(stackRestore(o),_!==_+0)throw _;_setThrew(1,0)}}function invoke_vi(e,r){var t=stackSave();try{Module.dynCall_vi(e,r)}catch(n){if(stackRestore(t),n!==n+0)throw n;_setThrew(1,0)}}function invoke_v(e){var r=stackSave();try{Module.dynCall_v(e)}catch(t){if(stackRestore(r),t!==t+0)throw t;_setThrew(1,0)}}function invoke_viii(e,r,t,n){var a=stackSave();try{Module.dynCall_viii(e,r,t,n)}catch(o){if(stackRestore(a),o!==o+0)throw o;_setThrew(1,0)}}function invoke_jii(e,r,t){var n=stackSave();try{return Module.dynCall_jii(e,r,t)}catch(a){if(stackRestore(n),a!==a+0)throw a;return _setThrew(1,0),0n}}function invoke_iiiii(e,r,t,n,a){var o=stackSave();try{return Module.dynCall_iiiii(e,r,t,n,a)}catch(_){if(stackRestore(o),_!==_+0)throw _;_setThrew(1,0)}}function invoke_iiiiii(e,r,t,n,a,o){var _=stackSave();try{return Module.dynCall_iiiiii(e,r,t,n,a,o)}catch(c){if(stackRestore(_),c!==c+0)throw c;_setThrew(1,0)}}function invoke_vji(e,r,t){var n=stackSave();try{Module.dynCall_vji(e,r,t)}catch(a){if(stackRestore(n),a!==a+0)throw a;_setThrew(1,0)}}function invoke_ji(e,r){var t=stackSave();try{return Module.dynCall_ji(e,r)}catch(n){if(stackRestore(t),n!==n+0)throw n;return _setThrew(1,0),0n}}function invoke_iij(e,r,t){var n=stackSave();try{return Module.dynCall_iij(e,r,t)}catch(a){if(stackRestore(n),a!==a+0)throw a;_setThrew(1,0)}}function invoke_viiiii(e,r,t,n,a,o){var _=stackSave();try{Module.dynCall_viiiii(e,r,t,n,a,o)}catch(c){if(stackRestore(_),c!==c+0)throw c;_setThrew(1,0)}}function invoke_jiii(e,r,t,n){var a=stackSave();try{return Module.dynCall_jiii(e,r,t,n)}catch(o){if(stackRestore(a),o!==o+0)throw o;return _setThrew(1,0),0n}}function invoke_iiiiiiiiii(e,r,t,n,a,o,_,c,l,u){var d=stackSave();try{return Module.dynCall_iiiiiiiiii(e,r,t,n,a,o,_,c,l,u)}catch(p){if(stackRestore(d),p!==p+0)throw p;_setThrew(1,0)}}function invoke_iiiiiiii(e,r,t,n,a,o,_,c){var l=stackSave();try{return Module.dynCall_iiiiiiii(e,r,t,n,a,o,_,c)}catch(u){if(stackRestore(l),u!==u+0)throw u;_setThrew(1,0)}}function invoke_iiiiiii(e,r,t,n,a,o,_){var c=stackSave();try{return Module.dynCall_iiiiiii(e,r,t,n,a,o,_)}catch(l){if(stackRestore(c),l!==l+0)throw l;_setThrew(1,0)}}function invoke_viiiiii(e,r,t,n,a,o,_){var c=stackSave();try{Module.dynCall_viiiiii(e,r,t,n,a,o,_)}catch(l){if(stackRestore(c),l!==l+0)throw l;_setThrew(1,0)}}function applySignatureConversions(e){e=Object.assign({},e);var r=c=>()=>c()>>>0,t=c=>l=>c(l)>>>0,n=c=>(l,u)=>c(l,u)>>>0,a=c=>l=>c(l)>>>0,o=c=>(l,u,d)=>c(l,u,d)>>>0,_=c=>l=>c(l)>>>0;return e.__errno_location=r(e.__errno_location),e.malloc=t(e.malloc),e.calloc=n(e.calloc),e.strerror=a(e.strerror),e.memcpy=o(e.memcpy),e.emscripten_builtin_malloc=t(e.emscripten_builtin_malloc),e.emscripten_stack_get_base=r(e.emscripten_stack_get_base),e.emscripten_stack_get_end=r(e.emscripten_stack_get_end),e.emscripten_builtin_memalign=n(e.emscripten_builtin_memalign),e.emscripten_stack_get_current=r(e.emscripten_stack_get_current),e.pthread_self=r(e.pthread_self),e.emscripten_main_runtime_thread_id=r(e.emscripten_main_runtime_thread_id),e.sbrk=_(e.sbrk),e.memalign=n(e.memalign),e.emscripten_builtin_calloc=n(e.emscripten_builtin_calloc),e._emscripten_stack_alloc=t(e._emscripten_stack_alloc),e.__cxa_get_exception_ptr=t(e.__cxa_get_exception_ptr),e}Module.addRunDependency=addRunDependency,Module.removeRunDependency=removeRunDependency,Module.ENV=ENV,Module.ccall=ccall,Module.setValue=setValue,Module.getValue=getValue,Module.UTF8ToString=UTF8ToString,Module.stringToUTF8=stringToUTF8,Module.lengthBytesUTF8=lengthBytesUTF8,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;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),a=n;e.forEach(_=>{HEAPU32[a>>>2>>>0]=stringToUTF8OnStack(_),a+=4}),HEAPU32[a>>>2>>>0]=0;try{var o=r(t,n);return exitJS(o,!0),o}catch(_){return handleException(_)}}}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})})(),php8_5_web_default=PHP,defaultVersion="8.5",defaultVariant="",PhpWeb=class extends PhpBase{constructor(e={}){const r=e.version??defaultVersion,t=e.variant??defaultVariant,n=r+t,a={version:r,variant:t,...e};switch(n){case"8.5":super(Promise.resolve(php8_5_web_default),a);break;default:throw new Error(`Unsupported PHP runtime: ${n}`)}}startTransaction(){return startTransaction(this)}commitTransaction(e=!1){return commitTransaction(this,e)}async refresh(){await super.refresh();const e=await this.binary;await navigator.locks.request("php-wasm-fs-lock",()=>new Promise((r,t)=>{e.FS.syncfs(!0,n=>{n?t(n):r()})}))}async _enqueue(e,r=[],t=!1){await this.binary;let n,a;const o=new Promise((l,u)=>[n,a]=[l,u]),_=l=>n(l),c=l=>a(l);return this.queue.push([e,r,_,c]),navigator.locks.request("php-wasm-fs-lock",async()=>{if(this.queue.length){await(this.autoTransaction&&!t?this.startTransaction():Promise.resolve());do{const[l,u,d,p]=this.queue.shift(),g=l(...u);g.then(d).catch(p),await g;let v=25;for(;!this.queue.length&&v--;)await new Promise(w=>setTimeout(w,5))}while(this.queue.length);await(this.autoTransaction?this.commitTransaction(t):Promise.resolve())}}),o}};function getType(e){let r=typeof e;if(r==="object"&&!e)return"null";if(r==="object"){if(!e.constructor)return"object";const t=e.constructor.toString().match(/(\w+)\(/);if(t){const n=t[1].toLowerCase();if(["boolean","number","string","array"].includes(n))return n}}return r}function serialize(e){let r=getType(e),t="";switch(r){case"function":t="";break;case"boolean":t="b:"+(e?"1":"0");break;case"number":t=(Math.round(e)===e?"i":"d")+":"+e;break;case"string":t="s:"+~-encodeURI(e).split(/%..|./).length+':"'+e+'"';break;case"array":case"object":{t="a";let n=0,a="";for(const o in e){if(!Object.prototype.hasOwnProperty.call(e,o)||getType(e[o])==="function")continue;const c=/^[0-9]+$/.test(o)?parseInt(o,10):o;a+=serialize(c)+serialize(e[o]),n++}t+=":"+n+":{"+a+"}";break}default:t="N"}return r!=="object"&&r!=="array"&&(t+=";"),t}function unserialize(e){let r=0;const t=[];let n=0;function a(){const m=e.indexOf(":",r),y=e.substring(r,m);return r=m+2,parseInt(y,10)}function o(){const m=e.indexOf(";",r),y=e.substring(r,m);return r=m+1,parseInt(y,10)}function _(){const m=e.indexOf(";",r),y=e.substring(r,m);return r=m+1,parseFloat(y)}function c(){const m=e.indexOf(";",r),y=e.substring(r,m);return r=m+1,y==="1"}function l(m='"'){const y=a();let b=0,E=0;for(;b<y;){const h=e.charCodeAt(r+E++);h<=127?b++:h>2047?b+=3:b+=2}e.charAt(r+E)!==m&&(E+=e.indexOf('"',r+E)-r-E);const k=e.substring(r,r+E);return r+=E+2,k}function u(){const m=e.charAt(r);return r+=2,m}function d(){const m=u();switch(m){case"i":return o();case"s":return l();default:throw new Error("Unknown key type '"+m+"' at position "+(r-2))}}function p(m,y){if(typeof m!="string"||m.charAt(0)!=="\0")return m;const b=m.indexOf("\0",1);if(b<=0)throw new Error("Expected two NUL characters in non-public property name '"+m+"'");const E=m.substring(1,b),k=m.slice(b+1);return E==="*"||E===y?k:E+"::"+k}function g(){const m=a(),y=[],b={};let E=y;const k=n++;t[k]=E;try{for(let h=0;h<m;h++){const A=d(),P=f();if(E===y&&String(A)===String(h))y.push(P);else{if(E!==b){for(let M=0;M<y.length;M++)b[M]=y[M];E=b,t[k]=E}b[A]=P}}}catch(h){throw h.state=E,h}return r++,E}function v(){const m=l(),y={},b=n++,E=a();t[b]=y;try{for(let k=0;k<E;k++){const h=p(d(),m);y[h]=f()}}catch(k){throw k.state=y,k}return r++,y}function w(){const m=l(),y=l("}");return r--,{__PHP_Incomplete_Class_Name:m,serialized:y}}function S(){const m=t[o()-1];return t[n++]=m,m}function F(){return t[o()-1]}function f(){const m=u();switch(m){case"i":return o();case"d":return _();case"b":return c();case"s":case"E":return l();case"a":return g();case"O":return v();case"C":return w();case"r":return S();case"R":return F();case"N":return t[n++]=null,null;default:throw new Error("Unknown type '"+m+"' at position "+(r-2))}}return f()}function installSerialize(e){e.Flames=e.Flames||{},e.Flames.Serialize=e.Flames.Serialize||{},e.Flames.Serialize.serialize=serialize,e.Flames.Serialize.unserialize=unserialize}return installSerialize(typeof globalThis<"u"?globalThis:self),__toCommonJS(flames_entry_exports)})();window.Flames.Surface.PhpWeb=__FlamesRuntime.PhpWeb,window.Flames.Surface.PhpBase=__FlamesRuntime.PhpBase}}if(window.Flames=window.Flames||{},window.Flames.Surface=window.Flames.Surface||{},!window.Flames.Surface._bootStarted){function failBoot(e){window.Flames.Surface._bootFailed=!0,console.error("[Flames]",e)}function bootstrapScriptUrl(){var e=document.querySelectorAll('script[src*="flames.js"]'),r=e.length?e[e.length-1]:null;return r?r.src:location.href}function assertBootstrapScriptUrl(){try{new URL("flames.wasm",bootstrapScriptUrl())}catch{throw new Error("Invalid bootstrap script URL for wasm resolution")}}function installRuntime(){try{__flamesInstallRuntime()}catch(e){throw new Error("Runtime install failed: "+e.message)}if(typeof window.Flames.Surface.PhpWeb!="function")throw new Error("Runtime install did not expose Flames.Surface.PhpWeb");if(typeof window.Flames.Surface.PhpBase!="function")throw new Error("Runtime install did not expose Flames.Surface.PhpBase");if(typeof window.Flames.Serialize?.serialize!="function"||typeof window.Flames.Serialize?.unserialize!="function")throw new Error("Runtime install did not expose Flames.Serialize")}function patchPhpWeb(){var e=window.Flames.Surface.PhpWeb;function r(t){return t=Object.assign({},t),window.Flames.Surface._wasmBinary&&t.wasmBinary===void 0&&(t.wasmBinary=window.Flames.Surface._wasmBinary),Reflect.construct(e,[t],new.target)}Object.setPrototypeOf(r,e),r.prototype=e.prototype,window.Flames.Surface.PhpWeb=r}function flamesFetch(){return{credentials:"same-origin"}}function scriptBase(){var e=bootstrapScriptUrl();return e?new URL(".",e).href:new URL("/flames/",location.origin).href}function polyfillBase(){var e=bootstrapScriptUrl();if(e){var r=new URL(e,location.href);return r.pathname.includes("/.build/")?new URL("../flames/polyfill/",r).href:new URL("polyfill/",r).href}return new URL("/flames/polyfill/",location.origin).href}function prefetch(){if(window.Flames.Surface._prefetch)return window.Flames.Surface._prefetch;var e=scriptBase();return{app:fetch(new URL("/&flames/app.js",window.location.origin).href,flamesFetch()),wasm:fetch(new URL("flames.wasm",e).href,flamesFetch())}}function ensureBase64(){return typeof window.atob=="function"&&typeof window.btoa=="function"?Promise.resolve():fetch(new URL("base64.js",polyfillBase()).href,flamesFetch()).then(function(e){if(!e.ok)throw new Error("Base64 polyfill fetch failed: "+e.status);return e.text()}).then(function(source){if(eval(source),typeof window.atob!="function"||typeof window.btoa!="function")throw new Error("Base64 polyfill did not expose atob/btoa")})}function boot(){if(!window.Flames.Surface._bootFailed){try{installRuntime(),patchPhpWeb(),assertBootstrapScriptUrl()}catch(e){failBoot(e);return}var loads=prefetch();ensureBase64().then(function(){return Promise.all([loads.app.then(function(e){if(!e.ok)throw new Error("App &flames/app.js fetch failed: "+e.status);return e.text()}),loads.wasm.then(function(e){if(!e.ok)throw new Error("Flames wasm fetch failed: "+e.status);return e.arrayBuffer()})])}).then(function(results){if(!window.Flames.Surface._bootFailed){var wasmBuffer=results[1];if(!wasmBuffer||!wasmBuffer.byteLength)throw new Error("Flames wasm is empty");window.Flames.Surface._wasmBinary=new Uint8Array(wasmBuffer);try{eval(results[0])}catch(e){throw new Error("App &flames/app.js eval failed: "+e.message)}if(typeof window.Flames.Surface.onLoad!="function"){window.Flames.Surface._bootReady=!0,console.warn("[Flames] Flames.Surface.onLoad is not defined or is not a function");return}return window.Flames.Surface.onLoad()}}).then(function(){window.Flames.Surface._bootFailed||(window.Flames.Surface._bootReady=!0)}).catch(function(e){failBoot(e)})}}window.Flames.Surface._bootStarted=!0,boot()}})();