@pbk20191/icodec 0.7.0 → 0.9.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 (68) hide show
  1. package/README.md +68 -50
  2. package/dist/avif-dec.d.ts +14 -0
  3. package/dist/avif-dec.js +296 -2
  4. package/dist/avif-dec.wasm +0 -0
  5. package/dist/avif-enc.d.ts +30 -0
  6. package/dist/avif-enc.js +298 -2
  7. package/dist/avif-enc.wasm +0 -0
  8. package/dist/heic-dec.d.ts +14 -0
  9. package/dist/heic-dec.js +317 -2
  10. package/dist/heic-dec.wasm +0 -0
  11. package/dist/heic-enc.d.ts +26 -0
  12. package/dist/heic-enc.js +364 -2
  13. package/dist/heic-enc.wasm +0 -0
  14. package/dist/jxl-dec.d.ts +14 -0
  15. package/dist/jxl-dec.js +296 -2
  16. package/dist/jxl-dec.wasm +0 -0
  17. package/dist/jxl-enc.d.ts +37 -0
  18. package/dist/jxl-enc.js +298 -2
  19. package/dist/jxl-enc.wasm +0 -0
  20. package/dist/mozjpeg.d.ts +34 -0
  21. package/dist/mozjpeg.js +298 -2
  22. package/dist/mozjpeg.wasm +0 -0
  23. package/dist/pngquant.d.ts +48 -0
  24. package/dist/pngquant.js +242 -258
  25. package/dist/pngquant_bg.wasm +0 -0
  26. package/dist/qoi.d.ts +15 -0
  27. package/dist/qoi.js +296 -2
  28. package/dist/qoi.wasm +0 -0
  29. package/dist/vvic-dec.d.ts +14 -0
  30. package/dist/vvic-dec.js +327 -0
  31. package/dist/vvic-dec.wasm +0 -0
  32. package/dist/vvic-enc.d.ts +20 -0
  33. package/dist/vvic-enc.js +343 -0
  34. package/dist/vvic-enc.wasm +0 -0
  35. package/dist/webp-dec.d.ts +14 -0
  36. package/dist/webp-dec.js +296 -2
  37. package/dist/webp-dec.wasm +0 -0
  38. package/dist/webp-enc.d.ts +50 -0
  39. package/dist/webp-enc.js +301 -2
  40. package/dist/webp-enc.wasm +0 -0
  41. package/dist/wp2-dec.d.ts +14 -0
  42. package/dist/wp2-dec.js +296 -2
  43. package/dist/wp2-dec.wasm +0 -0
  44. package/dist/wp2-enc.d.ts +27 -0
  45. package/dist/wp2-enc.js +298 -2
  46. package/dist/wp2-enc.wasm +0 -0
  47. package/lib/avif.d.ts +5 -3
  48. package/lib/common.d.ts +4 -1
  49. package/lib/common.js +10 -3
  50. package/lib/heic.d.ts +3 -3
  51. package/lib/index.d.ts +10 -9
  52. package/lib/index.js +1 -0
  53. package/lib/jpeg.d.ts +4 -2
  54. package/lib/jpeg.js +4 -0
  55. package/lib/jxl.d.ts +3 -3
  56. package/lib/node.d.ts +16 -0
  57. package/lib/node.js +31 -37
  58. package/lib/png.d.ts +3 -3
  59. package/lib/qoi.d.ts +4 -3
  60. package/lib/qoi.js +2 -1
  61. package/lib/vvic.d.ts +25 -0
  62. package/lib/vvic.js +30 -0
  63. package/lib/webp.d.ts +5 -4
  64. package/lib/wp2.d.ts +4 -3
  65. package/lib/wp2.js +1 -0
  66. package/package.json +15 -8
  67. package/types/wasm_type.d.ts +57 -0
  68. package/versions.json +1 -1
package/dist/heic-enc.js CHANGED
@@ -1,2 +1,364 @@
1
- async function Module(moduleArg={}){var moduleRtn;var Module=moduleArg;var ENVIRONMENT_IS_WEB=!!globalThis.window;var ENVIRONMENT_IS_WORKER=!!globalThis.WorkerGlobalScope;var ENVIRONMENT_IS_NODE=globalThis.process?.versions?.node&&globalThis.process?.type!="renderer";if(ENVIRONMENT_IS_NODE){const{createRequire}=await import("node:module");var require=createRequire(import.meta.url)}var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var _scriptName=import.meta.url;var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var readAsync,readBinary;if(ENVIRONMENT_IS_NODE){var fs=require("node:fs");if(_scriptName.startsWith("file:")){scriptDirectory=require("node:path").dirname(require("node:url").fileURLToPath(_scriptName))+"/"}readBinary=filename=>{filename=isFileURI(filename)?new URL(filename):filename;var ret=fs.readFileSync(filename);return ret};readAsync=async(filename,binary=true)=>{filename=isFileURI(filename)?new URL(filename):filename;var ret=fs.readFileSync(filename,binary?undefined:"utf8");return ret};if(process.argv.length>1){thisProgram=process.argv[1].replace(/\\/g,"/")}arguments_=process.argv.slice(2);quit_=(status,toThrow)=>{process.exitCode=status;throw toThrow}}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){try{scriptDirectory=new URL(".",_scriptName).href}catch{}{if(ENVIRONMENT_IS_WORKER){readBinary=url=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=async url=>{var response=await fetch(url,{credentials:"same-origin"});if(response.ok){return response.arrayBuffer()}throw new Error(response.status+" : "+response.url)}}}else{}var out=console.log.bind(console);var err=console.error.bind(console);var wasmBinary;var ABORT=false;var EXITSTATUS;var isFileURI=filename=>filename.startsWith("file://");var readyPromiseResolve,readyPromiseReject;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;var HEAP64,HEAPU64;var runtimeInitialized=false;function updateMemoryViews(){var b=wasmMemory.buffer;HEAP8=new Int8Array(b);HEAP16=new Int16Array(b);HEAPU8=new Uint8Array(b);HEAPU16=new Uint16Array(b);HEAP32=new Int32Array(b);HEAPU32=new Uint32Array(b);HEAPF32=new Float32Array(b);HEAPF64=new Float64Array(b);HEAP64=new BigInt64Array(b);HEAPU64=new BigUint64Array(b)}function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(onPreRuns)}function initRuntime(){runtimeInitialized=true;wasmExports["V"]()}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(onPostRuns)}function abort(what){Module["onAbort"]?.(what);what="Aborted("+what+")";err(what);ABORT=true;what+=". Build with -sASSERTIONS for more info.";var e=new WebAssembly.RuntimeError(what);readyPromiseReject?.(e);throw e}var wasmBinaryFile;function findWasmBinary(){if(Module["locateFile"]){return locateFile("heic-enc.wasm")}return new URL("heic-enc.wasm",import.meta.url).href}function getBinarySync(file){if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(file)}throw"both async and sync fetching of the wasm failed"}async function getWasmBinary(binaryFile){if(!wasmBinary){try{var response=await readAsync(binaryFile);return new Uint8Array(response)}catch{}}return getBinarySync(binaryFile)}async function instantiateArrayBuffer(binaryFile,imports){try{var binary=await getWasmBinary(binaryFile);var instance=await WebAssembly.instantiate(binary,imports);return instance}catch(reason){err(`failed to asynchronously prepare wasm: ${reason}`);abort(reason)}}async function instantiateAsync(binary,binaryFile,imports){if(!binary&&!ENVIRONMENT_IS_NODE){try{var response=fetch(binaryFile,{credentials:"same-origin"});var instantiationResult=await WebAssembly.instantiateStreaming(response,imports);return instantiationResult}catch(reason){err(`wasm streaming compile failed: ${reason}`);err("falling back to ArrayBuffer instantiation")}}return instantiateArrayBuffer(binaryFile,imports)}function getWasmImports(){var imports={a:wasmImports};return imports}async function createWasm(){function receiveInstance(instance,module){wasmExports=instance.exports;wasmExports=Asyncify.instrumentWasmExports(wasmExports);wasmExports=applySignatureConversions(wasmExports);assignWasmExports(wasmExports);updateMemoryViews();return wasmExports}function receiveInstantiationResult(result){return receiveInstance(result["instance"])}var info=getWasmImports();if(Module["instantiateWasm"]){return new Promise((resolve,reject)=>{Module["instantiateWasm"](info,(inst,mod)=>{resolve(receiveInstance(inst,mod))})})}wasmBinaryFile??=findWasmBinary();var result=await instantiateAsync(wasmBinary,wasmBinaryFile,info);var exports=receiveInstantiationResult(result);return exports}var compilerSettings={ASSERTIONS:0,STACK_OVERFLOW_CHECK:0,CHECK_NULL_WRITES:true,VERBOSE:false,INVOKE_RUN:true,EXIT_RUNTIME:false,STACK_SIZE:2097152,MALLOC:"dlmalloc",ABORTING_MALLOC:0,INITIAL_HEAP:16777216,INITIAL_MEMORY:-1,MAXIMUM_MEMORY:2147483648,ALLOW_MEMORY_GROWTH:1,MEMORY_GROWTH_GEOMETRIC_STEP:.2,MEMORY_GROWTH_GEOMETRIC_CAP:100663296,MEMORY_GROWTH_LINEAR_STEP:-1,MEMORY64:1,INITIAL_TABLE:-1,ALLOW_TABLE_GROWTH:false,GLOBAL_BASE:1024,TABLE_BASE:1,USE_CLOSURE_COMPILER:false,CLOSURE_WARNINGS:"quiet",IGNORE_CLOSURE_COMPILER_ERRORS:false,DECLARE_ASM_MODULE_EXPORTS:true,INLINING_LIMIT:false,SUPPORT_BIG_ENDIAN:false,SAFE_HEAP:0,SAFE_HEAP_LOG:false,EMULATE_FUNCTION_POINTER_CASTS:false,EXCEPTION_DEBUG:false,LIBRARY_DEBUG:false,SYSCALL_DEBUG:false,SOCKET_DEBUG:false,DYLINK_DEBUG:0,FS_DEBUG:false,SOCKET_WEBRTC:false,WEBSOCKET_URL:"ws://",PROXY_POSIX_SOCKETS:false,WEBSOCKET_SUBPROTOCOL:"binary",OPENAL_DEBUG:false,WEBSOCKET_DEBUG:false,GL_ASSERTIONS:false,TRACE_WEBGL_CALLS:false,GL_DEBUG:false,GL_TESTING:false,GL_MAX_TEMP_BUFFER_SIZE:2097152,GL_UNSAFE_OPTS:true,FULL_ES2:false,GL_EMULATE_GLES_VERSION_STRING_FORMAT:true,GL_EXTENSIONS_IN_PREFIXED_FORMAT:true,GL_SUPPORT_AUTOMATIC_ENABLE_EXTENSIONS:true,GL_SUPPORT_SIMPLE_ENABLE_EXTENSIONS:true,GL_TRACK_ERRORS:true,GL_SUPPORT_EXPLICIT_SWAP_CONTROL:false,GL_POOL_TEMP_BUFFERS:true,GL_EXPLICIT_UNIFORM_LOCATION:false,GL_EXPLICIT_UNIFORM_BINDING:false,USE_WEBGL2:false,MIN_WEBGL_VERSION:1,MAX_WEBGL_VERSION:1,WEBGL2_BACKWARDS_COMPATIBILITY_EMULATION:false,FULL_ES3:false,LEGACY_GL_EMULATION:false,GL_FFP_ONLY:false,GL_PREINITIALIZED_CONTEXT:false,STB_IMAGE:false,GL_DISABLE_HALF_FLOAT_EXTENSION_IF_BROKEN:false,GL_WORKAROUND_SAFARI_GETCONTEXT_BUG:true,GL_ENABLE_GET_PROC_ADDRESS:true,JS_MATH:false,LEGACY_VM_SUPPORT:false,ENVIRONMENT:["web","worker","node"],LZ4:false,DISABLE_EXCEPTION_CATCHING:1,EXCEPTION_CATCHING_ALLOWED:[],DISABLE_EXCEPTION_THROWING:1,EXPORT_EXCEPTION_HANDLING_HELPERS:false,EXCEPTION_STACK_TRACES:false,WASM_LEGACY_EXCEPTIONS:0,ASYNCIFY:1,ASYNCIFY_IMPORTS:["env.invoke_*","env.__asyncjs__*","*.fd_sync","*.emscripten_promise_await","*.__syscall_poll","*.emscripten_idb_load","*.emscripten_idb_store","*.emscripten_idb_delete","*.emscripten_idb_exists","*.emscripten_idb_clear","*.emscripten_sleep","*.emscripten_wget_data","*.emscripten_scan_registers","*._load_secondary_module","*.emscripten_fiber_swap","*._emval_await"],ASYNCIFY_IGNORE_INDIRECT:false,ASYNCIFY_STACK_SIZE:4096,ASYNCIFY_REMOVE:[],ASYNCIFY_ADD:["heif_context_encode_image","green_thread_entry(*)","gthread_cond_wait","gthread_join","gthread_cond_timedwait","*ThreadShim(*)"],ASYNCIFY_PROPAGATE_ADD:true,ASYNCIFY_ONLY:[],ASYNCIFY_ADVISE:false,ASYNCIFY_DEBUG:0,ASYNCIFY_EXPORTS:["main","__main_argc_argv"],JSPI:0,JSPI_EXPORTS:[],JSPI_IMPORTS:[],EXPORTED_RUNTIME_METHODS:{},INCOMING_MODULE_JS_API:{},CASE_INSENSITIVE_FS:false,FILESYSTEM:0,FORCE_FILESYSTEM:false,NODERAWFS:false,NODE_HOST_ENV:false,NODE_CODE_CACHING:false,EXPORTED_FUNCTIONS:{},EXPORT_ALL:false,EXPORT_KEEPALIVE:true,RETAIN_COMPILER_SETTINGS:1,DEFAULT_LIBRARY_FUNCS_TO_INCLUDE:["$ExitStatus","$addOnPostRun","$addOnPreRun","$callRuntimeCallbacks","$dynCall","$getValue","$noExitRuntime","$setValue","$stackRestore","$stackSave","$wasmMemory","__syscall_fcntl64","__syscall_ioctl","__syscall_openat","__syscall_renameat","__syscall_unlinkat","_abort_js","_embind_finalize_value_object","_embind_register_bigint","_embind_register_bool","_embind_register_emval","_embind_register_float","_embind_register_function","_embind_register_integer","_embind_register_memory_view","_embind_register_std_string","_embind_register_std_wstring","_embind_register_value_object","_embind_register_value_object_field","_embind_register_void","_emscripten_runtime_keepalive_clear","_emval_create_invoker","_emval_decref","_emval_get_global","_emval_invoke","_emval_new_cstring","_emval_run_destructors","_emval_set_property","_localtime_js","_mmap_js","_munmap_js","_setitimer_js","_tzset_js","clock_time_get","emscripten_date_now","emscripten_fiber_swap","emscripten_get_compiler_setting","emscripten_get_heap_max","emscripten_get_now","emscripten_resize_heap","environ_get","environ_sizes_get","fd_close","fd_read","fd_seek","fd_write","proc_exit","$Asyncify"],INCLUDE_FULL_LIBRARY:false,MAIN_MODULE:0,SIDE_MODULE:0,RUNTIME_LINKED_LIBS:[],BUILD_AS_WORKER:false,PROXY_TO_PTHREAD:false,LINKABLE:false,STRICT:false,IGNORE_MISSING_MAIN:true,STRICT_JS:false,WARN_ON_UNDEFINED_SYMBOLS:true,ERROR_ON_UNDEFINED_SYMBOLS:true,SMALL_XHR_CHUNKS:false,DETERMINISTIC:false,MODULARIZE:1,EXPORT_ES6:1,EXPORT_NAME:"Module",DYNAMIC_EXECUTION:1,BOOTSTRAPPING_STRUCT_INFO:false,EMSCRIPTEN_TRACING:false,USE_GLFW:0,WASM:1,STANDALONE_WASM:false,BINARYEN_IGNORE_IMPLICIT_TRAPS:false,BINARYEN_EXTRA_PASSES:"",WASM_ASYNC_COMPILATION:true,DYNCALLS:1,WASM_BIGINT:true,EMIT_PRODUCERS_SECTION:false,EMIT_EMSCRIPTEN_LICENSE:false,LEGALIZE_JS_FFI:0,USE_SDL:0,USE_SDL_GFX:0,USE_SDL_IMAGE:1,USE_SDL_TTF:1,USE_SDL_NET:1,USE_ICU:false,USE_ZLIB:false,USE_BZIP2:false,USE_GIFLIB:false,USE_LIBJPEG:false,USE_LIBPNG:false,USE_REGAL:false,USE_BOOST_HEADERS:false,USE_BULLET:false,USE_VORBIS:false,USE_OGG:false,USE_MPG123:false,USE_FREETYPE:false,USE_SDL_MIXER:1,USE_HARFBUZZ:false,USE_COCOS2D:0,USE_MODPLUG:false,SDL2_IMAGE_FORMATS:[],SDL2_MIXER_FORMATS:["ogg"],USE_SQLITE3:false,SHARED_MEMORY:false,WASM_WORKERS:0,AUDIO_WORKLET:0,AUDIO_WORKLET_SUPPORT_AUDIO_PARAMS:true,WEBAUDIO_DEBUG:0,PTHREAD_POOL_SIZE:0,PTHREAD_POOL_SIZE_STRICT:1,PTHREAD_POOL_DELAY_LOAD:false,DEFAULT_PTHREAD_STACK_SIZE:0,PTHREADS_PROFILING:false,ALLOW_BLOCKING_ON_MAIN_THREAD:true,PTHREADS_DEBUG:false,EVAL_CTORS:0,TEXTDECODER:2,EMBIND_STD_STRING_IS_UTF8:true,EMBIND_AOT:false,OFFSCREENCANVAS_SUPPORT:false,OFFSCREENCANVASES_TO_PTHREAD:"#canvas",OFFSCREEN_FRAMEBUFFER:false,FETCH_SUPPORT_INDEXEDDB:true,FETCH_DEBUG:false,FETCH:false,FETCH_STREAMING:0,WASMFS:false,SINGLE_FILE:false,SINGLE_FILE_BINARY_ENCODE:true,AUTO_JS_LIBRARIES:true,AUTO_NATIVE_LIBRARIES:true,MIN_FIREFOX_VERSION:129,MIN_SAFARI_VERSION:2147483647,MIN_CHROME_VERSION:128,MIN_NODE_VERSION:23e4,MINIMAL_RUNTIME:0,MINIMAL_RUNTIME_STREAMING_WASM_COMPILATION:false,MINIMAL_RUNTIME_STREAMING_WASM_INSTANTIATION:false,SUPPORT_LONGJMP:"emscripten",DISABLE_DEPRECATED_FIND_EVENT_TARGET_BEHAVIOR:true,HTML5_SUPPORT_DEFERRING_USER_SENSITIVE_REQUESTS:true,MINIFY_HTML:true,ASAN_SHADOW_SIZE:-1,SOURCE_MAP_PREFIXES:[],DEFAULT_TO_CXX:true,PRINTF_LONG_DOUBLE:false,SEPARATE_DWARF_URL:"",ERROR_ON_WASM_CHANGES_AFTER_LINK:false,ABORT_ON_WASM_EXCEPTIONS:false,PURE_WASI:false,IMPORTED_MEMORY:false,SPLIT_MODULE:false,AUTOLOAD_DYLIBS:true,ALLOW_UNIMPLEMENTED_SYSCALLS:true,TRUSTED_TYPES:false,POLYFILL:true,RUNTIME_DEBUG:0,LEGACY_RUNTIME:false,SIGNATURE_CONVERSIONS:[],SOURCE_PHASE_IMPORTS:false,WASM_ESM_INTEGRATION:false,JS_BASE64_API:false,GROWABLE_ARRAYBUFFERS:false,WASM_JS_TYPES:false,CROSS_ORIGIN:false,FAKE_DYLIBS:true,EXECUTABLE:false,BINARYEN:1,TOTAL_STACK:2097152,BINARYEN_ASYNC_COMPILATION:true,UNALIGNED_MEMORY:0,FORCE_ALIGNED_MEMORY:0,PGO:0,QUANTUM_SIZE:4,FUNCTION_POINTER_ALIGNMENT:2,RESERVED_FUNCTION_POINTERS:false,BUILD_AS_SHARED_LIB:0,SAFE_SPLIT_MEMORY:0,SPLIT_MEMORY:0,BINARYEN_METHOD:"native-wasm",BINARYEN_TRAP_MODE:-1,PRECISE_I64_MATH:1,MEMFS_APPEND_TO_TYPED_ARRAYS:1,ERROR_ON_MISSING_LIBRARIES:1,EMITTING_JS:1,SKIP_STACK_IN_SMALL:0,SAFE_STACK:0,MEMORY_GROWTH_STEP:-1,ELIMINATE_DUPLICATE_FUNCTIONS:0,ELIMINATE_DUPLICATE_FUNCTIONS_DUMP_EQUIVALENT_FUNCTIONS:0,ELIMINATE_DUPLICATE_FUNCTIONS_PASSES:5,WASM_OBJECT_FILES:1,TOTAL_MEMORY:-1,WASM_MEM_MAX:2147483648,BINARYEN_MEM_MAX:2147483648,BINARYEN_PASSES:"",SWAPPABLE_ASM_MODULE:0,ASM_JS:1,FINALIZE_ASM_JS:0,ASYNCIFY_WHITELIST:[],ASYNCIFY_BLACKLIST:[],EXCEPTION_CATCHING_WHITELIST:[],SEPARATE_ASM:0,SEPARATE_ASM_MODULE_NAME:"",FAST_UNROLLED_MEMCPY_AND_MEMSET:0,DOUBLE_MODE:0,PRECISE_F32:0,ALIASING_FUNCTION_POINTERS:0,AGGRESSIVE_VARIABLE_ELIMINATION:0,SIMPLIFY_IFS:1,DEAD_FUNCTIONS:[],WASM_BACKEND:-1,EXPORT_BINDINGS:0,RUNNING_JS_OPTS:0,EXPORT_FUNCTION_TABLES:0,BINARYEN_SCRIPTS:"",WARN_UNALIGNED:0,ASM_PRIMITIVE_VARS:[],WORKAROUND_IOS_9_RIGHT_SHIFT_BUG:0,RUNTIME_FUNCS_TO_IMPORT:[],LIBRARY_DEPS_TO_AUTOEXPORT:[],EMIT_EMSCRIPTEN_METADATA:0,SHELL_FILE:"",LLD_REPORT_UNDEFINED:1,MEM_INIT_METHOD:0,USE_PTHREADS:0,USES_DYNAMIC_ALLOC:1,REVERSE_DEPS:"auto",RUNTIME_LOGGING:0,MIN_EDGE_VERSION:2147483647,MIN_IE_VERSION:2147483647,WORKAROUND_OLD_WEBGL_UNIFORM_UPLOAD_IGNORED_OFFSET_BUG:0,AUTO_ARCHIVE_INDEXES:0,USE_ES6_IMPORT_META:1,EXTRA_EXPORTED_RUNTIME_METHODS:[],SUPPORT_ERRNO:0,DEMANGLE_SUPPORT:0,MAYBE_WASM2JS:0,HEADLESS:0,USE_OFFSET_COVERTER:0,ASYNCIFY_LAZY_LOAD_CODE:0,USE_WEBGPU:0,PROXY_TO_WORKER:0,NODEJS_CATCH_EXIT:0,NODEJS_CATCH_REJECTION:0,POLYFILL_OLD_MATH_FUNCTIONS:0,RELOCATABLE:0,EMSCRIPTEN_VERSION:"5.0.3"};function getCompilerSetting(name){if(!(name in compilerSettings))return"invalid compiler setting: "+name;return compilerSettings[name]}class ExitStatus{name="ExitStatus";constructor(status){this.message=`Program terminated with exit(${status})`;this.status=status}}var callRuntimeCallbacks=callbacks=>{while(callbacks.length>0){callbacks.shift()(Module)}};var onPostRuns=[];var addOnPostRun=cb=>onPostRuns.push(cb);var onPreRuns=[];var addOnPreRun=cb=>onPreRuns.push(cb);var dynCalls={};var dynCallLegacy=(sig,ptr,args)=>{sig=sig.replace(/p/g,"j");var f=dynCalls[sig];return f(ptr,...args)};var dynCall=(sig,ptr,args=[],promising=false)=>{for(var i=1;i<sig.length;++i){if(sig[i]=="p")args[i-1]=BigInt(args[i-1])}var rtn=dynCallLegacy(sig,ptr,args);function convert(rtn){return sig[0]=="p"?Number(rtn):rtn}return convert(rtn)};var noExitRuntime=true;var stackRestore=val=>__emscripten_stack_restore(val);var stackSave=()=>_emscripten_stack_get_current();var UTF8Decoder=new TextDecoder;var findStringEnd=(heapOrArray,idx,maxBytesToRead,ignoreNul)=>{var maxIdx=idx+maxBytesToRead;if(ignoreNul)return maxIdx;while(heapOrArray[idx]&&!(idx>=maxIdx))++idx;return idx};var UTF8ToString=(ptr,maxBytesToRead,ignoreNul)=>{if(!ptr)return"";var end=findStringEnd(HEAPU8,ptr,maxBytesToRead,ignoreNul);return UTF8Decoder.decode(HEAPU8.subarray(ptr,end))};var SYSCALLS={varargs:undefined,getStr(ptr){var ret=UTF8ToString(ptr);return ret}};var INT53_MAX=9007199254740992;var INT53_MIN=-9007199254740992;var bigintToI53Checked=num=>num<INT53_MIN||num>INT53_MAX?NaN:Number(num);function ___syscall_fcntl64(fd,cmd,varargs){varargs=bigintToI53Checked(varargs);SYSCALLS.varargs=varargs;return 0}function ___syscall_ioctl(fd,op,varargs){varargs=bigintToI53Checked(varargs);SYSCALLS.varargs=varargs;return 0}function ___syscall_openat(dirfd,path,flags,varargs){path=bigintToI53Checked(path);varargs=bigintToI53Checked(varargs);SYSCALLS.varargs=varargs}function ___syscall_renameat(olddirfd,oldpath,newdirfd,newpath){oldpath=bigintToI53Checked(oldpath);newpath=bigintToI53Checked(newpath)}function ___syscall_unlinkat(dirfd,path,flags){path=bigintToI53Checked(path)}var __abort_js=()=>abort("");var structRegistrations={};var runDestructors=destructors=>{while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}};function readPointer(pointer){return this.fromWireType(Number(HEAPU64[pointer/8]))}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var InternalError=class InternalError extends Error{constructor(message){super(message);this.name="InternalError"}};var throwInternalError=message=>{throw new InternalError(message)};var whenDependentTypesAreResolved=(myTypes,dependentTypes,getTypeConverters)=>{myTypes.forEach(type=>typeDependencies[type]=dependentTypes);function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i<myTypes.length;++i){registerType(myTypes[i],myTypeConverters[i])}}var typeConverters=new Array(dependentTypes.length);var unregisteredTypes=[];var registered=0;for(let[i,dt]of dependentTypes.entries()){if(registeredTypes.hasOwnProperty(dt)){typeConverters[i]=registeredTypes[dt]}else{unregisteredTypes.push(dt);if(!awaitingDependencies.hasOwnProperty(dt)){awaitingDependencies[dt]=[]}awaitingDependencies[dt].push(()=>{typeConverters[i]=registeredTypes[dt];++registered;if(registered===unregisteredTypes.length){onComplete(typeConverters)}})}}if(0===unregisteredTypes.length){onComplete(typeConverters)}};var __embind_finalize_value_object=function(structType){structType=bigintToI53Checked(structType);var reg=structRegistrations[structType];delete structRegistrations[structType];var rawConstructor=reg.rawConstructor;var rawDestructor=reg.rawDestructor;var fieldRecords=reg.fields;var fieldTypes=fieldRecords.map(field=>field.getterReturnType).concat(fieldRecords.map(field=>field.setterArgumentType));whenDependentTypesAreResolved([structType],fieldTypes,fieldTypes=>{var fields={};for(var[i,field]of fieldRecords.entries()){const getterReturnType=fieldTypes[i];const getter=field.getter;const getterContext=field.getterContext;const setterArgumentType=fieldTypes[i+fieldRecords.length];const setter=field.setter;const setterContext=field.setterContext;fields[field.fieldName]={read:ptr=>getterReturnType.fromWireType(getter(getterContext,ptr)),write:(ptr,o)=>{var destructors=[];setter(setterContext,ptr,setterArgumentType.toWireType(destructors,o));runDestructors(destructors)},optional:getterReturnType.optional}}return[{name:reg.name,fromWireType:ptr=>{var rv={};for(var i in fields){rv[i]=fields[i].read(ptr)}rawDestructor(ptr);return rv},toWireType:(destructors,o)=>{for(var fieldName in fields){if(!(fieldName in o)&&!fields[fieldName].optional){throw new TypeError(`Missing field: "${fieldName}"`)}}var ptr=rawConstructor();for(fieldName in fields){fields[fieldName].write(ptr,o[fieldName])}if(destructors!==null){destructors.push(rawDestructor,ptr)}return ptr},readValueFromPointer:readPointer,destructorFunction:rawDestructor}]})};var AsciiToString=ptr=>{var str="";while(1){var ch=HEAPU8[ptr++];if(!ch)return str;str+=String.fromCharCode(ch)}};var BindingError=class BindingError extends Error{constructor(message){super(message);this.name="BindingError"}};var throwBindingError=message=>{throw new BindingError(message)};function sharedRegisterType(rawType,registeredInstance,options={}){var name=registeredInstance.name;if(!rawType){throwBindingError(`type "${name}" must have a positive integer typeid pointer`)}if(registeredTypes.hasOwnProperty(rawType)){if(options.ignoreDuplicateRegistrations){return}else{throwBindingError(`Cannot register type '${name}' twice`)}}registeredTypes[rawType]=registeredInstance;delete typeDependencies[rawType];if(awaitingDependencies.hasOwnProperty(rawType)){var callbacks=awaitingDependencies[rawType];delete awaitingDependencies[rawType];callbacks.forEach(cb=>cb())}}function registerType(rawType,registeredInstance,options={}){return sharedRegisterType(rawType,registeredInstance,options)}var integerReadValueFromPointer=(name,width,signed)=>{switch(width){case 1:return signed?pointer=>HEAP8[pointer]:pointer=>HEAPU8[pointer];case 2:return signed?pointer=>HEAP16[pointer/2]:pointer=>HEAPU16[pointer/2];case 4:return signed?pointer=>HEAP32[pointer/4]:pointer=>HEAPU32[pointer/4];case 8:return signed?pointer=>HEAP64[pointer/8]:pointer=>HEAPU64[pointer/8];default:throw new TypeError(`invalid integer width (${width}): ${name}`)}};var __embind_register_bigint=function(primitiveType,name,size,minRange,maxRange){primitiveType=bigintToI53Checked(primitiveType);name=bigintToI53Checked(name);size=bigintToI53Checked(size);name=AsciiToString(name);const isUnsignedType=minRange===0n;let fromWireType=value=>value;if(isUnsignedType){const bitSize=size*8;fromWireType=value=>{if(typeof value=="number"){return value>>>0}return BigInt.asUintN(bitSize,value)};maxRange=fromWireType(maxRange)}registerType(primitiveType,{name,fromWireType,toWireType:(destructors,value)=>{if(typeof value=="number"){value=BigInt(value)}return value},readValueFromPointer:integerReadValueFromPointer(name,size,!isUnsignedType),destructorFunction:null})};function __embind_register_bool(rawType,name,trueValue,falseValue){rawType=bigintToI53Checked(rawType);name=bigintToI53Checked(name);name=AsciiToString(name);registerType(rawType,{name,fromWireType:function(wt){return!!wt},toWireType:function(destructors,o){return o?trueValue:falseValue},readValueFromPointer:function(pointer){return this.fromWireType(HEAPU8[pointer])},destructorFunction:null})}var emval_freelist=[];var emval_handles=[0,1,,1,null,1,true,1,false,1];function __emval_decref(handle){handle=bigintToI53Checked(handle);if(handle>9&&0===--emval_handles[handle+1]){emval_handles[handle]=undefined;emval_freelist.push(handle)}}var Emval={toValue:handle=>{if(!handle){throwBindingError(`Cannot use deleted val. handle = ${handle}`)}return emval_handles[handle]},toHandle:value=>{switch(value){case undefined:return 2;case null:return 4;case true:return 6;case false:return 8;default:{const handle=emval_freelist.pop()||emval_handles.length;emval_handles[handle]=value;emval_handles[handle+1]=1;return handle}}}};var EmValType={name:"emscripten::val",fromWireType:handle=>{var rv=Emval.toValue(handle);__emval_decref(handle);return rv},toWireType:(destructors,value)=>Emval.toHandle(value),readValueFromPointer:readPointer,destructorFunction:null};function __embind_register_emval(rawType){rawType=bigintToI53Checked(rawType);return registerType(rawType,EmValType)}var floatReadValueFromPointer=(name,width)=>{switch(width){case 4:return function(pointer){return this.fromWireType(HEAPF32[pointer/4])};case 8:return function(pointer){return this.fromWireType(HEAPF64[pointer/8])};default:throw new TypeError(`invalid float width (${width}): ${name}`)}};var __embind_register_float=function(rawType,name,size){rawType=bigintToI53Checked(rawType);name=bigintToI53Checked(name);size=bigintToI53Checked(size);name=AsciiToString(name);registerType(rawType,{name,fromWireType:value=>value,toWireType:(destructors,value)=>value,readValueFromPointer:floatReadValueFromPointer(name,size),destructorFunction:null})};var createNamedFunction=(name,func)=>Object.defineProperty(func,"name",{value:name});function usesDestructorStack(argTypes){for(var i=1;i<argTypes.length;++i){if(argTypes[i]!==null&&argTypes[i].destructorFunction===undefined){return true}}return false}function createJsInvoker(argTypes,isClassMethodFunc,returns,isAsync){var needsDestructorStack=usesDestructorStack(argTypes);var argCount=argTypes.length-2;var argsList=[];var argsListWired=["fn"];if(isClassMethodFunc){argsListWired.push("thisWired")}for(var i=0;i<argCount;++i){argsList.push(`arg${i}`);argsListWired.push(`arg${i}Wired`)}argsList=argsList.join(",");argsListWired=argsListWired.join(",");var invokerFnBody=`return function (${argsList}) {\n`;if(needsDestructorStack){invokerFnBody+="var destructors = [];\n"}var dtorStack=needsDestructorStack?"destructors":"null";var args1=["humanName","throwBindingError","invoker","fn","runDestructors","fromRetWire","toClassParamWire"];if(isClassMethodFunc){invokerFnBody+=`var thisWired = toClassParamWire(${dtorStack}, this);\n`}for(var i=0;i<argCount;++i){var argName=`toArg${i}Wire`;invokerFnBody+=`var arg${i}Wired = ${argName}(${dtorStack}, arg${i});\n`;args1.push(argName)}invokerFnBody+=(returns||isAsync?"var rv = ":"")+`invoker(${argsListWired});\n`;var returnVal=returns?"rv":"";args1.push("Asyncify");invokerFnBody+=`function onDone(${returnVal}) {\n`;if(needsDestructorStack){invokerFnBody+="runDestructors(destructors);\n"}else{for(var i=isClassMethodFunc?1:2;i<argTypes.length;++i){var paramName=i===1?"thisWired":"arg"+(i-2)+"Wired";if(argTypes[i].destructorFunction!==null){invokerFnBody+=`${paramName}_dtor(${paramName});\n`;args1.push(`${paramName}_dtor`)}}}if(returns){invokerFnBody+="var ret = fromRetWire(rv);\n"+"return ret;\n"}else{}invokerFnBody+="}\n";invokerFnBody+=`return Asyncify.currData ? Asyncify.whenDone().then(onDone) : onDone(${returnVal});\n`;invokerFnBody+="}\n";return new Function(args1,invokerFnBody)}var runAndAbortIfError=func=>{try{return func()}catch(e){abort(e)}};var handleException=e=>{if(e instanceof ExitStatus||e=="unwind"){return EXITSTATUS}quit_(1,e)};var runtimeKeepaliveCounter=0;var keepRuntimeAlive=()=>noExitRuntime||runtimeKeepaliveCounter>0;var _proc_exit=code=>{EXITSTATUS=code;if(!keepRuntimeAlive()){Module["onExit"]?.(code);ABORT=true}quit_(code,new ExitStatus(code))};var exitJS=(status,implicit)=>{EXITSTATUS=status;_proc_exit(status)};var _exit=exitJS;var maybeExit=()=>{if(!keepRuntimeAlive()){try{_exit(EXITSTATUS)}catch(e){handleException(e)}}};var callUserCallback=func=>{if(ABORT){return}try{return func()}catch(e){handleException(e)}finally{maybeExit()}};var Asyncify={rewindArguments:new Map,instrumentWasmImports(imports){var importPattern=/^(invoke_.*|__asyncjs__.*)$/;for(let[x,original]of Object.entries(imports)){if(typeof original=="function"){let isAsyncifyImport=original.isAsync||importPattern.test(x)}}},saveRewindArguments(func,passedArguments){return Asyncify.rewindArguments.set(func,Array.from(passedArguments))},restoreRewindArguments(func){return Asyncify.rewindArguments.get(func)},instrumentFunction(original){var wrapper=(...args)=>{Asyncify.exportCallStack.push(original);try{Asyncify.saveRewindArguments(original,args);return original(...args)}finally{if(!ABORT){var top=Asyncify.exportCallStack.pop();Asyncify.maybeStopUnwind()}}};Asyncify.funcWrappers.set(original,wrapper);return wrapper},instrumentWasmExports(exports){var ret={};for(let[x,original]of Object.entries(exports)){if(typeof original=="function"){var wrapper=Asyncify.instrumentFunction(original);ret[x]=wrapper}else{ret[x]=original}}return ret},State:{Normal:0,Unwinding:1,Rewinding:2,Disabled:3},state:0,StackSize:4096,currData:null,handleSleepReturnValue:0,exportCallStack:[],callstackFuncToId:new Map,callStackIdToFunc:new Map,funcWrappers:new Map,callStackId:0,asyncPromiseHandlers:null,sleepCallbacks:[],getCallStackId(func){if(!Asyncify.callstackFuncToId.has(func)){var id=Asyncify.callStackId++;Asyncify.callstackFuncToId.set(func,id);Asyncify.callStackIdToFunc.set(id,func)}return Asyncify.callstackFuncToId.get(func)},maybeStopUnwind(){if(Asyncify.currData&&Asyncify.state===Asyncify.State.Unwinding&&Asyncify.exportCallStack.length===0){Asyncify.state=Asyncify.State.Normal;runAndAbortIfError(_asyncify_stop_unwind);if(typeof Fibers!="undefined"){Fibers.trampoline()}}},whenDone(){return new Promise((resolve,reject)=>{Asyncify.asyncPromiseHandlers={resolve,reject}})},allocateData(){var ptr=_malloc(24+Asyncify.StackSize);Asyncify.setDataHeader(ptr,ptr+24,Asyncify.StackSize);Asyncify.setDataRewindFunc(ptr);return ptr},setDataHeader(ptr,stack,stackSize){HEAPU64[ptr/8]=BigInt(stack);HEAPU64[(ptr+8)/8]=BigInt(stack+stackSize)},setDataRewindFunc(ptr){var bottomOfCallStack=Asyncify.exportCallStack[0];var rewindId=Asyncify.getCallStackId(bottomOfCallStack);HEAP32[(ptr+16)/4]=rewindId},getDataRewindFunc(ptr){var id=HEAP32[(ptr+16)/4];var func=Asyncify.callStackIdToFunc.get(id);return func},doRewind(ptr){var original=Asyncify.getDataRewindFunc(ptr);var func=Asyncify.funcWrappers.get(original);func=func.bind(0,...Asyncify.restoreRewindArguments(original));return callUserCallback(func)},handleSleep(startAsync){if(ABORT)return;if(Asyncify.state===Asyncify.State.Normal){var reachedCallback=false;var reachedAfterCallback=false;startAsync((handleSleepReturnValue=0)=>{if(ABORT)return;Asyncify.handleSleepReturnValue=handleSleepReturnValue;reachedCallback=true;if(!reachedAfterCallback){return}Asyncify.state=Asyncify.State.Rewinding;runAndAbortIfError(()=>_asyncify_start_rewind(Asyncify.currData));if(typeof MainLoop!="undefined"&&MainLoop.func){MainLoop.resume()}var asyncWasmReturnValue,isError=false;try{asyncWasmReturnValue=Asyncify.doRewind(Asyncify.currData)}catch(err){asyncWasmReturnValue=err;isError=true}var handled=false;if(!Asyncify.currData){var asyncPromiseHandlers=Asyncify.asyncPromiseHandlers;if(asyncPromiseHandlers){Asyncify.asyncPromiseHandlers=null;(isError?asyncPromiseHandlers.reject:asyncPromiseHandlers.resolve)(asyncWasmReturnValue);handled=true}}if(isError&&!handled){throw asyncWasmReturnValue}});reachedAfterCallback=true;if(!reachedCallback){Asyncify.state=Asyncify.State.Unwinding;Asyncify.currData=Asyncify.allocateData();if(typeof MainLoop!="undefined"&&MainLoop.func){MainLoop.pause()}runAndAbortIfError(()=>_asyncify_start_unwind(Asyncify.currData))}}else if(Asyncify.state===Asyncify.State.Rewinding){Asyncify.state=Asyncify.State.Normal;runAndAbortIfError(_asyncify_stop_rewind);_free(Asyncify.currData);Asyncify.currData=null;Asyncify.sleepCallbacks.forEach(callUserCallback)}else{abort(`invalid state: ${Asyncify.state}`)}return Asyncify.handleSleepReturnValue},handleAsync:startAsync=>Asyncify.handleSleep(async wakeUp=>{wakeUp(await startAsync())})};function craftInvokerFunction(humanName,argTypes,classType,cppInvokerFunc,cppTargetFunc,isAsync){var argCount=argTypes.length;if(argCount<2){throwBindingError("argTypes array size mismatch! Must at least get return value and 'this' types!")}var isClassMethodFunc=argTypes[1]!==null&&classType!==null;var needsDestructorStack=usesDestructorStack(argTypes);var returns=!argTypes[0].isVoid;var retType=argTypes[0];var instType=argTypes[1];var closureArgs=[humanName,throwBindingError,cppInvokerFunc,cppTargetFunc,runDestructors,retType.fromWireType.bind(retType),instType?.toWireType.bind(instType)];for(var i=2;i<argCount;++i){var argType=argTypes[i];closureArgs.push(argType.toWireType.bind(argType))}closureArgs.push(Asyncify);if(!needsDestructorStack){for(var i=isClassMethodFunc?1:2;i<argTypes.length;++i){if(argTypes[i].destructorFunction!==null){closureArgs.push(argTypes[i].destructorFunction)}}}let invokerFactory=createJsInvoker(argTypes,isClassMethodFunc,returns,isAsync);var invokerFn=invokerFactory(...closureArgs);return createNamedFunction(humanName,invokerFn)}var ensureOverloadTable=(proto,methodName,humanName)=>{if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];proto[methodName]=function(...args){if(!proto[methodName].overloadTable.hasOwnProperty(args.length)){throwBindingError(`Function '${humanName}' called with an invalid number of arguments (${args.length}) - expects one of (${proto[methodName].overloadTable})!`)}return proto[methodName].overloadTable[args.length].apply(this,args)};proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}};var exposePublicSymbol=(name,value,numArguments)=>{if(Module.hasOwnProperty(name)){if(undefined===numArguments||undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments]){throwBindingError(`Cannot register public name '${name}' twice`)}ensureOverloadTable(Module,name,name);if(Module[name].overloadTable.hasOwnProperty(numArguments)){throwBindingError(`Cannot register multiple overloads of a function with the same number of arguments (${numArguments})!`)}Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}};var heap32VectorToArray=(count,firstElement)=>{var array=[];for(var i=0;i<count;i++){array.push(Number(HEAPU64[(firstElement+i*8)/8]))}return array};var replacePublicSymbol=(name,value,numArguments)=>{if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistent public symbol")}if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}};var getDynCaller=(sig,ptr,promising=false)=>(...args)=>dynCall(sig,ptr,args,promising);var embind__requireFunction=(signature,rawFunction,isAsync=false)=>{signature=AsciiToString(signature);function makeDynCaller(){return getDynCaller(signature,rawFunction)}var fp=makeDynCaller();if(typeof fp!="function"){throwBindingError(`unknown function pointer with signature ${signature}: ${rawFunction}`)}return fp};class UnboundTypeError extends Error{}var getTypeName=type=>{var ptr=___getTypeName(type);var rv=AsciiToString(ptr);_free(ptr);return rv};var throwUnboundTypeError=(message,types)=>{var unboundTypes=[];var seen={};function visit(type){if(seen[type]){return}if(registeredTypes[type]){return}if(typeDependencies[type]){typeDependencies[type].forEach(visit);return}unboundTypes.push(type);seen[type]=true}types.forEach(visit);throw new UnboundTypeError(`${message}: `+unboundTypes.map(getTypeName).join([", "]))};var getFunctionName=signature=>{signature=signature.trim();const argsIndex=signature.indexOf("(");if(argsIndex===-1)return signature;return signature.slice(0,argsIndex)};function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn,isAsync,isNonnullReturn){name=bigintToI53Checked(name);rawArgTypesAddr=bigintToI53Checked(rawArgTypesAddr);signature=bigintToI53Checked(signature);rawInvoker=bigintToI53Checked(rawInvoker);fn=bigintToI53Checked(fn);var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=AsciiToString(name);name=getFunctionName(name);rawInvoker=embind__requireFunction(signature,rawInvoker,isAsync);exposePublicSymbol(name,function(){throwUnboundTypeError(`Cannot call ${name} due to unbound types`,argTypes)},argCount-1);whenDependentTypesAreResolved([],argTypes,argTypes=>{var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn,isAsync),argCount-1);return[]})}var __embind_register_integer=function(primitiveType,name,size,minRange,maxRange){primitiveType=bigintToI53Checked(primitiveType);name=bigintToI53Checked(name);size=bigintToI53Checked(size);name=AsciiToString(name);const isUnsignedType=minRange===0;let fromWireType=value=>value;if(isUnsignedType){var bitshift=32-8*size;fromWireType=value=>value<<bitshift>>>bitshift;maxRange=fromWireType(maxRange)}registerType(primitiveType,{name,fromWireType,toWireType:(destructors,value)=>value,readValueFromPointer:integerReadValueFromPointer(name,size,minRange!==0),destructorFunction:null})};function __embind_register_memory_view(rawType,dataTypeIndex,name){rawType=bigintToI53Checked(rawType);name=bigintToI53Checked(name);var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,BigInt64Array,BigUint64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){var size=Number(HEAPU64[handle/8]);var data=Number(HEAPU64[(handle+8)/8]);return new TA(HEAP8.buffer,data,size)}name=AsciiToString(name);registerType(rawType,{name,fromWireType:decodeMemoryView,readValueFromPointer:decodeMemoryView},{ignoreDuplicateRegistrations:true})}var stringToUTF8Array=(str,heap,outIdx,maxBytesToWrite)=>{if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.codePointAt(i);if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63;i++}}heap[outIdx]=0;return outIdx-startIdx};var stringToUTF8=(str,outPtr,maxBytesToWrite)=>stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite);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 __embind_register_std_string(rawType,name){rawType=bigintToI53Checked(rawType);name=bigintToI53Checked(name);name=AsciiToString(name);var stdStringIsUTF8=true;registerType(rawType,{name,fromWireType(value){var length=Number(HEAPU64[value/8]);var payload=value+8;var str;if(stdStringIsUTF8){str=UTF8ToString(payload,length,true)}else{str="";for(var i=0;i<length;++i){str+=String.fromCharCode(HEAPU8[payload+i])}}_free(value);return str},toWireType(destructors,value){if(value instanceof ArrayBuffer){value=new Uint8Array(value)}var length;var valueIsOfTypeString=typeof value=="string";if(!(valueIsOfTypeString||ArrayBuffer.isView(value)&&value.BYTES_PER_ELEMENT==1)){throwBindingError("Cannot pass non-string to std::string")}if(stdStringIsUTF8&&valueIsOfTypeString){length=lengthBytesUTF8(value)}else{length=value.length}var base=_malloc(8+length+1);var ptr=base+8;HEAPU64[base/8]=BigInt(length);if(valueIsOfTypeString){if(stdStringIsUTF8){stringToUTF8(value,ptr,length+1)}else{for(var i=0;i<length;++i){var charCode=value.charCodeAt(i);if(charCode>255){_free(base);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+i]=charCode}}}else{HEAPU8.set(value,ptr)}if(destructors!==null){destructors.push(_free,base)}return base},readValueFromPointer:readPointer,destructorFunction(ptr){_free(ptr)}})}var UTF16Decoder=new TextDecoder("utf-16le");var UTF16ToString=(ptr,maxBytesToRead,ignoreNul)=>{var idx=ptr/2;var endIdx=findStringEnd(HEAPU16,idx,maxBytesToRead/2,ignoreNul);return UTF16Decoder.decode(HEAPU16.subarray(idx,endIdx))};var stringToUTF16=(str,outPtr,maxBytesToWrite)=>{maxBytesToWrite??=2147483647;if(maxBytesToWrite<2)return 0;maxBytesToWrite-=2;var startPtr=outPtr;var numCharsToWrite=maxBytesToWrite<str.length*2?maxBytesToWrite/2:str.length;for(var i=0;i<numCharsToWrite;++i){var codeUnit=str.charCodeAt(i);HEAP16[outPtr/2]=codeUnit;outPtr+=2}HEAP16[outPtr/2]=0;return outPtr-startPtr};var lengthBytesUTF16=str=>str.length*2;var UTF32ToString=(ptr,maxBytesToRead,ignoreNul)=>{var str="";var startIdx=ptr/4;for(var i=0;!(i>=maxBytesToRead/4);i++){var utf32=HEAPU32[startIdx+i];if(!utf32&&!ignoreNul)break;str+=String.fromCodePoint(utf32)}return str};var stringToUTF32=(str,outPtr,maxBytesToWrite)=>{maxBytesToWrite??=2147483647;if(maxBytesToWrite<4)return 0;var startPtr=outPtr;var endPtr=startPtr+maxBytesToWrite-4;for(var i=0;i<str.length;++i){var codePoint=str.codePointAt(i);if(codePoint>65535){i++}HEAP32[outPtr/4]=codePoint;outPtr+=4;if(outPtr+4>endPtr)break}HEAP32[outPtr/4]=0;return outPtr-startPtr};var lengthBytesUTF32=str=>{var len=0;for(var i=0;i<str.length;++i){var codePoint=str.codePointAt(i);if(codePoint>65535){i++}len+=4}return len};function __embind_register_std_wstring(rawType,charSize,name){rawType=bigintToI53Checked(rawType);charSize=bigintToI53Checked(charSize);name=bigintToI53Checked(name);name=AsciiToString(name);var decodeString,encodeString,lengthBytesUTF;if(charSize===2){decodeString=UTF16ToString;encodeString=stringToUTF16;lengthBytesUTF=lengthBytesUTF16}else{decodeString=UTF32ToString;encodeString=stringToUTF32;lengthBytesUTF=lengthBytesUTF32}registerType(rawType,{name,fromWireType:value=>{var length=Number(HEAPU64[value/8]);var str=decodeString(value+8,length*charSize,true);_free(value);return str},toWireType:(destructors,value)=>{if(!(typeof value=="string")){throwBindingError(`Cannot pass non-string to C++ string type ${name}`)}var length=lengthBytesUTF(value);var ptr=_malloc(8+length+charSize);HEAPU64[ptr/8]=BigInt(length/charSize);encodeString(value,ptr+8,length+charSize);if(destructors!==null){destructors.push(_free,ptr)}return ptr},readValueFromPointer:readPointer,destructorFunction(ptr){_free(ptr)}})}function __embind_register_value_object(rawType,name,constructorSignature,rawConstructor,destructorSignature,rawDestructor){rawType=bigintToI53Checked(rawType);name=bigintToI53Checked(name);constructorSignature=bigintToI53Checked(constructorSignature);rawConstructor=bigintToI53Checked(rawConstructor);destructorSignature=bigintToI53Checked(destructorSignature);rawDestructor=bigintToI53Checked(rawDestructor);structRegistrations[rawType]={name:AsciiToString(name),rawConstructor:embind__requireFunction(constructorSignature,rawConstructor),rawDestructor:embind__requireFunction(destructorSignature,rawDestructor),fields:[]}}function __embind_register_value_object_field(structType,fieldName,getterReturnType,getterSignature,getter,getterContext,setterArgumentType,setterSignature,setter,setterContext){structType=bigintToI53Checked(structType);fieldName=bigintToI53Checked(fieldName);getterReturnType=bigintToI53Checked(getterReturnType);getterSignature=bigintToI53Checked(getterSignature);getter=bigintToI53Checked(getter);getterContext=bigintToI53Checked(getterContext);setterArgumentType=bigintToI53Checked(setterArgumentType);setterSignature=bigintToI53Checked(setterSignature);setter=bigintToI53Checked(setter);setterContext=bigintToI53Checked(setterContext);structRegistrations[structType].fields.push({fieldName:AsciiToString(fieldName),getterReturnType,getter:embind__requireFunction(getterSignature,getter),getterContext,setterArgumentType,setter:embind__requireFunction(setterSignature,setter),setterContext})}var __embind_register_void=function(rawType,name){rawType=bigintToI53Checked(rawType);name=bigintToI53Checked(name);name=AsciiToString(name);registerType(rawType,{isVoid:true,name,fromWireType:()=>undefined,toWireType:(destructors,o)=>undefined})};var __emscripten_runtime_keepalive_clear=()=>{noExitRuntime=false;runtimeKeepaliveCounter=0};var emval_methodCallers=[];var emval_addMethodCaller=caller=>{var id=emval_methodCallers.length;emval_methodCallers.push(caller);return id};var requireRegisteredType=(rawType,humanName)=>{var impl=registeredTypes[rawType];if(undefined===impl){throwBindingError(`${humanName} has unknown type ${getTypeName(rawType)}`)}return impl};var emval_lookupTypes=(argCount,argTypes)=>{var a=new Array(argCount);for(var i=0;i<argCount;++i){a[i]=requireRegisteredType(Number(HEAPU64[(argTypes+i*8)/8]),`parameter ${i}`)}return a};var emval_returnValue=(toReturnWire,destructorsRef,handle)=>{var destructors=[];var result=toReturnWire(destructors,handle);if(destructors.length){HEAPU64[destructorsRef/8]=BigInt(Emval.toHandle(destructors))}return result};var emval_symbols={};var getStringOrSymbol=address=>{var symbol=emval_symbols[address];if(symbol===undefined){return AsciiToString(address)}return symbol};var __emval_create_invoker=function(argCount,argTypesPtr,kind){argTypesPtr=bigintToI53Checked(argTypesPtr);var ret=(()=>{var GenericWireTypeSize=16;var[retType,...argTypes]=emval_lookupTypes(argCount,argTypesPtr);var toReturnWire=retType.toWireType.bind(retType);var argFromPtr=argTypes.map(type=>type.readValueFromPointer.bind(type));argCount--;var captures={toValue:Emval.toValue};var args=argFromPtr.map((argFromPtr,i)=>{var captureName=`argFromPtr${i}`;captures[captureName]=argFromPtr;return`${captureName}(args${i?"+"+i*GenericWireTypeSize:""})`});var functionBody;switch(kind){case 0:functionBody="toValue(handle)";break;case 2:functionBody="new (toValue(handle))";break;case 3:functionBody="";break;case 1:captures["getStringOrSymbol"]=getStringOrSymbol;functionBody="toValue(handle)[getStringOrSymbol(methodName)]";break}functionBody+=`(${args})`;if(!retType.isVoid){captures["toReturnWire"]=toReturnWire;captures["emval_returnValue"]=emval_returnValue;functionBody=`return emval_returnValue(toReturnWire, destructorsRef, ${functionBody})`}functionBody=`return function (handle, methodName, destructorsRef, args) {\n${functionBody}\n}`;var invokerFunction=new Function(Object.keys(captures),functionBody)(...Object.values(captures));var functionName=`methodCaller<(${argTypes.map(t=>t.name)}) => ${retType.name}>`;return emval_addMethodCaller(createNamedFunction(functionName,invokerFunction))})();return BigInt(ret)};var __emval_get_global=function(name){name=bigintToI53Checked(name);var ret=(()=>{if(!name){return Emval.toHandle(globalThis)}name=getStringOrSymbol(name);return Emval.toHandle(globalThis[name])})();return BigInt(ret)};function __emval_invoke(caller,handle,methodName,destructorsRef,args){caller=bigintToI53Checked(caller);handle=bigintToI53Checked(handle);methodName=bigintToI53Checked(methodName);destructorsRef=bigintToI53Checked(destructorsRef);args=bigintToI53Checked(args);return emval_methodCallers[caller](handle,methodName,destructorsRef,args)}var __emval_new_cstring=v=>{v=bigintToI53Checked(v);return BigInt(Emval.toHandle(getStringOrSymbol(v)))};function __emval_run_destructors(handle){handle=bigintToI53Checked(handle);var destructors=Emval.toValue(handle);runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=bigintToI53Checked(handle);key=bigintToI53Checked(key);value=bigintToI53Checked(value);handle=Emval.toValue(handle);key=Emval.toValue(key);value=Emval.toValue(value);handle[key]=value}var isLeapYear=year=>year%4===0&&(year%100!==0||year%400===0);var MONTH_DAYS_LEAP_CUMULATIVE=[0,31,60,91,121,152,182,213,244,274,305,335];var MONTH_DAYS_REGULAR_CUMULATIVE=[0,31,59,90,120,151,181,212,243,273,304,334];var ydayFromDate=date=>{var leap=isLeapYear(date.getFullYear());var monthDaysCumulative=leap?MONTH_DAYS_LEAP_CUMULATIVE:MONTH_DAYS_REGULAR_CUMULATIVE;var yday=monthDaysCumulative[date.getMonth()]+date.getDate()-1;return yday};function __localtime_js(time,tmPtr){time=bigintToI53Checked(time);tmPtr=bigintToI53Checked(tmPtr);var date=new Date(time*1e3);HEAP32[tmPtr/4]=date.getSeconds();HEAP32[(tmPtr+4)/4]=date.getMinutes();HEAP32[(tmPtr+8)/4]=date.getHours();HEAP32[(tmPtr+12)/4]=date.getDate();HEAP32[(tmPtr+16)/4]=date.getMonth();HEAP32[(tmPtr+20)/4]=date.getFullYear()-1900;HEAP32[(tmPtr+24)/4]=date.getDay();var yday=ydayFromDate(date)|0;HEAP32[(tmPtr+28)/4]=yday;HEAP64[(tmPtr+40)/8]=BigInt(-(date.getTimezoneOffset()*60));var start=new Date(date.getFullYear(),0,1);var summerOffset=new Date(date.getFullYear(),6,1).getTimezoneOffset();var winterOffset=start.getTimezoneOffset();var dst=(summerOffset!=winterOffset&&date.getTimezoneOffset()==Math.min(winterOffset,summerOffset))|0;HEAP32[(tmPtr+32)/4]=dst}function __mmap_js(len,prot,flags,fd,offset,allocated,addr){len=bigintToI53Checked(len);offset=bigintToI53Checked(offset);allocated=bigintToI53Checked(allocated);addr=bigintToI53Checked(addr);return-52}function __munmap_js(addr,len,prot,flags,fd,offset){addr=bigintToI53Checked(addr);len=bigintToI53Checked(len);offset=bigintToI53Checked(offset)}var timers={};var _emscripten_get_now=()=>performance.now();var __setitimer_js=(which,timeout_ms)=>{if(timers[which]){clearTimeout(timers[which].id);delete timers[which]}if(!timeout_ms)return 0;var id=setTimeout(()=>{delete timers[which];callUserCallback(()=>__emscripten_timeout(which,_emscripten_get_now()))},timeout_ms);timers[which]={id,timeout_ms};return 0};var __tzset_js=function(timezone,daylight,std_name,dst_name){timezone=bigintToI53Checked(timezone);daylight=bigintToI53Checked(daylight);std_name=bigintToI53Checked(std_name);dst_name=bigintToI53Checked(dst_name);var currentYear=(new Date).getFullYear();var winter=new Date(currentYear,0,1);var summer=new Date(currentYear,6,1);var winterOffset=winter.getTimezoneOffset();var summerOffset=summer.getTimezoneOffset();var stdTimezoneOffset=Math.max(winterOffset,summerOffset);HEAPU64[timezone/8]=BigInt(stdTimezoneOffset*60);HEAP32[daylight/4]=Number(winterOffset!=summerOffset);var extractZone=timezoneOffset=>{var sign=timezoneOffset>=0?"-":"+";var absOffset=Math.abs(timezoneOffset);var hours=String(Math.floor(absOffset/60)).padStart(2,"0");var minutes=String(absOffset%60).padStart(2,"0");return`UTC${sign}${hours}${minutes}`};var winterName=extractZone(winterOffset);var summerName=extractZone(summerOffset);if(summerOffset<winterOffset){stringToUTF8(winterName,std_name,17);stringToUTF8(summerName,dst_name,17)}else{stringToUTF8(winterName,dst_name,17);stringToUTF8(summerName,std_name,17)}};var _emscripten_date_now=()=>Date.now();var nowIsMonotonic=1;var checkWasiClock=clock_id=>clock_id>=0&&clock_id<=3;function _clock_time_get(clk_id,ignored_precision,ptime){ignored_precision=bigintToI53Checked(ignored_precision);ptime=bigintToI53Checked(ptime);if(!checkWasiClock(clk_id)){return 28}var now;if(clk_id===0){now=_emscripten_date_now()}else if(nowIsMonotonic){now=_emscripten_get_now()}else{return 52}var nsec=Math.round(now*1e3*1e3);HEAP64[ptime/8]=BigInt(nsec);return 0}var Fibers={nextFiber:0,trampolineRunning:false,trampoline(){if(!Fibers.trampolineRunning&&Fibers.nextFiber){Fibers.trampolineRunning=true;do{var fiber=Fibers.nextFiber;Fibers.nextFiber=0;Fibers.finishContextSwitch(fiber)}while(Fibers.nextFiber);Fibers.trampolineRunning=false}},finishContextSwitch(newFiber){var stack_base=Number(HEAPU64[newFiber/8]);var stack_max=Number(HEAPU64[(newFiber+8)/8]);_emscripten_stack_set_limits(stack_base,stack_max);stackRestore(Number(HEAPU64[(newFiber+16)/8]));var entryPoint=Number(HEAPU64[(newFiber+24)/8]);if(entryPoint!==0){Asyncify.currData=null;HEAPU64[(newFiber+24)/8]=0n;var userData=Number(HEAPU64[(newFiber+32)/8]);(a1=>dynCall_vj(entryPoint,BigInt(a1)))(userData)}else{var asyncifyData=newFiber+40;Asyncify.currData=asyncifyData;Asyncify.state=Asyncify.State.Rewinding;_asyncify_start_rewind(asyncifyData);Asyncify.doRewind(asyncifyData)}}};function _emscripten_fiber_swap(oldFiber,newFiber){oldFiber=bigintToI53Checked(oldFiber);newFiber=bigintToI53Checked(newFiber);if(ABORT)return;if(Asyncify.state===Asyncify.State.Normal){Asyncify.state=Asyncify.State.Unwinding;var asyncifyData=oldFiber+40;Asyncify.setDataRewindFunc(asyncifyData);Asyncify.currData=asyncifyData;_asyncify_start_unwind(asyncifyData);var stackTop=stackSave();HEAPU64[(oldFiber+16)/8]=BigInt(stackTop);Fibers.nextFiber=newFiber}else{Asyncify.state=Asyncify.State.Normal;_asyncify_stop_rewind();Asyncify.currData=null}}_emscripten_fiber_swap.isAsync=true;var stringToNewUTF8=str=>{var size=lengthBytesUTF8(str)+1;var ret=_malloc(size);if(ret)stringToUTF8(str,ret,size);return ret};var _emscripten_get_compiler_setting=function(name){name=bigintToI53Checked(name);var ret=(()=>{name=UTF8ToString(name);var ret=getCompilerSetting(name);if(typeof ret=="number"||typeof ret=="boolean")return ret;var cache=_emscripten_get_compiler_setting.cache??={};var fullret=cache[name];if(fullret)return fullret;return cache[name]=stringToNewUTF8(ret)})();return BigInt(ret)};var getHeapMax=()=>2147483648;var _emscripten_get_heap_max=()=>BigInt(getHeapMax());var alignMemory=(size,alignment)=>Math.ceil(size/alignment)*alignment;var growMemory=size=>{var oldHeapSize=wasmMemory.buffer.byteLength;var pages=(size-oldHeapSize+65535)/65536|0;try{wasmMemory.grow(BigInt(pages));updateMemoryViews();return 1}catch(e){}};function _emscripten_resize_heap(requestedSize){requestedSize=bigintToI53Checked(requestedSize);var oldSize=HEAPU8.length;var maxHeapSize=getHeapMax();if(requestedSize>maxHeapSize){return false}for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignMemory(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=growMemory(newSize);if(replacement){return true}}return false}var ENV={};var getExecutableName=()=>thisProgram||"./this.program";var getEnvStrings=()=>{if(!getEnvStrings.strings){var lang=(globalThis.navigator?.language??"C").replace("-","_")+".UTF-8";var env={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:lang,_:getExecutableName()};for(var x in ENV){if(ENV[x]===undefined)delete env[x];else env[x]=ENV[x]}var strings=[];for(var x in env){strings.push(`${x}=${env[x]}`)}getEnvStrings.strings=strings}return getEnvStrings.strings};function _environ_get(__environ,environ_buf){__environ=bigintToI53Checked(__environ);environ_buf=bigintToI53Checked(environ_buf);var bufSize=0;var envp=0;for(var string of getEnvStrings()){var ptr=environ_buf+bufSize;HEAPU64[(__environ+envp)/8]=BigInt(ptr);bufSize+=stringToUTF8(string,ptr,Infinity)+1;envp+=8}return 0}function _environ_sizes_get(penviron_count,penviron_buf_size){penviron_count=bigintToI53Checked(penviron_count);penviron_buf_size=bigintToI53Checked(penviron_buf_size);var strings=getEnvStrings();HEAPU64[penviron_count/8]=BigInt(strings.length);var bufSize=0;for(var string of strings){bufSize+=lengthBytesUTF8(string)+1}HEAPU64[penviron_buf_size/8]=BigInt(bufSize);return 0}var _fd_close=fd=>52;function _fd_read(fd,iov,iovcnt,pnum){iov=bigintToI53Checked(iov);iovcnt=bigintToI53Checked(iovcnt);pnum=bigintToI53Checked(pnum);return 52}function _fd_seek(fd,offset,whence,newOffset){offset=bigintToI53Checked(offset);newOffset=bigintToI53Checked(newOffset);return 70}var printCharBuffers=[null,[],[]];var UTF8ArrayToString=(heapOrArray,idx=0,maxBytesToRead,ignoreNul)=>{var endPtr=findStringEnd(heapOrArray,idx,maxBytesToRead,ignoreNul);return UTF8Decoder.decode(heapOrArray.buffer?heapOrArray.subarray(idx,endPtr):new Uint8Array(heapOrArray.slice(idx,endPtr)))};var printChar=(stream,curr)=>{var buffer=printCharBuffers[stream];if(curr===0||curr===10){(stream===1?out:err)(UTF8ArrayToString(buffer));buffer.length=0}else{buffer.push(curr)}};function _fd_write(fd,iov,iovcnt,pnum){iov=bigintToI53Checked(iov);iovcnt=bigintToI53Checked(iovcnt);pnum=bigintToI53Checked(pnum);var num=0;for(var i=0;i<iovcnt;i++){var ptr=Number(HEAPU64[iov/8]);var len=Number(HEAPU64[(iov+8)/8]);iov+=16;for(var j=0;j<len;j++){printChar(fd,HEAPU8[ptr+j])}num+=len}HEAPU64[pnum/8]=BigInt(num);return 0}{if(Module["noExitRuntime"])noExitRuntime=Module["noExitRuntime"];if(Module["print"])out=Module["print"];if(Module["printErr"])err=Module["printErr"];if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].shift()()}}}var _malloc,___getTypeName,_free,__emscripten_timeout,_emscripten_stack_set_limits,__emscripten_stack_restore,_emscripten_stack_get_current,dynCall_vj,dynCall_jj,dynCall_vjjj,dynCall_ij,dynCall_ijj,dynCall_vjjjj,dynCall_jjji,dynCall_vjjjji,dynCall_jjj,dynCall_vjj,dynCall_vji,dynCall_vjii,dynCall_vjjjiiij,dynCall_vjjjjji,dynCall_vjjjjjiiij,dynCall_vjjijjj,dynCall_vjjjjj,dynCall_v,dynCall_vjjjjjj,dynCall_vjjjjjjjj,dynCall_ii,dynCall_vjjji,dynCall_jjjjii,dynCall_vjjijji,dynCall_vjjjjjji,dynCall_vjjjjjjj,dynCall_ijjjj,dynCall_ijjijjii,dynCall_vjji,dynCall_vjjjiiiiii,dynCall_vjjjjiiiiii,dynCall_vjjjjjjjii,dynCall_vjjjjiii,dynCall_vjjjjiiii,dynCall_fjji,dynCall_vjijjjij,dynCall_vjjjjii,dynCall_vjiij,dynCall_vjjiii,dynCall_vjjjiii,dynCall_ijjjiii,dynCall_ijjjjiii,dynCall_ijjj,dynCall_ijjjjjiji,dynCall_ijjjjjijiii,dynCall_ijii,dynCall_vjjjii,dynCall_vjjiij,dynCall_vjjjjij,dynCall_vjjijj,dynCall_vjjjjiijj,dynCall_vjjjjjiijj,dynCall_vjjjiijj,dynCall_vjiii,dynCall_ijjii,dynCall_vjiji,dynCall_jjjjj,dynCall_ijjiijii,dynCall_vjiiji,dynCall_vjjiiij,dynCall_ijjjiijj,dynCall_ijij,dynCall_vjij,dynCall_ijjjjj,dynCall_vjjd,dynCall_j,dynCall_vjjiijj,dynCall_vjiijj,dynCall_jjjj,dynCall_ijdiiii,dynCall_iji,dynCall_jjjjij,dynCall_ijjjjjjjj,dynCall_ijji,dynCall_jjjjjjj,dynCall_jjjjid,dynCall_jjjjijj,dynCall_jjjjjjjii,dynCall_jjjjijii,dynCall_jjjjijjj,dynCall_jjjijijj,dynCall_jjjijij,dynCall_vjjjiij,dynCall_vi,_asyncify_start_unwind,_asyncify_stop_unwind,_asyncify_start_rewind,_asyncify_stop_rewind,memory,__indirect_function_table,wasmMemory;function assignWasmExports(wasmExports){_malloc=wasmExports["W"];___getTypeName=wasmExports["X"];_free=wasmExports["Y"];__emscripten_timeout=wasmExports["Z"];_emscripten_stack_set_limits=wasmExports["_"];__emscripten_stack_restore=wasmExports["$"];_emscripten_stack_get_current=wasmExports["aa"];dynCall_vj=dynCalls["vj"]=wasmExports["ba"];dynCall_jj=dynCalls["jj"]=wasmExports["ca"];dynCall_vjjj=dynCalls["vjjj"]=wasmExports["da"];dynCall_ij=dynCalls["ij"]=wasmExports["ea"];dynCall_ijj=dynCalls["ijj"]=wasmExports["fa"];dynCall_vjjjj=dynCalls["vjjjj"]=wasmExports["ga"];dynCall_jjji=dynCalls["jjji"]=wasmExports["ha"];dynCall_vjjjji=dynCalls["vjjjji"]=wasmExports["ia"];dynCall_jjj=dynCalls["jjj"]=wasmExports["ja"];dynCall_vjj=dynCalls["vjj"]=wasmExports["ka"];dynCall_vji=dynCalls["vji"]=wasmExports["la"];dynCall_vjii=dynCalls["vjii"]=wasmExports["ma"];dynCall_vjjjiiij=dynCalls["vjjjiiij"]=wasmExports["na"];dynCall_vjjjjji=dynCalls["vjjjjji"]=wasmExports["oa"];dynCall_vjjjjjiiij=dynCalls["vjjjjjiiij"]=wasmExports["pa"];dynCall_vjjijjj=dynCalls["vjjijjj"]=wasmExports["qa"];dynCall_vjjjjj=dynCalls["vjjjjj"]=wasmExports["ra"];dynCall_v=dynCalls["v"]=wasmExports["sa"];dynCall_vjjjjjj=dynCalls["vjjjjjj"]=wasmExports["ta"];dynCall_vjjjjjjjj=dynCalls["vjjjjjjjj"]=wasmExports["ua"];dynCall_ii=dynCalls["ii"]=wasmExports["va"];dynCall_vjjji=dynCalls["vjjji"]=wasmExports["wa"];dynCall_jjjjii=dynCalls["jjjjii"]=wasmExports["xa"];dynCall_vjjijji=dynCalls["vjjijji"]=wasmExports["ya"];dynCall_vjjjjjji=dynCalls["vjjjjjji"]=wasmExports["za"];dynCall_vjjjjjjj=dynCalls["vjjjjjjj"]=wasmExports["Aa"];dynCall_ijjjj=dynCalls["ijjjj"]=wasmExports["Ba"];dynCall_ijjijjii=dynCalls["ijjijjii"]=wasmExports["Ca"];dynCall_vjji=dynCalls["vjji"]=wasmExports["Da"];dynCall_vjjjiiiiii=dynCalls["vjjjiiiiii"]=wasmExports["Ea"];dynCall_vjjjjiiiiii=dynCalls["vjjjjiiiiii"]=wasmExports["Fa"];dynCall_vjjjjjjjii=dynCalls["vjjjjjjjii"]=wasmExports["Ga"];dynCall_vjjjjiii=dynCalls["vjjjjiii"]=wasmExports["Ha"];dynCall_vjjjjiiii=dynCalls["vjjjjiiii"]=wasmExports["Ia"];dynCall_fjji=dynCalls["fjji"]=wasmExports["Ja"];dynCall_vjijjjij=dynCalls["vjijjjij"]=wasmExports["Ka"];dynCall_vjjjjii=dynCalls["vjjjjii"]=wasmExports["La"];dynCall_vjiij=dynCalls["vjiij"]=wasmExports["Ma"];dynCall_vjjiii=dynCalls["vjjiii"]=wasmExports["Na"];dynCall_vjjjiii=dynCalls["vjjjiii"]=wasmExports["Oa"];dynCall_ijjjiii=dynCalls["ijjjiii"]=wasmExports["Pa"];dynCall_ijjjjiii=dynCalls["ijjjjiii"]=wasmExports["Qa"];dynCall_ijjj=dynCalls["ijjj"]=wasmExports["Ra"];dynCall_ijjjjjiji=dynCalls["ijjjjjiji"]=wasmExports["Sa"];dynCall_ijjjjjijiii=dynCalls["ijjjjjijiii"]=wasmExports["Ta"];dynCall_ijii=dynCalls["ijii"]=wasmExports["Ua"];dynCall_vjjjii=dynCalls["vjjjii"]=wasmExports["Va"];dynCall_vjjiij=dynCalls["vjjiij"]=wasmExports["Wa"];dynCall_vjjjjij=dynCalls["vjjjjij"]=wasmExports["Xa"];dynCall_vjjijj=dynCalls["vjjijj"]=wasmExports["Ya"];dynCall_vjjjjiijj=dynCalls["vjjjjiijj"]=wasmExports["Za"];dynCall_vjjjjjiijj=dynCalls["vjjjjjiijj"]=wasmExports["_a"];dynCall_vjjjiijj=dynCalls["vjjjiijj"]=wasmExports["$a"];dynCall_vjiii=dynCalls["vjiii"]=wasmExports["ab"];dynCall_ijjii=dynCalls["ijjii"]=wasmExports["bb"];dynCall_vjiji=dynCalls["vjiji"]=wasmExports["cb"];dynCall_jjjjj=dynCalls["jjjjj"]=wasmExports["db"];dynCall_ijjiijii=dynCalls["ijjiijii"]=wasmExports["eb"];dynCall_vjiiji=dynCalls["vjiiji"]=wasmExports["fb"];dynCall_vjjiiij=dynCalls["vjjiiij"]=wasmExports["gb"];dynCall_ijjjiijj=dynCalls["ijjjiijj"]=wasmExports["hb"];dynCall_ijij=dynCalls["ijij"]=wasmExports["ib"];dynCall_vjij=dynCalls["vjij"]=wasmExports["jb"];dynCall_ijjjjj=dynCalls["ijjjjj"]=wasmExports["kb"];dynCall_vjjd=dynCalls["vjjd"]=wasmExports["lb"];dynCall_j=dynCalls["j"]=wasmExports["mb"];dynCall_vjjiijj=dynCalls["vjjiijj"]=wasmExports["nb"];dynCall_vjiijj=dynCalls["vjiijj"]=wasmExports["ob"];dynCall_jjjj=dynCalls["jjjj"]=wasmExports["pb"];dynCall_ijdiiii=dynCalls["ijdiiii"]=wasmExports["qb"];dynCall_iji=dynCalls["iji"]=wasmExports["rb"];dynCall_jjjjij=dynCalls["jjjjij"]=wasmExports["sb"];dynCall_ijjjjjjjj=dynCalls["ijjjjjjjj"]=wasmExports["tb"];dynCall_ijji=dynCalls["ijji"]=wasmExports["ub"];dynCall_jjjjjjj=dynCalls["jjjjjjj"]=wasmExports["vb"];dynCall_jjjjid=dynCalls["jjjjid"]=wasmExports["wb"];dynCall_jjjjijj=dynCalls["jjjjijj"]=wasmExports["xb"];dynCall_jjjjjjjii=dynCalls["jjjjjjjii"]=wasmExports["yb"];dynCall_jjjjijii=dynCalls["jjjjijii"]=wasmExports["zb"];dynCall_jjjjijjj=dynCalls["jjjjijjj"]=wasmExports["Ab"];dynCall_jjjijijj=dynCalls["jjjijijj"]=wasmExports["Bb"];dynCall_jjjijij=dynCalls["jjjijij"]=wasmExports["Cb"];dynCall_vjjjiij=dynCalls["vjjjiij"]=wasmExports["Db"];dynCall_vi=dynCalls["vi"]=wasmExports["Eb"];_asyncify_start_unwind=wasmExports["Fb"];_asyncify_stop_unwind=wasmExports["Gb"];_asyncify_start_rewind=wasmExports["Hb"];_asyncify_stop_rewind=wasmExports["Ib"];memory=wasmMemory=wasmExports["U"];__indirect_function_table=wasmExports["__indirect_function_table"]}var wasmImports={s:___syscall_fcntl64,L:___syscall_ioctl,t:___syscall_openat,D:___syscall_renameat,B:___syscall_unlinkat,N:__abort_js,S:__embind_finalize_value_object,l:__embind_register_bigint,Q:__embind_register_bool,O:__embind_register_emval,v:__embind_register_float,w:__embind_register_function,g:__embind_register_integer,b:__embind_register_memory_view,P:__embind_register_std_string,p:__embind_register_std_wstring,T:__embind_register_value_object,c:__embind_register_value_object_field,R:__embind_register_void,y:__emscripten_runtime_keepalive_clear,j:__emval_create_invoker,a:__emval_decref,k:__emval_get_global,i:__emval_invoke,d:__emval_new_cstring,h:__emval_run_destructors,e:__emval_set_property,G:__localtime_js,E:__mmap_js,F:__munmap_js,z:__setitimer_js,H:__tzset_js,M:_clock_time_get,u:_emscripten_date_now,f:_emscripten_fiber_swap,m:_emscripten_get_compiler_setting,C:_emscripten_get_heap_max,n:_emscripten_get_now,A:_emscripten_resize_heap,J:_environ_get,K:_environ_sizes_get,o:_fd_close,r:_fd_read,I:_fd_seek,q:_fd_write,x:_proc_exit};function applySignatureConversions(wasmExports){wasmExports=Object.assign({},wasmExports);var makeWrapper_pp=f=>a0=>Number(f(BigInt(a0)));var makeWrapper__p=f=>a0=>f(BigInt(a0));var makeWrapper__pp=f=>(a0,a1)=>f(BigInt(a0),BigInt(a1));var makeWrapper_p=f=>()=>Number(f());var makeWrapper__p_=f=>(a0,a1)=>f(BigInt(a0),a1);var makeWrapper__p___=f=>(a0,a1,a2,a3)=>f(BigInt(a0),a1,a2,a3);var makeWrapper__p__=f=>(a0,a1,a2)=>f(BigInt(a0),a1,a2);var makeWrapper__p____=f=>(a0,a1,a2,a3,a4)=>f(BigInt(a0),a1,a2,a3,a4);var makeWrapper__p_____=f=>(a0,a1,a2,a3,a4,a5)=>f(BigInt(a0),a1,a2,a3,a4,a5);var makeWrapper__p_______=f=>(a0,a1,a2,a3,a4,a5,a6,a7)=>f(BigInt(a0),a1,a2,a3,a4,a5,a6,a7);var makeWrapper__p______=f=>(a0,a1,a2,a3,a4,a5,a6)=>f(BigInt(a0),a1,a2,a3,a4,a5,a6);var makeWrapper__p_________=f=>(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9)=>f(BigInt(a0),a1,a2,a3,a4,a5,a6,a7,a8,a9);var makeWrapper__p________=f=>(a0,a1,a2,a3,a4,a5,a6,a7,a8)=>f(BigInt(a0),a1,a2,a3,a4,a5,a6,a7,a8);var makeWrapper__p__________=f=>(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)=>f(BigInt(a0),a1,a2,a3,a4,a5,a6,a7,a8,a9,a10);wasmExports["W"]=makeWrapper_pp(wasmExports["W"]);wasmExports["X"]=makeWrapper_pp(wasmExports["X"]);wasmExports["Y"]=makeWrapper__p(wasmExports["Y"]);wasmExports["_"]=makeWrapper__pp(wasmExports["_"]);wasmExports["$"]=makeWrapper__p(wasmExports["$"]);wasmExports["_emscripten_stack_alloc"]=makeWrapper_pp(wasmExports["_emscripten_stack_alloc"]);wasmExports["aa"]=makeWrapper_p(wasmExports["aa"]);wasmExports["ba"]=makeWrapper__p_(wasmExports["ba"]);wasmExports["ca"]=makeWrapper__p_(wasmExports["ca"]);wasmExports["da"]=makeWrapper__p___(wasmExports["da"]);wasmExports["ea"]=makeWrapper__p_(wasmExports["ea"]);wasmExports["fa"]=makeWrapper__p__(wasmExports["fa"]);wasmExports["ga"]=makeWrapper__p____(wasmExports["ga"]);wasmExports["ha"]=makeWrapper__p___(wasmExports["ha"]);wasmExports["ia"]=makeWrapper__p_____(wasmExports["ia"]);wasmExports["ja"]=makeWrapper__p__(wasmExports["ja"]);wasmExports["ka"]=makeWrapper__p__(wasmExports["ka"]);wasmExports["la"]=makeWrapper__p__(wasmExports["la"]);wasmExports["ma"]=makeWrapper__p___(wasmExports["ma"]);wasmExports["na"]=makeWrapper__p_______(wasmExports["na"]);wasmExports["oa"]=makeWrapper__p______(wasmExports["oa"]);wasmExports["pa"]=makeWrapper__p_________(wasmExports["pa"]);wasmExports["qa"]=makeWrapper__p______(wasmExports["qa"]);wasmExports["ra"]=makeWrapper__p_____(wasmExports["ra"]);wasmExports["sa"]=makeWrapper__p(wasmExports["sa"]);wasmExports["ta"]=makeWrapper__p______(wasmExports["ta"]);wasmExports["ua"]=makeWrapper__p________(wasmExports["ua"]);wasmExports["va"]=makeWrapper__p_(wasmExports["va"]);wasmExports["wa"]=makeWrapper__p____(wasmExports["wa"]);wasmExports["xa"]=makeWrapper__p_____(wasmExports["xa"]);wasmExports["ya"]=makeWrapper__p______(wasmExports["ya"]);wasmExports["za"]=makeWrapper__p_______(wasmExports["za"]);wasmExports["Aa"]=makeWrapper__p_______(wasmExports["Aa"]);wasmExports["Ba"]=makeWrapper__p____(wasmExports["Ba"]);wasmExports["Ca"]=makeWrapper__p_______(wasmExports["Ca"]);wasmExports["Da"]=makeWrapper__p___(wasmExports["Da"]);wasmExports["Ea"]=makeWrapper__p_________(wasmExports["Ea"]);wasmExports["Fa"]=makeWrapper__p__________(wasmExports["Fa"]);wasmExports["Ga"]=makeWrapper__p_________(wasmExports["Ga"]);wasmExports["Ha"]=makeWrapper__p_______(wasmExports["Ha"]);wasmExports["Ia"]=makeWrapper__p________(wasmExports["Ia"]);wasmExports["Ja"]=makeWrapper__p___(wasmExports["Ja"]);wasmExports["Ka"]=makeWrapper__p_______(wasmExports["Ka"]);wasmExports["La"]=makeWrapper__p______(wasmExports["La"]);wasmExports["Ma"]=makeWrapper__p____(wasmExports["Ma"]);wasmExports["Na"]=makeWrapper__p_____(wasmExports["Na"]);wasmExports["Oa"]=makeWrapper__p______(wasmExports["Oa"]);wasmExports["Pa"]=makeWrapper__p______(wasmExports["Pa"]);wasmExports["Qa"]=makeWrapper__p_______(wasmExports["Qa"]);wasmExports["Ra"]=makeWrapper__p___(wasmExports["Ra"]);wasmExports["Sa"]=makeWrapper__p________(wasmExports["Sa"]);wasmExports["Ta"]=makeWrapper__p__________(wasmExports["Ta"]);wasmExports["Ua"]=makeWrapper__p___(wasmExports["Ua"]);wasmExports["Va"]=makeWrapper__p_____(wasmExports["Va"]);wasmExports["Wa"]=makeWrapper__p_____(wasmExports["Wa"]);wasmExports["Xa"]=makeWrapper__p______(wasmExports["Xa"]);wasmExports["Ya"]=makeWrapper__p_____(wasmExports["Ya"]);wasmExports["Za"]=makeWrapper__p________(wasmExports["Za"]);wasmExports["_a"]=makeWrapper__p_________(wasmExports["_a"]);wasmExports["$a"]=makeWrapper__p_______(wasmExports["$a"]);wasmExports["ab"]=makeWrapper__p____(wasmExports["ab"]);wasmExports["bb"]=makeWrapper__p____(wasmExports["bb"]);wasmExports["cb"]=makeWrapper__p____(wasmExports["cb"]);wasmExports["db"]=makeWrapper__p____(wasmExports["db"]);wasmExports["eb"]=makeWrapper__p_______(wasmExports["eb"]);wasmExports["fb"]=makeWrapper__p_____(wasmExports["fb"]);wasmExports["gb"]=makeWrapper__p______(wasmExports["gb"]);wasmExports["hb"]=makeWrapper__p_______(wasmExports["hb"]);wasmExports["ib"]=makeWrapper__p___(wasmExports["ib"]);wasmExports["jb"]=makeWrapper__p___(wasmExports["jb"]);wasmExports["kb"]=makeWrapper__p_____(wasmExports["kb"]);wasmExports["lb"]=makeWrapper__p___(wasmExports["lb"]);wasmExports["mb"]=makeWrapper__p(wasmExports["mb"]);wasmExports["nb"]=makeWrapper__p______(wasmExports["nb"]);wasmExports["ob"]=makeWrapper__p_____(wasmExports["ob"]);wasmExports["pb"]=makeWrapper__p___(wasmExports["pb"]);wasmExports["qb"]=makeWrapper__p______(wasmExports["qb"]);wasmExports["rb"]=makeWrapper__p__(wasmExports["rb"]);wasmExports["sb"]=makeWrapper__p_____(wasmExports["sb"]);wasmExports["tb"]=makeWrapper__p________(wasmExports["tb"]);wasmExports["ub"]=makeWrapper__p___(wasmExports["ub"]);wasmExports["vb"]=makeWrapper__p______(wasmExports["vb"]);wasmExports["wb"]=makeWrapper__p_____(wasmExports["wb"]);wasmExports["xb"]=makeWrapper__p______(wasmExports["xb"]);wasmExports["yb"]=makeWrapper__p________(wasmExports["yb"]);wasmExports["zb"]=makeWrapper__p_______(wasmExports["zb"]);wasmExports["Ab"]=makeWrapper__p_______(wasmExports["Ab"]);wasmExports["Bb"]=makeWrapper__p_______(wasmExports["Bb"]);wasmExports["Cb"]=makeWrapper__p______(wasmExports["Cb"]);wasmExports["Db"]=makeWrapper__p______(wasmExports["Db"]);wasmExports["Eb"]=makeWrapper__p_(wasmExports["Eb"]);wasmExports["Fb"]=makeWrapper__p(wasmExports["Fb"]);wasmExports["Hb"]=makeWrapper__p(wasmExports["Hb"]);return wasmExports}function run(){preRun();function doRun(){Module["calledRun"]=true;if(ABORT)return;initRuntime();readyPromiseResolve?.(Module);Module["onRuntimeInitialized"]?.();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(()=>{setTimeout(()=>Module["setStatus"](""),1);doRun()},1)}else{doRun()}}var wasmExports;wasmExports=await (createWasm());run();if(runtimeInitialized){moduleRtn=Module}else{moduleRtn=new Promise((resolve,reject)=>{readyPromiseResolve=resolve;readyPromiseReject=reject})}
2
- ;return moduleRtn}export default Module;
1
+ // This code implements the `-sMODULARIZE` settings by taking the generated
2
+ // JS program code (INNER_JS_CODE) and wrapping it in a factory function.
3
+ // When targeting node and ES6 we use `await import ..` in the generated code
4
+ // so the outer function needs to be marked as async.
5
+ async function Module(moduleArg={}){var moduleRtn;// include: shell.js
6
+ // include: minimum_runtime_check.js
7
+ // end include: minimum_runtime_check.js
8
+ // The Module object: Our interface to the outside world. We import
9
+ // and export values on it. There are various ways Module can be used:
10
+ // 1. Not defined. We create it here
11
+ // 2. A function parameter, function(moduleArg) => Promise<Module>
12
+ // 3. pre-run appended it, var Module = {}; ..generated code..
13
+ // 4. External script tag defines var Module.
14
+ // We need to check if Module already exists (e.g. case 3 above).
15
+ // Substitution will be replaced with actual code on later stage of the build,
16
+ // this way Closure Compiler will not mangle it (e.g. case 4. above).
17
+ // Note that if you want to run closure, and also to use Module
18
+ // after the generated code, you will need to define var Module = {};
19
+ // before the code. Then that object will be used in the code, and you
20
+ // can continue to use Module afterwards as well.
21
+ var Module=moduleArg;// Determine the runtime environment we are in. You can customize this by
22
+ // setting the ENVIRONMENT setting at compile time (see settings.js).
23
+ // Attempt to auto-detect the environment
24
+ var ENVIRONMENT_IS_WEB=!!globalThis.window;var ENVIRONMENT_IS_WORKER=!!globalThis.WorkerGlobalScope;// N.b. Electron.js environment is simultaneously a NODE-environment, but
25
+ // also a web environment.
26
+ var ENVIRONMENT_IS_NODE=globalThis.process?.versions?.node&&globalThis.process?.type!="renderer";if(ENVIRONMENT_IS_NODE){// When building an ES module `require` is not normally available.
27
+ // We need to use `createRequire()` to construct the require()` function.
28
+ const{createRequire}=await import("node:module");/** @suppress{duplicate} */var require=createRequire(import.meta.url)}// --pre-jses are emitted after the Module integration code, so that they can
29
+ // refer to Module (if they choose; they can also define Module)
30
+ var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var _scriptName=import.meta.url;// `/` should be present at the end if `scriptDirectory` is not empty
31
+ var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}// Hooks that are implemented differently in different runtime environments.
32
+ var readAsync,readBinary;if(ENVIRONMENT_IS_NODE){// These modules will usually be used on Node.js. Load them eagerly to avoid
33
+ // the complexity of lazy-loading.
34
+ var fs=require("node:fs");if(_scriptName.startsWith("file:")){scriptDirectory=require("node:path").dirname(require("node:url").fileURLToPath(_scriptName))+"/"}// include: node_shell_read.js
35
+ readBinary=filename=>{// We need to re-wrap `file://` strings to URLs.
36
+ filename=isFileURI(filename)?new URL(filename):filename;var ret=fs.readFileSync(filename);return ret};readAsync=async(filename,binary=true)=>{// See the comment in the `readBinary` function.
37
+ filename=isFileURI(filename)?new URL(filename):filename;var ret=fs.readFileSync(filename,binary?undefined:"utf8");return ret};// end include: node_shell_read.js
38
+ if(process.argv.length>1){thisProgram=process.argv[1].replace(/\\/g,"/")}arguments_=process.argv.slice(2);quit_=(status,toThrow)=>{process.exitCode=status;throw toThrow}}else// Note that this includes Node.js workers when relevant (pthreads is enabled).
39
+ // Node.js workers are detected as a combination of ENVIRONMENT_IS_WORKER and
40
+ // ENVIRONMENT_IS_NODE.
41
+ if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){try{scriptDirectory=new URL(".",_scriptName).href}catch{}{// include: web_or_worker_shell_read.js
42
+ if(ENVIRONMENT_IS_WORKER){readBinary=url=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(/** @type{!ArrayBuffer} */(xhr.response))}}readAsync=async url=>{var response=await fetch(url,{credentials:"same-origin"});if(response.ok){return response.arrayBuffer()}throw new Error(response.status+" : "+response.url)}}}else{}var out=console.log.bind(console);var err=console.error.bind(console);// end include: shell.js
43
+ // include: preamble.js
44
+ // === Preamble library stuff ===
45
+ // Documentation for the public APIs defined in this file must be updated in:
46
+ // site/source/docs/api_reference/preamble.js.rst
47
+ // A prebuilt local version of the documentation is available at:
48
+ // site/build/text/docs/api_reference/preamble.js.txt
49
+ // You can also build docs locally as HTML or other formats in site/
50
+ // An online HTML version (which may be of a different version of Emscripten)
51
+ // is up at http://kripken.github.io/emscripten-site/docs/api_reference/preamble.js.html
52
+ var wasmBinary;// Wasm globals
53
+ //========================================
54
+ // Runtime essentials
55
+ //========================================
56
+ // whether we are quitting the application. no code should run after this.
57
+ // set in exit() and abort()
58
+ var ABORT=false;// set by exit() and abort(). Passed to 'onExit' handler.
59
+ // NOTE: This is also used as the process return code in shell environments
60
+ // but only when noExitRuntime is false.
61
+ var EXITSTATUS;/**
62
+ * Indicates whether filename is delivered via file protocol (as opposed to http/https)
63
+ * @noinline
64
+ */var isFileURI=filename=>filename.startsWith("file://");// include: runtime_common.js
65
+ // include: runtime_stack_check.js
66
+ // end include: runtime_stack_check.js
67
+ // include: runtime_exceptions.js
68
+ // end include: runtime_exceptions.js
69
+ // include: runtime_debug.js
70
+ // end include: runtime_debug.js
71
+ var readyPromiseResolve,readyPromiseReject;// Memory management
72
+ var runtimeInitialized=false;function updateMemoryViews(){var b=wasmMemory.buffer;Module["HEAP8"]=HEAP8=new Int8Array(b);HEAP16=new Int16Array(b);HEAPU8=new Uint8Array(b);HEAPU16=new Uint16Array(b);HEAP32=new Int32Array(b);HEAPU32=new Uint32Array(b);HEAPF32=new Float32Array(b);HEAPF64=new Float64Array(b);HEAP64=new BigInt64Array(b);HEAPU64=new BigUint64Array(b)}// include: memoryprofiler.js
73
+ // end include: memoryprofiler.js
74
+ // end include: runtime_common.js
75
+ function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}// Begin ATPRERUNS hooks
76
+ callRuntimeCallbacks(onPreRuns)}function initRuntime(){runtimeInitialized=true;// No ATINITS hooks
77
+ wasmExports["V"]()}function postRun(){// PThreads reuse the runtime from the main thread.
78
+ if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}// Begin ATPOSTRUNS hooks
79
+ callRuntimeCallbacks(onPostRuns)}/** @param {string|number=} what */function abort(what){Module["onAbort"]?.(what);what="Aborted("+what+")";// TODO(sbc): Should we remove printing and leave it up to whoever
80
+ // catches the exception?
81
+ err(what);ABORT=true;what+=". Build with -sASSERTIONS for more info.";// Use a wasm runtime error, because a JS error might be seen as a foreign
82
+ // exception, which means we'd run destructors on it. We need the error to
83
+ // simply make the program stop.
84
+ // FIXME This approach does not work in Wasm EH because it currently does not assume
85
+ // all RuntimeErrors are from traps; it decides whether a RuntimeError is from
86
+ // a trap or not based on a hidden field within the object. So at the moment
87
+ // we don't have a way of throwing a wasm trap from JS. TODO Make a JS API that
88
+ // allows this in the wasm spec.
89
+ // Suppress closure compiler warning here. Closure compiler's builtin extern
90
+ // definition for WebAssembly.RuntimeError claims it takes no arguments even
91
+ // though it can.
92
+ // TODO(https://github.com/google/closure-compiler/pull/3913): Remove if/when upstream closure gets fixed.
93
+ /** @suppress {checkTypes} */var e=new WebAssembly.RuntimeError(what);readyPromiseReject?.(e);// Throw the error whether or not MODULARIZE is set because abort is used
94
+ // in code paths apart from instantiation where an exception is expected
95
+ // to be thrown when abort is called.
96
+ throw e}var wasmBinaryFile;function findWasmBinary(){if(Module["locateFile"]){return locateFile("heic-enc.wasm")}// Use bundler-friendly `new URL(..., import.meta.url)` pattern; works in browsers too.
97
+ return new URL("heic-enc.wasm",import.meta.url).href}function getBinarySync(file){if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(file)}// Throwing a plain string here, even though it not normally advisable since
98
+ // this gets turning into an `abort` in instantiateArrayBuffer.
99
+ throw"both async and sync fetching of the wasm failed"}async function getWasmBinary(binaryFile){// If we don't have the binary yet, load it asynchronously using readAsync.
100
+ if(!wasmBinary){// Fetch the binary using readAsync
101
+ try{var response=await readAsync(binaryFile);return new Uint8Array(response)}catch{}}// Otherwise, getBinarySync should be able to get it synchronously
102
+ return getBinarySync(binaryFile)}async function instantiateArrayBuffer(binaryFile,imports){try{var binary=await getWasmBinary(binaryFile);var instance=await WebAssembly.instantiate(binary,imports);return instance}catch(reason){err(`failed to asynchronously prepare wasm: ${reason}`);abort(reason)}}async function instantiateAsync(binary,binaryFile,imports){if(!binary&&!ENVIRONMENT_IS_NODE){try{var response=fetch(binaryFile,{credentials:"same-origin"});var instantiationResult=await WebAssembly.instantiateStreaming(response,imports);return instantiationResult}catch(reason){// We expect the most common failure cause to be a bad MIME type for the binary,
103
+ // in which case falling back to ArrayBuffer instantiation should work.
104
+ err(`wasm streaming compile failed: ${reason}`);err("falling back to ArrayBuffer instantiation")}}return instantiateArrayBuffer(binaryFile,imports)}function getWasmImports(){// prepare imports
105
+ var imports={"a":wasmImports};return imports}// Create the wasm instance.
106
+ // Receives the wasm imports, returns the exports.
107
+ async function createWasm(){// Load the wasm module and create an instance of using native support in the JS engine.
108
+ // handle a generated wasm instance, receiving its exports and
109
+ // performing other necessary setup
110
+ /** @param {WebAssembly.Module=} module*/function receiveInstance(instance,module){wasmExports=instance.exports;wasmExports=Asyncify.instrumentWasmExports(wasmExports);wasmExports=applySignatureConversions(wasmExports);assignWasmExports(wasmExports);updateMemoryViews();return wasmExports}// Prefer streaming instantiation if available.
111
+ function receiveInstantiationResult(result){// 'result' is a ResultObject object which has both the module and instance.
112
+ // receiveInstance() will swap in the exports (to Module.asm) so they can be called
113
+ // TODO: Due to Closure regression https://github.com/google/closure-compiler/issues/3193, the above line no longer optimizes out down to the following line.
114
+ // When the regression is fixed, can restore the above PTHREADS-enabled path.
115
+ return receiveInstance(result["instance"])}var info=getWasmImports();// User shell pages can write their own Module.instantiateWasm = function(imports, successCallback) callback
116
+ // to manually instantiate the Wasm module themselves. This allows pages to
117
+ // run the instantiation parallel to any other async startup actions they are
118
+ // performing.
119
+ // Also pthreads and wasm workers initialize the wasm instance through this
120
+ // path.
121
+ if(Module["instantiateWasm"]){return new Promise((resolve,reject)=>{Module["instantiateWasm"](info,(inst,mod)=>{resolve(receiveInstance(inst,mod))})})}wasmBinaryFile??=findWasmBinary();var result=await instantiateAsync(wasmBinary,wasmBinaryFile,info);var exports=receiveInstantiationResult(result);return exports}var compilerSettings={"ASSERTIONS":0,"STACK_OVERFLOW_CHECK":0,"CHECK_NULL_WRITES":true,"VERBOSE":false,"INVOKE_RUN":true,"EXIT_RUNTIME":false,"STACK_SIZE":2097152,"MALLOC":"dlmalloc","ABORTING_MALLOC":0,"INITIAL_HEAP":16777216,"INITIAL_MEMORY":-1,"MAXIMUM_MEMORY":2147483648,"ALLOW_MEMORY_GROWTH":1,"MEMORY_GROWTH_GEOMETRIC_STEP":.2,"MEMORY_GROWTH_GEOMETRIC_CAP":100663296,"MEMORY_GROWTH_LINEAR_STEP":-1,"MEMORY64":1,"INITIAL_TABLE":-1,"ALLOW_TABLE_GROWTH":false,"GLOBAL_BASE":1024,"TABLE_BASE":1,"USE_CLOSURE_COMPILER":1,"CLOSURE_WARNINGS":"quiet","IGNORE_CLOSURE_COMPILER_ERRORS":false,"DECLARE_ASM_MODULE_EXPORTS":true,"INLINING_LIMIT":false,"SUPPORT_BIG_ENDIAN":false,"SAFE_HEAP":0,"SAFE_HEAP_LOG":false,"EMULATE_FUNCTION_POINTER_CASTS":false,"EXCEPTION_DEBUG":false,"LIBRARY_DEBUG":false,"SYSCALL_DEBUG":false,"SOCKET_DEBUG":false,"DYLINK_DEBUG":0,"FS_DEBUG":false,"SOCKET_WEBRTC":false,"WEBSOCKET_URL":"ws://","PROXY_POSIX_SOCKETS":false,"WEBSOCKET_SUBPROTOCOL":"binary","OPENAL_DEBUG":false,"WEBSOCKET_DEBUG":false,"GL_ASSERTIONS":false,"TRACE_WEBGL_CALLS":false,"GL_DEBUG":false,"GL_TESTING":false,"GL_MAX_TEMP_BUFFER_SIZE":2097152,"GL_UNSAFE_OPTS":true,"FULL_ES2":false,"GL_EMULATE_GLES_VERSION_STRING_FORMAT":true,"GL_EXTENSIONS_IN_PREFIXED_FORMAT":true,"GL_SUPPORT_AUTOMATIC_ENABLE_EXTENSIONS":true,"GL_SUPPORT_SIMPLE_ENABLE_EXTENSIONS":true,"GL_TRACK_ERRORS":true,"GL_SUPPORT_EXPLICIT_SWAP_CONTROL":false,"GL_POOL_TEMP_BUFFERS":true,"GL_EXPLICIT_UNIFORM_LOCATION":false,"GL_EXPLICIT_UNIFORM_BINDING":false,"USE_WEBGL2":false,"MIN_WEBGL_VERSION":1,"MAX_WEBGL_VERSION":1,"WEBGL2_BACKWARDS_COMPATIBILITY_EMULATION":false,"FULL_ES3":false,"LEGACY_GL_EMULATION":false,"GL_FFP_ONLY":false,"GL_PREINITIALIZED_CONTEXT":false,"STB_IMAGE":false,"GL_DISABLE_HALF_FLOAT_EXTENSION_IF_BROKEN":false,"GL_WORKAROUND_SAFARI_GETCONTEXT_BUG":true,"GL_ENABLE_GET_PROC_ADDRESS":true,"JS_MATH":false,"LEGACY_VM_SUPPORT":false,"ENVIRONMENT":["web","worker","node"],"LZ4":false,"DISABLE_EXCEPTION_CATCHING":1,"EXCEPTION_CATCHING_ALLOWED":[],"DISABLE_EXCEPTION_THROWING":1,"EXPORT_EXCEPTION_HANDLING_HELPERS":false,"EXCEPTION_STACK_TRACES":false,"WASM_LEGACY_EXCEPTIONS":true,"ASYNCIFY":1,"ASYNCIFY_IMPORTS":["env.invoke_*","env.__asyncjs__*","*.fd_sync","*.emscripten_promise_await","*.__syscall_poll","*.emscripten_idb_load","*.emscripten_idb_store","*.emscripten_idb_delete","*.emscripten_idb_exists","*.emscripten_idb_clear","*.emscripten_sleep","*.emscripten_wget_data","*.emscripten_scan_registers","*.emscripten_fiber_swap","*._emval_await"],"ASYNCIFY_IGNORE_INDIRECT":false,"ASYNCIFY_STACK_SIZE":4096,"ASYNCIFY_REMOVE":[],"ASYNCIFY_ADD":["heif_context_encode_image","green_thread_entry(*)","gthread_cond_wait","gthread_join","gthread_cond_timedwait","*ThreadShim(*)"],"ASYNCIFY_PROPAGATE_ADD":true,"ASYNCIFY_ONLY":[],"ASYNCIFY_ADVISE":false,"ASYNCIFY_DEBUG":0,"ASYNCIFY_EXPORTS":["main","__main_argc_argv"],"JSPI":0,"JSPI_EXPORTS":[],"JSPI_IMPORTS":[],"EXPORTED_RUNTIME_METHODS":{},"INCOMING_MODULE_JS_API":{},"CASE_INSENSITIVE_FS":false,"FILESYSTEM":0,"FORCE_FILESYSTEM":false,"NODERAWFS":false,"NODE_HOST_ENV":false,"NODE_CODE_CACHING":false,"EXPORTED_FUNCTIONS":{},"EXPORT_ALL":false,"EXPORT_KEEPALIVE":true,"RETAIN_COMPILER_SETTINGS":1,"DEFAULT_LIBRARY_FUNCS_TO_INCLUDE":["$ExitStatus","$HEAP16","$HEAP32","$HEAP64","$HEAP8","$HEAPF32","$HEAPF64","$HEAPU16","$HEAPU32","$HEAPU64","$HEAPU8","$addOnPostRun","$addOnPreRun","$callRuntimeCallbacks","$dynCall","$getValue","$noExitRuntime","$setValue","$stackRestore","$stackSave","$wasmMemory","__syscall_fcntl64","__syscall_ioctl","__syscall_openat","__syscall_renameat","__syscall_unlinkat","_abort_js","_embind_finalize_value_object","_embind_register_bigint","_embind_register_bool","_embind_register_emval","_embind_register_float","_embind_register_function","_embind_register_integer","_embind_register_memory_view","_embind_register_std_string","_embind_register_std_wstring","_embind_register_value_object","_embind_register_value_object_field","_embind_register_void","_emscripten_runtime_keepalive_clear","_emval_create_invoker","_emval_decref","_emval_get_global","_emval_invoke","_emval_new_cstring","_emval_run_destructors","_emval_set_property","_localtime_js","_mmap_js","_munmap_js","_setitimer_js","_tzset_js","clock_time_get","emscripten_date_now","emscripten_fiber_swap","emscripten_get_compiler_setting","emscripten_get_heap_max","emscripten_get_now","emscripten_resize_heap","environ_get","environ_sizes_get","fd_close","fd_read","fd_seek","fd_write","proc_exit","$Asyncify","$HEAP8"],"INCLUDE_FULL_LIBRARY":false,"MAIN_MODULE":0,"SIDE_MODULE":0,"RUNTIME_LINKED_LIBS":[],"BUILD_AS_WORKER":false,"PROXY_TO_PTHREAD":false,"LINKABLE":false,"STRICT":false,"IGNORE_MISSING_MAIN":true,"STRICT_JS":false,"WARN_ON_UNDEFINED_SYMBOLS":true,"ERROR_ON_UNDEFINED_SYMBOLS":true,"SMALL_XHR_CHUNKS":false,"DETERMINISTIC":false,"MODULARIZE":1,"EXPORT_ES6":1,"EXPORT_NAME":"Module","DYNAMIC_EXECUTION":0,"BOOTSTRAPPING_STRUCT_INFO":false,"EMSCRIPTEN_TRACING":false,"USE_GLFW":0,"WASM":1,"STANDALONE_WASM":false,"BINARYEN_IGNORE_IMPLICIT_TRAPS":false,"BINARYEN_EXTRA_PASSES":"","WASM_ASYNC_COMPILATION":true,"DYNCALLS":1,"WASM_BIGINT":true,"EMIT_PRODUCERS_SECTION":false,"EMIT_EMSCRIPTEN_LICENSE":false,"LEGALIZE_JS_FFI":0,"USE_SDL":0,"USE_SDL_GFX":0,"USE_SDL_IMAGE":1,"USE_SDL_TTF":1,"USE_SDL_NET":1,"USE_ICU":false,"USE_ZLIB":false,"USE_BZIP2":false,"USE_GIFLIB":false,"USE_LIBJPEG":false,"USE_LIBPNG":false,"USE_REGAL":false,"USE_BOOST_HEADERS":false,"USE_BULLET":false,"USE_VORBIS":false,"USE_OGG":false,"USE_MPG123":false,"USE_FREETYPE":false,"USE_SDL_MIXER":1,"USE_HARFBUZZ":false,"USE_COCOS2D":0,"USE_MODPLUG":false,"SDL2_IMAGE_FORMATS":[],"SDL2_MIXER_FORMATS":["ogg"],"USE_SQLITE3":false,"SHARED_MEMORY":false,"WASM_WORKERS":0,"AUDIO_WORKLET":0,"AUDIO_WORKLET_SUPPORT_AUDIO_PARAMS":true,"WEBAUDIO_DEBUG":0,"PTHREAD_POOL_SIZE":0,"PTHREAD_POOL_SIZE_STRICT":1,"PTHREAD_POOL_DELAY_LOAD":false,"DEFAULT_PTHREAD_STACK_SIZE":0,"PTHREADS_PROFILING":false,"ALLOW_BLOCKING_ON_MAIN_THREAD":true,"PTHREADS_DEBUG":false,"EVAL_CTORS":0,"TEXTDECODER":2,"EMBIND_STD_STRING_IS_UTF8":true,"EMBIND_AOT":1,"OFFSCREENCANVAS_SUPPORT":false,"OFFSCREENCANVASES_TO_PTHREAD":"#canvas","OFFSCREEN_FRAMEBUFFER":false,"FETCH_SUPPORT_INDEXEDDB":true,"FETCH_DEBUG":false,"FETCH":false,"FETCH_STREAMING":0,"WASMFS":false,"SINGLE_FILE":false,"SINGLE_FILE_BINARY_ENCODE":true,"AUTO_JS_LIBRARIES":true,"AUTO_NATIVE_LIBRARIES":true,"MIN_FIREFOX_VERSION":129,"MIN_SAFARI_VERSION":2147483647,"MIN_CHROME_VERSION":128,"MIN_NODE_VERSION":23e4,"MINIMAL_RUNTIME":0,"MINIMAL_RUNTIME_STREAMING_WASM_COMPILATION":false,"MINIMAL_RUNTIME_STREAMING_WASM_INSTANTIATION":false,"SUPPORT_LONGJMP":"emscripten","DISABLE_DEPRECATED_FIND_EVENT_TARGET_BEHAVIOR":true,"HTML5_SUPPORT_DEFERRING_USER_SENSITIVE_REQUESTS":true,"MINIFY_HTML":true,"ASAN_SHADOW_SIZE":-1,"SOURCE_MAP_PREFIXES":[],"DEFAULT_TO_CXX":true,"PRINTF_LONG_DOUBLE":false,"SEPARATE_DWARF_URL":"","ERROR_ON_WASM_CHANGES_AFTER_LINK":false,"ABORT_ON_WASM_EXCEPTIONS":false,"PURE_WASI":false,"IMPORTED_MEMORY":false,"SPLIT_MODULE":false,"AUTOLOAD_DYLIBS":true,"ALLOW_UNIMPLEMENTED_SYSCALLS":true,"TRUSTED_TYPES":false,"POLYFILL":true,"RUNTIME_DEBUG":0,"LEGACY_RUNTIME":false,"SIGNATURE_CONVERSIONS":[],"SOURCE_PHASE_IMPORTS":false,"WASM_ESM_INTEGRATION":false,"JS_BASE64_API":false,"GROWABLE_ARRAYBUFFERS":false,"WASM_JS_TYPES":false,"CROSS_ORIGIN":false,"FAKE_DYLIBS":true,"EXECUTABLE":false,"BINARYEN":1,"TOTAL_STACK":2097152,"BINARYEN_ASYNC_COMPILATION":true,"UNALIGNED_MEMORY":0,"FORCE_ALIGNED_MEMORY":0,"PGO":0,"QUANTUM_SIZE":4,"FUNCTION_POINTER_ALIGNMENT":2,"RESERVED_FUNCTION_POINTERS":false,"BUILD_AS_SHARED_LIB":0,"SAFE_SPLIT_MEMORY":0,"SPLIT_MEMORY":0,"BINARYEN_METHOD":"native-wasm","BINARYEN_TRAP_MODE":-1,"PRECISE_I64_MATH":1,"MEMFS_APPEND_TO_TYPED_ARRAYS":1,"ERROR_ON_MISSING_LIBRARIES":1,"EMITTING_JS":1,"SKIP_STACK_IN_SMALL":0,"SAFE_STACK":0,"MEMORY_GROWTH_STEP":-1,"ELIMINATE_DUPLICATE_FUNCTIONS":0,"ELIMINATE_DUPLICATE_FUNCTIONS_DUMP_EQUIVALENT_FUNCTIONS":0,"ELIMINATE_DUPLICATE_FUNCTIONS_PASSES":5,"WASM_OBJECT_FILES":1,"TOTAL_MEMORY":-1,"WASM_MEM_MAX":2147483648,"BINARYEN_MEM_MAX":2147483648,"BINARYEN_PASSES":"","SWAPPABLE_ASM_MODULE":0,"ASM_JS":1,"FINALIZE_ASM_JS":0,"ASYNCIFY_WHITELIST":[],"ASYNCIFY_BLACKLIST":[],"EXCEPTION_CATCHING_WHITELIST":[],"SEPARATE_ASM":0,"SEPARATE_ASM_MODULE_NAME":"","FAST_UNROLLED_MEMCPY_AND_MEMSET":0,"DOUBLE_MODE":0,"PRECISE_F32":0,"ALIASING_FUNCTION_POINTERS":0,"AGGRESSIVE_VARIABLE_ELIMINATION":0,"SIMPLIFY_IFS":1,"DEAD_FUNCTIONS":[],"WASM_BACKEND":-1,"EXPORT_BINDINGS":0,"RUNNING_JS_OPTS":0,"EXPORT_FUNCTION_TABLES":0,"BINARYEN_SCRIPTS":"","WARN_UNALIGNED":0,"ASM_PRIMITIVE_VARS":[],"WORKAROUND_IOS_9_RIGHT_SHIFT_BUG":0,"RUNTIME_FUNCS_TO_IMPORT":[],"LIBRARY_DEPS_TO_AUTOEXPORT":[],"EMIT_EMSCRIPTEN_METADATA":0,"SHELL_FILE":"","LLD_REPORT_UNDEFINED":1,"MEM_INIT_METHOD":0,"USE_PTHREADS":0,"USES_DYNAMIC_ALLOC":1,"REVERSE_DEPS":"auto","RUNTIME_LOGGING":0,"MIN_EDGE_VERSION":2147483647,"MIN_IE_VERSION":2147483647,"WORKAROUND_OLD_WEBGL_UNIFORM_UPLOAD_IGNORED_OFFSET_BUG":0,"AUTO_ARCHIVE_INDEXES":0,"USE_ES6_IMPORT_META":1,"EXTRA_EXPORTED_RUNTIME_METHODS":[],"SUPPORT_ERRNO":0,"DEMANGLE_SUPPORT":0,"MAYBE_WASM2JS":0,"HEADLESS":0,"USE_OFFSET_COVERTER":0,"ASYNCIFY_LAZY_LOAD_CODE":0,"USE_WEBGPU":0,"PROXY_TO_WORKER":0,"NODEJS_CATCH_EXIT":0,"NODEJS_CATCH_REJECTION":0,"POLYFILL_OLD_MATH_FUNCTIONS":0,"RELOCATABLE":0,"EMSCRIPTEN_VERSION":"5.0.4"};function getCompilerSetting(name){if(!(name in compilerSettings))return"invalid compiler setting: "+name;return compilerSettings[name]}// end include: preamble.js
122
+ // Begin JS library code
123
+ class ExitStatus{name="ExitStatus";constructor(status){this.message=`Program terminated with exit(${status})`;this.status=status}}/** @type {!Int16Array} */var HEAP16;/** @type {!Int32Array} */var HEAP32;/** not-@type {!BigInt64Array} */var HEAP64;/** @type {!Int8Array} */var HEAP8;/** @type {!Float32Array} */var HEAPF32;/** @type {!Float64Array} */var HEAPF64;/** @type {!Uint16Array} */var HEAPU16;/** @type {!Uint32Array} */var HEAPU32;/** not-@type {!BigUint64Array} */var HEAPU64;/** @type {!Uint8Array} */var HEAPU8;var callRuntimeCallbacks=callbacks=>{while(callbacks.length>0){// Pass the module as the first argument.
124
+ callbacks.shift()(Module)}};var onPostRuns=[];var addOnPostRun=cb=>onPostRuns.push(cb);var onPreRuns=[];var addOnPreRun=cb=>onPreRuns.push(cb);var dynCalls={};var dynCallLegacy=(sig,ptr,args)=>{sig=sig.replace(/p/g,"j");var f=dynCalls[sig];return f(ptr,...args)};var dynCall=(sig,ptr,args=[],promising=false)=>{// With MEMORY64 we have an additional step to convert `p` arguments to
125
+ // bigint. This is the runtime equivalent of the wrappers we create for wasm
126
+ // exports in `emscripten.py:create_wasm64_wrappers`.
127
+ for(var i=1;i<sig.length;++i){if(sig[i]=="p")args[i-1]=BigInt(args[i-1])}var rtn=dynCallLegacy(sig,ptr,args);function convert(rtn){return sig[0]=="p"?Number(rtn):rtn}return convert(rtn)};var noExitRuntime=true;var stackRestore=val=>__emscripten_stack_restore(val);var stackSave=()=>_emscripten_stack_get_current();var UTF8Decoder=new TextDecoder;var findStringEnd=(heapOrArray,idx,maxBytesToRead,ignoreNul)=>{var maxIdx=idx+maxBytesToRead;if(ignoreNul)return maxIdx;// TextDecoder needs to know the byte length in advance, it doesn't stop on
128
+ // null terminator by itself.
129
+ // As a tiny code save trick, compare idx against maxIdx using a negation,
130
+ // so that maxBytesToRead=undefined/NaN means Infinity.
131
+ while(heapOrArray[idx]&&!(idx>=maxIdx))++idx;return idx};/**
132
+ * Given a pointer 'ptr' to a null-terminated UTF8-encoded string in the
133
+ * emscripten HEAP, returns a copy of that string as a Javascript String object.
134
+ *
135
+ * @param {number} ptr
136
+ * @param {number=} maxBytesToRead - An optional length that specifies the
137
+ * maximum number of bytes to read. You can omit this parameter to scan the
138
+ * string until the first 0 byte. If maxBytesToRead is passed, and the string
139
+ * at [ptr, ptr+maxBytesToReadr[ contains a null byte in the middle, then the
140
+ * string will cut short at that byte index.
141
+ * @param {boolean=} ignoreNul - If true, the function will not stop on a NUL character.
142
+ * @return {string}
143
+ */var UTF8ToString=(ptr,maxBytesToRead,ignoreNul)=>{if(!ptr)return"";var end=findStringEnd(HEAPU8,ptr,maxBytesToRead,ignoreNul);return UTF8Decoder.decode(HEAPU8.subarray(ptr,end))};var SYSCALLS={varargs:undefined,getStr(ptr){var ret=UTF8ToString(ptr);return ret}};var INT53_MAX=9007199254740992;var INT53_MIN=-9007199254740992;var bigintToI53Checked=num=>(num<INT53_MIN||num>INT53_MAX)?NaN:Number(num);function ___syscall_fcntl64(fd,cmd,varargs){varargs=bigintToI53Checked(varargs);SYSCALLS.varargs=varargs;return 0}function ___syscall_ioctl(fd,op,varargs){varargs=bigintToI53Checked(varargs);SYSCALLS.varargs=varargs;return 0}function ___syscall_openat(dirfd,path,flags,varargs){path=bigintToI53Checked(path);varargs=bigintToI53Checked(varargs);SYSCALLS.varargs=varargs}function ___syscall_renameat(olddirfd,oldpath,newdirfd,newpath){oldpath=bigintToI53Checked(oldpath);newpath=bigintToI53Checked(newpath)}function ___syscall_unlinkat(dirfd,path,flags){path=bigintToI53Checked(path)}var __abort_js=()=>abort("");var structRegistrations={};var runDestructors=destructors=>{while(destructors.length){var ptr=destructors.pop();var del=destructors.pop();del(ptr)}};/** @suppress {globalThis} */function readPointer(pointer){return this.fromWireType(Number(HEAPU64[((pointer)/8)]))}var awaitingDependencies={};var registeredTypes={};var typeDependencies={};var InternalError=class InternalError extends Error{constructor(message){super(message);this.name="InternalError"}};var throwInternalError=message=>{throw new InternalError(message)};var whenDependentTypesAreResolved=(myTypes,dependentTypes,getTypeConverters)=>{myTypes.forEach(type=>typeDependencies[type]=dependentTypes);function onComplete(typeConverters){var myTypeConverters=getTypeConverters(typeConverters);if(myTypeConverters.length!==myTypes.length){throwInternalError("Mismatched type converter count")}for(var i=0;i<myTypes.length;++i){registerType(myTypes[i],myTypeConverters[i])}}var typeConverters=new Array(dependentTypes.length);var unregisteredTypes=[];var registered=0;for(let[i,dt]of dependentTypes.entries()){if(registeredTypes.hasOwnProperty(dt)){typeConverters[i]=registeredTypes[dt]}else{unregisteredTypes.push(dt);if(!awaitingDependencies.hasOwnProperty(dt)){awaitingDependencies[dt]=[]}awaitingDependencies[dt].push(()=>{typeConverters[i]=registeredTypes[dt];++registered;if(registered===unregisteredTypes.length){onComplete(typeConverters)}})}}if(0===unregisteredTypes.length){onComplete(typeConverters)}};var __embind_finalize_value_object=function(structType){structType=bigintToI53Checked(structType);var reg=structRegistrations[structType];delete structRegistrations[structType];var rawConstructor=reg.rawConstructor;var rawDestructor=reg.rawDestructor;var fieldRecords=reg.fields;var fieldTypes=fieldRecords.map(field=>field.getterReturnType).concat(fieldRecords.map(field=>field.setterArgumentType));whenDependentTypesAreResolved([structType],fieldTypes,fieldTypes=>{var fields={};for(var[i,field]of fieldRecords.entries()){const getterReturnType=fieldTypes[i];const getter=field.getter;const getterContext=field.getterContext;const setterArgumentType=fieldTypes[i+fieldRecords.length];const setter=field.setter;const setterContext=field.setterContext;fields[field.fieldName]={read:ptr=>getterReturnType.fromWireType(getter(getterContext,ptr)),write:(ptr,o)=>{var destructors=[];setter(setterContext,ptr,setterArgumentType.toWireType(destructors,o));runDestructors(destructors)},optional:getterReturnType.optional}}return[{name:reg.name,fromWireType:ptr=>{var rv={};for(var i in fields){rv[i]=fields[i].read(ptr)}rawDestructor(ptr);return rv},toWireType:(destructors,o)=>{// todo: Here we have an opportunity for -O3 level "unsafe" optimizations:
144
+ // assume all fields are present without checking.
145
+ for(var fieldName in fields){if(!(fieldName in o)&&!fields[fieldName].optional){throw new TypeError(`Missing field: "${fieldName}"`)}}var ptr=rawConstructor();for(fieldName in fields){fields[fieldName].write(ptr,o[fieldName])}if(destructors!==null){destructors.push(rawDestructor,ptr)}return ptr},readValueFromPointer:readPointer,destructorFunction:rawDestructor}]})};var AsciiToString=ptr=>{var str="";while(1){var ch=HEAPU8[ptr++];if(!ch)return str;str+=String.fromCharCode(ch)}};var BindingError=class BindingError extends Error{constructor(message){super(message);this.name="BindingError"}};var throwBindingError=message=>{throw new BindingError(message)};/** @param {Object=} options */function sharedRegisterType(rawType,registeredInstance,options={}){var name=registeredInstance.name;if(!rawType){throwBindingError(`type "${name}" must have a positive integer typeid pointer`)}if(registeredTypes.hasOwnProperty(rawType)){if(options.ignoreDuplicateRegistrations){return}else{throwBindingError(`Cannot register type '${name}' twice`)}}registeredTypes[rawType]=registeredInstance;delete typeDependencies[rawType];if(awaitingDependencies.hasOwnProperty(rawType)){var callbacks=awaitingDependencies[rawType];delete awaitingDependencies[rawType];callbacks.forEach(cb=>cb())}}/** @param {Object=} options */function registerType(rawType,registeredInstance,options={}){return sharedRegisterType(rawType,registeredInstance,options)}var integerReadValueFromPointer=(name,width,signed)=>{// integers are quite common, so generate very specialized functions
146
+ switch(width){case 1:return signed?pointer=>HEAP8[pointer]:pointer=>HEAPU8[pointer];case 2:return signed?pointer=>HEAP16[((pointer)/2)]:pointer=>HEAPU16[((pointer)/2)];case 4:return signed?pointer=>HEAP32[((pointer)/4)]:pointer=>HEAPU32[((pointer)/4)];case 8:return signed?pointer=>HEAP64[((pointer)/8)]:pointer=>HEAPU64[((pointer)/8)];default:throw new TypeError(`invalid integer width (${width}): ${name}`)}};/** @suppress {globalThis} */var __embind_register_bigint=function(primitiveType,name,size,minRange,maxRange){primitiveType=bigintToI53Checked(primitiveType);name=bigintToI53Checked(name);size=bigintToI53Checked(size);name=AsciiToString(name);const isUnsignedType=minRange===0n;let fromWireType=value=>value;if(isUnsignedType){// uint64 get converted to int64 in ABI, fix them up like we do for 32-bit integers.
147
+ const bitSize=size*8;fromWireType=value=>{// FIXME(https://github.com/emscripten-core/emscripten/issues/16975)
148
+ // `size_t` ends up here, but it's transferred in the ABI as a plain number instead of a bigint.
149
+ if(typeof value=="number"){return value>>>0}return BigInt.asUintN(bitSize,value)};maxRange=fromWireType(maxRange)}registerType(primitiveType,{name,fromWireType,toWireType:(destructors,value)=>{if(typeof value=="number"){value=BigInt(value)}return value},readValueFromPointer:integerReadValueFromPointer(name,size,!isUnsignedType),destructorFunction:null})};/** @suppress {globalThis} */function __embind_register_bool(rawType,name,trueValue,falseValue){rawType=bigintToI53Checked(rawType);name=bigintToI53Checked(name);name=AsciiToString(name);registerType(rawType,{name,fromWireType:function(wt){// ambiguous emscripten ABI: sometimes return values are
150
+ // true or false, and sometimes integers (0 or 1)
151
+ return!!wt},toWireType:function(destructors,o){return o?trueValue:falseValue},readValueFromPointer:function(pointer){return this.fromWireType(HEAPU8[pointer])},destructorFunction:null})}var emval_freelist=[];var emval_handles=[0,1,,1,null,1,true,1,false,1];function __emval_decref(handle){handle=bigintToI53Checked(handle);if(handle>9&&0===--emval_handles[handle+1]){emval_handles[handle]=undefined;emval_freelist.push(handle)}}var Emval={toValue:handle=>{if(!handle){throwBindingError(`Cannot use deleted val. handle = ${handle}`)}return emval_handles[handle]},toHandle:value=>{switch(value){case undefined:return 2;case null:return 4;case true:return 6;case false:return 8;default:{const handle=emval_freelist.pop()||emval_handles.length;emval_handles[handle]=value;emval_handles[handle+1]=1;return handle}}}};var EmValType={name:"emscripten::val",fromWireType:handle=>{var rv=Emval.toValue(handle);__emval_decref(handle);return rv},toWireType:(destructors,value)=>Emval.toHandle(value),readValueFromPointer:readPointer,destructorFunction:null};function __embind_register_emval(rawType){rawType=bigintToI53Checked(rawType);return registerType(rawType,EmValType)}var floatReadValueFromPointer=(name,width)=>{switch(width){case 4:return function(pointer){return this.fromWireType(HEAPF32[((pointer)/4)])};case 8:return function(pointer){return this.fromWireType(HEAPF64[((pointer)/8)])};default:throw new TypeError(`invalid float width (${width}): ${name}`)}};var __embind_register_float=function(rawType,name,size){rawType=bigintToI53Checked(rawType);name=bigintToI53Checked(name);size=bigintToI53Checked(size);name=AsciiToString(name);registerType(rawType,{name,fromWireType:value=>value,toWireType:(destructors,value)=>value,readValueFromPointer:floatReadValueFromPointer(name,size),destructorFunction:null})};var createNamedFunction=(name,func)=>Object.defineProperty(func,"name",{value:name});function usesDestructorStack(argTypes){// Skip return value at index 0 - it's not deleted here.
152
+ for(var i=1;i<argTypes.length;++i){// The type does not define a destructor function - must use dynamic stack
153
+ if(argTypes[i]!==null&&argTypes[i].destructorFunction===undefined){return true}}return false}var InvokerFunctions={"ffftnntn":function anonymous(humanName,throwBindingError,invoker,fn,runDestructors,fromRetWire,toClassParamWire,toArg0Wire,toArg1Wire,toArg2Wire,toArg3Wire,toArg4Wire,Asyncify,arg0Wired_dtor,arg3Wired_dtor){return function(arg0,arg1,arg2,arg3,arg4){var arg0Wired=toArg0Wire(null,arg0);var arg1Wired=toArg1Wire(null,arg1);var arg2Wired=toArg2Wire(null,arg2);var arg3Wired=toArg3Wire(null,arg3);var arg4Wired=toArg4Wire(null,arg4);invoker(fn,arg0Wired,arg1Wired,arg2Wired,arg3Wired,arg4Wired);function onDone(){arg0Wired_dtor(arg0Wired);arg3Wired_dtor(arg3Wired)}return Asyncify.currData?Asyncify.whenDone().then(onDone):onDone()}}};function createJsInvokerSignature(argTypes,isClassMethodFunc,returns,isAsync){const signature=[isClassMethodFunc?"t":"f",returns?"t":"f",isAsync?"t":"f"];for(let i=isClassMethodFunc?1:2;i<argTypes.length;++i){const arg=argTypes[i];let destructorSig="";if(arg.destructorFunction===undefined){destructorSig="u"}else if(arg.destructorFunction===null){destructorSig="n"}else{destructorSig="t"}signature.push(destructorSig)}return signature.join("")}var runAndAbortIfError=func=>{try{return func()}catch(e){abort(e)}};var handleException=e=>{// Certain exception types we do not treat as errors since they are used for
154
+ // internal control flow.
155
+ // 1. ExitStatus, which is thrown by exit()
156
+ // 2. "unwind", which is thrown by emscripten_unwind_to_js_event_loop() and others
157
+ // that wish to return to JS event loop.
158
+ if(e instanceof ExitStatus||e=="unwind"){return EXITSTATUS}quit_(1,e)};var runtimeKeepaliveCounter=0;var keepRuntimeAlive=()=>noExitRuntime||runtimeKeepaliveCounter>0;var _proc_exit=code=>{EXITSTATUS=code;if(!keepRuntimeAlive()){Module["onExit"]?.(code);ABORT=true}quit_(code,new ExitStatus(code))};/** @param {boolean|number=} implicit */var exitJS=(status,implicit)=>{EXITSTATUS=status;_proc_exit(status)};var _exit=exitJS;var maybeExit=()=>{if(!keepRuntimeAlive()){try{_exit(EXITSTATUS)}catch(e){handleException(e)}}};var callUserCallback=func=>{if(ABORT){return}try{return func()}catch(e){handleException(e)}finally{maybeExit()}};var Asyncify={rewindArguments:new Map,instrumentWasmImports(imports){var importPattern=/^(invoke_.*|__asyncjs__.*)$/;for(let[x,original]of Object.entries(imports)){if(typeof original=="function"){let isAsyncifyImport=original.isAsync||importPattern.test(x)}}},saveRewindArguments(func,passedArguments){return Asyncify.rewindArguments.set(func,Array.from(passedArguments))},restoreRewindArguments(func){return Asyncify.rewindArguments.get(func)},instrumentFunction(original){var wrapper=(...args)=>{Asyncify.exportCallStack.push(original);try{Asyncify.saveRewindArguments(original,args);return original(...args)}finally{if(!ABORT){var top=Asyncify.exportCallStack.pop();Asyncify.maybeStopUnwind()}}};Asyncify.funcWrappers.set(original,wrapper);return wrapper},instrumentWasmExports(exports){var ret={};for(let[x,original]of Object.entries(exports)){if(typeof original=="function"){var wrapper=Asyncify.instrumentFunction(original);ret[x]=wrapper}else{ret[x]=original}}return ret},State:{Normal:0,Unwinding:1,Rewinding:2,Disabled:3},state:0,StackSize:4096,currData:null,handleSleepReturnValue:0,exportCallStack:[],callstackFuncToId:new Map,callStackIdToFunc:new Map,funcWrappers:new Map,callStackId:0,asyncPromiseHandlers:null,sleepCallbacks:[],getCallStackId(func){if(!Asyncify.callstackFuncToId.has(func)){var id=Asyncify.callStackId++;Asyncify.callstackFuncToId.set(func,id);Asyncify.callStackIdToFunc.set(id,func)}return Asyncify.callstackFuncToId.get(func)},maybeStopUnwind(){if(Asyncify.currData&&Asyncify.state===Asyncify.State.Unwinding&&Asyncify.exportCallStack.length===0){// We just finished unwinding.
159
+ // Be sure to set the state before calling any other functions to avoid
160
+ // possible infinite recursion here (For example in debug pthread builds
161
+ // the dbg() function itself can call back into WebAssembly to get the
162
+ // current pthread_self() pointer).
163
+ Asyncify.state=Asyncify.State.Normal;// Keep the runtime alive so that a re-wind can be done later.
164
+ runAndAbortIfError(_asyncify_stop_unwind);if(typeof Fibers!="undefined"){Fibers.trampoline()}}},whenDone(){return new Promise((resolve,reject)=>{Asyncify.asyncPromiseHandlers={resolve,reject}})},allocateData(){// An asyncify data structure has three fields:
165
+ // 0 current stack pos
166
+ // 4 max stack pos
167
+ // 8 id of function at bottom of the call stack (callStackIdToFunc[id] == wasm func)
168
+ // The Asyncify ABI only interprets the first two fields, the rest is for the runtime.
169
+ // We also embed a stack in the same memory region here, right next to the structure.
170
+ // This struct is also defined as asyncify_data_t in emscripten/fiber.h
171
+ var ptr=_malloc(24+Asyncify.StackSize);Asyncify.setDataHeader(ptr,ptr+24,Asyncify.StackSize);Asyncify.setDataRewindFunc(ptr);return ptr},setDataHeader(ptr,stack,stackSize){HEAPU64[((ptr)/8)]=BigInt(stack);HEAPU64[(((ptr)+(8))/8)]=BigInt(stack+stackSize)},setDataRewindFunc(ptr){var bottomOfCallStack=Asyncify.exportCallStack[0];var rewindId=Asyncify.getCallStackId(bottomOfCallStack);HEAP32[(((ptr)+(16))/4)]=rewindId},getDataRewindFunc(ptr){var id=HEAP32[(((ptr)+(16))/4)];var func=Asyncify.callStackIdToFunc.get(id);return func},doRewind(ptr){var original=Asyncify.getDataRewindFunc(ptr);var func=Asyncify.funcWrappers.get(original);// Once we have rewound and the stack we no longer need to artificially
172
+ // keep the runtime alive.
173
+ // When re-winding, the arguments to a function are ignored. For i32 arguments we
174
+ // can just call the function with no args at all since the engine will produce zeros
175
+ // for all arguments. However, for i64 arguments we get `undefined cannot be converted to
176
+ // BigInt`.
177
+ func=func.bind(0,...Asyncify.restoreRewindArguments(original));return callUserCallback(func)},handleSleep(startAsync){if(ABORT)return;if(Asyncify.state===Asyncify.State.Normal){// Prepare to sleep. Call startAsync, and see what happens:
178
+ // if the code decided to call our callback synchronously,
179
+ // then no async operation was in fact begun, and we don't
180
+ // need to do anything.
181
+ var reachedCallback=false;var reachedAfterCallback=false;startAsync((handleSleepReturnValue=0)=>{if(ABORT)return;Asyncify.handleSleepReturnValue=handleSleepReturnValue;reachedCallback=true;if(!reachedAfterCallback){// We are happening synchronously, so no need for async.
182
+ return}Asyncify.state=Asyncify.State.Rewinding;runAndAbortIfError(()=>_asyncify_start_rewind(Asyncify.currData));if(typeof MainLoop!="undefined"&&MainLoop.func){MainLoop.resume()}var asyncWasmReturnValue,isError=false;try{asyncWasmReturnValue=Asyncify.doRewind(Asyncify.currData)}catch(err){asyncWasmReturnValue=err;isError=true}// Track whether the return value was handled by any promise handlers.
183
+ var handled=false;if(!Asyncify.currData){// All asynchronous execution has finished.
184
+ // `asyncWasmReturnValue` now contains the final
185
+ // return value of the exported async WASM function.
186
+ // Note: `asyncWasmReturnValue` is distinct from
187
+ // `Asyncify.handleSleepReturnValue`.
188
+ // `Asyncify.handleSleepReturnValue` contains the return
189
+ // value of the last C function to have executed
190
+ // `Asyncify.handleSleep()`, whereas `asyncWasmReturnValue`
191
+ // contains the return value of the exported WASM function
192
+ // that may have called C functions that
193
+ // call `Asyncify.handleSleep()`.
194
+ var asyncPromiseHandlers=Asyncify.asyncPromiseHandlers;if(asyncPromiseHandlers){Asyncify.asyncPromiseHandlers=null;(isError?asyncPromiseHandlers.reject:asyncPromiseHandlers.resolve)(asyncWasmReturnValue);handled=true}}if(isError&&!handled){// If there was an error and it was not handled by now, we have no choice but to
195
+ // rethrow that error into the global scope where it can be caught only by
196
+ // `onerror` or `onunhandledpromiserejection`.
197
+ throw asyncWasmReturnValue}});reachedAfterCallback=true;if(!reachedCallback){// A true async operation was begun; start a sleep.
198
+ Asyncify.state=Asyncify.State.Unwinding;// TODO: reuse, don't alloc/free every sleep
199
+ Asyncify.currData=Asyncify.allocateData();if(typeof MainLoop!="undefined"&&MainLoop.func){MainLoop.pause()}runAndAbortIfError(()=>_asyncify_start_unwind(Asyncify.currData))}}else if(Asyncify.state===Asyncify.State.Rewinding){// Stop a resume.
200
+ Asyncify.state=Asyncify.State.Normal;runAndAbortIfError(_asyncify_stop_rewind);_free(Asyncify.currData);Asyncify.currData=null;// Call all sleep callbacks now that the sleep-resume is all done.
201
+ Asyncify.sleepCallbacks.forEach(callUserCallback)}else{abort(`invalid state: ${Asyncify.state}`)}return Asyncify.handleSleepReturnValue},handleAsync:startAsync=>Asyncify.handleSleep(async wakeUp=>{// TODO: add error handling as a second param when handleSleep implements it.
202
+ wakeUp(await startAsync())})};function craftInvokerFunction(humanName,argTypes,classType,cppInvokerFunc,cppTargetFunc,/** boolean= */isAsync){// humanName: a human-readable string name for the function to be generated.
203
+ // argTypes: An array that contains the embind type objects for all types in the function signature.
204
+ // argTypes[0] is the type object for the function return value.
205
+ // argTypes[1] is the type object for function this object/class type, or null if not crafting an invoker for a class method.
206
+ // argTypes[2...] are the actual function parameters.
207
+ // classType: The embind type object for the class to be bound, or null if this is not a method of a class.
208
+ // cppInvokerFunc: JS Function object to the C++-side function that interops into C++ code.
209
+ // cppTargetFunc: Function pointer (an integer to FUNCTION_TABLE) to the target C++ function the cppInvokerFunc will end up calling.
210
+ // isAsync: Optional. If true, returns an async function. Async bindings are only supported with JSPI.
211
+ var argCount=argTypes.length;if(argCount<2){throwBindingError("argTypes array size mismatch! Must at least get return value and 'this' types!")}var isClassMethodFunc=(argTypes[1]!==null&&classType!==null);// Free functions with signature "void function()" do not need an invoker that marshalls between wire types.
212
+ // TODO: This omits argument count check - enable only at -O3 or similar.
213
+ // if (ENABLE_UNSAFE_OPTS && argCount == 2 && argTypes[0].name == "void" && !isClassMethodFunc) {
214
+ // return FUNCTION_TABLE[fn];
215
+ // }
216
+ // Determine if we need to use a dynamic stack to store the destructors for the function parameters.
217
+ // TODO: Remove this completely once all function invokers are being dynamically generated.
218
+ var needsDestructorStack=usesDestructorStack(argTypes);var returns=!argTypes[0].isVoid;// Build the arguments that will be passed into the closure around the invoker
219
+ // function.
220
+ var retType=argTypes[0];var instType=argTypes[1];var closureArgs=[humanName,throwBindingError,cppInvokerFunc,cppTargetFunc,runDestructors,retType.fromWireType.bind(retType),instType?.toWireType.bind(instType)];for(var i=2;i<argCount;++i){var argType=argTypes[i];closureArgs.push(argType.toWireType.bind(argType))}closureArgs.push(Asyncify);if(!needsDestructorStack){// Skip return value at index 0 - it's not deleted here. Also skip class type if not a method.
221
+ for(var i=isClassMethodFunc?1:2;i<argTypes.length;++i){if(argTypes[i].destructorFunction!==null){closureArgs.push(argTypes[i].destructorFunction)}}}var signature=createJsInvokerSignature(argTypes,isClassMethodFunc,returns,isAsync);var invokerFn=InvokerFunctions[signature](...closureArgs);return createNamedFunction(humanName,invokerFn)}var ensureOverloadTable=(proto,methodName,humanName)=>{if(undefined===proto[methodName].overloadTable){var prevFunc=proto[methodName];// Inject an overload resolver function that routes to the appropriate overload based on the number of arguments.
222
+ proto[methodName]=function(...args){// TODO This check can be removed in -O3 level "unsafe" optimizations.
223
+ if(!proto[methodName].overloadTable.hasOwnProperty(args.length)){throwBindingError(`Function '${humanName}' called with an invalid number of arguments (${args.length}) - expects one of (${proto[methodName].overloadTable})!`)}return proto[methodName].overloadTable[args.length].apply(this,args)};// Move the previous function into the overload table.
224
+ proto[methodName].overloadTable=[];proto[methodName].overloadTable[prevFunc.argCount]=prevFunc}};/** @param {number=} numArguments */var exposePublicSymbol=(name,value,numArguments)=>{if(Module.hasOwnProperty(name)){if(undefined===numArguments||(undefined!==Module[name].overloadTable&&undefined!==Module[name].overloadTable[numArguments])){throwBindingError(`Cannot register public name '${name}' twice`)}// We are exposing a function with the same name as an existing function. Create an overload table and a function selector
225
+ // that routes between the two.
226
+ ensureOverloadTable(Module,name,name);if(Module[name].overloadTable.hasOwnProperty(numArguments)){throwBindingError(`Cannot register multiple overloads of a function with the same number of arguments (${numArguments})!`)}// Add the new function into the overload table.
227
+ Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}};var heap32VectorToArray=(count,firstElement)=>{var array=[];for(var i=0;i<count;i++){// TODO(https://github.com/emscripten-core/emscripten/issues/17310):
228
+ // Find a way to hoist the `>> 2` or `>> 3` out of this loop.
229
+ array.push(Number(HEAPU64[(((firstElement)+(i*8))/8)]))}return array};/** @param {number=} numArguments */var replacePublicSymbol=(name,value,numArguments)=>{if(!Module.hasOwnProperty(name)){throwInternalError("Replacing nonexistent public symbol")}// If there's an overload table for this symbol, replace the symbol in the overload table instead.
230
+ if(undefined!==Module[name].overloadTable&&undefined!==numArguments){Module[name].overloadTable[numArguments]=value}else{Module[name]=value;Module[name].argCount=numArguments}};var getDynCaller=(sig,ptr,promising=false)=>(...args)=>dynCall(sig,ptr,args,promising);var embind__requireFunction=(signature,rawFunction,isAsync=false)=>{signature=AsciiToString(signature);function makeDynCaller(){return getDynCaller(signature,rawFunction)}var fp=makeDynCaller();if(typeof fp!="function"){throwBindingError(`unknown function pointer with signature ${signature}: ${rawFunction}`)}return fp};class UnboundTypeError extends Error{}var getTypeName=type=>{var ptr=___getTypeName(type);var rv=AsciiToString(ptr);_free(ptr);return rv};var throwUnboundTypeError=(message,types)=>{var unboundTypes=[];var seen={};function visit(type){if(seen[type]){return}if(registeredTypes[type]){return}if(typeDependencies[type]){typeDependencies[type].forEach(visit);return}unboundTypes.push(type);seen[type]=true}types.forEach(visit);throw new UnboundTypeError(`${message}: `+unboundTypes.map(getTypeName).join([", "]))};var getFunctionName=signature=>{signature=signature.trim();const argsIndex=signature.indexOf("(");if(argsIndex===-1)return signature;return signature.slice(0,argsIndex)};function __embind_register_function(name,argCount,rawArgTypesAddr,signature,rawInvoker,fn,isAsync,isNonnullReturn){name=bigintToI53Checked(name);rawArgTypesAddr=bigintToI53Checked(rawArgTypesAddr);signature=bigintToI53Checked(signature);rawInvoker=bigintToI53Checked(rawInvoker);fn=bigintToI53Checked(fn);var argTypes=heap32VectorToArray(argCount,rawArgTypesAddr);name=AsciiToString(name);name=getFunctionName(name);rawInvoker=embind__requireFunction(signature,rawInvoker,isAsync);exposePublicSymbol(name,function(){throwUnboundTypeError(`Cannot call ${name} due to unbound types`,argTypes)},argCount-1);whenDependentTypesAreResolved([],argTypes,argTypes=>{var invokerArgsArray=[argTypes[0],null].concat(argTypes.slice(1));replacePublicSymbol(name,craftInvokerFunction(name,invokerArgsArray,null,rawInvoker,fn,isAsync),argCount-1);return[]})}/** @suppress {globalThis} */var __embind_register_integer=function(primitiveType,name,size,minRange,maxRange){primitiveType=bigintToI53Checked(primitiveType);name=bigintToI53Checked(name);size=bigintToI53Checked(size);name=AsciiToString(name);const isUnsignedType=minRange===0;let fromWireType=value=>value;if(isUnsignedType){var bitshift=32-8*size;fromWireType=value=>(value<<bitshift)>>>bitshift;maxRange=fromWireType(maxRange)}registerType(primitiveType,{name,fromWireType,toWireType:(destructors,value)=>value,readValueFromPointer:integerReadValueFromPointer(name,size,minRange!==0),destructorFunction:null})};function __embind_register_memory_view(rawType,dataTypeIndex,name){rawType=bigintToI53Checked(rawType);name=bigintToI53Checked(name);var typeMapping=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,BigInt64Array,BigUint64Array];var TA=typeMapping[dataTypeIndex];function decodeMemoryView(handle){var size=Number(HEAPU64[((handle)/8)]);var data=Number(HEAPU64[(((handle)+(8))/8)]);return new TA(HEAP8.buffer,data,size)}name=AsciiToString(name);registerType(rawType,{name,fromWireType:decodeMemoryView,readValueFromPointer:decodeMemoryView},{ignoreDuplicateRegistrations:true})}var stringToUTF8Array=(str,heap,outIdx,maxBytesToWrite)=>{// Parameter maxBytesToWrite is not optional. Negative values, 0, null,
231
+ // undefined and false each don't write out any bytes.
232
+ if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;// -1 for string null terminator.
233
+ for(var i=0;i<str.length;++i){// For UTF8 byte structure, see http://en.wikipedia.org/wiki/UTF-8#Description
234
+ // and https://www.ietf.org/rfc/rfc2279.txt
235
+ // and https://tools.ietf.org/html/rfc3629
236
+ var u=str.codePointAt(i);if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|(u>>6);heap[outIdx++]=128|(u&63)}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|(u>>12);heap[outIdx++]=128|((u>>6)&63);heap[outIdx++]=128|(u&63)}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|(u>>18);heap[outIdx++]=128|((u>>12)&63);heap[outIdx++]=128|((u>>6)&63);heap[outIdx++]=128|(u&63);// Gotcha: if codePoint is over 0xFFFF, it is represented as a surrogate pair in UTF-16.
237
+ // We need to manually skip over the second code unit for correct iteration.
238
+ i++}}// Null-terminate the pointer to the buffer.
239
+ heap[outIdx]=0;return outIdx-startIdx};var stringToUTF8=(str,outPtr,maxBytesToWrite)=>stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite);var lengthBytesUTF8=str=>{var len=0;for(var i=0;i<str.length;++i){// Gotcha: charCodeAt returns a 16-bit word that is a UTF-16 encoded code
240
+ // unit, not a Unicode code point of the character! So decode
241
+ // UTF16->UTF32->UTF8.
242
+ // See http://unicode.org/faq/utf_bom.html#utf16-3
243
+ var c=str.charCodeAt(i);// possibly a lead surrogate
244
+ 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 __embind_register_std_string(rawType,name){rawType=bigintToI53Checked(rawType);name=bigintToI53Checked(name);name=AsciiToString(name);var stdStringIsUTF8=true;registerType(rawType,{name,// For some method names we use string keys here since they are part of
245
+ // the public/external API and/or used by the runtime-generated code.
246
+ fromWireType(value){var length=Number(HEAPU64[((value)/8)]);var payload=value+8;var str;if(stdStringIsUTF8){str=UTF8ToString(payload,length,true)}else{str="";for(var i=0;i<length;++i){str+=String.fromCharCode(HEAPU8[payload+i])}}_free(value);return str},toWireType(destructors,value){if(value instanceof ArrayBuffer){value=new Uint8Array(value)}var length;var valueIsOfTypeString=(typeof value=="string");// We accept `string` or array views with single byte elements
247
+ if(!(valueIsOfTypeString||(ArrayBuffer.isView(value)&&value.BYTES_PER_ELEMENT==1))){throwBindingError("Cannot pass non-string to std::string")}if(stdStringIsUTF8&&valueIsOfTypeString){length=lengthBytesUTF8(value)}else{length=value.length}// assumes POINTER_SIZE alignment
248
+ var base=_malloc(8+length+1);var ptr=base+8;HEAPU64[((base)/8)]=BigInt(length);if(valueIsOfTypeString){if(stdStringIsUTF8){stringToUTF8(value,ptr,length+1)}else{for(var i=0;i<length;++i){var charCode=value.charCodeAt(i);if(charCode>255){_free(base);throwBindingError("String has UTF-16 code units that do not fit in 8 bits")}HEAPU8[ptr+i]=charCode}}}else{HEAPU8.set(value,ptr)}if(destructors!==null){destructors.push(_free,base)}return base},readValueFromPointer:readPointer,destructorFunction(ptr){_free(ptr)}})}var UTF16Decoder=new TextDecoder("utf-16le");var UTF16ToString=(ptr,maxBytesToRead,ignoreNul)=>{var idx=((ptr)/2);var endIdx=findStringEnd(HEAPU16,idx,maxBytesToRead/2,ignoreNul);return UTF16Decoder.decode(HEAPU16.subarray(idx,endIdx))};var stringToUTF16=(str,outPtr,maxBytesToWrite)=>{// Backwards compatibility: if max bytes is not specified, assume unsafe unbounded write is allowed.
249
+ maxBytesToWrite??=2147483647;if(maxBytesToWrite<2)return 0;maxBytesToWrite-=2;// Null terminator.
250
+ var startPtr=outPtr;var numCharsToWrite=(maxBytesToWrite<str.length*2)?(maxBytesToWrite/2):str.length;for(var i=0;i<numCharsToWrite;++i){// charCodeAt returns a UTF-16 encoded code unit, so it can be directly written to the HEAP.
251
+ var codeUnit=str.charCodeAt(i);// possibly a lead surrogate
252
+ HEAP16[((outPtr)/2)]=codeUnit;outPtr+=2}// Null-terminate the pointer to the HEAP.
253
+ HEAP16[((outPtr)/2)]=0;return outPtr-startPtr};var lengthBytesUTF16=str=>str.length*2;var UTF32ToString=(ptr,maxBytesToRead,ignoreNul)=>{var str="";var startIdx=((ptr)/4);// If maxBytesToRead is not passed explicitly, it will be undefined, and this
254
+ // will always evaluate to true. This saves on code size.
255
+ for(var i=0;!(i>=maxBytesToRead/4);i++){var utf32=HEAPU32[startIdx+i];if(!utf32&&!ignoreNul)break;str+=String.fromCodePoint(utf32)}return str};var stringToUTF32=(str,outPtr,maxBytesToWrite)=>{// Backwards compatibility: if max bytes is not specified, assume unsafe unbounded write is allowed.
256
+ maxBytesToWrite??=2147483647;if(maxBytesToWrite<4)return 0;var startPtr=outPtr;var endPtr=startPtr+maxBytesToWrite-4;for(var i=0;i<str.length;++i){var codePoint=str.codePointAt(i);// Gotcha: if codePoint is over 0xFFFF, it is represented as a surrogate pair in UTF-16.
257
+ // We need to manually skip over the second code unit for correct iteration.
258
+ if(codePoint>65535){i++}HEAP32[((outPtr)/4)]=codePoint;outPtr+=4;if(outPtr+4>endPtr)break}// Null-terminate the pointer to the HEAP.
259
+ HEAP32[((outPtr)/4)]=0;return outPtr-startPtr};var lengthBytesUTF32=str=>{var len=0;for(var i=0;i<str.length;++i){var codePoint=str.codePointAt(i);// Gotcha: if codePoint is over 0xFFFF, it is represented as a surrogate pair in UTF-16.
260
+ // We need to manually skip over the second code unit for correct iteration.
261
+ if(codePoint>65535){i++}len+=4}return len};function __embind_register_std_wstring(rawType,charSize,name){rawType=bigintToI53Checked(rawType);charSize=bigintToI53Checked(charSize);name=bigintToI53Checked(name);name=AsciiToString(name);var decodeString,encodeString,lengthBytesUTF;if(charSize===2){decodeString=UTF16ToString;encodeString=stringToUTF16;lengthBytesUTF=lengthBytesUTF16}else{decodeString=UTF32ToString;encodeString=stringToUTF32;lengthBytesUTF=lengthBytesUTF32}registerType(rawType,{name,fromWireType:value=>{// Code mostly taken from _embind_register_std_string fromWireType
262
+ var length=Number(HEAPU64[((value)/8)]);var str=decodeString(value+8,length*charSize,true);_free(value);return str},toWireType:(destructors,value)=>{if(!(typeof value=="string")){throwBindingError(`Cannot pass non-string to C++ string type ${name}`)}// assumes POINTER_SIZE alignment
263
+ var length=lengthBytesUTF(value);var ptr=_malloc(8+length+charSize);HEAPU64[((ptr)/8)]=BigInt(length/charSize);encodeString(value,ptr+8,length+charSize);if(destructors!==null){destructors.push(_free,ptr)}return ptr},readValueFromPointer:readPointer,destructorFunction(ptr){_free(ptr)}})}function __embind_register_value_object(rawType,name,constructorSignature,rawConstructor,destructorSignature,rawDestructor){rawType=bigintToI53Checked(rawType);name=bigintToI53Checked(name);constructorSignature=bigintToI53Checked(constructorSignature);rawConstructor=bigintToI53Checked(rawConstructor);destructorSignature=bigintToI53Checked(destructorSignature);rawDestructor=bigintToI53Checked(rawDestructor);structRegistrations[rawType]={name:AsciiToString(name),rawConstructor:embind__requireFunction(constructorSignature,rawConstructor),rawDestructor:embind__requireFunction(destructorSignature,rawDestructor),fields:[]}}function __embind_register_value_object_field(structType,fieldName,getterReturnType,getterSignature,getter,getterContext,setterArgumentType,setterSignature,setter,setterContext){structType=bigintToI53Checked(structType);fieldName=bigintToI53Checked(fieldName);getterReturnType=bigintToI53Checked(getterReturnType);getterSignature=bigintToI53Checked(getterSignature);getter=bigintToI53Checked(getter);getterContext=bigintToI53Checked(getterContext);setterArgumentType=bigintToI53Checked(setterArgumentType);setterSignature=bigintToI53Checked(setterSignature);setter=bigintToI53Checked(setter);setterContext=bigintToI53Checked(setterContext);structRegistrations[structType].fields.push({fieldName:AsciiToString(fieldName),getterReturnType,getter:embind__requireFunction(getterSignature,getter),getterContext,setterArgumentType,setter:embind__requireFunction(setterSignature,setter),setterContext})}var __embind_register_void=function(rawType,name){rawType=bigintToI53Checked(rawType);name=bigintToI53Checked(name);name=AsciiToString(name);registerType(rawType,{isVoid:true,// void return values can be optimized out sometimes
264
+ name,fromWireType:()=>undefined,// TODO: assert if anything else is given?
265
+ toWireType:(destructors,o)=>undefined})};var __emscripten_runtime_keepalive_clear=()=>{noExitRuntime=false;runtimeKeepaliveCounter=0};var emval_methodCallers=[];var emval_addMethodCaller=caller=>{var id=emval_methodCallers.length;emval_methodCallers.push(caller);return id};var requireRegisteredType=(rawType,humanName)=>{var impl=registeredTypes[rawType];if(undefined===impl){throwBindingError(`${humanName} has unknown type ${getTypeName(rawType)}`)}return impl};var emval_lookupTypes=(argCount,argTypes)=>{var a=new Array(argCount);for(var i=0;i<argCount;++i){a[i]=requireRegisteredType(Number(HEAPU64[(((argTypes)+(i*8))/8)]),`parameter ${i}`)}return a};var emval_returnValue=(toReturnWire,destructorsRef,handle)=>{var destructors=[];var result=toReturnWire(destructors,handle);if(destructors.length){// void, primitives and any other types w/o destructors don't need to allocate a handle
266
+ HEAPU64[((destructorsRef)/8)]=BigInt(Emval.toHandle(destructors))}return result};var emval_symbols={};var getStringOrSymbol=address=>{var symbol=emval_symbols[address];if(symbol===undefined){return AsciiToString(address)}return symbol};var __emval_create_invoker=function(argCount,argTypesPtr,kind){argTypesPtr=bigintToI53Checked(argTypesPtr);var ret=(()=>{var GenericWireTypeSize=16;var[retType,...argTypes]=emval_lookupTypes(argCount,argTypesPtr);var toReturnWire=retType.toWireType.bind(retType);var argFromPtr=argTypes.map(type=>type.readValueFromPointer.bind(type));argCount--;// remove the extracted return type
267
+ var argN=new Array(argCount);var invokerFunction=(handle,methodName,destructorsRef,args)=>{var offset=0;for(var i=0;i<argCount;++i){argN[i]=argFromPtr[i](args+offset);offset+=GenericWireTypeSize}var rv;switch(kind){case 0:rv=Emval.toValue(handle).apply(null,argN);break;case 2:rv=Reflect.construct(Emval.toValue(handle),argN);break;case 3:// no-op, just return the argument
268
+ rv=argN[0];break;case 1:rv=Emval.toValue(handle)[getStringOrSymbol(methodName)](...argN);break}return emval_returnValue(toReturnWire,destructorsRef,rv)};var functionName=`methodCaller<(${argTypes.map(t=>t.name)}) => ${retType.name}>`;return emval_addMethodCaller(createNamedFunction(functionName,invokerFunction))})();return BigInt(ret)};var __emval_get_global=function(name){name=bigintToI53Checked(name);var ret=(()=>{if(!name){return Emval.toHandle(globalThis)}name=getStringOrSymbol(name);return Emval.toHandle(globalThis[name])})();return BigInt(ret)};function __emval_invoke(caller,handle,methodName,destructorsRef,args){caller=bigintToI53Checked(caller);handle=bigintToI53Checked(handle);methodName=bigintToI53Checked(methodName);destructorsRef=bigintToI53Checked(destructorsRef);args=bigintToI53Checked(args);return emval_methodCallers[caller](handle,methodName,destructorsRef,args)}var __emval_new_cstring=v=>{v=bigintToI53Checked(v);return BigInt(Emval.toHandle(getStringOrSymbol(v)))};function __emval_run_destructors(handle){handle=bigintToI53Checked(handle);var destructors=Emval.toValue(handle);runDestructors(destructors);__emval_decref(handle)}function __emval_set_property(handle,key,value){handle=bigintToI53Checked(handle);key=bigintToI53Checked(key);value=bigintToI53Checked(value);handle=Emval.toValue(handle);key=Emval.toValue(key);value=Emval.toValue(value);handle[key]=value}var isLeapYear=year=>year%4===0&&(year%100!==0||year%400===0);var MONTH_DAYS_LEAP_CUMULATIVE=[0,31,60,91,121,152,182,213,244,274,305,335];var MONTH_DAYS_REGULAR_CUMULATIVE=[0,31,59,90,120,151,181,212,243,273,304,334];var ydayFromDate=date=>{var leap=isLeapYear(date.getFullYear());var monthDaysCumulative=(leap?MONTH_DAYS_LEAP_CUMULATIVE:MONTH_DAYS_REGULAR_CUMULATIVE);var yday=monthDaysCumulative[date.getMonth()]+date.getDate()-1;// -1 since it's days since Jan 1
269
+ return yday};function __localtime_js(time,tmPtr){time=bigintToI53Checked(time);tmPtr=bigintToI53Checked(tmPtr);var date=new Date(time*1e3);HEAP32[((tmPtr)/4)]=date.getSeconds();HEAP32[(((tmPtr)+(4))/4)]=date.getMinutes();HEAP32[(((tmPtr)+(8))/4)]=date.getHours();HEAP32[(((tmPtr)+(12))/4)]=date.getDate();HEAP32[(((tmPtr)+(16))/4)]=date.getMonth();HEAP32[(((tmPtr)+(20))/4)]=date.getFullYear()-1900;HEAP32[(((tmPtr)+(24))/4)]=date.getDay();var yday=ydayFromDate(date)|0;HEAP32[(((tmPtr)+(28))/4)]=yday;HEAP64[(((tmPtr)+(40))/8)]=BigInt(-(date.getTimezoneOffset()*60));// Attention: DST is in December in South, and some regions don't have DST at all.
270
+ var start=new Date(date.getFullYear(),0,1);var summerOffset=new Date(date.getFullYear(),6,1).getTimezoneOffset();var winterOffset=start.getTimezoneOffset();var dst=(summerOffset!=winterOffset&&date.getTimezoneOffset()==Math.min(winterOffset,summerOffset))|0;HEAP32[(((tmPtr)+(32))/4)]=dst}function __mmap_js(len,prot,flags,fd,offset,allocated,addr){len=bigintToI53Checked(len);offset=bigintToI53Checked(offset);allocated=bigintToI53Checked(allocated);addr=bigintToI53Checked(addr);return-52}function __munmap_js(addr,len,prot,flags,fd,offset){addr=bigintToI53Checked(addr);len=bigintToI53Checked(len);offset=bigintToI53Checked(offset)}var timers={};var _emscripten_get_now=()=>performance.now();var __setitimer_js=(which,timeout_ms)=>{// First, clear any existing timer.
271
+ if(timers[which]){clearTimeout(timers[which].id);delete timers[which]}// A timeout of zero simply cancels the current timeout so we have nothing
272
+ // more to do.
273
+ if(!timeout_ms)return 0;var id=setTimeout(()=>{delete timers[which];callUserCallback(()=>__emscripten_timeout(which,_emscripten_get_now()))},timeout_ms);timers[which]={id,timeout_ms};return 0};var __tzset_js=function(timezone,daylight,std_name,dst_name){timezone=bigintToI53Checked(timezone);daylight=bigintToI53Checked(daylight);std_name=bigintToI53Checked(std_name);dst_name=bigintToI53Checked(dst_name);// TODO: Use (malleable) environment variables instead of system settings.
274
+ var currentYear=(new Date).getFullYear();var winter=new Date(currentYear,0,1);var summer=new Date(currentYear,6,1);var winterOffset=winter.getTimezoneOffset();var summerOffset=summer.getTimezoneOffset();// Local standard timezone offset. Local standard time is not adjusted for
275
+ // daylight savings. This code uses the fact that getTimezoneOffset returns
276
+ // a greater value during Standard Time versus Daylight Saving Time (DST).
277
+ // Thus it determines the expected output during Standard Time, and it
278
+ // compares whether the output of the given date the same (Standard) or less
279
+ // (DST).
280
+ var stdTimezoneOffset=Math.max(winterOffset,summerOffset);// timezone is specified as seconds west of UTC ("The external variable
281
+ // `timezone` shall be set to the difference, in seconds, between
282
+ // Coordinated Universal Time (UTC) and local standard time."), the same
283
+ // as returned by stdTimezoneOffset.
284
+ // See http://pubs.opengroup.org/onlinepubs/009695399/functions/tzset.html
285
+ HEAPU64[((timezone)/8)]=BigInt(stdTimezoneOffset*60);HEAP32[((daylight)/4)]=Number(winterOffset!=summerOffset);var extractZone=timezoneOffset=>{// Why inverse sign?
286
+ // Read here https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/getTimezoneOffset
287
+ var sign=timezoneOffset>=0?"-":"+";var absOffset=Math.abs(timezoneOffset);var hours=String(Math.floor(absOffset/60)).padStart(2,"0");var minutes=String(absOffset%60).padStart(2,"0");return`UTC${sign}${hours}${minutes}`};var winterName=extractZone(winterOffset);var summerName=extractZone(summerOffset);if(summerOffset<winterOffset){// Northern hemisphere
288
+ stringToUTF8(winterName,std_name,17);stringToUTF8(summerName,dst_name,17)}else{stringToUTF8(winterName,dst_name,17);stringToUTF8(summerName,std_name,17)}};var _emscripten_date_now=()=>Date.now();var nowIsMonotonic=1;var checkWasiClock=clock_id=>clock_id>=0&&clock_id<=3;function _clock_time_get(clk_id,ignored_precision,ptime){ignored_precision=bigintToI53Checked(ignored_precision);ptime=bigintToI53Checked(ptime);if(!checkWasiClock(clk_id)){return 28}var now;// all wasi clocks but realtime are monotonic
289
+ if(clk_id===0){now=_emscripten_date_now()}else if(nowIsMonotonic){now=_emscripten_get_now()}else{return 52}// "now" is in ms, and wasi times are in ns.
290
+ var nsec=Math.round(now*1e3*1e3);HEAP64[((ptime)/8)]=BigInt(nsec);return 0}var Fibers={nextFiber:0,trampolineRunning:false,trampoline(){if(!Fibers.trampolineRunning&&Fibers.nextFiber){Fibers.trampolineRunning=true;do{var fiber=Fibers.nextFiber;Fibers.nextFiber=0;Fibers.finishContextSwitch(fiber)}while(Fibers.nextFiber);Fibers.trampolineRunning=false}},finishContextSwitch(newFiber){var stack_base=Number(HEAPU64[((newFiber)/8)]);var stack_max=Number(HEAPU64[(((newFiber)+(8))/8)]);_emscripten_stack_set_limits(stack_base,stack_max);stackRestore(Number(HEAPU64[(((newFiber)+(16))/8)]));var entryPoint=Number(HEAPU64[(((newFiber)+(24))/8)]);if(entryPoint!==0){Asyncify.currData=null;HEAPU64[(((newFiber)+(24))/8)]=0n;var userData=Number(HEAPU64[(((newFiber)+(32))/8)]);(a1=>dynCall_vj(entryPoint,BigInt(a1)))(userData)}else{var asyncifyData=newFiber+40;Asyncify.currData=asyncifyData;Asyncify.state=Asyncify.State.Rewinding;_asyncify_start_rewind(asyncifyData);Asyncify.doRewind(asyncifyData)}}};function _emscripten_fiber_swap(oldFiber,newFiber){oldFiber=bigintToI53Checked(oldFiber);newFiber=bigintToI53Checked(newFiber);if(ABORT)return;if(Asyncify.state===Asyncify.State.Normal){Asyncify.state=Asyncify.State.Unwinding;var asyncifyData=oldFiber+40;Asyncify.setDataRewindFunc(asyncifyData);Asyncify.currData=asyncifyData;_asyncify_start_unwind(asyncifyData);var stackTop=stackSave();HEAPU64[(((oldFiber)+(16))/8)]=BigInt(stackTop);Fibers.nextFiber=newFiber}else{Asyncify.state=Asyncify.State.Normal;_asyncify_stop_rewind();Asyncify.currData=null}}_emscripten_fiber_swap.isAsync=true;var stringToNewUTF8=str=>{var size=lengthBytesUTF8(str)+1;var ret=_malloc(size);if(ret)stringToUTF8(str,ret,size);return ret};var _emscripten_get_compiler_setting=function(name){name=bigintToI53Checked(name);var ret=(()=>{name=UTF8ToString(name);var ret=getCompilerSetting(name);if(typeof ret=="number"||typeof ret=="boolean")return ret;var cache=_emscripten_get_compiler_setting.cache??={};var fullret=cache[name];if(fullret)return fullret;return cache[name]=stringToNewUTF8(ret)})();return BigInt(ret)};var getHeapMax=()=>2147483648;var _emscripten_get_heap_max=()=>BigInt(getHeapMax());var alignMemory=(size,alignment)=>Math.ceil(size/alignment)*alignment;var growMemory=size=>{var oldHeapSize=wasmMemory.buffer.byteLength;var pages=((size-oldHeapSize+65535)/65536)|0;try{// round size grow request up to wasm page size (fixed 64KB per spec)
291
+ wasmMemory.grow(BigInt(pages));// .grow() takes a delta compared to the previous size
292
+ updateMemoryViews();return 1}catch(e){}};function _emscripten_resize_heap(requestedSize){requestedSize=bigintToI53Checked(requestedSize);var oldSize=HEAPU8.length;// With multithreaded builds, races can happen (another thread might increase the size
293
+ // in between), so return a failure, and let the caller retry.
294
+ // Memory resize rules:
295
+ // 1. Always increase heap size to at least the requested size, rounded up
296
+ // to next page multiple.
297
+ // 2a. If MEMORY_GROWTH_LINEAR_STEP == -1, excessively resize the heap
298
+ // geometrically: increase the heap size according to
299
+ // MEMORY_GROWTH_GEOMETRIC_STEP factor (default +20%), At most
300
+ // overreserve by MEMORY_GROWTH_GEOMETRIC_CAP bytes (default 96MB).
301
+ // 2b. If MEMORY_GROWTH_LINEAR_STEP != -1, excessively resize the heap
302
+ // linearly: increase the heap size by at least
303
+ // MEMORY_GROWTH_LINEAR_STEP bytes.
304
+ // 3. Max size for the heap is capped at 2048MB-WASM_PAGE_SIZE, or by
305
+ // MAXIMUM_MEMORY, or by ASAN limit, depending on which is smallest
306
+ // 4. If we were unable to allocate as much memory, it may be due to
307
+ // over-eager decision to excessively reserve due to (3) above.
308
+ // Hence if an allocation fails, cut down on the amount of excess
309
+ // growth, in an attempt to succeed to perform a smaller allocation.
310
+ // A limit is set for how much we can grow. We should not exceed that
311
+ // (the wasm binary specifies it, so if we tried, we'd fail anyhow).
312
+ var maxHeapSize=getHeapMax();if(requestedSize>maxHeapSize){return false}// Loop through potential heap size increases. If we attempt a too eager
313
+ // reservation that fails, cut down on the attempted size and reserve a
314
+ // smaller bump instead. (max 3 times, chosen somewhat arbitrarily)
315
+ for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);// ensure geometric growth
316
+ // but limit overreserving (default to capping at +96MB overgrowth at most)
317
+ overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignMemory(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=growMemory(newSize);if(replacement){return true}}return false}var ENV={};var getExecutableName=()=>thisProgram||"./this.program";var getEnvStrings=()=>{if(!getEnvStrings.strings){// Default values.
318
+ // Browser language detection #8751
319
+ var lang=(globalThis.navigator?.language??"C").replace("-","_")+".UTF-8";var env={"USER":"web_user","LOGNAME":"web_user","PATH":"/","PWD":"/","HOME":"/home/web_user","LANG":lang,"_":getExecutableName()};// Apply the user-provided values, if any.
320
+ for(var x in ENV){// x is a key in ENV; if ENV[x] is undefined, that means it was
321
+ // explicitly set to be so. We allow user code to do that to
322
+ // force variables with default values to remain unset.
323
+ if(ENV[x]===undefined)delete env[x];else env[x]=ENV[x]}var strings=[];for(var x in env){strings.push(`${x}=${env[x]}`)}getEnvStrings.strings=strings}return getEnvStrings.strings};function _environ_get(__environ,environ_buf){__environ=bigintToI53Checked(__environ);environ_buf=bigintToI53Checked(environ_buf);var bufSize=0;var envp=0;for(var string of getEnvStrings()){var ptr=environ_buf+bufSize;HEAPU64[(((__environ)+(envp))/8)]=BigInt(ptr);bufSize+=stringToUTF8(string,ptr,Infinity)+1;envp+=8}return 0}function _environ_sizes_get(penviron_count,penviron_buf_size){penviron_count=bigintToI53Checked(penviron_count);penviron_buf_size=bigintToI53Checked(penviron_buf_size);var strings=getEnvStrings();HEAPU64[((penviron_count)/8)]=BigInt(strings.length);var bufSize=0;for(var string of strings){bufSize+=lengthBytesUTF8(string)+1}HEAPU64[((penviron_buf_size)/8)]=BigInt(bufSize);return 0}var _fd_close=fd=>52;function _fd_read(fd,iov,iovcnt,pnum){iov=bigintToI53Checked(iov);iovcnt=bigintToI53Checked(iovcnt);pnum=bigintToI53Checked(pnum);return 52}function _fd_seek(fd,offset,whence,newOffset){offset=bigintToI53Checked(offset);newOffset=bigintToI53Checked(newOffset);return 70}var printCharBuffers=[null,[],[]];/**
324
+ * Given a pointer 'idx' to a null-terminated UTF8-encoded string in the given
325
+ * array that contains uint8 values, returns a copy of that string as a
326
+ * Javascript String object.
327
+ * heapOrArray is either a regular array, or a JavaScript typed array view.
328
+ * @param {number=} idx
329
+ * @param {number=} maxBytesToRead
330
+ * @param {boolean=} ignoreNul - If true, the function will not stop on a NUL character.
331
+ * @return {string}
332
+ */var UTF8ArrayToString=(heapOrArray,idx=0,maxBytesToRead,ignoreNul)=>{var endPtr=findStringEnd(heapOrArray,idx,maxBytesToRead,ignoreNul);return UTF8Decoder.decode(heapOrArray.buffer?heapOrArray.subarray(idx,endPtr):new Uint8Array(heapOrArray.slice(idx,endPtr)))};var printChar=(stream,curr)=>{var buffer=printCharBuffers[stream];if(curr===0||curr===10){(stream===1?out:err)(UTF8ArrayToString(buffer));buffer.length=0}else{buffer.push(curr)}};function _fd_write(fd,iov,iovcnt,pnum){iov=bigintToI53Checked(iov);iovcnt=bigintToI53Checked(iovcnt);pnum=bigintToI53Checked(pnum);// hack to support printf in SYSCALLS_REQUIRE_FILESYSTEM=0
333
+ var num=0;for(var i=0;i<iovcnt;i++){var ptr=Number(HEAPU64[((iov)/8)]);var len=Number(HEAPU64[(((iov)+(8))/8)]);iov+=16;for(var j=0;j<len;j++){printChar(fd,HEAPU8[ptr+j])}num+=len}HEAPU64[((pnum)/8)]=BigInt(num);return 0}// End JS library code
334
+ // include: postlibrary.js
335
+ // This file is included after the automatically-generated JS library code
336
+ // but before the wasm module is created.
337
+ {// Begin ATMODULES hooks
338
+ if(Module["noExitRuntime"])noExitRuntime=Module["noExitRuntime"];if(Module["print"])out=Module["print"];if(Module["printErr"])err=Module["printErr"];if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];// End ATMODULES hooks
339
+ if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].shift()()}}}// Begin runtime exports
340
+ // End runtime exports
341
+ // Begin JS library exports
342
+ // End JS library exports
343
+ // end include: postlibrary.js
344
+ // Imports from the Wasm binary.
345
+ var _malloc,___getTypeName,_free,__emscripten_timeout,_emscripten_stack_set_limits,__emscripten_stack_restore,_emscripten_stack_get_current,dynCall_vj,dynCall_jj,dynCall_vjjj,dynCall_ij,dynCall_ijj,dynCall_vjjjj,dynCall_jjji,dynCall_vjjjji,dynCall_jjj,dynCall_vjj,dynCall_vji,dynCall_vjii,dynCall_vjjjiiij,dynCall_vjjjjji,dynCall_vjjjjjiiij,dynCall_vjjijjj,dynCall_vjjjjj,dynCall_v,dynCall_vjjjjjj,dynCall_vjjjjjjjj,dynCall_vjjji,dynCall_jjjjii,dynCall_vjjijji,dynCall_vjjjjjji,dynCall_vjjjjjjj,dynCall_ijjjj,dynCall_ijjijjii,dynCall_vjji,dynCall_vjjjiiiiii,dynCall_vjjjjiiiiii,dynCall_vjjjjjjjii,dynCall_vjjjjiii,dynCall_vjjjjiiii,dynCall_fjji,dynCall_vjijjjij,dynCall_vjjjjii,dynCall_vjiij,dynCall_vjjiii,dynCall_vjjjiii,dynCall_ijjjiii,dynCall_ijjjjiii,dynCall_ijjj,dynCall_ijjjjjiji,dynCall_ijjjjjijiii,dynCall_ijii,dynCall_vjjjii,dynCall_vjjiij,dynCall_vjjjjij,dynCall_vjjijj,dynCall_vjjjjiijj,dynCall_vjjjjjiijj,dynCall_vjjjiijj,dynCall_vjiii,dynCall_ijjii,dynCall_vjiji,dynCall_jjjjj,dynCall_ijjiijii,dynCall_vjiiji,dynCall_vjjiiij,dynCall_ijjjiijj,dynCall_ijij,dynCall_vjij,dynCall_ijjjjj,dynCall_vjjd,dynCall_j,dynCall_vjjiijj,dynCall_vjiijj,dynCall_jjjj,dynCall_ijdiiii,dynCall_iji,dynCall_jjjjij,dynCall_ijjjjjjjj,dynCall_ijji,dynCall_jjjjjjj,dynCall_jjjjid,dynCall_jjjjijj,dynCall_jjjjjjjii,dynCall_jjjjijii,dynCall_jjjjijjj,dynCall_jjjijijj,dynCall_jjjijij,dynCall_vjjjiij,dynCall_vi,_asyncify_start_unwind,_asyncify_stop_unwind,_asyncify_start_rewind,_asyncify_stop_rewind,memory,__indirect_function_table,wasmMemory;function assignWasmExports(wasmExports){_malloc=wasmExports["W"];___getTypeName=wasmExports["X"];_free=wasmExports["Y"];__emscripten_timeout=wasmExports["Z"];_emscripten_stack_set_limits=wasmExports["_"];__emscripten_stack_restore=wasmExports["$"];_emscripten_stack_get_current=wasmExports["aa"];dynCall_vj=dynCalls["vj"]=wasmExports["ba"];dynCall_jj=dynCalls["jj"]=wasmExports["ca"];dynCall_vjjj=dynCalls["vjjj"]=wasmExports["da"];dynCall_ij=dynCalls["ij"]=wasmExports["ea"];dynCall_ijj=dynCalls["ijj"]=wasmExports["fa"];dynCall_vjjjj=dynCalls["vjjjj"]=wasmExports["ga"];dynCall_jjji=dynCalls["jjji"]=wasmExports["ha"];dynCall_vjjjji=dynCalls["vjjjji"]=wasmExports["ia"];dynCall_jjj=dynCalls["jjj"]=wasmExports["ja"];dynCall_vjj=dynCalls["vjj"]=wasmExports["ka"];dynCall_vji=dynCalls["vji"]=wasmExports["la"];dynCall_vjii=dynCalls["vjii"]=wasmExports["ma"];dynCall_vjjjiiij=dynCalls["vjjjiiij"]=wasmExports["na"];dynCall_vjjjjji=dynCalls["vjjjjji"]=wasmExports["oa"];dynCall_vjjjjjiiij=dynCalls["vjjjjjiiij"]=wasmExports["pa"];dynCall_vjjijjj=dynCalls["vjjijjj"]=wasmExports["qa"];dynCall_vjjjjj=dynCalls["vjjjjj"]=wasmExports["ra"];dynCall_v=dynCalls["v"]=wasmExports["sa"];dynCall_vjjjjjj=dynCalls["vjjjjjj"]=wasmExports["ta"];dynCall_vjjjjjjjj=dynCalls["vjjjjjjjj"]=wasmExports["ua"];dynCall_vjjji=dynCalls["vjjji"]=wasmExports["va"];dynCall_jjjjii=dynCalls["jjjjii"]=wasmExports["wa"];dynCall_vjjijji=dynCalls["vjjijji"]=wasmExports["xa"];dynCall_vjjjjjji=dynCalls["vjjjjjji"]=wasmExports["ya"];dynCall_vjjjjjjj=dynCalls["vjjjjjjj"]=wasmExports["za"];dynCall_ijjjj=dynCalls["ijjjj"]=wasmExports["Aa"];dynCall_ijjijjii=dynCalls["ijjijjii"]=wasmExports["Ba"];dynCall_vjji=dynCalls["vjji"]=wasmExports["Ca"];dynCall_vjjjiiiiii=dynCalls["vjjjiiiiii"]=wasmExports["Da"];dynCall_vjjjjiiiiii=dynCalls["vjjjjiiiiii"]=wasmExports["Ea"];dynCall_vjjjjjjjii=dynCalls["vjjjjjjjii"]=wasmExports["Fa"];dynCall_vjjjjiii=dynCalls["vjjjjiii"]=wasmExports["Ga"];dynCall_vjjjjiiii=dynCalls["vjjjjiiii"]=wasmExports["Ha"];dynCall_fjji=dynCalls["fjji"]=wasmExports["Ia"];dynCall_vjijjjij=dynCalls["vjijjjij"]=wasmExports["Ja"];dynCall_vjjjjii=dynCalls["vjjjjii"]=wasmExports["Ka"];dynCall_vjiij=dynCalls["vjiij"]=wasmExports["La"];dynCall_vjjiii=dynCalls["vjjiii"]=wasmExports["Ma"];dynCall_vjjjiii=dynCalls["vjjjiii"]=wasmExports["Na"];dynCall_ijjjiii=dynCalls["ijjjiii"]=wasmExports["Oa"];dynCall_ijjjjiii=dynCalls["ijjjjiii"]=wasmExports["Pa"];dynCall_ijjj=dynCalls["ijjj"]=wasmExports["Qa"];dynCall_ijjjjjiji=dynCalls["ijjjjjiji"]=wasmExports["Ra"];dynCall_ijjjjjijiii=dynCalls["ijjjjjijiii"]=wasmExports["Sa"];dynCall_ijii=dynCalls["ijii"]=wasmExports["Ta"];dynCall_vjjjii=dynCalls["vjjjii"]=wasmExports["Ua"];dynCall_vjjiij=dynCalls["vjjiij"]=wasmExports["Va"];dynCall_vjjjjij=dynCalls["vjjjjij"]=wasmExports["Wa"];dynCall_vjjijj=dynCalls["vjjijj"]=wasmExports["Xa"];dynCall_vjjjjiijj=dynCalls["vjjjjiijj"]=wasmExports["Ya"];dynCall_vjjjjjiijj=dynCalls["vjjjjjiijj"]=wasmExports["Za"];dynCall_vjjjiijj=dynCalls["vjjjiijj"]=wasmExports["_a"];dynCall_vjiii=dynCalls["vjiii"]=wasmExports["$a"];dynCall_ijjii=dynCalls["ijjii"]=wasmExports["ab"];dynCall_vjiji=dynCalls["vjiji"]=wasmExports["bb"];dynCall_jjjjj=dynCalls["jjjjj"]=wasmExports["cb"];dynCall_ijjiijii=dynCalls["ijjiijii"]=wasmExports["db"];dynCall_vjiiji=dynCalls["vjiiji"]=wasmExports["eb"];dynCall_vjjiiij=dynCalls["vjjiiij"]=wasmExports["fb"];dynCall_ijjjiijj=dynCalls["ijjjiijj"]=wasmExports["gb"];dynCall_ijij=dynCalls["ijij"]=wasmExports["hb"];dynCall_vjij=dynCalls["vjij"]=wasmExports["ib"];dynCall_ijjjjj=dynCalls["ijjjjj"]=wasmExports["jb"];dynCall_vjjd=dynCalls["vjjd"]=wasmExports["kb"];dynCall_j=dynCalls["j"]=wasmExports["lb"];dynCall_vjjiijj=dynCalls["vjjiijj"]=wasmExports["mb"];dynCall_vjiijj=dynCalls["vjiijj"]=wasmExports["nb"];dynCall_jjjj=dynCalls["jjjj"]=wasmExports["ob"];dynCall_ijdiiii=dynCalls["ijdiiii"]=wasmExports["pb"];dynCall_iji=dynCalls["iji"]=wasmExports["qb"];dynCall_jjjjij=dynCalls["jjjjij"]=wasmExports["rb"];dynCall_ijjjjjjjj=dynCalls["ijjjjjjjj"]=wasmExports["sb"];dynCall_ijji=dynCalls["ijji"]=wasmExports["tb"];dynCall_jjjjjjj=dynCalls["jjjjjjj"]=wasmExports["ub"];dynCall_jjjjid=dynCalls["jjjjid"]=wasmExports["vb"];dynCall_jjjjijj=dynCalls["jjjjijj"]=wasmExports["wb"];dynCall_jjjjjjjii=dynCalls["jjjjjjjii"]=wasmExports["xb"];dynCall_jjjjijii=dynCalls["jjjjijii"]=wasmExports["yb"];dynCall_jjjjijjj=dynCalls["jjjjijjj"]=wasmExports["zb"];dynCall_jjjijijj=dynCalls["jjjijijj"]=wasmExports["Ab"];dynCall_jjjijij=dynCalls["jjjijij"]=wasmExports["Bb"];dynCall_vjjjiij=dynCalls["vjjjiij"]=wasmExports["Cb"];dynCall_vi=dynCalls["vi"]=wasmExports["Db"];_asyncify_start_unwind=wasmExports["Eb"];_asyncify_stop_unwind=wasmExports["Fb"];_asyncify_start_rewind=wasmExports["Gb"];_asyncify_stop_rewind=wasmExports["Hb"];memory=wasmMemory=wasmExports["U"];__indirect_function_table=wasmExports["__indirect_function_table"]}var wasmImports={/** @export */s:___syscall_fcntl64,/** @export */L:___syscall_ioctl,/** @export */t:___syscall_openat,/** @export */D:___syscall_renameat,/** @export */B:___syscall_unlinkat,/** @export */N:__abort_js,/** @export */S:__embind_finalize_value_object,/** @export */l:__embind_register_bigint,/** @export */Q:__embind_register_bool,/** @export */O:__embind_register_emval,/** @export */v:__embind_register_float,/** @export */w:__embind_register_function,/** @export */g:__embind_register_integer,/** @export */b:__embind_register_memory_view,/** @export */P:__embind_register_std_string,/** @export */p:__embind_register_std_wstring,/** @export */T:__embind_register_value_object,/** @export */c:__embind_register_value_object_field,/** @export */R:__embind_register_void,/** @export */y:__emscripten_runtime_keepalive_clear,/** @export */j:__emval_create_invoker,/** @export */a:__emval_decref,/** @export */k:__emval_get_global,/** @export */i:__emval_invoke,/** @export */d:__emval_new_cstring,/** @export */h:__emval_run_destructors,/** @export */e:__emval_set_property,/** @export */G:__localtime_js,/** @export */E:__mmap_js,/** @export */F:__munmap_js,/** @export */z:__setitimer_js,/** @export */H:__tzset_js,/** @export */M:_clock_time_get,/** @export */u:_emscripten_date_now,/** @export */f:_emscripten_fiber_swap,/** @export */m:_emscripten_get_compiler_setting,/** @export */C:_emscripten_get_heap_max,/** @export */n:_emscripten_get_now,/** @export */A:_emscripten_resize_heap,/** @export */J:_environ_get,/** @export */K:_environ_sizes_get,/** @export */o:_fd_close,/** @export */r:_fd_read,/** @export */I:_fd_seek,/** @export */q:_fd_write,/** @export */x:_proc_exit};// Argument name here must shadow the `wasmExports` global so
346
+ // that it is recognised by metadce and minify-import-export-names
347
+ // passes.
348
+ function applySignatureConversions(wasmExports){// First, make a copy of the incoming exports object
349
+ wasmExports=Object.assign({},wasmExports);var makeWrapper_pp=f=>a0=>Number(f(BigInt(a0)));var makeWrapper__p=f=>a0=>f(BigInt(a0));var makeWrapper__pp=f=>(a0,a1)=>f(BigInt(a0),BigInt(a1));var makeWrapper_p=f=>()=>Number(f());var makeWrapper__p_=f=>(a0,a1)=>f(BigInt(a0),a1);var makeWrapper__p___=f=>(a0,a1,a2,a3)=>f(BigInt(a0),a1,a2,a3);var makeWrapper__p__=f=>(a0,a1,a2)=>f(BigInt(a0),a1,a2);var makeWrapper__p____=f=>(a0,a1,a2,a3,a4)=>f(BigInt(a0),a1,a2,a3,a4);var makeWrapper__p_____=f=>(a0,a1,a2,a3,a4,a5)=>f(BigInt(a0),a1,a2,a3,a4,a5);var makeWrapper__p_______=f=>(a0,a1,a2,a3,a4,a5,a6,a7)=>f(BigInt(a0),a1,a2,a3,a4,a5,a6,a7);var makeWrapper__p______=f=>(a0,a1,a2,a3,a4,a5,a6)=>f(BigInt(a0),a1,a2,a3,a4,a5,a6);var makeWrapper__p_________=f=>(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9)=>f(BigInt(a0),a1,a2,a3,a4,a5,a6,a7,a8,a9);var makeWrapper__p________=f=>(a0,a1,a2,a3,a4,a5,a6,a7,a8)=>f(BigInt(a0),a1,a2,a3,a4,a5,a6,a7,a8);var makeWrapper__p__________=f=>(a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10)=>f(BigInt(a0),a1,a2,a3,a4,a5,a6,a7,a8,a9,a10);wasmExports["W"]=makeWrapper_pp(wasmExports["W"]);wasmExports["X"]=makeWrapper_pp(wasmExports["X"]);wasmExports["Y"]=makeWrapper__p(wasmExports["Y"]);wasmExports["_"]=makeWrapper__pp(wasmExports["_"]);wasmExports["$"]=makeWrapper__p(wasmExports["$"]);wasmExports["_emscripten_stack_alloc"]=makeWrapper_pp(wasmExports["_emscripten_stack_alloc"]);wasmExports["aa"]=makeWrapper_p(wasmExports["aa"]);wasmExports["ba"]=makeWrapper__p_(wasmExports["ba"]);wasmExports["ca"]=makeWrapper__p_(wasmExports["ca"]);wasmExports["da"]=makeWrapper__p___(wasmExports["da"]);wasmExports["ea"]=makeWrapper__p_(wasmExports["ea"]);wasmExports["fa"]=makeWrapper__p__(wasmExports["fa"]);wasmExports["ga"]=makeWrapper__p____(wasmExports["ga"]);wasmExports["ha"]=makeWrapper__p___(wasmExports["ha"]);wasmExports["ia"]=makeWrapper__p_____(wasmExports["ia"]);wasmExports["ja"]=makeWrapper__p__(wasmExports["ja"]);wasmExports["ka"]=makeWrapper__p__(wasmExports["ka"]);wasmExports["la"]=makeWrapper__p__(wasmExports["la"]);wasmExports["ma"]=makeWrapper__p___(wasmExports["ma"]);wasmExports["na"]=makeWrapper__p_______(wasmExports["na"]);wasmExports["oa"]=makeWrapper__p______(wasmExports["oa"]);wasmExports["pa"]=makeWrapper__p_________(wasmExports["pa"]);wasmExports["qa"]=makeWrapper__p______(wasmExports["qa"]);wasmExports["ra"]=makeWrapper__p_____(wasmExports["ra"]);wasmExports["sa"]=makeWrapper__p(wasmExports["sa"]);wasmExports["ta"]=makeWrapper__p______(wasmExports["ta"]);wasmExports["ua"]=makeWrapper__p________(wasmExports["ua"]);wasmExports["va"]=makeWrapper__p____(wasmExports["va"]);wasmExports["wa"]=makeWrapper__p_____(wasmExports["wa"]);wasmExports["xa"]=makeWrapper__p______(wasmExports["xa"]);wasmExports["ya"]=makeWrapper__p_______(wasmExports["ya"]);wasmExports["za"]=makeWrapper__p_______(wasmExports["za"]);wasmExports["Aa"]=makeWrapper__p____(wasmExports["Aa"]);wasmExports["Ba"]=makeWrapper__p_______(wasmExports["Ba"]);wasmExports["Ca"]=makeWrapper__p___(wasmExports["Ca"]);wasmExports["Da"]=makeWrapper__p_________(wasmExports["Da"]);wasmExports["Ea"]=makeWrapper__p__________(wasmExports["Ea"]);wasmExports["Fa"]=makeWrapper__p_________(wasmExports["Fa"]);wasmExports["Ga"]=makeWrapper__p_______(wasmExports["Ga"]);wasmExports["Ha"]=makeWrapper__p________(wasmExports["Ha"]);wasmExports["Ia"]=makeWrapper__p___(wasmExports["Ia"]);wasmExports["Ja"]=makeWrapper__p_______(wasmExports["Ja"]);wasmExports["Ka"]=makeWrapper__p______(wasmExports["Ka"]);wasmExports["La"]=makeWrapper__p____(wasmExports["La"]);wasmExports["Ma"]=makeWrapper__p_____(wasmExports["Ma"]);wasmExports["Na"]=makeWrapper__p______(wasmExports["Na"]);wasmExports["Oa"]=makeWrapper__p______(wasmExports["Oa"]);wasmExports["Pa"]=makeWrapper__p_______(wasmExports["Pa"]);wasmExports["Qa"]=makeWrapper__p___(wasmExports["Qa"]);wasmExports["Ra"]=makeWrapper__p________(wasmExports["Ra"]);wasmExports["Sa"]=makeWrapper__p__________(wasmExports["Sa"]);wasmExports["Ta"]=makeWrapper__p___(wasmExports["Ta"]);wasmExports["Ua"]=makeWrapper__p_____(wasmExports["Ua"]);wasmExports["Va"]=makeWrapper__p_____(wasmExports["Va"]);wasmExports["Wa"]=makeWrapper__p______(wasmExports["Wa"]);wasmExports["Xa"]=makeWrapper__p_____(wasmExports["Xa"]);wasmExports["Ya"]=makeWrapper__p________(wasmExports["Ya"]);wasmExports["Za"]=makeWrapper__p_________(wasmExports["Za"]);wasmExports["_a"]=makeWrapper__p_______(wasmExports["_a"]);wasmExports["$a"]=makeWrapper__p____(wasmExports["$a"]);wasmExports["ab"]=makeWrapper__p____(wasmExports["ab"]);wasmExports["bb"]=makeWrapper__p____(wasmExports["bb"]);wasmExports["cb"]=makeWrapper__p____(wasmExports["cb"]);wasmExports["db"]=makeWrapper__p_______(wasmExports["db"]);wasmExports["eb"]=makeWrapper__p_____(wasmExports["eb"]);wasmExports["fb"]=makeWrapper__p______(wasmExports["fb"]);wasmExports["gb"]=makeWrapper__p_______(wasmExports["gb"]);wasmExports["hb"]=makeWrapper__p___(wasmExports["hb"]);wasmExports["ib"]=makeWrapper__p___(wasmExports["ib"]);wasmExports["jb"]=makeWrapper__p_____(wasmExports["jb"]);wasmExports["kb"]=makeWrapper__p___(wasmExports["kb"]);wasmExports["lb"]=makeWrapper__p(wasmExports["lb"]);wasmExports["mb"]=makeWrapper__p______(wasmExports["mb"]);wasmExports["nb"]=makeWrapper__p_____(wasmExports["nb"]);wasmExports["ob"]=makeWrapper__p___(wasmExports["ob"]);wasmExports["pb"]=makeWrapper__p______(wasmExports["pb"]);wasmExports["qb"]=makeWrapper__p__(wasmExports["qb"]);wasmExports["rb"]=makeWrapper__p_____(wasmExports["rb"]);wasmExports["sb"]=makeWrapper__p________(wasmExports["sb"]);wasmExports["tb"]=makeWrapper__p___(wasmExports["tb"]);wasmExports["ub"]=makeWrapper__p______(wasmExports["ub"]);wasmExports["vb"]=makeWrapper__p_____(wasmExports["vb"]);wasmExports["wb"]=makeWrapper__p______(wasmExports["wb"]);wasmExports["xb"]=makeWrapper__p________(wasmExports["xb"]);wasmExports["yb"]=makeWrapper__p_______(wasmExports["yb"]);wasmExports["zb"]=makeWrapper__p_______(wasmExports["zb"]);wasmExports["Ab"]=makeWrapper__p_______(wasmExports["Ab"]);wasmExports["Bb"]=makeWrapper__p______(wasmExports["Bb"]);wasmExports["Cb"]=makeWrapper__p______(wasmExports["Cb"]);wasmExports["Db"]=makeWrapper__p_(wasmExports["Db"]);wasmExports["Eb"]=makeWrapper__p(wasmExports["Eb"]);wasmExports["Gb"]=makeWrapper__p(wasmExports["Gb"]);return wasmExports}// include: postamble.js
350
+ // === Auto-generated postamble setup entry stuff ===
351
+ function run(){preRun();function doRun(){// run may have just been called through dependencies being fulfilled just in this very frame,
352
+ // or while the async setStatus time below was happening
353
+ Module["calledRun"]=true;if(ABORT)return;initRuntime();readyPromiseResolve?.(Module);Module["onRuntimeInitialized"]?.();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(()=>{setTimeout(()=>Module["setStatus"](""),1);doRun()},1)}else{doRun()}}var wasmExports;// In modularize mode the generated code is within a factory function so we
354
+ // can use await here (since it's not top-level-await).
355
+ wasmExports=await (createWasm());run();// end include: postamble.js
356
+ // include: postamble_modularize.js
357
+ // In MODULARIZE mode we wrap the generated code in a factory function
358
+ // and return either the Module itself, or a promise of the module.
359
+ // We assign to the `moduleRtn` global here and configure closure to see
360
+ // this as an extern so it won't get minified.
361
+ if(runtimeInitialized){moduleRtn=Module}else{// Set up the promise that indicates the Module is initialized
362
+ moduleRtn=new Promise((resolve,reject)=>{readyPromiseResolve=resolve;readyPromiseReject=reject})}
363
+ ;return moduleRtn}// Export using a UMD style export, or ES6 exports if selected
364
+ export default Module;