mirror of
https://gitcode.com/gh_mirrors/se/Semi.Avalonia
synced 2026-03-04 00:35:44 +08:00
5 lines
194 KiB
JavaScript
Executable File
5 lines
194 KiB
JavaScript
Executable File
//! Licensed to the .NET Foundation under one or more agreements.
|
|
//! The .NET Foundation licenses this file to you under the MIT license.
|
|
var e="10.0.2",t="Release",n=!1;const r=[[!0,"mono_wasm_register_root","number",["number","number","string"]],[!0,"mono_wasm_deregister_root",null,["number"]],[!0,"mono_wasm_string_get_data_ref",null,["number","number","number","number"]],[!0,"mono_wasm_set_is_debugger_attached","void",["bool"]],[!0,"mono_wasm_send_dbg_command","bool",["number","number","number","number","number"]],[!0,"mono_wasm_send_dbg_command_with_parms","bool",["number","number","number","number","number","number","string"]],[!0,"mono_wasm_setenv",null,["string","string"]],[!0,"mono_wasm_parse_runtime_options",null,["number","number"]],[!0,"mono_wasm_strdup","number",["string"]],[!0,"mono_background_exec",null,[]],[!0,"mono_wasm_ds_exec",null,[]],[!0,"mono_wasm_execute_timer",null,[]],[!0,"mono_wasm_load_icu_data","number",["number"]],[!1,"mono_wasm_add_assembly","number",["string","number","number"]],[!0,"mono_wasm_add_satellite_assembly","void",["string","string","number","number"]],[!1,"mono_wasm_load_runtime",null,["number","number","number","number"]],[!0,"mono_wasm_change_debugger_log_level","void",["number"]],[!0,"mono_wasm_assembly_load","number",["string"]],[!0,"mono_wasm_assembly_find_class","number",["number","string","string"]],[!0,"mono_wasm_assembly_find_method","number",["number","string","number"]],[!0,"mono_wasm_string_from_utf16_ref","void",["number","number","number"]],[!0,"mono_wasm_intern_string_ref","void",["number"]],[!1,"mono_wasm_exit","void",["number"]],[!0,"mono_wasm_getenv","number",["string"]],[!0,"mono_wasm_set_main_args","void",["number","number"]],[()=>!ct.emscriptenBuildOptions.enableAotProfiler,"mono_wasm_profiler_init_aot","void",["string"]],[()=>!ct.emscriptenBuildOptions.enableDevToolsProfiler,"mono_wasm_profiler_init_browser_devtools","void",["string"]],[()=>!ct.emscriptenBuildOptions.enableLogProfiler,"mono_wasm_profiler_init_log","void",["string"]],[!1,"mono_wasm_exec_regression","number",["number","string"]],[!1,"mono_wasm_invoke_jsexport","void",["number","number"]],[!0,"mono_wasm_write_managed_pointer_unsafe","void",["number","number"]],[!0,"mono_wasm_copy_managed_pointer","void",["number","number"]],[!0,"mono_wasm_i52_to_f64","number",["number","number"]],[!0,"mono_wasm_u52_to_f64","number",["number","number"]],[!0,"mono_wasm_f64_to_i52","number",["number","number"]],[!0,"mono_wasm_f64_to_u52","number",["number","number"]],[!0,"mono_wasm_method_get_name","number",["number"]],[!0,"mono_wasm_method_get_name_ex","number",["number"]],[!0,"mono_wasm_method_get_full_name","number",["number"]],[!0,"mono_wasm_gc_lock","void",[]],[!0,"mono_wasm_gc_unlock","void",[]],[!0,"mono_wasm_get_i32_unaligned","number",["number"]],[!0,"mono_wasm_get_f32_unaligned","number",["number"]],[!0,"mono_wasm_get_f64_unaligned","number",["number"]],[!0,"mono_wasm_read_as_bool_or_null_unsafe","number",["number"]],[!0,"mono_jiterp_trace_bailout","void",["number"]],[!0,"mono_jiterp_get_trace_bailout_count","number",["number"]],[!0,"mono_jiterp_value_copy","void",["number","number","number"]],[!0,"mono_jiterp_get_member_offset","number",["number"]],[!0,"mono_jiterp_encode_leb52","number",["number","number","number"]],[!0,"mono_jiterp_encode_leb64_ref","number",["number","number","number"]],[!0,"mono_jiterp_encode_leb_signed_boundary","number",["number","number","number"]],[!0,"mono_jiterp_write_number_unaligned","void",["number","number","number"]],[!0,"mono_jiterp_type_is_byref","number",["number"]],[!0,"mono_jiterp_get_size_of_stackval","number",[]],[!0,"mono_jiterp_parse_option","number",["string"]],[!0,"mono_jiterp_get_options_as_json","number",[]],[!0,"mono_jiterp_get_option_as_int","number",["string"]],[!0,"mono_jiterp_get_options_version","number",[]],[!0,"mono_jiterp_adjust_abort_count","number",["number","number"]],[!0,"mono_jiterp_register_jit_call_thunk","void",["number","number"]],[!0,"mono_jiterp_type_get_raw_value_size","number",["number"]],[!0,"mono_jiterp_get_signature_has_this","number",["number"]],[!0,"mono_jiterp_get_signature_return_type","number",["number"]],[!0,"mono_jiterp_get_signature_param_count","number",["number"]],[!0,"mono_jiterp_get_signature_params","number",["number"]],[!0,"mono_jiterp_type_to_ldind","number",["number"]],[!0,"mono_jiterp_type_to_stind","number",["number"]],[!0,"mono_jiterp_imethod_to_ftnptr","number",["number"]],[!0,"mono_jiterp_debug_count","number",[]],[!0,"mono_jiterp_get_trace_hit_count","number",["number"]],[!0,"mono_jiterp_get_polling_required_address","number",[]],[!0,"mono_jiterp_get_rejected_trace_count","number",[]],[!0,"mono_jiterp_boost_back_branch_target","void",["number"]],[!0,"mono_jiterp_is_imethod_var_address_taken","number",["number","number"]],[!0,"mono_jiterp_get_opcode_value_table_entry","number",["number"]],[!0,"mono_jiterp_get_simd_intrinsic","number",["number","number"]],[!0,"mono_jiterp_get_simd_opcode","number",["number","number"]],[!0,"mono_jiterp_get_arg_offset","number",["number","number","number"]],[!0,"mono_jiterp_get_opcode_info","number",["number","number"]],[!0,"mono_wasm_is_zero_page_reserved","number",[]],[!0,"mono_jiterp_is_special_interface","number",["number"]],[!0,"mono_jiterp_initialize_table","void",["number","number","number"]],[!0,"mono_jiterp_allocate_table_entry","number",["number"]],[!0,"mono_jiterp_get_interp_entry_func","number",["number"]],[!0,"mono_jiterp_get_counter","number",["number"]],[!0,"mono_jiterp_modify_counter","number",["number","number"]],[!0,"mono_jiterp_tlqueue_next","number",["number"]],[!0,"mono_jiterp_tlqueue_add","number",["number","number"]],[!0,"mono_jiterp_tlqueue_clear","void",["number"]],[!0,"mono_jiterp_begin_catch","void",["number"]],[!0,"mono_jiterp_end_catch","void",[]],[!0,"mono_interp_pgo_load_table","number",["number","number"]],[!0,"mono_interp_pgo_save_table","number",["number","number"]],[()=>!ct.emscriptenBuildOptions.enableEventPipe&&!ct.emscriptenBuildOptions.enableDevToolsProfiler,"mono_jiterp_prof_enter","void",["number","number"]],[()=>!ct.emscriptenBuildOptions.enableEventPipe&&!ct.emscriptenBuildOptions.enableDevToolsProfiler,"mono_jiterp_prof_samplepoint","void",["number","number"]],[()=>!ct.emscriptenBuildOptions.enableEventPipe&&!ct.emscriptenBuildOptions.enableDevToolsProfiler,"mono_jiterp_prof_leave","void",["number","number"]]],o={},s=o,a=o,i=["void","number",null];function c(e,t,n,r){let o=void 0===r&&i.indexOf(t)>=0&&(!n||n.every((e=>i.indexOf(e)>=0)))&&Ke.wasmExports?Ke.wasmExports[e]:void 0;if(o&&n&&o.length!==n.length&&(He(`argument count mismatch for cwrap ${e}`),o=void 0),"function"!=typeof o&&(o=Ke.cwrap(e,t,n,r)),"function"!=typeof o)throw new Error(`cwrap ${e} not found or not a function`);return o}const l=0,p=0,u=0,d=BigInt("9223372036854775807"),f=BigInt("-9223372036854775808");function _(e){return Ke._malloc(e)>>>0}function m(e){Ke._free(e)}function h(e,t,n){if(!Number.isSafeInteger(e))throw new Error(`Assert failed: Value is not an integer: ${e} (${typeof e})`);if(!(e>=t&&e<=n))throw new Error(`Assert failed: Overflow: value ${e} is out of ${t} ${n} range`)}function g(e,t){K().fill(0,e,e+t)}function b(e,t){const n=!!t;"number"==typeof t&&h(t,0,1),Ke.HEAP32[e>>>2]=n?1:0}function y(e,t){const n=!!t;"number"==typeof t&&h(t,0,1),Ke.HEAPU8[e]=n?1:0}function w(e,t){h(t,0,255),Ke.HEAPU8[e]=t}function k(e,t){h(t,0,65535),Ke.HEAPU16[e>>>1]=t}function S(e,t){h(t,0,4294967295),Ke.HEAPU32[e>>>2]=t}function v(e,t){h(t,-128,127),Ke.HEAP8[e]=t}function U(e,t){h(t,-32768,32767),Ke.HEAP16[e>>>1]=t}function T(e,t){h(t,-2147483648,2147483647),Ke.HEAP32[e>>>2]=t}function E(e){if(0!==e)switch(e){case 1:throw new Error("value was not an integer");case 2:throw new Error("value out of range");default:throw new Error("unknown internal error")}}function x(e,t){if(!Number.isSafeInteger(t))throw new Error(`Assert failed: Value is not a safe integer: ${t} (${typeof t})`);E(o.mono_wasm_f64_to_i52(e,t))}function I(e,t){if(!Number.isSafeInteger(t))throw new Error(`Assert failed: Value is not a safe integer: ${t} (${typeof t})`);if(!(t>=0))throw new Error("Assert failed: Can't convert negative Number into UInt64");E(o.mono_wasm_f64_to_u52(e,t))}function A(e,t){if("bigint"!=typeof t)throw new Error(`Assert failed: Value is not an bigint: ${t} (${typeof t})`);if(!(t>=f&&t<=d))throw new Error(`Assert failed: Overflow: value ${t} is out of ${f} ${d} range`);Ke.HEAP64[e>>>3]=t}function j(e,t){if("number"!=typeof t)throw new Error(`Assert failed: Value is not a Number: ${t} (${typeof t})`);Ke.HEAPF32[e>>>2]=t}function $(e,t){if("number"!=typeof t)throw new Error(`Assert failed: Value is not a Number: ${t} (${typeof t})`);Ke.HEAPF64[e>>>3]=t}let L=!0;function R(e){const t=Ke.HEAPU32[e>>>2];return t>1&&L&&(L=!1,We(`getB32: value at ${e} is not a boolean, but a number: ${t}`)),!!t}function B(e){return!!Ke.HEAPU8[e]}function N(e){return Ke.HEAPU8[e]}function O(e){return Ke.HEAPU16[e>>>1]}function C(e){return Ke.HEAPU32[e>>>2]}function D(e,t){return e[t>>>2]}function F(e){return o.mono_wasm_get_i32_unaligned(e)}function P(e){return o.mono_wasm_get_i32_unaligned(e)>>>0}function M(e){return Ke.HEAP8[e]}function z(e){return Ke.HEAP16[e>>>1]}function V(e){return Ke.HEAP32[e>>>2]}function W(e){const t=o.mono_wasm_i52_to_f64(e,ct._i52_error_scratch_buffer);return E(V(ct._i52_error_scratch_buffer)),t}function H(e){const t=o.mono_wasm_u52_to_f64(e,ct._i52_error_scratch_buffer);return E(V(ct._i52_error_scratch_buffer)),t}function q(e){return Ke.HEAP64[e>>>3]}function G(e){return Ke.HEAPF32[e>>>2]}function J(e){return Ke.HEAPF64[e>>>3]}function X(){return Ke.HEAP8}function Q(){return Ke.HEAP16}function Y(){return Ke.HEAP32}function Z(){return Ke.HEAP64}function K(){return Ke.HEAPU8}function ee(){return Ke.HEAPU16}function te(){return Ke.HEAPU32}function ne(){return Ke.HEAPF32}function re(){return Ke.HEAPF64}function oe(e,t){return e>>>t}let se=!1;function ae(){if(se)throw new Error("GC is already locked");se=!0}function ie(){if(!se)throw new Error("GC is not locked");se=!1}const ce=8192;let le=null,pe=null,ue=0;const de=[],fe=[];function _e(e,t){if(e<=0)throw new Error("capacity >= 1");const n=4*(e|=0),r=_(n);if(r%4!=0)throw new Error("Malloc returned an unaligned offset");return g(r,n),new me(r,e,!0,t)}class me{constructor(e,t,n,r){const s=4*t;this.__offset=e,this.__offset32=e>>>2,this.__count=t,this.length=t,this.__handle=o.mono_wasm_register_root(e,s,r||"noname"),this.__ownsAllocation=n}_throw_index_out_of_range(){throw new Error("index out of range")}_check_in_range(e){(e>=this.__count||e<0)&&this._throw_index_out_of_range()}get_address(e){return this._check_in_range(e),this.__offset+4*e}get_address_32(e){return this._check_in_range(e),this.__offset32+e}get(e){this._check_in_range(e);const t=this.get_address_32(e);return te()[t]}set(e,t){const n=this.get_address(e);return o.mono_wasm_write_managed_pointer_unsafe(n,t),t}copy_value_from_address(e,t){const n=this.get_address(e);o.mono_wasm_copy_managed_pointer(n,t)}_unsafe_get(e){return te()[this.__offset32+e]}_unsafe_set(e,t){const n=this.__offset+e;o.mono_wasm_write_managed_pointer_unsafe(n,t)}clear(){this.__offset&&g(this.__offset,4*this.__count)}release(){this.__offset&&this.__ownsAllocation&&(o.mono_wasm_deregister_root(this.__offset),g(this.__offset,4*this.__count),m(this.__offset)),this.__handle=this.__offset=this.__count=this.__offset32=0}toString(){return`[root buffer @${this.get_address(0)}, size ${this.__count} ]`}}class he{constructor(e,t){this.__buffer=e,this.__index=t}get_address(){return this.__buffer.get_address(this.__index)}get_address_32(){return this.__buffer.get_address_32(this.__index)}get address(){return this.__buffer.get_address(this.__index)}get(){return this.__buffer._unsafe_get(this.__index)}set(e){const t=this.__buffer.get_address(this.__index);return o.mono_wasm_write_managed_pointer_unsafe(t,e),e}copy_from(e){const t=e.address,n=this.address;o.mono_wasm_copy_managed_pointer(n,t)}copy_to(e){const t=this.address,n=e.address;o.mono_wasm_copy_managed_pointer(n,t)}copy_from_address(e){const t=this.address;o.mono_wasm_copy_managed_pointer(t,e)}copy_to_address(e){const t=this.address;o.mono_wasm_copy_managed_pointer(e,t)}get value(){return this.get()}set value(e){this.set(e)}valueOf(){throw new Error("Implicit conversion of roots to pointers is no longer supported. Use .value or .address as appropriate")}clear(){const e=this.__buffer.get_address_32(this.__index);te()[e]=0}release(){if(!this.__buffer)throw new Error("No buffer");var e;de.length>128?(void 0!==(e=this.__index)&&(le.set(e,0),pe[ue]=e,ue++),this.__buffer=null,this.__index=0):(this.set(0),de.push(this))}toString(){return`[root @${this.address}]`}}class ge{constructor(e){this.__external_address=0,this.__external_address_32=0,this._set_address(e)}_set_address(e){this.__external_address=e,this.__external_address_32=e>>>2}get address(){return this.__external_address}get_address(){return this.__external_address}get_address_32(){return this.__external_address_32}get(){return te()[this.__external_address_32]}set(e){return o.mono_wasm_write_managed_pointer_unsafe(this.__external_address,e),e}copy_from(e){const t=e.address,n=this.__external_address;o.mono_wasm_copy_managed_pointer(n,t)}copy_to(e){const t=this.__external_address,n=e.address;o.mono_wasm_copy_managed_pointer(n,t)}copy_from_address(e){const t=this.__external_address;o.mono_wasm_copy_managed_pointer(t,e)}copy_to_address(e){const t=this.__external_address;o.mono_wasm_copy_managed_pointer(e,t)}get value(){return this.get()}set value(e){this.set(e)}valueOf(){throw new Error("Implicit conversion of roots to pointers is no longer supported. Use .value or .address as appropriate")}clear(){te()[this.__external_address>>>2]=0}release(){fe.length<128&&fe.push(this)}toString(){return`[external root @${this.address}]`}}const be=new Map,ye="";let we;const ke=new Map;let Se,ve,Ue,Te,Ee,xe=0,Ie=null,Ae=0;function je(e){if(void 0===Te){const t=Ke.lengthBytesUTF8(e),n=new Uint8Array(t);return Ke.stringToUTF8Array(e,n,0,t),n}return Te.encode(e)}function $e(e){const t=Ke.lengthBytesUTF8(e)+1,n=_(t),r=K().subarray(n,n+t);return Ke.stringToUTF8Array(e,r,0,t),r[t-1]=0,n}function Le(e){const t=K();return function(e,t,n){const r=t+n;let o=t;for(;e[o]&&!(o>=r);)++o;if(o-t<=16)return Ke.UTF8ArrayToString(e,t,n);if(void 0===Ue)return Ke.UTF8ArrayToString(e,t,n);const s=Fe(e,t,o);return Ue.decode(s)}(t,e,t.length-e)}function Re(e,t){if(Se){const n=Fe(K(),e,t);return Se.decode(n)}return function(e,t){let n="";const r=ee();for(let o=e;o<t;o+=2){const e=r[o>>>1];n+=String.fromCharCode(e)}return n}(e,t)}function Be(e,t,n){const r=ee(),o=n.length;for(let c=0;c<o&&(s=r,a=e,h(i=n.charCodeAt(c),0,65535),s[a>>>1]=i,!((e+=2)>=t));c++);var s,a,i}function Ne(e){const t=2*(e.length+1),n=_(t);return g(n,2*e.length),Be(n,n+t,e),n}function Oe(e){if(e.value===p)return null;const t=we+0,n=we+4,r=we+8;let s;o.mono_wasm_string_get_data_ref(e.address,t,n,r);const a=te(),i=D(a,n),c=D(a,t),l=D(a,r);if(l&&(s=ke.get(e.value)),void 0===s&&(i&&c?(s=Re(c,c+i),l&&ke.set(e.value,s)):s=ye),void 0===s)throw new Error(`internal error when decoding string at location ${e.value}`);return s}function Ce(e,t){let n;if("symbol"==typeof e?(n=e.description,"string"!=typeof n&&(n=Symbol.keyFor(e)),"string"!=typeof n&&(n="<unknown Symbol>")):"string"==typeof e&&(n=e),"string"!=typeof n)throw new Error(`Argument to stringToInternedMonoStringRoot must be a string but was ${e}`);if(0===n.length&&xe)return void t.set(xe);const r=be.get(n);r?t.set(r):(De(n,t),function(e,t,n){if(!t.value)throw new Error("null pointer passed to _store_string_in_intern_table");Ae>=8192&&(Ie=null),Ie||(Ie=_e(8192,"interned strings"),Ae=0);const r=Ie,s=Ae++;if(o.mono_wasm_intern_string_ref(t.address),!t.value)throw new Error("mono_wasm_intern_string_ref produced a null pointer");be.set(e,t.value),ke.set(t.value,e),0!==e.length||xe||(xe=t.value),r.copy_value_from_address(s,t.address)}(n,t))}function De(e,t){const n=2*(e.length+1),r=_(n);Be(r,r+n,e),o.mono_wasm_string_from_utf16_ref(r,e.length,t.address),m(r)}function Fe(e,t,n){return e.buffer,e.subarray(t,n)}function Pe(e){if(e===p)return null;Ee.value=e;const t=Oe(Ee);return Ee.value=p,t}let Me="MONO_WASM: ";function ze(e){if(ct.diagnosticTracing){const t="function"==typeof e?e():e;console.debug(Me+t)}}function Ve(e,...t){console.info(Me+e,...t)}function We(e,...t){console.warn(Me+e,...t)}function He(e,...t){if(t&&t.length>0&&t[0]&&"object"==typeof t[0]){if(t[0].silent)return;if(t[0].toString)return void console.error(Me+e,t[0].toString())}console.error(Me+e,...t)}const qe=new Map;let Ge;const Je=[];function Xe(e){try{if(Ye(),0==qe.size)return e;const t=e;for(let n=0;n<Je.length;n++){const r=e.replace(new RegExp(Je[n],"g"),((e,...t)=>{const n=t.find((e=>"object"==typeof e&&void 0!==e.replaceSection));if(void 0===n)return e;const r=n.funcNum,o=n.replaceSection,s=qe.get(Number(r));return void 0===s?e:e.replace(o,`${s} (${o})`)}));if(r!==t)return r}return t}catch(t){return console.debug(`failed to symbolicate: ${t}`),e}}function Qe(e){let t;return t="string"==typeof e?e:null==e||void 0===e.stack?(new Error).stack+"":e.stack+"",Xe(t)}function Ye(){if(!Ge)return;Je.push(/at (?<replaceSection>[^:()]+:wasm-function\[(?<funcNum>\d+)\]:0x[a-fA-F\d]+)((?![^)a-fA-F\d])|$)/),Je.push(/(?:WASM \[[\da-zA-Z]+\], (?<replaceSection>function #(?<funcNum>[\d]+) \(''\)))/),Je.push(/(?<replaceSection>[a-z]+:\/\/[^ )]*:wasm-function\[(?<funcNum>\d+)\]:0x[a-fA-F\d]+)/),Je.push(/(?<replaceSection><[^ >]+>[.:]wasm-function\[(?<funcNum>[0-9]+)\])/);const e=Ge;Ge=void 0;try{e.split(/[\r\n]/).forEach((e=>{const t=e.split(/:/);t.length<2||(t[1]=t.splice(1).join(":"),qe.set(Number(t[0]),t[1]))})),lt.diagnosticTracing&&ze(`Loaded ${qe.size} symbols`)}catch(e){We(`Failed to load symbol map: ${e}`)}}function Ze(){return Ye(),[...qe.values()]}let Ke,et;const tt="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,nt="function"==typeof importScripts,rt=nt&&"undefined"!=typeof dotnetSidecar,ot=nt&&!rt,st="object"==typeof window||nt&&!tt,at=!st&&!tt;let it=null,ct=null,lt=null,pt=null,ut=!1;function dt(e,t){ct.emscriptenBuildOptions=t,e.isPThread,ct.quit=e.quit_,ct.ExitStatus=e.ExitStatus,ct.getMemory=e.getMemory,ct.getWasmIndirectFunctionTable=e.getWasmIndirectFunctionTable,ct.updateMemoryViews=e.updateMemoryViews}function ft(e){if(ut)throw new Error("Runtime module already loaded");ut=!0,Ke=e.module,et=e.internal,ct=e.runtimeHelpers,lt=e.loaderHelpers,pt=e.diagnosticHelpers,it=e.api;const t={gitHash:"44525024595742ebe09023abe709df51de65009b",coreAssetsInMemory:_t(),allAssetsInMemory:_t(),dotnetReady:_t(),afterInstantiateWasm:_t(),beforePreInit:_t(),afterPreInit:_t(),afterPreRun:_t(),beforeOnRuntimeInitialized:_t(),afterMonoStarted:_t(),afterDeputyReady:_t(),afterIOStarted:_t(),afterOnRuntimeInitialized:_t(),afterPostRun:_t(),nativeAbort:e=>{throw e||new Error("abort")},nativeExit:e=>{throw new Error("exit:"+e)}};Object.assign(ct,t),Object.assign(e.module.config,{}),Object.assign(e.api,{Module:e.module,...e.module}),Object.assign(e.api,{INTERNAL:e.internal})}function _t(e,t){return lt.createPromiseController(e,t)}function mt(e,t){if(e)return;const n="Assert failed: "+("function"==typeof t?t():t),r=new Error(n);He(n,r),ct.nativeAbort(r)}function ht(e,t,n){const r=function(e,t,n){let r,o=0;r=e.length-o;const s={read:function(){if(o>=r)return null;const t=e[o];return o+=1,t}};return Object.defineProperty(s,"eof",{get:function(){return o>=r},configurable:!0,enumerable:!0}),s}(e);let o="",s=0,a=0,i=0,c=0,l=0,p=0;for(;s=r.read(),a=r.read(),i=r.read(),null!==s;)null===a&&(a=0,l+=1),null===i&&(i=0,l+=1),p=s<<16|a<<8|i,c=(16777215&p)>>18,o+=gt[c],c=(262143&p)>>12,o+=gt[c],l<2&&(c=(4095&p)>>6,o+=gt[c]),2===l?o+="==":1===l?o+="=":(c=63&p,o+=gt[c]);return o}const gt=["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","0","1","2","3","4","5","6","7","8","9","+","/"],bt=new Map;bt.remove=function(e){const t=this.get(e);return this.delete(e),t};let yt,wt,kt,St={},vt=0,Ut=-1;function mono_wasm_fire_debugger_agent_message_with_data_to_pause(e){console.assert(!0,`mono_wasm_fire_debugger_agent_message_with_data ${e}`);debugger}function Tt(e){e.length>Ut&&(yt&&m(yt),Ut=Math.max(e.length,Ut,256),yt=_(Ut));const t=atob(e),n=K();for(let e=0;e<t.length;e++)n[yt+e]=t.charCodeAt(e)}function Et(e,t,n,r,s,a,i){Tt(r),o.mono_wasm_send_dbg_command_with_parms(e,t,n,yt,s,a,i.toString());const{res_ok:c,res:l}=bt.remove(e);if(!c)throw new Error("Failed on mono_wasm_send_dbg_command_with_parms");return l}function xt(e,t,n,r){Tt(r),o.mono_wasm_send_dbg_command(e,t,n,yt,r.length);const{res_ok:s,res:a}=bt.remove(e);if(!s)throw new Error("Failed on mono_wasm_send_dbg_command");return a}function It(){const{res_ok:e,res:t}=bt.remove(0);if(!e)throw new Error("Failed on mono_wasm_get_dbg_command_info");return t}function At(){}function jt(){o.mono_wasm_set_is_debugger_attached(!1)}function $t(e){o.mono_wasm_change_debugger_log_level(e)}function Lt(e,t={}){if("object"!=typeof e)throw new Error(`event must be an object, but got ${JSON.stringify(e)}`);if(void 0===e.eventName)throw new Error(`event.eventName is a required parameter, in event: ${JSON.stringify(e)}`);if("object"!=typeof t)throw new Error(`args must be an object, but got ${JSON.stringify(t)}`);console.debug("mono_wasm_debug_event_raised:aef14bca-5519-4dfe-b35a-f867abc123ae",JSON.stringify(e),JSON.stringify(t))}function Rt(){-1==ct.waitForDebugger&&(ct.waitForDebugger=1),o.mono_wasm_set_is_debugger_attached(!0)}function Bt(e){if(null!=e.arguments&&!Array.isArray(e.arguments))throw new Error(`"arguments" should be an array, but was ${e.arguments}`);const t=e.objectId,n=e.details;let r={};if(t.startsWith("dotnet:cfo_res:")){if(!(t in St))throw new Error(`Unknown object id ${t}`);r=St[t]}else r=function(e,t){if(e.startsWith("dotnet:array:")){let e;if(void 0===t.items)return e=t.map((e=>e.value)),e;if(void 0===t.dimensionsDetails||1===t.dimensionsDetails.length)return e=t.items.map((e=>e.value)),e}const n={};return Object.keys(t).forEach((e=>{const r=t[e];void 0!==r.get?Object.defineProperty(n,r.name,{get:()=>xt(r.get.id,r.get.commandSet,r.get.command,r.get.buffer),set:function(e){return Et(r.set.id,r.set.commandSet,r.set.command,r.set.buffer,r.set.length,r.set.valtype,e),!0}}):void 0!==r.set?Object.defineProperty(n,r.name,{get:()=>r.value,set:function(e){return Et(r.set.id,r.set.commandSet,r.set.command,r.set.buffer,r.set.length,r.set.valtype,e),!0}}):n[r.name]=r.value})),n}(t,n);const o=null!=e.arguments?e.arguments.map((e=>JSON.stringify(e.value))):[],s=`const fn = ${e.functionDeclaration}; return fn.apply(proxy, [${o}]);`,a=new Function("proxy",s)(r);if(void 0===a)return{type:"undefined"};if(Object(a)!==a)return"object"==typeof a&&null==a?{type:typeof a,subtype:`${a}`,value:null}:{type:typeof a,description:`${a}`,value:`${a}`};if(e.returnByValue&&null==a.subtype)return{type:"object",value:a};if(Object.getPrototypeOf(a)==Array.prototype){const e=Ot(a);return{type:"object",subtype:"array",className:"Array",description:`Array(${a.length})`,objectId:e}}return void 0!==a.value||void 0!==a.subtype?a:a==r?{type:"object",className:"Object",description:"Object",objectId:t}:{type:"object",className:"Object",description:"Object",objectId:Ot(a)}}function Nt(e,t={}){return function(e,t){if(!(e in St))throw new Error(`Could not find any object with id ${e}`);const n=St[e],r=Object.getOwnPropertyDescriptors(n);t.accessorPropertiesOnly&&Object.keys(r).forEach((e=>{void 0===r[e].get&&Reflect.deleteProperty(r,e)}));const o=[];return Object.keys(r).forEach((e=>{let t;const n=r[e];t="object"==typeof n.value?Object.assign({name:e},n):void 0!==n.value?{name:e,value:Object.assign({type:typeof n.value,description:""+n.value},n)}:void 0!==n.get?{name:e,get:{className:"Function",description:`get ${e} () {}`,type:"function"}}:{name:e,value:{type:"symbol",value:"<Unknown>",description:"<Unknown>"}},o.push(t)})),{__value_as_json_string__:JSON.stringify(o)}}(`dotnet:cfo_res:${e}`,t)}function Ot(e){const t="dotnet:cfo_res:"+vt++;return St[t]=e,t}function Ct(e){e in St&&delete St[e]}let Dt=!1;function Ft(){if(Dt)return globalThis.performance.now()}function Pt(e,t,n){if(Dt&&e){const r=st?{start:e}:{startTime:e},o=n?`${t}${n} `:t;globalThis.performance.measure(o,r)}}const Mt=new Map;function zt(e,t,n){if(0===t||1===t||2===t||26===t)return;let r,o,s,a;o=to(Cn(e)),s=to(Dn(e)),a=to(Fn(e));const i=On(e);r=Vt(i),19===t&&(t=i);const c=Vt(t),l=Cn(e),p=n*In;return e=>c(e+p,l,r,o,s,a)}function Vt(e){if(0===e||1===e)return;const t=vn.get(e);return t&&"function"==typeof t||mt(!1,`ERR41: Unknown converter for type ${e}. ${Kr}`),t}function Wt(e){return 0==zn(e)?null:function(e){return e||mt(!1,"Null arg"),B(e)}(e)}function Ht(e){return 0==zn(e)?null:function(e){return e||mt(!1,"Null arg"),N(e)}(e)}function qt(e){return 0==zn(e)?null:function(e){return e||mt(!1,"Null arg"),O(e)}(e)}function Gt(e){return 0==zn(e)?null:function(e){return e||mt(!1,"Null arg"),z(e)}(e)}function Jt(e){return 0==zn(e)?null:function(e){return e||mt(!1,"Null arg"),V(e)}(e)}function Xt(e){return 0==zn(e)?null:function(e){return e||mt(!1,"Null arg"),J(e)}(e)}function Qt(e){return 0==zn(e)?null:function(e){return e||mt(!1,"Null arg"),q(e)}(e)}function Yt(e){return 0==zn(e)?null:function(e){return e||mt(!1,"Null arg"),G(e)}(e)}function Zt(e){return 0==zn(e)?null:function(e){return e||mt(!1,"Null arg"),J(e)}(e)}function Kt(e){return 0==zn(e)?null:Hn(e)}function en(){return null}function tn(e){return 0===zn(e)?null:function(e){e||mt(!1,"Null arg");const t=J(e);return new Date(t)}(e)}function nn(e,t,n,r,o,s){if(0===zn(e))return null;const a=Zn(e);let i=qr(a);return null==i&&(i=(e,t,i)=>function(e,t,n,r,o,s,a,i){lt.assert_runtime_running();const c=Ke.stackSave();try{const c=$n(6),l=Ln(c,2);if(Wn(l,14),Kn(l,e),s&&s(Ln(c,3),t),a&&a(Ln(c,4),n),i&&i(Ln(c,5),r),kn(yn.CallDelegate,c),o)return o(Ln(c,1))}finally{lt.is_runtime_running()&&Ke.stackRestore(c)}}(a,e,t,i,n,r,o,s),i.dispose=()=>{i.isDisposed||(i.isDisposed=!0,Vr(i,a))},i.isDisposed=!1,zr(i,a)),i}class rn{constructor(e,t){this.promise=e,this.resolve_or_reject=t}}function on(e,t,n){const r=zn(e);30==r&&mt(!1,"Unexpected Task type: TaskPreCreated");const o=cn(e,r,n);if(!1!==o)return o;const s=Qn(e),a=ln(n);return function(e,t){hr(),xr[0-t]=e,Object.isExtensible(e)&&(e[Cr]=t)}(a,s),a.promise}function sn(e,t,n){const r=ln(n);return Yn(e,Pr(r)),Wn(e,30),r.promise}function an(e,t,n){const r=Ln(e,1),o=zn(r);if(30===o)return n;Mr(Pr(n));const s=cn(r,o,t);return!1===s&&mt(!1,`Expected synchronous result, got: ${o}`),s}function cn(e,t,n){if(0===t)return null;if(29===t)return Promise.reject(un(e));if(28===t){const t=Vn(e);if(1===t)return Promise.resolve();Wn(e,t),n||(n=vn.get(t)),n||mt(!1,`Unknown sub_converter for type ${t}. ${Kr}`);const r=n(e);return Promise.resolve(r)}return!1}function ln(e){const{promise:t,promise_control:n}=lt.createPromiseController();return new rn(t,((t,r,o)=>{if(29===t){const e=un(o);n.reject(e)}else if(28===t){const t=zn(o);if(1===t)n.resolve(void 0);else{e||(e=vn.get(t)),e||mt(!1,`Unknown sub_converter for type ${t}. ${Kr}`);const r=e(o);n.resolve(r)}}else mt(!1,`Unexpected type ${t}`);Mr(r)}))}function pn(e){if(0==zn(e))return null;{const t=er(e);try{return Oe(t)}finally{t.release()}}}function un(e){const t=zn(e);if(0==t)return null;if(27==t)return Fr(Qn(e));const n=Zn(e);let r=qr(n);if(null==r){const t=pn(e);r=new ManagedError(t),zr(r,n)}return r}function dn(e){if(0==zn(e))return null;const t=Qn(e),n=Fr(t);return void 0===n&&mt(!1,`JS object JSHandle ${t} was not found`),n}function fn(e){const t=zn(e);if(0==t)return null;if(13==t)return Fr(Qn(e));if(21==t)return mn(e,Vn(e));if(14==t){const t=Zn(e);if(t===u)return null;let n=qr(t);return n||(n=new ManagedObject,zr(n,t)),n}const n=vn.get(t);return n||mt(!1,`Unknown converter for type ${t}. ${Kr}`),n(e)}function _n(e,t){return t||mt(!1,"Expected valid element_type parameter"),mn(e,t)}function mn(e,t){if(0==zn(e))return null;-1==rr(t)&&mt(!1,`Element type ${t} not supported`);const n=Hn(e),r=tr(e);let s=null;if(15==t){s=new Array(r);for(let e=0;e<r;e++){const t=Ln(n,e);s[e]=pn(t)}o.mono_wasm_deregister_root(n)}else if(14==t){s=new Array(r);for(let e=0;e<r;e++){const t=Ln(n,e);s[e]=fn(t)}o.mono_wasm_deregister_root(n)}else if(13==t){s=new Array(r);for(let e=0;e<r;e++){const t=Ln(n,e);s[e]=dn(t)}}else if(4==t){const e=oe(n,0);s=K().subarray(e,e+r).slice()}else if(7==t){const e=oe(n,2);s=Y().subarray(e,e+r).slice()}else{if(10!=t)throw new Error(`NotImplementedException ${t}. ${Kr}`);{const e=oe(n,3);s=re().subarray(e,e+r).slice()}}return m(n),s}function hn(e,t){t||mt(!1,"Expected valid element_type parameter");const n=Hn(e),r=tr(e);let o=null;if(4==t)o=new Span(n,r,0);else if(7==t)o=new Span(n,r,1);else{if(10!=t)throw new Error(`NotImplementedException ${t}. ${Kr}`);o=new Span(n,r,2)}return o}function gn(e,t){t||mt(!1,"Expected valid element_type parameter");const n=Hn(e),r=tr(e);let o=null;if(4==t)o=new ArraySegment(n,r,0);else if(7==t)o=new ArraySegment(n,r,1);else{if(10!=t)throw new Error(`NotImplementedException ${t}. ${Kr}`);o=new ArraySegment(n,r,2)}return zr(o,Zn(e)),o}const bn={pthreadId:0,reuseCount:0,updateCount:0,threadPrefix:" - ",threadName:"emscripten-loaded"},yn={};function wn(e,t,n,r){if(hr(),o.mono_wasm_invoke_jsexport(t,n),Rn(n))throw un(Ln(n,0))}function kn(e,t){if(hr(),o.mono_wasm_invoke_jsexport(e,t),Rn(t))throw un(Ln(t,0))}function Sn(e){const t=o.mono_wasm_assembly_find_method(ct.runtime_interop_exports_class,e,-1);if(!t)throw"Can't find method "+ct.runtime_interop_namespace+"."+ct.runtime_interop_exports_classname+"."+e;return t}const vn=new Map,Un=new Map,Tn=Symbol.for("wasm bound_cs_function"),En=Symbol.for("wasm bound_js_function"),xn=Symbol.for("wasm imported_js_function"),In=32,An=32,jn=32;function $n(e){const t=In*e,n=Ke.stackAlloc(t);return g(n,t),n}function Ln(e,t){return e||mt(!1,"Null args"),e+t*In}function Rn(e){return e||mt(!1,"Null args"),0!==zn(e)}function Bn(e,t){return e||mt(!1,"Null signatures"),e+t*An+jn}function Nn(e){return e||mt(!1,"Null sig"),N(e+0)}function On(e){return e||mt(!1,"Null sig"),N(e+16)}function Cn(e){return e||mt(!1,"Null sig"),N(e+20)}function Dn(e){return e||mt(!1,"Null sig"),N(e+24)}function Fn(e){return e||mt(!1,"Null sig"),N(e+28)}function Pn(e){return e||mt(!1,"Null signatures"),V(e+4)}function Mn(e){return e||mt(!1,"Null signatures"),V(e+0)}function zn(e){return e||mt(!1,"Null arg"),N(e+12)}function Vn(e){return e||mt(!1,"Null arg"),N(e+13)}function Wn(e,t){e||mt(!1,"Null arg"),w(e+12,t)}function Hn(e){return e||mt(!1,"Null arg"),C(e)}function qn(e,t){if(e||mt(!1,"Null arg"),"boolean"!=typeof t)throw new Error(`Assert failed: Value is not a Boolean: ${t} (${typeof t})`);y(e,t)}function Gn(e,t){e||mt(!1,"Null arg"),S(e,t)}function Jn(e,t){e||mt(!1,"Null arg"),$(e,t.getTime())}function Xn(e,t){e||mt(!1,"Null arg"),$(e,t)}function Qn(e){return e||mt(!1,"Null arg"),V(e+4)}function Yn(e,t){e||mt(!1,"Null arg"),T(e+4,t)}function Zn(e){return e||mt(!1,"Null arg"),V(e+4)}function Kn(e,t){e||mt(!1,"Null arg"),T(e+4,t)}function er(e){return e||mt(!1,"Null arg"),function(e){let t;if(!e)throw new Error("address must be a location in the native heap");return fe.length>0?(t=fe.pop(),t._set_address(e)):t=new ge(e),t}(e)}function tr(e){return e||mt(!1,"Null arg"),V(e+8)}function nr(e,t){e||mt(!1,"Null arg"),T(e+8,t)}class ManagedObject{dispose(){Vr(this,u)}get isDisposed(){return this[Or]===u}toString(){return`CsObject(gc_handle: ${this[Or]})`}}class ManagedError extends Error{constructor(e){super(e),this.superStack=Object.getOwnPropertyDescriptor(this,"stack"),Object.defineProperty(this,"stack",{get:this.getManageStack})}getSuperStack(){if(this.superStack){if(void 0!==this.superStack.value)return this.superStack.value;if(void 0!==this.superStack.get)return this.superStack.get.call(this)}return super.stack}getManageStack(){if(this.managed_stack)return this.managed_stack;if(!lt.is_runtime_running())return this.managed_stack="... omitted managed stack trace.\n"+this.getSuperStack(),this.managed_stack;{const e=this[Or];if(e!==u){const t=function(e){lt.assert_runtime_running();const t=Ke.stackSave();try{const t=$n(3),n=Ln(t,2);return Wn(n,16),Kn(n,e),kn(yn.GetManagedStackTrace,t),pn(Ln(t,1))}finally{lt.is_runtime_running()&&Ke.stackRestore(t)}}(e);if(t)return this.managed_stack=t+"\n"+this.getSuperStack(),this.managed_stack}}return this.getSuperStack()}dispose(){Vr(this,u)}get isDisposed(){return this[Or]===u}}function rr(e){return 4==e?1:7==e?4:8==e||10==e?8:15==e||14==e||13==e?In:-1}class or{constructor(e,t,n){this._pointer=e,this._length=t,this._viewType=n}_unsafe_create_view(){const e=0==this._viewType?new Uint8Array(K().buffer,this._pointer,this._length):1==this._viewType?new Int32Array(Y().buffer,this._pointer,this._length):2==this._viewType?new Float64Array(re().buffer,this._pointer,this._length):null;if(!e)throw new Error("NotImplementedException");return e}set(e,t){if(this.isDisposed)throw new Error("Assert failed: ObjectDisposedException");const n=this._unsafe_create_view();if(!e||!n||e.constructor!==n.constructor)throw new Error(`Assert failed: Expected ${n.constructor}`);n.set(e,t)}copyTo(e,t){if(this.isDisposed)throw new Error("Assert failed: ObjectDisposedException");const n=this._unsafe_create_view();if(!e||!n||e.constructor!==n.constructor)throw new Error(`Assert failed: Expected ${n.constructor}`);const r=n.subarray(t);e.set(r)}slice(e,t){if(this.isDisposed)throw new Error("Assert failed: ObjectDisposedException");return this._unsafe_create_view().slice(e,t)}get length(){if(this.isDisposed)throw new Error("Assert failed: ObjectDisposedException");return this._length}get byteLength(){if(this.isDisposed)throw new Error("Assert failed: ObjectDisposedException");return 0==this._viewType?this._length:1==this._viewType?this._length<<2:2==this._viewType?this._length<<3:0}}class Span extends or{constructor(e,t,n){super(e,t,n),this.is_disposed=!1}dispose(){this.is_disposed=!0}get isDisposed(){return this.is_disposed}}class ArraySegment extends or{constructor(e,t,n){super(e,t,n)}dispose(){Vr(this,u)}get isDisposed(){return this[Or]===u}}const sr=[null];function ar(e){const t=e.args_count,r=e.arg_marshalers,o=e.res_converter,s=e.arg_cleanup,a=e.has_cleanup,i=e.fn,c=e.fqn;return e=null,function(l){const p=Ft();try{n&&e.isDisposed;const c=new Array(t);for(let e=0;e<t;e++){const t=(0,r[e])(l);c[e]=t}const p=i(...c);if(o&&o(l,p),a)for(let e=0;e<t;e++){const t=s[e];t&&t(c[e])}}catch(e){wo(l,e)}finally{Pt(p,"mono.callCsFunction:",c)}}}function ir(e,t){_r.set(e,t),lt.diagnosticTracing&&ze(`added module imports '${e}'`)}function cr(e,t,n){if(!e)throw new Error("Assert failed: Null reference");e[t]=n}function lr(e,t){if(!e)throw new Error("Assert failed: Null reference");return e[t]}function pr(e,t){if(!e)throw new Error("Assert failed: Null reference");return t in e}function ur(e,t){if(!e)throw new Error("Assert failed: Null reference");return typeof e[t]}function dr(){return globalThis}const fr=new Map,_r=new Map;function mr(e,t){hr(),e&&"string"==typeof e||mt(!1,"module_name must be string"),t&&"string"==typeof t||mt(!1,"module_url must be string");let n=fr.get(e);const r=!n;return r&&(lt.diagnosticTracing&&ze(`importing ES6 module '${e}' from '${t}'`),n=import(/*! webpackIgnore: true */t),fr.set(e,n)),Qr((async()=>{const o=await n;return r&&(_r.set(e,o),lt.diagnosticTracing&&ze(`imported ES6 module '${e}' from '${t}'`)),o}))}function hr(){lt.assert_runtime_running(),ct.mono_wasm_bindings_is_ready||mt(!1,"The runtime must be initialized.")}function gr(e){e()}const br="function"==typeof globalThis.WeakRef;function yr(e){return br?new WeakRef(e):function(e){return{deref:()=>e,dispose:()=>{e=null}}}(e)}function wr(e,t,n,r,o,s,a){const i=`[${t}] ${n}.${r}:${o}`,c=Ft();lt.diagnosticTracing&&ze(`Binding [JSExport] ${n}.${r}:${o} from ${t} assembly`);const l=Mn(a);2!==l&&mt(!1,`Signature version ${l} mismatch.`);const p=Pn(a),u=new Array(p);for(let e=0;e<p;e++){const t=Bn(a,e+2),n=eo(t,Nn(t),e+2);n||mt(!1,"ERR43: argument marshaler must be resolved"),u[e]=n}const d=Bn(a,1);let f=Nn(d);const _=20==f,m=26==f;_&&(f=30);const h=zt(d,f,1),g={method:e,fullyQualifiedName:i,args_count:p,arg_marshalers:u,res_converter:h,is_async:_,is_discard_no_wait:m,isDisposed:!1};let b;b=_?1==p&&h?function(e){const t=e.method,n=e.arg_marshalers[0],r=e.res_converter,o=e.fullyQualifiedName;return e=null,function(e){const s=Ft();lt.assert_runtime_running();const a=Ke.stackSave();try{const o=$n(3);n(o,e);let s=r(o);return wn(ct.managedThreadTID,t,o),s=an(o,void 0,s),s}finally{lt.is_runtime_running()&&Ke.stackRestore(a),Pt(s,"mono.callCsFunction:",o)}}}(g):2==p&&h?function(e){const t=e.method,n=e.arg_marshalers[0],r=e.arg_marshalers[1],o=e.res_converter,s=e.fullyQualifiedName;return e=null,function(e,a){const i=Ft();lt.assert_runtime_running();const c=Ke.stackSave();try{const s=$n(4);n(s,e),r(s,a);let i=o(s);return wn(ct.managedThreadTID,t,s),i=an(s,void 0,i),i}finally{lt.is_runtime_running()&&Ke.stackRestore(c),Pt(i,"mono.callCsFunction:",s)}}}(g):kr(g):m?kr(g):0!=p||h?1!=p||h?1==p&&h?function(e){const t=e.method,n=e.arg_marshalers[0],r=e.res_converter,o=e.fullyQualifiedName;return e=null,function(e){const s=Ft();lt.assert_runtime_running();const a=Ke.stackSave();try{const o=$n(3);return n(o,e),kn(t,o),r(o)}finally{lt.is_runtime_running()&&Ke.stackRestore(a),Pt(s,"mono.callCsFunction:",o)}}}(g):2==p&&h?function(e){const t=e.method,n=e.arg_marshalers[0],r=e.arg_marshalers[1],o=e.res_converter,s=e.fullyQualifiedName;return e=null,function(e,a){const i=Ft();lt.assert_runtime_running();const c=Ke.stackSave();try{const s=$n(4);return n(s,e),r(s,a),kn(t,s),o(s)}finally{lt.is_runtime_running()&&Ke.stackRestore(c),Pt(i,"mono.callCsFunction:",s)}}}(g):kr(g):function(e){const t=e.method,n=e.arg_marshalers[0],r=e.fullyQualifiedName;return e=null,function(e){const o=Ft();lt.assert_runtime_running();const s=Ke.stackSave();try{const r=$n(3);n(r,e),kn(t,r)}finally{lt.is_runtime_running()&&Ke.stackRestore(s),Pt(o,"mono.callCsFunction:",r)}}}(g):function(e){const t=e.method,n=e.fullyQualifiedName;return e=null,function(){const e=Ft();lt.assert_runtime_running();const r=Ke.stackSave();try{const e=$n(2);kn(t,e)}finally{lt.is_runtime_running()&&Ke.stackRestore(r),Pt(e,"mono.callCsFunction:",n)}}}(g),b[Tn]=g,function(e,t,n,r,o,s){const a=`${t}.${n}`.replace(/\//g,".").split(".");let i,c=Sr.get(e);c||(c={},Sr.set(e,c),Sr.set(e+".dll",c)),i=c;for(let e=0;e<a.length;e++){const t=a[e];if(""!=t){let e=i[t];void 0===e&&(e={},i[t]=e),e||mt(!1,`${t} not found while looking up ${n}`),i=e}}i[r]||(i[r]=s),i[`${r}.${o}`]=s}(t,n,r,o,s,b),Pt(c,"mono.bindCsFunction:",i)}function kr(e){const t=e.args_count,n=e.arg_marshalers,r=e.res_converter,o=e.method,s=e.fullyQualifiedName,a=e.is_async,i=e.is_discard_no_wait;return e=null,function(...e){const c=Ft();lt.assert_runtime_running();const l=Ke.stackSave();try{const s=$n(2+t);for(let r=0;r<t;r++){const t=n[r];t&&t(s,e[r])}let c;return a&&(c=r(s)),a?(wn(ct.managedThreadTID,o,s),c=an(s,void 0,c)):i?wn(ct.managedThreadTID,o,s):(kn(o,s),r&&(c=r(s))),c}finally{lt.is_runtime_running()&&Ke.stackRestore(l),Pt(c,"mono.callCsFunction:",s)}}}const Sr=new Map;async function vr(e){return hr(),Sr.get(e)||await function(e){lt.assert_runtime_running();const t=Ke.stackSave();try{const t=$n(3),n=Ln(t,1);mo(Ln(t,2),e);let r=sn(n);return wn(ct.managedThreadTID,yn.BindAssemblyExports,t),r=an(t,Jt,r),null==r&&(r=Promise.resolve()),r}finally{lt.is_runtime_running()&&Ke.stackRestore(t)}}(e),Sr.get(e)||{}}const Ur="function"==typeof globalThis.FinalizationRegistry;let Tr;const Er=[null],xr=[null],Ir=[];let Ar=1;const jr=new Map,$r=[];let Lr=-2;function Rr(e){return e<-1}function Br(e){return e>0}function Nr(e){return e<-1}Ur&&(Tr=new globalThis.FinalizationRegistry(Hr));const Or=Symbol.for("wasm js_owned_gc_handle"),Cr=Symbol.for("wasm cs_owned_js_handle"),Dr=Symbol.for("wasm do_not_force_dispose");function Fr(e){return Br(e)?Er[e]:Rr(e)?xr[0-e]:null}function Pr(e){if(hr(),e[Cr])return e[Cr];const t=Ir.length?Ir.pop():Ar++;return Er[t]=e,Object.isExtensible(e)&&("function"==typeof e&&Object.prototype.hasOwnProperty.call(e,"prototype")||(e[Cr]=t)),t}function Mr(e){let t;Br(e)?(t=Er[e],Er[e]=void 0,Ir.push(e)):Rr(e)&&(t=xr[0-e],xr[0-e]=void 0),null==t&&mt(!1,"ObjectDisposedException"),void 0!==t[Cr]&&(t[Cr]=void 0)}function zr(e,t){hr(),e[Or]=t,Ur&&Tr.register(e,t,e);const n=yr(e);jr.set(t,n)}function Vr(e,t,r){var o;hr(),e&&(t=e[Or],e[Or]=u,Ur&&Tr.unregister(e)),t!==u&&jr.delete(t)&&!r&<.is_runtime_running()&&!Gr&&function(e){e||mt(!1,"Must be valid gc_handle"),lt.assert_runtime_running();const t=Ke.stackSave();try{const t=$n(3),r=Ln(t,2);Wn(r,14),Kn(r,e),n&&!Nr(e)&&bn.isUI||kn(yn.ReleaseJSOwnedObjectByGCHandle,t)}finally{lt.is_runtime_running()&&Ke.stackRestore(t)}}(t),Nr(t)&&(o=t,$r.push(o))}function Wr(e){const t=e[Or];if(t==u)throw new Error("Assert failed: ObjectDisposedException");return t}function Hr(e){lt.is_runtime_running()&&Vr(null,e)}function qr(e){if(!e)return null;const t=jr.get(e);return t?t.deref():null}let Gr=!1;function Jr(e,t){let n=!1,r=!1;Gr=!0;let o=0,s=0,a=0,i=0;const c=[...jr.keys()];for(const e of c){const r=jr.get(e),o=r&&r.deref();if(Ur&&o&&Tr.unregister(o),o){const s="boolean"==typeof o[Dr]&&o[Dr];if(t&&We(`Proxy of C# ${typeof o} with GCHandle ${e} was still alive. ${s?"keeping":"disposing"}.`),s)n=!0;else{const t=lt.getPromiseController(o);t&&t.reject(new Error("WebWorker which is origin of the Task is being terminated.")),"function"==typeof o.dispose&&o.dispose(),o[Or]===e&&(o[Or]=u),!br&&r&&r.dispose(),a++}}}n||(jr.clear(),Ur&&(Tr=new globalThis.FinalizationRegistry(Hr)));const l=(e,n)=>{const o=n[e],s=o&&"boolean"==typeof o[Dr]&&o[Dr];if(s||(n[e]=void 0),o)if(t&&We(`Proxy of JS ${typeof o} with JSHandle ${e} was still alive. ${s?"keeping":"disposing"}.`),s)r=!0;else{const t=lt.getPromiseController(o);t&&t.reject(new Error("WebWorker which is origin of the Task is being terminated.")),"function"==typeof o.dispose&&o.dispose(),o[Cr]===e&&(o[Cr]=void 0),i++}};for(let e=0;e<Er.length;e++)l(e,Er);for(let e=0;e<xr.length;e++)l(e,xr);if(r||(Er.length=1,xr.length=1,Ar=1,Ir.length=0),$r.length=0,Lr=-2,e){for(const e of sr)if(e){const t=e[xn];t&&(t.disposed=!0,o++)}sr.length=1;const e=[...Sr.values()];for(const t of e)for(const e in t){const n=t[e][Tn];n&&(n.disposed=!0,s++)}Sr.clear()}Ve(`forceDisposeProxies done: ${o} imports, ${s} exports, ${a} GCHandles, ${i} JSHandles.`)}function Xr(e){return Promise.resolve(e)===e||("object"==typeof e||"function"==typeof e)&&"function"==typeof e.then}function Qr(e){const{promise:t,promise_control:n}=_t();return e().then((e=>n.resolve(e))).catch((e=>n.reject(e))),t}const Yr=Symbol.for("wasm promise_holder");class Zr extends ManagedObject{constructor(e,t,n,r){super(),this.promise=e,this.gc_handle=t,this.promiseHolderPtr=n,this.res_converter=r,this.isResolved=!1,this.isPosted=!1,this.isPostponed=!1,this.data=null,this.reason=void 0}setIsResolving(){return!0}resolve(e){lt.is_runtime_running()?(this.isResolved&&mt(!1,"resolve could be called only once"),this.isDisposed&&mt(!1,"resolve is already disposed."),this.isResolved=!0,this.complete_task_wrapper(e,null)):lt.diagnosticTracing&&ze("This promise resolution can't be propagated to managed code, mono runtime already exited.")}reject(e){lt.is_runtime_running()?(e||(e=new Error),this.isResolved&&mt(!1,"reject could be called only once"),this.isDisposed&&mt(!1,"resolve is already disposed."),e[Yr],this.isResolved=!0,this.complete_task_wrapper(null,e)):lt.diagnosticTracing&&ze("This promise rejection can't be propagated to managed code, mono runtime already exited.")}cancel(){if(lt.is_runtime_running())if(this.isResolved&&mt(!1,"cancel could be called only once"),this.isDisposed&&mt(!1,"resolve is already disposed."),this.isPostponed)this.isResolved=!0,void 0!==this.reason?this.complete_task_wrapper(null,this.reason):this.complete_task_wrapper(this.data,null);else{const e=this.promise;lt.assertIsControllablePromise(e);const t=lt.getPromiseController(e),n=new Error("OperationCanceledException");n[Yr]=this,t.reject(n)}else lt.diagnosticTracing&&ze("This promise cancelation can't be propagated to managed code, mono runtime already exited.")}complete_task_wrapper(e,t){try{this.isPosted&&mt(!1,"Promise is already posted to managed."),this.isPosted=!0,Vr(this,this.gc_handle,!0),function(e,t,n,r){lt.assert_runtime_running();const o=Ke.stackSave();try{const o=$n(5),s=Ln(o,2);Wn(s,14),Kn(s,e);const a=Ln(o,3);if(t)wo(a,t);else{Wn(a,0);const e=Ln(o,4);r||mt(!1,"res_converter missing"),r(e,n)}wn(ct.ioThreadTID,yn.CompleteTask,o)}finally{lt.is_runtime_running()&&Ke.stackRestore(o)}}(this.gc_handle,t,e,this.res_converter||So)}catch(e){try{lt.mono_exit(1,e)}catch(e){}}}}const Kr="For more information see https://aka.ms/dotnet-wasm-jsinterop";function eo(e,t,n){if(0===t||1===t||2===t||26===t)return;let r,o,s,a;o=Vt(Cn(e)),s=Vt(Dn(e)),a=Vt(Fn(e));const i=On(e);r=to(i),19===t&&(t=i);const c=to(t),l=Cn(e),p=n*In;return(e,t)=>{c(e+p,t,l,r,o,s,a)}}function to(e){if(0===e||1===e)return;const t=Un.get(e);return t&&"function"==typeof t||mt(!1,`ERR30: Unknown converter for type ${e}`),t}function no(e,t){null==t?Wn(e,0):(Wn(e,3),qn(e,t))}function ro(e,t){null==t?Wn(e,0):(Wn(e,4),function(e,t){e||mt(!1,"Null arg"),w(e,t)}(e,t))}function oo(e,t){null==t?Wn(e,0):(Wn(e,5),function(e,t){e||mt(!1,"Null arg"),k(e,t)}(e,t))}function so(e,t){null==t?Wn(e,0):(Wn(e,6),function(e,t){e||mt(!1,"Null arg"),U(e,t)}(e,t))}function ao(e,t){null==t?Wn(e,0):(Wn(e,7),function(e,t){e||mt(!1,"Null arg"),T(e,t)}(e,t))}function io(e,t){null==t?Wn(e,0):(Wn(e,8),function(e,t){if(e||mt(!1,"Null arg"),!Number.isSafeInteger(t))throw new Error(`Assert failed: Value is not an integer: ${t} (${typeof t})`);$(e,t)}(e,t))}function co(e,t){null==t?Wn(e,0):(Wn(e,9),function(e,t){e||mt(!1,"Null arg"),A(e,t)}(e,t))}function lo(e,t){null==t?Wn(e,0):(Wn(e,10),Xn(e,t))}function po(e,t){null==t?Wn(e,0):(Wn(e,11),function(e,t){e||mt(!1,"Null arg"),j(e,t)}(e,t))}function uo(e,t){null==t?Wn(e,0):(Wn(e,12),Gn(e,t))}function fo(e,t){if(null==t)Wn(e,0);else{if(!(t instanceof Date))throw new Error("Assert failed: Value is not a Date");Wn(e,17),Jn(e,t)}}function _o(e,t){if(null==t)Wn(e,0);else{if(!(t instanceof Date))throw new Error("Assert failed: Value is not a Date");Wn(e,18),Jn(e,t)}}function mo(e,t){if(null==t)Wn(e,0);else{if(Wn(e,15),"string"!=typeof t)throw new Error("Assert failed: Value is not a String");ho(e,t)}}function ho(e,t){{const n=er(e);try{!function(e,t){if(t.clear(),null!==e)if("symbol"==typeof e)Ce(e,t);else{if("string"!=typeof e)throw new Error("Expected string argument, got "+typeof e);if(0===e.length)Ce(e,t);else{if(e.length<=256){const n=be.get(e);if(n)return void t.set(n)}De(e,t)}}}(t,n)}finally{n.release()}}}function go(e){Wn(e,0)}function bo(e,t,r,o,s,a,i){if(null==t)return void Wn(e,0);if(!(t&&t instanceof Function))throw new Error("Assert failed: Value is not a Function");const c=function(e){const r=Ln(e,0),l=Ln(e,1),p=Ln(e,2),u=Ln(e,3),d=Ln(e,4),f=ct.isPendingSynchronousCall;try{let e,r,f;n&&c.isDisposed,s&&(e=s(p)),a&&(r=a(u)),i&&(f=i(d)),ct.isPendingSynchronousCall=!0;const _=t(e,r,f);o&&o(l,_)}catch(e){wo(r,e)}finally{ct.isPendingSynchronousCall=f}};c[En]=!0,c.isDisposed=!1,c.dispose=()=>{c.isDisposed=!0},Yn(e,Pr(c)),Wn(e,25)}function yo(e,t,n,r){const o=30==zn(e);if(null==t)return void Wn(e,0);if(!Xr(t))throw new Error("Assert failed: Value is not a Promise");const s=o?Zn(e):$r.length?$r.pop():Lr--;o||(Kn(e,s),Wn(e,20));const a=new Zr(t,s,0,r);zr(a,s),t.then((e=>a.resolve(e)),(e=>a.reject(e)))}function wo(e,t){if(null==t)Wn(e,0);else if(t instanceof ManagedError)Wn(e,16),Kn(e,Wr(t));else{if("object"!=typeof t&&"string"!=typeof t)throw new Error("Assert failed: Value is not an Error "+typeof t);Wn(e,27),ho(e,t.toString());const n=t[Cr];Yn(e,n||Pr(t))}}function ko(e,t){if(null==t)Wn(e,0);else{if(void 0!==t[Or])throw new Error(`Assert failed: JSObject proxy of ManagedObject proxy is not supported. ${Kr}`);if("function"!=typeof t&&"object"!=typeof t)throw new Error(`Assert failed: JSObject proxy of ${typeof t} is not supported`);Wn(e,13),Yn(e,Pr(t))}}function So(e,t){if(null==t)Wn(e,0);else{const n=t[Or],r=typeof t;if(void 0===n)if("string"===r||"symbol"===r)Wn(e,15),ho(e,t);else if("number"===r)Wn(e,10),Xn(e,t);else{if("bigint"===r)throw new Error("NotImplementedException: bigint");if("boolean"===r)Wn(e,3),qn(e,t);else if(t instanceof Date)Wn(e,17),Jn(e,t);else if(t instanceof Error)wo(e,t);else if(t instanceof Uint8Array)Uo(e,t,4);else if(t instanceof Float64Array)Uo(e,t,10);else if(t instanceof Int32Array)Uo(e,t,7);else if(Array.isArray(t))Uo(e,t,14);else{if(t instanceof Int16Array||t instanceof Int8Array||t instanceof Uint8ClampedArray||t instanceof Uint16Array||t instanceof Uint32Array||t instanceof Float32Array)throw new Error("NotImplementedException: TypedArray");if(Xr(t))yo(e,t);else{if(t instanceof Span)throw new Error("NotImplementedException: Span");if("object"!=r)throw new Error(`JSObject proxy is not supported for ${r} ${t}`);{const n=Pr(t);Wn(e,13),Yn(e,n)}}}}else{if(Wr(t),t instanceof ArraySegment)throw new Error("NotImplementedException: ArraySegment. "+Kr);if(t instanceof ManagedError)Wn(e,16),Kn(e,n);else{if(!(t instanceof ManagedObject))throw new Error("NotImplementedException "+r+". "+Kr);Wn(e,14),Kn(e,n)}}}}function vo(e,t,n){n||mt(!1,"Expected valid element_type parameter"),Uo(e,t,n)}function Uo(e,t,n){if(null==t)Wn(e,0);else{const r=rr(n);-1==r&&mt(!1,`Element type ${n} not supported`);const s=t.length,a=r*s,i=_(a);if(15==n){if(!Array.isArray(t))throw new Error("Assert failed: Value is not an Array");g(i,a),o.mono_wasm_register_root(i,a,"marshal_array_to_cs");for(let e=0;e<s;e++)mo(Ln(i,e),t[e])}else if(14==n){if(!Array.isArray(t))throw new Error("Assert failed: Value is not an Array");g(i,a),o.mono_wasm_register_root(i,a,"marshal_array_to_cs");for(let e=0;e<s;e++)So(Ln(i,e),t[e])}else if(13==n){if(!Array.isArray(t))throw new Error("Assert failed: Value is not an Array");g(i,a);for(let e=0;e<s;e++)ko(Ln(i,e),t[e])}else if(4==n){if(!(Array.isArray(t)||t instanceof Uint8Array))throw new Error("Assert failed: Value is not an Array or Uint8Array");K().subarray(i,i+s).set(t)}else if(7==n){if(!(Array.isArray(t)||t instanceof Int32Array))throw new Error("Assert failed: Value is not an Array or Int32Array");const e=oe(i,2);Y().subarray(e,e+s).set(t)}else{if(10!=n)throw new Error("not implemented");{if(!(Array.isArray(t)||t instanceof Float64Array))throw new Error("Assert failed: Value is not an Array or Float64Array");const e=oe(i,3);re().subarray(e,e+s).set(t)}}Gn(e,i),Wn(e,21),function(e,t){e||mt(!1,"Null arg"),w(e+13,t)}(e,n),nr(e,t.length)}}function To(e,t,n){if(n||mt(!1,"Expected valid element_type parameter"),t.isDisposed)throw new Error("Assert failed: ObjectDisposedException");xo(n,t._viewType),Wn(e,23),Gn(e,t._pointer),nr(e,t.length)}function Eo(e,t,n){n||mt(!1,"Expected valid element_type parameter");const r=Wr(t);r||mt(!1,"Only roundtrip of ArraySegment instance created by C#"),xo(n,t._viewType),Wn(e,22),Gn(e,t._pointer),nr(e,t.length),Kn(e,r)}function xo(e,t){if(4==e){if(0!=t)throw new Error("Assert failed: Expected MemoryViewType.Byte")}else if(7==e){if(1!=t)throw new Error("Assert failed: Expected MemoryViewType.Int32")}else{if(10!=e)throw new Error(`NotImplementedException ${e} `);if(2!=t)throw new Error("Assert failed: Expected MemoryViewType.Double")}}const Io={now:function(){return Date.now()}};function Ao(e){void 0===globalThis.performance&&(globalThis.performance=Io),e.require=et.require,e.scriptDirectory=lt.scriptDirectory,Ke.locateFile===Ke.__locateFile&&(Ke.locateFile=lt.locateFile),e.fetch=lt.fetch_like,e.ENVIRONMENT_IS_WORKER=ot}function jo(){if("function"!=typeof globalThis.fetch||"function"!=typeof globalThis.AbortController)throw new Error(tt?"Please install `node-fetch` and `node-abort-controller` npm packages to enable HTTP client support. See also https://aka.ms/dotnet-wasm-features":"This browser doesn't support fetch API. Please use a modern browser. See also https://aka.ms/dotnet-wasm-features")}function $o(){if("undefined"!=typeof Request&&"body"in Request.prototype&&"function"==typeof ReadableStream&&"function"==typeof TransformStream){let e=!1;const t=new Request("",{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t}return!1}function Lo(){return"undefined"!=typeof Response&&"body"in Response.prototype&&"function"==typeof ReadableStream}function Ro(){return jo(),hr(),{abortController:new AbortController}}function Bo(e){e.catch((e=>{e&&"AbortError"!==e&&"AbortError"!==e.name&&ze("http muted: "+e)}))}function No(e){try{e.isAborted||(e.streamWriter&&(Bo(e.streamWriter.abort()),e.isAborted=!0),e.streamReader&&(Bo(e.streamReader.cancel()),e.isAborted=!0)),e.isAborted||e.abortController.signal.aborted||e.abortController.abort("AbortError")}catch(e){}}function Oo(e,t,n){n>0||mt(!1,"expected bufferLength > 0");const r=new Span(t,n,0).slice();return Qr((async()=>{e.streamWriter||mt(!1,"expected streamWriter"),e.responsePromise||mt(!1,"expected fetch promise");try{await e.streamWriter.ready,await e.streamWriter.write(r)}catch(e){throw new Error("BrowserHttpWriteStream.Rejected")}}))}function Co(e){return e||mt(!1,"expected controller"),Qr((async()=>{e.streamWriter||mt(!1,"expected streamWriter"),e.responsePromise||mt(!1,"expected fetch promise");try{await e.streamWriter.ready,await e.streamWriter.close()}catch(e){throw new Error("BrowserHttpWriteStream.Rejected")}}))}function Do(e,t,n,r,o,s){const a=new TransformStream;return e.streamWriter=a.writable.getWriter(),Bo(e.streamWriter.closed),Bo(e.streamWriter.ready),Po(e,t,n,r,o,s,a.readable)}function Fo(e,t,n,r,o,s,a,i){return Po(e,t,n,r,o,s,new Span(a,i,0).slice())}function Po(e,t,n,r,o,s,a){jo(),hr(),t&&"string"==typeof t||mt(!1,"expected url string"),n&&r&&Array.isArray(n)&&Array.isArray(r)&&n.length===r.length||mt(!1,"expected headerNames and headerValues arrays"),o&&s&&Array.isArray(o)&&Array.isArray(s)&&o.length===s.length||mt(!1,"expected headerNames and headerValues arrays");const i=new Headers;for(let e=0;e<n.length;e++)i.append(n[e],r[e]);const c={body:a,headers:i,signal:e.abortController.signal};"undefined"!=typeof ReadableStream&&a instanceof ReadableStream&&(c.duplex="half");for(let e=0;e<o.length;e++)c[o[e]]=s[e];return e.responsePromise=Qr((()=>lt.fetch_like(t,c).then((t=>(e.response=t,null))))),e.responsePromise.then((()=>{if(e.response||mt(!1,"expected response"),e.responseHeaderNames=[],e.responseHeaderValues=[],e.response.headers&&e.response.headers.entries){const t=e.response.headers.entries();for(const n of t)e.responseHeaderNames.push(n[0]),e.responseHeaderValues.push(n[1])}})).catch((()=>{})),e.responsePromise}function Mo(e){var t;return null===(t=e.response)||void 0===t?void 0:t.type}function zo(e){var t,n;return null!==(n=null===(t=e.response)||void 0===t?void 0:t.status)&&void 0!==n?n:0}function Vo(e){return e.responseHeaderNames||mt(!1,"expected responseHeaderNames"),e.responseHeaderNames}function Wo(e){return e.responseHeaderValues||mt(!1,"expected responseHeaderValues"),e.responseHeaderValues}function Ho(e){return Qr((async()=>{const t=await e.response.arrayBuffer();return e.responseBuffer=t,e.currentBufferOffset=0,t.byteLength}))}function qo(e,t){if(e||mt(!1,"expected controller"),e.responseBuffer||mt(!1,"expected resoved arrayBuffer"),null==e.currentBufferOffset&&mt(!1,"expected currentBufferOffset"),e.currentBufferOffset==e.responseBuffer.byteLength)return 0;const n=new Uint8Array(e.responseBuffer,e.currentBufferOffset);t.set(n,0);const r=Math.min(t.byteLength,n.byteLength);return e.currentBufferOffset+=r,r}function Go(e,t,n){const r=new Span(t,n,0);return Qr((async()=>{if(await e.responsePromise,e.response||mt(!1,"expected response"),!e.response.body)return 0;if(e.streamReader||(e.streamReader=e.response.body.getReader(),Bo(e.streamReader.closed)),e.currentStreamReaderChunk&&void 0!==e.currentBufferOffset||(e.currentStreamReaderChunk=await e.streamReader.read(),e.currentBufferOffset=0),e.currentStreamReaderChunk.done){if(e.isAborted)throw new Error("OperationCanceledException");return 0}const t=e.currentStreamReaderChunk.value.byteLength-e.currentBufferOffset;t>0||mt(!1,"expected remaining_source to be greater than 0");const n=Math.min(t,r.byteLength),o=e.currentStreamReaderChunk.value.subarray(e.currentBufferOffset,e.currentBufferOffset+n);return r.set(o,0),e.currentBufferOffset+=n,t==n&&(e.currentStreamReaderChunk=void 0),n}))}let Jo,Xo,Qo=0;function Yo(){if(!lt.isChromium)return;const e=(new Date).valueOf(),t=e+36e4;for(let n=Math.max(e+1e3,Qo);n<t;n+=1e3){const t=n-e;globalThis.setTimeout(Zo,t)}Qo=t}function Zo(){if(Ke.maybeExit(),lt.is_runtime_running()){try{o.mono_wasm_execute_timer()}catch(e){lt.mono_exit(1,e)}Ko()}}function Ko(){if(Jo=void 0,Ke.maybeExit(),lt.is_runtime_running())try{o.mono_background_exec()}catch(e){lt.mono_exit(1,e)}}function mono_wasm_schedule_timer_tick(){if(Ke.maybeExit(),lt.is_runtime_running()){Xo=void 0;try{o.mono_wasm_execute_timer()}catch(e){lt.mono_exit(1,e)}}}class es{constructor(){this.queue=[],this.offset=0}getLength(){return this.queue.length-this.offset}isEmpty(){return 0==this.queue.length}enqueue(e){this.queue.push(e)}dequeue(){if(0===this.queue.length)return;const e=this.queue[this.offset];return this.queue[this.offset]=null,2*++this.offset>=this.queue.length&&(this.queue=this.queue.slice(this.offset),this.offset=0),e}peek(){return this.queue.length>0?this.queue[this.offset]:void 0}drain(e){for(;this.getLength();)e(this.dequeue())}}const ts=Symbol.for("wasm ws_pending_send_buffer"),ns=Symbol.for("wasm ws_pending_send_buffer_offset"),rs=Symbol.for("wasm ws_pending_send_buffer_type"),os=Symbol.for("wasm ws_pending_receive_event_queue"),ss=Symbol.for("wasm ws_pending_receive_promise_queue"),as=Symbol.for("wasm ws_pending_open_promise"),is=Symbol.for("wasm wasm_ws_pending_open_promise_used"),cs=Symbol.for("wasm wasm_ws_pending_error"),ls=Symbol.for("wasm ws_pending_close_promises"),ps=Symbol.for("wasm ws_pending_send_promises"),us=Symbol.for("wasm ws_is_aborted"),ds=Symbol.for("wasm wasm_ws_close_sent"),fs=Symbol.for("wasm wasm_ws_close_received"),_s=Symbol.for("wasm ws_receive_status_ptr"),ms=65536,hs=new Uint8Array;function gs(e){var t,n;return e.readyState!=WebSocket.CLOSED?null!==(t=e.readyState)&&void 0!==t?t:-1:0==e[os].getLength()?null!==(n=e.readyState)&&void 0!==n?n:-1:e[ds]?WebSocket.CLOSING:WebSocket.OPEN}function bs(e,t,n){let r;!function(){if(at)throw new Error("WebSockets are not supported in shell JS engine.");if("function"!=typeof globalThis.WebSocket)throw new Error(tt?"Please install `ws` npm package to enable networking support. See also https://aka.ms/dotnet-wasm-features":"This browser doesn't support WebSocket API. Please use a modern browser. See also https://aka.ms/dotnet-wasm-features")}(),hr(),e&&"string"==typeof e||mt(!1,"ERR12: Invalid uri "+typeof e);try{r=new globalThis.WebSocket(e,t||void 0)}catch(e){throw We("WebSocket error in ws_wasm_create: "+e.toString()),e}const{promise_control:o}=_t();r[os]=new es,r[ss]=new es,r[as]=o,r[ps]=[],r[ls]=[],r[_s]=n,r.binaryType="arraybuffer";const s=()=>{try{if(r[us])return;if(!lt.is_runtime_running())return;o.resolve(r),Yo()}catch(e){We("failed to propagate WebSocket open event: "+e.toString())}},a=e=>{try{if(r[us])return;if(!lt.is_runtime_running())return;!function(e,t){const n=e[os],r=e[ss];if("string"==typeof t.data)n.enqueue({type:0,data:je(t.data),offset:0});else{if("ArrayBuffer"!==t.data.constructor.name)throw new Error("ERR19: WebSocket receive expected ArrayBuffer");n.enqueue({type:1,data:new Uint8Array(t.data),offset:0})}if(r.getLength()&&n.getLength()>1)throw new Error("ERR21: Invalid WS state");for(;r.getLength()&&n.getLength();){const t=r.dequeue();Ts(e,n,t.buffer_ptr,t.buffer_length),t.resolve()}Yo()}(r,e),Yo()}catch(e){We("failed to propagate WebSocket message event: "+e.toString())}},i=e=>{try{if(r.removeEventListener("message",a),r[us])return;if(!lt.is_runtime_running())return;r[fs]=!0,r.close_status=e.code,r.close_status_description=e.reason,r[is]&&o.reject(new Error(e.reason));for(const e of r[ls])e.resolve();Ke.safeSetTimeout((()=>{r[ss].drain((e=>{T(n,0),T(n+4,2),T(n+8,1),e.resolve()}))}),0)}catch(e){We("failed to propagate WebSocket close event: "+e.toString())}},c=e=>{try{if(r[us])return;if(!lt.is_runtime_running())return;r.removeEventListener("message",a);const t=e.message?"WebSocket error: "+e.message:"WebSocket error";We(t),r[cs]=t,Us(r,new Error(t))}catch(e){We("failed to propagate WebSocket error event: "+e.toString())}};return r.addEventListener("message",a),r.addEventListener("open",s,{once:!0}),r.addEventListener("close",i,{once:!0}),r.addEventListener("error",c,{once:!0}),r.dispose=()=>{r.removeEventListener("message",a),r.removeEventListener("open",s),r.removeEventListener("close",i),r.removeEventListener("error",c),vs(r)},r}function ys(e){if(e||mt(!1,"ERR17: expected ws instance"),e[cs])return Es(e[cs]);const t=e[as];return e[is]=!0,t.promise}function ws(e,t,n,r,o){if(e||mt(!1,"ERR17: expected ws instance"),e[cs])return Es(e[cs]);if(e[us]||e[ds])return Es("InvalidState: The WebSocket is not connected.");if(e.readyState==WebSocket.CLOSED)return null;const s=function(e,t,n,r){let o=e[ts],s=0;const a=t.byteLength;if(o){if(s=e[ns],n=e[rs],0!==a){if(s+a>o.length){const n=new Uint8Array(1.5*(s+a+50));n.set(o,0),n.subarray(s).set(t),e[ts]=o=n}else o.subarray(s).set(t);s+=a,e[ns]=s}}else r?0!==a&&(o=t,s=a):(0!==a&&(o=t.slice(),s=a,e[ns]=s,e[ts]=o),e[rs]=n);return r?0==s||null==o?hs:0===n?function(e){return void 0===ve?Ke.UTF8ArrayToString(e,0,e.byteLength):ve.decode(e)}(Fe(o,0,s)):o.subarray(0,s):null}(e,new Uint8Array(K().buffer,t,n),r,o);return o&&s?function(e,t){if(e.send(t),e[ts]=null,e.bufferedAmount<ms)return null;const{promise:n,promise_control:r}=_t(),o=e[ps];o.push(r);let s=1;const a=()=>{try{if(0===e.bufferedAmount)r.resolve();else{const t=e.readyState;if(t!=WebSocket.OPEN&&t!=WebSocket.CLOSING)r.reject(new Error(`InvalidState: ${t} The WebSocket is not connected.`));else if(!r.isDone)return globalThis.setTimeout(a,s),void(s=Math.min(1.5*s,1e3))}const t=o.indexOf(r);t>-1&&o.splice(t,1)}catch(e){We("WebSocket error in web_socket_send_and_wait: "+e.toString()),r.reject(e)}};return globalThis.setTimeout(a,0),n}(e,s):null}function ks(e,t,n){if(e||mt(!1,"ERR18: expected ws instance"),e[cs])return Es(e[cs]);if(e[us]){const t=e[_s];return T(t,0),T(t+4,2),T(t+8,1),null}const r=e[os],o=e[ss];if(r.getLength())return 0!=o.getLength()&&mt(!1,"ERR20: Invalid WS state"),Ts(e,r,t,n),null;if(e[fs]){const t=e[_s];return T(t,0),T(t+4,2),T(t+8,1),null}const{promise:s,promise_control:a}=_t(),i=a;return i.buffer_ptr=t,i.buffer_length=n,o.enqueue(i),s}function Ss(e,t,n,r){if(e||mt(!1,"ERR19: expected ws instance"),e[us]||e[ds]||e.readyState==WebSocket.CLOSED)return null;if(e[cs])return Es(e[cs]);if(e[ds]=!0,r){const{promise:r,promise_control:o}=_t();return e[ls].push(o),"string"==typeof n?e.close(t,n):e.close(t),r}return"string"==typeof n?e.close(t,n):e.close(t),null}function vs(e){if(e||mt(!1,"ERR18: expected ws instance"),!e[us]&&!e[ds]){e[us]=!0,Us(e,new Error("OperationCanceledException"));try{e.close(1e3,"Connection was aborted.")}catch(e){We("WebSocket error in ws_wasm_abort: "+e.toString())}}}function Us(e,t){const n=e[as],r=e[is];n&&r&&n.reject(t);for(const n of e[ls])n.reject(t);for(const n of e[ps])n.reject(t);e[ss].drain((e=>{e.reject(t)}))}function Ts(e,t,n,r){const o=t.peek(),s=Math.min(r,o.data.length-o.offset);if(s>0){const e=o.data.subarray(o.offset,o.offset+s);new Uint8Array(K().buffer,n,r).set(e,0),o.offset+=s}const a=o.data.length===o.offset?1:0;a&&t.dequeue();const i=e[_s];T(i,s),T(i+4,o.type),T(i+8,a)}function Es(e){return function(e){const{promise:t,promise_control:n}=_t();return e.then((e=>n.resolve(e))).catch((e=>n.reject(e))),t}(Promise.reject(new Error(e)))}function xs(e,t,n){lt.diagnosticTracing&&ze(`Loaded:${e.name} as ${e.behavior} size ${n.length} from ${t}`);const r=Ft(),s="string"==typeof e.virtualPath?e.virtualPath:e.name;let a=null;switch(e.behavior){case"dotnetwasm":case"js-module-threads":case"js-module-diagnostics":case"symbols":break;case"resource":case"assembly":case"pdb":lt._loaded_files.push({url:t,file:s});case"heap":case"icu":a=function(e){const t=e.length+16;let n=Ke._sbrk(t);if(n<=0){if(n=Ke._sbrk(t),n<=0)throw He(`sbrk failed to allocate ${t} bytes, and failed upon retry.`),new Error("Out of memory");We(`sbrk failed to allocate ${t} bytes, but succeeded upon retry!`)}return new Uint8Array(K().buffer,n,e.length).set(e),n}(n);break;case"vfs":{const e=s.lastIndexOf("/");let t=e>0?s.substring(0,e):null,r=e>0?s.substring(e+1):s;r.startsWith("/")&&(r=r.substring(1)),t?(t.startsWith("/")||(t="/"+t),ze(`Creating directory '${t}'`),Ke.FS_createPath("/",t,!0,!0)):t="/",lt.diagnosticTracing&&ze(`Creating file '${r}' in directory '${t}'`),Ke.FS_createDataFile(t,r,n,!0,!0,!0);break}default:throw new Error(`Unrecognized asset behavior:${e.behavior}, for asset ${e.name}`)}if("assembly"===e.behavior){if(!o.mono_wasm_add_assembly(s,a,n.length)){const e=lt._loaded_files.findIndex((e=>e.file==s));lt._loaded_files.splice(e,1)}}else"pdb"===e.behavior?o.mono_wasm_add_assembly(s,a,n.length):"icu"===e.behavior?function(e){if(!o.mono_wasm_load_icu_data(e))throw new Error("Failed to load ICU data")}(a):"resource"===e.behavior&&o.mono_wasm_add_satellite_assembly(s,e.culture||"",a,n.length);Pt(r,"mono.instantiateAsset:",e.name),++lt.actual_instantiated_assets_count}async function Is(e){try{const n=await e.pendingDownloadInternal.response;t=await n.text(),Ge&&mt(!1,"Another symbol map was already loaded"),Ge=t,lt.diagnosticTracing&&ze(`Deferred loading of ${t.length}ch symbol map`)}catch(t){Ve(`Error loading symbol file ${e.name}: ${JSON.stringify(t)}`)}var t}function As(){return lt.loadedFiles}const js={};function $s(e){let t=js[e];if("string"!=typeof t){const n=o.mono_jiterp_get_opcode_info(e,0);js[e]=t=Le(n)}return t}const Ls=2,Rs=64,Bs=64,Ns=-2147483648,Os={};class Cs{constructor(e){this.locals=new Map,this.permanentFunctionTypeCount=0,this.permanentFunctionTypes={},this.permanentFunctionTypesByShape={},this.permanentFunctionTypesByIndex={},this.functionTypesByIndex={},this.permanentImportedFunctionCount=0,this.permanentImportedFunctions={},this.nextImportIndex=0,this.functions=[],this.estimatedExportBytes=0,this.frame=0,this.traceBuf=[],this.branchTargets=new Set,this.constantSlots=[],this.backBranchOffsets=[],this.callHandlerReturnAddresses=[],this.nextConstantSlot=0,this.backBranchTraceLevel=0,this.compressImportNames=!1,this.lockImports=!1,this._assignParameterIndices=e=>{let t=0;for(const n in e)this.locals.set(n,t),t++;return t},this.stack=[new Ds],this.clear(e),this.cfg=new Fs(this),this.defineType("__cpp_exception",{ptr:127},64,!0)}clear(e){if(this.options=fa(),this.options.maxModuleSize>=24576)throw new Error(`blobBuilderCapacity 24576 is not large enough for jiterpreter-max-module-size of ${this.options.maxModuleSize}`);this.stackSize=1,this.inSection=!1,this.inFunction=!1,this.lockImports=!1,this.locals.clear(),this.functionTypeCount=this.permanentFunctionTypeCount,this.functionTypes=Object.create(this.permanentFunctionTypes),this.functionTypesByShape=Object.create(this.permanentFunctionTypesByShape),this.functionTypesByIndex=Object.create(this.permanentFunctionTypesByIndex),this.nextImportIndex=0,this.importedFunctionCount=0,this.importedFunctions=Object.create(this.permanentImportedFunctions);for(const e in this.importedFunctions)this.importedFunctions[e].index=void 0;this.functions.length=0,this.estimatedExportBytes=0,this.argumentCount=0,this.current.clear(),this.traceBuf.length=0,this.branchTargets.clear(),this.activeBlocks=0,this.nextConstantSlot=0,this.constantSlots.length=this.options.useConstants?e:0;for(let e=0;e<this.constantSlots.length;e++)this.constantSlots[e]=0;this.backBranchOffsets.length=0,this.callHandlerReturnAddresses.length=0,this.allowNullCheckOptimization=this.options.eliminateNullChecks,this.containsSimd=!1,this.containsAtomics=!1}_push(){this.stackSize++,this.stackSize>=this.stack.length&&this.stack.push(new Ds),this.current.clear()}_pop(e){if(this.stackSize<=1)throw new Error("Stack empty");const t=this.current;return this.stackSize--,e?(this.appendULeb(t.size),t.copyTo(this.current),null):t.getArrayView(!1).slice(0,t.size)}setImportFunction(e,t){const n=this.importedFunctions[e];if(!n)throw new Error("No import named "+e);n.func=t}getExceptionTag(){const e=Ke.wasmExports.__cpp_exception;return void 0!==e&&(e instanceof WebAssembly.Tag||mt(!1,`expected __cpp_exception export from dotnet.wasm to be WebAssembly.Tag but was ${e}`)),e}getWasmImports(){const e=ct.getMemory();e instanceof WebAssembly.Memory||mt(!1,`expected heap import to be WebAssembly.Memory but was ${e}`);const t=this.getExceptionTag(),n={c:this.getConstants(),m:{h:e}};t&&(n.x={e:t});const r=this.getImportsToEmit();for(let e=0;e<r.length;e++){const t=r[e];if("function"!=typeof t.func)throw new Error(`Import '${t.name}' not found or not a function`);const o=this.getCompressedName(t);let s=n[t.module];s||(s=n[t.module]={}),s[o]=t.func}return n}get bytesGeneratedSoFar(){const e=this.compressImportNames?8:20;return this.stack[0].size+32+this.importedFunctionCount*e+2*this.functions.length+this.estimatedExportBytes}get current(){return this.stack[this.stackSize-1]}get size(){return this.current.size}appendU8(e){if(e!=e>>>0||e>255)throw new Error(`Byte out of range: ${e}`);return this.current.appendU8(e)}appendSimd(e,t){return this.current.appendU8(253),0|e||0===e&&!0===t||mt(!1,"Expected non-v128_load simd opcode or allowLoad==true"),this.current.appendULeb(e)}appendAtomic(e,t){return this.current.appendU8(254),0|e||0===e&&!0===t||mt(!1,"Expected non-notify atomic opcode or allowNotify==true"),this.current.appendU8(e)}appendU32(e){return this.current.appendU32(e)}appendF32(e){return this.current.appendF32(e)}appendF64(e){return this.current.appendF64(e)}appendBoundaryValue(e,t){return this.current.appendBoundaryValue(e,t)}appendULeb(e){return this.current.appendULeb(e)}appendLeb(e){return this.current.appendLeb(e)}appendLebRef(e,t){return this.current.appendLebRef(e,t)}appendBytes(e){return this.current.appendBytes(e)}appendName(e){return this.current.appendName(e)}ret(e){this.ip_const(e),this.appendU8(15)}i32_const(e){this.appendU8(65),this.appendLeb(e)}ptr_const(e){let t=this.options.useConstants?this.constantSlots.indexOf(e):-1;this.options.useConstants&&t<0&&this.nextConstantSlot<this.constantSlots.length&&(t=this.nextConstantSlot++,this.constantSlots[t]=e),t>=0?(this.appendU8(35),this.appendLeb(t)):this.i32_const(e)}ip_const(e){this.appendU8(65),this.appendLeb(e-this.base)}i52_const(e){this.appendU8(66),this.appendLeb(e)}v128_const(e){if(0===e)this.local("v128_zero");else{if("object"!=typeof e)throw new Error("Expected v128_const arg to be 0 or a Uint8Array");{16!==e.byteLength&&mt(!1,"Expected v128_const arg to be 16 bytes in size");let t=!0;for(let n=0;n<16;n++)0!==e[n]&&(t=!1);t?this.local("v128_zero"):(this.appendSimd(12),this.appendBytes(e))}}}defineType(e,t,n,r){if(this.functionTypes[e])throw new Error(`Function type ${e} already defined`);if(r&&this.functionTypeCount>this.permanentFunctionTypeCount)throw new Error("New permanent function types cannot be defined after non-permanent ones");let o="";for(const e in t)o+=t[e]+",";o+=n;let s=this.functionTypesByShape[o];"number"!=typeof s&&(s=this.functionTypeCount++,r?(this.permanentFunctionTypeCount++,this.permanentFunctionTypesByShape[o]=s,this.permanentFunctionTypesByIndex[s]=[t,Object.values(t).length,n]):(this.functionTypesByShape[o]=s,this.functionTypesByIndex[s]=[t,Object.values(t).length,n]));const a=[s,t,n,`(${JSON.stringify(t)}) -> ${n}`,r];return r?this.permanentFunctionTypes[e]=a:this.functionTypes[e]=a,s}generateTypeSection(){this.beginSection(1),this.appendULeb(this.functionTypeCount);for(let e=0;e<this.functionTypeCount;e++){const t=this.functionTypesByIndex[e][0],n=this.functionTypesByIndex[e][1],r=this.functionTypesByIndex[e][2];this.appendU8(96),this.appendULeb(n);for(const e in t)this.appendU8(t[e]);64!==r?(this.appendULeb(1),this.appendU8(r)):this.appendULeb(0)}this.endSection()}getImportedFunctionTable(){const e={};for(const t in this.importedFunctions){const n=this.importedFunctions[t];e[this.getCompressedName(n)]=n.func}return e}getCompressedName(e){if(!this.compressImportNames||"number"!=typeof e.index)return e.name;let t=Os[e.index];return"string"!=typeof t&&(Os[e.index]=t=e.index.toString(36)),t}getImportsToEmit(){const e=[];for(const t in this.importedFunctions){const n=this.importedFunctions[t];"number"==typeof n.index&&e.push(n)}return e.sort(((e,t)=>e.index-t.index)),e}_generateImportSection(e){const t=this.getImportsToEmit();if(this.lockImports=!0,!1!==e)throw new Error("function table imports are disabled");const n=void 0!==this.getExceptionTag();this.beginSection(2),this.appendULeb(1+(n?1:0)+t.length+this.constantSlots.length+(!1!==e?1:0));for(let e=0;e<t.length;e++){const n=t[e];this.appendName(n.module),this.appendName(this.getCompressedName(n)),this.appendU8(0),this.appendU8(n.typeIndex)}for(let e=0;e<this.constantSlots.length;e++)this.appendName("c"),this.appendName(e.toString(36)),this.appendU8(3),this.appendU8(127),this.appendU8(0);this.appendName("m"),this.appendName("h"),this.appendU8(2),this.appendU8(0),this.appendULeb(1),n&&(this.appendName("x"),this.appendName("e"),this.appendU8(4),this.appendU8(0),this.appendULeb(this.getTypeIndex("__cpp_exception"))),!1!==e&&(this.appendName("f"),this.appendName("f"),this.appendU8(1),this.appendU8(112),this.appendU8(0),this.appendULeb(1))}defineImportedFunction(e,t,n,r,o){if(this.lockImports)throw new Error("Import section already generated");if(r&&this.importedFunctionCount>0)throw new Error("New permanent imports cannot be defined after any indexes have been assigned");const s=this.functionTypes[n];if(!s)throw new Error("No function type named "+n);if(r&&!s[4])throw new Error("A permanent import must have a permanent function type");const a=s[0],i=r?this.permanentImportedFunctions:this.importedFunctions;if("number"==typeof o&&(o=qs().get(o)),"function"!=typeof o&&void 0!==o)throw new Error(`Value passed for imported function ${t} was not a function or valid function pointer or undefined`);return i[t]={index:void 0,typeIndex:a,module:e,name:t,func:o}}markImportAsUsed(e){const t=this.importedFunctions[e];if(!t)throw new Error("No imported function named "+e);"number"!=typeof t.index&&(t.index=this.importedFunctionCount++)}getTypeIndex(e){const t=this.functionTypes[e];if(!t)throw new Error("No type named "+e);return t[0]}defineFunction(e,t){const n={index:this.functions.length,name:e.name,typeName:e.type,typeIndex:this.getTypeIndex(e.type),export:e.export,locals:e.locals,generator:t,error:null,blob:null};return this.functions.push(n),n.export&&(this.estimatedExportBytes+=n.name.length+8),n}emitImportsAndFunctions(e){let t=0;for(let e=0;e<this.functions.length;e++){const n=this.functions[e];n.export&&t++,this.beginFunction(n.typeName,n.locals);try{n.blob=n.generator()}finally{try{n.blob||(n.blob=this.endFunction(!1))}catch(e){}}}this._generateImportSection(e),this.beginSection(3),this.appendULeb(this.functions.length);for(let e=0;e<this.functions.length;e++)this.appendULeb(this.functions[e].typeIndex);this.beginSection(7),this.appendULeb(t);for(let e=0;e<this.functions.length;e++){const t=this.functions[e];t.export&&(this.appendName(t.name),this.appendU8(0),this.appendULeb(this.importedFunctionCount+e))}this.beginSection(10),this.appendULeb(this.functions.length);for(let e=0;e<this.functions.length;e++){const t=this.functions[e];t.blob||mt(!1,`expected function ${t.name} to have a body`),this.appendULeb(t.blob.length),this.appendBytes(t.blob)}this.endSection()}call_indirect(){throw new Error("call_indirect unavailable")}callImport(e){const t=this.importedFunctions[e];if(!t)throw new Error("No imported function named "+e);if("number"!=typeof t.index){if(this.lockImports)throw new Error("Import section was emitted before assigning an index to import named "+e);t.index=this.importedFunctionCount++}this.appendU8(16),this.appendULeb(t.index)}beginSection(e){this.inSection&&this._pop(!0),this.appendU8(e),this._push(),this.inSection=!0}endSection(){if(!this.inSection)throw new Error("Not in section");this.inFunction&&this.endFunction(!0),this._pop(!0),this.inSection=!1}_assignLocalIndices(e,t,n,r){e[127]=0,e[126]=0,e[125]=0,e[124]=0,e[123]=0;for(const n in t){const o=t[n];e[o]<=0&&r++,e[o]++}const o=e[127],s=o+e[126],a=s+e[125],i=a+e[124];e[127]=0,e[126]=0,e[125]=0,e[124]=0,e[123]=0;for(const r in t){const c=t[r];let l,p=0;switch(c){case 127:l=0;break;case 126:l=o;break;case 125:l=s;break;case 124:l=a;break;case 123:l=i;break;default:throw new Error(`Unimplemented valtype: ${c}`)}p=e[c]+++l+n,this.locals.set(r,p)}return r}beginFunction(e,t){if(this.inFunction)throw new Error("Already in function");this._push();const n=this.functionTypes[e];this.locals.clear(),this.branchTargets.clear();let r={};const o=[127,126,125,124,123];let s=0;const a=this._assignParameterIndices(n[1]);t?s=this._assignLocalIndices(r,t,a,s):r={},this.appendULeb(s);for(let e=0;e<o.length;e++){const t=o[e],n=r[t];n&&(this.appendULeb(n),this.appendU8(t))}this.inFunction=!0}endFunction(e){if(!this.inFunction)throw new Error("Not in function");if(this.activeBlocks>0)throw new Error(`${this.activeBlocks} unclosed block(s) at end of function`);const t=this._pop(e);return this.inFunction=!1,t}block(e,t){const n=this.appendU8(t||2);return e?this.appendU8(e):this.appendU8(64),this.activeBlocks++,n}endBlock(){if(this.activeBlocks<=0)throw new Error("No blocks active");this.activeBlocks--,this.appendU8(11)}arg(e,t){const n="string"==typeof e?this.locals.has(e)?this.locals.get(e):void 0:e;if("number"!=typeof n)throw new Error("No local named "+e);t&&this.appendU8(t),this.appendULeb(n)}local(e,t){const n="string"==typeof e?this.locals.has(e)?this.locals.get(e):void 0:e+this.argumentCount;if("number"!=typeof n)throw new Error("No local named "+e);t?this.appendU8(t):this.appendU8(32),this.appendULeb(n)}appendMemarg(e,t){this.appendULeb(t),this.appendULeb(e)}lea(e,t){"string"==typeof e?this.local(e):this.i32_const(e),this.i32_const(t),this.appendU8(106)}getArrayView(e,t){if(!0!==t&&this.stackSize>1)throw new Error("Jiterpreter block stack not empty");return this.stack[0].getArrayView(e)}getConstants(){const e={};for(let t=0;t<this.constantSlots.length;t++)e[t.toString(36)]=this.constantSlots[t];return e}}class Ds{constructor(){this.textBuf=new Uint8Array(1024),this.capacity=24576,this.buffer=_(this.capacity),this.buffer||mt(!1,"Failed to allocate 24576b buffer for BlobBuilder"),K().fill(0,this.buffer,this.buffer+this.capacity),this.size=0,this.clear(),"function"==typeof TextEncoder&&(this.encoder=new TextEncoder)}clear(){this.size=0}appendU8(e){if(this.size>=this.capacity)throw new Error("Buffer full");const t=this.size;return K()[this.buffer+this.size++]=e,t}appendU32(e){const t=this.size;return o.mono_jiterp_write_number_unaligned(this.buffer+this.size,e,0),this.size+=4,t}appendI32(e){const t=this.size;return o.mono_jiterp_write_number_unaligned(this.buffer+this.size,e,1),this.size+=4,t}appendF32(e){const t=this.size;return o.mono_jiterp_write_number_unaligned(this.buffer+this.size,e,2),this.size+=4,t}appendF64(e){const t=this.size;return o.mono_jiterp_write_number_unaligned(this.buffer+this.size,e,3),this.size+=8,t}appendBoundaryValue(e,t){if(this.size+8>=this.capacity)throw new Error("Buffer full");const n=o.mono_jiterp_encode_leb_signed_boundary(this.buffer+this.size,e,t);if(n<1)throw new Error(`Failed to encode ${e} bit boundary value with sign ${t}`);return this.size+=n,n}appendULeb(e){if("number"!=typeof e&&mt(!1,`appendULeb expected number but got ${e}`),e>=0||mt(!1,"cannot pass negative value to appendULeb"),e<127){if(this.size+1>=this.capacity)throw new Error("Buffer full");return this.appendU8(e),1}if(this.size+8>=this.capacity)throw new Error("Buffer full");const t=o.mono_jiterp_encode_leb52(this.buffer+this.size,e,0);if(t<1)throw new Error(`Failed to encode value '${e}' as unsigned leb`);return this.size+=t,t}appendLeb(e){if("number"!=typeof e&&mt(!1,`appendLeb expected number but got ${e}`),this.size+8>=this.capacity)throw new Error("Buffer full");const t=o.mono_jiterp_encode_leb52(this.buffer+this.size,e,1);if(t<1)throw new Error(`Failed to encode value '${e}' as signed leb`);return this.size+=t,t}appendLebRef(e,t){if(this.size+8>=this.capacity)throw new Error("Buffer full");const n=o.mono_jiterp_encode_leb64_ref(this.buffer+this.size,e,t?1:0);if(n<1)throw new Error("Failed to encode value as leb");return this.size+=n,n}copyTo(e,t){if("number"!=typeof t&&(t=this.size),e.size+t>=e.capacity)throw new Error("Destination buffer full");K().copyWithin(e.buffer+e.size,this.buffer,this.buffer+t),e.size+=t}appendBytes(e,t){const n=this.size,r=K(),o="number"!=typeof t?e.length:t;if(this.size+o>=this.capacity)throw new Error("Buffer full");return e.buffer===r.buffer?(r.copyWithin(this.buffer+n,e.byteOffset,e.byteOffset+o),this.size+=o):("number"==typeof t&&(e=new Uint8Array(e.buffer,e.byteOffset,t)),this.getArrayView(!0).set(e,this.size),this.size+=e.length),n}appendName(e){let t=e.length,n=1===e.length?e.charCodeAt(0):-1;if(n>127&&(n=-1),t&&n<0)if(this.encoder)t=this.encoder.encodeInto(e,this.textBuf).written||0;else for(let n=0;n<t;n++){const t=e.charCodeAt(n);if(t>127)throw new Error("Out of range character and no TextEncoder available");this.textBuf[n]=t}this.appendULeb(t),n>=0?this.appendU8(n):t>1&&this.appendBytes(this.textBuf,t)}getArrayView(e){return new Uint8Array(K().buffer,this.buffer,e?this.capacity:this.size)}}class Fs{constructor(e){this.segments=[],this.backBranchTargets=null,this.lastSegmentEnd=0,this.overheadBytes=0,this.blockStack=[],this.backDispatchOffsets=[],this.dispatchTable=new Map,this.observedBackBranchTargets=new Set,this.trace=0,this.builder=e}initialize(e,t,n){this.segments.length=0,this.blockStack.length=0,this.startOfBody=e,this.backBranchTargets=t,this.base=this.builder.base,this.ip=this.lastSegmentStartIp=this.firstOpcodeIp=this.builder.base,this.lastSegmentEnd=0,this.overheadBytes=10,this.dispatchTable.clear(),this.observedBackBranchTargets.clear(),this.trace=n,this.backDispatchOffsets.length=0}entry(e){this.entryIp=e;const t=o.mono_jiterp_get_opcode_info(676,1);return this.firstOpcodeIp=e+2*t,this.appendBlob(),1!==this.segments.length&&mt(!1,"expected 1 segment"),"blob"!==this.segments[0].type&&mt(!1,"expected blob"),this.entryBlob=this.segments[0],this.segments.length=0,this.overheadBytes+=9,this.backBranchTargets&&(this.overheadBytes+=20,this.overheadBytes+=this.backBranchTargets.length),this.firstOpcodeIp}appendBlob(){this.builder.current.size!==this.lastSegmentEnd&&(this.segments.push({type:"blob",ip:this.lastSegmentStartIp,start:this.lastSegmentEnd,length:this.builder.current.size-this.lastSegmentEnd}),this.lastSegmentStartIp=this.ip,this.lastSegmentEnd=this.builder.current.size,this.overheadBytes+=2)}startBranchBlock(e,t){this.appendBlob(),this.segments.push({type:"branch-block-header",ip:e,isBackBranchTarget:t}),this.overheadBytes+=1}branch(e,t,n){t&&this.observedBackBranchTargets.add(e),this.appendBlob(),this.segments.push({type:"branch",from:this.ip,target:e,isBackward:t,branchType:n}),this.overheadBytes+=4,t&&(this.overheadBytes+=4)}jumpTable(e,t){this.appendBlob(),this.segments.push({type:"jump-table",from:this.ip,targets:e,fallthrough:t}),this.overheadBytes+=4,this.overheadBytes+=e.length,this.overheadBytes+=24}emitBlob(e,t){const n=t.subarray(e.start,e.start+e.length);this.builder.appendBytes(n)}generate(){this.appendBlob();const e=this.builder.endFunction(!1);this.builder._push(),this.builder.base=this.base,this.emitBlob(this.entryBlob,e),this.backBranchTargets&&this.builder.block(64,3);for(let e=0;e<this.segments.length;e++){const t=this.segments[e];"branch-block-header"===t.type&&this.blockStack.push(t.ip)}this.blockStack.sort(((e,t)=>e-t));for(let e=0;e<this.blockStack.length;e++)this.builder.block(64);if(this.backBranchTargets){this.backDispatchOffsets.length=0;for(let e=0;e<this.backBranchTargets.length;e++){const t=2*this.backBranchTargets[e]+this.startOfBody;this.blockStack.indexOf(t)<0||this.observedBackBranchTargets.has(t)&&(this.dispatchTable.set(t,this.backDispatchOffsets.length+1),this.backDispatchOffsets.push(t))}if(0===this.backDispatchOffsets.length)this.trace>0&&Ve("No back branch targets were reachable after filtering");else if(1===this.backDispatchOffsets.length)this.trace>0&&(this.backDispatchOffsets[0]===this.entryIp?Ve(`Exactly one back dispatch offset and it was the entry point 0x${this.entryIp.toString(16)}`):Ve(`Exactly one back dispatch offset and it was 0x${this.backDispatchOffsets[0].toString(16)}`)),this.builder.local("disp"),this.builder.appendU8(13),this.builder.appendULeb(this.blockStack.indexOf(this.backDispatchOffsets[0]));else{this.trace>0&&Ve(`${this.backDispatchOffsets.length} back branch offsets after filtering.`),this.builder.block(64),this.builder.block(64),this.builder.local("disp"),this.builder.appendU8(14),this.builder.appendULeb(this.backDispatchOffsets.length+1),this.builder.appendULeb(1);for(let e=0;e<this.backDispatchOffsets.length;e++)this.builder.appendULeb(this.blockStack.indexOf(this.backDispatchOffsets[e])+2);this.builder.appendULeb(0),this.builder.endBlock(),this.builder.appendU8(0),this.builder.endBlock()}this.backDispatchOffsets.length>0&&this.blockStack.push(0)}this.trace>1&&Ve(`blockStack=${this.blockStack}`);for(let t=0;t<this.segments.length;t++){const n=this.segments[t];switch(n.type){case"blob":this.emitBlob(n,e);break;case"branch-block-header":{const e=this.blockStack.indexOf(n.ip);0!==e&&mt(!1,`expected ${n.ip} on top of blockStack but found it at index ${e}, top is ${this.blockStack[0]}`),this.builder.endBlock(),this.blockStack.shift();break}case"jump-table":{const e=1;this.builder.appendU8(14),this.builder.appendULeb(n.targets.length);for(const t of n.targets){const n=this.blockStack.indexOf(t);n>=0?(da(13,1),this.builder.appendULeb(n+e)):(da(14,1),this.trace>0&&Ve(`Switch target ${t} not found in block stack ${this.blockStack}`),this.builder.appendULeb(0))}const t=this.blockStack.indexOf(n.fallthrough);t>=0?(da(13,1),this.builder.appendULeb(t+e)):(da(14,1),this.trace>0&&Ve(`Switch fallthrough ${n.fallthrough} not found in block stack ${this.blockStack}`),this.builder.appendULeb(0)),this.builder.appendU8(0);break}case"branch":{const e=n.isBackward?0:n.target;let t,r=this.blockStack.indexOf(e),o=!1;if(n.isBackward&&(this.dispatchTable.has(n.target)?(t=this.dispatchTable.get(n.target),this.trace>1&&Ve(`backward br from ${n.from.toString(16)} to ${n.target.toString(16)}: disp=${t}`),o=!0):(this.trace>0&&Ve(`br from ${n.from.toString(16)} to ${n.target.toString(16)} failed: back branch target not in dispatch table`),r=-1)),r>=0||o){let e=0;switch(n.branchType){case 2:this.builder,n.from,void 0!==t&&(this.builder.i32_const(t),this.builder.local("disp",33)),this.builder.appendU8(12);break;case 3:this.builder.block(64,4),this.builder,n.from,void 0!==t&&(this.builder.i32_const(t),this.builder.local("disp",33)),this.builder.appendU8(12),e=1;break;case 0:void 0!==t&&(this.builder.i32_const(t),this.builder.local("disp",33)),this.builder.appendU8(12);break;case 1:void 0!==t?(this.builder.block(64,4),this.builder.i32_const(t),this.builder.local("disp",33),e=1,this.builder.appendU8(12)):this.builder.appendU8(13);break;default:throw new Error("Unimplemented branch type")}this.builder.appendULeb(e+r),e&&this.builder.endBlock(),this.trace>1&&Ve(`br from ${n.from.toString(16)} to ${n.target.toString(16)} breaking out ${e+r+1} level(s)`)}else{if(this.trace>0){const e=this.base;n.target>=e&&n.target<this.exitIp?Ve(`br from ${n.from.toString(16)} to ${n.target.toString(16)} failed (inside of trace!)`):this.trace>1&&Ve(`br from ${n.from.toString(16)} to ${n.target.toString(16)} failed (outside of trace 0x${e.toString(16)} - 0x${this.exitIp.toString(16)})`)}const e=1===n.branchType||3===n.branchType;e&&this.builder.block(64,4),Ws(this.builder,n.target,4),e&&this.builder.endBlock()}break}default:throw new Error("unreachable")}}return this.backBranchTargets&&(this.blockStack.length<=1||mt(!1,"expected one or zero entries in the block stack at the end"),this.blockStack.length&&this.blockStack.shift(),this.builder.endBlock()),0!==this.blockStack.length&&mt(!1,`expected block stack to be empty at end of function but it was ${this.blockStack}`),this.builder.ip_const(this.exitIp),this.builder.appendU8(15),this.builder.appendU8(11),this.builder._pop(!1)}}let Ps;const Ms={},zs=globalThis.performance&&globalThis.performance.now?globalThis.performance.now.bind(globalThis.performance):Date.now;function Vs(e,t,n){let r;switch(n){case 633:r="prof_enter";break;case 634:r="prof_samplepoint";break;case 635:case 636:r="prof_leave";break;default:throw new Error(`Unimplemented profiler event ${n}`)}e.local("frame"),e.i32_const(t),e.callImport(r)}function Ws(e,t,n){e.ip_const(t),e.options.countBailouts&&(e.i32_const(e.traceIndex),e.i32_const(n),e.callImport("bailout")),e.appendU8(15)}function Hs(e,t,n,r){e.local("cinfo"),e.block(64,4),e.local("cinfo"),e.local("disp"),e.appendU8(54),e.appendMemarg(ea(19),0),n<=e.options.monitoringLongDistance+2&&(e.local("cinfo"),e.i32_const(n),e.appendU8(54),e.appendMemarg(ea(20),0)),e.endBlock(),e.ip_const(t),e.options.countBailouts&&(e.i32_const(e.traceIndex),e.i32_const(r),e.callImport("bailout")),e.appendU8(15)}function qs(){if(Ps||(Ps=ct.getWasmIndirectFunctionTable()),!Ps)throw new Error("Module did not export the indirect function table");return Ps}function Gs(e,t){t||mt(!1,"Attempting to set null function into table");const n=o.mono_jiterp_allocate_table_entry(e);return n>0&&qs().set(n,t),n}function Js(e,t,n,r,o){if(r<=0)return o&&e.appendU8(26),!0;if(r>=Rs)return!1;const s=o?"memop_dest":"pLocals";o&&e.local(s,33);let a=o?0:t;if(e.options.enableSimd){const t=16;for(;r>=t;)e.local(s),e.v128_const(0),e.appendSimd(11),e.appendMemarg(a,0),a+=t,r-=t}for(;r>=8;)e.local(s),e.i52_const(0),e.appendU8(55),e.appendMemarg(a,0),a+=8,r-=8;for(;r>=1;){e.local(s),e.i32_const(0);let t=r%4;switch(t){case 0:t=4,e.appendU8(54);break;case 1:e.appendU8(58);break;case 3:case 2:t=2,e.appendU8(59)}e.appendMemarg(a,0),a+=t,r-=t}return!0}function Xs(e,t,n){Js(e,0,0,n,!0)||(e.i32_const(t),e.i32_const(n),e.appendU8(252),e.appendU8(11),e.appendU8(0))}function Qs(e,t,n,r,o,s,a){if(r<=0)return o&&(e.appendU8(26),e.appendU8(26)),!0;if(r>=Bs)return!1;o?(s=s||"memop_dest",a=a||"memop_src",e.local(a,33),e.local(s,33)):s&&a||(s=a="pLocals");let i=o?0:t,c=o?0:n;if(e.options.enableSimd){const t=16;for(;r>=t;)e.local(s),e.local(a),e.appendSimd(0,!0),e.appendMemarg(c,0),e.appendSimd(11),e.appendMemarg(i,0),i+=t,c+=t,r-=t}for(;r>=8;)e.local(s),e.local(a),e.appendU8(41),e.appendMemarg(c,0),e.appendU8(55),e.appendMemarg(i,0),i+=8,c+=8,r-=8;for(;r>=1;){let t,n,o=r%4;switch(o){case 0:o=4,t=40,n=54;break;default:case 1:o=1,t=44,n=58;break;case 3:case 2:o=2,t=46,n=59}e.local(s),e.local(a),e.appendU8(t),e.appendMemarg(c,0),e.appendU8(n),e.appendMemarg(i,0),c+=o,i+=o,r-=o}return!0}function Ys(e,t){return Qs(e,0,0,t,!0)||(e.i32_const(t),e.appendU8(252),e.appendU8(10),e.appendU8(0),e.appendU8(0)),!0}function Zs(){const e=da(5,1);e>=Ls&&(Ve(`Disabling jiterpreter after ${e} failures`),pa({enableTraces:!1,enableInterpEntry:!1,enableJitCall:!1}))}const Ks={};function ea(e){const t=Ks[e];return void 0===t?Ks[e]=o.mono_jiterp_get_member_offset(e):t}function ta(e){const t=Ke.wasmExports[e];if("function"!=typeof t)throw new Error(`raw cwrap ${e} not found`);return t}const na={};function ra(e){let t=na[e];return"number"!=typeof t&&(t=na[e]=o.mono_jiterp_get_opcode_value_table_entry(e)),t}function oa(e,t){return[e,e,t]}let sa;function aa(){if(!o.mono_wasm_is_zero_page_reserved())return!1;if(!0===sa)return!1;const e=te();for(let t=0;t<8;t++)if(0!==e[t])return!1===sa&&He(`Zero page optimizations are enabled but garbage appeared in memory at address ${4*t}: ${e[t]}`),sa=!0,!1;return sa=!1,!0}const ia={enableTraces:"jiterpreter-traces-enabled",enableInterpEntry:"jiterpreter-interp-entry-enabled",enableJitCall:"jiterpreter-jit-call-enabled",enableBackwardBranches:"jiterpreter-backward-branch-entries-enabled",enableCallResume:"jiterpreter-call-resume-enabled",enableWasmEh:"jiterpreter-wasm-eh-enabled",enableSimd:"jiterpreter-simd-enabled",enableAtomics:"jiterpreter-atomics-enabled",zeroPageOptimization:"jiterpreter-zero-page-optimization",cprop:"jiterpreter-constant-propagation",enableStats:"jiterpreter-stats-enabled",disableHeuristic:"jiterpreter-disable-heuristic",estimateHeat:"jiterpreter-estimate-heat",countBailouts:"jiterpreter-count-bailouts",dumpTraces:"jiterpreter-dump-traces",useConstants:"jiterpreter-use-constants",eliminateNullChecks:"jiterpreter-eliminate-null-checks",noExitBackwardBranches:"jiterpreter-backward-branches-enabled",directJitCalls:"jiterpreter-direct-jit-calls",minimumTraceValue:"jiterpreter-minimum-trace-value",minimumTraceHitCount:"jiterpreter-minimum-trace-hit-count",monitoringPeriod:"jiterpreter-trace-monitoring-period",monitoringShortDistance:"jiterpreter-trace-monitoring-short-distance",monitoringLongDistance:"jiterpreter-trace-monitoring-long-distance",monitoringMaxAveragePenalty:"jiterpreter-trace-monitoring-max-average-penalty",backBranchBoost:"jiterpreter-back-branch-boost",jitCallHitCount:"jiterpreter-jit-call-hit-count",jitCallFlushThreshold:"jiterpreter-jit-call-queue-flush-threshold",interpEntryHitCount:"jiterpreter-interp-entry-hit-count",interpEntryFlushThreshold:"jiterpreter-interp-entry-queue-flush-threshold",wasmBytesLimit:"jiterpreter-wasm-bytes-limit",tableSize:"jiterpreter-table-size",aotTableSize:"jiterpreter-aot-table-size",maxModuleSize:"jiterpreter-max-module-size",maxSwitchSize:"jiterpreter-max-switch-size"};let ca=-1,la={};function pa(e){for(const t in e){const n=ia[t];if(!n){He(`Unrecognized jiterpreter option: ${t}`);continue}const r=e[t];"boolean"==typeof r?o.mono_jiterp_parse_option((r?"--":"--no-")+n):"number"==typeof r?o.mono_jiterp_parse_option(`--${n}=${r}`):He(`Jiterpreter option must be a boolean or a number but was ${typeof r} '${r}'`)}}function ua(e){return o.mono_jiterp_get_counter(e)}function da(e,t){return o.mono_jiterp_modify_counter(e,t)}function fa(){const e=o.mono_jiterp_get_options_version();return e!==ca&&(function(){la={};for(const e in ia){const t=o.mono_jiterp_get_option_as_int(ia[e]);t!==Ns?la[e]=t:Ve(`Failed to retrieve value of option ${ia[e]}`)}}(),ca=e),la}function _a(e,t,n,r){const s=qs(),a=t,i=a+n-1;return i<s.length||mt(!1,`Last index out of range: ${i} >= ${s.length}`),s.set(a,r),o.mono_jiterp_initialize_table(e,a,i),t+n}let ma=!1;const ha=["Unknown","InterpreterTiering","NullCheck","VtableNotInitialized","Branch","BackwardBranch","ConditionalBranch","ConditionalBackwardBranch","ComplexBranch","ArrayLoadFailed","ArrayStoreFailed","StringOperationFailed","DivideByZero","Overflow","Return","Call","Throw","AllocFailed","SpanOperationFailed","CastFailed","SafepointBranchTaken","UnboxFailed","CallDelegate","Debugging","Icall","UnexpectedRetIp","LeaveCheck","SwitchSize","SwitchTarget"],ga={2:["V128_I1_NEGATION","V128_I2_NEGATION","V128_I4_NEGATION","V128_ONES_COMPLEMENT","V128_U2_WIDEN_LOWER","V128_U2_WIDEN_UPPER","V128_I1_CREATE_SCALAR","V128_I2_CREATE_SCALAR","V128_I4_CREATE_SCALAR","V128_I8_CREATE_SCALAR","V128_I1_EXTRACT_MSB","V128_I2_EXTRACT_MSB","V128_I4_EXTRACT_MSB","V128_I8_EXTRACT_MSB","V128_I1_CREATE","V128_I2_CREATE","V128_I4_CREATE","V128_I8_CREATE","SplatX1","SplatX2","SplatX4","SplatX8","NegateD1","NegateD2","NegateD4","NegateD8","NegateR4","NegateR8","SqrtR4","SqrtR8","CeilingR4","CeilingR8","FloorR4","FloorR8","TruncateR4","TruncateR8","RoundToNearestR4","RoundToNearestR8","NotANY","AnyTrueANY","AllTrueD1","AllTrueD2","AllTrueD4","AllTrueD8","PopCountU1","BitmaskD1","BitmaskD2","BitmaskD4","BitmaskD8","AddPairwiseWideningI1","AddPairwiseWideningU1","AddPairwiseWideningI2","AddPairwiseWideningU2","AbsI1","AbsI2","AbsI4","AbsI8","AbsR4","AbsR8","ConvertToSingleI4","ConvertToSingleU4","ConvertToSingleR8","ConvertToDoubleLowerI4","ConvertToDoubleLowerU4","ConvertToDoubleLowerR4","ConvertToInt32SaturateR4","ConvertToUInt32SaturateR4","ConvertToInt32SaturateR8","ConvertToUInt32SaturateR8","SignExtendWideningLowerD1","SignExtendWideningLowerD2","SignExtendWideningLowerD4","SignExtendWideningUpperD1","SignExtendWideningUpperD2","SignExtendWideningUpperD4","ZeroExtendWideningLowerD1","ZeroExtendWideningLowerD2","ZeroExtendWideningLowerD4","ZeroExtendWideningUpperD1","ZeroExtendWideningUpperD2","ZeroExtendWideningUpperD4","LoadVector128ANY","LoadScalarVector128X4","LoadScalarVector128X8","LoadScalarAndSplatVector128X1","LoadScalarAndSplatVector128X2","LoadScalarAndSplatVector128X4","LoadScalarAndSplatVector128X8","LoadWideningVector128I1","LoadWideningVector128U1","LoadWideningVector128I2","LoadWideningVector128U2","LoadWideningVector128I4","LoadWideningVector128U4"],3:["V128_I1_ADD","V128_I2_ADD","V128_I4_ADD","V128_R4_ADD","V128_I1_SUB","V128_I2_SUB","V128_I4_SUB","V128_R4_SUB","V128_BITWISE_AND","V128_BITWISE_OR","V128_BITWISE_EQUALITY","V128_BITWISE_INEQUALITY","V128_R4_FLOAT_EQUALITY","V128_R8_FLOAT_EQUALITY","V128_EXCLUSIVE_OR","V128_I1_MULTIPLY","V128_I2_MULTIPLY","V128_I4_MULTIPLY","V128_R4_MULTIPLY","V128_R4_DIVISION","V128_I1_LEFT_SHIFT","V128_I2_LEFT_SHIFT","V128_I4_LEFT_SHIFT","V128_I8_LEFT_SHIFT","V128_I1_RIGHT_SHIFT","V128_I2_RIGHT_SHIFT","V128_I4_RIGHT_SHIFT","V128_I1_URIGHT_SHIFT","V128_I2_URIGHT_SHIFT","V128_I4_URIGHT_SHIFT","V128_I8_URIGHT_SHIFT","V128_U1_NARROW","V128_U1_GREATER_THAN","V128_I1_LESS_THAN","V128_U1_LESS_THAN","V128_I2_LESS_THAN","V128_I1_EQUALS","V128_I2_EQUALS","V128_I4_EQUALS","V128_R4_EQUALS","V128_I8_EQUALS","V128_I1_EQUALS_ANY","V128_I2_EQUALS_ANY","V128_I4_EQUALS_ANY","V128_I8_EQUALS_ANY","V128_AND_NOT","V128_U2_LESS_THAN_EQUAL","V128_I1_SHUFFLE","V128_I2_SHUFFLE","V128_I4_SHUFFLE","V128_I8_SHUFFLE","ExtractScalarI1","ExtractScalarU1","ExtractScalarI2","ExtractScalarU2","ExtractScalarD4","ExtractScalarD8","ExtractScalarR4","ExtractScalarR8","SwizzleD1","AddD1","AddD2","AddD4","AddD8","AddR4","AddR8","SubtractD1","SubtractD2","SubtractD4","SubtractD8","SubtractR4","SubtractR8","MultiplyD2","MultiplyD4","MultiplyD8","MultiplyR4","MultiplyR8","DivideR4","DivideR8","DotI2","ShiftLeftD1","ShiftLeftD2","ShiftLeftD4","ShiftLeftD8","ShiftRightArithmeticD1","ShiftRightArithmeticD2","ShiftRightArithmeticD4","ShiftRightArithmeticD8","ShiftRightLogicalD1","ShiftRightLogicalD2","ShiftRightLogicalD4","ShiftRightLogicalD8","AndANY","AndNotANY","OrANY","XorANY","CompareEqualD1","CompareEqualD2","CompareEqualD4","CompareEqualD8","CompareEqualR4","CompareEqualR8","CompareNotEqualD1","CompareNotEqualD2","CompareNotEqualD4","CompareNotEqualD8","CompareNotEqualR4","CompareNotEqualR8","CompareLessThanI1","CompareLessThanU1","CompareLessThanI2","CompareLessThanU2","CompareLessThanI4","CompareLessThanU4","CompareLessThanI8","CompareLessThanR4","CompareLessThanR8","CompareLessThanOrEqualI1","CompareLessThanOrEqualU1","CompareLessThanOrEqualI2","CompareLessThanOrEqualU2","CompareLessThanOrEqualI4","CompareLessThanOrEqualU4","CompareLessThanOrEqualI8","CompareLessThanOrEqualR4","CompareLessThanOrEqualR8","CompareGreaterThanI1","CompareGreaterThanU1","CompareGreaterThanI2","CompareGreaterThanU2","CompareGreaterThanI4","CompareGreaterThanU4","CompareGreaterThanI8","CompareGreaterThanR4","CompareGreaterThanR8","CompareGreaterThanOrEqualI1","CompareGreaterThanOrEqualU1","CompareGreaterThanOrEqualI2","CompareGreaterThanOrEqualU2","CompareGreaterThanOrEqualI4","CompareGreaterThanOrEqualU4","CompareGreaterThanOrEqualI8","CompareGreaterThanOrEqualR4","CompareGreaterThanOrEqualR8","ConvertNarrowingSaturateSignedI2","ConvertNarrowingSaturateSignedI4","ConvertNarrowingSaturateUnsignedI2","ConvertNarrowingSaturateUnsignedI4","MultiplyWideningLowerI1","MultiplyWideningLowerI2","MultiplyWideningLowerI4","MultiplyWideningLowerU1","MultiplyWideningLowerU2","MultiplyWideningLowerU4","MultiplyWideningUpperI1","MultiplyWideningUpperI2","MultiplyWideningUpperI4","MultiplyWideningUpperU1","MultiplyWideningUpperU2","MultiplyWideningUpperU4","AddSaturateI1","AddSaturateU1","AddSaturateI2","AddSaturateU2","SubtractSaturateI1","SubtractSaturateU1","SubtractSaturateI2","SubtractSaturateU2","MultiplyRoundedSaturateQ15I2","MinI1","MinI2","MinI4","MinU1","MinU2","MinU4","MaxI1","MaxI2","MaxI4","MaxU1","MaxU2","MaxU4","AverageRoundedU1","AverageRoundedU2","MinR4","MinR8","MaxR4","MaxR8","PseudoMinR4","PseudoMinR8","PseudoMaxR4","PseudoMaxR8","StoreANY"],4:["V128_CONDITIONAL_SELECT","ReplaceScalarD1","ReplaceScalarD2","ReplaceScalarD4","ReplaceScalarD8","ReplaceScalarR4","ReplaceScalarR8","ShuffleD1","BitwiseSelectANY","LoadScalarAndInsertX1","LoadScalarAndInsertX2","LoadScalarAndInsertX4","LoadScalarAndInsertX8","StoreSelectedScalarX1","StoreSelectedScalarX2","StoreSelectedScalarX4","StoreSelectedScalarX8"]},ba={13:[65,0],14:[65,1]},ya={456:168,462:174,457:170,463:176},wa={508:[69,40,54],428:[106,40,54],430:[107,40,54],432:[107,40,54],436:[115,40,54],429:[124,41,55],431:[125,41,55],433:[125,41,55],437:[133,41,55],511:[106,40,54],515:[108,40,54],513:[124,41,55],517:[126,41,55],434:[140,42,56],435:[154,43,57],464:[178,40,56],467:[183,40,57],438:[184,40,57],465:[180,41,56],468:[185,41,57],439:[186,41,57],469:[187,42,57],466:[182,43,56],460:[1,52,55],461:[1,53,55],444:[113,40,54],452:[113,40,54],440:[117,40,54],448:[117,40,54],445:[113,41,54],453:[113,41,54],441:[117,41,54],449:[117,41,54],525:[116,40,54],526:[134,41,55],527:[117,40,54],528:[135,41,55],523:[118,40,54],524:[136,41,55],640:[119,40,54],641:[137,41,55],642:[120,40,54],643:[138,41,55],644:[103,40,54],646:[104,40,54],648:[105,40,54],645:[121,41,55],647:[122,41,55],649:[123,41,55],512:[106,40,54],516:[108,40,54],514:[124,41,55],518:[126,41,55],519:[113,40,54],520:[113,40,54],521:[114,40,54],522:[114,40,54]},ka={394:187,395:1,398:187,399:1,402:187,403:1,406:187,407:1,412:187,413:1,416:187,417:1,426:187,427:1,420:187,421:1,65536:187,65537:187,65535:187,65539:1,65540:1,65538:1},Sa={344:[106,40,54],362:[106,40,54],364:[106,40,54],348:[107,40,54],352:[108,40,54],366:[108,40,54],368:[108,40,54],356:[109,40,54],360:[110,40,54],380:[111,40,54],384:[112,40,54],374:[113,40,54],376:[114,40,54],378:[115,40,54],388:[116,40,54],390:[117,40,54],386:[118,40,54],345:[124,41,55],349:[125,41,55],353:[126,41,55],357:[127,41,55],381:[129,41,55],361:[128,41,55],385:[130,41,55],375:[131,41,55],377:[132,41,55],379:[133,41,55],389:[134,41,55],391:[135,41,55],387:[136,41,55],346:[146,42,56],350:[147,42,56],354:[148,42,56],358:[149,42,56],347:[160,43,57],351:[161,43,57],355:[162,43,57],359:[163,43,57],392:[70,40,54],396:[71,40,54],414:[72,40,54],400:[74,40,54],418:[76,40,54],404:[78,40,54],424:[73,40,54],410:[75,40,54],422:[77,40,54],408:[79,40,54],393:[81,41,54],397:[82,41,54],415:[83,41,54],401:[85,41,54],419:[87,41,54],405:[89,41,54],425:[84,41,54],411:[86,41,54],423:[88,41,54],409:[90,41,54]},va={187:392,207:396,195:400,215:410,199:414,223:424,191:404,211:408,203:418,219:422,231:[392,!1,!0],241:[396,!1,!0],235:[400,!1,!0],245:[410,!1,!0],237:[414,!1,!0],249:[424,!1,!0],233:[404,!1,!0],243:[408,!1,!0],239:[418,!1,!0],247:[422,!1,!0],251:[392,65,!0],261:[396,65,!0],255:[400,65,!0],265:[410,65,!0],257:[414,65,!0],269:[424,65,!0],253:[404,65,!0],263:[408,65,!0],259:[418,65,!0],267:[422,65,!0],188:393,208:397,196:401,216:411,200:415,224:425,192:405,212:409,204:419,220:423,252:[393,66,!0],256:[401,66,!0],266:[411,66,!0],258:[415,66,!0],270:[425,66,!0],254:[405,66,!0],264:[409,66,!0],260:[419,66,!0],268:[423,66,!0],189:394,209:65535,197:402,217:412,201:416,225:426,193:406,213:65536,205:420,221:65537,190:395,210:65538,198:403,218:413,202:417,226:427,194:407,214:65539,206:421,222:65540},Ua={599:[!0,!1,159],626:[!0,!0,145],586:[!0,!1,155],613:[!0,!0,141],592:[!0,!1,156],619:[!0,!0,142],603:[!0,!1,153],630:[!0,!0,139],581:[!0,!1,"acos"],608:[!0,!0,"acosf"],582:[!0,!1,"acosh"],609:[!0,!0,"acoshf"],587:[!0,!1,"cos"],614:[!0,!0,"cosf"],579:[!0,!1,"asin"],606:[!0,!0,"asinf"],580:[!0,!1,"asinh"],607:[!0,!0,"asinhf"],598:[!0,!1,"sin"],625:[!0,!0,"sinf"],583:[!0,!1,"atan"],610:[!0,!0,"atanf"],584:[!0,!1,"atanh"],611:[!0,!0,"atanhf"],601:[!0,!1,"tan"],628:[!0,!0,"tanf"],588:[!0,!1,"cbrt"],615:[!0,!0,"cbrtf"],590:[!0,!1,"exp"],617:[!0,!0,"expf"],593:[!0,!1,"log"],620:[!0,!0,"logf"],594:[!0,!1,"log2"],621:[!0,!0,"log2f"],595:[!0,!1,"log10"],622:[!0,!0,"log10f"],604:[!1,!1,164],631:[!1,!0,150],605:[!1,!1,165],632:[!1,!0,151],585:[!1,!1,"atan2"],612:[!1,!0,"atan2f"],596:[!1,!1,"pow"],623:[!1,!0,"powf"],383:[!1,!1,"fmod"],382:[!1,!0,"fmodf"]},Ta={560:[67,0,0],561:[67,192,0],562:[68,0,1],563:[68,193,1],564:[65,0,2],565:[66,0,3]},Ea={566:[74,0,0],567:[74,192,0],568:[75,0,1],569:[75,193,1],570:[72,0,2],571:[73,0,3]},xa={653:1,654:2,655:4,656:8},Ia={653:44,654:46,655:40,656:41},Aa={653:58,654:59,655:54,656:55},ja=new Set([20,21,22,23,24,25,26,27,28,29,30,80,81,82,83,84,85,86,87,88,89,90,91]),$a={51:[16,54],52:[16,54],53:[8,54],54:[8,54],55:[4,54],57:[4,56],56:[2,55],58:[2,57]},La={1:[16,40],2:[8,40],3:[4,40],5:[4,42],4:[2,41],6:[2,43]},Ra=new Set([81,84,85,86,87,82,83,88,89,90,91,92,93]),Ba={13:[16],14:[8],15:[4],16:[2]},Na={10:100,11:132,12:164,13:196,45:100,46:132,47:164,48:196},Oa={6:[44,23],7:[46,26],8:[40,28],9:[41,30]};function Ca(e,t){return O(e+2*t)}function Da(e,t){return z(e+2*t)}function Fa(e,t){return P(e+2*t)}function Pa(e,t){return F(e+2*t)}function Ma(e){return P(e+ea(4))}function za(e,t){const n=P(Ma(e)+ea(5));return P(n+t*gc)}function Va(e,t){const n=P(Ma(e)+ea(12));return P(n+t*gc)}function Wa(e,t,n){if(!n)return!1;for(let r=0;r<n.length;r++)if(2*n[r]+t===e)return!0;return!1}const Ha=new Map;function qa(e,t){if(!ci(e,t))return Ha.get(t)}function Ga(e,t){const n=qa(e,t);if(void 0!==n)switch(n.type){case"i32":case"v128":return n.value}}function Ja(e,t){try{let n=o.mono_jiterp_get_opcode_info(t,1);return 271===t&&(n=4+2*Fa(e,2)),n}catch(n){throw He(`Found invalid opcode ${t} at ip ${e}`),n}}const Xa=new Map;let Qa=-1;function Ya(){Qa=-1,Xa.clear(),Ha.clear()}function Za(e){Qa===e&&(Qa=-1),Xa.delete(e),Ha.delete(e)}function Ka(e,t){for(let n=0;n<t;n+=1)Za(e+n)}function ei(e,t,n){e.cfg.startBranchBlock(t,n)}function ti(e,t,n){let r=0;switch(e%16==0?r=4:e%8==0?r=3:e%4==0?r=2:e%2==0&&(r=1),t){case 253:r=0===n||11===n?Math.min(r,4):0;break;case 41:case 43:case 55:case 57:r=Math.min(r,3);break;case 52:case 53:case 62:case 40:case 42:case 54:case 56:r=Math.min(r,2);break;case 50:case 51:case 46:case 47:case 61:case 59:r=Math.min(r,1);break;default:r=0}return r}function ni(e,t,n,r,o){if(e.options.cprop&&40===n){const n=qa(e,t);if(n)switch(n.type){case"i32":return!(o&&0===n.value||(r||e.i32_const(n.value),0));case"ldloca":return r||si(e,n.offset,0),!0}}return!1}function ri(e,t,n,r){if(ni(e,t,n,!1))return;if(e.local("pLocals"),n>=40||mt(!1,`Expected load opcode but got ${n}`),e.appendU8(n),void 0!==r)e.appendULeb(r);else if(253===n)throw new Error("PREFIX_simd ldloc without a simdOpcode");const o=ti(t,n,r);e.appendMemarg(t,o)}function oi(e,t,n,r){n>=54||mt(!1,`Expected store opcode but got ${n}`),e.appendU8(n),void 0!==r&&e.appendULeb(r);const o=ti(t,n,r);e.appendMemarg(t,o),Za(t),void 0!==r&&Za(t+8)}function si(e,t,n){n>0&&Ka(t,n),e.lea("pLocals",t)}function ai(e,t,n,r){Ka(t,r),Js(e,t,0,r,!1)||(si(e,t,r),Xs(e,n,r))}function ii(e,t,n,r){if(Ka(t,r),Qs(e,t,n,r,!1))return!0;si(e,t,r),si(e,n,0),Ys(e,r)}function ci(e,t){return 0!==o.mono_jiterp_is_imethod_var_address_taken(Ma(e.frame),t)}function li(e,t,n,r){if(e.allowNullCheckOptimization&&Xa.has(t)&&!ci(e,t))return da(7,1),void(Qa===t?r&&e.local("cknull_ptr"):(ri(e,t,40),e.local("cknull_ptr",r?34:33),Qa=t));ri(e,t,40),e.local("cknull_ptr",34),e.appendU8(69),e.block(64,4),Ws(e,n,2),e.endBlock(),r&&e.local("cknull_ptr"),e.allowNullCheckOptimization&&!ci(e,t)?(Xa.set(t,n),Qa=t):Qa=-1}function pi(e,t,n){let r,s=54;const a=ba[n];if(a)e.local("pLocals"),e.appendU8(a[0]),r=a[1],e.appendLeb(r);else switch(n){case 15:e.local("pLocals"),r=Da(t,2),e.i32_const(r);break;case 16:e.local("pLocals"),r=Pa(t,2),e.i32_const(r);break;case 17:e.local("pLocals"),e.i52_const(0),s=55;break;case 19:e.local("pLocals"),e.appendU8(66),e.appendLebRef(t+4,!0),s=55;break;case 18:e.local("pLocals"),e.i52_const(Da(t,2)),s=55;break;case 20:e.local("pLocals"),e.appendU8(67),e.appendF32(function(e,t){return n=e+2*t,o.mono_wasm_get_f32_unaligned(n);var n}(t,2)),s=56;break;case 21:e.local("pLocals"),e.appendU8(68),e.appendF64(function(e,t){return n=e+2*t,o.mono_wasm_get_f64_unaligned(n);var n}(t,2)),s=57;break;default:return!1}e.appendU8(s);const i=Ca(t,1);return e.appendMemarg(i,2),Za(i),"number"==typeof r?Ha.set(i,{type:"i32",value:r}):Ha.delete(i),!0}function ui(e,t,n){let r=40,o=54;switch(n){case 74:r=44;break;case 75:r=45;break;case 76:r=46;break;case 77:r=47;break;case 78:r=45,o=58;break;case 79:r=47,o=59;break;case 80:break;case 81:r=41,o=55;break;case 82:{const n=Ca(t,3);return ii(e,Ca(t,1),Ca(t,2),n),!0}case 83:return ii(e,Ca(t,1),Ca(t,2),8),ii(e,Ca(t,3),Ca(t,4),8),!0;case 84:return ii(e,Ca(t,1),Ca(t,2),8),ii(e,Ca(t,3),Ca(t,4),8),ii(e,Ca(t,5),Ca(t,6),8),!0;case 85:return ii(e,Ca(t,1),Ca(t,2),8),ii(e,Ca(t,3),Ca(t,4),8),ii(e,Ca(t,5),Ca(t,6),8),ii(e,Ca(t,7),Ca(t,8),8),!0;default:return!1}return e.local("pLocals"),ri(e,Ca(t,2),r),oi(e,Ca(t,1),o),!0}function di(e,t,n,r){const o=r>=23&&r<=36||r>=50&&r<=60,s=Ca(n,o?2:1),a=Ca(n,3),i=Ca(n,o?1:2),c=e.allowNullCheckOptimization&&Xa.has(s)&&!ci(e,s);36!==r&&45!==r&&li(e,s,n,!1);let l=54,p=40;switch(r){case 23:p=44;break;case 24:p=45;break;case 25:p=46;break;case 26:p=47;break;case 31:case 41:case 27:break;case 43:case 29:p=42,l=56;break;case 44:case 30:p=43,l=57;break;case 37:case 38:l=58;break;case 39:case 40:l=59;break;case 28:case 42:p=41,l=55;break;case 45:return c||e.block(),e.local("pLocals"),e.i32_const(a),e.i32_const(s),e.i32_const(i),e.callImport("stfld_o"),c?(e.appendU8(26),da(7,1)):(e.appendU8(13),e.appendULeb(0),Ws(e,n,2),e.endBlock()),!0;case 32:{const t=Ca(n,4);return si(e,i,t),e.local("cknull_ptr"),0!==a&&(e.i32_const(a),e.appendU8(106)),Ys(e,t),!0}case 46:{const r=za(t,Ca(n,4));return e.local("cknull_ptr"),0!==a&&(e.i32_const(a),e.appendU8(106)),si(e,i,0),e.ptr_const(r),e.callImport("value_copy"),!0}case 47:{const t=Ca(n,4);return e.local("cknull_ptr"),0!==a&&(e.i32_const(a),e.appendU8(106)),si(e,i,0),Ys(e,t),!0}case 36:case 35:return e.local("pLocals"),ri(e,s,40),0!==a&&(e.i32_const(a),e.appendU8(106)),oi(e,i,l),!0;default:return!1}return o&&e.local("pLocals"),e.local("cknull_ptr"),o?(e.appendU8(p),e.appendMemarg(a,0),oi(e,i,l),!0):(ri(e,i,p),e.appendU8(l),e.appendMemarg(a,0),!0)}function fi(e,t,n,r){const o=r>=23&&r<=36||r>=50&&r<=60,s=Ca(n,1),a=za(t,Ca(n,2)),i=za(t,Ca(n,3));!function(e,t,n){e.block(),e.ptr_const(t),e.appendU8(45),e.appendMemarg(ea(0),0),e.appendU8(13),e.appendULeb(0),Ws(e,n,3),e.endBlock()}(e,a,n);let c=54,l=40;switch(r){case 50:l=44;break;case 51:l=45;break;case 52:l=46;break;case 53:l=47;break;case 58:case 65:case 54:break;case 67:case 56:l=42,c=56;break;case 68:case 57:l=43,c=57;break;case 61:case 62:c=58;break;case 63:case 64:c=59;break;case 55:case 66:l=41,c=55;break;case 69:return e.ptr_const(i),si(e,s,0),e.callImport("copy_ptr"),!0;case 59:{const t=Ca(n,4);return si(e,s,t),e.ptr_const(i),Ys(e,t),!0}case 72:return e.local("pLocals"),e.ptr_const(i),oi(e,s,c),!0;default:return!1}return o?(e.local("pLocals"),e.ptr_const(i),e.appendU8(l),e.appendMemarg(0,0),oi(e,s,c),!0):(e.ptr_const(i),ri(e,s,l),e.appendU8(c),e.appendMemarg(0,0),!0)}function _i(e,t,n){let r,o,s,a,i="math_lhs32",c="math_rhs32",l=!1;const p=ka[n];if(p){e.local("pLocals");const r=1==p;return ri(e,Ca(t,2),r?43:42),r||e.appendU8(p),ri(e,Ca(t,3),r?43:42),r||e.appendU8(p),e.i32_const(n),e.callImport("relop_fp"),oi(e,Ca(t,1),54),!0}switch(n){case 382:case 383:return wi(e,t,n);default:if(a=Sa[n],!a)return!1;a.length>3?(r=a[1],o=a[2],s=a[3]):(r=o=a[1],s=a[2])}switch(n){case 356:case 357:case 360:case 361:case 380:case 381:case 384:case 385:{const s=361===n||385===n||357===n||381===n;i=s?"math_lhs64":"math_lhs32",c=s?"math_rhs64":"math_rhs32",e.block(),ri(e,Ca(t,2),r),e.local(i,33),ri(e,Ca(t,3),o),e.local(c,34),l=!0,s&&(e.appendU8(80),e.appendU8(69)),e.appendU8(13),e.appendULeb(0),Ws(e,t,12),e.endBlock(),356!==n&&380!==n&&357!==n&&381!==n||(e.block(),e.local(c),s?e.i52_const(-1):e.i32_const(-1),e.appendU8(s?82:71),e.appendU8(13),e.appendULeb(0),e.local(i),e.appendU8(s?66:65),e.appendBoundaryValue(s?64:32,-1),e.appendU8(s?82:71),e.appendU8(13),e.appendULeb(0),Ws(e,t,13),e.endBlock());break}case 362:case 364:case 366:case 368:ri(e,Ca(t,2),r),e.local(i,34),ri(e,Ca(t,3),o),e.local(c,34),e.i32_const(n),e.callImport(364===n||368===n?"ckovr_u4":"ckovr_i4"),e.block(64,4),Ws(e,t,13),e.endBlock(),l=!0}return e.local("pLocals"),l?(e.local(i),e.local(c)):(ri(e,Ca(t,2),r),ri(e,Ca(t,3),o)),e.appendU8(a[0]),oi(e,Ca(t,1),s),!0}function mi(e,t,n){const r=wa[n];if(!r)return!1;const o=r[1],s=r[2];switch((n<472||n>507)&&e.local("pLocals"),n){case 428:case 430:ri(e,Ca(t,2),o),e.i32_const(1);break;case 432:e.i32_const(0),ri(e,Ca(t,2),o);break;case 436:ri(e,Ca(t,2),o),e.i32_const(-1);break;case 444:case 445:ri(e,Ca(t,2),o),41===o&&e.appendU8(167),e.i32_const(255);break;case 452:case 453:ri(e,Ca(t,2),o),41===o&&e.appendU8(167),e.i32_const(65535);break;case 440:case 441:ri(e,Ca(t,2),o),41===o&&e.appendU8(167),e.i32_const(24),e.appendU8(116),e.i32_const(24);break;case 448:case 449:ri(e,Ca(t,2),o),41===o&&e.appendU8(167),e.i32_const(16),e.appendU8(116),e.i32_const(16);break;case 429:case 431:ri(e,Ca(t,2),o),e.i52_const(1);break;case 433:e.i52_const(0),ri(e,Ca(t,2),o);break;case 437:ri(e,Ca(t,2),o),e.i52_const(-1);break;case 511:case 515:case 519:case 521:case 525:case 527:case 523:case 640:case 642:ri(e,Ca(t,2),o),e.i32_const(Da(t,3));break;case 512:case 516:case 520:case 522:ri(e,Ca(t,2),o),e.i32_const(Pa(t,3));break;case 513:case 517:case 526:case 528:case 524:case 641:case 643:ri(e,Ca(t,2),o),e.i52_const(Da(t,3));break;case 514:case 518:ri(e,Ca(t,2),o),e.i52_const(Pa(t,3));break;default:ri(e,Ca(t,2),o)}return 1!==r[0]&&e.appendU8(r[0]),oi(e,Ca(t,1),s),!0}function hi(e,t,n,r){const o=133===r?t+6:t+8,s=Va(n,O(o-2));e.local("pLocals"),e.ptr_const(o),e.appendU8(54),e.appendMemarg(s,0),e.callHandlerReturnAddresses.push(o)}function gi(e,t){const n=o.mono_jiterp_get_opcode_info(t,4),r=e+2+2*o.mono_jiterp_get_opcode_info(t,2);let s;switch(n){case 7:s=F(r);break;case 8:s=z(r);break;case 17:s=z(r+2);break;default:return}return s}function bi(e,t,n,r){const s=r>=227&&r<=270,a=gi(t,r);if("number"!=typeof a)return!1;switch(r){case 132:case 133:case 128:case 129:{const s=132===r||133===r,i=t+2*a;return a<=0?e.backBranchOffsets.indexOf(i)>=0?(e.backBranchTraceLevel>1&&Ve(`0x${t.toString(16)} performing backward branch to 0x${i.toString(16)}`),s&&hi(e,t,n,r),e.cfg.branch(i,!0,0),da(9,1),!0):(i<e.cfg.entryIp?(e.backBranchTraceLevel>1||e.cfg.trace>1)&&Ve(`0x${t.toString(16)} ${$s(r)} target 0x${i.toString(16)} before start of trace`):(e.backBranchTraceLevel>0||e.cfg.trace>0)&&Ve(`0x${t.toString(16)} ${$s(r)} target 0x${i.toString(16)} not found in list `+e.backBranchOffsets.map((e=>"0x"+e.toString(16))).join(", ")),o.mono_jiterp_boost_back_branch_target(i),Ws(e,i,5),da(10,1),!0):(e.branchTargets.add(i),s&&hi(e,t,n,r),e.cfg.branch(i,!1,0),!0)}case 145:case 143:case 229:case 227:case 146:case 144:{const n=146===r||144===r;ri(e,Ca(t,1),n?41:40),143===r||227===r?e.appendU8(69):144===r?e.appendU8(80):146===r&&(e.appendU8(80),e.appendU8(69));break}default:if(void 0===va[r])throw new Error(`Unsupported relop branch opcode: ${$s(r)}`);if(4!==o.mono_jiterp_get_opcode_info(r,1))throw new Error(`Unsupported long branch opcode: ${$s(r)}`)}const i=t+2*a;return a<0?e.backBranchOffsets.indexOf(i)>=0?(e.backBranchTraceLevel>1&&Ve(`0x${t.toString(16)} performing conditional backward branch to 0x${i.toString(16)}`),e.cfg.branch(i,!0,s?3:1),da(9,1)):(i<e.cfg.entryIp?(e.backBranchTraceLevel>1||e.cfg.trace>1)&&Ve(`0x${t.toString(16)} ${$s(r)} target 0x${i.toString(16)} before start of trace`):(e.backBranchTraceLevel>0||e.cfg.trace>0)&&Ve(`0x${t.toString(16)} ${$s(r)} target 0x${i.toString(16)} not found in list `+e.backBranchOffsets.map((e=>"0x"+e.toString(16))).join(", ")),o.mono_jiterp_boost_back_branch_target(i),e.block(64,4),Ws(e,i,5),e.endBlock(),da(10,1)):(e.branchTargets.add(i),e.cfg.branch(i,!1,s?3:1)),!0}function yi(e,t,n,r){const o=va[r];if(!o)return!1;const s=Array.isArray(o)?o[0]:o,a=Sa[s],i=ka[s];if(!a&&!i)return!1;const c=a?a[1]:1===i?43:42;return ri(e,Ca(t,1),c),a||1===i||e.appendU8(i),Array.isArray(o)&&o[1]?(e.appendU8(o[1]),e.appendLeb(Da(t,2))):ri(e,Ca(t,2),c),a||1==i||e.appendU8(i),a?e.appendU8(a[0]):(e.i32_const(s),e.callImport("relop_fp")),bi(e,t,n,r)}function wi(e,t,n){let r,o,s,a;const i=Ca(t,1),c=Ca(t,2),l=Ca(t,3),p=Ua[n];if(!p)return!1;if(r=p[0],o=p[1],"string"==typeof p[2]?s=p[2]:a=p[2],e.local("pLocals"),r){if(ri(e,c,o?42:43),a)e.appendU8(a);else{if(!s)throw new Error("internal error");e.callImport(s)}return oi(e,i,o?56:57),!0}if(ri(e,c,o?42:43),ri(e,l,o?42:43),a)e.appendU8(a);else{if(!s)throw new Error("internal error");e.callImport(s)}return oi(e,i,o?56:57),!0}function ki(e,t,n){const r=n>=87&&n<=112,o=n>=107&&n<=112,s=n>=95&&n<=106||n>=120&&n<=127||o,a=n>=101&&n<=106||n>=124&&n<=127||o;let i,c,l=-1,p=0,u=1;o?(i=Ca(t,1),c=Ca(t,2),l=Ca(t,3),p=Da(t,4),u=Da(t,5)):s?a?r?(i=Ca(t,1),c=Ca(t,2),p=Da(t,3)):(i=Ca(t,2),c=Ca(t,1),p=Da(t,3)):r?(i=Ca(t,1),c=Ca(t,2),l=Ca(t,3)):(i=Ca(t,3),c=Ca(t,1),l=Ca(t,2)):r?(c=Ca(t,2),i=Ca(t,1)):(c=Ca(t,1),i=Ca(t,2));let d,f=54;switch(n){case 87:case 95:case 101:case 107:d=44;break;case 88:case 96:case 102:case 108:d=45;break;case 89:case 97:case 103:case 109:d=46;break;case 90:case 98:case 104:case 110:d=47;break;case 113:case 120:case 124:d=40,f=58;break;case 114:case 121:case 125:d=40,f=59;break;case 91:case 99:case 105:case 111:case 115:case 122:case 126:case 119:d=40;break;case 93:case 117:d=42,f=56;break;case 94:case 118:d=43,f=57;break;case 92:case 100:case 106:case 112:case 116:case 123:case 127:d=41,f=55;break;default:return!1}const _=ni(e,c,40,!0,!0);return _||li(e,c,t,!1),r?(e.local("pLocals"),_?mt(ni(e,c,40,!1,!0),"Unknown jiterpreter cprop failure"):e.local("cknull_ptr"),o?(ri(e,l,40),0!==p&&(e.i32_const(p),e.appendU8(106),p=0),1!==u&&(e.i32_const(u),e.appendU8(108)),e.appendU8(106)):s&&l>=0?(ri(e,l,40),e.appendU8(106)):p<0&&(e.i32_const(p),e.appendU8(106),p=0),e.appendU8(d),e.appendMemarg(p,0),oi(e,i,f)):119===n?(_?mt(ni(e,c,40,!1,!0),"Unknown jiterpreter cprop failure"):e.local("cknull_ptr"),si(e,i,0),e.callImport("copy_ptr")):(_?mt(ni(e,c,40,!1,!0),"Unknown jiterpreter cprop failure"):e.local("cknull_ptr"),s&&l>=0?(ri(e,l,40),e.appendU8(106)):p<0&&(e.i32_const(p),e.appendU8(106),p=0),ri(e,i,d),e.appendU8(f),e.appendMemarg(p,0)),!0}function Si(e,t,n,r,o){e.block(),ri(e,r,40),e.local("index",34);let s="cknull_ptr";e.options.zeroPageOptimization&&aa()?(da(8,1),ri(e,n,40),s="src_ptr",e.local(s,34)):li(e,n,t,!0),e.appendU8(40),e.appendMemarg(ea(9),2),e.appendU8(73),e.appendU8(13),e.appendULeb(0),Ws(e,t,9),e.endBlock(),e.local(s),e.i32_const(ea(1)),e.appendU8(106),e.local("index"),1!=o&&(e.i32_const(o),e.appendU8(108)),e.appendU8(106)}function vi(e,t,n,r){const o=r<=328&&r>=315||341===r,s=Ca(n,o?2:1),a=Ca(n,o?1:3),i=Ca(n,o?3:2);let c,l,p=54;switch(r){case 341:return e.local("pLocals"),li(e,s,n,!0),e.appendU8(40),e.appendMemarg(ea(9),2),oi(e,a,54),!0;case 326:return e.local("pLocals"),l=Ca(n,4),Si(e,n,s,i,l),oi(e,a,54),!0;case 337:return e.block(),ri(e,Ca(n,1),40),ri(e,Ca(n,2),40),ri(e,Ca(n,3),40),e.callImport("stelemr_tc"),e.appendU8(13),e.appendULeb(0),Ws(e,n,10),e.endBlock(),!0;case 340:return Si(e,n,s,i,4),si(e,a,0),e.callImport("copy_ptr"),!0;case 324:case 320:case 319:case 333:l=4,c=40;break;case 315:l=1,c=44;break;case 316:l=1,c=45;break;case 330:case 329:l=1,c=40,p=58;break;case 317:l=2,c=46;break;case 318:l=2,c=47;break;case 332:case 331:l=2,c=40,p=59;break;case 322:case 335:l=4,c=42,p=56;break;case 321:case 334:l=8,c=41,p=55;break;case 323:case 336:l=8,c=43,p=57;break;case 325:{const t=Ca(n,4);return e.local("pLocals"),e.i32_const(Ca(n,1)),e.appendU8(106),Si(e,n,s,i,t),Ys(e,t),Ka(Ca(n,1),t),!0}case 338:{const r=Ca(n,5),o=za(t,Ca(n,4));return Si(e,n,s,i,r),si(e,a,0),e.ptr_const(o),e.callImport("value_copy"),!0}case 339:{const t=Ca(n,5);return Si(e,n,s,i,t),si(e,a,0),Ys(e,t),!0}default:return!1}return o?(e.local("pLocals"),Si(e,n,s,i,l),e.appendU8(c),e.appendMemarg(0,0),oi(e,a,p)):(Si(e,n,s,i,l),ri(e,a,c),e.appendU8(p),e.appendMemarg(0,0)),!0}function Ui(e,t,n){const r=`${t}_${n.toString(16)}`;return"object"!=typeof e.importedFunctions[r]&&e.defineImportedFunction("s",r,t,!1,n),r}function Ti(e,t,n,r,s,a){if(e.options.enableSimd&&ct.featureWasmSimd)switch(s){case 2:if(function(e,t,n){const r=o.mono_jiterp_get_simd_opcode(1,n),s=Na[n];if(s)return xi(e,t),e.appendSimd(s),oi(e,Ca(t,1),54),!0;if(r>=0)return Ra.has(n)?(e.local("pLocals"),ri(e,Ca(t,2),40),e.appendSimd(r,!0),e.appendMemarg(0,0),Ei(e,t)):(xi(e,t),e.appendSimd(r),Ei(e,t)),!0;switch(n){case 6:case 7:case 8:case 9:{const r=Oa[n];return e.local("pLocals"),e.v128_const(0),ri(e,Ca(t,2),r[0]),e.appendSimd(r[1]),e.appendU8(0),oi(e,Ca(t,1),253,11),!0}case 14:return xi(e,t,7),Ei(e,t),!0;case 15:return xi(e,t,8),Ei(e,t),!0;case 16:return xi(e,t,9),Ei(e,t),!0;case 17:return xi(e,t,10),Ei(e,t),!0;default:return!1}}(e,t,a))return!0;break;case 3:if(function(e,t,n){const r=o.mono_jiterp_get_simd_opcode(2,n);if(r>=0){const o=ja.has(n),s=$a[n];if(o)e.local("pLocals"),ri(e,Ca(t,2),253,0),ri(e,Ca(t,3),40),e.appendSimd(r),Ei(e,t);else if(Array.isArray(s)){const n=Ga(e,Ca(t,3)),o=s[0];if("number"!=typeof n)return He(`${e.functions[0].name}: Non-constant lane index passed to ExtractScalar`),!1;if(n>=o||n<0)return He(`${e.functions[0].name}: ExtractScalar index ${n} out of range (0 - ${o-1})`),!1;e.local("pLocals"),ri(e,Ca(t,2),253,0),e.appendSimd(r),e.appendU8(n),oi(e,Ca(t,1),s[1])}else Ii(e,t),e.appendSimd(r),Ei(e,t);return!0}switch(n){case 191:return ri(e,Ca(t,2),40),ri(e,Ca(t,3),253,0),e.appendSimd(11),e.appendMemarg(0,0),!0;case 10:case 11:return Ii(e,t),e.appendSimd(214),e.appendSimd(195),11===n&&e.appendU8(69),oi(e,Ca(t,1),54),!0;case 12:case 13:{const r=13===n,o=r?71:65;return e.local("pLocals"),ri(e,Ca(t,2),253,0),e.local("math_lhs128",34),ri(e,Ca(t,3),253,0),e.local("math_rhs128",34),e.appendSimd(o),e.local("math_lhs128"),e.local("math_lhs128"),e.appendSimd(o),e.local("math_rhs128"),e.local("math_rhs128"),e.appendSimd(o),e.appendSimd(80),e.appendSimd(77),e.appendSimd(80),e.appendSimd(r?195:163),oi(e,Ca(t,1),54),!0}case 47:{const n=Ca(t,3),r=Ga(e,n);return e.local("pLocals"),ri(e,Ca(t,2),253,0),"object"==typeof r?(e.appendSimd(12),e.appendBytes(r)):ri(e,n,253,0),e.appendSimd(14),Ei(e,t),!0}case 48:case 49:return function(e,t,n){const r=16/n,o=Ca(t,3),s=Ga(e,o);if(2!==r&&4!==r&&mt(!1,"Unsupported shuffle element size"),e.local("pLocals"),ri(e,Ca(t,2),253,0),"object"==typeof s){const t=new Uint8Array(bc),o=2===r?new Uint16Array(s.buffer,s.byteOffset,n):new Uint32Array(s.buffer,s.byteOffset,n);for(let e=0,s=0;e<n;e++,s+=r){const n=o[e];for(let e=0;e<r;e++)t[s+e]=n*r+e}e.appendSimd(12),e.appendBytes(t)}else{ri(e,o,253,0),4===n&&(e.v128_const(0),e.appendSimd(134)),e.v128_const(0),e.appendSimd(102),e.appendSimd(12);for(let t=0;t<n;t++)for(let n=0;n<r;n++)e.appendU8(t);ct.featureWasmRelaxedSimd?e.appendSimd(256):e.appendSimd(14),e.i32_const(4===n?2:1),e.appendSimd(107),e.appendSimd(12);for(let t=0;t<n;t++)for(let t=0;t<r;t++)e.appendU8(t);e.appendSimd(80)}return e.appendSimd(14),Ei(e,t),!0}(e,t,48===n?8:4);default:return!1}return!1}(e,t,a))return!0;break;case 4:if(function(e,t,n){const r=o.mono_jiterp_get_simd_opcode(3,n);if(r>=0){const o=La[n],s=Ba[n];if(Array.isArray(o)){const n=o[0],s=Ga(e,Ca(t,3));if("number"!=typeof s)return He(`${e.functions[0].name}: Non-constant lane index passed to ReplaceScalar`),!1;if(s>=n||s<0)return He(`${e.functions[0].name}: ReplaceScalar index ${s} out of range (0 - ${n-1})`),!1;e.local("pLocals"),ri(e,Ca(t,2),253,0),ri(e,Ca(t,4),o[1]),e.appendSimd(r),e.appendU8(s),Ei(e,t)}else if(Array.isArray(s)){const n=s[0],o=Ga(e,Ca(t,4));if("number"!=typeof o)return He(`${e.functions[0].name}: Non-constant lane index passed to store method`),!1;if(o>=n||o<0)return He(`${e.functions[0].name}: Store lane ${o} out of range (0 - ${n-1})`),!1;ri(e,Ca(t,2),40),ri(e,Ca(t,3),253,0),e.appendSimd(r),e.appendMemarg(0,0),e.appendU8(o)}else!function(e,t){e.local("pLocals"),ri(e,Ca(t,2),253,0),ri(e,Ca(t,3),253,0),ri(e,Ca(t,4),253,0)}(e,t),e.appendSimd(r),Ei(e,t);return!0}switch(n){case 0:return e.local("pLocals"),ri(e,Ca(t,3),253,0),ri(e,Ca(t,4),253,0),ri(e,Ca(t,2),253,0),e.appendSimd(82),Ei(e,t),!0;case 7:{const n=Ga(e,Ca(t,4));if("object"!=typeof n)return He(`${e.functions[0].name}: Non-constant indices passed to PackedSimd.Shuffle`),!1;for(let t=0;t<32;t++){const r=n[t];if(r<0||r>31)return He(`${e.functions[0].name}: Shuffle lane index #${t} (${r}) out of range (0 - 31)`),!1}return e.local("pLocals"),ri(e,Ca(t,2),253,0),ri(e,Ca(t,3),253,0),e.appendSimd(13),e.appendBytes(n),Ei(e,t),!0}default:return!1}}(e,t,a))return!0}switch(n){case 652:if(e.options.enableSimd&&ct.featureWasmSimd){e.local("pLocals");const n=K().slice(t+4,t+4+bc);e.v128_const(n),Ei(e,t),Ha.set(Ca(t,1),{type:"v128",value:n})}else si(e,Ca(t,1),bc),e.ptr_const(t+4),Ys(e,bc);return!0;case 653:case 654:case 655:case 656:{const r=xa[n],o=bc/r,s=Ca(t,1),a=Ca(t,2),i=Ia[n],c=Aa[n];for(let t=0;t<o;t++)e.local("pLocals"),ri(e,a+t*yc,i),oi(e,s+t*r,c);return!0}case 657:{Ms[r]=(Ms[r]||0)+1,si(e,Ca(t,1),bc),si(e,Ca(t,2),0);const n=Ui(e,"simd_p_p",o.mono_jiterp_get_simd_intrinsic(1,a));return e.callImport(n),!0}case 658:{Ms[r]=(Ms[r]||0)+1,si(e,Ca(t,1),bc),si(e,Ca(t,2),0),si(e,Ca(t,3),0);const n=Ui(e,"simd_p_pp",o.mono_jiterp_get_simd_intrinsic(2,a));return e.callImport(n),!0}case 659:{Ms[r]=(Ms[r]||0)+1,si(e,Ca(t,1),bc),si(e,Ca(t,2),0),si(e,Ca(t,3),0),si(e,Ca(t,4),0);const n=Ui(e,"simd_p_ppp",o.mono_jiterp_get_simd_intrinsic(3,a));return e.callImport(n),!0}default:return Ve(`jiterpreter emit_simd failed for ${r}`),!1}}function Ei(e,t){oi(e,Ca(t,1),253,11)}function xi(e,t,n){e.local("pLocals"),ri(e,Ca(t,2),253,n||0)}function Ii(e,t){e.local("pLocals"),ri(e,Ca(t,2),253,0),ri(e,Ca(t,3),253,0)}function Ai(e,t,n){if(559===n)return!0;if(!e.options.enableAtomics)return!1;const r=Ta[n];if(r){const n=r[2]>2;return e.local("pLocals"),li(e,Ca(t,2),t,!0),ri(e,Ca(t,3),n?41:40),e.appendAtomic(r[0],!1),e.appendMemarg(0,r[2]),0!==r[1]&&e.appendU8(r[1]),oi(e,Ca(t,1),n?55:54),!0}const o=Ea[n];if(o){const n=o[2]>2;return e.local("pLocals"),li(e,Ca(t,2),t,!0),ri(e,Ca(t,4),n?41:40),ri(e,Ca(t,3),n?41:40),e.appendAtomic(o[0],!1),e.appendMemarg(0,o[2]),0!==o[1]&&e.appendU8(o[1]),oi(e,Ca(t,1),n?55:54),!0}return!1}function ji(e,t,n){const r=Ja(t,271),o=function(e){271!==O(e)&&mt(!1,"decodeSwitch called on a non-switch");const t=Fa(e,2),n=[];for(let r=0;r<t;r++){const t=e+8+4*r,o=t+2*P(t);n.push(o)}return n}(t);let s=!1;if(o.length>e.options.maxSwitchSize)s=!0;else for(const n of o)n>t&&e.branchTargets.add(n);if(s)return da(14,o.length),Ws(e,t,27),!0;const a=t+2*r;return e.branchTargets.add(a),e.block(),ri(e,Ca(t,1),40),e.cfg.jumpTable(o,a),e.endBlock(),Hs(e,t,n,28),!0}const $i=64;let Li,Ri,Bi,Ni=0;const Oi={};function Ci(){return Ri||(Ri=[oa("interp_entry_prologue",ta("mono_jiterp_interp_entry_prologue")),oa("interp_entry",ta("mono_jiterp_interp_entry")),oa("unbox",ta("mono_jiterp_object_unbox")),oa("stackval_from_data",ta("mono_jiterp_stackval_from_data"))],Ri)}let Di,Fi=class{constructor(e,t,n,r,o,s,a,i){this.imethod=e,this.method=t,this.argumentCount=n,this.unbox=o,this.hasThisReference=s,this.hasReturnValue=a,this.paramTypes=new Array(n);for(let e=0;e<n;e++)this.paramTypes[e]=P(r+4*e);this.defaultImplementation=i,this.result=0,this.hitCount=0}generateName(){const e=o.mono_wasm_method_get_full_name(this.method);try{const t=Le(e);this.name=t;let n=t;if(n){const e=24;n.length>e&&(n=n.substring(n.length-e,n.length)),n=`${this.imethod.toString(16)}_${n}`}else n=`${this.imethod.toString(16)}_${this.hasThisReference?"i":"s"}${this.hasReturnValue?"_r":""}_${this.argumentCount}`;this.traceName=n}finally{e&&m(e)}}getTraceName(){return this.traceName||this.generateName(),this.traceName||"unknown"}getName(){return this.name||this.generateName(),this.name||"unknown"}};function Pi(){const e=[];let t=0;for(;0!=(t=o.mono_jiterp_tlqueue_next(1));){const n=Oi[t];n?e.push(n):Ve(`Failed to find corresponding info for method ptr ${t} from jit queue!`)}if(!e.length)return;const n=4*e.length+1;let r=Li;if(r?r.clear(n):(Li=r=new Cs(n),r.defineType("unbox",{pMonoObject:127},127,!0),r.defineType("interp_entry_prologue",{pData:127,this_arg:127},127,!0),r.defineType("interp_entry",{pData:127,res:127},64,!0),r.defineType("stackval_from_data",{type:127,result:127,value:127},64,!0)),r.options.wasmBytesLimit<=ua(6))return;const s=zs();let a=0,i=!0,c=!1;try{r.appendU32(1836278016),r.appendU32(1);for(let t=0;t<e.length;t++){const n=e[t],o={};n.hasThisReference&&(o.this_arg=127),n.hasReturnValue&&(o.res=127);for(let e=0;e<n.argumentCount;e++)o[`arg${e}`]=127;o.rmethod=127,r.defineType(n.getTraceName(),o,64,!1)}r.generateTypeSection();const t=Ci();r.compressImportNames=!0;for(let e=0;e<t.length;e++)t[e]||mt(!1,`trace #${e} missing`),r.defineImportedFunction("i",t[e][0],t[e][1],!0,t[e][2]);for(let e=0;e<t.length;e++)r.markImportAsUsed(t[e][0]);r._generateImportSection(!1),r.beginSection(3),r.appendULeb(e.length);for(let t=0;t<e.length;t++){const n=e[t].getTraceName();r.functionTypes[n]||mt(!1,"func type missing"),r.appendULeb(r.functionTypes[n][0])}r.beginSection(7),r.appendULeb(e.length);for(let t=0;t<e.length;t++){const n=e[t].getTraceName();r.appendName(n),r.appendU8(0),r.appendULeb(r.importedFunctionCount+t)}r.beginSection(10),r.appendULeb(e.length);for(let t=0;t<e.length;t++){const n=e[t],o=n.getTraceName();r.beginFunction(o,{sp_args:127,need_unbox:127,scratchBuffer:127}),zi(r,n),r.appendU8(11),r.endFunction(!0)}r.endSection(),a=zs();const n=r.getArrayView();da(6,n.length);const o=new WebAssembly.Module(n),s=r.getWasmImports(),c=new WebAssembly.Instance(o,s);for(let t=0;t<e.length;t++){const n=e[t],r=n.getTraceName(),o=c.exports[r];Bi.set(n.result,o),i=!1}da(2,e.length)}catch(e){c=!0,i=!1,He(`interp_entry code generation failed: ${e}`),Zs()}finally{const t=zs();if(a?(da(11,a-s),da(12,t-a)):da(11,t-s),c){Ve(`// ${e.length} trampolines generated, blob follows //`);let t="",n=0;try{r.inSection&&r.endSection()}catch(e){}const o=r.getArrayView(!1,!0);for(let e=0;e<o.length;e++){const r=o[e];r<16&&(t+="0"),t+=r.toString(16),t+=" ",t.length%10==0&&(Ve(`${n}\t${t}`),t="",n=e+1)}Ve(`${n}\t${t}`),Ve("// end blob //")}else i&&!c&&He("failed to generate trampoline for unknown reason")}}function Mi(e,t,n,r,s){const a=o.mono_jiterp_type_get_raw_value_size(n),i=o.mono_jiterp_get_arg_offset(t,0,s);switch(a){case 256:e.local("sp_args"),e.local(r),e.appendU8(54),e.appendMemarg(i,2);break;case-1:case-2:case 1:case 2:case 4:switch(e.local("sp_args"),e.local(r),a){case-1:e.appendU8(45),e.appendMemarg(0,0);break;case 1:e.appendU8(44),e.appendMemarg(0,0);break;case-2:e.appendU8(47),e.appendMemarg(0,0);break;case 2:e.appendU8(46),e.appendMemarg(0,0);break;case 4:e.appendU8(40),e.appendMemarg(0,2)}e.appendU8(54),e.appendMemarg(i,2);break;default:e.ptr_const(n),e.local("sp_args"),e.i32_const(i),e.appendU8(106),e.local(r),e.callImport("stackval_from_data")}}function zi(e,t){const n=_($i);g(n,$i),T(n+ea(13),t.paramTypes.length+(t.hasThisReference?1:0)),t.hasThisReference&&(e.block(),e.local("rmethod"),e.i32_const(1),e.appendU8(113),e.appendU8(69),e.appendU8(13),e.appendULeb(0),e.local("this_arg"),e.callImport("unbox"),e.local("this_arg",33),e.endBlock()),e.ptr_const(n),e.local("scratchBuffer",34),e.local("rmethod"),e.i32_const(-2),e.appendU8(113),e.appendU8(54),e.appendMemarg(ea(6),0),e.local("scratchBuffer"),t.hasThisReference?e.local("this_arg"):e.i32_const(0),e.callImport("interp_entry_prologue"),e.local("sp_args",33),t.hasThisReference&&Mi(e,t.imethod,0,"this_arg",0);for(let n=0;n<t.paramTypes.length;n++){const r=t.paramTypes[n];Mi(e,t.imethod,r,`arg${n}`,n+(t.hasThisReference?1:0))}return e.local("scratchBuffer"),t.hasReturnValue?e.local("res"):e.i32_const(0),e.callImport("interp_entry"),e.appendU8(15),!0}const Vi=16,Wi=0;let Hi,qi,Gi=0;const Ji=[],Xi={},Qi={};class Yi{constructor(e,t,n,r,s){this.queue=[],r||mt(!1,"Expected nonzero arg_offsets pointer"),this.method=e,this.rmethod=t,this.catchExceptions=s,this.cinfo=n,this.addr=P(n+0),this.wrapper=P(n+8),this.signature=P(n+12),this.noWrapper=0!==N(n+28),this.hasReturnValue=-1!==F(n+24),this.returnType=o.mono_jiterp_get_signature_return_type(this.signature),this.paramCount=o.mono_jiterp_get_signature_param_count(this.signature),this.hasThisReference=0!==o.mono_jiterp_get_signature_has_this(this.signature);const a=o.mono_jiterp_get_signature_params(this.signature);this.paramTypes=new Array(this.paramCount);for(let e=0;e<this.paramCount;e++)this.paramTypes[e]=P(a+4*e);const i=this.paramCount+(this.hasThisReference?1:0);this.argOffsets=new Array(this.paramCount);for(let e=0;e<i;e++)this.argOffsets[e]=P(r+4*e);this.target=this.noWrapper?this.addr:this.wrapper,this.result=0,this.wasmNativeReturnType=this.returnType&&this.hasReturnValue?ec[o.mono_jiterp_type_to_stind(this.returnType)]:64,this.wasmNativeSignature=this.paramTypes.map((e=>ec[o.mono_jiterp_type_to_ldind(e)])),this.enableDirect=fa().directJitCalls&&!this.noWrapper&&this.wasmNativeReturnType&&(0===this.wasmNativeSignature.length||this.wasmNativeSignature.every((e=>e))),this.enableDirect&&(this.target=this.addr);let c=this.target.toString(16);const l=Gi++;this.name=`${this.enableDirect?"jcp":"jcw"}_${c}_${l.toString(16)}`}}function Zi(e){let t=Ji[e];return t||(e>=Ji.length&&(Ji.length=e+1),qi||(qi=qs()),Ji[e]=t=qi.get(e)),t}function Ki(){const e=[];let t=0;for(;0!=(t=o.mono_jiterp_tlqueue_next(0));){const n=Qi[t];if(n)for(let t=0;t<n.length;t++)0===n[t].result&&e.push(n[t]);else Ve(`Failed to find corresponding info list for method ptr ${t} from jit queue!`)}if(!e.length)return;let n=Hi;if(n?n.clear(0):(Hi=n=new Cs(0),n.defineType("trampoline",{ret_sp:127,sp:127,ftndesc:127,thrown:127},64,!0),n.defineType("begin_catch",{ptr:127},64,!0),n.defineType("end_catch",{},64,!0),n.defineImportedFunction("i","begin_catch","begin_catch",!0,ta("mono_jiterp_begin_catch")),n.defineImportedFunction("i","end_catch","end_catch",!0,ta("mono_jiterp_end_catch"))),n.options.wasmBytesLimit<=ua(6))return void o.mono_jiterp_tlqueue_clear(0);n.options.enableWasmEh&&(ct.featureWasmEh||(pa({enableWasmEh:!1}),n.options.enableWasmEh=!1));const r=zs();let s=0,a=!0,i=!1;const c=[];try{qi||(qi=qs()),n.appendU32(1836278016),n.appendU32(1);for(let t=0;t<e.length;t++){const r=e[t],o={};if(r.enableDirect){r.hasThisReference&&(o.this=127);for(let e=0;e<r.wasmNativeSignature.length;e++)o[`arg${e}`]=r.wasmNativeSignature[e];o.rgctx=127}else{const e=(r.hasThisReference?1:0)+(r.hasReturnValue?1:0)+r.paramCount;for(let t=0;t<e;t++)o[`arg${t}`]=127;o.ftndesc=127}n.defineType(r.name,o,r.enableDirect?r.wasmNativeReturnType:64,!1);const s=Zi(r.target);"function"!=typeof s&&mt(!1,`expected call target to be function but was ${s}`),c.push([r.name,r.name,s])}n.generateTypeSection(),n.compressImportNames=!0;for(let e=0;e<c.length;e++)n.defineImportedFunction("i",c[e][0],c[e][1],!1,c[e][2]);for(let e=0;e<c.length;e++)n.markImportAsUsed(c[e][0]);n.markImportAsUsed("begin_catch"),n.markImportAsUsed("end_catch"),n._generateImportSection(!1),n.beginSection(3),n.appendULeb(e.length),n.functionTypes.trampoline||mt(!1,"func type missing");for(let t=0;t<e.length;t++)n.appendULeb(n.functionTypes.trampoline[0]);n.beginSection(7),n.appendULeb(e.length);for(let t=0;t<e.length;t++){const r=e[t];n.appendName(r.name),n.appendU8(0),n.appendULeb(n.importedFunctionCount+t)}n.beginSection(10),n.appendULeb(e.length);for(let t=0;t<e.length;t++){const r=e[t];if(n.beginFunction("trampoline",{old_sp:127}),!oc(n,r))throw new Error(`Failed to generate ${r.name}`);n.appendU8(11),n.endFunction(!0)}n.endSection(),s=zs();const t=n.getArrayView();da(6,t.length);const r=new WebAssembly.Module(t),i=n.getWasmImports(),l=new WebAssembly.Instance(r,i);for(let t=0;t<e.length;t++){const n=e[t],r=Gs(1,l.exports[n.name]);if(n.result=r,r>0){o.mono_jiterp_register_jit_call_thunk(n.cinfo,r);for(let e=0;e<n.queue.length;e++)o.mono_jiterp_register_jit_call_thunk(n.queue[e],r);n.enableDirect&&da(4,1),da(3,1)}n.queue.length=0,a=!1}}catch(e){i=!0,a=!1,He(`jit_call code generation failed: ${e}`),Zs()}finally{const t=zs();if(s?(da(11,s-r),da(12,t-s)):da(11,t-r),i||a)for(let t=0;t<e.length;t++)e[t].result=-1;if(i){Ve(`// ${e.length} jit call wrappers generated, blob follows //`);for(let t=0;t<e.length;t++)Ve(`// #${t} === ${e[t].name} hasThis=${e[t].hasThisReference} hasRet=${e[t].hasReturnValue} wasmArgTypes=${e[t].wasmNativeSignature}`);let t="",r=0;try{n.inSection&&n.endSection()}catch(e){}const o=n.getArrayView(!1,!0);for(let e=0;e<o.length;e++){const n=o[e];n<16&&(t+="0"),t+=n.toString(16),t+=" ",t.length%10==0&&(Ve(`${r}\t${t}`),t="",r=e+1)}Ve(`${r}\t${t}`),Ve("// end blob //")}else a&&!i&&He("failed to generate trampoline for unknown reason")}}const ec={65535:127,70:127,71:127,72:127,73:127,74:127,75:127,76:126,77:127,78:125,79:124,80:127,81:127,82:127,83:127,84:127,85:126,86:125,87:124,223:127},tc={70:44,71:45,72:46,73:47,74:40,75:40,76:41,77:40,78:42,79:43,80:40,81:54,82:58,83:59,84:54,85:55,86:56,87:57,223:54};function nc(e,t,n){e.local("sp"),e.appendU8(n),e.appendMemarg(t,0)}function rc(e,t){e.local("sp"),e.i32_const(t),e.appendU8(106)}function oc(e,t){let n=0;e.options.enableWasmEh&&e.block(64,6),t.hasReturnValue&&t.enableDirect&&e.local("ret_sp"),t.hasThisReference&&(nc(e,t.argOffsets[0],40),n++),t.hasReturnValue&&!t.enableDirect&&e.local("ret_sp");for(let r=0;r<t.paramCount;r++){const s=t.argOffsets[n+r];if(N(P(t.cinfo+Vi)+r)==Wi)nc(e,s,40);else if(t.enableDirect){const n=o.mono_jiterp_type_to_ldind(t.paramTypes[r]);if(n||mt(!1,`No load opcode for ${t.paramTypes[r]}`),65535===n)rc(e,s);else{const o=tc[n];if(!o)return He(`No wasm load op for arg #${r} type ${t.paramTypes[r]} cil opcode ${n}`),!1;nc(e,s,o)}}else rc(e,s)}if(e.local("ftndesc"),(t.enableDirect||t.noWrapper)&&(e.appendU8(40),e.appendMemarg(4,0)),e.callImport(t.name),t.hasReturnValue&&t.enableDirect){const n=o.mono_jiterp_type_to_stind(t.returnType),r=tc[n];if(!r)return He(`No wasm store op for return type ${t.returnType} cil opcode ${n}`),!1;e.appendU8(r),e.appendMemarg(0,0)}return e.options.enableWasmEh&&(e.appendU8(7),e.appendULeb(e.getTypeIndex("__cpp_exception")),e.callImport("begin_catch"),e.callImport("end_catch"),e.local("thrown"),e.i32_const(1),e.appendU8(54),e.appendMemarg(0,2),e.endBlock()),e.appendU8(15),!0}const sc=30;let ac,ic,cc=!1;const lc=[],pc=[];class uc{constructor(e){this.name=e,this.eip=0}}class dc{constructor(e,t,n){this.ip=e,this.index=t,this.isVerbose=!!n}get hitCount(){return o.mono_jiterp_get_trace_hit_count(this.index)}}const fc={};let _c=1;const mc={},hc={},gc=4,bc=16,yc=8;let wc,kc;const Sc=["asin","acos","atan","asinh","acosh","atanh","cos","sin","tan","cosh","sinh","tanh","exp","log","log2","log10","cbrt"],vc=["fmod","atan2","pow"],Uc=["asinf","acosf","atanf","asinhf","acoshf","atanhf","cosf","sinf","tanf","coshf","sinhf","tanhf","expf","logf","log2f","log10f","cbrtf"],Tc=["fmodf","atan2f","powf"];function Ec(e,t,n){if(o.mono_jiterp_trace_bailout(n),14===n)return e;const r=hc[t];if(!r)return void He(`trace info not found for ${t}`);let s=r.bailoutCounts;s||(r.bailoutCounts=s={});const a=s[n];return s[n]=a?a+1:1,r.bailoutCount?r.bailoutCount++:r.bailoutCount=1,e}function xc(){if(kc)return kc;kc=[oa("bailout",Ec),oa("copy_ptr",ta("mono_wasm_copy_managed_pointer")),oa("entry",ta("mono_jiterp_increase_entry_count")),oa("value_copy",ta("mono_jiterp_value_copy")),oa("gettype",ta("mono_jiterp_gettype_ref")),oa("castv2",ta("mono_jiterp_cast_v2")),oa("hasparent",ta("mono_jiterp_has_parent_fast")),oa("imp_iface",ta("mono_jiterp_implements_interface")),oa("imp_iface_s",ta("mono_jiterp_implements_special_interface")),oa("box",ta("mono_jiterp_box_ref")),oa("localloc",ta("mono_jiterp_localloc")),["ckovr_i4","overflow_check_i4",ta("mono_jiterp_overflow_check_i4")],["ckovr_u4","overflow_check_i4",ta("mono_jiterp_overflow_check_u4")],oa("newobj_i",ta("mono_jiterp_try_newobj_inlined")),oa("newstr",ta("mono_jiterp_try_newstr")),oa("newarr",ta("mono_jiterp_try_newarr")),oa("ld_del_ptr",ta("mono_jiterp_ld_delegate_method_ptr")),oa("ldtsflda",ta("mono_jiterp_ldtsflda")),oa("conv",ta("mono_jiterp_conv")),oa("relop_fp",ta("mono_jiterp_relop_fp")),oa("safepoint",ta("mono_jiterp_do_safepoint")),oa("hashcode",ta("mono_jiterp_get_hashcode")),oa("try_hash",ta("mono_jiterp_try_get_hashcode")),oa("hascsize",ta("mono_jiterp_object_has_component_size")),oa("hasflag",ta("mono_jiterp_enum_hasflag")),oa("array_rank",ta("mono_jiterp_get_array_rank")),["a_elesize","array_rank",ta("mono_jiterp_get_array_element_size")],oa("stfld_o",ta("mono_jiterp_set_object_field")),["stelemr_tc","stelemr",ta("mono_jiterp_stelem_ref")],oa("fma",ta("fma")),oa("fmaf",ta("fmaf"))],pc.length>0&&(kc.push(["trace_eip","trace_eip",Ic]),kc.push(["trace_args","trace_eip",Ac])),(ct.emscriptenBuildOptions.enableEventPipe||ct.emscriptenBuildOptions.enableDevToolsProfiler)&&(kc.push(oa("prof_enter",ta("mono_jiterp_prof_enter"))),kc.push(oa("prof_samplepoint",ta("mono_jiterp_prof_samplepoint"))),kc.push(oa("prof_leave",ta("mono_jiterp_prof_leave"))));const e=(e,t)=>{for(let n=0;n<e.length;n++){const r=e[n];kc.push([r,t,ta(r)])}};return e(Uc,"mathop_f_f"),e(Tc,"mathop_ff_f"),e(Sc,"mathop_d_d"),e(vc,"mathop_dd_d"),kc}function Ic(e,t){const n=fc[e];if(!n)throw new Error(`Unrecognized instrumented trace id ${e}`);n.eip=t,ac=n}function Ac(e,t){if(!ac)throw new Error("No trace active");ac.operand1=e>>>0,ac.operand2=t>>>0}function jc(e,t,n,r){if("number"==typeof r)o.mono_jiterp_adjust_abort_count(r,1),r=$s(r);else{let e=mc[r];"number"!=typeof e?e=1:e++,mc[r]=e}hc[e].abortReason=r}function $c(e){if(!ct.runtimeReady)return;if(ic||(ic=fa()),!ic.enableStats)return;const t=ua(9),n=ua(10),r=ua(7),s=ua(8),a=ua(3),i=ua(4),c=ua(2),l=ua(1),p=ua(0),u=ua(6),d=ua(11),f=ua(12),_=ua(13),m=ua(14),h=t/(t+n)*100,g=o.mono_jiterp_get_rejected_trace_count(),b=ic.eliminateNullChecks?r.toString():"off",y=ic.zeroPageOptimization?s.toString()+(aa()?"":" (disabled)"):"off",w=ic.enableBackwardBranches?`emitted: ${t}, failed: ${n} (${h.toFixed(1)}%)`:": off",k=a?ic.directJitCalls?`direct jit calls: ${i} (${(i/a*100).toFixed(1)}%)`:"direct jit calls: off":"";if(Ve(`// jitted ${u}b; ${l} traces (${(l/p*100).toFixed(1)}%) (${g} rejected); ${a} jit_calls; ${c} interp_entries`),Ve(`// cknulls pruned: ${b}, fused: ${y}; back-brs ${w}; switch tgts ${_}/${m+_}; ${k}`),Ve(`// time: ${0|d}ms generating, ${0|f}ms compiling wasm.`),!e){if(ic.countBailouts){const e=Object.values(hc);e.sort(((e,t)=>(t.bailoutCount||0)-(e.bailoutCount||0)));for(let e=0;e<ha.length;e++){const t=o.mono_jiterp_get_trace_bailout_count(e);t&&Ve(`// traces bailed out ${t} time(s) due to ${ha[e]}`)}for(let t=0,n=0;t<e.length&&n<sc;t++){const r=e[t];if(r.bailoutCount){n++,Ve(`${r.name}: ${r.bailoutCount} bailout(s)`);for(const e in r.bailoutCounts)Ve(` ${ha[e]} x${r.bailoutCounts[e]}`)}}}if(ic.estimateHeat){const e={},t=Object.values(hc);for(let n=0;n<t.length;n++){const r=t[n];r.abortReason&&"end-of-body"!==r.abortReason&&(e[r.abortReason]?e[r.abortReason]+=r.hitCount:e[r.abortReason]=r.hitCount)}t.sort(((e,t)=>t.hitCount-e.hitCount)),Ve("// hottest failed traces:");for(let e=0,n=0;e<t.length&&n<sc;e++)if(t[e].name&&!(t[e].fnPtr||t[e].name.indexOf("Xunit.")>=0)){if(t[e].abortReason){if(t[e].abortReason.startsWith("mono_icall_")||t[e].abortReason.startsWith("ret."))continue;switch(t[e].abortReason){case"trace-too-small":case"trace-too-big":case"call":case"callvirt.fast":case"calli.nat.fast":case"calli.nat":case"call.delegate":case"newobj":case"newobj_vt":case"newobj_slow":case"switch":case"rethrow":case"end-of-body":case"ret":case"intrins_marvin_block":case"intrins_ascii_chars_to_uppercase":continue}}n++,Ve(`${t[e].name} @${t[e].ip} (${t[e].hitCount} hits) ${t[e].abortReason}`)}const n=[];for(const t in e)n.push([t,e[t]]);n.sort(((e,t)=>t[1]-e[1])),Ve("// heat:");for(let e=0;e<n.length;e++)Ve(`// ${n[e][0]}: ${n[e][1]}`)}else{for(let e=0;e<691;e++){const t=$s(e),n=o.mono_jiterp_adjust_abort_count(e,0);n>0?mc[t]=n:delete mc[t]}const e=Object.keys(mc);e.sort(((e,t)=>mc[t]-mc[e]));for(let t=0;t<e.length;t++)Ve(`// ${e[t]}: ${mc[e[t]]} abort(s)`)}for(const e in Ms)Ve(`// simd ${e}: ${Ms[e]} fallback insn(s)`)}}const Lc="https://dotnet.generated.invalid/interp_pgo";async function Rc(){if(!lt.is_runtime_running())return void Ve("Skipped saving interp_pgo table (already exited)");const e=await Oc(Lc);if(e)try{const t=o.mono_interp_pgo_save_table(0,0);if(t<=0)return void Ve("Failed to save interp_pgo table (No data to save)");const r=_(t);if(0!==o.mono_interp_pgo_save_table(r,t))return void He("Failed to save interp_pgo table (Unknown error)");const s=K().slice(r,r+t);await async function(e,t,r){try{const r=await Nc();if(!r)return!1;const o=n?new Uint8Array(t).slice(0):t,s=new Response(o,{headers:{"content-type":"application/octet-stream","content-length":t.byteLength.toString()}});return await r.put(e,s),!0}catch(t){return We("Failed to store entry to the cache: "+e,t),!1}}(e,s)&&Ve("Saved interp_pgo table to cache"),async function(e,t){try{const n=await Nc();if(!n)return;const r=await n.keys();for(const o of r)o.url&&o.url!==t&&o.url.startsWith(e)&&await n.delete(o)}catch(e){return}}(Lc,e),m(r)}catch(e){He(`Failed to save interp_pgo table: ${e}`)}else He("Failed to save interp_pgo table (No cache key)")}async function Bc(){const e=await Oc(Lc);if(!e)return void He("Failed to create cache key for interp_pgo table");const t=await async function(e){try{const t=await Nc();if(!t)return;const n=await t.match(e);if(!n)return;return n.arrayBuffer()}catch(t){return void We("Failed to load entry from the cache: "+e,t)}}(e);if(!t)return void Ve("Failed to load interp_pgo table (No table found in cache)");const n=_(t.byteLength);K().set(new Uint8Array(t),n),o.mono_interp_pgo_load_table(n,t.byteLength)&&He("Failed to load interp_pgo table (Unknown error)"),m(n)}async function Nc(){if(st&&!1===globalThis.window.isSecureContext)return We("Failed to open the cache, running on an insecure origin"),null;if(void 0===globalThis.caches)return We("Failed to open the cache, probably running on an insecure origin"),null;const e=`dotnet-resources${document.baseURI.substring(document.location.origin.length)}`;try{return await globalThis.caches.open(e)||null}catch(e){return We("Failed to open cache"),null}}async function Oc(t){if(!ct.subtle)return null;const n=Object.assign({},ct.config);n.resourcesHash=n.resources.hash,delete n.assets,delete n.resources,n.preferredIcuAsset=lt.preferredIcuAsset,delete n.forwardConsoleLogsToWS,delete n.diagnosticTracing,delete n.appendElementOnExit,delete n.interopCleanupOnExit,delete n.dumpThreadsOnNonZeroExit,delete n.logExitCode,delete n.pthreadPoolInitialSize,delete n.pthreadPoolUnusedSize,delete n.asyncFlushOnExit,delete n.remoteSources,delete n.ignorePdbLoadErrors,delete n.maxParallelDownloads,delete n.enableDownloadRetry,delete n.extensions,delete n.runtimeId,delete n.jsThreadBlockingMode,n.GitHash=lt.gitHash,n.ProductVersion=e;const r=JSON.stringify(n),o=await ct.subtle.digest("SHA-256",(new TextEncoder).encode(r)),s=new Uint8Array(o);return`${t}-${Array.from(s).map((e=>e.toString(16).padStart(2,"0"))).join("")}`}async function Cc(e){const t=lt.config.resources.lazyAssembly;if(!t)throw new Error("No assemblies have been marked as lazy-loadable. Use the 'BlazorWebAssemblyLazyLoad' item group in your project file to enable lazy loading an assembly.");let n=e;e.endsWith(".dll")?n=e.substring(0,e.length-4):e.endsWith(".wasm")&&(n=e.substring(0,e.length-5));const r=n+".dll",o=n+".wasm";let s=null;for(let e=0;e<t.length;e++){const n=t[e];if(n.virtualPath===r||n.virtualPath===o){s=n,s.behavior="assembly";break}}if(null==s)throw new Error(`${e} must be marked with 'BlazorWebAssemblyLazyLoad' item group in your project file to allow lazy-loading.`);if(lt.loadedAssemblies.includes(s.name))return!1;const a=n+".pdb";let i=!1,c=null;if(0!=lt.config.debugLevel&<.isDebuggingSupported())for(let e=0;e<t.length;e++)if(t[e].virtualPath===a){i=!0,c=t[e],c.behavior="pdb";break}const l=lt.retrieve_asset_download(s);let p=null,u=null;if(i){const e=null!=c?lt.retrieve_asset_download(c):Promise.resolve(null),[t,n]=await Promise.all([l,e]);p=new Uint8Array(t),u=n?new Uint8Array(n):null}else{const e=await l;p=new Uint8Array(e),u=null}return function(e,t){lt.assert_runtime_running();const n=Ke.stackSave();try{const n=$n(4),r=Ln(n,2),o=Ln(n,3);Wn(r,21),Wn(o,21),vo(r,e,4),vo(o,t,4),kn(yn.LoadLazyAssembly,n)}finally{lt.is_runtime_running()&&Ke.stackRestore(n)}}(p,u),!0}async function Dc(e){const t=lt.config.resources.satelliteResources;t&&await Promise.all(e.filter((e=>Object.prototype.hasOwnProperty.call(t,e))).map((e=>{const n=[];for(let r=0;r<t[e].length;r++){const o=t[e][r];o.behavior="resource",o.culture=e,n.push(lt.retrieve_asset_download(o))}return n})).reduce(((e,t)=>e.concat(t)),new Array).map((async e=>{const t=await e;!function(e){lt.assert_runtime_running();const t=Ke.stackSave();try{const t=$n(3),n=Ln(t,2);Wn(n,21),vo(n,e,4),kn(yn.LoadSatelliteAssembly,t)}finally{lt.is_runtime_running()&&Ke.stackRestore(t)}}(new Uint8Array(t))})))}function Fc(e){if(e===l)return null;const t=o.mono_wasm_read_as_bool_or_null_unsafe(e);return 0!==t&&(1===t||null)}function Pc(e){if(e)try{(e=e.toLocaleLowerCase().replace("_","-")).startsWith("zh-")&&(e=e.replace("-chs","-Hans").replace("-cht","-Hant"));const t=Intl.getCanonicalLocales(e);return t.length>0?t[0]:void 0}catch(e){return}}const Mc=[function(e){Xo&&(globalThis.clearTimeout(Xo),Xo=void 0),Xo=Ke.safeSetTimeout(mono_wasm_schedule_timer_tick,e)},function(e,t,n,r,o){if(!0!==ct.mono_wasm_runtime_is_ready)return;const s=K(),a=0!==e?Le(e).concat(".dll"):"",i=ht(new Uint8Array(s.buffer,t,n));let c;r&&(c=ht(new Uint8Array(s.buffer,r,o))),Lt({eventName:"AssemblyLoaded",assembly_name:a,assembly_b64:i,pdb_b64:c})},function(e,t){const n=Le(t);et.logging&&"function"==typeof et.logging.debugger&&et.logging.debugger(e,n)},function(e,t,n,r){const o={res_ok:e,res:{id:t,value:ht(new Uint8Array(K().buffer,n,r))}};bt.has(t)&&We(`Adding an id (${t}) that already exists in commands_received`),bt.set(t,o)},function mono_wasm_fire_debugger_agent_message_with_data(e,t){mono_wasm_fire_debugger_agent_message_with_data_to_pause(ht(new Uint8Array(K().buffer,e,t)))},mono_wasm_fire_debugger_agent_message_with_data_to_pause,function(){Jo||(Jo=Ke.safeSetTimeout(Ko,0))},function(e,t,n,r,s,a,i,c){if(n||mt(!1,"expected instruction pointer"),ic||(ic=fa()),!ic.enableTraces)return 1;if(ic.wasmBytesLimit<=ua(6))return 1;if(cc)return 1;let l,p=hc[r];if(p||(hc[r]=p=new dc(n,r,i)),da(0,1),ic.estimateHeat||pc.length>0||p.isVerbose){const e=o.mono_wasm_method_get_full_name(t);l=Le(e),m(e)}const u=Le(o.mono_wasm_method_get_name(t));p.name=l||u;let d=ic.noExitBackwardBranches?function(e,t,n){const r=t+n,o=[],s=(e-t)/2;for(;e<r;){const n=(e-t)/2,r=O(e),a=Ja(e,r);if(271===r);else{const t=gi(e,r);if("number"!=typeof t){e+=2*a;continue}if(0===t){Ve(`opcode @${e} branch target is self. aborting backbranch table generation`);break}if(t<0){const r=n+t;if(r<0){Ve(`opcode @${e}'s displacement of ${t} goes before body: ${r}. aborting backbranch table generation`);break}r>=s&&o.push(r)}switch(r){case 132:case 133:o.push(n+a)}}e+=2*a}return o.length<=0?null:new Uint16Array(o)}(n,s,a):null;if(d&&n!==s){const e=(n-s)/2;let t=!1;for(let n=0;n<d.length;n++)if(d[n]>=e){t=!0;break}t||(d=null)}const f=function(e,t,n,r,s,a,i,c,l){let p=wc;p?p.clear(8):(wc=p=new Cs(8),function(e){e.defineType("trace",{frame:127,pLocals:127,cinfo:127,ip:127},127,!0),e.defineType("bailout",{retval:127,base:127,reason:127},127,!0),e.defineType("copy_ptr",{dest:127,src:127},64,!0),e.defineType("value_copy",{dest:127,src:127,klass:127},64,!0),e.defineType("entry",{imethod:127},127,!0),e.defineType("strlen",{ppString:127,pResult:127},127,!0),e.defineType("getchr",{ppString:127,pIndex:127,pResult:127},127,!0),e.defineType("getspan",{destination:127,span:127,index:127,element_size:127},127,!0),e.defineType("overflow_check_i4",{lhs:127,rhs:127,opcode:127},127,!0),e.defineType("mathop_d_d",{value:124},124,!0),e.defineType("mathop_dd_d",{lhs:124,rhs:124},124,!0),e.defineType("mathop_f_f",{value:125},125,!0),e.defineType("mathop_ff_f",{lhs:125,rhs:125},125,!0),e.defineType("fmaf",{x:125,y:125,z:125},125,!0),e.defineType("fma",{x:124,y:124,z:124},124,!0),e.defineType("trace_eip",{traceId:127,eip:127},64,!0),e.defineType("newobj_i",{ppDestination:127,vtable:127},127,!0),e.defineType("newstr",{ppDestination:127,length:127},127,!0),e.defineType("newarr",{ppDestination:127,vtable:127,length:127},127,!0),e.defineType("localloc",{destination:127,len:127,frame:127},64,!0),e.defineType("ld_del_ptr",{ppDestination:127,ppSource:127},64,!0),e.defineType("ldtsflda",{ppDestination:127,offset:127},64,!0),e.defineType("gettype",{destination:127,source:127},127,!0),e.defineType("castv2",{destination:127,source:127,klass:127,opcode:127},127,!0),e.defineType("hasparent",{klass:127,parent:127},127,!0),e.defineType("imp_iface",{vtable:127,klass:127},127,!0),e.defineType("imp_iface_s",{obj:127,vtable:127,klass:127},127,!0),e.defineType("box",{vtable:127,destination:127,source:127,vt:127},64,!0),e.defineType("conv",{destination:127,source:127,opcode:127},127,!0),e.defineType("relop_fp",{lhs:124,rhs:124,opcode:127},127,!0),e.defineType("safepoint",{frame:127,ip:127},64,!0),e.defineType("prof_enter",{frame:127,ip:127},64,!0),e.defineType("prof_samplepoint",{frame:127,ip:127},64,!0),e.defineType("prof_leave",{frame:127,ip:127},64,!0),e.defineType("hashcode",{ppObj:127},127,!0),e.defineType("try_hash",{ppObj:127},127,!0),e.defineType("hascsize",{ppObj:127},127,!0),e.defineType("hasflag",{klass:127,dest:127,sp1:127,sp2:127},64,!0),e.defineType("array_rank",{destination:127,source:127},127,!0),e.defineType("stfld_o",{locals:127,fieldOffsetBytes:127,targetLocalOffsetBytes:127,sourceLocalOffsetBytes:127},127,!0),e.defineType("notnull",{ptr:127,expected:127,traceIp:127,ip:127},64,!0),e.defineType("stelemr",{o:127,aindex:127,ref:127},127,!0),e.defineType("simd_p_p",{arg0:127,arg1:127},64,!0),e.defineType("simd_p_pp",{arg0:127,arg1:127,arg2:127},64,!0),e.defineType("simd_p_ppp",{arg0:127,arg1:127,arg2:127,arg3:127},64,!0);const t=xc();for(let n=0;n<t.length;n++)t[n]||mt(!1,`trace #${n} missing`),e.defineImportedFunction("i",t[n][0],t[n][1],!0,t[n][2])}(p)),ic=p.options;const u=r+s,d=`${t}:${(n-r).toString(16)}`,f=zs();let _=0,m=!0,h=!1;const g=hc[a],b=g.isVerbose||i&&pc.findIndex((e=>i.indexOf(e)>=0))>=0;b&&!i&&mt(!1,"Expected methodFullName if trace is instrumented");const y=b?_c++:0;b&&(Ve(`instrumenting: ${i}`),fc[y]=new uc(i)),p.compressImportNames=!b;try{p.appendU32(1836278016),p.appendU32(1),p.generateTypeSection();const t={disp:127,cknull_ptr:127,dest_ptr:127,src_ptr:127,memop_dest:127,memop_src:127,index:127,count:127,math_lhs32:127,math_rhs32:127,math_lhs64:126,math_rhs64:126,temp_f32:125,temp_f64:124};p.options.enableSimd&&(t.v128_zero=123,t.math_lhs128=123,t.math_rhs128=123);let s=!0,i=0;if(p.defineFunction({type:"trace",name:d,export:!0,locals:t},(()=>{switch(p.base=n,p.traceIndex=a,p.frame=e,O(n)){case 674:case 675:case 677:case 676:break;default:throw new Error(`Expected *ip to be a jiterpreter opcode but it was ${O(n)}`)}return p.cfg.initialize(r,c,b?1:0),i=function(e,t,n,r,s,a,i,c){let l=!0,p=!1,u=!1,d=!1,f=0,_=0,m=0;Ya(),a.backBranchTraceLevel=i?2:0;let h=a.cfg.entry(n);for(;n&&n;){if(a.cfg.ip=n,n>=s){jc(a.traceIndex,0,0,"end-of-body"),i&&Ve(`instrumented trace ${t} exited at end of body @${n.toString(16)}`);break}const g=a.options.maxModuleSize-300-a.bytesGeneratedSoFar-a.cfg.overheadBytes;if(a.size>=g){jc(a.traceIndex,0,0,"trace-too-big"),i&&Ve(`instrumented trace ${t} exited because of size limit at @${n.toString(16)} (spaceLeft=${g}b)`);break}let b=O(n);const y=o.mono_jiterp_get_opcode_info(b,2),w=o.mono_jiterp_get_opcode_info(b,3),k=Ja(n,b),S=b>=657&&b<=659,v=S?b-657+2:0,U=S?Ca(n,1+v):0;b>=0&&b<691||mt(!1,`invalid opcode ${b}`);const T=S?ga[v][U]:$s(b),E=n,x=a.options.noExitBackwardBranches&&Wa(n,r,c),I=a.branchTargets.has(n),A=x||I||l&&c,j=m+_+a.branchTargets.size;let $=!1,L=ra(b);switch(x&&(a.backBranchTraceLevel>1&&Ve(`${t} recording back branch target 0x${n.toString(16)}`),a.backBranchOffsets.push(n)),A&&(u=!1,d=!1,ei(a,n,x),p=!0,Ya(),m=0),L<-1&&p&&(L=-2===L?2:0),l=!1,271===b||(lc.indexOf(b)>=0?(Ws(a,n,23),b=678):u&&(b=678)),b){case 271:ji(a,n,j)||(n=0);break;case 678:u&&(d||a.appendU8(0),d=!0);break;case 313:case 314:ai(a,Ca(n,1),0,Ca(n,2));break;case 312:si(a,Ca(n,1),0),ri(a,Ca(n,2),40),a.local("frame"),a.callImport("localloc");break;case 285:ri(a,Ca(n,1),40),a.i32_const(0),ri(a,Ca(n,2),40),a.appendU8(252),a.appendU8(11),a.appendU8(0);break;case 286:ri(a,Ca(n,1),40),Xs(a,0,Ca(n,2));break;case 310:{const e=Ca(n,3),t=Ca(n,2),r=Ca(n,1),o=Ga(a,e);0!==o&&("number"!=typeof o?(ri(a,e,40),a.local("count",34),a.block(64,4)):(a.i32_const(o),a.local("count",33)),ri(a,r,40),a.local("dest_ptr",34),a.appendU8(69),ri(a,t,40),a.local("src_ptr",34),a.appendU8(69),a.appendU8(114),a.block(64,4),Ws(a,n,2),a.endBlock(),"number"==typeof o&&Qs(a,0,0,o,!1,"dest_ptr","src_ptr")||(a.local("dest_ptr"),a.local("src_ptr"),a.local("count"),a.appendU8(252),a.appendU8(10),a.appendU8(0),a.appendU8(0)),"number"!=typeof o&&a.endBlock());break}case 311:{const e=Ca(n,3),t=Ca(n,2);li(a,Ca(n,1),n,!0),ri(a,t,40),ri(a,e,40),a.appendU8(252),a.appendU8(11),a.appendU8(0);break}case 143:case 145:case 227:case 229:case 144:case 146:case 129:case 132:case 133:bi(a,n,e,b)?p=!0:n=0;break;case 538:{const e=Ca(n,2),t=Ca(n,1);e!==t?(a.local("pLocals"),li(a,e,n,!0),oi(a,t,54)):li(a,e,n,!1),a.allowNullCheckOptimization&&Xa.set(t,n),$=!0;break}case 638:case 639:{const t=P(e+ea(4));a.ptr_const(t),a.callImport("entry"),a.block(64,4),Ws(a,n,1),a.endBlock();break}case 676:L=0;break;case 138:break;case 86:{a.local("pLocals");const e=Ca(n,2),r=ci(a,e),o=Ca(n,1),s=Ca(n,3);r||He(`${t}: Expected local ${e} to have address taken flag`),si(a,e,s),oi(a,o,54),Ha.set(o,{type:"ldloca",offset:e}),$=!0;break}case 272:case 300:case 301:case 556:{a.local("pLocals");let t=za(e,Ca(n,2));300===b&&(t=o.mono_jiterp_imethod_to_ftnptr(t)),a.ptr_const(t),oi(a,Ca(n,1),54);break}case 305:{const t=za(e,Ca(n,3));ri(a,Ca(n,1),40),ri(a,Ca(n,2),40),a.ptr_const(t),a.callImport("value_copy");break}case 306:{const e=Ca(n,3);ri(a,Ca(n,1),40),ri(a,Ca(n,2),40),Ys(a,e);break}case 307:{const e=Ca(n,3);si(a,Ca(n,1),e),li(a,Ca(n,2),n,!0),Ys(a,e);break}case 308:{const t=za(e,Ca(n,3));ri(a,Ca(n,1),40),si(a,Ca(n,2),0),a.ptr_const(t),a.callImport("value_copy");break}case 309:{const e=Ca(n,3);ri(a,Ca(n,1),40),si(a,Ca(n,2),0),Ys(a,e);break}case 540:a.local("pLocals"),li(a,Ca(n,2),n,!0),a.appendU8(40),a.appendMemarg(ea(2),2),oi(a,Ca(n,1),54);break;case 539:{a.block(),ri(a,Ca(n,3),40),a.local("index",34);let e="cknull_ptr";a.options.zeroPageOptimization&&aa()?(da(8,1),ri(a,Ca(n,2),40),e="src_ptr",a.local(e,34)):li(a,Ca(n,2),n,!0),a.appendU8(40),a.appendMemarg(ea(2),2),a.appendU8(72),a.local("index"),a.i32_const(0),a.appendU8(78),a.appendU8(113),a.appendU8(13),a.appendULeb(0),Ws(a,n,11),a.endBlock(),a.local("pLocals"),a.local("index"),a.i32_const(2),a.appendU8(108),a.local(e),a.appendU8(106),a.appendU8(47),a.appendMemarg(ea(3),1),oi(a,Ca(n,1),54);break}case 342:case 343:{const e=Da(n,4);a.block(),ri(a,Ca(n,3),40),a.local("index",34);let t="cknull_ptr";342===b?li(a,Ca(n,2),n,!0):(si(a,Ca(n,2),0),t="src_ptr",a.local(t,34)),a.appendU8(40),a.appendMemarg(ea(7),2),a.appendU8(73),a.local("index"),a.i32_const(0),a.appendU8(78),a.appendU8(113),a.appendU8(13),a.appendULeb(0),Ws(a,n,18),a.endBlock(),a.local("pLocals"),a.local(t),a.appendU8(40),a.appendMemarg(ea(8),2),a.local("index"),a.i32_const(e),a.appendU8(108),a.appendU8(106),oi(a,Ca(n,1),54);break}case 664:a.block(),ri(a,Ca(n,3),40),a.local("count",34),a.i32_const(0),a.appendU8(78),a.appendU8(13),a.appendULeb(0),Ws(a,n,18),a.endBlock(),si(a,Ca(n,1),16),a.local("dest_ptr",34),ri(a,Ca(n,2),40),a.appendU8(54),a.appendMemarg(0,0),a.local("dest_ptr"),a.local("count"),a.appendU8(54),a.appendMemarg(4,0);break;case 577:si(a,Ca(n,1),4),si(a,Ca(n,2),4),a.callImport("ld_del_ptr");break;case 73:si(a,Ca(n,1),4),a.ptr_const(Pa(n,2)),a.callImport("ldtsflda");break;case 663:a.block(),si(a,Ca(n,1),4),si(a,Ca(n,2),0),a.callImport("gettype"),a.appendU8(13),a.appendULeb(0),Ws(a,n,2),a.endBlock();break;case 660:{const t=za(e,Ca(n,4));a.ptr_const(t),si(a,Ca(n,1),4),si(a,Ca(n,2),0),si(a,Ca(n,3),0),a.callImport("hasflag");break}case 669:{const e=ea(1);a.local("pLocals"),li(a,Ca(n,2),n,!0),a.i32_const(e),a.appendU8(106),oi(a,Ca(n,1),54);break}case 661:a.local("pLocals"),si(a,Ca(n,2),0),a.callImport("hashcode"),oi(a,Ca(n,1),54);break;case 662:a.local("pLocals"),si(a,Ca(n,2),0),a.callImport("try_hash"),oi(a,Ca(n,1),54);break;case 665:a.local("pLocals"),si(a,Ca(n,2),0),a.callImport("hascsize"),oi(a,Ca(n,1),54);break;case 670:a.local("pLocals"),ri(a,Ca(n,2),40),a.local("math_lhs32",34),ri(a,Ca(n,3),40),a.appendU8(115),a.i32_const(2),a.appendU8(116),a.local("math_rhs32",33),a.local("math_lhs32"),a.i32_const(327685),a.appendU8(106),a.i32_const(10485920),a.appendU8(114),a.i32_const(1703962),a.appendU8(106),a.i32_const(-8388737),a.appendU8(114),a.local("math_rhs32"),a.appendU8(113),a.appendU8(69),oi(a,Ca(n,1),54);break;case 541:case 542:a.block(),si(a,Ca(n,1),4),si(a,Ca(n,2),0),a.callImport(541===b?"array_rank":"a_elesize"),a.appendU8(13),a.appendULeb(0),Ws(a,n,2),a.endBlock();break;case 289:case 290:{const t=za(e,Ca(n,3)),r=o.mono_jiterp_is_special_interface(t),s=289===b,i=Ca(n,1);if(!t){jc(a.traceIndex,0,0,"null-klass"),n=0;continue}a.block(),a.options.zeroPageOptimization&&aa()?(ri(a,Ca(n,2),40),a.local("dest_ptr",34),da(8,1)):(a.block(),ri(a,Ca(n,2),40),a.local("dest_ptr",34),a.appendU8(13),a.appendULeb(0),a.local("pLocals"),a.i32_const(0),oi(a,i,54),a.appendU8(12),a.appendULeb(1),a.endBlock(),a.local("dest_ptr")),r&&a.local("dest_ptr"),a.appendU8(40),a.appendMemarg(ea(14),0),a.ptr_const(t),a.callImport(r?"imp_iface_s":"imp_iface"),s&&(a.local("dest_ptr"),a.appendU8(69),a.appendU8(114)),a.block(64,4),a.local("pLocals"),a.local("dest_ptr"),oi(a,i,54),a.appendU8(5),s?Ws(a,n,19):(a.local("pLocals"),a.i32_const(0),oi(a,i,54)),a.endBlock(),a.endBlock();break}case 291:case 292:case 287:case 288:{const t=za(e,Ca(n,3)),r=291===b||292===b,o=287===b||291===b,s=Ca(n,1);if(!t){jc(a.traceIndex,0,0,"null-klass"),n=0;continue}a.block(),a.options.zeroPageOptimization&&aa()?(ri(a,Ca(n,2),40),a.local("dest_ptr",34),da(8,1)):(a.block(),ri(a,Ca(n,2),40),a.local("dest_ptr",34),a.appendU8(13),a.appendULeb(0),a.local("pLocals"),a.i32_const(0),oi(a,s,54),a.appendU8(12),a.appendULeb(1),a.endBlock(),a.local("dest_ptr")),a.appendU8(40),a.appendMemarg(ea(14),0),a.appendU8(40),a.appendMemarg(ea(15),0),r&&a.local("src_ptr",34),a.i32_const(t),a.appendU8(70),a.block(64,4),a.local("pLocals"),a.local("dest_ptr"),oi(a,s,54),a.appendU8(5),r?(a.local("src_ptr"),a.ptr_const(t),a.callImport("hasparent"),o&&(a.local("dest_ptr"),a.appendU8(69),a.appendU8(114)),a.block(64,4),a.local("pLocals"),a.local("dest_ptr"),oi(a,s,54),a.appendU8(5),o?Ws(a,n,19):(a.local("pLocals"),a.i32_const(0),oi(a,s,54)),a.endBlock()):(si(a,Ca(n,1),4),a.local("dest_ptr"),a.ptr_const(t),a.i32_const(b),a.callImport("castv2"),a.appendU8(69),a.block(64,4),Ws(a,n,19),a.endBlock()),a.endBlock(),a.endBlock();break}case 295:case 296:a.ptr_const(za(e,Ca(n,3))),si(a,Ca(n,1),4),si(a,Ca(n,2),0),a.i32_const(296===b?1:0),a.callImport("box");break;case 299:{const t=za(e,Ca(n,3)),r=ea(17),o=Ca(n,1),s=P(t+r);if(!t||!s){jc(a.traceIndex,0,0,"null-klass"),n=0;continue}a.options.zeroPageOptimization&&aa()?(ri(a,Ca(n,2),40),a.local("dest_ptr",34),da(8,1)):(li(a,Ca(n,2),n,!0),a.local("dest_ptr",34)),a.appendU8(40),a.appendMemarg(ea(14),0),a.appendU8(40),a.appendMemarg(ea(15),0),a.local("src_ptr",34),a.appendU8(40),a.appendMemarg(r,0),a.i32_const(s),a.appendU8(70),a.local("src_ptr"),a.appendU8(45),a.appendMemarg(ea(16),0),a.appendU8(69),a.appendU8(113),a.block(64,4),a.local("pLocals"),a.local("dest_ptr"),a.i32_const(ea(18)),a.appendU8(106),oi(a,o,54),a.appendU8(5),Ws(a,n,21),a.endBlock();break}case 294:a.block(),si(a,Ca(n,1),4),ri(a,Ca(n,2),40),a.callImport("newstr"),a.appendU8(13),a.appendULeb(0),Ws(a,n,17),a.endBlock();break;case 293:{a.block(),si(a,Ca(n,1),4);const t=za(e,Ca(n,3));a.i32_const(t),ri(a,Ca(n,2),40),a.callImport("newarr"),a.appendU8(13),a.appendULeb(0),Ws(a,n,17),a.endBlock();break}case 283:a.block(),si(a,Ca(n,1),4),a.ptr_const(za(e,Ca(n,2))),a.callImport("newobj_i"),a.appendU8(13),a.appendULeb(0),Ws(a,n,17),a.endBlock();break;case 282:case 284:case 544:case 543:p?(Hs(a,n,j,15),u=!0,L=0):n=0;break;case 546:case 547:case 548:case 549:case 545:p?(Hs(a,n,j,545==b?22:15),u=!0):n=0;break;case 137:case 134:Ws(a,n,16),u=!0;break;case 130:case 131:Ws(a,n,26),u=!0;break;case 136:if(a.callHandlerReturnAddresses.length>0&&a.callHandlerReturnAddresses.length<=3){const t=Va(e,Ca(n,1));a.local("pLocals"),a.appendU8(40),a.appendMemarg(t,0),a.local("index",33);for(let e=0;e<a.callHandlerReturnAddresses.length;e++){const t=a.callHandlerReturnAddresses[e];a.local("index"),a.ptr_const(t),a.appendU8(70),a.cfg.branch(t,t<n,1)}Ws(a,n,25)}else n=0;break;case 135:case 635:case 636:n=0;break;case 633:case 634:Vs(a,n,b);break;case 493:case 498:case 494:case 496:case 503:case 495:case 502:case 497:a.block(),si(a,Ca(n,1),8),si(a,Ca(n,2),0),a.i32_const(b),a.callImport("conv"),a.appendU8(13),a.appendULeb(0),Ws(a,n,13),a.endBlock();break;case 456:case 457:case 462:case 463:{const e=456===b||462===b,t=462===b||463===b,r=t?0x8000000000000000:2147483648,o=e?"temp_f32":"temp_f64";a.local("pLocals"),ri(a,Ca(n,2),e?42:43),a.local(o,34),a.appendU8(e?139:153),a.appendU8(e?67:68),e?a.appendF32(r):a.appendF64(r),a.appendU8(e?93:99),a.block(t?126:127,4),a.local(o),a.appendU8(ya[b]),a.appendU8(5),a.appendU8(t?66:65),a.appendBoundaryValue(t?64:32,-1),a.endBlock(),oi(a,Ca(n,1),t?55:54);break}case 529:case 530:{const e=529===b;a.local("pLocals"),ri(a,Ca(n,2),e?40:41);const t=Da(n,3),r=Da(n,4);e?a.i32_const(t):a.i52_const(t),a.appendU8(e?106:124),e?a.i32_const(r):a.i52_const(r),a.appendU8(e?108:126),oi(a,Ca(n,1),e?54:55);break}case 650:case 651:{const e=651===b;a.local("pLocals"),ri(a,Ca(n,2),e?41:40),e?a.i52_const(1):a.i32_const(1),a.appendU8(e?132:114),a.appendU8(e?121:103),e&&a.appendU8(167),a.i32_const(e?63:31),a.appendU8(115),oi(a,Ca(n,1),54);break}case 531:case 532:{const e=531===b,t=e?40:41,r=e?54:55;a.local("pLocals"),ri(a,Ca(n,2),t),ri(a,Ca(n,3),t),e?a.i32_const(31):a.i52_const(63),a.appendU8(e?113:131),a.appendU8(e?116:134),oi(a,Ca(n,1),r);break}case 591:case 618:{const e=618===b,t=e?42:43,r=e?56:57;a.local("pLocals"),ri(a,Ca(n,2),t),ri(a,Ca(n,3),t),ri(a,Ca(n,4),t),a.callImport(e?"fmaf":"fma"),oi(a,Ca(n,1),r);break}default:b>=3&&b<=12||b>=509&&b<=510?p||a.options.countBailouts?(Ws(a,n,14),u=!0):n=0:b>=13&&b<=21?pi(a,n,b)?$=!0:n=0:b>=74&&b<=85?ui(a,n,b)||(n=0):b>=344&&b<=427?_i(a,n,b)||(n=0):wa[b]?mi(a,n,b)||(n=0):va[b]?yi(a,n,e,b)?p=!0:n=0:b>=23&&b<=49?di(a,e,n,b)||(n=0):b>=50&&b<=73?fi(a,e,n,b)||(n=0):b>=87&&b<=127?ki(a,n,b)||(n=0):b>=579&&b<=632?wi(a,n,b)||(n=0):b>=315&&b<=341?vi(a,e,n,b)||(n=0):b>=227&&b<=270?a.branchTargets.size>0?(Hs(a,n,j,8),u=!0):n=0:b>=652&&b<=659?(a.containsSimd=!0,Ti(a,n,b,T,v,U)?$=!0:n=0):b>=559&&b<=571?(a.containsAtomics=!0,Ai(a,n,b)||(n=0)):0===L||(n=0)}if(n){if(!$){const e=n+2;for(let t=0;t<w;t++)Za(O(e+2*t))}if(ic.dumpTraces||i){let e=`${n.toString(16)} ${T} `;const t=n+2,r=t+2*w;for(let t=0;t<y;t++)0!==t&&(e+=", "),e+=O(r+2*t);w>0&&(e+=" -> ");for(let n=0;n<w;n++)0!==n&&(e+=", "),e+=O(t+2*n);a.traceBuf.push(e)}L>0&&(p?m++:_++,f+=L),(n+=2*k)<=s&&(h=n)}else i&&Ve(`instrumented trace ${t} aborted for opcode ${T} @${E.toString(16)}`),jc(a.traceIndex,0,0,b)}for(;a.activeBlocks>0;)a.endBlock();return a.cfg.exitIp=h,a.containsSimd&&(f+=10240),f}(e,d,n,r,u,p,y,c),s=i>=ic.minimumTraceValue,p.cfg.generate()})),p.emitImportsAndFunctions(!1),!s)return g&&"end-of-body"===g.abortReason&&(g.abortReason="trace-too-small"),0;_=zs();const f=p.getArrayView();if(da(6,f.length),f.length>=p.options.maxModuleSize)return We(`Jiterpreter generated too much code (${f.length} bytes) for trace ${d}. Please report this issue.`),0;const h=new WebAssembly.Module(f),w=p.getWasmImports(),k=new WebAssembly.Instance(h,w).exports[d];let S;m=!1,l?(qs().set(l,k),S=l):(S=Gs(0,k),0===S&&(cc=!0));const v=ua(1);return p.options.enableStats&&v&&v%500==0&&$c(!0),S}catch(e){h=!0,m=!1;let t=p.containsSimd?" (simd)":"";return p.containsAtomics&&(t+=" (atomics)"),He(`${i||d}${t} code generation failed: ${e} ${e.stack}`),Zs(),0}finally{const e=zs();if(_?(da(11,_-f),da(12,e-_)):da(11,e-f),h||!m&&ic.dumpTraces||b){if(h||ic.dumpTraces||b)for(let e=0;e<p.traceBuf.length;e++)Ve(p.traceBuf[e]);Ve(`// ${i||d} generated, blob follows //`);let e="",t=0;try{for(;p.activeBlocks>0;)p.endBlock();p.inSection&&p.endSection()}catch(e){}const n=p.getArrayView(!1,!0);for(let r=0;r<n.length;r++){const o=n[r];o<16&&(e+="0"),e+=o.toString(16),e+=" ",e.length%10==0&&(Ve(`${t}\t${e}`),e="",t=r+1)}Ve(`${t}\t${e}`),Ve("// end blob //")}}}(e,u,n,s,a,r,l,d,c);return f?(da(1,1),p.fnPtr=f,f):ic.estimateHeat?0:1},function(e){const t=Oi[e&=-2];if(t){if(Di||(Di=fa()),t.hitCount++,t.hitCount===Di.interpEntryFlushThreshold)Pi();else if(t.hitCount!==Di.interpEntryHitCount)return;o.mono_jiterp_tlqueue_add(1,e)>=4?Pi():Ni>0||"function"==typeof globalThis.setTimeout&&(Ni=globalThis.setTimeout((()=>{Ni=0,Pi()}),10))}},function(e,t,n,r,o,s,a,i){if(n>16)return 0;const c=new Fi(e,t,n,r,o,s,a,i);Bi||(Bi=qs());const l=Bi.get(i),p=(s?a?29:20:a?11:2)+n;return c.result=Gs(p,l),Oi[e]=c,c.result},function(e,t,n,r,s){const a=P(n+0),i=Xi[a];if(i)return void(i.result>0?o.mono_jiterp_register_jit_call_thunk(n,i.result):(i.queue.push(n),i.queue.length>12&&Ki()));const c=new Yi(e,t,n,r,0!==s);Xi[a]=c;const l=o.mono_jiterp_tlqueue_add(0,e);let p=Qi[e];p||(p=Qi[e]=[]),p.push(c),l>=6&&Ki()},function(e,t,n,r,s){const a=Zi(e);try{a(t,n,r,s)}catch(e){const t=Ke.wasmExports.__cpp_exception,n=t instanceof WebAssembly.Tag;if(n&&!(e instanceof WebAssembly.Exception&&e.is(t)))throw e;if(i=s,Ke.HEAPU32[i>>>2]=1,n){const n=e.getArg(t,0);o.mono_jiterp_begin_catch(n),o.mono_jiterp_end_catch()}else{if("number"!=typeof e)throw e;o.mono_jiterp_begin_catch(e),o.mono_jiterp_end_catch()}}var i},Ki,function(e,t,n){ct.emscriptenBuildOptions.enableDevToolsProfiler&&function(e){Mt.delete(e)}(e),delete hc[n],function(e){delete Oi[e]}(t),function(e){const t=Qi[e];if(t){for(let e=0;e<t.length;e++)delete Xi[t[e].addr];delete Qi[e]}}(e)},function(){return globalThis.performance.now()},function(e,t){const n=st?{start:t}:{startTime:t};let r=Mt.get(e);if(!r){const t=a.mono_wasm_method_get_name_ex(e);r=Le(t),Mt.set(e,r),m(t)}globalThis.performance.measure(r,n)},function(e,t,n,r,o){const s=n?Le(n):"<no message>",a=!!r,i=e?Le(e):"",c=o,l=t?Le(t):"",p=`[MONO] ${s}`;if(et.logging&&"function"==typeof et.logging.trace)et.logging.trace(i,l,p,a,c);else switch(l){case"critical":case"error":{const e=p+"\n"+(new Error).stack;lt.exitReason||(lt.exitReason=e),console.error(Qe(e))}break;case"warning":console.warn(p);break;case"message":default:console.log(p);break;case"info":console.info(p);break;case"debug":console.debug(p)}},function(e){wt=lt.config.mainAssemblyName+".dll",kt=e,console.assert(!0,`Adding an entrypoint breakpoint ${wt} at method token ${kt}`);debugger},function(e,t){if(!globalThis.crypto||!globalThis.crypto.getRandomValues)return-1;const n=K(),r=n.subarray(e,e+t),o=(n.buffer,!1),s=o?new Uint8Array(t):r;for(let e=0;e<t;e+=65536){const n=s.subarray(e,e+Math.min(t-e,65536));globalThis.crypto.getRandomValues(n)}return o&&r.set(s),0},Xc,function(){console.clear()},Mr,function(e){hr(),e=oe(e,0);try{return function(e){hr();const t=Ft(),r=Mn(e);2!==r&&mt(!1,`Signature version ${r} mismatch.`);const o=function(e){e||mt(!1,"Null signatures");const t=V(e+16);if(0===t)return null;const n=V(e+20);return t||mt(!1,"Null name"),Re(e+t,e+t+n)}(e),s=function(e){e||mt(!1,"Null signatures");const t=V(e+24);return 0===t?null:Re(e+t,e+t+V(e+28))}(e),a=function(e){return e||mt(!1,"Null signatures"),V(e+8)}(e);lt.diagnosticTracing&&ze(`Binding [JSImport] ${o} from ${s} module`);const i=function(e,t){e&&"string"==typeof e||mt(!1,"function_name must be string");let n={};const r=e.split(".");t?(n=_r.get(t),n||mt(!1,`ES6 module ${t} was not imported yet, please call JSHost.ImportAsync() first in order to invoke ${e}.`)):"INTERNAL"===r[0]?(n=et,r.shift()):"globalThis"===r[0]&&(n=globalThis,r.shift());for(let t=0;t<r.length-1;t++){const o=r[t],s=n[o];if(!s)throw new Error(`${o} not found while looking up ${e}`);n=s}const o=n[r[r.length-1]];if("function"!=typeof o)throw new Error(`${e} must be a Function but was ${typeof o}`);return o.bind(n)}(o,s),c=Pn(e),l=new Array(c),p=new Array(c);let u=!1;for(let t=0;t<c;t++){const n=Bn(e,t+2),r=Nn(n),o=zt(n,r,t+2);o||mt(!1,"ERR42: argument marshaler must be resolved"),l[t]=o,23===r&&(p[t]=e=>{e&&e.dispose()},u=!0)}const d=Bn(e,1),f=Nn(d),_=eo(d,f,1),m=26==f,h=20==f||30==f,g={fn:i,fqn:s+":"+o,args_count:c,arg_marshalers:l,res_converter:_,has_cleanup:u,arg_cleanup:p,is_discard_no_wait:m,is_async:h,isDisposed:!1};let b;b=h||m||u?ar(g):0!=c||_?1!=c||_?1==c&&_?function(e){const t=e.fn,r=e.arg_marshalers[0],o=e.res_converter,s=e.fqn;return e=null,function(a){const i=Ft();try{n&&e.isDisposed;const s=r(a),i=t(s);o(a,i)}catch(e){wo(a,e)}finally{Pt(i,"mono.callCsFunction:",s)}}}(g):2==c&&_?function(e){const t=e.fn,r=e.arg_marshalers[0],o=e.arg_marshalers[1],s=e.res_converter,a=e.fqn;return e=null,function(i){const c=Ft();try{n&&e.isDisposed;const a=r(i),c=o(i),l=t(a,c);s(i,l)}catch(e){wo(i,e)}finally{Pt(c,"mono.callCsFunction:",a)}}}(g):ar(g):function(e){const t=e.fn,r=e.arg_marshalers[0],o=e.fqn;return e=null,function(s){const a=Ft();try{n&&e.isDisposed;const o=r(s);t(o)}catch(e){wo(s,e)}finally{Pt(a,"mono.callCsFunction:",o)}}}(g):function(e){const t=e.fn,r=e.fqn;return e=null,function(o){const s=Ft();try{n&&e.isDisposed,t()}catch(e){wo(o,e)}finally{Pt(s,"mono.callCsFunction:",r)}}}(g);let y=b;y[xn]=g,sr[a]=y,Pt(t,"mono.bindJsFunction:",o)}(e),0}catch(e){return Ne(function(e){let t="unknown exception";if(e){t=e.toString();const n=e.stack;n&&(n.startsWith(t)?t=n:t+="\n"+n),t=Xe(t)}return t}(e))}},function(e,t){!function(e,t){lt.assert_runtime_running();const n=Fr(e);n&&"function"==typeof n&&n[En]||mt(!1,`Bound function handle expected ${e}`),n(t=oe(t,0))}(e,t)},function(e,t){lt.assert_runtime_running(),t=oe(t,0);const n=sr[e];n||mt(!1,`Imported function handle expected ${e}`),n(t)},function(e){gr((()=>function(e){if(!lt.is_runtime_running())return void(lt.diagnosticTracing&&ze("This promise resolution/rejection can't be propagated to managed code, mono runtime already exited."));const t=Ln(e=oe(e,0),0),r=n;try{lt.assert_runtime_running();const n=Ln(e,1),o=Ln(e,2),s=Ln(e,3),a=zn(o),i=Qn(o),c=Fr(i);c||mt(!1,`Cannot find Promise for JSHandle ${i}`),c.resolve_or_reject(a,i,s),r||(Wn(n,1),Wn(t,0))}catch(e){wo(t,e)}}(e)))},function(e){gr((()=>function(e){if(!lt.is_runtime_running())return void(lt.diagnosticTracing&&ze("This promise can't be canceled, mono runtime already exited."));const t=qr(e);t||mt(!1,`Expected Promise for GCHandle ${e}`),t.cancel()}(e)))},function(e,t,n,r,o,s,a){try{const i=Re(n,n+2*r),c=Pc(i);if(!c&&i)return Be(o,o+2*i.length,i),T(a,i.length),0;const l=Pc(Re(e,e+2*t));if(!c||!l)throw new Error(`Locale or culture name is null or empty. localeName=${c}, cultureName=${l}`);const p=c.split("-");let u,d;try{const e=p.length>1?p.pop():void 0;d=e?new Intl.DisplayNames([l],{type:"region"}).of(e):void 0;const t=p.join("-");u=new Intl.DisplayNames([l],{type:"language"}).of(t)}catch(e){if(!(e instanceof RangeError))throw e;try{u=new Intl.DisplayNames([l],{type:"language"}).of(c)}catch(e){if(e instanceof RangeError&&i)return Be(o,o+2*i.length,i),T(a,i.length),0;throw e}}const f={LanguageName:u,RegionName:d},_=Object.values(f).join("##");if(!_)throw new Error(`Locale info for locale=${c} is null or empty.`);if(_.length>s)throw new Error(`Locale info for locale=${c} exceeds length of ${s}.`);return Be(o,o+2*_.length,_),T(a,_.length),0}catch(e){return T(a,-1),Ne(e.toString())}},function(e){return pt.ds_rt_websocket_create(e)},function(e,t,n){return pt.ds_rt_websocket_send(e,t,n)},function(e){return pt.ds_rt_websocket_poll(e)},function(e,t,n){return pt.ds_rt_websocket_recv(e,t,n)},function(e){return pt.ds_rt_websocket_close(e)}];async function zc(e,t){try{const n=await Vc(e,t);return lt.mono_exit(n),n}catch(e){try{lt.mono_exit(1,e)}catch(e){}return e&&"number"==typeof e.status?e.status:1}}async function Vc(e,t){null!=e&&""!==e||(e=lt.config.mainAssemblyName)||mt(!1,"Null or empty config.mainAssemblyName"),null==t&&(t=ct.config.applicationArguments),null==t&&(t=tt?(await import(/*! webpackIgnore: true */"process")).argv.slice(2):[]),function(e,t){const n=t.length+1,r=_(4*n);let s=0;Ke.setValue(r+4*s,o.mono_wasm_strdup(e),"i32"),s+=1;for(let e=0;e<t.length;++e)Ke.setValue(r+4*s,o.mono_wasm_strdup(t[e]),"i32"),s+=1;o.mono_wasm_set_main_args(n,r)}(e,t),lt.config.mainAssemblyName=e,-1==ct.waitForDebugger&&(Ve("waiting for debugger..."),await new Promise((e=>{const t=setInterval((()=>{1==ct.waitForDebugger&&(clearInterval(t),e())}),100)})));try{return Ke.runtimeKeepalivePush(),await new Promise((e=>globalThis.setTimeout(e,0))),await function(e,t,n){lt.assert_runtime_running();const r=Ke.stackSave();try{const r=$n(5),o=Ln(r,1),s=Ln(r,2),a=Ln(r,3),i=Ln(r,4);uo(s,$e(e)),Uo(a,t&&!t.length?void 0:t,15),no(i,n);let c=sn(o,0,Jt);return wn(ct.managedThreadTID,yn.CallEntrypoint,r),c=an(r,Jt,c),null==c&&(c=Promise.resolve(0)),c[Dr]=!0,c}finally{lt.is_runtime_running()&&Ke.stackRestore(r)}}(e,t,1==ct.waitForDebugger)}finally{Ke.runtimeKeepalivePop()}}function Wc(e){ct.runtimeReady&&(ct.runtimeReady=!1,o.mono_wasm_exit(e))}function Hc(e){if(lt.exitReason=e,ct.runtimeReady){ct.runtimeReady=!1;const t=Qe(e);Ke.abort(t)}throw e}var qc,Gc;const Jc=2147483647&(null!==(Gc=null===(qc=globalThis.performance)||void 0===qc?void 0:qc.timeOrigin)&&void 0!==Gc?Gc:Date.now());function Xc(){return Jc}async function Qc(e){e.out||(e.out=console.log.bind(console)),e.err||(e.err=console.error.bind(console)),e.print||(e.print=e.out),e.printErr||(e.printErr=e.err),lt.out=e.print,lt.err=e.printErr,await async function(){var e;if(tt){if(globalThis.performance===Io){const{performance:e}=et.require("perf_hooks");globalThis.performance=e}if(et.process=await import(/*! webpackIgnore: true */"process"),globalThis.crypto||(globalThis.crypto={}),!globalThis.crypto.getRandomValues){let e;try{e=et.require("node:crypto")}catch(e){}e?e.webcrypto?globalThis.crypto=e.webcrypto:e.randomBytes&&(globalThis.crypto.getRandomValues=t=>{t&&t.set(e.randomBytes(t.length))}):globalThis.crypto.getRandomValues=()=>{throw new Error("Using node without crypto support. To enable current operation, either provide polyfill for 'globalThis.crypto.getRandomValues' or enable 'node:crypto' module.")}}}ct.subtle=null===(e=globalThis.crypto)||void 0===e?void 0:e.subtle}()}function Yc(e){const t=Ft();e.locateFile||(e.locateFile=e.__locateFile=e=>lt.scriptDirectory+e),e.mainScriptUrlOrBlob=lt.scriptUrl;const s=e.instantiateWasm,i=e.preInit?"function"==typeof e.preInit?[e.preInit]:e.preInit:[],l=e.preRun?"function"==typeof e.preRun?[e.preRun]:e.preRun:[],p=e.postRun?"function"==typeof e.postRun?[e.postRun]:e.postRun:[],u=e.onRuntimeInitialized?e.onRuntimeInitialized:()=>{};e.instantiateWasm=(e,t)=>function(e,t,n){const r=Ft();if(n){const o=n(e,((e,n)=>{Pt(r,"mono.instantiateWasm"),ct.afterInstantiateWasm.promise_control.resolve(),t(e,n)}));return o}return async function(e,t){try{await lt.afterConfigLoaded,lt.diagnosticTracing&&ze("instantiate_wasm_module"),await ct.beforePreInit.promise,Ke.addRunDependency("instantiate_wasm_module"),await async function(){const e=lt.simd(),t=lt.relaxedSimd(),n=lt.exceptions();ct.featureWasmSimd=await e,ct.featureWasmRelaxedSimd=await t,ct.featureWasmEh=await n,ct.emscriptenBuildOptions.wasmEnableSIMD&&(ct.featureWasmSimd||mt(!1,"This browser/engine doesn't support WASM SIMD. Please use a modern version. See also https://aka.ms/dotnet-wasm-features")),ct.emscriptenBuildOptions.wasmEnableEH&&(ct.featureWasmEh||mt(!1,"This browser/engine doesn't support WASM exception handling. Please use a modern version. See also https://aka.ms/dotnet-wasm-features"))}(),function(e){const t=e.env||e.a;if(!t)return void We("WARNING: Neither imports.env or imports.a were present when instantiating the wasm module. This likely indicates an emscripten configuration issue.");const n=new Array(Mc.length);for(const e in t){const r=t[e];if("function"==typeof r&&-1!==r.toString().indexOf("runtime_idx"))try{const{runtime_idx:t}=r();if(void 0!==n[t])throw new Error(`Duplicate runtime_idx ${t}`);n[t]=e}catch(e){}}for(const[e,r]of Mc.entries()){const o=n[e];if(void 0!==o){if("function"!=typeof t[o])throw new Error(`Expected ${o} to be a function`);t[o]=r}}}(e);const n=await lt.wasmCompilePromise.promise;t(await WebAssembly.instantiate(n,e),n),lt.diagnosticTracing&&ze("instantiate_wasm_module done"),ct.afterInstantiateWasm.promise_control.resolve()}catch(e){throw He("instantiate_wasm_module() failed",e),lt.mono_exit(1,e),e}Ke.removeRunDependency("instantiate_wasm_module")}(e,t),[]}(e,t,s),e.preInit=[()=>function(e){Ke.addRunDependency("mono_pre_init");const t=Ft();try{Ke.addRunDependency("mono_wasm_pre_init_essential"),lt.diagnosticTracing&&ze("mono_wasm_pre_init_essential"),lt.gitHash!==ct.gitHash&&We(`The version of dotnet.runtime.js ${ct.gitHash} is different from the version of dotnet.js ${lt.gitHash}!`),lt.gitHash!==ct.emscriptenBuildOptions.gitHash&&We(`The version of dotnet.native.js ${ct.emscriptenBuildOptions.gitHash} is different from the version of dotnet.js ${lt.gitHash}!`),n!==ct.emscriptenBuildOptions.wasmEnableThreads&&We(`The threads of dotnet.native.js ${ct.emscriptenBuildOptions.wasmEnableThreads} is different from the version of dotnet.runtime.js ${n}!`),function(){const e=[...r];for(const t of e){const e=o,[n,r,s,a,i]=t,l="function"==typeof n;if(!0===n||l)e[r]=function(...t){!l||!n()||mt(!1,`cwrap ${r} should not be called when binding was skipped`);const o=c(r,s,a,i);return e[r]=o,o(...t)};else{const t=c(r,s,a,i);e[r]=t}}}(),s=et,Object.assign(s,{mono_wasm_exit:o.mono_wasm_exit,mono_wasm_profiler_init_aot:a.mono_wasm_profiler_init_aot,mono_wasm_profiler_init_browser_devtools:a.mono_wasm_profiler_init_browser_devtools,mono_wasm_exec_regression:o.mono_wasm_exec_regression,mono_wasm_print_thread_dump:void 0}),Ke.removeRunDependency("mono_wasm_pre_init_essential"),lt.diagnosticTracing&&ze("preInit"),ct.beforePreInit.promise_control.resolve(),e.forEach((e=>e(Ke)))}catch(e){throw He("user preInint() failed",e),lt.mono_exit(1,e),e}var s;(async()=>{try{await async function(){lt.diagnosticTracing&&ze("mono_wasm_pre_init_essential_async"),Ke.addRunDependency("mono_wasm_pre_init_essential_async"),Ke.removeRunDependency("mono_wasm_pre_init_essential_async")}(),Pt(t,"mono.preInit")}catch(e){throw lt.mono_exit(1,e),e}ct.afterPreInit.promise_control.resolve(),Ke.removeRunDependency("mono_pre_init")})()}(i)],e.preRun=[()=>async function(e){Ke.addRunDependency("mono_pre_run_async");try{await ct.afterInstantiateWasm.promise,await ct.afterPreInit.promise,lt.diagnosticTracing&&ze("preRunAsync");const t=Ft();e.map((e=>e(Ke))),Pt(t,"mono.preRun")}catch(e){throw He("preRunAsync() failed",e),lt.mono_exit(1,e),e}ct.afterPreRun.promise_control.resolve(),Ke.removeRunDependency("mono_pre_run_async")}(l)],e.onRuntimeInitialized=()=>async function(e){try{await ct.afterPreRun.promise,lt.diagnosticTracing&&ze("onRuntimeInitialized"),ct.nativeExit=Wc,ct.nativeAbort=Hc;const t=Ft();if(ct.beforeOnRuntimeInitialized.promise_control.resolve(),await ct.coreAssetsInMemory.promise,ct.config.virtualWorkingDirectory){const e=Ke.FS,t=ct.config.virtualWorkingDirectory;try{const n=e.stat(t);n?n&&e.isDir(n.mode)||mt(!1,`FS.chdir: ${t} is not a directory`):Ke.FS_createPath("/",t,!0,!0)}catch(e){Ke.FS_createPath("/",t,!0,!0)}e.chdir(t)}ct.config.interpreterPgo&&setTimeout(Kc,1e3*(ct.config.interpreterPgoSaveDelay||15)),Ke.runtimeKeepalivePush(),n||await async function(){try{const t=Ft(),n=ct.config.environmentVariables||{};lt.diagnosticTracing&&ze("Initializing mono runtime");for(const e in n){const t=n[e];if("string"!=typeof t)throw new Error(`Expected environment variable '${e}' to be a string but it was ${typeof t}: '${t}'`);Zc(e,t)}if(ct.config.runtimeOptions&&function(e){if(!Array.isArray(e))throw new Error("Expected runtimeOptions to be an array of strings");const t=_(4*e.length);let n=0;for(let r=0;r<e.length;++r){const s=e[r];if("string"!=typeof s)throw new Error("Expected runtimeOptions to be an array of strings");Ke.setValue(t+4*n,o.mono_wasm_strdup(s),"i32"),n+=1}o.mono_wasm_parse_runtime_options(e.length,t)}(ct.config.runtimeOptions),ct.emscriptenBuildOptions.enableEventPipe){const e="DOTNET_DiagnosticPorts",t="js://ready";n[e]||(n[e]=t,Zc(e,t))}else ct.emscriptenBuildOptions.enableAotProfiler?function(e){ct.emscriptenBuildOptions.enableAotProfiler||mt(!1,"AOT profiler is not enabled, please use <WasmProfilers>aot;</WasmProfilers> in your project file."),null==e&&(e={}),"writeAt"in e||(e.writeAt="System.Runtime.InteropServices.JavaScript.JavaScriptExports::StopProfile"),"sendTo"in e||(e.sendTo="Interop/Runtime::DumpAotProfileData");const t="aot:write-at-method="+e.writeAt+",send-to-method="+e.sendTo;a.mono_wasm_profiler_init_aot(t)}(ct.config.aotProfilerOptions||{}):ct.emscriptenBuildOptions.enableDevToolsProfiler?function(){ct.emscriptenBuildOptions.enableDevToolsProfiler||mt(!1,"DevTools profiler is not enabled, please use <WasmProfilers>browser:callspec=N:Sample</WasmProfilers> in your project file."),Dt=globalThis.performance&&"function"==typeof globalThis.performance.measure;const e=`${ct.config.environmentVariables.DOTNET_WasmPerformanceInstrumentation||"callspec=all"}`;a.mono_wasm_profiler_init_browser_devtools(e)}():ct.emscriptenBuildOptions.enableLogProfiler&&(e=ct.config.logProfilerOptions||{},ct.emscriptenBuildOptions.enableLogProfiler||mt(!1,"Log profiler is not enabled, please use <WasmProfilers>log;</WasmProfilers> in your project file."),e.takeHeapshot||mt(!1,"Log profiler is not enabled, the takeHeapshot method must be defined in LogProfilerOptions.takeHeapshot"),e.configuration||(e.configuration="log:alloc,output=output.mlpd"),e.takeHeapshot?a.mono_wasm_profiler_init_log(`${e.configuration},take-heapshot-method=${e.takeHeapshot}`):a.mono_wasm_profiler_init_log(e.configuration));!function(){var e,t,n,r;lt.diagnosticTracing&&ze("mono_wasm_load_runtime");try{const s=Ft();let a=ct.config.debugLevel;null==a&&(a=0,ct.config.debugLevel&&(a=0+a)),lt.isDebuggingSupported()&&(ct.config.resources.corePdb||ct.config.resources.pdb)||(a=0);const i=new Map;if(null===(t=null===(e=ct.config.runtimeConfig)||void 0===e?void 0:e.runtimeOptions)||void 0===t?void 0:t.configProperties)for(const[e,t]of Object.entries(null===(r=null===(n=ct.config.runtimeConfig)||void 0===n?void 0:n.runtimeOptions)||void 0===r?void 0:r.configProperties))i.set(e,""+t);i.set("APP_CONTEXT_BASE_DIRECTORY","/"),i.set("RUNTIME_IDENTIFIER","browser-wasm");const c=i.size,l=[],p=_(4*i.size),u=_(4*i.size);l.push(p),l.push(u);let d=0;for(const[e,t]of i.entries()){const n=$e(e),r=$e(t);S(p+4*d,n),S(u+4*d,r),d++,l.push(n),l.push(r)}o.mono_wasm_load_runtime(a,c,p,u);for(const e of l)Ke._free(e);Pt(s,"mono.loadRuntime")}catch(e){throw He("mono_wasm_load_runtime () failed",e),lt.mono_exit(1,e),e}}(),function(){if(ma)return;ma=!0;const e=fa(),t=e.tableSize,n=ct.emscriptenBuildOptions.runAOTCompilation?e.tableSize:1,r=ct.emscriptenBuildOptions.runAOTCompilation?e.aotTableSize:1,s=t+n+36*r+1,a=qs();let i=a.length;const c=performance.now();a.grow(s);const l=performance.now();e.enableStats&&Ve(`Allocated ${s} function table entries for jiterpreter, bringing total table size to ${a.length}`),i=_a(0,i,t,ta("mono_jiterp_placeholder_trace")),i=_a(1,i,n,ta("mono_jiterp_placeholder_jit_call"));for(let e=2;e<=37;e++)i=_a(e,i,r,a.get(o.mono_jiterp_get_interp_entry_func(e)));const p=performance.now();e.enableStats&&Ve(`Growing wasm function table took ${l-c}. Filling table took ${p-l}.`)}(),function(){if(!ct.mono_wasm_bindings_is_ready){lt.diagnosticTracing&&ze("bindings_init"),ct.mono_wasm_bindings_is_ready=!0;try{const e=Ft();we||("undefined"!=typeof TextDecoder&&(Se=new TextDecoder("utf-16le"),ve=new TextDecoder("utf-8",{fatal:!1}),Ue=new TextDecoder("utf-8"),Te=new TextEncoder),we=_(12)),Ee||(Ee=function(e){let t;if(de.length>0)t=de.pop();else{const e=function(){if(null==le||!pe){le=_e(ce,"js roots"),pe=new Int32Array(ce),ue=ce;for(let e=0;e<ce;e++)pe[e]=ce-e-1}if(ue<1)throw new Error("Out of scratch root space");const e=pe[ue-1];return ue--,e}();t=new he(le,e)}if(void 0!==e){if("number"!=typeof e)throw new Error("value must be an address in the managed heap");t.set(e)}else t.set(0);return t}()),function(){const e="System.Runtime.InteropServices.JavaScript";if(ct.runtime_interop_module=o.mono_wasm_assembly_load(e),!ct.runtime_interop_module)throw"Can't find bindings module assembly: "+e;if(ct.runtime_interop_namespace=e,ct.runtime_interop_exports_classname="JavaScriptExports",ct.runtime_interop_exports_class=o.mono_wasm_assembly_find_class(ct.runtime_interop_module,ct.runtime_interop_namespace,ct.runtime_interop_exports_classname),!ct.runtime_interop_exports_class)throw"Can't find "+ct.runtime_interop_namespace+"."+ct.runtime_interop_exports_classname+" class";yn.InstallMainSynchronizationContext=void 0,yn.CallEntrypoint=Sn("CallEntrypoint"),yn.BindAssemblyExports=Sn("BindAssemblyExports"),yn.ReleaseJSOwnedObjectByGCHandle=Sn("ReleaseJSOwnedObjectByGCHandle"),yn.CompleteTask=Sn("CompleteTask"),yn.CallDelegate=Sn("CallDelegate"),yn.GetManagedStackTrace=Sn("GetManagedStackTrace"),yn.LoadSatelliteAssembly=Sn("LoadSatelliteAssembly"),yn.LoadLazyAssembly=Sn("LoadLazyAssembly")}(),0==vn.size&&(vn.set(21,_n),vn.set(23,hn),vn.set(22,gn),vn.set(3,Wt),vn.set(4,Ht),vn.set(5,qt),vn.set(6,Gt),vn.set(7,Jt),vn.set(8,Xt),vn.set(9,Qt),vn.set(11,Yt),vn.set(12,Kt),vn.set(10,Zt),vn.set(15,pn),vn.set(16,un),vn.set(27,un),vn.set(13,dn),vn.set(14,fn),vn.set(17,tn),vn.set(18,tn),vn.set(20,on),vn.set(29,on),vn.set(28,on),vn.set(30,sn),vn.set(24,nn),vn.set(25,nn),vn.set(0,en),vn.set(1,en),vn.set(2,en),vn.set(26,en)),0==Un.size&&(Un.set(21,vo),Un.set(23,To),Un.set(22,Eo),Un.set(3,no),Un.set(4,ro),Un.set(5,oo),Un.set(6,so),Un.set(7,ao),Un.set(8,io),Un.set(9,co),Un.set(10,lo),Un.set(11,po),Un.set(12,uo),Un.set(17,fo),Un.set(18,_o),Un.set(15,mo),Un.set(16,wo),Un.set(27,wo),Un.set(13,ko),Un.set(14,So),Un.set(20,yo),Un.set(28,yo),Un.set(29,yo),Un.set(24,bo),Un.set(25,bo),Un.set(0,go),Un.set(2,go),Un.set(1,go),Un.set(26,go)),ct._i52_error_scratch_buffer=_(4),Pt(e,"mono.bindingsInit")}catch(e){throw He("Error in bindings_init",e),e}}}(),ct.runtimeReady=!0,ct.afterMonoStarted.promise_control.resolve(),ct.config.interpreterPgo&&await Bc(),Pt(t,"mono.startRuntime")}catch(e){throw He("start_runtime() failed",e),lt.mono_exit(1,e),e}var e}(),await async function(){await ct.allAssetsInMemory.promise,ct.config.assets&&(lt.actual_downloaded_assets_count!=lt.expected_downloaded_assets_count&&mt(!1,`Expected ${lt.expected_downloaded_assets_count} assets to be downloaded, but only finished ${lt.actual_downloaded_assets_count}`),lt.actual_instantiated_assets_count!=lt.expected_instantiated_assets_count&&mt(!1,`Expected ${lt.expected_instantiated_assets_count} assets to be in memory, but only instantiated ${lt.actual_instantiated_assets_count}`),lt._loaded_files.forEach((e=>lt.loadedFiles.push(e.url))),lt.diagnosticTracing&&ze("all assets are loaded in wasm memory"))}(),tl.registerRuntime(it),ct.mono_wasm_runtime_is_ready||function mono_wasm_runtime_ready(){if(et.mono_wasm_runtime_is_ready=ct.mono_wasm_runtime_is_ready=!0,vt=0,St={},Ut=-1,globalThis.dotnetDebugger)debugger}();try{e(Ke)}catch(e){throw He("user callback onRuntimeInitialized() failed",e),e}await async function(){lt.diagnosticTracing&&ze("mono_wasm_after_user_runtime_initialized");try{if(Ke.onDotnetReady)try{await Ke.onDotnetReady()}catch(e){throw He("onDotnetReady () failed",e),e}}catch(e){throw He("mono_wasm_after_user_runtime_initialized () failed",e),e}}(),Pt(t,"mono.onRuntimeInitialized")}catch(e){throw Ke.runtimeKeepalivePop(),He("onRuntimeInitializedAsync() failed",e),lt.mono_exit(1,e),e}ct.afterOnRuntimeInitialized.promise_control.resolve()}(u),e.postRun=[()=>async function(e){try{await ct.afterOnRuntimeInitialized.promise,lt.diagnosticTracing&&ze("postRunAsync");const t=Ft();Ke.FS_createPath("/","usr",!0,!0),Ke.FS_createPath("/","usr/share",!0,!0),e.map((e=>e(Ke))),Pt(t,"mono.postRun")}catch(e){throw He("postRunAsync() failed",e),lt.mono_exit(1,e),e}ct.afterPostRun.promise_control.resolve()}(p)],e.ready.then((async()=>{await ct.afterPostRun.promise,Pt(t,"mono.emscriptenStartup"),ct.dotnetReady.promise_control.resolve(it)})).catch((e=>{ct.dotnetReady.promise_control.reject(e)})),e.ready=ct.dotnetReady.promise}function Zc(e,t){o.mono_wasm_setenv(e,t)}async function Kc(){void 0!==lt.exitCode&&0!==lt.exitCode||await Rc()}async function el(e){}let tl;function nl(r){const o=Ke,a=r,i=globalThis;Object.assign(a.internal,{mono_wasm_exit:e=>{Ke.err("early exit "+e)},forceDisposeProxies:Jr,mono_wasm_dump_threads:void 0,logging:void 0,mono_wasm_stringify_as_error_with_stack:Qe,mono_wasm_get_loaded_files:As,mono_wasm_send_dbg_command_with_parms:Et,mono_wasm_send_dbg_command:xt,mono_wasm_get_dbg_command_info:It,mono_wasm_get_details:Nt,mono_wasm_release_object:Ct,mono_wasm_call_function_on:Bt,mono_wasm_debugger_resume:At,mono_wasm_detach_debugger:jt,mono_wasm_raise_debug_event:Lt,mono_wasm_change_debugger_log_level:$t,mono_wasm_debugger_attached:Rt,mono_wasm_runtime_is_ready:ct.mono_wasm_runtime_is_ready,mono_wasm_get_func_id_to_name_mappings:Ze,get_property:lr,set_property:cr,has_property:pr,get_typeof_property:ur,get_global_this:dr,get_dotnet_instance:()=>it,dynamic_import:mr,mono_wasm_bind_cs_function:wr,ws_wasm_create:bs,ws_wasm_open:ys,ws_wasm_send:ws,ws_wasm_receive:ks,ws_wasm_close:Ss,ws_wasm_abort:vs,ws_get_state:gs,http_wasm_supports_streaming_request:$o,http_wasm_supports_streaming_response:Lo,http_wasm_create_controller:Ro,http_wasm_get_response_type:Mo,http_wasm_get_response_status:zo,http_wasm_abort:No,http_wasm_transform_stream_write:Oo,http_wasm_transform_stream_close:Co,http_wasm_fetch:Po,http_wasm_fetch_stream:Do,http_wasm_fetch_bytes:Fo,http_wasm_get_response_header_names:Vo,http_wasm_get_response_header_values:Wo,http_wasm_get_response_bytes:qo,http_wasm_get_response_length:Ho,http_wasm_get_streamed_response_bytes:Go,jiterpreter_dump_stats:$c,jiterpreter_apply_options:pa,jiterpreter_get_options:fa,interp_pgo_load_data:Bc,interp_pgo_save_data:Rc,mono_wasm_gc_lock:ae,mono_wasm_gc_unlock:ie,monoObjectAsBoolOrNullUnsafe:Fc,monoStringToStringUnsafe:Pe,loadLazyAssembly:Cc,loadSatelliteAssemblies:Dc});const c={stringify_as_error_with_stack:Qe,instantiate_symbols_asset:Is,instantiate_asset:xs,jiterpreter_dump_stats:$c,forceDisposeProxies:Jr,utf8ToString:Le,mono_wasm_process_current_pid:Xc,mono_background_exec:()=>s.mono_background_exec(),mono_wasm_ds_exec:()=>s.mono_wasm_ds_exec()};Object.assign(ct,c);const l={runMain:Vc,runMainAndExit:zc,exit:lt.mono_exit,setEnvironmentVariable:Zc,getAssemblyExports:vr,setModuleImports:ir,getConfig:()=>ct.config,invokeLibraryInitializers:lt.invokeLibraryInitializers,setHeapB32:b,setHeapB8:y,setHeapU8:w,setHeapU16:k,setHeapU32:S,setHeapI8:v,setHeapI16:U,setHeapI32:T,setHeapI52:x,setHeapU52:I,setHeapI64Big:A,setHeapF32:j,setHeapF64:$,getHeapB32:R,getHeapB8:B,getHeapU8:N,getHeapU16:O,getHeapU32:C,getHeapI8:M,getHeapI16:z,getHeapI32:V,getHeapI52:W,getHeapU52:H,getHeapI64Big:q,getHeapF32:G,getHeapF64:J,localHeapViewU8:K,localHeapViewU16:ee,localHeapViewU32:te,localHeapViewI8:X,localHeapViewI16:Q,localHeapViewI32:Y,localHeapViewI64Big:Z,localHeapViewF32:ne,localHeapViewF64:re,collectCpuSamples:null,collectMetrics:null,collectGcDump:null,connectDSRouter:null};return Object.assign(it,{INTERNAL:a.internal,Module:o,runtimeBuildInfo:{productVersion:e,gitHash:ct.gitHash,buildConfiguration:t,wasmEnableThreads:n,wasmEnableSIMD:!0,wasmEnableExceptionHandling:!0},...l}),i.getDotnetRuntime?tl=i.getDotnetRuntime.__list:(i.getDotnetRuntime=e=>i.getDotnetRuntime.__list.getRuntime(e),i.getDotnetRuntime.__list=tl=new rl),it}class rl{constructor(){this.list={}}registerRuntime(e){return void 0===e.runtimeId&&(e.runtimeId=Object.keys(this.list).length),this.list[e.runtimeId]=yr(e),lt.config.runtimeId=e.runtimeId,e.runtimeId}getRuntime(e){const t=this.list[e];return t?t.deref():void 0}}export{Yc as configureEmscriptenStartup,Qc as configureRuntimeStartup,el as configureWorkerStartup,nl as initializeExports,Ao as initializeReplacements,dt as passEmscriptenInternals,tl as runtimeList,ft as setRuntimeGlobals};
|
|
//# sourceMappingURL=dotnet.runtime.js.map
|