@cogenta/cli 0.4.0 → 0.6.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 (171) hide show
  1. package/CHANGELOG.md +3856 -0
  2. package/dist/admin-assets/assets/index-CxZHGwVA.css +1 -0
  3. package/dist/admin-assets/assets/index-fYXyHpn8.js +1090 -0
  4. package/dist/admin-assets/assets/vips-_dmTUXFO.wasm +0 -0
  5. package/dist/admin-assets/assets/vips-es6-DrQTTS8Q.js +7 -0
  6. package/dist/admin-assets/branding/logo-cogenta-dark.png +0 -0
  7. package/dist/admin-assets/branding/logo-cogenta-icon.png +0 -0
  8. package/dist/admin-assets/branding/logo-cogenta-light.png +0 -0
  9. package/dist/admin-assets/branding/logo-cogenta-small.png +0 -0
  10. package/dist/admin-assets/branding/logo-cogenta-transparent.png +0 -0
  11. package/dist/admin-assets/branding/logo-cogenta.png +0 -0
  12. package/dist/admin-assets/favicon.png +0 -0
  13. package/dist/admin-assets/fonts/jetbrains-mono-var.woff2 +0 -0
  14. package/dist/admin-assets/fonts/space-grotesk-var.woff2 +0 -0
  15. package/dist/admin-assets/index.html +3 -2
  16. package/dist/bin.js +6 -0
  17. package/dist/bin.js.map +1 -1
  18. package/dist/commands/admin-assets.d.ts +1 -0
  19. package/dist/commands/admin-assets.d.ts.map +1 -1
  20. package/dist/commands/admin-assets.js +19 -1
  21. package/dist/commands/admin-assets.js.map +1 -1
  22. package/dist/commands/agent-runtime.d.ts +151 -0
  23. package/dist/commands/agent-runtime.d.ts.map +1 -0
  24. package/dist/commands/agent-runtime.js +519 -0
  25. package/dist/commands/agent-runtime.js.map +1 -0
  26. package/dist/commands/assistant.d.ts +89 -3
  27. package/dist/commands/assistant.d.ts.map +1 -1
  28. package/dist/commands/assistant.js +206 -39
  29. package/dist/commands/assistant.js.map +1 -1
  30. package/dist/commands/audit-integrity-alert.d.ts +23 -0
  31. package/dist/commands/audit-integrity-alert.d.ts.map +1 -0
  32. package/dist/commands/audit-integrity-alert.js +33 -0
  33. package/dist/commands/audit-integrity-alert.js.map +1 -0
  34. package/dist/commands/backup.d.ts +78 -0
  35. package/dist/commands/backup.d.ts.map +1 -0
  36. package/dist/commands/backup.js +238 -0
  37. package/dist/commands/backup.js.map +1 -0
  38. package/dist/commands/channels.d.ts +47 -0
  39. package/dist/commands/channels.d.ts.map +1 -0
  40. package/dist/commands/channels.js +277 -0
  41. package/dist/commands/channels.js.map +1 -0
  42. package/dist/commands/default-logo.d.ts +27 -0
  43. package/dist/commands/default-logo.d.ts.map +1 -0
  44. package/dist/commands/default-logo.js +30 -0
  45. package/dist/commands/default-logo.js.map +1 -0
  46. package/dist/commands/doctor.d.ts +5 -1
  47. package/dist/commands/doctor.d.ts.map +1 -1
  48. package/dist/commands/doctor.js +74 -2
  49. package/dist/commands/doctor.js.map +1 -1
  50. package/dist/commands/export.d.ts +22 -0
  51. package/dist/commands/export.d.ts.map +1 -0
  52. package/dist/commands/export.js +182 -0
  53. package/dist/commands/export.js.map +1 -0
  54. package/dist/commands/forms-page.d.ts +75 -0
  55. package/dist/commands/forms-page.d.ts.map +1 -0
  56. package/dist/commands/forms-page.js +191 -0
  57. package/dist/commands/forms-page.js.map +1 -0
  58. package/dist/commands/import.d.ts.map +1 -1
  59. package/dist/commands/import.js +13 -1
  60. package/dist/commands/import.js.map +1 -1
  61. package/dist/commands/mcp.d.ts +35 -0
  62. package/dist/commands/mcp.d.ts.map +1 -0
  63. package/dist/commands/mcp.js +277 -0
  64. package/dist/commands/mcp.js.map +1 -0
  65. package/dist/commands/roles.d.ts +22 -0
  66. package/dist/commands/roles.d.ts.map +1 -0
  67. package/dist/commands/roles.js +79 -0
  68. package/dist/commands/roles.js.map +1 -0
  69. package/dist/commands/search-page.d.ts +15 -0
  70. package/dist/commands/search-page.d.ts.map +1 -1
  71. package/dist/commands/search-page.js +22 -16
  72. package/dist/commands/search-page.js.map +1 -1
  73. package/dist/commands/seo.d.ts +92 -4
  74. package/dist/commands/seo.d.ts.map +1 -1
  75. package/dist/commands/seo.js +168 -4
  76. package/dist/commands/seo.js.map +1 -1
  77. package/dist/commands/serve.d.ts +439 -7
  78. package/dist/commands/serve.d.ts.map +1 -1
  79. package/dist/commands/serve.js +3498 -181
  80. package/dist/commands/serve.js.map +1 -1
  81. package/dist/commands/site-plan.d.ts +27 -1
  82. package/dist/commands/site-plan.d.ts.map +1 -1
  83. package/dist/commands/site-plan.js +71 -4
  84. package/dist/commands/site-plan.js.map +1 -1
  85. package/dist/commands/term-archive-page.d.ts +94 -0
  86. package/dist/commands/term-archive-page.d.ts.map +1 -0
  87. package/dist/commands/term-archive-page.js +195 -0
  88. package/dist/commands/term-archive-page.js.map +1 -0
  89. package/dist/commands/theme-css.d.ts +22 -7
  90. package/dist/commands/theme-css.d.ts.map +1 -1
  91. package/dist/commands/theme-css.js +33 -8
  92. package/dist/commands/theme-css.js.map +1 -1
  93. package/dist/commands/theme-registry.d.ts +94 -0
  94. package/dist/commands/theme-registry.d.ts.map +1 -0
  95. package/dist/commands/theme-registry.js +130 -0
  96. package/dist/commands/theme-registry.js.map +1 -0
  97. package/dist/commands/theme-render.d.ts +330 -9
  98. package/dist/commands/theme-render.d.ts.map +1 -1
  99. package/dist/commands/theme-render.js +932 -66
  100. package/dist/commands/theme-render.js.map +1 -1
  101. package/dist/commands/theme-wiring.d.ts +107 -0
  102. package/dist/commands/theme-wiring.d.ts.map +1 -0
  103. package/dist/commands/theme-wiring.js +295 -0
  104. package/dist/commands/theme-wiring.js.map +1 -0
  105. package/dist/commands/tools.d.ts +71 -0
  106. package/dist/commands/tools.d.ts.map +1 -0
  107. package/dist/commands/tools.js +330 -0
  108. package/dist/commands/tools.js.map +1 -0
  109. package/dist/commands/update.d.ts +25 -0
  110. package/dist/commands/update.d.ts.map +1 -0
  111. package/dist/commands/update.js +193 -0
  112. package/dist/commands/update.js.map +1 -0
  113. package/dist/index.d.ts +15 -0
  114. package/dist/index.d.ts.map +1 -1
  115. package/dist/index.js +146 -4
  116. package/dist/index.js.map +1 -1
  117. package/dist/invite-mail.d.ts +39 -0
  118. package/dist/invite-mail.d.ts.map +1 -0
  119. package/dist/invite-mail.js +39 -0
  120. package/dist/invite-mail.js.map +1 -0
  121. package/dist/update/apply.d.ts +54 -0
  122. package/dist/update/apply.d.ts.map +1 -0
  123. package/dist/update/apply.js +77 -0
  124. package/dist/update/apply.js.map +1 -0
  125. package/dist/update/changelog-risk.d.ts +20 -0
  126. package/dist/update/changelog-risk.d.ts.map +1 -0
  127. package/dist/update/changelog-risk.js +55 -0
  128. package/dist/update/changelog-risk.js.map +1 -0
  129. package/dist/update/check.d.ts +60 -0
  130. package/dist/update/check.d.ts.map +1 -0
  131. package/dist/update/check.js +56 -0
  132. package/dist/update/check.js.map +1 -0
  133. package/dist/update/contract-risk.d.ts +55 -0
  134. package/dist/update/contract-risk.d.ts.map +1 -0
  135. package/dist/update/contract-risk.js +75 -0
  136. package/dist/update/contract-risk.js.map +1 -0
  137. package/dist/update/history.d.ts +30 -0
  138. package/dist/update/history.d.ts.map +1 -0
  139. package/dist/update/history.js +38 -0
  140. package/dist/update/history.js.map +1 -0
  141. package/dist/update/index.d.ts +28 -0
  142. package/dist/update/index.d.ts.map +1 -0
  143. package/dist/update/index.js +11 -0
  144. package/dist/update/index.js.map +1 -0
  145. package/dist/update/list-restore-points.d.ts +20 -0
  146. package/dist/update/list-restore-points.d.ts.map +1 -0
  147. package/dist/update/list-restore-points.js +35 -0
  148. package/dist/update/list-restore-points.js.map +1 -0
  149. package/dist/update/npm-registry.d.ts +11 -0
  150. package/dist/update/npm-registry.d.ts.map +1 -0
  151. package/dist/update/npm-registry.js +74 -0
  152. package/dist/update/npm-registry.js.map +1 -0
  153. package/dist/update/restore-point.d.ts +26 -0
  154. package/dist/update/restore-point.d.ts.map +1 -0
  155. package/dist/update/restore-point.js +23 -0
  156. package/dist/update/restore-point.js.map +1 -0
  157. package/dist/update/tar.d.ts +27 -0
  158. package/dist/update/tar.d.ts.map +1 -0
  159. package/dist/update/tar.js +56 -0
  160. package/dist/update/tar.js.map +1 -0
  161. package/dist/update/version-compare.d.ts +17 -0
  162. package/dist/update/version-compare.d.ts.map +1 -0
  163. package/dist/update/version-compare.js +42 -0
  164. package/dist/update/version-compare.js.map +1 -0
  165. package/dist/version.d.ts +13 -0
  166. package/dist/version.d.ts.map +1 -0
  167. package/dist/version.js +18 -0
  168. package/dist/version.js.map +1 -0
  169. package/package.json +33 -16
  170. package/dist/admin-assets/assets/index-C9a7O_Xs.css +0 -1
  171. package/dist/admin-assets/assets/index-DXvMgWvn.js +0 -74
@@ -0,0 +1,7 @@
1
+ (function(){async function Vips(moduleArg={}){var moduleRtn,n=moduleArg,aa=!!globalThis.window,ba=!!globalThis.WorkerGlobalScope,r=ba&&globalThis.name==`em-pthread`;n.dynamicLibraries=n.dynamicLibraries||[`vips-jxl.wasm`,`vips-heif.wasm`];var ca=[],da=`./this.program`,ea=self.location.href,fa=``;function ha(i){return n.locateFile?n.locateFile(i,fa):fa+i}var ia,ja;if(aa||ba){try{fa=new URL(`.`,ea).href}catch{}ba&&(ja=i=>{var o=new XMLHttpRequest;return o.open(`GET`,i,!1),o.responseType=`arraybuffer`,o.send(null),new Uint8Array(o.response)}),ia=async i=>{if(i=await fetch(i,{credentials:`same-origin`}),i.ok)return i.arrayBuffer();throw Error(i.status+` : `+i.url)}}var la=console.log.bind(console),w=console.error.bind(console),ma=[],na,oa,pa=!1,qa,ra,sa,ta={},va;if(r){var wa=!1;self.onunhandledrejection=i=>{throw i.reason||i};function a(i){try{var o=i.data,s=o.V;if(s==1){let i=[];self.onmessage=o=>i.push(o),va=()=>{postMessage({V:3});for(let o of i)a(o);self.onmessage=a},ma=o.Hb,ta=o.sc;for(let i of o.Tb)(!n[i]||n[i].proxy)&&(n[i]=(...o)=>{postMessage({V:9,Sb:i,Bb:o})},i==`print`&&(la=n[i]),i==`printErr`&&(w=n[i]));xa=o.zc,ya(),oa=o.Ac,za(),Aa()}else if(s==2){Ba(o.X),Ca(o.X,0,0,1,0,0),Da(),Ea(o.X),wa||=(Fa(),!0);try{Ga(o.vc,o.Ea)}catch(i){if(i!=`unwind`)throw i}}else s==4?wa&&Ha():s&&(w(`worker: received unknown command ${s}`),w(o))}catch(i){throw Ia(),i}}self.onmessage=a}var Ja=!1,Ka=!1;function ya(){var i=xa.buffer;x=new Int8Array(i),y=new Int16Array(i),A=new Uint8Array(i),E=new Uint16Array(i),F=new Int32Array(i),G=new Uint32Array(i),La=new Float32Array(i),Ma=new Float64Array(i),H=new BigInt64Array(i),Na=new BigUint64Array(i)}var Oa=[];function Pa(){Ja=!0,r?va():(Qa(Oa),n.noFSInit||FS.Ia||FS.init(),Ra.__wasm_call_ctors(),Qa(Sa),FS.fb=!1)}function I(i){throw n.onAbort?.(i),i=`Aborted(${i})`,w(i),pa=!0,i+=`. Build with -sASSERTIONS for more info.`,Ja&&Ta(),i=new WebAssembly.RuntimeError(i),sa?.(i),i}var Ua;async function Va(i){if(!na)try{var o=await ia(i);return new Uint8Array(o)}catch{}if(i==Ua&&na)i=new Uint8Array(na);else if(ja)i=ja(i);else throw`both async and sync fetching of the wasm failed`;return i}async function Wa(i,o){try{var s=await Va(i);return await WebAssembly.instantiate(s,o)}catch(i){w(`failed to asynchronously prepare wasm: ${i}`),I(i)}}async function Ya(i){var o=Ua;if(!na)try{var s=fetch(o,{credentials:`same-origin`});return await WebAssembly.instantiateStreaming(s,i)}catch(i){w(`wasm streaming compile failed: ${i}`),w(`falling back to ArrayBuffer instantiation`)}return Wa(o,i)}function Za(){J={__assert_fail:$a,__call_sighandler:ab,__lsan_ignore_object:bb,__pthread_create_js:cb,__syscall_dup:db,__syscall_faccessat:eb,__syscall_fcntl64:fb,__syscall_fstat64:gb,__syscall_ftruncate64:hb,__syscall_getcwd:ib,__syscall_ioctl:jb,__syscall_lstat64:kb,__syscall_newfstatat:lb,__syscall_openat:mb,__syscall_poll:nb,__syscall_rmdir:ob,__syscall_stat64:pb,__syscall_unlinkat:qb,__throw_exception_with_stack_trace:rb,_abort_js:sb,_dlopen_js:tb,_dlsym_catchup_js:ub,_dlsym_js:xb,_embind_finalize_value_object:yb,_embind_register_arithmetic_vector:zb,_embind_register_bigint:Ab,_embind_register_bool:Bb,_embind_register_class:Cb,_embind_register_class_class_function:Db,_embind_register_class_constructor:Eb,_embind_register_class_function:Fb,_embind_register_class_property:Gb,_embind_register_emval:Hb,_embind_register_enum:Ib,_embind_register_enum_value:Jb,_embind_register_float:Kb,_embind_register_function:Lb,_embind_register_integer:Mb,_embind_register_iterable:Nb,_embind_register_memory_view:Ob,_embind_register_optional:Pb,_embind_register_std_string:Qb,_embind_register_std_wstring:Rb,_embind_register_value_object:Sb,_embind_register_value_object_field:Tb,_embind_register_void:Ub,_emscripten_dlopen_js:Vb,_emscripten_dlsync_threads:Wb,_emscripten_get_dynamic_libraries_js:Xb,_emscripten_init_main_thread_js:Yb,_emscripten_notify_mailbox_postmessage:Zb,_emscripten_receive_on_main_thread_js:$b,_emscripten_runtime_keepalive_clear:ac,_emscripten_thread_cleanup:bc,_emscripten_thread_exit_joinable:cc,_emscripten_thread_mailbox_await:Ea,_emscripten_thread_set_strongref:dc,_emval_array_to_memory_view:ec,_emval_create_invoker:fc,_emval_decref:hc,_emval_get_global:ic,_emval_get_module_property:jc,_emval_get_property:kc,_emval_incref:lc,_emval_instanceof:mc,_emval_invoke:nc,_emval_is_number:oc,_emval_is_string:pc,_emval_new_cstring:qc,_emval_run_destructors:rc,_emval_set_property:sc,_emval_typeof:tc,_gmtime_js:uc,_localtime_js:vc,_mmap_js:wc,_munmap_js:xc,_tzset_js:yc,clock_time_get:zc,emscripten_check_blocking_allowed:Ac,emscripten_date_now:Bc,emscripten_err:Cc,emscripten_exit_with_live_runtime:Dc,emscripten_get_heap_max:Ec,emscripten_get_now:Fc,emscripten_num_logical_cores:Gc,emscripten_promise_destroy:Hc,emscripten_promise_resolve:Ic,emscripten_resize_heap:Jc,environ_get:Kc,environ_sizes_get:Lc,exit:Mc,fd_close:Nc,fd_fdstat_get:Oc,fd_read:Pc,fd_seek:Qc,fd_write:Rc,ffi_call_js:Sc,heif_error_success:Tc,memory:xa,proc_exit:Uc,random_get:Vc};var i=new Proxy(new Set([`__lsan_ignore_object`]),Wc);return{env:J,wasi_snapshot_preview1:J,"GOT.mem":i,"GOT.func":i}}async function za(){function i(i,o){var s=Ra=i.exports;Xc(Ra);var _=Yc(o);return Zc(Ra._emscripten_tls_init,i.exports,_),i=Ra,$c=i.pthread_self,ad=i.malloc,n._main=i.main,L=i.free,bd=i.fflush,cd=i.calloc,n.__ZnamSt11align_val_t=i._ZnamSt11align_val_t,dd=i.__getTypeName,Fa=i._embind_initialize_bindings,n._emscripten_builtin_free=i.emscripten_builtin_free,ed=i.emscripten_builtin_memalign,n._emscripten_builtin_malloc=i.emscripten_builtin_malloc,fd=i.__funcs_on_exit,n.___libc_calloc=i.__libc_calloc,n.___libc_free=i.__libc_free,n.___libc_malloc=i.__libc_malloc,gd=i.__dl_seterr,hd=i._emscripten_dlsync_self_async,jd=i._emscripten_dlsync_self,kd=i._emscripten_proxy_dlsync_async,ld=i._emscripten_proxy_dlsync,md=i._emscripten_find_dylib,Ca=i._emscripten_thread_init,nd=i.__set_thread_state,Ia=i._emscripten_thread_crashed,od=i._emscripten_run_js_on_main_thread_done,pd=i._emscripten_run_js_on_main_thread,qd=i._emscripten_thread_free_data,rd=i._emscripten_thread_exit,n._strndup=i.strndup,sd=i._emscripten_check_mailbox,n.__ZdaPvm=i._ZdaPvm,n.___libc_realloc=i.__libc_realloc,n._emscripten_builtin_calloc=i.emscripten_builtin_calloc,n._emscripten_builtin_realloc=i.emscripten_builtin_realloc,n._malloc_size=i.malloc_size,n._malloc_usable_size=i.malloc_usable_size,n._reallocf=i.reallocf,td=i.emscripten_get_sbrk_ptr,Ta=i.__trap,ud=i.emscripten_stack_set_limits,vd=i._emscripten_stack_restore,wd=i._emscripten_stack_alloc,xd=i.emscripten_stack_get_current,yd=i.__thrown_object_from_unwind_exception,zd=i.__get_exception_message,M=i.__indirect_function_table,Ad=i.__cpp_exception,Bd=i.__heap_base.value,Cd(s),Dd(`__main__`,0,J),Ed(),oa=o,Ra}var o=Za();return n.instantiateWasm?new Promise(s=>{n.instantiateWasm(o,(o,_)=>{s(i(o,_))})}):r?i(new WebAssembly.Instance(oa,Za()),oa):(Ua??=n.locateFile?ha(`vips.wasm`):new URL(`/admin/assets/vips-_dmTUXFO.wasm`,``+self.location.href).href,function(o){return i(o.instance,o.module)}(await Ya(o)))}var Gd=i=>{if(!(i instanceof Fd||i==`unwind`))throw i};class Fd{name=`ExitStatus`;constructor(i){this.message=`Program terminated with exit(${i})`,this.status=i}}var N=0,Hd=i=>{i.terminate(),i.onmessage=()=>{}},Md=i=>{var o=Id[i];Jd.delete(i),i in Kd&&Kd[i].resolve(),i=o.X,delete Id[i],Ld.push(o),o.X=0,qd(i)},Qa=i=>{for(;i.length>0;)i.shift()(n)},Nd=[],Od=()=>{var i=n.preRun.shift();Nd.push(i)},Pd=i=>{Jd.add(i),i in Kd&&Kd[i].resolve()},Qd=0,Rd=null,Sd=()=>{if(Qd--,n.monitorRunDependencies?.(Qd),Qd==0&&Rd){var i=Rd;Rd=null,i()}},Td=()=>{Qd++,n.monitorRunDependencies?.(Qd)},Wd=i=>{if(Ld.length==0){var o=Ud();Vd(o)}return o=Ld.pop(),o?(Id[i.X]=o,o.X=i.X,o.postMessage({V:2,vc:i.uc,Ea:i.Ea,X:i.X},i.wc),0):6},Xd=!Atomics.waitAsync||globalThis.navigator?.userAgent&&Number((navigator.userAgent.match(/Chrom(e|ium)\/([0-9]+)\./)||[])[2])<91,Ld=[],Yd=[],Id={},Kd={},Jd=new Set;function Zd(){for(var i=navigator.hardwareConcurrency>6?navigator.hardwareConcurrency:6;i--;)Ud();Nd.push(async()=>{var i=$d();Td(`loading-workers`),await i,Sd(`loading-workers`)})}var ae=()=>{for(var i of Object.values(Id))Hd(i);for(i of Ld)Hd(i);Ld=[],Id={}};function Da(){Yd.forEach(i=>i())}var Vd=i=>new Promise(o=>{i.onmessage=s=>{var _=s.data;if(s=_.V,_.rb)Id[_.rb]?.postMessage(_);else if(_===`setimmediate`||_===`_si`)i.postMessage(_);else switch(s){case 4:Ha();break;case 5:Wd(_);break;case 6:be(()=>Md(_.Ua));break;case 7:Pd(_.Ua);break;case 3:o(i);break;case 9:n[_.Sb](..._.Bb);break;default:s&&w(`worker sent an unknown command ${s}`)}},i.onerror=i=>{throw w(`worker sent an error! ${i.filename}:${i.lineno}: ${i.message}`),i};var s=[],_=[`onExit`,`onAbort`,`print`,`printErr`],j;for(j of _)n.propertyIsEnumerable(j)&&s.push(j);i.postMessage({V:1,Tb:s,zc:xa,Ac:oa,Hb:ma,sc:ta})});async function $d(){if(!r)return Promise.all(Ld.map(Vd))}function Ud(){if(n.mainScriptUrlOrBlob){var i=n.mainScriptUrlOrBlob;typeof i!=`string`&&(i=URL.createObjectURL(i)),i=new Worker(i,{type:`module`,name:`em-pthread`})}else i=new Worker(self.location.href,{type:`module`,name:`em-pthread`});return Ld.push(i),i}var ce,O=(i,o,...s)=>{var _=8*s.length*2,j=xd(),$=wd(_),_e=$>>3,et;for(et of s)typeof et==`bigint`?(H[_e++]=1n,H[_e++]=et):(H[_e++]=0n,Ma[_e++]=et);return i=pd(i,0,_,$,o),vd(j),i};function Uc(i){if(r)return O(0,1,i);throw qa=i,de||N>0||(ae(),n.onExit?.(i),pa=!0),new Fd(i)}Uc.g=`vi`;function ee(i){if(r)return O(1,0,i);Mc(i)}var Mc=i=>{if(qa=i,r)throw ee(i),`unwind`;if(!(de||N>0)){fd(),FS.Ia=!1,bd(0);for(var o of FS.streams)o&&FS.close(o);ae(),o=$c(),nd(0,0,0,1),Xd||Atomics.notify(F,o>>2),Ka=!0}Uc(i)};Mc.g=`vi`;var be=i=>{if(!Ka&&!pa)try{i()}catch(i){Gd(i)}finally{if(!(Ka||de||N>0))try{r?$c()&&rd(qa):Mc(qa)}catch(i){Gd(i)}}},fe=i=>{N+=1,setTimeout(()=>{--N,be(i)},1e4)},ge=[],he={},ie=!1;function je(){function i(){ie=document.pointerLockElement===n.canvas}if(!ke){ke=!0,ge.push({canHandle:i=>!n.noImageDecoding&&/\.(jpg|jpeg|png|bmp|webp)$/i.test(i),handle:async(i,o)=>{var s=new Blob([i],{type:le(o)});s.size!==i.length&&(s=new Blob([new Uint8Array(i).buffer],{type:le(o)}));var _=URL.createObjectURL(s);return new Promise((o,s)=>{var j=new Image;j.onload=()=>{var s=document.createElement(`canvas`);s.width=j.width,s.height=j.height,s.getContext(`2d`).drawImage(j,0,0),URL.revokeObjectURL(_),o(i)},j.onerror=()=>{w(`Image ${_} could not be decoded`),s()},j.src=_})}}),ge.push({canHandle:i=>!n.noAudioDecoding&&i.slice(-4)in{".ogg":1,".wav":1,".mp3":1},handle:async(i,o)=>new Promise(s=>{function _(){j||(j=!0,s(i))}var j=!1,$=URL.createObjectURL(new Blob([i],{type:le(o)})),_e=new Audio;_e.addEventListener(`canplaythrough`,()=>_(_e),!1),_e.onerror=()=>{if(!j){w(`warning: browser could not fully decode audio ${o}, trying slower base64 approach`);for(var s=``,$=0,et=0,tt=0;tt<i.length;tt++)for($=$<<8|i[tt],et+=8;et>=6;){var nt=$>>et-6&63;et-=6,s+=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`[nt]}et==2?(s+=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`[($&3)<<4],s+=`==`):et==4&&(s+=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`[($&15)<<2],s+=`=`),_e.src=`data:audio/x-`+o.slice(-3)+`;base64,`+s,_(_e)}},_e.src=$,fe(()=>{_(_e)})})});var o=n.canvas;o&&(document.addEventListener(`pointerlockchange`,i,!1),n.elementPointerLock&&o.addEventListener(`click`,i=>{!ie&&n.canvas.requestPointerLock&&(n.canvas.requestPointerLock(),i.preventDefault())},!1))}}function le(i){return{jpg:`image/jpeg`,jpeg:`image/jpeg`,png:`image/png`,bmp:`image/bmp`,ogg:`audio/ogg`,wav:`audio/wav`,mp3:`audio/mpeg`}[i.slice(i.lastIndexOf(`.`)+1)]}var me={},ke,ne={},Wc={get(i,o){var s=ne[o];return s||=ne[o]=new WebAssembly.Global({value:`i32`,mutable:!0},-1),i.has(o)||(s.required=!0),s}},y,F,H,x,La,Ma,E,G,Na,A,oe=[];function Ba(i){var o=G[i+48>>2];ud(o,o-G[i+52>>2]),vd(o)}var pe=new TextDecoder,qe=(i,o,s,_)=>{if(s=o+s,_)return s;for(;i[o]&&!(o>=s);)++o;return o},re=(i,o=0,s)=>(s=qe(i,o,s),pe.decode(i.buffer?i.buffer instanceof ArrayBuffer?i.subarray(o,s):i.slice(o,s):new Uint8Array(i.slice(o,s)))),Yc=i=>{function o(){for(var o=0,s=1;;){var _=i[$++];if(o+=(_&127)*s,s*=128,!(_&128))break}return o}function s(){var s=o();return $+=s,re(i,$-s,s)}function _(){for(var i=o(),_=[];i--;)_.push(s());return _}function j(i,o){if(i)throw Error(o)}var $=0,_e=0;if(i instanceof WebAssembly.Module)_e=WebAssembly.Module.customSections(i,`dylink.0`),j(_e.length===0,`need dylink section`),i=new Uint8Array(_e[0]),_e=i.length;else{_e=new Uint32Array(new Uint8Array(i.subarray(0,24)).buffer)[0]==1836278016,j(!_e,`need to see wasm magic number`),j(i[8]!==0,`need the dylink section to be first`),$=9,_e=o(),_e=$+_e;var et=s();j(et!==`dylink.0`)}for(et={Oa:[],sb:new Set,wb:new Set,pb:[]};$<_e;){var tt=i[$++],nt=o();if(tt===1)et.Na=o(),et.ac=o(),et.ua=o(),et.Uc=o();else if(tt===2)et.Oa=_();else if(tt===3)for(tt=o();tt--;){nt=s();var rt=o();rt&256&&et.sb.add(nt)}else if(tt===4)for(tt=o();tt--;)s(),nt=s(),rt=o(),(rt&3)==1&&et.wb.add(nt);else tt===5?et.pb=_():$+=nt}return et},Ga=(i,o)=>{de=N=0,jd(),i=M.get(i)(o),de||N>0?qa=i:rd(i)},Dd=(i,o,s)=>(s={Ba:1/0,name:i,exports:s,global:!0},se[i]=s,o!=null&&(te[o]=s),s),se={},te={},ue=(i,o)=>Math.ceil(i/o)*o,ve=i=>{if(Ja)return cd(i,1);var o=Bd;if(Bd=i=o+Math.ceil(i/16)*16,!r){var s=td();G[s>>2]=i}return o},xe=(i,o)=>{if(we)for(var s=i;s<i+o;s++){var _=M.get(s);_&&we.set(_,s)}},we,ye=i=>(we||(we=new WeakMap,xe(0,M.length)),we.get(i)||0),ze=[],Ae=i=>{var o=i.length;return[o%128|128,o>>7,...i]},Be={i:127,p:127,j:126,f:125,d:124,e:111},Ce=i=>Ae(Array.from(i,i=>Be[i])),De=(i,o)=>{var s=ye(i);if(s)return s;s=ze.length?ze.pop():M.grow(1);try{M.set(s,i)}catch(_){if(!(_ instanceof TypeError))throw _;o=Uint8Array.of(0,97,115,109,1,0,0,0,1,...Ae([1,96,...Ce(o.slice(1)),...Ce(o[0]===`v`?``:o[0])]),2,7,1,1,101,1,102,0,0,7,5,1,1,102,0,0),o=new WebAssembly.Module(o),o=new WebAssembly.Instance(o,{e:{f:i}}).exports.f,M.set(s,o)}return we.set(i,s),s},Cd=(i,o)=>{for(var s in i){var _=s;if(!`memory __memory_base __table_base __stack_pointer __indirect_function_table __cpp_exception __c_longjmp __wasm_apply_data_relocs __dso_handle __tls_size __tls_align __set_stack_limits _emscripten_tls_init __wasm_init_tls __wasm_call_ctors __start_em_asm __stop_em_asm __start_em_js __stop_em_js`.split(` `).includes(_)&&!_.startsWith(`__em_js__`)){_=i[s];var j=ne[s]&&ne[s].value!=-1;if(o||!j){if(typeof _==`function`)_=De(_);else if(typeof _.value!=`number`)continue;let i;ne[i=s]??(ne[i]=new WebAssembly.Global({value:`i32`,mutable:!0})),ne[s].value=_}}}},Ee=(i,o=0)=>{var s={},_;for(_ in i){var j=_,$=i[_];a:{if($ instanceof WebAssembly.Global)try{$.value=$.value}catch{var _e=!0;break a}_e=!1}$=_e?new WebAssembly.Global({value:`i32`},$.value+o):$,s[j]=$}return s},Fe=i=>(i=J[i],!(!i||i.Ca)),Ge=(i,o)=>Object.defineProperty(o,"name",{value:i}),He=i=>{var o;return Fe(i)&&(o=J[i]),{Ta:o,name:i}},Sa=[],P=(i,o,s)=>i?pe.decode(A.slice(i,qe(A,i,o,s))):``,Me=(a,b,c,d,e)=>{function f(){function k(B,z){function C(ua,Y){ua=[];for(var vb=0;;vb++){var Xa=`$`+vb;if(!Y.includes(Xa))break;ua.push(Xa)}ua=ua.join(`,`),Ie[D]=eval(`(${ua}) => { ${Y} };`)}function K(ua,Y,vb){var Xa=[];if(Y=Y.slice(1,-1),Y!=`void`){Y=Y.split(`,`);for(var Ag of Y)Y=Ag.split(` `).pop(),Xa.push(Y.replaceAll(`*`,``))}p[ua]=eval(`(${Xa}) => ${vb};`)}if(!r&&c&&(ta[c]=B),xe(t,g.ua),p=Ee(z.exports,q),Cd(p),b.Ab||Je(),`__start_em_asm`in p){var D=p.__start_em_asm.value;for(B=p.__stop_em_asm.value;D<B;){var ka=P(D);C(D,ka),D=A.indexOf(0,D)+1}}for(var wb in p)wb.startsWith(`__em_js__`)&&(D=p[wb].value,ka=P(D),[B,ka]=ka.split(`<::>`),K(wb.replace(`__em_js__`,``),B,ka),delete p[wb]);return Zc(p._emscripten_tls_init,z.exports,g),l&&((z=p.__wasm_apply_data_relocs)&&(Ja?z():Oa.push(z)),(z=p.__wasm_call_ctors)&&(Ja?z():Sa.push(z))),p}var l=!e||!x[e+8];if(l){var m=2**g.ac,q=g.Na?ue(ve(g.Na+m),m):0,t=g.ua?M.length:0;e&&(x[e+8]=1,G[e+12>>2]=q,F[e+16>>2]=g.Na,G[e+20>>2]=t,F[e+24>>2]=g.ua)}else q=G[e+12>>2],t=G[e+20>>2];g.ua&&M.grow(g.ua);var p;m=new Proxy({},{get(i,o){switch(o){case`__memory_base`:return q;case`__table_base`:return t}if(o in J&&!J[o].Ca)return J[o];if(!(o in i)){var s;i[o]=(...i)=>{if(!s){var _=He(o).Ta;!_&&d&&(_=d[o]),_||=p[o],s=_}return s(...i)}}return i[o]}});var u=new Proxy(g.wb,Wc),v={"GOT.mem":u,"GOT.func":u,env:m,wasi_snapshot_preview1:m};return b.J?(async()=>{var i;return a instanceof WebAssembly.Module?i=new WebAssembly.Instance(a,v):{module:a,instance:i}=await WebAssembly.instantiate(a,v),k(a,i)})():(m=a instanceof WebAssembly.Module?a:new WebAssembly.Module(a),u=new WebAssembly.Instance(m,v),k(m,u))}var g=Yc(a);if(b={...b,Sa:{fc:c,kc:g.pb}},b.J)return g.Oa.reduce((i,o)=>i.then(()=>(o=Ke(o,b.Sa)??o,Le(o,b,d))),Promise.resolve()).then(f);for(var h of g.Oa)h=Ke(h,b.Sa)??h,Le(h,b,d);return f()},Xc=i=>{var o,s;for([o,s]of Object.entries(i))Fe(o)||(J[o]=s)},Ne=async i=>(i=await ia(i),new Uint8Array(i)),Oe=(i,o)=>{for(var s=0,_=i.length-1;_>=0;_--){var j=i[_];j===`.`?i.splice(_,1):j===`..`?(i.splice(_,1),s++):s&&(i.splice(_,1),s--)}if(o)for(;s;s--)i.unshift(`..`);return i},Pe=i=>{var o=i.charAt(0)===`/`,s=i.slice(-1)===`/`;return(i=Oe(i.split(`/`).filter(i=>!!i),!o).join(`/`))||o||(i=`.`),i&&s&&(i+=`/`),(o?`/`:``)+i},Qe=i=>{var o=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(i).slice(1);return i=o[0],o=o[1],!i&&!o?`.`:(o&&=o.slice(0,-1),i+o)},Re=i=>i&&i.match(/([^\/]+|\/)\/*$/)[1],Se=(i,o)=>Pe(i+`/`+o),Te=i=>{var o=xd();return i=i(),vd(o),i},Ue=i=>{for(var o=0,s=0;s<i.length;++s){var _=i.charCodeAt(s);_<=127?o++:_<=2047?o+=2:_>=55296&&_<=57343?(o+=4,++s):o+=3}return o},Q=(i,o,s,_)=>{if(!(_>0))return 0;var j=s;_=s+_-1;for(var $=0;$<i.length;++$){var _e=i.codePointAt($);if(_e<=127){if(s>=_)break;o[s++]=_e}else if(_e<=2047){if(s+1>=_)break;o[s++]=192|_e>>6,o[s++]=128|_e&63}else if(_e<=65535){if(s+2>=_)break;o[s++]=224|_e>>12,o[s++]=128|_e>>6&63,o[s++]=128|_e&63}else{if(s+3>=_)break;o[s++]=240|_e>>18,o[s++]=128|_e>>12&63,o[s++]=128|_e>>6&63,o[s++]=128|_e&63,$++}}return o[s]=0,s-j},Ve=i=>{var o=Ue(i)+1,s=wd(o);return Q(i,A,s,o),s},We=()=>i=>(i.set(crypto.getRandomValues(new Uint8Array(i.byteLength))),0),Xe=i=>(Xe=We())(i),Ye=(...i)=>{for(var o=``,s=!1,_=i.length-1;_>=-1&&!s;_--){if(s=_>=0?i[_]:FS.cwd(),typeof s!=`string`)throw TypeError(`Arguments to path.resolve must be strings`);if(!s)return``;o=s+`/`+o,s=s.charAt(0)===`/`}return o=Oe(o.split(`/`).filter(i=>!!i),!s).join(`/`),(s?`/`:``)+o||`.`},Ze=(i,o)=>{function s(i){for(var o=0;o<i.length&&i[o]===``;o++);for(var s=i.length-1;s>=0&&i[s]===``;s--);return o>s?[]:i.slice(o,s-o+1)}i=Ye(i).slice(1),o=Ye(o).slice(1),i=s(i.split(`/`)),o=s(o.split(`/`));for(var _=Math.min(i.length,o.length),j=_,$=0;$<_;$++)if(i[$]!==o[$]){j=$;break}for(_=[],$=j;$<i.length;$++)_.push(`..`);return _=_.concat(o.slice(j)),_.join(`/`)},$e=[],af=i=>{var o=Array(Ue(i)+1);return i=Q(i,o,0,o.length),o.length=i,o},bf=[];function cf(i,o){bf[i]={input:[],output:[],ea:o},FS.registerDevice(i,df)}var df={open(i){var o=bf[i.node.sa];if(!o)throw new FS.h(43);i.D=o,i.seekable=!1},close(i){i.D.ea.ya(i.D)},ya(i){i.D.ea.ya(i.D)},read(i,o,s,_){if(!i.D||!i.D.ea.eb)throw new FS.h(60);for(var j=0,$=0;$<_;$++){try{var _e=i.D.ea.eb(i.D)}catch{throw new FS.h(29)}if(_e===void 0&&j===0)throw new FS.h(6);if(_e==null)break;j++,o[s+$]=_e}return j&&(i.node.$=Date.now()),j},write(i,o,s,_){if(!i.D||!i.D.ea.Qa)throw new FS.h(60);try{for(var j=0;j<_;j++)i.D.ea.Qa(i.D,o[s+j])}catch{throw new FS.h(29)}return _&&(i.node.P=i.node.O=Date.now()),j}},ef={eb(){a:{if(!$e.length){var i=null;if(globalThis.window?.prompt&&(i=window.prompt(`Input: `),i!==null&&(i+=`
2
+ `)),!i){i=null;break a}$e=af(i)}i=$e.shift()}return i},Qa(i,o){o===null||o===10?(la(re(i.output)),i.output=[]):o!=0&&i.output.push(o)},ya(i){i.output?.length>0&&(la(re(i.output)),i.output=[])},Wb(){return{Gc:25856,Ic:5,Fc:191,Hc:35387,Ec:[3,28,127,21,4,0,1,0,17,19,26,0,18,15,23,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]}},Xb(){return 0},Yb(){return[24,80]}},ff={Qa(i,o){o===null||o===10?(w(re(i.output)),i.output=[]):o!=0&&i.output.push(o)},ya(i){i.output?.length>0&&(w(re(i.output)),i.output=[])}},gf=i=>{i=Math.ceil(i/65536)*65536;var o=ed(65536,i);return o&&A.fill(0,o,o+i),o},R={W:null,mount(){return R.createNode(null,`/`,16895,0)},createNode(i,o,s,_){var j;if((j=FS.isBlkdev(s))||(j=(s&61440)==4096),j)throw new FS.h(63);return R.W||={dir:{node:{S:R.m.S,U:R.m.U,ja:R.m.ja,ca:R.m.ca,rename:R.m.rename,unlink:R.m.unlink,rmdir:R.m.rmdir,ta:R.m.ta,symlink:R.m.symlink},stream:{llseek:R.o.llseek}},file:{node:{S:R.m.S,U:R.m.U},stream:{llseek:R.o.llseek,read:R.o.read,write:R.o.write,ka:R.o.ka,ma:R.o.ma}},link:{node:{S:R.m.S,U:R.m.U,readlink:R.m.readlink},stream:{}},Wa:{node:{S:R.m.S,U:R.m.U},stream:FS.Db}},s=FS.createNode(i,o,s,_),FS.isDir(s.mode)?(s.m=R.W.dir.node,s.o=R.W.dir.stream,s.v={}):FS.isFile(s.mode)?(s.m=R.W.file.node,s.o=R.W.file.stream,s.M=0,s.v=R.Ib??=new Uint8Array):FS.isLink(s.mode)?(s.m=R.W.link.node,s.o=R.W.link.stream):FS.isChrdev(s.mode)&&(s.m=R.W.Wa.node,s.o=R.W.Wa.stream),s.$=s.P=s.O=Date.now(),i&&(i.v[o]=s,i.$=i.P=i.O=s.$),s},m:{S(i){var o={};return o.Fb=FS.isChrdev(i.mode)?i.id:1,o.Vb=i.id,o.mode=i.mode,o.bc=1,o.uid=0,o.Rb=0,o.sa=i.sa,o.size=FS.isDir(i.mode)?4096:FS.isFile(i.mode)?i.M:FS.isLink(i.mode)?i.link.length:0,o.$=new Date(i.$),o.P=new Date(i.P),o.O=new Date(i.O),o.Cb=4096,o.Va=Math.ceil(o.size/o.Cb),o},U(i,o){for(var s of[`mode`,`atime`,`mtime`,`ctime`])o[s]!=null&&(i[s]=o[s]);o.size!==void 0&&(o=o.size,i.M!=o&&(s=i.v,i.v=new Uint8Array(o),i.v.set(s.subarray(0,Math.min(o,i.M))),i.M=o))},ja(){throw R.Fa||(R.Fa=new FS.h(44),R.Fa.stack=`<generic error, no stack>`),R.Fa},ca(i,o,s,_){return R.createNode(i,o,s,_)},rename(i,o,s){try{var _=hf(o,s)}catch{}if(_){if(FS.isDir(i.mode))for(var j in _.v)throw new FS.h(55);jf(_)}delete i.parent.v[i.name],o.v[s]=i,i.name=s,o.O=o.P=i.parent.O=i.parent.P=Date.now()},unlink(i,o){delete i.v[o],i.O=i.P=Date.now()},rmdir(i,o){var s=hf(i,o),_;for(_ in s.v)throw new FS.h(55);delete i.v[o],i.O=i.P=Date.now()},ta(i){return[`.`,`..`,...Object.keys(i.v)]},symlink(i,o,s){return i=R.createNode(i,o,41471,0),i.link=s,i},readlink(i){if(!FS.isLink(i.mode))throw new FS.h(28);return i.link}},o:{read(i,o,s,_,j){return j>=i.node.M?0:(_=Math.min(i.node.M-j,_),o.set(i.node.v.subarray(j,j+_),s),_)},write(i,o,s,_,j,$){if(!_)return 0;if(i=i.node,i.P=i.O=Date.now(),$)i.v=o.subarray(s,s+_),i.M=_;else if(i.M===0&&j===0)i.v=o.slice(s,s+_),i.M=_;else{$=j+_;var _e=i.v.length;_e>=$||($=Math.max($,_e*(_e<1048576?2:1.125)>>>0),_e&&($=Math.max($,256)),_e=i.v.subarray(0,i.M),i.v=new Uint8Array($),i.v.set(_e)),i.v.set(o.subarray(s,s+_),j),i.M=Math.max(i.M,j+_)}return _},llseek(i,o,s){if(s===1?o+=i.position:s===2&&FS.isFile(i.node.mode)&&(o+=i.node.M),o<0)throw new FS.h(28);return o},ka(i,o,s,_,j){if(!FS.isFile(i.node.mode))throw new FS.h(43);if(i=i.node.v,j&2||i.buffer!==x.buffer){if(_=!0,j=gf(o),!j)throw new FS.h(48);i&&((s>0||s+o<i.length)&&(i=i.subarray?i.subarray(s,s+o):Array.prototype.slice.call(i,s,s+o)),x.set(i,j))}else _=!1,j=i.byteOffset;return{B:j,fa:_}},ma(i,o,s,_){return R.o.write(i,o,0,_,s,!1),0}}},kf=i=>(typeof i==`string`&&(i=af(i)),i.subarray||(i=new Uint8Array(i)),i),lf=(i,o)=>{var s=0;return i&&(s|=365),o&&(s|=146),s},mf=async(i,o)=>{me!==void 0&&je();for(var s of ge)if(s.canHandle(o))return s.handle(i,o);return i},nf=async(i,o,s,_,j,$,_e,et)=>{var tt=o?Ye(Pe(i+`/`+o)):i,nt=`cp ${tt}`;Td(nt);try{var rt=s;typeof s==`string`&&(rt=await Ne(s)),rt=await mf(rt,tt),et?.(),$||FS.createDataFile(i,o,rt,_,j,_e)}finally{Sd(nt)}};function hf(i,o){var s=FS.isDir(i.mode)?(s=of(i,`x`))?s:i.m.ja?0:2:54;if(s)throw new FS.h(s);for(s=FS.da[pf(i.id,o)];s;s=s.la){var _=s.name;if(s.parent.id===i.id&&_===o)return s}return FS.ja(i,o)}function jf(i){var o=pf(i.parent.id,i.name);if(FS.da[o]===i)FS.da[o]=i.la;else for(o=FS.da[o];o;){if(o.la===i){o.la=i.la;break}o=o.la}}function pf(i,o){for(var s=0,_=0;_<o.length;_++)s=(s<<5)-s+o.charCodeAt(_)|0;return(i+s>>>0)%FS.da.length}function qf(i){var o=pf(i.parent.id,i.name);i.la=FS.da[o],FS.da[o]=i}function of(i,o){return FS.fb?0:o.includes(`r`)&&!(i.mode&292)||o.includes(`w`)&&!(i.mode&146)||o.includes(`x`)&&!(i.mode&73)?2:0}function rf(i,o){if(!FS.isDir(i.mode))return 54;try{return hf(i,o),20}catch{}return of(i,`wx`)}function sf(i,o,s){try{var _=hf(i,o)}catch(i){return i.C}if(i=of(i,`wx`))return i;if(s){if(!FS.isDir(_.mode))return 54;if(FS.oa(_)||FS.getPath(_)===FS.cwd())return 10}else if(FS.isDir(_.mode))return 31;return 0}function tf(i,o){if(!i)throw new FS.h(o);return i}function S(i){if(i=FS.cb(i),!i)throw new FS.h(8);return i}function uf(i,o=-1){if(i=Object.assign(new FS.yb,i),o==-1)a:{for(o=0;o<=FS.zb;o++)if(!FS.streams[o])break a;throw new FS.h(33)}return i.aa=o,FS.streams[o]=i}function vf(i,o=-1){return i=uf(i,o),i.o?.Kc?.(i),i}function wf(i,o,s){var _=i?.o.U;i=_?i:o,_??=o.m.U,tf(_,63);try{_(i,s)}catch(i){throw i instanceof RangeError?new FS.h(22):i}}function xf(i){var o=[];for(i=[i];i.length;){var s=i.pop();o.push(s),i.push(...s.pa)}return o}function yf(i){var o={Dc:4096,Nc:4096,Va:1e6,Cc:5e5,Bc:5e5,files:FS.Pa,Lc:FS.Pa-1,Oc:42,flags:2,Rc:255};return i.m.qb&&Object.assign(o,i.m.qb(i.mount.dc.root)),o}function zf(i,o,s,_){wf(i,o,{mode:s&4095|o.mode&-4096,O:Date.now(),$a:_})}function Af(i,o,s){if(FS.isDir(o.mode))throw new FS.h(31);if(!FS.isFile(o.mode))throw new FS.h(28);var _=of(o,`w`);if(_)throw new FS.h(_);wf(i,o,{size:s,timestamp:Date.now()})}function Bf(i,o,s,_){return i=typeof i==`string`?i:FS.getPath(i),o=Pe(i+`/`+o),FS.create(o,lf(s,_))}function Cf(i){if(!(i.Zb||i.$b||i.link||i.v)){if(globalThis.XMLHttpRequest)I(`Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.`);else try{i.v=ja(i.url)}catch{throw new FS.h(29)}}}var FS={root:null,pa:[],Za:{},streams:[],Pa:1,da:null,Xa:`/`,Ia:!1,fb:!0,Lb:null,Da:0,h:class{name=`ErrnoError`;constructor(i){this.C=i}},yb:class{shared={};node=null;get object(){return this.node}set object(i){this.node=i}get flags(){return this.shared.flags}set flags(i){this.shared.flags=i}get position(){return this.shared.position}set position(i){this.shared.position=i}},xb:class{m={};o={};T=null;constructor(i,o,s,_){i||=this,this.parent=i,this.mount=i.mount,this.id=FS.Pa++,this.name=o,this.mode=s,this.sa=_,this.$=this.P=this.O=Date.now()}get read(){return(this.mode&365)==365}set read(i){i?this.mode|=365:this.mode&=-366}get write(){return(this.mode&146)==146}set write(i){i?this.mode|=146:this.mode&=-147}get $b(){return FS.isDir(this.mode)}get Zb(){return FS.isChrdev(this.mode)}},lookupPath(i,o={}){if(!i)throw new FS.h(44);o.xa??=!0,i.charAt(0)===`/`||(i=FS.cwd()+`/`+i);var s=0;a:for(;s<40;s++){i=i.split(`/`).filter(i=>!!i);for(var _=FS.root,j=`/`,$=0;$<i.length;$++){var _e=$===i.length-1;if(_e&&o.parent)break;if(i[$]!==`.`){if(i[$]===`..`){if(j=Qe(j),FS.oa(_)){i=j+`/`+i.slice($+1).join(`/`),s--;continue a}_=_.parent}else{j=Pe(j+`/`+i[$]);try{_=hf(_,i[$])}catch(i){if(i?.C===44&&_e&&o.cc)return{path:j};throw i}if(!_.T||_e&&!o.xa||(_=_.T.root),FS.isLink(_.mode)&&(!_e||o.follow)){if(!_.m.readlink)throw new FS.h(52);_=_.m.readlink(_),_.charAt(0)===`/`||(_=Qe(j)+`/`+_),i=_+`/`+i.slice($+1).join(`/`);continue a}}}}return{path:j,node:_}}throw new FS.h(32)},getPath(i){for(var o;;){if(FS.oa(i))return i=i.mount.jb,o?i[i.length-1]===`/`?i+o:`${i}/${o}`:i;o=o?`${i.name}/${o}`:i.name,i=i.parent}},createNode(i,o,s,_){return i=new FS.xb(i,o,s,_),qf(i),i},oa(i){return i===i.parent},isFile(i){return(i&61440)==32768},isDir(i){return(i&61440)==16384},isLink(i){return(i&61440)==40960},isChrdev(i){return(i&61440)==8192},isBlkdev(i){return(i&61440)==24576},isSocket(i){return(i&49152)==49152},zb:4096,cb:i=>FS.streams[i],Db:{open(i){i.o=FS.Nb(i.node.sa).o,i.o.open?.(i)},llseek(){throw new FS.h(70)}},Ma:i=>i>>8,Pc:i=>i&255,makedev:(i,o)=>i<<8|o,registerDevice(i,o){FS.Za[i]={o}},Nb:i=>FS.Za[i],syncfs(i,o){function s(i){return FS.Da--,o(i)}function _(i){if(i){if(!_.Jb)return _.Jb=!0,s(i)}else++$>=j.length&&s(null)}typeof i==`function`&&(o=i,i=!1),FS.Da++,FS.Da>1&&w(`warning: ${FS.Da} FS.syncfs operations in flight at once, probably just doing extra work`);var j=xf(FS.root.mount),$=0,_e;for(_e of j)_e.type.syncfs?_e.type.syncfs(_e,i,_):_(null)},mount(i,o,s){var _=s===`/`;if(_&&FS.root)throw new FS.h(10);if(!_&&s){var j=FS.lookupPath(s,{xa:!1});if(s=j.path,j=j.node,j.T)throw new FS.h(10);if(!FS.isDir(j.mode))throw new FS.h(54)}return o={type:i,dc:o,jb:s,pa:[]},i=i.mount(o),i.mount=o,o.root=i,_?FS.root=i:j&&(j.T=o,j.mount&&j.mount.pa.push(o)),i},unmount(i){if(i=FS.lookupPath(i,{xa:!1}),!i.node.T)throw new FS.h(28);i=i.node;var o=i.T,s=xf(o);for([,j]of Object.entries(FS.da))for(;j;){var _=j.la;s.includes(j.mount)&&jf(j);var j=_}i.T=null,i.mount.pa.splice(i.mount.pa.indexOf(o),1)},ja(i,o){return i.m.ja(i,o)},ca(i,o,s){var _=FS.lookupPath(i,{parent:!0}).node;if(i=Re(i),!i)throw new FS.h(28);if(i===`.`||i===`..`)throw new FS.h(20);var j=rf(_,i);if(j)throw new FS.h(j);if(!_.m.ca)throw new FS.h(63);return _.m.ca(_,i,o,s)},qb(i){return yf(FS.lookupPath(i,{follow:!0}).node)},Tc(i){return yf(i.node)},create(i,o=438){return FS.ca(i,o&4095|32768,0)},mkdir(i,o=511){return FS.ca(i,o&1023|16384,0)},Qc(i,o){var s=i.split(`/`),_=``,j;for(j of s)if(j){(_||i.charAt(0)===`/`)&&(_+=`/`),_+=j;try{FS.mkdir(_,o)}catch(i){if(i.C!=20)throw i}}},mkdev(i,o,s){return s===void 0&&(s=o,o=438),FS.ca(i,o|8192,s)},symlink(i,o){if(!Ye(i))throw new FS.h(44);var s=FS.lookupPath(o,{parent:!0}).node;if(!s)throw new FS.h(44);o=Re(o);var _=rf(s,o);if(_)throw new FS.h(_);if(!s.m.symlink)throw new FS.h(63);return s.m.symlink(s,o,i)},rename(i,o){var s=Qe(i),_=Qe(o),j=Re(i),$=Re(o),_e=FS.lookupPath(i,{parent:!0}),et=_e.node;if(_e=FS.lookupPath(o,{parent:!0}),_e=_e.node,!et||!_e)throw new FS.h(44);if(et.mount!==_e.mount)throw new FS.h(75);var tt=hf(et,j);if(i=Ze(i,_),i.charAt(0)!==`.`)throw new FS.h(28);if(i=Ze(o,s),i.charAt(0)!==`.`)throw new FS.h(55);try{var nt=hf(_e,$)}catch{}if(tt!==nt){if(o=FS.isDir(tt.mode),(j=sf(et,j,o))||(j=nt?sf(_e,$,o):rf(_e,$)))throw new FS.h(j);if(!et.m.rename)throw new FS.h(63);if(tt.T||nt&&nt.T)throw new FS.h(10);if(_e!==et&&(j=of(et,`w`)))throw new FS.h(j);jf(tt);try{et.m.rename(tt,_e,$),tt.parent=_e}catch(i){throw i}finally{qf(tt)}}},rmdir(i){var o=FS.lookupPath(i,{parent:!0}).node;i=Re(i);var s=hf(o,i),_=sf(o,i,!0);if(_)throw new FS.h(_);if(!o.m.rmdir)throw new FS.h(63);if(s.T)throw new FS.h(10);o.m.rmdir(o,i),jf(s)},ta(i){return i=FS.lookupPath(i,{follow:!0}).node,tf(i.m.ta,54)(i)},unlink(i){var o=FS.lookupPath(i,{parent:!0}).node;if(!o)throw new FS.h(44);i=Re(i);var s=hf(o,i),_=sf(o,i,!1);if(_)throw new FS.h(_);if(!o.m.unlink)throw new FS.h(63);if(s.T)throw new FS.h(10);o.m.unlink(o,i),jf(s)},readlink(i){if(i=FS.lookupPath(i).node,!i)throw new FS.h(44);if(!i.m.readlink)throw new FS.h(28);return i.m.readlink(i)},stat(i,o){return i=FS.lookupPath(i,{follow:!o}).node,tf(i.m.S,63)(i)},lstat(i){return FS.stat(i,!0)},chmod(i,o,s){i=typeof i==`string`?FS.lookupPath(i,{follow:!s}).node:i,zf(null,i,o,s)},lchmod(i,o){FS.chmod(i,o,!0)},fchmod(i,o){i=S(i),zf(i,i.node,o,!1)},chown(i,o,s,_){i=typeof i==`string`?FS.lookupPath(i,{follow:!_}).node:i,wf(null,i,{timestamp:Date.now(),$a:_})},lchown(i,o,s){FS.chown(i,o,s,!0)},fchown(i){i=S(i),wf(i,i.node,{timestamp:Date.now(),$a:!1})},truncate(i,o){if(o<0)throw new FS.h(28);i=typeof i==`string`?FS.lookupPath(i,{follow:!0}).node:i,Af(null,i,o)},ftruncate(i,o){if(i=S(i),o<0||!(i.flags&2097155))throw new FS.h(28);Af(i,i.node,o)},utime(i,o,s){i=FS.lookupPath(i,{follow:!0}).node,tf(i.m.U,63)(i,{$:o,P:s})},open(i,o,s=438){if(i===``)throw new FS.h(44);if(typeof o==`string`){var _={r:0,"r+":2,w:577,"w+":578,a:1089,"a+":1090}[o];if(_===void 0)throw Error(`Unknown file open mode: ${o}`);o=_}if(s=o&64?s&4095|32768:0,typeof i==`object`)_=i;else{var j=i.endsWith(`/`),$=FS.lookupPath(i,{follow:!(o&131072),cc:!0});_=$.node,i=$.path}if($=!1,o&64){if(_){if(o&128)throw new FS.h(20)}else{if(j)throw new FS.h(31);_=FS.ca(i,s|511,0),$=!0}}if(!_)throw new FS.h(44);if(FS.isChrdev(_.mode)&&(o&=-513),o&65536&&!FS.isDir(_.mode))throw new FS.h(54);if(!$){if(j=_,i=o,j){if(FS.isLink(j.mode))j=32;else{var _e=[`r`,`w`,`rw`][i&3];i&512&&(_e+=`w`),j=FS.isDir(j.mode)&&(_e!==`r`||i&576)?31:of(j,_e)}}else j=44;if(j)throw new FS.h(j)}return o&512&&!$&&FS.truncate(_,0),o&=-131713,o=uf({node:_,path:FS.getPath(_),flags:o,seekable:!0,position:0,o:_.o,xc:[],error:!1}),o.o.open&&o.o.open(o),$&&FS.chmod(_,s&511),o},close(i){if(i.aa===null)throw new FS.h(8);i.Ga&&=null;try{i.o.close&&i.o.close(i)}catch(i){throw i}finally{FS.streams[i.aa]=null}i.aa=null},llseek(i,o,s){if(i.aa===null)throw new FS.h(8);if(!i.seekable||!i.o.llseek)throw new FS.h(70);if(s!=0&&s!=1&&s!=2)throw new FS.h(28);return i.position=i.o.llseek(i,o,s),i.xc=[],i.position},read(i,o,s,_,j){if(_<0||j<0)throw new FS.h(28);if(i.aa===null||(i.flags&2097155)==1)throw new FS.h(8);if(FS.isDir(i.node.mode))throw new FS.h(31);if(!i.o.read)throw new FS.h(28);var $=j!==void 0;if(!$)j=i.position;else if(!i.seekable)throw new FS.h(70);return o=i.o.read(i,o,s,_,j),$||(i.position+=o),o},write(i,o,s,_,j,$){if(_<0||j<0)throw new FS.h(28);if(i.aa===null||!(i.flags&2097155))throw new FS.h(8);if(FS.isDir(i.node.mode))throw new FS.h(31);if(!i.o.write)throw new FS.h(28);i.seekable&&i.flags&1024&&FS.llseek(i,0,2);var _e=j!==void 0;if(!_e)j=i.position;else if(!i.seekable)throw new FS.h(70);return o=i.o.write(i,o,s,_,j,$),_e||(i.position+=o),o},ka(i,o,s,_,j){if(_&2&&!(j&2)&&(i.flags&2097155)!=2||(i.flags&2097155)==1)throw new FS.h(2);if(!i.o.ka)throw new FS.h(43);if(!o)throw new FS.h(28);return i.o.ka(i,o,s,_,j)},ma(i,o,s,_,j){return i.o.ma?i.o.ma(i,o,s,_,j):0},Ja(i,o,s){if(!i.o.Ja)throw new FS.h(59);return i.o.Ja(i,o,s)},readFile(i,o={}){o.flags=o.flags??0,o.encoding=o.encoding??`binary`,o.encoding!==`utf8`&&o.encoding!==`binary`&&I(`Invalid encoding type "${o.encoding}"`);var s=FS.open(i,o.flags);i=FS.stat(i).size;var _=new Uint8Array(i);return FS.read(s,_,0,i,0),o.encoding===`utf8`&&(_=re(_)),FS.close(s),_},writeFile(i,o,s={}){s.flags=s.flags??577,i=FS.open(i,s.flags,s.mode),o=kf(o),FS.write(i,o,0,o.byteLength,void 0,s.Jc),FS.close(i)},cwd:()=>FS.Xa,chdir(i){if(i=FS.lookupPath(i,{follow:!0}),i.node===null)throw new FS.h(44);if(!FS.isDir(i.node.mode))throw new FS.h(54);var o=of(i.node,`x`);if(o)throw new FS.h(o);FS.Xa=i.path},init(i,o,s){FS.Ia=!0,i??=n.stdin,o??=n.stdout,s??=n.stderr,i?FS.createDevice(`/dev`,`stdin`,i):FS.symlink(`/dev/tty`,`/dev/stdin`),o?FS.createDevice(`/dev`,`stdout`,null,o):FS.symlink(`/dev/tty`,`/dev/stdout`),s?FS.createDevice(`/dev`,`stderr`,null,s):FS.symlink(`/dev/tty1`,`/dev/stderr`),FS.open(`/dev/stdin`,0),FS.open(`/dev/stdout`,1),FS.open(`/dev/stderr`,1)},Mc(i,o){return i=FS.analyzePath(i,o),i.ab?i.object:null},analyzePath(i,o){try{var s=FS.lookupPath(i,{follow:!o});i=s.path}catch{}var _={oa:!1,ab:!1,error:0,name:null,path:null,object:null,ec:!1,jc:null,hc:null};try{s=FS.lookupPath(i,{parent:!0}),_.ec=!0,_.jc=s.path,_.hc=s.node,_.name=Re(i),s=FS.lookupPath(i,{follow:!o}),_.ab=!0,_.path=s.path,_.object=s.node,_.name=s.node.name,_.oa=s.path===`/`}catch(i){_.error=i.C}return _},createPath(i,o){for(i=typeof i==`string`?i:FS.getPath(i),o=o.split(`/`).reverse();o.length;){var s=o.pop();if(s){var _=Pe(i+`/`+s);try{FS.mkdir(_)}catch(i){if(i.C!=20)throw i}i=_}}return _},createDataFile(i,o,s,_,j,$){var _e=o;i&&(i=typeof i==`string`?i:FS.getPath(i),_e=o?Pe(i+`/`+o):i),i=lf(_,j),_e=FS.create(_e,i),s&&(s=kf(s),FS.chmod(_e,i|146),o=FS.open(_e,577),FS.write(o,s,0,s.length,0,$),FS.close(o),FS.chmod(_e,i))},createDevice(i,o,s,_){i=Se(typeof i==`string`?i:FS.getPath(i),o),o=lf(!!s,!!_);var j;return(j=FS.createDevice).Ma??(j.Ma=64),j=FS.makedev(FS.createDevice.Ma++,0),FS.registerDevice(j,{open(i){i.seekable=!1},close(){_?.buffer?.length&&_(10)},read(i,o,_,j){for(var $=0,_e=0;_e<j;_e++){try{var et=s()}catch{throw new FS.h(29)}if(et===void 0&&$===0)throw new FS.h(6);if(et==null)break;$++,o[_+_e]=et}return $&&(i.node.$=Date.now()),$},write(i,o,s,j){for(var $=0;$<j;$++)try{_(o[s+$])}catch{throw new FS.h(29)}return j&&(i.node.P=i.node.O=Date.now()),$}}),FS.mkdev(i,o,j)},createLazyFile(i,o,s,_,j){function $(i,o,s,_,j){if(i=i.node.v,j>=i.length)return 0;if(_=Math.min(i.length-j,_),i.slice)for(var $=0;$<_;$++)o[s+$]=i[j+$];else for($=0;$<_;$++)o[s+$]=i.get(j+$);return _}class _e{Ha=!1;ia=[];na=void 0;ib=0;hb=0;get(i){if(!(i>this.length-1||i<0)){var o=i%this.tb;return this.na(i/this.tb|0)[o]}}yc(i){this.na=i}kb(){var i=new XMLHttpRequest;i.open(`HEAD`,s,!1),i.send(null),i.status>=200&&i.status<300||i.status===304||I(`Couldn't load `+s+`. Status: `+i.status);var o=Number(i.getResponseHeader(`Content-length`)),_,j=(_=i.getResponseHeader(`Accept-Ranges`))&&_===`bytes`;i=(_=i.getResponseHeader(`Content-Encoding`))&&_===`gzip`;var $=1048576;j||($=o);var _e=this;_e.yc(i=>{var _=i*$,j=(i+1)*$-1;if(j=Math.min(j,o-1),_e.ia[i]===void 0){var et=_e.ia;_>j&&I(`invalid range (${_}, ${j}) or no bytes requested!`),j>o-1&&I(`only ${o} bytes available! programmer error!`);var tt=new XMLHttpRequest;tt.open(`GET`,s,!1),o!==$&&tt.setRequestHeader(`Range`,`bytes=`+_+`-`+j),tt.responseType=`arraybuffer`,tt.overrideMimeType&&tt.overrideMimeType(`text/plain; charset=x-user-defined`),tt.send(null),tt.status>=200&&tt.status<300||tt.status===304||I(`Couldn't load `+s+`. Status: `+tt.status),_=tt.response===void 0?af(tt.responseText??``):new Uint8Array(tt.response||[]),et[i]=_}return _e.ia[i]===void 0&&I(`doXHR failed!`),_e.ia[i]}),(i||!o)&&($=o=1,$=o=this.na(0).length,la(`LazyFiles on gzip forces download of the whole file when length is accessed`)),this.ib=o,this.hb=$,this.Ha=!0}get length(){return this.Ha||this.kb(),this.ib}get tb(){return this.Ha||this.kb(),this.hb}}if(globalThis.XMLHttpRequest){ba||I(`Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc`);var et=new _e,tt=void 0}else tt=s,et=void 0;var nt=Bf(i,o,_,j);et?nt.v=et:tt&&(nt.v=null,nt.url=tt),Object.defineProperties(nt,{M:{get:function(){return this.v.length}}}),i={};for(let[o,s]of Object.entries(nt.o))i[o]=(...i)=>(Cf(nt),s(...i));return i.read=(i,o,s,_,j)=>(Cf(nt),$(i,o,s,_,j)),i.ka=(i,o,s)=>{Cf(nt);var _=gf(o);if(!_)throw new FS.h(48);return $(i,x,_,o,s),{B:_,fa:!0}},nt.o=i,nt}},Ke=(i,o)=>{if(Ja){if(i.charAt(0)===`/`)try{return FS.lookupPath(i),i}catch{return}var s=(o?.kc||[]).map(i=>{var s=o?.fc;return i.startsWith(`$ORIGIN`)?i.replace(`$ORIGIN`,Qe(s)):i});return Te(()=>{var o=wd(512),_=Ve(s.join(`:`)),j=Ve(i);return(o=md(o,_,j,512))?P(o):void 0})}};function Le(i,o={global:!0,qa:!0},s,_){function j(){var s=ta[i];if(s)return o.J?Promise.resolve(s):s;if(_){s=G[_+28>>2];var j=G[_+32>>2];if(s&&j)return s=x.slice(s,s+j),o.J?Promise.resolve(s):s}if(s=Ke(i,o.Sa))return s=FS.readFile(s,{encoding:`binary`}),o.J?Promise.resolve(s):s;if(s=ha(i),o.J)return Ne(s);if(!ja)throw Error(`${s}: file not found, and synchronous loading of external files is not available`);return ja(s)}function $(){var $=he[i];return $?o.J?Promise.resolve($):$:o.J?j().then(j=>Me(j,o,i,s,_)):Me(j(),o,i,s,_)}function _e(i){et.global?Xc(i):s&&Object.assign(s,i),et.exports=i}var et=se[i];return et?(o.global?et.global||(et.global=!0,Xc(et.exports)):s&&Object.assign(s,et.exports),o.qa&&et.Ba!==1/0&&(et.Ba=1/0),et.Ba++,_&&(te[_]=et),!o.J||Promise.resolve(!0)):(et=Dd(i,_,`loading`),et.Ba=o.qa?1/0:1,et.global=o.global,o.J?$().then(i=>(_e(i),!0)):(_e($()),!0))}var Je=()=>{var i,o;for([i,o]of Object.entries(ne))if(o.value==-1){var s=He(i).Ta;if(s||o.required){if(typeof s==`function`)o.value=De(s,s.g);else if(typeof s==`number`)o.value=s;else if(typeof s.value==`number`)o.value=s;else throw Error(`bad export type for '${i}': ${typeof s} (${s})`)}else o.value=0}},Ed=async()=>{if(ma.length){Td(`loadDylibs`);for(var i of ma)await Le(i,{J:!0,global:!0,qa:!0,Ab:!0});Je(),Sd(`loadDylibs`)}else Je()},de=!1,Zc=(i,o,s)=>{function _(){var _=i();if(_){var j={};s.sb.forEach(i=>j[i]=o[i]),Cd(Ee(j,_),!0)}}Yd.push(_),Ja&&_()},xa,$a=(i,o,s,_)=>I(`Assertion failed: ${P(i)}, at: `+[o?P(o):`unknown filename`,s,_?P(_):`unknown function`]);$a.g=`vppip`;var ab=(i,o)=>M.get(i)(o);ab.g=`vpi`;function bb(...i){return J.__lsan_ignore_object(...i)}bb.Ca=!0;function Df(i,o,s,_){return r?O(2,1,i,o,s,_):cb(i,o,s,_)}var cb=(i,o,s,_)=>{if(!globalThis.SharedArrayBuffer)return 6;var j=[];return r&&j.length===0?Df(i,o,s,_):(i={uc:s,X:i,Ea:_,wc:j},r?(i.V=5,postMessage(i,j),0):Wd(i))};cb.g=`ipppp`;var Ef=18;function Ff(i,o,s){if(o.charAt(0)===`/`)return o;if(i=i===-100?FS.cwd():S(i).path,o.length==0){if(!s)throw new FS.h(44);return i}return i+`/`+o}function Gf(i,o){G[i>>2]=o.Fb,G[i+4>>2]=o.mode,G[i+8>>2]=o.bc,G[i+12>>2]=o.uid,G[i+16>>2]=o.Rb,G[i+20>>2]=o.sa,H[i+24>>3]=BigInt(o.size),F[i+32>>2]=4096,F[i+36>>2]=o.Va;var s=o.$.getTime(),_=o.P.getTime(),j=o.O.getTime();return H[i+40>>3]=BigInt(Math.floor(s/1e3)),G[i+48>>2]=s%1e3*1e3*1e3,H[i+56>>3]=BigInt(Math.floor(_/1e3)),G[i+64>>2]=_%1e3*1e3*1e3,H[i+72>>3]=BigInt(Math.floor(j/1e3)),G[i+80>>2]=j%1e3*1e3*1e3,H[i+88>>3]=BigInt(o.Vb),0}var Hf=void 0;function db(i){if(r)return O(3,1,i);try{return vf(S(i)).aa}catch(i){if(FS===void 0||i.name!==`ErrnoError`)throw i;return-i.C}}db.g=`ii`;function eb(i,o,s,_){if(r)return O(4,1,i,o,s,_);try{if(o=P(o),o=Ff(i,o),s&-8)return-28;var j=FS.lookupPath(o,{follow:!0}).node;return j?(i=``,s&4&&(i+=`r`),s&2&&(i+=`w`),s&1&&(i+=`x`),i&&of(j,i)?-2:0):-44}catch(i){if(FS===void 0||i.name!==`ErrnoError`)throw i;return-i.C}}eb.g=`iipii`;var If=()=>{var i=F[Hf>>2];return Hf+=4,i};function fb(i,o,s){if(r)return O(5,1,i,o,s);Hf=s;try{var _=S(i);switch(o){case 0:var j=If();if(j<0)break;for(;FS.streams[j];)j++;return vf(_,j).aa;case 1:case 2:return 0;case 3:return _.flags;case 4:return j=If(),_.flags=_.flags&-289793|j&289792,0;case 12:return j=If(),y[j+0>>1]=2,0;case 13:case 14:return 0}return-28}catch(i){if(FS===void 0||i.name!==`ErrnoError`)throw i;return-i.C}}fb.g=`iiip`;function gb(i,o){if(r)return O(6,1,i,o);try{var s=S(i),_=s.node,j=s.o.S;return i=j?s:_,j??=_.m.S,tf(j,63),Gf(o,j(i))}catch(i){if(FS===void 0||i.name!==`ErrnoError`)throw i;return-i.C}}gb.g=`iip`;function hb(i,o){if(r)return O(7,1,i,o);o=o<-9007199254740992||o>9007199254740992?NaN:Number(o);try{return isNaN(o)?-22:(FS.ftruncate(i,o),0)}catch(i){if(FS===void 0||i.name!==`ErrnoError`)throw i;return-i.C}}hb.g=`iij`;function ib(i,o){if(r)return O(8,1,i,o);try{if(o===0)return-28;var s=FS.cwd(),_=Ue(s)+1;return o<_?-68:(Q(s,A,i,o),_)}catch(i){if(FS===void 0||i.name!==`ErrnoError`)throw i;return-i.C}}ib.g=`ipp`;function jb(i,o,s){if(r)return O(9,1,i,o,s);Hf=s;try{var _=S(i);switch(o){case 21509:return _.D?0:-59;case 21505:if(!_.D)return-59;if(_.D.ea.Wb){i=[3,28,127,21,4,0,1,0,17,19,26,0,18,15,23,22,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var j=If();F[j>>2]=25856,F[j+4>>2]=5,F[j+8>>2]=191,F[j+12>>2]=35387;for(var $=0;$<32;$++)x[j+$+17]=i[$]||0}return 0;case 21510:case 21511:case 21512:return _.D?0:-59;case 21506:case 21507:case 21508:if(!_.D)return-59;if(_.D.ea.Xb)for(j=If(),i=[],$=0;$<32;$++)i.push(x[j+$+17]);return 0;case 21519:return _.D?(j=If(),F[j>>2]=0):-59;case 21520:return _.D?-28:-59;case 21537:case 21531:return j=If(),FS.Ja(_,o,j);case 21523:return _.D?(_.D.ea.Yb&&($=[24,80],j=If(),y[j>>1]=$[0],y[j+2>>1]=$[1]),0):-59;case 21524:return _.D?0:-59;case 21515:return _.D?0:-59;default:return-28}}catch(i){if(FS===void 0||i.name!==`ErrnoError`)throw i;return-i.C}}jb.g=`iiip`;function kb(i,o){if(r)return O(10,1,i,o);try{return i=P(i),Gf(o,FS.lstat(i))}catch(i){if(FS===void 0||i.name!==`ErrnoError`)throw i;return-i.C}}kb.g=`ipp`;function lb(i,o,s,_){if(r)return O(11,1,i,o,s,_);try{o=P(o);var j=_&256;return o=Ff(i,o,_&4096),Gf(s,j?FS.lstat(o):FS.stat(o))}catch(i){if(FS===void 0||i.name!==`ErrnoError`)throw i;return-i.C}}lb.g=`iippi`;function mb(i,o,s,_){if(r)return O(12,1,i,o,s,_);Hf=_;try{o=P(o),o=Ff(i,o);var j=_?If():0;return s&64&&(j&=~Ef),FS.open(o,s,j).aa}catch(i){if(FS===void 0||i.name!==`ErrnoError`)throw i;return-i.C}}mb.g=`iipip`;function nb(i,o,s){if(r)return O(13,2,i,o,s);try{let lt=ce;var _,j=new Promise(i=>{_=i}),$=[],_e=!1;function et(i){_e||(_e=!0,$.forEach(i=>i()),_(i))}function tt(i,o){return i=>{_e||(i&=y[o+4>>1]|24,y[o+6>>1]=i,et(1))}}if(lt&&s>0){var nt=setTimeout(()=>{et(0)},s);$.push(()=>clearTimeout(nt))}for(var rt=0,it=0;it<o;it++){var at=i+8*it,ot=y[at+4>>1],st=32,ct=FS.cb(F[at>>2]);ct&&(st=ct.o.lb?lt&&s?ct.o.lb(ct,s,tt(ct,at)):ct.o.lb(ct,-1):5),(st&=ot|24)&&rt++,y[at+6>>1]=st}return lt?(!rt&&s||et(rt),j):rt}catch(i){if(FS===void 0||i.name!==`ErrnoError`)throw i;return-i.C}}nb.g=`ipii`;function ob(i){if(r)return O(14,1,i);try{return i=P(i),FS.rmdir(i),0}catch(i){if(FS===void 0||i.name!==`ErrnoError`)throw i;return-i.C}}ob.g=`ip`;function pb(i,o){if(r)return O(15,1,i,o);try{return i=P(i),Gf(o,FS.stat(i))}catch(i){if(FS===void 0||i.name!==`ErrnoError`)throw i;return-i.C}}pb.g=`ipp`;function qb(i,o,s){if(r)return O(16,1,i,o,s);try{if(o=P(o),o=Ff(i,o),s){if(s===512)FS.rmdir(o);else return-28}else FS.unlink(o);return 0}catch(i){if(FS===void 0||i.name!==`ErrnoError`)throw i;return-i.C}}qb.g=`iipi`;var rb=i=>{i=new WebAssembly.Exception(Ad,[i],{traceStack:!0});var o=i.getArg(Ad,0),s=yd(o);o=xd();var _=wd(4),j=wd(4);if(zd(s,_,j),s=G[_>>2],j=G[j>>2],_=P(s),L(s),j){var $=P(j);L(j)}throw vd(o),i.message=[_,$],i},sb=()=>I(``);sb.g=`v`;var Jf=i=>{var o=xd();i=Ve(i),gd(i,0),vd(o)},Kf=(i,o)=>{var s=P(i+36),_=F[i+4>>2];s=Pe(s);var j=!!(_&256),$=j?null:{};if(_={global:j,qa:!!(_&4096),J:o.J},o.J)return Le(s,_,$,i);try{return Le(s,_,$,i)}catch(i){return Jf(`could not load dynamic lib: ${s}\n${i}`),0}},tb=i=>Kf(i,{J:!1});tb.g=`pp`;var ub=(i,o)=>(i=te[i].exports,o=Object.keys(i)[o],o=i[o],De(o,o.g));ub.g=`ppi`;var xb=(i,o,s)=>{o=P(o);var _=te[i];return i=Object.keys(_.exports).indexOf(o),i==-1||_.exports[o].Ca?(Jf(`Tried to lookup unknown symbol "${o}" in dynamic lib: ${_.name}`),0):(o=_.exports[o],typeof o==`function`&&((_=ye(o))?o=_:(o=De(o,o.g),G[s>>2]=i)),o)};xb.g=`pppp`;var Lf={},Mf=i=>{for(;i.length;){var o=i.pop();i.pop()(o)}};function Nf(i){return this.A(G[i>>2])}var Of={},Pf={},Qf={},Rf=class extends Error{constructor(i){super(i),this.name=`InternalError`}},U=(i,o,s)=>{function _(o){if(o=s(o),o.length!==i.length)throw new Rf(`Mismatched type converter count`);for(var _=0;_<i.length;++_)T(i[_],o[_])}i.forEach(i=>Qf[i]=o);var j=Array(o.length),$=[],_e=0;for(let[i,s]of o.entries())Pf.hasOwnProperty(s)?j[i]=Pf[s]:($.push(s),Of.hasOwnProperty(s)||(Of[s]=[]),Of[s].push(()=>{j[i]=Pf[s],++_e,_e===$.length&&_(j)}));$.length===0&&_(j)},yb=i=>{var o=Lf[i];delete Lf[i];var s=o.Ra,_=o.Y,j=o.bb,$=j.map(i=>i.Qb).concat(j.map(i=>i.qc));U([i],$,i=>{var $={},_e,et;for([_e,et]of j.entries()){let o=i[_e],s=et.na,_=et.Pb,tt=i[_e+j.length],nt=et.oc,rt=et.rc;$[et.Kb]={read:i=>o.A(s(_,i)),write:(i,o)=>{var s=[];nt(rt,i,tt.G(s,o)),Mf(s)},optional:o.optional}}return[{name:o.name,A:i=>{var o={},s;for(s in $)o[s]=$[s].read(i);return _(i),o},G:(i,o)=>{for(var j in $)if(!(j in o||$[j].optional))throw TypeError(`Missing field: "${j}"`);var _e=s();for(j in $)$[j].write(_e,o[j]);return i!==null&&i.push(_,_e),_e},L:Nf,I:_}]})};yb.g=`vp`;var V=i=>{for(var o=``;;){var s=A[i++];if(!s)return o;o+=String.fromCharCode(s)}},W=class extends Error{constructor(i){super(i),this.name=`BindingError`}},Sf=i=>{throw new W(i)};function Tf(i,o,s={}){var _=o.name;if(!i)throw new W(`type "${_}" must have a positive integer typeid pointer`);if(Pf.hasOwnProperty(i)){if(s.Ub)return;throw new W(`Cannot register type '${_}' twice`)}Pf[i]=o,delete Qf[i],Of.hasOwnProperty(i)&&(o=Of[i],delete Of[i],o.forEach(i=>i()))}function T(i,o,s={}){return Tf(i,o,s)}var zb=(i,o,s,_,j)=>{if(o=V(o),_)a:switch(s){case 4:_=La;break a;case 8:_=Ma;break a;default:throw TypeError(`invalid float width (${s}): ${o}`)}else a:switch(s){case 1:_=j?x:A;break a;case 2:_=j?y:E;break a;case 4:_=j?F:G;break a;case 8:_=j?H:Na;break a;default:throw TypeError(`invalid integer width (${s}): ${o}`)}var $=_,_e=Math.log2(s);T(i,{name:o,A:i=>{var o=i+Math.max(4,s)>>_e;return o=Array.from($.subarray(o,o+G[i>>2])),L(i),o},G:(i,_)=>{if(typeof _==`number`&&(_=[_]),!Array.isArray(_))throw new W(`Cannot pass non-array to C++ vector type ${o}`);_=Array.prototype.concat.apply([],_);var j=_.length,et=Math.max(4,s),tt=ad(et+j*s);return et=tt+et>>_e,G[tt>>2]=j,$.set(_,et),i!==null&&i.push(L,tt),tt},L:Nf,I(i){L(i)}})};zb.g=`vpppii`;var Uf=(i,o,s)=>{switch(o){case 1:return s?i=>x[i]:i=>A[i];case 2:return s?i=>y[i>>1]:i=>E[i>>1];case 4:return s?i=>F[i>>2]:i=>G[i>>2];case 8:return s?i=>H[i>>3]:i=>Na[i>>3];default:throw TypeError(`invalid integer width (${o}): ${i}`)}},Ab=(i,o,s,_,j)=>{o=V(o),_=_===0n;var $=i=>i;if(_){let i=s*8;$=o=>BigInt.asUintN(i,o),j=$(j)}T(i,{name:o,A:$,G:(i,o)=>(typeof o==`number`&&(o=BigInt(o)),o),L:Uf(o,s,!_),I:null})};Ab.g=`vpppjj`;var Bb=(i,o,s,_)=>{o=V(o),T(i,{name:o,A:function(i){return!!i},G:function(i,o){return o?s:_},L:function(i){return this.A(A[i])},I:null})};Bb.g=`vppii`;var Vf=i=>{throw new W(i.l.F.u.name+` instance already deleted`)},Wf=!1,Xf=!1,Yf=()=>{},Zf=i=>Wf?(Zf=i=>i.deleteLater(),Zf(i)):globalThis.FinalizationRegistry?(Xf=new FinalizationRegistry(i=>{i=i.l,--i.count.value,i.count.value===0&&(i.K?i.R.Y(i.K):i.F.u.Y(i.B))}),Zf=i=>{var o=i.l;return o.K&&Xf.register(i,{l:o},i),i},Yf=i=>{Xf.unregister(i)},Zf(i)):(Zf=i=>i,i),$f=[],ag=()=>{for(;$f.length;){var i=$f.pop();i.l.ha=!1,i.delete()}},bg;function cg(){}var dg={},eg=(i,o,s)=>{if(i[o].H===void 0){var _=i[o];i[o]=function(..._){if(!i[o].H.hasOwnProperty(_.length))throw new W(`Function '${s}' called with an invalid number of arguments (${_.length}) - expects one of (${i[o].H})!`);return i[o].H[_.length].apply(this,_)},i[o].H=[],i[o].H[_.Z]=_}},fg=(i,o,s)=>{if(n.hasOwnProperty(i)){if(s===void 0||n[i].H!==void 0&&n[i].H[s]!==void 0)throw new W(`Cannot register public name '${i}' twice`);if(eg(n,i,i),n[i].H.hasOwnProperty(s))throw new W(`Cannot register multiple overloads of a function with the same number of arguments (${s})!`);n[i].H[s]=o}else n[i]=o,n[i].Z=s},gg=i=>{i=i.replace(/[^a-zA-Z0-9_]/g,`$`);var o=i.charCodeAt(0);return o>=48&&o<=57?`_${i}`:i};function hg(i,o,s,_,j,$,_e,et){this.name=i,this.constructor=o,this.ba=s,this.Y=_,this.N=j,this.Mb=$,this.va=_e,this.Gb=et,this.mc=[]}var ig=(i,o,s)=>{for(;o!==s;){if(!o.va)throw new W(`Expected null or instance of ${s.name}, got an instance of ${o.name}`);i=o.va(i),o=o.N}return i},jg=i=>{if(i===null)return`null`;var o=typeof i;return o===`object`||o===`array`||o===`function`?i.toString():``+i};function kg(i,o){if(o===null){if(this.Ka)throw new W(`null is not a valid ${this.name}`);return 0}if(!o.l)throw new W(`Cannot pass "${jg(o)}" as a ${this.name}`);if(!o.l.B)throw new W(`Cannot pass deleted object as a pointer of type ${this.name}`);return ig(o.l.B,o.l.F.u,this.u)}function lg(i,o){if(o===null){if(this.Ka)throw new W(`null is not a valid ${this.name}`);if(this.Aa){var s=this.Ra();return i!==null&&i.push(this.Y,s),s}return 0}if(!o||!o.l)throw new W(`Cannot pass "${jg(o)}" as a ${this.name}`);if(!o.l.B)throw new W(`Cannot pass deleted object as a pointer of type ${this.name}`);if(!this.za&&o.l.F.za)throw new W(`Cannot convert argument of type ${o.l.R?o.l.R.name:o.l.F.name} to parameter type ${this.name}`);if(s=ig(o.l.B,o.l.F.u,this.u),this.Aa){if(o.l.K===void 0)throw new W(`Passing raw pointer to smart pointer is illegal`);switch(this.tc){case 0:if(o.l.R===this)s=o.l.K;else throw new W(`Cannot convert argument of type ${o.l.R?o.l.R.name:o.l.F.name} to parameter type ${this.name}`);break;case 1:s=o.l.K;break;case 2:if(o.l.R===this)s=o.l.K;else{var _=o.clone();s=this.nc(s,mg(()=>_.delete())),i!==null&&i.push(this.Y,s)}break;default:throw new W(`Unsupported sharing policy`)}}return s}function ng(i,o){if(o===null){if(this.Ka)throw new W(`null is not a valid ${this.name}`);return 0}if(!o.l)throw new W(`Cannot pass "${jg(o)}" as a ${this.name}`);if(!o.l.B)throw new W(`Cannot pass deleted object as a pointer of type ${this.name}`);if(o.l.F.za)throw new W(`Cannot convert argument of type ${o.l.F.name} to parameter type ${this.name}`);return ig(o.l.B,o.l.F.u,this.u)}var og=(i,o,s)=>o===s?i:s.N===void 0?null:(i=og(i,o,s.N),i===null?null:s.Gb(i)),pg={},qg=(i,o)=>{if(o===void 0)throw new W(`ptr should not be undefined`);for(;i.N;)o=i.va(o),i=i.N;return pg[o]},rg=(i,o)=>{if(!o.F||!o.B)throw new Rf(`makeClassHandle requires ptr and ptrType`);if(!!o.R!=!!o.K)throw new Rf(`Both smartPtrType and smartPtr must be specified`);return o.count={value:1},Zf(Object.create(i,{l:{value:o,writable:!0}}))};function sg(i,o,s,_,j,$,_e,et,tt,nt,rt){this.name=i,this.u=o,this.Ka=s,this.za=_,this.Aa=j,this.lc=$,this.tc=_e,this.nb=et,this.Ra=tt,this.nc=nt,this.Y=rt,j||o.N!==void 0?this.G=lg:(this.G=_?kg:ng,this.I=null)}var tg=(i,o,s)=>{if(!n.hasOwnProperty(i))throw new Rf(`Replacing nonexistent public symbol`);n[i].H!==void 0&&s!==void 0?n[i].H[s]=o:(n[i]=o,n[i].Z=s)},X=(i,o)=>{i=V(i);var s=M.get(o);if(typeof s!=`function`)throw new W(`unknown function pointer with signature ${i}: ${o}`);return s};class ug extends Error{}var vg=i=>{i=dd(i);var o=V(i);return L(i),o},wg=(i,o)=>{function s(i){j[i]||Pf[i]||(Qf[i]?Qf[i].forEach(s):(_.push(i),j[i]=!0))}var _=[],j={};throw o.forEach(s),new ug(`${i}: `+_.map(vg).join([`, `]))},Cb=(i,o,s,_,j,$,_e,et,tt,nt,rt,it,at)=>{rt=V(rt),$=X(j,$),et&&=X(_e,et),nt&&=X(tt,nt),at=X(it,at);var ot=gg(rt);fg(ot,function(){wg(`Cannot construct ${rt} due to unbound types`,[_])}),U([i,o,s],_?[_]:[],o=>{if(o=o[0],_)var s=o.u,j=s.ba;else j=cg.prototype;o=Ge(rt,function(...i){if(Object.getPrototypeOf(this)!==_e)throw new W(`Use 'new' to construct ${rt}`);if(tt.ga===void 0)throw new W(`${rt} has no accessible constructor`);var o=tt.ga[i.length];if(o===void 0)throw new W(`Tried to invoke ctor of ${rt} with invalid number of parameters (${i.length}) - expected (${Object.keys(tt.ga).toString()}) parameters instead!`);return o.apply(this,i)});var _e=Object.create(j,{constructor:{value:o}});o.prototype=_e;var tt=new hg(rt,o,_e,at,s,$,et,nt);if(tt.N){var it;(it=tt.N).wa??(it.wa=[]),tt.N.wa.push(tt)}return s=new sg(rt,tt,!0,!1,!1),it=new sg(rt+`*`,tt,!1,!1,!1),j=new sg(rt+` const*`,tt,!1,!0,!1),dg[i]={pointerType:it,Eb:j},tg(ot,o),[s,it,j]})};Cb.g=`vppppppppppppp`;function xg(i){for(var o=1;o<i.length;++o)if(i[o]!==null&&i[o].I===void 0)return!0;return!1}function yg(i,o,s,_,j,$){var _e=o.length;if(_e<2)throw new W(`argTypes array size mismatch! Must at least get return value and 'this' types!`);var et=o[1]!==null&&s!==null,tt=xg(o);s=!o[0].gb;var nt=o[0],rt=o[1];for(_=[i,Sf,_,j,Mf,nt.A.bind(nt),rt?.G.bind(rt)],j=2;j<_e;++j)nt=o[j],_.push(nt.G.bind(nt));if(!tt)for(j=et?1:2;j<o.length;++j)o[j].I!==null&&_.push(o[j].I);for(tt=xg(o),j=o.length-2,rt=[],nt=[`fn`],et&&nt.push(`thisWired`),_e=0;_e<j;++_e)rt.push(`arg${_e}`),nt.push(`arg${_e}Wired`);rt=rt.join(`,`),nt=nt.join(`,`),rt=`return function (${rt}) {\n`,tt&&(rt+=`var destructors = [];
3
+ `);var it=tt?`destructors`:`null`,at=`humanName throwBindingError invoker fn runDestructors fromRetWire toClassParamWire`.split(` `);for(et&&(rt+=`var thisWired = toClassParamWire(${it}, this);\n`),_e=0;_e<j;++_e){var ot=`toArg${_e}Wire`;rt+=`var arg${_e}Wired = ${ot}(${it}, arg${_e});\n`,at.push(ot)}if(rt+=(s||$?`var rv = `:``)+`invoker(${nt});\n`,tt)rt+=`runDestructors(destructors);
4
+ `;else for(_e=et?1:2;_e<o.length;++_e)$=_e===1?`thisWired`:`arg`+(_e-2)+`Wired`,o[_e].I!==null&&(rt+=`${$}_dtor(${$});\n`,at.push(`${$}_dtor`));return s&&(rt+=`var ret = fromRetWire(rv);
5
+ return ret;
6
+ `),o=Function(at,rt+`}
7
+ `)(..._),Ge(i,o)}var zg=(i,o)=>{for(var s=[],_=0;_<i;_++)s.push(G[o+_*4>>2]);return s},Bg=i=>{i=i.trim();var o=i.indexOf(`(`);return o===-1?i:i.slice(0,o)},Db=(i,o,s,_,j,$,_e,et)=>{var tt=zg(s,_);o=V(o),o=Bg(o),$=X(j,$),U([],[i],i=>{function _(){wg(`Cannot call ${j} due to unbound types`,tt)}i=i[0];var j=`${i.name}.${o}`;o.startsWith(`@@`)&&(o=Symbol[o.substring(2)]);var nt=i.u.constructor;return nt[o]===void 0?(_.Z=s-1,nt[o]=_):(eg(nt,o,j),nt[o].H[s-1]=_),U([],tt,_=>{if(_=yg(j,[_[0],null].concat(_.slice(1)),null,$,_e,et),nt[o].H===void 0?(_.Z=s-1,nt[o]=_):nt[o].H[s-1]=_,i.u.wa)for(let s of i.u.wa)s.constructor.hasOwnProperty(o)||(s.constructor[o]=_);return[]}),[]})};Db.g=`vppippppii`;var Eb=(i,o,s,_,j,$)=>{var _e=zg(o,s);j=X(_,j),U([],[i],i=>{i=i[0];var s=`constructor ${i.name}`;if(i.u.ga===void 0&&(i.u.ga=[]),i.u.ga[o-1]!==void 0)throw new W(`Cannot register multiple constructors with identical number of parameters (${o-1}) for class '${i.name}'! Overload resolution is currently only performed using the parameter count, not actual type info!`);return i.u.ga[o-1]=()=>{wg(`Cannot construct ${i.name} due to unbound types`,_e)},U([],_e,_=>(_.splice(1,0,null),i.u.ga[o-1]=yg(s,_,null,j,$),[])),[]})};Eb.g=`vpipppp`;var Fb=(i,o,s,_,j,$,_e,et,tt)=>{var nt=zg(s,_);o=V(o),o=Bg(o),$=X(j,$),U([],[i],i=>{function _(){wg(`Cannot call ${j} due to unbound types`,nt)}i=i[0];var j=`${i.name}.${o}`;o.startsWith(`@@`)&&(o=Symbol[o.substring(2)]),et&&i.u.mc.push(o);var rt=i.u.ba,it=rt[o];return it===void 0||it.H===void 0&&it.className!==i.name&&it.Z===s-2?(_.Z=s-2,_.className=i.name,rt[o]=_):(eg(rt,o,j),rt[o].H[s-2]=_),U([],nt,_=>(_=yg(j,_,i,$,_e,tt),rt[o].H===void 0?(_.Z=s-2,rt[o]=_):rt[o].H[s-2]=_,[])),[]})};Fb.g=`vppippppiii`;var Cg=(i,o,s)=>{if(!(i instanceof Object))throw new W(`${s} with invalid "this": ${i}`);if(!(i instanceof o.u.constructor))throw new W(`${s} incompatible with "this" of type ${i.constructor.name}`);if(!i.l.B)throw new W(`cannot call emscripten binding method ${s} on deleted object`);return ig(i.l.B,i.l.F.u,o.u)},Gb=(i,o,s,_,j,$,_e,et,tt,nt)=>{o=V(o),j=X(_,j),U([],[i],i=>{i=i[0];var _=`${i.name}.${o}`,rt={get(){wg(`Cannot access ${_} due to unbound types`,[s,_e])},enumerable:!0,configurable:!0};return rt.set=tt?()=>wg(`Cannot access ${_} due to unbound types`,[s,_e]):()=>{throw new W(_+` is a read-only property`)},Object.defineProperty(i.u.ba,o,rt),U([],tt?[s,_e]:[s],s=>{var _e=s[0],rt={get(){var o=Cg(this,i,_+` getter`);return _e.A(j($,o))},enumerable:!0};if(tt){tt=X(et,tt);var it=s[1];rt.set=function(o){var s=Cg(this,i,_+` setter`),j=[];tt(nt,s,it.G(j,o)),Mf(j)}}return Object.defineProperty(i.u.ba,o,rt),[]}),[]})};Gb.g=`vpppppppppp`;var Dg=[],Eg=[0,1,,1,null,1,!0,1,!1,1],Fg=[],hc=i=>{if(i>9&&--Eg[i+1]===0){var o=Eg[i];Eg[i]=void 0;var s=Fg[i];s&&(Fg[i]=void 0,s(o)),Dg.push(i)}};hc.g=`vp`;var Z=i=>{if(!i)throw new W(`Cannot use deleted val. handle = ${i}`);return Eg[i]},mg=i=>{switch(i){case void 0:return 2;case null:return 4;case!0:return 6;case!1:return 8;default:let o=Dg.pop()||Eg.length;return Eg[o]=i,Eg[o+1]=1,o}},Gg={name:`emscripten::val`,A:i=>{var o=Z(i);return hc(i),o},G:(i,o)=>mg(o),L:Nf,I:null},Hb=i=>T(i,Gg);Hb.g=`vp`;var Hg=(i,o,s)=>{switch(o){case 1:return s?function(i){return this.A(x[i])}:function(i){return this.A(A[i])};case 2:return s?function(i){return this.A(y[i>>1])}:function(i){return this.A(E[i>>1])};case 4:return s?function(i){return this.A(F[i>>2])}:function(i){return this.A(G[i>>2])};default:throw TypeError(`invalid integer width (${o}): ${i}`)}},Ib=(i,o,s,_,j)=>{switch(o=V(o),j=j===0?`object`:j===1?`number`:`string`,j){case`object`:function $(){}$.values={},T(i,{name:o,constructor:$,valueType:j,A:function(i){return this.constructor.values[i]},G:(i,o)=>o.value,L:Hg(o,s,_),I:null}),fg(o,$);break;case`number`:var _e={};T(i,{name:o,La:_e,valueType:j,A:i=>i,G:(i,o)=>o,L:Hg(o,s,_),I:null}),fg(o,_e),delete n[o].Z;break;case`string`:_e={},T(i,{name:o,ub:{},ob:{},La:_e,valueType:j,A:function(i){return this.ob[i]},G:function(i,o){return this.ub[o]},L:Hg(o,s,_),I:null}),fg(o,_e),delete n[o].Z}};Ib.g=`vpppii`;var Ig=(i,o)=>{var s=Pf[i];if(s===void 0)throw i=`${o} has unknown type ${vg(i)}`,new W(i);return s},Jb=(i,o,s)=>{var _=Ig(i,`enum`);switch(o=V(o),_.valueType){case`object`:i=_.constructor,_=Object.create(_.constructor.prototype,{value:{value:s},constructor:{value:Ge(`${_.name}_${o}`,function(){})}}),i.values[s]=_,i[o]=_;break;case`number`:_.La[o]=s;break;case`string`:_.ub[o]=s,_.ob[s]=o,_.La[o]=o}};Jb.g=`vppi`;var Jg=(i,o)=>{switch(o){case 4:return function(i){return this.A(La[i>>2])};case 8:return function(i){return this.A(Ma[i>>3])};default:throw TypeError(`invalid float width (${o}): ${i}`)}},Kb=(i,o,s)=>{o=V(o),T(i,{name:o,A:i=>i,G:(i,o)=>o,L:Jg(o,s),I:null})};Kb.g=`vppp`;var Lb=(i,o,s,_,j,$,_e)=>{var et=zg(o,s);i=V(i),i=Bg(i),j=X(_,j),fg(i,function(){wg(`Cannot call ${i} due to unbound types`,et)},o-1),U([],et,s=>(tg(i,yg(i,[s[0],null].concat(s.slice(1)),null,j,$,_e),o-1),[]))};Lb.g=`vpippppii`;var Mb=(i,o,s,_,j)=>{o=V(o);var $=i=>i;if(_===0){var _e=32-8*s;$=i=>i<<_e>>>_e,j=$(j)}T(i,{name:o,A:$,G:(i,o)=>o,L:Uf(o,s,_!==0),I:null})};Mb.g=`vpppii`;var Kg=(i,o,s)=>{var _=(i,o)=>{var s=0;return{next(){if(s>=i)return{done:!0};var _=s;return s++,{value:o(_),done:!1}},[Symbol.iterator](){return this}}};i[Symbol.iterator]||(i[Symbol.iterator]=function(){return _(this[o](),i=>this[s](i))})},Nb=(i,o,s,_)=>{s=V(s),_=V(_),U([],[i,o],i=>(Kg(i[0].u.ba,s,_),[]))};Nb.g=`vpppp`;var Ob=(i,o,s)=>{function _(i){return new j(x.buffer,G[i+4>>2],G[i>>2])}var j=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,BigInt64Array,BigUint64Array][o];s=V(s),T(i,{name:s,A:_,L:_},{Ub:!0})};Ob.g=`vpip`;var Lg=Object.assign({optional:!0},Gg),Pb=i=>{T(i,Lg)};Pb.g=`vpp`;var Qb=(i,o)=>{o=V(o),T(i,{name:o,A(i){var o=P(i+4,G[i>>2],!0);return L(i),o},G(i,o){o instanceof ArrayBuffer&&(o=new Uint8Array(o));var s=typeof o==`string`;if(!(s||ArrayBuffer.isView(o)&&o.BYTES_PER_ELEMENT==1))throw new W(`Cannot pass non-string to std::string`);var _=s?Ue(o):o.length,j=ad(4+_+1),$=j+4;return G[j>>2]=_,s?Q(o,A,$,_+1):A.set(o,$),i!==null&&i.push(L,j),j},L:Nf,I(i){L(i)}})};Qb.g=`vpp`;var Mg=new TextDecoder(`utf-16le`),Ng=(i,o,s)=>(i>>=1,Mg.decode(E.slice(i,qe(E,i,o/2,s)))),Og=(i,o,s)=>{if(s??=2147483647,s<2)return 0;s-=2;var _=o;s=s<i.length*2?s/2:i.length;for(var j=0;j<s;++j)y[o>>1]=i.charCodeAt(j),o+=2;return y[o>>1]=0,o-_},Pg=i=>i.length*2,Qg=(i,o,s)=>{var _=``;i>>=2;for(var j=0;!(j>=o/4);j++){var $=G[i+j];if(!$&&!s)break;_+=String.fromCodePoint($)}return _},Rg=(i,o,s)=>{if(s??=2147483647,s<4)return 0;var _=o;s=_+s-4;for(var j=0;j<i.length;++j){var $=i.codePointAt(j);if($>65535&&j++,F[o>>2]=$,o+=4,o+4>s)break}return F[o>>2]=0,o-_},Sg=i=>{for(var o=0,s=0;s<i.length;++s)i.codePointAt(s)>65535&&s++,o+=4;return o},Rb=(i,o,s)=>{if(s=V(s),o===2)var _=Ng,j=Og,$=Pg;else _=Qg,j=Rg,$=Sg;T(i,{name:s,A:i=>{var s=_(i+4,G[i>>2]*o,!0);return L(i),s},G:(i,_)=>{if(typeof _!=`string`)throw new W(`Cannot pass non-string to C++ string type ${s}`);var _e=$(_),et=ad(4+_e+o);return G[et>>2]=_e/o,j(_,et+4,_e+o),i!==null&&i.push(L,et),et},L:Nf,I(i){L(i)}})};Rb.g=`vppp`;var Sb=(i,o,s,_,j,$)=>{Lf[i]={name:V(o),Ra:X(s,_),Y:X(j,$),bb:[]}};Sb.g=`vpppppp`;var Tb=(i,o,s,_,j,$,_e,et,tt,nt)=>{Lf[i].bb.push({Kb:V(o),Qb:s,na:X(_,j),Pb:$,qc:_e,oc:X(et,tt),rc:nt})};Tb.g=`vpppppppppp`;var Ub=(i,o)=>{o=V(o),T(i,{gb:!0,name:o,A:()=>{},G:()=>{}})};Ub.g=`vpp`;var Vb=(i,o,s,_)=>{function j(o){Jf(`'Could not load dynamic lib: ${P(i+36)}\n${o}`),--N,be(()=>M.get(s)(i,_))}function $(){--N,be(()=>M.get(o)(i,_))}N+=1;var _e=Kf(i,{J:!0});_e?_e.then($,j):j()};Vb.g=`vpppp`;function Tg(i){var o=Ug,s=o.ia.pop()??o.fa.length;return o.fa[s]=i,s}function Vg(i){var o=Ug;o.fa[i]=void 0,o.ia.push(i)}class Wg{fa=[void 0];ia=[];get(i){return this.fa[i]}has(i){return this.fa[i]!==void 0}}var Ug=new Wg,Xg=()=>{var i={};return i.promise=new Promise((o,s)=>{i.reject=s,i.resolve=o}),i.id=Tg(i),i},Yg=async()=>{var i=ce,o=[],s=Xg();o.push(s.promise),hd(s.id);for(let _ of Object.keys(Id)){let j=Number(_);j===i||Jd.has(j)||(s=Xg(),kd(j,s.id),Kd[j]=s,o.push(s.promise))}await Promise.all(o),Kd={}};function Wb(){if(r)return O(17,2);if(ce)return Yg();for(let i of Object.keys(Id)){let o=Number(i);Jd.has(o)||ld(o)}}Wb.g=`v`;function Xb(){var i=ad((ma.length+1)*4),o=i;return ma.forEach(i=>{var s=G,_=o>>2,j=Ue(i)+1,$=ad(j);$&&Q(i,A,$,j),s[_]=$,o+=4}),G[o>>2]=0,i}Xb.g=`p`;var Yb=i=>{var o=!aa;try{Atomics.wait(F,0,0,0),o=!0}catch{}Ca(i,!ba,1,o,262144,!1),Da()};Yb.g=`vp`;var Ea=i=>{Xd||(Atomics.waitAsync(F,i>>2,i).value.then(Ha),Atomics.store(F,i+112>>2,1))};Ea.g=`vp`;var Ha=()=>{var i=$c();i&&be(()=>{Ea(i),sd()})},Zb=(i,o)=>{i==o?setTimeout(Ha):r?postMessage({rb:i,V:4}):(i=Id[i])&&i.postMessage({V:4})};Zb.g=`vpp`;var Zg=[],$b=(i,o,s,_,j,$,_e)=>{Zg.length=0;var et=j>>3;for(_=j+_>>3;et<_;){var tt=H[et++]?H[et++]:Ma[et++];Zg.push(tt)}if(i=o?Ie[o]:$g[i],ce=s,s=i(...Zg),ce=0,$)s.then(i=>od($,_e,i));else return s};$b.g=`dippippp`;var ac=()=>{de=!1,N=0};ac.g=`v`;var bc=i=>{r?postMessage({V:6,Ua:i}):Md(i)};bc.g=`vp`;var cc=i=>{r?postMessage({V:7,Ua:i}):Pd(i)};cc.g=`vp`;var dc=()=>{};dc.g=`vp`;var ec=(i,o)=>{i=Z(i),o=Z(o),i.set(o)};ec.g=`vpp`;var ah=[],bh=i=>{var o=ah.length;return ah.push(i),o},ch=(i,o)=>{for(var s=Array(i),_=0;_<i;++_)s[_]=Ig(G[o+_*4>>2],`parameter ${_}`);return s},dh=(i,o,s)=>{var _=[];return i=i(_,s),_.length&&(G[o>>2]=mg(_)),i},eh={},fh=i=>{var o=eh[i];return o===void 0?V(i):o},fc=(i,o,s)=>{var _;[o,..._]=ch(i,o);var j=o.G.bind(o),$=_.map(i=>i.L.bind(i));i--;var _e={toValue:Z};switch(i=$.map((i,o)=>{var s=`argFromPtr${o}`;return _e[s]=i,`${s}(args${o?`+`+o*8:``})`}),s){case 0:var et=`toValue(handle)`;break;case 2:et=`new (toValue(handle))`;break;case 3:et=``;break;case 1:_e.getStringOrSymbol=fh,et=`toValue(handle)[getStringOrSymbol(methodName)]`}return et+=`(${i})`,o.gb||(_e.toReturnWire=j,_e.emval_returnValue=dh,et=`return emval_returnValue(toReturnWire, destructorsRef, ${et})`),et=`return function (handle, methodName, destructorsRef, args) {\n${et}\n}`,s=Function(Object.keys(_e),et)(...Object.values(_e)),o=`methodCaller<(${_.map(i=>i.name)}) => ${o.name}>`,bh(Ge(o,s))};fc.g=`pipi`;var ic=i=>i?(i=fh(i),mg(globalThis[i])):mg(globalThis);ic.g=`pp`;var jc=i=>(i=fh(i),mg(n[i]));jc.g=`pp`;var kc=(i,o)=>(i=Z(i),o=Z(o),mg(i[o]));kc.g=`ppp`;var lc=i=>{i>9&&(Eg[i+1]+=1)};lc.g=`vp`;var mc=(i,o)=>(i=Z(i),o=Z(o),i instanceof o);mc.g=`ipp`;var nc=(i,o,s,_,j)=>ah[i](o,s,_,j);nc.g=`dppppp`;var oc=i=>(i=Z(i),typeof i==`number`);oc.g=`ip`;var pc=i=>(i=Z(i),typeof i==`string`);pc.g=`ip`;var qc=i=>mg(fh(i));qc.g=`pp`;var rc=i=>{Mf(Z(i)),hc(i)};rc.g=`vp`;var sc=(i,o,s)=>{i=Z(i),o=Z(o),s=Z(s),i[o]=s};sc.g=`vppp`;var tc=i=>(i=Z(i),mg(typeof i));tc.g=`pp`;function uc(i,o){i=i<-9007199254740992||i>9007199254740992?NaN:Number(i),i=new Date(i*1e3),F[o>>2]=i.getUTCSeconds(),F[o+4>>2]=i.getUTCMinutes(),F[o+8>>2]=i.getUTCHours(),F[o+12>>2]=i.getUTCDate(),F[o+16>>2]=i.getUTCMonth(),F[o+20>>2]=i.getUTCFullYear()-1900,F[o+24>>2]=i.getUTCDay(),F[o+28>>2]=(i.getTime()-Date.UTC(i.getUTCFullYear(),0,1,0,0,0,0))/864e5|0}uc.g=`vjp`;var gh=[0,31,60,91,121,152,182,213,244,274,305,335],hh=[0,31,59,90,120,151,181,212,243,273,304,334];function vc(i,o){i=i<-9007199254740992||i>9007199254740992?NaN:Number(i),i=new Date(i*1e3),F[o>>2]=i.getSeconds(),F[o+4>>2]=i.getMinutes(),F[o+8>>2]=i.getHours(),F[o+12>>2]=i.getDate(),F[o+16>>2]=i.getMonth(),F[o+20>>2]=i.getFullYear()-1900,F[o+24>>2]=i.getDay();var s=i.getFullYear();F[o+28>>2]=(s%4!=0||s%100==0&&s%400!=0?hh:gh)[i.getMonth()]+i.getDate()-1|0,F[o+36>>2]=-(i.getTimezoneOffset()*60),s=new Date(i.getFullYear(),6,1).getTimezoneOffset();var _=new Date(i.getFullYear(),0,1).getTimezoneOffset();F[o+32>>2]=(s!=_&&i.getTimezoneOffset()==Math.min(_,s))|0}vc.g=`vjp`;function wc(i,o,s,_,j,$,_e){if(r)return O(18,1,i,o,s,_,j,$,_e);j=j<-9007199254740992||j>9007199254740992?NaN:Number(j);try{var et=S(_),tt=FS.ka(et,i,j,o,s),nt=tt.B;return F[$>>2]=tt.fa,G[_e>>2]=nt,0}catch(i){if(FS===void 0||i.name!==`ErrnoError`)throw i;return-i.C}}wc.g=`ipiiijpp`;function xc(i,o,s,_,j,$){if(r)return O(19,1,i,o,s,_,j,$);$=$<-9007199254740992||$>9007199254740992?NaN:Number($);try{var _e=S(j);if(s&2){if(s=$,!FS.isFile(_e.node.mode))throw new FS.h(43);_&2||FS.ma(_e,A.slice(i,i+o),s,o,_)}}catch(i){if(FS===void 0||i.name!==`ErrnoError`)throw i;return-i.C}}xc.g=`ippiiij`;var yc=(i,o,s,_)=>{var j=new Date().getFullYear(),$=new Date(j,0,1).getTimezoneOffset();j=new Date(j,6,1).getTimezoneOffset(),G[i>>2]=Math.max($,j)*60,F[o>>2]=Number($!=j),o=i=>{var o=Math.abs(i);return`UTC${i>=0?`-`:`+`}${String(Math.floor(o/60)).padStart(2,`0`)}${String(o%60).padStart(2,`0`)}`},i=o($),o=o(j),j<$?(Q(i,A,s,17),Q(o,A,_,17)):(Q(i,A,_,17),Q(o,A,s,17))};yc.g=`vpppp`;var Fc=()=>performance.timeOrigin+performance.now();Fc.g=`d`;var Bc=()=>Date.now();Bc.g=`d`;var ih=1;function zc(i,o,s){if(!(i>=0&&i<=3))return 28;if(i===0)i=Date.now();else if(ih)i=performance.timeOrigin+performance.now();else return 52;return H[s>>3]=BigInt(Math.round(i*1e3*1e3)),0}zc.g=`iijp`;var Ac=()=>{};Ac.g=`v`;var Cc=i=>w(P(i));Cc.g=`vp`;var Dc=()=>{throw N+=1,`unwind`};Dc.g=`v`;var Ec=()=>A.length;Ec.g=`p`;var Gc=()=>navigator.hardwareConcurrency;Gc.g=`i`;var Hc=i=>{Vg(i)};Hc.g=`vp`;var Ic=(i,o,s)=>{switch(i=Ug.get(i),o){case 0:i.resolve(s);break;case 1:i.resolve(Ug.get(s).promise);break;case 2:i.resolve(Ug.get(s).promise),Vg(s);break;case 3:i.reject(s)}};Ic.g=`vpip`;var Jc=()=>!1;Jc.g=`ip`;var jh={},lh=()=>{if(!kh){var i={USER:`web_user`,LOGNAME:`web_user`,PATH:`/`,PWD:`/`,HOME:`/home/web_user`,LANG:(globalThis.navigator?.language??`C`).replace(`-`,`_`)+`.UTF-8`,_:da},o;for(o in jh)jh[o]===void 0?delete i[o]:i[o]=jh[o];var s=[];for(o in i)s.push(`${o}=${i[o]}`);kh=s}return kh},kh;function Kc(i,o){if(r)return O(20,1,i,o);var s=0,_=0,j;for(j of lh()){var $=o+s;G[i+_>>2]=$,s+=Q(j,A,$,1/0)+1,_+=4}return 0}Kc.g=`ipp`;function Lc(i,o){if(r)return O(21,1,i,o);var s=lh();G[i>>2]=s.length,i=0;for(var _ of s)i+=Ue(_)+1;return G[o>>2]=i,0}Lc.g=`ipp`;function Nc(i){if(r)return O(22,1,i);try{var o=S(i);return FS.close(o),0}catch(i){if(FS===void 0||i.name!==`ErrnoError`)throw i;return i.C}}Nc.g=`ii`;function Oc(i,o){if(r)return O(23,1,i,o);try{var s=S(i),_=s.D?2:FS.isDir(s.mode)?3:FS.isLink(s.mode)?7:4;return x[o]=_,y[o+2>>1]=0,H[o+8>>3]=BigInt(0),H[o+16>>3]=BigInt(0),0}catch(i){if(FS===void 0||i.name!==`ErrnoError`)throw i;return i.C}}Oc.g=`iip`;function Pc(i,o,s,_){if(r)return O(24,1,i,o,s,_);try{a:{var j=S(i);i=o;for(var $,_e=o=0;_e<s;_e++){var et=G[i>>2],tt=G[i+4>>2];i+=8;var nt=FS.read(j,x,et,tt,$);if(nt<0){var rt=-1;break a}if(o+=nt,nt<tt)break;$!==void 0&&($+=nt)}rt=o}return G[_>>2]=rt,0}catch(i){if(FS===void 0||i.name!==`ErrnoError`)throw i;return i.C}}Pc.g=`iippp`;function Qc(i,o,s,_){if(r)return O(25,1,i,o,s,_);o=o<-9007199254740992||o>9007199254740992?NaN:Number(o);try{if(isNaN(o))return 22;var j=S(i);return FS.llseek(j,o,s),H[_>>3]=BigInt(j.position),j.Ga&&o===0&&s===0&&(j.Ga=null),0}catch(i){if(FS===void 0||i.name!==`ErrnoError`)throw i;return i.C}}Qc.g=`iijip`;function Rc(i,o,s,_){if(r)return O(26,1,i,o,s,_);try{a:{var j=S(i);i=o;for(var $,_e=o=0;_e<s;_e++){var et=G[i>>2],tt=G[i+4>>2];i+=8;var nt=FS.write(j,x,et,tt,$);if(nt<0){var rt=-1;break a}if(o+=nt,nt<tt)break;$!==void 0&&($+=nt)}rt=o}return G[_>>2]=rt,0}catch(i){if(FS===void 0||i.name!==`ErrnoError`)throw i;return i.C}}Rc.g=`iippp`;function Tc(...i){return J.heif_error_success(...i)}Tc.Ca=!0;var Vc=(i,o)=>Xe(A.subarray(i,i+o));if(Vc.g=`ipp`,r||Zd(),(()=>{var i={mb:Promise.resolve(),canHandle:i=>!n.noWasmDecoding&&i.endsWith(`.so`),handle:async(o,s)=>i.mb=i.mb.then(async()=>{try{var i=await Me(o,{J:!0,qa:!0},s,{})}catch(i){throw Error(`failed to instantiate wasm: ${s}: ${i}`)}return he[s]=i,o})};ge.push(i)})(),FS.createPreloadedFile=(i,o,s,_,j,$,_e,et,tt,nt)=>{nf(i,o,s,_,j,et,tt,nt).then($).catch(_e)},FS.Sc=nf,FS.da=Array(4096),FS.mount(R,{},`/`),FS.mkdir(`/tmp`),FS.mkdir(`/home`),FS.mkdir(`/home/web_user`),(function(){FS.mkdir(`/dev`),FS.registerDevice(FS.makedev(1,3),{read:()=>0,write:(i,o,s,_)=>_,llseek:()=>0}),FS.mkdev(`/dev/null`,FS.makedev(1,3)),cf(FS.makedev(5,0),ef),cf(FS.makedev(6,0),ff),FS.mkdev(`/dev/tty`,FS.makedev(5,0)),FS.mkdev(`/dev/tty1`,FS.makedev(6,0));var i=new Uint8Array(1024),o=0,s=()=>(o===0&&(Xe(i),o=i.byteLength),i[--o]);FS.createDevice(`/dev`,`random`,s),FS.createDevice(`/dev`,`urandom`,s),FS.mkdir(`/dev/shm`),FS.mkdir(`/dev/shm/tmp`)})(),(function(){FS.mkdir(`/proc`);var i=FS.mkdir(`/proc/self`);FS.mkdir(`/proc/self/fd`),FS.mount({mount(){var o=FS.createNode(i,`fd`,16895,73);return o.o={llseek:R.o.llseek},o.m={ja(i,o){i=+o;var s=S(i);return i={parent:null,mount:{jb:`fake`},m:{readlink:()=>s.path},id:i+1},i.parent=i},ta(){return Array.from(FS.streams.entries()).filter(([,i])=>i).map(([i])=>i.toString())}},o}},{},`/proc/self/fd`)})(),FS.Lb={MEMFS:R},(()=>{var i=cg.prototype;Object.assign(i,{isAliasOf:function(i){if(!(this instanceof cg&&i instanceof cg))return!1;var o=this.l.F.u,s=this.l.B;i.l=i.l;var _=i.l.F.u;for(i=i.l.B;o.N;)s=o.va(s),o=o.N;for(;_.N;)i=_.va(i),_=_.N;return o===_&&s===i},clone:function(){if(this.l.B||Vf(this),this.l.ra)return this.l.count.value+=1,this;var i=Zf,o=Object,s=o.create,_=Object.getPrototypeOf(this),j=this.l;return i=i(s.call(o,_,{l:{value:{count:j.count,ha:j.ha,ra:j.ra,B:j.B,F:j.F,K:j.K,R:j.R}}})),i.l.count.value+=1,i.l.ha=!1,i},delete(){if(this.l.B||Vf(this),this.l.ha&&!this.l.ra)throw new W(`Object already scheduled for deletion`);Yf(this);var i=this.l;--i.count.value,i.count.value===0&&(i.K?i.R.Y(i.K):i.F.u.Y(i.B)),this.l.ra||(this.l.K=void 0,this.l.B=void 0)},isDeleted:function(){return!this.l.B},deleteLater:function(){if(this.l.B||Vf(this),this.l.ha&&!this.l.ra)throw new W(`Object already scheduled for deletion`);return $f.push(this),$f.length===1&&bg&&bg(ag),this.l.ha=!0,this}});var o=Symbol.dispose;o&&(i[o]=i.delete)})(),Object.assign(sg.prototype,{Ob(i){return this.nb&&(i=this.nb(i)),i},Ya(i){this.Y?.(i)},L:Nf,A:function(i){function o(){return this.Aa?rg(this.u.ba,{F:this.lc,B:s,R:this,K:i}):rg(this.u.ba,{F:this,B:i})}var s=this.Ob(i);if(!s)return this.Ya(i),null;var _=qg(this.u,s);if(_!==void 0)return _.l.count.value===0?(_.l.B=s,_.l.K=i,_.clone()):(_=_.clone(),this.Ya(i),_);if(_=this.u.Mb(s),_=dg[_],!_)return o.call(this);_=this.za?_.Eb:_.pointerType;var j=og(s,this.u,_.u);return j===null?o.call(this):this.Aa?rg(_.u.ba,{F:_,B:j,R:this,K:i}):rg(_.u.ba,{F:_,B:j})}}),Nd.push(()=>{jh.VIPS_DISC_THRESHOLD=1073741824,jh.VIPS_MAX_THREADS=navigator.hardwareConcurrency>6?navigator.hardwareConcurrency:6,jh.VIPS_CONCURRENCY=1}),Sa.push(()=>{var i=Object.getOwnPropertyDescriptor(n.SourceCustom.prototype,`onRead`);Object.defineProperty(n.SourceCustom.prototype,"onRead",{set(o){return i.set.call(this,i=>mg(o(i)))}});var o=Object.getOwnPropertyDescriptor(n.TargetCustom.prototype,`onWrite`);Object.defineProperty(n.TargetCustom.prototype,"onWrite",{set(i){return o.set.call(this,o=>i(Z(o)))}})}),Object.assign(cg.prototype,{preventAutoDelete:function(){var i=$f.indexOf(this);return i>-1&&$f.splice(i,1),this.l.ha=!1,this}}),!r){if(n.wasmMemory)xa=n.wasmMemory;else{var mh=n.INITIAL_MEMORY||1073741824;xa=new WebAssembly.Memory({initial:mh/65536,maximum:mh/65536,shared:!0})}ya()}if(n.preloadPlugins&&(ge=n.preloadPlugins),n.noExitRuntime&&(de=n.noExitRuntime),n.print&&(la=n.print),n.printErr&&(w=n.printErr),n.dynamicLibraries&&(ma=n.dynamicLibraries),n.wasmBinary&&(na=n.wasmBinary),n.arguments&&(ca=n.arguments),n.thisProgram&&(da=n.thisProgram),n.preInit)for(typeof n.preInit==`function`&&(n.preInit=[n.preInit]);n.preInit.length>0;)n.preInit.shift()();n.ENV=jh,n.addRunDependency=Td,n.removeRunDependency=Sd,n.addFunction=De,n.FS_preloadFile=nf,n.FS_unlink=(...i)=>FS.unlink(...i),n.FS_createPath=(...i)=>FS.createPath(...i),n.FS_createDevice=(...i)=>FS.createDevice(...i),n.FS=FS,n.FS_createDataFile=(...i)=>FS.createDataFile(...i),n.FS_createLazyFile=(...i)=>FS.createLazyFile(...i),n.setAutoDeleteLater=i=>{Wf=i},n.deletionQueue=$f,n.setDelayFunction=i=>{bg=i,$f.length&&bg&&bg(ag)};var $g=[Uc,ee,Df,db,eb,fb,gb,hb,ib,jb,kb,lb,mb,nb,ob,pb,qb,Wb,wc,xc,Kc,Lc,Nc,Oc,Pc,Qc,Rc],Ie={};function nh(i){for(var o=E[i+6>>1];o===13&&!(G[i>>2]>16);){var s=G[i+8>>2],_=G[s>>2];if(_===0){o=0;break}if(G[(s>>2)+1]===0)i=_,o=E[_+6>>1];else break}return[i,o]}function Sc(i,o,s,_){var j=G[(i>>2)+1],$=G[(i>>2)+6],_e=G[(i>>2)+2],et=G[(i>>2)+5];i=nh(G[(i>>2)+3])[1];var tt=xd(),nt=tt,rt=[],it=!1;if(i===15)throw Error(`complex ret marshalling nyi`);if(i<0||i>15)throw Error(`Unexpected rtype `+i);(i===4||i===13)&&(rt.push(s),it=!0);for(var at=0;at<$;at++){var ot=G[(_>>2)+at],st=nh(G[(_e>>2)+at]),ct=st[0];switch(st=st[1],st){case 1:case 10:case 9:rt.push(G[ot>>2]);break;case 2:rt.push(La[ot>>2]);break;case 3:rt.push(Ma[ot>>3]);break;case 5:rt.push(A[ot]);break;case 6:rt.push(x[ot]);break;case 7:rt.push(E[ot>>1]);break;case 8:rt.push(y[ot>>1]);break;case 11:case 12:rt.push(Na[ot>>3]);break;case 4:rt.push(Na[ot>>3]),rt.push(Na[(ot>>3)+1]);break;case 13:st=G[ct>>2],ct=E[ct+4>>1],nt-=st,nt&=~(ct-1),x.subarray(nt,nt+st).set(x.subarray(ot,ot+st)),rt.push(nt);break;case 14:rt.push(G[ot>>2]);break;case 15:throw Error(`complex marshalling nyi`);default:throw Error(`Unexpected type `+st)}}if(et&1){for(et=[],at=j-1;at>=$;at--)switch(ot=G[(_>>2)+at],st=nh(G[(_e>>2)+at]),ct=st[0],st=st[1],st){case 5:case 6:--nt,nt&=-1,A[nt]=A[ot];break;case 7:case 8:nt-=2,nt&=-2,E[nt>>1]=E[ot>>1];break;case 1:case 9:case 10:case 2:nt-=4,nt&=-4,G[nt>>2]=G[ot>>2];break;case 3:case 11:case 12:nt-=8,nt&=-8,G[nt>>2]=G[ot>>2],G[(nt>>2)+1]=G[(ot>>2)+1];break;case 4:nt-=16,nt&=-8,G[nt>>2]=G[ot>>2],G[(nt>>2)+1]=G[(ot>>2)+1],G[(nt>>2)+2]=G[(ot>>2)+2],G[(nt>>2)+3]=G[(ot>>2)+3];break;case 13:nt-=4,nt&=-4,et.push([nt,ot,G[ct>>2],E[ct+4>>1]]);break;case 14:nt-=4,nt&=-4,G[nt>>2]=G[ot>>2];break;case 15:throw Error(`complex arg marshalling nyi`);default:throw Error(`Unexpected argtype `+st)}for(rt.push(nt),at=0;at<et.length;at++)j=et[at],_=j[0],ot=j[1],st=j[2],ct=j[3],nt-=st,nt&=~(ct-1),x.subarray(nt,nt+st).set(x.subarray(ot,ot+st)),G[_>>2]=nt}if(vd(nt),wd(0),o=M.get(o).apply(null,rt),vd(tt),!it)switch(i){case 0:break;case 1:case 9:case 10:G[s>>2]=o;break;case 2:La[s>>2]=o;break;case 3:Ma[s>>3]=o;break;case 5:case 6:A[s+0]=o;break;case 7:case 8:E[s>>1]=o;break;case 11:case 12:Na[s>>3]=o;break;case 14:G[s>>2]=o;break;case 15:throw Error(`complex ret marshalling nyi`);default:throw Error(`Unexpected rtype `+i)}}Sc.g=`viiii`;var $c,ad,L,bd,cd,dd,Fa,ed,fd,gd,hd,jd,kd,ld,md,Ca,nd,Ia,od,pd,qd,rd,sd,td,Ta,ud,vd,wd,xd,yd,zd,Ad,Bd,M,J;function oh(i=[]){var o=He(`main`).Ta;if(o){i.unshift(da);var s=i.length,_=wd((s+1)*4),j=_,$;for($ of i)G[j>>2]=Ve($),j+=4;G[j>>2]=0;try{Mc(o(s,_),!0)}catch(i){Gd(i)}}}function Aa(i=ca){function o(){if(n.calledRun=!0,!pa&&(Pa(),ra?.(n),n.onRuntimeInitialized?.(),n.noInitialRun||oh(i),!r)){if(n.postRun)for(typeof n.postRun==`function`&&(n.postRun=[n.postRun]);n.postRun.length;){var o=n.postRun.shift();oe.push(o)}Qa(oe)}}if(Qd>0)Rd=Aa;else if(r)ra?.(n),Pa();else{if(n.preRun)for(typeof n.preRun==`function`&&(n.preRun=[n.preRun]);n.preRun.length;)Od();Qa(Nd),Qd>0?Rd=Aa:n.setStatus?(n.setStatus(`Running...`),setTimeout(()=>{setTimeout(()=>n.setStatus(``),1),o()},1)):o()}}var Ra;return r||(Ra=await za(),Aa()),moduleRtn=Ja?n:new Promise((i,o)=>{ra=i,sa=o}),moduleRtn}var isPthread=globalThis.name==`em-pthread`;isPthread&&Vips()})();
Binary file
@@ -3,9 +3,10 @@
3
3
  <head>
4
4
  <meta charset="UTF-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
+ <link rel="icon" type="image/png" href="/admin/favicon.png" />
6
7
  <title>Cogenta</title>
7
- <script type="module" crossorigin src="/admin/assets/index-DXvMgWvn.js"></script>
8
- <link rel="stylesheet" crossorigin href="/admin/assets/index-C9a7O_Xs.css">
8
+ <script type="module" crossorigin src="/admin/assets/index-fYXyHpn8.js"></script>
9
+ <link rel="stylesheet" crossorigin href="/admin/assets/index-CxZHGwVA.css">
9
10
  </head>
10
11
  <body>
11
12
  <div id="root"></div>
package/dist/bin.js CHANGED
@@ -1,6 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import process from 'node:process';
3
3
  import { run } from './index.js';
4
+ import { getCliVersion } from './version.js';
4
5
  /**
5
6
  * Node prints "ExperimentalWarning: SQLite is an experimental feature" on every
6
7
  * command that opens a database, which is every useful command. It is Node's
@@ -27,5 +28,10 @@ process.exitCode = await run({
27
28
  argv: process.argv.slice(2),
28
29
  isTty: process.stdout.isTTY === true,
29
30
  signal: shutdown.signal,
31
+ // Real bug fixed here (found while building `cogenta update`, L22 task 9):
32
+ // this was never passed before, so `cogenta version`/`cogenta --version`
33
+ // always printed the `run()` fallback "0.0.0" rather than this install's
34
+ // actual version.
35
+ version: getCliVersion(),
30
36
  });
31
37
  //# sourceMappingURL=bin.js.map
package/dist/bin.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"bin.js","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":";AACA,OAAO,OAAO,MAAM,cAAc,CAAA;AAClC,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAA;AAEhC;;;;;;;;GAQG;AACH,OAAO,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAA;AACrC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;IAChC,MAAM,cAAc,GAClB,OAAO,CAAC,IAAI,KAAK,qBAAqB,IAAI,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IAE9E,IAAI,CAAC,cAAc;QAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,OAAO,IAAI,CAAC,CAAA;AACpF,CAAC,CAAC,CAAA;AAEF,uEAAuE;AACvE,6EAA6E;AAC7E,2EAA2E;AAC3E,kCAAkC;AAClC,MAAM,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAA;AACtC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;AAC9C,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;AAE/C,OAAO,CAAC,QAAQ,GAAG,MAAM,GAAG,CAAC;IAC3B,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3B,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI;IACpC,MAAM,EAAE,QAAQ,CAAC,MAAM;CACxB,CAAC,CAAA"}
1
+ {"version":3,"file":"bin.js","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":";AACA,OAAO,OAAO,MAAM,cAAc,CAAA;AAClC,OAAO,EAAE,GAAG,EAAE,MAAM,YAAY,CAAA;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAE5C;;;;;;;;GAQG;AACH,OAAO,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAA;AACrC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;IAChC,MAAM,cAAc,GAClB,OAAO,CAAC,IAAI,KAAK,qBAAqB,IAAI,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IAE9E,IAAI,CAAC,cAAc;QAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,OAAO,IAAI,CAAC,CAAA;AACpF,CAAC,CAAC,CAAA;AAEF,uEAAuE;AACvE,6EAA6E;AAC7E,2EAA2E;AAC3E,kCAAkC;AAClC,MAAM,QAAQ,GAAG,IAAI,eAAe,EAAE,CAAA;AACtC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;AAC9C,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;AAE/C,OAAO,CAAC,QAAQ,GAAG,MAAM,GAAG,CAAC;IAC3B,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3B,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI;IACpC,MAAM,EAAE,QAAQ,CAAC,MAAM;IACvB,2EAA2E;IAC3E,yEAAyE;IACzE,yEAAyE;IACzE,kBAAkB;IAClB,OAAO,EAAE,aAAa,EAAE;CACzB,CAAC,CAAA"}
@@ -1,6 +1,7 @@
1
1
  export interface AdminAsset {
2
2
  readonly body: Buffer;
3
3
  readonly contentType: string;
4
+ readonly cacheControl: string;
4
5
  }
5
6
  /**
6
7
  * Serves one file from the built admin SPA for a request under `/admin`. A
@@ -1 +1 @@
1
- {"version":3,"file":"admin-assets.d.ts","sourceRoot":"","sources":["../../src/commands/admin-assets.ts"],"names":[],"mappings":"AA2BA,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;CAC7B;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,MAAM,EAChB,SAAS,GAAE,MAAyB,GACnC,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAa5B"}
1
+ {"version":3,"file":"admin-assets.d.ts","sourceRoot":"","sources":["../../src/commands/admin-assets.ts"],"names":[],"mappings":"AA2BA,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;CAC9B;AAqBD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,MAAM,EAChB,SAAS,GAAE,MAAyB,GACnC,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAa5B"}
@@ -22,6 +22,24 @@ const CONTENT_TYPES = {
22
22
  '.woff2': 'font/woff2',
23
23
  '.map': 'application/json; charset=utf-8',
24
24
  };
25
+ /**
26
+ * `vite build`'s own convention: every file under `assets/` is named with a
27
+ * content hash (`index-D3nbgRin.js`) — a rebuild that changes the file
28
+ * changes the name, so it is safe to cache forever. `index.html` (and any
29
+ * extension-less SPA route that resolves to it) references those hashed
30
+ * names and has no hash of its own, so it must always be revalidated —
31
+ * serving it stale is exactly what would make a real fix invisible in an
32
+ * already-open browser tab after a rebuild+restart, no matter how correct
33
+ * the fix itself is.
34
+ */
35
+ function cacheControlFor(targetPath) {
36
+ // `join` uses the OS-native separator (`\` on Windows); normalise before
37
+ // matching so this doesn't silently miss on the one platform this project
38
+ // develops on day to day.
39
+ return targetPath.replaceAll('\\', '/').includes('/assets/')
40
+ ? 'public, max-age=31536000, immutable'
41
+ : 'no-cache';
42
+ }
25
43
  /**
26
44
  * Serves one file from the built admin SPA for a request under `/admin`. A
27
45
  * real built asset (`/admin/assets/index-*.js`) gets that exact file, still
@@ -48,7 +66,7 @@ export async function serveAdminAsset(pathname, assetsDir = ADMIN_ASSETS_DIR) {
48
66
  try {
49
67
  const body = await readFile(targetPath);
50
68
  const contentType = CONTENT_TYPES[extname(targetPath)] ?? 'application/octet-stream';
51
- return { body, contentType };
69
+ return { body, contentType, cacheControl: cacheControlFor(targetPath) };
52
70
  }
53
71
  catch {
54
72
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"admin-assets.js","sourceRoot":"","sources":["../../src/commands/admin-assets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,SAAS,MAAM,iBAAiB,CAAA;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAExC;;;;;;;GAOG;AACH,MAAM,gBAAgB,GAAG,aAAa,CAAC,IAAI,GAAG,CAAC,iBAAiB,EAAE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;AAEnF,MAAM,aAAa,GAAqC;IACtD,OAAO,EAAE,0BAA0B;IACnC,KAAK,EAAE,gCAAgC;IACvC,MAAM,EAAE,yBAAyB;IACjC,OAAO,EAAE,iCAAiC;IAC1C,MAAM,EAAE,eAAe;IACvB,MAAM,EAAE,WAAW;IACnB,MAAM,EAAE,cAAc;IACtB,QAAQ,EAAE,YAAY;IACtB,MAAM,EAAE,iCAAiC;CAC1C,CAAA;AAOD;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,QAAgB,EAChB,SAAS,GAAW,gBAAgB;IAEpC,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,GAAG,CAAA;IACvD,MAAM,UAAU,GAAG,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;IAChD,MAAM,YAAY,GAAG,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,CAAA;IACzD,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,CAAA;IAE5E,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,CAAA;QACvC,MAAM,WAAW,GAAG,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,IAAI,0BAA0B,CAAA;QACpF,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAA;IAC9B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"admin-assets.js","sourceRoot":"","sources":["../../src/commands/admin-assets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,SAAS,MAAM,iBAAiB,CAAA;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAExC;;;;;;;GAOG;AACH,MAAM,gBAAgB,GAAG,aAAa,CAAC,IAAI,GAAG,CAAC,iBAAiB,EAAE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;AAEnF,MAAM,aAAa,GAAqC;IACtD,OAAO,EAAE,0BAA0B;IACnC,KAAK,EAAE,gCAAgC;IACvC,MAAM,EAAE,yBAAyB;IACjC,OAAO,EAAE,iCAAiC;IAC1C,MAAM,EAAE,eAAe;IACvB,MAAM,EAAE,WAAW;IACnB,MAAM,EAAE,cAAc;IACtB,QAAQ,EAAE,YAAY;IACtB,MAAM,EAAE,iCAAiC;CAC1C,CAAA;AAQD;;;;;;;;;GASG;AACH,SAAS,eAAe,CAAC,UAAkB;IACzC,yEAAyE;IACzE,0EAA0E;IAC1E,0BAA0B;IAC1B,OAAO,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC;QAC1D,CAAC,CAAC,qCAAqC;QACvC,CAAC,CAAC,UAAU,CAAA;AAChB,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,QAAgB,EAChB,SAAS,GAAW,gBAAgB;IAEpC,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,GAAG,CAAA;IACvD,MAAM,UAAU,GAAG,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;IAChD,MAAM,YAAY,GAAG,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,CAAA;IACzD,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,CAAA;IAE5E,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,CAAA;QACvC,MAAM,WAAW,GAAG,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,IAAI,0BAA0B,CAAA;QACpF,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,YAAY,EAAE,eAAe,CAAC,UAAU,CAAC,EAAE,CAAA;IACzE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC"}
@@ -0,0 +1,151 @@
1
+ import { type ApprovalQueue, type NotFoundLogReader, type ProviderClient, type RedirectWriter, type ThemeCreatorTargetTheme } from '@cogenta/agents';
2
+ import type { AgentConversationStoreLike, AgentRegistryLike, AgentRunnerLike, AgentSkillRegistryLike, ContentService, PromptTemplateRegistryLike, ProviderRegistryLike } from '@cogenta/api';
3
+ import type { AuditLog } from '@cogenta/auth';
4
+ import type { Logger, MediaStore } from '@cogenta/core';
5
+ import { type McpConnectionStore } from '@cogenta/mcp';
6
+ import { type CollectionDefinition } from '@cogenta/schema';
7
+ /**
8
+ * L22 tasks 1/1bis — where the runtime `@cogenta/agents` provides finally
9
+ * meets a running site. `@cogenta/agents` knows how to run an agent given a
10
+ * tool registry, a provider registry and stores for declarations/skills/
11
+ * provider config; it does not know how to build a `ContentServiceLike` out
12
+ * of this codebase's real `ContentService`, or where on disk a site keeps
13
+ * its data — that translation is this module's whole job, the same role
14
+ * `assistant.ts` already plays for L18's toolset.
15
+ *
16
+ * Tool availability is not gated by whether a provider is configured (R2):
17
+ * the tool registry, the agent/skill/provider stores, and every CRUD route
18
+ * all work with zero LLM provider set up. Only `AgentRunner.run()` — one
19
+ * synchronous provider lookup before any network call — refuses, per
20
+ * `agents/orchestrator.ts`'s own `AGENT_NO_PROVIDER` guarantee.
21
+ */
22
+ /**
23
+ * Exported for the same reason `PROVIDERS_SUBDIR` below is — `theme-wiring
24
+ * .ts` reads the "Cogenta Theme Creator" agent's own admin-configured
25
+ * `model.preferred`/`model.fallback` from a second `AgentDeclarationStore`
26
+ * instance pointed at this same directory, rather than duplicating a
27
+ * hardcoded guess at that agent's provider preference.
28
+ */
29
+ export declare const AGENTS_SUBDIR = "agents";
30
+ /**
31
+ * Exported so `theme-wiring.ts` can point its own `ProviderConfigStore` at
32
+ * the exact same directory `buildAgentRuntime` uses — two independent,
33
+ * file-backed store instances reading the same encrypted files, the same
34
+ * consistency model every other per-request store in this app already
35
+ * relies on. A second, differently-scoped constant here would have let the
36
+ * two silently drift apart, which is exactly the bug this constant's reuse
37
+ * closes (L26 task 5's theme generator answering "no provider" from a
38
+ * config file no admin who configured one through the UI ever touched).
39
+ */
40
+ export declare const PROVIDERS_SUBDIR = "providers";
41
+ export interface BuildAgentRuntimeOptions {
42
+ /** `.cogenta/agents-runtime` under the project root, by convention — see `runServe`. */
43
+ readonly dataDir: string;
44
+ /** For `deps.scan`, which reads this site's own `package.json`. */
45
+ readonly projectRoot: string;
46
+ readonly signingKey: string;
47
+ readonly site: {
48
+ readonly name: string;
49
+ readonly url?: string;
50
+ readonly locales: readonly string[];
51
+ readonly defaultLocale: string;
52
+ };
53
+ readonly contentService: ContentService;
54
+ readonly mediaStore: MediaStore;
55
+ readonly auditLog: AuditLog;
56
+ readonly logger: Logger;
57
+ /** The site's schema — for `content.collections`/`content.list` (L22 task 3) to know which collections have a public route, and to compute one. */
58
+ readonly collections: readonly CollectionDefinition[];
59
+ /** For `logs.read_not_found` (L22 task 3, the Site Monitor's own tool). */
60
+ readonly notFoundLog: NotFoundLogReader;
61
+ /** For `redirects.create` (L22 task 3). */
62
+ readonly redirects: RedirectWriter;
63
+ /**
64
+ * Injectable for tests — defaults to a fresh `createMemoryApprovalQueue()`.
65
+ * A non-reversible, side-effecting tool call (every core content/media
66
+ * write tool — `content.write_draft` included) always blocks on this
67
+ * queue regardless of an agent's own autonomy level (`with-autonomy.ts`'s
68
+ * `forcedApproval`, R6): nothing decides it on its own. A caller that
69
+ * wants to observe or decide pending requests (an approvals screen, a
70
+ * channel `/approve` command, or a test proving the *right* tool was
71
+ * proposed for a write) needs the same instance this runtime actually
72
+ * uses — hence this override and `AgentRuntimeAssembly.approvalQueue`
73
+ * below, rather than a queue this module keeps entirely to itself.
74
+ */
75
+ readonly approvalQueue?: ApprovalQueue;
76
+ /**
77
+ * Fiche 58 task 4 — external MCP connections this site has configured.
78
+ * Optional so a caller that builds a runtime without the registry (an
79
+ * older call site, a test) is unaffected: omitted, no MCP tool is ever
80
+ * wired in, exactly as if no connection existed.
81
+ */
82
+ readonly mcpConnections?: McpConnectionStore;
83
+ /**
84
+ * L26 task 5 — the "Cogenta Theme Creator" agent's own tool,
85
+ * `theme.propose_theme`. Absent whenever no LLM provider is configured
86
+ * (R2): the tool is then simply not registered, the same posture every
87
+ * other AI-backed piece of this runtime already takes (`createThemeWiring
88
+ * `'s own `generator` field, `AssistToolset`'s empty toolset). Built by
89
+ * `@cogenta/cli`'s `createThemeCreatorToolWiring` (`theme-wiring.ts`),
90
+ * which resolves the same `ProviderClient` and reads the same
91
+ * `availableThemes()` the appearance screen's own AI section already
92
+ * uses — never a second, independently-resolved client.
93
+ */
94
+ readonly themeCreator?: {
95
+ readonly resolveProvider: () => Promise<{
96
+ readonly client: ProviderClient;
97
+ readonly model: string;
98
+ } | undefined>;
99
+ readonly availableThemes: readonly ThemeCreatorTargetTheme[];
100
+ };
101
+ }
102
+ export interface AgentRuntimeAssembly {
103
+ readonly agentRegistry: AgentRegistryLike;
104
+ readonly agentRunner: AgentRunnerLike;
105
+ readonly providerRegistry: ProviderRegistryLike;
106
+ readonly skillRegistry: AgentSkillRegistryLike;
107
+ /** `/api/agents/:name/conversation` — one file store, same tier as the agent/skill/provider file stores below (R1). */
108
+ readonly conversations: AgentConversationStoreLike;
109
+ /** `/api/prompt-templates` (fiche 45) — the same store the assistant's `assist.*` tools resolve their instruction text against, so an edit here really does change what the next tool call sends the model. */
110
+ readonly promptTemplateRegistry: PromptTemplateRegistryLike;
111
+ /**
112
+ * Exposed so `serve.ts` can build the L22 task 3 notice source
113
+ * (`@cogenta/api`'s `createAgentApprovalsSource`) over the very same
114
+ * queue `co-pilot` autonomy files into — never a second queue that would
115
+ * disagree with what the runner actually proposed. Also the exact queue
116
+ * L22 task 2's channel/chat surfaces (or a future approvals REST route)
117
+ * would decide a pending write against — see
118
+ * `BuildAgentRuntimeOptions.approvalQueue`.
119
+ */
120
+ readonly approvalQueue: ApprovalQueue;
121
+ readonly summary: string;
122
+ /**
123
+ * Fiche 58 task 4 — rebuilds the MCP portion of this runtime's tool
124
+ * registry from `BuildAgentRuntimeOptions.mcpConnections`'s *current*
125
+ * state and swaps it in live. `serve.ts`'s `mcp-connections-router.ts`
126
+ * `onMutated` hook calls this after every create/enable/disable/remove/
127
+ * test/expose-tools mutation — the same "no restart needed" guarantee
128
+ * `/api/providers` already gives (`createLiveProviderRegistry.refresh`).
129
+ * A no-op when `mcpConnections` was never supplied.
130
+ */
131
+ refreshMcpTools(): Promise<void>;
132
+ /**
133
+ * Closes every `McpClient` (and removes every sandbox working directory)
134
+ * the *current* MCP tool assembly holds. A no-op when no MCP connection
135
+ * was ever wired in. Call once, on server shutdown (`serve.ts`'s
136
+ * `dispose`) — never mid-run, which would pull a live tool out from
137
+ * under an agent still using it.
138
+ */
139
+ mcpDispose(): Promise<void>;
140
+ }
141
+ /**
142
+ * Assembles the whole L22 task 1/1bis runtime for one site: three file
143
+ * stores (agents, agent skills, provider config — all under `dataDir`, R1),
144
+ * the real tool registry, and the one `AgentRunner` this site's `/api/agents`
145
+ * `run` route and any future trigger (cron, channel, chat — later tasks)
146
+ * will share. Idempotent: safe to call on every `cogenta serve` boot,
147
+ * including an upgrade from a pre-L22 site (`ensureBuiltinAgents`/
148
+ * `ensureBuiltinAgentSkills` only ever add what is missing).
149
+ */
150
+ export declare function buildAgentRuntime(options: BuildAgentRuntimeOptions): Promise<AgentRuntimeAssembly>;
151
+ //# sourceMappingURL=agent-runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-runtime.d.ts","sourceRoot":"","sources":["../../src/commands/agent-runtime.ts"],"names":[],"mappings":"AACA,OAAO,EAKL,KAAK,aAAa,EAoClB,KAAK,iBAAiB,EAEtB,KAAK,cAAc,EAEnB,KAAK,cAAc,EAEnB,KAAK,uBAAuB,EAG7B,MAAM,iBAAiB,CAAA;AAExB,OAAO,KAAK,EACV,0BAA0B,EAC1B,iBAAiB,EACjB,eAAe,EACf,sBAAsB,EACtB,cAAc,EACd,0BAA0B,EAC1B,oBAAoB,EACrB,MAAM,cAAc,CAAA;AACrB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AACvD,OAAO,EAA2B,KAAK,kBAAkB,EAAE,MAAM,cAAc,CAAA;AAC/E,OAAO,EAAa,KAAK,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AAEtE;;;;;;;;;;;;;;GAcG;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,WAAW,CAAA;AAErC;;;;;;;;;GASG;AACH,eAAO,MAAM,gBAAgB,cAAc,CAAA;AAc3C,MAAM,WAAW,wBAAwB;IACvC,wFAAwF;IACxF,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,mEAAmE;IACnE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,IAAI,EAAE;QACb,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;QACrB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAA;QACrB,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAA;QACnC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;KAC/B,CAAA;IACD,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAA;IACvC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAA;IAC/B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAA;IAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,mJAAmJ;IACnJ,QAAQ,CAAC,WAAW,EAAE,SAAS,oBAAoB,EAAE,CAAA;IACrD,2EAA2E;IAC3E,QAAQ,CAAC,WAAW,EAAE,iBAAiB,CAAA;IACvC,2CAA2C;IAC3C,QAAQ,CAAC,SAAS,EAAE,cAAc,CAAA;IAClC;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,CAAA;IACtC;;;;;OAKG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,kBAAkB,CAAA;IAC5C;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE;QACtB,QAAQ,CAAC,eAAe,EAAE,MAAM,OAAO,CACrC;YAAE,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;YAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;SAAE,GAAG,SAAS,CACxE,CAAA;QACD,QAAQ,CAAC,eAAe,EAAE,SAAS,uBAAuB,EAAE,CAAA;KAC7D,CAAA;CACF;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,aAAa,EAAE,iBAAiB,CAAA;IACzC,QAAQ,CAAC,WAAW,EAAE,eAAe,CAAA;IACrC,QAAQ,CAAC,gBAAgB,EAAE,oBAAoB,CAAA;IAC/C,QAAQ,CAAC,aAAa,EAAE,sBAAsB,CAAA;IAC9C,uHAAuH;IACvH,QAAQ,CAAC,aAAa,EAAE,0BAA0B,CAAA;IAClD,+MAA+M;IAC/M,QAAQ,CAAC,sBAAsB,EAAE,0BAA0B,CAAA;IAC3D;;;;;;;;OAQG;IACH,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAA;IACrC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB;;;;;;;;OAQG;IACH,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAChC;;;;;;OAMG;IACH,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CAC5B;AAgZD;;;;;;;;GAQG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,wBAAwB,GAChC,OAAO,CAAC,oBAAoB,CAAC,CA4J/B"}