"use strict";var duckdb=(()=>{var jc=Object.create;var Pn=Object.defineProperty;var $c=Object.getOwnPropertyDescriptor;var qc=Object.getOwnPropertyNames;var Xc=Object.getPrototypeOf,Qc=Object.prototype.hasOwnProperty;var ba=(o,e)=>(e=Symbol[o])?e:Symbol.for("Symbol."+o);var Yc=(o,e,t)=>e in o?Pn(o,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):o[e]=t;var Cn=(o=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(o,{get:(e,t)=>(typeof require<"u"?require:e)[t]}):o)(function(o){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+o+'" is not supported')});var pr=(o,e)=>()=>(e||o((e={exports:{}}).exports,e),e.exports),mr=(o,e)=>{for(var t in e)Pn(o,t,{get:e[t],enumerable:!0})},ko=(o,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of qc(e))!Qc.call(o,n)&&n!==t&&Pn(o,n,{get:()=>e[n],enumerable:!(r=$c(e,n))||r.enumerable});return o};var Bo=(o,e,t)=>(t=o!=null?jc(Xc(o)):{},ko(e||!o||!o.__esModule?Pn(t,"default",{value:o,enumerable:!0}):t,o)),Jc=o=>ko(Pn({},"__esModule",{value:!0}),o);var Qe=(o,e,t)=>(Yc(o,typeof e!="symbol"?e+"":e,t),t);var Kc=function(o,e){this[0]=o,this[1]=e};var Mr=o=>{var e=o[ba("asyncIterator")],t=!1,r,n={};return e==null?(e=o[ba("iterator")](),r=a=>n[a]=l=>e[a](l)):(e=e.call(o),r=a=>n[a]=l=>{if(t){if(t=!1,a==="throw")throw l;return l}return t=!0,{done:!1,value:new Kc(new Promise(c=>{var u=e[a](l);if(!(u instanceof Object))throw TypeError("Object expected");c(u)}),1)}}),n[ba("iterator")]=()=>n,r("next"),"throw"in e?r("throw"):n.throw=a=>{throw a},"return"in e&&r("return"),n};var Do=pr(()=>{});var Fo=pr(()=>{});var Mc=pr(()=>{});var To=pr((ES,kc)=>{"use strict";kc.exports=function(){throw new Error("ws does not work in the browser. Browser clients must use the native WebSocket object")}});var Bc=pr((exports,module)=>{"use strict";var DuckDB=(()=>{var o;var _scriptName=typeof document<"u"?(o=document.currentScript)==null?void 0:o.src:void 0;return typeof __filename<"u"&&(_scriptName=_scriptName||__filename),function(moduleArg={}){var moduleRtn,Module=moduleArg,readyPromiseResolve,readyPromiseReject,readyPromise=new Promise((e,t)=>{readyPromiseResolve=e,readyPromiseReject=t}),ENVIRONMENT_IS_WEB=typeof window=="object",ENVIRONMENT_IS_WORKER=typeof WorkerGlobalScope<"u",ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string"&&process.type!="renderer",ENVIRONMENT_IS_SHELL=!ENVIRONMENT_IS_WEB&&!ENVIRONMENT_IS_NODE&&!ENVIRONMENT_IS_WORKER,moduleOverrides=Object.assign({},Module),arguments_=[],thisProgram="./this.program",quit_=(e,t)=>{throw t},scriptDirectory="";function locateFile(e){return Module.locateFile?Module.locateFile(e,scriptDirectory):scriptDirectory+e}var readAsync,readBinary;if(ENVIRONMENT_IS_NODE){var fs=Do(),nodePath=Fo();scriptDirectory=__dirname+"/",readBinary=e=>{e=isFileURI(e)?new URL(e):nodePath.normalize(e);var t=fs.readFileSync(e);return t},readAsync=(e,t=!0)=>(e=isFileURI(e)?new URL(e):nodePath.normalize(e),new Promise((r,n)=>{fs.readFile(e,t?void 0:"utf8",(a,l)=>{a?n(a):r(t?l.buffer:l)})})),!Module.thisProgram&&process.argv.length>1&&(thisProgram=process.argv[1].replace(/\\/g,"/")),arguments_=process.argv.slice(2),quit_=(e,t)=>{throw process.exitCode=e,t}}else(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)&&(ENVIRONMENT_IS_WORKER?scriptDirectory=self.location.href:typeof document<"u"&&document.currentScript&&(scriptDirectory=document.currentScript.src),_scriptName&&(scriptDirectory=_scriptName),scriptDirectory.startsWith("blob:")?scriptDirectory="":scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1),ENVIRONMENT_IS_WORKER&&(readBinary=e=>{var t=new XMLHttpRequest;return t.open("GET",e,!1),t.responseType="arraybuffer",t.send(null),new Uint8Array(t.response)}),readAsync=e=>fetch(e,{credentials:"same-origin"}).then(t=>t.ok?t.arrayBuffer():Promise.reject(new Error(t.status+" : "+t.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,wasmMemory,ABORT=!1,EXITSTATUS;function assert(e,t){e||abort(t)}var HEAP,HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,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)}if(Module.wasmMemory)wasmMemory=Module.wasmMemory;else{var INITIAL_MEMORY=Module.INITIAL_MEMORY||16777216;wasmMemory=new WebAssembly.Memory({initial:INITIAL_MEMORY/65536,maximum:65536})}updateMemoryViews();var __ATPRERUN__=[],__ATINIT__=[],__ATMAIN__=[],__ATEXIT__=[],__ATPOSTRUN__=[],__RELOC_FUNCS__=[],runtimeInitialized=!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 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){}function addOnPostRun(e){__ATPOSTRUN__.unshift(e)}var runDependencies=0,runDependencyWatcher=null,dependenciesFulfilled=null;function getUniqueRunDependency(e){return e}function addRunDependency(e){var t;runDependencies++,(t=Module.monitorRunDependencies)==null||t.call(Module,runDependencies)}function removeRunDependency(e){var r;if(runDependencies--,(r=Module.monitorRunDependencies)==null||r.call(Module,runDependencies),runDependencies==0&&(runDependencyWatcher!==null&&(clearInterval(runDependencyWatcher),runDependencyWatcher=null),dependenciesFulfilled)){var t=dependenciesFulfilled;dependenciesFulfilled=null,t()}}function abort(e){var r;(r=Module.onAbort)==null||r.call(Module,e),e="Aborted("+e+")",err(e),ABORT=!0,e+=". Build with -sASSERTIONS for more info.",runtimeInitialized&&___trap();var t=new WebAssembly.RuntimeError(e);throw readyPromiseReject(t),t}var dataURIPrefix="data:application/octet-stream;base64,",isDataURI=e=>e.startsWith(dataURIPrefix),isFileURI=e=>e.startsWith("file://");function findWasmBinary(){var e="./duckdb-eh.wasm";return isDataURI(e)?e:locateFile(e)}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?Promise.resolve().then(()=>getBinarySync(e)):readAsync(e).then(t=>new Uint8Array(t),()=>getBinarySync(e))}function instantiateArrayBuffer(e,t,r){return getBinaryPromise(e).then(n=>WebAssembly.instantiate(n,t)).then(r,n=>{err("failed to asynchronously prepare wasm: ".concat(n)),abort(n)})}function instantiateAsync(e,t,r,n){return!e&&typeof WebAssembly.instantiateStreaming=="function"&&!isDataURI(t)&&!ENVIRONMENT_IS_NODE&&typeof fetch=="function"?fetch(t,{credentials:"same-origin"}).then(a=>{var l=WebAssembly.instantiateStreaming(a,r);return l.then(n,function(c){return err("wasm streaming compile failed: ".concat(c)),err("falling back to ArrayBuffer instantiation"),instantiateArrayBuffer(t,r,n)})}):instantiateArrayBuffer(t,r,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 t(n,a){wasmExports=n.exports,wasmExports=relocateExports(wasmExports,1024);var l=getDylinkMetadata(a);return l.neededDynlibs&&(dynamicLibraries=l.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 r(n){t(n.instance,n.module)}if(Module.instantiateWasm)try{return Module.instantiateWasm(e,t)}catch(n){err("Module.instantiateWasm callback failed with error: ".concat(n)),readyPromiseReject(n)}return wasmBinaryFile!=null||(wasmBinaryFile=findWasmBinary()),instantiateAsync(wasmBinary,wasmBinaryFile,e,r).catch(readyPromiseReject),{}}var tempDouble,tempI64,ASM_CONSTS={2310904:(e,t)=>{var r=typeof runtime=="object"&&runtime&&typeof runtime.whereToLoad=="function"&&runtime.whereToLoad?runtime.whereToLoad(UTF8ToString(e)):UTF8ToString(t),n=lengthBytesUTF8(r)+1,a=_malloc(n);return stringToUTF8(r,a,n),a},2311270:(e,t)=>{var r=UTF8ToString(e);if(typeof XMLHttpRequest>"u"){let A=Mc(),F=Fo(),C=Do();var n=r.split("/"),a=n.length,l=F.join(A.homedir(),".duckdb/extensions/"+n[a-4]+"/"+n[a-3]+"/"+n[a-2]+"/"),c=F.join(l,n[a-1]);try{if(C.existsSync(l)||C.mkdirSync(l,{recursive:!0}),C.existsSync(c))d=C.readFileSync(c);else{let x=new Int32Array(new SharedArrayBuffer(8));var u=Cn("node:worker_threads").Worker,_=new u("const {Worker,isMainThread,parentPort,workerData,} = require('node:worker_threads');var times = 0;var SAB = 23;var Z = 0; async function ZZZ(e) {var x = await fetch(e);var res = await x.arrayBuffer();Atomics.store(SAB, 1, res.byteLength);Atomics.store(SAB, 0, 1);Atomics.notify(SAB, 1);Atomics.notify(SAB, 0);Z = res;};parentPort.on('message', function(event) {if (times == 0) {times++;SAB = event;} else if (times == 1) {times++; ZZZ(event);} else {const a = new Uint8Array(Z);const b = new Uint8Array(event.buffer);var K = Z.byteLength;for (var i = 0; i < K; i++) {b[i] = a[i];}Atomics.notify(event, 0);Atomics.store(SAB, 0, 2);Atomics.notify(SAB, 0);}});",{eval:!0}),d;x[0]=0,x[2]=4,_.postMessage(x),_.postMessage(r),Atomics.wait(x,0,0);let S=new Int32Array(new SharedArrayBuffer(x[1]+3-(x[1]+3)%4));_.postMessage(S),Atomics.wait(x,0,1);var f=new Uint8Array(S.buffer,0,x[1]);d=f,_.terminate(),C.writeFileSync(c,d)}}catch(x){return console.log("Error fetching module",x),0}}else{let A=new XMLHttpRequest;if(A.open("GET",r,!1),A.responseType="arraybuffer",A.send(null),A.status!=200)return 0;d=A.response}for(var p=WebAssembly.validate(d),m=d.byteLength,g=_malloc(m+4),h=new Uint8Array(d),b=0;b{if(!e)return AL.alcErr=40964,1},2313959:e=>{if(!AL.currentCtx)return err("alGetProcAddress() called without a valid context"),1;if(!e)return AL.currentCtx.err=40963,1}};class ExitStatus{constructor(t){Qe(this,"name","ExitStatus");this.message="Program terminated with exit(".concat(t,")"),this.status=t}}var GOT={},currentModuleWeakSymbols=new Set([]),GOTHandler={get(e,t){var r=GOT[t];return r||(r=GOT[t]=new WebAssembly.Global({value:"i32",mutable:!0})),currentModuleWeakSymbols.has(t)||(r.required=!0),r}},callRuntimeCallbacks=e=>{for(;e.length>0;)e.shift()(Module)},UTF8Decoder=typeof TextDecoder<"u"?new TextDecoder:void 0,UTF8ArrayToString=(e,t=0,r=NaN)=>{t>>>=0;for(var n=t+r,a=t;e[a]&&!(a>=n);)++a;if(a-t>16&&e.buffer&&UTF8Decoder)return UTF8Decoder.decode(e.subarray(t,a));for(var l="";t>10,56320|d&1023)}}return l},getDylinkMetadata=e=>{var t=0,r=0;function n(){return e[t++]}function a(){for(var I=0,k=1;;){var Q=e[t++];if(I+=(Q&127)*k,k*=128,!(Q&128))break}return I}function l(){var I=a();return t+=I,UTF8ArrayToString(e,t-I,I)}function c(I,k){if(I)throw new Error(k)}var u="dylink.0";if(e instanceof WebAssembly.Module){var _=WebAssembly.Module.customSections(e,u);_.length===0&&(u="dylink",_=WebAssembly.Module.customSections(e,u)),c(_.length===0,"need dylink section"),e=new Uint8Array(_[0]),r=e.length}else{var d=new Uint32Array(new Uint8Array(e.subarray(0,24)).buffer),f=d[0]==1836278016;c(!f,"need to see wasm magic number"),c(e[8]!==0,"need the dylink section to be first"),t=9;var p=a();r=t+p,u=l()}var m={neededDynlibs:[],tlsExports:new Set,weakImports:new Set};if(u=="dylink"){m.memorySize=a(),m.memoryAlign=a(),m.tableSize=a(),m.tableAlign=a();for(var g=a(),h=0;h>>0];case"i8":return HEAP8[e>>>0];case"i16":return HEAP16[e>>>1>>>0];case"i32":return HEAP32[e>>>2>>>0];case"i64":abort("to do getValue(i64) use WASM_BIGINT");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: ".concat(t))}}var newDSO=(e,t,r)=>{var n={refcount:1/0,name:e,exports:r,global:!0};return LDSO.loadedLibsByName[e]=n,t!=null&&(LDSO.loadedLibsByHandle[t]=n),n},LDSO={loadedLibsByName:{},loadedLibsByHandle:{},init(){newDSO("__main__",0,wasmImports)}},___heap_base=2452352,alignMemory=(e,t)=>Math.ceil(e/t)*t,getMemory=e=>{if(runtimeInitialized)return _calloc(e,1);var t=___heap_base,r=t+alignMemory(e,16);return ___heap_base=r,GOT.__heap_base.value=r,t},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,t)=>{e<128?t.push(e):t.push(e%128|128,e>>7)},sigToWasmTypes=e=>{for(var t={i:"i32",j:"i64",f:"f32",d:"f64",e:"externref",p:"i32"},r={parameters:[],results:e[0]=="v"?[]:[t[e[0]]]},n=1;n{var r=e.slice(0,1),n=e.slice(1),a={i:127,p:127,j:126,f:125,d:124,e:111};t.push(96),uleb128Encode(n.length,t);for(var l=0;l{if(typeof WebAssembly.Function=="function")return new WebAssembly.Function(sigToWasmTypes(t),e);var r=[1];generateFuncType(t,r);var n=[0,97,115,109,1,0,0,0,1];uleb128Encode(r.length,n),n.push(...r),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)),l=new WebAssembly.Instance(a,{e:{f:e}}),c=l.exports.f;return c},wasmTable=new WebAssembly.Table({initial:23307,element:"anyfunc"}),getWasmTableEntry=e=>wasmTable.get(e),updateTableMap=(e,t)=>{if(functionsInTableMap)for(var r=e;r(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,t)=>wasmTable.set(e,t),addFunction=(e,t)=>{var r=getFunctionAddress(e);if(r)return r;var n=getEmptyTableSlot();try{setWasmTableEntry(n,e)}catch(l){if(!(l instanceof TypeError))throw l;var a=convertJsFunctionToWasm(e,t);setWasmTableEntry(n,a)}return functionsInTableMap.set(e,n),n},updateGOT=(e,t)=>{for(var r in e)if(!isInternalSym(r)){var n=e[r];r.startsWith("orig$")&&(r=r.split("$")[1],t=!0),GOT[r]||(GOT[r]=new WebAssembly.Global({value:"i32",mutable:!0})),(t||GOT[r].value==0)&&(typeof n=="function"?GOT[r].value=addFunction(n):typeof n=="number"?GOT[r].value=n:err("unhandled export type for '".concat(r,"': ").concat(typeof n)))}},relocateExports=(e,t,r)=>{var n={};for(var a in e){var l=e[a];typeof l=="object"&&(l=l.value),typeof l=="number"&&(l+=t),n[a]=l}return updateGOT(n,r),n},isSymbolDefined=e=>{var t=wasmImports[e];return!(!t||t.stub)},resolveGlobalSymbol=(e,t=!1)=>{var r;return t&&"orig$"+e in wasmImports&&(e="orig$"+e),isSymbolDefined(e)&&(r=wasmImports[e]),{sym:r,name:e}},UTF8ToString=(e,t)=>(e>>>=0,e?UTF8ArrayToString(HEAPU8,e,t):""),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 t=resolveGlobalSymbol(e).sym;return!t&&localScope&&(t=localScope[e]),t||(t=moduleExports[e]),t}var proxyHandler={get(e,t){if(t.startsWith("invoke_"))return createDyncallWrapper(t.substring(7));switch(t){case"__memory_base":return memoryBase;case"__table_base":return tableBase}if(t in wasmImports&&!wasmImports[t].stub)return wasmImports[t];if(!(t in e)){var r;e[t]=(...n)=>(r||(r=resolveSymbol(t)),r(...n))}return e[t]}},proxy=new Proxy({},proxyHandler),info={"GOT.mem":new Proxy({},GOTHandler),"GOT.func":new Proxy({},GOTHandler),env:proxy,wasi_snapshot_preview1:proxy};function postInstantiation(module,instance){updateTableMap(tableBase,metadata.tableSize),moduleExports=relocateExports(instance.exports,memoryBase),flags.allowUndefined||reportUndefinedSymbols();function addEmAsm(addr,body){for(var args=[],arity=0;arity<16&&body.indexOf("$"+arity)!=-1;arity++)args.push("$"+arity);args=args.join(",");var func="(".concat(args,") => { ").concat(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 ").concat(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,t)=>e.then(()=>loadDynamicLibrary(t,flags,localScope)),Promise.resolve()).then(loadModule):(metadata.neededDynlibs.forEach(e=>loadDynamicLibrary(e,flags,localScope)),loadModule())},mergeLibSymbols=(e,t)=>{registerDynCallSymbols(e);for(var[r,n]of Object.entries(e))(l=>{isSymbolDefined(l)||(wasmImports[l]=n)})(r)},asyncLoad=(e,t,r,n)=>{var a=n?"":"al ".concat(e);readAsync(e).then(l=>{t(new Uint8Array(l)),a&&removeRunDependency(a)},l=>{if(r)r();else throw'Loading data file "'.concat(e,'" failed.')}),a&&addRunDependency(a)},preloadPlugins=Module.preloadPlugins||[],registerWasmPlugin=()=>{var e={promiseChainEnd:Promise.resolve(),canHandle:t=>!Module.noWasmDecoding&&t.endsWith(".so"),handle:(t,r,n,a)=>{e.promiseChainEnd=e.promiseChainEnd.then(()=>loadWebAssemblyModule(t,{loadAsync:!0,nodelete:!0},r,{})).then(l=>{preloadedWasm[r]=l,n(t)},l=>{err("failed to instantiate wasm: ".concat(r,": ").concat(l)),a()})}};preloadPlugins.push(e)},preloadedWasm={},registerDynCallSymbols=e=>{for(var[t,r]of Object.entries(e))t.startsWith("dynCall_")&&!Module.hasOwnProperty(t)&&(Module[t]=r)};function loadDynamicLibrary(e,t={global:!0,nodelete:!0},r,n){var a=LDSO.loadedLibsByName[e];if(a)return t.global?a.global||(a.global=!0,mergeLibSymbols(a.exports,e)):(r&&Object.assign(r,a.exports),registerDynCallSymbols(a.exports)),t.nodelete&&a.refcount!==1/0&&(a.refcount=1/0),a.refcount++,n&&(LDSO.loadedLibsByHandle[n]=a),t.loadAsync?Promise.resolve(!0):!0;a=newDSO(e,n,"loading"),a.refcount=t.nodelete?1/0:1,a.global=t.global;function l(){if(n){var _=HEAPU32[n+28>>>2>>>0],d=HEAPU32[n+32>>>2>>>0];if(_&&d){var f=HEAP8.slice(_,_+d);return t.loadAsync?Promise.resolve(f):f}}var p=locateFile(e);if(t.loadAsync)return new Promise((m,g)=>asyncLoad(p,m,g));if(!readBinary)throw new Error("".concat(p,": file not found, and synchronous loading of external files is not available"));return readBinary(p)}function c(){var _=preloadedWasm[e];return _?t.loadAsync?Promise.resolve(_):_:t.loadAsync?l().then(d=>loadWebAssemblyModule(d,t,e,r,n)):loadWebAssemblyModule(l(),t,e,r,n)}function u(_){a.global?mergeLibSymbols(_,e):r&&(Object.assign(r,_),registerDynCallSymbols(_)),a.exports=_}return t.loadAsync?c().then(_=>(u(_),!0)):(u(c()),!0)}var reportUndefinedSymbols=()=>{for(var[e,t]of Object.entries(GOT))if(t.value==0){var r=resolveGlobalSymbol(e,!0).sym;if(!r&&!t.required)continue;if(typeof r=="function")t.value=addFunction(r,r.sig);else if(typeof r=="number")t.value=r;else throw new Error("bad export type for '".concat(e,"': ").concat(typeof r))}},loadDylibs=()=>{if(!dynamicLibraries.length){reportUndefinedSymbols();return}addRunDependency("loadDylibs"),dynamicLibraries.reduce((e,t)=>e.then(()=>loadDynamicLibrary(t,{loadAsync:!0,global:!0,nodelete:!0,allowUndefined:!0})),Promise.resolve()).then(()=>{reportUndefinedSymbols(),removeRunDependency("loadDylibs")})},noExitRuntime=Module.noExitRuntime||!0;function setValue(e,t,r="i8"){switch(r.endsWith("*")&&(r="*"),r){case"i1":HEAP8[e>>>0]=t;break;case"i8":HEAP8[e>>>0]=t;break;case"i16":HEAP16[e>>>1>>>0]=t;break;case"i32":HEAP32[e>>>2>>>0]=t;break;case"i64":abort("to do setValue(i64) use WASM_BIGINT");case"float":HEAPF32[e>>>2>>>0]=t;break;case"double":HEAPF64[e>>>3>>>0]=t;break;case"*":HEAPU32[e>>>2>>>0]=t;break;default:abort("invalid type for setValue: ".concat(r))}}var convertI32PairToI53Checked=(e,t)=>t+2097152>>>0<4194305-!!e?(e>>>0)+t*4294967296:NaN;function ___assert_fail(e,t,r,n){e>>>=0,t>>>=0,n>>>=0,abort("Assertion failed: ".concat(UTF8ToString(e),", at: ")+[t?UTF8ToString(t):"unknown filename",r,n?UTF8ToString(n):"unknown function"])}___assert_fail.sig="vppip";var ___c_longjmp=new WebAssembly.Tag({parameters:["i32"]});function ___call_sighandler(e,t){return e>>>=0,getWasmTableEntry(e)(t)}___call_sighandler.sig="vpi";var ___cpp_exception=new WebAssembly.Tag({parameters:["i32"]}),___memory_base=new WebAssembly.Global({value:"i32",mutable:!1},1024),___stack_high=2452352,___stack_low=2386816,___stack_pointer=new WebAssembly.Global({value:"i32",mutable:!0},2452352),PATH={isAbs:e=>e.charAt(0)==="/",splitPath:e=>{var t=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return t.exec(e).slice(1)},normalizeArray:(e,t)=>{for(var r=0,n=e.length-1;n>=0;n--){var a=e[n];a==="."?e.splice(n,1):a===".."?(e.splice(n,1),r++):r&&(e.splice(n,1),r--)}if(t)for(;r;r--)e.unshift("..");return e},normalize:e=>{var t=PATH.isAbs(e),r=e.substr(-1)==="/";return e=PATH.normalizeArray(e.split("/").filter(n=>!!n),!t).join("/"),!e&&!t&&(e="."),e&&r&&(e+="/"),(t?"/":"")+e},dirname:e=>{var t=PATH.splitPath(e),r=t[0],n=t[1];return!r&&!n?".":(n&&(n=n.substr(0,n.length-1)),r+n)},basename:e=>{if(e==="/")return"/";e=PATH.normalize(e),e=e.replace(/\/$/,"");var t=e.lastIndexOf("/");return t===-1?e:e.substr(t+1)},join:(...e)=>PATH.normalize(e.join("/")),join2:(e,t)=>PATH.normalize(e+"/"+t)},initRandomFill=()=>{if(typeof crypto=="object"&&typeof crypto.getRandomValues=="function")return n=>crypto.getRandomValues(n);if(ENVIRONMENT_IS_NODE)try{var e=Cn("crypto"),t=e.randomFillSync;if(t)return n=>e.randomFillSync(n);var r=e.randomBytes;return n=>(n.set(r(n.byteLength)),n)}catch(n){}abort("initRandomDevice")},randomFill=e=>(randomFill=initRandomFill())(e),PATH_FS={resolve:(...e)=>{for(var t="",r=!1,n=e.length-1;n>=-1&&!r;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"";t=a+"/"+t,r=PATH.isAbs(a)}return t=PATH.normalizeArray(t.split("/").filter(l=>!!l),!r).join("/"),(r?"/":"")+t||"."},relative:(e,t)=>{e=PATH_FS.resolve(e).substr(1),t=PATH_FS.resolve(t).substr(1);function r(d){for(var f=0;f=0&&d[p]==="";p--);return f>p?[]:d.slice(f,p-f+1)}for(var n=r(e.split("/")),a=r(t.split("/")),l=Math.min(n.length,a.length),c=l,u=0;u{for(var t=0,r=0;r=55296&&n<=57343?(t+=4,++r):t+=3}return t},stringToUTF8Array=(e,t,r,n)=>{if(r>>>=0,!(n>0))return 0;for(var a=r,l=r+n-1,c=0;c=55296&&u<=57343){var _=e.charCodeAt(++c);u=65536+((u&1023)<<10)|_&1023}if(u<=127){if(r>=l)break;t[r++>>>0]=u}else if(u<=2047){if(r+1>=l)break;t[r++>>>0]=192|u>>6,t[r++>>>0]=128|u&63}else if(u<=65535){if(r+2>=l)break;t[r++>>>0]=224|u>>12,t[r++>>>0]=128|u>>6&63,t[r++>>>0]=128|u&63}else{if(r+3>=l)break;t[r++>>>0]=240|u>>18,t[r++>>>0]=128|u>>12&63,t[r++>>>0]=128|u>>6&63,t[r++>>>0]=128|u&63}}return t[r>>>0]=0,r-a};function intArrayFromString(e,t,r){var n=r>0?r:lengthBytesUTF8(e)+1,a=new Array(n),l=stringToUTF8Array(e,a,0,a.length);return t&&(a.length=l),a}var FS_stdin_getChar=()=>{if(!FS_stdin_getChar_buffer.length){var e=null;if(ENVIRONMENT_IS_NODE){var t=256,r=Buffer.alloc(t),n=0,a=process.stdin.fd;try{n=fs.readSync(a,r,0,t)}catch(l){if(l.toString().includes("EOF"))n=0;else throw l}n>0&&(e=r.slice(0,n).toString("utf-8"))}else typeof window<"u"&&typeof window.prompt=="function"&&(e=window.prompt("Input: "),e!==null&&(e+="\n"));if(!e)return null;FS_stdin_getChar_buffer=intArrayFromString(e,!0)}return FS_stdin_getChar_buffer.shift()},TTY={ttys:[],init(){},shutdown(){},register(e,t){TTY.ttys[e]={input:[],output:[],ops:t},FS.registerDevice(e,TTY.stream_ops)},stream_ops:{open(e){var t=TTY.ttys[e.node.rdev];if(!t)throw new FS.ErrnoError(43);e.tty=t,e.seekable=!1},close(e){e.tty.ops.fsync(e.tty)},fsync(e){e.tty.ops.fsync(e.tty)},read(e,t,r,n,a){if(!e.tty||!e.tty.ops.get_char)throw new FS.ErrnoError(60);for(var l=0,c=0;c0&&(out(UTF8ArrayToString(e.output)),e.output=[])},ioctl_tcgets(e){return{c_iflag:25856,c_oflag:5,c_cflag:191,c_lflag:35387,c_cc:[3,28,127,21,4,0,1,0,17,19,26,0,18,15,23,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]}},ioctl_tcsets(e,t,r){return 0},ioctl_tiocgwinsz(e){return[24,80]}},default_tty1_ops:{put_char(e,t){t===null||t===10?(err(UTF8ArrayToString(e.output)),e.output=[]):t!=0&&e.output.push(t)},fsync(e){e.output&&e.output.length>0&&(err(UTF8ArrayToString(e.output)),e.output=[])}}},zeroMemory=(e,t)=>{HEAPU8.fill(0,e,e+t)},mmapAlloc=e=>{e=alignMemory(e,65536);var t=_emscripten_builtin_memalign(65536,e);return t&&zeroMemory(t,e),t},MEMFS={ops_table:null,mount(e){return MEMFS.createNode(null,"/",16895,0)},createNode(e,t,r,n){if(FS.isBlkdev(r)||FS.isFIFO(r))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,t,r,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[t]=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,t){var r=e.contents?e.contents.length:0;if(!(r>=t)){var n=1024*1024;t=Math.max(t,r*(r>>0),r!=0&&(t=Math.max(t,256));var a=e.contents;e.contents=new Uint8Array(t),e.usedBytes>0&&e.contents.set(a.subarray(0,e.usedBytes),0)}},resizeFileStorage(e,t){if(e.usedBytes!=t)if(t==0)e.contents=null,e.usedBytes=0;else{var r=e.contents;e.contents=new Uint8Array(t),r&&e.contents.set(r.subarray(0,Math.min(t,e.usedBytes))),e.usedBytes=t}},node_ops:{getattr(e){var t={};return t.dev=FS.isChrdev(e.mode)?e.id:1,t.ino=e.id,t.mode=e.mode,t.nlink=1,t.uid=0,t.gid=0,t.rdev=e.rdev,FS.isDir(e.mode)?t.size=4096:FS.isFile(e.mode)?t.size=e.usedBytes:FS.isLink(e.mode)?t.size=e.link.length:t.size=0,t.atime=new Date(e.timestamp),t.mtime=new Date(e.timestamp),t.ctime=new Date(e.timestamp),t.blksize=4096,t.blocks=Math.ceil(t.size/t.blksize),t},setattr(e,t){t.mode!==void 0&&(e.mode=t.mode),t.timestamp!==void 0&&(e.timestamp=t.timestamp),t.size!==void 0&&MEMFS.resizeFileStorage(e,t.size)},lookup(e,t){throw FS.genericErrors[44]},mknod(e,t,r,n){return MEMFS.createNode(e,t,r,n)},rename(e,t,r){if(FS.isDir(e.mode)){var n;try{n=FS.lookupNode(t,r)}catch(l){}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=r,t.contents[r]=e,t.timestamp=e.parent.timestamp},unlink(e,t){delete e.contents[t],e.timestamp=Date.now()},rmdir(e,t){var r=FS.lookupNode(e,t);for(var n in r.contents)throw new FS.ErrnoError(55);delete e.contents[t],e.timestamp=Date.now()},readdir(e){var t=[".",".."];for(var r of Object.keys(e.contents))t.push(r);return t},symlink(e,t,r){var n=MEMFS.createNode(e,t,41471,0);return n.link=r,n},readlink(e){if(!FS.isLink(e.mode))throw new FS.ErrnoError(28);return e.link}},stream_ops:{read(e,t,r,n,a){var l=e.node.contents;if(a>=e.node.usedBytes)return 0;var c=Math.min(e.node.usedBytes-a,n);if(c>8&&l.subarray)t.set(l.subarray(a,a+c),r);else for(var u=0;u0||r+t>>0))}return{ptr:l,allocated:c}},msync(e,t,r,n,a){return MEMFS.stream_ops.write(e,t,0,n,r,!1),0}}},FS_createDataFile=(e,t,r,n,a,l)=>{FS.createDataFile(e,t,r,n,a,l)},FS_handledByPreloadPlugin=(e,t,r,n)=>{typeof Browser<"u"&&Browser.init();var a=!1;return preloadPlugins.forEach(l=>{a||l.canHandle(t)&&(l.handle(e,t,r,n),a=!0)}),a},FS_createPreloadedFile=(e,t,r,n,a,l,c,u,_,d)=>{var f=t?PATH_FS.resolve(PATH.join2(e,t)):e,p="cp ".concat(f);function m(g){function h(b){d==null||d(),u||FS_createDataFile(e,t,b,n,a,_),l==null||l(),removeRunDependency(p)}FS_handledByPreloadPlugin(g,f,h,()=>{c==null||c(),removeRunDependency(p)})||h(g)}addRunDependency(p),typeof r=="string"?asyncLoad(r,m,c):m(r)},FS_modeStringToFlags=e=>{var t={r:0,"r+":2,w:577,"w+":578,a:1089,"a+":1090},r=t[e];if(typeof r>"u")throw new Error("Unknown file open mode: ".concat(e));return r},FS_getMode=(e,t)=>{var r=0;return e&&(r|=365),t&&(r|=146),r},FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:!1,ignorePermissions:!0,ErrnoError:class{constructor(e){Qe(this,"name","ErrnoError");this.errno=e}},genericErrors:{},filesystems:null,syncFSRequests:0,readFiles:{},FSStream:class{constructor(){Qe(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,t,r,n){Qe(this,"node_ops",{});Qe(this,"stream_ops",{});Qe(this,"readMode",365);Qe(this,"writeMode",146);Qe(this,"mounted",null);e||(e=this),this.parent=e,this.mount=e.mount,this.id=FS.nextInode++,this.name=t,this.mode=r,this.rdev=n}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,t={}){if(e=PATH_FS.resolve(e),!e)return{path:"",node:null};var r={follow_mount:!0,recurse_count:0};if(t=Object.assign(r,t),t.recurse_count>8)throw new FS.ErrnoError(32);for(var n=e.split("/").filter(p=>!!p),a=FS.root,l="/",c=0;c40)throw new FS.ErrnoError(32)}}return{path:l,node:a}},getPath(e){for(var t;;){if(FS.isRoot(e)){var r=e.mount.mountpoint;return t?r[r.length-1]!=="/"?"".concat(r,"/").concat(t):r+t:r}t=t?"".concat(e.name,"/").concat(t):e.name,e=e.parent}},hashName(e,t){for(var r=0,n=0;n>>0)%FS.nameTable.length},hashAddNode(e){var t=FS.hashName(e.parent.id,e.name);e.name_next=FS.nameTable[t],FS.nameTable[t]=e},hashRemoveNode(e){var t=FS.hashName(e.parent.id,e.name);if(FS.nameTable[t]===e)FS.nameTable[t]=e.name_next;else for(var r=FS.nameTable[t];r;){if(r.name_next===e){r.name_next=e.name_next;break}r=r.name_next}},lookupNode(e,t){var r=FS.mayLookup(e);if(r)throw new FS.ErrnoError(r);for(var n=FS.hashName(e.id,t),a=FS.nameTable[n];a;a=a.name_next){var l=a.name;if(a.parent.id===e.id&&l===t)return a}return FS.lookup(e,t)},createNode(e,t,r,n){var a=new FS.FSNode(e,t,r,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 t=["r","w","rw"][e&3];return e&512&&(t+="w"),t},nodePermissions(e,t){return FS.ignorePermissions?0:t.includes("r")&&!(e.mode&292)||t.includes("w")&&!(e.mode&146)||t.includes("x")&&!(e.mode&73)?2:0},mayLookup(e){if(!FS.isDir(e.mode))return 54;var t=FS.nodePermissions(e,"x");return t||(e.node_ops.lookup?0:2)},mayCreate(e,t){try{var r=FS.lookupNode(e,t);return 20}catch(n){}return FS.nodePermissions(e,"wx")},mayDelete(e,t,r){var n;try{n=FS.lookupNode(e,t)}catch(l){return l.errno}var a=FS.nodePermissions(e,"wx");if(a)return a;if(r){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,t){return e?FS.isLink(e.mode)?32:FS.isDir(e.mode)&&(FS.flagsToPermissionString(t)!=="r"||t&512)?31:FS.nodePermissions(e,FS.flagsToPermissionString(t)):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 t=FS.getStream(e);if(!t)throw new FS.ErrnoError(8);return t},getStream:e=>FS.streams[e],createStream(e,t=-1){return e=Object.assign(new FS.FSStream,e),t==-1&&(t=FS.nextfd()),e.fd=t,FS.streams[t]=e,e},closeStream(e){FS.streams[e]=null},dupStream(e,t=-1){var n,a;var r=FS.createStream(e,t);return(a=(n=r.stream_ops)==null?void 0:n.dup)==null||a.call(n,r),r},chrdev_stream_ops:{open(e){var r,n;var t=FS.getDevice(e.node.rdev);e.stream_ops=t.stream_ops,(n=(r=e.stream_ops).open)==null||n.call(r,e)},llseek(){throw new FS.ErrnoError(70)}},major:e=>e>>8,minor:e=>e&255,makedev:(e,t)=>e<<8|t,registerDevice(e,t){FS.devices[e]={stream_ops:t}},getDevice:e=>FS.devices[e],getMounts(e){for(var t=[],r=[e];r.length;){var n=r.pop();t.push(n),r.push(...n.mounts)}return t},syncfs(e,t){typeof e=="function"&&(t=e,e=!1),FS.syncFSRequests++,FS.syncFSRequests>1&&err("warning: ".concat(FS.syncFSRequests," FS.syncfs operations in flight at once, probably just doing extra work"));var r=FS.getMounts(FS.root.mount),n=0;function a(c){return FS.syncFSRequests--,t(c)}function l(c){if(c)return l.errored?void 0:(l.errored=!0,a(c));++n>=r.length&&a(null)}r.forEach(c=>{if(!c.type.syncfs)return l(null);c.type.syncfs(c,e,l)})},mount(e,t,r){var n=r==="/",a=!r,l;if(n&&FS.root)throw new FS.ErrnoError(10);if(!n&&!a){var c=FS.lookupPath(r,{follow_mount:!1});if(r=c.path,l=c.node,FS.isMountpoint(l))throw new FS.ErrnoError(10);if(!FS.isDir(l.mode))throw new FS.ErrnoError(54)}var u={type:e,opts:t,mountpoint:r,mounts:[]},_=e.mount(u);return _.mount=u,u.root=_,n?FS.root=_:l&&(l.mounted=u,l.mount&&l.mount.mounts.push(u)),_},unmount(e){var t=FS.lookupPath(e,{follow_mount:!1});if(!FS.isMountpoint(t.node))throw new FS.ErrnoError(28);var r=t.node,n=r.mounted,a=FS.getMounts(n);Object.keys(FS.nameTable).forEach(c=>{for(var u=FS.nameTable[c];u;){var _=u.name_next;a.includes(u.mount)&&FS.destroyNode(u),u=_}}),r.mounted=null;var l=r.mount.mounts.indexOf(n);r.mount.mounts.splice(l,1)},lookup(e,t){return e.node_ops.lookup(e,t)},mknod(e,t,r){var n=FS.lookupPath(e,{parent:!0}),a=n.node,l=PATH.basename(e);if(!l||l==="."||l==="..")throw new FS.ErrnoError(28);var c=FS.mayCreate(a,l);if(c)throw new FS.ErrnoError(c);if(!a.node_ops.mknod)throw new FS.ErrnoError(63);return a.node_ops.mknod(a,l,t,r)},create(e,t){return t=t!==void 0?t:438,t&=4095,t|=32768,FS.mknod(e,t,0)},mkdir(e,t){return t=t!==void 0?t:511,t&=1023,t|=16384,FS.mknod(e,t,0)},mkdirTree(e,t){for(var r=e.split("/"),n="",a=0;a"u"&&(r=t,t=438),t|=8192,FS.mknod(e,t,r)},symlink(e,t){if(!PATH_FS.resolve(e))throw new FS.ErrnoError(44);var r=FS.lookupPath(t,{parent:!0}),n=r.node;if(!n)throw new FS.ErrnoError(44);var a=PATH.basename(t),l=FS.mayCreate(n,a);if(l)throw new FS.ErrnoError(l);if(!n.node_ops.symlink)throw new FS.ErrnoError(63);return n.node_ops.symlink(n,a,e)},rename(e,t){var r=PATH.dirname(e),n=PATH.dirname(t),a=PATH.basename(e),l=PATH.basename(t),c,u,_;if(c=FS.lookupPath(e,{parent:!0}),u=c.node,c=FS.lookupPath(t,{parent:!0}),_=c.node,!u||!_)throw new FS.ErrnoError(44);if(u.mount!==_.mount)throw new FS.ErrnoError(75);var d=FS.lookupNode(u,a),f=PATH_FS.relative(e,n);if(f.charAt(0)!==".")throw new FS.ErrnoError(28);if(f=PATH_FS.relative(t,r),f.charAt(0)!==".")throw new FS.ErrnoError(55);var p;try{p=FS.lookupNode(_,l)}catch(h){}if(d!==p){var m=FS.isDir(d.mode),g=FS.mayDelete(u,a,m);if(g)throw new FS.ErrnoError(g);if(g=p?FS.mayDelete(_,l,m):FS.mayCreate(_,l),g)throw new FS.ErrnoError(g);if(!u.node_ops.rename)throw new FS.ErrnoError(63);if(FS.isMountpoint(d)||p&&FS.isMountpoint(p))throw new FS.ErrnoError(10);if(_!==u&&(g=FS.nodePermissions(u,"w"),g))throw new FS.ErrnoError(g);FS.hashRemoveNode(d);try{u.node_ops.rename(d,_,l),d.parent=_}catch(h){throw h}finally{FS.hashAddNode(d)}}},rmdir(e){var t=FS.lookupPath(e,{parent:!0}),r=t.node,n=PATH.basename(e),a=FS.lookupNode(r,n),l=FS.mayDelete(r,n,!0);if(l)throw new FS.ErrnoError(l);if(!r.node_ops.rmdir)throw new FS.ErrnoError(63);if(FS.isMountpoint(a))throw new FS.ErrnoError(10);r.node_ops.rmdir(r,n),FS.destroyNode(a)},readdir(e){var t=FS.lookupPath(e,{follow:!0}),r=t.node;if(!r.node_ops.readdir)throw new FS.ErrnoError(54);return r.node_ops.readdir(r)},unlink(e){var t=FS.lookupPath(e,{parent:!0}),r=t.node;if(!r)throw new FS.ErrnoError(44);var n=PATH.basename(e),a=FS.lookupNode(r,n),l=FS.mayDelete(r,n,!1);if(l)throw new FS.ErrnoError(l);if(!r.node_ops.unlink)throw new FS.ErrnoError(63);if(FS.isMountpoint(a))throw new FS.ErrnoError(10);r.node_ops.unlink(r,n),FS.destroyNode(a)},readlink(e){var t=FS.lookupPath(e),r=t.node;if(!r)throw new FS.ErrnoError(44);if(!r.node_ops.readlink)throw new FS.ErrnoError(28);return PATH_FS.resolve(FS.getPath(r.parent),r.node_ops.readlink(r))},stat(e,t){var r=FS.lookupPath(e,{follow:!t}),n=r.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,t,r){var n;if(typeof e=="string"){var a=FS.lookupPath(e,{follow:!r});n=a.node}else n=e;if(!n.node_ops.setattr)throw new FS.ErrnoError(63);n.node_ops.setattr(n,{mode:t&4095|n.mode&-4096,timestamp:Date.now()})},lchmod(e,t){FS.chmod(e,t,!0)},fchmod(e,t){var r=FS.getStreamChecked(e);FS.chmod(r.node,t)},chown(e,t,r,n){var a;if(typeof e=="string"){var l=FS.lookupPath(e,{follow:!n});a=l.node}else a=e;if(!a.node_ops.setattr)throw new FS.ErrnoError(63);a.node_ops.setattr(a,{timestamp:Date.now()})},lchown(e,t,r){FS.chown(e,t,r,!0)},fchown(e,t,r){var n=FS.getStreamChecked(e);FS.chown(n.node,t,r)},truncate(e,t){if(t<0)throw new FS.ErrnoError(28);var r;if(typeof e=="string"){var n=FS.lookupPath(e,{follow:!0});r=n.node}else r=e;if(!r.node_ops.setattr)throw new FS.ErrnoError(63);if(FS.isDir(r.mode))throw new FS.ErrnoError(31);if(!FS.isFile(r.mode))throw new FS.ErrnoError(28);var a=FS.nodePermissions(r,"w");if(a)throw new FS.ErrnoError(a);r.node_ops.setattr(r,{size:t,timestamp:Date.now()})},ftruncate(e,t){var r=FS.getStreamChecked(e);if(!(r.flags&2097155))throw new FS.ErrnoError(28);FS.truncate(r.node,t)},utime(e,t,r){var n=FS.lookupPath(e,{follow:!0}),a=n.node;a.node_ops.setattr(a,{timestamp:Math.max(t,r)})},open(e,t,r){if(e==="")throw new FS.ErrnoError(44);t=typeof t=="string"?FS_modeStringToFlags(t):t,t&64?(r=typeof r>"u"?438:r,r=r&4095|32768):r=0;var n;if(typeof e=="object")n=e;else{e=PATH.normalize(e);try{var a=FS.lookupPath(e,{follow:!(t&131072)});n=a.node}catch(_){}}var l=!1;if(t&64)if(n){if(t&128)throw new FS.ErrnoError(20)}else n=FS.mknod(e,r,0),l=!0;if(!n)throw new FS.ErrnoError(44);if(FS.isChrdev(n.mode)&&(t&=-513),t&65536&&!FS.isDir(n.mode))throw new FS.ErrnoError(54);if(!l){var c=FS.mayOpen(n,t);if(c)throw new FS.ErrnoError(c)}t&512&&!l&&FS.truncate(n,0),t&=-131713;var u=FS.createStream({node:n,path:FS.getPath(n),flags:t,seekable:!0,position:0,stream_ops:n.stream_ops,ungotten:[],error:!1});return u.stream_ops.open&&u.stream_ops.open(u),Module.logReadFiles&&!(t&1)&&(e in FS.readFiles||(FS.readFiles[e]=1)),u},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(t){throw t}finally{FS.closeStream(e.fd)}e.fd=null},isClosed(e){return e.fd===null},llseek(e,t,r){if(FS.isClosed(e))throw new FS.ErrnoError(8);if(!e.seekable||!e.stream_ops.llseek)throw new FS.ErrnoError(70);if(r!=0&&r!=1&&r!=2)throw new FS.ErrnoError(28);return e.position=e.stream_ops.llseek(e,t,r),e.ungotten=[],e.position},read(e,t,r,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 l=typeof a<"u";if(!l)a=e.position;else if(!e.seekable)throw new FS.ErrnoError(70);var c=e.stream_ops.read(e,t,r,n,a);return l||(e.position+=c),c},write(e,t,r,n,a,l){if(n<0||a<0)throw new FS.ErrnoError(28);if(FS.isClosed(e))throw new FS.ErrnoError(8);if(!(e.flags&2097155))throw new FS.ErrnoError(8);if(FS.isDir(e.node.mode))throw new FS.ErrnoError(31);if(!e.stream_ops.write)throw new FS.ErrnoError(28);e.seekable&&e.flags&1024&&FS.llseek(e,0,2);var c=typeof a<"u";if(!c)a=e.position;else if(!e.seekable)throw new FS.ErrnoError(70);var u=e.stream_ops.write(e,t,r,n,a,l);return c||(e.position+=u),u},allocate(e,t,r){if(FS.isClosed(e))throw new FS.ErrnoError(8);if(t<0||r<=0)throw new FS.ErrnoError(28);if(!(e.flags&2097155))throw new FS.ErrnoError(8);if(!FS.isFile(e.node.mode)&&!FS.isDir(e.node.mode))throw new FS.ErrnoError(43);if(!e.stream_ops.allocate)throw new FS.ErrnoError(138);e.stream_ops.allocate(e,t,r)},mmap(e,t,r,n,a){if(n&2&&!(a&2)&&(e.flags&2097155)!==2)throw new FS.ErrnoError(2);if((e.flags&2097155)===1)throw new FS.ErrnoError(2);if(!e.stream_ops.mmap)throw new FS.ErrnoError(43);if(!t)throw new FS.ErrnoError(28);return e.stream_ops.mmap(e,t,r,n,a)},msync(e,t,r,n,a){return e.stream_ops.msync?e.stream_ops.msync(e,t,r,n,a):0},ioctl(e,t,r){if(!e.stream_ops.ioctl)throw new FS.ErrnoError(59);return e.stream_ops.ioctl(e,t,r)},readFile(e,t={}){if(t.flags=t.flags||0,t.encoding=t.encoding||"binary",t.encoding!=="utf8"&&t.encoding!=="binary")throw new Error('Invalid encoding type "'.concat(t.encoding,'"'));var r,n=FS.open(e,t.flags),a=FS.stat(e),l=a.size,c=new Uint8Array(l);return FS.read(n,c,0,l,0),t.encoding==="utf8"?r=UTF8ArrayToString(c):t.encoding==="binary"&&(r=c),FS.close(n),r},writeFile(e,t,r={}){r.flags=r.flags||577;var n=FS.open(e,r.flags,r.mode);if(typeof t=="string"){var a=new Uint8Array(lengthBytesUTF8(t)+1),l=stringToUTF8Array(t,a,0,a.length);FS.write(n,a,0,l,void 0,r.canOwn)}else if(ArrayBuffer.isView(t))FS.write(n,t,0,t.byteLength,void 0,r.canOwn);else throw new Error("Unsupported data type");FS.close(n)},cwd:()=>FS.currentPath,chdir(e){var t=FS.lookupPath(e,{follow:!0});if(t.node===null)throw new FS.ErrnoError(44);if(!FS.isDir(t.node.mode))throw new FS.ErrnoError(54);var r=FS.nodePermissions(t.node,"x");if(r)throw new FS.ErrnoError(r);FS.currentPath=t.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,l,c,u)=>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),t=0,r=()=>(t===0&&(t=randomFill(e).byteLength),e[--t]);FS.createDevice("/dev","random",r),FS.createDevice("/dev","urandom",r),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 t=FS.createNode(e,"fd",16895,73);return t.node_ops={lookup(r,n){var a=+n,l=FS.getStreamChecked(a),c={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:()=>l.path}};return c.parent=c,c}},t}},{},"/proc/self/fd")},createStandardStreams(e,t,r){e?FS.createDevice("/dev","stdin",e):FS.symlink("/dev/tty","/dev/stdin"),t?FS.createDevice("/dev","stdout",null,t):FS.symlink("/dev/tty","/dev/stdout"),r?FS.createDevice("/dev","stderr",null,r):FS.symlink("/dev/tty1","/dev/stderr");var n=FS.open("/dev/stdin",0),a=FS.open("/dev/stdout",1),l=FS.open("/dev/stderr",1)},staticInit(){[44].forEach(e=>{FS.genericErrors[e]=new FS.ErrnoError(e),FS.genericErrors[e].stack=""}),FS.nameTable=new Array(4096),FS.mount(MEMFS,{},"/"),FS.createDefaultDirectories(),FS.createDefaultDevices(),FS.createSpecialDirectories(),FS.filesystems={MEMFS}},init(e,t,r){FS.initialized=!0,e!=null||(e=Module.stdin),t!=null||(t=Module.stdout),r!=null||(r=Module.stderr),FS.createStandardStreams(e,t,r)},quit(){FS.initialized=!1;for(var e=0;ethis.length-1||g<0)){var h=g%this.chunkSize,b=g/this.chunkSize|0;return this.getter(b)[h]}}setDataGetter(g){this.getter=g}cacheLength(){var g=new XMLHttpRequest;if(g.open("HEAD",r,!1),g.send(null),!(g.status>=200&&g.status<300||g.status===304))throw new Error("Couldn't load "+r+". Status: "+g.status);var h=Number(g.getResponseHeader("Content-length")),b,y=(b=g.getResponseHeader("Accept-Ranges"))&&b==="bytes",A=(b=g.getResponseHeader("Content-Encoding"))&&b==="gzip",F=1024*1024;y||(F=h);var C=(S,T)=>{if(S>T)throw new Error("invalid range ("+S+", "+T+") or no bytes requested!");if(T>h-1)throw new Error("only "+h+" bytes available! programmer error!");var E=new XMLHttpRequest;if(E.open("GET",r,!1),h!==F&&E.setRequestHeader("Range","bytes="+S+"-"+T),E.responseType="arraybuffer",E.overrideMimeType&&E.overrideMimeType("text/plain; charset=x-user-defined"),E.send(null),!(E.status>=200&&E.status<300||E.status===304))throw new Error("Couldn't load "+r+". Status: "+E.status);return E.response!==void 0?new Uint8Array(E.response||[]):intArrayFromString(E.responseText||"",!0)},x=this;x.setDataGetter(S=>{var T=S*F,E=(S+1)*F-1;if(E=Math.min(E,h-1),typeof x.chunks[S]>"u"&&(x.chunks[S]=C(T,E)),typeof x.chunks[S]>"u")throw new Error("doXHR failed!");return x.chunks[S]}),(A||!h)&&(F=h=1,h=this.getter(0).length,F=h,out("LazyFiles on gzip forces download of the whole file when length is accessed")),this._length=h,this._chunkSize=F,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 c=new l,u={isDevice:!1,contents:c}}else var u={isDevice:!1,url:r};var _=FS.createFile(e,t,u,n,a);u.contents?_.contents=u.contents:u.url&&(_.contents=null,_.url=u.url),Object.defineProperties(_,{usedBytes:{get:function(){return this.contents.length}}});var d={},f=Object.keys(_.stream_ops);f.forEach(m=>{var g=_.stream_ops[m];d[m]=(...h)=>(FS.forceLoadFile(_),g(...h))});function p(m,g,h,b,y){var A=m.node.contents;if(y>=A.length)return 0;var F=Math.min(A.length-y,b);if(A.slice)for(var C=0;C(FS.forceLoadFile(_),p(m,g,h,b,y)),d.mmap=(m,g,h,b,y)=>{FS.forceLoadFile(_);var A=mmapAlloc(g);if(!A)throw new FS.ErrnoError(48);return p(m,HEAP8,A,g,h),{ptr:A,allocated:!0}},_.stream_ops=d,_}},SYSCALLS={DEFAULT_POLLMASK:5,calculateAt(e,t,r){if(PATH.isAbs(t))return t;var n;if(e===-100)n=FS.cwd();else{var a=SYSCALLS.getStreamFromFD(e);n=a.path}if(t.length==0){if(!r)throw new FS.ErrnoError(44);return n}return PATH.join2(n,t)},doStat(e,t,r){var n=e(t);HEAP32[r>>>2>>>0]=n.dev,HEAP32[r+4>>>2>>>0]=n.mode,HEAPU32[r+8>>>2>>>0]=n.nlink,HEAP32[r+12>>>2>>>0]=n.uid,HEAP32[r+16>>>2>>>0]=n.gid,HEAP32[r+20>>>2>>>0]=n.rdev,tempI64=[n.size>>>0,(tempDouble=n.size,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[r+24>>>2>>>0]=tempI64[0],HEAP32[r+28>>>2>>>0]=tempI64[1],HEAP32[r+32>>>2>>>0]=4096,HEAP32[r+36>>>2>>>0]=n.blocks;var a=n.atime.getTime(),l=n.mtime.getTime(),c=n.ctime.getTime();return tempI64=[Math.floor(a/1e3)>>>0,(tempDouble=Math.floor(a/1e3),+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[r+40>>>2>>>0]=tempI64[0],HEAP32[r+44>>>2>>>0]=tempI64[1],HEAPU32[r+48>>>2>>>0]=a%1e3*1e3*1e3,tempI64=[Math.floor(l/1e3)>>>0,(tempDouble=Math.floor(l/1e3),+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[r+56>>>2>>>0]=tempI64[0],HEAP32[r+60>>>2>>>0]=tempI64[1],HEAPU32[r+64>>>2>>>0]=l%1e3*1e3*1e3,tempI64=[Math.floor(c/1e3)>>>0,(tempDouble=Math.floor(c/1e3),+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[r+72>>>2>>>0]=tempI64[0],HEAP32[r+76>>>2>>>0]=tempI64[1],HEAPU32[r+80>>>2>>>0]=c%1e3*1e3*1e3,tempI64=[n.ino>>>0,(tempDouble=n.ino,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[r+88>>>2>>>0]=tempI64[0],HEAP32[r+92>>>2>>>0]=tempI64[1],0},doMsync(e,t,r,n,a){if(!FS.isFile(t.node.mode))throw new FS.ErrnoError(43);if(n&2)return 0;var l=HEAPU8.slice(e,e+r);FS.msync(t,l,a,r,n)},getStreamFromFD(e){var t=FS.getStreamChecked(e);return t},varargs:void 0,getStr(e){var t=UTF8ToString(e);return t}},___syscall__newselect=function(e,t,r,n,a){t>>>=0,r>>>=0,n>>>=0,a>>>=0;try{for(var l=0,c=t?HEAP32[t>>>2>>>0]:0,u=t?HEAP32[t+4>>>2>>>0]:0,_=r?HEAP32[r>>>2>>>0]:0,d=r?HEAP32[r+4>>>2>>>0]:0,f=n?HEAP32[n>>>2>>>0]:0,p=n?HEAP32[n+4>>>2>>>0]:0,m=0,g=0,h=0,b=0,y=0,A=0,F=(t?HEAP32[t>>>2>>>0]:0)|(r?HEAP32[r>>>2>>>0]:0)|(n?HEAP32[n>>>2>>>0]:0),C=(t?HEAP32[t+4>>>2>>>0]:0)|(r?HEAP32[r+4>>>2>>>0]:0)|(n?HEAP32[n+4>>>2>>>0]:0),x=(D,I,k,Q)=>D<32?I&Q:k&Q,S=0;S>>2>>>0]:0,M=t?HEAP32[a+4>>>2>>>0]:0;P=(L+M/1e6)*1e3}w=E.stream_ops.poll(E,P)}w&1&&x(S,c,u,T)&&(S<32?m=m|T:g=g|T,l++),w&4&&x(S,_,d,T)&&(S<32?h=h|T:b=b|T,l++),w&2&&x(S,f,p,T)&&(S<32?y=y|T:A=A|T,l++)}}return t&&(HEAP32[t>>>2>>>0]=m,HEAP32[t+4>>>2>>>0]=g),r&&(HEAP32[r>>>2>>>0]=h,HEAP32[r+4>>>2>>>0]=b),n&&(HEAP32[n>>>2>>>0]=y,HEAP32[n+4>>>2>>>0]=A),l}catch(D){if(typeof FS>"u"||D.name!=="ErrnoError")throw D;return-D.errno}};___syscall__newselect.sig="iipppp";var SOCKFS={websocketArgs:{},callbacks:{},on(e,t){SOCKFS.callbacks[e]=t},emit(e,t){var r,n;(n=(r=SOCKFS.callbacks)[e])==null||n.call(r,t)},mount(e){var t;return SOCKFS.websocketArgs=Module.websocket||{},((t=Module.websocket)!=null?t:Module.websocket={}).on=SOCKFS.on,FS.createNode(null,"/",16895,0)},createSocket(e,t,r){t&=-526337;var n=t==1;if(n&&r&&r!=6)throw new FS.ErrnoError(66);var a={family:e,type:t,protocol:r,server:null,error:null,peers:{},pending:[],recv_queue:[],sock_ops:SOCKFS.websocket_sock_ops},l=SOCKFS.nextname(),c=FS.createNode(SOCKFS.root,l,49152,0);c.sock=a;var u=FS.createStream({path:l,node:c,flags:2,seekable:!1,stream_ops:SOCKFS.stream_ops});return a.stream=u,a},getSocket(e){var t=FS.getStream(e);return!t||!FS.isSocket(t.node.mode)?null:t.node.sock},stream_ops:{poll(e){var t=e.node.sock;return t.sock_ops.poll(t)},ioctl(e,t,r){var n=e.node.sock;return n.sock_ops.ioctl(n,t,r)},read(e,t,r,n,a){var l=e.node.sock,c=l.sock_ops.recvmsg(l,n);return c?(t.set(c.buffer,r),c.buffer.length):0},write(e,t,r,n,a){var l=e.node.sock;return l.sock_ops.sendmsg(l,t,r,n)},close(e){var t=e.node.sock;t.sock_ops.close(t)}},nextname(){return SOCKFS.nextname.current||(SOCKFS.nextname.current=0),"socket["+SOCKFS.nextname.current+++"]"},websocket_sock_ops:{createPeer(e,t,r){var n;if(typeof t=="object"&&(n=t,t=null,r=null),n)if(n._socket)t=n._socket.remoteAddress,r=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");t=a[1],r=parseInt(a[2],10)}else try{var l="ws:#".replace("#","//"),c="binary",u=void 0;if(SOCKFS.websocketArgs.url&&(l=SOCKFS.websocketArgs.url),SOCKFS.websocketArgs.subprotocol?c=SOCKFS.websocketArgs.subprotocol:SOCKFS.websocketArgs.subprotocol===null&&(c="null"),l==="ws://"||l==="wss://"){var _=t.split("/");l=l+_[0]+":"+r+"/"+_.slice(1).join("/")}c!=="null"&&(c=c.replace(/^ +| +$/g,"").split(/ *, */),u=c);var d;ENVIRONMENT_IS_NODE?d=To():d=WebSocket,n=new d(l,u),n.binaryType="arraybuffer"}catch(p){throw new FS.ErrnoError(23)}var f={addr:t,port:r,socket:n,msg_send_queue:[]};return SOCKFS.websocket_sock_ops.addPeer(e,f),SOCKFS.websocket_sock_ops.handlePeerEvents(e,f),e.type===2&&typeof e.sport<"u"&&f.msg_send_queue.push(new Uint8Array([255,255,255,255,112,111,114,116,(e.sport&65280)>>8,e.sport&255])),f},getPeer(e,t,r){return e.peers[t+":"+r]},addPeer(e,t){e.peers[t.addr+":"+t.port]=t},removePeer(e,t){delete e.peers[t.addr+":"+t.port]},handlePeerEvents(e,t){var r=!0,n=function(){e.connecting=!1,SOCKFS.emit("open",e.stream.fd);try{for(var l=t.msg_send_queue.shift();l;)t.socket.send(l),l=t.msg_send_queue.shift()}catch(c){t.socket.close()}};function a(l){if(typeof l=="string"){var c=new TextEncoder;l=c.encode(l)}else{if(assert(l.byteLength!==void 0),l.byteLength==0)return;l=new Uint8Array(l)}var u=r;if(r=!1,u&&l.length===10&&l[0]===255&&l[1]===255&&l[2]===255&&l[3]===255&&l[4]===112&&l[5]===111&&l[6]===114&&l[7]===116){var _=l[8]<<8|l[9];SOCKFS.websocket_sock_ops.removePeer(e,t),t.port=_,SOCKFS.websocket_sock_ops.addPeer(e,t);return}e.recv_queue.push({addr:t.addr,port:t.port,data:l}),SOCKFS.emit("message",e.stream.fd)}ENVIRONMENT_IS_NODE?(t.socket.on("open",n),t.socket.on("message",function(l,c){c&&a(new Uint8Array(l).buffer)}),t.socket.on("close",function(){SOCKFS.emit("close",e.stream.fd)}),t.socket.on("error",function(l){e.error=14,SOCKFS.emit("error",[e.stream.fd,e.error,"ECONNREFUSED: Connection refused"])})):(t.socket.onopen=n,t.socket.onclose=function(){SOCKFS.emit("close",e.stream.fd)},t.socket.onmessage=function(c){a(c.data)},t.socket.onerror=function(l){e.error=14,SOCKFS.emit("error",[e.stream.fd,e.error,"ECONNREFUSED: Connection refused"])})},poll(e){if(e.type===1&&e.server)return e.pending.length?65:0;var t=0,r=e.type===1?SOCKFS.websocket_sock_ops.getPeer(e,e.daddr,e.dport):null;return(e.recv_queue.length||!r||r&&r.socket.readyState===r.socket.CLOSING||r&&r.socket.readyState===r.socket.CLOSED)&&(t|=65),(!r||r&&r.socket.readyState===r.socket.OPEN)&&(t|=4),(r&&r.socket.readyState===r.socket.CLOSING||r&&r.socket.readyState===r.socket.CLOSED)&&(e.connecting?t|=4:t|=16),t},ioctl(e,t,r){switch(t){case 21531:var n=0;return e.recv_queue.length&&(n=e.recv_queue[0].data.length),HEAP32[r>>>2>>>0]=n,0;default:return 28}},close(e){if(e.server){try{e.server.close()}catch(a){}e.server=null}for(var t=Object.keys(e.peers),r=0;r{var t=SOCKFS.getSocket(e);if(!t)throw new FS.ErrnoError(8);return t},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 t=e.split("."),r=0;r<4;r++){var n=Number(t[r]);if(isNaN(n))return null;t[r]=n}return(t[0]|t[1]<<8|t[2]<<16|t[3]<<24)>>>0},jstoi_q=e=>parseInt(e),inetPton6=e=>{var t,r,n,a,l,c=/^((?=.*::)(?!.*::.+::)(::)?([\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,u=[];if(!c.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"),":"),t=e.split(":"),t[t.length-4]=jstoi_q(t[t.length-4])+jstoi_q(t[t.length-3])*256,t[t.length-3]=jstoi_q(t[t.length-2])+jstoi_q(t[t.length-1])*256,t=t.slice(0,t.length-2)):t=e.split(":"),n=0,a=0,r=0;r{switch(t){case 2:r=inetPton4(r),zeroMemory(e,16),a&&(HEAP32[a>>>2>>>0]=16),HEAP16[e>>>1>>>0]=t,HEAP32[e+4>>>2>>>0]=r,HEAP16[e+2>>>1>>>0]=_htons(n);break;case 10:r=inetPton6(r),zeroMemory(e,28),a&&(HEAP32[a>>>2>>>0]=28),HEAP32[e>>>2>>>0]=t,HEAP32[e+8>>>2>>>0]=r[0],HEAP32[e+12>>>2>>>0]=r[1],HEAP32[e+16>>>2>>>0]=r[2],HEAP32[e+20>>>2>>>0]=r[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 t=inetPton4(e);if(t!==null||(t=inetPton6(e),t!==null))return e;var r;if(DNS.address_map.addrs[e])r=DNS.address_map.addrs[e];else{var n=DNS.address_map.id++;assert(n<65535,"exceeded max address mappings of 65535"),r="172.29."+(n&255)+"."+(n&65280),DNS.address_map.names[r]=e,DNS.address_map.addrs[e]=r}return r},lookup_addr(e){return DNS.address_map.names[e]?DNS.address_map.names[e]:null}};function ___syscall_accept4(e,t,r,n,a,l){t>>>=0,r>>>=0;try{var c=getSocketFromFD(e),u=c.sock_ops.accept(c);if(t)var _=writeSockaddr(t,u.family,DNS.lookup_name(u.daddr),u.dport,r);return u.stream.fd}catch(d){if(typeof FS>"u"||d.name!=="ErrnoError")throw d;return-d.errno}}___syscall_accept4.sig="iippiii";var inetNtop4=e=>(e&255)+"."+(e>>8&255)+"."+(e>>16&255)+"."+(e>>24&255),inetNtop6=e=>{var t="",r=0,n=0,a=0,l=0,c=0,u=0,_=[e[0]&65535,e[0]>>16,e[1]&65535,e[1]>>16,e[2]&65535,e[2]>>16,e[3]&65535,e[3]>>16],d=!0,f="";for(u=0;u<5;u++)if(_[u]!==0){d=!1;break}if(d){if(f=inetNtop4(_[6]|_[7]<<16),_[5]===-1)return t="::ffff:",t+=f,t;if(_[5]===0)return t="::",f==="0.0.0.0"&&(f=""),f==="0.0.0.1"&&(f="1"),t+=f,t}for(r=0;r<8;r++)_[r]===0&&(r-a>1&&(c=0),a=r,c++),c>n&&(n=c,l=r-n+1);for(r=0;r<8;r++){if(n>1&&_[r]===0&&r>=l&&r{var r=HEAP16[e>>>1>>>0],n=_ntohs(HEAPU16[e+2>>>1>>>0]),a;switch(r){case 2:if(t!==16)return{errno:28};a=HEAP32[e+4>>>2>>>0],a=inetNtop4(a);break;case 10:if(t!==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:r,addr:a,port:n}},getSocketAddress=(e,t)=>{var r=readSockaddr(e,t);if(r.errno)throw new FS.ErrnoError(r.errno);return r.addr=DNS.lookup_addr(r.addr)||r.addr,r};function ___syscall_bind(e,t,r,n,a,l){t>>>=0,r>>>=0;try{var c=getSocketFromFD(e),u=getSocketAddress(t,r);return c.sock_ops.bind(c,u.addr,u.port),0}catch(_){if(typeof FS>"u"||_.name!=="ErrnoError")throw _;return-_.errno}}___syscall_bind.sig="iippiii";function ___syscall_chdir(e){e>>>=0;try{return e=SYSCALLS.getStr(e),FS.chdir(e),0}catch(t){if(typeof FS>"u"||t.name!=="ErrnoError")throw t;return-t.errno}}___syscall_chdir.sig="ip";function ___syscall_chmod(e,t){e>>>=0;try{return e=SYSCALLS.getStr(e),FS.chmod(e,t),0}catch(r){if(typeof FS>"u"||r.name!=="ErrnoError")throw r;return-r.errno}}___syscall_chmod.sig="ipi";function ___syscall_connect(e,t,r,n,a,l){t>>>=0,r>>>=0;try{var c=getSocketFromFD(e),u=getSocketAddress(t,r);return c.sock_ops.connect(c,u.addr,u.port),0}catch(_){if(typeof FS>"u"||_.name!=="ErrnoError")throw _;return-_.errno}}___syscall_connect.sig="iippiii";function ___syscall_dup(e){try{var t=SYSCALLS.getStreamFromFD(e);return FS.dupStream(t).fd}catch(r){if(typeof FS>"u"||r.name!=="ErrnoError")throw r;return-r.errno}}___syscall_dup.sig="ii";function ___syscall_dup3(e,t,r){try{var n=SYSCALLS.getStreamFromFD(e);if(n.fd===t)return-28;if(t<0||t>=FS.MAX_OPEN_FDS)return-8;var a=FS.getStream(t);return a&&FS.close(a),FS.dupStream(n,t).fd}catch(l){if(typeof FS>"u"||l.name!=="ErrnoError")throw l;return-l.errno}}___syscall_dup3.sig="iiii";function ___syscall_faccessat(e,t,r,n){t>>>=0;try{if(t=SYSCALLS.getStr(t),t=SYSCALLS.calculateAt(e,t),r&-8)return-28;var a=FS.lookupPath(t,{follow:!0}),l=a.node;if(!l)return-44;var c="";return r&4&&(c+="r"),r&2&&(c+="w"),r&1&&(c+="x"),c&&FS.nodePermissions(l,c)?-2:0}catch(u){if(typeof FS>"u"||u.name!=="ErrnoError")throw u;return-u.errno}}___syscall_faccessat.sig="iipii";var ___syscall_fadvise64=(e,t,r,n)=>0;___syscall_fadvise64.sig="iiiiiii";function ___syscall_fallocate(e,t,r,n,a,l){var c=convertI32PairToI53Checked(r,n),u=convertI32PairToI53Checked(a,l);try{if(isNaN(c))return 61;var _=SYSCALLS.getStreamFromFD(e);return FS.allocate(_,c,u),0}catch(d){if(typeof FS>"u"||d.name!=="ErrnoError")throw d;return-d.errno}}___syscall_fallocate.sig="iiiiiii";function ___syscall_fchdir(e){try{var t=SYSCALLS.getStreamFromFD(e);return FS.chdir(t.path),0}catch(r){if(typeof FS>"u"||r.name!=="ErrnoError")throw r;return-r.errno}}___syscall_fchdir.sig="ii";function ___syscall_fchmod(e,t){try{return FS.fchmod(e,t),0}catch(r){if(typeof FS>"u"||r.name!=="ErrnoError")throw r;return-r.errno}}___syscall_fchmod.sig="iii";function ___syscall_fchmodat2(e,t,r,n){t>>>=0;try{var a=n&256;return t=SYSCALLS.getStr(t),t=SYSCALLS.calculateAt(e,t),FS.chmod(t,r,a),0}catch(l){if(typeof FS>"u"||l.name!=="ErrnoError")throw l;return-l.errno}}___syscall_fchmodat2.sig="iipii";function ___syscall_fchown32(e,t,r){try{return FS.fchown(e,t,r),0}catch(n){if(typeof FS>"u"||n.name!=="ErrnoError")throw n;return-n.errno}}___syscall_fchown32.sig="iiii";function ___syscall_fchownat(e,t,r,n,a){t>>>=0;try{t=SYSCALLS.getStr(t);var l=a&256;return a=a&-257,t=SYSCALLS.calculateAt(e,t),(l?FS.lchown:FS.chown)(t,r,n),0}catch(c){if(typeof FS>"u"||c.name!=="ErrnoError")throw c;return-c.errno}}___syscall_fchownat.sig="iipiii";var syscallGetVarargI=()=>{var e=HEAP32[+SYSCALLS.varargs>>>2>>>0];return SYSCALLS.varargs+=4,e},syscallGetVarargP=syscallGetVarargI;function ___syscall_fcntl64(e,t,r){r>>>=0,SYSCALLS.varargs=r;try{var n=SYSCALLS.getStreamFromFD(e);switch(t){case 0:{var a=syscallGetVarargI();if(a<0)return-28;for(;FS.streams[a];)a++;var l;return l=FS.dupStream(n,a),l.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(),c=0;return HEAP16[a+c>>>1>>>0]=2,0}case 13:case 14:return 0}return-28}catch(u){if(typeof FS>"u"||u.name!=="ErrnoError")throw u;return-u.errno}}___syscall_fcntl64.sig="iiip";function ___syscall_fdatasync(e){try{var t=SYSCALLS.getStreamFromFD(e);return 0}catch(r){if(typeof FS>"u"||r.name!=="ErrnoError")throw r;return-r.errno}}___syscall_fdatasync.sig="ii";function ___syscall_fstat64(e,t){t>>>=0;try{var r=SYSCALLS.getStreamFromFD(e);return SYSCALLS.doStat(FS.stat,r.path,t)}catch(n){if(typeof FS>"u"||n.name!=="ErrnoError")throw n;return-n.errno}}___syscall_fstat64.sig="iip";function ___syscall_statfs64(e,t,r){e>>>=0,t>>>=0,r>>>=0;try{return e=SYSCALLS.getStr(e),HEAP32[r+4>>>2>>>0]=4096,HEAP32[r+40>>>2>>>0]=4096,HEAP32[r+8>>>2>>>0]=1e6,HEAP32[r+12>>>2>>>0]=5e5,HEAP32[r+16>>>2>>>0]=5e5,HEAP32[r+20>>>2>>>0]=FS.nextInode,HEAP32[r+24>>>2>>>0]=1e6,HEAP32[r+28>>>2>>>0]=42,HEAP32[r+44>>>2>>>0]=2,HEAP32[r+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,t,r){t>>>=0,r>>>=0;try{var n=SYSCALLS.getStreamFromFD(e);return ___syscall_statfs64(0,t,r)}catch(a){if(typeof FS>"u"||a.name!=="ErrnoError")throw a;return-a.errno}}___syscall_fstatfs64.sig="iipp";function ___syscall_ftruncate64(e,t,r){var n=convertI32PairToI53Checked(t,r);try{return isNaN(n)?61:(FS.ftruncate(e,n),0)}catch(a){if(typeof FS>"u"||a.name!=="ErrnoError")throw a;return-a.errno}}___syscall_ftruncate64.sig="iiii";var stringToUTF8=(e,t,r)=>stringToUTF8Array(e,HEAPU8,t,r);function ___syscall_getcwd(e,t){e>>>=0,t>>>=0;try{if(t===0)return-28;var r=FS.cwd(),n=lengthBytesUTF8(r)+1;return t"u"||a.name!=="ErrnoError")throw a;return-a.errno}}___syscall_getcwd.sig="ipp";function ___syscall_getdents64(e,t,r){t>>>=0,r>>>=0;try{var n=SYSCALLS.getStreamFromFD(e);n.getdents||(n.getdents=FS.readdir(n.path));for(var a=280,l=0,c=FS.llseek(n,0,1),u=Math.floor(c/a);u>>0,(tempDouble=_,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[t+l>>>2>>>0]=tempI64[0],HEAP32[t+l+4>>>2>>>0]=tempI64[1],tempI64=[(u+1)*a>>>0,(tempDouble=(u+1)*a,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[t+l+8>>>2>>>0]=tempI64[0],HEAP32[t+l+12>>>2>>>0]=tempI64[1],HEAP16[t+l+16>>>1>>>0]=280,HEAP8[t+l+18>>>0]=d,stringToUTF8(f,t+l+19,256),l+=a,u+=1}return FS.llseek(n,u*a,0),l}catch(g){if(typeof FS>"u"||g.name!=="ErrnoError")throw g;return-g.errno}}___syscall_getdents64.sig="iipp";function ___syscall_getpeername(e,t,r,n,a,l){t>>>=0,r>>>=0;try{var c=getSocketFromFD(e);if(!c.daddr)return-53;var u=writeSockaddr(t,c.family,DNS.lookup_name(c.daddr),c.dport,r);return 0}catch(_){if(typeof FS>"u"||_.name!=="ErrnoError")throw _;return-_.errno}}___syscall_getpeername.sig="iippiii";function ___syscall_getsockname(e,t,r,n,a,l){t>>>=0,r>>>=0;try{var c=getSocketFromFD(e),u=writeSockaddr(t,c.family,DNS.lookup_name(c.saddr||"0.0.0.0"),c.sport,r);return 0}catch(_){if(typeof FS>"u"||_.name!=="ErrnoError")throw _;return-_.errno}}___syscall_getsockname.sig="iippiii";function ___syscall_getsockopt(e,t,r,n,a,l){n>>>=0,a>>>=0;try{var c=getSocketFromFD(e);return t===1&&r===4?(HEAP32[n>>>2>>>0]=c.error,HEAP32[a>>>2>>>0]=4,c.error=null,0):-50}catch(u){if(typeof FS>"u"||u.name!=="ErrnoError")throw u;return-u.errno}}___syscall_getsockopt.sig="iiiippi";function ___syscall_ioctl(e,t,r){r>>>=0,SYSCALLS.varargs=r;try{var n=SYSCALLS.getStreamFromFD(e);switch(t){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),l=syscallGetVarargP();HEAP32[l>>>2>>>0]=a.c_iflag||0,HEAP32[l+4>>>2>>>0]=a.c_oflag||0,HEAP32[l+8>>>2>>>0]=a.c_cflag||0,HEAP32[l+12>>>2>>>0]=a.c_lflag||0;for(var c=0;c<32;c++)HEAP8[l+c+17>>>0]=a.c_cc[c]||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 l=syscallGetVarargP(),u=HEAP32[l>>>2>>>0],_=HEAP32[l+4>>>2>>>0],d=HEAP32[l+8>>>2>>>0],f=HEAP32[l+12>>>2>>>0],p=[],c=0;c<32;c++)p.push(HEAP8[l+c+17>>>0]);return n.tty.ops.ioctl_tcsets(n.tty,t,{c_iflag:u,c_oflag:_,c_cflag:d,c_lflag:f,c_cc:p})}return 0}case 21519:{if(!n.tty)return-59;var l=syscallGetVarargP();return HEAP32[l>>>2>>>0]=0,0}case 21520:return n.tty?-28:-59;case 21531:{var l=syscallGetVarargP();return FS.ioctl(n,t,l)}case 21523:{if(!n.tty)return-59;if(n.tty.ops.ioctl_tiocgwinsz){var m=n.tty.ops.ioctl_tiocgwinsz(n.tty),l=syscallGetVarargP();HEAP16[l>>>1>>>0]=m[0],HEAP16[l+2>>>1>>>0]=m[1]}return 0}case 21524:return n.tty?0:-59;case 21515:return n.tty?0:-59;default:return-28}}catch(g){if(typeof FS>"u"||g.name!=="ErrnoError")throw g;return-g.errno}}___syscall_ioctl.sig="iiip";function ___syscall_listen(e,t){try{var r=getSocketFromFD(e);return r.sock_ops.listen(r,t),0}catch(n){if(typeof FS>"u"||n.name!=="ErrnoError")throw n;return-n.errno}}___syscall_listen.sig="iiiiiii";function ___syscall_lstat64(e,t){e>>>=0,t>>>=0;try{return e=SYSCALLS.getStr(e),SYSCALLS.doStat(FS.lstat,e,t)}catch(r){if(typeof FS>"u"||r.name!=="ErrnoError")throw r;return-r.errno}}___syscall_lstat64.sig="ipp";function ___syscall_mkdirat(e,t,r){t>>>=0;try{return t=SYSCALLS.getStr(t),t=SYSCALLS.calculateAt(e,t),t=PATH.normalize(t),t[t.length-1]==="/"&&(t=t.substr(0,t.length-1)),FS.mkdir(t,r,0),0}catch(n){if(typeof FS>"u"||n.name!=="ErrnoError")throw n;return-n.errno}}___syscall_mkdirat.sig="iipi";function ___syscall_mknodat(e,t,r,n){t>>>=0;try{switch(t=SYSCALLS.getStr(t),t=SYSCALLS.calculateAt(e,t),r&61440){case 32768:case 8192:case 24576:case 4096:case 49152:break;default:return-28}return FS.mknod(t,r,n),0}catch(a){if(typeof FS>"u"||a.name!=="ErrnoError")throw a;return-a.errno}}___syscall_mknodat.sig="iipii";function ___syscall_newfstatat(e,t,r,n){t>>>=0,r>>>=0;try{t=SYSCALLS.getStr(t);var a=n&256,l=n&4096;return n=n&-6401,t=SYSCALLS.calculateAt(e,t,l),SYSCALLS.doStat(a?FS.lstat:FS.stat,t,r)}catch(c){if(typeof FS>"u"||c.name!=="ErrnoError")throw c;return-c.errno}}___syscall_newfstatat.sig="iippi";function ___syscall_openat(e,t,r,n){t>>>=0,n>>>=0,SYSCALLS.varargs=n;try{t=SYSCALLS.getStr(t),t=SYSCALLS.calculateAt(e,t);var a=n?syscallGetVarargI():0;return FS.open(t,r,a).fd}catch(l){if(typeof FS>"u"||l.name!=="ErrnoError")throw l;return-l.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 t=PIPEFS.nextname(),r=PIPEFS.nextname(),n=FS.createNode(PIPEFS.root,t,4096,0),a=FS.createNode(PIPEFS.root,r,4096,0);n.pipe=e,a.pipe=e;var l=FS.createStream({path:t,node:n,flags:0,seekable:!1,stream_ops:PIPEFS.stream_ops});n.stream=l;var c=FS.createStream({path:r,node:a,flags:1,seekable:!1,stream_ops:PIPEFS.stream_ops});return a.stream=c,{readable_fd:l.fd,writable_fd:c.fd}},stream_ops:{poll(e){var t=e.node.pipe;if((e.flags&2097155)===1)return 260;if(t.buckets.length>0)for(var r=0;r0)return 65}return 0},ioctl(e,t,r){return 28},fsync(e){return 28},read(e,t,r,n,a){for(var l=e.node.pipe,c=0,u=0;u=u)return _.buffer.set(c,_.offset),_.offset+=u,u;d>0&&(_.buffer.set(c.subarray(0,d),_.offset),_.offset+=d,c=c.subarray(d,c.byteLength));for(var f=c.byteLength/PIPEFS.BUCKET_BUFFER_SIZE|0,p=c.byteLength%PIPEFS.BUCKET_BUFFER_SIZE,m=0;m0){var g={buffer:new Uint8Array(PIPEFS.BUCKET_BUFFER_SIZE),offset:c.byteLength,roffset:0};l.buckets.push(g),g.buffer.set(c)}return u},close(e){var t=e.node.pipe;t.refcnt--,t.refcnt===0&&(t.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 t=PIPEFS.createPipe();return HEAP32[e>>>2>>>0]=t.readable_fd,HEAP32[e+4>>>2>>>0]=t.writable_fd,0}catch(r){if(typeof FS>"u"||r.name!=="ErrnoError")throw r;return-r.errno}}___syscall_pipe.sig="ip";function ___syscall_poll(e,t,r){e>>>=0;try{for(var n=0,a=0;a>>2>>>0],u=HEAP16[l+4>>>1>>>0],_=32,d=FS.getStream(c);d&&(_=SYSCALLS.DEFAULT_POLLMASK,d.stream_ops.poll&&(_=d.stream_ops.poll(d,-1))),_&=u|8|16,_&&n++,HEAP16[l+6>>>1>>>0]=_}return n}catch(f){if(typeof FS>"u"||f.name!=="ErrnoError")throw f;return-f.errno}}___syscall_poll.sig="ipii";function ___syscall_readlinkat(e,t,r,n){t>>>=0,r>>>=0,n>>>=0;try{if(t=SYSCALLS.getStr(t),t=SYSCALLS.calculateAt(e,t),n<=0)return-28;var a=FS.readlink(t),l=Math.min(n,lengthBytesUTF8(a)),c=HEAP8[r+l>>>0];return stringToUTF8(a,r,n+1),HEAP8[r+l>>>0]=c,l}catch(u){if(typeof FS>"u"||u.name!=="ErrnoError")throw u;return-u.errno}}___syscall_readlinkat.sig="iippp";function ___syscall_recvfrom(e,t,r,n,a,l){t>>>=0,r>>>=0,a>>>=0,l>>>=0;try{var c=getSocketFromFD(e),u=c.sock_ops.recvmsg(c,r);if(!u)return 0;if(a)var _=writeSockaddr(a,c.family,DNS.lookup_name(u.addr),u.port,l);return HEAPU8.set(u.buffer,t>>>0),u.buffer.byteLength}catch(d){if(typeof FS>"u"||d.name!=="ErrnoError")throw d;return-d.errno}}___syscall_recvfrom.sig="iippipp";function ___syscall_recvmsg(e,t,r,n,a,l){t>>>=0;try{for(var c=getSocketFromFD(e),u=HEAPU32[t+8>>>2>>>0],_=HEAP32[t+12>>>2>>>0],d=0,f=0;f<_;f++)d+=HEAP32[u+(8*f+4)>>>2>>>0];var p=c.sock_ops.recvmsg(c,d);if(!p)return 0;var m=HEAPU32[t>>>2>>>0];if(m)var g=writeSockaddr(m,c.family,DNS.lookup_name(p.addr),p.port);for(var h=0,b=p.buffer.byteLength,f=0;b>0&&f<_;f++){var y=HEAPU32[u+(8*f+0)>>>2>>>0],A=HEAP32[u+(8*f+4)>>>2>>>0];if(A){var F=Math.min(A,b),C=p.buffer.subarray(h,h+F);HEAPU8.set(C,y+h>>>0),h+=F,b-=F}}return h}catch(x){if(typeof FS>"u"||x.name!=="ErrnoError")throw x;return-x.errno}}___syscall_recvmsg.sig="iipiiii";function ___syscall_renameat(e,t,r,n){t>>>=0,n>>>=0;try{return t=SYSCALLS.getStr(t),n=SYSCALLS.getStr(n),t=SYSCALLS.calculateAt(e,t),n=SYSCALLS.calculateAt(r,n),FS.rename(t,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(t){if(typeof FS>"u"||t.name!=="ErrnoError")throw t;return-t.errno}}___syscall_rmdir.sig="ip";function ___syscall_sendmsg(e,t,r,n,a,l){t>>>=0,n>>>=0,a>>>=0;try{var c=getSocketFromFD(e),u=HEAPU32[t+8>>>2>>>0],_=HEAP32[t+12>>>2>>>0],d,f,p=HEAPU32[t>>>2>>>0],m=HEAP32[t+4>>>2>>>0];if(p){var g=getSocketAddress(p,m);f=g.port,d=g.addr}for(var h=0,b=0;b<_;b++)h+=HEAP32[u+(8*b+4)>>>2>>>0];for(var y=new Uint8Array(h),A=0,b=0;b<_;b++)for(var F=HEAPU32[u+(8*b+0)>>>2>>>0],C=HEAP32[u+(8*b+4)>>>2>>>0],x=0;x>>0];return c.sock_ops.sendmsg(c,y,0,h,d,f)}catch(S){if(typeof FS>"u"||S.name!=="ErrnoError")throw S;return-S.errno}}___syscall_sendmsg.sig="iipippi";function ___syscall_sendto(e,t,r,n,a,l){t>>>=0,r>>>=0,a>>>=0,l>>>=0;try{var c=getSocketFromFD(e);if(!a)return FS.write(c.stream,HEAP8,t,r);var u=getSocketAddress(a,l);return c.sock_ops.sendmsg(c,HEAP8,t,r,u.addr,u.port)}catch(_){if(typeof FS>"u"||_.name!=="ErrnoError")throw _;return-_.errno}}___syscall_sendto.sig="iippipp";function ___syscall_socket(e,t,r){try{var n=SOCKFS.createSocket(e,t,r);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,t){e>>>=0,t>>>=0;try{return e=SYSCALLS.getStr(e),SYSCALLS.doStat(FS.stat,e,t)}catch(r){if(typeof FS>"u"||r.name!=="ErrnoError")throw r;return-r.errno}}___syscall_stat64.sig="ipp";function ___syscall_symlink(e,t){e>>>=0,t>>>=0;try{return e=SYSCALLS.getStr(e),t=SYSCALLS.getStr(t),FS.symlink(e,t),0}catch(r){if(typeof FS>"u"||r.name!=="ErrnoError")throw r;return-r.errno}}___syscall_symlink.sig="ipp";function ___syscall_symlinkat(e,t,r){e>>>=0,r>>>=0;try{return r=SYSCALLS.calculateAt(t,r),FS.symlink(e,r),0}catch(n){if(typeof FS>"u"||n.name!=="ErrnoError")throw n;return-n.errno}}___syscall_symlinkat.sig="ipip";function ___syscall_truncate64(e,t,r){e>>>=0;var n=convertI32PairToI53Checked(t,r);try{return isNaN(n)?61:(e=SYSCALLS.getStr(e),FS.truncate(e,n),0)}catch(a){if(typeof FS>"u"||a.name!=="ErrnoError")throw a;return-a.errno}}___syscall_truncate64.sig="ipii";function ___syscall_unlinkat(e,t,r){t>>>=0;try{return t=SYSCALLS.getStr(t),t=SYSCALLS.calculateAt(e,t),r===0?FS.unlink(t):r===512?FS.rmdir(t):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,t,r,n){t>>>=0,r>>>=0;try{t=SYSCALLS.getStr(t),t=SYSCALLS.calculateAt(e,t,!0);var a=Date.now(),l,c;if(!r)l=a,c=a;else{var u=readI53FromI64(r),_=HEAP32[r+8>>>2>>>0];_==1073741823?l=a:_==1073741822?l=-1:l=u*1e3+_/1e6,r+=16,u=readI53FromI64(r),_=HEAP32[r+8>>>2>>>0],_==1073741823?c=a:_==1073741822?c=-1:c=u*1e3+_/1e6}return(c!=-1||l!=-1)&&FS.utime(t,l,c),0}catch(d){if(typeof FS>"u"||d.name!=="ErrnoError")throw d;return-d.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 t=lengthBytesUTF8(e)+1,r=stackAlloc(t);return stringToUTF8(e,r,t),r},stackSave=()=>_emscripten_stack_get_current(),stackRestore=e=>__emscripten_stack_restore(e),dlSetError=e=>{var t=stackSave(),r=stringToUTF8OnStack(e);___dl_seterr(r,0),stackRestore(t)},dlopenInternal=(e,t)=>{var r=UTF8ToString(e+36),n=HEAP32[e+4>>>2>>>0];r=PATH.normalize(r);var a=[],l=!!(n&256),c=l?null:{},u={global:l,nodelete:!!(n&4096),loadAsync:t.loadAsync};if(t.loadAsync)return loadDynamicLibrary(r,u,c,e);try{return loadDynamicLibrary(r,u,c,e)}catch(_){return dlSetError("Could not load dynamic lib: ".concat(r,"\n").concat(_)),0}};function __dlopen_js(e){return e>>>=0,dlopenInternal(e,{loadAsync:!1})}__dlopen_js.sig="pp";function __dlsym_js(e,t,r){e>>>=0,t>>>=0,r>>>=0,t=UTF8ToString(t);var n,a,l=LDSO.loadedLibsByHandle[e];if(!l.exports.hasOwnProperty(t)||l.exports[t].stub)return dlSetError('Tried to lookup unknown symbol "'.concat(t,'" in dynamic lib: ').concat(l.name)),0;a=Object.keys(l.exports).indexOf(t);var c="orig$"+t;if(n=l.exports[c],n?a=Object.keys(l.exports).indexOf(c):n=l.exports[t],typeof n=="function"){var u=getFunctionAddress(n);u?n=u:(n=addFunction(n,n.sig),HEAPU32[r>>>2>>>0]=a)}return n}__dlsym_js.sig="pppp";function __embind_register_bigint(e,t,r,n,a){e>>>=0,t>>>=0,r>>>=0}__embind_register_bigint.sig="vpppiiii";var embind_init_charCodes=()=>{for(var e=new Array(256),t=0;t<256;++t)e[t]=String.fromCharCode(t);embind_charCodes=e},embind_charCodes,readLatin1String=e=>{for(var t="",r=e;HEAPU8[r>>>0];)t+=embind_charCodes[HEAPU8[r++>>>0]];return t},awaitingDependencies={},registeredTypes={},typeDependencies={},BindingError,throwBindingError=e=>{throw new BindingError(e)},InternalError,throwInternalError=e=>{throw new InternalError(e)},whenDependentTypesAreResolved=(e,t,r)=>{e.forEach(u=>typeDependencies[u]=t);function n(u){var _=r(u);_.length!==e.length&&throwInternalError("Mismatched type converter count");for(var d=0;d{registeredTypes.hasOwnProperty(u)?a[_]=registeredTypes[u]:(l.push(u),awaitingDependencies.hasOwnProperty(u)||(awaitingDependencies[u]=[]),awaitingDependencies[u].push(()=>{a[_]=registeredTypes[u],++c,c===l.length&&n(a)}))}),l.length===0&&n(a)};function sharedRegisterType(e,t,r={}){var n=t.name;if(e||throwBindingError('type "'.concat(n,'" must have a positive integer typeid pointer')),registeredTypes.hasOwnProperty(e)){if(r.ignoreDuplicateRegistrations)return;throwBindingError("Cannot register type '".concat(n,"' twice"))}if(registeredTypes[e]=t,delete typeDependencies[e],awaitingDependencies.hasOwnProperty(e)){var a=awaitingDependencies[e];delete awaitingDependencies[e],a.forEach(l=>l())}}function registerType(e,t,r={}){return sharedRegisterType(e,t,r)}var GenericWireTypeSize=8;function __embind_register_bool(e,t,r,n){e>>>=0,t>>>=0,t=readLatin1String(t),registerType(e,{name:t,fromWireType:function(a){return!!a},toWireType:function(a,l){return l?r:n},argPackAdvance:GenericWireTypeSize,readValueFromPointer:function(a){return this.fromWireType(HEAPU8[a>>>0])},destructorFunction:null})}__embind_register_bool.sig="vppii";var emval_freelist=[],emval_handles=[];function __emval_decref(e){e>>>=0,e>9&&--emval_handles[e+1]===0&&(emval_handles[e]=void 0,emval_freelist.push(e))}__emval_decref.sig="vp";var count_emval_handles=()=>emval_handles.length/2-5-emval_freelist.length,init_emval=()=>{emval_handles.push(0,1,void 0,1,null,1,!0,1,!1,1),Module.count_emval_handles=count_emval_handles},Emval={toValue:e=>(e||throwBindingError("Cannot use deleted val. handle = "+e),emval_handles[e]),toHandle:e=>{switch(e){case void 0:return 2;case null:return 4;case!0:return 6;case!1:return 8;default:{let t=emval_freelist.pop()||emval_handles.length;return emval_handles[t]=e,emval_handles[t+1]=1,t}}}};function readPointer(e){return this.fromWireType(HEAPU32[e>>>2>>>0])}var EmValType={name:"emscripten::val",fromWireType:e=>{var t=Emval.toValue(e);return __emval_decref(e),t},toWireType:(e,t)=>Emval.toHandle(t),argPackAdvance:GenericWireTypeSize,readValueFromPointer:readPointer,destructorFunction:null};function __embind_register_emval(e){return e>>>=0,registerType(e,EmValType)}__embind_register_emval.sig="vp";var embindRepr=e=>{if(e===null)return"null";var t=typeof e;return t==="object"||t==="array"||t==="function"?e.toString():""+e},floatReadValueFromPointer=(e,t)=>{switch(t){case 4:return function(r){return this.fromWireType(HEAPF32[r>>>2>>>0])};case 8:return function(r){return this.fromWireType(HEAPF64[r>>>3>>>0])};default:throw new TypeError("invalid float width (".concat(t,"): ").concat(e))}},__embind_register_float=function(e,t,r){e>>>=0,t>>>=0,r>>>=0,t=readLatin1String(t),registerType(e,{name:t,fromWireType:n=>n,toWireType:(n,a)=>a,argPackAdvance:GenericWireTypeSize,readValueFromPointer:floatReadValueFromPointer(t,r),destructorFunction:null})};__embind_register_float.sig="vppp";var integerReadValueFromPointer=(e,t,r)=>{switch(t){case 1:return r?n=>HEAP8[n>>>0]:n=>HEAPU8[n>>>0];case 2:return r?n=>HEAP16[n>>>1>>>0]:n=>HEAPU16[n>>>1>>>0];case 4:return r?n=>HEAP32[n>>>2>>>0]:n=>HEAPU32[n>>>2>>>0];default:throw new TypeError("invalid integer width (".concat(t,"): ").concat(e))}};function __embind_register_integer(e,t,r,n,a){e>>>=0,t>>>=0,r>>>=0,t=readLatin1String(t),a===-1&&(a=4294967295);var l=f=>f;if(n===0){var c=32-8*r;l=f=>f<>>c}var u=t.includes("unsigned"),_=(f,p)=>{},d;u?d=function(f,p){return _(p,this.name),p>>>0}:d=function(f,p){return _(p,this.name),p},registerType(e,{name:t,fromWireType:l,toWireType:d,argPackAdvance:GenericWireTypeSize,readValueFromPointer:integerReadValueFromPointer(t,r,n!==0),destructorFunction:null})}__embind_register_integer.sig="vpppii";function __embind_register_memory_view(e,t,r){e>>>=0,r>>>=0;var n=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],a=n[t];function l(c){var u=HEAPU32[c>>>2>>>0],_=HEAPU32[c+4>>>2>>>0];return new a(HEAP8.buffer,_,u)}r=readLatin1String(r),registerType(e,{name:r,fromWireType:l,argPackAdvance:GenericWireTypeSize,readValueFromPointer:l},{ignoreDuplicateRegistrations:!0})}__embind_register_memory_view.sig="vpip";function __embind_register_std_string(e,t){e>>>=0,t>>>=0,t=readLatin1String(t);var r=t==="std::string";registerType(e,{name:t,fromWireType(n){var a=HEAPU32[n>>>2>>>0],l=n+4,c;if(r)for(var u=l,_=0;_<=a;++_){var d=l+_;if(_==a||HEAPU8[d>>>0]==0){var f=d-u,p=UTF8ToString(u,f);c===void 0?c=p:(c+="\0",c+=p),u=d+1}}else{for(var m=new Array(a),_=0;_>>0]);c=m.join("")}return _free(n),c},toWireType(n,a){a instanceof ArrayBuffer&&(a=new Uint8Array(a));var l,c=typeof a=="string";c||a instanceof Uint8Array||a instanceof Uint8ClampedArray||a instanceof Int8Array||throwBindingError("Cannot pass non-string to std::string"),r&&c?l=lengthBytesUTF8(a):l=a.length;var u=_malloc(4+l+1),_=u+4;if(HEAPU32[u>>>2>>>0]=l,r&&c)stringToUTF8(a,_,l+1);else if(c)for(var d=0;d255&&(_free(_),throwBindingError("String has UTF-16 code units that do not fit in 8 bits")),HEAPU8[_+d>>>0]=f}else for(var d=0;d>>0]=a[d];return n!==null&&n.push(_free,u),u},argPackAdvance:GenericWireTypeSize,readValueFromPointer:readPointer,destructorFunction(n){_free(n)}})}__embind_register_std_string.sig="vpp";var UTF16Decoder=typeof TextDecoder<"u"?new TextDecoder("utf-16le"):void 0,UTF16ToString=(e,t)=>{for(var r=e,n=r>>1,a=n+t/2;!(n>=a)&&HEAPU16[n>>>0];)++n;if(r=n<<1,r-e>32&&UTF16Decoder)return UTF16Decoder.decode(HEAPU8.subarray(e>>>0,r>>>0));for(var l="",c=0;!(c>=t/2);++c){var u=HEAP16[e+c*2>>>1>>>0];if(u==0)break;l+=String.fromCharCode(u)}return l},stringToUTF16=(e,t,r)=>{if(r!=null||(r=2147483647),r<2)return 0;r-=2;for(var n=t,a=r>>1>>>0]=c,t+=2}return HEAP16[t>>>1>>>0]=0,t-n},lengthBytesUTF16=e=>e.length*2,UTF32ToString=(e,t)=>{for(var r=0,n="";!(r>=t/4);){var a=HEAP32[e+r*4>>>2>>>0];if(a==0)break;if(++r,a>=65536){var l=a-65536;n+=String.fromCharCode(55296|l>>10,56320|l&1023)}else n+=String.fromCharCode(a)}return n},stringToUTF32=(e,t,r)=>{if(t>>>=0,r!=null||(r=2147483647),r<4)return 0;for(var n=t,a=n+r-4,l=0;l=55296&&c<=57343){var u=e.charCodeAt(++l);c=65536+((c&1023)<<10)|u&1023}if(HEAP32[t>>>2>>>0]=c,t+=4,t+4>a)break}return HEAP32[t>>>2>>>0]=0,t-n},lengthBytesUTF32=e=>{for(var t=0,r=0;r=55296&&n<=57343&&++r,t+=4}return t},__embind_register_std_wstring=function(e,t,r){e>>>=0,t>>>=0,r>>>=0,r=readLatin1String(r);var n,a,l,c;t===2?(n=UTF16ToString,a=stringToUTF16,c=lengthBytesUTF16,l=u=>HEAPU16[u>>>1>>>0]):t===4&&(n=UTF32ToString,a=stringToUTF32,c=lengthBytesUTF32,l=u=>HEAPU32[u>>>2>>>0]),registerType(e,{name:r,fromWireType:u=>{for(var _=HEAPU32[u>>>2>>>0],d,f=u+4,p=0;p<=_;++p){var m=u+4+p*t;if(p==_||l(m)==0){var g=m-f,h=n(f,g);d===void 0?d=h:(d+="\0",d+=h),f=m+t}}return _free(u),d},toWireType:(u,_)=>{typeof _!="string"&&throwBindingError("Cannot pass non-string to C++ string type ".concat(r));var d=c(_),f=_malloc(4+d+t);return HEAPU32[f>>>2>>>0]=d/t,a(_,f+4,d+t),u!==null&&u.push(_free,f),f},argPackAdvance:GenericWireTypeSize,readValueFromPointer:readPointer,destructorFunction(u){_free(u)}})};__embind_register_std_wstring.sig="vppp";var __embind_register_void=function(e,t){e>>>=0,t>>>=0,t=readLatin1String(t),registerType(e,{isVoid:!0,name:t,argPackAdvance:0,fromWireType:()=>{},toWireType:(r,n)=>{}})};__embind_register_void.sig="vpp";var handleException=e=>{if(e instanceof ExitStatus||e=="unwind")return EXITSTATUS;quit_(1,e)},runtimeKeepaliveCounter=0,keepRuntimeAlive=()=>noExitRuntime||runtimeKeepaliveCounter>0,_proc_exit=e=>{var t;EXITSTATUS=e,keepRuntimeAlive()||((t=Module.onExit)==null||t.call(Module,e),ABORT=!0),quit_(e,new ExitStatus(e))};_proc_exit.sig="vi";var exitJS=(e,t)=>{EXITSTATUS=e,_proc_exit(e)},_exit=exitJS;_exit.sig="vi";var maybeExit=()=>{if(!keepRuntimeAlive())try{_exit(EXITSTATUS)}catch(e){handleException(e)}},callUserCallback=e=>{if(!ABORT)try{e(),maybeExit()}catch(t){handleException(t)}};function __emscripten_dlopen_js(e,t,r,n){e>>>=0,t>>>=0,r>>>=0,n>>>=0;function a(u){var _=UTF8ToString(e+36);dlSetError("'Could not load dynamic lib: ".concat(_,"\n").concat(u)),callUserCallback(()=>getWasmTableEntry(r)(e,n))}function l(){callUserCallback(()=>getWasmTableEntry(t)(e,n))}var c=dlopenInternal(e,{loadAsync:!0});c?c.then(l,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,t){e>>>=0,stringToUTF8(getExecutableName(),e,t)}__emscripten_get_progname.sig="vpi";function __emscripten_lookup_name(e){e>>>=0;var t=UTF8ToString(e);return inetPton4(DNS.lookup_name(t))}__emscripten_lookup_name.sig="ip";function __emscripten_memcpy_js(e,t,r){return e>>>=0,t>>>=0,r>>>=0,HEAPU8.copyWithin(e>>>0,t>>>0,t+r>>>0)}__emscripten_memcpy_js.sig="vppp";var __emscripten_runtime_keepalive_clear=()=>{noExitRuntime=!1,runtimeKeepaliveCounter=0};__emscripten_runtime_keepalive_clear.sig="v";function __emscripten_set_offscreencanvas_size(e,t,r){return e>>>=0,-1}__emscripten_set_offscreencanvas_size.sig="ipii";function __emscripten_system(e){if(e>>>=0,ENVIRONMENT_IS_NODE){if(!e)return 1;var t=UTF8ToString(e);if(!t.length)return 0;var r=["child_process"].map(Cn),n=r.spawnSync(t,[],{shell:!0,stdio:"inherit"}),a=(c,u)=>c<<8|u;if(n.status===null){var l=c=>{switch(c){case"SIGHUP":return 1;case"SIGQUIT":return 3;case"SIGFPE":return 8;case"SIGKILL":return 9;case"SIGALRM":return 14;case"SIGTERM":return 15;default:return 2}};return a(0,l(n.signal))}return a(n.status,0)}return e?-52:0}__emscripten_system.sig="ip";function __gmtime_js(e,t,r){var n=convertI32PairToI53Checked(e,t);r>>>=0;var a=new Date(n*1e3);HEAP32[r>>>2>>>0]=a.getUTCSeconds(),HEAP32[r+4>>>2>>>0]=a.getUTCMinutes(),HEAP32[r+8>>>2>>>0]=a.getUTCHours(),HEAP32[r+12>>>2>>>0]=a.getUTCDate(),HEAP32[r+16>>>2>>>0]=a.getUTCMonth(),HEAP32[r+20>>>2>>>0]=a.getUTCFullYear()-1900,HEAP32[r+24>>>2>>>0]=a.getUTCDay();var l=Date.UTC(a.getUTCFullYear(),0,1,0,0,0,0),c=(a.getTime()-l)/(1e3*60*60*24)|0;HEAP32[r+28>>>2>>>0]=c}__gmtime_js.sig="viip";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 t=isLeapYear(e.getFullYear()),r=t?MONTH_DAYS_LEAP_CUMULATIVE:MONTH_DAYS_REGULAR_CUMULATIVE,n=r[e.getMonth()]+e.getDate()-1;return n};function __localtime_js(e,t,r){var n=convertI32PairToI53Checked(e,t);r>>>=0;var a=new Date(n*1e3);HEAP32[r>>>2>>>0]=a.getSeconds(),HEAP32[r+4>>>2>>>0]=a.getMinutes(),HEAP32[r+8>>>2>>>0]=a.getHours(),HEAP32[r+12>>>2>>>0]=a.getDate(),HEAP32[r+16>>>2>>>0]=a.getMonth(),HEAP32[r+20>>>2>>>0]=a.getFullYear()-1900,HEAP32[r+24>>>2>>>0]=a.getDay();var l=ydayFromDate(a)|0;HEAP32[r+28>>>2>>>0]=l,HEAP32[r+36>>>2>>>0]=-(a.getTimezoneOffset()*60);var c=new Date(a.getFullYear(),0,1),u=new Date(a.getFullYear(),6,1).getTimezoneOffset(),_=c.getTimezoneOffset(),d=(u!=_&&a.getTimezoneOffset()==Math.min(_,u))|0;HEAP32[r+32>>>2>>>0]=d}__localtime_js.sig="viip";var setTempRet0=e=>__emscripten_tempret_set(e),_setTempRet0=setTempRet0;Module._setTempRet0=_setTempRet0;var __mktime_js=function(e){e>>>=0;var t=(()=>{var r=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=r.getTimezoneOffset(),l=new Date(r.getFullYear(),0,1),c=new Date(r.getFullYear(),6,1).getTimezoneOffset(),u=l.getTimezoneOffset(),_=Math.min(u,c);if(n<0)HEAP32[e+32>>>2>>>0]=+(c!=u&&_==a);else if(n>0!=(_==a)){var d=Math.max(u,c),f=n>0?_:d;r.setTime(r.getTime()+(f-a)*6e4)}HEAP32[e+24>>>2>>>0]=r.getDay();var p=ydayFromDate(r)|0;HEAP32[e+28>>>2>>>0]=p,HEAP32[e>>>2>>>0]=r.getSeconds(),HEAP32[e+4>>>2>>>0]=r.getMinutes(),HEAP32[e+8>>>2>>>0]=r.getHours(),HEAP32[e+12>>>2>>>0]=r.getDate(),HEAP32[e+16>>>2>>>0]=r.getMonth(),HEAP32[e+20>>>2>>>0]=r.getYear();var m=r.getTime();return isNaN(m)?-1:m/1e3})();return setTempRet0((tempDouble=t,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)),t>>>0};__mktime_js.sig="ip";function __mmap_js(e,t,r,n,a,l,c,u){e>>>=0;var _=convertI32PairToI53Checked(a,l);c>>>=0,u>>>=0;try{if(isNaN(_))return 61;var d=SYSCALLS.getStreamFromFD(n),f=FS.mmap(d,e,_,t,r),p=f.ptr;return HEAP32[c>>>2>>>0]=f.allocated,HEAPU32[u>>>2>>>0]=p,0}catch(m){if(typeof FS>"u"||m.name!=="ErrnoError")throw m;return-m.errno}}__mmap_js.sig="ipiiiiipp";function __msync_js(e,t,r,n,a,l,c){e>>>=0,t>>>=0;var u=convertI32PairToI53Checked(l,c);try{return isNaN(u)?61:(SYSCALLS.doMsync(e,SYSCALLS.getStreamFromFD(a),t,n,u),0)}catch(_){if(typeof FS>"u"||_.name!=="ErrnoError")throw _;return-_.errno}}__msync_js.sig="ippiiiii";function __munmap_js(e,t,r,n,a,l,c){e>>>=0,t>>>=0;var u=convertI32PairToI53Checked(l,c);try{var _=SYSCALLS.getStreamFromFD(a);r&2&&SYSCALLS.doMsync(e,_,t,n,u)}catch(d){if(typeof FS>"u"||d.name!=="ErrnoError")throw d;return-d.errno}}__munmap_js.sig="ippiiiii";var timers={},_emscripten_get_now=()=>performance.now();_emscripten_get_now.sig="d";var __setitimer_js=(e,t)=>{if(timers[e]&&(clearTimeout(timers[e].id),delete timers[e]),!t)return 0;var r=setTimeout(()=>{delete timers[e],callUserCallback(()=>__emscripten_timeout(e,_emscripten_get_now()))},t);return timers[e]={id:r,timeout_ms:t},0};__setitimer_js.sig="iid";var __timegm_js=function(e){e>>>=0;var t=(()=>{var r=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(r);HEAP32[e+24>>>2>>>0]=n.getUTCDay();var a=Date.UTC(n.getUTCFullYear(),0,1,0,0,0,0),l=(n.getTime()-a)/(1e3*60*60*24)|0;return HEAP32[e+28>>>2>>>0]=l,n.getTime()/1e3})();return setTempRet0((tempDouble=t,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)),t>>>0};__timegm_js.sig="ip";var __tzset_js=function(e,t,r,n){e>>>=0,t>>>=0,r>>>=0,n>>>=0;var a=new Date().getFullYear(),l=new Date(a,0,1),c=new Date(a,6,1),u=l.getTimezoneOffset(),_=c.getTimezoneOffset(),d=Math.max(u,_);HEAPU32[e>>>2>>>0]=d*60,HEAP32[t>>>2>>>0]=+(u!=_);var f=g=>{var h=g>=0?"-":"+",b=Math.abs(g),y=String(Math.floor(b/60)).padStart(2,"0"),A=String(b%60).padStart(2,"0");return"UTC".concat(h).concat(y).concat(A)},p=f(u),m=f(_);_{if(MainLoop.timingMode=e,MainLoop.timingValue=t,!MainLoop.func)return 1;if(MainLoop.running||(MainLoop.running=!0),e==0)MainLoop.scheduler=function(){var c=Math.max(0,MainLoop.tickStartTime+t-_emscripten_get_now())|0;setTimeout(MainLoop.runner,c)},MainLoop.method="timeout";else if(e==1)MainLoop.scheduler=function(){MainLoop.requestAnimationFrame(MainLoop.runner)},MainLoop.method="rAF";else if(e==2){if(typeof MainLoop.setImmediate>"u")if(typeof setImmediate>"u"){var r=[],n="setimmediate",a=l=>{(l.data===n||l.data.target===n)&&(l.stopPropagation(),r.shift()())};addEventListener("message",a,!0),MainLoop.setImmediate=l=>{var c;r.push(l),ENVIRONMENT_IS_WORKER?((c=Module.setImmediates)!=null||(Module.setImmediates=[]),Module.setImmediates.push(l),postMessage({target:n})):postMessage(n,"*")}}else MainLoop.setImmediate=setImmediate;MainLoop.scheduler=function(){MainLoop.setImmediate(MainLoop.runner)},MainLoop.method="immediate"}return 0};_emscripten_set_main_loop_timing.sig="iii";var setMainLoop=(e,t,r,n,a)=>{MainLoop.func=e,MainLoop.arg=n;var l=MainLoop.currentlyRunningMainloop;function c(){return l0){var _=Date.now(),d=MainLoop.queue.shift();if(d.func(d.arg),MainLoop.remainingBlockers){var f=MainLoop.remainingBlockers,p=f%1==0?f-1:Math.floor(f);d.counted?MainLoop.remainingBlockers=p:(p=p+.5,MainLoop.remainingBlockers=(8*f+p)/9)}if(MainLoop.updateStatus(),!c())return;setTimeout(MainLoop.runner,0);return}if(c()){if(MainLoop.currentFrameNumber=MainLoop.currentFrameNumber+1|0,MainLoop.timingMode==1&&MainLoop.timingValue>1&&MainLoop.currentFrameNumber%MainLoop.timingValue!=0){MainLoop.scheduler();return}else MainLoop.timingMode==0&&(MainLoop.tickStartTime=_emscripten_get_now());MainLoop.runIter(e),c()&&MainLoop.scheduler()}}},a||(t&&t>0?_emscripten_set_main_loop_timing(0,1e3/t):_emscripten_set_main_loop_timing(1,1),MainLoop.scheduler()),r)throw"unwind"},MainLoop={running:!1,scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],preMainLoop:[],postMainLoop:[],pause(){MainLoop.scheduler=null,MainLoop.currentlyRunningMainloop++},resume(){MainLoop.currentlyRunningMainloop++;var e=MainLoop.timingMode,t=MainLoop.timingValue,r=MainLoop.func;MainLoop.func=null,setMainLoop(r,0,!1,MainLoop.arg,!0),_emscripten_set_main_loop_timing(e,t),MainLoop.scheduler()},updateStatus(){var n,a;if(Module.setStatus){var e=Module.statusMessage||"Please wait...",t=(n=MainLoop.remainingBlockers)!=null?n:0,r=(a=MainLoop.expectedBlockers)!=null?a:0;t?t=MainLoop.nextRAF;)MainLoop.nextRAF+=1e3/60;var r=Math.max(MainLoop.nextRAF-t,0);setTimeout(e,r)},requestAnimationFrame(e){if(typeof requestAnimationFrame=="function"){requestAnimationFrame(e);return}var t=MainLoop.fakeRequestAnimationFrame;t(e)}},AL={QUEUE_INTERVAL:25,QUEUE_LOOKAHEAD:.1,DEVICE_NAME:"Emscripten OpenAL",CAPTURE_DEVICE_NAME:"Emscripten OpenAL capture",ALC_EXTENSIONS:{ALC_SOFT_pause_device:!0,ALC_SOFT_HRTF:!0},AL_EXTENSIONS:{AL_EXT_float32:!0,AL_SOFT_loop_points:!0,AL_SOFT_source_length:!0,AL_EXT_source_distance_model:!0,AL_SOFT_source_spatialize:!0},_alcErr:0,alcErr:0,deviceRefCounts:{},alcStringCache:{},paused:!1,stringCache:{},contexts:{},currentCtx:null,buffers:{0:{id:0,refCount:0,audioBuf:null,frequency:0,bytesPerSample:2,channels:1,length:0}},paramArray:[],_nextId:1,newId:()=>AL.freeIds.length>0?AL.freeIds.pop():AL._nextId++,freeIds:[],scheduleContextAudio:e=>{if(!(MainLoop.timingMode===1&&document.visibilityState!="visible"))for(var t in e.sources)AL.scheduleSourceAudio(e.sources[t])},scheduleSourceAudio:(e,t)=>{if(!(MainLoop.timingMode===1&&document.visibilityState!="visible")&&e.state===4114){for(var r=AL.updateSourceTime(e),n=e.bufStartTime,a=e.bufOffset,l=e.bufsProcessed,c=0;c=e.bufQueue.length)if(e.looping)l%=e.bufQueue.length;else break;var f=e.bufQueue[l%e.bufQueue.length];if(f.length===0){if(d++,d===e.bufQueue.length)break}else{var u=e.context.audioCtx.createBufferSource();u.buffer=f.audioBuf,u.playbackRate.value=e.playbackRate,(f.audioBuf._loopStart||f.audioBuf._loopEnd)&&(u.loopStart=f.audioBuf._loopStart,u.loopEnd=f.audioBuf._loopEnd);var p=0;e.type===4136&&e.looping?(p=Number.POSITIVE_INFINITY,u.loop=!0,f.audioBuf._loopStart&&(u.loopStart=f.audioBuf._loopStart),f.audioBuf._loopEnd&&(u.loopEnd=f.audioBuf._loopEnd)):p=(f.audioBuf.duration-a)/e.playbackRate,u._startOffset=a,u._duration=p,u._skipCount=d,d=0,u.connect(e.gain),typeof u.start<"u"?(n=Math.max(n,e.context.audioCtx.currentTime),u.start(n,a)):typeof u.noteOn<"u"&&(n=Math.max(n,e.context.audioCtx.currentTime),u.noteOn(n)),u._startTime=n,e.audioQueue.push(u),n+=p}a=0,l++}}},updateSourceTime:e=>{var t=e.context.audioCtx.currentTime;if(e.state!==4114)return t;isFinite(e.bufStartTime)||(e.bufStartTime=t-e.bufOffset/e.playbackRate,e.bufOffset=0);for(var r=0;e.audioQueue.length;){var n=e.audioQueue[0];if(e.bufsProcessed+=n._skipCount,r=n._startTime+n._duration,t=e.bufQueue.length&&!e.looping)AL.setSourceState(e,4116);else if(e.type===4136&&e.looping){var a=e.bufQueue[0];if(a.length===0)e.bufOffset=0;else{var l=(t-e.bufStartTime)*e.playbackRate,c=a.audioBuf._loopStart||0,u=a.audioBuf._loopEnd||a.audioBuf.duration;u<=c&&(u=a.audioBuf.duration),l0&&(e.bufStartTime+=Math.floor((t-e.bufStartTime)/_)*_)}for(var d=0;d=e.bufQueue.length)if(e.looping)e.bufsProcessed%=e.bufQueue.length;else{AL.setSourceState(e,4116);break}var a=e.bufQueue[e.bufsProcessed];if(a.length>0){if(r=e.bufStartTime+a.audioBuf.duration/e.playbackRate,t{AL.updateSourceTime(e);for(var t=1;t1&&(e.audioQueue.length=1)},stopSourceAudio:e=>{for(var t=0;t{t===4114?((e.state===4114||e.state==4116)&&(e.bufsProcessed=0,e.bufOffset=0),AL.stopSourceAudio(e),e.state=4114,e.bufStartTime=Number.NEGATIVE_INFINITY,AL.scheduleSourceAudio(e)):t===4115?e.state===4114&&(AL.updateSourceTime(e),AL.stopSourceAudio(e),e.state=4115):t===4116?e.state!==4113&&(e.state=4116,e.bufsProcessed=e.bufQueue.length,e.bufStartTime=Number.NEGATIVE_INFINITY,e.bufOffset=0,AL.stopSourceAudio(e)):t===4113&&e.state!==4113&&(e.state=4113,e.bufsProcessed=0,e.bufStartTime=Number.NEGATIVE_INFINITY,e.bufOffset=0,AL.stopSourceAudio(e))},initSourcePanner:e=>{if(e.type!==4144){for(var t=AL.buffers[0],r=0;r{for(var t in e.sources)AL.updateSourceGlobal(e.sources[t])},updateSourceGlobal:e=>{var t=e.panner;if(t){t.refDistance=e.refDistance,t.maxDistance=e.maxDistance,t.rolloffFactor=e.rolloffFactor,t.panningModel=e.context.hrtf?"HRTF":"equalpower";var r=e.context.sourceDistanceModel?e.distanceModel:e.context.distanceModel;switch(r){case 0:t.distanceModel="inverse",t.refDistance=340282e33;break;case 53249:case 53250:t.distanceModel="inverse";break;case 53251:case 53252:t.distanceModel="linear";break;case 53253:case 53254:t.distanceModel="exponential";break}}},updateListenerSpace:e=>{var t=e.audioCtx.listener;t.positionX?(t.positionX.value=e.listener.position[0],t.positionY.value=e.listener.position[1],t.positionZ.value=e.listener.position[2]):t.setPosition(e.listener.position[0],e.listener.position[1],e.listener.position[2]),t.forwardX?(t.forwardX.value=e.listener.direction[0],t.forwardY.value=e.listener.direction[1],t.forwardZ.value=e.listener.direction[2],t.upX.value=e.listener.up[0],t.upY.value=e.listener.up[1],t.upZ.value=e.listener.up[2]):t.setOrientation(e.listener.direction[0],e.listener.direction[1],e.listener.direction[2],e.listener.up[0],e.listener.up[1],e.listener.up[2]);for(var r in e.sources)AL.updateSourceSpace(e.sources[r])},updateSourceSpace:e=>{if(e.panner){var t=e.panner,r=e.position[0],n=e.position[1],a=e.position[2],l=e.direction[0],c=e.direction[1],u=e.direction[2],_=e.context.listener,d=_.position[0],f=_.position[1],p=_.position[2];if(e.relative){var m=-_.direction[0],g=-_.direction[1],h=-_.direction[2],b=_.up[0],y=_.up[1],A=_.up[2],F=(Po,Co,Io)=>{var Mo=Math.sqrt(Po*Po+Co*Co+Io*Io);return Mo{if(e.state===4114){AL.cancelPendingSourceAudio(e);var t=e.audioQueue[0];if(!t)return;var r;e.type===4136&&e.looping?r=Number.POSITIVE_INFINITY:r=(t.buffer.duration-t._startOffset)/e.playbackRate,t._duration=r,t.playbackRate.value=e.playbackRate,AL.scheduleSourceAudio(e)}},sourceDuration:e=>{for(var t=0,r=0;r{AL.updateSourceTime(e);for(var t=0,r=0;r{var r=e.state==4114;if(r&&AL.setSourceState(e,4113),e.bufQueue[e.bufsProcessed].audioBuf!==null){for(e.bufsProcessed=0;t>e.bufQueue[e.bufsProcessed].audioBuf.duration;)t-=e.bufQueue[e.bufsProcessed].audioBuf.duration,e.bufsProcessed++;e.bufOffset=t}r&&AL.setSourceState(e,4114)},getGlobalParam:(e,t)=>{if(!AL.currentCtx)return null;switch(t){case 49152:return AL.currentCtx.dopplerFactor;case 49155:return AL.currentCtx.speedOfSound;case 53248:return AL.currentCtx.distanceModel;default:return AL.currentCtx.err=40962,null}},setGlobalParam:(e,t,r)=>{if(AL.currentCtx)switch(t){case 49152:if(!Number.isFinite(r)||r<0){AL.currentCtx.err=40963;return}AL.currentCtx.dopplerFactor=r,AL.updateListenerSpace(AL.currentCtx);break;case 49155:if(!Number.isFinite(r)||r<=0){AL.currentCtx.err=40963;return}AL.currentCtx.speedOfSound=r,AL.updateListenerSpace(AL.currentCtx);break;case 53248:switch(r){case 0:case 53249:case 53250:case 53251:case 53252:case 53253:case 53254:AL.currentCtx.distanceModel=r,AL.updateContextGlobal(AL.currentCtx);break;default:AL.currentCtx.err=40963;return}break;default:AL.currentCtx.err=40962;return}},getListenerParam:(e,t)=>{if(!AL.currentCtx)return null;switch(t){case 4100:return AL.currentCtx.listener.position;case 4102:return AL.currentCtx.listener.velocity;case 4111:return AL.currentCtx.listener.direction.concat(AL.currentCtx.listener.up);case 4106:return AL.currentCtx.gain.gain.value;default:return AL.currentCtx.err=40962,null}},setListenerParam:(e,t,r)=>{if(AL.currentCtx){if(r===null){AL.currentCtx.err=40962;return}var n=AL.currentCtx.listener;switch(t){case 4100:if(!Number.isFinite(r[0])||!Number.isFinite(r[1])||!Number.isFinite(r[2])){AL.currentCtx.err=40963;return}n.position[0]=r[0],n.position[1]=r[1],n.position[2]=r[2],AL.updateListenerSpace(AL.currentCtx);break;case 4102:if(!Number.isFinite(r[0])||!Number.isFinite(r[1])||!Number.isFinite(r[2])){AL.currentCtx.err=40963;return}n.velocity[0]=r[0],n.velocity[1]=r[1],n.velocity[2]=r[2],AL.updateListenerSpace(AL.currentCtx);break;case 4106:if(!Number.isFinite(r)||r<0){AL.currentCtx.err=40963;return}AL.currentCtx.gain.gain.value=r;break;case 4111:if(!Number.isFinite(r[0])||!Number.isFinite(r[1])||!Number.isFinite(r[2])||!Number.isFinite(r[3])||!Number.isFinite(r[4])||!Number.isFinite(r[5])){AL.currentCtx.err=40963;return}n.direction[0]=r[0],n.direction[1]=r[1],n.direction[2]=r[2],n.up[0]=r[3],n.up[1]=r[4],n.up[2]=r[5],AL.updateListenerSpace(AL.currentCtx);break;default:AL.currentCtx.err=40962;return}}},getBufferParam:(e,t,r)=>{if(AL.currentCtx){var n=AL.buffers[t];if(!n||t===0){AL.currentCtx.err=40961;return}switch(r){case 8193:return n.frequency;case 8194:return n.bytesPerSample*8;case 8195:return n.channels;case 8196:return n.length*n.bytesPerSample*n.channels;case 8213:return n.length===0?[0,0]:[(n.audioBuf._loopStart||0)*n.frequency,(n.audioBuf._loopEnd||n.length)*n.frequency];default:return AL.currentCtx.err=40962,null}}},setBufferParam:(e,t,r,n)=>{if(AL.currentCtx){var a=AL.buffers[t];if(!a||t===0){AL.currentCtx.err=40961;return}if(n===null){AL.currentCtx.err=40962;return}switch(r){case 8196:if(n!==0){AL.currentCtx.err=40963;return}break;case 8213:if(n[0]<0||n[0]>a.length||n[1]<0||n[1]>a.Length||n[0]>=n[1]){AL.currentCtx.err=40963;return}if(a.refCount>0){AL.currentCtx.err=40964;return}a.audioBuf&&(a.audioBuf._loopStart=n[0]/a.frequency,a.audioBuf._loopEnd=n[1]/a.frequency);break;default:AL.currentCtx.err=40962;return}}},getSourceParam:(e,t,r)=>{if(!AL.currentCtx)return null;var n=AL.currentCtx.sources[t];if(!n)return AL.currentCtx.err=40961,null;switch(r){case 514:return n.relative;case 4097:return n.coneInnerAngle;case 4098:return n.coneOuterAngle;case 4099:return n.pitch;case 4100:return n.position;case 4101:return n.direction;case 4102:return n.velocity;case 4103:return n.looping;case 4105:return n.type===4136?n.bufQueue[0].id:0;case 4106:return n.gain.gain.value;case 4109:return n.minGain;case 4110:return n.maxGain;case 4112:return n.state;case 4117:return n.bufQueue.length===1&&n.bufQueue[0].id===0?0:n.bufQueue.length;case 4118:return n.bufQueue.length===1&&n.bufQueue[0].id===0||n.looping?0:n.bufsProcessed;case 4128:return n.refDistance;case 4129:return n.rolloffFactor;case 4130:return n.coneOuterGain;case 4131:return n.maxDistance;case 4132:return AL.sourceTell(n);case 4133:var a=AL.sourceTell(n);return a>0&&(a*=n.bufQueue[0].frequency),a;case 4134:var a=AL.sourceTell(n);return a>0&&(a*=n.bufQueue[0].frequency*n.bufQueue[0].bytesPerSample),a;case 4135:return n.type;case 4628:return n.spatialize;case 8201:for(var u=0,l=0,c=0;c{if(AL.currentCtx){var a=AL.currentCtx.sources[t];if(!a){AL.currentCtx.err=40961;return}if(n===null){AL.currentCtx.err=40962;return}switch(r){case 514:if(n===1)a.relative=!0,AL.updateSourceSpace(a);else if(n===0)a.relative=!1,AL.updateSourceSpace(a);else{AL.currentCtx.err=40963;return}break;case 4097:if(!Number.isFinite(n)){AL.currentCtx.err=40963;return}a.coneInnerAngle=n,a.panner&&(a.panner.coneInnerAngle=n%360);break;case 4098:if(!Number.isFinite(n)){AL.currentCtx.err=40963;return}a.coneOuterAngle=n,a.panner&&(a.panner.coneOuterAngle=n%360);break;case 4099:if(!Number.isFinite(n)||n<=0){AL.currentCtx.err=40963;return}if(a.pitch===n)break;a.pitch=n,AL.updateSourceRate(a);break;case 4100:if(!Number.isFinite(n[0])||!Number.isFinite(n[1])||!Number.isFinite(n[2])){AL.currentCtx.err=40963;return}a.position[0]=n[0],a.position[1]=n[1],a.position[2]=n[2],AL.updateSourceSpace(a);break;case 4101:if(!Number.isFinite(n[0])||!Number.isFinite(n[1])||!Number.isFinite(n[2])){AL.currentCtx.err=40963;return}a.direction[0]=n[0],a.direction[1]=n[1],a.direction[2]=n[2],AL.updateSourceSpace(a);break;case 4102:if(!Number.isFinite(n[0])||!Number.isFinite(n[1])||!Number.isFinite(n[2])){AL.currentCtx.err=40963;return}a.velocity[0]=n[0],a.velocity[1]=n[1],a.velocity[2]=n[2],AL.updateSourceSpace(a);break;case 4103:if(n===1){if(a.looping=!0,AL.updateSourceTime(a),a.type===4136&&a.audioQueue.length>0){var l=a.audioQueue[0];l.loop=!0,l._duration=Number.POSITIVE_INFINITY}}else if(n===0){a.looping=!1;var c=AL.updateSourceTime(a);if(a.type===4136&&a.audioQueue.length>0){var l=a.audioQueue[0];l.loop=!1,l._duration=a.bufQueue[0].audioBuf.duration/a.playbackRate,l._startTime=c-a.bufOffset/a.playbackRate}}else{AL.currentCtx.err=40963;return}break;case 4105:if(a.state===4114||a.state===4115){AL.currentCtx.err=40964;return}if(n===0){for(var u in a.bufQueue)a.bufQueue[u].refCount--;a.bufQueue.length=1,a.bufQueue[0]=AL.buffers[0],a.bufsProcessed=0,a.type=4144}else{var _=AL.buffers[n];if(!_){AL.currentCtx.err=40963;return}for(var u in a.bufQueue)a.bufQueue[u].refCount--;a.bufQueue.length=0,_.refCount++,a.bufQueue=[_],a.bufsProcessed=0,a.type=4136}AL.initSourcePanner(a),AL.scheduleSourceAudio(a);break;case 4106:if(!Number.isFinite(n)||n<0){AL.currentCtx.err=40963;return}a.gain.gain.value=n;break;case 4109:if(!Number.isFinite(n)||n<0||n>Math.min(a.maxGain,1)){AL.currentCtx.err=40963;return}a.minGain=n;break;case 4110:if(!Number.isFinite(n)||n1){AL.currentCtx.err=40963;return}a.maxGain=n;break;case 4128:if(!Number.isFinite(n)||n<0){AL.currentCtx.err=40963;return}a.refDistance=n,a.panner&&(a.panner.refDistance=n);break;case 4129:if(!Number.isFinite(n)||n<0){AL.currentCtx.err=40963;return}a.rolloffFactor=n,a.panner&&(a.panner.rolloffFactor=n);break;case 4130:if(!Number.isFinite(n)||n<0||n>1){AL.currentCtx.err=40963;return}a.coneOuterGain=n,a.panner&&(a.panner.coneOuterGain=n);break;case 4131:if(!Number.isFinite(n)||n<0){AL.currentCtx.err=40963;return}a.maxDistance=n,a.panner&&(a.panner.maxDistance=n);break;case 4132:if(n<0||n>AL.sourceDuration(a)){AL.currentCtx.err=40963;return}AL.sourceSeek(a,n);break;case 4133:var p=AL.sourceDuration(a);if(p>0){var d;for(var f in a.bufQueue)if(f){d=a.bufQueue[f].frequency;break}n/=d}if(n<0||n>p){AL.currentCtx.err=40963;return}AL.sourceSeek(a,n);break;case 4134:var p=AL.sourceDuration(a);if(p>0){var m;for(var f in a.bufQueue)if(f){var _=a.bufQueue[f];m=_.frequency*_.bytesPerSample*_.channels;break}n/=m}if(n<0||n>p){AL.currentCtx.err=40963;return}AL.sourceSeek(a,n);break;case 4628:if(n!==0&&n!==1&&n!==2){AL.currentCtx.err=40963;return}a.spatialize=n,AL.initSourcePanner(a);break;case 8201:case 8202:case 8203:AL.currentCtx.err=40964;break;case 53248:switch(n){case 0:case 53249:case 53250:case 53251:case 53252:case 53253:case 53254:a.distanceModel=n,AL.currentCtx.sourceDistanceModel&&AL.updateContextGlobal(AL.currentCtx);break;default:AL.currentCtx.err=40963;return}break;default:AL.currentCtx.err=40962;return}}},captures:{},sharedCaptureAudioCtx:null,requireValidCaptureDevice:(e,t)=>{if(e===0)return AL.alcErr=40961,null;var r=AL.captures[e];if(!r)return AL.alcErr=40961,null;var n=r.mediaStreamError;return n?(AL.alcErr=40961,null):r}},_alBuffer3f=(e,t,r,n,a)=>{AL.setBufferParam("alBuffer3f",e,t,null)};_alBuffer3f.sig="viifff";var _alBuffer3i=(e,t,r,n,a)=>{AL.setBufferParam("alBuffer3i",e,t,null)};_alBuffer3i.sig="viiiii";function _alBufferData(e,t,r,n,a){if(r>>>=0,!!AL.currentCtx){var l=AL.buffers[e];if(!l){AL.currentCtx.err=40963;return}if(a<=0){AL.currentCtx.err=40963;return}var c=null;try{switch(t){case 4352:if(n>0){c=AL.currentCtx.audioCtx.createBuffer(1,n,a);for(var u=c.getChannelData(0),_=0;_>>0]*.0078125-1}l.bytesPerSample=1,l.channels=1,l.length=n;break;case 4353:if(n>0){c=AL.currentCtx.audioCtx.createBuffer(1,n>>1,a);var u=c.getChannelData(0);r>>=1;for(var _=0;_>1;++_)u[_]=HEAP16[r++>>>0]*30517578125e-15}l.bytesPerSample=2,l.channels=1,l.length=n>>1;break;case 4354:if(n>0){c=AL.currentCtx.audioCtx.createBuffer(2,n>>1,a);for(var u=c.getChannelData(0),d=c.getChannelData(1),_=0;_>1;++_)u[_]=HEAPU8[r++>>>0]*.0078125-1,d[_]=HEAPU8[r++>>>0]*.0078125-1}l.bytesPerSample=1,l.channels=2,l.length=n>>1;break;case 4355:if(n>0){c=AL.currentCtx.audioCtx.createBuffer(2,n>>2,a);var u=c.getChannelData(0),d=c.getChannelData(1);r>>=1;for(var _=0;_>2;++_)u[_]=HEAP16[r++>>>0]*30517578125e-15,d[_]=HEAP16[r++>>>0]*30517578125e-15}l.bytesPerSample=2,l.channels=2,l.length=n>>2;break;case 65552:if(n>0){c=AL.currentCtx.audioCtx.createBuffer(1,n>>2,a);var u=c.getChannelData(0);r>>=2;for(var _=0;_>2;++_)u[_]=HEAPF32[r++>>>0]}l.bytesPerSample=4,l.channels=1,l.length=n>>2;break;case 65553:if(n>0){c=AL.currentCtx.audioCtx.createBuffer(2,n>>3,a);var u=c.getChannelData(0),d=c.getChannelData(1);r>>=2;for(var _=0;_>3;++_)u[_]=HEAPF32[r++>>>0],d[_]=HEAPF32[r++>>>0]}l.bytesPerSample=4,l.channels=2,l.length=n>>3;break;default:AL.currentCtx.err=40963;return}l.frequency=a,l.audioBuf=c}catch(f){AL.currentCtx.err=40963;return}}}_alBufferData.sig="viipii";var _alBufferf=(e,t,r)=>{AL.setBufferParam("alBufferf",e,t,null)};_alBufferf.sig="viif";function _alBufferfv(e,t,r){if(r>>>=0,!!AL.currentCtx){if(!r){AL.currentCtx.err=40963;return}AL.setBufferParam("alBufferfv",e,t,null)}}_alBufferfv.sig="viip";var _alBufferi=(e,t,r)=>{AL.setBufferParam("alBufferi",e,t,null)};_alBufferi.sig="viii";function _alBufferiv(e,t,r){if(r>>>=0,!!AL.currentCtx){if(!r){AL.currentCtx.err=40963;return}switch(t){case 8213:AL.paramArray[0]=HEAP32[r>>>2>>>0],AL.paramArray[1]=HEAP32[r+4>>>2>>>0],AL.setBufferParam("alBufferiv",e,t,AL.paramArray);break;default:AL.setBufferParam("alBufferiv",e,t,null);break}}}_alBufferiv.sig="viip";function _alDeleteBuffers(e,t){if(t>>>=0,!!AL.currentCtx){for(var r=0;r>>2>>>0];if(n!==0){if(!AL.buffers[n]){AL.currentCtx.err=40961;return}if(AL.buffers[n].refCount){AL.currentCtx.err=40964;return}}}for(var r=0;r>>2>>>0];n!==0&&(AL.deviceRefCounts[AL.buffers[n].deviceId]--,delete AL.buffers[n],AL.freeIds.push(n))}}}_alDeleteBuffers.sig="vip";var _alSourcei=(e,t,r)=>{switch(t){case 514:case 4097:case 4098:case 4103:case 4105:case 4128:case 4129:case 4131:case 4132:case 4133:case 4134:case 4628:case 8201:case 8202:case 53248:AL.setSourceParam("alSourcei",e,t,r);break;default:AL.setSourceParam("alSourcei",e,t,null);break}};_alSourcei.sig="viii";function _alDeleteSources(e,t){if(t>>>=0,!!AL.currentCtx){for(var r=0;r>>2>>>0];if(!AL.currentCtx.sources[n]){AL.currentCtx.err=40961;return}}for(var r=0;r>>2>>>0];AL.setSourceState(AL.currentCtx.sources[n],4116),_alSourcei(n,4105,0),delete AL.currentCtx.sources[n],AL.freeIds.push(n)}}}_alDeleteSources.sig="vip";var _alDisable=e=>{if(AL.currentCtx)switch(e){case 512:AL.currentCtx.sourceDistanceModel=!1,AL.updateContextGlobal(AL.currentCtx);break;default:AL.currentCtx.err=40962;return}};_alDisable.sig="vi";var _alDistanceModel=e=>{AL.setGlobalParam("alDistanceModel",53248,e)};_alDistanceModel.sig="vi";var _alDopplerFactor=e=>{AL.setGlobalParam("alDopplerFactor",49152,e)};_alDopplerFactor.sig="vf";var _alDopplerVelocity=e=>{if(warnOnce("alDopplerVelocity() is deprecated, and only kept for compatibility with OpenAL 1.0. Use alSpeedOfSound() instead."),!!AL.currentCtx&&e<=0){AL.currentCtx.err=40963;return}};_alDopplerVelocity.sig="vf";var _alEnable=e=>{if(AL.currentCtx)switch(e){case 512:AL.currentCtx.sourceDistanceModel=!0,AL.updateContextGlobal(AL.currentCtx);break;default:AL.currentCtx.err=40962;return}};_alEnable.sig="vi";function _alGenBuffers(e,t){if(t>>>=0,!!AL.currentCtx)for(var r=0;r>>2>>>0]=n.id}}_alGenBuffers.sig="vip";function _alGenSources(e,t){if(t>>>=0,!!AL.currentCtx)for(var r=0;r>>2>>>0]=a.id}}_alGenSources.sig="vip";var _alGetBoolean=e=>{var t=AL.getGlobalParam("alGetBoolean",e);if(t===null)return 0;switch(e){case 49152:case 49155:case 53248:return t!==0?1:0;default:return AL.currentCtx.err=40962,0}};_alGetBoolean.sig="ii";function _alGetBooleanv(e,t){t>>>=0;var r=AL.getGlobalParam("alGetBooleanv",e);if(!(r===null||!t))switch(e){case 49152:case 49155:case 53248:HEAP8[t>>>0]=r;break;default:AL.currentCtx.err=40962;return}}_alGetBooleanv.sig="vip";function _alGetBuffer3f(e,t,r,n,a){r>>>=0,n>>>=0,a>>>=0;var l=AL.getBufferParam("alGetBuffer3f",e,t);if(l!==null){if(!r||!n||!a){AL.currentCtx.err=40963;return}AL.currentCtx.err=40962}}_alGetBuffer3f.sig="viippp";function _alGetBuffer3i(e,t,r,n,a){r>>>=0,n>>>=0,a>>>=0;var l=AL.getBufferParam("alGetBuffer3i",e,t);if(l!==null){if(!r||!n||!a){AL.currentCtx.err=40963;return}AL.currentCtx.err=40962}}_alGetBuffer3i.sig="viippp";function _alGetBufferf(e,t,r){r>>>=0;var n=AL.getBufferParam("alGetBufferf",e,t);if(n!==null){if(!r){AL.currentCtx.err=40963;return}AL.currentCtx.err=40962}}_alGetBufferf.sig="viip";function _alGetBufferfv(e,t,r){r>>>=0;var n=AL.getBufferParam("alGetBufferfv",e,t);if(n!==null){if(!r){AL.currentCtx.err=40963;return}AL.currentCtx.err=40962}}_alGetBufferfv.sig="viip";function _alGetBufferi(e,t,r){r>>>=0;var n=AL.getBufferParam("alGetBufferi",e,t);if(n!==null){if(!r){AL.currentCtx.err=40963;return}switch(t){case 8193:case 8194:case 8195:case 8196:HEAP32[r>>>2>>>0]=n;break;default:AL.currentCtx.err=40962;return}}}_alGetBufferi.sig="viip";function _alGetBufferiv(e,t,r){r>>>=0;var n=AL.getBufferParam("alGetBufferiv",e,t);if(n!==null){if(!r){AL.currentCtx.err=40963;return}switch(t){case 8193:case 8194:case 8195:case 8196:HEAP32[r>>>2>>>0]=n;break;case 8213:HEAP32[r>>>2>>>0]=n[0],HEAP32[r+4>>>2>>>0]=n[1];break;default:AL.currentCtx.err=40962;return}}}_alGetBufferiv.sig="viip";var _alGetDouble=e=>{var t=AL.getGlobalParam("alGetDouble",e);if(t===null)return 0;switch(e){case 49152:case 49155:case 53248:return t;default:return AL.currentCtx.err=40962,0}};_alGetDouble.sig="di";function _alGetDoublev(e,t){t>>>=0;var r=AL.getGlobalParam("alGetDoublev",e);if(!(r===null||!t))switch(e){case 49152:case 49155:case 53248:HEAPF64[t>>>3>>>0]=r;break;default:AL.currentCtx.err=40962;return}}_alGetDoublev.sig="vip";function _alGetEnumValue(e){if(e>>>=0,!AL.currentCtx)return 0;if(!e)return AL.currentCtx.err=40963,0;var t=UTF8ToString(e);switch(t){case"AL_BITS":return 8194;case"AL_BUFFER":return 4105;case"AL_BUFFERS_PROCESSED":return 4118;case"AL_BUFFERS_QUEUED":return 4117;case"AL_BYTE_OFFSET":return 4134;case"AL_CHANNELS":return 8195;case"AL_CONE_INNER_ANGLE":return 4097;case"AL_CONE_OUTER_ANGLE":return 4098;case"AL_CONE_OUTER_GAIN":return 4130;case"AL_DIRECTION":return 4101;case"AL_DISTANCE_MODEL":return 53248;case"AL_DOPPLER_FACTOR":return 49152;case"AL_DOPPLER_VELOCITY":return 49153;case"AL_EXPONENT_DISTANCE":return 53253;case"AL_EXPONENT_DISTANCE_CLAMPED":return 53254;case"AL_EXTENSIONS":return 45060;case"AL_FORMAT_MONO16":return 4353;case"AL_FORMAT_MONO8":return 4352;case"AL_FORMAT_STEREO16":return 4355;case"AL_FORMAT_STEREO8":return 4354;case"AL_FREQUENCY":return 8193;case"AL_GAIN":return 4106;case"AL_INITIAL":return 4113;case"AL_INVALID":return-1;case"AL_ILLEGAL_ENUM":case"AL_INVALID_ENUM":return 40962;case"AL_INVALID_NAME":return 40961;case"AL_ILLEGAL_COMMAND":case"AL_INVALID_OPERATION":return 40964;case"AL_INVALID_VALUE":return 40963;case"AL_INVERSE_DISTANCE":return 53249;case"AL_INVERSE_DISTANCE_CLAMPED":return 53250;case"AL_LINEAR_DISTANCE":return 53251;case"AL_LINEAR_DISTANCE_CLAMPED":return 53252;case"AL_LOOPING":return 4103;case"AL_MAX_DISTANCE":return 4131;case"AL_MAX_GAIN":return 4110;case"AL_MIN_GAIN":return 4109;case"AL_NONE":return 0;case"AL_NO_ERROR":return 0;case"AL_ORIENTATION":return 4111;case"AL_OUT_OF_MEMORY":return 40965;case"AL_PAUSED":return 4115;case"AL_PENDING":return 8209;case"AL_PITCH":return 4099;case"AL_PLAYING":return 4114;case"AL_POSITION":return 4100;case"AL_PROCESSED":return 8210;case"AL_REFERENCE_DISTANCE":return 4128;case"AL_RENDERER":return 45059;case"AL_ROLLOFF_FACTOR":return 4129;case"AL_SAMPLE_OFFSET":return 4133;case"AL_SEC_OFFSET":return 4132;case"AL_SIZE":return 8196;case"AL_SOURCE_RELATIVE":return 514;case"AL_SOURCE_STATE":return 4112;case"AL_SOURCE_TYPE":return 4135;case"AL_SPEED_OF_SOUND":return 49155;case"AL_STATIC":return 4136;case"AL_STOPPED":return 4116;case"AL_STREAMING":return 4137;case"AL_UNDETERMINED":return 4144;case"AL_UNUSED":return 8208;case"AL_VELOCITY":return 4102;case"AL_VENDOR":return 45057;case"AL_VERSION":return 45058;case"AL_AUTO_SOFT":return 2;case"AL_SOURCE_DISTANCE_MODEL":return 512;case"AL_SOURCE_SPATIALIZE_SOFT":return 4628;case"AL_LOOP_POINTS_SOFT":return 8213;case"AL_BYTE_LENGTH_SOFT":return 8201;case"AL_SAMPLE_LENGTH_SOFT":return 8202;case"AL_SEC_LENGTH_SOFT":return 8203;case"AL_FORMAT_MONO_FLOAT32":return 65552;case"AL_FORMAT_STEREO_FLOAT32":return 65553;default:return AL.currentCtx.err=40963,0}}_alGetEnumValue.sig="ip";var _alGetError=()=>{if(!AL.currentCtx)return 40964;var e=AL.currentCtx.err;return AL.currentCtx.err=0,e};_alGetError.sig="i";var _alGetFloat=e=>{var t=AL.getGlobalParam("alGetFloat",e);if(t===null)return 0;switch(e){case 49152:case 49155:case 53248:return t;default:return 0}};_alGetFloat.sig="fi";function _alGetFloatv(e,t){t>>>=0;var r=AL.getGlobalParam("alGetFloatv",e);if(!(r===null||!t))switch(e){case 49152:case 49155:case 53248:HEAPF32[t>>>2>>>0]=r;break;default:AL.currentCtx.err=40962;return}}_alGetFloatv.sig="vip";var _alGetInteger=e=>{var t=AL.getGlobalParam("alGetInteger",e);if(t===null)return 0;switch(e){case 49152:case 49155:case 53248:return t;default:return AL.currentCtx.err=40962,0}};_alGetInteger.sig="ii";function _alGetIntegerv(e,t){t>>>=0;var r=AL.getGlobalParam("alGetIntegerv",e);if(!(r===null||!t))switch(e){case 49152:case 49155:case 53248:HEAP32[t>>>2>>>0]=r;break;default:AL.currentCtx.err=40962;return}}_alGetIntegerv.sig="vip";function _alGetListener3f(e,t,r,n){t>>>=0,r>>>=0,n>>>=0;var a=AL.getListenerParam("alGetListener3f",e);if(a!==null){if(!t||!r||!n){AL.currentCtx.err=40963;return}switch(e){case 4100:case 4102:HEAPF32[t>>>2>>>0]=a[0],HEAPF32[r>>>2>>>0]=a[1],HEAPF32[n>>>2>>>0]=a[2];break;default:AL.currentCtx.err=40962;return}}}_alGetListener3f.sig="vippp";function _alGetListener3i(e,t,r,n){t>>>=0,r>>>=0,n>>>=0;var a=AL.getListenerParam("alGetListener3i",e);if(a!==null){if(!t||!r||!n){AL.currentCtx.err=40963;return}switch(e){case 4100:case 4102:HEAP32[t>>>2>>>0]=a[0],HEAP32[r>>>2>>>0]=a[1],HEAP32[n>>>2>>>0]=a[2];break;default:AL.currentCtx.err=40962;return}}}_alGetListener3i.sig="vippp";function _alGetListenerf(e,t){t>>>=0;var r=AL.getListenerParam("alGetListenerf",e);if(r!==null){if(!t){AL.currentCtx.err=40963;return}switch(e){case 4106:HEAPF32[t>>>2>>>0]=r;break;default:AL.currentCtx.err=40962;return}}}_alGetListenerf.sig="vip";function _alGetListenerfv(e,t){t>>>=0;var r=AL.getListenerParam("alGetListenerfv",e);if(r!==null){if(!t){AL.currentCtx.err=40963;return}switch(e){case 4100:case 4102:HEAPF32[t>>>2>>>0]=r[0],HEAPF32[t+4>>>2>>>0]=r[1],HEAPF32[t+8>>>2>>>0]=r[2];break;case 4111:HEAPF32[t>>>2>>>0]=r[0],HEAPF32[t+4>>>2>>>0]=r[1],HEAPF32[t+8>>>2>>>0]=r[2],HEAPF32[t+12>>>2>>>0]=r[3],HEAPF32[t+16>>>2>>>0]=r[4],HEAPF32[t+20>>>2>>>0]=r[5];break;default:AL.currentCtx.err=40962;return}}}_alGetListenerfv.sig="vip";function _alGetListeneri(e,t){t>>>=0;var r=AL.getListenerParam("alGetListeneri",e);if(r!==null){if(!t){AL.currentCtx.err=40963;return}AL.currentCtx.err=40962}}_alGetListeneri.sig="vip";function _alGetListeneriv(e,t){t>>>=0;var r=AL.getListenerParam("alGetListeneriv",e);if(r!==null){if(!t){AL.currentCtx.err=40963;return}switch(e){case 4100:case 4102:HEAP32[t>>>2>>>0]=r[0],HEAP32[t+4>>>2>>>0]=r[1],HEAP32[t+8>>>2>>>0]=r[2];break;case 4111:HEAP32[t>>>2>>>0]=r[0],HEAP32[t+4>>>2>>>0]=r[1],HEAP32[t+8>>>2>>>0]=r[2],HEAP32[t+12>>>2>>>0]=r[3],HEAP32[t+16>>>2>>>0]=r[4],HEAP32[t+20>>>2>>>0]=r[5];break;default:AL.currentCtx.err=40962;return}}}_alGetListeneriv.sig="vip";function _alGetSource3f(e,t,r,n,a){r>>>=0,n>>>=0,a>>>=0;var l=AL.getSourceParam("alGetSource3f",e,t);if(l!==null){if(!r||!n||!a){AL.currentCtx.err=40963;return}switch(t){case 4100:case 4101:case 4102:HEAPF32[r>>>2>>>0]=l[0],HEAPF32[n>>>2>>>0]=l[1],HEAPF32[a>>>2>>>0]=l[2];break;default:AL.currentCtx.err=40962;return}}}_alGetSource3f.sig="viippp";function _alGetSource3i(e,t,r,n,a){r>>>=0,n>>>=0,a>>>=0;var l=AL.getSourceParam("alGetSource3i",e,t);if(l!==null){if(!r||!n||!a){AL.currentCtx.err=40963;return}switch(t){case 4100:case 4101:case 4102:HEAP32[r>>>2>>>0]=l[0],HEAP32[n>>>2>>>0]=l[1],HEAP32[a>>>2>>>0]=l[2];break;default:AL.currentCtx.err=40962;return}}}_alGetSource3i.sig="viippp";function _alGetSourcef(e,t,r){r>>>=0;var n=AL.getSourceParam("alGetSourcef",e,t);if(n!==null){if(!r){AL.currentCtx.err=40963;return}switch(t){case 4097:case 4098:case 4099:case 4106:case 4109:case 4110:case 4128:case 4129:case 4130:case 4131:case 4132:case 4133:case 4134:case 8203:HEAPF32[r>>>2>>>0]=n;break;default:AL.currentCtx.err=40962;return}}}_alGetSourcef.sig="viip";function _alGetSourcefv(e,t,r){r>>>=0;var n=AL.getSourceParam("alGetSourcefv",e,t);if(n!==null){if(!r){AL.currentCtx.err=40963;return}switch(t){case 4097:case 4098:case 4099:case 4106:case 4109:case 4110:case 4128:case 4129:case 4130:case 4131:case 4132:case 4133:case 4134:case 8203:HEAPF32[r>>>2>>>0]=n[0];break;case 4100:case 4101:case 4102:HEAPF32[r>>>2>>>0]=n[0],HEAPF32[r+4>>>2>>>0]=n[1],HEAPF32[r+8>>>2>>>0]=n[2];break;default:AL.currentCtx.err=40962;return}}}_alGetSourcefv.sig="viip";function _alGetSourcei(e,t,r){r>>>=0;var n=AL.getSourceParam("alGetSourcei",e,t);if(n!==null){if(!r){AL.currentCtx.err=40963;return}switch(t){case 514:case 4097:case 4098:case 4103:case 4105:case 4112:case 4117:case 4118:case 4128:case 4129:case 4131:case 4132:case 4133:case 4134:case 4135:case 4628:case 8201:case 8202:case 53248:HEAP32[r>>>2>>>0]=n;break;default:AL.currentCtx.err=40962;return}}}_alGetSourcei.sig="viip";function _alGetSourceiv(e,t,r){r>>>=0;var n=AL.getSourceParam("alGetSourceiv",e,t);if(n!==null){if(!r){AL.currentCtx.err=40963;return}switch(t){case 514:case 4097:case 4098:case 4103:case 4105:case 4112:case 4117:case 4118:case 4128:case 4129:case 4131:case 4132:case 4133:case 4134:case 4135:case 4628:case 8201:case 8202:case 53248:HEAP32[r>>>2>>>0]=n;break;case 4100:case 4101:case 4102:HEAP32[r>>>2>>>0]=n[0],HEAP32[r+4>>>2>>>0]=n[1],HEAP32[r+8>>>2>>>0]=n[2];break;default:AL.currentCtx.err=40962;return}}}_alGetSourceiv.sig="viip";var stringToNewUTF8=e=>{var t=lengthBytesUTF8(e)+1,r=_malloc(t);return r&&stringToUTF8(e,r,t),r};function _alGetString(e){if(AL.stringCache[e])return AL.stringCache[e];var t;switch(e){case 0:t="No Error";break;case 40961:t="Invalid Name";break;case 40962:t="Invalid Enum";break;case 40963:t="Invalid Value";break;case 40964:t="Invalid Operation";break;case 40965:t="Out of Memory";break;case 45057:t="Emscripten";break;case 45058:t="1.1";break;case 45059:t="WebAudio";break;case 45060:t=Object.keys(AL.AL_EXTENSIONS).join(" ");break;default:return AL.currentCtx&&(AL.currentCtx.err=40962),0}return t=stringToNewUTF8(t),AL.stringCache[e]=t,t}_alGetString.sig="pi";var _alIsBuffer=e=>!(!AL.currentCtx||e>AL.buffers.length||!AL.buffers[e]);_alIsBuffer.sig="ii";var _alIsEnabled=e=>{if(!AL.currentCtx)return 0;switch(e){case 512:return AL.currentCtx.sourceDistanceModel?0:1;default:return AL.currentCtx.err=40962,0}};_alIsEnabled.sig="ii";function _alIsExtensionPresent(e){e>>>=0;var t=UTF8ToString(e);return AL.AL_EXTENSIONS[t]?1:0}_alIsExtensionPresent.sig="ip";var _alIsSource=e=>!(!AL.currentCtx||!AL.currentCtx.sources[e]);_alIsSource.sig="ii";var _alListener3f=(e,t,r,n)=>{switch(e){case 4100:case 4102:AL.paramArray[0]=t,AL.paramArray[1]=r,AL.paramArray[2]=n,AL.setListenerParam("alListener3f",e,AL.paramArray);break;default:AL.setListenerParam("alListener3f",e,null);break}};_alListener3f.sig="vifff";var _alListener3i=(e,t,r,n)=>{switch(e){case 4100:case 4102:AL.paramArray[0]=t,AL.paramArray[1]=r,AL.paramArray[2]=n,AL.setListenerParam("alListener3i",e,AL.paramArray);break;default:AL.setListenerParam("alListener3i",e,null);break}};_alListener3i.sig="viiii";var _alListenerf=(e,t)=>{switch(e){case 4106:AL.setListenerParam("alListenerf",e,t);break;default:AL.setListenerParam("alListenerf",e,null);break}};_alListenerf.sig="vif";function _alListenerfv(e,t){if(t>>>=0,!!AL.currentCtx){if(!t){AL.currentCtx.err=40963;return}switch(e){case 4100:case 4102:AL.paramArray[0]=HEAPF32[t>>>2>>>0],AL.paramArray[1]=HEAPF32[t+4>>>2>>>0],AL.paramArray[2]=HEAPF32[t+8>>>2>>>0],AL.setListenerParam("alListenerfv",e,AL.paramArray);break;case 4111:AL.paramArray[0]=HEAPF32[t>>>2>>>0],AL.paramArray[1]=HEAPF32[t+4>>>2>>>0],AL.paramArray[2]=HEAPF32[t+8>>>2>>>0],AL.paramArray[3]=HEAPF32[t+12>>>2>>>0],AL.paramArray[4]=HEAPF32[t+16>>>2>>>0],AL.paramArray[5]=HEAPF32[t+20>>>2>>>0],AL.setListenerParam("alListenerfv",e,AL.paramArray);break;default:AL.setListenerParam("alListenerfv",e,null);break}}}_alListenerfv.sig="vip";var _alListeneri=(e,t)=>{AL.setListenerParam("alListeneri",e,null)};_alListeneri.sig="vii";function _alListeneriv(e,t){if(t>>>=0,!!AL.currentCtx){if(!t){AL.currentCtx.err=40963;return}switch(e){case 4100:case 4102:AL.paramArray[0]=HEAP32[t>>>2>>>0],AL.paramArray[1]=HEAP32[t+4>>>2>>>0],AL.paramArray[2]=HEAP32[t+8>>>2>>>0],AL.setListenerParam("alListeneriv",e,AL.paramArray);break;case 4111:AL.paramArray[0]=HEAP32[t>>>2>>>0],AL.paramArray[1]=HEAP32[t+4>>>2>>>0],AL.paramArray[2]=HEAP32[t+8>>>2>>>0],AL.paramArray[3]=HEAP32[t+12>>>2>>>0],AL.paramArray[4]=HEAP32[t+16>>>2>>>0],AL.paramArray[5]=HEAP32[t+20>>>2>>>0],AL.setListenerParam("alListeneriv",e,AL.paramArray);break;default:AL.setListenerParam("alListeneriv",e,null);break}}}_alListeneriv.sig="vip";var _alSource3f=(e,t,r,n,a)=>{switch(t){case 4100:case 4101:case 4102:AL.paramArray[0]=r,AL.paramArray[1]=n,AL.paramArray[2]=a,AL.setSourceParam("alSource3f",e,t,AL.paramArray);break;default:AL.setSourceParam("alSource3f",e,t,null);break}};_alSource3f.sig="viifff";var _alSource3i=(e,t,r,n,a)=>{switch(t){case 4100:case 4101:case 4102:AL.paramArray[0]=r,AL.paramArray[1]=n,AL.paramArray[2]=a,AL.setSourceParam("alSource3i",e,t,AL.paramArray);break;default:AL.setSourceParam("alSource3i",e,t,null);break}};_alSource3i.sig="viiiii";var _alSourcePause=e=>{if(AL.currentCtx){var t=AL.currentCtx.sources[e];if(!t){AL.currentCtx.err=40961;return}AL.setSourceState(t,4115)}};_alSourcePause.sig="vi";function _alSourcePausev(e,t){if(t>>>=0,!!AL.currentCtx){t||(AL.currentCtx.err=40963);for(var r=0;r>>2>>>0]]){AL.currentCtx.err=40961;return}for(var r=0;r>>2>>>0];AL.setSourceState(AL.currentCtx.sources[n],4115)}}}_alSourcePausev.sig="vip";var _alSourcePlay=e=>{if(AL.currentCtx){var t=AL.currentCtx.sources[e];if(!t){AL.currentCtx.err=40961;return}AL.setSourceState(t,4114)}};_alSourcePlay.sig="vi";function _alSourcePlayv(e,t){if(t>>>=0,!!AL.currentCtx){t||(AL.currentCtx.err=40963);for(var r=0;r>>2>>>0]]){AL.currentCtx.err=40961;return}for(var r=0;r>>2>>>0];AL.setSourceState(AL.currentCtx.sources[n],4114)}}}_alSourcePlayv.sig="vip";function _alSourceQueueBuffers(e,t,r){if(r>>>=0,!!AL.currentCtx){var n=AL.currentCtx.sources[e];if(!n){AL.currentCtx.err=40961;return}if(n.type===4136){AL.currentCtx.err=40964;return}if(t!==0){for(var a=AL.buffers[0],l=0;l>>2>>>0],u=AL.buffers[c];if(!u){AL.currentCtx.err=40961;return}a.id!==0&&(u.frequency!==a.frequency||u.bytesPerSample!==a.bytesPerSample||u.channels!==a.channels)&&(AL.currentCtx.err=40964)}n.bufQueue.length===1&&n.bufQueue[0].id===0&&(n.bufQueue.length=0),n.type=4137;for(var l=0;l>>2>>>0],u=AL.buffers[c];u.refCount++,n.bufQueue.push(u)}n.looping&&AL.cancelPendingSourceAudio(n),AL.initSourcePanner(n),AL.scheduleSourceAudio(n)}}}_alSourceQueueBuffers.sig="viip";var _alSourceRewind=e=>{if(AL.currentCtx){var t=AL.currentCtx.sources[e];if(!t){AL.currentCtx.err=40961;return}AL.setSourceState(t,4116),AL.setSourceState(t,4113)}};_alSourceRewind.sig="vi";function _alSourceRewindv(e,t){if(t>>>=0,!!AL.currentCtx){t||(AL.currentCtx.err=40963);for(var r=0;r>>2>>>0]]){AL.currentCtx.err=40961;return}for(var r=0;r>>2>>>0];AL.setSourceState(AL.currentCtx.sources[n],4113)}}}_alSourceRewindv.sig="vip";var _alSourceStop=e=>{if(AL.currentCtx){var t=AL.currentCtx.sources[e];if(!t){AL.currentCtx.err=40961;return}AL.setSourceState(t,4116)}};_alSourceStop.sig="vi";function _alSourceStopv(e,t){if(t>>>=0,!!AL.currentCtx){t||(AL.currentCtx.err=40963);for(var r=0;r>>2>>>0]]){AL.currentCtx.err=40961;return}for(var r=0;r>>2>>>0];AL.setSourceState(AL.currentCtx.sources[n],4116)}}}_alSourceStopv.sig="vip";function _alSourceUnqueueBuffers(e,t,r){if(r>>>=0,!!AL.currentCtx){var n=AL.currentCtx.sources[e];if(!n){AL.currentCtx.err=40961;return}if(t>(n.bufQueue.length===1&&n.bufQueue[0].id===0?0:n.bufsProcessed)){AL.currentCtx.err=40963;return}if(t!==0){for(var a=0;a>>2>>>0]=l.id,n.bufsProcessed--}n.bufQueue.length===0&&n.bufQueue.push(AL.buffers[0]),AL.initSourcePanner(n),AL.scheduleSourceAudio(n)}}}_alSourceUnqueueBuffers.sig="viip";var _alSourcef=(e,t,r)=>{switch(t){case 4097:case 4098:case 4099:case 4106:case 4109:case 4110:case 4128:case 4129:case 4130:case 4131:case 4132:case 4133:case 4134:case 8203:AL.setSourceParam("alSourcef",e,t,r);break;default:AL.setSourceParam("alSourcef",e,t,null);break}};_alSourcef.sig="viif";function _alSourcefv(e,t,r){if(r>>>=0,!!AL.currentCtx){if(!r){AL.currentCtx.err=40963;return}switch(t){case 4097:case 4098:case 4099:case 4106:case 4109:case 4110:case 4128:case 4129:case 4130:case 4131:case 4132:case 4133:case 4134:case 8203:var n=HEAPF32[r>>>2>>>0];AL.setSourceParam("alSourcefv",e,t,n);break;case 4100:case 4101:case 4102:AL.paramArray[0]=HEAPF32[r>>>2>>>0],AL.paramArray[1]=HEAPF32[r+4>>>2>>>0],AL.paramArray[2]=HEAPF32[r+8>>>2>>>0],AL.setSourceParam("alSourcefv",e,t,AL.paramArray);break;default:AL.setSourceParam("alSourcefv",e,t,null);break}}}_alSourcefv.sig="viip";function _alSourceiv(e,t,r){if(r>>>=0,!!AL.currentCtx){if(!r){AL.currentCtx.err=40963;return}switch(t){case 514:case 4097:case 4098:case 4103:case 4105:case 4128:case 4129:case 4131:case 4132:case 4133:case 4134:case 4628:case 8201:case 8202:case 53248:var n=HEAP32[r>>>2>>>0];AL.setSourceParam("alSourceiv",e,t,n);break;case 4100:case 4101:case 4102:AL.paramArray[0]=HEAP32[r>>>2>>>0],AL.paramArray[1]=HEAP32[r+4>>>2>>>0],AL.paramArray[2]=HEAP32[r+8>>>2>>>0],AL.setSourceParam("alSourceiv",e,t,AL.paramArray);break;default:AL.setSourceParam("alSourceiv",e,t,null);break}}}_alSourceiv.sig="viip";var _alSpeedOfSound=e=>{AL.setGlobalParam("alSpeedOfSound",49155,e)};_alSpeedOfSound.sig="vf";var _alcCaptureCloseDevice=function(e){var r,n,a,l;e>>>=0;var t=AL.requireValidCaptureDevice(e,"alcCaptureCloseDevice");return t?(delete AL.captures[e],AL.freeIds.push(e),(r=t.mediaStreamSourceNode)==null||r.disconnect(),(n=t.mergerNode)==null||n.disconnect(),(a=t.splitterNode)==null||a.disconnect(),(l=t.scriptProcessorNode)==null||l.disconnect(),t.mediaStream&&t.mediaStream.getTracks().forEach(c=>c.stop()),delete t.buffers,t.capturedFrameCount=0,t.isCapturing=!1,!0):!1};_alcCaptureCloseDevice.sig="ip";var listenOnce=(e,t,r)=>{e.addEventListener(t,r,{once:!0})},autoResumeAudioContext=(e,t)=>{t||(t=[document,document.getElementById("canvas")]),["keydown","mousedown","touchstart"].forEach(r=>{t.forEach(n=>{n&&listenOnce(n,r,()=>{e.state==="suspended"&&e.resume()})})})};function _alcCaptureOpenDevice(e,t,r,n){var C;e>>>=0;var a=AL.CAPTURE_DEVICE_NAME;if(e!==0&&(a=UTF8ToString(e),a!==AL.CAPTURE_DEVICE_NAME))return AL.alcErr=40965,0;if(n<0)return AL.alcErr=40964,0;navigator.getUserMedia=navigator.getUserMedia||navigator.webkitGetUserMedia||navigator.mozGetUserMedia||navigator.msGetUserMedia;var l=navigator.getUserMedia||navigator.mediaDevices&&navigator.mediaDevices.getUserMedia;if(!l)return AL.alcErr=40965,0;var c=window.AudioContext||window.webkitAudioContext;if(!AL.sharedCaptureAudioCtx)try{AL.sharedCaptureAudioCtx=new c}catch(x){return AL.alcErr=40965,0}autoResumeAudioContext(AL.sharedCaptureAudioCtx);var u;switch(r){case 65552:case 4353:case 4352:u=1;break;case 65553:case 4355:case 4354:u=2;break;default:return AL.alcErr=40964,0}function _(x){return new Float32Array(x)}function d(x){return new Int16Array(x)}function f(x){return new Uint8Array(x)}var p,m;switch(r){case 65552:case 65553:p="f32",m=_;break;case 4353:case 4355:p="i16",m=d;break;case 4352:case 4354:p="u8",m=f;break}var g=[];try{for(var h=0;h{b.mediaStreamError=x},A=x=>{b.mediaStreamSourceNode=b.audioCtx.createMediaStreamSource(x),b.mediaStream=x;var S=1;switch(b.mediaStreamSourceNode.channelCountMode){case"max":S=u;break;case"clamped-max":S=Math.min(u,b.mediaStreamSourceNode.channelCount);break;case"explicit":S=b.mediaStreamSourceNode.channelCount;break}b.inputChannelCount=S;var T=512;b.scriptProcessorNode=b.audioCtx.createScriptProcessor(T,S,u),S>u?(b.mergerNode=b.audioCtx.createChannelMerger(S),b.mediaStreamSourceNode.connect(b.mergerNode),b.mergerNode.connect(b.scriptProcessorNode)):S{if(b.isCapturing){var w=b,P=E.inputBuffer;switch(r){case 65552:for(var D=P.getChannelData(0),L=0;L>>=0,t>>>=0;var n=AL.requireValidCaptureDevice(e,"alcCaptureSamples");if(!n)return;var a=n.requestedSampleRate,l=n.audioCtx.sampleRate,c=l/a;if(r<0||r>n.capturedFrameCount/c){AL.alcErr=40964;return}function u(C,x){HEAPF32[t+4*C>>>2>>>0]=x}function _(C,x){HEAP16[t+2*C>>>1>>>0]=x}function d(C,x){HEAP8[t+C>>>0]=x}var f;switch(n.requestedSampleType){case"f32":f=u;break;case"i16":f=_;break;case"u8":f=d;break;default:return}if(Math.floor(c)==c)for(var p=0,m=0;m>>=0;var t=AL.requireValidCaptureDevice(e,"alcCaptureStart");t&&(t.isCapturing||(t.isCapturing=!0,t.capturedFrameCount=0,t.capturePlayhead=0))}_alcCaptureStart.sig="vp";function _alcCaptureStop(e){e>>>=0;var t=AL.requireValidCaptureDevice(e,"alcCaptureStop");t&&(t.isCapturing=!1)}_alcCaptureStop.sig="vp";function _alcCloseDevice(e){return e>>>=0,!(e in AL.deviceRefCounts)||AL.deviceRefCounts[e]>0?0:(delete AL.deviceRefCounts[e],AL.freeIds.push(e),1)}_alcCloseDevice.sig="ip";function _alcCreateContext(e,t){if(e>>>=0,t>>>=0,!(e in AL.deviceRefCounts))return AL.alcErr=40961,0;var r=null,n=[],a=null;if(t>>=2,t)for(var l=0,c=0;l=HEAP32[t++>>>0],n.push(l),l!==0;)switch(c=HEAP32[t++>>>0],n.push(c),l){case 4103:r||(r={}),r.sampleRate=c;break;case 4112:case 4113:break;case 6546:switch(c){case 0:a=!1;break;case 1:a=!0;break;case 2:break;default:return AL.alcErr=40964,0}break;case 6550:if(c!==0)return AL.alcErr=40964,0;break;default:return AL.alcErr=40964,0}var u=window.AudioContext||window.webkitAudioContext,_=null;try{r?_=new u(r):_=new u}catch(g){return g.name==="NotSupportedError"?AL.alcErr=40964:AL.alcErr=40961,0}autoResumeAudioContext(_),typeof _.createGain>"u"&&(_.createGain=_.createGainNode);var d=_.createGain();d.connect(_.destination);var f={deviceId:e,id:AL.newId(),attrs:n,audioCtx:_,listener:{position:[0,0,0],velocity:[0,0,0],direction:[0,0,0],up:[0,0,0]},sources:[],interval:setInterval(()=>AL.scheduleContextAudio(f),AL.QUEUE_INTERVAL),gain:d,distanceModel:53250,speedOfSound:343.3,dopplerFactor:1,sourceDistanceModel:!1,hrtf:a||!1,_err:0,get err(){return this._err},set err(g){(this._err===0||g===0)&&(this._err=g)}};if(AL.deviceRefCounts[e]++,AL.contexts[f.id]=f,a!==null)for(var p in AL.contexts){var m=AL.contexts[p];m.deviceId===e&&(m.hrtf=a,AL.updateContextGlobal(m))}return f.id}_alcCreateContext.sig="ppp";function _alcDestroyContext(e){e>>>=0;var t=AL.contexts[e];if(AL.currentCtx===t){AL.alcErr=40962;return}AL.contexts[e].interval&&clearInterval(AL.contexts[e].interval),AL.deviceRefCounts[t.deviceId]--,delete AL.contexts[e],AL.freeIds.push(e)}_alcDestroyContext.sig="vp";function _alcGetContextsDevice(e){return e>>>=0,e in AL.contexts?AL.contexts[e].deviceId:0}_alcGetContextsDevice.sig="pp";function _alcGetCurrentContext(){return AL.currentCtx!==null?AL.currentCtx.id:0}_alcGetCurrentContext.sig="p";function _alcGetEnumValue(e,t){if(e>>>=0,t>>>=0,e!==0&&!(e in AL.deviceRefCounts))return 0;if(!t)return AL.alcErr=40964,0;var r=UTF8ToString(t);switch(r){case"ALC_NO_ERROR":return 0;case"ALC_INVALID_DEVICE":return 40961;case"ALC_INVALID_CONTEXT":return 40962;case"ALC_INVALID_ENUM":return 40963;case"ALC_INVALID_VALUE":return 40964;case"ALC_OUT_OF_MEMORY":return 40965;case"ALC_MAJOR_VERSION":return 4096;case"ALC_MINOR_VERSION":return 4097;case"ALC_ATTRIBUTES_SIZE":return 4098;case"ALC_ALL_ATTRIBUTES":return 4099;case"ALC_DEFAULT_DEVICE_SPECIFIER":return 4100;case"ALC_DEVICE_SPECIFIER":return 4101;case"ALC_EXTENSIONS":return 4102;case"ALC_FREQUENCY":return 4103;case"ALC_REFRESH":return 4104;case"ALC_SYNC":return 4105;case"ALC_MONO_SOURCES":return 4112;case"ALC_STEREO_SOURCES":return 4113;case"ALC_CAPTURE_DEVICE_SPECIFIER":return 784;case"ALC_CAPTURE_DEFAULT_DEVICE_SPECIFIER":return 785;case"ALC_CAPTURE_SAMPLES":return 786;case"ALC_HRTF_SOFT":return 6546;case"ALC_HRTF_ID_SOFT":return 6550;case"ALC_DONT_CARE_SOFT":return 2;case"ALC_HRTF_STATUS_SOFT":return 6547;case"ALC_NUM_HRTF_SPECIFIERS_SOFT":return 6548;case"ALC_HRTF_SPECIFIER_SOFT":return 6549;case"ALC_HRTF_DISABLED_SOFT":return 0;case"ALC_HRTF_ENABLED_SOFT":return 1;case"ALC_HRTF_DENIED_SOFT":return 2;case"ALC_HRTF_REQUIRED_SOFT":return 3;case"ALC_HRTF_HEADPHONES_DETECTED_SOFT":return 4;case"ALC_HRTF_UNSUPPORTED_FORMAT_SOFT":return 5;default:return AL.alcErr=40964,0}}_alcGetEnumValue.sig="ipp";function _alcGetError(e){e>>>=0;var t=AL.alcErr;return AL.alcErr=0,t}_alcGetError.sig="ip";function _alcGetIntegerv(e,t,r,n){if(e>>>=0,n>>>=0,!(r===0||!n))switch(t){case 4096:HEAP32[n>>>2>>>0]=1;break;case 4097:HEAP32[n>>>2>>>0]=1;break;case 4098:if(!(e in AL.deviceRefCounts)){AL.alcErr=40961;return}if(!AL.currentCtx){AL.alcErr=40962;return}HEAP32[n>>>2>>>0]=AL.currentCtx.attrs.length;break;case 4099:if(!(e in AL.deviceRefCounts)){AL.alcErr=40961;return}if(!AL.currentCtx){AL.alcErr=40962;return}for(var a=0;a>>2>>>0]=AL.currentCtx.attrs[a];break;case 4103:if(!(e in AL.deviceRefCounts)){AL.alcErr=40961;return}if(!AL.currentCtx){AL.alcErr=40962;return}HEAP32[n>>>2>>>0]=AL.currentCtx.audioCtx.sampleRate;break;case 4112:case 4113:if(!(e in AL.deviceRefCounts)){AL.alcErr=40961;return}if(!AL.currentCtx){AL.alcErr=40962;return}HEAP32[n>>>2>>>0]=2147483647;break;case 6546:case 6547:if(!(e in AL.deviceRefCounts)){AL.alcErr=40961;return}var l=0;for(var c in AL.contexts){var u=AL.contexts[c];u.deviceId===e&&(l=u.hrtf?1:0)}HEAP32[n>>>2>>>0]=l;break;case 6548:if(!(e in AL.deviceRefCounts)){AL.alcErr=40961;return}HEAP32[n>>>2>>>0]=1;break;case 131075:if(!(e in AL.deviceRefCounts)){AL.alcErr=40961;return}if(!AL.currentCtx){AL.alcErr=40962;return}HEAP32[n>>>2>>>0]=1;case 786:var _=AL.requireValidCaptureDevice(e,"alcGetIntegerv");if(!_)return;var d=_.capturedFrameCount,f=_.requestedSampleRate,p=_.audioCtx.sampleRate,m=Math.floor(d*(f/p));HEAP32[n>>>2>>>0]=m;break;default:AL.alcErr=40963;return}}_alcGetIntegerv.sig="vpiip";function _alcGetString(e,t){if(e>>>=0,AL.alcStringCache[t])return AL.alcStringCache[t];var r;switch(t){case 0:r="No Error";break;case 40961:r="Invalid Device";break;case 40962:r="Invalid Context";break;case 40963:r="Invalid Enum";break;case 40964:r="Invalid Value";break;case 40965:r="Out of Memory";break;case 4100:if(typeof AudioContext<"u"||typeof webkitAudioContext<"u")r=AL.DEVICE_NAME;else return 0;break;case 4101:typeof AudioContext<"u"||typeof webkitAudioContext<"u"?r=AL.DEVICE_NAME+"\0":r="\0";break;case 785:r=AL.CAPTURE_DEVICE_NAME;break;case 784:if(e===0)r=AL.CAPTURE_DEVICE_NAME+"\0";else{var n=AL.requireValidCaptureDevice(e,"alcGetString");if(!n)return 0;r=n.deviceName}break;case 4102:if(!e)return AL.alcErr=40961,0;r=Object.keys(AL.ALC_EXTENSIONS).join(" ");break;default:return AL.alcErr=40963,0}return r=stringToNewUTF8(r),AL.alcStringCache[t]=r,r}_alcGetString.sig="ppi";function _alcIsExtensionPresent(e,t){e>>>=0,t>>>=0;var r=UTF8ToString(t);return AL.ALC_EXTENSIONS[r]?1:0}_alcIsExtensionPresent.sig="ipp";function _alcMakeContextCurrent(e){return e>>>=0,e===0?AL.currentCtx=null:AL.currentCtx=AL.contexts[e],1}_alcMakeContextCurrent.sig="ip";function _alcOpenDevice(e){if(e>>>=0,e){var t=UTF8ToString(e);if(t!==AL.DEVICE_NAME)return 0}if(typeof AudioContext<"u"||typeof webkitAudioContext<"u"){var r=AL.newId();return AL.deviceRefCounts[r]=0,r}return 0}_alcOpenDevice.sig="pp";function _alcProcessContext(e){e>>>=0}_alcProcessContext.sig="vp";function _alcSuspendContext(e){e>>>=0}_alcSuspendContext.sig="vp";function _duckdb_web_fs_directory_create(e,t){return e>>>=0,globalThis.DUCKDB_RUNTIME.createDirectory(Module,e,t)}_duckdb_web_fs_directory_create.sig="vpi";function _duckdb_web_fs_directory_exists(e,t){return e>>>=0,globalThis.DUCKDB_RUNTIME.checkDirectory(Module,e,t)}_duckdb_web_fs_directory_exists.sig="ipi";function _duckdb_web_fs_directory_list_files(e,t){return e>>>=0,globalThis.DUCKDB_RUNTIME.listDirectoryEntries(Module,e,t)}_duckdb_web_fs_directory_list_files.sig="ipi";function _duckdb_web_fs_directory_remove(e,t){return e>>>=0,globalThis.DUCKDB_RUNTIME.removeDirectory(Module,e,t)}_duckdb_web_fs_directory_remove.sig="vpi";function _duckdb_web_fs_file_close(e){return globalThis.DUCKDB_RUNTIME.closeFile(Module,e)}_duckdb_web_fs_file_close.sig="vi";function _duckdb_web_fs_file_drop_file(e,t){return e>>>=0,globalThis.DUCKDB_RUNTIME.dropFile(Module,e,t)}_duckdb_web_fs_file_drop_file.sig="vpi";function _duckdb_web_fs_file_exists(e,t){return e>>>=0,globalThis.DUCKDB_RUNTIME.checkFile(Module,e,t)}_duckdb_web_fs_file_exists.sig="ipi";function _duckdb_web_fs_file_get_last_modified_time(e){return globalThis.DUCKDB_RUNTIME.getLastFileModificationTime(Module,e)}_duckdb_web_fs_file_get_last_modified_time.sig="ii";function _duckdb_web_fs_file_move(e,t,r,n){return e>>>=0,r>>>=0,globalThis.DUCKDB_RUNTIME.moveFile(Module,e,t,r,n)}_duckdb_web_fs_file_move.sig="vpipi";function _duckdb_web_fs_file_open(e,t){return globalThis.DUCKDB_RUNTIME.openFile(Module,e,t)}_duckdb_web_fs_file_open.sig="pii";function _duckdb_web_fs_file_read(e,t,r,n){return t>>>=0,globalThis.DUCKDB_RUNTIME.readFile(Module,e,t,r,n)}_duckdb_web_fs_file_read.sig="iipid";function _duckdb_web_fs_file_truncate(e,t){return globalThis.DUCKDB_RUNTIME.truncateFile(Module,e,t)}_duckdb_web_fs_file_truncate.sig="vid";function _duckdb_web_fs_file_write(e,t,r,n){return t>>>=0,globalThis.DUCKDB_RUNTIME.writeFile(Module,e,t,r,n)}_duckdb_web_fs_file_write.sig="iipid";function _duckdb_web_fs_get_default_data_protocol(e){return globalThis.DUCKDB_RUNTIME.getDefaultDataProtocol(e)}_duckdb_web_fs_get_default_data_protocol.sig="i";function _duckdb_web_fs_glob(e,t){return e>>>=0,globalThis.DUCKDB_RUNTIME.glob(Module,e,t)}_duckdb_web_fs_glob.sig="vpi";function _duckdb_web_test_platform_feature(e){return globalThis.DUCKDB_RUNTIME.testPlatformFeature(Module,e)}_duckdb_web_test_platform_feature.sig="ii";function _duckdb_web_udf_scalar_call(e,t,r,n,a,l){return e>>>=0,r>>>=0,a>>>=0,globalThis.DUCKDB_RUNTIME.callScalarUDF(Module,e,t,r,n,a,l)}_duckdb_web_udf_scalar_call.sig="vpipipi";var _emscripten_alcDevicePauseSOFT=e=>{if(!(e in AL.deviceRefCounts)){AL.alcErr=40961;return}if(!AL.paused){AL.paused=!0;for(var t in AL.contexts){var r=AL.contexts[t];r.deviceId===e&&(r.audioCtx.suspend(),clearInterval(r.interval),r.interval=null)}}};_emscripten_alcDevicePauseSOFT.sig="vi";var _emscripten_alcDeviceResumeSOFT=e=>{if(!(e in AL.deviceRefCounts)){AL.alcErr=40961;return}if(AL.paused){AL.paused=!1;for(var t in AL.contexts){var r=AL.contexts[t];r.deviceId===e&&(r.interval=setInterval(()=>AL.scheduleContextAudio(r),AL.QUEUE_INTERVAL),r.audioCtx.resume())}}};_emscripten_alcDeviceResumeSOFT.sig="vi";var _emscripten_alcGetStringiSOFT=(e,t,r)=>{if(!(e in AL.deviceRefCounts))return AL.alcErr=40961,0;if(AL.alcStringCache[t])return AL.alcStringCache[t];var n;switch(t){case 6549:if(r===0)n="Web Audio HRTF";else return AL.alcErr=40964,0;break;default:return r!==0?(AL.alcErr=40963,0):_alcGetString(e,t)}return n=stringToNewUTF8(n),AL.alcStringCache[t]=n,n};_emscripten_alcGetStringiSOFT.sig="iiii";var _emscripten_alcResetDeviceSOFT=(e,t)=>{if(!(e in AL.deviceRefCounts))return AL.alcErr=40961,0;var r=null;if(t>>=2,t)for(var n=0,a=0;n=HEAP32[t++>>>0],n!==0;)switch(a=HEAP32[t++>>>0],n){case 6546:a===1?r=!0:a===0&&(r=!1);break}if(r!==null)for(var l in AL.contexts){var c=AL.contexts[l];c.deviceId===e&&(c.hrtf=r,AL.updateContextGlobal(c))}return 1};_emscripten_alcResetDeviceSOFT.sig="iii";var readEmAsmArgsArray=[],readEmAsmArgs=(e,t)=>{readEmAsmArgsArray.length=0;for(var r;r=HEAPU8[e++>>>0];){var n=r!=105;n&=r!=112,t+=n&&t%8?4:0,readEmAsmArgsArray.push(r==112?HEAPU32[t>>>2>>>0]:r==105?HEAP32[t>>>2>>>0]:HEAPF64[t>>>3>>>0]),t+=n?8:4}return readEmAsmArgsArray},runEmAsmFunction=(e,t,r)=>{var n=readEmAsmArgs(t,r);return ASM_CONSTS[e](...n)};function _emscripten_asm_const_int(e,t,r){return e>>>=0,t>>>=0,r>>>=0,runEmAsmFunction(e,t,r)}_emscripten_asm_const_int.sig="ippp";function _emscripten_asm_const_ptr(e,t,r){return e>>>=0,t>>>=0,r>>>=0,runEmAsmFunction(e,t,r)}_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=()=>ENVIRONMENT_IS_NODE?1:1e3;_emscripten_get_now_res.sig="d";var GLctx,webgl_enable_ANGLE_instanced_arrays=e=>{var t=e.getExtension("ANGLE_instanced_arrays");if(t)return e.vertexAttribDivisor=(r,n)=>t.vertexAttribDivisorANGLE(r,n),e.drawArraysInstanced=(r,n,a,l)=>t.drawArraysInstancedANGLE(r,n,a,l),e.drawElementsInstanced=(r,n,a,l,c)=>t.drawElementsInstancedANGLE(r,n,a,l,c),1},webgl_enable_OES_vertex_array_object=e=>{var t=e.getExtension("OES_vertex_array_object");if(t)return e.createVertexArray=()=>t.createVertexArrayOES(),e.deleteVertexArray=r=>t.deleteVertexArrayOES(r),e.bindVertexArray=r=>t.bindVertexArrayOES(r),e.isVertexArray=r=>t.isVertexArrayOES(r),1},webgl_enable_WEBGL_draw_buffers=e=>{var t=e.getExtension("WEBGL_draw_buffers");if(t)return e.drawBuffers=(r,n)=>t.drawBuffersWEBGL(r,n),1},webgl_enable_EXT_polygon_offset_clamp=e=>!!(e.extPolygonOffsetClamp=e.getExtension("EXT_polygon_offset_clamp")),webgl_enable_EXT_clip_control=e=>!!(e.extClipControl=e.getExtension("EXT_clip_control")),webgl_enable_WEBGL_polygon_mode=e=>!!(e.webglPolygonMode=e.getExtension("WEBGL_polygon_mode")),webgl_enable_WEBGL_multi_draw=e=>!!(e.multiDrawWebgl=e.getExtension("WEBGL_multi_draw")),getEmscriptenSupportedExtensions=e=>{var t=["ANGLE_instanced_arrays","EXT_blend_minmax","EXT_disjoint_timer_query","EXT_frag_depth","EXT_shader_texture_lod","EXT_sRGB","OES_element_index_uint","OES_fbo_render_mipmap","OES_standard_derivatives","OES_texture_float","OES_texture_half_float","OES_texture_half_float_linear","OES_vertex_array_object","WEBGL_color_buffer_float","WEBGL_depth_texture","WEBGL_draw_buffers","EXT_clip_control","EXT_color_buffer_half_float","EXT_depth_clamp","EXT_float_blend","EXT_polygon_offset_clamp","EXT_texture_compression_bptc","EXT_texture_compression_rgtc","EXT_texture_filter_anisotropic","KHR_parallel_shader_compile","OES_texture_float_linear","WEBGL_blend_func_extended","WEBGL_compressed_texture_astc","WEBGL_compressed_texture_etc","WEBGL_compressed_texture_etc1","WEBGL_compressed_texture_s3tc","WEBGL_compressed_texture_s3tc_srgb","WEBGL_debug_renderer_info","WEBGL_debug_shaders","WEBGL_lose_context","WEBGL_multi_draw","WEBGL_polygon_mode"];return(e.getSupportedExtensions()||[]).filter(r=>t.includes(r))},GL={counter:1,buffers:[],programs:[],framebuffers:[],renderbuffers:[],textures:[],shaders:[],vaos:[],contexts:[],offscreenCanvases:{},queries:[],stringCache:{},unpackAlignment:4,unpackRowLength:0,recordError:e=>{GL.lastError||(GL.lastError=e)},getNewId:e=>{for(var t=GL.counter++,r=e.length;r{for(var a=0;a>>2>>>0]=c}},getSource:(e,t,r,n)=>{for(var a="",l=0;l>>2>>>0]:void 0;a+=UTF8ToString(HEAPU32[r+l*4>>>2>>>0],c)}return a},createContext:(e,t)=>{if(!e.getContextSafariWebGL2Fixed){let l=function(c,u){var _=e.getContextSafariWebGL2Fixed(c,u);return c=="webgl"==_ instanceof WebGLRenderingContext?_:null};var a=l;e.getContextSafariWebGL2Fixed=e.getContext,e.getContext=l}var r=e.getContext("webgl",t);if(!r)return 0;var n=GL.registerContext(r,t);return n},registerContext:(e,t)=>{var r=GL.getNewId(GL.contexts),n={handle:r,attributes:t,version:t.majorVersion,GLctx:e};return e.canvas&&(e.canvas.GLctxObject=n),GL.contexts[r]=n,(typeof t.enableExtensionsByDefault>"u"||t.enableExtensionsByDefault)&&GL.initExtensions(n),r},makeContextCurrent:e=>{var t;return GL.currentContext=GL.contexts[e],Module.ctx=GLctx=(t=GL.currentContext)==null?void 0:t.GLctx,!(e&&!GLctx)},getContext:e=>GL.contexts[e],deleteContext:e=>{GL.currentContext===GL.contexts[e]&&(GL.currentContext=null),typeof JSEvents=="object"&&JSEvents.removeAllHandlersOnTarget(GL.contexts[e].GLctx.canvas),GL.contexts[e]&&GL.contexts[e].GLctx.canvas&&(GL.contexts[e].GLctx.canvas.GLctxObject=void 0),GL.contexts[e]=null},initExtensions:e=>{if(e||(e=GL.currentContext),!e.initExtensionsDone){e.initExtensionsDone=!0;var t=e.GLctx;webgl_enable_WEBGL_multi_draw(t),webgl_enable_EXT_polygon_offset_clamp(t),webgl_enable_EXT_clip_control(t),webgl_enable_WEBGL_polygon_mode(t),webgl_enable_ANGLE_instanced_arrays(t),webgl_enable_OES_vertex_array_object(t),webgl_enable_WEBGL_draw_buffers(t),t.disjointTimerQueryExt=t.getExtension("EXT_disjoint_timer_query"),getEmscriptenSupportedExtensions(t).forEach(r=>{!r.includes("lose_context")&&!r.includes("debug")&&t.getExtension(r)})}}},_glActiveTexture=e=>GLctx.activeTexture(e);_glActiveTexture.sig="vi";var _emscripten_glActiveTexture=_glActiveTexture;_emscripten_glActiveTexture.sig="vi";var _glAttachShader=(e,t)=>{GLctx.attachShader(GL.programs[e],GL.shaders[t])};_glAttachShader.sig="vii";var _emscripten_glAttachShader=_glAttachShader;_emscripten_glAttachShader.sig="vii";var _glBeginQueryEXT=(e,t)=>{GLctx.disjointTimerQueryExt.beginQueryEXT(e,GL.queries[t])};_glBeginQueryEXT.sig="vii";var _emscripten_glBeginQueryEXT=_glBeginQueryEXT;function _glBindAttribLocation(e,t,r){r>>>=0,GLctx.bindAttribLocation(GL.programs[e],t,UTF8ToString(r))}_glBindAttribLocation.sig="viip";var _emscripten_glBindAttribLocation=_glBindAttribLocation;_emscripten_glBindAttribLocation.sig="viip";var _glBindBuffer=(e,t)=>{GLctx.bindBuffer(e,GL.buffers[t])};_glBindBuffer.sig="vii";var _emscripten_glBindBuffer=_glBindBuffer;_emscripten_glBindBuffer.sig="vii";var _glBindFramebuffer=(e,t)=>{GLctx.bindFramebuffer(e,GL.framebuffers[t])};_glBindFramebuffer.sig="vii";var _emscripten_glBindFramebuffer=_glBindFramebuffer;_emscripten_glBindFramebuffer.sig="vii";var _glBindRenderbuffer=(e,t)=>{GLctx.bindRenderbuffer(e,GL.renderbuffers[t])};_glBindRenderbuffer.sig="vii";var _emscripten_glBindRenderbuffer=_glBindRenderbuffer;_emscripten_glBindRenderbuffer.sig="vii";var _glBindTexture=(e,t)=>{GLctx.bindTexture(e,GL.textures[t])};_glBindTexture.sig="vii";var _emscripten_glBindTexture=_glBindTexture;_emscripten_glBindTexture.sig="vii";var _glBindVertexArray=e=>{GLctx.bindVertexArray(GL.vaos[e])};_glBindVertexArray.sig="vi";var _glBindVertexArrayOES=_glBindVertexArray;_glBindVertexArrayOES.sig="vi";var _emscripten_glBindVertexArrayOES=_glBindVertexArrayOES;_emscripten_glBindVertexArrayOES.sig="vi";var _glBlendColor=(e,t,r,n)=>GLctx.blendColor(e,t,r,n);_glBlendColor.sig="vffff";var _emscripten_glBlendColor=_glBlendColor;_emscripten_glBlendColor.sig="vffff";var _glBlendEquation=e=>GLctx.blendEquation(e);_glBlendEquation.sig="vi";var _emscripten_glBlendEquation=_glBlendEquation;_emscripten_glBlendEquation.sig="vi";var _glBlendEquationSeparate=(e,t)=>GLctx.blendEquationSeparate(e,t);_glBlendEquationSeparate.sig="vii";var _emscripten_glBlendEquationSeparate=_glBlendEquationSeparate;_emscripten_glBlendEquationSeparate.sig="vii";var _glBlendFunc=(e,t)=>GLctx.blendFunc(e,t);_glBlendFunc.sig="vii";var _emscripten_glBlendFunc=_glBlendFunc;_emscripten_glBlendFunc.sig="vii";var _glBlendFuncSeparate=(e,t,r,n)=>GLctx.blendFuncSeparate(e,t,r,n);_glBlendFuncSeparate.sig="viiii";var _emscripten_glBlendFuncSeparate=_glBlendFuncSeparate;_emscripten_glBlendFuncSeparate.sig="viiii";function _glBufferData(e,t,r,n){t>>>=0,r>>>=0,GLctx.bufferData(e,r?HEAPU8.subarray(r>>>0,r+t>>>0):t,n)}_glBufferData.sig="vippi";var _emscripten_glBufferData=_glBufferData;_emscripten_glBufferData.sig="vippi";function _glBufferSubData(e,t,r,n){t>>>=0,r>>>=0,n>>>=0,GLctx.bufferSubData(e,t,HEAPU8.subarray(n>>>0,n+r>>>0))}_glBufferSubData.sig="vippp";var _emscripten_glBufferSubData=_glBufferSubData;_emscripten_glBufferSubData.sig="vippp";var _glCheckFramebufferStatus=e=>GLctx.checkFramebufferStatus(e);_glCheckFramebufferStatus.sig="ii";var _emscripten_glCheckFramebufferStatus=_glCheckFramebufferStatus;_emscripten_glCheckFramebufferStatus.sig="ii";var _glClear=e=>GLctx.clear(e);_glClear.sig="vi";var _emscripten_glClear=_glClear;_emscripten_glClear.sig="vi";var _glClearColor=(e,t,r,n)=>GLctx.clearColor(e,t,r,n);_glClearColor.sig="vffff";var _emscripten_glClearColor=_glClearColor;_emscripten_glClearColor.sig="vffff";var _glClearDepthf=e=>GLctx.clearDepth(e);_glClearDepthf.sig="vf";var _emscripten_glClearDepthf=_glClearDepthf;_emscripten_glClearDepthf.sig="vf";var _glClearStencil=e=>GLctx.clearStencil(e);_glClearStencil.sig="vi";var _emscripten_glClearStencil=_glClearStencil;_emscripten_glClearStencil.sig="vi";var _glClipControlEXT=(e,t)=>{GLctx.extClipControl.clipControlEXT(e,t)};_glClipControlEXT.sig="vii";var _emscripten_glClipControlEXT=_glClipControlEXT,_glColorMask=(e,t,r,n)=>{GLctx.colorMask(!!e,!!t,!!r,!!n)};_glColorMask.sig="viiii";var _emscripten_glColorMask=_glColorMask;_emscripten_glColorMask.sig="viiii";var _glCompileShader=e=>{GLctx.compileShader(GL.shaders[e])};_glCompileShader.sig="vi";var _emscripten_glCompileShader=_glCompileShader;_emscripten_glCompileShader.sig="vi";function _glCompressedTexImage2D(e,t,r,n,a,l,c,u){u>>>=0,GLctx.compressedTexImage2D(e,t,r,n,a,l,HEAPU8.subarray(u>>>0,u+c>>>0))}_glCompressedTexImage2D.sig="viiiiiiip";var _emscripten_glCompressedTexImage2D=_glCompressedTexImage2D;_emscripten_glCompressedTexImage2D.sig="viiiiiiip";function _glCompressedTexSubImage2D(e,t,r,n,a,l,c,u,_){_>>>=0,GLctx.compressedTexSubImage2D(e,t,r,n,a,l,c,HEAPU8.subarray(_>>>0,_+u>>>0))}_glCompressedTexSubImage2D.sig="viiiiiiiip";var _emscripten_glCompressedTexSubImage2D=_glCompressedTexSubImage2D;_emscripten_glCompressedTexSubImage2D.sig="viiiiiiiip";var _glCopyTexImage2D=(e,t,r,n,a,l,c,u)=>GLctx.copyTexImage2D(e,t,r,n,a,l,c,u);_glCopyTexImage2D.sig="viiiiiiii";var _emscripten_glCopyTexImage2D=_glCopyTexImage2D;_emscripten_glCopyTexImage2D.sig="viiiiiiii";var _glCopyTexSubImage2D=(e,t,r,n,a,l,c,u)=>GLctx.copyTexSubImage2D(e,t,r,n,a,l,c,u);_glCopyTexSubImage2D.sig="viiiiiiii";var _emscripten_glCopyTexSubImage2D=_glCopyTexSubImage2D;_emscripten_glCopyTexSubImage2D.sig="viiiiiiii";var _glCreateProgram=()=>{var e=GL.getNewId(GL.programs),t=GLctx.createProgram();return t.name=e,t.maxUniformLength=t.maxAttributeLength=t.maxUniformBlockNameLength=0,t.uniformIdCounter=1,GL.programs[e]=t,e};_glCreateProgram.sig="i";var _emscripten_glCreateProgram=_glCreateProgram;_emscripten_glCreateProgram.sig="i";var _glCreateShader=e=>{var t=GL.getNewId(GL.shaders);return GL.shaders[t]=GLctx.createShader(e),t};_glCreateShader.sig="ii";var _emscripten_glCreateShader=_glCreateShader;_emscripten_glCreateShader.sig="ii";var _glCullFace=e=>GLctx.cullFace(e);_glCullFace.sig="vi";var _emscripten_glCullFace=_glCullFace;_emscripten_glCullFace.sig="vi";function _glDeleteBuffers(e,t){t>>>=0;for(var r=0;r>>2>>>0],a=GL.buffers[n];a&&(GLctx.deleteBuffer(a),a.name=0,GL.buffers[n]=null)}}_glDeleteBuffers.sig="vip";var _emscripten_glDeleteBuffers=_glDeleteBuffers;_emscripten_glDeleteBuffers.sig="vip";function _glDeleteFramebuffers(e,t){t>>>=0;for(var r=0;r>>2>>>0],a=GL.framebuffers[n];a&&(GLctx.deleteFramebuffer(a),a.name=0,GL.framebuffers[n]=null)}}_glDeleteFramebuffers.sig="vip";var _emscripten_glDeleteFramebuffers=_glDeleteFramebuffers;_emscripten_glDeleteFramebuffers.sig="vip";var _glDeleteProgram=e=>{if(e){var t=GL.programs[e];if(!t){GL.recordError(1281);return}GLctx.deleteProgram(t),t.name=0,GL.programs[e]=null}};_glDeleteProgram.sig="vi";var _emscripten_glDeleteProgram=_glDeleteProgram;_emscripten_glDeleteProgram.sig="vi";function _glDeleteQueriesEXT(e,t){t>>>=0;for(var r=0;r>>2>>>0],a=GL.queries[n];a&&(GLctx.disjointTimerQueryExt.deleteQueryEXT(a),GL.queries[n]=null)}}_glDeleteQueriesEXT.sig="vip";var _emscripten_glDeleteQueriesEXT=_glDeleteQueriesEXT;function _glDeleteRenderbuffers(e,t){t>>>=0;for(var r=0;r>>2>>>0],a=GL.renderbuffers[n];a&&(GLctx.deleteRenderbuffer(a),a.name=0,GL.renderbuffers[n]=null)}}_glDeleteRenderbuffers.sig="vip";var _emscripten_glDeleteRenderbuffers=_glDeleteRenderbuffers;_emscripten_glDeleteRenderbuffers.sig="vip";var _glDeleteShader=e=>{if(e){var t=GL.shaders[e];if(!t){GL.recordError(1281);return}GLctx.deleteShader(t),GL.shaders[e]=null}};_glDeleteShader.sig="vi";var _emscripten_glDeleteShader=_glDeleteShader;_emscripten_glDeleteShader.sig="vi";function _glDeleteTextures(e,t){t>>>=0;for(var r=0;r>>2>>>0],a=GL.textures[n];a&&(GLctx.deleteTexture(a),a.name=0,GL.textures[n]=null)}}_glDeleteTextures.sig="vip";var _emscripten_glDeleteTextures=_glDeleteTextures;_emscripten_glDeleteTextures.sig="vip";function _glDeleteVertexArrays(e,t){t>>>=0;for(var r=0;r>>2>>>0];GLctx.deleteVertexArray(GL.vaos[n]),GL.vaos[n]=null}}_glDeleteVertexArrays.sig="vip";var _glDeleteVertexArraysOES=_glDeleteVertexArrays;_glDeleteVertexArraysOES.sig="vip";var _emscripten_glDeleteVertexArraysOES=_glDeleteVertexArraysOES;_emscripten_glDeleteVertexArraysOES.sig="vip";var _glDepthFunc=e=>GLctx.depthFunc(e);_glDepthFunc.sig="vi";var _emscripten_glDepthFunc=_glDepthFunc;_emscripten_glDepthFunc.sig="vi";var _glDepthMask=e=>{GLctx.depthMask(!!e)};_glDepthMask.sig="vi";var _emscripten_glDepthMask=_glDepthMask;_emscripten_glDepthMask.sig="vi";var _glDepthRangef=(e,t)=>GLctx.depthRange(e,t);_glDepthRangef.sig="vff";var _emscripten_glDepthRangef=_glDepthRangef;_emscripten_glDepthRangef.sig="vff";var _glDetachShader=(e,t)=>{GLctx.detachShader(GL.programs[e],GL.shaders[t])};_glDetachShader.sig="vii";var _emscripten_glDetachShader=_glDetachShader;_emscripten_glDetachShader.sig="vii";var _glDisable=e=>GLctx.disable(e);_glDisable.sig="vi";var _emscripten_glDisable=_glDisable;_emscripten_glDisable.sig="vi";var _glDisableVertexAttribArray=e=>{GLctx.disableVertexAttribArray(e)};_glDisableVertexAttribArray.sig="vi";var _emscripten_glDisableVertexAttribArray=_glDisableVertexAttribArray;_emscripten_glDisableVertexAttribArray.sig="vi";var _glDrawArrays=(e,t,r)=>{GLctx.drawArrays(e,t,r)};_glDrawArrays.sig="viii";var _emscripten_glDrawArrays=_glDrawArrays;_emscripten_glDrawArrays.sig="viii";var _glDrawArraysInstanced=(e,t,r,n)=>{GLctx.drawArraysInstanced(e,t,r,n)};_glDrawArraysInstanced.sig="viiii";var _glDrawArraysInstancedANGLE=_glDrawArraysInstanced,_emscripten_glDrawArraysInstancedANGLE=_glDrawArraysInstancedANGLE,tempFixedLengthArray=[];function _glDrawBuffers(e,t){t>>>=0;for(var r=tempFixedLengthArray[e],n=0;n>>2>>>0];GLctx.drawBuffers(r)}_glDrawBuffers.sig="vip";var _glDrawBuffersWEBGL=_glDrawBuffers,_emscripten_glDrawBuffersWEBGL=_glDrawBuffersWEBGL;function _glDrawElements(e,t,r,n){n>>>=0,GLctx.drawElements(e,t,r,n)}_glDrawElements.sig="viiip";var _emscripten_glDrawElements=_glDrawElements;_emscripten_glDrawElements.sig="viiip";function _glDrawElementsInstanced(e,t,r,n,a){n>>>=0,GLctx.drawElementsInstanced(e,t,r,n,a)}_glDrawElementsInstanced.sig="viiipi";var _glDrawElementsInstancedANGLE=_glDrawElementsInstanced,_emscripten_glDrawElementsInstancedANGLE=_glDrawElementsInstancedANGLE,_glEnable=e=>GLctx.enable(e);_glEnable.sig="vi";var _emscripten_glEnable=_glEnable;_emscripten_glEnable.sig="vi";var _glEnableVertexAttribArray=e=>{GLctx.enableVertexAttribArray(e)};_glEnableVertexAttribArray.sig="vi";var _emscripten_glEnableVertexAttribArray=_glEnableVertexAttribArray;_emscripten_glEnableVertexAttribArray.sig="vi";var _glEndQueryEXT=e=>{GLctx.disjointTimerQueryExt.endQueryEXT(e)};_glEndQueryEXT.sig="vi";var _emscripten_glEndQueryEXT=_glEndQueryEXT,_glFinish=()=>GLctx.finish();_glFinish.sig="v";var _emscripten_glFinish=_glFinish;_emscripten_glFinish.sig="v";var _glFlush=()=>GLctx.flush();_glFlush.sig="v";var _emscripten_glFlush=_glFlush;_emscripten_glFlush.sig="v";var _glFramebufferRenderbuffer=(e,t,r,n)=>{GLctx.framebufferRenderbuffer(e,t,r,GL.renderbuffers[n])};_glFramebufferRenderbuffer.sig="viiii";var _emscripten_glFramebufferRenderbuffer=_glFramebufferRenderbuffer;_emscripten_glFramebufferRenderbuffer.sig="viiii";var _glFramebufferTexture2D=(e,t,r,n,a)=>{GLctx.framebufferTexture2D(e,t,r,GL.textures[n],a)};_glFramebufferTexture2D.sig="viiiii";var _emscripten_glFramebufferTexture2D=_glFramebufferTexture2D;_emscripten_glFramebufferTexture2D.sig="viiiii";var _glFrontFace=e=>GLctx.frontFace(e);_glFrontFace.sig="vi";var _emscripten_glFrontFace=_glFrontFace;_emscripten_glFrontFace.sig="vi";function _glGenBuffers(e,t){t>>>=0,GL.genObject(e,t,"createBuffer",GL.buffers)}_glGenBuffers.sig="vip";var _emscripten_glGenBuffers=_glGenBuffers;_emscripten_glGenBuffers.sig="vip";function _glGenFramebuffers(e,t){t>>>=0,GL.genObject(e,t,"createFramebuffer",GL.framebuffers)}_glGenFramebuffers.sig="vip";var _emscripten_glGenFramebuffers=_glGenFramebuffers;_emscripten_glGenFramebuffers.sig="vip";function _glGenQueriesEXT(e,t){t>>>=0;for(var r=0;r>>2>>>0]=0;return}var a=GL.getNewId(GL.queries);n.name=a,GL.queries[a]=n,HEAP32[t+r*4>>>2>>>0]=a}}_glGenQueriesEXT.sig="vip";var _emscripten_glGenQueriesEXT=_glGenQueriesEXT;function _glGenRenderbuffers(e,t){t>>>=0,GL.genObject(e,t,"createRenderbuffer",GL.renderbuffers)}_glGenRenderbuffers.sig="vip";var _emscripten_glGenRenderbuffers=_glGenRenderbuffers;_emscripten_glGenRenderbuffers.sig="vip";function _glGenTextures(e,t){t>>>=0,GL.genObject(e,t,"createTexture",GL.textures)}_glGenTextures.sig="vip";var _emscripten_glGenTextures=_glGenTextures;_emscripten_glGenTextures.sig="vip";function _glGenVertexArrays(e,t){t>>>=0,GL.genObject(e,t,"createVertexArray",GL.vaos)}_glGenVertexArrays.sig="vip";var _glGenVertexArraysOES=_glGenVertexArrays;_glGenVertexArraysOES.sig="vip";var _emscripten_glGenVertexArraysOES=_glGenVertexArraysOES;_emscripten_glGenVertexArraysOES.sig="vip";var _glGenerateMipmap=e=>GLctx.generateMipmap(e);_glGenerateMipmap.sig="vi";var _emscripten_glGenerateMipmap=_glGenerateMipmap;_emscripten_glGenerateMipmap.sig="vi";var __glGetActiveAttribOrUniform=(e,t,r,n,a,l,c,u)=>{t=GL.programs[t];var _=GLctx[e](t,r);if(_){var d=u&&stringToUTF8(_.name,u,n);a&&(HEAP32[a>>>2>>>0]=d),l&&(HEAP32[l>>>2>>>0]=_.size),c&&(HEAP32[c>>>2>>>0]=_.type)}};function _glGetActiveAttrib(e,t,r,n,a,l,c){n>>>=0,a>>>=0,l>>>=0,c>>>=0,__glGetActiveAttribOrUniform("getActiveAttrib",e,t,r,n,a,l,c)}_glGetActiveAttrib.sig="viiipppp";var _emscripten_glGetActiveAttrib=_glGetActiveAttrib;_emscripten_glGetActiveAttrib.sig="viiipppp";function _glGetActiveUniform(e,t,r,n,a,l,c){n>>>=0,a>>>=0,l>>>=0,c>>>=0,__glGetActiveAttribOrUniform("getActiveUniform",e,t,r,n,a,l,c)}_glGetActiveUniform.sig="viiipppp";var _emscripten_glGetActiveUniform=_glGetActiveUniform;_emscripten_glGetActiveUniform.sig="viiipppp";function _glGetAttachedShaders(e,t,r,n){r>>>=0,n>>>=0;var a=GLctx.getAttachedShaders(GL.programs[e]),l=a.length;l>t&&(l=t),HEAP32[r>>>2>>>0]=l;for(var c=0;c>>2>>>0]=u}}_glGetAttachedShaders.sig="viipp";var _emscripten_glGetAttachedShaders=_glGetAttachedShaders;_emscripten_glGetAttachedShaders.sig="viipp";function _glGetAttribLocation(e,t){return t>>>=0,GLctx.getAttribLocation(GL.programs[e],UTF8ToString(t))}_glGetAttribLocation.sig="iip";var _emscripten_glGetAttribLocation=_glGetAttribLocation;_emscripten_glGetAttribLocation.sig="iip";var writeI53ToI64=(e,t)=>{HEAPU32[e>>>2>>>0]=t;var r=HEAPU32[e>>>2>>>0];HEAPU32[e+4>>>2>>>0]=(t-r)/4294967296},emscriptenWebGLGet=(e,t,r)=>{if(!t){GL.recordError(1281);return}var n=void 0;switch(e){case 36346:n=1;break;case 36344:r!=0&&r!=1&&GL.recordError(1280);return;case 36345:n=0;break;case 34466:var a=GLctx.getParameter(34467);n=a?a.length:0;break}if(n===void 0){var l=GLctx.getParameter(e);switch(typeof l){case"number":n=l;break;case"boolean":n=l?1:0;break;case"string":GL.recordError(1280);return;case"object":if(l===null)switch(e){case 34964:case 35725:case 34965:case 36006:case 36007:case 32873:case 34229:case 34068:{n=0;break}default:{GL.recordError(1280);return}}else if(l instanceof Float32Array||l instanceof Uint32Array||l instanceof Int32Array||l instanceof Array){for(var c=0;c>>2>>>0]=l[c];break;case 2:HEAPF32[t+c*4>>>2>>>0]=l[c];break;case 4:HEAP8[t+c>>>0]=l[c]?1:0;break}return}else try{n=l.name|0}catch(u){GL.recordError(1280),err("GL_INVALID_ENUM in glGet".concat(r,"v: Unknown object returned from WebGL getParameter(").concat(e,")! (error: ").concat(u,")"));return}break;default:GL.recordError(1280),err("GL_INVALID_ENUM in glGet".concat(r,"v: Native code calling glGet").concat(r,"v(").concat(e,") and it returns ").concat(l," of type ").concat(typeof l,"!"));return}}switch(r){case 1:writeI53ToI64(t,n);break;case 0:HEAP32[t>>>2>>>0]=n;break;case 2:HEAPF32[t>>>2>>>0]=n;break;case 4:HEAP8[t>>>0]=n?1:0;break}};function _glGetBooleanv(e,t){return t>>>=0,emscriptenWebGLGet(e,t,4)}_glGetBooleanv.sig="vip";var _emscripten_glGetBooleanv=_glGetBooleanv;_emscripten_glGetBooleanv.sig="vip";function _glGetBufferParameteriv(e,t,r){if(r>>>=0,!r){GL.recordError(1281);return}HEAP32[r>>>2>>>0]=GLctx.getBufferParameter(e,t)}_glGetBufferParameteriv.sig="viip";var _emscripten_glGetBufferParameteriv=_glGetBufferParameteriv;_emscripten_glGetBufferParameteriv.sig="viip";var _glGetError=()=>{var e=GLctx.getError()||GL.lastError;return GL.lastError=0,e};_glGetError.sig="i";var _emscripten_glGetError=_glGetError;_emscripten_glGetError.sig="i";function _glGetFloatv(e,t){return t>>>=0,emscriptenWebGLGet(e,t,2)}_glGetFloatv.sig="vip";var _emscripten_glGetFloatv=_glGetFloatv;_emscripten_glGetFloatv.sig="vip";function _glGetFramebufferAttachmentParameteriv(e,t,r,n){n>>>=0;var a=GLctx.getFramebufferAttachmentParameter(e,t,r);(a instanceof WebGLRenderbuffer||a instanceof WebGLTexture)&&(a=a.name|0),HEAP32[n>>>2>>>0]=a}_glGetFramebufferAttachmentParameteriv.sig="viiip";var _emscripten_glGetFramebufferAttachmentParameteriv=_glGetFramebufferAttachmentParameteriv;_emscripten_glGetFramebufferAttachmentParameteriv.sig="viiip";function _glGetIntegerv(e,t){return t>>>=0,emscriptenWebGLGet(e,t,0)}_glGetIntegerv.sig="vip";var _emscripten_glGetIntegerv=_glGetIntegerv;_emscripten_glGetIntegerv.sig="vip";function _glGetProgramInfoLog(e,t,r,n){r>>>=0,n>>>=0;var a=GLctx.getProgramInfoLog(GL.programs[e]);a===null&&(a="(unknown error)");var l=t>0&&n?stringToUTF8(a,n,t):0;r&&(HEAP32[r>>>2>>>0]=l)}_glGetProgramInfoLog.sig="viipp";var _emscripten_glGetProgramInfoLog=_glGetProgramInfoLog;_emscripten_glGetProgramInfoLog.sig="viipp";function _glGetProgramiv(e,t,r){if(r>>>=0,!r){GL.recordError(1281);return}if(e>=GL.counter){GL.recordError(1281);return}if(e=GL.programs[e],t==35716){var n=GLctx.getProgramInfoLog(e);n===null&&(n="(unknown error)"),HEAP32[r>>>2>>>0]=n.length+1}else if(t==35719){if(!e.maxUniformLength)for(var a=GLctx.getProgramParameter(e,35718),l=0;l>>2>>>0]=e.maxUniformLength}else if(t==35722){if(!e.maxAttributeLength)for(var c=GLctx.getProgramParameter(e,35721),l=0;l>>2>>>0]=e.maxAttributeLength}else if(t==35381){if(!e.maxUniformBlockNameLength)for(var u=GLctx.getProgramParameter(e,35382),l=0;l>>2>>>0]=e.maxUniformBlockNameLength}else HEAP32[r>>>2>>>0]=GLctx.getProgramParameter(e,t)}_glGetProgramiv.sig="viip";var _emscripten_glGetProgramiv=_glGetProgramiv;_emscripten_glGetProgramiv.sig="viip";function _glGetQueryObjecti64vEXT(e,t,r){if(r>>>=0,!r){GL.recordError(1281);return}var n=GL.queries[e],a;a=GLctx.disjointTimerQueryExt.getQueryObjectEXT(n,t);var l;typeof a=="boolean"?l=a?1:0:l=a,writeI53ToI64(r,l)}_glGetQueryObjecti64vEXT.sig="viip";var _emscripten_glGetQueryObjecti64vEXT=_glGetQueryObjecti64vEXT;function _glGetQueryObjectivEXT(e,t,r){if(r>>>=0,!r){GL.recordError(1281);return}var n=GL.queries[e],a=GLctx.disjointTimerQueryExt.getQueryObjectEXT(n,t),l;typeof a=="boolean"?l=a?1:0:l=a,HEAP32[r>>>2>>>0]=l}_glGetQueryObjectivEXT.sig="viip";var _emscripten_glGetQueryObjectivEXT=_glGetQueryObjectivEXT,_glGetQueryObjectui64vEXT=_glGetQueryObjecti64vEXT,_emscripten_glGetQueryObjectui64vEXT=_glGetQueryObjectui64vEXT,_glGetQueryObjectuivEXT=_glGetQueryObjectivEXT,_emscripten_glGetQueryObjectuivEXT=_glGetQueryObjectuivEXT;function _glGetQueryivEXT(e,t,r){if(r>>>=0,!r){GL.recordError(1281);return}HEAP32[r>>>2>>>0]=GLctx.disjointTimerQueryExt.getQueryEXT(e,t)}_glGetQueryivEXT.sig="viip";var _emscripten_glGetQueryivEXT=_glGetQueryivEXT;function _glGetRenderbufferParameteriv(e,t,r){if(r>>>=0,!r){GL.recordError(1281);return}HEAP32[r>>>2>>>0]=GLctx.getRenderbufferParameter(e,t)}_glGetRenderbufferParameteriv.sig="viip";var _emscripten_glGetRenderbufferParameteriv=_glGetRenderbufferParameteriv;_emscripten_glGetRenderbufferParameteriv.sig="viip";function _glGetShaderInfoLog(e,t,r,n){r>>>=0,n>>>=0;var a=GLctx.getShaderInfoLog(GL.shaders[e]);a===null&&(a="(unknown error)");var l=t>0&&n?stringToUTF8(a,n,t):0;r&&(HEAP32[r>>>2>>>0]=l)}_glGetShaderInfoLog.sig="viipp";var _emscripten_glGetShaderInfoLog=_glGetShaderInfoLog;_emscripten_glGetShaderInfoLog.sig="viipp";function _glGetShaderPrecisionFormat(e,t,r,n){r>>>=0,n>>>=0;var a=GLctx.getShaderPrecisionFormat(e,t);HEAP32[r>>>2>>>0]=a.rangeMin,HEAP32[r+4>>>2>>>0]=a.rangeMax,HEAP32[n>>>2>>>0]=a.precision}_glGetShaderPrecisionFormat.sig="viipp";var _emscripten_glGetShaderPrecisionFormat=_glGetShaderPrecisionFormat;_emscripten_glGetShaderPrecisionFormat.sig="viipp";function _glGetShaderSource(e,t,r,n){r>>>=0,n>>>=0;var a=GLctx.getShaderSource(GL.shaders[e]);if(a){var l=t>0&&n?stringToUTF8(a,n,t):0;r&&(HEAP32[r>>>2>>>0]=l)}}_glGetShaderSource.sig="viipp";var _emscripten_glGetShaderSource=_glGetShaderSource;_emscripten_glGetShaderSource.sig="viipp";function _glGetShaderiv(e,t,r){if(r>>>=0,!r){GL.recordError(1281);return}if(t==35716){var n=GLctx.getShaderInfoLog(GL.shaders[e]);n===null&&(n="(unknown error)");var a=n?n.length+1:0;HEAP32[r>>>2>>>0]=a}else if(t==35720){var l=GLctx.getShaderSource(GL.shaders[e]),c=l?l.length+1:0;HEAP32[r>>>2>>>0]=c}else HEAP32[r>>>2>>>0]=GLctx.getShaderParameter(GL.shaders[e],t)}_glGetShaderiv.sig="viip";var _emscripten_glGetShaderiv=_glGetShaderiv;_emscripten_glGetShaderiv.sig="viip";var webglGetExtensions=function e(){var t=getEmscriptenSupportedExtensions(GLctx);return t=t.concat(t.map(r=>"GL_"+r)),t};function _glGetString(e){var t=GL.stringCache[e];if(!t){switch(e){case 7939:t=stringToNewUTF8(webglGetExtensions().join(" "));break;case 7936:case 7937:case 37445:case 37446:var r=GLctx.getParameter(e);r||GL.recordError(1280),t=r?stringToNewUTF8(r):0;break;case 7938:var n=GLctx.getParameter(7938),a="OpenGL ES 2.0 (".concat(n,")");t=stringToNewUTF8(a);break;case 35724:var l=GLctx.getParameter(35724),c=/^WebGL GLSL ES ([0-9]\.[0-9][0-9]?)(?:$| .*)/,u=l.match(c);u!==null&&(u[1].length==3&&(u[1]=u[1]+"0"),l="OpenGL ES GLSL ES ".concat(u[1]," (").concat(l,")")),t=stringToNewUTF8(l);break;default:GL.recordError(1280)}GL.stringCache[e]=t}return t}_glGetString.sig="pi";var _emscripten_glGetString=_glGetString;_emscripten_glGetString.sig="pi";function _glGetTexParameterfv(e,t,r){if(r>>>=0,!r){GL.recordError(1281);return}HEAPF32[r>>>2>>>0]=GLctx.getTexParameter(e,t)}_glGetTexParameterfv.sig="viip";var _emscripten_glGetTexParameterfv=_glGetTexParameterfv;_emscripten_glGetTexParameterfv.sig="viip";function _glGetTexParameteriv(e,t,r){if(r>>>=0,!r){GL.recordError(1281);return}HEAP32[r>>>2>>>0]=GLctx.getTexParameter(e,t)}_glGetTexParameteriv.sig="viip";var _emscripten_glGetTexParameteriv=_glGetTexParameteriv;_emscripten_glGetTexParameteriv.sig="viip";var webglGetLeftBracePos=e=>e.slice(-1)=="]"&&e.lastIndexOf("["),webglPrepareUniformLocationsBeforeFirstUse=e=>{var t=e.uniformLocsById,r=e.uniformSizeAndIdsByName,n,a;if(!t){e.uniformLocsById=t={},e.uniformArrayNamesById={};var l=GLctx.getProgramParameter(e,35718);for(n=0;n0?u.slice(0,d):u,p=e.uniformIdCounter;for(e.uniformIdCounter+=_,r[f]=[_,p],a=0;a<_;++a)t[p]=a,e.uniformArrayNamesById[p++]=f}}};function _glGetUniformLocation(e,t){if(t>>>=0,t=UTF8ToString(t),e=GL.programs[e]){webglPrepareUniformLocationsBeforeFirstUse(e);var r=e.uniformLocsById,n=0,a=t,l=webglGetLeftBracePos(t);l>0&&(n=jstoi_q(t.slice(l+1))>>>0,a=t.slice(0,l));var c=e.uniformSizeAndIdsByName[a];if(c&&n{var t=GLctx.currentProgram;if(t){var r=t.uniformLocsById[e];return typeof r=="number"&&(t.uniformLocsById[e]=r=GLctx.getUniformLocation(t,t.uniformArrayNamesById[e]+(r>0?"[".concat(r,"]"):""))),r}else GL.recordError(1282)},emscriptenWebGLGetUniform=(e,t,r,n)=>{if(!r){GL.recordError(1281);return}e=GL.programs[e],webglPrepareUniformLocationsBeforeFirstUse(e);var a=GLctx.getUniform(e,webglGetUniformLocation(t));if(typeof a=="number"||typeof a=="boolean")switch(n){case 0:HEAP32[r>>>2>>>0]=a;break;case 2:HEAPF32[r>>>2>>>0]=a;break}else for(var l=0;l>>2>>>0]=a[l];break;case 2:HEAPF32[r+l*4>>>2>>>0]=a[l];break}};function _glGetUniformfv(e,t,r){r>>>=0,emscriptenWebGLGetUniform(e,t,r,2)}_glGetUniformfv.sig="viip";var _emscripten_glGetUniformfv=_glGetUniformfv;_emscripten_glGetUniformfv.sig="viip";function _glGetUniformiv(e,t,r){r>>>=0,emscriptenWebGLGetUniform(e,t,r,0)}_glGetUniformiv.sig="viip";var _emscripten_glGetUniformiv=_glGetUniformiv;_emscripten_glGetUniformiv.sig="viip";function _glGetVertexAttribPointerv(e,t,r){if(r>>>=0,!r){GL.recordError(1281);return}HEAP32[r>>>2>>>0]=GLctx.getVertexAttribOffset(e,t)}_glGetVertexAttribPointerv.sig="viip";var _emscripten_glGetVertexAttribPointerv=_glGetVertexAttribPointerv;_emscripten_glGetVertexAttribPointerv.sig="viip";var emscriptenWebGLGetVertexAttrib=(e,t,r,n)=>{if(!r){GL.recordError(1281);return}var a=GLctx.getVertexAttrib(e,t);if(t==34975)HEAP32[r>>>2>>>0]=a&&a.name;else if(typeof a=="number"||typeof a=="boolean")switch(n){case 0:HEAP32[r>>>2>>>0]=a;break;case 2:HEAPF32[r>>>2>>>0]=a;break;case 5:HEAP32[r>>>2>>>0]=Math.fround(a);break}else for(var l=0;l>>2>>>0]=a[l];break;case 2:HEAPF32[r+l*4>>>2>>>0]=a[l];break;case 5:HEAP32[r+l*4>>>2>>>0]=Math.fround(a[l]);break}};function _glGetVertexAttribfv(e,t,r){r>>>=0,emscriptenWebGLGetVertexAttrib(e,t,r,2)}_glGetVertexAttribfv.sig="viip";var _emscripten_glGetVertexAttribfv=_glGetVertexAttribfv;_emscripten_glGetVertexAttribfv.sig="viip";function _glGetVertexAttribiv(e,t,r){r>>>=0,emscriptenWebGLGetVertexAttrib(e,t,r,5)}_glGetVertexAttribiv.sig="viip";var _emscripten_glGetVertexAttribiv=_glGetVertexAttribiv;_emscripten_glGetVertexAttribiv.sig="viip";var _glHint=(e,t)=>GLctx.hint(e,t);_glHint.sig="vii";var _emscripten_glHint=_glHint;_emscripten_glHint.sig="vii";var _glIsBuffer=e=>{var t=GL.buffers[e];return t?GLctx.isBuffer(t):0};_glIsBuffer.sig="ii";var _emscripten_glIsBuffer=_glIsBuffer;_emscripten_glIsBuffer.sig="ii";var _glIsEnabled=e=>GLctx.isEnabled(e);_glIsEnabled.sig="ii";var _emscripten_glIsEnabled=_glIsEnabled;_emscripten_glIsEnabled.sig="ii";var _glIsFramebuffer=e=>{var t=GL.framebuffers[e];return t?GLctx.isFramebuffer(t):0};_glIsFramebuffer.sig="ii";var _emscripten_glIsFramebuffer=_glIsFramebuffer;_emscripten_glIsFramebuffer.sig="ii";var _glIsProgram=e=>(e=GL.programs[e],e?GLctx.isProgram(e):0);_glIsProgram.sig="ii";var _emscripten_glIsProgram=_glIsProgram;_emscripten_glIsProgram.sig="ii";var _glIsQueryEXT=e=>{var t=GL.queries[e];return t?GLctx.disjointTimerQueryExt.isQueryEXT(t):0};_glIsQueryEXT.sig="ii";var _emscripten_glIsQueryEXT=_glIsQueryEXT,_glIsRenderbuffer=e=>{var t=GL.renderbuffers[e];return t?GLctx.isRenderbuffer(t):0};_glIsRenderbuffer.sig="ii";var _emscripten_glIsRenderbuffer=_glIsRenderbuffer;_emscripten_glIsRenderbuffer.sig="ii";var _glIsShader=e=>{var t=GL.shaders[e];return t?GLctx.isShader(t):0};_glIsShader.sig="ii";var _emscripten_glIsShader=_glIsShader;_emscripten_glIsShader.sig="ii";var _glIsTexture=e=>{var t=GL.textures[e];return t?GLctx.isTexture(t):0};_glIsTexture.sig="ii";var _emscripten_glIsTexture=_glIsTexture;_emscripten_glIsTexture.sig="ii";var _glIsVertexArray=e=>{var t=GL.vaos[e];return t?GLctx.isVertexArray(t):0};_glIsVertexArray.sig="ii";var _glIsVertexArrayOES=_glIsVertexArray;_glIsVertexArrayOES.sig="ii";var _emscripten_glIsVertexArrayOES=_glIsVertexArrayOES;_emscripten_glIsVertexArrayOES.sig="ii";var _glLineWidth=e=>GLctx.lineWidth(e);_glLineWidth.sig="vf";var _emscripten_glLineWidth=_glLineWidth;_emscripten_glLineWidth.sig="vf";var _glLinkProgram=e=>{e=GL.programs[e],GLctx.linkProgram(e),e.uniformLocsById=0,e.uniformSizeAndIdsByName={}};_glLinkProgram.sig="vi";var _emscripten_glLinkProgram=_glLinkProgram;_emscripten_glLinkProgram.sig="vi";var _glPixelStorei=(e,t)=>{e==3317?GL.unpackAlignment=t:e==3314&&(GL.unpackRowLength=t),GLctx.pixelStorei(e,t)};_glPixelStorei.sig="vii";var _emscripten_glPixelStorei=_glPixelStorei;_emscripten_glPixelStorei.sig="vii";var _glPolygonModeWEBGL=(e,t)=>{GLctx.webglPolygonMode.polygonModeWEBGL(e,t)};_glPolygonModeWEBGL.sig="vii";var _emscripten_glPolygonModeWEBGL=_glPolygonModeWEBGL,_glPolygonOffset=(e,t)=>GLctx.polygonOffset(e,t);_glPolygonOffset.sig="vff";var _emscripten_glPolygonOffset=_glPolygonOffset;_emscripten_glPolygonOffset.sig="vff";var _glPolygonOffsetClampEXT=(e,t,r)=>{GLctx.extPolygonOffsetClamp.polygonOffsetClampEXT(e,t,r)};_glPolygonOffsetClampEXT.sig="vfff";var _emscripten_glPolygonOffsetClampEXT=_glPolygonOffsetClampEXT,_glQueryCounterEXT=(e,t)=>{GLctx.disjointTimerQueryExt.queryCounterEXT(GL.queries[e],t)};_glQueryCounterEXT.sig="vii";var _emscripten_glQueryCounterEXT=_glQueryCounterEXT,computeUnpackAlignedImageSize=(e,t,r)=>{function n(c,u){return c+u-1&-u}var a=(GL.unpackRowLength||e)*r,l=n(a,GL.unpackAlignment);return t*l},colorChannelsInGlTextureFormat=e=>{var t={5:3,6:4,8:2,29502:3,29504:4};return t[e-6402]||1},heapObjectForWebGLType=e=>(e-=5120,e==1?HEAPU8:e==4?HEAP32:e==6?HEAPF32:e==5||e==28922?HEAPU32:HEAPU16),toTypedArrayIndex=(e,t)=>e>>>31-Math.clz32(t.BYTES_PER_ELEMENT),emscriptenWebGLGetTexPixelData=(e,t,r,n,a,l)=>{var c=heapObjectForWebGLType(e),u=colorChannelsInGlTextureFormat(t)*c.BYTES_PER_ELEMENT,_=computeUnpackAlignedImageSize(r,n,u);return c.subarray(toTypedArrayIndex(a,c)>>>0,toTypedArrayIndex(a+_,c)>>>0)};function _glReadPixels(e,t,r,n,a,l,c){c>>>=0;var u=emscriptenWebGLGetTexPixelData(l,a,r,n,c,a);if(!u){GL.recordError(1280);return}GLctx.readPixels(e,t,r,n,a,l,u)}_glReadPixels.sig="viiiiiip";var _emscripten_glReadPixels=_glReadPixels;_emscripten_glReadPixels.sig="viiiiiip";var _glReleaseShaderCompiler=()=>{};_glReleaseShaderCompiler.sig="v";var _emscripten_glReleaseShaderCompiler=_glReleaseShaderCompiler;_emscripten_glReleaseShaderCompiler.sig="v";var _glRenderbufferStorage=(e,t,r,n)=>GLctx.renderbufferStorage(e,t,r,n);_glRenderbufferStorage.sig="viiii";var _emscripten_glRenderbufferStorage=_glRenderbufferStorage;_emscripten_glRenderbufferStorage.sig="viiii";var _glSampleCoverage=(e,t)=>{GLctx.sampleCoverage(e,!!t)};_glSampleCoverage.sig="vfi";var _emscripten_glSampleCoverage=_glSampleCoverage;_emscripten_glSampleCoverage.sig="vfi";var _glScissor=(e,t,r,n)=>GLctx.scissor(e,t,r,n);_glScissor.sig="viiii";var _emscripten_glScissor=_glScissor;_emscripten_glScissor.sig="viiii";function _glShaderBinary(e,t,r,n,a){t>>>=0,n>>>=0,GL.recordError(1280)}_glShaderBinary.sig="vipipi";var _emscripten_glShaderBinary=_glShaderBinary;_emscripten_glShaderBinary.sig="vipipi";function _glShaderSource(e,t,r,n){r>>>=0,n>>>=0;var a=GL.getSource(e,t,r,n);GLctx.shaderSource(GL.shaders[e],a)}_glShaderSource.sig="viipp";var _emscripten_glShaderSource=_glShaderSource;_emscripten_glShaderSource.sig="viipp";var _glStencilFunc=(e,t,r)=>GLctx.stencilFunc(e,t,r);_glStencilFunc.sig="viii";var _emscripten_glStencilFunc=_glStencilFunc;_emscripten_glStencilFunc.sig="viii";var _glStencilFuncSeparate=(e,t,r,n)=>GLctx.stencilFuncSeparate(e,t,r,n);_glStencilFuncSeparate.sig="viiii";var _emscripten_glStencilFuncSeparate=_glStencilFuncSeparate;_emscripten_glStencilFuncSeparate.sig="viiii";var _glStencilMask=e=>GLctx.stencilMask(e);_glStencilMask.sig="vi";var _emscripten_glStencilMask=_glStencilMask;_emscripten_glStencilMask.sig="vi";var _glStencilMaskSeparate=(e,t)=>GLctx.stencilMaskSeparate(e,t);_glStencilMaskSeparate.sig="vii";var _emscripten_glStencilMaskSeparate=_glStencilMaskSeparate;_emscripten_glStencilMaskSeparate.sig="vii";var _glStencilOp=(e,t,r)=>GLctx.stencilOp(e,t,r);_glStencilOp.sig="viii";var _emscripten_glStencilOp=_glStencilOp;_emscripten_glStencilOp.sig="viii";var _glStencilOpSeparate=(e,t,r,n)=>GLctx.stencilOpSeparate(e,t,r,n);_glStencilOpSeparate.sig="viiii";var _emscripten_glStencilOpSeparate=_glStencilOpSeparate;_emscripten_glStencilOpSeparate.sig="viiii";function _glTexImage2D(e,t,r,n,a,l,c,u,_){_>>>=0;var d=_?emscriptenWebGLGetTexPixelData(u,c,n,a,_,r):null;GLctx.texImage2D(e,t,r,n,a,l,c,u,d)}_glTexImage2D.sig="viiiiiiiip";var _emscripten_glTexImage2D=_glTexImage2D;_emscripten_glTexImage2D.sig="viiiiiiiip";var _glTexParameterf=(e,t,r)=>GLctx.texParameterf(e,t,r);_glTexParameterf.sig="viif";var _emscripten_glTexParameterf=_glTexParameterf;_emscripten_glTexParameterf.sig="viif";function _glTexParameterfv(e,t,r){r>>>=0;var n=HEAPF32[r>>>2>>>0];GLctx.texParameterf(e,t,n)}_glTexParameterfv.sig="viip";var _emscripten_glTexParameterfv=_glTexParameterfv;_emscripten_glTexParameterfv.sig="viip";var _glTexParameteri=(e,t,r)=>GLctx.texParameteri(e,t,r);_glTexParameteri.sig="viii";var _emscripten_glTexParameteri=_glTexParameteri;_emscripten_glTexParameteri.sig="viii";function _glTexParameteriv(e,t,r){r>>>=0;var n=HEAP32[r>>>2>>>0];GLctx.texParameteri(e,t,n)}_glTexParameteriv.sig="viip";var _emscripten_glTexParameteriv=_glTexParameteriv;_emscripten_glTexParameteriv.sig="viip";function _glTexSubImage2D(e,t,r,n,a,l,c,u,_){_>>>=0;var d=_?emscriptenWebGLGetTexPixelData(u,c,a,l,_,0):null;GLctx.texSubImage2D(e,t,r,n,a,l,c,u,d)}_glTexSubImage2D.sig="viiiiiiiip";var _emscripten_glTexSubImage2D=_glTexSubImage2D;_emscripten_glTexSubImage2D.sig="viiiiiiiip";var _glUniform1f=(e,t)=>{GLctx.uniform1f(webglGetUniformLocation(e),t)};_glUniform1f.sig="vif";var _emscripten_glUniform1f=_glUniform1f;_emscripten_glUniform1f.sig="vif";var miniTempWebGLFloatBuffers=[];function _glUniform1fv(e,t,r){if(r>>>=0,t<=288)for(var n=miniTempWebGLFloatBuffers[t],a=0;a>>2>>>0];else var n=HEAPF32.subarray(r>>>2>>>0,r+t*4>>>2>>>0);GLctx.uniform1fv(webglGetUniformLocation(e),n)}_glUniform1fv.sig="viip";var _emscripten_glUniform1fv=_glUniform1fv;_emscripten_glUniform1fv.sig="viip";var _glUniform1i=(e,t)=>{GLctx.uniform1i(webglGetUniformLocation(e),t)};_glUniform1i.sig="vii";var _emscripten_glUniform1i=_glUniform1i;_emscripten_glUniform1i.sig="vii";var miniTempWebGLIntBuffers=[];function _glUniform1iv(e,t,r){if(r>>>=0,t<=288)for(var n=miniTempWebGLIntBuffers[t],a=0;a>>2>>>0];else var n=HEAP32.subarray(r>>>2>>>0,r+t*4>>>2>>>0);GLctx.uniform1iv(webglGetUniformLocation(e),n)}_glUniform1iv.sig="viip";var _emscripten_glUniform1iv=_glUniform1iv;_emscripten_glUniform1iv.sig="viip";var _glUniform2f=(e,t,r)=>{GLctx.uniform2f(webglGetUniformLocation(e),t,r)};_glUniform2f.sig="viff";var _emscripten_glUniform2f=_glUniform2f;_emscripten_glUniform2f.sig="viff";function _glUniform2fv(e,t,r){if(r>>>=0,t<=144){t*=2;for(var n=miniTempWebGLFloatBuffers[t],a=0;a>>2>>>0],n[a+1]=HEAPF32[r+(4*a+4)>>>2>>>0]}else var n=HEAPF32.subarray(r>>>2>>>0,r+t*8>>>2>>>0);GLctx.uniform2fv(webglGetUniformLocation(e),n)}_glUniform2fv.sig="viip";var _emscripten_glUniform2fv=_glUniform2fv;_emscripten_glUniform2fv.sig="viip";var _glUniform2i=(e,t,r)=>{GLctx.uniform2i(webglGetUniformLocation(e),t,r)};_glUniform2i.sig="viii";var _emscripten_glUniform2i=_glUniform2i;_emscripten_glUniform2i.sig="viii";function _glUniform2iv(e,t,r){if(r>>>=0,t<=144){t*=2;for(var n=miniTempWebGLIntBuffers[t],a=0;a>>2>>>0],n[a+1]=HEAP32[r+(4*a+4)>>>2>>>0]}else var n=HEAP32.subarray(r>>>2>>>0,r+t*8>>>2>>>0);GLctx.uniform2iv(webglGetUniformLocation(e),n)}_glUniform2iv.sig="viip";var _emscripten_glUniform2iv=_glUniform2iv;_emscripten_glUniform2iv.sig="viip";var _glUniform3f=(e,t,r,n)=>{GLctx.uniform3f(webglGetUniformLocation(e),t,r,n)};_glUniform3f.sig="vifff";var _emscripten_glUniform3f=_glUniform3f;_emscripten_glUniform3f.sig="vifff";function _glUniform3fv(e,t,r){if(r>>>=0,t<=96){t*=3;for(var n=miniTempWebGLFloatBuffers[t],a=0;a>>2>>>0],n[a+1]=HEAPF32[r+(4*a+4)>>>2>>>0],n[a+2]=HEAPF32[r+(4*a+8)>>>2>>>0]}else var n=HEAPF32.subarray(r>>>2>>>0,r+t*12>>>2>>>0);GLctx.uniform3fv(webglGetUniformLocation(e),n)}_glUniform3fv.sig="viip";var _emscripten_glUniform3fv=_glUniform3fv;_emscripten_glUniform3fv.sig="viip";var _glUniform3i=(e,t,r,n)=>{GLctx.uniform3i(webglGetUniformLocation(e),t,r,n)};_glUniform3i.sig="viiii";var _emscripten_glUniform3i=_glUniform3i;_emscripten_glUniform3i.sig="viiii";function _glUniform3iv(e,t,r){if(r>>>=0,t<=96){t*=3;for(var n=miniTempWebGLIntBuffers[t],a=0;a>>2>>>0],n[a+1]=HEAP32[r+(4*a+4)>>>2>>>0],n[a+2]=HEAP32[r+(4*a+8)>>>2>>>0]}else var n=HEAP32.subarray(r>>>2>>>0,r+t*12>>>2>>>0);GLctx.uniform3iv(webglGetUniformLocation(e),n)}_glUniform3iv.sig="viip";var _emscripten_glUniform3iv=_glUniform3iv;_emscripten_glUniform3iv.sig="viip";var _glUniform4f=(e,t,r,n,a)=>{GLctx.uniform4f(webglGetUniformLocation(e),t,r,n,a)};_glUniform4f.sig="viffff";var _emscripten_glUniform4f=_glUniform4f;_emscripten_glUniform4f.sig="viffff";function _glUniform4fv(e,t,r){if(r>>>=0,t<=72){var n=miniTempWebGLFloatBuffers[4*t],a=HEAPF32;r=r>>>2,t*=4;for(var l=0;l>>0],n[l+1]=a[c+1>>>0],n[l+2]=a[c+2>>>0],n[l+3]=a[c+3>>>0]}}else var n=HEAPF32.subarray(r>>>2>>>0,r+t*16>>>2>>>0);GLctx.uniform4fv(webglGetUniformLocation(e),n)}_glUniform4fv.sig="viip";var _emscripten_glUniform4fv=_glUniform4fv;_emscripten_glUniform4fv.sig="viip";var _glUniform4i=(e,t,r,n,a)=>{GLctx.uniform4i(webglGetUniformLocation(e),t,r,n,a)};_glUniform4i.sig="viiiii";var _emscripten_glUniform4i=_glUniform4i;_emscripten_glUniform4i.sig="viiiii";function _glUniform4iv(e,t,r){if(r>>>=0,t<=72){t*=4;for(var n=miniTempWebGLIntBuffers[t],a=0;a>>2>>>0],n[a+1]=HEAP32[r+(4*a+4)>>>2>>>0],n[a+2]=HEAP32[r+(4*a+8)>>>2>>>0],n[a+3]=HEAP32[r+(4*a+12)>>>2>>>0]}else var n=HEAP32.subarray(r>>>2>>>0,r+t*16>>>2>>>0);GLctx.uniform4iv(webglGetUniformLocation(e),n)}_glUniform4iv.sig="viip";var _emscripten_glUniform4iv=_glUniform4iv;_emscripten_glUniform4iv.sig="viip";function _glUniformMatrix2fv(e,t,r,n){if(n>>>=0,t<=72){t*=4;for(var a=miniTempWebGLFloatBuffers[t],l=0;l>>2>>>0],a[l+1]=HEAPF32[n+(4*l+4)>>>2>>>0],a[l+2]=HEAPF32[n+(4*l+8)>>>2>>>0],a[l+3]=HEAPF32[n+(4*l+12)>>>2>>>0]}else var a=HEAPF32.subarray(n>>>2>>>0,n+t*16>>>2>>>0);GLctx.uniformMatrix2fv(webglGetUniformLocation(e),!!r,a)}_glUniformMatrix2fv.sig="viiip";var _emscripten_glUniformMatrix2fv=_glUniformMatrix2fv;_emscripten_glUniformMatrix2fv.sig="viiip";function _glUniformMatrix3fv(e,t,r,n){if(n>>>=0,t<=32){t*=9;for(var a=miniTempWebGLFloatBuffers[t],l=0;l>>2>>>0],a[l+1]=HEAPF32[n+(4*l+4)>>>2>>>0],a[l+2]=HEAPF32[n+(4*l+8)>>>2>>>0],a[l+3]=HEAPF32[n+(4*l+12)>>>2>>>0],a[l+4]=HEAPF32[n+(4*l+16)>>>2>>>0],a[l+5]=HEAPF32[n+(4*l+20)>>>2>>>0],a[l+6]=HEAPF32[n+(4*l+24)>>>2>>>0],a[l+7]=HEAPF32[n+(4*l+28)>>>2>>>0],a[l+8]=HEAPF32[n+(4*l+32)>>>2>>>0]}else var a=HEAPF32.subarray(n>>>2>>>0,n+t*36>>>2>>>0);GLctx.uniformMatrix3fv(webglGetUniformLocation(e),!!r,a)}_glUniformMatrix3fv.sig="viiip";var _emscripten_glUniformMatrix3fv=_glUniformMatrix3fv;_emscripten_glUniformMatrix3fv.sig="viiip";function _glUniformMatrix4fv(e,t,r,n){if(n>>>=0,t<=18){var a=miniTempWebGLFloatBuffers[16*t],l=HEAPF32;n=n>>>2,t*=16;for(var c=0;c>>0],a[c+1]=l[u+1>>>0],a[c+2]=l[u+2>>>0],a[c+3]=l[u+3>>>0],a[c+4]=l[u+4>>>0],a[c+5]=l[u+5>>>0],a[c+6]=l[u+6>>>0],a[c+7]=l[u+7>>>0],a[c+8]=l[u+8>>>0],a[c+9]=l[u+9>>>0],a[c+10]=l[u+10>>>0],a[c+11]=l[u+11>>>0],a[c+12]=l[u+12>>>0],a[c+13]=l[u+13>>>0],a[c+14]=l[u+14>>>0],a[c+15]=l[u+15>>>0]}}else var a=HEAPF32.subarray(n>>>2>>>0,n+t*64>>>2>>>0);GLctx.uniformMatrix4fv(webglGetUniformLocation(e),!!r,a)}_glUniformMatrix4fv.sig="viiip";var _emscripten_glUniformMatrix4fv=_glUniformMatrix4fv;_emscripten_glUniformMatrix4fv.sig="viiip";var _glUseProgram=e=>{e=GL.programs[e],GLctx.useProgram(e),GLctx.currentProgram=e};_glUseProgram.sig="vi";var _emscripten_glUseProgram=_glUseProgram;_emscripten_glUseProgram.sig="vi";var _glValidateProgram=e=>{GLctx.validateProgram(GL.programs[e])};_glValidateProgram.sig="vi";var _emscripten_glValidateProgram=_glValidateProgram;_emscripten_glValidateProgram.sig="vi";var _glVertexAttrib1f=(e,t)=>GLctx.vertexAttrib1f(e,t);_glVertexAttrib1f.sig="vif";var _emscripten_glVertexAttrib1f=_glVertexAttrib1f;_emscripten_glVertexAttrib1f.sig="vif";function _glVertexAttrib1fv(e,t){t>>>=0,GLctx.vertexAttrib1f(e,HEAPF32[t>>>2])}_glVertexAttrib1fv.sig="vip";var _emscripten_glVertexAttrib1fv=_glVertexAttrib1fv;_emscripten_glVertexAttrib1fv.sig="vip";var _glVertexAttrib2f=(e,t,r)=>GLctx.vertexAttrib2f(e,t,r);_glVertexAttrib2f.sig="viff";var _emscripten_glVertexAttrib2f=_glVertexAttrib2f;_emscripten_glVertexAttrib2f.sig="viff";function _glVertexAttrib2fv(e,t){t>>>=0,GLctx.vertexAttrib2f(e,HEAPF32[t>>>2],HEAPF32[t+4>>>2])}_glVertexAttrib2fv.sig="vip";var _emscripten_glVertexAttrib2fv=_glVertexAttrib2fv;_emscripten_glVertexAttrib2fv.sig="vip";var _glVertexAttrib3f=(e,t,r,n)=>GLctx.vertexAttrib3f(e,t,r,n);_glVertexAttrib3f.sig="vifff";var _emscripten_glVertexAttrib3f=_glVertexAttrib3f;_emscripten_glVertexAttrib3f.sig="vifff";function _glVertexAttrib3fv(e,t){t>>>=0,GLctx.vertexAttrib3f(e,HEAPF32[t>>>2],HEAPF32[t+4>>>2],HEAPF32[t+8>>>2])}_glVertexAttrib3fv.sig="vip";var _emscripten_glVertexAttrib3fv=_glVertexAttrib3fv;_emscripten_glVertexAttrib3fv.sig="vip";var _glVertexAttrib4f=(e,t,r,n,a)=>GLctx.vertexAttrib4f(e,t,r,n,a);_glVertexAttrib4f.sig="viffff";var _emscripten_glVertexAttrib4f=_glVertexAttrib4f;_emscripten_glVertexAttrib4f.sig="viffff";function _glVertexAttrib4fv(e,t){t>>>=0,GLctx.vertexAttrib4f(e,HEAPF32[t>>>2],HEAPF32[t+4>>>2],HEAPF32[t+8>>>2],HEAPF32[t+12>>>2])}_glVertexAttrib4fv.sig="vip";var _emscripten_glVertexAttrib4fv=_glVertexAttrib4fv;_emscripten_glVertexAttrib4fv.sig="vip";var _glVertexAttribDivisor=(e,t)=>{GLctx.vertexAttribDivisor(e,t)};_glVertexAttribDivisor.sig="vii";var _glVertexAttribDivisorANGLE=_glVertexAttribDivisor,_emscripten_glVertexAttribDivisorANGLE=_glVertexAttribDivisorANGLE;function _glVertexAttribPointer(e,t,r,n,a,l){l>>>=0,GLctx.vertexAttribPointer(e,t,r,!!n,a,l)}_glVertexAttribPointer.sig="viiiiip";var _emscripten_glVertexAttribPointer=_glVertexAttribPointer;_emscripten_glVertexAttribPointer.sig="viiiiip";var _glViewport=(e,t,r,n)=>GLctx.viewport(e,t,r,n);_glViewport.sig="viiii";var _emscripten_glViewport=_glViewport;_emscripten_glViewport.sig="viiii";function _emscripten_out(e){return e>>>=0,out(UTF8ToString(e))}_emscripten_out.sig="vp";class HandleAllocator{constructor(){Qe(this,"allocated",[void 0]);Qe(this,"freelist",[])}get(t){return this.allocated[t]}has(t){return this.allocated[t]!==void 0}allocate(t){var r=this.freelist.pop()||this.allocated.length;return this.allocated[r]=t,r}free(t){this.allocated[t]=void 0,this.freelist.push(t)}}var promiseMap=new HandleAllocator,makePromise=()=>{var e={};return e.promise=new Promise((t,r)=>{e.reject=r,e.resolve=t}),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,t,r){e>>>=0,r>>>=0;var n=promiseMap.get(e);switch(t){case 0:n.resolve(r);return;case 1:n.resolve(getPromise(r));return;case 2:n.resolve(getPromise(r)),_emscripten_promise_destroy(r);return;case 3:n.reject(r);return}}_emscripten_promise_resolve.sig="vpip";var growMemory=e=>{var t=wasmMemory.buffer,r=(e-t.byteLength+65535)/65536|0;try{return wasmMemory.grow(r),updateMemoryViews(),1}catch(n){}};function _emscripten_resize_heap(e){e>>>=0;var t=HEAPU8.length,r=getHeapMax();if(e>r)return!1;for(var n=1;n<=4;n*=2){var a=t*(1+.2/n);a=Math.min(a,e+100663296);var l=Math.min(r,alignMemory(Math.max(e,a),65536)),c=growMemory(l);if(c)return!0}return!1}_emscripten_resize_heap.sig="ip";function _emscripten_wget_data(e,t,r,n){throw e>>>=0,t>>>=0,r>>>=0,n>>>=0,"Please compile your program with async support in order to use asynchronous operations like emscripten_wget_data"}_emscripten_wget_data.sig="vpppp";var getEnvStrings=()=>{if(!getEnvStrings.strings){var e=(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",t={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:e,_:getExecutableName()};for(var r in ENV)ENV[r]===void 0?delete t[r]:t[r]=ENV[r];var n=[];for(var r in t)n.push("".concat(r,"=").concat(t[r]));getEnvStrings.strings=n}return getEnvStrings.strings},stringToAscii=(e,t)=>{for(var r=0;r>>0]=e.charCodeAt(r);HEAP8[t>>>0]=0},_environ_get=function(e,t){e>>>=0,t>>>=0;var r=0;return getEnvStrings().forEach((n,a)=>{var l=t+r;HEAPU32[e+a*4>>>2>>>0]=l,stringToAscii(n,l),r+=n.length+1}),0};_environ_get.sig="ipp";var _environ_sizes_get=function(e,t){e>>>=0,t>>>=0;var r=getEnvStrings();HEAPU32[e>>>2>>>0]=r.length;var n=0;return r.forEach(a=>n+=a.length+1),HEAPU32[t>>>2>>>0]=n,0};_environ_sizes_get.sig="ipp";function _fd_close(e){try{var t=SYSCALLS.getStreamFromFD(e);return FS.close(t),0}catch(r){if(typeof FS>"u"||r.name!=="ErrnoError")throw r;return r.errno}}_fd_close.sig="ii";function _fd_fdstat_get(e,t){t>>>=0;try{var r=0,n=0,a=0,l=SYSCALLS.getStreamFromFD(e),c=l.tty?2:FS.isDir(l.mode)?3:FS.isLink(l.mode)?7:4;return HEAP8[t>>>0]=c,HEAP16[t+2>>>1>>>0]=a,tempI64=[r>>>0,(tempDouble=r,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[t+8>>>2>>>0]=tempI64[0],HEAP32[t+12>>>2>>>0]=tempI64[1],tempI64=[n>>>0,(tempDouble=n,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[t+16>>>2>>>0]=tempI64[0],HEAP32[t+20>>>2>>>0]=tempI64[1],0}catch(u){if(typeof FS>"u"||u.name!=="ErrnoError")throw u;return u.errno}}_fd_fdstat_get.sig="iip";var doReadv=(e,t,r,n)=>{for(var a=0,l=0;l>>2>>>0],u=HEAPU32[t+4>>>2>>>0];t+=8;var _=FS.read(e,HEAP8,c,u,n);if(_<0)return-1;if(a+=_,_>>=0,r>>>=0;var c=convertI32PairToI53Checked(n,a);l>>>=0;try{if(isNaN(c))return 61;var u=SYSCALLS.getStreamFromFD(e),_=doReadv(u,t,r,c);return HEAPU32[l>>>2>>>0]=_,0}catch(d){if(typeof FS>"u"||d.name!=="ErrnoError")throw d;return d.errno}}_fd_pread.sig="iippiip";var doWritev=(e,t,r,n)=>{for(var a=0,l=0;l>>2>>>0],u=HEAPU32[t+4>>>2>>>0];t+=8;var _=FS.write(e,HEAP8,c,u,n);if(_<0)return-1;if(a+=_,_>>=0,r>>>=0;var c=convertI32PairToI53Checked(n,a);l>>>=0;try{if(isNaN(c))return 61;var u=SYSCALLS.getStreamFromFD(e),_=doWritev(u,t,r,c);return HEAPU32[l>>>2>>>0]=_,0}catch(d){if(typeof FS>"u"||d.name!=="ErrnoError")throw d;return d.errno}}_fd_pwrite.sig="iippiip";function _fd_read(e,t,r,n){t>>>=0,r>>>=0,n>>>=0;try{var a=SYSCALLS.getStreamFromFD(e),l=doReadv(a,t,r);return HEAPU32[n>>>2>>>0]=l,0}catch(c){if(typeof FS>"u"||c.name!=="ErrnoError")throw c;return c.errno}}_fd_read.sig="iippp";function _fd_seek(e,t,r,n,a){var l=convertI32PairToI53Checked(t,r);a>>>=0;try{if(isNaN(l))return 61;var c=SYSCALLS.getStreamFromFD(e);return FS.llseek(c,l,n),tempI64=[c.position>>>0,(tempDouble=c.position,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[a>>>2>>>0]=tempI64[0],HEAP32[a+4>>>2>>>0]=tempI64[1],c.getdents&&l===0&&n===0&&(c.getdents=null),0}catch(u){if(typeof FS>"u"||u.name!=="ErrnoError")throw u;return u.errno}}_fd_seek.sig="iiiiip";function _fd_sync(e){var r;try{var t=SYSCALLS.getStreamFromFD(e);return(r=t.stream_ops)!=null&&r.fsync?t.stream_ops.fsync(t):0}catch(n){if(typeof FS>"u"||n.name!=="ErrnoError")throw n;return n.errno}}_fd_sync.sig="ii";function _fd_write(e,t,r,n){t>>>=0,r>>>=0,n>>>=0;try{var a=SYSCALLS.getStreamFromFD(e),l=doWritev(a,t,r);return HEAPU32[n>>>2>>>0]=l,0}catch(c){if(typeof FS>"u"||c.name!=="ErrnoError")throw c;return c.errno}}_fd_write.sig="iippp";function _getaddrinfo(e,t,r,n){e>>>=0,t>>>=0,r>>>=0,n>>>=0;var a=[],l=null,c=0,u=0,_=0,d=0,f=0,p=0,m,g;function h(b,y,A,F,C,x){var S,T,E,w;return T=b===10?28:16,C=b===10?inetNtop6(C):inetNtop4(C),S=_malloc(T),w=writeSockaddr(S,b,C,x),assert(!w),E=_malloc(32),HEAP32[E+4>>>2>>>0]=b,HEAP32[E+8>>>2>>>0]=y,HEAP32[E+12>>>2>>>0]=A,HEAPU32[E+24>>>2>>>0]=F,HEAPU32[E+20>>>2>>>0]=S,b===10?HEAP32[E+16>>>2>>>0]=28:HEAP32[E+16>>>2>>>0]=16,HEAP32[E+28>>>2>>>0]=0,E}if(r&&(_=HEAP32[r>>>2>>>0],d=HEAP32[r+4>>>2>>>0],f=HEAP32[r+8>>>2>>>0],p=HEAP32[r+12>>>2>>>0]),f&&!p&&(p=f===2?17:6),!f&&p&&(f=p===17?2:1),p===0&&(p=6),f===0&&(f=1),!e&&!t)return-2;if(_&-1088||r!==0&&HEAP32[r>>>2>>>0]&2&&!e)return-1;if(_&32)return-2;if(f!==0&&f!==1&&f!==2)return-7;if(d!==0&&d!==2&&d!==10)return-6;if(t&&(t=UTF8ToString(t),u=parseInt(t,10),isNaN(u)))return _&1024?-2:-8;if(!e)return d===0&&(d=2),_&1||(d===2?c=_htonl(2130706433):c=[0,0,0,_htonl(1)]),m=h(d,f,p,null,c,u),HEAPU32[n>>>2>>>0]=m,0;if(e=UTF8ToString(e),c=inetPton4(e),c!==null)if(d===0||d===2)d=2;else if(d===10&&_&8)c=[0,0,_htonl(65535),c],d=10;else return-2;else if(c=inetPton6(e),c!==null)if(d===0||d===10)d=10;else return-2;return c!=null?(m=h(d,f,p,e,c,u),HEAPU32[n>>>2>>>0]=m,0):_&4?-2:(e=DNS.lookup_name(e),c=inetPton4(e),d===0?d=2:d===10&&(c=[0,0,_htonl(65535),c]),m=h(d,f,p,null,c,u),HEAPU32[n>>>2>>>0]=m,0)}_getaddrinfo.sig="ipppp";function _getnameinfo(e,t,r,n,a,l,c){e>>>=0,r>>>=0,a>>>=0;var u=readSockaddr(e,t);if(u.errno)return-6;var _=u.port,d=u.addr,f=!1;if(r&&n){var p;if(c&1||!(p=DNS.lookup_addr(d))){if(c&8)return-2}else d=p;var m=stringToUTF8(d,r,n);m+1>=n&&(f=!0)}if(a&&l){_=""+_;var m=stringToUTF8(_,a,l);m+1>=l&&(f=!0)}return f?-12:0}_getnameinfo.sig="ipipipii";function _pthread_kill(...e){return wasmImports.pthread_kill(...e)}_pthread_kill.stub=!0;function _random_get(e,t){e>>>=0,t>>>=0;try{return randomFill(HEAPU8.subarray(e>>>0,e+t>>>0)),0}catch(r){if(typeof FS>"u"||r.name!=="ErrnoError")throw r;return r.errno}}_random_get.sig="ipp";var arraySum=(e,t)=>{for(var r=0,n=0;n<=t;r+=e[n++]);return r},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,t)=>{for(var r=new Date(e.getTime());t>0;){var n=isLeapYear(r.getFullYear()),a=r.getMonth(),l=(n?MONTH_DAYS_LEAP:MONTH_DAYS_REGULAR)[a];if(t>l-r.getDate())t-=l-r.getDate()+1,r.setDate(1),a<11?r.setMonth(a+1):(r.setMonth(0),r.setFullYear(r.getFullYear()+1));else return r.setDate(r.getDate()+t),r}return r};function _strptime(e,t,r){e>>>=0,t>>>=0,r>>>=0;for(var n=UTF8ToString(t),a="\\!@#$^&*()+=-[]/{}|:<>?,.",l=0,c=a.length;lu[le]||ee).replace(/%(.)/g,(ee,le)=>{let Y=_[le];return Y?(m.push(le),"(".concat(Y,")")):le}).replace(/\s+/g,"\\s*"),h=new RegExp("^"+g,"i").exec(UTF8ToString(e));function b(){function ee(le,Y,ke){return typeof le!="number"||isNaN(le)?Y:le>=Y?le<=ke?le:ke:Y}return{year:ee(HEAP32[r+20>>>2>>>0]+1900,1970,9999),month:ee(HEAP32[r+16>>>2>>>0],0,11),day:ee(HEAP32[r+12>>>2>>>0],1,31),hour:ee(HEAP32[r+8>>>2>>>0],0,23),min:ee(HEAP32[r+4>>>2>>>0],0,59),sec:ee(HEAP32[r>>>2>>>0],0,59),gmtoff:0}}if(h){var y=b(),A,F=ee=>{var le=m.indexOf(ee);if(le>=0)return h[le+1]};if((A=F("S"))&&(y.sec=jstoi_q(A)),(A=F("M"))&&(y.min=jstoi_q(A)),A=F("H"))y.hour=jstoi_q(A);else if(A=F("I")){var C=jstoi_q(A);(A=F("p"))&&(C+=A.toUpperCase()[0]==="P"?12:0),y.hour=C}if(A=F("Y"))y.year=jstoi_q(A);else if(A=F("y")){var x=jstoi_q(A);(A=F("C"))?x+=jstoi_q(A)*100:x+=x<69?2e3:1900,y.year=x}if((A=F("m"))?y.month=jstoi_q(A)-1:(A=F("b"))&&(y.month=d[A.substring(0,3).toUpperCase()]||0),A=F("d"))y.day=jstoi_q(A);else if(A=F("j"))for(var S=jstoi_q(A),T=isLeapYear(y.year),E=0;E<12;++E){var w=arraySum(T?MONTH_DAYS_LEAP:MONTH_DAYS_REGULAR,E-1);S<=w+(T?MONTH_DAYS_LEAP:MONTH_DAYS_REGULAR)[E]&&(y.day=S-w)}else if(A=F("a")){var P=A.substring(0,3).toUpperCase();if(A=F("U")){var L=f[P],M=jstoi_q(A),D=new Date(y.year,0,1),I;D.getDay()===0?I=addDays(D,L+7*(M-1)):I=addDays(D,7-D.getDay()+L+7*(M-1)),y.day=I.getDate(),y.month=I.getMonth()}else if(A=F("W")){var L=p[P],M=jstoi_q(A),D=new Date(y.year,0,1),I;D.getDay()===1?I=addDays(D,L+7*(M-1)):I=addDays(D,7-D.getDay()+1+L+7*(M-1)),y.day=I.getDate(),y.month=I.getMonth()}}if(A=F("z"))if(A.toLowerCase()==="z")y.gmtoff=0;else{var k=A.match(/^((?:\-|\+)\d\d):?(\d\d)?/);y.gmtoff=k[1]*3600,k[2]&&(y.gmtoff+=y.gmtoff>0?k[2]*60:-k[2]*60)}var Q=new Date(y.year,y.month,y.day,y.hour,y.min,y.sec,0);return HEAP32[r>>>2>>>0]=Q.getSeconds(),HEAP32[r+4>>>2>>>0]=Q.getMinutes(),HEAP32[r+8>>>2>>>0]=Q.getHours(),HEAP32[r+12>>>2>>>0]=Q.getDate(),HEAP32[r+16>>>2>>>0]=Q.getMonth(),HEAP32[r+20>>>2>>>0]=Q.getFullYear()-1900,HEAP32[r+24>>>2>>>0]=Q.getDay(),HEAP32[r+28>>>2>>>0]=arraySum(isLeapYear(Q.getFullYear())?MONTH_DAYS_LEAP:MONTH_DAYS_REGULAR,Q.getMonth()-1)+Q.getDate()-1,HEAP32[r+32>>>2>>>0]=0,HEAP32[r+36>>>2>>>0]=y.gmtoff,e+intArrayFromString(h[0]).length-1}return 0}_strptime.sig="pppp";var getCFunc=e=>{var t=Module["_"+e];return t},writeArrayToMemory=(e,t)=>{HEAP8.set(e,t>>>0)},ccall=(e,t,r,n,a)=>{var l={string:h=>{var b=0;return h!=null&&h!==0&&(b=stringToUTF8OnStack(h)),b},array:h=>{var b=stackAlloc(h.length);return writeArrayToMemory(h,b),b}};function c(h){return t==="string"?UTF8ToString(h):t==="boolean"?!!h:h}var u=getCFunc(e),_=[],d=0;if(n)for(var f=0;f{t>9223372036854776e3?(HEAPU32[e>>>2>>>0]=4294967295,HEAPU32[e+4>>>2>>>0]=2147483647):t<-9223372036854776e3?(HEAPU32[e>>>2>>>0]=0,HEAPU32[e+4>>>2>>>0]=2147483648):writeI53ToI64(e,t)},writeI53ToI64Signaling=(e,t)=>{if(t>9223372036854776e3||t<-9223372036854776e3)throw"RangeError: ".concat(t);writeI53ToI64(e,t)},writeI53ToU64Clamped=(e,t)=>{t>18446744073709552e3?(HEAPU32[e>>>2>>>0]=4294967295,HEAPU32[e+4>>>2>>>0]=4294967295):t<0?(HEAPU32[e>>>2>>>0]=0,HEAPU32[e+4>>>2>>>0]=0):writeI53ToI64(e,t)},writeI53ToU64Signaling=(e,t)=>{if(t<0||t>18446744073709552e3)throw"RangeError: ".concat(t);writeI53ToI64(e,t)},readI53FromU64=e=>HEAPU32[e>>>2>>>0]+HEAPU32[e+4>>>2>>>0]*4294967296,convertI32PairToI53=(e,t)=>(e>>>0)+t*4294967296,convertU32PairToI53=(e,t)=>(e>>>0)+(t>>>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";var withStackSave=e=>{var t=stackSave(),r=e();return stackRestore(t),r},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)),Protocols={list:[],map:{}},_setprotoent=e=>{function t(l,c,u){var _=_malloc(l.length+1);stringToAscii(l,_);for(var d=0,f=u.length,p=_malloc((f+1)*4),m=0;m>>2>>>0]=h}HEAPU32[p+d>>>2>>>0]=0;var b=_malloc(12);return HEAPU32[b>>>2>>>0]=_,HEAPU32[b+4>>>2>>>0]=p,HEAP32[b+8>>>2>>>0]=c,b}var r=Protocols.list,n=Protocols.map;if(r.length===0){var a=t("tcp",6,["TCP"]);r.push(a),n.tcp=n[6]=a,a=t("udp",17,["UDP"]),r.push(a),n.udp=n[17]=a}_setprotoent.index=0};_setprotoent.sig="vi";var _endprotoent=()=>{};_endprotoent.sig="v";function _getprotoent(e){if(_setprotoent.index===Protocols.list.length)return 0;var t=Protocols.list[_setprotoent.index++];return t}_getprotoent.sig="p";function _getprotobyname(e){e>>>=0,e=UTF8ToString(e),_setprotoent(!0);var t=Protocols.map[e];return t}_getprotobyname.sig="pp";function _getprotobynumber(e){_setprotoent(!0);var t=Protocols.map[e];return t}_getprotobynumber.sig="pi";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.bufferSizeMath.random();_emscripten_random.sig="f";var warnOnce=e=>{warnOnce.shown||(warnOnce.shown={}),warnOnce.shown[e]||(warnOnce.shown[e]=1,ENVIRONMENT_IS_NODE&&(e="warning: "+e),err(e))},jsStackTrace=()=>new Error().stack.toString(),getCallstack=e=>{var t=jsStackTrace(),r=t.lastIndexOf("_emscripten_log"),n=t.lastIndexOf("_emscripten_get_callstack"),a=t.indexOf("\n",Math.max(r,n))+1;t=t.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 l=t.split("\n");t="";var c=new RegExp("\\s*(.*?)@(.*?):([0-9]+):([0-9]+)"),u=new RegExp("\\s*(.*?)@(.*):(.*)(:(.*))?"),_=new RegExp("\\s*at (.*?) \\((.*):(.*):(.*)\\)");for(var d in l){var f=l[d],p="",m="",g=0,h=0,b=_.exec(f);if(b&&b.length==5)p=b[1],m=b[2],g=b[3],h=b[4];else if(b=c.exec(f)||u.exec(f),b&&b.length>=4)p=b[1],m=b[2],g=b[3],h=b[4]|0;else{t+=f+"\n";continue}var y=!1;if(e&8){var A=emscripten_source_map.originalPositionFor({line:g,column:h});y=A==null?void 0:A.source,y&&(e&64&&(A.source=A.source.substring(A.source.replace(/\\/g,"/").lastIndexOf("/")+1)),t+=" at ".concat(p," (").concat(A.source,":").concat(A.line,":").concat(A.column,")\n"))}(e&16||!y)&&(e&64&&(m=m.substring(m.replace(/\\/g,"/").lastIndexOf("/")+1)),t+=(y?" = ".concat(p):" at ".concat(p))+" (".concat(m,":").concat(g,":").concat(h,")\n"))}return t=t.replace(/\s+$/,""),t},emscriptenLog=(e,t)=>{e&24&&(t=t.replace(/\s+$/,""),t+=(t.length>0?"\n":"")+getCallstack(e)),e&1?e&4?console.error(t):e&2?console.warn(t):e&512?console.info(t):e&256?console.debug(t):console.log(t):e&6?err(t):out(t)},reallyNegative=e=>e<0||e===0&&1/e===-1/0,reSign=(e,t)=>{if(e<=0)return e;var r=t<=32?Math.abs(1<=r&&(t<=32||e>r)&&(e=-2*r+e),e},unSign=(e,t)=>e>=0?e:t<=32?2*Math.abs(1<{for(var t=e;HEAPU8[t>>>0];)++t;return t-e},formatString=(e,t)=>{var r=e,n=t;function a(Ee,Fe){return(Fe==="double"||Fe==="i64")&&Ee&7&&(Ee+=4),Ee}function l(Ee){var Fe;return n=a(n,Ee),Ee==="double"?(Fe=HEAPF64[n>>>3>>>0],n+=8):Ee=="i64"?(Fe=[HEAP32[n>>>2>>>0],HEAP32[n+4>>>2>>>0]],n+=8):(Ee="i32",Fe=HEAP32[n>>>2>>>0],n+=4),Fe}for(var c=[],u,_,d;;){var f=r;if(u=HEAP8[r>>>0],u===0)break;if(_=HEAP8[r+1>>>0],u==37){var p=!1,m=!1,g=!1,h=!1,b=!1;e:for(;;){switch(_){case 43:p=!0;break;case 45:m=!0;break;case 35:g=!0;break;case 48:if(h)break e;h=!0;break;case 32:b=!0;break;default:break e}r++,_=HEAP8[r+1>>>0]}var y=0;if(_==42)y=l("i32"),r++,_=HEAP8[r+1>>>0];else for(;_>=48&&_<=57;)y=y*10+(_-48),r++,_=HEAP8[r+1>>>0];var A=!1,F=-1;if(_==46){if(F=0,A=!0,r++,_=HEAP8[r+1>>>0],_==42)F=l("i32"),r++;else for(;;){var C=HEAP8[r+1>>>0];if(C<48||C>57)break;F=F*10+(C-48),r++}_=HEAP8[r+1>>>0]}F<0&&(F=6,A=!1);var x;switch(String.fromCharCode(_)){case"h":var S=HEAP8[r+2>>>0];S==104?(r++,x=1):x=2;break;case"l":var S=HEAP8[r+2>>>0];S==108?(r++,x=8):x=4;break;case"L":case"q":case"j":x=8;break;case"z":case"t":case"I":x=4;break;default:x=null}switch(x&&r++,_=HEAP8[r+1>>>0],String.fromCharCode(_)){case"d":case"i":case"u":case"o":case"x":case"X":case"p":{var T=_==100||_==105;x=x||4,d=l("i"+x*8);var E;if(x==8&&(d=_==117?convertU32PairToI53(d[0],d[1]):convertI32PairToI53(d[0],d[1])),x<=4){var w=Math.pow(256,x)-1;d=(T?reSign:unSign)(d&w,x*8)}var P=Math.abs(d),L="";if(_==100||_==105)E=reSign(d,8*x).toString(10);else if(_==117)E=unSign(d,8*x).toString(10),d=Math.abs(d);else if(_==111)E=(g?"0":"")+P.toString(8);else if(_==120||_==88){if(L=g&&d!=0?"0x":"",d<0){d=-d,E=(P-1).toString(16);for(var M=[],D=0;D=0&&(p?L="+"+L:b&&(L=" "+L)),E.charAt(0)=="-"&&(L="-"+L,E=E.substr(1));L.length+E.lengthc.push(Ee.charCodeAt(0)));break}case"f":case"F":case"e":case"E":case"g":case"G":{d=l("double");var E;if(isNaN(d))E="nan",h=!1;else if(!isFinite(d))E=(d<0?"-":"")+"inf",h=!1;else{var I=!1,k=Math.min(F,20);if(_==103||_==71){I=!0,F=F||1;var Q=parseInt(d.toExponential(k).split("e")[1],10);F>Q&&Q>=-4?(_=(_==103?"f":"F").charCodeAt(0),F-=Q+1):(_=(_==103?"e":"E").charCodeAt(0),F--),k=Math.min(F,20)}_==101||_==69?(E=d.toExponential(k),/[eE][-+]\d$/.test(E)&&(E=E.slice(0,-1)+"0"+E.slice(-1))):(_==102||_==70)&&(E=d.toFixed(k),d===0&&reallyNegative(d)&&(E="-"+E));var ee=E.split("e");if(I&&!g)for(;ee[0].length>1&&ee[0].includes(".")&&(ee[0].slice(-1)=="0"||ee[0].slice(-1)==".");)ee[0]=ee[0].slice(0,-1);else for(g&&E.indexOf(".")==-1&&(ee[0]+=".");F>k++;)ee[0]+="0";E=ee[0]+(ee.length>1?"e"+ee[1]:""),_==69&&(E=E.toUpperCase()),d>=0&&(p?E="+"+E:b&&(E=" "+E))}for(;E.lengthc.push(Fe.charCodeAt(0)));break}case"s":{var le=l("i8*"),Y=le?strLen(le):6;if(A&&(Y=Math.min(Y,F)),!m)for(;Y>>0]);else c=c.concat(intArrayFromString("(null)".substr(0,Y),!0));if(m)for(;Y0;)c.push(32);m||c.push(l("i8"));break}case"n":{var ke=l("i32*");HEAP32[ke>>>2>>>0]=c.length;break}case"%":{c.push(u);break}default:for(var D=f;D>>0])}r+=2}else c.push(u),r+=1}return c};function _emscripten_log(e,t,r){t>>>=0,r>>>=0;var n=formatString(t,r),a=UTF8ArrayToString(n);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=()=>0;_emscripten_has_asyncify.sig="i";var _emscripten_debugger=()=>{debugger};_emscripten_debugger.sig="v";function _emscripten_print_double(e,t,r){t>>>=0;var n=e+"";return t?stringToUTF8(n,t,r):lengthBytesUTF8(n)}_emscripten_print_double.sig="idpi";function _emscripten_asm_const_double(e,t,r){return e>>>=0,t>>>=0,r>>>=0,runEmAsmFunction(e,t,r)}_emscripten_asm_const_double.sig="dppp";var runMainThreadEmAsm=(e,t,r,n)=>{var a=readEmAsmArgs(t,r);return ASM_CONSTS[e](...a)};function _emscripten_asm_const_int_sync_on_main_thread(e,t,r){return e>>>=0,t>>>=0,r>>>=0,runMainThreadEmAsm(e,t,r,1)}_emscripten_asm_const_int_sync_on_main_thread.sig="ippp";function _emscripten_asm_const_ptr_sync_on_main_thread(e,t,r){return e>>>=0,t>>>=0,r>>>=0,runMainThreadEmAsm(e,t,r,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,t,r){return e>>>=0,t>>>=0,r>>>=0,runMainThreadEmAsm(e,t,r,0)}_emscripten_asm_const_async_on_main_thread.sig="vppp";var jstoi_s=Number;function __Unwind_Backtrace(e,t){e>>>=0,t>>>=0;for(var r=getCallstack(),n=r.split("\n"),a=0;a>>=0,t>>>=0,abort("Unwind_GetIPInfo")}__Unwind_GetIPInfo.sig="ppp";function __Unwind_FindEnclosingFunction(e){return e>>>=0,0}__Unwind_FindEnclosingFunction.sig="pp";function __Unwind_RaiseException(e){return e>>>=0,err("Warning: _Unwind_RaiseException is not correctly implemented"),___cxa_throw(e,0,0)}Module.__Unwind_RaiseException=__Unwind_RaiseException,__Unwind_RaiseException.sig="ip";function __Unwind_DeleteException(e){e>>>=0,err("TODO: Unwind_DeleteException")}Module.__Unwind_DeleteException=__Unwind_DeleteException,__Unwind_DeleteException.sig="vp";var createDyncallWrapper=e=>{var t=[],r=[0,97,115,109,1,0,0,0];t.push(r);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 l=[1];uleb128Encode(a.length,l),l.push(...a),t.push(l);var c=[2,15,2,1,101,1,116,1,112,0,0,1,101,1,114,0,2];t.push(c);var u=[3,2,1,0];t.push(u);var _=[7,5,1,1,102,0,1];t.push(_);var d=[];e[0]==="j"?d=[1,1,126]:d.push(0);function f(C){d.push(32),uleb128Encode(C,d)}for(var p=1,m=1;m{e=e.replace(/p/g,"i"),"dynCall_"+e in Module||(Module["dynCall_"+e]=createDyncallWrapper(e));var n=Module["dynCall_"+e];return n(t,...r)},dynCall=(e,t,r=[])=>{if(e.includes("j"))return dynCallLegacy(e,t,r);var n=getWasmTableEntry(t)(...r);return e[0]=="p"?n>>>0:n},getDynCaller=(e,t)=>(...r)=>dynCall(e,t,r),_emscripten_exit_with_live_runtime=()=>{throw"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,t){return e>>>=0,t>>>=0,out(UTF8ToString(e,t))}_emscripten_outn.sig="vpp";function _emscripten_errn(e,t){return e>>>=0,t>>>=0,err(UTF8ToString(e,t))}_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 runtimeKeepalivePush=()=>{runtimeKeepaliveCounter+=1};runtimeKeepalivePush.sig="v";var runtimeKeepalivePop=()=>{runtimeKeepaliveCounter-=1};runtimeKeepalivePop.sig="v";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 t=HEAPU32[e>>>2>>>0];e+=4;var r=HEAPU32[e>>>2>>>0];e+=4;var n=HEAPU32[e>>>2>>>0];e+=4;var a=UTF8ToString(t);FS.createPath("/",PATH.dirname(a),!0,!0),FS.createDataFile(a,null,HEAP8.subarray(n>>>0,n+r>>>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"){let t=Number(e.substr(1));return assert(t%8===0,"getNativeTypeSize invalid bits ".concat(t,", ").concat(e," type")),t/8}return 0}}}var STACK_SIZE=65536,STACK_ALIGN=16,ASSERTIONS=0,cwrap=(e,t,r,n)=>{var a=!r||r.every(c=>c==="number"||c==="boolean"),l=t!=="string";return l&&a&&!n?getCFunc(e):(...c)=>ccall(e,t,r,c,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,t)=>e%t;_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,t){t>>>=0;for(var r=[],n=0;n>>3>>>0]);return Math.hypot(...r)}_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 t=[],r=0;r255&&(n&=255),t.push(String.fromCharCode(n))}return t.join("")}var AsciiToString=e=>{e>>>=0;for(var t="";;){var r=HEAPU8[e++>>>0];if(!r)return t;t+=String.fromCharCode(r)}},JSEvents={removeAllEventListeners(){for(;JSEvents.eventHandlers.length;)JSEvents._removeHandler(JSEvents.eventHandlers.length-1);JSEvents.deferredCalls=[]},inEventHandler:0,deferredCalls:[],deferCall(e,t,r){function n(l,c){if(l.length!=c.length)return!1;for(var u in l)if(l[u]!=c[u])return!1;return!0}for(var a of JSEvents.deferredCalls)if(a.targetFunction==e&&n(a.argsList,r))return;JSEvents.deferredCalls.push({targetFunction:e,precedence:t,argsList:r}),JSEvents.deferredCalls.sort((l,c)=>l.precedencet.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 t of e)t.targetFunction(...t.argsList)}},eventHandlers:[],removeAllHandlersOnTarget:(e,t)=>{for(var r=0;re>2?UTF8ToString(e):e,specialHTMLTargets=[0,typeof document<"u"?document:0,typeof window<"u"?window:0],findEventTarget=e=>{e=maybeCStringToJsString(e);var t=specialHTMLTargets[e]||(typeof document<"u"?document.querySelector(e):void 0);return t},registerKeyEventCallback=(e,t,r,n,a,l,c)=>{JSEvents.keyEvent||(JSEvents.keyEvent=_malloc(160));var u=d=>{var f=JSEvents.keyEvent;HEAPF64[f>>>3>>>0]=d.timeStamp;var p=f>>>2;HEAP32[p+2>>>0]=d.location,HEAP8[f+12>>>0]=d.ctrlKey,HEAP8[f+13>>>0]=d.shiftKey,HEAP8[f+14>>>0]=d.altKey,HEAP8[f+15>>>0]=d.metaKey,HEAP8[f+16>>>0]=d.repeat,HEAP32[p+5>>>0]=d.charCode,HEAP32[p+6>>>0]=d.keyCode,HEAP32[p+7>>>0]=d.which,stringToUTF8(d.key||"",f+32,32),stringToUTF8(d.code||"",f+64,32),stringToUTF8(d.char||"",f+96,32),stringToUTF8(d.locale||"",f+128,32),getWasmTableEntry(n)(a,f,t)&&d.preventDefault()},_={target:findEventTarget(e),eventTypeString:l,callbackfunc:n,handlerFunc:u,useCapture:r};return JSEvents.registerOrRemoveHandler(_)},findCanvasEventTarget=findEventTarget;function _emscripten_set_keypress_callback_on_thread(e,t,r,n,a){return e>>>=0,t>>>=0,n>>>=0,a>>>=0,registerKeyEventCallback(e,t,r,n,1,"keypress",a)}_emscripten_set_keypress_callback_on_thread.sig="ippipp";function _emscripten_set_keydown_callback_on_thread(e,t,r,n,a){return e>>>=0,t>>>=0,n>>>=0,a>>>=0,registerKeyEventCallback(e,t,r,n,2,"keydown",a)}_emscripten_set_keydown_callback_on_thread.sig="ippipp";function _emscripten_set_keyup_callback_on_thread(e,t,r,n,a){return e>>>=0,t>>>=0,n>>>=0,a>>>=0,registerKeyEventCallback(e,t,r,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,t,r)=>{HEAPF64[e>>>3>>>0]=t.timeStamp;var n=e>>>2;HEAP32[n+2>>>0]=t.screenX,HEAP32[n+3>>>0]=t.screenY,HEAP32[n+4>>>0]=t.clientX,HEAP32[n+5>>>0]=t.clientY,HEAP8[e+24>>>0]=t.ctrlKey,HEAP8[e+25>>>0]=t.shiftKey,HEAP8[e+26>>>0]=t.altKey,HEAP8[e+27>>>0]=t.metaKey,HEAP16[n*2+14>>>0]=t.button,HEAP16[n*2+15>>>0]=t.buttons,HEAP32[n+8>>>0]=t.movementX,HEAP32[n+9>>>0]=t.movementY;var a=getBoundingClientRect(r);HEAP32[n+10>>>0]=t.clientX-(a.left|0),HEAP32[n+11>>>0]=t.clientY-(a.top|0)},registerMouseEventCallback=(e,t,r,n,a,l,c)=>{JSEvents.mouseEvent||(JSEvents.mouseEvent=_malloc(64)),e=findEventTarget(e);var u=(d=event)=>{fillMouseEventData(JSEvents.mouseEvent,d,e),getWasmTableEntry(n)(a,JSEvents.mouseEvent,t)&&d.preventDefault()},_={target:e,allowsDeferredCalls:l!="mousemove"&&l!="mouseenter"&&l!="mouseleave",eventTypeString:l,callbackfunc:n,handlerFunc:u,useCapture:r};return JSEvents.registerOrRemoveHandler(_)};function _emscripten_set_click_callback_on_thread(e,t,r,n,a){return e>>>=0,t>>>=0,n>>>=0,a>>>=0,registerMouseEventCallback(e,t,r,n,4,"click",a)}_emscripten_set_click_callback_on_thread.sig="ippipp";function _emscripten_set_mousedown_callback_on_thread(e,t,r,n,a){return e>>>=0,t>>>=0,n>>>=0,a>>>=0,registerMouseEventCallback(e,t,r,n,5,"mousedown",a)}_emscripten_set_mousedown_callback_on_thread.sig="ippipp";function _emscripten_set_mouseup_callback_on_thread(e,t,r,n,a){return e>>>=0,t>>>=0,n>>>=0,a>>>=0,registerMouseEventCallback(e,t,r,n,6,"mouseup",a)}_emscripten_set_mouseup_callback_on_thread.sig="ippipp";function _emscripten_set_dblclick_callback_on_thread(e,t,r,n,a){return e>>>=0,t>>>=0,n>>>=0,a>>>=0,registerMouseEventCallback(e,t,r,n,7,"dblclick",a)}_emscripten_set_dblclick_callback_on_thread.sig="ippipp";function _emscripten_set_mousemove_callback_on_thread(e,t,r,n,a){return e>>>=0,t>>>=0,n>>>=0,a>>>=0,registerMouseEventCallback(e,t,r,n,8,"mousemove",a)}_emscripten_set_mousemove_callback_on_thread.sig="ippipp";function _emscripten_set_mouseenter_callback_on_thread(e,t,r,n,a){return e>>>=0,t>>>=0,n>>>=0,a>>>=0,registerMouseEventCallback(e,t,r,n,33,"mouseenter",a)}_emscripten_set_mouseenter_callback_on_thread.sig="ippipp";function _emscripten_set_mouseleave_callback_on_thread(e,t,r,n,a){return e>>>=0,t>>>=0,n>>>=0,a>>>=0,registerMouseEventCallback(e,t,r,n,34,"mouseleave",a)}_emscripten_set_mouseleave_callback_on_thread.sig="ippipp";function _emscripten_set_mouseover_callback_on_thread(e,t,r,n,a){return e>>>=0,t>>>=0,n>>>=0,a>>>=0,registerMouseEventCallback(e,t,r,n,35,"mouseover",a)}_emscripten_set_mouseover_callback_on_thread.sig="ippipp";function _emscripten_set_mouseout_callback_on_thread(e,t,r,n,a){return e>>>=0,t>>>=0,n>>>=0,a>>>=0,registerMouseEventCallback(e,t,r,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,t,r,n,a,l,c)=>{JSEvents.wheelEvent||(JSEvents.wheelEvent=_malloc(96));var u=(d=event)=>{var f=JSEvents.wheelEvent;fillMouseEventData(f,d,e),HEAPF64[f+64>>>3>>>0]=d.deltaX,HEAPF64[f+72>>>3>>>0]=d.deltaY,HEAPF64[f+80>>>3>>>0]=d.deltaZ,HEAP32[f+88>>>2>>>0]=d.deltaMode,getWasmTableEntry(n)(a,f,t)&&d.preventDefault()},_={target:e,allowsDeferredCalls:!0,eventTypeString:l,callbackfunc:n,handlerFunc:u,useCapture:r};return JSEvents.registerOrRemoveHandler(_)};function _emscripten_set_wheel_callback_on_thread(e,t,r,n,a){return e>>>=0,t>>>=0,n>>>=0,a>>>=0,e=findEventTarget(e),e?typeof e.onwheel<"u"?registerWheelEventCallback(e,t,r,n,9,"wheel",a):-1:-4}_emscripten_set_wheel_callback_on_thread.sig="ippipp";var registerUiEventCallback=(e,t,r,n,a,l,c)=>{JSEvents.uiEvent||(JSEvents.uiEvent=_malloc(36)),e=findEventTarget(e);var u=(d=event)=>{if(d.target==e){var f=document.body;if(f){var p=JSEvents.uiEvent;HEAP32[p>>>2>>>0]=0,HEAP32[p+4>>>2>>>0]=f.clientWidth,HEAP32[p+8>>>2>>>0]=f.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,getWasmTableEntry(n)(a,p,t)&&d.preventDefault()}}},_={target:e,eventTypeString:l,callbackfunc:n,handlerFunc:u,useCapture:r};return JSEvents.registerOrRemoveHandler(_)};function _emscripten_set_resize_callback_on_thread(e,t,r,n,a){return e>>>=0,t>>>=0,n>>>=0,a>>>=0,registerUiEventCallback(e,t,r,n,10,"resize",a)}_emscripten_set_resize_callback_on_thread.sig="ippipp";function _emscripten_set_scroll_callback_on_thread(e,t,r,n,a){return e>>>=0,t>>>=0,n>>>=0,a>>>=0,registerUiEventCallback(e,t,r,n,11,"scroll",a)}_emscripten_set_scroll_callback_on_thread.sig="ippipp";var registerFocusEventCallback=(e,t,r,n,a,l,c)=>{JSEvents.focusEvent||(JSEvents.focusEvent=_malloc(256));var u=(d=event)=>{var f=JSEvents.getNodeNameForTarget(d.target),p=d.target.id?d.target.id:"",m=JSEvents.focusEvent;stringToUTF8(f,m+0,128),stringToUTF8(p,m+128,128),getWasmTableEntry(n)(a,m,t)&&d.preventDefault()},_={target:findEventTarget(e),eventTypeString:l,callbackfunc:n,handlerFunc:u,useCapture:r};return JSEvents.registerOrRemoveHandler(_)};function _emscripten_set_blur_callback_on_thread(e,t,r,n,a){return e>>>=0,t>>>=0,n>>>=0,a>>>=0,registerFocusEventCallback(e,t,r,n,12,"blur",a)}_emscripten_set_blur_callback_on_thread.sig="ippipp";function _emscripten_set_focus_callback_on_thread(e,t,r,n,a){return e>>>=0,t>>>=0,n>>>=0,a>>>=0,registerFocusEventCallback(e,t,r,n,13,"focus",a)}_emscripten_set_focus_callback_on_thread.sig="ippipp";function _emscripten_set_focusin_callback_on_thread(e,t,r,n,a){return e>>>=0,t>>>=0,n>>>=0,a>>>=0,registerFocusEventCallback(e,t,r,n,14,"focusin",a)}_emscripten_set_focusin_callback_on_thread.sig="ippipp";function _emscripten_set_focusout_callback_on_thread(e,t,r,n,a){return e>>>=0,t>>>=0,n>>>=0,a>>>=0,registerFocusEventCallback(e,t,r,n,15,"focusout",a)}_emscripten_set_focusout_callback_on_thread.sig="ippipp";var fillDeviceOrientationEventData=(e,t,r)=>{HEAPF64[e>>>3>>>0]=t.alpha,HEAPF64[e+8>>>3>>>0]=t.beta,HEAPF64[e+16>>>3>>>0]=t.gamma,HEAP8[e+24>>>0]=t.absolute},registerDeviceOrientationEventCallback=(e,t,r,n,a,l,c)=>{JSEvents.deviceOrientationEvent||(JSEvents.deviceOrientationEvent=_malloc(32));var u=(d=event)=>{fillDeviceOrientationEventData(JSEvents.deviceOrientationEvent,d,e),getWasmTableEntry(n)(a,JSEvents.deviceOrientationEvent,t)&&d.preventDefault()},_={target:findEventTarget(e),eventTypeString:l,callbackfunc:n,handlerFunc:u,useCapture:r};return JSEvents.registerOrRemoveHandler(_)};function _emscripten_set_deviceorientation_callback_on_thread(e,t,r,n){return e>>>=0,r>>>=0,n>>>=0,registerDeviceOrientationEventCallback(2,e,t,r,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,t,r)=>{var n=0,a=t.acceleration;n|=a&&1;var l=t.accelerationIncludingGravity;n|=l&&2;var c=t.rotationRate;n|=c&&4,a=a||{},l=l||{},c=c||{},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]=l.x,HEAPF64[e+32>>>3>>>0]=l.y,HEAPF64[e+40>>>3>>>0]=l.z,HEAPF64[e+48>>>3>>>0]=c.alpha,HEAPF64[e+56>>>3>>>0]=c.beta,HEAPF64[e+64>>>3>>>0]=c.gamma},registerDeviceMotionEventCallback=(e,t,r,n,a,l,c)=>{JSEvents.deviceMotionEvent||(JSEvents.deviceMotionEvent=_malloc(80));var u=(d=event)=>{fillDeviceMotionEventData(JSEvents.deviceMotionEvent,d,e),getWasmTableEntry(n)(a,JSEvents.deviceMotionEvent,t)&&d.preventDefault()},_={target:findEventTarget(e),eventTypeString:l,callbackfunc:n,handlerFunc:u,useCapture:r};return JSEvents.registerOrRemoveHandler(_)};function _emscripten_set_devicemotion_callback_on_thread(e,t,r,n){return e>>>=0,r>>>=0,n>>>=0,registerDeviceMotionEventCallback(2,e,t,r,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 t=["portrait-primary","portrait-secondary","landscape-primary","landscape-secondary"],r=["portrait","portrait","landscape","landscape"],n=0,a=0,l=screenOrientation();typeof l=="object"?(n=t.indexOf(l.type),n<0&&(n=r.indexOf(l.type)),n>=0&&(n=1<>>2>>>0]=n,HEAP32[e+4>>>2>>>0]=a},registerOrientationChangeEventCallback=(e,t,r,n,a,l,c)=>{JSEvents.orientationChangeEvent||(JSEvents.orientationChangeEvent=_malloc(8));var u=(d=event)=>{var f=JSEvents.orientationChangeEvent;fillOrientationChangeEventData(f),getWasmTableEntry(n)(a,f,t)&&d.preventDefault()},_={target:e,eventTypeString:l,callbackfunc:n,handlerFunc:u,useCapture:r};return JSEvents.registerOrRemoveHandler(_)};function _emscripten_set_orientationchange_callback_on_thread(e,t,r,n){return e>>>=0,r>>>=0,n>>>=0,!window.screen||!screen.orientation?-1:registerOrientationChangeEventCallback(screen.orientation,e,t,r,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 t=[];e&1&&t.push("portrait-primary"),e&2&&t.push("portrait-secondary"),e&4&&t.push("landscape-primary"),e&8&&t.push("landscape-secondary");var r;if(screen.lockOrientation)r=screen.lockOrientation(t);else if(screen.mozLockOrientation)r=screen.mozLockOrientation(t);else if(screen.webkitLockOrientation)r=screen.webkitLockOrientation(t);else return-1;return r?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 t=document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement||document.msFullscreenElement,r=!!t;HEAP8[e>>>0]=r,HEAP8[e+1>>>0]=JSEvents.fullscreenEnabled();var n=r?t:JSEvents.previousFullscreenElement,a=JSEvents.getNodeNameForTarget(n),l=(n==null?void 0:n.id)||"";stringToUTF8(a,e+2,128),stringToUTF8(l,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,r&&(JSEvents.previousFullscreenElement=t)},registerFullscreenChangeEventCallback=(e,t,r,n,a,l,c)=>{JSEvents.fullscreenChangeEvent||(JSEvents.fullscreenChangeEvent=_malloc(276));var u=(d=event)=>{var f=JSEvents.fullscreenChangeEvent;fillFullscreenChangeEventData(f),getWasmTableEntry(n)(a,f,t)&&d.preventDefault()},_={target:e,eventTypeString:l,callbackfunc:n,handlerFunc:u,useCapture:r};return JSEvents.registerOrRemoveHandler(_)};function _emscripten_set_fullscreenchange_callback_on_thread(e,t,r,n,a){return e>>>=0,t>>>=0,n>>>=0,a>>>=0,JSEvents.fullscreenEnabled()?(e=findEventTarget(e),e?(registerFullscreenChangeEventCallback(e,t,r,n,19,"webkitfullscreenchange",a),registerFullscreenChangeEventCallback(e,t,r,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,t,r){e>>>=0,t>>>=0,r>>>=0;var n=findCanvasEventTarget(e);if(!n)return-4;HEAP32[t>>>2>>>0]=n.width,HEAP32[r>>>2>>>0]=n.height}_emscripten_get_canvas_element_size.sig="ippp";var getCanvasElementSize=e=>{var t=stackSave(),r=stackAlloc(8),n=r+4,a=stringToUTF8OnStack(e.id),l=_emscripten_get_canvas_element_size(a,r,n),c=[HEAP32[r>>>2>>>0],HEAP32[n>>>2>>>0]];return stackRestore(t),c};function _emscripten_set_canvas_element_size(e,t,r){e>>>=0;var n=findCanvasEventTarget(e);return n?(n.width=t,n.height=r,0):-4}_emscripten_set_canvas_element_size.sig="ipii";var setCanvasElementSize=(e,t,r)=>{if(!e.controlTransferredOffscreen)e.width=t,e.height=r;else{var n=stackSave(),a=stringToUTF8OnStack(e.id);_emscripten_set_canvas_element_size(a,t,r),stackRestore(n)}},registerRestoreOldStyle=e=>{var t=getCanvasElementSize(e),r=t[0],n=t[1],a=e.style.width,l=e.style.height,c=e.style.backgroundColor,u=document.body.style.backgroundColor,_=e.style.paddingLeft,d=e.style.paddingRight,f=e.style.paddingTop,p=e.style.paddingBottom,m=e.style.marginLeft,g=e.style.marginRight,h=e.style.marginTop,b=e.style.marginBottom,y=document.body.style.margin,A=document.documentElement.style.overflow,F=document.body.scroll,C=e.style.imageRendering;function x(){var S=document.fullscreenElement||document.webkitFullscreenElement;S||(document.removeEventListener("fullscreenchange",x),document.removeEventListener("webkitfullscreenchange",x),setCanvasElementSize(e,r,n),e.style.width=a,e.style.height=l,e.style.backgroundColor=c,u||(document.body.style.backgroundColor="white"),document.body.style.backgroundColor=u,e.style.paddingLeft=_,e.style.paddingRight=d,e.style.paddingTop=f,e.style.paddingBottom=p,e.style.marginLeft=m,e.style.marginRight=g,e.style.marginTop=h,e.style.marginBottom=b,document.body.style.margin=y,document.documentElement.style.overflow=A,document.body.scroll=F,e.style.imageRendering=C,e.GLctxObject&&e.GLctxObject.GLctx.viewport(0,0,r,n),currentFullscreenStrategy.canvasResizedCallback&&getWasmTableEntry(currentFullscreenStrategy.canvasResizedCallback)(37,0,currentFullscreenStrategy.canvasResizedCallbackUserData))}return document.addEventListener("fullscreenchange",x),document.addEventListener("webkitfullscreenchange",x),x},setLetterbox=(e,t,r)=>{e.style.paddingLeft=e.style.paddingRight=r+"px",e.style.paddingTop=e.style.paddingBottom=t+"px"},JSEvents_resizeCanvasForFullscreen=(e,t)=>{var y,A;var r=registerRestoreOldStyle(e),n=t.softFullscreen?innerWidth:screen.width,a=t.softFullscreen?innerHeight:screen.height,l=getBoundingClientRect(e),c=l.width,u=l.height,_=getCanvasElementSize(e),d=_[0],f=_[1];if(t.scaleMode==3)setLetterbox(e,(a-u)/2,(n-c)/2),n=c,a=u;else if(t.scaleMode==2)if(n*f{if((t.scaleMode!=0||t.canvasResolutionScaleMode!=0)&&JSEvents_resizeCanvasForFullscreen(e,t),e.requestFullscreen)e.requestFullscreen();else if(e.webkitRequestFullscreen)e.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT);else return JSEvents.fullscreenEnabled()?-3:-1;return currentFullscreenStrategy=t,t.canvasResizedCallback&&getWasmTableEntry(t.canvasResizedCallback)(37,0,t.canvasResizedCallbackUserData),0},hideEverythingExceptGivenElement=e=>{for(var t=e,r=t.parentNode,n=[];t!=document.body;){for(var a=r.children,l=0;l{for(var t of e)t.node.style.display=t.displayState},currentFullscreenStrategy={},restoreOldWindowedStyle=null,softFullscreenResizeWebGLRenderTarget=()=>{var e=devicePixelRatio,t=currentFullscreenStrategy.canvasResolutionScaleMode==2,r=currentFullscreenStrategy.scaleMode==2,n=currentFullscreenStrategy.canvasResolutionScaleMode!=0,a=currentFullscreenStrategy.scaleMode==3,l=t?Math.round(innerWidth*e):innerWidth,c=t?Math.round(innerHeight*e):innerHeight,u=l,_=c,d=currentFullscreenStrategy.target,f=getCanvasElementSize(d),p=f[0],m=f[1],g;if(r&&(u*mp*_&&(u=_*p/m|0),g=(c-_)/2|0),n&&(setCanvasElementSize(d,u,_),d.GLctxObject&&d.GLctxObject.GLctx.viewport(0,0,u,_)),t&&(g/=e,u/=e,_/=e,u=Math.round(u*1e4)/1e4,_=Math.round(_*1e4)/1e4,g=Math.round(g*1e4)/1e4),a){var h=(innerHeight-jstoi_q(d.style.height))/2,b=(innerWidth-jstoi_q(d.style.width))/2;setLetterbox(d,h,b)}else{d.style.width=u+"px",d.style.height=_+"px";var b=(innerWidth-u)/2;setLetterbox(d,g,b)}!a&¤tFullscreenStrategy.canvasResizedCallback&&getWasmTableEntry(currentFullscreenStrategy.canvasResizedCallback)(37,0,currentFullscreenStrategy.canvasResizedCallbackUserData)},doRequestFullscreen=(e,t)=>JSEvents.fullscreenEnabled()?(e=findEventTarget(e),e?!e.requestFullscreen&&!e.webkitRequestFullscreen?-3:JSEvents.canPerformEventHandlerRequests()?JSEvents_requestFullscreen(e,t):t.deferUntilInEventHandler?(JSEvents.deferCall(JSEvents_requestFullscreen,1,[e,t]),1):-2:-4):-1;function _emscripten_request_fullscreen(e,t){e>>>=0;var r={scaleMode:0,canvasResolutionScaleMode:0,filteringMode:0,deferUntilInEventHandler:t,canvasResizedCallbackTargetThread:2};return doRequestFullscreen(e,r)}_emscripten_request_fullscreen.sig="ipi";function _emscripten_request_fullscreen_strategy(e,t,r){e>>>=0,r>>>=0;var n={scaleMode:HEAP32[r>>>2>>>0],canvasResolutionScaleMode:HEAP32[r+4>>>2>>>0],filteringMode:HEAP32[r+8>>>2>>>0],deferUntilInEventHandler:t,canvasResizedCallback:HEAP32[r+12>>>2>>>0],canvasResizedCallbackUserData:HEAP32[r+16>>>2>>>0]};return doRequestFullscreen(e,n)}_emscripten_request_fullscreen_strategy.sig="ipip";function _emscripten_enter_soft_fullscreen(e,t){if(e>>>=0,t>>>=0,e=findEventTarget(e),!e)return-4;var r={scaleMode:HEAP32[t>>>2>>>0],canvasResolutionScaleMode:HEAP32[t+4>>>2>>>0],filteringMode:HEAP32[t+8>>>2>>>0],canvasResizedCallback:HEAP32[t+12>>>2>>>0],canvasResizedCallbackUserData:HEAP32[t+16>>>2>>>0],target:e,softFullscreen:!0},n=JSEvents_resizeCanvasForFullscreen(e,r);document.documentElement.style.overflow="hidden",document.body.scroll="no",document.body.style.margin="0px";var a=hideEverythingExceptGivenElement(e);function l(){n(),restoreHiddenElements(a),removeEventListener("resize",softFullscreenResizeWebGLRenderTarget),r.canvasResizedCallback&&getWasmTableEntry(r.canvasResizedCallback)(37,0,r.canvasResizedCallbackUserData),currentFullscreenStrategy=0}return restoreOldWindowedStyle=l,currentFullscreenStrategy=r,addEventListener("resize",softFullscreenResizeWebGLRenderTarget),r.canvasResizedCallback&&getWasmTableEntry(r.canvasResizedCallback)(37,0,r.canvasResizedCallbackUserData),0}_emscripten_enter_soft_fullscreen.sig="ipp";var _emscripten_exit_soft_fullscreen=()=>(restoreOldWindowedStyle==null||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 t=document.pointerLockElement||document.mozPointerLockElement||document.webkitPointerLockElement||document.msPointerLockElement,r=!!t;HEAP8[e>>>0]=r;var n=JSEvents.getNodeNameForTarget(t),a=(t==null?void 0:t.id)||"";stringToUTF8(n,e+1,128),stringToUTF8(a,e+129,128)},registerPointerlockChangeEventCallback=(e,t,r,n,a,l,c)=>{JSEvents.pointerlockChangeEvent||(JSEvents.pointerlockChangeEvent=_malloc(257));var u=(d=event)=>{var f=JSEvents.pointerlockChangeEvent;fillPointerlockChangeEventData(f),getWasmTableEntry(n)(a,f,t)&&d.preventDefault()},_={target:e,eventTypeString:l,callbackfunc:n,handlerFunc:u,useCapture:r};return JSEvents.registerOrRemoveHandler(_)};function _emscripten_set_pointerlockchange_callback_on_thread(e,t,r,n,a){return e>>>=0,t>>>=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,t,r,n,20,"mozpointerlockchange",a),registerPointerlockChangeEventCallback(e,t,r,n,20,"webkitpointerlockchange",a),registerPointerlockChangeEventCallback(e,t,r,n,20,"mspointerlockchange",a),registerPointerlockChangeEventCallback(e,t,r,n,20,"pointerlockchange",a)):-4)}_emscripten_set_pointerlockchange_callback_on_thread.sig="ippipp";var registerPointerlockErrorEventCallback=(e,t,r,n,a,l,c)=>{var u=(d=event)=>{getWasmTableEntry(n)(a,0,t)&&d.preventDefault()},_={target:e,eventTypeString:l,callbackfunc:n,handlerFunc:u,useCapture:r};return JSEvents.registerOrRemoveHandler(_)};function _emscripten_set_pointerlockerror_callback_on_thread(e,t,r,n,a){return e>>>=0,t>>>=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,t,r,n,38,"mozpointerlockerror",a),registerPointerlockErrorEventCallback(e,t,r,n,38,"webkitpointerlockerror",a),registerPointerlockErrorEventCallback(e,t,r,n,38,"mspointerlockerror",a),registerPointerlockErrorEventCallback(e,t,r,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,t){return e>>>=0,e=findEventTarget(e),e?e.requestPointerLock?JSEvents.canPerformEventHandlerRequests()?requestPointerLock(e):t?(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,t){if(e>>>=0,!navigator.vibrate)return-1;for(var r=[],n=0;n>>2>>>0];r.push(a)}return navigator.vibrate(r),0}_emscripten_vibrate_pattern.sig="ipi";var fillVisibilityChangeEventData=e=>{var t=["hidden","visible","prerender","unloaded"],r=t.indexOf(document.visibilityState);HEAP8[e>>>0]=document.hidden,HEAP32[e+4>>>2>>>0]=r},registerVisibilityChangeEventCallback=(e,t,r,n,a,l,c)=>{JSEvents.visibilityChangeEvent||(JSEvents.visibilityChangeEvent=_malloc(8));var u=(d=event)=>{var f=JSEvents.visibilityChangeEvent;fillVisibilityChangeEventData(f),getWasmTableEntry(n)(a,f,t)&&d.preventDefault()},_={target:e,eventTypeString:l,callbackfunc:n,handlerFunc:u,useCapture:r};return JSEvents.registerOrRemoveHandler(_)};function _emscripten_set_visibilitychange_callback_on_thread(e,t,r,n){return e>>>=0,r>>>=0,n>>>=0,specialHTMLTargets[1]?registerVisibilityChangeEventCallback(specialHTMLTargets[1],e,t,r,21,"visibilitychange",n):-4}_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,t,r,n,a,l,c)=>{JSEvents.touchEvent||(JSEvents.touchEvent=_malloc(1552)),e=findEventTarget(e);var u=d=>{var f,p={},m=d.touches;for(let F of m)F.isChanged=F.onTarget=0,p[F.identifier]=F;for(let F of d.changedTouches)F.isChanged=1,p[F.identifier]=F;for(let F of d.targetTouches)p[F.identifier].onTarget=1;var g=JSEvents.touchEvent;HEAPF64[g>>>3>>>0]=d.timeStamp,HEAP8[g+12>>>0]=d.ctrlKey,HEAP8[g+13>>>0]=d.shiftKey,HEAP8[g+14>>>0]=d.altKey,HEAP8[g+15>>>0]=d.metaKey;var h=g+16,b=getBoundingClientRect(e),y=0;for(let F of Object.values(p)){var A=h>>>2;if(HEAP32[A+0>>>0]=F.identifier,HEAP32[A+1>>>0]=F.screenX,HEAP32[A+2>>>0]=F.screenY,HEAP32[A+3>>>0]=F.clientX,HEAP32[A+4>>>0]=F.clientY,HEAP32[A+5>>>0]=F.pageX,HEAP32[A+6>>>0]=F.pageY,HEAP8[h+28>>>0]=F.isChanged,HEAP8[h+29>>>0]=F.onTarget,HEAP32[A+8>>>0]=F.clientX-(b.left|0),HEAP32[A+9>>>0]=F.clientY-(b.top|0),h+=48,++y>31)break}HEAP32[g+8>>>2>>>0]=y,getWasmTableEntry(n)(a,g,t)&&d.preventDefault()},_={target:e,allowsDeferredCalls:l=="touchstart"||l=="touchend",eventTypeString:l,callbackfunc:n,handlerFunc:u,useCapture:r};return JSEvents.registerOrRemoveHandler(_)};function _emscripten_set_touchstart_callback_on_thread(e,t,r,n,a){return e>>>=0,t>>>=0,n>>>=0,a>>>=0,registerTouchEventCallback(e,t,r,n,22,"touchstart",a)}_emscripten_set_touchstart_callback_on_thread.sig="ippipp";function _emscripten_set_touchend_callback_on_thread(e,t,r,n,a){return e>>>=0,t>>>=0,n>>>=0,a>>>=0,registerTouchEventCallback(e,t,r,n,23,"touchend",a)}_emscripten_set_touchend_callback_on_thread.sig="ippipp";function _emscripten_set_touchmove_callback_on_thread(e,t,r,n,a){return e>>>=0,t>>>=0,n>>>=0,a>>>=0,registerTouchEventCallback(e,t,r,n,24,"touchmove",a)}_emscripten_set_touchmove_callback_on_thread.sig="ippipp";function _emscripten_set_touchcancel_callback_on_thread(e,t,r,n,a){return e>>>=0,t>>>=0,n>>>=0,a>>>=0,registerTouchEventCallback(e,t,r,n,25,"touchcancel",a)}_emscripten_set_touchcancel_callback_on_thread.sig="ippipp";var fillGamepadEventData=(e,t)=>{HEAPF64[e>>>3>>>0]=t.timestamp;for(var r=0;r>>3>>>0]=t.axes[r];for(var r=0;r>>3>>>0]=t.buttons[r].value:HEAPF64[e+r*8+528>>>3>>>0]=t.buttons[r];for(var r=0;r>>0]=t.buttons[r].pressed:HEAP8[e+r+1040>>>0]=t.buttons[r]==1;HEAP8[e+1104>>>0]=t.connected,HEAP32[e+1108>>>2>>>0]=t.index,HEAP32[e+8>>>2>>>0]=t.axes.length,HEAP32[e+12>>>2>>>0]=t.buttons.length,stringToUTF8(t.id,e+1112,64),stringToUTF8(t.mapping,e+1176,64)},registerGamepadEventCallback=(e,t,r,n,a,l,c)=>{JSEvents.gamepadEvent||(JSEvents.gamepadEvent=_malloc(1240));var u=(d=event)=>{var f=JSEvents.gamepadEvent;fillGamepadEventData(f,d.gamepad),getWasmTableEntry(n)(a,f,t)&&d.preventDefault()},_={target:findEventTarget(e),allowsDeferredCalls:!0,eventTypeString:l,callbackfunc:n,handlerFunc:u,useCapture:r};return JSEvents.registerOrRemoveHandler(_)},_emscripten_sample_gamepad_data=()=>{try{if(navigator.getGamepads)return(JSEvents.lastGamepadState=navigator.getGamepads())?0:-1}catch(e){navigator.getGamepads=null}return-1};_emscripten_sample_gamepad_data.sig="i";function _emscripten_set_gamepadconnected_callback_on_thread(e,t,r,n){return e>>>=0,r>>>=0,n>>>=0,_emscripten_sample_gamepad_data()?-1:registerGamepadEventCallback(2,e,t,r,26,"gamepadconnected",n)}_emscripten_set_gamepadconnected_callback_on_thread.sig="ipipp";function _emscripten_set_gamepaddisconnected_callback_on_thread(e,t,r,n){return e>>>=0,r>>>=0,n>>>=0,_emscripten_sample_gamepad_data()?-1:registerGamepadEventCallback(2,e,t,r,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,t){return t>>>=0,e<0||e>=JSEvents.lastGamepadState.length?-5:JSEvents.lastGamepadState[e]?(fillGamepadEventData(t,JSEvents.lastGamepadState[e]),0):-7}_emscripten_get_gamepad_status.sig="iip";var registerBeforeUnloadEventCallback=(e,t,r,n,a,l)=>{var c=(_=event)=>{var d=getWasmTableEntry(n)(a,0,t);if(d&&(d=UTF8ToString(d)),d)return _.preventDefault(),_.returnValue=d,d},u={target:findEventTarget(e),eventTypeString:l,callbackfunc:n,handlerFunc:c,useCapture:r};return JSEvents.registerOrRemoveHandler(u)};function _emscripten_set_beforeunload_callback_on_thread(e,t,r){return e>>>=0,t>>>=0,r>>>=0,typeof onbeforeunload>"u"?-1:r!==1?-5:registerBeforeUnloadEventCallback(2,e,!0,t,28,"beforeunload")}_emscripten_set_beforeunload_callback_on_thread.sig="ippp";var fillBatteryEventData=(e,t)=>{HEAPF64[e>>>3>>>0]=t.chargingTime,HEAPF64[e+8>>>3>>>0]=t.dischargingTime,HEAPF64[e+16>>>3>>>0]=t.level,HEAP8[e+24>>>0]=t.charging},battery=()=>navigator.battery||navigator.mozBattery||navigator.webkitBattery,registerBatteryEventCallback=(e,t,r,n,a,l,c)=>{JSEvents.batteryEvent||(JSEvents.batteryEvent=_malloc(32));var u=(d=event)=>{var f=JSEvents.batteryEvent;fillBatteryEventData(f,battery()),getWasmTableEntry(n)(a,f,t)&&d.preventDefault()},_={target:findEventTarget(e),eventTypeString:l,callbackfunc:n,handlerFunc:u,useCapture:r};return JSEvents.registerOrRemoveHandler(_)};function _emscripten_set_batterychargingchange_callback_on_thread(e,t,r){return e>>>=0,t>>>=0,r>>>=0,battery()?registerBatteryEventCallback(battery(),e,!0,t,29,"chargingchange",r):-1}_emscripten_set_batterychargingchange_callback_on_thread.sig="ippp";function _emscripten_set_batterylevelchange_callback_on_thread(e,t,r){return e>>>=0,t>>>=0,r>>>=0,battery()?registerBatteryEventCallback(battery(),e,!0,t,30,"levelchange",r):-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_element_css_size(e,t,r){return e>>>=0,e=findEventTarget(e),e?(e.style.width=t+"px",e.style.height=r+"px",0):-4}_emscripten_set_element_css_size.sig="ipdd";function _emscripten_get_element_css_size(e,t,r){if(e>>>=0,t>>>=0,r>>>=0,e=findEventTarget(e),!e)return-4;var n=getBoundingClientRect(e);return HEAPF64[t>>>3>>>0]=n.width,HEAPF64[r>>>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,t){return e>>>=0,t>>>=0,requestAnimationFrame(r=>getWasmTableEntry(e)(r,t))};_emscripten_request_animation_frame.sig="ipp";var _emscripten_cancel_animation_frame=e=>cancelAnimationFrame(e);_emscripten_cancel_animation_frame.sig="vi";function _emscripten_request_animation_frame_loop(e,t){e>>>=0,t>>>=0;function r(n){getWasmTableEntry(e)(n,t)&&requestAnimationFrame(r)}return requestAnimationFrame(r)}_emscripten_request_animation_frame_loop.sig="vpp";var _emscripten_performance_now=()=>performance.now();_emscripten_performance_now.sig="d";var _emscripten_get_device_pixel_ratio=()=>typeof devicePixelRatio=="number"&&devicePixelRatio||1;_emscripten_get_device_pixel_ratio.sig="d";function _emscripten_get_callstack(e,t,r){t>>>=0;var n=getCallstack(e);if(!t||r<=0)return lengthBytesUTF8(n)+1;var a=stringToUTF8(n,t,r);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 t=jsStackTrace().split("\n");t[0]=="Error"&&t.shift();var r=t[e+3];return convertFrameToPC(r)}_emscripten_return_address.sig="pi";var UNWIND_CACHE={},saveInUnwindCache=e=>{e.forEach(t=>{var r=convertFrameToPC(t);r&&(UNWIND_CACHE[r]=t)})};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,t,r){e>>>=0,t>>>=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 l=0;l>>2>>>0]=convertFrameToPC(n[l+a]);return l}_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 t,r;if(!r){var n=UNWIND_CACHE[e];if(!n)return null;(t=/\((.*):(\d+):(\d+)\)$/.exec(n))?r={file:t[1],line:t[2],column:t[3]}:(t=/@(.*):(\d+):(\d+)/.exec(n))&&(r={file:t[1],line:t[2],column:t[3]})}return UNWIND_CACHE.last_get_source_pc=e,UNWIND_CACHE.last_source=r,r};function _emscripten_pc_get_file(e){e>>>=0;var t=convertPCtoSourceLocation(e);return t?(_emscripten_pc_get_file.ret&&_free(_emscripten_pc_get_file.ret),_emscripten_pc_get_file.ret=stringToNewUTF8(t.file),_emscripten_pc_get_file.ret):0}_emscripten_pc_get_file.sig="pp";function _emscripten_pc_get_line(e){e>>>=0;var t=convertPCtoSourceLocation(e);return t?t.line:0}_emscripten_pc_get_line.sig="ip";function _emscripten_pc_get_column(e){e>>>=0;var t=convertPCtoSourceLocation(e);return t&&t.column||0}_emscripten_pc_get_column.sig="ip";var _sched_yield=()=>0;Module._sched_yield=_sched_yield,_sched_yield.sig="i";var checkWasiClock=e=>e==0||e==1||e==2||e==3;function _clock_time_get(e,t,r,n){var a=convertI32PairToI53Checked(t,r);if(n>>>=0,!checkWasiClock(e))return 28;var l;if(e===0)l=Date.now();else if(nowIsMonotonic)l=_emscripten_get_now();else return 52;var c=Math.round(l*1e3*1e3);return HEAP32[n>>>2>>>0]=c>>>0,HEAP32[n+4>>>2>>>0]=c/Math.pow(2,32)>>>0,0}_clock_time_get.sig="iiiip";function _clock_res_get(e,t){if(t>>>=0,!checkWasiClock(e))return 28;var r;if(e===0)r=1e6;else if(nowIsMonotonic)r=_emscripten_get_now_res();else return 52;return HEAP32[t>>>2>>>0]=r>>>0,HEAP32[t+4>>>2>>>0]=r/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 t=0;return e&1&&(t|=64),e&8&&(t|=512),e&2&&(t|=65536),e&4&&(t|=128),t},_emscripten_unwind_to_js_event_loop=()=>{throw"unwind"};_emscripten_unwind_to_js_event_loop.sig="v";var safeSetTimeout=(e,t)=>setTimeout(()=>{callUserCallback(e)},t),setImmediateWrapped=e=>{setImmediateWrapped.mapping||(setImmediateWrapped.mapping=[]);var t=setImmediateWrapped.mapping.length;return setImmediateWrapped.mapping[t]=setImmediate(()=>{setImmediateWrapped.mapping[t]=void 0,e()}),t},clearImmediateWrapped=e=>{clearImmediate(setImmediateWrapped.mapping[e]),setImmediateWrapped.mapping[e]=void 0},polyfillSetImmediate=()=>{},_emscripten_set_immediate=function(e,t){return e>>>=0,t>>>=0,emSetImmediate(()=>{callUserCallback(()=>getWasmTableEntry(e)(t))})};_emscripten_set_immediate.sig="ipp";var _emscripten_clear_immediate=e=>{emClearImmediate(e)};_emscripten_clear_immediate.sig="vi";var _emscripten_set_immediate_loop=function(e,t){e>>>=0,t>>>=0;function r(){callUserCallback(()=>{getWasmTableEntry(e)(t)&&emSetImmediate(r)})}emSetImmediate(r)};_emscripten_set_immediate_loop.sig="vpp";var _emscripten_set_timeout=function(e,t,r){return e>>>=0,r>>>=0,safeSetTimeout(()=>getWasmTableEntry(e)(r),t)};_emscripten_set_timeout.sig="ipdp";var _emscripten_clear_timeout=clearTimeout;_emscripten_clear_timeout.sig="vi";var _emscripten_set_timeout_loop=function(e,t,r){e>>>=0,r>>>=0;function n(){var a=_emscripten_get_now(),l=a+t;callUserCallback(()=>{getWasmTableEntry(e)(a,r)&&setTimeout(n,l-_emscripten_get_now())})}return setTimeout(n,0)};_emscripten_set_timeout_loop.sig="vpdp";var _emscripten_set_interval=function(e,t,r){return e>>>=0,r>>>=0,setInterval(()=>{callUserCallback(()=>getWasmTableEntry(e)(r))},t)};_emscripten_set_interval.sig="ipdp";var _emscripten_clear_interval=e=>{clearInterval(e)};_emscripten_clear_interval.sig="vi";var registerPostMainLoop=e=>{typeof MainLoop<"u"&&MainLoop.postMainLoop.push(e)},registerPreMainLoop=e=>{typeof MainLoop<"u"&&MainLoop.preMainLoop.push(e)};function _emscripten_get_main_loop_timing(e,t){e>>>=0,t>>>=0,e&&(HEAP32[e>>>2>>>0]=MainLoop.timingMode),t&&(HEAP32[t>>>2>>>0]=MainLoop.timingValue)}_emscripten_get_main_loop_timing.sig="vpp";function _emscripten_set_main_loop(e,t,r){e>>>=0;var n=getWasmTableEntry(e);setMainLoop(n,t,r)}_emscripten_set_main_loop.sig="vpii";var _emscripten_set_main_loop_arg=function(e,t,r,n){e>>>=0,t>>>=0;var a=()=>getWasmTableEntry(e)(t);setMainLoop(a,r,n,t)};_emscripten_set_main_loop_arg.sig="vppii";var _emscripten_cancel_main_loop=()=>{MainLoop.pause(),MainLoop.func=null};_emscripten_cancel_main_loop.sig="v";var _emscripten_pause_main_loop=()=>{MainLoop.pause()};_emscripten_pause_main_loop.sig="v";var _emscripten_resume_main_loop=()=>{MainLoop.resume()};_emscripten_resume_main_loop.sig="v";var __emscripten_push_main_loop_blocker=function(e,t,r){e>>>=0,t>>>=0,r>>>=0,MainLoop.queue.push({func:()=>{getWasmTableEntry(e)(t)},name:UTF8ToString(r),counted:!0}),MainLoop.updateStatus()};__emscripten_push_main_loop_blocker.sig="vppp";var __emscripten_push_uncounted_main_loop_blocker=function(e,t,r){e>>>=0,t>>>=0,r>>>=0,MainLoop.queue.push({func:()=>{getWasmTableEntry(e)(t)},name:UTF8ToString(r),counted:!1}),MainLoop.updateStatus()};__emscripten_push_uncounted_main_loop_blocker.sig="vppp";var _emscripten_set_main_loop_expected_blockers=e=>{MainLoop.expectedBlockers=e,MainLoop.remainingBlockers=e,MainLoop.updateStatus()};_emscripten_set_main_loop_expected_blockers.sig="vi";var idsToPromises=(e,t)=>{for(var r=[],n=0;n>>2>>>0];r[n]=getPromise(a)}return r},makePromiseCallback=(e,t)=>r=>{var n=stackSave(),a=stackAlloc(POINTER_SIZE);HEAPU32[a>>>2>>>0]=0;try{var l=getWasmTableEntry(e)(a,t,r),c=HEAPU32[a>>>2>>>0]}catch(_){throw typeof _!="number"?0:_}finally{stackRestore(n)}switch(l){case 0:return c;case 1:return getPromise(c);case 2:var u=getPromise(c);return _emscripten_promise_destroy(c),u;case 3:throw c}};function _emscripten_promise_then(e,t,r,n){e>>>=0,t>>>=0,r>>>=0,n>>>=0;var a=getPromise(e),l=promiseMap.allocate({promise:a.then(makePromiseCallback(t,n),makePromiseCallback(r,n))});return l}_emscripten_promise_then.sig="ppppp";var _emscripten_promise_all=function(e,t,r){e>>>=0,t>>>=0,r>>>=0;var n=idsToPromises(e,r),a=promiseMap.allocate({promise:Promise.all(n).then(l=>{if(t)for(var c=0;c>>2>>>0]=u}return t})});return a};_emscripten_promise_all.sig="pppp";var setPromiseResult=(e,t,r)=>{var n=t?0:3;HEAP32[e>>>2>>>0]=n,HEAPU32[e+4>>>2>>>0]=r},_emscripten_promise_all_settled=function(e,t,r){e>>>=0,t>>>=0,r>>>=0;var n=idsToPromises(e,r),a=promiseMap.allocate({promise:Promise.allSettled(n).then(l=>{if(t)for(var c=t,u=0;u>>=0,t>>>=0,r>>>=0;var n=idsToPromises(e,r),a=promiseMap.allocate({promise:Promise.any(n).catch(l=>{if(t)for(var c=0;c>>2>>>0]=l.errors[c];throw t})});return a};_emscripten_promise_any.sig="pppp";function _emscripten_promise_race(e,t){e>>>=0,t>>>=0;var r=idsToPromises(e,t),n=promiseMap.allocate({promise:Promise.race(r)});return n}_emscripten_promise_race.sig="ppp";function _emscripten_promise_await(e,t){e>>>=0,t>>>=0,abort("emscripten_promise_await is only available with ASYNCIFY")}_emscripten_promise_await.sig="vpp";var getExceptionMessageCommon=e=>{var t=stackSave(),r=stackAlloc(4),n=stackAlloc(4);___get_exception_message(e,r,n);var a=HEAPU32[r>>>2>>>0],l=HEAPU32[n>>>2>>>0],c=UTF8ToString(a);_free(a);var u;return l&&(u=UTF8ToString(l),_free(l)),stackRestore(t),[c,u]},getCppExceptionTag=()=>___cpp_exception,getCppExceptionThrownObjectFromWebAssemblyException=e=>{var t=e.getArg(getCppExceptionTag(),0);return ___thrown_object_from_unwind_exception(t)},incrementExceptionRefcount=e=>{var t=getCppExceptionThrownObjectFromWebAssemblyException(e);___cxa_increment_exception_refcount(t)},decrementExceptionRefcount=e=>{var t=getCppExceptionThrownObjectFromWebAssemblyException(e);___cxa_decrement_exception_refcount(t)},getExceptionMessage=e=>{var t=getCppExceptionThrownObjectFromWebAssemblyException(e);return getExceptionMessageCommon(t)},Browser={useWebGL:!1,isFullscreen:!1,pointerLock:!1,moduleContextCreatedCallbacks:[],workers:[],init(){if(Browser.initted)return;Browser.initted=!0;var e={};e.canHandle=function(l){return!Module.noImageDecoding&&/\.(jpg|jpeg|png|bmp|webp)$/i.test(l)},e.handle=function(l,c,u,_){var d=new Blob([l],{type:Browser.getMimetype(c)});d.size!==l.length&&(d=new Blob([new Uint8Array(l).buffer],{type:Browser.getMimetype(c)}));var f=URL.createObjectURL(d),p=new Image;p.onload=()=>{var m=document.createElement("canvas");m.width=p.width,m.height=p.height;var g=m.getContext("2d");g.drawImage(p,0,0),preloadedImages[c]=m,URL.revokeObjectURL(f),u==null||u(l)},p.onerror=m=>{err("Image ".concat(f," could not be decoded")),_==null||_()},p.src=f},preloadPlugins.push(e);var t={};t.canHandle=function(l){return!Module.noAudioDecoding&&l.substr(-4)in{".ogg":1,".wav":1,".mp3":1}},t.handle=function(l,c,u,_){var d=!1;function f(b){d||(d=!0,preloadedAudios[c]=b,u==null||u(l))}function p(){d||(d=!0,preloadedAudios[c]=new Audio,_==null||_())}var m=new Blob([l],{type:Browser.getMimetype(c)}),g=URL.createObjectURL(m),h=new Audio;h.addEventListener("canplaythrough",()=>f(h),!1),h.onerror=function(y){if(d)return;err("warning: browser could not fully decode audio ".concat(c,", trying slower base64 approach"));function A(F){for(var C="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",x="=",S="",T=0,E=0,w=0;w=6;){var P=T>>E-6&63;E-=6,S+=C[P]}return E==2?(S+=C[(T&3)<<4],S+=x+x):E==4&&(S+=C[(T&15)<<2],S+=x),S}h.src="data:audio/x-"+c.substr(-3)+";base64,"+A(l),f(h)},h.src=g,safeSetTimeout(()=>{f(h)},1e4)},preloadPlugins.push(t);function r(){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",r,!1),document.addEventListener("mozpointerlockchange",r,!1),document.addEventListener("webkitpointerlockchange",r,!1),document.addEventListener("mspointerlockchange",r,!1),Module.elementPointerLock&&n.addEventListener("click",a=>{!Browser.pointerLock&&Module.canvas.requestPointerLock&&(Module.canvas.requestPointerLock(),a.preventDefault())},!1))},createContext(e,t,r,n){if(t&&Module.ctx&&e==Module.canvas)return Module.ctx;var a,l;if(t){var c={antialias:!1,alpha:!1,majorVersion:1};if(n)for(var u in n)c[u]=n[u];typeof GL<"u"&&(l=GL.createContext(e,c),l&&(a=GL.getContext(l).GLctx))}else a=e.getContext("2d");return a?(r&&(Module.ctx=a,t&&GL.makeContextCurrent(l),Browser.useWebGL=t,Browser.moduleContextCreatedCallbacks.forEach(_=>_()),Browser.init()),a):null},fullscreenHandlersInstalled:!1,lockPointer:void 0,resizeCanvas:void 0,requestFullscreen(e,t){Browser.lockPointer=e,Browser.resizeCanvas=t,typeof Browser.lockPointer>"u"&&(Browser.lockPointer=!0),typeof Browser.resizeCanvas>"u"&&(Browser.resizeCanvas=!1);var r=Module.canvas;function n(){var c,u;Browser.isFullscreen=!1;var l=r.parentNode;(document.fullscreenElement||document.mozFullScreenElement||document.msFullscreenElement||document.webkitFullscreenElement||document.webkitCurrentFullScreenElement)===l?(r.exitFullscreen=Browser.exitFullscreen,Browser.lockPointer&&r.requestPointerLock(),Browser.isFullscreen=!0,Browser.resizeCanvas?Browser.setFullscreenCanvasSize():Browser.updateCanvasDimensions(r)):(l.parentNode.insertBefore(r,l),l.parentNode.removeChild(l),Browser.resizeCanvas?Browser.setWindowedCanvasSize():Browser.updateCanvasDimensions(r)),(c=Module.onFullScreen)==null||c.call(Module,Browser.isFullscreen),(u=Module.onFullscreen)==null||u.call(Module,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");r.parentNode.insertBefore(a,r),a.appendChild(r),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},safeSetTimeout(e,t){return safeSetTimeout(e,t)},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 t=0;switch(e.type){case"DOMMouseScroll":t=e.detail/3;break;case"mousewheel":t=e.wheelDelta/120;break;case"wheel":switch(t=e.deltaY,e.deltaMode){case 0:t/=100;break;case 1:t/=3;break;case 2:t*=80;break;default:throw"unrecognized mouse wheel delta mode: "+e.deltaMode}break;default:throw"unrecognized mouse wheel event: "+e.type}return t},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseCoords(e,t){var r=Module.canvas.getBoundingClientRect(),n=Module.canvas.width,a=Module.canvas.height,l=typeof window.scrollX<"u"?window.scrollX:window.pageXOffset,c=typeof window.scrollY<"u"?window.scrollY:window.pageYOffset,u=e-(l+r.left),_=t-(c+r.top);return u=u*(n/r.width),_=_*(a/r.height),{x:u,y:_}},setMouseCoords(e,t){let{x:r,y:n}=Browser.calculateMouseCoords(e,t);Browser.mouseMovementX=r-Browser.mouseX,Browser.mouseMovementY=n-Browser.mouseY,Browser.mouseX=r,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 t=e.touch;if(t===void 0)return;var r=Browser.calculateMouseCoords(t.pageX,t.pageY);if(e.type==="touchstart")Browser.lastTouches[t.identifier]=r,Browser.touches[t.identifier]=r;else if(e.type==="touchend"||e.type==="touchmove"){var n=Browser.touches[t.identifier];n||(n=r),Browser.lastTouches[t.identifier]=n,Browser.touches[t.identifier]=r}return}Browser.setMouseCoords(e.pageX,e.pageY)}},resizeListeners:[],updateResizeListeners(){var e=Module.canvas;Browser.resizeListeners.forEach(t=>t(e.width,e.height))},setCanvasSize(e,t,r){var n=Module.canvas;Browser.updateCanvasDimensions(n,e,t),r||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,t,r){t&&r?(e.widthNative=t,e.heightNative=r):(t=e.widthNative,r=e.heightNative);var n=t,a=r;if(Module.forcedAspectRatio&&Module.forcedAspectRatio>0&&(n/a>>=0,t>>>=0,r>>>=0;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,()=>{t&&getWasmTableEntry(t)(e)},()=>{r&&getWasmTableEntry(r)(e)},!0),0):-1};_emscripten_run_preload_plugins.sig="ippp";var Browser_asyncPrepareDataCounter=0,_emscripten_run_preload_plugins_data=function(e,t,r,n,a,l){e>>>=0,r>>>=0,n>>>=0,a>>>=0,l>>>=0;var c=UTF8ToString(r),u="prepare_data_"+Browser_asyncPrepareDataCounter+++"."+c,_=stringToNewUTF8(u);FS.createPreloadedFile("/",u,HEAPU8.subarray(e>>>0,e+t>>>0),!0,!0,()=>{a&&getWasmTableEntry(a)(n,_)},()=>{l&&getWasmTableEntry(l)(n)},!0)};_emscripten_run_preload_plugins_data.sig="vpipppp";var _emscripten_async_run_script=function(e,t){e>>>=0,safeSetTimeout(()=>_emscripten_run_script(e),t)};_emscripten_async_run_script.sig="vpi";var _emscripten_async_load_script=function(url,onload,onerror){url>>>=0,onload>>>=0,onerror>>>=0,url=UTF8ToString(url);var loadDone=()=>{if(onload){var e=()=>callUserCallback(getWasmTableEntry(onload));runDependencies>0?dependenciesFulfilled=e:e()}},loadError=()=>{onerror&&callUserCallback(getWasmTableEntry(onerror))};if(ENVIRONMENT_IS_NODE){readAsync(url,!1).then(data=>{eval(data),loadDone()},loadError);return}var script=document.createElement("script");script.onload=loadDone,script.onerror=loadError,script.src=url,document.body.appendChild(script)};_emscripten_async_load_script.sig="vppp";var safeRequestAnimationFrame=e=>MainLoop.requestAnimationFrame(()=>{callUserCallback(e)});function _emscripten_async_call(e,t,r){e>>>=0,t>>>=0;function n(){getWasmTableEntry(e)(t)}r>=0||ENVIRONMENT_IS_NODE?safeSetTimeout(n,r):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,t){e>>>=0,t>>>=0,HEAP32[e>>>2>>>0]=screen.width,HEAP32[t>>>2>>>0]=screen.height}_emscripten_get_screen_size.sig="vpp";var _emscripten_hide_mouse=()=>{for(var e=document.styleSheets[0],t=e.cssRules,r=0;r{Browser.setCanvasSize(e,t)};_emscripten_set_canvas_size.sig="vii";function _emscripten_get_canvas_size(e,t,r){e>>>=0,t>>>=0,r>>>=0;var n=Module.canvas;HEAP32[e>>>2>>>0]=n.width,HEAP32[t>>>2>>>0]=n.height,HEAP32[r>>>2>>>0]=Browser.isFullscreen?1:0}_emscripten_get_canvas_size.sig="vppp";function _emscripten_create_worker(e){e>>>=0,e=UTF8ToString(e);var t=Browser.workers.length,r={worker:new Worker(e),callbacks:[],awaited:0,buffer:0,bufferSize:0};return r.worker.onmessage=function(a){if(!ABORT){var l=Browser.workers[t];if(l){var c=a.data.callbackId,u=l.callbacks[c];if(u){a.data.finalResponse&&(l.awaited--,l.callbacks[c]=null);var _=a.data.data;_?(_.byteLength||(_=new Uint8Array(_)),(!l.buffer||l.bufferSize<_.length)&&(l.buffer&&_free(l.buffer),l.bufferSize=_.length,l.buffer=_malloc(_.length)),HEAPU8.set(_,l.buffer>>>0),u.func(l.buffer,_.length,u.arg)):u.func(0,0,u.arg)}}}},Browser.workers.push(r),t}_emscripten_create_worker.sig="ip";var _emscripten_destroy_worker=e=>{var t=Browser.workers[e];t.worker.terminate(),t.buffer&&_free(t.buffer),Browser.workers[e]=null};_emscripten_destroy_worker.sig="vi";function _emscripten_call_worker(e,t,r,n,a,l){t>>>=0,r>>>=0,a>>>=0,l>>>=0,t=UTF8ToString(t);var c=Browser.workers[e],u=-1;a&&(u=c.callbacks.length,c.callbacks.push({func:getWasmTableEntry(a),arg:l}),c.awaited++);var _={funcName:t,callbackId:u,data:r?new Uint8Array(HEAPU8.subarray(r>>>0,r+n>>>0)):0};r?c.worker.postMessage(_,[_.data.buffer]):c.worker.postMessage(_)}_emscripten_call_worker.sig="vippipp";var _emscripten_get_worker_queue_size=e=>{var t=Browser.workers[e];return t?t.awaited:-1};_emscripten_get_worker_queue_size.sig="ii";var getPreloadedImageData=(e,t,r)=>{e=PATH_FS.resolve(e);var n=preloadedImages[e];if(!n)return 0;var a=n.getContext("2d"),l=a.getImageData(0,0,n.width,n.height),c=_malloc(n.width*n.height*4);return HEAPU8.set(l.data,c>>>0),HEAP32[t>>>2>>>0]=n.width,HEAP32[r>>>2>>>0]=n.height,c};function _emscripten_get_preloaded_image_data(e,t,r){return e>>>=0,t>>>=0,r>>>=0,getPreloadedImageData(UTF8ToString(e),t,r)}_emscripten_get_preloaded_image_data.sig="pppp";var getPreloadedImageData__data=["$PATH_FS","malloc"];function _emscripten_get_preloaded_image_data_from_FILE(e,t,r){e>>>=0,t>>>=0,r>>>=0;var n=_fileno(e),a=FS.getStream(n);return a?getPreloadedImageData(a.path,t,r):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,t)=>FS.mkdirTree(e,t),FS_unlink=e=>FS.unlink(e),_emscripten_async_wget=function(e,t,r,n){e>>>=0,t>>>=0,r>>>=0,n>>>=0;var a=UTF8ToString(e),l=UTF8ToString(t);l=PATH_FS.resolve(l);function c(_){_&&callUserCallback(()=>{var d=stackSave();getWasmTableEntry(_)(stringToUTF8OnStack(l)),stackRestore(d)})}var u=PATH.dirname(l);FS_createPreloadedFile(u,PATH.basename(l),a,!0,!0,()=>c(r),()=>c(n),!1,!1,()=>{try{FS_unlink(l)}catch(_){}FS_mkdirTree(u)})};_emscripten_async_wget.sig="vpppp";var _emscripten_async_wget_data=function(e,t,r,n){e>>>=0,t>>>=0,r>>>=0,n>>>=0,asyncLoad(UTF8ToString(e),a=>{callUserCallback(()=>{var l=_malloc(a.length);HEAPU8.set(a,l>>>0),getWasmTableEntry(r)(t,l,a.length),_free(l)})},()=>{n&&callUserCallback(()=>{getWasmTableEntry(n)(t)})},!0)};_emscripten_async_wget_data.sig="vpppp";var _emscripten_async_wget2=function(e,t,r,n,a,l,c,u){e>>>=0,t>>>=0,r>>>=0,n>>>=0,a>>>=0,l>>>=0,c>>>=0,u>>>=0;var _=UTF8ToString(e),d=UTF8ToString(t);d=PATH_FS.resolve(d);var f=UTF8ToString(r),p=UTF8ToString(n),m=d.lastIndexOf("/"),g=new XMLHttpRequest;g.open(f,_,!0),g.responseType="arraybuffer";var h=wget.getNextWgetRequestHandle(),b=PATH.dirname(d);return g.onload=y=>{if(g.status>=200&&g.status<300){try{FS.unlink(d)}catch(F){}if(FS.mkdirTree(b),FS.createDataFile(d.substr(0,m),d.substr(m+1),new Uint8Array(g.response),!0,!0,!1),l){var A=stackSave();getWasmTableEntry(l)(h,a,stringToUTF8OnStack(d)),stackRestore(A)}}else c&&getWasmTableEntry(c)(h,a,g.status);delete wget.wgetRequests[h]},g.onerror=y=>{c&&getWasmTableEntry(c)(h,a,g.status),delete wget.wgetRequests[h]},g.onprogress=y=>{if(y.lengthComputable||y.lengthComputable===void 0&&y.total!=0){var A=y.loaded/y.total*100;u&&getWasmTableEntry(u)(h,a,A)}},g.onabort=y=>{delete wget.wgetRequests[h]},f=="POST"?(g.setRequestHeader("Content-type","application/x-www-form-urlencoded"),g.send(p)):g.send(null),wget.wgetRequests[h]=g,h};_emscripten_async_wget2.sig="ipppppppp";function _emscripten_async_wget2_data(e,t,r,n,a,l,c,u){e>>>=0,t>>>=0,r>>>=0,n>>>=0,l>>>=0,c>>>=0,u>>>=0;var _=UTF8ToString(e),d=UTF8ToString(t),f=UTF8ToString(r),p=new XMLHttpRequest;p.open(d,_,!0),p.responseType="arraybuffer";var m=wget.getNextWgetRequestHandle();function g(){if(c){var h=stackSave(),b=0;p.statusText&&(b=stringToUTF8OnStack(p.statusText)),getWasmTableEntry(c)(m,n,p.status,b),stackRestore(h)}}return p.onload=h=>{if(p.status>=200&&p.status<300||p.status===0&&_.substr(0,4).toLowerCase()!="http"){var b=new Uint8Array(p.response),y=_malloc(b.length);HEAPU8.set(b,y>>>0),l&&getWasmTableEntry(l)(m,n,y,b.length),a&&_free(y)}else g();delete wget.wgetRequests[m]},p.onerror=h=>{g(),delete wget.wgetRequests[m]},p.onprogress=h=>{u&&getWasmTableEntry(u)(m,n,h.loaded,h.lengthComputable||h.lengthComputable===void 0?h.total:0)},p.onabort=h=>{delete wget.wgetRequests[m]},d=="POST"?(p.setRequestHeader("Content-type","application/x-www-form-urlencoded"),p.send(f)):p.send(null),wget.wgetRequests[m]=p,m}_emscripten_async_wget2_data.sig="ippppippp";var _emscripten_async_wget2_abort=e=>{var t=wget.wgetRequests[e];t==null||t.abort()};_emscripten_async_wget2_abort.sig="vi";function ___asctime_r(e,t){e>>>=0,t>>>=0;var r={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"],l=n[r.tm_wday]+" "+a[r.tm_mon]+(r.tm_mday<10?" ":" ")+r.tm_mday+(r.tm_hour<10?" 0":" ")+r.tm_hour+(r.tm_min<10?":0":":")+r.tm_min+(r.tm_sec<10?":0":":")+r.tm_sec+" "+(1900+r.tm_year)+"\n";return stringToUTF8(l,t,26),t}___asctime_r.sig="ppp";function _strptime_l(e,t,r,n){return e>>>=0,t>>>=0,r>>>=0,n>>>=0,_strptime(e,t,r)}_strptime_l.sig="ppppp";function ___syscall_shutdown(e,t){try{return getSocketFromFD(e),-52}catch(r){if(typeof FS>"u"||r.name!=="ErrnoError")throw r;return-r.errno}}Module.___syscall_shutdown=___syscall_shutdown,___syscall_shutdown.sig="iiiiiii";function __dlsym_catchup_js(e,t){e>>>=0;var r=LDSO.loadedLibsByHandle[e],n=r.exports,a=Object.keys(n)[t],l=n[a],c=addFunction(l,l.sig);return c}__dlsym_catchup_js.sig="ppi";var FS_createPath=FS.createPath,FS_createDevice=FS.createDevice,FS_readFile=FS.readFile,FS_createLazyFile=FS.createLazyFile,_setNetworkCallback=(e,t,r)=>{function n(a){try{if(e==="error"){var l=stackSave(),c=stringToUTF8OnStack(a[2]);getWasmTableEntry(r)(a[0],a[1],c,t),stackRestore(l)}else getWasmTableEntry(r)(a,t)}catch(u){if(!(u instanceof ExitStatus))throw u&&typeof u=="object"&&u.stack&&err("exception thrown: "+[u,u.stack]),u}}SOCKFS.on(e,r?n:null)};function _emscripten_set_socket_error_callback(e,t){e>>>=0,t>>>=0,_setNetworkCallback("error",e,t)}_emscripten_set_socket_error_callback.sig="vpp";function _emscripten_set_socket_open_callback(e,t){e>>>=0,t>>>=0,_setNetworkCallback("open",e,t)}_emscripten_set_socket_open_callback.sig="vpp";function _emscripten_set_socket_listen_callback(e,t){e>>>=0,t>>>=0,_setNetworkCallback("listen",e,t)}_emscripten_set_socket_listen_callback.sig="vpp";function _emscripten_set_socket_connection_callback(e,t){e>>>=0,t>>>=0,_setNetworkCallback("connection",e,t)}_emscripten_set_socket_connection_callback.sig="vpp";function _emscripten_set_socket_message_callback(e,t){e>>>=0,t>>>=0,_setNetworkCallback("message",e,t)}_emscripten_set_socket_message_callback.sig="vpp";function _emscripten_set_socket_close_callback(e,t){e>>>=0,t>>>=0,_setNetworkCallback("close",e,t)}_emscripten_set_socket_close_callback.sig="vpp";function _emscripten_webgl_enable_ANGLE_instanced_arrays(e){return e>>>=0,webgl_enable_ANGLE_instanced_arrays(GL.contexts[e].GLctx)}_emscripten_webgl_enable_ANGLE_instanced_arrays.sig="ip";function _emscripten_webgl_enable_OES_vertex_array_object(e){return e>>>=0,webgl_enable_OES_vertex_array_object(GL.contexts[e].GLctx)}_emscripten_webgl_enable_OES_vertex_array_object.sig="ip";function _emscripten_webgl_enable_WEBGL_draw_buffers(e){return e>>>=0,webgl_enable_WEBGL_draw_buffers(GL.contexts[e].GLctx)}_emscripten_webgl_enable_WEBGL_draw_buffers.sig="ip";function _emscripten_webgl_enable_WEBGL_multi_draw(e){return e>>>=0,webgl_enable_WEBGL_multi_draw(GL.contexts[e].GLctx)}_emscripten_webgl_enable_WEBGL_multi_draw.sig="ip";function _emscripten_webgl_enable_EXT_polygon_offset_clamp(e){return e>>>=0,webgl_enable_EXT_polygon_offset_clamp(GL.contexts[e].GLctx)}_emscripten_webgl_enable_EXT_polygon_offset_clamp.sig="ip";function _emscripten_webgl_enable_EXT_clip_control(e){return e>>>=0,webgl_enable_EXT_clip_control(GL.contexts[e].GLctx)}_emscripten_webgl_enable_EXT_clip_control.sig="ip";function _emscripten_webgl_enable_WEBGL_polygon_mode(e){return e>>>=0,webgl_enable_WEBGL_polygon_mode(GL.contexts[e].GLctx)}_emscripten_webgl_enable_WEBGL_polygon_mode.sig="ip";function _glVertexPointer(e,t,r,n){throw n>>>=0,"Legacy GL function (glVertexPointer) called. If you want legacy GL emulation, you need to compile with -sLEGACY_GL_EMULATION to enable legacy GL emulation."}_glVertexPointer.sig="viiip";var _glMatrixMode=()=>{throw"Legacy GL function (glMatrixMode) called. If you want legacy GL emulation, you need to compile with -sLEGACY_GL_EMULATION to enable legacy GL emulation."};_glMatrixMode.sig="vi";var _glBegin=()=>{throw"Legacy GL function (glBegin) called. If you want legacy GL emulation, you need to compile with -sLEGACY_GL_EMULATION to enable legacy GL emulation."};_glBegin.sig="vi";var _glLoadIdentity=()=>{throw"Legacy GL function (glLoadIdentity) called. If you want legacy GL emulation, you need to compile with -sLEGACY_GL_EMULATION to enable legacy GL emulation."};_glLoadIdentity.sig="v";var _glVertexAttribDivisorNV=_glVertexAttribDivisor,_glDrawArraysInstancedNV=_glDrawArraysInstanced,_glDrawElementsInstancedNV=_glDrawElementsInstanced,_glVertexAttribDivisorEXT=_glVertexAttribDivisor,_glDrawArraysInstancedEXT=_glDrawArraysInstanced,_glDrawElementsInstancedEXT=_glDrawElementsInstanced,_glVertexAttribDivisorARB=_glVertexAttribDivisor,_glDrawArraysInstancedARB=_glDrawArraysInstanced,_glDrawElementsInstancedARB=_glDrawElementsInstanced,_glDrawBuffersEXT=_glDrawBuffers;function _glMultiDrawArraysWEBGL(e,t,r,n){t>>>=0,r>>>=0,GLctx.multiDrawWebgl.multiDrawArraysWEBGL(e,HEAP32,t>>>2,HEAP32,r>>>2,n)}_glMultiDrawArraysWEBGL.sig="vippi";var _glMultiDrawArrays=_glMultiDrawArraysWEBGL;_glMultiDrawArrays.sig="vippi";var _glMultiDrawArraysANGLE=_glMultiDrawArraysWEBGL;function _glMultiDrawArraysInstancedWEBGL(e,t,r,n,a){t>>>=0,r>>>=0,n>>>=0,GLctx.multiDrawWebgl.multiDrawArraysInstancedWEBGL(e,HEAP32,t>>>2,HEAP32,r>>>2,HEAP32,n>>>2,a)}_glMultiDrawArraysInstancedWEBGL.sig="vipppi";var _glMultiDrawArraysInstancedANGLE=_glMultiDrawArraysInstancedWEBGL;function _glMultiDrawElementsWEBGL(e,t,r,n,a){t>>>=0,n>>>=0,GLctx.multiDrawWebgl.multiDrawElementsWEBGL(e,HEAP32,t>>>2,r,HEAP32,n>>>2,a)}_glMultiDrawElementsWEBGL.sig="vipipi";var _glMultiDrawElements=_glMultiDrawElementsWEBGL;_glMultiDrawElements.sig="vipipi";var _glMultiDrawElementsANGLE=_glMultiDrawElementsWEBGL;function _glMultiDrawElementsInstancedWEBGL(e,t,r,n,a,l){t>>>=0,n>>>=0,a>>>=0,GLctx.multiDrawWebgl.multiDrawElementsInstancedWEBGL(e,HEAP32,t>>>2,r,HEAP32,n>>>2,HEAP32,a>>>2,l)}_glMultiDrawElementsInstancedWEBGL.sig="vipippi";var _glMultiDrawElementsInstancedANGLE=_glMultiDrawElementsInstancedWEBGL,_glClearDepth=e=>GLctx.clearDepth(e);_glClearDepth.sig="vd";var _glDepthRange=(e,t)=>GLctx.depthRange(e,t);_glDepthRange.sig="vdd";var _emscripten_glGenVertexArrays=_glGenVertexArrays;_emscripten_glGenVertexArrays.sig="vip";var _emscripten_glDeleteVertexArrays=_glDeleteVertexArrays;_emscripten_glDeleteVertexArrays.sig="vip";var _emscripten_glBindVertexArray=_glBindVertexArray;_emscripten_glBindVertexArray.sig="vi";var _emscripten_glIsVertexArray=_glIsVertexArray;_emscripten_glIsVertexArray.sig="ii";var _emscripten_glVertexPointer=_glVertexPointer;_emscripten_glVertexPointer.sig="viiip";var _emscripten_glMatrixMode=_glMatrixMode;_emscripten_glMatrixMode.sig="vi";var _emscripten_glBegin=_glBegin;_emscripten_glBegin.sig="vi";var _emscripten_glLoadIdentity=_glLoadIdentity;_emscripten_glLoadIdentity.sig="v";var _emscripten_glVertexAttribDivisor=_glVertexAttribDivisor;_emscripten_glVertexAttribDivisor.sig="vii";var _emscripten_glDrawArraysInstanced=_glDrawArraysInstanced;_emscripten_glDrawArraysInstanced.sig="viiii";var _emscripten_glDrawElementsInstanced=_glDrawElementsInstanced;_emscripten_glDrawElementsInstanced.sig="viiipi";var _emscripten_glVertexAttribDivisorNV=_glVertexAttribDivisorNV,_emscripten_glDrawArraysInstancedNV=_glDrawArraysInstancedNV,_emscripten_glDrawElementsInstancedNV=_glDrawElementsInstancedNV,_emscripten_glVertexAttribDivisorEXT=_glVertexAttribDivisorEXT,_emscripten_glDrawArraysInstancedEXT=_glDrawArraysInstancedEXT,_emscripten_glDrawElementsInstancedEXT=_glDrawElementsInstancedEXT,_emscripten_glVertexAttribDivisorARB=_glVertexAttribDivisorARB,_emscripten_glDrawArraysInstancedARB=_glDrawArraysInstancedARB,_emscripten_glDrawElementsInstancedARB=_glDrawElementsInstancedARB,_emscripten_glDrawBuffers=_glDrawBuffers;_emscripten_glDrawBuffers.sig="vip";var _emscripten_glDrawBuffersEXT=_glDrawBuffersEXT,_emscripten_glMultiDrawArrays=_glMultiDrawArrays;_emscripten_glMultiDrawArrays.sig="vippi";var _emscripten_glMultiDrawArraysANGLE=_glMultiDrawArraysANGLE,_emscripten_glMultiDrawArraysWEBGL=_glMultiDrawArraysWEBGL,_emscripten_glMultiDrawArraysInstancedANGLE=_glMultiDrawArraysInstancedANGLE,_emscripten_glMultiDrawArraysInstancedWEBGL=_glMultiDrawArraysInstancedWEBGL,_emscripten_glMultiDrawElements=_glMultiDrawElements;_emscripten_glMultiDrawElements.sig="vipipi";var _emscripten_glMultiDrawElementsANGLE=_glMultiDrawElementsANGLE,_emscripten_glMultiDrawElementsWEBGL=_glMultiDrawElementsWEBGL,_emscripten_glMultiDrawElementsInstancedANGLE=_glMultiDrawElementsInstancedANGLE,_emscripten_glMultiDrawElementsInstancedWEBGL=_glMultiDrawElementsInstancedWEBGL,_emscripten_glClearDepth=_glClearDepth;_emscripten_glClearDepth.sig="vd";var _emscripten_glDepthRange=_glDepthRange;_emscripten_glDepthRange.sig="vdd";var writeGLArray=(e,t,r,n)=>{var a=e.length,l=r>>2;for(var u=0;u>>0]=e[u];return a},webglPowerPreferences=["default","low-power","high-performance"];function _emscripten_webgl_do_create_context(e,t){e>>>=0,t>>>=0;var r=t>>>2,n=HEAP32[r+2>>>0],a={alpha:!!HEAP8[t+0>>>0],depth:!!HEAP8[t+1>>>0],stencil:!!HEAP8[t+2>>>0],antialias:!!HEAP8[t+3>>>0],premultipliedAlpha:!!HEAP8[t+4>>>0],preserveDrawingBuffer:!!HEAP8[t+5>>>0],powerPreference:webglPowerPreferences[n],failIfMajorPerformanceCaveat:!!HEAP8[t+12>>>0],majorVersion:HEAP32[r+4>>>0],minorVersion:HEAP32[r+5>>>0],enableExtensionsByDefault:HEAP8[t+24>>>0],explicitSwapControl:HEAP8[t+25>>>0],proxyContextToMainThread:HEAP32[r+7>>>0],renderViaOffscreenBackBuffer:HEAP8[t+32>>>0]},l=findCanvasEventTarget(e);if(!l||a.explicitSwapControl)return 0;var c=GL.createContext(l,a);return c}_emscripten_webgl_do_create_context.sig="ppp";var _emscripten_webgl_create_context=_emscripten_webgl_do_create_context;_emscripten_webgl_create_context.sig="ppp";function _emscripten_webgl_do_get_current_context(){return GL.currentContext?GL.currentContext.handle:0}_emscripten_webgl_do_get_current_context.sig="p";var _emscripten_webgl_get_current_context=_emscripten_webgl_do_get_current_context;_emscripten_webgl_get_current_context.sig="p";var _emscripten_webgl_do_commit_frame=()=>!GL.currentContext||!GL.currentContext.GLctx||!GL.currentContext.attributes.explicitSwapControl?-3:0;_emscripten_webgl_do_commit_frame.sig="i";var _emscripten_webgl_commit_frame=_emscripten_webgl_do_commit_frame;_emscripten_webgl_commit_frame.sig="i";function _emscripten_webgl_make_context_current(e){e>>>=0;var t=GL.makeContextCurrent(e);return t?0:-5}_emscripten_webgl_make_context_current.sig="ip";function _emscripten_webgl_get_drawing_buffer_size(e,t,r){e>>>=0,t>>>=0,r>>>=0;var n=GL.getContext(e);return!n||!n.GLctx||!t||!r?-5:(HEAP32[t>>>2>>>0]=n.GLctx.drawingBufferWidth,HEAP32[r>>>2>>>0]=n.GLctx.drawingBufferHeight,0)}_emscripten_webgl_get_drawing_buffer_size.sig="ippp";function _emscripten_webgl_get_context_attributes(e,t){if(e>>>=0,t>>>=0,!t)return-5;if(e=GL.contexts[e],!e)return-3;var r=e.GLctx;if(!r)return-3;r=r.getContextAttributes(),HEAP8[t>>>0]=r.alpha,HEAP8[t+1>>>0]=r.depth,HEAP8[t+2>>>0]=r.stencil,HEAP8[t+3>>>0]=r.antialias,HEAP8[t+4>>>0]=r.premultipliedAlpha,HEAP8[t+5>>>0]=r.preserveDrawingBuffer;var n=r.powerPreference&&webglPowerPreferences.indexOf(r.powerPreference);return HEAP32[t+8>>>2>>>0]=n,HEAP8[t+12>>>0]=r.failIfMajorPerformanceCaveat,HEAP32[t+16>>>2>>>0]=e.version,HEAP32[t+20>>>2>>>0]=0,HEAP8[t+24>>>0]=e.attributes.enableExtensionsByDefault,0}_emscripten_webgl_get_context_attributes.sig="ipp";function _emscripten_webgl_destroy_context(e){e>>>=0,GL.currentContext==e&&(GL.currentContext=0),GL.deleteContext(e)}_emscripten_webgl_destroy_context.sig="ip";function _emscripten_webgl_enable_extension(e,t){e>>>=0,t>>>=0;var r=GL.getContext(e),n=UTF8ToString(t);n.startsWith("GL_")&&(n=n.substr(3)),n=="ANGLE_instanced_arrays"&&webgl_enable_ANGLE_instanced_arrays(GLctx),n=="OES_vertex_array_object"&&webgl_enable_OES_vertex_array_object(GLctx),n=="WEBGL_draw_buffers"&&webgl_enable_WEBGL_draw_buffers(GLctx),n=="WEBGL_multi_draw"&&webgl_enable_WEBGL_multi_draw(GLctx),n=="EXT_polygon_offset_clamp"&&webgl_enable_EXT_polygon_offset_clamp(GLctx),n=="EXT_clip_control"&&webgl_enable_EXT_clip_control(GLctx),n=="WEBGL_polygon_mode"&&webgl_enable_WEBGL_polygon_mode(GLctx);var a=r.GLctx.getExtension(n);return!!a}_emscripten_webgl_enable_extension.sig="ipp";var _emscripten_supports_offscreencanvas=()=>0;_emscripten_supports_offscreencanvas.sig="i";var registerWebGlEventCallback=(e,t,r,n,a,l,c)=>{var u=(d=event)=>{getWasmTableEntry(n)(a,0,t)&&d.preventDefault()},_={target:findEventTarget(e),eventTypeString:l,callbackfunc:n,handlerFunc:u,useCapture:r};JSEvents.registerOrRemoveHandler(_)};function _emscripten_set_webglcontextlost_callback_on_thread(e,t,r,n,a){return e>>>=0,t>>>=0,n>>>=0,a>>>=0,registerWebGlEventCallback(e,t,r,n,31,"webglcontextlost",a),0}_emscripten_set_webglcontextlost_callback_on_thread.sig="ippipp";function _emscripten_set_webglcontextrestored_callback_on_thread(e,t,r,n,a){return e>>>=0,t>>>=0,n>>>=0,a>>>=0,registerWebGlEventCallback(e,t,r,n,32,"webglcontextrestored",a),0}_emscripten_set_webglcontextrestored_callback_on_thread.sig="ippipp";function _emscripten_is_webgl_context_lost(e){return e>>>=0,!GL.contexts[e]||GL.contexts[e].GLctx.isContextLost()}_emscripten_is_webgl_context_lost.sig="ip";function _emscripten_webgl_get_supported_extensions(){return stringToNewUTF8(GLctx.getSupportedExtensions().join(" "))}_emscripten_webgl_get_supported_extensions.sig="p";var _emscripten_webgl_get_program_parameter_d=(e,t)=>GLctx.getProgramParameter(GL.programs[e],t);_emscripten_webgl_get_program_parameter_d.sig="dii";function _emscripten_webgl_get_program_info_log_utf8(e){return stringToNewUTF8(GLctx.getProgramInfoLog(GL.programs[e]))}_emscripten_webgl_get_program_info_log_utf8.sig="pi";var _emscripten_webgl_get_shader_parameter_d=(e,t)=>GLctx.getShaderParameter(GL.shaders[e],t);_emscripten_webgl_get_shader_parameter_d.sig="dii";function _emscripten_webgl_get_shader_info_log_utf8(e){return stringToNewUTF8(GLctx.getShaderInfoLog(GL.shaders[e]))}_emscripten_webgl_get_shader_info_log_utf8.sig="pi";function _emscripten_webgl_get_shader_source_utf8(e){return stringToNewUTF8(GLctx.getShaderSource(GL.shaders[e]))}_emscripten_webgl_get_shader_source_utf8.sig="pi";var _emscripten_webgl_get_vertex_attrib_d=(e,t)=>GLctx.getVertexAttrib(e,t);_emscripten_webgl_get_vertex_attrib_d.sig="dii";var _emscripten_webgl_get_vertex_attrib_o=(e,t)=>{var r=GLctx.getVertexAttrib(e,t);return r==null?void 0:r.name};_emscripten_webgl_get_vertex_attrib_o.sig="iii";function _emscripten_webgl_get_vertex_attrib_v(e,t,r,n,a){return r>>>=0,writeGLArray(GLctx.getVertexAttrib(e,t),r,n,a)}_emscripten_webgl_get_vertex_attrib_v.sig="iiipii";var _emscripten_webgl_get_uniform_d=(e,t)=>GLctx.getUniform(GL.programs[e],webglGetUniformLocation(t));_emscripten_webgl_get_uniform_d.sig="dii";function _emscripten_webgl_get_uniform_v(e,t,r,n,a){return r>>>=0,writeGLArray(GLctx.getUniform(GL.programs[e],webglGetUniformLocation(t)),r,n,a)}_emscripten_webgl_get_uniform_v.sig="iiipii";function _emscripten_webgl_get_parameter_v(e,t,r,n){return t>>>=0,writeGLArray(GLctx.getParameter(e),t,r,n)}_emscripten_webgl_get_parameter_v.sig="iipii";var _emscripten_webgl_get_parameter_d=e=>GLctx.getParameter(e);_emscripten_webgl_get_parameter_d.sig="di";var _emscripten_webgl_get_parameter_o=e=>{var t=GLctx.getParameter(e);return t==null?void 0:t.name};_emscripten_webgl_get_parameter_o.sig="ii";function _emscripten_webgl_get_parameter_utf8(e){return stringToNewUTF8(GLctx.getParameter(e))}_emscripten_webgl_get_parameter_utf8.sig="pi";function _emscripten_webgl_get_parameter_i64v(e,t){return t>>>=0,writeI53ToI64(t,GLctx.getParameter(e))}_emscripten_webgl_get_parameter_i64v.sig="vip";var _glutPostRedisplay=()=>{GLUT.displayFunc&&!GLUT.requestedAnimationFrame&&(GLUT.requestedAnimationFrame=!0,MainLoop.requestAnimationFrame(()=>{GLUT.requestedAnimationFrame=!1,MainLoop.runIter(()=>getWasmTableEntry(GLUT.displayFunc)())}))};_glutPostRedisplay.sig="v";var GLUT={initTime:null,idleFunc:null,displayFunc:null,keyboardFunc:null,keyboardUpFunc:null,specialFunc:null,specialUpFunc:null,reshapeFunc:null,motionFunc:null,passiveMotionFunc:null,mouseFunc:null,buttons:0,modifiers:0,initWindowWidth:256,initWindowHeight:256,initDisplayMode:18,windowX:0,windowY:0,windowWidth:0,windowHeight:0,requestedAnimationFrame:!1,saveModifiers:e=>{GLUT.modifiers=0,e.shiftKey&&(GLUT.modifiers+=1),e.ctrlKey&&(GLUT.modifiers+=2),e.altKey&&(GLUT.modifiers+=4)},onMousemove:e=>{var t=Browser.mouseX,r=Browser.mouseY;Browser.calculateMouseEvent(e);var n=Browser.mouseX,a=Browser.mouseY;n==t&&a==r||(GLUT.buttons==0&&e.target==Module.canvas&&GLUT.passiveMotionFunc?(e.preventDefault(),GLUT.saveModifiers(e),getWasmTableEntry(GLUT.passiveMotionFunc)(t,r)):GLUT.buttons!=0&&GLUT.motionFunc&&(e.preventDefault(),GLUT.saveModifiers(e),getWasmTableEntry(GLUT.motionFunc)(t,r)))},getSpecialKey:e=>{var t=null;switch(e){case 8:t=120;break;case 46:t=111;break;case 112:t=1;break;case 113:t=2;break;case 114:t=3;break;case 115:t=4;break;case 116:t=5;break;case 117:t=6;break;case 118:t=7;break;case 119:t=8;break;case 120:t=9;break;case 121:t=10;break;case 122:t=11;break;case 123:t=12;break;case 37:t=100;break;case 38:t=101;break;case 39:t=102;break;case 40:t=103;break;case 33:t=104;break;case 34:t=105;break;case 36:t=106;break;case 35:t=107;break;case 45:t=108;break;case 16:case 5:t=112;break;case 6:t=113;break;case 17:case 3:t=114;break;case 4:t=115;break;case 18:case 2:t=116;break;case 1:t=117;break}return t},getASCIIKey:e=>{if(e.ctrlKey||e.altKey||e.metaKey)return null;var t=e.keyCode;if(48<=t&&t<=57)return t;if(65<=t&&t<=90)return e.shiftKey?t:t+32;if(96<=t&&t<=105)return t-48;if(106<=t&&t<=111)return t-106+42;switch(t){case 9:case 13:case 27:case 32:case 61:return t}var r=e.shiftKey;switch(t){case 186:return r?58:59;case 187:return r?43:61;case 188:return r?60:44;case 189:return r?95:45;case 190:return r?62:46;case 191:return r?63:47;case 219:return r?123:91;case 220:return r?124:47;case 221:return r?125:93;case 222:return r?34:39}return null},onKeydown:e=>{if(GLUT.specialFunc||GLUT.keyboardFunc){var t=GLUT.getSpecialKey(e.keyCode);t!==null?GLUT.specialFunc&&(e.preventDefault(),GLUT.saveModifiers(e),getWasmTableEntry(GLUT.specialFunc)(t,Browser.mouseX,Browser.mouseY)):(t=GLUT.getASCIIKey(e),t!==null&&GLUT.keyboardFunc&&(e.preventDefault(),GLUT.saveModifiers(e),getWasmTableEntry(GLUT.keyboardFunc)(t,Browser.mouseX,Browser.mouseY)))}},onKeyup:e=>{if(GLUT.specialUpFunc||GLUT.keyboardUpFunc){var t=GLUT.getSpecialKey(e.keyCode);t!==null?GLUT.specialUpFunc&&(e.preventDefault(),GLUT.saveModifiers(e),getWasmTableEntry(GLUT.specialUpFunc)(t,Browser.mouseX,Browser.mouseY)):(t=GLUT.getASCIIKey(e),t!==null&&GLUT.keyboardUpFunc&&(e.preventDefault(),GLUT.saveModifiers(e),getWasmTableEntry(GLUT.keyboardUpFunc)(t,Browser.mouseX,Browser.mouseY)))}},touchHandler:e=>{if(e.target==Module.canvas){var t=e.changedTouches,r=t[0],n="";switch(e.type){case"touchstart":n="mousedown";break;case"touchmove":n="mousemove";break;case"touchend":n="mouseup";break;default:return}var a=document.createEvent("MouseEvent");a.initMouseEvent(n,!0,!0,window,1,r.screenX,r.screenY,r.clientX,r.clientY,!1,!1,!1,!1,0,null),r.target.dispatchEvent(a),e.preventDefault()}},onMouseButtonDown:e=>{if(Browser.calculateMouseEvent(e),GLUT.buttons|=1<{Browser.calculateMouseEvent(e),GLUT.buttons&=~(1<{Browser.calculateMouseEvent(e);var t=window.event||e,r=-Browser.getMouseWheelDelta(e);r=r==0?0:r>0?Math.max(r,1):Math.min(r,-1);var n=3;r<0&&(n=4),GLUT.mouseFunc&&(e.preventDefault(),GLUT.saveModifiers(e),getWasmTableEntry(GLUT.mouseFunc)(n,0,Browser.mouseX,Browser.mouseY))},onFullscreenEventChange:e=>{var t,r;document.fullscreen||document.fullScreen||document.mozFullScreen||document.webkitIsFullScreen?(t=screen.width,r=screen.height):(t=GLUT.windowWidth,r=GLUT.windowHeight,document.removeEventListener("fullscreenchange",GLUT.onFullscreenEventChange,!0),document.removeEventListener("mozfullscreenchange",GLUT.onFullscreenEventChange,!0),document.removeEventListener("webkitfullscreenchange",GLUT.onFullscreenEventChange,!0)),Browser.setCanvasSize(t,r,!0),GLUT.reshapeFunc&&getWasmTableEntry(GLUT.reshapeFunc)(t,r),_glutPostRedisplay()}},_glutGetModifiers=()=>GLUT.modifiers;_glutGetModifiers.sig="i";function _glutInit(e,t){e>>>=0,t>>>=0,GLUT.initTime=Date.now();var r="ontouchstart"in document.documentElement;r&&(window.addEventListener("touchmove",GLUT.touchHandler,!0),window.addEventListener("touchstart",GLUT.touchHandler,!0),window.addEventListener("touchend",GLUT.touchHandler,!0)),window.addEventListener("keydown",GLUT.onKeydown,!0),window.addEventListener("keyup",GLUT.onKeyup,!0),window.addEventListener("mousemove",GLUT.onMousemove,!0),window.addEventListener("mousedown",GLUT.onMouseButtonDown,!0),window.addEventListener("mouseup",GLUT.onMouseButtonUp,!0),window.addEventListener("mousewheel",GLUT.onMouseWheel,!0),window.addEventListener("DOMMouseScroll",GLUT.onMouseWheel,!0),Browser.resizeListeners.push((n,a)=>{GLUT.reshapeFunc&&getWasmTableEntry(GLUT.reshapeFunc)(n,a)}),__ATEXIT__.push(()=>{r&&(window.removeEventListener("touchmove",GLUT.touchHandler,!0),window.removeEventListener("touchstart",GLUT.touchHandler,!0),window.removeEventListener("touchend",GLUT.touchHandler,!0)),window.removeEventListener("keydown",GLUT.onKeydown,!0),window.removeEventListener("keyup",GLUT.onKeyup,!0),window.removeEventListener("mousemove",GLUT.onMousemove,!0),window.removeEventListener("mousedown",GLUT.onMouseButtonDown,!0),window.removeEventListener("mouseup",GLUT.onMouseButtonUp,!0),window.removeEventListener("mousewheel",GLUT.onMouseWheel,!0),window.removeEventListener("DOMMouseScroll",GLUT.onMouseWheel,!0),Module.canvas.width=Module.canvas.height=1})}_glutInit.sig="vpp";var _glutInitWindowSize=(e,t)=>{Browser.setCanvasSize(GLUT.initWindowWidth=e,GLUT.initWindowHeight=t)};_glutInitWindowSize.sig="vii";var _glutInitWindowPosition=(e,t)=>{};_glutInitWindowPosition.sig="vii";var _glutGet=e=>{switch(e){case 100:return 0;case 101:return 0;case 102:return Module.canvas.width;case 103:return Module.canvas.height;case 200:return Module.canvas.width;case 201:return Module.canvas.height;case 500:return 0;case 501:return 0;case 502:return GLUT.initWindowWidth;case 503:return GLUT.initWindowHeight;case 700:var t=Date.now();return t-GLUT.initTime;case 105:return Module.ctx.getContextAttributes().stencil?8:0;case 106:return Module.ctx.getContextAttributes().depth?8:0;case 110:return Module.ctx.getContextAttributes().alpha?8:0;case 120:return Module.ctx.getContextAttributes().antialias?1:0;default:throw"glutGet("+e+") not implemented yet"}};_glutGet.sig="ii";function _glutIdleFunc(e){e>>>=0;function t(){GLUT.idleFunc&&(getWasmTableEntry(GLUT.idleFunc)(),safeSetTimeout(t,4))}GLUT.idleFunc||safeSetTimeout(t,0),GLUT.idleFunc=e}_glutIdleFunc.sig="vp";var _glutTimerFunc=function(e,t,r){return t>>>=0,safeSetTimeout(()=>getWasmTableEntry(t)(r),e)};_glutTimerFunc.sig="vipi";function _glutDisplayFunc(e){e>>>=0,GLUT.displayFunc=e}_glutDisplayFunc.sig="vp";function _glutKeyboardFunc(e){e>>>=0,GLUT.keyboardFunc=e}_glutKeyboardFunc.sig="vp";function _glutKeyboardUpFunc(e){e>>>=0,GLUT.keyboardUpFunc=e}_glutKeyboardUpFunc.sig="vp";function _glutSpecialFunc(e){e>>>=0,GLUT.specialFunc=e}_glutSpecialFunc.sig="vp";function _glutSpecialUpFunc(e){e>>>=0,GLUT.specialUpFunc=e}_glutSpecialUpFunc.sig="vp";function _glutReshapeFunc(e){e>>>=0,GLUT.reshapeFunc=e}_glutReshapeFunc.sig="vp";function _glutMotionFunc(e){e>>>=0,GLUT.motionFunc=e}_glutMotionFunc.sig="vp";function _glutPassiveMotionFunc(e){e>>>=0,GLUT.passiveMotionFunc=e}_glutPassiveMotionFunc.sig="vp";function _glutMouseFunc(e){e>>>=0,GLUT.mouseFunc=e}_glutMouseFunc.sig="vp";var _glutSetCursor=e=>{var t="auto";switch(e){case 0:break;case 1:break;case 2:t="pointer";break;case 3:break;case 4:t="help";break;case 5:break;case 6:break;case 7:t="wait";break;case 8:t="text";break;case 9:case 102:t="crosshair";break;case 10:t="ns-resize";break;case 11:t="ew-resize";break;case 12:t="n-resize";break;case 13:t="s-resize";break;case 14:t="w-resize";break;case 15:t="e-resize";break;case 16:t="nw-resize";break;case 17:t="ne-resize";break;case 18:t="se-resize";break;case 19:t="sw-resize";break;case 100:break;case 101:t="none";break;default:throw"glutSetCursor: Unknown cursor type: "+e}Module.canvas.style.cursor=t};_glutSetCursor.sig="vi";function _glutCreateWindow(e){e>>>=0;var t={antialias:(GLUT.initDisplayMode&128)!=0,depth:(GLUT.initDisplayMode&16)!=0,stencil:(GLUT.initDisplayMode&32)!=0,alpha:(GLUT.initDisplayMode&8)!=0};return Module.ctx=Browser.createContext(Module.canvas,!0,!0,t),Module.ctx?1:0}_glutCreateWindow.sig="ip";var _glutDestroyWindow=e=>(delete Module.ctx,1);_glutDestroyWindow.sig="vi";var _glutReshapeWindow=(e,t)=>{Browser.exitFullscreen(),Browser.setCanvasSize(e,t,!0),GLUT.reshapeFunc&&getWasmTableEntry(GLUT.reshapeFunc)(e,t),_glutPostRedisplay()};_glutReshapeWindow.sig="vii";var _glutPositionWindow=(e,t)=>{Browser.exitFullscreen(),_glutPostRedisplay()};_glutPositionWindow.sig="vii";var _glutFullScreen=()=>{GLUT.windowX=0,GLUT.windowY=0,GLUT.windowWidth=Module.canvas.width,GLUT.windowHeight=Module.canvas.height,document.addEventListener("fullscreenchange",GLUT.onFullscreenEventChange,!0),document.addEventListener("mozfullscreenchange",GLUT.onFullscreenEventChange,!0),document.addEventListener("webkitfullscreenchange",GLUT.onFullscreenEventChange,!0),Browser.requestFullscreen(!1,!1)};_glutFullScreen.sig="v";var _glutInitDisplayMode=e=>GLUT.initDisplayMode=e;_glutInitDisplayMode.sig="vi";var _glutSwapBuffers=()=>{};_glutSwapBuffers.sig="v";var _glutMainLoop=()=>{throw _glutReshapeWindow(Module.canvas.width,Module.canvas.height),_glutPostRedisplay(),"unwind"};_glutMainLoop.sig="v";function _XOpenDisplay(e){return e>>>=0,1}_XOpenDisplay.sig="pp";function _XCreateWindow(e,t,r,n,a,l,c,u,_,d,f,p){return e>>>=0,t>>>=0,d>>>=0,f>>>=0,p>>>=0,Browser.setCanvasSize(a,l),2}_XCreateWindow.sig="pppiiiiiiippp";function _XChangeWindowAttributes(e,t,r,n){e>>>=0,t>>>=0,r>>>=0,n>>>=0}_XChangeWindowAttributes.sig="ipppp";function _XSetWMHints(e,t,r){e>>>=0,t>>>=0,r>>>=0}_XSetWMHints.sig="ippp";function _XMapWindow(e,t){e>>>=0,t>>>=0}_XMapWindow.sig="ipp";function _XStoreName(e,t,r){e>>>=0,t>>>=0,r>>>=0}_XStoreName.sig="ippp";function _XInternAtom(e,t,r){return e>>>=0,t>>>=0,0}_XInternAtom.sig="pppi";function _XSendEvent(e,t,r,n,a){e>>>=0,t>>>=0,n>>>=0,a>>>=0}_XSendEvent.sig="ippipp";function _XPending(e){return e>>>=0,0}_XPending.sig="ip";var EGL={errorCode:12288,defaultDisplayInitialized:!1,currentContext:0,currentReadSurface:0,currentDrawSurface:0,contextAttributes:{alpha:!1,depth:!1,stencil:!1,antialias:!1},stringCache:{},setErrorCode(e){EGL.errorCode=e},chooseConfig(e,t,r,n,a){if(e!=62e3)return EGL.setErrorCode(12296),0;if(t)for(;;){var l=HEAP32[t>>>2>>>0];if(l==12321){var c=HEAP32[t+4>>>2>>>0];EGL.contextAttributes.alpha=c>0}else if(l==12325){var u=HEAP32[t+4>>>2>>>0];EGL.contextAttributes.depth=u>0}else if(l==12326){var _=HEAP32[t+4>>>2>>>0];EGL.contextAttributes.stencil=_>0}else if(l==12337){var d=HEAP32[t+4>>>2>>>0];EGL.contextAttributes.antialias=d>0}else if(l==12338){var d=HEAP32[t+4>>>2>>>0];EGL.contextAttributes.antialias=d==1}else if(l==12544){var f=HEAP32[t+4>>>2>>>0];EGL.contextAttributes.lowLatency=f!=12547}else if(l==12344)break;t+=8}return(!r||!n)&&!a?(EGL.setErrorCode(12300),0):(a&&(HEAP32[a>>>2>>>0]=1),r&&n>0&&(HEAPU32[r>>>2>>>0]=62002),EGL.setErrorCode(12288),1)}};function _eglGetDisplay(e){return e>>>=0,EGL.setErrorCode(12288),e!=0&&e!=1?0:62e3}_eglGetDisplay.sig="pp";function _eglInitialize(e,t,r){return e>>>=0,t>>>=0,r>>>=0,e!=62e3?(EGL.setErrorCode(12296),0):(t&&(HEAP32[t>>>2>>>0]=1),r&&(HEAP32[r>>>2>>>0]=4),EGL.defaultDisplayInitialized=!0,EGL.setErrorCode(12288),1)}_eglInitialize.sig="ippp";function _eglTerminate(e){return e>>>=0,e!=62e3?(EGL.setErrorCode(12296),0):(EGL.currentContext=0,EGL.currentReadSurface=0,EGL.currentDrawSurface=0,EGL.defaultDisplayInitialized=!1,EGL.setErrorCode(12288),1)}_eglTerminate.sig="ip";function _eglGetConfigs(e,t,r,n){return e>>>=0,t>>>=0,n>>>=0,EGL.chooseConfig(e,0,t,r,n)}_eglGetConfigs.sig="ippip";function _eglChooseConfig(e,t,r,n,a){return e>>>=0,t>>>=0,r>>>=0,a>>>=0,EGL.chooseConfig(e,t,r,n,a)}_eglChooseConfig.sig="ipppip";function _eglGetConfigAttrib(e,t,r,n){if(e>>>=0,t>>>=0,n>>>=0,e!=62e3)return EGL.setErrorCode(12296),0;if(t!=62002)return EGL.setErrorCode(12293),0;if(!n)return EGL.setErrorCode(12300),0;switch(EGL.setErrorCode(12288),r){case 12320:return HEAP32[n>>>2>>>0]=EGL.contextAttributes.alpha?32:24,1;case 12321:return HEAP32[n>>>2>>>0]=EGL.contextAttributes.alpha?8:0,1;case 12322:return HEAP32[n>>>2>>>0]=8,1;case 12323:return HEAP32[n>>>2>>>0]=8,1;case 12324:return HEAP32[n>>>2>>>0]=8,1;case 12325:return HEAP32[n>>>2>>>0]=EGL.contextAttributes.depth?24:0,1;case 12326:return HEAP32[n>>>2>>>0]=EGL.contextAttributes.stencil?8:0,1;case 12327:return HEAP32[n>>>2>>>0]=12344,1;case 12328:return HEAP32[n>>>2>>>0]=62002,1;case 12329:return HEAP32[n>>>2>>>0]=0,1;case 12330:return HEAP32[n>>>2>>>0]=4096,1;case 12331:return HEAP32[n>>>2>>>0]=16777216,1;case 12332:return HEAP32[n>>>2>>>0]=4096,1;case 12333:return HEAP32[n>>>2>>>0]=0,1;case 12334:return HEAP32[n>>>2>>>0]=0,1;case 12335:return HEAP32[n>>>2>>>0]=12344,1;case 12337:return HEAP32[n>>>2>>>0]=EGL.contextAttributes.antialias?4:0,1;case 12338:return HEAP32[n>>>2>>>0]=EGL.contextAttributes.antialias?1:0,1;case 12339:return HEAP32[n>>>2>>>0]=4,1;case 12340:return HEAP32[n>>>2>>>0]=12344,1;case 12341:case 12342:case 12343:return HEAP32[n>>>2>>>0]=-1,1;case 12345:case 12346:return HEAP32[n>>>2>>>0]=0,1;case 12347:return HEAP32[n>>>2>>>0]=0,1;case 12348:return HEAP32[n>>>2>>>0]=1,1;case 12349:case 12350:return HEAP32[n>>>2>>>0]=0,1;case 12351:return HEAP32[n>>>2>>>0]=12430,1;case 12352:return HEAP32[n>>>2>>>0]=4,1;case 12354:return HEAP32[n>>>2>>>0]=0,1;default:return EGL.setErrorCode(12292),0}}_eglGetConfigAttrib.sig="ippip";function _eglCreateWindowSurface(e,t,r,n){return e>>>=0,t>>>=0,n>>>=0,e!=62e3?(EGL.setErrorCode(12296),0):t!=62002?(EGL.setErrorCode(12293),0):(EGL.setErrorCode(12288),62006)}_eglCreateWindowSurface.sig="pppip";function _eglDestroySurface(e,t){return e>>>=0,t>>>=0,e!=62e3?(EGL.setErrorCode(12296),0):t!=62006?(EGL.setErrorCode(12301),1):(EGL.currentReadSurface==t&&(EGL.currentReadSurface=0),EGL.currentDrawSurface==t&&(EGL.currentDrawSurface=0),EGL.setErrorCode(12288),1)}_eglDestroySurface.sig="ipp";function _eglCreateContext(e,t,r,n){if(e>>>=0,t>>>=0,r>>>=0,n>>>=0,e!=62e3)return EGL.setErrorCode(12296),0;for(var a=1;;){var l=HEAP32[n>>>2>>>0];if(l==12440)a=HEAP32[n+4>>>2>>>0];else{if(l==12344)break;return EGL.setErrorCode(12292),0}n+=8}return a!=2?(EGL.setErrorCode(12293),0):(EGL.contextAttributes.majorVersion=a-1,EGL.contextAttributes.minorVersion=0,EGL.context=GL.createContext(Module.canvas,EGL.contextAttributes),EGL.context!=0?(EGL.setErrorCode(12288),GL.makeContextCurrent(EGL.context),Browser.useWebGL=!0,Browser.moduleContextCreatedCallbacks.forEach(c=>c()),GL.makeContextCurrent(null),62004):(EGL.setErrorCode(12297),0))}_eglCreateContext.sig="ppppp";function _eglDestroyContext(e,t){return e>>>=0,t>>>=0,e!=62e3?(EGL.setErrorCode(12296),0):t!=62004?(EGL.setErrorCode(12294),0):(GL.deleteContext(EGL.context),EGL.setErrorCode(12288),EGL.currentContext==t&&(EGL.currentContext=0),1)}_eglDestroyContext.sig="ipp";function _eglQuerySurface(e,t,r,n){if(e>>>=0,t>>>=0,n>>>=0,e!=62e3)return EGL.setErrorCode(12296),0;if(t!=62006)return EGL.setErrorCode(12301),0;if(!n)return EGL.setErrorCode(12300),0;switch(EGL.setErrorCode(12288),r){case 12328:return HEAP32[n>>>2>>>0]=62002,1;case 12376:return 1;case 12375:return HEAP32[n>>>2>>>0]=Module.canvas.width,1;case 12374:return HEAP32[n>>>2>>>0]=Module.canvas.height,1;case 12432:return HEAP32[n>>>2>>>0]=-1,1;case 12433:return HEAP32[n>>>2>>>0]=-1,1;case 12434:return HEAP32[n>>>2>>>0]=-1,1;case 12422:return HEAP32[n>>>2>>>0]=12420,1;case 12441:return HEAP32[n>>>2>>>0]=12442,1;case 12435:return HEAP32[n>>>2>>>0]=12437,1;case 12416:case 12417:case 12418:case 12419:return 1;default:return EGL.setErrorCode(12292),0}}_eglQuerySurface.sig="ippip";function _eglQueryContext(e,t,r,n){if(e>>>=0,t>>>=0,n>>>=0,e!=62e3)return EGL.setErrorCode(12296),0;if(t!=62004)return EGL.setErrorCode(12294),0;if(!n)return EGL.setErrorCode(12300),0;switch(EGL.setErrorCode(12288),r){case 12328:return HEAP32[n>>>2>>>0]=62002,1;case 12439:return HEAP32[n>>>2>>>0]=12448,1;case 12440:return HEAP32[n>>>2>>>0]=EGL.contextAttributes.majorVersion+1,1;case 12422:return HEAP32[n>>>2>>>0]=12420,1;default:return EGL.setErrorCode(12292),0}}_eglQueryContext.sig="ippip";var _eglGetError=()=>EGL.errorCode;_eglGetError.sig="i";function _eglQueryString(e,t){if(e>>>=0,e!=62e3)return EGL.setErrorCode(12296),0;if(EGL.setErrorCode(12288),EGL.stringCache[t])return EGL.stringCache[t];var r;switch(t){case 12371:r=stringToNewUTF8("Emscripten");break;case 12372:r=stringToNewUTF8("1.4 Emscripten EGL");break;case 12373:r=stringToNewUTF8("");break;case 12429:r=stringToNewUTF8("OpenGL_ES");break;default:return EGL.setErrorCode(12300),0}return EGL.stringCache[t]=r,r}_eglQueryString.sig="ppi";var _eglBindAPI=e=>e==12448?(EGL.setErrorCode(12288),1):(EGL.setErrorCode(12300),0);_eglBindAPI.sig="ii";var _eglQueryAPI=()=>(EGL.setErrorCode(12288),12448);_eglQueryAPI.sig="i";var _eglWaitClient=()=>(EGL.setErrorCode(12288),1);_eglWaitClient.sig="i";var _eglWaitNative=e=>(EGL.setErrorCode(12288),1);_eglWaitNative.sig="ii";var _eglWaitGL=_eglWaitClient;_eglWaitGL.sig="i";function _eglSwapInterval(e,t){return e>>>=0,e!=62e3?(EGL.setErrorCode(12296),0):(t==0?_emscripten_set_main_loop_timing(0,0):_emscripten_set_main_loop_timing(1,t),EGL.setErrorCode(12288),1)}_eglSwapInterval.sig="ipi";function _eglMakeCurrent(e,t,r,n){return e>>>=0,t>>>=0,r>>>=0,n>>>=0,e!=62e3?(EGL.setErrorCode(12296),0):n!=0&&n!=62004?(EGL.setErrorCode(12294),0):r!=0&&r!=62006||t!=0&&t!=62006?(EGL.setErrorCode(12301),0):(GL.makeContextCurrent(n?EGL.context:null),EGL.currentContext=n,EGL.currentDrawSurface=t,EGL.currentReadSurface=r,EGL.setErrorCode(12288),1)}_eglMakeCurrent.sig="ipppp";function _eglGetCurrentContext(){return EGL.currentContext}_eglGetCurrentContext.sig="p";function _eglGetCurrentSurface(e){return e==12378?EGL.currentReadSurface:e==12377?EGL.currentDrawSurface:(EGL.setErrorCode(12300),0)}_eglGetCurrentSurface.sig="pi";function _eglGetCurrentDisplay(){return EGL.currentContext?62e3:0}_eglGetCurrentDisplay.sig="p";function _eglSwapBuffers(e,t){if(e>>>=0,t>>>=0,!EGL.defaultDisplayInitialized)EGL.setErrorCode(12289);else if(!Module.ctx)EGL.setErrorCode(12290);else if(Module.ctx.isContextLost())EGL.setErrorCode(12302);else return EGL.setErrorCode(12288),1;return 0}_eglSwapBuffers.sig="ipp";var _eglReleaseThread=()=>(EGL.currentContext=0,EGL.currentReadSurface=0,EGL.currentDrawSurface=0,EGL.setErrorCode(12288),1);_eglReleaseThread.sig="i";function _uuid_clear(e){return e>>>=0,zeroMemory(e,16)}_uuid_clear.sig="vp";function _uuid_compare(e,t){return e>>>=0,t>>>=0,_memcmp(e,t,16)}_uuid_compare.sig="ipp";function _uuid_copy(e,t){return e>>>=0,t>>>=0,_memcpy(e,t,16)}_uuid_copy.sig="vpp";function _uuid_generate(e){e>>>=0;var t=null;if(ENVIRONMENT_IS_NODE)try{var r=Cn("crypto").randomBytes;t=r(16)}catch(c){}else ENVIRONMENT_IS_WEB&&typeof window.crypto<"u"&&typeof window.crypto.getRandomValues<"u"&&(t=new Uint8Array(16),window.crypto.getRandomValues(t));if(!t){t=new Array(16);for(var n=new Date().getTime(),a=0;a<16;a++){var l=(n+Math.random()*256)%256|0;n=n/256|0,t[a]=l}}t[6]=t[6]&15|64,t[8]=t[8]&63|128,writeArrayToMemory(t,e)}_uuid_generate.sig="vp";function _uuid_is_null(e){e>>>=0;for(var t=0;t<4;t++,e=e+4|0){var r=HEAP32[e>>>2>>>0];if(r)return 0}return 1}_uuid_is_null.sig="ip";function _uuid_parse(e,t){if(e>>>=0,t>>>=0,e=UTF8ToString(e),e.length===36){var r=0,n=new Array(16);return e.toLowerCase().replace(/[0-9a-f]{2}/g,function(a){r<16&&(n[r++]=parseInt(a,16))}),r<16?-1:(writeArrayToMemory(n,t),0)}return-1}_uuid_parse.sig="ipp";function _uuid_unparse(e,t,r){e>>>=0,t>>>=0;var n=0,a="xxxx-xx-xx-xx-xxxxxx".replace(/[x]/g,function(l){var c=r?HEAPU8[e+n>>>0].toString(16).toUpperCase():HEAPU8[e+n>>>0].toString(16);return c=c.length===1?"0"+c:c,n++,c});stringToUTF8(a,t,37)}_uuid_unparse.sig="vpp";function _uuid_unparse_lower(e,t){e>>>=0,t>>>=0,_uuid_unparse(e,t)}_uuid_unparse_lower.sig="vpp";function _uuid_unparse_upper(e,t){e>>>=0,t>>>=0,_uuid_unparse(e,t,!0)}_uuid_unparse_upper.sig="vpp";function _uuid_type(e){return e>>>=0,4}_uuid_type.sig="ip";function _uuid_variant(e){return e>>>=0,1}_uuid_variant.sig="ip";var GLEW={isLinaroFork:1,extensions:null,error:{0:null,1:null,2:null,3:null,4:null,5:null,6:null,7:null,8:null},version:{1:null,2:null,3:null,4:null},errorStringConstantFromCode(e){if(GLEW.isLinaroFork)switch(e){case 4:return"OpenGL ES lib expected, found OpenGL lib";case 5:return"OpenGL lib expected, found OpenGL ES lib";case 6:return"Missing EGL version";case 7:return"EGL 1.1 and up are supported";default:break}switch(e){case 0:return"No error";case 1:return"Missing GL version";case 2:return"GL 1.1 and up are supported";case 3:return"GLX 1.2 and up are supported";default:return null}},errorString(e){if(!GLEW.error[e]){var t=GLEW.errorStringConstantFromCode(e);t||(t="Unknown error",e=8),GLEW.error[e]=stringToNewUTF8(t)}return GLEW.error[e]},versionStringConstantFromCode(e){switch(e){case 1:return"1.10.0";case 2:return"1";case 3:return"10";case 4:return"0";default:return null}},versionString(e){if(!GLEW.version[e]){var t=GLEW.versionStringConstantFromCode(e);if(!t)return 0;GLEW.version[e]=stringToNewUTF8(t)}return GLEW.version[e]},extensionIsSupported(e){return GLEW.extensions||(GLEW.extensions=webglGetExtensions()),GLEW.extensions.includes(e)?1:GLEW.extensions.includes("GL_"+e)}},_glewInit=()=>0;_glewInit.sig="i";function _glewIsSupported(e){e>>>=0;for(var t=UTF8ToString(e).split(" "),r=0;r>>=0,GLEW.extensionIsSupported(UTF8ToString(e))}_glewGetExtension.sig="ip";function _glewGetErrorString(e){return GLEW.errorString(e)}_glewGetErrorString.sig="pi";function _glewGetString(e){return GLEW.versionString(e)}_glewGetString.sig="pi";var IDBStore={indexedDB(){if(typeof indexedDB<"u")return indexedDB;var e=null;return typeof window=="object"&&(e=window.indexedDB||window.mozIndexedDB||window.webkitIndexedDB||window.msIndexedDB),assert(e,"IDBStore used, but indexedDB not supported"),e},DB_VERSION:22,DB_STORE_NAME:"FILE_DATA",dbs:{},blobs:[0],getDB(e,t){var r=IDBStore.dbs[e];if(r)return t(null,r);var n;try{n=IDBStore.indexedDB().open(e,IDBStore.DB_VERSION)}catch(a){return t(a)}n.onupgradeneeded=a=>{var l=a.target.result,c=a.target.transaction,u;l.objectStoreNames.contains(IDBStore.DB_STORE_NAME)?u=c.objectStore(IDBStore.DB_STORE_NAME):u=l.createObjectStore(IDBStore.DB_STORE_NAME)},n.onsuccess=()=>{r=n.result,IDBStore.dbs[e]=r,t(null,r)},n.onerror=function(a){t(a.target.error||"unknown error"),a.preventDefault()}},getStore(e,t,r){IDBStore.getDB(e,(n,a)=>{if(n)return r(n);var l=a.transaction([IDBStore.DB_STORE_NAME],t);l.onerror=u=>{r(u.target.error||"unknown error"),u.preventDefault()};var c=l.objectStore(IDBStore.DB_STORE_NAME);r(null,c)})},getFile(e,t,r){IDBStore.getStore(e,"readonly",(n,a)=>{if(n)return r(n);var l=a.get(t);l.onsuccess=c=>{var u=c.target.result;return u?r(null,u):r("file ".concat(t," not found"))},l.onerror=r})},setFile(e,t,r,n){IDBStore.getStore(e,"readwrite",(a,l)=>{if(a)return n(a);var c=l.put(r,t);c.onsuccess=u=>n(),c.onerror=n})},deleteFile(e,t,r){IDBStore.getStore(e,"readwrite",(n,a)=>{if(n)return r(n);var l=a.delete(t);l.onsuccess=c=>r(),l.onerror=r})},existsFile(e,t,r){IDBStore.getStore(e,"readonly",(n,a)=>{if(n)return r(n);var l=a.count(t);l.onsuccess=c=>r(null,c.target.result>0),l.onerror=r})},clearStore(e,t){IDBStore.getStore(e,"readwrite",(r,n)=>{if(r)return t(r);var a=n.clear();a.onsuccess=l=>t(),a.onerror=t})}},_emscripten_idb_async_load=function(e,t,r,n,a){e>>>=0,t>>>=0,r>>>=0,n>>>=0,a>>>=0,IDBStore.getFile(UTF8ToString(e),UTF8ToString(t),(l,c)=>{callUserCallback(()=>{if(l){a&&getWasmTableEntry(a)(r);return}var u=_malloc(c.length);HEAPU8.set(c,u>>>0),getWasmTableEntry(n)(r,u,c.length),_free(u)})})};_emscripten_idb_async_load.sig="vppppp";var _emscripten_idb_async_store=function(e,t,r,n,a,l,c){e>>>=0,t>>>=0,r>>>=0,a>>>=0,l>>>=0,c>>>=0,IDBStore.setFile(UTF8ToString(e),UTF8ToString(t),new Uint8Array(HEAPU8.subarray(r>>>0,r+n>>>0)),u=>{callUserCallback(()=>{if(u){c&&getWasmTableEntry(c)(a);return}l&&getWasmTableEntry(l)(a)})})};_emscripten_idb_async_store.sig="vpppippp";var _emscripten_idb_async_delete=function(e,t,r,n,a){e>>>=0,t>>>=0,r>>>=0,n>>>=0,a>>>=0,IDBStore.deleteFile(UTF8ToString(e),UTF8ToString(t),l=>{callUserCallback(()=>{if(l){a&&getWasmTableEntry(a)(r);return}n&&getWasmTableEntry(n)(r)})})};_emscripten_idb_async_delete.sig="vppppp";var _emscripten_idb_async_exists=function(e,t,r,n,a){e>>>=0,t>>>=0,r>>>=0,n>>>=0,a>>>=0,IDBStore.existsFile(UTF8ToString(e),UTF8ToString(t),(l,c)=>{callUserCallback(()=>{if(l){a&&getWasmTableEntry(a)(r);return}n&&getWasmTableEntry(n)(r,c)})})};_emscripten_idb_async_exists.sig="vppppp";var _emscripten_idb_async_clear=function(e,t,r,n){e>>>=0,t>>>=0,r>>>=0,n>>>=0,IDBStore.clearStore(UTF8ToString(e),a=>{callUserCallback(()=>{if(a){n&&getWasmTableEntry(n)(t);return}r&&getWasmTableEntry(r)(t)})})};_emscripten_idb_async_clear.sig="vpppp";function _emscripten_idb_load(e,t,r,n,a){throw e>>>=0,t>>>=0,r>>>=0,n>>>=0,a>>>=0,"Please compile your program with async support in order to use synchronous operations like emscripten_idb_load, etc."}_emscripten_idb_load.sig="vppppp";function _emscripten_idb_store(e,t,r,n,a){throw e>>>=0,t>>>=0,r>>>=0,a>>>=0,"Please compile your program with async support in order to use synchronous operations like emscripten_idb_store, etc."}_emscripten_idb_store.sig="vpppip";function _emscripten_idb_delete(e,t,r){throw e>>>=0,t>>>=0,r>>>=0,"Please compile your program with async support in order to use synchronous operations like emscripten_idb_delete, etc."}_emscripten_idb_delete.sig="vppp";function _emscripten_idb_exists(e,t,r,n){throw e>>>=0,t>>>=0,r>>>=0,n>>>=0,"Please compile your program with async support in order to use synchronous operations like emscripten_idb_exists, etc."}_emscripten_idb_exists.sig="vpppp";function _emscripten_idb_clear(e,t){throw e>>>=0,t>>>=0,"Please compile your program with async support in order to use synchronous operations like emscripten_idb_clear, etc."}_emscripten_idb_clear.sig="vpp";var runAndAbortIfError=e=>{try{return e()}catch(t){abort(t)}},_emscripten_sleep=()=>{throw"Please compile your program with async support in order to use asynchronous operations like emscripten_sleep"};_emscripten_sleep.sig="vi";function _emscripten_wget(e,t){throw e>>>=0,t>>>=0,"Please compile your program with async support in order to use asynchronous operations like emscripten_wget"}Module._emscripten_wget=_emscripten_wget,_emscripten_wget.sig="ipp";function _emscripten_scan_registers(e){throw e>>>=0,"Please compile your program with async support in order to use asynchronous operations like emscripten_scan_registers"}_emscripten_scan_registers.sig="vp";function _emscripten_fiber_swap(e,t){throw e>>>=0,t>>>=0,"Please compile your program with async support in order to use asynchronous operations like emscripten_fiber_swap"}_emscripten_fiber_swap.sig="vpp";var _SDL_GetTicks=()=>Date.now()-SDL.startTime|0;_SDL_GetTicks.sig="i";function _SDL_LockSurface(e){e>>>=0;var t=SDL.surfaces[e];if(t.locked++,t.locked>1||(t.buffer||(t.buffer=_malloc(t.width*t.height*4),HEAPU32[e+20>>>2>>>0]=t.buffer),HEAPU32[e+20>>>2>>>0]=t.buffer,e==SDL.screen&&Module.screenIsReadOnly&&t.image))return 0;if(SDL.defaults.discardOnLock){if(t.image||(t.image=t.ctx.createImageData(t.width,t.height)),!SDL.defaults.opaqueFrontBuffer)return}else t.image=t.ctx.getImageData(0,0,t.width,t.height);if(e==SDL.screen&&SDL.defaults.opaqueFrontBuffer)for(var r=t.image.data,n=r.length,a=0;a>>0)}return 0}_SDL_LockSurface.sig="ip";var SDL={defaults:{width:320,height:200,copyOnLock:!0,discardOnLock:!1,opaqueFrontBuffer:!0},version:null,surfaces:{},canvasPool:[],events:[],fonts:[null],audios:[null],rwops:[null],music:{audio:null,volume:1},mixerFrequency:22050,mixerFormat:32784,mixerNumChannels:2,mixerChunkSize:1024,channelMinimumNumber:0,GL:!1,glAttributes:{0:3,1:3,2:2,3:0,4:0,5:1,6:16,7:0,8:0,9:0,10:0,11:0,12:0,13:0,14:0,15:1,16:0,17:0,18:0},keyboardState:null,keyboardMap:{},canRequestFullscreen:!1,isRequestingFullscreen:!1,textInput:!1,unicode:!1,ttfContext:null,audio:null,startTime:null,initFlags:0,buttonState:0,modState:0,DOMButtons:[0,0,0],DOMEventToSDLEvent:{},TOUCH_DEFAULT_ID:0,eventHandler:null,eventHandlerContext:null,eventHandlerTemp:0,keyCodes:{16:1249,17:1248,18:1250,20:1081,33:1099,34:1102,35:1101,36:1098,37:1104,38:1106,39:1103,40:1105,44:316,45:1097,46:127,91:1251,93:1125,96:1122,97:1113,98:1114,99:1115,100:1116,101:1117,102:1118,103:1119,104:1120,105:1121,106:1109,107:1111,109:1110,110:1123,111:1108,112:1082,113:1083,114:1084,115:1085,116:1086,117:1087,118:1088,119:1089,120:1090,121:1091,122:1092,123:1093,124:1128,125:1129,126:1130,127:1131,128:1132,129:1133,130:1134,131:1135,132:1136,133:1137,134:1138,135:1139,144:1107,160:94,161:33,162:34,163:35,164:36,165:37,166:38,167:95,168:40,169:41,170:42,171:43,172:124,173:45,174:123,175:125,176:126,181:127,182:129,183:128,188:44,190:46,191:47,192:96,219:91,220:92,221:93,222:39,224:1251},scanCodes:{8:42,9:43,13:40,27:41,32:44,35:204,39:53,44:54,46:55,47:56,48:39,49:30,50:31,51:32,52:33,53:34,54:35,55:36,56:37,57:38,58:203,59:51,61:46,91:47,92:49,93:48,96:52,97:4,98:5,99:6,100:7,101:8,102:9,103:10,104:11,105:12,106:13,107:14,108:15,109:16,110:17,111:18,112:19,113:20,114:21,115:22,116:23,117:24,118:25,119:26,120:27,121:28,122:29,127:76,305:224,308:226,316:70},loadRect(e){return{x:HEAP32[e>>>2>>>0],y:HEAP32[e+4>>>2>>>0],w:HEAP32[e+8>>>2>>>0],h:HEAP32[e+12>>>2>>>0]}},updateRect(e,t){HEAP32[e>>>2>>>0]=t.x,HEAP32[e+4>>>2>>>0]=t.y,HEAP32[e+8>>>2>>>0]=t.w,HEAP32[e+12>>>2>>>0]=t.h},intersectionOfRects(e,t){var r=Math.max(e.x,t.x),n=Math.max(e.y,t.y),a=Math.min(e.x+e.w,t.x+t.w),l=Math.min(e.y+e.h,t.y+t.h);return{x:r,y:n,w:Math.max(r,a)-r,h:Math.max(n,l)-n}},checkPixelFormat(e){},loadColorToCSSRGB(e){var t=HEAP32[e>>>2>>>0];return"rgb("+(t&255)+","+(t>>8&255)+","+(t>>16&255)+")"},loadColorToCSSRGBA(e){var t=HEAP32[e>>>2>>>0];return"rgba("+(t&255)+","+(t>>8&255)+","+(t>>16&255)+","+(t>>24&255)/255+")"},translateColorToCSSRGBA:e=>"rgba("+(e&255)+","+(e>>8&255)+","+(e>>16&255)+","+(e>>>24)/255+")",translateRGBAToCSSRGBA:(e,t,r,n)=>"rgba("+(e&255)+","+(t&255)+","+(r&255)+","+(n&255)/255+")",translateRGBAToColor:(e,t,r,n)=>e|t<<8|r<<16|n<<24,makeSurface(e,t,r,n,a,l,c,u,_){var d=r&1,f=r&2097152,p=r&67108864,m=_malloc(60),g=_malloc(44),h=f?1:4,b=0;!d&&!p&&(b=_malloc(e*t*4)),HEAP32[m>>>2>>>0]=r,HEAPU32[m+4>>>2>>>0]=g,HEAP32[m+8>>>2>>>0]=e,HEAP32[m+12>>>2>>>0]=t,HEAP32[m+16>>>2>>>0]=e*h,HEAPU32[m+20>>>2>>>0]=b,HEAP32[m+36>>>2>>>0]=0,HEAP32[m+40>>>2>>>0]=0,HEAP32[m+44>>>2>>>0]=Module.canvas.width,HEAP32[m+48>>>2>>>0]=Module.canvas.height,HEAP32[m+56>>>2>>>0]=1,HEAP32[g>>>2>>>0]=-2042224636,HEAP32[g+4>>>2>>>0]=0,HEAP8[g+8>>>0]=h*8,HEAP8[g+9>>>0]=h,HEAP32[g+12>>>2>>>0]=l||255,HEAP32[g+16>>>2>>>0]=c||65280,HEAP32[g+20>>>2>>>0]=u||16711680,HEAP32[g+24>>>2>>>0]=_||4278190080,SDL.GL=SDL.GL||p;var y;n?y=Module.canvas:(SDL.canvasPool.length>0?y=SDL.canvasPool.pop():y=document.createElement("canvas"),y.width=e,y.height=t);var A={antialias:SDL.glAttributes[13]!=0&&SDL.glAttributes[14]>1,depth:SDL.glAttributes[6]>0,stencil:SDL.glAttributes[7]>0,alpha:SDL.glAttributes[3]>0},F=Browser.createContext(y,p,n,A);return SDL.surfaces[m]={width:e,height:t,canvas:y,ctx:F,surf:m,buffer:b,pixelFormat:g,alpha:255,flags:r,locked:0,usePageCanvas:n,source:a,isFlagSet:C=>r&C},m},copyIndexedColorData(e,t,r,n,a){if(e.colors){var l=Module.canvas.width,c=Module.canvas.height,u=t||0,_=r||0,d=(n||l-u)+u,f=(a||c-_)+_,p=e.buffer;e.image.data32||(e.image.data32=new Uint32Array(e.image.data.buffer));for(var m=e.image.data32,g=e.colors32,h=_;h>>0]]}},freeSurface(e){var t=e+56,r=HEAP32[t>>>2>>>0];if(r>1){HEAP32[t>>>2>>>0]=r-1;return}var n=SDL.surfaces[e];!n.usePageCanvas&&n.canvas&&SDL.canvasPool.push(n.canvas),n.buffer&&_free(n.buffer),_free(n.pixelFormat),_free(e),SDL.surfaces[e]=null,e===SDL.screen&&(SDL.screen=null)},blitSurface(e,t,r,n,a){var l=SDL.surfaces[e],c=SDL.surfaces[r],u,_;if(t?u=SDL.loadRect(t):u={x:0,y:0,w:l.width,h:l.height},n?_=SDL.loadRect(n):_={x:0,y:0,w:l.width,h:l.height},c.clipRect){var d=!a||u.w===0?1:u.w/_.w,f=!a||u.h===0?1:u.h/_.h;_=SDL.intersectionOfRects(c.clipRect,_),u.w=_.w*d,u.h=_.h*f,n&&SDL.updateRect(n,_)}var p,m;if(a?(p=_.w,m=_.h):(p=u.w,m=u.h),u.w===0||u.h===0||p===0||m===0)return 0;var g=c.ctx.globalAlpha;return c.ctx.globalAlpha=l.alpha/255,c.ctx.drawImage(l.canvas,u.x,u.y,u.w,u.h,_.x,_.y,p,m),c.ctx.globalAlpha=g,r!=SDL.screen&&(warnOnce("WARNING: copying canvas data to memory for compatibility"),_SDL_LockSurface(r),c.locked--),0},downFingers:{},savedKeydown:null,receiveEvent(e){function t(){for(var f in SDL.keyboardMap)SDL.events.push({type:"keyup",keyCode:SDL.keyboardMap[f]})}switch(e.type){case"touchstart":case"touchmove":{e.preventDefault();var r=[];if(e.type==="touchstart")for(var n=0;n0?Math.max(_,1):Math.min(_,-1);var d=_>0?3:4;SDL.events.push({type:"mousedown",button:d,pageX:e.pageX,pageY:e.pageY}),SDL.events.push({type:"mouseup",button:d,pageX:e.pageX,pageY:e.pageY}),SDL.events.push({type:"wheel",deltaX:0,deltaY:_}),e.preventDefault();break;case"mousemove":if(SDL.DOMButtons[0]===1&&SDL.events.push({type:"touchmove",touch:{identifier:0,deviceID:-1,pageX:e.pageX,pageY:e.pageY}}),Browser.pointerLock&&("mozMovementX"in e&&(e.movementX=e.mozMovementX,e.movementY=e.mozMovementY),e.movementX==0&&e.movementY==0)){e.preventDefault();return}case"keydown":case"keyup":case"keypress":case"mousedown":case"mouseup":if((e.type!=="keydown"||!SDL.unicode&&!SDL.textInput||e.keyCode===8||e.keyCode===9)&&e.preventDefault(),e.type=="mousedown")SDL.DOMButtons[e.button]=1,SDL.events.push({type:"touchstart",touch:{identifier:0,deviceID:-1,pageX:e.pageX,pageY:e.pageY}});else if(e.type=="mouseup"){if(!SDL.DOMButtons[e.button])return;SDL.events.push({type:"touchend",touch:{identifier:0,deviceID:-1,pageX:e.pageX,pageY:e.pageY}}),SDL.DOMButtons[e.button]=0}e.type==="keydown"||e.type==="mousedown"?SDL.canRequestFullscreen=!0:(e.type==="keyup"||e.type==="mouseup")&&(SDL.isRequestingFullscreen&&(Module.requestFullscreen(!0,!0),SDL.isRequestingFullscreen=!1),SDL.canRequestFullscreen=!1),e.type==="keypress"&&SDL.savedKeydown?(SDL.savedKeydown.keypressCharCode=e.charCode,SDL.savedKeydown=null):e.type==="keydown"&&(SDL.savedKeydown=e),(e.type!=="keypress"||SDL.textInput)&&SDL.events.push(e);break;case"mouseout":for(var n=0;n<3;n++)SDL.DOMButtons[n]&&(SDL.events.push({type:"mouseup",button:n,pageX:e.pageX,pageY:e.pageY}),SDL.DOMButtons[n]=0);e.preventDefault();break;case"focus":SDL.events.push(e),e.preventDefault();break;case"blur":SDL.events.push(e),t(),e.preventDefault();break;case"visibilitychange":SDL.events.push({type:"visibilitychange",visible:!document.hidden}),t(),e.preventDefault();break;case"unload":MainLoop.runner&&(SDL.events.push(e),MainLoop.runner());return;case"resize":SDL.events.push(e),e.preventDefault&&e.preventDefault();break}SDL.events.length>=1e4&&(err("SDL event queue full, dropping events"),SDL.events=SDL.events.slice(0,1e4)),SDL.flushEventsToHandler()},lookupKeyCodeForEvent(e){var t=e.keyCode;return t>=65&&t<=90?t+=32:(t=SDL.keyCodes[e.keyCode]||e.keyCode,e.location===2&&t>=1248&&t<=1251&&(t+=4)),t},handleEvent(e){if(!e.handled)switch(e.handled=!0,e.type){case"touchstart":case"touchend":case"touchmove":{Browser.calculateMouseEvent(e);break}case"keydown":case"keyup":{var t=e.type==="keydown",r=SDL.lookupKeyCodeForEvent(e);HEAP8[SDL.keyboardState+r>>>0]=t,SDL.modState=(HEAP8[SDL.keyboardState+1248>>>0]?64:0)|(HEAP8[SDL.keyboardState+1249>>>0]?1:0)|(HEAP8[SDL.keyboardState+1250>>>0]?256:0)|(HEAP8[SDL.keyboardState+1252>>>0]?128:0)|(HEAP8[SDL.keyboardState+1253>>>0]?2:0)|(HEAP8[SDL.keyboardState+1254>>>0]?512:0),t?SDL.keyboardMap[r]=e.keyCode:delete SDL.keyboardMap[r];break}case"mousedown":case"mouseup":e.type=="mousedown"?SDL.buttonState|=1<0;)if(SDL.makeCEvent(SDL.events.shift(),e)!==!1)return 1;return 0}return SDL.events.length>0},makeCEvent(e,t){if(typeof e=="number"){_memcpy(t,e,28),_free(e);return}switch(SDL.handleEvent(e),e.type){case"keydown":case"keyup":{var r=e.type==="keydown",n=SDL.lookupKeyCodeForEvent(e),a;n>=1024?a=n-1024:a=SDL.scanCodes[n]||n,HEAP32[t>>>2>>>0]=SDL.DOMEventToSDLEvent[e.type],HEAP8[t+8>>>0]=r?1:0,HEAP8[t+9>>>0]=0,HEAP32[t+12>>>2>>>0]=a,HEAP32[t+16>>>2>>>0]=n,HEAP16[t+20>>>1>>>0]=SDL.modState,HEAP32[t+24>>>2>>>0]=e.keypressCharCode||n;break}case"keypress":{HEAP32[t>>>2>>>0]=SDL.DOMEventToSDLEvent[e.type];for(var l=intArrayFromString(String.fromCharCode(e.charCode)),c=0;c>>0]=l[c];break}case"mousedown":case"mouseup":case"mousemove":{if(e.type!="mousemove"){var r=e.type==="mousedown";HEAP32[t>>>2>>>0]=SDL.DOMEventToSDLEvent[e.type],HEAP32[t+4>>>2>>>0]=0,HEAP32[t+8>>>2>>>0]=0,HEAP32[t+12>>>2>>>0]=0,HEAP8[t+16>>>0]=e.button+1,HEAP8[t+17>>>0]=r?1:0,HEAP32[t+20>>>2>>>0]=Browser.mouseX,HEAP32[t+24>>>2>>>0]=Browser.mouseY}else HEAP32[t>>>2>>>0]=SDL.DOMEventToSDLEvent[e.type],HEAP32[t+4>>>2>>>0]=0,HEAP32[t+8>>>2>>>0]=0,HEAP32[t+12>>>2>>>0]=0,HEAP32[t+16>>>2>>>0]=SDL.buttonState,HEAP32[t+20>>>2>>>0]=Browser.mouseX,HEAP32[t+24>>>2>>>0]=Browser.mouseY,HEAP32[t+28>>>2>>>0]=Browser.mouseMovementX,HEAP32[t+32>>>2>>>0]=Browser.mouseMovementY;break}case"wheel":{HEAP32[t>>>2>>>0]=SDL.DOMEventToSDLEvent[e.type],HEAP32[t+16>>>2>>>0]=e.deltaX,HEAP32[t+20>>>2>>>0]=e.deltaY;break}case"touchstart":case"touchend":case"touchmove":{var u=e.touch;if(!Browser.touches[u.identifier])break;var _=Module.canvas.width,d=Module.canvas.height,f=Browser.touches[u.identifier].x/_,p=Browser.touches[u.identifier].y/d,m=Browser.lastTouches[u.identifier].x/_,g=Browser.lastTouches[u.identifier].y/d,h=f-m,b=p-g;if(u.deviceID===void 0&&(u.deviceID=SDL.TOUCH_DEFAULT_ID),h===0&&b===0&&e.type==="touchmove")return!1;HEAP32[t>>>2>>>0]=SDL.DOMEventToSDLEvent[e.type],HEAP32[t+4>>>2>>>0]=_SDL_GetTicks(),tempI64=[u.deviceID>>>0,(tempDouble=u.deviceID,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[t+8>>>2>>>0]=tempI64[0],HEAP32[t+12>>>2>>>0]=tempI64[1],tempI64=[u.identifier>>>0,(tempDouble=u.identifier,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[t+16>>>2>>>0]=tempI64[0],HEAP32[t+20>>>2>>>0]=tempI64[1],HEAPF32[t+24>>>2>>>0]=f,HEAPF32[t+28>>>2>>>0]=p,HEAPF32[t+32>>>2>>>0]=h,HEAPF32[t+36>>>2>>>0]=b,u.force!==void 0?HEAPF32[t+40>>>2>>>0]=u.force:HEAPF32[t+40>>>2>>>0]=e.type=="touchend"?0:1;break}case"unload":{HEAP32[t>>>2>>>0]=SDL.DOMEventToSDLEvent[e.type];break}case"resize":{HEAP32[t>>>2>>>0]=SDL.DOMEventToSDLEvent[e.type],HEAP32[t+4>>>2>>>0]=e.w,HEAP32[t+8>>>2>>>0]=e.h;break}case"joystick_button_up":case"joystick_button_down":{var y=e.type==="joystick_button_up"?0:1;HEAP32[t>>>2>>>0]=SDL.DOMEventToSDLEvent[e.type],HEAP8[t+4>>>0]=e.index,HEAP8[t+5>>>0]=e.button,HEAP8[t+6>>>0]=y;break}case"joystick_axis_motion":{HEAP32[t>>>2>>>0]=SDL.DOMEventToSDLEvent[e.type],HEAP8[t+4>>>0]=e.index,HEAP8[t+5>>>0]=e.axis,HEAP32[t+8>>>2>>>0]=SDL.joystickAxisValueConversion(e.value);break}case"focus":{var A=12;HEAP32[t>>>2>>>0]=SDL.DOMEventToSDLEvent[e.type],HEAP32[t+4>>>2>>>0]=0,HEAP8[t+8>>>0]=A;break}case"blur":{var F=13;HEAP32[t>>>2>>>0]=SDL.DOMEventToSDLEvent[e.type],HEAP32[t+4>>>2>>>0]=0,HEAP8[t+8>>>0]=F;break}case"visibilitychange":{var C=1,x=2,S=e.visible?C:x;HEAP32[t>>>2>>>0]=SDL.DOMEventToSDLEvent[e.type],HEAP32[t+4>>>2>>>0]=0,HEAP8[t+8>>>0]=S;break}default:throw"Unhandled SDL event: "+e.type}},makeFontString(e,t){return t.charAt(0)!="'"&&t.charAt(0)!='"'&&(t='"'+t+'"'),e+"px "+t+", serif"},estimateTextWidth(e,t){var r=e.size,n=SDL.makeFontString(r,e.name),a=SDL.ttfContext;a.font=n;var l=a.measureText(t).width|0;return l},allocateChannels(e){if(!(SDL.numChannels&&SDL.numChannels>=e&&e!=0)){SDL.numChannels=e,SDL.channels=[];for(var t=0;t{e.paused||SDL.playWebAudio(e)});return}e.webAudioNode=SDL.audioContext.createBufferSource(),e.webAudioNode.buffer=t.decodedBuffer,e.webAudioNode.loop=e.loop,e.webAudioNode.onended=e.onended,e.webAudioPannerNode=SDL.audioContext.createPanner(),e.webAudioPannerNode.setPosition(0,0,-.5),e.webAudioPannerNode.panningModel="equalpower",e.webAudioGainNode=SDL.audioContext.createGain(),e.webAudioGainNode.gain.value=e.volume,e.webAudioNode.connect(e.webAudioPannerNode),e.webAudioPannerNode.connect(e.webAudioGainNode),e.webAudioGainNode.connect(SDL.audioContext.destination),e.webAudioNode.start(0,e.currentPosition),e.startTime=SDL.audioContext.currentTime-e.currentPosition}catch(r){err("playWebAudio failed: ".concat(r))}},pauseWebAudio(e){if(e){if(e.webAudioNode)try{e.currentPosition=(SDL.audioContext.currentTime-e.startTime)%e.resource.webAudio.decodedBuffer.duration,e.webAudioNode.onended=void 0,e.webAudioNode.stop(0),e.webAudioNode=void 0}catch(t){err("pauseWebAudio failed: ".concat(t))}e.paused=!0}},openAudioContext(){SDL.audioContext||(typeof AudioContext<"u"?SDL.audioContext=new AudioContext:typeof webkitAudioContext<"u"&&(SDL.audioContext=new webkitAudioContext))},webAudioAvailable:()=>!!SDL.audioContext,fillWebAudioBufferFromHeap(e,t,r){for(var n=SDL.audio,a=n.channels,l=0;l>>1>>>0]/32768;else if(n.format==8)for(var u=0;u>>0];c[u]=(_>=0?_-128:_+128)/128}else if(n.format==33056)for(var u=0;u>>2>>>0];else throw"Invalid SDL audio format "+n.format+"!"}},joystickEventState:1,lastJoystickState:{},joystickNamePool:{},recordJoystickState(e,t){for(var r=new Array(t.buttons.length),n=0;n0},queryJoysticks(){for(var e in SDL.lastJoystickState){var t=SDL.getGamepad(e-1),r=SDL.lastJoystickState[e];if(typeof t>"u"||t===null)return;if(typeof t.timestamp!="number"||t.timestamp!=r.timestamp||!t.timestamp){var n;for(n=0;ne&&e>=0?t[e]:null}};function _SDL_Linked_Version(){return SDL.version===null&&(SDL.version=_malloc(3),HEAP8[SDL.version>>>0]=1,HEAP8[SDL.version+1>>>0]=3,HEAP8[SDL.version+2>>>0]=0),SDL.version}_SDL_Linked_Version.sig="p";var _SDL_Init=e=>{if(SDL.startTime=Date.now(),SDL.initFlags=e,!Module.doNotCaptureKeyboard){var t=Module.keyboardListeningElement||document;t.addEventListener("keydown",SDL.receiveEvent),t.addEventListener("keyup",SDL.receiveEvent),t.addEventListener("keypress",SDL.receiveEvent),window.addEventListener("focus",SDL.receiveEvent),window.addEventListener("blur",SDL.receiveEvent),document.addEventListener("visibilitychange",SDL.receiveEvent)}return window.addEventListener("unload",SDL.receiveEvent),SDL.keyboardState=_calloc(65536,1),SDL.DOMEventToSDLEvent.keydown=768,SDL.DOMEventToSDLEvent.keyup=769,SDL.DOMEventToSDLEvent.keypress=771,SDL.DOMEventToSDLEvent.mousedown=1025,SDL.DOMEventToSDLEvent.mouseup=1026,SDL.DOMEventToSDLEvent.mousemove=1024,SDL.DOMEventToSDLEvent.wheel=1027,SDL.DOMEventToSDLEvent.touchstart=1792,SDL.DOMEventToSDLEvent.touchend=1793,SDL.DOMEventToSDLEvent.touchmove=1794,SDL.DOMEventToSDLEvent.unload=256,SDL.DOMEventToSDLEvent.resize=28673,SDL.DOMEventToSDLEvent.visibilitychange=512,SDL.DOMEventToSDLEvent.focus=512,SDL.DOMEventToSDLEvent.blur=512,SDL.DOMEventToSDLEvent.joystick_axis_motion=1536,SDL.DOMEventToSDLEvent.joystick_button_down=1539,SDL.DOMEventToSDLEvent.joystick_button_up=1540,0};_SDL_Init.sig="ii";var _SDL_WasInit=e=>(SDL.startTime===null&&_SDL_Init(0),1);_SDL_WasInit.sig="ii";function _SDL_GetVideoInfo(){var e=_calloc(20,1);return HEAP32[e+12>>>2>>>0]=Module.canvas.width,HEAP32[e+16>>>2>>>0]=Module.canvas.height,e}_SDL_GetVideoInfo.sig="p";function _SDL_ListModes(e,t){return e>>>=0,-1}_SDL_ListModes.sig="ppi";var _SDL_VideoModeOK=(e,t,r,n)=>r;_SDL_VideoModeOK.sig="iiiii";function _SDL_VideoDriverName(e,t){if(e>>>=0,SDL.startTime===null)return 0;var r=[101,109,115,99,114,105,112,116,101,110,95,115,100,108,95,100,114,105,118,101,114],n=0,a=r.length;for(t<=a&&(a=t-1);n>>0]=l,n++}return HEAP8[e+n>>>0]=0,e}_SDL_VideoDriverName.sig="ppi";var _SDL_AudioDriverName=_SDL_VideoDriverName;_SDL_AudioDriverName.sig="ppi";var _SDL_SetVideoMode=function(e,t,r,n){["touchstart","touchend","touchmove","mousedown","mouseup","mousemove","mousewheel","wheel","mouseout","DOMMouseScroll"].forEach(l=>Module.canvas.addEventListener(l,SDL.receiveEvent,!0));var a=Module.canvas;return e==0&&t==0&&(e=a.width,t=a.height),SDL.addedResizeListener||(SDL.addedResizeListener=!0,Browser.resizeListeners.push((l,c)=>{SDL.settingVideoMode||SDL.receiveEvent({type:"resize",w:l,h:c})})),SDL.settingVideoMode=!0,Browser.setCanvasSize(e,t),SDL.settingVideoMode=!1,SDL.screen&&(SDL.freeSurface(SDL.screen),assert(!SDL.screen)),SDL.GL&&(n=n|67108864),SDL.screen=SDL.makeSurface(e,t,n,!0,"screen"),SDL.screen};_SDL_SetVideoMode.sig="piiii";function _SDL_GetVideoSurface(){return SDL.screen}_SDL_GetVideoSurface.sig="p";var _SDL_AudioQuit=()=>{for(var e=0;eout("SDL_VideoQuit called (and ignored)");_SDL_VideoQuit.sig="v";var _SDL_QuitSubSystem=e=>out("SDL_QuitSubSystem called (and ignored)");_SDL_QuitSubSystem.sig="vi";var _SDL_Quit=()=>{_SDL_AudioQuit(),out("SDL_Quit called (and ignored)")};_SDL_Quit.sig="v";function _SDL_UnlockSurface(e){e>>>=0,assert(!SDL.GL);var t=SDL.surfaces[e];if(!(!t.locked||--t.locked>0)){if(t.isFlagSet(2097152))SDL.copyIndexedColorData(t);else if(t.colors)for(var g=Module.canvas.width,h=Module.canvas.height,b=t.buffer,r=t.image.data,y=t.colors,A=0;A>>0]*4,x=F+C*4;r[x]=y[_],r[x+1]=y[_+1],r[x+2]=y[_+2]}b+=g*3}else{var r=t.image.data,n=t.buffer;assert(n%4==0,"Invalid buffer offset: "+n);var a=n>>>2,l=0,c=e==SDL.screen,u;if(typeof CanvasPixelArray<"u"&&r instanceof CanvasPixelArray)for(u=r.length;l>>0];r[l]=_&255,r[l+1]=_>>8&255,r[l+2]=_>>16&255,r[l+3]=c?255:_>>24&255,a++,l+=4}else{var d=new Uint32Array(r.buffer);if(c&&SDL.defaults.opaqueFrontBuffer){u=d.length,d.set(HEAP32.subarray(a>>>0,a+u>>>0));var f=new Uint8Array(r.buffer),p=3,m=p+4*u;if(u%8==0)for(;p>>0,a+d.length>>>0))}}t.ctx.putImageData(t.image,0,0)}}_SDL_UnlockSurface.sig="vp";function _SDL_Flip(e){e>>>=0}_SDL_Flip.sig="ip";function _SDL_UpdateRect(e,t,r,n,a){e>>>=0}_SDL_UpdateRect.sig="vpiiii";function _SDL_UpdateRects(e,t,r){e>>>=0,r>>>=0}_SDL_UpdateRects.sig="vpip";var _SDL_Delay=e=>{ENVIRONMENT_IS_WORKER||abort("SDL_Delay called on the main thread! Potential infinite loop, quitting. (consider building with async support like ASYNCIFY)");for(var t=Date.now();Date.now()-t>>=0,t>>>=0,e&&_emscripten_set_window_title(e),t&&(t=UTF8ToString(t))}_SDL_WM_SetCaption.sig="vpp";var _SDL_EnableKeyRepeat=(e,t)=>{};_SDL_EnableKeyRepeat.sig="iii";function _SDL_GetKeyboardState(e){return e>>>=0,e&&(HEAP32[e>>>2>>>0]=65536),SDL.keyboardState}_SDL_GetKeyboardState.sig="pp";var _SDL_GetKeyState=()=>_SDL_GetKeyboardState(0);function _SDL_GetKeyName(e){return SDL.keyName||(SDL.keyName=stringToNewUTF8("unknown key")),SDL.keyName}_SDL_GetKeyName.sig="pi";var _SDL_GetModState=()=>SDL.modState;_SDL_GetModState.sig="i";function _SDL_GetMouseState(e,t){return e>>>=0,t>>>=0,e&&(HEAP32[e>>>2>>>0]=Browser.mouseX),t&&(HEAP32[t>>>2>>>0]=Browser.mouseY),SDL.buttonState}_SDL_GetMouseState.sig="ipp";var _SDL_WarpMouse=(e,t)=>{};_SDL_WarpMouse.sig="vii";var _SDL_ShowCursor=e=>{switch(e){case 0:return Browser.isFullscreen?(Module.canvas.requestPointerLock(),0):1;case 1:return Module.canvas.exitPointerLock(),1;case-1:return!Browser.pointerLock;default:err("SDL_ShowCursor called with unknown toggle parameter value: ".concat(e));break}};_SDL_ShowCursor.sig="ii";function _SDL_GetError(){return SDL.errorMessage||(SDL.errorMessage=stringToNewUTF8("unknown SDL-emscripten error")),SDL.errorMessage}_SDL_GetError.sig="p";function _SDL_SetError(e,t){e>>>=0,t>>>=0}_SDL_SetError.sig="vpp";function _SDL_CreateRGBSurface(e,t,r,n,a,l,c,u){return SDL.makeSurface(t,r,e,!1,"CreateRGBSurface",a,l,c,u)}_SDL_CreateRGBSurface.sig="piiiiiiii";function _SDL_CreateRGBSurfaceFrom(e,t,r,n,a,l,c,u,_){e>>>=0;var d=SDL.makeSurface(t,r,0,!1,"CreateRGBSurfaceFrom",l,c,u,_);if(n!==32)return err("TODO: Partially unimplemented SDL_CreateRGBSurfaceFrom called!"),d;for(var f=SDL.surfaces[d],p=f.ctx.createImageData(t,r),m=t*4,g=0;g>>0];return f.ctx.putImageData(p,0,0),d}_SDL_CreateRGBSurfaceFrom.sig="ppiiiiiiii";function _SDL_ConvertSurface(e,t,r){e>>>=0,t>>>=0,t&&SDL.checkPixelFormat(t);var n=SDL.surfaces[e],a=SDL.makeSurface(n.width,n.height,n.flags,!1,"copy:"+n.source),l=SDL.surfaces[a];return l.ctx.globalCompositeOperation="copy",l.ctx.drawImage(n.canvas,0,0),l.ctx.globalCompositeOperation=n.ctx.globalCompositeOperation,a}_SDL_ConvertSurface.sig="pppi";function _SDL_DisplayFormatAlpha(e){return e>>>=0,_SDL_ConvertSurface(e,0,0)}_SDL_DisplayFormatAlpha.sig="pp";function _SDL_FreeSurface(e){e>>>=0,e&&SDL.freeSurface(e)}_SDL_FreeSurface.sig="vp";function _SDL_UpperBlit(e,t,r,n){return e>>>=0,t>>>=0,r>>>=0,n>>>=0,SDL.blitSurface(e,t,r,n,!1)}_SDL_UpperBlit.sig="ipppp";function _SDL_UpperBlitScaled(e,t,r,n){return e>>>=0,t>>>=0,r>>>=0,n>>>=0,SDL.blitSurface(e,t,r,n,!0)}_SDL_UpperBlitScaled.sig="ipppp";var _SDL_LowerBlit=_SDL_UpperBlit;_SDL_LowerBlit.sig="ipppp";var _SDL_LowerBlitScaled=_SDL_UpperBlitScaled;_SDL_LowerBlitScaled.sig="ipppp";function _SDL_GetClipRect(e,t){e>>>=0,t>>>=0,assert(t);var r=SDL.surfaces[e],n=r.clipRect||{x:0,y:0,w:r.width,h:r.height};SDL.updateRect(t,n)}_SDL_GetClipRect.sig="vpp";function _SDL_SetClipRect(e,t){e>>>=0,t>>>=0;var r=SDL.surfaces[e];t?r.clipRect=SDL.intersectionOfRects({x:0,y:0,w:r.width,h:r.height},SDL.loadRect(t)):delete r.clipRect}_SDL_SetClipRect.sig="ipp";function _SDL_FillRect(e,t,r){e>>>=0,t>>>=0;var n=SDL.surfaces[e];assert(!n.locked),n.isFlagSet(2097152)&&(r=n.colors32[r]);var a=t?SDL.loadRect(t):{x:0,y:0,w:n.width,h:n.height};return n.clipRect&&(a=SDL.intersectionOfRects(n.clipRect,a),t&&SDL.updateRect(t,a)),n.ctx.save(),n.ctx.fillStyle=SDL.translateColorToCSSRGBA(r),n.ctx.fillRect(a.x,a.y,a.w,a.h),n.ctx.restore(),0}_SDL_FillRect.sig="ippi";function _zoomSurface(e,t,r,n){e>>>=0;var a=SDL.surfaces[e],l=a.width*t,c=a.height*r,u=SDL.makeSurface(Math.abs(l),Math.abs(c),a.flags,!1,"zoomSurface"),_=SDL.surfaces[u];return t>=0&&r>=0?_.ctx.drawImage(a.canvas,0,0,l,c):(_.ctx.save(),_.ctx.scale(t<0?-1:1,r<0?-1:1),_.ctx.drawImage(a.canvas,l<0?l:0,c<0?c:0,Math.abs(l),Math.abs(c)),_.ctx.restore()),u}_zoomSurface.sig="ppddi";function _rotozoomSurface(e,t,r,n){if(e>>>=0,t%360===0)return _zoomSurface(e,r,r,n);var a=SDL.surfaces[e],l=a.width*r,c=a.height*r,u=Math.ceil(Math.sqrt(Math.pow(l,2)+Math.pow(c,2))),_=SDL.makeSurface(u,u,a.flags,!1,"rotozoomSurface"),d=SDL.surfaces[_];return d.ctx.translate(u/2,u/2),d.ctx.rotate(-t*Math.PI/180),d.ctx.drawImage(a.canvas,-l/2,-c/2,l,c),_}_rotozoomSurface.sig="ppddi";function _SDL_SetAlpha(e,t,r){e>>>=0;var n=SDL.surfaces[e];n.alpha=r,t&65536||(n.alpha=255)}_SDL_SetAlpha.sig="ipii";function _SDL_SetColorKey(e,t,r){return e>>>=0,warnOnce("SDL_SetColorKey is a no-op for performance reasons"),0}_SDL_SetColorKey.sig="ipii";function _SDL_PollEvent(e){return e>>>=0,SDL.pollEvent(e)}_SDL_PollEvent.sig="ip";function _SDL_PushEvent(e){e>>>=0;var t=_malloc(28);return _memcpy(t,e,28),SDL.events.push(t),0}_SDL_PushEvent.sig="ip";function _SDL_PeepEvents(e,t,r,n,a){switch(e>>>=0,r){case 2:{assert(t==1);for(var l=0,c=0;lSDL.events.forEach(SDL.handleEvent);_SDL_PumpEvents.sig="v";function _emscripten_SDL_SetEventHandler(e,t){e>>>=0,t>>>=0,SDL.eventHandler=e,SDL.eventHandlerContext=t,SDL.eventHandlerTemp||(SDL.eventHandlerTemp=_malloc(28))}_emscripten_SDL_SetEventHandler.sig="vpp";function _SDL_SetColors(e,t,r,n){e>>>=0,t>>>=0;var a=SDL.surfaces[e];if(!a.colors){var l=new ArrayBuffer(1024);a.colors=new Uint8Array(l),a.colors32=new Uint32Array(l)}for(var c=0;c>>0],a.colors[u+1]=HEAPU8[t+(c*4+1)>>>0],a.colors[u+2]=HEAPU8[t+(c*4+2)>>>0],a.colors[u+3]=255}return 1}_SDL_SetColors.sig="ippii";function _SDL_SetPalette(e,t,r,n,a){return e>>>=0,r>>>=0,_SDL_SetColors(e,r,n,a)}_SDL_SetPalette.sig="ipipii";function _SDL_MapRGB(e,t,r,n){return e>>>=0,SDL.checkPixelFormat(e),t&255|(r&255)<<8|(n&255)<<16|4278190080}_SDL_MapRGB.sig="ipiii";function _SDL_MapRGBA(e,t,r,n,a){return e>>>=0,SDL.checkPixelFormat(e),t&255|(r&255)<<8|(n&255)<<16|(a&255)<<24}_SDL_MapRGBA.sig="ipiiii";function _SDL_GetRGB(e,t,r,n,a){t>>>=0,r>>>=0,n>>>=0,a>>>=0,SDL.checkPixelFormat(t),r&&(HEAP8[r>>>0]=e&255),n&&(HEAP8[n>>>0]=e>>8&255),a&&(HEAP8[a>>>0]=e>>16&255)}_SDL_GetRGB.sig="vipppp";function _SDL_GetRGBA(e,t,r,n,a,l){t>>>=0,r>>>=0,n>>>=0,a>>>=0,l>>>=0,SDL.checkPixelFormat(t),r&&(HEAP8[r>>>0]=e&255),n&&(HEAP8[n>>>0]=e>>8&255),a&&(HEAP8[a>>>0]=e>>16&255),l&&(HEAP8[l>>>0]=e>>24&255)}_SDL_GetRGBA.sig="vippppp";var _SDL_GetAppState=()=>{var e=0;return Browser.pointerLock&&(e|=1),document.hasFocus()&&(e|=2),e|=4,e};_SDL_GetAppState.sig="i";var _SDL_WM_GrabInput=()=>{};_SDL_WM_GrabInput.sig="ii";function _SDL_WM_ToggleFullScreen(e){return e>>>=0,Browser.exitFullscreen()?1:SDL.canRequestFullscreen?(SDL.isRequestingFullscreen=!0,1):0}_SDL_WM_ToggleFullScreen.sig="ip";var _IMG_Init=e=>e;_IMG_Init.sig="ii";function _SDL_FreeRW(e){for(e>>>=0,SDL.rwops[e]=null;SDL.rwops.length>0&&SDL.rwops[SDL.rwops.length-1]===null;)SDL.rwops.pop()}_SDL_FreeRW.sig="vp";var _IMG_Load_RW=function(e,t){e>>>=0;var r=stackSave();try{var n=()=>{stackRestore(r),c&&t&&_SDL_FreeRW(e)},a=x=>{var S=n;n=()=>{S(),x()}},l=(x,S)=>{var T=stackAlloc(4),E=stackAlloc(4),w=stackAlloc(4),P=Module["_"+x](...S,T,E,w,0);return P?(a(()=>Module._stbi_image_free(P)),{rawData:!0,data:P,width:HEAP32[T>>>2>>>0],height:HEAP32[E>>>2>>>0],size:HEAP32[T>>>2>>>0]*HEAP32[E>>>2>>>0]*HEAP32[w>>>2>>>0],bpp:HEAP32[w>>>2>>>0]}):null},c=SDL.rwops[e];if(c===void 0)return 0;var u,_=c.filename;if(_===void 0)return warnOnce("Only file names that have been preloaded are supported for IMG_Load_RW. Consider using STB_IMAGE=1 if you want synchronous image decoding (see settings.js), or package files with --use-preload-plugins"),0;if(!u)if(_=PATH_FS.resolve(_),u=preloadedImages[_],u)Module.freePreloadedMediaOnUse&&(preloadedImages[_]=null);else return u===null&&err("Trying to reuse preloaded image, but freePreloadedMediaOnUse is set!"),warnOnce("Cannot find preloaded image "+_),warnOnce("Cannot find preloaded image "+_+". Consider using STB_IMAGE=1 if you want synchronous image decoding (see settings.js), or package files with --use-preload-plugins"),0;var d=SDL.makeSurface(u.width,u.height,0,!1,"load:"+_),f=SDL.surfaces[d];if(f.ctx.globalCompositeOperation="copy",!u.rawData)f.ctx.drawImage(u,0,0,u.width,u.height,0,0,u.width,u.height);else{var p=f.ctx.getImageData(0,0,f.width,f.height);if(u.bpp==4)p.data.set(HEAPU8.subarray(u.data>>>0,u.data+u.size>>>0));else if(u.bpp==3)for(var m=u.size/3,g=p.data,h=u.data,b=0,y=0;y>>0],g[b++]=HEAPU8[h++>>>0],g[b++]=HEAPU8[h++>>>0],g[b++]=255;else if(u.bpp==2)for(var m=u.size,g=p.data,h=u.data,b=0,y=0;y>>0],F=HEAPU8[h++>>>0];g[b++]=A,g[b++]=A,g[b++]=A,g[b++]=F}else if(u.bpp==1)for(var m=u.size,g=p.data,h=u.data,b=0,y=0;y>>0];g[b++]=C,g[b++]=C,g[b++]=C,g[b++]=255}else return err("cannot handle bpp ".concat(u.bpp)),0;f.ctx.putImageData(p,0,0)}return f.ctx.globalCompositeOperation="source-over",_SDL_LockSurface(d),f.locked--,SDL.GL&&(f.canvas=f.ctx=null),d}finally{n()}};_IMG_Load_RW.sig="ppi";var _SDL_LoadBMP_RW=_IMG_Load_RW;_SDL_LoadBMP_RW.sig="ppi";function _SDL_RWFromFile(e,t){e>>>=0,t>>>=0;var r=SDL.rwops.length,n=UTF8ToString(e);return SDL.rwops.push({filename:n,mimetype:Browser.getMimetype(n)}),r}_SDL_RWFromFile.sig="ppp";function _IMG_Load(e){e>>>=0;var t=_SDL_RWFromFile(e,0),r=_IMG_Load_RW(t,1);return r}_IMG_Load.sig="pp";var _IMG_Quit=()=>out("IMG_Quit called (and ignored)");_IMG_Quit.sig="v";function _SDL_OpenAudio(e,t){e>>>=0,t>>>=0;try{if(SDL.audio={freq:HEAPU32[e>>>2>>>0],format:HEAPU16[e+4>>>1>>>0],channels:HEAPU8[e+6>>>0],samples:HEAPU16[e+8>>>1>>>0],callback:HEAPU32[e+16>>>2>>>0],userdata:HEAPU32[e+20>>>2>>>0],paused:!0,timer:null},SDL.audio.format==8)SDL.audio.silence=128;else if(SDL.audio.format==32784)SDL.audio.silence=0;else if(SDL.audio.format==33056)SDL.audio.silence=0;else throw"Invalid SDL audio format "+SDL.audio.format+"!";if(SDL.audio.freq<=0)throw"Unsupported sound frequency "+SDL.audio.freq+"!";if(SDL.audio.freq<=22050)SDL.audio.freq=22050;else if(SDL.audio.freq<=32e3)SDL.audio.freq=32e3;else if(SDL.audio.freq<=44100)SDL.audio.freq=44100;else if(SDL.audio.freq<=48e3)SDL.audio.freq=48e3;else if(SDL.audio.freq<=96e3)SDL.audio.freq=96e3;else throw"Unsupported sound frequency ".concat(SDL.audio.freq,"!");if(SDL.audio.channels==0)SDL.audio.channels=1;else{if(SDL.audio.channels<0||SDL.audio.channels>32)throw"Unsupported number of audio channels for SDL audio: ".concat(SDL.audio.channels,"!");SDL.audio.channels!=1&&SDL.audio.channels!=2&&out("Warning: Using untested number of audio channels ".concat(SDL.audio.channels))}if(SDL.audio.samples<128||SDL.audio.samples>524288)throw"Unsupported audio callback buffer size ".concat(SDL.audio.samples,"!");if(SDL.audio.samples&SDL.audio.samples-1)throw"Audio callback buffer size ".concat(SDL.audio.samples," must be a power-of-two!");var r=SDL.audio.samples*SDL.audio.channels;if(SDL.audio.format==8)SDL.audio.bytesPerSample=1;else if(SDL.audio.format==32784)SDL.audio.bytesPerSample=2;else if(SDL.audio.format==33056)SDL.audio.bytesPerSample=4;else throw"Invalid SDL audio format ".concat(SDL.audio.format,"!");if(SDL.audio.bufferSize=r*SDL.audio.bytesPerSample,SDL.audio.bufferDurationSecs=SDL.audio.bufferSize/SDL.audio.bytesPerSample/SDL.audio.channels/SDL.audio.freq,SDL.audio.bufferingDelay=.05,SDL.audio.buffer=_malloc(SDL.audio.bufferSize),SDL.audio.numSimultaneouslyQueuedBuffers=Module.SDL_numSimultaneouslyQueuedBuffers||5,SDL.audio.queueNewAudioData=()=>{if(SDL.audio)for(var n=0;n=SDL.audio.bufferingDelay+SDL.audio.bufferDurationSecs*SDL.audio.numSimultaneouslyQueuedBuffers)return;getWasmTableEntry(SDL.audio.callback)(SDL.audio.userdata,SDL.audio.buffer,SDL.audio.bufferSize),SDL.audio.pushAudio(SDL.audio.buffer,SDL.audio.bufferSize)}},SDL.audio.caller=()=>{if(SDL.audio){--SDL.audio.numAudioTimersPending,SDL.audio.queueNewAudioData();var n=SDL.audio.nextPlayTime-SDL.audioContext.currentTime,a=SDL.audio.bufferDurationSecs/2;SDL.audio.numAudioTimersPending{try{if(SDL.audio.paused)return;var l=a/SDL.audio.bytesPerSample,c=l/SDL.audio.channels;if(c!=SDL.audio.samples)throw"Received mismatching audio buffer size!";var u=SDL.audioContext.createBufferSource(),_=SDL.audioContext.createBuffer(SDL.audio.channels,c,SDL.audio.freq);u.connect(SDL.audioContext.destination),SDL.fillWebAudioBufferFromHeap(n,c,_),u.buffer=_;var d=SDL.audioContext.currentTime,f=Math.max(d+SDL.audio.bufferingDelay,SDL.audio.nextPlayTime);typeof u.start<"u"?u.start(f):typeof u.noteOn<"u"&&u.noteOn(f),SDL.audio.nextPlayTime=f+SDL.audio.bufferDurationSecs}catch(p){err("Web Audio API error playing back audio: ".concat(p.toString()))}},t&&(HEAP32[t>>>2>>>0]=SDL.audio.freq,HEAP16[t+4>>>1>>>0]=SDL.audio.format,HEAP8[t+6>>>0]=SDL.audio.channels,HEAP8[t+7>>>0]=SDL.audio.silence,HEAP16[t+8>>>1>>>0]=SDL.audio.samples,HEAPU32[t+16>>>2>>>0]=SDL.audio.callback,HEAPU32[t+20>>>2>>>0]=SDL.audio.userdata),SDL.allocateChannels(32)}catch(n){err('Initializing SDL audio threw an exception: "'.concat(n.toString(),'"! Continuing without audio')),SDL.audio=null,SDL.allocateChannels(0),t&&(HEAP32[t>>>2>>>0]=0,HEAP16[t+4>>>1>>>0]=0,HEAP8[t+6>>>0]=0,HEAP8[t+7>>>0]=0,HEAP16[t+8>>>1>>>0]=0,HEAPU32[t+16>>>2>>>0]=0,HEAPU32[t+20>>>2>>>0]=0)}return SDL.audio?0:-1}_SDL_OpenAudio.sig="ipp";var _SDL_PauseAudio=e=>{SDL.audio&&(e?SDL.audio.timer!==void 0&&(clearTimeout(SDL.audio.timer),SDL.audio.numAudioTimersPending=0,SDL.audio.timer=void 0):SDL.audio.timer||(SDL.audio.numAudioTimersPending=1,SDL.audio.timer=safeSetTimeout(SDL.audio.caller,1)),SDL.audio.paused=e)};_SDL_PauseAudio.sig="vi";var _SDL_CloseAudio=()=>{SDL.audio&&(SDL.audio.callbackRemover&&(SDL.audio.callbackRemover(),SDL.audio.callbackRemover=null),_SDL_PauseAudio(1),_free(SDL.audio.buffer),SDL.audio=null,SDL.allocateChannels(0))};_SDL_CloseAudio.sig="v";var _SDL_LockAudio=()=>{};_SDL_LockAudio.sig="v";var _SDL_UnlockAudio=()=>{};_SDL_UnlockAudio.sig="v";function _SDL_CreateMutex(){return 0}_SDL_CreateMutex.sig="p";function _SDL_mutexP(e){return e>>>=0,0}_SDL_mutexP.sig="ip";function _SDL_mutexV(e){return e>>>=0,0}_SDL_mutexV.sig="ip";function _SDL_DestroyMutex(e){e>>>=0}_SDL_DestroyMutex.sig="vp";function _SDL_CreateCond(){return 0}_SDL_CreateCond.sig="p";function _SDL_CondSignal(e){e>>>=0}_SDL_CondSignal.sig="ip";function _SDL_CondWait(e,t){e>>>=0,t>>>=0}_SDL_CondWait.sig="ipp";function _SDL_DestroyCond(e){e>>>=0}_SDL_DestroyCond.sig="vp";var _SDL_StartTextInput=()=>{SDL.textInput=!0};_SDL_StartTextInput.sig="v";var _SDL_StopTextInput=()=>{SDL.textInput=!1};_SDL_StopTextInput.sig="v";var _Mix_Init=e=>e?8:0;_Mix_Init.sig="ii";var _Mix_Quit=()=>{};_Mix_Quit.sig="v";var _Mix_OpenAudio=(e,t,r,n)=>(SDL.openAudioContext(),autoResumeAudioContext(SDL.audioContext),SDL.allocateChannels(32),SDL.mixerFrequency=e,SDL.mixerFormat=t,SDL.mixerNumChannels=r,SDL.mixerChunkSize=n,0);_Mix_OpenAudio.sig="iiiii";var _Mix_CloseAudio=_SDL_CloseAudio;_Mix_CloseAudio.sig="v";var _Mix_AllocateChannels=e=>(SDL.allocateChannels(e),e);_Mix_AllocateChannels.sig="ii";function _Mix_ChannelFinished(e){e>>>=0,SDL.channelFinished=e}_Mix_ChannelFinished.sig="vp";var _Mix_Volume=(e,t)=>{if(e==-1){for(var r=0;r(t/=255,r/=255,SDL.setPannerPosition(SDL.channels[e],r-t,0,.1),1);_Mix_SetPanning.sig="iiii";function _Mix_LoadWAV_RW(e,t){e>>>=0;var r=SDL.rwops[e];if(r===void 0)return 0;var n="",a,l,c;if(r.filename!==void 0){n=PATH_FS.resolve(r.filename);var u=preloadedAudios[n];if(!u){u===null&&err("Trying to reuse preloaded audio, but freePreloadedMediaOnUse is set!"),Module.noAudioDecoding||warnOnce("Cannot find preloaded audio "+n);try{c=FS.readFile(n)}catch(h){return err("Couldn't find file for: ".concat(n)),0}}Module.freePreloadedMediaOnUse&&(preloadedAudios[n]=null),a=u}else if(r.bytes!==void 0)SDL.webAudioAvailable()?c=HEAPU8.buffer.slice(r.bytes,r.bytes+r.count):c=HEAPU8.subarray(r.bytes>>>0,r.bytes+r.count>>>0);else return 0;var _=c&&(c.buffer||c),d=Module.SDL_canPlayWithWebAudio===void 0||Module.SDL_canPlayWithWebAudio(n,_);if(c!==void 0&&SDL.webAudioAvailable()&&d){a=void 0,l={},l.onDecodeComplete=[];var f=h=>{l.decodedBuffer=h,l.onDecodeComplete.forEach(b=>b()),l.onDecodeComplete=void 0};SDL.audioContext.decodeAudioData(_,f)}else if(a===void 0&&c){var p=new Blob([c],{type:r.mimetype}),m=URL.createObjectURL(p);a=new Audio,a.src=m,a.mozAudioChannelType="content"}var g=SDL.audios.length;return SDL.audios.push({source:n,audio:a,webAudio:l}),g}_Mix_LoadWAV_RW.sig="ppi";function _Mix_LoadWAV(e){e>>>=0;var t=_SDL_RWFromFile(e,0),r=_Mix_LoadWAV_RW(t,0);return _SDL_FreeRW(t),r}_Mix_LoadWAV.sig="pp";function _Mix_QuickLoad_RAW(e,t){e>>>=0;for(var r,n,a=t>>1,l=new Float32Array(a),c=0;c>>1>>>0]/32768;SDL.webAudioAvailable()?(n={},n.decodedBuffer=l):(r=new Audio,r.mozAudioChannelType="content",r.numChannels=SDL.mixerNumChannels,r.frequency=SDL.mixerFrequency);var u=SDL.audios.length;return SDL.audios.push({source:"",audio:r,webAudio:n,buffer:l}),u}_Mix_QuickLoad_RAW.sig="ppi";function _Mix_FreeChunk(e){e>>>=0,SDL.audios[e]=null}_Mix_FreeChunk.sig="vp";var _Mix_ReserveChannels=e=>{SDL.channelMinimumNumber=e};_Mix_ReserveChannels.sig="ii";var _Mix_HaltChannel=e=>{function t(n){var a=SDL.channels[n];a.audio&&(a.audio.pause(),a.audio=null),SDL.channelFinished&&getWasmTableEntry(SDL.channelFinished)(n)}if(e!=-1)t(e);else for(var r=0;r>>=0,assert(n==-1);var a=SDL.audios[t];if(!a||!a.audio&&!a.webAudio)return-1;if(e==-1){for(var l=SDL.channelMinimumNumber;l0;_Mix_FadingChannel.sig="ii";var _Mix_HaltMusic=()=>{var e=SDL.music.audio;return e&&(e.src=e.src,e.currentPosition=0,e.pause()),SDL.music.audio=null,SDL.hookMusicFinished&&getWasmTableEntry(SDL.hookMusicFinished)(),0};_Mix_HaltMusic.sig="i";function _Mix_HookMusicFinished(e){e>>>=0,SDL.hookMusicFinished=e,SDL.music.audio&&(SDL.music.audio.onended=_Mix_HaltMusic)}_Mix_HookMusicFinished.sig="vp";var _Mix_VolumeMusic=e=>SDL.setGetVolume(SDL.music,e);_Mix_VolumeMusic.sig="ii";function _Mix_LoadMUS_RW(e){return e>>>=0,_Mix_LoadWAV_RW(e,0)}_Mix_LoadMUS_RW.sig="pp";function _Mix_LoadMUS(e){e>>>=0;var t=_SDL_RWFromFile(e,0),r=_Mix_LoadMUS_RW(t);return _SDL_FreeRW(t),r}_Mix_LoadMUS.sig="pp";var _Mix_FreeMusic=_Mix_FreeChunk;_Mix_FreeMusic.sig="vp";function _Mix_PlayMusic(e,t){e>>>=0,SDL.music.audio&&(SDL.music.audio.paused||err("Music is already playing. ".concat(SDL.music.source)),SDL.music.audio.pause());var r=SDL.audios[e],n;return r.webAudio?(n={},n.resource=r,n.paused=!1,n.currentPosition=0,n.play=function(){SDL.playWebAudio(this)},n.pause=function(){SDL.pauseWebAudio(this)}):r.audio&&(n=r.audio),n.onended=function(){var a;(SDL.music.audio===this||((a=SDL.music.audio)==null?void 0:a.webAudioNode)===this)&&_Mix_HaltMusic()},n.loop=t!=0&&t!=1,n.volume=SDL.music.volume,SDL.music.audio=n,n.play(),0}_Mix_PlayMusic.sig="ipi";var _Mix_PauseMusic=()=>{var e=SDL.music.audio;e==null||e.pause()};_Mix_PauseMusic.sig="v";var _Mix_ResumeMusic=()=>{var e=SDL.music.audio;e==null||e.play()};_Mix_ResumeMusic.sig="v";var _Mix_FadeInMusicPos=_Mix_PlayMusic;_Mix_FadeInMusicPos.sig="ipiid";var _Mix_FadeOutMusic=_Mix_HaltMusic;_Mix_FadeOutMusic.sig="ii";var _Mix_PlayingMusic=()=>SDL.music.audio&&!SDL.music.audio.paused?1:0;_Mix_PlayingMusic.sig="i";var _Mix_Playing=e=>{if(e===-1){for(var t=0,r=0;r{if(e===-1){for(var t=0;t{var a;if(e===-1){for(var t=0,r=0;r{var e;return(e=SDL.music.audio)!=null&&e.paused?1:0};_Mix_PausedMusic.sig="i";var _Mix_Resume=e=>{if(e===-1){for(var t=0;t{try{var e=new OffscreenCanvas(0,0);if(SDL.ttfContext=e.getContext("2d"),typeof SDL.ttfContext.measureText!="function")throw"bad context"}catch(r){var t=document.createElement("canvas");SDL.ttfContext=t.getContext("2d")}return 0};_TTF_Init.sig="i";function _TTF_OpenFont(e,t){e>>>=0,e=PATH.normalize(UTF8ToString(e));var r=SDL.fonts.length;return SDL.fonts.push({name:e,size:t}),r}_TTF_OpenFont.sig="ppi";function _TTF_CloseFont(e){e>>>=0,SDL.fonts[e]=null}_TTF_CloseFont.sig="vp";function _TTF_RenderText_Solid(e,t,r){e>>>=0,t>>>=0,r>>>=0,t=UTF8ToString(t)||" ";var n=SDL.fonts[e],a=SDL.estimateTextWidth(n,t),l=n.size;r=SDL.loadColorToCSSRGB(r);var c=SDL.makeFontString(l,n.name),u=SDL.makeSurface(a,l,0,!1,"text:"+t),_=SDL.surfaces[u];return _.ctx.save(),_.ctx.fillStyle=r,_.ctx.font=c,_.ctx.textBaseline="bottom",_.ctx.fillText(t,0,l|0),_.ctx.restore(),u}_TTF_RenderText_Solid.sig="pppp";var _TTF_RenderText_Blended=_TTF_RenderText_Solid;_TTF_RenderText_Blended.sig="pppp";var _TTF_RenderText_Shaded=_TTF_RenderText_Solid;_TTF_RenderText_Shaded.sig="ppppp";var _TTF_RenderUTF8_Solid=_TTF_RenderText_Solid;_TTF_RenderUTF8_Solid.sig="pppp";function _TTF_SizeText(e,t,r,n){e>>>=0,t>>>=0,r>>>=0,n>>>=0;var a=SDL.fonts[e];return r&&(HEAP32[r>>>2>>>0]=SDL.estimateTextWidth(a,UTF8ToString(t))),n&&(HEAP32[n>>>2>>>0]=a.size),0}_TTF_SizeText.sig="ipppp";var _TTF_SizeUTF8=_TTF_SizeText;_TTF_SizeUTF8.sig="ipppp";function _TTF_GlyphMetrics(e,t,r,n,a,l,c){e>>>=0,r>>>=0,n>>>=0,a>>>=0,l>>>=0,c>>>=0;var u=SDL.fonts[e],_=SDL.estimateTextWidth(u,String.fromCharCode(t));c&&(HEAP32[c>>>2>>>0]=_),r&&(HEAP32[r>>>2>>>0]=0),n&&(HEAP32[n>>>2>>>0]=_),a&&(HEAP32[a>>>2>>>0]=0),l&&(HEAP32[l>>>2>>>0]=u.size)}_TTF_GlyphMetrics.sig="ipippppp";function _TTF_FontAscent(e){e>>>=0;var t=SDL.fonts[e];return t.size*.98|0}_TTF_FontAscent.sig="ip";function _TTF_FontDescent(e){e>>>=0;var t=SDL.fonts[e];return t.size*.02|0}_TTF_FontDescent.sig="ip";function _TTF_FontHeight(e){e>>>=0;var t=SDL.fonts[e];return t.size}_TTF_FontHeight.sig="ip";var _TTF_FontLineSkip=_TTF_FontHeight;_TTF_FontLineSkip.sig="ip";var _TTF_Quit=()=>out("TTF_Quit called (and ignored)");_TTF_Quit.sig="v";var SDL_gfx={drawRectangle:(e,t,r,n,a,l,c)=>{t=t<<16>>16,r=r<<16>>16,n=n<<16>>16,a=a<<16>>16;var u=SDL.surfaces[e];assert(!u.locked);var _=t{t=t<<16>>16,r=r<<16>>16,n=n<<16>>16,a=a<<16>>16;var c=SDL.surfaces[e];assert(!c.locked),c.ctx.save(),c.ctx.strokeStyle=l,c.ctx.beginPath(),c.ctx.moveTo(t,r),c.ctx.lineTo(n,a),c.ctx.stroke(),c.ctx.restore()},drawEllipse:(e,t,r,n,a,l,c)=>{t=t<<16>>16,r=r<<16>>16,n=n<<16>>16,a=a<<16>>16;var u=SDL.surfaces[e];assert(!u.locked),u.ctx.save(),u.ctx.beginPath(),u.ctx.translate(t,r),u.ctx.scale(n,a),u.ctx.arc(0,0,1,0,2*Math.PI),u.ctx.restore(),u.ctx.save(),u.ctx[l+"Style"]=c,u.ctx[l](),u.ctx.restore()},translateColorToCSSRGBA:e=>"rgba(".concat(e>>>24,",").concat(e>>16&255,",").concat(e>>8&255,",").concat(e&255,")")};function _boxColor(e,t,r,n,a,l){return e>>>=0,SDL_gfx.drawRectangle(e,t,r,n,a,"fill",SDL_gfx.translateColorToCSSRGBA(l))}_boxColor.sig="ipiiiii";function _boxRGBA(e,t,r,n,a,l,c,u,_){return e>>>=0,SDL_gfx.drawRectangle(e,t,r,n,a,"fill",SDL.translateRGBAToCSSRGBA(l,c,u,_))}_boxRGBA.sig="ipiiiiiiii";function _rectangleColor(e,t,r,n,a,l){return e>>>=0,SDL_gfx.drawRectangle(e,t,r,n,a,"stroke",SDL_gfx.translateColorToCSSRGBA(l))}_rectangleColor.sig="ipiiiii";function _rectangleRGBA(e,t,r,n,a,l,c,u,_){return e>>>=0,SDL_gfx.drawRectangle(e,t,r,n,a,"stroke",SDL.translateRGBAToCSSRGBA(l,c,u,_))}_rectangleRGBA.sig="ipiiiiiiii";function _ellipseColor(e,t,r,n,a,l){return e>>>=0,SDL_gfx.drawEllipse(e,t,r,n,a,"stroke",SDL_gfx.translateColorToCSSRGBA(l))}_ellipseColor.sig="ipiiiii";function _ellipseRGBA(e,t,r,n,a,l,c,u,_){return e>>>=0,SDL_gfx.drawEllipse(e,t,r,n,a,"stroke",SDL.translateRGBAToCSSRGBA(l,c,u,_))}_ellipseRGBA.sig="ipiiiiiiii";function _filledEllipseColor(e,t,r,n,a,l){return e>>>=0,SDL_gfx.drawEllipse(e,t,r,n,a,"fill",SDL_gfx.translateColorToCSSRGBA(l))}_filledEllipseColor.sig="ipiiiii";function _filledEllipseRGBA(e,t,r,n,a,l,c,u,_){return e>>>=0,SDL_gfx.drawEllipse(e,t,r,n,a,"fill",SDL.translateRGBAToCSSRGBA(l,c,u,_))}_filledEllipseRGBA.sig="ipiiiiiiii";function _lineColor(e,t,r,n,a,l){return e>>>=0,SDL_gfx.drawLine(e,t,r,n,a,SDL_gfx.translateColorToCSSRGBA(l))}_lineColor.sig="ipiiiii";function _lineRGBA(e,t,r,n,a,l,c,u,_){return e>>>=0,SDL_gfx.drawLine(e,t,r,n,a,SDL.translateRGBAToCSSRGBA(l,c,u,_))}_lineRGBA.sig="ipiiiiiiii";function _pixelRGBA(e,t,r,n,a,l,c){return e>>>=0,_boxRGBA(e,t,r,t,r,n,a,l,c)}_pixelRGBA.sig="ipiiiiii";var _SDL_GL_SetAttribute=(e,t)=>{e in SDL.glAttributes||abort("Unknown SDL GL attribute ("+e+"). Please check if your SDL version is supported."),SDL.glAttributes[e]=t};_SDL_GL_SetAttribute.sig="iii";function _SDL_GL_GetAttribute(e,t){return t>>>=0,e in SDL.glAttributes||abort("Unknown SDL GL attribute ("+e+"). Please check if your SDL version is supported."),t&&(HEAP32[t>>>2>>>0]=SDL.glAttributes[e]),0}_SDL_GL_GetAttribute.sig="iip";var _SDL_GL_SwapBuffers=()=>{var e;(e=Browser.doSwapBuffers)==null||e.call(Browser)};_SDL_GL_SwapBuffers.sig="v";function _SDL_GL_ExtensionSupported(e){return e>>>=0,Module.ctx.getExtension(e)|0}_SDL_GL_ExtensionSupported.sig="ip";function _SDL_DestroyWindow(e){e>>>=0}_SDL_DestroyWindow.sig="vp";function _SDL_DestroyRenderer(e){e>>>=0}_SDL_DestroyRenderer.sig="vp";function _SDL_GetWindowFlags(e){return e>>>=0,Browser.isFullscreen?1:0}_SDL_GetWindowFlags.sig="ip";function _SDL_GL_SwapWindow(e){e>>>=0}_SDL_GL_SwapWindow.sig="vp";function _SDL_GL_MakeCurrent(e,t){e>>>=0,t>>>=0}_SDL_GL_MakeCurrent.sig="ipp";function _SDL_GL_DeleteContext(e){e>>>=0}_SDL_GL_DeleteContext.sig="vp";var _SDL_GL_GetSwapInterval=()=>MainLoop.timingMode==1?MainLoop.timingValue:0;_SDL_GL_GetSwapInterval.sig="i";var _SDL_GL_SetSwapInterval=e=>{_emscripten_set_main_loop_timing(1,e)};_SDL_GL_SetSwapInterval.sig="ii";function _SDL_SetWindowTitle(e,t){e>>>=0,t>>>=0,t&&(document.title=UTF8ToString(t))}_SDL_SetWindowTitle.sig="vpp";function _SDL_GetWindowSize(e,t,r){e>>>=0,t>>>=0,r>>>=0;var n=Module.canvas.width,a=Module.canvas.height;t&&(HEAP32[t>>>2>>>0]=n),r&&(HEAP32[r>>>2>>>0]=a)}_SDL_GetWindowSize.sig="vppp";function _SDL_LogSetOutputFunction(e,t){e>>>=0,t>>>=0}_SDL_LogSetOutputFunction.sig="vpp";function _SDL_SetWindowFullscreen(e,t){return e>>>=0,Browser.isFullscreen?(Module.canvas.exitFullscreen(),1):0}_SDL_SetWindowFullscreen.sig="ipi";var _SDL_ClearError=()=>{};_SDL_ClearError.sig="v";var _SDL_SetGamma=(e,t,r)=>-1;_SDL_SetGamma.sig="ifff";function _SDL_SetGammaRamp(e,t,r){return e>>>=0,t>>>=0,r>>>=0,-1}_SDL_SetGammaRamp.sig="ippp";var _SDL_NumJoysticks=()=>{for(var e=0,t=SDL.getGamepads(),r=0;rSDL.lastJoystickState.hasOwnProperty(e+1)?1:0;_SDL_JoystickOpened.sig="ii";function _SDL_JoystickIndex(e){return e>>>=0,e-1}_SDL_JoystickIndex.sig="ip";function _SDL_JoystickNumAxes(e){e>>>=0;var t=SDL.getGamepad(e-1);return t?t.axes.length:0}_SDL_JoystickNumAxes.sig="ip";function _SDL_JoystickNumBalls(e){return e>>>=0,0}_SDL_JoystickNumBalls.sig="ip";function _SDL_JoystickNumHats(e){return e>>>=0,0}_SDL_JoystickNumHats.sig="ip";function _SDL_JoystickNumButtons(e){e>>>=0;var t=SDL.getGamepad(e-1);return t?t.buttons.length:0}_SDL_JoystickNumButtons.sig="ip";var _SDL_JoystickUpdate=()=>SDL.queryJoysticks();_SDL_JoystickUpdate.sig="v";var _SDL_JoystickEventState=e=>e<0?SDL.joystickEventState:SDL.joystickEventState=e;_SDL_JoystickEventState.sig="ii";function _SDL_JoystickGetAxis(e,t){e>>>=0;var r=SDL.getGamepad(e-1);return r&&r.axes.length>t?SDL.joystickAxisValueConversion(r.axes[t]):0}_SDL_JoystickGetAxis.sig="ipi";function _SDL_JoystickGetHat(e,t){return e>>>=0,0}_SDL_JoystickGetHat.sig="ipi";function _SDL_JoystickGetBall(e,t,r,n){return e>>>=0,r>>>=0,n>>>=0,-1}_SDL_JoystickGetBall.sig="ipipp";function _SDL_JoystickGetButton(e,t){e>>>=0;var r=SDL.getGamepad(e-1);return r&&r.buttons.length>t&&SDL.getJoystickButtonState(r.buttons[t])?1:0}_SDL_JoystickGetButton.sig="ipi";function _SDL_JoystickClose(e){e>>>=0,delete SDL.lastJoystickState[e]}_SDL_JoystickClose.sig="vp";var _SDL_InitSubSystem=e=>0;_SDL_InitSubSystem.sig="ii";function _SDL_RWFromConstMem(e,t){e>>>=0;var r=SDL.rwops.length;return SDL.rwops.push({bytes:e,count:t}),r}_SDL_RWFromConstMem.sig="ppi";var _SDL_RWFromMem=_SDL_RWFromConstMem;_SDL_RWFromMem.sig="ppi";var _SDL_GetNumAudioDrivers=()=>1;_SDL_GetNumAudioDrivers.sig="i";function _SDL_GetCurrentAudioDriver(){return stringToNewUTF8("Emscripten Audio")}_SDL_GetCurrentAudioDriver.sig="p";var _SDL_GetScancodeFromKey=e=>SDL.scanCodes[e];_SDL_GetScancodeFromKey.sig="ii";function _SDL_GetAudioDriver(e){return _SDL_GetCurrentAudioDriver()}_SDL_GetAudioDriver.sig="pi";var _SDL_EnableUNICODE=e=>{var t=SDL.unicode||0;return SDL.unicode=e,t};_SDL_EnableUNICODE.sig="ii";var _SDL_AddTimer=function(e,t,r){return t>>>=0,r>>>=0,safeSetTimeout(()=>getWasmTableEntry(t)(e,r),e)};_SDL_AddTimer.sig="iipp";var _SDL_RemoveTimer=e=>(clearTimeout(e),!0);_SDL_RemoveTimer.sig="ii";function _SDL_CreateThread(e,t,r,n){throw e>>>=0,t>>>=0,"SDL threads cannot be supported in the web platform because they assume shared state. See emscripten_create_worker etc. for a message-passing concurrency model that does let you run code in another thread."}_SDL_CreateThread.sig="ppp";function _SDL_WaitThread(e,t){throw e>>>=0,t>>>=0,"SDL_WaitThread"}_SDL_WaitThread.sig="vpp";function _SDL_GetThreadID(e){throw e>>>=0,"SDL_GetThreadID"}_SDL_GetThreadID.sig="pp";function _SDL_ThreadID(){return 0}_SDL_ThreadID.sig="p";function _SDL_AllocRW(){throw"SDL_AllocRW: TODO"}_SDL_AllocRW.sig="p";function _SDL_CondBroadcast(e){throw e>>>=0,"SDL_CondBroadcast: TODO"}_SDL_CondBroadcast.sig="ip";function _SDL_CondWaitTimeout(e,t,r){throw e>>>=0,t>>>=0,"SDL_CondWaitTimeout: TODO"}_SDL_CondWaitTimeout.sig="ippi";var _SDL_WM_IconifyWindow=()=>{throw"SDL_WM_IconifyWindow TODO"};_SDL_WM_IconifyWindow.sig="i";function _Mix_SetPostMix(e,t){return e>>>=0,t>>>=0,warnOnce("Mix_SetPostMix: TODO")}_Mix_SetPostMix.sig="vpp";function _Mix_VolumeChunk(e,t){throw e>>>=0,"Mix_VolumeChunk: TODO"}_Mix_VolumeChunk.sig="ipi";var _Mix_SetPosition=(e,t,r)=>{throw"Mix_SetPosition: TODO"};_Mix_SetPosition.sig="iiii";function _Mix_QuerySpec(e,t,r){throw e>>>=0,t>>>=0,r>>>=0,"Mix_QuerySpec: TODO"}_Mix_QuerySpec.sig="ippp";function _Mix_FadeInChannelTimed(e,t,r,n,a){throw t>>>=0,"Mix_FadeInChannelTimed"}_Mix_FadeInChannelTimed.sig="iipiii";var _Mix_FadeOutChannel=()=>{throw"Mix_FadeOutChannel"};_Mix_FadeOutChannel.sig="iii";function _Mix_Linked_Version(){throw"Mix_Linked_Version: TODO"}_Mix_Linked_Version.sig="p";function _SDL_SaveBMP_RW(e,t,r){throw e>>>=0,t>>>=0,"SDL_SaveBMP_RW: TODO"}_SDL_SaveBMP_RW.sig="ippi";function _SDL_WM_SetIcon(e,t){e>>>=0,t>>>=0}_SDL_WM_SetIcon.sig="vpp";var _SDL_HasRDTSC=()=>0;_SDL_HasRDTSC.sig="i";var _SDL_HasMMX=()=>0;_SDL_HasMMX.sig="i";var _SDL_HasMMXExt=()=>0;_SDL_HasMMXExt.sig="i";var _SDL_Has3DNow=()=>0;_SDL_Has3DNow.sig="i";var _SDL_Has3DNowExt=()=>0;_SDL_Has3DNowExt.sig="i";var _SDL_HasSSE=()=>0;_SDL_HasSSE.sig="i";var _SDL_HasSSE2=()=>0;_SDL_HasSSE2.sig="i";var _SDL_HasAltiVec=()=>0;_SDL_HasAltiVec.sig="i";var ALLOC_NORMAL=0,ALLOC_STACK=1,allocate=(e,t)=>{var r;return t==ALLOC_STACK?r=stackAlloc(e.length):r=_malloc(e.length),!e.subarray&&!e.slice&&(e=new Uint8Array(e)),HEAPU8.set(e,r>>>0),r},writeStringToMemory=(e,t,r)=>{warnOnce("writeStringToMemory is deprecated and should not be called! Use stringToUTF8() instead!");var n,a;r&&(a=t+lengthBytesUTF8(e),n=HEAP8[a>>>0]),stringToUTF8(e,t,1/0),r&&(HEAP8[a>>>0]=n)},writeAsciiToMemory=(e,t,r)=>{for(var n=0;n>>0]=e.charCodeAt(n);r||(HEAP8[t>>>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 t=e;t.startsWith("__Z")&&(t=t.substr(1));var r=stringToUTF8OnStack(t),n=stackAlloc(4),a=___cxa_demangle(r,0,0,n);if(HEAP32[n>>>2>>>0]===0&&a)return UTF8ToString(a)}catch(l){}finally{_free(a),demangle.recursionGuard<2&&--demangle.recursionGuard}return e})),stackTrace=()=>{var e=jsStackTrace();return Module.extraStackTrace&&(e+="\n"+Module.extraStackTrace()),e},print=out,printErr=err,_emscripten_is_main_browser_thread=()=>!ENVIRONMENT_IS_WORKER,tupleRegistrations={},structRegistrations={},getTypeName=e=>{var t=___getTypeName(e),r=readLatin1String(t);return _free(t),r},getFunctionName=e=>{e=e.trim();let t=e.indexOf("(");return t!==-1?e.substr(0,t):e},getFunctionArgsName=e=>{e=e.trim();let t=e.indexOf("(")+1;return t!==0?e.substr(t,e.length-t-1).replaceAll(" ","").split(",").filter(r=>r.length):[]},heap32VectorToArray=(e,t)=>{for(var r=[],n=0;n>>2>>>0]);return r},requireRegisteredType=(e,t)=>{var r=registeredTypes[e];return r===void 0&&throwBindingError("".concat(t," has unknown type ").concat(getTypeName(e))),r};function usesDestructorStack(e){for(var t=1;tr){var l=t==r?t:"".concat(t," to ").concat(r);a("function ".concat(n," called with ").concat(e," arguments, expected ").concat(l))}}function getRequiredArgCount(e){for(var t=e.length-2,r=e.length-1;r>=2&&e[r].optional;--r)t--;return t}function createJsInvoker(e,t,r,n){var a=usesDestructorStack(e),l=e.length-2,c=[],u=["fn"];t&&u.push("thisWired");for(var _=0;_Object.defineProperty(t,"name",{value:e}),extendError=(e,t)=>{var r=createNamedFunction(t,function(n){this.name=t,this.message=n;var a=new Error(n).stack;a!==void 0&&(this.stack=this.toString()+"\n"+a.replace(/^Error(:[^\n]*)?\n/,""))});return r.prototype=Object.create(e.prototype),r.prototype.constructor=r,r.prototype.toString=function(){return this.message===void 0?this.name:"".concat(this.name,": ").concat(this.message)},r},UnboundTypeError,PureVirtualError,EmValOptionalType=Object.assign({optional:!0},EmValType),throwUnboundTypeError=(e,t)=>{var r=[],n={};function a(l){if(!n[l]&&!registeredTypes[l]){if(typeDependencies[l]){typeDependencies[l].forEach(a);return}r.push(l),n[l]=!0}}throw t.forEach(a),new UnboundTypeError("".concat(e,": ")+r.map(getTypeName).join([", "]))},ensureOverloadTable=(e,t,r)=>{if(e[t].overloadTable===void 0){var n=e[t];e[t]=function(...a){return e[t].overloadTable.hasOwnProperty(a.length)||throwBindingError("Function '".concat(r,"' called with an invalid number of arguments (").concat(a.length,") - expects one of (").concat(e[t].overloadTable,")!")),e[t].overloadTable[a.length].apply(this,a)},e[t].overloadTable=[],e[t].overloadTable[n.argCount]=n}},exposePublicSymbol=(e,t,r)=>{Module.hasOwnProperty(e)?((r===void 0||Module[e].overloadTable!==void 0&&Module[e].overloadTable[r]!==void 0)&&throwBindingError("Cannot register public name '".concat(e,"' twice")),ensureOverloadTable(Module,e,e),Module[e].overloadTable.hasOwnProperty(r)&&throwBindingError("Cannot register multiple overloads of a function with the same number of arguments (".concat(r,")!")),Module[e].overloadTable[r]=t):(Module[e]=t,Module[e].argCount=r)},replacePublicSymbol=(e,t,r)=>{Module.hasOwnProperty(e)||throwInternalError("Replacing nonexistent public symbol"),Module[e].overloadTable!==void 0&&r!==void 0?Module[e].overloadTable[r]=t:(Module[e]=t,Module[e].argCount=r)},registeredInstances={},getBasestPointer=(e,t)=>{for(t===void 0&&throwBindingError("ptr should not be undefined");e.baseClass;)t=e.upcast(t),e=e.baseClass;return t},registerInheritedInstance=(e,t,r)=>{t=getBasestPointer(e,t),registeredInstances.hasOwnProperty(t)?throwBindingError("Tried to register registered instance: ".concat(t)):registeredInstances[t]=r},unregisterInheritedInstance=(e,t)=>{t=getBasestPointer(e,t),registeredInstances.hasOwnProperty(t)?delete registeredInstances[t]:throwBindingError("Tried to unregister unregistered instance: ".concat(t))},getInheritedInstance=(e,t)=>(t=getBasestPointer(e,t),registeredInstances[t]),getInheritedInstanceCount=()=>Object.keys(registeredInstances).length,getLiveInheritedInstances=()=>{var e=[];for(var t in registeredInstances)registeredInstances.hasOwnProperty(t)&&e.push(registeredInstances[t]);return e},registeredPointers={},enumReadValueFromPointer=(e,t,r)=>{switch(t){case 1:return r?function(n){return this.fromWireType(HEAP8[n>>>0])}:function(n){return this.fromWireType(HEAPU8[n>>>0])};case 2:return r?function(n){return this.fromWireType(HEAP16[n>>>1>>>0])}:function(n){return this.fromWireType(HEAPU16[n>>>1>>>0])};case 4:return r?function(n){return this.fromWireType(HEAP32[n>>>2>>>0])}:function(n){return this.fromWireType(HEAPU32[n>>>2>>>0])};default:throw new TypeError("invalid integer width (".concat(t,"): ").concat(e))}};function __embind_register_user_type(e,t){e>>>=0,t>>>=0,__embind_register_emval(e)}__embind_register_user_type.sig="vpp";function __embind_register_optional(e,t){e>>>=0,t>>>=0,registerType(e,EmValOptionalType)}__embind_register_optional.sig="vpp";var runDestructors=e=>{for(;e.length;){var t=e.pop(),r=e.pop();r(t)}};function newFunc(e,t){if(!(e instanceof Function))throw new TypeError("new_ called with constructor type ".concat(typeof e," which is not a function"));var r=createNamedFunction(e.name||"unknownFunctionName",function(){});r.prototype=e.prototype;var n=new r,a=e.apply(n,t);return a instanceof Object?a:n}function craftInvokerFunction(e,t,r,n,a,l){var c=t.length;c<2&&throwBindingError("argTypes array size mismatch! Must at least get return value and 'this' types!");for(var u=t[1]!==null&&r!==null,_=usesDestructorStack(t),d=t[0].name!=="void",f=c-2,p=[e,throwBindingError,n,a,runDestructors,t[0],t[1]],m=0;m{e=readLatin1String(e);function r(){return e.includes("j")||e.includes("p")?getDynCaller(e,t):getWasmTableEntry(t)}var n=r();return typeof n!="function"&&throwBindingError("unknown function pointer with signature ".concat(e,": ").concat(t)),n};function __embind_register_function(e,t,r,n,a,l,c,u){e>>>=0,r>>>=0,n>>>=0,a>>>=0,l>>>=0;var _=heap32VectorToArray(t,r);e=readLatin1String(e),e=getFunctionName(e),a=embind__requireFunction(n,a),exposePublicSymbol(e,function(){throwUnboundTypeError("Cannot call ".concat(e," due to unbound types"),_)},t-1),whenDependentTypesAreResolved([],_,d=>{var f=[d[0],null].concat(d.slice(1));return replacePublicSymbol(e,craftInvokerFunction(e,f,null,a,l,c),t-1),[]})}__embind_register_function.sig="vpippppii";function __embind_register_value_array(e,t,r,n,a,l){e>>>=0,t>>>=0,r>>>=0,n>>>=0,a>>>=0,l>>>=0,tupleRegistrations[e]={name:readLatin1String(t),rawConstructor:embind__requireFunction(r,n),rawDestructor:embind__requireFunction(a,l),elements:[]}}__embind_register_value_array.sig="vpppppp";function __embind_register_value_array_element(e,t,r,n,a,l,c,u,_){e>>>=0,t>>>=0,r>>>=0,n>>>=0,a>>>=0,l>>>=0,c>>>=0,u>>>=0,_>>>=0,tupleRegistrations[e].elements.push({getterReturnType:t,getter:embind__requireFunction(r,n),getterContext:a,setterArgumentType:l,setter:embind__requireFunction(c,u),setterContext:_})}__embind_register_value_array_element.sig="vppppppppp";var __embind_finalize_value_array=function(e){e>>>=0;var t=tupleRegistrations[e];delete tupleRegistrations[e];var r=t.elements,n=r.length,a=r.map(u=>u.getterReturnType).concat(r.map(u=>u.setterArgumentType)),l=t.rawConstructor,c=t.rawDestructor;whenDependentTypesAreResolved([e],a,u=>(r.forEach((_,d)=>{var f=u[d],p=_.getter,m=_.getterContext,g=u[d+n],h=_.setter,b=_.setterContext;_.read=y=>f.fromWireType(p(m,y)),_.write=(y,A)=>{var F=[];h(b,y,g.toWireType(F,A)),runDestructors(F)}}),[{name:t.name,fromWireType:_=>{for(var d=new Array(n),f=0;f{if(n!==d.length)throw new TypeError("Incorrect number of tuple elements for ".concat(t.name,": expected=").concat(n,", actual=").concat(d.length));for(var f=l(),p=0;p>>=0,t>>>=0,r>>>=0,n>>>=0,a>>>=0,l>>>=0,structRegistrations[e]={name:readLatin1String(t),rawConstructor:embind__requireFunction(r,n),rawDestructor:embind__requireFunction(a,l),fields:[]}}__embind_register_value_object.sig="vpppppp";function __embind_register_value_object_field(e,t,r,n,a,l,c,u,_,d){e>>>=0,t>>>=0,r>>>=0,n>>>=0,a>>>=0,l>>>=0,c>>>=0,u>>>=0,_>>>=0,d>>>=0,structRegistrations[e].fields.push({fieldName:readLatin1String(t),getterReturnType:r,getter:embind__requireFunction(n,a),getterContext:l,setterArgumentType:c,setter:embind__requireFunction(u,_),setterContext:d})}__embind_register_value_object_field.sig="vpppppppppp";var __embind_finalize_value_object=function(e){e>>>=0;var t=structRegistrations[e];delete structRegistrations[e];var r=t.rawConstructor,n=t.rawDestructor,a=t.fields,l=a.map(c=>c.getterReturnType).concat(a.map(c=>c.setterArgumentType));whenDependentTypesAreResolved([e],l,c=>{var u={};return a.forEach((_,d)=>{var f=_.fieldName,p=c[d],m=_.getter,g=_.getterContext,h=c[d+a.length],b=_.setter,y=_.setterContext;u[f]={read:A=>p.fromWireType(m(g,A)),write:(A,F)=>{var C=[];b(y,A,h.toWireType(C,F)),runDestructors(C)}}}),[{name:t.name,fromWireType:_=>{var d={};for(var f in u)d[f]=u[f].read(_);return n(_),d},toWireType:(_,d)=>{for(var f in u)if(!(f in d))throw new TypeError('Missing field: "'.concat(f,'"'));var p=r();for(f in u)u[f].write(p,d[f]);return _!==null&&_.push(n,p),p},argPackAdvance:GenericWireTypeSize,readValueFromPointer:readPointer,destructorFunction:n}]})};__embind_finalize_value_object.sig="vp";var upcastPointer=(e,t,r)=>{for(;t!==r;)t.upcast||throwBindingError("Expected null or instance of ".concat(r.name,", got an instance of ").concat(t.name)),e=t.upcast(e),t=t.baseClass;return e};function genericPointerToWireType(e,t){var r;if(t===null)return this.isReference&&throwBindingError("null is not a valid ".concat(this.name)),this.isSmartPointer?(r=this.rawConstructor(),e!==null&&e.push(this.rawDestructor,r),r):0;(!t||!t.$$)&&throwBindingError('Cannot pass "'.concat(embindRepr(t),'" as a ').concat(this.name)),t.$$.ptr||throwBindingError("Cannot pass deleted object as a pointer of type ".concat(this.name)),!this.isConst&&t.$$.ptrType.isConst&&throwBindingError("Cannot convert argument of type ".concat(t.$$.smartPtrType?t.$$.smartPtrType.name:t.$$.ptrType.name," to parameter type ").concat(this.name));var n=t.$$.ptrType.registeredClass;if(r=upcastPointer(t.$$.ptr,n,this.registeredClass),this.isSmartPointer)switch(t.$$.smartPtr===void 0&&throwBindingError("Passing raw pointer to smart pointer is illegal"),this.sharingPolicy){case 0:t.$$.smartPtrType===this?r=t.$$.smartPtr:throwBindingError("Cannot convert argument of type ".concat(t.$$.smartPtrType?t.$$.smartPtrType.name:t.$$.ptrType.name," to parameter type ").concat(this.name));break;case 1:r=t.$$.smartPtr;break;case 2:if(t.$$.smartPtrType===this)r=t.$$.smartPtr;else{var a=t.clone();r=this.rawShare(r,Emval.toHandle(()=>a.delete())),e!==null&&e.push(this.rawDestructor,r)}break;default:throwBindingError("Unsupporting sharing policy")}return r}function constNoSmartPtrRawPointerToWireType(e,t){if(t===null)return this.isReference&&throwBindingError("null is not a valid ".concat(this.name)),0;t.$$||throwBindingError('Cannot pass "'.concat(embindRepr(t),'" as a ').concat(this.name)),t.$$.ptr||throwBindingError("Cannot pass deleted object as a pointer of type ".concat(this.name));var r=t.$$.ptrType.registeredClass,n=upcastPointer(t.$$.ptr,r,this.registeredClass);return n}function nonConstNoSmartPtrRawPointerToWireType(e,t){if(t===null)return this.isReference&&throwBindingError("null is not a valid ".concat(this.name)),0;t.$$||throwBindingError('Cannot pass "'.concat(embindRepr(t),'" as a ').concat(this.name)),t.$$.ptr||throwBindingError("Cannot pass deleted object as a pointer of type ".concat(this.name)),t.$$.ptrType.isConst&&throwBindingError("Cannot convert argument of type ".concat(t.$$.ptrType.name," to parameter type ").concat(this.name));var r=t.$$.ptrType.registeredClass,n=upcastPointer(t.$$.ptr,r,this.registeredClass);return n}function RegisteredPointer(e,t,r,n,a,l,c,u,_,d,f){this.name=e,this.registeredClass=t,this.isReference=r,this.isConst=n,this.isSmartPointer=a,this.pointeeType=l,this.sharingPolicy=c,this.rawGetPointee=u,this.rawConstructor=_,this.rawShare=d,this.rawDestructor=f,!a&&t.baseClass===void 0?n?(this.toWireType=constNoSmartPtrRawPointerToWireType,this.destructorFunction=null):(this.toWireType=nonConstNoSmartPtrRawPointerToWireType,this.destructorFunction=null):this.toWireType=genericPointerToWireType}var downcastPointer=(e,t,r)=>{if(t===r)return e;if(r.baseClass===void 0)return null;var n=downcastPointer(e,t,r.baseClass);return n===null?null:r.downcast(n)},finalizationRegistry=!1,detachFinalizer=e=>{},runDestructor=e=>{e.smartPtr?e.smartPtrType.rawDestructor(e.smartPtr):e.ptrType.registeredClass.rawDestructor(e.ptr)},releaseClassHandle=e=>{e.count.value-=1;var t=e.count.value===0;t&&runDestructor(e)},attachFinalizer=e=>typeof FinalizationRegistry>"u"?(attachFinalizer=t=>t,e):(finalizationRegistry=new FinalizationRegistry(t=>{releaseClassHandle(t.$$)}),attachFinalizer=t=>{var r=t.$$,n=!!r.smartPtr;if(n){var a={$$:r};finalizationRegistry.register(t,a,t)}return t},detachFinalizer=t=>finalizationRegistry.unregister(t),attachFinalizer(e)),makeClassHandle=(e,t)=>{(!t.ptrType||!t.ptr)&&throwInternalError("makeClassHandle requires ptr and ptrType");var r=!!t.smartPtrType,n=!!t.smartPtr;return r!==n&&throwInternalError("Both smartPtrType and smartPtr must be specified"),t.count={value:1},attachFinalizer(Object.create(e,{$$:{value:t,writable:!0}}))};function RegisteredPointer_fromWireType(e){var t=this.getPointee(e);if(!t)return this.destructor(e),null;var r=getInheritedInstance(this.registeredClass,t);if(r!==void 0){if(r.$$.count.value===0)return r.$$.ptr=t,r.$$.smartPtr=e,r.clone();var n=r.clone();return this.destructor(e),n}function a(){return this.isSmartPointer?makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this.pointeeType,ptr:t,smartPtrType:this,smartPtr:e}):makeClassHandle(this.registeredClass.instancePrototype,{ptrType:this,ptr:e})}var l=this.registeredClass.getActualType(t),c=registeredPointers[l];if(!c)return a.call(this);var u;this.isConst?u=c.constPointerType:u=c.pointerType;var _=downcastPointer(t,this.registeredClass,u.registeredClass);return _===null?a.call(this):this.isSmartPointer?makeClassHandle(u.registeredClass.instancePrototype,{ptrType:u,ptr:_,smartPtrType:this,smartPtr:e}):makeClassHandle(u.registeredClass.instancePrototype,{ptrType:u,ptr:_})}var init_RegisteredPointer=()=>{Object.assign(RegisteredPointer.prototype,{getPointee(e){return this.rawGetPointee&&(e=this.rawGetPointee(e)),e},destructor(e){var t;(t=this.rawDestructor)==null||t.call(this,e)},argPackAdvance:GenericWireTypeSize,readValueFromPointer:readPointer,fromWireType:RegisteredPointer_fromWireType})},detachFinalizer_deps=["$finalizationRegistry"];function ClassHandle(){}var shallowCopyInternalPointer=e=>({count:e.count,deleteScheduled:e.deleteScheduled,preservePointerOnDelete:e.preservePointerOnDelete,ptr:e.ptr,ptrType:e.ptrType,smartPtr:e.smartPtr,smartPtrType:e.smartPtrType}),throwInstanceAlreadyDeleted=e=>{function t(r){return r.$$.ptrType.registeredClass.name}throwBindingError(t(e)+" instance already deleted")},deletionQueue=[],flushPendingDeletes=()=>{for(;deletionQueue.length;){var e=deletionQueue.pop();e.$$.deleteScheduled=!1,e.delete()}},delayFunction,init_ClassHandle=()=>{Object.assign(ClassHandle.prototype,{isAliasOf(e){if(!(this instanceof ClassHandle)||!(e instanceof ClassHandle))return!1;var t=this.$$.ptrType.registeredClass,r=this.$$.ptr;e.$$=e.$$;for(var n=e.$$.ptrType.registeredClass,a=e.$$.ptr;t.baseClass;)r=t.upcast(r),t=t.baseClass;for(;n.baseClass;)a=n.upcast(a),n=n.baseClass;return t===n&&r===a},clone(){if(this.$$.ptr||throwInstanceAlreadyDeleted(this),this.$$.preservePointerOnDelete)return this.$$.count.value+=1,this;var e=attachFinalizer(Object.create(Object.getPrototypeOf(this),{$$:{value:shallowCopyInternalPointer(this.$$)}}));return e.$$.count.value+=1,e.$$.deleteScheduled=!1,e},delete(){this.$$.ptr||throwInstanceAlreadyDeleted(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&throwBindingError("Object already scheduled for deletion"),detachFinalizer(this),releaseClassHandle(this.$$),this.$$.preservePointerOnDelete||(this.$$.smartPtr=void 0,this.$$.ptr=void 0)},isDeleted(){return!this.$$.ptr},deleteLater(){return this.$$.ptr||throwInstanceAlreadyDeleted(this),this.$$.deleteScheduled&&!this.$$.preservePointerOnDelete&&throwBindingError("Object already scheduled for deletion"),deletionQueue.push(this),deletionQueue.length===1&&delayFunction&&delayFunction(flushPendingDeletes),this.$$.deleteScheduled=!0,this}})},setDelayFunction=e=>{delayFunction=e,deletionQueue.length&&delayFunction&&delayFunction(flushPendingDeletes)};function RegisteredClass(e,t,r,n,a,l,c,u){this.name=e,this.constructor=t,this.instancePrototype=r,this.rawDestructor=n,this.baseClass=a,this.getActualType=l,this.upcast=c,this.downcast=u,this.pureVirtualFunctions=[]}var char_0=48,char_9=57,makeLegalFunctionName=e=>{e=e.replace(/[^a-zA-Z0-9_]/g,"$");var t=e.charCodeAt(0);return t>=char_0&&t<=char_9?"_".concat(e):e};function __embind_register_class(e,t,r,n,a,l,c,u,_,d,f,p,m){e>>>=0,t>>>=0,r>>>=0,n>>>=0,a>>>=0,l>>>=0,c>>>=0,u>>>=0,_>>>=0,d>>>=0,f>>>=0,p>>>=0,m>>>=0,f=readLatin1String(f),l=embind__requireFunction(a,l),u&&(u=embind__requireFunction(c,u)),d&&(d=embind__requireFunction(_,d)),m=embind__requireFunction(p,m);var g=makeLegalFunctionName(f);exposePublicSymbol(g,function(){throwUnboundTypeError("Cannot construct ".concat(f," due to unbound types"),[n])}),whenDependentTypesAreResolved([e,t,r],n?[n]:[],h=>{var E,w;h=h[0];var b,y;n?(b=h.registeredClass,y=b.instancePrototype):y=ClassHandle.prototype;var A=createNamedFunction(f,function(...P){if(Object.getPrototypeOf(this)!==F)throw new BindingError("Use 'new' to construct "+f);if(C.constructor_body===void 0)throw new BindingError(f+" has no accessible constructor");var L=C.constructor_body[P.length];if(L===void 0)throw new BindingError("Tried to invoke ctor of ".concat(f," with invalid number of parameters (").concat(P.length,") - expected (").concat(Object.keys(C.constructor_body).toString(),") parameters instead!"));return L.apply(this,P)}),F=Object.create(y,{constructor:{value:A}});A.prototype=F;var C=new RegisteredClass(f,A,F,m,b,l,u,d);C.baseClass&&((w=(E=C.baseClass).__derivedClasses)!=null||(E.__derivedClasses=[]),C.baseClass.__derivedClasses.push(C));var x=new RegisteredPointer(f,C,!0,!1,!1),S=new RegisteredPointer(f+"*",C,!1,!1,!1),T=new RegisteredPointer(f+" const*",C,!1,!0,!1);return registeredPointers[e]={pointerType:S,constPointerType:T},replacePublicSymbol(g,A),[x,S,T]})}__embind_register_class.sig="vppppppppppppp";var __embind_register_class_constructor=function(e,t,r,n,a,l){e>>>=0,r>>>=0,n>>>=0,a>>>=0,l>>>=0;var c=heap32VectorToArray(t,r);a=embind__requireFunction(n,a);var u=[l],_=[];whenDependentTypesAreResolved([],[e],d=>{d=d[0];var f="constructor ".concat(d.name);if(d.registeredClass.constructor_body===void 0&&(d.registeredClass.constructor_body=[]),d.registeredClass.constructor_body[t-1]!==void 0)throw new BindingError("Cannot register multiple constructors with identical number of parameters (".concat(t-1,") for class '").concat(d.name,"'! Overload resolution is currently only performed using the parameter count, not actual type info!"));return d.registeredClass.constructor_body[t-1]=()=>{throwUnboundTypeError("Cannot construct ".concat(d.name," due to unbound types"),c)},whenDependentTypesAreResolved([],c,p=>(p.splice(1,0,null),d.registeredClass.constructor_body[t-1]=craftInvokerFunction(f,p,null,a,l),[])),[]})};__embind_register_class_constructor.sig="vpipppp";var validateThis=(e,t,r)=>(e instanceof Object||throwBindingError("".concat(r,' with invalid "this": ').concat(e)),e instanceof t.registeredClass.constructor||throwBindingError("".concat(r,' incompatible with "this" of type ').concat(e.constructor.name)),e.$$.ptr||throwBindingError("cannot call emscripten binding method ".concat(r," on deleted object")),upcastPointer(e.$$.ptr,e.$$.ptrType.registeredClass,t.registeredClass)),__embind_register_class_function=function(e,t,r,n,a,l,c,u,_,d){e>>>=0,t>>>=0,n>>>=0,a>>>=0,l>>>=0,c>>>=0;var f=heap32VectorToArray(r,n);t=readLatin1String(t),t=getFunctionName(t),l=embind__requireFunction(a,l),whenDependentTypesAreResolved([],[e],p=>{p=p[0];var m="".concat(p.name,".").concat(t);t.startsWith("@@")&&(t=Symbol[t.substring(2)]),u&&p.registeredClass.pureVirtualFunctions.push(t);function g(){throwUnboundTypeError("Cannot call ".concat(m," due to unbound types"),f)}var h=p.registeredClass.instancePrototype,b=h[t];return b===void 0||b.overloadTable===void 0&&b.className!==p.name&&b.argCount===r-2?(g.argCount=r-2,g.className=p.name,h[t]=g):(ensureOverloadTable(h,t,m),h[t].overloadTable[r-2]=g),whenDependentTypesAreResolved([],f,y=>{var A=craftInvokerFunction(m,y,p,l,c,_);return h[t].overloadTable===void 0?(A.argCount=r-2,h[t]=A):h[t].overloadTable[r-2]=A,[]}),[]})};__embind_register_class_function.sig="vppippppiii";var __embind_register_class_property=function(e,t,r,n,a,l,c,u,_,d){e>>>=0,t>>>=0,r>>>=0,n>>>=0,a>>>=0,l>>>=0,c>>>=0,u>>>=0,_>>>=0,d>>>=0,t=readLatin1String(t),a=embind__requireFunction(n,a),whenDependentTypesAreResolved([],[e],f=>{f=f[0];var p="".concat(f.name,".").concat(t),m={get(){throwUnboundTypeError("Cannot access ".concat(p," due to unbound types"),[r,c])},enumerable:!0,configurable:!0};return _?m.set=()=>throwUnboundTypeError("Cannot access ".concat(p," due to unbound types"),[r,c]):m.set=g=>throwBindingError(p+" is a read-only property"),Object.defineProperty(f.registeredClass.instancePrototype,t,m),whenDependentTypesAreResolved([],_?[r,c]:[r],g=>{var h=g[0],b={get(){var A=validateThis(this,f,p+" getter");return h.fromWireType(a(l,A))},enumerable:!0};if(_){_=embind__requireFunction(u,_);var y=g[1];b.set=function(A){var F=validateThis(this,f,p+" setter"),C=[];_(d,F,y.toWireType(C,A)),runDestructors(C)}}return Object.defineProperty(f.registeredClass.instancePrototype,t,b),[]}),[]})};__embind_register_class_property.sig="vpppppppppp";var __embind_register_class_class_function=function(e,t,r,n,a,l,c,u,_){e>>>=0,t>>>=0,n>>>=0,a>>>=0,l>>>=0,c>>>=0;var d=heap32VectorToArray(r,n);t=readLatin1String(t),t=getFunctionName(t),l=embind__requireFunction(a,l),whenDependentTypesAreResolved([],[e],f=>{f=f[0];var p="".concat(f.name,".").concat(t);function m(){throwUnboundTypeError("Cannot call ".concat(p," due to unbound types"),d)}t.startsWith("@@")&&(t=Symbol[t.substring(2)]);var g=f.registeredClass.constructor;return g[t]===void 0?(m.argCount=r-1,g[t]=m):(ensureOverloadTable(g,t,p),g[t].overloadTable[r-1]=m),whenDependentTypesAreResolved([],d,h=>{var b=[h[0],null].concat(h.slice(1)),y=craftInvokerFunction(p,b,null,l,c,u);if(g[t].overloadTable===void 0?(y.argCount=r-1,g[t]=y):g[t].overloadTable[r-1]=y,f.registeredClass.__derivedClasses)for(let A of f.registeredClass.__derivedClasses)A.constructor.hasOwnProperty(t)||(A.constructor[t]=y);return[]}),[]})};__embind_register_class_class_function.sig="vppippppii";var __embind_register_class_class_property=function(e,t,r,n,a,l,c,u){e>>>=0,t>>>=0,r>>>=0,n>>>=0,a>>>=0,l>>>=0,c>>>=0,u>>>=0,t=readLatin1String(t),l=embind__requireFunction(a,l),whenDependentTypesAreResolved([],[e],_=>{_=_[0];var d="".concat(_.name,".").concat(t),f={get(){throwUnboundTypeError("Cannot access ".concat(d," due to unbound types"),[r])},enumerable:!0,configurable:!0};return u?f.set=()=>{throwUnboundTypeError("Cannot access ".concat(d," due to unbound types"),[r])}:f.set=p=>{throwBindingError("".concat(d," is a read-only property"))},Object.defineProperty(_.registeredClass.constructor,t,f),whenDependentTypesAreResolved([],[r],p=>{p=p[0];var m={get(){return p.fromWireType(l(n))},enumerable:!0};return u&&(u=embind__requireFunction(c,u),m.set=g=>{var h=[];u(n,p.toWireType(h,g)),runDestructors(h)}),Object.defineProperty(_.registeredClass.constructor,t,m),[]}),[]})};__embind_register_class_class_property.sig="vpppppppp";function __embind_create_inheriting_constructor(e,t,r){e>>>=0,t>>>=0,r>>>=0,e=readLatin1String(e),t=requireRegisteredType(t,"wrapper"),r=Emval.toValue(r);var n=t.registeredClass,a=n.instancePrototype,l=n.baseClass,c=l.instancePrototype,u=n.baseClass.constructor,_=createNamedFunction(e,function(...d){n.baseClass.pureVirtualFunctions.forEach((function(f){if(this[f]===c[f])throw new PureVirtualError("Pure virtual function ".concat(f," must be implemented in JavaScript"))}).bind(this)),Object.defineProperty(this,"__parent",{value:a}),this.__construct(...d)});return a.__construct=function(...f){this===a&&throwBindingError("Pass correct 'this' to __construct");var p=u.implement(this,...f);detachFinalizer(p);var m=p.$$;p.notifyOnDestruction(),m.preservePointerOnDelete=!0,Object.defineProperties(this,{$$:{value:m}}),attachFinalizer(this),registerInheritedInstance(n,m.ptr,this)},a.__destruct=function(){this===a&&throwBindingError("Pass correct 'this' to __destruct"),detachFinalizer(this),unregisterInheritedInstance(n,this.$$.ptr)},_.prototype=Object.create(a),Object.assign(_.prototype,r),Emval.toHandle(_)}__embind_create_inheriting_constructor.sig="pppp";var __embind_register_smart_ptr=function(e,t,r,n,a,l,c,u,_,d,f,p){e>>>=0,t>>>=0,r>>>=0,a>>>=0,l>>>=0,c>>>=0,u>>>=0,_>>>=0,d>>>=0,f>>>=0,p>>>=0,r=readLatin1String(r),l=embind__requireFunction(a,l),u=embind__requireFunction(c,u),d=embind__requireFunction(_,d),p=embind__requireFunction(f,p),whenDependentTypesAreResolved([e],[t],m=>{m=m[0];var g=new RegisteredPointer(r,m.registeredClass,!1,!1,!0,m,n,l,u,d,p);return[g]})};__embind_register_smart_ptr.sig="vpppipppppppp";function __embind_register_enum(e,t,r,n){e>>>=0,t>>>=0,r>>>=0,t=readLatin1String(t);function a(){}a.values={},registerType(e,{name:t,constructor:a,fromWireType:function(l){return this.constructor.values[l]},toWireType:(l,c)=>c.value,argPackAdvance:GenericWireTypeSize,readValueFromPointer:enumReadValueFromPointer(t,r,n),destructorFunction:null}),exposePublicSymbol(t,a)}__embind_register_enum.sig="vpppi";function __embind_register_enum_value(e,t,r){e>>>=0,t>>>=0;var n=requireRegisteredType(e,"enum");t=readLatin1String(t);var a=n.constructor,l=Object.create(n.constructor.prototype,{value:{value:r},constructor:{value:createNamedFunction("".concat(n.name,"_").concat(t),function(){})}});a.values[r]=l,a[t]=l}__embind_register_enum_value.sig="vppi";var __embind_register_constant=function(e,t,r){e>>>=0,t>>>=0,e=readLatin1String(e),whenDependentTypesAreResolved([],[t],n=>(n=n[0],Module[e]=n.fromWireType(r),[]))};__embind_register_constant.sig="vppd";var emval_symbols={};function __emval_register_symbol(e){e>>>=0,emval_symbols[e]=readLatin1String(e)}__emval_register_symbol.sig="vp";var getStringOrSymbol=e=>{var t=emval_symbols[e];return t===void 0?readLatin1String(e):t};function __emval_incref(e){e>>>=0,e>9&&(emval_handles[e+1]+=1)}__emval_incref.sig="vp";function __emval_run_destructors(e){e>>>=0;var t=Emval.toValue(e);runDestructors(t),__emval_decref(e)}__emval_run_destructors.sig="vp";function __emval_new_array(){return Emval.toHandle([])}__emval_new_array.sig="p";function __emval_new_array_from_memory_view(e){e>>>=0,e=Emval.toValue(e);for(var t=new Array(e.length),r=0;r>>=0,Emval.toHandle(getStringOrSymbol(e))}__emval_new_cstring.sig="pp";function __emval_new_u8string(e){return e>>>=0,Emval.toHandle(UTF8ToString(e))}__emval_new_u8string.sig="pp";function __emval_new_u16string(e){return e>>>=0,Emval.toHandle(UTF16ToString(e))}__emval_new_u16string.sig="pp";function __emval_take_value(e,t){e>>>=0,t>>>=0,e=requireRegisteredType(e,"_emval_take_value");var r=e.readValueFromPointer(t);return Emval.toHandle(r)}__emval_take_value.sig="ppp";var emval_get_global=()=>typeof globalThis=="object"?globalThis:function(){return Function}()("return this")();function __emval_get_global(e){return e>>>=0,e===0?Emval.toHandle(emval_get_global()):(e=getStringOrSymbol(e),Emval.toHandle(emval_get_global()[e]))}__emval_get_global.sig="pp";function __emval_get_module_property(e){return e>>>=0,e=getStringOrSymbol(e),Emval.toHandle(Module[e])}__emval_get_module_property.sig="pp";function __emval_get_property(e,t){return e>>>=0,t>>>=0,e=Emval.toValue(e),t=Emval.toValue(t),Emval.toHandle(e[t])}__emval_get_property.sig="ppp";function __emval_set_property(e,t,r){e>>>=0,t>>>=0,r>>>=0,e=Emval.toValue(e),t=Emval.toValue(t),r=Emval.toValue(r),e[t]=r}__emval_set_property.sig="vppp";var emval_returnValue=(e,t,r)=>{var n=[],a=e.toWireType(n,r);return n.length&&(HEAPU32[t>>>2>>>0]=Emval.toHandle(n)),a};function __emval_as(e,t,r){return e>>>=0,t>>>=0,r>>>=0,e=Emval.toValue(e),t=requireRegisteredType(t,"emval::as"),emval_returnValue(t,r,e)}__emval_as.sig="dppp";function __emval_as_int64(e,t){return e>>>=0,t>>>=0,e=Emval.toValue(e),t=requireRegisteredType(t,"emval::as"),t.toWireType(null,e)}__emval_as_int64.sig="ipp";function __emval_as_uint64(e,t){return e>>>=0,t>>>=0,e=Emval.toValue(e),t=requireRegisteredType(t,"emval::as"),t.toWireType(null,e)}__emval_as_uint64.sig="ipp";function __emval_equals(e,t){return e>>>=0,t>>>=0,e=Emval.toValue(e),t=Emval.toValue(t),e==t}__emval_equals.sig="ipp";function __emval_strictly_equals(e,t){return e>>>=0,t>>>=0,e=Emval.toValue(e),t=Emval.toValue(t),e===t}__emval_strictly_equals.sig="ipp";function __emval_greater_than(e,t){return e>>>=0,t>>>=0,e=Emval.toValue(e),t=Emval.toValue(t),e>t}__emval_greater_than.sig="ipp";function __emval_less_than(e,t){return e>>>=0,t>>>=0,e=Emval.toValue(e),t=Emval.toValue(t),e>>=0,e=Emval.toValue(e),!e}__emval_not.sig="ip";var emval_methodCallers=[];function __emval_call(e,t,r,n){return e>>>=0,t>>>=0,r>>>=0,n>>>=0,e=emval_methodCallers[e],t=Emval.toValue(t),e(null,t,r,n)}__emval_call.sig="dpppp";var emval_lookupTypes=(e,t)=>{for(var r=new Array(e),n=0;n>>2>>>0],"parameter "+n);return r},emval_addMethodCaller=e=>{var t=emval_methodCallers.length;return emval_methodCallers.push(e),t},reflectConstruct=Reflect.construct;function __emval_get_method_caller(e,t,r){t>>>=0;var n=emval_lookupTypes(e,t),a=n.shift();e--;var l="return function (obj, func, destructorsRef, args) {\n",c=0,u=[];r===0&&u.push("obj");for(var _=["retType"],d=[a],f=0;fh.name).join(", "),") => ").concat(a.name,">");return emval_addMethodCaller(createNamedFunction(g,m))}__emval_get_method_caller.sig="pipi";function __emval_call_method(e,t,r,n,a){return e>>>=0,t>>>=0,r>>>=0,n>>>=0,a>>>=0,e=emval_methodCallers[e],t=Emval.toValue(t),r=getStringOrSymbol(r),e(t,t[r],n,a)}__emval_call_method.sig="dppppp";function __emval_typeof(e){return e>>>=0,e=Emval.toValue(e),Emval.toHandle(typeof e)}__emval_typeof.sig="pp";function __emval_instanceof(e,t){return e>>>=0,t>>>=0,e=Emval.toValue(e),t=Emval.toValue(t),e instanceof t}__emval_instanceof.sig="ipp";function __emval_is_number(e){return e>>>=0,e=Emval.toValue(e),typeof e=="number"}__emval_is_number.sig="ip";function __emval_is_string(e){return e>>>=0,e=Emval.toValue(e),typeof e=="string"}__emval_is_string.sig="ip";function __emval_in(e,t){return e>>>=0,t>>>=0,e=Emval.toValue(e),t=Emval.toValue(t),e in t}__emval_in.sig="ipp";function __emval_delete(e,t){return e>>>=0,t>>>=0,e=Emval.toValue(e),t=Emval.toValue(t),delete e[t]}__emval_delete.sig="ipp";function __emval_throw(e){throw e>>>=0,e=Emval.toValue(e),e}__emval_throw.sig="ip";function __emval_iter_begin(e){return e>>>=0,e=Emval.toValue(e),Emval.toHandle(e[Symbol.iterator]())}__emval_iter_begin.sig="pp";function __emval_iter_next(e){e>>>=0,e=Emval.toValue(e);var t=e.next();return t.done?0:Emval.toHandle(t.value)}__emval_iter_next.sig="pp";var __emval_coro_suspend=function(e,t){e>>>=0,t>>>=0,Emval.toValue(e).then(r=>{__emval_coro_resume(t,Emval.toHandle(r))})};__emval_coro_suspend.sig="vpp";var __emval_coro_make_promise=function(e,t){return e>>>=0,t>>>=0,Emval.toHandle(new Promise((r,n)=>{let a=()=>{try{___cxa_rethrow()}catch(l){n(l)}};HEAPU32[e>>>2>>>0]=Emval.toHandle(r),HEAPU32[t>>>2>>>0]=Emval.toHandle(a)}))};__emval_coro_make_promise.sig="ppp";function _duckdb_web_fs_file_sync(e){return globalThis.DUCKDB_RUNTIME.syncFile(Module,e)}_duckdb_web_fs_file_sync.sig="vi";function _duckdb_web_fs_file_remove(e,t){return globalThis.DUCKDB_RUNTIME.removeFile(Module,e,t)}registerWasmPlugin(),FS.createPreloadedFile=FS_createPreloadedFile,FS.staticInit(),embind_init_charCodes(),BindingError=Module.BindingError=class extends Error{constructor(t){super(t),this.name="BindingError"}},InternalError=Module.InternalError=class extends Error{constructor(t){super(t),this.name="InternalError"}},init_emval(),Module.requestAnimationFrame=MainLoop.requestAnimationFrame,Module.pauseMainLoop=MainLoop.pause,Module.resumeMainLoop=MainLoop.resume,MainLoop.init();for(var i=0;i<32;++i)tempFixedLengthArray.push(new Array(i));for(var miniTempWebGLFloatBuffersStorage=new Float32Array(288),i=0;i<=288;++i)miniTempWebGLFloatBuffers[i]=miniTempWebGLFloatBuffersStorage.subarray(0,i);for(var miniTempWebGLIntBuffersStorage=new Int32Array(288),i=0;i<=288;++i)miniTempWebGLIntBuffers[i]=miniTempWebGLIntBuffersStorage.subarray(0,i);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 t=e-__setImmediate_id_counter;t>=0&&t<__setImmediate_queue.length&&(__setImmediate_queue[t]=()=>{})}}Module.requestFullscreen=Browser.requestFullscreen,Module.setCanvasSize=Browser.setCanvasSize,Module.getUserMedia=Browser.getUserMedia,Module.createContext=Browser.createContext;var preloadedImages={},preloadedAudios={};registerPostMainLoop(()=>{var e,t;return(t=(e=SDL.audio)==null?void 0:e.queueNewAudioData)==null?void 0:t.call(e)}),UnboundTypeError=Module.UnboundTypeError=extendError(Error,"UnboundTypeError"),PureVirtualError=Module.PureVirtualError=extendError(Error,"PureVirtualError"),init_RegisteredPointer(),init_ClassHandle();var wasmImports={IMG_Init:_IMG_Init,IMG_Load:_IMG_Load,IMG_Load_RW:_IMG_Load_RW,IMG_Quit:_IMG_Quit,Mix_AllocateChannels:_Mix_AllocateChannels,Mix_ChannelFinished:_Mix_ChannelFinished,Mix_CloseAudio:_Mix_CloseAudio,Mix_FadeInChannelTimed:_Mix_FadeInChannelTimed,Mix_FadeInMusicPos:_Mix_FadeInMusicPos,Mix_FadeOutChannel:_Mix_FadeOutChannel,Mix_FadeOutMusic:_Mix_FadeOutMusic,Mix_FadingChannel:_Mix_FadingChannel,Mix_FreeChunk:_Mix_FreeChunk,Mix_FreeMusic:_Mix_FreeMusic,Mix_HaltChannel:_Mix_HaltChannel,Mix_HaltMusic:_Mix_HaltMusic,Mix_HookMusicFinished:_Mix_HookMusicFinished,Mix_Init:_Mix_Init,Mix_Linked_Version:_Mix_Linked_Version,Mix_LoadMUS:_Mix_LoadMUS,Mix_LoadMUS_RW:_Mix_LoadMUS_RW,Mix_LoadWAV:_Mix_LoadWAV,Mix_LoadWAV_RW:_Mix_LoadWAV_RW,Mix_OpenAudio:_Mix_OpenAudio,Mix_Pause:_Mix_Pause,Mix_PauseMusic:_Mix_PauseMusic,Mix_Paused:_Mix_Paused,Mix_PausedMusic:_Mix_PausedMusic,Mix_PlayChannelTimed:_Mix_PlayChannelTimed,Mix_PlayMusic:_Mix_PlayMusic,Mix_Playing:_Mix_Playing,Mix_PlayingMusic:_Mix_PlayingMusic,Mix_QuerySpec:_Mix_QuerySpec,Mix_QuickLoad_RAW:_Mix_QuickLoad_RAW,Mix_Quit:_Mix_Quit,Mix_ReserveChannels:_Mix_ReserveChannels,Mix_Resume:_Mix_Resume,Mix_ResumeMusic:_Mix_ResumeMusic,Mix_SetPanning:_Mix_SetPanning,Mix_SetPosition:_Mix_SetPosition,Mix_SetPostMix:_Mix_SetPostMix,Mix_Volume:_Mix_Volume,Mix_VolumeChunk:_Mix_VolumeChunk,Mix_VolumeMusic:_Mix_VolumeMusic,SDL_AddTimer:_SDL_AddTimer,SDL_AllocRW:_SDL_AllocRW,SDL_AudioDriverName:_SDL_AudioDriverName,SDL_AudioQuit:_SDL_AudioQuit,SDL_ClearError:_SDL_ClearError,SDL_CloseAudio:_SDL_CloseAudio,SDL_CondBroadcast:_SDL_CondBroadcast,SDL_CondSignal:_SDL_CondSignal,SDL_CondWait:_SDL_CondWait,SDL_CondWaitTimeout:_SDL_CondWaitTimeout,SDL_ConvertSurface:_SDL_ConvertSurface,SDL_CreateCond:_SDL_CreateCond,SDL_CreateMutex:_SDL_CreateMutex,SDL_CreateRGBSurface:_SDL_CreateRGBSurface,SDL_CreateRGBSurfaceFrom:_SDL_CreateRGBSurfaceFrom,SDL_CreateThread:_SDL_CreateThread,SDL_Delay:_SDL_Delay,SDL_DestroyCond:_SDL_DestroyCond,SDL_DestroyMutex:_SDL_DestroyMutex,SDL_DestroyRenderer:_SDL_DestroyRenderer,SDL_DestroyWindow:_SDL_DestroyWindow,SDL_DisplayFormatAlpha:_SDL_DisplayFormatAlpha,SDL_EnableKeyRepeat:_SDL_EnableKeyRepeat,SDL_EnableUNICODE:_SDL_EnableUNICODE,SDL_FillRect:_SDL_FillRect,SDL_Flip:_SDL_Flip,SDL_FreeRW:_SDL_FreeRW,SDL_FreeSurface:_SDL_FreeSurface,SDL_GL_DeleteContext:_SDL_GL_DeleteContext,SDL_GL_ExtensionSupported:_SDL_GL_ExtensionSupported,SDL_GL_GetAttribute:_SDL_GL_GetAttribute,SDL_GL_GetSwapInterval:_SDL_GL_GetSwapInterval,SDL_GL_MakeCurrent:_SDL_GL_MakeCurrent,SDL_GL_SetAttribute:_SDL_GL_SetAttribute,SDL_GL_SetSwapInterval:_SDL_GL_SetSwapInterval,SDL_GL_SwapBuffers:_SDL_GL_SwapBuffers,SDL_GL_SwapWindow:_SDL_GL_SwapWindow,SDL_GetAppState:_SDL_GetAppState,SDL_GetAudioDriver:_SDL_GetAudioDriver,SDL_GetClipRect:_SDL_GetClipRect,SDL_GetCurrentAudioDriver:_SDL_GetCurrentAudioDriver,SDL_GetError:_SDL_GetError,SDL_GetKeyName:_SDL_GetKeyName,SDL_GetKeyState:_SDL_GetKeyState,SDL_GetKeyboardState:_SDL_GetKeyboardState,SDL_GetModState:_SDL_GetModState,SDL_GetMouseState:_SDL_GetMouseState,SDL_GetNumAudioDrivers:_SDL_GetNumAudioDrivers,SDL_GetRGB:_SDL_GetRGB,SDL_GetRGBA:_SDL_GetRGBA,SDL_GetScancodeFromKey:_SDL_GetScancodeFromKey,SDL_GetThreadID:_SDL_GetThreadID,SDL_GetTicks:_SDL_GetTicks,SDL_GetVideoInfo:_SDL_GetVideoInfo,SDL_GetVideoSurface:_SDL_GetVideoSurface,SDL_GetWindowFlags:_SDL_GetWindowFlags,SDL_GetWindowSize:_SDL_GetWindowSize,SDL_Has3DNow:_SDL_Has3DNow,SDL_Has3DNowExt:_SDL_Has3DNowExt,SDL_HasAltiVec:_SDL_HasAltiVec,SDL_HasMMX:_SDL_HasMMX,SDL_HasMMXExt:_SDL_HasMMXExt,SDL_HasRDTSC:_SDL_HasRDTSC,SDL_HasSSE:_SDL_HasSSE,SDL_HasSSE2:_SDL_HasSSE2,SDL_Init:_SDL_Init,SDL_InitSubSystem:_SDL_InitSubSystem,SDL_JoystickClose:_SDL_JoystickClose,SDL_JoystickEventState:_SDL_JoystickEventState,SDL_JoystickGetAxis:_SDL_JoystickGetAxis,SDL_JoystickGetBall:_SDL_JoystickGetBall,SDL_JoystickGetButton:_SDL_JoystickGetButton,SDL_JoystickGetHat:_SDL_JoystickGetHat,SDL_JoystickIndex:_SDL_JoystickIndex,SDL_JoystickName:_SDL_JoystickName,SDL_JoystickNumAxes:_SDL_JoystickNumAxes,SDL_JoystickNumBalls:_SDL_JoystickNumBalls,SDL_JoystickNumButtons:_SDL_JoystickNumButtons,SDL_JoystickNumHats:_SDL_JoystickNumHats,SDL_JoystickOpen:_SDL_JoystickOpen,SDL_JoystickOpened:_SDL_JoystickOpened,SDL_JoystickUpdate:_SDL_JoystickUpdate,SDL_Linked_Version:_SDL_Linked_Version,SDL_ListModes:_SDL_ListModes,SDL_LoadBMP_RW:_SDL_LoadBMP_RW,SDL_LockAudio:_SDL_LockAudio,SDL_LockSurface:_SDL_LockSurface,SDL_LogSetOutputFunction:_SDL_LogSetOutputFunction,SDL_LowerBlit:_SDL_LowerBlit,SDL_LowerBlitScaled:_SDL_LowerBlitScaled,SDL_MapRGB:_SDL_MapRGB,SDL_MapRGBA:_SDL_MapRGBA,SDL_NumJoysticks:_SDL_NumJoysticks,SDL_OpenAudio:_SDL_OpenAudio,SDL_PauseAudio:_SDL_PauseAudio,SDL_PeepEvents:_SDL_PeepEvents,SDL_PollEvent:_SDL_PollEvent,SDL_PumpEvents:_SDL_PumpEvents,SDL_PushEvent:_SDL_PushEvent,SDL_Quit:_SDL_Quit,SDL_QuitSubSystem:_SDL_QuitSubSystem,SDL_RWFromConstMem:_SDL_RWFromConstMem,SDL_RWFromFile:_SDL_RWFromFile,SDL_RWFromMem:_SDL_RWFromMem,SDL_RemoveTimer:_SDL_RemoveTimer,SDL_SaveBMP_RW:_SDL_SaveBMP_RW,SDL_SetAlpha:_SDL_SetAlpha,SDL_SetClipRect:_SDL_SetClipRect,SDL_SetColorKey:_SDL_SetColorKey,SDL_SetColors:_SDL_SetColors,SDL_SetError:_SDL_SetError,SDL_SetGamma:_SDL_SetGamma,SDL_SetGammaRamp:_SDL_SetGammaRamp,SDL_SetPalette:_SDL_SetPalette,SDL_SetVideoMode:_SDL_SetVideoMode,SDL_SetWindowFullscreen:_SDL_SetWindowFullscreen,SDL_SetWindowTitle:_SDL_SetWindowTitle,SDL_ShowCursor:_SDL_ShowCursor,SDL_StartTextInput:_SDL_StartTextInput,SDL_StopTextInput:_SDL_StopTextInput,SDL_ThreadID:_SDL_ThreadID,SDL_UnlockAudio:_SDL_UnlockAudio,SDL_UnlockSurface:_SDL_UnlockSurface,SDL_UpdateRect:_SDL_UpdateRect,SDL_UpdateRects:_SDL_UpdateRects,SDL_UpperBlit:_SDL_UpperBlit,SDL_UpperBlitScaled:_SDL_UpperBlitScaled,SDL_VideoDriverName:_SDL_VideoDriverName,SDL_VideoModeOK:_SDL_VideoModeOK,SDL_VideoQuit:_SDL_VideoQuit,SDL_WM_GrabInput:_SDL_WM_GrabInput,SDL_WM_IconifyWindow:_SDL_WM_IconifyWindow,SDL_WM_SetCaption:_SDL_WM_SetCaption,SDL_WM_SetIcon:_SDL_WM_SetIcon,SDL_WM_ToggleFullScreen:_SDL_WM_ToggleFullScreen,SDL_WaitThread:_SDL_WaitThread,SDL_WarpMouse:_SDL_WarpMouse,SDL_WasInit:_SDL_WasInit,SDL_mutexP:_SDL_mutexP,SDL_mutexV:_SDL_mutexV,TTF_CloseFont:_TTF_CloseFont,TTF_FontAscent:_TTF_FontAscent,TTF_FontDescent:_TTF_FontDescent,TTF_FontHeight:_TTF_FontHeight,TTF_FontLineSkip:_TTF_FontLineSkip,TTF_GlyphMetrics:_TTF_GlyphMetrics,TTF_Init:_TTF_Init,TTF_OpenFont:_TTF_OpenFont,TTF_Quit:_TTF_Quit,TTF_RenderText_Blended:_TTF_RenderText_Blended,TTF_RenderText_Shaded:_TTF_RenderText_Shaded,TTF_RenderText_Solid:_TTF_RenderText_Solid,TTF_RenderUTF8_Solid:_TTF_RenderUTF8_Solid,TTF_SizeText:_TTF_SizeText,TTF_SizeUTF8:_TTF_SizeUTF8,XChangeWindowAttributes:_XChangeWindowAttributes,XCreateWindow:_XCreateWindow,XInternAtom:_XInternAtom,XMapWindow:_XMapWindow,XOpenDisplay:_XOpenDisplay,XPending:_XPending,XSendEvent:_XSendEvent,XSetWMHints:_XSetWMHints,XStoreName:_XStoreName,_Unwind_Backtrace:__Unwind_Backtrace,_Unwind_FindEnclosingFunction:__Unwind_FindEnclosingFunction,_Unwind_GetIPInfo:__Unwind_GetIPInfo,__asctime_r:___asctime_r,__assert_fail:___assert_fail,__c_longjmp:___c_longjmp,__call_sighandler:___call_sighandler,__cpp_exception:___cpp_exception,__global_base:___global_base,__heap_base:___heap_base,__indirect_function_table:wasmTable,__memory_base:___memory_base,__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,_embind_create_inheriting_constructor:__embind_create_inheriting_constructor,_embind_finalize_value_array:__embind_finalize_value_array,_embind_finalize_value_object:__embind_finalize_value_object,_embind_register_bigint:__embind_register_bigint,_embind_register_bool:__embind_register_bool,_embind_register_class:__embind_register_class,_embind_register_class_class_function:__embind_register_class_class_function,_embind_register_class_class_property:__embind_register_class_class_property,_embind_register_class_constructor:__embind_register_class_constructor,_embind_register_class_function:__embind_register_class_function,_embind_register_class_property:__embind_register_class_property,_embind_register_constant:__embind_register_constant,_embind_register_emval:__embind_register_emval,_embind_register_enum:__embind_register_enum,_embind_register_enum_value:__embind_register_enum_value,_embind_register_float:__embind_register_float,_embind_register_function:__embind_register_function,_embind_register_integer:__embind_register_integer,_embind_register_memory_view:__embind_register_memory_view,_embind_register_optional:__embind_register_optional,_embind_register_smart_ptr:__embind_register_smart_ptr,_embind_register_std_string:__embind_register_std_string,_embind_register_std_wstring:__embind_register_std_wstring,_embind_register_user_type:__embind_register_user_type,_embind_register_value_array:__embind_register_value_array,_embind_register_value_array_element:__embind_register_value_array_element,_embind_register_value_object:__embind_register_value_object,_embind_register_value_object_field:__embind_register_value_object_field,_embind_register_void:__embind_register_void,_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_memcpy_js:__emscripten_memcpy_js,_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,_emval_as:__emval_as,_emval_as_int64:__emval_as_int64,_emval_as_uint64:__emval_as_uint64,_emval_call:__emval_call,_emval_call_method:__emval_call_method,_emval_coro_make_promise:__emval_coro_make_promise,_emval_coro_suspend:__emval_coro_suspend,_emval_decref:__emval_decref,_emval_delete:__emval_delete,_emval_equals:__emval_equals,_emval_get_global:__emval_get_global,_emval_get_method_caller:__emval_get_method_caller,_emval_get_module_property:__emval_get_module_property,_emval_get_property:__emval_get_property,_emval_greater_than:__emval_greater_than,_emval_in:__emval_in,_emval_incref:__emval_incref,_emval_instanceof:__emval_instanceof,_emval_is_number:__emval_is_number,_emval_is_string:__emval_is_string,_emval_iter_begin:__emval_iter_begin,_emval_iter_next:__emval_iter_next,_emval_less_than:__emval_less_than,_emval_new_array:__emval_new_array,_emval_new_array_from_memory_view:__emval_new_array_from_memory_view,_emval_new_cstring:__emval_new_cstring,_emval_new_object:__emval_new_object,_emval_new_u16string:__emval_new_u16string,_emval_new_u8string:__emval_new_u8string,_emval_not:__emval_not,_emval_register_symbol:__emval_register_symbol,_emval_run_destructors:__emval_run_destructors,_emval_set_property:__emval_set_property,_emval_strictly_equals:__emval_strictly_equals,_emval_take_value:__emval_take_value,_emval_throw:__emval_throw,_emval_typeof:__emval_typeof,_glGetActiveAttribOrUniform:__glGetActiveAttribOrUniform,_gmtime_js:__gmtime_js,_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,alBuffer3f:_alBuffer3f,alBuffer3i:_alBuffer3i,alBufferData:_alBufferData,alBufferf:_alBufferf,alBufferfv:_alBufferfv,alBufferi:_alBufferi,alBufferiv:_alBufferiv,alDeleteBuffers:_alDeleteBuffers,alDeleteSources:_alDeleteSources,alDisable:_alDisable,alDistanceModel:_alDistanceModel,alDopplerFactor:_alDopplerFactor,alDopplerVelocity:_alDopplerVelocity,alEnable:_alEnable,alGenBuffers:_alGenBuffers,alGenSources:_alGenSources,alGetBoolean:_alGetBoolean,alGetBooleanv:_alGetBooleanv,alGetBuffer3f:_alGetBuffer3f,alGetBuffer3i:_alGetBuffer3i,alGetBufferf:_alGetBufferf,alGetBufferfv:_alGetBufferfv,alGetBufferi:_alGetBufferi,alGetBufferiv:_alGetBufferiv,alGetDouble:_alGetDouble,alGetDoublev:_alGetDoublev,alGetEnumValue:_alGetEnumValue,alGetError:_alGetError,alGetFloat:_alGetFloat,alGetFloatv:_alGetFloatv,alGetInteger:_alGetInteger,alGetIntegerv:_alGetIntegerv,alGetListener3f:_alGetListener3f,alGetListener3i:_alGetListener3i,alGetListenerf:_alGetListenerf,alGetListenerfv:_alGetListenerfv,alGetListeneri:_alGetListeneri,alGetListeneriv:_alGetListeneriv,alGetSource3f:_alGetSource3f,alGetSource3i:_alGetSource3i,alGetSourcef:_alGetSourcef,alGetSourcefv:_alGetSourcefv,alGetSourcei:_alGetSourcei,alGetSourceiv:_alGetSourceiv,alGetString:_alGetString,alIsBuffer:_alIsBuffer,alIsEnabled:_alIsEnabled,alIsExtensionPresent:_alIsExtensionPresent,alIsSource:_alIsSource,alListener3f:_alListener3f,alListener3i:_alListener3i,alListenerf:_alListenerf,alListenerfv:_alListenerfv,alListeneri:_alListeneri,alListeneriv:_alListeneriv,alSource3f:_alSource3f,alSource3i:_alSource3i,alSourcePause:_alSourcePause,alSourcePausev:_alSourcePausev,alSourcePlay:_alSourcePlay,alSourcePlayv:_alSourcePlayv,alSourceQueueBuffers:_alSourceQueueBuffers,alSourceRewind:_alSourceRewind,alSourceRewindv:_alSourceRewindv,alSourceStop:_alSourceStop,alSourceStopv:_alSourceStopv,alSourceUnqueueBuffers:_alSourceUnqueueBuffers,alSourcef:_alSourcef,alSourcefv:_alSourcefv,alSourcei:_alSourcei,alSourceiv:_alSourceiv,alSpeedOfSound:_alSpeedOfSound,alcCaptureCloseDevice:_alcCaptureCloseDevice,alcCaptureOpenDevice:_alcCaptureOpenDevice,alcCaptureSamples:_alcCaptureSamples,alcCaptureStart:_alcCaptureStart,alcCaptureStop:_alcCaptureStop,alcCloseDevice:_alcCloseDevice,alcCreateContext:_alcCreateContext,alcDestroyContext:_alcDestroyContext,alcGetContextsDevice:_alcGetContextsDevice,alcGetCurrentContext:_alcGetCurrentContext,alcGetEnumValue:_alcGetEnumValue,alcGetError:_alcGetError,alcGetIntegerv:_alcGetIntegerv,alcGetString:_alcGetString,alcIsExtensionPresent:_alcIsExtensionPresent,alcMakeContextCurrent:_alcMakeContextCurrent,alcOpenDevice:_alcOpenDevice,alcProcessContext:_alcProcessContext,alcSuspendContext:_alcSuspendContext,boxColor:_boxColor,boxRGBA:_boxRGBA,clock_res_get:_clock_res_get,clock_time_get:_clock_time_get,duckdb_web_fs_directory_create:_duckdb_web_fs_directory_create,duckdb_web_fs_directory_exists:_duckdb_web_fs_directory_exists,duckdb_web_fs_directory_list_files:_duckdb_web_fs_directory_list_files,duckdb_web_fs_directory_remove:_duckdb_web_fs_directory_remove,duckdb_web_fs_file_close:_duckdb_web_fs_file_close,duckdb_web_fs_file_drop_file:_duckdb_web_fs_file_drop_file,duckdb_web_fs_file_exists:_duckdb_web_fs_file_exists,duckdb_web_fs_file_get_last_modified_time:_duckdb_web_fs_file_get_last_modified_time,duckdb_web_fs_file_move:_duckdb_web_fs_file_move,duckdb_web_fs_file_open:_duckdb_web_fs_file_open,duckdb_web_fs_file_read:_duckdb_web_fs_file_read,duckdb_web_fs_file_remove:_duckdb_web_fs_file_remove,duckdb_web_fs_file_sync:_duckdb_web_fs_file_sync,duckdb_web_fs_file_truncate:_duckdb_web_fs_file_truncate,duckdb_web_fs_file_write:_duckdb_web_fs_file_write,duckdb_web_fs_get_default_data_protocol:_duckdb_web_fs_get_default_data_protocol,duckdb_web_fs_glob:_duckdb_web_fs_glob,duckdb_web_test_platform_feature:_duckdb_web_test_platform_feature,duckdb_web_udf_scalar_call:_duckdb_web_udf_scalar_call,eglBindAPI:_eglBindAPI,eglChooseConfig:_eglChooseConfig,eglCreateContext:_eglCreateContext,eglCreateWindowSurface:_eglCreateWindowSurface,eglDestroyContext:_eglDestroyContext,eglDestroySurface:_eglDestroySurface,eglGetConfigAttrib:_eglGetConfigAttrib,eglGetConfigs:_eglGetConfigs,eglGetCurrentContext:_eglGetCurrentContext,eglGetCurrentDisplay:_eglGetCurrentDisplay,eglGetCurrentSurface:_eglGetCurrentSurface,eglGetDisplay:_eglGetDisplay,eglGetError:_eglGetError,eglInitialize:_eglInitialize,eglMakeCurrent:_eglMakeCurrent,eglQueryAPI:_eglQueryAPI,eglQueryContext:_eglQueryContext,eglQueryString:_eglQueryString,eglQuerySurface:_eglQuerySurface,eglReleaseThread:_eglReleaseThread,eglSwapBuffers:_eglSwapBuffers,eglSwapInterval:_eglSwapInterval,eglTerminate:_eglTerminate,eglWaitClient:_eglWaitClient,eglWaitGL:_eglWaitGL,eglWaitNative:_eglWaitNative,ellipseColor:_ellipseColor,ellipseRGBA:_ellipseRGBA,emscripten_SDL_SetEventHandler:_emscripten_SDL_SetEventHandler,emscripten_alcDevicePauseSOFT:_emscripten_alcDevicePauseSOFT,emscripten_alcDeviceResumeSOFT:_emscripten_alcDeviceResumeSOFT,emscripten_alcGetStringiSOFT:_emscripten_alcGetStringiSOFT,emscripten_alcResetDeviceSOFT:_emscripten_alcResetDeviceSOFT,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_glActiveTexture:_emscripten_glActiveTexture,emscripten_glAttachShader:_emscripten_glAttachShader,emscripten_glBegin:_emscripten_glBegin,emscripten_glBeginQueryEXT:_emscripten_glBeginQueryEXT,emscripten_glBindAttribLocation:_emscripten_glBindAttribLocation,emscripten_glBindBuffer:_emscripten_glBindBuffer,emscripten_glBindFramebuffer:_emscripten_glBindFramebuffer,emscripten_glBindRenderbuffer:_emscripten_glBindRenderbuffer,emscripten_glBindTexture:_emscripten_glBindTexture,emscripten_glBindVertexArray:_emscripten_glBindVertexArray,emscripten_glBindVertexArrayOES:_emscripten_glBindVertexArrayOES,emscripten_glBlendColor:_emscripten_glBlendColor,emscripten_glBlendEquation:_emscripten_glBlendEquation,emscripten_glBlendEquationSeparate:_emscripten_glBlendEquationSeparate,emscripten_glBlendFunc:_emscripten_glBlendFunc,emscripten_glBlendFuncSeparate:_emscripten_glBlendFuncSeparate,emscripten_glBufferData:_emscripten_glBufferData,emscripten_glBufferSubData:_emscripten_glBufferSubData,emscripten_glCheckFramebufferStatus:_emscripten_glCheckFramebufferStatus,emscripten_glClear:_emscripten_glClear,emscripten_glClearColor:_emscripten_glClearColor,emscripten_glClearDepth:_emscripten_glClearDepth,emscripten_glClearDepthf:_emscripten_glClearDepthf,emscripten_glClearStencil:_emscripten_glClearStencil,emscripten_glClipControlEXT:_emscripten_glClipControlEXT,emscripten_glColorMask:_emscripten_glColorMask,emscripten_glCompileShader:_emscripten_glCompileShader,emscripten_glCompressedTexImage2D:_emscripten_glCompressedTexImage2D,emscripten_glCompressedTexSubImage2D:_emscripten_glCompressedTexSubImage2D,emscripten_glCopyTexImage2D:_emscripten_glCopyTexImage2D,emscripten_glCopyTexSubImage2D:_emscripten_glCopyTexSubImage2D,emscripten_glCreateProgram:_emscripten_glCreateProgram,emscripten_glCreateShader:_emscripten_glCreateShader,emscripten_glCullFace:_emscripten_glCullFace,emscripten_glDeleteBuffers:_emscripten_glDeleteBuffers,emscripten_glDeleteFramebuffers:_emscripten_glDeleteFramebuffers,emscripten_glDeleteProgram:_emscripten_glDeleteProgram,emscripten_glDeleteQueriesEXT:_emscripten_glDeleteQueriesEXT,emscripten_glDeleteRenderbuffers:_emscripten_glDeleteRenderbuffers,emscripten_glDeleteShader:_emscripten_glDeleteShader,emscripten_glDeleteTextures:_emscripten_glDeleteTextures,emscripten_glDeleteVertexArrays:_emscripten_glDeleteVertexArrays,emscripten_glDeleteVertexArraysOES:_emscripten_glDeleteVertexArraysOES,emscripten_glDepthFunc:_emscripten_glDepthFunc,emscripten_glDepthMask:_emscripten_glDepthMask,emscripten_glDepthRange:_emscripten_glDepthRange,emscripten_glDepthRangef:_emscripten_glDepthRangef,emscripten_glDetachShader:_emscripten_glDetachShader,emscripten_glDisable:_emscripten_glDisable,emscripten_glDisableVertexAttribArray:_emscripten_glDisableVertexAttribArray,emscripten_glDrawArrays:_emscripten_glDrawArrays,emscripten_glDrawArraysInstanced:_emscripten_glDrawArraysInstanced,emscripten_glDrawArraysInstancedANGLE:_emscripten_glDrawArraysInstancedANGLE,emscripten_glDrawArraysInstancedARB:_emscripten_glDrawArraysInstancedARB,emscripten_glDrawArraysInstancedEXT:_emscripten_glDrawArraysInstancedEXT,emscripten_glDrawArraysInstancedNV:_emscripten_glDrawArraysInstancedNV,emscripten_glDrawBuffers:_emscripten_glDrawBuffers,emscripten_glDrawBuffersEXT:_emscripten_glDrawBuffersEXT,emscripten_glDrawBuffersWEBGL:_emscripten_glDrawBuffersWEBGL,emscripten_glDrawElements:_emscripten_glDrawElements,emscripten_glDrawElementsInstanced:_emscripten_glDrawElementsInstanced,emscripten_glDrawElementsInstancedANGLE:_emscripten_glDrawElementsInstancedANGLE,emscripten_glDrawElementsInstancedARB:_emscripten_glDrawElementsInstancedARB,emscripten_glDrawElementsInstancedEXT:_emscripten_glDrawElementsInstancedEXT,emscripten_glDrawElementsInstancedNV:_emscripten_glDrawElementsInstancedNV,emscripten_glEnable:_emscripten_glEnable,emscripten_glEnableVertexAttribArray:_emscripten_glEnableVertexAttribArray,emscripten_glEndQueryEXT:_emscripten_glEndQueryEXT,emscripten_glFinish:_emscripten_glFinish,emscripten_glFlush:_emscripten_glFlush,emscripten_glFramebufferRenderbuffer:_emscripten_glFramebufferRenderbuffer,emscripten_glFramebufferTexture2D:_emscripten_glFramebufferTexture2D,emscripten_glFrontFace:_emscripten_glFrontFace,emscripten_glGenBuffers:_emscripten_glGenBuffers,emscripten_glGenFramebuffers:_emscripten_glGenFramebuffers,emscripten_glGenQueriesEXT:_emscripten_glGenQueriesEXT,emscripten_glGenRenderbuffers:_emscripten_glGenRenderbuffers,emscripten_glGenTextures:_emscripten_glGenTextures,emscripten_glGenVertexArrays:_emscripten_glGenVertexArrays,emscripten_glGenVertexArraysOES:_emscripten_glGenVertexArraysOES,emscripten_glGenerateMipmap:_emscripten_glGenerateMipmap,emscripten_glGetActiveAttrib:_emscripten_glGetActiveAttrib,emscripten_glGetActiveUniform:_emscripten_glGetActiveUniform,emscripten_glGetAttachedShaders:_emscripten_glGetAttachedShaders,emscripten_glGetAttribLocation:_emscripten_glGetAttribLocation,emscripten_glGetBooleanv:_emscripten_glGetBooleanv,emscripten_glGetBufferParameteriv:_emscripten_glGetBufferParameteriv,emscripten_glGetError:_emscripten_glGetError,emscripten_glGetFloatv:_emscripten_glGetFloatv,emscripten_glGetFramebufferAttachmentParameteriv:_emscripten_glGetFramebufferAttachmentParameteriv,emscripten_glGetIntegerv:_emscripten_glGetIntegerv,emscripten_glGetProgramInfoLog:_emscripten_glGetProgramInfoLog,emscripten_glGetProgramiv:_emscripten_glGetProgramiv,emscripten_glGetQueryObjecti64vEXT:_emscripten_glGetQueryObjecti64vEXT,emscripten_glGetQueryObjectivEXT:_emscripten_glGetQueryObjectivEXT,emscripten_glGetQueryObjectui64vEXT:_emscripten_glGetQueryObjectui64vEXT,emscripten_glGetQueryObjectuivEXT:_emscripten_glGetQueryObjectuivEXT,emscripten_glGetQueryivEXT:_emscripten_glGetQueryivEXT,emscripten_glGetRenderbufferParameteriv:_emscripten_glGetRenderbufferParameteriv,emscripten_glGetShaderInfoLog:_emscripten_glGetShaderInfoLog,emscripten_glGetShaderPrecisionFormat:_emscripten_glGetShaderPrecisionFormat,emscripten_glGetShaderSource:_emscripten_glGetShaderSource,emscripten_glGetShaderiv:_emscripten_glGetShaderiv,emscripten_glGetString:_emscripten_glGetString,emscripten_glGetTexParameterfv:_emscripten_glGetTexParameterfv,emscripten_glGetTexParameteriv:_emscripten_glGetTexParameteriv,emscripten_glGetUniformLocation:_emscripten_glGetUniformLocation,emscripten_glGetUniformfv:_emscripten_glGetUniformfv,emscripten_glGetUniformiv:_emscripten_glGetUniformiv,emscripten_glGetVertexAttribPointerv:_emscripten_glGetVertexAttribPointerv,emscripten_glGetVertexAttribfv:_emscripten_glGetVertexAttribfv,emscripten_glGetVertexAttribiv:_emscripten_glGetVertexAttribiv,emscripten_glHint:_emscripten_glHint,emscripten_glIsBuffer:_emscripten_glIsBuffer,emscripten_glIsEnabled:_emscripten_glIsEnabled,emscripten_glIsFramebuffer:_emscripten_glIsFramebuffer,emscripten_glIsProgram:_emscripten_glIsProgram,emscripten_glIsQueryEXT:_emscripten_glIsQueryEXT,emscripten_glIsRenderbuffer:_emscripten_glIsRenderbuffer,emscripten_glIsShader:_emscripten_glIsShader,emscripten_glIsTexture:_emscripten_glIsTexture,emscripten_glIsVertexArray:_emscripten_glIsVertexArray,emscripten_glIsVertexArrayOES:_emscripten_glIsVertexArrayOES,emscripten_glLineWidth:_emscripten_glLineWidth,emscripten_glLinkProgram:_emscripten_glLinkProgram,emscripten_glLoadIdentity:_emscripten_glLoadIdentity,emscripten_glMatrixMode:_emscripten_glMatrixMode,emscripten_glMultiDrawArrays:_emscripten_glMultiDrawArrays,emscripten_glMultiDrawArraysANGLE:_emscripten_glMultiDrawArraysANGLE,emscripten_glMultiDrawArraysInstancedANGLE:_emscripten_glMultiDrawArraysInstancedANGLE,emscripten_glMultiDrawArraysInstancedWEBGL:_emscripten_glMultiDrawArraysInstancedWEBGL,emscripten_glMultiDrawArraysWEBGL:_emscripten_glMultiDrawArraysWEBGL,emscripten_glMultiDrawElements:_emscripten_glMultiDrawElements,emscripten_glMultiDrawElementsANGLE:_emscripten_glMultiDrawElementsANGLE,emscripten_glMultiDrawElementsInstancedANGLE:_emscripten_glMultiDrawElementsInstancedANGLE,emscripten_glMultiDrawElementsInstancedWEBGL:_emscripten_glMultiDrawElementsInstancedWEBGL,emscripten_glMultiDrawElementsWEBGL:_emscripten_glMultiDrawElementsWEBGL,emscripten_glPixelStorei:_emscripten_glPixelStorei,emscripten_glPolygonModeWEBGL:_emscripten_glPolygonModeWEBGL,emscripten_glPolygonOffset:_emscripten_glPolygonOffset,emscripten_glPolygonOffsetClampEXT:_emscripten_glPolygonOffsetClampEXT,emscripten_glQueryCounterEXT:_emscripten_glQueryCounterEXT,emscripten_glReadPixels:_emscripten_glReadPixels,emscripten_glReleaseShaderCompiler:_emscripten_glReleaseShaderCompiler,emscripten_glRenderbufferStorage:_emscripten_glRenderbufferStorage,emscripten_glSampleCoverage:_emscripten_glSampleCoverage,emscripten_glScissor:_emscripten_glScissor,emscripten_glShaderBinary:_emscripten_glShaderBinary,emscripten_glShaderSource:_emscripten_glShaderSource,emscripten_glStencilFunc:_emscripten_glStencilFunc,emscripten_glStencilFuncSeparate:_emscripten_glStencilFuncSeparate,emscripten_glStencilMask:_emscripten_glStencilMask,emscripten_glStencilMaskSeparate:_emscripten_glStencilMaskSeparate,emscripten_glStencilOp:_emscripten_glStencilOp,emscripten_glStencilOpSeparate:_emscripten_glStencilOpSeparate,emscripten_glTexImage2D:_emscripten_glTexImage2D,emscripten_glTexParameterf:_emscripten_glTexParameterf,emscripten_glTexParameterfv:_emscripten_glTexParameterfv,emscripten_glTexParameteri:_emscripten_glTexParameteri,emscripten_glTexParameteriv:_emscripten_glTexParameteriv,emscripten_glTexSubImage2D:_emscripten_glTexSubImage2D,emscripten_glUniform1f:_emscripten_glUniform1f,emscripten_glUniform1fv:_emscripten_glUniform1fv,emscripten_glUniform1i:_emscripten_glUniform1i,emscripten_glUniform1iv:_emscripten_glUniform1iv,emscripten_glUniform2f:_emscripten_glUniform2f,emscripten_glUniform2fv:_emscripten_glUniform2fv,emscripten_glUniform2i:_emscripten_glUniform2i,emscripten_glUniform2iv:_emscripten_glUniform2iv,emscripten_glUniform3f:_emscripten_glUniform3f,emscripten_glUniform3fv:_emscripten_glUniform3fv,emscripten_glUniform3i:_emscripten_glUniform3i,emscripten_glUniform3iv:_emscripten_glUniform3iv,emscripten_glUniform4f:_emscripten_glUniform4f,emscripten_glUniform4fv:_emscripten_glUniform4fv,emscripten_glUniform4i:_emscripten_glUniform4i,emscripten_glUniform4iv:_emscripten_glUniform4iv,emscripten_glUniformMatrix2fv:_emscripten_glUniformMatrix2fv,emscripten_glUniformMatrix3fv:_emscripten_glUniformMatrix3fv,emscripten_glUniformMatrix4fv:_emscripten_glUniformMatrix4fv,emscripten_glUseProgram:_emscripten_glUseProgram,emscripten_glValidateProgram:_emscripten_glValidateProgram,emscripten_glVertexAttrib1f:_emscripten_glVertexAttrib1f,emscripten_glVertexAttrib1fv:_emscripten_glVertexAttrib1fv,emscripten_glVertexAttrib2f:_emscripten_glVertexAttrib2f,emscripten_glVertexAttrib2fv:_emscripten_glVertexAttrib2fv,emscripten_glVertexAttrib3f:_emscripten_glVertexAttrib3f,emscripten_glVertexAttrib3fv:_emscripten_glVertexAttrib3fv,emscripten_glVertexAttrib4f:_emscripten_glVertexAttrib4f,emscripten_glVertexAttrib4fv:_emscripten_glVertexAttrib4fv,emscripten_glVertexAttribDivisor:_emscripten_glVertexAttribDivisor,emscripten_glVertexAttribDivisorANGLE:_emscripten_glVertexAttribDivisorANGLE,emscripten_glVertexAttribDivisorARB:_emscripten_glVertexAttribDivisorARB,emscripten_glVertexAttribDivisorEXT:_emscripten_glVertexAttribDivisorEXT,emscripten_glVertexAttribDivisorNV:_emscripten_glVertexAttribDivisorNV,emscripten_glVertexAttribPointer:_emscripten_glVertexAttribPointer,emscripten_glVertexPointer:_emscripten_glVertexPointer,emscripten_glViewport:_emscripten_glViewport,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_idb_async_clear:_emscripten_idb_async_clear,emscripten_idb_async_delete:_emscripten_idb_async_delete,emscripten_idb_async_exists:_emscripten_idb_async_exists,emscripten_idb_async_load:_emscripten_idb_async_load,emscripten_idb_async_store:_emscripten_idb_async_store,emscripten_idb_clear:_emscripten_idb_clear,emscripten_idb_delete:_emscripten_idb_delete,emscripten_idb_exists:_emscripten_idb_exists,emscripten_idb_load:_emscripten_idb_load,emscripten_idb_store:_emscripten_idb_store,emscripten_is_main_browser_thread:_emscripten_is_main_browser_thread,emscripten_is_webgl_context_lost:_emscripten_is_webgl_context_lost,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_webglcontextlost_callback_on_thread:_emscripten_set_webglcontextlost_callback_on_thread,emscripten_set_webglcontextrestored_callback_on_thread:_emscripten_set_webglcontextrestored_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_supports_offscreencanvas:_emscripten_supports_offscreencanvas,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_webgl_commit_frame:_emscripten_webgl_commit_frame,emscripten_webgl_create_context:_emscripten_webgl_create_context,emscripten_webgl_destroy_context:_emscripten_webgl_destroy_context,emscripten_webgl_do_commit_frame:_emscripten_webgl_do_commit_frame,emscripten_webgl_do_create_context:_emscripten_webgl_do_create_context,emscripten_webgl_do_get_current_context:_emscripten_webgl_do_get_current_context,emscripten_webgl_enable_ANGLE_instanced_arrays:_emscripten_webgl_enable_ANGLE_instanced_arrays,emscripten_webgl_enable_EXT_clip_control:_emscripten_webgl_enable_EXT_clip_control,emscripten_webgl_enable_EXT_polygon_offset_clamp:_emscripten_webgl_enable_EXT_polygon_offset_clamp,emscripten_webgl_enable_OES_vertex_array_object:_emscripten_webgl_enable_OES_vertex_array_object,emscripten_webgl_enable_WEBGL_draw_buffers:_emscripten_webgl_enable_WEBGL_draw_buffers,emscripten_webgl_enable_WEBGL_multi_draw:_emscripten_webgl_enable_WEBGL_multi_draw,emscripten_webgl_enable_WEBGL_polygon_mode:_emscripten_webgl_enable_WEBGL_polygon_mode,emscripten_webgl_enable_extension:_emscripten_webgl_enable_extension,emscripten_webgl_get_context_attributes:_emscripten_webgl_get_context_attributes,emscripten_webgl_get_current_context:_emscripten_webgl_get_current_context,emscripten_webgl_get_drawing_buffer_size:_emscripten_webgl_get_drawing_buffer_size,emscripten_webgl_get_parameter_d:_emscripten_webgl_get_parameter_d,emscripten_webgl_get_parameter_i64v:_emscripten_webgl_get_parameter_i64v,emscripten_webgl_get_parameter_o:_emscripten_webgl_get_parameter_o,emscripten_webgl_get_parameter_utf8:_emscripten_webgl_get_parameter_utf8,emscripten_webgl_get_parameter_v:_emscripten_webgl_get_parameter_v,emscripten_webgl_get_program_info_log_utf8:_emscripten_webgl_get_program_info_log_utf8,emscripten_webgl_get_program_parameter_d:_emscripten_webgl_get_program_parameter_d,emscripten_webgl_get_shader_info_log_utf8:_emscripten_webgl_get_shader_info_log_utf8,emscripten_webgl_get_shader_parameter_d:_emscripten_webgl_get_shader_parameter_d,emscripten_webgl_get_shader_source_utf8:_emscripten_webgl_get_shader_source_utf8,emscripten_webgl_get_supported_extensions:_emscripten_webgl_get_supported_extensions,emscripten_webgl_get_uniform_d:_emscripten_webgl_get_uniform_d,emscripten_webgl_get_uniform_v:_emscripten_webgl_get_uniform_v,emscripten_webgl_get_vertex_attrib_d:_emscripten_webgl_get_vertex_attrib_d,emscripten_webgl_get_vertex_attrib_o:_emscripten_webgl_get_vertex_attrib_o,emscripten_webgl_get_vertex_attrib_v:_emscripten_webgl_get_vertex_attrib_v,emscripten_webgl_make_context_current:_emscripten_webgl_make_context_current,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,filledEllipseColor:_filledEllipseColor,filledEllipseRGBA:_filledEllipseRGBA,getaddrinfo:_getaddrinfo,getnameinfo:_getnameinfo,getprotobyname:_getprotobyname,getprotobynumber:_getprotobynumber,getprotoent:_getprotoent,glActiveTexture:_glActiveTexture,glAttachShader:_glAttachShader,glBegin:_glBegin,glBeginQueryEXT:_glBeginQueryEXT,glBindAttribLocation:_glBindAttribLocation,glBindBuffer:_glBindBuffer,glBindFramebuffer:_glBindFramebuffer,glBindRenderbuffer:_glBindRenderbuffer,glBindTexture:_glBindTexture,glBindVertexArray:_glBindVertexArray,glBindVertexArrayOES:_glBindVertexArrayOES,glBlendColor:_glBlendColor,glBlendEquation:_glBlendEquation,glBlendEquationSeparate:_glBlendEquationSeparate,glBlendFunc:_glBlendFunc,glBlendFuncSeparate:_glBlendFuncSeparate,glBufferData:_glBufferData,glBufferSubData:_glBufferSubData,glCheckFramebufferStatus:_glCheckFramebufferStatus,glClear:_glClear,glClearColor:_glClearColor,glClearDepth:_glClearDepth,glClearDepthf:_glClearDepthf,glClearStencil:_glClearStencil,glClipControlEXT:_glClipControlEXT,glColorMask:_glColorMask,glCompileShader:_glCompileShader,glCompressedTexImage2D:_glCompressedTexImage2D,glCompressedTexSubImage2D:_glCompressedTexSubImage2D,glCopyTexImage2D:_glCopyTexImage2D,glCopyTexSubImage2D:_glCopyTexSubImage2D,glCreateProgram:_glCreateProgram,glCreateShader:_glCreateShader,glCullFace:_glCullFace,glDeleteBuffers:_glDeleteBuffers,glDeleteFramebuffers:_glDeleteFramebuffers,glDeleteProgram:_glDeleteProgram,glDeleteQueriesEXT:_glDeleteQueriesEXT,glDeleteRenderbuffers:_glDeleteRenderbuffers,glDeleteShader:_glDeleteShader,glDeleteTextures:_glDeleteTextures,glDeleteVertexArrays:_glDeleteVertexArrays,glDeleteVertexArraysOES:_glDeleteVertexArraysOES,glDepthFunc:_glDepthFunc,glDepthMask:_glDepthMask,glDepthRange:_glDepthRange,glDepthRangef:_glDepthRangef,glDetachShader:_glDetachShader,glDisable:_glDisable,glDisableVertexAttribArray:_glDisableVertexAttribArray,glDrawArrays:_glDrawArrays,glDrawArraysInstanced:_glDrawArraysInstanced,glDrawArraysInstancedANGLE:_glDrawArraysInstancedANGLE,glDrawArraysInstancedARB:_glDrawArraysInstancedARB,glDrawArraysInstancedEXT:_glDrawArraysInstancedEXT,glDrawArraysInstancedNV:_glDrawArraysInstancedNV,glDrawBuffers:_glDrawBuffers,glDrawBuffersEXT:_glDrawBuffersEXT,glDrawBuffersWEBGL:_glDrawBuffersWEBGL,glDrawElements:_glDrawElements,glDrawElementsInstanced:_glDrawElementsInstanced,glDrawElementsInstancedANGLE:_glDrawElementsInstancedANGLE,glDrawElementsInstancedARB:_glDrawElementsInstancedARB,glDrawElementsInstancedEXT:_glDrawElementsInstancedEXT,glDrawElementsInstancedNV:_glDrawElementsInstancedNV,glEnable:_glEnable,glEnableVertexAttribArray:_glEnableVertexAttribArray,glEndQueryEXT:_glEndQueryEXT,glFinish:_glFinish,glFlush:_glFlush,glFramebufferRenderbuffer:_glFramebufferRenderbuffer,glFramebufferTexture2D:_glFramebufferTexture2D,glFrontFace:_glFrontFace,glGenBuffers:_glGenBuffers,glGenFramebuffers:_glGenFramebuffers,glGenQueriesEXT:_glGenQueriesEXT,glGenRenderbuffers:_glGenRenderbuffers,glGenTextures:_glGenTextures,glGenVertexArrays:_glGenVertexArrays,glGenVertexArraysOES:_glGenVertexArraysOES,glGenerateMipmap:_glGenerateMipmap,glGetActiveAttrib:_glGetActiveAttrib,glGetActiveUniform:_glGetActiveUniform,glGetAttachedShaders:_glGetAttachedShaders,glGetAttribLocation:_glGetAttribLocation,glGetBooleanv:_glGetBooleanv,glGetBufferParameteriv:_glGetBufferParameteriv,glGetError:_glGetError,glGetFloatv:_glGetFloatv,glGetFramebufferAttachmentParameteriv:_glGetFramebufferAttachmentParameteriv,glGetIntegerv:_glGetIntegerv,glGetProgramInfoLog:_glGetProgramInfoLog,glGetProgramiv:_glGetProgramiv,glGetQueryObjecti64vEXT:_glGetQueryObjecti64vEXT,glGetQueryObjectivEXT:_glGetQueryObjectivEXT,glGetQueryObjectui64vEXT:_glGetQueryObjectui64vEXT,glGetQueryObjectuivEXT:_glGetQueryObjectuivEXT,glGetQueryivEXT:_glGetQueryivEXT,glGetRenderbufferParameteriv:_glGetRenderbufferParameteriv,glGetShaderInfoLog:_glGetShaderInfoLog,glGetShaderPrecisionFormat:_glGetShaderPrecisionFormat,glGetShaderSource:_glGetShaderSource,glGetShaderiv:_glGetShaderiv,glGetString:_glGetString,glGetTexParameterfv:_glGetTexParameterfv,glGetTexParameteriv:_glGetTexParameteriv,glGetUniformLocation:_glGetUniformLocation,glGetUniformfv:_glGetUniformfv,glGetUniformiv:_glGetUniformiv,glGetVertexAttribPointerv:_glGetVertexAttribPointerv,glGetVertexAttribfv:_glGetVertexAttribfv,glGetVertexAttribiv:_glGetVertexAttribiv,glHint:_glHint,glIsBuffer:_glIsBuffer,glIsEnabled:_glIsEnabled,glIsFramebuffer:_glIsFramebuffer,glIsProgram:_glIsProgram,glIsQueryEXT:_glIsQueryEXT,glIsRenderbuffer:_glIsRenderbuffer,glIsShader:_glIsShader,glIsTexture:_glIsTexture,glIsVertexArray:_glIsVertexArray,glIsVertexArrayOES:_glIsVertexArrayOES,glLineWidth:_glLineWidth,glLinkProgram:_glLinkProgram,glLoadIdentity:_glLoadIdentity,glMatrixMode:_glMatrixMode,glMultiDrawArrays:_glMultiDrawArrays,glMultiDrawArraysANGLE:_glMultiDrawArraysANGLE,glMultiDrawArraysInstancedANGLE:_glMultiDrawArraysInstancedANGLE,glMultiDrawArraysInstancedWEBGL:_glMultiDrawArraysInstancedWEBGL,glMultiDrawArraysWEBGL:_glMultiDrawArraysWEBGL,glMultiDrawElements:_glMultiDrawElements,glMultiDrawElementsANGLE:_glMultiDrawElementsANGLE,glMultiDrawElementsInstancedANGLE:_glMultiDrawElementsInstancedANGLE,glMultiDrawElementsInstancedWEBGL:_glMultiDrawElementsInstancedWEBGL,glMultiDrawElementsWEBGL:_glMultiDrawElementsWEBGL,glPixelStorei:_glPixelStorei,glPolygonModeWEBGL:_glPolygonModeWEBGL,glPolygonOffset:_glPolygonOffset,glPolygonOffsetClampEXT:_glPolygonOffsetClampEXT,glQueryCounterEXT:_glQueryCounterEXT,glReadPixels:_glReadPixels,glReleaseShaderCompiler:_glReleaseShaderCompiler,glRenderbufferStorage:_glRenderbufferStorage,glSampleCoverage:_glSampleCoverage,glScissor:_glScissor,glShaderBinary:_glShaderBinary,glShaderSource:_glShaderSource,glStencilFunc:_glStencilFunc,glStencilFuncSeparate:_glStencilFuncSeparate,glStencilMask:_glStencilMask,glStencilMaskSeparate:_glStencilMaskSeparate,glStencilOp:_glStencilOp,glStencilOpSeparate:_glStencilOpSeparate,glTexImage2D:_glTexImage2D,glTexParameterf:_glTexParameterf,glTexParameterfv:_glTexParameterfv,glTexParameteri:_glTexParameteri,glTexParameteriv:_glTexParameteriv,glTexSubImage2D:_glTexSubImage2D,glUniform1f:_glUniform1f,glUniform1fv:_glUniform1fv,glUniform1i:_glUniform1i,glUniform1iv:_glUniform1iv,glUniform2f:_glUniform2f,glUniform2fv:_glUniform2fv,glUniform2i:_glUniform2i,glUniform2iv:_glUniform2iv,glUniform3f:_glUniform3f,glUniform3fv:_glUniform3fv,glUniform3i:_glUniform3i,glUniform3iv:_glUniform3iv,glUniform4f:_glUniform4f,glUniform4fv:_glUniform4fv,glUniform4i:_glUniform4i,glUniform4iv:_glUniform4iv,glUniformMatrix2fv:_glUniformMatrix2fv,glUniformMatrix3fv:_glUniformMatrix3fv,glUniformMatrix4fv:_glUniformMatrix4fv,glUseProgram:_glUseProgram,glValidateProgram:_glValidateProgram,glVertexAttrib1f:_glVertexAttrib1f,glVertexAttrib1fv:_glVertexAttrib1fv,glVertexAttrib2f:_glVertexAttrib2f,glVertexAttrib2fv:_glVertexAttrib2fv,glVertexAttrib3f:_glVertexAttrib3f,glVertexAttrib3fv:_glVertexAttrib3fv,glVertexAttrib4f:_glVertexAttrib4f,glVertexAttrib4fv:_glVertexAttrib4fv,glVertexAttribDivisor:_glVertexAttribDivisor,glVertexAttribDivisorANGLE:_glVertexAttribDivisorANGLE,glVertexAttribDivisorARB:_glVertexAttribDivisorARB,glVertexAttribDivisorEXT:_glVertexAttribDivisorEXT,glVertexAttribDivisorNV:_glVertexAttribDivisorNV,glVertexAttribPointer:_glVertexAttribPointer,glVertexPointer:_glVertexPointer,glViewport:_glViewport,glewGetErrorString:_glewGetErrorString,glewGetExtension:_glewGetExtension,glewGetString:_glewGetString,glewInit:_glewInit,glewIsSupported:_glewIsSupported,glutCreateWindow:_glutCreateWindow,glutDestroyWindow:_glutDestroyWindow,glutDisplayFunc:_glutDisplayFunc,glutFullScreen:_glutFullScreen,glutGet:_glutGet,glutGetModifiers:_glutGetModifiers,glutIdleFunc:_glutIdleFunc,glutInit:_glutInit,glutInitDisplayMode:_glutInitDisplayMode,glutInitWindowPosition:_glutInitWindowPosition,glutInitWindowSize:_glutInitWindowSize,glutKeyboardFunc:_glutKeyboardFunc,glutKeyboardUpFunc:_glutKeyboardUpFunc,glutMainLoop:_glutMainLoop,glutMotionFunc:_glutMotionFunc,glutMouseFunc:_glutMouseFunc,glutPassiveMotionFunc:_glutPassiveMotionFunc,glutPositionWindow:_glutPositionWindow,glutPostRedisplay:_glutPostRedisplay,glutReshapeFunc:_glutReshapeFunc,glutReshapeWindow:_glutReshapeWindow,glutSetCursor:_glutSetCursor,glutSpecialFunc:_glutSpecialFunc,glutSpecialUpFunc:_glutSpecialUpFunc,glutSwapBuffers:_glutSwapBuffers,glutTimerFunc:_glutTimerFunc,lineColor:_lineColor,lineRGBA:_lineRGBA,memory:wasmMemory,pixelRGBA:_pixelRGBA,proc_exit:_proc_exit,pthread_kill:_pthread_kill,random_get:_random_get,rectangleColor:_rectangleColor,rectangleRGBA:_rectangleRGBA,rotozoomSurface:_rotozoomSurface,setNetworkCallback:_setNetworkCallback,setprotoent:_setprotoent,stackAlloc:_stackAlloc,stackRestore:_stackRestore,stackSave:_stackSave,strptime:_strptime,strptime_l:_strptime_l,uuid_clear:_uuid_clear,uuid_compare:_uuid_compare,uuid_copy:_uuid_copy,uuid_generate:_uuid_generate,uuid_is_null:_uuid_is_null,uuid_parse:_uuid_parse,uuid_type:_uuid_type,uuid_unparse:_uuid_unparse,uuid_unparse_lower:_uuid_unparse_lower,uuid_unparse_upper:_uuid_unparse_upper,uuid_variant:_uuid_variant,zoomSurface:_zoomSurface},wasmExports=createWasm(),__emval_coro_resume=(e,t)=>(__emval_coro_resume=wasmExports._emval_coro_resume)(e,t),_main=Module._main=(e,t)=>(_main=Module._main=wasmExports.main)(e,t),_duckdb_web_fs_glob_add_path=Module._duckdb_web_fs_glob_add_path=e=>(_duckdb_web_fs_glob_add_path=Module._duckdb_web_fs_glob_add_path=wasmExports.duckdb_web_fs_glob_add_path)(e),_duckdb_web_clear_response=Module._duckdb_web_clear_response=()=>(_duckdb_web_clear_response=Module._duckdb_web_clear_response=wasmExports.duckdb_web_clear_response)(),_duckdb_web_fail_with=Module._duckdb_web_fail_with=e=>(_duckdb_web_fail_with=Module._duckdb_web_fail_with=wasmExports.duckdb_web_fail_with)(e),_duckdb_web_reset=Module._duckdb_web_reset=e=>(_duckdb_web_reset=Module._duckdb_web_reset=wasmExports.duckdb_web_reset)(e),_duckdb_web_connect=Module._duckdb_web_connect=()=>(_duckdb_web_connect=Module._duckdb_web_connect=wasmExports.duckdb_web_connect)(),_duckdb_web_disconnect=Module._duckdb_web_disconnect=e=>(_duckdb_web_disconnect=Module._duckdb_web_disconnect=wasmExports.duckdb_web_disconnect)(e),_duckdb_web_flush_files=Module._duckdb_web_flush_files=()=>(_duckdb_web_flush_files=Module._duckdb_web_flush_files=wasmExports.duckdb_web_flush_files)(),_duckdb_web_flush_file=Module._duckdb_web_flush_file=e=>(_duckdb_web_flush_file=Module._duckdb_web_flush_file=wasmExports.duckdb_web_flush_file)(e),_duckdb_web_open=Module._duckdb_web_open=(e,t)=>(_duckdb_web_open=Module._duckdb_web_open=wasmExports.duckdb_web_open)(e,t),_duckdb_web_get_global_file_info=Module._duckdb_web_get_global_file_info=(e,t)=>(_duckdb_web_get_global_file_info=Module._duckdb_web_get_global_file_info=wasmExports.duckdb_web_get_global_file_info)(e,t),_duckdb_web_collect_file_stats=Module._duckdb_web_collect_file_stats=(e,t,r)=>(_duckdb_web_collect_file_stats=Module._duckdb_web_collect_file_stats=wasmExports.duckdb_web_collect_file_stats)(e,t,r),_duckdb_web_export_file_stats=Module._duckdb_web_export_file_stats=(e,t)=>(_duckdb_web_export_file_stats=Module._duckdb_web_export_file_stats=wasmExports.duckdb_web_export_file_stats)(e,t),_duckdb_web_fs_drop_file=Module._duckdb_web_fs_drop_file=(e,t)=>(_duckdb_web_fs_drop_file=Module._duckdb_web_fs_drop_file=wasmExports.duckdb_web_fs_drop_file)(e,t),_duckdb_web_fs_drop_files=Module._duckdb_web_fs_drop_files=e=>(_duckdb_web_fs_drop_files=Module._duckdb_web_fs_drop_files=wasmExports.duckdb_web_fs_drop_files)(e),_duckdb_web_fs_glob_file_infos=Module._duckdb_web_fs_glob_file_infos=(e,t)=>(_duckdb_web_fs_glob_file_infos=Module._duckdb_web_fs_glob_file_infos=wasmExports.duckdb_web_fs_glob_file_infos)(e,t),_duckdb_web_fs_get_file_info_by_id=Module._duckdb_web_fs_get_file_info_by_id=(e,t,r)=>(_duckdb_web_fs_get_file_info_by_id=Module._duckdb_web_fs_get_file_info_by_id=wasmExports.duckdb_web_fs_get_file_info_by_id)(e,t,r),_duckdb_web_fs_get_file_info_by_name=Module._duckdb_web_fs_get_file_info_by_name=(e,t,r)=>(_duckdb_web_fs_get_file_info_by_name=Module._duckdb_web_fs_get_file_info_by_name=wasmExports.duckdb_web_fs_get_file_info_by_name)(e,t,r),_duckdb_web_fs_register_file_url=Module._duckdb_web_fs_register_file_url=(e,t,r,n,a)=>(_duckdb_web_fs_register_file_url=Module._duckdb_web_fs_register_file_url=wasmExports.duckdb_web_fs_register_file_url)(e,t,r,n,a),_duckdb_web_fs_register_file_buffer=Module._duckdb_web_fs_register_file_buffer=(e,t,r,n)=>(_duckdb_web_fs_register_file_buffer=Module._duckdb_web_fs_register_file_buffer=wasmExports.duckdb_web_fs_register_file_buffer)(e,t,r,n),_duckdb_web_copy_file_to_buffer=Module._duckdb_web_copy_file_to_buffer=(e,t)=>(_duckdb_web_copy_file_to_buffer=Module._duckdb_web_copy_file_to_buffer=wasmExports.duckdb_web_copy_file_to_buffer)(e,t),_duckdb_web_copy_file_to_path=Module._duckdb_web_copy_file_to_path=(e,t,r)=>(_duckdb_web_copy_file_to_path=Module._duckdb_web_copy_file_to_path=wasmExports.duckdb_web_copy_file_to_path)(e,t,r),_duckdb_web_get_version=Module._duckdb_web_get_version=e=>(_duckdb_web_get_version=Module._duckdb_web_get_version=wasmExports.duckdb_web_get_version)(e),_duckdb_web_get_feature_flags=Module._duckdb_web_get_feature_flags=()=>(_duckdb_web_get_feature_flags=Module._duckdb_web_get_feature_flags=wasmExports.duckdb_web_get_feature_flags)(),_duckdb_web_tokenize=Module._duckdb_web_tokenize=(e,t)=>(_duckdb_web_tokenize=Module._duckdb_web_tokenize=wasmExports.duckdb_web_tokenize)(e,t),_duckdb_web_tokenize_buffer=Module._duckdb_web_tokenize_buffer=(e,t,r)=>(_duckdb_web_tokenize_buffer=Module._duckdb_web_tokenize_buffer=wasmExports.duckdb_web_tokenize_buffer)(e,t,r),_duckdb_web_udf_scalar_create=Module._duckdb_web_udf_scalar_create=(e,t,r)=>(_duckdb_web_udf_scalar_create=Module._duckdb_web_udf_scalar_create=wasmExports.duckdb_web_udf_scalar_create)(e,t,r),_duckdb_web_prepared_create=Module._duckdb_web_prepared_create=(e,t,r)=>(_duckdb_web_prepared_create=Module._duckdb_web_prepared_create=wasmExports.duckdb_web_prepared_create)(e,t,r),_duckdb_web_prepared_create_buffer=Module._duckdb_web_prepared_create_buffer=(e,t,r,n)=>(_duckdb_web_prepared_create_buffer=Module._duckdb_web_prepared_create_buffer=wasmExports.duckdb_web_prepared_create_buffer)(e,t,r,n),_duckdb_web_prepared_close=Module._duckdb_web_prepared_close=(e,t,r)=>(_duckdb_web_prepared_close=Module._duckdb_web_prepared_close=wasmExports.duckdb_web_prepared_close)(e,t,r),_duckdb_web_prepared_run=Module._duckdb_web_prepared_run=(e,t,r,n)=>(_duckdb_web_prepared_run=Module._duckdb_web_prepared_run=wasmExports.duckdb_web_prepared_run)(e,t,r,n),_duckdb_web_prepared_send=Module._duckdb_web_prepared_send=(e,t,r,n)=>(_duckdb_web_prepared_send=Module._duckdb_web_prepared_send=wasmExports.duckdb_web_prepared_send)(e,t,r,n),_duckdb_web_query_run=Module._duckdb_web_query_run=(e,t,r)=>(_duckdb_web_query_run=Module._duckdb_web_query_run=wasmExports.duckdb_web_query_run)(e,t,r),_duckdb_web_query_run_buffer=Module._duckdb_web_query_run_buffer=(e,t,r,n)=>(_duckdb_web_query_run_buffer=Module._duckdb_web_query_run_buffer=wasmExports.duckdb_web_query_run_buffer)(e,t,r,n),_duckdb_web_pending_query_start=Module._duckdb_web_pending_query_start=(e,t,r,n)=>(_duckdb_web_pending_query_start=Module._duckdb_web_pending_query_start=wasmExports.duckdb_web_pending_query_start)(e,t,r,n),_duckdb_web_pending_query_start_buffer=Module._duckdb_web_pending_query_start_buffer=(e,t,r,n,a)=>(_duckdb_web_pending_query_start_buffer=Module._duckdb_web_pending_query_start_buffer=wasmExports.duckdb_web_pending_query_start_buffer)(e,t,r,n,a),_duckdb_web_pending_query_poll=Module._duckdb_web_pending_query_poll=(e,t,r)=>(_duckdb_web_pending_query_poll=Module._duckdb_web_pending_query_poll=wasmExports.duckdb_web_pending_query_poll)(e,t,r),_duckdb_web_pending_query_cancel=Module._duckdb_web_pending_query_cancel=(e,t)=>(_duckdb_web_pending_query_cancel=Module._duckdb_web_pending_query_cancel=wasmExports.duckdb_web_pending_query_cancel)(e,t),_duckdb_web_query_fetch_results=Module._duckdb_web_query_fetch_results=(e,t)=>(_duckdb_web_query_fetch_results=Module._duckdb_web_query_fetch_results=wasmExports.duckdb_web_query_fetch_results)(e,t),_duckdb_web_get_tablenames=Module._duckdb_web_get_tablenames=(e,t,r)=>(_duckdb_web_get_tablenames=Module._duckdb_web_get_tablenames=wasmExports.duckdb_web_get_tablenames)(e,t,r),_duckdb_web_get_tablenames_buffer=Module._duckdb_web_get_tablenames_buffer=(e,t,r,n)=>(_duckdb_web_get_tablenames_buffer=Module._duckdb_web_get_tablenames_buffer=wasmExports.duckdb_web_get_tablenames_buffer)(e,t,r,n),_duckdb_web_insert_arrow_from_ipc_stream=Module._duckdb_web_insert_arrow_from_ipc_stream=(e,t,r,n,a)=>(_duckdb_web_insert_arrow_from_ipc_stream=Module._duckdb_web_insert_arrow_from_ipc_stream=wasmExports.duckdb_web_insert_arrow_from_ipc_stream)(e,t,r,n,a),_duckdb_web_insert_csv_from_path=Module._duckdb_web_insert_csv_from_path=(e,t,r,n)=>(_duckdb_web_insert_csv_from_path=Module._duckdb_web_insert_csv_from_path=wasmExports.duckdb_web_insert_csv_from_path)(e,t,r,n),_duckdb_web_insert_json_from_path=Module._duckdb_web_insert_json_from_path=(e,t,r,n)=>(_duckdb_web_insert_json_from_path=Module._duckdb_web_insert_json_from_path=wasmExports.duckdb_web_insert_json_from_path)(e,t,r,n),___dl_seterr=(e,t)=>(___dl_seterr=wasmExports.__dl_seterr)(e,t),__emscripten_timeout=(e,t)=>(__emscripten_timeout=wasmExports._emscripten_timeout)(e,t),_malloc=Module._malloc=e=>(_malloc=Module._malloc=wasmExports.malloc)(e),_free=Module._free=e=>(_free=Module._free=wasmExports.free)(e),_calloc=Module._calloc=(e,t)=>(_calloc=Module._calloc=wasmExports.calloc)(e,t),_emscripten_builtin_memalign=(e,t)=>(_emscripten_builtin_memalign=wasmExports.emscripten_builtin_memalign)(e,t),__emscripten_tempret_set=e=>(__emscripten_tempret_set=wasmExports._emscripten_tempret_set)(e),__emscripten_tempret_get=()=>(__emscripten_tempret_get=wasmExports._emscripten_tempret_get)(),__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)();function applySignatureConversions(e){e=Object.assign({},e);var t=u=>_=>u(_)>>>0,r=u=>()=>u()>>>0,n=u=>(_,d,f)=>u(_,d,f)>>>0,a=u=>(_,d)=>u(_,d)>>>0,l=u=>_=>u(_)>>>0,c=u=>_=>u(_)>>>0;return e.__getTypeName=t(e.__getTypeName),e.pthread_self=r(e.pthread_self),e.memcpy=n(e.memcpy),e.malloc=t(e.malloc),e.calloc=a(e.calloc),e.__errno_location=r(e.__errno_location),e.strerror=l(e.strerror),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=a(e.emscripten_builtin_memalign),e.emscripten_stack_get_current=r(e.emscripten_stack_get_current),e.emscripten_main_runtime_thread_id=r(e.emscripten_main_runtime_thread_id),e.sbrk=c(e.sbrk),e.memalign=a(e.memalign),e.emscripten_builtin_calloc=a(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.stackSave=stackSave,Module.stackRestore=stackRestore,Module.stackAlloc=stackAlloc,Module.ccall=ccall;var calledRun;dependenciesFulfilled=function e(){calledRun||run(),calledRun||(dependenciesFulfilled=e)};function callMain(e=[]){var t=resolveGlobalSymbol("main").sym;if(t){e.unshift(thisProgram);var r=e.length,n=stackAlloc((r+1)*4),a=n;e.forEach(c=>{HEAPU32[a>>>2>>>0]=stringToUTF8OnStack(c),a+=4}),HEAPU32[a>>>2>>>0]=0;try{var l=t(r,n);return exitJS(l,!0),l}catch(c){return handleException(c)}}}function run(e=arguments_){if(runDependencies>0||(preRun(),runDependencies>0))return;function t(){var r;calledRun||(calledRun=!0,Module.calledRun=!0,!ABORT&&(initRuntime(),preMain(),readyPromiseResolve(Module),(r=Module.onRuntimeInitialized)==null||r.call(Module),shouldRunNow&&callMain(e),postRun()))}Module.setStatus?(Module.setStatus("Running..."),setTimeout(()=>{setTimeout(()=>Module.setStatus(""),1),t()},1)):t()}if(Module.preInit)for(typeof Module.preInit=="function"&&(Module.preInit=[Module.preInit]);Module.preInit.length>0;)Module.preInit.pop()();var shouldRunNow=!0;return Module.noInitialRun&&(shouldRunNow=!1),run(),moduleRtn=readyPromise,moduleRtn}})();typeof exports=="object"&&typeof module=="object"?module.exports=DuckDB:typeof define=="function"&&define.amd&&define([],()=>DuckDB)});var Uc=pr(()=>{});var Oc=pr(()=>{});var Rc=pr((OS,va)=>{(function(){"use strict";var o="input is invalid type",e=typeof window=="object",t=e?window:{};t.JS_SHA256_NO_WINDOW&&(e=!1);var r=!e&&typeof self=="object",n=!t.JS_SHA256_NO_NODE_JS&&typeof process=="object"&&process.versions&&process.versions.node;n?t=global:r&&(t=self);var a=!t.JS_SHA256_NO_COMMON_JS&&typeof va=="object"&&va.exports,l=typeof define=="function"&&define.amd,c=!t.JS_SHA256_NO_ARRAY_BUFFER&&typeof ArrayBuffer<"u",u="0123456789abcdef".split(""),_=[-2147483648,8388608,32768,128],d=[24,16,8,0],f=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],p=["hex","array","digest","arrayBuffer"],m=[];(t.JS_SHA256_NO_NODE_JS||!Array.isArray)&&(Array.isArray=function(S){return Object.prototype.toString.call(S)==="[object Array]"}),c&&(t.JS_SHA256_NO_ARRAY_BUFFER_IS_VIEW||!ArrayBuffer.isView)&&(ArrayBuffer.isView=function(S){return typeof S=="object"&&S.buffer&&S.buffer.constructor===ArrayBuffer});var g=function(S,T){return function(E){return new F(T,!0).update(E)[S]()}},h=function(S){var T=g("hex",S);n&&(T=b(T,S)),T.create=function(){return new F(S)},T.update=function(P){return T.create().update(P)};for(var E=0;E>>2]|=S[P]<>>2]|=w<>>2]|=(192|w>>>6)<>>2]|=(128|w&63)<=57344?(D[L>>>2]|=(224|w>>>12)<>>2]|=(128|w>>>6&63)<>>2]|=(128|w&63)<>>2]|=(240|w>>>18)<>>2]|=(128|w>>>12&63)<>>2]|=(128|w>>>6&63)<>>2]|=(128|w&63)<=64?(this.block=D[16],this.start=L-64,this.hash(),this.hashed=!0):this.start=L}return this.bytes>4294967295&&(this.hBytes+=this.bytes/4294967296<<0,this.bytes=this.bytes%4294967296),this}},F.prototype.finalize=function(){if(!this.finalized){this.finalized=!0;var S=this.blocks,T=this.lastByteIndex;S[16]=this.block,S[T>>>2]|=_[T&3],this.block=S[16],T>=56&&(this.hashed||this.hash(),S[0]=this.block,S[16]=S[1]=S[2]=S[3]=S[4]=S[5]=S[6]=S[7]=S[8]=S[9]=S[10]=S[11]=S[12]=S[13]=S[14]=S[15]=0),S[14]=this.hBytes<<3|this.bytes>>>29,S[15]=this.bytes<<3,this.hash()}},F.prototype.hash=function(){var S=this.h0,T=this.h1,E=this.h2,w=this.h3,P=this.h4,L=this.h5,M=this.h6,D=this.h7,I=this.blocks,k,Q,ee,le,Y,ke,Ee,Fe,en,Ir,fr;for(k=16;k<64;++k)Y=I[k-15],Q=(Y>>>7|Y<<25)^(Y>>>18|Y<<14)^Y>>>3,Y=I[k-2],ee=(Y>>>17|Y<<15)^(Y>>>19|Y<<13)^Y>>>10,I[k]=I[k-16]+Q+I[k-7]+ee<<0;for(fr=T&E,k=0;k<64;k+=4)this.first?(this.is224?(Fe=300032,Y=I[0]-1413257819,D=Y-150054599<<0,w=Y+24177077<<0):(Fe=704751109,Y=I[0]-210244248,D=Y-1521486534<<0,w=Y+143694565<<0),this.first=!1):(Q=(S>>>2|S<<30)^(S>>>13|S<<19)^(S>>>22|S<<10),ee=(P>>>6|P<<26)^(P>>>11|P<<21)^(P>>>25|P<<7),Fe=S&T,le=Fe^S&E^fr,Ee=P&L^~P&M,Y=D+ee+Ee+f[k]+I[k],ke=Q+le,D=w+Y<<0,w=Y+ke<<0),Q=(w>>>2|w<<30)^(w>>>13|w<<19)^(w>>>22|w<<10),ee=(D>>>6|D<<26)^(D>>>11|D<<21)^(D>>>25|D<<7),en=w&S,le=en^w&T^Fe,Ee=D&P^~D&L,Y=M+ee+Ee+f[k+1]+I[k+1],ke=Q+le,M=E+Y<<0,E=Y+ke<<0,Q=(E>>>2|E<<30)^(E>>>13|E<<19)^(E>>>22|E<<10),ee=(M>>>6|M<<26)^(M>>>11|M<<21)^(M>>>25|M<<7),Ir=E&w,le=Ir^E&S^en,Ee=M&D^~M&P,Y=L+ee+Ee+f[k+2]+I[k+2],ke=Q+le,L=T+Y<<0,T=Y+ke<<0,Q=(T>>>2|T<<30)^(T>>>13|T<<19)^(T>>>22|T<<10),ee=(L>>>6|L<<26)^(L>>>11|L<<21)^(L>>>25|L<<7),fr=T&E,le=fr^T&w^Ir,Ee=L&M^~L&D,Y=P+ee+Ee+f[k+3]+I[k+3],ke=Q+le,P=S+Y<<0,S=Y+ke<<0,this.chromeBugWorkAround=!0;this.h0=this.h0+S<<0,this.h1=this.h1+T<<0,this.h2=this.h2+E<<0,this.h3=this.h3+w<<0,this.h4=this.h4+P<<0,this.h5=this.h5+L<<0,this.h6=this.h6+M<<0,this.h7=this.h7+D<<0},F.prototype.hex=function(){this.finalize();var S=this.h0,T=this.h1,E=this.h2,w=this.h3,P=this.h4,L=this.h5,M=this.h6,D=this.h7,I=u[S>>>28&15]+u[S>>>24&15]+u[S>>>20&15]+u[S>>>16&15]+u[S>>>12&15]+u[S>>>8&15]+u[S>>>4&15]+u[S&15]+u[T>>>28&15]+u[T>>>24&15]+u[T>>>20&15]+u[T>>>16&15]+u[T>>>12&15]+u[T>>>8&15]+u[T>>>4&15]+u[T&15]+u[E>>>28&15]+u[E>>>24&15]+u[E>>>20&15]+u[E>>>16&15]+u[E>>>12&15]+u[E>>>8&15]+u[E>>>4&15]+u[E&15]+u[w>>>28&15]+u[w>>>24&15]+u[w>>>20&15]+u[w>>>16&15]+u[w>>>12&15]+u[w>>>8&15]+u[w>>>4&15]+u[w&15]+u[P>>>28&15]+u[P>>>24&15]+u[P>>>20&15]+u[P>>>16&15]+u[P>>>12&15]+u[P>>>8&15]+u[P>>>4&15]+u[P&15]+u[L>>>28&15]+u[L>>>24&15]+u[L>>>20&15]+u[L>>>16&15]+u[L>>>12&15]+u[L>>>8&15]+u[L>>>4&15]+u[L&15]+u[M>>>28&15]+u[M>>>24&15]+u[M>>>20&15]+u[M>>>16&15]+u[M>>>12&15]+u[M>>>8&15]+u[M>>>4&15]+u[M&15];return this.is224||(I+=u[D>>>28&15]+u[D>>>24&15]+u[D>>>20&15]+u[D>>>16&15]+u[D>>>12&15]+u[D>>>8&15]+u[D>>>4&15]+u[D&15]),I},F.prototype.toString=F.prototype.hex,F.prototype.digest=function(){this.finalize();var S=this.h0,T=this.h1,E=this.h2,w=this.h3,P=this.h4,L=this.h5,M=this.h6,D=this.h7,I=[S>>>24&255,S>>>16&255,S>>>8&255,S&255,T>>>24&255,T>>>16&255,T>>>8&255,T&255,E>>>24&255,E>>>16&255,E>>>8&255,E&255,w>>>24&255,w>>>16&255,w>>>8&255,w&255,P>>>24&255,P>>>16&255,P>>>8&255,P&255,L>>>24&255,L>>>16&255,L>>>8&255,L&255,M>>>24&255,M>>>16&255,M>>>8&255,M&255];return this.is224||I.push(D>>>24&255,D>>>16&255,D>>>8&255,D&255),I},F.prototype.array=F.prototype.digest,F.prototype.arrayBuffer=function(){this.finalize();var S=new ArrayBuffer(this.is224?28:32),T=new DataView(S);return T.setUint32(0,this.h0),T.setUint32(4,this.h1),T.setUint32(8,this.h2),T.setUint32(12,this.h3),T.setUint32(16,this.h4),T.setUint32(20,this.h5),T.setUint32(24,this.h6),this.is224||T.setUint32(28,this.h7),S};function C(S,T,E){var w,P=typeof S;if(P==="string"){var L=[],M=S.length,D=0,I;for(w=0;w>>6,L[D++]=128|I&63):I<55296||I>=57344?(L[D++]=224|I>>>12,L[D++]=128|I>>>6&63,L[D++]=128|I&63):(I=65536+((I&1023)<<10|S.charCodeAt(++w)&1023),L[D++]=240|I>>>18,L[D++]=128|I>>>12&63,L[D++]=128|I>>>6&63,L[D++]=128|I&63);S=L}else if(P==="object"){if(S===null)throw new Error(o);if(c&&S.constructor===ArrayBuffer)S=new Uint8Array(S);else if(!Array.isArray(S)&&(!c||!ArrayBuffer.isView(S)))throw new Error(o)}else throw new Error(o);S.length>64&&(S=new F(T,!0).update(S).array());var k=[],Q=[];for(w=0;w<64;++w){var ee=S[w]||0;k[w]=92^ee,Q[w]=54^ee}F.call(this,T,E),this.update(Q),this.oKeyPad=k,this.inner=!0,this.sharedMemory=E}C.prototype=new F,C.prototype.finalize=function(){if(F.prototype.finalize.call(this),this.inner){this.inner=!1;var S=this.array();F.call(this,this.is224,this.sharedMemory),this.update(this.oKeyPad),this.update(S),F.prototype.finalize.call(this)}};var x=h();x.sha256=x,x.sha224=h(!0),x.sha256.hmac=A(),x.sha224.hmac=A(!0),a?va.exports=x:(t.sha256=x.sha256,t.sha224=x.sha224,l&&define(function(){return x}))})()});var Fd={};mr(Fd,{registerWorker:()=>zc});function Uo(o,e){var t={};for(var r in o)Object.prototype.hasOwnProperty.call(o,r)&&e.indexOf(r)<0&&(t[r]=o[r]);if(o!=null&&typeof Object.getOwnPropertySymbols=="function")for(var n=0,r=Object.getOwnPropertySymbols(o);n=o.length&&(o=void 0),{value:o&&o[r++],done:!o}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function te(o){return this instanceof te?(this.v=o,this):new te(o)}function Ye(o,e,t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r=t.apply(o,e||[]),n,a=[];return n={},l("next"),l("throw"),l("return"),n[Symbol.asyncIterator]=function(){return this},n;function l(p){r[p]&&(n[p]=function(m){return new Promise(function(g,h){a.push([p,m,g,h])>1||c(p,m)})})}function c(p,m){try{u(r[p](m))}catch(g){f(a[0][3],g)}}function u(p){p.value instanceof te?Promise.resolve(p.value.v).then(_,d):f(a[0][2],p)}function _(p){c("next",p)}function d(p){c("throw",p)}function f(p,m){p(m),a.shift(),a.length&&c(a[0][0],a[0][1])}}function tn(o){var e,t;return e={},r("next"),r("throw",function(n){throw n}),r("return"),e[Symbol.iterator]=function(){return this},e;function r(n,a){e[n]=o[n]?function(l){return(t=!t)?{value:te(o[n](l)),done:!1}:a?a(l):l}:a}}function _t(o){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=o[Symbol.asyncIterator],t;return e?e.call(o):(o=typeof Go=="function"?Go(o):o[Symbol.iterator](),t={},r("next"),r("throw"),r("return"),t[Symbol.asyncIterator]=function(){return this},t);function r(a){t[a]=o[a]&&function(l){return new Promise(function(c,u){l=o[a](l),n(c,u,l.done,l.value)})}}function n(a,l,c,u){Promise.resolve(u).then(function(_){a({value:_,done:c})},l)}}var La={};mr(La,{compareArrayLike:()=>Aa,joinUint8Arrays:()=>Je,memcpy:()=>kn,rebaseValueOffsets:()=>Oi,toArrayBufferView:()=>ne,toArrayBufferViewAsyncIterator:()=>pt,toArrayBufferViewIterator:()=>Ct,toBigInt64Array:()=>Ui,toBigUint64Array:()=>ou,toFloat32Array:()=>lu,toFloat32ArrayAsyncIterator:()=>Au,toFloat32ArrayIterator:()=>gu,toFloat64Array:()=>cu,toFloat64ArrayAsyncIterator:()=>Lu,toFloat64ArrayIterator:()=>hu,toInt16Array:()=>iu,toInt16ArrayAsyncIterator:()=>yu,toInt16ArrayIterator:()=>du,toInt32Array:()=>kr,toInt32ArrayAsyncIterator:()=>Su,toInt32ArrayIterator:()=>fu,toInt8Array:()=>nu,toInt8ArrayAsyncIterator:()=>bu,toInt8ArrayIterator:()=>_u,toUint16Array:()=>su,toUint16ArrayAsyncIterator:()=>Eu,toUint16ArrayIterator:()=>pu,toUint32Array:()=>au,toUint32ArrayAsyncIterator:()=>wu,toUint32ArrayIterator:()=>mu,toUint8Array:()=>j,toUint8ArrayAsyncIterator:()=>wa,toUint8ArrayIterator:()=>Ea,toUint8ClampedArray:()=>uu,toUint8ClampedArrayAsyncIterator:()=>Du,toUint8ClampedArrayIterator:()=>vu});var Zc=new TextDecoder("utf-8"),In=o=>Zc.decode(o),eu=new TextEncoder,Pt=o=>eu.encode(o);var tu=o=>typeof o=="number",Oo=o=>typeof o=="boolean",Pe=o=>typeof o=="function",He=o=>o!=null&&Object(o)===o,dt=o=>He(o)&&Pe(o.then);var ft=o=>He(o)&&Pe(o[Symbol.iterator]),it=o=>He(o)&&Pe(o[Symbol.asyncIterator]),Ci=o=>He(o)&&He(o.schema);var Ii=o=>He(o)&&"done"in o&&"value"in o;var Mi=o=>He(o)&&Pe(o.stat)&&tu(o.fd);var ki=o=>He(o)&&Mn(o.body),Bi=o=>"_getDOMStream"in o&&"_getNodeStream"in o,Ro=o=>He(o)&&Pe(o.abort)&&Pe(o.getWriter)&&!Bi(o),Mn=o=>He(o)&&Pe(o.cancel)&&Pe(o.getReader)&&!Bi(o),Ho=o=>He(o)&&Pe(o.end)&&Pe(o.write)&&Oo(o.writable)&&!Bi(o),Gi=o=>He(o)&&Pe(o.read)&&Pe(o.pipe)&&Oo(o.readable)&&!Bi(o),No=o=>He(o)&&Pe(o.clear)&&Pe(o.bytes)&&Pe(o.position)&&Pe(o.setPosition)&&Pe(o.capacity)&&Pe(o.getBufferIdentifier)&&Pe(o.createLong);var Sa=typeof SharedArrayBuffer<"u"?SharedArrayBuffer:ArrayBuffer;function ru(o){let e=o[0]?[o[0]]:[],t,r,n,a;for(let l,c,u=0,_=0,d=o.length;++ud+f.byteLength,0),n,a,l,c=0,u=-1,_=Math.min(e||Number.POSITIVE_INFINITY,r);for(let d=t.length;++une(Int8Array,o),iu=o=>ne(Int16Array,o),kr=o=>ne(Int32Array,o),Ui=o=>ne(BigInt64Array,o),j=o=>ne(Uint8Array,o),su=o=>ne(Uint16Array,o),au=o=>ne(Uint32Array,o),ou=o=>ne(BigUint64Array,o),lu=o=>ne(Float32Array,o),cu=o=>ne(Float64Array,o),uu=o=>ne(Uint8ClampedArray,o),ya=o=>(o.next(),o);function*Ct(o,e){let t=function*(n){yield n},r=typeof e=="string"||ArrayBuffer.isView(e)||e instanceof ArrayBuffer||e instanceof Sa?t(e):ft(e)?e:t(e);return yield*Mr(ya(function*(n){let a=null;do a=n.next(yield ne(o,a));while(!a.done)}(r[Symbol.iterator]()))),new o}var _u=o=>Ct(Int8Array,o),du=o=>Ct(Int16Array,o),fu=o=>Ct(Int32Array,o),Ea=o=>Ct(Uint8Array,o),pu=o=>Ct(Uint16Array,o),mu=o=>Ct(Uint32Array,o),gu=o=>Ct(Float32Array,o),hu=o=>Ct(Float64Array,o),vu=o=>Ct(Uint8ClampedArray,o);function pt(o,e){return Ye(this,arguments,function*(){if(dt(e))return yield te(yield te(yield*Mr(tn(_t(pt(o,yield te(e)))))));let r=function(l){return Ye(this,arguments,function*(){yield yield te(yield te(l))})},n=function(l){return Ye(this,arguments,function*(){yield te(yield*Mr(tn(_t(ya(function*(c){let u=null;do u=c.next(yield u==null?void 0:u.value);while(!u.done)}(l[Symbol.iterator]()))))))})},a=typeof e=="string"||ArrayBuffer.isView(e)||e instanceof ArrayBuffer||e instanceof Sa?r(e):ft(e)?n(e):it(e)?e:r(e);return yield te(yield*Mr(tn(_t(ya(function(l){return Ye(this,arguments,function*(){let c=null;do c=yield te(l.next(yield yield te(ne(o,c))));while(!c.done)})}(a[Symbol.asyncIterator]())))))),yield te(new o)})}var bu=o=>pt(Int8Array,o),yu=o=>pt(Int16Array,o),Su=o=>pt(Int32Array,o),wa=o=>pt(Uint8Array,o),Eu=o=>pt(Uint16Array,o),wu=o=>pt(Uint32Array,o),Au=o=>pt(Float32Array,o),Lu=o=>pt(Float64Array,o),Du=o=>pt(Uint8ClampedArray,o);function Oi(o,e,t){if(o!==0){t=t.slice(0,e);for(let r=-1,n=t.length;++r0)do if(o[t]!==e[t])return!1;while(++t(o.next(),o);function*Fu(o){let e,t=!1,r=[],n,a,l,c=0;function u(){return a==="peek"?Je(r,l)[0]:([n,r,c]=Je(r,l),n)}({cmd:a,size:l}=(yield null)||{cmd:"read",size:0});let _=Ea(o)[Symbol.iterator]();try{do if({done:e,value:n}=Number.isNaN(l-c)?_.next():_.next(l-c),!e&&n.byteLength>0&&(r.push(n),c+=n.byteLength),e||l<=c)do({cmd:a,size:l}=yield u());while(l0&&(n.push(a),u+=a.byteLength),t||c<=u)do({cmd:l,size:c}=yield yield te(_()));while(c0&&(n.push(j(a)),u+=a.byteLength),t||c<=u)do({cmd:l,size:c}=yield yield te(_()));while(c{})}get closed(){return this.reader?this.reader.closed.catch(()=>{}):Promise.resolve()}releaseLock(){this.reader&&this.reader.releaseLock(),this.reader=null}cancel(e){return B(this,void 0,void 0,function*(){let{reader:t,source:r}=this;t&&(yield t.cancel(e).catch(()=>{})),r&&r.locked&&this.releaseLock()})}read(e){return B(this,void 0,void 0,function*(){if(e===0)return{done:this.reader==null,value:new Uint8Array(0)};let t=yield this.reader.read();return!t.done&&(t.value=j(t)),t})}},Da=(o,e)=>{let t=n=>r([e,n]),r;return[e,t,new Promise(n=>(r=n)&&o.once(e,t))]};function Pu(o){return Ye(this,arguments,function*(){let t=[],r="error",n=!1,a=null,l,c,u=0,_=[],d;function f(){return l==="peek"?Je(_,c)[0]:([d,_,u]=Je(_,c),d)}if({cmd:l,size:c}=(yield yield te(null))||{cmd:"read",size:0},o.isTTY)return yield yield te(new Uint8Array(0)),yield te(null);try{t[0]=Da(o,"end"),t[1]=Da(o,"error");do{if(t[2]=Da(o,"readable"),[r,a]=yield te(Promise.race(t.map(m=>m[2]))),r==="error")break;if((n=r==="end")||(Number.isFinite(c-u)?(d=j(o.read(c-u)),d.byteLength0&&(_.push(d),u+=d.byteLength)),n||c<=u)do({cmd:l,size:c}=yield yield te(f()));while(c{for(let[y,A]of m)o.off(y,A);try{let y=o.destroy;y&&y.call(o,g),g=void 0}catch(y){g=y||g}finally{g!=null?b(g):h()}})}})}var ue;(function(o){o[o.V1=0]="V1",o[o.V2=1]="V2",o[o.V3=2]="V3",o[o.V4=3]="V4",o[o.V5=4]="V5"})(ue||(ue={}));var ge;(function(o){o[o.Sparse=0]="Sparse",o[o.Dense=1]="Dense"})(ge||(ge={}));var pe;(function(o){o[o.HALF=0]="HALF",o[o.SINGLE=1]="SINGLE",o[o.DOUBLE=2]="DOUBLE"})(pe||(pe={}));var Le;(function(o){o[o.DAY=0]="DAY",o[o.MILLISECOND=1]="MILLISECOND"})(Le||(Le={}));var U;(function(o){o[o.SECOND=0]="SECOND",o[o.MILLISECOND=1]="MILLISECOND",o[o.MICROSECOND=2]="MICROSECOND",o[o.NANOSECOND=3]="NANOSECOND"})(U||(U={}));var Ce;(function(o){o[o.YEAR_MONTH=0]="YEAR_MONTH",o[o.DAY_TIME=1]="DAY_TIME",o[o.MONTH_DAY_NANO=2]="MONTH_DAY_NANO"})(Ce||(Ce={}));var It=new Int32Array(2),Hi=new Float32Array(It.buffer),Ni=new Float64Array(It.buffer),rn=new Uint16Array(new Uint8Array([1,0]).buffer)[0]===1;var Bn;(function(o){o[o.UTF8_BYTES=1]="UTF8_BYTES",o[o.UTF16_STRING=2]="UTF16_STRING"})(Bn||(Bn={}));var Ke=class o{constructor(e){this.bytes_=e,this.position_=0,this.text_decoder_=new TextDecoder}static allocate(e){return new o(new Uint8Array(e))}clear(){this.position_=0}bytes(){return this.bytes_}position(){return this.position_}setPosition(e){this.position_=e}capacity(){return this.bytes_.length}readInt8(e){return this.readUint8(e)<<24>>24}readUint8(e){return this.bytes_[e]}readInt16(e){return this.readUint16(e)<<16>>16}readUint16(e){return this.bytes_[e]|this.bytes_[e+1]<<8}readInt32(e){return this.bytes_[e]|this.bytes_[e+1]<<8|this.bytes_[e+2]<<16|this.bytes_[e+3]<<24}readUint32(e){return this.readInt32(e)>>>0}readInt64(e){return BigInt.asIntN(64,BigInt(this.readUint32(e))+(BigInt(this.readUint32(e+4))<>8}writeUint16(e,t){this.bytes_[e]=t,this.bytes_[e+1]=t>>8}writeInt32(e,t){this.bytes_[e]=t,this.bytes_[e+1]=t>>8,this.bytes_[e+2]=t>>16,this.bytes_[e+3]=t>>24}writeUint32(e,t){this.bytes_[e]=t,this.bytes_[e+1]=t>>8,this.bytes_[e+2]=t>>16,this.bytes_[e+3]=t>>24}writeInt64(e,t){this.writeInt32(e,Number(BigInt.asIntN(32,t))),this.writeInt32(e+4,Number(BigInt.asIntN(32,t>>BigInt(32))))}writeUint64(e,t){this.writeUint32(e,Number(BigInt.asUintN(32,t))),this.writeUint32(e+4,Number(BigInt.asUintN(32,t>>BigInt(32))))}writeFloat32(e,t){Hi[0]=t,this.writeInt32(e,It[0])}writeFloat64(e,t){Ni[0]=t,this.writeInt32(e,It[rn?0:1]),this.writeInt32(e+4,It[rn?1:0])}getBufferIdentifier(){if(this.bytes_.lengththis.minalign&&(this.minalign=e);let r=~(this.bb.capacity()-this.space+t)+1&e-1;for(;this.space=0&&this.vtable[t]==0;t--);let r=t+1;for(;t>=0;t--)this.addInt16(this.vtable[t]!=0?e-this.vtable[t]:0);let n=2;this.addInt16(e-this.object_start);let a=(r+n)*2;this.addInt16(a);let l=0,c=this.space;e:for(t=0;t=0;l--)this.writeInt8(a.charCodeAt(l))}this.prep(this.minalign,4+n),this.addOffset(e),n&&this.addInt32(this.bb.capacity()-this.space),this.bb.setPosition(this.space)}finishSizePrefixed(e,t){this.finish(e,t,!0)}requiredField(e,t){let r=this.bb.capacity()-e,n=r-this.bb.readInt32(r);if(!(t=0;r--)e.addInt32(t[r]);return e.endVector()}static startTypeIdsVector(e,t){e.startVector(4,t,4)}static endUnion(e){return e.endObject()}static createUnion(e,t,r){return o.startUnion(e),o.addMode(e,t),o.addTypeIds(e,r),o.endUnion(e)}};var $n=class o{constructor(){this.bb=null,this.bb_pos=0}__init(e,t){return this.bb_pos=e,this.bb=t,this}static getRootAsUtf8(e,t){return(t||new o).__init(e.readInt32(e.position())+e.position(),e)}static getSizePrefixedRootAsUtf8(e,t){return e.setPosition(e.position()+4),(t||new o).__init(e.readInt32(e.position())+e.position(),e)}static startUtf8(e){e.startObject(0)}static endUtf8(e){return e.endObject()}static createUtf8(e){return o.startUtf8(e),o.endUtf8(e)}};var he;(function(o){o[o.NONE=0]="NONE",o[o.Null=1]="Null",o[o.Int=2]="Int",o[o.FloatingPoint=3]="FloatingPoint",o[o.Binary=4]="Binary",o[o.Utf8=5]="Utf8",o[o.Bool=6]="Bool",o[o.Decimal=7]="Decimal",o[o.Date=8]="Date",o[o.Time=9]="Time",o[o.Timestamp=10]="Timestamp",o[o.Interval=11]="Interval",o[o.List=12]="List",o[o.Struct_=13]="Struct_",o[o.Union=14]="Union",o[o.FixedSizeBinary=15]="FixedSizeBinary",o[o.FixedSizeList=16]="FixedSizeList",o[o.Map=17]="Map",o[o.Duration=18]="Duration",o[o.LargeBinary=19]="LargeBinary",o[o.LargeUtf8=20]="LargeUtf8",o[o.LargeList=21]="LargeList",o[o.RunEndEncoded=22]="RunEndEncoded"})(he||(he={}));var Re=class o{constructor(){this.bb=null,this.bb_pos=0}__init(e,t){return this.bb_pos=e,this.bb=t,this}static getRootAsField(e,t){return(t||new o).__init(e.readInt32(e.position())+e.position(),e)}static getSizePrefixedRootAsField(e,t){return e.setPosition(e.position()+4),(t||new o).__init(e.readInt32(e.position())+e.position(),e)}name(e){let t=this.bb.__offset(this.bb_pos,4);return t?this.bb.__string(this.bb_pos+t,e):null}nullable(){let e=this.bb.__offset(this.bb_pos,6);return e?!!this.bb.readInt8(this.bb_pos+e):!1}typeType(){let e=this.bb.__offset(this.bb_pos,8);return e?this.bb.readUint8(this.bb_pos+e):he.NONE}type(e){let t=this.bb.__offset(this.bb_pos,10);return t?this.bb.__union(e,this.bb_pos+t):null}dictionary(e){let t=this.bb.__offset(this.bb_pos,12);return t?(e||new Mt).__init(this.bb.__indirect(this.bb_pos+t),this.bb):null}children(e,t){let r=this.bb.__offset(this.bb_pos,14);return r?(t||new o).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+r)+e*4),this.bb):null}childrenLength(){let e=this.bb.__offset(this.bb_pos,14);return e?this.bb.__vector_len(this.bb_pos+e):0}customMetadata(e,t){let r=this.bb.__offset(this.bb_pos,16);return r?(t||new Ie).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+r)+e*4),this.bb):null}customMetadataLength(){let e=this.bb.__offset(this.bb_pos,16);return e?this.bb.__vector_len(this.bb_pos+e):0}static startField(e){e.startObject(7)}static addName(e,t){e.addFieldOffset(0,t,0)}static addNullable(e,t){e.addFieldInt8(1,+t,0)}static addTypeType(e,t){e.addFieldInt8(2,t,he.NONE)}static addType(e,t){e.addFieldOffset(3,t,0)}static addDictionary(e,t){e.addFieldOffset(4,t,0)}static addChildren(e,t){e.addFieldOffset(5,t,0)}static createChildrenVector(e,t){e.startVector(4,t.length,4);for(let r=t.length-1;r>=0;r--)e.addOffset(t[r]);return e.endVector()}static startChildrenVector(e,t){e.startVector(4,t,4)}static addCustomMetadata(e,t){e.addFieldOffset(6,t,0)}static createCustomMetadataVector(e,t){e.startVector(4,t.length,4);for(let r=t.length-1;r>=0;r--)e.addOffset(t[r]);return e.endVector()}static startCustomMetadataVector(e,t){e.startVector(4,t,4)}static endField(e){return e.endObject()}};var ze=class o{constructor(){this.bb=null,this.bb_pos=0}__init(e,t){return this.bb_pos=e,this.bb=t,this}static getRootAsSchema(e,t){return(t||new o).__init(e.readInt32(e.position())+e.position(),e)}static getSizePrefixedRootAsSchema(e,t){return e.setPosition(e.position()+4),(t||new o).__init(e.readInt32(e.position())+e.position(),e)}endianness(){let e=this.bb.__offset(this.bb_pos,4);return e?this.bb.readInt16(this.bb_pos+e):gr.Little}fields(e,t){let r=this.bb.__offset(this.bb_pos,6);return r?(t||new Re).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+r)+e*4),this.bb):null}fieldsLength(){let e=this.bb.__offset(this.bb_pos,6);return e?this.bb.__vector_len(this.bb_pos+e):0}customMetadata(e,t){let r=this.bb.__offset(this.bb_pos,8);return r?(t||new Ie).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+r)+e*4),this.bb):null}customMetadataLength(){let e=this.bb.__offset(this.bb_pos,8);return e?this.bb.__vector_len(this.bb_pos+e):0}features(e){let t=this.bb.__offset(this.bb_pos,10);return t?this.bb.readInt64(this.bb.__vector(this.bb_pos+t)+e*8):BigInt(0)}featuresLength(){let e=this.bb.__offset(this.bb_pos,10);return e?this.bb.__vector_len(this.bb_pos+e):0}static startSchema(e){e.startObject(4)}static addEndianness(e,t){e.addFieldInt16(0,t,gr.Little)}static addFields(e,t){e.addFieldOffset(1,t,0)}static createFieldsVector(e,t){e.startVector(4,t.length,4);for(let r=t.length-1;r>=0;r--)e.addOffset(t[r]);return e.endVector()}static startFieldsVector(e,t){e.startVector(4,t,4)}static addCustomMetadata(e,t){e.addFieldOffset(2,t,0)}static createCustomMetadataVector(e,t){e.startVector(4,t.length,4);for(let r=t.length-1;r>=0;r--)e.addOffset(t[r]);return e.endVector()}static startCustomMetadataVector(e,t){e.startVector(4,t,4)}static addFeatures(e,t){e.addFieldOffset(3,t,0)}static createFeaturesVector(e,t){e.startVector(8,t.length,8);for(let r=t.length-1;r>=0;r--)e.addInt64(t[r]);return e.endVector()}static startFeaturesVector(e,t){e.startVector(8,t,8)}static endSchema(e){return e.endObject()}static finishSchemaBuffer(e,t){e.finish(t)}static finishSizePrefixedSchemaBuffer(e,t){e.finish(t,void 0,!0)}static createSchema(e,t,r,n,a){return o.startSchema(e),o.addEndianness(e,t),o.addFields(e,r),o.addCustomMetadata(e,n),o.addFeatures(e,a),o.endSchema(e)}};var se;(function(o){o[o.NONE=0]="NONE",o[o.Schema=1]="Schema",o[o.DictionaryBatch=2]="DictionaryBatch",o[o.RecordBatch=3]="RecordBatch",o[o.Tensor=4]="Tensor",o[o.SparseTensor=5]="SparseTensor"})(se||(se={}));var v;(function(o){o[o.NONE=0]="NONE",o[o.Null=1]="Null",o[o.Int=2]="Int",o[o.Float=3]="Float",o[o.Binary=4]="Binary",o[o.Utf8=5]="Utf8",o[o.Bool=6]="Bool",o[o.Decimal=7]="Decimal",o[o.Date=8]="Date",o[o.Time=9]="Time",o[o.Timestamp=10]="Timestamp",o[o.Interval=11]="Interval",o[o.List=12]="List",o[o.Struct=13]="Struct",o[o.Union=14]="Union",o[o.FixedSizeBinary=15]="FixedSizeBinary",o[o.FixedSizeList=16]="FixedSizeList",o[o.Map=17]="Map",o[o.Duration=18]="Duration",o[o.LargeBinary=19]="LargeBinary",o[o.LargeUtf8=20]="LargeUtf8",o[o.Dictionary=-1]="Dictionary",o[o.Int8=-2]="Int8",o[o.Int16=-3]="Int16",o[o.Int32=-4]="Int32",o[o.Int64=-5]="Int64",o[o.Uint8=-6]="Uint8",o[o.Uint16=-7]="Uint16",o[o.Uint32=-8]="Uint32",o[o.Uint64=-9]="Uint64",o[o.Float16=-10]="Float16",o[o.Float32=-11]="Float32",o[o.Float64=-12]="Float64",o[o.DateDay=-13]="DateDay",o[o.DateMillisecond=-14]="DateMillisecond",o[o.TimestampSecond=-15]="TimestampSecond",o[o.TimestampMillisecond=-16]="TimestampMillisecond",o[o.TimestampMicrosecond=-17]="TimestampMicrosecond",o[o.TimestampNanosecond=-18]="TimestampNanosecond",o[o.TimeSecond=-19]="TimeSecond",o[o.TimeMillisecond=-20]="TimeMillisecond",o[o.TimeMicrosecond=-21]="TimeMicrosecond",o[o.TimeNanosecond=-22]="TimeNanosecond",o[o.DenseUnion=-23]="DenseUnion",o[o.SparseUnion=-24]="SparseUnion",o[o.IntervalDayTime=-25]="IntervalDayTime",o[o.IntervalYearMonth=-26]="IntervalYearMonth",o[o.DurationSecond=-27]="DurationSecond",o[o.DurationMillisecond=-28]="DurationMillisecond",o[o.DurationMicrosecond=-29]="DurationMicrosecond",o[o.DurationNanosecond=-30]="DurationNanosecond"})(v||(v={}));var at;(function(o){o[o.OFFSET=0]="OFFSET",o[o.DATA=1]="DATA",o[o.VALIDITY=2]="VALIDITY",o[o.TYPE=3]="TYPE"})(at||(at={}));var qa={};mr(qa,{clampRange:()=>Yn,createElementComparator:()=>Fr,wrapIndex:()=>Gr});var Ta={};mr(Ta,{valueToString:()=>vt});function vt(o){if(o===null)return"null";if(o===void 0)return"undefined";switch(typeof o){case"number":return"".concat(o);case"bigint":return"".concat(o);case"string":return'"'.concat(o,'"')}return typeof o[Symbol.toPrimitive]=="function"?o[Symbol.toPrimitive]("string"):ArrayBuffer.isView(o)?o instanceof BigInt64Array||o instanceof BigUint64Array?"[".concat([...o].map(e=>vt(e)),"]"):"[".concat(o,"]"):ArrayBuffer.isView(o)?"[".concat(o,"]"):JSON.stringify(o,(e,t)=>typeof t=="bigint"?"".concat(t):t)}var Ia={};mr(Ia,{BN:()=>Xn,bigNumToBigInt:()=>Vo,bigNumToNumber:()=>Ca,bigNumToString:()=>ln,isArrowBigNumSymbol:()=>Wo});function oe(o){if(typeof o=="bigint"&&(oNumber.MAX_SAFE_INTEGER))throw new TypeError("".concat(o," is not safe to convert to a number."));return Number(o)}function xa(o,e){return oe(o/e)+oe(o%e)/oe(e)}var Wo=Symbol.for("isArrowBigNum");function bt(o,...e){return e.length===0?Object.setPrototypeOf(ne(this.TypedArray,o),this.constructor.prototype):Object.setPrototypeOf(new this.TypedArray(o,...e),this.constructor.prototype)}bt.prototype[Wo]=!0;bt.prototype.toJSON=function(){return'"'.concat(ln(this),'"')};bt.prototype.valueOf=function(o){return Ca(this,o)};bt.prototype.toString=function(){return ln(this)};bt.prototype[Symbol.toPrimitive]=function(o="default"){switch(o){case"number":return Ca(this);case"string":return ln(this);case"default":return Vo(this)}return ln(this)};function an(...o){return bt.apply(this,o)}function on(...o){return bt.apply(this,o)}function qn(...o){return bt.apply(this,o)}Object.setPrototypeOf(an.prototype,Object.create(Int32Array.prototype));Object.setPrototypeOf(on.prototype,Object.create(Uint32Array.prototype));Object.setPrototypeOf(qn.prototype,Object.create(Uint32Array.prototype));Object.assign(an.prototype,bt.prototype,{constructor:an,signed:!0,TypedArray:Int32Array,BigIntArray:BigInt64Array});Object.assign(on.prototype,bt.prototype,{constructor:on,signed:!1,TypedArray:Uint32Array,BigIntArray:BigUint64Array});Object.assign(qn.prototype,bt.prototype,{constructor:qn,signed:!0,TypedArray:Uint32Array,BigIntArray:BigUint64Array});var Cu=BigInt(4294967296)*BigInt(4294967296),Iu=Cu-BigInt(1);function Ca(o,e){let{buffer:t,byteOffset:r,byteLength:n,signed:a}=o,l=new BigUint64Array(t,r,n/8),c=a&&l.at(-1)&BigInt(1)<=0)return Pa(o);e=e.slice();let r=1;for(let a=0;a(o.children=null,o.ArrayType=Array,o.OffsetArrayType=Int32Array,o[Symbol.toStringTag]="DataType"))(G.prototype);var Ne=class extends G{constructor(){super(v.Null)}toString(){return"Null"}};jo=Symbol.toStringTag;Ne[jo]=(o=>o[Symbol.toStringTag]="Null")(Ne.prototype);var Me=class extends G{constructor(e,t){super(v.Int),this.isSigned=e,this.bitWidth=t}get ArrayType(){switch(this.bitWidth){case 8:return this.isSigned?Int8Array:Uint8Array;case 16:return this.isSigned?Int16Array:Uint16Array;case 32:return this.isSigned?Int32Array:Uint32Array;case 64:return this.isSigned?BigInt64Array:BigUint64Array}throw new Error("Unrecognized ".concat(this[Symbol.toStringTag]," type"))}toString(){return"".concat(this.isSigned?"I":"Ui","nt").concat(this.bitWidth)}};$o=Symbol.toStringTag;Me[$o]=(o=>(o.isSigned=null,o.bitWidth=null,o[Symbol.toStringTag]="Int"))(Me.prototype);var zi=class extends Me{constructor(){super(!0,8)}get ArrayType(){return Int8Array}},ji=class extends Me{constructor(){super(!0,16)}get ArrayType(){return Int16Array}},Bt=class extends Me{constructor(){super(!0,32)}get ArrayType(){return Int32Array}},$i=class extends Me{constructor(){super(!0,64)}get ArrayType(){return BigInt64Array}},qi=class extends Me{constructor(){super(!1,8)}get ArrayType(){return Uint8Array}},Xi=class extends Me{constructor(){super(!1,16)}get ArrayType(){return Uint16Array}},Qi=class extends Me{constructor(){super(!1,32)}get ArrayType(){return Uint32Array}},Yi=class extends Me{constructor(){super(!1,64)}get ArrayType(){return BigUint64Array}};Object.defineProperty(zi.prototype,"ArrayType",{value:Int8Array});Object.defineProperty(ji.prototype,"ArrayType",{value:Int16Array});Object.defineProperty(Bt.prototype,"ArrayType",{value:Int32Array});Object.defineProperty($i.prototype,"ArrayType",{value:BigInt64Array});Object.defineProperty(qi.prototype,"ArrayType",{value:Uint8Array});Object.defineProperty(Xi.prototype,"ArrayType",{value:Uint16Array});Object.defineProperty(Qi.prototype,"ArrayType",{value:Uint32Array});Object.defineProperty(Yi.prototype,"ArrayType",{value:BigUint64Array});var ot=class extends G{constructor(e){super(v.Float),this.precision=e}get ArrayType(){switch(this.precision){case pe.HALF:return Uint16Array;case pe.SINGLE:return Float32Array;case pe.DOUBLE:return Float64Array}throw new Error("Unrecognized ".concat(this[Symbol.toStringTag]," type"))}toString(){return"Float".concat(this.precision<<5||16)}};qo=Symbol.toStringTag;ot[qo]=(o=>(o.precision=null,o[Symbol.toStringTag]="Float"))(ot.prototype);var Ji=class extends ot{constructor(){super(pe.HALF)}},Ki=class extends ot{constructor(){super(pe.SINGLE)}},Zi=class extends ot{constructor(){super(pe.DOUBLE)}};Object.defineProperty(Ji.prototype,"ArrayType",{value:Uint16Array});Object.defineProperty(Ki.prototype,"ArrayType",{value:Float32Array});Object.defineProperty(Zi.prototype,"ArrayType",{value:Float64Array});var zt=class extends G{constructor(){super(v.Binary)}toString(){return"Binary"}};Xo=Symbol.toStringTag;zt[Xo]=(o=>(o.ArrayType=Uint8Array,o[Symbol.toStringTag]="Binary"))(zt.prototype);var jt=class extends G{constructor(){super(v.LargeBinary)}toString(){return"LargeBinary"}};Qo=Symbol.toStringTag;jt[Qo]=(o=>(o.ArrayType=Uint8Array,o.OffsetArrayType=BigInt64Array,o[Symbol.toStringTag]="LargeBinary"))(jt.prototype);var $t=class extends G{constructor(){super(v.Utf8)}toString(){return"Utf8"}};Yo=Symbol.toStringTag;$t[Yo]=(o=>(o.ArrayType=Uint8Array,o[Symbol.toStringTag]="Utf8"))($t.prototype);var qt=class extends G{constructor(){super(v.LargeUtf8)}toString(){return"LargeUtf8"}};Jo=Symbol.toStringTag;qt[Jo]=(o=>(o.ArrayType=Uint8Array,o.OffsetArrayType=BigInt64Array,o[Symbol.toStringTag]="LargeUtf8"))(qt.prototype);var Xt=class extends G{constructor(){super(v.Bool)}toString(){return"Bool"}};Ko=Symbol.toStringTag;Xt[Ko]=(o=>(o.ArrayType=Uint8Array,o[Symbol.toStringTag]="Bool"))(Xt.prototype);var Qt=class extends G{constructor(e,t,r=128){super(v.Decimal),this.scale=e,this.precision=t,this.bitWidth=r}toString(){return"Decimal[".concat(this.precision,"e").concat(this.scale>0?"+":"").concat(this.scale,"]")}};Zo=Symbol.toStringTag;Qt[Zo]=(o=>(o.scale=null,o.precision=null,o.ArrayType=Uint32Array,o[Symbol.toStringTag]="Decimal"))(Qt.prototype);var Yt=class extends G{constructor(e){super(v.Date),this.unit=e}toString(){return"Date".concat((this.unit+1)*32,"<").concat(Le[this.unit],">")}get ArrayType(){return this.unit===Le.DAY?Int32Array:BigInt64Array}};el=Symbol.toStringTag;Yt[el]=(o=>(o.unit=null,o[Symbol.toStringTag]="Date"))(Yt.prototype);var Jt=class extends G{constructor(e,t){super(v.Time),this.unit=e,this.bitWidth=t}toString(){return"Time".concat(this.bitWidth,"<").concat(U[this.unit],">")}get ArrayType(){switch(this.bitWidth){case 32:return Int32Array;case 64:return BigInt64Array}throw new Error("Unrecognized ".concat(this[Symbol.toStringTag]," type"))}};tl=Symbol.toStringTag;Jt[tl]=(o=>(o.unit=null,o.bitWidth=null,o[Symbol.toStringTag]="Time"))(Jt.prototype);var Kt=class extends G{constructor(e,t){super(v.Timestamp),this.unit=e,this.timezone=t}toString(){return"Timestamp<".concat(U[this.unit]).concat(this.timezone?", ".concat(this.timezone):"",">")}};rl=Symbol.toStringTag;Kt[rl]=(o=>(o.unit=null,o.timezone=null,o.ArrayType=BigInt64Array,o[Symbol.toStringTag]="Timestamp"))(Kt.prototype);var Zt=class extends G{constructor(e){super(v.Interval),this.unit=e}toString(){return"Interval<".concat(Ce[this.unit],">")}};nl=Symbol.toStringTag;Zt[nl]=(o=>(o.unit=null,o.ArrayType=Int32Array,o[Symbol.toStringTag]="Interval"))(Zt.prototype);var er=class extends G{constructor(e){super(v.Duration),this.unit=e}toString(){return"Duration<".concat(U[this.unit],">")}};il=Symbol.toStringTag;er[il]=(o=>(o.unit=null,o.ArrayType=BigInt64Array,o[Symbol.toStringTag]="Duration"))(er.prototype);var yt=class extends G{constructor(e){super(v.List),this.children=[e]}toString(){return"List<".concat(this.valueType,">")}get valueType(){return this.children[0].type}get valueField(){return this.children[0]}get ArrayType(){return this.valueType.ArrayType}};sl=Symbol.toStringTag;yt[sl]=(o=>(o.children=null,o[Symbol.toStringTag]="List"))(yt.prototype);var ve=class extends G{constructor(e){super(v.Struct),this.children=e}toString(){return"Struct<{".concat(this.children.map(e=>"".concat(e.name,":").concat(e.type)).join(", "),"}>")}};al=Symbol.toStringTag;ve[al]=(o=>(o.children=null,o[Symbol.toStringTag]="Struct"))(ve.prototype);var St=class extends G{constructor(e,t,r){super(v.Union),this.mode=e,this.children=r,this.typeIds=t=Int32Array.from(t),this.typeIdToChildIndex=t.reduce((n,a,l)=>(n[a]=l)&&n||n,Object.create(null))}toString(){return"".concat(this[Symbol.toStringTag],"<").concat(this.children.map(e=>"".concat(e.type)).join(" | "),">")}};ol=Symbol.toStringTag;St[ol]=(o=>(o.mode=null,o.typeIds=null,o.children=null,o.typeIdToChildIndex=null,o.ArrayType=Int8Array,o[Symbol.toStringTag]="Union"))(St.prototype);var tr=class extends G{constructor(e){super(v.FixedSizeBinary),this.byteWidth=e}toString(){return"FixedSizeBinary[".concat(this.byteWidth,"]")}};ll=Symbol.toStringTag;tr[ll]=(o=>(o.byteWidth=null,o.ArrayType=Uint8Array,o[Symbol.toStringTag]="FixedSizeBinary"))(tr.prototype);var Et=class extends G{constructor(e,t){super(v.FixedSizeList),this.listSize=e,this.children=[t]}get valueType(){return this.children[0].type}get valueField(){return this.children[0]}get ArrayType(){return this.valueType.ArrayType}toString(){return"FixedSizeList[".concat(this.listSize,"]<").concat(this.valueType,">")}};cl=Symbol.toStringTag;Et[cl]=(o=>(o.children=null,o.listSize=null,o[Symbol.toStringTag]="FixedSizeList"))(Et.prototype);var wt=class extends G{constructor(e,t=!1){var r,n,a;if(super(v.Map),this.children=[e],this.keysSorted=t,e&&(e.name="entries",!((r=e==null?void 0:e.type)===null||r===void 0)&&r.children)){let l=(n=e==null?void 0:e.type)===null||n===void 0?void 0:n.children[0];l&&(l.name="key");let c=(a=e==null?void 0:e.type)===null||a===void 0?void 0:a.children[1];c&&(c.name="value")}}get keyType(){return this.children[0].type.children[0].type}get valueType(){return this.children[0].type.children[1].type}get childType(){return this.children[0].type}toString(){return"Map<{".concat(this.children[0].type.children.map(e=>"".concat(e.name,":").concat(e.type)).join(", "),"}>")}};ul=Symbol.toStringTag;wt[ul]=(o=>(o.children=null,o.keysSorted=null,o[Symbol.toStringTag]="Map_"))(wt.prototype);var Mu=(o=>()=>++o)(-1),et=class extends G{constructor(e,t,r,n){super(v.Dictionary),this.indices=t,this.dictionary=e,this.isOrdered=n||!1,this.id=r==null?Mu():oe(r)}get children(){return this.dictionary.children}get valueType(){return this.dictionary}get ArrayType(){return this.dictionary.ArrayType}toString(){return"Dictionary<".concat(this.indices,", ").concat(this.dictionary,">")}};_l=Symbol.toStringTag;et[_l]=(o=>(o.id=null,o.indices=null,o.isOrdered=null,o.dictionary=null,o[Symbol.toStringTag]="Dictionary"))(et.prototype);function tt(o){let e=o;switch(o.typeId){case v.Decimal:return o.bitWidth/32;case v.Interval:return 1+e.unit;case v.FixedSizeList:return e.listSize;case v.FixedSizeBinary:return e.byteWidth;default:return 1}}var R=class{visitMany(e,...t){return e.map((r,n)=>this.visit(r,...t.map(a=>a[n])))}visit(...e){return this.getVisitFn(e[0],!1).apply(this,e)}getVisitFn(e,t=!0){return ku(this,e,t)}getVisitFnByTypeId(e,t=!0){return cn(this,e,t)}visitNull(e,...t){return null}visitBool(e,...t){return null}visitInt(e,...t){return null}visitFloat(e,...t){return null}visitUtf8(e,...t){return null}visitLargeUtf8(e,...t){return null}visitBinary(e,...t){return null}visitLargeBinary(e,...t){return null}visitFixedSizeBinary(e,...t){return null}visitDate(e,...t){return null}visitTimestamp(e,...t){return null}visitTime(e,...t){return null}visitDecimal(e,...t){return null}visitList(e,...t){return null}visitStruct(e,...t){return null}visitUnion(e,...t){return null}visitDictionary(e,...t){return null}visitInterval(e,...t){return null}visitDuration(e,...t){return null}visitFixedSizeList(e,...t){return null}visitMap(e,...t){return null}};function ku(o,e,t=!0){return typeof e=="number"?cn(o,e,t):typeof e=="string"&&e in v?cn(o,v[e],t):e&&e instanceof G?cn(o,dl(e),t):e!=null&&e.type&&e.type instanceof G?cn(o,dl(e.type),t):cn(o,v.NONE,t)}function cn(o,e,t=!0){let r=null;switch(e){case v.Null:r=o.visitNull;break;case v.Bool:r=o.visitBool;break;case v.Int:r=o.visitInt;break;case v.Int8:r=o.visitInt8||o.visitInt;break;case v.Int16:r=o.visitInt16||o.visitInt;break;case v.Int32:r=o.visitInt32||o.visitInt;break;case v.Int64:r=o.visitInt64||o.visitInt;break;case v.Uint8:r=o.visitUint8||o.visitInt;break;case v.Uint16:r=o.visitUint16||o.visitInt;break;case v.Uint32:r=o.visitUint32||o.visitInt;break;case v.Uint64:r=o.visitUint64||o.visitInt;break;case v.Float:r=o.visitFloat;break;case v.Float16:r=o.visitFloat16||o.visitFloat;break;case v.Float32:r=o.visitFloat32||o.visitFloat;break;case v.Float64:r=o.visitFloat64||o.visitFloat;break;case v.Utf8:r=o.visitUtf8;break;case v.LargeUtf8:r=o.visitLargeUtf8;break;case v.Binary:r=o.visitBinary;break;case v.LargeBinary:r=o.visitLargeBinary;break;case v.FixedSizeBinary:r=o.visitFixedSizeBinary;break;case v.Date:r=o.visitDate;break;case v.DateDay:r=o.visitDateDay||o.visitDate;break;case v.DateMillisecond:r=o.visitDateMillisecond||o.visitDate;break;case v.Timestamp:r=o.visitTimestamp;break;case v.TimestampSecond:r=o.visitTimestampSecond||o.visitTimestamp;break;case v.TimestampMillisecond:r=o.visitTimestampMillisecond||o.visitTimestamp;break;case v.TimestampMicrosecond:r=o.visitTimestampMicrosecond||o.visitTimestamp;break;case v.TimestampNanosecond:r=o.visitTimestampNanosecond||o.visitTimestamp;break;case v.Time:r=o.visitTime;break;case v.TimeSecond:r=o.visitTimeSecond||o.visitTime;break;case v.TimeMillisecond:r=o.visitTimeMillisecond||o.visitTime;break;case v.TimeMicrosecond:r=o.visitTimeMicrosecond||o.visitTime;break;case v.TimeNanosecond:r=o.visitTimeNanosecond||o.visitTime;break;case v.Decimal:r=o.visitDecimal;break;case v.List:r=o.visitList;break;case v.Struct:r=o.visitStruct;break;case v.Union:r=o.visitUnion;break;case v.DenseUnion:r=o.visitDenseUnion||o.visitUnion;break;case v.SparseUnion:r=o.visitSparseUnion||o.visitUnion;break;case v.Dictionary:r=o.visitDictionary;break;case v.Interval:r=o.visitInterval;break;case v.IntervalDayTime:r=o.visitIntervalDayTime||o.visitInterval;break;case v.IntervalYearMonth:r=o.visitIntervalYearMonth||o.visitInterval;break;case v.Duration:r=o.visitDuration;break;case v.DurationSecond:r=o.visitDurationSecond||o.visitDuration;break;case v.DurationMillisecond:r=o.visitDurationMillisecond||o.visitDuration;break;case v.DurationMicrosecond:r=o.visitDurationMicrosecond||o.visitDuration;break;case v.DurationNanosecond:r=o.visitDurationNanosecond||o.visitDuration;break;case v.FixedSizeList:r=o.visitFixedSizeList;break;case v.Map:r=o.visitMap;break}if(typeof r=="function")return r;if(!t)return()=>null;throw new Error("Unrecognized type '".concat(v[e],"'"))}function dl(o){switch(o.typeId){case v.Null:return v.Null;case v.Int:{let{bitWidth:e,isSigned:t}=o;switch(e){case 8:return t?v.Int8:v.Uint8;case 16:return t?v.Int16:v.Uint16;case 32:return t?v.Int32:v.Uint32;case 64:return t?v.Int64:v.Uint64}return v.Int}case v.Float:switch(o.precision){case pe.HALF:return v.Float16;case pe.SINGLE:return v.Float32;case pe.DOUBLE:return v.Float64}return v.Float;case v.Binary:return v.Binary;case v.LargeBinary:return v.LargeBinary;case v.Utf8:return v.Utf8;case v.LargeUtf8:return v.LargeUtf8;case v.Bool:return v.Bool;case v.Decimal:return v.Decimal;case v.Time:switch(o.unit){case U.SECOND:return v.TimeSecond;case U.MILLISECOND:return v.TimeMillisecond;case U.MICROSECOND:return v.TimeMicrosecond;case U.NANOSECOND:return v.TimeNanosecond}return v.Time;case v.Timestamp:switch(o.unit){case U.SECOND:return v.TimestampSecond;case U.MILLISECOND:return v.TimestampMillisecond;case U.MICROSECOND:return v.TimestampMicrosecond;case U.NANOSECOND:return v.TimestampNanosecond}return v.Timestamp;case v.Date:switch(o.unit){case Le.DAY:return v.DateDay;case Le.MILLISECOND:return v.DateMillisecond}return v.Date;case v.Interval:switch(o.unit){case Ce.DAY_TIME:return v.IntervalDayTime;case Ce.YEAR_MONTH:return v.IntervalYearMonth}return v.Interval;case v.Duration:switch(o.unit){case U.SECOND:return v.DurationSecond;case U.MILLISECOND:return v.DurationMillisecond;case U.MICROSECOND:return v.DurationMicrosecond;case U.NANOSECOND:return v.DurationNanosecond}return v.Duration;case v.Map:return v.Map;case v.List:return v.List;case v.Struct:return v.Struct;case v.Union:switch(o.mode){case ge.Dense:return v.DenseUnion;case ge.Sparse:return v.SparseUnion}return v.Union;case v.FixedSizeBinary:return v.FixedSizeBinary;case v.FixedSizeList:return v.FixedSizeList;case v.Dictionary:return v.Dictionary}throw new Error("Unrecognized type '".concat(v[o.typeId],"'"))}R.prototype.visitInt8=null;R.prototype.visitInt16=null;R.prototype.visitInt32=null;R.prototype.visitInt64=null;R.prototype.visitUint8=null;R.prototype.visitUint16=null;R.prototype.visitUint32=null;R.prototype.visitUint64=null;R.prototype.visitFloat16=null;R.prototype.visitFloat32=null;R.prototype.visitFloat64=null;R.prototype.visitDateDay=null;R.prototype.visitDateMillisecond=null;R.prototype.visitTimestampSecond=null;R.prototype.visitTimestampMillisecond=null;R.prototype.visitTimestampMicrosecond=null;R.prototype.visitTimestampNanosecond=null;R.prototype.visitTimeSecond=null;R.prototype.visitTimeMillisecond=null;R.prototype.visitTimeMicrosecond=null;R.prototype.visitTimeNanosecond=null;R.prototype.visitDenseUnion=null;R.prototype.visitSparseUnion=null;R.prototype.visitIntervalDayTime=null;R.prototype.visitIntervalYearMonth=null;R.prototype.visitDuration=null;R.prototype.visitDurationSecond=null;R.prototype.visitDurationMillisecond=null;R.prototype.visitDurationMicrosecond=null;R.prototype.visitDurationNanosecond=null;var Ma={};mr(Ma,{float64ToUint16:()=>Qn,uint16ToFloat64:()=>es});var fl=new Float64Array(1),un=new Uint32Array(fl.buffer);function es(o){let e=(o&31744)>>10,t=(o&1023)/1024,r=Math.pow(-1,(o&32768)>>15);switch(e){case 31:return r*(t?Number.NaN:1/0);case 0:return r*(t?6103515625e-14*t:0)}return r*Math.pow(2,e-15)*(1+t)}function Qn(o){if(o!==o)return 32256;fl[0]=o;let e=(un[1]&2147483648)>>16&65535,t=un[1]&2146435072,r=0;return t>=1089470464?un[0]>0?t=31744:(t=(t&2080374784)>>16,r=(un[1]&1048575)>>10):t<=1056964608?(r=1048576+(un[1]&1048575),r=1048576+(r<<(t>>20)-998)>>21,t=0):(t=t-1056964608>>10,r=(un[1]&1048575)+512>>10),e|t|r&65535}var z=class extends R{};function J(o){return(e,t,r)=>{if(e.setValid(t,r!=null))return o(e,t,r)}}var Bu=(o,e,t)=>{o[e]=Math.floor(t/864e5)},pl=(o,e,t,r)=>{if(t+1{let n=o+t;r?e[n>>3]|=1<>3]&=~(1<{o[e]=t},ka=({values:o},e,t)=>{o[e]=t},ml=({values:o},e,t)=>{o[e]=Qn(t)},Uu=(o,e,t)=>{switch(o.type.precision){case pe.HALF:return ml(o,e,t);case pe.SINGLE:case pe.DOUBLE:return ka(o,e,t)}},ts=({values:o},e,t)=>{Bu(o,e,t.valueOf())},rs=({values:o},e,t)=>{o[e]=BigInt(t)},Ba=({stride:o,values:e},t,r)=>{e.set(r.subarray(0,o),o*t)},gl=({values:o,valueOffsets:e},t,r)=>pl(o,e,t,r),hl=({values:o,valueOffsets:e},t,r)=>pl(o,e,t,Pt(r)),Ga=(o,e,t)=>{o.type.unit===Le.DAY?ts(o,e,t):rs(o,e,t)},ns=({values:o},e,t)=>{o[e]=BigInt(t/1e3)},is=({values:o},e,t)=>{o[e]=BigInt(t)},ss=({values:o},e,t)=>{o[e]=BigInt(t*1e3)},as=({values:o},e,t)=>{o[e]=BigInt(t*1e6)},Ua=(o,e,t)=>{switch(o.type.unit){case U.SECOND:return ns(o,e,t);case U.MILLISECOND:return is(o,e,t);case U.MICROSECOND:return ss(o,e,t);case U.NANOSECOND:return as(o,e,t)}},os=({values:o},e,t)=>{o[e]=t},ls=({values:o},e,t)=>{o[e]=t},cs=({values:o},e,t)=>{o[e]=t},us=({values:o},e,t)=>{o[e]=t},Oa=(o,e,t)=>{switch(o.type.unit){case U.SECOND:return os(o,e,t);case U.MILLISECOND:return ls(o,e,t);case U.MICROSECOND:return cs(o,e,t);case U.NANOSECOND:return us(o,e,t)}},Ra=({values:o,stride:e},t,r)=>{o.set(r.subarray(0,e),e*t)},Ou=(o,e,t)=>{let r=o.children[0],n=o.valueOffsets,a=Ge.getVisitFn(r);if(Array.isArray(t))for(let l=-1,c=n[e],u=n[e+1];c{let r=o.children[0],{valueOffsets:n}=o,a=Ge.getVisitFn(r),{[e]:l,[e+1]:c}=n,u=t instanceof Map?t.entries():Object.entries(t);for(let _ of u)if(a(r,l,_),++l>=c)break},Hu=(o,e)=>(t,r,n,a)=>r&&t(r,o,e[a]),Nu=(o,e)=>(t,r,n,a)=>r&&t(r,o,e.get(a)),Wu=(o,e)=>(t,r,n,a)=>r&&t(r,o,e.get(n.name)),Vu=(o,e)=>(t,r,n,a)=>r&&t(r,o,e[n.name]),zu=(o,e,t)=>{let r=o.type.children.map(a=>Ge.getVisitFn(a.type)),n=t instanceof Map?Wu(e,t):t instanceof ae?Nu(e,t):Array.isArray(t)?Hu(e,t):Vu(e,t);o.type.children.forEach((a,l)=>n(r[l],o.children[l],a,l))},ju=(o,e,t)=>{o.type.mode===ge.Dense?vl(o,e,t):bl(o,e,t)},vl=(o,e,t)=>{let r=o.type.typeIdToChildIndex[o.typeIds[e]],n=o.children[r];Ge.visit(n,o.valueOffsets[e],t)},bl=(o,e,t)=>{let r=o.type.typeIdToChildIndex[o.typeIds[e]],n=o.children[r];Ge.visit(n,e,t)},$u=(o,e,t)=>{var r;(r=o.dictionary)===null||r===void 0||r.set(o.values[e],t)},Ha=(o,e,t)=>{o.type.unit===Ce.DAY_TIME?_s(o,e,t):ds(o,e,t)},_s=({values:o},e,t)=>{o.set(t.subarray(0,2),2*e)},ds=({values:o},e,t)=>{o[e]=t[0]*12+t[1]%12},ps=({values:o},e,t)=>{o[e]=t},ms=({values:o},e,t)=>{o[e]=t},gs=({values:o},e,t)=>{o[e]=t},hs=({values:o},e,t)=>{o[e]=t},Na=(o,e,t)=>{switch(o.type.unit){case U.SECOND:return ps(o,e,t);case U.MILLISECOND:return ms(o,e,t);case U.MICROSECOND:return gs(o,e,t);case U.NANOSECOND:return hs(o,e,t)}},qu=(o,e,t)=>{let{stride:r}=o,n=o.children[0],a=Ge.getVisitFn(n);if(Array.isArray(t))for(let l=-1,c=e*r;++l"".concat(vt(e),": ").concat(vt(t))).join(", "),"}")}[Symbol.for("nodejs.util.inspect.custom")](){return this.toString()}[Symbol.iterator](){return new Wa(this[At],this[_n])}},Wa=class{constructor(e,t){this.childIndex=0,this.children=e.children,this.rowIndex=t,this.childFields=e.type.children,this.numChildren=this.childFields.length}[Symbol.iterator](){return this}next(){let e=this.childIndex;return et.name)}has(e,t){return e[At].type.children.findIndex(r=>r.name===t)!==-1}getOwnPropertyDescriptor(e,t){if(e[At].type.children.findIndex(r=>r.name===t)!==-1)return{writable:!0,enumerable:!0,configurable:!0}}get(e,t){if(Reflect.has(e,t))return e[t];let r=e[At].type.children.findIndex(n=>n.name===t);if(r!==-1){let n=Te.visit(e[At].children[r],e[_n]);return Reflect.set(e,t,n),n}}set(e,t,r){let n=e[At].type.children.findIndex(a=>a.name===t);return n!==-1?(Ge.visit(e[At].children[n],e[_n],r),Reflect.set(e,t,r)):Reflect.has(e,t)||typeof t=="symbol"?Reflect.set(e,t,r):!1}};var H=class extends R{};function $(o){return(e,t)=>e.getValid(t)?o(e,t):null}var Xu=(o,e)=>864e5*o[e],Qu=(o,e)=>null,yl=(o,e,t)=>{if(t+1>=e.length)return null;let r=oe(e[t]),n=oe(e[t+1]);return o.subarray(r,n)},Yu=({offset:o,values:e},t)=>{let r=o+t;return(e[r>>3]&1<Xu(o,e),El=({values:o},e)=>oe(o[e]),Lr=({stride:o,values:e},t)=>e[o*t],Ju=({stride:o,values:e},t)=>es(e[o*t]),wl=({values:o},e)=>o[e],Ku=({stride:o,values:e},t)=>e.subarray(o*t,o*(t+1)),Al=({values:o,valueOffsets:e},t)=>yl(o,e,t),Ll=({values:o,valueOffsets:e},t)=>{let r=yl(o,e,t);return r!==null?In(r):null},Zu=({values:o},e)=>o[e],e_=({type:o,values:e},t)=>o.precision!==pe.HALF?e[t]:es(e[t]),t_=(o,e)=>o.type.unit===Le.DAY?Sl(o,e):El(o,e),Dl=({values:o},e)=>1e3*oe(o[e]),Fl=({values:o},e)=>oe(o[e]),Tl=({values:o},e)=>xa(o[e],BigInt(1e3)),xl=({values:o},e)=>xa(o[e],BigInt(1e6)),r_=(o,e)=>{switch(o.type.unit){case U.SECOND:return Dl(o,e);case U.MILLISECOND:return Fl(o,e);case U.MICROSECOND:return Tl(o,e);case U.NANOSECOND:return xl(o,e)}},Pl=({values:o},e)=>o[e],Cl=({values:o},e)=>o[e],Il=({values:o},e)=>o[e],Ml=({values:o},e)=>o[e],n_=(o,e)=>{switch(o.type.unit){case U.SECOND:return Pl(o,e);case U.MILLISECOND:return Cl(o,e);case U.MICROSECOND:return Il(o,e);case U.NANOSECOND:return Ml(o,e)}},i_=({values:o,stride:e},t)=>Xn.decimal(o.subarray(e*t,e*(t+1))),s_=(o,e)=>{let{valueOffsets:t,stride:r,children:n}=o,{[e*r]:a,[e*r+1]:l}=t,u=n[0].slice(a,l-a);return new ae([u])},a_=(o,e)=>{let{valueOffsets:t,children:r}=o,{[e]:n,[e+1]:a}=t,l=r[0];return new Gt(l.slice(n,a-n))},o_=(o,e)=>new Ar(o,e),l_=(o,e)=>o.type.mode===ge.Dense?kl(o,e):Bl(o,e),kl=(o,e)=>{let t=o.type.typeIdToChildIndex[o.typeIds[e]],r=o.children[t];return Te.visit(r,o.valueOffsets[e])},Bl=(o,e)=>{let t=o.type.typeIdToChildIndex[o.typeIds[e]],r=o.children[t];return Te.visit(r,e)},c_=(o,e)=>{var t;return(t=o.dictionary)===null||t===void 0?void 0:t.get(o.values[e])},u_=(o,e)=>o.type.unit===Ce.DAY_TIME?Gl(o,e):Ul(o,e),Gl=({values:o},e)=>o.subarray(2*e,2*(e+1)),Ul=({values:o},e)=>{let t=o[e],r=new Int32Array(2);return r[0]=Math.trunc(t/12),r[1]=Math.trunc(t%12),r},Ol=({values:o},e)=>o[e],Rl=({values:o},e)=>o[e],Hl=({values:o},e)=>o[e],Nl=({values:o},e)=>o[e],__=(o,e)=>{switch(o.type.unit){case U.SECOND:return Ol(o,e);case U.MILLISECOND:return Rl(o,e);case U.MICROSECOND:return Hl(o,e);case U.NANOSECOND:return Nl(o,e)}},d_=(o,e)=>{let{stride:t,children:r}=o,a=r[0].slice(e*t,t);return new ae([a])};H.prototype.visitNull=$(Qu);H.prototype.visitBool=$(Yu);H.prototype.visitInt=$(Zu);H.prototype.visitInt8=$(Lr);H.prototype.visitInt16=$(Lr);H.prototype.visitInt32=$(Lr);H.prototype.visitInt64=$(wl);H.prototype.visitUint8=$(Lr);H.prototype.visitUint16=$(Lr);H.prototype.visitUint32=$(Lr);H.prototype.visitUint64=$(wl);H.prototype.visitFloat=$(e_);H.prototype.visitFloat16=$(Ju);H.prototype.visitFloat32=$(Lr);H.prototype.visitFloat64=$(Lr);H.prototype.visitUtf8=$(Ll);H.prototype.visitLargeUtf8=$(Ll);H.prototype.visitBinary=$(Al);H.prototype.visitLargeBinary=$(Al);H.prototype.visitFixedSizeBinary=$(Ku);H.prototype.visitDate=$(t_);H.prototype.visitDateDay=$(Sl);H.prototype.visitDateMillisecond=$(El);H.prototype.visitTimestamp=$(r_);H.prototype.visitTimestampSecond=$(Dl);H.prototype.visitTimestampMillisecond=$(Fl);H.prototype.visitTimestampMicrosecond=$(Tl);H.prototype.visitTimestampNanosecond=$(xl);H.prototype.visitTime=$(n_);H.prototype.visitTimeSecond=$(Pl);H.prototype.visitTimeMillisecond=$(Cl);H.prototype.visitTimeMicrosecond=$(Il);H.prototype.visitTimeNanosecond=$(Ml);H.prototype.visitDecimal=$(i_);H.prototype.visitList=$(s_);H.prototype.visitStruct=$(o_);H.prototype.visitUnion=$(l_);H.prototype.visitDenseUnion=$(kl);H.prototype.visitSparseUnion=$(Bl);H.prototype.visitDictionary=$(c_);H.prototype.visitInterval=$(u_);H.prototype.visitIntervalDayTime=$(Gl);H.prototype.visitIntervalYearMonth=$(Ul);H.prototype.visitDuration=$(__);H.prototype.visitDurationSecond=$(Ol);H.prototype.visitDurationMillisecond=$(Rl);H.prototype.visitDurationMicrosecond=$(Hl);H.prototype.visitDurationNanosecond=$(Nl);H.prototype.visitFixedSizeList=$(d_);H.prototype.visitMap=$(a_);var Te=new H;var Dr=Symbol.for("keys"),fn=Symbol.for("vals"),dn=Symbol.for("kKeysAsStrings"),za=Symbol.for("_kKeysAsStrings"),Gt=class{constructor(e){return this[Dr]=new ae([e.children[0]]).memoize(),this[fn]=e.children[1],new Proxy(this,new $a)}get[dn](){return this[za]||(this[za]=Array.from(this[Dr].toArray(),String))}[Symbol.iterator](){return new ja(this[Dr],this[fn])}get size(){return this[Dr].length}toArray(){return Object.values(this.toJSON())}toJSON(){let e=this[Dr],t=this[fn],r={};for(let n=-1,a=e.length;++n"".concat(vt(e),": ").concat(vt(t))).join(", "),"}")}[Symbol.for("nodejs.util.inspect.custom")](){return this.toString()}},ja=class{constructor(e,t){this.keys=e,this.vals=t,this.keyIndex=0,this.numKeys=e.length}[Symbol.iterator](){return this}next(){let e=this.keyIndex;return e===this.numKeys?{done:!0,value:null}:(this.keyIndex++,{done:!1,value:[this.keys.get(e),Te.visit(this.vals,e)]})}},$a=class{isExtensible(){return!1}deleteProperty(){return!1}preventExtensions(){return!0}ownKeys(e){return e[dn]}has(e,t){return e[dn].includes(t)}getOwnPropertyDescriptor(e,t){if(e[dn].indexOf(t)!==-1)return{writable:!0,enumerable:!0,configurable:!0}}get(e,t){if(Reflect.has(e,t))return e[t];let r=e[dn].indexOf(t);if(r!==-1){let n=Te.visit(Reflect.get(e,fn),r);return Reflect.set(e,t,n),n}}set(e,t,r){let n=e[dn].indexOf(t);return n!==-1?(Ge.visit(Reflect.get(e,fn),n,r),Reflect.set(e,t,r)):Reflect.has(e,t)?Reflect.set(e,t,r):!1}};Object.defineProperties(Gt.prototype,{[Symbol.toStringTag]:{enumerable:!1,configurable:!1,value:"Row"},[Dr]:{writable:!0,enumerable:!1,configurable:!1,value:null},[fn]:{writable:!0,enumerable:!1,configurable:!1,value:null},[za]:{writable:!0,enumerable:!1,configurable:!1,value:null}});var Wl;function Yn(o,e,t,r){let{length:n=0}=o,a=typeof e!="number"?0:e,l=typeof t!="number"?n:t;return a<0&&(a=(a%n+n)%n),l<0&&(l=(l%n+n)%n),ln&&(l=n),r?r(o,a,l):[a,l]}var Gr=(o,e)=>o<0?e+o:o,Vl=o=>o!==o;function Fr(o){if(typeof o!=="object"||o===null)return Vl(o)?Vl:t=>t===o;if(o instanceof Date){let t=o.valueOf();return r=>r instanceof Date?r.valueOf()===t:!1}return ArrayBuffer.isView(o)?t=>t?Aa(o,t):!1:o instanceof Map?p_(o):Array.isArray(o)?f_(o):o instanceof ae?m_(o):g_(o,!0)}function f_(o){let e=[];for(let t=-1,r=o.length;++t!1;let r=[];for(let n=-1,a=t.length;++n{if(!t||typeof t!="object")return!1;switch(t.constructor){case Array:return h_(o,t);case Map:return zl(o,t,t.keys());case Gt:case Ar:case Object:case void 0:return zl(o,t,e||Object.keys(t))}return t instanceof ae?v_(o,t):!1}}function h_(o,e){let t=o.length;if(e.length!==t)return!1;for(let r=-1;++rUr,getBit:()=>jl,getBool:()=>ys,packBools:()=>Rr,popcnt_array:()=>$l,popcnt_bit_range:()=>Jn,popcnt_uint32:()=>bs,setBool:()=>b_,truncateBitmap:()=>Or});function ys(o,e,t,r){return(t&1<>r}function b_(o,e,t){return t?!!(o[e>>3]|=1<>3]&=~(1<0||t.byteLength>3):Rr(new Ur(t,o,e,null,ys)).subarray(0,r)),n}return t}function Rr(o){let e=[],t=0,r=0,n=0;for(let l of o)l&&(n|=1<0)&&(e[t++]=n);let a=new Uint8Array(e.length+7&-8);return a.set(e),a}var Ur=class{constructor(e,t,r,n,a){this.bytes=e,this.length=r,this.context=n,this.get=a,this.bit=t%8,this.byteIndex=t>>3,this.byte=e[this.byteIndex++],this.index=0}next(){return this.index>3<<3,n=e+(e%8===0?0:8-e%8);return Jn(o,e,n)+Jn(o,r,t)+$l(o,n>>3,r-n>>3)}function $l(o,e,t){let r=0,n=Math.trunc(e),a=new DataView(o.buffer,o.byteOffset,o.byteLength),l=t===void 0?o.byteLength:n+t;for(;l-n>=4;)r+=bs(a.getUint32(n)),n+=4;for(;l-n>=2;)r+=bs(a.getUint16(n)),n+=2;for(;l-n>=1;)r+=bs(a.getUint8(n)),n+=1;return r}function bs(o){let e=Math.trunc(o);return e=e-(e>>>1&1431655765),e=(e&858993459)+(e>>>2&858993459),(e+(e>>>4)&252645135)*16843009>>>24}var y_=-1,ce=class o{get typeId(){return this.type.typeId}get ArrayType(){return this.type.ArrayType}get buffers(){return[this.valueOffsets,this.values,this.nullBitmap,this.typeIds]}get nullable(){if(this._nullCount!==0){let{type:e}=this;return G.isSparseUnion(e)?this.children.some(t=>t.nullable):G.isDenseUnion(e)?this.children.some(t=>t.nullable):this.nullBitmap&&this.nullBitmap.byteLength>0}return!0}get byteLength(){let e=0,{valueOffsets:t,values:r,nullBitmap:n,typeIds:a}=this;return t&&(e+=t.byteLength),r&&(e+=r.byteLength),n&&(e+=n.byteLength),a&&(e+=a.byteLength),this.children.reduce((l,c)=>l+c.byteLength,e)}get nullCount(){if(G.isUnion(this.type))return this.children.reduce((r,n)=>r+n.nullCount,0);let e=this._nullCount,t;return e<=y_&&(t=this.nullBitmap)&&(this._nullCount=e=t.length===0?0:this.length-Jn(t,this.offset,this.offset+this.length)),e}constructor(e,t,r,n,a,l=[],c){this.type=e,this.children=l,this.dictionary=c,this.offset=Math.floor(Math.max(t||0,0)),this.length=Math.floor(Math.max(r||0,0)),this._nullCount=Math.floor(Math.max(n||0,-1));let u;a instanceof o?(this.stride=a.stride,this.values=a.values,this.typeIds=a.typeIds,this.nullBitmap=a.nullBitmap,this.valueOffsets=a.valueOffsets):(this.stride=tt(e),a&&((u=a[0])&&(this.valueOffsets=u),(u=a[1])&&(this.values=u),(u=a[2])&&(this.nullBitmap=u),(u=a[3])&&(this.typeIds=u)))}getValid(e){let{type:t}=this;if(G.isUnion(t)){let r=t,n=this.children[r.typeIdToChildIndex[this.typeIds[e]]],a=r.mode===ge.Dense?this.valueOffsets[e]:e;return n.getValid(a)}if(this.nullable&&this.nullCount>0){let r=this.offset+e;return(this.nullBitmap[r>>3]&1<>3;(!a||a.byteLength<=d)&&(a=new Uint8Array((l+c+63&-64)>>3).fill(255),this.nullCount>0?(a.set(Or(l,c,this.nullBitmap),0),Object.assign(this,{nullBitmap:a})):Object.assign(this,{nullBitmap:a,_nullCount:0}));let f=a[d];r=(f&_)!==0,a[d]=t?f|_:f&~_}return r!==!!t&&(this._nullCount=this.nullCount+(t?-1:1)),t}clone(e=this.type,t=this.offset,r=this.length,n=this._nullCount,a=this,l=this.children){return new o(e,t,r,n,a,l,this.dictionary)}slice(e,t){let{stride:r,typeId:n,children:a}=this,l=+(this._nullCount===0)-1,c=n===16?r:1,u=this._sliceBuffers(e,t,r,n);return this.clone(this.type,this.offset+e,t,l,u,a.length===0||this.valueOffsets?a:this._sliceChildren(a,c*e,c*t))}_changeLengthAndBackfillNullBitmap(e){if(this.typeId===v.Null)return this.clone(this.type,0,e,0);let{length:t,nullCount:r}=this,n=new Uint8Array((e+63&-64)>>3).fill(255,0,t>>3);n[t>>3]=(1<0&&n.set(Or(this.offset,t,this.nullBitmap),0);let a=this.buffers;return a[at.VALIDITY]=n,this.clone(this.type,0,e,r+(e-t),a)}_sliceBuffers(e,t,r,n){let a,{buffers:l}=this;return(a=l[at.TYPE])&&(l[at.TYPE]=a.subarray(e,e+t)),(a=l[at.OFFSET])&&(l[at.OFFSET]=a.subarray(e,e+t+1))||(a=l[at.DATA])&&(l[at.DATA]=n===6?a:a.subarray(r*e,r*(e+t))),l}_sliceChildren(e,t,r){return e.map(n=>n.slice(t,r))}};ce.prototype.children=Object.freeze([]);var Qa=class o extends R{visit(e){return this.getVisitFn(e.type).call(this,e)}visitNull(e){let{["type"]:t,["offset"]:r=0,["length"]:n=0}=e;return new ce(t,r,n,n)}visitBool(e){let{["type"]:t,["offset"]:r=0}=e,n=j(e.nullBitmap),a=ne(t.ArrayType,e.data),{["length"]:l=a.length>>3,["nullCount"]:c=e.nullBitmap?-1:0}=e;return new ce(t,r,l,c,[void 0,a,n])}visitInt(e){let{["type"]:t,["offset"]:r=0}=e,n=j(e.nullBitmap),a=ne(t.ArrayType,e.data),{["length"]:l=a.length,["nullCount"]:c=e.nullBitmap?-1:0}=e;return new ce(t,r,l,c,[void 0,a,n])}visitFloat(e){let{["type"]:t,["offset"]:r=0}=e,n=j(e.nullBitmap),a=ne(t.ArrayType,e.data),{["length"]:l=a.length,["nullCount"]:c=e.nullBitmap?-1:0}=e;return new ce(t,r,l,c,[void 0,a,n])}visitUtf8(e){let{["type"]:t,["offset"]:r=0}=e,n=j(e.data),a=j(e.nullBitmap),l=kr(e.valueOffsets),{["length"]:c=l.length-1,["nullCount"]:u=e.nullBitmap?-1:0}=e;return new ce(t,r,c,u,[l,n,a])}visitLargeUtf8(e){let{["type"]:t,["offset"]:r=0}=e,n=j(e.data),a=j(e.nullBitmap),l=Ui(e.valueOffsets),{["length"]:c=l.length-1,["nullCount"]:u=e.nullBitmap?-1:0}=e;return new ce(t,r,c,u,[l,n,a])}visitBinary(e){let{["type"]:t,["offset"]:r=0}=e,n=j(e.data),a=j(e.nullBitmap),l=kr(e.valueOffsets),{["length"]:c=l.length-1,["nullCount"]:u=e.nullBitmap?-1:0}=e;return new ce(t,r,c,u,[l,n,a])}visitLargeBinary(e){let{["type"]:t,["offset"]:r=0}=e,n=j(e.data),a=j(e.nullBitmap),l=Ui(e.valueOffsets),{["length"]:c=l.length-1,["nullCount"]:u=e.nullBitmap?-1:0}=e;return new ce(t,r,c,u,[l,n,a])}visitFixedSizeBinary(e){let{["type"]:t,["offset"]:r=0}=e,n=j(e.nullBitmap),a=ne(t.ArrayType,e.data),{["length"]:l=a.length/tt(t),["nullCount"]:c=e.nullBitmap?-1:0}=e;return new ce(t,r,l,c,[void 0,a,n])}visitDate(e){let{["type"]:t,["offset"]:r=0}=e,n=j(e.nullBitmap),a=ne(t.ArrayType,e.data),{["length"]:l=a.length/tt(t),["nullCount"]:c=e.nullBitmap?-1:0}=e;return new ce(t,r,l,c,[void 0,a,n])}visitTimestamp(e){let{["type"]:t,["offset"]:r=0}=e,n=j(e.nullBitmap),a=ne(t.ArrayType,e.data),{["length"]:l=a.length/tt(t),["nullCount"]:c=e.nullBitmap?-1:0}=e;return new ce(t,r,l,c,[void 0,a,n])}visitTime(e){let{["type"]:t,["offset"]:r=0}=e,n=j(e.nullBitmap),a=ne(t.ArrayType,e.data),{["length"]:l=a.length/tt(t),["nullCount"]:c=e.nullBitmap?-1:0}=e;return new ce(t,r,l,c,[void 0,a,n])}visitDecimal(e){let{["type"]:t,["offset"]:r=0}=e,n=j(e.nullBitmap),a=ne(t.ArrayType,e.data),{["length"]:l=a.length/tt(t),["nullCount"]:c=e.nullBitmap?-1:0}=e;return new ce(t,r,l,c,[void 0,a,n])}visitList(e){let{["type"]:t,["offset"]:r=0,["child"]:n}=e,a=j(e.nullBitmap),l=kr(e.valueOffsets),{["length"]:c=l.length-1,["nullCount"]:u=e.nullBitmap?-1:0}=e;return new ce(t,r,c,u,[l,void 0,a],[n])}visitStruct(e){let{["type"]:t,["offset"]:r=0,["children"]:n=[]}=e,a=j(e.nullBitmap),{length:l=n.reduce((u,{length:_})=>Math.max(u,_),0),nullCount:c=e.nullBitmap?-1:0}=e;return new ce(t,r,l,c,[void 0,void 0,a],n)}visitUnion(e){let{["type"]:t,["offset"]:r=0,["children"]:n=[]}=e,a=ne(t.ArrayType,e.typeIds),{["length"]:l=a.length,["nullCount"]:c=-1}=e;if(G.isSparseUnion(t))return new ce(t,r,l,c,[void 0,void 0,void 0,a],n);let u=kr(e.valueOffsets);return new ce(t,r,l,c,[u,void 0,void 0,a],n)}visitDictionary(e){let{["type"]:t,["offset"]:r=0}=e,n=j(e.nullBitmap),a=ne(t.indices.ArrayType,e.data),{["dictionary"]:l=new ae([new o().visit({type:t.dictionary})])}=e,{["length"]:c=a.length,["nullCount"]:u=e.nullBitmap?-1:0}=e;return new ce(t,r,c,u,[void 0,a,n],[],l)}visitInterval(e){let{["type"]:t,["offset"]:r=0}=e,n=j(e.nullBitmap),a=ne(t.ArrayType,e.data),{["length"]:l=a.length/tt(t),["nullCount"]:c=e.nullBitmap?-1:0}=e;return new ce(t,r,l,c,[void 0,a,n])}visitDuration(e){let{["type"]:t,["offset"]:r=0}=e,n=j(e.nullBitmap),a=ne(t.ArrayType,e.data),{["length"]:l=a.length,["nullCount"]:c=e.nullBitmap?-1:0}=e;return new ce(t,r,l,c,[void 0,a,n])}visitFixedSizeList(e){let{["type"]:t,["offset"]:r=0,["child"]:n=new o().visit({type:t.valueType})}=e,a=j(e.nullBitmap),{["length"]:l=n.length/tt(t),["nullCount"]:c=e.nullBitmap?-1:0}=e;return new ce(t,r,l,c,[void 0,void 0,a],[n])}visitMap(e){let{["type"]:t,["offset"]:r=0,["child"]:n=new o().visit({type:t.childType})}=e,a=j(e.nullBitmap),l=kr(e.valueOffsets),{["length"]:c=l.length-1,["nullCount"]:u=e.nullBitmap?-1:0}=e;return new ce(t,r,c,u,[l,void 0,a],[n])}},S_=new Qa;function K(o){return S_.visit(o)}var Kn=class{constructor(e=0,t){this.numChunks=e,this.getChunkIterator=t,this.chunkIndex=0,this.chunkIterator=this.getChunkIterator(0)}next(){for(;this.chunkIndexe.nullable)}function Ss(o){return o.reduce((e,t)=>e+t.nullCount,0)}function Es(o){return o.reduce((e,t,r)=>(e[r+1]=e[r]+t.length,e),new Uint32Array(o.length+1))}function ws(o,e,t,r){let n=[];for(let a=-1,l=o.length;++a=r)break;if(t>=u+_)continue;if(u>=t&&u+_<=r){n.push(c);continue}let d=Math.max(0,t-u),f=Math.min(r-u,_);n.push(c.slice(d,f-d))}return n.length===0&&n.push(o[0].slice(0,0)),n}function Ya(o,e,t,r){let n=0,a=0,l=e.length-1;do{if(n>=l-1)return t0?0:-1}function w_(o,e){let{nullBitmap:t}=o;if(!t||o.nullCount<=0)return-1;let r=0;for(let n of new Ur(t,o.offset+(e||0),o.length,t,ys)){if(!n)return r;++r}return-1}function Z(o,e,t){if(e===void 0)return-1;if(e===null)switch(o.typeId){case v.Union:break;case v.Dictionary:break;default:return w_(o,t)}let r=Te.getVisitFn(o),n=Fr(e);for(let a=(t||0)-1,l=o.length;++a{let n=o.data[r];return n.values.subarray(0,n.length)[Symbol.iterator]()});let t=0;return new Kn(o.data.length,r=>{let a=o.data[r].length,l=o.slice(t,t+a);return t+=a,new Ja(l)})}var Ja=class{constructor(e){this.vector=e,this.index=0}next(){return this.indexc.data):e;if(a.length===0||a.some(c=>!(c instanceof ce)))throw new TypeError("Vector constructor expects an Array of Data instances.");let l=(t=a[0])===null||t===void 0?void 0:t.type;switch(a.length){case 0:this._offsets=[0];break;case 1:{let{get:c,set:u,indexOf:_}=Yl[l.typeId],d=a[0];this.isValid=f=>Zn(d,f),this.get=f=>c(d,f),this.set=(f,p)=>u(d,f,p),this.indexOf=f=>_(d,f),this._offsets=[0,d.length];break}default:Object.setPrototypeOf(this,Jl[l.typeId]),this._offsets=Es(a);break}this.data=a,this.type=l,this.stride=tt(l),this.numChildren=(n=(r=l.children)===null||r===void 0?void 0:r.length)!==null&&n!==void 0?n:0,this.length=this._offsets.at(-1)}get byteLength(){return this.data.reduce((e,t)=>e+t.byteLength,0)}get nullable(){return ql(this.data)}get nullCount(){return Ss(this.data)}get ArrayType(){return this.type.ArrayType}get[Symbol.toStringTag](){return"".concat(this.VectorName,"<").concat(this.type[Symbol.toStringTag],">")}get VectorName(){return"".concat(v[this.type.typeId],"Vector")}isValid(e){return!1}get(e){return null}at(e){return this.get(Gr(e,this.length))}set(e,t){}indexOf(e,t){return-1}includes(e,t){return this.indexOf(e,t)>-1}[Symbol.iterator](){return mn.visit(this)}concat(...e){return new o(this.data.concat(e.flatMap(t=>t.data).flat(Number.POSITIVE_INFINITY)))}slice(e,t){return new o(Yn(this,e,t,({data:r,_offsets:n},a,l)=>ws(r,n,a,l)))}toJSON(){return[...this]}toArray(){let{type:e,data:t,length:r,stride:n,ArrayType:a}=this;switch(e.typeId){case v.Int:case v.Float:case v.Decimal:case v.Time:case v.Timestamp:switch(t.length){case 0:return new a;case 1:return t[0].values.subarray(0,r*n);default:return t.reduce((l,{values:c,length:u})=>(l.array.set(c.subarray(0,u*n),l.offset),l.offset+=u*n,l),{array:new a(r*n),offset:0}).array}}return[...this]}toString(){return"[".concat([...this].join(","),"]")}getChild(e){var t;return this.getChildAt((t=this.type.children)===null||t===void 0?void 0:t.findIndex(r=>r.name===e))}getChildAt(e){return e>-1&&et[e])):null}get isMemoized(){return G.isDictionary(this.type)?this.data[0].dictionary.isMemoized:!1}memoize(){if(G.isDictionary(this.type)){let e=new Ds(this.data[0].dictionary),t=this.data.map(r=>{let n=r.clone();return n.dictionary=e,n});return new o(t)}return new Ds(this)}unmemoize(){if(G.isDictionary(this.type)&&this.isMemoized){let e=this.data[0].dictionary.unmemoize(),t=this.data.map(r=>{let n=r.clone();return n.dictionary=e,n});return new o(t)}return this}};Ql=Symbol.toStringTag;ae[Ql]=(o=>{o.type=G.prototype,o.data=[],o.length=0,o.stride=1,o.numChildren=0,o._offsets=new Uint32Array([0]),o[Symbol.isConcatSpreadable]=!0;let e=Object.keys(v).map(t=>v[t]).filter(t=>typeof t=="number"&&t!==v.NONE);for(let t of e){let r=Te.getVisitFnByTypeId(t),n=Ge.getVisitFnByTypeId(t),a=Hr.getVisitFnByTypeId(t);Yl[t]={get:r,set:n,indexOf:a},Jl[t]=Object.create(o,{isValid:{value:pn(Zn)},get:{value:pn(Te.getVisitFnByTypeId(t))},set:{value:As(Ge.getVisitFnByTypeId(t))},indexOf:{value:Ls(Hr.getVisitFnByTypeId(t))}})}return"Vector"})(ae.prototype);var Ds=class o extends ae{constructor(e){super(e.data);let t=this.get,r=this.set,n=this.slice,a=new Array(this.length);Object.defineProperty(this,"get",{value(l){let c=a[l];if(c!==void 0)return c;let u=t.call(this,l);return a[l]=u,u}}),Object.defineProperty(this,"set",{value(l,c){r.call(this,l,c),a[l]=c}}),Object.defineProperty(this,"slice",{value:(l,c)=>new o(n.call(this,l,c))}),Object.defineProperty(this,"isMemoized",{value:!0}),Object.defineProperty(this,"unmemoize",{value:()=>new ae(this.data)}),Object.defineProperty(this,"memoize",{value:()=>this})}};function Kl(o){if(!o||o.length<=0)return function(n){return!0};let e="",t=o.filter(r=>r===r);return t.length>0&&(e="\n switch (x) {".concat(t.map(r=>"\n case ".concat(A_(r),":")).join(""),"\n return false;\n }")),o.length!==t.length&&(e="if (x !== x) return false;\n".concat(e)),new Function("x","".concat(e,"\nreturn true;"))}function A_(o){return typeof o!="bigint"?vt(o):"".concat(vt(o),"n")}function Ka(o,e){let t=Math.ceil(o)*e-1;return(t-t%64+64||64)/e}function Zl(o,e=0){return o.length>=e?o.subarray(0,e):kn(new o.constructor(e),o,0)}var Lt=class{constructor(e,t=0,r=1){this.length=Math.ceil(t/r),this.buffer=new e(this.length),this.stride=r,this.BYTES_PER_ELEMENT=e.BYTES_PER_ELEMENT,this.ArrayType=e}get byteLength(){return Math.ceil(this.length*this.stride)*this.BYTES_PER_ELEMENT}get reservedLength(){return this.buffer.length/this.stride}get reservedByteLength(){return this.buffer.byteLength}set(e,t){return this}append(e){return this.set(this.length,e)}reserve(e){if(e>0){this.length+=e;let t=this.stride,r=this.length*t,n=this.buffer.length;r>=n&&this._resize(n===0?Ka(r*1,this.BYTES_PER_ELEMENT):Ka(r*2,this.BYTES_PER_ELEMENT))}return this}flush(e=this.length){e=Ka(e*this.stride,this.BYTES_PER_ELEMENT);let t=Zl(this.buffer,e);return this.clear(),t}clear(){return this.length=0,this.buffer=new this.ArrayType,this}_resize(e){return this.buffer=Zl(this.buffer,e)}},nr=class extends Lt{last(){return this.get(this.length-1)}get(e){return this.buffer[e]}set(e,t){return this.reserve(e-this.length+1),this.buffer[e*this.stride]=t,this}},gn=class extends nr{constructor(){super(Uint8Array,0,1/8),this.numValid=0}get numInvalid(){return this.length-this.numValid}get(e){return this.buffer[e>>3]>>e%8&1}set(e,t){let{buffer:r}=this.reserve(e-this.length+1),n=e>>3,a=e%8,l=r[n]>>a&1;return t?l===0&&(r[n]|=1<=0&&n.fill(n[r],r,e),n[e]=n[e-1]+t,this}flush(e=this.length-1){return e>this.length&&this.set(e-1,this.BYTES_PER_ELEMENT>4?BigInt(0):0),super.flush(e+1)}};var Se=class{static throughNode(e){throw new Error('"throughNode" not available in this environment')}static throughDOM(e){throw new Error('"throughDOM" not available in this environment')}constructor({type:e,nullValues:t}){this.length=0,this.finished=!1,this.type=e,this.children=[],this.nullValues=t,this.stride=tt(e),this._nulls=new gn,t&&t.length>0&&(this._isValid=Kl(t))}toVector(){return new ae([this.flush()])}get ArrayType(){return this.type.ArrayType}get nullCount(){return this._nulls.numInvalid}get numChildren(){return this.children.length}get byteLength(){let e=0,{_offsets:t,_values:r,_nulls:n,_typeIds:a,children:l}=this;return t&&(e+=t.byteLength),r&&(e+=r.byteLength),n&&(e+=n.byteLength),a&&(e+=a.byteLength),l.reduce((c,u)=>c+u.byteLength,e)}get reservedLength(){return this._nulls.reservedLength}get reservedByteLength(){let e=0;return this._offsets&&(e+=this._offsets.reservedByteLength),this._values&&(e+=this._values.reservedByteLength),this._nulls&&(e+=this._nulls.reservedByteLength),this._typeIds&&(e+=this._typeIds.reservedByteLength),this.children.reduce((t,r)=>t+r.reservedByteLength,e)}get valueOffsets(){return this._offsets?this._offsets.buffer:null}get values(){return this._values?this._values.buffer:null}get nullBitmap(){return this._nulls?this._nulls.buffer:null}get typeIds(){return this._typeIds?this._typeIds.buffer:null}append(e){return this.set(this.length,e)}isValid(e){return this._isValid(e)}set(e,t){return this.setValid(e,this.isValid(t))&&this.setValue(e,t),this}setValue(e,t){this._setValue(this,e,t)}setValid(e,t){return this.length=this._nulls.set(e,+t).length,t}addChild(e,t="".concat(this.numChildren)){throw new Error('Cannot append children to non-nested type "'.concat(this.type,'"'))}getChildAt(e){return this.children[e]||null}flush(){let e,t,r,n,{type:a,length:l,nullCount:c,_typeIds:u,_offsets:_,_values:d,_nulls:f}=this;(t=u==null?void 0:u.flush(l))?n=_==null?void 0:_.flush(l):(n=_==null?void 0:_.flush(l))?e=d==null?void 0:d.flush(_.last()):e=d==null?void 0:d.flush(l),c>0&&(r=f==null?void 0:f.flush(l));let p=this.children.map(m=>m.flush());return this.clear(),K({type:a,length:l,nullCount:c,children:p,child:p[0],data:e,typeIds:t,nullBitmap:r,valueOffsets:n})}finish(){this.finished=!0;for(let e of this.children)e.finish();return this}clear(){var e,t,r,n;this.length=0,(e=this._nulls)===null||e===void 0||e.clear(),(t=this._values)===null||t===void 0||t.clear(),(r=this._offsets)===null||r===void 0||r.clear(),(n=this._typeIds)===null||n===void 0||n.clear();for(let a of this.children)a.clear();return this}};Se.prototype.length=1;Se.prototype.stride=1;Se.prototype.children=null;Se.prototype.finished=!1;Se.prototype.nullValues=null;Se.prototype._isValid=()=>!0;var xe=class extends Se{constructor(e){super(e),this._values=new nr(this.ArrayType,0,this.stride)}setValue(e,t){let r=this._values;return r.reserve(e-r.length+1),super.setValue(e,t)}},je=class extends Se{constructor(e){super(e),this._pendingLength=0,this._offsets=new hn(e.type)}setValue(e,t){let r=this._pending||(this._pending=new Map),n=r.get(e);n&&(this._pendingLength-=n.length),this._pendingLength+=t instanceof Gt?t[Dr].length:t.length,r.set(e,t)}setValid(e,t){return super.setValid(e,t)?!0:((this._pending||(this._pending=new Map)).set(e,void 0),!1)}clear(){return this._pendingLength=0,this._pending=void 0,super.clear()}flush(){return this._flush(),super.flush()}finish(){return this._flush(),super.finish()}_flush(){let e=this._pending,t=this._pendingLength;return this._pendingLength=0,this._pending=void 0,e&&e.size>0&&this._flushPending(e,t),this}};var Nr=class{constructor(){this.bb=null,this.bb_pos=0}__init(e,t){return this.bb_pos=e,this.bb=t,this}offset(){return this.bb.readInt64(this.bb_pos)}metaDataLength(){return this.bb.readInt32(this.bb_pos+8)}bodyLength(){return this.bb.readInt64(this.bb_pos+16)}static sizeOf(){return 24}static createBlock(e,t,r,n){return e.prep(8,24),e.writeInt64(BigInt(n!=null?n:0)),e.pad(4),e.writeInt32(r),e.writeInt64(BigInt(t!=null?t:0)),e.offset()}};var rt=class o{constructor(){this.bb=null,this.bb_pos=0}__init(e,t){return this.bb_pos=e,this.bb=t,this}static getRootAsFooter(e,t){return(t||new o).__init(e.readInt32(e.position())+e.position(),e)}static getSizePrefixedRootAsFooter(e,t){return e.setPosition(e.position()+4),(t||new o).__init(e.readInt32(e.position())+e.position(),e)}version(){let e=this.bb.__offset(this.bb_pos,4);return e?this.bb.readInt16(this.bb_pos+e):ue.V1}schema(e){let t=this.bb.__offset(this.bb_pos,6);return t?(e||new ze).__init(this.bb.__indirect(this.bb_pos+t),this.bb):null}dictionaries(e,t){let r=this.bb.__offset(this.bb_pos,8);return r?(t||new Nr).__init(this.bb.__vector(this.bb_pos+r)+e*24,this.bb):null}dictionariesLength(){let e=this.bb.__offset(this.bb_pos,8);return e?this.bb.__vector_len(this.bb_pos+e):0}recordBatches(e,t){let r=this.bb.__offset(this.bb_pos,10);return r?(t||new Nr).__init(this.bb.__vector(this.bb_pos+r)+e*24,this.bb):null}recordBatchesLength(){let e=this.bb.__offset(this.bb_pos,10);return e?this.bb.__vector_len(this.bb_pos+e):0}customMetadata(e,t){let r=this.bb.__offset(this.bb_pos,12);return r?(t||new Ie).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+r)+e*4),this.bb):null}customMetadataLength(){let e=this.bb.__offset(this.bb_pos,12);return e?this.bb.__vector_len(this.bb_pos+e):0}static startFooter(e){e.startObject(5)}static addVersion(e,t){e.addFieldInt16(0,t,ue.V1)}static addSchema(e,t){e.addFieldOffset(1,t,0)}static addDictionaries(e,t){e.addFieldOffset(2,t,0)}static startDictionariesVector(e,t){e.startVector(24,t,8)}static addRecordBatches(e,t){e.addFieldOffset(3,t,0)}static startRecordBatchesVector(e,t){e.startVector(24,t,8)}static addCustomMetadata(e,t){e.addFieldOffset(4,t,0)}static createCustomMetadataVector(e,t){e.startVector(4,t.length,4);for(let r=t.length-1;r>=0;r--)e.addOffset(t[r]);return e.endVector()}static startCustomMetadataVector(e,t){e.startVector(4,t,4)}static endFooter(e){return e.endObject()}static finishFooterBuffer(e,t){e.finish(t)}static finishSizePrefixedFooterBuffer(e,t){e.finish(t,void 0,!0)}};var de=class o{constructor(e=[],t,r,n=ue.V5){this.fields=e||[],this.metadata=t||new Map,r||(r=Za(this.fields)),this.dictionaries=r,this.metadataVersion=n}get[Symbol.toStringTag](){return"Schema"}get names(){return this.fields.map(e=>e.name)}toString(){return"Schema<{ ".concat(this.fields.map((e,t)=>"".concat(t,": ").concat(e)).join(", ")," }>")}select(e){let t=new Set(e),r=this.fields.filter(n=>t.has(n.name));return new o(r,this.metadata)}selectAt(e){let t=e.map(r=>this.fields[r]).filter(Boolean);return new o(t,this.metadata)}assign(...e){let t=e[0]instanceof o?e[0]:Array.isArray(e[0])?new o(e[0]):new o(e),r=[...this.fields],n=Fs(Fs(new Map,this.metadata),t.metadata),a=t.fields.filter(c=>{let u=r.findIndex(_=>_.name===c.name);return~u?(r[u]=c.clone({metadata:Fs(Fs(new Map,r[u].metadata),c.metadata)}))&&!1:!0}),l=Za(a,new Map);return new o([...r,...a],n,new Map([...this.dictionaries,...l]))}};de.prototype.fields=null;de.prototype.metadata=null;de.prototype.dictionaries=null;var ie=class o{static new(...e){let[t,r,n,a]=e;return e[0]&&typeof e[0]=="object"&&({name:t}=e[0],r===void 0&&(r=e[0].type),n===void 0&&(n=e[0].nullable),a===void 0&&(a=e[0].metadata)),new o("".concat(t),r,n,a)}constructor(e,t,r=!1,n){this.name=e,this.type=t,this.nullable=r,this.metadata=n||new Map}get typeId(){return this.type.typeId}get[Symbol.toStringTag](){return"Field"}toString(){return"".concat(this.name,": ").concat(this.type)}clone(...e){let[t,r,n,a]=e;return!e[0]||typeof e[0]!="object"?[t=this.name,r=this.type,n=this.nullable,a=this.metadata]=e:{name:t=this.name,type:r=this.type,nullable:n=this.nullable,metadata:a=this.metadata}=e[0],o.new(t,r,n,a)}};ie.prototype.type=null;ie.prototype.name=null;ie.prototype.nullable=null;ie.prototype.metadata=null;function Fs(o,e){return new Map([...o||new Map,...e||new Map])}function Za(o,e=new Map){for(let t=-1,r=o.length;++t0&&Za(a.children,e)}return e}var L_=Br,D_=Ke,ir=class{static decode(e){e=new D_(j(e));let t=rt.getRootAsFooter(e),r=de.decode(t.schema(),new Map,t.version());return new eo(r,t)}static encode(e){let t=new L_,r=de.encode(t,e.schema);rt.startRecordBatchesVector(t,e.numRecordBatches);for(let l of[...e.recordBatches()].slice().reverse())sr.encode(t,l);let n=t.endVector();rt.startDictionariesVector(t,e.numDictionaries);for(let l of[...e.dictionaryBatches()].slice().reverse())sr.encode(t,l);let a=t.endVector();return rt.startFooter(t),rt.addSchema(t,r),rt.addVersion(t,ue.V5),rt.addRecordBatches(t,n),rt.addDictionaries(t,a),rt.finishFooterBuffer(t,rt.endFooter(t)),t.asUint8Array()}get numRecordBatches(){return this._recordBatches.length}get numDictionaries(){return this._dictionaryBatches.length}constructor(e,t=ue.V5,r,n){this.schema=e,this.version=t,r&&(this._recordBatches=r),n&&(this._dictionaryBatches=n)}*recordBatches(){for(let e,t=-1,r=this.numRecordBatches;++t=0&&e=0&&e=0&&e=0&&ethis._closedPromiseResolve=e)}get closed(){return this._closedPromise}cancel(e){return B(this,void 0,void 0,function*(){yield this.return(e)})}write(e){this._ensureOpen()&&(this.resolvers.length<=0?this._values.push(e):this.resolvers.shift().resolve({done:!1,value:e}))}abort(e){this._closedPromiseResolve&&(this.resolvers.length<=0?this._error={error:e}:this.resolvers.shift().reject({done:!0,value:e}))}close(){if(this._closedPromiseResolve){let{resolvers:e}=this;for(;e.length>0;)e.shift().resolve(be);this._closedPromiseResolve(),this._closedPromiseResolve=void 0}}[Symbol.asyncIterator](){return this}toDOMStream(e){return Be.toDOMStream(this._closedPromiseResolve||this._error?this:this._values,e)}toNodeStream(e){return Be.toNodeStream(this._closedPromiseResolve||this._error?this:this._values,e)}throw(e){return B(this,void 0,void 0,function*(){return yield this.abort(e),be})}return(e){return B(this,void 0,void 0,function*(){return yield this.close(),be})}read(e){return B(this,void 0,void 0,function*(){return(yield this.next(e,"read")).value})}peek(e){return B(this,void 0,void 0,function*(){return(yield this.next(e,"peek")).value})}next(...e){return this._values.length>0?Promise.resolve({done:!1,value:this._values.shift()}):this._error?Promise.reject({done:!0,value:this._error.error}):this._closedPromiseResolve?new Promise((t,r)=>{this.resolvers.push({resolve:t,reject:r})}):Promise.resolve(be)}_ensureOpen(){if(this._closedPromiseResolve)return!0;throw new Error("AsyncQueue is closed")}};var Ut=class extends Ts{write(e){if((e=j(e)).byteLength>0)return super.write(e)}toString(e=!1){return e?In(this.toUint8Array(!0)):this.toUint8Array(!1).then(In)}toUint8Array(e=!1){return e?Je(this._values)[0]:B(this,void 0,void 0,function*(){var t,r,n,a;let l=[],c=0;try{for(var u=!0,_=_t(this),d;d=yield _.next(),t=d.done,!t;u=!0){a=d.value,u=!1;let f=a;l.push(f),c+=f.byteLength}}catch(f){r={error:f}}finally{try{!u&&!t&&(n=_.return)&&(yield n.call(_))}finally{if(r)throw r.error}}return Je(l,c)[0]})}},Ot=class{constructor(e){e&&(this.source=new to(Be.fromIterable(e)))}[Symbol.iterator](){return this}next(e){return this.source.next(e)}throw(e){return this.source.throw(e)}return(e){return this.source.return(e)}peek(e){return this.source.peek(e)}read(e){return this.source.read(e)}},lt=class o{constructor(e){e instanceof o?this.source=e.source:e instanceof Ut?this.source=new ar(Be.fromAsyncIterable(e)):Gi(e)?this.source=new ar(Be.fromNodeStream(e)):Mn(e)?this.source=new ar(Be.fromDOMStream(e)):ki(e)?this.source=new ar(Be.fromDOMStream(e.body)):ft(e)?this.source=new ar(Be.fromIterable(e)):dt(e)?this.source=new ar(Be.fromAsyncIterable(e)):it(e)&&(this.source=new ar(Be.fromAsyncIterable(e)))}[Symbol.asyncIterator](){return this}next(e){return this.source.next(e)}throw(e){return this.source.throw(e)}return(e){return this.source.return(e)}get closed(){return this.source.closed}cancel(e){return this.source.cancel(e)}peek(e){return this.source.peek(e)}read(e){return this.source.read(e)}},to=class{constructor(e){this.source=e}cancel(e){this.return(e)}peek(e){return this.next(e,"peek").value}read(e){return this.next(e,"read").value}next(e,t="read"){return this.source.next({cmd:t,size:e})}throw(e){return Object.create(this.source.throw&&this.source.throw(e)||be)}return(e){return Object.create(this.source.return&&this.source.return(e)||be)}},ar=class{constructor(e){this.source=e,this._closedPromise=new Promise(t=>this._closedPromiseResolve=t)}cancel(e){return B(this,void 0,void 0,function*(){yield this.return(e)})}get closed(){return this._closedPromise}read(e){return B(this,void 0,void 0,function*(){return(yield this.next(e,"read")).value})}peek(e){return B(this,void 0,void 0,function*(){return(yield this.next(e,"peek")).value})}next(e){return B(this,arguments,void 0,function*(t,r="read"){return yield this.source.next({cmd:r,size:t})})}throw(e){return B(this,void 0,void 0,function*(){let t=this.source.throw&&(yield this.source.throw(e))||be;return this._closedPromiseResolve&&this._closedPromiseResolve(),this._closedPromiseResolve=void 0,Object.create(t)})}return(e){return B(this,void 0,void 0,function*(){let t=this.source.return&&(yield this.source.return(e))||be;return this._closedPromiseResolve&&this._closedPromiseResolve(),this._closedPromiseResolve=void 0,Object.create(t)})}};var ti=class extends Ot{constructor(e,t){super(),this.position=0,this.buffer=j(e),this.size=t===void 0?this.buffer.byteLength:t}readInt32(e){let{buffer:t,byteOffset:r}=this.readAt(e,4);return new DataView(t,r).getInt32(0,!0)}seek(e){return this.position=Math.min(e,this.size),eri,Int128:()=>ni,Int64:()=>or,Uint64:()=>Ae});function vn(o){return o<0&&(o=4294967295+o+1),"0x".concat(o.toString(16))}var bn=8,ro=[1,10,100,1e3,1e4,1e5,1e6,1e7,1e8],ri=class{constructor(e){this.buffer=e}high(){return this.buffer[1]}low(){return this.buffer[0]}_times(e){let t=new Uint32Array([this.buffer[1]>>>16,this.buffer[1]&65535,this.buffer[0]>>>16,this.buffer[0]&65535]),r=new Uint32Array([e.buffer[1]>>>16,e.buffer[1]&65535,e.buffer[0]>>>16,e.buffer[0]&65535]),n=t[3]*r[3];this.buffer[0]=n&65535;let a=n>>>16;return n=t[2]*r[3],a+=n,n=t[3]*r[2]>>>0,a+=n,this.buffer[0]+=a<<16,this.buffer[1]=a>>>0>>16,this.buffer[1]+=t[1]*r[3]+t[2]*r[2]+t[3]*r[1],this.buffer[1]+=t[0]*r[3]+t[1]*r[2]+t[2]*r[1]+t[3]*r[0]<<16,this}_plus(e){let t=this.buffer[0]+e.buffer[0]>>>0;this.buffer[1]+=e.buffer[1],t>>0&&++this.buffer[1],this.buffer[0]=t}lessThan(e){return this.buffer[1]>>0,t[2]=this.buffer[2]+e.buffer[2]>>>0,t[1]=this.buffer[1]+e.buffer[1]>>>0,t[0]=this.buffer[0]+e.buffer[0]>>>0,t[0]>>0&&++t[1],t[1]>>0&&++t[2],t[2]>>0&&++t[3],this.buffer[3]=t[3],this.buffer[2]=t[2],this.buffer[1]=t[1],this.buffer[0]=t[0],this}hex(){return"".concat(vn(this.buffer[3])," ").concat(vn(this.buffer[2])," ").concat(vn(this.buffer[1])," ").concat(vn(this.buffer[0]))}static multiply(e,t){return new o(new Uint32Array(e.buffer)).times(t)}static add(e,t){return new o(new Uint32Array(e.buffer)).plus(t)}static from(e,t=new Uint32Array(4)){return o.fromString(typeof e=="string"?e:e.toString(),t)}static fromNumber(e,t=new Uint32Array(4)){return o.fromString(e.toString(),t)}static fromString(e,t=new Uint32Array(4)){let r=e.startsWith("-"),n=e.length,a=new o(t);for(let l=r?1:0;l0&&this.readData(e,r)||new Uint8Array(0)}readOffsets(e,t){return this.readData(e,t)}readTypeIds(e,t){return this.readData(e,t)}readData(e,{length:t,offset:r}=this.nextBufferRange()){return this.bytes.subarray(r,r+t)}readDictionary(e){return this.dictionaries.get(e.id)}},xs=class extends ii{constructor(e,t,r,n,a){super(new Uint8Array(0),t,r,n,a),this.sources=e}readNullBitmap(e,t,{offset:r}=this.nextBufferRange()){return t<=0?new Uint8Array(0):Rr(this.sources[r])}readOffsets(e,{offset:t}=this.nextBufferRange()){return ne(Uint8Array,ne(e.OffsetArrayType,this.sources[t]))}readTypeIds(e,{offset:t}=this.nextBufferRange()){return ne(Uint8Array,ne(e.ArrayType,this.sources[t]))}readData(e,{offset:t}=this.nextBufferRange()){let{sources:r}=this;return G.isTimestamp(e)?ne(Uint8Array,or.convertArray(r[t])):(G.isInt(e)||G.isTime(e))&&e.bitWidth===64||G.isDuration(e)?ne(Uint8Array,or.convertArray(r[t])):G.isDate(e)&&e.unit===Le.MILLISECOND?ne(Uint8Array,or.convertArray(r[t])):G.isDecimal(e)?ne(Uint8Array,ni.convertArray(r[t])):G.isBinary(e)||G.isLargeBinary(e)||G.isFixedSizeBinary(e)?F_(r[t]):G.isBool(e)?Rr(r[t]):G.isUtf8(e)||G.isLargeUtf8(e)?Pt(r[t].join("")):ne(Uint8Array,ne(e.ArrayType,r[t].map(n=>+n)))}};function F_(o){let e=o.join(""),t=new Uint8Array(e.length/2);for(let r=0;r>1]=Number.parseInt(e.slice(r,r+2),16);return t}var yn=class extends je{constructor(e){super(e),this._values=new Lt(Uint8Array)}get byteLength(){let e=this._pendingLength+this.length*4;return this._offsets&&(e+=this._offsets.byteLength),this._values&&(e+=this._values.byteLength),this._nulls&&(e+=this._nulls.byteLength),e}setValue(e,t){return super.setValue(e,j(t))}_flushPending(e,t){let r=this._offsets,n=this._values.reserve(t).buffer,a=0;for(let[l,c]of e)if(c===void 0)r.set(l,0);else{let u=c.length;n.set(c,a),r.set(l,u),a+=u}}};var Sn=class extends je{constructor(e){super(e),this._values=new Lt(Uint8Array)}get byteLength(){let e=this._pendingLength+this.length*4;return this._offsets&&(e+=this._offsets.byteLength),this._values&&(e+=this._values.byteLength),this._nulls&&(e+=this._nulls.byteLength),e}setValue(e,t){return super.setValue(e,j(t))}_flushPending(e,t){let r=this._offsets,n=this._values.reserve(t).buffer,a=0;for(let[l,c]of e)if(c===void 0)r.set(l,BigInt(0));else{let u=c.length;n.set(c,a),r.set(l,BigInt(u)),a+=u}}};var Ps=class extends Se{constructor(e){super(e),this._values=new gn}setValue(e,t){this._values.set(e,+t)}};var Vr=class extends xe{};Vr.prototype._setValue=Ga;var si=class extends Vr{};si.prototype._setValue=ts;var ai=class extends Vr{};ai.prototype._setValue=rs;var oi=class extends xe{};oi.prototype._setValue=Ra;var Cs=class extends Se{constructor({type:e,nullValues:t,dictionaryHashFunction:r}){super({type:new et(e.dictionary,e.indices,e.id,e.isOrdered)}),this._nulls=null,this._dictionaryOffset=0,this._keysToIndices=Object.create(null),this.indices=zr({type:this.type.indices,nullValues:t}),this.dictionary=zr({type:this.type.dictionary,nullValues:null}),typeof r=="function"&&(this.valueToKey=r)}get values(){return this.indices.values}get nullCount(){return this.indices.nullCount}get nullBitmap(){return this.indices.nullBitmap}get byteLength(){return this.indices.byteLength+this.dictionary.byteLength}get reservedLength(){return this.indices.reservedLength+this.dictionary.reservedLength}get reservedByteLength(){return this.indices.reservedByteLength+this.dictionary.reservedByteLength}isValid(e){return this.indices.isValid(e)}setValid(e,t){let r=this.indices;return t=r.setValid(e,t),this.length=r.length,t}setValue(e,t){let r=this._keysToIndices,n=this.valueToKey(t),a=r[n];return a===void 0&&(r[n]=a=this._dictionaryOffset+this.dictionary.append(t).length-1),this.indices.setValue(e,a)}flush(){let e=this.type,t=this._dictionary,r=this.dictionary.toVector(),n=this.indices.flush().clone(e);return n.dictionary=t?t.concat(r):r,this.finished||(this._dictionaryOffset+=r.length),this._dictionary=n.dictionary,this.clear(),n}finish(){return this.indices.finish(),this.dictionary.finish(),this._dictionaryOffset=0,this._keysToIndices=Object.create(null),super.finish()}clear(){return this.indices.clear(),this.dictionary.clear(),super.clear()}valueToKey(e){return typeof e=="string"?e:"".concat(e)}};var li=class extends xe{};li.prototype._setValue=Ba;var Is=class extends Se{setValue(e,t){let[r]=this.children,n=e*this.stride;for(let a=-1,l=t.length;++a0)throw new Error("FixedSizeListBuilder can only have one child.");let r=this.children.push(e);return this.type=new Et(this.type.listSize,new ie(t,e.type,!0)),r}};var jr=class extends xe{setValue(e,t){this._values.set(e,t)}},Ms=class extends jr{setValue(e,t){super.setValue(e,Qn(t))}},ks=class extends jr{},Bs=class extends jr{};var $r=class extends xe{};$r.prototype._setValue=Ha;var ci=class extends $r{};ci.prototype._setValue=_s;var ui=class extends $r{};ui.prototype._setValue=ds;var lr=class extends xe{};lr.prototype._setValue=Na;var _i=class extends lr{};_i.prototype._setValue=ps;var di=class extends lr{};di.prototype._setValue=ms;var fi=class extends lr{};fi.prototype._setValue=gs;var pi=class extends lr{};pi.prototype._setValue=hs;var ct=class extends xe{setValue(e,t){this._values.set(e,t)}},Gs=class extends ct{},Us=class extends ct{},Os=class extends ct{},Rs=class extends ct{},Hs=class extends ct{},Ns=class extends ct{},Ws=class extends ct{},Vs=class extends ct{};var zs=class extends je{constructor(e){super(e),this._offsets=new hn(e.type)}addChild(e,t="0"){if(this.numChildren>0)throw new Error("ListBuilder can only have one child.");return this.children[this.numChildren]=e,this.type=new yt(new ie(t,e.type,!0)),this.numChildren-1}_flushPending(e){let t=this._offsets,[r]=this.children;for(let[n,a]of e)if(typeof a>"u")t.set(n,0);else{let l=a,c=l.length,u=t.set(n,c).buffer[n];for(let _=-1;++_0)throw new Error("ListBuilder can only have one child.");return this.children[this.numChildren]=e,this.type=new wt(new ie(t,e.type,!0),this.type.keysSorted),this.numChildren-1}_flushPending(e){let t=this._offsets,[r]=this.children;for(let[n,a]of e)if(a===void 0)t.set(n,0);else{let{[n]:l,[n+1]:c}=t.set(n,a.size).buffer;for(let u of a.entries())if(r.set(l,u),++l>=c)break}}};var $s=class extends Se{setValue(e,t){}setValid(e,t){return this.length=Math.max(e+1,this.length),t}};var qs=class extends Se{setValue(e,t){let{children:r,type:n}=this;switch(Array.isArray(t)||t.constructor){case!0:return n.children.forEach((a,l)=>r[l].set(e,t[l]));case Map:return n.children.forEach((a,l)=>r[l].set(e,t.get(a.name)));default:return n.children.forEach((a,l)=>r[l].set(e,t[a.name]))}}setValid(e,t){return super.setValid(e,t)||this.children.forEach(r=>r.setValid(e,t)),t}addChild(e,t="".concat(this.numChildren)){let r=this.children.push(e);return this.type=new ve([...this.type.children,new ie(t,e.type,!0)]),r}};var cr=class extends xe{};cr.prototype._setValue=Ua;var mi=class extends cr{};mi.prototype._setValue=ns;var gi=class extends cr{};gi.prototype._setValue=is;var hi=class extends cr{};hi.prototype._setValue=ss;var vi=class extends cr{};vi.prototype._setValue=as;var ur=class extends xe{};ur.prototype._setValue=Oa;var bi=class extends ur{};bi.prototype._setValue=os;var yi=class extends ur{};yi.prototype._setValue=ls;var Si=class extends ur{};Si.prototype._setValue=cs;var Ei=class extends ur{};Ei.prototype._setValue=us;var En=class extends Se{constructor(e){super(e),this._typeIds=new nr(Int8Array,0,1),typeof e.valueToChildTypeId=="function"&&(this._valueToChildTypeId=e.valueToChildTypeId)}get typeIdToChildIndex(){return this.type.typeIdToChildIndex}append(e,t){return this.set(this.length,e,t)}set(e,t,r){return r===void 0&&(r=this._valueToChildTypeId(this,t,e)),this.setValue(e,t,r),this}setValue(e,t,r){this._typeIds.set(e,r);let n=this.type.typeIdToChildIndex[r],a=this.children[n];a==null||a.set(e,t)}addChild(e,t="".concat(this.children.length)){let r=this.children.push(e),{type:{children:n,mode:a,typeIds:l}}=this,c=[...n,new ie(t,e.type)];return this.type=new St(a,[...l,r],c),r}_valueToChildTypeId(e,t,r){throw new Error("Cannot map UnionBuilder value to child typeId. Pass the `childTypeId` as the second argument to unionBuilder.append(), or supply a `valueToChildTypeId` function as part of the UnionBuilder constructor options.")}},Xs=class extends En{},Qs=class extends En{constructor(e){super(e),this._offsets=new nr(Int32Array)}setValue(e,t,r){let n=this._typeIds.set(e,r).buffer[e],a=this.getChildAt(this.type.typeIdToChildIndex[n]),l=this._offsets.set(e,a.length).buffer[e];a==null||a.set(l,t)}};var wi=class extends je{constructor(e){super(e),this._values=new Lt(Uint8Array)}get byteLength(){let e=this._pendingLength+this.length*4;return this._offsets&&(e+=this._offsets.byteLength),this._values&&(e+=this._values.byteLength),this._nulls&&(e+=this._nulls.byteLength),e}setValue(e,t){return super.setValue(e,Pt(t))}_flushPending(e,t){}};wi.prototype._flushPending=yn.prototype._flushPending;var Ai=class extends je{constructor(e){super(e),this._values=new Lt(Uint8Array)}get byteLength(){let e=this._pendingLength+this.length*4;return this._offsets&&(e+=this._offsets.byteLength),this._values&&(e+=this._values.byteLength),this._nulls&&(e+=this._nulls.byteLength),e}setValue(e,t){return super.setValue(e,Pt(t))}_flushPending(e,t){}};Ai.prototype._flushPending=Sn.prototype._flushPending;var io=class extends R{visitNull(){return $s}visitBool(){return Ps}visitInt(){return ct}visitInt8(){return Gs}visitInt16(){return Us}visitInt32(){return Os}visitInt64(){return Rs}visitUint8(){return Hs}visitUint16(){return Ns}visitUint32(){return Ws}visitUint64(){return Vs}visitFloat(){return jr}visitFloat16(){return Ms}visitFloat32(){return ks}visitFloat64(){return Bs}visitUtf8(){return wi}visitLargeUtf8(){return Ai}visitBinary(){return yn}visitLargeBinary(){return Sn}visitFixedSizeBinary(){return li}visitDate(){return Vr}visitDateDay(){return si}visitDateMillisecond(){return ai}visitTimestamp(){return cr}visitTimestampSecond(){return mi}visitTimestampMillisecond(){return gi}visitTimestampMicrosecond(){return hi}visitTimestampNanosecond(){return vi}visitTime(){return ur}visitTimeSecond(){return bi}visitTimeMillisecond(){return yi}visitTimeMicrosecond(){return Si}visitTimeNanosecond(){return Ei}visitDecimal(){return oi}visitList(){return zs}visitStruct(){return qs}visitUnion(){return En}visitDenseUnion(){return Qs}visitSparseUnion(){return Xs}visitDictionary(){return Cs}visitInterval(){return $r}visitIntervalDayTime(){return ci}visitIntervalYearMonth(){return ui}visitDuration(){return lr}visitDurationSecond(){return _i}visitDurationMillisecond(){return di}visitDurationMicrosecond(){return fi}visitDurationNanosecond(){return pi}visitFixedSizeList(){return Is}visitMap(){return js}},ec=new io;var V=class extends R{compareSchemas(e,t){return e===t||t instanceof e.constructor&&this.compareManyFields(e.fields,t.fields)}compareManyFields(e,t){return e===t||Array.isArray(e)&&Array.isArray(t)&&e.length===t.length&&e.every((r,n)=>this.compareFields(r,t[n]))}compareFields(e,t){return e===t||t instanceof e.constructor&&e.name===t.name&&e.nullable===t.nullable&&this.visit(e.type,t.type)}};function We(o,e){return e instanceof o.constructor}function qr(o,e){return o===e||We(o,e)}function _r(o,e){return o===e||We(o,e)&&o.bitWidth===e.bitWidth&&o.isSigned===e.isSigned}function Ys(o,e){return o===e||We(o,e)&&o.precision===e.precision}function T_(o,e){return o===e||We(o,e)&&o.byteWidth===e.byteWidth}function so(o,e){return o===e||We(o,e)&&o.unit===e.unit}function Li(o,e){return o===e||We(o,e)&&o.unit===e.unit&&o.timezone===e.timezone}function Di(o,e){return o===e||We(o,e)&&o.unit===e.unit&&o.bitWidth===e.bitWidth}function x_(o,e){return o===e||We(o,e)&&o.children.length===e.children.length&&Rt.compareManyFields(o.children,e.children)}function P_(o,e){return o===e||We(o,e)&&o.children.length===e.children.length&&Rt.compareManyFields(o.children,e.children)}function ao(o,e){return o===e||We(o,e)&&o.mode===e.mode&&o.typeIds.every((t,r)=>t===e.typeIds[r])&&Rt.compareManyFields(o.children,e.children)}function C_(o,e){return o===e||We(o,e)&&o.id===e.id&&o.isOrdered===e.isOrdered&&Rt.visit(o.indices,e.indices)&&Rt.visit(o.dictionary,e.dictionary)}function oo(o,e){return o===e||We(o,e)&&o.unit===e.unit}function Fi(o,e){return o===e||We(o,e)&&o.unit===e.unit}function I_(o,e){return o===e||We(o,e)&&o.listSize===e.listSize&&o.children.length===e.children.length&&Rt.compareManyFields(o.children,e.children)}function M_(o,e){return o===e||We(o,e)&&o.keysSorted===e.keysSorted&&o.children.length===e.children.length&&Rt.compareManyFields(o.children,e.children)}V.prototype.visitNull=qr;V.prototype.visitBool=qr;V.prototype.visitInt=_r;V.prototype.visitInt8=_r;V.prototype.visitInt16=_r;V.prototype.visitInt32=_r;V.prototype.visitInt64=_r;V.prototype.visitUint8=_r;V.prototype.visitUint16=_r;V.prototype.visitUint32=_r;V.prototype.visitUint64=_r;V.prototype.visitFloat=Ys;V.prototype.visitFloat16=Ys;V.prototype.visitFloat32=Ys;V.prototype.visitFloat64=Ys;V.prototype.visitUtf8=qr;V.prototype.visitLargeUtf8=qr;V.prototype.visitBinary=qr;V.prototype.visitLargeBinary=qr;V.prototype.visitFixedSizeBinary=T_;V.prototype.visitDate=so;V.prototype.visitDateDay=so;V.prototype.visitDateMillisecond=so;V.prototype.visitTimestamp=Li;V.prototype.visitTimestampSecond=Li;V.prototype.visitTimestampMillisecond=Li;V.prototype.visitTimestampMicrosecond=Li;V.prototype.visitTimestampNanosecond=Li;V.prototype.visitTime=Di;V.prototype.visitTimeSecond=Di;V.prototype.visitTimeMillisecond=Di;V.prototype.visitTimeMicrosecond=Di;V.prototype.visitTimeNanosecond=Di;V.prototype.visitDecimal=qr;V.prototype.visitList=x_;V.prototype.visitStruct=P_;V.prototype.visitUnion=ao;V.prototype.visitDenseUnion=ao;V.prototype.visitSparseUnion=ao;V.prototype.visitDictionary=C_;V.prototype.visitInterval=oo;V.prototype.visitIntervalDayTime=oo;V.prototype.visitIntervalYearMonth=oo;V.prototype.visitDuration=Fi;V.prototype.visitDurationSecond=Fi;V.prototype.visitDurationMillisecond=Fi;V.prototype.visitDurationMicrosecond=Fi;V.prototype.visitDurationNanosecond=Fi;V.prototype.visitFixedSizeList=I_;V.prototype.visitMap=M_;var Rt=new V;function Xr(o,e){return Rt.compareSchemas(o,e)}function tc(o,e){return Rt.compareFields(o,e)}function rc(o,e){return Rt.visit(o,e)}function zr(o){let e=o.type,t=new(ec.getVisitFn(e)())(o);if(e.children&&e.children.length>0){let r=o.children||[],n={nullValues:o.nullValues},a=Array.isArray(r)?(l,c)=>r[c]||n:({name:l})=>r[l]||n;for(let[l,c]of e.children.entries()){let{type:u}=c,_=a(c,l);t.children.push(zr(Object.assign(Object.assign({},_),{type:u})))}}return t}function Js(o,e){return k_(o,e.map(t=>t.data.concat()))}function k_(o,e){let t=[...o.fields],r=[],n={numBatches:e.reduce((f,p)=>Math.max(f,p.length),0)},a=0,l=0,c=-1,u=e.length,_,d=[];for(;n.numBatches-- >0;){for(l=Number.POSITIVE_INFINITY,c=-1;++c0&&(r[a++]=K({type:new ve(t),length:l,nullCount:0,children:d.slice()})))}return[o=o.assign(t),r.map(f=>new De(o,f))]}function B_(o,e,t,r,n){var a;let l=(e+63&-64)>>3;for(let c=-1,u=r.length;++c=e)d===e?t[c]=_:(t[c]=_.slice(0,e),n.numBatches=Math.max(n.numBatches,r[c].unshift(_.slice(e,d-e))));else{let f=o[c];o[c]=f.clone({nullable:!0}),t[c]=(a=_==null?void 0:_._changeLengthAndBackfillNullBitmap(e))!==null&&a!==void 0?a:K({type:f.type,length:e,nullCount:e,nullBitmap:new Uint8Array(l)})}}return t}var nc,Ve=class o{constructor(...e){var t,r;if(e.length===0)return this.batches=[],this.schema=new de([]),this._offsets=[0],this;let n,a;e[0]instanceof de&&(n=e.shift()),e.at(-1)instanceof Uint32Array&&(a=e.pop());let l=u=>{if(u){if(u instanceof De)return[u];if(u instanceof o)return u.batches;if(u instanceof ce){if(u.type instanceof ve)return[new De(new de(u.type.children),u)]}else{if(Array.isArray(u))return u.flatMap(_=>l(_));if(typeof u[Symbol.iterator]=="function")return[...u].flatMap(_=>l(_));if(typeof u=="object"){let _=Object.keys(u),d=_.map(m=>new ae([u[m]])),f=n!=null?n:new de(_.map((m,g)=>new ie(String(m),d[g].type,d[g].nullable))),[,p]=Js(f,d);return p.length===0?[new De(u)]:p}}}return[]},c=e.flatMap(u=>l(u));if(n=(r=n!=null?n:(t=c[0])===null||t===void 0?void 0:t.schema)!==null&&r!==void 0?r:new de([]),!(n instanceof de))throw new TypeError("Table constructor expects a [Schema, RecordBatch[]] pair.");for(let u of c){if(!(u instanceof De))throw new TypeError("Table constructor expects a [Schema, RecordBatch[]] pair.");if(!Xr(n,u.schema))throw new TypeError("Table and inner RecordBatch schemas must be equivalent.")}this.schema=n,this.batches=c,this._offsets=a!=null?a:Es(this.data)}get data(){return this.batches.map(({data:e})=>e)}get numCols(){return this.schema.fields.length}get numRows(){return this.data.reduce((e,t)=>e+t.length,0)}get nullCount(){return this._nullCount===-1&&(this._nullCount=Ss(this.data)),this._nullCount}isValid(e){return!1}get(e){return null}at(e){return this.get(Gr(e,this.numRows))}set(e,t){}indexOf(e,t){return-1}[Symbol.iterator](){return this.batches.length>0?mn.visit(new ae(this.data)):new Array(0)[Symbol.iterator]()}toArray(){return[...this]}toString(){return"[\n ".concat(this.toArray().join(",\n "),"\n]")}concat(...e){let t=this.schema,r=this.data.concat(e.flatMap(({data:n})=>n));return new o(t,r.map(n=>new De(t,n)))}slice(e,t){let r=this.schema;[e,t]=Yn({length:this.numRows},e,t);let n=ws(this.data,this._offsets,e,t);return new o(r,n.map(a=>new De(r,a)))}getChild(e){return this.getChildAt(this.schema.fields.findIndex(t=>t.name===e))}getChildAt(e){if(e>-1&&er.children[e]);if(t.length===0){let{type:r}=this.schema.fields[e],n=K({type:r,length:0,nullCount:0});t.push(n._changeLengthAndBackfillNullBitmap(this.numRows))}return new ae(t)}return null}setChild(e,t){var r;return this.setChildAt((r=this.schema.fields)===null||r===void 0?void 0:r.findIndex(n=>n.name===e),t)}setChildAt(e,t){let r=this.schema,n=[...this.batches];if(e>-1&&ethis.getChildAt(_));[a[e],c[e]]=[l,t],[r,n]=Js(r,c)}return new o(r,n)}select(e){let t=this.schema.fields.reduce((r,n,a)=>r.set(n.name,a),new Map);return this.selectAt(e.map(r=>t.get(r)).filter(r=>r>-1))}selectAt(e){let t=this.schema.selectAt(e),r=this.batches.map(n=>n.selectAt(e));return new o(t,r)}assign(e){let t=this.schema.fields,[r,n]=e.schema.fields.reduce((c,u,_)=>{let[d,f]=c,p=t.findIndex(m=>m.name===u.name);return~p?f[p]=_:d.push(_),c},[[],[]]),a=this.schema.assign(e.schema),l=[...t.map((c,u)=>[u,n[u]]).map(([c,u])=>u===void 0?this.getChildAt(c):e.getChildAt(u)),...r.map(c=>e.getChildAt(c))].filter(Boolean);return new o(...Js(a,l))}};nc=Symbol.toStringTag;Ve[nc]=(o=>(o.schema=null,o.batches=[],o._offsets=new Uint32Array([0]),o._nullCount=-1,o[Symbol.isConcatSpreadable]=!0,o.isValid=pn(Zn),o.get=pn(Te.getVisitFn(v.Struct)),o.set=As(Ge.getVisitFn(v.Struct)),o.indexOf=Ls(Hr.getVisitFn(v.Struct)),"Table"))(Ve.prototype);var sc,De=class o{constructor(...e){switch(e.length){case 2:{if([this.schema]=e,!(this.schema instanceof de))throw new TypeError("RecordBatch constructor expects a [Schema, Data] pair.");if([,this.data=K({nullCount:0,type:new ve(this.schema.fields),children:this.schema.fields.map(t=>K({type:t.type,nullCount:0}))})]=e,!(this.data instanceof ce))throw new TypeError("RecordBatch constructor expects a [Schema, Data] pair.");[this.schema,this.data]=ic(this.schema,this.data.children);break}case 1:{let[t]=e,{fields:r,children:n,length:a}=Object.keys(t).reduce((u,_,d)=>(u.children[d]=t[_],u.length=Math.max(u.length,t[_].length),u.fields[d]=ie.new({name:_,type:t[_].type,nullable:!0}),u),{length:0,fields:new Array,children:new Array}),l=new de(r),c=K({type:new ve(r),length:a,children:n,nullCount:0});[this.schema,this.data]=ic(l,c.children,a);break}default:throw new TypeError("RecordBatch constructor expects an Object mapping names to child Data, or a [Schema, Data] pair.")}}get dictionaries(){return this._dictionaries||(this._dictionaries=ac(this.schema.fields,this.data.children))}get numCols(){return this.schema.fields.length}get numRows(){return this.data.length}get nullCount(){return this.data.nullCount}isValid(e){return this.data.getValid(e)}get(e){return Te.visit(this.data,e)}at(e){return this.get(Gr(e,this.numRows))}set(e,t){return Ge.visit(this.data,e,t)}indexOf(e,t){return Hr.visit(this.data,e,t)}[Symbol.iterator](){return mn.visit(new ae([this.data]))}toArray(){return[...this]}concat(...e){return new Ve(this.schema,[this,...e])}slice(e,t){let[r]=new ae([this.data]).slice(e,t).data;return new o(this.schema,r)}getChild(e){var t;return this.getChildAt((t=this.schema.fields)===null||t===void 0?void 0:t.findIndex(r=>r.name===e))}getChildAt(e){return e>-1&&en.name===e),t)}setChildAt(e,t){let r=this.schema,n=this.data;if(e>-1&&ec.name===a);~l&&(n[l]=this.data.children[l])}return new o(t,K({type:r,length:this.numRows,children:n}))}selectAt(e){let t=this.schema.selectAt(e),r=e.map(a=>this.data.children[a]).filter(Boolean),n=K({type:new ve(t.fields),length:this.numRows,children:r});return new o(t,n)}};sc=Symbol.toStringTag;De[sc]=(o=>(o._nullCount=-1,o[Symbol.isConcatSpreadable]=!0,"RecordBatch"))(De.prototype);function ic(o,e,t=e.reduce((r,n)=>Math.max(r,n.length),0)){var r;let n=[...o.fields],a=[...e],l=(t+63&-64)>>3;for(let[c,u]of o.fields.entries()){let _=e[c];(!_||_.length!==t)&&(n[c]=u.clone({nullable:!0}),a[c]=(r=_==null?void 0:_._changeLengthAndBackfillNullBitmap(t))!==null&&r!==void 0?r:K({type:u.type,length:t,nullCount:t,nullBitmap:new Uint8Array(l)}))}return[o.assign(n),K({type:new ve(n),length:t,children:a})]}function ac(o,e,t=new Map){var r,n;if(((r=o==null?void 0:o.length)!==null&&r!==void 0?r:0)>0&&(o==null?void 0:o.length)===(e==null?void 0:e.length))for(let a=-1,l=o.length;++aK({type:n.type})),r=K({type:new ve(e.fields),nullCount:0,children:t});super(e,r)}};var Dt=class o{constructor(){this.bb=null,this.bb_pos=0}__init(e,t){return this.bb_pos=e,this.bb=t,this}static getRootAsMessage(e,t){return(t||new o).__init(e.readInt32(e.position())+e.position(),e)}static getSizePrefixedRootAsMessage(e,t){return e.setPosition(e.position()+4),(t||new o).__init(e.readInt32(e.position())+e.position(),e)}version(){let e=this.bb.__offset(this.bb_pos,4);return e?this.bb.readInt16(this.bb_pos+e):ue.V1}headerType(){let e=this.bb.__offset(this.bb_pos,6);return e?this.bb.readUint8(this.bb_pos+e):se.NONE}header(e){let t=this.bb.__offset(this.bb_pos,8);return t?this.bb.__union(e,this.bb_pos+t):null}bodyLength(){let e=this.bb.__offset(this.bb_pos,10);return e?this.bb.readInt64(this.bb_pos+e):BigInt("0")}customMetadata(e,t){let r=this.bb.__offset(this.bb_pos,12);return r?(t||new Ie).__init(this.bb.__indirect(this.bb.__vector(this.bb_pos+r)+e*4),this.bb):null}customMetadataLength(){let e=this.bb.__offset(this.bb_pos,12);return e?this.bb.__vector_len(this.bb_pos+e):0}static startMessage(e){e.startObject(5)}static addVersion(e,t){e.addFieldInt16(0,t,ue.V1)}static addHeaderType(e,t){e.addFieldInt8(1,t,se.NONE)}static addHeader(e,t){e.addFieldOffset(2,t,0)}static addBodyLength(e,t){e.addFieldInt64(3,t,BigInt("0"))}static addCustomMetadata(e,t){e.addFieldOffset(4,t,0)}static createCustomMetadataVector(e,t){e.startVector(4,t.length,4);for(let r=t.length-1;r>=0;r--)e.addOffset(t[r]);return e.endVector()}static startCustomMetadataVector(e,t){e.startVector(4,t,4)}static endMessage(e){return e.endObject()}static finishMessageBuffer(e,t){e.finish(t)}static finishSizePrefixedMessageBuffer(e,t){e.finish(t,void 0,!0)}static createMessage(e,t,r,n,a,l){return o.startMessage(e),o.addVersion(e,t),o.addHeaderType(e,r),o.addHeader(e,n),o.addBodyLength(e,a),o.addCustomMetadata(e,l),o.endMessage(e)}};var lo=class extends R{visit(e,t){return e==null||t==null?void 0:super.visit(e,t)}visitNull(e,t){return zn.startNull(t),zn.endNull(t)}visitInt(e,t){return gt.startInt(t),gt.addBitWidth(t,e.bitWidth),gt.addIsSigned(t,e.isSigned),gt.endInt(t)}visitFloat(e,t){return Sr.startFloatingPoint(t),Sr.addPrecision(t,e.precision),Sr.endFloatingPoint(t)}visitBinary(e,t){return Rn.startBinary(t),Rn.endBinary(t)}visitLargeBinary(e,t){return Nn.startLargeBinary(t),Nn.endLargeBinary(t)}visitBool(e,t){return Hn.startBool(t),Hn.endBool(t)}visitUtf8(e,t){return $n.startUtf8(t),$n.endUtf8(t)}visitLargeUtf8(e,t){return Wn.startLargeUtf8(t),Wn.endLargeUtf8(t)}visitDecimal(e,t){return kt.startDecimal(t),kt.addScale(t,e.scale),kt.addPrecision(t,e.precision),kt.addBitWidth(t,e.bitWidth),kt.endDecimal(t)}visitDate(e,t){return hr.startDate(t),hr.addUnit(t,e.unit),hr.endDate(t)}visitTime(e,t){return Wt.startTime(t),Wt.addUnit(t,e.unit),Wt.addBitWidth(t,e.bitWidth),Wt.endTime(t)}visitTimestamp(e,t){let r=e.timezone&&t.createString(e.timezone)||void 0;return Vt.startTimestamp(t),Vt.addUnit(t,e.unit),r!==void 0&&Vt.addTimezone(t,r),Vt.endTimestamp(t)}visitInterval(e,t){return Er.startInterval(t),Er.addUnit(t,e.unit),Er.endInterval(t)}visitDuration(e,t){return vr.startDuration(t),vr.addUnit(t,e.unit),vr.endDuration(t)}visitList(e,t){return Vn.startList(t),Vn.endList(t)}visitStruct(e,t){return jn.startStruct_(t),jn.endStruct_(t)}visitUnion(e,t){ht.startTypeIdsVector(t,e.typeIds.length);let r=ht.createTypeIdsVector(t,e.typeIds);return ht.startUnion(t),ht.addMode(t,e.mode),ht.addTypeIds(t,r),ht.endUnion(t)}visitDictionary(e,t){let r=this.visit(e.indices,t);return Mt.startDictionaryEncoding(t),Mt.addId(t,BigInt(e.id)),Mt.addIsOrdered(t,e.isOrdered),r!==void 0&&Mt.addIndexType(t,r),Mt.endDictionaryEncoding(t)}visitFixedSizeBinary(e,t){return br.startFixedSizeBinary(t),br.addByteWidth(t,e.byteWidth),br.endFixedSizeBinary(t)}visitFixedSizeList(e,t){return yr.startFixedSizeList(t),yr.addListSize(t,e.listSize),yr.endFixedSizeList(t)}visitMap(e,t){return wr.startMap(t),wr.addKeysSorted(t,e.keysSorted),wr.endMap(t)}},Ks=new lo;function uc(o,e=new Map){return new de(U_(o,e),Zs(o.metadata),e)}function co(o){return new Ue(o.count,dc(o.columns),fc(o.columns))}function _c(o){return new qe(co(o.data),o.id,o.isDelta)}function U_(o,e){return(o.fields||[]).filter(Boolean).map(t=>ie.fromJSON(t,e))}function oc(o,e){return(o.children||[]).filter(Boolean).map(t=>ie.fromJSON(t,e))}function dc(o){return(o||[]).reduce((e,t)=>[...e,new ut(t.count,O_(t.VALIDITY)),...dc(t.children)],[])}function fc(o,e=[]){for(let t=-1,r=(o||[]).length;++te+ +(t===0),0)}function pc(o,e){let t,r,n,a,l,c;return!e||!(a=o.dictionary)?(l=cc(o,oc(o,e)),n=new ie(o.name,l,o.nullable,Zs(o.metadata))):e.has(t=a.id)?(r=(r=a.indexType)?lc(r):new Bt,c=new et(e.get(t),r,t,a.isOrdered),n=new ie(o.name,c,o.nullable,Zs(o.metadata))):(r=(r=a.indexType)?lc(r):new Bt,e.set(t,l=cc(o,oc(o,e))),c=new et(l,r,t,a.isOrdered),n=new ie(o.name,c,o.nullable,Zs(o.metadata))),n||null}function Zs(o=[]){return new Map(o.map(({key:e,value:t})=>[e,t]))}function lc(o){return new Me(o.isSigned,o.bitWidth)}function cc(o,e){let t=o.type.name;switch(t){case"NONE":return new Ne;case"null":return new Ne;case"binary":return new zt;case"largebinary":return new jt;case"utf8":return new $t;case"largeutf8":return new qt;case"bool":return new Xt;case"list":return new yt((e||[])[0]);case"struct":return new ve(e||[]);case"struct_":return new ve(e||[])}switch(t){case"int":{let r=o.type;return new Me(r.isSigned,r.bitWidth)}case"floatingpoint":{let r=o.type;return new ot(pe[r.precision])}case"decimal":{let r=o.type;return new Qt(r.scale,r.precision,r.bitWidth)}case"date":{let r=o.type;return new Yt(Le[r.unit])}case"time":{let r=o.type;return new Jt(U[r.unit],r.bitWidth)}case"timestamp":{let r=o.type;return new Kt(U[r.unit],r.timezone)}case"interval":{let r=o.type;return new Zt(Ce[r.unit])}case"duration":{let r=o.type;return new er(U[r.unit])}case"union":{let r=o.type,[n,...a]=(r.mode+"").toLowerCase(),l=n.toUpperCase()+a.join("");return new St(ge[l],r.typeIds||[],e||[])}case"fixedsizebinary":{let r=o.type;return new tr(r.byteWidth)}case"fixedsizelist":{let r=o.type;return new Et(r.listSize,(e||[])[0])}case"map":{let r=o.type;return new wt((e||[])[0],r.keysSorted)}}throw new Error('Unrecognized type: "'.concat(t,'"'))}var R_=Br,H_=Ke,Xe=class o{static fromJSON(e,t){let r=new o(0,ue.V5,t);return r._createHeader=N_(e,t),r}static decode(e){e=new H_(j(e));let t=Dt.getRootAsMessage(e),r=t.bodyLength(),n=t.version(),a=t.headerType(),l=new o(r,n,a);return l._createHeader=W_(t,a),l}static encode(e){let t=new R_,r=-1;return e.isSchema()?r=de.encode(t,e.header()):e.isRecordBatch()?r=Ue.encode(t,e.header()):e.isDictionaryBatch()&&(r=qe.encode(t,e.header())),Dt.startMessage(t),Dt.addVersion(t,ue.V5),Dt.addHeader(t,r),Dt.addHeaderType(t,e.headerType),Dt.addBodyLength(t,BigInt(e.bodyLength)),Dt.finishMessageBuffer(t,Dt.endMessage(t)),t.asUint8Array()}static from(e,t=0){if(e instanceof de)return new o(0,ue.V5,se.Schema,e);if(e instanceof Ue)return new o(t,ue.V5,se.RecordBatch,e);if(e instanceof qe)return new o(t,ue.V5,se.DictionaryBatch,e);throw new Error("Unrecognized Message header: ".concat(e))}get type(){return this.headerType}get version(){return this._version}get headerType(){return this._headerType}get bodyLength(){return this._bodyLength}header(){return this._createHeader()}isSchema(){return this.headerType===se.Schema}isRecordBatch(){return this.headerType===se.RecordBatch}isDictionaryBatch(){return this.headerType===se.DictionaryBatch}constructor(e,t,r,n){this._version=t,this._headerType=r,this.body=new Uint8Array(0),n&&(this._createHeader=()=>n),this._bodyLength=oe(e)}},Ue=class{get nodes(){return this._nodes}get length(){return this._length}get buffers(){return this._buffers}constructor(e,t,r){this._nodes=t,this._buffers=r,this._length=oe(e)}},qe=class{get id(){return this._id}get data(){return this._data}get isDelta(){return this._isDelta}get length(){return this.data.length}get nodes(){return this.data.nodes}get buffers(){return this.data.buffers}constructor(e,t,r=!1){this._data=e,this._isDelta=r,this._id=oe(t)}},$e=class{constructor(e,t){this.offset=oe(e),this.length=oe(t)}},ut=class{constructor(e,t){this.length=oe(e),this.nullCount=oe(t)}};function N_(o,e){return()=>{switch(e){case se.Schema:return de.fromJSON(o);case se.RecordBatch:return Ue.fromJSON(o);case se.DictionaryBatch:return qe.fromJSON(o)}throw new Error("Unrecognized Message type: { name: ".concat(se[e],", type: ").concat(e," }"))}}function W_(o,e){return()=>{switch(e){case se.Schema:return de.decode(o.header(new ze),new Map,o.version());case se.RecordBatch:return Ue.decode(o.header(new Ze),o.version());case se.DictionaryBatch:return qe.decode(o.header(new Nt),o.version())}throw new Error("Unrecognized Message type: { name: ".concat(se[e],", type: ").concat(e," }"))}}ie.encode=Z_;ie.decode=J_;ie.fromJSON=pc;de.encode=K_;de.decode=V_;de.fromJSON=uc;Ue.encode=ed;Ue.decode=z_;Ue.fromJSON=co;qe.encode=td;qe.decode=j_;qe.fromJSON=_c;ut.encode=rd;ut.decode=q_;$e.encode=nd;$e.decode=$_;function V_(o,e=new Map,t=ue.V5){let r=Y_(o,e);return new de(r,ea(o),e,t)}function z_(o,e=ue.V5){if(o.compression()!==null)throw new Error("Record batch compression not implemented");return new Ue(o.length(),X_(o),Q_(o,e))}function j_(o,e=ue.V5){return new qe(Ue.decode(o.data(),e),o.id(),o.isDelta())}function $_(o){return new $e(o.offset(),o.length())}function q_(o){return new ut(o.length(),o.nullCount())}function X_(o){let e=[];for(let t,r=-1,n=-1,a=o.nodesLength();++rie.encode(o,a));ze.startFieldsVector(o,t.length);let r=ze.createFieldsVector(o,t),n=e.metadata&&e.metadata.size>0?ze.createCustomMetadataVector(o,[...e.metadata].map(([a,l])=>{let c=o.createString("".concat(a)),u=o.createString("".concat(l));return Ie.startKeyValue(o),Ie.addKey(o,c),Ie.addValue(o,u),Ie.endKeyValue(o)})):-1;return ze.startSchema(o),ze.addFields(o,r),ze.addEndianness(o,id?gr.Little:gr.Big),n!==-1&&ze.addCustomMetadata(o,n),ze.endSchema(o)}function Z_(o,e){let t=-1,r=-1,n=-1,a=e.type,l=e.typeId;G.isDictionary(a)?(l=a.dictionary.typeId,n=Ks.visit(a,o),r=Ks.visit(a.dictionary,o)):r=Ks.visit(a,o);let c=(a.children||[]).map(d=>ie.encode(o,d)),u=Re.createChildrenVector(o,c),_=e.metadata&&e.metadata.size>0?Re.createCustomMetadataVector(o,[...e.metadata].map(([d,f])=>{let p=o.createString("".concat(d)),m=o.createString("".concat(f));return Ie.startKeyValue(o),Ie.addKey(o,p),Ie.addValue(o,m),Ie.endKeyValue(o)})):-1;return e.name&&(t=o.createString(e.name)),Re.startField(o),Re.addType(o,r),Re.addTypeType(o,l),Re.addChildren(o,u),Re.addNullable(o,!!e.nullable),t!==-1&&Re.addName(o,t),n!==-1&&Re.addDictionary(o,n),_!==-1&&Re.addCustomMetadata(o,_),Re.endField(o)}function ed(o,e){let t=e.nodes||[],r=e.buffers||[];Ze.startNodesVector(o,t.length);for(let l of t.slice().reverse())ut.encode(o,l);let n=o.endVector();Ze.startBuffersVector(o,r.length);for(let l of r.slice().reverse())$e.encode(o,l);let a=o.endVector();return Ze.startRecordBatch(o),Ze.addLength(o,BigInt(e.length)),Ze.addNodes(o,n),Ze.addBuffers(o,a),Ze.endRecordBatch(o)}function td(o,e){let t=Ue.encode(o,e.data);return Nt.startDictionaryBatch(o),Nt.addId(o,BigInt(e.id)),Nt.addIsDelta(o,e.isDelta),Nt.addData(o,t),Nt.endDictionaryBatch(o)}function rd(o,e){return sn.createFieldNode(o,BigInt(e.length),BigInt(e.nullCount))}function nd(o,e){return nn.createBuffer(o,BigInt(e.offset),BigInt(e.length))}var id=(()=>{let o=new ArrayBuffer(2);return new DataView(o).setInt16(0,256,!0),new Int16Array(o)[0]===256})();var _o=o=>"Expected ".concat(se[o]," Message in stream, but was null or length 0."),fo=o=>"Header pointer of flatbuffer-encoded ".concat(se[o]," Message is null or length 0."),vc=(o,e)=>"Expected to read ".concat(o," metadata bytes, but only read ").concat(e,"."),bc=(o,e)=>"Expected to read ".concat(o," bytes for message body, but only read ").concat(e,"."),wn=class{constructor(e){this.source=e instanceof Ot?e:new Ot(e)}[Symbol.iterator](){return this}next(){let e;return(e=this.readMetadataLength()).done?be:e.value===-1&&(e=this.readMetadataLength()).done?be:(e=this.readMetadata(e.value)).done?be:e}throw(e){return this.source.throw(e)}return(e){return this.source.return(e)}readMessage(e){let t;if((t=this.next()).done)return null;if(e!=null&&t.value.headerType!==e)throw new Error(_o(e));return t.value}readMessageBody(e){if(e<=0)return new Uint8Array(0);let t=j(this.source.read(e));if(t.byteLength[...n,...a.VALIDITY&&[a.VALIDITY]||[],...a.TYPE_ID&&[a.TYPE_ID]||[],...a.OFFSET&&[a.OFFSET]||[],...a.DATA&&[a.DATA]||[],...t(a.children)],[])}}readMessage(e){let t;if((t=this.next()).done)return null;if(e!=null&&t.value.headerType!==e)throw new Error(_o(e));return t.value}readSchema(){let e=se.Schema,t=this.readMessage(e),r=t==null?void 0:t.header();if(!t||!r)throw new Error(fo(e));return r}},ta=4,uo="ARROW1",An=new Uint8Array(uo.length);for(let o=0;othis):this}readRecordBatch(e){return this._impl.isFile()?this._impl.readRecordBatch(e):null}[Symbol.iterator](){return this._impl[Symbol.iterator]()}[Symbol.asyncIterator](){return this._impl[Symbol.asyncIterator]()}toDOMStream(){return Be.toDOMStream(this.isSync()?{[Symbol.iterator]:()=>this}:{[Symbol.asyncIterator]:()=>this})}toNodeStream(){return Be.toNodeStream(this.isSync()?{[Symbol.iterator]:()=>this}:{[Symbol.asyncIterator]:()=>this},{objectMode:!0})}static throughNode(e){throw new Error('"throughNode" not available in this environment')}static throughDOM(e,t){throw new Error('"throughDOM" not available in this environment')}static from(e){return e instanceof o?e:Ci(e)?ad(e):Mi(e)?cd(e):dt(e)?B(this,void 0,void 0,function*(){return yield o.from(yield e)}):ki(e)||Mn(e)||Gi(e)||it(e)?ld(new lt(e)):od(new Ot(e))}static readAll(e){return e instanceof o?e.isSync()?Sc(e):Ec(e):Ci(e)||ArrayBuffer.isView(e)||ft(e)||Ii(e)?Sc(e):Ec(e)}},Ht=class extends Oe{constructor(e){super(e),this._impl=e}readAll(){return[...this]}[Symbol.iterator](){return this._impl[Symbol.iterator]()}[Symbol.asyncIterator](){return Ye(this,arguments,function*(){yield te(yield*Mr(tn(_t(this[Symbol.iterator]()))))})}},xr=class extends Oe{constructor(e){super(e),this._impl=e}readAll(){return B(this,void 0,void 0,function*(){var e,t,r,n;let a=new Array;try{for(var l=!0,c=_t(this),u;u=yield c.next(),e=u.done,!e;l=!0){n=u.value,l=!1;let _=n;a.push(_)}}catch(_){t={error:_}}finally{try{!l&&!e&&(r=c.return)&&(yield r.call(c))}finally{if(t)throw t.error}}return a})}[Symbol.iterator](){throw new Error("AsyncRecordBatchStreamReader is not Iterable")}[Symbol.asyncIterator](){return this._impl[Symbol.asyncIterator]()}},Pr=class extends Ht{constructor(e){super(e),this._impl=e}},Pi=class extends xr{constructor(e){super(e),this._impl=e}},na=class{get numDictionaries(){return this._dictionaryIndex}get numRecordBatches(){return this._recordBatchIndex}constructor(e=new Map){this.closed=!1,this.autoDestroy=!0,this._dictionaryIndex=0,this._recordBatchIndex=0,this.dictionaries=e}isSync(){return!1}isAsync(){return!1}isFile(){return!1}isStream(){return!1}reset(e){return this._dictionaryIndex=0,this._recordBatchIndex=0,this.schema=e,this.dictionaries=new Map,this}_loadRecordBatch(e,t){let r=this._loadVectors(e,t,this.schema.fields),n=K({type:new ve(this.schema.fields),length:e.length,children:r});return new De(this.schema,n)}_loadDictionaryBatch(e,t){let{id:r,isDelta:n}=e,{dictionaries:a,schema:l}=this,c=a.get(r),u=l.dictionaries.get(r),_=this._loadVectors(e.data,t,[u]);return(c&&n?c.concat(new ae(_)):new ae(_)).memoize()}_loadVectors(e,t,r){return new ii(t,e.nodes,e.buffers,this.dictionaries,this.schema.metadataVersion).visitMany(r)}},Dn=class extends na{constructor(e,t){super(t),this._reader=Ci(e)?new xi(this._handle=e):new wn(this._handle=e)}isSync(){return!0}isStream(){return!0}[Symbol.iterator](){return this}cancel(){!this.closed&&(this.closed=!0)&&(this.reset()._reader.return(),this._reader=null,this.dictionaries=null)}open(e){return this.closed||(this.autoDestroy=wc(this,e),this.schema||(this.schema=this._reader.readSchema())||this.cancel()),this}throw(e){return!this.closed&&this.autoDestroy&&(this.closed=!0)?this.reset()._reader.throw(e):be}return(e){return!this.closed&&this.autoDestroy&&(this.closed=!0)?this.reset()._reader.return(e):be}next(){if(this.closed)return be;let e,{_reader:t}=this;for(;e=this._readNextMessageAndValidate();)if(e.isSchema())this.reset(e.header());else if(e.isRecordBatch()){this._recordBatchIndex++;let r=e.header(),n=t.readMessageBody(e.bodyLength);return{done:!1,value:this._loadRecordBatch(r,n)}}else if(e.isDictionaryBatch()){this._dictionaryIndex++;let r=e.header(),n=t.readMessageBody(e.bodyLength),a=this._loadDictionaryBatch(r,n);this.dictionaries.set(r.id,a)}return this.schema&&this._recordBatchIndex===0?(this._recordBatchIndex++,{done:!1,value:new Qr(this.schema)}):this.return()}_readNextMessageAndValidate(e){return this._reader.readMessage(e)}},Fn=class extends na{constructor(e,t){super(t),this._reader=new Ti(this._handle=e)}isAsync(){return!0}isStream(){return!0}[Symbol.asyncIterator](){return this}cancel(){return B(this,void 0,void 0,function*(){!this.closed&&(this.closed=!0)&&(yield this.reset()._reader.return(),this._reader=null,this.dictionaries=null)})}open(e){return B(this,void 0,void 0,function*(){return this.closed||(this.autoDestroy=wc(this,e),this.schema||(this.schema=yield this._reader.readSchema())||(yield this.cancel())),this})}throw(e){return B(this,void 0,void 0,function*(){return!this.closed&&this.autoDestroy&&(this.closed=!0)?yield this.reset()._reader.throw(e):be})}return(e){return B(this,void 0,void 0,function*(){return!this.closed&&this.autoDestroy&&(this.closed=!0)?yield this.reset()._reader.return(e):be})}next(){return B(this,void 0,void 0,function*(){if(this.closed)return be;let e,{_reader:t}=this;for(;e=yield this._readNextMessageAndValidate();)if(e.isSchema())yield this.reset(e.header());else if(e.isRecordBatch()){this._recordBatchIndex++;let r=e.header(),n=yield t.readMessageBody(e.bodyLength);return{done:!1,value:this._loadRecordBatch(r,n)}}else if(e.isDictionaryBatch()){this._dictionaryIndex++;let r=e.header(),n=yield t.readMessageBody(e.bodyLength),a=this._loadDictionaryBatch(r,n);this.dictionaries.set(r.id,a)}return this.schema&&this._recordBatchIndex===0?(this._recordBatchIndex++,{done:!1,value:new Qr(this.schema)}):yield this.return()})}_readNextMessageAndValidate(e){return B(this,void 0,void 0,function*(){return yield this._reader.readMessage(e)})}},ia=class extends Dn{get footer(){return this._footer}get numDictionaries(){return this._footer?this._footer.numDictionaries:0}get numRecordBatches(){return this._footer?this._footer.numRecordBatches:0}constructor(e,t){super(e instanceof ti?e:new ti(e),t)}isSync(){return!0}isFile(){return!0}open(e){if(!this.closed&&!this._footer){this.schema=(this._footer=this._readFooter()).schema;for(let t of this._footer.dictionaryBatches())t&&this._readDictionaryBatch(this._dictionaryIndex++)}return super.open(e)}readRecordBatch(e){var t;if(this.closed)return null;this._footer||this.open();let r=(t=this._footer)===null||t===void 0?void 0:t.getRecordBatch(e);if(r&&this._handle.seek(r.offset)){let n=this._reader.readMessage(se.RecordBatch);if(n!=null&&n.isRecordBatch()){let a=n.header(),l=this._reader.readMessageBody(n.bodyLength);return this._loadRecordBatch(a,l)}}return null}_readDictionaryBatch(e){var t;let r=(t=this._footer)===null||t===void 0?void 0:t.getDictionaryBatch(e);if(r&&this._handle.seek(r.offset)){let n=this._reader.readMessage(se.DictionaryBatch);if(n!=null&&n.isDictionaryBatch()){let a=n.header(),l=this._reader.readMessageBody(n.bodyLength),c=this._loadDictionaryBatch(a,l);this.dictionaries.set(a.id,c)}}}_readFooter(){let{_handle:e}=this,t=e.size-po,r=e.readInt32(t),n=e.readAt(t-r,r);return ir.decode(n)}_readNextMessageAndValidate(e){var t;if(this._footer||this.open(),this._footer&&this._recordBatchIndexsuper.open}});return B(this,void 0,void 0,function*(){if(!this.closed&&!this._footer){this.schema=(this._footer=yield this._readFooter()).schema;for(let r of this._footer.dictionaryBatches())r&&(yield this._readDictionaryBatch(this._dictionaryIndex++))}return yield t.open.call(this,e)})}readRecordBatch(e){return B(this,void 0,void 0,function*(){var t;if(this.closed)return null;this._footer||(yield this.open());let r=(t=this._footer)===null||t===void 0?void 0:t.getRecordBatch(e);if(r&&(yield this._handle.seek(r.offset))){let n=yield this._reader.readMessage(se.RecordBatch);if(n!=null&&n.isRecordBatch()){let a=n.header(),l=yield this._reader.readMessageBody(n.bodyLength);return this._loadRecordBatch(a,l)}}return null})}_readDictionaryBatch(e){return B(this,void 0,void 0,function*(){var t;let r=(t=this._footer)===null||t===void 0?void 0:t.getDictionaryBatch(e);if(r&&(yield this._handle.seek(r.offset))){let n=yield this._reader.readMessage(se.DictionaryBatch);if(n!=null&&n.isDictionaryBatch()){let a=n.header(),l=yield this._reader.readMessageBody(n.bodyLength),c=this._loadDictionaryBatch(a,l);this.dictionaries.set(a.id,c)}}})}_readFooter(){return B(this,void 0,void 0,function*(){let{_handle:e}=this;e._pending&&(yield e._pending);let t=e.size-po,r=yield e.readInt32(t),n=yield e.readAt(t-r,r);return ir.decode(n)})}_readNextMessageAndValidate(e){return B(this,void 0,void 0,function*(){if(this._footer||(yield this.open()),this._footer&&this._recordBatchIndex=4?ra(e)?new Pr(new ia(o.read())):new Ht(new Dn(o)):new Ht(new Dn(function*(){}()))}function ld(o){return B(this,void 0,void 0,function*(){let e=yield o.peek(Ln+7&-8);return e&&e.byteLength>=4?ra(e)?new Pr(new ia(yield o.read())):new xr(new Fn(o)):new xr(new Fn(function(){return Ye(this,arguments,function*(){})}()))})}function cd(o){return B(this,void 0,void 0,function*(){let{size:e}=yield o.stat(),t=new Tr(o,e);return e>=yc&&ra(yield t.readAt(0,Ln+7&-8))?new Pi(new mo(t)):new xr(new Fn(t))})}var we=class o extends R{static assemble(...e){let t=n=>n.flatMap(a=>Array.isArray(a)?t(a):a instanceof De?a.data.children:a.data),r=new o;return r.visitMany(t(e)),r}constructor(){super(),this._byteLength=0,this._nodes=[],this._buffers=[],this._bufferRegions=[]}visit(e){if(e instanceof ae)return this.visitMany(e.data),this;let{type:t}=e;if(!G.isDictionary(t)){let{length:r}=e;if(r>2147483647)throw new RangeError("Cannot write arrays larger than 2^31 - 1 in length");if(G.isUnion(t))this.nodes.push(new ut(r,0));else{let{nullCount:n}=e;G.isNull(t)||Ft.call(this,n<=0?new Uint8Array(0):Or(e.offset,r,e.nullBitmap)),this.nodes.push(new ut(r,n))}}return super.visit(e)}visitNull(e){return this}visitDictionary(e){return this.visit(e.clone(e.type.indices))}get nodes(){return this._nodes}get buffers(){return this._buffers}get byteLength(){return this._byteLength}get bufferRegions(){return this._bufferRegions}};function Ft(o){let e=o.byteLength+7&-8;return this.buffers.push(o),this.bufferRegions.push(new $e(this._byteLength,e)),this._byteLength+=e,this}function ud(o){var e;let{type:t,length:r,typeIds:n,valueOffsets:a}=o;if(Ft.call(this,n),t.mode===ge.Sparse)return ho.call(this,o);if(t.mode===ge.Dense){if(o.offset<=0)return Ft.call(this,a),ho.call(this,o);{let l=new Int32Array(r),c=Object.create(null),u=Object.create(null);for(let _,d,f=-1;++f{let f=t.typeIds[d],p=c[f],m=u[f];return _.slice(p,Math.min(r,m))}))}}return this}function _d(o){let e;return o.nullCount>=o.length?Ft.call(this,new Uint8Array(0)):(e=o.values)instanceof Uint8Array?Ft.call(this,Or(o.offset,o.length,e)):Ft.call(this,Rr(o.values))}function dr(o){return Ft.call(this,o.values.subarray(0,o.length*o.stride))}function sa(o){let{length:e,values:t,valueOffsets:r}=o,n=oe(r[0]),a=oe(r[e]),l=Math.min(a-n,t.byteLength-n);return Ft.call(this,Oi(-n,e+1,r)),Ft.call(this,t.subarray(n,n+l)),this}function vo(o){let{length:e,valueOffsets:t}=o;if(t){let{[0]:r,[e]:n}=t;return Ft.call(this,Oi(-r,e+1,t)),this.visit(o.children[0].slice(r,n-r))}return this.visit(o.children[0])}function ho(o){return this.visitMany(o.type.children.map((e,t)=>o.children[t]).filter(Boolean))[0]}we.prototype.visitBool=_d;we.prototype.visitInt=dr;we.prototype.visitFloat=dr;we.prototype.visitUtf8=sa;we.prototype.visitLargeUtf8=sa;we.prototype.visitBinary=sa;we.prototype.visitLargeBinary=sa;we.prototype.visitFixedSizeBinary=dr;we.prototype.visitDate=dr;we.prototype.visitTimestamp=dr;we.prototype.visitTime=dr;we.prototype.visitDecimal=dr;we.prototype.visitList=vo;we.prototype.visitStruct=ho;we.prototype.visitUnion=ud;we.prototype.visitInterval=dr;we.prototype.visitDuration=dr;we.prototype.visitFixedSizeList=vo;we.prototype.visitMap=vo;var Yr=class extends Wr{static throughNode(e){throw new Error('"throughNode" not available in this environment')}static throughDOM(e,t){throw new Error('"throughDOM" not available in this environment')}constructor(e){super(),this._position=0,this._started=!1,this._sink=new Ut,this._schema=null,this._dictionaryBlocks=[],this._recordBatchBlocks=[],this._seenDictionaries=new Map,this._dictionaryDeltaOffsets=new Map,He(e)||(e={autoDestroy:!0,writeLegacyIpcFormat:!1}),this._autoDestroy=typeof e.autoDestroy=="boolean"?e.autoDestroy:!0,this._writeLegacyIpcFormat=typeof e.writeLegacyIpcFormat=="boolean"?e.writeLegacyIpcFormat:!1}toString(e=!1){return this._sink.toString(e)}toUint8Array(e=!1){return this._sink.toUint8Array(e)}writeAll(e){return dt(e)?e.then(t=>this.writeAll(t)):it(e)?yo(this,e):bo(this,e)}get closed(){return this._sink.closed}[Symbol.asyncIterator](){return this._sink[Symbol.asyncIterator]()}toDOMStream(e){return this._sink.toDOMStream(e)}toNodeStream(e){return this._sink.toNodeStream(e)}close(){return this.reset()._sink.close()}abort(e){return this.reset()._sink.abort(e)}finish(){return this._autoDestroy?this.close():this.reset(this._sink,this._schema),this}reset(e=this._sink,t=null){return e===this._sink||e instanceof Ut?this._sink=e:(this._sink=new Ut,e&&Ro(e)?this.toDOMStream({type:"bytes"}).pipeTo(e):e&&Ho(e)&&this.toNodeStream({objectMode:!1}).pipe(e)),this._started&&this._schema&&this._writeFooter(this._schema),this._started=!1,this._dictionaryBlocks=[],this._recordBatchBlocks=[],this._seenDictionaries=new Map,this._dictionaryDeltaOffsets=new Map,(!t||!Xr(t,this._schema))&&(t==null?(this._position=0,this._schema=null):(this._started=!0,this._schema=t,this._writeSchema(t))),this}write(e){let t=null;if(this._sink){if(e==null)return this.finish()&&void 0;if(e instanceof Ve&&!(t=e.schema))return this.finish()&&void 0;if(e instanceof De&&!(t=e.schema))return this.finish()&&void 0}else throw new Error("RecordBatchWriter is closed");if(t&&!Xr(t,this._schema)){if(this._started&&this._autoDestroy)return this.close();this.reset(this._sink,t)}e instanceof De?e instanceof Qr||this._writeRecordBatch(e):e instanceof Ve?this.writeAll(e.batches):ft(e)&&this.writeAll(e)}_writeMessage(e,t=8){let r=t-1,n=Xe.encode(e),a=n.byteLength,l=this._writeLegacyIpcFormat?4:8,c=a+l+r&~r,u=c-a-l;return e.headerType===se.RecordBatch?this._recordBatchBlocks.push(new sr(c,e.bodyLength,this._position)):e.headerType===se.DictionaryBatch&&this._dictionaryBlocks.push(new sr(c,e.bodyLength,this._position)),this._writeLegacyIpcFormat||this._write(Int32Array.of(-1)),this._write(Int32Array.of(c-l)),a>0&&this._write(n),this._writePadding(u)}_write(e){if(this._started){let t=j(e);t&&t.byteLength>0&&(this._sink.write(t),this._position+=t.byteLength)}return this}_writeSchema(e){return this._writeMessage(Xe.from(e))}_writeFooter(e){return this._writeLegacyIpcFormat?this._write(Int32Array.of(0)):this._write(Int32Array.of(-1,0))}_writeMagic(){return this._write(An)}_writePadding(e){return e>0?this._write(new Uint8Array(e)):this}_writeRecordBatch(e){let{byteLength:t,nodes:r,bufferRegions:n,buffers:a}=we.assemble(e),l=new Ue(e.numRows,r,n),c=Xe.from(l,t);return this._writeDictionaries(e)._writeMessage(c)._writeBodyBuffers(a)}_writeDictionaryBatch(e,t,r=!1){let{byteLength:n,nodes:a,bufferRegions:l,buffers:c}=we.assemble(new ae([e])),u=new Ue(e.length,a,l),_=new qe(u,t,r),d=Xe.from(_,n);return this._writeMessage(d)._writeBodyBuffers(c)}_writeBodyBuffers(e){let t,r,n;for(let a=-1,l=e.length;++a0&&(this._write(t),(n=(r+7&-8)-r)>0&&this._writePadding(n));return this}_writeDictionaries(e){var t,r;for(let[n,a]of e.dictionaries){let l=(t=a==null?void 0:a.data)!==null&&t!==void 0?t:[],c=this._seenDictionaries.get(n),u=(r=this._dictionaryDeltaOffsets.get(n))!==null&&r!==void 0?r:0;if(!c||c.data[0]!==l[0])for(let[_,d]of l.entries())this._writeDictionaryBatch(d,n,_>0);else if(ur.writeAll(n)):it(e)?yo(r,e):bo(r,e)}},Kr=class o extends Yr{static writeAll(e){let t=new o;return dt(e)?e.then(r=>t.writeAll(r)):it(e)?yo(t,e):bo(t,e)}constructor(){super(),this._autoDestroy=!0}_writeSchema(e){return this._writeMagic()._writePadding(2)}_writeDictionaryBatch(e,t,r=!1){if(!r&&this._seenDictionaries.has(t))throw new Error("The Arrow File format does not support replacement dictionaries. ");return super._writeDictionaryBatch(e,t,r)}_writeFooter(e){let t=ir.encode(new ir(e,ue.V5,this._recordBatchBlocks,this._dictionaryBlocks));return super._writeFooter(e)._write(t)._write(Int32Array.of(t.byteLength))._writeMagic()}};function bo(o,e){let t=e;e instanceof Ve&&(t=e.batches,o.reset(void 0,e.schema));for(let r of t)o.write(r);return o.finish()}function yo(o,e){return B(this,void 0,void 0,function*(){var t,r,n,a,l,c,u;try{for(t=!0,r=_t(e);n=yield r.next(),a=n.done,!a;t=!0){u=n.value,t=!1;let _=u;o.write(_)}}catch(_){l={error:_}}finally{try{!t&&!a&&(c=r.return)&&(yield c.call(r))}finally{if(l)throw l.error}}return o.finish()})}function Ac(o,e){if(it(o))return fd(o,e);if(ft(o))return dd(o,e);throw new Error("toDOMStream() must be called with an Iterable or AsyncIterable")}function dd(o,e){let t=null,r=(e==null?void 0:e.type)==="bytes"||!1,n=(e==null?void 0:e.highWaterMark)||Math.pow(2,24);return new ReadableStream(Object.assign(Object.assign({},e),{start(l){a(l,t||(t=o[Symbol.iterator]()))},pull(l){t?a(l,t):l.close()},cancel(){(t!=null&&t.return&&t.return()||!0)&&(t=null)}}),Object.assign({highWaterMark:r?n:void 0},e));function a(l,c){let u,_=null,d=l.desiredSize||null;for(;!(_=c.next(r?d:null)).done;)if(ArrayBuffer.isView(_.value)&&(u=j(_.value))&&(d!=null&&r&&(d=d-u.byteLength+1),_.value=u),l.enqueue(_.value),d!=null&&--d<=0)return;l.close()}}function fd(o,e){let t=null,r=(e==null?void 0:e.type)==="bytes"||!1,n=(e==null?void 0:e.highWaterMark)||Math.pow(2,24);return new ReadableStream(Object.assign(Object.assign({},e),{start(l){return B(this,void 0,void 0,function*(){yield a(l,t||(t=o[Symbol.asyncIterator]()))})},pull(l){return B(this,void 0,void 0,function*(){t?yield a(l,t):l.close()})},cancel(){return B(this,void 0,void 0,function*(){(t!=null&&t.return&&(yield t.return())||!0)&&(t=null)})}}),Object.assign({highWaterMark:r?n:void 0},e));function a(l,c){return B(this,void 0,void 0,function*(){let u,_=null,d=l.desiredSize||null;for(;!(_=yield c.next(r?d:null)).done;)if(ArrayBuffer.isView(_.value)&&(u=j(_.value))&&(d!=null&&r&&(d=d-u.byteLength+1),_.value=u),l.enqueue(_.value),d!=null&&--d<=0)return;l.close()})}}function Fc(o){return new So(o)}var So=class{constructor(e){this._numChunks=0,this._finished=!1,this._bufferedSize=0;let{["readableStrategy"]:t,["writableStrategy"]:r,["queueingStrategy"]:n="count"}=e,a=Uo(e,["readableStrategy","writableStrategy","queueingStrategy"]);this._controller=null,this._builder=zr(a),this._getSize=n!=="bytes"?Lc:Dc;let{["highWaterMark"]:l=n==="bytes"?Math.pow(2,14):1e3}=Object.assign({},t),{["highWaterMark"]:c=n==="bytes"?Math.pow(2,14):1e3}=Object.assign({},r);this.readable=new ReadableStream({cancel:()=>{this._builder.clear()},pull:u=>{this._maybeFlush(this._builder,this._controller=u)},start:u=>{this._maybeFlush(this._builder,this._controller=u)}},{highWaterMark:l,size:n!=="bytes"?Lc:Dc}),this.writable=new WritableStream({abort:()=>{this._builder.clear()},write:()=>{this._maybeFlush(this._builder,this._controller)},close:()=>{this._maybeFlush(this._builder.finish(),this._controller)}},{highWaterMark:c,size:u=>this._writeValueAndReturnChunkSize(u)})}_writeValueAndReturnChunkSize(e){let t=this._bufferedSize;return this._bufferedSize=this._getSize(this._builder.append(e)),this._bufferedSize-t}_maybeFlush(e,t){t!=null&&(this._bufferedSize>=t.desiredSize&&++this._numChunks&&this._enqueue(t,e.toVector()),e.finished&&((e.length>0||this._numChunks===0)&&++this._numChunks&&this._enqueue(t,e.toVector()),!this._finished&&(this._finished=!0)&&this._enqueue(t,null)))}_enqueue(e,t){this._bufferedSize=0,this._controller=null,t==null?e.close():e.enqueue(t)}},Lc=o=>{var e;return(e=o==null?void 0:o.length)!==null&&e!==void 0?e:0},Dc=o=>{var e;return(e=o==null?void 0:o.byteLength)!==null&&e!==void 0?e:0};function aa(o,e){let t=new Ut,r=null,n=new ReadableStream({cancel(){return B(this,void 0,void 0,function*(){yield t.close()})},start(c){return B(this,void 0,void 0,function*(){yield l(c,r||(r=yield a()))})},pull(c){return B(this,void 0,void 0,function*(){r?yield l(c,r):c.close()})}});return{writable:new WritableStream(t,Object.assign({highWaterMark:Math.pow(2,14)},o)),readable:n};function a(){return B(this,void 0,void 0,function*(){return yield(yield Oe.from(t)).open(e)})}function l(c,u){return B(this,void 0,void 0,function*(){let _=c.desiredSize,d=null;for(;!(d=yield u.next()).done;)if(c.enqueue(d.value),_!=null&&--_<=0)return;c.close()})}}function oa(o,e){let t=new this(o),r=new lt(t),n=new ReadableStream({cancel(){return B(this,void 0,void 0,function*(){yield r.cancel()})},pull(l){return B(this,void 0,void 0,function*(){yield a(l)})},start(l){return B(this,void 0,void 0,function*(){yield a(l)})}},Object.assign({highWaterMark:Math.pow(2,14)},e));return{writable:new WritableStream(t,o),readable:n};function a(l){return B(this,void 0,void 0,function*(){let c=null,u=l.desiredSize;for(;c=yield r.read(u||null);)if(l.enqueue(c),u!=null&&(u-=c.byteLength)<=0)return;l.close()})}}function la(o,e="stream"){return(e==="stream"?Jr:Kr).writeAll(o).toUint8Array(!0)}var hd=Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},Ia),no),Xa),Ma),La),qa),Ta),{compareSchemas:Xr,compareFields:tc,compareTypes:rc});Be.toDOMStream=Ac;Se.throughDOM=Fc;Oe.throughDOM=aa;Pr.throughDOM=aa;Ht.throughDOM=aa;Yr.throughDOM=oa;Kr.throughDOM=oa;Jr.throughDOM=oa;function Tn(o){switch(o.typeId){case v.Binary:return{sqlType:"binary"};case v.Bool:return{sqlType:"bool"};case v.Date:return{sqlType:"date"};case v.DateDay:return{sqlType:"date32[d]"};case v.DateMillisecond:return{sqlType:"date64[ms]"};case v.Decimal:{let e=o;return{sqlType:"decimal",precision:e.precision,scale:e.scale}}case v.Float:return{sqlType:"float"};case v.Float16:return{sqlType:"float16"};case v.Float32:return{sqlType:"float32"};case v.Float64:return{sqlType:"float64"};case v.Int:return{sqlType:"int32"};case v.Int16:return{sqlType:"int16"};case v.Int32:return{sqlType:"int32"};case v.Int64:return{sqlType:"int64"};case v.Uint16:return{sqlType:"uint16"};case v.Uint32:return{sqlType:"uint32"};case v.Uint64:return{sqlType:"uint64"};case v.Uint8:return{sqlType:"uint8"};case v.IntervalDayTime:return{sqlType:"interval[dt]"};case v.IntervalYearMonth:return{sqlType:"interval[m]"};case v.List:return{sqlType:"list",valueType:Tn(o.valueType)};case v.FixedSizeBinary:return{sqlType:"fixedsizebinary",byteWidth:o.byteWidth};case v.Null:return{sqlType:"null"};case v.Utf8:return{sqlType:"utf8"};case v.Struct:return{sqlType:"struct",fields:o.children.map(t=>ca(t.name,t.type))};case v.Map:{let e=o;return{sqlType:"map",keyType:Tn(e.keyType),valueType:Tn(e.valueType)}}case v.Time:return{sqlType:"time[s]"};case v.TimeMicrosecond:return{sqlType:"time[us]"};case v.TimeMillisecond:return{sqlType:"time[ms]"};case v.TimeNanosecond:return{sqlType:"time[ns]"};case v.TimeSecond:return{sqlType:"time[s]"};case v.Timestamp:return{sqlType:"timestamp",timezone:o.timezone||void 0};case v.TimestampSecond:return{sqlType:"timestamp[s]",timezone:o.timezone||void 0};case v.TimestampMicrosecond:return{sqlType:"timestamp[us]",timezone:o.timezone||void 0};case v.TimestampNanosecond:return{sqlType:"timestamp[ns]",timezone:o.timezone||void 0};case v.TimestampMillisecond:return{sqlType:"timestamp[ms]",timezone:o.timezone||void 0}}throw new Error("unsupported arrow type: ".concat(o.toString()))}function ca(o,e){let t=Tn(e);return t.name=o,t}var ua=class{constructor(e,t){this._bindings=e,this._conn=t}close(){this._bindings.disconnect(this._conn)}useUnsafe(e){return e(this._bindings,this._conn)}query(e){let t=this._bindings.runQuery(this._conn,e),r=Oe.from(t);return console.assert(r.isSync()),console.assert(r.isFile()),new Ve(r)}async send(e,t=!1){let r=this._bindings.startPendingQuery(this._conn,e,t);for(;r==null;)r=await new Promise((l,c)=>{try{l(this._bindings.pollPendingQuery(this._conn))}catch(u){console.log(u),c(u)}});let n=new _a(this._bindings,this._conn,r),a=Oe.from(n);return console.assert(a.isSync()),console.assert(a.isStream()),a}cancelSent(){return this._bindings.cancelPendingQuery(this._conn)}getTableNames(e){return this._bindings.getTableNames(this._conn,e)}prepare(e){let t=this._bindings.createPrepared(this._conn,e);return new Eo(this._bindings,this._conn,t)}createScalarFunction(e,t,r){this._bindings.createScalarFunction(this._conn,e,t,r)}insertArrowTable(e,t){let r=la(e,"stream");this.insertArrowFromIPCStream(r,t)}insertArrowFromIPCStream(e,t){this._bindings.insertArrowFromIPCStream(this._conn,e,t)}insertCSVFromPath(e,t){this._bindings.insertCSVFromPath(this._conn,e,t)}insertJSONFromPath(e,t){this._bindings.insertJSONFromPath(this._conn,e,t)}},_a=class{constructor(e,t,r){this.bindings=e;this.conn=t;this.header=r;this._first=!0,this._depleted=!1}next(){if(this._first)return this._first=!1,{done:!1,value:this.header};if(this._depleted)return{done:!0,value:null};let e=this.bindings.fetchQueryResults(this.conn);return this._depleted=e.length==0,{done:this._depleted,value:e}}[Symbol.iterator](){return this}},Eo=class{constructor(e,t,r){this.bindings=e,this.connectionId=t,this.statementId=r}close(){this.bindings.closePrepared(this.connectionId,this.statementId)}query(...e){let t=this.bindings.runPrepared(this.connectionId,this.statementId,e),r=Oe.from(t);return console.assert(r.isSync()),console.assert(r.isFile()),new Ve(r)}send(...e){let t=this.bindings.sendPrepared(this.connectionId,this.statementId,e),r=new _a(this.bindings,this.connectionId,t),n=Oe.from(r);return console.assert(n.isSync()),console.assert(n.isStream()),n}};var Cc=new TextEncoder,xc=new TextDecoder("utf-8");function wo(o,e,t){let r=Cc.encode(t),n=o._malloc(r.byteLength),a=o.HEAPU8.subarray(n,n+r.byteLength);a.set(r),o.HEAPF64[(e>>3)+0]=1,o.HEAPF64[(e>>3)+1]=n,o.HEAPF64[(e>>3)+2]=a.byteLength}function Lo(o){switch(o){case"UINT8":case"INT8":return 1;case"INT32":case"FLOAT":return 4;case"INT64":case"UINT64":case"DOUBLE":case"VARCHAR":return 8;default:return 0}}function Ao(o,e,t,r){let n=o.HEAPU8.subarray(e,e+r*Lo(t));switch(t){case"UINT8":return new Uint8Array(n.buffer,n.byteOffset,r);case"INT8":return new Int8Array(n.buffer,n.byteOffset,r);case"INT32":return new Int32Array(n.buffer,n.byteOffset,r);case"FLOAT":return new Float32Array(n.buffer,n.byteOffset,r);case"DOUBLE":return new Float64Array(n.buffer,n.byteOffset,r);case"VARCHAR":return new Float64Array(n.buffer,n.byteOffset,r);default:return new Array(0)}}function Pc(o,e,t){let r=o.HEAPU8.subarray(e,e+t);return new Uint8Array(r.buffer,r.byteOffset,t)}function da(o,e,t){let r=o.HEAPU8.subarray(e,e+t*8);return new Float64Array(r.buffer,r.byteOffset,t)}function Ic(o,e,t,r,n,a,l,c){try{let u=o._udfFunctions.get(r);if(!u){wo(e,t,"Unknown UDF with id: "+r);return}let _=xc.decode(e.HEAPU8.subarray(n,n+a)),d=JSON.parse(_),f=da(e,l,c/8),p=w=>{var L;let P=null;switch(w.validityBuffer!==void 0&&(P=Pc(e,f[w.validityBuffer],d.rows)),w.physicalType){case"VARCHAR":{if(w.dataBuffer===null||w.dataBuffer===void 0)throw new Error("malformed data view, expected data buffer for VARCHAR argument");if(w.lengthBuffer===null||w.lengthBuffer===void 0)throw new Error("malformed data view, expected data length buffer for VARCHAR argument");let M=Ao(e,f[w.dataBuffer],w.physicalType,d.rows),D=[],I=da(e,f[w.lengthBuffer],d.rows);for(let k=0;kD[k]}case"STRUCT":{let M={},D=[];for(let I=0;I<(((L=w.children)==null?void 0:L.length)||0);++I){let k=w.children[I],Q=p(k);D.push(ee=>{M[k.name]=Q(ee)})}return P!=null?I=>{if(!P[I])return null;for(let k of D)k(I);return M}:I=>{for(let k of D)k(I);return M}}default:{if(w.dataBuffer===void 0)throw new Error("malformed data view, expected data buffer for argument of type: "+w.physicalType);let M=Ao(e,f[w.dataBuffer],w.physicalType,d.rows);return P!=null?D=>P[D]?M[D]:null:D=>M[D]}}},m=[];for(let w=0;w>3)+0]=0,e.HEAPF64[(t>>3)+1]=T,e.HEAPF64[(t>>3)+2]=0}catch(u){wo(e,t,u.toString())}}function bd(){let o=new TextDecoder;return e=>(typeof SharedArrayBuffer<"u"&&e.buffer instanceof SharedArrayBuffer&&(e=new Uint8Array(e)),o.decode(e))}var yd=bd();function nt(o,e){console.error("FAIL WITH: ".concat(e)),o.ccall("duckdb_web_fail_with",null,["string"],[e])}function Zr(o,e,t){let r=o.HEAPU8.subarray(e,e+t),n=new Uint8Array(new ArrayBuffer(r.byteLength));return n.set(r),n}function re(o,e,t){return yd(o.HEAPU8.subarray(e,e+t))}function fe(o,e,t,r){let n=o.stackSave(),a=o.stackAlloc(3*8);t.unshift("number"),r.unshift(a),o.ccall(e,null,t,r);let l=o.HEAPF64[(a>>3)+0],c=o.HEAPF64[(a>>3)+1],u=o.HEAPF64[(a>>3)+2];return o.stackRestore(n),[l,c,u]}function ye(o){o.ccall("duckdb_web_clear_response",null,[],[])}var fa=class{constructor(e){let t=new Float64Array(e.buffer,e.byteOffset,e.byteLength/8),r=new Uint8Array(new ArrayBuffer(e.byteLength));r.set(e.subarray(7*8)),this.totalFileReadsCold=t[0],this.totalFileReadsAhead=t[1],this.totalFileReadsCached=t[2],this.totalFileWrites=t[3],this.totalPageAccesses=t[4],this.totalPageLoads=t[5],this.blockSize=t[6],this.blockStats=r}getBlockStats(e,t){return t=t||{file_reads_cold:0,file_reads_ahead:0,file_reads_cached:0,file_writes:0,page_accesses:0,page_loads:0},t.file_writes=this.blockStats[e*3+0]&15,t.file_reads_cold=this.blockStats[e*3+0]>>4,t.file_reads_ahead=this.blockStats[e*3+1]&15,t.file_reads_cached=this.blockStats[e*3+1]>>4,t.page_accesses=this.blockStats[e*3+1]&15,t.page_loads=this.blockStats[e*3+1]>>4,t}};var xn=new TextEncoder;var pa=class{constructor(e,t){this._instance=null;this._initPromise=null;this._initPromiseResolver=()=>{};this.onInstantiationProgress=[];this._logger=e,this._runtime=t,this._nextUDFId=1}get logger(){return this._logger}get mod(){return this._instance}get pthread(){return this.mod.PThread||null}async instantiate(e=t=>{}){return this._instance!=null?this:(this._initPromise!=null&&(this.onInstantiationProgress.push(e),await this._initPromise),this._initPromise=new Promise(t=>{this._initPromiseResolver=t}),this.onInstantiationProgress=[e],this._instance=await this.instantiateImpl({print:console.log.bind(console),printErr:console.log.bind(console),onRuntimeInitialized:this._initPromiseResolver}),await this._initPromise,this._initPromise=null,this.onInstantiationProgress=this.onInstantiationProgress.filter(t=>t!=e),globalThis.DUCKDB_BINDINGS=this,this)}open(e){let[t,r,n]=fe(this.mod,"duckdb_web_open",["string"],[JSON.stringify(e)]);if(t!==0)throw new Error(re(this.mod,r,n));ye(this.mod)}reset(){let[e,t,r]=fe(this.mod,"duckdb_web_reset",[],[]);if(e!==0)throw new Error(re(this.mod,t,r));ye(this.mod)}getVersion(){let[e,t,r]=fe(this.mod,"duckdb_web_get_version",[],[]);if(e!==0)throw new Error(re(this.mod,t,r));let n=re(this.mod,t,r);return ye(this.mod),n}getFeatureFlags(){return this.mod.ccall("duckdb_web_get_feature_flags","number",[],[])}tokenize(e){let t=xn.encode(e),r=this.mod._malloc(t.length);this.mod.HEAPU8.subarray(r,r+t.length).set(t);let[a,l,c]=fe(this.mod,"duckdb_web_tokenize_buffer",["number","number"],[r,t.length]);if(this.mod._free(r),a!==0)throw new Error(re(this.mod,l,c));let u=re(this.mod,l,c);return ye(this.mod),JSON.parse(u)}connect(){let e=this.mod.ccall("duckdb_web_connect","number",[],[]);return new ua(this,e)}disconnect(e){if(this.mod.ccall("duckdb_web_disconnect",null,["number"],[e]),this.pthread)for(let t of[...this.pthread.runningWorkers,...this.pthread.unusedWorkers])t.postMessage({cmd:"dropUDFFunctions",connectionId:e})}runQuery(e,t){let r=xn.encode(t),n=this.mod._malloc(r.length);this.mod.HEAPU8.subarray(n,n+r.length).set(r);let[l,c,u]=fe(this.mod,"duckdb_web_query_run_buffer",["number","number","number"],[e,n,r.length]);if(this.mod._free(n),l!==0)throw new Error(re(this.mod,c,u));let _=Zr(this.mod,c,u);return ye(this.mod),_}startPendingQuery(e,t,r=!1){let n=xn.encode(t),a=this.mod._malloc(n.length);this.mod.HEAPU8.subarray(a,a+n.length).set(n);let[c,u,_]=fe(this.mod,"duckdb_web_pending_query_start_buffer",["number","number","number","boolean"],[e,a,n.length,r]);if(this.mod._free(a),c!==0)throw new Error(re(this.mod,u,_));if(u==0)return null;let d=Zr(this.mod,u,_);return ye(this.mod),d}pollPendingQuery(e){let[t,r,n]=fe(this.mod,"duckdb_web_pending_query_poll",["number"],[e]);if(t!==0)throw new Error(re(this.mod,r,n));if(r==0)return null;let a=Zr(this.mod,r,n);return ye(this.mod),a}cancelPendingQuery(e){return this.mod.ccall("duckdb_web_pending_query_cancel","boolean",["number"],[e])}fetchQueryResults(e){let[t,r,n]=fe(this.mod,"duckdb_web_query_fetch_results",["number"],[e]);if(t!==0)throw new Error(re(this.mod,r,n));let a=Zr(this.mod,r,n);return ye(this.mod),a}getTableNames(e,t){let r=xn.encode(t),n=this.mod._malloc(r.length);this.mod.HEAPU8.subarray(n,n+r.length).set(r);let[l,c,u]=fe(this.mod,"duckdb_web_get_tablenames_buffer",["number","number","number"],[e,n,r.length]);if(this.mod._free(n),l!==0)throw new Error(re(this.mod,c,u));let _=re(this.mod,c,u);return ye(this.mod),JSON.parse(_)}createScalarFunction(e,t,r,n){let a={functionId:this._nextUDFId,name:t,returnType:Tn(r)},l={functionId:a.functionId,connectionId:e,name:t,returnType:r,func:n};this._nextUDFId+=1;let[c,u,_]=fe(this.mod,"duckdb_web_udf_scalar_create",["number","string"],[e,JSON.stringify(a)]);if(c!==0)throw new Error(re(this.mod,u,_));if(ye(this.mod),globalThis.DUCKDB_RUNTIME._udfFunctions=(globalThis.DUCKDB_RUNTIME._udfFunctions||new Map).set(l.functionId,l),this.pthread)for(let d of[...this.pthread.runningWorkers,...this.pthread.unusedWorkers])d.postMessage({cmd:"registerUDFFunction",udf:l})}createPrepared(e,t){let r=xn.encode(t),n=this.mod._malloc(r.length);this.mod.HEAPU8.subarray(n,n+r.length).set(r);let[l,c,u]=fe(this.mod,"duckdb_web_prepared_create_buffer",["number","number","number"],[e,n,r.length]);if(this.mod._free(n),l!==0)throw new Error(re(this.mod,c,u));return ye(this.mod),c}closePrepared(e,t){let[r,n,a]=fe(this.mod,"duckdb_web_prepared_close",["number","number"],[e,t]);if(r!==0)throw new Error(re(this.mod,n,a));ye(this.mod)}runPrepared(e,t,r){let[n,a,l]=fe(this.mod,"duckdb_web_prepared_run",["number","number","string"],[e,t,JSON.stringify(r)]);if(n!==0)throw new Error(re(this.mod,a,l));let c=Zr(this.mod,a,l);return ye(this.mod),c}sendPrepared(e,t,r){let[n,a,l]=fe(this.mod,"duckdb_web_prepared_send",["number","number","string"],[e,t,JSON.stringify(r)]);if(n!==0)throw new Error(re(this.mod,a,l));let c=Zr(this.mod,a,l);return ye(this.mod),c}insertArrowFromIPCStream(e,t,r){if(t.length==0)return;let n=this.mod._malloc(t.length);this.mod.HEAPU8.subarray(n,n+t.length).set(t);let l=r?JSON.stringify(r):"",[c,u,_]=fe(this.mod,"duckdb_web_insert_arrow_from_ipc_stream",["number","number","number","string"],[e,n,t.length,l]);if(c!==0)throw new Error(re(this.mod,u,_))}insertCSVFromPath(e,t,r){if(r.columns!==void 0){r.columnsFlat=[];for(let _ in r.columns)r.columnsFlat.push(ca(_,r.columns[_]))}let n={...r};n.columns=n.columnsFlat,delete n.columnsFlat;let a=JSON.stringify(n),[l,c,u]=fe(this.mod,"duckdb_web_insert_csv_from_path",["number","string","string"],[e,t,a]);if(l!==0)throw new Error(re(this.mod,c,u))}insertJSONFromPath(e,t,r){if(r.columns!==void 0){r.columnsFlat=[];for(let _ in r.columns)r.columnsFlat.push(ca(_,r.columns[_]))}let n={...r};n.columns=n.columnsFlat,delete n.columnsFlat;let a=JSON.stringify(n),[l,c,u]=fe(this.mod,"duckdb_web_insert_json_from_path",["number","string","string"],[e,t,a]);if(l!==0)throw new Error(re(this.mod,c,u))}globFiles(e){let[t,r,n]=fe(this.mod,"duckdb_web_fs_glob_file_infos",["string"],[e]);if(t!==0)throw new Error(re(this.mod,r,n));let a=re(this.mod,r,n);ye(this.mod);let l=JSON.parse(a);return l==null?[]:l}registerFileURL(e,t,r,n=!1){t===void 0&&(t=e);let[a,l,c]=fe(this.mod,"duckdb_web_fs_register_file_url",["string","string"],[e,t,r,n]);if(a!==0)throw new Error(re(this.mod,l,c));ye(this.mod)}registerFileText(e,t){let r=xn.encode(t);this.registerFileBuffer(e,r)}registerFileBuffer(e,t){let r=this.mod._malloc(t.length);this.mod.HEAPU8.subarray(r,r+t.length).set(t);let[a,l,c]=fe(this.mod,"duckdb_web_fs_register_file_buffer",["string","number","number"],[e,r,t.length]);if(a!==0)throw new Error(re(this.mod,l,c));ye(this.mod)}async prepareFileHandle(e,t){if(t===3&&this._runtime.prepareFileHandles){let r=await this._runtime.prepareFileHandles([e],3);for(let n of r){let{handle:a,path:l,fromCached:c}=n;!c&&a.getSize()&&await this.registerFileHandleAsync(l,a,3,!0)}return}throw new Error("prepareFileHandle: unsupported protocol ".concat(t))}async prepareDBFileHandle(e,t){if(t===3&&this._runtime.prepareDBFileHandle){let r=await this._runtime.prepareDBFileHandle(e,3);for(let n of r){let{handle:a,path:l,fromCached:c}=n;!c&&a.getSize()&&await this.registerFileHandleAsync(l,a,3,!0)}return}throw new Error("prepareDBFileHandle: unsupported protocol ".concat(t))}async prepareFileHandleAsync(e,t,r,n){if(r===3&&!(t instanceof FileSystemSyncAccessHandle)){if(t instanceof FileSystemFileHandle){let a=t;try{t=await a.createSyncAccessHandle()}catch(l){throw new Error(l.message+":"+e)}}else if(e!=null)try{t=await(await(await navigator.storage.getDirectory()).getFileHandle(e)).createSyncAccessHandle()}catch(a){throw new Error(a.message+":"+e)}}return t}async registerFileHandleAsync(e,t,r,n){let a=await this.prepareFileHandleAsync(e,t,r,n);this.registerFileHandle(e,a,r,n)}registerFileHandle(e,t,r,n){var u;let[a,l,c]=fe(this.mod,"duckdb_web_fs_register_file_url",["string","string","number","boolean"],[e,e,r,n]);if(a!==0)throw new Error(re(this.mod,l,c));if(ye(this.mod),globalThis.DUCKDB_RUNTIME._files=(globalThis.DUCKDB_RUNTIME._files||new Map).set(e,t),(u=globalThis.DUCKDB_RUNTIME._preparedHandles)!=null&&u[e]&&delete globalThis.DUCKDB_RUNTIME._preparedHandles[e],this.pthread){for(let _ of this.pthread.runningWorkers)_.postMessage({cmd:"registerFileHandle",fileName:e,fileHandle:t});for(let _ of this.pthread.unusedWorkers)_.postMessage({cmd:"dropFileHandle",fileName:e})}}dropFile(e){let[t,r,n]=fe(this.mod,"duckdb_web_fs_drop_file",["string"],[e]);if(t!==0)throw new Error(re(this.mod,r,n));ye(this.mod)}dropFiles(){let[e,t,r]=fe(this.mod,"duckdb_web_fs_drop_files",[],[]);if(e!==0)throw new Error(re(this.mod,t,r));ye(this.mod)}flushFiles(){this.mod.ccall("duckdb_web_flush_files",null,[],[])}copyFileToPath(e,t){let[r,n,a]=fe(this.mod,"duckdb_web_copy_file_to_path",["string","string"],[e,t]);if(r!==0)throw new Error(re(this.mod,n,a));ye(this.mod)}copyFileToBuffer(e){let[t,r,n]=fe(this.mod,"duckdb_web_copy_file_to_buffer",["string"],[e]);if(t!==0)throw new Error(re(this.mod,r,n));let a=this.mod.HEAPU8.subarray(r,r+n),l=new Uint8Array(a.length);return l.set(a),ye(this.mod),l}registerOPFSFileName(e){if(e.startsWith("opfs://"))return this.prepareFileHandle(e,3);throw new Error("Not an OPFS file name: "+e)}collectFileStatistics(e,t){let[r,n,a]=fe(this.mod,"duckdb_web_collect_file_stats",["string","boolean"],[e,t]);if(r!==0)throw new Error(re(this.mod,n,a))}exportFileStatistics(e){let[t,r,n]=fe(this.mod,"duckdb_web_export_file_stats",["string"],[e]);if(t!==0)throw new Error(re(this.mod,r,n));return new fa(this.mod.HEAPU8.subarray(r,r+n))}};var ma=class{constructor(){this._bindings=null;this._nextMessageId=0}log(e){this.postMessage({messageId:this._nextMessageId++,requestId:0,type:"LOG",data:e},[])}sendOK(e){this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"OK",data:null},[])}failWith(e,t){let r={name:t.name,message:t.message,stack:t.stack||void 0};this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"ERROR",data:r},[])}async onMessage(e){switch(e.type){case"PING":this.sendOK(e);return;case"INSTANTIATE":this._bindings!=null&&this.failWith(e,new Error("duckdb already initialized"));try{this._bindings=await this.instantiate(e.data[0],e.data[1],t=>{this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"INSTANTIATE_PROGRESS",data:t},[])}),this.sendOK(e)}catch(t){console.log(t),this._bindings=null,this.failWith(e,t)}return;default:break}if(!this._bindings)return this.failWith(e,new Error("duckdb is not initialized"));try{switch(e.type){case"GET_VERSION":this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"VERSION_STRING",data:this._bindings.getVersion()},[]);break;case"GET_FEATURE_FLAGS":this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"FEATURE_FLAGS",data:this._bindings.getFeatureFlags()},[]);break;case"RESET":this._bindings.reset(),this.sendOK(e);break;case"OPEN":{let t=e.data.path;t!=null&&t.startsWith("opfs://")&&(await this._bindings.prepareDBFileHandle(t,3),e.data.useDirectIO=!0),this._bindings.open(e.data),this.sendOK(e);break}case"DROP_FILE":this._bindings.dropFile(e.data),this.sendOK(e);break;case"DROP_FILES":this._bindings.dropFiles(),this.sendOK(e);break;case"FLUSH_FILES":this._bindings.flushFiles(),this.sendOK(e);break;case"CONNECT":{let t=this._bindings.connect();this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"CONNECTION_INFO",data:t.useUnsafe((r,n)=>n)},[]);break}case"DISCONNECT":this._bindings.disconnect(e.data),this.sendOK(e);break;case"CREATE_PREPARED":{let t=this._bindings.createPrepared(e.data[0],e.data[1]);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"PREPARED_STATEMENT_ID",data:t},[]);break}case"CLOSE_PREPARED":{this._bindings.closePrepared(e.data[0],e.data[1]),this.sendOK(e);break}case"RUN_PREPARED":{let t=this._bindings.runPrepared(e.data[0],e.data[1],e.data[2]);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"QUERY_RESULT",data:t},[t.buffer]);break}case"RUN_QUERY":{let t=this._bindings.runQuery(e.data[0],e.data[1]);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"QUERY_RESULT",data:t},[t.buffer]);break}case"SEND_PREPARED":{let t=this._bindings.sendPrepared(e.data[0],e.data[1],e.data[2]);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"QUERY_RESULT_HEADER",data:t},[t.buffer]);break}case"START_PENDING_QUERY":{let t=this._bindings.startPendingQuery(e.data[0],e.data[1],e.data[2]),r=[];t&&r.push(t.buffer),this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"QUERY_RESULT_HEADER_OR_NULL",data:t},r);break}case"POLL_PENDING_QUERY":{let t=this._bindings.pollPendingQuery(e.data),r=[];t&&r.push(t.buffer),this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"QUERY_RESULT_HEADER_OR_NULL",data:t},r);break}case"CANCEL_PENDING_QUERY":{let t=this._bindings.cancelPendingQuery(e.data);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"SUCCESS",data:t},[]);break}case"FETCH_QUERY_RESULTS":{let t=this._bindings.fetchQueryResults(e.data);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"QUERY_RESULT_CHUNK",data:t},[t.buffer]);break}case"GET_TABLE_NAMES":{let t=this._bindings.getTableNames(e.data[0],e.data[1]);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"TABLE_NAMES",data:t},[]);break}case"GLOB_FILE_INFOS":{let t=this._bindings.globFiles(e.data);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"FILE_INFOS",data:t},[]);break}case"REGISTER_FILE_URL":this._bindings.registerFileURL(e.data[0],e.data[1],e.data[2],e.data[3]),this.sendOK(e);break;case"REGISTER_FILE_BUFFER":this._bindings.registerFileBuffer(e.data[0],e.data[1]),this.sendOK(e);break;case"REGISTER_FILE_HANDLE":await this._bindings.registerFileHandleAsync(e.data[0],e.data[1],e.data[2],e.data[3]),this.sendOK(e);break;case"COPY_FILE_TO_PATH":this._bindings.copyFileToPath(e.data[0],e.data[1]),this.sendOK(e);break;case"COPY_FILE_TO_BUFFER":{let t=this._bindings.copyFileToBuffer(e.data);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"FILE_BUFFER",data:t},[]);break}case"COLLECT_FILE_STATISTICS":this._bindings.collectFileStatistics(e.data[0],e.data[1]),this.sendOK(e);break;case"REGISTER_OPFS_FILE_NAME":this._bindings.registerOPFSFileName(e.data[0]),this.sendOK(e);break;case"EXPORT_FILE_STATISTICS":{this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"FILE_STATISTICS",data:this._bindings.exportFileStatistics(e.data)},[]);break}case"INSERT_ARROW_FROM_IPC_STREAM":{this._bindings.insertArrowFromIPCStream(e.data[0],e.data[1],e.data[2]),this.sendOK(e);break}case"IMPORT_CSV_FROM_PATH":{this._bindings.insertCSVFromPath(e.data[0],e.data[1],e.data[2]),this.sendOK(e);break}case"IMPORT_JSON_FROM_PATH":{this._bindings.insertJSONFromPath(e.data[0],e.data[1],e.data[2]),this.sendOK(e);break}case"TOKENIZE":{let t=this._bindings.tokenize(e.data);this.postMessage({messageId:this._nextMessageId++,requestId:e.messageId,type:"SCRIPT_TOKENS",data:t},[]);break}}}catch(t){return console.log(t),this.failWith(e,t)}}};var Gc=Bo(Bc());var ga=class extends pa{constructor(e,t,r,n){super(e,t),this.mainModuleURL=r,this.pthreadWorkerURL=n}locateFile(e,t){if(e.endsWith(".wasm"))return this.mainModuleURL;if(e.endsWith(".worker.js")){if(!this.pthreadWorkerURL)throw new Error("Missing DuckDB worker URL!");return this.pthreadWorkerURL}throw new Error("WASM instantiation requested unexpected file: prefix=".concat(t," path=").concat(e))}instantiateWasm(e,t){globalThis.DUCKDB_RUNTIME=this._runtime;let r=this.onInstantiationProgress;if(WebAssembly.instantiateStreaming)if(typeof TransformStream=="function"){let a=(async()=>{var g;let l=new Request(this.mainModuleURL),c=await fetch(l),u=c.headers.get("content-length"),_=u&&parseInt(u,10)||0,d=new Date,f={startedAt:d,updatedAt:d,bytesTotal:_||0,bytesLoaded:0},p={transform(h,b){f.bytesLoaded+=h.byteLength;let y=new Date;if(y.getTime()-f.updatedAt.getTime()<20){f.updatedAt=y,b.enqueue(h);return}for(let A of r)A(f);b.enqueue(h)}},m=new TransformStream(p);return new Response((g=c.body)==null?void 0:g.pipeThrough(m),c)})();WebAssembly.instantiateStreaming(a,e).then(l=>{t(l.instance,l.module)})}else{console.warn("instantiating without progress handler since transform streams are unavailable");let n=new Request(this.mainModuleURL);WebAssembly.instantiateStreaming(fetch(n),e).then(a=>{t(a.instance,a.module)})}else if(typeof XMLHttpRequest=="function"){let n=new XMLHttpRequest,a=this.mainModuleURL,l=new Date,c={startedAt:l,updatedAt:l,bytesTotal:0,bytesLoaded:0};n.open("GET",a),n.responseType="arraybuffer",n.onerror=u=>{throw this.logger.log({timestamp:new Date,level:4,origin:3,topic:5,event:2,value:"Failed to load WASM: "+u}),new Error(u.toString())},n.onprogress=u=>{c.bytesTotal=u.total,c.bytesLoaded=u.loaded;let _=new Date;if(_.getTime()-c.updatedAt.getTime()<20){c.updatedAt=_;return}for(let d of r)d(c)},n.onload=()=>{WebAssembly.instantiate(n.response,e).then(u=>{t(u.instance,u.module)}).catch(u=>{throw this.logger.log({timestamp:new Date,level:4,origin:3,topic:5,event:2,value:"Failed to instantiate WASM: "+u}),new Error(u)})},n.send()}else console.warn("instantiating with manual fetch since streaming instantiation and xhrs are unavailable"),(async()=>{let a=new Request(this.mainModuleURL),c=await(await fetch(a)).arrayBuffer();WebAssembly.instantiate(c,e).then(u=>{t(u.instance,u.module)})})();return[]}};var ha=class extends ga{constructor(e,t,r,n=null){super(e,t,r,n)}instantiateImpl(e){return(0,Gc.default)({...e,instantiateWasm:this.instantiateWasm.bind(this),locateFile:this.locateFile.bind(this)})}};var Cr=Bo(Rc()),Hc=function(o,e,t){var r;if((r=o==null?void 0:o.endpoint)!=null&&r.startsWith("http")){let n="".concat(o==null?void 0:o.endpoint),a=n.indexOf("://")+3;return n.substring(a)}else return o!=null&&o.endpoint?"".concat(t,".").concat(o==null?void 0:o.endpoint):"".concat(t,".s3.amazonaws.com")};function Ed(o,e,t){var a,l,c,u;let r=Nc(e),n=r.path;return Wc(o)&&(n="/".concat(r.bucket).concat(n)),{url:n,query:"",host:Hc(o,e,r.bucket),region:(a=o==null?void 0:o.region)!=null?a:"",service:"s3",method:t,accessKeyId:(l=o==null?void 0:o.accessKeyId)!=null?l:"",secretAccessKey:(c=o==null?void 0:o.secretAccessKey)!=null?c:"",sessionToken:(u=o==null?void 0:o.sessionToken)!=null?u:"",dateNow:new Date().toISOString().replace(/-/g,"").split("T")[0],datetimeNow:new Date().toISOString().replace(/-/g,"").replace(/:/g,"").split(".")[0]+"Z"}}function wd(o,e=!1){let t="0123456789ABCDEF",r="";for(let n=0;n="A"&&a<="Z"||a>="a"&&a<="z"||a>="0"&&a<="9"||a=="_"||a=="-"||a=="~"||a=="."?r+=a:a=="/"?e?r+="%2F":r+=a:(r+="%",r+=t[a.charCodeAt(0)>>4],r+=t[a.charCodeAt(0)&15])}return r}function Ad(o,e=null){var g;let t=(g=e==null?void 0:e.contentHash)!=null?g:"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",r=new Map;r.set("x-amz-date",o.datetimeNow),r.set("x-amz-content-sha256",t),o.sessionToken&&r.set("x-amz-security-token",o.sessionToken);let n="";e!=null&&e.contentType&&(n+="content-type;"),n+="host;x-amz-content-sha256;x-amz-date",o.sessionToken&&(n+=";x-amz-security-token");let a=o.method+"\n"+wd(o.url)+"\n"+o.query;e!=null&&e.contentType&&(a+="\ncontent-type:"+(e==null?void 0:e.contentType)),a+="\nhost:"+o.host+"\nx-amz-content-sha256:"+t+"\nx-amz-date:"+o.datetimeNow,o.sessionToken&&o.sessionToken.length>0&&(a+="\nx-amz-security-token:"+o.sessionToken),a+="\n\n"+n+"\n"+t;let l=(0,Cr.sha256)(a),c="AWS4-HMAC-SHA256\n"+o.datetimeNow+"\n"+o.dateNow+"/"+o.region+"/"+o.service+"/aws4_request\n"+l,u="AWS4"+o.secretAccessKey,_=Cr.sha256.hmac.arrayBuffer(u,o.dateNow),d=Cr.sha256.hmac.arrayBuffer(_,o.region),f=Cr.sha256.hmac.arrayBuffer(d,o.service),p=Cr.sha256.hmac.arrayBuffer(f,"aws4_request"),m=Cr.sha256.hmac(p,c);return r.set("Authorization","AWS4-HMAC-SHA256 Credential="+o.accessKeyId+"/"+o.dateNow+"/"+o.region+"/"+o.service+"/aws4_request, SignedHeaders="+n+", Signature="+m),r}var Ld=function(o,e,t,r=null,n=null){let a=Ed(o,e,t),l={contentType:r,contentHash:n?Cr.sha256.hex(n):null};return Ad(a,l)};function Tt(o,e,t,r,n=null,a=null){(e!=null&&e.accessKeyId||e!=null&&e.sessionToken)&&(Ld(e,t,r,n,a).forEach((c,u)=>{o.setRequestHeader(u,c)}),n&&o.setRequestHeader("content-type",n))}function Nc(o){if(o.indexOf("s3://")!=0)throw new Error("URL needs to start with s3://");let e=o.indexOf("/",5);if(e==-1)throw new Error("URL needs to contain a '/' after the host");let t=o.substring(5,e);if(!t)throw new Error("URL needs to contain a bucket name");let r=o.substring(e);if(!r)throw new Error("URL needs to contain key");return{bucket:t,path:r}}function Wc(o){var e;return!!((e=o==null?void 0:o.endpoint)!=null&&e.startsWith("http"))}function xt(o,e){let t=Nc(e);return Wc(o)?"".concat(o==null?void 0:o.endpoint,"/").concat(t.bucket)+t.path:"https://"+Hc(o,e,t.bucket)+t.path}var Dd=7,Vc=/\/|\\/,X={_files:new Map,_fileInfoCache:new Map,_udfFunctions:new Map,_globalFileInfo:null,_preparedHandles:{},_opfsRoot:null,getFileInfo(o,e){try{let t=X._fileInfoCache.get(e),[r,n,a]=fe(o,"duckdb_web_fs_get_file_info_by_id",["number","number"],[e,(t==null?void 0:t.cacheEpoch)||0]);if(r!==0)return null;if(a===0)return t;let l=re(o,n,a);ye(o);try{let c=JSON.parse(l);if(c==null)return null;let u={...c,blob:null};return X._fileInfoCache.set(e,u),!X._files.has(u.fileName)&&X._preparedHandles[u.fileName]&&(X._files.set(u.fileName,X._preparedHandles[u.fileName]),delete X._preparedHandles[u.fileName]),u}catch(c){return console.warn(c),null}}catch(t){return console.log(t),null}},getGlobalFileInfo(o){var e;try{let[t,r,n]=fe(o,"duckdb_web_get_global_file_info",["number"],[((e=X._globalFileInfo)==null?void 0:e.cacheEpoch)||0]);if(t!==0)return null;if(n===0)return X._globalFileInfo;let a=re(o,r,n);ye(o);let l=JSON.parse(a);return l==null?null:(X._globalFileInfo={...l,blob:null},X._globalFileInfo)}catch(t){return console.log(t),null}},async assignOPFSRoot(){X._opfsRoot||(X._opfsRoot=await navigator.storage.getDirectory())},async prepareFileHandles(o,e){if(e===3){await X.assignOPFSRoot();let t=async n=>{if(X._files.has(n))return{path:n,handle:X._files.get(n),fromCached:!0};let l=X._opfsRoot,c=n.slice(Dd),u=c;if(Vc.test(c)){let d=c.split(Vc);if(u=d.pop(),!u)throw new Error("Invalid path ".concat(n));for(let f of d)l=await l.getDirectoryHandle(f,{create:!0})}let _=await l.getFileHandle(u,{create:!1}).catch(d=>{if((d==null?void 0:d.name)==="NotFoundError")return console.debug("File ".concat(n," does not exists yet, creating...")),l.getFileHandle(u,{create:!0});throw d});try{let d=await _.createSyncAccessHandle();return X._preparedHandles[n]=d,{path:n,handle:d,fromCached:!1}}catch(d){throw new Error(d.message+":"+name)}},r=[];for(let n of o){let a=await t(n);r.push(a)}return r}throw new Error("Unsupported protocol ".concat(e," for paths ").concat(o," with protocol ").concat(e))},async prepareDBFileHandle(o,e){if(e===3&&this.prepareFileHandles){let t=[o,"".concat(o,".wal")];return this.prepareFileHandles(t,e)}throw new Error("Unsupported protocol ".concat(e," for path ").concat(o," with protocol ").concat(e))},testPlatformFeature:(o,e)=>{switch(e){case 1:return typeof BigInt64Array<"u";default:return console.warn("test for unknown feature: ".concat(e)),!1}},getDefaultDataProtocol(o){return 2},openFile:(o,e,t)=>{var r,n,a;try{X._fileInfoCache.delete(e);let l=X.getFileInfo(o,e);switch(l==null?void 0:l.dataProtocol){case 4:case 5:{if(t&1&&t&2)throw new Error("Opening file ".concat(l.fileName," failed: cannot open file with both read and write flags set"));if(t&32)throw new Error("Opening file ".concat(l.fileName," failed: appending to HTTP/S3 files is not supported"));if(t&2){let _=new XMLHttpRequest;if(l.dataProtocol==5?(_.open("HEAD",xt(l.s3Config,l.dataUrl),!1),Tt(_,l.s3Config,l.dataUrl,"HEAD")):_.open("HEAD",l.dataUrl,!1),_.send(null),_.status!=200&&_.status!=404)throw new Error("Opening file ".concat(l.fileName," failed: Unexpected return status from server (").concat(_.status,")"));if(_.status==404&&!(t&8||t&16))throw new Error("Opening file ".concat(l.fileName," failed: Cannot write to non-existent file without FILE_FLAGS_FILE_CREATE or FILE_FLAGS_FILE_CREATE_NEW flag."));let d=o._malloc(1),f=new Uint8Array;o.HEAPU8.set(f,d);let p=o._malloc(2*8);return o.HEAPF64[(p>>3)+0]=1,o.HEAPF64[(p>>3)+1]=d,p}else if(!(t&1))throw new Error("Opening file ".concat(l.fileName," failed: unsupported file flags: ").concat(t));let c=null,u=null;if(l.reliableHeadRequests||!l.allowFullHttpReads)try{let _=new XMLHttpRequest;if(l.dataProtocol==5?(_.open("HEAD",xt(l.s3Config,l.dataUrl),!1),Tt(_,l.s3Config,l.dataUrl,"HEAD")):_.open("HEAD",l.dataUrl,!1),_.setRequestHeader("Range","bytes=0-"),_.send(null),c=_.getResponseHeader("Content-Length"),c!==null&&_.status==206){let d=o._malloc(16);return o.HEAPF64[(d>>3)+0]=+c,o.HEAPF64[(d>>3)+1]=0,d}}catch(_){u=_,console.warn("HEAD request with range header failed: ".concat(_))}if(l.allowFullHttpReads){{let d=new XMLHttpRequest;l.dataProtocol==5?(d.open("GET",xt(l.s3Config,l.dataUrl),!1),Tt(d,l.s3Config,l.dataUrl,"GET")):d.open("GET",l.dataUrl,!1),d.responseType="arraybuffer",d.setRequestHeader("Range","bytes=0-0"),d.send(null);let f=(r=d.getResponseHeader("Content-Range"))==null?void 0:r.split("/")[1],p=d.getResponseHeader("Content-Length"),m=null;if(f!==void 0)m=f;else if(!l.reliableHeadRequests){let g=new XMLHttpRequest;l.dataProtocol==5?(g.open("HEAD",xt(l.s3Config,l.dataUrl),!1),Tt(g,l.s3Config,l.dataUrl,"HEAD")):g.open("HEAD",l.dataUrl,!1),g.setRequestHeader("Range","bytes=0-"),g.send(null),c=g.getResponseHeader("Content-Length"),c!==null&&+c>1&&(m=c)}if(d.status==206&&p!==null&&+p==1&&m!==null){let g=o._malloc(16);return o.HEAPF64[(g>>3)+0]=+m,o.HEAPF64[(g>>3)+1]=0,g}if(d.status==200&&p!==null&&c!==null&&+p==+c){console.warn("fall back to full HTTP read for: ".concat(l.dataUrl));let g=o._malloc(d.response.byteLength),h=new Uint8Array(d.response,0,d.response.byteLength);o.HEAPU8.set(h,g);let b=o._malloc(2*8);return o.HEAPF64[(b>>3)+0]=d.response.byteLength,o.HEAPF64[(b>>3)+1]=g,b}}console.warn("falling back to full HTTP read for: ".concat(l.dataUrl));let _=new XMLHttpRequest;if(l.dataProtocol==5?(_.open("GET",xt(l.s3Config,l.dataUrl),!1),Tt(_,l.s3Config,l.dataUrl,"GET")):_.open("GET",l.dataUrl,!1),_.responseType="arraybuffer",_.send(null),_.status==200){let d=o._malloc(_.response.byteLength),f=new Uint8Array(_.response,0,_.response.byteLength);o.HEAPU8.set(f,d);let p=o._malloc(2*8);return o.HEAPF64[(p>>3)+0]=_.response.byteLength,o.HEAPF64[(p>>3)+1]=d,p}}if(u!=null)throw new Error("Reading file ".concat(l.fileName," failed with error: ").concat(u));return 0}case 2:{let c=(n=X._files)==null?void 0:n.get(l.fileName);if(c){let d=o._malloc(16);return o.HEAPF64[(d>>3)+0]=c.size,o.HEAPF64[(d>>3)+1]=0,d}console.warn("Buffering missing file: ".concat(l.fileName));let u=o._malloc(2*8),_=o._malloc(1);return o.HEAPF64[(u>>3)+0]=1,o.HEAPF64[(u>>3)+1]=_,u}case 3:{let c=(a=X._files)==null?void 0:a.get(l.fileName);if(!c)throw new Error("No OPFS access handle registered with name: ".concat(l.fileName));t&16&&c.truncate(0);let u=o._malloc(2*8),_=c.getSize();return o.HEAPF64[(u>>3)+0]=_,o.HEAPF64[(u>>3)+1]=0,u}}}catch(l){console.error(l.toString()),nt(o,l.toString())}return 0},glob:(o,e,t)=>{var r;try{let n=re(o,e,t);if(n.startsWith("http")||n.startsWith("s3://")){let a=new XMLHttpRequest;if(n.startsWith("s3://")){let l=X.getGlobalFileInfo(o);a.open("HEAD",xt(l==null?void 0:l.s3Config,n),!1),Tt(a,l==null?void 0:l.s3Config,n,"HEAD")}else a.open("HEAD",n,!1);if(a.send(null),a.status!=200&&a.status!==206){if(!((r=X.getGlobalFileInfo(o))!=null&&r.allowFullHttpReads))return nt(o,"HEAD request failed: ".concat(n,", with full http reads are disabled")),0;let l=new XMLHttpRequest;if(n.startsWith("s3://")){let u=X.getGlobalFileInfo(o);l.open("GET",xt(u==null?void 0:u.s3Config,n),!1),Tt(l,u==null?void 0:u.s3Config,n,"HEAD")}else l.open("GET",n,!1);if(l.setRequestHeader("Range","bytes=0-0"),l.send(null),l.status!=200&&l.status!==206)return nt(o,"HEAD and GET requests failed: ".concat(n)),0;let c=l.getResponseHeader("Content-Length");c&&+c>1&&console.warn("Range request for ".concat(n," did not return a partial response: ").concat(l.status,' "').concat(l.statusText,'"'))}o.ccall("duckdb_web_fs_glob_add_path",null,["string"],[n])}else for(let[a]of X._files.entries()||[])a.startsWith(n)&&o.ccall("duckdb_web_fs_glob_add_path",null,["string"],[a])}catch(n){return console.log(n),nt(o,n.toString()),0}},checkFile:(o,e,t)=>{try{let r=re(o,e,t);if(r.startsWith("http")||r.startsWith("s3://")){let n=new XMLHttpRequest;if(r.startsWith("s3://")){let a=X.getGlobalFileInfo(o);n.open("HEAD",xt(a==null?void 0:a.s3Config,r),!1),Tt(n,a==null?void 0:a.s3Config,r,"HEAD")}else n.open("HEAD",r,!1);return n.send(null),n.status==206||n.status==200}else return X._files.has(r)}catch(r){return console.log(r),!1}return!1},syncFile:(o,e)=>{},closeFile:(o,e)=>{var r;let t=X.getFileInfo(o,e);X._fileInfoCache.delete(e);try{switch(t==null?void 0:t.dataProtocol){case 0:case 4:case 5:break;case 1:case 2:return;case 3:{let n=(r=X._files)==null?void 0:r.get(t.fileName);if(!n)throw new Error("No OPFS access handle registered with name: ".concat(t.fileName));return n.flush()}}}catch(n){console.log(n),nt(o,n.toString())}},dropFile:(o,e,t)=>{var a;let r=re(o,e,t),n=(a=X._files)==null?void 0:a.get(r);if(n){if(X._files.delete(r),n instanceof FileSystemSyncAccessHandle)try{n.flush(),n.close()}catch(l){throw new Error("Cannot drop file with name: ".concat(r))}n instanceof Blob}},truncateFile:(o,e,t)=>{var n;let r=X.getFileInfo(o,e);switch(r==null?void 0:r.dataProtocol){case 4:nt(o,"Cannot truncate a http file");return;case 5:nt(o,"Cannot truncate an s3 file");return;case 0:case 1:case 2:nt(o,"truncateFile not implemented");return;case 3:{let a=(n=X._files)==null?void 0:n.get(r.fileName);if(!a)throw new Error("No OPFS access handle registered with name: ".concat(r.fileName));return a.truncate(t)}}return 0},readFile(o,e,t,r,n){var a;if(r==0)return 0;try{let l=X.getFileInfo(o,e);switch(l==null?void 0:l.dataProtocol){case 4:case 5:{if(!l.dataUrl)throw new Error("Missing data URL for file ".concat(e));try{let c=new XMLHttpRequest;if(l.dataProtocol==5?(c.open("GET",xt(l==null?void 0:l.s3Config,l.dataUrl),!1),Tt(c,l==null?void 0:l.s3Config,l.dataUrl,"GET")):c.open("GET",l.dataUrl,!1),c.responseType="arraybuffer",c.setRequestHeader("Range","bytes=".concat(n,"-").concat(n+r-1)),c.send(null),c.status==206||c.status==200&&r==c.response.byteLength&&n==0){let u=new Uint8Array(c.response,0,Math.min(c.response.byteLength,r));return o.HEAPU8.set(u,t),u.byteLength}else if(c.status==200){console.warn("Range request for ".concat(l.dataUrl," did not return a partial response: ").concat(c.status,' "').concat(c.statusText,'"'));let u=new Uint8Array(c.response,n,Math.min(c.response.byteLength-n,r));return o.HEAPU8.set(u,t),u.byteLength}else throw new Error("Range request for ".concat(l.dataUrl," did returned non-success status: ").concat(c.status,' "').concat(c.statusText,'"'))}catch(c){throw console.log(c),new Error("Range request for ".concat(l.dataUrl," failed with error: ").concat(c,'"'))}}case 2:{let c=(a=X._files)==null?void 0:a.get(l.fileName);if(!c)throw new Error("No HTML5 file registered with name: ".concat(l.fileName));let u=c.slice(n,n+r),_=new Uint8Array(new FileReaderSync().readAsArrayBuffer(u));return o.HEAPU8.set(_,t),_.byteLength}case 3:{let c=X._files.get(l.fileName);if(!c)throw new Error("No OPFS access handle registered with name: ".concat(l.fileName));let u=o.HEAPU8.subarray(t,t+r);return c.read(u,{at:n})}}return 0}catch(l){return console.log(l),nt(o,l.toString()),0}},writeFile:(o,e,t,r,n)=>{var l;let a=X.getFileInfo(o,e);switch(a==null?void 0:a.dataProtocol){case 4:return nt(o,"Cannot write to HTTP file"),0;case 5:{let c=o.HEAPU8.subarray(t,t+r),u=new XMLHttpRequest;return u.open("PUT",xt(a==null?void 0:a.s3Config,a.dataUrl),!1),Tt(u,a==null?void 0:a.s3Config,a.dataUrl,"PUT","",c),u.send(c),u.status!==200?(nt(o,"Failed writing file: HTTP "+u.status),0):r}case 2:return nt(o,"cannot write using the html5 file reader api"),0;case 3:{let c=(l=X._files)==null?void 0:l.get(a.fileName);if(!c)throw new Error("No OPFS access handle registered with name: ".concat(a.fileName));let u=o.HEAPU8.subarray(t,t+r);return c.write(u,{at:n})}}return 0},getLastFileModificationTime:(o,e)=>{var r;let t=X.getFileInfo(o,e);switch(t==null?void 0:t.dataProtocol){case 2:{if(!((r=X._files)==null?void 0:r.get(t.fileName)))throw Error("No handle available for file: ".concat(t.fileName));return 0}case 4:case 5:return new Date().getTime()}return 0},checkDirectory:(o,e,t)=>{let r=re(o,e,t);return console.log("checkDirectory: ".concat(r)),!1},createDirectory:(o,e,t)=>{let r=re(o,e,t);console.log("createDirectory: ".concat(r))},removeDirectory:(o,e,t)=>{let r=re(o,e,t);console.log("removeDirectory: ".concat(r))},listDirectoryEntries:(o,e,t)=>{let r=re(o,e,t);return console.log("listDirectoryEntries: ".concat(r)),!1},moveFile:(o,e,t,r,n)=>{var u,_;let a=re(o,e,t),l=re(o,r,n),c=(u=X._files)==null?void 0:u.get(a);c!==void 0&&(X._files.delete(c),X._files.set(l,c));for(let[d,f]of((_=X._fileInfoCache)==null?void 0:_.entries())||[])if(f.dataUrl==a){X._fileInfoCache.delete(d);break}return!0},removeFile:(o,e,t)=>{},callScalarUDF:(o,e,t,r,n,a,l)=>{Ic(X,o,e,t,r,n,a,l)}};var xo=class extends ma{postMessage(e,t){globalThis.postMessage(e,t)}async instantiate(e,t,r){return await new ha(this,X,e,t).instantiate(r)}};function zc(){let o=new xo;globalThis.onmessage=async e=>{await o.onMessage(e.data)}}zc();return Jc(Fd);})(); /*! Bundled license information: js-sha256/src/sha256.js: (** * [js-sha256]{@link https://github.com/emn178/js-sha256} * * @version 0.11.0 * @author Chen, Yi-Cyuan [emn178@gmail.com] * @copyright Chen, Yi-Cyuan 2014-2024 * @license MIT *) */ //# sourceMappingURL=duckdb-browser-eh.worker.js.map