@duckdb/duckdb-wasm 1.27.1-dev124.0 → 1.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/dist/duckdb-browser-blocking.cjs +1 -1
  2. package/dist/duckdb-browser-blocking.cjs.map +3 -3
  3. package/dist/duckdb-browser-blocking.mjs +1 -1
  4. package/dist/duckdb-browser-blocking.mjs.map +3 -3
  5. package/dist/duckdb-browser-coi.pthread.worker.js +1 -1
  6. package/dist/duckdb-browser-coi.pthread.worker.js.map +3 -3
  7. package/dist/duckdb-browser-coi.worker.js +1 -1
  8. package/dist/duckdb-browser-coi.worker.js.map +3 -3
  9. package/dist/duckdb-browser-eh.worker.js +1 -1
  10. package/dist/duckdb-browser-eh.worker.js.map +3 -3
  11. package/dist/duckdb-browser-mvp.worker.js +1 -1
  12. package/dist/duckdb-browser-mvp.worker.js.map +3 -3
  13. package/dist/duckdb-browser.cjs +1 -1
  14. package/dist/duckdb-browser.cjs.map +2 -2
  15. package/dist/duckdb-browser.mjs +1 -1
  16. package/dist/duckdb-browser.mjs.map +2 -2
  17. package/dist/duckdb-coi.wasm +0 -0
  18. package/dist/duckdb-eh.wasm +0 -0
  19. package/dist/duckdb-mvp.wasm +0 -0
  20. package/dist/duckdb-node-blocking.cjs +4 -4
  21. package/dist/duckdb-node-blocking.cjs.map +3 -3
  22. package/dist/duckdb-node-eh.worker.cjs +4 -4
  23. package/dist/duckdb-node-eh.worker.cjs.map +3 -3
  24. package/dist/duckdb-node-mvp.worker.cjs +3 -3
  25. package/dist/duckdb-node-mvp.worker.cjs.map +3 -3
  26. package/dist/duckdb-node.cjs +1 -1
  27. package/dist/duckdb-node.cjs.map +2 -2
  28. package/dist/img/duckdb_version_badge.svg +1 -1
  29. package/dist/tests-browser.js +407 -442
  30. package/dist/tests-browser.js.map +2 -2
  31. package/dist/tests-node.cjs +406 -442
  32. package/dist/tests-node.cjs.map +2 -2
  33. package/dist/types/src/bindings/index.d.ts +1 -0
  34. package/dist/types/src/targets/duckdb.d.ts +1 -1
  35. package/package.json +8 -8
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/bindings/duckdb-coi.js", "../../js-sha256/src/sha256.js", "../src/bindings/duckdb-coi.pthread.js", "../src/targets/duckdb-browser-coi.pthread.worker.ts", "../src/utils/s3_helper.ts", "../src/bindings/udf_runtime.ts", "../src/bindings/runtime.ts", "../src/bindings/runtime_browser.ts"],
4
- "sourcesContent": ["\nvar DuckDB = (() => {\n var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined;\n if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename;\n return (\nfunction(moduleArg = {}) {\n\nfunction GROWABLE_HEAP_I8(){if(wasmMemory.buffer!=HEAP8.buffer){updateMemoryViews()}return HEAP8}function GROWABLE_HEAP_U8(){if(wasmMemory.buffer!=HEAP8.buffer){updateMemoryViews()}return HEAPU8}function GROWABLE_HEAP_I16(){if(wasmMemory.buffer!=HEAP8.buffer){updateMemoryViews()}return HEAP16}function GROWABLE_HEAP_U16(){if(wasmMemory.buffer!=HEAP8.buffer){updateMemoryViews()}return HEAPU16}function GROWABLE_HEAP_I32(){if(wasmMemory.buffer!=HEAP8.buffer){updateMemoryViews()}return HEAP32}function GROWABLE_HEAP_U32(){if(wasmMemory.buffer!=HEAP8.buffer){updateMemoryViews()}return HEAPU32}function GROWABLE_HEAP_F64(){if(wasmMemory.buffer!=HEAP8.buffer){updateMemoryViews()}return HEAPF64}var Module=moduleArg;var readyPromiseResolve,readyPromiseReject;Module[\"ready\"]=new Promise((resolve,reject)=>{readyPromiseResolve=resolve;readyPromiseReject=reject});var moduleOverrides=Object.assign({},Module);var arguments_=[];var thisProgram=\"./this.program\";var quit_=(status,toThrow)=>{throw toThrow};var ENVIRONMENT_IS_WEB=typeof window==\"object\";var ENVIRONMENT_IS_WORKER=typeof importScripts==\"function\";var ENVIRONMENT_IS_NODE=typeof process==\"object\"&&typeof process.versions==\"object\"&&typeof process.versions.node==\"string\";var ENVIRONMENT_IS_PTHREAD=Module[\"ENVIRONMENT_IS_PTHREAD\"]||false;var scriptDirectory=\"\";function locateFile(path){if(Module[\"locateFile\"]){return Module[\"locateFile\"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary;if(ENVIRONMENT_IS_NODE){var fs=require(\"fs\");var nodePath=require(\"path\");if(ENVIRONMENT_IS_WORKER){scriptDirectory=nodePath.dirname(scriptDirectory)+\"/\"}else{scriptDirectory=__dirname+\"/\"}read_=(filename,binary)=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);return fs.readFileSync(filename,binary?undefined:\"utf8\")};readBinary=filename=>{var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}return ret};readAsync=(filename,onload,onerror,binary=true)=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);fs.readFile(filename,binary?undefined:\"utf8\",(err,data)=>{if(err)onerror(err);else onload(binary?data.buffer:data)})};if(!Module[\"thisProgram\"]&&process.argv.length>1){thisProgram=process.argv[1].replace(/\\\\/g,\"/\")}arguments_=process.argv.slice(2);quit_=(status,toThrow)=>{process.exitCode=status;throw toThrow};Module[\"inspect\"]=()=>\"[Emscripten Module object]\";let nodeWorkerThreads;try{nodeWorkerThreads=require(\"worker_threads\")}catch(e){console.error('The \"worker_threads\" module is not supported in this node.js build - perhaps a newer version is needed?');throw e}global.Worker=nodeWorkerThreads.Worker}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!=\"undefined\"&&document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptDir){scriptDirectory=_scriptDir}if(scriptDirectory.indexOf(\"blob:\")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,\"\").lastIndexOf(\"/\")+1)}else{scriptDirectory=\"\"}if(!ENVIRONMENT_IS_NODE){read_=url=>{var xhr=new XMLHttpRequest;xhr.open(\"GET\",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=url=>{var xhr=new XMLHttpRequest;xhr.open(\"GET\",url,false);xhr.responseType=\"arraybuffer\";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=(url,onload,onerror)=>{var xhr=new XMLHttpRequest;xhr.open(\"GET\",url,true);xhr.responseType=\"arraybuffer\";xhr.onload=()=>{if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}}else{}if(ENVIRONMENT_IS_NODE){if(typeof performance==\"undefined\"){global.performance=require(\"perf_hooks\").performance}}var defaultPrint=console.log.bind(console);var defaultPrintErr=console.error.bind(console);if(ENVIRONMENT_IS_NODE){defaultPrint=(...args)=>fs.writeSync(1,args.join(\" \")+\"\\n\");defaultPrintErr=(...args)=>fs.writeSync(2,args.join(\" \")+\"\\n\")}var out=Module[\"print\"]||defaultPrint;var err=Module[\"printErr\"]||defaultPrintErr;Object.assign(Module,moduleOverrides);moduleOverrides=null;if(Module[\"arguments\"])arguments_=Module[\"arguments\"];if(Module[\"thisProgram\"])thisProgram=Module[\"thisProgram\"];if(Module[\"quit\"])quit_=Module[\"quit\"];var wasmBinary;if(Module[\"wasmBinary\"])wasmBinary=Module[\"wasmBinary\"];var noExitRuntime=Module[\"noExitRuntime\"]||true;if(typeof WebAssembly!=\"object\"){abort(\"no native wasm support detected\")}var wasmMemory;var wasmModule;var ABORT=false;var EXITSTATUS;function assert(condition,text){if(!condition){abort(text)}}var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateMemoryViews(){var b=wasmMemory.buffer;Module[\"HEAP8\"]=HEAP8=new Int8Array(b);Module[\"HEAP16\"]=HEAP16=new Int16Array(b);Module[\"HEAPU8\"]=HEAPU8=new Uint8Array(b);Module[\"HEAPU16\"]=HEAPU16=new Uint16Array(b);Module[\"HEAP32\"]=HEAP32=new Int32Array(b);Module[\"HEAPU32\"]=HEAPU32=new Uint32Array(b);Module[\"HEAPF32\"]=HEAPF32=new Float32Array(b);Module[\"HEAPF64\"]=HEAPF64=new Float64Array(b)}var INITIAL_MEMORY=Module[\"INITIAL_MEMORY\"]||16777216;assert(INITIAL_MEMORY>=65536,\"INITIAL_MEMORY should be larger than STACK_SIZE, was \"+INITIAL_MEMORY+\"! (STACK_SIZE=\"+65536+\")\");if(ENVIRONMENT_IS_PTHREAD){wasmMemory=Module[\"wasmMemory\"]}else{if(Module[\"wasmMemory\"]){wasmMemory=Module[\"wasmMemory\"]}else{wasmMemory=new WebAssembly.Memory({\"initial\":INITIAL_MEMORY/65536,\"maximum\":4294967296/65536,\"shared\":true});if(!(wasmMemory.buffer instanceof SharedArrayBuffer)){err(\"requested a shared WebAssembly.Memory but the returned buffer is not a SharedArrayBuffer, indicating that while the browser has SharedArrayBuffer it does not have WebAssembly threads support - you may need to set a flag\");if(ENVIRONMENT_IS_NODE){err(\"(on node you may need: --experimental-wasm-threads --experimental-wasm-bulk-memory and/or recent version)\")}throw Error(\"bad memory\")}}}updateMemoryViews();INITIAL_MEMORY=wasmMemory.buffer.byteLength;var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeKeepaliveCounter=0;function keepRuntimeAlive(){return noExitRuntime||runtimeKeepaliveCounter>0}function preRun(){if(Module[\"preRun\"]){if(typeof Module[\"preRun\"]==\"function\")Module[\"preRun\"]=[Module[\"preRun\"]];while(Module[\"preRun\"].length){addOnPreRun(Module[\"preRun\"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;if(ENVIRONMENT_IS_PTHREAD)return;callRuntimeCallbacks(__ATINIT__)}function preMain(){if(ENVIRONMENT_IS_PTHREAD)return;callRuntimeCallbacks(__ATMAIN__)}function postRun(){if(ENVIRONMENT_IS_PTHREAD)return;if(Module[\"postRun\"]){if(typeof Module[\"postRun\"]==\"function\")Module[\"postRun\"]=[Module[\"postRun\"]];while(Module[\"postRun\"].length){addOnPostRun(Module[\"postRun\"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;if(Module[\"monitorRunDependencies\"]){Module[\"monitorRunDependencies\"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module[\"monitorRunDependencies\"]){Module[\"monitorRunDependencies\"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}function abort(what){if(Module[\"onAbort\"]){Module[\"onAbort\"](what)}what=\"Aborted(\"+what+\")\";err(what);ABORT=true;EXITSTATUS=1;what+=\". Build with -sASSERTIONS for more info.\";if(runtimeInitialized){___trap()}var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}var dataURIPrefix=\"data:application/octet-stream;base64,\";function isDataURI(filename){return filename.startsWith(dataURIPrefix)}function isFileURI(filename){return filename.startsWith(\"file://\")}var wasmBinaryFile;wasmBinaryFile=\"./duckdb-coi.wasm\";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinarySync(file){if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(file)}throw\"both async and sync fetching of the wasm failed\"}function getBinaryPromise(binaryFile){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)){if(typeof fetch==\"function\"){return fetch(binaryFile,{credentials:\"same-origin\"}).then(response=>{if(!response[\"ok\"]){throw\"failed to load wasm binary file at '\"+binaryFile+\"'\"}return response[\"arrayBuffer\"]()}).catch(()=>getBinarySync(binaryFile))}}return Promise.resolve().then(()=>getBinarySync(binaryFile))}function instantiateArrayBuffer(binaryFile,imports,receiver){return getBinaryPromise(binaryFile).then(binary=>WebAssembly.instantiate(binary,imports)).then(instance=>instance).then(receiver,reason=>{err(`failed to asynchronously prepare wasm: ${reason}`);abort(reason)})}function instantiateAsync(binary,binaryFile,imports,callback){if(!binary&&typeof WebAssembly.instantiateStreaming==\"function\"&&!isDataURI(binaryFile)&&!ENVIRONMENT_IS_NODE&&typeof fetch==\"function\"){return fetch(binaryFile,{credentials:\"same-origin\"}).then(response=>{var result=WebAssembly.instantiateStreaming(response,imports);return result.then(callback,function(reason){err(`wasm streaming compile failed: ${reason}`);err(\"falling back to ArrayBuffer instantiation\");return instantiateArrayBuffer(binaryFile,imports,callback)})})}return instantiateArrayBuffer(binaryFile,imports,callback)}function createWasm(){var info={\"a\":wasmImports};function receiveInstance(instance,module){wasmExports=instance.exports;wasmExports=applySignatureConversions(wasmExports);registerTLSInit(wasmExports[\"db\"]);wasmTable=wasmExports[\"sa\"];addOnInit(wasmExports[\"qa\"]);wasmModule=module;removeRunDependency(\"wasm-instantiate\");return wasmExports}addRunDependency(\"wasm-instantiate\");function receiveInstantiationResult(result){receiveInstance(result[\"instance\"],result[\"module\"])}if(Module[\"instantiateWasm\"]){try{return Module[\"instantiateWasm\"](info,receiveInstance)}catch(e){err(`Module.instantiateWasm callback failed with error: ${e}`);readyPromiseReject(e)}}instantiateAsync(wasmBinary,wasmBinaryFile,info,receiveInstantiationResult).catch(readyPromiseReject);return{}}var tempDouble;var tempI64;function ExitStatus(status){this.name=\"ExitStatus\";this.message=`Program terminated with exit(${status})`;this.status=status}var terminateWorker=worker=>{worker.terminate();worker.onmessage=e=>{}};var killThread=pthread_ptr=>{var worker=PThread.pthreads[pthread_ptr];delete PThread.pthreads[pthread_ptr];terminateWorker(worker);__emscripten_thread_free_data(pthread_ptr);PThread.runningWorkers.splice(PThread.runningWorkers.indexOf(worker),1);worker.pthread_ptr=0};var cancelThread=pthread_ptr=>{var worker=PThread.pthreads[pthread_ptr];worker.postMessage({\"cmd\":\"cancel\"})};var cleanupThread=pthread_ptr=>{var worker=PThread.pthreads[pthread_ptr];assert(worker);PThread.returnWorkerToPool(worker)};var zeroMemory=(address,size)=>{GROWABLE_HEAP_U8().fill(0,address,address+size);return address};var spawnThread=threadParams=>{var worker=PThread.getNewWorker();if(!worker){return 6}PThread.runningWorkers.push(worker);PThread.pthreads[threadParams.pthread_ptr]=worker;worker.pthread_ptr=threadParams.pthread_ptr;var msg={\"cmd\":\"run\",\"start_routine\":threadParams.startRoutine,\"arg\":threadParams.arg,\"pthread_ptr\":threadParams.pthread_ptr};if(ENVIRONMENT_IS_NODE){worker.unref()}worker.postMessage(msg,threadParams.transferList);return 0};var UTF8Decoder=typeof TextDecoder!=\"undefined\"?new TextDecoder(\"utf8\"):undefined;var UTF8ArrayToString=(heapOrArray,idx,maxBytesToRead)=>{idx>>>=0;var endIdx=idx+maxBytesToRead;var endPtr=idx;while(heapOrArray[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&heapOrArray.buffer&&UTF8Decoder){return UTF8Decoder.decode(heapOrArray.buffer instanceof SharedArrayBuffer?heapOrArray.slice(idx,endPtr):heapOrArray.subarray(idx,endPtr))}var str=\"\";while(idx<endPtr){var u0=heapOrArray[idx++];if(!(u0&128)){str+=String.fromCharCode(u0);continue}var u1=heapOrArray[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}var u2=heapOrArray[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u0=(u0&7)<<18|u1<<12|u2<<6|heapOrArray[idx++]&63}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}return str};var UTF8ToString=(ptr,maxBytesToRead)=>{ptr>>>=0;return ptr?UTF8ArrayToString(GROWABLE_HEAP_U8(),ptr,maxBytesToRead):\"\"};var SYSCALLS={varargs:undefined,get(){var ret=GROWABLE_HEAP_I32()[+SYSCALLS.varargs>>>2>>>0];SYSCALLS.varargs+=4;return ret},getp(){return SYSCALLS.get()},getStr(ptr){var ret=UTF8ToString(ptr);return ret}};function _proc_exit(code){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(0,1,code);EXITSTATUS=code;if(!keepRuntimeAlive()){PThread.terminateAllThreads();if(Module[\"onExit\"])Module[\"onExit\"](code);ABORT=true}quit_(code,new ExitStatus(code))}var exitJS=(status,implicit)=>{EXITSTATUS=status;if(ENVIRONMENT_IS_PTHREAD){exitOnMainThread(status);throw\"unwind\"}_proc_exit(status)};var _exit=exitJS;var handleException=e=>{if(e instanceof ExitStatus||e==\"unwind\"){return EXITSTATUS}quit_(1,e)};var PThread={unusedWorkers:[],runningWorkers:[],tlsInitFunctions:[],pthreads:{},init(){if(ENVIRONMENT_IS_PTHREAD){PThread.initWorker()}else{PThread.initMainThread()}},initMainThread(){var pthreadPoolSize=4;while(pthreadPoolSize--){PThread.allocateUnusedWorker()}addOnPreRun(()=>{addRunDependency(\"loading-workers\");PThread.loadWasmModuleToAllWorkers(()=>removeRunDependency(\"loading-workers\"))})},initWorker(){noExitRuntime=false},setExitStatus:status=>{EXITSTATUS=status},terminateAllThreads__deps:[\"$terminateWorker\"],terminateAllThreads:()=>{for(var worker of PThread.runningWorkers){terminateWorker(worker)}for(var worker of PThread.unusedWorkers){terminateWorker(worker)}PThread.unusedWorkers=[];PThread.runningWorkers=[];PThread.pthreads=[]},returnWorkerToPool:worker=>{var pthread_ptr=worker.pthread_ptr;delete PThread.pthreads[pthread_ptr];PThread.unusedWorkers.push(worker);PThread.runningWorkers.splice(PThread.runningWorkers.indexOf(worker),1);worker.pthread_ptr=0;__emscripten_thread_free_data(pthread_ptr)},receiveObjectTransfer(data){},threadInitTLS(){PThread.tlsInitFunctions.forEach(f=>f())},loadWasmModuleToWorker:worker=>new Promise(onFinishedLoading=>{worker.onmessage=e=>{var d=e[\"data\"];var cmd=d[\"cmd\"];if(d[\"targetThread\"]&&d[\"targetThread\"]!=_pthread_self()){var targetWorker=PThread.pthreads[d[\"targetThread\"]];if(targetWorker){targetWorker.postMessage(d,d[\"transferList\"])}else{err(`Internal error! Worker sent a message \"${cmd}\" to target pthread ${d[\"targetThread\"]}, but that thread no longer exists!`)}return}if(cmd===\"checkMailbox\"){checkMailbox()}else if(cmd===\"spawnThread\"){spawnThread(d)}else if(cmd===\"cleanupThread\"){cleanupThread(d[\"thread\"])}else if(cmd===\"killThread\"){killThread(d[\"thread\"])}else if(cmd===\"cancelThread\"){cancelThread(d[\"thread\"])}else if(cmd===\"loaded\"){worker.loaded=true;if(ENVIRONMENT_IS_NODE&&!worker.pthread_ptr){worker.unref()}onFinishedLoading(worker)}else if(cmd===\"alert\"){alert(`Thread ${d[\"threadId\"]}: ${d[\"text\"]}`)}else if(d.target===\"setimmediate\"){worker.postMessage(d)}else if(cmd===\"callHandler\"){Module[d[\"handler\"]](...d[\"args\"])}else if(cmd){err(`worker sent an unknown command ${cmd}`)}};worker.onerror=e=>{var message=\"worker sent an error!\";err(`${message} ${e.filename}:${e.lineno}: ${e.message}`);throw e};if(ENVIRONMENT_IS_NODE){worker.on(\"message\",data=>worker.onmessage({data:data}));worker.on(\"error\",e=>worker.onerror(e))}var handlers=[];var knownHandlers=[\"onExit\",\"onAbort\",\"print\",\"printErr\"];for(var handler of knownHandlers){if(Module.hasOwnProperty(handler)){handlers.push(handler)}}worker.postMessage({\"cmd\":\"load\",\"handlers\":handlers,\"urlOrBlob\":Module[\"mainScriptUrlOrBlob\"]||_scriptDir,\"wasmMemory\":wasmMemory,\"wasmModule\":wasmModule})}),loadWasmModuleToAllWorkers(onMaybeReady){if(ENVIRONMENT_IS_PTHREAD){return onMaybeReady()}let pthreadPoolReady=Promise.all(PThread.unusedWorkers.map(PThread.loadWasmModuleToWorker));pthreadPoolReady.then(onMaybeReady)},allocateUnusedWorker(){var worker;var pthreadMainJs=locateFile(\"duckdb_wasm.worker.js\");worker=new Worker(pthreadMainJs);PThread.unusedWorkers.push(worker)},getNewWorker(){if(PThread.unusedWorkers.length==0){PThread.allocateUnusedWorker();PThread.loadWasmModuleToWorker(PThread.unusedWorkers[0])}return PThread.unusedWorkers.pop()}};Module[\"PThread\"]=PThread;var callRuntimeCallbacks=callbacks=>{while(callbacks.length>0){callbacks.shift()(Module)}};var establishStackSpace=()=>{var pthread_ptr=_pthread_self();var stackHigh=GROWABLE_HEAP_U32()[pthread_ptr+52>>>2>>>0];var stackSize=GROWABLE_HEAP_U32()[pthread_ptr+56>>>2>>>0];var stackLow=stackHigh-stackSize;_emscripten_stack_set_limits(stackHigh,stackLow);stackRestore(stackHigh)};Module[\"establishStackSpace\"]=establishStackSpace;function exitOnMainThread(returnCode){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(1,0,returnCode);_exit(returnCode)}var wasmTableMirror=[];var wasmTable;var getWasmTableEntry=funcPtr=>{var func=wasmTableMirror[funcPtr];if(!func){if(funcPtr>=wasmTableMirror.length)wasmTableMirror.length=funcPtr+1;wasmTableMirror[funcPtr]=func=wasmTable.get(funcPtr)}return func};var invokeEntryPoint=(ptr,arg)=>{var result=getWasmTableEntry(ptr)(arg);function finish(result){if(keepRuntimeAlive()){PThread.setExitStatus(result)}else{__emscripten_thread_exit(result)}}finish(result)};Module[\"invokeEntryPoint\"]=invokeEntryPoint;var registerTLSInit=tlsInitFunc=>{PThread.tlsInitFunctions.push(tlsInitFunc)};var convertI32PairToI53Checked=(lo,hi)=>hi+2097152>>>0<4194305-!!lo?(lo>>>0)+hi*4294967296:NaN;function ___emscripten_init_main_thread_js(tb){tb>>>=0;__emscripten_thread_init(tb,!ENVIRONMENT_IS_WORKER,1,!ENVIRONMENT_IS_WEB,65536,false);PThread.threadInitTLS()}function ___emscripten_thread_cleanup(thread){thread>>>=0;if(!ENVIRONMENT_IS_PTHREAD)cleanupThread(thread);else postMessage({\"cmd\":\"cleanupThread\",\"thread\":thread})}function pthreadCreateProxied(pthread_ptr,attr,startRoutine,arg){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(2,1,pthread_ptr,attr,startRoutine,arg);return ___pthread_create_js(pthread_ptr,attr,startRoutine,arg)}function ___pthread_create_js(pthread_ptr,attr,startRoutine,arg){pthread_ptr>>>=0;attr>>>=0;startRoutine>>>=0;arg>>>=0;if(typeof SharedArrayBuffer==\"undefined\"){err(\"Current environment does not support SharedArrayBuffer, pthreads are not available!\");return 6}var transferList=[];var error=0;if(ENVIRONMENT_IS_PTHREAD&&(transferList.length===0||error)){return pthreadCreateProxied(pthread_ptr,attr,startRoutine,arg)}if(error)return error;var threadParams={startRoutine:startRoutine,pthread_ptr:pthread_ptr,arg:arg,transferList:transferList};if(ENVIRONMENT_IS_PTHREAD){threadParams.cmd=\"spawnThread\";postMessage(threadParams,transferList);return 0}return spawnThread(threadParams)}function ___syscall__newselect(nfds,readfds,writefds,exceptfds,timeout){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(3,1,nfds,readfds,writefds,exceptfds,timeout);readfds>>>=0;writefds>>>=0;exceptfds>>>=0;timeout>>>=0;var total=0;var srcReadLow=readfds?GROWABLE_HEAP_I32()[readfds>>>2>>>0]:0,srcReadHigh=readfds?GROWABLE_HEAP_I32()[readfds+4>>>2>>>0]:0;var srcWriteLow=writefds?GROWABLE_HEAP_I32()[writefds>>>2>>>0]:0,srcWriteHigh=writefds?GROWABLE_HEAP_I32()[writefds+4>>>2>>>0]:0;var srcExceptLow=exceptfds?GROWABLE_HEAP_I32()[exceptfds>>>2>>>0]:0,srcExceptHigh=exceptfds?GROWABLE_HEAP_I32()[exceptfds+4>>>2>>>0]:0;var dstReadLow=0,dstReadHigh=0;var dstWriteLow=0,dstWriteHigh=0;var dstExceptLow=0,dstExceptHigh=0;var allLow=(readfds?GROWABLE_HEAP_I32()[readfds>>>2>>>0]:0)|(writefds?GROWABLE_HEAP_I32()[writefds>>>2>>>0]:0)|(exceptfds?GROWABLE_HEAP_I32()[exceptfds>>>2>>>0]:0);var allHigh=(readfds?GROWABLE_HEAP_I32()[readfds+4>>>2>>>0]:0)|(writefds?GROWABLE_HEAP_I32()[writefds+4>>>2>>>0]:0)|(exceptfds?GROWABLE_HEAP_I32()[exceptfds+4>>>2>>>0]:0);var check=function(fd,low,high,val){return fd<32?low&val:high&val};for(var fd=0;fd<nfds;fd++){var mask=1<<fd%32;if(!check(fd,allLow,allHigh,mask)){continue}var stream=SYSCALLS.getStreamFromFD(fd);var flags=SYSCALLS.DEFAULT_POLLMASK;if(stream.stream_ops.poll){var timeoutInMillis=-1;if(timeout){var tv_sec=readfds?GROWABLE_HEAP_I32()[timeout>>>2>>>0]:0,tv_usec=readfds?GROWABLE_HEAP_I32()[timeout+8>>>2>>>0]:0;timeoutInMillis=(tv_sec+tv_usec/1e6)*1e3}flags=stream.stream_ops.poll(stream,timeoutInMillis)}if(flags&1&&check(fd,srcReadLow,srcReadHigh,mask)){fd<32?dstReadLow=dstReadLow|mask:dstReadHigh=dstReadHigh|mask;total++}if(flags&4&&check(fd,srcWriteLow,srcWriteHigh,mask)){fd<32?dstWriteLow=dstWriteLow|mask:dstWriteHigh=dstWriteHigh|mask;total++}if(flags&2&&check(fd,srcExceptLow,srcExceptHigh,mask)){fd<32?dstExceptLow=dstExceptLow|mask:dstExceptHigh=dstExceptHigh|mask;total++}}if(readfds){GROWABLE_HEAP_I32()[readfds>>>2>>>0]=dstReadLow;GROWABLE_HEAP_I32()[readfds+4>>>2>>>0]=dstReadHigh}if(writefds){GROWABLE_HEAP_I32()[writefds>>>2>>>0]=dstWriteLow;GROWABLE_HEAP_I32()[writefds+4>>>2>>>0]=dstWriteHigh}if(exceptfds){GROWABLE_HEAP_I32()[exceptfds>>>2>>>0]=dstExceptLow;GROWABLE_HEAP_I32()[exceptfds+4>>>2>>>0]=dstExceptHigh}return total}function SOCKFS(){abort(\"missing function: $SOCKFS\")}SOCKFS.stub=true;function FS(){abort(\"missing function: $FS\")}FS.stub=true;var getSocketFromFD=fd=>{var socket=SOCKFS.getSocket(fd);if(!socket)throw new FS.ErrnoError(8);return socket};var inetNtop4=addr=>(addr&255)+\".\"+(addr>>8&255)+\".\"+(addr>>16&255)+\".\"+(addr>>24&255);var inetNtop6=ints=>{var str=\"\";var word=0;var longest=0;var lastzero=0;var zstart=0;var len=0;var i=0;var parts=[ints[0]&65535,ints[0]>>16,ints[1]&65535,ints[1]>>16,ints[2]&65535,ints[2]>>16,ints[3]&65535,ints[3]>>16];var hasipv4=true;var v4part=\"\";for(i=0;i<5;i++){if(parts[i]!==0){hasipv4=false;break}}if(hasipv4){v4part=inetNtop4(parts[6]|parts[7]<<16);if(parts[5]===-1){str=\"::ffff:\";str+=v4part;return str}if(parts[5]===0){str=\"::\";if(v4part===\"0.0.0.0\")v4part=\"\";if(v4part===\"0.0.0.1\")v4part=\"1\";str+=v4part;return str}}for(word=0;word<8;word++){if(parts[word]===0){if(word-lastzero>1){len=0}lastzero=word;len++}if(len>longest){longest=len;zstart=word-longest+1}}for(word=0;word<8;word++){if(longest>1){if(parts[word]===0&&word>=zstart&&word<zstart+longest){if(word===zstart){str+=\":\";if(zstart===0)str+=\":\"}continue}}str+=Number(_ntohs(parts[word]&65535)).toString(16);str+=word<7?\":\":\"\"}return str};var readSockaddr=(sa,salen)=>{var family=GROWABLE_HEAP_I16()[sa>>>1>>>0];var port=_ntohs(GROWABLE_HEAP_U16()[sa+2>>>1>>>0]);var addr;switch(family){case 2:if(salen!==16){return{errno:28}}addr=GROWABLE_HEAP_I32()[sa+4>>>2>>>0];addr=inetNtop4(addr);break;case 10:if(salen!==28){return{errno:28}}addr=[GROWABLE_HEAP_I32()[sa+8>>>2>>>0],GROWABLE_HEAP_I32()[sa+12>>>2>>>0],GROWABLE_HEAP_I32()[sa+16>>>2>>>0],GROWABLE_HEAP_I32()[sa+20>>>2>>>0]];addr=inetNtop6(addr);break;default:return{errno:5}}return{family:family,addr:addr,port:port}};var inetPton4=str=>{var b=str.split(\".\");for(var i=0;i<4;i++){var tmp=Number(b[i]);if(isNaN(tmp))return null;b[i]=tmp}return(b[0]|b[1]<<8|b[2]<<16|b[3]<<24)>>>0};var jstoi_q=str=>parseInt(str);var inetPton6=str=>{var words;var w,offset,z;var valid6regx=/^((?=.*::)(?!.*::.+::)(::)?([\\dA-F]{1,4}:(:|\\b)|){5}|([\\dA-F]{1,4}:){6})((([\\dA-F]{1,4}((?!\\3)::|:\\b|$))|(?!\\2\\3)){2}|(((2[0-4]|1\\d|[1-9])?\\d|25[0-5])\\.?\\b){4})$/i;var parts=[];if(!valid6regx.test(str)){return null}if(str===\"::\"){return[0,0,0,0,0,0,0,0]}if(str.startsWith(\"::\")){str=str.replace(\"::\",\"Z:\")}else{str=str.replace(\"::\",\":Z:\")}if(str.indexOf(\".\")>0){str=str.replace(new RegExp(\"[.]\",\"g\"),\":\");words=str.split(\":\");words[words.length-4]=jstoi_q(words[words.length-4])+jstoi_q(words[words.length-3])*256;words[words.length-3]=jstoi_q(words[words.length-2])+jstoi_q(words[words.length-1])*256;words=words.slice(0,words.length-2)}else{words=str.split(\":\")}offset=0;z=0;for(w=0;w<words.length;w++){if(typeof words[w]==\"string\"){if(words[w]===\"Z\"){for(z=0;z<8-words.length+1;z++){parts[w+z]=0}offset=z-1}else{parts[w+offset]=_htons(parseInt(words[w],16))}}else{parts[w+offset]=words[w]}}return[parts[1]<<16|parts[0],parts[3]<<16|parts[2],parts[5]<<16|parts[4],parts[7]<<16|parts[6]]};var DNS={address_map:{id:1,addrs:{},names:{}},lookup_name(name){var res=inetPton4(name);if(res!==null){return name}res=inetPton6(name);if(res!==null){return name}var addr;if(DNS.address_map.addrs[name]){addr=DNS.address_map.addrs[name]}else{var id=DNS.address_map.id++;assert(id<65535,\"exceeded max address mappings of 65535\");addr=\"172.29.\"+(id&255)+\".\"+(id&65280);DNS.address_map.names[addr]=name;DNS.address_map.addrs[name]=addr}return addr},lookup_addr(addr){if(DNS.address_map.names[addr]){return DNS.address_map.names[addr]}return null}};var getSocketAddress=(addrp,addrlen,allowNull)=>{if(allowNull&&addrp===0)return null;var info=readSockaddr(addrp,addrlen);if(info.errno)throw new FS.ErrnoError(info.errno);info.addr=DNS.lookup_addr(info.addr)||info.addr;return info};function ___syscall_bind(fd,addr,addrlen,d1,d2,d3){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(4,1,fd,addr,addrlen,d1,d2,d3);addr>>>=0;addrlen>>>=0;var sock=getSocketFromFD(fd);var info=getSocketAddress(addr,addrlen);sock.sock_ops.bind(sock,info.addr,info.port);return 0}function ___syscall_connect(fd,addr,addrlen,d1,d2,d3){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(5,1,fd,addr,addrlen,d1,d2,d3);addr>>>=0;addrlen>>>=0;var sock=getSocketFromFD(fd);var info=getSocketAddress(addr,addrlen);sock.sock_ops.connect(sock,info.addr,info.port);return 0}function ___syscall_faccessat(dirfd,path,amode,flags){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(6,1,dirfd,path,amode,flags);path>>>=0}function ___syscall_fcntl64(fd,cmd,varargs){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(7,1,fd,cmd,varargs);varargs>>>=0;SYSCALLS.varargs=varargs;return 0}function ___syscall_fstat64(fd,buf){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(8,1,fd,buf);buf>>>=0}function ___syscall_ftruncate64(fd,length_low,length_high){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(9,1,fd,length_low,length_high);var length=convertI32PairToI53Checked(length_low,length_high)}var stringToUTF8Array=(str,heap,outIdx,maxBytesToWrite)=>{outIdx>>>=0;if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++>>>0]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++>>>0]=192|u>>6;heap[outIdx++>>>0]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++>>>0]=224|u>>12;heap[outIdx++>>>0]=128|u>>6&63;heap[outIdx++>>>0]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++>>>0]=240|u>>18;heap[outIdx++>>>0]=128|u>>12&63;heap[outIdx++>>>0]=128|u>>6&63;heap[outIdx++>>>0]=128|u&63}}heap[outIdx>>>0]=0;return outIdx-startIdx};var stringToUTF8=(str,outPtr,maxBytesToWrite)=>stringToUTF8Array(str,GROWABLE_HEAP_U8(),outPtr,maxBytesToWrite);function ___syscall_getdents64(fd,dirp,count){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(10,1,fd,dirp,count);dirp>>>=0;count>>>=0}var writeSockaddr=(sa,family,addr,port,addrlen)=>{switch(family){case 2:addr=inetPton4(addr);zeroMemory(sa,16);if(addrlen){GROWABLE_HEAP_I32()[addrlen>>>2>>>0]=16}GROWABLE_HEAP_I16()[sa>>>1>>>0]=family;GROWABLE_HEAP_I32()[sa+4>>>2>>>0]=addr;GROWABLE_HEAP_I16()[sa+2>>>1>>>0]=_htons(port);break;case 10:addr=inetPton6(addr);zeroMemory(sa,28);if(addrlen){GROWABLE_HEAP_I32()[addrlen>>>2>>>0]=28}GROWABLE_HEAP_I32()[sa>>>2>>>0]=family;GROWABLE_HEAP_I32()[sa+8>>>2>>>0]=addr[0];GROWABLE_HEAP_I32()[sa+12>>>2>>>0]=addr[1];GROWABLE_HEAP_I32()[sa+16>>>2>>>0]=addr[2];GROWABLE_HEAP_I32()[sa+20>>>2>>>0]=addr[3];GROWABLE_HEAP_I16()[sa+2>>>1>>>0]=_htons(port);break;default:return 5}return 0};function ___syscall_getpeername(fd,addr,addrlen,d1,d2,d3){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(11,1,fd,addr,addrlen,d1,d2,d3);addr>>>=0;addrlen>>>=0;var sock=getSocketFromFD(fd);if(!sock.daddr){return-53}var errno=writeSockaddr(addr,sock.family,DNS.lookup_name(sock.daddr),sock.dport,addrlen);return 0}function ___syscall_getsockopt(fd,level,optname,optval,optlen,d1){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(12,1,fd,level,optname,optval,optlen,d1);optval>>>=0;optlen>>>=0;var sock=getSocketFromFD(fd);if(level===1){if(optname===4){GROWABLE_HEAP_I32()[optval>>>2>>>0]=sock.error;GROWABLE_HEAP_I32()[optlen>>>2>>>0]=4;sock.error=null;return 0}}return-50}function ___syscall_ioctl(fd,op,varargs){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(13,1,fd,op,varargs);varargs>>>=0;SYSCALLS.varargs=varargs;return 0}function ___syscall_lstat64(path,buf){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(14,1,path,buf);path>>>=0;buf>>>=0}function ___syscall_mkdirat(dirfd,path,mode){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(15,1,dirfd,path,mode);path>>>=0}function ___syscall_newfstatat(dirfd,path,buf,flags){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(16,1,dirfd,path,buf,flags);path>>>=0;buf>>>=0}function ___syscall_openat(dirfd,path,flags,varargs){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(17,1,dirfd,path,flags,varargs);path>>>=0;varargs>>>=0;SYSCALLS.varargs=varargs}function ___syscall_recvfrom(fd,buf,len,flags,addr,addrlen){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(18,1,fd,buf,len,flags,addr,addrlen);buf>>>=0;len>>>=0;addr>>>=0;addrlen>>>=0;var sock=getSocketFromFD(fd);var msg=sock.sock_ops.recvmsg(sock,len);if(!msg)return 0;if(addr){var errno=writeSockaddr(addr,sock.family,DNS.lookup_name(msg.addr),msg.port,addrlen)}GROWABLE_HEAP_U8().set(msg.buffer,buf>>>0);return msg.buffer.byteLength}function ___syscall_renameat(olddirfd,oldpath,newdirfd,newpath){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(19,1,olddirfd,oldpath,newdirfd,newpath);oldpath>>>=0;newpath>>>=0}function ___syscall_rmdir(path){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(20,1,path);path>>>=0}function ___syscall_sendto(fd,message,length,flags,addr,addr_len){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(21,1,fd,message,length,flags,addr,addr_len);message>>>=0;length>>>=0;addr>>>=0;addr_len>>>=0}function ___syscall_socket(domain,type,protocol){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(22,1,domain,type,protocol)}function ___syscall_stat64(path,buf){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(23,1,path,buf);path>>>=0;buf>>>=0}function ___syscall_unlinkat(dirfd,path,flags){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(24,1,dirfd,path,flags);path>>>=0}var nowIsMonotonic=true;var __emscripten_get_now_is_monotonic=()=>nowIsMonotonic;var maybeExit=()=>{if(!keepRuntimeAlive()){try{if(ENVIRONMENT_IS_PTHREAD)__emscripten_thread_exit(EXITSTATUS);else _exit(EXITSTATUS)}catch(e){handleException(e)}}};var callUserCallback=func=>{if(ABORT){return}try{func();maybeExit()}catch(e){handleException(e)}};function __emscripten_thread_mailbox_await(pthread_ptr){pthread_ptr>>>=0;if(typeof Atomics.waitAsync===\"function\"){var wait=Atomics.waitAsync(GROWABLE_HEAP_I32(),pthread_ptr>>>2,pthread_ptr);wait.value.then(checkMailbox);var waitingAsync=pthread_ptr+128;Atomics.store(GROWABLE_HEAP_I32(),waitingAsync>>>2,1)}}Module[\"__emscripten_thread_mailbox_await\"]=__emscripten_thread_mailbox_await;var checkMailbox=()=>{var pthread_ptr=_pthread_self();if(pthread_ptr){__emscripten_thread_mailbox_await(pthread_ptr);callUserCallback(()=>__emscripten_check_mailbox())}};Module[\"checkMailbox\"]=checkMailbox;var __emscripten_notify_mailbox_postmessage=function(targetThreadId,currThreadId,mainThreadId){targetThreadId>>>=0;currThreadId>>>=0;mainThreadId>>>=0;if(targetThreadId==currThreadId){setTimeout(()=>checkMailbox())}else if(ENVIRONMENT_IS_PTHREAD){postMessage({\"targetThread\":targetThreadId,\"cmd\":\"checkMailbox\"})}else{var worker=PThread.pthreads[targetThreadId];if(!worker){return}worker.postMessage({\"cmd\":\"checkMailbox\"})}};var withStackSave=f=>{var stack=stackSave();var ret=f();stackRestore(stack);return ret};var proxyToMainThread=function(index,sync){var numCallArgs=arguments.length-2;var outerArgs=arguments;return withStackSave(()=>{var serializedNumCallArgs=numCallArgs;var args=stackAlloc(serializedNumCallArgs*8);var b=args>>>3;for(var i=0;i<numCallArgs;i++){var arg=outerArgs[2+i];GROWABLE_HEAP_F64()[b+i>>>0]=arg}return __emscripten_run_on_main_thread_js(index,serializedNumCallArgs,args,sync)})};var proxiedJSCallArgs=[];function __emscripten_receive_on_main_thread_js(index,callingThread,numCallArgs,args){callingThread>>>=0;args>>>=0;proxiedJSCallArgs.length=numCallArgs;var b=args>>>3;for(var i=0;i<numCallArgs;i++){proxiedJSCallArgs[i]=GROWABLE_HEAP_F64()[b+i>>>0]}var func=proxiedFunctionTable[index];PThread.currentProxiedOperationCallerThread=callingThread;var rtn=func.apply(null,proxiedJSCallArgs);PThread.currentProxiedOperationCallerThread=0;return rtn}function __emscripten_thread_set_strongref(thread){thread>>>=0;if(ENVIRONMENT_IS_NODE){PThread.pthreads[thread].ref()}}var _abort=()=>{abort(\"\")};function _duckdb_web_fs_directory_create(path,pathLen){return globalThis.DUCKDB_RUNTIME.createDirectory(Module,path,pathLen)}function _duckdb_web_fs_directory_exists(path,pathLen){return globalThis.DUCKDB_RUNTIME.checkDirectory(Module,path,pathLen)}function _duckdb_web_fs_directory_list_files(path,pathLen){return globalThis.DUCKDB_RUNTIME.listDirectoryEntries(Module,path,pathLen)}function _duckdb_web_fs_directory_remove(path,pathLen){return globalThis.DUCKDB_RUNTIME.removeDirectory(Module,path,pathLen)}function _duckdb_web_fs_file_close(fileId){return globalThis.DUCKDB_RUNTIME.closeFile(Module,fileId)}function _duckdb_web_fs_file_exists(path,pathLen){return globalThis.DUCKDB_RUNTIME.checkFile(Module,path,pathLen)}function _duckdb_web_fs_file_get_last_modified_time(fileId){return globalThis.DUCKDB_RUNTIME.getLastFileModificationTime(Module,fileId)}function _duckdb_web_fs_file_move(from,fromLen,to,toLen){return globalThis.DUCKDB_RUNTIME.moveFile(Module,from,fromLen,to,toLen)}function _duckdb_web_fs_file_open(fileId,flags){return globalThis.DUCKDB_RUNTIME.openFile(Module,fileId,flags)}function _duckdb_web_fs_file_read(fileId,buf,size,location){return globalThis.DUCKDB_RUNTIME.readFile(Module,fileId,buf,size,location)}function _duckdb_web_fs_file_truncate(fileId,newSize){return globalThis.DUCKDB_RUNTIME.truncateFile(Module,fileId,newSize)}function _duckdb_web_fs_file_write(fileId,buf,size,location){return globalThis.DUCKDB_RUNTIME.writeFile(Module,fileId,buf,size,location)}function _duckdb_web_fs_get_default_data_protocol(Module){return globalThis.DUCKDB_RUNTIME.getDefaultDataProtocol(Module)}function _duckdb_web_fs_glob(path,pathLen){return globalThis.DUCKDB_RUNTIME.glob(Module,path,pathLen)}function _duckdb_web_test_platform_feature(feature){return globalThis.DUCKDB_RUNTIME.testPlatformFeature(Module,feature)}function _duckdb_web_udf_scalar_call(funcId,descPtr,descSize,ptrsPtr,ptrsSize,response){return globalThis.DUCKDB_RUNTIME.callScalarUDF(Module,funcId,descPtr,descSize,ptrsPtr,ptrsSize,response)}var warnOnce=text=>{if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;if(ENVIRONMENT_IS_NODE)text=\"warning: \"+text;err(text)}};var _emscripten_check_blocking_allowed=()=>{};var _emscripten_date_now=()=>Date.now();var runtimeKeepalivePush=()=>{runtimeKeepaliveCounter+=1};var _emscripten_exit_with_live_runtime=()=>{runtimeKeepalivePush();throw\"unwind\"};var getHeapMax=()=>4294901760;function _emscripten_get_heap_max(){return getHeapMax()}var _emscripten_get_now;_emscripten_get_now=()=>performance.timeOrigin+performance.now();var _emscripten_num_logical_cores=()=>{if(ENVIRONMENT_IS_NODE)return require(\"os\").cpus().length;return navigator[\"hardwareConcurrency\"]};var growMemory=size=>{var b=wasmMemory.buffer;var pages=(size-b.byteLength+65535)/65536;try{wasmMemory.grow(pages);updateMemoryViews();return 1}catch(e){}};function _emscripten_resize_heap(requestedSize){requestedSize>>>=0;var oldSize=GROWABLE_HEAP_U8().length;if(requestedSize<=oldSize){return false}var maxHeapSize=getHeapMax();if(requestedSize>maxHeapSize){return false}var alignUp=(x,multiple)=>x+(multiple-x%multiple)%multiple;for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=growMemory(newSize);if(replacement){return true}}return false}var ENV={};var getExecutableName=()=>thisProgram||\"./this.program\";var getEnvStrings=()=>{if(!getEnvStrings.strings){var lang=(typeof navigator==\"object\"&&navigator.languages&&navigator.languages[0]||\"C\").replace(\"-\",\"_\")+\".UTF-8\";var env={\"USER\":\"web_user\",\"LOGNAME\":\"web_user\",\"PATH\":\"/\",\"PWD\":\"/\",\"HOME\":\"/home/web_user\",\"LANG\":lang,\"_\":getExecutableName()};for(var x in ENV){if(ENV[x]===undefined)delete env[x];else env[x]=ENV[x]}var strings=[];for(var x in env){strings.push(`${x}=${env[x]}`)}getEnvStrings.strings=strings}return getEnvStrings.strings};var stringToAscii=(str,buffer)=>{for(var i=0;i<str.length;++i){GROWABLE_HEAP_I8()[buffer++>>>0>>>0]=str.charCodeAt(i)}GROWABLE_HEAP_I8()[buffer>>>0>>>0]=0};var _environ_get=function(__environ,environ_buf){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(25,1,__environ,environ_buf);__environ>>>=0;environ_buf>>>=0;var bufSize=0;getEnvStrings().forEach((string,i)=>{var ptr=environ_buf+bufSize;GROWABLE_HEAP_U32()[__environ+i*4>>>2>>>0]=ptr;stringToAscii(string,ptr);bufSize+=string.length+1});return 0};var _environ_sizes_get=function(penviron_count,penviron_buf_size){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(26,1,penviron_count,penviron_buf_size);penviron_count>>>=0;penviron_buf_size>>>=0;var strings=getEnvStrings();GROWABLE_HEAP_U32()[penviron_count>>>2>>>0]=strings.length;var bufSize=0;strings.forEach(string=>bufSize+=string.length+1);GROWABLE_HEAP_U32()[penviron_buf_size>>>2>>>0]=bufSize;return 0};function _fd_close(fd){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(27,1,fd);return 52}function _fd_fdstat_get(fd,pbuf){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(28,1,fd,pbuf);pbuf>>>=0;var rightsBase=0;var rightsInheriting=0;var flags=0;{var type=2;if(fd==0){rightsBase=2}else if(fd==1||fd==2){rightsBase=64}flags=1}GROWABLE_HEAP_I8()[pbuf>>>0>>>0]=type;GROWABLE_HEAP_I16()[pbuf+2>>>1>>>0]=flags;tempI64=[rightsBase>>>0,(tempDouble=rightsBase,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],GROWABLE_HEAP_I32()[pbuf+8>>>2>>>0]=tempI64[0],GROWABLE_HEAP_I32()[pbuf+12>>>2>>>0]=tempI64[1];tempI64=[rightsInheriting>>>0,(tempDouble=rightsInheriting,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],GROWABLE_HEAP_I32()[pbuf+16>>>2>>>0]=tempI64[0],GROWABLE_HEAP_I32()[pbuf+20>>>2>>>0]=tempI64[1];return 0}function _fd_pread(fd,iov,iovcnt,offset_low,offset_high,pnum){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(29,1,fd,iov,iovcnt,offset_low,offset_high,pnum);iov>>>=0;iovcnt>>>=0;var offset=convertI32PairToI53Checked(offset_low,offset_high);pnum>>>=0;return 52}function _fd_pwrite(fd,iov,iovcnt,offset_low,offset_high,pnum){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(30,1,fd,iov,iovcnt,offset_low,offset_high,pnum);iov>>>=0;iovcnt>>>=0;var offset=convertI32PairToI53Checked(offset_low,offset_high);pnum>>>=0;return 52}function _fd_read(fd,iov,iovcnt,pnum){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(31,1,fd,iov,iovcnt,pnum);iov>>>=0;iovcnt>>>=0;pnum>>>=0;return 52}function _fd_seek(fd,offset_low,offset_high,whence,newOffset){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(32,1,fd,offset_low,offset_high,whence,newOffset);var offset=convertI32PairToI53Checked(offset_low,offset_high);newOffset>>>=0;return 70}function _fd_sync(fd){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(33,1,fd);return 52}var printCharBuffers=[null,[],[]];var printChar=(stream,curr)=>{var buffer=printCharBuffers[stream];if(curr===0||curr===10){(stream===1?out:err)(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}};function _fd_write(fd,iov,iovcnt,pnum){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(34,1,fd,iov,iovcnt,pnum);iov>>>=0;iovcnt>>>=0;pnum>>>=0;var num=0;for(var i=0;i<iovcnt;i++){var ptr=GROWABLE_HEAP_U32()[iov>>>2>>>0];var len=GROWABLE_HEAP_U32()[iov+4>>>2>>>0];iov+=8;for(var j=0;j<len;j++){printChar(fd,GROWABLE_HEAP_U8()[ptr+j>>>0])}num+=len}GROWABLE_HEAP_U32()[pnum>>>2>>>0]=num;return 0}function _getaddrinfo(node,service,hint,out){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(35,1,node,service,hint,out);node>>>=0;service>>>=0;hint>>>=0;out>>>=0;var addr=0;var port=0;var flags=0;var family=0;var type=0;var proto=0;var ai;function allocaddrinfo(family,type,proto,canon,addr,port){var sa,salen,ai;var errno;salen=family===10?28:16;addr=family===10?inetNtop6(addr):inetNtop4(addr);sa=_malloc(salen);errno=writeSockaddr(sa,family,addr,port);assert(!errno);ai=_malloc(32);GROWABLE_HEAP_I32()[ai+4>>>2>>>0]=family;GROWABLE_HEAP_I32()[ai+8>>>2>>>0]=type;GROWABLE_HEAP_I32()[ai+12>>>2>>>0]=proto;GROWABLE_HEAP_U32()[ai+24>>>2>>>0]=canon;GROWABLE_HEAP_U32()[ai+20>>>2>>>0]=sa;if(family===10){GROWABLE_HEAP_I32()[ai+16>>>2>>>0]=28}else{GROWABLE_HEAP_I32()[ai+16>>>2>>>0]=16}GROWABLE_HEAP_I32()[ai+28>>>2>>>0]=0;return ai}if(hint){flags=GROWABLE_HEAP_I32()[hint>>>2>>>0];family=GROWABLE_HEAP_I32()[hint+4>>>2>>>0];type=GROWABLE_HEAP_I32()[hint+8>>>2>>>0];proto=GROWABLE_HEAP_I32()[hint+12>>>2>>>0]}if(type&&!proto){proto=type===2?17:6}if(!type&&proto){type=proto===17?2:1}if(proto===0){proto=6}if(type===0){type=1}if(!node&&!service){return-2}if(flags&~(1|2|4|1024|8|16|32)){return-1}if(hint!==0&&GROWABLE_HEAP_I32()[hint>>>2>>>0]&2&&!node){return-1}if(flags&32){return-2}if(type!==0&&type!==1&&type!==2){return-7}if(family!==0&&family!==2&&family!==10){return-6}if(service){service=UTF8ToString(service);port=parseInt(service,10);if(isNaN(port)){if(flags&1024){return-2}return-8}}if(!node){if(family===0){family=2}if((flags&1)===0){if(family===2){addr=_htonl(2130706433)}else{addr=[0,0,0,1]}}ai=allocaddrinfo(family,type,proto,null,addr,port);GROWABLE_HEAP_U32()[out>>>2>>>0]=ai;return 0}node=UTF8ToString(node);addr=inetPton4(node);if(addr!==null){if(family===0||family===2){family=2}else if(family===10&&flags&8){addr=[0,0,_htonl(65535),addr];family=10}else{return-2}}else{addr=inetPton6(node);if(addr!==null){if(family===0||family===10){family=10}else{return-2}}}if(addr!=null){ai=allocaddrinfo(family,type,proto,node,addr,port);GROWABLE_HEAP_U32()[out>>>2>>>0]=ai;return 0}if(flags&4){return-2}node=DNS.lookup_name(node);addr=inetPton4(node);if(family===0){family=2}else if(family===10){addr=[0,0,_htonl(65535),addr]}ai=allocaddrinfo(family,type,proto,null,addr,port);GROWABLE_HEAP_U32()[out>>>2>>>0]=ai;return 0}var initRandomFill=()=>{if(typeof crypto==\"object\"&&typeof crypto[\"getRandomValues\"]==\"function\"){return view=>(view.set(crypto.getRandomValues(new Uint8Array(view.byteLength))),view)}else if(ENVIRONMENT_IS_NODE){try{var crypto_module=require(\"crypto\");var randomFillSync=crypto_module[\"randomFillSync\"];if(randomFillSync){return view=>crypto_module[\"randomFillSync\"](view)}var randomBytes=crypto_module[\"randomBytes\"];return view=>(view.set(randomBytes(view.byteLength)),view)}catch(e){}}abort(\"initRandomDevice\")};var randomFill=view=>(randomFill=initRandomFill())(view);function _getentropy(buffer,size){buffer>>>=0;size>>>=0;randomFill(GROWABLE_HEAP_U8().subarray(buffer>>>0,buffer+size>>>0));return 0}function _getnameinfo(sa,salen,node,nodelen,serv,servlen,flags){sa>>>=0;node>>>=0;serv>>>=0;var info=readSockaddr(sa,salen);if(info.errno){return-6}var port=info.port;var addr=info.addr;var overflowed=false;if(node&&nodelen){var lookup;if(flags&1||!(lookup=DNS.lookup_addr(addr))){if(flags&8){return-2}}else{addr=lookup}var numBytesWrittenExclNull=stringToUTF8(addr,node,nodelen);if(numBytesWrittenExclNull+1>=nodelen){overflowed=true}}if(serv&&servlen){port=\"\"+port;var numBytesWrittenExclNull=stringToUTF8(port,serv,servlen);if(numBytesWrittenExclNull+1>=servlen){overflowed=true}}if(overflowed){return-12}return 0}var isLeapYear=year=>year%4===0&&(year%100!==0||year%400===0);var arraySum=(array,index)=>{var sum=0;for(var i=0;i<=index;sum+=array[i++]){}return sum};var MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31];var MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31];var addDays=(date,days)=>{var newDate=new Date(date.getTime());while(days>0){var leap=isLeapYear(newDate.getFullYear());var currentMonth=newDate.getMonth();var daysInCurrentMonth=(leap?MONTH_DAYS_LEAP:MONTH_DAYS_REGULAR)[currentMonth];if(days>daysInCurrentMonth-newDate.getDate()){days-=daysInCurrentMonth-newDate.getDate()+1;newDate.setDate(1);if(currentMonth<11){newDate.setMonth(currentMonth+1)}else{newDate.setMonth(0);newDate.setFullYear(newDate.getFullYear()+1)}}else{newDate.setDate(newDate.getDate()+days);return newDate}}return newDate};var lengthBytesUTF8=str=>{var len=0;for(var i=0;i<str.length;++i){var c=str.charCodeAt(i);if(c<=127){len++}else if(c<=2047){len+=2}else if(c>=55296&&c<=57343){len+=4;++i}else{len+=3}}return len};function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}var writeArrayToMemory=(array,buffer)=>{GROWABLE_HEAP_I8().set(array,buffer>>>0)};function _strftime(s,maxsize,format,tm){s>>>=0;maxsize>>>=0;format>>>=0;tm>>>=0;var tm_zone=GROWABLE_HEAP_U32()[tm+40>>>2>>>0];var date={tm_sec:GROWABLE_HEAP_I32()[tm>>>2>>>0],tm_min:GROWABLE_HEAP_I32()[tm+4>>>2>>>0],tm_hour:GROWABLE_HEAP_I32()[tm+8>>>2>>>0],tm_mday:GROWABLE_HEAP_I32()[tm+12>>>2>>>0],tm_mon:GROWABLE_HEAP_I32()[tm+16>>>2>>>0],tm_year:GROWABLE_HEAP_I32()[tm+20>>>2>>>0],tm_wday:GROWABLE_HEAP_I32()[tm+24>>>2>>>0],tm_yday:GROWABLE_HEAP_I32()[tm+28>>>2>>>0],tm_isdst:GROWABLE_HEAP_I32()[tm+32>>>2>>>0],tm_gmtoff:GROWABLE_HEAP_I32()[tm+36>>>2>>>0],tm_zone:tm_zone?UTF8ToString(tm_zone):\"\"};var pattern=UTF8ToString(format);var EXPANSION_RULES_1={\"%c\":\"%a %b %d %H:%M:%S %Y\",\"%D\":\"%m/%d/%y\",\"%F\":\"%Y-%m-%d\",\"%h\":\"%b\",\"%r\":\"%I:%M:%S %p\",\"%R\":\"%H:%M\",\"%T\":\"%H:%M:%S\",\"%x\":\"%m/%d/%y\",\"%X\":\"%H:%M:%S\",\"%Ec\":\"%c\",\"%EC\":\"%C\",\"%Ex\":\"%m/%d/%y\",\"%EX\":\"%H:%M:%S\",\"%Ey\":\"%y\",\"%EY\":\"%Y\",\"%Od\":\"%d\",\"%Oe\":\"%e\",\"%OH\":\"%H\",\"%OI\":\"%I\",\"%Om\":\"%m\",\"%OM\":\"%M\",\"%OS\":\"%S\",\"%Ou\":\"%u\",\"%OU\":\"%U\",\"%OV\":\"%V\",\"%Ow\":\"%w\",\"%OW\":\"%W\",\"%Oy\":\"%y\"};for(var rule in EXPANSION_RULES_1){pattern=pattern.replace(new RegExp(rule,\"g\"),EXPANSION_RULES_1[rule])}var WEEKDAYS=[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"];var MONTHS=[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"];function leadingSomething(value,digits,character){var str=typeof value==\"number\"?value.toString():value||\"\";while(str.length<digits){str=character[0]+str}return str}function leadingNulls(value,digits){return leadingSomething(value,digits,\"0\")}function compareByDay(date1,date2){function sgn(value){return value<0?-1:value>0?1:0}var compare;if((compare=sgn(date1.getFullYear()-date2.getFullYear()))===0){if((compare=sgn(date1.getMonth()-date2.getMonth()))===0){compare=sgn(date1.getDate()-date2.getDate())}}return compare}function getFirstWeekStartDate(janFourth){switch(janFourth.getDay()){case 0:return new Date(janFourth.getFullYear()-1,11,29);case 1:return janFourth;case 2:return new Date(janFourth.getFullYear(),0,3);case 3:return new Date(janFourth.getFullYear(),0,2);case 4:return new Date(janFourth.getFullYear(),0,1);case 5:return new Date(janFourth.getFullYear()-1,11,31);case 6:return new Date(janFourth.getFullYear()-1,11,30)}}function getWeekBasedYear(date){var thisDate=addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);var janFourthThisYear=new Date(thisDate.getFullYear(),0,4);var janFourthNextYear=new Date(thisDate.getFullYear()+1,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);if(compareByDay(firstWeekStartThisYear,thisDate)<=0){if(compareByDay(firstWeekStartNextYear,thisDate)<=0){return thisDate.getFullYear()+1}return thisDate.getFullYear()}return thisDate.getFullYear()-1}var EXPANSION_RULES_2={\"%a\":date=>WEEKDAYS[date.tm_wday].substring(0,3),\"%A\":date=>WEEKDAYS[date.tm_wday],\"%b\":date=>MONTHS[date.tm_mon].substring(0,3),\"%B\":date=>MONTHS[date.tm_mon],\"%C\":date=>{var year=date.tm_year+1900;return leadingNulls(year/100|0,2)},\"%d\":date=>leadingNulls(date.tm_mday,2),\"%e\":date=>leadingSomething(date.tm_mday,2,\" \"),\"%g\":date=>getWeekBasedYear(date).toString().substring(2),\"%G\":date=>getWeekBasedYear(date),\"%H\":date=>leadingNulls(date.tm_hour,2),\"%I\":date=>{var twelveHour=date.tm_hour;if(twelveHour==0)twelveHour=12;else if(twelveHour>12)twelveHour-=12;return leadingNulls(twelveHour,2)},\"%j\":date=>leadingNulls(date.tm_mday+arraySum(isLeapYear(date.tm_year+1900)?MONTH_DAYS_LEAP:MONTH_DAYS_REGULAR,date.tm_mon-1),3),\"%m\":date=>leadingNulls(date.tm_mon+1,2),\"%M\":date=>leadingNulls(date.tm_min,2),\"%n\":()=>\"\\n\",\"%p\":date=>{if(date.tm_hour>=0&&date.tm_hour<12){return\"AM\"}return\"PM\"},\"%S\":date=>leadingNulls(date.tm_sec,2),\"%t\":()=>\"\\t\",\"%u\":date=>date.tm_wday||7,\"%U\":date=>{var days=date.tm_yday+7-date.tm_wday;return leadingNulls(Math.floor(days/7),2)},\"%V\":date=>{var val=Math.floor((date.tm_yday+7-(date.tm_wday+6)%7)/7);if((date.tm_wday+371-date.tm_yday-2)%7<=2){val++}if(!val){val=52;var dec31=(date.tm_wday+7-date.tm_yday-1)%7;if(dec31==4||dec31==5&&isLeapYear(date.tm_year%400-1)){val++}}else if(val==53){var jan1=(date.tm_wday+371-date.tm_yday)%7;if(jan1!=4&&(jan1!=3||!isLeapYear(date.tm_year)))val=1}return leadingNulls(val,2)},\"%w\":date=>date.tm_wday,\"%W\":date=>{var days=date.tm_yday+7-(date.tm_wday+6)%7;return leadingNulls(Math.floor(days/7),2)},\"%y\":date=>(date.tm_year+1900).toString().substring(2),\"%Y\":date=>date.tm_year+1900,\"%z\":date=>{var off=date.tm_gmtoff;var ahead=off>=0;off=Math.abs(off)/60;off=off/60*100+off%60;return(ahead?\"+\":\"-\")+String(\"0000\"+off).slice(-4)},\"%Z\":date=>date.tm_zone,\"%%\":()=>\"%\"};pattern=pattern.replace(/%%/g,\"\\0\\0\");for(var rule in EXPANSION_RULES_2){if(pattern.includes(rule)){pattern=pattern.replace(new RegExp(rule,\"g\"),EXPANSION_RULES_2[rule](date))}}pattern=pattern.replace(/\\0\\0/g,\"%\");var bytes=intArrayFromString(pattern,false);if(bytes.length>maxsize){return 0}writeArrayToMemory(bytes,s);return bytes.length-1}function _strftime_l(s,maxsize,format,tm,loc){s>>>=0;maxsize>>>=0;format>>>=0;tm>>>=0;loc>>>=0;return _strftime(s,maxsize,format,tm)}var getCFunc=ident=>{var func=Module[\"_\"+ident];return func};var stringToUTF8OnStack=str=>{var size=lengthBytesUTF8(str)+1;var ret=stackAlloc(size);stringToUTF8(str,ret,size);return ret};var ccall=(ident,returnType,argTypes,args,opts)=>{var toC={\"string\":str=>{var ret=0;if(str!==null&&str!==undefined&&str!==0){ret=stringToUTF8OnStack(str)}return ret},\"array\":arr=>{var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}};function convertReturnValue(ret){if(returnType===\"string\"){return UTF8ToString(ret)}if(returnType===\"boolean\")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i<args.length;i++){var converter=toC[argTypes[i]];if(converter){if(stack===0)stack=stackSave();cArgs[i]=converter(args[i])}else{cArgs[i]=args[i]}}}var ret=func.apply(null,cArgs);function onDone(ret){if(stack!==0)stackRestore(stack);return convertReturnValue(ret)}ret=onDone(ret);return ret};PThread.init();var proxiedFunctionTable=[_proc_exit,exitOnMainThread,pthreadCreateProxied,___syscall__newselect,___syscall_bind,___syscall_connect,___syscall_faccessat,___syscall_fcntl64,___syscall_fstat64,___syscall_ftruncate64,___syscall_getdents64,___syscall_getpeername,___syscall_getsockopt,___syscall_ioctl,___syscall_lstat64,___syscall_mkdirat,___syscall_newfstatat,___syscall_openat,___syscall_recvfrom,___syscall_renameat,___syscall_rmdir,___syscall_sendto,___syscall_socket,___syscall_stat64,___syscall_unlinkat,_environ_get,_environ_sizes_get,_fd_close,_fd_fdstat_get,_fd_pread,_fd_pwrite,_fd_read,_fd_seek,_fd_sync,_fd_write,_getaddrinfo];var wasmImports={E:___emscripten_init_main_thread_js,s:___emscripten_thread_cleanup,ga:___pthread_create_js,$:___syscall__newselect,ea:___syscall_bind,ca:___syscall_connect,X:___syscall_faccessat,b:___syscall_fcntl64,W:___syscall_fstat64,x:___syscall_ftruncate64,R:___syscall_getdents64,Z:___syscall_getpeername,_:___syscall_getsockopt,q:___syscall_ioctl,T:___syscall_lstat64,S:___syscall_mkdirat,U:___syscall_newfstatat,r:___syscall_openat,aa:___syscall_recvfrom,P:___syscall_renameat,k:___syscall_rmdir,ba:___syscall_sendto,n:___syscall_socket,V:___syscall_stat64,l:___syscall_unlinkat,oa:__emscripten_get_now_is_monotonic,da:__emscripten_notify_mailbox_postmessage,M:__emscripten_receive_on_main_thread_js,v:__emscripten_thread_mailbox_await,u:__emscripten_thread_set_strongref,e:_abort,H:_duckdb_web_fs_directory_create,I:_duckdb_web_fs_directory_exists,F:_duckdb_web_fs_directory_list_files,G:_duckdb_web_fs_directory_remove,j:_duckdb_web_fs_file_close,C:_duckdb_web_fs_file_exists,w:_duckdb_web_fs_file_get_last_modified_time,D:_duckdb_web_fs_file_move,K:_duckdb_web_fs_file_open,f:_duckdb_web_fs_file_read,J:_duckdb_web_fs_file_truncate,g:_duckdb_web_fs_file_write,L:_duckdb_web_fs_get_default_data_protocol,B:_duckdb_web_fs_glob,i:_duckdb_web_test_platform_feature,N:_duckdb_web_udf_scalar_call,m:_emscripten_check_blocking_allowed,pa:_emscripten_date_now,t:_emscripten_exit_with_live_runtime,ha:_emscripten_get_heap_max,c:_emscripten_get_now,ia:_emscripten_num_logical_cores,na:_emscripten_resize_heap,ka:_environ_get,la:_environ_sizes_get,fa:_exit,d:_fd_close,ma:_fd_fdstat_get,z:_fd_pread,y:_fd_pwrite,p:_fd_read,A:_fd_seek,Q:_fd_sync,h:_fd_write,o:_getaddrinfo,O:_getentropy,Y:_getnameinfo,a:wasmMemory||Module[\"wasmMemory\"],ja:_strftime_l};var wasmExports=createWasm();var ___wasm_call_ctors=()=>(___wasm_call_ctors=wasmExports[\"qa\"])();var _main=Module[\"_main\"]=(a0,a1)=>(_main=Module[\"_main\"]=wasmExports[\"ra\"])(a0,a1);var _duckdb_web_fs_glob_add_path=Module[\"_duckdb_web_fs_glob_add_path\"]=a0=>(_duckdb_web_fs_glob_add_path=Module[\"_duckdb_web_fs_glob_add_path\"]=wasmExports[\"ta\"])(a0);var _duckdb_web_clear_response=Module[\"_duckdb_web_clear_response\"]=()=>(_duckdb_web_clear_response=Module[\"_duckdb_web_clear_response\"]=wasmExports[\"ua\"])();var _duckdb_web_fail_with=Module[\"_duckdb_web_fail_with\"]=a0=>(_duckdb_web_fail_with=Module[\"_duckdb_web_fail_with\"]=wasmExports[\"va\"])(a0);var _duckdb_web_reset=Module[\"_duckdb_web_reset\"]=a0=>(_duckdb_web_reset=Module[\"_duckdb_web_reset\"]=wasmExports[\"wa\"])(a0);var _duckdb_web_connect=Module[\"_duckdb_web_connect\"]=()=>(_duckdb_web_connect=Module[\"_duckdb_web_connect\"]=wasmExports[\"xa\"])();var _duckdb_web_disconnect=Module[\"_duckdb_web_disconnect\"]=a0=>(_duckdb_web_disconnect=Module[\"_duckdb_web_disconnect\"]=wasmExports[\"ya\"])(a0);var _duckdb_web_flush_files=Module[\"_duckdb_web_flush_files\"]=()=>(_duckdb_web_flush_files=Module[\"_duckdb_web_flush_files\"]=wasmExports[\"za\"])();var _duckdb_web_flush_file=Module[\"_duckdb_web_flush_file\"]=a0=>(_duckdb_web_flush_file=Module[\"_duckdb_web_flush_file\"]=wasmExports[\"Aa\"])(a0);var _duckdb_web_open=Module[\"_duckdb_web_open\"]=(a0,a1)=>(_duckdb_web_open=Module[\"_duckdb_web_open\"]=wasmExports[\"Ba\"])(a0,a1);var _duckdb_web_get_global_file_info=Module[\"_duckdb_web_get_global_file_info\"]=(a0,a1)=>(_duckdb_web_get_global_file_info=Module[\"_duckdb_web_get_global_file_info\"]=wasmExports[\"Ca\"])(a0,a1);var _duckdb_web_collect_file_stats=Module[\"_duckdb_web_collect_file_stats\"]=(a0,a1,a2)=>(_duckdb_web_collect_file_stats=Module[\"_duckdb_web_collect_file_stats\"]=wasmExports[\"Da\"])(a0,a1,a2);var _duckdb_web_export_file_stats=Module[\"_duckdb_web_export_file_stats\"]=(a0,a1)=>(_duckdb_web_export_file_stats=Module[\"_duckdb_web_export_file_stats\"]=wasmExports[\"Ea\"])(a0,a1);var _duckdb_web_fs_drop_file=Module[\"_duckdb_web_fs_drop_file\"]=(a0,a1)=>(_duckdb_web_fs_drop_file=Module[\"_duckdb_web_fs_drop_file\"]=wasmExports[\"Fa\"])(a0,a1);var _duckdb_web_fs_drop_files=Module[\"_duckdb_web_fs_drop_files\"]=a0=>(_duckdb_web_fs_drop_files=Module[\"_duckdb_web_fs_drop_files\"]=wasmExports[\"Ga\"])(a0);var _duckdb_web_fs_glob_file_infos=Module[\"_duckdb_web_fs_glob_file_infos\"]=(a0,a1)=>(_duckdb_web_fs_glob_file_infos=Module[\"_duckdb_web_fs_glob_file_infos\"]=wasmExports[\"Ha\"])(a0,a1);var _duckdb_web_fs_get_file_info_by_id=Module[\"_duckdb_web_fs_get_file_info_by_id\"]=(a0,a1,a2)=>(_duckdb_web_fs_get_file_info_by_id=Module[\"_duckdb_web_fs_get_file_info_by_id\"]=wasmExports[\"Ia\"])(a0,a1,a2);var _duckdb_web_fs_get_file_info_by_name=Module[\"_duckdb_web_fs_get_file_info_by_name\"]=(a0,a1,a2)=>(_duckdb_web_fs_get_file_info_by_name=Module[\"_duckdb_web_fs_get_file_info_by_name\"]=wasmExports[\"Ja\"])(a0,a1,a2);var _duckdb_web_fs_register_file_url=Module[\"_duckdb_web_fs_register_file_url\"]=(a0,a1,a2,a3,a4)=>(_duckdb_web_fs_register_file_url=Module[\"_duckdb_web_fs_register_file_url\"]=wasmExports[\"Ka\"])(a0,a1,a2,a3,a4);var _duckdb_web_fs_register_file_buffer=Module[\"_duckdb_web_fs_register_file_buffer\"]=(a0,a1,a2,a3)=>(_duckdb_web_fs_register_file_buffer=Module[\"_duckdb_web_fs_register_file_buffer\"]=wasmExports[\"La\"])(a0,a1,a2,a3);var _duckdb_web_copy_file_to_buffer=Module[\"_duckdb_web_copy_file_to_buffer\"]=(a0,a1)=>(_duckdb_web_copy_file_to_buffer=Module[\"_duckdb_web_copy_file_to_buffer\"]=wasmExports[\"Ma\"])(a0,a1);var _duckdb_web_copy_file_to_path=Module[\"_duckdb_web_copy_file_to_path\"]=(a0,a1,a2)=>(_duckdb_web_copy_file_to_path=Module[\"_duckdb_web_copy_file_to_path\"]=wasmExports[\"Na\"])(a0,a1,a2);var _duckdb_web_get_version=Module[\"_duckdb_web_get_version\"]=a0=>(_duckdb_web_get_version=Module[\"_duckdb_web_get_version\"]=wasmExports[\"Oa\"])(a0);var _duckdb_web_get_feature_flags=Module[\"_duckdb_web_get_feature_flags\"]=()=>(_duckdb_web_get_feature_flags=Module[\"_duckdb_web_get_feature_flags\"]=wasmExports[\"Pa\"])();var _duckdb_web_tokenize=Module[\"_duckdb_web_tokenize\"]=(a0,a1)=>(_duckdb_web_tokenize=Module[\"_duckdb_web_tokenize\"]=wasmExports[\"Qa\"])(a0,a1);var _duckdb_web_udf_scalar_create=Module[\"_duckdb_web_udf_scalar_create\"]=(a0,a1,a2)=>(_duckdb_web_udf_scalar_create=Module[\"_duckdb_web_udf_scalar_create\"]=wasmExports[\"Ra\"])(a0,a1,a2);var _duckdb_web_prepared_create=Module[\"_duckdb_web_prepared_create\"]=(a0,a1,a2)=>(_duckdb_web_prepared_create=Module[\"_duckdb_web_prepared_create\"]=wasmExports[\"Sa\"])(a0,a1,a2);var _duckdb_web_prepared_close=Module[\"_duckdb_web_prepared_close\"]=(a0,a1,a2)=>(_duckdb_web_prepared_close=Module[\"_duckdb_web_prepared_close\"]=wasmExports[\"Ta\"])(a0,a1,a2);var _duckdb_web_prepared_run=Module[\"_duckdb_web_prepared_run\"]=(a0,a1,a2,a3)=>(_duckdb_web_prepared_run=Module[\"_duckdb_web_prepared_run\"]=wasmExports[\"Ua\"])(a0,a1,a2,a3);var _duckdb_web_prepared_send=Module[\"_duckdb_web_prepared_send\"]=(a0,a1,a2,a3)=>(_duckdb_web_prepared_send=Module[\"_duckdb_web_prepared_send\"]=wasmExports[\"Va\"])(a0,a1,a2,a3);var _duckdb_web_query_run=Module[\"_duckdb_web_query_run\"]=(a0,a1,a2)=>(_duckdb_web_query_run=Module[\"_duckdb_web_query_run\"]=wasmExports[\"Wa\"])(a0,a1,a2);var _duckdb_web_pending_query_start=Module[\"_duckdb_web_pending_query_start\"]=(a0,a1,a2)=>(_duckdb_web_pending_query_start=Module[\"_duckdb_web_pending_query_start\"]=wasmExports[\"Xa\"])(a0,a1,a2);var _duckdb_web_pending_query_poll=Module[\"_duckdb_web_pending_query_poll\"]=(a0,a1,a2)=>(_duckdb_web_pending_query_poll=Module[\"_duckdb_web_pending_query_poll\"]=wasmExports[\"Ya\"])(a0,a1,a2);var _duckdb_web_pending_query_cancel=Module[\"_duckdb_web_pending_query_cancel\"]=(a0,a1)=>(_duckdb_web_pending_query_cancel=Module[\"_duckdb_web_pending_query_cancel\"]=wasmExports[\"Za\"])(a0,a1);var _duckdb_web_query_fetch_results=Module[\"_duckdb_web_query_fetch_results\"]=(a0,a1)=>(_duckdb_web_query_fetch_results=Module[\"_duckdb_web_query_fetch_results\"]=wasmExports[\"_a\"])(a0,a1);var _duckdb_web_get_tablenames=Module[\"_duckdb_web_get_tablenames\"]=(a0,a1,a2)=>(_duckdb_web_get_tablenames=Module[\"_duckdb_web_get_tablenames\"]=wasmExports[\"$a\"])(a0,a1,a2);var _duckdb_web_insert_arrow_from_ipc_stream=Module[\"_duckdb_web_insert_arrow_from_ipc_stream\"]=(a0,a1,a2,a3,a4)=>(_duckdb_web_insert_arrow_from_ipc_stream=Module[\"_duckdb_web_insert_arrow_from_ipc_stream\"]=wasmExports[\"ab\"])(a0,a1,a2,a3,a4);var _duckdb_web_insert_csv_from_path=Module[\"_duckdb_web_insert_csv_from_path\"]=(a0,a1,a2,a3)=>(_duckdb_web_insert_csv_from_path=Module[\"_duckdb_web_insert_csv_from_path\"]=wasmExports[\"bb\"])(a0,a1,a2,a3);var _duckdb_web_insert_json_from_path=Module[\"_duckdb_web_insert_json_from_path\"]=(a0,a1,a2,a3)=>(_duckdb_web_insert_json_from_path=Module[\"_duckdb_web_insert_json_from_path\"]=wasmExports[\"cb\"])(a0,a1,a2,a3);var __emscripten_tls_init=Module[\"__emscripten_tls_init\"]=()=>(__emscripten_tls_init=Module[\"__emscripten_tls_init\"]=wasmExports[\"db\"])();var _pthread_self=Module[\"_pthread_self\"]=()=>(_pthread_self=Module[\"_pthread_self\"]=wasmExports[\"eb\"])();var ___errno_location=()=>(___errno_location=wasmExports[\"__errno_location\"])();var __emscripten_thread_init=Module[\"__emscripten_thread_init\"]=(a0,a1,a2,a3,a4,a5)=>(__emscripten_thread_init=Module[\"__emscripten_thread_init\"]=wasmExports[\"fb\"])(a0,a1,a2,a3,a4,a5);var __emscripten_thread_crashed=Module[\"__emscripten_thread_crashed\"]=()=>(__emscripten_thread_crashed=Module[\"__emscripten_thread_crashed\"]=wasmExports[\"gb\"])();var _htonl=a0=>(_htonl=wasmExports[\"hb\"])(a0);var _htons=a0=>(_htons=wasmExports[\"ib\"])(a0);var _emscripten_main_runtime_thread_id=()=>(_emscripten_main_runtime_thread_id=wasmExports[\"emscripten_main_runtime_thread_id\"])();var _emscripten_main_thread_process_queued_calls=()=>(_emscripten_main_thread_process_queued_calls=wasmExports[\"emscripten_main_thread_process_queued_calls\"])();var _ntohs=a0=>(_ntohs=wasmExports[\"jb\"])(a0);var __emscripten_run_on_main_thread_js=(a0,a1,a2,a3)=>(__emscripten_run_on_main_thread_js=wasmExports[\"kb\"])(a0,a1,a2,a3);var __emscripten_thread_free_data=a0=>(__emscripten_thread_free_data=wasmExports[\"lb\"])(a0);var __emscripten_thread_exit=Module[\"__emscripten_thread_exit\"]=a0=>(__emscripten_thread_exit=Module[\"__emscripten_thread_exit\"]=wasmExports[\"mb\"])(a0);var __emscripten_check_mailbox=Module[\"__emscripten_check_mailbox\"]=()=>(__emscripten_check_mailbox=Module[\"__emscripten_check_mailbox\"]=wasmExports[\"nb\"])();var _malloc=Module[\"_malloc\"]=a0=>(_malloc=Module[\"_malloc\"]=wasmExports[\"ob\"])(a0);var _free=Module[\"_free\"]=a0=>(_free=Module[\"_free\"]=wasmExports[\"pb\"])(a0);var ___trap=()=>(___trap=wasmExports[\"qb\"])();var _emscripten_stack_set_limits=(a0,a1)=>(_emscripten_stack_set_limits=wasmExports[\"rb\"])(a0,a1);var stackSave=()=>(stackSave=wasmExports[\"sb\"])();var stackRestore=a0=>(stackRestore=wasmExports[\"tb\"])(a0);var stackAlloc=a0=>(stackAlloc=wasmExports[\"ub\"])(a0);function applySignatureConversions(wasmExports){wasmExports=Object.assign({},wasmExports);var makeWrapper_p=f=>()=>f()>>>0;var makeWrapper_pp=f=>a0=>f(a0)>>>0;wasmExports[\"eb\"]=makeWrapper_p(wasmExports[\"eb\"]);wasmExports[\"__errno_location\"]=makeWrapper_p(wasmExports[\"__errno_location\"]);wasmExports[\"ob\"]=makeWrapper_pp(wasmExports[\"ob\"]);wasmExports[\"sb\"]=makeWrapper_p(wasmExports[\"sb\"]);wasmExports[\"ub\"]=makeWrapper_pp(wasmExports[\"ub\"]);return wasmExports}Module[\"keepRuntimeAlive\"]=keepRuntimeAlive;Module[\"wasmMemory\"]=wasmMemory;Module[\"stackAlloc\"]=stackAlloc;Module[\"stackSave\"]=stackSave;Module[\"stackRestore\"]=stackRestore;Module[\"ccall\"]=ccall;Module[\"ExitStatus\"]=ExitStatus;Module[\"PThread\"]=PThread;var calledRun;dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function callMain(){var entryFunction=_main;var argc=0;var argv=0;try{var ret=entryFunction(argc,argv);exitJS(ret,true);return ret}catch(e){return handleException(e)}}function run(){if(runDependencies>0){return}if(ENVIRONMENT_IS_PTHREAD){readyPromiseResolve(Module);initRuntime();startWorker(Module);return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module[\"calledRun\"]=true;if(ABORT)return;initRuntime();preMain();readyPromiseResolve(Module);if(Module[\"onRuntimeInitialized\"])Module[\"onRuntimeInitialized\"]();if(shouldRunNow)callMain();postRun()}if(Module[\"setStatus\"]){Module[\"setStatus\"](\"Running...\");setTimeout(function(){setTimeout(function(){Module[\"setStatus\"](\"\")},1);doRun()},1)}else{doRun()}}if(Module[\"preInit\"]){if(typeof Module[\"preInit\"]==\"function\")Module[\"preInit\"]=[Module[\"preInit\"]];while(Module[\"preInit\"].length>0){Module[\"preInit\"].pop()()}}var shouldRunNow=true;if(Module[\"noInitialRun\"])shouldRunNow=false;run();\n\n\n return moduleArg.ready\n}\n\n);\n})();\nif (typeof exports === 'object' && typeof module === 'object')\n module.exports = DuckDB;\nelse if (typeof define === 'function' && define['amd'])\n define([], () => DuckDB);\n", "/**\n * [js-sha256]{@link https://github.com/emn178/js-sha256}\n *\n * @version 0.9.0\n * @author Chen, Yi-Cyuan [emn178@gmail.com]\n * @copyright Chen, Yi-Cyuan 2014-2017\n * @license MIT\n */\n/*jslint bitwise: true */\n(function () {\n 'use strict';\n\n var ERROR = 'input is invalid type';\n var WINDOW = typeof window === 'object';\n var root = WINDOW ? window : {};\n if (root.JS_SHA256_NO_WINDOW) {\n WINDOW = false;\n }\n var WEB_WORKER = !WINDOW && typeof self === 'object';\n var NODE_JS = !root.JS_SHA256_NO_NODE_JS && typeof process === 'object' && process.versions && process.versions.node;\n if (NODE_JS) {\n root = global;\n } else if (WEB_WORKER) {\n root = self;\n }\n var COMMON_JS = !root.JS_SHA256_NO_COMMON_JS && typeof module === 'object' && module.exports;\n var AMD = typeof define === 'function' && define.amd;\n var ARRAY_BUFFER = !root.JS_SHA256_NO_ARRAY_BUFFER && typeof ArrayBuffer !== 'undefined';\n var HEX_CHARS = '0123456789abcdef'.split('');\n var EXTRA = [-2147483648, 8388608, 32768, 128];\n var SHIFT = [24, 16, 8, 0];\n var K = [\n 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,\n 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174,\n 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da,\n 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967,\n 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85,\n 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070,\n 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3,\n 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2\n ];\n var OUTPUT_TYPES = ['hex', 'array', 'digest', 'arrayBuffer'];\n\n var blocks = [];\n\n if (root.JS_SHA256_NO_NODE_JS || !Array.isArray) {\n Array.isArray = function (obj) {\n return Object.prototype.toString.call(obj) === '[object Array]';\n };\n }\n\n if (ARRAY_BUFFER && (root.JS_SHA256_NO_ARRAY_BUFFER_IS_VIEW || !ArrayBuffer.isView)) {\n ArrayBuffer.isView = function (obj) {\n return typeof obj === 'object' && obj.buffer && obj.buffer.constructor === ArrayBuffer;\n };\n }\n\n var createOutputMethod = function (outputType, is224) {\n return function (message) {\n return new Sha256(is224, true).update(message)[outputType]();\n };\n };\n\n var createMethod = function (is224) {\n var method = createOutputMethod('hex', is224);\n if (NODE_JS) {\n method = nodeWrap(method, is224);\n }\n method.create = function () {\n return new Sha256(is224);\n };\n method.update = function (message) {\n return method.create().update(message);\n };\n for (var i = 0; i < OUTPUT_TYPES.length; ++i) {\n var type = OUTPUT_TYPES[i];\n method[type] = createOutputMethod(type, is224);\n }\n return method;\n };\n\n var nodeWrap = function (method, is224) {\n var crypto = eval(\"require('crypto')\");\n var Buffer = eval(\"require('buffer').Buffer\");\n var algorithm = is224 ? 'sha224' : 'sha256';\n var nodeMethod = function (message) {\n if (typeof message === 'string') {\n return crypto.createHash(algorithm).update(message, 'utf8').digest('hex');\n } else {\n if (message === null || message === undefined) {\n throw new Error(ERROR);\n } else if (message.constructor === ArrayBuffer) {\n message = new Uint8Array(message);\n }\n }\n if (Array.isArray(message) || ArrayBuffer.isView(message) ||\n message.constructor === Buffer) {\n return crypto.createHash(algorithm).update(new Buffer(message)).digest('hex');\n } else {\n return method(message);\n }\n };\n return nodeMethod;\n };\n\n var createHmacOutputMethod = function (outputType, is224) {\n return function (key, message) {\n return new HmacSha256(key, is224, true).update(message)[outputType]();\n };\n };\n\n var createHmacMethod = function (is224) {\n var method = createHmacOutputMethod('hex', is224);\n method.create = function (key) {\n return new HmacSha256(key, is224);\n };\n method.update = function (key, message) {\n return method.create(key).update(message);\n };\n for (var i = 0; i < OUTPUT_TYPES.length; ++i) {\n var type = OUTPUT_TYPES[i];\n method[type] = createHmacOutputMethod(type, is224);\n }\n return method;\n };\n\n function Sha256(is224, sharedMemory) {\n if (sharedMemory) {\n blocks[0] = blocks[16] = blocks[1] = blocks[2] = blocks[3] =\n blocks[4] = blocks[5] = blocks[6] = blocks[7] =\n blocks[8] = blocks[9] = blocks[10] = blocks[11] =\n blocks[12] = blocks[13] = blocks[14] = blocks[15] = 0;\n this.blocks = blocks;\n } else {\n this.blocks = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];\n }\n\n if (is224) {\n this.h0 = 0xc1059ed8;\n this.h1 = 0x367cd507;\n this.h2 = 0x3070dd17;\n this.h3 = 0xf70e5939;\n this.h4 = 0xffc00b31;\n this.h5 = 0x68581511;\n this.h6 = 0x64f98fa7;\n this.h7 = 0xbefa4fa4;\n } else { // 256\n this.h0 = 0x6a09e667;\n this.h1 = 0xbb67ae85;\n this.h2 = 0x3c6ef372;\n this.h3 = 0xa54ff53a;\n this.h4 = 0x510e527f;\n this.h5 = 0x9b05688c;\n this.h6 = 0x1f83d9ab;\n this.h7 = 0x5be0cd19;\n }\n\n this.block = this.start = this.bytes = this.hBytes = 0;\n this.finalized = this.hashed = false;\n this.first = true;\n this.is224 = is224;\n }\n\n Sha256.prototype.update = function (message) {\n if (this.finalized) {\n return;\n }\n var notString, type = typeof message;\n if (type !== 'string') {\n if (type === 'object') {\n if (message === null) {\n throw new Error(ERROR);\n } else if (ARRAY_BUFFER && message.constructor === ArrayBuffer) {\n message = new Uint8Array(message);\n } else if (!Array.isArray(message)) {\n if (!ARRAY_BUFFER || !ArrayBuffer.isView(message)) {\n throw new Error(ERROR);\n }\n }\n } else {\n throw new Error(ERROR);\n }\n notString = true;\n }\n var code, index = 0, i, length = message.length, blocks = this.blocks;\n\n while (index < length) {\n if (this.hashed) {\n this.hashed = false;\n blocks[0] = this.block;\n blocks[16] = blocks[1] = blocks[2] = blocks[3] =\n blocks[4] = blocks[5] = blocks[6] = blocks[7] =\n blocks[8] = blocks[9] = blocks[10] = blocks[11] =\n blocks[12] = blocks[13] = blocks[14] = blocks[15] = 0;\n }\n\n if (notString) {\n for (i = this.start; index < length && i < 64; ++index) {\n blocks[i >> 2] |= message[index] << SHIFT[i++ & 3];\n }\n } else {\n for (i = this.start; index < length && i < 64; ++index) {\n code = message.charCodeAt(index);\n if (code < 0x80) {\n blocks[i >> 2] |= code << SHIFT[i++ & 3];\n } else if (code < 0x800) {\n blocks[i >> 2] |= (0xc0 | (code >> 6)) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | (code & 0x3f)) << SHIFT[i++ & 3];\n } else if (code < 0xd800 || code >= 0xe000) {\n blocks[i >> 2] |= (0xe0 | (code >> 12)) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | ((code >> 6) & 0x3f)) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | (code & 0x3f)) << SHIFT[i++ & 3];\n } else {\n code = 0x10000 + (((code & 0x3ff) << 10) | (message.charCodeAt(++index) & 0x3ff));\n blocks[i >> 2] |= (0xf0 | (code >> 18)) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | ((code >> 12) & 0x3f)) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | ((code >> 6) & 0x3f)) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | (code & 0x3f)) << SHIFT[i++ & 3];\n }\n }\n }\n\n this.lastByteIndex = i;\n this.bytes += i - this.start;\n if (i >= 64) {\n this.block = blocks[16];\n this.start = i - 64;\n this.hash();\n this.hashed = true;\n } else {\n this.start = i;\n }\n }\n if (this.bytes > 4294967295) {\n this.hBytes += this.bytes / 4294967296 << 0;\n this.bytes = this.bytes % 4294967296;\n }\n return this;\n };\n\n Sha256.prototype.finalize = function () {\n if (this.finalized) {\n return;\n }\n this.finalized = true;\n var blocks = this.blocks, i = this.lastByteIndex;\n blocks[16] = this.block;\n blocks[i >> 2] |= EXTRA[i & 3];\n this.block = blocks[16];\n if (i >= 56) {\n if (!this.hashed) {\n this.hash();\n }\n blocks[0] = this.block;\n blocks[16] = blocks[1] = blocks[2] = blocks[3] =\n blocks[4] = blocks[5] = blocks[6] = blocks[7] =\n blocks[8] = blocks[9] = blocks[10] = blocks[11] =\n blocks[12] = blocks[13] = blocks[14] = blocks[15] = 0;\n }\n blocks[14] = this.hBytes << 3 | this.bytes >>> 29;\n blocks[15] = this.bytes << 3;\n this.hash();\n };\n\n Sha256.prototype.hash = function () {\n var a = this.h0, b = this.h1, c = this.h2, d = this.h3, e = this.h4, f = this.h5, g = this.h6,\n h = this.h7, blocks = this.blocks, j, s0, s1, maj, t1, t2, ch, ab, da, cd, bc;\n\n for (j = 16; j < 64; ++j) {\n // rightrotate\n t1 = blocks[j - 15];\n s0 = ((t1 >>> 7) | (t1 << 25)) ^ ((t1 >>> 18) | (t1 << 14)) ^ (t1 >>> 3);\n t1 = blocks[j - 2];\n s1 = ((t1 >>> 17) | (t1 << 15)) ^ ((t1 >>> 19) | (t1 << 13)) ^ (t1 >>> 10);\n blocks[j] = blocks[j - 16] + s0 + blocks[j - 7] + s1 << 0;\n }\n\n bc = b & c;\n for (j = 0; j < 64; j += 4) {\n if (this.first) {\n if (this.is224) {\n ab = 300032;\n t1 = blocks[0] - 1413257819;\n h = t1 - 150054599 << 0;\n d = t1 + 24177077 << 0;\n } else {\n ab = 704751109;\n t1 = blocks[0] - 210244248;\n h = t1 - 1521486534 << 0;\n d = t1 + 143694565 << 0;\n }\n this.first = false;\n } else {\n s0 = ((a >>> 2) | (a << 30)) ^ ((a >>> 13) | (a << 19)) ^ ((a >>> 22) | (a << 10));\n s1 = ((e >>> 6) | (e << 26)) ^ ((e >>> 11) | (e << 21)) ^ ((e >>> 25) | (e << 7));\n ab = a & b;\n maj = ab ^ (a & c) ^ bc;\n ch = (e & f) ^ (~e & g);\n t1 = h + s1 + ch + K[j] + blocks[j];\n t2 = s0 + maj;\n h = d + t1 << 0;\n d = t1 + t2 << 0;\n }\n s0 = ((d >>> 2) | (d << 30)) ^ ((d >>> 13) | (d << 19)) ^ ((d >>> 22) | (d << 10));\n s1 = ((h >>> 6) | (h << 26)) ^ ((h >>> 11) | (h << 21)) ^ ((h >>> 25) | (h << 7));\n da = d & a;\n maj = da ^ (d & b) ^ ab;\n ch = (h & e) ^ (~h & f);\n t1 = g + s1 + ch + K[j + 1] + blocks[j + 1];\n t2 = s0 + maj;\n g = c + t1 << 0;\n c = t1 + t2 << 0;\n s0 = ((c >>> 2) | (c << 30)) ^ ((c >>> 13) | (c << 19)) ^ ((c >>> 22) | (c << 10));\n s1 = ((g >>> 6) | (g << 26)) ^ ((g >>> 11) | (g << 21)) ^ ((g >>> 25) | (g << 7));\n cd = c & d;\n maj = cd ^ (c & a) ^ da;\n ch = (g & h) ^ (~g & e);\n t1 = f + s1 + ch + K[j + 2] + blocks[j + 2];\n t2 = s0 + maj;\n f = b + t1 << 0;\n b = t1 + t2 << 0;\n s0 = ((b >>> 2) | (b << 30)) ^ ((b >>> 13) | (b << 19)) ^ ((b >>> 22) | (b << 10));\n s1 = ((f >>> 6) | (f << 26)) ^ ((f >>> 11) | (f << 21)) ^ ((f >>> 25) | (f << 7));\n bc = b & c;\n maj = bc ^ (b & d) ^ cd;\n ch = (f & g) ^ (~f & h);\n t1 = e + s1 + ch + K[j + 3] + blocks[j + 3];\n t2 = s0 + maj;\n e = a + t1 << 0;\n a = t1 + t2 << 0;\n }\n\n this.h0 = this.h0 + a << 0;\n this.h1 = this.h1 + b << 0;\n this.h2 = this.h2 + c << 0;\n this.h3 = this.h3 + d << 0;\n this.h4 = this.h4 + e << 0;\n this.h5 = this.h5 + f << 0;\n this.h6 = this.h6 + g << 0;\n this.h7 = this.h7 + h << 0;\n };\n\n Sha256.prototype.hex = function () {\n this.finalize();\n\n var h0 = this.h0, h1 = this.h1, h2 = this.h2, h3 = this.h3, h4 = this.h4, h5 = this.h5,\n h6 = this.h6, h7 = this.h7;\n\n var hex = HEX_CHARS[(h0 >> 28) & 0x0F] + HEX_CHARS[(h0 >> 24) & 0x0F] +\n HEX_CHARS[(h0 >> 20) & 0x0F] + HEX_CHARS[(h0 >> 16) & 0x0F] +\n HEX_CHARS[(h0 >> 12) & 0x0F] + HEX_CHARS[(h0 >> 8) & 0x0F] +\n HEX_CHARS[(h0 >> 4) & 0x0F] + HEX_CHARS[h0 & 0x0F] +\n HEX_CHARS[(h1 >> 28) & 0x0F] + HEX_CHARS[(h1 >> 24) & 0x0F] +\n HEX_CHARS[(h1 >> 20) & 0x0F] + HEX_CHARS[(h1 >> 16) & 0x0F] +\n HEX_CHARS[(h1 >> 12) & 0x0F] + HEX_CHARS[(h1 >> 8) & 0x0F] +\n HEX_CHARS[(h1 >> 4) & 0x0F] + HEX_CHARS[h1 & 0x0F] +\n HEX_CHARS[(h2 >> 28) & 0x0F] + HEX_CHARS[(h2 >> 24) & 0x0F] +\n HEX_CHARS[(h2 >> 20) & 0x0F] + HEX_CHARS[(h2 >> 16) & 0x0F] +\n HEX_CHARS[(h2 >> 12) & 0x0F] + HEX_CHARS[(h2 >> 8) & 0x0F] +\n HEX_CHARS[(h2 >> 4) & 0x0F] + HEX_CHARS[h2 & 0x0F] +\n HEX_CHARS[(h3 >> 28) & 0x0F] + HEX_CHARS[(h3 >> 24) & 0x0F] +\n HEX_CHARS[(h3 >> 20) & 0x0F] + HEX_CHARS[(h3 >> 16) & 0x0F] +\n HEX_CHARS[(h3 >> 12) & 0x0F] + HEX_CHARS[(h3 >> 8) & 0x0F] +\n HEX_CHARS[(h3 >> 4) & 0x0F] + HEX_CHARS[h3 & 0x0F] +\n HEX_CHARS[(h4 >> 28) & 0x0F] + HEX_CHARS[(h4 >> 24) & 0x0F] +\n HEX_CHARS[(h4 >> 20) & 0x0F] + HEX_CHARS[(h4 >> 16) & 0x0F] +\n HEX_CHARS[(h4 >> 12) & 0x0F] + HEX_CHARS[(h4 >> 8) & 0x0F] +\n HEX_CHARS[(h4 >> 4) & 0x0F] + HEX_CHARS[h4 & 0x0F] +\n HEX_CHARS[(h5 >> 28) & 0x0F] + HEX_CHARS[(h5 >> 24) & 0x0F] +\n HEX_CHARS[(h5 >> 20) & 0x0F] + HEX_CHARS[(h5 >> 16) & 0x0F] +\n HEX_CHARS[(h5 >> 12) & 0x0F] + HEX_CHARS[(h5 >> 8) & 0x0F] +\n HEX_CHARS[(h5 >> 4) & 0x0F] + HEX_CHARS[h5 & 0x0F] +\n HEX_CHARS[(h6 >> 28) & 0x0F] + HEX_CHARS[(h6 >> 24) & 0x0F] +\n HEX_CHARS[(h6 >> 20) & 0x0F] + HEX_CHARS[(h6 >> 16) & 0x0F] +\n HEX_CHARS[(h6 >> 12) & 0x0F] + HEX_CHARS[(h6 >> 8) & 0x0F] +\n HEX_CHARS[(h6 >> 4) & 0x0F] + HEX_CHARS[h6 & 0x0F];\n if (!this.is224) {\n hex += HEX_CHARS[(h7 >> 28) & 0x0F] + HEX_CHARS[(h7 >> 24) & 0x0F] +\n HEX_CHARS[(h7 >> 20) & 0x0F] + HEX_CHARS[(h7 >> 16) & 0x0F] +\n HEX_CHARS[(h7 >> 12) & 0x0F] + HEX_CHARS[(h7 >> 8) & 0x0F] +\n HEX_CHARS[(h7 >> 4) & 0x0F] + HEX_CHARS[h7 & 0x0F];\n }\n return hex;\n };\n\n Sha256.prototype.toString = Sha256.prototype.hex;\n\n Sha256.prototype.digest = function () {\n this.finalize();\n\n var h0 = this.h0, h1 = this.h1, h2 = this.h2, h3 = this.h3, h4 = this.h4, h5 = this.h5,\n h6 = this.h6, h7 = this.h7;\n\n var arr = [\n (h0 >> 24) & 0xFF, (h0 >> 16) & 0xFF, (h0 >> 8) & 0xFF, h0 & 0xFF,\n (h1 >> 24) & 0xFF, (h1 >> 16) & 0xFF, (h1 >> 8) & 0xFF, h1 & 0xFF,\n (h2 >> 24) & 0xFF, (h2 >> 16) & 0xFF, (h2 >> 8) & 0xFF, h2 & 0xFF,\n (h3 >> 24) & 0xFF, (h3 >> 16) & 0xFF, (h3 >> 8) & 0xFF, h3 & 0xFF,\n (h4 >> 24) & 0xFF, (h4 >> 16) & 0xFF, (h4 >> 8) & 0xFF, h4 & 0xFF,\n (h5 >> 24) & 0xFF, (h5 >> 16) & 0xFF, (h5 >> 8) & 0xFF, h5 & 0xFF,\n (h6 >> 24) & 0xFF, (h6 >> 16) & 0xFF, (h6 >> 8) & 0xFF, h6 & 0xFF\n ];\n if (!this.is224) {\n arr.push((h7 >> 24) & 0xFF, (h7 >> 16) & 0xFF, (h7 >> 8) & 0xFF, h7 & 0xFF);\n }\n return arr;\n };\n\n Sha256.prototype.array = Sha256.prototype.digest;\n\n Sha256.prototype.arrayBuffer = function () {\n this.finalize();\n\n var buffer = new ArrayBuffer(this.is224 ? 28 : 32);\n var dataView = new DataView(buffer);\n dataView.setUint32(0, this.h0);\n dataView.setUint32(4, this.h1);\n dataView.setUint32(8, this.h2);\n dataView.setUint32(12, this.h3);\n dataView.setUint32(16, this.h4);\n dataView.setUint32(20, this.h5);\n dataView.setUint32(24, this.h6);\n if (!this.is224) {\n dataView.setUint32(28, this.h7);\n }\n return buffer;\n };\n\n function HmacSha256(key, is224, sharedMemory) {\n var i, type = typeof key;\n if (type === 'string') {\n var bytes = [], length = key.length, index = 0, code;\n for (i = 0; i < length; ++i) {\n code = key.charCodeAt(i);\n if (code < 0x80) {\n bytes[index++] = code;\n } else if (code < 0x800) {\n bytes[index++] = (0xc0 | (code >> 6));\n bytes[index++] = (0x80 | (code & 0x3f));\n } else if (code < 0xd800 || code >= 0xe000) {\n bytes[index++] = (0xe0 | (code >> 12));\n bytes[index++] = (0x80 | ((code >> 6) & 0x3f));\n bytes[index++] = (0x80 | (code & 0x3f));\n } else {\n code = 0x10000 + (((code & 0x3ff) << 10) | (key.charCodeAt(++i) & 0x3ff));\n bytes[index++] = (0xf0 | (code >> 18));\n bytes[index++] = (0x80 | ((code >> 12) & 0x3f));\n bytes[index++] = (0x80 | ((code >> 6) & 0x3f));\n bytes[index++] = (0x80 | (code & 0x3f));\n }\n }\n key = bytes;\n } else {\n if (type === 'object') {\n if (key === null) {\n throw new Error(ERROR);\n } else if (ARRAY_BUFFER && key.constructor === ArrayBuffer) {\n key = new Uint8Array(key);\n } else if (!Array.isArray(key)) {\n if (!ARRAY_BUFFER || !ArrayBuffer.isView(key)) {\n throw new Error(ERROR);\n }\n }\n } else {\n throw new Error(ERROR);\n }\n }\n\n if (key.length > 64) {\n key = (new Sha256(is224, true)).update(key).array();\n }\n\n var oKeyPad = [], iKeyPad = [];\n for (i = 0; i < 64; ++i) {\n var b = key[i] || 0;\n oKeyPad[i] = 0x5c ^ b;\n iKeyPad[i] = 0x36 ^ b;\n }\n\n Sha256.call(this, is224, sharedMemory);\n\n this.update(iKeyPad);\n this.oKeyPad = oKeyPad;\n this.inner = true;\n this.sharedMemory = sharedMemory;\n }\n HmacSha256.prototype = new Sha256();\n\n HmacSha256.prototype.finalize = function () {\n Sha256.prototype.finalize.call(this);\n if (this.inner) {\n this.inner = false;\n var innerHash = this.array();\n Sha256.call(this, this.is224, this.sharedMemory);\n this.update(this.oKeyPad);\n this.update(innerHash);\n Sha256.prototype.finalize.call(this);\n }\n };\n\n var exports = createMethod();\n exports.sha256 = exports;\n exports.sha224 = createMethod(true);\n exports.sha256.hmac = createHmacMethod();\n exports.sha224.hmac = createHmacMethod(true);\n\n if (COMMON_JS) {\n module.exports = exports;\n } else {\n root.sha256 = exports.sha256;\n root.sha224 = exports.sha224;\n if (AMD) {\n define(function () {\n return exports;\n });\n }\n }\n})();\n", "\"use strict\";var Module={};var ENVIRONMENT_IS_NODE=typeof process==\"object\"&&typeof process.versions==\"object\"&&typeof process.versions.node==\"string\";if(ENVIRONMENT_IS_NODE){var nodeWorkerThreads=require(\"worker_threads\");var parentPort=nodeWorkerThreads.parentPort;parentPort.on(\"message\",data=>onmessage({data:data}));var fs=require(\"fs\");Object.assign(global,{self:global,require:require,Module:Module,location:{href:__filename},Worker:nodeWorkerThreads.Worker,importScripts:f=>(0,eval)(fs.readFileSync(f,\"utf8\")+\"//# sourceURL=\"+f),postMessage:msg=>parentPort.postMessage(msg),performance:global.performance||{now:Date.now}})}var initializedJS=false;function threadPrintErr(){var text=Array.prototype.slice.call(arguments).join(\" \");if(ENVIRONMENT_IS_NODE){fs.writeSync(2,text+\"\\n\");return}console.error(text)}function threadAlert(){var text=Array.prototype.slice.call(arguments).join(\" \");postMessage({cmd:\"alert\",text:text,threadId:Module[\"_pthread_self\"]()})}var err=threadPrintErr;self.alert=threadAlert;Module[\"instantiateWasm\"]=(info,receiveInstance)=>{var module=Module[\"wasmModule\"];Module[\"wasmModule\"]=null;var instance=new WebAssembly.Instance(module,info);return receiveInstance(instance)};self.onunhandledrejection=e=>{throw e.reason||e};function handleMessage(e){try{if(e.data.cmd===\"load\"){let messageQueue=[];self.onmessage=e=>messageQueue.push(e);self.startWorker=instance=>{Module=instance;postMessage({\"cmd\":\"loaded\"});for(let msg of messageQueue){handleMessage(msg)}self.onmessage=handleMessage};Module[\"wasmModule\"]=e.data.wasmModule;for(const handler of e.data.handlers){Module[handler]=(...args)=>{postMessage({cmd:\"callHandler\",handler:handler,args:args})}}Module[\"wasmMemory\"]=e.data.wasmMemory;Module[\"buffer\"]=Module[\"wasmMemory\"].buffer;Module[\"ENVIRONMENT_IS_PTHREAD\"]=true;if(typeof e.data.urlOrBlob==\"string\"){importScripts(e.data.urlOrBlob)}else{var objectUrl=URL.createObjectURL(e.data.urlOrBlob);importScripts(objectUrl);URL.revokeObjectURL(objectUrl)}DuckDB(Module)}else if(e.data.cmd===\"run\"){Module[\"__emscripten_thread_init\"](e.data.pthread_ptr,0,0,1);Module[\"__emscripten_thread_mailbox_await\"](e.data.pthread_ptr);Module[\"establishStackSpace\"]();Module[\"PThread\"].receiveObjectTransfer(e.data);Module[\"PThread\"].threadInitTLS();if(!initializedJS){initializedJS=true}try{Module[\"invokeEntryPoint\"](e.data.start_routine,e.data.arg)}catch(ex){if(ex!=\"unwind\"){throw ex}}}else if(e.data.cmd===\"cancel\"){if(Module[\"_pthread_self\"]()){Module[\"__emscripten_thread_exit\"](-1)}}else if(e.data.target===\"setimmediate\"){}else if(e.data.cmd===\"checkMailbox\"){if(initializedJS){Module[\"checkMailbox\"]()}}else if(e.data.cmd){err(`worker.js received unknown command ${e.data.cmd}`);err(e.data)}}catch(ex){if(Module[\"__emscripten_thread_crashed\"]){Module[\"__emscripten_thread_crashed\"]()}throw ex}}self.onmessage=handleMessage;\n\nexport const onmessage = self.onmessage;\nexport function getModule() { return Module; }\nexport function setModule(m) { Module = m; }\n", "import * as pthread_api from '../bindings/duckdb-coi.pthread';\nimport DuckDB from '../bindings/duckdb-coi';\nimport { BROWSER_RUNTIME } from '../bindings/runtime_browser';\n\n// Register the global DuckDB runtime\nglobalThis.DUCKDB_RUNTIME = {};\nfor (const func of Object.getOwnPropertyNames(BROWSER_RUNTIME)) {\n if (func == 'constructor') continue;\n globalThis.DUCKDB_RUNTIME[func] = Object.getOwnPropertyDescriptor(BROWSER_RUNTIME, func)!.value;\n}\n\n// We just override the load handler of the pthread wrapper to bundle DuckDB with esbuild.\nglobalThis.onmessage = (e: any) => {\n if (e.data.cmd === 'load') {\n const m = pthread_api.getModule();\n\n // Module and memory were sent from main thread\n m['wasmModule'] = e.data.wasmModule;\n m['wasmMemory'] = e.data.wasmMemory;\n m['buffer'] = m['wasmMemory'].buffer;\n m['ENVIRONMENT_IS_PTHREAD'] = true;\n\n DuckDB(m).then(function (instance) {\n pthread_api.setModule(instance);\n });\n } else if (e.data.cmd === 'registerFileHandle') {\n globalThis.DUCKDB_RUNTIME._files = globalThis.DUCKDB_RUNTIME._files || new Map();\n globalThis.DUCKDB_RUNTIME._files.set(e.data.fileName, e.data.fileHandle);\n } else if (e.data.cmd === 'dropFileHandle') {\n globalThis.DUCKDB_RUNTIME._files = globalThis.DUCKDB_RUNTIME._files || new Map();\n globalThis.DUCKDB_RUNTIME._files.delete(e.data.fileName);\n } else if (e.data.cmd === 'registerUDFFunction') {\n globalThis.DUCKDB_RUNTIME._udfFunctions = globalThis.DUCKDB_RUNTIME._files || new Map();\n globalThis.DUCKDB_RUNTIME._udfFunctions.set(e.data.udf.name, e.data.udf);\n } else if (e.data.cmd === 'dropUDFFunctions') {\n globalThis.DUCKDB_RUNTIME._udfFunctions = globalThis.DUCKDB_RUNTIME._files || new Map();\n for (const key of globalThis.DUCKDB_RUNTIME._udfFunctions.keys()) {\n if (globalThis.DUCKDB_RUNTIME._udfFunctions.get(key).connection_id == e.data.connectionId) {\n globalThis.DUCKDB_RUNTIME._udfFunctions.delete(key);\n }\n }\n } else {\n pthread_api.onmessage(e);\n }\n};\n", "import {S3Config} from \"../bindings\";\nimport {sha256} from \"js-sha256\";\n\nexport interface S3Params {\n url: string,\n query: string,\n host: string,\n region: string,\n service: string,\n method: string,\n accessKeyId: string,\n secretAccessKey: string,\n sessionToken: string,\n dateNow: string,\n datetimeNow: string\n}\n\nexport interface S3PayloadParams {\n contentHash: string | null,\n contentType: string | null\n}\n\nconst getHTTPHost = function (config : S3Config | undefined, url : string, bucket : string) : string {\n if (config?.endpoint?.startsWith(\"http\")) {\n // Endpoint is a full url, we append the bucket\n const httpHost = `${config?.endpoint}`;\n const offset = httpHost.indexOf(\"://\")+3;\n return httpHost.substring(offset);\n } else if (config?.endpoint) {\n // Endpoint is not a full url and the https://{bucket}.{domain} format will be used\n return `${bucket}.${config?.endpoint}`;\n } else {\n // Default aws s3 url\n return `${bucket}.s3.amazonaws.com`;\n }\n}\n\nexport function getS3Params (config : S3Config | undefined, url: string, method : string) : S3Params {\n const parsedS3Url = parseS3Url(url);\n\n // when using S3 path-style access, the signed URL should also include the bucket name, \n // as it is present in the HTTP URL path.\n // See: https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-bucket-intro.html#path-style-url-ex\n let path = parsedS3Url.path;\n if (isPathStyleAccess(config)) {\n path = `/${parsedS3Url.bucket}${path}`;\n }\n return {\n url: path,\n query: \"\",\n host: getHTTPHost(config, url, parsedS3Url.bucket),\n region: (config?.region) ?? \"\",\n service: \"s3\",\n method: method,\n accessKeyId: (config?.accessKeyId) ?? \"\",\n secretAccessKey: (config?.secretAccessKey) ?? \"\",\n sessionToken: (config?.sessionToken) ?? \"\",\n dateNow: new Date().toISOString().replace(/-/g,'').split('T')[0],\n datetimeNow: new Date().toISOString().replace(/-/g,'').replace(/:/g,'').split('.')[0]+ 'Z',\n };\n}\n\nexport function uriEncode(input : string, encode_slash = false) {\n // https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-query-string-auth.html\n\n const hexDigit = \"0123456789ABCDEF\";\n let result = \"\";\n\n for (let i = 0; i < input.length; i++) {\n const ch : string = input[i];\n\n if ((ch >= 'A' && ch <= 'Z') || (ch >= 'a' && ch <= 'z') || (ch >= '0' && ch <= '9') || ch == '_' ||\n ch == '-' || ch == '~' || ch == '.') {\n result += ch;\n } else if (ch == '/') {\n if (encode_slash) {\n result += \"%2F\";\n } else {\n result += ch;\n }\n } else {\n result += \"%\";\n result += hexDigit[ch.charCodeAt(0) >> 4];\n result += hexDigit[ch.charCodeAt(0) & 15];\n }\n }\n return result;\n}\n\nexport function createS3Headers(params: S3Params, payloadParams : S3PayloadParams | null = null) : Map<string, string> {\n // this is the sha256 of the empty string, its useful since we have no payload for GET requests\n const payloadHash = (payloadParams?.contentHash) ?? \"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\";\n\n const res = new Map<string, string>();\n // res.set(\"host\", params.host)\n res.set(\"x-amz-date\", params.datetimeNow);\n res.set(\"x-amz-content-sha256\", payloadHash);\n\n if (params.sessionToken) {\n res.set(\"x-amz-security-token\", params.sessionToken);\n }\n\n // construct string to sign\n let signedHeaders = \"\";\n if (payloadParams?.contentType) {\n signedHeaders += \"content-type;\";\n }\n signedHeaders += \"host;x-amz-content-sha256;x-amz-date\";\n if (params.sessionToken) {\n signedHeaders += \";x-amz-security-token\";\n }\n\n let canonicalRequest = params.method + \"\\n\" + uriEncode(params.url) + \"\\n\" + params.query;\n if (payloadParams?.contentType) {\n canonicalRequest += \"\\ncontent-type:\" + payloadParams?.contentType;\n }\n canonicalRequest += \"\\nhost:\" + params.host +\n \"\\nx-amz-content-sha256:\" + payloadHash + \"\\nx-amz-date:\" + params.datetimeNow;\n if (params.sessionToken && params.sessionToken.length > 0) {\n canonicalRequest += \"\\nx-amz-security-token:\" + params.sessionToken;\n }\n\n canonicalRequest += \"\\n\\n\" + signedHeaders + \"\\n\" + payloadHash;\n const canonicalRequestHashStr = sha256(canonicalRequest);\n\n const stringToSign = \"AWS4-HMAC-SHA256\\n\" + params.datetimeNow + \"\\n\" + params.dateNow + \"/\" + params.region + \"/\" + params.service +\n \"/aws4_request\\n\" + canonicalRequestHashStr;\n\n // ts-ignore's because library can accept array buffer as key, but TS arg is incorrect\n const signKey = \"AWS4\" + params.secretAccessKey;\n const kDate = sha256.hmac.arrayBuffer(signKey, params.dateNow);\n\n // Note, js-sha256 has a bug in the TS interface that only supports strings as keys, while we need a bytearray\n // as key. PR is open but unmerged: https://github.com/emn178/js-sha256/pull/25\n // eslint-disable-next-line\n // @ts-ignore\n const kRegion = sha256.hmac.arrayBuffer(kDate, params.region);\n // eslint-disable-next-line\n // @ts-ignore\n const kService = sha256.hmac.arrayBuffer(kRegion, params.service,);\n // eslint-disable-next-line\n // @ts-ignore\n const signingKey = sha256.hmac.arrayBuffer(kService, \"aws4_request\");\n // eslint-disable-next-line\n // @ts-ignore\n const signature = sha256.hmac(signingKey, stringToSign);\n\n res.set(\"Authorization\", \"AWS4-HMAC-SHA256 Credential=\" + params.accessKeyId + \"/\" + params.dateNow + \"/\" + params.region + \"/\" +\n params.service + \"/aws4_request, SignedHeaders=\" + signedHeaders +\n \", Signature=\" + signature);\n\n return res;\n}\n\nconst createS3HeadersFromS3Config = function (config : S3Config | undefined, url : string, method : string, contentType: string | null = null, payload : Uint8Array | null = null) : Map<string, string> {\n const params = getS3Params(config, url, method);\n const payloadParams = {\n contentType: contentType,\n contentHash: payload ? sha256.hex(payload!) : null\n } as S3PayloadParams;\n return createS3Headers(params, payloadParams);\n}\n\nexport function addS3Headers(xhr: XMLHttpRequest, config : S3Config | undefined, url : string, method: string, contentType: string | null = null, payload : Uint8Array | null = null) {\n if (config?.accessKeyId || config?.sessionToken) {\n const headers = createS3HeadersFromS3Config(config, url, method, contentType, payload);\n headers.forEach((value: string, header: string) => {\n xhr.setRequestHeader(header, value);\n });\n\n if (contentType) {\n xhr.setRequestHeader(\"content-type\", contentType);\n }\n }\n}\n\nexport function parseS3Url (url: string) : {bucket : string, path : string} {\n if (url.indexOf(\"s3://\") != 0) {\n throw new Error(\"URL needs to start with s3://\");\n }\n const slashPos = url.indexOf('/', 5);\n\n if (slashPos == -1) {\n throw new Error(\"URL needs to contain a '/' after the host\");\n }\n\n const bucket = url.substring(5, slashPos);\n if (!bucket) {\n throw new Error(\"URL needs to contain a bucket name\");\n }\n const path = url.substring(slashPos);\n if (!path) {\n throw new Error(\"URL needs to contain key\");\n }\n\n return {bucket: bucket, path: path}\n}\n\nfunction isPathStyleAccess(config : S3Config | undefined) : boolean {\n if (config?.endpoint?.startsWith(\"http\")) {\n return true\n }\n return false\n}\n\nexport function getHTTPUrl(config : S3Config | undefined, url : string) : string {\n const parsedUrl = parseS3Url(url);\n if (isPathStyleAccess(config)) {\n // Endpoint is a full url, we append the bucket\n return `${config?.endpoint}/${parsedUrl.bucket}` + parsedUrl.path;\n }\n return 'https://' + getHTTPHost(config, url, parsedUrl.bucket) + parsedUrl.path;\n}", "import { DuckDBRuntime } from './runtime';\nimport { DuckDBModule } from './duckdb_module';\n\nconst TEXT_ENCODER = new TextEncoder();\nconst TEXT_DECODER = new TextDecoder('utf-8');\n\nfunction storeError(mod: DuckDBModule, response: number, message: string) {\n const msgBuffer = TEXT_ENCODER.encode(message);\n const heapAddr = mod._malloc(msgBuffer.byteLength);\n const heapArray = mod.HEAPU8.subarray(heapAddr, heapAddr + msgBuffer.byteLength);\n heapArray.set(msgBuffer);\n mod.HEAPF64[(response >> 3) + 0] = 1;\n mod.HEAPF64[(response >> 3) + 1] = heapAddr;\n mod.HEAPF64[(response >> 3) + 2] = heapArray.byteLength;\n}\n\nfunction getTypeSize(ptype: string) {\n switch (ptype) {\n case 'UINT8':\n case 'INT8':\n return 1;\n case 'INT32':\n case 'FLOAT':\n return 4;\n case 'INT64':\n case 'UINT64':\n case 'DOUBLE':\n case 'VARCHAR':\n return 8;\n default:\n return 0;\n }\n}\n\nfunction ptrToArray(mod: DuckDBModule, ptr: number, ptype: string, n: number) {\n const heap = mod.HEAPU8.subarray(ptr, ptr + n * getTypeSize(ptype));\n switch (ptype) {\n case 'UINT8':\n return new Uint8Array(heap.buffer, heap.byteOffset, n);\n case 'INT8':\n return new Int8Array(heap.buffer, heap.byteOffset, n);\n case 'INT32':\n return new Int32Array(heap.buffer, heap.byteOffset, n);\n case 'FLOAT':\n return new Float32Array(heap.buffer, heap.byteOffset, n);\n case 'DOUBLE':\n return new Float64Array(heap.buffer, heap.byteOffset, n);\n case 'VARCHAR':\n return new Float64Array(heap.buffer, heap.byteOffset, n);\n default:\n return new Array<string | undefined | null>(0); // cough\n }\n}\n\nfunction ptrToUint8Array(mod: DuckDBModule, ptr: number, n: number) {\n const heap = mod.HEAPU8.subarray(ptr, ptr + n);\n return new Uint8Array(heap.buffer, heap.byteOffset, n);\n}\nfunction ptrToFloat64Array(mod: DuckDBModule, ptr: number, n: number) {\n const heap = mod.HEAPU8.subarray(ptr, ptr + n * 8);\n return new Float64Array(heap.buffer, heap.byteOffset, n);\n}\n\ninterface ArgumentTypeDescription {\n name?: string;\n sqlType: string;\n physicalType: string;\n validityBuffer?: number;\n dataBuffer?: number;\n lengthBuffer?: number;\n children?: ArgumentTypeDescription[];\n}\n\ninterface ReturnTypeDescription {\n sqlType: string;\n physicalType: string;\n}\n\ninterface SchemaDescription {\n rows: number;\n args: ArgumentTypeDescription[];\n ret: ReturnTypeDescription;\n}\n\ntype ArgumentResolver = (row: number) => any | null;\n\n// this is called from webdb.cc/CallScalarUDFFunction, changes here need to be matched there\nexport function callScalarUDF(\n runtime: DuckDBRuntime,\n mod: DuckDBModule,\n response: number,\n funcId: number,\n descPtr: number,\n descSize: number,\n ptrsPtr: number,\n ptrsSize: number,\n) {\n try {\n const udf = runtime._udfFunctions.get(funcId);\n if (!udf) {\n storeError(mod, response, 'Unknown UDF with id: ' + funcId);\n return;\n }\n const rawDesc = TEXT_DECODER.decode(mod.HEAPU8.subarray(descPtr, descPtr + descSize));\n const desc = JSON.parse(rawDesc) as SchemaDescription;\n const ptrs = ptrToFloat64Array(mod, ptrsPtr, ptrsSize / 8);\n\n const buildResolver = (arg: ArgumentTypeDescription): ArgumentResolver => {\n let validity: Uint8Array | null = null;\n if (arg.validityBuffer !== undefined) {\n validity = ptrToUint8Array(mod, ptrs[arg.validityBuffer] as number, desc.rows);\n }\n switch (arg.physicalType) {\n case 'VARCHAR': {\n if (arg.dataBuffer === null || arg.dataBuffer === undefined) {\n throw new Error('malformed data view, expected data buffer for VARCHAR argument');\n }\n if (arg.lengthBuffer === null || arg.lengthBuffer === undefined) {\n throw new Error('malformed data view, expected data length buffer for VARCHAR argument');\n }\n const raw = ptrToArray(mod, ptrs[arg.dataBuffer] as number, arg.physicalType, desc.rows);\n const strings: (string | null)[] = [];\n const stringLengths = ptrToFloat64Array(mod, ptrs[arg.lengthBuffer] as number, desc.rows);\n for (let j = 0; j < desc.rows; ++j) {\n if (validity != null && !validity[j]) {\n strings.push(null);\n continue;\n }\n const subarray = mod.HEAPU8.subarray(\n raw[j] as number,\n (raw[j] as number) + (stringLengths[j] as number),\n );\n const str = TEXT_DECODER.decode(subarray);\n strings.push(str);\n }\n return (row: number) => strings[row];\n }\n case 'STRUCT': {\n const tmp: any = {};\n const children: ArgumentResolver[] = [];\n for (let j = 0; j < (arg.children?.length || 0); ++j) {\n const attr = arg.children![j];\n const child = buildResolver(attr);\n children.push((row: number) => {\n tmp[attr.name!] = child(row);\n });\n }\n if (validity != null) {\n return (row: number) => {\n if (!validity![row]) {\n return null;\n }\n for (const resolver of children) {\n resolver(row);\n }\n return tmp;\n };\n } else {\n return (row: number) => {\n for (const resolver of children) {\n resolver(row);\n }\n return tmp;\n };\n }\n }\n default: {\n if (arg.dataBuffer === undefined) {\n throw new Error(\n 'malformed data view, expected data buffer for argument of type: ' + arg.physicalType,\n );\n }\n const data = ptrToArray(mod, ptrs[arg.dataBuffer] as number, arg.physicalType, desc.rows);\n if (validity != null) {\n return (row: number) => (!validity![row] ? null : data[row]);\n } else {\n return (row: number) => data[row];\n }\n }\n }\n };\n\n // Translate argument data\n const argResolvers = [];\n for (let i = 0; i < desc.args.length; ++i) {\n argResolvers.push(buildResolver(desc.args[i]));\n }\n\n // Prepare result buffers\n // TODO: we probably do not want to recreate those every time\n const resultDataLen = desc.rows * getTypeSize(desc.ret.physicalType);\n const resultDataPtr = mod._malloc(resultDataLen);\n const resultData = ptrToArray(mod, resultDataPtr, desc.ret.physicalType, desc.rows);\n const resultValidityPtr = mod._malloc(desc.rows);\n const resultValidity = ptrToUint8Array(mod, resultValidityPtr, desc.rows);\n if (resultData.length == 0 || resultValidity.length == 0) {\n storeError(mod, response, \"Can't create physical arrays for result\");\n return;\n }\n let rawResultData = resultData;\n if (desc.ret.physicalType == 'VARCHAR') {\n rawResultData = new Array<string | undefined | null>(desc.rows);\n }\n\n // Call the function\n const args = [];\n for (let i = 0; i < desc.args.length; ++i) {\n args.push(null);\n }\n for (let i = 0; i < desc.rows; ++i) {\n for (let j = 0; j < desc.args.length; ++j) {\n args[j] = argResolvers[j](i);\n }\n const res = udf.func(...args);\n rawResultData[i] = res;\n resultValidity[i] = res === undefined || res === null ? 0 : 1;\n }\n\n // Encode return values\n let resultLengthsPtr = 0;\n switch (desc.ret.physicalType) {\n case 'VARCHAR': {\n // Allocate result buffers\n const resultDataUTF8 = new Array<Uint8Array>(0); // cough\n resultLengthsPtr = mod._malloc(desc.rows * getTypeSize('DOUBLE'));\n const resultLengths = ptrToFloat64Array(mod, resultLengthsPtr, desc.rows);\n\n // TODO: We need two loops to figure out the total length but maybe we can avoid the double allocation\n let totalLength = 0;\n for (let row = 0; row < desc.rows; ++row) {\n const utf8 = TEXT_ENCODER.encode((rawResultData as (string | null | undefined)[])[row] || '');\n resultDataUTF8.push(utf8);\n resultLengths[row] = utf8.length;\n totalLength += utf8.length;\n }\n\n // We malloc a buffer for the strings to live in for now\n const resultStringPtr = mod._malloc(totalLength);\n const resultStringBuf = mod.HEAPU8.subarray(resultStringPtr, resultStringPtr + totalLength);\n\n // Now copy all the strings to the new buffer back to back\n let writerOffset = 0;\n for (let row = 0; row < desc.rows; ++row) {\n resultData[row] = writerOffset;\n const resultUTF8 = resultDataUTF8[row];\n const writer = resultStringBuf.subarray(writerOffset, writerOffset + resultUTF8.length);\n writer.set(resultUTF8);\n writerOffset += resultUTF8.length;\n }\n }\n }\n\n // Need to store three pointers, data, validity and length\n const retLen = 3 * 8;\n const retPtr = mod._malloc(retLen);\n const retBuffer = ptrToFloat64Array(mod, retPtr, 3);\n retBuffer[0] = resultDataPtr;\n retBuffer[1] = resultValidityPtr;\n retBuffer[2] = resultLengthsPtr;\n\n // Pack response\n mod.HEAPF64[(response >> 3) + 0] = 0;\n mod.HEAPF64[(response >> 3) + 1] = retPtr;\n mod.HEAPF64[(response >> 3) + 2] = 0;\n } catch (e: any) {\n storeError(mod, response, e.toString());\n }\n}\n", "import { DuckDBModule } from './duckdb_module';\nimport { UDFFunction } from './udf_function';\nimport * as udf_rt from './udf_runtime';\n\n/** Wrapper for TextDecoder to support shared array buffers */\nfunction TextDecoderWrapper(): (input?: BufferSource) => string {\n const decoder = new TextDecoder();\n return (data: any) => {\n if (typeof SharedArrayBuffer !== 'undefined' && data.buffer instanceof SharedArrayBuffer) {\n data = new Uint8Array(data);\n }\n return decoder.decode(data);\n };\n}\n/** Helper to decode text */\nexport const decodeText = TextDecoderWrapper();\n\n/** Copy a buffer */\nexport function failWith(mod: DuckDBModule, msg: string): void {\n console.error(`FAIL WITH: ${msg}`);\n mod.ccall('duckdb_web_fail_with', null, ['string'], [msg]);\n}\n\n/** Copy a buffer */\nexport function copyBuffer(mod: DuckDBModule, begin: number, length: number): Uint8Array {\n const buffer = mod.HEAPU8.subarray(begin, begin + length);\n const copy = new Uint8Array(new ArrayBuffer(buffer.byteLength));\n copy.set(buffer);\n return copy;\n}\n\n/** Decode a string */\nexport function readString(mod: DuckDBModule, begin: number, length: number): string {\n return decodeText(mod.HEAPU8.subarray(begin, begin + length));\n}\n\n/** The data protocol */\nexport enum DuckDBDataProtocol {\n BUFFER = 0,\n NODE_FS = 1,\n BROWSER_FILEREADER = 2,\n BROWSER_FSACCESS = 3,\n HTTP = 4,\n S3 = 5,\n}\n\n/** File flags for opening files*/\nexport enum FileFlags {\n //! Open file with read access\n FILE_FLAGS_READ = 1 << 0,\n //! Open file with write access\n FILE_FLAGS_WRITE = 1 << 1,\n //! Use direct IO when reading/writing to the file\n FILE_FLAGS_DIRECT_IO = 1 << 2,\n //! Create file if not exists, can only be used together with WRITE\n FILE_FLAGS_FILE_CREATE = 1 << 3,\n //! Always create a new file. If a file exists, the file is truncated. Cannot be used together with CREATE.\n FILE_FLAGS_FILE_CREATE_NEW = 1 << 4,\n //! Open file in append mode\n FILE_FLAGS_APPEND = 1 << 5,\n}\n\n/** Configuration for the AWS S3 Filesystem */\nexport interface S3Config {\n region?: string;\n endpoint?: string;\n accessKeyId?: string;\n secretAccessKey?: string;\n sessionToken?: string;\n}\n\n/** An info for a file registered with DuckDB */\nexport interface DuckDBFileInfo {\n cacheEpoch: number;\n fileId: number;\n fileName: string;\n dataProtocol: DuckDBDataProtocol;\n dataUrl: string | null;\n allowFullHttpReads?: boolean;\n s3Config?: S3Config;\n}\n\n/** Global info for all files registered with DuckDB */\nexport interface DuckDBGlobalFileInfo {\n cacheEpoch: number;\n allowFullHttpReads?: boolean;\n s3Config?: S3Config;\n}\n\n/** Call a function with packed response buffer */\nexport function callSRet(\n mod: DuckDBModule,\n funcName: string,\n argTypes: Array<Emscripten.JSType>,\n args: Array<any>,\n): [number, number, number] {\n const stackPointer = mod.stackSave();\n\n // Allocate the packed response buffer\n const response = mod.stackAlloc(3 * 8);\n argTypes.unshift('number');\n args.unshift(response);\n\n // Do the call\n mod.ccall(funcName, null, argTypes, args);\n\n // Read the response\n const status = mod.HEAPF64[(response >> 3) + 0];\n const data = mod.HEAPF64[(response >> 3) + 1];\n const dataSize = mod.HEAPF64[(response >> 3) + 2];\n\n // Restore the stack\n mod.stackRestore(stackPointer);\n return [status, data, dataSize];\n}\n\n/** Drop response buffers */\nexport function dropResponseBuffers(mod: DuckDBModule): void {\n mod.ccall('duckdb_web_clear_response', null, [], []);\n}\n\n/** The duckdb runtime */\nexport interface DuckDBRuntime {\n _files?: Map<string, any>;\n _udfFunctions: Map<number, UDFFunction>;\n\n // Test a platform feature\n testPlatformFeature(mod: DuckDBModule, feature: number): boolean;\n\n // File APIs with dedicated file identifier\n getDefaultDataProtocol(mod: DuckDBModule): number;\n openFile(mod: DuckDBModule, fileId: number, flags: FileFlags): void;\n syncFile(mod: DuckDBModule, fileId: number): void;\n closeFile(mod: DuckDBModule, fileId: number): void;\n getLastFileModificationTime(mod: DuckDBModule, fileId: number): number;\n truncateFile(mod: DuckDBModule, fileId: number, newSize: number): void;\n readFile(mod: DuckDBModule, fileId: number, buffer: number, bytes: number, location: number): number;\n writeFile(mod: DuckDBModule, fileId: number, buffer: number, bytes: number, location: number): number;\n\n // File APIs with path parameter\n removeDirectory(mod: DuckDBModule, pathPtr: number, pathLen: number): void;\n checkDirectory(mod: DuckDBModule, pathPtr: number, pathLen: number): boolean;\n createDirectory(mod: DuckDBModule, pathPtr: number, pathLen: number): void;\n listDirectoryEntries(mod: DuckDBModule, pathPtr: number, pathLen: number): boolean;\n glob(mod: DuckDBModule, pathPtr: number, pathLen: number): void;\n moveFile(mod: DuckDBModule, fromPtr: number, fromLen: number, toPtr: number, toLen: number): void;\n checkFile(mod: DuckDBModule, pathPtr: number, pathLen: number): boolean;\n removeFile(mod: DuckDBModule, pathPtr: number, pathLen: number): void;\n\n // Call a scalar UDF function\n callScalarUDF(\n mod: DuckDBModule,\n response: number,\n funcId: number,\n descPtr: number,\n descSize: number,\n ptrsPtr: number,\n ptrsSize: number,\n ): void;\n}\n\nexport const DEFAULT_RUNTIME: DuckDBRuntime = {\n _udfFunctions: new Map(),\n\n testPlatformFeature: (_mod: DuckDBModule, _feature: number): boolean => false,\n getDefaultDataProtocol: (_mod: DuckDBModule): number => DuckDBDataProtocol.BUFFER,\n openFile: (_mod: DuckDBModule, _fileId: number, flags: FileFlags): void => {},\n syncFile: (_mod: DuckDBModule, _fileId: number): void => {},\n closeFile: (_mod: DuckDBModule, _fileId: number): void => {},\n getLastFileModificationTime: (_mod: DuckDBModule, _fileId: number): number => {\n return 0;\n },\n truncateFile: (_mod: DuckDBModule, _fileId: number, _newSize: number): void => {},\n readFile: (_mod: DuckDBModule, _fileId: number, _buffer: number, _bytes: number, _location: number): number => {\n return 0;\n },\n writeFile: (_mod: DuckDBModule, _fileId: number, _buffer: number, _bytes: number, _location: number): number => {\n return 0;\n },\n\n removeDirectory: (_mod: DuckDBModule, _pathPtr: number, _pathLen: number): void => {},\n checkDirectory: (_mod: DuckDBModule, _pathPtr: number, _pathLen: number): boolean => {\n return false;\n },\n createDirectory: (_mod: DuckDBModule, _pathPtr: number, _pathLen: number): void => {},\n listDirectoryEntries: (_mod: DuckDBModule, _pathPtr: number, _pathLen: number): boolean => {\n return false;\n },\n glob: (_mod: DuckDBModule, _pathPtr: number, _pathLen: number): void => {},\n moveFile: (_mod: DuckDBModule, _fromPtr: number, _fromLen: number, _toPtr: number, _toLen: number): void => {},\n checkFile: (_mod: DuckDBModule, _pathPtr: number, _pathLen: number): boolean => {\n return false;\n },\n removeFile: (_mod: DuckDBModule, _pathPtr: number, _pathLen: number): void => {},\n callScalarUDF: (\n mod: DuckDBModule,\n response: number,\n funcId: number,\n descPtr: number,\n descSize: number,\n ptrsPtr: number,\n ptrsSize: number,\n ): void => {\n udf_rt.callScalarUDF(DEFAULT_RUNTIME, mod, response, funcId, descPtr, descSize, ptrsPtr, ptrsSize);\n },\n};\n", "import { StatusCode } from '../status';\nimport { addS3Headers, getHTTPUrl } from '../utils';\n\nimport {\n callSRet,\n dropResponseBuffers,\n DuckDBDataProtocol,\n DuckDBFileInfo,\n DuckDBGlobalFileInfo,\n DuckDBRuntime,\n failWith,\n FileFlags,\n readString,\n} from './runtime';\nimport { DuckDBModule } from './duckdb_module';\nimport * as udf from './udf_runtime';\n\nexport const BROWSER_RUNTIME: DuckDBRuntime & {\n _fileInfoCache: Map<number, DuckDBFileInfo>;\n _globalFileInfo: DuckDBGlobalFileInfo | null;\n\n getFileInfo(mod: DuckDBModule, fileId: number): DuckDBFileInfo | null;\n getGlobalFileInfo(mod: DuckDBModule): DuckDBGlobalFileInfo | null;\n} = {\n _files: new Map<string, any>(),\n _fileInfoCache: new Map<number, DuckDBFileInfo>(),\n _udfFunctions: new Map(),\n _globalFileInfo: null,\n\n getFileInfo(mod: DuckDBModule, fileId: number): DuckDBFileInfo | null {\n try {\n const cached = BROWSER_RUNTIME._fileInfoCache.get(fileId);\n const [s, d, n] = callSRet(\n mod,\n 'duckdb_web_fs_get_file_info_by_id',\n ['number', 'number'],\n [fileId, cached?.cacheEpoch || 0],\n );\n if (s !== StatusCode.SUCCESS) {\n return null;\n } else if (n === 0) {\n // Epoch is up to date\n return cached!;\n }\n const infoStr = readString(mod, d, n);\n dropResponseBuffers(mod);\n const info = JSON.parse(infoStr);\n if (info == null) {\n return null;\n }\n const file = { ...info, blob: null } as DuckDBFileInfo;\n BROWSER_RUNTIME._fileInfoCache.set(fileId, file);\n return file;\n } catch (e: any) {\n console.log(e);\n return null;\n }\n },\n\n getGlobalFileInfo(mod: DuckDBModule): DuckDBGlobalFileInfo | null {\n try {\n const [s, d, n] = callSRet(\n mod,\n 'duckdb_web_get_global_file_info',\n ['number'],\n [BROWSER_RUNTIME._globalFileInfo?.cacheEpoch || 0],\n );\n if (s !== StatusCode.SUCCESS) {\n return null;\n } else if (n === 0) {\n // Epoch is up to date\n return BROWSER_RUNTIME._globalFileInfo!;\n }\n const infoStr = readString(mod, d, n);\n dropResponseBuffers(mod);\n const info = JSON.parse(infoStr);\n if (info == null) {\n return null;\n }\n BROWSER_RUNTIME._globalFileInfo = { ...info, blob: null } as DuckDBGlobalFileInfo;\n\n return BROWSER_RUNTIME._globalFileInfo;\n } catch (e: any) {\n console.log(e);\n return null;\n }\n },\n\n testPlatformFeature: (_mod: DuckDBModule, feature: number): boolean => {\n switch (feature) {\n case 1:\n return typeof BigInt64Array !== 'undefined';\n default:\n console.warn(`test for unknown feature: ${feature}`);\n return false;\n }\n },\n\n getDefaultDataProtocol(mod: DuckDBModule): number {\n return DuckDBDataProtocol.BROWSER_FILEREADER;\n },\n\n openFile: (mod: DuckDBModule, fileId: number, flags: FileFlags): number => {\n try {\n BROWSER_RUNTIME._fileInfoCache.delete(fileId);\n const file = BROWSER_RUNTIME.getFileInfo(mod, fileId);\n switch (file?.dataProtocol) {\n case DuckDBDataProtocol.HTTP:\n case DuckDBDataProtocol.S3: {\n if (flags & FileFlags.FILE_FLAGS_READ && flags & FileFlags.FILE_FLAGS_WRITE) {\n throw new Error(\n `Opening file ${file.fileName} failed: cannot open file with both read and write flags set`,\n );\n } else if (flags & FileFlags.FILE_FLAGS_APPEND) {\n throw new Error(\n `Opening file ${file.fileName} failed: appending to HTTP/S3 files is not supported`,\n );\n } else if (flags & FileFlags.FILE_FLAGS_WRITE) {\n // We send a HEAD request to try to determine if we can write to data_url\n const xhr = new XMLHttpRequest();\n if (file.dataProtocol == DuckDBDataProtocol.S3) {\n xhr.open('HEAD', getHTTPUrl(file.s3Config, file.dataUrl!), false);\n addS3Headers(xhr, file.s3Config, file.dataUrl!, 'HEAD');\n } else {\n xhr.open('HEAD', file.dataUrl!, false);\n }\n xhr.send(null);\n\n // Expect 200 for existing files that we will overwrite or 404 for non-existent files can be created\n if (xhr.status != 200 && xhr.status != 404) {\n throw new Error(\n `Opening file ${file.fileName} failed: Unexpected return status from server (${xhr.status})`,\n );\n } else if (\n xhr.status == 404 &&\n !(flags & FileFlags.FILE_FLAGS_FILE_CREATE || flags & FileFlags.FILE_FLAGS_FILE_CREATE_NEW)\n ) {\n throw new Error(\n `Opening file ${file.fileName} failed: Cannot write to non-existent file without FILE_FLAGS_FILE_CREATE or FILE_FLAGS_FILE_CREATE_NEW flag.`,\n );\n }\n // Return an empty buffer that can be used to buffer the writes to this s3/http file\n const data = mod._malloc(1);\n const src = new Uint8Array();\n mod.HEAPU8.set(src, data);\n const result = mod._malloc(2 * 8);\n mod.HEAPF64[(result >> 3) + 0] = 1;\n mod.HEAPF64[(result >> 3) + 1] = data;\n return result;\n } else if (flags != FileFlags.FILE_FLAGS_READ) {\n throw new Error(`Opening file ${file.fileName} failed: unsupported file flags: ${flags}`);\n }\n\n // Supports ranges?\n let contentLength = null;\n let error: any | null = null;\n try {\n // Send a dummy HEAD request with range protocol\n // -> good IFF status is 206 and contentLenght is present\n const xhr = new XMLHttpRequest();\n if (file.dataProtocol == DuckDBDataProtocol.S3) {\n xhr.open('HEAD', getHTTPUrl(file.s3Config, file.dataUrl!), false);\n addS3Headers(xhr, file.s3Config, file.dataUrl!, 'HEAD');\n } else {\n xhr.open('HEAD', file.dataUrl!, false);\n }\n xhr.setRequestHeader('Range', `bytes=0-`);\n xhr.send(null);\n\n // Supports range requests\n contentLength = xhr.getResponseHeader('Content-Length');\n if (contentLength !== null && xhr.status == 206) {\n const result = mod._malloc(2 * 8);\n mod.HEAPF64[(result >> 3) + 0] = +contentLength;\n mod.HEAPF64[(result >> 3) + 1] = 0;\n return result;\n }\n } catch (e: any) {\n error = e;\n console.warn(`HEAD request with range header failed: ${e}`);\n }\n\n // Try to fallback to full read?\n if (file.allowFullHttpReads) {\n if ((contentLength !== null) && (+contentLength > 1)) {\n // 2. Send a dummy GET range request querying the first byte of the file\n // -> good IFF status is 206 and contentLenght2 is 1\n // -> otherwise, iff 200 and contentLenght2 == contentLenght\n // we just downloaded the file, save it and move further\n const xhr = new XMLHttpRequest();\n if (file.dataProtocol == DuckDBDataProtocol.S3) {\n xhr.open('GET', getHTTPUrl(file.s3Config, file.dataUrl!), false);\n addS3Headers(xhr, file.s3Config, file.dataUrl!, 'GET');\n } else {\n xhr.open('GET', file.dataUrl!, false);\n }\n xhr.setRequestHeader('Range', `bytes=0-0`);\n xhr.send(null);\n const contentLength2 = xhr.getResponseHeader('Content-Length');\n\n if (xhr.status == 206 && contentLength2 !== null && +contentLength2 == 1) {\n const result = mod._malloc(2 * 8);\n mod.HEAPF64[(result >> 3) + 0] = +contentLength;\n mod.HEAPF64[(result >> 3) + 1] = 0;\n return result;\n }\n if (xhr.status == 200 && contentLength2 !== null && +contentLength2 == +contentLength) {\n console.warn(`fall back to full HTTP read for: ${file.dataUrl}`);\n const data = mod._malloc(xhr.response.byteLength);\n const src = new Uint8Array(xhr.response, 0, xhr.response.byteLength);\n mod.HEAPU8.set(src, data);\n const result = mod._malloc(2 * 8);\n mod.HEAPF64[(result >> 3) + 0] = xhr.response.byteLength;\n mod.HEAPF64[(result >> 3) + 1] = data;\n return result;\n }\n }\n console.warn(`falling back to full HTTP read for: ${file.dataUrl}`);\n // 3. Send non-range request\n const xhr = new XMLHttpRequest();\n if (file.dataProtocol == DuckDBDataProtocol.S3) {\n xhr.open('GET', getHTTPUrl(file.s3Config, file.dataUrl!), false);\n addS3Headers(xhr, file.s3Config, file.dataUrl!, 'GET');\n } else {\n xhr.open('GET', file.dataUrl!, false);\n }\n xhr.responseType = 'arraybuffer';\n xhr.send(null);\n\n // Return buffer\n if (xhr.status == 200) {\n const data = mod._malloc(xhr.response.byteLength);\n const src = new Uint8Array(xhr.response, 0, xhr.response.byteLength);\n mod.HEAPU8.set(src, data);\n const result = mod._malloc(2 * 8);\n mod.HEAPF64[(result >> 3) + 0] = xhr.response.byteLength;\n mod.HEAPF64[(result >> 3) + 1] = data;\n return result;\n }\n }\n\n // Raise error?\n if (error != null) {\n throw new Error(`Reading file ${file.fileName} failed with error: ${error}`);\n }\n return 0;\n }\n // File reader File\n case DuckDBDataProtocol.BROWSER_FILEREADER: {\n const handle = BROWSER_RUNTIME._files?.get(file.fileName);\n if (handle) {\n const result = mod._malloc(2 * 8);\n mod.HEAPF64[(result >> 3) + 0] = handle.size;\n mod.HEAPF64[(result >> 3) + 1] = 0;\n return result;\n }\n\n // Fall back to empty buffered file in the browser\n console.warn(`Buffering missing file: ${file.fileName}`);\n const result = mod._malloc(2 * 8);\n const buffer = mod._malloc(1); // malloc(0) is allowed to return a nullptr\n mod.HEAPF64[(result >> 3) + 0] = 1;\n mod.HEAPF64[(result >> 3) + 1] = buffer;\n return result;\n }\n }\n } catch (e: any) {\n // TODO (samansmink): this path causes the WASM code to hang\n console.error(e.toString());\n failWith(mod, e.toString());\n }\n return 0;\n },\n glob: (mod: DuckDBModule, pathPtr: number, pathLen: number) => {\n try {\n const path = readString(mod, pathPtr, pathLen);\n // Starts with http?\n // Try a HTTP HEAD request\n if (path.startsWith('http') || path.startsWith('s3://')) {\n // Send a dummy range request querying the first byte of the file\n const xhr = new XMLHttpRequest();\n if (path.startsWith('s3://')) {\n const globalInfo = BROWSER_RUNTIME.getGlobalFileInfo(mod);\n xhr.open('HEAD', getHTTPUrl(globalInfo?.s3Config, path), false);\n addS3Headers(xhr, globalInfo?.s3Config, path, 'HEAD');\n } else {\n xhr.open('HEAD', path!, false);\n }\n xhr.send(null);\n if (xhr.status != 200 && xhr.status !== 206) {\n // Pre-signed resources on S3 in common configurations fail on any HEAD request\n // https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/s3-example-presigned-urls.html\n // so we need (if enabled) to bump to a ranged GET\n if (!BROWSER_RUNTIME.getGlobalFileInfo(mod)?.allowFullHttpReads) {\n failWith(mod, `HEAD request failed: ${path}, with full http reads are disabled`);\n return;\n }\n const xhr2 = new XMLHttpRequest();\n if (path.startsWith('s3://')) {\n const globalInfo = BROWSER_RUNTIME.getGlobalFileInfo(mod);\n xhr2.open('GET', getHTTPUrl(globalInfo?.s3Config, path), false);\n addS3Headers(xhr2, globalInfo?.s3Config, path, 'HEAD');\n } else {\n xhr2.open('GET', path!, false);\n }\n xhr2.setRequestHeader('Range', `bytes=0-0`);\n xhr2.send(null);\n if (xhr2.status != 200 && xhr2.status !== 206) {\n failWith(mod, `HEAD and GET requests failed: ${path}`);\n return;\n }\n const contentLength = xhr2.getResponseHeader('Content-Length');\n if (contentLength && (+contentLength > 1)) {\n console.warn(`Range request for ${path} did not return a partial response: ${xhr2.status} \"${xhr2.statusText}\"`);\n }\n }\n mod.ccall('duckdb_web_fs_glob_add_path', null, ['string'], [path]);\n }\n } catch (e: any) {\n console.log(e);\n failWith(mod, e.toString());\n return 0;\n }\n },\n checkFile: (mod: DuckDBModule, pathPtr: number, pathLen: number): boolean => {\n try {\n const path = readString(mod, pathPtr, pathLen);\n // Starts with http or S3?\n // Try a HTTP HEAD request\n if (path.startsWith('http') || path.startsWith('s3://')) {\n // Send a dummy range request querying the first byte of the file\n const xhr = new XMLHttpRequest();\n if (path.startsWith('s3://')) {\n const globalInfo = BROWSER_RUNTIME.getGlobalFileInfo(mod);\n xhr.open('HEAD', getHTTPUrl(globalInfo?.s3Config, path), false);\n addS3Headers(xhr, globalInfo?.s3Config, path, 'HEAD');\n } else {\n xhr.open('HEAD', path!, false);\n }\n xhr.send(null);\n return xhr.status == 206 || xhr.status == 200;\n }\n } catch (e: any) {\n console.log(e);\n return false;\n }\n return false;\n },\n syncFile: (_mod: DuckDBModule, _fileId: number) => {},\n closeFile: (mod: DuckDBModule, fileId: number) => {\n const file = BROWSER_RUNTIME.getFileInfo(mod, fileId);\n BROWSER_RUNTIME._fileInfoCache.delete(fileId);\n switch (file?.dataProtocol) {\n case DuckDBDataProtocol.BUFFER:\n case DuckDBDataProtocol.HTTP:\n case DuckDBDataProtocol.S3:\n break;\n case DuckDBDataProtocol.NODE_FS:\n case DuckDBDataProtocol.BROWSER_FILEREADER:\n // XXX Remove from registry\n return;\n case DuckDBDataProtocol.BROWSER_FSACCESS: {\n const handle = BROWSER_RUNTIME._files?.get(file.fileName);\n if (!handle) {\n throw new Error(`No OPFS access handle registered with name: ${file.fileName}`);\n }\n return handle.flush();\n }\n }\n },\n truncateFile: (mod: DuckDBModule, fileId: number, newSize: number) => {\n const file = BROWSER_RUNTIME.getFileInfo(mod, fileId);\n switch (file?.dataProtocol) {\n case DuckDBDataProtocol.HTTP:\n failWith(mod, `Cannot truncate a http file`);\n return;\n case DuckDBDataProtocol.S3:\n failWith(mod, `Cannot truncate an s3 file`);\n return;\n case DuckDBDataProtocol.BUFFER:\n case DuckDBDataProtocol.NODE_FS:\n case DuckDBDataProtocol.BROWSER_FILEREADER:\n failWith(mod, `truncateFile not implemented`);\n return;\n case DuckDBDataProtocol.BROWSER_FSACCESS: {\n const handle = BROWSER_RUNTIME._files?.get(file.fileName);\n if (!handle) {\n throw new Error(`No OPFS access handle registered with name: ${file.fileName}`);\n }\n return handle.truncate(newSize);\n }\n }\n return 0;\n },\n readFile(mod: DuckDBModule, fileId: number, buf: number, bytes: number, location: number) {\n if (bytes == 0) {\n // Be robust to empty reads\n return 0;\n }\n try {\n const file = BROWSER_RUNTIME.getFileInfo(mod, fileId);\n switch (file?.dataProtocol) {\n // File reading from BLOB or HTTP MUST be done with range requests.\n // We have to check in OPEN if such file supports range requests and upgrade to BUFFER if not.\n case DuckDBDataProtocol.HTTP:\n case DuckDBDataProtocol.S3: {\n if (!file.dataUrl) {\n throw new Error(`Missing data URL for file ${fileId}`);\n }\n try {\n const xhr = new XMLHttpRequest();\n if (file.dataProtocol == DuckDBDataProtocol.S3) {\n xhr.open('GET', getHTTPUrl(file?.s3Config, file.dataUrl!), false);\n addS3Headers(xhr, file?.s3Config, file.dataUrl!, 'GET');\n } else {\n xhr.open('GET', file.dataUrl!, false);\n }\n xhr.responseType = 'arraybuffer';\n xhr.setRequestHeader('Range', `bytes=${location}-${location + bytes - 1}`);\n xhr.send(null);\n if (\n xhr.status == 206 /* Partial content */ ||\n (xhr.status == 200 && bytes == xhr.response.byteLength && location == 0)\n ) {\n const src = new Uint8Array(xhr.response, 0, Math.min(xhr.response.byteLength, bytes));\n mod.HEAPU8.set(src, buf);\n return src.byteLength;\n } else if (xhr.status == 200) {\n // TODO: here we are actually throwing away all non-relevant bytes, but this is still better than failing\n // proper solution would require notifying duckdb-wasm cache, while we are piggybackign on browser cache\n console.warn(`Range request for ${file.dataUrl} did not return a partial response: ${xhr.status} \"${xhr.statusText}\"`);\n const src = new Uint8Array(xhr.response, location, Math.min(xhr.response.byteLength-location, bytes));\n mod.HEAPU8.set(src, buf);\n return src.byteLength;\n } else {\n throw new Error(\n `Range request for ${file.dataUrl} did returned non-success status: ${xhr.status} \"${xhr.statusText}\"`,\n );\n }\n } catch (e) {\n console.log(e);\n throw new Error(`Range request for ${file.dataUrl} failed with error: ${e}\"`);\n }\n }\n case DuckDBDataProtocol.BROWSER_FILEREADER: {\n const handle = BROWSER_RUNTIME._files?.get(file.fileName);\n if (!handle) {\n throw new Error(`No HTML5 file registered with name: ${file.fileName}`);\n }\n const sliced = handle!.slice(location, location + bytes);\n const data = new Uint8Array(new FileReaderSync().readAsArrayBuffer(sliced));\n mod.HEAPU8.set(data, buf);\n return data.byteLength;\n }\n case DuckDBDataProtocol.BROWSER_FSACCESS: {\n const handle = BROWSER_RUNTIME._files?.get(file.fileName);\n if (!handle) {\n throw new Error(`No OPFS access handle registered with name: ${file.fileName}`);\n }\n const out = mod.HEAPU8.subarray(buf, buf + bytes);\n return handle.read(out, { at: location });\n }\n }\n return 0;\n } catch (e: any) {\n console.log(e);\n failWith(mod, e.toString());\n return 0;\n }\n },\n writeFile: (mod: DuckDBModule, fileId: number, buf: number, bytes: number, location: number) => {\n const file = BROWSER_RUNTIME.getFileInfo(mod, fileId);\n switch (file?.dataProtocol) {\n case DuckDBDataProtocol.HTTP:\n failWith(mod, 'Cannot write to HTTP file');\n return 0;\n case DuckDBDataProtocol.S3: {\n const buffer = mod.HEAPU8.subarray(buf, buf + bytes);\n const xhr = new XMLHttpRequest();\n xhr.open('PUT', getHTTPUrl(file?.s3Config, file.dataUrl!), false);\n addS3Headers(xhr, file?.s3Config, file.dataUrl!, 'PUT', '', buffer);\n xhr.send(buffer);\n if (xhr.status !== 200) {\n failWith(mod, 'Failed writing file: HTTP ' + xhr.status);\n return 0;\n }\n return bytes;\n }\n case DuckDBDataProtocol.BROWSER_FILEREADER:\n failWith(mod, 'cannot write using the html5 file reader api');\n return 0;\n case DuckDBDataProtocol.BROWSER_FSACCESS: {\n const handle = BROWSER_RUNTIME._files?.get(file.fileName);\n if (!handle) {\n throw new Error(`No OPFS access handle registered with name: ${file.fileName}`);\n }\n const input = mod.HEAPU8.subarray(buf, buf + bytes);\n return handle.write(input, { at: location });\n }\n }\n return 0;\n },\n getLastFileModificationTime: (mod: DuckDBModule, fileId: number) => {\n const file = BROWSER_RUNTIME.getFileInfo(mod, fileId);\n switch (file?.dataProtocol) {\n case DuckDBDataProtocol.BROWSER_FILEREADER: {\n const handle = BROWSER_RUNTIME._files?.get(file.fileName);\n if (!handle) {\n throw Error(`No handle available for file: ${file.fileName}`);\n }\n return 0;\n }\n\n case DuckDBDataProtocol.HTTP:\n case DuckDBDataProtocol.S3:\n return new Date().getTime();\n }\n return 0;\n },\n checkDirectory: (mod: DuckDBModule, pathPtr: number, pathLen: number) => {\n const path = readString(mod, pathPtr, pathLen);\n console.log(`checkDirectory: ${path}`);\n return false;\n },\n createDirectory: (mod: DuckDBModule, pathPtr: number, pathLen: number) => {\n const path = readString(mod, pathPtr, pathLen);\n console.log(`createDirectory: ${path}`);\n },\n removeDirectory: (mod: DuckDBModule, pathPtr: number, pathLen: number) => {\n const path = readString(mod, pathPtr, pathLen);\n console.log(`removeDirectory: ${path}`);\n },\n listDirectoryEntries: (mod: DuckDBModule, pathPtr: number, pathLen: number) => {\n const path = readString(mod, pathPtr, pathLen);\n console.log(`listDirectoryEntries: ${path}`);\n return false;\n },\n moveFile: (mod: DuckDBModule, fromPtr: number, fromLen: number, toPtr: number, toLen: number) => {\n const from = readString(mod, fromPtr, fromLen);\n const to = readString(mod, toPtr, toLen);\n const handle = BROWSER_RUNTIME._files?.get(from);\n if (handle !== undefined) {\n BROWSER_RUNTIME._files!.delete(handle);\n BROWSER_RUNTIME._files!.set(to, handle);\n }\n for (const [key, value] of BROWSER_RUNTIME._fileInfoCache?.entries() || []) {\n if (value.dataUrl == from) {\n BROWSER_RUNTIME._fileInfoCache.delete(key);\n break;\n }\n }\n return true;\n },\n removeFile: (_mod: DuckDBModule, _pathPtr: number, _pathLen: number) => {},\n callScalarUDF: (\n mod: DuckDBModule,\n response: number,\n funcId: number,\n descPtr: number,\n descSize: number,\n ptrsPtr: number,\n ptrsSize: number,\n ): void => {\n udf.callScalarUDF(BROWSER_RUNTIME, mod, response, funcId, descPtr, descSize, ptrsPtr, ptrsSize);\n },\n};\n\nexport default BROWSER_RUNTIME;\n"],
5
- "mappings": "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",
6
- "names": ["require_duckdb_coi", "__commonJSMin", "exports", "module", "DuckDB", "_scriptDir", "moduleArg", "GROWABLE_HEAP_I8", "wasmMemory", "HEAP8", "updateMemoryViews", "GROWABLE_HEAP_U8", "HEAPU8", "GROWABLE_HEAP_I16", "HEAP16", "GROWABLE_HEAP_U16", "HEAPU16", "GROWABLE_HEAP_I32", "HEAP32", "GROWABLE_HEAP_U32", "HEAPU32", "GROWABLE_HEAP_F64", "HEAPF64", "Module", "readyPromiseResolve", "readyPromiseReject", "resolve", "reject", "moduleOverrides", "arguments_", "thisProgram", "quit_", "status", "toThrow", "ENVIRONMENT_IS_WEB", "ENVIRONMENT_IS_WORKER", "ENVIRONMENT_IS_NODE", "ENVIRONMENT_IS_PTHREAD", "scriptDirectory", "locateFile", "path", "read_", "readAsync", "readBinary", "fs", "nodePath", "filename", "binary", "isFileURI", "ret", "onload", "onerror", "err", "data", "nodeWorkerThreads", "e", "url", "xhr", "defaultPrint", "defaultPrintErr", "args", "out", "wasmBinary", "noExitRuntime", "abort", "wasmModule", "ABORT", "EXITSTATUS", "assert", "condition", "text", "HEAPF32", "b", "INITIAL_MEMORY", "__ATPRERUN__", "__ATINIT__", "__ATMAIN__", "__ATPOSTRUN__", "runtimeInitialized", "runtimeKeepaliveCounter", "keepRuntimeAlive", "preRun", "addOnPreRun", "callRuntimeCallbacks", "initRuntime", "preMain", "postRun", "addOnPostRun", "cb", "addOnInit", "runDependencies", "runDependencyWatcher", "dependenciesFulfilled", "addRunDependency", "id", "removeRunDependency", "callback", "what", "___trap", "dataURIPrefix", "isDataURI", "wasmBinaryFile", "getBinarySync", "file", "getBinaryPromise", "binaryFile", "response", "instantiateArrayBuffer", "imports", "receiver", "instance", "reason", "instantiateAsync", "result", "createWasm", "info", "wasmImports", "receiveInstance", "wasmExports", "applySignatureConversions", "registerTLSInit", "wasmTable", "receiveInstantiationResult", "tempDouble", "tempI64", "ExitStatus", "terminateWorker", "worker", "killThread", "pthread_ptr", "PThread", "__emscripten_thread_free_data", "cancelThread", "cleanupThread", "zeroMemory", "address", "size", "spawnThread", "threadParams", "msg", "UTF8Decoder", "UTF8ArrayToString", "heapOrArray", "idx", "maxBytesToRead", "endIdx", "endPtr", "str", "u0", "u1", "u2", "ch", "UTF8ToString", "ptr", "SYSCALLS", "_proc_exit", "code", "proxyToMainThread", "exitJS", "implicit", "exitOnMainThread", "_exit", "handleException", "pthreadPoolSize", "f", "onFinishedLoading", "d", "cmd", "_pthread_self", "targetWorker", "checkMailbox", "message", "handlers", "knownHandlers", "handler", "onMaybeReady", "pthreadMainJs", "callbacks", "establishStackSpace", "stackHigh", "stackSize", "stackLow", "_emscripten_stack_set_limits", "stackRestore", "returnCode", "wasmTableMirror", "getWasmTableEntry", "funcPtr", "func", "invokeEntryPoint", "arg", "finish", "__emscripten_thread_exit", "tlsInitFunc", "convertI32PairToI53Checked", "lo", "hi", "___emscripten_init_main_thread_js", "tb", "__emscripten_thread_init", "___emscripten_thread_cleanup", "thread", "pthreadCreateProxied", "attr", "startRoutine", "___pthread_create_js", "transferList", "error", "___syscall__newselect", "nfds", "readfds", "writefds", "exceptfds", "timeout", "total", "srcReadLow", "srcReadHigh", "srcWriteLow", "srcWriteHigh", "srcExceptLow", "srcExceptHigh", "dstReadLow", "dstReadHigh", "dstWriteLow", "dstWriteHigh", "dstExceptLow", "dstExceptHigh", "allLow", "allHigh", "check", "fd", "low", "high", "val", "mask", "stream", "flags", "timeoutInMillis", "tv_sec", "tv_usec", "SOCKFS", "FS", "getSocketFromFD", "socket", "inetNtop4", "addr", "inetNtop6", "ints", "word", "longest", "lastzero", "zstart", "len", "i", "parts", "hasipv4", "v4part", "_ntohs", "readSockaddr", "sa", "salen", "family", "port", "inetPton4", "tmp", "jstoi_q", "inetPton6", "words", "w", "offset", "z", "valid6regx", "_htons", "DNS", "name", "res", "getSocketAddress", "addrp", "addrlen", "allowNull", "___syscall_bind", "d1", "d2", "d3", "sock", "___syscall_connect", "___syscall_faccessat", "dirfd", "amode", "___syscall_fcntl64", "varargs", "___syscall_fstat64", "buf", "___syscall_ftruncate64", "length_low", "length_high", "length", "stringToUTF8Array", "heap", "outIdx", "maxBytesToWrite", "startIdx", "u", "stringToUTF8", "outPtr", "___syscall_getdents64", "dirp", "count", "writeSockaddr", "___syscall_getpeername", "errno", "___syscall_getsockopt", "level", "optname", "optval", "optlen", "___syscall_ioctl", "op", "___syscall_lstat64", "___syscall_mkdirat", "mode", "___syscall_newfstatat", "___syscall_openat", "___syscall_recvfrom", "___syscall_renameat", "olddirfd", "oldpath", "newdirfd", "newpath", "___syscall_rmdir", "___syscall_sendto", "addr_len", "___syscall_socket", "domain", "type", "protocol", "___syscall_stat64", "___syscall_unlinkat", "nowIsMonotonic", "__emscripten_get_now_is_monotonic", "maybeExit", "callUserCallback", "__emscripten_thread_mailbox_await", "wait", "waitingAsync", "__emscripten_check_mailbox", "__emscripten_notify_mailbox_postmessage", "targetThreadId", "currThreadId", "mainThreadId", "withStackSave", "stack", "stackSave", "index", "sync", "numCallArgs", "outerArgs", "serializedNumCallArgs", "stackAlloc", "__emscripten_run_on_main_thread_js", "proxiedJSCallArgs", "__emscripten_receive_on_main_thread_js", "callingThread", "proxiedFunctionTable", "rtn", "__emscripten_thread_set_strongref", "_abort", "_duckdb_web_fs_directory_create", "pathLen", "_duckdb_web_fs_directory_exists", "_duckdb_web_fs_directory_list_files", "_duckdb_web_fs_directory_remove", "_duckdb_web_fs_file_close", "fileId", "_duckdb_web_fs_file_exists", "_duckdb_web_fs_file_get_last_modified_time", "_duckdb_web_fs_file_move", "from", "fromLen", "to", "toLen", "_duckdb_web_fs_file_open", "_duckdb_web_fs_file_read", "location", "_duckdb_web_fs_file_truncate", "newSize", "_duckdb_web_fs_file_write", "_duckdb_web_fs_get_default_data_protocol", "_duckdb_web_fs_glob", "_duckdb_web_test_platform_feature", "feature", "_duckdb_web_udf_scalar_call", "funcId", "descPtr", "descSize", "ptrsPtr", "ptrsSize", "warnOnce", "_emscripten_check_blocking_allowed", "_emscripten_date_now", "runtimeKeepalivePush", "_emscripten_exit_with_live_runtime", "getHeapMax", "_emscripten_get_heap_max", "_emscripten_get_now", "_emscripten_num_logical_cores", "growMemory", "pages", "_emscripten_resize_heap", "requestedSize", "oldSize", "maxHeapSize", "alignUp", "x", "multiple", "cutDown", "overGrownHeapSize", "replacement", "ENV", "getExecutableName", "getEnvStrings", "lang", "env", "strings", "stringToAscii", "buffer", "_environ_get", "__environ", "environ_buf", "bufSize", "string", "_environ_sizes_get", "penviron_count", "penviron_buf_size", "_fd_close", "_fd_fdstat_get", "pbuf", "rightsBase", "rightsInheriting", "_fd_pread", "iov", "iovcnt", "offset_low", "offset_high", "pnum", "_fd_pwrite", "_fd_read", "_fd_seek", "whence", "newOffset", "_fd_sync", "printCharBuffers", "printChar", "curr", "_fd_write", "num", "j", "_getaddrinfo", "node", "service", "hint", "proto", "ai", "allocaddrinfo", "canon", "_malloc", "_htonl", "initRandomFill", "view", "crypto_module", "randomFillSync", "randomBytes", "randomFill", "_getentropy", "_getnameinfo", "nodelen", "serv", "servlen", "overflowed", "lookup", "numBytesWrittenExclNull", "isLeapYear", "year", "arraySum", "array", "sum", "MONTH_DAYS_LEAP", "MONTH_DAYS_REGULAR", "addDays", "date", "days", "newDate", "leap", "currentMonth", "daysInCurrentMonth", "lengthBytesUTF8", "c", "intArrayFromString", "stringy", "dontAddNull", "u8array", "numBytesWritten", "writeArrayToMemory", "_strftime", "s", "maxsize", "format", "tm", "tm_zone", "pattern", "EXPANSION_RULES_1", "rule", "WEEKDAYS", "MONTHS", "leadingSomething", "value", "digits", "character", "leadingNulls", "compareByDay", "date1", "date2", "sgn", "compare", "getFirstWeekStartDate", "janFourth", "getWeekBasedYear", "thisDate", "janFourthThisYear", "janFourthNextYear", "firstWeekStartThisYear", "firstWeekStartNextYear", "EXPANSION_RULES_2", "twelveHour", "jan1", "dec31", "off", "ahead", "bytes", "_strftime_l", "loc", "getCFunc", "ident", "stringToUTF8OnStack", "ccall", "returnType", "argTypes", "opts", "toC", "arr", "convertReturnValue", "cArgs", "converter", "onDone", "___wasm_call_ctors", "_main", "a0", "a1", "_duckdb_web_fs_glob_add_path", "_duckdb_web_clear_response", "_duckdb_web_fail_with", "_duckdb_web_reset", "_duckdb_web_connect", "_duckdb_web_disconnect", "_duckdb_web_flush_files", "_duckdb_web_flush_file", "_duckdb_web_open", "_duckdb_web_get_global_file_info", "_duckdb_web_collect_file_stats", "a2", "_duckdb_web_export_file_stats", "_duckdb_web_fs_drop_file", "_duckdb_web_fs_drop_files", "_duckdb_web_fs_glob_file_infos", "_duckdb_web_fs_get_file_info_by_id", "_duckdb_web_fs_get_file_info_by_name", "_duckdb_web_fs_register_file_url", "a3", "a4", "_duckdb_web_fs_register_file_buffer", "_duckdb_web_copy_file_to_buffer", "_duckdb_web_copy_file_to_path", "_duckdb_web_get_version", "_duckdb_web_get_feature_flags", "_duckdb_web_tokenize", "_duckdb_web_udf_scalar_create", "_duckdb_web_prepared_create", "_duckdb_web_prepared_close", "_duckdb_web_prepared_run", "_duckdb_web_prepared_send", "_duckdb_web_query_run", "_duckdb_web_pending_query_start", "_duckdb_web_pending_query_poll", "_duckdb_web_pending_query_cancel", "_duckdb_web_query_fetch_results", "_duckdb_web_get_tablenames", "_duckdb_web_insert_arrow_from_ipc_stream", "_duckdb_web_insert_csv_from_path", "_duckdb_web_insert_json_from_path", "__emscripten_tls_init", "___errno_location", "a5", "__emscripten_thread_crashed", "_emscripten_main_runtime_thread_id", "_emscripten_main_thread_process_queued_calls", "_free", "makeWrapper_p", "makeWrapper_pp", "calledRun", "runCaller", "run", "callMain", "entryFunction", "argc", "argv", "doRun", "shouldRunNow", "require_sha256", "__commonJSMin", "obj", "outputType", "is224", "message", "method", "i", "type", "key", "sharedMemory", "notString", "code", "index", "length", "blocks", "a", "b", "c", "d", "e", "f", "g", "h", "j", "s0", "s1", "maj", "t1", "t2", "ch", "ab", "da", "cd", "bc", "h0", "h1", "h2", "h3", "h4", "h5", "h6", "h7", "hex", "arr", "buffer", "dataView", "bytes", "oKeyPad", "iKeyPad", "innerHash", "Module", "ENVIRONMENT_IS_NODE", "nodeWorkerThreads", "parentPort", "data", "onmessage", "fs", "__require", "f", "msg", "initializedJS", "threadPrintErr", "text", "threadAlert", "err", "info", "receiveInstance", "module", "instance", "e", "handleMessage", "messageQueue", "handler", "args", "objectUrl", "ex", "getModule", "setModule", "m", "import_duckdb_coi", "import_js_sha256", "getHTTPHost", "config", "url", "bucket", "_a", "httpHost", "offset", "getS3Params", "method", "_b", "_c", "_d", "parsedS3Url", "parseS3Url", "path", "isPathStyleAccess", "uriEncode", "input", "encode_slash", "hexDigit", "result", "i", "ch", "createS3Headers", "params", "payloadParams", "payloadHash", "res", "signedHeaders", "canonicalRequest", "canonicalRequestHashStr", "stringToSign", "signKey", "kDate", "kRegion", "kService", "signingKey", "signature", "createS3HeadersFromS3Config", "contentType", "payload", "addS3Headers", "xhr", "value", "header", "slashPos", "getHTTPUrl", "parsedUrl", "TEXT_ENCODER", "TEXT_DECODER", "storeError", "mod", "response", "message", "msgBuffer", "heapAddr", "heapArray", "getTypeSize", "ptype", "ptrToArray", "ptr", "n", "heap", "ptrToUint8Array", "ptrToFloat64Array", "callScalarUDF", "runtime", "funcId", "descPtr", "descSize", "ptrsPtr", "ptrsSize", "udf", "rawDesc", "desc", "ptrs", "buildResolver", "arg", "_a", "validity", "raw", "strings", "stringLengths", "j", "subarray", "str", "row", "tmp", "children", "attr", "child", "resolver", "data", "argResolvers", "i", "resultDataLen", "resultDataPtr", "resultData", "resultValidityPtr", "resultValidity", "rawResultData", "args", "res", "resultLengthsPtr", "resultDataUTF8", "resultLengths", "totalLength", "utf8", "resultStringPtr", "resultStringBuf", "writerOffset", "resultUTF8", "retLen", "retPtr", "retBuffer", "e", "TextDecoderWrapper", "decoder", "data", "decodeText", "failWith", "mod", "msg", "readString", "mod", "begin", "length", "decodeText", "callSRet", "mod", "funcName", "argTypes", "args", "stackPointer", "response", "status", "data", "dataSize", "dropResponseBuffers", "BROWSER_RUNTIME", "mod", "fileId", "cached", "s", "d", "n", "callSRet", "infoStr", "readString", "dropResponseBuffers", "info", "file", "e", "_a", "_mod", "feature", "flags", "xhr", "getHTTPUrl", "addS3Headers", "data", "src", "result", "contentLength", "error", "contentLength2", "handle", "buffer", "failWith", "pathPtr", "pathLen", "path", "globalInfo", "xhr2", "_fileId", "newSize", "buf", "bytes", "location", "_b", "sliced", "out", "input", "fromPtr", "fromLen", "toPtr", "toLen", "from", "to", "key", "value", "_pathPtr", "_pathLen", "response", "funcId", "descPtr", "descSize", "ptrsPtr", "ptrsSize", "callScalarUDF", "func", "BROWSER_RUNTIME", "e", "m", "getModule", "DuckDB", "instance", "setModule", "key", "onmessage"]
4
+ "sourcesContent": ["\nvar DuckDB = (() => {\n var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined;\n if (typeof __filename !== 'undefined') _scriptDir = _scriptDir || __filename;\n return (\nfunction(moduleArg = {}) {\n\nfunction GROWABLE_HEAP_I8(){if(wasmMemory.buffer!=HEAP8.buffer){updateMemoryViews()}return HEAP8}function GROWABLE_HEAP_U8(){if(wasmMemory.buffer!=HEAP8.buffer){updateMemoryViews()}return HEAPU8}function GROWABLE_HEAP_I16(){if(wasmMemory.buffer!=HEAP8.buffer){updateMemoryViews()}return HEAP16}function GROWABLE_HEAP_U16(){if(wasmMemory.buffer!=HEAP8.buffer){updateMemoryViews()}return HEAPU16}function GROWABLE_HEAP_I32(){if(wasmMemory.buffer!=HEAP8.buffer){updateMemoryViews()}return HEAP32}function GROWABLE_HEAP_U32(){if(wasmMemory.buffer!=HEAP8.buffer){updateMemoryViews()}return HEAPU32}function GROWABLE_HEAP_F64(){if(wasmMemory.buffer!=HEAP8.buffer){updateMemoryViews()}return HEAPF64}var Module=moduleArg;var readyPromiseResolve,readyPromiseReject;Module[\"ready\"]=new Promise((resolve,reject)=>{readyPromiseResolve=resolve;readyPromiseReject=reject});var moduleOverrides=Object.assign({},Module);var arguments_=[];var thisProgram=\"./this.program\";var quit_=(status,toThrow)=>{throw toThrow};var ENVIRONMENT_IS_WEB=typeof window==\"object\";var ENVIRONMENT_IS_WORKER=typeof importScripts==\"function\";var ENVIRONMENT_IS_NODE=typeof process==\"object\"&&typeof process.versions==\"object\"&&typeof process.versions.node==\"string\";var ENVIRONMENT_IS_PTHREAD=Module[\"ENVIRONMENT_IS_PTHREAD\"]||false;var scriptDirectory=\"\";function locateFile(path){if(Module[\"locateFile\"]){return Module[\"locateFile\"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary;if(ENVIRONMENT_IS_NODE){var fs=require(\"fs\");var nodePath=require(\"path\");if(ENVIRONMENT_IS_WORKER){scriptDirectory=nodePath.dirname(scriptDirectory)+\"/\"}else{scriptDirectory=__dirname+\"/\"}read_=(filename,binary)=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);return fs.readFileSync(filename,binary?undefined:\"utf8\")};readBinary=filename=>{var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}return ret};readAsync=(filename,onload,onerror,binary=true)=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);fs.readFile(filename,binary?undefined:\"utf8\",(err,data)=>{if(err)onerror(err);else onload(binary?data.buffer:data)})};if(!Module[\"thisProgram\"]&&process.argv.length>1){thisProgram=process.argv[1].replace(/\\\\/g,\"/\")}arguments_=process.argv.slice(2);quit_=(status,toThrow)=>{process.exitCode=status;throw toThrow};Module[\"inspect\"]=()=>\"[Emscripten Module object]\";let nodeWorkerThreads;try{nodeWorkerThreads=require(\"worker_threads\")}catch(e){console.error('The \"worker_threads\" module is not supported in this node.js build - perhaps a newer version is needed?');throw e}global.Worker=nodeWorkerThreads.Worker}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!=\"undefined\"&&document.currentScript){scriptDirectory=document.currentScript.src}if(_scriptDir){scriptDirectory=_scriptDir}if(scriptDirectory.indexOf(\"blob:\")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,\"\").lastIndexOf(\"/\")+1)}else{scriptDirectory=\"\"}if(!ENVIRONMENT_IS_NODE){read_=url=>{var xhr=new XMLHttpRequest;xhr.open(\"GET\",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=url=>{var xhr=new XMLHttpRequest;xhr.open(\"GET\",url,false);xhr.responseType=\"arraybuffer\";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=(url,onload,onerror)=>{var xhr=new XMLHttpRequest;xhr.open(\"GET\",url,true);xhr.responseType=\"arraybuffer\";xhr.onload=()=>{if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}}else{}if(ENVIRONMENT_IS_NODE){if(typeof performance==\"undefined\"){global.performance=require(\"perf_hooks\").performance}}var defaultPrint=console.log.bind(console);var defaultPrintErr=console.error.bind(console);if(ENVIRONMENT_IS_NODE){defaultPrint=(...args)=>fs.writeSync(1,args.join(\" \")+\"\\n\");defaultPrintErr=(...args)=>fs.writeSync(2,args.join(\" \")+\"\\n\")}var out=Module[\"print\"]||defaultPrint;var err=Module[\"printErr\"]||defaultPrintErr;Object.assign(Module,moduleOverrides);moduleOverrides=null;if(Module[\"arguments\"])arguments_=Module[\"arguments\"];if(Module[\"thisProgram\"])thisProgram=Module[\"thisProgram\"];if(Module[\"quit\"])quit_=Module[\"quit\"];var wasmBinary;if(Module[\"wasmBinary\"])wasmBinary=Module[\"wasmBinary\"];if(typeof WebAssembly!=\"object\"){abort(\"no native wasm support detected\")}var wasmMemory;var wasmModule;var ABORT=false;var EXITSTATUS;function assert(condition,text){if(!condition){abort(text)}}var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateMemoryViews(){var b=wasmMemory.buffer;Module[\"HEAP8\"]=HEAP8=new Int8Array(b);Module[\"HEAP16\"]=HEAP16=new Int16Array(b);Module[\"HEAPU8\"]=HEAPU8=new Uint8Array(b);Module[\"HEAPU16\"]=HEAPU16=new Uint16Array(b);Module[\"HEAP32\"]=HEAP32=new Int32Array(b);Module[\"HEAPU32\"]=HEAPU32=new Uint32Array(b);Module[\"HEAPF32\"]=HEAPF32=new Float32Array(b);Module[\"HEAPF64\"]=HEAPF64=new Float64Array(b)}var INITIAL_MEMORY=Module[\"INITIAL_MEMORY\"]||16777216;assert(INITIAL_MEMORY>=65536,\"INITIAL_MEMORY should be larger than STACK_SIZE, was \"+INITIAL_MEMORY+\"! (STACK_SIZE=\"+65536+\")\");if(ENVIRONMENT_IS_PTHREAD){wasmMemory=Module[\"wasmMemory\"]}else{if(Module[\"wasmMemory\"]){wasmMemory=Module[\"wasmMemory\"]}else{wasmMemory=new WebAssembly.Memory({\"initial\":INITIAL_MEMORY/65536,\"maximum\":4294967296/65536,\"shared\":true});if(!(wasmMemory.buffer instanceof SharedArrayBuffer)){err(\"requested a shared WebAssembly.Memory but the returned buffer is not a SharedArrayBuffer, indicating that while the browser has SharedArrayBuffer it does not have WebAssembly threads support - you may need to set a flag\");if(ENVIRONMENT_IS_NODE){err(\"(on node you may need: --experimental-wasm-threads --experimental-wasm-bulk-memory and/or recent version)\")}throw Error(\"bad memory\")}}}updateMemoryViews();INITIAL_MEMORY=wasmMemory.buffer.byteLength;var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;function preRun(){if(Module[\"preRun\"]){if(typeof Module[\"preRun\"]==\"function\")Module[\"preRun\"]=[Module[\"preRun\"]];while(Module[\"preRun\"].length){addOnPreRun(Module[\"preRun\"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;if(ENVIRONMENT_IS_PTHREAD)return;callRuntimeCallbacks(__ATINIT__)}function preMain(){if(ENVIRONMENT_IS_PTHREAD)return;callRuntimeCallbacks(__ATMAIN__)}function postRun(){if(ENVIRONMENT_IS_PTHREAD)return;if(Module[\"postRun\"]){if(typeof Module[\"postRun\"]==\"function\")Module[\"postRun\"]=[Module[\"postRun\"]];while(Module[\"postRun\"].length){addOnPostRun(Module[\"postRun\"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++;if(Module[\"monitorRunDependencies\"]){Module[\"monitorRunDependencies\"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module[\"monitorRunDependencies\"]){Module[\"monitorRunDependencies\"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}function abort(what){if(Module[\"onAbort\"]){Module[\"onAbort\"](what)}what=\"Aborted(\"+what+\")\";err(what);ABORT=true;EXITSTATUS=1;what+=\". Build with -sASSERTIONS for more info.\";if(runtimeInitialized){___trap()}var e=new WebAssembly.RuntimeError(what);readyPromiseReject(e);throw e}var dataURIPrefix=\"data:application/octet-stream;base64,\";var isDataURI=filename=>filename.startsWith(dataURIPrefix);var isFileURI=filename=>filename.startsWith(\"file://\");var wasmBinaryFile;wasmBinaryFile=\"./duckdb-coi.wasm\";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinarySync(file){if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(file)}throw\"both async and sync fetching of the wasm failed\"}function getBinaryPromise(binaryFile){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)){if(typeof fetch==\"function\"){return fetch(binaryFile,{credentials:\"same-origin\"}).then(response=>{if(!response[\"ok\"]){throw\"failed to load wasm binary file at '\"+binaryFile+\"'\"}return response[\"arrayBuffer\"]()}).catch(()=>getBinarySync(binaryFile))}}return Promise.resolve().then(()=>getBinarySync(binaryFile))}function instantiateArrayBuffer(binaryFile,imports,receiver){return getBinaryPromise(binaryFile).then(binary=>WebAssembly.instantiate(binary,imports)).then(instance=>instance).then(receiver,reason=>{err(`failed to asynchronously prepare wasm: ${reason}`);abort(reason)})}function instantiateAsync(binary,binaryFile,imports,callback){if(!binary&&typeof WebAssembly.instantiateStreaming==\"function\"&&!isDataURI(binaryFile)&&!ENVIRONMENT_IS_NODE&&typeof fetch==\"function\"){return fetch(binaryFile,{credentials:\"same-origin\"}).then(response=>{var result=WebAssembly.instantiateStreaming(response,imports);return result.then(callback,function(reason){err(`wasm streaming compile failed: ${reason}`);err(\"falling back to ArrayBuffer instantiation\");return instantiateArrayBuffer(binaryFile,imports,callback)})})}return instantiateArrayBuffer(binaryFile,imports,callback)}function createWasm(){var info={\"a\":wasmImports};function receiveInstance(instance,module){wasmExports=instance.exports;wasmExports=applySignatureConversions(wasmExports);registerTLSInit(wasmExports[\"db\"]);wasmTable=wasmExports[\"sa\"];addOnInit(wasmExports[\"qa\"]);wasmModule=module;removeRunDependency(\"wasm-instantiate\");return wasmExports}addRunDependency(\"wasm-instantiate\");function receiveInstantiationResult(result){receiveInstance(result[\"instance\"],result[\"module\"])}if(Module[\"instantiateWasm\"]){try{return Module[\"instantiateWasm\"](info,receiveInstance)}catch(e){err(`Module.instantiateWasm callback failed with error: ${e}`);readyPromiseReject(e)}}instantiateAsync(wasmBinary,wasmBinaryFile,info,receiveInstantiationResult).catch(readyPromiseReject);return{}}var tempDouble;var tempI64;function ExitStatus(status){this.name=\"ExitStatus\";this.message=`Program terminated with exit(${status})`;this.status=status}var terminateWorker=worker=>{worker.terminate();worker.onmessage=e=>{}};var killThread=pthread_ptr=>{var worker=PThread.pthreads[pthread_ptr];delete PThread.pthreads[pthread_ptr];terminateWorker(worker);__emscripten_thread_free_data(pthread_ptr);PThread.runningWorkers.splice(PThread.runningWorkers.indexOf(worker),1);worker.pthread_ptr=0};var cancelThread=pthread_ptr=>{var worker=PThread.pthreads[pthread_ptr];worker.postMessage({\"cmd\":\"cancel\"})};var cleanupThread=pthread_ptr=>{var worker=PThread.pthreads[pthread_ptr];assert(worker);PThread.returnWorkerToPool(worker)};var zeroMemory=(address,size)=>{GROWABLE_HEAP_U8().fill(0,address,address+size);return address};var spawnThread=threadParams=>{var worker=PThread.getNewWorker();if(!worker){return 6}PThread.runningWorkers.push(worker);PThread.pthreads[threadParams.pthread_ptr]=worker;worker.pthread_ptr=threadParams.pthread_ptr;var msg={\"cmd\":\"run\",\"start_routine\":threadParams.startRoutine,\"arg\":threadParams.arg,\"pthread_ptr\":threadParams.pthread_ptr};if(ENVIRONMENT_IS_NODE){worker.unref()}worker.postMessage(msg,threadParams.transferList);return 0};var runtimeKeepaliveCounter=0;var keepRuntimeAlive=()=>noExitRuntime||runtimeKeepaliveCounter>0;var UTF8Decoder=typeof TextDecoder!=\"undefined\"?new TextDecoder(\"utf8\"):undefined;var UTF8ArrayToString=(heapOrArray,idx,maxBytesToRead)=>{idx>>>=0;var endIdx=idx+maxBytesToRead;var endPtr=idx;while(heapOrArray[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&heapOrArray.buffer&&UTF8Decoder){return UTF8Decoder.decode(heapOrArray.buffer instanceof SharedArrayBuffer?heapOrArray.slice(idx,endPtr):heapOrArray.subarray(idx,endPtr))}var str=\"\";while(idx<endPtr){var u0=heapOrArray[idx++];if(!(u0&128)){str+=String.fromCharCode(u0);continue}var u1=heapOrArray[idx++]&63;if((u0&224)==192){str+=String.fromCharCode((u0&31)<<6|u1);continue}var u2=heapOrArray[idx++]&63;if((u0&240)==224){u0=(u0&15)<<12|u1<<6|u2}else{u0=(u0&7)<<18|u1<<12|u2<<6|heapOrArray[idx++]&63}if(u0<65536){str+=String.fromCharCode(u0)}else{var ch=u0-65536;str+=String.fromCharCode(55296|ch>>10,56320|ch&1023)}}return str};var UTF8ToString=(ptr,maxBytesToRead)=>{ptr>>>=0;return ptr?UTF8ArrayToString(GROWABLE_HEAP_U8(),ptr,maxBytesToRead):\"\"};var SYSCALLS={varargs:undefined,get(){var ret=GROWABLE_HEAP_I32()[+SYSCALLS.varargs>>>2>>>0];SYSCALLS.varargs+=4;return ret},getp(){return SYSCALLS.get()},getStr(ptr){var ret=UTF8ToString(ptr);return ret}};function _proc_exit(code){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(0,1,code);EXITSTATUS=code;if(!keepRuntimeAlive()){PThread.terminateAllThreads();if(Module[\"onExit\"])Module[\"onExit\"](code);ABORT=true}quit_(code,new ExitStatus(code))}var exitJS=(status,implicit)=>{EXITSTATUS=status;if(ENVIRONMENT_IS_PTHREAD){exitOnMainThread(status);throw\"unwind\"}_proc_exit(status)};var _exit=exitJS;var handleException=e=>{if(e instanceof ExitStatus||e==\"unwind\"){return EXITSTATUS}quit_(1,e)};var PThread={unusedWorkers:[],runningWorkers:[],tlsInitFunctions:[],pthreads:{},init(){if(ENVIRONMENT_IS_PTHREAD){PThread.initWorker()}else{PThread.initMainThread()}},initMainThread(){var pthreadPoolSize=4;while(pthreadPoolSize--){PThread.allocateUnusedWorker()}addOnPreRun(()=>{addRunDependency(\"loading-workers\");PThread.loadWasmModuleToAllWorkers(()=>removeRunDependency(\"loading-workers\"))})},initWorker(){noExitRuntime=false},setExitStatus:status=>{EXITSTATUS=status},terminateAllThreads__deps:[\"$terminateWorker\"],terminateAllThreads:()=>{for(var worker of PThread.runningWorkers){terminateWorker(worker)}for(var worker of PThread.unusedWorkers){terminateWorker(worker)}PThread.unusedWorkers=[];PThread.runningWorkers=[];PThread.pthreads=[]},returnWorkerToPool:worker=>{var pthread_ptr=worker.pthread_ptr;delete PThread.pthreads[pthread_ptr];PThread.unusedWorkers.push(worker);PThread.runningWorkers.splice(PThread.runningWorkers.indexOf(worker),1);worker.pthread_ptr=0;__emscripten_thread_free_data(pthread_ptr)},receiveObjectTransfer(data){},threadInitTLS(){PThread.tlsInitFunctions.forEach(f=>f())},loadWasmModuleToWorker:worker=>new Promise(onFinishedLoading=>{worker.onmessage=e=>{var d=e[\"data\"];var cmd=d[\"cmd\"];if(d[\"targetThread\"]&&d[\"targetThread\"]!=_pthread_self()){var targetWorker=PThread.pthreads[d[\"targetThread\"]];if(targetWorker){targetWorker.postMessage(d,d[\"transferList\"])}else{err(`Internal error! Worker sent a message \"${cmd}\" to target pthread ${d[\"targetThread\"]}, but that thread no longer exists!`)}return}if(cmd===\"checkMailbox\"){checkMailbox()}else if(cmd===\"spawnThread\"){spawnThread(d)}else if(cmd===\"cleanupThread\"){cleanupThread(d[\"thread\"])}else if(cmd===\"killThread\"){killThread(d[\"thread\"])}else if(cmd===\"cancelThread\"){cancelThread(d[\"thread\"])}else if(cmd===\"loaded\"){worker.loaded=true;if(ENVIRONMENT_IS_NODE&&!worker.pthread_ptr){worker.unref()}onFinishedLoading(worker)}else if(cmd===\"alert\"){alert(`Thread ${d[\"threadId\"]}: ${d[\"text\"]}`)}else if(d.target===\"setimmediate\"){worker.postMessage(d)}else if(cmd===\"callHandler\"){Module[d[\"handler\"]](...d[\"args\"])}else if(cmd){err(`worker sent an unknown command ${cmd}`)}};worker.onerror=e=>{var message=\"worker sent an error!\";err(`${message} ${e.filename}:${e.lineno}: ${e.message}`);throw e};if(ENVIRONMENT_IS_NODE){worker.on(\"message\",data=>worker.onmessage({data:data}));worker.on(\"error\",e=>worker.onerror(e))}var handlers=[];var knownHandlers=[\"onExit\",\"onAbort\",\"print\",\"printErr\"];for(var handler of knownHandlers){if(Module.hasOwnProperty(handler)){handlers.push(handler)}}worker.postMessage({\"cmd\":\"load\",\"handlers\":handlers,\"urlOrBlob\":Module[\"mainScriptUrlOrBlob\"]||_scriptDir,\"wasmMemory\":wasmMemory,\"wasmModule\":wasmModule})}),loadWasmModuleToAllWorkers(onMaybeReady){if(ENVIRONMENT_IS_PTHREAD){return onMaybeReady()}let pthreadPoolReady=Promise.all(PThread.unusedWorkers.map(PThread.loadWasmModuleToWorker));pthreadPoolReady.then(onMaybeReady)},allocateUnusedWorker(){var worker;var pthreadMainJs=locateFile(\"duckdb_wasm.worker.js\");worker=new Worker(pthreadMainJs);PThread.unusedWorkers.push(worker)},getNewWorker(){if(PThread.unusedWorkers.length==0){PThread.allocateUnusedWorker();PThread.loadWasmModuleToWorker(PThread.unusedWorkers[0])}return PThread.unusedWorkers.pop()}};Module[\"PThread\"]=PThread;var callRuntimeCallbacks=callbacks=>{while(callbacks.length>0){callbacks.shift()(Module)}};var establishStackSpace=()=>{var pthread_ptr=_pthread_self();var stackHigh=GROWABLE_HEAP_U32()[pthread_ptr+52>>>2>>>0];var stackSize=GROWABLE_HEAP_U32()[pthread_ptr+56>>>2>>>0];var stackLow=stackHigh-stackSize;_emscripten_stack_set_limits(stackHigh,stackLow);stackRestore(stackHigh)};Module[\"establishStackSpace\"]=establishStackSpace;function exitOnMainThread(returnCode){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(1,0,returnCode);_exit(returnCode)}var wasmTableMirror=[];var wasmTable;var getWasmTableEntry=funcPtr=>{var func=wasmTableMirror[funcPtr];if(!func){if(funcPtr>=wasmTableMirror.length)wasmTableMirror.length=funcPtr+1;wasmTableMirror[funcPtr]=func=wasmTable.get(funcPtr)}return func};var invokeEntryPoint=(ptr,arg)=>{var result=getWasmTableEntry(ptr)(arg);function finish(result){if(keepRuntimeAlive()){PThread.setExitStatus(result)}else{__emscripten_thread_exit(result)}}finish(result)};Module[\"invokeEntryPoint\"]=invokeEntryPoint;var noExitRuntime=Module[\"noExitRuntime\"]||true;var registerTLSInit=tlsInitFunc=>{PThread.tlsInitFunctions.push(tlsInitFunc)};var convertI32PairToI53Checked=(lo,hi)=>hi+2097152>>>0<4194305-!!lo?(lo>>>0)+hi*4294967296:NaN;function ___emscripten_init_main_thread_js(tb){tb>>>=0;__emscripten_thread_init(tb,!ENVIRONMENT_IS_WORKER,1,!ENVIRONMENT_IS_WEB,65536,false);PThread.threadInitTLS()}function ___emscripten_thread_cleanup(thread){thread>>>=0;if(!ENVIRONMENT_IS_PTHREAD)cleanupThread(thread);else postMessage({\"cmd\":\"cleanupThread\",\"thread\":thread})}function pthreadCreateProxied(pthread_ptr,attr,startRoutine,arg){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(2,1,pthread_ptr,attr,startRoutine,arg);return ___pthread_create_js(pthread_ptr,attr,startRoutine,arg)}function ___pthread_create_js(pthread_ptr,attr,startRoutine,arg){pthread_ptr>>>=0;attr>>>=0;startRoutine>>>=0;arg>>>=0;if(typeof SharedArrayBuffer==\"undefined\"){err(\"Current environment does not support SharedArrayBuffer, pthreads are not available!\");return 6}var transferList=[];var error=0;if(ENVIRONMENT_IS_PTHREAD&&(transferList.length===0||error)){return pthreadCreateProxied(pthread_ptr,attr,startRoutine,arg)}if(error)return error;var threadParams={startRoutine:startRoutine,pthread_ptr:pthread_ptr,arg:arg,transferList:transferList};if(ENVIRONMENT_IS_PTHREAD){threadParams.cmd=\"spawnThread\";postMessage(threadParams,transferList);return 0}return spawnThread(threadParams)}function ___syscall__newselect(nfds,readfds,writefds,exceptfds,timeout){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(3,1,nfds,readfds,writefds,exceptfds,timeout);readfds>>>=0;writefds>>>=0;exceptfds>>>=0;timeout>>>=0;var total=0;var srcReadLow=readfds?GROWABLE_HEAP_I32()[readfds>>>2>>>0]:0,srcReadHigh=readfds?GROWABLE_HEAP_I32()[readfds+4>>>2>>>0]:0;var srcWriteLow=writefds?GROWABLE_HEAP_I32()[writefds>>>2>>>0]:0,srcWriteHigh=writefds?GROWABLE_HEAP_I32()[writefds+4>>>2>>>0]:0;var srcExceptLow=exceptfds?GROWABLE_HEAP_I32()[exceptfds>>>2>>>0]:0,srcExceptHigh=exceptfds?GROWABLE_HEAP_I32()[exceptfds+4>>>2>>>0]:0;var dstReadLow=0,dstReadHigh=0;var dstWriteLow=0,dstWriteHigh=0;var dstExceptLow=0,dstExceptHigh=0;var allLow=(readfds?GROWABLE_HEAP_I32()[readfds>>>2>>>0]:0)|(writefds?GROWABLE_HEAP_I32()[writefds>>>2>>>0]:0)|(exceptfds?GROWABLE_HEAP_I32()[exceptfds>>>2>>>0]:0);var allHigh=(readfds?GROWABLE_HEAP_I32()[readfds+4>>>2>>>0]:0)|(writefds?GROWABLE_HEAP_I32()[writefds+4>>>2>>>0]:0)|(exceptfds?GROWABLE_HEAP_I32()[exceptfds+4>>>2>>>0]:0);var check=function(fd,low,high,val){return fd<32?low&val:high&val};for(var fd=0;fd<nfds;fd++){var mask=1<<fd%32;if(!check(fd,allLow,allHigh,mask)){continue}var stream=SYSCALLS.getStreamFromFD(fd);var flags=SYSCALLS.DEFAULT_POLLMASK;if(stream.stream_ops.poll){var timeoutInMillis=-1;if(timeout){var tv_sec=readfds?GROWABLE_HEAP_I32()[timeout>>>2>>>0]:0,tv_usec=readfds?GROWABLE_HEAP_I32()[timeout+8>>>2>>>0]:0;timeoutInMillis=(tv_sec+tv_usec/1e6)*1e3}flags=stream.stream_ops.poll(stream,timeoutInMillis)}if(flags&1&&check(fd,srcReadLow,srcReadHigh,mask)){fd<32?dstReadLow=dstReadLow|mask:dstReadHigh=dstReadHigh|mask;total++}if(flags&4&&check(fd,srcWriteLow,srcWriteHigh,mask)){fd<32?dstWriteLow=dstWriteLow|mask:dstWriteHigh=dstWriteHigh|mask;total++}if(flags&2&&check(fd,srcExceptLow,srcExceptHigh,mask)){fd<32?dstExceptLow=dstExceptLow|mask:dstExceptHigh=dstExceptHigh|mask;total++}}if(readfds){GROWABLE_HEAP_I32()[readfds>>>2>>>0]=dstReadLow;GROWABLE_HEAP_I32()[readfds+4>>>2>>>0]=dstReadHigh}if(writefds){GROWABLE_HEAP_I32()[writefds>>>2>>>0]=dstWriteLow;GROWABLE_HEAP_I32()[writefds+4>>>2>>>0]=dstWriteHigh}if(exceptfds){GROWABLE_HEAP_I32()[exceptfds>>>2>>>0]=dstExceptLow;GROWABLE_HEAP_I32()[exceptfds+4>>>2>>>0]=dstExceptHigh}return total}function SOCKFS(){abort(\"missing function: $SOCKFS\")}SOCKFS.stub=true;function FS(){abort(\"missing function: $FS\")}FS.stub=true;var getSocketFromFD=fd=>{var socket=SOCKFS.getSocket(fd);if(!socket)throw new FS.ErrnoError(8);return socket};var inetNtop4=addr=>(addr&255)+\".\"+(addr>>8&255)+\".\"+(addr>>16&255)+\".\"+(addr>>24&255);var inetNtop6=ints=>{var str=\"\";var word=0;var longest=0;var lastzero=0;var zstart=0;var len=0;var i=0;var parts=[ints[0]&65535,ints[0]>>16,ints[1]&65535,ints[1]>>16,ints[2]&65535,ints[2]>>16,ints[3]&65535,ints[3]>>16];var hasipv4=true;var v4part=\"\";for(i=0;i<5;i++){if(parts[i]!==0){hasipv4=false;break}}if(hasipv4){v4part=inetNtop4(parts[6]|parts[7]<<16);if(parts[5]===-1){str=\"::ffff:\";str+=v4part;return str}if(parts[5]===0){str=\"::\";if(v4part===\"0.0.0.0\")v4part=\"\";if(v4part===\"0.0.0.1\")v4part=\"1\";str+=v4part;return str}}for(word=0;word<8;word++){if(parts[word]===0){if(word-lastzero>1){len=0}lastzero=word;len++}if(len>longest){longest=len;zstart=word-longest+1}}for(word=0;word<8;word++){if(longest>1){if(parts[word]===0&&word>=zstart&&word<zstart+longest){if(word===zstart){str+=\":\";if(zstart===0)str+=\":\"}continue}}str+=Number(_ntohs(parts[word]&65535)).toString(16);str+=word<7?\":\":\"\"}return str};var readSockaddr=(sa,salen)=>{var family=GROWABLE_HEAP_I16()[sa>>>1>>>0];var port=_ntohs(GROWABLE_HEAP_U16()[sa+2>>>1>>>0]);var addr;switch(family){case 2:if(salen!==16){return{errno:28}}addr=GROWABLE_HEAP_I32()[sa+4>>>2>>>0];addr=inetNtop4(addr);break;case 10:if(salen!==28){return{errno:28}}addr=[GROWABLE_HEAP_I32()[sa+8>>>2>>>0],GROWABLE_HEAP_I32()[sa+12>>>2>>>0],GROWABLE_HEAP_I32()[sa+16>>>2>>>0],GROWABLE_HEAP_I32()[sa+20>>>2>>>0]];addr=inetNtop6(addr);break;default:return{errno:5}}return{family:family,addr:addr,port:port}};var inetPton4=str=>{var b=str.split(\".\");for(var i=0;i<4;i++){var tmp=Number(b[i]);if(isNaN(tmp))return null;b[i]=tmp}return(b[0]|b[1]<<8|b[2]<<16|b[3]<<24)>>>0};var jstoi_q=str=>parseInt(str);var inetPton6=str=>{var words;var w,offset,z;var valid6regx=/^((?=.*::)(?!.*::.+::)(::)?([\\dA-F]{1,4}:(:|\\b)|){5}|([\\dA-F]{1,4}:){6})((([\\dA-F]{1,4}((?!\\3)::|:\\b|$))|(?!\\2\\3)){2}|(((2[0-4]|1\\d|[1-9])?\\d|25[0-5])\\.?\\b){4})$/i;var parts=[];if(!valid6regx.test(str)){return null}if(str===\"::\"){return[0,0,0,0,0,0,0,0]}if(str.startsWith(\"::\")){str=str.replace(\"::\",\"Z:\")}else{str=str.replace(\"::\",\":Z:\")}if(str.indexOf(\".\")>0){str=str.replace(new RegExp(\"[.]\",\"g\"),\":\");words=str.split(\":\");words[words.length-4]=jstoi_q(words[words.length-4])+jstoi_q(words[words.length-3])*256;words[words.length-3]=jstoi_q(words[words.length-2])+jstoi_q(words[words.length-1])*256;words=words.slice(0,words.length-2)}else{words=str.split(\":\")}offset=0;z=0;for(w=0;w<words.length;w++){if(typeof words[w]==\"string\"){if(words[w]===\"Z\"){for(z=0;z<8-words.length+1;z++){parts[w+z]=0}offset=z-1}else{parts[w+offset]=_htons(parseInt(words[w],16))}}else{parts[w+offset]=words[w]}}return[parts[1]<<16|parts[0],parts[3]<<16|parts[2],parts[5]<<16|parts[4],parts[7]<<16|parts[6]]};var DNS={address_map:{id:1,addrs:{},names:{}},lookup_name(name){var res=inetPton4(name);if(res!==null){return name}res=inetPton6(name);if(res!==null){return name}var addr;if(DNS.address_map.addrs[name]){addr=DNS.address_map.addrs[name]}else{var id=DNS.address_map.id++;assert(id<65535,\"exceeded max address mappings of 65535\");addr=\"172.29.\"+(id&255)+\".\"+(id&65280);DNS.address_map.names[addr]=name;DNS.address_map.addrs[name]=addr}return addr},lookup_addr(addr){if(DNS.address_map.names[addr]){return DNS.address_map.names[addr]}return null}};var getSocketAddress=(addrp,addrlen,allowNull)=>{if(allowNull&&addrp===0)return null;var info=readSockaddr(addrp,addrlen);if(info.errno)throw new FS.ErrnoError(info.errno);info.addr=DNS.lookup_addr(info.addr)||info.addr;return info};function ___syscall_bind(fd,addr,addrlen,d1,d2,d3){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(4,1,fd,addr,addrlen,d1,d2,d3);addr>>>=0;addrlen>>>=0;var sock=getSocketFromFD(fd);var info=getSocketAddress(addr,addrlen);sock.sock_ops.bind(sock,info.addr,info.port);return 0}function ___syscall_connect(fd,addr,addrlen,d1,d2,d3){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(5,1,fd,addr,addrlen,d1,d2,d3);addr>>>=0;addrlen>>>=0;var sock=getSocketFromFD(fd);var info=getSocketAddress(addr,addrlen);sock.sock_ops.connect(sock,info.addr,info.port);return 0}function ___syscall_faccessat(dirfd,path,amode,flags){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(6,1,dirfd,path,amode,flags);path>>>=0}function ___syscall_fcntl64(fd,cmd,varargs){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(7,1,fd,cmd,varargs);varargs>>>=0;SYSCALLS.varargs=varargs;return 0}function ___syscall_fstat64(fd,buf){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(8,1,fd,buf);buf>>>=0}function ___syscall_ftruncate64(fd,length_low,length_high){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(9,1,fd,length_low,length_high);var length=convertI32PairToI53Checked(length_low,length_high)}var stringToUTF8Array=(str,heap,outIdx,maxBytesToWrite)=>{outIdx>>>=0;if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++>>>0]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++>>>0]=192|u>>6;heap[outIdx++>>>0]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++>>>0]=224|u>>12;heap[outIdx++>>>0]=128|u>>6&63;heap[outIdx++>>>0]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++>>>0]=240|u>>18;heap[outIdx++>>>0]=128|u>>12&63;heap[outIdx++>>>0]=128|u>>6&63;heap[outIdx++>>>0]=128|u&63}}heap[outIdx>>>0]=0;return outIdx-startIdx};var stringToUTF8=(str,outPtr,maxBytesToWrite)=>stringToUTF8Array(str,GROWABLE_HEAP_U8(),outPtr,maxBytesToWrite);function ___syscall_getdents64(fd,dirp,count){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(10,1,fd,dirp,count);dirp>>>=0;count>>>=0}var writeSockaddr=(sa,family,addr,port,addrlen)=>{switch(family){case 2:addr=inetPton4(addr);zeroMemory(sa,16);if(addrlen){GROWABLE_HEAP_I32()[addrlen>>>2>>>0]=16}GROWABLE_HEAP_I16()[sa>>>1>>>0]=family;GROWABLE_HEAP_I32()[sa+4>>>2>>>0]=addr;GROWABLE_HEAP_I16()[sa+2>>>1>>>0]=_htons(port);break;case 10:addr=inetPton6(addr);zeroMemory(sa,28);if(addrlen){GROWABLE_HEAP_I32()[addrlen>>>2>>>0]=28}GROWABLE_HEAP_I32()[sa>>>2>>>0]=family;GROWABLE_HEAP_I32()[sa+8>>>2>>>0]=addr[0];GROWABLE_HEAP_I32()[sa+12>>>2>>>0]=addr[1];GROWABLE_HEAP_I32()[sa+16>>>2>>>0]=addr[2];GROWABLE_HEAP_I32()[sa+20>>>2>>>0]=addr[3];GROWABLE_HEAP_I16()[sa+2>>>1>>>0]=_htons(port);break;default:return 5}return 0};function ___syscall_getpeername(fd,addr,addrlen,d1,d2,d3){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(11,1,fd,addr,addrlen,d1,d2,d3);addr>>>=0;addrlen>>>=0;var sock=getSocketFromFD(fd);if(!sock.daddr){return-53}var errno=writeSockaddr(addr,sock.family,DNS.lookup_name(sock.daddr),sock.dport,addrlen);return 0}function ___syscall_getsockopt(fd,level,optname,optval,optlen,d1){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(12,1,fd,level,optname,optval,optlen,d1);optval>>>=0;optlen>>>=0;var sock=getSocketFromFD(fd);if(level===1){if(optname===4){GROWABLE_HEAP_I32()[optval>>>2>>>0]=sock.error;GROWABLE_HEAP_I32()[optlen>>>2>>>0]=4;sock.error=null;return 0}}return-50}function ___syscall_ioctl(fd,op,varargs){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(13,1,fd,op,varargs);varargs>>>=0;SYSCALLS.varargs=varargs;return 0}function ___syscall_lstat64(path,buf){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(14,1,path,buf);path>>>=0;buf>>>=0}function ___syscall_mkdirat(dirfd,path,mode){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(15,1,dirfd,path,mode);path>>>=0}function ___syscall_newfstatat(dirfd,path,buf,flags){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(16,1,dirfd,path,buf,flags);path>>>=0;buf>>>=0}function ___syscall_openat(dirfd,path,flags,varargs){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(17,1,dirfd,path,flags,varargs);path>>>=0;varargs>>>=0;SYSCALLS.varargs=varargs}function ___syscall_recvfrom(fd,buf,len,flags,addr,addrlen){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(18,1,fd,buf,len,flags,addr,addrlen);buf>>>=0;len>>>=0;addr>>>=0;addrlen>>>=0;var sock=getSocketFromFD(fd);var msg=sock.sock_ops.recvmsg(sock,len);if(!msg)return 0;if(addr){var errno=writeSockaddr(addr,sock.family,DNS.lookup_name(msg.addr),msg.port,addrlen)}GROWABLE_HEAP_U8().set(msg.buffer,buf>>>0);return msg.buffer.byteLength}function ___syscall_renameat(olddirfd,oldpath,newdirfd,newpath){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(19,1,olddirfd,oldpath,newdirfd,newpath);oldpath>>>=0;newpath>>>=0}function ___syscall_rmdir(path){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(20,1,path);path>>>=0}function ___syscall_sendto(fd,message,length,flags,addr,addr_len){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(21,1,fd,message,length,flags,addr,addr_len);message>>>=0;length>>>=0;addr>>>=0;addr_len>>>=0}function ___syscall_socket(domain,type,protocol){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(22,1,domain,type,protocol)}function ___syscall_stat64(path,buf){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(23,1,path,buf);path>>>=0;buf>>>=0}function ___syscall_unlinkat(dirfd,path,flags){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(24,1,dirfd,path,flags);path>>>=0}var nowIsMonotonic=true;var __emscripten_get_now_is_monotonic=()=>nowIsMonotonic;var maybeExit=()=>{if(!keepRuntimeAlive()){try{if(ENVIRONMENT_IS_PTHREAD)__emscripten_thread_exit(EXITSTATUS);else _exit(EXITSTATUS)}catch(e){handleException(e)}}};var callUserCallback=func=>{if(ABORT){return}try{func();maybeExit()}catch(e){handleException(e)}};function __emscripten_thread_mailbox_await(pthread_ptr){pthread_ptr>>>=0;if(typeof Atomics.waitAsync===\"function\"){var wait=Atomics.waitAsync(GROWABLE_HEAP_I32(),pthread_ptr>>>2,pthread_ptr);wait.value.then(checkMailbox);var waitingAsync=pthread_ptr+128;Atomics.store(GROWABLE_HEAP_I32(),waitingAsync>>>2,1)}}Module[\"__emscripten_thread_mailbox_await\"]=__emscripten_thread_mailbox_await;var checkMailbox=()=>{var pthread_ptr=_pthread_self();if(pthread_ptr){__emscripten_thread_mailbox_await(pthread_ptr);callUserCallback(()=>__emscripten_check_mailbox())}};Module[\"checkMailbox\"]=checkMailbox;var __emscripten_notify_mailbox_postmessage=function(targetThreadId,currThreadId,mainThreadId){targetThreadId>>>=0;currThreadId>>>=0;mainThreadId>>>=0;if(targetThreadId==currThreadId){setTimeout(()=>checkMailbox())}else if(ENVIRONMENT_IS_PTHREAD){postMessage({\"targetThread\":targetThreadId,\"cmd\":\"checkMailbox\"})}else{var worker=PThread.pthreads[targetThreadId];if(!worker){return}worker.postMessage({\"cmd\":\"checkMailbox\"})}};var withStackSave=f=>{var stack=stackSave();var ret=f();stackRestore(stack);return ret};var proxyToMainThread=function(index,sync){var numCallArgs=arguments.length-2;var outerArgs=arguments;return withStackSave(()=>{var serializedNumCallArgs=numCallArgs;var args=stackAlloc(serializedNumCallArgs*8);var b=args>>>3;for(var i=0;i<numCallArgs;i++){var arg=outerArgs[2+i];GROWABLE_HEAP_F64()[b+i>>>0]=arg}return __emscripten_run_on_main_thread_js(index,serializedNumCallArgs,args,sync)})};var proxiedJSCallArgs=[];function __emscripten_receive_on_main_thread_js(index,callingThread,numCallArgs,args){callingThread>>>=0;args>>>=0;proxiedJSCallArgs.length=numCallArgs;var b=args>>>3;for(var i=0;i<numCallArgs;i++){proxiedJSCallArgs[i]=GROWABLE_HEAP_F64()[b+i>>>0]}var func=proxiedFunctionTable[index];PThread.currentProxiedOperationCallerThread=callingThread;var rtn=func.apply(null,proxiedJSCallArgs);PThread.currentProxiedOperationCallerThread=0;return rtn}function __emscripten_thread_set_strongref(thread){thread>>>=0;if(ENVIRONMENT_IS_NODE){PThread.pthreads[thread].ref()}}var _abort=()=>{abort(\"\")};function _duckdb_web_fs_directory_create(path,pathLen){return globalThis.DUCKDB_RUNTIME.createDirectory(Module,path,pathLen)}function _duckdb_web_fs_directory_exists(path,pathLen){return globalThis.DUCKDB_RUNTIME.checkDirectory(Module,path,pathLen)}function _duckdb_web_fs_directory_list_files(path,pathLen){return globalThis.DUCKDB_RUNTIME.listDirectoryEntries(Module,path,pathLen)}function _duckdb_web_fs_directory_remove(path,pathLen){return globalThis.DUCKDB_RUNTIME.removeDirectory(Module,path,pathLen)}function _duckdb_web_fs_file_close(fileId){return globalThis.DUCKDB_RUNTIME.closeFile(Module,fileId)}function _duckdb_web_fs_file_exists(path,pathLen){return globalThis.DUCKDB_RUNTIME.checkFile(Module,path,pathLen)}function _duckdb_web_fs_file_get_last_modified_time(fileId){return globalThis.DUCKDB_RUNTIME.getLastFileModificationTime(Module,fileId)}function _duckdb_web_fs_file_move(from,fromLen,to,toLen){return globalThis.DUCKDB_RUNTIME.moveFile(Module,from,fromLen,to,toLen)}function _duckdb_web_fs_file_open(fileId,flags){return globalThis.DUCKDB_RUNTIME.openFile(Module,fileId,flags)}function _duckdb_web_fs_file_read(fileId,buf,size,location){return globalThis.DUCKDB_RUNTIME.readFile(Module,fileId,buf,size,location)}function _duckdb_web_fs_file_truncate(fileId,newSize){return globalThis.DUCKDB_RUNTIME.truncateFile(Module,fileId,newSize)}function _duckdb_web_fs_file_write(fileId,buf,size,location){return globalThis.DUCKDB_RUNTIME.writeFile(Module,fileId,buf,size,location)}function _duckdb_web_fs_get_default_data_protocol(Module){return globalThis.DUCKDB_RUNTIME.getDefaultDataProtocol(Module)}function _duckdb_web_fs_glob(path,pathLen){return globalThis.DUCKDB_RUNTIME.glob(Module,path,pathLen)}function _duckdb_web_test_platform_feature(feature){return globalThis.DUCKDB_RUNTIME.testPlatformFeature(Module,feature)}function _duckdb_web_udf_scalar_call(funcId,descPtr,descSize,ptrsPtr,ptrsSize,response){return globalThis.DUCKDB_RUNTIME.callScalarUDF(Module,funcId,descPtr,descSize,ptrsPtr,ptrsSize,response)}var warnOnce=text=>{if(!warnOnce.shown)warnOnce.shown={};if(!warnOnce.shown[text]){warnOnce.shown[text]=1;if(ENVIRONMENT_IS_NODE)text=\"warning: \"+text;err(text)}};var _emscripten_check_blocking_allowed=()=>{};var _emscripten_date_now=()=>Date.now();var runtimeKeepalivePush=()=>{runtimeKeepaliveCounter+=1};var _emscripten_exit_with_live_runtime=()=>{runtimeKeepalivePush();throw\"unwind\"};var getHeapMax=()=>4294901760;function _emscripten_get_heap_max(){return getHeapMax()}var _emscripten_get_now;_emscripten_get_now=()=>performance.timeOrigin+performance.now();var _emscripten_num_logical_cores=()=>{if(ENVIRONMENT_IS_NODE)return require(\"os\").cpus().length;return navigator[\"hardwareConcurrency\"]};var growMemory=size=>{var b=wasmMemory.buffer;var pages=(size-b.byteLength+65535)/65536;try{wasmMemory.grow(pages);updateMemoryViews();return 1}catch(e){}};function _emscripten_resize_heap(requestedSize){requestedSize>>>=0;var oldSize=GROWABLE_HEAP_U8().length;if(requestedSize<=oldSize){return false}var maxHeapSize=getHeapMax();if(requestedSize>maxHeapSize){return false}var alignUp=(x,multiple)=>x+(multiple-x%multiple)%multiple;for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=growMemory(newSize);if(replacement){return true}}return false}var ENV={};var getExecutableName=()=>thisProgram||\"./this.program\";var getEnvStrings=()=>{if(!getEnvStrings.strings){var lang=(typeof navigator==\"object\"&&navigator.languages&&navigator.languages[0]||\"C\").replace(\"-\",\"_\")+\".UTF-8\";var env={\"USER\":\"web_user\",\"LOGNAME\":\"web_user\",\"PATH\":\"/\",\"PWD\":\"/\",\"HOME\":\"/home/web_user\",\"LANG\":lang,\"_\":getExecutableName()};for(var x in ENV){if(ENV[x]===undefined)delete env[x];else env[x]=ENV[x]}var strings=[];for(var x in env){strings.push(`${x}=${env[x]}`)}getEnvStrings.strings=strings}return getEnvStrings.strings};var stringToAscii=(str,buffer)=>{for(var i=0;i<str.length;++i){GROWABLE_HEAP_I8()[buffer++>>>0>>>0]=str.charCodeAt(i)}GROWABLE_HEAP_I8()[buffer>>>0>>>0]=0};var _environ_get=function(__environ,environ_buf){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(25,1,__environ,environ_buf);__environ>>>=0;environ_buf>>>=0;var bufSize=0;getEnvStrings().forEach((string,i)=>{var ptr=environ_buf+bufSize;GROWABLE_HEAP_U32()[__environ+i*4>>>2>>>0]=ptr;stringToAscii(string,ptr);bufSize+=string.length+1});return 0};var _environ_sizes_get=function(penviron_count,penviron_buf_size){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(26,1,penviron_count,penviron_buf_size);penviron_count>>>=0;penviron_buf_size>>>=0;var strings=getEnvStrings();GROWABLE_HEAP_U32()[penviron_count>>>2>>>0]=strings.length;var bufSize=0;strings.forEach(string=>bufSize+=string.length+1);GROWABLE_HEAP_U32()[penviron_buf_size>>>2>>>0]=bufSize;return 0};function _fd_close(fd){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(27,1,fd);return 52}function _fd_fdstat_get(fd,pbuf){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(28,1,fd,pbuf);pbuf>>>=0;var rightsBase=0;var rightsInheriting=0;var flags=0;{var type=2;if(fd==0){rightsBase=2}else if(fd==1||fd==2){rightsBase=64}flags=1}GROWABLE_HEAP_I8()[pbuf>>>0>>>0]=type;GROWABLE_HEAP_I16()[pbuf+2>>>1>>>0]=flags;tempI64=[rightsBase>>>0,(tempDouble=rightsBase,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],GROWABLE_HEAP_I32()[pbuf+8>>>2>>>0]=tempI64[0],GROWABLE_HEAP_I32()[pbuf+12>>>2>>>0]=tempI64[1];tempI64=[rightsInheriting>>>0,(tempDouble=rightsInheriting,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],GROWABLE_HEAP_I32()[pbuf+16>>>2>>>0]=tempI64[0],GROWABLE_HEAP_I32()[pbuf+20>>>2>>>0]=tempI64[1];return 0}function _fd_pread(fd,iov,iovcnt,offset_low,offset_high,pnum){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(29,1,fd,iov,iovcnt,offset_low,offset_high,pnum);iov>>>=0;iovcnt>>>=0;var offset=convertI32PairToI53Checked(offset_low,offset_high);pnum>>>=0;return 52}function _fd_pwrite(fd,iov,iovcnt,offset_low,offset_high,pnum){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(30,1,fd,iov,iovcnt,offset_low,offset_high,pnum);iov>>>=0;iovcnt>>>=0;var offset=convertI32PairToI53Checked(offset_low,offset_high);pnum>>>=0;return 52}function _fd_read(fd,iov,iovcnt,pnum){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(31,1,fd,iov,iovcnt,pnum);iov>>>=0;iovcnt>>>=0;pnum>>>=0;return 52}function _fd_seek(fd,offset_low,offset_high,whence,newOffset){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(32,1,fd,offset_low,offset_high,whence,newOffset);var offset=convertI32PairToI53Checked(offset_low,offset_high);newOffset>>>=0;return 70}function _fd_sync(fd){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(33,1,fd);return 52}var printCharBuffers=[null,[],[]];var printChar=(stream,curr)=>{var buffer=printCharBuffers[stream];if(curr===0||curr===10){(stream===1?out:err)(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}};function _fd_write(fd,iov,iovcnt,pnum){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(34,1,fd,iov,iovcnt,pnum);iov>>>=0;iovcnt>>>=0;pnum>>>=0;var num=0;for(var i=0;i<iovcnt;i++){var ptr=GROWABLE_HEAP_U32()[iov>>>2>>>0];var len=GROWABLE_HEAP_U32()[iov+4>>>2>>>0];iov+=8;for(var j=0;j<len;j++){printChar(fd,GROWABLE_HEAP_U8()[ptr+j>>>0])}num+=len}GROWABLE_HEAP_U32()[pnum>>>2>>>0]=num;return 0}function _getaddrinfo(node,service,hint,out){if(ENVIRONMENT_IS_PTHREAD)return proxyToMainThread(35,1,node,service,hint,out);node>>>=0;service>>>=0;hint>>>=0;out>>>=0;var addr=0;var port=0;var flags=0;var family=0;var type=0;var proto=0;var ai;function allocaddrinfo(family,type,proto,canon,addr,port){var sa,salen,ai;var errno;salen=family===10?28:16;addr=family===10?inetNtop6(addr):inetNtop4(addr);sa=_malloc(salen);errno=writeSockaddr(sa,family,addr,port);assert(!errno);ai=_malloc(32);GROWABLE_HEAP_I32()[ai+4>>>2>>>0]=family;GROWABLE_HEAP_I32()[ai+8>>>2>>>0]=type;GROWABLE_HEAP_I32()[ai+12>>>2>>>0]=proto;GROWABLE_HEAP_U32()[ai+24>>>2>>>0]=canon;GROWABLE_HEAP_U32()[ai+20>>>2>>>0]=sa;if(family===10){GROWABLE_HEAP_I32()[ai+16>>>2>>>0]=28}else{GROWABLE_HEAP_I32()[ai+16>>>2>>>0]=16}GROWABLE_HEAP_I32()[ai+28>>>2>>>0]=0;return ai}if(hint){flags=GROWABLE_HEAP_I32()[hint>>>2>>>0];family=GROWABLE_HEAP_I32()[hint+4>>>2>>>0];type=GROWABLE_HEAP_I32()[hint+8>>>2>>>0];proto=GROWABLE_HEAP_I32()[hint+12>>>2>>>0]}if(type&&!proto){proto=type===2?17:6}if(!type&&proto){type=proto===17?2:1}if(proto===0){proto=6}if(type===0){type=1}if(!node&&!service){return-2}if(flags&~(1|2|4|1024|8|16|32)){return-1}if(hint!==0&&GROWABLE_HEAP_I32()[hint>>>2>>>0]&2&&!node){return-1}if(flags&32){return-2}if(type!==0&&type!==1&&type!==2){return-7}if(family!==0&&family!==2&&family!==10){return-6}if(service){service=UTF8ToString(service);port=parseInt(service,10);if(isNaN(port)){if(flags&1024){return-2}return-8}}if(!node){if(family===0){family=2}if((flags&1)===0){if(family===2){addr=_htonl(2130706433)}else{addr=[0,0,0,1]}}ai=allocaddrinfo(family,type,proto,null,addr,port);GROWABLE_HEAP_U32()[out>>>2>>>0]=ai;return 0}node=UTF8ToString(node);addr=inetPton4(node);if(addr!==null){if(family===0||family===2){family=2}else if(family===10&&flags&8){addr=[0,0,_htonl(65535),addr];family=10}else{return-2}}else{addr=inetPton6(node);if(addr!==null){if(family===0||family===10){family=10}else{return-2}}}if(addr!=null){ai=allocaddrinfo(family,type,proto,node,addr,port);GROWABLE_HEAP_U32()[out>>>2>>>0]=ai;return 0}if(flags&4){return-2}node=DNS.lookup_name(node);addr=inetPton4(node);if(family===0){family=2}else if(family===10){addr=[0,0,_htonl(65535),addr]}ai=allocaddrinfo(family,type,proto,null,addr,port);GROWABLE_HEAP_U32()[out>>>2>>>0]=ai;return 0}var initRandomFill=()=>{if(typeof crypto==\"object\"&&typeof crypto[\"getRandomValues\"]==\"function\"){return view=>(view.set(crypto.getRandomValues(new Uint8Array(view.byteLength))),view)}else if(ENVIRONMENT_IS_NODE){try{var crypto_module=require(\"crypto\");var randomFillSync=crypto_module[\"randomFillSync\"];if(randomFillSync){return view=>crypto_module[\"randomFillSync\"](view)}var randomBytes=crypto_module[\"randomBytes\"];return view=>(view.set(randomBytes(view.byteLength)),view)}catch(e){}}abort(\"initRandomDevice\")};var randomFill=view=>(randomFill=initRandomFill())(view);function _getentropy(buffer,size){buffer>>>=0;size>>>=0;randomFill(GROWABLE_HEAP_U8().subarray(buffer>>>0,buffer+size>>>0));return 0}function _getnameinfo(sa,salen,node,nodelen,serv,servlen,flags){sa>>>=0;node>>>=0;serv>>>=0;var info=readSockaddr(sa,salen);if(info.errno){return-6}var port=info.port;var addr=info.addr;var overflowed=false;if(node&&nodelen){var lookup;if(flags&1||!(lookup=DNS.lookup_addr(addr))){if(flags&8){return-2}}else{addr=lookup}var numBytesWrittenExclNull=stringToUTF8(addr,node,nodelen);if(numBytesWrittenExclNull+1>=nodelen){overflowed=true}}if(serv&&servlen){port=\"\"+port;var numBytesWrittenExclNull=stringToUTF8(port,serv,servlen);if(numBytesWrittenExclNull+1>=servlen){overflowed=true}}if(overflowed){return-12}return 0}var isLeapYear=year=>year%4===0&&(year%100!==0||year%400===0);var arraySum=(array,index)=>{var sum=0;for(var i=0;i<=index;sum+=array[i++]){}return sum};var MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31];var MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31];var addDays=(date,days)=>{var newDate=new Date(date.getTime());while(days>0){var leap=isLeapYear(newDate.getFullYear());var currentMonth=newDate.getMonth();var daysInCurrentMonth=(leap?MONTH_DAYS_LEAP:MONTH_DAYS_REGULAR)[currentMonth];if(days>daysInCurrentMonth-newDate.getDate()){days-=daysInCurrentMonth-newDate.getDate()+1;newDate.setDate(1);if(currentMonth<11){newDate.setMonth(currentMonth+1)}else{newDate.setMonth(0);newDate.setFullYear(newDate.getFullYear()+1)}}else{newDate.setDate(newDate.getDate()+days);return newDate}}return newDate};var lengthBytesUTF8=str=>{var len=0;for(var i=0;i<str.length;++i){var c=str.charCodeAt(i);if(c<=127){len++}else if(c<=2047){len+=2}else if(c>=55296&&c<=57343){len+=4;++i}else{len+=3}}return len};function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}var writeArrayToMemory=(array,buffer)=>{GROWABLE_HEAP_I8().set(array,buffer>>>0)};function _strftime(s,maxsize,format,tm){s>>>=0;maxsize>>>=0;format>>>=0;tm>>>=0;var tm_zone=GROWABLE_HEAP_U32()[tm+40>>>2>>>0];var date={tm_sec:GROWABLE_HEAP_I32()[tm>>>2>>>0],tm_min:GROWABLE_HEAP_I32()[tm+4>>>2>>>0],tm_hour:GROWABLE_HEAP_I32()[tm+8>>>2>>>0],tm_mday:GROWABLE_HEAP_I32()[tm+12>>>2>>>0],tm_mon:GROWABLE_HEAP_I32()[tm+16>>>2>>>0],tm_year:GROWABLE_HEAP_I32()[tm+20>>>2>>>0],tm_wday:GROWABLE_HEAP_I32()[tm+24>>>2>>>0],tm_yday:GROWABLE_HEAP_I32()[tm+28>>>2>>>0],tm_isdst:GROWABLE_HEAP_I32()[tm+32>>>2>>>0],tm_gmtoff:GROWABLE_HEAP_I32()[tm+36>>>2>>>0],tm_zone:tm_zone?UTF8ToString(tm_zone):\"\"};var pattern=UTF8ToString(format);var EXPANSION_RULES_1={\"%c\":\"%a %b %d %H:%M:%S %Y\",\"%D\":\"%m/%d/%y\",\"%F\":\"%Y-%m-%d\",\"%h\":\"%b\",\"%r\":\"%I:%M:%S %p\",\"%R\":\"%H:%M\",\"%T\":\"%H:%M:%S\",\"%x\":\"%m/%d/%y\",\"%X\":\"%H:%M:%S\",\"%Ec\":\"%c\",\"%EC\":\"%C\",\"%Ex\":\"%m/%d/%y\",\"%EX\":\"%H:%M:%S\",\"%Ey\":\"%y\",\"%EY\":\"%Y\",\"%Od\":\"%d\",\"%Oe\":\"%e\",\"%OH\":\"%H\",\"%OI\":\"%I\",\"%Om\":\"%m\",\"%OM\":\"%M\",\"%OS\":\"%S\",\"%Ou\":\"%u\",\"%OU\":\"%U\",\"%OV\":\"%V\",\"%Ow\":\"%w\",\"%OW\":\"%W\",\"%Oy\":\"%y\"};for(var rule in EXPANSION_RULES_1){pattern=pattern.replace(new RegExp(rule,\"g\"),EXPANSION_RULES_1[rule])}var WEEKDAYS=[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"];var MONTHS=[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"];function leadingSomething(value,digits,character){var str=typeof value==\"number\"?value.toString():value||\"\";while(str.length<digits){str=character[0]+str}return str}function leadingNulls(value,digits){return leadingSomething(value,digits,\"0\")}function compareByDay(date1,date2){function sgn(value){return value<0?-1:value>0?1:0}var compare;if((compare=sgn(date1.getFullYear()-date2.getFullYear()))===0){if((compare=sgn(date1.getMonth()-date2.getMonth()))===0){compare=sgn(date1.getDate()-date2.getDate())}}return compare}function getFirstWeekStartDate(janFourth){switch(janFourth.getDay()){case 0:return new Date(janFourth.getFullYear()-1,11,29);case 1:return janFourth;case 2:return new Date(janFourth.getFullYear(),0,3);case 3:return new Date(janFourth.getFullYear(),0,2);case 4:return new Date(janFourth.getFullYear(),0,1);case 5:return new Date(janFourth.getFullYear()-1,11,31);case 6:return new Date(janFourth.getFullYear()-1,11,30)}}function getWeekBasedYear(date){var thisDate=addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);var janFourthThisYear=new Date(thisDate.getFullYear(),0,4);var janFourthNextYear=new Date(thisDate.getFullYear()+1,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);if(compareByDay(firstWeekStartThisYear,thisDate)<=0){if(compareByDay(firstWeekStartNextYear,thisDate)<=0){return thisDate.getFullYear()+1}return thisDate.getFullYear()}return thisDate.getFullYear()-1}var EXPANSION_RULES_2={\"%a\":date=>WEEKDAYS[date.tm_wday].substring(0,3),\"%A\":date=>WEEKDAYS[date.tm_wday],\"%b\":date=>MONTHS[date.tm_mon].substring(0,3),\"%B\":date=>MONTHS[date.tm_mon],\"%C\":date=>{var year=date.tm_year+1900;return leadingNulls(year/100|0,2)},\"%d\":date=>leadingNulls(date.tm_mday,2),\"%e\":date=>leadingSomething(date.tm_mday,2,\" \"),\"%g\":date=>getWeekBasedYear(date).toString().substring(2),\"%G\":date=>getWeekBasedYear(date),\"%H\":date=>leadingNulls(date.tm_hour,2),\"%I\":date=>{var twelveHour=date.tm_hour;if(twelveHour==0)twelveHour=12;else if(twelveHour>12)twelveHour-=12;return leadingNulls(twelveHour,2)},\"%j\":date=>leadingNulls(date.tm_mday+arraySum(isLeapYear(date.tm_year+1900)?MONTH_DAYS_LEAP:MONTH_DAYS_REGULAR,date.tm_mon-1),3),\"%m\":date=>leadingNulls(date.tm_mon+1,2),\"%M\":date=>leadingNulls(date.tm_min,2),\"%n\":()=>\"\\n\",\"%p\":date=>{if(date.tm_hour>=0&&date.tm_hour<12){return\"AM\"}return\"PM\"},\"%S\":date=>leadingNulls(date.tm_sec,2),\"%t\":()=>\"\\t\",\"%u\":date=>date.tm_wday||7,\"%U\":date=>{var days=date.tm_yday+7-date.tm_wday;return leadingNulls(Math.floor(days/7),2)},\"%V\":date=>{var val=Math.floor((date.tm_yday+7-(date.tm_wday+6)%7)/7);if((date.tm_wday+371-date.tm_yday-2)%7<=2){val++}if(!val){val=52;var dec31=(date.tm_wday+7-date.tm_yday-1)%7;if(dec31==4||dec31==5&&isLeapYear(date.tm_year%400-1)){val++}}else if(val==53){var jan1=(date.tm_wday+371-date.tm_yday)%7;if(jan1!=4&&(jan1!=3||!isLeapYear(date.tm_year)))val=1}return leadingNulls(val,2)},\"%w\":date=>date.tm_wday,\"%W\":date=>{var days=date.tm_yday+7-(date.tm_wday+6)%7;return leadingNulls(Math.floor(days/7),2)},\"%y\":date=>(date.tm_year+1900).toString().substring(2),\"%Y\":date=>date.tm_year+1900,\"%z\":date=>{var off=date.tm_gmtoff;var ahead=off>=0;off=Math.abs(off)/60;off=off/60*100+off%60;return(ahead?\"+\":\"-\")+String(\"0000\"+off).slice(-4)},\"%Z\":date=>date.tm_zone,\"%%\":()=>\"%\"};pattern=pattern.replace(/%%/g,\"\\0\\0\");for(var rule in EXPANSION_RULES_2){if(pattern.includes(rule)){pattern=pattern.replace(new RegExp(rule,\"g\"),EXPANSION_RULES_2[rule](date))}}pattern=pattern.replace(/\\0\\0/g,\"%\");var bytes=intArrayFromString(pattern,false);if(bytes.length>maxsize){return 0}writeArrayToMemory(bytes,s);return bytes.length-1}function _strftime_l(s,maxsize,format,tm,loc){s>>>=0;maxsize>>>=0;format>>>=0;tm>>>=0;loc>>>=0;return _strftime(s,maxsize,format,tm)}var getCFunc=ident=>{var func=Module[\"_\"+ident];return func};var stringToUTF8OnStack=str=>{var size=lengthBytesUTF8(str)+1;var ret=stackAlloc(size);stringToUTF8(str,ret,size);return ret};var ccall=(ident,returnType,argTypes,args,opts)=>{var toC={\"string\":str=>{var ret=0;if(str!==null&&str!==undefined&&str!==0){ret=stringToUTF8OnStack(str)}return ret},\"array\":arr=>{var ret=stackAlloc(arr.length);writeArrayToMemory(arr,ret);return ret}};function convertReturnValue(ret){if(returnType===\"string\"){return UTF8ToString(ret)}if(returnType===\"boolean\")return Boolean(ret);return ret}var func=getCFunc(ident);var cArgs=[];var stack=0;if(args){for(var i=0;i<args.length;i++){var converter=toC[argTypes[i]];if(converter){if(stack===0)stack=stackSave();cArgs[i]=converter(args[i])}else{cArgs[i]=args[i]}}}var ret=func.apply(null,cArgs);function onDone(ret){if(stack!==0)stackRestore(stack);return convertReturnValue(ret)}ret=onDone(ret);return ret};PThread.init();var proxiedFunctionTable=[_proc_exit,exitOnMainThread,pthreadCreateProxied,___syscall__newselect,___syscall_bind,___syscall_connect,___syscall_faccessat,___syscall_fcntl64,___syscall_fstat64,___syscall_ftruncate64,___syscall_getdents64,___syscall_getpeername,___syscall_getsockopt,___syscall_ioctl,___syscall_lstat64,___syscall_mkdirat,___syscall_newfstatat,___syscall_openat,___syscall_recvfrom,___syscall_renameat,___syscall_rmdir,___syscall_sendto,___syscall_socket,___syscall_stat64,___syscall_unlinkat,_environ_get,_environ_sizes_get,_fd_close,_fd_fdstat_get,_fd_pread,_fd_pwrite,_fd_read,_fd_seek,_fd_sync,_fd_write,_getaddrinfo];var wasmImports={E:___emscripten_init_main_thread_js,s:___emscripten_thread_cleanup,ga:___pthread_create_js,$:___syscall__newselect,ea:___syscall_bind,ca:___syscall_connect,X:___syscall_faccessat,b:___syscall_fcntl64,W:___syscall_fstat64,x:___syscall_ftruncate64,R:___syscall_getdents64,Z:___syscall_getpeername,_:___syscall_getsockopt,q:___syscall_ioctl,T:___syscall_lstat64,S:___syscall_mkdirat,U:___syscall_newfstatat,r:___syscall_openat,aa:___syscall_recvfrom,P:___syscall_renameat,k:___syscall_rmdir,ba:___syscall_sendto,n:___syscall_socket,V:___syscall_stat64,l:___syscall_unlinkat,oa:__emscripten_get_now_is_monotonic,da:__emscripten_notify_mailbox_postmessage,M:__emscripten_receive_on_main_thread_js,v:__emscripten_thread_mailbox_await,u:__emscripten_thread_set_strongref,e:_abort,H:_duckdb_web_fs_directory_create,I:_duckdb_web_fs_directory_exists,F:_duckdb_web_fs_directory_list_files,G:_duckdb_web_fs_directory_remove,j:_duckdb_web_fs_file_close,C:_duckdb_web_fs_file_exists,w:_duckdb_web_fs_file_get_last_modified_time,D:_duckdb_web_fs_file_move,K:_duckdb_web_fs_file_open,f:_duckdb_web_fs_file_read,J:_duckdb_web_fs_file_truncate,g:_duckdb_web_fs_file_write,L:_duckdb_web_fs_get_default_data_protocol,B:_duckdb_web_fs_glob,i:_duckdb_web_test_platform_feature,N:_duckdb_web_udf_scalar_call,m:_emscripten_check_blocking_allowed,pa:_emscripten_date_now,t:_emscripten_exit_with_live_runtime,ha:_emscripten_get_heap_max,c:_emscripten_get_now,ia:_emscripten_num_logical_cores,na:_emscripten_resize_heap,ka:_environ_get,la:_environ_sizes_get,fa:_exit,d:_fd_close,ma:_fd_fdstat_get,z:_fd_pread,y:_fd_pwrite,p:_fd_read,A:_fd_seek,Q:_fd_sync,h:_fd_write,o:_getaddrinfo,O:_getentropy,Y:_getnameinfo,a:wasmMemory||Module[\"wasmMemory\"],ja:_strftime_l};var wasmExports=createWasm();var ___wasm_call_ctors=()=>(___wasm_call_ctors=wasmExports[\"qa\"])();var _main=Module[\"_main\"]=(a0,a1)=>(_main=Module[\"_main\"]=wasmExports[\"ra\"])(a0,a1);var _duckdb_web_fs_glob_add_path=Module[\"_duckdb_web_fs_glob_add_path\"]=a0=>(_duckdb_web_fs_glob_add_path=Module[\"_duckdb_web_fs_glob_add_path\"]=wasmExports[\"ta\"])(a0);var _duckdb_web_clear_response=Module[\"_duckdb_web_clear_response\"]=()=>(_duckdb_web_clear_response=Module[\"_duckdb_web_clear_response\"]=wasmExports[\"ua\"])();var _duckdb_web_fail_with=Module[\"_duckdb_web_fail_with\"]=a0=>(_duckdb_web_fail_with=Module[\"_duckdb_web_fail_with\"]=wasmExports[\"va\"])(a0);var _duckdb_web_reset=Module[\"_duckdb_web_reset\"]=a0=>(_duckdb_web_reset=Module[\"_duckdb_web_reset\"]=wasmExports[\"wa\"])(a0);var _duckdb_web_connect=Module[\"_duckdb_web_connect\"]=()=>(_duckdb_web_connect=Module[\"_duckdb_web_connect\"]=wasmExports[\"xa\"])();var _duckdb_web_disconnect=Module[\"_duckdb_web_disconnect\"]=a0=>(_duckdb_web_disconnect=Module[\"_duckdb_web_disconnect\"]=wasmExports[\"ya\"])(a0);var _duckdb_web_flush_files=Module[\"_duckdb_web_flush_files\"]=()=>(_duckdb_web_flush_files=Module[\"_duckdb_web_flush_files\"]=wasmExports[\"za\"])();var _duckdb_web_flush_file=Module[\"_duckdb_web_flush_file\"]=a0=>(_duckdb_web_flush_file=Module[\"_duckdb_web_flush_file\"]=wasmExports[\"Aa\"])(a0);var _duckdb_web_open=Module[\"_duckdb_web_open\"]=(a0,a1)=>(_duckdb_web_open=Module[\"_duckdb_web_open\"]=wasmExports[\"Ba\"])(a0,a1);var _duckdb_web_get_global_file_info=Module[\"_duckdb_web_get_global_file_info\"]=(a0,a1)=>(_duckdb_web_get_global_file_info=Module[\"_duckdb_web_get_global_file_info\"]=wasmExports[\"Ca\"])(a0,a1);var _duckdb_web_collect_file_stats=Module[\"_duckdb_web_collect_file_stats\"]=(a0,a1,a2)=>(_duckdb_web_collect_file_stats=Module[\"_duckdb_web_collect_file_stats\"]=wasmExports[\"Da\"])(a0,a1,a2);var _duckdb_web_export_file_stats=Module[\"_duckdb_web_export_file_stats\"]=(a0,a1)=>(_duckdb_web_export_file_stats=Module[\"_duckdb_web_export_file_stats\"]=wasmExports[\"Ea\"])(a0,a1);var _duckdb_web_fs_drop_file=Module[\"_duckdb_web_fs_drop_file\"]=(a0,a1)=>(_duckdb_web_fs_drop_file=Module[\"_duckdb_web_fs_drop_file\"]=wasmExports[\"Fa\"])(a0,a1);var _duckdb_web_fs_drop_files=Module[\"_duckdb_web_fs_drop_files\"]=a0=>(_duckdb_web_fs_drop_files=Module[\"_duckdb_web_fs_drop_files\"]=wasmExports[\"Ga\"])(a0);var _duckdb_web_fs_glob_file_infos=Module[\"_duckdb_web_fs_glob_file_infos\"]=(a0,a1)=>(_duckdb_web_fs_glob_file_infos=Module[\"_duckdb_web_fs_glob_file_infos\"]=wasmExports[\"Ha\"])(a0,a1);var _duckdb_web_fs_get_file_info_by_id=Module[\"_duckdb_web_fs_get_file_info_by_id\"]=(a0,a1,a2)=>(_duckdb_web_fs_get_file_info_by_id=Module[\"_duckdb_web_fs_get_file_info_by_id\"]=wasmExports[\"Ia\"])(a0,a1,a2);var _duckdb_web_fs_get_file_info_by_name=Module[\"_duckdb_web_fs_get_file_info_by_name\"]=(a0,a1,a2)=>(_duckdb_web_fs_get_file_info_by_name=Module[\"_duckdb_web_fs_get_file_info_by_name\"]=wasmExports[\"Ja\"])(a0,a1,a2);var _duckdb_web_fs_register_file_url=Module[\"_duckdb_web_fs_register_file_url\"]=(a0,a1,a2,a3,a4)=>(_duckdb_web_fs_register_file_url=Module[\"_duckdb_web_fs_register_file_url\"]=wasmExports[\"Ka\"])(a0,a1,a2,a3,a4);var _duckdb_web_fs_register_file_buffer=Module[\"_duckdb_web_fs_register_file_buffer\"]=(a0,a1,a2,a3)=>(_duckdb_web_fs_register_file_buffer=Module[\"_duckdb_web_fs_register_file_buffer\"]=wasmExports[\"La\"])(a0,a1,a2,a3);var _duckdb_web_copy_file_to_buffer=Module[\"_duckdb_web_copy_file_to_buffer\"]=(a0,a1)=>(_duckdb_web_copy_file_to_buffer=Module[\"_duckdb_web_copy_file_to_buffer\"]=wasmExports[\"Ma\"])(a0,a1);var _duckdb_web_copy_file_to_path=Module[\"_duckdb_web_copy_file_to_path\"]=(a0,a1,a2)=>(_duckdb_web_copy_file_to_path=Module[\"_duckdb_web_copy_file_to_path\"]=wasmExports[\"Na\"])(a0,a1,a2);var _duckdb_web_get_version=Module[\"_duckdb_web_get_version\"]=a0=>(_duckdb_web_get_version=Module[\"_duckdb_web_get_version\"]=wasmExports[\"Oa\"])(a0);var _duckdb_web_get_feature_flags=Module[\"_duckdb_web_get_feature_flags\"]=()=>(_duckdb_web_get_feature_flags=Module[\"_duckdb_web_get_feature_flags\"]=wasmExports[\"Pa\"])();var _duckdb_web_tokenize=Module[\"_duckdb_web_tokenize\"]=(a0,a1)=>(_duckdb_web_tokenize=Module[\"_duckdb_web_tokenize\"]=wasmExports[\"Qa\"])(a0,a1);var _duckdb_web_udf_scalar_create=Module[\"_duckdb_web_udf_scalar_create\"]=(a0,a1,a2)=>(_duckdb_web_udf_scalar_create=Module[\"_duckdb_web_udf_scalar_create\"]=wasmExports[\"Ra\"])(a0,a1,a2);var _duckdb_web_prepared_create=Module[\"_duckdb_web_prepared_create\"]=(a0,a1,a2)=>(_duckdb_web_prepared_create=Module[\"_duckdb_web_prepared_create\"]=wasmExports[\"Sa\"])(a0,a1,a2);var _duckdb_web_prepared_close=Module[\"_duckdb_web_prepared_close\"]=(a0,a1,a2)=>(_duckdb_web_prepared_close=Module[\"_duckdb_web_prepared_close\"]=wasmExports[\"Ta\"])(a0,a1,a2);var _duckdb_web_prepared_run=Module[\"_duckdb_web_prepared_run\"]=(a0,a1,a2,a3)=>(_duckdb_web_prepared_run=Module[\"_duckdb_web_prepared_run\"]=wasmExports[\"Ua\"])(a0,a1,a2,a3);var _duckdb_web_prepared_send=Module[\"_duckdb_web_prepared_send\"]=(a0,a1,a2,a3)=>(_duckdb_web_prepared_send=Module[\"_duckdb_web_prepared_send\"]=wasmExports[\"Va\"])(a0,a1,a2,a3);var _duckdb_web_query_run=Module[\"_duckdb_web_query_run\"]=(a0,a1,a2)=>(_duckdb_web_query_run=Module[\"_duckdb_web_query_run\"]=wasmExports[\"Wa\"])(a0,a1,a2);var _duckdb_web_pending_query_start=Module[\"_duckdb_web_pending_query_start\"]=(a0,a1,a2)=>(_duckdb_web_pending_query_start=Module[\"_duckdb_web_pending_query_start\"]=wasmExports[\"Xa\"])(a0,a1,a2);var _duckdb_web_pending_query_poll=Module[\"_duckdb_web_pending_query_poll\"]=(a0,a1,a2)=>(_duckdb_web_pending_query_poll=Module[\"_duckdb_web_pending_query_poll\"]=wasmExports[\"Ya\"])(a0,a1,a2);var _duckdb_web_pending_query_cancel=Module[\"_duckdb_web_pending_query_cancel\"]=(a0,a1)=>(_duckdb_web_pending_query_cancel=Module[\"_duckdb_web_pending_query_cancel\"]=wasmExports[\"Za\"])(a0,a1);var _duckdb_web_query_fetch_results=Module[\"_duckdb_web_query_fetch_results\"]=(a0,a1)=>(_duckdb_web_query_fetch_results=Module[\"_duckdb_web_query_fetch_results\"]=wasmExports[\"_a\"])(a0,a1);var _duckdb_web_get_tablenames=Module[\"_duckdb_web_get_tablenames\"]=(a0,a1,a2)=>(_duckdb_web_get_tablenames=Module[\"_duckdb_web_get_tablenames\"]=wasmExports[\"$a\"])(a0,a1,a2);var _duckdb_web_insert_arrow_from_ipc_stream=Module[\"_duckdb_web_insert_arrow_from_ipc_stream\"]=(a0,a1,a2,a3,a4)=>(_duckdb_web_insert_arrow_from_ipc_stream=Module[\"_duckdb_web_insert_arrow_from_ipc_stream\"]=wasmExports[\"ab\"])(a0,a1,a2,a3,a4);var _duckdb_web_insert_csv_from_path=Module[\"_duckdb_web_insert_csv_from_path\"]=(a0,a1,a2,a3)=>(_duckdb_web_insert_csv_from_path=Module[\"_duckdb_web_insert_csv_from_path\"]=wasmExports[\"bb\"])(a0,a1,a2,a3);var _duckdb_web_insert_json_from_path=Module[\"_duckdb_web_insert_json_from_path\"]=(a0,a1,a2,a3)=>(_duckdb_web_insert_json_from_path=Module[\"_duckdb_web_insert_json_from_path\"]=wasmExports[\"cb\"])(a0,a1,a2,a3);var __emscripten_tls_init=Module[\"__emscripten_tls_init\"]=()=>(__emscripten_tls_init=Module[\"__emscripten_tls_init\"]=wasmExports[\"db\"])();var _pthread_self=Module[\"_pthread_self\"]=()=>(_pthread_self=Module[\"_pthread_self\"]=wasmExports[\"eb\"])();var ___errno_location=()=>(___errno_location=wasmExports[\"__errno_location\"])();var __emscripten_thread_init=Module[\"__emscripten_thread_init\"]=(a0,a1,a2,a3,a4,a5)=>(__emscripten_thread_init=Module[\"__emscripten_thread_init\"]=wasmExports[\"fb\"])(a0,a1,a2,a3,a4,a5);var __emscripten_thread_crashed=Module[\"__emscripten_thread_crashed\"]=()=>(__emscripten_thread_crashed=Module[\"__emscripten_thread_crashed\"]=wasmExports[\"gb\"])();var _htonl=a0=>(_htonl=wasmExports[\"hb\"])(a0);var _htons=a0=>(_htons=wasmExports[\"ib\"])(a0);var _emscripten_main_runtime_thread_id=()=>(_emscripten_main_runtime_thread_id=wasmExports[\"emscripten_main_runtime_thread_id\"])();var _emscripten_main_thread_process_queued_calls=()=>(_emscripten_main_thread_process_queued_calls=wasmExports[\"emscripten_main_thread_process_queued_calls\"])();var _ntohs=a0=>(_ntohs=wasmExports[\"jb\"])(a0);var __emscripten_run_on_main_thread_js=(a0,a1,a2,a3)=>(__emscripten_run_on_main_thread_js=wasmExports[\"kb\"])(a0,a1,a2,a3);var __emscripten_thread_free_data=a0=>(__emscripten_thread_free_data=wasmExports[\"lb\"])(a0);var __emscripten_thread_exit=Module[\"__emscripten_thread_exit\"]=a0=>(__emscripten_thread_exit=Module[\"__emscripten_thread_exit\"]=wasmExports[\"mb\"])(a0);var __emscripten_check_mailbox=Module[\"__emscripten_check_mailbox\"]=()=>(__emscripten_check_mailbox=Module[\"__emscripten_check_mailbox\"]=wasmExports[\"nb\"])();var _malloc=Module[\"_malloc\"]=a0=>(_malloc=Module[\"_malloc\"]=wasmExports[\"ob\"])(a0);var _free=Module[\"_free\"]=a0=>(_free=Module[\"_free\"]=wasmExports[\"pb\"])(a0);var ___trap=()=>(___trap=wasmExports[\"qb\"])();var _emscripten_stack_set_limits=(a0,a1)=>(_emscripten_stack_set_limits=wasmExports[\"rb\"])(a0,a1);var stackSave=()=>(stackSave=wasmExports[\"sb\"])();var stackRestore=a0=>(stackRestore=wasmExports[\"tb\"])(a0);var stackAlloc=a0=>(stackAlloc=wasmExports[\"ub\"])(a0);function applySignatureConversions(wasmExports){wasmExports=Object.assign({},wasmExports);var makeWrapper_p=f=>()=>f()>>>0;var makeWrapper_pp=f=>a0=>f(a0)>>>0;wasmExports[\"eb\"]=makeWrapper_p(wasmExports[\"eb\"]);wasmExports[\"__errno_location\"]=makeWrapper_p(wasmExports[\"__errno_location\"]);wasmExports[\"ob\"]=makeWrapper_pp(wasmExports[\"ob\"]);wasmExports[\"sb\"]=makeWrapper_p(wasmExports[\"sb\"]);wasmExports[\"ub\"]=makeWrapper_pp(wasmExports[\"ub\"]);return wasmExports}Module[\"wasmMemory\"]=wasmMemory;Module[\"stackAlloc\"]=stackAlloc;Module[\"stackSave\"]=stackSave;Module[\"stackRestore\"]=stackRestore;Module[\"keepRuntimeAlive\"]=keepRuntimeAlive;Module[\"ccall\"]=ccall;Module[\"ExitStatus\"]=ExitStatus;Module[\"PThread\"]=PThread;var calledRun;dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function callMain(){var entryFunction=_main;var argc=0;var argv=0;try{var ret=entryFunction(argc,argv);exitJS(ret,true);return ret}catch(e){return handleException(e)}}function run(){if(runDependencies>0){return}if(ENVIRONMENT_IS_PTHREAD){readyPromiseResolve(Module);initRuntime();startWorker(Module);return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module[\"calledRun\"]=true;if(ABORT)return;initRuntime();preMain();readyPromiseResolve(Module);if(Module[\"onRuntimeInitialized\"])Module[\"onRuntimeInitialized\"]();if(shouldRunNow)callMain();postRun()}if(Module[\"setStatus\"]){Module[\"setStatus\"](\"Running...\");setTimeout(function(){setTimeout(function(){Module[\"setStatus\"](\"\")},1);doRun()},1)}else{doRun()}}if(Module[\"preInit\"]){if(typeof Module[\"preInit\"]==\"function\")Module[\"preInit\"]=[Module[\"preInit\"]];while(Module[\"preInit\"].length>0){Module[\"preInit\"].pop()()}}var shouldRunNow=true;if(Module[\"noInitialRun\"])shouldRunNow=false;run();\n\n\n return moduleArg.ready\n}\n\n);\n})();\nif (typeof exports === 'object' && typeof module === 'object')\n module.exports = DuckDB;\nelse if (typeof define === 'function' && define['amd'])\n define([], () => DuckDB);\n", "/**\n * [js-sha256]{@link https://github.com/emn178/js-sha256}\n *\n * @version 0.9.0\n * @author Chen, Yi-Cyuan [emn178@gmail.com]\n * @copyright Chen, Yi-Cyuan 2014-2017\n * @license MIT\n */\n/*jslint bitwise: true */\n(function () {\n 'use strict';\n\n var ERROR = 'input is invalid type';\n var WINDOW = typeof window === 'object';\n var root = WINDOW ? window : {};\n if (root.JS_SHA256_NO_WINDOW) {\n WINDOW = false;\n }\n var WEB_WORKER = !WINDOW && typeof self === 'object';\n var NODE_JS = !root.JS_SHA256_NO_NODE_JS && typeof process === 'object' && process.versions && process.versions.node;\n if (NODE_JS) {\n root = global;\n } else if (WEB_WORKER) {\n root = self;\n }\n var COMMON_JS = !root.JS_SHA256_NO_COMMON_JS && typeof module === 'object' && module.exports;\n var AMD = typeof define === 'function' && define.amd;\n var ARRAY_BUFFER = !root.JS_SHA256_NO_ARRAY_BUFFER && typeof ArrayBuffer !== 'undefined';\n var HEX_CHARS = '0123456789abcdef'.split('');\n var EXTRA = [-2147483648, 8388608, 32768, 128];\n var SHIFT = [24, 16, 8, 0];\n var K = [\n 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,\n 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174,\n 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da,\n 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967,\n 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85,\n 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070,\n 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3,\n 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2\n ];\n var OUTPUT_TYPES = ['hex', 'array', 'digest', 'arrayBuffer'];\n\n var blocks = [];\n\n if (root.JS_SHA256_NO_NODE_JS || !Array.isArray) {\n Array.isArray = function (obj) {\n return Object.prototype.toString.call(obj) === '[object Array]';\n };\n }\n\n if (ARRAY_BUFFER && (root.JS_SHA256_NO_ARRAY_BUFFER_IS_VIEW || !ArrayBuffer.isView)) {\n ArrayBuffer.isView = function (obj) {\n return typeof obj === 'object' && obj.buffer && obj.buffer.constructor === ArrayBuffer;\n };\n }\n\n var createOutputMethod = function (outputType, is224) {\n return function (message) {\n return new Sha256(is224, true).update(message)[outputType]();\n };\n };\n\n var createMethod = function (is224) {\n var method = createOutputMethod('hex', is224);\n if (NODE_JS) {\n method = nodeWrap(method, is224);\n }\n method.create = function () {\n return new Sha256(is224);\n };\n method.update = function (message) {\n return method.create().update(message);\n };\n for (var i = 0; i < OUTPUT_TYPES.length; ++i) {\n var type = OUTPUT_TYPES[i];\n method[type] = createOutputMethod(type, is224);\n }\n return method;\n };\n\n var nodeWrap = function (method, is224) {\n var crypto = eval(\"require('crypto')\");\n var Buffer = eval(\"require('buffer').Buffer\");\n var algorithm = is224 ? 'sha224' : 'sha256';\n var nodeMethod = function (message) {\n if (typeof message === 'string') {\n return crypto.createHash(algorithm).update(message, 'utf8').digest('hex');\n } else {\n if (message === null || message === undefined) {\n throw new Error(ERROR);\n } else if (message.constructor === ArrayBuffer) {\n message = new Uint8Array(message);\n }\n }\n if (Array.isArray(message) || ArrayBuffer.isView(message) ||\n message.constructor === Buffer) {\n return crypto.createHash(algorithm).update(new Buffer(message)).digest('hex');\n } else {\n return method(message);\n }\n };\n return nodeMethod;\n };\n\n var createHmacOutputMethod = function (outputType, is224) {\n return function (key, message) {\n return new HmacSha256(key, is224, true).update(message)[outputType]();\n };\n };\n\n var createHmacMethod = function (is224) {\n var method = createHmacOutputMethod('hex', is224);\n method.create = function (key) {\n return new HmacSha256(key, is224);\n };\n method.update = function (key, message) {\n return method.create(key).update(message);\n };\n for (var i = 0; i < OUTPUT_TYPES.length; ++i) {\n var type = OUTPUT_TYPES[i];\n method[type] = createHmacOutputMethod(type, is224);\n }\n return method;\n };\n\n function Sha256(is224, sharedMemory) {\n if (sharedMemory) {\n blocks[0] = blocks[16] = blocks[1] = blocks[2] = blocks[3] =\n blocks[4] = blocks[5] = blocks[6] = blocks[7] =\n blocks[8] = blocks[9] = blocks[10] = blocks[11] =\n blocks[12] = blocks[13] = blocks[14] = blocks[15] = 0;\n this.blocks = blocks;\n } else {\n this.blocks = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];\n }\n\n if (is224) {\n this.h0 = 0xc1059ed8;\n this.h1 = 0x367cd507;\n this.h2 = 0x3070dd17;\n this.h3 = 0xf70e5939;\n this.h4 = 0xffc00b31;\n this.h5 = 0x68581511;\n this.h6 = 0x64f98fa7;\n this.h7 = 0xbefa4fa4;\n } else { // 256\n this.h0 = 0x6a09e667;\n this.h1 = 0xbb67ae85;\n this.h2 = 0x3c6ef372;\n this.h3 = 0xa54ff53a;\n this.h4 = 0x510e527f;\n this.h5 = 0x9b05688c;\n this.h6 = 0x1f83d9ab;\n this.h7 = 0x5be0cd19;\n }\n\n this.block = this.start = this.bytes = this.hBytes = 0;\n this.finalized = this.hashed = false;\n this.first = true;\n this.is224 = is224;\n }\n\n Sha256.prototype.update = function (message) {\n if (this.finalized) {\n return;\n }\n var notString, type = typeof message;\n if (type !== 'string') {\n if (type === 'object') {\n if (message === null) {\n throw new Error(ERROR);\n } else if (ARRAY_BUFFER && message.constructor === ArrayBuffer) {\n message = new Uint8Array(message);\n } else if (!Array.isArray(message)) {\n if (!ARRAY_BUFFER || !ArrayBuffer.isView(message)) {\n throw new Error(ERROR);\n }\n }\n } else {\n throw new Error(ERROR);\n }\n notString = true;\n }\n var code, index = 0, i, length = message.length, blocks = this.blocks;\n\n while (index < length) {\n if (this.hashed) {\n this.hashed = false;\n blocks[0] = this.block;\n blocks[16] = blocks[1] = blocks[2] = blocks[3] =\n blocks[4] = blocks[5] = blocks[6] = blocks[7] =\n blocks[8] = blocks[9] = blocks[10] = blocks[11] =\n blocks[12] = blocks[13] = blocks[14] = blocks[15] = 0;\n }\n\n if (notString) {\n for (i = this.start; index < length && i < 64; ++index) {\n blocks[i >> 2] |= message[index] << SHIFT[i++ & 3];\n }\n } else {\n for (i = this.start; index < length && i < 64; ++index) {\n code = message.charCodeAt(index);\n if (code < 0x80) {\n blocks[i >> 2] |= code << SHIFT[i++ & 3];\n } else if (code < 0x800) {\n blocks[i >> 2] |= (0xc0 | (code >> 6)) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | (code & 0x3f)) << SHIFT[i++ & 3];\n } else if (code < 0xd800 || code >= 0xe000) {\n blocks[i >> 2] |= (0xe0 | (code >> 12)) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | ((code >> 6) & 0x3f)) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | (code & 0x3f)) << SHIFT[i++ & 3];\n } else {\n code = 0x10000 + (((code & 0x3ff) << 10) | (message.charCodeAt(++index) & 0x3ff));\n blocks[i >> 2] |= (0xf0 | (code >> 18)) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | ((code >> 12) & 0x3f)) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | ((code >> 6) & 0x3f)) << SHIFT[i++ & 3];\n blocks[i >> 2] |= (0x80 | (code & 0x3f)) << SHIFT[i++ & 3];\n }\n }\n }\n\n this.lastByteIndex = i;\n this.bytes += i - this.start;\n if (i >= 64) {\n this.block = blocks[16];\n this.start = i - 64;\n this.hash();\n this.hashed = true;\n } else {\n this.start = i;\n }\n }\n if (this.bytes > 4294967295) {\n this.hBytes += this.bytes / 4294967296 << 0;\n this.bytes = this.bytes % 4294967296;\n }\n return this;\n };\n\n Sha256.prototype.finalize = function () {\n if (this.finalized) {\n return;\n }\n this.finalized = true;\n var blocks = this.blocks, i = this.lastByteIndex;\n blocks[16] = this.block;\n blocks[i >> 2] |= EXTRA[i & 3];\n this.block = blocks[16];\n if (i >= 56) {\n if (!this.hashed) {\n this.hash();\n }\n blocks[0] = this.block;\n blocks[16] = blocks[1] = blocks[2] = blocks[3] =\n blocks[4] = blocks[5] = blocks[6] = blocks[7] =\n blocks[8] = blocks[9] = blocks[10] = blocks[11] =\n blocks[12] = blocks[13] = blocks[14] = blocks[15] = 0;\n }\n blocks[14] = this.hBytes << 3 | this.bytes >>> 29;\n blocks[15] = this.bytes << 3;\n this.hash();\n };\n\n Sha256.prototype.hash = function () {\n var a = this.h0, b = this.h1, c = this.h2, d = this.h3, e = this.h4, f = this.h5, g = this.h6,\n h = this.h7, blocks = this.blocks, j, s0, s1, maj, t1, t2, ch, ab, da, cd, bc;\n\n for (j = 16; j < 64; ++j) {\n // rightrotate\n t1 = blocks[j - 15];\n s0 = ((t1 >>> 7) | (t1 << 25)) ^ ((t1 >>> 18) | (t1 << 14)) ^ (t1 >>> 3);\n t1 = blocks[j - 2];\n s1 = ((t1 >>> 17) | (t1 << 15)) ^ ((t1 >>> 19) | (t1 << 13)) ^ (t1 >>> 10);\n blocks[j] = blocks[j - 16] + s0 + blocks[j - 7] + s1 << 0;\n }\n\n bc = b & c;\n for (j = 0; j < 64; j += 4) {\n if (this.first) {\n if (this.is224) {\n ab = 300032;\n t1 = blocks[0] - 1413257819;\n h = t1 - 150054599 << 0;\n d = t1 + 24177077 << 0;\n } else {\n ab = 704751109;\n t1 = blocks[0] - 210244248;\n h = t1 - 1521486534 << 0;\n d = t1 + 143694565 << 0;\n }\n this.first = false;\n } else {\n s0 = ((a >>> 2) | (a << 30)) ^ ((a >>> 13) | (a << 19)) ^ ((a >>> 22) | (a << 10));\n s1 = ((e >>> 6) | (e << 26)) ^ ((e >>> 11) | (e << 21)) ^ ((e >>> 25) | (e << 7));\n ab = a & b;\n maj = ab ^ (a & c) ^ bc;\n ch = (e & f) ^ (~e & g);\n t1 = h + s1 + ch + K[j] + blocks[j];\n t2 = s0 + maj;\n h = d + t1 << 0;\n d = t1 + t2 << 0;\n }\n s0 = ((d >>> 2) | (d << 30)) ^ ((d >>> 13) | (d << 19)) ^ ((d >>> 22) | (d << 10));\n s1 = ((h >>> 6) | (h << 26)) ^ ((h >>> 11) | (h << 21)) ^ ((h >>> 25) | (h << 7));\n da = d & a;\n maj = da ^ (d & b) ^ ab;\n ch = (h & e) ^ (~h & f);\n t1 = g + s1 + ch + K[j + 1] + blocks[j + 1];\n t2 = s0 + maj;\n g = c + t1 << 0;\n c = t1 + t2 << 0;\n s0 = ((c >>> 2) | (c << 30)) ^ ((c >>> 13) | (c << 19)) ^ ((c >>> 22) | (c << 10));\n s1 = ((g >>> 6) | (g << 26)) ^ ((g >>> 11) | (g << 21)) ^ ((g >>> 25) | (g << 7));\n cd = c & d;\n maj = cd ^ (c & a) ^ da;\n ch = (g & h) ^ (~g & e);\n t1 = f + s1 + ch + K[j + 2] + blocks[j + 2];\n t2 = s0 + maj;\n f = b + t1 << 0;\n b = t1 + t2 << 0;\n s0 = ((b >>> 2) | (b << 30)) ^ ((b >>> 13) | (b << 19)) ^ ((b >>> 22) | (b << 10));\n s1 = ((f >>> 6) | (f << 26)) ^ ((f >>> 11) | (f << 21)) ^ ((f >>> 25) | (f << 7));\n bc = b & c;\n maj = bc ^ (b & d) ^ cd;\n ch = (f & g) ^ (~f & h);\n t1 = e + s1 + ch + K[j + 3] + blocks[j + 3];\n t2 = s0 + maj;\n e = a + t1 << 0;\n a = t1 + t2 << 0;\n }\n\n this.h0 = this.h0 + a << 0;\n this.h1 = this.h1 + b << 0;\n this.h2 = this.h2 + c << 0;\n this.h3 = this.h3 + d << 0;\n this.h4 = this.h4 + e << 0;\n this.h5 = this.h5 + f << 0;\n this.h6 = this.h6 + g << 0;\n this.h7 = this.h7 + h << 0;\n };\n\n Sha256.prototype.hex = function () {\n this.finalize();\n\n var h0 = this.h0, h1 = this.h1, h2 = this.h2, h3 = this.h3, h4 = this.h4, h5 = this.h5,\n h6 = this.h6, h7 = this.h7;\n\n var hex = HEX_CHARS[(h0 >> 28) & 0x0F] + HEX_CHARS[(h0 >> 24) & 0x0F] +\n HEX_CHARS[(h0 >> 20) & 0x0F] + HEX_CHARS[(h0 >> 16) & 0x0F] +\n HEX_CHARS[(h0 >> 12) & 0x0F] + HEX_CHARS[(h0 >> 8) & 0x0F] +\n HEX_CHARS[(h0 >> 4) & 0x0F] + HEX_CHARS[h0 & 0x0F] +\n HEX_CHARS[(h1 >> 28) & 0x0F] + HEX_CHARS[(h1 >> 24) & 0x0F] +\n HEX_CHARS[(h1 >> 20) & 0x0F] + HEX_CHARS[(h1 >> 16) & 0x0F] +\n HEX_CHARS[(h1 >> 12) & 0x0F] + HEX_CHARS[(h1 >> 8) & 0x0F] +\n HEX_CHARS[(h1 >> 4) & 0x0F] + HEX_CHARS[h1 & 0x0F] +\n HEX_CHARS[(h2 >> 28) & 0x0F] + HEX_CHARS[(h2 >> 24) & 0x0F] +\n HEX_CHARS[(h2 >> 20) & 0x0F] + HEX_CHARS[(h2 >> 16) & 0x0F] +\n HEX_CHARS[(h2 >> 12) & 0x0F] + HEX_CHARS[(h2 >> 8) & 0x0F] +\n HEX_CHARS[(h2 >> 4) & 0x0F] + HEX_CHARS[h2 & 0x0F] +\n HEX_CHARS[(h3 >> 28) & 0x0F] + HEX_CHARS[(h3 >> 24) & 0x0F] +\n HEX_CHARS[(h3 >> 20) & 0x0F] + HEX_CHARS[(h3 >> 16) & 0x0F] +\n HEX_CHARS[(h3 >> 12) & 0x0F] + HEX_CHARS[(h3 >> 8) & 0x0F] +\n HEX_CHARS[(h3 >> 4) & 0x0F] + HEX_CHARS[h3 & 0x0F] +\n HEX_CHARS[(h4 >> 28) & 0x0F] + HEX_CHARS[(h4 >> 24) & 0x0F] +\n HEX_CHARS[(h4 >> 20) & 0x0F] + HEX_CHARS[(h4 >> 16) & 0x0F] +\n HEX_CHARS[(h4 >> 12) & 0x0F] + HEX_CHARS[(h4 >> 8) & 0x0F] +\n HEX_CHARS[(h4 >> 4) & 0x0F] + HEX_CHARS[h4 & 0x0F] +\n HEX_CHARS[(h5 >> 28) & 0x0F] + HEX_CHARS[(h5 >> 24) & 0x0F] +\n HEX_CHARS[(h5 >> 20) & 0x0F] + HEX_CHARS[(h5 >> 16) & 0x0F] +\n HEX_CHARS[(h5 >> 12) & 0x0F] + HEX_CHARS[(h5 >> 8) & 0x0F] +\n HEX_CHARS[(h5 >> 4) & 0x0F] + HEX_CHARS[h5 & 0x0F] +\n HEX_CHARS[(h6 >> 28) & 0x0F] + HEX_CHARS[(h6 >> 24) & 0x0F] +\n HEX_CHARS[(h6 >> 20) & 0x0F] + HEX_CHARS[(h6 >> 16) & 0x0F] +\n HEX_CHARS[(h6 >> 12) & 0x0F] + HEX_CHARS[(h6 >> 8) & 0x0F] +\n HEX_CHARS[(h6 >> 4) & 0x0F] + HEX_CHARS[h6 & 0x0F];\n if (!this.is224) {\n hex += HEX_CHARS[(h7 >> 28) & 0x0F] + HEX_CHARS[(h7 >> 24) & 0x0F] +\n HEX_CHARS[(h7 >> 20) & 0x0F] + HEX_CHARS[(h7 >> 16) & 0x0F] +\n HEX_CHARS[(h7 >> 12) & 0x0F] + HEX_CHARS[(h7 >> 8) & 0x0F] +\n HEX_CHARS[(h7 >> 4) & 0x0F] + HEX_CHARS[h7 & 0x0F];\n }\n return hex;\n };\n\n Sha256.prototype.toString = Sha256.prototype.hex;\n\n Sha256.prototype.digest = function () {\n this.finalize();\n\n var h0 = this.h0, h1 = this.h1, h2 = this.h2, h3 = this.h3, h4 = this.h4, h5 = this.h5,\n h6 = this.h6, h7 = this.h7;\n\n var arr = [\n (h0 >> 24) & 0xFF, (h0 >> 16) & 0xFF, (h0 >> 8) & 0xFF, h0 & 0xFF,\n (h1 >> 24) & 0xFF, (h1 >> 16) & 0xFF, (h1 >> 8) & 0xFF, h1 & 0xFF,\n (h2 >> 24) & 0xFF, (h2 >> 16) & 0xFF, (h2 >> 8) & 0xFF, h2 & 0xFF,\n (h3 >> 24) & 0xFF, (h3 >> 16) & 0xFF, (h3 >> 8) & 0xFF, h3 & 0xFF,\n (h4 >> 24) & 0xFF, (h4 >> 16) & 0xFF, (h4 >> 8) & 0xFF, h4 & 0xFF,\n (h5 >> 24) & 0xFF, (h5 >> 16) & 0xFF, (h5 >> 8) & 0xFF, h5 & 0xFF,\n (h6 >> 24) & 0xFF, (h6 >> 16) & 0xFF, (h6 >> 8) & 0xFF, h6 & 0xFF\n ];\n if (!this.is224) {\n arr.push((h7 >> 24) & 0xFF, (h7 >> 16) & 0xFF, (h7 >> 8) & 0xFF, h7 & 0xFF);\n }\n return arr;\n };\n\n Sha256.prototype.array = Sha256.prototype.digest;\n\n Sha256.prototype.arrayBuffer = function () {\n this.finalize();\n\n var buffer = new ArrayBuffer(this.is224 ? 28 : 32);\n var dataView = new DataView(buffer);\n dataView.setUint32(0, this.h0);\n dataView.setUint32(4, this.h1);\n dataView.setUint32(8, this.h2);\n dataView.setUint32(12, this.h3);\n dataView.setUint32(16, this.h4);\n dataView.setUint32(20, this.h5);\n dataView.setUint32(24, this.h6);\n if (!this.is224) {\n dataView.setUint32(28, this.h7);\n }\n return buffer;\n };\n\n function HmacSha256(key, is224, sharedMemory) {\n var i, type = typeof key;\n if (type === 'string') {\n var bytes = [], length = key.length, index = 0, code;\n for (i = 0; i < length; ++i) {\n code = key.charCodeAt(i);\n if (code < 0x80) {\n bytes[index++] = code;\n } else if (code < 0x800) {\n bytes[index++] = (0xc0 | (code >> 6));\n bytes[index++] = (0x80 | (code & 0x3f));\n } else if (code < 0xd800 || code >= 0xe000) {\n bytes[index++] = (0xe0 | (code >> 12));\n bytes[index++] = (0x80 | ((code >> 6) & 0x3f));\n bytes[index++] = (0x80 | (code & 0x3f));\n } else {\n code = 0x10000 + (((code & 0x3ff) << 10) | (key.charCodeAt(++i) & 0x3ff));\n bytes[index++] = (0xf0 | (code >> 18));\n bytes[index++] = (0x80 | ((code >> 12) & 0x3f));\n bytes[index++] = (0x80 | ((code >> 6) & 0x3f));\n bytes[index++] = (0x80 | (code & 0x3f));\n }\n }\n key = bytes;\n } else {\n if (type === 'object') {\n if (key === null) {\n throw new Error(ERROR);\n } else if (ARRAY_BUFFER && key.constructor === ArrayBuffer) {\n key = new Uint8Array(key);\n } else if (!Array.isArray(key)) {\n if (!ARRAY_BUFFER || !ArrayBuffer.isView(key)) {\n throw new Error(ERROR);\n }\n }\n } else {\n throw new Error(ERROR);\n }\n }\n\n if (key.length > 64) {\n key = (new Sha256(is224, true)).update(key).array();\n }\n\n var oKeyPad = [], iKeyPad = [];\n for (i = 0; i < 64; ++i) {\n var b = key[i] || 0;\n oKeyPad[i] = 0x5c ^ b;\n iKeyPad[i] = 0x36 ^ b;\n }\n\n Sha256.call(this, is224, sharedMemory);\n\n this.update(iKeyPad);\n this.oKeyPad = oKeyPad;\n this.inner = true;\n this.sharedMemory = sharedMemory;\n }\n HmacSha256.prototype = new Sha256();\n\n HmacSha256.prototype.finalize = function () {\n Sha256.prototype.finalize.call(this);\n if (this.inner) {\n this.inner = false;\n var innerHash = this.array();\n Sha256.call(this, this.is224, this.sharedMemory);\n this.update(this.oKeyPad);\n this.update(innerHash);\n Sha256.prototype.finalize.call(this);\n }\n };\n\n var exports = createMethod();\n exports.sha256 = exports;\n exports.sha224 = createMethod(true);\n exports.sha256.hmac = createHmacMethod();\n exports.sha224.hmac = createHmacMethod(true);\n\n if (COMMON_JS) {\n module.exports = exports;\n } else {\n root.sha256 = exports.sha256;\n root.sha224 = exports.sha224;\n if (AMD) {\n define(function () {\n return exports;\n });\n }\n }\n})();\n", "\"use strict\";var Module={};var ENVIRONMENT_IS_NODE=typeof process==\"object\"&&typeof process.versions==\"object\"&&typeof process.versions.node==\"string\";if(ENVIRONMENT_IS_NODE){var nodeWorkerThreads=require(\"worker_threads\");var parentPort=nodeWorkerThreads.parentPort;parentPort.on(\"message\",data=>onmessage({data:data}));var fs=require(\"fs\");Object.assign(global,{self:global,require:require,Module:Module,location:{href:__filename},Worker:nodeWorkerThreads.Worker,importScripts:f=>(0,eval)(fs.readFileSync(f,\"utf8\")+\"//# sourceURL=\"+f),postMessage:msg=>parentPort.postMessage(msg),performance:global.performance||{now:Date.now}})}var initializedJS=false;function threadPrintErr(){var text=Array.prototype.slice.call(arguments).join(\" \");if(ENVIRONMENT_IS_NODE){fs.writeSync(2,text+\"\\n\");return}console.error(text)}function threadAlert(){var text=Array.prototype.slice.call(arguments).join(\" \");postMessage({cmd:\"alert\",text:text,threadId:Module[\"_pthread_self\"]()})}var err=threadPrintErr;self.alert=threadAlert;Module[\"instantiateWasm\"]=(info,receiveInstance)=>{var module=Module[\"wasmModule\"];Module[\"wasmModule\"]=null;var instance=new WebAssembly.Instance(module,info);return receiveInstance(instance)};self.onunhandledrejection=e=>{throw e.reason||e};function handleMessage(e){try{if(e.data.cmd===\"load\"){let messageQueue=[];self.onmessage=e=>messageQueue.push(e);self.startWorker=instance=>{Module=instance;postMessage({\"cmd\":\"loaded\"});for(let msg of messageQueue){handleMessage(msg)}self.onmessage=handleMessage};Module[\"wasmModule\"]=e.data.wasmModule;for(const handler of e.data.handlers){Module[handler]=(...args)=>{postMessage({cmd:\"callHandler\",handler:handler,args:args})}}Module[\"wasmMemory\"]=e.data.wasmMemory;Module[\"buffer\"]=Module[\"wasmMemory\"].buffer;Module[\"ENVIRONMENT_IS_PTHREAD\"]=true;if(typeof e.data.urlOrBlob==\"string\"){importScripts(e.data.urlOrBlob)}else{var objectUrl=URL.createObjectURL(e.data.urlOrBlob);importScripts(objectUrl);URL.revokeObjectURL(objectUrl)}DuckDB(Module)}else if(e.data.cmd===\"run\"){Module[\"__emscripten_thread_init\"](e.data.pthread_ptr,0,0,1);Module[\"__emscripten_thread_mailbox_await\"](e.data.pthread_ptr);Module[\"establishStackSpace\"]();Module[\"PThread\"].receiveObjectTransfer(e.data);Module[\"PThread\"].threadInitTLS();if(!initializedJS){initializedJS=true}try{Module[\"invokeEntryPoint\"](e.data.start_routine,e.data.arg)}catch(ex){if(ex!=\"unwind\"){throw ex}}}else if(e.data.cmd===\"cancel\"){if(Module[\"_pthread_self\"]()){Module[\"__emscripten_thread_exit\"](-1)}}else if(e.data.target===\"setimmediate\"){}else if(e.data.cmd===\"checkMailbox\"){if(initializedJS){Module[\"checkMailbox\"]()}}else if(e.data.cmd){err(`worker.js received unknown command ${e.data.cmd}`);err(e.data)}}catch(ex){if(Module[\"__emscripten_thread_crashed\"]){Module[\"__emscripten_thread_crashed\"]()}throw ex}}self.onmessage=handleMessage;\n\nexport const onmessage = self.onmessage;\nexport function getModule() { return Module; }\nexport function setModule(m) { Module = m; }\n", "import * as pthread_api from '../bindings/duckdb-coi.pthread';\nimport DuckDB from '../bindings/duckdb-coi';\nimport { BROWSER_RUNTIME } from '../bindings/runtime_browser';\n\n// Register the global DuckDB runtime\nglobalThis.DUCKDB_RUNTIME = {};\nfor (const func of Object.getOwnPropertyNames(BROWSER_RUNTIME)) {\n if (func == 'constructor') continue;\n globalThis.DUCKDB_RUNTIME[func] = Object.getOwnPropertyDescriptor(BROWSER_RUNTIME, func)!.value;\n}\n\n// We just override the load handler of the pthread wrapper to bundle DuckDB with esbuild.\nglobalThis.onmessage = (e: any) => {\n if (e.data.cmd === 'load') {\n const m = pthread_api.getModule();\n\n // Module and memory were sent from main thread\n m['wasmModule'] = e.data.wasmModule;\n m['wasmMemory'] = e.data.wasmMemory;\n m['buffer'] = m['wasmMemory'].buffer;\n m['ENVIRONMENT_IS_PTHREAD'] = true;\n\n DuckDB(m).then(function (instance) {\n pthread_api.setModule(instance);\n });\n } else if (e.data.cmd === 'registerFileHandle') {\n globalThis.DUCKDB_RUNTIME._files = globalThis.DUCKDB_RUNTIME._files || new Map();\n globalThis.DUCKDB_RUNTIME._files.set(e.data.fileName, e.data.fileHandle);\n } else if (e.data.cmd === 'dropFileHandle') {\n globalThis.DUCKDB_RUNTIME._files = globalThis.DUCKDB_RUNTIME._files || new Map();\n globalThis.DUCKDB_RUNTIME._files.delete(e.data.fileName);\n } else if (e.data.cmd === 'registerUDFFunction') {\n globalThis.DUCKDB_RUNTIME._udfFunctions = globalThis.DUCKDB_RUNTIME._files || new Map();\n globalThis.DUCKDB_RUNTIME._udfFunctions.set(e.data.udf.name, e.data.udf);\n } else if (e.data.cmd === 'dropUDFFunctions') {\n globalThis.DUCKDB_RUNTIME._udfFunctions = globalThis.DUCKDB_RUNTIME._files || new Map();\n for (const key of globalThis.DUCKDB_RUNTIME._udfFunctions.keys()) {\n if (globalThis.DUCKDB_RUNTIME._udfFunctions.get(key).connection_id == e.data.connectionId) {\n globalThis.DUCKDB_RUNTIME._udfFunctions.delete(key);\n }\n }\n } else {\n pthread_api.onmessage(e);\n }\n};\n", "import {S3Config} from \"../bindings\";\nimport {sha256} from \"js-sha256\";\n\nexport interface S3Params {\n url: string,\n query: string,\n host: string,\n region: string,\n service: string,\n method: string,\n accessKeyId: string,\n secretAccessKey: string,\n sessionToken: string,\n dateNow: string,\n datetimeNow: string\n}\n\nexport interface S3PayloadParams {\n contentHash: string | null,\n contentType: string | null\n}\n\nconst getHTTPHost = function (config : S3Config | undefined, url : string, bucket : string) : string {\n if (config?.endpoint?.startsWith(\"http\")) {\n // Endpoint is a full url, we append the bucket\n const httpHost = `${config?.endpoint}`;\n const offset = httpHost.indexOf(\"://\")+3;\n return httpHost.substring(offset);\n } else if (config?.endpoint) {\n // Endpoint is not a full url and the https://{bucket}.{domain} format will be used\n return `${bucket}.${config?.endpoint}`;\n } else {\n // Default aws s3 url\n return `${bucket}.s3.amazonaws.com`;\n }\n}\n\nexport function getS3Params (config : S3Config | undefined, url: string, method : string) : S3Params {\n const parsedS3Url = parseS3Url(url);\n\n // when using S3 path-style access, the signed URL should also include the bucket name, \n // as it is present in the HTTP URL path.\n // See: https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-bucket-intro.html#path-style-url-ex\n let path = parsedS3Url.path;\n if (isPathStyleAccess(config)) {\n path = `/${parsedS3Url.bucket}${path}`;\n }\n return {\n url: path,\n query: \"\",\n host: getHTTPHost(config, url, parsedS3Url.bucket),\n region: (config?.region) ?? \"\",\n service: \"s3\",\n method: method,\n accessKeyId: (config?.accessKeyId) ?? \"\",\n secretAccessKey: (config?.secretAccessKey) ?? \"\",\n sessionToken: (config?.sessionToken) ?? \"\",\n dateNow: new Date().toISOString().replace(/-/g,'').split('T')[0],\n datetimeNow: new Date().toISOString().replace(/-/g,'').replace(/:/g,'').split('.')[0]+ 'Z',\n };\n}\n\nexport function uriEncode(input : string, encode_slash = false) {\n // https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-query-string-auth.html\n\n const hexDigit = \"0123456789ABCDEF\";\n let result = \"\";\n\n for (let i = 0; i < input.length; i++) {\n const ch : string = input[i];\n\n if ((ch >= 'A' && ch <= 'Z') || (ch >= 'a' && ch <= 'z') || (ch >= '0' && ch <= '9') || ch == '_' ||\n ch == '-' || ch == '~' || ch == '.') {\n result += ch;\n } else if (ch == '/') {\n if (encode_slash) {\n result += \"%2F\";\n } else {\n result += ch;\n }\n } else {\n result += \"%\";\n result += hexDigit[ch.charCodeAt(0) >> 4];\n result += hexDigit[ch.charCodeAt(0) & 15];\n }\n }\n return result;\n}\n\nexport function createS3Headers(params: S3Params, payloadParams : S3PayloadParams | null = null) : Map<string, string> {\n // this is the sha256 of the empty string, its useful since we have no payload for GET requests\n const payloadHash = (payloadParams?.contentHash) ?? \"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\";\n\n const res = new Map<string, string>();\n // res.set(\"host\", params.host)\n res.set(\"x-amz-date\", params.datetimeNow);\n res.set(\"x-amz-content-sha256\", payloadHash);\n\n if (params.sessionToken) {\n res.set(\"x-amz-security-token\", params.sessionToken);\n }\n\n // construct string to sign\n let signedHeaders = \"\";\n if (payloadParams?.contentType) {\n signedHeaders += \"content-type;\";\n }\n signedHeaders += \"host;x-amz-content-sha256;x-amz-date\";\n if (params.sessionToken) {\n signedHeaders += \";x-amz-security-token\";\n }\n\n let canonicalRequest = params.method + \"\\n\" + uriEncode(params.url) + \"\\n\" + params.query;\n if (payloadParams?.contentType) {\n canonicalRequest += \"\\ncontent-type:\" + payloadParams?.contentType;\n }\n canonicalRequest += \"\\nhost:\" + params.host +\n \"\\nx-amz-content-sha256:\" + payloadHash + \"\\nx-amz-date:\" + params.datetimeNow;\n if (params.sessionToken && params.sessionToken.length > 0) {\n canonicalRequest += \"\\nx-amz-security-token:\" + params.sessionToken;\n }\n\n canonicalRequest += \"\\n\\n\" + signedHeaders + \"\\n\" + payloadHash;\n const canonicalRequestHashStr = sha256(canonicalRequest);\n\n const stringToSign = \"AWS4-HMAC-SHA256\\n\" + params.datetimeNow + \"\\n\" + params.dateNow + \"/\" + params.region + \"/\" + params.service +\n \"/aws4_request\\n\" + canonicalRequestHashStr;\n\n // ts-ignore's because library can accept array buffer as key, but TS arg is incorrect\n const signKey = \"AWS4\" + params.secretAccessKey;\n const kDate = sha256.hmac.arrayBuffer(signKey, params.dateNow);\n\n // Note, js-sha256 has a bug in the TS interface that only supports strings as keys, while we need a bytearray\n // as key. PR is open but unmerged: https://github.com/emn178/js-sha256/pull/25\n // eslint-disable-next-line\n // @ts-ignore\n const kRegion = sha256.hmac.arrayBuffer(kDate, params.region);\n // eslint-disable-next-line\n // @ts-ignore\n const kService = sha256.hmac.arrayBuffer(kRegion, params.service,);\n // eslint-disable-next-line\n // @ts-ignore\n const signingKey = sha256.hmac.arrayBuffer(kService, \"aws4_request\");\n // eslint-disable-next-line\n // @ts-ignore\n const signature = sha256.hmac(signingKey, stringToSign);\n\n res.set(\"Authorization\", \"AWS4-HMAC-SHA256 Credential=\" + params.accessKeyId + \"/\" + params.dateNow + \"/\" + params.region + \"/\" +\n params.service + \"/aws4_request, SignedHeaders=\" + signedHeaders +\n \", Signature=\" + signature);\n\n return res;\n}\n\nconst createS3HeadersFromS3Config = function (config : S3Config | undefined, url : string, method : string, contentType: string | null = null, payload : Uint8Array | null = null) : Map<string, string> {\n const params = getS3Params(config, url, method);\n const payloadParams = {\n contentType: contentType,\n contentHash: payload ? sha256.hex(payload!) : null\n } as S3PayloadParams;\n return createS3Headers(params, payloadParams);\n}\n\nexport function addS3Headers(xhr: XMLHttpRequest, config : S3Config | undefined, url : string, method: string, contentType: string | null = null, payload : Uint8Array | null = null) {\n if (config?.accessKeyId || config?.sessionToken) {\n const headers = createS3HeadersFromS3Config(config, url, method, contentType, payload);\n headers.forEach((value: string, header: string) => {\n xhr.setRequestHeader(header, value);\n });\n\n if (contentType) {\n xhr.setRequestHeader(\"content-type\", contentType);\n }\n }\n}\n\nexport function parseS3Url (url: string) : {bucket : string, path : string} {\n if (url.indexOf(\"s3://\") != 0) {\n throw new Error(\"URL needs to start with s3://\");\n }\n const slashPos = url.indexOf('/', 5);\n\n if (slashPos == -1) {\n throw new Error(\"URL needs to contain a '/' after the host\");\n }\n\n const bucket = url.substring(5, slashPos);\n if (!bucket) {\n throw new Error(\"URL needs to contain a bucket name\");\n }\n const path = url.substring(slashPos);\n if (!path) {\n throw new Error(\"URL needs to contain key\");\n }\n\n return {bucket: bucket, path: path}\n}\n\nfunction isPathStyleAccess(config : S3Config | undefined) : boolean {\n if (config?.endpoint?.startsWith(\"http\")) {\n return true\n }\n return false\n}\n\nexport function getHTTPUrl(config : S3Config | undefined, url : string) : string {\n const parsedUrl = parseS3Url(url);\n if (isPathStyleAccess(config)) {\n // Endpoint is a full url, we append the bucket\n return `${config?.endpoint}/${parsedUrl.bucket}` + parsedUrl.path;\n }\n return 'https://' + getHTTPHost(config, url, parsedUrl.bucket) + parsedUrl.path;\n}", "import { DuckDBRuntime } from './runtime';\nimport { DuckDBModule } from './duckdb_module';\n\nconst TEXT_ENCODER = new TextEncoder();\nconst TEXT_DECODER = new TextDecoder('utf-8');\n\nfunction storeError(mod: DuckDBModule, response: number, message: string) {\n const msgBuffer = TEXT_ENCODER.encode(message);\n const heapAddr = mod._malloc(msgBuffer.byteLength);\n const heapArray = mod.HEAPU8.subarray(heapAddr, heapAddr + msgBuffer.byteLength);\n heapArray.set(msgBuffer);\n mod.HEAPF64[(response >> 3) + 0] = 1;\n mod.HEAPF64[(response >> 3) + 1] = heapAddr;\n mod.HEAPF64[(response >> 3) + 2] = heapArray.byteLength;\n}\n\nfunction getTypeSize(ptype: string) {\n switch (ptype) {\n case 'UINT8':\n case 'INT8':\n return 1;\n case 'INT32':\n case 'FLOAT':\n return 4;\n case 'INT64':\n case 'UINT64':\n case 'DOUBLE':\n case 'VARCHAR':\n return 8;\n default:\n return 0;\n }\n}\n\nfunction ptrToArray(mod: DuckDBModule, ptr: number, ptype: string, n: number) {\n const heap = mod.HEAPU8.subarray(ptr, ptr + n * getTypeSize(ptype));\n switch (ptype) {\n case 'UINT8':\n return new Uint8Array(heap.buffer, heap.byteOffset, n);\n case 'INT8':\n return new Int8Array(heap.buffer, heap.byteOffset, n);\n case 'INT32':\n return new Int32Array(heap.buffer, heap.byteOffset, n);\n case 'FLOAT':\n return new Float32Array(heap.buffer, heap.byteOffset, n);\n case 'DOUBLE':\n return new Float64Array(heap.buffer, heap.byteOffset, n);\n case 'VARCHAR':\n return new Float64Array(heap.buffer, heap.byteOffset, n);\n default:\n return new Array<string | undefined | null>(0); // cough\n }\n}\n\nfunction ptrToUint8Array(mod: DuckDBModule, ptr: number, n: number) {\n const heap = mod.HEAPU8.subarray(ptr, ptr + n);\n return new Uint8Array(heap.buffer, heap.byteOffset, n);\n}\nfunction ptrToFloat64Array(mod: DuckDBModule, ptr: number, n: number) {\n const heap = mod.HEAPU8.subarray(ptr, ptr + n * 8);\n return new Float64Array(heap.buffer, heap.byteOffset, n);\n}\n\ninterface ArgumentTypeDescription {\n name?: string;\n sqlType: string;\n physicalType: string;\n validityBuffer?: number;\n dataBuffer?: number;\n lengthBuffer?: number;\n children?: ArgumentTypeDescription[];\n}\n\ninterface ReturnTypeDescription {\n sqlType: string;\n physicalType: string;\n}\n\ninterface SchemaDescription {\n rows: number;\n args: ArgumentTypeDescription[];\n ret: ReturnTypeDescription;\n}\n\ntype ArgumentResolver = (row: number) => any | null;\n\n// this is called from webdb.cc/CallScalarUDFFunction, changes here need to be matched there\nexport function callScalarUDF(\n runtime: DuckDBRuntime,\n mod: DuckDBModule,\n response: number,\n funcId: number,\n descPtr: number,\n descSize: number,\n ptrsPtr: number,\n ptrsSize: number,\n) {\n try {\n const udf = runtime._udfFunctions.get(funcId);\n if (!udf) {\n storeError(mod, response, 'Unknown UDF with id: ' + funcId);\n return;\n }\n const rawDesc = TEXT_DECODER.decode(mod.HEAPU8.subarray(descPtr, descPtr + descSize));\n const desc = JSON.parse(rawDesc) as SchemaDescription;\n const ptrs = ptrToFloat64Array(mod, ptrsPtr, ptrsSize / 8);\n\n const buildResolver = (arg: ArgumentTypeDescription): ArgumentResolver => {\n let validity: Uint8Array | null = null;\n if (arg.validityBuffer !== undefined) {\n validity = ptrToUint8Array(mod, ptrs[arg.validityBuffer] as number, desc.rows);\n }\n switch (arg.physicalType) {\n case 'VARCHAR': {\n if (arg.dataBuffer === null || arg.dataBuffer === undefined) {\n throw new Error('malformed data view, expected data buffer for VARCHAR argument');\n }\n if (arg.lengthBuffer === null || arg.lengthBuffer === undefined) {\n throw new Error('malformed data view, expected data length buffer for VARCHAR argument');\n }\n const raw = ptrToArray(mod, ptrs[arg.dataBuffer] as number, arg.physicalType, desc.rows);\n const strings: (string | null)[] = [];\n const stringLengths = ptrToFloat64Array(mod, ptrs[arg.lengthBuffer] as number, desc.rows);\n for (let j = 0; j < desc.rows; ++j) {\n if (validity != null && !validity[j]) {\n strings.push(null);\n continue;\n }\n const subarray = mod.HEAPU8.subarray(\n raw[j] as number,\n (raw[j] as number) + (stringLengths[j] as number),\n );\n const str = TEXT_DECODER.decode(subarray);\n strings.push(str);\n }\n return (row: number) => strings[row];\n }\n case 'STRUCT': {\n const tmp: any = {};\n const children: ArgumentResolver[] = [];\n for (let j = 0; j < (arg.children?.length || 0); ++j) {\n const attr = arg.children![j];\n const child = buildResolver(attr);\n children.push((row: number) => {\n tmp[attr.name!] = child(row);\n });\n }\n if (validity != null) {\n return (row: number) => {\n if (!validity![row]) {\n return null;\n }\n for (const resolver of children) {\n resolver(row);\n }\n return tmp;\n };\n } else {\n return (row: number) => {\n for (const resolver of children) {\n resolver(row);\n }\n return tmp;\n };\n }\n }\n default: {\n if (arg.dataBuffer === undefined) {\n throw new Error(\n 'malformed data view, expected data buffer for argument of type: ' + arg.physicalType,\n );\n }\n const data = ptrToArray(mod, ptrs[arg.dataBuffer] as number, arg.physicalType, desc.rows);\n if (validity != null) {\n return (row: number) => (!validity![row] ? null : data[row]);\n } else {\n return (row: number) => data[row];\n }\n }\n }\n };\n\n // Translate argument data\n const argResolvers = [];\n for (let i = 0; i < desc.args.length; ++i) {\n argResolvers.push(buildResolver(desc.args[i]));\n }\n\n // Prepare result buffers\n // TODO: we probably do not want to recreate those every time\n const resultDataLen = desc.rows * getTypeSize(desc.ret.physicalType);\n const resultDataPtr = mod._malloc(resultDataLen);\n const resultData = ptrToArray(mod, resultDataPtr, desc.ret.physicalType, desc.rows);\n const resultValidityPtr = mod._malloc(desc.rows);\n const resultValidity = ptrToUint8Array(mod, resultValidityPtr, desc.rows);\n if (resultData.length == 0 || resultValidity.length == 0) {\n storeError(mod, response, \"Can't create physical arrays for result\");\n return;\n }\n let rawResultData = resultData;\n if (desc.ret.physicalType == 'VARCHAR') {\n rawResultData = new Array<string | undefined | null>(desc.rows);\n }\n\n // Call the function\n const args = [];\n for (let i = 0; i < desc.args.length; ++i) {\n args.push(null);\n }\n for (let i = 0; i < desc.rows; ++i) {\n for (let j = 0; j < desc.args.length; ++j) {\n args[j] = argResolvers[j](i);\n }\n const res = udf.func(...args);\n rawResultData[i] = res;\n resultValidity[i] = res === undefined || res === null ? 0 : 1;\n }\n\n // Encode return values\n let resultLengthsPtr = 0;\n switch (desc.ret.physicalType) {\n case 'VARCHAR': {\n // Allocate result buffers\n const resultDataUTF8 = new Array<Uint8Array>(0); // cough\n resultLengthsPtr = mod._malloc(desc.rows * getTypeSize('DOUBLE'));\n const resultLengths = ptrToFloat64Array(mod, resultLengthsPtr, desc.rows);\n\n // TODO: We need two loops to figure out the total length but maybe we can avoid the double allocation\n let totalLength = 0;\n for (let row = 0; row < desc.rows; ++row) {\n const utf8 = TEXT_ENCODER.encode((rawResultData as (string | null | undefined)[])[row] || '');\n resultDataUTF8.push(utf8);\n resultLengths[row] = utf8.length;\n totalLength += utf8.length;\n }\n\n // We malloc a buffer for the strings to live in for now\n const resultStringPtr = mod._malloc(totalLength);\n const resultStringBuf = mod.HEAPU8.subarray(resultStringPtr, resultStringPtr + totalLength);\n\n // Now copy all the strings to the new buffer back to back\n let writerOffset = 0;\n for (let row = 0; row < desc.rows; ++row) {\n resultData[row] = writerOffset;\n const resultUTF8 = resultDataUTF8[row];\n const writer = resultStringBuf.subarray(writerOffset, writerOffset + resultUTF8.length);\n writer.set(resultUTF8);\n writerOffset += resultUTF8.length;\n }\n }\n }\n\n // Need to store three pointers, data, validity and length\n const retLen = 3 * 8;\n const retPtr = mod._malloc(retLen);\n const retBuffer = ptrToFloat64Array(mod, retPtr, 3);\n retBuffer[0] = resultDataPtr;\n retBuffer[1] = resultValidityPtr;\n retBuffer[2] = resultLengthsPtr;\n\n // Pack response\n mod.HEAPF64[(response >> 3) + 0] = 0;\n mod.HEAPF64[(response >> 3) + 1] = retPtr;\n mod.HEAPF64[(response >> 3) + 2] = 0;\n } catch (e: any) {\n storeError(mod, response, e.toString());\n }\n}\n", "import { DuckDBModule } from './duckdb_module';\nimport { UDFFunction } from './udf_function';\nimport * as udf_rt from './udf_runtime';\n\n/** Wrapper for TextDecoder to support shared array buffers */\nfunction TextDecoderWrapper(): (input?: BufferSource) => string {\n const decoder = new TextDecoder();\n return (data: any) => {\n if (typeof SharedArrayBuffer !== 'undefined' && data.buffer instanceof SharedArrayBuffer) {\n data = new Uint8Array(data);\n }\n return decoder.decode(data);\n };\n}\n/** Helper to decode text */\nexport const decodeText = TextDecoderWrapper();\n\n/** Copy a buffer */\nexport function failWith(mod: DuckDBModule, msg: string): void {\n console.error(`FAIL WITH: ${msg}`);\n mod.ccall('duckdb_web_fail_with', null, ['string'], [msg]);\n}\n\n/** Copy a buffer */\nexport function copyBuffer(mod: DuckDBModule, begin: number, length: number): Uint8Array {\n const buffer = mod.HEAPU8.subarray(begin, begin + length);\n const copy = new Uint8Array(new ArrayBuffer(buffer.byteLength));\n copy.set(buffer);\n return copy;\n}\n\n/** Decode a string */\nexport function readString(mod: DuckDBModule, begin: number, length: number): string {\n return decodeText(mod.HEAPU8.subarray(begin, begin + length));\n}\n\n/** The data protocol */\nexport enum DuckDBDataProtocol {\n BUFFER = 0,\n NODE_FS = 1,\n BROWSER_FILEREADER = 2,\n BROWSER_FSACCESS = 3,\n HTTP = 4,\n S3 = 5,\n}\n\n/** File flags for opening files*/\nexport enum FileFlags {\n //! Open file with read access\n FILE_FLAGS_READ = 1 << 0,\n //! Open file with write access\n FILE_FLAGS_WRITE = 1 << 1,\n //! Use direct IO when reading/writing to the file\n FILE_FLAGS_DIRECT_IO = 1 << 2,\n //! Create file if not exists, can only be used together with WRITE\n FILE_FLAGS_FILE_CREATE = 1 << 3,\n //! Always create a new file. If a file exists, the file is truncated. Cannot be used together with CREATE.\n FILE_FLAGS_FILE_CREATE_NEW = 1 << 4,\n //! Open file in append mode\n FILE_FLAGS_APPEND = 1 << 5,\n}\n\n/** Configuration for the AWS S3 Filesystem */\nexport interface S3Config {\n region?: string;\n endpoint?: string;\n accessKeyId?: string;\n secretAccessKey?: string;\n sessionToken?: string;\n}\n\n/** An info for a file registered with DuckDB */\nexport interface DuckDBFileInfo {\n cacheEpoch: number;\n fileId: number;\n fileName: string;\n dataProtocol: DuckDBDataProtocol;\n dataUrl: string | null;\n allowFullHttpReads?: boolean;\n s3Config?: S3Config;\n}\n\n/** Global info for all files registered with DuckDB */\nexport interface DuckDBGlobalFileInfo {\n cacheEpoch: number;\n allowFullHttpReads?: boolean;\n s3Config?: S3Config;\n}\n\n/** Call a function with packed response buffer */\nexport function callSRet(\n mod: DuckDBModule,\n funcName: string,\n argTypes: Array<Emscripten.JSType>,\n args: Array<any>,\n): [number, number, number] {\n const stackPointer = mod.stackSave();\n\n // Allocate the packed response buffer\n const response = mod.stackAlloc(3 * 8);\n argTypes.unshift('number');\n args.unshift(response);\n\n // Do the call\n mod.ccall(funcName, null, argTypes, args);\n\n // Read the response\n const status = mod.HEAPF64[(response >> 3) + 0];\n const data = mod.HEAPF64[(response >> 3) + 1];\n const dataSize = mod.HEAPF64[(response >> 3) + 2];\n\n // Restore the stack\n mod.stackRestore(stackPointer);\n return [status, data, dataSize];\n}\n\n/** Drop response buffers */\nexport function dropResponseBuffers(mod: DuckDBModule): void {\n mod.ccall('duckdb_web_clear_response', null, [], []);\n}\n\n/** The duckdb runtime */\nexport interface DuckDBRuntime {\n _files?: Map<string, any>;\n _udfFunctions: Map<number, UDFFunction>;\n\n // Test a platform feature\n testPlatformFeature(mod: DuckDBModule, feature: number): boolean;\n\n // File APIs with dedicated file identifier\n getDefaultDataProtocol(mod: DuckDBModule): number;\n openFile(mod: DuckDBModule, fileId: number, flags: FileFlags): void;\n syncFile(mod: DuckDBModule, fileId: number): void;\n closeFile(mod: DuckDBModule, fileId: number): void;\n getLastFileModificationTime(mod: DuckDBModule, fileId: number): number;\n truncateFile(mod: DuckDBModule, fileId: number, newSize: number): void;\n readFile(mod: DuckDBModule, fileId: number, buffer: number, bytes: number, location: number): number;\n writeFile(mod: DuckDBModule, fileId: number, buffer: number, bytes: number, location: number): number;\n\n // File APIs with path parameter\n removeDirectory(mod: DuckDBModule, pathPtr: number, pathLen: number): void;\n checkDirectory(mod: DuckDBModule, pathPtr: number, pathLen: number): boolean;\n createDirectory(mod: DuckDBModule, pathPtr: number, pathLen: number): void;\n listDirectoryEntries(mod: DuckDBModule, pathPtr: number, pathLen: number): boolean;\n glob(mod: DuckDBModule, pathPtr: number, pathLen: number): void;\n moveFile(mod: DuckDBModule, fromPtr: number, fromLen: number, toPtr: number, toLen: number): void;\n checkFile(mod: DuckDBModule, pathPtr: number, pathLen: number): boolean;\n removeFile(mod: DuckDBModule, pathPtr: number, pathLen: number): void;\n\n // Call a scalar UDF function\n callScalarUDF(\n mod: DuckDBModule,\n response: number,\n funcId: number,\n descPtr: number,\n descSize: number,\n ptrsPtr: number,\n ptrsSize: number,\n ): void;\n}\n\nexport const DEFAULT_RUNTIME: DuckDBRuntime = {\n _udfFunctions: new Map(),\n\n testPlatformFeature: (_mod: DuckDBModule, _feature: number): boolean => false,\n getDefaultDataProtocol: (_mod: DuckDBModule): number => DuckDBDataProtocol.BUFFER,\n openFile: (_mod: DuckDBModule, _fileId: number, flags: FileFlags): void => {},\n syncFile: (_mod: DuckDBModule, _fileId: number): void => {},\n closeFile: (_mod: DuckDBModule, _fileId: number): void => {},\n getLastFileModificationTime: (_mod: DuckDBModule, _fileId: number): number => {\n return 0;\n },\n truncateFile: (_mod: DuckDBModule, _fileId: number, _newSize: number): void => {},\n readFile: (_mod: DuckDBModule, _fileId: number, _buffer: number, _bytes: number, _location: number): number => {\n return 0;\n },\n writeFile: (_mod: DuckDBModule, _fileId: number, _buffer: number, _bytes: number, _location: number): number => {\n return 0;\n },\n\n removeDirectory: (_mod: DuckDBModule, _pathPtr: number, _pathLen: number): void => {},\n checkDirectory: (_mod: DuckDBModule, _pathPtr: number, _pathLen: number): boolean => {\n return false;\n },\n createDirectory: (_mod: DuckDBModule, _pathPtr: number, _pathLen: number): void => {},\n listDirectoryEntries: (_mod: DuckDBModule, _pathPtr: number, _pathLen: number): boolean => {\n return false;\n },\n glob: (_mod: DuckDBModule, _pathPtr: number, _pathLen: number): void => {},\n moveFile: (_mod: DuckDBModule, _fromPtr: number, _fromLen: number, _toPtr: number, _toLen: number): void => {},\n checkFile: (_mod: DuckDBModule, _pathPtr: number, _pathLen: number): boolean => {\n return false;\n },\n removeFile: (_mod: DuckDBModule, _pathPtr: number, _pathLen: number): void => {},\n callScalarUDF: (\n mod: DuckDBModule,\n response: number,\n funcId: number,\n descPtr: number,\n descSize: number,\n ptrsPtr: number,\n ptrsSize: number,\n ): void => {\n udf_rt.callScalarUDF(DEFAULT_RUNTIME, mod, response, funcId, descPtr, descSize, ptrsPtr, ptrsSize);\n },\n};\n", "import { StatusCode } from '../status';\nimport { addS3Headers, getHTTPUrl } from '../utils';\n\nimport {\n callSRet,\n dropResponseBuffers,\n DuckDBDataProtocol,\n DuckDBFileInfo,\n DuckDBGlobalFileInfo,\n DuckDBRuntime,\n failWith,\n FileFlags,\n readString,\n} from './runtime';\nimport { DuckDBModule } from './duckdb_module';\nimport * as udf from './udf_runtime';\n\nexport const BROWSER_RUNTIME: DuckDBRuntime & {\n _fileInfoCache: Map<number, DuckDBFileInfo>;\n _globalFileInfo: DuckDBGlobalFileInfo | null;\n\n getFileInfo(mod: DuckDBModule, fileId: number): DuckDBFileInfo | null;\n getGlobalFileInfo(mod: DuckDBModule): DuckDBGlobalFileInfo | null;\n} = {\n _files: new Map<string, any>(),\n _fileInfoCache: new Map<number, DuckDBFileInfo>(),\n _udfFunctions: new Map(),\n _globalFileInfo: null,\n\n getFileInfo(mod: DuckDBModule, fileId: number): DuckDBFileInfo | null {\n try {\n const cached = BROWSER_RUNTIME._fileInfoCache.get(fileId);\n const [s, d, n] = callSRet(\n mod,\n 'duckdb_web_fs_get_file_info_by_id',\n ['number', 'number'],\n [fileId, cached?.cacheEpoch || 0],\n );\n if (s !== StatusCode.SUCCESS) {\n return null;\n } else if (n === 0) {\n // Epoch is up to date\n return cached!;\n }\n const infoStr = readString(mod, d, n);\n dropResponseBuffers(mod);\n const info = JSON.parse(infoStr);\n if (info == null) {\n return null;\n }\n const file = { ...info, blob: null } as DuckDBFileInfo;\n BROWSER_RUNTIME._fileInfoCache.set(fileId, file);\n return file;\n } catch (e: any) {\n console.log(e);\n return null;\n }\n },\n\n getGlobalFileInfo(mod: DuckDBModule): DuckDBGlobalFileInfo | null {\n try {\n const [s, d, n] = callSRet(\n mod,\n 'duckdb_web_get_global_file_info',\n ['number'],\n [BROWSER_RUNTIME._globalFileInfo?.cacheEpoch || 0],\n );\n if (s !== StatusCode.SUCCESS) {\n return null;\n } else if (n === 0) {\n // Epoch is up to date\n return BROWSER_RUNTIME._globalFileInfo!;\n }\n const infoStr = readString(mod, d, n);\n dropResponseBuffers(mod);\n const info = JSON.parse(infoStr);\n if (info == null) {\n return null;\n }\n BROWSER_RUNTIME._globalFileInfo = { ...info, blob: null } as DuckDBGlobalFileInfo;\n\n return BROWSER_RUNTIME._globalFileInfo;\n } catch (e: any) {\n console.log(e);\n return null;\n }\n },\n\n testPlatformFeature: (_mod: DuckDBModule, feature: number): boolean => {\n switch (feature) {\n case 1:\n return typeof BigInt64Array !== 'undefined';\n default:\n console.warn(`test for unknown feature: ${feature}`);\n return false;\n }\n },\n\n getDefaultDataProtocol(mod: DuckDBModule): number {\n return DuckDBDataProtocol.BROWSER_FILEREADER;\n },\n\n openFile: (mod: DuckDBModule, fileId: number, flags: FileFlags): number => {\n try {\n BROWSER_RUNTIME._fileInfoCache.delete(fileId);\n const file = BROWSER_RUNTIME.getFileInfo(mod, fileId);\n switch (file?.dataProtocol) {\n case DuckDBDataProtocol.HTTP:\n case DuckDBDataProtocol.S3: {\n if (flags & FileFlags.FILE_FLAGS_READ && flags & FileFlags.FILE_FLAGS_WRITE) {\n throw new Error(\n `Opening file ${file.fileName} failed: cannot open file with both read and write flags set`,\n );\n } else if (flags & FileFlags.FILE_FLAGS_APPEND) {\n throw new Error(\n `Opening file ${file.fileName} failed: appending to HTTP/S3 files is not supported`,\n );\n } else if (flags & FileFlags.FILE_FLAGS_WRITE) {\n // We send a HEAD request to try to determine if we can write to data_url\n const xhr = new XMLHttpRequest();\n if (file.dataProtocol == DuckDBDataProtocol.S3) {\n xhr.open('HEAD', getHTTPUrl(file.s3Config, file.dataUrl!), false);\n addS3Headers(xhr, file.s3Config, file.dataUrl!, 'HEAD');\n } else {\n xhr.open('HEAD', file.dataUrl!, false);\n }\n xhr.send(null);\n\n // Expect 200 for existing files that we will overwrite or 404 for non-existent files can be created\n if (xhr.status != 200 && xhr.status != 404) {\n throw new Error(\n `Opening file ${file.fileName} failed: Unexpected return status from server (${xhr.status})`,\n );\n } else if (\n xhr.status == 404 &&\n !(flags & FileFlags.FILE_FLAGS_FILE_CREATE || flags & FileFlags.FILE_FLAGS_FILE_CREATE_NEW)\n ) {\n throw new Error(\n `Opening file ${file.fileName} failed: Cannot write to non-existent file without FILE_FLAGS_FILE_CREATE or FILE_FLAGS_FILE_CREATE_NEW flag.`,\n );\n }\n // Return an empty buffer that can be used to buffer the writes to this s3/http file\n const data = mod._malloc(1);\n const src = new Uint8Array();\n mod.HEAPU8.set(src, data);\n const result = mod._malloc(2 * 8);\n mod.HEAPF64[(result >> 3) + 0] = 1;\n mod.HEAPF64[(result >> 3) + 1] = data;\n return result;\n } else if (flags != FileFlags.FILE_FLAGS_READ) {\n throw new Error(`Opening file ${file.fileName} failed: unsupported file flags: ${flags}`);\n }\n\n // Supports ranges?\n let contentLength = null;\n let error: any | null = null;\n try {\n // Send a dummy HEAD request with range protocol\n // -> good IFF status is 206 and contentLenght is present\n const xhr = new XMLHttpRequest();\n if (file.dataProtocol == DuckDBDataProtocol.S3) {\n xhr.open('HEAD', getHTTPUrl(file.s3Config, file.dataUrl!), false);\n addS3Headers(xhr, file.s3Config, file.dataUrl!, 'HEAD');\n } else {\n xhr.open('HEAD', file.dataUrl!, false);\n }\n xhr.setRequestHeader('Range', `bytes=0-`);\n xhr.send(null);\n\n // Supports range requests\n contentLength = xhr.getResponseHeader('Content-Length');\n if (contentLength !== null && xhr.status == 206) {\n const result = mod._malloc(2 * 8);\n mod.HEAPF64[(result >> 3) + 0] = +contentLength;\n mod.HEAPF64[(result >> 3) + 1] = 0;\n return result;\n }\n } catch (e: any) {\n error = e;\n console.warn(`HEAD request with range header failed: ${e}`);\n }\n\n // Try to fallback to full read?\n if (file.allowFullHttpReads) {\n if ((contentLength !== null) && (+contentLength > 1)) {\n // 2. Send a dummy GET range request querying the first byte of the file\n // -> good IFF status is 206 and contentLenght2 is 1\n // -> otherwise, iff 200 and contentLenght2 == contentLenght\n // we just downloaded the file, save it and move further\n const xhr = new XMLHttpRequest();\n if (file.dataProtocol == DuckDBDataProtocol.S3) {\n xhr.open('GET', getHTTPUrl(file.s3Config, file.dataUrl!), false);\n addS3Headers(xhr, file.s3Config, file.dataUrl!, 'GET');\n } else {\n xhr.open('GET', file.dataUrl!, false);\n }\n xhr.responseType = 'arraybuffer';\n xhr.setRequestHeader('Range', `bytes=0-0`);\n xhr.send(null);\n const contentLength2 = xhr.getResponseHeader('Content-Length');\n\n if (xhr.status == 206 && contentLength2 !== null && +contentLength2 == 1) {\n const result = mod._malloc(2 * 8);\n mod.HEAPF64[(result >> 3) + 0] = +contentLength;\n mod.HEAPF64[(result >> 3) + 1] = 0;\n return result;\n }\n if (xhr.status == 200 && contentLength2 !== null && +contentLength2 == +contentLength) {\n console.warn(`fall back to full HTTP read for: ${file.dataUrl}`);\n const data = mod._malloc(xhr.response.byteLength);\n const src = new Uint8Array(xhr.response, 0, xhr.response.byteLength);\n mod.HEAPU8.set(src, data);\n const result = mod._malloc(2 * 8);\n mod.HEAPF64[(result >> 3) + 0] = xhr.response.byteLength;\n mod.HEAPF64[(result >> 3) + 1] = data;\n return result;\n }\n }\n console.warn(`falling back to full HTTP read for: ${file.dataUrl}`);\n // 3. Send non-range request\n const xhr = new XMLHttpRequest();\n if (file.dataProtocol == DuckDBDataProtocol.S3) {\n xhr.open('GET', getHTTPUrl(file.s3Config, file.dataUrl!), false);\n addS3Headers(xhr, file.s3Config, file.dataUrl!, 'GET');\n } else {\n xhr.open('GET', file.dataUrl!, false);\n }\n xhr.responseType = 'arraybuffer';\n xhr.send(null);\n\n // Return buffer\n if (xhr.status == 200) {\n const data = mod._malloc(xhr.response.byteLength);\n const src = new Uint8Array(xhr.response, 0, xhr.response.byteLength);\n mod.HEAPU8.set(src, data);\n const result = mod._malloc(2 * 8);\n mod.HEAPF64[(result >> 3) + 0] = xhr.response.byteLength;\n mod.HEAPF64[(result >> 3) + 1] = data;\n return result;\n }\n }\n\n // Raise error?\n if (error != null) {\n throw new Error(`Reading file ${file.fileName} failed with error: ${error}`);\n }\n return 0;\n }\n // File reader File\n case DuckDBDataProtocol.BROWSER_FILEREADER: {\n const handle = BROWSER_RUNTIME._files?.get(file.fileName);\n if (handle) {\n const result = mod._malloc(2 * 8);\n mod.HEAPF64[(result >> 3) + 0] = handle.size;\n mod.HEAPF64[(result >> 3) + 1] = 0;\n return result;\n }\n\n // Fall back to empty buffered file in the browser\n console.warn(`Buffering missing file: ${file.fileName}`);\n const result = mod._malloc(2 * 8);\n const buffer = mod._malloc(1); // malloc(0) is allowed to return a nullptr\n mod.HEAPF64[(result >> 3) + 0] = 1;\n mod.HEAPF64[(result >> 3) + 1] = buffer;\n return result;\n }\n }\n } catch (e: any) {\n // TODO (samansmink): this path causes the WASM code to hang\n console.error(e.toString());\n failWith(mod, e.toString());\n }\n return 0;\n },\n glob: (mod: DuckDBModule, pathPtr: number, pathLen: number) => {\n try {\n const path = readString(mod, pathPtr, pathLen);\n // Starts with http?\n // Try a HTTP HEAD request\n if (path.startsWith('http') || path.startsWith('s3://')) {\n // Send a dummy range request querying the first byte of the file\n const xhr = new XMLHttpRequest();\n if (path.startsWith('s3://')) {\n const globalInfo = BROWSER_RUNTIME.getGlobalFileInfo(mod);\n xhr.open('HEAD', getHTTPUrl(globalInfo?.s3Config, path), false);\n addS3Headers(xhr, globalInfo?.s3Config, path, 'HEAD');\n } else {\n xhr.open('HEAD', path!, false);\n }\n xhr.send(null);\n if (xhr.status != 200 && xhr.status !== 206) {\n // Pre-signed resources on S3 in common configurations fail on any HEAD request\n // https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/s3-example-presigned-urls.html\n // so we need (if enabled) to bump to a ranged GET\n if (!BROWSER_RUNTIME.getGlobalFileInfo(mod)?.allowFullHttpReads) {\n failWith(mod, `HEAD request failed: ${path}, with full http reads are disabled`);\n return;\n }\n const xhr2 = new XMLHttpRequest();\n if (path.startsWith('s3://')) {\n const globalInfo = BROWSER_RUNTIME.getGlobalFileInfo(mod);\n xhr2.open('GET', getHTTPUrl(globalInfo?.s3Config, path), false);\n addS3Headers(xhr2, globalInfo?.s3Config, path, 'HEAD');\n } else {\n xhr2.open('GET', path!, false);\n }\n xhr2.setRequestHeader('Range', `bytes=0-0`);\n xhr2.send(null);\n if (xhr2.status != 200 && xhr2.status !== 206) {\n failWith(mod, `HEAD and GET requests failed: ${path}`);\n return;\n }\n const contentLength = xhr2.getResponseHeader('Content-Length');\n if (contentLength && (+contentLength > 1)) {\n console.warn(`Range request for ${path} did not return a partial response: ${xhr2.status} \"${xhr2.statusText}\"`);\n }\n }\n mod.ccall('duckdb_web_fs_glob_add_path', null, ['string'], [path]);\n }\n } catch (e: any) {\n console.log(e);\n failWith(mod, e.toString());\n return 0;\n }\n },\n checkFile: (mod: DuckDBModule, pathPtr: number, pathLen: number): boolean => {\n try {\n const path = readString(mod, pathPtr, pathLen);\n // Starts with http or S3?\n // Try a HTTP HEAD request\n if (path.startsWith('http') || path.startsWith('s3://')) {\n // Send a dummy range request querying the first byte of the file\n const xhr = new XMLHttpRequest();\n if (path.startsWith('s3://')) {\n const globalInfo = BROWSER_RUNTIME.getGlobalFileInfo(mod);\n xhr.open('HEAD', getHTTPUrl(globalInfo?.s3Config, path), false);\n addS3Headers(xhr, globalInfo?.s3Config, path, 'HEAD');\n } else {\n xhr.open('HEAD', path!, false);\n }\n xhr.send(null);\n return xhr.status == 206 || xhr.status == 200;\n }\n } catch (e: any) {\n console.log(e);\n return false;\n }\n return false;\n },\n syncFile: (_mod: DuckDBModule, _fileId: number) => {},\n closeFile: (mod: DuckDBModule, fileId: number) => {\n const file = BROWSER_RUNTIME.getFileInfo(mod, fileId);\n BROWSER_RUNTIME._fileInfoCache.delete(fileId);\n switch (file?.dataProtocol) {\n case DuckDBDataProtocol.BUFFER:\n case DuckDBDataProtocol.HTTP:\n case DuckDBDataProtocol.S3:\n break;\n case DuckDBDataProtocol.NODE_FS:\n case DuckDBDataProtocol.BROWSER_FILEREADER:\n // XXX Remove from registry\n return;\n case DuckDBDataProtocol.BROWSER_FSACCESS: {\n const handle = BROWSER_RUNTIME._files?.get(file.fileName);\n if (!handle) {\n throw new Error(`No OPFS access handle registered with name: ${file.fileName}`);\n }\n return handle.flush();\n }\n }\n },\n truncateFile: (mod: DuckDBModule, fileId: number, newSize: number) => {\n const file = BROWSER_RUNTIME.getFileInfo(mod, fileId);\n switch (file?.dataProtocol) {\n case DuckDBDataProtocol.HTTP:\n failWith(mod, `Cannot truncate a http file`);\n return;\n case DuckDBDataProtocol.S3:\n failWith(mod, `Cannot truncate an s3 file`);\n return;\n case DuckDBDataProtocol.BUFFER:\n case DuckDBDataProtocol.NODE_FS:\n case DuckDBDataProtocol.BROWSER_FILEREADER:\n failWith(mod, `truncateFile not implemented`);\n return;\n case DuckDBDataProtocol.BROWSER_FSACCESS: {\n const handle = BROWSER_RUNTIME._files?.get(file.fileName);\n if (!handle) {\n throw new Error(`No OPFS access handle registered with name: ${file.fileName}`);\n }\n return handle.truncate(newSize);\n }\n }\n return 0;\n },\n readFile(mod: DuckDBModule, fileId: number, buf: number, bytes: number, location: number) {\n if (bytes == 0) {\n // Be robust to empty reads\n return 0;\n }\n try {\n const file = BROWSER_RUNTIME.getFileInfo(mod, fileId);\n switch (file?.dataProtocol) {\n // File reading from BLOB or HTTP MUST be done with range requests.\n // We have to check in OPEN if such file supports range requests and upgrade to BUFFER if not.\n case DuckDBDataProtocol.HTTP:\n case DuckDBDataProtocol.S3: {\n if (!file.dataUrl) {\n throw new Error(`Missing data URL for file ${fileId}`);\n }\n try {\n const xhr = new XMLHttpRequest();\n if (file.dataProtocol == DuckDBDataProtocol.S3) {\n xhr.open('GET', getHTTPUrl(file?.s3Config, file.dataUrl!), false);\n addS3Headers(xhr, file?.s3Config, file.dataUrl!, 'GET');\n } else {\n xhr.open('GET', file.dataUrl!, false);\n }\n xhr.responseType = 'arraybuffer';\n xhr.setRequestHeader('Range', `bytes=${location}-${location + bytes - 1}`);\n xhr.send(null);\n if (\n xhr.status == 206 /* Partial content */ ||\n (xhr.status == 200 && bytes == xhr.response.byteLength && location == 0)\n ) {\n const src = new Uint8Array(xhr.response, 0, Math.min(xhr.response.byteLength, bytes));\n mod.HEAPU8.set(src, buf);\n return src.byteLength;\n } else if (xhr.status == 200) {\n // TODO: here we are actually throwing away all non-relevant bytes, but this is still better than failing\n // proper solution would require notifying duckdb-wasm cache, while we are piggybackign on browser cache\n console.warn(`Range request for ${file.dataUrl} did not return a partial response: ${xhr.status} \"${xhr.statusText}\"`);\n const src = new Uint8Array(xhr.response, location, Math.min(xhr.response.byteLength-location, bytes));\n mod.HEAPU8.set(src, buf);\n return src.byteLength;\n } else {\n throw new Error(\n `Range request for ${file.dataUrl} did returned non-success status: ${xhr.status} \"${xhr.statusText}\"`,\n );\n }\n } catch (e) {\n console.log(e);\n throw new Error(`Range request for ${file.dataUrl} failed with error: ${e}\"`);\n }\n }\n case DuckDBDataProtocol.BROWSER_FILEREADER: {\n const handle = BROWSER_RUNTIME._files?.get(file.fileName);\n if (!handle) {\n throw new Error(`No HTML5 file registered with name: ${file.fileName}`);\n }\n const sliced = handle!.slice(location, location + bytes);\n const data = new Uint8Array(new FileReaderSync().readAsArrayBuffer(sliced));\n mod.HEAPU8.set(data, buf);\n return data.byteLength;\n }\n case DuckDBDataProtocol.BROWSER_FSACCESS: {\n const handle = BROWSER_RUNTIME._files?.get(file.fileName);\n if (!handle) {\n throw new Error(`No OPFS access handle registered with name: ${file.fileName}`);\n }\n const out = mod.HEAPU8.subarray(buf, buf + bytes);\n return handle.read(out, { at: location });\n }\n }\n return 0;\n } catch (e: any) {\n console.log(e);\n failWith(mod, e.toString());\n return 0;\n }\n },\n writeFile: (mod: DuckDBModule, fileId: number, buf: number, bytes: number, location: number) => {\n const file = BROWSER_RUNTIME.getFileInfo(mod, fileId);\n switch (file?.dataProtocol) {\n case DuckDBDataProtocol.HTTP:\n failWith(mod, 'Cannot write to HTTP file');\n return 0;\n case DuckDBDataProtocol.S3: {\n const buffer = mod.HEAPU8.subarray(buf, buf + bytes);\n const xhr = new XMLHttpRequest();\n xhr.open('PUT', getHTTPUrl(file?.s3Config, file.dataUrl!), false);\n addS3Headers(xhr, file?.s3Config, file.dataUrl!, 'PUT', '', buffer);\n xhr.send(buffer);\n if (xhr.status !== 200) {\n failWith(mod, 'Failed writing file: HTTP ' + xhr.status);\n return 0;\n }\n return bytes;\n }\n case DuckDBDataProtocol.BROWSER_FILEREADER:\n failWith(mod, 'cannot write using the html5 file reader api');\n return 0;\n case DuckDBDataProtocol.BROWSER_FSACCESS: {\n const handle = BROWSER_RUNTIME._files?.get(file.fileName);\n if (!handle) {\n throw new Error(`No OPFS access handle registered with name: ${file.fileName}`);\n }\n const input = mod.HEAPU8.subarray(buf, buf + bytes);\n return handle.write(input, { at: location });\n }\n }\n return 0;\n },\n getLastFileModificationTime: (mod: DuckDBModule, fileId: number) => {\n const file = BROWSER_RUNTIME.getFileInfo(mod, fileId);\n switch (file?.dataProtocol) {\n case DuckDBDataProtocol.BROWSER_FILEREADER: {\n const handle = BROWSER_RUNTIME._files?.get(file.fileName);\n if (!handle) {\n throw Error(`No handle available for file: ${file.fileName}`);\n }\n return 0;\n }\n\n case DuckDBDataProtocol.HTTP:\n case DuckDBDataProtocol.S3:\n return new Date().getTime();\n }\n return 0;\n },\n checkDirectory: (mod: DuckDBModule, pathPtr: number, pathLen: number) => {\n const path = readString(mod, pathPtr, pathLen);\n console.log(`checkDirectory: ${path}`);\n return false;\n },\n createDirectory: (mod: DuckDBModule, pathPtr: number, pathLen: number) => {\n const path = readString(mod, pathPtr, pathLen);\n console.log(`createDirectory: ${path}`);\n },\n removeDirectory: (mod: DuckDBModule, pathPtr: number, pathLen: number) => {\n const path = readString(mod, pathPtr, pathLen);\n console.log(`removeDirectory: ${path}`);\n },\n listDirectoryEntries: (mod: DuckDBModule, pathPtr: number, pathLen: number) => {\n const path = readString(mod, pathPtr, pathLen);\n console.log(`listDirectoryEntries: ${path}`);\n return false;\n },\n moveFile: (mod: DuckDBModule, fromPtr: number, fromLen: number, toPtr: number, toLen: number) => {\n const from = readString(mod, fromPtr, fromLen);\n const to = readString(mod, toPtr, toLen);\n const handle = BROWSER_RUNTIME._files?.get(from);\n if (handle !== undefined) {\n BROWSER_RUNTIME._files!.delete(handle);\n BROWSER_RUNTIME._files!.set(to, handle);\n }\n for (const [key, value] of BROWSER_RUNTIME._fileInfoCache?.entries() || []) {\n if (value.dataUrl == from) {\n BROWSER_RUNTIME._fileInfoCache.delete(key);\n break;\n }\n }\n return true;\n },\n removeFile: (_mod: DuckDBModule, _pathPtr: number, _pathLen: number) => {},\n callScalarUDF: (\n mod: DuckDBModule,\n response: number,\n funcId: number,\n descPtr: number,\n descSize: number,\n ptrsPtr: number,\n ptrsSize: number,\n ): void => {\n udf.callScalarUDF(BROWSER_RUNTIME, mod, response, funcId, descPtr, descSize, ptrsPtr, ptrsSize);\n },\n};\n\nexport default BROWSER_RUNTIME;\n"],
5
+ "mappings": "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",
6
+ "names": ["require_duckdb_coi", "__commonJSMin", "exports", "module", "DuckDB", "_scriptDir", "moduleArg", "GROWABLE_HEAP_I8", "wasmMemory", "HEAP8", "updateMemoryViews", "GROWABLE_HEAP_U8", "HEAPU8", "GROWABLE_HEAP_I16", "HEAP16", "GROWABLE_HEAP_U16", "HEAPU16", "GROWABLE_HEAP_I32", "HEAP32", "GROWABLE_HEAP_U32", "HEAPU32", "GROWABLE_HEAP_F64", "HEAPF64", "Module", "readyPromiseResolve", "readyPromiseReject", "resolve", "reject", "moduleOverrides", "arguments_", "thisProgram", "quit_", "status", "toThrow", "ENVIRONMENT_IS_WEB", "ENVIRONMENT_IS_WORKER", "ENVIRONMENT_IS_NODE", "ENVIRONMENT_IS_PTHREAD", "scriptDirectory", "locateFile", "path", "read_", "readAsync", "readBinary", "fs", "nodePath", "filename", "binary", "isFileURI", "ret", "onload", "onerror", "err", "data", "nodeWorkerThreads", "e", "url", "xhr", "defaultPrint", "defaultPrintErr", "args", "out", "wasmBinary", "abort", "wasmModule", "ABORT", "EXITSTATUS", "assert", "condition", "text", "HEAPF32", "b", "INITIAL_MEMORY", "__ATPRERUN__", "__ATINIT__", "__ATMAIN__", "__ATPOSTRUN__", "runtimeInitialized", "preRun", "addOnPreRun", "callRuntimeCallbacks", "initRuntime", "preMain", "postRun", "addOnPostRun", "cb", "addOnInit", "runDependencies", "runDependencyWatcher", "dependenciesFulfilled", "addRunDependency", "id", "removeRunDependency", "callback", "what", "___trap", "dataURIPrefix", "isDataURI", "wasmBinaryFile", "getBinarySync", "file", "getBinaryPromise", "binaryFile", "response", "instantiateArrayBuffer", "imports", "receiver", "instance", "reason", "instantiateAsync", "result", "createWasm", "info", "wasmImports", "receiveInstance", "wasmExports", "applySignatureConversions", "registerTLSInit", "wasmTable", "receiveInstantiationResult", "tempDouble", "tempI64", "ExitStatus", "terminateWorker", "worker", "killThread", "pthread_ptr", "PThread", "__emscripten_thread_free_data", "cancelThread", "cleanupThread", "zeroMemory", "address", "size", "spawnThread", "threadParams", "msg", "runtimeKeepaliveCounter", "keepRuntimeAlive", "noExitRuntime", "UTF8Decoder", "UTF8ArrayToString", "heapOrArray", "idx", "maxBytesToRead", "endIdx", "endPtr", "str", "u0", "u1", "u2", "ch", "UTF8ToString", "ptr", "SYSCALLS", "_proc_exit", "code", "proxyToMainThread", "exitJS", "implicit", "exitOnMainThread", "_exit", "handleException", "pthreadPoolSize", "f", "onFinishedLoading", "d", "cmd", "_pthread_self", "targetWorker", "checkMailbox", "message", "handlers", "knownHandlers", "handler", "onMaybeReady", "pthreadMainJs", "callbacks", "establishStackSpace", "stackHigh", "stackSize", "stackLow", "_emscripten_stack_set_limits", "stackRestore", "returnCode", "wasmTableMirror", "getWasmTableEntry", "funcPtr", "func", "invokeEntryPoint", "arg", "finish", "__emscripten_thread_exit", "tlsInitFunc", "convertI32PairToI53Checked", "lo", "hi", "___emscripten_init_main_thread_js", "tb", "__emscripten_thread_init", "___emscripten_thread_cleanup", "thread", "pthreadCreateProxied", "attr", "startRoutine", "___pthread_create_js", "transferList", "error", "___syscall__newselect", "nfds", "readfds", "writefds", "exceptfds", "timeout", "total", "srcReadLow", "srcReadHigh", "srcWriteLow", "srcWriteHigh", "srcExceptLow", "srcExceptHigh", "dstReadLow", "dstReadHigh", "dstWriteLow", "dstWriteHigh", "dstExceptLow", "dstExceptHigh", "allLow", "allHigh", "check", "fd", "low", "high", "val", "mask", "stream", "flags", "timeoutInMillis", "tv_sec", "tv_usec", "SOCKFS", "FS", "getSocketFromFD", "socket", "inetNtop4", "addr", "inetNtop6", "ints", "word", "longest", "lastzero", "zstart", "len", "i", "parts", "hasipv4", "v4part", "_ntohs", "readSockaddr", "sa", "salen", "family", "port", "inetPton4", "tmp", "jstoi_q", "inetPton6", "words", "w", "offset", "z", "valid6regx", "_htons", "DNS", "name", "res", "getSocketAddress", "addrp", "addrlen", "allowNull", "___syscall_bind", "d1", "d2", "d3", "sock", "___syscall_connect", "___syscall_faccessat", "dirfd", "amode", "___syscall_fcntl64", "varargs", "___syscall_fstat64", "buf", "___syscall_ftruncate64", "length_low", "length_high", "length", "stringToUTF8Array", "heap", "outIdx", "maxBytesToWrite", "startIdx", "u", "stringToUTF8", "outPtr", "___syscall_getdents64", "dirp", "count", "writeSockaddr", "___syscall_getpeername", "errno", "___syscall_getsockopt", "level", "optname", "optval", "optlen", "___syscall_ioctl", "op", "___syscall_lstat64", "___syscall_mkdirat", "mode", "___syscall_newfstatat", "___syscall_openat", "___syscall_recvfrom", "___syscall_renameat", "olddirfd", "oldpath", "newdirfd", "newpath", "___syscall_rmdir", "___syscall_sendto", "addr_len", "___syscall_socket", "domain", "type", "protocol", "___syscall_stat64", "___syscall_unlinkat", "nowIsMonotonic", "__emscripten_get_now_is_monotonic", "maybeExit", "callUserCallback", "__emscripten_thread_mailbox_await", "wait", "waitingAsync", "__emscripten_check_mailbox", "__emscripten_notify_mailbox_postmessage", "targetThreadId", "currThreadId", "mainThreadId", "withStackSave", "stack", "stackSave", "index", "sync", "numCallArgs", "outerArgs", "serializedNumCallArgs", "stackAlloc", "__emscripten_run_on_main_thread_js", "proxiedJSCallArgs", "__emscripten_receive_on_main_thread_js", "callingThread", "proxiedFunctionTable", "rtn", "__emscripten_thread_set_strongref", "_abort", "_duckdb_web_fs_directory_create", "pathLen", "_duckdb_web_fs_directory_exists", "_duckdb_web_fs_directory_list_files", "_duckdb_web_fs_directory_remove", "_duckdb_web_fs_file_close", "fileId", "_duckdb_web_fs_file_exists", "_duckdb_web_fs_file_get_last_modified_time", "_duckdb_web_fs_file_move", "from", "fromLen", "to", "toLen", "_duckdb_web_fs_file_open", "_duckdb_web_fs_file_read", "location", "_duckdb_web_fs_file_truncate", "newSize", "_duckdb_web_fs_file_write", "_duckdb_web_fs_get_default_data_protocol", "_duckdb_web_fs_glob", "_duckdb_web_test_platform_feature", "feature", "_duckdb_web_udf_scalar_call", "funcId", "descPtr", "descSize", "ptrsPtr", "ptrsSize", "warnOnce", "_emscripten_check_blocking_allowed", "_emscripten_date_now", "runtimeKeepalivePush", "_emscripten_exit_with_live_runtime", "getHeapMax", "_emscripten_get_heap_max", "_emscripten_get_now", "_emscripten_num_logical_cores", "growMemory", "pages", "_emscripten_resize_heap", "requestedSize", "oldSize", "maxHeapSize", "alignUp", "x", "multiple", "cutDown", "overGrownHeapSize", "replacement", "ENV", "getExecutableName", "getEnvStrings", "lang", "env", "strings", "stringToAscii", "buffer", "_environ_get", "__environ", "environ_buf", "bufSize", "string", "_environ_sizes_get", "penviron_count", "penviron_buf_size", "_fd_close", "_fd_fdstat_get", "pbuf", "rightsBase", "rightsInheriting", "_fd_pread", "iov", "iovcnt", "offset_low", "offset_high", "pnum", "_fd_pwrite", "_fd_read", "_fd_seek", "whence", "newOffset", "_fd_sync", "printCharBuffers", "printChar", "curr", "_fd_write", "num", "j", "_getaddrinfo", "node", "service", "hint", "proto", "ai", "allocaddrinfo", "canon", "_malloc", "_htonl", "initRandomFill", "view", "crypto_module", "randomFillSync", "randomBytes", "randomFill", "_getentropy", "_getnameinfo", "nodelen", "serv", "servlen", "overflowed", "lookup", "numBytesWrittenExclNull", "isLeapYear", "year", "arraySum", "array", "sum", "MONTH_DAYS_LEAP", "MONTH_DAYS_REGULAR", "addDays", "date", "days", "newDate", "leap", "currentMonth", "daysInCurrentMonth", "lengthBytesUTF8", "c", "intArrayFromString", "stringy", "dontAddNull", "u8array", "numBytesWritten", "writeArrayToMemory", "_strftime", "s", "maxsize", "format", "tm", "tm_zone", "pattern", "EXPANSION_RULES_1", "rule", "WEEKDAYS", "MONTHS", "leadingSomething", "value", "digits", "character", "leadingNulls", "compareByDay", "date1", "date2", "sgn", "compare", "getFirstWeekStartDate", "janFourth", "getWeekBasedYear", "thisDate", "janFourthThisYear", "janFourthNextYear", "firstWeekStartThisYear", "firstWeekStartNextYear", "EXPANSION_RULES_2", "twelveHour", "jan1", "dec31", "off", "ahead", "bytes", "_strftime_l", "loc", "getCFunc", "ident", "stringToUTF8OnStack", "ccall", "returnType", "argTypes", "opts", "toC", "arr", "convertReturnValue", "cArgs", "converter", "onDone", "___wasm_call_ctors", "_main", "a0", "a1", "_duckdb_web_fs_glob_add_path", "_duckdb_web_clear_response", "_duckdb_web_fail_with", "_duckdb_web_reset", "_duckdb_web_connect", "_duckdb_web_disconnect", "_duckdb_web_flush_files", "_duckdb_web_flush_file", "_duckdb_web_open", "_duckdb_web_get_global_file_info", "_duckdb_web_collect_file_stats", "a2", "_duckdb_web_export_file_stats", "_duckdb_web_fs_drop_file", "_duckdb_web_fs_drop_files", "_duckdb_web_fs_glob_file_infos", "_duckdb_web_fs_get_file_info_by_id", "_duckdb_web_fs_get_file_info_by_name", "_duckdb_web_fs_register_file_url", "a3", "a4", "_duckdb_web_fs_register_file_buffer", "_duckdb_web_copy_file_to_buffer", "_duckdb_web_copy_file_to_path", "_duckdb_web_get_version", "_duckdb_web_get_feature_flags", "_duckdb_web_tokenize", "_duckdb_web_udf_scalar_create", "_duckdb_web_prepared_create", "_duckdb_web_prepared_close", "_duckdb_web_prepared_run", "_duckdb_web_prepared_send", "_duckdb_web_query_run", "_duckdb_web_pending_query_start", "_duckdb_web_pending_query_poll", "_duckdb_web_pending_query_cancel", "_duckdb_web_query_fetch_results", "_duckdb_web_get_tablenames", "_duckdb_web_insert_arrow_from_ipc_stream", "_duckdb_web_insert_csv_from_path", "_duckdb_web_insert_json_from_path", "__emscripten_tls_init", "___errno_location", "a5", "__emscripten_thread_crashed", "_emscripten_main_runtime_thread_id", "_emscripten_main_thread_process_queued_calls", "_free", "makeWrapper_p", "makeWrapper_pp", "calledRun", "runCaller", "run", "callMain", "entryFunction", "argc", "argv", "doRun", "shouldRunNow", "require_sha256", "__commonJSMin", "obj", "outputType", "is224", "message", "method", "i", "type", "key", "sharedMemory", "notString", "code", "index", "length", "blocks", "a", "b", "c", "d", "e", "f", "g", "h", "j", "s0", "s1", "maj", "t1", "t2", "ch", "ab", "da", "cd", "bc", "h0", "h1", "h2", "h3", "h4", "h5", "h6", "h7", "hex", "arr", "buffer", "dataView", "bytes", "oKeyPad", "iKeyPad", "innerHash", "Module", "ENVIRONMENT_IS_NODE", "nodeWorkerThreads", "parentPort", "data", "onmessage", "fs", "__require", "f", "msg", "initializedJS", "threadPrintErr", "text", "threadAlert", "err", "info", "receiveInstance", "module", "instance", "e", "handleMessage", "messageQueue", "handler", "args", "objectUrl", "ex", "getModule", "setModule", "m", "import_duckdb_coi", "import_js_sha256", "getHTTPHost", "config", "url", "bucket", "_a", "httpHost", "offset", "getS3Params", "method", "_b", "_c", "_d", "parsedS3Url", "parseS3Url", "path", "isPathStyleAccess", "uriEncode", "input", "encode_slash", "hexDigit", "result", "i", "ch", "createS3Headers", "params", "payloadParams", "payloadHash", "res", "signedHeaders", "canonicalRequest", "canonicalRequestHashStr", "stringToSign", "signKey", "kDate", "kRegion", "kService", "signingKey", "signature", "createS3HeadersFromS3Config", "contentType", "payload", "addS3Headers", "xhr", "value", "header", "slashPos", "getHTTPUrl", "parsedUrl", "TEXT_ENCODER", "TEXT_DECODER", "storeError", "mod", "response", "message", "msgBuffer", "heapAddr", "heapArray", "getTypeSize", "ptype", "ptrToArray", "ptr", "n", "heap", "ptrToUint8Array", "ptrToFloat64Array", "callScalarUDF", "runtime", "funcId", "descPtr", "descSize", "ptrsPtr", "ptrsSize", "udf", "rawDesc", "desc", "ptrs", "buildResolver", "arg", "_a", "validity", "raw", "strings", "stringLengths", "j", "subarray", "str", "row", "tmp", "children", "attr", "child", "resolver", "data", "argResolvers", "i", "resultDataLen", "resultDataPtr", "resultData", "resultValidityPtr", "resultValidity", "rawResultData", "args", "res", "resultLengthsPtr", "resultDataUTF8", "resultLengths", "totalLength", "utf8", "resultStringPtr", "resultStringBuf", "writerOffset", "resultUTF8", "retLen", "retPtr", "retBuffer", "e", "TextDecoderWrapper", "decoder", "data", "decodeText", "failWith", "mod", "msg", "readString", "mod", "begin", "length", "decodeText", "callSRet", "mod", "funcName", "argTypes", "args", "stackPointer", "response", "status", "data", "dataSize", "dropResponseBuffers", "BROWSER_RUNTIME", "mod", "fileId", "cached", "s", "d", "n", "callSRet", "infoStr", "readString", "dropResponseBuffers", "info", "file", "e", "_a", "_mod", "feature", "flags", "xhr", "getHTTPUrl", "addS3Headers", "data", "src", "result", "contentLength", "error", "contentLength2", "handle", "buffer", "failWith", "pathPtr", "pathLen", "path", "globalInfo", "xhr2", "_fileId", "newSize", "buf", "bytes", "location", "_b", "sliced", "out", "input", "fromPtr", "fromLen", "toPtr", "toLen", "from", "to", "key", "value", "_pathPtr", "_pathLen", "response", "funcId", "descPtr", "descSize", "ptrsPtr", "ptrsSize", "callScalarUDF", "func", "BROWSER_RUNTIME", "e", "m", "getModule", "DuckDB", "instance", "setModule", "key", "onmessage"]
7
7
  }