diff --git a/404.html b/404.html index ebd01c1..1706a81 100644 --- a/404.html +++ b/404.html @@ -2,12 +2,15 @@ - App + Blur + + - + + diff --git a/icons/icon-128x128.png b/icons/icon-128x128.png new file mode 100644 index 0000000..5a9a2cc Binary files /dev/null and b/icons/icon-128x128.png differ diff --git a/icons/icon-144x144.png b/icons/icon-144x144.png new file mode 100644 index 0000000..11702cd Binary files /dev/null and b/icons/icon-144x144.png differ diff --git a/icons/icon-152x152.png b/icons/icon-152x152.png new file mode 100644 index 0000000..ff4e06b Binary files /dev/null and b/icons/icon-152x152.png differ diff --git a/icons/icon-192x192.png b/icons/icon-192x192.png new file mode 100644 index 0000000..afd36a4 Binary files /dev/null and b/icons/icon-192x192.png differ diff --git a/icons/icon-384x384.png b/icons/icon-384x384.png new file mode 100644 index 0000000..613ac79 Binary files /dev/null and b/icons/icon-384x384.png differ diff --git a/icons/icon-512x512.png b/icons/icon-512x512.png new file mode 100644 index 0000000..7574990 Binary files /dev/null and b/icons/icon-512x512.png differ diff --git a/icons/icon-72x72.png b/icons/icon-72x72.png new file mode 100644 index 0000000..033724e Binary files /dev/null and b/icons/icon-72x72.png differ diff --git a/icons/icon-96x96.png b/icons/icon-96x96.png new file mode 100644 index 0000000..3090dc2 Binary files /dev/null and b/icons/icon-96x96.png differ diff --git a/index.html b/index.html index ebd01c1..1706a81 100644 --- a/index.html +++ b/index.html @@ -2,12 +2,15 @@ - App + Blur + + - + + diff --git a/main-DDJN35X3.js b/main-DDJN35X3.js deleted file mode 100644 index 4b443c5..0000000 --- a/main-DDJN35X3.js +++ /dev/null @@ -1,7 +0,0 @@ -var Ld=Object.defineProperty,jd=Object.defineProperties;var Vd=Object.getOwnPropertyDescriptors;var da=Object.getOwnPropertySymbols;var $d=Object.prototype.hasOwnProperty,Bd=Object.prototype.propertyIsEnumerable;var fa=(e,t,n)=>t in e?Ld(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,g=(e,t)=>{for(var n in t||={})$d.call(t,n)&&fa(e,n,t[n]);if(da)for(var n of da(t))Bd.call(t,n)&&fa(e,n,t[n]);return e},k=(e,t)=>jd(e,Vd(t));var So=null;var bo=1,ha=Symbol("SIGNAL");function P(e){let t=So;return So=e,t}function pa(){return So}var Mo={version:0,lastCleanEpoch:0,dirty:!1,producerNode:void 0,producerLastReadVersion:void 0,producerIndexOfThis:void 0,nextProducerIndex:0,liveConsumerNode:void 0,liveConsumerIndexOfThis:void 0,consumerAllowSignalWrites:!1,consumerIsAlwaysLive:!1,producerMustRecompute:()=>!1,producerRecomputeValue:()=>{},consumerMarkedDirty:()=>{},consumerOnSignalRead:()=>{}};function Ud(e){if(!(Ao(e)&&!e.dirty)&&!(!e.dirty&&e.lastCleanEpoch===bo)){if(!e.producerMustRecompute(e)&&!To(e)){e.dirty=!1,e.lastCleanEpoch=bo;return}e.producerRecomputeValue(e),e.dirty=!1,e.lastCleanEpoch=bo}}function _o(e){return e&&(e.nextProducerIndex=0),P(e)}function ga(e,t){if(P(t),!(!e||e.producerNode===void 0||e.producerIndexOfThis===void 0||e.producerLastReadVersion===void 0)){if(Ao(e))for(let n=e.nextProducerIndex;ne.nextProducerIndex;)e.producerNode.pop(),e.producerLastReadVersion.pop(),e.producerIndexOfThis.pop()}}function To(e){Ro(e);for(let t=0;t0}function Ro(e){e.producerNode??=[],e.producerIndexOfThis??=[],e.producerLastReadVersion??=[]}function Hd(e){e.liveConsumerNode??=[],e.liveConsumerIndexOfThis??=[]}function zd(e){return e.producerNode!==void 0}function Gd(){throw new Error}var qd=Gd;function ma(e){qd=e}function y(e){return typeof e=="function"}function ht(e){let n=e(r=>{Error.call(r),r.stack=new Error().stack});return n.prototype=Object.create(Error.prototype),n.prototype.constructor=n,n}var qn=ht(e=>function(n){e(this),this.message=n?`${n.length} errors occurred during unsubscription: -${n.map((r,o)=>`${o+1}) ${r.toString()}`).join(` - `)}`:"",this.name="UnsubscriptionError",this.errors=n});function Kt(e,t){if(e){let n=e.indexOf(t);0<=n&&e.splice(n,1)}}var j=class e{constructor(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._finalizers=null}unsubscribe(){let t;if(!this.closed){this.closed=!0;let{_parentage:n}=this;if(n)if(this._parentage=null,Array.isArray(n))for(let i of n)i.remove(this);else n.remove(this);let{initialTeardown:r}=this;if(y(r))try{r()}catch(i){t=i instanceof qn?i.errors:[i]}let{_finalizers:o}=this;if(o){this._finalizers=null;for(let i of o)try{va(i)}catch(s){t=t??[],s instanceof qn?t=[...t,...s.errors]:t.push(s)}}if(t)throw new qn(t)}}add(t){var n;if(t&&t!==this)if(this.closed)va(t);else{if(t instanceof e){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=(n=this._finalizers)!==null&&n!==void 0?n:[]).push(t)}}_hasParent(t){let{_parentage:n}=this;return n===t||Array.isArray(n)&&n.includes(t)}_addParent(t){let{_parentage:n}=this;this._parentage=Array.isArray(n)?(n.push(t),n):n?[n,t]:t}_removeParent(t){let{_parentage:n}=this;n===t?this._parentage=null:Array.isArray(n)&&Kt(n,t)}remove(t){let{_finalizers:n}=this;n&&Kt(n,t),t instanceof e&&t._removeParent(this)}};j.EMPTY=(()=>{let e=new j;return e.closed=!0,e})();var Oo=j.EMPTY;function Wn(e){return e instanceof j||e&&"closed"in e&&y(e.remove)&&y(e.add)&&y(e.unsubscribe)}function va(e){y(e)?e():e.unsubscribe()}var ce={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1};var pt={setTimeout(e,t,...n){let{delegate:r}=pt;return r?.setTimeout?r.setTimeout(e,t,...n):setTimeout(e,t,...n)},clearTimeout(e){let{delegate:t}=pt;return(t?.clearTimeout||clearTimeout)(e)},delegate:void 0};function Zn(e){pt.setTimeout(()=>{let{onUnhandledError:t}=ce;if(t)t(e);else throw e})}function Jt(){}var ya=Po("C",void 0,void 0);function Da(e){return Po("E",void 0,e)}function wa(e){return Po("N",e,void 0)}function Po(e,t,n){return{kind:e,value:t,error:n}}var Ze=null;function gt(e){if(ce.useDeprecatedSynchronousErrorHandling){let t=!Ze;if(t&&(Ze={errorThrown:!1,error:null}),e(),t){let{errorThrown:n,error:r}=Ze;if(Ze=null,n)throw r}}else e()}function Ca(e){ce.useDeprecatedSynchronousErrorHandling&&Ze&&(Ze.errorThrown=!0,Ze.error=e)}var Qe=class extends j{constructor(t){super(),this.isStopped=!1,t?(this.destination=t,Wn(t)&&t.add(this)):this.destination=Qd}static create(t,n,r){return new mt(t,n,r)}next(t){this.isStopped?ko(wa(t),this):this._next(t)}error(t){this.isStopped?ko(Da(t),this):(this.isStopped=!0,this._error(t))}complete(){this.isStopped?ko(ya,this):(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe(),this.destination=null)}_next(t){this.destination.next(t)}_error(t){try{this.destination.error(t)}finally{this.unsubscribe()}}_complete(){try{this.destination.complete()}finally{this.unsubscribe()}}},Wd=Function.prototype.bind;function Fo(e,t){return Wd.call(e,t)}var Lo=class{constructor(t){this.partialObserver=t}next(t){let{partialObserver:n}=this;if(n.next)try{n.next(t)}catch(r){Qn(r)}}error(t){let{partialObserver:n}=this;if(n.error)try{n.error(t)}catch(r){Qn(r)}else Qn(t)}complete(){let{partialObserver:t}=this;if(t.complete)try{t.complete()}catch(n){Qn(n)}}},mt=class extends Qe{constructor(t,n,r){super();let o;if(y(t)||!t)o={next:t??void 0,error:n??void 0,complete:r??void 0};else{let i;this&&ce.useDeprecatedNextContext?(i=Object.create(t),i.unsubscribe=()=>this.unsubscribe(),o={next:t.next&&Fo(t.next,i),error:t.error&&Fo(t.error,i),complete:t.complete&&Fo(t.complete,i)}):o=t}this.destination=new Lo(o)}};function Qn(e){ce.useDeprecatedSynchronousErrorHandling?Ca(e):Zn(e)}function Zd(e){throw e}function ko(e,t){let{onStoppedNotification:n}=ce;n&&pt.setTimeout(()=>n(e,t))}var Qd={closed:!0,next:Jt,error:Zd,complete:Jt};var vt=typeof Symbol=="function"&&Symbol.observable||"@@observable";function K(e){return e}function jo(...e){return Vo(e)}function Vo(e){return e.length===0?K:e.length===1?e[0]:function(n){return e.reduce((r,o)=>o(r),n)}}var R=(()=>{class e{constructor(n){n&&(this._subscribe=n)}lift(n){let r=new e;return r.source=this,r.operator=n,r}subscribe(n,r,o){let i=Kd(n)?n:new mt(n,r,o);return gt(()=>{let{operator:s,source:a}=this;i.add(s?s.call(i,a):a?this._subscribe(i):this._trySubscribe(i))}),i}_trySubscribe(n){try{return this._subscribe(n)}catch(r){n.error(r)}}forEach(n,r){return r=Ia(r),new r((o,i)=>{let s=new mt({next:a=>{try{n(a)}catch(u){i(u),s.unsubscribe()}},error:i,complete:o});this.subscribe(s)})}_subscribe(n){var r;return(r=this.source)===null||r===void 0?void 0:r.subscribe(n)}[vt](){return this}pipe(...n){return Vo(n)(this)}toPromise(n){return n=Ia(n),new n((r,o)=>{let i;this.subscribe(s=>i=s,s=>o(s),()=>r(i))})}}return e.create=t=>new e(t),e})();function Ia(e){var t;return(t=e??ce.Promise)!==null&&t!==void 0?t:Promise}function Yd(e){return e&&y(e.next)&&y(e.error)&&y(e.complete)}function Kd(e){return e&&e instanceof Qe||Yd(e)&&Wn(e)}function $o(e){return y(e?.lift)}function T(e){return t=>{if($o(t))return t.lift(function(n){try{return e(n,this)}catch(r){this.error(r)}});throw new TypeError("Unable to lift unknown Observable type")}}function x(e,t,n,r,o){return new Bo(e,t,n,r,o)}var Bo=class extends Qe{constructor(t,n,r,o,i,s){super(t),this.onFinalize=i,this.shouldUnsubscribe=s,this._next=n?function(a){try{n(a)}catch(u){t.error(u)}}:super._next,this._error=o?function(a){try{o(a)}catch(u){t.error(u)}finally{this.unsubscribe()}}:super._error,this._complete=r?function(){try{r()}catch(a){t.error(a)}finally{this.unsubscribe()}}:super._complete}unsubscribe(){var t;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){let{closed:n}=this;super.unsubscribe(),!n&&((t=this.onFinalize)===null||t===void 0||t.call(this))}}};function yt(){return T((e,t)=>{let n=null;e._refCount++;let r=x(t,void 0,void 0,void 0,()=>{if(!e||e._refCount<=0||0<--e._refCount){n=null;return}let o=e._connection,i=n;n=null,o&&(!i||o===i)&&o.unsubscribe(),t.unsubscribe()});e.subscribe(r),r.closed||(n=e.connect())})}var Dt=class extends R{constructor(t,n){super(),this.source=t,this.subjectFactory=n,this._subject=null,this._refCount=0,this._connection=null,$o(t)&&(this.lift=t.lift)}_subscribe(t){return this.getSubject().subscribe(t)}getSubject(){let t=this._subject;return(!t||t.isStopped)&&(this._subject=this.subjectFactory()),this._subject}_teardown(){this._refCount=0;let{_connection:t}=this;this._subject=this._connection=null,t?.unsubscribe()}connect(){let t=this._connection;if(!t){t=this._connection=new j;let n=this.getSubject();t.add(this.source.subscribe(x(n,void 0,()=>{this._teardown(),n.complete()},r=>{this._teardown(),n.error(r)},()=>this._teardown()))),t.closed&&(this._connection=null,t=j.EMPTY)}return t}refCount(){return yt()(this)}};var Ea=ht(e=>function(){e(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"});var W=(()=>{class e extends R{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(n){let r=new Yn(this,this);return r.operator=n,r}_throwIfClosed(){if(this.closed)throw new Ea}next(n){gt(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(let r of this.currentObservers)r.next(n)}})}error(n){gt(()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=n;let{observers:r}=this;for(;r.length;)r.shift().error(n)}})}complete(){gt(()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;let{observers:n}=this;for(;n.length;)n.shift().complete()}})}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var n;return((n=this.observers)===null||n===void 0?void 0:n.length)>0}_trySubscribe(n){return this._throwIfClosed(),super._trySubscribe(n)}_subscribe(n){return this._throwIfClosed(),this._checkFinalizedStatuses(n),this._innerSubscribe(n)}_innerSubscribe(n){let{hasError:r,isStopped:o,observers:i}=this;return r||o?Oo:(this.currentObservers=null,i.push(n),new j(()=>{this.currentObservers=null,Kt(i,n)}))}_checkFinalizedStatuses(n){let{hasError:r,thrownError:o,isStopped:i}=this;r?n.error(o):i&&n.complete()}asObservable(){let n=new R;return n.source=this,n}}return e.create=(t,n)=>new Yn(t,n),e})(),Yn=class extends W{constructor(t,n){super(),this.destination=t,this.source=n}next(t){var n,r;(r=(n=this.destination)===null||n===void 0?void 0:n.next)===null||r===void 0||r.call(n,t)}error(t){var n,r;(r=(n=this.destination)===null||n===void 0?void 0:n.error)===null||r===void 0||r.call(n,t)}complete(){var t,n;(n=(t=this.destination)===null||t===void 0?void 0:t.complete)===null||n===void 0||n.call(t)}_subscribe(t){var n,r;return(r=(n=this.source)===null||n===void 0?void 0:n.subscribe(t))!==null&&r!==void 0?r:Oo}};var z=class extends W{constructor(t){super(),this._value=t}get value(){return this.getValue()}_subscribe(t){let n=super._subscribe(t);return!n.closed&&t.next(this._value),n}getValue(){let{hasError:t,thrownError:n,_value:r}=this;if(t)throw n;return this._throwIfClosed(),r}next(t){super.next(this._value=t)}};var J=new R(e=>e.complete());function ba(e){return e&&y(e.schedule)}function Sa(e){return e[e.length-1]}function Ma(e){return y(Sa(e))?e.pop():void 0}function ke(e){return ba(Sa(e))?e.pop():void 0}function Ta(e,t,n,r){function o(i){return i instanceof n?i:new n(function(s){s(i)})}return new(n||(n=Promise))(function(i,s){function a(l){try{c(r.next(l))}catch(d){s(d)}}function u(l){try{c(r.throw(l))}catch(d){s(d)}}function c(l){l.done?i(l.value):o(l.value).then(a,u)}c((r=r.apply(e,t||[])).next())})}function _a(e){var t=typeof Symbol=="function"&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function Ye(e){return this instanceof Ye?(this.v=e,this):new Ye(e)}function xa(e,t,n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r=n.apply(e,t||[]),o,i=[];return o=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),a("next"),a("throw"),a("return",s),o[Symbol.asyncIterator]=function(){return this},o;function s(f){return function(m){return Promise.resolve(m).then(f,d)}}function a(f,m){r[f]&&(o[f]=function(A){return new Promise(function($,L){i.push([f,A,$,L])>1||u(f,A)})},m&&(o[f]=m(o[f])))}function u(f,m){try{c(r[f](m))}catch(A){p(i[0][3],A)}}function c(f){f.value instanceof Ye?Promise.resolve(f.value.v).then(l,d):p(i[0][2],f)}function l(f){u("next",f)}function d(f){u("throw",f)}function p(f,m){f(m),i.shift(),i.length&&u(i[0][0],i[0][1])}}function Na(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],n;return t?t.call(e):(e=typeof _a=="function"?_a(e):e[Symbol.iterator](),n={},r("next"),r("throw"),r("return"),n[Symbol.asyncIterator]=function(){return this},n);function r(i){n[i]=e[i]&&function(s){return new Promise(function(a,u){s=e[i](s),o(a,u,s.done,s.value)})}}function o(i,s,a,u){Promise.resolve(u).then(function(c){i({value:c,done:a})},s)}}var Kn=e=>e&&typeof e.length=="number"&&typeof e!="function";function Jn(e){return y(e?.then)}function Xn(e){return y(e[vt])}function er(e){return Symbol.asyncIterator&&y(e?.[Symbol.asyncIterator])}function tr(e){return new TypeError(`You provided ${e!==null&&typeof e=="object"?"an invalid object":`'${e}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}function Jd(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var nr=Jd();function rr(e){return y(e?.[nr])}function or(e){return xa(this,arguments,function*(){let n=e.getReader();try{for(;;){let{value:r,done:o}=yield Ye(n.read());if(o)return yield Ye(void 0);yield yield Ye(r)}}finally{n.releaseLock()}})}function ir(e){return y(e?.getReader)}function H(e){if(e instanceof R)return e;if(e!=null){if(Xn(e))return Xd(e);if(Kn(e))return ef(e);if(Jn(e))return tf(e);if(er(e))return Aa(e);if(rr(e))return nf(e);if(ir(e))return rf(e)}throw tr(e)}function Xd(e){return new R(t=>{let n=e[vt]();if(y(n.subscribe))return n.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function ef(e){return new R(t=>{for(let n=0;n{e.then(n=>{t.closed||(t.next(n),t.complete())},n=>t.error(n)).then(null,Zn)})}function nf(e){return new R(t=>{for(let n of e)if(t.next(n),t.closed)return;t.complete()})}function Aa(e){return new R(t=>{of(e,t).catch(n=>t.error(n))})}function rf(e){return Aa(or(e))}function of(e,t){var n,r,o,i;return Ta(this,void 0,void 0,function*(){try{for(n=Na(e);r=yield n.next(),!r.done;){let s=r.value;if(t.next(s),t.closed)return}}catch(s){o={error:s}}finally{try{r&&!r.done&&(i=n.return)&&(yield i.call(n))}finally{if(o)throw o.error}}t.complete()})}function Y(e,t,n,r=0,o=!1){let i=t.schedule(function(){n(),o?e.add(this.schedule(null,r)):this.unsubscribe()},r);if(e.add(i),!o)return i}function sr(e,t=0){return T((n,r)=>{n.subscribe(x(r,o=>Y(r,e,()=>r.next(o),t),()=>Y(r,e,()=>r.complete(),t),o=>Y(r,e,()=>r.error(o),t)))})}function ar(e,t=0){return T((n,r)=>{r.add(e.schedule(()=>n.subscribe(r),t))})}function Ra(e,t){return H(e).pipe(ar(t),sr(t))}function Oa(e,t){return H(e).pipe(ar(t),sr(t))}function Pa(e,t){return new R(n=>{let r=0;return t.schedule(function(){r===e.length?n.complete():(n.next(e[r++]),n.closed||this.schedule())})})}function Fa(e,t){return new R(n=>{let r;return Y(n,t,()=>{r=e[nr](),Y(n,t,()=>{let o,i;try{({value:o,done:i}=r.next())}catch(s){n.error(s);return}i?n.complete():n.next(o)},0,!0)}),()=>y(r?.return)&&r.return()})}function ur(e,t){if(!e)throw new Error("Iterable cannot be null");return new R(n=>{Y(n,t,()=>{let r=e[Symbol.asyncIterator]();Y(n,t,()=>{r.next().then(o=>{o.done?n.complete():n.next(o.value)})},0,!0)})})}function ka(e,t){return ur(or(e),t)}function La(e,t){if(e!=null){if(Xn(e))return Ra(e,t);if(Kn(e))return Pa(e,t);if(Jn(e))return Oa(e,t);if(er(e))return ur(e,t);if(rr(e))return Fa(e,t);if(ir(e))return ka(e,t)}throw tr(e)}function B(e,t){return t?La(e,t):H(e)}function w(...e){let t=ke(e);return B(e,t)}function wt(e,t){let n=y(e)?e:()=>e,r=o=>o.error(n());return new R(t?o=>t.schedule(r,0,o):r)}function Uo(e){return!!e&&(e instanceof R||y(e.lift)&&y(e.subscribe))}var Se=ht(e=>function(){e(this),this.name="EmptyError",this.message="no elements in sequence"});function S(e,t){return T((n,r)=>{let o=0;n.subscribe(x(r,i=>{r.next(e.call(t,i,o++))}))})}var{isArray:sf}=Array;function af(e,t){return sf(t)?e(...t):e(t)}function ja(e){return S(t=>af(e,t))}var{isArray:uf}=Array,{getPrototypeOf:cf,prototype:lf,keys:df}=Object;function Va(e){if(e.length===1){let t=e[0];if(uf(t))return{args:t,keys:null};if(ff(t)){let n=df(t);return{args:n.map(r=>t[r]),keys:n}}}return{args:e,keys:null}}function ff(e){return e&&typeof e=="object"&&cf(e)===lf}function $a(e,t){return e.reduce((n,r,o)=>(n[r]=t[o],n),{})}function cr(...e){let t=ke(e),n=Ma(e),{args:r,keys:o}=Va(e);if(r.length===0)return B([],t);let i=new R(hf(r,t,o?s=>$a(o,s):K));return n?i.pipe(ja(n)):i}function hf(e,t,n=K){return r=>{Ba(t,()=>{let{length:o}=e,i=new Array(o),s=o,a=o;for(let u=0;u{let c=B(e[u],t),l=!1;c.subscribe(x(r,d=>{i[u]=d,l||(l=!0,a--),a||r.next(n(i.slice()))},()=>{--s||r.complete()}))},r)},r)}}function Ba(e,t,n){e?Y(n,e,t):t()}function Ua(e,t,n,r,o,i,s,a){let u=[],c=0,l=0,d=!1,p=()=>{d&&!u.length&&!c&&t.complete()},f=A=>c{i&&t.next(A),c++;let $=!1;H(n(A,l++)).subscribe(x(t,L=>{o?.(L),i?f(L):t.next(L)},()=>{$=!0},void 0,()=>{if($)try{for(c--;u.length&&cm(L)):m(L)}p()}catch(L){t.error(L)}}))};return e.subscribe(x(t,f,()=>{d=!0,p()})),()=>{a?.()}}function U(e,t,n=1/0){return y(t)?U((r,o)=>S((i,s)=>t(r,i,o,s))(H(e(r,o))),n):(typeof t=="number"&&(n=t),T((r,o)=>Ua(r,o,e,n)))}function Ho(e=1/0){return U(K,e)}function Ha(){return Ho(1)}function Ct(...e){return Ha()(B(e,ke(e)))}function lr(e){return new R(t=>{H(e()).subscribe(t)})}function le(e,t){return T((n,r)=>{let o=0;n.subscribe(x(r,i=>e.call(t,i,o++)&&r.next(i)))})}function Le(e){return T((t,n)=>{let r=null,o=!1,i;r=t.subscribe(x(n,void 0,void 0,s=>{i=H(e(s,Le(e)(t))),r?(r.unsubscribe(),r=null,i.subscribe(n)):o=!0})),o&&(r.unsubscribe(),r=null,i.subscribe(n))})}function za(e,t,n,r,o){return(i,s)=>{let a=n,u=t,c=0;i.subscribe(x(s,l=>{let d=c++;u=a?e(u,l,d):(a=!0,l),r&&s.next(u)},o&&(()=>{a&&s.next(u),s.complete()})))}}function It(e,t){return y(t)?U(e,t,1):U(e,1)}function je(e){return T((t,n)=>{let r=!1;t.subscribe(x(n,o=>{r=!0,n.next(o)},()=>{r||n.next(e),n.complete()}))})}function Me(e){return e<=0?()=>J:T((t,n)=>{let r=0;t.subscribe(x(n,o=>{++r<=e&&(n.next(o),e<=r&&n.complete())}))})}function zo(e){return S(()=>e)}function dr(e=pf){return T((t,n)=>{let r=!1;t.subscribe(x(n,o=>{r=!0,n.next(o)},()=>r?n.complete():n.error(e())))})}function pf(){return new Se}function Xt(e){return T((t,n)=>{try{t.subscribe(n)}finally{n.add(e)}})}function De(e,t){let n=arguments.length>=2;return r=>r.pipe(e?le((o,i)=>e(o,i,r)):K,Me(1),n?je(t):dr(()=>new Se))}function Et(e){return e<=0?()=>J:T((t,n)=>{let r=[];t.subscribe(x(n,o=>{r.push(o),e{for(let o of r)n.next(o);n.complete()},void 0,()=>{r=null}))})}function Go(e,t){let n=arguments.length>=2;return r=>r.pipe(e?le((o,i)=>e(o,i,r)):K,Et(1),n?je(t):dr(()=>new Se))}function qo(e,t){return T(za(e,t,arguments.length>=2,!0))}function Wo(...e){let t=ke(e);return T((n,r)=>{(t?Ct(e,n,t):Ct(e,n)).subscribe(r)})}function de(e,t){return T((n,r)=>{let o=null,i=0,s=!1,a=()=>s&&!o&&r.complete();n.subscribe(x(r,u=>{o?.unsubscribe();let c=0,l=i++;H(e(u,l)).subscribe(o=x(r,d=>r.next(t?t(u,d,l,c++):d),()=>{o=null,a()}))},()=>{s=!0,a()}))})}function Zo(e){return T((t,n)=>{H(e).subscribe(x(n,()=>n.complete(),Jt)),!n.closed&&t.subscribe(n)})}function G(e,t,n){let r=y(e)||t||n?{next:e,error:t,complete:n}:e;return r?T((o,i)=>{var s;(s=r.subscribe)===null||s===void 0||s.call(r);let a=!0;o.subscribe(x(i,u=>{var c;(c=r.next)===null||c===void 0||c.call(r,u),i.next(u)},()=>{var u;a=!1,(u=r.complete)===null||u===void 0||u.call(r),i.complete()},u=>{var c;a=!1,(c=r.error)===null||c===void 0||c.call(r,u),i.error(u)},()=>{var u,c;a&&((u=r.unsubscribe)===null||u===void 0||u.call(r)),(c=r.finalize)===null||c===void 0||c.call(r)}))}):K}var v=class extends Error{constructor(t,n){super(ki(t,n)),this.code=t}};function ki(e,t){return`${`NG0${Math.abs(e)}`}${t?": "+t:""}`}function Li(e){return{toString:e}.toString()}function F(e){for(let t in e)if(e[t]===F)return t;throw Error("Could not find renamed property on target object.")}function X(e){if(typeof e=="string")return e;if(Array.isArray(e))return"["+e.map(X).join(", ")+"]";if(e==null)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;let t=e.toString();if(t==null)return""+t;let n=t.indexOf(` -`);return n===-1?t:t.substring(0,n)}function Ga(e,t){return e==null||e===""?t===null?"":t:t==null||t===""?e:e+" "+t}var gf=F({__forward_ref__:F});function Mu(e){return e.__forward_ref__=Mu,e.toString=function(){return X(this())},e}function re(e){return _u(e)?e():e}function _u(e){return typeof e=="function"&&e.hasOwnProperty(gf)&&e.__forward_ref__===Mu}function D(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function kr(e){return qa(e,xu)||qa(e,Nu)}function Tu(e){return kr(e)!==null}function qa(e,t){return e.hasOwnProperty(t)?e[t]:null}function mf(e){let t=e&&(e[xu]||e[Nu]);return t||null}function Wa(e){return e&&(e.hasOwnProperty(Za)||e.hasOwnProperty(vf))?e[Za]:null}var xu=F({\u0275prov:F}),Za=F({\u0275inj:F}),Nu=F({ngInjectableDef:F}),vf=F({ngInjectorDef:F}),E=class{constructor(t,n){this._desc=t,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,typeof n=="number"?this.__NG_ELEMENT_ID__=n:n!==void 0&&(this.\u0275prov=D({token:this,providedIn:n.providedIn||"root",factory:n.factory}))}get multi(){return this}toString(){return`InjectionToken ${this._desc}`}};function Au(e){return e&&!!e.\u0275providers}var yf=F({\u0275cmp:F}),Df=F({\u0275dir:F}),wf=F({\u0275pipe:F}),Cf=F({\u0275mod:F}),yr=F({\u0275fac:F}),nn=F({__NG_ELEMENT_ID__:F}),Qa=F({__NG_ENV_ID__:F});function If(e){return typeof e=="string"?e:e==null?"":String(e)}function Ef(e){return typeof e=="function"?e.name||e.toString():typeof e=="object"&&e!=null&&typeof e.type=="function"?e.type.name||e.type.toString():If(e)}function bf(e,t){let n=t?`. Dependency path: ${t.join(" > ")} > ${e}`:"";throw new v(-200,e)}function ji(e,t){throw new v(-201,!1)}var b=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}(b||{}),ri;function Ru(){return ri}function ne(e){let t=ri;return ri=e,t}function Ou(e,t,n){let r=kr(e);if(r&&r.providedIn=="root")return r.value===void 0?r.value=r.factory():r.value;if(n&b.Optional)return null;if(t!==void 0)return t;ji(e,"Injector")}var Sf={},rn=Sf,Mf="__NG_DI_FLAG__",Dr="ngTempTokenPath",_f="ngTokenPath",Tf=/\n/gm,xf="\u0275",Ya="__source",_t;function Nf(){return _t}function Ve(e){let t=_t;return _t=e,t}function Af(e,t=b.Default){if(_t===void 0)throw new v(-203,!1);return _t===null?Ou(e,void 0,t):_t.get(e,t&b.Optional?null:void 0,t)}function _(e,t=b.Default){return(Ru()||Af)(re(e),t)}function h(e,t=b.Default){return _(e,Lr(t))}function Lr(e){return typeof e>"u"||typeof e=="number"?e:0|(e.optional&&8)|(e.host&&1)|(e.self&&2)|(e.skipSelf&&4)}function oi(e){let t=[];for(let n=0;n ");else if(typeof t=="object"){let i=[];for(let s in t)if(t.hasOwnProperty(s)){let a=t[s];i.push(s+":"+(typeof a=="string"?JSON.stringify(a):X(a)))}o=`{${i.join(", ")}}`}return`${n}${r?"("+r+")":""}[${o}]: ${e.replace(Tf,` - `)}`}function xt(e,t){let n=e.hasOwnProperty(yr);return n?e[yr]:null}function Vi(e,t){e.forEach(n=>Array.isArray(n)?Vi(n,t):t(n))}function Pu(e,t,n){t>=e.length?e.push(n):e.splice(t,0,n)}function wr(e,t){return t>=e.length-1?e.pop():e.splice(t,1)[0]}var on={},Nt=[],At=new E(""),Fu=new E("",-1),ku=new E(""),Cr=class{get(t,n=rn){if(n===rn){let r=new Error(`NullInjectorError: No provider for ${X(t)}!`);throw r.name="NullInjectorError",r}return n}},Lu=function(e){return e[e.OnPush=0]="OnPush",e[e.Default=1]="Default",e}(Lu||{}),Ce=function(e){return e[e.Emulated=0]="Emulated",e[e.None=2]="None",e[e.ShadowDom=3]="ShadowDom",e}(Ce||{}),Ue=function(e){return e[e.None=0]="None",e[e.SignalBased=1]="SignalBased",e[e.HasDecoratorInputTransform=2]="HasDecoratorInputTransform",e}(Ue||{});function Ff(e,t,n){let r=e.length;for(;;){let o=e.indexOf(t,n);if(o===-1)return o;if(o===0||e.charCodeAt(o-1)<=32){let i=t.length;if(o+i===r||e.charCodeAt(o+i)<=32)return o}n=o+1}}function ii(e,t,n){let r=0;for(;rt){s=i-1;break}}}for(;i-1){let i;for(;++oi?d="":d=o[l+1].toLowerCase(),r&2&&c!==d){if(fe(r))return!1;s=!0}}}}return fe(r)||s}function fe(e){return(e&1)===0}function Bf(e,t,n,r){if(t===null)return-1;let o=0;if(r||!n){let i=!1;for(;o-1)for(n++;n0?'="'+a+'"':"")+"]"}else r&8?o+="."+s:r&4&&(o+=" "+s);else o!==""&&!fe(s)&&(t+=Ja(i,o),o=""),r=s,i=i||!fe(r);n++}return o!==""&&(t+=Ja(i,o)),t}function qf(e){return e.map(Gf).join(",")}function Wf(e){let t=[],n=[],r=1,o=2;for(;r{let t=Hu(e),n=k(g({},t),{decls:e.decls,vars:e.vars,template:e.template,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,onPush:e.changeDetection===Lu.OnPush,directiveDefs:null,pipeDefs:null,dependencies:t.standalone&&e.dependencies||null,getStandaloneInjector:null,signals:e.signals??!1,data:e.data||{},encapsulation:e.encapsulation||Ce.Emulated,styles:e.styles||Nt,_:null,schemas:e.schemas||null,tView:null,id:""});zu(n);let r=e.dependencies;return n.directiveDefs=eu(r,!1),n.pipeDefs=eu(r,!0),n.id=Yf(n),n})}function Zf(e){return Xe(e)||Vu(e)}function Qf(e){return e!==null}function Xa(e,t){if(e==null)return on;let n={};for(let r in e)if(e.hasOwnProperty(r)){let o=e[r],i,s,a=Ue.None;Array.isArray(o)?(a=o[0],i=o[1],s=o[2]??i):(i=o,s=o),t?(n[i]=a!==Ue.None?[r,a]:r,t[i]=s):n[i]=r}return n}function Ui(e){return Li(()=>{let t=Hu(e);return zu(t),t})}function Xe(e){return e[yf]||null}function Vu(e){return e[Df]||null}function $u(e){return e[wf]||null}function Bu(e){let t=Xe(e)||Vu(e)||$u(e);return t!==null?t.standalone:!1}function Uu(e,t){let n=e[Cf]||null;if(!n&&t===!0)throw new Error(`Type ${X(e)} does not have '\u0275mod' property.`);return n}function Hu(e){let t={};return{type:e.type,providersResolver:null,factory:null,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:t,inputTransforms:null,inputConfig:e.inputs||on,exportAs:e.exportAs||null,standalone:e.standalone===!0,signals:e.signals===!0,selectors:e.selectors||Nt,viewQuery:e.viewQuery||null,features:e.features||null,setInput:null,findHostDirectiveDefs:null,hostDirectives:null,inputs:Xa(e.inputs,t),outputs:Xa(e.outputs),debugInfo:null}}function zu(e){e.features?.forEach(t=>t(e))}function eu(e,t){if(!e)return null;let n=t?$u:Zf;return()=>(typeof e=="function"?e():e).map(r=>n(r)).filter(Qf)}function Yf(e){let t=0,n=[e.selectors,e.ngContentSelectors,e.hostVars,e.hostAttrs,e.consts,e.vars,e.decls,e.encapsulation,e.standalone,e.signals,e.exportAs,JSON.stringify(e.inputs),JSON.stringify(e.outputs),Object.getOwnPropertyNames(e.type.prototype),!!e.contentQueries,!!e.viewQuery].join("|");for(let o of n)t=Math.imul(31,t)+o.charCodeAt(0)<<0;return t+=2147483648,"c"+t}function Vr(e){return{\u0275providers:e}}function Kf(...e){return{\u0275providers:Gu(!0,e),\u0275fromNgModule:!0}}function Gu(e,...t){let n=[],r=new Set,o,i=s=>{n.push(s)};return Vi(t,s=>{let a=s;si(a,i,[],r)&&(o||=[],o.push(a))}),o!==void 0&&qu(o,i),n}function qu(e,t){for(let n=0;n{t(i,r)})}}function si(e,t,n,r){if(e=re(e),!e)return!1;let o=null,i=Wa(e),s=!i&&Xe(e);if(!i&&!s){let u=e.ngModule;if(i=Wa(u),i)o=u;else return!1}else{if(s&&!s.standalone)return!1;o=e}let a=r.has(o);if(s){if(a)return!1;if(r.add(o),s.dependencies){let u=typeof s.dependencies=="function"?s.dependencies():s.dependencies;for(let c of u)si(c,t,n,r)}}else if(i){if(i.imports!=null&&!a){r.add(o);let c;try{Vi(i.imports,l=>{si(l,t,n,r)&&(c||=[],c.push(l))})}finally{}c!==void 0&&qu(c,t)}if(!a){let c=xt(o)||(()=>new o);t({provide:o,useFactory:c,deps:Nt},o),t({provide:ku,useValue:o,multi:!0},o),t({provide:At,useValue:()=>_(o),multi:!0},o)}let u=i.providers;if(u!=null&&!a){let c=e;Hi(u,l=>{t(l,c)})}}else return!1;return o!==e&&e.providers!==void 0}function Hi(e,t){for(let n of e)Au(n)&&(n=n.\u0275providers),Array.isArray(n)?Hi(n,t):t(n)}var Jf=F({provide:String,useValue:F});function Wu(e){return e!==null&&typeof e=="object"&&Jf in e}function Xf(e){return!!(e&&e.useExisting)}function eh(e){return!!(e&&e.useFactory)}function ai(e){return typeof e=="function"}var $r=new E(""),hr={},th={},Qo;function zi(){return Qo===void 0&&(Qo=new Cr),Qo}var se=class{},sn=class extends se{get destroyed(){return this._destroyed}constructor(t,n,r,o){super(),this.parent=n,this.source=r,this.scopes=o,this.records=new Map,this._ngOnDestroyHooks=new Set,this._onDestroyHooks=[],this._destroyed=!1,ci(t,s=>this.processProvider(s)),this.records.set(Fu,bt(void 0,this)),o.has("environment")&&this.records.set(se,bt(void 0,this));let i=this.records.get($r);i!=null&&typeof i.value=="string"&&this.scopes.add(i.value),this.injectorDefTypes=new Set(this.get(ku,Nt,b.Self))}destroy(){this.assertNotDestroyed(),this._destroyed=!0;let t=P(null);try{for(let r of this._ngOnDestroyHooks)r.ngOnDestroy();let n=this._onDestroyHooks;this._onDestroyHooks=[];for(let r of n)r()}finally{this.records.clear(),this._ngOnDestroyHooks.clear(),this.injectorDefTypes.clear(),P(t)}}onDestroy(t){return this.assertNotDestroyed(),this._onDestroyHooks.push(t),()=>this.removeOnDestroy(t)}runInContext(t){this.assertNotDestroyed();let n=Ve(this),r=ne(void 0),o;try{return t()}finally{Ve(n),ne(r)}}get(t,n=rn,r=b.Default){if(this.assertNotDestroyed(),t.hasOwnProperty(Qa))return t[Qa](this);r=Lr(r);let o,i=Ve(this),s=ne(void 0);try{if(!(r&b.SkipSelf)){let u=this.records.get(t);if(u===void 0){let c=ah(t)&&kr(t);c&&this.injectableDefInScope(c)?u=bt(ui(t),hr):u=null,this.records.set(t,u)}if(u!=null)return this.hydrate(t,u)}let a=r&b.Self?zi():this.parent;return n=r&b.Optional&&n===rn?null:n,a.get(t,n)}catch(a){if(a.name==="NullInjectorError"){if((a[Dr]=a[Dr]||[]).unshift(X(t)),i)throw a;return Of(a,t,"R3InjectorError",this.source)}else throw a}finally{ne(s),Ve(i)}}resolveInjectorInitializers(){let t=P(null),n=Ve(this),r=ne(void 0),o;try{let i=this.get(At,Nt,b.Self);for(let s of i)s()}finally{Ve(n),ne(r),P(t)}}toString(){let t=[],n=this.records;for(let r of n.keys())t.push(X(r));return`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new v(205,!1)}processProvider(t){t=re(t);let n=ai(t)?t:re(t&&t.provide),r=rh(t);if(!ai(t)&&t.multi===!0){let o=this.records.get(n);o||(o=bt(void 0,hr,!0),o.factory=()=>oi(o.multi),this.records.set(n,o)),n=t,o.multi.push(t)}this.records.set(n,r)}hydrate(t,n){let r=P(null);try{return n.value===hr&&(n.value=th,n.value=n.factory()),typeof n.value=="object"&&n.value&&sh(n.value)&&this._ngOnDestroyHooks.add(n.value),n.value}finally{P(r)}}injectableDefInScope(t){if(!t.providedIn)return!1;let n=re(t.providedIn);return typeof n=="string"?n==="any"||this.scopes.has(n):this.injectorDefTypes.has(n)}removeOnDestroy(t){let n=this._onDestroyHooks.indexOf(t);n!==-1&&this._onDestroyHooks.splice(n,1)}};function ui(e){let t=kr(e),n=t!==null?t.factory:xt(e);if(n!==null)return n;if(e instanceof E)throw new v(204,!1);if(e instanceof Function)return nh(e);throw new v(204,!1)}function nh(e){if(e.length>0)throw new v(204,!1);let n=mf(e);return n!==null?()=>n.factory(e):()=>new e}function rh(e){if(Wu(e))return bt(void 0,e.useValue);{let t=oh(e);return bt(t,hr)}}function oh(e,t,n){let r;if(ai(e)){let o=re(e);return xt(o)||ui(o)}else if(Wu(e))r=()=>re(e.useValue);else if(eh(e))r=()=>e.useFactory(...oi(e.deps||[]));else if(Xf(e))r=()=>_(re(e.useExisting));else{let o=re(e&&(e.useClass||e.provide));if(ih(e))r=()=>new o(...oi(e.deps));else return xt(o)||ui(o)}return r}function bt(e,t,n=!1){return{factory:e,value:t,multi:n?[]:void 0}}function ih(e){return!!e.deps}function sh(e){return e!==null&&typeof e=="object"&&typeof e.ngOnDestroy=="function"}function ah(e){return typeof e=="function"||typeof e=="object"&&e instanceof E}function ci(e,t){for(let n of e)Array.isArray(n)?ci(n,t):n&&Au(n)?ci(n.\u0275providers,t):t(n)}function xe(e,t){e instanceof sn&&e.assertNotDestroyed();let n,r=Ve(e),o=ne(void 0);try{return t()}finally{Ve(r),ne(o)}}function uh(){return Ru()!==void 0||Nf()!=null}function ch(e){return typeof e=="function"}var Ne=0,M=1,C=2,Q=3,he=4,ge=5,Ir=6,tu=7,He=8,Rt=9,_e=10,Ie=11,an=12,nu=13,hn=14,Ee=15,un=16,St=17,Br=18,Ur=19,Zu=20,Be=21,Yo=22,oe=23,et=25,Qu=1;var tt=7,Er=8,br=9,ie=10,Sr=function(e){return e[e.None=0]="None",e[e.HasTransplantedViews=2]="HasTransplantedViews",e}(Sr||{});function Ke(e){return Array.isArray(e)&&typeof e[Qu]=="object"}function Ae(e){return Array.isArray(e)&&e[Qu]===!0}function Yu(e){return(e.flags&4)!==0}function Gi(e){return e.componentOffset>-1}function lh(e){return(e.flags&1)===1}function pn(e){return!!e.template}function li(e){return(e[C]&512)!==0}var di=class{constructor(t,n,r){this.previousValue=t,this.currentValue=n,this.firstChange=r}isFirstChange(){return this.firstChange}};function Ku(e,t,n,r){t!==null?t.applyValueToInputSignal(t,r):e[n]=r}function Hr(){return Ju}function Ju(e){return e.type.prototype.ngOnChanges&&(e.setInput=fh),dh}Hr.ngInherit=!0;function dh(){let e=ec(this),t=e?.current;if(t){let n=e.previous;if(n===on)e.previous=t;else for(let r in t)n[r]=t[r];e.current=null,this.ngOnChanges(t)}}function fh(e,t,n,r,o){let i=this.declaredInputs[r],s=ec(e)||hh(e,{previous:on,current:null}),a=s.current||(s.current={}),u=s.previous,c=u[i];a[i]=new di(c&&c.currentValue,n,u===on),Ku(e,t,o,n)}var Xu="__ngSimpleChanges__";function ec(e){return e[Xu]||null}function hh(e,t){return e[Xu]=t}var ru=null;var $e=function(e,t,n){ru?.(e,t,n)},ph="svg",gh="math";function ze(e){for(;Array.isArray(e);)e=e[Ne];return e}function Re(e,t){return ze(t[e.index])}function mh(e,t){return e.data[t]}function gn(e,t){let n=t[e];return Ke(n)?n:n[Ne]}function qi(e){return(e[C]&128)===128}function vh(e){return Ae(e[Q])}function ou(e,t){return t==null?null:e[t]}function tc(e){e[St]=0}function nc(e){e[C]&1024||(e[C]|=1024,qi(e)&&Gr(e))}function zr(e){return!!(e[C]&9216||e[oe]?.dirty)}function fi(e){e[_e].changeDetectionScheduler?.notify(8),e[C]&64&&(e[C]|=1024),zr(e)&&Gr(e)}function Gr(e){e[_e].changeDetectionScheduler?.notify(0);let t=nt(e);for(;t!==null&&!(t[C]&8192||(t[C]|=8192,!qi(t)));)t=nt(t)}function rc(e,t){if((e[C]&256)===256)throw new v(911,!1);e[Be]===null&&(e[Be]=[]),e[Be].push(t)}function yh(e,t){if(e[Be]===null)return;let n=e[Be].indexOf(t);n!==-1&&e[Be].splice(n,1)}function nt(e){let t=e[Q];return Ae(t)?t[Q]:t}var O={lFrame:fc(null),bindingsEnabled:!0,skipHydrationRootTNode:null};var oc=!1;function Dh(){return O.lFrame.elementDepthCount}function wh(){O.lFrame.elementDepthCount++}function Ch(){O.lFrame.elementDepthCount--}function ic(){return O.bindingsEnabled}function Ih(){return O.skipHydrationRootTNode!==null}function Eh(e){return O.skipHydrationRootTNode===e}function bh(){O.skipHydrationRootTNode=null}function pe(){return O.lFrame.lView}function Wi(){return O.lFrame.tView}function Oe(){let e=sc();for(;e!==null&&e.type===64;)e=e.parent;return e}function sc(){return O.lFrame.currentTNode}function Sh(){let e=O.lFrame,t=e.currentTNode;return e.isParent?t:t.parent}function qr(e,t){let n=O.lFrame;n.currentTNode=e,n.isParent=t}function ac(){return O.lFrame.isParent}function Mh(){O.lFrame.isParent=!1}function uc(){return oc}function iu(e){oc=e}function _h(e){return O.lFrame.bindingIndex=e}function Th(){return O.lFrame.inI18n}function xh(e,t){let n=O.lFrame;n.bindingIndex=n.bindingRootIndex=e,hi(t)}function Nh(){return O.lFrame.currentDirectiveIndex}function hi(e){O.lFrame.currentDirectiveIndex=e}function cc(e){O.lFrame.currentQueryIndex=e}function Ah(e){let t=e[M];return t.type===2?t.declTNode:t.type===1?e[ge]:null}function lc(e,t,n){if(n&b.SkipSelf){let o=t,i=e;for(;o=o.parent,o===null&&!(n&b.Host);)if(o=Ah(i),o===null||(i=i[hn],o.type&10))break;if(o===null)return!1;t=o,e=i}let r=O.lFrame=dc();return r.currentTNode=t,r.lView=e,!0}function Zi(e){let t=dc(),n=e[M];O.lFrame=t,t.currentTNode=n.firstChild,t.lView=e,t.tView=n,t.contextLView=e,t.bindingIndex=n.bindingStartIndex,t.inI18n=!1}function dc(){let e=O.lFrame,t=e===null?null:e.child;return t===null?fc(e):t}function fc(e){let t={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null,inI18n:!1};return e!==null&&(e.child=t),t}function hc(){let e=O.lFrame;return O.lFrame=e.parent,e.currentTNode=null,e.lView=null,e}var pc=hc;function Qi(){let e=hc();e.isParent=!0,e.tView=null,e.selectedIndex=-1,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function Rh(){return O.lFrame.selectedIndex}function rt(e){O.lFrame.selectedIndex=e}function Oh(){return O.lFrame.currentNamespace}var gc=!0;function mc(){return gc}function vc(e){gc=e}function Ph(e,t,n){let{ngOnChanges:r,ngOnInit:o,ngDoCheck:i}=t.type.prototype;if(r){let s=Ju(t);(n.preOrderHooks??=[]).push(e,s),(n.preOrderCheckHooks??=[]).push(e,s)}o&&(n.preOrderHooks??=[]).push(0-e,o),i&&((n.preOrderHooks??=[]).push(e,i),(n.preOrderCheckHooks??=[]).push(e,i))}function yc(e,t){for(let n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[u]<0&&(e[St]+=65536),(a>14>16&&(e[C]&3)===t&&(e[C]+=16384,su(a,i)):su(a,i)}var Tt=-1,cn=class{constructor(t,n,r){this.factory=t,this.resolving=!1,this.canSeeViewProviders=n,this.injectImpl=r}};function kh(e){return e instanceof cn}function Lh(e){return(e.flags&8)!==0}function jh(e){return(e.flags&16)!==0}var Jo={},pi=class{constructor(t,n){this.injector=t,this.parentInjector=n}get(t,n,r){r=Lr(r);let o=this.injector.get(t,Jo,r);return o!==Jo||n===Jo?o:this.parentInjector.get(t,n,r)}};function wc(e){return e!==Tt}function Mr(e){return e&32767}function Vh(e){return e>>16}function _r(e,t){let n=Vh(e),r=t;for(;n>0;)r=r[hn],n--;return r}var gi=!0;function au(e){let t=gi;return gi=e,t}var $h=256,Cc=$h-1,Ic=5,Bh=0,we={};function Uh(e,t,n){let r;typeof n=="string"?r=n.charCodeAt(0)||0:n.hasOwnProperty(nn)&&(r=n[nn]),r==null&&(r=n[nn]=Bh++);let o=r&Cc,i=1<>Ic)]|=i}function Ec(e,t){let n=bc(e,t);if(n!==-1)return n;let r=t[M];r.firstCreatePass&&(e.injectorIndex=t.length,Xo(r.data,e),Xo(t,null),Xo(r.blueprint,null));let o=Yi(e,t),i=e.injectorIndex;if(wc(o)){let s=Mr(o),a=_r(o,t),u=a[M].data;for(let c=0;c<8;c++)t[i+c]=a[s+c]|u[s+c]}return t[i+8]=o,i}function Xo(e,t){e.push(0,0,0,0,0,0,0,0,t)}function bc(e,t){return e.injectorIndex===-1||e.parent&&e.parent.injectorIndex===e.injectorIndex||t[e.injectorIndex+8]===null?-1:e.injectorIndex}function Yi(e,t){if(e.parent&&e.parent.injectorIndex!==-1)return e.parent.injectorIndex;let n=0,r=null,o=t;for(;o!==null;){if(r=xc(o),r===null)return Tt;if(n++,o=o[hn],r.injectorIndex!==-1)return r.injectorIndex|n<<16}return Tt}function Hh(e,t,n){Uh(e,t,n)}function Sc(e,t,n){if(n&b.Optional||e!==void 0)return e;ji(t,"NodeInjector")}function Mc(e,t,n,r){if(n&b.Optional&&r===void 0&&(r=null),!(n&(b.Self|b.Host))){let o=e[Rt],i=ne(void 0);try{return o?o.get(t,r,n&b.Optional):Ou(t,r,n&b.Optional)}finally{ne(i)}}return Sc(r,t,n)}function _c(e,t,n,r=b.Default,o){if(e!==null){if(t[C]&2048&&!(r&b.Self)){let s=Zh(e,t,n,r,we);if(s!==we)return s}let i=Tc(e,t,n,r,we);if(i!==we)return i}return Mc(t,n,r,o)}function Tc(e,t,n,r,o){let i=qh(n);if(typeof i=="function"){if(!lc(t,e,r))return r&b.Host?Sc(o,n,r):Mc(t,n,r,o);try{let s;if(s=i(r),s==null&&!(r&b.Optional))ji(n);else return s}finally{pc()}}else if(typeof i=="number"){let s=null,a=bc(e,t),u=Tt,c=r&b.Host?t[Ee][ge]:null;for((a===-1||r&b.SkipSelf)&&(u=a===-1?Yi(e,t):t[a+8],u===Tt||!cu(r,!1)?a=-1:(s=t[M],a=Mr(u),t=_r(u,t)));a!==-1;){let l=t[M];if(uu(i,a,l.data)){let d=zh(a,t,n,s,r,c);if(d!==we)return d}u=t[a+8],u!==Tt&&cu(r,t[M].data[a+8]===c)&&uu(i,a,t)?(s=l,a=Mr(u),t=_r(u,t)):a=-1}}return o}function zh(e,t,n,r,o,i){let s=t[M],a=s.data[e+8],u=r==null?Gi(a)&&gi:r!=s&&(a.type&3)!==0,c=o&b.Host&&i===a,l=Gh(a,s,n,u,c);return l!==null?ln(t,s,l,a):we}function Gh(e,t,n,r,o){let i=e.providerIndexes,s=t.data,a=i&1048575,u=e.directiveStart,c=e.directiveEnd,l=i>>20,d=r?a:a+l,p=o?a+l:c;for(let f=d;f=u&&m.type===n)return f}if(o){let f=s[u];if(f&&pn(f)&&f.type===n)return u}return null}function ln(e,t,n,r){let o=e[n],i=t.data;if(kh(o)){let s=o;s.resolving&&bf(Ef(i[n]));let a=au(s.canSeeViewProviders);s.resolving=!0;let u,c=s.injectImpl?ne(s.injectImpl):null,l=lc(e,r,b.Default);try{o=e[n]=s.factory(void 0,i,e,r),t.firstCreatePass&&n>=r.directiveStart&&Ph(n,i[n],t)}finally{c!==null&&ne(c),au(a),s.resolving=!1,pc()}}return o}function qh(e){if(typeof e=="string")return e.charCodeAt(0)||0;let t=e.hasOwnProperty(nn)?e[nn]:void 0;return typeof t=="number"?t>=0?t&Cc:Wh:t}function uu(e,t,n){let r=1<>Ic)]&r)}function cu(e,t){return!(e&b.Self)&&!(e&b.Host&&t)}var Je=class{constructor(t,n){this._tNode=t,this._lView=n}get(t,n,r){return _c(this._tNode,this._lView,t,Lr(r),n)}};function Wh(){return new Je(Oe(),pe())}function Ki(e){return Li(()=>{let t=e.prototype.constructor,n=t[yr]||mi(t),r=Object.prototype,o=Object.getPrototypeOf(e.prototype).constructor;for(;o&&o!==r;){let i=o[yr]||mi(o);if(i&&i!==n)return i;o=Object.getPrototypeOf(o)}return i=>new i})}function mi(e){return _u(e)?()=>{let t=mi(re(e));return t&&t()}:xt(e)}function Zh(e,t,n,r,o){let i=e,s=t;for(;i!==null&&s!==null&&s[C]&2048&&!(s[C]&512);){let a=Tc(i,s,n,r|b.Self,we);if(a!==we)return a;let u=i.parent;if(!u){let c=s[Zu];if(c){let l=c.get(n,we,r);if(l!==we)return l}u=xc(s),s=s[hn]}i=u}return o}function xc(e){let t=e[M],n=t.type;return n===2?t.declTNode:n===1?e[ge]:null}function lu(e,t=null,n=null,r){let o=Nc(e,t,n,r);return o.resolveInjectorInitializers(),o}function Nc(e,t=null,n=null,r,o=new Set){let i=[n||Nt,Kf(e)];return r=r||(typeof e=="object"?void 0:X(e)),new sn(i,t||zi(),r||null,o)}var ot=class e{static{this.THROW_IF_NOT_FOUND=rn}static{this.NULL=new Cr}static create(t,n){if(Array.isArray(t))return lu({name:""},n,t,"");{let r=t.name??"";return lu({name:r},t.parent,t.providers,r)}}static{this.\u0275prov=D({token:e,providedIn:"any",factory:()=>_(Fu)})}static{this.__NG_ELEMENT_ID__=-1}};var Qh=new E("");Qh.__NG_ELEMENT_ID__=e=>{let t=Oe();if(t===null)throw new v(204,!1);if(t.type&2)return t.value;if(e&b.Optional)return null;throw new v(204,!1)};var Yh="ngOriginalError";function ei(e){return e[Yh]}var Ac=!0,Rc=(()=>{class e{static{this.__NG_ELEMENT_ID__=Kh}static{this.__NG_ENV_ID__=n=>n}}return e})(),vi=class extends Rc{constructor(t){super(),this._lView=t}onDestroy(t){return rc(this._lView,t),()=>yh(this._lView,t)}};function Kh(){return new vi(pe())}var jt=(()=>{class e{constructor(){this.taskId=0,this.pendingTasks=new Set,this.hasPendingTasks=new z(!1)}get _hasPendingTasks(){return this.hasPendingTasks.value}add(){this._hasPendingTasks||this.hasPendingTasks.next(!0);let n=this.taskId++;return this.pendingTasks.add(n),n}remove(n){this.pendingTasks.delete(n),this.pendingTasks.size===0&&this._hasPendingTasks&&this.hasPendingTasks.next(!1)}ngOnDestroy(){this.pendingTasks.clear(),this._hasPendingTasks&&this.hasPendingTasks.next(!1)}static{this.\u0275prov=D({token:e,providedIn:"root",factory:()=>new e})}}return e})();var yi=class extends W{constructor(t=!1){super(),this.destroyRef=void 0,this.pendingTasks=void 0,this.__isAsync=t,uh()&&(this.destroyRef=h(Rc,{optional:!0})??void 0,this.pendingTasks=h(jt,{optional:!0})??void 0)}emit(t){let n=P(null);try{super.next(t)}finally{P(n)}}subscribe(t,n,r){let o=t,i=n||(()=>null),s=r;if(t&&typeof t=="object"){let u=t;o=u.next?.bind(u),i=u.error?.bind(u),s=u.complete?.bind(u)}this.__isAsync&&(i=this.wrapInTimeout(i),o&&(o=this.wrapInTimeout(o)),s&&(s=this.wrapInTimeout(s)));let a=super.subscribe({next:o,error:i,complete:s});return t instanceof j&&t.add(a),a}wrapInTimeout(t){return n=>{let r=this.pendingTasks?.add();setTimeout(()=>{t(n),r!==void 0&&this.pendingTasks?.remove(r)})}}},Z=yi;function Tr(...e){}function Oc(e){let t,n;function r(){e=Tr;try{n!==void 0&&typeof cancelAnimationFrame=="function"&&cancelAnimationFrame(n),t!==void 0&&clearTimeout(t)}catch{}}return t=setTimeout(()=>{e(),r()}),typeof requestAnimationFrame=="function"&&(n=requestAnimationFrame(()=>{e(),r()})),()=>r()}function du(e){return queueMicrotask(()=>e()),()=>{e=Tr}}var Ji="isAngularZone",xr=Ji+"_ID",Jh=0,V=class e{constructor(t){this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Z(!1),this.onMicrotaskEmpty=new Z(!1),this.onStable=new Z(!1),this.onError=new Z(!1);let{enableLongStackTrace:n=!1,shouldCoalesceEventChangeDetection:r=!1,shouldCoalesceRunChangeDetection:o=!1,scheduleInRootZone:i=Ac}=t;if(typeof Zone>"u")throw new v(908,!1);Zone.assertZonePatched();let s=this;s._nesting=0,s._outer=s._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(s._inner=s._inner.fork(new Zone.TaskTrackingZoneSpec)),n&&Zone.longStackTraceZoneSpec&&(s._inner=s._inner.fork(Zone.longStackTraceZoneSpec)),s.shouldCoalesceEventChangeDetection=!o&&r,s.shouldCoalesceRunChangeDetection=o,s.callbackScheduled=!1,s.scheduleInRootZone=i,tp(s)}static isInAngularZone(){return typeof Zone<"u"&&Zone.current.get(Ji)===!0}static assertInAngularZone(){if(!e.isInAngularZone())throw new v(909,!1)}static assertNotInAngularZone(){if(e.isInAngularZone())throw new v(909,!1)}run(t,n,r){return this._inner.run(t,n,r)}runTask(t,n,r,o){let i=this._inner,s=i.scheduleEventTask("NgZoneEvent: "+o,t,Xh,Tr,Tr);try{return i.runTask(s,n,r)}finally{i.cancelTask(s)}}runGuarded(t,n,r){return this._inner.runGuarded(t,n,r)}runOutsideAngular(t){return this._outer.run(t)}},Xh={};function Xi(e){if(e._nesting==0&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function ep(e){if(e.isCheckStableRunning||e.callbackScheduled)return;e.callbackScheduled=!0;function t(){Oc(()=>{e.callbackScheduled=!1,Di(e),e.isCheckStableRunning=!0,Xi(e),e.isCheckStableRunning=!1})}e.scheduleInRootZone?Zone.root.run(()=>{t()}):e._outer.run(()=>{t()}),Di(e)}function tp(e){let t=()=>{ep(e)},n=Jh++;e._inner=e._inner.fork({name:"angular",properties:{[Ji]:!0,[xr]:n,[xr+n]:!0},onInvokeTask:(r,o,i,s,a,u)=>{if(np(u))return r.invokeTask(i,s,a,u);try{return fu(e),r.invokeTask(i,s,a,u)}finally{(e.shouldCoalesceEventChangeDetection&&s.type==="eventTask"||e.shouldCoalesceRunChangeDetection)&&t(),hu(e)}},onInvoke:(r,o,i,s,a,u,c)=>{try{return fu(e),r.invoke(i,s,a,u,c)}finally{e.shouldCoalesceRunChangeDetection&&!e.callbackScheduled&&!rp(u)&&t(),hu(e)}},onHasTask:(r,o,i,s)=>{r.hasTask(i,s),o===i&&(s.change=="microTask"?(e._hasPendingMicrotasks=s.microTask,Di(e),Xi(e)):s.change=="macroTask"&&(e.hasPendingMacrotasks=s.macroTask))},onHandleError:(r,o,i,s)=>(r.handleError(i,s),e.runOutsideAngular(()=>e.onError.emit(s)),!1)})}function Di(e){e._hasPendingMicrotasks||(e.shouldCoalesceEventChangeDetection||e.shouldCoalesceRunChangeDetection)&&e.callbackScheduled===!0?e.hasPendingMicrotasks=!0:e.hasPendingMicrotasks=!1}function fu(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function hu(e){e._nesting--,Xi(e)}var wi=class{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Z,this.onMicrotaskEmpty=new Z,this.onStable=new Z,this.onError=new Z}run(t,n,r){return t.apply(n,r)}runGuarded(t,n,r){return t.apply(n,r)}runOutsideAngular(t){return t()}runTask(t,n,r,o){return t.apply(n,r)}};function np(e){return Pc(e,"__ignore_ng_zone__")}function rp(e){return Pc(e,"__scheduler_tick__")}function Pc(e,t){return!Array.isArray(e)||e.length!==1?!1:e[0]?.data?.[t]===!0}var Te=class{constructor(){this._console=console}handleError(t){let n=this._findOriginalError(t);this._console.error("ERROR",t),n&&this._console.error("ORIGINAL ERROR",n)}_findOriginalError(t){let n=t&&ei(t);for(;n&&ei(n);)n=ei(n);return n||null}},op=new E("",{providedIn:"root",factory:()=>{let e=h(V),t=h(Te);return n=>e.runOutsideAngular(()=>t.handleError(n))}});function ip(){return es(Oe(),pe())}function es(e,t){return new Wr(Re(e,t))}var Wr=(()=>{class e{constructor(n){this.nativeElement=n}static{this.__NG_ELEMENT_ID__=ip}}return e})();function Fc(e){return(e.flags&128)===128}var kc=new Map,sp=0;function ap(){return sp++}function up(e){kc.set(e[Ur],e)}function Ci(e){kc.delete(e[Ur])}var pu="__ngContext__";function Ot(e,t){Ke(t)?(e[pu]=t[Ur],up(t)):e[pu]=t}function Lc(e){return Vc(e[an])}function jc(e){return Vc(e[he])}function Vc(e){for(;e!==null&&!Ae(e);)e=e[he];return e}var Ii;function $c(e){Ii=e}function cp(){if(Ii!==void 0)return Ii;if(typeof document<"u")return document;throw new v(210,!1)}var ts=new E("",{providedIn:"root",factory:()=>lp}),lp="ng",ns=new E(""),Vt=new E("",{providedIn:"platform",factory:()=>"unknown"});var rs=new E("",{providedIn:"root",factory:()=>cp().body?.querySelector("[ngCspNonce]")?.getAttribute("ngCspNonce")||null});var dp="h",fp="b";var hp=()=>null;function os(e,t,n=!1){return hp(e,t,n)}var Bc=!1,pp=new E("",{providedIn:"root",factory:()=>Bc});function Uc(e){return e instanceof Function?e():e}var it=function(e){return e[e.Important=1]="Important",e[e.DashCase=2]="DashCase",e}(it||{}),gp;function is(e,t){return gp(e,t)}function Mt(e,t,n,r,o){if(r!=null){let i,s=!1;Ae(r)?i=r:Ke(r)&&(s=!0,r=r[Ne]);let a=ze(r);e===0&&n!==null?o==null?Wc(t,n,a):Nr(t,n,a,o||null,!0):e===1&&n!==null?Nr(t,n,a,o||null,!0):e===2?xp(t,a,s):e===3&&t.destroyNode(a),i!=null&&Ap(t,e,i,n,o)}}function mp(e,t){return e.createText(t)}function Hc(e,t,n){return e.createElement(t,n)}function vp(e,t){zc(e,t),t[Ne]=null,t[ge]=null}function yp(e,t,n,r,o,i){r[Ne]=o,r[ge]=t,Zr(e,r,n,1,o,i)}function zc(e,t){t[_e].changeDetectionScheduler?.notify(9),Zr(e,t,t[Ie],2,null,null)}function Dp(e){let t=e[an];if(!t)return ti(e[M],e);for(;t;){let n=null;if(Ke(t))n=t[an];else{let r=t[ie];r&&(n=r)}if(!n){for(;t&&!t[he]&&t!==e;)Ke(t)&&ti(t[M],t),t=t[Q];t===null&&(t=e),Ke(t)&&ti(t[M],t),n=t&&t[he]}t=n}}function wp(e,t,n,r){let o=ie+r,i=n.length;r>0&&(n[o-1][he]=t),r0&&(e[n-1][he]=r[he]);let i=wr(e,ie+t);vp(r[M],r);let s=i[Br];s!==null&&s.detachView(i[M]),r[Q]=null,r[he]=null,r[C]&=-129}return r}function qc(e,t){if(!(t[C]&256)){let n=t[Ie];n.destroyNode&&Zr(e,t,n,3,null,null),Dp(t)}}function ti(e,t){if(t[C]&256)return;let n=P(null);try{t[C]&=-129,t[C]|=256,t[oe]&&xo(t[oe]),Ip(e,t),Cp(e,t),t[M].type===1&&t[Ie].destroy();let r=t[un];if(r!==null&&Ae(t[Q])){r!==t[Q]&&ss(r,t);let o=t[Br];o!==null&&o.detachView(e)}Ci(t)}finally{P(n)}}function Cp(e,t){let n=e.cleanup,r=t[tu];if(n!==null)for(let i=0;i=0?r[s]():r[-s].unsubscribe(),i+=2}else{let s=r[n[i+1]];n[i].call(s)}r!==null&&(t[tu]=null);let o=t[Be];if(o!==null){t[Be]=null;for(let i=0;i-1){let{encapsulation:i}=e.data[r.directiveStart+o];if(i===Ce.None||i===Ce.Emulated)return null}return Re(r,n)}}function Nr(e,t,n,r,o){e.insertBefore(t,n,r,o)}function Wc(e,t,n){e.appendChild(t,n)}function gu(e,t,n,r,o){r!==null?Nr(e,t,n,r,o):Wc(e,t,n)}function Zc(e,t){return e.parentNode(t)}function Sp(e,t){return e.nextSibling(t)}function Mp(e,t,n){return Tp(e,t,n)}function _p(e,t,n){return e.type&40?Re(e,n):null}var Tp=_p,mu;function Qc(e,t,n,r){let o=Ep(e,r,t),i=t[Ie],s=r.parent||t[ge],a=Mp(s,r,t);if(o!=null)if(Array.isArray(n))for(let u=0;uet&&Op(e,t,et,!1),$e(s?2:0,o),n(r,o)}finally{rt(i),$e(s?3:1,o)}}function rl(e,t,n){if(Yu(t)){let r=P(null);try{let o=t.directiveStart,i=t.directiveEnd;for(let s=o;snull;function Up(e,t,n,r,o,i){let s=t?t.injectorIndex:-1,a=0;return Ih()&&(a|=128),{type:n,index:r,insertBeforeIndex:null,injectorIndex:s,directiveStart:-1,directiveEnd:-1,directiveStylingLast:-1,componentOffset:-1,propertyBindings:null,flags:a,providerIndexes:0,value:o,attrs:i,mergedAttrs:null,localNames:null,initialInputs:void 0,inputs:null,outputs:null,tView:null,next:null,prev:null,projectionNext:null,child:null,parent:t,projection:null,styles:null,stylesWithoutHost:null,residualStyles:void 0,classes:null,classesWithoutHost:null,residualClasses:void 0,classBindings:0,styleBindings:0}}function vu(e,t,n,r,o){for(let i in t){if(!t.hasOwnProperty(i))continue;let s=t[i];if(s===void 0)continue;r??={};let a,u=Ue.None;Array.isArray(s)?(a=s[0],u=s[1]):a=s;let c=i;if(o!==null){if(!o.hasOwnProperty(i))continue;c=o[i]}e===0?yu(r,n,c,a,u):yu(r,n,c,a)}return r}function yu(e,t,n,r,o){let i;e.hasOwnProperty(n)?(i=e[n]).push(t,r):i=e[n]=[t,r],o!==void 0&&i.push(o)}function Hp(e,t,n){let r=t.directiveStart,o=t.directiveEnd,i=e.data,s=t.attrs,a=[],u=null,c=null;for(let l=r;l0;){let n=e[--t];if(typeof n=="number"&&n<0)return n}return 0}function Wp(e,t,n,r){let o=n.directiveStart,i=n.directiveEnd;Gi(n)&&eg(t,n,e.data[o+n.componentOffset]),e.firstCreatePass||Ec(n,t),Ot(r,t);let s=n.initialInputs;for(let a=o;a{Gr(e.lView)},consumerOnSignalRead(){this.lView[oe]=this}});function pg(e){let t=e[oe]??Object.create(gg);return t.lView=e,t}var gg=k(g({},Mo),{consumerIsAlwaysLive:!0,consumerMarkedDirty:e=>{let t=nt(e.lView);for(;t&&!fl(t[M]);)t=nt(t);t&&nc(t)},consumerOnSignalRead(){this.lView[oe]=this}});function fl(e){return e.type!==2}var mg=100;function hl(e,t=!0,n=0){let r=e[_e],o=r.rendererFactory,i=!1;i||o.begin?.();try{vg(e,n)}catch(s){throw t&&og(e,s),s}finally{i||(o.end?.(),r.inlineEffectRunner?.flush())}}function vg(e,t){let n=uc();try{iu(!0),_i(e,t);let r=0;for(;zr(e);){if(r===mg)throw new v(103,!1);r++,_i(e,1)}}finally{iu(n)}}function yg(e,t,n,r){let o=t[C];if((o&256)===256)return;let i=!1,s=!1;!i&&t[_e].inlineEffectRunner?.flush(),Zi(t);let a=!0,u=null,c=null;i||(fl(e)?(c=lg(t),u=_o(c)):pa()===null?(a=!1,c=pg(t),u=_o(c)):t[oe]&&(xo(t[oe]),t[oe]=null));try{tc(t),_h(e.bindingStartIndex),n!==null&&nl(e,t,n,2,r);let l=(o&3)===3;if(!i)if(l){let f=e.preOrderCheckHooks;f!==null&&pr(t,f,null)}else{let f=e.preOrderHooks;f!==null&&gr(t,f,0,null),Ko(t,0)}if(s||Dg(t),pl(t,0),e.contentQueries!==null&&ul(e,t),!i)if(l){let f=e.contentCheckHooks;f!==null&&pr(t,f)}else{let f=e.contentHooks;f!==null&&gr(t,f,1),Ko(t,1)}Pp(e,t);let d=e.components;d!==null&&ml(t,d,0);let p=e.viewQuery;if(p!==null&&Mi(2,p,r),!i)if(l){let f=e.viewCheckHooks;f!==null&&pr(t,f)}else{let f=e.viewHooks;f!==null&&gr(t,f,2),Ko(t,2)}if(e.firstUpdatePass===!0&&(e.firstUpdatePass=!1),t[Yo]){for(let f of t[Yo])f();t[Yo]=null}i||(t[C]&=-73)}catch(l){throw i||Gr(t),l}finally{c!==null&&(ga(c,u),a&&fg(c)),Qi()}}function pl(e,t){for(let n=Lc(e);n!==null;n=jc(n))for(let r=ie;r-1&&(Ei(t,r),wr(n,r))}this._attachedToViewContainer=!1}qc(this._lView[M],this._lView)}onDestroy(t){rc(this._lView,t)}markForCheck(){vl(this._cdRefInjectingView||this._lView,4)}detach(){this._lView[C]&=-129}reattach(){fi(this._lView),this._lView[C]|=128}detectChanges(){this._lView[C]|=1024,hl(this._lView,this.notifyErrorHandler)}checkNoChanges(){}attachToViewContainerRef(){if(this._appRef)throw new v(902,!1);this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null;let t=li(this._lView),n=this._lView[un];n!==null&&!t&&ss(n,this._lView),zc(this._lView[M],this._lView)}attachToAppRef(t){if(this._attachedToViewContainer)throw new v(902,!1);this._appRef=t;let n=li(this._lView),r=this._lView[un];r!==null&&!n&&Gc(r,this._lView),fi(this._lView)}};var gb=new RegExp(`^(\\d+)*(${fp}|${dp})*(.*)`);var Cg=()=>null;function wu(e,t){return Cg(e,t)}var Ft=class{},Qr=new E("",{providedIn:"root",factory:()=>!1});var yl=new E(""),Dl=new E(""),Ti=class{},Rr=class{};function Ig(e){let t=Error(`No component factory found for ${X(e)}.`);return t[Eg]=e,t}var Eg="ngComponent";var xi=class{resolveComponentFactory(t){throw Ig(t)}},kt=class{static{this.NULL=new xi}},Lt=class{};var bg=(()=>{class e{static{this.\u0275prov=D({token:e,providedIn:"root",factory:()=>null})}}return e})();function Ni(e,t,n){let r=n?e.styles:null,o=n?e.classes:null,i=0;if(t!==null)for(let s=0;s0&&Kc(e,n,i.join(" "))}}function Ag(e,t,n){let r=e.projection=[];for(let o=0;o{class e{static{this.__NG_ELEMENT_ID__=Og}}return e})();function Og(){let e=Oe();return Fg(e,pe())}var Pg=Yr,wl=class extends Pg{constructor(t,n,r){super(),this._lContainer=t,this._hostTNode=n,this._hostLView=r}get element(){return es(this._hostTNode,this._hostLView)}get injector(){return new Je(this._hostTNode,this._hostLView)}get parentInjector(){let t=Yi(this._hostTNode,this._hostLView);if(wc(t)){let n=_r(t,this._hostLView),r=Mr(t),o=n[M].data[r+8];return new Je(o,n)}else return new Je(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(t){let n=Iu(this._lContainer);return n!==null&&n[t]||null}get length(){return this._lContainer.length-ie}createEmbeddedView(t,n,r){let o,i;typeof r=="number"?o=r:r!=null&&(o=r.index,i=r.injector);let s=wu(this._lContainer,t.ssrId),a=t.createEmbeddedViewImpl(n||{},i,s);return this.insertImpl(a,o,Du(this._hostTNode,s)),a}createComponent(t,n,r,o,i){let s=t&&!ch(t),a;if(s)a=n;else{let m=n||{};a=m.index,r=m.injector,o=m.projectableNodes,i=m.environmentInjector||m.ngModuleRef}let u=s?t:new dn(Xe(t)),c=r||this.parentInjector;if(!i&&u.ngModule==null){let A=(s?c:this.parentInjector).get(se,null);A&&(i=A)}let l=Xe(u.componentType??{}),d=wu(this._lContainer,l?.id??null),p=d?.firstChild??null,f=u.create(c,o,p,i);return this.insertImpl(f.hostView,a,Du(this._hostTNode,d)),f}insert(t,n){return this.insertImpl(t,n,!0)}insertImpl(t,n,r){let o=t._lView;if(vh(o)){let a=this.indexOf(t);if(a!==-1)this.detach(a);else{let u=o[Q],c=new wl(u,u[ge],u[Q]);c.detach(c.indexOf(t))}}let i=this._adjustIndex(n),s=this._lContainer;return ug(s,o,i,r),t.attachToViewContainerRef(),Pu(ni(s),i,t),t}move(t,n){return this.insert(t,n)}indexOf(t){let n=Iu(this._lContainer);return n!==null?n.indexOf(t):-1}remove(t){let n=this._adjustIndex(t,-1),r=Ei(this._lContainer,n);r&&(wr(ni(this._lContainer),n),qc(r[M],r))}detach(t){let n=this._adjustIndex(t,-1),r=Ei(this._lContainer,n);return r&&wr(ni(this._lContainer),n)!=null?new Pt(r):null}_adjustIndex(t,n=0){return t??this.length+n}};function Iu(e){return e[Er]}function ni(e){return e[Er]||(e[Er]=[])}function Fg(e,t){let n,r=t[e.index];return Ae(r)?n=r:(n=rg(r,t,null,e),t[e.index]=n,ds(t,n)),Lg(n,t,e,r),new wl(n,e,t)}function kg(e,t){let n=e[Ie],r=n.createComment(""),o=Re(t,e),i=Zc(n,o);return Nr(n,i,r,Sp(n,o),!1),r}var Lg=jg;function jg(e,t,n,r){if(e[tt])return;let o;n.type&8?o=ze(r):o=kg(t,n),e[tt]=o}var Eu=new Set;function fs(e){Eu.has(e)||(Eu.add(e),performance?.mark?.("mark_feature_usage",{detail:{feature:e}}))}var Ge=class{},fn=class{};var Ri=class extends Ge{constructor(t,n,r,o=!0){super(),this.ngModuleType=t,this._parent=n,this._bootstrapComponents=[],this.destroyCbs=[],this.componentFactoryResolver=new Or(this);let i=Uu(t);this._bootstrapComponents=Uc(i.bootstrap),this._r3Injector=Nc(t,n,[{provide:Ge,useValue:this},{provide:kt,useValue:this.componentFactoryResolver},...r],X(t),new Set(["environment"])),o&&this.resolveInjectorInitializers()}resolveInjectorInitializers(){this._r3Injector.resolveInjectorInitializers(),this.instance=this._r3Injector.get(this.ngModuleType)}get injector(){return this._r3Injector}destroy(){let t=this._r3Injector;!t.destroyed&&t.destroy(),this.destroyCbs.forEach(n=>n()),this.destroyCbs=null}onDestroy(t){this.destroyCbs.push(t)}},Oi=class extends fn{constructor(t){super(),this.moduleType=t}create(t){return new Ri(this.moduleType,t,[])}};var Pr=class extends Ge{constructor(t){super(),this.componentFactoryResolver=new Or(this),this.instance=null;let n=new sn([...t.providers,{provide:Ge,useValue:this},{provide:kt,useValue:this.componentFactoryResolver}],t.parent||zi(),t.debugName,new Set(["environment"]));this.injector=n,t.runEnvironmentInitializers&&n.resolveInjectorInitializers()}destroy(){this.injector.destroy()}onDestroy(t){this.injector.onDestroy(t)}};function hs(e,t,n=null){return new Pr({providers:e,parent:t,debugName:n,runEnvironmentInitializers:!0}).injector}function Vg(e){return(e.flags&32)===32}var tn=function(e){return e[e.EarlyRead=0]="EarlyRead",e[e.Write=1]="Write",e[e.MixedReadWrite=2]="MixedReadWrite",e[e.Read=3]="Read",e}(tn||{}),$g=(()=>{class e{constructor(){this.impl=null}execute(){this.impl?.execute()}static{this.\u0275prov=D({token:e,providedIn:"root",factory:()=>new e})}}return e})(),bu=class e{constructor(){this.ngZone=h(V),this.scheduler=h(Ft),this.errorHandler=h(Te,{optional:!0}),this.sequences=new Set,this.deferredRegistrations=new Set,this.executing=!1}static{this.PHASES=[tn.EarlyRead,tn.Write,tn.MixedReadWrite,tn.Read]}execute(){this.executing=!0;for(let t of e.PHASES)for(let n of this.sequences)if(!(n.erroredOrDestroyed||!n.hooks[t]))try{n.pipelinedValue=this.ngZone.runOutsideAngular(()=>n.hooks[t](n.pipelinedValue))}catch(r){n.erroredOrDestroyed=!0,this.errorHandler?.handleError(r)}this.executing=!1;for(let t of this.sequences)t.afterRun(),t.once&&(this.sequences.delete(t),t.destroy());for(let t of this.deferredRegistrations)this.sequences.add(t);this.deferredRegistrations.size>0&&this.scheduler.notify(7),this.deferredRegistrations.clear()}register(t){this.executing?this.deferredRegistrations.add(t):(this.sequences.add(t),this.scheduler.notify(6))}unregister(t){this.executing&&this.sequences.has(t)?(t.erroredOrDestroyed=!0,t.pipelinedValue=void 0,t.once=!0):(this.sequences.delete(t),this.deferredRegistrations.delete(t))}static{this.\u0275prov=D({token:e,providedIn:"root",factory:()=>new e})}};function Su(e,t,n,r,o){let i=t.inputs,s=o?"class":"style";cl(e,n,i[s],s,r)}function Bg(e,t,n,r,o,i){let s=t.consts,a=ou(s,o),u=ls(t,e,2,r,a);return zp(t,n,u,ou(s,i)),u.attrs!==null&&Ni(u,u.attrs,!1),u.mergedAttrs!==null&&Ni(u,u.mergedAttrs,!0),t.queries!==null&&t.queries.elementStart(t,u),u}function mn(e,t,n,r){let o=pe(),i=Wi(),s=et+e,a=o[Ie],u=i.firstCreatePass?Bg(s,i,o,t,n,r):i.data[s],c=Ug(i,o,u,a,t,e);o[s]=c;let l=lh(u);return qr(u,!0),Jc(a,c,u),!Vg(u)&&mc()&&Qc(i,o,c,u),Dh()===0&&Ot(c,o),wh(),l&&(kp(i,o,u),rl(i,u,o)),r!==null&&Lp(o,u),mn}function vn(){let e=Oe();ac()?Mh():(e=e.parent,qr(e,!1));let t=e;Eh(t)&&bh(),Ch();let n=Wi();return n.firstCreatePass&&(yc(n,e),Yu(e)&&n.queries.elementEnd(e)),t.classesWithoutHost!=null&&Lh(t)&&Su(n,t,pe(),t.classesWithoutHost,!0),t.stylesWithoutHost!=null&&jh(t)&&Su(n,t,pe(),t.stylesWithoutHost,!1),vn}function yn(e,t,n,r){return mn(e,t,n,r),vn(),yn}var Ug=(e,t,n,r,o,i)=>(vc(!0),Hc(r,o,Oh()));var Fr="en-US";var Hg=Fr;function zg(e){typeof e=="string"&&(Hg=e.toLowerCase().replace(/_/g,"-"))}function ps(e,t=""){let n=pe(),r=Wi(),o=e+et,i=r.firstCreatePass?ls(r,o,1,t,null):r.data[o],s=Gg(r,n,i,t,e);n[o]=s,mc()&&Qc(r,n,s,i),qr(i,!1)}var Gg=(e,t,n,r,o)=>(vc(!0),mp(t[Ie],r));var qg=(()=>{class e{constructor(n){this._injector=n,this.cachedInjectors=new Map}getOrCreateStandaloneInjector(n){if(!n.standalone)return null;if(!this.cachedInjectors.has(n)){let r=Gu(!1,n.type),o=r.length>0?hs([r],this._injector,`Standalone[${n.type.name}]`):null;this.cachedInjectors.set(n,o)}return this.cachedInjectors.get(n)}ngOnDestroy(){try{for(let n of this.cachedInjectors.values())n!==null&&n.destroy()}finally{this.cachedInjectors.clear()}}static{this.\u0275prov=D({token:e,providedIn:"environment",factory:()=>new e(_(se))})}}return e})();function Kr(e){fs("NgStandalone"),e.getStandaloneInjector=t=>t.get(qg).getOrCreateStandaloneInjector(e)}var Jr=(()=>{class e{log(n){console.log(n)}warn(n){console.warn(n)}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=D({token:e,factory:e.\u0275fac,providedIn:"platform"})}}return e})();var Cl=new E("");function Dn(e){return!!e&&typeof e.then=="function"}function Il(e){return!!e&&typeof e.subscribe=="function"}var El=new E(""),bl=(()=>{class e{constructor(){this.initialized=!1,this.done=!1,this.donePromise=new Promise((n,r)=>{this.resolve=n,this.reject=r}),this.appInits=h(El,{optional:!0})??[]}runInitializers(){if(this.initialized)return;let n=[];for(let o of this.appInits){let i=o();if(Dn(i))n.push(i);else if(Il(i)){let s=new Promise((a,u)=>{i.subscribe({complete:a,error:u})});n.push(s)}}let r=()=>{this.done=!0,this.resolve()};Promise.all(n).then(()=>{r()}).catch(o=>{this.reject(o)}),n.length===0&&r(),this.initialized=!0}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=D({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})(),gs=new E("");function Wg(){ma(()=>{throw new v(600,!1)})}function Zg(e){return e.isBoundToModule}var Qg=10;function Yg(e,t,n){try{let r=n();return Dn(r)?r.catch(o=>{throw t.runOutsideAngular(()=>e.handleError(o)),o}):r}catch(r){throw t.runOutsideAngular(()=>e.handleError(r)),r}}var st=(()=>{class e{constructor(){this._bootstrapListeners=[],this._runningTick=!1,this._destroyed=!1,this._destroyListeners=[],this._views=[],this.internalErrorHandler=h(op),this.afterRenderManager=h($g),this.zonelessEnabled=h(Qr),this.dirtyFlags=0,this.deferredDirtyFlags=0,this.externalTestViews=new Set,this.beforeRender=new W,this.afterTick=new W,this.componentTypes=[],this.components=[],this.isStable=h(jt).hasPendingTasks.pipe(S(n=>!n)),this._injector=h(se)}get allViews(){return[...this.externalTestViews.keys(),...this._views]}get destroyed(){return this._destroyed}whenStable(){let n;return new Promise(r=>{n=this.isStable.subscribe({next:o=>{o&&r()}})}).finally(()=>{n.unsubscribe()})}get injector(){return this._injector}bootstrap(n,r){let o=n instanceof Rr;if(!this._injector.get(bl).done){let p=!o&&Bu(n),f=!1;throw new v(405,f)}let s;o?s=n:s=this._injector.get(kt).resolveComponentFactory(n),this.componentTypes.push(s.componentType);let a=Zg(s)?void 0:this._injector.get(Ge),u=r||s.selector,c=s.create(ot.NULL,[],u,a),l=c.location.nativeElement,d=c.injector.get(Cl,null);return d?.registerApplication(l),c.onDestroy(()=>{this.detachView(c.hostView),mr(this.components,c),d?.unregisterApplication(l)}),this._loadComponent(c),c}tick(){this.zonelessEnabled||(this.dirtyFlags|=1),this._tick()}_tick(){if(this._runningTick)throw new v(101,!1);let n=P(null);try{this._runningTick=!0,this.synchronize()}catch(r){this.internalErrorHandler(r)}finally{this._runningTick=!1,P(n),this.afterTick.next()}}synchronize(){let n=null;this._injector.destroyed||(n=this._injector.get(Lt,null,{optional:!0})),this.dirtyFlags|=this.deferredDirtyFlags,this.deferredDirtyFlags=0;let r=0;for(;this.dirtyFlags!==0&&r++zr(n))){this.dirtyFlags|=2;return}else this.dirtyFlags&=-8}attachView(n){let r=n;this._views.push(r),r.attachToAppRef(this)}detachView(n){let r=n;mr(this._views,r),r.detachFromAppRef()}_loadComponent(n){this.attachView(n.hostView),this.tick(),this.components.push(n);let r=this._injector.get(gs,[]);[...this._bootstrapListeners,...r].forEach(o=>o(n))}ngOnDestroy(){if(!this._destroyed)try{this._destroyListeners.forEach(n=>n()),this._views.slice().forEach(n=>n.destroy())}finally{this._destroyed=!0,this._views=[],this._bootstrapListeners=[],this._destroyListeners=[]}}onDestroy(n){return this._destroyListeners.push(n),()=>mr(this._destroyListeners,n)}destroy(){if(this._destroyed)throw new v(406,!1);let n=this._injector;n.destroy&&!n.destroyed&&n.destroy()}get viewCount(){return this._views.length}warnIfDestroyed(){}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=D({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();function mr(e,t){let n=e.indexOf(t);n>-1&&e.splice(n,1)}function Kg(e,t,n,r){if(!n&&!zr(e))return;hl(e,t,n&&!r?0:1)}var Pi=class{constructor(t,n){this.ngModuleFactory=t,this.componentFactories=n}},ms=(()=>{class e{compileModuleSync(n){return new Oi(n)}compileModuleAsync(n){return Promise.resolve(this.compileModuleSync(n))}compileModuleAndAllComponentsSync(n){let r=this.compileModuleSync(n),o=Uu(n),i=Uc(o.declarations).reduce((s,a)=>{let u=Xe(a);return u&&s.push(new dn(u)),s},[]);return new Pi(r,i)}compileModuleAndAllComponentsAsync(n){return Promise.resolve(this.compileModuleAndAllComponentsSync(n))}clearCache(){}clearCacheFor(n){}getModuleId(n){}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=D({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();var Jg=(()=>{class e{constructor(){this.zone=h(V),this.changeDetectionScheduler=h(Ft),this.applicationRef=h(st)}initialize(){this._onMicrotaskEmptySubscription||(this._onMicrotaskEmptySubscription=this.zone.onMicrotaskEmpty.subscribe({next:()=>{this.changeDetectionScheduler.runningTick||this.zone.run(()=>{this.applicationRef.tick()})}}))}ngOnDestroy(){this._onMicrotaskEmptySubscription?.unsubscribe()}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=D({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})(),Xg=new E("",{factory:()=>!1});function Sl({ngZoneFactory:e,ignoreChangesOutsideZone:t,scheduleInRootZone:n}){return e??=()=>new V(k(g({},_l()),{scheduleInRootZone:n})),[{provide:V,useFactory:e},{provide:At,multi:!0,useFactory:()=>{let r=h(Jg,{optional:!0});return()=>r.initialize()}},{provide:At,multi:!0,useFactory:()=>{let r=h(em);return()=>{r.initialize()}}},t===!0?{provide:yl,useValue:!0}:[],{provide:Dl,useValue:n??Ac}]}function Ml(e){let t=e?.ignoreChangesOutsideZone,n=e?.scheduleInRootZone,r=Sl({ngZoneFactory:()=>{let o=_l(e);return o.scheduleInRootZone=n,o.shouldCoalesceEventChangeDetection&&fs("NgZone_CoalesceEvent"),new V(o)},ignoreChangesOutsideZone:t,scheduleInRootZone:n});return Vr([{provide:Xg,useValue:!0},{provide:Qr,useValue:!1},r])}function _l(e){return{enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:e?.eventCoalescing??!1,shouldCoalesceRunChangeDetection:e?.runCoalescing??!1}}var em=(()=>{class e{constructor(){this.subscription=new j,this.initialized=!1,this.zone=h(V),this.pendingTasks=h(jt)}initialize(){if(this.initialized)return;this.initialized=!0;let n=null;!this.zone.isStable&&!this.zone.hasPendingMacrotasks&&!this.zone.hasPendingMicrotasks&&(n=this.pendingTasks.add()),this.zone.runOutsideAngular(()=>{this.subscription.add(this.zone.onStable.subscribe(()=>{V.assertNotInAngularZone(),queueMicrotask(()=>{n!==null&&!this.zone.hasPendingMacrotasks&&!this.zone.hasPendingMicrotasks&&(this.pendingTasks.remove(n),n=null)})}))}),this.subscription.add(this.zone.onUnstable.subscribe(()=>{V.assertInAngularZone(),n??=this.pendingTasks.add()}))}ngOnDestroy(){this.subscription.unsubscribe()}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=D({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();var tm=(()=>{class e{constructor(){this.appRef=h(st),this.taskService=h(jt),this.ngZone=h(V),this.zonelessEnabled=h(Qr),this.disableScheduling=h(yl,{optional:!0})??!1,this.zoneIsDefined=typeof Zone<"u"&&!!Zone.root.run,this.schedulerTickApplyArgs=[{data:{__scheduler_tick__:!0}}],this.subscriptions=new j,this.angularZoneId=this.zoneIsDefined?this.ngZone._inner?.get(xr):null,this.scheduleInRootZone=!this.zonelessEnabled&&this.zoneIsDefined&&(h(Dl,{optional:!0})??!1),this.cancelScheduledCallback=null,this.useMicrotaskScheduler=!1,this.runningTick=!1,this.pendingRenderTaskId=null,this.subscriptions.add(this.appRef.afterTick.subscribe(()=>{this.runningTick||this.cleanup()})),this.subscriptions.add(this.ngZone.onUnstable.subscribe(()=>{this.runningTick||this.cleanup()})),this.disableScheduling||=!this.zonelessEnabled&&(this.ngZone instanceof wi||!this.zoneIsDefined)}notify(n){if(!this.zonelessEnabled&&n===5)return;switch(n){case 0:{this.appRef.dirtyFlags|=2;break}case 3:case 2:case 4:case 5:case 1:{this.appRef.dirtyFlags|=4;break}case 7:{this.appRef.deferredDirtyFlags|=8;break}case 9:case 8:case 6:case 10:default:this.appRef.dirtyFlags|=8}if(!this.shouldScheduleTick())return;let r=this.useMicrotaskScheduler?du:Oc;this.pendingRenderTaskId=this.taskService.add(),this.scheduleInRootZone?this.cancelScheduledCallback=Zone.root.run(()=>r(()=>this.tick())):this.cancelScheduledCallback=this.ngZone.runOutsideAngular(()=>r(()=>this.tick()))}shouldScheduleTick(){return!(this.disableScheduling||this.pendingRenderTaskId!==null||this.runningTick||this.appRef._runningTick||!this.zonelessEnabled&&this.zoneIsDefined&&Zone.current.get(xr+this.angularZoneId))}tick(){if(this.runningTick||this.appRef.destroyed)return;!this.zonelessEnabled&&this.appRef.dirtyFlags&7&&(this.appRef.dirtyFlags|=1);let n=this.taskService.add();try{this.ngZone.run(()=>{this.runningTick=!0,this.appRef._tick()},void 0,this.schedulerTickApplyArgs)}catch(r){throw this.taskService.remove(n),r}finally{this.cleanup()}this.useMicrotaskScheduler=!0,du(()=>{this.useMicrotaskScheduler=!1,this.taskService.remove(n)})}ngOnDestroy(){this.subscriptions.unsubscribe(),this.cleanup()}cleanup(){if(this.runningTick=!1,this.cancelScheduledCallback?.(),this.cancelScheduledCallback=null,this.pendingRenderTaskId!==null){let n=this.pendingRenderTaskId;this.pendingRenderTaskId=null,this.taskService.remove(n)}}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=D({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();function nm(){return typeof $localize<"u"&&$localize.locale||Fr}var vs=new E("",{providedIn:"root",factory:()=>h(vs,b.Optional|b.SkipSelf)||nm()});var Fi=new E("");function fr(e){return!e.moduleRef}function rm(e){let t=fr(e)?e.r3Injector:e.moduleRef.injector,n=t.get(V);return n.run(()=>{fr(e)?e.r3Injector.resolveInjectorInitializers():e.moduleRef.resolveInjectorInitializers();let r=t.get(Te,null),o;if(n.runOutsideAngular(()=>{o=n.onError.subscribe({next:i=>{r.handleError(i)}})}),fr(e)){let i=()=>t.destroy(),s=e.platformInjector.get(Fi);s.add(i),t.onDestroy(()=>{o.unsubscribe(),s.delete(i)})}else{let i=()=>e.moduleRef.destroy(),s=e.platformInjector.get(Fi);s.add(i),e.moduleRef.onDestroy(()=>{mr(e.allPlatformModules,e.moduleRef),o.unsubscribe(),s.delete(i)})}return Yg(r,n,()=>{let i=t.get(bl);return i.runInitializers(),i.donePromise.then(()=>{let s=t.get(vs,Fr);if(zg(s||Fr),fr(e)){let a=t.get(st);return e.rootComponent!==void 0&&a.bootstrap(e.rootComponent),a}else return om(e.moduleRef,e.allPlatformModules),e.moduleRef})})})}function om(e,t){let n=e.injector.get(st);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(r=>n.bootstrap(r));else if(e.instance.ngDoBootstrap)e.instance.ngDoBootstrap(n);else throw new v(-403,!1);t.push(e)}var vr=null;function im(e=[],t){return ot.create({name:t,providers:[{provide:$r,useValue:"platform"},{provide:Fi,useValue:new Set([()=>vr=null])},...e]})}function sm(e=[]){if(vr)return vr;let t=im(e);return vr=t,Wg(),am(t),t}function am(e){e.get(ns,null)?.forEach(n=>n())}var wn=(()=>{class e{static{this.__NG_ELEMENT_ID__=um}}return e})();function um(e){return cm(Oe(),pe(),(e&16)===16)}function cm(e,t,n){if(Gi(e)&&!n){let r=gn(e.index,t);return new Pt(r,r)}else if(e.type&175){let r=t[Ee];return new Pt(r,t)}return null}function Tl(e){try{let{rootComponent:t,appProviders:n,platformProviders:r}=e,o=sm(r),i=[Sl({}),{provide:Ft,useExisting:tm},...n||[]],s=new Pr({providers:i,parent:o,debugName:"",runEnvironmentInitializers:!1});return rm({r3Injector:s.injector,platformInjector:o,rootComponent:t})}catch(t){return Promise.reject(t)}}var Fl=null;function $t(){return Fl}function kl(e){Fl??=e}var eo=class{};var ae=new E(""),Ll=(()=>{class e{historyGo(n){throw new Error("")}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=D({token:e,factory:()=>h(pm),providedIn:"platform"})}}return e})();var pm=(()=>{class e extends Ll{constructor(){super(),this._doc=h(ae),this._location=window.location,this._history=window.history}getBaseHrefFromDOM(){return $t().getBaseHref(this._doc)}onPopState(n){let r=$t().getGlobalEventTarget(this._doc,"window");return r.addEventListener("popstate",n,!1),()=>r.removeEventListener("popstate",n)}onHashChange(n){let r=$t().getGlobalEventTarget(this._doc,"window");return r.addEventListener("hashchange",n,!1),()=>r.removeEventListener("hashchange",n)}get href(){return this._location.href}get protocol(){return this._location.protocol}get hostname(){return this._location.hostname}get port(){return this._location.port}get pathname(){return this._location.pathname}get search(){return this._location.search}get hash(){return this._location.hash}set pathname(n){this._location.pathname=n}pushState(n,r,o){this._history.pushState(n,r,o)}replaceState(n,r,o){this._history.replaceState(n,r,o)}forward(){this._history.forward()}back(){this._history.back()}historyGo(n=0){this._history.go(n)}getState(){return this._history.state}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=D({token:e,factory:()=>new e,providedIn:"platform"})}}return e})();function jl(e,t){if(e.length==0)return t;if(t.length==0)return e;let n=0;return e.endsWith("/")&&n++,t.startsWith("/")&&n++,n==2?e+t.substring(1):n==1?e+t:e+"/"+t}function xl(e){let t=e.match(/#|\?|$/),n=t&&t.index||e.length,r=n-(e[n-1]==="/"?1:0);return e.slice(0,r)+e.slice(n)}function at(e){return e&&e[0]!=="?"?"?"+e:e}var no=(()=>{class e{historyGo(n){throw new Error("")}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=D({token:e,factory:()=>h(Vl),providedIn:"root"})}}return e})(),gm=new E(""),Vl=(()=>{class e extends no{constructor(n,r){super(),this._platformLocation=n,this._removeListenerFns=[],this._baseHref=r??this._platformLocation.getBaseHrefFromDOM()??h(ae).location?.origin??""}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(n){this._removeListenerFns.push(this._platformLocation.onPopState(n),this._platformLocation.onHashChange(n))}getBaseHref(){return this._baseHref}prepareExternalUrl(n){return jl(this._baseHref,n)}path(n=!1){let r=this._platformLocation.pathname+at(this._platformLocation.search),o=this._platformLocation.hash;return o&&n?`${r}${o}`:r}pushState(n,r,o,i){let s=this.prepareExternalUrl(o+at(i));this._platformLocation.pushState(n,r,s)}replaceState(n,r,o,i){let s=this.prepareExternalUrl(o+at(i));this._platformLocation.replaceState(n,r,s)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(n=0){this._platformLocation.historyGo?.(n)}static{this.\u0275fac=function(r){return new(r||e)(_(Ll),_(gm,8))}}static{this.\u0275prov=D({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();var Cn=(()=>{class e{constructor(n){this._subject=new Z,this._urlChangeListeners=[],this._urlChangeSubscription=null,this._locationStrategy=n;let r=this._locationStrategy.getBaseHref();this._basePath=ym(xl(Nl(r))),this._locationStrategy.onPopState(o=>{this._subject.emit({url:this.path(!0),pop:!0,state:o.state,type:o.type})})}ngOnDestroy(){this._urlChangeSubscription?.unsubscribe(),this._urlChangeListeners=[]}path(n=!1){return this.normalize(this._locationStrategy.path(n))}getState(){return this._locationStrategy.getState()}isCurrentPathEqualTo(n,r=""){return this.path()==this.normalize(n+at(r))}normalize(n){return e.stripTrailingSlash(vm(this._basePath,Nl(n)))}prepareExternalUrl(n){return n&&n[0]!=="/"&&(n="/"+n),this._locationStrategy.prepareExternalUrl(n)}go(n,r="",o=null){this._locationStrategy.pushState(o,"",n,r),this._notifyUrlChangeListeners(this.prepareExternalUrl(n+at(r)),o)}replaceState(n,r="",o=null){this._locationStrategy.replaceState(o,"",n,r),this._notifyUrlChangeListeners(this.prepareExternalUrl(n+at(r)),o)}forward(){this._locationStrategy.forward()}back(){this._locationStrategy.back()}historyGo(n=0){this._locationStrategy.historyGo?.(n)}onUrlChange(n){return this._urlChangeListeners.push(n),this._urlChangeSubscription??=this.subscribe(r=>{this._notifyUrlChangeListeners(r.url,r.state)}),()=>{let r=this._urlChangeListeners.indexOf(n);this._urlChangeListeners.splice(r,1),this._urlChangeListeners.length===0&&(this._urlChangeSubscription?.unsubscribe(),this._urlChangeSubscription=null)}}_notifyUrlChangeListeners(n="",r){this._urlChangeListeners.forEach(o=>o(n,r))}subscribe(n,r,o){return this._subject.subscribe({next:n,error:r,complete:o})}static{this.normalizeQueryParams=at}static{this.joinWithSlash=jl}static{this.stripTrailingSlash=xl}static{this.\u0275fac=function(r){return new(r||e)(_(no))}}static{this.\u0275prov=D({token:e,factory:()=>mm(),providedIn:"root"})}}return e})();function mm(){return new Cn(_(no))}function vm(e,t){if(!e||!t.startsWith(e))return t;let n=t.substring(e.length);return n===""||["/",";","?","#"].includes(n[0])?n:t}function Nl(e){return e.replace(/\/index.html$/,"")}function ym(e){if(new RegExp("^(https?:)?//").test(e)){let[,n]=e.split(/\/\/[^\/]+/);return n}return e}function $l(e,t){t=encodeURIComponent(t);for(let n of e.split(";")){let r=n.indexOf("="),[o,i]=r==-1?[n,""]:[n.slice(0,r),n.slice(r+1)];if(o.trim()===t)return decodeURIComponent(i)}return null}var Bl="browser",Dm="server";function ys(e){return e===Dm}var to=class{};var Cs=class extends eo{constructor(){super(...arguments),this.supportsDOMEvents=!0}},Is=class e extends Cs{static makeCurrent(){kl(new e)}onAndCancel(t,n,r){return t.addEventListener(n,r),()=>{t.removeEventListener(n,r)}}dispatchEvent(t,n){t.dispatchEvent(n)}remove(t){t.remove()}createElement(t,n){return n=n||this.getDefaultDocument(),n.createElement(t)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(t){return t.nodeType===Node.ELEMENT_NODE}isShadowRoot(t){return t instanceof DocumentFragment}getGlobalEventTarget(t,n){return n==="window"?window:n==="document"?t:n==="body"?t.body:null}getBaseHref(t){let n=Cm();return n==null?null:Im(n)}resetBaseElement(){In=null}getUserAgent(){return window.navigator.userAgent}getCookie(t){return $l(document.cookie,t)}},In=null;function Cm(){return In=In||document.querySelector("base"),In?In.getAttribute("href"):null}function Im(e){return new URL(e,document.baseURI).pathname}var Em=(()=>{class e{build(){return new XMLHttpRequest}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=D({token:e,factory:e.\u0275fac})}}return e})(),Es=new E(""),Gl=(()=>{class e{constructor(n,r){this._zone=r,this._eventNameToPlugin=new Map,n.forEach(o=>{o.manager=this}),this._plugins=n.slice().reverse()}addEventListener(n,r,o){return this._findPluginFor(r).addEventListener(n,r,o)}getZone(){return this._zone}_findPluginFor(n){let r=this._eventNameToPlugin.get(n);if(r)return r;if(r=this._plugins.find(i=>i.supports(n)),!r)throw new v(5101,!1);return this._eventNameToPlugin.set(n,r),r}static{this.\u0275fac=function(r){return new(r||e)(_(Es),_(V))}}static{this.\u0275prov=D({token:e,factory:e.\u0275fac})}}return e})(),ro=class{constructor(t){this._doc=t}},Ds="ng-app-id",ql=(()=>{class e{constructor(n,r,o,i={}){this.doc=n,this.appId=r,this.nonce=o,this.platformId=i,this.styleRef=new Map,this.hostNodes=new Set,this.styleNodesInDOM=this.collectServerRenderedStyles(),this.platformIsServer=ys(i),this.resetHostNodes()}addStyles(n){for(let r of n)this.changeUsageCount(r,1)===1&&this.onStyleAdded(r)}removeStyles(n){for(let r of n)this.changeUsageCount(r,-1)<=0&&this.onStyleRemoved(r)}ngOnDestroy(){let n=this.styleNodesInDOM;n&&(n.forEach(r=>r.remove()),n.clear());for(let r of this.getAllStyles())this.onStyleRemoved(r);this.resetHostNodes()}addHost(n){this.hostNodes.add(n);for(let r of this.getAllStyles())this.addStyleToHost(n,r)}removeHost(n){this.hostNodes.delete(n)}getAllStyles(){return this.styleRef.keys()}onStyleAdded(n){for(let r of this.hostNodes)this.addStyleToHost(r,n)}onStyleRemoved(n){let r=this.styleRef;r.get(n)?.elements?.forEach(o=>o.remove()),r.delete(n)}collectServerRenderedStyles(){let n=this.doc.head?.querySelectorAll(`style[${Ds}="${this.appId}"]`);if(n?.length){let r=new Map;return n.forEach(o=>{o.textContent!=null&&r.set(o.textContent,o)}),r}return null}changeUsageCount(n,r){let o=this.styleRef;if(o.has(n)){let i=o.get(n);return i.usage+=r,i.usage}return o.set(n,{usage:r,elements:[]}),r}getStyleElement(n,r){let o=this.styleNodesInDOM,i=o?.get(r);if(i?.parentNode===n)return o.delete(r),i.removeAttribute(Ds),i;{let s=this.doc.createElement("style");return this.nonce&&s.setAttribute("nonce",this.nonce),s.textContent=r,this.platformIsServer&&s.setAttribute(Ds,this.appId),n.appendChild(s),s}}addStyleToHost(n,r){let o=this.getStyleElement(n,r),i=this.styleRef,s=i.get(r)?.elements;s?s.push(o):i.set(r,{elements:[o],usage:1})}resetHostNodes(){let n=this.hostNodes;n.clear(),n.add(this.doc.head)}static{this.\u0275fac=function(r){return new(r||e)(_(ae),_(ts),_(rs,8),_(Vt))}}static{this.\u0275prov=D({token:e,factory:e.\u0275fac})}}return e})(),ws={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/",math:"http://www.w3.org/1998/Math/MathML"},Ss=/%COMP%/g,Wl="%COMP%",bm=`_nghost-${Wl}`,Sm=`_ngcontent-${Wl}`,Mm=!0,_m=new E("",{providedIn:"root",factory:()=>Mm});function Tm(e){return Sm.replace(Ss,e)}function xm(e){return bm.replace(Ss,e)}function Zl(e,t){return t.map(n=>n.replace(Ss,e))}var Ul=(()=>{class e{constructor(n,r,o,i,s,a,u,c=null){this.eventManager=n,this.sharedStylesHost=r,this.appId=o,this.removeStylesOnCompDestroy=i,this.doc=s,this.platformId=a,this.ngZone=u,this.nonce=c,this.rendererByCompId=new Map,this.platformIsServer=ys(a),this.defaultRenderer=new En(n,s,u,this.platformIsServer)}createRenderer(n,r){if(!n||!r)return this.defaultRenderer;this.platformIsServer&&r.encapsulation===Ce.ShadowDom&&(r=k(g({},r),{encapsulation:Ce.Emulated}));let o=this.getOrCreateRenderer(n,r);return o instanceof oo?o.applyToHost(n):o instanceof bn&&o.applyStyles(),o}getOrCreateRenderer(n,r){let o=this.rendererByCompId,i=o.get(r.id);if(!i){let s=this.doc,a=this.ngZone,u=this.eventManager,c=this.sharedStylesHost,l=this.removeStylesOnCompDestroy,d=this.platformIsServer;switch(r.encapsulation){case Ce.Emulated:i=new oo(u,c,r,this.appId,l,s,a,d);break;case Ce.ShadowDom:return new bs(u,c,n,r,s,a,this.nonce,d);default:i=new bn(u,c,r,l,s,a,d);break}o.set(r.id,i)}return i}ngOnDestroy(){this.rendererByCompId.clear()}static{this.\u0275fac=function(r){return new(r||e)(_(Gl),_(ql),_(ts),_(_m),_(ae),_(Vt),_(V),_(rs))}}static{this.\u0275prov=D({token:e,factory:e.\u0275fac})}}return e})(),En=class{constructor(t,n,r,o){this.eventManager=t,this.doc=n,this.ngZone=r,this.platformIsServer=o,this.data=Object.create(null),this.throwOnSyntheticProps=!0,this.destroyNode=null}destroy(){}createElement(t,n){return n?this.doc.createElementNS(ws[n]||n,t):this.doc.createElement(t)}createComment(t){return this.doc.createComment(t)}createText(t){return this.doc.createTextNode(t)}appendChild(t,n){(Hl(t)?t.content:t).appendChild(n)}insertBefore(t,n,r){t&&(Hl(t)?t.content:t).insertBefore(n,r)}removeChild(t,n){n.remove()}selectRootElement(t,n){let r=typeof t=="string"?this.doc.querySelector(t):t;if(!r)throw new v(-5104,!1);return n||(r.textContent=""),r}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,n,r,o){if(o){n=o+":"+n;let i=ws[o];i?t.setAttributeNS(i,n,r):t.setAttribute(n,r)}else t.setAttribute(n,r)}removeAttribute(t,n,r){if(r){let o=ws[r];o?t.removeAttributeNS(o,n):t.removeAttribute(`${r}:${n}`)}else t.removeAttribute(n)}addClass(t,n){t.classList.add(n)}removeClass(t,n){t.classList.remove(n)}setStyle(t,n,r,o){o&(it.DashCase|it.Important)?t.style.setProperty(n,r,o&it.Important?"important":""):t.style[n]=r}removeStyle(t,n,r){r&it.DashCase?t.style.removeProperty(n):t.style[n]=""}setProperty(t,n,r){t!=null&&(t[n]=r)}setValue(t,n){t.nodeValue=n}listen(t,n,r){if(typeof t=="string"&&(t=$t().getGlobalEventTarget(this.doc,t),!t))throw new Error(`Unsupported event target ${t} for event ${n}`);return this.eventManager.addEventListener(t,n,this.decoratePreventDefault(r))}decoratePreventDefault(t){return n=>{if(n==="__ngUnwrap__")return t;(this.platformIsServer?this.ngZone.runGuarded(()=>t(n)):t(n))===!1&&n.preventDefault()}}};function Hl(e){return e.tagName==="TEMPLATE"&&e.content!==void 0}var bs=class extends En{constructor(t,n,r,o,i,s,a,u){super(t,i,s,u),this.sharedStylesHost=n,this.hostEl=r,this.shadowRoot=r.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);let c=Zl(o.id,o.styles);for(let l of c){let d=document.createElement("style");a&&d.setAttribute("nonce",a),d.textContent=l,this.shadowRoot.appendChild(d)}}nodeOrShadowRoot(t){return t===this.hostEl?this.shadowRoot:t}appendChild(t,n){return super.appendChild(this.nodeOrShadowRoot(t),n)}insertBefore(t,n,r){return super.insertBefore(this.nodeOrShadowRoot(t),n,r)}removeChild(t,n){return super.removeChild(null,n)}parentNode(t){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(t)))}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}},bn=class extends En{constructor(t,n,r,o,i,s,a,u){super(t,i,s,a),this.sharedStylesHost=n,this.removeStylesOnCompDestroy=o,this.styles=u?Zl(u,r.styles):r.styles}applyStyles(){this.sharedStylesHost.addStyles(this.styles)}destroy(){this.removeStylesOnCompDestroy&&this.sharedStylesHost.removeStyles(this.styles)}},oo=class extends bn{constructor(t,n,r,o,i,s,a,u){let c=o+"-"+r.id;super(t,n,r,i,s,a,u,c),this.contentAttr=Tm(c),this.hostAttr=xm(c)}applyToHost(t){this.applyStyles(),this.setAttribute(t,this.hostAttr,"")}createElement(t,n){let r=super.createElement(t,n);return super.setAttribute(r,this.contentAttr,""),r}},Nm=(()=>{class e extends ro{constructor(n){super(n)}supports(n){return!0}addEventListener(n,r,o){return n.addEventListener(r,o,!1),()=>this.removeEventListener(n,r,o)}removeEventListener(n,r,o){return n.removeEventListener(r,o)}static{this.\u0275fac=function(r){return new(r||e)(_(ae))}}static{this.\u0275prov=D({token:e,factory:e.\u0275fac})}}return e})(),zl=["alt","control","meta","shift"],Am={"\b":"Backspace"," ":"Tab","\x7F":"Delete","\x1B":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},Rm={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey},Om=(()=>{class e extends ro{constructor(n){super(n)}supports(n){return e.parseEventName(n)!=null}addEventListener(n,r,o){let i=e.parseEventName(r),s=e.eventCallback(i.fullKey,o,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>$t().onAndCancel(n,i.domEventName,s))}static parseEventName(n){let r=n.toLowerCase().split("."),o=r.shift();if(r.length===0||!(o==="keydown"||o==="keyup"))return null;let i=e._normalizeKey(r.pop()),s="",a=r.indexOf("code");if(a>-1&&(r.splice(a,1),s="code."),zl.forEach(c=>{let l=r.indexOf(c);l>-1&&(r.splice(l,1),s+=c+".")}),s+=i,r.length!=0||i.length===0)return null;let u={};return u.domEventName=o,u.fullKey=s,u}static matchEventFullKeyCode(n,r){let o=Am[n.key]||n.key,i="";return r.indexOf("code.")>-1&&(o=n.code,i="code."),o==null||!o?!1:(o=o.toLowerCase(),o===" "?o="space":o==="."&&(o="dot"),zl.forEach(s=>{if(s!==o){let a=Rm[s];a(n)&&(i+=s+".")}}),i+=o,i===r)}static eventCallback(n,r,o){return i=>{e.matchEventFullKeyCode(i,n)&&o.runGuarded(()=>r(i))}}static _normalizeKey(n){return n==="esc"?"escape":n}static{this.\u0275fac=function(r){return new(r||e)(_(ae))}}static{this.\u0275prov=D({token:e,factory:e.\u0275fac})}}return e})();function Ql(e,t){return Tl(g({rootComponent:e},Pm(t)))}function Pm(e){return{appProviders:[...Vm,...e?.providers??[]],platformProviders:jm}}function Fm(){Is.makeCurrent()}function km(){return new Te}function Lm(){return $c(document),document}var jm=[{provide:Vt,useValue:Bl},{provide:ns,useValue:Fm,multi:!0},{provide:ae,useFactory:Lm,deps:[]}];var Vm=[{provide:$r,useValue:"root"},{provide:Te,useFactory:km,deps:[]},{provide:Es,useClass:Nm,multi:!0,deps:[ae,V,Vt]},{provide:Es,useClass:Om,multi:!0,deps:[ae]},Ul,ql,Gl,{provide:Lt,useExisting:Ul},{provide:to,useClass:Em,deps:[]},[]];var Yl=(()=>{class e{constructor(n){this._doc=n}getTitle(){return this._doc.title}setTitle(n){this._doc.title=n||""}static{this.\u0275fac=function(r){return new(r||e)(_(ae))}}static{this.\u0275prov=D({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();var I="primary",Bn=Symbol("RouteTitle"),Ns=class{constructor(t){this.params=t||{}}has(t){return Object.prototype.hasOwnProperty.call(this.params,t)}get(t){if(this.has(t)){let n=this.params[t];return Array.isArray(n)?n[0]:n}return null}getAll(t){if(this.has(t)){let n=this.params[t];return Array.isArray(n)?n:[n]}return[]}get keys(){return Object.keys(this.params)}};function qt(e){return new Ns(e)}function Bm(e,t,n){let r=n.path.split("/");if(r.length>e.length||n.pathMatch==="full"&&(t.hasChildren()||r.lengthr[i]===o)}else return e===t}function id(e){return e.length>0?e[e.length-1]:null}function qe(e){return Uo(e)?e:Dn(e)?B(Promise.resolve(e)):w(e)}var Hm={exact:ad,subset:ud},sd={exact:zm,subset:Gm,ignored:()=>!0};function Kl(e,t,n){return Hm[n.paths](e.root,t.root,n.matrixParams)&&sd[n.queryParams](e.queryParams,t.queryParams)&&!(n.fragment==="exact"&&e.fragment!==t.fragment)}function zm(e,t){return be(e,t)}function ad(e,t,n){if(!ct(e.segments,t.segments)||!ao(e.segments,t.segments,n)||e.numberOfChildren!==t.numberOfChildren)return!1;for(let r in t.children)if(!e.children[r]||!ad(e.children[r],t.children[r],n))return!1;return!0}function Gm(e,t){return Object.keys(t).length<=Object.keys(e).length&&Object.keys(t).every(n=>od(e[n],t[n]))}function ud(e,t,n){return cd(e,t,t.segments,n)}function cd(e,t,n,r){if(e.segments.length>n.length){let o=e.segments.slice(0,n.length);return!(!ct(o,n)||t.hasChildren()||!ao(o,n,r))}else if(e.segments.length===n.length){if(!ct(e.segments,n)||!ao(e.segments,n,r))return!1;for(let o in t.children)if(!e.children[o]||!ud(e.children[o],t.children[o],r))return!1;return!0}else{let o=n.slice(0,e.segments.length),i=n.slice(e.segments.length);return!ct(e.segments,o)||!ao(e.segments,o,r)||!e.children[I]?!1:cd(e.children[I],t,i,r)}}function ao(e,t,n){return t.every((r,o)=>sd[n](e[o].parameters,r.parameters))}var Fe=class{constructor(t=new N([],{}),n={},r=null){this.root=t,this.queryParams=n,this.fragment=r}get queryParamMap(){return this._queryParamMap??=qt(this.queryParams),this._queryParamMap}toString(){return Zm.serialize(this)}},N=class{constructor(t,n){this.segments=t,this.children=n,this.parent=null,Object.values(n).forEach(r=>r.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return uo(this)}},ut=class{constructor(t,n){this.path=t,this.parameters=n}get parameterMap(){return this._parameterMap??=qt(this.parameters),this._parameterMap}toString(){return dd(this)}};function qm(e,t){return ct(e,t)&&e.every((n,r)=>be(n.parameters,t[r].parameters))}function ct(e,t){return e.length!==t.length?!1:e.every((n,r)=>n.path===t[r].path)}function Wm(e,t){let n=[];return Object.entries(e.children).forEach(([r,o])=>{r===I&&(n=n.concat(t(o,r)))}),Object.entries(e.children).forEach(([r,o])=>{r!==I&&(n=n.concat(t(o,r)))}),n}var ra=(()=>{class e{static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=D({token:e,factory:()=>new An,providedIn:"root"})}}return e})(),An=class{parse(t){let n=new Os(t);return new Fe(n.parseRootSegment(),n.parseQueryParams(),n.parseFragment())}serialize(t){let n=`/${Sn(t.root,!0)}`,r=Km(t.queryParams),o=typeof t.fragment=="string"?`#${Qm(t.fragment)}`:"";return`${n}${r}${o}`}},Zm=new An;function uo(e){return e.segments.map(t=>dd(t)).join("/")}function Sn(e,t){if(!e.hasChildren())return uo(e);if(t){let n=e.children[I]?Sn(e.children[I],!1):"",r=[];return Object.entries(e.children).forEach(([o,i])=>{o!==I&&r.push(`${o}:${Sn(i,!1)}`)}),r.length>0?`${n}(${r.join("//")})`:n}else{let n=Wm(e,(r,o)=>o===I?[Sn(e.children[I],!1)]:[`${o}:${Sn(r,!1)}`]);return Object.keys(e.children).length===1&&e.children[I]!=null?`${uo(e)}/${n[0]}`:`${uo(e)}/(${n.join("//")})`}}function ld(e){return encodeURIComponent(e).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function io(e){return ld(e).replace(/%3B/gi,";")}function Qm(e){return encodeURI(e)}function Rs(e){return ld(e).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function co(e){return decodeURIComponent(e)}function Jl(e){return co(e.replace(/\+/g,"%20"))}function dd(e){return`${Rs(e.path)}${Ym(e.parameters)}`}function Ym(e){return Object.entries(e).map(([t,n])=>`;${Rs(t)}=${Rs(n)}`).join("")}function Km(e){let t=Object.entries(e).map(([n,r])=>Array.isArray(r)?r.map(o=>`${io(n)}=${io(o)}`).join("&"):`${io(n)}=${io(r)}`).filter(n=>n);return t.length?`?${t.join("&")}`:""}var Jm=/^[^\/()?;#]+/;function Ms(e){let t=e.match(Jm);return t?t[0]:""}var Xm=/^[^\/()?;=#]+/;function ev(e){let t=e.match(Xm);return t?t[0]:""}var tv=/^[^=?&#]+/;function nv(e){let t=e.match(tv);return t?t[0]:""}var rv=/^[^&#]+/;function ov(e){let t=e.match(rv);return t?t[0]:""}var Os=class{constructor(t){this.url=t,this.remaining=t}parseRootSegment(){return this.consumeOptional("/"),this.remaining===""||this.peekStartsWith("?")||this.peekStartsWith("#")?new N([],{}):new N([],this.parseChildren())}parseQueryParams(){let t={};if(this.consumeOptional("?"))do this.parseQueryParam(t);while(this.consumeOptional("&"));return t}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(this.remaining==="")return{};this.consumeOptional("/");let t=[];for(this.peekStartsWith("(")||t.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),t.push(this.parseSegment());let n={};this.peekStartsWith("/(")&&(this.capture("/"),n=this.parseParens(!0));let r={};return this.peekStartsWith("(")&&(r=this.parseParens(!1)),(t.length>0||Object.keys(n).length>0)&&(r[I]=new N(t,n)),r}parseSegment(){let t=Ms(this.remaining);if(t===""&&this.peekStartsWith(";"))throw new v(4009,!1);return this.capture(t),new ut(co(t),this.parseMatrixParams())}parseMatrixParams(){let t={};for(;this.consumeOptional(";");)this.parseParam(t);return t}parseParam(t){let n=ev(this.remaining);if(!n)return;this.capture(n);let r="";if(this.consumeOptional("=")){let o=Ms(this.remaining);o&&(r=o,this.capture(r))}t[co(n)]=co(r)}parseQueryParam(t){let n=nv(this.remaining);if(!n)return;this.capture(n);let r="";if(this.consumeOptional("=")){let s=ov(this.remaining);s&&(r=s,this.capture(r))}let o=Jl(n),i=Jl(r);if(t.hasOwnProperty(o)){let s=t[o];Array.isArray(s)||(s=[s],t[o]=s),s.push(i)}else t[o]=i}parseParens(t){let n={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){let r=Ms(this.remaining),o=this.remaining[r.length];if(o!=="/"&&o!==")"&&o!==";")throw new v(4010,!1);let i;r.indexOf(":")>-1?(i=r.slice(0,r.indexOf(":")),this.capture(i),this.capture(":")):t&&(i=I);let s=this.parseChildren();n[i]=Object.keys(s).length===1?s[I]:new N([],s),this.consumeOptional("//")}return n}peekStartsWith(t){return this.remaining.startsWith(t)}consumeOptional(t){return this.peekStartsWith(t)?(this.remaining=this.remaining.substring(t.length),!0):!1}capture(t){if(!this.consumeOptional(t))throw new v(4011,!1)}};function fd(e){return e.segments.length>0?new N([],{[I]:e}):e}function hd(e){let t={};for(let[r,o]of Object.entries(e.children)){let i=hd(o);if(r===I&&i.segments.length===0&&i.hasChildren())for(let[s,a]of Object.entries(i.children))t[s]=a;else(i.segments.length>0||i.hasChildren())&&(t[r]=i)}let n=new N(e.segments,t);return iv(n)}function iv(e){if(e.numberOfChildren===1&&e.children[I]){let t=e.children[I];return new N(e.segments.concat(t.segments),t.children)}return e}function Rn(e){return e instanceof Fe}function sv(e,t,n=null,r=null){let o=pd(e);return gd(o,t,n,r)}function pd(e){let t;function n(i){let s={};for(let u of i.children){let c=n(u);s[u.outlet]=c}let a=new N(i.url,s);return i===e&&(t=a),a}let r=n(e.root),o=fd(r);return t??o}function gd(e,t,n,r){let o=e;for(;o.parent;)o=o.parent;if(t.length===0)return _s(o,o,o,n,r);let i=av(t);if(i.toRoot())return _s(o,o,new N([],{}),n,r);let s=uv(i,o,e),a=s.processChildren?Tn(s.segmentGroup,s.index,i.commands):vd(s.segmentGroup,s.index,i.commands);return _s(o,s.segmentGroup,a,n,r)}function lo(e){return typeof e=="object"&&e!=null&&!e.outlets&&!e.segmentPath}function On(e){return typeof e=="object"&&e!=null&&e.outlets}function _s(e,t,n,r,o){let i={};r&&Object.entries(r).forEach(([u,c])=>{i[u]=Array.isArray(c)?c.map(l=>`${l}`):`${c}`});let s;e===t?s=n:s=md(e,t,n);let a=fd(hd(s));return new Fe(a,i,o)}function md(e,t,n){let r={};return Object.entries(e.children).forEach(([o,i])=>{i===t?r[o]=n:r[o]=md(i,t,n)}),new N(e.segments,r)}var fo=class{constructor(t,n,r){if(this.isAbsolute=t,this.numberOfDoubleDots=n,this.commands=r,t&&r.length>0&&lo(r[0]))throw new v(4003,!1);let o=r.find(On);if(o&&o!==id(r))throw new v(4004,!1)}toRoot(){return this.isAbsolute&&this.commands.length===1&&this.commands[0]=="/"}};function av(e){if(typeof e[0]=="string"&&e.length===1&&e[0]==="/")return new fo(!0,0,e);let t=0,n=!1,r=e.reduce((o,i,s)=>{if(typeof i=="object"&&i!=null){if(i.outlets){let a={};return Object.entries(i.outlets).forEach(([u,c])=>{a[u]=typeof c=="string"?c.split("/"):c}),[...o,{outlets:a}]}if(i.segmentPath)return[...o,i.segmentPath]}return typeof i!="string"?[...o,i]:s===0?(i.split("/").forEach((a,u)=>{u==0&&a==="."||(u==0&&a===""?n=!0:a===".."?t++:a!=""&&o.push(a))}),o):[...o,i]},[]);return new fo(n,t,r)}var Ht=class{constructor(t,n,r){this.segmentGroup=t,this.processChildren=n,this.index=r}};function uv(e,t,n){if(e.isAbsolute)return new Ht(t,!0,0);if(!n)return new Ht(t,!1,NaN);if(n.parent===null)return new Ht(n,!0,0);let r=lo(e.commands[0])?0:1,o=n.segments.length-1+r;return cv(n,o,e.numberOfDoubleDots)}function cv(e,t,n){let r=e,o=t,i=n;for(;i>o;){if(i-=o,r=r.parent,!r)throw new v(4005,!1);o=r.segments.length}return new Ht(r,!1,o-i)}function lv(e){return On(e[0])?e[0].outlets:{[I]:e}}function vd(e,t,n){if(e??=new N([],{}),e.segments.length===0&&e.hasChildren())return Tn(e,t,n);let r=dv(e,t,n),o=n.slice(r.commandIndex);if(r.match&&r.pathIndexi!==I)&&e.children[I]&&e.numberOfChildren===1&&e.children[I].segments.length===0){let i=Tn(e.children[I],t,n);return new N(e.segments,i.children)}return Object.entries(r).forEach(([i,s])=>{typeof s=="string"&&(s=[s]),s!==null&&(o[i]=vd(e.children[i],t,s))}),Object.entries(e.children).forEach(([i,s])=>{r[i]===void 0&&(o[i]=s)}),new N(e.segments,o)}}function dv(e,t,n){let r=0,o=t,i={match:!1,pathIndex:0,commandIndex:0};for(;o=n.length)return i;let s=e.segments[o],a=n[r];if(On(a))break;let u=`${a}`,c=r0&&u===void 0)break;if(u&&c&&typeof c=="object"&&c.outlets===void 0){if(!ed(u,c,s))return i;r+=2}else{if(!ed(u,{},s))return i;r++}o++}return{match:!0,pathIndex:o,commandIndex:r}}function Ps(e,t,n){let r=e.segments.slice(0,t),o=0;for(;o{typeof r=="string"&&(r=[r]),r!==null&&(t[n]=Ps(new N([],{}),0,r))}),t}function Xl(e){let t={};return Object.entries(e).forEach(([n,r])=>t[n]=`${r}`),t}function ed(e,t,n){return e==n.path&&be(t,n.parameters)}var xn="imperative",q=function(e){return e[e.NavigationStart=0]="NavigationStart",e[e.NavigationEnd=1]="NavigationEnd",e[e.NavigationCancel=2]="NavigationCancel",e[e.NavigationError=3]="NavigationError",e[e.RoutesRecognized=4]="RoutesRecognized",e[e.ResolveStart=5]="ResolveStart",e[e.ResolveEnd=6]="ResolveEnd",e[e.GuardsCheckStart=7]="GuardsCheckStart",e[e.GuardsCheckEnd=8]="GuardsCheckEnd",e[e.RouteConfigLoadStart=9]="RouteConfigLoadStart",e[e.RouteConfigLoadEnd=10]="RouteConfigLoadEnd",e[e.ChildActivationStart=11]="ChildActivationStart",e[e.ChildActivationEnd=12]="ChildActivationEnd",e[e.ActivationStart=13]="ActivationStart",e[e.ActivationEnd=14]="ActivationEnd",e[e.Scroll=15]="Scroll",e[e.NavigationSkipped=16]="NavigationSkipped",e}(q||{}),ue=class{constructor(t,n){this.id=t,this.url=n}},Pn=class extends ue{constructor(t,n,r="imperative",o=null){super(t,n),this.type=q.NavigationStart,this.navigationTrigger=r,this.restoredState=o}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}},lt=class extends ue{constructor(t,n,r){super(t,n),this.urlAfterRedirects=r,this.type=q.NavigationEnd}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}},te=function(e){return e[e.Redirect=0]="Redirect",e[e.SupersededByNewNavigation=1]="SupersededByNewNavigation",e[e.NoDataFromResolver=2]="NoDataFromResolver",e[e.GuardRejected=3]="GuardRejected",e}(te||{}),Fs=function(e){return e[e.IgnoredSameUrlNavigation=0]="IgnoredSameUrlNavigation",e[e.IgnoredByUrlHandlingStrategy=1]="IgnoredByUrlHandlingStrategy",e}(Fs||{}),Pe=class extends ue{constructor(t,n,r,o){super(t,n),this.reason=r,this.code=o,this.type=q.NavigationCancel}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}},dt=class extends ue{constructor(t,n,r,o){super(t,n),this.reason=r,this.code=o,this.type=q.NavigationSkipped}},Fn=class extends ue{constructor(t,n,r,o){super(t,n),this.error=r,this.target=o,this.type=q.NavigationError}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}},ho=class extends ue{constructor(t,n,r,o){super(t,n),this.urlAfterRedirects=r,this.state=o,this.type=q.RoutesRecognized}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},ks=class extends ue{constructor(t,n,r,o){super(t,n),this.urlAfterRedirects=r,this.state=o,this.type=q.GuardsCheckStart}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},Ls=class extends ue{constructor(t,n,r,o,i){super(t,n),this.urlAfterRedirects=r,this.state=o,this.shouldActivate=i,this.type=q.GuardsCheckEnd}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}},js=class extends ue{constructor(t,n,r,o){super(t,n),this.urlAfterRedirects=r,this.state=o,this.type=q.ResolveStart}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},Vs=class extends ue{constructor(t,n,r,o){super(t,n),this.urlAfterRedirects=r,this.state=o,this.type=q.ResolveEnd}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},$s=class{constructor(t){this.route=t,this.type=q.RouteConfigLoadStart}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}},Bs=class{constructor(t){this.route=t,this.type=q.RouteConfigLoadEnd}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}},Us=class{constructor(t){this.snapshot=t,this.type=q.ChildActivationStart}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},Hs=class{constructor(t){this.snapshot=t,this.type=q.ChildActivationEnd}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},zs=class{constructor(t){this.snapshot=t,this.type=q.ActivationStart}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},Gs=class{constructor(t){this.snapshot=t,this.type=q.ActivationEnd}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}};var kn=class{},Wt=class{constructor(t,n){this.url=t,this.navigationBehaviorOptions=n}};function hv(e,t){return e.providers&&!e._injector&&(e._injector=hs(e.providers,t,`Route: ${e.path}`)),e._injector??t}function me(e){return e.outlet||I}function pv(e,t){let n=e.filter(r=>me(r)===t);return n.push(...e.filter(r=>me(r)!==t)),n}function Un(e){if(!e)return null;if(e.routeConfig?._injector)return e.routeConfig._injector;for(let t=e.parent;t;t=t.parent){let n=t.routeConfig;if(n?._loadedInjector)return n._loadedInjector;if(n?._injector)return n._injector}return null}var qs=class{get injector(){return Un(this.route?.snapshot)??this.rootInjector}set injector(t){}constructor(t){this.rootInjector=t,this.outlet=null,this.route=null,this.children=new wo(this.rootInjector),this.attachRef=null}},wo=(()=>{class e{constructor(n){this.rootInjector=n,this.contexts=new Map}onChildOutletCreated(n,r){let o=this.getOrCreateContext(n);o.outlet=r,this.contexts.set(n,o)}onChildOutletDestroyed(n){let r=this.getContext(n);r&&(r.outlet=null,r.attachRef=null)}onOutletDeactivated(){let n=this.contexts;return this.contexts=new Map,n}onOutletReAttached(n){this.contexts=n}getOrCreateContext(n){let r=this.getContext(n);return r||(r=new qs(this.rootInjector),this.contexts.set(n,r)),r}getContext(n){return this.contexts.get(n)||null}static{this.\u0275fac=function(r){return new(r||e)(_(se))}}static{this.\u0275prov=D({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})(),po=class{constructor(t){this._root=t}get root(){return this._root.value}parent(t){let n=this.pathFromRoot(t);return n.length>1?n[n.length-2]:null}children(t){let n=Ws(t,this._root);return n?n.children.map(r=>r.value):[]}firstChild(t){let n=Ws(t,this._root);return n&&n.children.length>0?n.children[0].value:null}siblings(t){let n=Zs(t,this._root);return n.length<2?[]:n[n.length-2].children.map(o=>o.value).filter(o=>o!==t)}pathFromRoot(t){return Zs(t,this._root).map(n=>n.value)}};function Ws(e,t){if(e===t.value)return t;for(let n of t.children){let r=Ws(e,n);if(r)return r}return null}function Zs(e,t){if(e===t.value)return[t];for(let n of t.children){let r=Zs(e,n);if(r.length)return r.unshift(t),r}return[]}var ee=class{constructor(t,n){this.value=t,this.children=n}toString(){return`TreeNode(${this.value})`}};function Ut(e){let t={};return e&&e.children.forEach(n=>t[n.value.outlet]=n),t}var go=class extends po{constructor(t,n){super(t),this.snapshot=n,oa(this,t)}toString(){return this.snapshot.toString()}};function yd(e){let t=gv(e),n=new z([new ut("",{})]),r=new z({}),o=new z({}),i=new z({}),s=new z(""),a=new Zt(n,r,i,s,o,I,e,t.root);return a.snapshot=t.root,new go(new ee(a,[]),t)}function gv(e){let t={},n={},r={},o="",i=new zt([],t,r,o,n,I,e,null,{});return new vo("",new ee(i,[]))}var Zt=class{constructor(t,n,r,o,i,s,a,u){this.urlSubject=t,this.paramsSubject=n,this.queryParamsSubject=r,this.fragmentSubject=o,this.dataSubject=i,this.outlet=s,this.component=a,this._futureSnapshot=u,this.title=this.dataSubject?.pipe(S(c=>c[Bn]))??w(void 0),this.url=t,this.params=n,this.queryParams=r,this.fragment=o,this.data=i}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap??=this.params.pipe(S(t=>qt(t))),this._paramMap}get queryParamMap(){return this._queryParamMap??=this.queryParams.pipe(S(t=>qt(t))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}};function mo(e,t,n="emptyOnly"){let r,{routeConfig:o}=e;return t!==null&&(n==="always"||o?.path===""||!t.component&&!t.routeConfig?.loadComponent)?r={params:g(g({},t.params),e.params),data:g(g({},t.data),e.data),resolve:g(g(g(g({},e.data),t.data),o?.data),e._resolvedData)}:r={params:g({},e.params),data:g({},e.data),resolve:g(g({},e.data),e._resolvedData??{})},o&&wd(o)&&(r.resolve[Bn]=o.title),r}var zt=class{get title(){return this.data?.[Bn]}constructor(t,n,r,o,i,s,a,u,c){this.url=t,this.params=n,this.queryParams=r,this.fragment=o,this.data=i,this.outlet=s,this.component=a,this.routeConfig=u,this._resolve=c}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap??=qt(this.params),this._paramMap}get queryParamMap(){return this._queryParamMap??=qt(this.queryParams),this._queryParamMap}toString(){let t=this.url.map(r=>r.toString()).join("/"),n=this.routeConfig?this.routeConfig.path:"";return`Route(url:'${t}', path:'${n}')`}},vo=class extends po{constructor(t,n){super(n),this.url=t,oa(this,n)}toString(){return Dd(this._root)}};function oa(e,t){t.value._routerState=e,t.children.forEach(n=>oa(e,n))}function Dd(e){let t=e.children.length>0?` { ${e.children.map(Dd).join(", ")} } `:"";return`${e.value}${t}`}function Ts(e){if(e.snapshot){let t=e.snapshot,n=e._futureSnapshot;e.snapshot=n,be(t.queryParams,n.queryParams)||e.queryParamsSubject.next(n.queryParams),t.fragment!==n.fragment&&e.fragmentSubject.next(n.fragment),be(t.params,n.params)||e.paramsSubject.next(n.params),Um(t.url,n.url)||e.urlSubject.next(n.url),be(t.data,n.data)||e.dataSubject.next(n.data)}else e.snapshot=e._futureSnapshot,e.dataSubject.next(e._futureSnapshot.data)}function Qs(e,t){let n=be(e.params,t.params)&&qm(e.url,t.url),r=!e.parent!=!t.parent;return n&&!r&&(!e.parent||Qs(e.parent,t.parent))}function wd(e){return typeof e.title=="string"||e.title===null}var ia=(()=>{class e{constructor(){this.activated=null,this._activatedRoute=null,this.name=I,this.activateEvents=new Z,this.deactivateEvents=new Z,this.attachEvents=new Z,this.detachEvents=new Z,this.parentContexts=h(wo),this.location=h(Yr),this.changeDetector=h(wn),this.inputBinder=h(sa,{optional:!0}),this.supportsBindingToComponentInputs=!0}get activatedComponentRef(){return this.activated}ngOnChanges(n){if(n.name){let{firstChange:r,previousValue:o}=n.name;if(r)return;this.isTrackedInParentContexts(o)&&(this.deactivate(),this.parentContexts.onChildOutletDestroyed(o)),this.initializeOutletWithName()}}ngOnDestroy(){this.isTrackedInParentContexts(this.name)&&this.parentContexts.onChildOutletDestroyed(this.name),this.inputBinder?.unsubscribeFromRouteData(this)}isTrackedInParentContexts(n){return this.parentContexts.getContext(n)?.outlet===this}ngOnInit(){this.initializeOutletWithName()}initializeOutletWithName(){if(this.parentContexts.onChildOutletCreated(this.name,this),this.activated)return;let n=this.parentContexts.getContext(this.name);n?.route&&(n.attachRef?this.attach(n.attachRef,n.route):this.activateWith(n.route,n.injector))}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new v(4012,!1);return this.activated.instance}get activatedRoute(){if(!this.activated)throw new v(4012,!1);return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new v(4012,!1);this.location.detach();let n=this.activated;return this.activated=null,this._activatedRoute=null,this.detachEvents.emit(n.instance),n}attach(n,r){this.activated=n,this._activatedRoute=r,this.location.insert(n.hostView),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.attachEvents.emit(n.instance)}deactivate(){if(this.activated){let n=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(n)}}activateWith(n,r){if(this.isActivated)throw new v(4013,!1);this._activatedRoute=n;let o=this.location,s=n.snapshot.component,a=this.parentContexts.getOrCreateContext(this.name).children,u=new Ys(n,a,o.injector);this.activated=o.createComponent(s,{index:o.length,injector:u,environmentInjector:r}),this.changeDetector.markForCheck(),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.activateEvents.emit(this.activated.instance)}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275dir=Ui({type:e,selectors:[["router-outlet"]],inputs:{name:"name"},outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"],standalone:!0,features:[Hr]})}}return e})(),Ys=class e{__ngOutletInjector(t){return new e(this.route,this.childContexts,t)}constructor(t,n,r){this.route=t,this.childContexts=n,this.parent=r}get(t,n){return t===Zt?this.route:t===wo?this.childContexts:this.parent.get(t,n)}},sa=new E("");function mv(e,t,n){let r=Ln(e,t._root,n?n._root:void 0);return new go(r,t)}function Ln(e,t,n){if(n&&e.shouldReuseRoute(t.value,n.value.snapshot)){let r=n.value;r._futureSnapshot=t.value;let o=vv(e,t,n);return new ee(r,o)}else{if(e.shouldAttach(t.value)){let i=e.retrieve(t.value);if(i!==null){let s=i.route;return s.value._futureSnapshot=t.value,s.children=t.children.map(a=>Ln(e,a)),s}}let r=yv(t.value),o=t.children.map(i=>Ln(e,i));return new ee(r,o)}}function vv(e,t,n){return t.children.map(r=>{for(let o of n.children)if(e.shouldReuseRoute(r.value,o.value.snapshot))return Ln(e,r,o);return Ln(e,r)})}function yv(e){return new Zt(new z(e.url),new z(e.params),new z(e.queryParams),new z(e.fragment),new z(e.data),e.outlet,e.component,e)}var jn=class{constructor(t,n){this.redirectTo=t,this.navigationBehaviorOptions=n}},Cd="ngNavigationCancelingError";function yo(e,t){let{redirectTo:n,navigationBehaviorOptions:r}=Rn(t)?{redirectTo:t,navigationBehaviorOptions:void 0}:t,o=Id(!1,te.Redirect);return o.url=n,o.navigationBehaviorOptions=r,o}function Id(e,t){let n=new Error(`NavigationCancelingError: ${e||""}`);return n[Cd]=!0,n.cancellationCode=t,n}function Dv(e){return Ed(e)&&Rn(e.url)}function Ed(e){return!!e&&e[Cd]}var wv=(e,t,n,r)=>S(o=>(new Ks(t,o.targetRouterState,o.currentRouterState,n,r).activate(e),o)),Ks=class{constructor(t,n,r,o,i){this.routeReuseStrategy=t,this.futureState=n,this.currState=r,this.forwardEvent=o,this.inputBindingEnabled=i}activate(t){let n=this.futureState._root,r=this.currState?this.currState._root:null;this.deactivateChildRoutes(n,r,t),Ts(this.futureState.root),this.activateChildRoutes(n,r,t)}deactivateChildRoutes(t,n,r){let o=Ut(n);t.children.forEach(i=>{let s=i.value.outlet;this.deactivateRoutes(i,o[s],r),delete o[s]}),Object.values(o).forEach(i=>{this.deactivateRouteAndItsChildren(i,r)})}deactivateRoutes(t,n,r){let o=t.value,i=n?n.value:null;if(o===i)if(o.component){let s=r.getContext(o.outlet);s&&this.deactivateChildRoutes(t,n,s.children)}else this.deactivateChildRoutes(t,n,r);else i&&this.deactivateRouteAndItsChildren(n,r)}deactivateRouteAndItsChildren(t,n){t.value.component&&this.routeReuseStrategy.shouldDetach(t.value.snapshot)?this.detachAndStoreRouteSubtree(t,n):this.deactivateRouteAndOutlet(t,n)}detachAndStoreRouteSubtree(t,n){let r=n.getContext(t.value.outlet),o=r&&t.value.component?r.children:n,i=Ut(t);for(let s of Object.values(i))this.deactivateRouteAndItsChildren(s,o);if(r&&r.outlet){let s=r.outlet.detach(),a=r.children.onOutletDeactivated();this.routeReuseStrategy.store(t.value.snapshot,{componentRef:s,route:t,contexts:a})}}deactivateRouteAndOutlet(t,n){let r=n.getContext(t.value.outlet),o=r&&t.value.component?r.children:n,i=Ut(t);for(let s of Object.values(i))this.deactivateRouteAndItsChildren(s,o);r&&(r.outlet&&(r.outlet.deactivate(),r.children.onOutletDeactivated()),r.attachRef=null,r.route=null)}activateChildRoutes(t,n,r){let o=Ut(n);t.children.forEach(i=>{this.activateRoutes(i,o[i.value.outlet],r),this.forwardEvent(new Gs(i.value.snapshot))}),t.children.length&&this.forwardEvent(new Hs(t.value.snapshot))}activateRoutes(t,n,r){let o=t.value,i=n?n.value:null;if(Ts(o),o===i)if(o.component){let s=r.getOrCreateContext(o.outlet);this.activateChildRoutes(t,n,s.children)}else this.activateChildRoutes(t,n,r);else if(o.component){let s=r.getOrCreateContext(o.outlet);if(this.routeReuseStrategy.shouldAttach(o.snapshot)){let a=this.routeReuseStrategy.retrieve(o.snapshot);this.routeReuseStrategy.store(o.snapshot,null),s.children.onOutletReAttached(a.contexts),s.attachRef=a.componentRef,s.route=a.route.value,s.outlet&&s.outlet.attach(a.componentRef,a.route.value),Ts(a.route.value),this.activateChildRoutes(t,null,s.children)}else s.attachRef=null,s.route=o,s.outlet&&s.outlet.activateWith(o,s.injector),this.activateChildRoutes(t,null,s.children)}else this.activateChildRoutes(t,null,r)}},Do=class{constructor(t){this.path=t,this.route=this.path[this.path.length-1]}},Gt=class{constructor(t,n){this.component=t,this.route=n}};function Cv(e,t,n){let r=e._root,o=t?t._root:null;return Mn(r,o,n,[r.value])}function Iv(e){let t=e.routeConfig?e.routeConfig.canActivateChild:null;return!t||t.length===0?null:{node:e,guards:t}}function Yt(e,t){let n=Symbol(),r=t.get(e,n);return r===n?typeof e=="function"&&!Tu(e)?e:t.get(e):r}function Mn(e,t,n,r,o={canDeactivateChecks:[],canActivateChecks:[]}){let i=Ut(t);return e.children.forEach(s=>{Ev(s,i[s.value.outlet],n,r.concat([s.value]),o),delete i[s.value.outlet]}),Object.entries(i).forEach(([s,a])=>Nn(a,n.getContext(s),o)),o}function Ev(e,t,n,r,o={canDeactivateChecks:[],canActivateChecks:[]}){let i=e.value,s=t?t.value:null,a=n?n.getContext(e.value.outlet):null;if(s&&i.routeConfig===s.routeConfig){let u=bv(s,i,i.routeConfig.runGuardsAndResolvers);u?o.canActivateChecks.push(new Do(r)):(i.data=s.data,i._resolvedData=s._resolvedData),i.component?Mn(e,t,a?a.children:null,r,o):Mn(e,t,n,r,o),u&&a&&a.outlet&&a.outlet.isActivated&&o.canDeactivateChecks.push(new Gt(a.outlet.component,s))}else s&&Nn(t,a,o),o.canActivateChecks.push(new Do(r)),i.component?Mn(e,null,a?a.children:null,r,o):Mn(e,null,n,r,o);return o}function bv(e,t,n){if(typeof n=="function")return n(e,t);switch(n){case"pathParamsChange":return!ct(e.url,t.url);case"pathParamsOrQueryParamsChange":return!ct(e.url,t.url)||!be(e.queryParams,t.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!Qs(e,t)||!be(e.queryParams,t.queryParams);case"paramsChange":default:return!Qs(e,t)}}function Nn(e,t,n){let r=Ut(e),o=e.value;Object.entries(r).forEach(([i,s])=>{o.component?t?Nn(s,t.children.getContext(i),n):Nn(s,null,n):Nn(s,t,n)}),o.component?t&&t.outlet&&t.outlet.isActivated?n.canDeactivateChecks.push(new Gt(t.outlet.component,o)):n.canDeactivateChecks.push(new Gt(null,o)):n.canDeactivateChecks.push(new Gt(null,o))}function Hn(e){return typeof e=="function"}function Sv(e){return typeof e=="boolean"}function Mv(e){return e&&Hn(e.canLoad)}function _v(e){return e&&Hn(e.canActivate)}function Tv(e){return e&&Hn(e.canActivateChild)}function xv(e){return e&&Hn(e.canDeactivate)}function Nv(e){return e&&Hn(e.canMatch)}function bd(e){return e instanceof Se||e?.name==="EmptyError"}var so=Symbol("INITIAL_VALUE");function Qt(){return de(e=>cr(e.map(t=>t.pipe(Me(1),Wo(so)))).pipe(S(t=>{for(let n of t)if(n!==!0){if(n===so)return so;if(n===!1||Av(n))return n}return!0}),le(t=>t!==so),Me(1)))}function Av(e){return Rn(e)||e instanceof jn}function Rv(e,t){return U(n=>{let{targetSnapshot:r,currentSnapshot:o,guards:{canActivateChecks:i,canDeactivateChecks:s}}=n;return s.length===0&&i.length===0?w(k(g({},n),{guardsResult:!0})):Ov(s,r,o,e).pipe(U(a=>a&&Sv(a)?Pv(r,i,e,t):w(a)),S(a=>k(g({},n),{guardsResult:a})))})}function Ov(e,t,n,r){return B(e).pipe(U(o=>Vv(o.component,o.route,n,t,r)),De(o=>o!==!0,!0))}function Pv(e,t,n,r){return B(t).pipe(It(o=>Ct(kv(o.route.parent,r),Fv(o.route,r),jv(e,o.path,n),Lv(e,o.route,n))),De(o=>o!==!0,!0))}function Fv(e,t){return e!==null&&t&&t(new zs(e)),w(!0)}function kv(e,t){return e!==null&&t&&t(new Us(e)),w(!0)}function Lv(e,t,n){let r=t.routeConfig?t.routeConfig.canActivate:null;if(!r||r.length===0)return w(!0);let o=r.map(i=>lr(()=>{let s=Un(t)??n,a=Yt(i,s),u=_v(a)?a.canActivate(t,e):xe(s,()=>a(t,e));return qe(u).pipe(De())}));return w(o).pipe(Qt())}function jv(e,t,n){let r=t[t.length-1],i=t.slice(0,t.length-1).reverse().map(s=>Iv(s)).filter(s=>s!==null).map(s=>lr(()=>{let a=s.guards.map(u=>{let c=Un(s.node)??n,l=Yt(u,c),d=Tv(l)?l.canActivateChild(r,e):xe(c,()=>l(r,e));return qe(d).pipe(De())});return w(a).pipe(Qt())}));return w(i).pipe(Qt())}function Vv(e,t,n,r,o){let i=t&&t.routeConfig?t.routeConfig.canDeactivate:null;if(!i||i.length===0)return w(!0);let s=i.map(a=>{let u=Un(t)??o,c=Yt(a,u),l=xv(c)?c.canDeactivate(e,t,n,r):xe(u,()=>c(e,t,n,r));return qe(l).pipe(De())});return w(s).pipe(Qt())}function $v(e,t,n,r){let o=t.canLoad;if(o===void 0||o.length===0)return w(!0);let i=o.map(s=>{let a=Yt(s,e),u=Mv(a)?a.canLoad(t,n):xe(e,()=>a(t,n));return qe(u)});return w(i).pipe(Qt(),Sd(r))}function Sd(e){return jo(G(t=>{if(typeof t!="boolean")throw yo(e,t)}),S(t=>t===!0))}function Bv(e,t,n,r){let o=t.canMatch;if(!o||o.length===0)return w(!0);let i=o.map(s=>{let a=Yt(s,e),u=Nv(a)?a.canMatch(t,n):xe(e,()=>a(t,n));return qe(u)});return w(i).pipe(Qt(),Sd(r))}var Vn=class{constructor(t){this.segmentGroup=t||null}},$n=class extends Error{constructor(t){super(),this.urlTree=t}};function Bt(e){return wt(new Vn(e))}function Uv(e){return wt(new v(4e3,!1))}function Hv(e){return wt(Id(!1,te.GuardRejected))}var Js=class{constructor(t,n){this.urlSerializer=t,this.urlTree=n}lineralizeSegments(t,n){let r=[],o=n.root;for(;;){if(r=r.concat(o.segments),o.numberOfChildren===0)return w(r);if(o.numberOfChildren>1||!o.children[I])return Uv(`${t.redirectTo}`);o=o.children[I]}}applyRedirectCommands(t,n,r,o,i){if(typeof n!="string"){let a=n,{queryParams:u,fragment:c,routeConfig:l,url:d,outlet:p,params:f,data:m,title:A}=o,$=xe(i,()=>a({params:f,data:m,queryParams:u,fragment:c,routeConfig:l,url:d,outlet:p,title:A}));if($ instanceof Fe)throw new $n($);n=$}let s=this.applyRedirectCreateUrlTree(n,this.urlSerializer.parse(n),t,r);if(n[0]==="/")throw new $n(s);return s}applyRedirectCreateUrlTree(t,n,r,o){let i=this.createSegmentGroup(t,n.root,r,o);return new Fe(i,this.createQueryParams(n.queryParams,this.urlTree.queryParams),n.fragment)}createQueryParams(t,n){let r={};return Object.entries(t).forEach(([o,i])=>{if(typeof i=="string"&&i[0]===":"){let a=i.substring(1);r[o]=n[a]}else r[o]=i}),r}createSegmentGroup(t,n,r,o){let i=this.createSegments(t,n.segments,r,o),s={};return Object.entries(n.children).forEach(([a,u])=>{s[a]=this.createSegmentGroup(t,u,r,o)}),new N(i,s)}createSegments(t,n,r,o){return n.map(i=>i.path[0]===":"?this.findPosParam(t,i,o):this.findOrReturn(i,r))}findPosParam(t,n,r){let o=r[n.path.substring(1)];if(!o)throw new v(4001,!1);return o}findOrReturn(t,n){let r=0;for(let o of n){if(o.path===t.path)return n.splice(r),o;r++}return t}},Xs={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function zv(e,t,n,r,o){let i=Md(e,t,n);return i.matched?(r=hv(t,r),Bv(r,t,n,o).pipe(S(s=>s===!0?i:g({},Xs)))):w(i)}function Md(e,t,n){if(t.path==="**")return Gv(n);if(t.path==="")return t.pathMatch==="full"&&(e.hasChildren()||n.length>0)?g({},Xs):{matched:!0,consumedSegments:[],remainingSegments:n,parameters:{},positionalParamSegments:{}};let o=(t.matcher||Bm)(n,e,t);if(!o)return g({},Xs);let i={};Object.entries(o.posParams??{}).forEach(([a,u])=>{i[a]=u.path});let s=o.consumed.length>0?g(g({},i),o.consumed[o.consumed.length-1].parameters):i;return{matched:!0,consumedSegments:o.consumed,remainingSegments:n.slice(o.consumed.length),parameters:s,positionalParamSegments:o.posParams??{}}}function Gv(e){return{matched:!0,parameters:e.length>0?id(e).parameters:{},consumedSegments:e,remainingSegments:[],positionalParamSegments:{}}}function td(e,t,n,r){return n.length>0&&Zv(e,n,r)?{segmentGroup:new N(t,Wv(r,new N(n,e.children))),slicedSegments:[]}:n.length===0&&Qv(e,n,r)?{segmentGroup:new N(e.segments,qv(e,n,r,e.children)),slicedSegments:n}:{segmentGroup:new N(e.segments,e.children),slicedSegments:n}}function qv(e,t,n,r){let o={};for(let i of n)if(Co(e,t,i)&&!r[me(i)]){let s=new N([],{});o[me(i)]=s}return g(g({},r),o)}function Wv(e,t){let n={};n[I]=t;for(let r of e)if(r.path===""&&me(r)!==I){let o=new N([],{});n[me(r)]=o}return n}function Zv(e,t,n){return n.some(r=>Co(e,t,r)&&me(r)!==I)}function Qv(e,t,n){return n.some(r=>Co(e,t,r))}function Co(e,t,n){return(e.hasChildren()||t.length>0)&&n.pathMatch==="full"?!1:n.path===""}function Yv(e,t,n){return t.length===0&&!e.children[n]}var ea=class{};function Kv(e,t,n,r,o,i,s="emptyOnly"){return new ta(e,t,n,r,o,s,i).recognize()}var Jv=31,ta=class{constructor(t,n,r,o,i,s,a){this.injector=t,this.configLoader=n,this.rootComponentType=r,this.config=o,this.urlTree=i,this.paramsInheritanceStrategy=s,this.urlSerializer=a,this.applyRedirects=new Js(this.urlSerializer,this.urlTree),this.absoluteRedirectCount=0,this.allowRedirects=!0}noMatchError(t){return new v(4002,`'${t.segmentGroup}'`)}recognize(){let t=td(this.urlTree.root,[],[],this.config).segmentGroup;return this.match(t).pipe(S(({children:n,rootSnapshot:r})=>{let o=new ee(r,n),i=new vo("",o),s=sv(r,[],this.urlTree.queryParams,this.urlTree.fragment);return s.queryParams=this.urlTree.queryParams,i.url=this.urlSerializer.serialize(s),{state:i,tree:s}}))}match(t){let n=new zt([],Object.freeze({}),Object.freeze(g({},this.urlTree.queryParams)),this.urlTree.fragment,Object.freeze({}),I,this.rootComponentType,null,{});return this.processSegmentGroup(this.injector,this.config,t,I,n).pipe(S(r=>({children:r,rootSnapshot:n})),Le(r=>{if(r instanceof $n)return this.urlTree=r.urlTree,this.match(r.urlTree.root);throw r instanceof Vn?this.noMatchError(r):r}))}processSegmentGroup(t,n,r,o,i){return r.segments.length===0&&r.hasChildren()?this.processChildren(t,n,r,i):this.processSegment(t,n,r,r.segments,o,!0,i).pipe(S(s=>s instanceof ee?[s]:[]))}processChildren(t,n,r,o){let i=[];for(let s of Object.keys(r.children))s==="primary"?i.unshift(s):i.push(s);return B(i).pipe(It(s=>{let a=r.children[s],u=pv(n,s);return this.processSegmentGroup(t,u,a,s,o)}),qo((s,a)=>(s.push(...a),s)),je(null),Go(),U(s=>{if(s===null)return Bt(r);let a=_d(s);return Xv(a),w(a)}))}processSegment(t,n,r,o,i,s,a){return B(n).pipe(It(u=>this.processSegmentAgainstRoute(u._injector??t,n,u,r,o,i,s,a).pipe(Le(c=>{if(c instanceof Vn)return w(null);throw c}))),De(u=>!!u),Le(u=>{if(bd(u))return Yv(r,o,i)?w(new ea):Bt(r);throw u}))}processSegmentAgainstRoute(t,n,r,o,i,s,a,u){return me(r)!==s&&(s===I||!Co(o,i,r))?Bt(o):r.redirectTo===void 0?this.matchSegmentAgainstRoute(t,o,r,i,s,u):this.allowRedirects&&a?this.expandSegmentAgainstRouteUsingRedirect(t,o,n,r,i,s,u):Bt(o)}expandSegmentAgainstRouteUsingRedirect(t,n,r,o,i,s,a){let{matched:u,parameters:c,consumedSegments:l,positionalParamSegments:d,remainingSegments:p}=Md(n,o,i);if(!u)return Bt(n);typeof o.redirectTo=="string"&&o.redirectTo[0]==="/"&&(this.absoluteRedirectCount++,this.absoluteRedirectCount>Jv&&(this.allowRedirects=!1));let f=new zt(i,c,Object.freeze(g({},this.urlTree.queryParams)),this.urlTree.fragment,nd(o),me(o),o.component??o._loadedComponent??null,o,rd(o)),m=mo(f,a,this.paramsInheritanceStrategy);f.params=Object.freeze(m.params),f.data=Object.freeze(m.data);let A=this.applyRedirects.applyRedirectCommands(l,o.redirectTo,d,f,t);return this.applyRedirects.lineralizeSegments(o,A).pipe(U($=>this.processSegment(t,r,n,$.concat(p),s,!1,a)))}matchSegmentAgainstRoute(t,n,r,o,i,s){let a=zv(n,r,o,t,this.urlSerializer);return r.path==="**"&&(n.children={}),a.pipe(de(u=>u.matched?(t=r._injector??t,this.getChildConfig(t,r,o).pipe(de(({routes:c})=>{let l=r._loadedInjector??t,{parameters:d,consumedSegments:p,remainingSegments:f}=u,m=new zt(p,d,Object.freeze(g({},this.urlTree.queryParams)),this.urlTree.fragment,nd(r),me(r),r.component??r._loadedComponent??null,r,rd(r)),A=mo(m,s,this.paramsInheritanceStrategy);m.params=Object.freeze(A.params),m.data=Object.freeze(A.data);let{segmentGroup:$,slicedSegments:L}=td(n,p,f,c);if(L.length===0&&$.hasChildren())return this.processChildren(l,c,$,m).pipe(S(We=>new ee(m,We)));if(c.length===0&&L.length===0)return w(new ee(m,[]));let ve=me(r)===i;return this.processSegment(l,c,$,L,ve?I:i,!0,m).pipe(S(We=>new ee(m,We instanceof ee?[We]:[])))}))):Bt(n)))}getChildConfig(t,n,r){return n.children?w({routes:n.children,injector:t}):n.loadChildren?n._loadedRoutes!==void 0?w({routes:n._loadedRoutes,injector:n._loadedInjector}):$v(t,n,r,this.urlSerializer).pipe(U(o=>o?this.configLoader.loadChildren(t,n).pipe(G(i=>{n._loadedRoutes=i.routes,n._loadedInjector=i.injector})):Hv(n))):w({routes:[],injector:t})}};function Xv(e){e.sort((t,n)=>t.value.outlet===I?-1:n.value.outlet===I?1:t.value.outlet.localeCompare(n.value.outlet))}function ey(e){let t=e.value.routeConfig;return t&&t.path===""}function _d(e){let t=[],n=new Set;for(let r of e){if(!ey(r)){t.push(r);continue}let o=t.find(i=>r.value.routeConfig===i.value.routeConfig);o!==void 0?(o.children.push(...r.children),n.add(o)):t.push(r)}for(let r of n){let o=_d(r.children);t.push(new ee(r.value,o))}return t.filter(r=>!n.has(r))}function nd(e){return e.data||{}}function rd(e){return e.resolve||{}}function ty(e,t,n,r,o,i){return U(s=>Kv(e,t,n,r,s.extractedUrl,o,i).pipe(S(({state:a,tree:u})=>k(g({},s),{targetSnapshot:a,urlAfterRedirects:u}))))}function ny(e,t){return U(n=>{let{targetSnapshot:r,guards:{canActivateChecks:o}}=n;if(!o.length)return w(n);let i=new Set(o.map(u=>u.route)),s=new Set;for(let u of i)if(!s.has(u))for(let c of Td(u))s.add(c);let a=0;return B(s).pipe(It(u=>i.has(u)?ry(u,r,e,t):(u.data=mo(u,u.parent,e).resolve,w(void 0))),G(()=>a++),Et(1),U(u=>a===s.size?w(n):J))})}function Td(e){let t=e.children.map(n=>Td(n)).flat();return[e,...t]}function ry(e,t,n,r){let o=e.routeConfig,i=e._resolve;return o?.title!==void 0&&!wd(o)&&(i[Bn]=o.title),oy(i,e,t,r).pipe(S(s=>(e._resolvedData=s,e.data=mo(e,e.parent,n).resolve,null)))}function oy(e,t,n,r){let o=As(e);if(o.length===0)return w({});let i={};return B(o).pipe(U(s=>iy(e[s],t,n,r).pipe(De(),G(a=>{if(a instanceof jn)throw yo(new An,a);i[s]=a}))),Et(1),zo(i),Le(s=>bd(s)?J:wt(s)))}function iy(e,t,n,r){let o=Un(t)??r,i=Yt(e,o),s=i.resolve?i.resolve(t,n):xe(o,()=>i(t,n));return qe(s)}function xs(e){return de(t=>{let n=e(t);return n?B(n).pipe(S(()=>t)):w(t)})}var xd=(()=>{class e{buildTitle(n){let r,o=n.root;for(;o!==void 0;)r=this.getResolvedTitleForRoute(o)??r,o=o.children.find(i=>i.outlet===I);return r}getResolvedTitleForRoute(n){return n.data[Bn]}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=D({token:e,factory:()=>h(sy),providedIn:"root"})}}return e})(),sy=(()=>{class e extends xd{constructor(n){super(),this.title=n}updateTitle(n){let r=this.buildTitle(n);r!==void 0&&this.title.setTitle(r)}static{this.\u0275fac=function(r){return new(r||e)(_(Yl))}}static{this.\u0275prov=D({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})(),aa=new E("",{providedIn:"root",factory:()=>({})}),ay=(()=>{class e{static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275cmp=jr({type:e,selectors:[["ng-component"]],standalone:!0,features:[Kr],decls:1,vars:0,template:function(r,o){r&1&&yn(0,"router-outlet")},dependencies:[ia],encapsulation:2})}}return e})();function ua(e){let t=e.children&&e.children.map(ua),n=t?k(g({},e),{children:t}):g({},e);return!n.component&&!n.loadComponent&&(t||n.loadChildren)&&n.outlet&&n.outlet!==I&&(n.component=ay),n}var ca=new E(""),uy=(()=>{class e{constructor(){this.componentLoaders=new WeakMap,this.childrenLoaders=new WeakMap,this.compiler=h(ms)}loadComponent(n){if(this.componentLoaders.get(n))return this.componentLoaders.get(n);if(n._loadedComponent)return w(n._loadedComponent);this.onLoadStartListener&&this.onLoadStartListener(n);let r=qe(n.loadComponent()).pipe(S(Nd),G(i=>{this.onLoadEndListener&&this.onLoadEndListener(n),n._loadedComponent=i}),Xt(()=>{this.componentLoaders.delete(n)})),o=new Dt(r,()=>new W).pipe(yt());return this.componentLoaders.set(n,o),o}loadChildren(n,r){if(this.childrenLoaders.get(r))return this.childrenLoaders.get(r);if(r._loadedRoutes)return w({routes:r._loadedRoutes,injector:r._loadedInjector});this.onLoadStartListener&&this.onLoadStartListener(r);let i=cy(r,this.compiler,n,this.onLoadEndListener).pipe(Xt(()=>{this.childrenLoaders.delete(r)})),s=new Dt(i,()=>new W).pipe(yt());return this.childrenLoaders.set(r,s),s}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=D({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();function cy(e,t,n,r){return qe(e.loadChildren()).pipe(S(Nd),U(o=>o instanceof fn||Array.isArray(o)?w(o):B(t.compileModuleAsync(o))),S(o=>{r&&r(e);let i,s,a=!1;return Array.isArray(o)?(s=o,a=!0):(i=o.create(n).injector,s=i.get(ca,[],{optional:!0,self:!0}).flat()),{routes:s.map(ua),injector:i}}))}function ly(e){return e&&typeof e=="object"&&"default"in e}function Nd(e){return ly(e)?e.default:e}var la=(()=>{class e{static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=D({token:e,factory:()=>h(dy),providedIn:"root"})}}return e})(),dy=(()=>{class e{shouldProcessUrl(n){return!0}extract(n){return n}merge(n,r){return n}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=D({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})(),fy=new E("");var hy=new E(""),py=(()=>{class e{get hasRequestedNavigation(){return this.navigationId!==0}constructor(){this.currentNavigation=null,this.currentTransition=null,this.lastSuccessfulNavigation=null,this.events=new W,this.transitionAbortSubject=new W,this.configLoader=h(uy),this.environmentInjector=h(se),this.urlSerializer=h(ra),this.rootContexts=h(wo),this.location=h(Cn),this.inputBindingEnabled=h(sa,{optional:!0})!==null,this.titleStrategy=h(xd),this.options=h(aa,{optional:!0})||{},this.paramsInheritanceStrategy=this.options.paramsInheritanceStrategy||"emptyOnly",this.urlHandlingStrategy=h(la),this.createViewTransition=h(fy,{optional:!0}),this.navigationErrorHandler=h(hy,{optional:!0}),this.navigationId=0,this.afterPreactivation=()=>w(void 0),this.rootComponentType=null;let n=o=>this.events.next(new $s(o)),r=o=>this.events.next(new Bs(o));this.configLoader.onLoadEndListener=r,this.configLoader.onLoadStartListener=n}complete(){this.transitions?.complete()}handleNavigationRequest(n){let r=++this.navigationId;this.transitions?.next(k(g(g({},this.transitions.value),n),{id:r}))}setupNavigations(n,r,o){return this.transitions=new z({id:0,currentUrlTree:r,currentRawUrl:r,extractedUrl:this.urlHandlingStrategy.extract(r),urlAfterRedirects:this.urlHandlingStrategy.extract(r),rawUrl:r,extras:{},resolve:()=>{},reject:()=>{},promise:Promise.resolve(!0),source:xn,restoredState:null,currentSnapshot:o.snapshot,targetSnapshot:null,currentRouterState:o,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.transitions.pipe(le(i=>i.id!==0),S(i=>k(g({},i),{extractedUrl:this.urlHandlingStrategy.extract(i.rawUrl)})),de(i=>{let s=!1,a=!1;return w(i).pipe(de(u=>{if(this.navigationId>i.id)return this.cancelNavigationTransition(i,"",te.SupersededByNewNavigation),J;this.currentTransition=i,this.currentNavigation={id:u.id,initialUrl:u.rawUrl,extractedUrl:u.extractedUrl,targetBrowserUrl:typeof u.extras.browserUrl=="string"?this.urlSerializer.parse(u.extras.browserUrl):u.extras.browserUrl,trigger:u.source,extras:u.extras,previousNavigation:this.lastSuccessfulNavigation?k(g({},this.lastSuccessfulNavigation),{previousNavigation:null}):null};let c=!n.navigated||this.isUpdatingInternalState()||this.isUpdatedBrowserUrl(),l=u.extras.onSameUrlNavigation??n.onSameUrlNavigation;if(!c&&l!=="reload"){let d="";return this.events.next(new dt(u.id,this.urlSerializer.serialize(u.rawUrl),d,Fs.IgnoredSameUrlNavigation)),u.resolve(!1),J}if(this.urlHandlingStrategy.shouldProcessUrl(u.rawUrl))return w(u).pipe(de(d=>{let p=this.transitions?.getValue();return this.events.next(new Pn(d.id,this.urlSerializer.serialize(d.extractedUrl),d.source,d.restoredState)),p!==this.transitions?.getValue()?J:Promise.resolve(d)}),ty(this.environmentInjector,this.configLoader,this.rootComponentType,n.config,this.urlSerializer,this.paramsInheritanceStrategy),G(d=>{i.targetSnapshot=d.targetSnapshot,i.urlAfterRedirects=d.urlAfterRedirects,this.currentNavigation=k(g({},this.currentNavigation),{finalUrl:d.urlAfterRedirects});let p=new ho(d.id,this.urlSerializer.serialize(d.extractedUrl),this.urlSerializer.serialize(d.urlAfterRedirects),d.targetSnapshot);this.events.next(p)}));if(c&&this.urlHandlingStrategy.shouldProcessUrl(u.currentRawUrl)){let{id:d,extractedUrl:p,source:f,restoredState:m,extras:A}=u,$=new Pn(d,this.urlSerializer.serialize(p),f,m);this.events.next($);let L=yd(this.rootComponentType).snapshot;return this.currentTransition=i=k(g({},u),{targetSnapshot:L,urlAfterRedirects:p,extras:k(g({},A),{skipLocationChange:!1,replaceUrl:!1})}),this.currentNavigation.finalUrl=p,w(i)}else{let d="";return this.events.next(new dt(u.id,this.urlSerializer.serialize(u.extractedUrl),d,Fs.IgnoredByUrlHandlingStrategy)),u.resolve(!1),J}}),G(u=>{let c=new ks(u.id,this.urlSerializer.serialize(u.extractedUrl),this.urlSerializer.serialize(u.urlAfterRedirects),u.targetSnapshot);this.events.next(c)}),S(u=>(this.currentTransition=i=k(g({},u),{guards:Cv(u.targetSnapshot,u.currentSnapshot,this.rootContexts)}),i)),Rv(this.environmentInjector,u=>this.events.next(u)),G(u=>{if(i.guardsResult=u.guardsResult,u.guardsResult&&typeof u.guardsResult!="boolean")throw yo(this.urlSerializer,u.guardsResult);let c=new Ls(u.id,this.urlSerializer.serialize(u.extractedUrl),this.urlSerializer.serialize(u.urlAfterRedirects),u.targetSnapshot,!!u.guardsResult);this.events.next(c)}),le(u=>u.guardsResult?!0:(this.cancelNavigationTransition(u,"",te.GuardRejected),!1)),xs(u=>{if(u.guards.canActivateChecks.length)return w(u).pipe(G(c=>{let l=new js(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects),c.targetSnapshot);this.events.next(l)}),de(c=>{let l=!1;return w(c).pipe(ny(this.paramsInheritanceStrategy,this.environmentInjector),G({next:()=>l=!0,complete:()=>{l||this.cancelNavigationTransition(c,"",te.NoDataFromResolver)}}))}),G(c=>{let l=new Vs(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects),c.targetSnapshot);this.events.next(l)}))}),xs(u=>{let c=l=>{let d=[];l.routeConfig?.loadComponent&&!l.routeConfig._loadedComponent&&d.push(this.configLoader.loadComponent(l.routeConfig).pipe(G(p=>{l.component=p}),S(()=>{})));for(let p of l.children)d.push(...c(p));return d};return cr(c(u.targetSnapshot.root)).pipe(je(null),Me(1))}),xs(()=>this.afterPreactivation()),de(()=>{let{currentSnapshot:u,targetSnapshot:c}=i,l=this.createViewTransition?.(this.environmentInjector,u.root,c.root);return l?B(l).pipe(S(()=>i)):w(i)}),S(u=>{let c=mv(n.routeReuseStrategy,u.targetSnapshot,u.currentRouterState);return this.currentTransition=i=k(g({},u),{targetRouterState:c}),this.currentNavigation.targetRouterState=c,i}),G(()=>{this.events.next(new kn)}),wv(this.rootContexts,n.routeReuseStrategy,u=>this.events.next(u),this.inputBindingEnabled),Me(1),G({next:u=>{s=!0,this.lastSuccessfulNavigation=this.currentNavigation,this.events.next(new lt(u.id,this.urlSerializer.serialize(u.extractedUrl),this.urlSerializer.serialize(u.urlAfterRedirects))),this.titleStrategy?.updateTitle(u.targetRouterState.snapshot),u.resolve(!0)},complete:()=>{s=!0}}),Zo(this.transitionAbortSubject.pipe(G(u=>{throw u}))),Xt(()=>{!s&&!a&&this.cancelNavigationTransition(i,"",te.SupersededByNewNavigation),this.currentTransition?.id===i.id&&(this.currentNavigation=null,this.currentTransition=null)}),Le(u=>{if(a=!0,Ed(u))this.events.next(new Pe(i.id,this.urlSerializer.serialize(i.extractedUrl),u.message,u.cancellationCode)),Dv(u)?this.events.next(new Wt(u.url,u.navigationBehaviorOptions)):i.resolve(!1);else{let c=new Fn(i.id,this.urlSerializer.serialize(i.extractedUrl),u,i.targetSnapshot??void 0);try{let l=xe(this.environmentInjector,()=>this.navigationErrorHandler?.(c));if(l instanceof jn){let{message:d,cancellationCode:p}=yo(this.urlSerializer,l);this.events.next(new Pe(i.id,this.urlSerializer.serialize(i.extractedUrl),d,p)),this.events.next(new Wt(l.redirectTo,l.navigationBehaviorOptions))}else{this.events.next(c);let d=n.errorHandler(u);i.resolve(!!d)}}catch(l){this.options.resolveNavigationPromiseOnError?i.resolve(!1):i.reject(l)}}return J}))}))}cancelNavigationTransition(n,r,o){let i=new Pe(n.id,this.urlSerializer.serialize(n.extractedUrl),r,o);this.events.next(i),n.resolve(!1)}isUpdatingInternalState(){return this.currentTransition?.extractedUrl.toString()!==this.currentTransition?.currentUrlTree.toString()}isUpdatedBrowserUrl(){let n=this.urlHandlingStrategy.extract(this.urlSerializer.parse(this.location.path(!0))),r=this.currentNavigation?.targetBrowserUrl??this.currentNavigation?.extractedUrl;return n.toString()!==r?.toString()&&!this.currentNavigation?.extras.skipLocationChange}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=D({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();function gy(e){return e!==xn}var my=(()=>{class e{static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=D({token:e,factory:()=>h(vy),providedIn:"root"})}}return e})(),na=class{shouldDetach(t){return!1}store(t,n){}shouldAttach(t){return!1}retrieve(t){return null}shouldReuseRoute(t,n){return t.routeConfig===n.routeConfig}},vy=(()=>{class e extends na{static{this.\u0275fac=(()=>{let n;return function(o){return(n||(n=Ki(e)))(o||e)}})()}static{this.\u0275prov=D({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})(),Ad=(()=>{class e{static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=D({token:e,factory:()=>h(yy),providedIn:"root"})}}return e})(),yy=(()=>{class e extends Ad{constructor(){super(...arguments),this.location=h(Cn),this.urlSerializer=h(ra),this.options=h(aa,{optional:!0})||{},this.canceledNavigationResolution=this.options.canceledNavigationResolution||"replace",this.urlHandlingStrategy=h(la),this.urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred",this.currentUrlTree=new Fe,this.rawUrlTree=this.currentUrlTree,this.currentPageId=0,this.lastSuccessfulId=-1,this.routerState=yd(null),this.stateMemento=this.createStateMemento()}getCurrentUrlTree(){return this.currentUrlTree}getRawUrlTree(){return this.rawUrlTree}restoredState(){return this.location.getState()}get browserPageId(){return this.canceledNavigationResolution!=="computed"?this.currentPageId:this.restoredState()?.\u0275routerPageId??this.currentPageId}getRouterState(){return this.routerState}createStateMemento(){return{rawUrlTree:this.rawUrlTree,currentUrlTree:this.currentUrlTree,routerState:this.routerState}}registerNonRouterCurrentEntryChangeListener(n){return this.location.subscribe(r=>{r.type==="popstate"&&n(r.url,r.state)})}handleRouterEvent(n,r){if(n instanceof Pn)this.stateMemento=this.createStateMemento();else if(n instanceof dt)this.rawUrlTree=r.initialUrl;else if(n instanceof ho){if(this.urlUpdateStrategy==="eager"&&!r.extras.skipLocationChange){let o=this.urlHandlingStrategy.merge(r.finalUrl,r.initialUrl);this.setBrowserUrl(r.targetBrowserUrl??o,r)}}else n instanceof kn?(this.currentUrlTree=r.finalUrl,this.rawUrlTree=this.urlHandlingStrategy.merge(r.finalUrl,r.initialUrl),this.routerState=r.targetRouterState,this.urlUpdateStrategy==="deferred"&&!r.extras.skipLocationChange&&this.setBrowserUrl(r.targetBrowserUrl??this.rawUrlTree,r)):n instanceof Pe&&(n.code===te.GuardRejected||n.code===te.NoDataFromResolver)?this.restoreHistory(r):n instanceof Fn?this.restoreHistory(r,!0):n instanceof lt&&(this.lastSuccessfulId=n.id,this.currentPageId=this.browserPageId)}setBrowserUrl(n,r){let o=n instanceof Fe?this.urlSerializer.serialize(n):n;if(this.location.isCurrentPathEqualTo(o)||r.extras.replaceUrl){let i=this.browserPageId,s=g(g({},r.extras.state),this.generateNgRouterState(r.id,i));this.location.replaceState(o,"",s)}else{let i=g(g({},r.extras.state),this.generateNgRouterState(r.id,this.browserPageId+1));this.location.go(o,"",i)}}restoreHistory(n,r=!1){if(this.canceledNavigationResolution==="computed"){let o=this.browserPageId,i=this.currentPageId-o;i!==0?this.location.historyGo(i):this.currentUrlTree===n.finalUrl&&i===0&&(this.resetState(n),this.resetUrlToCurrentUrlTree())}else this.canceledNavigationResolution==="replace"&&(r&&this.resetState(n),this.resetUrlToCurrentUrlTree())}resetState(n){this.routerState=this.stateMemento.routerState,this.currentUrlTree=this.stateMemento.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,n.finalUrl??this.rawUrlTree)}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}generateNgRouterState(n,r){return this.canceledNavigationResolution==="computed"?{navigationId:n,\u0275routerPageId:r}:{navigationId:n}}static{this.\u0275fac=(()=>{let n;return function(o){return(n||(n=Ki(e)))(o||e)}})()}static{this.\u0275prov=D({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})(),_n=function(e){return e[e.COMPLETE=0]="COMPLETE",e[e.FAILED=1]="FAILED",e[e.REDIRECTING=2]="REDIRECTING",e}(_n||{});function Dy(e,t){e.events.pipe(le(n=>n instanceof lt||n instanceof Pe||n instanceof Fn||n instanceof dt),S(n=>n instanceof lt||n instanceof dt?_n.COMPLETE:(n instanceof Pe?n.code===te.Redirect||n.code===te.SupersededByNewNavigation:!1)?_n.REDIRECTING:_n.FAILED),le(n=>n!==_n.REDIRECTING),Me(1)).subscribe(()=>{t()})}function wy(e){throw e}var Cy={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},Iy={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"},Rd=(()=>{class e{get currentUrlTree(){return this.stateManager.getCurrentUrlTree()}get rawUrlTree(){return this.stateManager.getRawUrlTree()}get events(){return this._events}get routerState(){return this.stateManager.getRouterState()}constructor(){this.disposed=!1,this.console=h(Jr),this.stateManager=h(Ad),this.options=h(aa,{optional:!0})||{},this.pendingTasks=h(jt),this.urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred",this.navigationTransitions=h(py),this.urlSerializer=h(ra),this.location=h(Cn),this.urlHandlingStrategy=h(la),this._events=new W,this.errorHandler=this.options.errorHandler||wy,this.navigated=!1,this.routeReuseStrategy=h(my),this.onSameUrlNavigation=this.options.onSameUrlNavigation||"ignore",this.config=h(ca,{optional:!0})?.flat()??[],this.componentInputBindingEnabled=!!h(sa,{optional:!0}),this.eventsSubscription=new j,this.resetConfig(this.config),this.navigationTransitions.setupNavigations(this,this.currentUrlTree,this.routerState).subscribe({error:n=>{this.console.warn(n)}}),this.subscribeToNavigationEvents()}subscribeToNavigationEvents(){let n=this.navigationTransitions.events.subscribe(r=>{try{let o=this.navigationTransitions.currentTransition,i=this.navigationTransitions.currentNavigation;if(o!==null&&i!==null){if(this.stateManager.handleRouterEvent(r,i),r instanceof Pe&&r.code!==te.Redirect&&r.code!==te.SupersededByNewNavigation)this.navigated=!0;else if(r instanceof lt)this.navigated=!0;else if(r instanceof Wt){let s=r.navigationBehaviorOptions,a=this.urlHandlingStrategy.merge(r.url,o.currentRawUrl),u=g({browserUrl:o.extras.browserUrl,info:o.extras.info,skipLocationChange:o.extras.skipLocationChange,replaceUrl:o.extras.replaceUrl||this.urlUpdateStrategy==="eager"||gy(o.source)},s);this.scheduleNavigation(a,xn,null,u,{resolve:o.resolve,reject:o.reject,promise:o.promise})}}by(r)&&this._events.next(r)}catch(o){this.navigationTransitions.transitionAbortSubject.next(o)}});this.eventsSubscription.add(n)}resetRootComponentType(n){this.routerState.root.component=n,this.navigationTransitions.rootComponentType=n}initialNavigation(){this.setUpLocationChangeListener(),this.navigationTransitions.hasRequestedNavigation||this.navigateToSyncWithBrowser(this.location.path(!0),xn,this.stateManager.restoredState())}setUpLocationChangeListener(){this.nonRouterCurrentEntryChangeSubscription??=this.stateManager.registerNonRouterCurrentEntryChangeListener((n,r)=>{setTimeout(()=>{this.navigateToSyncWithBrowser(n,"popstate",r)},0)})}navigateToSyncWithBrowser(n,r,o){let i={replaceUrl:!0},s=o?.navigationId?o:null;if(o){let u=g({},o);delete u.navigationId,delete u.\u0275routerPageId,Object.keys(u).length!==0&&(i.state=u)}let a=this.parseUrl(n);this.scheduleNavigation(a,r,s,i)}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.navigationTransitions.currentNavigation}get lastSuccessfulNavigation(){return this.navigationTransitions.lastSuccessfulNavigation}resetConfig(n){this.config=n.map(ua),this.navigated=!1}ngOnDestroy(){this.dispose()}dispose(){this.navigationTransitions.complete(),this.nonRouterCurrentEntryChangeSubscription&&(this.nonRouterCurrentEntryChangeSubscription.unsubscribe(),this.nonRouterCurrentEntryChangeSubscription=void 0),this.disposed=!0,this.eventsSubscription.unsubscribe()}createUrlTree(n,r={}){let{relativeTo:o,queryParams:i,fragment:s,queryParamsHandling:a,preserveFragment:u}=r,c=u?this.currentUrlTree.fragment:s,l=null;switch(a??this.options.defaultQueryParamsHandling){case"merge":l=g(g({},this.currentUrlTree.queryParams),i);break;case"preserve":l=this.currentUrlTree.queryParams;break;default:l=i||null}l!==null&&(l=this.removeEmptyProps(l));let d;try{let p=o?o.snapshot:this.routerState.snapshot.root;d=pd(p)}catch{(typeof n[0]!="string"||n[0][0]!=="/")&&(n=[]),d=this.currentUrlTree.root}return gd(d,n,l,c??null)}navigateByUrl(n,r={skipLocationChange:!1}){let o=Rn(n)?n:this.parseUrl(n),i=this.urlHandlingStrategy.merge(o,this.rawUrlTree);return this.scheduleNavigation(i,xn,null,r)}navigate(n,r={skipLocationChange:!1}){return Ey(n),this.navigateByUrl(this.createUrlTree(n,r),r)}serializeUrl(n){return this.urlSerializer.serialize(n)}parseUrl(n){try{return this.urlSerializer.parse(n)}catch{return this.urlSerializer.parse("/")}}isActive(n,r){let o;if(r===!0?o=g({},Cy):r===!1?o=g({},Iy):o=r,Rn(n))return Kl(this.currentUrlTree,n,o);let i=this.parseUrl(n);return Kl(this.currentUrlTree,i,o)}removeEmptyProps(n){return Object.entries(n).reduce((r,[o,i])=>(i!=null&&(r[o]=i),r),{})}scheduleNavigation(n,r,o,i,s){if(this.disposed)return Promise.resolve(!1);let a,u,c;s?(a=s.resolve,u=s.reject,c=s.promise):c=new Promise((d,p)=>{a=d,u=p});let l=this.pendingTasks.add();return Dy(this,()=>{queueMicrotask(()=>this.pendingTasks.remove(l))}),this.navigationTransitions.handleNavigationRequest({source:r,restoredState:o,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,rawUrl:n,extras:i,resolve:a,reject:u,promise:c,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),c.catch(d=>Promise.reject(d))}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=D({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();function Ey(e){for(let t=0;tn.\u0275providers)])}function My(e){return e.routerState.root}function _y(){let e=h(ot);return t=>{let n=e.get(st);if(t!==n.components[0])return;let r=e.get(Rd),o=e.get(Ty);e.get(xy)===1&&r.initialNavigation(),e.get(Ny,null,b.Optional)?.setUpPreloading(),e.get(Sy,null,b.Optional)?.init(),r.resetRootComponentType(n.componentTypes[0]),o.closed||(o.next(),o.complete(),o.unsubscribe())}}var Ty=new E("",{factory:()=>new W}),xy=new E("",{providedIn:"root",factory:()=>1});var Ny=new E("");var Pd=[];var Fd={providers:[Ml({eventCoalescing:!0}),Od(Pd)]};var Io=class e{title="app";static \u0275fac=function(n){return new(n||e)};static \u0275cmp=jr({type:e,selectors:[["app-root"]],standalone:!0,features:[Kr],decls:5,vars:0,template:function(n,r){n&1&&(mn(0,"h1"),ps(1,"Blur"),vn(),mn(2,"p"),ps(3,"Drag any photo to this window."),vn(),yn(4,"router-outlet"))},dependencies:[ia]})};Ql(Io,Fd).catch(e=>console.error(e)); diff --git a/main-MRCX4C42.js b/main-MRCX4C42.js new file mode 100644 index 0000000..2fe9342 --- /dev/null +++ b/main-MRCX4C42.js @@ -0,0 +1,7 @@ +var pf=Object.defineProperty,gf=Object.defineProperties;var mf=Object.getOwnPropertyDescriptors;var ka=Object.getOwnPropertySymbols;var vf=Object.prototype.hasOwnProperty,yf=Object.prototype.propertyIsEnumerable;var La=(e,t,n)=>t in e?pf(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,g=(e,t)=>{for(var n in t||={})vf.call(t,n)&&La(e,n,t[n]);if(ka)for(var n of ka(t))yf.call(t,n)&&La(e,n,t[n]);return e},V=(e,t)=>gf(e,mf(t));var Uo=null;var Bo=1,ja=Symbol("SIGNAL");function P(e){let t=Uo;return Uo=e,t}function Va(){return Uo}var Ho={version:0,lastCleanEpoch:0,dirty:!1,producerNode:void 0,producerLastReadVersion:void 0,producerIndexOfThis:void 0,nextProducerIndex:0,liveConsumerNode:void 0,liveConsumerIndexOfThis:void 0,consumerAllowSignalWrites:!1,consumerIsAlwaysLive:!1,producerMustRecompute:()=>!1,producerRecomputeValue:()=>{},consumerMarkedDirty:()=>{},consumerOnSignalRead:()=>{}};function Df(e){if(!(Zo(e)&&!e.dirty)&&!(!e.dirty&&e.lastCleanEpoch===Bo)){if(!e.producerMustRecompute(e)&&!Go(e)){e.dirty=!1,e.lastCleanEpoch=Bo;return}e.producerRecomputeValue(e),e.dirty=!1,e.lastCleanEpoch=Bo}}function zo(e){return e&&(e.nextProducerIndex=0),P(e)}function $a(e,t){if(P(t),!(!e||e.producerNode===void 0||e.producerIndexOfThis===void 0||e.producerLastReadVersion===void 0)){if(Zo(e))for(let n=e.nextProducerIndex;ne.nextProducerIndex;)e.producerNode.pop(),e.producerLastReadVersion.pop(),e.producerIndexOfThis.pop()}}function Go(e){Yo(e);for(let t=0;t0}function Yo(e){e.producerNode??=[],e.producerIndexOfThis??=[],e.producerLastReadVersion??=[]}function wf(e){e.liveConsumerNode??=[],e.liveConsumerIndexOfThis??=[]}function Cf(e){return e.producerNode!==void 0}function If(){throw new Error}var Ef=If;function Ba(e){Ef=e}function m(e){return typeof e=="function"}function Ct(e){let n=e(r=>{Error.call(r),r.stack=new Error().stack});return n.prototype=Object.create(Error.prototype),n.prototype.constructor=n,n}var ir=Ct(e=>function(n){e(this),this.message=n?`${n.length} errors occurred during unsubscription: +${n.map((r,o)=>`${o+1}) ${r.toString()}`).join(` + `)}`:"",this.name="UnsubscriptionError",this.errors=n});function tt(e,t){if(e){let n=e.indexOf(t);0<=n&&e.splice(n,1)}}var $=class e{constructor(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._finalizers=null}unsubscribe(){let t;if(!this.closed){this.closed=!0;let{_parentage:n}=this;if(n)if(this._parentage=null,Array.isArray(n))for(let i of n)i.remove(this);else n.remove(this);let{initialTeardown:r}=this;if(m(r))try{r()}catch(i){t=i instanceof ir?i.errors:[i]}let{_finalizers:o}=this;if(o){this._finalizers=null;for(let i of o)try{Ua(i)}catch(s){t=t??[],s instanceof ir?t=[...t,...s.errors]:t.push(s)}}if(t)throw new ir(t)}}add(t){var n;if(t&&t!==this)if(this.closed)Ua(t);else{if(t instanceof e){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=(n=this._finalizers)!==null&&n!==void 0?n:[]).push(t)}}_hasParent(t){let{_parentage:n}=this;return n===t||Array.isArray(n)&&n.includes(t)}_addParent(t){let{_parentage:n}=this;this._parentage=Array.isArray(n)?(n.push(t),n):n?[n,t]:t}_removeParent(t){let{_parentage:n}=this;n===t?this._parentage=null:Array.isArray(n)&&tt(n,t)}remove(t){let{_finalizers:n}=this;n&&tt(n,t),t instanceof e&&t._removeParent(this)}};$.EMPTY=(()=>{let e=new $;return e.closed=!0,e})();var Qo=$.EMPTY;function sr(e){return e instanceof $||e&&"closed"in e&&m(e.remove)&&m(e.add)&&m(e.unsubscribe)}function Ua(e){m(e)?e():e.unsubscribe()}var fe={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1};var It={setTimeout(e,t,...n){let{delegate:r}=It;return r?.setTimeout?r.setTimeout(e,t,...n):setTimeout(e,t,...n)},clearTimeout(e){let{delegate:t}=It;return(t?.clearTimeout||clearTimeout)(e)},delegate:void 0};function ar(e){It.setTimeout(()=>{let{onUnhandledError:t}=fe;if(t)t(e);else throw e})}function xe(){}var Ha=Ko("C",void 0,void 0);function za(e){return Ko("E",void 0,e)}function Ga(e){return Ko("N",e,void 0)}function Ko(e,t,n){return{kind:e,value:t,error:n}}var nt=null;function Et(e){if(fe.useDeprecatedSynchronousErrorHandling){let t=!nt;if(t&&(nt={errorThrown:!1,error:null}),e(),t){let{errorThrown:n,error:r}=nt;if(nt=null,n)throw r}}else e()}function qa(e){fe.useDeprecatedSynchronousErrorHandling&&nt&&(nt.errorThrown=!0,nt.error=e)}var rt=class extends ${constructor(t){super(),this.isStopped=!1,t?(this.destination=t,sr(t)&&t.add(this)):this.destination=Mf}static create(t,n,r){return new bt(t,n,r)}next(t){this.isStopped?Xo(Ga(t),this):this._next(t)}error(t){this.isStopped?Xo(za(t),this):(this.isStopped=!0,this._error(t))}complete(){this.isStopped?Xo(Ha,this):(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe(),this.destination=null)}_next(t){this.destination.next(t)}_error(t){try{this.destination.error(t)}finally{this.unsubscribe()}}_complete(){try{this.destination.complete()}finally{this.unsubscribe()}}},bf=Function.prototype.bind;function Jo(e,t){return bf.call(e,t)}var ei=class{constructor(t){this.partialObserver=t}next(t){let{partialObserver:n}=this;if(n.next)try{n.next(t)}catch(r){cr(r)}}error(t){let{partialObserver:n}=this;if(n.error)try{n.error(t)}catch(r){cr(r)}else cr(t)}complete(){let{partialObserver:t}=this;if(t.complete)try{t.complete()}catch(n){cr(n)}}},bt=class extends rt{constructor(t,n,r){super();let o;if(m(t)||!t)o={next:t??void 0,error:n??void 0,complete:r??void 0};else{let i;this&&fe.useDeprecatedNextContext?(i=Object.create(t),i.unsubscribe=()=>this.unsubscribe(),o={next:t.next&&Jo(t.next,i),error:t.error&&Jo(t.error,i),complete:t.complete&&Jo(t.complete,i)}):o=t}this.destination=new ei(o)}};function cr(e){fe.useDeprecatedSynchronousErrorHandling?qa(e):ar(e)}function Sf(e){throw e}function Xo(e,t){let{onStoppedNotification:n}=fe;n&&It.setTimeout(()=>n(e,t))}var Mf={closed:!0,next:xe,error:Sf,complete:xe};var St=typeof Symbol=="function"&&Symbol.observable||"@@observable";function te(e){return e}function ti(...e){return ni(e)}function ni(e){return e.length===0?te:e.length===1?e[0]:function(n){return e.reduce((r,o)=>o(r),n)}}var T=(()=>{class e{constructor(n){n&&(this._subscribe=n)}lift(n){let r=new e;return r.source=this,r.operator=n,r}subscribe(n,r,o){let i=Tf(n)?n:new bt(n,r,o);return Et(()=>{let{operator:s,source:a}=this;i.add(s?s.call(i,a):a?this._subscribe(i):this._trySubscribe(i))}),i}_trySubscribe(n){try{return this._subscribe(n)}catch(r){n.error(r)}}forEach(n,r){return r=Wa(r),new r((o,i)=>{let s=new bt({next:a=>{try{n(a)}catch(c){i(c),s.unsubscribe()}},error:i,complete:o});this.subscribe(s)})}_subscribe(n){var r;return(r=this.source)===null||r===void 0?void 0:r.subscribe(n)}[St](){return this}pipe(...n){return ni(n)(this)}toPromise(n){return n=Wa(n),new n((r,o)=>{let i;this.subscribe(s=>i=s,s=>o(s),()=>r(i))})}}return e.create=t=>new e(t),e})();function Wa(e){var t;return(t=e??fe.Promise)!==null&&t!==void 0?t:Promise}function _f(e){return e&&m(e.next)&&m(e.error)&&m(e.complete)}function Tf(e){return e&&e instanceof rt||_f(e)&&sr(e)}function ri(e){return m(e?.lift)}function M(e){return t=>{if(ri(t))return t.lift(function(n){try{return e(n,this)}catch(r){this.error(r)}});throw new TypeError("Unable to lift unknown Observable type")}}function x(e,t,n,r,o){return new oi(e,t,n,r,o)}var oi=class extends rt{constructor(t,n,r,o,i,s){super(t),this.onFinalize=i,this.shouldUnsubscribe=s,this._next=n?function(a){try{n(a)}catch(c){t.error(c)}}:super._next,this._error=o?function(a){try{o(a)}catch(c){t.error(c)}finally{this.unsubscribe()}}:super._error,this._complete=r?function(){try{r()}catch(a){t.error(a)}finally{this.unsubscribe()}}:super._complete}unsubscribe(){var t;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){let{closed:n}=this;super.unsubscribe(),!n&&((t=this.onFinalize)===null||t===void 0||t.call(this))}}};function Mt(){return M((e,t)=>{let n=null;e._refCount++;let r=x(t,void 0,void 0,void 0,()=>{if(!e||e._refCount<=0||0<--e._refCount){n=null;return}let o=e._connection,i=n;n=null,o&&(!i||o===i)&&o.unsubscribe(),t.unsubscribe()});e.subscribe(r),r.closed||(n=e.connect())})}var Ue=class extends T{constructor(t,n){super(),this.source=t,this.subjectFactory=n,this._subject=null,this._refCount=0,this._connection=null,ri(t)&&(this.lift=t.lift)}_subscribe(t){return this.getSubject().subscribe(t)}getSubject(){let t=this._subject;return(!t||t.isStopped)&&(this._subject=this.subjectFactory()),this._subject}_teardown(){this._refCount=0;let{_connection:t}=this;this._subject=this._connection=null,t?.unsubscribe()}connect(){let t=this._connection;if(!t){t=this._connection=new $;let n=this.getSubject();t.add(this.source.subscribe(x(n,void 0,()=>{this._teardown(),n.complete()},r=>{this._teardown(),n.error(r)},()=>this._teardown()))),t.closed&&(this._connection=null,t=$.EMPTY)}return t}refCount(){return Mt()(this)}};var Za=Ct(e=>function(){e(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"});var U=(()=>{class e extends T{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(n){let r=new ur(this,this);return r.operator=n,r}_throwIfClosed(){if(this.closed)throw new Za}next(n){Et(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(let r of this.currentObservers)r.next(n)}})}error(n){Et(()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=n;let{observers:r}=this;for(;r.length;)r.shift().error(n)}})}complete(){Et(()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;let{observers:n}=this;for(;n.length;)n.shift().complete()}})}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var n;return((n=this.observers)===null||n===void 0?void 0:n.length)>0}_trySubscribe(n){return this._throwIfClosed(),super._trySubscribe(n)}_subscribe(n){return this._throwIfClosed(),this._checkFinalizedStatuses(n),this._innerSubscribe(n)}_innerSubscribe(n){let{hasError:r,isStopped:o,observers:i}=this;return r||o?Qo:(this.currentObservers=null,i.push(n),new $(()=>{this.currentObservers=null,tt(i,n)}))}_checkFinalizedStatuses(n){let{hasError:r,thrownError:o,isStopped:i}=this;r?n.error(o):i&&n.complete()}asObservable(){let n=new T;return n.source=this,n}}return e.create=(t,n)=>new ur(t,n),e})(),ur=class extends U{constructor(t,n){super(),this.destination=t,this.source=n}next(t){var n,r;(r=(n=this.destination)===null||n===void 0?void 0:n.next)===null||r===void 0||r.call(n,t)}error(t){var n,r;(r=(n=this.destination)===null||n===void 0?void 0:n.error)===null||r===void 0||r.call(n,t)}complete(){var t,n;(n=(t=this.destination)===null||t===void 0?void 0:t.complete)===null||n===void 0||n.call(t)}_subscribe(t){var n,r;return(r=(n=this.source)===null||n===void 0?void 0:n.subscribe(t))!==null&&r!==void 0?r:Qo}};var W=class extends U{constructor(t){super(),this._value=t}get value(){return this.getValue()}_subscribe(t){let n=super._subscribe(t);return!n.closed&&t.next(this._value),n}getValue(){let{hasError:t,thrownError:n,_value:r}=this;if(t)throw n;return this._throwIfClosed(),r}next(t){super.next(this._value=t)}};var ii={now(){return(ii.delegate||Date).now()},delegate:void 0};var lr=class extends ${constructor(t,n){super()}schedule(t,n=0){return this}};var an={setInterval(e,t,...n){let{delegate:r}=an;return r?.setInterval?r.setInterval(e,t,...n):setInterval(e,t,...n)},clearInterval(e){let{delegate:t}=an;return(t?.clearInterval||clearInterval)(e)},delegate:void 0};var dr=class extends lr{constructor(t,n){super(t,n),this.scheduler=t,this.work=n,this.pending=!1}schedule(t,n=0){var r;if(this.closed)return this;this.state=t;let o=this.id,i=this.scheduler;return o!=null&&(this.id=this.recycleAsyncId(i,o,n)),this.pending=!0,this.delay=n,this.id=(r=this.id)!==null&&r!==void 0?r:this.requestAsyncId(i,this.id,n),this}requestAsyncId(t,n,r=0){return an.setInterval(t.flush.bind(t,this),r)}recycleAsyncId(t,n,r=0){if(r!=null&&this.delay===r&&this.pending===!1)return n;n!=null&&an.clearInterval(n)}execute(t,n){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;let r=this._execute(t,n);if(r)return r;this.pending===!1&&this.id!=null&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(t,n){let r=!1,o;try{this.work(t)}catch(i){r=!0,o=i||new Error("Scheduled action threw falsy error")}if(r)return this.unsubscribe(),o}unsubscribe(){if(!this.closed){let{id:t,scheduler:n}=this,{actions:r}=n;this.work=this.state=this.scheduler=null,this.pending=!1,tt(r,this),t!=null&&(this.id=this.recycleAsyncId(n,t,null)),this.delay=null,super.unsubscribe()}}};var _t=class e{constructor(t,n=e.now){this.schedulerActionCtor=t,this.now=n}schedule(t,n=0,r){return new this.schedulerActionCtor(this,t).schedule(r,n)}};_t.now=ii.now;var fr=class extends _t{constructor(t,n=_t.now){super(t,n),this.actions=[],this._active=!1}flush(t){let{actions:n}=this;if(this._active){n.push(t);return}let r;this._active=!0;do if(r=t.execute(t.state,t.delay))break;while(t=n.shift());if(this._active=!1,r){for(;t=n.shift();)t.unsubscribe();throw r}}};var si=new fr(dr),Ya=si;var K=new T(e=>e.complete());function hr(e){return e&&m(e.schedule)}function ai(e){return e[e.length-1]}function Qa(e){return m(ai(e))?e.pop():void 0}function we(e){return hr(ai(e))?e.pop():void 0}function Ka(e,t){return typeof ai(e)=="number"?e.pop():t}function Xa(e,t,n,r){function o(i){return i instanceof n?i:new n(function(s){s(i)})}return new(n||(n=Promise))(function(i,s){function a(l){try{u(r.next(l))}catch(d){s(d)}}function c(l){try{u(r.throw(l))}catch(d){s(d)}}function u(l){l.done?i(l.value):o(l.value).then(a,c)}u((r=r.apply(e,t||[])).next())})}function Ja(e){var t=typeof Symbol=="function"&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function ot(e){return this instanceof ot?(this.v=e,this):new ot(e)}function ec(e,t,n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r=n.apply(e,t||[]),o,i=[];return o=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),a("next"),a("throw"),a("return",s),o[Symbol.asyncIterator]=function(){return this},o;function s(f){return function(v){return Promise.resolve(v).then(f,d)}}function a(f,v){r[f]&&(o[f]=function(R){return new Promise(function(z,H){i.push([f,R,z,H])>1||c(f,R)})},v&&(o[f]=v(o[f])))}function c(f,v){try{u(r[f](v))}catch(R){p(i[0][3],R)}}function u(f){f.value instanceof ot?Promise.resolve(f.value.v).then(l,d):p(i[0][2],f)}function l(f){c("next",f)}function d(f){c("throw",f)}function p(f,v){f(v),i.shift(),i.length&&c(i[0][0],i[0][1])}}function tc(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],n;return t?t.call(e):(e=typeof Ja=="function"?Ja(e):e[Symbol.iterator](),n={},r("next"),r("throw"),r("return"),n[Symbol.asyncIterator]=function(){return this},n);function r(i){n[i]=e[i]&&function(s){return new Promise(function(a,c){s=e[i](s),o(a,c,s.done,s.value)})}}function o(i,s,a,c){Promise.resolve(c).then(function(u){i({value:u,done:a})},s)}}var Tt=e=>e&&typeof e.length=="number"&&typeof e!="function";function pr(e){return m(e?.then)}function gr(e){return m(e[St])}function mr(e){return Symbol.asyncIterator&&m(e?.[Symbol.asyncIterator])}function vr(e){return new TypeError(`You provided ${e!==null&&typeof e=="object"?"an invalid object":`'${e}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}function xf(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var yr=xf();function Dr(e){return m(e?.[yr])}function wr(e){return ec(this,arguments,function*(){let n=e.getReader();try{for(;;){let{value:r,done:o}=yield ot(n.read());if(o)return yield ot(void 0);yield yield ot(r)}}finally{n.releaseLock()}})}function Cr(e){return m(e?.getReader)}function k(e){if(e instanceof T)return e;if(e!=null){if(gr(e))return Nf(e);if(Tt(e))return Af(e);if(pr(e))return Rf(e);if(mr(e))return nc(e);if(Dr(e))return Of(e);if(Cr(e))return Pf(e)}throw vr(e)}function Nf(e){return new T(t=>{let n=e[St]();if(m(n.subscribe))return n.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function Af(e){return new T(t=>{for(let n=0;n{e.then(n=>{t.closed||(t.next(n),t.complete())},n=>t.error(n)).then(null,ar)})}function Of(e){return new T(t=>{for(let n of e)if(t.next(n),t.closed)return;t.complete()})}function nc(e){return new T(t=>{Ff(e,t).catch(n=>t.error(n))})}function Pf(e){return nc(wr(e))}function Ff(e,t){var n,r,o,i;return Xa(this,void 0,void 0,function*(){try{for(n=tc(e);r=yield n.next(),!r.done;){let s=r.value;if(t.next(s),t.closed)return}}catch(s){o={error:s}}finally{try{r&&!r.done&&(i=n.return)&&(yield i.call(n))}finally{if(o)throw o.error}}t.complete()})}function ee(e,t,n,r=0,o=!1){let i=t.schedule(function(){n(),o?e.add(this.schedule(null,r)):this.unsubscribe()},r);if(e.add(i),!o)return i}function Ir(e,t=0){return M((n,r)=>{n.subscribe(x(r,o=>ee(r,e,()=>r.next(o),t),()=>ee(r,e,()=>r.complete(),t),o=>ee(r,e,()=>r.error(o),t)))})}function Er(e,t=0){return M((n,r)=>{r.add(e.schedule(()=>n.subscribe(r),t))})}function rc(e,t){return k(e).pipe(Er(t),Ir(t))}function oc(e,t){return k(e).pipe(Er(t),Ir(t))}function ic(e,t){return new T(n=>{let r=0;return t.schedule(function(){r===e.length?n.complete():(n.next(e[r++]),n.closed||this.schedule())})})}function sc(e,t){return new T(n=>{let r;return ee(n,t,()=>{r=e[yr](),ee(n,t,()=>{let o,i;try{({value:o,done:i}=r.next())}catch(s){n.error(s);return}i?n.complete():n.next(o)},0,!0)}),()=>m(r?.return)&&r.return()})}function br(e,t){if(!e)throw new Error("Iterable cannot be null");return new T(n=>{ee(n,t,()=>{let r=e[Symbol.asyncIterator]();ee(n,t,()=>{r.next().then(o=>{o.done?n.complete():n.next(o.value)})},0,!0)})})}function ac(e,t){return br(wr(e),t)}function cc(e,t){if(e!=null){if(gr(e))return rc(e,t);if(Tt(e))return ic(e,t);if(pr(e))return oc(e,t);if(mr(e))return br(e,t);if(Dr(e))return sc(e,t);if(Cr(e))return ac(e,t)}throw vr(e)}function L(e,t){return t?cc(e,t):k(e)}function y(...e){let t=we(e);return L(e,t)}function He(e,t){let n=m(e)?e:()=>e,r=o=>o.error(n());return new T(t?o=>t.schedule(r,0,o):r)}function ci(e){return!!e&&(e instanceof T||m(e.lift)&&m(e.subscribe))}var Ne=Ct(e=>function(){e(this),this.name="EmptyError",this.message="no elements in sequence"});function uc(e){return e instanceof Date&&!isNaN(e)}function C(e,t){return M((n,r)=>{let o=0;n.subscribe(x(r,i=>{r.next(e.call(t,i,o++))}))})}var{isArray:kf}=Array;function Lf(e,t){return kf(t)?e(...t):e(t)}function Sr(e){return C(t=>Lf(e,t))}var{isArray:jf}=Array,{getPrototypeOf:Vf,prototype:$f,keys:Bf}=Object;function lc(e){if(e.length===1){let t=e[0];if(jf(t))return{args:t,keys:null};if(Uf(t)){let n=Bf(t);return{args:n.map(r=>t[r]),keys:n}}}return{args:e,keys:null}}function Uf(e){return e&&typeof e=="object"&&Vf(e)===$f}function dc(e,t){return e.reduce((n,r,o)=>(n[r]=t[o],n),{})}function Mr(...e){let t=we(e),n=Qa(e),{args:r,keys:o}=lc(e);if(r.length===0)return L([],t);let i=new T(Hf(r,t,o?s=>dc(o,s):te));return n?i.pipe(Sr(n)):i}function Hf(e,t,n=te){return r=>{fc(t,()=>{let{length:o}=e,i=new Array(o),s=o,a=o;for(let c=0;c{let u=L(e[c],t),l=!1;u.subscribe(x(r,d=>{i[c]=d,l||(l=!0,a--),a||r.next(n(i.slice()))},()=>{--s||r.complete()}))},r)},r)}}function fc(e,t,n){e?ee(n,e,t):t()}function hc(e,t,n,r,o,i,s,a){let c=[],u=0,l=0,d=!1,p=()=>{d&&!c.length&&!u&&t.complete()},f=R=>u{i&&t.next(R),u++;let z=!1;k(n(R,l++)).subscribe(x(t,H=>{o?.(H),i?f(H):t.next(H)},()=>{z=!0},void 0,()=>{if(z)try{for(u--;c.length&&uv(H)):v(H)}p()}catch(H){t.error(H)}}))};return e.subscribe(x(t,f,()=>{d=!0,p()})),()=>{a?.()}}function j(e,t,n=1/0){return m(t)?j((r,o)=>C((i,s)=>t(r,i,o,s))(k(e(r,o))),n):(typeof t=="number"&&(n=t),M((r,o)=>hc(r,o,e,n)))}function cn(e=1/0){return j(te,e)}function pc(){return cn(1)}function Ce(...e){return pc()(L(e,we(e)))}function it(e){return new T(t=>{k(e()).subscribe(t)})}var zf=["addListener","removeListener"],Gf=["addEventListener","removeEventListener"],qf=["on","off"];function xt(e,t,n,r){if(m(n)&&(r=n,n=void 0),r)return xt(e,t,n).pipe(Sr(r));let[o,i]=Yf(e)?Gf.map(s=>a=>e[s](t,a,n)):Wf(e)?zf.map(gc(e,t)):Zf(e)?qf.map(gc(e,t)):[];if(!o&&Tt(e))return j(s=>xt(s,t,n))(k(e));if(!o)throw new TypeError("Invalid event target");return new T(s=>{let a=(...c)=>s.next(1i(a)})}function gc(e,t){return n=>r=>e[n](t,r)}function Wf(e){return m(e.addListener)&&m(e.removeListener)}function Zf(e){return m(e.on)&&m(e.off)}function Yf(e){return m(e.addEventListener)&&m(e.removeEventListener)}function mc(e=0,t,n=Ya){let r=-1;return t!=null&&(hr(t)?n=t:r=t),new T(o=>{let i=uc(e)?+e-n.now():e;i<0&&(i=0);let s=0;return n.schedule(function(){o.closed||(o.next(s++),0<=r?this.schedule(void 0,r):o.complete())},i)})}function _r(...e){let t=we(e),n=Ka(e,1/0),r=e;return r.length?r.length===1?k(r[0]):cn(n)(L(r,t)):K}var st=new T(xe);function Y(e,t){return M((n,r)=>{let o=0;n.subscribe(x(r,i=>e.call(t,i,o++)&&r.next(i)))})}function ze(e){return M((t,n)=>{let r=null,o=!1,i;r=t.subscribe(x(n,void 0,void 0,s=>{i=k(e(s,ze(e)(t))),r?(r.unsubscribe(),r=null,i.subscribe(n)):o=!0})),o&&(r.unsubscribe(),r=null,i.subscribe(n))})}function vc(e,t,n,r,o){return(i,s)=>{let a=n,c=t,u=0;i.subscribe(x(s,l=>{let d=u++;c=a?e(c,l,d):(a=!0,l),r&&s.next(c)},o&&(()=>{a&&s.next(c),s.complete()})))}}function Nt(e,t){return m(t)?j(e,t,1):j(e,1)}function yc(e){return new T(t=>e.subscribe(t))}var Qf={connector:()=>new U};function Tr(e,t=Qf){let{connector:n}=t;return M((r,o)=>{let i=n();k(e(yc(i))).subscribe(o),o.add(r.subscribe(i))})}function Ge(e){return M((t,n)=>{let r=!1;t.subscribe(x(n,o=>{r=!0,n.next(o)},()=>{r||n.next(e),n.complete()}))})}function G(e){return e<=0?()=>K:M((t,n)=>{let r=0;t.subscribe(x(n,o=>{++r<=e&&(n.next(o),e<=r&&n.complete())}))})}function Dc(){return M((e,t)=>{e.subscribe(x(t,xe))})}function un(e){return C(()=>e)}function ui(e,t){return t?n=>Ce(t.pipe(G(1),Dc()),n.pipe(ui(e))):j((n,r)=>k(e(n,r)).pipe(G(1),un(n)))}function li(e,t=si){let n=mc(e,t);return ui(()=>n)}function xr(e=Kf){return M((t,n)=>{let r=!1;t.subscribe(x(n,o=>{r=!0,n.next(o)},()=>r?n.complete():n.error(e())))})}function Kf(){return new Ne}function ln(e){return M((t,n)=>{try{t.subscribe(n)}finally{n.add(e)}})}function Ie(e,t){let n=arguments.length>=2;return r=>r.pipe(e?Y((o,i)=>e(o,i,r)):te,G(1),n?Ge(t):xr(()=>new Ne))}function At(e){return e<=0?()=>K:M((t,n)=>{let r=[];t.subscribe(x(n,o=>{r.push(o),e{for(let o of r)n.next(o);n.complete()},void 0,()=>{r=null}))})}function di(e,t){let n=arguments.length>=2;return r=>r.pipe(e?Y((o,i)=>e(o,i,r)):te,At(1),n?Ge(t):xr(()=>new Ne))}function wc(e,t){let n=m(e)?e:()=>e;return m(t)?Tr(t,{connector:n}):r=>new Ue(r,n)}function fi(e){return e?t=>Tr(e)(t):t=>wc(new U)(t)}function hi(e,t){return M(vc(e,t,arguments.length>=2,!0))}function pi(...e){let t=we(e);return M((n,r)=>{(t?Ce(e,n,t):Ce(e,n)).subscribe(r)})}function Q(e,t){return M((n,r)=>{let o=null,i=0,s=!1,a=()=>s&&!o&&r.complete();n.subscribe(x(r,c=>{o?.unsubscribe();let u=0,l=i++;k(e(c,l)).subscribe(o=x(r,d=>r.next(t?t(c,d,l,u++):d),()=>{o=null,a()}))},()=>{s=!0,a()}))})}function gi(e){return M((t,n)=>{k(e).subscribe(x(n,()=>n.complete(),xe)),!n.closed&&t.subscribe(n)})}function q(e,t,n){let r=m(e)||t||n?{next:e,error:t,complete:n}:e;return r?M((o,i)=>{var s;(s=r.subscribe)===null||s===void 0||s.call(r);let a=!0;o.subscribe(x(i,c=>{var u;(u=r.next)===null||u===void 0||u.call(r,c),i.next(c)},()=>{var c;a=!1,(c=r.complete)===null||c===void 0||c.call(r),i.complete()},c=>{var u;a=!1,(u=r.error)===null||u===void 0||u.call(r,c),i.error(c)},()=>{var c,u;a&&((c=r.unsubscribe)===null||c===void 0||c.call(r)),(u=r.finalize)===null||u===void 0||u.call(r)}))}):te}var D=class extends Error{constructor(t,n){super(rs(t,n)),this.code=t}};function rs(e,t){return`${`NG0${Math.abs(e)}`}${t?": "+t:""}`}function os(e){return{toString:e}.toString()}function F(e){for(let t in e)if(e[t]===F)return t;throw Error("Could not find renamed property on target object.")}function ne(e){if(typeof e=="string")return e;if(Array.isArray(e))return"["+e.map(ne).join(", ")+"]";if(e==null)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;let t=e.toString();if(t==null)return""+t;let n=t.indexOf(` +`);return n===-1?t:t.substring(0,n)}function Cc(e,t){return e==null||e===""?t===null?"":t:t==null||t===""?e:e+" "+t}var Jf=F({__forward_ref__:F});function nu(e){return e.__forward_ref__=nu,e.toString=function(){return ne(this())},e}function se(e){return ru(e)?e():e}function ru(e){return typeof e=="function"&&e.hasOwnProperty(Jf)&&e.__forward_ref__===nu}function w(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function eo(e){return Ic(e,iu)||Ic(e,su)}function ou(e){return eo(e)!==null}function Ic(e,t){return e.hasOwnProperty(t)?e[t]:null}function Xf(e){let t=e&&(e[iu]||e[su]);return t||null}function Ec(e){return e&&(e.hasOwnProperty(bc)||e.hasOwnProperty(eh))?e[bc]:null}var iu=F({\u0275prov:F}),bc=F({\u0275inj:F}),su=F({ngInjectableDef:F}),eh=F({ngInjectorDef:F}),E=class{constructor(t,n){this._desc=t,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,typeof n=="number"?this.__NG_ELEMENT_ID__=n:n!==void 0&&(this.\u0275prov=w({token:this,providedIn:n.providedIn||"root",factory:n.factory}))}get multi(){return this}toString(){return`InjectionToken ${this._desc}`}};function au(e){return e&&!!e.\u0275providers}var th=F({\u0275cmp:F}),nh=F({\u0275dir:F}),rh=F({\u0275pipe:F}),oh=F({\u0275mod:F}),kr=F({\u0275fac:F}),hn=F({__NG_ELEMENT_ID__:F}),Sc=F({__NG_ENV_ID__:F});function ih(e){return typeof e=="string"?e:e==null?"":String(e)}function sh(e){return typeof e=="function"?e.name||e.toString():typeof e=="object"&&e!=null&&typeof e.type=="function"?e.type.name||e.type.toString():ih(e)}function ah(e,t){let n=t?`. Dependency path: ${t.join(" > ")} > ${e}`:"";throw new D(-200,e)}function is(e,t){throw new D(-201,!1)}var S=function(e){return e[e.Default=0]="Default",e[e.Host=1]="Host",e[e.Self=2]="Self",e[e.SkipSelf=4]="SkipSelf",e[e.Optional=8]="Optional",e}(S||{}),bi;function cu(){return bi}function ie(e){let t=bi;return bi=e,t}function uu(e,t,n){let r=eo(e);if(r&&r.providedIn=="root")return r.value===void 0?r.value=r.factory():r.value;if(n&S.Optional)return null;if(t!==void 0)return t;is(e,"Injector")}var ch={},pn=ch,uh="__NG_DI_FLAG__",Lr="ngTempTokenPath",lh="ngTokenPath",dh=/\n/gm,fh="\u0275",Mc="__source",Ft;function hh(){return Ft}function qe(e){let t=Ft;return Ft=e,t}function ph(e,t=S.Default){if(Ft===void 0)throw new D(-203,!1);return Ft===null?uu(e,void 0,t):Ft.get(e,t&S.Optional?null:void 0,t)}function _(e,t=S.Default){return(cu()||ph)(se(e),t)}function h(e,t=S.Default){return _(e,to(t))}function to(e){return typeof e>"u"||typeof e=="number"?e:0|(e.optional&&8)|(e.host&&1)|(e.self&&2)|(e.skipSelf&&4)}function Si(e){let t=[];for(let n=0;n ");else if(typeof t=="object"){let i=[];for(let s in t)if(t.hasOwnProperty(s)){let a=t[s];i.push(s+":"+(typeof a=="string"?JSON.stringify(a):ne(a)))}o=`{${i.join(", ")}}`}return`${n}${r?"("+r+")":""}[${o}]: ${e.replace(dh,` + `)}`}function Lt(e,t){let n=e.hasOwnProperty(kr);return n?e[kr]:null}function ss(e,t){e.forEach(n=>Array.isArray(n)?ss(n,t):t(n))}function lu(e,t,n){t>=e.length?e.push(n):e.splice(t,0,n)}function jr(e,t){return t>=e.length-1?e.pop():e.splice(t,1)[0]}var gn={},jt=[],Vt=new E(""),du=new E("",-1),fu=new E(""),Vr=class{get(t,n=pn){if(n===pn){let r=new Error(`NullInjectorError: No provider for ${ne(t)}!`);throw r.name="NullInjectorError",r}return n}},hu=function(e){return e[e.OnPush=0]="OnPush",e[e.Default=1]="Default",e}(hu||{}),be=function(e){return e[e.Emulated=0]="Emulated",e[e.None=2]="None",e[e.ShadowDom=3]="ShadowDom",e}(be||{}),Ye=function(e){return e[e.None=0]="None",e[e.SignalBased=1]="SignalBased",e[e.HasDecoratorInputTransform=2]="HasDecoratorInputTransform",e}(Ye||{});function yh(e,t,n){let r=e.length;for(;;){let o=e.indexOf(t,n);if(o===-1)return o;if(o===0||e.charCodeAt(o-1)<=32){let i=t.length;if(o+i===r||e.charCodeAt(o+i)<=32)return o}n=o+1}}function Mi(e,t,n){let r=0;for(;rt){s=i-1;break}}}for(;i-1){let i;for(;++oi?d="":d=o[l+1].toLowerCase(),r&2&&u!==d){if(he(r))return!1;s=!0}}}}return he(r)||s}function he(e){return(e&1)===0}function bh(e,t,n,r){if(t===null)return-1;let o=0;if(r||!n){let i=!1;for(;o-1)for(n++;n0?'="'+a+'"':"")+"]"}else r&8?o+="."+s:r&4&&(o+=" "+s);else o!==""&&!he(s)&&(t+=Tc(i,o),o=""),r=s,i=i||!he(r);n++}return o!==""&&(t+=Tc(i,o)),t}function xh(e){return e.map(Th).join(",")}function Nh(e){let t=[],n=[],r=1,o=2;for(;r{let t=Du(e),n=V(g({},t),{decls:e.decls,vars:e.vars,template:e.template,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,onPush:e.changeDetection===hu.OnPush,directiveDefs:null,pipeDefs:null,dependencies:t.standalone&&e.dependencies||null,getStandaloneInjector:null,signals:e.signals??!1,data:e.data||{},encapsulation:e.encapsulation||be.Emulated,styles:e.styles||jt,_:null,schemas:e.schemas||null,tView:null,id:""});wu(n);let r=e.dependencies;return n.directiveDefs=Nc(r,!1),n.pipeDefs=Nc(r,!0),n.id=Oh(n),n})}function Ah(e){return ut(e)||gu(e)}function Rh(e){return e!==null}function xc(e,t){if(e==null)return gn;let n={};for(let r in e)if(e.hasOwnProperty(r)){let o=e[r],i,s,a=Ye.None;Array.isArray(o)?(a=o[0],i=o[1],s=o[2]??i):(i=o,s=o),t?(n[i]=a!==Ye.None?[r,a]:r,t[i]=s):n[i]=r}return n}function us(e){return os(()=>{let t=Du(e);return wu(t),t})}function ut(e){return e[th]||null}function gu(e){return e[nh]||null}function mu(e){return e[rh]||null}function vu(e){let t=ut(e)||gu(e)||mu(e);return t!==null?t.standalone:!1}function yu(e,t){let n=e[oh]||null;if(!n&&t===!0)throw new Error(`Type ${ne(e)} does not have '\u0275mod' property.`);return n}function Du(e){let t={};return{type:e.type,providersResolver:null,factory:null,hostBindings:e.hostBindings||null,hostVars:e.hostVars||0,hostAttrs:e.hostAttrs||null,contentQueries:e.contentQueries||null,declaredInputs:t,inputTransforms:null,inputConfig:e.inputs||gn,exportAs:e.exportAs||null,standalone:e.standalone===!0,signals:e.signals===!0,selectors:e.selectors||jt,viewQuery:e.viewQuery||null,features:e.features||null,setInput:null,findHostDirectiveDefs:null,hostDirectives:null,inputs:xc(e.inputs,t),outputs:xc(e.outputs),debugInfo:null}}function wu(e){e.features?.forEach(t=>t(e))}function Nc(e,t){if(!e)return null;let n=t?mu:Ah;return()=>(typeof e=="function"?e():e).map(r=>n(r)).filter(Rh)}function Oh(e){let t=0,n=[e.selectors,e.ngContentSelectors,e.hostVars,e.hostAttrs,e.consts,e.vars,e.decls,e.encapsulation,e.standalone,e.signals,e.exportAs,JSON.stringify(e.inputs),JSON.stringify(e.outputs),Object.getOwnPropertyNames(e.type.prototype),!!e.contentQueries,!!e.viewQuery].join("|");for(let o of n)t=Math.imul(31,t)+o.charCodeAt(0)<<0;return t+=2147483648,"c"+t}function qt(e){return{\u0275providers:e}}function Ph(...e){return{\u0275providers:Cu(!0,e),\u0275fromNgModule:!0}}function Cu(e,...t){let n=[],r=new Set,o,i=s=>{n.push(s)};return ss(t,s=>{let a=s;_i(a,i,[],r)&&(o||=[],o.push(a))}),o!==void 0&&Iu(o,i),n}function Iu(e,t){for(let n=0;n{t(i,r)})}}function _i(e,t,n,r){if(e=se(e),!e)return!1;let o=null,i=Ec(e),s=!i&&ut(e);if(!i&&!s){let c=e.ngModule;if(i=Ec(c),i)o=c;else return!1}else{if(s&&!s.standalone)return!1;o=e}let a=r.has(o);if(s){if(a)return!1;if(r.add(o),s.dependencies){let c=typeof s.dependencies=="function"?s.dependencies():s.dependencies;for(let u of c)_i(u,t,n,r)}}else if(i){if(i.imports!=null&&!a){r.add(o);let u;try{ss(i.imports,l=>{_i(l,t,n,r)&&(u||=[],u.push(l))})}finally{}u!==void 0&&Iu(u,t)}if(!a){let u=Lt(o)||(()=>new o);t({provide:o,useFactory:u,deps:jt},o),t({provide:fu,useValue:o,multi:!0},o),t({provide:Vt,useValue:()=>_(o),multi:!0},o)}let c=i.providers;if(c!=null&&!a){let u=e;ls(c,l=>{t(l,u)})}}else return!1;return o!==e&&e.providers!==void 0}function ls(e,t){for(let n of e)au(n)&&(n=n.\u0275providers),Array.isArray(n)?ls(n,t):t(n)}var Fh=F({provide:String,useValue:F});function Eu(e){return e!==null&&typeof e=="object"&&Fh in e}function kh(e){return!!(e&&e.useExisting)}function Lh(e){return!!(e&&e.useFactory)}function Ti(e){return typeof e=="function"}var ro=new E(""),Ar={},jh={},mi;function ds(){return mi===void 0&&(mi=new Vr),mi}var ue=class{},mn=class extends ue{get destroyed(){return this._destroyed}constructor(t,n,r,o){super(),this.parent=n,this.source=r,this.scopes=o,this.records=new Map,this._ngOnDestroyHooks=new Set,this._onDestroyHooks=[],this._destroyed=!1,Ni(t,s=>this.processProvider(s)),this.records.set(du,Rt(void 0,this)),o.has("environment")&&this.records.set(ue,Rt(void 0,this));let i=this.records.get(ro);i!=null&&typeof i.value=="string"&&this.scopes.add(i.value),this.injectorDefTypes=new Set(this.get(fu,jt,S.Self))}destroy(){this.assertNotDestroyed(),this._destroyed=!0;let t=P(null);try{for(let r of this._ngOnDestroyHooks)r.ngOnDestroy();let n=this._onDestroyHooks;this._onDestroyHooks=[];for(let r of n)r()}finally{this.records.clear(),this._ngOnDestroyHooks.clear(),this.injectorDefTypes.clear(),P(t)}}onDestroy(t){return this.assertNotDestroyed(),this._onDestroyHooks.push(t),()=>this.removeOnDestroy(t)}runInContext(t){this.assertNotDestroyed();let n=qe(this),r=ie(void 0),o;try{return t()}finally{qe(n),ie(r)}}get(t,n=pn,r=S.Default){if(this.assertNotDestroyed(),t.hasOwnProperty(Sc))return t[Sc](this);r=to(r);let o,i=qe(this),s=ie(void 0);try{if(!(r&S.SkipSelf)){let c=this.records.get(t);if(c===void 0){let u=zh(t)&&eo(t);u&&this.injectableDefInScope(u)?c=Rt(xi(t),Ar):c=null,this.records.set(t,c)}if(c!=null)return this.hydrate(t,c)}let a=r&S.Self?ds():this.parent;return n=r&S.Optional&&n===pn?null:n,a.get(t,n)}catch(a){if(a.name==="NullInjectorError"){if((a[Lr]=a[Lr]||[]).unshift(ne(t)),i)throw a;return mh(a,t,"R3InjectorError",this.source)}else throw a}finally{ie(s),qe(i)}}resolveInjectorInitializers(){let t=P(null),n=qe(this),r=ie(void 0),o;try{let i=this.get(Vt,jt,S.Self);for(let s of i)s()}finally{qe(n),ie(r),P(t)}}toString(){let t=[],n=this.records;for(let r of n.keys())t.push(ne(r));return`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new D(205,!1)}processProvider(t){t=se(t);let n=Ti(t)?t:se(t&&t.provide),r=$h(t);if(!Ti(t)&&t.multi===!0){let o=this.records.get(n);o||(o=Rt(void 0,Ar,!0),o.factory=()=>Si(o.multi),this.records.set(n,o)),n=t,o.multi.push(t)}this.records.set(n,r)}hydrate(t,n){let r=P(null);try{return n.value===Ar&&(n.value=jh,n.value=n.factory()),typeof n.value=="object"&&n.value&&Hh(n.value)&&this._ngOnDestroyHooks.add(n.value),n.value}finally{P(r)}}injectableDefInScope(t){if(!t.providedIn)return!1;let n=se(t.providedIn);return typeof n=="string"?n==="any"||this.scopes.has(n):this.injectorDefTypes.has(n)}removeOnDestroy(t){let n=this._onDestroyHooks.indexOf(t);n!==-1&&this._onDestroyHooks.splice(n,1)}};function xi(e){let t=eo(e),n=t!==null?t.factory:Lt(e);if(n!==null)return n;if(e instanceof E)throw new D(204,!1);if(e instanceof Function)return Vh(e);throw new D(204,!1)}function Vh(e){if(e.length>0)throw new D(204,!1);let n=Xf(e);return n!==null?()=>n.factory(e):()=>new e}function $h(e){if(Eu(e))return Rt(void 0,e.useValue);{let t=Bh(e);return Rt(t,Ar)}}function Bh(e,t,n){let r;if(Ti(e)){let o=se(e);return Lt(o)||xi(o)}else if(Eu(e))r=()=>se(e.useValue);else if(Lh(e))r=()=>e.useFactory(...Si(e.deps||[]));else if(kh(e))r=()=>_(se(e.useExisting));else{let o=se(e&&(e.useClass||e.provide));if(Uh(e))r=()=>new o(...Si(e.deps));else return Lt(o)||xi(o)}return r}function Rt(e,t,n=!1){return{factory:e,value:t,multi:n?[]:void 0}}function Uh(e){return!!e.deps}function Hh(e){return e!==null&&typeof e=="object"&&typeof e.ngOnDestroy=="function"}function zh(e){return typeof e=="function"||typeof e=="object"&&e instanceof E}function Ni(e,t){for(let n of e)Array.isArray(n)?Ni(n,t):n&&au(n)?Ni(n.\u0275providers,t):t(n)}function Pe(e,t){e instanceof mn&&e.assertNotDestroyed();let n,r=qe(e),o=ie(void 0);try{return t()}finally{qe(r),ie(o)}}function Gh(){return cu()!==void 0||hh()!=null}function qh(e){return typeof e=="function"}var Fe=0,N=1,I=2,X=3,pe=4,me=5,$r=6,Ac=7,Qe=8,$t=9,Ae=10,Se=11,vn=12,Rc=13,En=14,Me=15,yn=16,Ot=17,oo=18,io=19,bu=20,Ze=21,vi=22,ae=23,lt=25,Su=1;var dt=7,Br=8,Ur=9,ce=10,Hr=function(e){return e[e.None=0]="None",e[e.HasTransplantedViews=2]="HasTransplantedViews",e}(Hr||{});function at(e){return Array.isArray(e)&&typeof e[Su]=="object"}function ke(e){return Array.isArray(e)&&e[Su]===!0}function Mu(e){return(e.flags&4)!==0}function fs(e){return e.componentOffset>-1}function Wh(e){return(e.flags&1)===1}function bn(e){return!!e.template}function Ai(e){return(e[I]&512)!==0}var Ri=class{constructor(t,n,r){this.previousValue=t,this.currentValue=n,this.firstChange=r}isFirstChange(){return this.firstChange}};function _u(e,t,n,r){t!==null?t.applyValueToInputSignal(t,r):e[n]=r}function so(){return Tu}function Tu(e){return e.type.prototype.ngOnChanges&&(e.setInput=Yh),Zh}so.ngInherit=!0;function Zh(){let e=Nu(this),t=e?.current;if(t){let n=e.previous;if(n===gn)e.previous=t;else for(let r in t)n[r]=t[r];e.current=null,this.ngOnChanges(t)}}function Yh(e,t,n,r,o){let i=this.declaredInputs[r],s=Nu(e)||Qh(e,{previous:gn,current:null}),a=s.current||(s.current={}),c=s.previous,u=c[i];a[i]=new Ri(u&&u.currentValue,n,c===gn),_u(e,t,o,n)}var xu="__ngSimpleChanges__";function Nu(e){return e[xu]||null}function Qh(e,t){return e[xu]=t}var Oc=null;var We=function(e,t,n){Oc?.(e,t,n)},Kh="svg",Jh="math";function Ke(e){for(;Array.isArray(e);)e=e[Fe];return e}function Le(e,t){return Ke(t[e.index])}function Xh(e,t){return e.data[t]}function Sn(e,t){let n=t[e];return at(n)?n:n[Fe]}function hs(e){return(e[I]&128)===128}function ep(e){return ke(e[X])}function Pc(e,t){return t==null?null:e[t]}function Au(e){e[Ot]=0}function Ru(e){e[I]&1024||(e[I]|=1024,hs(e)&&co(e))}function ao(e){return!!(e[I]&9216||e[ae]?.dirty)}function Oi(e){e[Ae].changeDetectionScheduler?.notify(8),e[I]&64&&(e[I]|=1024),ao(e)&&co(e)}function co(e){e[Ae].changeDetectionScheduler?.notify(0);let t=ft(e);for(;t!==null&&!(t[I]&8192||(t[I]|=8192,!hs(t)));)t=ft(t)}function Ou(e,t){if((e[I]&256)===256)throw new D(911,!1);e[Ze]===null&&(e[Ze]=[]),e[Ze].push(t)}function tp(e,t){if(e[Ze]===null)return;let n=e[Ze].indexOf(t);n!==-1&&e[Ze].splice(n,1)}function ft(e){let t=e[X];return ke(t)?t[X]:t}var O={lFrame:Uu(null),bindingsEnabled:!0,skipHydrationRootTNode:null};var Pu=!1;function np(){return O.lFrame.elementDepthCount}function rp(){O.lFrame.elementDepthCount++}function op(){O.lFrame.elementDepthCount--}function Fu(){return O.bindingsEnabled}function ip(){return O.skipHydrationRootTNode!==null}function sp(e){return O.skipHydrationRootTNode===e}function ap(){O.skipHydrationRootTNode=null}function ge(){return O.lFrame.lView}function ps(){return O.lFrame.tView}function je(){let e=ku();for(;e!==null&&e.type===64;)e=e.parent;return e}function ku(){return O.lFrame.currentTNode}function cp(){let e=O.lFrame,t=e.currentTNode;return e.isParent?t:t.parent}function uo(e,t){let n=O.lFrame;n.currentTNode=e,n.isParent=t}function Lu(){return O.lFrame.isParent}function up(){O.lFrame.isParent=!1}function ju(){return Pu}function Fc(e){Pu=e}function lp(e){return O.lFrame.bindingIndex=e}function dp(){return O.lFrame.inI18n}function fp(e,t){let n=O.lFrame;n.bindingIndex=n.bindingRootIndex=e,Pi(t)}function hp(){return O.lFrame.currentDirectiveIndex}function Pi(e){O.lFrame.currentDirectiveIndex=e}function Vu(e){O.lFrame.currentQueryIndex=e}function pp(e){let t=e[N];return t.type===2?t.declTNode:t.type===1?e[me]:null}function $u(e,t,n){if(n&S.SkipSelf){let o=t,i=e;for(;o=o.parent,o===null&&!(n&S.Host);)if(o=pp(i),o===null||(i=i[En],o.type&10))break;if(o===null)return!1;t=o,e=i}let r=O.lFrame=Bu();return r.currentTNode=t,r.lView=e,!0}function gs(e){let t=Bu(),n=e[N];O.lFrame=t,t.currentTNode=n.firstChild,t.lView=e,t.tView=n,t.contextLView=e,t.bindingIndex=n.bindingStartIndex,t.inI18n=!1}function Bu(){let e=O.lFrame,t=e===null?null:e.child;return t===null?Uu(e):t}function Uu(e){let t={currentTNode:null,isParent:!0,lView:null,tView:null,selectedIndex:-1,contextLView:null,elementDepthCount:0,currentNamespace:null,currentDirectiveIndex:-1,bindingRootIndex:-1,bindingIndex:-1,currentQueryIndex:0,parent:e,child:null,inI18n:!1};return e!==null&&(e.child=t),t}function Hu(){let e=O.lFrame;return O.lFrame=e.parent,e.currentTNode=null,e.lView=null,e}var zu=Hu;function ms(){let e=Hu();e.isParent=!0,e.tView=null,e.selectedIndex=-1,e.contextLView=null,e.elementDepthCount=0,e.currentDirectiveIndex=-1,e.currentNamespace=null,e.bindingRootIndex=-1,e.bindingIndex=-1,e.currentQueryIndex=0}function gp(){return O.lFrame.selectedIndex}function ht(e){O.lFrame.selectedIndex=e}function mp(){return O.lFrame.currentNamespace}var Gu=!0;function qu(){return Gu}function Wu(e){Gu=e}function vp(e,t,n){let{ngOnChanges:r,ngOnInit:o,ngDoCheck:i}=t.type.prototype;if(r){let s=Tu(t);(n.preOrderHooks??=[]).push(e,s),(n.preOrderCheckHooks??=[]).push(e,s)}o&&(n.preOrderHooks??=[]).push(0-e,o),i&&((n.preOrderHooks??=[]).push(e,i),(n.preOrderCheckHooks??=[]).push(e,i))}function Zu(e,t){for(let n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[c]<0&&(e[Ot]+=65536),(a>14>16&&(e[I]&3)===t&&(e[I]+=16384,kc(a,i)):kc(a,i)}var kt=-1,Dn=class{constructor(t,n,r){this.factory=t,this.resolving=!1,this.canSeeViewProviders=n,this.injectImpl=r}};function Dp(e){return e instanceof Dn}function wp(e){return(e.flags&8)!==0}function Cp(e){return(e.flags&16)!==0}var Di={},Fi=class{constructor(t,n){this.injector=t,this.parentInjector=n}get(t,n,r){r=to(r);let o=this.injector.get(t,Di,r);return o!==Di||n===Di?o:this.parentInjector.get(t,n,r)}};function Qu(e){return e!==kt}function zr(e){return e&32767}function Ip(e){return e>>16}function Gr(e,t){let n=Ip(e),r=t;for(;n>0;)r=r[En],n--;return r}var ki=!0;function Lc(e){let t=ki;return ki=e,t}var Ep=256,Ku=Ep-1,Ju=5,bp=0,Ee={};function Sp(e,t,n){let r;typeof n=="string"?r=n.charCodeAt(0)||0:n.hasOwnProperty(hn)&&(r=n[hn]),r==null&&(r=n[hn]=bp++);let o=r&Ku,i=1<>Ju)]|=i}function Xu(e,t){let n=el(e,t);if(n!==-1)return n;let r=t[N];r.firstCreatePass&&(e.injectorIndex=t.length,wi(r.data,e),wi(t,null),wi(r.blueprint,null));let o=vs(e,t),i=e.injectorIndex;if(Qu(o)){let s=zr(o),a=Gr(o,t),c=a[N].data;for(let u=0;u<8;u++)t[i+u]=a[s+u]|c[s+u]}return t[i+8]=o,i}function wi(e,t){e.push(0,0,0,0,0,0,0,0,t)}function el(e,t){return e.injectorIndex===-1||e.parent&&e.parent.injectorIndex===e.injectorIndex||t[e.injectorIndex+8]===null?-1:e.injectorIndex}function vs(e,t){if(e.parent&&e.parent.injectorIndex!==-1)return e.parent.injectorIndex;let n=0,r=null,o=t;for(;o!==null;){if(r=il(o),r===null)return kt;if(n++,o=o[En],r.injectorIndex!==-1)return r.injectorIndex|n<<16}return kt}function Mp(e,t,n){Sp(e,t,n)}function tl(e,t,n){if(n&S.Optional||e!==void 0)return e;is(t,"NodeInjector")}function nl(e,t,n,r){if(n&S.Optional&&r===void 0&&(r=null),!(n&(S.Self|S.Host))){let o=e[$t],i=ie(void 0);try{return o?o.get(t,r,n&S.Optional):uu(t,r,n&S.Optional)}finally{ie(i)}}return tl(r,t,n)}function rl(e,t,n,r=S.Default,o){if(e!==null){if(t[I]&2048&&!(r&S.Self)){let s=Ap(e,t,n,r,Ee);if(s!==Ee)return s}let i=ol(e,t,n,r,Ee);if(i!==Ee)return i}return nl(t,n,r,o)}function ol(e,t,n,r,o){let i=xp(n);if(typeof i=="function"){if(!$u(t,e,r))return r&S.Host?tl(o,n,r):nl(t,n,r,o);try{let s;if(s=i(r),s==null&&!(r&S.Optional))is(n);else return s}finally{zu()}}else if(typeof i=="number"){let s=null,a=el(e,t),c=kt,u=r&S.Host?t[Me][me]:null;for((a===-1||r&S.SkipSelf)&&(c=a===-1?vs(e,t):t[a+8],c===kt||!Vc(r,!1)?a=-1:(s=t[N],a=zr(c),t=Gr(c,t)));a!==-1;){let l=t[N];if(jc(i,a,l.data)){let d=_p(a,t,n,s,r,u);if(d!==Ee)return d}c=t[a+8],c!==kt&&Vc(r,t[N].data[a+8]===u)&&jc(i,a,t)?(s=l,a=zr(c),t=Gr(c,t)):a=-1}}return o}function _p(e,t,n,r,o,i){let s=t[N],a=s.data[e+8],c=r==null?fs(a)&&ki:r!=s&&(a.type&3)!==0,u=o&S.Host&&i===a,l=Tp(a,s,n,c,u);return l!==null?wn(t,s,l,a):Ee}function Tp(e,t,n,r,o){let i=e.providerIndexes,s=t.data,a=i&1048575,c=e.directiveStart,u=e.directiveEnd,l=i>>20,d=r?a:a+l,p=o?a+l:u;for(let f=d;f=c&&v.type===n)return f}if(o){let f=s[c];if(f&&bn(f)&&f.type===n)return c}return null}function wn(e,t,n,r){let o=e[n],i=t.data;if(Dp(o)){let s=o;s.resolving&&ah(sh(i[n]));let a=Lc(s.canSeeViewProviders);s.resolving=!0;let c,u=s.injectImpl?ie(s.injectImpl):null,l=$u(e,r,S.Default);try{o=e[n]=s.factory(void 0,i,e,r),t.firstCreatePass&&n>=r.directiveStart&&vp(n,i[n],t)}finally{u!==null&&ie(u),Lc(a),s.resolving=!1,zu()}}return o}function xp(e){if(typeof e=="string")return e.charCodeAt(0)||0;let t=e.hasOwnProperty(hn)?e[hn]:void 0;return typeof t=="number"?t>=0?t&Ku:Np:t}function jc(e,t,n){let r=1<>Ju)]&r)}function Vc(e,t){return!(e&S.Self)&&!(e&S.Host&&t)}var ct=class{constructor(t,n){this._tNode=t,this._lView=n}get(t,n,r){return rl(this._tNode,this._lView,t,to(r),n)}};function Np(){return new ct(je(),ge())}function ys(e){return os(()=>{let t=e.prototype.constructor,n=t[kr]||Li(t),r=Object.prototype,o=Object.getPrototypeOf(e.prototype).constructor;for(;o&&o!==r;){let i=o[kr]||Li(o);if(i&&i!==n)return i;o=Object.getPrototypeOf(o)}return i=>new i})}function Li(e){return ru(e)?()=>{let t=Li(se(e));return t&&t()}:Lt(e)}function Ap(e,t,n,r,o){let i=e,s=t;for(;i!==null&&s!==null&&s[I]&2048&&!(s[I]&512);){let a=ol(i,s,n,r|S.Self,Ee);if(a!==Ee)return a;let c=i.parent;if(!c){let u=s[bu];if(u){let l=u.get(n,Ee,r);if(l!==Ee)return l}c=il(s),s=s[En]}i=c}return o}function il(e){let t=e[N],n=t.type;return n===2?t.declTNode:n===1?e[me]:null}function $c(e,t=null,n=null,r){let o=sl(e,t,n,r);return o.resolveInjectorInitializers(),o}function sl(e,t=null,n=null,r,o=new Set){let i=[n||jt,Ph(e)];return r=r||(typeof e=="object"?void 0:ne(e)),new mn(i,t||ds(),r||null,o)}var Re=class e{static{this.THROW_IF_NOT_FOUND=pn}static{this.NULL=new Vr}static create(t,n){if(Array.isArray(t))return $c({name:""},n,t,"");{let r=t.name??"";return $c({name:r},t.parent,t.providers,r)}}static{this.\u0275prov=w({token:e,providedIn:"any",factory:()=>_(du)})}static{this.__NG_ELEMENT_ID__=-1}};var Rp=new E("");Rp.__NG_ELEMENT_ID__=e=>{let t=je();if(t===null)throw new D(204,!1);if(t.type&2)return t.value;if(e&S.Optional)return null;throw new D(204,!1)};var Op="ngOriginalError";function Ci(e){return e[Op]}var al=!0,cl=(()=>{class e{static{this.__NG_ELEMENT_ID__=Pp}static{this.__NG_ENV_ID__=n=>n}}return e})(),ji=class extends cl{constructor(t){super(),this._lView=t}onDestroy(t){return Ou(this._lView,t),()=>tp(this._lView,t)}};function Pp(){return new ji(ge())}var Wt=(()=>{class e{constructor(){this.taskId=0,this.pendingTasks=new Set,this.hasPendingTasks=new W(!1)}get _hasPendingTasks(){return this.hasPendingTasks.value}add(){this._hasPendingTasks||this.hasPendingTasks.next(!0);let n=this.taskId++;return this.pendingTasks.add(n),n}remove(n){this.pendingTasks.delete(n),this.pendingTasks.size===0&&this._hasPendingTasks&&this.hasPendingTasks.next(!1)}ngOnDestroy(){this.pendingTasks.clear(),this._hasPendingTasks&&this.hasPendingTasks.next(!1)}static{this.\u0275prov=w({token:e,providedIn:"root",factory:()=>new e})}}return e})();var Vi=class extends U{constructor(t=!1){super(),this.destroyRef=void 0,this.pendingTasks=void 0,this.__isAsync=t,Gh()&&(this.destroyRef=h(cl,{optional:!0})??void 0,this.pendingTasks=h(Wt,{optional:!0})??void 0)}emit(t){let n=P(null);try{super.next(t)}finally{P(n)}}subscribe(t,n,r){let o=t,i=n||(()=>null),s=r;if(t&&typeof t=="object"){let c=t;o=c.next?.bind(c),i=c.error?.bind(c),s=c.complete?.bind(c)}this.__isAsync&&(i=this.wrapInTimeout(i),o&&(o=this.wrapInTimeout(o)),s&&(s=this.wrapInTimeout(s)));let a=super.subscribe({next:o,error:i,complete:s});return t instanceof $&&t.add(a),a}wrapInTimeout(t){return n=>{let r=this.pendingTasks?.add();setTimeout(()=>{t(n),r!==void 0&&this.pendingTasks?.remove(r)})}}},J=Vi;function qr(...e){}function ul(e){let t,n;function r(){e=qr;try{n!==void 0&&typeof cancelAnimationFrame=="function"&&cancelAnimationFrame(n),t!==void 0&&clearTimeout(t)}catch{}}return t=setTimeout(()=>{e(),r()}),typeof requestAnimationFrame=="function"&&(n=requestAnimationFrame(()=>{e(),r()})),()=>r()}function Bc(e){return queueMicrotask(()=>e()),()=>{e=qr}}var Ds="isAngularZone",Wr=Ds+"_ID",Fp=0,B=class e{constructor(t){this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new J(!1),this.onMicrotaskEmpty=new J(!1),this.onStable=new J(!1),this.onError=new J(!1);let{enableLongStackTrace:n=!1,shouldCoalesceEventChangeDetection:r=!1,shouldCoalesceRunChangeDetection:o=!1,scheduleInRootZone:i=al}=t;if(typeof Zone>"u")throw new D(908,!1);Zone.assertZonePatched();let s=this;s._nesting=0,s._outer=s._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(s._inner=s._inner.fork(new Zone.TaskTrackingZoneSpec)),n&&Zone.longStackTraceZoneSpec&&(s._inner=s._inner.fork(Zone.longStackTraceZoneSpec)),s.shouldCoalesceEventChangeDetection=!o&&r,s.shouldCoalesceRunChangeDetection=o,s.callbackScheduled=!1,s.scheduleInRootZone=i,jp(s)}static isInAngularZone(){return typeof Zone<"u"&&Zone.current.get(Ds)===!0}static assertInAngularZone(){if(!e.isInAngularZone())throw new D(909,!1)}static assertNotInAngularZone(){if(e.isInAngularZone())throw new D(909,!1)}run(t,n,r){return this._inner.run(t,n,r)}runTask(t,n,r,o){let i=this._inner,s=i.scheduleEventTask("NgZoneEvent: "+o,t,kp,qr,qr);try{return i.runTask(s,n,r)}finally{i.cancelTask(s)}}runGuarded(t,n,r){return this._inner.runGuarded(t,n,r)}runOutsideAngular(t){return this._outer.run(t)}},kp={};function ws(e){if(e._nesting==0&&!e.hasPendingMicrotasks&&!e.isStable)try{e._nesting++,e.onMicrotaskEmpty.emit(null)}finally{if(e._nesting--,!e.hasPendingMicrotasks)try{e.runOutsideAngular(()=>e.onStable.emit(null))}finally{e.isStable=!0}}}function Lp(e){if(e.isCheckStableRunning||e.callbackScheduled)return;e.callbackScheduled=!0;function t(){ul(()=>{e.callbackScheduled=!1,$i(e),e.isCheckStableRunning=!0,ws(e),e.isCheckStableRunning=!1})}e.scheduleInRootZone?Zone.root.run(()=>{t()}):e._outer.run(()=>{t()}),$i(e)}function jp(e){let t=()=>{Lp(e)},n=Fp++;e._inner=e._inner.fork({name:"angular",properties:{[Ds]:!0,[Wr]:n,[Wr+n]:!0},onInvokeTask:(r,o,i,s,a,c)=>{if(Vp(c))return r.invokeTask(i,s,a,c);try{return Uc(e),r.invokeTask(i,s,a,c)}finally{(e.shouldCoalesceEventChangeDetection&&s.type==="eventTask"||e.shouldCoalesceRunChangeDetection)&&t(),Hc(e)}},onInvoke:(r,o,i,s,a,c,u)=>{try{return Uc(e),r.invoke(i,s,a,c,u)}finally{e.shouldCoalesceRunChangeDetection&&!e.callbackScheduled&&!$p(c)&&t(),Hc(e)}},onHasTask:(r,o,i,s)=>{r.hasTask(i,s),o===i&&(s.change=="microTask"?(e._hasPendingMicrotasks=s.microTask,$i(e),ws(e)):s.change=="macroTask"&&(e.hasPendingMacrotasks=s.macroTask))},onHandleError:(r,o,i,s)=>(r.handleError(i,s),e.runOutsideAngular(()=>e.onError.emit(s)),!1)})}function $i(e){e._hasPendingMicrotasks||(e.shouldCoalesceEventChangeDetection||e.shouldCoalesceRunChangeDetection)&&e.callbackScheduled===!0?e.hasPendingMicrotasks=!0:e.hasPendingMicrotasks=!1}function Uc(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function Hc(e){e._nesting--,ws(e)}var Bi=class{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new J,this.onMicrotaskEmpty=new J,this.onStable=new J,this.onError=new J}run(t,n,r){return t.apply(n,r)}runGuarded(t,n,r){return t.apply(n,r)}runOutsideAngular(t){return t()}runTask(t,n,r,o){return t.apply(n,r)}};function Vp(e){return ll(e,"__ignore_ng_zone__")}function $p(e){return ll(e,"__scheduler_tick__")}function ll(e,t){return!Array.isArray(e)||e.length!==1?!1:e[0]?.data?.[t]===!0}var Oe=class{constructor(){this._console=console}handleError(t){let n=this._findOriginalError(t);this._console.error("ERROR",t),n&&this._console.error("ORIGINAL ERROR",n)}_findOriginalError(t){let n=t&&Ci(t);for(;n&&Ci(n);)n=Ci(n);return n||null}},Bp=new E("",{providedIn:"root",factory:()=>{let e=h(B),t=h(Oe);return n=>e.runOutsideAngular(()=>t.handleError(n))}});function Up(){return Cs(je(),ge())}function Cs(e,t){return new lo(Le(e,t))}var lo=(()=>{class e{constructor(n){this.nativeElement=n}static{this.__NG_ELEMENT_ID__=Up}}return e})();function dl(e){return(e.flags&128)===128}var fl=new Map,Hp=0;function zp(){return Hp++}function Gp(e){fl.set(e[io],e)}function Ui(e){fl.delete(e[io])}var zc="__ngContext__";function Bt(e,t){at(t)?(e[zc]=t[io],Gp(t)):e[zc]=t}function hl(e){return gl(e[vn])}function pl(e){return gl(e[pe])}function gl(e){for(;e!==null&&!ke(e);)e=e[pe];return e}var Hi;function ml(e){Hi=e}function qp(){if(Hi!==void 0)return Hi;if(typeof document<"u")return document;throw new D(210,!1)}var Is=new E("",{providedIn:"root",factory:()=>Wp}),Wp="ng",Es=new E(""),Ve=new E("",{providedIn:"platform",factory:()=>"unknown"});var bs=new E("",{providedIn:"root",factory:()=>qp().body?.querySelector("[ngCspNonce]")?.getAttribute("ngCspNonce")||null});var Zp="h",Yp="b";var Qp=()=>null;function Ss(e,t,n=!1){return Qp(e,t,n)}var vl=!1,Kp=new E("",{providedIn:"root",factory:()=>vl});function yl(e){return e instanceof Function?e():e}var pt=function(e){return e[e.Important=1]="Important",e[e.DashCase=2]="DashCase",e}(pt||{}),Jp;function Ms(e,t){return Jp(e,t)}function Pt(e,t,n,r,o){if(r!=null){let i,s=!1;ke(r)?i=r:at(r)&&(s=!0,r=r[Fe]);let a=Ke(r);e===0&&n!==null?o==null?El(t,n,a):Zr(t,n,a,o||null,!0):e===1&&n!==null?Zr(t,n,a,o||null,!0):e===2?fg(t,a,s):e===3&&t.destroyNode(a),i!=null&&pg(t,e,i,n,o)}}function Xp(e,t){return e.createText(t)}function Dl(e,t,n){return e.createElement(t,n)}function eg(e,t){wl(e,t),t[Fe]=null,t[me]=null}function tg(e,t,n,r,o,i){r[Fe]=o,r[me]=t,fo(e,r,n,1,o,i)}function wl(e,t){t[Ae].changeDetectionScheduler?.notify(9),fo(e,t,t[Se],2,null,null)}function ng(e){let t=e[vn];if(!t)return Ii(e[N],e);for(;t;){let n=null;if(at(t))n=t[vn];else{let r=t[ce];r&&(n=r)}if(!n){for(;t&&!t[pe]&&t!==e;)at(t)&&Ii(t[N],t),t=t[X];t===null&&(t=e),at(t)&&Ii(t[N],t),n=t&&t[pe]}t=n}}function rg(e,t,n,r){let o=ce+r,i=n.length;r>0&&(n[o-1][pe]=t),r0&&(e[n-1][pe]=r[pe]);let i=jr(e,ce+t);eg(r[N],r);let s=i[oo];s!==null&&s.detachView(i[N]),r[X]=null,r[pe]=null,r[I]&=-129}return r}function Il(e,t){if(!(t[I]&256)){let n=t[Se];n.destroyNode&&fo(e,t,n,3,null,null),ng(t)}}function Ii(e,t){if(t[I]&256)return;let n=P(null);try{t[I]&=-129,t[I]|=256,t[ae]&&qo(t[ae]),ig(e,t),og(e,t),t[N].type===1&&t[Se].destroy();let r=t[yn];if(r!==null&&ke(t[X])){r!==t[X]&&_s(r,t);let o=t[oo];o!==null&&o.detachView(e)}Ui(t)}finally{P(n)}}function og(e,t){let n=e.cleanup,r=t[Ac];if(n!==null)for(let i=0;i=0?r[s]():r[-s].unsubscribe(),i+=2}else{let s=r[n[i+1]];n[i].call(s)}r!==null&&(t[Ac]=null);let o=t[Ze];if(o!==null){t[Ze]=null;for(let i=0;i-1){let{encapsulation:i}=e.data[r.directiveStart+o];if(i===be.None||i===be.Emulated)return null}return Le(r,n)}}function Zr(e,t,n,r,o){e.insertBefore(t,n,r,o)}function El(e,t,n){e.appendChild(t,n)}function Gc(e,t,n,r,o){r!==null?Zr(e,t,n,r,o):El(e,t,n)}function bl(e,t){return e.parentNode(t)}function cg(e,t){return e.nextSibling(t)}function ug(e,t,n){return dg(e,t,n)}function lg(e,t,n){return e.type&40?Le(e,n):null}var dg=lg,qc;function Sl(e,t,n,r){let o=sg(e,r,t),i=t[Se],s=r.parent||t[me],a=ug(s,r,t);if(o!=null)if(Array.isArray(n))for(let c=0;clt&&mg(e,t,lt,!1),We(s?2:0,o),n(r,o)}finally{ht(i),We(s?3:1,o)}}function Ol(e,t,n){if(Mu(t)){let r=P(null);try{let o=t.directiveStart,i=t.directiveEnd;for(let s=o;snull;function Sg(e,t,n,r,o,i){let s=t?t.injectorIndex:-1,a=0;return ip()&&(a|=128),{type:n,index:r,insertBeforeIndex:null,injectorIndex:s,directiveStart:-1,directiveEnd:-1,directiveStylingLast:-1,componentOffset:-1,propertyBindings:null,flags:a,providerIndexes:0,value:o,attrs:i,mergedAttrs:null,localNames:null,initialInputs:void 0,inputs:null,outputs:null,tView:null,next:null,prev:null,projectionNext:null,child:null,parent:t,projection:null,styles:null,stylesWithoutHost:null,residualStyles:void 0,classes:null,classesWithoutHost:null,residualClasses:void 0,classBindings:0,styleBindings:0}}function Wc(e,t,n,r,o){for(let i in t){if(!t.hasOwnProperty(i))continue;let s=t[i];if(s===void 0)continue;r??={};let a,c=Ye.None;Array.isArray(s)?(a=s[0],c=s[1]):a=s;let u=i;if(o!==null){if(!o.hasOwnProperty(i))continue;u=o[i]}e===0?Zc(r,n,u,a,c):Zc(r,n,u,a)}return r}function Zc(e,t,n,r,o){let i;e.hasOwnProperty(n)?(i=e[n]).push(t,r):i=e[n]=[t,r],o!==void 0&&i.push(o)}function Mg(e,t,n){let r=t.directiveStart,o=t.directiveEnd,i=e.data,s=t.attrs,a=[],c=null,u=null;for(let l=r;l0;){let n=e[--t];if(typeof n=="number"&&n<0)return n}return 0}function Ng(e,t,n,r){let o=n.directiveStart,i=n.directiveEnd;fs(n)&&Lg(t,n,e.data[o+n.componentOffset]),e.firstCreatePass||Xu(n,t),Bt(r,t);let s=n.initialInputs;for(let a=o;a{co(e.lView)},consumerOnSignalRead(){this.lView[ae]=this}});function Kg(e){let t=e[ae]??Object.create(Jg);return t.lView=e,t}var Jg=V(g({},Ho),{consumerIsAlwaysLive:!0,consumerMarkedDirty:e=>{let t=ft(e.lView);for(;t&&!Ul(t[N]);)t=ft(t);t&&Ru(t)},consumerOnSignalRead(){this.lView[ae]=this}});function Ul(e){return e.type!==2}var Xg=100;function Hl(e,t=!0,n=0){let r=e[Ae],o=r.rendererFactory,i=!1;i||o.begin?.();try{em(e,n)}catch(s){throw t&&Bg(e,s),s}finally{i||(o.end?.(),r.inlineEffectRunner?.flush())}}function em(e,t){let n=ju();try{Fc(!0),Zi(e,t);let r=0;for(;ao(e);){if(r===Xg)throw new D(103,!1);r++,Zi(e,1)}}finally{Fc(n)}}function tm(e,t,n,r){let o=t[I];if((o&256)===256)return;let i=!1,s=!1;!i&&t[Ae].inlineEffectRunner?.flush(),gs(t);let a=!0,c=null,u=null;i||(Ul(e)?(u=Wg(t),c=zo(u)):Va()===null?(a=!1,u=Kg(t),c=zo(u)):t[ae]&&(qo(t[ae]),t[ae]=null));try{Au(t),lp(e.bindingStartIndex),n!==null&&Rl(e,t,n,2,r);let l=(o&3)===3;if(!i)if(l){let f=e.preOrderCheckHooks;f!==null&&Rr(t,f,null)}else{let f=e.preOrderHooks;f!==null&&Or(t,f,0,null),yi(t,0)}if(s||nm(t),zl(t,0),e.contentQueries!==null&&jl(e,t),!i)if(l){let f=e.contentCheckHooks;f!==null&&Rr(t,f)}else{let f=e.contentHooks;f!==null&&Or(t,f,1),yi(t,1)}vg(e,t);let d=e.components;d!==null&&ql(t,d,0);let p=e.viewQuery;if(p!==null&&Wi(2,p,r),!i)if(l){let f=e.viewCheckHooks;f!==null&&Rr(t,f)}else{let f=e.viewHooks;f!==null&&Or(t,f,2),yi(t,2)}if(e.firstUpdatePass===!0&&(e.firstUpdatePass=!1),t[vi]){for(let f of t[vi])f();t[vi]=null}i||(t[I]&=-73)}catch(l){throw i||co(t),l}finally{u!==null&&($a(u,c),a&&Yg(u)),ms()}}function zl(e,t){for(let n=hl(e);n!==null;n=pl(n))for(let r=ce;r-1&&(zi(t,r),jr(n,r))}this._attachedToViewContainer=!1}Il(this._lView[N],this._lView)}onDestroy(t){Ou(this._lView,t)}markForCheck(){Wl(this._cdRefInjectingView||this._lView,4)}detach(){this._lView[I]&=-129}reattach(){Oi(this._lView),this._lView[I]|=128}detectChanges(){this._lView[I]|=1024,Hl(this._lView,this.notifyErrorHandler)}checkNoChanges(){}attachToViewContainerRef(){if(this._appRef)throw new D(902,!1);this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null;let t=Ai(this._lView),n=this._lView[yn];n!==null&&!t&&_s(n,this._lView),wl(this._lView[N],this._lView)}attachToAppRef(t){if(this._attachedToViewContainer)throw new D(902,!1);this._appRef=t;let n=Ai(this._lView),r=this._lView[yn];r!==null&&!n&&Cl(r,this._lView),Oi(this._lView)}};var CM=new RegExp(`^(\\d+)*(${Yp}|${Zp})*(.*)`);var om=()=>null;function Qc(e,t){return om(e,t)}var Ht=class{},ho=new E("",{providedIn:"root",factory:()=>!1});var Zl=new E(""),Yl=new E(""),Yi=class{},Qr=class{};function im(e){let t=Error(`No component factory found for ${ne(e)}.`);return t[sm]=e,t}var sm="ngComponent";var Qi=class{resolveComponentFactory(t){throw im(t)}},zt=class{static{this.NULL=new Qi}},Gt=class{};var am=(()=>{class e{static{this.\u0275prov=w({token:e,providedIn:"root",factory:()=>null})}}return e})();function Ki(e,t,n){let r=n?e.styles:null,o=n?e.classes:null,i=0;if(t!==null)for(let s=0;s0&&_l(e,n,i.join(" "))}}function pm(e,t,n){let r=e.projection=[];for(let o=0;o{class e{static{this.__NG_ELEMENT_ID__=mm}}return e})();function mm(){let e=je();return ym(e,ge())}var vm=po,Ql=class extends vm{constructor(t,n,r){super(),this._lContainer=t,this._hostTNode=n,this._hostLView=r}get element(){return Cs(this._hostTNode,this._hostLView)}get injector(){return new ct(this._hostTNode,this._hostLView)}get parentInjector(){let t=vs(this._hostTNode,this._hostLView);if(Qu(t)){let n=Gr(t,this._hostLView),r=zr(t),o=n[N].data[r+8];return new ct(o,n)}else return new ct(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(t){let n=Jc(this._lContainer);return n!==null&&n[t]||null}get length(){return this._lContainer.length-ce}createEmbeddedView(t,n,r){let o,i;typeof r=="number"?o=r:r!=null&&(o=r.index,i=r.injector);let s=Qc(this._lContainer,t.ssrId),a=t.createEmbeddedViewImpl(n||{},i,s);return this.insertImpl(a,o,Yc(this._hostTNode,s)),a}createComponent(t,n,r,o,i){let s=t&&!qh(t),a;if(s)a=n;else{let v=n||{};a=v.index,r=v.injector,o=v.projectableNodes,i=v.environmentInjector||v.ngModuleRef}let c=s?t:new Cn(ut(t)),u=r||this.parentInjector;if(!i&&c.ngModule==null){let R=(s?u:this.parentInjector).get(ue,null);R&&(i=R)}let l=ut(c.componentType??{}),d=Qc(this._lContainer,l?.id??null),p=d?.firstChild??null,f=c.create(u,o,p,i);return this.insertImpl(f.hostView,a,Yc(this._hostTNode,d)),f}insert(t,n){return this.insertImpl(t,n,!0)}insertImpl(t,n,r){let o=t._lView;if(ep(o)){let a=this.indexOf(t);if(a!==-1)this.detach(a);else{let c=o[X],u=new Ql(c,c[me],c[X]);u.detach(u.indexOf(t))}}let i=this._adjustIndex(n),s=this._lContainer;return Gg(s,o,i,r),t.attachToViewContainerRef(),lu(Ei(s),i,t),t}move(t,n){return this.insert(t,n)}indexOf(t){let n=Jc(this._lContainer);return n!==null?n.indexOf(t):-1}remove(t){let n=this._adjustIndex(t,-1),r=zi(this._lContainer,n);r&&(jr(Ei(this._lContainer),n),Il(r[N],r))}detach(t){let n=this._adjustIndex(t,-1),r=zi(this._lContainer,n);return r&&jr(Ei(this._lContainer),n)!=null?new Ut(r):null}_adjustIndex(t,n=0){return t??this.length+n}};function Jc(e){return e[Br]}function Ei(e){return e[Br]||(e[Br]=[])}function ym(e,t){let n,r=t[e.index];return ke(r)?n=r:(n=$g(r,t,null,e),t[e.index]=n,Rs(t,n)),wm(n,t,e,r),new Ql(n,e,t)}function Dm(e,t){let n=e[Se],r=n.createComment(""),o=Le(t,e),i=bl(n,o);return Zr(n,i,r,cg(n,o),!1),r}var wm=Cm;function Cm(e,t,n,r){if(e[dt])return;let o;n.type&8?o=Ke(r):o=Dm(t,n),e[dt]=o}var Xc=new Set;function Os(e){Xc.has(e)||(Xc.add(e),performance?.mark?.("mark_feature_usage",{detail:{feature:e}}))}var Je=class{},In=class{};var Xi=class extends Je{constructor(t,n,r,o=!0){super(),this.ngModuleType=t,this._parent=n,this._bootstrapComponents=[],this.destroyCbs=[],this.componentFactoryResolver=new Kr(this);let i=yu(t);this._bootstrapComponents=yl(i.bootstrap),this._r3Injector=sl(t,n,[{provide:Je,useValue:this},{provide:zt,useValue:this.componentFactoryResolver},...r],ne(t),new Set(["environment"])),o&&this.resolveInjectorInitializers()}resolveInjectorInitializers(){this._r3Injector.resolveInjectorInitializers(),this.instance=this._r3Injector.get(this.ngModuleType)}get injector(){return this._r3Injector}destroy(){let t=this._r3Injector;!t.destroyed&&t.destroy(),this.destroyCbs.forEach(n=>n()),this.destroyCbs=null}onDestroy(t){this.destroyCbs.push(t)}},es=class extends In{constructor(t){super(),this.moduleType=t}create(t){return new Xi(this.moduleType,t,[])}};var Jr=class extends Je{constructor(t){super(),this.componentFactoryResolver=new Kr(this),this.instance=null;let n=new mn([...t.providers,{provide:Je,useValue:this},{provide:zt,useValue:this.componentFactoryResolver}],t.parent||ds(),t.debugName,new Set(["environment"]));this.injector=n,t.runEnvironmentInitializers&&n.resolveInjectorInitializers()}destroy(){this.injector.destroy()}onDestroy(t){this.injector.onDestroy(t)}};function Ps(e,t,n=null){return new Jr({providers:e,parent:t,debugName:n,runEnvironmentInitializers:!0}).injector}function Im(e){return(e.flags&32)===32}var fn=function(e){return e[e.EarlyRead=0]="EarlyRead",e[e.Write=1]="Write",e[e.MixedReadWrite=2]="MixedReadWrite",e[e.Read=3]="Read",e}(fn||{}),Em=(()=>{class e{constructor(){this.impl=null}execute(){this.impl?.execute()}static{this.\u0275prov=w({token:e,providedIn:"root",factory:()=>new e})}}return e})(),eu=class e{constructor(){this.ngZone=h(B),this.scheduler=h(Ht),this.errorHandler=h(Oe,{optional:!0}),this.sequences=new Set,this.deferredRegistrations=new Set,this.executing=!1}static{this.PHASES=[fn.EarlyRead,fn.Write,fn.MixedReadWrite,fn.Read]}execute(){this.executing=!0;for(let t of e.PHASES)for(let n of this.sequences)if(!(n.erroredOrDestroyed||!n.hooks[t]))try{n.pipelinedValue=this.ngZone.runOutsideAngular(()=>n.hooks[t](n.pipelinedValue))}catch(r){n.erroredOrDestroyed=!0,this.errorHandler?.handleError(r)}this.executing=!1;for(let t of this.sequences)t.afterRun(),t.once&&(this.sequences.delete(t),t.destroy());for(let t of this.deferredRegistrations)this.sequences.add(t);this.deferredRegistrations.size>0&&this.scheduler.notify(7),this.deferredRegistrations.clear()}register(t){this.executing?this.deferredRegistrations.add(t):(this.sequences.add(t),this.scheduler.notify(6))}unregister(t){this.executing&&this.sequences.has(t)?(t.erroredOrDestroyed=!0,t.pipelinedValue=void 0,t.once=!0):(this.sequences.delete(t),this.deferredRegistrations.delete(t))}static{this.\u0275prov=w({token:e,providedIn:"root",factory:()=>new e})}};function tu(e,t,n,r,o){let i=t.inputs,s=o?"class":"style";Vl(e,n,i[s],s,r)}function bm(e,t,n,r,o,i){let s=t.consts,a=Pc(s,o),c=As(t,e,2,r,a);return _g(t,n,c,Pc(s,i)),c.attrs!==null&&Ki(c,c.attrs,!1),c.mergedAttrs!==null&&Ki(c,c.mergedAttrs,!0),t.queries!==null&&t.queries.elementStart(t,c),c}function Mn(e,t,n,r){let o=ge(),i=ps(),s=lt+e,a=o[Se],c=i.firstCreatePass?bm(s,i,o,t,n,r):i.data[s],u=Sm(i,o,c,a,t,e);o[s]=u;let l=Wh(c);return uo(c,!0),Tl(a,u,c),!Im(c)&&qu()&&Sl(i,o,u,c),np()===0&&Bt(u,o),rp(),l&&(Dg(i,o,c),Ol(i,c,o)),r!==null&&wg(o,c),Mn}function _n(){let e=je();Lu()?up():(e=e.parent,uo(e,!1));let t=e;sp(t)&&ap(),op();let n=ps();return n.firstCreatePass&&(Zu(n,e),Mu(e)&&n.queries.elementEnd(e)),t.classesWithoutHost!=null&&wp(t)&&tu(n,t,ge(),t.classesWithoutHost,!0),t.stylesWithoutHost!=null&&Cp(t)&&tu(n,t,ge(),t.stylesWithoutHost,!1),_n}function Tn(e,t,n,r){return Mn(e,t,n,r),_n(),Tn}var Sm=(e,t,n,r,o,i)=>(Wu(!0),Dl(r,o,mp()));var Xr="en-US";var Mm=Xr;function _m(e){typeof e=="string"&&(Mm=e.toLowerCase().replace(/_/g,"-"))}function Fs(e,t=""){let n=ge(),r=ps(),o=e+lt,i=r.firstCreatePass?As(r,o,1,t,null):r.data[o],s=Tm(r,n,i,t,e);n[o]=s,qu()&&Sl(r,n,s,i),uo(i,!1)}var Tm=(e,t,n,r,o)=>(Wu(!0),Xp(t[Se],r));var xm=(()=>{class e{constructor(n){this._injector=n,this.cachedInjectors=new Map}getOrCreateStandaloneInjector(n){if(!n.standalone)return null;if(!this.cachedInjectors.has(n)){let r=Cu(!1,n.type),o=r.length>0?Ps([r],this._injector,`Standalone[${n.type.name}]`):null;this.cachedInjectors.set(n,o)}return this.cachedInjectors.get(n)}ngOnDestroy(){try{for(let n of this.cachedInjectors.values())n!==null&&n.destroy()}finally{this.cachedInjectors.clear()}}static{this.\u0275prov=w({token:e,providedIn:"environment",factory:()=>new e(_(ue))})}}return e})();function go(e){Os("NgStandalone"),e.getStandaloneInjector=t=>t.get(xm).getOrCreateStandaloneInjector(e)}var mo=(()=>{class e{log(n){console.log(n)}warn(n){console.warn(n)}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=w({token:e,factory:e.\u0275fac,providedIn:"platform"})}}return e})();var Kl=new E("");function xn(e){return!!e&&typeof e.then=="function"}function Jl(e){return!!e&&typeof e.subscribe=="function"}var vo=new E(""),Xl=(()=>{class e{constructor(){this.initialized=!1,this.done=!1,this.donePromise=new Promise((n,r)=>{this.resolve=n,this.reject=r}),this.appInits=h(vo,{optional:!0})??[]}runInitializers(){if(this.initialized)return;let n=[];for(let o of this.appInits){let i=o();if(xn(i))n.push(i);else if(Jl(i)){let s=new Promise((a,c)=>{i.subscribe({complete:a,error:c})});n.push(s)}}let r=()=>{this.done=!0,this.resolve()};Promise.all(n).then(()=>{r()}).catch(o=>{this.reject(o)}),n.length===0&&r(),this.initialized=!0}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=w({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})(),ks=new E("");function Nm(){Ba(()=>{throw new D(600,!1)})}function Am(e){return e.isBoundToModule}var Rm=10;function Om(e,t,n){try{let r=n();return xn(r)?r.catch(o=>{throw t.runOutsideAngular(()=>e.handleError(o)),o}):r}catch(r){throw t.runOutsideAngular(()=>e.handleError(r)),r}}var _e=(()=>{class e{constructor(){this._bootstrapListeners=[],this._runningTick=!1,this._destroyed=!1,this._destroyListeners=[],this._views=[],this.internalErrorHandler=h(Bp),this.afterRenderManager=h(Em),this.zonelessEnabled=h(ho),this.dirtyFlags=0,this.deferredDirtyFlags=0,this.externalTestViews=new Set,this.beforeRender=new U,this.afterTick=new U,this.componentTypes=[],this.components=[],this.isStable=h(Wt).hasPendingTasks.pipe(C(n=>!n)),this._injector=h(ue)}get allViews(){return[...this.externalTestViews.keys(),...this._views]}get destroyed(){return this._destroyed}whenStable(){let n;return new Promise(r=>{n=this.isStable.subscribe({next:o=>{o&&r()}})}).finally(()=>{n.unsubscribe()})}get injector(){return this._injector}bootstrap(n,r){let o=n instanceof Qr;if(!this._injector.get(Xl).done){let p=!o&&vu(n),f=!1;throw new D(405,f)}let s;o?s=n:s=this._injector.get(zt).resolveComponentFactory(n),this.componentTypes.push(s.componentType);let a=Am(s)?void 0:this._injector.get(Je),c=r||s.selector,u=s.create(Re.NULL,[],c,a),l=u.location.nativeElement,d=u.injector.get(Kl,null);return d?.registerApplication(l),u.onDestroy(()=>{this.detachView(u.hostView),Pr(this.components,u),d?.unregisterApplication(l)}),this._loadComponent(u),u}tick(){this.zonelessEnabled||(this.dirtyFlags|=1),this._tick()}_tick(){if(this._runningTick)throw new D(101,!1);let n=P(null);try{this._runningTick=!0,this.synchronize()}catch(r){this.internalErrorHandler(r)}finally{this._runningTick=!1,P(n),this.afterTick.next()}}synchronize(){let n=null;this._injector.destroyed||(n=this._injector.get(Gt,null,{optional:!0})),this.dirtyFlags|=this.deferredDirtyFlags,this.deferredDirtyFlags=0;let r=0;for(;this.dirtyFlags!==0&&r++ao(n))){this.dirtyFlags|=2;return}else this.dirtyFlags&=-8}attachView(n){let r=n;this._views.push(r),r.attachToAppRef(this)}detachView(n){let r=n;Pr(this._views,r),r.detachFromAppRef()}_loadComponent(n){this.attachView(n.hostView),this.tick(),this.components.push(n);let r=this._injector.get(ks,[]);[...this._bootstrapListeners,...r].forEach(o=>o(n))}ngOnDestroy(){if(!this._destroyed)try{this._destroyListeners.forEach(n=>n()),this._views.slice().forEach(n=>n.destroy())}finally{this._destroyed=!0,this._views=[],this._bootstrapListeners=[],this._destroyListeners=[]}}onDestroy(n){return this._destroyListeners.push(n),()=>Pr(this._destroyListeners,n)}destroy(){if(this._destroyed)throw new D(406,!1);let n=this._injector;n.destroy&&!n.destroyed&&n.destroy()}get viewCount(){return this._views.length}warnIfDestroyed(){}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=w({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();function Pr(e,t){let n=e.indexOf(t);n>-1&&e.splice(n,1)}function Pm(e,t,n,r){if(!n&&!ao(e))return;Hl(e,t,n&&!r?0:1)}var ts=class{constructor(t,n){this.ngModuleFactory=t,this.componentFactories=n}},Ls=(()=>{class e{compileModuleSync(n){return new es(n)}compileModuleAsync(n){return Promise.resolve(this.compileModuleSync(n))}compileModuleAndAllComponentsSync(n){let r=this.compileModuleSync(n),o=yu(n),i=yl(o.declarations).reduce((s,a)=>{let c=ut(a);return c&&s.push(new Cn(c)),s},[]);return new ts(r,i)}compileModuleAndAllComponentsAsync(n){return Promise.resolve(this.compileModuleAndAllComponentsSync(n))}clearCache(){}clearCacheFor(n){}getModuleId(n){}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=w({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();var Fm=(()=>{class e{constructor(){this.zone=h(B),this.changeDetectionScheduler=h(Ht),this.applicationRef=h(_e)}initialize(){this._onMicrotaskEmptySubscription||(this._onMicrotaskEmptySubscription=this.zone.onMicrotaskEmpty.subscribe({next:()=>{this.changeDetectionScheduler.runningTick||this.zone.run(()=>{this.applicationRef.tick()})}}))}ngOnDestroy(){this._onMicrotaskEmptySubscription?.unsubscribe()}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=w({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})(),km=new E("",{factory:()=>!1});function ed({ngZoneFactory:e,ignoreChangesOutsideZone:t,scheduleInRootZone:n}){return e??=()=>new B(V(g({},nd()),{scheduleInRootZone:n})),[{provide:B,useFactory:e},{provide:Vt,multi:!0,useFactory:()=>{let r=h(Fm,{optional:!0});return()=>r.initialize()}},{provide:Vt,multi:!0,useFactory:()=>{let r=h(Lm);return()=>{r.initialize()}}},t===!0?{provide:Zl,useValue:!0}:[],{provide:Yl,useValue:n??al}]}function td(e){let t=e?.ignoreChangesOutsideZone,n=e?.scheduleInRootZone,r=ed({ngZoneFactory:()=>{let o=nd(e);return o.scheduleInRootZone=n,o.shouldCoalesceEventChangeDetection&&Os("NgZone_CoalesceEvent"),new B(o)},ignoreChangesOutsideZone:t,scheduleInRootZone:n});return qt([{provide:km,useValue:!0},{provide:ho,useValue:!1},r])}function nd(e){return{enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:e?.eventCoalescing??!1,shouldCoalesceRunChangeDetection:e?.runCoalescing??!1}}var Lm=(()=>{class e{constructor(){this.subscription=new $,this.initialized=!1,this.zone=h(B),this.pendingTasks=h(Wt)}initialize(){if(this.initialized)return;this.initialized=!0;let n=null;!this.zone.isStable&&!this.zone.hasPendingMacrotasks&&!this.zone.hasPendingMicrotasks&&(n=this.pendingTasks.add()),this.zone.runOutsideAngular(()=>{this.subscription.add(this.zone.onStable.subscribe(()=>{B.assertNotInAngularZone(),queueMicrotask(()=>{n!==null&&!this.zone.hasPendingMacrotasks&&!this.zone.hasPendingMicrotasks&&(this.pendingTasks.remove(n),n=null)})}))}),this.subscription.add(this.zone.onUnstable.subscribe(()=>{B.assertInAngularZone(),n??=this.pendingTasks.add()}))}ngOnDestroy(){this.subscription.unsubscribe()}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=w({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();var jm=(()=>{class e{constructor(){this.appRef=h(_e),this.taskService=h(Wt),this.ngZone=h(B),this.zonelessEnabled=h(ho),this.disableScheduling=h(Zl,{optional:!0})??!1,this.zoneIsDefined=typeof Zone<"u"&&!!Zone.root.run,this.schedulerTickApplyArgs=[{data:{__scheduler_tick__:!0}}],this.subscriptions=new $,this.angularZoneId=this.zoneIsDefined?this.ngZone._inner?.get(Wr):null,this.scheduleInRootZone=!this.zonelessEnabled&&this.zoneIsDefined&&(h(Yl,{optional:!0})??!1),this.cancelScheduledCallback=null,this.useMicrotaskScheduler=!1,this.runningTick=!1,this.pendingRenderTaskId=null,this.subscriptions.add(this.appRef.afterTick.subscribe(()=>{this.runningTick||this.cleanup()})),this.subscriptions.add(this.ngZone.onUnstable.subscribe(()=>{this.runningTick||this.cleanup()})),this.disableScheduling||=!this.zonelessEnabled&&(this.ngZone instanceof Bi||!this.zoneIsDefined)}notify(n){if(!this.zonelessEnabled&&n===5)return;switch(n){case 0:{this.appRef.dirtyFlags|=2;break}case 3:case 2:case 4:case 5:case 1:{this.appRef.dirtyFlags|=4;break}case 7:{this.appRef.deferredDirtyFlags|=8;break}case 9:case 8:case 6:case 10:default:this.appRef.dirtyFlags|=8}if(!this.shouldScheduleTick())return;let r=this.useMicrotaskScheduler?Bc:ul;this.pendingRenderTaskId=this.taskService.add(),this.scheduleInRootZone?this.cancelScheduledCallback=Zone.root.run(()=>r(()=>this.tick())):this.cancelScheduledCallback=this.ngZone.runOutsideAngular(()=>r(()=>this.tick()))}shouldScheduleTick(){return!(this.disableScheduling||this.pendingRenderTaskId!==null||this.runningTick||this.appRef._runningTick||!this.zonelessEnabled&&this.zoneIsDefined&&Zone.current.get(Wr+this.angularZoneId))}tick(){if(this.runningTick||this.appRef.destroyed)return;!this.zonelessEnabled&&this.appRef.dirtyFlags&7&&(this.appRef.dirtyFlags|=1);let n=this.taskService.add();try{this.ngZone.run(()=>{this.runningTick=!0,this.appRef._tick()},void 0,this.schedulerTickApplyArgs)}catch(r){throw this.taskService.remove(n),r}finally{this.cleanup()}this.useMicrotaskScheduler=!0,Bc(()=>{this.useMicrotaskScheduler=!1,this.taskService.remove(n)})}ngOnDestroy(){this.subscriptions.unsubscribe(),this.cleanup()}cleanup(){if(this.runningTick=!1,this.cancelScheduledCallback?.(),this.cancelScheduledCallback=null,this.pendingRenderTaskId!==null){let n=this.pendingRenderTaskId;this.pendingRenderTaskId=null,this.taskService.remove(n)}}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=w({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();function Vm(){return typeof $localize<"u"&&$localize.locale||Xr}var js=new E("",{providedIn:"root",factory:()=>h(js,S.Optional|S.SkipSelf)||Vm()});var ns=new E("");function Nr(e){return!e.moduleRef}function $m(e){let t=Nr(e)?e.r3Injector:e.moduleRef.injector,n=t.get(B);return n.run(()=>{Nr(e)?e.r3Injector.resolveInjectorInitializers():e.moduleRef.resolveInjectorInitializers();let r=t.get(Oe,null),o;if(n.runOutsideAngular(()=>{o=n.onError.subscribe({next:i=>{r.handleError(i)}})}),Nr(e)){let i=()=>t.destroy(),s=e.platformInjector.get(ns);s.add(i),t.onDestroy(()=>{o.unsubscribe(),s.delete(i)})}else{let i=()=>e.moduleRef.destroy(),s=e.platformInjector.get(ns);s.add(i),e.moduleRef.onDestroy(()=>{Pr(e.allPlatformModules,e.moduleRef),o.unsubscribe(),s.delete(i)})}return Om(r,n,()=>{let i=t.get(Xl);return i.runInitializers(),i.donePromise.then(()=>{let s=t.get(js,Xr);if(_m(s||Xr),Nr(e)){let a=t.get(_e);return e.rootComponent!==void 0&&a.bootstrap(e.rootComponent),a}else return Bm(e.moduleRef,e.allPlatformModules),e.moduleRef})})})}function Bm(e,t){let n=e.injector.get(_e);if(e._bootstrapComponents.length>0)e._bootstrapComponents.forEach(r=>n.bootstrap(r));else if(e.instance.ngDoBootstrap)e.instance.ngDoBootstrap(n);else throw new D(-403,!1);t.push(e)}var Fr=null;function Um(e=[],t){return Re.create({name:t,providers:[{provide:ro,useValue:"platform"},{provide:ns,useValue:new Set([()=>Fr=null])},...e]})}function Hm(e=[]){if(Fr)return Fr;let t=Um(e);return Fr=t,Nm(),zm(t),t}function zm(e){e.get(Es,null)?.forEach(n=>n())}function rd(){return!1}var Nn=(()=>{class e{static{this.__NG_ELEMENT_ID__=Gm}}return e})();function Gm(e){return qm(je(),ge(),(e&16)===16)}function qm(e,t,n){if(fs(e)&&!n){let r=Sn(e.index,t);return new Ut(r,r)}else if(e.type&175){let r=t[Me];return new Ut(r,t)}return null}function od(e){try{let{rootComponent:t,appProviders:n,platformProviders:r}=e,o=Hm(r),i=[ed({}),{provide:Ht,useExisting:jm},...n||[]],s=new Jr({providers:i,parent:o,debugName:"",runEnvironmentInitializers:!1});return $m({r3Injector:s.injector,platformInjector:o,rootComponent:t})}catch(t){return Promise.reject(t)}}var ud=null;function Zt(){return ud}function ld(e){ud??=e}var yo=class{};var le=new E(""),dd=(()=>{class e{historyGo(n){throw new Error("")}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=w({token:e,factory:()=>h(Km),providedIn:"platform"})}}return e})();var Km=(()=>{class e extends dd{constructor(){super(),this._doc=h(le),this._location=window.location,this._history=window.history}getBaseHrefFromDOM(){return Zt().getBaseHref(this._doc)}onPopState(n){let r=Zt().getGlobalEventTarget(this._doc,"window");return r.addEventListener("popstate",n,!1),()=>r.removeEventListener("popstate",n)}onHashChange(n){let r=Zt().getGlobalEventTarget(this._doc,"window");return r.addEventListener("hashchange",n,!1),()=>r.removeEventListener("hashchange",n)}get href(){return this._location.href}get protocol(){return this._location.protocol}get hostname(){return this._location.hostname}get port(){return this._location.port}get pathname(){return this._location.pathname}get search(){return this._location.search}get hash(){return this._location.hash}set pathname(n){this._location.pathname=n}pushState(n,r,o){this._history.pushState(n,r,o)}replaceState(n,r,o){this._history.replaceState(n,r,o)}forward(){this._history.forward()}back(){this._history.back()}historyGo(n=0){this._history.go(n)}getState(){return this._history.state}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=w({token:e,factory:()=>new e,providedIn:"platform"})}}return e})();function fd(e,t){if(e.length==0)return t;if(t.length==0)return e;let n=0;return e.endsWith("/")&&n++,t.startsWith("/")&&n++,n==2?e+t.substring(1):n==1?e+t:e+"/"+t}function id(e){let t=e.match(/#|\?|$/),n=t&&t.index||e.length,r=n-(e[n-1]==="/"?1:0);return e.slice(0,r)+e.slice(n)}function gt(e){return e&&e[0]!=="?"?"?"+e:e}var wo=(()=>{class e{historyGo(n){throw new Error("")}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=w({token:e,factory:()=>h(hd),providedIn:"root"})}}return e})(),Jm=new E(""),hd=(()=>{class e extends wo{constructor(n,r){super(),this._platformLocation=n,this._removeListenerFns=[],this._baseHref=r??this._platformLocation.getBaseHrefFromDOM()??h(le).location?.origin??""}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(n){this._removeListenerFns.push(this._platformLocation.onPopState(n),this._platformLocation.onHashChange(n))}getBaseHref(){return this._baseHref}prepareExternalUrl(n){return fd(this._baseHref,n)}path(n=!1){let r=this._platformLocation.pathname+gt(this._platformLocation.search),o=this._platformLocation.hash;return o&&n?`${r}${o}`:r}pushState(n,r,o,i){let s=this.prepareExternalUrl(o+gt(i));this._platformLocation.pushState(n,r,s)}replaceState(n,r,o,i){let s=this.prepareExternalUrl(o+gt(i));this._platformLocation.replaceState(n,r,s)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(n=0){this._platformLocation.historyGo?.(n)}static{this.\u0275fac=function(r){return new(r||e)(_(dd),_(Jm,8))}}static{this.\u0275prov=w({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();var Rn=(()=>{class e{constructor(n){this._subject=new J,this._urlChangeListeners=[],this._urlChangeSubscription=null,this._locationStrategy=n;let r=this._locationStrategy.getBaseHref();this._basePath=tv(id(sd(r))),this._locationStrategy.onPopState(o=>{this._subject.emit({url:this.path(!0),pop:!0,state:o.state,type:o.type})})}ngOnDestroy(){this._urlChangeSubscription?.unsubscribe(),this._urlChangeListeners=[]}path(n=!1){return this.normalize(this._locationStrategy.path(n))}getState(){return this._locationStrategy.getState()}isCurrentPathEqualTo(n,r=""){return this.path()==this.normalize(n+gt(r))}normalize(n){return e.stripTrailingSlash(ev(this._basePath,sd(n)))}prepareExternalUrl(n){return n&&n[0]!=="/"&&(n="/"+n),this._locationStrategy.prepareExternalUrl(n)}go(n,r="",o=null){this._locationStrategy.pushState(o,"",n,r),this._notifyUrlChangeListeners(this.prepareExternalUrl(n+gt(r)),o)}replaceState(n,r="",o=null){this._locationStrategy.replaceState(o,"",n,r),this._notifyUrlChangeListeners(this.prepareExternalUrl(n+gt(r)),o)}forward(){this._locationStrategy.forward()}back(){this._locationStrategy.back()}historyGo(n=0){this._locationStrategy.historyGo?.(n)}onUrlChange(n){return this._urlChangeListeners.push(n),this._urlChangeSubscription??=this.subscribe(r=>{this._notifyUrlChangeListeners(r.url,r.state)}),()=>{let r=this._urlChangeListeners.indexOf(n);this._urlChangeListeners.splice(r,1),this._urlChangeListeners.length===0&&(this._urlChangeSubscription?.unsubscribe(),this._urlChangeSubscription=null)}}_notifyUrlChangeListeners(n="",r){this._urlChangeListeners.forEach(o=>o(n,r))}subscribe(n,r,o){return this._subject.subscribe({next:n,error:r,complete:o})}static{this.normalizeQueryParams=gt}static{this.joinWithSlash=fd}static{this.stripTrailingSlash=id}static{this.\u0275fac=function(r){return new(r||e)(_(wo))}}static{this.\u0275prov=w({token:e,factory:()=>Xm(),providedIn:"root"})}}return e})();function Xm(){return new Rn(_(wo))}function ev(e,t){if(!e||!t.startsWith(e))return t;let n=t.substring(e.length);return n===""||["/",";","?","#"].includes(n[0])?n:t}function sd(e){return e.replace(/\/index.html$/,"")}function tv(e){if(new RegExp("^(https?:)?//").test(e)){let[,n]=e.split(/\/\/[^\/]+/);return n}return e}function pd(e,t){t=encodeURIComponent(t);for(let n of e.split(";")){let r=n.indexOf("="),[o,i]=r==-1?[n,""]:[n.slice(0,r),n.slice(r+1)];if(o.trim()===t)return decodeURIComponent(i)}return null}var Bs="browser",nv="server";function Us(e){return e===Bs}function Hs(e){return e===nv}var Do=class{};var qs=class extends yo{constructor(){super(...arguments),this.supportsDOMEvents=!0}},Ws=class e extends qs{static makeCurrent(){ld(new e)}onAndCancel(t,n,r){return t.addEventListener(n,r),()=>{t.removeEventListener(n,r)}}dispatchEvent(t,n){t.dispatchEvent(n)}remove(t){t.remove()}createElement(t,n){return n=n||this.getDefaultDocument(),n.createElement(t)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(t){return t.nodeType===Node.ELEMENT_NODE}isShadowRoot(t){return t instanceof DocumentFragment}getGlobalEventTarget(t,n){return n==="window"?window:n==="document"?t:n==="body"?t.body:null}getBaseHref(t){let n=ov();return n==null?null:iv(n)}resetBaseElement(){On=null}getUserAgent(){return window.navigator.userAgent}getCookie(t){return pd(document.cookie,t)}},On=null;function ov(){return On=On||document.querySelector("base"),On?On.getAttribute("href"):null}function iv(e){return new URL(e,document.baseURI).pathname}var sv=(()=>{class e{build(){return new XMLHttpRequest}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=w({token:e,factory:e.\u0275fac})}}return e})(),Zs=new E(""),yd=(()=>{class e{constructor(n,r){this._zone=r,this._eventNameToPlugin=new Map,n.forEach(o=>{o.manager=this}),this._plugins=n.slice().reverse()}addEventListener(n,r,o){return this._findPluginFor(r).addEventListener(n,r,o)}getZone(){return this._zone}_findPluginFor(n){let r=this._eventNameToPlugin.get(n);if(r)return r;if(r=this._plugins.find(i=>i.supports(n)),!r)throw new D(5101,!1);return this._eventNameToPlugin.set(n,r),r}static{this.\u0275fac=function(r){return new(r||e)(_(Zs),_(B))}}static{this.\u0275prov=w({token:e,factory:e.\u0275fac})}}return e})(),Co=class{constructor(t){this._doc=t}},zs="ng-app-id",Dd=(()=>{class e{constructor(n,r,o,i={}){this.doc=n,this.appId=r,this.nonce=o,this.platformId=i,this.styleRef=new Map,this.hostNodes=new Set,this.styleNodesInDOM=this.collectServerRenderedStyles(),this.platformIsServer=Hs(i),this.resetHostNodes()}addStyles(n){for(let r of n)this.changeUsageCount(r,1)===1&&this.onStyleAdded(r)}removeStyles(n){for(let r of n)this.changeUsageCount(r,-1)<=0&&this.onStyleRemoved(r)}ngOnDestroy(){let n=this.styleNodesInDOM;n&&(n.forEach(r=>r.remove()),n.clear());for(let r of this.getAllStyles())this.onStyleRemoved(r);this.resetHostNodes()}addHost(n){this.hostNodes.add(n);for(let r of this.getAllStyles())this.addStyleToHost(n,r)}removeHost(n){this.hostNodes.delete(n)}getAllStyles(){return this.styleRef.keys()}onStyleAdded(n){for(let r of this.hostNodes)this.addStyleToHost(r,n)}onStyleRemoved(n){let r=this.styleRef;r.get(n)?.elements?.forEach(o=>o.remove()),r.delete(n)}collectServerRenderedStyles(){let n=this.doc.head?.querySelectorAll(`style[${zs}="${this.appId}"]`);if(n?.length){let r=new Map;return n.forEach(o=>{o.textContent!=null&&r.set(o.textContent,o)}),r}return null}changeUsageCount(n,r){let o=this.styleRef;if(o.has(n)){let i=o.get(n);return i.usage+=r,i.usage}return o.set(n,{usage:r,elements:[]}),r}getStyleElement(n,r){let o=this.styleNodesInDOM,i=o?.get(r);if(i?.parentNode===n)return o.delete(r),i.removeAttribute(zs),i;{let s=this.doc.createElement("style");return this.nonce&&s.setAttribute("nonce",this.nonce),s.textContent=r,this.platformIsServer&&s.setAttribute(zs,this.appId),n.appendChild(s),s}}addStyleToHost(n,r){let o=this.getStyleElement(n,r),i=this.styleRef,s=i.get(r)?.elements;s?s.push(o):i.set(r,{elements:[o],usage:1})}resetHostNodes(){let n=this.hostNodes;n.clear(),n.add(this.doc.head)}static{this.\u0275fac=function(r){return new(r||e)(_(le),_(Is),_(bs,8),_(Ve))}}static{this.\u0275prov=w({token:e,factory:e.\u0275fac})}}return e})(),Gs={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/",math:"http://www.w3.org/1998/Math/MathML"},Qs=/%COMP%/g,wd="%COMP%",av=`_nghost-${wd}`,cv=`_ngcontent-${wd}`,uv=!0,lv=new E("",{providedIn:"root",factory:()=>uv});function dv(e){return cv.replace(Qs,e)}function fv(e){return av.replace(Qs,e)}function Cd(e,t){return t.map(n=>n.replace(Qs,e))}var gd=(()=>{class e{constructor(n,r,o,i,s,a,c,u=null){this.eventManager=n,this.sharedStylesHost=r,this.appId=o,this.removeStylesOnCompDestroy=i,this.doc=s,this.platformId=a,this.ngZone=c,this.nonce=u,this.rendererByCompId=new Map,this.platformIsServer=Hs(a),this.defaultRenderer=new Pn(n,s,c,this.platformIsServer)}createRenderer(n,r){if(!n||!r)return this.defaultRenderer;this.platformIsServer&&r.encapsulation===be.ShadowDom&&(r=V(g({},r),{encapsulation:be.Emulated}));let o=this.getOrCreateRenderer(n,r);return o instanceof Io?o.applyToHost(n):o instanceof Fn&&o.applyStyles(),o}getOrCreateRenderer(n,r){let o=this.rendererByCompId,i=o.get(r.id);if(!i){let s=this.doc,a=this.ngZone,c=this.eventManager,u=this.sharedStylesHost,l=this.removeStylesOnCompDestroy,d=this.platformIsServer;switch(r.encapsulation){case be.Emulated:i=new Io(c,u,r,this.appId,l,s,a,d);break;case be.ShadowDom:return new Ys(c,u,n,r,s,a,this.nonce,d);default:i=new Fn(c,u,r,l,s,a,d);break}o.set(r.id,i)}return i}ngOnDestroy(){this.rendererByCompId.clear()}static{this.\u0275fac=function(r){return new(r||e)(_(yd),_(Dd),_(Is),_(lv),_(le),_(Ve),_(B),_(bs))}}static{this.\u0275prov=w({token:e,factory:e.\u0275fac})}}return e})(),Pn=class{constructor(t,n,r,o){this.eventManager=t,this.doc=n,this.ngZone=r,this.platformIsServer=o,this.data=Object.create(null),this.throwOnSyntheticProps=!0,this.destroyNode=null}destroy(){}createElement(t,n){return n?this.doc.createElementNS(Gs[n]||n,t):this.doc.createElement(t)}createComment(t){return this.doc.createComment(t)}createText(t){return this.doc.createTextNode(t)}appendChild(t,n){(md(t)?t.content:t).appendChild(n)}insertBefore(t,n,r){t&&(md(t)?t.content:t).insertBefore(n,r)}removeChild(t,n){n.remove()}selectRootElement(t,n){let r=typeof t=="string"?this.doc.querySelector(t):t;if(!r)throw new D(-5104,!1);return n||(r.textContent=""),r}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,n,r,o){if(o){n=o+":"+n;let i=Gs[o];i?t.setAttributeNS(i,n,r):t.setAttribute(n,r)}else t.setAttribute(n,r)}removeAttribute(t,n,r){if(r){let o=Gs[r];o?t.removeAttributeNS(o,n):t.removeAttribute(`${r}:${n}`)}else t.removeAttribute(n)}addClass(t,n){t.classList.add(n)}removeClass(t,n){t.classList.remove(n)}setStyle(t,n,r,o){o&(pt.DashCase|pt.Important)?t.style.setProperty(n,r,o&pt.Important?"important":""):t.style[n]=r}removeStyle(t,n,r){r&pt.DashCase?t.style.removeProperty(n):t.style[n]=""}setProperty(t,n,r){t!=null&&(t[n]=r)}setValue(t,n){t.nodeValue=n}listen(t,n,r){if(typeof t=="string"&&(t=Zt().getGlobalEventTarget(this.doc,t),!t))throw new Error(`Unsupported event target ${t} for event ${n}`);return this.eventManager.addEventListener(t,n,this.decoratePreventDefault(r))}decoratePreventDefault(t){return n=>{if(n==="__ngUnwrap__")return t;(this.platformIsServer?this.ngZone.runGuarded(()=>t(n)):t(n))===!1&&n.preventDefault()}}};function md(e){return e.tagName==="TEMPLATE"&&e.content!==void 0}var Ys=class extends Pn{constructor(t,n,r,o,i,s,a,c){super(t,i,s,c),this.sharedStylesHost=n,this.hostEl=r,this.shadowRoot=r.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);let u=Cd(o.id,o.styles);for(let l of u){let d=document.createElement("style");a&&d.setAttribute("nonce",a),d.textContent=l,this.shadowRoot.appendChild(d)}}nodeOrShadowRoot(t){return t===this.hostEl?this.shadowRoot:t}appendChild(t,n){return super.appendChild(this.nodeOrShadowRoot(t),n)}insertBefore(t,n,r){return super.insertBefore(this.nodeOrShadowRoot(t),n,r)}removeChild(t,n){return super.removeChild(null,n)}parentNode(t){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(t)))}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}},Fn=class extends Pn{constructor(t,n,r,o,i,s,a,c){super(t,i,s,a),this.sharedStylesHost=n,this.removeStylesOnCompDestroy=o,this.styles=c?Cd(c,r.styles):r.styles}applyStyles(){this.sharedStylesHost.addStyles(this.styles)}destroy(){this.removeStylesOnCompDestroy&&this.sharedStylesHost.removeStyles(this.styles)}},Io=class extends Fn{constructor(t,n,r,o,i,s,a,c){let u=o+"-"+r.id;super(t,n,r,i,s,a,c,u),this.contentAttr=dv(u),this.hostAttr=fv(u)}applyToHost(t){this.applyStyles(),this.setAttribute(t,this.hostAttr,"")}createElement(t,n){let r=super.createElement(t,n);return super.setAttribute(r,this.contentAttr,""),r}},hv=(()=>{class e extends Co{constructor(n){super(n)}supports(n){return!0}addEventListener(n,r,o){return n.addEventListener(r,o,!1),()=>this.removeEventListener(n,r,o)}removeEventListener(n,r,o){return n.removeEventListener(r,o)}static{this.\u0275fac=function(r){return new(r||e)(_(le))}}static{this.\u0275prov=w({token:e,factory:e.\u0275fac})}}return e})(),vd=["alt","control","meta","shift"],pv={"\b":"Backspace"," ":"Tab","\x7F":"Delete","\x1B":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},gv={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey},mv=(()=>{class e extends Co{constructor(n){super(n)}supports(n){return e.parseEventName(n)!=null}addEventListener(n,r,o){let i=e.parseEventName(r),s=e.eventCallback(i.fullKey,o,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Zt().onAndCancel(n,i.domEventName,s))}static parseEventName(n){let r=n.toLowerCase().split("."),o=r.shift();if(r.length===0||!(o==="keydown"||o==="keyup"))return null;let i=e._normalizeKey(r.pop()),s="",a=r.indexOf("code");if(a>-1&&(r.splice(a,1),s="code."),vd.forEach(u=>{let l=r.indexOf(u);l>-1&&(r.splice(l,1),s+=u+".")}),s+=i,r.length!=0||i.length===0)return null;let c={};return c.domEventName=o,c.fullKey=s,c}static matchEventFullKeyCode(n,r){let o=pv[n.key]||n.key,i="";return r.indexOf("code.")>-1&&(o=n.code,i="code."),o==null||!o?!1:(o=o.toLowerCase(),o===" "?o="space":o==="."&&(o="dot"),vd.forEach(s=>{if(s!==o){let a=gv[s];a(n)&&(i+=s+".")}}),i+=o,i===r)}static eventCallback(n,r,o){return i=>{e.matchEventFullKeyCode(i,n)&&o.runGuarded(()=>r(i))}}static _normalizeKey(n){return n==="esc"?"escape":n}static{this.\u0275fac=function(r){return new(r||e)(_(le))}}static{this.\u0275prov=w({token:e,factory:e.\u0275fac})}}return e})();function Id(e,t){return od(g({rootComponent:e},vv(t)))}function vv(e){return{appProviders:[...Iv,...e?.providers??[]],platformProviders:Cv}}function yv(){Ws.makeCurrent()}function Dv(){return new Oe}function wv(){return ml(document),document}var Cv=[{provide:Ve,useValue:Bs},{provide:Es,useValue:yv,multi:!0},{provide:le,useFactory:wv,deps:[]}];var Iv=[{provide:ro,useValue:"root"},{provide:Oe,useFactory:Dv,deps:[]},{provide:Zs,useClass:hv,multi:!0,deps:[le,B,Ve]},{provide:Zs,useClass:mv,multi:!0,deps:[le]},gd,Dd,yd,{provide:Gt,useExisting:gd},{provide:Do,useClass:sv,deps:[]},[]];var Ed=(()=>{class e{constructor(n){this._doc=n}getTitle(){return this._doc.title}setTitle(n){this._doc.title=n||""}static{this.\u0275fac=function(r){return new(r||e)(_(le))}}static{this.\u0275prov=w({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();var b="primary",Jn=Symbol("RouteTitle"),ta=class{constructor(t){this.params=t||{}}has(t){return Object.prototype.hasOwnProperty.call(this.params,t)}get(t){if(this.has(t)){let n=this.params[t];return Array.isArray(n)?n[0]:n}return null}getAll(t){if(this.has(t)){let n=this.params[t];return Array.isArray(n)?n:[n]}return[]}get keys(){return Object.keys(this.params)}};function en(e){return new ta(e)}function bv(e,t,n){let r=n.path.split("/");if(r.length>e.length||n.pathMatch==="full"&&(t.hasChildren()||r.lengthr[i]===o)}else return e===t}function Rd(e){return e.length>0?e[e.length-1]:null}function Xe(e){return ci(e)?e:xn(e)?L(Promise.resolve(e)):y(e)}var Mv={exact:Pd,subset:Fd},Od={exact:_v,subset:Tv,ignored:()=>!0};function bd(e,t,n){return Mv[n.paths](e.root,t.root,n.matrixParams)&&Od[n.queryParams](e.queryParams,t.queryParams)&&!(n.fragment==="exact"&&e.fragment!==t.fragment)}function _v(e,t){return Te(e,t)}function Pd(e,t,n){if(!vt(e.segments,t.segments)||!So(e.segments,t.segments,n)||e.numberOfChildren!==t.numberOfChildren)return!1;for(let r in t.children)if(!e.children[r]||!Pd(e.children[r],t.children[r],n))return!1;return!0}function Tv(e,t){return Object.keys(t).length<=Object.keys(e).length&&Object.keys(t).every(n=>Ad(e[n],t[n]))}function Fd(e,t,n){return kd(e,t,t.segments,n)}function kd(e,t,n,r){if(e.segments.length>n.length){let o=e.segments.slice(0,n.length);return!(!vt(o,n)||t.hasChildren()||!So(o,n,r))}else if(e.segments.length===n.length){if(!vt(e.segments,n)||!So(e.segments,n,r))return!1;for(let o in t.children)if(!e.children[o]||!Fd(e.children[o],t.children[o],r))return!1;return!0}else{let o=n.slice(0,e.segments.length),i=n.slice(e.segments.length);return!vt(e.segments,o)||!So(e.segments,o,r)||!e.children[b]?!1:kd(e.children[b],t,i,r)}}function So(e,t,n){return t.every((r,o)=>Od[n](e[o].parameters,r.parameters))}var Be=class{constructor(t=new A([],{}),n={},r=null){this.root=t,this.queryParams=n,this.fragment=r}get queryParamMap(){return this._queryParamMap??=en(this.queryParams),this._queryParamMap}toString(){return Av.serialize(this)}},A=class{constructor(t,n){this.segments=t,this.children=n,this.parent=null,Object.values(n).forEach(r=>r.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return Mo(this)}},mt=class{constructor(t,n){this.path=t,this.parameters=n}get parameterMap(){return this._parameterMap??=en(this.parameters),this._parameterMap}toString(){return jd(this)}};function xv(e,t){return vt(e,t)&&e.every((n,r)=>Te(n.parameters,t[r].parameters))}function vt(e,t){return e.length!==t.length?!1:e.every((n,r)=>n.path===t[r].path)}function Nv(e,t){let n=[];return Object.entries(e.children).forEach(([r,o])=>{r===b&&(n=n.concat(t(o,r)))}),Object.entries(e.children).forEach(([r,o])=>{r!==b&&(n=n.concat(t(o,r)))}),n}var Ta=(()=>{class e{static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=w({token:e,factory:()=>new Un,providedIn:"root"})}}return e})(),Un=class{parse(t){let n=new oa(t);return new Be(n.parseRootSegment(),n.parseQueryParams(),n.parseFragment())}serialize(t){let n=`/${kn(t.root,!0)}`,r=Pv(t.queryParams),o=typeof t.fragment=="string"?`#${Rv(t.fragment)}`:"";return`${n}${r}${o}`}},Av=new Un;function Mo(e){return e.segments.map(t=>jd(t)).join("/")}function kn(e,t){if(!e.hasChildren())return Mo(e);if(t){let n=e.children[b]?kn(e.children[b],!1):"",r=[];return Object.entries(e.children).forEach(([o,i])=>{o!==b&&r.push(`${o}:${kn(i,!1)}`)}),r.length>0?`${n}(${r.join("//")})`:n}else{let n=Nv(e,(r,o)=>o===b?[kn(e.children[b],!1)]:[`${o}:${kn(r,!1)}`]);return Object.keys(e.children).length===1&&e.children[b]!=null?`${Mo(e)}/${n[0]}`:`${Mo(e)}/(${n.join("//")})`}}function Ld(e){return encodeURIComponent(e).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Eo(e){return Ld(e).replace(/%3B/gi,";")}function Rv(e){return encodeURI(e)}function ra(e){return Ld(e).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function _o(e){return decodeURIComponent(e)}function Sd(e){return _o(e.replace(/\+/g,"%20"))}function jd(e){return`${ra(e.path)}${Ov(e.parameters)}`}function Ov(e){return Object.entries(e).map(([t,n])=>`;${ra(t)}=${ra(n)}`).join("")}function Pv(e){let t=Object.entries(e).map(([n,r])=>Array.isArray(r)?r.map(o=>`${Eo(n)}=${Eo(o)}`).join("&"):`${Eo(n)}=${Eo(r)}`).filter(n=>n);return t.length?`?${t.join("&")}`:""}var Fv=/^[^\/()?;#]+/;function Ks(e){let t=e.match(Fv);return t?t[0]:""}var kv=/^[^\/()?;=#]+/;function Lv(e){let t=e.match(kv);return t?t[0]:""}var jv=/^[^=?&#]+/;function Vv(e){let t=e.match(jv);return t?t[0]:""}var $v=/^[^&#]+/;function Bv(e){let t=e.match($v);return t?t[0]:""}var oa=class{constructor(t){this.url=t,this.remaining=t}parseRootSegment(){return this.consumeOptional("/"),this.remaining===""||this.peekStartsWith("?")||this.peekStartsWith("#")?new A([],{}):new A([],this.parseChildren())}parseQueryParams(){let t={};if(this.consumeOptional("?"))do this.parseQueryParam(t);while(this.consumeOptional("&"));return t}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(this.remaining==="")return{};this.consumeOptional("/");let t=[];for(this.peekStartsWith("(")||t.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),t.push(this.parseSegment());let n={};this.peekStartsWith("/(")&&(this.capture("/"),n=this.parseParens(!0));let r={};return this.peekStartsWith("(")&&(r=this.parseParens(!1)),(t.length>0||Object.keys(n).length>0)&&(r[b]=new A(t,n)),r}parseSegment(){let t=Ks(this.remaining);if(t===""&&this.peekStartsWith(";"))throw new D(4009,!1);return this.capture(t),new mt(_o(t),this.parseMatrixParams())}parseMatrixParams(){let t={};for(;this.consumeOptional(";");)this.parseParam(t);return t}parseParam(t){let n=Lv(this.remaining);if(!n)return;this.capture(n);let r="";if(this.consumeOptional("=")){let o=Ks(this.remaining);o&&(r=o,this.capture(r))}t[_o(n)]=_o(r)}parseQueryParam(t){let n=Vv(this.remaining);if(!n)return;this.capture(n);let r="";if(this.consumeOptional("=")){let s=Bv(this.remaining);s&&(r=s,this.capture(r))}let o=Sd(n),i=Sd(r);if(t.hasOwnProperty(o)){let s=t[o];Array.isArray(s)||(s=[s],t[o]=s),s.push(i)}else t[o]=i}parseParens(t){let n={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){let r=Ks(this.remaining),o=this.remaining[r.length];if(o!=="/"&&o!==")"&&o!==";")throw new D(4010,!1);let i;r.indexOf(":")>-1?(i=r.slice(0,r.indexOf(":")),this.capture(i),this.capture(":")):t&&(i=b);let s=this.parseChildren();n[i]=Object.keys(s).length===1?s[b]:new A([],s),this.consumeOptional("//")}return n}peekStartsWith(t){return this.remaining.startsWith(t)}consumeOptional(t){return this.peekStartsWith(t)?(this.remaining=this.remaining.substring(t.length),!0):!1}capture(t){if(!this.consumeOptional(t))throw new D(4011,!1)}};function Vd(e){return e.segments.length>0?new A([],{[b]:e}):e}function $d(e){let t={};for(let[r,o]of Object.entries(e.children)){let i=$d(o);if(r===b&&i.segments.length===0&&i.hasChildren())for(let[s,a]of Object.entries(i.children))t[s]=a;else(i.segments.length>0||i.hasChildren())&&(t[r]=i)}let n=new A(e.segments,t);return Uv(n)}function Uv(e){if(e.numberOfChildren===1&&e.children[b]){let t=e.children[b];return new A(e.segments.concat(t.segments),t.children)}return e}function Hn(e){return e instanceof Be}function Hv(e,t,n=null,r=null){let o=Bd(e);return Ud(o,t,n,r)}function Bd(e){let t;function n(i){let s={};for(let c of i.children){let u=n(c);s[c.outlet]=u}let a=new A(i.url,s);return i===e&&(t=a),a}let r=n(e.root),o=Vd(r);return t??o}function Ud(e,t,n,r){let o=e;for(;o.parent;)o=o.parent;if(t.length===0)return Js(o,o,o,n,r);let i=zv(t);if(i.toRoot())return Js(o,o,new A([],{}),n,r);let s=Gv(i,o,e),a=s.processChildren?Vn(s.segmentGroup,s.index,i.commands):zd(s.segmentGroup,s.index,i.commands);return Js(o,s.segmentGroup,a,n,r)}function To(e){return typeof e=="object"&&e!=null&&!e.outlets&&!e.segmentPath}function zn(e){return typeof e=="object"&&e!=null&&e.outlets}function Js(e,t,n,r,o){let i={};r&&Object.entries(r).forEach(([c,u])=>{i[c]=Array.isArray(u)?u.map(l=>`${l}`):`${u}`});let s;e===t?s=n:s=Hd(e,t,n);let a=Vd($d(s));return new Be(a,i,o)}function Hd(e,t,n){let r={};return Object.entries(e.children).forEach(([o,i])=>{i===t?r[o]=n:r[o]=Hd(i,t,n)}),new A(e.segments,r)}var xo=class{constructor(t,n,r){if(this.isAbsolute=t,this.numberOfDoubleDots=n,this.commands=r,t&&r.length>0&&To(r[0]))throw new D(4003,!1);let o=r.find(zn);if(o&&o!==Rd(r))throw new D(4004,!1)}toRoot(){return this.isAbsolute&&this.commands.length===1&&this.commands[0]=="/"}};function zv(e){if(typeof e[0]=="string"&&e.length===1&&e[0]==="/")return new xo(!0,0,e);let t=0,n=!1,r=e.reduce((o,i,s)=>{if(typeof i=="object"&&i!=null){if(i.outlets){let a={};return Object.entries(i.outlets).forEach(([c,u])=>{a[c]=typeof u=="string"?u.split("/"):u}),[...o,{outlets:a}]}if(i.segmentPath)return[...o,i.segmentPath]}return typeof i!="string"?[...o,i]:s===0?(i.split("/").forEach((a,c)=>{c==0&&a==="."||(c==0&&a===""?n=!0:a===".."?t++:a!=""&&o.push(a))}),o):[...o,i]},[]);return new xo(n,t,r)}var Kt=class{constructor(t,n,r){this.segmentGroup=t,this.processChildren=n,this.index=r}};function Gv(e,t,n){if(e.isAbsolute)return new Kt(t,!0,0);if(!n)return new Kt(t,!1,NaN);if(n.parent===null)return new Kt(n,!0,0);let r=To(e.commands[0])?0:1,o=n.segments.length-1+r;return qv(n,o,e.numberOfDoubleDots)}function qv(e,t,n){let r=e,o=t,i=n;for(;i>o;){if(i-=o,r=r.parent,!r)throw new D(4005,!1);o=r.segments.length}return new Kt(r,!1,o-i)}function Wv(e){return zn(e[0])?e[0].outlets:{[b]:e}}function zd(e,t,n){if(e??=new A([],{}),e.segments.length===0&&e.hasChildren())return Vn(e,t,n);let r=Zv(e,t,n),o=n.slice(r.commandIndex);if(r.match&&r.pathIndexi!==b)&&e.children[b]&&e.numberOfChildren===1&&e.children[b].segments.length===0){let i=Vn(e.children[b],t,n);return new A(e.segments,i.children)}return Object.entries(r).forEach(([i,s])=>{typeof s=="string"&&(s=[s]),s!==null&&(o[i]=zd(e.children[i],t,s))}),Object.entries(e.children).forEach(([i,s])=>{r[i]===void 0&&(o[i]=s)}),new A(e.segments,o)}}function Zv(e,t,n){let r=0,o=t,i={match:!1,pathIndex:0,commandIndex:0};for(;o=n.length)return i;let s=e.segments[o],a=n[r];if(zn(a))break;let c=`${a}`,u=r0&&c===void 0)break;if(c&&u&&typeof u=="object"&&u.outlets===void 0){if(!_d(c,u,s))return i;r+=2}else{if(!_d(c,{},s))return i;r++}o++}return{match:!0,pathIndex:o,commandIndex:r}}function ia(e,t,n){let r=e.segments.slice(0,t),o=0;for(;o{typeof r=="string"&&(r=[r]),r!==null&&(t[n]=ia(new A([],{}),0,r))}),t}function Md(e){let t={};return Object.entries(e).forEach(([n,r])=>t[n]=`${r}`),t}function _d(e,t,n){return e==n.path&&Te(t,n.parameters)}var $n="imperative",Z=function(e){return e[e.NavigationStart=0]="NavigationStart",e[e.NavigationEnd=1]="NavigationEnd",e[e.NavigationCancel=2]="NavigationCancel",e[e.NavigationError=3]="NavigationError",e[e.RoutesRecognized=4]="RoutesRecognized",e[e.ResolveStart=5]="ResolveStart",e[e.ResolveEnd=6]="ResolveEnd",e[e.GuardsCheckStart=7]="GuardsCheckStart",e[e.GuardsCheckEnd=8]="GuardsCheckEnd",e[e.RouteConfigLoadStart=9]="RouteConfigLoadStart",e[e.RouteConfigLoadEnd=10]="RouteConfigLoadEnd",e[e.ChildActivationStart=11]="ChildActivationStart",e[e.ChildActivationEnd=12]="ChildActivationEnd",e[e.ActivationStart=13]="ActivationStart",e[e.ActivationEnd=14]="ActivationEnd",e[e.Scroll=15]="Scroll",e[e.NavigationSkipped=16]="NavigationSkipped",e}(Z||{}),de=class{constructor(t,n){this.id=t,this.url=n}},Gn=class extends de{constructor(t,n,r="imperative",o=null){super(t,n),this.type=Z.NavigationStart,this.navigationTrigger=r,this.restoredState=o}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}},yt=class extends de{constructor(t,n,r){super(t,n),this.urlAfterRedirects=r,this.type=Z.NavigationEnd}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}},oe=function(e){return e[e.Redirect=0]="Redirect",e[e.SupersededByNewNavigation=1]="SupersededByNewNavigation",e[e.NoDataFromResolver=2]="NoDataFromResolver",e[e.GuardRejected=3]="GuardRejected",e}(oe||{}),sa=function(e){return e[e.IgnoredSameUrlNavigation=0]="IgnoredSameUrlNavigation",e[e.IgnoredByUrlHandlingStrategy=1]="IgnoredByUrlHandlingStrategy",e}(sa||{}),$e=class extends de{constructor(t,n,r,o){super(t,n),this.reason=r,this.code=o,this.type=Z.NavigationCancel}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}},Dt=class extends de{constructor(t,n,r,o){super(t,n),this.reason=r,this.code=o,this.type=Z.NavigationSkipped}},qn=class extends de{constructor(t,n,r,o){super(t,n),this.error=r,this.target=o,this.type=Z.NavigationError}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}},No=class extends de{constructor(t,n,r,o){super(t,n),this.urlAfterRedirects=r,this.state=o,this.type=Z.RoutesRecognized}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},aa=class extends de{constructor(t,n,r,o){super(t,n),this.urlAfterRedirects=r,this.state=o,this.type=Z.GuardsCheckStart}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},ca=class extends de{constructor(t,n,r,o,i){super(t,n),this.urlAfterRedirects=r,this.state=o,this.shouldActivate=i,this.type=Z.GuardsCheckEnd}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}},ua=class extends de{constructor(t,n,r,o){super(t,n),this.urlAfterRedirects=r,this.state=o,this.type=Z.ResolveStart}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},la=class extends de{constructor(t,n,r,o){super(t,n),this.urlAfterRedirects=r,this.state=o,this.type=Z.ResolveEnd}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},da=class{constructor(t){this.route=t,this.type=Z.RouteConfigLoadStart}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}},fa=class{constructor(t){this.route=t,this.type=Z.RouteConfigLoadEnd}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}},ha=class{constructor(t){this.snapshot=t,this.type=Z.ChildActivationStart}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},pa=class{constructor(t){this.snapshot=t,this.type=Z.ChildActivationEnd}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},ga=class{constructor(t){this.snapshot=t,this.type=Z.ActivationStart}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},ma=class{constructor(t){this.snapshot=t,this.type=Z.ActivationEnd}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}};var Wn=class{},tn=class{constructor(t,n){this.url=t,this.navigationBehaviorOptions=n}};function Qv(e,t){return e.providers&&!e._injector&&(e._injector=Ps(e.providers,t,`Route: ${e.path}`)),e._injector??t}function ve(e){return e.outlet||b}function Kv(e,t){let n=e.filter(r=>ve(r)===t);return n.push(...e.filter(r=>ve(r)!==t)),n}function Xn(e){if(!e)return null;if(e.routeConfig?._injector)return e.routeConfig._injector;for(let t=e.parent;t;t=t.parent){let n=t.routeConfig;if(n?._loadedInjector)return n._loadedInjector;if(n?._injector)return n._injector}return null}var va=class{get injector(){return Xn(this.route?.snapshot)??this.rootInjector}set injector(t){}constructor(t){this.rootInjector=t,this.outlet=null,this.route=null,this.children=new Lo(this.rootInjector),this.attachRef=null}},Lo=(()=>{class e{constructor(n){this.rootInjector=n,this.contexts=new Map}onChildOutletCreated(n,r){let o=this.getOrCreateContext(n);o.outlet=r,this.contexts.set(n,o)}onChildOutletDestroyed(n){let r=this.getContext(n);r&&(r.outlet=null,r.attachRef=null)}onOutletDeactivated(){let n=this.contexts;return this.contexts=new Map,n}onOutletReAttached(n){this.contexts=n}getOrCreateContext(n){let r=this.getContext(n);return r||(r=new va(this.rootInjector),this.contexts.set(n,r)),r}getContext(n){return this.contexts.get(n)||null}static{this.\u0275fac=function(r){return new(r||e)(_(ue))}}static{this.\u0275prov=w({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})(),Ao=class{constructor(t){this._root=t}get root(){return this._root.value}parent(t){let n=this.pathFromRoot(t);return n.length>1?n[n.length-2]:null}children(t){let n=ya(t,this._root);return n?n.children.map(r=>r.value):[]}firstChild(t){let n=ya(t,this._root);return n&&n.children.length>0?n.children[0].value:null}siblings(t){let n=Da(t,this._root);return n.length<2?[]:n[n.length-2].children.map(o=>o.value).filter(o=>o!==t)}pathFromRoot(t){return Da(t,this._root).map(n=>n.value)}};function ya(e,t){if(e===t.value)return t;for(let n of t.children){let r=ya(e,n);if(r)return r}return null}function Da(e,t){if(e===t.value)return[t];for(let n of t.children){let r=Da(e,n);if(r.length)return r.unshift(t),r}return[]}var re=class{constructor(t,n){this.value=t,this.children=n}toString(){return`TreeNode(${this.value})`}};function Qt(e){let t={};return e&&e.children.forEach(n=>t[n.value.outlet]=n),t}var Ro=class extends Ao{constructor(t,n){super(t),this.snapshot=n,xa(this,t)}toString(){return this.snapshot.toString()}};function Gd(e){let t=Jv(e),n=new W([new mt("",{})]),r=new W({}),o=new W({}),i=new W({}),s=new W(""),a=new nn(n,r,i,s,o,b,e,t.root);return a.snapshot=t.root,new Ro(new re(a,[]),t)}function Jv(e){let t={},n={},r={},o="",i=new Jt([],t,r,o,n,b,e,null,{});return new Po("",new re(i,[]))}var nn=class{constructor(t,n,r,o,i,s,a,c){this.urlSubject=t,this.paramsSubject=n,this.queryParamsSubject=r,this.fragmentSubject=o,this.dataSubject=i,this.outlet=s,this.component=a,this._futureSnapshot=c,this.title=this.dataSubject?.pipe(C(u=>u[Jn]))??y(void 0),this.url=t,this.params=n,this.queryParams=r,this.fragment=o,this.data=i}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap??=this.params.pipe(C(t=>en(t))),this._paramMap}get queryParamMap(){return this._queryParamMap??=this.queryParams.pipe(C(t=>en(t))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}};function Oo(e,t,n="emptyOnly"){let r,{routeConfig:o}=e;return t!==null&&(n==="always"||o?.path===""||!t.component&&!t.routeConfig?.loadComponent)?r={params:g(g({},t.params),e.params),data:g(g({},t.data),e.data),resolve:g(g(g(g({},e.data),t.data),o?.data),e._resolvedData)}:r={params:g({},e.params),data:g({},e.data),resolve:g(g({},e.data),e._resolvedData??{})},o&&Wd(o)&&(r.resolve[Jn]=o.title),r}var Jt=class{get title(){return this.data?.[Jn]}constructor(t,n,r,o,i,s,a,c,u){this.url=t,this.params=n,this.queryParams=r,this.fragment=o,this.data=i,this.outlet=s,this.component=a,this.routeConfig=c,this._resolve=u}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap??=en(this.params),this._paramMap}get queryParamMap(){return this._queryParamMap??=en(this.queryParams),this._queryParamMap}toString(){let t=this.url.map(r=>r.toString()).join("/"),n=this.routeConfig?this.routeConfig.path:"";return`Route(url:'${t}', path:'${n}')`}},Po=class extends Ao{constructor(t,n){super(n),this.url=t,xa(this,n)}toString(){return qd(this._root)}};function xa(e,t){t.value._routerState=e,t.children.forEach(n=>xa(e,n))}function qd(e){let t=e.children.length>0?` { ${e.children.map(qd).join(", ")} } `:"";return`${e.value}${t}`}function Xs(e){if(e.snapshot){let t=e.snapshot,n=e._futureSnapshot;e.snapshot=n,Te(t.queryParams,n.queryParams)||e.queryParamsSubject.next(n.queryParams),t.fragment!==n.fragment&&e.fragmentSubject.next(n.fragment),Te(t.params,n.params)||e.paramsSubject.next(n.params),Sv(t.url,n.url)||e.urlSubject.next(n.url),Te(t.data,n.data)||e.dataSubject.next(n.data)}else e.snapshot=e._futureSnapshot,e.dataSubject.next(e._futureSnapshot.data)}function wa(e,t){let n=Te(e.params,t.params)&&xv(e.url,t.url),r=!e.parent!=!t.parent;return n&&!r&&(!e.parent||wa(e.parent,t.parent))}function Wd(e){return typeof e.title=="string"||e.title===null}var Na=(()=>{class e{constructor(){this.activated=null,this._activatedRoute=null,this.name=b,this.activateEvents=new J,this.deactivateEvents=new J,this.attachEvents=new J,this.detachEvents=new J,this.parentContexts=h(Lo),this.location=h(po),this.changeDetector=h(Nn),this.inputBinder=h(Aa,{optional:!0}),this.supportsBindingToComponentInputs=!0}get activatedComponentRef(){return this.activated}ngOnChanges(n){if(n.name){let{firstChange:r,previousValue:o}=n.name;if(r)return;this.isTrackedInParentContexts(o)&&(this.deactivate(),this.parentContexts.onChildOutletDestroyed(o)),this.initializeOutletWithName()}}ngOnDestroy(){this.isTrackedInParentContexts(this.name)&&this.parentContexts.onChildOutletDestroyed(this.name),this.inputBinder?.unsubscribeFromRouteData(this)}isTrackedInParentContexts(n){return this.parentContexts.getContext(n)?.outlet===this}ngOnInit(){this.initializeOutletWithName()}initializeOutletWithName(){if(this.parentContexts.onChildOutletCreated(this.name,this),this.activated)return;let n=this.parentContexts.getContext(this.name);n?.route&&(n.attachRef?this.attach(n.attachRef,n.route):this.activateWith(n.route,n.injector))}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new D(4012,!1);return this.activated.instance}get activatedRoute(){if(!this.activated)throw new D(4012,!1);return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new D(4012,!1);this.location.detach();let n=this.activated;return this.activated=null,this._activatedRoute=null,this.detachEvents.emit(n.instance),n}attach(n,r){this.activated=n,this._activatedRoute=r,this.location.insert(n.hostView),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.attachEvents.emit(n.instance)}deactivate(){if(this.activated){let n=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(n)}}activateWith(n,r){if(this.isActivated)throw new D(4013,!1);this._activatedRoute=n;let o=this.location,s=n.snapshot.component,a=this.parentContexts.getOrCreateContext(this.name).children,c=new Ca(n,a,o.injector);this.activated=o.createComponent(s,{index:o.length,injector:c,environmentInjector:r}),this.changeDetector.markForCheck(),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.activateEvents.emit(this.activated.instance)}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275dir=us({type:e,selectors:[["router-outlet"]],inputs:{name:"name"},outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"],standalone:!0,features:[so]})}}return e})(),Ca=class e{__ngOutletInjector(t){return new e(this.route,this.childContexts,t)}constructor(t,n,r){this.route=t,this.childContexts=n,this.parent=r}get(t,n){return t===nn?this.route:t===Lo?this.childContexts:this.parent.get(t,n)}},Aa=new E("");function Xv(e,t,n){let r=Zn(e,t._root,n?n._root:void 0);return new Ro(r,t)}function Zn(e,t,n){if(n&&e.shouldReuseRoute(t.value,n.value.snapshot)){let r=n.value;r._futureSnapshot=t.value;let o=ey(e,t,n);return new re(r,o)}else{if(e.shouldAttach(t.value)){let i=e.retrieve(t.value);if(i!==null){let s=i.route;return s.value._futureSnapshot=t.value,s.children=t.children.map(a=>Zn(e,a)),s}}let r=ty(t.value),o=t.children.map(i=>Zn(e,i));return new re(r,o)}}function ey(e,t,n){return t.children.map(r=>{for(let o of n.children)if(e.shouldReuseRoute(r.value,o.value.snapshot))return Zn(e,r,o);return Zn(e,r)})}function ty(e){return new nn(new W(e.url),new W(e.params),new W(e.queryParams),new W(e.fragment),new W(e.data),e.outlet,e.component,e)}var Yn=class{constructor(t,n){this.redirectTo=t,this.navigationBehaviorOptions=n}},Zd="ngNavigationCancelingError";function Fo(e,t){let{redirectTo:n,navigationBehaviorOptions:r}=Hn(t)?{redirectTo:t,navigationBehaviorOptions:void 0}:t,o=Yd(!1,oe.Redirect);return o.url=n,o.navigationBehaviorOptions=r,o}function Yd(e,t){let n=new Error(`NavigationCancelingError: ${e||""}`);return n[Zd]=!0,n.cancellationCode=t,n}function ny(e){return Qd(e)&&Hn(e.url)}function Qd(e){return!!e&&e[Zd]}var ry=(e,t,n,r)=>C(o=>(new Ia(t,o.targetRouterState,o.currentRouterState,n,r).activate(e),o)),Ia=class{constructor(t,n,r,o,i){this.routeReuseStrategy=t,this.futureState=n,this.currState=r,this.forwardEvent=o,this.inputBindingEnabled=i}activate(t){let n=this.futureState._root,r=this.currState?this.currState._root:null;this.deactivateChildRoutes(n,r,t),Xs(this.futureState.root),this.activateChildRoutes(n,r,t)}deactivateChildRoutes(t,n,r){let o=Qt(n);t.children.forEach(i=>{let s=i.value.outlet;this.deactivateRoutes(i,o[s],r),delete o[s]}),Object.values(o).forEach(i=>{this.deactivateRouteAndItsChildren(i,r)})}deactivateRoutes(t,n,r){let o=t.value,i=n?n.value:null;if(o===i)if(o.component){let s=r.getContext(o.outlet);s&&this.deactivateChildRoutes(t,n,s.children)}else this.deactivateChildRoutes(t,n,r);else i&&this.deactivateRouteAndItsChildren(n,r)}deactivateRouteAndItsChildren(t,n){t.value.component&&this.routeReuseStrategy.shouldDetach(t.value.snapshot)?this.detachAndStoreRouteSubtree(t,n):this.deactivateRouteAndOutlet(t,n)}detachAndStoreRouteSubtree(t,n){let r=n.getContext(t.value.outlet),o=r&&t.value.component?r.children:n,i=Qt(t);for(let s of Object.values(i))this.deactivateRouteAndItsChildren(s,o);if(r&&r.outlet){let s=r.outlet.detach(),a=r.children.onOutletDeactivated();this.routeReuseStrategy.store(t.value.snapshot,{componentRef:s,route:t,contexts:a})}}deactivateRouteAndOutlet(t,n){let r=n.getContext(t.value.outlet),o=r&&t.value.component?r.children:n,i=Qt(t);for(let s of Object.values(i))this.deactivateRouteAndItsChildren(s,o);r&&(r.outlet&&(r.outlet.deactivate(),r.children.onOutletDeactivated()),r.attachRef=null,r.route=null)}activateChildRoutes(t,n,r){let o=Qt(n);t.children.forEach(i=>{this.activateRoutes(i,o[i.value.outlet],r),this.forwardEvent(new ma(i.value.snapshot))}),t.children.length&&this.forwardEvent(new pa(t.value.snapshot))}activateRoutes(t,n,r){let o=t.value,i=n?n.value:null;if(Xs(o),o===i)if(o.component){let s=r.getOrCreateContext(o.outlet);this.activateChildRoutes(t,n,s.children)}else this.activateChildRoutes(t,n,r);else if(o.component){let s=r.getOrCreateContext(o.outlet);if(this.routeReuseStrategy.shouldAttach(o.snapshot)){let a=this.routeReuseStrategy.retrieve(o.snapshot);this.routeReuseStrategy.store(o.snapshot,null),s.children.onOutletReAttached(a.contexts),s.attachRef=a.componentRef,s.route=a.route.value,s.outlet&&s.outlet.attach(a.componentRef,a.route.value),Xs(a.route.value),this.activateChildRoutes(t,null,s.children)}else s.attachRef=null,s.route=o,s.outlet&&s.outlet.activateWith(o,s.injector),this.activateChildRoutes(t,null,s.children)}else this.activateChildRoutes(t,null,r)}},ko=class{constructor(t){this.path=t,this.route=this.path[this.path.length-1]}},Xt=class{constructor(t,n){this.component=t,this.route=n}};function oy(e,t,n){let r=e._root,o=t?t._root:null;return Ln(r,o,n,[r.value])}function iy(e){let t=e.routeConfig?e.routeConfig.canActivateChild:null;return!t||t.length===0?null:{node:e,guards:t}}function on(e,t){let n=Symbol(),r=t.get(e,n);return r===n?typeof e=="function"&&!ou(e)?e:t.get(e):r}function Ln(e,t,n,r,o={canDeactivateChecks:[],canActivateChecks:[]}){let i=Qt(t);return e.children.forEach(s=>{sy(s,i[s.value.outlet],n,r.concat([s.value]),o),delete i[s.value.outlet]}),Object.entries(i).forEach(([s,a])=>Bn(a,n.getContext(s),o)),o}function sy(e,t,n,r,o={canDeactivateChecks:[],canActivateChecks:[]}){let i=e.value,s=t?t.value:null,a=n?n.getContext(e.value.outlet):null;if(s&&i.routeConfig===s.routeConfig){let c=ay(s,i,i.routeConfig.runGuardsAndResolvers);c?o.canActivateChecks.push(new ko(r)):(i.data=s.data,i._resolvedData=s._resolvedData),i.component?Ln(e,t,a?a.children:null,r,o):Ln(e,t,n,r,o),c&&a&&a.outlet&&a.outlet.isActivated&&o.canDeactivateChecks.push(new Xt(a.outlet.component,s))}else s&&Bn(t,a,o),o.canActivateChecks.push(new ko(r)),i.component?Ln(e,null,a?a.children:null,r,o):Ln(e,null,n,r,o);return o}function ay(e,t,n){if(typeof n=="function")return n(e,t);switch(n){case"pathParamsChange":return!vt(e.url,t.url);case"pathParamsOrQueryParamsChange":return!vt(e.url,t.url)||!Te(e.queryParams,t.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!wa(e,t)||!Te(e.queryParams,t.queryParams);case"paramsChange":default:return!wa(e,t)}}function Bn(e,t,n){let r=Qt(e),o=e.value;Object.entries(r).forEach(([i,s])=>{o.component?t?Bn(s,t.children.getContext(i),n):Bn(s,null,n):Bn(s,t,n)}),o.component?t&&t.outlet&&t.outlet.isActivated?n.canDeactivateChecks.push(new Xt(t.outlet.component,o)):n.canDeactivateChecks.push(new Xt(null,o)):n.canDeactivateChecks.push(new Xt(null,o))}function er(e){return typeof e=="function"}function cy(e){return typeof e=="boolean"}function uy(e){return e&&er(e.canLoad)}function ly(e){return e&&er(e.canActivate)}function dy(e){return e&&er(e.canActivateChild)}function fy(e){return e&&er(e.canDeactivate)}function hy(e){return e&&er(e.canMatch)}function Kd(e){return e instanceof Ne||e?.name==="EmptyError"}var bo=Symbol("INITIAL_VALUE");function rn(){return Q(e=>Mr(e.map(t=>t.pipe(G(1),pi(bo)))).pipe(C(t=>{for(let n of t)if(n!==!0){if(n===bo)return bo;if(n===!1||py(n))return n}return!0}),Y(t=>t!==bo),G(1)))}function py(e){return Hn(e)||e instanceof Yn}function gy(e,t){return j(n=>{let{targetSnapshot:r,currentSnapshot:o,guards:{canActivateChecks:i,canDeactivateChecks:s}}=n;return s.length===0&&i.length===0?y(V(g({},n),{guardsResult:!0})):my(s,r,o,e).pipe(j(a=>a&&cy(a)?vy(r,i,e,t):y(a)),C(a=>V(g({},n),{guardsResult:a})))})}function my(e,t,n,r){return L(e).pipe(j(o=>Iy(o.component,o.route,n,t,r)),Ie(o=>o!==!0,!0))}function vy(e,t,n,r){return L(t).pipe(Nt(o=>Ce(Dy(o.route.parent,r),yy(o.route,r),Cy(e,o.path,n),wy(e,o.route,n))),Ie(o=>o!==!0,!0))}function yy(e,t){return e!==null&&t&&t(new ga(e)),y(!0)}function Dy(e,t){return e!==null&&t&&t(new ha(e)),y(!0)}function wy(e,t,n){let r=t.routeConfig?t.routeConfig.canActivate:null;if(!r||r.length===0)return y(!0);let o=r.map(i=>it(()=>{let s=Xn(t)??n,a=on(i,s),c=ly(a)?a.canActivate(t,e):Pe(s,()=>a(t,e));return Xe(c).pipe(Ie())}));return y(o).pipe(rn())}function Cy(e,t,n){let r=t[t.length-1],i=t.slice(0,t.length-1).reverse().map(s=>iy(s)).filter(s=>s!==null).map(s=>it(()=>{let a=s.guards.map(c=>{let u=Xn(s.node)??n,l=on(c,u),d=dy(l)?l.canActivateChild(r,e):Pe(u,()=>l(r,e));return Xe(d).pipe(Ie())});return y(a).pipe(rn())}));return y(i).pipe(rn())}function Iy(e,t,n,r,o){let i=t&&t.routeConfig?t.routeConfig.canDeactivate:null;if(!i||i.length===0)return y(!0);let s=i.map(a=>{let c=Xn(t)??o,u=on(a,c),l=fy(u)?u.canDeactivate(e,t,n,r):Pe(c,()=>u(e,t,n,r));return Xe(l).pipe(Ie())});return y(s).pipe(rn())}function Ey(e,t,n,r){let o=t.canLoad;if(o===void 0||o.length===0)return y(!0);let i=o.map(s=>{let a=on(s,e),c=uy(a)?a.canLoad(t,n):Pe(e,()=>a(t,n));return Xe(c)});return y(i).pipe(rn(),Jd(r))}function Jd(e){return ti(q(t=>{if(typeof t!="boolean")throw Fo(e,t)}),C(t=>t===!0))}function by(e,t,n,r){let o=t.canMatch;if(!o||o.length===0)return y(!0);let i=o.map(s=>{let a=on(s,e),c=hy(a)?a.canMatch(t,n):Pe(e,()=>a(t,n));return Xe(c)});return y(i).pipe(rn(),Jd(r))}var Qn=class{constructor(t){this.segmentGroup=t||null}},Kn=class extends Error{constructor(t){super(),this.urlTree=t}};function Yt(e){return He(new Qn(e))}function Sy(e){return He(new D(4e3,!1))}function My(e){return He(Yd(!1,oe.GuardRejected))}var Ea=class{constructor(t,n){this.urlSerializer=t,this.urlTree=n}lineralizeSegments(t,n){let r=[],o=n.root;for(;;){if(r=r.concat(o.segments),o.numberOfChildren===0)return y(r);if(o.numberOfChildren>1||!o.children[b])return Sy(`${t.redirectTo}`);o=o.children[b]}}applyRedirectCommands(t,n,r,o,i){if(typeof n!="string"){let a=n,{queryParams:c,fragment:u,routeConfig:l,url:d,outlet:p,params:f,data:v,title:R}=o,z=Pe(i,()=>a({params:f,data:v,queryParams:c,fragment:u,routeConfig:l,url:d,outlet:p,title:R}));if(z instanceof Be)throw new Kn(z);n=z}let s=this.applyRedirectCreateUrlTree(n,this.urlSerializer.parse(n),t,r);if(n[0]==="/")throw new Kn(s);return s}applyRedirectCreateUrlTree(t,n,r,o){let i=this.createSegmentGroup(t,n.root,r,o);return new Be(i,this.createQueryParams(n.queryParams,this.urlTree.queryParams),n.fragment)}createQueryParams(t,n){let r={};return Object.entries(t).forEach(([o,i])=>{if(typeof i=="string"&&i[0]===":"){let a=i.substring(1);r[o]=n[a]}else r[o]=i}),r}createSegmentGroup(t,n,r,o){let i=this.createSegments(t,n.segments,r,o),s={};return Object.entries(n.children).forEach(([a,c])=>{s[a]=this.createSegmentGroup(t,c,r,o)}),new A(i,s)}createSegments(t,n,r,o){return n.map(i=>i.path[0]===":"?this.findPosParam(t,i,o):this.findOrReturn(i,r))}findPosParam(t,n,r){let o=r[n.path.substring(1)];if(!o)throw new D(4001,!1);return o}findOrReturn(t,n){let r=0;for(let o of n){if(o.path===t.path)return n.splice(r),o;r++}return t}},ba={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function _y(e,t,n,r,o){let i=Xd(e,t,n);return i.matched?(r=Qv(t,r),by(r,t,n,o).pipe(C(s=>s===!0?i:g({},ba)))):y(i)}function Xd(e,t,n){if(t.path==="**")return Ty(n);if(t.path==="")return t.pathMatch==="full"&&(e.hasChildren()||n.length>0)?g({},ba):{matched:!0,consumedSegments:[],remainingSegments:n,parameters:{},positionalParamSegments:{}};let o=(t.matcher||bv)(n,e,t);if(!o)return g({},ba);let i={};Object.entries(o.posParams??{}).forEach(([a,c])=>{i[a]=c.path});let s=o.consumed.length>0?g(g({},i),o.consumed[o.consumed.length-1].parameters):i;return{matched:!0,consumedSegments:o.consumed,remainingSegments:n.slice(o.consumed.length),parameters:s,positionalParamSegments:o.posParams??{}}}function Ty(e){return{matched:!0,parameters:e.length>0?Rd(e).parameters:{},consumedSegments:e,remainingSegments:[],positionalParamSegments:{}}}function Td(e,t,n,r){return n.length>0&&Ay(e,n,r)?{segmentGroup:new A(t,Ny(r,new A(n,e.children))),slicedSegments:[]}:n.length===0&&Ry(e,n,r)?{segmentGroup:new A(e.segments,xy(e,n,r,e.children)),slicedSegments:n}:{segmentGroup:new A(e.segments,e.children),slicedSegments:n}}function xy(e,t,n,r){let o={};for(let i of n)if(jo(e,t,i)&&!r[ve(i)]){let s=new A([],{});o[ve(i)]=s}return g(g({},r),o)}function Ny(e,t){let n={};n[b]=t;for(let r of e)if(r.path===""&&ve(r)!==b){let o=new A([],{});n[ve(r)]=o}return n}function Ay(e,t,n){return n.some(r=>jo(e,t,r)&&ve(r)!==b)}function Ry(e,t,n){return n.some(r=>jo(e,t,r))}function jo(e,t,n){return(e.hasChildren()||t.length>0)&&n.pathMatch==="full"?!1:n.path===""}function Oy(e,t,n){return t.length===0&&!e.children[n]}var Sa=class{};function Py(e,t,n,r,o,i,s="emptyOnly"){return new Ma(e,t,n,r,o,s,i).recognize()}var Fy=31,Ma=class{constructor(t,n,r,o,i,s,a){this.injector=t,this.configLoader=n,this.rootComponentType=r,this.config=o,this.urlTree=i,this.paramsInheritanceStrategy=s,this.urlSerializer=a,this.applyRedirects=new Ea(this.urlSerializer,this.urlTree),this.absoluteRedirectCount=0,this.allowRedirects=!0}noMatchError(t){return new D(4002,`'${t.segmentGroup}'`)}recognize(){let t=Td(this.urlTree.root,[],[],this.config).segmentGroup;return this.match(t).pipe(C(({children:n,rootSnapshot:r})=>{let o=new re(r,n),i=new Po("",o),s=Hv(r,[],this.urlTree.queryParams,this.urlTree.fragment);return s.queryParams=this.urlTree.queryParams,i.url=this.urlSerializer.serialize(s),{state:i,tree:s}}))}match(t){let n=new Jt([],Object.freeze({}),Object.freeze(g({},this.urlTree.queryParams)),this.urlTree.fragment,Object.freeze({}),b,this.rootComponentType,null,{});return this.processSegmentGroup(this.injector,this.config,t,b,n).pipe(C(r=>({children:r,rootSnapshot:n})),ze(r=>{if(r instanceof Kn)return this.urlTree=r.urlTree,this.match(r.urlTree.root);throw r instanceof Qn?this.noMatchError(r):r}))}processSegmentGroup(t,n,r,o,i){return r.segments.length===0&&r.hasChildren()?this.processChildren(t,n,r,i):this.processSegment(t,n,r,r.segments,o,!0,i).pipe(C(s=>s instanceof re?[s]:[]))}processChildren(t,n,r,o){let i=[];for(let s of Object.keys(r.children))s==="primary"?i.unshift(s):i.push(s);return L(i).pipe(Nt(s=>{let a=r.children[s],c=Kv(n,s);return this.processSegmentGroup(t,c,a,s,o)}),hi((s,a)=>(s.push(...a),s)),Ge(null),di(),j(s=>{if(s===null)return Yt(r);let a=ef(s);return ky(a),y(a)}))}processSegment(t,n,r,o,i,s,a){return L(n).pipe(Nt(c=>this.processSegmentAgainstRoute(c._injector??t,n,c,r,o,i,s,a).pipe(ze(u=>{if(u instanceof Qn)return y(null);throw u}))),Ie(c=>!!c),ze(c=>{if(Kd(c))return Oy(r,o,i)?y(new Sa):Yt(r);throw c}))}processSegmentAgainstRoute(t,n,r,o,i,s,a,c){return ve(r)!==s&&(s===b||!jo(o,i,r))?Yt(o):r.redirectTo===void 0?this.matchSegmentAgainstRoute(t,o,r,i,s,c):this.allowRedirects&&a?this.expandSegmentAgainstRouteUsingRedirect(t,o,n,r,i,s,c):Yt(o)}expandSegmentAgainstRouteUsingRedirect(t,n,r,o,i,s,a){let{matched:c,parameters:u,consumedSegments:l,positionalParamSegments:d,remainingSegments:p}=Xd(n,o,i);if(!c)return Yt(n);typeof o.redirectTo=="string"&&o.redirectTo[0]==="/"&&(this.absoluteRedirectCount++,this.absoluteRedirectCount>Fy&&(this.allowRedirects=!1));let f=new Jt(i,u,Object.freeze(g({},this.urlTree.queryParams)),this.urlTree.fragment,xd(o),ve(o),o.component??o._loadedComponent??null,o,Nd(o)),v=Oo(f,a,this.paramsInheritanceStrategy);f.params=Object.freeze(v.params),f.data=Object.freeze(v.data);let R=this.applyRedirects.applyRedirectCommands(l,o.redirectTo,d,f,t);return this.applyRedirects.lineralizeSegments(o,R).pipe(j(z=>this.processSegment(t,r,n,z.concat(p),s,!1,a)))}matchSegmentAgainstRoute(t,n,r,o,i,s){let a=_y(n,r,o,t,this.urlSerializer);return r.path==="**"&&(n.children={}),a.pipe(Q(c=>c.matched?(t=r._injector??t,this.getChildConfig(t,r,o).pipe(Q(({routes:u})=>{let l=r._loadedInjector??t,{parameters:d,consumedSegments:p,remainingSegments:f}=c,v=new Jt(p,d,Object.freeze(g({},this.urlTree.queryParams)),this.urlTree.fragment,xd(r),ve(r),r.component??r._loadedComponent??null,r,Nd(r)),R=Oo(v,s,this.paramsInheritanceStrategy);v.params=Object.freeze(R.params),v.data=Object.freeze(R.data);let{segmentGroup:z,slicedSegments:H}=Td(n,p,f,u);if(H.length===0&&z.hasChildren())return this.processChildren(l,u,z,v).pipe(C(et=>new re(v,et)));if(u.length===0&&H.length===0)return y(new re(v,[]));let ye=ve(r)===i;return this.processSegment(l,u,z,H,ye?b:i,!0,v).pipe(C(et=>new re(v,et instanceof re?[et]:[])))}))):Yt(n)))}getChildConfig(t,n,r){return n.children?y({routes:n.children,injector:t}):n.loadChildren?n._loadedRoutes!==void 0?y({routes:n._loadedRoutes,injector:n._loadedInjector}):Ey(t,n,r,this.urlSerializer).pipe(j(o=>o?this.configLoader.loadChildren(t,n).pipe(q(i=>{n._loadedRoutes=i.routes,n._loadedInjector=i.injector})):My(n))):y({routes:[],injector:t})}};function ky(e){e.sort((t,n)=>t.value.outlet===b?-1:n.value.outlet===b?1:t.value.outlet.localeCompare(n.value.outlet))}function Ly(e){let t=e.value.routeConfig;return t&&t.path===""}function ef(e){let t=[],n=new Set;for(let r of e){if(!Ly(r)){t.push(r);continue}let o=t.find(i=>r.value.routeConfig===i.value.routeConfig);o!==void 0?(o.children.push(...r.children),n.add(o)):t.push(r)}for(let r of n){let o=ef(r.children);t.push(new re(r.value,o))}return t.filter(r=>!n.has(r))}function xd(e){return e.data||{}}function Nd(e){return e.resolve||{}}function jy(e,t,n,r,o,i){return j(s=>Py(e,t,n,r,s.extractedUrl,o,i).pipe(C(({state:a,tree:c})=>V(g({},s),{targetSnapshot:a,urlAfterRedirects:c}))))}function Vy(e,t){return j(n=>{let{targetSnapshot:r,guards:{canActivateChecks:o}}=n;if(!o.length)return y(n);let i=new Set(o.map(c=>c.route)),s=new Set;for(let c of i)if(!s.has(c))for(let u of tf(c))s.add(u);let a=0;return L(s).pipe(Nt(c=>i.has(c)?$y(c,r,e,t):(c.data=Oo(c,c.parent,e).resolve,y(void 0))),q(()=>a++),At(1),j(c=>a===s.size?y(n):K))})}function tf(e){let t=e.children.map(n=>tf(n)).flat();return[e,...t]}function $y(e,t,n,r){let o=e.routeConfig,i=e._resolve;return o?.title!==void 0&&!Wd(o)&&(i[Jn]=o.title),By(i,e,t,r).pipe(C(s=>(e._resolvedData=s,e.data=Oo(e,e.parent,n).resolve,null)))}function By(e,t,n,r){let o=na(e);if(o.length===0)return y({});let i={};return L(o).pipe(j(s=>Uy(e[s],t,n,r).pipe(Ie(),q(a=>{if(a instanceof Yn)throw Fo(new Un,a);i[s]=a}))),At(1),un(i),ze(s=>Kd(s)?K:He(s)))}function Uy(e,t,n,r){let o=Xn(t)??r,i=on(e,o),s=i.resolve?i.resolve(t,n):Pe(o,()=>i(t,n));return Xe(s)}function ea(e){return Q(t=>{let n=e(t);return n?L(n).pipe(C(()=>t)):y(t)})}var nf=(()=>{class e{buildTitle(n){let r,o=n.root;for(;o!==void 0;)r=this.getResolvedTitleForRoute(o)??r,o=o.children.find(i=>i.outlet===b);return r}getResolvedTitleForRoute(n){return n.data[Jn]}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=w({token:e,factory:()=>h(Hy),providedIn:"root"})}}return e})(),Hy=(()=>{class e extends nf{constructor(n){super(),this.title=n}updateTitle(n){let r=this.buildTitle(n);r!==void 0&&this.title.setTitle(r)}static{this.\u0275fac=function(r){return new(r||e)(_(Ed))}}static{this.\u0275prov=w({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})(),Ra=new E("",{providedIn:"root",factory:()=>({})}),zy=(()=>{class e{static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275cmp=no({type:e,selectors:[["ng-component"]],standalone:!0,features:[go],decls:1,vars:0,template:function(r,o){r&1&&Tn(0,"router-outlet")},dependencies:[Na],encapsulation:2})}}return e})();function Oa(e){let t=e.children&&e.children.map(Oa),n=t?V(g({},e),{children:t}):g({},e);return!n.component&&!n.loadComponent&&(t||n.loadChildren)&&n.outlet&&n.outlet!==b&&(n.component=zy),n}var Pa=new E(""),Gy=(()=>{class e{constructor(){this.componentLoaders=new WeakMap,this.childrenLoaders=new WeakMap,this.compiler=h(Ls)}loadComponent(n){if(this.componentLoaders.get(n))return this.componentLoaders.get(n);if(n._loadedComponent)return y(n._loadedComponent);this.onLoadStartListener&&this.onLoadStartListener(n);let r=Xe(n.loadComponent()).pipe(C(rf),q(i=>{this.onLoadEndListener&&this.onLoadEndListener(n),n._loadedComponent=i}),ln(()=>{this.componentLoaders.delete(n)})),o=new Ue(r,()=>new U).pipe(Mt());return this.componentLoaders.set(n,o),o}loadChildren(n,r){if(this.childrenLoaders.get(r))return this.childrenLoaders.get(r);if(r._loadedRoutes)return y({routes:r._loadedRoutes,injector:r._loadedInjector});this.onLoadStartListener&&this.onLoadStartListener(r);let i=qy(r,this.compiler,n,this.onLoadEndListener).pipe(ln(()=>{this.childrenLoaders.delete(r)})),s=new Ue(i,()=>new U).pipe(Mt());return this.childrenLoaders.set(r,s),s}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=w({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();function qy(e,t,n,r){return Xe(e.loadChildren()).pipe(C(rf),j(o=>o instanceof In||Array.isArray(o)?y(o):L(t.compileModuleAsync(o))),C(o=>{r&&r(e);let i,s,a=!1;return Array.isArray(o)?(s=o,a=!0):(i=o.create(n).injector,s=i.get(Pa,[],{optional:!0,self:!0}).flat()),{routes:s.map(Oa),injector:i}}))}function Wy(e){return e&&typeof e=="object"&&"default"in e}function rf(e){return Wy(e)?e.default:e}var Fa=(()=>{class e{static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=w({token:e,factory:()=>h(Zy),providedIn:"root"})}}return e})(),Zy=(()=>{class e{shouldProcessUrl(n){return!0}extract(n){return n}merge(n,r){return n}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=w({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})(),Yy=new E("");var Qy=new E(""),Ky=(()=>{class e{get hasRequestedNavigation(){return this.navigationId!==0}constructor(){this.currentNavigation=null,this.currentTransition=null,this.lastSuccessfulNavigation=null,this.events=new U,this.transitionAbortSubject=new U,this.configLoader=h(Gy),this.environmentInjector=h(ue),this.urlSerializer=h(Ta),this.rootContexts=h(Lo),this.location=h(Rn),this.inputBindingEnabled=h(Aa,{optional:!0})!==null,this.titleStrategy=h(nf),this.options=h(Ra,{optional:!0})||{},this.paramsInheritanceStrategy=this.options.paramsInheritanceStrategy||"emptyOnly",this.urlHandlingStrategy=h(Fa),this.createViewTransition=h(Yy,{optional:!0}),this.navigationErrorHandler=h(Qy,{optional:!0}),this.navigationId=0,this.afterPreactivation=()=>y(void 0),this.rootComponentType=null;let n=o=>this.events.next(new da(o)),r=o=>this.events.next(new fa(o));this.configLoader.onLoadEndListener=r,this.configLoader.onLoadStartListener=n}complete(){this.transitions?.complete()}handleNavigationRequest(n){let r=++this.navigationId;this.transitions?.next(V(g(g({},this.transitions.value),n),{id:r}))}setupNavigations(n,r,o){return this.transitions=new W({id:0,currentUrlTree:r,currentRawUrl:r,extractedUrl:this.urlHandlingStrategy.extract(r),urlAfterRedirects:this.urlHandlingStrategy.extract(r),rawUrl:r,extras:{},resolve:()=>{},reject:()=>{},promise:Promise.resolve(!0),source:$n,restoredState:null,currentSnapshot:o.snapshot,targetSnapshot:null,currentRouterState:o,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.transitions.pipe(Y(i=>i.id!==0),C(i=>V(g({},i),{extractedUrl:this.urlHandlingStrategy.extract(i.rawUrl)})),Q(i=>{let s=!1,a=!1;return y(i).pipe(Q(c=>{if(this.navigationId>i.id)return this.cancelNavigationTransition(i,"",oe.SupersededByNewNavigation),K;this.currentTransition=i,this.currentNavigation={id:c.id,initialUrl:c.rawUrl,extractedUrl:c.extractedUrl,targetBrowserUrl:typeof c.extras.browserUrl=="string"?this.urlSerializer.parse(c.extras.browserUrl):c.extras.browserUrl,trigger:c.source,extras:c.extras,previousNavigation:this.lastSuccessfulNavigation?V(g({},this.lastSuccessfulNavigation),{previousNavigation:null}):null};let u=!n.navigated||this.isUpdatingInternalState()||this.isUpdatedBrowserUrl(),l=c.extras.onSameUrlNavigation??n.onSameUrlNavigation;if(!u&&l!=="reload"){let d="";return this.events.next(new Dt(c.id,this.urlSerializer.serialize(c.rawUrl),d,sa.IgnoredSameUrlNavigation)),c.resolve(!1),K}if(this.urlHandlingStrategy.shouldProcessUrl(c.rawUrl))return y(c).pipe(Q(d=>{let p=this.transitions?.getValue();return this.events.next(new Gn(d.id,this.urlSerializer.serialize(d.extractedUrl),d.source,d.restoredState)),p!==this.transitions?.getValue()?K:Promise.resolve(d)}),jy(this.environmentInjector,this.configLoader,this.rootComponentType,n.config,this.urlSerializer,this.paramsInheritanceStrategy),q(d=>{i.targetSnapshot=d.targetSnapshot,i.urlAfterRedirects=d.urlAfterRedirects,this.currentNavigation=V(g({},this.currentNavigation),{finalUrl:d.urlAfterRedirects});let p=new No(d.id,this.urlSerializer.serialize(d.extractedUrl),this.urlSerializer.serialize(d.urlAfterRedirects),d.targetSnapshot);this.events.next(p)}));if(u&&this.urlHandlingStrategy.shouldProcessUrl(c.currentRawUrl)){let{id:d,extractedUrl:p,source:f,restoredState:v,extras:R}=c,z=new Gn(d,this.urlSerializer.serialize(p),f,v);this.events.next(z);let H=Gd(this.rootComponentType).snapshot;return this.currentTransition=i=V(g({},c),{targetSnapshot:H,urlAfterRedirects:p,extras:V(g({},R),{skipLocationChange:!1,replaceUrl:!1})}),this.currentNavigation.finalUrl=p,y(i)}else{let d="";return this.events.next(new Dt(c.id,this.urlSerializer.serialize(c.extractedUrl),d,sa.IgnoredByUrlHandlingStrategy)),c.resolve(!1),K}}),q(c=>{let u=new aa(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects),c.targetSnapshot);this.events.next(u)}),C(c=>(this.currentTransition=i=V(g({},c),{guards:oy(c.targetSnapshot,c.currentSnapshot,this.rootContexts)}),i)),gy(this.environmentInjector,c=>this.events.next(c)),q(c=>{if(i.guardsResult=c.guardsResult,c.guardsResult&&typeof c.guardsResult!="boolean")throw Fo(this.urlSerializer,c.guardsResult);let u=new ca(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects),c.targetSnapshot,!!c.guardsResult);this.events.next(u)}),Y(c=>c.guardsResult?!0:(this.cancelNavigationTransition(c,"",oe.GuardRejected),!1)),ea(c=>{if(c.guards.canActivateChecks.length)return y(c).pipe(q(u=>{let l=new ua(u.id,this.urlSerializer.serialize(u.extractedUrl),this.urlSerializer.serialize(u.urlAfterRedirects),u.targetSnapshot);this.events.next(l)}),Q(u=>{let l=!1;return y(u).pipe(Vy(this.paramsInheritanceStrategy,this.environmentInjector),q({next:()=>l=!0,complete:()=>{l||this.cancelNavigationTransition(u,"",oe.NoDataFromResolver)}}))}),q(u=>{let l=new la(u.id,this.urlSerializer.serialize(u.extractedUrl),this.urlSerializer.serialize(u.urlAfterRedirects),u.targetSnapshot);this.events.next(l)}))}),ea(c=>{let u=l=>{let d=[];l.routeConfig?.loadComponent&&!l.routeConfig._loadedComponent&&d.push(this.configLoader.loadComponent(l.routeConfig).pipe(q(p=>{l.component=p}),C(()=>{})));for(let p of l.children)d.push(...u(p));return d};return Mr(u(c.targetSnapshot.root)).pipe(Ge(null),G(1))}),ea(()=>this.afterPreactivation()),Q(()=>{let{currentSnapshot:c,targetSnapshot:u}=i,l=this.createViewTransition?.(this.environmentInjector,c.root,u.root);return l?L(l).pipe(C(()=>i)):y(i)}),C(c=>{let u=Xv(n.routeReuseStrategy,c.targetSnapshot,c.currentRouterState);return this.currentTransition=i=V(g({},c),{targetRouterState:u}),this.currentNavigation.targetRouterState=u,i}),q(()=>{this.events.next(new Wn)}),ry(this.rootContexts,n.routeReuseStrategy,c=>this.events.next(c),this.inputBindingEnabled),G(1),q({next:c=>{s=!0,this.lastSuccessfulNavigation=this.currentNavigation,this.events.next(new yt(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects))),this.titleStrategy?.updateTitle(c.targetRouterState.snapshot),c.resolve(!0)},complete:()=>{s=!0}}),gi(this.transitionAbortSubject.pipe(q(c=>{throw c}))),ln(()=>{!s&&!a&&this.cancelNavigationTransition(i,"",oe.SupersededByNewNavigation),this.currentTransition?.id===i.id&&(this.currentNavigation=null,this.currentTransition=null)}),ze(c=>{if(a=!0,Qd(c))this.events.next(new $e(i.id,this.urlSerializer.serialize(i.extractedUrl),c.message,c.cancellationCode)),ny(c)?this.events.next(new tn(c.url,c.navigationBehaviorOptions)):i.resolve(!1);else{let u=new qn(i.id,this.urlSerializer.serialize(i.extractedUrl),c,i.targetSnapshot??void 0);try{let l=Pe(this.environmentInjector,()=>this.navigationErrorHandler?.(u));if(l instanceof Yn){let{message:d,cancellationCode:p}=Fo(this.urlSerializer,l);this.events.next(new $e(i.id,this.urlSerializer.serialize(i.extractedUrl),d,p)),this.events.next(new tn(l.redirectTo,l.navigationBehaviorOptions))}else{this.events.next(u);let d=n.errorHandler(c);i.resolve(!!d)}}catch(l){this.options.resolveNavigationPromiseOnError?i.resolve(!1):i.reject(l)}}return K}))}))}cancelNavigationTransition(n,r,o){let i=new $e(n.id,this.urlSerializer.serialize(n.extractedUrl),r,o);this.events.next(i),n.resolve(!1)}isUpdatingInternalState(){return this.currentTransition?.extractedUrl.toString()!==this.currentTransition?.currentUrlTree.toString()}isUpdatedBrowserUrl(){let n=this.urlHandlingStrategy.extract(this.urlSerializer.parse(this.location.path(!0))),r=this.currentNavigation?.targetBrowserUrl??this.currentNavigation?.extractedUrl;return n.toString()!==r?.toString()&&!this.currentNavigation?.extras.skipLocationChange}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=w({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();function Jy(e){return e!==$n}var Xy=(()=>{class e{static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=w({token:e,factory:()=>h(eD),providedIn:"root"})}}return e})(),_a=class{shouldDetach(t){return!1}store(t,n){}shouldAttach(t){return!1}retrieve(t){return null}shouldReuseRoute(t,n){return t.routeConfig===n.routeConfig}},eD=(()=>{class e extends _a{static{this.\u0275fac=(()=>{let n;return function(o){return(n||(n=ys(e)))(o||e)}})()}static{this.\u0275prov=w({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})(),of=(()=>{class e{static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=w({token:e,factory:()=>h(tD),providedIn:"root"})}}return e})(),tD=(()=>{class e extends of{constructor(){super(...arguments),this.location=h(Rn),this.urlSerializer=h(Ta),this.options=h(Ra,{optional:!0})||{},this.canceledNavigationResolution=this.options.canceledNavigationResolution||"replace",this.urlHandlingStrategy=h(Fa),this.urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred",this.currentUrlTree=new Be,this.rawUrlTree=this.currentUrlTree,this.currentPageId=0,this.lastSuccessfulId=-1,this.routerState=Gd(null),this.stateMemento=this.createStateMemento()}getCurrentUrlTree(){return this.currentUrlTree}getRawUrlTree(){return this.rawUrlTree}restoredState(){return this.location.getState()}get browserPageId(){return this.canceledNavigationResolution!=="computed"?this.currentPageId:this.restoredState()?.\u0275routerPageId??this.currentPageId}getRouterState(){return this.routerState}createStateMemento(){return{rawUrlTree:this.rawUrlTree,currentUrlTree:this.currentUrlTree,routerState:this.routerState}}registerNonRouterCurrentEntryChangeListener(n){return this.location.subscribe(r=>{r.type==="popstate"&&n(r.url,r.state)})}handleRouterEvent(n,r){if(n instanceof Gn)this.stateMemento=this.createStateMemento();else if(n instanceof Dt)this.rawUrlTree=r.initialUrl;else if(n instanceof No){if(this.urlUpdateStrategy==="eager"&&!r.extras.skipLocationChange){let o=this.urlHandlingStrategy.merge(r.finalUrl,r.initialUrl);this.setBrowserUrl(r.targetBrowserUrl??o,r)}}else n instanceof Wn?(this.currentUrlTree=r.finalUrl,this.rawUrlTree=this.urlHandlingStrategy.merge(r.finalUrl,r.initialUrl),this.routerState=r.targetRouterState,this.urlUpdateStrategy==="deferred"&&!r.extras.skipLocationChange&&this.setBrowserUrl(r.targetBrowserUrl??this.rawUrlTree,r)):n instanceof $e&&(n.code===oe.GuardRejected||n.code===oe.NoDataFromResolver)?this.restoreHistory(r):n instanceof qn?this.restoreHistory(r,!0):n instanceof yt&&(this.lastSuccessfulId=n.id,this.currentPageId=this.browserPageId)}setBrowserUrl(n,r){let o=n instanceof Be?this.urlSerializer.serialize(n):n;if(this.location.isCurrentPathEqualTo(o)||r.extras.replaceUrl){let i=this.browserPageId,s=g(g({},r.extras.state),this.generateNgRouterState(r.id,i));this.location.replaceState(o,"",s)}else{let i=g(g({},r.extras.state),this.generateNgRouterState(r.id,this.browserPageId+1));this.location.go(o,"",i)}}restoreHistory(n,r=!1){if(this.canceledNavigationResolution==="computed"){let o=this.browserPageId,i=this.currentPageId-o;i!==0?this.location.historyGo(i):this.currentUrlTree===n.finalUrl&&i===0&&(this.resetState(n),this.resetUrlToCurrentUrlTree())}else this.canceledNavigationResolution==="replace"&&(r&&this.resetState(n),this.resetUrlToCurrentUrlTree())}resetState(n){this.routerState=this.stateMemento.routerState,this.currentUrlTree=this.stateMemento.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,n.finalUrl??this.rawUrlTree)}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}generateNgRouterState(n,r){return this.canceledNavigationResolution==="computed"?{navigationId:n,\u0275routerPageId:r}:{navigationId:n}}static{this.\u0275fac=(()=>{let n;return function(o){return(n||(n=ys(e)))(o||e)}})()}static{this.\u0275prov=w({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})(),jn=function(e){return e[e.COMPLETE=0]="COMPLETE",e[e.FAILED=1]="FAILED",e[e.REDIRECTING=2]="REDIRECTING",e}(jn||{});function nD(e,t){e.events.pipe(Y(n=>n instanceof yt||n instanceof $e||n instanceof qn||n instanceof Dt),C(n=>n instanceof yt||n instanceof Dt?jn.COMPLETE:(n instanceof $e?n.code===oe.Redirect||n.code===oe.SupersededByNewNavigation:!1)?jn.REDIRECTING:jn.FAILED),Y(n=>n!==jn.REDIRECTING),G(1)).subscribe(()=>{t()})}function rD(e){throw e}var oD={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},iD={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"},sf=(()=>{class e{get currentUrlTree(){return this.stateManager.getCurrentUrlTree()}get rawUrlTree(){return this.stateManager.getRawUrlTree()}get events(){return this._events}get routerState(){return this.stateManager.getRouterState()}constructor(){this.disposed=!1,this.console=h(mo),this.stateManager=h(of),this.options=h(Ra,{optional:!0})||{},this.pendingTasks=h(Wt),this.urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred",this.navigationTransitions=h(Ky),this.urlSerializer=h(Ta),this.location=h(Rn),this.urlHandlingStrategy=h(Fa),this._events=new U,this.errorHandler=this.options.errorHandler||rD,this.navigated=!1,this.routeReuseStrategy=h(Xy),this.onSameUrlNavigation=this.options.onSameUrlNavigation||"ignore",this.config=h(Pa,{optional:!0})?.flat()??[],this.componentInputBindingEnabled=!!h(Aa,{optional:!0}),this.eventsSubscription=new $,this.resetConfig(this.config),this.navigationTransitions.setupNavigations(this,this.currentUrlTree,this.routerState).subscribe({error:n=>{this.console.warn(n)}}),this.subscribeToNavigationEvents()}subscribeToNavigationEvents(){let n=this.navigationTransitions.events.subscribe(r=>{try{let o=this.navigationTransitions.currentTransition,i=this.navigationTransitions.currentNavigation;if(o!==null&&i!==null){if(this.stateManager.handleRouterEvent(r,i),r instanceof $e&&r.code!==oe.Redirect&&r.code!==oe.SupersededByNewNavigation)this.navigated=!0;else if(r instanceof yt)this.navigated=!0;else if(r instanceof tn){let s=r.navigationBehaviorOptions,a=this.urlHandlingStrategy.merge(r.url,o.currentRawUrl),c=g({browserUrl:o.extras.browserUrl,info:o.extras.info,skipLocationChange:o.extras.skipLocationChange,replaceUrl:o.extras.replaceUrl||this.urlUpdateStrategy==="eager"||Jy(o.source)},s);this.scheduleNavigation(a,$n,null,c,{resolve:o.resolve,reject:o.reject,promise:o.promise})}}aD(r)&&this._events.next(r)}catch(o){this.navigationTransitions.transitionAbortSubject.next(o)}});this.eventsSubscription.add(n)}resetRootComponentType(n){this.routerState.root.component=n,this.navigationTransitions.rootComponentType=n}initialNavigation(){this.setUpLocationChangeListener(),this.navigationTransitions.hasRequestedNavigation||this.navigateToSyncWithBrowser(this.location.path(!0),$n,this.stateManager.restoredState())}setUpLocationChangeListener(){this.nonRouterCurrentEntryChangeSubscription??=this.stateManager.registerNonRouterCurrentEntryChangeListener((n,r)=>{setTimeout(()=>{this.navigateToSyncWithBrowser(n,"popstate",r)},0)})}navigateToSyncWithBrowser(n,r,o){let i={replaceUrl:!0},s=o?.navigationId?o:null;if(o){let c=g({},o);delete c.navigationId,delete c.\u0275routerPageId,Object.keys(c).length!==0&&(i.state=c)}let a=this.parseUrl(n);this.scheduleNavigation(a,r,s,i)}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.navigationTransitions.currentNavigation}get lastSuccessfulNavigation(){return this.navigationTransitions.lastSuccessfulNavigation}resetConfig(n){this.config=n.map(Oa),this.navigated=!1}ngOnDestroy(){this.dispose()}dispose(){this.navigationTransitions.complete(),this.nonRouterCurrentEntryChangeSubscription&&(this.nonRouterCurrentEntryChangeSubscription.unsubscribe(),this.nonRouterCurrentEntryChangeSubscription=void 0),this.disposed=!0,this.eventsSubscription.unsubscribe()}createUrlTree(n,r={}){let{relativeTo:o,queryParams:i,fragment:s,queryParamsHandling:a,preserveFragment:c}=r,u=c?this.currentUrlTree.fragment:s,l=null;switch(a??this.options.defaultQueryParamsHandling){case"merge":l=g(g({},this.currentUrlTree.queryParams),i);break;case"preserve":l=this.currentUrlTree.queryParams;break;default:l=i||null}l!==null&&(l=this.removeEmptyProps(l));let d;try{let p=o?o.snapshot:this.routerState.snapshot.root;d=Bd(p)}catch{(typeof n[0]!="string"||n[0][0]!=="/")&&(n=[]),d=this.currentUrlTree.root}return Ud(d,n,l,u??null)}navigateByUrl(n,r={skipLocationChange:!1}){let o=Hn(n)?n:this.parseUrl(n),i=this.urlHandlingStrategy.merge(o,this.rawUrlTree);return this.scheduleNavigation(i,$n,null,r)}navigate(n,r={skipLocationChange:!1}){return sD(n),this.navigateByUrl(this.createUrlTree(n,r),r)}serializeUrl(n){return this.urlSerializer.serialize(n)}parseUrl(n){try{return this.urlSerializer.parse(n)}catch{return this.urlSerializer.parse("/")}}isActive(n,r){let o;if(r===!0?o=g({},oD):r===!1?o=g({},iD):o=r,Hn(n))return bd(this.currentUrlTree,n,o);let i=this.parseUrl(n);return bd(this.currentUrlTree,i,o)}removeEmptyProps(n){return Object.entries(n).reduce((r,[o,i])=>(i!=null&&(r[o]=i),r),{})}scheduleNavigation(n,r,o,i,s){if(this.disposed)return Promise.resolve(!1);let a,c,u;s?(a=s.resolve,c=s.reject,u=s.promise):u=new Promise((d,p)=>{a=d,c=p});let l=this.pendingTasks.add();return nD(this,()=>{queueMicrotask(()=>this.pendingTasks.remove(l))}),this.navigationTransitions.handleNavigationRequest({source:r,restoredState:o,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,rawUrl:n,extras:i,resolve:a,reject:c,promise:u,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),u.catch(d=>Promise.reject(d))}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=w({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();function sD(e){for(let t=0;tn.\u0275providers)])}function uD(e){return e.routerState.root}function lD(){let e=h(Re);return t=>{let n=e.get(_e);if(t!==n.components[0])return;let r=e.get(sf),o=e.get(dD);e.get(fD)===1&&r.initialNavigation(),e.get(hD,null,S.Optional)?.setUpPreloading(),e.get(cD,null,S.Optional)?.init(),r.resetRootComponentType(n.componentTypes[0]),o.closed||(o.next(),o.complete(),o.unsubscribe())}}var dD=new E("",{factory:()=>new U}),fD=new E("",{providedIn:"root",factory:()=>1});var hD=new E("");var cf=[];var nr="Service workers are disabled or not supported by this browser";function pD(e){return it(()=>He(new Error(e)))}var sn=class{constructor(t){if(this.serviceWorker=t,!t)this.worker=this.events=this.registration=pD(nr);else{let r=xt(t,"controllerchange").pipe(C(()=>t.controller)),o=it(()=>y(t.controller)),i=Ce(o,r);this.worker=i.pipe(Y(l=>!!l)),this.registration=this.worker.pipe(Q(()=>t.getRegistration()));let u=xt(t,"message").pipe(C(l=>l.data)).pipe(Y(l=>l&&l.type)).pipe(fi());u.connect(),this.events=u}}postMessage(t,n){return this.worker.pipe(G(1),q(r=>{r.postMessage(g({action:t},n))})).toPromise().then(()=>{})}postMessageWithOperation(t,n,r){let o=this.waitForOperationCompleted(r),i=this.postMessage(t,n);return Promise.all([i,o]).then(([,s])=>s)}generateNonce(){return Math.round(Math.random()*1e7)}eventsOfType(t){let n;return typeof t=="string"?n=r=>r.type===t:n=r=>t.includes(r.type),this.events.pipe(Y(n))}nextEventOfType(t){return this.eventsOfType(t).pipe(G(1))}waitForOperationCompleted(t){return this.eventsOfType("OPERATION_COMPLETED").pipe(Y(n=>n.nonce===t),G(1),C(n=>{if(n.result!==void 0)return n.result;throw new Error(n.error)})).toPromise()}get isEnabled(){return!!this.serviceWorker}},gD=(()=>{class e{get isEnabled(){return this.sw.isEnabled}constructor(n){if(this.sw=n,this.pushManager=null,this.subscriptionChanges=new U,!n.isEnabled){this.messages=st,this.notificationClicks=st,this.subscription=st;return}this.messages=this.sw.eventsOfType("PUSH").pipe(C(o=>o.data)),this.notificationClicks=this.sw.eventsOfType("NOTIFICATION_CLICK").pipe(C(o=>o.data)),this.pushManager=this.sw.registration.pipe(C(o=>o.pushManager));let r=this.pushManager.pipe(Q(o=>o.getSubscription()));this.subscription=_r(r,this.subscriptionChanges)}requestSubscription(n){if(!this.sw.isEnabled||this.pushManager===null)return Promise.reject(new Error(nr));let r={userVisibleOnly:!0},o=this.decodeBase64(n.serverPublicKey.replace(/_/g,"/").replace(/-/g,"+")),i=new Uint8Array(new ArrayBuffer(o.length));for(let s=0;ss.subscribe(r)),G(1)).toPromise().then(s=>(this.subscriptionChanges.next(s),s))}unsubscribe(){if(!this.sw.isEnabled)return Promise.reject(new Error(nr));let n=r=>{if(r===null)throw new Error("Not subscribed to push notifications.");return r.unsubscribe().then(o=>{if(!o)throw new Error("Unsubscribe failed!");this.subscriptionChanges.next(null)})};return this.subscription.pipe(G(1),Q(n)).toPromise()}decodeBase64(n){return atob(n)}static{this.\u0275fac=function(r){return new(r||e)(_(sn))}}static{this.\u0275prov=w({token:e,factory:e.\u0275fac})}}return e})(),mD=(()=>{class e{get isEnabled(){return this.sw.isEnabled}constructor(n){if(this.sw=n,!n.isEnabled){this.versionUpdates=st,this.unrecoverable=st;return}this.versionUpdates=this.sw.eventsOfType(["VERSION_DETECTED","VERSION_INSTALLATION_FAILED","VERSION_READY","NO_NEW_VERSION_DETECTED"]),this.unrecoverable=this.sw.eventsOfType("UNRECOVERABLE_STATE")}checkForUpdate(){if(!this.sw.isEnabled)return Promise.reject(new Error(nr));let n=this.sw.generateNonce();return this.sw.postMessageWithOperation("CHECK_FOR_UPDATES",{nonce:n},n)}activateUpdate(){if(!this.sw.isEnabled)return Promise.reject(new Error(nr));let n=this.sw.generateNonce();return this.sw.postMessageWithOperation("ACTIVATE_UPDATE",{nonce:n},n)}static{this.\u0275fac=function(r){return new(r||e)(_(sn))}}static{this.\u0275prov=w({token:e,factory:e.\u0275fac})}}return e})();var uf=new E("");function vD(e,t,n,r){return()=>{if(!(Us(r)&&"serviceWorker"in navigator&&n.enabled!==!1))return;let o=e.get(B),i=e.get(_e);o.runOutsideAngular(()=>{let a=navigator.serviceWorker,c=()=>a.controller?.postMessage({action:"INITIALIZE"});a.addEventListener("controllerchange",c),i.onDestroy(()=>{a.removeEventListener("controllerchange",c)})});let s;if(typeof n.registrationStrategy=="function")s=n.registrationStrategy();else{let[a,...c]=(n.registrationStrategy||"registerWhenStable:30000").split(":");switch(a){case"registerImmediately":s=y(null);break;case"registerWithDelay":s=lf(+c[0]||0);break;case"registerWhenStable":let u=L(e.get(_e).whenStable());s=c[0]?_r(u,lf(+c[0])):u;break;default:throw new Error(`Unknown ServiceWorker registration strategy: ${n.registrationStrategy}`)}}o.runOutsideAngular(()=>s.pipe(G(1)).subscribe(()=>navigator.serviceWorker.register(t,{scope:n.scope}).catch(a=>console.error("Service worker registration failed with:",a))))}}function lf(e){return y(null).pipe(li(e))}function yD(e,t){return new sn(Us(t)&&e.enabled!==!1?navigator.serviceWorker:void 0)}var tr=class{};function df(e,t={}){return qt([gD,mD,{provide:uf,useValue:e},{provide:tr,useValue:t},{provide:sn,useFactory:yD,deps:[tr,Ve]},{provide:vo,useFactory:vD,deps:[Re,uf,tr,Ve],multi:!0}])}var ff={providers:[td({eventCoalescing:!0}),af(cf),df("ngsw-worker.js",{enabled:!rd(),registrationStrategy:"registerWhenStable:30000"})]};var Vo=class e{title="app";static \u0275fac=function(n){return new(n||e)};static \u0275cmp=no({type:e,selectors:[["app-root"]],standalone:!0,features:[go],decls:5,vars:0,template:function(n,r){n&1&&(Mn(0,"h1"),Fs(1,"Blur"),_n(),Mn(2,"p"),Fs(3,"Drag any photo to this window."),_n(),Tn(4,"router-outlet"))},dependencies:[Na]})};Id(Vo,ff).catch(e=>console.error(e)); diff --git a/manifest.webmanifest b/manifest.webmanifest new file mode 100644 index 0000000..92c87f8 --- /dev/null +++ b/manifest.webmanifest @@ -0,0 +1,59 @@ +{ + "name": "app", + "short_name": "app", + "theme_color": "#1976d2", + "background_color": "#fafafa", + "display": "standalone", + "scope": "./", + "start_url": "./", + "icons": [ + { + "src": "icons/icon-72x72.png", + "sizes": "72x72", + "type": "image/png", + "purpose": "maskable any" + }, + { + "src": "icons/icon-96x96.png", + "sizes": "96x96", + "type": "image/png", + "purpose": "maskable any" + }, + { + "src": "icons/icon-128x128.png", + "sizes": "128x128", + "type": "image/png", + "purpose": "maskable any" + }, + { + "src": "icons/icon-144x144.png", + "sizes": "144x144", + "type": "image/png", + "purpose": "maskable any" + }, + { + "src": "icons/icon-152x152.png", + "sizes": "152x152", + "type": "image/png", + "purpose": "maskable any" + }, + { + "src": "icons/icon-192x192.png", + "sizes": "192x192", + "type": "image/png", + "purpose": "maskable any" + }, + { + "src": "icons/icon-384x384.png", + "sizes": "384x384", + "type": "image/png", + "purpose": "maskable any" + }, + { + "src": "icons/icon-512x512.png", + "sizes": "512x512", + "type": "image/png", + "purpose": "maskable any" + } + ] +} diff --git a/ngsw-worker.js b/ngsw-worker.js new file mode 100644 index 0000000..f569afc --- /dev/null +++ b/ngsw-worker.js @@ -0,0 +1,1863 @@ +(() => { + var __defProp = Object.defineProperty; + var __defProps = Object.defineProperties; + var __getOwnPropDescs = Object.getOwnPropertyDescriptors; + var __getOwnPropSymbols = Object.getOwnPropertySymbols; + var __hasOwnProp = Object.prototype.hasOwnProperty; + var __propIsEnum = Object.prototype.propertyIsEnumerable; + var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; + var __spreadValues = (a, b) => { + for (var prop in b || (b = {})) + if (__hasOwnProp.call(b, prop)) + __defNormalProp(a, prop, b[prop]); + if (__getOwnPropSymbols) + for (var prop of __getOwnPropSymbols(b)) { + if (__propIsEnum.call(b, prop)) + __defNormalProp(a, prop, b[prop]); + } + return a; + }; + var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b)); + + // bazel-out/k8-fastbuild-ST-2e5f3376adb5/bin/packages/service-worker/worker/src/named-cache-storage.mjs + var NamedCacheStorage = class { + constructor(original, cacheNamePrefix) { + this.original = original; + this.cacheNamePrefix = cacheNamePrefix; + } + delete(cacheName) { + return this.original.delete(`${this.cacheNamePrefix}:${cacheName}`); + } + has(cacheName) { + return this.original.has(`${this.cacheNamePrefix}:${cacheName}`); + } + async keys() { + const prefix = `${this.cacheNamePrefix}:`; + const allCacheNames = await this.original.keys(); + const ownCacheNames = allCacheNames.filter((name) => name.startsWith(prefix)); + return ownCacheNames.map((name) => name.slice(prefix.length)); + } + match(request, options) { + return this.original.match(request, options); + } + async open(cacheName) { + const cache = await this.original.open(`${this.cacheNamePrefix}:${cacheName}`); + return Object.assign(cache, { name: cacheName }); + } + }; + + // bazel-out/k8-fastbuild-ST-2e5f3376adb5/bin/packages/service-worker/worker/src/adapter.mjs + var Adapter = class { + constructor(scopeUrl, caches) { + this.scopeUrl = scopeUrl; + const parsedScopeUrl = this.parseUrl(this.scopeUrl); + this.origin = parsedScopeUrl.origin; + this.caches = new NamedCacheStorage(caches, `ngsw:${parsedScopeUrl.path}`); + } + newRequest(input, init) { + return new Request(input, init); + } + newResponse(body, init) { + return new Response(body, init); + } + newHeaders(headers) { + return new Headers(headers); + } + isClient(source) { + return source instanceof Client; + } + get time() { + return Date.now(); + } + normalizeUrl(url) { + const parsed = this.parseUrl(url, this.scopeUrl); + return parsed.origin === this.origin ? parsed.path : url; + } + parseUrl(url, relativeTo) { + const parsed = !relativeTo ? new URL(url) : new URL(url, relativeTo); + return { origin: parsed.origin, path: parsed.pathname, search: parsed.search }; + } + timeout(ms) { + return new Promise((resolve) => { + setTimeout(() => resolve(), ms); + }); + } + }; + + // bazel-out/k8-fastbuild-ST-2e5f3376adb5/bin/packages/service-worker/worker/src/database.mjs + var NotFound = class { + constructor(table, key) { + this.table = table; + this.key = key; + } + }; + + // bazel-out/k8-fastbuild-ST-2e5f3376adb5/bin/packages/service-worker/worker/src/db-cache.mjs + var CacheDatabase = class { + constructor(adapter2) { + this.adapter = adapter2; + this.cacheNamePrefix = "db"; + this.tables = /* @__PURE__ */ new Map(); + } + "delete"(name) { + if (this.tables.has(name)) { + this.tables.delete(name); + } + return this.adapter.caches.delete(`${this.cacheNamePrefix}:${name}`); + } + async list() { + const prefix = `${this.cacheNamePrefix}:`; + const allCacheNames = await this.adapter.caches.keys(); + const dbCacheNames = allCacheNames.filter((name) => name.startsWith(prefix)); + return dbCacheNames.map((name) => name.slice(prefix.length)); + } + async open(name, cacheQueryOptions) { + if (!this.tables.has(name)) { + const cache = await this.adapter.caches.open(`${this.cacheNamePrefix}:${name}`); + const table = new CacheTable(name, cache, this.adapter, cacheQueryOptions); + this.tables.set(name, table); + } + return this.tables.get(name); + } + }; + var CacheTable = class { + constructor(name, cache, adapter2, cacheQueryOptions) { + this.name = name; + this.cache = cache; + this.adapter = adapter2; + this.cacheQueryOptions = cacheQueryOptions; + this.cacheName = this.cache.name; + } + request(key) { + return this.adapter.newRequest("/" + key); + } + "delete"(key) { + return this.cache.delete(this.request(key), this.cacheQueryOptions); + } + keys() { + return this.cache.keys().then((requests) => requests.map((req) => req.url.slice(1))); + } + read(key) { + return this.cache.match(this.request(key), this.cacheQueryOptions).then((res) => { + if (res === void 0) { + return Promise.reject(new NotFound(this.name, key)); + } + return res.json(); + }); + } + write(key, value) { + return this.cache.put(this.request(key), this.adapter.newResponse(JSON.stringify(value))); + } + }; + + // bazel-out/k8-fastbuild-ST-2e5f3376adb5/bin/packages/service-worker/worker/src/api.mjs + var UpdateCacheStatus; + (function(UpdateCacheStatus2) { + UpdateCacheStatus2[UpdateCacheStatus2["NOT_CACHED"] = 0] = "NOT_CACHED"; + UpdateCacheStatus2[UpdateCacheStatus2["CACHED_BUT_UNUSED"] = 1] = "CACHED_BUT_UNUSED"; + UpdateCacheStatus2[UpdateCacheStatus2["CACHED"] = 2] = "CACHED"; + })(UpdateCacheStatus || (UpdateCacheStatus = {})); + + // bazel-out/k8-fastbuild-ST-2e5f3376adb5/bin/packages/service-worker/worker/src/error.mjs + var SwCriticalError = class extends Error { + constructor() { + super(...arguments); + this.isCritical = true; + } + }; + function errorToString(error) { + if (error instanceof Error) { + return `${error.message} +${error.stack}`; + } else { + return `${error}`; + } + } + var SwUnrecoverableStateError = class extends SwCriticalError { + constructor() { + super(...arguments); + this.isUnrecoverableState = true; + } + }; + + // bazel-out/k8-fastbuild-ST-2e5f3376adb5/bin/packages/service-worker/worker/src/sha1.mjs + function sha1(str) { + const utf8 = str; + const words32 = stringToWords32(utf8, Endian.Big); + return _sha1(words32, utf8.length * 8); + } + function sha1Binary(buffer) { + const words32 = arrayBufferToWords32(buffer, Endian.Big); + return _sha1(words32, buffer.byteLength * 8); + } + function _sha1(words32, len) { + const w = []; + let [a, b, c, d, e] = [1732584193, 4023233417, 2562383102, 271733878, 3285377520]; + words32[len >> 5] |= 128 << 24 - len % 32; + words32[(len + 64 >> 9 << 4) + 15] = len; + for (let i = 0; i < words32.length; i += 16) { + const [h0, h1, h2, h3, h4] = [a, b, c, d, e]; + for (let j = 0; j < 80; j++) { + if (j < 16) { + w[j] = words32[i + j]; + } else { + w[j] = rol32(w[j - 3] ^ w[j - 8] ^ w[j - 14] ^ w[j - 16], 1); + } + const [f, k] = fk(j, b, c, d); + const temp = [rol32(a, 5), f, e, k, w[j]].reduce(add32); + [e, d, c, b, a] = [d, c, rol32(b, 30), a, temp]; + } + [a, b, c, d, e] = [add32(a, h0), add32(b, h1), add32(c, h2), add32(d, h3), add32(e, h4)]; + } + return byteStringToHexString(words32ToByteString([a, b, c, d, e])); + } + function add32(a, b) { + return add32to64(a, b)[1]; + } + function add32to64(a, b) { + const low = (a & 65535) + (b & 65535); + const high = (a >>> 16) + (b >>> 16) + (low >>> 16); + return [high >>> 16, high << 16 | low & 65535]; + } + function rol32(a, count) { + return a << count | a >>> 32 - count; + } + var Endian; + (function(Endian2) { + Endian2[Endian2["Little"] = 0] = "Little"; + Endian2[Endian2["Big"] = 1] = "Big"; + })(Endian || (Endian = {})); + function fk(index, b, c, d) { + if (index < 20) { + return [b & c | ~b & d, 1518500249]; + } + if (index < 40) { + return [b ^ c ^ d, 1859775393]; + } + if (index < 60) { + return [b & c | b & d | c & d, 2400959708]; + } + return [b ^ c ^ d, 3395469782]; + } + function stringToWords32(str, endian) { + const size = str.length + 3 >>> 2; + const words32 = []; + for (let i = 0; i < size; i++) { + words32[i] = wordAt(str, i * 4, endian); + } + return words32; + } + function arrayBufferToWords32(buffer, endian) { + const size = buffer.byteLength + 3 >>> 2; + const words32 = []; + const view = new Uint8Array(buffer); + for (let i = 0; i < size; i++) { + words32[i] = wordAt(view, i * 4, endian); + } + return words32; + } + function byteAt(str, index) { + if (typeof str === "string") { + return index >= str.length ? 0 : str.charCodeAt(index) & 255; + } else { + return index >= str.byteLength ? 0 : str[index] & 255; + } + } + function wordAt(str, index, endian) { + let word = 0; + if (endian === Endian.Big) { + for (let i = 0; i < 4; i++) { + word += byteAt(str, index + i) << 24 - 8 * i; + } + } else { + for (let i = 0; i < 4; i++) { + word += byteAt(str, index + i) << 8 * i; + } + } + return word; + } + function words32ToByteString(words32) { + return words32.reduce((str, word) => str + word32ToByteString(word), ""); + } + function word32ToByteString(word) { + let str = ""; + for (let i = 0; i < 4; i++) { + str += String.fromCharCode(word >>> 8 * (3 - i) & 255); + } + return str; + } + function byteStringToHexString(str) { + let hex = ""; + for (let i = 0; i < str.length; i++) { + const b = byteAt(str, i); + hex += (b >>> 4).toString(16) + (b & 15).toString(16); + } + return hex.toLowerCase(); + } + + // bazel-out/k8-fastbuild-ST-2e5f3376adb5/bin/packages/service-worker/worker/src/assets.mjs + var AssetGroup = class { + constructor(scope2, adapter2, idle, config, hashes, db, cacheNamePrefix) { + this.scope = scope2; + this.adapter = adapter2; + this.idle = idle; + this.config = config; + this.hashes = hashes; + this.db = db; + this.inFlightRequests = /* @__PURE__ */ new Map(); + this.urls = []; + this.patterns = []; + this.name = config.name; + this.urls = config.urls.map((url) => adapter2.normalizeUrl(url)); + this.patterns = config.patterns.map((pattern) => new RegExp(pattern)); + this.cache = adapter2.caches.open(`${cacheNamePrefix}:${config.name}:cache`); + this.metadata = this.db.open(`${cacheNamePrefix}:${config.name}:meta`, config.cacheQueryOptions); + } + async cacheStatus(url) { + const cache = await this.cache; + const meta = await this.metadata; + const req = this.adapter.newRequest(url); + const res = await cache.match(req, this.config.cacheQueryOptions); + if (res === void 0) { + return UpdateCacheStatus.NOT_CACHED; + } + try { + const data = await meta.read(req.url); + if (!data.used) { + return UpdateCacheStatus.CACHED_BUT_UNUSED; + } + } catch (_) { + } + return UpdateCacheStatus.CACHED; + } + async getCacheNames() { + const [cache, metadata] = await Promise.all([this.cache, this.metadata]); + return [cache.name, metadata.cacheName]; + } + async handleFetch(req, _event) { + const url = this.adapter.normalizeUrl(req.url); + if (this.urls.indexOf(url) !== -1 || this.patterns.some((pattern) => pattern.test(url))) { + const cache = await this.cache; + let cachedResponse; + try { + cachedResponse = await cache.match(req, this.config.cacheQueryOptions); + } catch (error) { + throw new SwCriticalError(`Cache is throwing while looking for a match: ${error}`); + } + if (cachedResponse !== void 0) { + if (this.hashes.has(url)) { + return cachedResponse; + } else { + if (await this.needToRevalidate(req, cachedResponse)) { + this.idle.schedule(`revalidate(${cache.name}): ${req.url}`, async () => { + await this.fetchAndCacheOnce(req); + }); + } + return cachedResponse; + } + } + const res = await this.fetchAndCacheOnce(this.newRequestWithMetadata(req.url, req)); + return res.clone(); + } else { + return null; + } + } + async needToRevalidate(req, res) { + if (res.headers.has("Cache-Control")) { + const cacheControl = res.headers.get("Cache-Control"); + const cacheDirectives = cacheControl.split(",").map((v) => v.trim()).map((v) => v.split("=")); + cacheDirectives.forEach((v) => v[0] = v[0].toLowerCase()); + const maxAgeDirective = cacheDirectives.find((v) => v[0] === "max-age"); + const cacheAge = maxAgeDirective ? maxAgeDirective[1] : void 0; + if (!cacheAge) { + return true; + } + try { + const maxAge = 1e3 * parseInt(cacheAge); + let ts; + try { + const metaTable = await this.metadata; + ts = (await metaTable.read(req.url)).ts; + } catch (e) { + const date = res.headers.get("Date"); + if (date === null) { + return true; + } + ts = Date.parse(date); + } + const age = this.adapter.time - ts; + return age < 0 || age > maxAge; + } catch (e) { + return true; + } + } else if (res.headers.has("Expires")) { + const expiresStr = res.headers.get("Expires"); + try { + return this.adapter.time > Date.parse(expiresStr); + } catch (e) { + return true; + } + } else { + return true; + } + } + async fetchFromCacheOnly(url) { + const cache = await this.cache; + const metaTable = await this.metadata; + const request = this.adapter.newRequest(url); + const response = await cache.match(request, this.config.cacheQueryOptions); + if (response === void 0) { + return null; + } + let metadata = void 0; + try { + metadata = await metaTable.read(request.url); + } catch (e) { + } + return { response, metadata }; + } + async unhashedResources() { + const cache = await this.cache; + return (await cache.keys()).map((request) => this.adapter.normalizeUrl(request.url)).filter((url) => !this.hashes.has(url)); + } + async fetchAndCacheOnce(req, used = true) { + if (this.inFlightRequests.has(req.url)) { + return this.inFlightRequests.get(req.url); + } + const fetchOp = this.fetchFromNetwork(req); + this.inFlightRequests.set(req.url, fetchOp); + try { + const res = await fetchOp; + if (!res.ok) { + throw new Error(`Response not Ok (fetchAndCacheOnce): request for ${req.url} returned response ${res.status} ${res.statusText}`); + } + try { + const cache = await this.cache; + await cache.put(req, res.clone()); + if (!this.hashes.has(this.adapter.normalizeUrl(req.url))) { + const meta = { ts: this.adapter.time, used }; + const metaTable = await this.metadata; + await metaTable.write(req.url, meta); + } + return res; + } catch (err) { + throw new SwCriticalError(`Failed to update the caches for request to '${req.url}' (fetchAndCacheOnce): ${errorToString(err)}`); + } + } finally { + this.inFlightRequests.delete(req.url); + } + } + async fetchFromNetwork(req, redirectLimit = 3) { + const res = await this.cacheBustedFetchFromNetwork(req); + if (res["redirected"] && !!res.url) { + if (redirectLimit === 0) { + throw new SwCriticalError(`Response hit redirect limit (fetchFromNetwork): request redirected too many times, next is ${res.url}`); + } + return this.fetchFromNetwork(this.newRequestWithMetadata(res.url, req), redirectLimit - 1); + } + return res; + } + async cacheBustedFetchFromNetwork(req) { + const url = this.adapter.normalizeUrl(req.url); + if (this.hashes.has(url)) { + const canonicalHash = this.hashes.get(url); + let response = await this.safeFetch(req); + let makeCacheBustedRequest = response.ok; + if (makeCacheBustedRequest) { + const fetchedHash = sha1Binary(await response.clone().arrayBuffer()); + makeCacheBustedRequest = fetchedHash !== canonicalHash; + } + if (makeCacheBustedRequest) { + const cacheBustReq = this.newRequestWithMetadata(this.cacheBust(req.url), req); + response = await this.safeFetch(cacheBustReq); + if (response.ok) { + const cacheBustedHash = sha1Binary(await response.clone().arrayBuffer()); + if (canonicalHash !== cacheBustedHash) { + throw new SwCriticalError(`Hash mismatch (cacheBustedFetchFromNetwork): ${req.url}: expected ${canonicalHash}, got ${cacheBustedHash} (after cache busting)`); + } + } + } + if (!response.ok && response.status === 404) { + throw new SwUnrecoverableStateError(`Failed to retrieve hashed resource from the server. (AssetGroup: ${this.config.name} | URL: ${url})`); + } + return response; + } else { + return this.safeFetch(req); + } + } + async maybeUpdate(updateFrom, req, cache) { + const url = this.adapter.normalizeUrl(req.url); + if (this.hashes.has(url)) { + const hash = this.hashes.get(url); + const res = await updateFrom.lookupResourceWithHash(url, hash); + if (res !== null) { + await cache.put(req, res); + return true; + } + } + return false; + } + newRequestWithMetadata(url, options) { + return this.adapter.newRequest(url, { headers: options.headers }); + } + cacheBust(url) { + return url + (url.indexOf("?") === -1 ? "?" : "&") + "ngsw-cache-bust=" + Math.random(); + } + async safeFetch(req) { + try { + return await this.scope.fetch(req); + } catch (e) { + return this.adapter.newResponse("", { + status: 504, + statusText: "Gateway Timeout" + }); + } + } + }; + var PrefetchAssetGroup = class extends AssetGroup { + async initializeFully(updateFrom) { + const cache = await this.cache; + await this.urls.reduce(async (previous, url) => { + await previous; + const req = this.adapter.newRequest(url); + let alreadyCached = false; + try { + alreadyCached = await cache.match(req, this.config.cacheQueryOptions) !== void 0; + } catch (error) { + throw new SwCriticalError(`Cache is throwing while looking for a match in a PrefetchAssetGroup: ${error}`); + } + if (alreadyCached) { + return; + } + if (updateFrom !== void 0 && await this.maybeUpdate(updateFrom, req, cache)) { + return; + } + await this.fetchAndCacheOnce(req, false); + }, Promise.resolve()); + if (updateFrom !== void 0) { + const metaTable = await this.metadata; + await (await updateFrom.previouslyCachedResources()).filter((url) => this.urls.indexOf(url) !== -1 || this.patterns.some((pattern) => pattern.test(url))).reduce(async (previous, url) => { + await previous; + const req = this.adapter.newRequest(url); + const alreadyCached = await cache.match(req, this.config.cacheQueryOptions) !== void 0; + if (alreadyCached) { + return; + } + const res = await updateFrom.lookupResourceWithoutHash(url); + if (res === null || res.metadata === void 0) { + return; + } + await cache.put(req, res.response); + await metaTable.write(req.url, __spreadProps(__spreadValues({}, res.metadata), { used: false })); + }, Promise.resolve()); + } + } + }; + var LazyAssetGroup = class extends AssetGroup { + async initializeFully(updateFrom) { + if (updateFrom === void 0) { + return; + } + const cache = await this.cache; + await this.urls.reduce(async (previous, url) => { + await previous; + const req = this.adapter.newRequest(url); + let alreadyCached = false; + try { + alreadyCached = await cache.match(req, this.config.cacheQueryOptions) !== void 0; + } catch (error) { + throw new SwCriticalError(`Cache is throwing while looking for a match in a LazyAssetGroup: ${error}`); + } + if (alreadyCached) { + return; + } + const updated = await this.maybeUpdate(updateFrom, req, cache); + if (this.config.updateMode === "prefetch" && !updated) { + const cacheStatus = await updateFrom.recentCacheStatus(url); + if (cacheStatus !== UpdateCacheStatus.CACHED) { + return; + } + await this.fetchAndCacheOnce(req, false); + } + }, Promise.resolve()); + } + }; + + // bazel-out/k8-fastbuild-ST-2e5f3376adb5/bin/packages/service-worker/worker/src/data.mjs + var LruList = class { + constructor(state) { + if (state === void 0) { + state = { + head: null, + tail: null, + map: {}, + count: 0 + }; + } + this.state = state; + } + get size() { + return this.state.count; + } + pop() { + if (this.state.tail === null) { + return null; + } + const url = this.state.tail; + this.remove(url); + return url; + } + remove(url) { + const node = this.state.map[url]; + if (node === void 0) { + return false; + } + if (this.state.head === url) { + if (node.next === null) { + this.state.head = null; + this.state.tail = null; + this.state.map = {}; + this.state.count = 0; + return true; + } + const next = this.state.map[node.next]; + next.previous = null; + this.state.head = next.url; + node.next = null; + delete this.state.map[url]; + this.state.count--; + return true; + } + const previous = this.state.map[node.previous]; + previous.next = node.next; + if (node.next !== null) { + this.state.map[node.next].previous = node.previous; + } else { + this.state.tail = node.previous; + } + node.next = null; + node.previous = null; + delete this.state.map[url]; + this.state.count--; + return true; + } + accessed(url) { + if (this.state.head === url) { + return; + } + const node = this.state.map[url] || { url, next: null, previous: null }; + if (this.state.map[url] !== void 0) { + this.remove(url); + } + if (this.state.head !== null) { + this.state.map[this.state.head].previous = url; + } + node.next = this.state.head; + this.state.head = url; + if (this.state.tail === null) { + this.state.tail = url; + } + this.state.map[url] = node; + this.state.count++; + } + }; + var DataGroup = class { + constructor(scope2, adapter2, config, db, debugHandler, cacheNamePrefix) { + this.scope = scope2; + this.adapter = adapter2; + this.config = config; + this.db = db; + this.debugHandler = debugHandler; + this._lru = null; + this.patterns = config.patterns.map((pattern) => new RegExp(pattern)); + this.cache = adapter2.caches.open(`${cacheNamePrefix}:${config.name}:cache`); + this.lruTable = this.db.open(`${cacheNamePrefix}:${config.name}:lru`, config.cacheQueryOptions); + this.ageTable = this.db.open(`${cacheNamePrefix}:${config.name}:age`, config.cacheQueryOptions); + } + async lru() { + if (this._lru === null) { + const table = await this.lruTable; + try { + this._lru = new LruList(await table.read("lru")); + } catch (e) { + this._lru = new LruList(); + } + } + return this._lru; + } + async syncLru() { + if (this._lru === null) { + return; + } + const table = await this.lruTable; + try { + return table.write("lru", this._lru.state); + } catch (err) { + this.debugHandler.log(err, `DataGroup(${this.config.name}@${this.config.version}).syncLru()`); + } + } + async handleFetch(req, event) { + if (!this.patterns.some((pattern) => pattern.test(req.url))) { + return null; + } + const lru = await this.lru(); + switch (req.method) { + case "OPTIONS": + return null; + case "GET": + case "HEAD": + switch (this.config.strategy) { + case "freshness": + return this.handleFetchWithFreshness(req, event, lru); + case "performance": + return this.handleFetchWithPerformance(req, event, lru); + default: + throw new Error(`Unknown strategy: ${this.config.strategy}`); + } + default: + const wasCached = lru.remove(req.url); + if (wasCached) { + await this.clearCacheForUrl(req.url); + } + await this.syncLru(); + return this.safeFetch(req); + } + } + async handleFetchWithPerformance(req, event, lru) { + var _a; + const okToCacheOpaque = (_a = this.config.cacheOpaqueResponses) != null ? _a : false; + let res = null; + const fromCache = await this.loadFromCache(req, lru); + if (fromCache !== null) { + res = fromCache.res; + if (this.config.refreshAheadMs !== void 0 && fromCache.age >= this.config.refreshAheadMs) { + event.waitUntil(this.safeCacheResponse(req, this.safeFetch(req), lru, okToCacheOpaque)); + } + } + if (res !== null) { + return res; + } + const [timeoutFetch, networkFetch] = this.networkFetchWithTimeout(req); + res = await timeoutFetch; + if (res === void 0) { + res = this.adapter.newResponse(null, { status: 504, statusText: "Gateway Timeout" }); + event.waitUntil(this.safeCacheResponse(req, networkFetch, lru, okToCacheOpaque)); + } else { + await this.safeCacheResponse(req, res, lru, okToCacheOpaque); + } + return res; + } + async handleFetchWithFreshness(req, event, lru) { + var _a; + const okToCacheOpaque = (_a = this.config.cacheOpaqueResponses) != null ? _a : true; + const [timeoutFetch, networkFetch] = this.networkFetchWithTimeout(req); + let res; + try { + res = await timeoutFetch; + } catch (e) { + res = void 0; + } + if (res === void 0) { + event.waitUntil(this.safeCacheResponse(req, networkFetch, lru, okToCacheOpaque)); + const fromCache = await this.loadFromCache(req, lru); + res = fromCache !== null ? fromCache.res : null; + } else { + await this.safeCacheResponse(req, res, lru, okToCacheOpaque); + } + if (res !== null) { + return res; + } + return networkFetch; + } + networkFetchWithTimeout(req) { + if (this.config.timeoutMs !== void 0) { + const networkFetch = this.scope.fetch(req); + const safeNetworkFetch = (async () => { + try { + return await networkFetch; + } catch (e) { + return this.adapter.newResponse(null, { + status: 504, + statusText: "Gateway Timeout" + }); + } + })(); + const networkFetchUndefinedError = (async () => { + try { + return await networkFetch; + } catch (e) { + return void 0; + } + })(); + const timeout = this.adapter.timeout(this.config.timeoutMs); + return [Promise.race([networkFetchUndefinedError, timeout]), safeNetworkFetch]; + } else { + const networkFetch = this.safeFetch(req); + return [networkFetch, networkFetch]; + } + } + async safeCacheResponse(req, resOrPromise, lru, okToCacheOpaque) { + try { + const res = await resOrPromise; + try { + await this.cacheResponse(req, res, lru, okToCacheOpaque); + } catch (err) { + this.debugHandler.log(err, `DataGroup(${this.config.name}@${this.config.version}).safeCacheResponse(${req.url}, status: ${res.status})`); + } + } catch (e) { + } + } + async loadFromCache(req, lru) { + const cache = await this.cache; + let res = await cache.match(req, this.config.cacheQueryOptions); + if (res !== void 0) { + try { + const ageTable = await this.ageTable; + const age = this.adapter.time - (await ageTable.read(req.url)).age; + if (age <= this.config.maxAge) { + lru.accessed(req.url); + return { res, age }; + } + } catch (e) { + } + lru.remove(req.url); + await this.clearCacheForUrl(req.url); + await this.syncLru(); + } + return null; + } + async cacheResponse(req, res, lru, okToCacheOpaque = false) { + if (!(res.ok || okToCacheOpaque && res.type === "opaque")) { + return; + } + if (lru.size >= this.config.maxSize) { + const evictedUrl = lru.pop(); + if (evictedUrl !== null) { + await this.clearCacheForUrl(evictedUrl); + } + } + lru.accessed(req.url); + await (await this.cache).put(req, res.clone()); + const ageTable = await this.ageTable; + await ageTable.write(req.url, { age: this.adapter.time }); + await this.syncLru(); + } + async cleanup() { + await Promise.all([ + this.cache.then((cache) => this.adapter.caches.delete(cache.name)), + this.ageTable.then((table) => this.db.delete(table.name)), + this.lruTable.then((table) => this.db.delete(table.name)) + ]); + } + async getCacheNames() { + const [cache, ageTable, lruTable] = await Promise.all([ + this.cache, + this.ageTable, + this.lruTable + ]); + return [cache.name, ageTable.cacheName, lruTable.cacheName]; + } + async clearCacheForUrl(url) { + const [cache, ageTable] = await Promise.all([this.cache, this.ageTable]); + await Promise.all([ + cache.delete(this.adapter.newRequest(url, { method: "GET" }), this.config.cacheQueryOptions), + cache.delete(this.adapter.newRequest(url, { method: "HEAD" }), this.config.cacheQueryOptions), + ageTable.delete(url) + ]); + } + async safeFetch(req) { + try { + return this.scope.fetch(req); + } catch (e) { + return this.adapter.newResponse(null, { + status: 504, + statusText: "Gateway Timeout" + }); + } + } + }; + + // bazel-out/k8-fastbuild-ST-2e5f3376adb5/bin/packages/service-worker/worker/src/app-version.mjs + var BACKWARDS_COMPATIBILITY_NAVIGATION_URLS = [ + { positive: true, regex: "^/.*$" }, + { positive: false, regex: "^/.*\\.[^/]*$" }, + { positive: false, regex: "^/.*__" } + ]; + var AppVersion = class { + get okay() { + return this._okay; + } + constructor(scope2, adapter2, database, idle, debugHandler, manifest, manifestHash) { + this.scope = scope2; + this.adapter = adapter2; + this.database = database; + this.debugHandler = debugHandler; + this.manifest = manifest; + this.manifestHash = manifestHash; + this.hashTable = /* @__PURE__ */ new Map(); + this._okay = true; + this.indexUrl = this.adapter.normalizeUrl(this.manifest.index); + Object.keys(manifest.hashTable).forEach((url) => { + this.hashTable.set(adapter2.normalizeUrl(url), manifest.hashTable[url]); + }); + const assetCacheNamePrefix = `${manifestHash}:assets`; + this.assetGroups = (manifest.assetGroups || []).map((config) => { + switch (config.installMode) { + case "prefetch": + return new PrefetchAssetGroup(scope2, adapter2, idle, config, this.hashTable, database, assetCacheNamePrefix); + case "lazy": + return new LazyAssetGroup(scope2, adapter2, idle, config, this.hashTable, database, assetCacheNamePrefix); + } + }); + this.dataGroups = (manifest.dataGroups || []).map((config) => new DataGroup(scope2, adapter2, config, database, debugHandler, `${config.version}:data`)); + manifest.navigationUrls = manifest.navigationUrls || BACKWARDS_COMPATIBILITY_NAVIGATION_URLS; + const includeUrls = manifest.navigationUrls.filter((spec) => spec.positive); + const excludeUrls = manifest.navigationUrls.filter((spec) => !spec.positive); + this.navigationUrls = { + include: includeUrls.map((spec) => new RegExp(spec.regex)), + exclude: excludeUrls.map((spec) => new RegExp(spec.regex)) + }; + } + async initializeFully(updateFrom) { + try { + await this.assetGroups.reduce(async (previous, group) => { + await previous; + return group.initializeFully(updateFrom); + }, Promise.resolve()); + } catch (err) { + this._okay = false; + throw err; + } + } + async handleFetch(req, event) { + const asset = await this.assetGroups.reduce(async (potentialResponse, group) => { + const resp = await potentialResponse; + if (resp !== null) { + return resp; + } + return group.handleFetch(req, event); + }, Promise.resolve(null)); + if (asset !== null) { + return asset; + } + const data = await this.dataGroups.reduce(async (potentialResponse, group) => { + const resp = await potentialResponse; + if (resp !== null) { + return resp; + } + return group.handleFetch(req, event); + }, Promise.resolve(null)); + if (data !== null) { + return data; + } + if (this.adapter.normalizeUrl(req.url) !== this.indexUrl && this.isNavigationRequest(req)) { + if (this.manifest.navigationRequestStrategy === "freshness") { + try { + return await this.scope.fetch(req); + } catch (e) { + } + } + return this.handleFetch(this.adapter.newRequest(this.indexUrl), event); + } + return null; + } + isNavigationRequest(req) { + if (req.method !== "GET" || req.mode !== "navigate") { + return false; + } + if (!this.acceptsTextHtml(req)) { + return false; + } + const urlPrefix = this.scope.registration.scope.replace(/\/$/, ""); + const url = req.url.startsWith(urlPrefix) ? req.url.slice(urlPrefix.length) : req.url; + const urlWithoutQueryOrHash = url.replace(/[?#].*$/, ""); + return this.navigationUrls.include.some((regex) => regex.test(urlWithoutQueryOrHash)) && !this.navigationUrls.exclude.some((regex) => regex.test(urlWithoutQueryOrHash)); + } + async lookupResourceWithHash(url, hash) { + if (!this.hashTable.has(url)) { + return null; + } + if (this.hashTable.get(url) !== hash) { + return null; + } + const cacheState = await this.lookupResourceWithoutHash(url); + return cacheState && cacheState.response; + } + lookupResourceWithoutHash(url) { + return this.assetGroups.reduce(async (potentialResponse, group) => { + const resp = await potentialResponse; + if (resp !== null) { + return resp; + } + return group.fetchFromCacheOnly(url); + }, Promise.resolve(null)); + } + previouslyCachedResources() { + return this.assetGroups.reduce(async (resources, group) => (await resources).concat(await group.unhashedResources()), Promise.resolve([])); + } + async recentCacheStatus(url) { + return this.assetGroups.reduce(async (current, group) => { + const status = await current; + if (status === UpdateCacheStatus.CACHED) { + return status; + } + const groupStatus = await group.cacheStatus(url); + if (groupStatus === UpdateCacheStatus.NOT_CACHED) { + return status; + } + return groupStatus; + }, Promise.resolve(UpdateCacheStatus.NOT_CACHED)); + } + async getCacheNames() { + const allGroupCacheNames = await Promise.all([ + ...this.assetGroups.map((group) => group.getCacheNames()), + ...this.dataGroups.map((group) => group.getCacheNames()) + ]); + return [].concat(...allGroupCacheNames); + } + get appData() { + return this.manifest.appData || null; + } + acceptsTextHtml(req) { + const accept = req.headers.get("Accept"); + if (accept === null) { + return false; + } + const values = accept.split(","); + return values.some((value) => value.trim().toLowerCase() === "text/html"); + } + }; + + // bazel-out/k8-fastbuild-ST-2e5f3376adb5/bin/packages/service-worker/worker/src/debug.mjs + var SW_VERSION = "18.2.12"; + var DEBUG_LOG_BUFFER_SIZE = 100; + var DebugHandler = class { + constructor(driver, adapter2) { + this.driver = driver; + this.adapter = adapter2; + this.debugLogA = []; + this.debugLogB = []; + } + async handleFetch(req) { + const [state, versions, idle] = await Promise.all([ + this.driver.debugState(), + this.driver.debugVersions(), + this.driver.debugIdleState() + ]); + const msgState = `NGSW Debug Info: + +Driver version: ${SW_VERSION} +Driver state: ${state.state} (${state.why}) +Latest manifest hash: ${state.latestHash || "none"} +Last update check: ${this.since(state.lastUpdateCheck)}`; + const msgVersions = versions.map((version) => `=== Version ${version.hash} === + +Clients: ${version.clients.join(", ")}`).join("\n\n"); + const msgIdle = `=== Idle Task Queue === +Last update tick: ${this.since(idle.lastTrigger)} +Last update run: ${this.since(idle.lastRun)} +Task queue: +${idle.queue.map((v) => " * " + v).join("\n")} + +Debug log: +${this.formatDebugLog(this.debugLogB)} +${this.formatDebugLog(this.debugLogA)} +`; + return this.adapter.newResponse(`${msgState} + +${msgVersions} + +${msgIdle}`, { headers: this.adapter.newHeaders({ "Content-Type": "text/plain" }) }); + } + since(time) { + if (time === null) { + return "never"; + } + let age = this.adapter.time - time; + const days = Math.floor(age / 864e5); + age = age % 864e5; + const hours = Math.floor(age / 36e5); + age = age % 36e5; + const minutes = Math.floor(age / 6e4); + age = age % 6e4; + const seconds = Math.floor(age / 1e3); + const millis = age % 1e3; + return (days > 0 ? `${days}d` : "") + (hours > 0 ? `${hours}h` : "") + (minutes > 0 ? `${minutes}m` : "") + (seconds > 0 ? `${seconds}s` : "") + (millis > 0 ? `${millis}u` : ""); + } + log(value, context = "") { + if (this.debugLogA.length === DEBUG_LOG_BUFFER_SIZE) { + this.debugLogB = this.debugLogA; + this.debugLogA = []; + } + if (typeof value !== "string") { + value = this.errorToString(value); + } + this.debugLogA.push({ value, time: this.adapter.time, context }); + } + errorToString(err) { + return `${err.name}(${err.message}, ${err.stack})`; + } + formatDebugLog(log) { + return log.map((entry) => `[${this.since(entry.time)}] ${entry.value} ${entry.context}`).join("\n"); + } + }; + + // bazel-out/k8-fastbuild-ST-2e5f3376adb5/bin/packages/service-worker/worker/src/idle.mjs + var IdleScheduler = class { + constructor(adapter2, delay, maxDelay, debug) { + this.adapter = adapter2; + this.delay = delay; + this.maxDelay = maxDelay; + this.debug = debug; + this.queue = []; + this.scheduled = null; + this.empty = Promise.resolve(); + this.emptyResolve = null; + this.lastTrigger = null; + this.lastRun = null; + this.oldestScheduledAt = null; + } + async trigger() { + var _a; + this.lastTrigger = this.adapter.time; + if (this.queue.length === 0) { + return; + } + if (this.scheduled !== null) { + this.scheduled.cancel = true; + } + const scheduled = { + cancel: false + }; + this.scheduled = scheduled; + const now = this.adapter.time; + const maxDelay = Math.max(0, ((_a = this.oldestScheduledAt) != null ? _a : now) + this.maxDelay - now); + const delay = Math.min(maxDelay, this.delay); + await this.adapter.timeout(delay); + if (scheduled.cancel) { + return; + } + this.scheduled = null; + await this.execute(); + } + async execute() { + this.lastRun = this.adapter.time; + while (this.queue.length > 0) { + const queue = this.queue; + this.queue = []; + await queue.reduce(async (previous, task) => { + await previous; + try { + await task.run(); + } catch (err) { + this.debug.log(err, `while running idle task ${task.desc}`); + } + }, Promise.resolve()); + } + if (this.emptyResolve !== null) { + this.emptyResolve(); + this.emptyResolve = null; + } + this.empty = Promise.resolve(); + this.oldestScheduledAt = null; + } + schedule(desc, run) { + this.queue.push({ desc, run }); + if (this.emptyResolve === null) { + this.empty = new Promise((resolve) => { + this.emptyResolve = resolve; + }); + } + if (this.oldestScheduledAt === null) { + this.oldestScheduledAt = this.adapter.time; + } + } + get size() { + return this.queue.length; + } + get taskDescriptions() { + return this.queue.map((task) => task.desc); + } + }; + + // bazel-out/k8-fastbuild-ST-2e5f3376adb5/bin/packages/service-worker/worker/src/manifest.mjs + function hashManifest(manifest) { + return sha1(JSON.stringify(manifest)); + } + + // bazel-out/k8-fastbuild-ST-2e5f3376adb5/bin/packages/service-worker/worker/src/msg.mjs + function isMsgCheckForUpdates(msg) { + return msg.action === "CHECK_FOR_UPDATES"; + } + function isMsgActivateUpdate(msg) { + return msg.action === "ACTIVATE_UPDATE"; + } + + // bazel-out/k8-fastbuild-ST-2e5f3376adb5/bin/packages/service-worker/worker/src/driver.mjs + var IDLE_DELAY = 5e3; + var MAX_IDLE_DELAY = 3e4; + var SUPPORTED_CONFIG_VERSION = 1; + var NOTIFICATION_OPTION_NAMES = [ + "actions", + "badge", + "body", + "data", + "dir", + "icon", + "image", + "lang", + "renotify", + "requireInteraction", + "silent", + "tag", + "timestamp", + "title", + "vibrate" + ]; + var DriverReadyState; + (function(DriverReadyState2) { + DriverReadyState2[DriverReadyState2["NORMAL"] = 0] = "NORMAL"; + DriverReadyState2[DriverReadyState2["EXISTING_CLIENTS_ONLY"] = 1] = "EXISTING_CLIENTS_ONLY"; + DriverReadyState2[DriverReadyState2["SAFE_MODE"] = 2] = "SAFE_MODE"; + })(DriverReadyState || (DriverReadyState = {})); + var Driver = class { + constructor(scope2, adapter2, db) { + this.scope = scope2; + this.adapter = adapter2; + this.db = db; + this.state = DriverReadyState.NORMAL; + this.stateMessage = "(nominal)"; + this.initialized = null; + this.clientVersionMap = /* @__PURE__ */ new Map(); + this.versions = /* @__PURE__ */ new Map(); + this.latestHash = null; + this.lastUpdateCheck = null; + this.scheduledNavUpdateCheck = false; + this.loggedInvalidOnlyIfCachedRequest = false; + this.controlTable = this.db.open("control"); + this.ngswStatePath = this.adapter.parseUrl("ngsw/state", this.scope.registration.scope).path; + this.scope.addEventListener("install", (event) => { + event.waitUntil(this.scope.skipWaiting()); + }); + this.scope.addEventListener("activate", (event) => { + event.waitUntil((async () => { + await this.scope.clients.claim(); + this.idle.schedule("activate: cleanup-old-sw-caches", async () => { + try { + await this.cleanupOldSwCaches(); + } catch (err) { + this.debugger.log(err, "cleanupOldSwCaches @ activate: cleanup-old-sw-caches"); + } + }); + })()); + if (this.scope.registration.active !== null) { + this.scope.registration.active.postMessage({ action: "INITIALIZE" }); + } + }); + this.scope.addEventListener("fetch", (event) => this.onFetch(event)); + this.scope.addEventListener("message", (event) => this.onMessage(event)); + this.scope.addEventListener("push", (event) => this.onPush(event)); + this.scope.addEventListener("notificationclick", (event) => this.onClick(event)); + this.debugger = new DebugHandler(this, this.adapter); + this.idle = new IdleScheduler(this.adapter, IDLE_DELAY, MAX_IDLE_DELAY, this.debugger); + } + onFetch(event) { + const req = event.request; + const scopeUrl = this.scope.registration.scope; + const requestUrlObj = this.adapter.parseUrl(req.url, scopeUrl); + if (req.headers.has("ngsw-bypass") || /[?&]ngsw-bypass(?:[=&]|$)/i.test(requestUrlObj.search)) { + return; + } + if (requestUrlObj.path === this.ngswStatePath) { + event.respondWith(this.debugger.handleFetch(req)); + return; + } + if (this.state === DriverReadyState.SAFE_MODE) { + event.waitUntil(this.idle.trigger()); + return; + } + if (requestUrlObj.origin.startsWith("http:") && scopeUrl.startsWith("https:")) { + this.debugger.log(`Ignoring passive mixed content request: Driver.fetch(${req.url})`); + return; + } + if (req.cache === "only-if-cached" && req.mode !== "same-origin") { + if (!this.loggedInvalidOnlyIfCachedRequest) { + this.loggedInvalidOnlyIfCachedRequest = true; + this.debugger.log(`Ignoring invalid request: 'only-if-cached' can be set only with 'same-origin' mode`, `Driver.fetch(${req.url}, cache: ${req.cache}, mode: ${req.mode})`); + } + return; + } + event.respondWith(this.handleFetch(event)); + } + onMessage(event) { + if (this.state === DriverReadyState.SAFE_MODE) { + return; + } + const data = event.data; + if (!data || !data.action) { + return; + } + event.waitUntil((async () => { + if (data.action === "INITIALIZE") { + return this.ensureInitialized(event); + } + if (!this.adapter.isClient(event.source)) { + return; + } + await this.ensureInitialized(event); + await this.handleMessage(data, event.source); + })()); + } + onPush(msg) { + if (!msg.data) { + return; + } + msg.waitUntil(this.handlePush(msg.data.json())); + } + onClick(event) { + event.waitUntil(this.handleClick(event.notification, event.action)); + } + async ensureInitialized(event) { + if (this.initialized !== null) { + return this.initialized; + } + try { + this.initialized = this.initialize(); + await this.initialized; + } catch (error) { + this.state = DriverReadyState.SAFE_MODE; + this.stateMessage = `Initialization failed due to error: ${errorToString(error)}`; + throw error; + } finally { + event.waitUntil(this.idle.trigger()); + } + } + async handleMessage(msg, from) { + if (isMsgCheckForUpdates(msg)) { + const action = this.checkForUpdate(); + await this.completeOperation(from, action, msg.nonce); + } else if (isMsgActivateUpdate(msg)) { + const action = this.updateClient(from); + await this.completeOperation(from, action, msg.nonce); + } + } + async handlePush(data) { + await this.broadcast({ + type: "PUSH", + data + }); + if (!data.notification || !data.notification.title) { + return; + } + const desc = data.notification; + let options = {}; + NOTIFICATION_OPTION_NAMES.filter((name) => desc.hasOwnProperty(name)).forEach((name) => options[name] = desc[name]); + await this.scope.registration.showNotification(desc["title"], options); + } + async handleClick(notification, action) { + var _a, _b, _c; + notification.close(); + const options = {}; + NOTIFICATION_OPTION_NAMES.filter((name) => name in notification).forEach((name) => options[name] = notification[name]); + const notificationAction = action === "" || action === void 0 ? "default" : action; + const onActionClick = (_b = (_a = notification == null ? void 0 : notification.data) == null ? void 0 : _a.onActionClick) == null ? void 0 : _b[notificationAction]; + const urlToOpen = new URL((_c = onActionClick == null ? void 0 : onActionClick.url) != null ? _c : "", this.scope.registration.scope).href; + switch (onActionClick == null ? void 0 : onActionClick.operation) { + case "openWindow": + await this.scope.clients.openWindow(urlToOpen); + break; + case "focusLastFocusedOrOpen": { + let matchingClient = await this.getLastFocusedMatchingClient(this.scope); + if (matchingClient) { + await (matchingClient == null ? void 0 : matchingClient.focus()); + } else { + await this.scope.clients.openWindow(urlToOpen); + } + break; + } + case "navigateLastFocusedOrOpen": { + let matchingClient = await this.getLastFocusedMatchingClient(this.scope); + if (matchingClient) { + matchingClient = await matchingClient.navigate(urlToOpen); + await (matchingClient == null ? void 0 : matchingClient.focus()); + } else { + await this.scope.clients.openWindow(urlToOpen); + } + break; + } + case "sendRequest": { + await this.scope.fetch(urlToOpen); + break; + } + default: + break; + } + await this.broadcast({ + type: "NOTIFICATION_CLICK", + data: { action, notification: options } + }); + } + async getLastFocusedMatchingClient(scope2) { + const windowClients = await scope2.clients.matchAll({ type: "window" }); + return windowClients[0]; + } + async completeOperation(client, promise, nonce) { + const response = { type: "OPERATION_COMPLETED", nonce }; + try { + client.postMessage(__spreadProps(__spreadValues({}, response), { + result: await promise + })); + } catch (e) { + client.postMessage(__spreadProps(__spreadValues({}, response), { + error: e.toString() + })); + } + } + async updateClient(client) { + const existing = this.clientVersionMap.get(client.id); + if (existing === this.latestHash) { + return false; + } + let previous = void 0; + if (existing !== void 0) { + const existingVersion = this.versions.get(existing); + previous = this.mergeHashWithAppData(existingVersion.manifest, existing); + } + this.clientVersionMap.set(client.id, this.latestHash); + await this.sync(); + const current = this.versions.get(this.latestHash); + return true; + } + async handleFetch(event) { + try { + await this.ensureInitialized(event); + } catch (e) { + return this.safeFetch(event.request); + } + if (event.request.mode === "navigate" && !this.scheduledNavUpdateCheck) { + this.scheduledNavUpdateCheck = true; + this.idle.schedule("check-updates-on-navigation", async () => { + this.scheduledNavUpdateCheck = false; + await this.checkForUpdate(); + }); + } + const appVersion = await this.assignVersion(event); + let res = null; + try { + if (appVersion !== null) { + try { + res = await appVersion.handleFetch(event.request, event); + } catch (err) { + if (err.isUnrecoverableState) { + await this.notifyClientsAboutUnrecoverableState(appVersion, err.message); + } + if (err.isCritical) { + this.debugger.log(err, `Driver.handleFetch(version: ${appVersion.manifestHash})`); + await this.versionFailed(appVersion, err); + return this.safeFetch(event.request); + } + throw err; + } + } + if (res === null) { + return this.safeFetch(event.request); + } + return res; + } finally { + event.waitUntil(this.idle.trigger()); + } + } + async initialize() { + const table = await this.controlTable; + let manifests, assignments, latest; + try { + [manifests, assignments, latest] = await Promise.all([ + table.read("manifests"), + table.read("assignments"), + table.read("latest") + ]); + if (!this.versions.has(latest.latest) && !manifests.hasOwnProperty(latest.latest)) { + this.debugger.log(`Missing manifest for latest version hash ${latest.latest}`, "initialize: read from DB"); + throw new Error(`Missing manifest for latest hash ${latest.latest}`); + } + this.idle.schedule("init post-load (update)", async () => { + await this.checkForUpdate(); + }); + } catch (_) { + const manifest = await this.fetchLatestManifest(); + const hash = hashManifest(manifest); + manifests = { [hash]: manifest }; + assignments = {}; + latest = { latest: hash }; + await Promise.all([ + table.write("manifests", manifests), + table.write("assignments", assignments), + table.write("latest", latest) + ]); + } + this.idle.schedule("init post-load (cleanup)", async () => { + await this.cleanupCaches(); + }); + Object.keys(manifests).forEach((hash) => { + const manifest = manifests[hash]; + if (!this.versions.has(hash)) { + this.versions.set(hash, new AppVersion(this.scope, this.adapter, this.db, this.idle, this.debugger, manifest, hash)); + } + }); + Object.keys(assignments).forEach((clientId) => { + const hash = assignments[clientId]; + if (this.versions.has(hash)) { + this.clientVersionMap.set(clientId, hash); + } else { + this.clientVersionMap.set(clientId, latest.latest); + this.debugger.log(`Unknown version ${hash} mapped for client ${clientId}, using latest instead`, `initialize: map assignments`); + } + }); + this.latestHash = latest.latest; + if (!this.versions.has(latest.latest)) { + throw new Error(`Invariant violated (initialize): latest hash ${latest.latest} has no known manifest`); + } + await Promise.all(Object.keys(manifests).map(async (hash) => { + try { + await this.scheduleInitialization(this.versions.get(hash)); + } catch (err) { + this.debugger.log(err, `initialize: schedule init of ${hash}`); + } + })); + } + lookupVersionByHash(hash, debugName = "lookupVersionByHash") { + if (!this.versions.has(hash)) { + throw new Error(`Invariant violated (${debugName}): want AppVersion for ${hash} but not loaded`); + } + return this.versions.get(hash); + } + async assignVersion(event) { + const clientId = event.resultingClientId || event.clientId; + if (clientId) { + if (this.clientVersionMap.has(clientId)) { + const hash = this.clientVersionMap.get(clientId); + let appVersion = this.lookupVersionByHash(hash, "assignVersion"); + if (this.state === DriverReadyState.NORMAL && hash !== this.latestHash && appVersion.isNavigationRequest(event.request)) { + if (this.latestHash === null) { + throw new Error(`Invariant violated (assignVersion): latestHash was null`); + } + const client = await this.scope.clients.get(clientId); + if (client) { + await this.updateClient(client); + } + appVersion = this.lookupVersionByHash(this.latestHash, "assignVersion"); + } + return appVersion; + } else { + if (this.state !== DriverReadyState.NORMAL) { + return null; + } + if (this.latestHash === null) { + throw new Error(`Invariant violated (assignVersion): latestHash was null`); + } + this.clientVersionMap.set(clientId, this.latestHash); + await this.sync(); + return this.lookupVersionByHash(this.latestHash, "assignVersion"); + } + } else { + if (this.state !== DriverReadyState.NORMAL) { + return null; + } + if (this.latestHash === null) { + throw new Error(`Invariant violated (assignVersion): latestHash was null`); + } + return this.lookupVersionByHash(this.latestHash, "assignVersion"); + } + } + async fetchLatestManifest(ignoreOfflineError = false) { + const res = await this.safeFetch(this.adapter.newRequest("ngsw.json?ngsw-cache-bust=" + Math.random())); + if (!res.ok) { + if (res.status === 404) { + await this.deleteAllCaches(); + await this.scope.registration.unregister(); + } else if ((res.status === 503 || res.status === 504) && ignoreOfflineError) { + return null; + } + throw new Error(`Manifest fetch failed! (status: ${res.status})`); + } + this.lastUpdateCheck = this.adapter.time; + return res.json(); + } + async deleteAllCaches() { + const cacheNames = await this.adapter.caches.keys(); + await Promise.all(cacheNames.map((name) => this.adapter.caches.delete(name))); + } + async scheduleInitialization(appVersion) { + const initialize = async () => { + try { + await appVersion.initializeFully(); + } catch (err) { + this.debugger.log(err, `initializeFully for ${appVersion.manifestHash}`); + await this.versionFailed(appVersion, err); + } + }; + if (this.scope.registration.scope.indexOf("://localhost") > -1) { + return initialize(); + } + this.idle.schedule(`initialization(${appVersion.manifestHash})`, initialize); + } + async versionFailed(appVersion, err) { + const broken = Array.from(this.versions.entries()).find(([hash, version]) => version === appVersion); + if (broken === void 0) { + return; + } + const brokenHash = broken[0]; + if (this.latestHash === brokenHash) { + this.state = DriverReadyState.EXISTING_CLIENTS_ONLY; + this.stateMessage = `Degraded due to: ${errorToString(err)}`; + } + } + async setupUpdate(manifest, hash) { + try { + const newVersion = new AppVersion(this.scope, this.adapter, this.db, this.idle, this.debugger, manifest, hash); + if (manifest.configVersion !== SUPPORTED_CONFIG_VERSION) { + await this.deleteAllCaches(); + await this.scope.registration.unregister(); + throw new Error(`Invalid config version: expected ${SUPPORTED_CONFIG_VERSION}, got ${manifest.configVersion}.`); + } + await newVersion.initializeFully(this); + this.versions.set(hash, newVersion); + this.latestHash = hash; + if (this.state === DriverReadyState.EXISTING_CLIENTS_ONLY) { + this.state = DriverReadyState.NORMAL; + this.stateMessage = "(nominal)"; + } + await this.sync(); + await this.notifyClientsAboutVersionReady(manifest, hash); + } catch (e) { + await this.notifyClientsAboutVersionInstallationFailed(manifest, hash, e); + throw e; + } + } + async checkForUpdate() { + let hash = "(unknown)"; + try { + const manifest = await this.fetchLatestManifest(true); + if (manifest === null) { + this.debugger.log("Check for update aborted. (Client or server offline.)"); + return false; + } + hash = hashManifest(manifest); + if (this.versions.has(hash)) { + await this.notifyClientsAboutNoNewVersionDetected(manifest, hash); + return false; + } + await this.notifyClientsAboutVersionDetected(manifest, hash); + await this.setupUpdate(manifest, hash); + return true; + } catch (err) { + this.debugger.log(err, `Error occurred while updating to manifest ${hash}`); + this.state = DriverReadyState.EXISTING_CLIENTS_ONLY; + this.stateMessage = `Degraded due to failed initialization: ${errorToString(err)}`; + return false; + } + } + async sync() { + const table = await this.controlTable; + const manifests = {}; + this.versions.forEach((version, hash) => { + manifests[hash] = version.manifest; + }); + const assignments = {}; + this.clientVersionMap.forEach((hash, clientId) => { + assignments[clientId] = hash; + }); + const latest = { + latest: this.latestHash + }; + await Promise.all([ + table.write("manifests", manifests), + table.write("assignments", assignments), + table.write("latest", latest) + ]); + } + async cleanupCaches() { + try { + const activeClients = new Set((await this.scope.clients.matchAll()).map((client) => client.id)); + const knownClients = Array.from(this.clientVersionMap.keys()); + const obsoleteClients = knownClients.filter((id) => !activeClients.has(id)); + obsoleteClients.forEach((id) => this.clientVersionMap.delete(id)); + const usedVersions = new Set(this.clientVersionMap.values()); + const obsoleteVersions = Array.from(this.versions.keys()).filter((version) => !usedVersions.has(version) && version !== this.latestHash); + obsoleteVersions.forEach((version) => this.versions.delete(version)); + await this.sync(); + const allCaches = await this.adapter.caches.keys(); + const usedCaches = new Set(await this.getCacheNames()); + const cachesToDelete = allCaches.filter((name) => !usedCaches.has(name)); + await Promise.all(cachesToDelete.map((name) => this.adapter.caches.delete(name))); + } catch (err) { + this.debugger.log(err, "cleanupCaches"); + } + } + async cleanupOldSwCaches() { + const caches = this.adapter.caches.original; + const cacheNames = await caches.keys(); + const oldSwCacheNames = cacheNames.filter((name) => /^ngsw:(?!\/)/.test(name)); + await Promise.all(oldSwCacheNames.map((name) => caches.delete(name))); + } + lookupResourceWithHash(url, hash) { + return Array.from(this.versions.values()).reduce(async (prev, version) => { + if (await prev !== null) { + return prev; + } + return version.lookupResourceWithHash(url, hash); + }, Promise.resolve(null)); + } + async lookupResourceWithoutHash(url) { + await this.initialized; + const version = this.versions.get(this.latestHash); + return version ? version.lookupResourceWithoutHash(url) : null; + } + async previouslyCachedResources() { + await this.initialized; + const version = this.versions.get(this.latestHash); + return version ? version.previouslyCachedResources() : []; + } + async recentCacheStatus(url) { + const version = this.versions.get(this.latestHash); + return version ? version.recentCacheStatus(url) : UpdateCacheStatus.NOT_CACHED; + } + mergeHashWithAppData(manifest, hash) { + return { + hash, + appData: manifest.appData + }; + } + async notifyClientsAboutUnrecoverableState(appVersion, reason) { + const broken = Array.from(this.versions.entries()).find(([hash, version]) => version === appVersion); + if (broken === void 0) { + return; + } + const brokenHash = broken[0]; + const affectedClients = Array.from(this.clientVersionMap.entries()).filter(([clientId, hash]) => hash === brokenHash).map(([clientId]) => clientId); + await Promise.all(affectedClients.map(async (clientId) => { + const client = await this.scope.clients.get(clientId); + if (client) { + client.postMessage({ type: "UNRECOVERABLE_STATE", reason }); + } + })); + } + async notifyClientsAboutVersionInstallationFailed(manifest, hash, error) { + await this.initialized; + const clients = await this.scope.clients.matchAll(); + await Promise.all(clients.map(async (client) => { + client.postMessage({ + type: "VERSION_INSTALLATION_FAILED", + version: this.mergeHashWithAppData(manifest, hash), + error: errorToString(error) + }); + })); + } + async notifyClientsAboutNoNewVersionDetected(manifest, hash) { + await this.initialized; + const clients = await this.scope.clients.matchAll(); + await Promise.all(clients.map(async (client) => { + client.postMessage({ + type: "NO_NEW_VERSION_DETECTED", + version: this.mergeHashWithAppData(manifest, hash) + }); + })); + } + async notifyClientsAboutVersionDetected(manifest, hash) { + await this.initialized; + const clients = await this.scope.clients.matchAll(); + await Promise.all(clients.map(async (client) => { + const version = this.clientVersionMap.get(client.id); + if (version === void 0) { + return; + } + client.postMessage({ + type: "VERSION_DETECTED", + version: this.mergeHashWithAppData(manifest, hash) + }); + })); + } + async notifyClientsAboutVersionReady(manifest, hash) { + await this.initialized; + const clients = await this.scope.clients.matchAll(); + await Promise.all(clients.map(async (client) => { + const version = this.clientVersionMap.get(client.id); + if (version === void 0) { + return; + } + if (version === this.latestHash) { + return; + } + const current = this.versions.get(version); + const notice = { + type: "VERSION_READY", + currentVersion: this.mergeHashWithAppData(current.manifest, version), + latestVersion: this.mergeHashWithAppData(manifest, hash) + }; + client.postMessage(notice); + })); + } + async broadcast(msg) { + const clients = await this.scope.clients.matchAll(); + clients.forEach((client) => { + client.postMessage(msg); + }); + } + async debugState() { + return { + state: DriverReadyState[this.state], + why: this.stateMessage, + latestHash: this.latestHash, + lastUpdateCheck: this.lastUpdateCheck + }; + } + async debugVersions() { + return Array.from(this.versions.keys()).map((hash) => { + const version = this.versions.get(hash); + const clients = Array.from(this.clientVersionMap.entries()).filter(([clientId, version2]) => version2 === hash).map(([clientId, version2]) => clientId); + return { + hash, + manifest: version.manifest, + clients, + status: "" + }; + }); + } + async debugIdleState() { + return { + queue: this.idle.taskDescriptions, + lastTrigger: this.idle.lastTrigger, + lastRun: this.idle.lastRun + }; + } + async safeFetch(req) { + try { + return await this.scope.fetch(req); + } catch (err) { + this.debugger.log(err, `Driver.fetch(${req.url})`); + return this.adapter.newResponse(null, { + status: 504, + statusText: "Gateway Timeout" + }); + } + } + async getCacheNames() { + const controlTable = await this.controlTable; + const appVersions = Array.from(this.versions.values()); + const appVersionCacheNames = await Promise.all(appVersions.map((version) => version.getCacheNames())); + return [controlTable.cacheName].concat(...appVersionCacheNames); + } + }; + + // bazel-out/k8-fastbuild-ST-2e5f3376adb5/bin/packages/service-worker/worker/main.mjs + var scope = self; + var adapter = new Adapter(scope.registration.scope, self.caches); + new Driver(scope, adapter, new CacheDatabase(adapter)); +})(); +/** + * @license + * Copyright Google LLC All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.dev/license + */ diff --git a/ngsw.json b/ngsw.json new file mode 100644 index 0000000..0f51d58 --- /dev/null +++ b/ngsw.json @@ -0,0 +1,79 @@ +{ + "configVersion": 1, + "timestamp": 1731619010879, + "index": "/index.html", + "assetGroups": [ + { + "name": "app", + "installMode": "prefetch", + "updateMode": "prefetch", + "cacheQueryOptions": { + "ignoreVary": true + }, + "urls": [ + "/favicon.ico", + "/index.html", + "/main-MRCX4C42.js", + "/manifest.webmanifest", + "/polyfills-FFHMD2TL.js", + "/styles-5INURTSO.css" + ], + "patterns": [] + }, + { + "name": "assets", + "installMode": "lazy", + "updateMode": "prefetch", + "cacheQueryOptions": { + "ignoreVary": true + }, + "urls": [ + "/icons/icon-128x128.png", + "/icons/icon-144x144.png", + "/icons/icon-152x152.png", + "/icons/icon-192x192.png", + "/icons/icon-384x384.png", + "/icons/icon-512x512.png", + "/icons/icon-72x72.png", + "/icons/icon-96x96.png" + ], + "patterns": [] + } + ], + "dataGroups": [], + "hashTable": { + "/favicon.ico": "9c39f434fe1261f68c5e3eefdf734630d99c5670", + "/icons/icon-128x128.png": "f912963bdc6d5a38d8f1dd0afbaab2ce8d657acb", + "/icons/icon-144x144.png": "b155fd5f2fd5d2ea7760721063003c4cd95fd783", + "/icons/icon-152x152.png": "eae6e0f0c8afb8aaae339e2a569b43e9238e5e6c", + "/icons/icon-192x192.png": "15c4180454633880d98674aa7394656196c91584", + "/icons/icon-384x384.png": "94a915751ef6c9282df9aea405ad679230631814", + "/icons/icon-512x512.png": "1de182f76f7329dfa8f9fcdd1fdcdd695bea6a99", + "/icons/icon-72x72.png": "aa88a6096bd973be7f6d7a5489bfa6bc2463f8c4", + "/icons/icon-96x96.png": "7fb8f59c30ce2ff12c700321a0b39e14b3dc8f95", + "/index.html": "f97edae68bc1c85bbc2e7272c3fc51af41f67492", + "/main-MRCX4C42.js": "e66fee03c6e267c0a71c779c51b022379e1cddaa", + "/manifest.webmanifest": "fd7e440a42d9031cdf741e812c87465337906a98", + "/polyfills-FFHMD2TL.js": "f49b49a155bc7d192db62a4c15d0a612b460a667", + "/styles-5INURTSO.css": "da39a3ee5e6b4b0d3255bfef95601890afd80709" + }, + "navigationUrls": [ + { + "positive": true, + "regex": "^\\/.*$" + }, + { + "positive": false, + "regex": "^\\/(?:.+\\/)?[^/]*\\.[^/]*$" + }, + { + "positive": false, + "regex": "^\\/(?:.+\\/)?[^/]*__[^/]*$" + }, + { + "positive": false, + "regex": "^\\/(?:.+\\/)?[^/]*__[^/]*\\/.*$" + } + ], + "navigationRequestStrategy": "performance" +} \ No newline at end of file diff --git a/safety-worker.js b/safety-worker.js new file mode 100644 index 0000000..4fd9544 --- /dev/null +++ b/safety-worker.js @@ -0,0 +1,30 @@ +/** + * @license + * Copyright Google LLC All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.dev/license + */ + +// tslint:disable:no-console + +self.addEventListener('install', (event) => { + self.skipWaiting(); +}); + +self.addEventListener('activate', (event) => { + event.waitUntil(self.clients.claim()); + + event.waitUntil( + self.registration.unregister().then(() => { + console.log('NGSW Safety Worker - unregistered old service worker'); + }), + ); + + event.waitUntil( + caches.keys().then((cacheNames) => { + const ngswCacheNames = cacheNames.filter((name) => /^ngsw:/.test(name)); + return Promise.all(ngswCacheNames.map((name) => caches.delete(name))); + }), + ); +}); diff --git a/worker-basic.min.js b/worker-basic.min.js new file mode 100644 index 0000000..4fd9544 --- /dev/null +++ b/worker-basic.min.js @@ -0,0 +1,30 @@ +/** + * @license + * Copyright Google LLC All Rights Reserved. + * + * Use of this source code is governed by an MIT-style license that can be + * found in the LICENSE file at https://angular.dev/license + */ + +// tslint:disable:no-console + +self.addEventListener('install', (event) => { + self.skipWaiting(); +}); + +self.addEventListener('activate', (event) => { + event.waitUntil(self.clients.claim()); + + event.waitUntil( + self.registration.unregister().then(() => { + console.log('NGSW Safety Worker - unregistered old service worker'); + }), + ); + + event.waitUntil( + caches.keys().then((cacheNames) => { + const ngswCacheNames = cacheNames.filter((name) => /^ngsw:/.test(name)); + return Promise.all(ngswCacheNames.map((name) => caches.delete(name))); + }), + ); +});