!function(){"use strict";var e;let t;var n,r;!function(e){const t=[],n="__jsObjectId",r="__dotNetObject",o="__byte[]",i="__dotNetStream",s="__jsStreamReferenceLength";let a,c,l;class u{constructor(e){this._jsObject=e,this._cachedHandlers=new Map}resolveInvocationHandler(e,t){var n;const r=null===(n=this._cachedHandlers.get(e))||void 0===n?void 0:n[t];if(r)return r;const[o,i]=I(this._jsObject,e),s=function(e,t,n,r){switch(n){case l.FunctionCall:const n=e[t];if(n instanceof Function)return n.bind(e);throw new Error(`The value '${r}' is not a function.`);case l.ConstructorCall:const o=e[t];if(o instanceof Function){const t=o.bind(e);return(...e)=>new t(...e)}throw new Error(`The value '${r}' is not a function.`);case l.GetValue:if(!function(e,t){if(!(t in e))return!1;for(;void 0!==e;){const n=Object.getOwnPropertyDescriptor(e,t);if(n)return!!n.hasOwnProperty("value")||n.hasOwnProperty("get")&&"function"==typeof n.get;e=Object.getPrototypeOf(e)}return!1}(e,t))throw new Error(`The property '${r}' is not defined or is not readable.`);return()=>e[t];case l.SetValue:if(!function(e,t){if(!(t in e))return Object.isExtensible(e);for(;void 0!==e;){const n=Object.getOwnPropertyDescriptor(e,t);if(n)return!(!n.hasOwnProperty("value")||!n.writable)||n.hasOwnProperty("set")&&"function"==typeof n.set;e=Object.getPrototypeOf(e)}return!1}(e,t))throw new Error(`The property '${r}' is not writable.`);return(...n)=>e[t]=n[0]}}(o,i,t,e);return this.addHandlerToCache(e,s,t),s}getWrappedObject(){return this._jsObject}addHandlerToCache(e,t,n){const r=this._cachedHandlers.get(e);r?r[n]=t:this._cachedHandlers.set(e,{[n]:t})}}!function(e){e[e.FunctionCall=1]="FunctionCall",e[e.ConstructorCall=2]="ConstructorCall",e[e.GetValue=3]="GetValue",e[e.SetValue=4]="SetValue"}(l=e.JSCallType||(e.JSCallType={}));const d=0,f={[d]:new u(window)};f[0]._cachedHandlers.set("import",{[l.FunctionCall]:e=>("string"==typeof e&&e.startsWith("./")&&(e=new URL(e.substring(2),document.baseURI).toString()),import(e))});let m,h=1;function p(e){t.push(e)}function g(e){if(null==e)return{[n]:-1};if(e&&("object"==typeof e||e instanceof Function)){f[h]=new u(e);const t={[n]:h};return h++,t}throw new Error(`Cannot create a JSObjectReference from the value '${e}'.`)}function b(e){let t=-1;if(e instanceof ArrayBuffer&&(e=new Uint8Array(e)),e instanceof Blob)t=e.size;else{if(!(e.buffer instanceof ArrayBuffer))throw new Error("Supplied value is not a typed array or blob.");if(void 0===e.byteLength)throw new Error(`Cannot create a JSStreamReference from the value '${e}' as it doesn't have a byteLength.`);t=e.byteLength}const r={[s]:t};try{const t=g(e);r[n]=t[n]}catch(t){throw new Error(`Cannot create a JSStreamReference from the value '${e}'.`)}return r}function v(e,n){c=e;const r=n?JSON.parse(n,((e,n)=>t.reduce(((t,n)=>n(e,t)),n))):null;return c=void 0,r}function y(){if(void 0===a)throw new Error("No call dispatcher has been set.");if(null===a)throw new Error("There are multiple .NET runtimes present, so a default dispatcher could not be resolved. Use DotNetObject to invoke .NET instance methods.");return a}e.attachDispatcher=function(e){const t=new w(e);return void 0===a?a=t:a&&(a=null),t},e.attachReviver=p,e.invokeMethod=function(e,t,...n){return y().invokeDotNetStaticMethod(e,t,...n)},e.invokeMethodAsync=function(e,t,...n){return y().invokeDotNetStaticMethodAsync(e,t,...n)},e.createJSObjectReference=g,e.createJSStreamReference=b,e.disposeJSObjectReference=function(e){const t=e&&e[n];"number"==typeof t&&-1!==t&&C(t)},function(e){e[e.Default=0]="Default",e[e.JSObjectReference=1]="JSObjectReference",e[e.JSStreamReference=2]="JSStreamReference",e[e.JSVoidResult=3]="JSVoidResult"}(m=e.JSCallResultType||(e.JSCallResultType={}));class w{constructor(e){this._dotNetCallDispatcher=e,this._byteArraysToBeRevived=new Map,this._pendingDotNetToJSStreams=new Map,this._pendingAsyncCalls={},this._nextAsyncCallId=1}getDotNetCallDispatcher(){return this._dotNetCallDispatcher}invokeJSFromDotNet(e,t,n,r,o){const i=k(this.processJSCall(r,e,o,t),n);return null==i?null:_(this,i)}async beginInvokeJSFromDotNet(e,t,n,r,o,i){try{const s=this.processJSCall(o,t,i,n);if(e){const t=_(this,[e,!0,k(await s,r)]);this._dotNetCallDispatcher.endInvokeJSFromDotNet(e,!0,t)}}catch(t){if(e){const n=JSON.stringify([e,!1,E(t)]);this._dotNetCallDispatcher.endInvokeJSFromDotNet(e,!1,n)}}}processJSCall(e,t,n,r){var o;const i=null!==(o=v(this,r))&&void 0!==o?o:[];return S(t,e,n)(...i)}endInvokeDotNetFromJS(e,t,n){const r=t?v(this,n):new Error(n);this.completePendingCall(parseInt(e,10),t,r)}invokeDotNetStaticMethod(e,t,...n){return this.invokeDotNetMethod(e,t,null,n)}invokeDotNetStaticMethodAsync(e,t,...n){return this.invokeDotNetMethodAsync(e,t,null,n)}invokeDotNetMethod(e,t,n,r){if(this._dotNetCallDispatcher.invokeDotNetFromJS){const o=_(this,r),i=this._dotNetCallDispatcher.invokeDotNetFromJS(e,t,n,o);return i?v(this,i):null}throw new Error("The current dispatcher does not support synchronous calls from JS to .NET. Use invokeDotNetMethodAsync instead.")}invokeDotNetMethodAsync(e,t,n,r){if(e&&n)throw new Error(`For instance method calls, assemblyName should be null. Received '${e}'.`);const o=this._nextAsyncCallId++,i=new Promise(((e,t)=>{this._pendingAsyncCalls[o]={resolve:e,reject:t}}));try{const i=_(this,r);this._dotNetCallDispatcher.beginInvokeDotNetFromJS(o,e,t,n,i)}catch(e){this.completePendingCall(o,!1,e)}return i}receiveByteArray(e,t){this._byteArraysToBeRevived.set(e,t)}processByteArray(e){const t=this._byteArraysToBeRevived.get(e);return t?(this._byteArraysToBeRevived.delete(e),t):null}supplyDotNetStream(e,t){if(this._pendingDotNetToJSStreams.has(e)){const n=this._pendingDotNetToJSStreams.get(e);this._pendingDotNetToJSStreams.delete(e),n.resolve(t)}else{const n=new R;n.resolve(t),this._pendingDotNetToJSStreams.set(e,n)}}getDotNetStreamPromise(e){let t;if(this._pendingDotNetToJSStreams.has(e))t=this._pendingDotNetToJSStreams.get(e).streamPromise,this._pendingDotNetToJSStreams.delete(e);else{const n=new R;this._pendingDotNetToJSStreams.set(e,n),t=n.streamPromise}return t}completePendingCall(e,t,n){if(!this._pendingAsyncCalls.hasOwnProperty(e))throw new Error(`There is no pending async call with ID ${e}.`);const r=this._pendingAsyncCalls[e];delete this._pendingAsyncCalls[e],t?r.resolve(n):r.reject(n)}}function E(e){return e instanceof Error?`${e.message}\n${e.stack}`:e?e.toString():"null"}function S(e,t,n){const r=f[t];if(r)return r.resolveInvocationHandler(e,null!=n?n:l.FunctionCall);throw new Error(`JS object instance with ID ${t} does not exist (has it been disposed?).`)}function C(e){delete f[e]}function I(e,t){const n=t.split(".");let r=e;for(let e=0;econsole.error(e)))}serializeAsArg(){return{[r]:this._id}}}e.DotNetObject=A,p((function(e,t){if(t&&"object"==typeof t){if(t.hasOwnProperty(r))return new A(t[r],c);if(t.hasOwnProperty(n)){const e=t[n],r=f[e];if(r)return r.getWrappedObject();throw new Error(`JS object instance with Id '${e}' does not exist. It may have been disposed.`)}if(t.hasOwnProperty(o)){const e=t[o],n=c.processByteArray(e);if(void 0===n)throw new Error(`Byte array index '${e}' does not exist.`);return n}if(t.hasOwnProperty(i)){const e=t[i],n=c.getDotNetStreamPromise(e);return new N(n)}}return t}));class N{constructor(e){this._streamPromise=e}stream(){return this._streamPromise}async arrayBuffer(){return new Response(await this.stream()).arrayBuffer()}}class R{constructor(){this.streamPromise=new Promise(((e,t)=>{this.resolve=e,this.reject=t}))}}function k(e,t){switch(t){case m.Default:return e;case m.JSObjectReference:return g(e);case m.JSStreamReference:return b(e);case m.JSVoidResult:return null;default:throw new Error(`Invalid JS call result type '${t}'.`)}}let D=0;function _(e,t){D=0,c=e;const n=JSON.stringify(t,O);return c=void 0,n}function O(e,t){if(t instanceof A)return t.serializeAsArg();if(t instanceof Uint8Array){c.getDotNetCallDispatcher().sendByteArray(D,t);const e={[o]:D};return D++,e}return t}}(e||(e={})),function(e){e[e.prependFrame=1]="prependFrame",e[e.removeFrame=2]="removeFrame",e[e.setAttribute=3]="setAttribute",e[e.removeAttribute=4]="removeAttribute",e[e.updateText=5]="updateText",e[e.stepIn=6]="stepIn",e[e.stepOut=7]="stepOut",e[e.updateMarkup=8]="updateMarkup",e[e.permutationListEntry=9]="permutationListEntry",e[e.permutationListEnd=10]="permutationListEnd"}(n||(n={})),function(e){e[e.element=1]="element",e[e.text=2]="text",e[e.attribute=3]="attribute",e[e.component=4]="component",e[e.region=5]="region",e[e.elementReferenceCapture=6]="elementReferenceCapture",e[e.markup=8]="markup",e[e.namedEvent=10]="namedEvent"}(r||(r={}));class o{constructor(e,t){this.componentId=e,this.fieldValue=t}static fromEvent(e,t){const n=t.target;if(n instanceof Element){const t=function(e){return e instanceof HTMLInputElement?e.type&&"checkbox"===e.type.toLowerCase()?{value:e.checked}:{value:e.value}:e instanceof HTMLSelectElement||e instanceof HTMLTextAreaElement?{value:e.value}:null}(n);if(t)return new o(e,t.value)}return null}}const i=new Map,s=new Map,a=[];function c(e){return i.get(e)}function l(e){const t=i.get(e);return t?.browserEventName||e}function u(e,t){e.forEach((e=>i.set(e,t)))}function d(e){const t=[];for(let n=0;ne.selected)).map((e=>e.value))}}{const e=function(e){return!!e&&"INPUT"===e.tagName&&"checkbox"===e.getAttribute("type")}(t);return{value:e?!!t.checked:t.value}}}}),u(["copy","cut","paste"],{createEventArgs:e=>({type:e.type})}),u(["drag","dragend","dragenter","dragleave","dragover","dragstart","drop"],{createEventArgs:e=>{return{...f(t=e),dataTransfer:t.dataTransfer?{dropEffect:t.dataTransfer.dropEffect,effectAllowed:t.dataTransfer.effectAllowed,files:Array.from(t.dataTransfer.files).map((e=>e.name)),items:Array.from(t.dataTransfer.items).map((e=>({kind:e.kind,type:e.type}))),types:t.dataTransfer.types}:null};var t}}),u(["focus","blur","focusin","focusout"],{createEventArgs:e=>({type:e.type})}),u(["keydown","keyup","keypress"],{createEventArgs:e=>{return{key:(t=e).key,code:t.code,location:t.location,repeat:t.repeat,ctrlKey:t.ctrlKey,shiftKey:t.shiftKey,altKey:t.altKey,metaKey:t.metaKey,type:t.type,isComposing:t.isComposing};var t}}),u(["contextmenu","click","mouseover","mouseout","mousemove","mousedown","mouseup","mouseleave","mouseenter","dblclick"],{createEventArgs:e=>f(e)}),u(["error"],{createEventArgs:e=>{return{message:(t=e).message,filename:t.filename,lineno:t.lineno,colno:t.colno,type:t.type};var t}}),u(["loadstart","timeout","abort","load","loadend","progress"],{createEventArgs:e=>{return{lengthComputable:(t=e).lengthComputable,loaded:t.loaded,total:t.total,type:t.type};var t}}),u(["touchcancel","touchend","touchmove","touchenter","touchleave","touchstart"],{createEventArgs:e=>{return{detail:(t=e).detail,touches:d(t.touches),targetTouches:d(t.targetTouches),changedTouches:d(t.changedTouches),ctrlKey:t.ctrlKey,shiftKey:t.shiftKey,altKey:t.altKey,metaKey:t.metaKey,type:t.type};var t}}),u(["gotpointercapture","lostpointercapture","pointercancel","pointerdown","pointerenter","pointerleave","pointermove","pointerout","pointerover","pointerup"],{createEventArgs:e=>{return{...f(t=e),pointerId:t.pointerId,width:t.width,height:t.height,pressure:t.pressure,tiltX:t.tiltX,tiltY:t.tiltY,pointerType:t.pointerType,isPrimary:t.isPrimary};var t}}),u(["wheel","mousewheel"],{createEventArgs:e=>{return{...f(t=e),deltaX:t.deltaX,deltaY:t.deltaY,deltaZ:t.deltaZ,deltaMode:t.deltaMode};var t}}),u(["cancel","close","toggle"],{createEventArgs:()=>({})});const m=["date","datetime-local","month","time","week"],h=new Map;let p,g,b=0;const v={async add(e,t,n){if(!n)throw new Error("initialParameters must be an object, even if empty.");const r="__bl-dynamic-root:"+(++b).toString();h.set(r,e);const o=await E().invokeMethodAsync("AddRootComponent",t,r),i=new w(o,g[t]);return await i.setParameters(n),i}};class y{invoke(e){return this._callback(e)}setCallback(t){this._selfJSObjectReference||(this._selfJSObjectReference=e.createJSObjectReference(this)),this._callback=t}getJSObjectReference(){return this._selfJSObjectReference}dispose(){this._selfJSObjectReference&&e.disposeJSObjectReference(this._selfJSObjectReference)}}class w{constructor(e,t){this._jsEventCallbackWrappers=new Map,this._componentId=e;for(const e of t)"eventcallback"===e.type&&this._jsEventCallbackWrappers.set(e.name.toLowerCase(),new y)}setParameters(e){const t={},n=Object.entries(e||{}),r=n.length;for(const[e,r]of n){const n=this._jsEventCallbackWrappers.get(e.toLowerCase());n&&r?(n.setCallback(r),t[e]=n.getJSObjectReference()):t[e]=r}return E().invokeMethodAsync("SetRootComponentParameters",this._componentId,r,t)}async dispose(){if(null!==this._componentId){await E().invokeMethodAsync("RemoveRootComponent",this._componentId),this._componentId=null;for(const e of this._jsEventCallbackWrappers.values())e.dispose()}}}function E(){if(!p)throw new Error("Dynamic root components have not been enabled in this application.");return p}const S=new Map,C=[],I=new Map;function A(e){return S.has(e)}function N(e,t,n){return k(e,t.eventHandlerId,(()=>R(e).invokeMethodAsync("DispatchEventAsync",t,n)))}function R(e){const t=S.get(e);if(!t)throw new Error(`No interop methods are registered for renderer ${e}`);return t}let k=(e,t,n)=>n();const D=x(["abort","blur","cancel","canplay","canplaythrough","change","close","cuechange","durationchange","emptied","ended","error","focus","load","loadeddata","loadedmetadata","loadend","loadstart","mouseenter","mouseleave","pointerenter","pointerleave","pause","play","playing","progress","ratechange","reset","scroll","seeked","seeking","stalled","submit","suspend","timeupdate","toggle","unload","volumechange","waiting","DOMNodeInsertedIntoDocument","DOMNodeRemovedFromDocument"]),_={submit:!0},O=x(["click","dblclick","mousedown","mousemove","mouseup"]);class T{static{this.nextEventDelegatorId=0}constructor(e){this.browserRendererId=e,this.afterClickCallbacks=[];const t=++T.nextEventDelegatorId;this.eventsCollectionKey=`_blazorEvents_${t}`,this.eventInfoStore=new L(this.onGlobalEvent.bind(this))}setListener(e,t,n,r){const o=this.getEventHandlerInfosForElement(e,!0),i=o.getHandler(t);if(i)this.eventInfoStore.update(i.eventHandlerId,n);else{const i={element:e,eventName:t,eventHandlerId:n,renderingComponentId:r};this.eventInfoStore.add(i),o.setHandler(t,i)}}getHandler(e){return this.eventInfoStore.get(e)}removeListener(e){const t=this.eventInfoStore.remove(e);if(t){const e=t.element,n=this.getEventHandlerInfosForElement(e,!1);n&&n.removeHandler(t.eventName)}}removeListenersForElement(e){const t=this.getEventHandlerInfosForElement(e,!1);if(t){for(const e of t.enumerateHandlers())this.eventInfoStore.remove(e.eventHandlerId);delete e[this.eventsCollectionKey]}}notifyAfterClick(e){this.afterClickCallbacks.push(e),this.eventInfoStore.addGlobalListener("click")}setStopPropagation(e,t,n){const r=this.getEventHandlerInfosForElement(e,!0),o=r.stopPropagation(t);r.stopPropagation(t,n),!o&&n?this.eventInfoStore.addGlobalListener(t):o&&!n&&this.eventInfoStore.decrementCountByEventName(t)}setPreventDefault(e,t,n){const r=this.getEventHandlerInfosForElement(e,!0),o=r.preventDefault(t);r.preventDefault(t,n),!o&&n?this.eventInfoStore.addActiveGlobalListener(t):o&&!n&&this.eventInfoStore.decrementCountByEventName(t)}onGlobalEvent(e){if(!(e.target instanceof Element))return;if(!A(this.browserRendererId))return;this.dispatchGlobalEventToAllElements(e.type,e);const t=(n=e.type,s.get(n));var n;t&&t.forEach((t=>this.dispatchGlobalEventToAllElements(t,e))),"click"===e.type&&this.afterClickCallbacks.forEach((t=>t(e)))}dispatchGlobalEventToAllElements(e,t){const n=t.composedPath();let r=n.shift(),i=null,s=!1;const a=Object.prototype.hasOwnProperty.call(D,e);let l=!1;for(;r;){const f=r,m=this.getEventHandlerInfosForElement(f,!1);if(m){const n=m.getHandler(e);if(n&&(u=f,d=t.type,!((u instanceof HTMLButtonElement||u instanceof HTMLInputElement||u instanceof HTMLTextAreaElement||u instanceof HTMLSelectElement)&&Object.prototype.hasOwnProperty.call(O,d)&&u.disabled))){if(!s){const n=c(e);i=n?.createEventArgs?n.createEventArgs(t):{},s=!0}Object.prototype.hasOwnProperty.call(_,t.type)&&t.preventDefault(),N(this.browserRendererId,{eventHandlerId:n.eventHandlerId,eventName:e,eventFieldInfo:o.fromEvent(n.renderingComponentId,t)},i)}m.stopPropagation(e)&&(l=!0),m.preventDefault(e)&&t.preventDefault()}r=a||l?void 0:n.shift()}var u,d}getEventHandlerInfosForElement(e,t){return Object.prototype.hasOwnProperty.call(e,this.eventsCollectionKey)?e[this.eventsCollectionKey]:t?e[this.eventsCollectionKey]=new F:null}}class L{constructor(e){this.globalListener=e,this.infosByEventHandlerId={},this.countByEventName={},a.push(this.handleEventNameAliasAdded.bind(this))}add(e){if(this.infosByEventHandlerId[e.eventHandlerId])throw new Error(`Event ${e.eventHandlerId} is already tracked`);this.infosByEventHandlerId[e.eventHandlerId]=e,this.addGlobalListener(e.eventName)}get(e){return this.infosByEventHandlerId[e]}addGlobalListener(e){if(e=l(e),Object.prototype.hasOwnProperty.call(this.countByEventName,e))this.countByEventName[e]++;else{this.countByEventName[e]=1;const t=Object.prototype.hasOwnProperty.call(D,e);document.addEventListener(e,this.globalListener,t)}}addActiveGlobalListener(e){e=l(e),Object.prototype.hasOwnProperty.call(this.countByEventName,e)?(this.countByEventName[e]++,document.removeEventListener(e,this.globalListener)):this.countByEventName[e]=1;const t=Object.prototype.hasOwnProperty.call(D,e);document.addEventListener(e,this.globalListener,{capture:t,passive:!1})}update(e,t){if(Object.prototype.hasOwnProperty.call(this.infosByEventHandlerId,t))throw new Error(`Event ${t} is already tracked`);const n=this.infosByEventHandlerId[e];delete this.infosByEventHandlerId[e],n.eventHandlerId=t,this.infosByEventHandlerId[t]=n}remove(e){const t=this.infosByEventHandlerId[e];if(t){delete this.infosByEventHandlerId[e];const n=l(t.eventName);this.decrementCountByEventName(n)}return t}decrementCountByEventName(e){0==--this.countByEventName[e]&&(delete this.countByEventName[e],document.removeEventListener(e,this.globalListener))}handleEventNameAliasAdded(e,t){if(Object.prototype.hasOwnProperty.call(this.countByEventName,e)){const n=this.countByEventName[e];delete this.countByEventName[e],document.removeEventListener(e,this.globalListener),this.addGlobalListener(t),this.countByEventName[t]+=n-1}}}class F{constructor(){this.handlers={},this.preventDefaultFlags=null,this.stopPropagationFlags=null}*enumerateHandlers(){for(const e in this.handlers)Object.prototype.hasOwnProperty.call(this.handlers,e)&&(yield this.handlers[e])}getHandler(e){return Object.prototype.hasOwnProperty.call(this.handlers,e)?this.handlers[e]:null}setHandler(e,t){this.handlers[e]=t}removeHandler(e){delete this.handlers[e]}preventDefault(e,t){return void 0!==t&&(this.preventDefaultFlags=this.preventDefaultFlags||{},this.preventDefaultFlags[e]=t),!!this.preventDefaultFlags&&this.preventDefaultFlags[e]}stopPropagation(e,t){return void 0!==t&&(this.stopPropagationFlags=this.stopPropagationFlags||{},this.stopPropagationFlags[e]=t),!!this.stopPropagationFlags&&this.stopPropagationFlags[e]}}function x(e){const t={};return e.forEach((e=>{t[e]=!0})),t}const M=Symbol(),P=Symbol(),B=Symbol();function H(e,t){if(M in e)return e;const n=[];if(e.childNodes.length>0){if(!t)throw new Error("New logical elements must start empty, or allowExistingContents must be true");e.childNodes.forEach((t=>{const r=H(t,!0);r[P]=e,n.push(r)}))}return e[M]=n,e}function j(e){const t=K(e);for(;t.length;)$(e,0)}function J(e,t){const n=document.createComment("!");return z(n,e,t),n}function z(e,t,n){const r=e;let o=e;if(e instanceof Comment){const t=K(r);if(t?.length>0){const t=Q(r),n=new Range;n.setStartBefore(e),n.setEndAfter(t),o=n.extractContents()}}const i=W(r);if(i){const e=K(i),t=Array.prototype.indexOf.call(e,r);e.splice(t,1),delete r[P]}const s=K(t);if(n0;)$(n,0)}const r=n;r.parentNode.removeChild(r)}function W(e){return e[P]||null}function U(e,t){return K(e)[t]}function V(e){const t=q(e);return"http://www.w3.org/2000/svg"===t.namespaceURI&&"foreignObject"!==t.tagName}function K(e){return e[M]}function G(e){const t=K(W(e));return t[Array.prototype.indexOf.call(t,e)+1]||null}function*X(e){const t=K(e);for(const e of t)yield*X(e);yield e}function Y(e,t){const n=K(e);t.forEach((e=>{e.moveRangeStart=n[e.fromSiblingIndex],e.moveRangeEnd=Q(e.moveRangeStart)})),t.forEach((t=>{const r=document.createComment("marker");t.moveToBeforeMarker=r;const o=n[t.toSiblingIndex+1];o?o.parentNode.insertBefore(r,o):Z(r,e)})),t.forEach((e=>{const t=e.moveToBeforeMarker,n=t.parentNode,r=e.moveRangeStart,o=e.moveRangeEnd;let i=r;for(;i;){const e=i.nextSibling;if(n.insertBefore(i,t),i===o)break;i=e}n.removeChild(t)})),t.forEach((e=>{n[e.toSiblingIndex]=e.moveRangeStart}))}function q(e){if(e instanceof Element||e instanceof DocumentFragment)return e;if(e instanceof Comment)return e.parentNode;throw new Error("Not a valid logical element")}function Z(e,t){if(t instanceof Element||t instanceof DocumentFragment)t.appendChild(e);else{if(!(t instanceof Comment))throw new Error(`Cannot append node because the parent is not a valid logical element. Parent: ${t}`);{const n=G(t);n?n.parentNode.insertBefore(e,n):Z(e,W(t))}}}function Q(e){if(e instanceof Element||e instanceof DocumentFragment)return e;const t=G(e);if(t)return t.previousSibling;{const t=W(e);return t instanceof Element||t instanceof DocumentFragment?t.lastChild:Q(t)}}function ee(e){return`_bl_${e}`}const te="__internalId";e.attachReviver(((e,t)=>t&&"object"==typeof t&&Object.prototype.hasOwnProperty.call(t,te)&&"string"==typeof t[te]?function(e){const t=`[${ee(e)}]`;return document.querySelector(t)}(t[te]):t));const ne="_blazorDeferredValue";function re(e){return"select-multiple"===e.type}function oe(e,t){e.value=t||""}function ie(e,t){e instanceof HTMLSelectElement?re(e)?function(e,t){t||=[];for(let n=0;n{Ie()&&function(e){if(0!==e.button||function(e){return e.ctrlKey||e.shiftKey||e.altKey||e.metaKey}(e))return;if(e.defaultPrevented)return;const t=function(e){const t=e.composedPath&&e.composedPath();if(t)for(let e=0;e{const t=document.createElement("script");t.textContent=e.textContent,e.getAttributeNames().forEach((n=>{t.setAttribute(n,e.getAttribute(n))})),e.parentNode.replaceChild(t,e)})),ae.content));var s;let a=0;for(;i.firstChild;)z(i.firstChild,o,a++)}applyAttribute(e,t,n,r){const o=e.frameReader,i=o.attributeName(r),s=o.attributeEventHandlerId(r);if(s){const e=pe(i);return void this.eventDelegator.setListener(n,e,s,t)}const a=o.attributeValue(r);this.setOrRemoveAttributeOrProperty(n,i,a)}insertFrameRange(e,t,n,r,o,i,s){const a=r;for(let a=i;adocument.baseURI,getLocationHref:()=>location.href,scrollToElement:Se};function Le(e,t,n=!1){const r=Ce(e);!t.forceLoad&&Ee(r)?Fe(r,!1,t.replaceHistoryEntry,t.historyEntryState,n):function(e,t){if(location.href===e){const t=e+"?";history.replaceState(null,"",t),location.replace(e)}else t?location.replace(e):location.href=e}(e,t.replaceHistoryEntry)}async function Fe(e,t,n,r=void 0,o=!1){if(Pe(),function(e,t){const n=new URL(e),r=new URL(t);return n.origin===r.origin&&n.pathname===r.pathname&&n.search===r.search&&""!==r.hash}(location.href,e))return xe(e,n,r),void function(e){const t=e.indexOf("#");t!==e.length-1&&Se(e.substring(t+1))}(e);const i=Je();(o||!i?.hasLocationChangingEventListeners||await Be(e,r,t,i))&&(function(e,t){const n=new URL(e),r=new URL(t);return n.protocol===r.protocol&&n.host===r.host&&n.port===r.port&&n.pathname===r.pathname}(e,location.href)||(ye=!0),xe(e,n,r),await He(t))}function xe(e,t,n=void 0){t?history.replaceState({userState:n,_index:Re},"",e):(Re++,history.pushState({userState:n,_index:Re},"",e))}function Me(e){return new Promise((t=>{const n=_e;_e=()=>{_e=n,t()},history.go(e)}))}function Pe(){Oe&&(Oe(!1),Oe=null)}function Be(e,t,n,r){return new Promise((o=>{Pe(),ke++,Oe=o,r.locationChanging(ke,e,t,n)}))}async function He(e,t){const n=location.href;await Promise.all(Array.from(De,(async([t,r])=>{A(t)&&await r.locationChanged(n,history.state?.userState,e)})))}async function je(e){_e&&(Ie(),1)&&await _e(e),Re=history.state?._index??0}function Je(){const e=Ae();if(void 0!==e)return De.get(e)}const ze={focus:function(e,t){if(e instanceof HTMLElement)e.focus({preventScroll:t});else{if(!(e instanceof SVGElement))throw new Error("Unable to focus an invalid element.");if(!e.hasAttribute("tabindex"))throw new Error("Unable to focus an SVG element that does not have a tabindex.");e.focus({preventScroll:t})}},focusBySelector:function(e){const t=document.querySelector(e);t&&(t.hasAttribute("tabindex")||(t.tabIndex=-1),t.focus({preventScroll:!0}))}},$e={init:function(e,t,n,r=50){const o=Ue(t);(o||document.documentElement).style.overflowAnchor="none";const i=document.createRange();f(n.parentElement)&&(t.style.display="table-row",n.style.display="table-row");const s=new IntersectionObserver((function(r){r.forEach((r=>{if(!r.isIntersecting)return;i.setStartAfter(t),i.setEndBefore(n);const o=i.getBoundingClientRect().height,s=r.rootBounds?.height;r.target===t?e.invokeMethodAsync("OnSpacerBeforeVisible",r.intersectionRect.top-r.boundingClientRect.top,o,s):r.target===n&&n.offsetHeight>0&&e.invokeMethodAsync("OnSpacerAfterVisible",r.boundingClientRect.bottom-r.intersectionRect.bottom,o,s)}))}),{root:o,rootMargin:`${r}px`});s.observe(t),s.observe(n);const a=d(t),c=d(n),{observersByDotNetObjectId:l,id:u}=Ve(e);function d(e){const t={attributes:!0},n=new MutationObserver(((n,r)=>{f(e.parentElement)&&(r.disconnect(),e.style.display="table-row",r.observe(e,t)),s.unobserve(e),s.observe(e)}));return n.observe(e,t),n}function f(e){return null!==e&&(e instanceof HTMLTableElement&&""===e.style.display||"table"===e.style.display||e instanceof HTMLTableSectionElement&&""===e.style.display||"table-row-group"===e.style.display)}l[u]={intersectionObserver:s,mutationObserverBefore:a,mutationObserverAfter:c}},dispose:function(e){const{observersByDotNetObjectId:t,id:n}=Ve(e),r=t[n];r&&(r.intersectionObserver.disconnect(),r.mutationObserverBefore.disconnect(),r.mutationObserverAfter.disconnect(),e.dispose(),delete t[n])}},We=Symbol();function Ue(e){return e&&e!==document.body&&e!==document.documentElement?"visible"!==getComputedStyle(e).overflowY?e:Ue(e.parentElement):null}function Ve(e){const t=e._callDispatcher,n=e._id;return t[We]??={},{observersByDotNetObjectId:t[We],id:n}}const Ke={getAndRemoveExistingTitle:function(){const e=document.head?document.head.getElementsByTagName("title"):[];if(0===e.length)return null;let t=null;for(let n=e.length-1;n>=0;n--){const r=e[n],o=r.previousSibling;o instanceof Comment&&null!==W(o)||(null===t&&(t=r.textContent),r.parentNode?.removeChild(r))}return t}},Ge={init:function(e,t){t._blazorInputFileNextFileId=0,t.addEventListener("click",(function(){t.value=""})),t.addEventListener("change",(function(){t._blazorFilesById={};const n=Array.prototype.map.call(t.files,(function(e){const n={id:++t._blazorInputFileNextFileId,lastModified:new Date(e.lastModified).toISOString(),name:e.name,size:e.size,contentType:e.type,readPromise:void 0,arrayBuffer:void 0,blob:e};return t._blazorFilesById[n.id]=n,n}));e.invokeMethodAsync("NotifyChange",n)}))},toImageFile:async function(e,t,n,r,o){const i=Xe(e,t),s=await new Promise((function(e){const t=new Image;t.onload=function(){URL.revokeObjectURL(t.src),e(t)},t.onerror=function(){t.onerror=null,URL.revokeObjectURL(t.src)},t.src=URL.createObjectURL(i.blob)})),a=await new Promise((function(e){const t=Math.min(1,r/s.width),i=Math.min(1,o/s.height),a=Math.min(t,i),c=document.createElement("canvas");c.width=Math.round(s.width*a),c.height=Math.round(s.height*a),c.getContext("2d")?.drawImage(s,0,0,c.width,c.height),c.toBlob(e,n)})),c={id:++e._blazorInputFileNextFileId,lastModified:i.lastModified,name:i.name,size:a?.size||0,contentType:n,blob:a||i.blob};return e._blazorFilesById[c.id]=c,c},readFileData:async function(e,t){return Xe(e,t).blob}};function Xe(e,t){const n=e._blazorFilesById[t];if(!n)throw new Error(`There is no file with ID ${t}. The file list may have changed. See https://aka.ms/aspnet/blazor-input-file-multiple-selections.`);return n}const Ye=new Set,qe={enableNavigationPrompt:function(e){0===Ye.size&&window.addEventListener("beforeunload",Ze),Ye.add(e)},disableNavigationPrompt:function(e){Ye.delete(e),0===Ye.size&&window.removeEventListener("beforeunload",Ze)}};function Ze(e){e.preventDefault(),e.returnValue=!0}const Qe=new Map,et={navigateTo:function(e,t,n=!1){Le(e,t instanceof Object?t:{forceLoad:t,replaceHistoryEntry:n})},registerCustomEventType:function(e,t){if(!t)throw new Error("The options parameter is required.");if(i.has(e))throw new Error(`The event '${e}' is already registered.`);if(t.browserEventName){const n=s.get(t.browserEventName);n?n.push(e):s.set(t.browserEventName,[e]),a.forEach((n=>n(e,t.browserEventName)))}i.set(e,t)},rootComponents:v,runtime:{},_internal:{navigationManager:Te,domWrapper:ze,Virtualize:$e,PageTitle:Ke,InputFile:Ge,NavigationLock:qe,getJSDataStreamChunk:async function(e,t,n){return e instanceof Blob?await async function(e,t,n){const r=e.slice(t,t+n),o=await r.arrayBuffer();return new Uint8Array(o)}(e,t,n):function(e,t,n){return new Uint8Array(e.buffer,e.byteOffset+t,n)}(e,t,n)},attachWebRendererInterop:function(t,n,r,o){if(S.has(t))throw new Error(`Interop methods are already registered for renderer ${t}`);S.set(t,n),r&&o&&Object.keys(r).length>0&&function(t,n,r){if(p)throw new Error("Dynamic root components have already been enabled.");p=t,g=n;for(const[t,o]of Object.entries(r)){const r=e.findJSFunction(t,0);for(const e of o)r(e,n[e])}}(R(t),r,o),I.get(t)?.[0]?.(),function(e){for(const t of C)t(e)}(t)}}};window.Blazor=et;const tt=navigator,nt=tt.userAgentData&&tt.userAgentData.brands,rt=nt&&nt.length>0?nt.some((e=>"Google Chrome"===e.brand||"Microsoft Edge"===e.brand||"Chromium"===e.brand)):window.chrome,ot=tt.userAgentData?.platform??navigator.platform;function it(e){return 0!==e.debugLevel&&(rt||navigator.userAgent.includes("Firefox"))}let st=!1;function at(){const e=document.querySelector("#blazor-error-ui");e&&(e.style.display="block"),st||(st=!0,document.querySelectorAll("#blazor-error-ui .reload").forEach((e=>{e.onclick=function(e){location.reload(),e.preventDefault()}})),document.querySelectorAll("#blazor-error-ui .dismiss").forEach((e=>{e.onclick=function(e){const t=document.querySelector("#blazor-error-ui");t&&(t.style.display="none"),e.preventDefault()}})))}var ct,lt;!function(e){e[e.Default=0]="Default",e[e.Server=1]="Server",e[e.WebAssembly=2]="WebAssembly",e[e.WebView=3]="WebView"}(ct||(ct={})),function(e){e[e.Trace=0]="Trace",e[e.Debug=1]="Debug",e[e.Information=2]="Information",e[e.Warning=3]="Warning",e[e.Error=4]="Error",e[e.Critical=5]="Critical",e[e.None=6]="None"}(lt||(lt={}));class ut{constructor(e=!0,t,n,r=0){this.singleRuntime=e,this.logger=t,this.webRendererId=r,this.afterStartedCallbacks=[],n&&this.afterStartedCallbacks.push(...n)}async importInitializersAsync(e,t){await Promise.all(e.map((e=>async function(e,n){let r;var o;n.moduleExports||(o=n.name,r=new URL(o,document.baseURI).toString(),n.moduleExports=await import(r));const i=n.moduleExports;if(void 0!==i){if(e.singleRuntime){const{beforeStart:n,afterStarted:r,beforeWebAssemblyStart:o,afterWebAssemblyStarted:a,beforeServerStart:c,afterServerStarted:l}=i;let u=n;e.webRendererId===ct.Server&&c&&(u=c),e.webRendererId===ct.WebAssembly&&o&&(u=o);let d=r;return e.webRendererId===ct.Server&&l&&(d=l),e.webRendererId===ct.WebAssembly&&a&&(d=a),s(e,u,d,t)}return function(e,t,n){const o=n[0],{beforeStart:i,afterStarted:a,beforeWebStart:c,afterWebStarted:l,beforeWebAssemblyStart:u,afterWebAssemblyStarted:d,beforeServerStart:f,afterServerStarted:m}=t,h=!(c||l||u||d||f||m||!i&&!a),p=h&&o.enableClassicInitializers;if(h&&!o.enableClassicInitializers)e.logger?.log(lt.Warning,`Initializer '${r}' will be ignored because multiple runtimes are available. Use 'before(Web|WebAssembly|Server)Start' and 'after(Web|WebAssembly|Server)Started' instead.`);else if(p)return s(e,i,a,n);if(function(e){e.webAssembly?e.webAssembly.initializers||(e.webAssembly.initializers={beforeStart:[],afterStarted:[]}):e.webAssembly={initializers:{beforeStart:[],afterStarted:[]}},e.circuit?e.circuit.initializers||(e.circuit.initializers={beforeStart:[],afterStarted:[]}):e.circuit={initializers:{beforeStart:[],afterStarted:[]}}}(o),u&&o.webAssembly.initializers.beforeStart.push(u),d&&o.webAssembly.initializers.afterStarted.push(d),f&&o.circuit.initializers.beforeStart.push(f),m&&o.circuit.initializers.afterStarted.push(m),l&&e.afterStartedCallbacks.push(l),c)return c(o)}(e,i,t)}function s(e,t,n,r){if(n&&e.afterStartedCallbacks.push(n),t)return t(...r)}}(this,e))))}async invokeAfterStartedCallbacks(e){const t=(n=this.webRendererId,I.get(n)?.[1]);var n;t&&await t,await Promise.all(this.afterStartedCallbacks.map((t=>t(e))))}}let dt,ft,mt,ht,pt=null;const gt={load:function(e,t){return async function(e,t){const{dotnet:n}=await async function(e){if("undefined"==typeof WebAssembly||!WebAssembly.validate)throw new Error("This browser does not support WebAssembly.");if(e.loadBootResource){const t="dotnetjs",n=e.loadBootResource(t,"dotnet.js","_framework/dotnet.js","","js-module-dotnet");if("string"==typeof n){const e=new URL(n,document.baseURI).toString();return await import(e)}if(n)throw new Error(`For a ${t} resource, custom loaders must supply a URI string.`)}return await import("./dotnet.js")}(e),r=function(e,t){const n={maxParallelDownloads:1e6,enableDownloadRetry:!1};e.environment&&(n.applicationEnvironment=e.environment);const r={...window.Module||{},onConfigLoaded:async n=>{n.environmentVariables||(n.environmentVariables={}),"sharded"===n.globalizationMode&&(n.environmentVariables.__BLAZOR_SHARDED_ICU="1"),et._internal.getApplicationEnvironment=()=>n.applicationEnvironment,t?.(n),ht=await async function(e,t){if(e.initializers)return await Promise.all(e.initializers.beforeStart.map((t=>t(e)))),new ut(!1,void 0,e.initializers.afterStarted,ct.WebAssembly);{const n=[e,t.resources?.extensions??{}],r=new ut(!0,void 0,void 0,ct.WebAssembly),o=t?.resources?.libraryInitializers;let i;return i=o?"length"in o?o:Object.keys(o).map((e=>({name:e}))):[],await r.importInitializersAsync(i,n),r}}(e,n)},onDownloadResourceProgress:bt,config:n,out:yt,err:wt};return r}(e,t);e.applicationCulture&&n.withApplicationCulture(e.applicationCulture),e.environment&&n.withApplicationEnvironment(e.environment),e.loadBootResource&&n.withResourceLoader(e.loadBootResource),n.withModuleConfig(r),e.configureRuntime&&e.configureRuntime(n),mt=await n.create()}(e,t)},start:function(){return async function(){if(!mt)throw new Error("The runtime must be loaded it gets configured.");const{setModuleImports:t,INTERNAL:n,getConfig:r,invokeLibraryInitializers:o}=mt;ft=n,function(e){const t=ot.match(/^Mac/i)?"Cmd":"Alt";it(e)&&console.info(`Debugging hotkey: Shift+${t}+D (when application has focus)`),document.addEventListener("keydown",(t=>{t.shiftKey&&(t.metaKey||t.altKey)&&"KeyD"===t.code&&(it(e)?navigator.userAgent.includes("Firefox")?async function(){const e=await fetch(`_framework/debug?url=${encodeURIComponent(location.href)}&isFirefox=true`);200!==e.status&&console.warn(await e.text())}():rt?function(){const e=document.createElement("a");e.href=`_framework/debug?url=${encodeURIComponent(location.href)}`,e.target="_blank",e.rel="noopener noreferrer",e.click()}():console.error("Currently, only Microsoft Edge (80+), Google Chrome, or Chromium, are supported for debugging."):console.error("Cannot start debugging, because the application was not compiled with debugging enabled."))}))}(r()),et.runtime=mt,et._internal.dotNetCriticalError=wt,t("blazor-internal",{Blazor:{_internal:et._internal}});const i=await mt.getAssemblyExports("Microsoft.AspNetCore.Components.WebAssembly");return Object.assign(et._internal,{dotNetExports:{...i.Microsoft.AspNetCore.Components.WebAssembly.Services.DefaultWebAssemblyJSRuntime}}),dt=e.attachDispatcher({beginInvokeDotNetFromJS:(e,t,n,r,o)=>{if(Et(),!r&&!t)throw new Error("Either assemblyName or dotNetObjectId must have a non null value.");const i=r?r.toString():t;et._internal.dotNetExports.BeginInvokeDotNet(e?e.toString():null,i,n,o)},endInvokeJSFromDotNet:(e,t,n)=>{et._internal.dotNetExports.EndInvokeJS(n)},sendByteArray:(e,t)=>{et._internal.dotNetExports.ReceiveByteArrayFromJS(e,t)},invokeDotNetFromJS:(e,t,n,r)=>(Et(),et._internal.dotNetExports.InvokeDotNet(e||null,t,n??0,r))}),{invokeLibraryInitializers:o}}()},callEntryPoint:async function(){try{await mt.runMain(mt.getConfig().mainAssemblyName,[])}catch(e){console.error(e),at()}},getArrayEntryPtr:function(e,t,n){const r=function(e){return e+12}(e)+4+t*n;return r},getObjectFieldsBaseAddress:function(e){return e+8},readInt16Field:function(e,t){return mt.getHeapI16(e+(t||0))},readInt32Field:function(e,t){return mt.getHeapI32(e+(t||0))},readUint64Field:function(e,t){return mt.getHeapU52(e+(t||0))},readObjectField:function(e,t){return mt.getHeapU32(e+(t||0))},readStringField:function(e,t,n){const r=mt.getHeapU32(e+(t||0));if(0===r)return null;if(n){const e=ft.monoObjectAsBoolOrNullUnsafe(r);if("boolean"==typeof e)return e?"":null}return ft.monoStringToStringUnsafe(r)},readStructField:function(e,t){return e+(t||0)},beginHeapLock:function(){return Et(),pt=St.create(),pt},invokeWhenHeapUnlocked:function(e){pt?pt.enqueuePostReleaseAction(e):e()}};function bt(e,t){const n=e/t*100;document.documentElement.style.setProperty("--blazor-load-percentage",`${n}%`),document.documentElement.style.setProperty("--blazor-load-percentage-text",`"${Math.floor(n)}%"`)}const vt=["DEBUGGING ENABLED"],yt=e=>vt.indexOf(e)<0&&console.log(e),wt=e=>{console.error(e||"(null)"),at()};function Et(){if(pt)throw new Error("Assertion failed - heap is currently locked")}class St{enqueuePostReleaseAction(e){this.postReleaseActions||(this.postReleaseActions=[]),this.postReleaseActions.push(e)}release(){if(pt!==this)throw new Error("Trying to release a lock which isn't current");for(ft.mono_wasm_gc_unlock(),pt=null;this.postReleaseActions?.length;)this.postReleaseActions.shift()(),Et()}static create(){return ft.mono_wasm_gc_lock(),new St}}class Ct{constructor(e){this.batchAddress=e,this.arrayRangeReader=It,this.arrayBuilderSegmentReader=At,this.diffReader=Nt,this.editReader=Rt,this.frameReader=kt}updatedComponents(){return t.readStructField(this.batchAddress,0)}referenceFrames(){return t.readStructField(this.batchAddress,It.structLength)}disposedComponentIds(){return t.readStructField(this.batchAddress,2*It.structLength)}disposedEventHandlerIds(){return t.readStructField(this.batchAddress,3*It.structLength)}updatedComponentsEntry(e,t){return Dt(e,t,Nt.structLength)}referenceFramesEntry(e,t){return Dt(e,t,kt.structLength)}disposedComponentIdsEntry(e,n){const r=Dt(e,n,4);return t.readInt32Field(r)}disposedEventHandlerIdsEntry(e,n){const r=Dt(e,n,8);return t.readUint64Field(r)}}const It={structLength:8,values:e=>t.readObjectField(e,0),count:e=>t.readInt32Field(e,4)},At={structLength:12,values:e=>{const n=t.readObjectField(e,0),r=t.getObjectFieldsBaseAddress(n);return t.readObjectField(r,0)},offset:e=>t.readInt32Field(e,4),count:e=>t.readInt32Field(e,8)},Nt={structLength:4+At.structLength,componentId:e=>t.readInt32Field(e,0),edits:e=>t.readStructField(e,4),editsEntry:(e,t)=>Dt(e,t,Rt.structLength)},Rt={structLength:20,editType:e=>t.readInt32Field(e,0),siblingIndex:e=>t.readInt32Field(e,4),newTreeIndex:e=>t.readInt32Field(e,8),moveToSiblingIndex:e=>t.readInt32Field(e,8),removedAttributeName:e=>t.readStringField(e,16)},kt={structLength:36,frameType:e=>t.readInt16Field(e,4),subtreeLength:e=>t.readInt32Field(e,8),elementReferenceCaptureId:e=>t.readStringField(e,16),componentId:e=>t.readInt32Field(e,12),elementName:e=>t.readStringField(e,16),textContent:e=>t.readStringField(e,16),markupContent:e=>t.readStringField(e,16),attributeName:e=>t.readStringField(e,16),attributeValue:e=>t.readStringField(e,24,!0),attributeEventHandlerId:e=>t.readUint64Field(e,8)};function Dt(e,n,r){return t.getArrayEntryPtr(e,n,r)}const _t=/^\s*Blazor-WebAssembly-Component-State:(?[a-zA-Z0-9+/=]+)$/,Ot=/^\s*Blazor-WebAssembly:[^{]*(?.*)$/;function Tt(e,t,n="state"){if(e.nodeType===Node.COMMENT_NODE){const r=e.textContent||"",o=t.exec(r),i=o&&o.groups&&o.groups[n];return i&&e.parentNode?.removeChild(e),i}if(!e.hasChildNodes())return;const r=e.childNodes;for(let e=0;e.*)$/);function xt(e,t){const n=e.currentElement;var r,o,i;if(n&&n.nodeType===Node.COMMENT_NODE&&n.textContent){const s=Ft.exec(n.textContent),a=s&&s.groups&&s.groups.descriptor;if(!a)return;!function(e){if(e.parentNode instanceof Document)throw new Error("Root components cannot be marked as interactive. The element must be rendered statically so that scripts are not evaluated multiple times.")}(n);try{const s=function(e){const t=JSON.parse(e),{type:n}=t;if("server"!==n&&"webassembly"!==n&&"auto"!==n)throw new Error(`Invalid component type '${n}'.`);return t}(a),c=function(e,t,n){const{prerenderId:r}=e;if(r){for(;n.next()&&n.currentElement;){const e=n.currentElement;if(e.nodeType!==Node.COMMENT_NODE)continue;if(!e.textContent)continue;const t=Ft.exec(e.textContent),o=t&&t[1];if(o)return $t(o,r),e}throw new Error(`Could not find an end component comment for '${t}'.`)}}(s,n,e);if(t!==s.type)return;switch(s.type){case"webassembly":return o=n,i=c,zt(r=s),{...r,uniqueId:jt++,start:o,end:i};case"server":return function(e,t,n){return Jt(e),{...e,uniqueId:jt++,start:t,end:n}}(s,n,c);case"auto":return function(e,t,n){return Jt(e),zt(e),{...e,uniqueId:jt++,start:t,end:n}}(s,n,c)}}catch(e){throw new Error(`Found malformed component comment at ${n.textContent}`)}}}let Mt,Pt,Bt,Ht,jt=0;function Jt(e){const{descriptor:t,sequence:n}=e;if(!t)throw new Error("descriptor must be defined when using a descriptor.");if(void 0===n)throw new Error("sequence must be defined when using a descriptor.");if(!Number.isInteger(n))throw new Error(`Error parsing the sequence '${n}' for component '${JSON.stringify(e)}'`)}function zt(e){const{assembly:t,typeName:n}=e;if(!t)throw new Error("assembly must be defined when using a descriptor.");if(!n)throw new Error("typeName must be defined when using a descriptor.");e.parameterDefinitions=e.parameterDefinitions&&atob(e.parameterDefinitions),e.parameterValues=e.parameterValues&&atob(e.parameterValues)}function $t(e,t){const n=JSON.parse(e);if(1!==Object.keys(n).length)throw new Error(`Invalid end of component comment: '${e}'`);const r=n.prerenderId;if(!r)throw new Error(`End of component comment must have a value for the prerendered property: '${e}'`);if(r!==t)throw new Error(`End of component comment prerendered property must match the start comment prerender id: '${t}', '${r}'`)}class Wt{constructor(e){this.childNodes=e,this.currentIndex=-1,this.length=e.length}next(){return this.currentIndex++,this.currentIndex{Ht=e}));const Vt=new Promise((e=>{}));let Kt;const Gt=new Promise((e=>{Kt=e}));function Xt(e){if(Mt)throw new Error("WebAssembly options have already been configured.");!async function(e){const t=await e;Mt=t,Kt()}(e)}function Yt(e,t){if(void 0!==Bt)throw new Error("Blazor WebAssembly has already started.");return Bt=new Promise(qt.bind(null,e,t)),Bt}async function qt(e,n,r,o){(function(){if(window.parent!==window&&!window.opener&&window.frameElement){const e=window.sessionStorage&&window.sessionStorage["Microsoft.AspNetCore.Components.WebAssembly.Authentication.CachedAuthSettings"],t=e&&JSON.parse(e);return t&&t.redirect_uri&&location.href.startsWith(t.redirect_uri)}return!1})()&&await new Promise((()=>{}));const i=Zt(n);!function(){const e=k;k=(t,n,r)=>{((e,t,n)=>{const r=function(e){return ge[e]}(e);r?.eventDelegator.getHandler(t)&>.invokeWhenHeapUnlocked(n)})(t,n,(()=>e(t,n,r)))}}(),et._internal.invokeJSJson=Qt,et._internal.endInvokeDotNetFromJS=en,et._internal.receiveWebAssemblyDotNetDataStream=tn,et._internal.receiveByteArray=nn;const s=(t=gt,t);et.platform=s,et._internal.renderBatch=(e,t)=>{const n=gt.beginHeapLock();try{!function(e,t){const n=ge[e];if(!n)throw new Error(`There is no browser renderer with ID ${e}.`);const r=t.arrayRangeReader,o=t.updatedComponents(),i=r.values(o),s=r.count(o),a=t.referenceFrames(),c=r.values(a),l=t.diffReader;for(let e=0;e{await dt.invokeDotNetStaticMethodAsync("Microsoft.AspNetCore.Components.WebAssembly","NotifyLocationChanged",e,t,n)}),(async(e,t,n,r)=>{const o=await dt.invokeDotNetStaticMethodAsync("Microsoft.AspNetCore.Components.WebAssembly","NotifyLocationChangingAsync",t,n,r);et._internal.navigationManager.endLocationChanging(e,o)}));const a=new Ut(e);et._internal.registeredComponents={getRegisteredComponentsCount:()=>a.getCount(),getAssembly:e=>a.getAssembly(e),getTypeName:e=>a.getTypeName(e),getParameterDefinitions:e=>a.getParameterDefinitions(e)||"",getParameterValues:e=>a.getParameterValues(e)||""},et._internal.getPersistedState=()=>Tt(document,_t)||"",et._internal.getInitialComponentsUpdate=()=>Vt,et._internal.updateRootComponents=(e,t)=>{et._internal.dotNetExports?.UpdateRootComponentsCore(e,t)},et._internal.endUpdateRootComponents=t=>e.onAfterUpdateRootComponents?.(t),et._internal.attachRootComponentToElement=(e,t,n)=>{const r=a.resolveRegisteredElement(e);r?we(n,r,t,!1):function(e,t,n){const r="::before";let o=!1;if(e.endsWith("::after"))e=e.slice(0,-7),o=!0;else if(e.endsWith(r))throw new Error(`The '${r}' selector is not supported.`);const i=function(e){const t=h.get(e);if(t)return h.delete(e),t}(e)||document.querySelector(e);if(!i)throw new Error(`Could not find any element matching selector '${e}'.`);we(n,H(i,!0),t,o)}(e,t,n)};try{await i,await s.start()}catch(e){throw new Error(`Failed to start platform. Reason: ${e}`)}s.callEntryPoint(),ht.invokeAfterStartedCallbacks(et),r()}function Zt(e){return Pt??=(async()=>{await Gt;const t=Mt??{};t.environment||(t.environment=e?.environmentName??void 0);const n=Mt?.configureRuntime;t.configureRuntime=t=>{n?.(t),e?.environmentVariables&&t.withEnvironmentVariables(e.environmentVariables)},await gt.load(t,Ht)})(),Pt}function Qt(e,t,n,r,o,i){return 0!==o?(dt.beginInvokeJSFromDotNet(o,e,r,n,t,i),null):dt.invokeJSFromDotNet(e,r,n,t,i)}function en(e,t,n){dt.endInvokeDotNetFromJS(e,t,n)}function tn(e,t,n,r){!function(e,t,n,r,o){let i=Qe.get(t);if(!i){const n=new ReadableStream({start(e){Qe.set(t,e),i=e}});e.supplyDotNetStream(t,n)}o?(i.error(o),Qe.delete(t)):0===r?(i.close(),Qe.delete(t)):i.enqueue(n.length===r?n:n.subarray(0,r))}(dt,e,t,n,r)}function nn(e,t){dt.receiveByteArray(e,t)}class rn{constructor(e){this.initialComponents=e}resolveRootComponent(e){return this.initialComponents[e]}}class on{constructor(){this._eventListeners=new Map}static create(e){const t=new on;return e.addEventListener=t.addEventListener.bind(t),e.removeEventListener=t.removeEventListener.bind(t),t}addEventListener(e,t){let n=this._eventListeners.get(e);n||(n=new Set,this._eventListeners.set(e,n)),n.add(t)}removeEventListener(e,t){this._eventListeners.get(e)?.delete(t)}dispatchEvent(e,t){const n=this._eventListeners.get(e);if(!n)return;const r={...t,type:e};for(const e of n)e(r)}}let sn=!1;async function an(e){if(sn)throw new Error("Blazor has already started.");sn=!0,Xt(Promise.resolve(e||{})),on.create(et);const t=Lt(document,"webassembly"),n=function(){const e=Tt(document,Ot,"options");if(e)return JSON.parse(e)}(),r=new rn(t);await Yt(r,n)}et.start=an,window.DotNet=e,document&&document.currentScript&&"false"!==document.currentScript.getAttribute("autostart")&&an().catch(wt)}();